@mastra/deployer-vercel 1.2.4-alpha.0 → 1.2.4-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/dist/studio/assets/{core-4oBsWwNE.js → core-QCZ49Nb8.js} +1 -1
- package/dist/studio/assets/{index-D4VnKkLh.js → index-DYw7YJl_.js} +2 -2
- package/dist/studio/assets/{main-h_N2xgqf.js → main-I19LYtBC.js} +4 -4
- package/dist/studio/index.html +1 -1
- package/package.json +5 -5
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./core-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./core-QCZ49Nb8.js","./engine-compile-BkERmzkH.js","./preload-helper-PPVm8Dsz.js","./engine-javascript-CSIo_1eZ.js"])))=>i.map(i=>d[i]);
|
|
2
2
|
import{_ as Eo}from"./preload-helper-PPVm8Dsz.js";function u7t(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const s in r)if(s!=="default"&&!(s in e)){const a=Object.getOwnPropertyDescriptor(r,s);a&&Object.defineProperty(e,s,a.get?a:{enumerable:!0,get:()=>r[s]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}var Mj=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Cc(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var nY={exports:{}},hA={};var _Re;function d7t(){if(_Re)return hA;_Re=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(r,s,a){var i=null;if(a!==void 0&&(i=""+a),s.key!==void 0&&(i=""+s.key),"key"in s){a={};for(var l in s)l!=="key"&&(a[l]=s[l])}else a=s;return s=a.ref,{$$typeof:e,type:r,key:i,ref:s!==void 0?s:null,props:a}}return hA.Fragment=t,hA.jsx=n,hA.jsxs=n,hA}var CRe;function f7t(){return CRe||(CRe=1,nY.exports=d7t()),nY.exports}var o=f7t(),rY={exports:{}},Br={},ERe;function p7t(){if(ERe)return Br;ERe=1;var e={env:{}};var t=Symbol.for("react.transitional.element"),n=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),i=Symbol.for("react.consumer"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),f=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),h=Symbol.iterator;function m(q){return q===null||typeof q!="object"?null:(q=h&&q[h]||q["@@iterator"],typeof q=="function"?q:null)}var g={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},y=Object.assign,b={};function w(q,R,U){this.props=q,this.context=R,this.refs=b,this.updater=U||g}w.prototype.isReactComponent={},w.prototype.setState=function(q,R){if(typeof q!="object"&&typeof q!="function"&&q!=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,q,R,"setState")},w.prototype.forceUpdate=function(q){this.updater.enqueueForceUpdate(this,q,"forceUpdate")};function S(){}S.prototype=w.prototype;function k(q,R,U){this.props=q,this.context=R,this.refs=b,this.updater=U||g}var _=k.prototype=new S;_.constructor=k,y(_,w.prototype),_.isPureReactComponent=!0;var C=Array.isArray;function E(){}var j={H:null,A:null,T:null,S:null},N=Object.prototype.hasOwnProperty;function I(q,R,U){var Z=U.ref;return{$$typeof:t,type:q,key:R,ref:Z!==void 0?Z:null,props:U}}function P(q,R){return I(q.type,R,q.props)}function $(q){return typeof q=="object"&&q!==null&&q.$$typeof===t}function F(q){var R={"=":"=0",":":"=2"};return"$"+q.replace(/[=:]/g,function(U){return R[U]})}var D=/\/+/g;function V(q,R){return typeof q=="object"&&q!==null&&q.key!=null?F(""+q.key):R.toString(36)}function W(q){switch(q.status){case"fulfilled":return q.value;case"rejected":throw q.reason;default:switch(typeof q.status=="string"?q.then(E,E):(q.status="pending",q.then(function(R){q.status==="pending"&&(q.status="fulfilled",q.value=R)},function(R){q.status==="pending"&&(q.status="rejected",q.reason=R)})),q.status){case"fulfilled":return q.value;case"rejected":throw q.reason}}throw q}function L(q,R,U,Z,X){var te=typeof q;(te==="undefined"||te==="boolean")&&(q=null);var J=!1;if(q===null)J=!0;else switch(te){case"bigint":case"string":case"number":J=!0;break;case"object":switch(q.$$typeof){case t:case n:J=!0;break;case f:return J=q._init,L(J(q._payload),R,U,Z,X)}}if(J)return X=X(q),J=Z===""?"."+V(q,0):Z,C(X)?(U="",J!=null&&(U=J.replace(D,"$&/")+"/"),L(X,R,U,"",function(ce){return ce})):X!=null&&($(X)&&(X=P(X,U+(X.key==null||q&&q.key===X.key?"":(""+X.key).replace(D,"$&/")+"/")+J)),R.push(X)),1;J=0;var ee=Z===""?".":Z+":";if(C(q))for(var ae=0;ae<q.length;ae++)Z=q[ae],te=ee+V(Z,ae),J+=L(Z,R,U,te,X);else if(ae=m(q),typeof ae=="function")for(q=ae.call(q),ae=0;!(Z=q.next()).done;)Z=Z.value,te=ee+V(Z,ae++),J+=L(Z,R,U,te,X);else if(te==="object"){if(typeof q.then=="function")return L(W(q),R,U,Z,X);throw R=String(q),Error("Objects are not valid as a React child (found: "+(R==="[object Object]"?"object with keys {"+Object.keys(q).join(", ")+"}":R)+"). If you meant to render a collection of children, use an array instead.")}return J}function B(q,R,U){if(q==null)return q;var Z=[],X=0;return L(q,Z,"","",function(te){return R.call(U,te,X++)}),Z}function z(q){if(q._status===-1){var R=q._result;R=R(),R.then(function(U){(q._status===0||q._status===-1)&&(q._status=1,q._result=U)},function(U){(q._status===0||q._status===-1)&&(q._status=2,q._result=U)}),q._status===-1&&(q._status=0,q._result=R)}if(q._status===1)return q._result.default;throw q._result}var M=typeof reportError=="function"?reportError:function(q){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var R=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof q=="object"&&q!==null&&typeof q.message=="string"?String(q.message):String(q),error:q});if(!window.dispatchEvent(R))return}else if(typeof e=="object"&&typeof e.emit=="function"){e.emit("uncaughtException",q);return}console.error(q)},G={map:B,forEach:function(q,R,U){B(q,function(){R.apply(this,arguments)},U)},count:function(q){var R=0;return B(q,function(){R++}),R},toArray:function(q){return B(q,function(R){return R})||[]},only:function(q){if(!$(q))throw Error("React.Children.only expected to receive a single React element child.");return q}};return Br.Activity=p,Br.Children=G,Br.Component=w,Br.Fragment=r,Br.Profiler=a,Br.PureComponent=k,Br.StrictMode=s,Br.Suspense=u,Br.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=j,Br.__COMPILER_RUNTIME={__proto__:null,c:function(q){return j.H.useMemoCache(q)}},Br.cache=function(q){return function(){return q.apply(null,arguments)}},Br.cacheSignal=function(){return null},Br.cloneElement=function(q,R,U){if(q==null)throw Error("The argument must be a React element, but you passed "+q+".");var Z=y({},q.props),X=q.key;if(R!=null)for(te in R.key!==void 0&&(X=""+R.key),R)!N.call(R,te)||te==="key"||te==="__self"||te==="__source"||te==="ref"&&R.ref===void 0||(Z[te]=R[te]);var te=arguments.length-2;if(te===1)Z.children=U;else if(1<te){for(var J=Array(te),ee=0;ee<te;ee++)J[ee]=arguments[ee+2];Z.children=J}return I(q.type,X,Z)},Br.createContext=function(q){return q={$$typeof:l,_currentValue:q,_currentValue2:q,_threadCount:0,Provider:null,Consumer:null},q.Provider=q,q.Consumer={$$typeof:i,_context:q},q},Br.createElement=function(q,R,U){var Z,X={},te=null;if(R!=null)for(Z in R.key!==void 0&&(te=""+R.key),R)N.call(R,Z)&&Z!=="key"&&Z!=="__self"&&Z!=="__source"&&(X[Z]=R[Z]);var J=arguments.length-2;if(J===1)X.children=U;else if(1<J){for(var ee=Array(J),ae=0;ae<J;ae++)ee[ae]=arguments[ae+2];X.children=ee}if(q&&q.defaultProps)for(Z in J=q.defaultProps,J)X[Z]===void 0&&(X[Z]=J[Z]);return I(q,te,X)},Br.createRef=function(){return{current:null}},Br.forwardRef=function(q){return{$$typeof:c,render:q}},Br.isValidElement=$,Br.lazy=function(q){return{$$typeof:f,_payload:{_status:-1,_result:q},_init:z}},Br.memo=function(q,R){return{$$typeof:d,type:q,compare:R===void 0?null:R}},Br.startTransition=function(q){var R=j.T,U={};j.T=U;try{var Z=q(),X=j.S;X!==null&&X(U,Z),typeof Z=="object"&&Z!==null&&typeof Z.then=="function"&&Z.then(E,M)}catch(te){M(te)}finally{R!==null&&U.types!==null&&(R.types=U.types),j.T=R}},Br.unstable_useCacheRefresh=function(){return j.H.useCacheRefresh()},Br.use=function(q){return j.H.use(q)},Br.useActionState=function(q,R,U){return j.H.useActionState(q,R,U)},Br.useCallback=function(q,R){return j.H.useCallback(q,R)},Br.useContext=function(q){return j.H.useContext(q)},Br.useDebugValue=function(){},Br.useDeferredValue=function(q,R){return j.H.useDeferredValue(q,R)},Br.useEffect=function(q,R){return j.H.useEffect(q,R)},Br.useEffectEvent=function(q){return j.H.useEffectEvent(q)},Br.useId=function(){return j.H.useId()},Br.useImperativeHandle=function(q,R,U){return j.H.useImperativeHandle(q,R,U)},Br.useInsertionEffect=function(q,R){return j.H.useInsertionEffect(q,R)},Br.useLayoutEffect=function(q,R){return j.H.useLayoutEffect(q,R)},Br.useMemo=function(q,R){return j.H.useMemo(q,R)},Br.useOptimistic=function(q,R){return j.H.useOptimistic(q,R)},Br.useReducer=function(q,R,U){return j.H.useReducer(q,R,U)},Br.useRef=function(q){return j.H.useRef(q)},Br.useState=function(q){return j.H.useState(q)},Br.useSyncExternalStore=function(q,R,U){return j.H.useSyncExternalStore(q,R,U)},Br.useTransition=function(){return j.H.useTransition()},Br.version="19.2.6",Br}var jRe;function lN(){return jRe||(jRe=1,rY.exports=p7t()),rY.exports}var v=lN();const Le=Cc(v),cN=u7t({__proto__:null,default:Le},[v]);var sY={exports:{}},mA={},aY={exports:{}},iY={};var TRe;function h7t(){return TRe||(TRe=1,(function(e){function t(W,L){var B=W.length;W.push(L);e:for(;0<B;){var z=B-1>>>1,M=W[z];if(0<s(M,L))W[z]=L,W[B]=M,B=z;else break e}}function n(W){return W.length===0?null:W[0]}function r(W){if(W.length===0)return null;var L=W[0],B=W.pop();if(B!==L){W[0]=B;e:for(var z=0,M=W.length,G=M>>>1;z<G;){var q=2*(z+1)-1,R=W[q],U=q+1,Z=W[U];if(0>s(R,B))U<M&&0>s(Z,R)?(W[z]=Z,W[U]=B,z=U):(W[z]=R,W[q]=B,z=q);else if(U<M&&0>s(Z,B))W[z]=Z,W[U]=B,z=U;else break e}}return L}function s(W,L){var B=W.sortIndex-L.sortIndex;return B!==0?B:W.id-L.id}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 i=Date,l=i.now();e.unstable_now=function(){return i.now()-l}}var c=[],u=[],d=1,f=null,p=3,h=!1,m=!1,g=!1,y=!1,b=typeof setTimeout=="function"?setTimeout:null,w=typeof clearTimeout=="function"?clearTimeout:null,S=typeof setImmediate<"u"?setImmediate:null;function k(W){for(var L=n(u);L!==null;){if(L.callback===null)r(u);else if(L.startTime<=W)r(u),L.sortIndex=L.expirationTime,t(c,L);else break;L=n(u)}}function _(W){if(g=!1,k(W),!m)if(n(c)!==null)m=!0,C||(C=!0,$());else{var L=n(u);L!==null&&V(_,L.startTime-W)}}var C=!1,E=-1,j=5,N=-1;function I(){return y?!0:!(e.unstable_now()-N<j)}function P(){if(y=!1,C){var W=e.unstable_now();N=W;var L=!0;try{e:{m=!1,g&&(g=!1,w(E),E=-1),h=!0;var B=p;try{t:{for(k(W),f=n(c);f!==null&&!(f.expirationTime>W&&I());){var z=f.callback;if(typeof z=="function"){f.callback=null,p=f.priorityLevel;var M=z(f.expirationTime<=W);if(W=e.unstable_now(),typeof M=="function"){f.callback=M,k(W),L=!0;break t}f===n(c)&&r(c),k(W)}else r(c);f=n(c)}if(f!==null)L=!0;else{var G=n(u);G!==null&&V(_,G.startTime-W),L=!1}}break e}finally{f=null,p=B,h=!1}L=void 0}}finally{L?$():C=!1}}}var $;if(typeof S=="function")$=function(){S(P)};else if(typeof MessageChannel<"u"){var F=new MessageChannel,D=F.port2;F.port1.onmessage=P,$=function(){D.postMessage(null)}}else $=function(){b(P,0)};function V(W,L){E=b(function(){W(e.unstable_now())},L)}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(W){W.callback=null},e.unstable_forceFrameRate=function(W){0>W||125<W?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):j=0<W?Math.floor(1e3/W):5},e.unstable_getCurrentPriorityLevel=function(){return p},e.unstable_next=function(W){switch(p){case 1:case 2:case 3:var L=3;break;default:L=p}var B=p;p=L;try{return W()}finally{p=B}},e.unstable_requestPaint=function(){y=!0},e.unstable_runWithPriority=function(W,L){switch(W){case 1:case 2:case 3:case 4:case 5:break;default:W=3}var B=p;p=W;try{return L()}finally{p=B}},e.unstable_scheduleCallback=function(W,L,B){var z=e.unstable_now();switch(typeof B=="object"&&B!==null?(B=B.delay,B=typeof B=="number"&&0<B?z+B:z):B=z,W){case 1:var M=-1;break;case 2:M=250;break;case 5:M=1073741823;break;case 4:M=1e4;break;default:M=5e3}return M=B+M,W={id:d++,callback:L,priorityLevel:W,startTime:B,expirationTime:M,sortIndex:-1},B>z?(W.sortIndex=B,t(u,W),n(c)===null&&W===n(u)&&(g?(w(E),E=-1):g=!0,V(_,B-z))):(W.sortIndex=M,t(c,W),m||h||(m=!0,C||(C=!0,$()))),W},e.unstable_shouldYield=I,e.unstable_wrapCallback=function(W){var L=p;return function(){var B=p;p=L;try{return W.apply(this,arguments)}finally{p=B}}}})(iY)),iY}var NRe;function m7t(){return NRe||(NRe=1,aY.exports=h7t()),aY.exports}var oY={exports:{}},uu={};var IRe;function g7t(){if(IRe)return uu;IRe=1;var e=lN();function t(c){var u="https://react.dev/errors/"+c;if(1<arguments.length){u+="?args[]="+encodeURIComponent(arguments[1]);for(var d=2;d<arguments.length;d++)u+="&args[]="+encodeURIComponent(arguments[d])}return"Minified React error #"+c+"; visit "+u+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function n(){}var r={d:{f:n,r:function(){throw Error(t(522))},D:n,C:n,L:n,m:n,X:n,S:n,M:n},p:0,findDOMNode:null},s=Symbol.for("react.portal");function a(c,u,d){var f=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:s,key:f==null?null:""+f,children:c,containerInfo:u,implementation:d}}var i=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function l(c,u){if(c==="font")return"";if(typeof u=="string")return u==="use-credentials"?u:""}return uu.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=r,uu.createPortal=function(c,u){var d=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!u||u.nodeType!==1&&u.nodeType!==9&&u.nodeType!==11)throw Error(t(299));return a(c,u,null,d)},uu.flushSync=function(c){var u=i.T,d=r.p;try{if(i.T=null,r.p=2,c)return c()}finally{i.T=u,r.p=d,r.d.f()}},uu.preconnect=function(c,u){typeof c=="string"&&(u?(u=u.crossOrigin,u=typeof u=="string"?u==="use-credentials"?u:"":void 0):u=null,r.d.C(c,u))},uu.prefetchDNS=function(c){typeof c=="string"&&r.d.D(c)},uu.preinit=function(c,u){if(typeof c=="string"&&u&&typeof u.as=="string"){var d=u.as,f=l(d,u.crossOrigin),p=typeof u.integrity=="string"?u.integrity:void 0,h=typeof u.fetchPriority=="string"?u.fetchPriority:void 0;d==="style"?r.d.S(c,typeof u.precedence=="string"?u.precedence:void 0,{crossOrigin:f,integrity:p,fetchPriority:h}):d==="script"&&r.d.X(c,{crossOrigin:f,integrity:p,fetchPriority:h,nonce:typeof u.nonce=="string"?u.nonce:void 0})}},uu.preinitModule=function(c,u){if(typeof c=="string")if(typeof u=="object"&&u!==null){if(u.as==null||u.as==="script"){var d=l(u.as,u.crossOrigin);r.d.M(c,{crossOrigin:d,integrity:typeof u.integrity=="string"?u.integrity:void 0,nonce:typeof u.nonce=="string"?u.nonce:void 0})}}else u==null&&r.d.M(c)},uu.preload=function(c,u){if(typeof c=="string"&&typeof u=="object"&&u!==null&&typeof u.as=="string"){var d=u.as,f=l(d,u.crossOrigin);r.d.L(c,d,{crossOrigin:f,integrity:typeof u.integrity=="string"?u.integrity:void 0,nonce:typeof u.nonce=="string"?u.nonce:void 0,type:typeof u.type=="string"?u.type:void 0,fetchPriority:typeof u.fetchPriority=="string"?u.fetchPriority:void 0,referrerPolicy:typeof u.referrerPolicy=="string"?u.referrerPolicy:void 0,imageSrcSet:typeof u.imageSrcSet=="string"?u.imageSrcSet:void 0,imageSizes:typeof u.imageSizes=="string"?u.imageSizes:void 0,media:typeof u.media=="string"?u.media:void 0})}},uu.preloadModule=function(c,u){if(typeof c=="string")if(u){var d=l(u.as,u.crossOrigin);r.d.m(c,{as:typeof u.as=="string"&&u.as!=="script"?u.as:void 0,crossOrigin:d,integrity:typeof u.integrity=="string"?u.integrity:void 0})}else r.d.m(c)},uu.requestFormReset=function(c){r.d.r(c)},uu.unstable_batchedUpdates=function(c,u){return c(u)},uu.useFormState=function(c,u,d){return i.H.useFormState(c,u,d)},uu.useFormStatus=function(){return i.H.useHostTransitionStatus()},uu.version="19.2.6",uu}var ARe;function irt(){if(ARe)return oY.exports;ARe=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),oY.exports=g7t(),oY.exports}var RRe;function v7t(){if(RRe)return mA;RRe=1;var e={env:{}};var t=m7t(),n=lN(),r=irt();function s(x){var O="https://react.dev/errors/"+x;if(1<arguments.length){O+="?args[]="+encodeURIComponent(arguments[1]);for(var T=2;T<arguments.length;T++)O+="&args[]="+encodeURIComponent(arguments[T])}return"Minified React error #"+x+"; visit "+O+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function a(x){return!(!x||x.nodeType!==1&&x.nodeType!==9&&x.nodeType!==11)}function i(x){var O=x,T=x;if(x.alternate)for(;O.return;)O=O.return;else{x=O;do O=x,(O.flags&4098)!==0&&(T=O.return),x=O.return;while(x)}return O.tag===3?T:null}function l(x){if(x.tag===13){var O=x.memoizedState;if(O===null&&(x=x.alternate,x!==null&&(O=x.memoizedState)),O!==null)return O.dehydrated}return null}function c(x){if(x.tag===31){var O=x.memoizedState;if(O===null&&(x=x.alternate,x!==null&&(O=x.memoizedState)),O!==null)return O.dehydrated}return null}function u(x){if(i(x)!==x)throw Error(s(188))}function d(x){var O=x.alternate;if(!O){if(O=i(x),O===null)throw Error(s(188));return O!==x?null:x}for(var T=x,A=O;;){var H=T.return;if(H===null)break;var Q=H.alternate;if(Q===null){if(A=H.return,A!==null){T=A;continue}break}if(H.child===Q.child){for(Q=H.child;Q;){if(Q===T)return u(H),x;if(Q===A)return u(H),O;Q=Q.sibling}throw Error(s(188))}if(T.return!==A.return)T=H,A=Q;else{for(var ie=!1,we=H.child;we;){if(we===T){ie=!0,T=H,A=Q;break}if(we===A){ie=!0,A=H,T=Q;break}we=we.sibling}if(!ie){for(we=Q.child;we;){if(we===T){ie=!0,T=Q,A=H;break}if(we===A){ie=!0,A=Q,T=H;break}we=we.sibling}if(!ie)throw Error(s(189))}}if(T.alternate!==A)throw Error(s(190))}if(T.tag!==3)throw Error(s(188));return T.stateNode.current===T?x:O}function f(x){var O=x.tag;if(O===5||O===26||O===27||O===6)return x;for(x=x.child;x!==null;){if(O=f(x),O!==null)return O;x=x.sibling}return null}var p=Object.assign,h=Symbol.for("react.element"),m=Symbol.for("react.transitional.element"),g=Symbol.for("react.portal"),y=Symbol.for("react.fragment"),b=Symbol.for("react.strict_mode"),w=Symbol.for("react.profiler"),S=Symbol.for("react.consumer"),k=Symbol.for("react.context"),_=Symbol.for("react.forward_ref"),C=Symbol.for("react.suspense"),E=Symbol.for("react.suspense_list"),j=Symbol.for("react.memo"),N=Symbol.for("react.lazy"),I=Symbol.for("react.activity"),P=Symbol.for("react.memo_cache_sentinel"),$=Symbol.iterator;function F(x){return x===null||typeof x!="object"?null:(x=$&&x[$]||x["@@iterator"],typeof x=="function"?x:null)}var D=Symbol.for("react.client.reference");function V(x){if(x==null)return null;if(typeof x=="function")return x.$$typeof===D?null:x.displayName||x.name||null;if(typeof x=="string")return x;switch(x){case y:return"Fragment";case w:return"Profiler";case b:return"StrictMode";case C:return"Suspense";case E:return"SuspenseList";case I:return"Activity"}if(typeof x=="object")switch(x.$$typeof){case g:return"Portal";case k:return x.displayName||"Context";case S:return(x._context.displayName||"Context")+".Consumer";case _:var O=x.render;return x=x.displayName,x||(x=O.displayName||O.name||"",x=x!==""?"ForwardRef("+x+")":"ForwardRef"),x;case j:return O=x.displayName||null,O!==null?O:V(x.type)||"Memo";case N:O=x._payload,x=x._init;try{return V(x(O))}catch{}}return null}var W=Array.isArray,L=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,B=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,z={pending:!1,data:null,method:null,action:null},M=[],G=-1;function q(x){return{current:x}}function R(x){0>G||(x.current=M[G],M[G]=null,G--)}function U(x,O){G++,M[G]=x.current,x.current=O}var Z=q(null),X=q(null),te=q(null),J=q(null);function ee(x,O){switch(U(te,O),U(X,x),U(Z,null),O.nodeType){case 9:case 11:x=(x=O.documentElement)&&(x=x.namespaceURI)?GAe(x):0;break;default:if(x=O.tagName,O=O.namespaceURI)O=GAe(O),x=QAe(O,x);else switch(x){case"svg":x=1;break;case"math":x=2;break;default:x=0}}R(Z),U(Z,x)}function ae(){R(Z),R(X),R(te)}function ce(x){x.memoizedState!==null&&U(J,x);var O=Z.current,T=QAe(O,x.type);O!==T&&(U(X,x),U(Z,T))}function Y(x){X.current===x&&(R(Z),R(X)),J.current===x&&(R(J),uA._currentValue=z)}var ne,ue;function pe(x){if(ne===void 0)try{throw Error()}catch(T){var O=T.stack.trim().match(/\n( *(at )?)/);ne=O&&O[1]||"",ue=-1<T.stack.indexOf(`
|
|
3
3
|
at`)?" (<anonymous>)":-1<T.stack.indexOf("@")?"@unknown:0:0":""}return`
|
|
4
4
|
`+ne+x+ue}var le=!1;function ve(x,O){if(!x||le)return"";le=!0;var T=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var A={DetermineComponentFrameRoot:function(){try{if(O){var _t=function(){throw Error()};if(Object.defineProperty(_t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(_t,[])}catch(ft){var ct=ft}Reflect.construct(x,[],_t)}else{try{_t.call()}catch(ft){ct=ft}x.call(_t.prototype)}}else{try{throw Error()}catch(ft){ct=ft}(_t=x())&&typeof _t.catch=="function"&&_t.catch(function(){})}}catch(ft){if(ft&&ct&&typeof ft.stack=="string")return[ft.stack,ct.stack]}return[null,null]}};A.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var H=Object.getOwnPropertyDescriptor(A.DetermineComponentFrameRoot,"name");H&&H.configurable&&Object.defineProperty(A.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var Q=A.DetermineComponentFrameRoot(),ie=Q[0],we=Q[1];if(ie&&we){var Be=ie.split(`
|
|
@@ -188,7 +188,7 @@ Error message: ${vot(n)}`,cause:n}),this[Cot]=!0,this.value=t}static isInstance(
|
|
|
188
188
|
]`;continue}s+=r[c],r[c]==="\\"?a=!0:i&&r[c]==="]"?i=!1:!i&&r[c]==="["&&(i=!0)}return s}function Rot(e,t){if(t.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),t.target==="openApi3"&&e.keyType?._def.typeName===Ve.ZodEnum)return{type:"object",required:e.keyType._def.values,properties:e.keyType._def.values.reduce((r,s)=>({...r,[s]:Ra(e.valueType._def,{...t,currentPath:[...t.currentPath,"properties",s]})??ff(t)}),{}),additionalProperties:t.rejectedAdditionalProperties};const n={type:"object",additionalProperties:Ra(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]})??t.allowedAdditionalProperties};if(t.target==="openApi3")return n;if(e.keyType?._def.typeName===Ve.ZodString&&e.keyType._def.checks?.length){const{type:r,...s}=Aot(e.keyType._def,t);return{...n,propertyNames:s}}else{if(e.keyType?._def.typeName===Ve.ZodEnum)return{...n,propertyNames:{enum:e.keyType._def.values}};if(e.keyType?._def.typeName===Ve.ZodBranded&&e.keyType._def.type._def.typeName===Ve.ZodString&&e.keyType._def.type._def.checks?.length){const{type:r,...s}=Not(e.keyType._def,t);return{...n,propertyNames:s}}}return n}function lsn(e,t){if(t.mapStrategy==="record")return Rot(e,t);const n=Ra(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||ff(t),r=Ra(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||ff(t);return{type:"array",maxItems:125,items:{type:"array",items:[n,r],minItems:2,maxItems:2}}}function csn(e){const t=e.values,r=Object.keys(e.values).filter(a=>typeof t[t[a]]!="number").map(a=>t[a]),s=Array.from(new Set(r.map(a=>typeof a)));return{type:s.length===1?s[0]==="string"?"string":"number":["string","number"],enum:r}}function usn(e){return e.target==="openAi"?void 0:{not:ff({...e,currentPath:[...e.currentPath,"not"]})}}function dsn(e){return e.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var QF={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function fsn(e,t){if(t.target==="openApi3")return M$e(e,t);const n=e.options instanceof Map?Array.from(e.options.values()):e.options;if(n.every(r=>r._def.typeName in QF&&(!r._def.checks||!r._def.checks.length))){const r=n.reduce((s,a)=>{const i=QF[a._def.typeName];return i&&!s.includes(i)?[...s,i]:s},[]);return{type:r.length>1?r:r[0]}}else if(n.every(r=>r._def.typeName==="ZodLiteral"&&!r.description)){const r=n.reduce((s,a)=>{const i=typeof a._def.value;switch(i){case"string":case"number":case"boolean":return[...s,i];case"bigint":return[...s,"integer"];case"object":if(a._def.value===null)return[...s,"null"];default:return s}},[]);if(r.length===n.length){const s=r.filter((a,i,l)=>l.indexOf(a)===i);return{type:s.length>1?s:s[0],enum:n.reduce((a,i)=>a.includes(i._def.value)?a:[...a,i._def.value],[])}}}else if(n.every(r=>r._def.typeName==="ZodEnum"))return{type:"string",enum:n.reduce((r,s)=>[...r,...s._def.values.filter(a=>!r.includes(a))],[])};return M$e(e,t)}var M$e=(e,t)=>{const n=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((r,s)=>Ra(r._def,{...t,currentPath:[...t.currentPath,"anyOf",`${s}`]})).filter(r=>!!r&&(!t.strictUnions||typeof r=="object"&&Object.keys(r).length>0));return n.length?{anyOf:n}:void 0};function psn(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return t.target==="openApi3"?{type:QF[e.innerType._def.typeName],nullable:!0}:{type:[QF[e.innerType._def.typeName],"null"]};if(t.target==="openApi3"){const r=Ra(e.innerType._def,{...t,currentPath:[...t.currentPath]});return r&&"$ref"in r?{allOf:[r],nullable:!0}:r&&{...r,nullable:!0}}const n=Ra(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return n&&{anyOf:[n,{type:"null"}]}}function hsn(e,t){const n={type:"number"};if(!e.checks)return n;for(const r of e.checks)switch(r.kind){case"int":n.type="integer",jot(n,"type",r.message,t);break;case"min":t.target==="jsonSchema7"?r.inclusive?Ga(n,"minimum",r.value,r.message,t):Ga(n,"exclusiveMinimum",r.value,r.message,t):(r.inclusive||(n.exclusiveMinimum=!0),Ga(n,"minimum",r.value,r.message,t));break;case"max":t.target==="jsonSchema7"?r.inclusive?Ga(n,"maximum",r.value,r.message,t):Ga(n,"exclusiveMaximum",r.value,r.message,t):(r.inclusive||(n.exclusiveMaximum=!0),Ga(n,"maximum",r.value,r.message,t));break;case"multipleOf":Ga(n,"multipleOf",r.value,r.message,t);break}return n}function msn(e,t){const n=t.target==="openAi",r={type:"object",properties:{}},s=[],a=e.shape();for(const l in a){let c=a[l];if(c===void 0||c._def===void 0)continue;let u=vsn(c);u&&n&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);const d=Ra(c._def,{...t,currentPath:[...t.currentPath,"properties",l],propertyPath:[...t.currentPath,"properties",l]});d!==void 0&&(r.properties[l]=d,u||s.push(l))}s.length&&(r.required=s);const i=gsn(e,t);return i!==void 0&&(r.additionalProperties=i),r}function gsn(e,t){if(e.catchall._def.typeName!=="ZodNever")return Ra(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function vsn(e){try{return e.isOptional()}catch{return!0}}var ysn=(e,t)=>{if(t.currentPath.toString()===t.propertyPath?.toString())return Ra(e.innerType._def,t);const n=Ra(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return n?{anyOf:[{not:ff(t)},n]}:ff(t)},bsn=(e,t)=>{if(t.pipeStrategy==="input")return Ra(e.in._def,t);if(t.pipeStrategy==="output")return Ra(e.out._def,t);const n=Ra(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),r=Ra(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",n?"1":"0"]});return{allOf:[n,r].filter(s=>s!==void 0)}};function xsn(e,t){return Ra(e.type._def,t)}function wsn(e,t){const r={type:"array",uniqueItems:!0,items:Ra(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&Ga(r,"minItems",e.minSize.value,e.minSize.message,t),e.maxSize&&Ga(r,"maxItems",e.maxSize.value,e.maxSize.message,t),r}function Ssn(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((n,r)=>Ra(n._def,{...t,currentPath:[...t.currentPath,"items",`${r}`]})).reduce((n,r)=>r===void 0?n:[...n,r],[]),additionalItems:Ra(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((n,r)=>Ra(n._def,{...t,currentPath:[...t.currentPath,"items",`${r}`]})).reduce((n,r)=>r===void 0?n:[...n,r],[])}}function ksn(e){return{not:ff(e)}}function Osn(e){return ff(e)}var _sn=(e,t)=>Ra(e.innerType._def,t),Csn=(e,t,n)=>{switch(t){case Ve.ZodString:return Aot(e,n);case Ve.ZodNumber:return hsn(e,n);case Ve.ZodObject:return msn(e,n);case Ve.ZodBigInt:return Yrn(e,n);case Ve.ZodBoolean:return Xrn();case Ve.ZodDate:return Iot(e,n);case Ve.ZodUndefined:return ksn(n);case Ve.ZodNull:return dsn(n);case Ve.ZodArray:return Qrn(e,n);case Ve.ZodUnion:case Ve.ZodDiscriminatedUnion:return fsn(e,n);case Ve.ZodIntersection:return ssn(e,n);case Ve.ZodTuple:return Ssn(e,n);case Ve.ZodRecord:return Rot(e,n);case Ve.ZodLiteral:return asn(e,n);case Ve.ZodEnum:return nsn(e);case Ve.ZodNativeEnum:return csn(e);case Ve.ZodNullable:return psn(e,n);case Ve.ZodOptional:return ysn(e,n);case Ve.ZodMap:return lsn(e,n);case Ve.ZodSet:return wsn(e,n);case Ve.ZodLazy:return()=>e.getter()._def;case Ve.ZodPromise:return xsn(e,n);case Ve.ZodNaN:case Ve.ZodNever:return usn(n);case Ve.ZodEffects:return tsn(e,n);case Ve.ZodAny:return ff(n);case Ve.ZodUnknown:return Osn(n);case Ve.ZodDefault:return esn(e,n);case Ve.ZodBranded:return Not(e,n);case Ve.ZodReadonly:return _sn(e,n);case Ve.ZodCatch:return Krn(e,n);case Ve.ZodPipeline:return bsn(e,n);case Ve.ZodFunction:case Ve.ZodVoid:case Ve.ZodSymbol:return;default:return(r=>{})()}};function Ra(e,t,n=!1){const r=t.seen.get(e);if(t.override){const l=t.override?.(e,t,r,n);if(l!==Wrn)return l}if(r&&!n){const l=Esn(r,t);if(l!==void 0)return l}const s={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,s);const a=Csn(e,e.typeName,t),i=typeof a=="function"?Ra(a(),t):a;if(i&&jsn(e,t,i),t.postProcess){const l=t.postProcess(i,e,t);return s.jsonSchema=i,l}return s.jsonSchema=i,i}var Esn=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Tot(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((n,r)=>t.currentPath[r]===n)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),ff(t)):t.$refStrategy==="seen"?ff(t):void 0}},jsn=(e,t,n)=>(e.description&&(n.description=e.description,t.markdownDescription&&(n.markdownDescription=e.description)),n),Tsn=(e,t)=>{const n=Grn(t);let r=typeof t=="object"&&t.definitions?Object.entries(t.definitions).reduce((c,[u,d])=>({...c,[u]:Ra(d._def,{...n,currentPath:[...n.basePath,n.definitionPath,u]},!0)??ff(n)}),{}):void 0;const s=typeof t=="string"?t:t?.nameStrategy==="title"?void 0:t?.name,a=Ra(e._def,s===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,s]},!1)??ff(n),i=typeof t=="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;i!==void 0&&(a.title=i),n.flags.hasReferencedOpenAiAnyType&&(r||(r={}),r[n.openAiAnyTypeName]||(r[n.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:n.$refStrategy==="relative"?"1":[...n.basePath,n.definitionPath,n.openAiAnyTypeName].join("/")}}));const l=s===void 0?r?{...a,[n.definitionPath]:r}:a:{$ref:[...n.$refStrategy==="relative"?[]:n.basePath,n.definitionPath,s].join("/"),[n.definitionPath]:{...r,[s]:a}};return n.target==="jsonSchema7"?l.$schema="http://json-schema.org/draft-07/schema#":(n.target==="jsonSchema2019-09"||n.target==="openAi")&&(l.$schema="https://json-schema.org/draft/2019-09/schema#"),n.target==="openAi"&&("anyOf"in l||"oneOf"in l||"allOf"in l||"type"in l&&Array.isArray(l.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),l},Nsn=Tsn;function Isn(e){const t=["ROOT"];let n=-1,r=null;function s(c,u,d){switch(c){case'"':{n=u,t.pop(),t.push(d),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{n=u,r=u,t.pop(),t.push(d),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(d),t.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{n=u,t.pop(),t.push(d),t.push("INSIDE_NUMBER");break}case"{":{n=u,t.pop(),t.push(d),t.push("INSIDE_OBJECT_START");break}case"[":{n=u,t.pop(),t.push(d),t.push("INSIDE_ARRAY_START");break}}}function a(c,u){switch(c){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{n=u,t.pop();break}}}function i(c,u){switch(c){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{n=u,t.pop();break}}}for(let c=0;c<e.length;c++){const u=e[c];switch(t[t.length-1]){case"ROOT":s(u,c,"FINISH");break;case"INSIDE_OBJECT_START":{switch(u){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{n=c,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{u==='"'&&(t.pop(),t.push("INSIDE_OBJECT_KEY"));break}case"INSIDE_OBJECT_KEY":{u==='"'&&(t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY"));break}case"INSIDE_OBJECT_AFTER_KEY":{u===":"&&(t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE"));break}case"INSIDE_OBJECT_BEFORE_VALUE":{s(u,c,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{a(u,c);break}case"INSIDE_STRING":{switch(u){case'"':{t.pop(),n=c;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:n=c}break}case"INSIDE_ARRAY_START":{u==="]"?(n=c,t.pop()):(n=c,s(u,c,"INSIDE_ARRAY_AFTER_VALUE"));break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(u){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{n=c,t.pop();break}default:{n=c;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{s(u,c,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{t.pop(),n=c;break}case"INSIDE_NUMBER":{switch(u){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{n=c;break}case"e":case"E":case"-":case".":break;case",":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(u,c),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&a(u,c);break}case"}":{t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&a(u,c);break}case"]":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(u,c);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{const f=e.substring(r,c+1);!"false".startsWith(f)&&!"true".startsWith(f)&&!"null".startsWith(f)?(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"?a(u,c):t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(u,c)):n=c;break}}}let l=e.slice(0,n+1);for(let c=t.length-1;c>=0;c--)switch(t[c]){case"INSIDE_STRING":{l+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{l+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{l+="]";break}case"INSIDE_LITERAL":{const d=e.substring(r,e.length);"true".startsWith(d)?l+="true".slice(d.length):"false".startsWith(d)?l+="false".slice(d.length):"null".startsWith(d)&&(l+="null".slice(d.length))}}return l}function Asn(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=$de({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=$de({text:Isn(e)}),t.success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"})}var Rsn={code:"0",name:"text",parse:e=>{if(typeof e!="string")throw new Error('"text" parts expect a string value.');return{type:"text",value:e}}},Psn={code:"2",name:"data",parse:e=>{if(!Array.isArray(e))throw new Error('"data" parts expect an array value.');return{type:"data",value:e}}},$sn={code:"3",name:"error",parse:e=>{if(typeof e!="string")throw new Error('"error" parts expect a string value.');return{type:"error",value:e}}},Msn={code:"8",name:"message_annotations",parse:e=>{if(!Array.isArray(e))throw new Error('"message_annotations" parts expect an array value.');return{type:"message_annotations",value:e}}},Dsn={code:"9",name:"tool_call",parse:e=>{if(e==null||typeof e!="object"||!("toolCallId"in e)||typeof e.toolCallId!="string"||!("toolName"in e)||typeof e.toolName!="string"||!("args"in e)||typeof e.args!="object")throw new Error('"tool_call" parts expect an object with a "toolCallId", "toolName", and "args" property.');return{type:"tool_call",value:e}}},Lsn={code:"a",name:"tool_result",parse:e=>{if(e==null||typeof e!="object"||!("toolCallId"in e)||typeof e.toolCallId!="string"||!("result"in e))throw new Error('"tool_result" parts expect an object with a "toolCallId" and a "result" property.');return{type:"tool_result",value:e}}},Fsn={code:"b",name:"tool_call_streaming_start",parse:e=>{if(e==null||typeof e!="object"||!("toolCallId"in e)||typeof e.toolCallId!="string"||!("toolName"in e)||typeof e.toolName!="string")throw new Error('"tool_call_streaming_start" parts expect an object with a "toolCallId" and "toolName" property.');return{type:"tool_call_streaming_start",value:e}}},zsn={code:"c",name:"tool_call_delta",parse:e=>{if(e==null||typeof e!="object"||!("toolCallId"in e)||typeof e.toolCallId!="string"||!("argsTextDelta"in e)||typeof e.argsTextDelta!="string")throw new Error('"tool_call_delta" parts expect an object with a "toolCallId" and "argsTextDelta" property.');return{type:"tool_call_delta",value:e}}},Bsn={code:"d",name:"finish_message",parse:e=>{if(e==null||typeof e!="object"||!("finishReason"in e)||typeof e.finishReason!="string")throw new Error('"finish_message" parts expect an object with a "finishReason" property.');const t={finishReason:e.finishReason};return"usage"in e&&e.usage!=null&&typeof e.usage=="object"&&"promptTokens"in e.usage&&"completionTokens"in e.usage&&(t.usage={promptTokens:typeof e.usage.promptTokens=="number"?e.usage.promptTokens:Number.NaN,completionTokens:typeof e.usage.completionTokens=="number"?e.usage.completionTokens:Number.NaN}),{type:"finish_message",value:t}}},Usn={code:"e",name:"finish_step",parse:e=>{if(e==null||typeof e!="object"||!("finishReason"in e)||typeof e.finishReason!="string")throw new Error('"finish_step" parts expect an object with a "finishReason" property.');const t={finishReason:e.finishReason,isContinued:!1};return"usage"in e&&e.usage!=null&&typeof e.usage=="object"&&"promptTokens"in e.usage&&"completionTokens"in e.usage&&(t.usage={promptTokens:typeof e.usage.promptTokens=="number"?e.usage.promptTokens:Number.NaN,completionTokens:typeof e.usage.completionTokens=="number"?e.usage.completionTokens:Number.NaN}),"isContinued"in e&&typeof e.isContinued=="boolean"&&(t.isContinued=e.isContinued),{type:"finish_step",value:t}}},qsn={code:"f",name:"start_step",parse:e=>{if(e==null||typeof e!="object"||!("messageId"in e)||typeof e.messageId!="string")throw new Error('"start_step" parts expect an object with an "id" property.');return{type:"start_step",value:{messageId:e.messageId}}}},Vsn={code:"g",name:"reasoning",parse:e=>{if(typeof e!="string")throw new Error('"reasoning" parts expect a string value.');return{type:"reasoning",value:e}}},Hsn={code:"h",name:"source",parse:e=>{if(e==null||typeof e!="object")throw new Error('"source" parts expect a Source object.');return{type:"source",value:e}}},Wsn={code:"i",name:"redacted_reasoning",parse:e=>{if(e==null||typeof e!="object"||!("data"in e)||typeof e.data!="string")throw new Error('"redacted_reasoning" parts expect an object with a "data" property.');return{type:"redacted_reasoning",value:{data:e.data}}}},Zsn={code:"j",name:"reasoning_signature",parse:e=>{if(e==null||typeof e!="object"||!("signature"in e)||typeof e.signature!="string")throw new Error('"reasoning_signature" parts expect an object with a "signature" property.');return{type:"reasoning_signature",value:{signature:e.signature}}}},Gsn={code:"k",name:"file",parse:e=>{if(e==null||typeof e!="object"||!("data"in e)||typeof e.data!="string"||!("mimeType"in e)||typeof e.mimeType!="string")throw new Error('"file" parts expect an object with a "data" and "mimeType" property.');return{type:"file",value:e}}},Aye=[Rsn,Psn,$sn,Msn,Dsn,Lsn,Fsn,zsn,Bsn,Usn,qsn,Vsn,Hsn,Wsn,Zsn,Gsn];Object.fromEntries(Aye.map(e=>[e.code,e]));Object.fromEntries(Aye.map(e=>[e.name,e.code]));function Pot(e,t){const n=Aye.find(r=>r.name===e);if(!n)throw new Error(`Invalid stream part type: ${e}`);return`${n.code}:${JSON.stringify(t)}
|
|
189
189
|
`}function Qsn(e,t){var n;const r=(n=void 0)!=null?n:!1;return Ysn(Nsn(e,{$refStrategy:r?"root":"none",target:"jsonSchema7"}),{validate:s=>{const a=e.safeParse(s);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}var Mde=Symbol.for("vercel.ai.schema");function Ysn(e,{validate:t}={}){return{[Mde]:!0,_type:void 0,[GF]:!0,jsonSchema:e,validate:t}}function Xsn(e){return typeof e=="object"&&e!==null&&Mde in e&&e[Mde]===!0&&"jsonSchema"in e&&"validate"in e}function Ksn(e){return Xsn(e)?e:Qsn(e)}var Jsn=typeof globalThis=="object"?globalThis:global,mk="1.9.0",D$e=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function ean(e){var t=new Set([e]),n=new Set,r=e.match(D$e);if(!r)return function(){return!1};var s={major:+r[1],minor:+r[2],patch:+r[3],prerelease:r[4]};if(s.prerelease!=null)return function(c){return c===e};function a(l){return n.add(l),!1}function i(l){return t.add(l),!0}return function(c){if(t.has(c))return!0;if(n.has(c))return!1;var u=c.match(D$e);if(!u)return a(c);var d={major:+u[1],minor:+u[2],patch:+u[3],prerelease:u[4]};return d.prerelease!=null||s.major!==d.major?a(c):s.major===0?s.minor===d.minor&&s.patch<=d.patch?i(c):a(c):s.minor<=d.minor?i(c):a(c)}}var tan=ean(mk),nan=mk.split(".")[0],AP=Symbol.for("opentelemetry.js.api."+nan),RP=Jsn;function Rye(e,t,n,r){var s;r===void 0&&(r=!1);var a=RP[AP]=(s=RP[AP])!==null&&s!==void 0?s:{version:mk};if(!r&&a[e]){var i=new Error("@opentelemetry/api: Attempted duplicate registration of API: "+e);return n.error(i.stack||i.message),!1}if(a.version!==mk){var i=new Error("@opentelemetry/api: Registration of version v"+a.version+" for "+e+" does not match previously registered API v"+mk);return n.error(i.stack||i.message),!1}return a[e]=t,n.debug("@opentelemetry/api: Registered a global for "+e+" v"+mk+"."),!0}function PP(e){var t,n,r=(t=RP[AP])===null||t===void 0?void 0:t.version;if(!(!r||!tan(r)))return(n=RP[AP])===null||n===void 0?void 0:n[e]}function Pye(e,t){t.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+mk+".");var n=RP[AP];n&&delete n[e]}var ran=function(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),s,a=[],i;try{for(;!(s=r.next()).done;)a.push(s.value)}catch(l){i={error:l}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(i)throw i.error}}return a},san=function(e,t,n){if(arguments.length===2)for(var r=0,s=t.length,a;r<s;r++)(a||!(r in t))&&(a||(a=Array.prototype.slice.call(t,0,r)),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))},aan=(function(){function e(t){this._namespace=t.namespace||"DiagComponentLogger"}return e.prototype.debug=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return wA("debug",this._namespace,t)},e.prototype.error=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return wA("error",this._namespace,t)},e.prototype.info=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return wA("info",this._namespace,t)},e.prototype.warn=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return wA("warn",this._namespace,t)},e.prototype.verbose=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return wA("verbose",this._namespace,t)},e})();function wA(e,t,n){var r=PP("diag");if(r)return n.unshift(t),r[e].apply(r,san([],ran(n),!1))}var np;(function(e){e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(np||(np={}));function ian(e,t){e<np.NONE?e=np.NONE:e>np.ALL&&(e=np.ALL),t=t||{};function n(r,s){var a=t[r];return typeof a=="function"&&e>=s?a.bind(t):function(){}}return{error:n("error",np.ERROR),warn:n("warn",np.WARN),info:n("info",np.INFO),debug:n("debug",np.DEBUG),verbose:n("verbose",np.VERBOSE)}}var oan=function(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),s,a=[],i;try{for(;!(s=r.next()).done;)a.push(s.value)}catch(l){i={error:l}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(i)throw i.error}}return a},lan=function(e,t,n){if(arguments.length===2)for(var r=0,s=t.length,a;r<s;r++)(a||!(r in t))&&(a||(a=Array.prototype.slice.call(t,0,r)),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))},can="diag",YF=(function(){function e(){function t(s){return function(){for(var a=[],i=0;i<arguments.length;i++)a[i]=arguments[i];var l=PP("diag");if(l)return l[s].apply(l,lan([],oan(a),!1))}}var n=this,r=function(s,a){var i,l,c;if(a===void 0&&(a={logLevel:np.INFO}),s===n){var u=new Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return n.error((i=u.stack)!==null&&i!==void 0?i:u.message),!1}typeof a=="number"&&(a={logLevel:a});var d=PP("diag"),f=ian((l=a.logLevel)!==null&&l!==void 0?l:np.INFO,s);if(d&&!a.suppressOverrideMessage){var p=(c=new Error().stack)!==null&&c!==void 0?c:"<failed to generate stacktrace>";d.warn("Current logger will be overwritten from "+p),f.warn("Current logger will overwrite one already registered from "+p)}return Rye("diag",f,n,!0)};n.setLogger=r,n.disable=function(){Pye(can,n)},n.createComponentLogger=function(s){return new aan(s)},n.verbose=t("verbose"),n.debug=t("debug"),n.info=t("info"),n.warn=t("warn"),n.error=t("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e})();function uan(e){return Symbol.for(e)}var dan=(function(){function e(t){var n=this;n._currentContext=t?new Map(t):new Map,n.getValue=function(r){return n._currentContext.get(r)},n.setValue=function(r,s){var a=new e(n._currentContext);return a._currentContext.set(r,s),a},n.deleteValue=function(r){var s=new e(n._currentContext);return s._currentContext.delete(r),s}}return e})(),fan=new dan,pan=function(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),s,a=[],i;try{for(;!(s=r.next()).done;)a.push(s.value)}catch(l){i={error:l}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(i)throw i.error}}return a},han=function(e,t,n){if(arguments.length===2)for(var r=0,s=t.length,a;r<s;r++)(a||!(r in t))&&(a||(a=Array.prototype.slice.call(t,0,r)),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))},man=(function(){function e(){}return e.prototype.active=function(){return fan},e.prototype.with=function(t,n,r){for(var s=[],a=3;a<arguments.length;a++)s[a-3]=arguments[a];return n.call.apply(n,han([r],pan(s),!1))},e.prototype.bind=function(t,n){return n},e.prototype.enable=function(){return this},e.prototype.disable=function(){return this},e})(),gan=function(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),s,a=[],i;try{for(;!(s=r.next()).done;)a.push(s.value)}catch(l){i={error:l}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(i)throw i.error}}return a},van=function(e,t,n){if(arguments.length===2)for(var r=0,s=t.length,a;r<s;r++)(a||!(r in t))&&(a||(a=Array.prototype.slice.call(t,0,r)),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))},zY="context",yan=new man,$ot=(function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalContextManager=function(t){return Rye(zY,t,YF.instance())},e.prototype.active=function(){return this._getContextManager().active()},e.prototype.with=function(t,n,r){for(var s,a=[],i=3;i<arguments.length;i++)a[i-3]=arguments[i];return(s=this._getContextManager()).with.apply(s,van([t,n,r],gan(a),!1))},e.prototype.bind=function(t,n){return this._getContextManager().bind(t,n)},e.prototype._getContextManager=function(){return PP(zY)||yan},e.prototype.disable=function(){this._getContextManager().disable(),Pye(zY,YF.instance())},e})(),Dde;(function(e){e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(Dde||(Dde={}));var Mot="0000000000000000",Dot="00000000000000000000000000000000",ban={traceId:Dot,spanId:Mot,traceFlags:Dde.NONE},_2=(function(){function e(t){t===void 0&&(t=ban),this._spanContext=t}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(t,n){return this},e.prototype.setAttributes=function(t){return this},e.prototype.addEvent=function(t,n){return this},e.prototype.addLink=function(t){return this},e.prototype.addLinks=function(t){return this},e.prototype.setStatus=function(t){return this},e.prototype.updateName=function(t){return this},e.prototype.end=function(t){},e.prototype.isRecording=function(){return!1},e.prototype.recordException=function(t,n){},e})(),$ye=uan("OpenTelemetry Context Key SPAN");function Mye(e){return e.getValue($ye)||void 0}function xan(){return Mye($ot.getInstance().active())}function Dye(e,t){return e.setValue($ye,t)}function wan(e){return e.deleteValue($ye)}function San(e,t){return Dye(e,new _2(t))}function Lot(e){var t;return(t=Mye(e))===null||t===void 0?void 0:t.spanContext()}var kan=/^([0-9a-f]{32})$/i,Oan=/^[0-9a-f]{16}$/i;function _an(e){return kan.test(e)&&e!==Dot}function Can(e){return Oan.test(e)&&e!==Mot}function Fot(e){return _an(e.traceId)&&Can(e.spanId)}function Ean(e){return new _2(e)}var BY=$ot.getInstance(),zot=(function(){function e(){}return e.prototype.startSpan=function(t,n,r){r===void 0&&(r=BY.active());var s=!!n?.root;if(s)return new _2;var a=r&&Lot(r);return jan(a)&&Fot(a)?new _2(a):new _2},e.prototype.startActiveSpan=function(t,n,r,s){var a,i,l;if(!(arguments.length<2)){arguments.length===2?l=n:arguments.length===3?(a=n,l=r):(a=n,i=r,l=s);var c=i??BY.active(),u=this.startSpan(t,a,c),d=Dye(c,u);return BY.with(d,l,void 0,u)}},e})();function jan(e){return typeof e=="object"&&typeof e.spanId=="string"&&typeof e.traceId=="string"&&typeof e.traceFlags=="number"}var Tan=new zot,Nan=(function(){function e(t,n,r,s){this._provider=t,this.name=n,this.version=r,this.options=s}return e.prototype.startSpan=function(t,n,r){return this._getTracer().startSpan(t,n,r)},e.prototype.startActiveSpan=function(t,n,r,s){var a=this._getTracer();return Reflect.apply(a.startActiveSpan,a,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var t=this._provider.getDelegateTracer(this.name,this.version,this.options);return t?(this._delegate=t,this._delegate):Tan},e})(),Ian=(function(){function e(){}return e.prototype.getTracer=function(t,n,r){return new zot},e})(),Aan=new Ian,L$e=(function(){function e(){}return e.prototype.getTracer=function(t,n,r){var s;return(s=this.getDelegateTracer(t,n,r))!==null&&s!==void 0?s:new Nan(this,t,n,r)},e.prototype.getDelegate=function(){var t;return(t=this._delegate)!==null&&t!==void 0?t:Aan},e.prototype.setDelegate=function(t){this._delegate=t},e.prototype.getDelegateTracer=function(t,n,r){var s;return(s=this._delegate)===null||s===void 0?void 0:s.getTracer(t,n,r)},e})(),F$e;(function(e){e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(F$e||(F$e={}));var UY="trace",Ran=(function(){function e(){this._proxyTracerProvider=new L$e,this.wrapSpanContext=Ean,this.isSpanContextValid=Fot,this.deleteSpan=wan,this.getSpan=Mye,this.getActiveSpan=xan,this.getSpanContext=Lot,this.setSpan=Dye,this.setSpanContext=San}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(t){var n=Rye(UY,this._proxyTracerProvider,YF.instance());return n&&this._proxyTracerProvider.setDelegate(t),n},e.prototype.getTracerProvider=function(){return PP(UY)||this._proxyTracerProvider},e.prototype.getTracer=function(t,n){return this.getTracerProvider().getTracer(t,n)},e.prototype.disable=function(){Pye(UY,YF.instance()),this._proxyTracerProvider=new L$e},e})();Ran.getInstance();var Pan=Object.defineProperty,Lye=(e,t)=>{for(var n in t)Pan(e,n,{get:t[n],enumerable:!0})};function Bot(e,{contentType:t,dataStreamVersion:n}){const r=new Headers(e??{});return r.has("Content-Type")||r.set("Content-Type",t),r.set("X-Vercel-AI-Data-Stream",n),r}var Uot="AI_NoObjectGeneratedError",qot=`vercel.ai.error.${Uot}`,$an=Symbol.for(qot),Vot,z$e=class extends Jh{constructor({message:e="No object generated.",cause:t,text:n,response:r,usage:s,finishReason:a}){super({name:Uot,message:e,cause:t}),this[Vot]=!0,this.text=n,this.response=r,this.usage=s,this.finishReason=a}static isInstance(e){return Jh.hasMarker(e,qot)}};Vot=$an;var Hot="AI_InvalidDataContentError",Wot=`vercel.ai.error.${Hot}`,Man=Symbol.for(Wot),Zot,B$e=class extends Jh{constructor({content:e,cause:t,message:n=`Invalid data content. Expected a base64 string, Uint8Array, ArrayBuffer, or Buffer, but got ${typeof e}.`}){super({name:Hot,message:n,cause:t}),this[Zot]=!0,this.content=e}static isInstance(e){return Jh.hasMarker(e,Wot)}};Zot=Man;var Got=ir([be(),Xh(Uint8Array),Xh(ArrayBuffer),dye(e=>{var t,n;return(n=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?n:!1},{message:"Must be a Buffer"})]);function U$e(e){if(e instanceof Uint8Array)return e;if(typeof e=="string")try{return Hrn(e)}catch(t){throw new B$e({message:"Invalid data content. Content string is not a base64-encoded media.",content:e,cause:t})}if(e instanceof ArrayBuffer)return new Uint8Array(e);throw new B$e({content:e})}function Dan(e){try{return new TextDecoder().decode(e)}catch{throw new Error("Error decoding Uint8Array to text")}}function q$e(e){var t,n,r;const s=[];for(const a of e){let i;try{i=new URL(a.url)}catch{throw new Error(`Invalid URL: ${a.url}`)}switch(i.protocol){case"http:":case"https:":{if((t=a.contentType)!=null&&t.startsWith("image/"))s.push({type:"image",image:i});else{if(!a.contentType)throw new Error("If the attachment is not an image, it must specify a content type");s.push({type:"file",data:i,mimeType:a.contentType})}break}case"data:":{let l,c,u;try{[l,c]=a.url.split(","),u=l.split(";")[0].split(":")[1]}catch{throw new Error(`Error processing data URL: ${a.url}`)}if(u==null||c==null)throw new Error(`Invalid data URL format: ${a.url}`);if((n=a.contentType)!=null&&n.startsWith("image/"))s.push({type:"image",image:U$e(c)});else if((r=a.contentType)!=null&&r.startsWith("text/"))s.push({type:"text",text:Dan(U$e(c))});else{if(!a.contentType)throw new Error("If the attachment is not an image or text, it must specify a content type");s.push({type:"file",data:c,mimeType:a.contentType})}break}default:throw new Error(`Unsupported URL protocol: ${i.protocol}`)}}return s}var Qot="AI_MessageConversionError",Yot=`vercel.ai.error.${Qot}`,Lan=Symbol.for(Yot),Xot,qY=class extends Jh{constructor({originalMessage:e,message:t}){super({name:Qot,message:t}),this[Xot]=!0,this.originalMessage=e}static isInstance(e){return Jh.hasMarker(e,Yot)}};Xot=Lan;function Fan(e,t){var n,r;const s=(n=void 0)!=null?n:{},a=[];for(let i=0;i<e.length;i++){const l=e[i],c=i===e.length-1,{role:u,content:d,experimental_attachments:f}=l;switch(u){case"system":{a.push({role:"system",content:d});break}case"user":{if(l.parts==null)a.push({role:"user",content:f?[{type:"text",text:d},...q$e(f)]:d});else{const p=l.parts.filter(h=>h.type==="text").map(h=>({type:"text",text:h.text}));a.push({role:"user",content:f?[...p,...q$e(f)]:p})}break}case"assistant":{if(l.parts!=null){let m=function(){const w=[];for(const k of b)switch(k.type){case"file":case"text":{w.push(k);break}case"reasoning":{for(const _ of k.details)switch(_.type){case"text":w.push({type:"reasoning",text:_.text,signature:_.signature});break;case"redacted":w.push({type:"redacted-reasoning",data:_.data});break}break}case"tool-invocation":w.push({type:"tool-call",toolCallId:k.toolInvocation.toolCallId,toolName:k.toolInvocation.toolName,args:k.toolInvocation.args});break;default:{const _=k;throw new Error(`Unsupported part: ${_}`)}}a.push({role:"assistant",content:w});const S=b.filter(k=>k.type==="tool-invocation").map(k=>k.toolInvocation);S.length>0&&a.push({role:"tool",content:S.map(k=>{if(!("result"in k))throw new qY({originalMessage:l,message:"ToolInvocation must have a result: "+JSON.stringify(k)});const{toolCallId:_,toolName:C,result:E}=k,j=s[C];return j?.experimental_toToolResultContent!=null?{type:"tool-result",toolCallId:_,toolName:C,result:j.experimental_toToolResultContent(E),experimental_content:j.experimental_toToolResultContent(E)}:{type:"tool-result",toolCallId:_,toolName:C,result:E}})}),b=[],y=!1,g++},g=0,y=!1,b=[];for(const w of l.parts)switch(w.type){case"text":{y&&m(),b.push(w);break}case"file":case"reasoning":{b.push(w);break}case"tool-invocation":{((r=w.toolInvocation.step)!=null?r:0)!==g&&m(),b.push(w),y=!0;break}}m();break}const p=l.toolInvocations;if(p==null||p.length===0){a.push({role:"assistant",content:d});break}const h=p.reduce((m,g)=>{var y;return Math.max(m,(y=g.step)!=null?y:0)},0);for(let m=0;m<=h;m++){const g=p.filter(y=>{var b;return((b=y.step)!=null?b:0)===m});g.length!==0&&(a.push({role:"assistant",content:[...c&&d&&m===0?[{type:"text",text:d}]:[],...g.map(({toolCallId:y,toolName:b,args:w})=>({type:"tool-call",toolCallId:y,toolName:b,args:w}))]}),a.push({role:"tool",content:g.map(y=>{if(!("result"in y))throw new qY({originalMessage:l,message:"ToolInvocation must have a result: "+JSON.stringify(y)});const{toolCallId:b,toolName:w,result:S}=y,k=s[w];return k?.experimental_toToolResultContent!=null?{type:"tool-result",toolCallId:b,toolName:w,result:k.experimental_toToolResultContent(S),experimental_content:k.experimental_toToolResultContent(S)}:{type:"tool-result",toolCallId:b,toolName:w,result:S}})}))}d&&!c&&a.push({role:"assistant",content:d});break}case"data":break;default:{const p=u;throw new qY({originalMessage:l,message:`Unsupported role: ${p}`})}}}return a}var Lde=cye(()=>ir([oye(),be(),Mt(),aa(),da(be(),Lde),qt(Lde)])),tl=da(be(),da(be(),Lde)),zan=qt(ir([Ae({type:sn("text"),text:be()}),Ae({type:sn("image"),data:be(),mimeType:be().optional()})])),Kot=Ae({type:sn("text"),text:be(),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()}),Ban=Ae({type:sn("image"),image:ir([Got,Xh(URL)]),mimeType:be().optional(),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()}),Jot=Ae({type:sn("file"),data:ir([Got,Xh(URL)]),filename:be().optional(),mimeType:be(),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()}),Uan=Ae({type:sn("reasoning"),text:be(),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()}),qan=Ae({type:sn("redacted-reasoning"),data:be(),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()}),Van=Ae({type:sn("tool-call"),toolCallId:be(),toolName:be(),args:di(),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()}),Han=Ae({type:sn("tool-result"),toolCallId:be(),toolName:be(),result:di(),content:zan.optional(),isError:aa().optional(),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()}),Wan=Ae({role:sn("system"),content:be(),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()}),Zan=Ae({role:sn("user"),content:ir([be(),qt(ir([Kot,Ban,Jot]))]),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()}),Gan=Ae({role:sn("assistant"),content:ir([be(),qt(ir([Kot,Jot,Uan,qan,Van]))]),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()}),Qan=Ae({role:sn("tool"),content:qt(Han),providerOptions:tl.optional(),experimental_providerMetadata:tl.optional()});ir([Wan,Zan,Gan,Qan]);var Yan="JSON schema:",Xan="You MUST answer with a JSON object that matches the JSON schema above.",Kan="You MUST answer with JSON.";function Jan({prompt:e,schema:t,schemaPrefix:n=t!=null?Yan:void 0,schemaSuffix:r=t!=null?Xan:Kan}){return[e!=null&&e.length>0?e:void 0,e!=null&&e.length>0?"":void 0,n,t!=null?JSON.stringify(t):void 0,r].filter(s=>s!=null).join(`
|
|
190
190
|
`)}a_({prefix:"aiobj",size:24});a_({prefix:"aiobj",size:24});a_({prefix:"aitxt",size:24});a_({prefix:"msg",size:24});var ein={};Lye(ein,{object:()=>nin,text:()=>tin});var tin=()=>({type:"text",responseFormat:()=>({type:"text"}),injectIntoSystemPrompt({system:e}){return e},parsePartial({text:e}){return{partial:e}},parseOutput({text:e}){return e}}),nin=({schema:e})=>{const t=Ksn(e);return{type:"object",responseFormat:({model:n})=>({type:"json",schema:n.supportsStructuredOutputs?t.jsonSchema:void 0}),injectIntoSystemPrompt({system:n,model:r}){return r.supportsStructuredOutputs?n:Jan({prompt:n,schema:t.jsonSchema})},parsePartial({text:n}){const r=Asn(n);switch(r.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:r.value};default:{const s=r.state;throw new Error(`Unsupported parse state: ${s}`)}}},parseOutput({text:n},r){const s=$de({text:n});if(!s.success)throw new z$e({message:"No object generated: could not parse the response.",cause:s.error,text:n,response:r.response,usage:r.usage,finishReason:r.finishReason});const a=Eot({value:s.value,schema:t});if(!a.success)throw new z$e({message:"No object generated: response did not match schema.",cause:a.error,text:n,response:r.response,usage:r.usage,finishReason:r.finishReason});return a.value}}};function elt(e,t){const n=e.getReader(),r=t.getReader();let s,a,i=!1,l=!1;async function c(d){try{s==null&&(s=n.read());const f=await s;s=void 0,f.done?d.close():d.enqueue(f.value)}catch(f){d.error(f)}}async function u(d){try{a==null&&(a=r.read());const f=await a;a=void 0,f.done?d.close():d.enqueue(f.value)}catch(f){d.error(f)}}return new ReadableStream({async pull(d){try{if(i){await u(d);return}if(l){await c(d);return}s==null&&(s=n.read()),a==null&&(a=r.read());const{result:f,reader:p}=await Promise.race([s.then(h=>({result:h,reader:n})),a.then(h=>({result:h,reader:r}))]);f.done||d.enqueue(f.value),p===n?(s=void 0,f.done&&(await u(d),i=!0)):(a=void 0,f.done&&(l=!0,await c(d)))}catch(f){d.error(f)}},cancel(){n.cancel(),r.cancel()}})}a_({prefix:"aitxt",size:24});a_({prefix:"msg",size:24});var rin=Ae({name:be(),version:be()}).passthrough(),Fye=Ae({_meta:Ol(Ae({}).passthrough())}).passthrough(),$P=Fye,sin=Ae({method:be(),params:Ol(Fye)}),ain=Ae({experimental:Ol(Ae({}).passthrough()),logging:Ol(Ae({}).passthrough()),prompts:Ol(Ae({listChanged:Ol(aa())}).passthrough()),resources:Ol(Ae({subscribe:Ol(aa()),listChanged:Ol(aa())}).passthrough()),tools:Ol(Ae({listChanged:Ol(aa())}).passthrough())}).passthrough();$P.extend({protocolVersion:be(),capabilities:ain,serverInfo:rin,instructions:Ol(be())});var iin=$P.extend({nextCursor:Ol(be())}),oin=Ae({name:be(),description:Ol(be()),inputSchema:Ae({type:sn("object"),properties:Ol(Ae({}).passthrough())}).passthrough()}).passthrough();iin.extend({tools:qt(oin)});var lin=Ae({type:sn("text"),text:be()}).passthrough(),cin=Ae({type:sn("image"),data:be().base64(),mimeType:be()}).passthrough(),tlt=Ae({uri:be(),mimeType:Ol(be())}).passthrough(),uin=tlt.extend({text:be()}),din=tlt.extend({blob:be().base64()}),fin=Ae({type:sn("resource"),resource:ir([uin,din])}).passthrough();$P.extend({content:qt(ir([lin,cin,fin])),isError:aa().default(!1).optional()}).or($P.extend({toolResult:di()}));var YU="2.0",pin=Ae({jsonrpc:sn(YU),id:ir([be(),Mt().int()])}).merge(sin).strict(),hin=Ae({jsonrpc:sn(YU),id:ir([be(),Mt().int()]),result:$P}).strict(),min=Ae({jsonrpc:sn(YU),id:ir([be(),Mt().int()]),error:Ae({code:Mt().int(),message:be(),data:Ol(di())})}).strict(),gin=Ae({jsonrpc:sn(YU)}).merge(Ae({method:be(),params:Ol(Fye)})).strict();ir([pin,gin,hin,min]);var vin={};Lye(vin,{mergeIntoDataStream:()=>xin,toDataStream:()=>yin,toDataStreamResponse:()=>bin});function nlt(e={}){const t=new TextEncoder;let n="";return new TransformStream({async start(){e.onStart&&await e.onStart()},async transform(r,s){s.enqueue(t.encode(r)),n+=r,e.onToken&&await e.onToken(r),e.onText&&typeof r=="string"&&await e.onText(r)},async flush(){e.onCompletion&&await e.onCompletion(n),e.onFinal&&await e.onFinal(n)}})}function zye(e,t){return e.pipeThrough(new TransformStream({transform:async(n,r)=>{var s;if(typeof n=="string"){r.enqueue(n);return}if("event"in n){n.event==="on_chat_model_stream"&&V$e((s=n.data)==null?void 0:s.chunk,r);return}V$e(n,r)}})).pipeThrough(nlt(t)).pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({transform:async(n,r)=>{r.enqueue(Pot("text",n))}}))}function yin(e,t){return zye(e,t).pipeThrough(new TextEncoderStream)}function bin(e,t){var n;const r=zye(e,t?.callbacks).pipeThrough(new TextEncoderStream),s=t?.data,a=t?.init,i=s?elt(s.stream,r):r;return new Response(i,{status:(n=a?.status)!=null?n:200,statusText:a?.statusText,headers:Bot(a?.headers,{contentType:"text/plain; charset=utf-8",dataStreamVersion:"v1"})})}function xin(e,t){t.dataStream.merge(zye(e,t.callbacks))}function V$e(e,t){if(typeof e.content=="string")t.enqueue(e.content);else{const n=e.content;for(const r of n)r.type==="text"&&t.enqueue(r.text)}}var win={};Lye(win,{mergeIntoDataStream:()=>Oin,toDataStream:()=>Sin,toDataStreamResponse:()=>kin});function Bye(e,t){const n=_in();return Frn(e[Symbol.asyncIterator]()).pipeThrough(new TransformStream({async transform(r,s){s.enqueue(n(r.delta))}})).pipeThrough(nlt(t)).pipeThrough(new TextDecoderStream).pipeThrough(new TransformStream({transform:async(r,s)=>{s.enqueue(Pot("text",r))}}))}function Sin(e,t){return Bye(e,t).pipeThrough(new TextEncoderStream)}function kin(e,t={}){var n;const{init:r,data:s,callbacks:a}=t,i=Bye(e,a).pipeThrough(new TextEncoderStream),l=s?elt(s.stream,i):i;return new Response(l,{status:(n=r?.status)!=null?n:200,statusText:r?.statusText,headers:Bot(r?.headers,{contentType:"text/plain; charset=utf-8",dataStreamVersion:"v1"})})}function Oin(e,t){t.dataStream.merge(Bye(e,t.callbacks))}function _in(){let e=!0;return t=>(e&&(t=t.trimStart(),t&&(e=!1)),t)}var rlt="vercel.ai.error",Cin=Symbol.for(rlt),H$e,W$e,Z$e=class slt extends(W$e=Error,H$e=Cin,W$e){constructor({name:t,message:n,cause:r}){super(n),this[H$e]=!0,this.name=t,this.cause=r}static isInstance(t){return slt.hasMarker(t,rlt)}static hasMarker(t,n){const r=Symbol.for(n);return t!=null&&typeof t=="object"&&r in t&&typeof t[r]=="boolean"&&t[r]===!0}},alt="AI_InvalidArgumentError",ilt=`vercel.ai.error.${alt}`,Ein=Symbol.for(ilt),G$e,Q$e,jin=class extends(Q$e=Z$e,G$e=Ein,Q$e){constructor({message:e,cause:t,argument:n}){super({name:alt,message:e,cause:t}),this[G$e]=!0,this.argument=n}static isInstance(e){return Z$e.hasMarker(e,ilt)}},Tin=({prefix:e,size:t=16,alphabet:n="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:r="-"}={})=>{const s=()=>{const a=n.length,i=new Array(t);for(let l=0;l<t;l++)i[l]=n[Math.random()*a|0];return i.join("")};if(e==null)return s;if(n.includes(r))throw new jin({argument:"separator",message:`The separator "${r}" must not be part of the alphabet "${n}".`});return()=>`${e}${r}${s()}`};Tin();function Nin({mediaType:e,url:t,supportedUrls:n}){return t=t.toLowerCase(),e=e.toLowerCase(),Object.entries(n).map(([r,s])=>{const a=r.toLowerCase();return a==="*"||a==="*/*"?{mediaTypePrefix:"",regexes:s}:{mediaTypePrefix:a.replace(/\*/,""),regexes:s}}).filter(({mediaTypePrefix:r})=>e.startsWith(r)).flatMap(({regexes:r})=>r).some(r=>r.test(t))}new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");var{btoa:Iin,atob:Ain}=globalThis;function olt(e){const t=e.replace(/-/g,"+").replace(/_/g,"/"),n=Ain(t);return Uint8Array.from(n,r=>r.codePointAt(0))}function Fde(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCodePoint(e[n]);return Iin(t)}var Rin=class{base64Data;uint8ArrayData;mediaType;constructor({data:e,mediaType:t}){const n=e instanceof Uint8Array;this.base64Data=n?void 0:e,this.uint8ArrayData=n?e:void 0,this.mediaType=t}get base64(){return this.base64Data==null&&(this.base64Data=Fde(this.uint8ArrayData)),this.base64Data}get uint8Array(){return this.uint8ArrayData==null&&(this.uint8ArrayData=olt(this.base64Data)),this.uint8ArrayData}},Y$e=class extends Rin{type="file";constructor(e){super(e)}},Pin=()=>!0;async function $in(e,t={},n=3,r={}){let s=0,a=null;const i=r.shouldRetryResponse??Pin;for(;s<n;){let l;try{l=await fetch(e,t)}catch(u){a=u instanceof Error?u:new Error(String(u))}if(l){if(l.ok)return l;if(a=new Error(`Request failed with status: ${l.status} ${l.statusText}`),!i(l))throw a}if(s++,s>=n)break;const c=Math.min(1e3*Math.pow(2,s),1e4);await new Promise(u=>setTimeout(u,c))}throw a||new Error("Request failed after multiple retry attempts")}function Km(e,t,n){const r=e?.mastra,s=r?.toolPayloadTransform?.[t]?.[n]??r?.toolPayloadProjection?.[t]?.[n];if(s&&Object.prototype.hasOwnProperty.call(s,"projected")&&!Object.prototype.hasOwnProperty.call(s,"transformed")){const{projected:a,...i}=s;return{...i,transformed:a}}return s}function gu(e){return!!(e&&Object.prototype.hasOwnProperty.call(e,"transformed"))}function rO(e){return typeof e=="string"?e:e instanceof ArrayBuffer?Fde(new Uint8Array(e)):Fde(e)}function llt(e){if(e.type==="user-message")return{type:"user",tagName:e.tagName??"user"};if(e.type==="system-reminder")return{type:"reactive",tagName:e.tagName??"system-reminder"};if(e.type==="user"||e.type==="state"||e.type==="notification")return{type:e.type,tagName:e.tagName??e.type};if(e.type==="reactive")return{type:"reactive",tagName:e.tagName??"system-reminder"};throw new Error(`Invalid signal type: ${e.type}. Use a supported signal type and set tagName for custom XML tags.`)}function Min(e){const{type:t,tagName:n}=llt(e);return{...e,type:t,tagName:n,id:e.id??crypto.randomUUID(),createdAt:e.createdAt instanceof Date?e.createdAt:e.createdAt?new Date(e.createdAt):new Date,acceptedAt:e.acceptedAt instanceof Date?e.acceptedAt:e.acceptedAt?new Date(e.acceptedAt):void 0}}function clt(e){return e.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">")}function Din(e){return clt(e).replaceAll('"',""")}var Lin=/^[A-Za-z_][A-Za-z0-9_.-]*$/;function ult(e,t){if(!Lin.test(e))throw new Error(`Invalid signal XML ${t}: ${e}`)}function Fin(e){if(!e)return"";const t=Object.entries(e).filter(n=>n[1]!==null&&n[1]!==void 0).map(([n,r])=>(ult(n,"attribute name"),`${n}="${Din(String(r))}"`)).join(" ");return t?` ${t}`:""}function zde(e){const t=e.tagName??llt(e).tagName;ult(t,"tag name");const n=Fin(e.attributes);return e.contents?`<${t}${n}>${clt(e.contents)}</${t}>`:`<${t}${n} />`}function zin(e){if(typeof e=="string")return e;if(Array.isArray(e)){const n=[];for(const r of e){if(typeof r=="string"){n.push({type:"text",text:r});continue}const s=X$e(r);if(!s)return;n.push(...s)}return J$e(n)}const t=X$e(e);return t?J$e(t):void 0}function X$e(e){if(!e||typeof e!="object")return;const t=e;if(t.role==="user"&&"content"in t){const r=t.content;if(typeof r=="string")return[{type:"text",text:r}];if(Array.isArray(r)){const s=[];for(const a of r){const i=K$e(a);if(!i)return;s.push(i)}return s}return}const n=K$e(t);return n?[n]:void 0}function K$e(e){if(!e||typeof e!="object")return;const t=e,n=t.providerOptions&&typeof t.providerOptions=="object"&&!Array.isArray(t.providerOptions)?t.providerOptions:void 0;if(t.type==="text"&&typeof t.text=="string")return{type:"text",text:t.text,...n?{providerOptions:n}:{}};if(t.type==="file"||t.type==="image"){const r=t.type==="image"?t.image??t.data:t.data;if(typeof r!="string")return;const s=typeof t.mediaType=="string"?t.mediaType:typeof t.mimeType=="string"?t.mimeType:t.type==="image"?"image/png":"";return s?{type:"file",data:r,mediaType:s,...typeof t.filename=="string"?{filename:t.filename}:{},...n?{providerOptions:n}:{}}:void 0}}function J$e(e){if(e.length===0)return;const t=e[0];return e.length===1&&t?.type==="text"?t.text:e}function Bin(e){return typeof e=="string"?[{type:"text",text:e}]:e.map(t=>t.type==="file"?{type:"file",data:t.data instanceof URL?t.data.toString():rO(t.data),mediaType:t.mediaType,...t.filename?{filename:t.filename}:{},...t.providerOptions?{providerOptions:t.providerOptions}:{}}:{type:"text",text:t.text,...t.providerOptions?{providerOptions:t.providerOptions}:{}})}function Uin(e){const t=[];for(const n of e){const r=n.providerMetadata;if(n.type==="text")t.push({type:"text",text:n.text,...r?{providerOptions:r}:{}});else if(n.type==="file"&&typeof n.data=="string"){const s=n;t.push({type:"file",data:s.data,mediaType:typeof s.mimeType=="string"?s.mimeType:"",...typeof s.filename=="string"?{filename:s.filename}:{},...r?{providerOptions:r}:{}})}}return t}function dlt(e){return e.length===1&&e[0]?.type==="text"&&!e[0].providerOptions?e[0].text:e.map(t=>t.type==="file"?{type:"file",data:t.data,mediaType:t.mediaType,...t.filename?{filename:t.filename}:{},...t.providerOptions?{providerOptions:t.providerOptions}:{}}:{type:"text",text:t.text,...t.providerOptions?{providerOptions:t.providerOptions}:{}})}function qin(e){return e?Object.keys(e).some(t=>{const n=e[t];return n!=null}):!1}function Vin(e,t){let n=!1;const r=[];for(const s of t)!n&&s.type==="text"?(n=!0,r.push({...s,text:zde({...e,contents:s.text})})):r.push(s);if(!n){const s=zde({type:e.type,tagName:e.tagName,attributes:e.attributes});r.unshift({type:"text",text:s})}return r}function Hin(e,t){const n=e.type==="user",r=qin(e.attributes),s=t.some(i=>i.providerOptions);let a;return n&&!r?a=t.length===1&&t[0]?.type==="text"&&!t[0].providerOptions?t[0].text:t:t.every(i=>i.type==="text")&&!s?a=zde({...e,contents:t.map(i=>i.text).join(`
|
|
191
|
-
`)}):a=Vin(e,t),{role:"user",content:a,...e.providerOptions?{providerOptions:e.providerOptions}:{}}}function Win(e,t){return{type:e.type==="user"?"data-user-message":"data-signal",data:{id:e.id,type:e.type,tagName:e.tagName,contents:dlt(t),createdAt:e.createdAt.toISOString(),...e.acceptedAt?{acceptedAt:e.acceptedAt.toISOString()}:{},...e.attributes?{attributes:e.attributes}:{},...e.metadata?{metadata:e.metadata}:{},...e.providerOptions?{providerOptions:e.providerOptions}:{}},transient:!0}}function Zin(e,t,n){const r=t.length>0?t.map(s=>s.type==="file"?{type:"file",data:s.data,mimeType:s.mediaType,...s.filename?{filename:s.filename}:{},...s.providerOptions?{providerMetadata:s.providerOptions}:{}}:{type:"text",text:s.text,...s.providerOptions?{providerMetadata:s.providerOptions}:{}}):[{type:"text",text:""}];return{id:e.id,role:"signal",createdAt:e.createdAt,threadId:n?.threadId,resourceId:n?.resourceId,type:e.tagName,content:{format:2,parts:r,...e.providerOptions?{providerMetadata:e.providerOptions}:{},metadata:{signal:{id:e.id,type:e.type,tagName:e.tagName,createdAt:e.createdAt.toISOString(),...e.acceptedAt?{acceptedAt:e.acceptedAt.toISOString()}:{},...e.attributes?{attributes:e.attributes}:{},...e.metadata?{metadata:e.metadata}:{}}}}}}function eMe(e){return!e||typeof e!="object"||Array.isArray(e)?!1:e.__isCreatedSignal===!0}function flt(e){const t=Min(e),n=Bin(t.contents);return{...t,__isCreatedSignal:!0,toDBMessage:r=>Zin(t,n,r),toLLMMessage:()=>Hin(t,n),toDataPart:()=>Win(t,n)}}function Gin(e){const t=e.content.metadata?.signal,n=t&&typeof t=="object"&&!Array.isArray(t)?t:void 0,s=typeof n?.type=="string"?n.type:e.type??"user-message",a=typeof n?.tagName=="string"?n.tagName:void 0,i=n&&"contents"in n?n.contents:void 0,l=zin(i),c=dlt(Uin(e.content.parts)),u=l??c,d=e.content.providerMetadata,f={id:typeof n?.id=="string"?n.id:e.id,createdAt:typeof n?.createdAt=="string"?n.createdAt:e.createdAt,acceptedAt:typeof n?.acceptedAt=="string"?n.acceptedAt:void 0,attributes:n?.attributes&&typeof n.attributes=="object"&&!Array.isArray(n.attributes)?n.attributes:void 0,metadata:n?.metadata&&typeof n.metadata=="object"&&!Array.isArray(n.metadata)?n.metadata:void 0,providerOptions:d&&typeof d=="object"&&!Array.isArray(d)?d:void 0};return flt({...f,type:s,tagName:a,contents:u})}var Ha=class cl{static isMastraDBMessage(t){return!!("content"in t&&t.content&&!Array.isArray(t.content)&&typeof t.content!="string"&&"format"in t.content&&t.content.format===2)}static isMastraMessageV1(t){return!cl.isMastraDBMessage(t)&&("threadId"in t||"resourceId"in t)}static isMastraMessage(t){return cl.isMastraDBMessage(t)||cl.isMastraMessageV1(t)}static isAIV4UIMessage(t){return!cl.isMastraMessage(t)&&!cl.isAIV4CoreMessage(t)&&"parts"in t&&!cl.hasAIV5UIMessageCharacteristics(t)}static isAIV6UIMessage(t){return!cl.isMastraMessage(t)&&!cl.isAIV4CoreMessage(t)&&"parts"in t&&cl.hasAIV6UIMessageCharacteristics(t)}static isAIV5UIMessage(t){return!cl.isMastraMessage(t)&&!cl.isAIV6UIMessage(t)&&!cl.isAIV5CoreMessage(t)&&"parts"in t&&cl.hasAIV5UIMessageCharacteristics(t)}static isAIV4CoreMessage(t){return!cl.isMastraMessage(t)&&!("parts"in t)&&"content"in t&&!cl.hasAIV5CoreMessageCharacteristics(t)}static isAIV6CoreMessage(t){return!cl.isMastraMessage(t)&&!("parts"in t)&&"content"in t&&cl.hasAIV6CoreMessageCharacteristics(t)}static isAIV5CoreMessage(t){return!cl.isMastraMessage(t)&&!cl.isAIV6CoreMessage(t)&&!("parts"in t)&&"content"in t&&cl.hasAIV5CoreMessageCharacteristics(t)}static hasAIV6UIMessageCharacteristics(t){if(!("parts"in t)||!t.parts)return!1;for(const n of t.parts)if(n.type==="source-document"||n.type==="dynamic-tool"||"toolCallId"in n&&"state"in n&&(n.state==="approval-requested"||n.state==="approval-responded"||n.state==="output-denied"))return!0;return!1}static hasAIV5UIMessageCharacteristics(t){if("toolInvocations"in t||"reasoning"in t||"experimental_attachments"in t||"data"in t||"annotations"in t||!t.parts)return!1;for(const n of t.parts){if("metadata"in n)return!0;if("toolInvocation"in n)return!1;if("toolCallId"in n)return!0;if(n.type==="source")return!1;if(n.type==="source-url")return!0;if(n.type==="reasoning"){if("state"in n||"text"in n)return!0;if("reasoning"in n||"details"in n)return!1}if(n.type==="file"&&"mediaType"in n)return!0}return!1}static hasAIV6CoreMessageCharacteristics(t){return"parts"in t||typeof t.content=="string"?!1:t.content.some(n=>n.type==="tool-approval-request"||n.type==="tool-approval-response")}static hasAIV5CoreMessageCharacteristics(t){if("experimental_providerMetadata"in t)return!1;if(typeof t.content=="string")return!0;for(const n of t.content){if(n.type==="tool-result"&&"output"in n||n.type==="tool-call"&&"input"in n)return!0;if(n.type==="tool-result"&&"result"in n||n.type==="tool-call"&&"args"in n)return!1;if("mediaType"in n)return!0;if("mimeType"in n||"experimental_providerMetadata"in n||n.type==="reasoning"&&"signature"in n||n.type==="redacted-reasoning")return!1}return!0}static getRole(t){if(t.role==="assistant"||t.role==="tool")return"assistant";if(t.role==="user")return"user";if(t.role==="system")return"system";throw new Error(`BUG: add handling for message role ${t.role} in message ${JSON.stringify(t,null,2)}`)}};function XF(e){if(!e.startsWith("data:"))return{isDataUri:!1,base64Content:e};const t=e.indexOf(",");if(t===-1)return{isDataUri:!0,base64Content:e};const n=e.substring(5,t),r=e.substring(t+1),s=n.indexOf(";");return{isDataUri:!0,mimeType:(s!==-1?n.substring(0,s):n)||void 0,base64Content:r}}function Uye(e,t="application/octet-stream"){return e.startsWith("data:")?e:`data:${t};base64,${e}`}function Qin(e,t){return typeof e=="string"?e:e instanceof URL?e.toString():e instanceof Uint8Array||e instanceof ArrayBuffer||globalThis.Buffer&&Buffer.isBuffer(e)?rO(e):String(e)}function tMe(e){return e instanceof URL?e.toString():typeof e=="string"?e.length:e instanceof Uint8Array||e instanceof ArrayBuffer?e.byteLength:e}function Yin(e){try{return new URL(e),!0}catch{if(e.startsWith("//"))try{return new URL(`https:${e}`),!0}catch{return!1}return!1}}function MP(e,t){const n=XF(e),r=n.isDataUri&&n.mimeType?n.mimeType:t;return n.isDataUri?{type:"dataUri",mimeType:r,data:e}:Yin(e)?{type:"url",mimeType:r,data:e}:{type:"raw",mimeType:r,data:e}}var Xin=["openai","azure"];function plt(e,t){return`${e}:${t}`}function Kin(e){return hlt(e)[0]}function nMe(e){const t=Kin(e);return t?plt(t.provider,t.itemId):void 0}function hlt(e){if(!e)return[];const n=e.azure?.itemId,s=e.openai?.itemId;return typeof n=="string"&&n===s?[{provider:"azure",itemId:n}]:Xin.flatMap(a=>{const l=e[a]?.itemId;return typeof l=="string"?[{provider:a,itemId:l}]:[]})}function Jin(e){return hlt(e).map(({provider:t,itemId:n})=>plt(t,n))}function cL(e,t){const n=[...e],r=n.findIndex(s=>s.role!=="system");return r===-1?n.length>0&&t?.warn("No user or assistant messages in the request. Some providers (e.g. Gemini) require at least one user message to generate a response."):n[r]?.role==="assistant"&&n.splice(r,0,{role:"user",content:"."}),n}function eon(e,t){return e.map(n=>non(n,t))}function ton(e){const t=e.map(r=>Array.isArray(r.content)?[...r.content]:null);for(let r=0;r<e.length;r++){const s=e[r];if(s.role==="assistant"&&Array.isArray(s.content)){const a=new Set,i=new Set;for(const d of s.content)d.type==="tool-call"?a.add(d.toolCallId):d.type==="tool-result"&&i.add(d.toolCallId);const l=e[r+1],c=new Set;if(l&&l.role==="tool"&&Array.isArray(l.content))for(const d of l.content)d.type==="tool-result"&&c.add(d.toolCallId);const u=new Set([...a].filter(d=>i.has(d)||c.has(d)));t[r]=t[r].filter(d=>{if(d.type!=="tool-call")return!0;const f=d;return f.providerExecuted===!0||u.has(f.toolCallId)}),l&&l.role==="tool"&&Array.isArray(l.content)&&(t[r+1]=t[r+1].filter(d=>d.type!=="tool-result"||u.has(d.toolCallId)))}else if(s.role==="tool"&&Array.isArray(s.content)){const a=e[r-1];(!a||a.role!=="assistant"||!Array.isArray(a.content))&&(t[r]=t[r].filter(i=>i.type!=="tool-result"))}}const n=[];for(let r=0;r<e.length;r++){const s=e[r],a=t[r];if(a==null){n.push(s);continue}if(a.length!==0){if(Array.isArray(s.content)&&a.length===s.content.length){n.push(s);continue}n.push({...s,content:a})}}return n}function non(e,t){return e.role!=="tool"||!Array.isArray(e.content)?e:{...e,content:e.content.map(n=>n.type==="tool-result"?{...n,input:XU(t,n.toolCallId)}:n)}}function XU(e,t){for(let n=e.length-1;n>=0;n--){const r=e[n];if(!(!r||r.role!=="assistant")){if(r.content.parts){const s=r.content.parts.find(a=>a.type==="tool-invocation"&&a.toolInvocation.toolCallId===t);if(s&&s.type==="tool-invocation"){const a=s.toolInvocation.args||{};if(typeof a=="object"&&Object.keys(a).length>0)return a}}if(r.content.toolInvocations){const s=r.content.toolInvocations.find(a=>a.toolCallId===t);if(s){const a=s.args||{};if(typeof a=="object"&&Object.keys(a).length>0)return a}}}}return{}}function rj(e,t,n,r=!0){if(!r)return n;const s=Km(e,"display",t);return gu(s)?s.transformed:n}function ron(e,t,n){return{...e,args:rj(t,"input-available",e.args,n),...e.state==="result"?{result:rj(t,"output-available",rj(t,"error",e.result,n),n)}:{}}}function rMe(e){return e.some(n=>!(n.type==="text"&&n.text===""))?e.filter(n=>n.type==="text"?n.text!=="":!0):e}function qye(e){const t=e.content.metadata?.signal;if(t&&typeof t=="object"&&!Array.isArray(t)){const n=t.type;return typeof n=="string"?n:e.type}return e.type}function son(e){const t=e.content.metadata?.signal;if(t&&typeof t=="object"&&!Array.isArray(t)){const r=t.tagName;if(typeof r=="string")return r}const n=qye(e);return n==="user"?"user":n==="reactive"?e.type:n}function aon(e){return e==="user"||e==="user-message"}function ion(e,t){const n=e.content.metadata?.signal&&typeof e.content.metadata.signal=="object"?e.content.metadata.signal:{},r=n.metadata&&typeof n.metadata=="object"&&!Array.isArray(n.metadata)?n.metadata:{},s=n.attributes&&typeof n.attributes=="object"&&!Array.isArray(n.attributes)?n.attributes:{},a=qye(e)??"signal",i=son(e)??a;return{type:a==="user"?"data-user-message":"data-signal",data:{id:typeof n.id=="string"?n.id:e.id,type:a,tagName:i,contents:"contents"in n?n.contents:t,createdAt:typeof n.createdAt=="string"?n.createdAt:e.createdAt.toISOString(),...typeof n.acceptedAt=="string"?{acceptedAt:n.acceptedAt}:{},...Object.keys(s).length?{attributes:s}:{},...Object.keys(r).length?{metadata:r}:{}}}}var _w=class{static toUIMessage(e,t){const n=t?.transformToolPayloads??!0,r=e.content.experimental_attachments?[...e.content.experimental_attachments]:[],s=typeof e.content.content=="string"&&e.content.content!==""?e.content.content:(e.content.parts??[]).reduce((f,p)=>p.type==="text"?p.text:f,""),a=[],i=e.content.parts??[];if(i.length)for(const f of i)if(f.type==="file"){let p;typeof f.data=="string"&&MP(f.data,f.mimeType).type==="raw"?p=Uye(f.data,f.mimeType||"application/octet-stream"):p=f.data,r.push({contentType:f.mimeType,url:p})}else{if(f.type==="tool-invocation"&&(f.toolInvocation.state==="call"||f.toolInvocation.state==="partial-call"))continue;if(f.type==="tool-invocation"){const p={...f.toolInvocation,args:rj(f.providerMetadata,"input-available",f.toolInvocation.args,n),...f.toolInvocation.state==="result"?{result:rj(f.providerMetadata,"output-available",rj(f.providerMetadata,"error",f.toolInvocation.result,n),n)}:{}};let h=-1,m=-1;for(const g of i)if(g.type==="step-start"&&h++,g.type==="tool-invocation"&&g.toolInvocation.toolCallId===f.toolInvocation.toolCallId){m=h;break}if(m>=0){const g={step:m,...p};a.push({type:"tool-invocation",toolInvocation:g})}else a.push({type:"tool-invocation",toolInvocation:p})}else a.push(f)}a.length===0&&r.length>0&&a.push({type:"text",text:""});const l=e.role==="signal"?qye(e):void 0,c=aon(l),u=e.role==="signal"&&!c?[ion(e,e.content.content||s)]:a;if(e.role==="user"){const f={id:e.id,role:e.role,content:e.content.content||s,createdAt:e.createdAt,parts:u,experimental_attachments:r};return e.content.metadata&&(f.metadata=e.content.metadata),f}else if(e.role==="assistant"){const f=Array.isArray(e.content.content)&&e.content.content.length===1&&e.content.content[0].type==="text",p={id:e.id,role:e.role,content:f?s:e.content.content||s,createdAt:e.createdAt,parts:u,reasoning:void 0,toolInvocations:"toolInvocations"in e.content?e.content.toolInvocations?.filter(h=>h.state==="result").map(h=>{const m=e.content.parts?.find(g=>g.type==="tool-invocation"&&g.toolInvocation.toolCallId===h.toolCallId)?.providerMetadata;return ron(h,m,n)}):void 0};return e.content.metadata&&(p.metadata=e.content.metadata),p}const d={id:e.id,role:e.role==="signal"?c?"user":"system":e.role,content:e.role==="signal"&&!c?"":e.content.content||s,createdAt:e.createdAt,parts:u,experimental_attachments:r};return e.content.metadata&&(d.metadata=e.content.metadata),d}static systemToV4Core(e){if(e.role!=="system"||!e.content.content)throw new Kk({id:"INVALID_SYSTEM_MESSAGE_FORMAT",domain:qw.AGENT,category:Vw.USER,text:"Invalid system message format. System messages must include 'role' and 'content' properties. The content should be a string.",details:{receivedMessage:JSON.stringify(e,null,2)}});const t={role:"system",content:e.content.content};return e.content.providerMetadata&&(t.experimental_providerMetadata=e.content.providerMetadata),t}static fromUIMessage(e,t,n){const s={format:2,parts:e.parts?rMe(e.parts):[]};return e.toolInvocations&&(s.toolInvocations=e.toolInvocations),e.reasoning&&(s.reasoning=e.reasoning),e.annotations&&(s.annotations=e.annotations),e.experimental_attachments&&(s.experimental_attachments=e.experimental_attachments),"metadata"in e&&e.metadata!==null&&e.metadata!==void 0&&(s.metadata=e.metadata),{id:e.id||t.newMessageId(),role:Ha.getRole(e),createdAt:t.generateCreatedAt(n,e.createdAt),threadId:t.memoryInfo?.threadId,resourceId:t.memoryInfo?.resourceId,content:s}}static fromCoreMessage(e,t,n){const r="id"in e?e.id:t.newMessageId(),s=[],a=[],i=[],l=n==="response"&&Array.isArray(e.content)&&e.content.length===1&&e.content[0]&&e.content[0].type==="text"&&"text"in e.content[0]&&e.content[0].text;if(l&&n==="response"&&(e.content=l),typeof e.content=="string")s.push({type:"text",text:e.content});else if(Array.isArray(e.content))for(const f of e.content)switch(f.type){case"text":{const p=s.at(-1);e.role==="assistant"&&p&&p.type==="tool-invocation"&&s.push({type:"step-start"});const h={type:"text",text:f.text};f.providerOptions&&(h.providerMetadata=f.providerOptions),s.push(h);break}case"tool-call":{const p={type:"tool-invocation",toolInvocation:{state:"call",toolCallId:f.toolCallId,toolName:f.toolName,args:f.args}};f.providerOptions&&(p.providerMetadata=f.providerOptions),s.push(p);break}case"tool-result":{let p={};const h=e.content.find(y=>y.type==="tool-call"&&y.toolCallId===f.toolCallId);h&&h.type==="tool-call"&&(p=h.args),Object.keys(p).length===0&&t.dbMessages&&(p=XU(t.dbMessages,f.toolCallId));const m={state:"result",toolCallId:f.toolCallId,toolName:f.toolName,result:f.result??"",args:p},g={type:"tool-invocation",toolInvocation:m};f.providerOptions&&(g.providerMetadata=f.providerOptions),s.push(g),i.push(m)}break;case"reasoning":{const p={type:"reasoning",reasoning:"",details:[{type:"text",text:f.text,signature:f.signature}]};f.providerOptions&&(p.providerMetadata=f.providerOptions),s.push(p)}break;case"redacted-reasoning":{const p={type:"reasoning",reasoning:"",details:[{type:"redacted",data:f.data}]};f.providerOptions&&(p.providerMetadata=f.providerOptions),s.push(p)}break;case"image":{const p={type:"file",data:Qin(f.image),mimeType:f.mimeType};f.providerOptions&&(p.providerMetadata=f.providerOptions),s.push(p);break}case"file":{if(f.data instanceof URL){const p={type:"file",data:f.data.toString(),mimeType:f.mimeType};f.providerOptions&&(p.providerMetadata=f.providerOptions),f.filename&&(p.filename=f.filename),s.push(p)}else if(typeof f.data=="string"){const p=MP(f.data,f.mimeType);if(p.type==="url"||p.type==="dataUri"){const h={type:"file",data:f.data,mimeType:p.mimeType||"image/png"};f.providerOptions&&(h.providerMetadata=f.providerOptions),f.filename&&(h.filename=f.filename),s.push(h)}else try{const h={type:"file",mimeType:p.mimeType||"image/png",data:rO(f.data)};f.providerOptions&&(h.providerMetadata=f.providerOptions),f.filename&&(h.filename=f.filename),s.push(h)}catch(h){console.error(`Failed to convert binary data to base64 in CoreMessage file part: ${h}`,h)}}else try{const p={type:"file",mimeType:f.mimeType,data:rO(f.data)};f.providerOptions&&(p.providerMetadata=f.providerOptions),f.filename&&(p.filename=f.filename),s.push(p)}catch(p){console.error(`Failed to convert binary data to base64 in CoreMessage file part: ${p}`,p)}break}}const u={format:2,parts:rMe(s)};i.length&&(u.toolInvocations=i),typeof e.content=="string"&&(u.content=e.content),a.length&&(u.experimental_attachments=a),e.providerOptions?u.providerMetadata=e.providerOptions:"experimental_providerMetadata"in e&&e.experimental_providerMetadata&&(u.providerMetadata=e.experimental_providerMetadata),"metadata"in e&&e.metadata!==null&&e.metadata!==void 0&&(u.metadata=e.metadata);const d="metadata"in e&&e.metadata&&typeof e.metadata=="object"&&"createdAt"in e.metadata?e.metadata.createdAt:void 0;return{id:r,role:Ha.getRole(e),createdAt:t.generateCreatedAt(n,d),threadId:t.memoryInfo?.threadId,resourceId:t.memoryInfo?.resourceId,content:u}}},oon=/^[a-zA-Z0-9_-]+$/,sMe="unknown_tool";function Wc(e){return typeof e!="string"?sMe:oon.test(e)?e:sMe}function aMe(e){return e.some(n=>!(n.type==="text"&&n.text===""))?e.filter(n=>n.type==="text"?n.text!=="":!0):e}function Vye(e){const t=e.content.metadata?.signal;if(t&&typeof t=="object"&&!Array.isArray(t)){const n=t.type;return typeof n=="string"?n:e.type}return e.type}function lon(e){const t=e.content.metadata?.signal;if(t&&typeof t=="object"&&!Array.isArray(t)){const r=t.tagName;if(typeof r=="string")return r}const n=Vye(e);return n==="user"?"user":n==="reactive"?e.type:n}function con(e){return e==="user"||e==="user-message"}function uon(e){return typeof e.content.content=="string"?e.content.content:e.content.parts.find(t=>t.type==="text")?.text??""}function don(e){const t=e.content.metadata?.signal&&typeof e.content.metadata.signal=="object"?e.content.metadata.signal:{},n=t.metadata&&typeof t.metadata=="object"&&!Array.isArray(t.metadata)?t.metadata:{},r=t.attributes&&typeof t.attributes=="object"&&!Array.isArray(t.attributes)?t.attributes:{},s=Vye(e)??"signal",a=lon(e)??s;return{type:s==="user"?"data-user-message":"data-signal",data:{id:typeof t.id=="string"?t.id:e.id,type:s,tagName:a,contents:"contents"in t?t.contents:uon(e),createdAt:typeof t.createdAt=="string"?t.createdAt:e.createdAt.toISOString(),...typeof t.acceptedAt=="string"?{acceptedAt:t.acceptedAt}:{},...Object.keys(r).length?{attributes:r}:{},...Object.keys(n).length?{metadata:n}:{}}}}function iMe(e){return typeof e=="object"&&e&&"type"in e&&(e=e.type),typeof e!="string"?Wc(e):e==="dynamic-tool"?"dynamic-tool":e.startsWith("tool-")?Wc(e.slice(5)):Wc(e)}function T0(e,t){return t==null?e:{...e||{},mastra:{...(e||{}).mastra||{},createdAt:t}}}function Uf(e){const t=e?.mastra;if(!t||typeof t!="object")return;const n=t.createdAt;return typeof n=="number"?n:void 0}function TC(e,t,n,r=!0){if(!r)return n;const s=Km(e,"display",t);return gu(s)?s.transformed:n}function VY(e,t,n=!0){if(!n||!e||typeof e!="object")return e;const r=e,s=r.metadata??r.providerMetadata,a=Km(s,"display",t),i=Km(s,"display","input-available"),l=t==="approval"?gu(a)?a.transformed:gu(i)?i.transformed:void 0:gu(i)?i.transformed:gu(a)?a.transformed:void 0,c=t==="suspend"&&gu(a)?a.transformed:void 0;return{...r,...l!==void 0?{args:l}:{},...c!==void 0?{suspendPayload:c}:{}}}var Nv=class{static toUIMessage(e,t){const n=e.role==="signal"?Vye(e):void 0,r=con(n),s=t?.transformToolPayloads??!0,a=[],i={...e.content.metadata||{}};if(e.role==="signal"&&!r&&a.push(don(e)),e.createdAt&&(i.createdAt=e.createdAt),e.threadId&&(i.threadId=e.threadId),e.resourceId&&(i.resourceId=e.resourceId),e.content.providerMetadata&&(i.providerMetadata=e.content.providerMetadata),e.role==="signal"&&!r)return{id:e.id,role:"system",metadata:i,parts:a};const l=e.content.parts?.some(y=>y.type==="tool-invocation");if(e.content.toolInvocations&&!l)for(const y of e.content.toolInvocations)y.state==="result"?a.push({type:`tool-${y.toolName}`,toolCallId:y.toolCallId,state:"output-available",input:y.args,output:y.result}):a.push({type:`tool-${y.toolName}`,toolCallId:y.toolCallId,state:y.state==="call"?"input-available":"input-streaming",input:y.args});const c=e.content.parts?.some(y=>y.type==="reasoning"),u=e.content.parts?.some(y=>y.type==="file");e.content.reasoning&&!c&&a.push({type:"reasoning",text:e.content.reasoning});const d=new Set;if(e.content.experimental_attachments&&!u)for(const y of e.content.experimental_attachments)d.add(y.url),a.push({type:"file",url:y.url,mediaType:y.contentType||"unknown"});let f=!1;if(e.content.parts)for(const y of e.content.parts){if(y.type==="tool-invocation"&&y.toolInvocation){const b=y.toolInvocation;b.state==="result"?a.push({type:`tool-${b.toolName}`,toolCallId:b.toolCallId,input:TC(y.providerMetadata,"input-available",b.args,s),output:TC(y.providerMetadata,"output-available",TC(y.providerMetadata,"error",b.result,s),s),state:"output-available",callProviderMetadata:T0(y.providerMetadata,y.createdAt),providerExecuted:y.providerExecuted}):b.state==="output-error"?a.push({type:`tool-${b.toolName}`,toolCallId:b.toolCallId,input:TC(y.providerMetadata,"input-available",b.args,s),errorText:TC(y.providerMetadata,"error",b.errorText||"",s),state:"output-error",callProviderMetadata:T0(y.providerMetadata,y.createdAt),providerExecuted:y.providerExecuted}):a.push({type:`tool-${b.toolName}`,toolCallId:b.toolCallId,input:TC(y.providerMetadata,"input-available",b.args,s),state:"input-available",callProviderMetadata:T0(y.providerMetadata,y.createdAt),providerExecuted:y.providerExecuted});continue}if(y.type==="reasoning"){const b=y.reasoning||(y.details?.reduce((w,S)=>S.type==="text"&&S.text?w+S.text:w,"")??"");if(b||y.details?.length){const w={type:"reasoning",text:b||"",state:"done"};w.providerMetadata=T0(y.providerMetadata,y.createdAt),a.push(w)}continue}if(!(y.type==="tool-invocation"||y.type.startsWith("tool-")))if(y.type==="file"){if(typeof y.data=="string"&&d.has(y.data))continue;const b=typeof y.data=="string"?MP(y.data,y.mimeType):{type:"raw",mimeType:y.mimeType};if(b.type==="url"&&typeof y.data=="string"){const w={type:"file",url:y.data,mediaType:b.mimeType||"image/png"};w.providerMetadata=T0(y.providerMetadata,y.createdAt),a.push(w)}else{let w,S=y.mimeType;if(typeof y.data=="string"){const E=XF(y.data);E.isDataUri?(w=E.base64Content,E.mimeType&&(S=S||E.mimeType)):w=y.data}else w=y.data;const k=S||"image/png";let _;typeof w=="string"&&w.startsWith("data:")?_=w:_=Uye(w,k);const C={type:"file",url:_,mediaType:k};C.providerMetadata=T0(y.providerMetadata,y.createdAt),a.push(C)}}else if(y.type==="source"){const b={type:"source-url",url:y.source.url,sourceId:y.source.id,title:y.source.title};b.providerMetadata=T0(y.providerMetadata,y.createdAt),a.push(b)}else{if(y.type==="source-document")continue;if(y.type==="text"){const b={type:"text",text:y.text};b.providerMetadata=T0(y.providerMetadata,y.createdAt),a.push(b),f=!0}else y.type==="data-tool-call-suspended"||y.type==="data-tool-call-approval"?a.push({...y,data:VY(y.data,y.type==="data-tool-call-suspended"?"suspend":"approval",s)}):(a.push(y),f=!0)}}e.content.content&&!f&&a.push({type:"text",text:e.content.content});const p=new Set(a.filter(y=>y.type==="data-tool-call-suspended"||y.type==="data-tool-call-approval").map(y=>{const b=y.data;return typeof b?.toolCallId=="string"?b.toolCallId:void 0}).filter(y=>typeof y=="string")),h=(y,b)=>{const w=a.findIndex(S=>S.type.startsWith("tool-")&&S.toolCallId===y);if(w===-1){a.push(b);return}a.splice(w+1,0,b)},m=i.suspendedTools;if(m&&typeof m=="object")for(const y of Object.values(m)){if(!y||typeof y!="object")continue;const b="toolCallId"in y?y.toolCallId:void 0;typeof b!="string"||p.has(b)||(h(b,{type:"data-tool-call-suspended",data:VY(y,"suspend",s)}),p.add(b))}const g=i.pendingToolApprovals;if(g&&typeof g=="object")for(const y of Object.values(g)){if(!y||typeof y!="object")continue;const b="toolCallId"in y?y.toolCallId:void 0;typeof b!="string"||p.has(b)||(h(b,{type:"data-tool-call-approval",data:VY(y,"approval",s)}),p.add(b))}return{id:e.id,role:e.role==="signal"?r?"user":"system":e.role,metadata:i,parts:a}}static fromUIMessage(e){const{parts:t,metadata:n}=e,r=n||{},s=r.createdAt,a=s?typeof s=="string"?new Date(s):s instanceof Date?s:new Date:new Date,i=r.threadId,l=r.resourceId,c={...r};delete c.createdAt,delete c.threadId,delete c.resourceId;const u=t.filter(S=>Sp(S)),d=t.filter(S=>S.type==="reasoning"),f=t.filter(S=>S.type==="file"),p=t.filter(S=>S.type==="text");let h;u.length>0&&(h=u.map(S=>{const k=iMe(S);return S.state==="output-available"?{args:S.input,result:typeof S.output=="object"&&S.output&&"value"in S.output?S.output.value:S.output,toolCallId:S.toolCallId,toolName:k,state:"result"}:{args:S.input,toolCallId:S.toolCallId,toolName:k,state:"call"}}));let m;d.length>0&&(m=d.map(S=>S.text).join(`
|
|
191
|
+
`)}):a=Vin(e,t),{role:"user",content:a,...e.providerOptions?{providerOptions:e.providerOptions}:{}}}function Win(e,t){return{type:e.type==="user"?"data-user-message":"data-signal",data:{id:e.id,type:e.type,tagName:e.tagName,contents:dlt(t),createdAt:e.createdAt.toISOString(),...e.acceptedAt?{acceptedAt:e.acceptedAt.toISOString()}:{},...e.attributes?{attributes:e.attributes}:{},...e.metadata?{metadata:e.metadata}:{},...e.providerOptions?{providerOptions:e.providerOptions}:{}},transient:!0}}function Zin(e,t,n){const r=t.length>0?t.map(s=>s.type==="file"?{type:"file",data:s.data,mimeType:s.mediaType,...s.filename?{filename:s.filename}:{},...s.providerOptions?{providerMetadata:s.providerOptions}:{}}:{type:"text",text:s.text,...s.providerOptions?{providerMetadata:s.providerOptions}:{}}):[{type:"text",text:""}];return{id:e.id,role:"signal",createdAt:e.createdAt,threadId:n?.threadId,resourceId:n?.resourceId,type:e.tagName,content:{format:2,parts:r,...e.providerOptions?{providerMetadata:e.providerOptions}:{},metadata:{signal:{id:e.id,type:e.type,tagName:e.tagName,createdAt:e.createdAt.toISOString(),...e.acceptedAt?{acceptedAt:e.acceptedAt.toISOString()}:{},...e.attributes?{attributes:e.attributes}:{},...e.metadata?{metadata:e.metadata}:{}}}}}}function eMe(e){return!e||typeof e!="object"||Array.isArray(e)?!1:e.__isCreatedSignal===!0}function flt(e){const t=Min(e),n=Bin(t.contents);return{...t,__isCreatedSignal:!0,toDBMessage:r=>Zin(t,n,r),toLLMMessage:()=>Hin(t,n),toDataPart:()=>Win(t,n)}}function Gin(e){const t=e.content.metadata?.signal,n=t&&typeof t=="object"&&!Array.isArray(t)?t:void 0,s=typeof n?.type=="string"?n.type:e.type??"user-message",a=typeof n?.tagName=="string"?n.tagName:void 0,i=n&&"contents"in n?n.contents:void 0,l=zin(i),c=dlt(Uin(e.content.parts)),u=l??c,d=e.content.providerMetadata,f={id:typeof n?.id=="string"?n.id:e.id,createdAt:typeof n?.createdAt=="string"?n.createdAt:e.createdAt,acceptedAt:typeof n?.acceptedAt=="string"?n.acceptedAt:void 0,attributes:n?.attributes&&typeof n.attributes=="object"&&!Array.isArray(n.attributes)?n.attributes:void 0,metadata:n?.metadata&&typeof n.metadata=="object"&&!Array.isArray(n.metadata)?n.metadata:void 0,providerOptions:d&&typeof d=="object"&&!Array.isArray(d)?d:void 0};return flt({...f,type:s,tagName:a,contents:u})}var Ha=class cl{static isMastraDBMessage(t){return!!("content"in t&&t.content&&!Array.isArray(t.content)&&typeof t.content!="string"&&"format"in t.content&&t.content.format===2)}static isMastraMessageV1(t){return!cl.isMastraDBMessage(t)&&("threadId"in t||"resourceId"in t)}static isMastraMessage(t){return cl.isMastraDBMessage(t)||cl.isMastraMessageV1(t)}static isAIV4UIMessage(t){return!cl.isMastraMessage(t)&&!cl.isAIV4CoreMessage(t)&&"parts"in t&&!cl.hasAIV5UIMessageCharacteristics(t)}static isAIV6UIMessage(t){return!cl.isMastraMessage(t)&&!cl.isAIV4CoreMessage(t)&&"parts"in t&&cl.hasAIV6UIMessageCharacteristics(t)}static isAIV5UIMessage(t){return!cl.isMastraMessage(t)&&!cl.isAIV6UIMessage(t)&&!cl.isAIV5CoreMessage(t)&&"parts"in t&&cl.hasAIV5UIMessageCharacteristics(t)}static isAIV4CoreMessage(t){return!cl.isMastraMessage(t)&&!("parts"in t)&&"content"in t&&!cl.hasAIV5CoreMessageCharacteristics(t)}static isAIV6CoreMessage(t){return!cl.isMastraMessage(t)&&!("parts"in t)&&"content"in t&&cl.hasAIV6CoreMessageCharacteristics(t)}static isAIV5CoreMessage(t){return!cl.isMastraMessage(t)&&!cl.isAIV6CoreMessage(t)&&!("parts"in t)&&"content"in t&&cl.hasAIV5CoreMessageCharacteristics(t)}static hasAIV6UIMessageCharacteristics(t){if(!("parts"in t)||!t.parts)return!1;for(const n of t.parts)if(n.type==="source-document"||n.type==="dynamic-tool"||"toolCallId"in n&&"state"in n&&(n.state==="approval-requested"||n.state==="approval-responded"||n.state==="output-denied"))return!0;return!1}static hasAIV5UIMessageCharacteristics(t){if("toolInvocations"in t||"reasoning"in t||"experimental_attachments"in t||"data"in t||"annotations"in t||!t.parts)return!1;for(const n of t.parts){if("metadata"in n)return!0;if("toolInvocation"in n)return!1;if("toolCallId"in n)return!0;if(n.type==="source")return!1;if(n.type==="source-url")return!0;if(n.type==="reasoning"){if("state"in n||"text"in n)return!0;if("reasoning"in n||"details"in n)return!1}if(n.type==="file"&&"mediaType"in n)return!0}return!1}static hasAIV6CoreMessageCharacteristics(t){return"parts"in t||typeof t.content=="string"?!1:t.content.some(n=>n.type==="tool-approval-request"||n.type==="tool-approval-response")}static hasAIV5CoreMessageCharacteristics(t){if("experimental_providerMetadata"in t)return!1;if(typeof t.content=="string")return!0;for(const n of t.content){if(n.type==="tool-result"&&"output"in n||n.type==="tool-call"&&"input"in n)return!0;if(n.type==="tool-result"&&"result"in n||n.type==="tool-call"&&"args"in n)return!1;if("mediaType"in n)return!0;if("mimeType"in n||"experimental_providerMetadata"in n||n.type==="reasoning"&&"signature"in n||n.type==="redacted-reasoning")return!1}return!0}static getRole(t){if(t.role==="assistant"||t.role==="tool")return"assistant";if(t.role==="user")return"user";if(t.role==="system")return"system";throw new Error(`BUG: add handling for message role ${t.role} in message ${JSON.stringify(t,null,2)}`)}};function XF(e){if(!e.startsWith("data:"))return{isDataUri:!1,base64Content:e};const t=e.indexOf(",");if(t===-1)return{isDataUri:!0,base64Content:e};const n=e.substring(5,t),r=e.substring(t+1),s=n.indexOf(";");return{isDataUri:!0,mimeType:(s!==-1?n.substring(0,s):n)||void 0,base64Content:r}}function Uye(e,t="application/octet-stream"){return e.startsWith("data:")?e:`data:${t};base64,${e}`}function Qin(e,t){return typeof e=="string"?e:e instanceof URL?e.toString():e instanceof Uint8Array||e instanceof ArrayBuffer||globalThis.Buffer&&Buffer.isBuffer(e)?rO(e):String(e)}function tMe(e){return e instanceof URL?e.toString():typeof e=="string"?e.length:e instanceof Uint8Array||e instanceof ArrayBuffer?e.byteLength:e}function Yin(e){try{return new URL(e),!0}catch{if(e.startsWith("//"))try{return new URL(`https:${e}`),!0}catch{return!1}return!1}}function MP(e,t){const n=XF(e),r=n.isDataUri&&n.mimeType?n.mimeType:t;return n.isDataUri?{type:"dataUri",mimeType:r,data:e}:Yin(e)?{type:"url",mimeType:r,data:e}:{type:"raw",mimeType:r,data:e}}var Xin=["openai","azure"];function plt(e,t){return`${e}:${t}`}function Kin(e){return hlt(e)[0]}function nMe(e){const t=Kin(e);return t?plt(t.provider,t.itemId):void 0}function hlt(e){if(!e)return[];const n=e.azure?.itemId,s=e.openai?.itemId;return typeof n=="string"&&n===s?[{provider:"azure",itemId:n}]:Xin.flatMap(a=>{const l=e[a]?.itemId;return typeof l=="string"?[{provider:a,itemId:l}]:[]})}function Jin(e){return hlt(e).map(({provider:t,itemId:n})=>plt(t,n))}function cL(e,t){const n=[...e],r=n.findIndex(s=>s.role!=="system");return r===-1?n.length>0&&t?.warn("No user or assistant messages in the request. Some providers (e.g. Gemini) require at least one user message to generate a response."):n[r]?.role==="assistant"&&n.splice(r,0,{role:"user",content:"."}),n}function eon(e,t){return e.map(n=>non(n,t))}function ton(e){const t=e.map(r=>Array.isArray(r.content)?[...r.content]:null);for(let r=0;r<e.length;r++){const s=e[r];if(s.role==="assistant"&&Array.isArray(s.content)){const a=new Set,i=new Set;for(const d of s.content)d.type==="tool-call"?a.add(d.toolCallId):d.type==="tool-result"&&i.add(d.toolCallId);const l=e[r+1],c=new Set;if(l&&l.role==="tool"&&Array.isArray(l.content))for(const d of l.content)d.type==="tool-result"&&c.add(d.toolCallId);const u=new Set([...a].filter(d=>i.has(d)||c.has(d)));t[r]=t[r].filter(d=>{if(d.type!=="tool-call")return!0;const f=d;return f.providerExecuted===!0||u.has(f.toolCallId)}),l&&l.role==="tool"&&Array.isArray(l.content)&&(t[r+1]=t[r+1].filter(d=>d.type!=="tool-result"||u.has(d.toolCallId)))}else if(s.role==="tool"&&Array.isArray(s.content)){const a=e[r-1];(!a||a.role!=="assistant"||!Array.isArray(a.content))&&(t[r]=t[r].filter(i=>i.type!=="tool-result"))}}const n=[];for(let r=0;r<e.length;r++){const s=e[r],a=t[r];if(a==null){n.push(s);continue}if(a.length!==0){if(Array.isArray(s.content)&&a.length===s.content.length){n.push(s);continue}n.push({...s,content:a})}}return n}function non(e,t){return e.role!=="tool"||!Array.isArray(e.content)?e:{...e,content:e.content.map(n=>n.type==="tool-result"?{...n,input:XU(t,n.toolCallId)}:n)}}function XU(e,t){for(let n=e.length-1;n>=0;n--){const r=e[n];if(!(!r||r.role!=="assistant")){if(r.content.parts){const s=r.content.parts.find(a=>a.type==="tool-invocation"&&a.toolInvocation.toolCallId===t);if(s&&s.type==="tool-invocation"){const a=s.toolInvocation.args||{};if(typeof a=="object"&&Object.keys(a).length>0)return a}}if(r.content.toolInvocations){const s=r.content.toolInvocations.find(a=>a.toolCallId===t);if(s){const a=s.args||{};if(typeof a=="object"&&Object.keys(a).length>0)return a}}}}return{}}function rj(e,t,n,r=!0){if(!r)return n;const s=Km(e,"display",t);return gu(s)?s.transformed:n}function ron(e,t,n){return{...e,args:rj(t,"input-available",e.args,n),...e.state==="result"?{result:rj(t,"output-available",rj(t,"error",e.result,n),n)}:{}}}function rMe(e){return e.some(n=>!(n.type==="text"&&n.text===""))?e.filter(n=>n.type==="text"?n.text!=="":!0):e}function qye(e){const t=e.content.metadata?.signal;if(t&&typeof t=="object"&&!Array.isArray(t)){const n=t.type;return typeof n=="string"?n:e.type}return e.type}function son(e){const t=e.content.metadata?.signal;if(t&&typeof t=="object"&&!Array.isArray(t)){const r=t.tagName;if(typeof r=="string")return r}const n=qye(e);return n==="user"?"user":n==="reactive"?e.type:n}function aon(e){return e==="user"||e==="user-message"}function ion(e,t){const n=e.content.metadata?.signal&&typeof e.content.metadata.signal=="object"?e.content.metadata.signal:{},r=n.metadata&&typeof n.metadata=="object"&&!Array.isArray(n.metadata)?n.metadata:{},s=n.attributes&&typeof n.attributes=="object"&&!Array.isArray(n.attributes)?n.attributes:{},a=qye(e)??"signal",i=son(e)??a;return{type:a==="user"?"data-user-message":"data-signal",data:{id:typeof n.id=="string"?n.id:e.id,type:a,tagName:i,contents:"contents"in n?n.contents:t,createdAt:typeof n.createdAt=="string"?n.createdAt:e.createdAt.toISOString(),...typeof n.acceptedAt=="string"?{acceptedAt:n.acceptedAt}:{},...Object.keys(s).length?{attributes:s}:{},...Object.keys(r).length?{metadata:r}:{}}}}var _w=class{static toUIMessage(e,t){const n=t?.transformToolPayloads??!0,r=e.content.experimental_attachments?[...e.content.experimental_attachments]:[],s=typeof e.content.content=="string"&&e.content.content!==""?e.content.content:(e.content.parts??[]).reduce((f,p)=>p.type==="text"?p.text:f,""),a=[],i=e.content.parts??[];if(i.length)for(const f of i)if(f.type==="file"){let p;typeof f.data=="string"&&MP(f.data,f.mimeType).type==="raw"?p=Uye(f.data,f.mimeType||"application/octet-stream"):p=f.data,r.push({contentType:f.mimeType,url:p})}else{if(f.type==="tool-invocation"&&(f.toolInvocation.state==="call"||f.toolInvocation.state==="partial-call"))continue;if(f.type==="tool-invocation"){const p={...f.toolInvocation,args:rj(f.providerMetadata,"input-available",f.toolInvocation.args,n),...f.toolInvocation.state==="result"?{result:rj(f.providerMetadata,"output-available",rj(f.providerMetadata,"error",f.toolInvocation.result,n),n)}:{}};let h=-1,m=-1;for(const g of i)if(g.type==="step-start"&&h++,g.type==="tool-invocation"&&g.toolInvocation.toolCallId===f.toolInvocation.toolCallId){m=h;break}if(m>=0){const g={step:m,...p};a.push({type:"tool-invocation",toolInvocation:g})}else a.push({type:"tool-invocation",toolInvocation:p})}else a.push(f)}a.length===0&&r.length>0&&a.push({type:"text",text:""});const l=e.role==="signal"?qye(e):void 0,c=aon(l),u=e.role==="signal"&&!c?[ion(e,e.content.content||s)]:a;if(e.role==="user"){const f={id:e.id,role:e.role,content:e.content.content||s,createdAt:e.createdAt,parts:u,experimental_attachments:r};return e.content.metadata&&(f.metadata=e.content.metadata),f}else if(e.role==="assistant"){const f=Array.isArray(e.content.content)&&e.content.content.length===1&&e.content.content[0].type==="text",p={id:e.id,role:e.role,content:f?s:e.content.content||s,createdAt:e.createdAt,parts:u,reasoning:void 0,toolInvocations:"toolInvocations"in e.content?e.content.toolInvocations?.filter(h=>h.state==="result").map(h=>{const m=e.content.parts?.find(g=>g.type==="tool-invocation"&&g.toolInvocation.toolCallId===h.toolCallId)?.providerMetadata;return ron(h,m,n)}):void 0};return e.content.metadata&&(p.metadata=e.content.metadata),p}const d={id:e.id,role:e.role==="signal"?c?"user":"system":e.role,content:e.role==="signal"&&!c?"":e.content.content||s,createdAt:e.createdAt,parts:u,experimental_attachments:r};return e.content.metadata&&(d.metadata=e.content.metadata),d}static systemToV4Core(e){if(e.role!=="system"||!e.content.content)throw new Kk({id:"INVALID_SYSTEM_MESSAGE_FORMAT",domain:qw.AGENT,category:Vw.USER,text:"Invalid system message format. System messages must include 'role' and 'content' properties. The content should be a string.",details:{receivedMessage:JSON.stringify(e,null,2)}});const t={role:"system",content:e.content.content};return e.content.providerMetadata&&(t.experimental_providerMetadata=e.content.providerMetadata),t}static fromUIMessage(e,t,n){const s={format:2,parts:e.parts?rMe(e.parts):[]};return e.toolInvocations&&(s.toolInvocations=e.toolInvocations),e.reasoning&&(s.reasoning=e.reasoning),e.annotations&&(s.annotations=e.annotations),e.experimental_attachments&&(s.experimental_attachments=e.experimental_attachments),"metadata"in e&&e.metadata!==null&&e.metadata!==void 0&&(s.metadata=e.metadata),{id:e.id||t.newMessageId(),role:Ha.getRole(e),createdAt:t.generateCreatedAt(n,e.createdAt),threadId:t.memoryInfo?.threadId,resourceId:t.memoryInfo?.resourceId,content:s}}static fromCoreMessage(e,t,n){const r="id"in e?e.id:t.newMessageId(),s=[],a=[],i=[],l=n==="response"&&Array.isArray(e.content)&&e.content.length===1&&e.content[0]&&e.content[0].type==="text"&&"text"in e.content[0]&&e.content[0].text;if(l&&n==="response"&&(e.content=l),typeof e.content=="string")s.push({type:"text",text:e.content});else if(Array.isArray(e.content))for(const f of e.content)switch(f.type){case"text":{const p=s.at(-1);e.role==="assistant"&&p&&p.type==="tool-invocation"&&s.push({type:"step-start"});const h={type:"text",text:f.text};f.providerOptions&&(h.providerMetadata=f.providerOptions),s.push(h);break}case"tool-call":{const p={type:"tool-invocation",toolInvocation:{state:"call",toolCallId:f.toolCallId,toolName:f.toolName,args:f.args}};f.providerOptions&&(p.providerMetadata=f.providerOptions),s.push(p);break}case"tool-result":{let p={};const h=e.content.find(y=>y.type==="tool-call"&&y.toolCallId===f.toolCallId);h&&h.type==="tool-call"&&(p=h.args),Object.keys(p).length===0&&t.dbMessages&&(p=XU(t.dbMessages,f.toolCallId));const m={state:"result",toolCallId:f.toolCallId,toolName:f.toolName,result:f.result??"",args:p},g={type:"tool-invocation",toolInvocation:m};f.providerOptions&&(g.providerMetadata=f.providerOptions),s.push(g),i.push(m)}break;case"reasoning":{const p={type:"reasoning",reasoning:f.text,details:[{type:"text",text:f.text,signature:f.signature}]};f.providerOptions&&(p.providerMetadata=f.providerOptions),s.push(p)}break;case"redacted-reasoning":{const p={type:"reasoning",reasoning:"",details:[{type:"redacted",data:f.data}]};f.providerOptions&&(p.providerMetadata=f.providerOptions),s.push(p)}break;case"image":{const p={type:"file",data:Qin(f.image),mimeType:f.mimeType};f.providerOptions&&(p.providerMetadata=f.providerOptions),s.push(p);break}case"file":{if(f.data instanceof URL){const p={type:"file",data:f.data.toString(),mimeType:f.mimeType};f.providerOptions&&(p.providerMetadata=f.providerOptions),f.filename&&(p.filename=f.filename),s.push(p)}else if(typeof f.data=="string"){const p=MP(f.data,f.mimeType);if(p.type==="url"||p.type==="dataUri"){const h={type:"file",data:f.data,mimeType:p.mimeType||"image/png"};f.providerOptions&&(h.providerMetadata=f.providerOptions),f.filename&&(h.filename=f.filename),s.push(h)}else try{const h={type:"file",mimeType:p.mimeType||"image/png",data:rO(f.data)};f.providerOptions&&(h.providerMetadata=f.providerOptions),f.filename&&(h.filename=f.filename),s.push(h)}catch(h){console.error(`Failed to convert binary data to base64 in CoreMessage file part: ${h}`,h)}}else try{const p={type:"file",mimeType:f.mimeType,data:rO(f.data)};f.providerOptions&&(p.providerMetadata=f.providerOptions),f.filename&&(p.filename=f.filename),s.push(p)}catch(p){console.error(`Failed to convert binary data to base64 in CoreMessage file part: ${p}`,p)}break}}const u={format:2,parts:rMe(s)};i.length&&(u.toolInvocations=i),typeof e.content=="string"&&(u.content=e.content),a.length&&(u.experimental_attachments=a),e.providerOptions?u.providerMetadata=e.providerOptions:"experimental_providerMetadata"in e&&e.experimental_providerMetadata&&(u.providerMetadata=e.experimental_providerMetadata),"metadata"in e&&e.metadata!==null&&e.metadata!==void 0&&(u.metadata=e.metadata);const d="metadata"in e&&e.metadata&&typeof e.metadata=="object"&&"createdAt"in e.metadata?e.metadata.createdAt:void 0;return{id:r,role:Ha.getRole(e),createdAt:t.generateCreatedAt(n,d),threadId:t.memoryInfo?.threadId,resourceId:t.memoryInfo?.resourceId,content:u}}},oon=/^[a-zA-Z0-9_-]+$/,sMe="unknown_tool";function Wc(e){return typeof e!="string"?sMe:oon.test(e)?e:sMe}function aMe(e){return e.some(n=>!(n.type==="text"&&n.text===""))?e.filter(n=>n.type==="text"?n.text!=="":!0):e}function Vye(e){const t=e.content.metadata?.signal;if(t&&typeof t=="object"&&!Array.isArray(t)){const n=t.type;return typeof n=="string"?n:e.type}return e.type}function lon(e){const t=e.content.metadata?.signal;if(t&&typeof t=="object"&&!Array.isArray(t)){const r=t.tagName;if(typeof r=="string")return r}const n=Vye(e);return n==="user"?"user":n==="reactive"?e.type:n}function con(e){return e==="user"||e==="user-message"}function uon(e){return typeof e.content.content=="string"?e.content.content:e.content.parts.find(t=>t.type==="text")?.text??""}function don(e){const t=e.content.metadata?.signal&&typeof e.content.metadata.signal=="object"?e.content.metadata.signal:{},n=t.metadata&&typeof t.metadata=="object"&&!Array.isArray(t.metadata)?t.metadata:{},r=t.attributes&&typeof t.attributes=="object"&&!Array.isArray(t.attributes)?t.attributes:{},s=Vye(e)??"signal",a=lon(e)??s;return{type:s==="user"?"data-user-message":"data-signal",data:{id:typeof t.id=="string"?t.id:e.id,type:s,tagName:a,contents:"contents"in t?t.contents:uon(e),createdAt:typeof t.createdAt=="string"?t.createdAt:e.createdAt.toISOString(),...typeof t.acceptedAt=="string"?{acceptedAt:t.acceptedAt}:{},...Object.keys(r).length?{attributes:r}:{},...Object.keys(n).length?{metadata:n}:{}}}}function iMe(e){return typeof e=="object"&&e&&"type"in e&&(e=e.type),typeof e!="string"?Wc(e):e==="dynamic-tool"?"dynamic-tool":e.startsWith("tool-")?Wc(e.slice(5)):Wc(e)}function T0(e,t){return t==null?e:{...e||{},mastra:{...(e||{}).mastra||{},createdAt:t}}}function Uf(e){const t=e?.mastra;if(!t||typeof t!="object")return;const n=t.createdAt;return typeof n=="number"?n:void 0}function TC(e,t,n,r=!0){if(!r)return n;const s=Km(e,"display",t);return gu(s)?s.transformed:n}function VY(e,t,n=!0){if(!n||!e||typeof e!="object")return e;const r=e,s=r.metadata??r.providerMetadata,a=Km(s,"display",t),i=Km(s,"display","input-available"),l=t==="approval"?gu(a)?a.transformed:gu(i)?i.transformed:void 0:gu(i)?i.transformed:gu(a)?a.transformed:void 0,c=t==="suspend"&&gu(a)?a.transformed:void 0;return{...r,...l!==void 0?{args:l}:{},...c!==void 0?{suspendPayload:c}:{}}}var Nv=class{static toUIMessage(e,t){const n=e.role==="signal"?Vye(e):void 0,r=con(n),s=t?.transformToolPayloads??!0,a=[],i={...e.content.metadata||{}};if(e.role==="signal"&&!r&&a.push(don(e)),e.createdAt&&(i.createdAt=e.createdAt),e.threadId&&(i.threadId=e.threadId),e.resourceId&&(i.resourceId=e.resourceId),e.content.providerMetadata&&(i.providerMetadata=e.content.providerMetadata),e.role==="signal"&&!r)return{id:e.id,role:"system",metadata:i,parts:a};const l=e.content.parts?.some(y=>y.type==="tool-invocation");if(e.content.toolInvocations&&!l)for(const y of e.content.toolInvocations)y.state==="result"?a.push({type:`tool-${y.toolName}`,toolCallId:y.toolCallId,state:"output-available",input:y.args,output:y.result}):a.push({type:`tool-${y.toolName}`,toolCallId:y.toolCallId,state:y.state==="call"?"input-available":"input-streaming",input:y.args});const c=e.content.parts?.some(y=>y.type==="reasoning"),u=e.content.parts?.some(y=>y.type==="file");e.content.reasoning&&!c&&a.push({type:"reasoning",text:e.content.reasoning});const d=new Set;if(e.content.experimental_attachments&&!u)for(const y of e.content.experimental_attachments)d.add(y.url),a.push({type:"file",url:y.url,mediaType:y.contentType||"unknown"});let f=!1;if(e.content.parts)for(const y of e.content.parts){if(y.type==="tool-invocation"&&y.toolInvocation){const b=y.toolInvocation;b.state==="result"?a.push({type:`tool-${b.toolName}`,toolCallId:b.toolCallId,input:TC(y.providerMetadata,"input-available",b.args,s),output:TC(y.providerMetadata,"output-available",TC(y.providerMetadata,"error",b.result,s),s),state:"output-available",callProviderMetadata:T0(y.providerMetadata,y.createdAt),providerExecuted:y.providerExecuted}):b.state==="output-error"?a.push({type:`tool-${b.toolName}`,toolCallId:b.toolCallId,input:TC(y.providerMetadata,"input-available",b.args,s),errorText:TC(y.providerMetadata,"error",b.errorText||"",s),state:"output-error",callProviderMetadata:T0(y.providerMetadata,y.createdAt),providerExecuted:y.providerExecuted}):a.push({type:`tool-${b.toolName}`,toolCallId:b.toolCallId,input:TC(y.providerMetadata,"input-available",b.args,s),state:"input-available",callProviderMetadata:T0(y.providerMetadata,y.createdAt),providerExecuted:y.providerExecuted});continue}if(y.type==="reasoning"){const b=y.reasoning||(y.details?.reduce((w,S)=>S.type==="text"&&S.text?w+S.text:w,"")??"");if(b||y.details?.length){const w={type:"reasoning",text:b||"",state:"done"};w.providerMetadata=T0(y.providerMetadata,y.createdAt),a.push(w)}continue}if(!(y.type==="tool-invocation"||y.type.startsWith("tool-")))if(y.type==="file"){if(typeof y.data=="string"&&d.has(y.data))continue;const b=typeof y.data=="string"?MP(y.data,y.mimeType):{type:"raw",mimeType:y.mimeType};if(b.type==="url"&&typeof y.data=="string"){const w={type:"file",url:y.data,mediaType:b.mimeType||"image/png"};w.providerMetadata=T0(y.providerMetadata,y.createdAt),a.push(w)}else{let w,S=y.mimeType;if(typeof y.data=="string"){const E=XF(y.data);E.isDataUri?(w=E.base64Content,E.mimeType&&(S=S||E.mimeType)):w=y.data}else w=y.data;const k=S||"image/png";let _;typeof w=="string"&&w.startsWith("data:")?_=w:_=Uye(w,k);const C={type:"file",url:_,mediaType:k};C.providerMetadata=T0(y.providerMetadata,y.createdAt),a.push(C)}}else if(y.type==="source"){const b={type:"source-url",url:y.source.url,sourceId:y.source.id,title:y.source.title};b.providerMetadata=T0(y.providerMetadata,y.createdAt),a.push(b)}else{if(y.type==="source-document")continue;if(y.type==="text"){const b={type:"text",text:y.text};b.providerMetadata=T0(y.providerMetadata,y.createdAt),a.push(b),f=!0}else y.type==="data-tool-call-suspended"||y.type==="data-tool-call-approval"?a.push({...y,data:VY(y.data,y.type==="data-tool-call-suspended"?"suspend":"approval",s)}):(a.push(y),f=!0)}}e.content.content&&!f&&a.push({type:"text",text:e.content.content});const p=new Set(a.filter(y=>y.type==="data-tool-call-suspended"||y.type==="data-tool-call-approval").map(y=>{const b=y.data;return typeof b?.toolCallId=="string"?b.toolCallId:void 0}).filter(y=>typeof y=="string")),h=(y,b)=>{const w=a.findIndex(S=>S.type.startsWith("tool-")&&S.toolCallId===y);if(w===-1){a.push(b);return}a.splice(w+1,0,b)},m=i.suspendedTools;if(m&&typeof m=="object")for(const y of Object.values(m)){if(!y||typeof y!="object")continue;const b="toolCallId"in y?y.toolCallId:void 0;typeof b!="string"||p.has(b)||(h(b,{type:"data-tool-call-suspended",data:VY(y,"suspend",s)}),p.add(b))}const g=i.pendingToolApprovals;if(g&&typeof g=="object")for(const y of Object.values(g)){if(!y||typeof y!="object")continue;const b="toolCallId"in y?y.toolCallId:void 0;typeof b!="string"||p.has(b)||(h(b,{type:"data-tool-call-approval",data:VY(y,"approval",s)}),p.add(b))}return{id:e.id,role:e.role==="signal"?r?"user":"system":e.role,metadata:i,parts:a}}static fromUIMessage(e){const{parts:t,metadata:n}=e,r=n||{},s=r.createdAt,a=s?typeof s=="string"?new Date(s):s instanceof Date?s:new Date:new Date,i=r.threadId,l=r.resourceId,c={...r};delete c.createdAt,delete c.threadId,delete c.resourceId;const u=t.filter(S=>Sp(S)),d=t.filter(S=>S.type==="reasoning"),f=t.filter(S=>S.type==="file"),p=t.filter(S=>S.type==="text");let h;u.length>0&&(h=u.map(S=>{const k=iMe(S);return S.state==="output-available"?{args:S.input,result:typeof S.output=="object"&&S.output&&"value"in S.output?S.output.value:S.output,toolCallId:S.toolCallId,toolName:k,state:"result"}:{args:S.input,toolCallId:S.toolCallId,toolName:k,state:"call"}}));let m;d.length>0&&(m=d.map(S=>S.text).join(`
|
|
192
192
|
`));let g;f.length>0&&(g=f.map(S=>({url:S.url||"",contentType:S.mediaType})));let y;p.length>0&&(y=p.map(S=>S.text).join(""));const b=t.map(S=>{if(Sp(S)){const k=iMe(S),_="callProviderMetadata"in S?S.callProviderMetadata:void 0;return S.state==="output-available"?{type:"tool-invocation",toolInvocation:{toolCallId:S.toolCallId,toolName:k,args:S.input,result:typeof S.output=="object"&&S.output&&"value"in S.output?S.output.value:S.output,state:"result"},providerMetadata:_,createdAt:Uf(_)}:{type:"tool-invocation",toolInvocation:{toolCallId:S.toolCallId,toolName:k,args:S.input,state:"call"},providerMetadata:_,createdAt:Uf(_)}}return S.type==="reasoning"?{type:"reasoning",reasoning:S.text,details:[{type:"text",text:S.text}],providerMetadata:S.providerMetadata,createdAt:Uf(S.providerMetadata)}:S.type==="file"?{type:"file",mimeType:S.mediaType,data:S.url||"",providerMetadata:S.providerMetadata,createdAt:Uf(S.providerMetadata),...S.filename?{filename:S.filename}:{}}:S.type==="source-url"?{type:"source",source:{url:S.url,sourceType:"url",id:S.url,providerMetadata:S.providerMetadata},providerMetadata:S.providerMetadata,createdAt:Uf(S.providerMetadata)}:S.type==="text"?{type:"text",text:S.text,providerMetadata:S.providerMetadata,createdAt:Uf(S.providerMetadata)}:S.type==="step-start"?S:typeof S.type=="string"&&S.type.startsWith("data-")?{type:S.type,data:"data"in S?S.data:void 0}:null}).filter(S=>S!==null),w=aMe(b);return{id:e.id,role:e.role,createdAt:a,threadId:i,resourceId:l,content:{format:2,parts:w,toolInvocations:h,reasoning:m,experimental_attachments:g,content:y,metadata:Object.keys(c).length>0?c:void 0}}}static getDataStringFromAIV5DataPart(e){let t,n;if("data"in e)t=e.mediaType||"application/octet-stream",n=e.data;else if("image"in e)t=e.mediaType||"image/jpeg",n=e.image;else{if("url"in e&&typeof e.url=="string")return e.url;throw new Kk({id:"MASTRA_AIV5_DATA_PART_INVALID",domain:qw.AGENT,category:Vw.USER,text:"Invalid AIV5 data part in getDataStringFromAIV5DataPart",details:{part:e}})}if(n instanceof URL)return n.toString();if(n instanceof Buffer){const r=n.toString("base64");return`data:${t};base64,${r}`}else{if(typeof n=="string")return n.startsWith("data:")||n.startsWith("http")?n:`data:${t};base64,${n}`;if(n instanceof Uint8Array){const r=Buffer.from(n).toString("base64");return`data:${t};base64,${r}`}else if(n instanceof ArrayBuffer){const r=Buffer.from(n).toString("base64");return`data:${t};base64,${r}`}else return""}}static fromModelMessage(e,t,n={}){const r=Array.isArray(e.content)?e.content:[{type:"text",text:e.content}],s=[],a=[],i=[],l=[];for(const h of r)if(h.type==="text"){const m={type:"text",text:h.text};h.providerOptions&&(m.providerMetadata=h.providerOptions,m.createdAt=Uf(h.providerOptions)),s.push(m)}else if(h.type==="tool-call"){const m=h,g={type:"tool-invocation",toolInvocation:{toolCallId:m.toolCallId,toolName:Wc(m.toolName),args:m.input,state:"call"}};h.providerOptions&&(g.providerMetadata=h.providerOptions,g.createdAt=Uf(h.providerOptions)),s.push(g),a.push({toolCallId:m.toolCallId,toolName:Wc(m.toolName),args:m.input,state:"call"})}else if(h.type==="tool-result"){const m=h,g=a.find(k=>k.toolCallId===m.toolCallId),y=s.find(k=>k.type==="tool-invocation"&&"toolInvocation"in k&&k.toolInvocation.toolCallId===m.toolCallId),b=(k,_)=>{_.state="result",_.result=typeof k.output=="object"&&k.output&&"value"in k.output?k.output.value:k.output},w=n.dbMessages?XU(n.dbMessages,m.toolCallId):void 0,S=w&&Object.keys(w).length>0?w:m.input??{};if(g)b(m,g);else{const k={state:"call",toolCallId:m.toolCallId,toolName:Wc(m.toolName),args:S};b(m,k),a.push(k)}if(y&&y.type==="tool-invocation")b(m,y.toolInvocation),m.providerOptions&&(y.providerMetadata=m.providerOptions,y.createdAt=Uf(m.providerOptions)??y.createdAt);else{const k={type:"tool-invocation",toolInvocation:{toolCallId:m.toolCallId,toolName:Wc(m.toolName),args:S,state:"call"}};b(m,k.toolInvocation),m.providerOptions&&(k.providerMetadata=m.providerOptions,k.createdAt=Uf(m.providerOptions)),s.push(k)}}else if(h.type==="reasoning"){const m={type:"reasoning",reasoning:h.text,details:[{type:"text",text:h.text}]};h.providerOptions&&(m.providerMetadata=h.providerOptions,m.createdAt=Uf(h.providerOptions)),s.push(m),i.push(h.text)}else if(h.type==="image"){const m=h,g=m.mediaType||"image/jpeg",y=this.getDataStringFromAIV5DataPart(m),b={type:"file",data:y,mimeType:g};h.providerOptions&&(b.providerMetadata=h.providerOptions,b.createdAt=Uf(h.providerOptions)),s.push(b),l.push({url:y,contentType:g})}else if(h.type==="file"){const m=h,g=m.mediaType||"application/octet-stream",y=this.getDataStringFromAIV5DataPart(m),b={type:"file",data:y,mimeType:g};h.providerOptions&&(b.providerMetadata=h.providerOptions,b.createdAt=Uf(h.providerOptions)),m.filename&&(b.filename=m.filename),s.push(b),l.push({url:y,contentType:g})}const c=aMe(s),u=c.filter(h=>h.type==="text").map(h=>h.text).join(`
|
|
193
193
|
`),d="metadata"in e&&e.metadata!==null&&e.metadata!==void 0?e.metadata:{},p={id:"id"in e&&typeof e.id=="string"?e.id:`msg-${Date.now()}-${Math.random().toString(36).substr(2,9)}`,role:e.role==="tool"?"assistant":e.role,createdAt:new Date,content:{format:2,parts:c,toolInvocations:a.length>0?a:void 0,reasoning:i.length>0?i.join(`
|
|
194
194
|
`):void 0,experimental_attachments:l.length>0?l:void 0,content:u||void 0,metadata:Object.keys(d).length>0?d:void 0}};return e.providerOptions&&(p.content.providerMetadata=e.providerOptions),p}};function td(e,t){for(const[n,r]of Object.entries(t))r!==void 0&&(e[n]=r);return e}function Jg(e,t,n){const r=Km(e,"display",t);return gu(r)?r.transformed:n}function fon(e){return e.startsWith("tool-")?Wc(e.slice(5)):Wc(e)}function mlt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:{}}function pon(e){return typeof e=="object"&&e&&"value"in e?e.value:e}function hon(e){return e==="approval-requested"||e==="approval-responded"||e==="output-denied"}function mon(e){if(e)return{id:e.id,approved:"approved"in e?e.approved:void 0,reason:"reason"in e?e.reason:void 0}}function gon(e){return e.type==="dynamic-tool"?Wc(e.toolName):fon(e.type)}function von(e){const t={toolCallId:e.toolCallId,toolName:gon(e),args:mlt(e.input),approval:"approval"in e?mon(e.approval):void 0,providerMetadata:"callProviderMetadata"in e?e.callProviderMetadata:void 0,providerExecuted:e.providerExecuted,title:e.title,preliminary:"preliminary"in e?e.preliminary:void 0};switch(e.state){case"input-streaming":return sk({...t,state:"partial-call"});case"input-available":return sk({...t,state:"call"});case"output-available":return sk({...t,state:"result",result:pon(e.output)});case"output-error":return sk({...t,state:"output-error",errorText:e.errorText,rawInput:"rawInput"in e?e.rawInput:void 0});case"approval-requested":case"approval-responded":case"output-denied":return sk({...t,state:e.state})}}function yon(e){return e.type==="dynamic-tool"&&!hon(e.state)?{...e,type:`tool-${Wc(e.toolName)}`}:e}function sk({toolCallId:e,toolName:t,args:n,state:r,approval:s,result:a,errorText:i,rawInput:l,providerMetadata:c,providerExecuted:u,title:d,preliminary:f}){return td({type:"tool-invocation",toolInvocation:td({toolCallId:e,toolName:t,args:n,state:r},{approval:s,result:a,errorText:i,rawInput:l})},{providerMetadata:c,providerExecuted:u,title:d,preliminary:f})}function bon(e,t){for(const n of e)if(n.type==="tool-invocation"&&n.toolInvocation.toolCallId===t)return n}function xon(e,t){if(e){for(const n of[...e].reverse())for(const r of[...n.content.parts||[]].reverse())if(r.type==="tool-invocation"&&r.toolInvocation.approval?.id===t&&r.toolInvocation.state==="approval-requested")return r}}function won(e){const t=[];for(const n of e){if(n.type!=="tool-invocation")continue;const r=n.toolInvocation;if(r.state==="result"){t.push({args:r.args,result:r.result,toolCallId:r.toolCallId,toolName:r.toolName,state:"result"});continue}(r.state==="call"||r.state==="partial-call")&&t.push({args:r.args,toolCallId:r.toolCallId,toolName:r.toolName,state:r.state})}return t.length>0?t:void 0}var KF=class W0{static toUIMessage(t){const n=Nv.toUIMessage(t),r=n.metadata||{},s=[];if(t.role==="signal"&&n.role!=="user")return{id:t.id,role:"system",metadata:Object.keys(r).length>0?r:void 0,parts:n.parts.map(d=>W0.toUIPartFromV5(d))};const a=t.content.parts||[],i=a.some(d=>d.type==="tool-invocation"),l=a.some(d=>d.type==="reasoning"),c=a.some(d=>d.type==="file"),u=a.some(d=>d.type==="text");for(const d of a)s.push(W0.toUIPart(d));if(!i||!l||!c||!u)for(const d of n.parts){if(Sp(d)){i||s.push(W0.toUIPartFromV5(d));continue}if(d.type==="reasoning"){l||s.push(W0.toUIPartFromV5(d));continue}if(d.type==="file"){c||s.push(W0.toUIPartFromV5(d));continue}d.type==="text"&&!u&&s.push(W0.toUIPartFromV5(d))}return{id:t.id,role:t.role==="signal"?n.role:t.role,metadata:Object.keys(r).length>0?r:void 0,parts:s}}static fromUIMessage(t){const n=t.parts.filter(l=>!(l.type==="source-document"||I$e(l))),r=Nv.fromUIMessage({...t,parts:n.map(l=>yon(l))}),s=r.content.parts||[],a=[];let i=0;for(const l of t.parts){if(l.type==="source-document"){a.push(td({type:"source-document",sourceId:l.sourceId,mediaType:l.mediaType,title:l.title},{filename:l.filename,providerMetadata:l.providerMetadata}));continue}if(!I$e(l)){const c=s[i++];c&&a.push(c);continue}a.push(von(l))}return{...r,content:{...r.content,parts:a,toolInvocations:won(a)||r.content.toolInvocations}}}static fromModelMessage(t,n,r={}){const s=Array.isArray(t.content)?t.content:[{type:"text",text:t.content}],a=s.filter(c=>c.type!=="tool-approval-request"&&c.type!=="tool-approval-response"),i=Nv.fromModelMessage({...t,content:a},n,r),l=[...i.content.parts];if(t.role==="assistant"){const c=new Map;for(const u of s){if(u.type==="tool-call"){c.set(u.toolCallId,{toolName:Wc(u.toolName),args:mlt(u.input)});continue}if(u.type!=="tool-approval-request")continue;const d=c.get(u.toolCallId),f=bon(l,u.toolCallId);if(f){f.toolInvocation.state="approval-requested",f.toolInvocation.approval={id:u.approvalId};continue}l.push(sk({toolCallId:u.toolCallId,toolName:d?.toolName||"unknown",args:d?.args||{},state:"approval-requested",approval:{id:u.approvalId}}))}}else if(t.role==="tool")for(const c of s){if(c.type!=="tool-approval-response")continue;const u=xon(r.dbMessages,c.approvalId);u&&l.push(sk({toolCallId:u.toolInvocation.toolCallId,toolName:u.toolInvocation.toolName,args:u.toolInvocation.args,state:"approval-responded",approval:{id:c.approvalId,approved:c.approved,reason:c.reason},providerMetadata:u.providerMetadata,providerExecuted:u.providerExecuted,title:u.title}))}return{...i,content:{...i.content,parts:l}}}static toUIPart(t){if(t.type==="tool-invocation"){const n=td({type:`tool-${Wc(t.toolInvocation.toolName)}`,toolCallId:t.toolInvocation.toolCallId,providerExecuted:t.providerExecuted},{callProviderMetadata:t.providerMetadata,title:t.title});switch(t.toolInvocation.state){case"partial-call":return{...n,state:"input-streaming",input:Jg(t.providerMetadata,"input-available",t.toolInvocation.args)};case"call":return{...n,state:"input-available",input:Jg(t.providerMetadata,"input-available",t.toolInvocation.args)};case"approval-requested":return{...n,state:"approval-requested",input:Jg(t.providerMetadata,"input-available",t.toolInvocation.args),approval:{id:t.toolInvocation.approval?.id||t.toolInvocation.toolCallId}};case"approval-responded":return{...n,state:"approval-responded",input:Jg(t.providerMetadata,"input-available",t.toolInvocation.args),approval:{id:t.toolInvocation.approval?.id||t.toolInvocation.toolCallId,approved:t.toolInvocation.approval?.approved??!1,reason:t.toolInvocation.approval?.reason}};case"output-error":return td({...n,state:"output-error",input:Jg(t.providerMetadata,"input-available",t.toolInvocation.args),errorText:Jg(t.providerMetadata,"error",t.toolInvocation.errorText||"")},{rawInput:t.toolInvocation.rawInput,approval:t.toolInvocation.approval?.approved===!0?{id:t.toolInvocation.approval.id,approved:!0,reason:t.toolInvocation.approval.reason}:void 0});case"output-denied":return{...n,state:"output-denied",input:Jg(t.providerMetadata,"input-available",t.toolInvocation.args),approval:{id:t.toolInvocation.approval?.id||t.toolInvocation.toolCallId,approved:!1,reason:t.toolInvocation.approval?.reason}};case"result":return td({...n,state:"output-available",input:Jg(t.providerMetadata,"input-available",t.toolInvocation.args),output:Jg(t.providerMetadata,"output-available",Jg(t.providerMetadata,"error",t.toolInvocation.result))},{preliminary:t.preliminary,approval:t.toolInvocation.approval?.approved===!0?{id:t.toolInvocation.approval.id,approved:!0,reason:t.toolInvocation.approval.reason}:void 0});default:throw new Error(`Unhandled toolInvocation.state: ${String(t.toolInvocation.state)}`)}}return t.type==="source-document"?td({type:"source-document",sourceId:t.sourceId,mediaType:t.mediaType,title:t.title},{filename:t.filename,providerMetadata:t.providerMetadata}):W0.toUIPartFromV5(Nv.toUIMessage({id:"tmp",role:"assistant",createdAt:new Date,content:{format:2,parts:[t]}}).parts[0])}static toUIPartFromV5(t){if(Sp(t)){const n={type:t.type,toolCallId:t.toolCallId,providerExecuted:t.providerExecuted};switch(t.state){case"input-streaming":return td({...n,state:"input-streaming",input:t.input},{callProviderMetadata:"callProviderMetadata"in t?t.callProviderMetadata:void 0,title:"title"in t?t.title:void 0});case"input-available":return td({...n,state:"input-available",input:t.input},{callProviderMetadata:"callProviderMetadata"in t?t.callProviderMetadata:void 0,title:"title"in t?t.title:void 0});case"output-available":return td({...n,state:"output-available",input:t.input,output:t.output},{callProviderMetadata:"callProviderMetadata"in t?t.callProviderMetadata:void 0,preliminary:"preliminary"in t?t.preliminary:void 0,title:"title"in t?t.title:void 0});case"output-error":return td({...n,state:"output-error",input:t.input,errorText:t.errorText},{rawInput:"rawInput"in t?t.rawInput:void 0,callProviderMetadata:"callProviderMetadata"in t?t.callProviderMetadata:void 0,title:"title"in t?t.title:void 0})}}switch(t.type){case"text":return td({type:"text",text:t.text},{providerMetadata:t.providerMetadata});case"reasoning":return td({type:"reasoning",text:t.text,state:t.state},{providerMetadata:t.providerMetadata});case"file":return td({type:"file",url:t.url,mediaType:t.mediaType},{filename:"filename"in t?t.filename:void 0,providerMetadata:t.providerMetadata});case"source-url":return td({type:"source-url",sourceId:t.sourceId,url:t.url},{title:t.title,providerMetadata:t.providerMetadata});case"step-start":return{type:"step-start"};default:return typeof t.type=="string"&&t.type.startsWith("data-")?{type:t.type,data:"data"in t?t.data:void 0}:t}}};function Son(e){return JSON.stringify(e,(t,n)=>{if(n&&typeof n=="object"&&!Array.isArray(n)){const r={};for(const s of Object.keys(n).sort())r[s]=n[s];return r}return n})}function N0(e,...t){const n=new Set(t.flatMap(r=>Jin(r)));for(const r of n)e+=`|${r}`;return e}var Ho=class Bde{static fromAIV4Parts(t){let n="";for(const r of t)n+=r.type,n+=Bde.fromAIV4Part(r);return n}static fromAIV4Part(t){let n="";if(t.type==="text"&&(n+=t.text,n=N0(n,t.providerMetadata)),t.type==="tool-invocation"){if(!t.toolInvocation)return n;n+=t.toolInvocation.toolCallId,n+=t.toolInvocation.state}if(t.type==="reasoning"){n+=t.reasoning,n+=(t.details??[]).reduce((s,a)=>a.type==="text"?s+(a.text?.length??0)+(a.signature?.length||0):s,0);const r=t;r&&Object.hasOwn(r,"providerMetadata")&&(n=N0(n,r.providerMetadata))}return t.type==="file"&&(n+=t.data,n+=t.mimeType),n}static fromDBParts(t){let n="";for(const r of t)if(n+=r.type,r.type.startsWith("data-")){const s=r.data;n+=Son(s)}else n+=Bde.fromAIV4Part(r);return n}static fromAIV4CoreMessageContent(t){if(typeof t=="string")return t;let n="";for(const r of t){if(n+=r.type,r.type==="text"){n+=r.text.length;const s=r;n=N0(n,s.providerMetadata,s.providerOptions)}if(r.type==="reasoning"){n+=r.text.length;const s=r;n=N0(n,s.providerMetadata,s.providerOptions)}r.type==="tool-call"&&(n+=r.toolCallId,n+=r.toolName),r.type==="tool-result"&&(n+=r.toolCallId,n+=r.toolName),r.type==="file"&&(n+=r.filename,n+=r.mimeType),r.type==="image"&&(n+=tMe(r.image),n+=r.mimeType),r.type==="redacted-reasoning"&&(n+=r.data.length)}return n}static fromAIV5Parts(t){let n="";for(const r of t)n+=r.type,r.type==="text"&&(n+=r.text,n=N0(n,r.providerMetadata)),(Sp(r)||r.type==="dynamic-tool")&&(n+=r.toolCallId,n+=r.state),r.type==="reasoning"&&(n+=r.text,n=N0(n,r.providerMetadata)),r.type==="file"&&(n+=r.url.length,n+=r.mediaType,n+=r.filename||"");return n}static fromAIV5ModelMessageContent(t){if(typeof t=="string")return t;let n="";for(const r of t)n+=r.type,r.type==="text"&&(n+=r.text.length,n=N0(n,r.providerOptions)),r.type==="reasoning"&&(n+=r.text.length,n=N0(n,r.providerOptions)),r.type==="tool-call"&&(n+=r.toolCallId,n+=r.toolName),r.type==="tool-result"&&(n+=r.toolCallId,n+=r.toolName),r.type==="file"&&(n+=r.filename,n+=r.mediaType),r.type==="image"&&(n+=tMe(r.image),n+=r.mediaType);return n}};function kon(e){if(e.role==="system")return e;if(typeof e.content=="string"&&(e.role==="assistant"||e.role==="user"))return{...e,content:[{type:"text",text:e.content}]};if(typeof e.content=="string")throw new Error(`Saw text content for input CoreMessage, but the role is ${e.role}. This is only allowed for "system", "assistant", and "user" roles.`);const t={user:[],assistant:[],tool:[]},n=e.role;for(const r of e.content){const s=`Saw incompatible message content part type ${r.type} for message role ${n}`;switch(r.type){case"text":{if(n==="tool")throw new Error(s);t[n].push(r);break}case"redacted-reasoning":case"reasoning":{if(n!=="assistant")throw new Error(s);t[n].push(r);break}case"tool-call":{if(n==="tool"||n==="user")throw new Error(s);t[n].push({...r,toolName:Wc(r.toolName)});break}case"tool-result":{if(n==="assistant"||n==="user")throw new Error(s);t[n].push({...r,toolName:Wc(r.toolName)});break}case"image":{if(n==="tool"||n==="assistant")throw new Error(s);let a;r.image instanceof URL||r.image instanceof Uint8Array?a=r.image:Buffer.isBuffer(r.image)||r.image instanceof ArrayBuffer?a=new Uint8Array(r.image):MP(r.image,r.mimeType).type==="raw"?a=new Uint8Array(Buffer.from(r.image,"base64")):a=new URL(r.image),t[n].push({...r,image:a});break}case"file":{if(n==="tool")throw new Error(s);t[n].push({...r,data:r.data instanceof URL||typeof r.data=="string"?r.data:rO(r.data)});break}}}if(n==="tool")return{...e,content:t[n]};if(n==="user")return{...e,content:t[n]};if(n==="assistant")return{...e,content:t[n]};throw new Error(`Encountered unknown role ${n} when converting V4 CoreMessage -> V4 LanguageModelV1Prompt, input message: ${JSON.stringify(e,null,2)}`)}function Oon(e){if(e.role==="system")return e;if(typeof e.content=="string"&&(e.role==="assistant"||e.role==="user"))return{role:e.role,content:[{type:"text",text:e.content}],providerOptions:e.providerOptions};if(typeof e.content=="string")throw new Error(`Saw text content for input ModelMessage, but the role is ${e.role}. This is only allowed for "system", "assistant", and "user" roles.`);const t={user:[],assistant:[],tool:[]},n=e.role;for(const r of e.content){const s=`Saw incompatible message content part type ${r.type} for message role ${n}`;switch(r.type){case"text":{if(n==="tool")throw new Error(s);t[n].push(r);break}case"reasoning":{if(n==="tool"||n==="user")throw new Error(s);t[n].push(r);break}case"tool-call":{if(n!=="assistant")throw new Error(s);t[n].push({...r,toolName:Wc(r.toolName)});break}case"tool-result":{if(n==="user")throw new Error(s);t[n].push({...r,toolName:Wc(r.toolName)});break}case"file":{if(n==="tool")throw new Error(s);t[n].push({...r,data:r.data instanceof ArrayBuffer?new Uint8Array(r.data):r.data});break}case"image":{if(n==="tool")throw new Error(s);t[n].push({...r,mediaType:r.mediaType||"image/unknown",type:"file",data:r.image instanceof ArrayBuffer?new Uint8Array(r.image):r.image});break}}}if(n==="tool")return{...e,content:t[n]};if(n==="user")return{...e,content:t[n]};if(n==="assistant")return{...e,content:t[n]};throw new Error(`Encountered unknown role ${n} when converting V5 ModelMessage -> V5 LanguageModelV2Message, input message: ${JSON.stringify(e,null,2)}`)}function _on(e){return e.map(t=>{if(t.role!=="tool")return t;let n=!1;const r=t.content.map(s=>{if(s.type!=="tool-result")return s;const a=s.output;if(!a||a.type!=="content"||!Array.isArray(a.value))return s;let i=!1;const l=a.value.map(c=>{if(c==null||typeof c!="object")return c;const u=c;if(u.type!=="media"||typeof u.data!="string")return c;i=!0;const d=typeof u.mediaType=="string"?u.mediaType:"";return d.startsWith("image/")?{type:"image-data",data:u.data,mediaType:d}:{type:"file-data",data:u.data,mediaType:d}});return i?(n=!0,{...s,output:{...a,value:l}}):s});return n?{...t,content:r}:t})}function Con(e){return typeof e=="string"?e:e.reduce((t,n)=>(n.type==="text"&&(t+=n.text),t),"")}function HY(e,t){const n=Ha.isAIV4UIMessage(e)&&e,r=Ha.isAIV4UIMessage(t)&&t;if(n&&!r)return!1;if(n&&r)return Ho.fromAIV4Parts(e.parts)===Ho.fromAIV4Parts(t.parts);const s=Ha.isAIV4CoreMessage(e)&&e,a=Ha.isAIV4CoreMessage(t)&&t;if(s&&!a)return!1;if(s&&a)return Ho.fromAIV4CoreMessageContent(s.content)===Ho.fromAIV4CoreMessageContent(a.content);const i=Ha.isMastraMessageV1(e)&&e,l=Ha.isMastraMessageV1(t)&&t;if(i&&!l)return!1;if(i&&l)return i.id===l.id&&Ho.fromAIV4CoreMessageContent(i.content)===Ho.fromAIV4CoreMessageContent(l.content);const c=Ha.isMastraDBMessage(e)&&e,u=Ha.isMastraDBMessage(t)&&t;if(c&&!u)return!1;if(c&&u)return c.id===u.id&&Ho.fromDBParts(c.content.parts)===Ho.fromDBParts(u.content.parts);const d=Ha.isAIV5UIMessage(e)&&e,f=Ha.isAIV5UIMessage(t)&&t;if(d&&!f)return!1;if(d&&f)return Ho.fromAIV5Parts(e.parts)===Ho.fromAIV5Parts(t.parts);const p=Ha.isAIV5CoreMessage(e)&&e,h=Ha.isAIV5CoreMessage(t)&&t;return p&&!h?!1:p&&h?Ho.fromAIV5ModelMessageContent(p.content)===Ho.fromAIV5ModelMessageContent(h.content):!0}function Hye(e){return e.createdAt==null&&(e.createdAt=Date.now()),e}function NC(e,t){return t==="memory"||!Array.isArray(e.content.parts)||(e.content.parts=e.content.parts.map(n=>Hye(n))),e}function oMe(e,t,n){if(t!=="memory"&&"threadId"in e&&e.threadId&&n.memoryInfo&&e.threadId!==n.memoryInfo.threadId)throw new Error(`Received input message with wrong threadId. Input ${e.threadId}, expected ${n.memoryInfo.threadId}`);if("resourceId"in e&&e.resourceId&&n.memoryInfo?.resourceId&&e.resourceId!==n.memoryInfo.resourceId)throw new Error(`Received input message with wrong resourceId. Input ${e.resourceId}, expected ${n.memoryInfo.resourceId}`);if(Ha.isMastraMessageV1(e))return NC(Eon(e,t,n),t);if(Ha.isMastraDBMessage(e))return NC(jon(e,n,t),t);if(Ha.isAIV4CoreMessage(e))return NC(_w.fromCoreMessage(e,n,t),t);if(Ha.isAIV4UIMessage(e))return NC(_w.fromUIMessage(e,n,t),t);const s="id"in e&&typeof e.id=="string"?e.id:n.newMessageId();if(Ha.isAIV6CoreMessage(e)){const a=KF.fromModelMessage(e,t,n),i="metadata"in e&&e.metadata&&typeof e.metadata=="object"&&"createdAt"in e.metadata?e.metadata.createdAt:void 0;return{...a,id:s,createdAt:n.generateCreatedAt(t,i),threadId:n.memoryInfo?.threadId,resourceId:n.memoryInfo?.resourceId}}if(Ha.isAIV6UIMessage(e)){const a=KF.fromUIMessage(e),i="createdAt"in e?e.createdAt:void 0;return{...a,id:s,createdAt:n.generateCreatedAt(t,i),threadId:n.memoryInfo?.threadId,resourceId:n.memoryInfo?.resourceId}}if(Ha.isAIV5CoreMessage(e)){const a=Nv.fromModelMessage(e,t,n),i="metadata"in e&&e.metadata&&typeof e.metadata=="object"&&"createdAt"in e.metadata?e.metadata.createdAt:void 0;return NC({...a,id:s,createdAt:n.generateCreatedAt(t,i),threadId:n.memoryInfo?.threadId,resourceId:n.memoryInfo?.resourceId},t)}if(Ha.isAIV5UIMessage(e)){const a=Nv.fromUIMessage(e),i="createdAt"in e?e.createdAt:void 0;return NC({...a,id:s,createdAt:n.generateCreatedAt(t,i),threadId:n.memoryInfo?.threadId,resourceId:n.memoryInfo?.resourceId},t)}throw new Error(`Found unhandled message ${JSON.stringify(e)}`)}function Eon(e,t,n){const r=_w.fromCoreMessage({content:e.content,role:e.role},n,t);return{id:e.id,role:r.role,createdAt:n.generateCreatedAt(t,e.createdAt),threadId:e.threadId,resourceId:e.resourceId,content:r.content}}function jon(e,t,n){return e.id||(e.id=t.newMessageId()),e.createdAt===void 0||e.createdAt===null?e.createdAt=t.generateCreatedAt(n):e.createdAt instanceof Date||(e.createdAt=new Date(e.createdAt)),e.content.toolInvocations&&e.content.parts&&(e.content.toolInvocations=e.content.toolInvocations.map(r=>{if(!r.args||Object.keys(r.args).length===0){const s=e.content.parts.find(a=>a.type==="tool-invocation"&&a.toolInvocation&&a.toolInvocation.toolCallId===r.toolCallId&&a.toolInvocation.args&&Object.keys(a.toolInvocation.args).length>0);if(s&&s.type==="tool-invocation")return{...r,args:s.toolInvocation.args}}return r})),!e.threadId&&t.memoryInfo?.threadId&&(e.threadId=t.memoryInfo.threadId,!e.resourceId&&t.memoryInfo?.resourceId&&(e.resourceId=t.memoryInfo.resourceId)),e}function Ton(e){return e.type.startsWith("source-")}function Non(e){const t=[];for(const n of e){if(n.type!=="text"){t.push(n);continue}const r=n,s=nMe(r.providerMetadata);if(!s){t.push(n);continue}let a=!1;for(let i=t.length-1;i>=0;i--){const l=t[i];if(l.type==="text"){const c=l;nMe(c.providerMetadata)===s&&(t[i]={...c,text:c.text+r.text},a=!0);break}if(!Ton(l))break}a||t.push(n)}return t}function Ion(e){return e.map(n=>{if(n.parts.length===0)return!1;const r=n.parts.filter(a=>a.type!=="tool-invocation"||a.toolInvocation.state!=="call"&&a.toolInvocation.state!=="partial-call");if(!r.length)return!1;const s={...n,parts:r};return"toolInvocations"in n&&n.toolInvocations&&(s.toolInvocations=n.toolInvocations.filter(a=>a.state==="result")),s}).filter(n=>!!n)}function glt(e,t=!1){let n=-1;for(let i=e.length-1;i>=0;i--)if(e[i].role==="user"){n=i;break}const r=(i,l)=>i.parts.filter(c=>typeof c.type=="string"&&c.type.startsWith("data-")||c.type==="text"&&(!("text"in c)||c.text===""||c.text?.trim()==="")&&(i.role==="user"||i.parts.some(d=>!(d.type==="text"&&(!("text"in d)||d.text===""||d.text?.trim()===""))))?!1:Sp(c)?t?!!(c.state==="output-available"||c.state==="output-error"||c.state==="input-available"&&c.providerExecuted&&l):c.state!=="input-streaming":!0);let s=-1;if(n!==e.length-1)for(let i=e.length-1;i>n;i--){const l=e[i];if(!(l.role!=="assistant"||l.parts.length===0)&&r(l,!0).length>0){s=i;break}}return e.map((i,l)=>{if(i.parts.length===0)return!1;const c=i.role==="assistant"&&l===s,u=r(i,c);if(!u.length)return!1;const d=Non(u);return{...i,parts:d.map(p=>Sp(p)&&p.state==="output-available"?{...p,output:(()=>{const h=p.output;if(h==null||typeof h!="object")return h;const m=h;return m.type==="content"&&Array.isArray(m.value)?h:"value"in m?m.value:h})()}:p)}}).filter(i=>!!i)}function Aon(e){for(const t of e)if(t.role==="assistant")for(const[n,r]of t.parts.entries()){if(!Sp(r))continue;const s=t.parts.at(n+1);s&&s.type!=="step-start"&&!Sp(s)&&t.parts.splice(n+1,0,{type:"step-start"}),s&&Sp(s)&&!r.providerExecuted&&s.providerExecuted&&(s.state==="output-available"||s.state==="output-error")&&t.parts.splice(n+1,0,{type:"step-start"})}return e}function uh(e){return Fan(Ion(e))}function Ron(e){if(!e||typeof e!="object")return;const t=e.content;if(!Array.isArray(t)||!t.some(s=>{if(!s||typeof s!="object")return!1;const a=s;return(a.type==="image"||a.type==="audio")&&typeof a.data=="string"}))return;const r=t.map(s=>{if(!s||typeof s!="object")return null;const a=s;switch(a.type){case"text":return{type:"text",text:String(a.text??"")};case"image":return typeof a.data=="string"?{type:"image-data",data:a.data,mediaType:String(a.mimeType??"image/png")}:{type:"text",text:JSON.stringify(a)};case"audio":return typeof a.data=="string"?{type:"file-data",data:a.data,mediaType:String(a.mimeType??"audio/wav")}:{type:"text",text:JSON.stringify(a)};default:return{type:"text",text:JSON.stringify(a)}}}).filter(Boolean);return r.length>0?{type:"content",value:r}:void 0}function Pon(e){const t=new Map;for(const n of e)if(!(n.content?.format!==2||!n.content.parts))for(const r of n.content.parts)r.type!=="tool-invocation"||r.toolInvocation?.state!=="result"||t.set(r.toolInvocation.toolCallId,r.toolInvocation.result);return t}function $on(e,t){if(!e||typeof e!="object")return!1;const n=e;return n.type!=="json"?!1:JSON.stringify(n.value)===JSON.stringify(t)}function Mon(e,t){const n=Pon(t);return n.size===0?e:e.map(r=>{if(r.role!=="tool"||!Array.isArray(r.content))return r;let s=!1;const a=r.content.map(i=>{if(i.type!=="tool-result"||!n.has(i.toolCallId))return i;const l=n.get(i.toolCallId);if(!$on(i.output,l))return i;const c=Ron(l);return c?(s=!0,{...i,output:c}):i});return s?{...r,content:a}:r})}function Don(e,t){const n=[];for(const s of t)if(s.role==="assistant")for(const a of s.parts)a.type==="file"&&n.push(a.providerMetadata??void 0);if(n.length===0||n.every(s=>s==null))return e;let r=0;return e.map(s=>{if(s.role!=="assistant"||typeof s.content=="string")return s;let a=!1;const i=s.content.map(l=>{if(l.type!=="file"||r>=n.length)return l;const c=n[r++];return l.providerOptions||!c?l:(a=!0,{...l,providerOptions:c})});return a?{...s,content:i}:s})}function dv(e,t,n=!1){const r=glt(e,n),s=Aon(r),a=[];for(const u of s){const d=vit([u]);if(d.length===0)continue;const f=u.metadata&&typeof u.metadata=="object"&&"providerMetadata"in u.metadata?u.metadata.providerMetadata:void 0;if(f){let p=-1;for(let h=d.length-1;h>=0;h--)if(d[h]?.role===u.role){p=h;break}p!==-1&&(d[p]={...d[p],providerOptions:f})}a.push(...d)}const i=Don(a,s),l=Mon(i,t),c=eon(l,t);return n?ton(c):c}function lMe(e,t,n,r){return dv(e.map(s=>_w.fromCoreMessage(s,n,t)).map(s=>Nv.toUIMessage(s)),r)}function Lon(e){if(typeof e=="string")return{role:"system",content:e};if(Ha.isAIV6CoreMessage(e)){const t=KF.fromModelMessage(e,"system");return _w.systemToV4Core(t)}if(Ha.isAIV5CoreMessage(e)){const t=Nv.fromModelMessage(e,"system");return _w.systemToV4Core(t)}return Ha.isMastraDBMessage(e)?_w.systemToV4Core(e):e}var cMe=class wb{static extractStepContent(t,n,r){const s=t.flatMap(i=>i.parts),a=[];return s.forEach((i,l)=>{i.type==="step-start"&&a.push(l)}),n===-1?wb.extractLastStep(s,a,r):n===1?wb.extractFirstStep(s,a,r):wb.extractMiddleStep(s,a,n,r)}static extractLastStep(t,n,r){const s=t.filter(u=>u.type?.startsWith("tool-")),a=n.length>0;if(!a&&s.length>0){const u=s[s.length-1];if(!u)return[];const d=t.indexOf(u),f=s[s.length-2],h=(f?t.indexOf(f):-1)+1,m=t.slice(h,d+1);return wb.convertPartsToContent(m,"last-step",r)}if(n.length+1===1&&!a)return wb.convertPartsToContent(t,"last-step",r);const l=n[n.length-1];if(l===void 0)return[];const c=t.slice(l+1);return c.length===0?[]:wb.convertPartsToContent(c,"last-step",r)}static extractFirstStep(t,n,r){const s=n[0]??t.length;if(s===0)return[];const a=t.slice(0,s);return wb.convertPartsToContent(a,"step-1",r)}static extractMiddleStep(t,n,r,s){const a=r-2;if(a<0||a>=n.length)return[];const i=(n[a]??0)+1,l=n[a+1]??t.length;if(i>=l)return[];const c=t.slice(i,l);return wb.convertPartsToContent(c,`step-${r}`,s)}static convertPartsToContent(t,n,r){return vit(glt([{id:n,role:"assistant",parts:t}])).flatMap(r)}static convertToStepContent(t,n,r){const s=t||r();return s?typeof s.content=="string"?[{type:"text",text:s.content}]:s.content.map(a=>a.type==="tool-result"?{type:"tool-result",input:XU(n,a.toolCallId),output:a.output,toolCallId:a.toolCallId,toolName:a.toolName}:a.type==="file"?{type:"file",file:new Y$e({data:typeof a.data=="string"?XF(a.data).base64Content:a.data instanceof URL?a.data.toString():rO(a.data),mediaType:a.mediaType})}:a.type==="image"?{type:"file",file:new Y$e({data:typeof a.image=="string"?XF(a.image).base64Content:a.image instanceof URL?a.image.toString():rO(a.image),mediaType:a.mediaType||"unknown"})}:{...a}):[]}},ob=class qR{static isSealed(t){return t.content?.metadata?.mastra?.sealed===!0}static shouldMerge(t,n,r,s,a=!1){if(!t||qR.isSealed(t)||t.content?.metadata?.mastra?.responseBoundary||n.content.metadata?.completionResult||t.content.metadata?.completionResult||n.content.metadata?.isTaskCompleteResult||t.content.metadata?.isTaskCompleteResult)return!1;const i=t.content?.parts??[];return i.length>0&&i.every(d=>d.type.startsWith("data-"))&&t.id!==n.id?!1:t.role==="assistant"&&n.role==="assistant"&&t.threadId===n.threadId&&r!=="memory"&&(a?!s:!0)}static merge(t,n){n.content.metadata&&(t.content.metadata={...t.content.metadata??{},...n.content.metadata});const r=new Map,s=new Map;for(const[a,i]of n.content.parts.entries())if(i.type==="tool-invocation"){if(!i.toolInvocation)continue;const l=[...t.content.parts].reverse().find(u=>u.type==="tool-invocation"&&u.toolInvocation?.toolCallId===i.toolInvocation.toolCallId);if(!!l&&l.type==="tool-invocation"){if(i.toolInvocation.state==="result"){l.toolInvocation={...l.toolInvocation,step:i.toolInvocation.step,state:"result",result:i.toolInvocation.result,args:{...l.toolInvocation.args,...i.toolInvocation.args}},i.providerMetadata&&(l.providerMetadata={...l.providerMetadata,...i.providerMetadata}),t.content.toolInvocations||(t.content.toolInvocations=[]);const d=t.content.toolInvocations.findIndex(f=>f.toolCallId===l.toolInvocation.toolCallId);d===-1?t.content.toolInvocations.push(l.toolInvocation):t.content.toolInvocations[d]=l.toolInvocation}else(i.toolInvocation.state==="approval-requested"||i.toolInvocation.state==="approval-responded"||i.toolInvocation.state==="output-denied"||i.toolInvocation.state==="output-error")&&(l.toolInvocation={...l.toolInvocation,state:i.toolInvocation.state,approval:i.toolInvocation.approval,errorText:i.toolInvocation.errorText,rawInput:i.toolInvocation.rawInput,args:{...l.toolInvocation.args,...i.toolInvocation.args}},i.providerMetadata&&(l.providerMetadata={...l.providerMetadata,...i.providerMetadata}),"providerExecuted"in i&&i.providerExecuted!==void 0&&(l.providerExecuted=i.providerExecuted),"title"in i&&i.title!==void 0&&(l.title=i.title),"preliminary"in i&&i.preliminary!==void 0&&(l.preliminary=i.preliminary));const u=t.content.parts.findIndex(d=>d===l);r.set(a,u)}else s.set(a,i)}else s.set(a,i);qR.addPartsToMessage({latestMessage:t,incomingMessage:n,anchorMap:r,partsToAdd:s}),!t.content.content&&n.content.content&&(t.content.content=n.content.content),t.content.content&&n.content.content&&t.content.content!==n.content.content&&(t.content.content=n.content.content)}static addPartsToMessage({latestMessage:t,incomingMessage:n,anchorMap:r,partsToAdd:s}){for(let a=0;a<n.content.parts.length;++a){const i=n.content.parts[a];if(!i)continue;const l=Ho.fromDBParts([i]),c=s.get(a);if(!(!l||!c))if(r.size>0){if(r.has(a))continue;const u=[...r.keys()].filter(g=>g<a).pop()??-1,d=[...r.keys()].find(g=>g>a)??-1,f=u!==-1?r.get(u):0,p=u===-1?a:a-u,h=f+p,m=d!==-1?r.get(d):t.content.parts.length;if(h>=0&&h<=m&&!t.content.parts.slice(h,m).some(g=>Ho.fromDBParts([g])===Ho.fromDBParts([i]))){qR.pushNewPart({latestMessage:t,newMessage:n,part:i,insertAt:h});for(const[g,y]of r.entries())y>=h&&r.set(g,y+1)}}else qR.pushNewPart({latestMessage:t,newMessage:n,part:i})}}static pushNewPart({latestMessage:t,newMessage:n,part:r,insertAt:s}){const a=Ho.fromDBParts([r]),i=t.content.parts.filter(c=>Ho.fromDBParts([c])===a).length,l=n.content.parts.filter(c=>Ho.fromDBParts([c])===a).length;if(i<l){const c=n.content.parts.indexOf(r),u=c>0&&n.content.parts[c-1]?.type==="step-start",d=t.role==="assistant"&&r.type==="text"&&!u&&t.content.parts.length>0&&t.content.parts.at(-1)?.type==="tool-invocation",f=[...t.content.parts].reverse().find(h=>h.type==="step-start"),p=f?.model?Hye({type:"step-start",model:f.model}):{type:"step-start"};typeof s=="number"?d?(t.content.parts.splice(s,0,p),t.content.parts.splice(s+1,0,r)):t.content.parts.splice(s,0,r):(d&&t.content.parts.push(p),t.content.parts.push(r))}}};function Fon(e){try{const[t,n]=e.split(",");return{mediaType:t?.split(";")[0]?.split(":")[1],base64Content:n}}catch{return{mediaType:void 0,base64Content:void 0}}}function zon(e){if(e instanceof Uint8Array)return{data:e,mediaType:void 0};if(e instanceof ArrayBuffer)return{data:new Uint8Array(e),mediaType:void 0};if(typeof e=="string")try{e=new URL(e)}catch{}if(e instanceof URL&&e.protocol==="data:"){const{mediaType:t,base64Content:n}=Fon(e.toString());if(t==null||n==null)throw new Kk({id:"INVALID_DATA_URL_FORMAT",text:`Invalid data URL format in content ${e.toString()}`,domain:qw.LLM,category:Vw.USER});return{data:n,mediaType:t}}return{data:e,mediaType:void 0}}var Bon=[{mediaType:"image/gif",bytesPrefix:[71,73,70],base64Prefix:"R0lG"},{mediaType:"image/png",bytesPrefix:[137,80,78,71],base64Prefix:"iVBORw"},{mediaType:"image/jpeg",bytesPrefix:[255,216],base64Prefix:"/9j/"},{mediaType:"image/webp",bytesPrefix:[82,73,70,70],base64Prefix:"UklGRg"},{mediaType:"image/bmp",bytesPrefix:[66,77],base64Prefix:"Qk"},{mediaType:"image/tiff",bytesPrefix:[73,73,42,0],base64Prefix:"SUkqAA"},{mediaType:"image/tiff",bytesPrefix:[77,77,0,42],base64Prefix:"TU0AKg"},{mediaType:"image/avif",bytesPrefix:[0,0,0,32,102,116,121,112,97,118,105,102],base64Prefix:"AAAAIGZ0eXBhdmlm"},{mediaType:"image/heic",bytesPrefix:[0,0,0,32,102,116,121,112,104,101,105,99],base64Prefix:"AAAAIGZ0eXBoZWlj"}],Uon=e=>{const t=typeof e=="string"?olt(e):e,n=(t[6]&127)<<21|(t[7]&127)<<14|(t[8]&127)<<7|t[9]&127;return t.slice(n+10)};function qon(e){return typeof e=="string"&&e.startsWith("SUQz")||typeof e!="string"&&e.length>10&&e[0]===73&&e[1]===68&&e[2]===51?Uon(e):e}function Von({data:e,signatures:t}){const n=qon(e);for(const r of t)if(typeof n=="string"?n.startsWith(r.base64Prefix):n.length>=r.bytesPrefix.length&&r.bytesPrefix.every((s,a)=>n[a]===s))return r.mediaType}function uMe(e,t){let n;const r=e.type;switch(r){case"image":n=e.image;break;case"file":n=e.data;break;default:throw new Error(`Unsupported part type: ${r}`)}const{data:s,mediaType:a}=zon(n);let i=a??e.mediaType,l=s;if(l instanceof URL&&t){const c=t[l.toString()];c&&(l=c.data,i??=c.mediaType)}switch(r){case"image":return(l instanceof Uint8Array||typeof l=="string")&&(i=Von({data:l,signatures:Bon})??i),{type:"file",mediaType:i??"image/*",filename:void 0,data:l,providerOptions:e.providerOptions};case"file":{if(i==null)throw new Error("Media type is missing for file part");return{type:"file",mediaType:i,filename:e.filename,data:l,providerOptions:e.providerOptions}}}}function dMe(e){const t=[];for(const n of e){const r=MP(n.url,n.contentType);let s=n.url;r.type==="raw"&&(s=Uye(n.url,n.contentType||"application/octet-stream"));let a;try{a=new URL(s)}catch{throw new Error(`Invalid URL: ${n.url}`)}switch(a.protocol){case"http:":case"https:":case"gs:":case"s3:":{if(n.contentType?.startsWith("image/"))t.push({type:"image",image:a.toString(),mimeType:n.contentType});else{if(!n.contentType)throw new Error("If the attachment is not an image, it must specify a content type");t.push({type:"file",data:a.toString(),mimeType:n.contentType})}break}case"data:":{if(n.contentType?.startsWith("image/"))t.push({type:"image",image:s,mimeType:n.contentType});else if(n.contentType?.startsWith("text/"))t.push({type:"file",data:s,mimeType:n.contentType});else{if(!n.contentType)throw new Error("If the attachment is not an image or text, it must specify a content type");t.push({type:"file",data:s,mimeType:n.contentType})}break}default:throw new Error(`Unsupported URL protocol: ${a.protocol}`)}}return t}var Hon=e=>{const t=new Map,n=/__split-\d+$/;return r=>{const s=e.at(-1);if(r.role===s?.role&&Array.isArray(s.content)&&Array.isArray(r.content)&&(r.role!=="assistant"||r.role==="assistant"&&r.content.at(-1)?.type!=="tool-call"))for(const a of r.content)s.content.push(a);else{let a=r.id;if(n.test(a)){e.push(r);return}const l=t.get(a)||0;l>0&&(r.id=`${a}__split-${l}`),t.set(a,l+1),e.push(r)}}};function IC(e){const t=[],n=Hon(t);for(let r=0;r<e.length;r++){const s=e[r],a=r===e.length-1;if(!s?.content)continue;const{content:i,experimental_attachments:l=[],parts:c}=s.content,{role:u}=s,d={id:s.id,createdAt:s.createdAt,resourceId:s.resourceId,threadId:s.threadId},f=[...l],p=[];for(const h of c)h.type==="file"?f.push({url:h.data,contentType:h.mimeType}):p.push(h);switch(u){case"user":{if(p==null){const h=f?[{type:"text",text:i||""},...dMe(f)]:{type:"text",text:i||""};n({role:"user",...d,type:"text",content:h})}else{const h=s.content.parts.filter(g=>g.type==="text").map(g=>({type:"text",text:g.text})),m=f?[...h,...dMe(f)]:h;n({role:"user",...d,type:"text",content:Array.isArray(m)&&m.length===1&&m[0]?.type==="text"&&typeof i<"u"?i:m})}break}case"assistant":{if(s.content.parts!=null){let g=function(){const k=[];for(const E of w)switch(E.type){case"file":case"text":{k.push(E);break}case"reasoning":{for(const j of E.details)switch(j.type){case"text":k.push({type:"reasoning",text:j.text,signature:j.signature});break;case"redacted":k.push({type:"redacted-reasoning",data:j.data});break}break}case"tool-invocation":E.toolInvocation.toolName!=="updateWorkingMemory"&&k.push({type:"tool-call",toolCallId:E.toolInvocation.toolCallId,toolName:E.toolInvocation.toolName,args:E.toolInvocation.args});break}n({role:"assistant",...d,type:k.some(E=>E.type==="tool-call")?"tool-call":"text",content:typeof k!="string"&&Array.isArray(k)&&k.length===1&&k[0]?.type==="text"?k[0].text:k});const C=w.filter(E=>"type"in E&&E.type==="tool-invocation").map(E=>E.toolInvocation).filter(E=>E.toolName!=="updateWorkingMemory").filter(E=>E.state==="result"&&"result"in E);C.length>0&&n({role:"tool",...d,type:"tool-result",content:C.map(E=>{const{toolCallId:j,toolName:N,result:I}=E;return{type:"tool-result",toolCallId:j,toolName:N,result:I}})}),w=[],b=!1,y++},y=0,b=!1,w=[];for(const k of s.content.parts)switch(k.type){case"text":{b&&g(),w.push(k);break}case"file":case"reasoning":{w.push(k);break}case"tool-invocation":{(w.some(C=>C.type==="text"||C.type==="file"||C.type==="reasoning")||(k.toolInvocation.step??0)!==y)&&g(),w.push(k),b=!0;break}}g();const S=s.content.toolInvocations;if(S&&S.length>0){const k=new Set;for(const C of s.content.parts)C.type==="tool-invocation"&&C.toolInvocation.toolCallId&&k.add(C.toolInvocation.toolCallId);const _=S.filter(C=>!k.has(C.toolCallId)&&C.toolName!=="updateWorkingMemory");if(_.length>0){const C=new Map;for(const j of _){const N=j.step??0;C.has(N)||C.set(N,[]),C.get(N).push(j)}const E=Array.from(C.keys()).sort((j,N)=>j-N);for(const j of E){const N=C.get(j);n({role:"assistant",...d,type:"tool-call",content:[...N.map(({toolCallId:P,toolName:$,args:F})=>({type:"tool-call",toolCallId:P,toolName:$,args:F}))]});const I=N.filter(P=>P.state==="result"&&"result"in P);I.length>0&&n({role:"tool",...d,type:"tool-result",content:I.map(P=>{const{toolCallId:$,toolName:F,result:D}=P;return{type:"tool-result",toolCallId:$,toolName:F,result:D}})})}}}break}const h=s.content.toolInvocations;if(h==null||h.length===0){n({role:"assistant",...d,content:i||"",type:"text"});break}const m=h.reduce((g,y)=>Math.max(g,y.step??0),0);for(let g=0;g<=m;g++){const y=h.filter(w=>(w.step??0)===g&&w.toolName!=="updateWorkingMemory");if(y.length===0)continue;n({role:"assistant",...d,type:"tool-call",content:[...a&&i&&g===0?[{type:"text",text:i}]:[],...y.map(({toolCallId:w,toolName:S,args:k})=>({type:"tool-call",toolCallId:w,toolName:S,args:k}))]});const b=y.filter(w=>w.state==="result"&&"result"in w);b.length>0&&n({role:"tool",...d,type:"tool-result",content:b.map(w=>{const{toolCallId:S,toolName:k,result:_}=w;return{type:"tool-result",toolCallId:S,toolName:k,result:_}})})}i&&!a&&n({role:"assistant",...d,type:"text",content:i||""});break}}}return t}function Won(e){return`${e.origin}${e.pathname}`}var Zon=async({url:e,downloadRetries:t})=>{const n=e.toString(),r=Won(e);try{const s=await $in(n,{method:"GET"},t,{shouldRetryResponse:a=>a.status>=500});if(!s.ok)throw new Kk({id:"DOWNLOAD_ASSETS_FAILED",text:`Failed to download asset: ${r}`,domain:qw.LLM,category:Vw.USER,details:{url:n}});return{data:new Uint8Array(await s.arrayBuffer()),mediaType:s.headers.get("content-type")??void 0}}catch(s){throw new Kk({id:"DOWNLOAD_ASSETS_FAILED",text:`Failed to download asset: ${r}`,domain:qw.LLM,category:Vw.USER,details:{url:n}},s)}};async function Gon({messages:e,downloadConcurrency:t=10,downloadRetries:n=3,supportedUrls:r}){const s=(await Eo(async()=>{const{default:c}=await import("./index-yUiD89B4.js");return{default:c}},[],import.meta.url)).default,a=e.filter(c=>c.role==="user").map(c=>c.content).filter(c=>Array.isArray(c)).flat().filter(c=>c.type==="image"||c.type==="file").map(c=>{const u=c.mediaType??(c.type==="image"?"image/*":void 0);let d=c.type==="image"?c.image:c.data;if(typeof d=="string")try{d=new URL(d)}catch{}return{mediaType:u,data:d}}).filter(c=>c.data instanceof URL).map(c=>({url:c.data,isUrlSupportedByModel:c.mediaType!=null&&Nin({url:c.data.toString(),mediaType:c.mediaType,supportedUrls:r??{}})})),l=(await s(a,async c=>c.isUrlSupportedByModel?null:{url:c.url.toString(),...await Zon({url:c.url,downloadRetries:n})},{concurrency:t})).filter(c=>c?.data!=null).map(({url:c,data:u,mediaType:d})=>[c,{data:u,mediaType:d}]);return Object.fromEntries(l)}function Qon(e){return{...e,createdAt:e.createdAt.toISOString()}}function Yon(e){return{...e,createdAt:new Date(e.createdAt)}}function Xon(e){return e.map(Qon)}function Kon(e){return e.map(Yon)}var Jon=class{memoryMessages=new Set;newUserMessages=new Set;newResponseMessages=new Set;userContextMessages=new Set;memoryMessagesPersisted=new Set;newUserMessagesPersisted=new Set;newResponseMessagesPersisted=new Set;userContextMessagesPersisted=new Set;addToSource(e,t){switch(t){case"memory":this.memoryMessages.add(e),this.memoryMessagesPersisted.add(e);break;case"response":this.memoryMessages.has(e)&&this.memoryMessages.delete(e),this.newResponseMessages.add(e),this.newResponseMessagesPersisted.add(e),this.newUserMessages.has(e)&&this.newUserMessages.delete(e);break;case"input":case"user":this.newUserMessages.add(e),this.newUserMessagesPersisted.add(e);break;case"context":this.userContextMessages.add(e),this.userContextMessagesPersisted.add(e);break;default:throw new Error(`Missing message source for message ${e}`)}}isMemoryMessage(e){return this.memoryMessages.has(e)}isUserMessage(e){return this.newUserMessages.has(e)}isResponseMessage(e){return this.newResponseMessages.has(e)}isContextMessage(e){return this.userContextMessages.has(e)}getMemoryMessages(){return this.memoryMessages}getUserMessages(){return this.newUserMessages}getResponseMessages(){return this.newResponseMessages}getContextMessages(){return this.userContextMessages}getMemoryMessagesPersisted(){return this.memoryMessagesPersisted}getUserMessagesPersisted(){return this.newUserMessagesPersisted}getResponseMessagesPersisted(){return this.newResponseMessagesPersisted}getContextMessagesPersisted(){return this.userContextMessagesPersisted}removeMessage(e){this.memoryMessages.delete(e),this.newUserMessages.delete(e),this.newResponseMessages.delete(e),this.userContextMessages.delete(e)}clearUserMessages(){this.newUserMessages.clear()}clearResponseMessages(){this.newResponseMessages.clear()}clearContextMessages(){this.userContextMessages.clear()}clearAll(){this.newUserMessages.clear(),this.newResponseMessages.clear(),this.userContextMessages.clear()}createSourceChecker(){const e={memory:new Set(Array.from(this.memoryMessages.values()).map(t=>t.id)),output:new Set(Array.from(this.newResponseMessages.values()).map(t=>t.id)),input:new Set(Array.from(this.newUserMessages.values()).map(t=>t.id)),context:new Set(Array.from(this.userContextMessages.values()).map(t=>t.id))};return{...e,getSource:t=>e.memory.has(t.id)?"memory":e.input.has(t.id)?"input":e.output.has(t.id)?"response":e.context.has(t.id)?"context":null}}isNewMessage(e){const t=typeof e=="string"?e:e.id;return typeof e!="string"&&(this.newUserMessages.has(e)||this.newResponseMessages.has(e))?!0:Array.from(this.newUserMessages).some(n=>n.id===t)||Array.from(this.newResponseMessages).some(n=>n.id===t)}serializeSourceTracking(){const e=t=>Array.from(t).map(n=>n.id);return{memoryMessages:e(this.memoryMessages),newUserMessages:e(this.newUserMessages),newResponseMessages:e(this.newResponseMessages),userContextMessages:e(this.userContextMessages),memoryMessagesPersisted:e(this.memoryMessagesPersisted),newUserMessagesPersisted:e(this.newUserMessagesPersisted),newResponseMessagesPersisted:e(this.newResponseMessagesPersisted),userContextMessagesPersisted:e(this.userContextMessagesPersisted)}}deserializeSourceTracking(e,t){const n=r=>new Set(r.map(s=>t.find(a=>a.id===s)).filter(Boolean));this.memoryMessages=n(e.memoryMessages),this.newUserMessages=n(e.newUserMessages),this.newResponseMessages=n(e.newResponseMessages),this.userContextMessages=n(e.userContextMessages),this.memoryMessagesPersisted=n(e.memoryMessagesPersisted),this.newUserMessagesPersisted=n(e.newUserMessagesPersisted),this.newResponseMessagesPersisted=n(e.newResponseMessagesPersisted),this.userContextMessagesPersisted=n(e.userContextMessagesPersisted)}serializeAll(e){return{messages:Xon(e.messages),systemMessages:e.systemMessages,taggedSystemMessages:e.taggedSystemMessages,memoryInfo:e.memoryInfo,_agentNetworkAppend:e.agentNetworkAppend,...this.serializeSourceTracking()}}deserializeAll(e){const t=Kon(e.messages);return this.deserializeSourceTracking({memoryMessages:e.memoryMessages,newUserMessages:e.newUserMessages,newResponseMessages:e.newResponseMessages,userContextMessages:e.userContextMessages,memoryMessagesPersisted:e.memoryMessagesPersisted,newUserMessagesPersisted:e.newUserMessagesPersisted,newResponseMessagesPersisted:e.newResponseMessagesPersisted,userContextMessagesPersisted:e.userContextMessagesPersisted},t),{messages:t,systemMessages:e.systemMessages,taggedSystemMessages:e.taggedSystemMessages,memoryInfo:e.memoryInfo,agentNetworkAppend:e._agentNetworkAppend}}};function eln(e){return e.role==="system"&&e.parts.length>0&&e.parts.every(t=>t.type.startsWith("data-"))}function WY(e){const t=[];for(let n=0;n<e.length;n++){const r=e[n];if(!eln(r)){t.push(r);continue}const s=t[t.length-1],a=e[n+1];s&&s.role==="assistant"?t[t.length-1]={...s,parts:[...s.parts,...r.parts]}:a&&a.role==="assistant"?e[n+1]={...a,parts:[...r.parts,...a.parts]}:t.push({...r,role:"assistant"})}return t}function fMe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function pMe(e,t){if(!e&&!t)return;const n={...e??{}};for(const[r,s]of Object.entries(t??{})){const a=n[r];n[r]=fMe(a)&&fMe(s)?{...a,...s}:s}return n}var tln=class{messages=[];systemMessages=[];taggedSystemMessages={};memoryInfo=null;stateManager=new Jon;get memoryMessages(){return this.stateManager.getMemoryMessages()}get newUserMessages(){return this.stateManager.getUserMessages()}get newResponseMessages(){return this.stateManager.getResponseMessages()}get userContextMessages(){return this.stateManager.getContextMessages()}get memoryMessagesPersisted(){return this.stateManager.getMemoryMessagesPersisted()}get newUserMessagesPersisted(){return this.stateManager.getUserMessagesPersisted()}get newResponseMessagesPersisted(){return this.stateManager.getResponseMessagesPersisted()}get userContextMessagesPersisted(){return this.stateManager.getContextMessagesPersisted()}generateMessageId;_agentNetworkAppend=!1;filterIncompleteToolCalls;logger;toAIV5UIMessages(t,n){return WY(t.map(r=>Nv.toUIMessage(r,n)))}toAIV4UIMessages(t,n){return WY(t.map(r=>_w.toUIMessage(r,n)))}toAIV6UIMessages(t){return WY(t.map(KF.toUIMessage))}isRecording=!1;recordedEvents=[];constructor({threadId:t,resourceId:n,generateMessageId:r,logger:s,filterIncompleteToolCalls:a,_agentNetworkAppend:i}={}){t&&(this.memoryInfo={threadId:t,resourceId:n}),this.generateMessageId=r,this.logger=s,this.filterIncompleteToolCalls=a??!0,this._agentNetworkAppend=i||!1}startRecording(){this.isRecording=!0,this.recordedEvents=[]}hasRecordedEvents(){return this.recordedEvents.length>0}getRecordedEvents(){return[...this.recordedEvents]}stopRecording(){this.isRecording=!1;const t=this.getRecordedEvents();return this.recordedEvents=[],t}addSignal(t,n){const r=n?.source??"input",s=this.generateCreatedAt(r,new Date),a=t.acceptedAt??t.createdAt,i=flt({id:t.id,type:t.type,tagName:t.tagName,contents:t.contents,attributes:t.attributes,metadata:t.metadata,providerOptions:t.providerOptions,createdAt:s,acceptedAt:a});return this.addOne(i.toDBMessage(this.memoryInfo??void 0),r),i}add(t,n,r={}){if(n==="user"&&(n="input"),!t)return this;const s=Array.isArray(t)?t:[t];this.isRecording&&this.recordedEvents.push({type:"add",source:n,count:s.length});for(const a of s){if(eMe(a)&&n==="input"){this.addSignal(a,{source:n});continue}const i=eMe(a)?a.toDBMessage(this.memoryInfo??void 0):typeof a=="string"?{role:"user",content:a}:a;if(Array.isArray(i)){for(const l of i)this.addOne(typeof l=="string"?{role:"user",content:l}:l,n,r);continue}this.addOne(typeof i=="string"?{role:"user",content:i}:i,n,r)}return this}serialize(){return this.stateManager.serializeAll({messages:this.messages,systemMessages:this.systemMessages,taggedSystemMessages:this.taggedSystemMessages,memoryInfo:this.memoryInfo,agentNetworkAppend:this._agentNetworkAppend})}serializeForSpan(){return{messages:this.all.aiV4.core().map(n=>({role:n.role,content:n.content})),systemMessages:[...this.systemMessages.map(n=>({role:n.role,content:n.content})),...Object.entries(this.taggedSystemMessages).flatMap(([n,r])=>r.map(s=>({role:s.role,content:s.content,tag:n})))]}}deserialize(t){const n=this.stateManager.deserializeAll(t);this.messages=n.messages,this.systemMessages=n.systemMessages,this.taggedSystemMessages=n.taggedSystemMessages,this.memoryInfo=n.memoryInfo,this._agentNetworkAppend=n.agentNetworkAppend;for(const r of this.messages)this.updateLastCreatedAt(r);return this}getMessagesForModelPrompt(){return this.messages.flatMap(t=>t.role!=="signal"?[t]:this.convertSignalForModelPrompt(t))}convertSignalForModelPrompt(t){const n=Gin(t).toLLMMessage(),r=t.createdAt,s={...n,id:t.id,metadata:{createdAt:r}};return[oMe(s,"input",{memoryInfo:this.memoryInfo,newMessageId:()=>t.id,generateCreatedAt:(a,i)=>i instanceof Date?i:typeof i=="string"||typeof i=="number"?new Date(i):r,dbMessages:this.messages})]}makeMessageSourceChecker(){return this.stateManager.createSourceChecker()}getLatestUserContent(){const n=this.all.core().filter(r=>r.role==="user").at(-1)?.content;return n?Con(n):null}get get(){return{all:this.all,remembered:this.remembered,input:this.input,response:this.response}}get getPersisted(){return{remembered:this.rememberedPersisted,input:this.inputPersisted,taggedSystemMessages:this.taggedSystemMessages,response:this.responsePersisted}}get clear(){return{all:{db:()=>{const t=[...this.messages];return this.messages=[],this.stateManager.clearAll(),this.isRecording&&t.length>0&&this.recordedEvents.push({type:"clear",count:t.length}),t}},input:{db:()=>{const t=Array.from(this.stateManager.getUserMessages());return this.messages=this.messages.filter(n=>!this.stateManager.isUserMessage(n)),this.stateManager.clearUserMessages(),this.isRecording&&t.length>0&&this.recordedEvents.push({type:"clear",source:"input",count:t.length}),t}},response:{db:()=>{const t=Array.from(this.stateManager.getResponseMessages());return this.messages=this.messages.filter(n=>!this.stateManager.isResponseMessage(n)),this.stateManager.clearResponseMessages(),this.isRecording&&t.length>0&&this.recordedEvents.push({type:"clear",source:"response",count:t.length}),t}}}}removeByIds(t){const n=new Set(t),r=[];return this.messages=this.messages.filter(s=>n.has(s.id)?(r.push(s),this.stateManager.removeMessage(s),!1):!0),this.isRecording&&r.length>0&&this.recordedEvents.push({type:"removeByIds",ids:t,count:r.length}),r}all={db:()=>this.messages,v1:()=>IC(this.all.db()),aiV5:{model:()=>{const t=this.getMessagesForModelPrompt();return dv(this.toAIV5UIMessages(t,{transformToolPayloads:!1}),t)},ui:()=>this.toAIV5UIMessages(this.all.db()),prompt:()=>{const t=lMe([...this.systemMessages,...Object.values(this.taggedSystemMessages).flat()],"system",this.createAdapterContext(),this.messages),n=this.getMessagesForModelPrompt(),r=dv(this.toAIV5UIMessages(n,{transformToolPayloads:!1}),n,this.filterIncompleteToolCalls),s=[...t,...r];return cL(s,this.logger)},llmPrompt:async(t={downloadConcurrency:10,downloadRetries:3})=>{const n=this.getMessagesForModelPrompt(),r=dv(this.toAIV5UIMessages(n,{transformToolPayloads:!1}),n,this.filterIncompleteToolCalls),s=new Map;for(const u of this.messages)if(!(u.content?.format!==2||!u.content.parts))for(const d of u.content.parts)d.type==="tool-invocation"&&d.toolInvocation?.state==="result"&&d.providerMetadata?.mastra&&typeof d.providerMetadata.mastra=="object"&&"modelOutput"in d.providerMetadata.mastra&&s.set(d.toolInvocation.toolCallId,d.providerMetadata.mastra.modelOutput);if(s.size>0){for(const u of r)if(!(u.role!=="tool"||!Array.isArray(u.content)))for(let d=0;d<u.content.length;d++){const f=u.content[d];f.type==="tool-result"&&s.has(f.toolCallId)&&(u.content[d]={...f,output:s.get(f.toolCallId)})}}const a=lMe([...this.systemMessages,...Object.values(this.taggedSystemMessages).flat()],"system",this.createAdapterContext(),this.messages),i=await Gon({messages:r,downloadConcurrency:t?.downloadConcurrency,downloadRetries:t?.downloadRetries,supportedUrls:t?.supportedUrls});let l=[...a,...r];return r.some(u=>(u.role==="user"||u.role==="assistant")&&typeof u.content!="string"&&u.content.some(d=>d.type==="image"||d.type==="file"))&&(l=l.map(u=>{if(u.role==="user")return typeof u.content=="string"?{role:"user",content:[{type:"text",text:u.content}],providerOptions:u.providerOptions}:{role:"user",content:u.content.map(f=>f.type==="image"||f.type==="file"?uMe(f,i):f).filter(f=>f.type!=="text"||f.text!==""),providerOptions:u.providerOptions};if(u.role==="assistant"&&typeof u.content!="string"){const d=u.content.map(f=>f.type==="file"?uMe(f,i):f);return{...u,content:d}}return u})),l=cL(l,this.logger),l.map(Oon).filter(u=>u.role==="system"||typeof u.content=="string"||u.content.length>0)}},aiV6:{ui:()=>this.toAIV6UIMessages(this.all.db()),llmPrompt:async t=>_on(await this.all.aiV5.llmPrompt(t))},prompt:()=>this.all.aiV4.prompt(),ui:()=>this.toAIV4UIMessages(this.all.db()),core:()=>uh(this.toAIV4UIMessages(this.all.db(),{transformToolPayloads:!1})),aiV4:{ui:()=>this.toAIV4UIMessages(this.all.db()),core:()=>uh(this.toAIV4UIMessages(this.getMessagesForModelPrompt(),{transformToolPayloads:!1})),prompt:()=>{const t=this.all.aiV4.core(),n=[...this.systemMessages,...Object.values(this.taggedSystemMessages).flat(),...t];return cL(n,this.logger)},llmPrompt:()=>{const t=this.all.aiV4.core();let r=[...[...this.systemMessages,...Object.values(this.taggedSystemMessages).flat()],...t];return r=cL(r,this.logger),r.map(kon)}}};remembered={db:()=>this.messages.filter(t=>this.memoryMessages.has(t)),v1:()=>IC(this.remembered.db()),aiV5:{model:()=>dv(this.toAIV5UIMessages(this.remembered.db(),{transformToolPayloads:!1}),this.messages),ui:()=>this.toAIV5UIMessages(this.remembered.db())},aiV6:{ui:()=>this.toAIV6UIMessages(this.remembered.db())},ui:()=>this.toAIV4UIMessages(this.remembered.db()),core:()=>uh(this.toAIV4UIMessages(this.remembered.db(),{transformToolPayloads:!1})),aiV4:{ui:()=>this.toAIV4UIMessages(this.remembered.db()),core:()=>uh(this.toAIV4UIMessages(this.remembered.db(),{transformToolPayloads:!1}))}};rememberedPersisted={db:()=>this.all.db().filter(t=>this.memoryMessagesPersisted.has(t)),v1:()=>IC(this.rememberedPersisted.db()),aiV5:{model:()=>dv(this.toAIV5UIMessages(this.rememberedPersisted.db(),{transformToolPayloads:!1}),this.messages),ui:()=>this.toAIV5UIMessages(this.rememberedPersisted.db())},aiV6:{ui:()=>this.toAIV6UIMessages(this.rememberedPersisted.db())},ui:()=>this.toAIV4UIMessages(this.rememberedPersisted.db()),core:()=>uh(this.toAIV4UIMessages(this.rememberedPersisted.db(),{transformToolPayloads:!1})),aiV4:{ui:()=>this.toAIV4UIMessages(this.rememberedPersisted.db()),core:()=>uh(this.toAIV4UIMessages(this.rememberedPersisted.db(),{transformToolPayloads:!1}))}};input={db:()=>this.messages.filter(t=>this.newUserMessages.has(t)),v1:()=>IC(this.input.db()),aiV5:{model:()=>dv(this.toAIV5UIMessages(this.input.db(),{transformToolPayloads:!1}),this.messages),ui:()=>this.toAIV5UIMessages(this.input.db())},aiV6:{ui:()=>this.toAIV6UIMessages(this.input.db())},ui:()=>this.toAIV4UIMessages(this.input.db()),core:()=>uh(this.toAIV4UIMessages(this.input.db(),{transformToolPayloads:!1})),aiV4:{ui:()=>this.toAIV4UIMessages(this.input.db()),core:()=>uh(this.toAIV4UIMessages(this.input.db(),{transformToolPayloads:!1}))}};inputPersisted={db:()=>this.messages.filter(t=>this.newUserMessagesPersisted.has(t)),v1:()=>IC(this.inputPersisted.db()),aiV5:{model:()=>dv(this.toAIV5UIMessages(this.inputPersisted.db(),{transformToolPayloads:!1}),this.messages),ui:()=>this.toAIV5UIMessages(this.inputPersisted.db())},aiV6:{ui:()=>this.toAIV6UIMessages(this.inputPersisted.db())},ui:()=>this.toAIV4UIMessages(this.inputPersisted.db()),core:()=>uh(this.toAIV4UIMessages(this.inputPersisted.db(),{transformToolPayloads:!1})),aiV4:{ui:()=>this.toAIV4UIMessages(this.inputPersisted.db()),core:()=>uh(this.toAIV4UIMessages(this.inputPersisted.db(),{transformToolPayloads:!1}))}};response={db:()=>this.messages.filter(t=>this.newResponseMessages.has(t)),v1:()=>IC(this.response.db()),aiV5:{ui:()=>this.toAIV5UIMessages(this.response.db()),model:()=>dv(this.toAIV5UIMessages(this.response.db(),{transformToolPayloads:!1}),this.messages).filter(t=>t.role==="tool"||t.role==="assistant"),modelContent:t=>typeof t=="number"?cMe.extractStepContent(this.response.aiV5.ui(),t,this.response.aiV5.stepContent):this.response.aiV5.model().map(this.response.aiV5.stepContent).flat(),stepContent:t=>cMe.convertToStepContent(t,this.messages,()=>this.response.aiV5.model().at(-1))},aiV6:{ui:()=>this.toAIV6UIMessages(this.response.db())},aiV4:{ui:()=>this.toAIV4UIMessages(this.response.db()),core:()=>uh(this.toAIV4UIMessages(this.response.db(),{transformToolPayloads:!1}))}};responsePersisted={db:()=>this.messages.filter(t=>this.newResponseMessagesPersisted.has(t)),aiV5:{model:()=>dv(this.toAIV5UIMessages(this.responsePersisted.db(),{transformToolPayloads:!1}),this.messages),ui:()=>this.toAIV5UIMessages(this.responsePersisted.db())},aiV6:{ui:()=>this.toAIV6UIMessages(this.responsePersisted.db())},ui:()=>this.toAIV4UIMessages(this.responsePersisted.db()),aiV4:{ui:()=>this.toAIV4UIMessages(this.responsePersisted.db()),core:()=>uh(this.toAIV4UIMessages(this.responsePersisted.db(),{transformToolPayloads:!1}))}};drainUnsavedMessages(){const t=this.messages.filter(n=>this.newUserMessages.has(n)||this.newResponseMessages.has(n));return this.newUserMessages.clear(),this.newResponseMessages.clear(),t.map(n=>this.transformMessageForTranscript(n))}transformToolStateDataForTranscript(t,n){if(!t||typeof t!="object")return t;const r=t,s=r.metadata??r.providerMetadata,a=Km(s,"transcript",n),i=Km(s,"transcript","input-available"),l=n==="approval"?gu(a)?a.transformed:gu(i)?i.transformed:void 0:gu(i)?i.transformed:gu(a)?a.transformed:void 0,c=n==="suspend"&&gu(a)?a.transformed:void 0;return{...r,...l!==void 0?{args:l}:{},...c!==void 0?{suspendPayload:c}:{}}}transformMessageForTranscript(t){if(t.content?.format!==2||!t.content.parts)return t;let n=!1;const r=new Map,s=t.content.parts.map(l=>{if(l.type==="tool-invocation"&&l.toolInvocation){const c=Km(l.providerMetadata,"transcript","input-available"),u=l.toolInvocation.state==="result"?Km(l.providerMetadata,"transcript","output-available")??Km(l.providerMetadata,"transcript","error"):l.toolInvocation.state==="output-error"?Km(l.providerMetadata,"transcript","error"):void 0;if(!c&&!u)return l;n=!0;const d=gu(c)?c.transformed:l.toolInvocation.args,f=l.toolInvocation.state==="result"?gu(u)?u.transformed:l.toolInvocation.result:void 0,p=l.toolInvocation.state==="output-error"?gu(u)?u.transformed:l.toolInvocation.errorText:void 0;return r.set(l.toolInvocation.toolCallId,{args:d,...l.toolInvocation.state==="result"?{result:f}:{},...l.toolInvocation.state==="output-error"?{errorText:p}:{}}),{...l,toolInvocation:{...l.toolInvocation,args:d,...l.toolInvocation.state==="result"?{result:f}:{},...l.toolInvocation.state==="output-error"?{errorText:p}:{}}}}return l.type==="data-tool-call-suspended"||l.type==="data-tool-call-approval"?(n=!0,{...l,data:this.transformToolStateDataForTranscript(l.data,l.type==="data-tool-call-suspended"?"suspend":"approval")}):l}),a=t.content.toolInvocations?.map(l=>{const c=r.get(l.toolCallId);if(!c)return l;const u=l.state;return n=!0,{...l,...c.args!==void 0?{args:c.args}:{},...l.state==="result"&&c.result!==void 0?{result:c.result}:{},...u==="output-error"&&c.errorText!==void 0?{errorText:c.errorText}:{}}}),i=t.content.metadata&&typeof t.content.metadata=="object"?{...t.content.metadata}:t.content.metadata;if(i&&typeof i=="object")for(const[l,c]of[["suspendedTools","suspend"],["pendingToolApprovals","approval"]]){const u=i[l];!u||typeof u!="object"||(n=!0,i[l]=Object.fromEntries(Object.entries(u).map(([d,f])=>[d,this.transformToolStateDataForTranscript(f,c)])))}return n?{...t,content:{...t.content,parts:s,...a?{toolInvocations:a}:{},...i?{metadata:i}:{}}}:t}getEarliestUnsavedMessageTimestamp(){const t=this.messages.filter(n=>this.newUserMessages.has(n)||this.newResponseMessages.has(n));if(t.length!==0)return Math.min(...t.map(n=>new Date(n.createdAt).getTime()))}isNewMessage(t){return this.stateManager.isNewMessage(t)}updateToolInvocation(t,n){if(!t.toolInvocation?.toolCallId)return!1;const r=t.toolInvocation.toolCallId;for(let s=this.messages.length-1;s>=0;s--){const a=this.messages[s];if(!(a.role!=="assistant"||!a.content?.parts))for(let i=0;i<a.content.parts.length;i++){const l=a.content.parts[i];if(l?.type==="tool-invocation"&&l.toolInvocation?.toolCallId===r){const c=l,u=t,d=c.providerMetadata!==void 0||u.providerMetadata!==void 0?{...c.providerMetadata??{},...u.providerMetadata??{}}:void 0;a.content.parts[i]={...t,toolInvocation:{...t.toolInvocation,args:l.toolInvocation.args},...c.providerExecuted!==void 0&&u.providerExecuted===void 0?{providerExecuted:c.providerExecuted}:{},...d!==void 0?{providerMetadata:d}:{}},this.lastCreatedAt=Math.max(this.lastCreatedAt||0,Date.now()),this.updateLastCreatedAt(a);const f=a.content.metadata??{},p=n??{},h=f.backgroundTasks,m=p.backgroundTasks,g=pMe(h,m);return a.content.metadata={...f,...p,...g?{backgroundTasks:g}:{}},this.stateManager.isResponseMessage(a)||(this.stateManager.removeMessage(a),this.stateManager.addToSource(a,"response")),!0}}}return this.logger?.warn(`updateToolInvocation: no matching tool call found for toolCallId=${r}`),!1}updateMessageMetadataByToolCallId(t,n){if(!t)return!1;for(let r=this.messages.length-1;r>=0;r--){const s=this.messages[r];if(s.role!=="assistant"||!s.content?.parts||!s.content.parts.some(f=>f?.type==="tool-invocation"&&f.toolInvocation?.toolCallId===t))continue;const i=s.content.metadata??{},l=n??{},c=i.backgroundTasks,u=l.backgroundTasks,d=pMe(c,u);return s.content.metadata={...i,...l,...d?{backgroundTasks:d}:{}},this.lastCreatedAt=Math.max(this.lastCreatedAt||0,Date.now()),this.updateLastCreatedAt(s),this.stateManager.isResponseMessage(s)||(this.stateManager.removeMessage(s),this.stateManager.addToSource(s,"response")),!0}return this.logger?.warn(`updateMessageMetadataByToolCallId: no matching tool call found for toolCallId=${t}`),!1}stepStart(){const t=this.messages[this.messages.length-1];return!t||t.role!=="assistant"||!t.content?.parts||ob.isSealed(t)||t.content.parts[t.content.parts.length-1]?.type==="step-start"?!1:(t.content.parts.push(Hye({type:"step-start"})),this.stateManager.isResponseMessage(t)||(this.stateManager.removeMessage(t),this.stateManager.addToSource(t,"response")),!0)}markResponseMessageBoundary(t){const n=t?this.messages.find(r=>r.id===t):[...this.messages].reverse().find(r=>r.role==="assistant");return!n||n.role!=="assistant"?!1:(n.content.metadata={...n.content.metadata??{},mastra:{...n.content.metadata?.mastra??{},responseBoundary:!0}},this.stateManager.isResponseMessage(n)||(this.stateManager.removeMessage(n),this.stateManager.addToSource(n,"response")),!0)}enrichLastStepStart(t){const n=this.messages[this.messages.length-1];if(!n||n.role!=="assistant"||!n.content?.parts||ob.isSealed(n))return!1;for(let r=n.content.parts.length-1;r>=0;r--){const s=n.content.parts[r];if(s?.type==="step-start")return s.model?!1:(s.model=t,this.stateManager.isResponseMessage(n)||(this.stateManager.removeMessage(n),this.stateManager.addToSource(n,"response")),!0)}return!1}getSystemMessages(t){return t?this.taggedSystemMessages[t]||[]:this.systemMessages}getAllSystemMessages(){return[...this.systemMessages,...Object.values(this.taggedSystemMessages).flat()]}clearSystemMessages(t){return t?delete this.taggedSystemMessages[t]:this.systemMessages=[],this}replaceAllSystemMessages(t){this.systemMessages=[];for(const n of t)n.role==="system"&&this.systemMessages.push(n);return this}addSystem(t,n){if(!t)return this;for(const r of Array.isArray(t)?t:[t])this.addOneSystem(r,n);return this}addOneSystem(t,n){const r=Lon(t);if(r.role!=="system")throw new Error(`Expected role "system" but saw ${r.role} for message ${JSON.stringify(r,null,2)}`);n&&!this.isDuplicateSystem(r,n)?(this.taggedSystemMessages[n]||=[],this.taggedSystemMessages[n].push(r),this.isRecording&&this.recordedEvents.push({type:"addSystem",tag:n,message:r})):!n&&!this.isDuplicateSystem(r)&&(this.systemMessages.push(r),this.isRecording&&this.recordedEvents.push({type:"addSystem",message:r}))}isDuplicateSystem(t,n){return n?this.taggedSystemMessages[n]?this.taggedSystemMessages[n].some(r=>Ho.fromAIV4CoreMessageContent(r.content)===Ho.fromAIV4CoreMessageContent(t.content)):!1:this.systemMessages.some(r=>Ho.fromAIV4CoreMessageContent(r.content)===Ho.fromAIV4CoreMessageContent(t.content))}getMessageById(t){return this.messages.find(n=>n.id===t)}shouldReplaceMessage(t){if(!this.messages.length)return{exists:!1};if(!("id"in t)||!t?.id)return{exists:!1};const n=this.getMessageById(t.id);return n?{exists:!0,shouldReplace:!HY(n,t),id:n.id}:{exists:!1}}addOne(t,n,r={}){if((!("content"in t)||!t.content&&typeof t.content!="string")&&(!("parts"in t)||!t.parts))throw new Kk({id:"INVALID_MESSAGE_CONTENT",domain:qw.AGENT,category:Vw.USER,text:`Message with role "${t.role}" must have either a 'content' property (string or array) or a 'parts' property (array) that is not empty, null, or undefined. Received message: ${JSON.stringify(t,null,2)}`,details:{role:t.role,messageSource:n,hasContent:"content"in t,hasParts:"parts"in t}});if(t.role==="system"){if(n==="memory")return null;if(Ha.isAIV4CoreMessage(t)||Ha.isAIV6CoreMessage(t)||Ha.isAIV5CoreMessage(t)||Ha.isMastraDBMessage(t))return this.addSystem(t);throw new Kk({id:"INVALID_SYSTEM_MESSAGE_FORMAT",domain:qw.AGENT,category:Vw.USER,text:"Invalid system message format. System messages must be CoreMessage format with 'role' and 'content' properties. The content should be a string or valid content array.",details:{messageSource:n,receivedMessage:JSON.stringify(t,null,2)}})}const s=oMe(t,n,this.createAdapterContext()),a=s.role==="signal"?s.content.metadata?.signal:void 0;if(n==="input"&&s.role==="signal"&&!a?.acceptedAt){const b=a?.createdAt??s.createdAt.toISOString();s.createdAt=this.generateCreatedAt(n,s.createdAt),s.content.metadata={...s.content.metadata,signal:{...a,createdAt:s.createdAt.toISOString(),acceptedAt:b}}}const{exists:i,shouldReplace:l,id:c}=this.shouldReplaceMessage(s),u=this.messages.findLastIndex(b=>ob.isSealed(b)),d=this.messages.at(-1),f=this.messages.length-1,p=u===-1||f>u;if(n==="memory"){for(const b of this.messages)if(HY(b,s))return}const h=i&&c?this.messages.find(b=>b.id===c):void 0,m=!!h&&ob.isSealed(h),g=d?this.memoryMessages.has(d):!1;if(r.merge!==!1&&p&&!m&&ob.shouldMerge(d,s,n,g,this._agentNetworkAppend)&&d)ob.merge(d,s),this.updateLastCreatedAt(d),this.pushMessageToSource(d,n);else{let b=-1;l&&(b=this.messages.findIndex(S=>S.id===c));const w=b!==-1&&this.messages[b];if(l&&w){const S=u!==-1&&b<=u;if(ob.isSealed(w)){const k=w.content?.parts||[];let _=0;for(let j=k.length-1;j>=0;j--)if(k[j]?.metadata?.mastra?.sealedAt){_=j+1;break}_===0&&(_=k.length);const C=s.content.parts;let E;if(C.length<=_){if(HY(w,s))return this;E=C}else E=C.slice(_);E.length>0&&(s.id=this.generateMessageId?.({idType:"message",source:"memory"})??uo(),s.content.parts=E,s.createdAt<=w.createdAt&&(s.createdAt=new Date(w.createdAt.getTime()+1)),this.messages.push(s))}else if(S)s.id=this.generateMessageId?.({idType:"message",source:"memory"})??uo(),s.createdAt<=w.createdAt&&(s.createdAt=new Date(w.createdAt.getTime()+1)),this.messages.push(s);else{const k=this.memoryMessages.has(w);if(r.merge!==!1&&ob.shouldMerge(w,s,n,k,this._agentNetworkAppend))return ob.merge(w,s),this.updateLastCreatedAt(w),this.pushMessageToSource(w,n),this.messages.sort((C,E)=>C.createdAt.getTime()-E.createdAt.getTime()),this;this.messages[b]=s}}else i||this.messages.push(s);this.pushMessageToSource(s,n)}for(const b of this.messages)this.updateLastCreatedAt(b);return this.messages.sort((b,w)=>b.createdAt.getTime()-w.createdAt.getTime()),this}pushMessageToSource(t,n){this.stateManager.addToSource(t,n)}lastCreatedAt;updateLastCreatedAt(t){this.lastCreatedAt=Math.max(this.lastCreatedAt||0,t.createdAt.getTime())}generateCreatedAt(t,n){const r=n instanceof Date?n:typeof n=="string"||typeof n=="number"?new Date(n):void 0;if(r&&!this.lastCreatedAt)return this.lastCreatedAt=r.getTime(),r;if(r&&t==="memory")return r;const s=new Date,a=r?.getTime()||s.getTime(),i=this.lastCreatedAt||0;if(a<=i){const l=new Date(i+1);return this.lastCreatedAt=l.getTime(),l}return this.lastCreatedAt=a,r??s}newMessageId(t){return this.generateMessageId?this.generateMessageId({idType:"message",source:"agent",threadId:this.memoryInfo?.threadId,resourceId:this.memoryInfo?.resourceId,role:t}):uo()}createAdapterContext(){return{memoryInfo:this.memoryInfo,newMessageId:()=>this.newMessageId(),generateCreatedAt:(t,n)=>this.generateCreatedAt(t,n),dbMessages:this.messages}}};const nln=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),rln=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase()),hMe=e=>{const t=rln(e);return t.charAt(0).toUpperCase()+t.slice(1)},vlt=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim(),sln=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0};var aln={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const iln=v.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:s="",children:a,iconNode:i,...l},c)=>v.createElement("svg",{ref:c,...aln,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:vlt("lucide",s),...!a&&!sln(l)&&{"aria-hidden":"true"},...l},[...i.map(([u,d])=>v.createElement(u,d)),...Array.isArray(a)?a:[a]]));const Xe=(e,t)=>{const n=v.forwardRef(({className:r,...s},a)=>v.createElement(iln,{ref:a,iconNode:t,className:vlt(`lucide-${nln(hMe(e))}`,`lucide-${e}`,r),...s}));return n.displayName=hMe(e),n};const oln=[["path",{d:"M15 12H3",key:"6jk70r"}],["path",{d:"M17 18H3",key:"1amg6g"}],["path",{d:"M21 6H3",key:"1jwq7v"}]],ylt=Xe("align-left",oln);const lln=[["path",{d:"M17.5 12c0 4.4-3.6 8-8 8A4.5 4.5 0 0 1 5 15.5c0-6 8-4 8-8.5a3 3 0 1 0-6 0c0 3 2.5 8.5 12 13",key:"1o9ehi"}],["path",{d:"M16 12h3",key:"4uvgyw"}]],cln=Xe("ampersand",lln);const uln=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],dln=Xe("arrow-down",uln);const fln=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],Ec=Xe("arrow-left",fln);const pln=[["path",{d:"M17 12H3",key:"8awo09"}],["path",{d:"m11 18 6-6-6-6",key:"8c2y43"}],["path",{d:"M21 5v14",key:"nzette"}]],blt=Xe("arrow-right-to-line",pln);const hln=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]],hm=Xe("arrow-right",hln);const mln=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],l3=Xe("arrow-up",mln);const gln=[["path",{d:"M2 10v3",key:"1fnikh"}],["path",{d:"M6 6v11",key:"11sgs0"}],["path",{d:"M10 3v18",key:"yhl04a"}],["path",{d:"M14 8v7",key:"3a1oy3"}],["path",{d:"M18 5v13",key:"123xd1"}],["path",{d:"M22 10v3",key:"154ddg"}]],vln=Xe("audio-lines",gln);const yln=[["path",{d:"m15.477 12.89 1.515 8.526a.5.5 0 0 1-.81.47l-3.58-2.687a1 1 0 0 0-1.197 0l-3.586 2.686a.5.5 0 0 1-.81-.469l1.514-8.526",key:"1yiouv"}],["circle",{cx:"12",cy:"8",r:"6",key:"1vp47v"}]],bln=Xe("award",yln);const xln=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m4.9 4.9 14.2 14.2",key:"1m5liu"}]],wln=Xe("ban",xln);const Sln=[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]],kln=Xe("bell",Sln);const Oln=[["path",{d:"M10 22V7a1 1 0 0 0-1-1H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5a1 1 0 0 0-1-1H2",key:"1ah6g2"}],["rect",{x:"14",y:"2",width:"8",height:"8",rx:"1",key:"88lufb"}]],xlt=Xe("blocks",Oln);const _ln=[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]],wlt=Xe("book-open",_ln);const Cln=[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}]],Slt=Xe("book",Cln);const Eln=[["path",{d:"m19 21-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v16z",key:"1fy3hk"}],["line",{x1:"12",x2:"12",y1:"7",y2:"13",key:"1cppfj"}],["line",{x1:"15",x2:"9",y1:"10",y2:"10",key:"1gty7f"}]],jln=Xe("bookmark-plus",Eln);const Tln=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],ZY=Xe("bot",Tln);const Nln=[["path",{d:"M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1",key:"ezmyqa"}],["path",{d:"M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1",key:"e1hn23"}]],Sy=Xe("braces",Nln);const Iln=[["path",{d:"M16 3h3a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1h-3",key:"1kt8lf"}],["path",{d:"M8 21H5a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h3",key:"gduv9"}]],Aln=Xe("brackets",Iln);const Rln=[["path",{d:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z",key:"l5xja"}],["path",{d:"M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z",key:"ep3f8r"}],["path",{d:"M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4",key:"1p4c4q"}],["path",{d:"M17.599 6.5a3 3 0 0 0 .399-1.375",key:"tmeiqw"}],["path",{d:"M6.003 5.125A3 3 0 0 0 6.401 6.5",key:"105sqy"}],["path",{d:"M3.477 10.896a4 4 0 0 1 .585-.396",key:"ql3yin"}],["path",{d:"M19.938 10.5a4 4 0 0 1 .585.396",key:"1qfode"}],["path",{d:"M6 18a4 4 0 0 1-1.967-.516",key:"2e4loj"}],["path",{d:"M19.967 17.484A4 4 0 0 1 18 18",key:"159ez6"}]],Iv=Xe("brain",Rln);const Pln=[["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",ry:"2",key:"76otgf"}],["path",{d:"M9 22v-4h6v4",key:"r93iot"}],["path",{d:"M8 6h.01",key:"1dz90k"}],["path",{d:"M16 6h.01",key:"1x0f13"}],["path",{d:"M12 6h.01",key:"1vi96p"}],["path",{d:"M12 10h.01",key:"1nrarc"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 10h.01",key:"1m94wz"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 10h.01",key:"19clt8"}],["path",{d:"M8 14h.01",key:"6423bh"}]],klt=Xe("building",Pln);const $ln=[["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["line",{x1:"8",x2:"16",y1:"6",y2:"6",key:"x4nwl0"}],["line",{x1:"16",x2:"16",y1:"14",y2:"18",key:"wjye3r"}],["path",{d:"M16 10h.01",key:"1m94wz"}],["path",{d:"M12 10h.01",key:"1nrarc"}],["path",{d:"M8 10h.01",key:"19clt8"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M8 18h.01",key:"lrp35t"}]],Mln=Xe("calculator",$ln);const Dln=[["path",{d:"M11 14h1v4",key:"fy54vd"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 2v4",key:"1cmpym"}],["rect",{x:"3",y:"4",width:"18",height:"18",rx:"2",key:"12vinp"}]],Olt=Xe("calendar-1",Dln);const Lln=[["path",{d:"M21 7.5V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h3.5",key:"1osxxc"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M3 10h5",key:"r794hk"}],["path",{d:"M17.5 17.5 16 16.3V14",key:"akvzfd"}],["circle",{cx:"16",cy:"16",r:"6",key:"qoo3c4"}]],c3=Xe("calendar-clock",Lln);const Fln=[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]],_lt=Xe("calendar",Fln);const zln=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Js=Xe("check",zln);const Bln=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],va=Xe("chevron-down",Bln);const Uln=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],Clt=Xe("chevron-left",Uln);const qln=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],la=Xe("chevron-right",qln);const Vln=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],i_=Xe("chevron-up",Vln);const Hln=[["path",{d:"m7 20 5-5 5 5",key:"13a0gw"}],["path",{d:"m7 4 5 5 5-5",key:"1kwcof"}]],Elt=Xe("chevrons-down-up",Hln);const Wln=[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]],jlt=Xe("chevrons-up-down",Wln);const Zln=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],Vj=Xe("circle-alert",Zln);const Gln=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],sO=Xe("circle-check-big",Gln);const Qln=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],KU=Xe("circle-check",Qln);const Yln=[["path",{d:"M10.1 2.182a10 10 0 0 1 3.8 0",key:"5ilxe3"}],["path",{d:"M13.9 21.818a10 10 0 0 1-3.8 0",key:"11zvb9"}],["path",{d:"M17.609 3.721a10 10 0 0 1 2.69 2.7",key:"1iw5b2"}],["path",{d:"M2.182 13.9a10 10 0 0 1 0-3.8",key:"c0bmvh"}],["path",{d:"M20.279 17.609a10 10 0 0 1-2.7 2.69",key:"1ruxm7"}],["path",{d:"M21.818 10.1a10 10 0 0 1 0 3.8",key:"qkgqxc"}],["path",{d:"M3.721 6.391a10 10 0 0 1 2.7-2.69",key:"1mcia2"}],["path",{d:"M6.391 20.279a10 10 0 0 1-2.69-2.7",key:"1fvljs"}]],Xln=Xe("circle-dashed",Yln);const Kln=[["path",{d:"M15.6 2.7a10 10 0 1 0 5.7 5.7",key:"1e0p6d"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}],["path",{d:"M13.4 10.6 19 5",key:"1kr7tw"}]],Jln=Xe("circle-gauge",Kln);const ecn=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"10",x2:"10",y1:"15",y2:"9",key:"c1nkhi"}],["line",{x1:"14",x2:"14",y1:"15",y2:"9",key:"h65svq"}]],JU=Xe("circle-pause",ecn);const tcn=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polygon",{points:"10 8 16 12 10 16 10 8",key:"1cimsy"}]],Wye=Xe("circle-play",tcn);const ncn=[["path",{d:"M22 2 2 22",key:"y4kqgn"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],rcn=Xe("circle-slash-2",ncn);const scn=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"9",x2:"15",y1:"15",y2:"9",key:"1dfufj"}]],xf=Xe("circle-slash",scn);const acn=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["rect",{x:"9",y:"9",width:"6",height:"6",rx:"1",key:"1ssd4o"}]],Tlt=Xe("circle-stop",acn);const icn=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],DP=Xe("circle-x",icn);const ocn=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],lcn=Xe("circle",ocn);const ccn=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"m9 14 2 2 4-4",key:"df797q"}]],eq=Xe("clipboard-check",ccn);const ucn=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16.5 12",key:"1aq6pp"}]],dcn=Xe("clock-3",ucn);const fcn=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]],aO=Xe("clock",fcn);const pcn=[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"m8 17 4-4 4 4",key:"1quai1"}]],Nlt=Xe("cloud-upload",pcn);const hcn=[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]],GY=Xe("cloud",hcn);const mcn=[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]],gcn=Xe("code",mcn);const vcn=[["path",{d:"M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z",key:"sobvz5"}],["path",{d:"M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z",key:"11i496"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 22v-2",key:"1osdcq"}],["path",{d:"m17 20.66-1-1.73",key:"eq3orb"}],["path",{d:"M11 10.27 7 3.34",key:"16pf9h"}],["path",{d:"m20.66 17-1.73-1",key:"sg0v6f"}],["path",{d:"m3.34 7 1.73 1",key:"1ulond"}],["path",{d:"M14 12h8",key:"4f43i9"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"m20.66 7-1.73 1",key:"1ow05n"}],["path",{d:"m3.34 17 1.73-1",key:"nuk764"}],["path",{d:"m17 3.34-1 1.73",key:"2wel8s"}],["path",{d:"m11 13.73-4 6.93",key:"794ttg"}]],ycn=Xe("cog",vcn);const bcn=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M12 3v18",key:"108xh3"}]],Ilt=Xe("columns-2",bcn);const xcn=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],Rp=Xe("copy",xcn);const wcn=[["path",{d:"m15 10 5 5-5 5",key:"qqa56n"}],["path",{d:"M4 4v7a4 4 0 0 0 4 4h12",key:"z08zvw"}]],Scn=Xe("corner-down-right",wcn);const kcn=[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]],Zye=Xe("cpu",kcn);const Ocn=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],ay=Xe("database",Ocn);const _cn=[["path",{d:"M12 3v14",key:"7cf3v8"}],["path",{d:"M5 10h14",key:"elsbfy"}],["path",{d:"M5 21h14",key:"11awu3"}]],Ccn=Xe("diff",_cn);const Ecn=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],nf=Xe("download",Ecn);const jcn=[["path",{d:"M10 18a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H5a3 3 0 0 1-3-3 1 1 0 0 1 1-1z",key:"ioqxb1"}],["path",{d:"M13 10H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1l-.81 3.242a1 1 0 0 1-.97.758H8",key:"1rs59n"}],["path",{d:"M14 4h3a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-3",key:"105ega"}],["path",{d:"M18 6h4",key:"66u95g"}],["path",{d:"m5 10-2 8",key:"xt2lic"}],["path",{d:"m7 18 2-8",key:"1bzku2"}]],Tcn=Xe("drill",jcn);const Ncn=[["path",{d:"M21.54 15H17a2 2 0 0 0-2 2v4.54",key:"1djwo0"}],["path",{d:"M7 3.34V5a3 3 0 0 0 3 3a2 2 0 0 1 2 2c0 1.1.9 2 2 2a2 2 0 0 0 2-2c0-1.1.9-2 2-2h3.17",key:"1tzkfa"}],["path",{d:"M11 21.95V18a2 2 0 0 0-2-2a2 2 0 0 1-2-2v-1a2 2 0 0 0-2-2H2.05",key:"14pb5j"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Icn=Xe("earth",Ncn);const Acn=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"12",cy:"5",r:"1",key:"gxeob9"}],["circle",{cx:"12",cy:"19",r:"1",key:"lyex9k"}]],u3=Xe("ellipsis-vertical",Acn);const Rcn=[["line",{x1:"5",x2:"19",y1:"9",y2:"9",key:"1nwqeh"}],["line",{x1:"5",x2:"19",y1:"15",y2:"15",key:"g8yjpy"}]],Pcn=Xe("equal",Rcn);const $cn=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],Pa=Xe("external-link",$cn);const Mcn=[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],Dcn=Xe("eye-off",Mcn);const Lcn=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],Zc=Xe("eye",Lcn);const Fcn=[["path",{d:"M17.5 22h.5a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v3",key:"rslqgf"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M2 19a2 2 0 1 1 4 0v1a2 2 0 1 1-4 0v-4a6 6 0 0 1 12 0v4a2 2 0 1 1-4 0v-1a2 2 0 1 1 4 0",key:"9f7x3i"}]],zcn=Xe("file-audio",Fcn);const Bcn=[["path",{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4",key:"1pf5j1"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"m5 12-3 3 3 3",key:"oke12k"}],["path",{d:"m9 18 3-3-3-3",key:"112psh"}]],Ucn=Xe("file-code-2",Bcn);const qcn=[["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7z",key:"1mlx9k"}]],pN=Xe("file-code",qcn);const Vcn=[["path",{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4",key:"1pf5j1"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M2 15h10",key:"jfw4w8"}],["path",{d:"m9 18 3-3-3-3",key:"112psh"}]],iO=Xe("file-input",Vcn);const Hcn=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1",key:"1oajmo"}],["path",{d:"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1",key:"mpwhp6"}]],hN=Xe("file-json",Hcn);const Wcn=[["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M4 7V4a2 2 0 0 1 2-2 2 2 0 0 0-2 2",key:"1vk7w2"}],["path",{d:"M4.063 20.999a2 2 0 0 0 2 1L18 22a2 2 0 0 0 2-2V7l-5-5H6",key:"1jink5"}],["path",{d:"m5 11-3 3",key:"1dgrs4"}],["path",{d:"m5 17-3-3h10",key:"1mvvaf"}]],hg=Xe("file-output",Wcn);const Zcn=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],wc=Xe("file-text",Zcn);const Gcn=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"m10 11 5 3-5 3v-6Z",key:"7ntvm4"}]],Qcn=Xe("file-video",Gcn);const Ycn=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}]],Gye=Xe("file",Ycn);const Xcn=[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]],Alt=Xe("flask-conical",Xcn);const Kcn=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],mN=Xe("folder-open",Kcn);const Jcn=[["path",{d:"M2 7.5V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-1.5",key:"1yk7aj"}],["path",{d:"M2 13h10",key:"pgb2dq"}],["path",{d:"m5 10-3 3 3 3",key:"1r8ie0"}]],eun=Xe("folder-output",Jcn);const tun=[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],tq=Xe("folder-plus",tun);const nun=[["path",{d:"M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"hod4my"}],["path",{d:"M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"w4yl2u"}],["path",{d:"M3 5a2 2 0 0 0 2 2h3",key:"f2jnh7"}],["path",{d:"M3 3v13a2 2 0 0 0 2 2h3",key:"k8epm1"}]],run=Xe("folder-tree",nun);const sun=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],d3=Xe("folder",sun);const aun=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M16 16s-1.5-2-4-2-4 2-4 2",key:"epbg0q"}],["line",{x1:"9",x2:"9.01",y1:"9",y2:"9",key:"yxxnd0"}],["line",{x1:"15",x2:"15.01",y1:"9",y2:"9",key:"1p4y9e"}]],iun=Xe("frown",aun);const oun=[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]],Rlt=Xe("funnel",oun);const lun=[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]],em=Xe("gauge",lun);const cun=[["line",{x1:"6",x2:"6",y1:"3",y2:"15",key:"17qcm7"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M18 9a9 9 0 0 1-9 9",key:"n2h4wq"}]],Qye=Xe("git-branch",cun);const uun=[["circle",{cx:"5",cy:"6",r:"3",key:"1qnov2"}],["path",{d:"M12 6h5a2 2 0 0 1 2 2v7",key:"1yj91y"}],["path",{d:"m15 9-3-3 3-3",key:"1lwv8l"}],["circle",{cx:"19",cy:"18",r:"3",key:"1qljk2"}],["path",{d:"M12 18H7a2 2 0 0 1-2-2V9",key:"16sdep"}],["path",{d:"m9 15 3 3-3 3",key:"1m3kbl"}]],dun=Xe("git-compare-arrows",uun);const fun=[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M13 6h3a2 2 0 0 1 2 2v7",key:"1yeb86"}],["path",{d:"M11 18H8a2 2 0 0 1-2-2V9",key:"19pyzm"}]],Qw=Xe("git-compare",fun);const pun=[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M13 6h3a2 2 0 0 1 2 2v7",key:"1yeb86"}],["line",{x1:"6",x2:"6",y1:"9",y2:"21",key:"rroup"}]],Plt=Xe("git-pull-request",pun);const hun=[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]],$lt=Xe("github",hun);const mun=[["path",{d:"M15.686 15A14.5 14.5 0 0 1 12 22a14.5 14.5 0 0 1 0-20 10 10 0 1 0 9.542 13",key:"qkt0x6"}],["path",{d:"M2 12h8.5",key:"ovaggd"}],["path",{d:"M20 6V4a2 2 0 1 0-4 0v2",key:"1of5e8"}],["rect",{width:"8",height:"5",x:"14",y:"6",rx:"1",key:"1fmf51"}]],gun=Xe("globe-lock",mun);const vun=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],$x=Xe("globe",vun);const yun=[["path",{d:"M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z",key:"j76jl0"}],["path",{d:"M22 10v6",key:"1lu8f3"}],["path",{d:"M6 12.5V16a6 3 0 0 0 12 0v-3.5",key:"1r8lef"}]],Mlt=Xe("graduation-cap",yun);const bun=[["circle",{cx:"9",cy:"12",r:"1",key:"1vctgf"}],["circle",{cx:"9",cy:"5",r:"1",key:"hp0tcf"}],["circle",{cx:"9",cy:"19",r:"1",key:"fkjjf6"}],["circle",{cx:"15",cy:"12",r:"1",key:"1tmaij"}],["circle",{cx:"15",cy:"5",r:"1",key:"19l28e"}],["circle",{cx:"15",cy:"19",r:"1",key:"f4zoj3"}]],nq=Xe("grip-vertical",bun);const xun=[["line",{x1:"22",x2:"2",y1:"12",y2:"12",key:"1y58io"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}],["line",{x1:"6",x2:"6.01",y1:"16",y2:"16",key:"sgf278"}],["line",{x1:"10",x2:"10.01",y1:"16",y2:"16",key:"1l4acy"}]],Ude=Xe("hard-drive",xun);const wun=[["line",{x1:"4",x2:"20",y1:"9",y2:"9",key:"4lhtct"}],["line",{x1:"4",x2:"20",y1:"15",y2:"15",key:"vyu0kd"}],["line",{x1:"10",x2:"8",y1:"3",y2:"21",key:"1ggp8o"}],["line",{x1:"16",x2:"14",y1:"3",y2:"21",key:"weycgp"}]],mMe=Xe("hash",wun);const Sun=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],o_=Xe("history",Sun);const kun=[["path",{d:"M5 22h14",key:"ehvnwv"}],["path",{d:"M5 2h14",key:"pdyrp9"}],["path",{d:"M17 22v-4.172a2 2 0 0 0-.586-1.414L12 12l-4.414 4.414A2 2 0 0 0 7 17.828V22",key:"1d314k"}],["path",{d:"M7 2v4.172a2 2 0 0 0 .586 1.414L12 12l4.414-4.414A2 2 0 0 0 17 6.172V2",key:"1vvvr6"}]],qde=Xe("hourglass",kun);const Oun=[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"1d0kgt"}]],_un=Xe("house",Oun);const Cun=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]],Yye=Xe("image",Cun);const Eun=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],Mx=Xe("info",Eun);const jun=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]],Tun=Xe("key-round",jun);const Nun=[["rect",{width:"18",height:"12",x:"3",y:"4",rx:"2",ry:"2",key:"1qhy41"}],["line",{x1:"2",x2:"22",y1:"20",y2:"20",key:"ni3hll"}]],gMe=Xe("laptop-minimal",Nun);const Iun=[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]],rq=Xe("layers",Iun);const Aun=[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]],Run=Xe("layout-grid",Aun);const Pun=[["path",{d:"m16 6 4 14",key:"ji33uf"}],["path",{d:"M12 6v14",key:"1n7gus"}],["path",{d:"M8 8v12",key:"1gg7y9"}],["path",{d:"M4 4v16",key:"6qkkli"}]],LP=Xe("library",Pun);const $un=[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]],Mun=Xe("lightbulb",$un);const Dun=[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]],Lun=Xe("link-2",Dun);const Fun=[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",key:"1cjeqo"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",key:"19qd67"}]],Dlt=Xe("link",Fun);const zun=[["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["path",{d:"m3 7 2 2 4-4",key:"1obspn"}],["path",{d:"M13 6h8",key:"15sg57"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 18h8",key:"oe0vm4"}]],Llt=Xe("list-checks",zun);const Bun=[["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 18h.01",key:"1tta3j"}],["path",{d:"M3 6h.01",key:"1rqtza"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 18h13",key:"1lx6n3"}],["path",{d:"M8 6h13",key:"ik3vkj"}]],Vde=Xe("list",Bun);const Uun=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],ia=Xe("loader-circle",Uun);const qun=[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]],pf=Xe("lock",qun);const Vun=[["path",{d:"M8 3H5a2 2 0 0 0-2 2v3",key:"1dcmit"}],["path",{d:"M21 8V5a2 2 0 0 0-2-2h-3",key:"1e4gt3"}],["path",{d:"M3 16v3a2 2 0 0 0 2 2h3",key:"wsl5sc"}],["path",{d:"M16 21h3a2 2 0 0 0 2-2v-3",key:"18trek"}]],Hun=Xe("maximize",Vun);const Wun=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]],Zun=Xe("maximize-2",Wun);const Gun=[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Flt=Xe("message-circle-question-mark",Gun);const Qun=[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]],Hj=Xe("message-square",Qun);const Yun=[["path",{d:"M14 9a2 2 0 0 1-2 2H6l-4 4V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2z",key:"p1xzt8"}],["path",{d:"M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1",key:"1cx29u"}]],Xun=Xe("messages-square",Yun);const Kun=[["path",{d:"M12 19v3",key:"npa21l"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["rect",{x:"9",y:"2",width:"6",height:"13",rx:"3",key:"s6n7sd"}]],Jun=Xe("mic",Kun);const edn=[["path",{d:"m14 10 7-7",key:"oa77jy"}],["path",{d:"M20 10h-6V4",key:"mjg0md"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M4 14h6v6",key:"rmj7iw"}]],tdn=Xe("minimize-2",edn);const ndn=[["path",{d:"M5 12h14",key:"1ays0h"}]],rdn=Xe("minus",ndn);const sdn=[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]],zlt=Xe("monitor",sdn);const adn=[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]],idn=Xe("moon",adn);const odn=[["path",{d:"M11 19H5V13",key:"1akmht"}],["path",{d:"M19 5L5 19",key:"72u4yj"}]],ldn=Xe("move-down-left",odn);const cdn=[["path",{d:"M18 8L22 12L18 16",key:"1r0oui"}],["path",{d:"M2 12H22",key:"1m8cig"}]],Xye=Xe("move-right",cdn);const udn=[["path",{d:"M13 5H19V11",key:"1n1gyv"}],["path",{d:"M19 5L5 19",key:"72u4yj"}]],ddn=Xe("move-up-right",udn);const fdn=[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]],Blt=Xe("network",fdn);const pdn=[["path",{d:"M13.4 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7.4",key:"re6nr2"}],["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["path",{d:"M21.378 5.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"pqwjuv"}]],hdn=Xe("notebook-pen",pdn);const mdn=[["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z",key:"2d38gg"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],gdn=Xe("octagon-x",mdn);const vdn=[["path",{d:"M12 22v-9",key:"x3hkom"}],["path",{d:"M15.17 2.21a1.67 1.67 0 0 1 1.63 0L21 4.57a1.93 1.93 0 0 1 0 3.36L8.82 14.79a1.655 1.655 0 0 1-1.64 0L3 12.43a1.93 1.93 0 0 1 0-3.36z",key:"2ntwy6"}],["path",{d:"M20 13v3.87a2.06 2.06 0 0 1-1.11 1.83l-6 3.08a1.93 1.93 0 0 1-1.78 0l-6-3.08A2.06 2.06 0 0 1 4 16.87V13",key:"1pmm1c"}],["path",{d:"M21 12.43a1.93 1.93 0 0 0 0-3.36L8.83 2.2a1.64 1.64 0 0 0-1.63 0L3 4.57a1.93 1.93 0 0 0 0 3.36l12.18 6.86a1.636 1.636 0 0 0 1.63 0z",key:"12ttoo"}]],Ult=Xe("package-open",vdn);const ydn=[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]],Hv=Xe("package",ydn);const bdn=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]],xdn=Xe("panel-left",bdn);const wdn=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],vMe=Xe("paperclip",wdn);const Sdn=[["rect",{x:"14",y:"4",width:"4",height:"16",rx:"1",key:"zuxfzm"}],["rect",{x:"6",y:"4",width:"4",height:"16",rx:"1",key:"1okwgv"}]],qlt=Xe("pause",Sdn);const kdn=[["path",{d:"M12 20h9",key:"t2du7b"}],["path",{d:"M16.376 3.622a1 1 0 0 1 3.002 3.002L7.368 18.635a2 2 0 0 1-.855.506l-2.872.838a.5.5 0 0 1-.62-.62l.838-2.872a2 2 0 0 1 .506-.854z",key:"1ykcvy"}]],Odn=Xe("pen-line",kdn);const _dn=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]],Vlt=Xe("pen",_dn);const Cdn=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]],tm=Xe("pencil",Cdn);const Edn=[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]],Pp=Xe("play",Edn);const jdn=[["path",{d:"M12 22v-5",key:"1ega77"}],["path",{d:"M9 8V2",key:"14iosj"}],["path",{d:"M15 8V2",key:"18g5xt"}],["path",{d:"M18 8v5a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V8Z",key:"osxo6l"}]],Tdn=Xe("plug",jdn);const Ndn=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],Fr=Xe("plus",Ndn);const Idn=[["path",{d:"M16.247 7.761a6 6 0 0 1 0 8.478",key:"1fwjs5"}],["path",{d:"M19.075 4.933a10 10 0 0 1 0 14.134",key:"ehdyv1"}],["path",{d:"M4.925 19.067a10 10 0 0 1 0-14.134",key:"1q22gi"}],["path",{d:"M7.753 16.239a6 6 0 0 1 0-8.478",key:"r2q7qm"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]],Hlt=Xe("radio",Idn);const Adn=[["path",{d:"M4 2v20l2-1 2 1 2-1 2 1 2-1 2 1 2-1 2 1V2l-2 1-2-1-2 1-2-1-2 1-2-1-2 1Z",key:"q3az6g"}],["path",{d:"M14 8H8",key:"1l3xfs"}],["path",{d:"M16 12H8",key:"1fr5h0"}],["path",{d:"M13 16H8",key:"wsln4y"}]],xh=Xe("receipt-text",Adn);const Rdn=[["rect",{width:"20",height:"12",x:"2",y:"6",rx:"2",key:"9lu3g6"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M17 12h.01",key:"1m0b6t"}],["path",{d:"M7 12h.01",key:"eqddd0"}]],Kye=Xe("rectangle-ellipsis",Rdn);const Pdn=[["path",{d:"M21 12a9 9 0 0 0-9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"14sxne"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M3 12a9 9 0 0 0 9 9 9.75 9.75 0 0 0 6.74-2.74L21 16",key:"1hlbsb"}],["path",{d:"M16 16h5v5",key:"ccwih5"}]],$dn=Xe("refresh-ccw",Pdn);const Mdn=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],Yw=Xe("refresh-cw",Mdn);const Ddn=[["path",{d:"m17 2 4 4-4 4",key:"nntrym"}],["path",{d:"M3 11v-1a4 4 0 0 1 4-4h14",key:"84bu3i"}],["path",{d:"m7 22-4-4 4-4",key:"1wqhfi"}],["path",{d:"M21 13v1a4 4 0 0 1-4 4H3",key:"1rx37r"}],["path",{d:"M11 10h1v4",key:"70cz1p"}]],Ldn=Xe("repeat-1",Ddn);const Fdn=[["path",{d:"m17 2 4 4-4 4",key:"nntrym"}],["path",{d:"M3 11v-1a4 4 0 0 1 4-4h14",key:"84bu3i"}],["path",{d:"m7 22-4-4 4-4",key:"1wqhfi"}],["path",{d:"M21 13v1a4 4 0 0 1-4 4H3",key:"1rx37r"}]],zdn=Xe("repeat",Fdn);const Bdn=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],Wlt=Xe("rotate-ccw",Bdn);const Udn=[["circle",{cx:"6",cy:"19",r:"3",key:"1kj8tv"}],["path",{d:"M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15",key:"1d8sl"}],["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}]],Jye=Xe("route",Udn);const qdn=[["path",{d:"M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Z",key:"icamh8"}],["path",{d:"m14.5 12.5 2-2",key:"inckbg"}],["path",{d:"m11.5 9.5 2-2",key:"fmmyf7"}],["path",{d:"m8.5 6.5 2-2",key:"vc6u1g"}],["path",{d:"m17.5 15.5 2-2",key:"wo5hmg"}]],Vdn=Xe("ruler",qdn);const Hdn=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]],fd=Xe("save",Hdn);const Wdn=[["path",{d:"m16 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z",key:"7g6ntu"}],["path",{d:"m2 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z",key:"ijws7r"}],["path",{d:"M7 21h10",key:"1b0cd5"}],["path",{d:"M12 3v18",key:"108xh3"}],["path",{d:"M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2",key:"3gwbw2"}]],Zdn=Xe("scale",Wdn);const Gdn=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],yd=Xe("search",Gdn);const Qdn=[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]],yMe=Xe("send",Qdn);const Ydn=[["path",{d:"m10.852 14.772-.383.923",key:"11vil6"}],["path",{d:"M13.148 14.772a3 3 0 1 0-2.296-5.544l-.383-.923",key:"1v3clb"}],["path",{d:"m13.148 9.228.383-.923",key:"t2zzyc"}],["path",{d:"m13.53 15.696-.382-.924a3 3 0 1 1-2.296-5.544",key:"1bxfiv"}],["path",{d:"m14.772 10.852.923-.383",key:"k9m8cz"}],["path",{d:"m14.772 13.148.923.383",key:"1xvhww"}],["path",{d:"M4.5 10H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-.5",key:"tn8das"}],["path",{d:"M4.5 14H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2h-.5",key:"1g2pve"}],["path",{d:"M6 18h.01",key:"uhywen"}],["path",{d:"M6 6h.01",key:"1utrut"}],["path",{d:"m9.228 10.852-.923-.383",key:"1wtb30"}],["path",{d:"m9.228 13.148-.923.383",key:"1a830x"}]],Zlt=Xe("server-cog",Ydn);const Xdn=[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]],b9=Xe("server",Xdn);const Kdn=[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]],sq=Xe("settings-2",Kdn);const Jdn=[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],JF=Xe("settings",Jdn);const efn=[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]],Glt=Xe("share-2",efn);const tfn=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]],ebe=Xe("shield-alert",tfn);const nfn=[["line",{x1:"21",x2:"14",y1:"4",y2:"4",key:"obuewd"}],["line",{x1:"10",x2:"3",y1:"4",y2:"4",key:"1q6298"}],["line",{x1:"21",x2:"12",y1:"12",y2:"12",key:"1iu8h1"}],["line",{x1:"8",x2:"3",y1:"12",y2:"12",key:"ntss68"}],["line",{x1:"21",x2:"16",y1:"20",y2:"20",key:"14d8ph"}],["line",{x1:"12",x2:"3",y1:"20",y2:"20",key:"m0wm8r"}],["line",{x1:"14",x2:"14",y1:"2",y2:"6",key:"14e1ph"}],["line",{x1:"8",x2:"8",y1:"10",y2:"14",key:"1i6ji0"}],["line",{x1:"16",x2:"16",y1:"18",y2:"22",key:"1lctlv"}]],tbe=Xe("sliders-horizontal",nfn);const rfn=[["line",{x1:"4",x2:"4",y1:"21",y2:"14",key:"1p332r"}],["line",{x1:"4",x2:"4",y1:"10",y2:"3",key:"gb41h5"}],["line",{x1:"12",x2:"12",y1:"21",y2:"12",key:"hf2csr"}],["line",{x1:"12",x2:"12",y1:"8",y2:"3",key:"1kfi7u"}],["line",{x1:"20",x2:"20",y1:"21",y2:"16",key:"1lhrwl"}],["line",{x1:"20",x2:"20",y1:"12",y2:"3",key:"16vvfq"}],["line",{x1:"2",x2:"6",y1:"14",y2:"14",key:"1uebub"}],["line",{x1:"10",x2:"14",y1:"8",y2:"8",key:"1yglbp"}],["line",{x1:"18",x2:"22",y1:"16",y2:"16",key:"1jxqpz"}]],sfn=Xe("sliders-vertical",rfn);const afn=[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]],bg=Xe("sparkles",afn);const ifn=[["path",{d:"M21 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h6",key:"y09zxi"}],["path",{d:"m21 3-9 9",key:"mpx6sq"}],["path",{d:"M15 3h6v6",key:"1q9fwt"}]],ofn=Xe("square-arrow-out-up-right",ifn);const lfn=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M8 12h8",key:"1wcyev"}],["path",{d:"m12 16 4-4-4-4",key:"1i9zcv"}]],cfn=Xe("square-arrow-right",lfn);const ufn=[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]],dfn=Xe("square-terminal",ufn);const ffn=[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]],Wj=Xe("star",ffn);const pfn=[["line",{x1:"6",x2:"6",y1:"4",y2:"20",key:"fy8qot"}],["polygon",{points:"10,4 20,12 10,20",key:"1mc1pf"}]],Qlt=Xe("step-forward",pfn);const hfn=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]],mfn=Xe("sun",hfn);const gfn=[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]],gN=Xe("tag",gfn);const vfn=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]],nbe=Xe("target",vfn);const yfn=[["path",{d:"M17 14V2",key:"8ymqnk"}],["path",{d:"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z",key:"m61m77"}]],rbe=Xe("thumbs-down",yfn);const bfn=[["path",{d:"M7 10v12",key:"1qc93n"}],["path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z",key:"emmmcr"}]],sbe=Xe("thumbs-up",bfn);const xfn=[["line",{x1:"10",x2:"14",y1:"2",y2:"2",key:"14vaq8"}],["line",{x1:"12",x2:"15",y1:"14",y2:"11",key:"17fdiu"}],["circle",{cx:"12",cy:"14",r:"8",key:"1e1u0o"}]],Hde=Xe("timer",xfn);const wfn=[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]],eu=Xe("trash-2",wfn);const Sfn=[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}]],abe=Xe("trash",Sfn);const kfn=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],kp=Xe("triangle-alert",kfn);const Ofn=[["path",{d:"m19 5 3-3",key:"yk6iyv"}],["path",{d:"m2 22 3-3",key:"19mgm9"}],["path",{d:"M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z",key:"goz73y"}],["path",{d:"M7.5 13.5 10 11",key:"7xgeeb"}],["path",{d:"M10.5 16.5 13 14",key:"10btkg"}],["path",{d:"m12 6 6 6 2.3-2.3a2.4 2.4 0 0 0 0-3.4l-2.6-2.6a2.4 2.4 0 0 0-3.4 0Z",key:"1snsnr"}]],_fn=Xe("unplug",Ofn);const Cfn=[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]],aq=Xe("upload",Cfn);const Efn=[["path",{d:"m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72",key:"ul74o6"}],["path",{d:"m14 7 3 3",key:"1r5n42"}],["path",{d:"M5 6v4",key:"ilb8ba"}],["path",{d:"M19 14v4",key:"blhpug"}],["path",{d:"M10 2v2",key:"7u0qdc"}],["path",{d:"M7 8H3",key:"zfb6yr"}],["path",{d:"M21 16h-4",key:"1cnmox"}],["path",{d:"M11 3H9",key:"1obp7u"}]],Ylt=Xe("wand-sparkles",Efn);const jfn=[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]],iq=Xe("workflow",jfn);const Tfn=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]],nm=Xe("wrench",Tfn);const Nfn=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],vs=Xe("x",Nfn);const Ifn=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],ibe=Xe("zap",Ifn),Afn=(e,t)=>{const n=new Array(e.length+t.length);for(let r=0;r<e.length;r++)n[r]=e[r];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},Rfn=(e,t)=>({classGroupId:e,validator:t}),Xlt=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),ez="-",bMe=[],Pfn="arbitrary..",$fn=e=>{const t=Dfn(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:i=>{if(i.startsWith("[")&&i.endsWith("]"))return Mfn(i);const l=i.split(ez),c=l[0]===""&&l.length>1?1:0;return Klt(l,c,t)},getConflictingClassGroupIds:(i,l)=>{if(l){const c=r[i],u=n[i];return c?u?Afn(u,c):c:u||bMe}return n[i]||bMe}}},Klt=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;const s=e[t],a=n.nextPart.get(s);if(a){const u=Klt(e,t+1,a);if(u)return u}const i=n.validators;if(i===null)return;const l=t===0?e.join(ez):e.slice(t).join(ez),c=i.length;for(let u=0;u<c;u++){const d=i[u];if(d.validator(l))return d.classGroupId}},Mfn=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),n=t.indexOf(":"),r=t.slice(0,n);return r?Pfn+r:void 0})(),Dfn=e=>{const{theme:t,classGroups:n}=e;return Lfn(n,t)},Lfn=(e,t)=>{const n=Xlt();for(const r in e){const s=e[r];obe(s,n,r,t)}return n},obe=(e,t,n,r)=>{const s=e.length;for(let a=0;a<s;a++){const i=e[a];Ffn(i,t,n,r)}},Ffn=(e,t,n,r)=>{if(typeof e=="string"){zfn(e,t,n);return}if(typeof e=="function"){Bfn(e,t,n,r);return}Ufn(e,t,n,r)},zfn=(e,t,n)=>{const r=e===""?t:Jlt(t,e);r.classGroupId=n},Bfn=(e,t,n,r)=>{if(qfn(e)){obe(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(Rfn(n,e))},Ufn=(e,t,n,r)=>{const s=Object.entries(e),a=s.length;for(let i=0;i<a;i++){const[l,c]=s[i];obe(c,Jlt(t,l),n,r)}},Jlt=(e,t)=>{let n=e;const r=t.split(ez),s=r.length;for(let a=0;a<s;a++){const i=r[a];let l=n.nextPart.get(i);l||(l=Xlt(),n.nextPart.set(i,l)),n=l}return n},qfn=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,Vfn=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null);const s=(a,i)=>{n[a]=i,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(a){let i=n[a];if(i!==void 0)return i;if((i=r[a])!==void 0)return s(a,i),i},set(a,i){a in n?n[a]=i:s(a,i)}}},Wde="!",xMe=":",Hfn=[],wMe=(e,t,n,r,s)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:s}),Wfn=e=>{const{prefix:t,experimentalParseClassName:n}=e;let r=s=>{const a=[];let i=0,l=0,c=0,u;const d=s.length;for(let g=0;g<d;g++){const y=s[g];if(i===0&&l===0){if(y===xMe){a.push(s.slice(c,g)),c=g+1;continue}if(y==="/"){u=g;continue}}y==="["?i++:y==="]"?i--:y==="("?l++:y===")"&&l--}const f=a.length===0?s:s.slice(c);let p=f,h=!1;f.endsWith(Wde)?(p=f.slice(0,-1),h=!0):f.startsWith(Wde)&&(p=f.slice(1),h=!0);const m=u&&u>c?u-c:void 0;return wMe(a,h,p,m)};if(t){const s=t+xMe,a=r;r=i=>i.startsWith(s)?a(i.slice(s.length)):wMe(Hfn,!1,i,void 0,!0)}if(n){const s=r;r=a=>n({className:a,parseClassName:s})}return r},Zfn=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((n,r)=>{t.set(n,1e6+r)}),n=>{const r=[];let s=[];for(let a=0;a<n.length;a++){const i=n[a],l=i[0]==="[",c=t.has(i);l||c?(s.length>0&&(s.sort(),r.push(...s),s=[]),r.push(i)):s.push(i)}return s.length>0&&(s.sort(),r.push(...s)),r}},Gfn=e=>({cache:Vfn(e.cacheSize),parseClassName:Wfn(e),sortModifiers:Zfn(e),...$fn(e)}),Qfn=/\s+/,Yfn=(e,t)=>{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:s,sortModifiers:a}=t,i=[],l=e.trim().split(Qfn);let c="";for(let u=l.length-1;u>=0;u-=1){const d=l[u],{isExternal:f,modifiers:p,hasImportantModifier:h,baseClassName:m,maybePostfixModifierPosition:g}=n(d);if(f){c=d+(c.length>0?" "+c:c);continue}let y=!!g,b=r(y?m.substring(0,g):m);if(!b){if(!y){c=d+(c.length>0?" "+c:c);continue}if(b=r(m),!b){c=d+(c.length>0?" "+c:c);continue}y=!1}const w=p.length===0?"":p.length===1?p[0]:a(p).join(":"),S=h?w+Wde:w,k=S+b;if(i.indexOf(k)>-1)continue;i.push(k);const _=s(b,y);for(let C=0;C<_.length;++C){const E=_[C];i.push(S+E)}c=d+(c.length>0?" "+c:c)}return c},Xfn=(...e)=>{let t=0,n,r,s="";for(;t<e.length;)(n=e[t++])&&(r=ect(n))&&(s&&(s+=" "),s+=r);return s},ect=e=>{if(typeof e=="string")return e;let t,n="";for(let r=0;r<e.length;r++)e[r]&&(t=ect(e[r]))&&(n&&(n+=" "),n+=t);return n},Kfn=(e,...t)=>{let n,r,s,a;const i=c=>{const u=t.reduce((d,f)=>f(d),e());return n=Gfn(u),r=n.cache.get,s=n.cache.set,a=l,l(c)},l=c=>{const u=r(c);if(u)return u;const d=Yfn(c,n);return s(c,d),d};return a=i,(...c)=>a(Xfn(...c))},Jfn=[],Dl=e=>{const t=n=>n[e]||Jfn;return t.isThemeGetter=!0,t},tct=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,nct=/^\((?:(\w[\w-]*):)?(.+)\)$/i,epn=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,tpn=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,npn=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,rpn=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,spn=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,apn=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,I0=e=>epn.test(e),ds=e=>!!e&&!Number.isNaN(Number(e)),A0=e=>!!e&&Number.isInteger(Number(e)),QY=e=>e.endsWith("%")&&ds(e.slice(0,-1)),lb=e=>tpn.test(e),rct=()=>!0,ipn=e=>npn.test(e)&&!rpn.test(e),lbe=()=>!1,opn=e=>spn.test(e),lpn=e=>apn.test(e),cpn=e=>!Ln(e)&&!Un(e),upn=e=>T1(e,ict,lbe),Ln=e=>tct.test(e),xS=e=>T1(e,oct,ipn),SMe=e=>T1(e,ypn,ds),dpn=e=>T1(e,cct,rct),fpn=e=>T1(e,lct,lbe),kMe=e=>T1(e,sct,lbe),ppn=e=>T1(e,act,lpn),uL=e=>T1(e,uct,opn),Un=e=>nct.test(e),SA=e=>l_(e,oct),hpn=e=>l_(e,lct),OMe=e=>l_(e,sct),mpn=e=>l_(e,ict),gpn=e=>l_(e,act),dL=e=>l_(e,uct,!0),vpn=e=>l_(e,cct,!0),T1=(e,t,n)=>{const r=tct.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},l_=(e,t,n=!1)=>{const r=nct.exec(e);return r?r[1]?t(r[1]):n:!1},sct=e=>e==="position"||e==="percentage",act=e=>e==="image"||e==="url",ict=e=>e==="length"||e==="size"||e==="bg-size",oct=e=>e==="length",ypn=e=>e==="number",lct=e=>e==="family-name",cct=e=>e==="number"||e==="weight",uct=e=>e==="shadow",bpn=()=>{const e=Dl("color"),t=Dl("font"),n=Dl("text"),r=Dl("font-weight"),s=Dl("tracking"),a=Dl("leading"),i=Dl("breakpoint"),l=Dl("container"),c=Dl("spacing"),u=Dl("radius"),d=Dl("shadow"),f=Dl("inset-shadow"),p=Dl("text-shadow"),h=Dl("drop-shadow"),m=Dl("blur"),g=Dl("perspective"),y=Dl("aspect"),b=Dl("ease"),w=Dl("animate"),S=()=>["auto","avoid","all","avoid-page","page","left","right","column"],k=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],_=()=>[...k(),Un,Ln],C=()=>["auto","hidden","clip","visible","scroll"],E=()=>["auto","contain","none"],j=()=>[Un,Ln,c],N=()=>[I0,"full","auto",...j()],I=()=>[A0,"none","subgrid",Un,Ln],P=()=>["auto",{span:["full",A0,Un,Ln]},A0,Un,Ln],$=()=>[A0,"auto",Un,Ln],F=()=>["auto","min","max","fr",Un,Ln],D=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],V=()=>["start","end","center","stretch","center-safe","end-safe"],W=()=>["auto",...j()],L=()=>[I0,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...j()],B=()=>[I0,"screen","full","dvw","lvw","svw","min","max","fit",...j()],z=()=>[I0,"screen","full","lh","dvh","lvh","svh","min","max","fit",...j()],M=()=>[e,Un,Ln],G=()=>[...k(),OMe,kMe,{position:[Un,Ln]}],q=()=>["no-repeat",{repeat:["","x","y","space","round"]}],R=()=>["auto","cover","contain",mpn,upn,{size:[Un,Ln]}],U=()=>[QY,SA,xS],Z=()=>["","none","full",u,Un,Ln],X=()=>["",ds,SA,xS],te=()=>["solid","dashed","dotted","double"],J=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],ee=()=>[ds,QY,OMe,kMe],ae=()=>["","none",m,Un,Ln],ce=()=>["none",ds,Un,Ln],Y=()=>["none",ds,Un,Ln],ne=()=>[ds,Un,Ln],ue=()=>[I0,"full",...j()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[lb],breakpoint:[lb],color:[rct],container:[lb],"drop-shadow":[lb],ease:["in","out","in-out"],font:[cpn],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[lb],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[lb],shadow:[lb],spacing:["px",ds],text:[lb],"text-shadow":[lb],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",I0,Ln,Un,y]}],container:["container"],columns:[{columns:[ds,Ln,Un,l]}],"break-after":[{"break-after":S()}],"break-before":[{"break-before":S()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:_()}],overflow:[{overflow:C()}],"overflow-x":[{"overflow-x":C()}],"overflow-y":[{"overflow-y":C()}],overscroll:[{overscroll:E()}],"overscroll-x":[{"overscroll-x":E()}],"overscroll-y":[{"overscroll-y":E()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:N()}],"inset-x":[{"inset-x":N()}],"inset-y":[{"inset-y":N()}],start:[{"inset-s":N(),start:N()}],end:[{"inset-e":N(),end:N()}],"inset-bs":[{"inset-bs":N()}],"inset-be":[{"inset-be":N()}],top:[{top:N()}],right:[{right:N()}],bottom:[{bottom:N()}],left:[{left:N()}],visibility:["visible","invisible","collapse"],z:[{z:[A0,"auto",Un,Ln]}],basis:[{basis:[I0,"full","auto",l,...j()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[ds,I0,"auto","initial","none",Ln]}],grow:[{grow:["",ds,Un,Ln]}],shrink:[{shrink:["",ds,Un,Ln]}],order:[{order:[A0,"first","last","none",Un,Ln]}],"grid-cols":[{"grid-cols":I()}],"col-start-end":[{col:P()}],"col-start":[{"col-start":$()}],"col-end":[{"col-end":$()}],"grid-rows":[{"grid-rows":I()}],"row-start-end":[{row:P()}],"row-start":[{"row-start":$()}],"row-end":[{"row-end":$()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":F()}],"auto-rows":[{"auto-rows":F()}],gap:[{gap:j()}],"gap-x":[{"gap-x":j()}],"gap-y":[{"gap-y":j()}],"justify-content":[{justify:[...D(),"normal"]}],"justify-items":[{"justify-items":[...V(),"normal"]}],"justify-self":[{"justify-self":["auto",...V()]}],"align-content":[{content:["normal",...D()]}],"align-items":[{items:[...V(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...V(),{baseline:["","last"]}]}],"place-content":[{"place-content":D()}],"place-items":[{"place-items":[...V(),"baseline"]}],"place-self":[{"place-self":["auto",...V()]}],p:[{p:j()}],px:[{px:j()}],py:[{py:j()}],ps:[{ps:j()}],pe:[{pe:j()}],pbs:[{pbs:j()}],pbe:[{pbe:j()}],pt:[{pt:j()}],pr:[{pr:j()}],pb:[{pb:j()}],pl:[{pl:j()}],m:[{m:W()}],mx:[{mx:W()}],my:[{my:W()}],ms:[{ms:W()}],me:[{me:W()}],mbs:[{mbs:W()}],mbe:[{mbe:W()}],mt:[{mt:W()}],mr:[{mr:W()}],mb:[{mb:W()}],ml:[{ml:W()}],"space-x":[{"space-x":j()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":j()}],"space-y-reverse":["space-y-reverse"],size:[{size:L()}],"inline-size":[{inline:["auto",...B()]}],"min-inline-size":[{"min-inline":["auto",...B()]}],"max-inline-size":[{"max-inline":["none",...B()]}],"block-size":[{block:["auto",...z()]}],"min-block-size":[{"min-block":["auto",...z()]}],"max-block-size":[{"max-block":["none",...z()]}],w:[{w:[l,"screen",...L()]}],"min-w":[{"min-w":[l,"screen","none",...L()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[i]},...L()]}],h:[{h:["screen","lh",...L()]}],"min-h":[{"min-h":["screen","lh","none",...L()]}],"max-h":[{"max-h":["screen","lh",...L()]}],"font-size":[{text:["base",n,SA,xS]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,vpn,dpn]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",QY,Ln]}],"font-family":[{font:[hpn,fpn,t]}],"font-features":[{"font-features":[Ln]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[s,Un,Ln]}],"line-clamp":[{"line-clamp":[ds,"none",Un,SMe]}],leading:[{leading:[a,...j()]}],"list-image":[{"list-image":["none",Un,Ln]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",Un,Ln]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:M()}],"text-color":[{text:M()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...te(),"wavy"]}],"text-decoration-thickness":[{decoration:[ds,"from-font","auto",Un,xS]}],"text-decoration-color":[{decoration:M()}],"underline-offset":[{"underline-offset":[ds,"auto",Un,Ln]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:j()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",Un,Ln]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",Un,Ln]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:G()}],"bg-repeat":[{bg:q()}],"bg-size":[{bg:R()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},A0,Un,Ln],radial:["",Un,Ln],conic:[A0,Un,Ln]},gpn,ppn]}],"bg-color":[{bg:M()}],"gradient-from-pos":[{from:U()}],"gradient-via-pos":[{via:U()}],"gradient-to-pos":[{to:U()}],"gradient-from":[{from:M()}],"gradient-via":[{via:M()}],"gradient-to":[{to:M()}],rounded:[{rounded:Z()}],"rounded-s":[{"rounded-s":Z()}],"rounded-e":[{"rounded-e":Z()}],"rounded-t":[{"rounded-t":Z()}],"rounded-r":[{"rounded-r":Z()}],"rounded-b":[{"rounded-b":Z()}],"rounded-l":[{"rounded-l":Z()}],"rounded-ss":[{"rounded-ss":Z()}],"rounded-se":[{"rounded-se":Z()}],"rounded-ee":[{"rounded-ee":Z()}],"rounded-es":[{"rounded-es":Z()}],"rounded-tl":[{"rounded-tl":Z()}],"rounded-tr":[{"rounded-tr":Z()}],"rounded-br":[{"rounded-br":Z()}],"rounded-bl":[{"rounded-bl":Z()}],"border-w":[{border:X()}],"border-w-x":[{"border-x":X()}],"border-w-y":[{"border-y":X()}],"border-w-s":[{"border-s":X()}],"border-w-e":[{"border-e":X()}],"border-w-bs":[{"border-bs":X()}],"border-w-be":[{"border-be":X()}],"border-w-t":[{"border-t":X()}],"border-w-r":[{"border-r":X()}],"border-w-b":[{"border-b":X()}],"border-w-l":[{"border-l":X()}],"divide-x":[{"divide-x":X()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":X()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...te(),"hidden","none"]}],"divide-style":[{divide:[...te(),"hidden","none"]}],"border-color":[{border:M()}],"border-color-x":[{"border-x":M()}],"border-color-y":[{"border-y":M()}],"border-color-s":[{"border-s":M()}],"border-color-e":[{"border-e":M()}],"border-color-bs":[{"border-bs":M()}],"border-color-be":[{"border-be":M()}],"border-color-t":[{"border-t":M()}],"border-color-r":[{"border-r":M()}],"border-color-b":[{"border-b":M()}],"border-color-l":[{"border-l":M()}],"divide-color":[{divide:M()}],"outline-style":[{outline:[...te(),"none","hidden"]}],"outline-offset":[{"outline-offset":[ds,Un,Ln]}],"outline-w":[{outline:["",ds,SA,xS]}],"outline-color":[{outline:M()}],shadow:[{shadow:["","none",d,dL,uL]}],"shadow-color":[{shadow:M()}],"inset-shadow":[{"inset-shadow":["none",f,dL,uL]}],"inset-shadow-color":[{"inset-shadow":M()}],"ring-w":[{ring:X()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:M()}],"ring-offset-w":[{"ring-offset":[ds,xS]}],"ring-offset-color":[{"ring-offset":M()}],"inset-ring-w":[{"inset-ring":X()}],"inset-ring-color":[{"inset-ring":M()}],"text-shadow":[{"text-shadow":["none",p,dL,uL]}],"text-shadow-color":[{"text-shadow":M()}],opacity:[{opacity:[ds,Un,Ln]}],"mix-blend":[{"mix-blend":[...J(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":J()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[ds]}],"mask-image-linear-from-pos":[{"mask-linear-from":ee()}],"mask-image-linear-to-pos":[{"mask-linear-to":ee()}],"mask-image-linear-from-color":[{"mask-linear-from":M()}],"mask-image-linear-to-color":[{"mask-linear-to":M()}],"mask-image-t-from-pos":[{"mask-t-from":ee()}],"mask-image-t-to-pos":[{"mask-t-to":ee()}],"mask-image-t-from-color":[{"mask-t-from":M()}],"mask-image-t-to-color":[{"mask-t-to":M()}],"mask-image-r-from-pos":[{"mask-r-from":ee()}],"mask-image-r-to-pos":[{"mask-r-to":ee()}],"mask-image-r-from-color":[{"mask-r-from":M()}],"mask-image-r-to-color":[{"mask-r-to":M()}],"mask-image-b-from-pos":[{"mask-b-from":ee()}],"mask-image-b-to-pos":[{"mask-b-to":ee()}],"mask-image-b-from-color":[{"mask-b-from":M()}],"mask-image-b-to-color":[{"mask-b-to":M()}],"mask-image-l-from-pos":[{"mask-l-from":ee()}],"mask-image-l-to-pos":[{"mask-l-to":ee()}],"mask-image-l-from-color":[{"mask-l-from":M()}],"mask-image-l-to-color":[{"mask-l-to":M()}],"mask-image-x-from-pos":[{"mask-x-from":ee()}],"mask-image-x-to-pos":[{"mask-x-to":ee()}],"mask-image-x-from-color":[{"mask-x-from":M()}],"mask-image-x-to-color":[{"mask-x-to":M()}],"mask-image-y-from-pos":[{"mask-y-from":ee()}],"mask-image-y-to-pos":[{"mask-y-to":ee()}],"mask-image-y-from-color":[{"mask-y-from":M()}],"mask-image-y-to-color":[{"mask-y-to":M()}],"mask-image-radial":[{"mask-radial":[Un,Ln]}],"mask-image-radial-from-pos":[{"mask-radial-from":ee()}],"mask-image-radial-to-pos":[{"mask-radial-to":ee()}],"mask-image-radial-from-color":[{"mask-radial-from":M()}],"mask-image-radial-to-color":[{"mask-radial-to":M()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":k()}],"mask-image-conic-pos":[{"mask-conic":[ds]}],"mask-image-conic-from-pos":[{"mask-conic-from":ee()}],"mask-image-conic-to-pos":[{"mask-conic-to":ee()}],"mask-image-conic-from-color":[{"mask-conic-from":M()}],"mask-image-conic-to-color":[{"mask-conic-to":M()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:G()}],"mask-repeat":[{mask:q()}],"mask-size":[{mask:R()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",Un,Ln]}],filter:[{filter:["","none",Un,Ln]}],blur:[{blur:ae()}],brightness:[{brightness:[ds,Un,Ln]}],contrast:[{contrast:[ds,Un,Ln]}],"drop-shadow":[{"drop-shadow":["","none",h,dL,uL]}],"drop-shadow-color":[{"drop-shadow":M()}],grayscale:[{grayscale:["",ds,Un,Ln]}],"hue-rotate":[{"hue-rotate":[ds,Un,Ln]}],invert:[{invert:["",ds,Un,Ln]}],saturate:[{saturate:[ds,Un,Ln]}],sepia:[{sepia:["",ds,Un,Ln]}],"backdrop-filter":[{"backdrop-filter":["","none",Un,Ln]}],"backdrop-blur":[{"backdrop-blur":ae()}],"backdrop-brightness":[{"backdrop-brightness":[ds,Un,Ln]}],"backdrop-contrast":[{"backdrop-contrast":[ds,Un,Ln]}],"backdrop-grayscale":[{"backdrop-grayscale":["",ds,Un,Ln]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[ds,Un,Ln]}],"backdrop-invert":[{"backdrop-invert":["",ds,Un,Ln]}],"backdrop-opacity":[{"backdrop-opacity":[ds,Un,Ln]}],"backdrop-saturate":[{"backdrop-saturate":[ds,Un,Ln]}],"backdrop-sepia":[{"backdrop-sepia":["",ds,Un,Ln]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":j()}],"border-spacing-x":[{"border-spacing-x":j()}],"border-spacing-y":[{"border-spacing-y":j()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",Un,Ln]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[ds,"initial",Un,Ln]}],ease:[{ease:["linear","initial",b,Un,Ln]}],delay:[{delay:[ds,Un,Ln]}],animate:[{animate:["none",w,Un,Ln]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[g,Un,Ln]}],"perspective-origin":[{"perspective-origin":_()}],rotate:[{rotate:ce()}],"rotate-x":[{"rotate-x":ce()}],"rotate-y":[{"rotate-y":ce()}],"rotate-z":[{"rotate-z":ce()}],scale:[{scale:Y()}],"scale-x":[{"scale-x":Y()}],"scale-y":[{"scale-y":Y()}],"scale-z":[{"scale-z":Y()}],"scale-3d":["scale-3d"],skew:[{skew:ne()}],"skew-x":[{"skew-x":ne()}],"skew-y":[{"skew-y":ne()}],transform:[{transform:[Un,Ln,"","none","gpu","cpu"]}],"transform-origin":[{origin:_()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ue()}],"translate-x":[{"translate-x":ue()}],"translate-y":[{"translate-y":ue()}],"translate-z":[{"translate-z":ue()}],"translate-none":["translate-none"],accent:[{accent:M()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:M()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",Un,Ln]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":j()}],"scroll-mx":[{"scroll-mx":j()}],"scroll-my":[{"scroll-my":j()}],"scroll-ms":[{"scroll-ms":j()}],"scroll-me":[{"scroll-me":j()}],"scroll-mbs":[{"scroll-mbs":j()}],"scroll-mbe":[{"scroll-mbe":j()}],"scroll-mt":[{"scroll-mt":j()}],"scroll-mr":[{"scroll-mr":j()}],"scroll-mb":[{"scroll-mb":j()}],"scroll-ml":[{"scroll-ml":j()}],"scroll-p":[{"scroll-p":j()}],"scroll-px":[{"scroll-px":j()}],"scroll-py":[{"scroll-py":j()}],"scroll-ps":[{"scroll-ps":j()}],"scroll-pe":[{"scroll-pe":j()}],"scroll-pbs":[{"scroll-pbs":j()}],"scroll-pbe":[{"scroll-pbe":j()}],"scroll-pt":[{"scroll-pt":j()}],"scroll-pr":[{"scroll-pr":j()}],"scroll-pb":[{"scroll-pb":j()}],"scroll-pl":[{"scroll-pl":j()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",Un,Ln]}],fill:[{fill:["none",...M()]}],"stroke-w":[{stroke:[ds,SA,xS,SMe]}],stroke:[{stroke:["none",...M()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},c_=Kfn(bpn);function zd(e,t,{checkForDefaultPrevented:n=!0}={}){return function(s){if(e?.(s),n===!1||!s.defaultPrevented)return t?.(s)}}function _Me(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function Xw(...e){return t=>{let n=!1;const r=e.map(s=>{const a=_Me(s,t);return!n&&typeof a=="function"&&(n=!0),a});if(n)return()=>{for(let s=0;s<r.length;s++){const a=r[s];typeof a=="function"?a():_Me(e[s],null)}}}}function Ig(...e){return v.useCallback(Xw(...e),e)}function xpn(e,t){const n=v.createContext(t),r=a=>{const{children:i,...l}=a,c=v.useMemo(()=>l,Object.values(l));return o.jsx(n.Provider,{value:c,children:i})};r.displayName=e+"Provider";function s(a){const i=v.useContext(n);if(i)return i;if(t!==void 0)return t;throw new Error(`\`${a}\` must be used within \`${e}\``)}return[r,s]}function cbe(e,t=[]){let n=[];function r(a,i){const l=v.createContext(i),c=n.length;n=[...n,i];const u=f=>{const{scope:p,children:h,...m}=f,g=p?.[e]?.[c]||l,y=v.useMemo(()=>m,Object.values(m));return o.jsx(g.Provider,{value:y,children:h})};u.displayName=a+"Provider";function d(f,p){const h=p?.[e]?.[c]||l,m=v.useContext(h);if(m)return m;if(i!==void 0)return i;throw new Error(`\`${f}\` must be used within \`${a}\``)}return[u,d]}const s=()=>{const a=n.map(i=>v.createContext(i));return function(l){const c=l?.[e]||a;return v.useMemo(()=>({[`__scope${e}`]:{...l,[e]:c}}),[l,c])}};return s.scopeName=e,[r,wpn(s,...t)]}function wpn(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(s=>({useScope:s(),scopeName:s.scopeName}));return function(a){const i=r.reduce((l,{useScope:c,scopeName:u})=>{const f=c(a)[`__scope${u}`];return{...l,...f}},{});return v.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])}};return n.scopeName=t.scopeName,n}var vo=irt();const ube=Cc(vo);function dct(e){const t=Spn(e),n=v.forwardRef((r,s)=>{const{children:a,...i}=r,l=v.Children.toArray(a),c=l.find(Opn);if(c){const u=c.props.children,d=l.map(f=>f===c?v.Children.count(u)>1?v.Children.only(null):v.isValidElement(u)?u.props.children:null:f);return o.jsx(t,{...i,ref:s,children:v.isValidElement(u)?v.cloneElement(u,void 0,d):null})}return o.jsx(t,{...i,ref:s,children:a})});return n.displayName=`${e}.Slot`,n}function Spn(e){const t=v.forwardRef((n,r)=>{const{children:s,...a}=n;if(v.isValidElement(s)){const i=Cpn(s),l=_pn(a,s.props);return s.type!==v.Fragment&&(l.ref=r?Xw(r,i):i),v.cloneElement(s,l)}return v.Children.count(s)>1?v.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var fct=Symbol("radix.slottable");function kpn(e){const t=({children:n})=>o.jsx(o.Fragment,{children:n});return t.displayName=`${e}.Slottable`,t.__radixId=fct,t}function Opn(e){return v.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===fct}function _pn(e,t){const n={...t};for(const r in t){const s=e[r],a=t[r];/^on[A-Z]/.test(r)?s&&a?n[r]=(...l)=>{const c=a(...l);return s(...l),c}:s&&(n[r]=s):r==="style"?n[r]={...s,...a}:r==="className"&&(n[r]=[s,a].filter(Boolean).join(" "))}return{...e,...n}}function Cpn(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Epn=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],wf=Epn.reduce((e,t)=>{const n=dct(`Primitive.${t}`),r=v.forwardRef((s,a)=>{const{asChild:i,...l}=s,c=i?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),o.jsx(c,{...l,ref:a})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function jpn(e,t){e&&vo.flushSync(()=>e.dispatchEvent(t))}function Zj(e){const t=v.useRef(e);return v.useEffect(()=>{t.current=e}),v.useMemo(()=>(...n)=>t.current?.(...n),[])}function Tpn(e,t=globalThis?.document){const n=Zj(e);v.useEffect(()=>{const r=s=>{s.key==="Escape"&&n(s)};return t.addEventListener("keydown",r,{capture:!0}),()=>t.removeEventListener("keydown",r,{capture:!0})},[n,t])}var Npn="DismissableLayer",Zde="dismissableLayer.update",Ipn="dismissableLayer.pointerDownOutside",Apn="dismissableLayer.focusOutside",CMe,pct=v.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),dbe=v.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:s,onFocusOutside:a,onInteractOutside:i,onDismiss:l,...c}=e,u=v.useContext(pct),[d,f]=v.useState(null),p=d?.ownerDocument??globalThis?.document,[,h]=v.useState({}),m=Ig(t,E=>f(E)),g=Array.from(u.layers),[y]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),b=g.indexOf(y),w=d?g.indexOf(d):-1,S=u.layersWithOutsidePointerEventsDisabled.size>0,k=w>=b,_=$pn(E=>{const j=E.target,N=[...u.branches].some(I=>I.contains(j));!k||N||(s?.(E),i?.(E),E.defaultPrevented||l?.())},p),C=Mpn(E=>{const j=E.target;[...u.branches].some(I=>I.contains(j))||(a?.(E),i?.(E),E.defaultPrevented||l?.())},p);return Tpn(E=>{w===u.layers.size-1&&(r?.(E),!E.defaultPrevented&&l&&(E.preventDefault(),l()))},p),v.useEffect(()=>{if(d)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(CMe=p.body.style.pointerEvents,p.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(d)),u.layers.add(d),EMe(),()=>{n&&u.layersWithOutsidePointerEventsDisabled.size===1&&(p.body.style.pointerEvents=CMe)}},[d,p,n,u]),v.useEffect(()=>()=>{d&&(u.layers.delete(d),u.layersWithOutsidePointerEventsDisabled.delete(d),EMe())},[d,u]),v.useEffect(()=>{const E=()=>h({});return document.addEventListener(Zde,E),()=>document.removeEventListener(Zde,E)},[]),o.jsx(wf.div,{...c,ref:m,style:{pointerEvents:S?k?"auto":"none":void 0,...e.style},onFocusCapture:zd(e.onFocusCapture,C.onFocusCapture),onBlurCapture:zd(e.onBlurCapture,C.onBlurCapture),onPointerDownCapture:zd(e.onPointerDownCapture,_.onPointerDownCapture)})});dbe.displayName=Npn;var Rpn="DismissableLayerBranch",Ppn=v.forwardRef((e,t)=>{const n=v.useContext(pct),r=v.useRef(null),s=Ig(t,r);return v.useEffect(()=>{const a=r.current;if(a)return n.branches.add(a),()=>{n.branches.delete(a)}},[n.branches]),o.jsx(wf.div,{...e,ref:s})});Ppn.displayName=Rpn;function $pn(e,t=globalThis?.document){const n=Zj(e),r=v.useRef(!1),s=v.useRef(()=>{});return v.useEffect(()=>{const a=l=>{if(l.target&&!r.current){let c=function(){hct(Ipn,n,u,{discrete:!0})};const u={originalEvent:l};l.pointerType==="touch"?(t.removeEventListener("click",s.current),s.current=c,t.addEventListener("click",s.current,{once:!0})):c()}else t.removeEventListener("click",s.current);r.current=!1},i=window.setTimeout(()=>{t.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(i),t.removeEventListener("pointerdown",a),t.removeEventListener("click",s.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function Mpn(e,t=globalThis?.document){const n=Zj(e),r=v.useRef(!1);return v.useEffect(()=>{const s=a=>{a.target&&!r.current&&hct(Apn,n,{originalEvent:a},{discrete:!1})};return t.addEventListener("focusin",s),()=>t.removeEventListener("focusin",s)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function EMe(){const e=new CustomEvent(Zde);document.dispatchEvent(e)}function hct(e,t,n,{discrete:r}){const s=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&s.addEventListener(e,t,{once:!0}),r?jpn(s,a):s.dispatchEvent(a)}var Kw=globalThis?.document?v.useLayoutEffect:()=>{},Dpn=cN[" useId ".trim().toString()]||(()=>{}),Lpn=0;function Xb(e){const[t,n]=v.useState(Dpn());return Kw(()=>{n(r=>r??String(Lpn++))},[e]),t?`radix-${t}`:""}const Fpn=["top","right","bottom","left"],Jw=Math.min,up=Math.max,Gj=Math.round,gk=Math.floor,Wv=e=>({x:e,y:e}),zpn={left:"right",right:"left",bottom:"top",top:"bottom"};function tz(e,t,n){return up(e,Jw(t,n))}function iy(e,t){return typeof e=="function"?e(t):e}function rf(e){return e.split("-")[0]}function Dx(e){return e.split("-")[1]}function fbe(e){return e==="x"?"y":"x"}function oq(e){return e==="y"?"height":"width"}function Th(e){const t=e[0];return t==="t"||t==="b"?"y":"x"}function lq(e){return fbe(Th(e))}function Bpn(e,t,n){n===void 0&&(n=!1);const r=Dx(e),s=lq(e),a=oq(s);let i=s==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[a]>t.floating[a]&&(i=nz(i)),[i,nz(i)]}function Upn(e){const t=nz(e);return[Gde(e),t,Gde(t)]}function Gde(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const jMe=["left","right"],TMe=["right","left"],qpn=["top","bottom"],Vpn=["bottom","top"];function Hpn(e,t,n){switch(e){case"top":case"bottom":return n?t?TMe:jMe:t?jMe:TMe;case"left":case"right":return t?qpn:Vpn;default:return[]}}function Wpn(e,t,n,r){const s=Dx(e);let a=Hpn(rf(e),n==="start",r);return s&&(a=a.map(i=>i+"-"+s),t&&(a=a.concat(a.map(Gde)))),a}function nz(e){const t=rf(e);return zpn[t]+e.slice(t.length)}function Zpn(e){return{top:0,right:0,bottom:0,left:0,...e}}function pbe(e){return typeof e!="number"?Zpn(e):{top:e,right:e,bottom:e,left:e}}function FP(e){const{x:t,y:n,width:r,height:s}=e;return{width:r,height:s,top:n,left:t,right:t+r,bottom:n+s,x:t,y:n}}function NMe(e,t,n){let{reference:r,floating:s}=e;const a=Th(t),i=lq(t),l=oq(i),c=rf(t),u=a==="y",d=r.x+r.width/2-s.width/2,f=r.y+r.height/2-s.height/2,p=r[l]/2-s[l]/2;let h;switch(c){case"top":h={x:d,y:r.y-s.height};break;case"bottom":h={x:d,y:r.y+r.height};break;case"right":h={x:r.x+r.width,y:f};break;case"left":h={x:r.x-s.width,y:f};break;default:h={x:r.x,y:r.y}}switch(Dx(t)){case"start":h[i]-=p*(n&&u?-1:1);break;case"end":h[i]+=p*(n&&u?-1:1);break}return h}async function Gpn(e,t){var n;t===void 0&&(t={});const{x:r,y:s,platform:a,rects:i,elements:l,strategy:c}=e,{boundary:u="clippingAncestors",rootBoundary:d="viewport",elementContext:f="floating",altBoundary:p=!1,padding:h=0}=iy(t,e),m=pbe(h),y=l[p?f==="floating"?"reference":"floating":f],b=FP(await a.getClippingRect({element:(n=await(a.isElement==null?void 0:a.isElement(y)))==null||n?y:y.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(l.floating)),boundary:u,rootBoundary:d,strategy:c})),w=f==="floating"?{x:r,y:s,width:i.floating.width,height:i.floating.height}:i.reference,S=await(a.getOffsetParent==null?void 0:a.getOffsetParent(l.floating)),k=await(a.isElement==null?void 0:a.isElement(S))?await(a.getScale==null?void 0:a.getScale(S))||{x:1,y:1}:{x:1,y:1},_=FP(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:w,offsetParent:S,strategy:c}):w);return{top:(b.top-_.top+m.top)/k.y,bottom:(_.bottom-b.bottom+m.bottom)/k.y,left:(b.left-_.left+m.left)/k.x,right:(_.right-b.right+m.right)/k.x}}const Qpn=50,Ypn=async(e,t,n)=>{const{placement:r="bottom",strategy:s="absolute",middleware:a=[],platform:i}=n,l=i.detectOverflow?i:{...i,detectOverflow:Gpn},c=await(i.isRTL==null?void 0:i.isRTL(t));let u=await i.getElementRects({reference:e,floating:t,strategy:s}),{x:d,y:f}=NMe(u,r,c),p=r,h=0;const m={};for(let g=0;g<a.length;g++){const y=a[g];if(!y)continue;const{name:b,fn:w}=y,{x:S,y:k,data:_,reset:C}=await w({x:d,y:f,initialPlacement:r,placement:p,strategy:s,middlewareData:m,rects:u,platform:l,elements:{reference:e,floating:t}});d=S??d,f=k??f,m[b]={...m[b],..._},C&&h<Qpn&&(h++,typeof C=="object"&&(C.placement&&(p=C.placement),C.rects&&(u=C.rects===!0?await i.getElementRects({reference:e,floating:t,strategy:s}):C.rects),{x:d,y:f}=NMe(u,p,c)),g=-1)}return{x:d,y:f,placement:p,strategy:s,middlewareData:m}},Xpn=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:s,rects:a,platform:i,elements:l,middlewareData:c}=t,{element:u,padding:d=0}=iy(e,t)||{};if(u==null)return{};const f=pbe(d),p={x:n,y:r},h=lq(s),m=oq(h),g=await i.getDimensions(u),y=h==="y",b=y?"top":"left",w=y?"bottom":"right",S=y?"clientHeight":"clientWidth",k=a.reference[m]+a.reference[h]-p[h]-a.floating[m],_=p[h]-a.reference[h],C=await(i.getOffsetParent==null?void 0:i.getOffsetParent(u));let E=C?C[S]:0;(!E||!await(i.isElement==null?void 0:i.isElement(C)))&&(E=l.floating[S]||a.floating[m]);const j=k/2-_/2,N=E/2-g[m]/2-1,I=Jw(f[b],N),P=Jw(f[w],N),$=I,F=E-g[m]-P,D=E/2-g[m]/2+j,V=tz($,D,F),W=!c.arrow&&Dx(s)!=null&&D!==V&&a.reference[m]/2-(D<$?I:P)-g[m]/2<0,L=W?D<$?D-$:D-F:0;return{[h]:p[h]+L,data:{[h]:V,centerOffset:D-V-L,...W&&{alignmentOffset:L}},reset:W}}}),Kpn=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:s,middlewareData:a,rects:i,initialPlacement:l,platform:c,elements:u}=t,{mainAxis:d=!0,crossAxis:f=!0,fallbackPlacements:p,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:g=!0,...y}=iy(e,t);if((n=a.arrow)!=null&&n.alignmentOffset)return{};const b=rf(s),w=Th(l),S=rf(l)===l,k=await(c.isRTL==null?void 0:c.isRTL(u.floating)),_=p||(S||!g?[nz(l)]:Upn(l)),C=m!=="none";!p&&C&&_.push(...Wpn(l,g,m,k));const E=[l,..._],j=await c.detectOverflow(t,y),N=[];let I=((r=a.flip)==null?void 0:r.overflows)||[];if(d&&N.push(j[b]),f){const D=Bpn(s,i,k);N.push(j[D[0]],j[D[1]])}if(I=[...I,{placement:s,overflows:N}],!N.every(D=>D<=0)){var P,$;const D=(((P=a.flip)==null?void 0:P.index)||0)+1,V=E[D];if(V&&(!(f==="alignment"?w!==Th(V):!1)||I.every(B=>Th(B.placement)===w?B.overflows[0]>0:!0)))return{data:{index:D,overflows:I},reset:{placement:V}};let W=($=I.filter(L=>L.overflows[0]<=0).sort((L,B)=>L.overflows[1]-B.overflows[1])[0])==null?void 0:$.placement;if(!W)switch(h){case"bestFit":{var F;const L=(F=I.filter(B=>{if(C){const z=Th(B.placement);return z===w||z==="y"}return!0}).map(B=>[B.placement,B.overflows.filter(z=>z>0).reduce((z,M)=>z+M,0)]).sort((B,z)=>B[1]-z[1])[0])==null?void 0:F[0];L&&(W=L);break}case"initialPlacement":W=l;break}if(s!==W)return{reset:{placement:W}}}return{}}}};function IMe(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function AMe(e){return Fpn.some(t=>e[t]>=0)}const Jpn=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n,platform:r}=t,{strategy:s="referenceHidden",...a}=iy(e,t);switch(s){case"referenceHidden":{const i=await r.detectOverflow(t,{...a,elementContext:"reference"}),l=IMe(i,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:AMe(l)}}}case"escaped":{const i=await r.detectOverflow(t,{...a,altBoundary:!0}),l=IMe(i,n.floating);return{data:{escapedOffsets:l,escaped:AMe(l)}}}default:return{}}}}},mct=new Set(["left","top"]);async function ehn(e,t){const{placement:n,platform:r,elements:s}=e,a=await(r.isRTL==null?void 0:r.isRTL(s.floating)),i=rf(n),l=Dx(n),c=Th(n)==="y",u=mct.has(i)?-1:1,d=a&&c?-1:1,f=iy(t,e);let{mainAxis:p,crossAxis:h,alignmentAxis:m}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return l&&typeof m=="number"&&(h=l==="end"?m*-1:m),c?{x:h*d,y:p*u}:{x:p*u,y:h*d}}const thn=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:s,y:a,placement:i,middlewareData:l}=t,c=await ehn(t,e);return i===((n=l.offset)==null?void 0:n.placement)&&(r=l.arrow)!=null&&r.alignmentOffset?{}:{x:s+c.x,y:a+c.y,data:{...c,placement:i}}}}},nhn=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:s,platform:a}=t,{mainAxis:i=!0,crossAxis:l=!1,limiter:c={fn:b=>{let{x:w,y:S}=b;return{x:w,y:S}}},...u}=iy(e,t),d={x:n,y:r},f=await a.detectOverflow(t,u),p=Th(rf(s)),h=fbe(p);let m=d[h],g=d[p];if(i){const b=h==="y"?"top":"left",w=h==="y"?"bottom":"right",S=m+f[b],k=m-f[w];m=tz(S,m,k)}if(l){const b=p==="y"?"top":"left",w=p==="y"?"bottom":"right",S=g+f[b],k=g-f[w];g=tz(S,g,k)}const y=c.fn({...t,[h]:m,[p]:g});return{...y,data:{x:y.x-n,y:y.y-r,enabled:{[h]:i,[p]:l}}}}}},rhn=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:s,rects:a,middlewareData:i}=t,{offset:l=0,mainAxis:c=!0,crossAxis:u=!0}=iy(e,t),d={x:n,y:r},f=Th(s),p=fbe(f);let h=d[p],m=d[f];const g=iy(l,t),y=typeof g=="number"?{mainAxis:g,crossAxis:0}:{mainAxis:0,crossAxis:0,...g};if(c){const S=p==="y"?"height":"width",k=a.reference[p]-a.floating[S]+y.mainAxis,_=a.reference[p]+a.reference[S]-y.mainAxis;h<k?h=k:h>_&&(h=_)}if(u){var b,w;const S=p==="y"?"width":"height",k=mct.has(rf(s)),_=a.reference[f]-a.floating[S]+(k&&((b=i.offset)==null?void 0:b[f])||0)+(k?0:y.crossAxis),C=a.reference[f]+a.reference[S]+(k?0:((w=i.offset)==null?void 0:w[f])||0)-(k?y.crossAxis:0);m<_?m=_:m>C&&(m=C)}return{[p]:h,[f]:m}}}},shn=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,r;const{placement:s,rects:a,platform:i,elements:l}=t,{apply:c=()=>{},...u}=iy(e,t),d=await i.detectOverflow(t,u),f=rf(s),p=Dx(s),h=Th(s)==="y",{width:m,height:g}=a.floating;let y,b;f==="top"||f==="bottom"?(y=f,b=p===(await(i.isRTL==null?void 0:i.isRTL(l.floating))?"start":"end")?"left":"right"):(b=f,y=p==="end"?"top":"bottom");const w=g-d.top-d.bottom,S=m-d.left-d.right,k=Jw(g-d[y],w),_=Jw(m-d[b],S),C=!t.middlewareData.shift;let E=k,j=_;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(j=S),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(E=w),C&&!p){const I=up(d.left,0),P=up(d.right,0),$=up(d.top,0),F=up(d.bottom,0);h?j=m-2*(I!==0||P!==0?I+P:up(d.left,d.right)):E=g-2*($!==0||F!==0?$+F:up(d.top,d.bottom))}await c({...t,availableWidth:j,availableHeight:E});const N=await i.getDimensions(l.floating);return m!==N.width||g!==N.height?{reset:{rects:!0}}:{}}}};function cq(){return typeof window<"u"}function Nu(e){return hbe(e)?(e.nodeName||"").toLowerCase():"#document"}function Ks(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function ky(e){var t;return(t=(hbe(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function hbe(e){return cq()?e instanceof Node||e instanceof Ks(e).Node:!1}function _r(e){return cq()?e instanceof Element||e instanceof Ks(e).Element:!1}function Ia(e){return cq()?e instanceof HTMLElement||e instanceof Ks(e).HTMLElement:!1}function Qj(e){return!cq()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Ks(e).ShadowRoot}function N1(e){const{overflow:t,overflowX:n,overflowY:r,display:s}=Iu(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&s!=="inline"&&s!=="contents"}function ahn(e){return/^(table|td|th)$/.test(Nu(e))}function uq(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const ihn=/transform|translate|scale|rotate|perspective|filter/,ohn=/paint|layout|strict|content/,wS=e=>!!e&&e!=="none";let YY;function mbe(e){const t=_r(e)?Iu(e):e;return wS(t.transform)||wS(t.translate)||wS(t.scale)||wS(t.rotate)||wS(t.perspective)||!dq()&&(wS(t.backdropFilter)||wS(t.filter))||ihn.test(t.willChange||"")||ohn.test(t.contain||"")}function lhn(e){let t=oy(e);for(;Ia(t)&&!Zv(t);){if(mbe(t))return t;if(uq(t))return null;t=oy(t)}return null}function dq(){return YY==null&&(YY=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),YY}function Zv(e){return/^(html|body|#document)$/.test(Nu(e))}function Iu(e){return Ks(e).getComputedStyle(e)}function fq(e){return _r(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function oy(e){if(Nu(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Qj(e)&&e.host||ky(e);return Qj(t)?t.host:t}function gct(e){const t=oy(e);return Zv(t)?e.ownerDocument?e.ownerDocument.body:e.body:Ia(t)&&N1(t)?t:gct(t)}function zP(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const s=gct(e),a=s===((r=e.ownerDocument)==null?void 0:r.body),i=Ks(s);if(a){const l=Qde(i);return t.concat(i,i.visualViewport||[],N1(s)?s:[],l&&n?zP(l):[])}else return t.concat(s,zP(s,[],n))}function Qde(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function vct(e){const t=Iu(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const s=Ia(e),a=s?e.offsetWidth:n,i=s?e.offsetHeight:r,l=Gj(n)!==a||Gj(r)!==i;return l&&(n=a,r=i),{width:n,height:r,$:l}}function gbe(e){return _r(e)?e:e.contextElement}function sj(e){const t=gbe(e);if(!Ia(t))return Wv(1);const n=t.getBoundingClientRect(),{width:r,height:s,$:a}=vct(t);let i=(a?Gj(n.width):n.width)/r,l=(a?Gj(n.height):n.height)/s;return(!i||!Number.isFinite(i))&&(i=1),(!l||!Number.isFinite(l))&&(l=1),{x:i,y:l}}const chn=Wv(0);function yct(e){const t=Ks(e);return!dq()||!t.visualViewport?chn:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function uhn(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Ks(e)?!1:t}function oO(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const s=e.getBoundingClientRect(),a=gbe(e);let i=Wv(1);t&&(r?_r(r)&&(i=sj(r)):i=sj(e));const l=uhn(a,n,r)?yct(a):Wv(0);let c=(s.left+l.x)/i.x,u=(s.top+l.y)/i.y,d=s.width/i.x,f=s.height/i.y;if(a){const p=Ks(a),h=r&&_r(r)?Ks(r):r;let m=p,g=Qde(m);for(;g&&r&&h!==m;){const y=sj(g),b=g.getBoundingClientRect(),w=Iu(g),S=b.left+(g.clientLeft+parseFloat(w.paddingLeft))*y.x,k=b.top+(g.clientTop+parseFloat(w.paddingTop))*y.y;c*=y.x,u*=y.y,d*=y.x,f*=y.y,c+=S,u+=k,m=Ks(g),g=Qde(m)}}return FP({width:d,height:f,x:c,y:u})}function pq(e,t){const n=fq(e).scrollLeft;return t?t.left+n:oO(ky(e)).left+n}function bct(e,t){const n=e.getBoundingClientRect(),r=n.left+t.scrollLeft-pq(e,n),s=n.top+t.scrollTop;return{x:r,y:s}}function dhn(e){let{elements:t,rect:n,offsetParent:r,strategy:s}=e;const a=s==="fixed",i=ky(r),l=t?uq(t.floating):!1;if(r===i||l&&a)return n;let c={scrollLeft:0,scrollTop:0},u=Wv(1);const d=Wv(0),f=Ia(r);if((f||!f&&!a)&&((Nu(r)!=="body"||N1(i))&&(c=fq(r)),f)){const h=oO(r);u=sj(r),d.x=h.x+r.clientLeft,d.y=h.y+r.clientTop}const p=i&&!f&&!a?bct(i,c):Wv(0);return{width:n.width*u.x,height:n.height*u.y,x:n.x*u.x-c.scrollLeft*u.x+d.x+p.x,y:n.y*u.y-c.scrollTop*u.y+d.y+p.y}}function fhn(e){return Array.from(e.getClientRects())}function phn(e){const t=ky(e),n=fq(e),r=e.ownerDocument.body,s=up(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=up(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let i=-n.scrollLeft+pq(e);const l=-n.scrollTop;return Iu(r).direction==="rtl"&&(i+=up(t.clientWidth,r.clientWidth)-s),{width:s,height:a,x:i,y:l}}const RMe=25;function hhn(e,t){const n=Ks(e),r=ky(e),s=n.visualViewport;let a=r.clientWidth,i=r.clientHeight,l=0,c=0;if(s){a=s.width,i=s.height;const d=dq();(!d||d&&t==="fixed")&&(l=s.offsetLeft,c=s.offsetTop)}const u=pq(r);if(u<=0){const d=r.ownerDocument,f=d.body,p=getComputedStyle(f),h=d.compatMode==="CSS1Compat"&&parseFloat(p.marginLeft)+parseFloat(p.marginRight)||0,m=Math.abs(r.clientWidth-f.clientWidth-h);m<=RMe&&(a-=m)}else u<=RMe&&(a+=u);return{width:a,height:i,x:l,y:c}}function mhn(e,t){const n=oO(e,!0,t==="fixed"),r=n.top+e.clientTop,s=n.left+e.clientLeft,a=Ia(e)?sj(e):Wv(1),i=e.clientWidth*a.x,l=e.clientHeight*a.y,c=s*a.x,u=r*a.y;return{width:i,height:l,x:c,y:u}}function PMe(e,t,n){let r;if(t==="viewport")r=hhn(e,n);else if(t==="document")r=phn(ky(e));else if(_r(t))r=mhn(t,n);else{const s=yct(e);r={x:t.x-s.x,y:t.y-s.y,width:t.width,height:t.height}}return FP(r)}function xct(e,t){const n=oy(e);return n===t||!_r(n)||Zv(n)?!1:Iu(n).position==="fixed"||xct(n,t)}function ghn(e,t){const n=t.get(e);if(n)return n;let r=zP(e,[],!1).filter(l=>_r(l)&&Nu(l)!=="body"),s=null;const a=Iu(e).position==="fixed";let i=a?oy(e):e;for(;_r(i)&&!Zv(i);){const l=Iu(i),c=mbe(i);!c&&l.position==="fixed"&&(s=null),(a?!c&&!s:!c&&l.position==="static"&&!!s&&(s.position==="absolute"||s.position==="fixed")||N1(i)&&!c&&xct(e,i))?r=r.filter(d=>d!==i):s=l,i=oy(i)}return t.set(e,r),r}function vhn(e){let{element:t,boundary:n,rootBoundary:r,strategy:s}=e;const i=[...n==="clippingAncestors"?uq(t)?[]:ghn(t,this._c):[].concat(n),r],l=PMe(t,i[0],s);let c=l.top,u=l.right,d=l.bottom,f=l.left;for(let p=1;p<i.length;p++){const h=PMe(t,i[p],s);c=up(h.top,c),u=Jw(h.right,u),d=Jw(h.bottom,d),f=up(h.left,f)}return{width:u-f,height:d-c,x:f,y:c}}function yhn(e){const{width:t,height:n}=vct(e);return{width:t,height:n}}function bhn(e,t,n){const r=Ia(t),s=ky(t),a=n==="fixed",i=oO(e,!0,a,t);let l={scrollLeft:0,scrollTop:0};const c=Wv(0);function u(){c.x=pq(s)}if(r||!r&&!a)if((Nu(t)!=="body"||N1(s))&&(l=fq(t)),r){const h=oO(t,!0,a,t);c.x=h.x+t.clientLeft,c.y=h.y+t.clientTop}else s&&u();a&&!r&&s&&u();const d=s&&!r&&!a?bct(s,l):Wv(0),f=i.left+l.scrollLeft-c.x-d.x,p=i.top+l.scrollTop-c.y-d.y;return{x:f,y:p,width:i.width,height:i.height}}function XY(e){return Iu(e).position==="static"}function $Me(e,t){if(!Ia(e)||Iu(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return ky(e)===n&&(n=n.ownerDocument.body),n}function wct(e,t){const n=Ks(e);if(uq(e))return n;if(!Ia(e)){let s=oy(e);for(;s&&!Zv(s);){if(_r(s)&&!XY(s))return s;s=oy(s)}return n}let r=$Me(e,t);for(;r&&ahn(r)&&XY(r);)r=$Me(r,t);return r&&Zv(r)&&XY(r)&&!mbe(r)?n:r||lhn(e)||n}const xhn=async function(e){const t=this.getOffsetParent||wct,n=this.getDimensions,r=await n(e.floating);return{reference:bhn(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function whn(e){return Iu(e).direction==="rtl"}const Sct={convertOffsetParentRelativeRectToViewportRelativeRect:dhn,getDocumentElement:ky,getClippingRect:vhn,getOffsetParent:wct,getElementRects:xhn,getClientRects:fhn,getDimensions:yhn,getScale:sj,isElement:_r,isRTL:whn};function kct(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function Shn(e,t){let n=null,r;const s=ky(e);function a(){var l;clearTimeout(r),(l=n)==null||l.disconnect(),n=null}function i(l,c){l===void 0&&(l=!1),c===void 0&&(c=1),a();const u=e.getBoundingClientRect(),{left:d,top:f,width:p,height:h}=u;if(l||t(),!p||!h)return;const m=gk(f),g=gk(s.clientWidth-(d+p)),y=gk(s.clientHeight-(f+h)),b=gk(d),S={rootMargin:-m+"px "+-g+"px "+-y+"px "+-b+"px",threshold:up(0,Jw(1,c))||1};let k=!0;function _(C){const E=C[0].intersectionRatio;if(E!==c){if(!k)return i();E?i(!1,E):r=setTimeout(()=>{i(!1,1e-7)},1e3)}E===1&&!kct(u,e.getBoundingClientRect())&&i(),k=!1}try{n=new IntersectionObserver(_,{...S,root:s.ownerDocument})}catch{n=new IntersectionObserver(_,S)}n.observe(e)}return i(!0),a}function Yde(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:s=!0,ancestorResize:a=!0,elementResize:i=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:c=!1}=r,u=gbe(e),d=s||a?[...u?zP(u):[],...t?zP(t):[]]:[];d.forEach(b=>{s&&b.addEventListener("scroll",n,{passive:!0}),a&&b.addEventListener("resize",n)});const f=u&&l?Shn(u,n):null;let p=-1,h=null;i&&(h=new ResizeObserver(b=>{let[w]=b;w&&w.target===u&&h&&t&&(h.unobserve(t),cancelAnimationFrame(p),p=requestAnimationFrame(()=>{var S;(S=h)==null||S.observe(t)})),n()}),u&&!c&&h.observe(u),t&&h.observe(t));let m,g=c?oO(e):null;c&&y();function y(){const b=oO(e);g&&!kct(g,b)&&n(),g=b,m=requestAnimationFrame(y)}return n(),()=>{var b;d.forEach(w=>{s&&w.removeEventListener("scroll",n),a&&w.removeEventListener("resize",n)}),f?.(),(b=h)==null||b.disconnect(),h=null,c&&cancelAnimationFrame(m)}}const khn=thn,Ohn=nhn,_hn=Kpn,Chn=shn,Ehn=Jpn,MMe=Xpn,jhn=rhn,Thn=(e,t,n)=>{const r=new Map,s={platform:Sct,...n},a={...s.platform,_c:r};return Ypn(e,t,{...s,platform:a})};var Nhn=typeof document<"u",Ihn=function(){},x9=Nhn?v.useLayoutEffect:Ihn;function rz(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,s;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!rz(e[r],t[r]))return!1;return!0}if(s=Object.keys(e),n=s.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,s[r]))return!1;for(r=n;r--!==0;){const a=s[r];if(!(a==="_owner"&&e.$$typeof)&&!rz(e[a],t[a]))return!1}return!0}return e!==e&&t!==t}function Oct(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function DMe(e,t){const n=Oct(e);return Math.round(t*n)/n}function KY(e){const t=v.useRef(e);return x9(()=>{t.current=e}),t}function _ct(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:s,elements:{reference:a,floating:i}={},transform:l=!0,whileElementsMounted:c,open:u}=e,[d,f]=v.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[p,h]=v.useState(r);rz(p,r)||h(r);const[m,g]=v.useState(null),[y,b]=v.useState(null),w=v.useCallback(B=>{B!==C.current&&(C.current=B,g(B))},[]),S=v.useCallback(B=>{B!==E.current&&(E.current=B,b(B))},[]),k=a||m,_=i||y,C=v.useRef(null),E=v.useRef(null),j=v.useRef(d),N=c!=null,I=KY(c),P=KY(s),$=KY(u),F=v.useCallback(()=>{if(!C.current||!E.current)return;const B={placement:t,strategy:n,middleware:p};P.current&&(B.platform=P.current),Thn(C.current,E.current,B).then(z=>{const M={...z,isPositioned:$.current!==!1};D.current&&!rz(j.current,M)&&(j.current=M,vo.flushSync(()=>{f(M)}))})},[p,t,n,P,$]);x9(()=>{u===!1&&j.current.isPositioned&&(j.current.isPositioned=!1,f(B=>({...B,isPositioned:!1})))},[u]);const D=v.useRef(!1);x9(()=>(D.current=!0,()=>{D.current=!1}),[]),x9(()=>{if(k&&(C.current=k),_&&(E.current=_),k&&_){if(I.current)return I.current(k,_,F);F()}},[k,_,F,I,N]);const V=v.useMemo(()=>({reference:C,floating:E,setReference:w,setFloating:S}),[w,S]),W=v.useMemo(()=>({reference:k,floating:_}),[k,_]),L=v.useMemo(()=>{const B={position:n,left:0,top:0};if(!W.floating)return B;const z=DMe(W.floating,d.x),M=DMe(W.floating,d.y);return l?{...B,transform:"translate("+z+"px, "+M+"px)",...Oct(W.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:z,top:M}},[n,l,W.floating,d.x,d.y]);return v.useMemo(()=>({...d,update:F,refs:V,elements:W,floatingStyles:L}),[d,F,V,W,L])}const Ahn=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:s}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?MMe({element:r.current,padding:s}).fn(n):{}:r?MMe({element:r,padding:s}).fn(n):{}}}},Cct=(e,t)=>{const n=khn(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ect=(e,t)=>{const n=Ohn(e);return{name:n.name,fn:n.fn,options:[e,t]}},jct=(e,t)=>({fn:jhn(e).fn,options:[e,t]}),Tct=(e,t)=>{const n=_hn(e);return{name:n.name,fn:n.fn,options:[e,t]}},Nct=(e,t)=>{const n=Chn(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ict=(e,t)=>{const n=Ehn(e);return{name:n.name,fn:n.fn,options:[e,t]}},Rhn=(e,t)=>{const n=Ahn(e);return{name:n.name,fn:n.fn,options:[e,t]}};var Phn="Arrow",Act=v.forwardRef((e,t)=>{const{children:n,width:r=10,height:s=5,...a}=e;return o.jsx(wf.svg,{...a,ref:t,width:r,height:s,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?n:o.jsx("polygon",{points:"0,0 30,0 15,10"})})});Act.displayName=Phn;var $hn=Act;function Mhn(e){const[t,n]=v.useState(void 0);return Kw(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(s=>{if(!Array.isArray(s)||!s.length)return;const a=s[0];let i,l;if("borderBoxSize"in a){const c=a.borderBoxSize,u=Array.isArray(c)?c[0]:c;i=u.inlineSize,l=u.blockSize}else i=e.offsetWidth,l=e.offsetHeight;n({width:i,height:l})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}var Rct="Popper",[Pct,$ct]=cbe(Rct),[Tys,Mct]=Pct(Rct),Dct="PopperAnchor",Lct=v.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...s}=e,a=Mct(Dct,n),i=v.useRef(null),l=Ig(t,i),c=v.useRef(null);return v.useEffect(()=>{const u=c.current;c.current=r?.current||i.current,u!==c.current&&a.onAnchorChange(c.current)}),r?null:o.jsx(wf.div,{...s,ref:l})});Lct.displayName=Dct;var vbe="PopperContent",[Dhn,Lhn]=Pct(vbe),Fct=v.forwardRef((e,t)=>{const{__scopePopper:n,side:r="bottom",sideOffset:s=0,align:a="center",alignOffset:i=0,arrowPadding:l=0,avoidCollisions:c=!0,collisionBoundary:u=[],collisionPadding:d=0,sticky:f="partial",hideWhenDetached:p=!1,updatePositionStrategy:h="optimized",onPlaced:m,...g}=e,y=Mct(vbe,n),[b,w]=v.useState(null),S=Ig(t,te=>w(te)),[k,_]=v.useState(null),C=Mhn(k),E=C?.width??0,j=C?.height??0,N=r+(a!=="center"?"-"+a:""),I=typeof d=="number"?d:{top:0,right:0,bottom:0,left:0,...d},P=Array.isArray(u)?u:[u],$=P.length>0,F={padding:I,boundary:P.filter(zhn),altBoundary:$},{refs:D,floatingStyles:V,placement:W,isPositioned:L,middlewareData:B}=_ct({strategy:"fixed",placement:N,whileElementsMounted:(...te)=>Yde(...te,{animationFrame:h==="always"}),elements:{reference:y.anchor},middleware:[Cct({mainAxis:s+j,alignmentAxis:i}),c&&Ect({mainAxis:!0,crossAxis:!1,limiter:f==="partial"?jct():void 0,...F}),c&&Tct({...F}),Nct({...F,apply:({elements:te,rects:J,availableWidth:ee,availableHeight:ae})=>{const{width:ce,height:Y}=J.reference,ne=te.floating.style;ne.setProperty("--radix-popper-available-width",`${ee}px`),ne.setProperty("--radix-popper-available-height",`${ae}px`),ne.setProperty("--radix-popper-anchor-width",`${ce}px`),ne.setProperty("--radix-popper-anchor-height",`${Y}px`)}}),k&&Rhn({element:k,padding:l}),Bhn({arrowWidth:E,arrowHeight:j}),p&&Ict({strategy:"referenceHidden",...F})]}),[z,M]=Uct(W),G=Zj(m);Kw(()=>{L&&G?.()},[L,G]);const q=B.arrow?.x,R=B.arrow?.y,U=B.arrow?.centerOffset!==0,[Z,X]=v.useState();return Kw(()=>{b&&X(window.getComputedStyle(b).zIndex)},[b]),o.jsx("div",{ref:D.setFloating,"data-radix-popper-content-wrapper":"",style:{...V,transform:L?V.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Z,"--radix-popper-transform-origin":[B.transformOrigin?.x,B.transformOrigin?.y].join(" "),...B.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:o.jsx(Dhn,{scope:n,placedSide:z,onArrowChange:_,arrowX:q,arrowY:R,shouldHideArrow:U,children:o.jsx(wf.div,{"data-side":z,"data-align":M,...g,ref:S,style:{...g.style,animation:L?void 0:"none"}})})})});Fct.displayName=vbe;var zct="PopperArrow",Fhn={top:"bottom",right:"left",bottom:"top",left:"right"},Bct=v.forwardRef(function(t,n){const{__scopePopper:r,...s}=t,a=Lhn(zct,r),i=Fhn[a.placedSide];return o.jsx("span",{ref:a.onArrowChange,style:{position:"absolute",left:a.arrowX,top:a.arrowY,[i]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[a.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[a.placedSide],visibility:a.shouldHideArrow?"hidden":void 0},children:o.jsx($hn,{...s,ref:n,style:{...s.style,display:"block"}})})});Bct.displayName=zct;function zhn(e){return e!==null}var Bhn=e=>({name:"transformOrigin",options:e,fn(t){const{placement:n,rects:r,middlewareData:s}=t,i=s.arrow?.centerOffset!==0,l=i?0:e.arrowWidth,c=i?0:e.arrowHeight,[u,d]=Uct(n),f={start:"0%",center:"50%",end:"100%"}[d],p=(s.arrow?.x??0)+l/2,h=(s.arrow?.y??0)+c/2;let m="",g="";return u==="bottom"?(m=i?f:`${p}px`,g=`${-c}px`):u==="top"?(m=i?f:`${p}px`,g=`${r.floating.height+c}px`):u==="right"?(m=`${-c}px`,g=i?f:`${h}px`):u==="left"&&(m=`${r.floating.width+c}px`,g=i?f:`${h}px`),{data:{x:m,y:g}}}});function Uct(e){const[t,n="center"]=e.split("-");return[t,n]}var Uhn=Lct,qhn=Fct,Vhn=Bct,Hhn="Portal",qct=v.forwardRef((e,t)=>{const{container:n,...r}=e,[s,a]=v.useState(!1);Kw(()=>a(!0),[]);const i=n||s&&globalThis?.document?.body;return i?ube.createPortal(o.jsx(wf.div,{...r,ref:t}),i):null});qct.displayName=Hhn;function Whn(e,t){return v.useReducer((n,r)=>t[n][r]??n,e)}var f3=e=>{const{present:t,children:n}=e,r=Zhn(t),s=typeof n=="function"?n({present:r.isPresent}):v.Children.only(n),a=Ig(r.ref,Ghn(s));return typeof n=="function"||r.isPresent?v.cloneElement(s,{ref:a}):null};f3.displayName="Presence";function Zhn(e){const[t,n]=v.useState(),r=v.useRef(null),s=v.useRef(e),a=v.useRef("none"),i=e?"mounted":"unmounted",[l,c]=Whn(i,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return v.useEffect(()=>{const u=fL(r.current);a.current=l==="mounted"?u:"none"},[l]),Kw(()=>{const u=r.current,d=s.current;if(d!==e){const p=a.current,h=fL(u);e?c("MOUNT"):h==="none"||u?.display==="none"?c("UNMOUNT"):c(d&&p!==h?"ANIMATION_OUT":"UNMOUNT"),s.current=e}},[e,c]),Kw(()=>{if(t){let u;const d=t.ownerDocument.defaultView??window,f=h=>{const g=fL(r.current).includes(CSS.escape(h.animationName));if(h.target===t&&g&&(c("ANIMATION_END"),!s.current)){const y=t.style.animationFillMode;t.style.animationFillMode="forwards",u=d.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=y)})}},p=h=>{h.target===t&&(a.current=fL(r.current))};return t.addEventListener("animationstart",p),t.addEventListener("animationcancel",f),t.addEventListener("animationend",f),()=>{d.clearTimeout(u),t.removeEventListener("animationstart",p),t.removeEventListener("animationcancel",f),t.removeEventListener("animationend",f)}}else c("ANIMATION_END")},[t,c]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:v.useCallback(u=>{r.current=u?getComputedStyle(u):null,n(u)},[])}}function fL(e){return e?.animationName||"none"}function Ghn(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var Qhn=cN[" useInsertionEffect ".trim().toString()]||Kw;function Yhn({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){const[s,a,i]=Xhn({defaultProp:t,onChange:n}),l=e!==void 0,c=l?e:s;{const d=v.useRef(e!==void 0);v.useEffect(()=>{const f=d.current;f!==l&&console.warn(`${r} is changing from ${f?"controlled":"uncontrolled"} to ${l?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),d.current=l},[l,r])}const u=v.useCallback(d=>{if(l){const f=Khn(d)?d(e):d;f!==e&&i.current?.(f)}else a(d)},[l,e,a,i]);return[c,u]}function Xhn({defaultProp:e,onChange:t}){const[n,r]=v.useState(e),s=v.useRef(n),a=v.useRef(t);return Qhn(()=>{a.current=t},[t]),v.useEffect(()=>{s.current!==n&&(a.current?.(n),s.current=n)},[n,s]),[n,r,a]}function Khn(e){return typeof e=="function"}var Jhn=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"}),emn="VisuallyHidden",Vct=v.forwardRef((e,t)=>o.jsx(wf.span,{...e,ref:t,style:{...Jhn,...e.style}}));Vct.displayName=emn;var tmn=Vct,[hq]=cbe("Tooltip",[$ct]),ybe=$ct(),Hct="TooltipProvider",nmn=700,LMe="tooltip.open",[rmn,Wct]=hq(Hct),Zct=e=>{const{__scopeTooltip:t,delayDuration:n=nmn,skipDelayDuration:r=300,disableHoverableContent:s=!1,children:a}=e,i=v.useRef(!0),l=v.useRef(!1),c=v.useRef(0);return v.useEffect(()=>{const u=c.current;return()=>window.clearTimeout(u)},[]),o.jsx(rmn,{scope:t,isOpenDelayedRef:i,delayDuration:n,onOpen:v.useCallback(()=>{window.clearTimeout(c.current),i.current=!1},[]),onClose:v.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>i.current=!0,r)},[r]),isPointerInTransitRef:l,onPointerInTransitChange:v.useCallback(u=>{l.current=u},[]),disableHoverableContent:s,children:a})};Zct.displayName=Hct;var Gct="Tooltip",[Nys,mq]=hq(Gct),Xde="TooltipTrigger",smn=v.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,s=mq(Xde,n),a=Wct(Xde,n),i=ybe(n),l=v.useRef(null),c=Ig(t,l,s.onTriggerChange),u=v.useRef(!1),d=v.useRef(!1),f=v.useCallback(()=>u.current=!1,[]);return v.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),o.jsx(Uhn,{asChild:!0,...i,children:o.jsx(wf.button,{"aria-describedby":s.open?s.contentId:void 0,"data-state":s.stateAttribute,...r,ref:c,onPointerMove:zd(e.onPointerMove,p=>{p.pointerType!=="touch"&&!d.current&&!a.isPointerInTransitRef.current&&(s.onTriggerEnter(),d.current=!0)}),onPointerLeave:zd(e.onPointerLeave,()=>{s.onTriggerLeave(),d.current=!1}),onPointerDown:zd(e.onPointerDown,()=>{s.open&&s.onClose(),u.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:zd(e.onFocus,()=>{u.current||s.onOpen()}),onBlur:zd(e.onBlur,s.onClose),onClick:zd(e.onClick,s.onClose)})})});smn.displayName=Xde;var amn="TooltipPortal",[Iys,imn]=hq(amn,{forceMount:void 0}),Yj="TooltipContent",omn=v.forwardRef((e,t)=>{const n=imn(Yj,e.__scopeTooltip),{forceMount:r=n.forceMount,side:s="top",...a}=e,i=mq(Yj,e.__scopeTooltip);return o.jsx(f3,{present:r||i.open,children:i.disableHoverableContent?o.jsx(Qct,{side:s,...a,ref:t}):o.jsx(lmn,{side:s,...a,ref:t})})}),lmn=v.forwardRef((e,t)=>{const n=mq(Yj,e.__scopeTooltip),r=Wct(Yj,e.__scopeTooltip),s=v.useRef(null),a=Ig(t,s),[i,l]=v.useState(null),{trigger:c,onClose:u}=n,d=s.current,{onPointerInTransitChange:f}=r,p=v.useCallback(()=>{l(null),f(!1)},[f]),h=v.useCallback((m,g)=>{const y=m.currentTarget,b={x:m.clientX,y:m.clientY},w=pmn(b,y.getBoundingClientRect()),S=hmn(b,w),k=mmn(g.getBoundingClientRect()),_=vmn([...S,...k]);l(_),f(!0)},[f]);return v.useEffect(()=>()=>p(),[p]),v.useEffect(()=>{if(c&&d){const m=y=>h(y,d),g=y=>h(y,c);return c.addEventListener("pointerleave",m),d.addEventListener("pointerleave",g),()=>{c.removeEventListener("pointerleave",m),d.removeEventListener("pointerleave",g)}}},[c,d,h,p]),v.useEffect(()=>{if(i){const m=g=>{const y=g.target,b={x:g.clientX,y:g.clientY},w=c?.contains(y)||d?.contains(y),S=!gmn(b,i);w?p():S&&(p(),u())};return document.addEventListener("pointermove",m),()=>document.removeEventListener("pointermove",m)}},[c,d,i,u,p]),o.jsx(Qct,{...e,ref:a})}),[cmn,umn]=hq(Gct,{isInside:!1}),dmn=kpn("TooltipContent"),Qct=v.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":s,onEscapeKeyDown:a,onPointerDownOutside:i,...l}=e,c=mq(Yj,n),u=ybe(n),{onClose:d}=c;return v.useEffect(()=>(document.addEventListener(LMe,d),()=>document.removeEventListener(LMe,d)),[d]),v.useEffect(()=>{if(c.trigger){const f=p=>{p.target?.contains(c.trigger)&&d()};return window.addEventListener("scroll",f,{capture:!0}),()=>window.removeEventListener("scroll",f,{capture:!0})}},[c.trigger,d]),o.jsx(dbe,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:i,onFocusOutside:f=>f.preventDefault(),onDismiss:d,children:o.jsxs(qhn,{"data-state":c.stateAttribute,...u,...l,ref:t,style:{...l.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:[o.jsx(dmn,{children:r}),o.jsx(cmn,{scope:n,isInside:!0,children:o.jsx(tmn,{id:c.contentId,role:"tooltip",children:s||r})})]})})});omn.displayName=Yj;var Yct="TooltipArrow",fmn=v.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,s=ybe(n);return umn(Yct,n).isInside?null:o.jsx(Vhn,{...s,...r,ref:t})});fmn.displayName=Yct;function pmn(e,t){const n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),s=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,s,a)){case a:return"left";case s:return"right";case n:return"top";case r:return"bottom";default:throw new Error("unreachable")}}function hmn(e,t,n=5){const 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});break}return r}function mmn(e){const{top:t,right:n,bottom:r,left:s}=e;return[{x:s,y:t},{x:n,y:t},{x:n,y:r},{x:s,y:r}]}function gmn(e,t){const{x:n,y:r}=e;let s=!1;for(let a=0,i=t.length-1;a<t.length;i=a++){const l=t[a],c=t[i],u=l.x,d=l.y,f=c.x,p=c.y;d>r!=p>r&&n<(f-u)*(r-d)/(p-d)+u&&(s=!s)}return s}function vmn(e){const t=e.slice();return t.sort((n,r)=>n.x<r.x?-1:n.x>r.x?1:n.y<r.y?-1:n.y>r.y?1:0),ymn(t)}function ymn(e){if(e.length<=1)return e.slice();const t=[];for(let r=0;r<e.length;r++){const s=e[r];for(;t.length>=2;){const a=t[t.length-1],i=t[t.length-2];if((a.x-i.x)*(s.y-i.y)>=(a.y-i.y)*(s.x-i.x))t.pop();else break}t.push(s)}t.pop();const n=[];for(let r=e.length-1;r>=0;r--){const s=e[r];for(;n.length>=2;){const a=n[n.length-1],i=n[n.length-2];if((a.x-i.x)*(s.y-i.y)>=(a.y-i.y)*(s.x-i.x))n.pop();else break}n.push(s)}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)}function bmn(e,t){const n=t||{};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const xmn=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,wmn=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Smn={};function FMe(e,t){return(Smn.jsx?wmn:xmn).test(e)}const kmn=/[ \t\n\f\r]/g;function Omn(e){return typeof e=="object"?e.type==="text"?zMe(e.value):!1:zMe(e)}function zMe(e){return e.replace(kmn,"")===""}let p3=class{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}};p3.prototype.normal={};p3.prototype.property={};p3.prototype.space=void 0;function Xct(e,t){const n={},r={};for(const s of e)Object.assign(n,s.property),Object.assign(r,s.normal);return new p3(n,r,t)}function Kde(e){return e.toLowerCase()}let Sf=class{constructor(t,n){this.attribute=n,this.property=t}};Sf.prototype.attribute="";Sf.prototype.booleanish=!1;Sf.prototype.boolean=!1;Sf.prototype.commaOrSpaceSeparated=!1;Sf.prototype.commaSeparated=!1;Sf.prototype.defined=!1;Sf.prototype.mustUseProperty=!1;Sf.prototype.number=!1;Sf.prototype.overloadedBoolean=!1;Sf.prototype.property="";Sf.prototype.spaceSeparated=!1;Sf.prototype.space=void 0;let _mn=0;const ss=u_(),wl=u_(),Jde=u_(),Gt=u_(),Ai=u_(),aj=u_(),Qf=u_();function u_(){return 2**++_mn}const efe=Object.freeze(Object.defineProperty({__proto__:null,boolean:ss,booleanish:wl,commaOrSpaceSeparated:Qf,commaSeparated:aj,number:Gt,overloadedBoolean:Jde,spaceSeparated:Ai},Symbol.toStringTag,{value:"Module"})),JY=Object.keys(efe);class bbe extends Sf{constructor(t,n,r,s){let a=-1;if(super(t,n),BMe(this,"space",s),typeof r=="number")for(;++a<JY.length;){const i=JY[a];BMe(this,JY[a],(r&efe[i])===efe[i])}}}bbe.prototype.defined=!0;function BMe(e,t,n){n&&(e[t]=n)}function vN(e){const t={},n={};for(const[r,s]of Object.entries(e.properties)){const a=new bbe(r,e.transform(e.attributes||{},r),s,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[Kde(r)]=r,n[Kde(a.attribute)]=r}return new p3(t,n,e.space)}const Kct=vN({properties:{ariaActiveDescendant:null,ariaAtomic:wl,ariaAutoComplete:null,ariaBusy:wl,ariaChecked:wl,ariaColCount:Gt,ariaColIndex:Gt,ariaColSpan:Gt,ariaControls:Ai,ariaCurrent:null,ariaDescribedBy:Ai,ariaDetails:null,ariaDisabled:wl,ariaDropEffect:Ai,ariaErrorMessage:null,ariaExpanded:wl,ariaFlowTo:Ai,ariaGrabbed:wl,ariaHasPopup:null,ariaHidden:wl,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:Ai,ariaLevel:Gt,ariaLive:null,ariaModal:wl,ariaMultiLine:wl,ariaMultiSelectable:wl,ariaOrientation:null,ariaOwns:Ai,ariaPlaceholder:null,ariaPosInSet:Gt,ariaPressed:wl,ariaReadOnly:wl,ariaRelevant:null,ariaRequired:wl,ariaRoleDescription:Ai,ariaRowCount:Gt,ariaRowIndex:Gt,ariaRowSpan:Gt,ariaSelected:wl,ariaSetSize:Gt,ariaSort:null,ariaValueMax:Gt,ariaValueMin:Gt,ariaValueNow:Gt,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function Jct(e,t){return t in e?e[t]:t}function eut(e,t){return Jct(e,t.toLowerCase())}const Cmn=vN({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:aj,acceptCharset:Ai,accessKey:Ai,action:null,allow:null,allowFullScreen:ss,allowPaymentRequest:ss,allowUserMedia:ss,alt:null,as:null,async:ss,autoCapitalize:null,autoComplete:Ai,autoFocus:ss,autoPlay:ss,blocking:Ai,capture:null,charSet:null,checked:ss,cite:null,className:Ai,cols:Gt,colSpan:null,content:null,contentEditable:wl,controls:ss,controlsList:Ai,coords:Gt|aj,crossOrigin:null,data:null,dateTime:null,decoding:null,default:ss,defer:ss,dir:null,dirName:null,disabled:ss,download:Jde,draggable:wl,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:ss,formTarget:null,headers:Ai,height:Gt,hidden:Jde,high:Gt,href:null,hrefLang:null,htmlFor:Ai,httpEquiv:Ai,id:null,imageSizes:null,imageSrcSet:null,inert:ss,inputMode:null,integrity:null,is:null,isMap:ss,itemId:null,itemProp:Ai,itemRef:Ai,itemScope:ss,itemType:Ai,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:ss,low:Gt,manifest:null,max:null,maxLength:Gt,media:null,method:null,min:null,minLength:Gt,multiple:ss,muted:ss,name:null,nonce:null,noModule:ss,noValidate:ss,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:ss,optimum:Gt,pattern:null,ping:Ai,placeholder:null,playsInline:ss,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:ss,referrerPolicy:null,rel:Ai,required:ss,reversed:ss,rows:Gt,rowSpan:Gt,sandbox:Ai,scope:null,scoped:ss,seamless:ss,selected:ss,shadowRootClonable:ss,shadowRootDelegatesFocus:ss,shadowRootMode:null,shape:null,size:Gt,sizes:null,slot:null,span:Gt,spellCheck:wl,src:null,srcDoc:null,srcLang:null,srcSet:null,start:Gt,step:null,style:null,tabIndex:Gt,target:null,title:null,translate:null,type:null,typeMustMatch:ss,useMap:null,value:wl,width:Gt,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:Ai,axis:null,background:null,bgColor:null,border:Gt,borderColor:null,bottomMargin:Gt,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:ss,declare:ss,event:null,face:null,frame:null,frameBorder:null,hSpace:Gt,leftMargin:Gt,link:null,longDesc:null,lowSrc:null,marginHeight:Gt,marginWidth:Gt,noResize:ss,noHref:ss,noShade:ss,noWrap:ss,object:null,profile:null,prompt:null,rev:null,rightMargin:Gt,rules:null,scheme:null,scrolling:wl,standby:null,summary:null,text:null,topMargin:Gt,valueType:null,version:null,vAlign:null,vLink:null,vSpace:Gt,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:ss,disableRemotePlayback:ss,prefix:null,property:null,results:Gt,security:null,unselectable:null},space:"html",transform:eut}),Emn=vN({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:Qf,accentHeight:Gt,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:Gt,amplitude:Gt,arabicForm:null,ascent:Gt,attributeName:null,attributeType:null,azimuth:Gt,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:Gt,by:null,calcMode:null,capHeight:Gt,className:Ai,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:Gt,diffuseConstant:Gt,direction:null,display:null,dur:null,divisor:Gt,dominantBaseline:null,download:ss,dx:null,dy:null,edgeMode:null,editable:null,elevation:Gt,enableBackground:null,end:null,event:null,exponent:Gt,externalResourcesRequired:null,fill:null,fillOpacity:Gt,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:aj,g2:aj,glyphName:aj,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:Gt,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:Gt,horizOriginX:Gt,horizOriginY:Gt,id:null,ideographic:Gt,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:Gt,k:Gt,k1:Gt,k2:Gt,k3:Gt,k4:Gt,kernelMatrix:Qf,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:Gt,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:Gt,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:Gt,overlineThickness:Gt,paintOrder:null,panose1:null,path:null,pathLength:Gt,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:Ai,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:Gt,pointsAtY:Gt,pointsAtZ:Gt,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Qf,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Qf,rev:Qf,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Qf,requiredFeatures:Qf,requiredFonts:Qf,requiredFormats:Qf,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:Gt,specularExponent:Gt,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:Gt,strikethroughThickness:Gt,string:null,stroke:null,strokeDashArray:Qf,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:Gt,strokeOpacity:Gt,strokeWidth:null,style:null,surfaceScale:Gt,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Qf,tabIndex:Gt,tableValues:null,target:null,targetX:Gt,targetY:Gt,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Qf,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:Gt,underlineThickness:Gt,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:Gt,values:null,vAlphabetic:Gt,vMathematical:Gt,vectorEffect:null,vHanging:Gt,vIdeographic:Gt,version:null,vertAdvY:Gt,vertOriginX:Gt,vertOriginY:Gt,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:Gt,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:Jct}),tut=vN({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),nut=vN({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:eut}),rut=vN({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),jmn={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Tmn=/[A-Z]/g,UMe=/-[a-z]/g,Nmn=/^data[-\w.:]+$/i;function Imn(e,t){const n=Kde(t);let r=t,s=Sf;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&Nmn.test(t)){if(t.charAt(4)==="-"){const a=t.slice(5).replace(UMe,Rmn);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=t.slice(4);if(!UMe.test(a)){let i=a.replace(Tmn,Amn);i.charAt(0)!=="-"&&(i="-"+i),t="data"+i}}s=bbe}return new s(r,t)}function Amn(e){return"-"+e.toLowerCase()}function Rmn(e){return e.charAt(1).toUpperCase()}const Pmn=Xct([Kct,Cmn,tut,nut,rut],"html"),xbe=Xct([Kct,Emn,tut,nut,rut],"svg");function $mn(e){return e.join(" ").trim()}var AC={},eX,qMe;function Mmn(){if(qMe)return eX;qMe=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,s=/^:\s*/,a=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,i=/^[;\s]*/,l=/^\s+|\s+$/g,c=`
|
|
@@ -333,7 +333,7 @@ attempted value: ${i}
|
|
|
333
333
|
\${}
|
|
334
334
|
}
|
|
335
335
|
}`,{label:"class",detail:"definition",type:"keyword"}),Md('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),Md('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],Yyt=zwe.concat([Md("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),Md("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),Md("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),HLe=new egt,Xyt=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function UA(e){return(t,n)=>{let r=t.node.getChild("VariableDefinition");return r&&n(r,e),!0}}const u8n=["FunctionDeclaration"],d8n={FunctionDeclaration:UA("function"),ClassDeclaration:UA("class"),ClassExpression:()=>!0,EnumDeclaration:UA("constant"),TypeAliasDeclaration:UA("type"),NamespaceDeclaration:UA("namespace"),VariableDefinition(e,t){e.matchContext(u8n)||t(e,"variable")},TypeDefinition(e,t){t(e,"type")},__proto__:null};function Kyt(e,t){let n=HLe.get(t);if(n)return n;let r=[],s=!0;function a(i,l){let c=e.sliceString(i.from,i.to);r.push({label:c,type:l})}return t.cursor(La.IncludeAnonymous).iterate(i=>{if(s)s=!1;else if(i.name){let l=d8n[i.name];if(l&&l(i,a)||Xyt.has(i.name))return!1}else if(i.to-i.from>8192){for(let l of Kyt(e,i.node))r.push(l);return!1}}),HLe.set(t,r),r}const f7=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,Bwe=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function Jyt(e){let t=fi(e.state).resolveInner(e.pos,-1);if(Bwe.indexOf(t.name)>-1)return null;let n=t.name=="VariableName"||t.to-t.from<20&&f7.test(e.state.sliceDoc(t.from,t.to));if(!n&&!e.explicit)return null;let r=[];for(let s=t;s;s=s.parent)Xyt.has(s.name)&&(r=r.concat(Kyt(e.state.doc,s)));return{options:r,from:n?t.from:e.pos,validFor:f7}}function jK(e,t,n){var r;let s=[];for(;;){let a=t.firstChild,i;if(a?.name=="VariableName")return s.push(e(a)),{path:s.reverse(),name:n};if(a?.name=="MemberExpression"&&((r=i=a.lastChild)===null||r===void 0?void 0:r.name)=="PropertyName")s.push(e(i)),t=a;else return null}}function ebt(e){let t=r=>e.state.doc.sliceString(r.from,r.to),n=fi(e.state).resolveInner(e.pos,-1);return n.name=="PropertyName"?jK(t,n.parent,t(n)):(n.name=="."||n.name=="?.")&&n.parent.name=="MemberExpression"?jK(t,n.parent,""):Bwe.indexOf(n.name)>-1?null:n.name=="VariableName"||n.to-n.from<20&&f7.test(t(n))?{path:[],name:t(n)}:n.name=="MemberExpression"?jK(t,n,""):e.explicit?{path:[],name:""}:null}function f8n(e,t){let n=e,r=[],s=new Set;for(let a=0;;a++){for(let l of(Object.getOwnPropertyNames||Object.keys)(e)){if(!/^[a-zA-Z_$\xaa-\uffdc][\w$\xaa-\uffdc]*$/.test(l)||s.has(l))continue;s.add(l);let c;try{c=n[l]}catch{continue}r.push({label:l,type:typeof c=="function"?/^[A-Z]/.test(l)?"class":t?"function":"method":t?"variable":"property",boost:-a})}let i=Object.getPrototypeOf(e);if(!i)return r;e=i}}function p8n(e){let t=new Map;return n=>{let r=ebt(n);if(!r)return null;let s=e;for(let i of r.path)if(s=s[i],!s)return null;let a=t.get(s);return a||t.set(s,a=f8n(s,!r.path.length)),{from:n.pos-r.name.length,options:a,validFor:f7}}}const Vh=SO.define({name:"javascript",parser:c8n.configure({props:[O_.add({IfStatement:yj({except:/^\s*({|else\b)/}),TryStatement:yj({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:o4n,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:i4n({closing:"}"}),ArrowFunction:e=>e.baseIndent+e.unit,"TemplateString BlockComment":()=>null,"Statement Property":yj({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}}),__.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":xwe,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){var t;let n=(t=e.firstChild)===null||t===void 0?void 0:t.nextSibling,r=e.lastChild;return!n||n.type.isError?null:{from:n.to,to:r.type.isError?e.to:r.from}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),tbt={test:e=>/^JSX/.test(e.name),facet:fV({commentTokens:{block:{open:"{/*",close:"*/}"}}})},Uwe=Vh.configure({dialect:"ts"},"typescript"),qwe=Vh.configure({dialect:"jsx",props:[vwe.add(e=>e.isTop?[tbt]:void 0)]}),Vwe=Vh.configure({dialect:"jsx ts",props:[vwe.add(e=>e.isTop?[tbt]:void 0)]},"typescript");let nbt=e=>({label:e,type:"keyword"});const rbt="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(nbt),h8n=rbt.concat(["declare","implements","private","protected","public"].map(nbt));function p7(e={}){let t=e.jsx?e.typescript?Vwe:qwe:e.typescript?Uwe:Vh,n=e.typescript?Yyt.concat(h8n):zwe.concat(rbt);return new OO(t,[Vh.data.of({autocomplete:W4n(Bwe,tyt(n))}),Vh.data.of({autocomplete:Jyt}),e.jsx?sbt:[]])}function m8n(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 WLe(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""}const g8n=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),sbt=Nt.inputHandler.of((e,t,n,r,s)=>{if((g8n?e.composing:e.compositionStarted)||e.state.readOnly||t!=n||r!=">"&&r!="/"||!Vh.isActiveAt(e.state,t,-1))return!1;let a=s(),{state:i}=a,l=i.changeByRange(c=>{var u;let{head:d}=c,f=fi(i).resolveInner(d-1,-1),p;if(f.name=="JSXStartTag"&&(f=f.parent),!(i.doc.sliceString(d-1,d)!=r||f.name=="JSXAttributeValue"&&f.to>d)){if(r==">"&&f.name=="JSXFragmentTag")return{range:c,changes:{from:d,insert:"</>"}};if(r=="/"&&f.name=="JSXStartCloseTag"){let h=f.parent,m=h.parent;if(m&&h.from==d-2&&((p=WLe(i.doc,m.firstChild,d))||((u=m.firstChild)===null||u===void 0?void 0:u.name)=="JSXFragmentTag")){let g=`${p}>`;return{range:bt.cursor(d+g.length,-1),changes:{from:d,insert:g}}}}else if(r==">"){let h=m8n(f);if(h&&h.name=="JSXOpenTag"&&!/^\/?>|^<\//.test(i.doc.sliceString(d,d+2))&&(p=WLe(i.doc,h,d)))return{range:c,changes:{from:d,insert:`</${p}>`}}}}return{range:c}});return l.changes.empty?!1:(e.dispatch([a,i.update(l,{userEvent:"input.complete",scrollIntoView:!0})]),!0)});function v8n(e,t){return t||(t={parserOptions:{ecmaVersion:2019,sourceType:"module"},env:{browser:!0,node:!0,es6:!0,es2015:!0,es2017:!0,es2020:!0},rules:{}},e.getRules().forEach((n,r)=>{var s;!((s=n.meta.docs)===null||s===void 0)&&s.recommended&&(t.rules[r]=2)})),n=>{let{state:r}=n,s=[];for(let{from:a,to:i}of Vh.findRegions(r)){let l=r.doc.lineAt(a),c={line:l.number-1,col:a-l.from,pos:a};for(let u of e.verify(r.sliceDoc(a,i),t))s.push(y8n(u,r.doc,c))}return s}}function ZLe(e,t,n,r){return n.line(e+r.line).from+t+(e==1?r.col-1:-1)}function y8n(e,t,n){let r=ZLe(e.line,e.column,t,n),s={from:r,to:e.endLine!=null&&e.endColumn!=1?ZLe(e.endLine,e.endColumn,t,n):r,message:e.message,source:e.ruleId?"eslint:"+e.ruleId:"eslint",severity:e.severity==1?"warning":"error"};if(e.fix){let{range:a,text:i}=e.fix,l=a[0]+n.pos-r,c=a[1]+n.pos-r;s.actions=[{name:"fix",apply(u,d){u.dispatch({changes:{from:d+l,to:d+c,insert:i},scrollIntoView:!0})}}]}return s}const d6=Object.freeze(Object.defineProperty({__proto__:null,autoCloseTags:sbt,completionPath:ebt,esLint:v8n,javascript:p7,javascriptLanguage:Vh,jsxLanguage:qwe,localCompletionSource:Jyt,scopeCompletionSource:p8n,snippets:zwe,tsxLanguage:Vwe,typescriptLanguage:Uwe,typescriptSnippets:Yyt},Symbol.toStringTag,{value:"Module"})),qA=["_blank","_self","_top","_parent"],TK=["ascii","utf-8","utf-16","latin1","latin1"],NK=["get","post","put","delete"],IK=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],Vf=["true","false"],Jn={},b8n={a:{attrs:{href:null,ping:null,type:null,media:null,target:qA,hreflang:null}},abbr:Jn,address:Jn,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:Jn,aside:Jn,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:Jn,base:{attrs:{href:null,target:qA}},bdi:Jn,bdo:Jn,blockquote:{attrs:{cite:null}},body:Jn,br:Jn,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:IK,formmethod:NK,formnovalidate:["novalidate"],formtarget:qA,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:Jn,center:Jn,cite:Jn,code:Jn,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:Jn,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:Jn,div:Jn,dl:Jn,dt:Jn,em:Jn,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:Jn,figure:Jn,footer:Jn,form:{attrs:{action:null,name:null,"accept-charset":TK,autocomplete:["on","off"],enctype:IK,method:NK,novalidate:["novalidate"],target:qA}},h1:Jn,h2:Jn,h3:Jn,h4:Jn,h5:Jn,h6:Jn,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:Jn,hgroup:Jn,hr:Jn,html:{attrs:{manifest:null}},i:Jn,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:IK,formmethod:NK,formnovalidate:["novalidate"],formtarget:qA,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:Jn,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:Jn,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:Jn,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:TK,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:Jn,noscript:Jn,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:Jn,param:{attrs:{name:null,value:null}},pre:Jn,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:Jn,rt:Jn,ruby:Jn,samp:Jn,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:TK}},section:Jn,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},slot:{attrs:{name:null}},small:Jn,source:{attrs:{src:null,type:null,media:null}},span:Jn,strong:Jn,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:Jn,summary:Jn,sup:Jn,table:Jn,tbody:Jn,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:Jn,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:Jn,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:Jn,time:{attrs:{datetime:null}},title:Jn,tr:Jn,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},ul:{children:["li","script","template","ul","ol"]},var:Jn,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:Jn},abt={accesskey:null,class:null,contenteditable:Vf,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:Vf,autocorrect:Vf,autocapitalize:Vf,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":Vf,"aria-autocomplete":["inline","list","both","none"],"aria-busy":Vf,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":Vf,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":Vf,"aria-hidden":Vf,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":Vf,"aria-multiselectable":Vf,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":Vf,"aria-relevant":null,"aria-required":Vf,"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},ibt="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 ibt)abt[e]=null;class H${constructor(t,n){this.tags={...b8n,...t},this.globalAttrs={...abt,...n},this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}}H$.default=new H$;function pT(e,t,n=e.length){if(!t)return"";let r=t.firstChild,s=r&&r.getChild("TagName");return s?e.sliceString(s.from,Math.min(s.to,n)):""}function hT(e,t=!1){for(;e;e=e.parent)if(e.name=="Element")if(t)t=!1;else return e;return null}function obt(e,t,n){let r=n.tags[pT(e,hT(t))];return r?.children||n.allTags}function Hwe(e,t){let n=[];for(let r=hT(t);r&&!r.type.isTop;r=hT(r.parent)){let s=pT(e,r);if(s&&r.lastChild.name=="CloseTag")break;s&&n.indexOf(s)<0&&(t.name=="EndTag"||t.from>=r.firstChild.to)&&n.push(s)}return n}const lbt=/^[:\-\.\w\u00b7-\uffff]*$/;function GLe(e,t,n,r,s){let a=/\s*>/.test(e.sliceDoc(s,s+5))?"":">",i=hT(n,n.name=="StartTag"||n.name=="TagName");return{from:r,to:s,options:obt(e.doc,i,t).map(l=>({label:l,type:"type"})).concat(Hwe(e.doc,n).map((l,c)=>({label:"/"+l,apply:"/"+l+a,type:"type",boost:99-c}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function QLe(e,t,n,r){let s=/\s*>/.test(e.sliceDoc(r,r+5))?"":">";return{from:n,to:r,options:Hwe(e.doc,t).map((a,i)=>({label:a,apply:a+s,type:"type",boost:99-i})),validFor:lbt}}function x8n(e,t,n,r){let s=[],a=0;for(let i of obt(e.doc,n,t))s.push({label:"<"+i,type:"type"});for(let i of Hwe(e.doc,n))s.push({label:"</"+i+">",type:"type",boost:99-a++});return{from:r,to:r,options:s,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function w8n(e,t,n,r,s){let a=hT(n),i=a?t.tags[pT(e.doc,a)]:null,l=i&&i.attrs?Object.keys(i.attrs):[],c=i&&i.globalAttrs===!1?l:l.length?l.concat(t.globalAttrNames):t.globalAttrNames;return{from:r,to:s,options:c.map(u=>({label:u,type:"property"})),validFor:lbt}}function S8n(e,t,n,r,s){var a;let i=(a=n.parent)===null||a===void 0?void 0:a.getChild("AttributeName"),l=[],c;if(i){let u=e.sliceDoc(i.from,i.to),d=t.globalAttrs[u];if(!d){let f=hT(n),p=f?t.tags[pT(e.doc,f)]:null;d=p?.attrs&&p.attrs[u]}if(d){let f=e.sliceDoc(r,s).toLowerCase(),p='"',h='"';/^['"]/.test(f)?(c=f[0]=='"'?/^[^"]*$/:/^[^']*$/,p="",h=e.sliceDoc(s,s+1)==f[0]?"":f[0],f=f.slice(1),r++):c=/^[^\s<>='"]*$/;for(let m of d)l.push({label:m,apply:p+m+h,type:"constant"})}}return{from:r,to:s,options:l,validFor:c}}function cbt(e,t){let{state:n,pos:r}=t,s=fi(n).resolveInner(r,-1),a=s.resolve(r);for(let i=r,l;a==s&&(l=s.childBefore(i));){let c=l.lastChild;if(!c||!c.type.isError||c.from<c.to)break;a=s=l,i=c.from}return s.name=="TagName"?s.parent&&/CloseTag$/.test(s.parent.name)?QLe(n,s,s.from,r):GLe(n,e,s,s.from,r):s.name=="StartTag"||s.name=="IncompleteTag"?GLe(n,e,s,r,r):s.name=="StartCloseTag"||s.name=="IncompleteCloseTag"?QLe(n,s,r,r):s.name=="OpenTag"||s.name=="SelfClosingTag"||s.name=="AttributeName"?w8n(n,e,s,s.name=="AttributeName"?s.from:r,r):s.name=="Is"||s.name=="AttributeValue"||s.name=="UnquotedAttributeValue"?S8n(n,e,s,s.name=="Is"?r:s.from,r):t.explicit&&(a.name=="Element"||a.name=="Text"||a.name=="Document")?x8n(n,e,s,r):null}function k8n(e){return cbt(H$.default,e)}function O8n(e){let{extraTags:t,extraGlobalAttributes:n}=e,r=n||t?new H$(t,n):H$.default;return s=>cbt(r,s)}const _8n=Vh.parser.configure({top:"SingleExpression"}),ubt=[{tag:"script",attrs:e=>e.type=="text/typescript"||e.lang=="ts",parser:Uwe.parser},{tag:"script",attrs:e=>e.type=="text/babel"||e.type=="text/jsx",parser:qwe.parser},{tag:"script",attrs:e=>e.type=="text/typescript-jsx",parser:Vwe.parser},{tag:"script",attrs(e){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(e.type)},parser:_8n},{tag:"script",attrs(e){return!e.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(e.type)},parser:Vh.parser},{tag:"style",attrs(e){return(!e.lang||e.lang=="css")&&(!e.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(e.type))},parser:d7.parser}],dbt=[{name:"style",parser:d7.parser.configure({top:"Styles"})}].concat(ibt.map(e=>({name:e,parser:Vh.parser}))),fbt=SO.define({name:"html",parser:YLn.configure({props:[O_.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 r=e.node;;){let s=r.lastChild;if(!s||s.name!="Element"||s.to!=r.to)break;t=r=s}return t&&!((n=t.lastChild)&&(n.name=="CloseTag"||n.name=="SelfClosingTag"))?e.lineIndent(t.from)+e.unit:null}}),__.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}}}),Gvt.add({"OpenTag CloseTag":e=>e.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:"<!--",close:"-->"}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-_"}}),B9=fbt.configure({wrap:qyt(ubt,dbt)});function C8n(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=qyt((e.nestedLanguages||[]).concat(ubt),(e.nestedAttributes||[]).concat(dbt)));let r=n?fbt.configure({wrap:n,dialect:t}):t?B9.configure({dialect:t}):B9;return new OO(r,[B9.data.of({autocomplete:O8n(e)}),e.autoCloseTags!==!1?E8n:[],p7().support,A6n().support])}const YLe=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),E8n=Nt.inputHandler.of((e,t,n,r,s)=>{if(e.composing||e.state.readOnly||t!=n||r!=">"&&r!="/"||!B9.isActiveAt(e.state,t,-1))return!1;let a=s(),{state:i}=a,l=i.changeByRange(c=>{var u,d,f;let p=i.doc.sliceString(c.from-1,c.to)==r,{head:h}=c,m=fi(i).resolveInner(h,-1),g;if(p&&r==">"&&m.name=="EndTag"){let y=m.parent;if(((d=(u=y.parent)===null||u===void 0?void 0:u.lastChild)===null||d===void 0?void 0:d.name)!="CloseTag"&&(g=pT(i.doc,y.parent,h))&&!YLe.has(g)){let b=h+(i.doc.sliceString(h,h+1)===">"?1:0),w=`</${g}>`;return{range:c,changes:{from:h,to:b,insert:w}}}}else if(p&&r=="/"&&m.name=="IncompleteCloseTag"){let y=m.parent;if(m.from==h-2&&((f=y.lastChild)===null||f===void 0?void 0:f.name)!="CloseTag"&&(g=pT(i.doc,y,h))&&!YLe.has(g)){let b=h+(i.doc.sliceString(h,h+1)===">"?1:0),w=`${g}>`;return{range:bt.cursor(h+w.length,-1),changes:{from:h,to:b,insert:w}}}}return{range:c}});return l.changes.empty?!1:(e.dispatch([a,i.update(l,{userEvent:"input.complete",scrollIntoView:!0})]),!0)}),pbt=fV({commentTokens:{block:{open:"<!--",close:"-->"}}}),hbt=new Rr,mbt=K5n.configure({props:[__.add(e=>!e.is("Block")||e.is("Document")||ihe(e)!=null||j8n(e)?void 0:(t,n)=>({from:n.doc.lineAt(t.from).to,to:t.to})),hbt.add(ihe),O_.add({Document:()=>null}),mw.add({Document:pbt})]});function ihe(e){let t=/^(?:ATX|Setext)Heading(\d)$/.exec(e.name);return t?+t[1]:void 0}function j8n(e){return e.name=="OrderedList"||e.name=="BulletList"}function T8n(e,t){let n=e;for(;;){let r=n.nextSibling,s;if(!r||(s=ihe(r.type))!=null&&s<=t)break;n=r}return n.to}const N8n=Mvt.of((e,t,n)=>{for(let r=fi(e).resolveInner(n,-1);r&&!(r.from<t);r=r.parent){let s=r.type.prop(hbt);if(s==null)continue;let a=T8n(r,s);if(a>n)return{from:n,to:a}}return null});function Wwe(e){return new mp(pbt,e,[],"markdown")}const gbt=Wwe(mbt),I8n=mbt.configure([cLn,dLn,uLn,fLn,{props:[__.add({Table:(e,t)=>({from:t.doc.lineAt(e.from).to,to:e.to})})]}]),EO=Wwe(I8n);function A8n(e,t){return n=>{if(n&&e){let r=null;if(n=/\S*/.exec(n)[0],typeof e=="function"?r=e(n):r=Ym.matchLanguageName(e,n,!0),r instanceof Ym)return r.support?r.support.language.parser:kO.getSkippingParser(r.load());if(r)return r.parser}return t?t.parser:null}}class AK{constructor(t,n,r,s,a,i,l){this.node=t,this.from=n,this.to=r,this.spaceBefore=s,this.spaceAfter=a,this.type=i,this.item=l}blank(t,n=!0){let r=this.spaceBefore+(this.node.name=="Blockquote"?">":"");if(t!=null){for(;r.length<t;)r+=" ";return r}else{for(let s=this.to-this.from-r.length-this.spaceAfter.length;s>0;s--)r+=" ";return r+(n?this.spaceAfter:"")}}marker(t,n){let r=this.node.name=="OrderedList"?String(+ybt(this.item,t)[2]+n):"";return this.spaceBefore+r+this.type+this.spaceAfter}}function vbt(e,t){let n=[],r=[];for(let s=e;s;s=s.parent){if(s.name=="FencedCode")return r;(s.name=="ListItem"||s.name=="Blockquote")&&n.push(s)}for(let s=n.length-1;s>=0;s--){let a=n[s],i,l=t.lineAt(a.from),c=a.from-l.from;if(a.name=="Blockquote"&&(i=/^ *>( ?)/.exec(l.text.slice(c))))r.push(new AK(a,c,c+i[0].length,"",i[1],">",null));else if(a.name=="ListItem"&&a.parent.name=="OrderedList"&&(i=/^( *)\d+([.)])( *)/.exec(l.text.slice(c)))){let u=i[3],d=i[0].length;u.length>=4&&(u=u.slice(0,u.length-4),d-=4),r.push(new AK(a.parent,c,c+d,i[1],u,i[2],a))}else if(a.name=="ListItem"&&a.parent.name=="BulletList"&&(i=/^( *)([-+*])( {1,4}\[[ xX]\])?( +)/.exec(l.text.slice(c)))){let u=i[4],d=i[0].length;u.length>4&&(u=u.slice(0,u.length-4),d-=4);let f=i[2];i[3]&&(f+=i[3].replace(/[xX]/," ")),r.push(new AK(a.parent,c,c+d,i[1],u,f,a))}}return r}function ybt(e,t){return/^(\s*)(\d+)(?=[.)])/.exec(t.sliceString(e.from,e.from+10))}function RK(e,t,n,r=0){for(let s=-1,a=e;;){if(a.name=="ListItem"){let l=ybt(a,t),c=+l[2];if(s>=0){if(c!=s+1)return;n.push({from:a.from+l[1].length,to:a.from+l[0].length,insert:String(s+2+r)})}s=c}let i=a.nextSibling;if(!i)break;a=i}}function Zwe(e,t){let n=/^[ \t]*/.exec(e)[0].length;if(!n||t.facet($N)!=" ")return e;let r=_g(e,4,n),s="";for(let a=r;a>0;)a>=4?(s+=" ",a-=4):(s+=" ",a--);return s+e.slice(n)}const bbt=(e={})=>({state:t,dispatch:n})=>{let r=fi(t),{doc:s}=t,a=null,i=t.changeByRange(l=>{if(!l.empty||!EO.isActiveAt(t,l.from,-1)&&!EO.isActiveAt(t,l.from,1))return a={range:l};let c=l.from,u=s.lineAt(c),d=vbt(r.resolveInner(c,-1),s);for(;d.length&&d[d.length-1].from>c-u.from;)d.pop();if(!d.length)return a={range:l};let f=d[d.length-1];if(f.to-f.spaceAfter.length>c-u.from)return a={range:l};let p=c>=f.to-f.spaceAfter.length&&!/\S/.test(u.text.slice(f.to));if(f.item&&p){let b=f.node.firstChild,w=f.node.getChild("ListItem","ListItem");if(b.to>=c||w&&w.to<c||u.from>0&&!/[^\s>]/.test(s.lineAt(u.from-1).text)||e.nonTightLists===!1){let S=d.length>1?d[d.length-2]:null,k,_="";S&&S.item?(k=u.from+S.from,_=S.marker(s,1)):k=u.from+(S?S.to:0);let C=[{from:k,to:c,insert:_}];return f.node.name=="OrderedList"&&RK(f.item,s,C,-2),S&&S.node.name=="OrderedList"&&RK(S.item,s,C),{range:bt.cursor(k+_.length),changes:C}}else{let S=KLe(d,t,u);return{range:bt.cursor(c+S.length+1),changes:{from:u.from,insert:S+t.lineBreak}}}}if(f.node.name=="Blockquote"&&p&&u.from){let b=s.lineAt(u.from-1),w=/>\s*$/.exec(b.text);if(w&&w.index==f.from){let S=t.changes([{from:b.from+w.index,to:b.to},{from:u.from+f.from,to:u.to}]);return{range:l.map(S),changes:S}}}let h=[];f.node.name=="OrderedList"&&RK(f.item,s,h);let m=f.item&&f.item.from<u.from,g="";if(!m||/^[\s\d.)\-+*>]*/.exec(u.text)[0].length>=f.to)for(let b=0,w=d.length-1;b<=w;b++)g+=b==w&&!m?d[b].marker(s,1):d[b].blank(b<w?_g(u.text,4,d[b+1].from)-g.length:null);let y=c;for(;y>u.from&&/\s/.test(u.text.charAt(y-u.from-1));)y--;return g=Zwe(g,t),R8n(f.node,t.doc)&&(g=KLe(d,t,u)+t.lineBreak+g),h.push({from:y,to:c,insert:t.lineBreak+g}),{range:bt.cursor(y+g.length+1),changes:h}});return a?!1:(n(t.update(i,{scrollIntoView:!0,userEvent:"input"})),!0)},xbt=bbt();function XLe(e){return e.name=="QuoteMark"||e.name=="ListMark"}function R8n(e,t){if(e.name!="OrderedList"&&e.name!="BulletList")return!1;let n=e.firstChild,r=e.getChild("ListItem","ListItem");if(!r)return!1;let s=t.lineAt(n.to),a=t.lineAt(r.from),i=/^[\s>]*$/.test(s.text);return s.number+(i?0:1)<a.number}function KLe(e,t,n){let r="";for(let s=0,a=e.length-2;s<=a;s++)r+=e[s].blank(s<a?_g(n.text,4,e[s+1].from)-r.length:null,s<a);return Zwe(r,t)}function P8n(e,t){let n=e.resolveInner(t,-1),r=t;XLe(n)&&(r=n.from,n=n.parent);for(let s;s=n.childBefore(r);)if(XLe(s))r=s.from;else if(s.name=="OrderedList"||s.name=="BulletList")n=s.lastChild,r=n.to;else break;return n}const wbt=({state:e,dispatch:t})=>{let n=fi(e),r=null,s=e.changeByRange(a=>{let i=a.from,{doc:l}=e;if(a.empty&&EO.isActiveAt(e,a.from)){let c=l.lineAt(i),u=vbt(P8n(n,i),l);if(u.length){let d=u[u.length-1],f=d.to-d.spaceAfter.length+(d.spaceAfter?1:0);if(i-c.from>f&&!/\S/.test(c.text.slice(f,i-c.from)))return{range:bt.cursor(c.from+f),changes:{from:c.from+f,to:i}};if(i-c.from==f&&(!d.item||c.from<=d.item.from||!/\S/.test(c.text.slice(0,d.to)))){let p=c.from+d.from;if(d.item&&d.node.from<d.item.from&&/\S/.test(c.text.slice(d.from,d.to))){let h=d.blank(_g(c.text,4,d.to)-_g(c.text,4,d.from));return p==c.from&&(h=Zwe(h,e)),{range:bt.cursor(p+h.length),changes:{from:p,to:c.from+d.to,insert:h}}}if(p<i)return{range:bt.cursor(p),changes:{from:p,to:i}}}}}return r={range:a}});return r?!1:(t(e.update(s,{scrollIntoView:!0,userEvent:"delete"})),!0)},Sbt=[{key:"Enter",run:xbt},{key:"Backspace",run:wbt}],kbt=C8n({matchClosingTags:!1});function Gwe(e={}){let{codeLanguages:t,defaultCodeLanguage:n,addKeymap:r=!0,base:{parser:s}=gbt,completeHTMLTags:a=!0,pasteURLAsLink:i=!0,htmlTagLanguage:l=kbt}=e;if(!(s instanceof gV))throw new RangeError("Base parser provided to `markdown` should be a Markdown parser");let c=e.extensions?[e.extensions]:[],u=[l.support,N8n],d;i&&u.push(Obt),n instanceof OO?(u.push(n.support),d=n.language):n&&(d=n);let f=t||d?A8n(t,d):void 0;c.push(eLn({codeParser:f,htmlParser:l.language.parser})),r&&u.push(Pg.high(PN.of(Sbt)));let p=Wwe(s.configure(c));return a&&u.push(p.data.of({autocomplete:$8n})),new OO(p,u)}function $8n(e){let{state:t,pos:n}=e,r=/<[:\-\.\w\u00b7-\uffff]*$/.exec(t.sliceDoc(n-25,n));if(!r)return null;let s=fi(t).resolveInner(n,-1);for(;s&&!s.type.isTop;){if(s.name=="CodeBlock"||s.name=="FencedCode"||s.name=="ProcessingInstructionBlock"||s.name=="CommentBlock"||s.name=="Link"||s.name=="Image")return null;s=s.parent}return{from:n-r[0].length,to:n,options:M8n(),validFor:/^<[:\-\.\w\u00b7-\uffff]*$/}}let PK=null;function M8n(){if(PK)return PK;let e=k8n(new Owe(os.create({extensions:kbt}),0,!0));return PK=e?e.options:[]}const D8n=/code|horizontalrule|html|link|comment|processing|escape|entity|image|mark|url/i,Obt=Nt.domEventHandlers({paste:(e,t)=>{var n;let{main:r}=t.state.selection;if(r.empty)return!1;let s=(n=e.clipboardData)===null||n===void 0?void 0:n.getData("text/plain");if(!s||!/^(https?:\/\/|mailto:|xmpp:|www\.)/.test(s)||(/^www\./.test(s)&&(s="https://"+s),!EO.isActiveAt(t.state,r.from,1)))return!1;let a=fi(t.state),i=!1;return a.iterate({from:r.from,to:r.to,enter:l=>{(l.from>r.from||D8n.test(l.name))&&(i=!0)},leave:l=>{l.to<r.to&&(i=!0)}}),i?!1:(t.dispatch({changes:[{from:r.from,insert:"["},{from:r.to,insert:`](${s})`}],userEvent:"input.paste",scrollIntoView:!0}),!0)}}),L8n=Object.freeze(Object.defineProperty({__proto__:null,commonmarkLanguage:gbt,deleteMarkupBackward:wbt,insertNewlineContinueMarkup:xbt,insertNewlineContinueMarkupCommand:bbt,markdown:Gwe,markdownKeymap:Sbt,markdownLanguage:EO,pasteURLAsLink:Obt},Symbol.toStringTag,{value:"Module"}));function jO(){return jO=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jO.apply(null,arguments)}var F8n=e=>{var t=e.theme,n=e.settings,r=n===void 0?{}:n,s=e.styles,a=s===void 0?[]:s,i={".cm-gutters":{}},l={};r.background&&(l.backgroundColor=r.background),r.backgroundImage&&(l.backgroundImage=r.backgroundImage),r.foreground&&(l.color=r.foreground),r.fontSize&&(l.fontSize=r.fontSize),(r.background||r.foreground)&&(i["&"]=l),r.fontFamily&&(i["&.cm-editor .cm-scroller"]={fontFamily:r.fontFamily}),r.gutterBackground&&(i[".cm-gutters"].backgroundColor=r.gutterBackground),r.gutterForeground&&(i[".cm-gutters"].color=r.gutterForeground),r.gutterBorder&&(i[".cm-gutters"].borderRightColor=r.gutterBorder),r.caret&&(i[".cm-content"]={caretColor:r.caret},i[".cm-cursor, .cm-dropCursor"]={borderLeftColor:r.caret});var c={};r.gutterActiveForeground&&(c.color=r.gutterActiveForeground),r.lineHighlight&&(i[".cm-activeLine"]={backgroundColor:r.lineHighlight},c.backgroundColor=r.lineHighlight),i[".cm-activeLineGutter"]=c,r.selection&&(i["&.cm-focused .cm-selectionBackground, & .cm-line::selection, & .cm-selectionLayer .cm-selectionBackground, .cm-content ::selection"]={background:r.selection+" !important"}),r.selectionMatch&&(i["& .cm-selectionMatch"]={backgroundColor:r.selectionMatch});var u=Nt.theme(i,{dark:t==="dark"}),d=$g.define(a),f=[u,F1(d)];return f},z8n={background:"#282a36",foreground:"#f8f8f2",caret:"#f8f8f0",selection:"rgba(255, 255, 255, 0.1)",selectionMatch:"rgba(255, 255, 255, 0.2)",gutterBackground:"#282a36",gutterForeground:"#6D8A88",gutterBorder:"transparent",lineHighlight:"rgba(255, 255, 255, 0.1)"},B8n=[{tag:fe.comment,color:"#6272a4"},{tag:fe.string,color:"#f1fa8c"},{tag:fe.atom,color:"#bd93f9"},{tag:fe.meta,color:"#f8f8f2"},{tag:[fe.keyword,fe.operator,fe.tagName],color:"#ff79c6"},{tag:[fe.function(fe.propertyName),fe.propertyName],color:"#66d9ef"},{tag:[fe.definition(fe.variableName),fe.function(fe.variableName),fe.className,fe.attributeName],color:"#50fa7b"},{tag:fe.atom,color:"#bd93f9"}],DN=e=>{var t=e||{},n=t.theme,r=n===void 0?"dark":n,s=t.settings,a=s===void 0?{}:s,i=t.styles,l=i===void 0?[]:i;return F8n({theme:r,settings:jO({},z8n,a),styles:[...B8n,...l]})};DN();function _bt(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}const U8n=e=>{let{state:t}=e,n=t.doc.lineAt(t.selection.main.from),r=Ywe(e.state,n.from);return r.line?q8n(e):r.block?H8n(e):!1};function Qwe(e,t){return({state:n,dispatch:r})=>{if(n.readOnly)return!1;let s=e(t,n);return s?(r(n.update(s)),!0):!1}}const q8n=Qwe(G8n,0),V8n=Qwe(Cbt,0),H8n=Qwe((e,t)=>Cbt(e,t,Z8n(t)),0);function Ywe(e,t){let n=e.languageDataAt("commentTokens",t,1);return n.length?n[0]:{}}const VA=50;function W8n(e,{open:t,close:n},r,s){let a=e.sliceDoc(r-VA,r),i=e.sliceDoc(s,s+VA),l=/\s*$/.exec(a)[0].length,c=/^\s*/.exec(i)[0].length,u=a.length-l;if(a.slice(u-t.length,u)==t&&i.slice(c,c+n.length)==n)return{open:{pos:r-l,margin:l&&1},close:{pos:s+c,margin:c&&1}};let d,f;s-r<=2*VA?d=f=e.sliceDoc(r,s):(d=e.sliceDoc(r,r+VA),f=e.sliceDoc(s-VA,s));let p=/^\s*/.exec(d)[0].length,h=/\s*$/.exec(f)[0].length,m=f.length-h-n.length;return d.slice(p,p+t.length)==t&&f.slice(m,m+n.length)==n?{open:{pos:r+p+t.length,margin:/\s/.test(d.charAt(p+t.length))?1:0},close:{pos:s-h-n.length,margin:/\s/.test(f.charAt(m-1))?1:0}}:null}function Z8n(e){let t=[];for(let n of e.selection.ranges){let r=e.doc.lineAt(n.from),s=n.to<=r.to?r:e.doc.lineAt(n.to);s.from>r.from&&s.from==n.to&&(s=n.to==r.to+1?r:e.doc.lineAt(n.to-1));let a=t.length-1;a>=0&&t[a].to>r.from?t[a].to=s.to:t.push({from:r.from+/^\s*/.exec(r.text)[0].length,to:s.to})}return t}function Cbt(e,t,n=t.selection.ranges){let r=n.map(a=>Ywe(t,a.from).block);if(!r.every(a=>a))return null;let s=n.map((a,i)=>W8n(t,r[i],a.from,a.to));if(e!=2&&!s.every(a=>a))return{changes:t.changes(n.map((a,i)=>s[i]?[]:[{from:a.from,insert:r[i].open+" "},{from:a.to,insert:" "+r[i].close}]))};if(e!=1&&s.some(a=>a)){let a=[];for(let i=0,l;i<s.length;i++)if(l=s[i]){let c=r[i],{open:u,close:d}=l;a.push({from:u.pos-c.open.length,to:u.pos+u.margin},{from:d.pos-d.margin,to:d.pos+c.close.length})}return{changes:a}}return null}function G8n(e,t,n=t.selection.ranges){let r=[],s=-1;e:for(let{from:a,to:i}of n){let l=r.length,c=1e9,u;for(let d=a;d<=i;){let f=t.doc.lineAt(d);if(u==null&&(u=Ywe(t,f.from).line,!u))continue e;if(f.from>s&&(a==i||i>f.from)){s=f.from;let p=/^\s*/.exec(f.text)[0].length,h=p==f.length,m=f.text.slice(p,p+u.length)==u?p:-1;p<f.text.length&&p<c&&(c=p),r.push({line:f,comment:m,token:u,indent:p,empty:h,single:!1})}d=f.to+1}if(c<1e9)for(let d=l;d<r.length;d++)r[d].indent<r[d].line.text.length&&(r[d].indent=c);r.length==l+1&&(r[l].single=!0)}if(e!=2&&r.some(a=>a.comment<0&&(!a.empty||a.single))){let a=[];for(let{line:l,token:c,indent:u,empty:d,single:f}of r)(f||!d)&&a.push({from:l.from+u,insert:c+" "});let i=t.changes(a);return{changes:i,selection:t.selection.map(i,1)}}else if(e!=1&&r.some(a=>a.comment>=0)){let a=[];for(let{line:i,comment:l,token:c}of r)if(l>=0){let u=i.from+l,d=u+c.length;i.text[d-i.from]==" "&&d++,a.push({from:u,to:d})}return{changes:a}}return null}const ohe=Ay.define(),Q8n=Ay.define(),Y8n=On.define(),Ebt=On.define({combine(e){return Ry(e,{minDepth:100,newGroupDelay:500,joinToEvent:(t,n)=>n},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(t,n)=>(r,s)=>t(r,s)||n(r,s)})}}),jbt=ml.define({create(){return Lv.empty},update(e,t){let n=t.state.facet(Ebt),r=t.annotation(ohe);if(r){let c=Yd.fromTransaction(t,r.selection),u=r.side,d=u==0?e.undone:e.done;return c?d=h7(d,d.length,n.minDepth,c):d=Ibt(d,t.startState.selection),new Lv(u==0?r.rest:d,u==0?d:r.rest)}let s=t.annotation(Q8n);if((s=="full"||s=="before")&&(e=e.isolate()),t.annotation(El.addToHistory)===!1)return t.changes.empty?e:e.addMapping(t.changes.desc);let a=Yd.fromTransaction(t),i=t.annotation(El.time),l=t.annotation(El.userEvent);return a?e=e.addChanges(a,i,l,n,t):t.selection&&(e=e.addSelection(t.startState.selection,i,l,n.newGroupDelay)),(s=="full"||s=="after")&&(e=e.isolate()),e},toJSON(e){return{done:e.done.map(t=>t.toJSON()),undone:e.undone.map(t=>t.toJSON())}},fromJSON(e){return new Lv(e.done.map(Yd.fromJSON),e.undone.map(Yd.fromJSON))}});function X8n(e={}){return[jbt,Ebt.of(e),Nt.domEventHandlers({beforeinput(t,n){let r=t.inputType=="historyUndo"?Tbt:t.inputType=="historyRedo"?lhe:null;return r?(t.preventDefault(),r(n)):!1}})]}function vV(e,t){return function({state:n,dispatch:r}){if(!t&&n.readOnly)return!1;let s=n.field(jbt,!1);if(!s)return!1;let a=s.pop(e,n,t);return a?(r(a),!0):!1}}const Tbt=vV(0,!1),lhe=vV(1,!1),K8n=vV(0,!0),J8n=vV(1,!0);class Yd{constructor(t,n,r,s,a){this.changes=t,this.effects=n,this.mapped=r,this.startSelection=s,this.selectionsAfter=a}setSelAfter(t){return new Yd(this.changes,this.effects,this.mapped,this.startSelection,t)}toJSON(){var t,n,r;return{changes:(t=this.changes)===null||t===void 0?void 0:t.toJSON(),mapped:(n=this.mapped)===null||n===void 0?void 0:n.toJSON(),startSelection:(r=this.startSelection)===null||r===void 0?void 0:r.toJSON(),selectionsAfter:this.selectionsAfter.map(s=>s.toJSON())}}static fromJSON(t){return new Yd(t.changes&&_l.fromJSON(t.changes),[],t.mapped&&Yv.fromJSON(t.mapped),t.startSelection&&bt.fromJSON(t.startSelection),t.selectionsAfter.map(bt.fromJSON))}static fromTransaction(t,n){let r=$h;for(let s of t.startState.facet(Y8n)){let a=s(t);a.length&&(r=r.concat(a))}return!r.length&&t.changes.empty?null:new Yd(t.changes.invert(t.startState.doc),r,void 0,n||t.startState.selection,$h)}static selection(t){return new Yd(void 0,$h,void 0,void 0,t)}}function h7(e,t,n,r){let s=t+1>n+20?t-n-1:0,a=e.slice(s,t);return a.push(r),a}function e9n(e,t){let n=[],r=!1;return e.iterChangedRanges((s,a)=>n.push(s,a)),t.iterChangedRanges((s,a,i,l)=>{for(let c=0;c<n.length;){let u=n[c++],d=n[c++];l>=u&&i<=d&&(r=!0)}}),r}function t9n(e,t){return e.ranges.length==t.ranges.length&&e.ranges.filter((n,r)=>n.empty!=t.ranges[r].empty).length===0}function Nbt(e,t){return e.length?t.length?e.concat(t):e:t}const $h=[],n9n=200;function Ibt(e,t){if(e.length){let n=e[e.length-1],r=n.selectionsAfter.slice(Math.max(0,n.selectionsAfter.length-n9n));return r.length&&r[r.length-1].eq(t)?e:(r.push(t),h7(e,e.length-1,1e9,n.setSelAfter(r)))}else return[Yd.selection([t])]}function r9n(e){let t=e[e.length-1],n=e.slice();return n[e.length-1]=t.setSelAfter(t.selectionsAfter.slice(0,t.selectionsAfter.length-1)),n}function $K(e,t){if(!e.length)return e;let n=e.length,r=$h;for(;n;){let s=s9n(e[n-1],t,r);if(s.changes&&!s.changes.empty||s.effects.length){let a=e.slice(0,n);return a[n-1]=s,a}else t=s.mapped,n--,r=s.selectionsAfter}return r.length?[Yd.selection(r)]:$h}function s9n(e,t,n){let r=Nbt(e.selectionsAfter.length?e.selectionsAfter.map(l=>l.map(t)):$h,n);if(!e.changes)return Yd.selection(r);let s=e.changes.map(t),a=t.mapDesc(e.changes,!0),i=e.mapped?e.mapped.composeDesc(a):a;return new Yd(s,vr.mapEffects(e.effects,t),i,e.startSelection.map(a),r)}const a9n=/^(input\.type|delete)($|\.)/;class Lv{constructor(t,n,r=0,s=void 0){this.done=t,this.undone=n,this.prevTime=r,this.prevUserEvent=s}isolate(){return this.prevTime?new Lv(this.done,this.undone):this}addChanges(t,n,r,s,a){let i=this.done,l=i[i.length-1];return l&&l.changes&&!l.changes.empty&&t.changes&&(!r||a9n.test(r))&&(!l.selectionsAfter.length&&n-this.prevTime<s.newGroupDelay&&s.joinToEvent(a,e9n(l.changes,t.changes))||r=="input.type.compose")?i=h7(i,i.length-1,s.minDepth,new Yd(t.changes.compose(l.changes),Nbt(vr.mapEffects(t.effects,l.changes),l.effects),l.mapped,l.startSelection,$h)):i=h7(i,i.length,s.minDepth,t),new Lv(i,$h,n,r)}addSelection(t,n,r,s){let a=this.done.length?this.done[this.done.length-1].selectionsAfter:$h;return a.length>0&&n-this.prevTime<s&&r==this.prevUserEvent&&r&&/^select($|\.)/.test(r)&&t9n(a[a.length-1],t)?this:new Lv(Ibt(this.done,t),this.undone,n,r)}addMapping(t){return new Lv($K(this.done,t),$K(this.undone,t),this.prevTime,this.prevUserEvent)}pop(t,n,r){let s=t==0?this.done:this.undone;if(s.length==0)return null;let a=s[s.length-1],i=a.selectionsAfter[0]||(a.startSelection?a.startSelection.map(a.changes.invertedDesc,1):n.selection);if(r&&a.selectionsAfter.length)return n.update({selection:a.selectionsAfter[a.selectionsAfter.length-1],annotations:ohe.of({side:t,rest:r9n(s),selection:i}),userEvent:t==0?"select.undo":"select.redo",scrollIntoView:!0});if(a.changes){let l=s.length==1?$h:s.slice(0,s.length-1);return a.mapped&&(l=$K(l,a.mapped)),n.update({changes:a.changes,selection:a.startSelection,effects:a.effects,annotations:ohe.of({side:t,rest:l,selection:i}),filter:!1,userEvent:t==0?"undo":"redo",scrollIntoView:!0})}else return null}}Lv.empty=new Lv($h,$h);const i9n=[{key:"Mod-z",run:Tbt,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:lhe,preventDefault:!0},{linux:"Ctrl-Shift-z",run:lhe,preventDefault:!0},{key:"Mod-u",run:K8n,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:J8n,preventDefault:!0}];function LN(e,t){return bt.create(e.ranges.map(t),e.mainIndex)}function Mg(e,t){return e.update({selection:t,scrollIntoView:!0,userEvent:"select"})}function Dg({state:e,dispatch:t},n){let r=LN(e.selection,n);return r.eq(e.selection,!0)?!1:(t(Mg(e,r)),!0)}function yV(e,t){return bt.cursor(t?e.to:e.from)}function Abt(e,t){return Dg(e,n=>n.empty?e.moveByChar(n,t):yV(n,t))}function Fu(e){return e.textDirectionAt(e.state.selection.main.head)==xi.LTR}const Rbt=e=>Abt(e,!Fu(e)),Pbt=e=>Abt(e,Fu(e));function $bt(e,t){return Dg(e,n=>n.empty?e.moveByGroup(n,t):yV(n,t))}const o9n=e=>$bt(e,!Fu(e)),l9n=e=>$bt(e,Fu(e));function c9n(e,t,n){if(t.type.prop(n))return!0;let r=t.to-t.from;return r&&(r>2||/[^\s,.;:]/.test(e.sliceDoc(t.from,t.to)))||t.firstChild}function bV(e,t,n){let r=fi(e).resolveInner(t.head),s=n?Rr.closedBy:Rr.openedBy;for(let c=t.head;;){let u=n?r.childAfter(c):r.childBefore(c);if(!u)break;c9n(e,u,s)?r=u:c=n?u.to:u.from}let a=r.type.prop(s),i,l;return a&&(i=n?Dv(e,r.from,1):Dv(e,r.to,-1))&&i.matched?l=n?i.end.to:i.end.from:l=n?r.to:r.from,bt.cursor(l,n?-1:1)}const u9n=e=>Dg(e,t=>bV(e.state,t,!Fu(e))),d9n=e=>Dg(e,t=>bV(e.state,t,Fu(e)));function Mbt(e,t){return Dg(e,n=>{if(!n.empty)return yV(n,t);let r=e.moveVertically(n,t);return r.head!=n.head?r:e.moveToLineBoundary(n,t)})}const Dbt=e=>Mbt(e,!1),Lbt=e=>Mbt(e,!0);function Fbt(e){let t=e.scrollDOM.clientHeight<e.scrollDOM.scrollHeight-2,n=0,r=0,s;if(t){for(let a of e.state.facet(Nt.scrollMargins)){let i=a(e);i?.top&&(n=Math.max(i?.top,n)),i?.bottom&&(r=Math.max(i?.bottom,r))}s=e.scrollDOM.clientHeight-n-r}else s=(e.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:n,marginBottom:r,selfScroll:t,height:Math.max(e.defaultLineHeight,s-5)}}function zbt(e,t){let n=Fbt(e),{state:r}=e,s=LN(r.selection,i=>i.empty?e.moveVertically(i,t,n.height):yV(i,t));if(s.eq(r.selection))return!1;let a;if(n.selfScroll){let i=e.coordsAtPos(r.selection.main.head),l=e.scrollDOM.getBoundingClientRect(),c=l.top+n.marginTop,u=l.bottom-n.marginBottom;i&&i.top>c&&i.bottom<u&&(a=Nt.scrollIntoView(s.main.head,{y:"start",yMargin:i.top-c}))}return e.dispatch(Mg(r,s),{effects:a}),!0}const JLe=e=>zbt(e,!1),che=e=>zbt(e,!0);function z1(e,t,n){let r=e.lineBlockAt(t.head),s=e.moveToLineBoundary(t,n);if(s.head==t.head&&s.head!=(n?r.to:r.from)&&(s=e.moveToLineBoundary(t,n,!1)),!n&&s.head==r.from&&r.length){let a=/^\s*/.exec(e.state.sliceDoc(r.from,Math.min(r.from+100,r.to)))[0].length;a&&t.head!=r.from+a&&(s=bt.cursor(r.from+a))}return s}const f9n=e=>Dg(e,t=>z1(e,t,!0)),p9n=e=>Dg(e,t=>z1(e,t,!1)),h9n=e=>Dg(e,t=>z1(e,t,!Fu(e))),m9n=e=>Dg(e,t=>z1(e,t,Fu(e))),g9n=e=>Dg(e,t=>bt.cursor(e.lineBlockAt(t.head).from,1)),v9n=e=>Dg(e,t=>bt.cursor(e.lineBlockAt(t.head).to,-1));function y9n(e,t,n){let r=!1,s=LN(e.selection,a=>{let i=Dv(e,a.head,-1)||Dv(e,a.head,1)||a.head>0&&Dv(e,a.head-1,1)||a.head<e.doc.length&&Dv(e,a.head+1,-1);if(!i||!i.end)return a;r=!0;let l=i.start.from==a.head?i.end.to:i.end.from;return bt.cursor(l)});return r?(t(Mg(e,s)),!0):!1}const b9n=({state:e,dispatch:t})=>y9n(e,t);function bm(e,t){let n=LN(e.state.selection,r=>{let s=t(r);return bt.range(r.anchor,s.head,s.goalColumn,s.bidiLevel||void 0,s.assoc)});return n.eq(e.state.selection)?!1:(e.dispatch(Mg(e.state,n)),!0)}function Bbt(e,t){return bm(e,n=>e.moveByChar(n,t))}const Ubt=e=>Bbt(e,!Fu(e)),qbt=e=>Bbt(e,Fu(e));function Vbt(e,t){return bm(e,n=>e.moveByGroup(n,t))}const x9n=e=>Vbt(e,!Fu(e)),w9n=e=>Vbt(e,Fu(e)),S9n=e=>bm(e,t=>bV(e.state,t,!Fu(e))),k9n=e=>bm(e,t=>bV(e.state,t,Fu(e)));function Hbt(e,t){return bm(e,n=>e.moveVertically(n,t))}const Wbt=e=>Hbt(e,!1),Zbt=e=>Hbt(e,!0);function Gbt(e,t){return bm(e,n=>e.moveVertically(n,t,Fbt(e).height))}const e6e=e=>Gbt(e,!1),t6e=e=>Gbt(e,!0),O9n=e=>bm(e,t=>z1(e,t,!0)),_9n=e=>bm(e,t=>z1(e,t,!1)),C9n=e=>bm(e,t=>z1(e,t,!Fu(e))),E9n=e=>bm(e,t=>z1(e,t,Fu(e))),j9n=e=>bm(e,t=>bt.cursor(e.lineBlockAt(t.head).from)),T9n=e=>bm(e,t=>bt.cursor(e.lineBlockAt(t.head).to)),n6e=({state:e,dispatch:t})=>(t(Mg(e,{anchor:0})),!0),r6e=({state:e,dispatch:t})=>(t(Mg(e,{anchor:e.doc.length})),!0),s6e=({state:e,dispatch:t})=>(t(Mg(e,{anchor:e.selection.main.anchor,head:0})),!0),a6e=({state:e,dispatch:t})=>(t(Mg(e,{anchor:e.selection.main.anchor,head:e.doc.length})),!0),N9n=({state:e,dispatch:t})=>(t(e.update({selection:{anchor:0,head:e.doc.length},userEvent:"select"})),!0),I9n=({state:e,dispatch:t})=>{let n=xV(e).map(({from:r,to:s})=>bt.range(r,Math.min(s+1,e.doc.length)));return t(e.update({selection:bt.create(n),userEvent:"select"})),!0},A9n=({state:e,dispatch:t})=>{let n=LN(e.selection,r=>{let s=fi(e),a=s.resolveStack(r.from,1);if(r.empty){let i=s.resolveStack(r.from,-1);i.node.from>=a.node.from&&i.node.to<=a.node.to&&(a=i)}for(let i=a;i;i=i.next){let{node:l}=i;if((l.from<r.from&&l.to>=r.to||l.to>r.to&&l.from<=r.from)&&i.next)return bt.range(l.to,l.from)}return r});return n.eq(e.selection)?!1:(t(Mg(e,n)),!0)};function Qbt(e,t){let{state:n}=e,r=n.selection,s=n.selection.ranges.slice();for(let a of n.selection.ranges){let i=n.doc.lineAt(a.head);if(t?i.to<e.state.doc.length:i.from>0)for(let l=a;;){let c=e.moveVertically(l,t);if(c.head<i.from||c.head>i.to){s.some(u=>u.head==c.head)||s.push(c);break}else{if(c.head==l.head)break;l=c}}}return s.length==r.ranges.length?!1:(e.dispatch(Mg(n,bt.create(s,s.length-1))),!0)}const R9n=e=>Qbt(e,!1),P9n=e=>Qbt(e,!0),$9n=({state:e,dispatch:t})=>{let n=e.selection,r=null;return n.ranges.length>1?r=bt.create([n.main]):n.main.empty||(r=bt.create([bt.cursor(n.main.head)])),r?(t(Mg(e,r)),!0):!1};function aD(e,t){if(e.state.readOnly)return!1;let n="delete.selection",{state:r}=e,s=r.changeByRange(a=>{let{from:i,to:l}=a;if(i==l){let c=t(a);c<i?(n="delete.backward",c=f6(e,c,!1)):c>i&&(n="delete.forward",c=f6(e,c,!0)),i=Math.min(i,c),l=Math.max(l,c)}else i=f6(e,i,!1),l=f6(e,l,!0);return i==l?{range:a}:{changes:{from:i,to:l},range:bt.cursor(i,i<a.head?-1:1)}});return s.changes.empty?!1:(e.dispatch(r.update(s,{scrollIntoView:!0,userEvent:n,effects:n=="delete.selection"?Nt.announce.of(r.phrase("Selection deleted")):void 0})),!0)}function f6(e,t,n){if(e instanceof Nt)for(let r of e.state.facet(Nt.atomicRanges).map(s=>s(e)))r.between(t,t,(s,a)=>{s<t&&a>t&&(t=n?a:s)});return t}const Ybt=(e,t,n)=>aD(e,r=>{let s=r.from,{state:a}=e,i=a.doc.lineAt(s),l,c;if(n&&!t&&s>i.from&&s<i.from+200&&!/[^ \t]/.test(l=i.text.slice(0,s-i.from))){if(l[l.length-1]==" ")return s-1;let u=_g(l,a.tabSize),d=u%_O(a)||_O(a);for(let f=0;f<d&&l[l.length-1-f]==" ";f++)s--;c=s}else c=vc(i.text,s-i.from,t,t)+i.from,c==s&&i.number!=(t?a.doc.lines:1)?c+=t?1:-1:!t&&/[\ufe00-\ufe0f]/.test(i.text.slice(c-i.from,s-i.from))&&(c=vc(i.text,c-i.from,!1,!1)+i.from);return c}),uhe=e=>Ybt(e,!1,!0),Xbt=e=>Ybt(e,!0,!1),Kbt=(e,t)=>aD(e,n=>{let r=n.head,{state:s}=e,a=s.doc.lineAt(r),i=s.charCategorizer(r);for(let l=null;;){if(r==(t?a.to:a.from)){r==n.head&&a.number!=(t?s.doc.lines:1)&&(r+=t?1:-1);break}let c=vc(a.text,r-a.from,t)+a.from,u=a.text.slice(Math.min(r,c)-a.from,Math.max(r,c)-a.from),d=i(u);if(l!=null&&d!=l)break;(u!=" "||r!=n.head)&&(l=d),r=c}return r}),Jbt=e=>Kbt(e,!1),M9n=e=>Kbt(e,!0),D9n=e=>aD(e,t=>{let n=e.lineBlockAt(t.head).to;return t.head<n?n:Math.min(e.state.doc.length,t.head+1)}),L9n=e=>aD(e,t=>{let n=e.moveToLineBoundary(t,!1).head;return t.head>n?n:Math.max(0,t.head-1)}),F9n=e=>aD(e,t=>{let n=e.moveToLineBoundary(t,!0).head;return t.head<n?n:Math.min(e.state.doc.length,t.head+1)}),z9n=({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange(r=>({changes:{from:r.from,to:r.to,insert:ya.of(["",""])},range:bt.cursor(r.from)}));return t(e.update(n,{scrollIntoView:!0,userEvent:"input"})),!0},B9n=({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange(r=>{if(!r.empty||r.from==0||r.from==e.doc.length)return{range:r};let s=r.from,a=e.doc.lineAt(s),i=s==a.from?s-1:vc(a.text,s-a.from,!1)+a.from,l=s==a.to?s+1:vc(a.text,s-a.from,!0)+a.from;return{changes:{from:i,to:l,insert:e.doc.slice(s,l).append(e.doc.slice(i,s))},range:bt.cursor(l)}});return n.changes.empty?!1:(t(e.update(n,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function xV(e){let t=[],n=-1;for(let r of e.selection.ranges){let s=e.doc.lineAt(r.from),a=e.doc.lineAt(r.to);if(!r.empty&&r.to==a.from&&(a=e.doc.lineAt(r.to-1)),n>=s.number){let i=t[t.length-1];i.to=a.to,i.ranges.push(r)}else t.push({from:s.from,to:a.to,ranges:[r]});n=a.number+1}return t}function ext(e,t,n){if(e.readOnly)return!1;let r=[],s=[];for(let a of xV(e)){if(n?a.to==e.doc.length:a.from==0)continue;let i=e.doc.lineAt(n?a.to+1:a.from-1),l=i.length+1;if(n){r.push({from:a.to,to:i.to},{from:a.from,insert:i.text+e.lineBreak});for(let c of a.ranges)s.push(bt.range(Math.min(e.doc.length,c.anchor+l),Math.min(e.doc.length,c.head+l)))}else{r.push({from:i.from,to:a.from},{from:a.to,insert:e.lineBreak+i.text});for(let c of a.ranges)s.push(bt.range(c.anchor-l,c.head-l))}}return r.length?(t(e.update({changes:r,scrollIntoView:!0,selection:bt.create(s,e.selection.mainIndex),userEvent:"move.line"})),!0):!1}const U9n=({state:e,dispatch:t})=>ext(e,t,!1),q9n=({state:e,dispatch:t})=>ext(e,t,!0);function txt(e,t,n){if(e.readOnly)return!1;let r=[];for(let a of xV(e))n?r.push({from:a.from,insert:e.doc.slice(a.from,a.to)+e.lineBreak}):r.push({from:a.to,insert:e.lineBreak+e.doc.slice(a.from,a.to)});let s=e.changes(r);return t(e.update({changes:s,selection:e.selection.map(s,n?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}const V9n=({state:e,dispatch:t})=>txt(e,t,!1),H9n=({state:e,dispatch:t})=>txt(e,t,!0),W9n=e=>{if(e.state.readOnly)return!1;let{state:t}=e,n=t.changes(xV(t).map(({from:s,to:a})=>(s>0?s--:a<t.doc.length&&a++,{from:s,to:a}))),r=LN(t.selection,s=>{let a;if(e.lineWrapping){let i=e.lineBlockAt(s.head),l=e.coordsAtPos(s.head,s.assoc||1);l&&(a=i.bottom+e.documentTop-l.bottom+e.defaultLineHeight/2)}return e.moveVertically(s,!0,a)}).map(n);return e.dispatch({changes:n,selection:r,scrollIntoView:!0,userEvent:"delete.line"}),!0};function Z9n(e,t){if(/\(\)|\[\]|\{\}/.test(e.sliceDoc(t-1,t+1)))return{from:t,to:t};let n=fi(e).resolveInner(t),r=n.childBefore(t),s=n.childAfter(t),a;return r&&s&&r.to<=t&&s.from>=t&&(a=r.type.prop(Rr.closedBy))&&a.indexOf(s.name)>-1&&e.doc.lineAt(r.to).from==e.doc.lineAt(s.from).from&&!/\S/.test(e.sliceDoc(r.to,s.from))?{from:r.to,to:s.from}:null}const i6e=nxt(!1),G9n=nxt(!0);function nxt(e){return({state:t,dispatch:n})=>{if(t.readOnly)return!1;let r=t.changeByRange(s=>{let{from:a,to:i}=s,l=t.doc.lineAt(a),c=!e&&a==i&&Z9n(t,a);e&&(a=i=(i<=l.to?l:t.doc.lineAt(i)).to);let u=new pV(t,{simulateBreak:a,simulateDoubleBreak:!!c}),d=ywe(u,a);for(d==null&&(d=_g(/^\s*/.exec(t.doc.lineAt(a).text)[0],t.tabSize));i<l.to&&/\s/.test(l.text[i-l.from]);)i++;c?{from:a,to:i}=c:a>l.from&&a<l.from+100&&!/\S/.test(l.text.slice(0,a))&&(a=l.from);let f=["",D$(t,d)];return c&&f.push(D$(t,u.lineIndent(l.from,-1))),{changes:{from:a,to:i,insert:ya.of(f)},range:bt.cursor(a+1+f[1].length)}});return n(t.update(r,{scrollIntoView:!0,userEvent:"input"})),!0}}function Xwe(e,t){let n=-1;return e.changeByRange(r=>{let s=[];for(let i=r.from;i<=r.to;){let l=e.doc.lineAt(i);l.number>n&&(r.empty||r.to>l.from)&&(t(l,s,r),n=l.number),i=l.to+1}let a=e.changes(s);return{changes:s,range:bt.range(a.mapPos(r.anchor,1),a.mapPos(r.head,1))}})}const Q9n=({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=Object.create(null),r=new pV(e,{overrideIndentation:a=>{let i=n[a];return i??-1}}),s=Xwe(e,(a,i,l)=>{let c=ywe(r,a.from);if(c==null)return;/\S/.test(a.text)||(c=0);let u=/^\s*/.exec(a.text)[0],d=D$(e,c);(u!=d||l.from<a.from+u.length)&&(n[a.from]=c,i.push({from:a.from,to:a.from+u.length,insert:d}))});return s.changes.empty||t(e.update(s,{userEvent:"indent"})),!0},rxt=({state:e,dispatch:t})=>e.readOnly?!1:(t(e.update(Xwe(e,(n,r)=>{r.push({from:n.from,insert:e.facet($N)})}),{userEvent:"input.indent"})),!0),sxt=({state:e,dispatch:t})=>e.readOnly?!1:(t(e.update(Xwe(e,(n,r)=>{let s=/^\s*/.exec(n.text)[0];if(!s)return;let a=_g(s,e.tabSize),i=0,l=D$(e,Math.max(0,a-_O(e)));for(;i<s.length&&i<l.length&&s.charCodeAt(i)==l.charCodeAt(i);)i++;r.push({from:n.from+i,to:n.from+s.length,insert:l.slice(i)})}),{userEvent:"delete.dedent"})),!0),Y9n=e=>(e.setTabFocusMode(),!0),X9n=[{key:"Ctrl-b",run:Rbt,shift:Ubt,preventDefault:!0},{key:"Ctrl-f",run:Pbt,shift:qbt},{key:"Ctrl-p",run:Dbt,shift:Wbt},{key:"Ctrl-n",run:Lbt,shift:Zbt},{key:"Ctrl-a",run:g9n,shift:j9n},{key:"Ctrl-e",run:v9n,shift:T9n},{key:"Ctrl-d",run:Xbt},{key:"Ctrl-h",run:uhe},{key:"Ctrl-k",run:D9n},{key:"Ctrl-Alt-h",run:Jbt},{key:"Ctrl-o",run:z9n},{key:"Ctrl-t",run:B9n},{key:"Ctrl-v",run:che}],K9n=[{key:"ArrowLeft",run:Rbt,shift:Ubt,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:o9n,shift:x9n,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:h9n,shift:C9n,preventDefault:!0},{key:"ArrowRight",run:Pbt,shift:qbt,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:l9n,shift:w9n,preventDefault:!0},{mac:"Cmd-ArrowRight",run:m9n,shift:E9n,preventDefault:!0},{key:"ArrowUp",run:Dbt,shift:Wbt,preventDefault:!0},{mac:"Cmd-ArrowUp",run:n6e,shift:s6e},{mac:"Ctrl-ArrowUp",run:JLe,shift:e6e},{key:"ArrowDown",run:Lbt,shift:Zbt,preventDefault:!0},{mac:"Cmd-ArrowDown",run:r6e,shift:a6e},{mac:"Ctrl-ArrowDown",run:che,shift:t6e},{key:"PageUp",run:JLe,shift:e6e},{key:"PageDown",run:che,shift:t6e},{key:"Home",run:p9n,shift:_9n,preventDefault:!0},{key:"Mod-Home",run:n6e,shift:s6e},{key:"End",run:f9n,shift:O9n,preventDefault:!0},{key:"Mod-End",run:r6e,shift:a6e},{key:"Enter",run:i6e,shift:i6e},{key:"Mod-a",run:N9n},{key:"Backspace",run:uhe,shift:uhe,preventDefault:!0},{key:"Delete",run:Xbt,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:Jbt,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:M9n,preventDefault:!0},{mac:"Mod-Backspace",run:L9n,preventDefault:!0},{mac:"Mod-Delete",run:F9n,preventDefault:!0}].concat(X9n.map(e=>({mac:e.key,run:e.run,shift:e.shift}))),J9n=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:u9n,shift:S9n},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:d9n,shift:k9n},{key:"Alt-ArrowUp",run:U9n},{key:"Shift-Alt-ArrowUp",run:V9n},{key:"Alt-ArrowDown",run:q9n},{key:"Shift-Alt-ArrowDown",run:H9n},{key:"Mod-Alt-ArrowUp",run:R9n},{key:"Mod-Alt-ArrowDown",run:P9n},{key:"Escape",run:$9n},{key:"Mod-Enter",run:G9n},{key:"Alt-l",mac:"Ctrl-l",run:I9n},{key:"Mod-i",run:A9n,preventDefault:!0},{key:"Mod-[",run:sxt},{key:"Mod-]",run:rxt},{key:"Mod-Alt-\\",run:Q9n},{key:"Shift-Mod-k",run:W9n},{key:"Shift-Mod-\\",run:b9n},{key:"Mod-/",run:U8n},{key:"Alt-A",run:V8n},{key:"Ctrl-m",mac:"Shift-Alt-m",run:Y9n}].concat(K9n),eFn={key:"Tab",run:rxt,shift:sxt},o6e=typeof String.prototype.normalize=="function"?e=>e.normalize("NFKD"):e=>e;class Sx{constructor(t,n,r=0,s=t.length,a,i){this.test=i,this.value={from:0,to:0,precise:!1},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=t.iterRange(r,s),this.bufferStart=r,this.normalize=a?l=>a(o6e(l)):o6e,this.query=this.normalize(n)}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 Ud(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let t=this.peek();if(t<0)return this.done=!0,this;let n=J0e(t),r=this.bufferStart+this.bufferPos;this.bufferPos+=_v(t);let s=this.normalize(n);if(s.length)for(let a=0,i=r,l=!0;;a++){let c=s.charCodeAt(a),u=this.match(c,i,l,this.bufferPos+this.bufferStart,a==s.length-1);if(u)return this.value=u,this;if(a==s.length-1)break;l&&a<n.length&&n.charCodeAt(a)==c?i++:l=!1}}}match(t,n,r,s,a){let i=null;for(let l=0;l<this.matches.length;){let c=this.matches[l],u=!1;this.query.charCodeAt(c.index)==t&&(c.index==this.query.length-1?i={from:c.from,to:s,precise:a&&c.precise}:(c.index++,u=!0)),u?l++:this.matches.splice(l,1)}return this.query.charCodeAt(0)==t&&(this.query.length==1?i={from:n,to:s,precise:r&&a}:this.matches.push({from:n,index:1,precise:r})),i&&this.test&&!this.test(i.from,i.to,this.buffer,this.bufferStart)&&(i=null),i}}typeof Symbol<"u"&&(Sx.prototype[Symbol.iterator]=function(){return this});const axt={from:-1,to:-1,match:/.*/.exec(""),precise:!0},Kwe="gm"+(/x/.unicode==null?"":"u");class ixt{constructor(t,n,r,s=0,a=t.length){if(this.text=t,this.to=a,this.curLine="",this.done=!1,this.value=axt,/\\[sWDnr]|\n|\r|\[\^/.test(n))return new oxt(t,n,r,s,a);this.re=new RegExp(n,Kwe+(r?.ignoreCase?"i":"")),this.test=r?.test,this.iter=t.iter();let i=t.lineAt(s);this.curLineStart=i.from,this.matchPos=m7(t,s),this.getLine(this.curLineStart)}getLine(t){this.iter.next(t),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 t=this.matchPos-this.curLineStart;;){this.re.lastIndex=t;let n=this.matchPos<=this.to&&this.re.exec(this.curLine);if(n){let r=this.curLineStart+n.index,s=r+n[0].length;if(this.matchPos=m7(this.text,s+(r==s?1:0)),r==this.curLineStart+this.curLine.length&&this.nextLine(),(r<s||r>this.value.to)&&(!this.test||this.test(r,s,n)))return this.value={from:r,to:s,precise:!0,match:n},this;t=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),t=0;else return this.done=!0,this}}}const MK=new WeakMap;class xj{constructor(t,n){this.from=t,this.text=n}get to(){return this.from+this.text.length}static get(t,n,r){let s=MK.get(t);if(!s||s.from>=r||s.to<=n){let l=new xj(n,t.sliceString(n,r));return MK.set(t,l),l}if(s.from==n&&s.to==r)return s;let{text:a,from:i}=s;return i>n&&(a=t.sliceString(n,i)+a,i=n),s.to<r&&(a+=t.sliceString(s.to,r)),MK.set(t,new xj(i,a)),new xj(n,a.slice(n-i,r-i))}}class oxt{constructor(t,n,r,s,a){this.text=t,this.to=a,this.done=!1,this.value=axt,this.matchPos=m7(t,s),this.re=new RegExp(n,Kwe+(r?.ignoreCase?"i":"")),this.test=r?.test,this.flat=xj.get(t,s,this.chunkEnd(s+5e3))}chunkEnd(t){return t>=this.to?this.to:this.text.lineAt(t).to}next(){for(;;){let t=this.re.lastIndex=this.matchPos-this.flat.from,n=this.re.exec(this.flat.text);if(n&&!n[0]&&n.index==t&&(this.re.lastIndex=t+1,n=this.re.exec(this.flat.text)),n){let r=this.flat.from+n.index,s=r+n[0].length;if((this.flat.to>=this.to||n.index+n[0].length<=this.flat.text.length-10)&&(!this.test||this.test(r,s,n)))return this.value={from:r,to:s,precise:!0,match:n},this.matchPos=m7(this.text,s+(r==s?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=xj.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(ixt.prototype[Symbol.iterator]=oxt.prototype[Symbol.iterator]=function(){return this});function tFn(e){try{return new RegExp(e,Kwe),!0}catch{return!1}}function m7(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}const nFn=e=>{let{state:t}=e,n=String(t.doc.lineAt(e.state.selection.main.head).number),{close:r,result:s}=DDn(e,{label:t.phrase("Go to line"),input:{type:"text",name:"line",value:n},focus:!0,submitLabel:t.phrase("go")});return s.then(a=>{let i=a&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(a.elements.line.value);if(!i){e.dispatch({effects:r});return}let l=t.doc.lineAt(t.selection.main.head),[,c,u,d,f]=i,p=d?+d.slice(1):0,h=u?+u:l.number;if(u&&f){let y=h/100;c&&(y=y*(c=="-"?-1:1)+l.number/t.doc.lines),h=Math.round(t.doc.lines*y)}else u&&c&&(h=h*(c=="-"?-1:1)+l.number);let m=t.doc.line(Math.max(1,Math.min(t.doc.lines,h))),g=bt.cursor(m.from+Math.max(0,Math.min(p,m.length)));e.dispatch({effects:[r,Nt.scrollIntoView(g.from,{y:"center"})],selection:g})}),!0},rFn={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},sFn=On.define({combine(e){return Ry(e,rFn,{highlightWordAroundCursor:(t,n)=>t||n,minSelectionLength:Math.min,maxMatches:Math.min})}});function aFn(e){return[uFn,cFn]}const iFn=Cn.mark({class:"cm-selectionMatch"}),oFn=Cn.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function l6e(e,t,n,r){return(n==0||e(t.sliceDoc(n-1,n))!=fo.Word)&&(r==t.doc.length||e(t.sliceDoc(r,r+1))!=fo.Word)}function lFn(e,t,n,r){return e(t.sliceDoc(n,n+1))==fo.Word&&e(t.sliceDoc(r-1,r))==fo.Word}const cFn=yo.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(sFn),{state:n}=e,r=n.selection;if(r.ranges.length>1)return Cn.none;let s=r.main,a,i=null;if(s.empty){if(!t.highlightWordAroundCursor)return Cn.none;let c=n.wordAt(s.head);if(!c)return Cn.none;i=n.charCategorizer(s.head),a=n.sliceDoc(c.from,c.to)}else{let c=s.to-s.from;if(c<t.minSelectionLength||c>200)return Cn.none;if(t.wholeWords){if(a=n.sliceDoc(s.from,s.to),i=n.charCategorizer(s.head),!(l6e(i,n,s.from,s.to)&&lFn(i,n,s.from,s.to)))return Cn.none}else if(a=n.sliceDoc(s.from,s.to),!a)return Cn.none}let l=[];for(let c of e.visibleRanges){let u=new Sx(n.doc,a,c.from,c.to);for(;!u.next().done;){let{from:d,to:f}=u.value;if((!i||l6e(i,n,d,f))&&(s.empty&&d<=s.from&&f>=s.to?l.push(oFn.range(d,f)):(d>=s.to||f<=s.from)&&l.push(iFn.range(d,f)),l.length>t.maxMatches))return Cn.none}}return Cn.set(l)}},{decorations:e=>e.decorations}),uFn=Nt.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),dFn=({state:e,dispatch:t})=>{let{selection:n}=e,r=bt.create(n.ranges.map(s=>e.wordAt(s.head)||bt.cursor(s.head)),n.mainIndex);return r.eq(n)?!1:(t(e.update({selection:r})),!0)};function fFn(e,t){let{main:n,ranges:r}=e.selection,s=e.wordAt(n.head),a=s&&s.from==n.from&&s.to==n.to;for(let i=!1,l=new Sx(e.doc,t,r[r.length-1].to);;)if(l.next(),l.done){if(i)return null;l=new Sx(e.doc,t,0,Math.max(0,r[r.length-1].from-1)),i=!0}else{if(i&&r.some(c=>c.from==l.value.from))continue;if(a){let c=e.wordAt(l.value.from);if(!c||c.from!=l.value.from||c.to!=l.value.to)continue}return l.value}}const pFn=({state:e,dispatch:t})=>{let{ranges:n}=e.selection;if(n.some(a=>a.from===a.to))return dFn({state:e,dispatch:t});let r=e.sliceDoc(n[0].from,n[0].to);if(e.selection.ranges.some(a=>e.sliceDoc(a.from,a.to)!=r))return!1;let s=fFn(e,r);return s?(t(e.update({selection:e.selection.addRange(bt.range(s.from,s.to),!1),effects:Nt.scrollIntoView(s.to)})),!0):!1},FN=On.define({combine(e){return Ry(e,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:t=>new EFn(t),scrollToMatch:t=>Nt.scrollIntoView(t)})}});class lxt{constructor(t){this.search=t.search,this.caseSensitive=!!t.caseSensitive,this.literal=!!t.literal,this.regexp=!!t.regexp,this.replace=t.replace||"",this.valid=!!this.search&&(!this.regexp||tFn(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!t.wholeWord,this.test=t.test}unquote(t){return this.literal?t:t.replace(/\\([nrt\\])/g,(n,r)=>r=="n"?`
|
|
336
|
-
`:r=="r"?"\r":r=="t"?" ":"\\")}eq(t){return this.search==t.search&&this.replace==t.replace&&this.caseSensitive==t.caseSensitive&&this.regexp==t.regexp&&this.wholeWord==t.wholeWord&&this.test==t.test}create(){return this.regexp?new bFn(this):new gFn(this)}getCursor(t,n=0,r){let s=t.doc?t:os.create({doc:t});return r==null&&(r=s.doc.length),this.regexp?yE(this,s,n,r):vE(this,s,n,r)}}class cxt{constructor(t){this.spec=t}}function hFn(e,t,n){return(r,s,a,i)=>{if(n&&!n(r,s,a,i))return!1;let l=r>=i&&s<=i+a.length?a.slice(r-i,s-i):t.doc.sliceString(r,s);return e(l,t,r,s)}}function vE(e,t,n,r){let s;return e.wholeWord&&(s=mFn(t.doc,t.charCategorizer(t.selection.main.head))),e.test&&(s=hFn(e.test,t,s)),new Sx(t.doc,e.unquoted,n,r,e.caseSensitive?void 0:a=>a.toLowerCase(),s)}function mFn(e,t){return(n,r,s,a)=>((a>n||a+s.length<r)&&(a=Math.max(0,n-2),s=e.sliceString(a,Math.min(e.length,r+2))),(t(g7(s,n-a))!=fo.Word||t(v7(s,n-a))!=fo.Word)&&(t(v7(s,r-a))!=fo.Word||t(g7(s,r-a))!=fo.Word))}class gFn extends cxt{constructor(t){super(t)}nextMatch(t,n,r){let s=vE(this.spec,t,r,t.doc.length).nextOverlapping();if(s.done){let a=Math.min(t.doc.length,n+this.spec.unquoted.length);s=vE(this.spec,t,0,a).nextOverlapping()}return s.done||s.value.from==n&&s.value.to==r?null:s.value}prevMatchInRange(t,n,r){for(let s=r;;){let a=Math.max(n,s-1e4-this.spec.unquoted.length),i=vE(this.spec,t,a,s),l=null;for(;!i.nextOverlapping().done;)l=i.value;if(l)return l;if(a==n)return null;s-=1e4}}prevMatch(t,n,r){let s=this.prevMatchInRange(t,0,n);return s||(s=this.prevMatchInRange(t,Math.max(0,r-this.spec.unquoted.length),t.doc.length)),s&&(s.from!=n||s.to!=r)?s:null}getReplacement(t){return this.spec.unquote(this.spec.replace)}matchAll(t,n){let r=vE(this.spec,t,0,t.doc.length),s=[];for(;!r.next().done;){if(s.length>=n)return null;s.push(r.value)}return s}highlight(t,n,r,s){let a=vE(this.spec,t,Math.max(0,n-this.spec.unquoted.length),Math.min(r+this.spec.unquoted.length,t.doc.length));for(;!a.next().done;)s(a.value.from,a.value.to)}}function vFn(e,t,n){return(r,s,a)=>(!n||n(r,s,a))&&e(a[0],t,r,s)}function yE(e,t,n,r){let s;return e.wholeWord&&(s=yFn(t.charCategorizer(t.selection.main.head))),e.test&&(s=vFn(e.test,t,s)),new ixt(t.doc,e.search,{ignoreCase:!e.caseSensitive,test:s},n,r)}function g7(e,t){return e.slice(vc(e,t,!1),t)}function v7(e,t){return e.slice(t,vc(e,t))}function yFn(e){return(t,n,r)=>!r[0].length||(e(g7(r.input,r.index))!=fo.Word||e(v7(r.input,r.index))!=fo.Word)&&(e(v7(r.input,r.index+r[0].length))!=fo.Word||e(g7(r.input,r.index+r[0].length))!=fo.Word)}class bFn extends cxt{nextMatch(t,n,r){let s=yE(this.spec,t,r,t.doc.length).next();return s.done&&(s=yE(this.spec,t,0,n).next()),s.done?null:s.value}prevMatchInRange(t,n,r){for(let s=1;;s++){let a=Math.max(n,r-s*1e4),i=yE(this.spec,t,a,r),l=null;for(;!i.next().done;)l=i.value;if(l&&(a==n||l.from>a+10))return l;if(a==n)return null}}prevMatch(t,n,r){return this.prevMatchInRange(t,0,n)||this.prevMatchInRange(t,r,t.doc.length)}getReplacement(t){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(n,r)=>{if(r=="&")return t.match[0];if(r=="$")return"$";for(let s=r.length;s>0;s--){let a=+r.slice(0,s);if(a>0&&a<t.match.length)return t.match[a]+r.slice(s)}return n})}matchAll(t,n){let r=yE(this.spec,t,0,t.doc.length),s=[];for(;!r.next().done;){if(s.length>=n)return null;s.push(r.value)}return s}highlight(t,n,r,s){let a=yE(this.spec,t,Math.max(0,n-250),Math.min(r+250,t.doc.length));for(;!a.next().done;)s(a.value.from,a.value.to)}}const W$=vr.define(),Jwe=vr.define(),Rw=ml.define({create(e){return new DK(dhe(e).create(),null)},update(e,t){for(let n of t.effects)n.is(W$)?e=new DK(n.value.create(),e.panel):n.is(Jwe)&&(e=new DK(e.query,n.value?e1e:null));return e},provide:e=>M$.from(e,t=>t.panel)});class DK{constructor(t,n){this.query=t,this.panel=n}}const xFn=Cn.mark({class:"cm-searchMatch"}),wFn=Cn.mark({class:"cm-searchMatch cm-searchMatch-selected"}),SFn=yo.fromClass(class{constructor(e){this.view=e,this.decorations=this.highlight(e.state.field(Rw))}update(e){let t=e.state.field(Rw);(t!=e.startState.field(Rw)||e.docChanged||e.selectionSet||e.viewportChanged)&&(this.decorations=this.highlight(t))}highlight({query:e,panel:t}){if(!t||!e.spec.valid)return Cn.none;let{view:n}=this,r=new xd;for(let s=0,a=n.visibleRanges,i=a.length;s<i;s++){let{from:l,to:c}=a[s];for(;s<i-1&&c>a[s+1].from-500;)c=a[++s].to;e.highlight(n.state,l,c,(u,d)=>{let f=n.state.selection.ranges.some(p=>p.from==u&&p.to==d);r.add(u,d,f?wFn:xFn)})}return r.finish()}},{decorations:e=>e.decorations});function iD(e){return t=>{let n=t.state.field(Rw,!1);return n&&n.query.spec.valid?e(t,n):fxt(t)}}const y7=iD((e,{query:t})=>{let{to:n}=e.state.selection.main,r=t.nextMatch(e.state,n,n);if(!r)return!1;let s=bt.single(r.from,r.to),a=e.state.facet(FN);return e.dispatch({selection:s,effects:[t1e(e,r),a.scrollToMatch(s.main,e)],userEvent:"select.search"}),dxt(e),!0}),b7=iD((e,{query:t})=>{let{state:n}=e,{from:r}=n.selection.main,s=t.prevMatch(n,r,r);if(!s)return!1;let a=bt.single(s.from,s.to),i=e.state.facet(FN);return e.dispatch({selection:a,effects:[t1e(e,s),i.scrollToMatch(a.main,e)],userEvent:"select.search"}),dxt(e),!0}),kFn=iD((e,{query:t})=>{let n=t.matchAll(e.state,1e3);return!n||!n.length?!1:(e.dispatch({selection:bt.create(n.map(r=>bt.range(r.from,r.to))),userEvent:"select.search.matches"}),!0)}),OFn=({state:e,dispatch:t})=>{let n=e.selection;if(n.ranges.length>1||n.main.empty)return!1;let{from:r,to:s}=n.main,a=[],i=0;for(let l=new Sx(e.doc,e.sliceDoc(r,s));!l.next().done;){if(a.length>1e3)return!1;l.value.from==r&&(i=a.length),a.push(bt.range(l.value.from,l.value.to))}return t(e.update({selection:bt.create(a,i),userEvent:"select.search.matches"})),!0},c6e=iD((e,{query:t})=>{let{state:n}=e,{from:r,to:s}=n.selection.main;if(n.readOnly)return!1;let a=t.nextMatch(n,r,r);if(!a)return!1;let i=a,l=[],c,u,d=[];i.precise?i.from==r&&i.to==s&&(u=n.toText(t.getReplacement(i)),l.push({from:i.from,to:i.to,insert:u}),d.push(Nt.announce.of(n.phrase("replaced match on line $",n.doc.lineAt(r).number)+"."))):i=t.nextMatch(n,i.from,i.to);let f=e.state.changes(l);return i&&(c=bt.single(i.from,i.to).map(f),d.push(t1e(e,i)),d.push(n.facet(FN).scrollToMatch(c.main,e))),e.dispatch({changes:f,selection:c,effects:d,userEvent:"input.replace"}),!0}),_Fn=iD((e,{query:t})=>{if(e.state.readOnly)return!1;let n=[];for(let s of t.matchAll(e.state,1e9)){let{from:a,to:i,precise:l}=s;l&&n.push({from:a,to:i,insert:t.getReplacement(s)})}if(!n.length)return!1;let r=e.state.phrase("replaced $ matches",n.length)+".";return e.dispatch({changes:n,effects:Nt.announce.of(r),userEvent:"input.replace.all"}),!0});function e1e(e){return e.state.facet(FN).createPanel(e)}function dhe(e,t){var n,r,s,a,i;let l=e.selection.main,c=l.empty||l.to>l.from+100?"":e.sliceDoc(l.from,l.to);if(t&&!c)return t;let u=e.facet(FN);return new lxt({search:((n=t?.literal)!==null&&n!==void 0?n:u.literal)?c:c.replace(/\n/g,"\\n"),caseSensitive:(r=t?.caseSensitive)!==null&&r!==void 0?r:u.caseSensitive,literal:(s=t?.literal)!==null&&s!==void 0?s:u.literal,regexp:(a=t?.regexp)!==null&&a!==void 0?a:u.regexp,wholeWord:(i=t?.wholeWord)!==null&&i!==void 0?i:u.wholeWord})}function uxt(e){let t=gwe(e,e1e);return t&&t.dom.querySelector("[main-field]")}function dxt(e){let t=uxt(e);t&&t==e.root.activeElement&&t.select()}const fxt=e=>{let t=e.state.field(Rw,!1);if(t&&t.panel){let n=uxt(e);if(n&&n!=e.root.activeElement){let r=dhe(e.state,t.query.spec);r.valid&&e.dispatch({effects:W$.of(r)}),n.focus(),n.select()}}else e.dispatch({effects:[Jwe.of(!0),t?W$.of(dhe(e.state,t.query.spec)):vr.appendConfig.of(TFn)]});return!0},pxt=e=>{let t=e.state.field(Rw,!1);if(!t||!t.panel)return!1;let n=gwe(e,e1e);return n&&n.dom.contains(e.root.activeElement)&&e.focus(),e.dispatch({effects:Jwe.of(!1)}),!0},CFn=[{key:"Mod-f",run:fxt,scope:"editor search-panel"},{key:"F3",run:y7,shift:b7,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:y7,shift:b7,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:pxt,scope:"editor search-panel"},{key:"Mod-Shift-l",run:OFn},{key:"Mod-Alt-g",run:nFn},{key:"Mod-d",run:pFn,preventDefault:!0}];class EFn{constructor(t){this.view=t;let n=this.query=t.state.field(Rw).query.spec;this.commit=this.commit.bind(this),this.searchField=ii("input",{value:n.search,placeholder:Hf(t,"Find"),"aria-label":Hf(t,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=ii("input",{value:n.replace,placeholder:Hf(t,"Replace"),"aria-label":Hf(t,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=ii("input",{type:"checkbox",name:"case",form:"",checked:n.caseSensitive,onchange:this.commit}),this.reField=ii("input",{type:"checkbox",name:"re",form:"",checked:n.regexp,onchange:this.commit}),this.wordField=ii("input",{type:"checkbox",name:"word",form:"",checked:n.wholeWord,onchange:this.commit});function r(s,a,i){return ii("button",{class:"cm-button",name:s,onclick:a,type:"button"},i)}this.dom=ii("div",{onkeydown:s=>this.keydown(s),class:"cm-search"},[this.searchField,r("next",()=>y7(t),[Hf(t,"next")]),r("prev",()=>b7(t),[Hf(t,"previous")]),r("select",()=>kFn(t),[Hf(t,"all")]),ii("label",null,[this.caseField,Hf(t,"match case")]),ii("label",null,[this.reField,Hf(t,"regexp")]),ii("label",null,[this.wordField,Hf(t,"by word")]),...t.state.readOnly?[]:[ii("br"),this.replaceField,r("replace",()=>c6e(t),[Hf(t,"replace")]),r("replaceAll",()=>_Fn(t),[Hf(t,"replace all")])],ii("button",{name:"close",onclick:()=>pxt(t),"aria-label":Hf(t,"close"),type:"button"},["×"])])}commit(){let t=new lxt({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});t.eq(this.query)||(this.query=t,this.view.dispatch({effects:W$.of(t)}))}keydown(t){Z3n(this.view,t,"search-panel")?t.preventDefault():t.keyCode==13&&t.target==this.searchField?(t.preventDefault(),(t.shiftKey?b7:y7)(this.view)):t.keyCode==13&&t.target==this.replaceField&&(t.preventDefault(),c6e(this.view))}update(t){for(let n of t.transactions)for(let r of n.effects)r.is(W$)&&!r.value.eq(this.query)&&this.setQuery(r.value)}setQuery(t){this.query=t,this.searchField.value=t.search,this.replaceField.value=t.replace,this.caseField.checked=t.caseSensitive,this.reField.checked=t.regexp,this.wordField.checked=t.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(FN).top}}function Hf(e,t){return e.state.phrase(t)}const p6=30,h6=/[\s\.,:;?!]/;function t1e(e,{from:t,to:n}){let r=e.state.doc.lineAt(t),s=e.state.doc.lineAt(n).to,a=Math.max(r.from,t-p6),i=Math.min(s,n+p6),l=e.state.sliceDoc(a,i);if(a!=r.from){for(let c=0;c<p6;c++)if(!h6.test(l[c+1])&&h6.test(l[c])){l=l.slice(c);break}}if(i!=s){for(let c=l.length-1;c>l.length-p6;c--)if(!h6.test(l[c-1])&&h6.test(l[c])){l=l.slice(0,c);break}}return Nt.announce.of(`${e.state.phrase("current match")}. ${l} ${e.state.phrase("on line")} ${r.number}.`)}const jFn=Nt.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"}}),TFn=[Rw,Pg.low(SFn),jFn];class u6e{constructor(t,n,r){this.from=t,this.to=n,this.diagnostic=r}}class ck{constructor(t,n,r){this.diagnostics=t,this.panel=n,this.selected=r}static init(t,n,r){let s=r.facet(Z$).markerFilter;s&&(t=s(t,r));let a=t.slice().sort((d,f)=>d.from-f.from||d.to-f.to),i=new xd,l=[],c=0;for(let d=0;;){let f=d==a.length?null:a[d];if(!f&&!l.length)break;let p,h;for(l.length?(p=c,h=l.reduce((g,y)=>Math.min(g,y.to),f&&f.from>p?f.from:1e8)):(p=f.from,h=f.to,l.push(f),d++);d<a.length;){let g=a[d];if(g.from==p&&(g.to>g.from||g.to==p))l.push(g),d++,h=Math.min(g.to,h);else{h=Math.min(g.from,h);break}}let m=UFn(l);if(l.some(g=>g.from==g.to||g.from==g.to-1&&r.doc.lineAt(g.from).to==g.from))i.add(p,p,Cn.widget({widget:new LFn(m),diagnostics:l.slice()}));else{let g=l.reduce((y,b)=>b.markClass?y+" "+b.markClass:y,"");i.add(p,h,Cn.mark({class:"cm-lintRange cm-lintRange-"+m+g,diagnostics:l.slice(),inclusiveEnd:l.some(y=>y.to>h)}))}c=h;for(let g=0;g<l.length;g++)l[g].to<=c&&l.splice(g--,1)}let u=i.finish();return new ck(u,n,mT(u))}}function mT(e,t=null,n=0){let r=null;return e.between(n,1e9,(s,a,{spec:i})=>{if(!(t&&i.diagnostics.indexOf(t)<0))if(!r)r=new u6e(s,a,t||i.diagnostics[0]);else{if(i.diagnostics.indexOf(r.diagnostic)<0)return!1;r=new u6e(r.from,a,r.diagnostic)}}),r}function NFn(e,t){let n=t.pos,r=t.end||n,s=e.state.facet(Z$).hideOn(e,n,r);if(s!=null)return s;let a=e.startState.doc.lineAt(t.pos);return!!(e.effects.some(i=>i.is(hxt))||e.changes.touchesRange(a.from,Math.max(a.to,r)))}function IFn(e,t){return e.field(gp,!1)?t:t.concat(vr.appendConfig.of(qFn))}const hxt=vr.define(),n1e=vr.define(),mxt=vr.define(),gp=ml.define({create(){return new ck(Cn.none,null,null)},update(e,t){if(t.docChanged&&e.diagnostics.size){let n=e.diagnostics.map(t.changes),r=null,s=e.panel;if(e.selected){let a=t.changes.mapPos(e.selected.from,1);r=mT(n,e.selected.diagnostic,a)||mT(n,null,a)}!n.size&&s&&t.state.facet(Z$).autoPanel&&(s=null),e=new ck(n,s,r)}for(let n of t.effects)if(n.is(hxt)){let r=t.state.facet(Z$).autoPanel?n.value.length?G$.open:null:e.panel;e=ck.init(n.value,r,t.state)}else n.is(n1e)?e=new ck(e.diagnostics,n.value?G$.open:null,e.selected):n.is(mxt)&&(e=new ck(e.diagnostics,e.panel,n.value));return e},provide:e=>[M$.from(e,t=>t.panel),Nt.decorations.from(e,t=>t.diagnostics)]}),AFn=Cn.mark({class:"cm-lintRange cm-lintRange-active"});function RFn(e,t,n){let{diagnostics:r}=e.state.field(gp),s,a=-1,i=-1;r.between(t-(n<0?1:0),t+(n>0?1:0),(c,u,{spec:d})=>{if(t>=c&&t<=u&&(c==u||(t>c||n>0)&&(t<u||n<0)))return s=d.diagnostics,a=c,i=u,!1});let l=e.state.facet(Z$).tooltipFilter;return s&&l&&(s=l(s,e.state)),s?{pos:a,end:i,above:e.state.doc.lineAt(a).to<i,create(){return{dom:PFn(e,s)}}}:null}function PFn(e,t){return ii("ul",{class:"cm-tooltip-lint"},t.map(n=>vxt(e,n,!1)))}const $Fn=e=>{let t=e.state.field(gp,!1);(!t||!t.panel)&&e.dispatch({effects:IFn(e.state,[n1e.of(!0)])});let n=gwe(e,G$.open);return n&&n.dom.querySelector(".cm-panel-lint ul").focus(),!0},d6e=e=>{let t=e.state.field(gp,!1);return!t||!t.panel?!1:(e.dispatch({effects:n1e.of(!1)}),!0)},MFn=e=>{let t=e.state.field(gp,!1);if(!t)return!1;let n=e.state.selection.main,r=t.diagnostics.iter(n.to+1);return!r.value&&(r=t.diagnostics.iter(0),!r.value||r.from==n.from&&r.to==n.to)?!1:(e.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),!0)},DFn=[{key:"Mod-Shift-m",run:$Fn,preventDefault:!0},{key:"F8",run:MFn}],Z$=On.define({combine(e){return{sources:e.map(t=>t.source).filter(t=>t!=null),...Ry(e.map(t=>t.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:f6e,tooltipFilter:f6e,needsRefresh:(t,n)=>t?n?r=>t(r)||n(r):t:n,hideOn:(t,n)=>t?n?(r,s,a)=>t(r,s,a)||n(r,s,a):t:n,autoPanel:(t,n)=>t||n})}}});function f6e(e,t){return e?t?(n,r)=>t(e(n,r),r):e:t}function gxt(e){let t=[];if(e)e:for(let{name:n}of e){for(let r=0;r<n.length;r++){let s=n[r];if(/[a-zA-Z]/.test(s)&&!t.some(a=>a.toLowerCase()==s.toLowerCase())){t.push(s);continue e}}t.push("")}return t}function vxt(e,t,n){var r;let s=n?gxt(t.actions):[];return ii("li",{class:"cm-diagnostic cm-diagnostic-"+t.severity},ii("span",{class:"cm-diagnosticText"},t.renderMessage?t.renderMessage(e):t.message),(r=t.actions)===null||r===void 0?void 0:r.map((a,i)=>{let l=!1,c=h=>{if(h.preventDefault(),l)return;l=!0;let m=mT(e.state.field(gp).diagnostics,t);m&&a.apply(e,m.from,m.to)},{name:u}=a,d=s[i]?u.indexOf(s[i]):-1,f=d<0?u:[u.slice(0,d),ii("u",u.slice(d,d+1)),u.slice(d+1)],p=a.markClass?" "+a.markClass:"";return ii("button",{type:"button",class:"cm-diagnosticAction"+p,onclick:c,onmousedown:c,"aria-label":` Action: ${u}${d<0?"":` (access key "${s[i]})"`}.`},f)}),t.source&&ii("div",{class:"cm-diagnosticSource"},t.source))}class LFn extends Zp{constructor(t){super(),this.sev=t}eq(t){return t.sev==this.sev}toDOM(){return ii("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class p6e{constructor(t,n){this.diagnostic=n,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=vxt(t,n,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class G${constructor(t){this.view=t,this.items=[];let n=s=>{if(s.keyCode==27)d6e(this.view),this.view.focus();else if(s.keyCode==38||s.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(s.keyCode==40||s.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(s.keyCode==36)this.moveSelection(0);else if(s.keyCode==35)this.moveSelection(this.items.length-1);else if(s.keyCode==13)this.view.focus();else if(s.keyCode>=65&&s.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:a}=this.items[this.selectedIndex],i=gxt(a.actions);for(let l=0;l<i.length;l++)if(i[l].toUpperCase().charCodeAt(0)==s.keyCode){let c=mT(this.view.state.field(gp).diagnostics,a);c&&a.actions[l].apply(t,c.from,c.to)}}else return;s.preventDefault()},r=s=>{for(let a=0;a<this.items.length;a++)this.items[a].dom.contains(s.target)&&this.moveSelection(a)};this.list=ii("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:n,onclick:r}),this.dom=ii("div",{class:"cm-panel-lint"},this.list,ii("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>d6e(this.view)},"×")),this.update()}get selectedIndex(){let t=this.view.state.field(gp).selected;if(!t)return-1;for(let n=0;n<this.items.length;n++)if(this.items[n].diagnostic==t.diagnostic)return n;return-1}update(){let{diagnostics:t,selected:n}=this.view.state.field(gp),r=0,s=!1,a=null,i=new Set;for(t.between(0,this.view.state.doc.length,(l,c,{spec:u})=>{for(let d of u.diagnostics){if(i.has(d))continue;i.add(d);let f=-1,p;for(let h=r;h<this.items.length;h++)if(this.items[h].diagnostic==d){f=h;break}f<0?(p=new p6e(this.view,d),this.items.splice(r,0,p),s=!0):(p=this.items[f],f>r&&(this.items.splice(r,f-r),s=!0)),n&&p.diagnostic==n.diagnostic?p.dom.hasAttribute("aria-selected")||(p.dom.setAttribute("aria-selected","true"),a=p):p.dom.hasAttribute("aria-selected")&&p.dom.removeAttribute("aria-selected"),r++}});r<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)s=!0,this.items.pop();this.items.length==0&&(this.items.push(new p6e(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),s=!0),a?(this.list.setAttribute("aria-activedescendant",a.id),this.view.requestMeasure({key:this,read:()=>({sel:a.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:l,panel:c})=>{let u=c.height/this.list.offsetHeight;l.top<c.top?this.list.scrollTop-=(c.top-l.top)/u:l.bottom>c.bottom&&(this.list.scrollTop+=(l.bottom-c.bottom)/u)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),s&&this.sync()}sync(){let t=this.list.firstChild;function n(){let r=t;t=r.nextSibling,r.remove()}for(let r of this.items)if(r.dom.parentNode==this.list){for(;t!=r.dom;)n();t=r.dom.nextSibling}else this.list.insertBefore(r.dom,t);for(;t;)n()}moveSelection(t){if(this.selectedIndex<0)return;let n=this.view.state.field(gp),r=mT(n.diagnostics,this.items[t].diagnostic);r&&this.view.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0,effects:mxt.of(r)})}static open(t){return new G$(t)}}function FFn(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 m6(e){return FFn(`<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"')}const zFn=Nt.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:m6("#d11")},".cm-lintRange-warning":{backgroundImage:m6("orange")},".cm-lintRange-info":{backgroundImage:m6("#999")},".cm-lintRange-hint":{backgroundImage:m6("#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}}});function BFn(e){return e=="error"?4:e=="warning"?3:e=="info"?2:1}function UFn(e){let t="hint",n=1;for(let r of e){let s=BFn(r.severity);s>n&&(n=s,t=r.severity)}return t}const qFn=[gp,Nt.decorations.compute([gp],e=>{let{selected:t,panel:n}=e.field(gp);return!t||!n||t.from==t.to?Cn.none:Cn.set([AFn.range(t.from,t.to)])}),$Dn(RFn,{hideOn:NFn}),zFn];var h6e=function(t){t===void 0&&(t={});var n=t,r=n.crosshairCursor,s=r===void 0?!1:r,a=[];t.closeBracketsKeymap!==!1&&(a=a.concat(A5n)),t.defaultKeymap!==!1&&(a=a.concat(J9n)),t.searchKeymap!==!1&&(a=a.concat(CFn)),t.historyKeymap!==!1&&(a=a.concat(i9n)),t.foldKeymap!==!1&&(a=a.concat(v4n)),t.completionKeymap!==!1&&(a=a.concat(dyt)),t.lintKeymap!==!1&&(a=a.concat(DFn));var i=[];return t.lineNumbers!==!1&&i.push(ZDn()),t.highlightActiveLineGutter!==!1&&i.push(YDn()),t.highlightSpecialChars!==!1&&i.push(cDn()),t.history!==!1&&i.push(X8n()),t.foldGutter!==!1&&i.push(w4n()),t.drawSelection!==!1&&i.push(J3n()),t.dropCursor!==!1&&i.push(sDn()),t.allowMultipleSelections!==!1&&i.push(os.allowMultipleSelections.of(!0)),t.indentOnInput!==!1&&i.push(c4n()),t.syntaxHighlighting!==!1&&i.push(F1(_4n,{fallback:!0})),t.bracketMatching!==!1&&i.push(A4n()),t.closeBrackets!==!1&&i.push(j5n()),t.autocompletion!==!1&&i.push(uyt()),t.rectangularSelection!==!1&&i.push(kDn()),s!==!1&&i.push(CDn()),t.highlightActiveLine!==!1&&i.push(mDn()),t.highlightSelectionMatches!==!1&&i.push(aFn()),t.tabSize&&typeof t.tabSize=="number"&&i.push($N.of(" ".repeat(t.tabSize))),i.concat([PN.of(a.flat())]).filter(Boolean)};const VFn="#e5c07b",m6e="#e06c75",HFn="#56b6c2",WFn="#ffffff",U9="#abb2bf",fhe="#7d8799",ZFn="#61afef",GFn="#98c379",g6e="#d19a66",QFn="#c678dd",YFn="#21252b",v6e="#2c313a",y6e="#282c34",LK="#353a42",XFn="#3E4451",b6e="#528bff",KFn=Nt.theme({"&":{color:U9,backgroundColor:y6e},".cm-content":{caretColor:b6e},".cm-cursor, .cm-dropCursor":{borderLeftColor:b6e},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:XFn},".cm-panels":{backgroundColor:YFn,color:U9},".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 #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:y6e,color:fhe,border:"none"},".cm-activeLineGutter":{backgroundColor:v6e},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:LK},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:LK,borderBottomColor:LK},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:v6e,color:U9}}},{dark:!0}),JFn=$g.define([{tag:fe.keyword,color:QFn},{tag:[fe.name,fe.deleted,fe.character,fe.propertyName,fe.macroName],color:m6e},{tag:[fe.function(fe.variableName),fe.labelName],color:ZFn},{tag:[fe.color,fe.constant(fe.name),fe.standard(fe.name)],color:g6e},{tag:[fe.definition(fe.name),fe.separator],color:U9},{tag:[fe.typeName,fe.className,fe.number,fe.changed,fe.annotation,fe.modifier,fe.self,fe.namespace],color:VFn},{tag:[fe.operator,fe.operatorKeyword,fe.url,fe.escape,fe.regexp,fe.link,fe.special(fe.string)],color:HFn},{tag:[fe.meta,fe.comment],color:fhe},{tag:fe.strong,fontWeight:"bold"},{tag:fe.emphasis,fontStyle:"italic"},{tag:fe.strikethrough,textDecoration:"line-through"},{tag:fe.link,color:fhe,textDecoration:"underline"},{tag:fe.heading,fontWeight:"bold",color:m6e},{tag:[fe.atom,fe.bool,fe.special(fe.variableName)],color:g6e},{tag:[fe.processingInstruction,fe.string,fe.inserted],color:GFn},{tag:fe.invalid,color:WFn}]),ezn=[KFn,F1(JFn)];var tzn=Nt.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),nzn=function(t){t===void 0&&(t={});var n=t,r=n.indentWithTab,s=r===void 0?!0:r,a=n.editable,i=a===void 0?!0:a,l=n.readOnly,c=l===void 0?!1:l,u=n.theme,d=u===void 0?"light":u,f=n.placeholder,p=f===void 0?"":f,h=n.basicSetup,m=h===void 0?!0:h,g=[];switch(s&&g.unshift(PN.of([eFn])),m&&(typeof m=="boolean"?g.unshift(h6e()):g.unshift(h6e(m))),p&&g.unshift(bDn(p)),d){case"light":g.push(tzn);break;case"dark":g.push(ezn);break;case"none":break;default:g.push(d);break}return i===!1&&g.push(Nt.editable.of(!1)),c&&g.push(os.readOnly.of(!0)),[...g]},rzn=e=>({line:e.state.doc.lineAt(e.state.selection.main.from),lineCount:e.state.doc.lines,lineBreak:e.state.lineBreak,length:e.state.doc.length,readOnly:e.state.readOnly,tabSize:e.state.tabSize,selection:e.state.selection,selectionAsSingle:e.state.selection.asSingle().main,ranges:e.state.selection.ranges,selectionCode:e.state.sliceDoc(e.state.selection.main.from,e.state.selection.main.to),selections:e.state.selection.ranges.map(t=>e.state.sliceDoc(t.from,t.to)),selectedText:e.state.selection.ranges.some(t=>!t.empty)});class szn{constructor(t,n){this.timeLeftMS=void 0,this.timeoutMS=void 0,this.isCancelled=!1,this.isTimeExhausted=!1,this.callbacks=[],this.timeLeftMS=n,this.timeoutMS=n,this.callbacks.push(t)}tick(){if(!this.isCancelled&&!this.isTimeExhausted&&(this.timeLeftMS--,this.timeLeftMS<=0)){this.isTimeExhausted=!0;var t=this.callbacks.slice();this.callbacks.length=0,t.forEach(n=>{try{n()}catch(r){console.error("TimeoutLatch callback error:",r)}})}}cancel(){this.isCancelled=!0,this.callbacks.length=0}reset(){this.timeLeftMS=this.timeoutMS,this.isCancelled=!1,this.isTimeExhausted=!1}get isDone(){return this.isCancelled||this.isTimeExhausted}}class x6e{constructor(){this.interval=null,this.latches=new Set}add(t){this.latches.add(t),this.start()}remove(t){this.latches.delete(t),this.latches.size===0&&this.stop()}start(){this.interval===null&&(this.interval=setInterval(()=>{this.latches.forEach(t=>{t.tick(),t.isDone&&this.remove(t)})},1))}stop(){this.interval!==null&&(clearInterval(this.interval),this.interval=null)}}var FK=null,azn=()=>typeof window>"u"?new x6e:(FK||(FK=new x6e),FK),w6e=Ay.define(),izn=200,ozn=[];function lzn(e){var t=e.value,n=e.selection,r=e.onChange,s=e.onStatistics,a=e.onCreateEditor,i=e.onUpdate,l=e.extensions,c=l===void 0?ozn:l,u=e.autoFocus,d=e.theme,f=d===void 0?"light":d,p=e.height,h=p===void 0?null:p,m=e.minHeight,g=m===void 0?null:m,y=e.maxHeight,b=y===void 0?null:y,w=e.width,S=w===void 0?null:w,k=e.minWidth,_=k===void 0?null:k,C=e.maxWidth,E=C===void 0?null:C,j=e.placeholder,N=j===void 0?"":j,I=e.editable,P=I===void 0?!0:I,$=e.readOnly,F=$===void 0?!1:$,D=e.indentWithTab,V=D===void 0?!0:D,W=e.basicSetup,L=W===void 0?!0:W,B=e.root,z=e.initialState,M=v.useState(),G=M[0],q=M[1],R=v.useState(),U=R[0],Z=R[1],X=v.useState(),te=X[0],J=X[1],ee=v.useState(()=>({current:null}))[0],ae=v.useState(()=>({current:null}))[0],ce=Nt.theme({"&":{height:h,minHeight:g,maxHeight:b,width:S,minWidth:_,maxWidth:E},"& .cm-scroller":{height:"100% !important"}}),Y=Nt.updateListener.of(pe=>{if(pe.docChanged&&typeof r=="function"&&!pe.transactions.some(ye=>ye.annotation(w6e))){ee.current?ee.current.reset():(ee.current=new szn(()=>{if(ae.current){var ye=ae.current;ae.current=null,ye()}ee.current=null},izn),azn().add(ee.current));var le=pe.state.doc,ve=le.toString();r(ve,pe)}s&&s(rzn(pe))}),ne=nzn({theme:f,editable:P,readOnly:F,placeholder:N,indentWithTab:V,basicSetup:L}),ue=[Y,ce,...ne];return i&&typeof i=="function"&&ue.push(Nt.updateListener.of(i)),ue=ue.concat(c),v.useLayoutEffect(()=>{if(G&&!te){var pe={doc:t,selection:n,extensions:ue},le=z?os.fromJSON(z.json,pe,z.fields):os.create(pe);if(J(le),!U){var ve=new Nt({state:le,parent:G,root:B});Z(ve),a&&a(ve,le)}}return()=>{U&&(J(void 0),Z(void 0))}},[G,te]),v.useEffect(()=>{e.container&&q(e.container)},[e.container]),v.useEffect(()=>()=>{U&&(U.destroy(),Z(void 0)),ee.current&&(ee.current.cancel(),ee.current=null)},[U]),v.useEffect(()=>{u&&U&&U.focus()},[u,U]),v.useEffect(()=>{U&&U.dispatch({effects:vr.reconfigure.of(ue)})},[f,c,h,g,b,S,_,E,N,P,F,V,L,r,i]),v.useEffect(()=>{if(t!==void 0){var pe=U?U.state.doc.toString():"";if(U&&t!==pe){var le=ee.current&&!ee.current.isDone,ve=()=>{U&&t!==U.state.doc.toString()&&U.dispatch({changes:{from:0,to:U.state.doc.toString().length,insert:t||""},annotations:[w6e.of(!0)]})};le?ae.current=ve:ve()}}},[t,U]),{state:te,setState:J,view:U,setView:Z,container:G,setContainer:q}}var czn=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],Kc=v.forwardRef((e,t)=>{var n=e.className,r=e.value,s=r===void 0?"":r,a=e.selection,i=e.extensions,l=i===void 0?[]:i,c=e.onChange,u=e.onStatistics,d=e.onCreateEditor,f=e.onUpdate,p=e.autoFocus,h=e.theme,m=h===void 0?"light":h,g=e.height,y=e.minHeight,b=e.maxHeight,w=e.width,S=e.minWidth,k=e.maxWidth,_=e.basicSetup,C=e.placeholder,E=e.indentWithTab,j=e.editable,N=e.readOnly,I=e.root,P=e.initialState,$=_bt(e,czn),F=v.useRef(null),D=lzn({root:I,value:s,autoFocus:p,theme:m,height:g,minHeight:y,maxHeight:b,width:w,minWidth:S,maxWidth:k,basicSetup:_,placeholder:C,indentWithTab:E,editable:j,readOnly:N,selection:a,onChange:c,onStatistics:u,onCreateEditor:d,onUpdate:f,extensions:l,initialState:P}),V=D.state,W=D.view,L=D.container,B=D.setContainer;v.useImperativeHandle(t,()=>({editor:F.current,state:V,view:W}),[F,L,V,W]);var z=v.useCallback(G=>{F.current=G,B(G)},[B]);if(typeof s!="string")throw new Error("value must be typeof string but got "+typeof s);var M=typeof m=="string"?"cm-theme-"+m:"cm-theme";return o.jsx("div",jO({ref:z,className:""+M+(n?" "+n:"")},$))});Kc.displayName="CodeMirror";function uzn(e){return new OO(wwe.define(e))}const yxt=[Ym.of({name:"JavaScript",alias:["ecmascript","js","node"],extensions:["js","mjs","cjs"],load(){return Eo(()=>Promise.resolve().then(()=>d6),[],import.meta.url).then(e=>e.javascript())}}),Ym.of({name:"JSON",alias:["json5"],extensions:["json","map"],load(){return Eo(()=>Promise.resolve().then(()=>V4n),void 0,import.meta.url).then(e=>e.json())}}),Ym.of({name:"JSX",extensions:["jsx"],load(){return Eo(()=>Promise.resolve().then(()=>d6),void 0,import.meta.url).then(e=>e.javascript({jsx:!0}))}}),Ym.of({name:"Markdown",extensions:["md","markdown","mkd"],load(){return Eo(()=>Promise.resolve().then(()=>L8n),void 0,import.meta.url).then(e=>e.markdown())}}),Ym.of({name:"TSX",extensions:["tsx"],load(){return Eo(()=>Promise.resolve().then(()=>d6),void 0,import.meta.url).then(e=>e.javascript({jsx:!0,typescript:!0}))}}),Ym.of({name:"TypeScript",alias:["ts"],extensions:["ts","mts","cts"],load(){return Eo(()=>Promise.resolve().then(()=>d6),void 0,import.meta.url).then(e=>e.javascript({typescript:!0}))}}),Ym.of({name:"Shell",alias:["bash","sh","zsh"],extensions:["sh","ksh","bash"],filename:/^PKGBUILD$/,load(){return Eo(()=>import("./shell-CjFT_Tl9.js"),[],import.meta.url).then(e=>uzn(e.shell))}})];function dzn(e,t=5){if(!e?.properties)return[];const n=[];function r(s,a,i){if(i>t)return;const l=Array.isArray(s.type)?s.type.join(" | "):s.type;if(n.push({path:a,label:a,description:s.description??s.title,type:l}),s.properties)for(const[c,u]of Object.entries(s.properties))r(u,`${a}.${c}`,i+1);if(s.items?.properties)for(const[c,u]of Object.entries(s.items.properties))r(u,`${a}[].${c}`,i+1)}for(const[s,a]of Object.entries(e.properties))r(a,s,1);return n}function fzn(e){const t=dzn(e);return uyt({override:[pzn(t)],defaultKeymap:!0,closeOnBlur:!0,icons:!1})}function pzn(e){return t=>{const r=t.state.sliceDoc(Math.max(0,t.pos-50),t.pos).match(/\{\{([a-zA-Z0-9_.\[\]]*)?$/);if(!r)return null;const s=r[1]??"",a=t.pos-s.length,i=s?e.filter(c=>c.path.toLowerCase().startsWith(s.toLowerCase())):e;if(i.length===0)return null;const l=i.map(c=>({label:c.path,displayLabel:c.path,detail:c.type,info:c.description,apply:(u,d,f,p)=>{const g=u.state.sliceDoc(p,p+2)==="}}"?d.label:`${d.label}}}`;u.dispatch({changes:{from:f,to:p,insert:g},selection:{anchor:f+g.length}})}}));return{from:a,options:l,validFor:/^[a-zA-Z0-9_.\[\]]*$/}}}const hzn=/\{\{([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)*)\}\}/g,mzn=Cn.mark({class:"cm-variable-highlight"}),S6e=new Ovt({regexp:hzn,decoration:()=>mzn}),gzn=yo.fromClass(class{decorations;constructor(e){this.decorations=S6e.createDeco(e)}update(e){this.decorations=S6e.updateDeco(e,this.decorations)}},{decorations:e=>e.decorations}),vzn=gzn;function yzn(){const e=DN({settings:{fontFamily:"var(--font-mono)",fontSize:"0.8rem",lineHighlight:"transparent",gutterBackground:"transparent",gutterForeground:"var(--neutral2)",background:"transparent",foreground:"var(--neutral6)",caret:"var(--neutral6)"},styles:[{tag:[fe.className,fe.propertyName],color:"var(--neutral6)"},{tag:fe.heading,color:"var(--accent3)",fontWeight:"bold"},{tag:[fe.heading1,fe.heading2,fe.heading3,fe.heading4,fe.heading5,fe.heading6],color:"var(--accent3)",fontWeight:"bold"},{tag:fe.emphasis,fontStyle:"italic",color:"var(--neutral6)"},{tag:fe.strong,fontWeight:"bold",color:"var(--neutral6)"},{tag:fe.link,color:"var(--accent3)",textDecoration:"underline"},{tag:fe.url,color:"var(--accent3)"},{tag:fe.monospace,color:"var(--neutral6)"},{tag:fe.strikethrough,textDecoration:"line-through"},{tag:fe.quote,fontStyle:"italic",color:"var(--neutral2)"}]}),t=Nt.theme({".cm-editor":{backgroundColor:"transparent"},".cm-content":{color:"var(--neutral6)",caretColor:"var(--neutral6)"},".cm-lineNumbers .cm-gutterElement":{color:"var(--neutral2)"},".cm-activeLineGutter":{color:"var(--neutral3)"},".cm-cursor":{borderLeftColor:"var(--neutral6)"},".cm-selectionBackground, .cm-content ::selection":{backgroundColor:"color-mix(in srgb, var(--accent3) 22%, transparent)"},".cm-tooltip-autocomplete":{backgroundColor:"var(--surface2)",border:"1px solid var(--border1)",borderRadius:"6px",boxShadow:"0 8px 16px rgba(0, 0, 0, 0.2)"},".cm-tooltip-autocomplete > ul":{fontFamily:"var(--font-mono)"},".cm-completionLabel":{color:"var(--neutral6)"},".cm-completionDetail":{color:"var(--neutral3)",fontSize:"0.7rem",marginLeft:"auto",paddingLeft:"12px"},".cm-completionInfo":{backgroundColor:"var(--surface2)",border:"1px solid var(--border1)",color:"var(--neutral3)",padding:"8px 12px"},".cm-completionIcon":{display:"none"},"ul.cm-completionList li[aria-selected]":{backgroundColor:"var(--surface4)",color:"var(--neutral6)"},".cm-line .cm-variable-highlight":{color:"var(--accent6) !important",fontWeight:"500"}});return[e,t]}function bzn(){const e=Nt.theme({"&":{backgroundColor:"transparent",color:"var(--neutral6)",fontSize:"0.8rem"},"&.cm-editor .cm-scroller":{fontFamily:"var(--font-mono)"},".cm-gutters":{backgroundColor:"transparent",color:"var(--neutral2)",borderRight:"none"},".cm-content":{color:"var(--neutral6)",caretColor:"var(--neutral6)"},".cm-activeLine":{backgroundColor:"transparent"},".cm-lineNumbers .cm-gutterElement":{color:"var(--neutral2)"},".cm-activeLineGutter":{backgroundColor:"transparent",color:"var(--neutral3)"},".cm-cursor, .cm-dropCursor":{borderLeftColor:"var(--neutral6)"},"&.cm-focused .cm-selectionBackground, & .cm-line::selection, & .cm-selectionLayer .cm-selectionBackground, .cm-content ::selection":{background:"color-mix(in srgb, var(--accent3) 22%, transparent) !important"},".cm-tooltip-autocomplete":{backgroundColor:"var(--surface2)",border:"1px solid var(--border1)",borderRadius:"6px",boxShadow:"0 8px 16px rgba(0, 0, 0, 0.2)"},".cm-tooltip-autocomplete > ul":{fontFamily:"var(--font-mono)"},".cm-completionLabel":{color:"var(--neutral6)"},".cm-completionDetail":{color:"var(--neutral3)",fontSize:"0.7rem",marginLeft:"auto",paddingLeft:"12px"},".cm-completionInfo":{backgroundColor:"var(--surface2)",border:"1px solid var(--border1)",color:"var(--neutral3)",padding:"8px 12px"},".cm-completionIcon":{display:"none"},"ul.cm-completionList li[aria-selected]":{backgroundColor:"var(--surface4)",color:"var(--neutral6)"},".cm-line .cm-variable-highlight":{color:"var(--accent6) !important",fontWeight:"500"}}),t=$g.define([{tag:[fe.comment,fe.bracket],color:"var(--neutral2)"},{tag:[fe.string,fe.meta,fe.regexp],color:"var(--accent1)"},{tag:[fe.atom,fe.bool,fe.special(fe.variableName)],color:"var(--accent6)"},{tag:[fe.keyword,fe.operator,fe.tagName],color:"var(--accent2)"},{tag:[fe.function(fe.propertyName),fe.propertyName],color:"var(--accent5)"},{tag:[fe.definition(fe.variableName),fe.function(fe.variableName),fe.className,fe.attributeName],color:"var(--accent3)"},{tag:[fe.variableName,fe.number],color:"var(--accent5)"},{tag:[fe.name,fe.quote],color:"var(--accent1)"},{tag:fe.heading,color:"var(--accent3)",fontWeight:"bold"},{tag:[fe.heading1,fe.heading2,fe.heading3,fe.heading4,fe.heading5,fe.heading6],color:"var(--accent3)",fontWeight:"bold"},{tag:[fe.emphasis],fontStyle:"italic",color:"var(--neutral6)"},{tag:[fe.strong],fontWeight:"bold",color:"var(--neutral6)"},{tag:fe.link,color:"var(--accent3)",textDecoration:"underline"},{tag:fe.url,color:"var(--accent3)"},{tag:fe.monospace,color:"var(--neutral6)"},{tag:fe.strikethrough,textDecoration:"line-through"},{tag:[fe.deleted],color:"var(--accent2)"},{tag:fe.invalid,color:"var(--error)"},{tag:[fe.standard(fe.tagName)],color:"var(--accent1)"}]);return[e,F1(t)]}const Py=()=>{const e=TN().resolvedTheme==="dark";return v.useMemo(()=>e?yzn():bzn(),[e])},Qr=v.forwardRef(({data:e,value:t,onChange:n,showCopyButton:r=!0,className:s,language:a="json",highlightVariables:i=!1,placeholder:l,schema:c,autoFocus:u,lineNumbers:d=!0,lineWrapping:f=!0,editable:p,...h},m)=>{const g=Py(),y=e?JSON.stringify(e,null,2):t??"",b=v.useMemo(()=>{const w=[];return f&&w.push(Nt.lineWrapping),a==="json"?w.push(of):a==="markdown"&&w.push(Gwe({base:EO,codeLanguages:yxt})),i&&a==="markdown"&&w.push(vzn),c&&a==="markdown"&&w.push(fzn(c)),p===!1&&w.push(os.readOnly.of(!0)),w},[a,i,c,p,f]);return o.jsxs("div",{className:K("rounded-md bg-surface3 p-1 font-mono relative border border-border1 overflow-hidden",s),...h,children:[r&&o.jsx(ba,{content:y,className:"absolute top-2 right-2 z-20"}),o.jsx(Kc,{ref:m,value:y,theme:g,extensions:b,onChange:n,editable:p,"aria-label":"Code editor",placeholder:l,height:"100%",style:{height:"100%"},autoFocus:u,basicSetup:{lineNumbers:d}})]})}),xzn={js:"javascript",javascript:"javascript",mjs:"javascript",cjs:"javascript",node:"javascript",ts:"typescript",typescript:"typescript",mts:"typescript",cts:"typescript",tsx:"tsx",jsx:"jsx",json:"json",json5:"json",md:"markdown",markdown:"markdown",py:"python",python:"python",sh:"bash",bash:"bash",shell:"bash",zsh:"bash"};let zK=null;function wzn(){return zK||(zK=(async()=>{const[{createHighlighterCore:e},{createJavaScriptRegexEngine:t}]=await Promise.all([Eo(()=>import("./core-4oBsWwNE.js"),__vite__mapDeps([0,1,2]),import.meta.url),Eo(()=>import("./engine-javascript-CSIo_1eZ.js"),__vite__mapDeps([3,1]),import.meta.url)]);return e({themes:[Eo(()=>import("./github-light-DAi9KRSo.js"),[],import.meta.url),Eo(()=>import("./github-dark-DHJKELXO.js"),[],import.meta.url)],langs:[Eo(()=>import("./javascript-ySlJ1b_l.js"),[],import.meta.url),Eo(()=>import("./typescript-Dj6nwHGl.js"),[],import.meta.url),Eo(()=>import("./tsx-B6W0miNI.js"),[],import.meta.url),Eo(()=>import("./jsx-BAng5TT0.js"),[],import.meta.url),Eo(()=>import("./json-BQoSv7ci.js"),[],import.meta.url),Eo(()=>import("./bash-atvbtKCR.js"),[],import.meta.url),Eo(()=>import("./markdown-UIAJJxZW.js"),[],import.meta.url),Eo(()=>import("./python-DhUJRlN_.js"),[],import.meta.url)],engine:t()})})()),zK}async function Szn(e,t){const n=xzn[t?.toLowerCase()];if(!n)return null;const r=await wzn(),{tokens:s}=r.codeToTokens(e,{lang:n,defaultColor:!1,themes:{light:"github-light",dark:"github-dark"}});return s}const kzn=e=>{try{return JSON.stringify(e??{},null,2)}catch{return"{}"}},Ozn=({editorClassName:e="h-[240px] max-h-[40vh]",onSaved:t})=>{const n=Py(),{settings:r,setSettings:s}=Zq(),a=r?.tracingOptions,i=v.useMemo(()=>kzn(a),[a]),[l,c]=v.useState(()=>i),u=v.useRef(!1);v.useEffect(()=>{u.current||c(i)},[i]);const d=p=>{u.current=!0,c(p)},f=()=>{if(!l){s({...r,tracingOptions:void 0}),t?.();return}try{const p=JSON.parse(l);typeof p=="object"&&p!==null&&s({...r,tracingOptions:p})}catch{return}t?.()};return o.jsxs("div",{className:"space-y-2 px-5 py-2",children:[o.jsx(ge,{as:"h3",variant:"ui-md",className:"text-neutral3",children:"Tracing Options"}),o.jsx(Kc,{value:l,onChange:d,theme:n,extensions:[of],className:K("overflow-y-scroll bg-surface3 rounded-lg overflow-hidden p-3",e)}),o.jsx("div",{className:"flex items-center justify-end",children:o.jsx(de,{type:"button",onClick:f,children:"Save"})})]})},_zn=()=>{const[e,t]=v.useState(!1);return o.jsxs(o.Fragment,{children:[o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx(de,{type:"button",variant:"ghost",size:"icon-md","aria-label":"Run Options",onClick:()=>t(!0),children:o.jsx(Ue,{children:o.jsx(tbe,{})})})}),o.jsx(Bn,{children:"Run Options"})]}),o.jsx(br,{open:e,onOpenChange:t,children:o.jsxs(xr,{children:[o.jsxs(wr,{children:[o.jsx(gr,{children:"Run Options"}),o.jsx(Qs,{children:"Configure tracing and debug options for this workflow run"})]}),o.jsx(Ar,{children:o.jsx(Ozn,{onSaved:()=>t(!1)})})]})})]})};function Czn({status:e}){switch(e){case"running":return o.jsx(Qt,{});case"failed":return o.jsx(vs,{className:"text-accent2"});case"canceled":return o.jsx(xf,{className:"text-neutral3"});case"pending":case"waiting":return o.jsx(aO,{className:"text-neutral3"});case"suspended":return o.jsx(JU,{className:"text-accent3"});case"success":return o.jsx(Js,{className:"text-accent1"});default:return o.jsx(aO,{className:"text-neutral3"})}}function bxt({status:e}){return o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx(Ue,{"aria-label":e,className:"shrink-0",children:o.jsx(Czn,{status:e})})}),o.jsx(Bn,{children:e})]})}var BK,k6e;function r1e(){if(k6e)return BK;k6e=1;var e="\0",t="\0",n="";class r{_isDirected=!0;_isMultigraph=!1;_isCompound=!1;_label;_defaultNodeLabelFn=()=>{};_defaultEdgeLabelFn=()=>{};_nodes={};_in={};_preds={};_out={};_sucs={};_edgeObjs={};_edgeLabels={};_nodeCount=0;_edgeCount=0;_parent;_children;constructor(d){d&&(this._isDirected=Object.hasOwn(d,"directed")?d.directed:!0,this._isMultigraph=Object.hasOwn(d,"multigraph")?d.multigraph:!1,this._isCompound=Object.hasOwn(d,"compound")?d.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[t]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(d){return this._label=d,this}graph(){return this._label}setDefaultNodeLabel(d){return this._defaultNodeLabelFn=d,typeof d!="function"&&(this._defaultNodeLabelFn=()=>d),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var d=this;return this.nodes().filter(f=>Object.keys(d._in[f]).length===0)}sinks(){var d=this;return this.nodes().filter(f=>Object.keys(d._out[f]).length===0)}setNodes(d,f){var p=arguments,h=this;return d.forEach(function(m){p.length>1?h.setNode(m,f):h.setNode(m)}),this}setNode(d,f){return Object.hasOwn(this._nodes,d)?(arguments.length>1&&(this._nodes[d]=f),this):(this._nodes[d]=arguments.length>1?f:this._defaultNodeLabelFn(d),this._isCompound&&(this._parent[d]=t,this._children[d]={},this._children[t][d]=!0),this._in[d]={},this._preds[d]={},this._out[d]={},this._sucs[d]={},++this._nodeCount,this)}node(d){return this._nodes[d]}hasNode(d){return Object.hasOwn(this._nodes,d)}removeNode(d){var f=this;if(Object.hasOwn(this._nodes,d)){var p=h=>f.removeEdge(f._edgeObjs[h]);delete this._nodes[d],this._isCompound&&(this._removeFromParentsChildList(d),delete this._parent[d],this.children(d).forEach(function(h){f.setParent(h)}),delete this._children[d]),Object.keys(this._in[d]).forEach(p),delete this._in[d],delete this._preds[d],Object.keys(this._out[d]).forEach(p),delete this._out[d],delete this._sucs[d],--this._nodeCount}return this}setParent(d,f){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(f===void 0)f=t;else{f+="";for(var p=f;p!==void 0;p=this.parent(p))if(p===d)throw new Error("Setting "+f+" as parent of "+d+" would create a cycle");this.setNode(f)}return this.setNode(d),this._removeFromParentsChildList(d),this._parent[d]=f,this._children[f][d]=!0,this}_removeFromParentsChildList(d){delete this._children[this._parent[d]][d]}parent(d){if(this._isCompound){var f=this._parent[d];if(f!==t)return f}}children(d=t){if(this._isCompound){var f=this._children[d];if(f)return Object.keys(f)}else{if(d===t)return this.nodes();if(this.hasNode(d))return[]}}predecessors(d){var f=this._preds[d];if(f)return Object.keys(f)}successors(d){var f=this._sucs[d];if(f)return Object.keys(f)}neighbors(d){var f=this.predecessors(d);if(f){const h=new Set(f);for(var p of this.successors(d))h.add(p);return Array.from(h.values())}}isLeaf(d){var f;return this.isDirected()?f=this.successors(d):f=this.neighbors(d),f.length===0}filterNodes(d){var f=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});f.setGraph(this.graph());var p=this;Object.entries(this._nodes).forEach(function([g,y]){d(g)&&f.setNode(g,y)}),Object.values(this._edgeObjs).forEach(function(g){f.hasNode(g.v)&&f.hasNode(g.w)&&f.setEdge(g,p.edge(g))});var h={};function m(g){var y=p.parent(g);return y===void 0||f.hasNode(y)?(h[g]=y,y):y in h?h[y]:m(y)}return this._isCompound&&f.nodes().forEach(g=>f.setParent(g,m(g))),f}setDefaultEdgeLabel(d){return this._defaultEdgeLabelFn=d,typeof d!="function"&&(this._defaultEdgeLabelFn=()=>d),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(d,f){var p=this,h=arguments;return d.reduce(function(m,g){return h.length>1?p.setEdge(m,g,f):p.setEdge(m,g),g}),this}setEdge(){var d,f,p,h,m=!1,g=arguments[0];typeof g=="object"&&g!==null&&"v"in g?(d=g.v,f=g.w,p=g.name,arguments.length===2&&(h=arguments[1],m=!0)):(d=g,f=arguments[1],p=arguments[3],arguments.length>2&&(h=arguments[2],m=!0)),d=""+d,f=""+f,p!==void 0&&(p=""+p);var y=i(this._isDirected,d,f,p);if(Object.hasOwn(this._edgeLabels,y))return m&&(this._edgeLabels[y]=h),this;if(p!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(d),this.setNode(f),this._edgeLabels[y]=m?h:this._defaultEdgeLabelFn(d,f,p);var b=l(this._isDirected,d,f,p);return d=b.v,f=b.w,Object.freeze(b),this._edgeObjs[y]=b,s(this._preds[f],d),s(this._sucs[d],f),this._in[f][y]=b,this._out[d][y]=b,this._edgeCount++,this}edge(d,f,p){var h=arguments.length===1?c(this._isDirected,arguments[0]):i(this._isDirected,d,f,p);return this._edgeLabels[h]}edgeAsObj(){const d=this.edge(...arguments);return typeof d!="object"?{label:d}:d}hasEdge(d,f,p){var h=arguments.length===1?c(this._isDirected,arguments[0]):i(this._isDirected,d,f,p);return Object.hasOwn(this._edgeLabels,h)}removeEdge(d,f,p){var h=arguments.length===1?c(this._isDirected,arguments[0]):i(this._isDirected,d,f,p),m=this._edgeObjs[h];return m&&(d=m.v,f=m.w,delete this._edgeLabels[h],delete this._edgeObjs[h],a(this._preds[f],d),a(this._sucs[d],f),delete this._in[f][h],delete this._out[d][h],this._edgeCount--),this}inEdges(d,f){var p=this._in[d];if(p){var h=Object.values(p);return f?h.filter(m=>m.v===f):h}}outEdges(d,f){var p=this._out[d];if(p){var h=Object.values(p);return f?h.filter(m=>m.w===f):h}}nodeEdges(d,f){var p=this.inEdges(d,f);if(p)return p.concat(this.outEdges(d,f))}}function s(u,d){u[d]?u[d]++:u[d]=1}function a(u,d){--u[d]||delete u[d]}function i(u,d,f,p){var h=""+d,m=""+f;if(!u&&h>m){var g=h;h=m,m=g}return h+n+m+n+(p===void 0?e:p)}function l(u,d,f,p){var h=""+d,m=""+f;if(!u&&h>m){var g=h;h=m,m=g}var y={v:h,w:m};return p&&(y.name=p),y}function c(u,d){return i(u,d.v,d.w,d.name)}return BK=r,BK}var UK,O6e;function Ezn(){return O6e||(O6e=1,UK="2.2.4"),UK}var qK,_6e;function jzn(){return _6e||(_6e=1,qK={Graph:r1e(),version:Ezn()}),qK}var VK,C6e;function Tzn(){if(C6e)return VK;C6e=1;var e=r1e();VK={write:t,read:s};function t(a){var i={options:{directed:a.isDirected(),multigraph:a.isMultigraph(),compound:a.isCompound()},nodes:n(a),edges:r(a)};return a.graph()!==void 0&&(i.value=structuredClone(a.graph())),i}function n(a){return a.nodes().map(function(i){var l=a.node(i),c=a.parent(i),u={v:i};return l!==void 0&&(u.value=l),c!==void 0&&(u.parent=c),u})}function r(a){return a.edges().map(function(i){var l=a.edge(i),c={v:i.v,w:i.w};return i.name!==void 0&&(c.name=i.name),l!==void 0&&(c.value=l),c})}function s(a){var i=new e(a.options).setGraph(a.value);return a.nodes.forEach(function(l){i.setNode(l.v,l.value),l.parent&&i.setParent(l.v,l.parent)}),a.edges.forEach(function(l){i.setEdge({v:l.v,w:l.w,name:l.name},l.value)}),i}return VK}var HK,E6e;function Nzn(){if(E6e)return HK;E6e=1,HK=e;function e(t){var n={},r=[],s;function a(i){Object.hasOwn(n,i)||(n[i]=!0,s.push(i),t.successors(i).forEach(a),t.predecessors(i).forEach(a))}return t.nodes().forEach(function(i){s=[],a(i),s.length&&r.push(s)}),r}return HK}var WK,j6e;function xxt(){if(j6e)return WK;j6e=1;class e{_arr=[];_keyIndices={};size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var r=this._keyIndices[n];if(r!==void 0)return this._arr[r].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,r){var s=this._keyIndices;if(n=String(n),!Object.hasOwn(s,n)){var a=this._arr,i=a.length;return s[n]=i,a.push({key:n,priority:r}),this._decrease(i),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,r){var s=this._keyIndices[n];if(r>this._arr[s].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[s].priority+" New: "+r);this._arr[s].priority=r,this._decrease(s)}_heapify(n){var r=this._arr,s=2*n,a=s+1,i=n;s<r.length&&(i=r[s].priority<r[i].priority?s:i,a<r.length&&(i=r[a].priority<r[i].priority?a:i),i!==n&&(this._swap(n,i),this._heapify(i)))}_decrease(n){for(var r=this._arr,s=r[n].priority,a;n!==0&&(a=n>>1,!(r[a].priority<s));)this._swap(n,a),n=a}_swap(n,r){var s=this._arr,a=this._keyIndices,i=s[n],l=s[r];s[n]=l,s[r]=i,a[l.key]=n,a[i.key]=r}}return WK=e,WK}var ZK,T6e;function wxt(){if(T6e)return ZK;T6e=1;var e=xxt();ZK=n;var t=()=>1;function n(s,a,i,l){return r(s,String(a),i||t,l||function(c){return s.outEdges(c)})}function r(s,a,i,l){var c={},u=new e,d,f,p=function(h){var m=h.v!==d?h.v:h.w,g=c[m],y=i(h),b=f.distance+y;if(y<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+h+" Weight: "+y);b<g.distance&&(g.distance=b,g.predecessor=d,u.decrease(m,b))};for(s.nodes().forEach(function(h){var m=h===a?0:Number.POSITIVE_INFINITY;c[h]={distance:m},u.add(h,m)});u.size()>0&&(d=u.removeMin(),f=c[d],f.distance!==Number.POSITIVE_INFINITY);)l(d).forEach(p);return c}return ZK}var GK,N6e;function Izn(){if(N6e)return GK;N6e=1;var e=wxt();GK=t;function t(n,r,s){return n.nodes().reduce(function(a,i){return a[i]=e(n,i,r,s),a},{})}return GK}var QK,I6e;function Sxt(){if(I6e)return QK;I6e=1,QK=e;function e(t){var n=0,r=[],s={},a=[];function i(l){var c=s[l]={onStack:!0,lowlink:n,index:n++};if(r.push(l),t.successors(l).forEach(function(f){Object.hasOwn(s,f)?s[f].onStack&&(c.lowlink=Math.min(c.lowlink,s[f].index)):(i(f),c.lowlink=Math.min(c.lowlink,s[f].lowlink))}),c.lowlink===c.index){var u=[],d;do d=r.pop(),s[d].onStack=!1,u.push(d);while(l!==d);a.push(u)}}return t.nodes().forEach(function(l){Object.hasOwn(s,l)||i(l)}),a}return QK}var YK,A6e;function Azn(){if(A6e)return YK;A6e=1;var e=Sxt();YK=t;function t(n){return e(n).filter(function(r){return r.length>1||r.length===1&&n.hasEdge(r[0],r[0])})}return YK}var XK,R6e;function Rzn(){if(R6e)return XK;R6e=1,XK=t;var e=()=>1;function t(r,s,a){return n(r,s||e,a||function(i){return r.outEdges(i)})}function n(r,s,a){var i={},l=r.nodes();return l.forEach(function(c){i[c]={},i[c][c]={distance:0},l.forEach(function(u){c!==u&&(i[c][u]={distance:Number.POSITIVE_INFINITY})}),a(c).forEach(function(u){var d=u.v===c?u.w:u.v,f=s(u);i[c][d]={distance:f,predecessor:c}})}),l.forEach(function(c){var u=i[c];l.forEach(function(d){var f=i[d];l.forEach(function(p){var h=f[c],m=u[p],g=f[p],y=h.distance+m.distance;y<g.distance&&(g.distance=y,g.predecessor=m.predecessor)})})}),i}return XK}var KK,P6e;function kxt(){if(P6e)return KK;P6e=1;function e(n){var r={},s={},a=[];function i(l){if(Object.hasOwn(s,l))throw new t;Object.hasOwn(r,l)||(s[l]=!0,r[l]=!0,n.predecessors(l).forEach(i),delete s[l],a.push(l))}if(n.sinks().forEach(i),Object.keys(r).length!==n.nodeCount())throw new t;return a}class t extends Error{constructor(){super(...arguments)}}return KK=e,e.CycleException=t,KK}var JK,$6e;function Pzn(){if($6e)return JK;$6e=1;var e=kxt();JK=t;function t(n){try{e(n)}catch(r){if(r instanceof e.CycleException)return!1;throw r}return!0}return JK}var eJ,M6e;function Oxt(){if(M6e)return eJ;M6e=1,eJ=e;function e(s,a,i){Array.isArray(a)||(a=[a]);var l=s.isDirected()?f=>s.successors(f):f=>s.neighbors(f),c=i==="post"?t:n,u=[],d={};return a.forEach(f=>{if(!s.hasNode(f))throw new Error("Graph does not have node: "+f);c(f,l,d,u)}),u}function t(s,a,i,l){for(var c=[[s,!1]];c.length>0;){var u=c.pop();u[1]?l.push(u[0]):Object.hasOwn(i,u[0])||(i[u[0]]=!0,c.push([u[0],!0]),r(a(u[0]),d=>c.push([d,!1])))}}function n(s,a,i,l){for(var c=[s];c.length>0;){var u=c.pop();Object.hasOwn(i,u)||(i[u]=!0,l.push(u),r(a(u),d=>c.push(d)))}}function r(s,a){for(var i=s.length;i--;)a(s[i],i,s);return s}return eJ}var tJ,D6e;function $zn(){if(D6e)return tJ;D6e=1;var e=Oxt();tJ=t;function t(n,r){return e(n,r,"post")}return tJ}var nJ,L6e;function Mzn(){if(L6e)return nJ;L6e=1;var e=Oxt();nJ=t;function t(n,r){return e(n,r,"pre")}return nJ}var rJ,F6e;function Dzn(){if(F6e)return rJ;F6e=1;var e=r1e(),t=xxt();rJ=n;function n(r,s){var a=new e,i={},l=new t,c;function u(f){var p=f.v===c?f.w:f.v,h=l.priority(p);if(h!==void 0){var m=s(f);m<h&&(i[p]=c,l.decrease(p,m))}}if(r.nodeCount()===0)return a;r.nodes().forEach(function(f){l.add(f,Number.POSITIVE_INFINITY),a.setNode(f)}),l.decrease(r.nodes()[0],0);for(var d=!1;l.size()>0;){if(c=l.removeMin(),Object.hasOwn(i,c))a.setEdge(c,i[c]);else{if(d)throw new Error("Input graph is not connected: "+r);d=!0}r.nodeEdges(c).forEach(u)}return a}return rJ}var sJ,z6e;function Lzn(){return z6e||(z6e=1,sJ={components:Nzn(),dijkstra:wxt(),dijkstraAll:Izn(),findCycles:Azn(),floydWarshall:Rzn(),isAcyclic:Pzn(),postorder:$zn(),preorder:Mzn(),prim:Dzn(),tarjan:Sxt(),topsort:kxt()}),sJ}var aJ,B6e;function Eg(){if(B6e)return aJ;B6e=1;var e=jzn();return aJ={Graph:e.Graph,json:Tzn(),alg:Lzn(),version:e.version},aJ}var iJ,U6e;function Fzn(){if(U6e)return iJ;U6e=1;class e{constructor(){let s={};s._next=s._prev=s,this._sentinel=s}dequeue(){let s=this._sentinel,a=s._prev;if(a!==s)return t(a),a}enqueue(s){let a=this._sentinel;s._prev&&s._next&&t(s),s._next=a._next,a._next._prev=s,a._next=s,s._prev=a}toString(){let s=[],a=this._sentinel,i=a._prev;for(;i!==a;)s.push(JSON.stringify(i,n)),i=i._prev;return"["+s.join(", ")+"]"}}function t(r){r._prev._next=r._next,r._next._prev=r._prev,delete r._next,delete r._prev}function n(r,s){if(r!=="_next"&&r!=="_prev")return s}return iJ=e,iJ}var oJ,q6e;function zzn(){if(q6e)return oJ;q6e=1;let e=Eg().Graph,t=Fzn();oJ=r;let n=()=>1;function r(u,d){if(u.nodeCount()<=1)return[];let f=i(u,d||n);return s(f.graph,f.buckets,f.zeroIdx).flatMap(h=>u.outEdges(h.v,h.w))}function s(u,d,f){let p=[],h=d[d.length-1],m=d[0],g;for(;u.nodeCount();){for(;g=m.dequeue();)a(u,d,f,g);for(;g=h.dequeue();)a(u,d,f,g);if(u.nodeCount()){for(let y=d.length-2;y>0;--y)if(g=d[y].dequeue(),g){p=p.concat(a(u,d,f,g,!0));break}}}return p}function a(u,d,f,p,h){let m=h?[]:void 0;return u.inEdges(p.v).forEach(g=>{let y=u.edge(g),b=u.node(g.v);h&&m.push({v:g.v,w:g.w}),b.out-=y,l(d,f,b)}),u.outEdges(p.v).forEach(g=>{let y=u.edge(g),b=g.w,w=u.node(b);w.in-=y,l(d,f,w)}),u.removeNode(p.v),m}function i(u,d){let f=new e,p=0,h=0;u.nodes().forEach(y=>{f.setNode(y,{v:y,in:0,out:0})}),u.edges().forEach(y=>{let b=f.edge(y.v,y.w)||0,w=d(y),S=b+w;f.setEdge(y.v,y.w,S),h=Math.max(h,f.node(y.v).out+=w),p=Math.max(p,f.node(y.w).in+=w)});let m=c(h+p+3).map(()=>new t),g=p+1;return f.nodes().forEach(y=>{l(m,g,f.node(y))}),{graph:f,buckets:m,zeroIdx:g}}function l(u,d,f){f.out?f.in?u[f.out-f.in+d].enqueue(f):u[u.length-1].enqueue(f):u[0].enqueue(f)}function c(u){const d=[];for(let f=0;f<u;f++)d.push(f);return d}return oJ}var lJ,V6e;function jl(){if(V6e)return lJ;V6e=1;let e=Eg().Graph;lJ={addBorderNode:d,addDummyNode:t,applyWithChunking:h,asNonCompoundGraph:r,buildLayerMatrix:l,intersectRect:i,mapValues:C,maxRank:m,normalizeRanks:c,notime:b,partition:g,pick:_,predecessorWeights:a,range:k,removeEmptyRanks:u,simplify:n,successorWeights:s,time:y,uniqueId:S,zipObject:E};function t(j,N,I,P){for(var $=P;j.hasNode($);)$=S(P);return I.dummy=N,j.setNode($,I),$}function n(j){let N=new e().setGraph(j.graph());return j.nodes().forEach(I=>N.setNode(I,j.node(I))),j.edges().forEach(I=>{let P=N.edge(I.v,I.w)||{weight:0,minlen:1},$=j.edge(I);N.setEdge(I.v,I.w,{weight:P.weight+$.weight,minlen:Math.max(P.minlen,$.minlen)})}),N}function r(j){let N=new e({multigraph:j.isMultigraph()}).setGraph(j.graph());return j.nodes().forEach(I=>{j.children(I).length||N.setNode(I,j.node(I))}),j.edges().forEach(I=>{N.setEdge(I,j.edge(I))}),N}function s(j){let N=j.nodes().map(I=>{let P={};return j.outEdges(I).forEach($=>{P[$.w]=(P[$.w]||0)+j.edge($).weight}),P});return E(j.nodes(),N)}function a(j){let N=j.nodes().map(I=>{let P={};return j.inEdges(I).forEach($=>{P[$.v]=(P[$.v]||0)+j.edge($).weight}),P});return E(j.nodes(),N)}function i(j,N){let I=j.x,P=j.y,$=N.x-I,F=N.y-P,D=j.width/2,V=j.height/2;if(!$&&!F)throw new Error("Not possible to find intersection inside of the rectangle");let W,L;return Math.abs(F)*D>Math.abs($)*V?(F<0&&(V=-V),W=V*$/F,L=V):($<0&&(D=-D),W=D,L=D*F/$),{x:I+W,y:P+L}}function l(j){let N=k(m(j)+1).map(()=>[]);return j.nodes().forEach(I=>{let P=j.node(I),$=P.rank;$!==void 0&&(N[$][P.order]=I)}),N}function c(j){let N=j.nodes().map(P=>{let $=j.node(P).rank;return $===void 0?Number.MAX_VALUE:$}),I=h(Math.min,N);j.nodes().forEach(P=>{let $=j.node(P);Object.hasOwn($,"rank")&&($.rank-=I)})}function u(j){let N=j.nodes().map(D=>j.node(D).rank),I=h(Math.min,N),P=[];j.nodes().forEach(D=>{let V=j.node(D).rank-I;P[V]||(P[V]=[]),P[V].push(D)});let $=0,F=j.graph().nodeRankFactor;Array.from(P).forEach((D,V)=>{D===void 0&&V%F!==0?--$:D!==void 0&&$&&D.forEach(W=>j.node(W).rank+=$)})}function d(j,N,I,P){let $={width:0,height:0};return arguments.length>=4&&($.rank=I,$.order=P),t(j,"border",$,N)}function f(j,N=p){const I=[];for(let P=0;P<j.length;P+=N){const $=j.slice(P,P+N);I.push($)}return I}const p=65535;function h(j,N){if(N.length>p){const I=f(N);return j.apply(null,I.map(P=>j.apply(null,P)))}else return j.apply(null,N)}function m(j){const I=j.nodes().map(P=>{let $=j.node(P).rank;return $===void 0?Number.MIN_VALUE:$});return h(Math.max,I)}function g(j,N){let I={lhs:[],rhs:[]};return j.forEach(P=>{N(P)?I.lhs.push(P):I.rhs.push(P)}),I}function y(j,N){let I=Date.now();try{return N()}finally{console.log(j+" time: "+(Date.now()-I)+"ms")}}function b(j,N){return N()}let w=0;function S(j){var N=++w;return j+(""+N)}function k(j,N,I=1){N==null&&(N=j,j=0);let P=F=>F<N;I<0&&(P=F=>N<F);const $=[];for(let F=j;P(F);F+=I)$.push(F);return $}function _(j,N){const I={};for(const P of N)j[P]!==void 0&&(I[P]=j[P]);return I}function C(j,N){let I=N;return typeof N=="string"&&(I=P=>P[N]),Object.entries(j).reduce((P,[$,F])=>(P[$]=I(F,$),P),{})}function E(j,N){return j.reduce((I,P,$)=>(I[P]=N[$],I),{})}return lJ}var cJ,H6e;function Bzn(){if(H6e)return cJ;H6e=1;let e=zzn(),t=jl().uniqueId;cJ={run:n,undo:s};function n(a){(a.graph().acyclicer==="greedy"?e(a,l(a)):r(a)).forEach(c=>{let u=a.edge(c);a.removeEdge(c),u.forwardName=c.name,u.reversed=!0,a.setEdge(c.w,c.v,u,t("rev"))});function l(c){return u=>c.edge(u).weight}}function r(a){let i=[],l={},c={};function u(d){Object.hasOwn(c,d)||(c[d]=!0,l[d]=!0,a.outEdges(d).forEach(f=>{Object.hasOwn(l,f.w)?i.push(f):u(f.w)}),delete l[d])}return a.nodes().forEach(u),i}function s(a){a.edges().forEach(i=>{let l=a.edge(i);if(l.reversed){a.removeEdge(i);let c=l.forwardName;delete l.reversed,delete l.forwardName,a.setEdge(i.w,i.v,l,c)}})}return cJ}var uJ,W6e;function Uzn(){if(W6e)return uJ;W6e=1;let e=jl();uJ={run:t,undo:r};function t(s){s.graph().dummyChains=[],s.edges().forEach(a=>n(s,a))}function n(s,a){let i=a.v,l=s.node(i).rank,c=a.w,u=s.node(c).rank,d=a.name,f=s.edge(a),p=f.labelRank;if(u===l+1)return;s.removeEdge(a);let h,m,g;for(g=0,++l;l<u;++g,++l)f.points=[],m={width:0,height:0,edgeLabel:f,edgeObj:a,rank:l},h=e.addDummyNode(s,"edge",m,"_d"),l===p&&(m.width=f.width,m.height=f.height,m.dummy="edge-label",m.labelpos=f.labelpos),s.setEdge(i,h,{weight:f.weight},d),g===0&&s.graph().dummyChains.push(h),i=h;s.setEdge(i,c,{weight:f.weight},d)}function r(s){s.graph().dummyChains.forEach(a=>{let i=s.node(a),l=i.edgeLabel,c;for(s.setEdge(i.edgeObj,l);i.dummy;)c=s.successors(a)[0],s.removeNode(a),l.points.push({x:i.x,y:i.y}),i.dummy==="edge-label"&&(l.x=i.x,l.y=i.y,l.width=i.width,l.height=i.height),a=c,i=s.node(a)})}return uJ}var dJ,Z6e;function x7(){if(Z6e)return dJ;Z6e=1;const{applyWithChunking:e}=jl();dJ={longestPath:t,slack:n};function t(r){var s={};function a(i){var l=r.node(i);if(Object.hasOwn(s,i))return l.rank;s[i]=!0;let c=r.outEdges(i).map(d=>d==null?Number.POSITIVE_INFINITY:a(d.w)-r.edge(d).minlen);var u=e(Math.min,c);return u===Number.POSITIVE_INFINITY&&(u=0),l.rank=u}r.sources().forEach(a)}function n(r,s){return r.node(s.w).rank-r.node(s.v).rank-r.edge(s).minlen}return dJ}var fJ,G6e;function _xt(){if(G6e)return fJ;G6e=1;var e=Eg().Graph,t=x7().slack;fJ=n;function n(i){var l=new e({directed:!1}),c=i.nodes()[0],u=i.nodeCount();l.setNode(c,{});for(var d,f;r(l,i)<u;)d=s(l,i),f=l.hasNode(d.v)?t(i,d):-t(i,d),a(l,i,f);return l}function r(i,l){function c(u){l.nodeEdges(u).forEach(d=>{var f=d.v,p=u===f?d.w:f;!i.hasNode(p)&&!t(l,d)&&(i.setNode(p,{}),i.setEdge(u,p,{}),c(p))})}return i.nodes().forEach(c),i.nodeCount()}function s(i,l){return l.edges().reduce((u,d)=>{let f=Number.POSITIVE_INFINITY;return i.hasNode(d.v)!==i.hasNode(d.w)&&(f=t(l,d)),f<u[0]?[f,d]:u},[Number.POSITIVE_INFINITY,null])[1]}function a(i,l,c){i.nodes().forEach(u=>l.node(u).rank+=c)}return fJ}var pJ,Q6e;function qzn(){if(Q6e)return pJ;Q6e=1;var e=_xt(),t=x7().slack,n=x7().longestPath,r=Eg().alg.preorder,s=Eg().alg.postorder,a=jl().simplify;pJ=i,i.initLowLimValues=d,i.initCutValues=l,i.calcCutValue=u,i.leaveEdge=p,i.enterEdge=h,i.exchangeEdges=m;function i(w){w=a(w),n(w);var S=e(w);d(S),l(S,w);for(var k,_;k=p(S);)_=h(S,w,k),m(S,w,k,_)}function l(w,S){var k=s(w,w.nodes());k=k.slice(0,k.length-1),k.forEach(_=>c(w,S,_))}function c(w,S,k){var _=w.node(k),C=_.parent;w.edge(k,C).cutvalue=u(w,S,k)}function u(w,S,k){var _=w.node(k),C=_.parent,E=!0,j=S.edge(k,C),N=0;return j||(E=!1,j=S.edge(C,k)),N=j.weight,S.nodeEdges(k).forEach(I=>{var P=I.v===k,$=P?I.w:I.v;if($!==C){var F=P===E,D=S.edge(I).weight;if(N+=F?D:-D,y(w,k,$)){var V=w.edge(k,$).cutvalue;N+=F?-V:V}}}),N}function d(w,S){arguments.length<2&&(S=w.nodes()[0]),f(w,{},1,S)}function f(w,S,k,_,C){var E=k,j=w.node(_);return S[_]=!0,w.neighbors(_).forEach(N=>{Object.hasOwn(S,N)||(k=f(w,S,k,N,_))}),j.low=E,j.lim=k++,C?j.parent=C:delete j.parent,k}function p(w){return w.edges().find(S=>w.edge(S).cutvalue<0)}function h(w,S,k){var _=k.v,C=k.w;S.hasEdge(_,C)||(_=k.w,C=k.v);var E=w.node(_),j=w.node(C),N=E,I=!1;E.lim>j.lim&&(N=j,I=!0);var P=S.edges().filter($=>I===b(w,w.node($.v),N)&&I!==b(w,w.node($.w),N));return P.reduce(($,F)=>t(S,F)<t(S,$)?F:$)}function m(w,S,k,_){var C=k.v,E=k.w;w.removeEdge(C,E),w.setEdge(_.v,_.w,{}),d(w),l(w,S),g(w,S)}function g(w,S){var k=w.nodes().find(C=>!S.node(C).parent),_=r(w,k);_=_.slice(1),_.forEach(C=>{var E=w.node(C).parent,j=S.edge(C,E),N=!1;j||(j=S.edge(E,C),N=!0),S.node(C).rank=S.node(E).rank+(N?j.minlen:-j.minlen)})}function y(w,S,k){return w.hasEdge(S,k)}function b(w,S,k){return k.low<=S.lim&&S.lim<=k.lim}return pJ}var hJ,Y6e;function Vzn(){if(Y6e)return hJ;Y6e=1;var e=x7(),t=e.longestPath,n=_xt(),r=qzn();hJ=s;function s(c){var u=c.graph().ranker;if(u instanceof Function)return u(c);switch(c.graph().ranker){case"network-simplex":l(c);break;case"tight-tree":i(c);break;case"longest-path":a(c);break;case"none":break;default:l(c)}}var a=t;function i(c){t(c),n(c)}function l(c){r(c)}return hJ}var mJ,X6e;function Hzn(){if(X6e)return mJ;X6e=1,mJ=e;function e(r){let s=n(r);r.graph().dummyChains.forEach(a=>{let i=r.node(a),l=i.edgeObj,c=t(r,s,l.v,l.w),u=c.path,d=c.lca,f=0,p=u[f],h=!0;for(;a!==l.w;){if(i=r.node(a),h){for(;(p=u[f])!==d&&r.node(p).maxRank<i.rank;)f++;p===d&&(h=!1)}if(!h){for(;f<u.length-1&&r.node(p=u[f+1]).minRank<=i.rank;)f++;p=u[f]}r.setParent(a,p),a=r.successors(a)[0]}})}function t(r,s,a,i){let l=[],c=[],u=Math.min(s[a].low,s[i].low),d=Math.max(s[a].lim,s[i].lim),f,p;f=a;do f=r.parent(f),l.push(f);while(f&&(s[f].low>u||d>s[f].lim));for(p=f,f=i;(f=r.parent(f))!==p;)c.push(f);return{path:l.concat(c.reverse()),lca:p}}function n(r){let s={},a=0;function i(l){let c=a;r.children(l).forEach(i),s[l]={low:c,lim:a++}}return r.children().forEach(i),s}return mJ}var gJ,K6e;function Wzn(){if(K6e)return gJ;K6e=1;let e=jl();gJ={run:t,cleanup:a};function t(i){let l=e.addDummyNode(i,"root",{},"_root"),c=r(i),u=Object.values(c),d=e.applyWithChunking(Math.max,u)-1,f=2*d+1;i.graph().nestingRoot=l,i.edges().forEach(h=>i.edge(h).minlen*=f);let p=s(i)+1;i.children().forEach(h=>n(i,l,f,p,d,c,h)),i.graph().nodeRankFactor=f}function n(i,l,c,u,d,f,p){let h=i.children(p);if(!h.length){p!==l&&i.setEdge(l,p,{weight:0,minlen:c});return}let m=e.addBorderNode(i,"_bt"),g=e.addBorderNode(i,"_bb"),y=i.node(p);i.setParent(m,p),y.borderTop=m,i.setParent(g,p),y.borderBottom=g,h.forEach(b=>{n(i,l,c,u,d,f,b);let w=i.node(b),S=w.borderTop?w.borderTop:b,k=w.borderBottom?w.borderBottom:b,_=w.borderTop?u:2*u,C=S!==k?1:d-f[p]+1;i.setEdge(m,S,{weight:_,minlen:C,nestingEdge:!0}),i.setEdge(k,g,{weight:_,minlen:C,nestingEdge:!0})}),i.parent(p)||i.setEdge(l,m,{weight:0,minlen:d+f[p]})}function r(i){var l={};function c(u,d){var f=i.children(u);f&&f.length&&f.forEach(p=>c(p,d+1)),l[u]=d}return i.children().forEach(u=>c(u,1)),l}function s(i){return i.edges().reduce((l,c)=>l+i.edge(c).weight,0)}function a(i){var l=i.graph();i.removeNode(l.nestingRoot),delete l.nestingRoot,i.edges().forEach(c=>{var u=i.edge(c);u.nestingEdge&&i.removeEdge(c)})}return gJ}var vJ,J6e;function Zzn(){if(J6e)return vJ;J6e=1;let e=jl();vJ=t;function t(r){function s(a){let i=r.children(a),l=r.node(a);if(i.length&&i.forEach(s),Object.hasOwn(l,"minRank")){l.borderLeft=[],l.borderRight=[];for(let c=l.minRank,u=l.maxRank+1;c<u;++c)n(r,"borderLeft","_bl",a,l,c),n(r,"borderRight","_br",a,l,c)}}r.children().forEach(s)}function n(r,s,a,i,l,c){let u={width:0,height:0,rank:c,borderType:s},d=l[s][c-1],f=e.addDummyNode(r,"border",u,a);l[s][c]=f,r.setParent(f,i),d&&r.setEdge(d,f,{weight:1})}return vJ}var yJ,e8e;function Gzn(){if(e8e)return yJ;e8e=1,yJ={adjust:e,undo:t};function e(c){let u=c.graph().rankdir.toLowerCase();(u==="lr"||u==="rl")&&n(c)}function t(c){let u=c.graph().rankdir.toLowerCase();(u==="bt"||u==="rl")&&s(c),(u==="lr"||u==="rl")&&(i(c),n(c))}function n(c){c.nodes().forEach(u=>r(c.node(u))),c.edges().forEach(u=>r(c.edge(u)))}function r(c){let u=c.width;c.width=c.height,c.height=u}function s(c){c.nodes().forEach(u=>a(c.node(u))),c.edges().forEach(u=>{let d=c.edge(u);d.points.forEach(a),Object.hasOwn(d,"y")&&a(d)})}function a(c){c.y=-c.y}function i(c){c.nodes().forEach(u=>l(c.node(u))),c.edges().forEach(u=>{let d=c.edge(u);d.points.forEach(l),Object.hasOwn(d,"x")&&l(d)})}function l(c){let u=c.x;c.x=c.y,c.y=u}return yJ}var bJ,t8e;function Qzn(){if(t8e)return bJ;t8e=1;let e=jl();bJ=t;function t(n){let r={},s=n.nodes().filter(d=>!n.children(d).length),a=s.map(d=>n.node(d).rank),i=e.applyWithChunking(Math.max,a),l=e.range(i+1).map(()=>[]);function c(d){if(r[d])return;r[d]=!0;let f=n.node(d);l[f.rank].push(d),n.successors(d).forEach(c)}return s.sort((d,f)=>n.node(d).rank-n.node(f).rank).forEach(c),l}return bJ}var xJ,n8e;function Yzn(){if(n8e)return xJ;n8e=1;let e=jl().zipObject;xJ=t;function t(r,s){let a=0;for(let i=1;i<s.length;++i)a+=n(r,s[i-1],s[i]);return a}function n(r,s,a){let i=e(a,a.map((p,h)=>h)),l=s.flatMap(p=>r.outEdges(p).map(h=>({pos:i[h.w],weight:r.edge(h).weight})).sort((h,m)=>h.pos-m.pos)),c=1;for(;c<a.length;)c<<=1;let u=2*c-1;c-=1;let d=new Array(u).fill(0),f=0;return l.forEach(p=>{let h=p.pos+c;d[h]+=p.weight;let m=0;for(;h>0;)h%2&&(m+=d[h+1]),h=h-1>>1,d[h]+=p.weight;f+=p.weight*m}),f}return xJ}var wJ,r8e;function Xzn(){if(r8e)return wJ;r8e=1,wJ=e;function e(t,n=[]){return n.map(r=>{let s=t.inEdges(r);if(s.length){let a=s.reduce((i,l)=>{let c=t.edge(l),u=t.node(l.v);return{sum:i.sum+c.weight*u.order,weight:i.weight+c.weight}},{sum:0,weight:0});return{v:r,barycenter:a.sum/a.weight,weight:a.weight}}else return{v:r}})}return wJ}var SJ,s8e;function Kzn(){if(s8e)return SJ;s8e=1;let e=jl();SJ=t;function t(s,a){let i={};s.forEach((c,u)=>{let d=i[c.v]={indegree:0,in:[],out:[],vs:[c.v],i:u};c.barycenter!==void 0&&(d.barycenter=c.barycenter,d.weight=c.weight)}),a.edges().forEach(c=>{let u=i[c.v],d=i[c.w];u!==void 0&&d!==void 0&&(d.indegree++,u.out.push(i[c.w]))});let l=Object.values(i).filter(c=>!c.indegree);return n(l)}function n(s){let a=[];function i(c){return u=>{u.merged||(u.barycenter===void 0||c.barycenter===void 0||u.barycenter>=c.barycenter)&&r(c,u)}}function l(c){return u=>{u.in.push(c),--u.indegree===0&&s.push(u)}}for(;s.length;){let c=s.pop();a.push(c),c.in.reverse().forEach(i(c)),c.out.forEach(l(c))}return a.filter(c=>!c.merged).map(c=>e.pick(c,["vs","i","barycenter","weight"]))}function r(s,a){let i=0,l=0;s.weight&&(i+=s.barycenter*s.weight,l+=s.weight),a.weight&&(i+=a.barycenter*a.weight,l+=a.weight),s.vs=a.vs.concat(s.vs),s.barycenter=i/l,s.weight=l,s.i=Math.min(a.i,s.i),a.merged=!0}return SJ}var kJ,a8e;function Jzn(){if(a8e)return kJ;a8e=1;let e=jl();kJ=t;function t(s,a){let i=e.partition(s,m=>Object.hasOwn(m,"barycenter")),l=i.lhs,c=i.rhs.sort((m,g)=>g.i-m.i),u=[],d=0,f=0,p=0;l.sort(r(!!a)),p=n(u,c,p),l.forEach(m=>{p+=m.vs.length,u.push(m.vs),d+=m.barycenter*m.weight,f+=m.weight,p=n(u,c,p)});let h={vs:u.flat(!0)};return f&&(h.barycenter=d/f,h.weight=f),h}function n(s,a,i){let l;for(;a.length&&(l=a[a.length-1]).i<=i;)a.pop(),s.push(l.vs),i++;return i}function r(s){return(a,i)=>a.barycenter<i.barycenter?-1:a.barycenter>i.barycenter?1:s?i.i-a.i:a.i-i.i}return kJ}var OJ,i8e;function e7n(){if(i8e)return OJ;i8e=1;let e=Xzn(),t=Kzn(),n=Jzn();OJ=r;function r(i,l,c,u){let d=i.children(l),f=i.node(l),p=f?f.borderLeft:void 0,h=f?f.borderRight:void 0,m={};p&&(d=d.filter(w=>w!==p&&w!==h));let g=e(i,d);g.forEach(w=>{if(i.children(w.v).length){let S=r(i,w.v,c,u);m[w.v]=S,Object.hasOwn(S,"barycenter")&&a(w,S)}});let y=t(g,c);s(y,m);let b=n(y,u);if(p&&(b.vs=[p,b.vs,h].flat(!0),i.predecessors(p).length)){let w=i.node(i.predecessors(p)[0]),S=i.node(i.predecessors(h)[0]);Object.hasOwn(b,"barycenter")||(b.barycenter=0,b.weight=0),b.barycenter=(b.barycenter*b.weight+w.order+S.order)/(b.weight+2),b.weight+=2}return b}function s(i,l){i.forEach(c=>{c.vs=c.vs.flatMap(u=>l[u]?l[u].vs:u)})}function a(i,l){i.barycenter!==void 0?(i.barycenter=(i.barycenter*i.weight+l.barycenter*l.weight)/(i.weight+l.weight),i.weight+=l.weight):(i.barycenter=l.barycenter,i.weight=l.weight)}return OJ}var _J,o8e;function t7n(){if(o8e)return _J;o8e=1;let e=Eg().Graph,t=jl();_J=n;function n(s,a,i,l){l||(l=s.nodes());let c=r(s),u=new e({compound:!0}).setGraph({root:c}).setDefaultNodeLabel(d=>s.node(d));return l.forEach(d=>{let f=s.node(d),p=s.parent(d);(f.rank===a||f.minRank<=a&&a<=f.maxRank)&&(u.setNode(d),u.setParent(d,p||c),s[i](d).forEach(h=>{let m=h.v===d?h.w:h.v,g=u.edge(m,d),y=g!==void 0?g.weight:0;u.setEdge(m,d,{weight:s.edge(h).weight+y})}),Object.hasOwn(f,"minRank")&&u.setNode(d,{borderLeft:f.borderLeft[a],borderRight:f.borderRight[a]}))}),u}function r(s){for(var a;s.hasNode(a=t.uniqueId("_root")););return a}return _J}var CJ,l8e;function n7n(){if(l8e)return CJ;l8e=1,CJ=e;function e(t,n,r){let s={},a;r.forEach(i=>{let l=t.parent(i),c,u;for(;l;){if(c=t.parent(l),c?(u=s[c],s[c]=l):(u=a,a=l),u&&u!==l){n.setEdge(u,l);return}l=c}})}return CJ}var EJ,c8e;function r7n(){if(c8e)return EJ;c8e=1;let e=Qzn(),t=Yzn(),n=e7n(),r=t7n(),s=n7n(),a=Eg().Graph,i=jl();EJ=l;function l(f,p){if(p&&typeof p.customOrder=="function"){p.customOrder(f,l);return}let h=i.maxRank(f),m=c(f,i.range(1,h+1),"inEdges"),g=c(f,i.range(h-1,-1,-1),"outEdges"),y=e(f);if(d(f,y),p&&p.disableOptimalOrderHeuristic)return;let b=Number.POSITIVE_INFINITY,w;for(let S=0,k=0;k<4;++S,++k){u(S%2?m:g,S%4>=2),y=i.buildLayerMatrix(f);let _=t(f,y);_<b&&(k=0,w=Object.assign({},y),b=_)}d(f,w)}function c(f,p,h){const m=new Map,g=(y,b)=>{m.has(y)||m.set(y,[]),m.get(y).push(b)};for(const y of f.nodes()){const b=f.node(y);if(typeof b.rank=="number"&&g(b.rank,y),typeof b.minRank=="number"&&typeof b.maxRank=="number")for(let w=b.minRank;w<=b.maxRank;w++)w!==b.rank&&g(w,y)}return p.map(function(y){return r(f,y,h,m.get(y)||[])})}function u(f,p){let h=new a;f.forEach(function(m){let g=m.graph().root,y=n(m,g,h,p);y.vs.forEach((b,w)=>m.node(b).order=w),s(m,h,y.vs)})}function d(f,p){Object.values(p).forEach(h=>h.forEach((m,g)=>f.node(m).order=g))}return EJ}var jJ,u8e;function s7n(){if(u8e)return jJ;u8e=1;let e=Eg().Graph,t=jl();jJ={positionX:h,findType1Conflicts:n,findType2Conflicts:r,addConflict:a,hasConflict:i,verticalAlignment:l,horizontalCompaction:c,alignCoordinates:f,findSmallestWidthAlignment:d,balance:p};function n(y,b){let w={};function S(k,_){let C=0,E=0,j=k.length,N=_[_.length-1];return _.forEach((I,P)=>{let $=s(y,I),F=$?y.node($).order:j;($||I===N)&&(_.slice(E,P+1).forEach(D=>{y.predecessors(D).forEach(V=>{let W=y.node(V),L=W.order;(L<C||F<L)&&!(W.dummy&&y.node(D).dummy)&&a(w,V,D)})}),E=P+1,C=F)}),_}return b.length&&b.reduce(S),w}function r(y,b){let w={};function S(_,C,E,j,N){let I;t.range(C,E).forEach(P=>{I=_[P],y.node(I).dummy&&y.predecessors(I).forEach($=>{let F=y.node($);F.dummy&&(F.order<j||F.order>N)&&a(w,$,I)})})}function k(_,C){let E=-1,j,N=0;return C.forEach((I,P)=>{if(y.node(I).dummy==="border"){let $=y.predecessors(I);$.length&&(j=y.node($[0]).order,S(C,N,P,E,j),N=P,E=j)}S(C,N,C.length,j,_.length)}),C}return b.length&&b.reduce(k),w}function s(y,b){if(y.node(b).dummy)return y.predecessors(b).find(w=>y.node(w).dummy)}function a(y,b,w){if(b>w){let k=b;b=w,w=k}let S=y[b];S||(y[b]=S={}),S[w]=!0}function i(y,b,w){if(b>w){let S=b;b=w,w=S}return!!y[b]&&Object.hasOwn(y[b],w)}function l(y,b,w,S){let k={},_={},C={};return b.forEach(E=>{E.forEach((j,N)=>{k[j]=j,_[j]=j,C[j]=N})}),b.forEach(E=>{let j=-1;E.forEach(N=>{let I=S(N);if(I.length){I=I.sort(($,F)=>C[$]-C[F]);let P=(I.length-1)/2;for(let $=Math.floor(P),F=Math.ceil(P);$<=F;++$){let D=I[$];_[N]===N&&j<C[D]&&!i(w,N,D)&&(_[D]=N,_[N]=k[N]=k[D],j=C[D])}}})}),{root:k,align:_}}function c(y,b,w,S,k){let _={},C=u(y,b,w,k),E=k?"borderLeft":"borderRight";function j(P,$){let F=C.nodes(),D=F.pop(),V={};for(;D;)V[D]?P(D):(V[D]=!0,F.push(D),F=F.concat($(D))),D=F.pop()}function N(P){_[P]=C.inEdges(P).reduce(($,F)=>Math.max($,_[F.v]+C.edge(F)),0)}function I(P){let $=C.outEdges(P).reduce((D,V)=>Math.min(D,_[V.w]-C.edge(V)),Number.POSITIVE_INFINITY),F=y.node(P);$!==Number.POSITIVE_INFINITY&&F.borderType!==E&&(_[P]=Math.max(_[P],$))}return j(N,C.predecessors.bind(C)),j(I,C.successors.bind(C)),Object.keys(S).forEach(P=>_[P]=_[w[P]]),_}function u(y,b,w,S){let k=new e,_=y.graph(),C=m(_.nodesep,_.edgesep,S);return b.forEach(E=>{let j;E.forEach(N=>{let I=w[N];if(k.setNode(I),j){var P=w[j],$=k.edge(P,I);k.setEdge(P,I,Math.max(C(y,N,j),$||0))}j=N})}),k}function d(y,b){return Object.values(b).reduce((w,S)=>{let k=Number.NEGATIVE_INFINITY,_=Number.POSITIVE_INFINITY;Object.entries(S).forEach(([E,j])=>{let N=g(y,E)/2;k=Math.max(j+N,k),_=Math.min(j-N,_)});const C=k-_;return C<w[0]&&(w=[C,S]),w},[Number.POSITIVE_INFINITY,null])[1]}function f(y,b){let w=Object.values(b),S=t.applyWithChunking(Math.min,w),k=t.applyWithChunking(Math.max,w);["u","d"].forEach(_=>{["l","r"].forEach(C=>{let E=_+C,j=y[E];if(j===b)return;let N=Object.values(j),I=S-t.applyWithChunking(Math.min,N);C!=="l"&&(I=k-t.applyWithChunking(Math.max,N)),I&&(y[E]=t.mapValues(j,P=>P+I))})})}function p(y,b){return t.mapValues(y.ul,(w,S)=>{if(b)return y[b.toLowerCase()][S];{let k=Object.values(y).map(_=>_[S]).sort((_,C)=>_-C);return(k[1]+k[2])/2}})}function h(y){let b=t.buildLayerMatrix(y),w=Object.assign(n(y,b),r(y,b)),S={},k;["u","d"].forEach(C=>{k=C==="u"?b:Object.values(b).reverse(),["l","r"].forEach(E=>{E==="r"&&(k=k.map(P=>Object.values(P).reverse()));let j=(C==="u"?y.predecessors:y.successors).bind(y),N=l(y,k,w,j),I=c(y,k,N.root,N.align,E==="r");E==="r"&&(I=t.mapValues(I,P=>-P)),S[C+E]=I})});let _=d(y,S);return f(S,_),p(S,y.graph().align)}function m(y,b,w){return(S,k,_)=>{let C=S.node(k),E=S.node(_),j=0,N;if(j+=C.width/2,Object.hasOwn(C,"labelpos"))switch(C.labelpos.toLowerCase()){case"l":N=-C.width/2;break;case"r":N=C.width/2;break}if(N&&(j+=w?N:-N),N=0,j+=(C.dummy?b:y)/2,j+=(E.dummy?b:y)/2,j+=E.width/2,Object.hasOwn(E,"labelpos"))switch(E.labelpos.toLowerCase()){case"l":N=E.width/2;break;case"r":N=-E.width/2;break}return N&&(j+=w?N:-N),N=0,j}}function g(y,b){return y.node(b).width}return jJ}var TJ,d8e;function a7n(){if(d8e)return TJ;d8e=1;let e=jl(),t=s7n().positionX;TJ=n;function n(s){s=e.asNonCompoundGraph(s),r(s),Object.entries(t(s)).forEach(([a,i])=>s.node(a).x=i)}function r(s){let a=e.buildLayerMatrix(s),i=s.graph().ranksep,l=0;a.forEach(c=>{const u=c.reduce((d,f)=>{const p=s.node(f).height;return d>p?d:p},0);c.forEach(d=>s.node(d).y=l+u/2),l+=u+i})}return TJ}var NJ,f8e;function i7n(){if(f8e)return NJ;f8e=1;let e=Bzn(),t=Uzn(),n=Vzn(),r=jl().normalizeRanks,s=Hzn(),a=jl().removeEmptyRanks,i=Wzn(),l=Zzn(),c=Gzn(),u=r7n(),d=a7n(),f=jl(),p=Eg().Graph;NJ=h;function h(R,U){let Z=U&&U.debugTiming?f.time:f.notime;Z("layout",()=>{let X=Z(" buildLayoutGraph",()=>j(R));Z(" runLayout",()=>m(X,Z,U)),Z(" updateInputGraph",()=>g(R,X))})}function m(R,U,Z){U(" makeSpaceForEdgeLabels",()=>N(R)),U(" removeSelfEdges",()=>B(R)),U(" acyclic",()=>e.run(R)),U(" nestingGraph.run",()=>i.run(R)),U(" rank",()=>n(f.asNonCompoundGraph(R))),U(" injectEdgeLabelProxies",()=>I(R)),U(" removeEmptyRanks",()=>a(R)),U(" nestingGraph.cleanup",()=>i.cleanup(R)),U(" normalizeRanks",()=>r(R)),U(" assignRankMinMax",()=>P(R)),U(" removeEdgeLabelProxies",()=>$(R)),U(" normalize.run",()=>t.run(R)),U(" parentDummyChains",()=>s(R)),U(" addBorderSegments",()=>l(R)),U(" order",()=>u(R,Z)),U(" insertSelfEdges",()=>z(R)),U(" adjustCoordinateSystem",()=>c.adjust(R)),U(" position",()=>d(R)),U(" positionSelfEdges",()=>M(R)),U(" removeBorderNodes",()=>L(R)),U(" normalize.undo",()=>t.undo(R)),U(" fixupEdgeLabelCoords",()=>V(R)),U(" undoCoordinateSystem",()=>c.undo(R)),U(" translateGraph",()=>F(R)),U(" assignNodeIntersects",()=>D(R)),U(" reversePoints",()=>W(R)),U(" acyclic.undo",()=>e.undo(R))}function g(R,U){R.nodes().forEach(Z=>{let X=R.node(Z),te=U.node(Z);X&&(X.x=te.x,X.y=te.y,X.rank=te.rank,U.children(Z).length&&(X.width=te.width,X.height=te.height))}),R.edges().forEach(Z=>{let X=R.edge(Z),te=U.edge(Z);X.points=te.points,Object.hasOwn(te,"x")&&(X.x=te.x,X.y=te.y)}),R.graph().width=U.graph().width,R.graph().height=U.graph().height}let y=["nodesep","edgesep","ranksep","marginx","marginy"],b={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},w=["acyclicer","ranker","rankdir","align"],S=["width","height","rank"],k={width:0,height:0},_=["minlen","weight","width","height","labeloffset"],C={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},E=["labelpos"];function j(R){let U=new p({multigraph:!0,compound:!0}),Z=q(R.graph());return U.setGraph(Object.assign({},b,G(Z,y),f.pick(Z,w))),R.nodes().forEach(X=>{let te=q(R.node(X));const J=G(te,S);Object.keys(k).forEach(ee=>{J[ee]===void 0&&(J[ee]=k[ee])}),U.setNode(X,J),U.setParent(X,R.parent(X))}),R.edges().forEach(X=>{let te=q(R.edge(X));U.setEdge(X,Object.assign({},C,G(te,_),f.pick(te,E)))}),U}function N(R){let U=R.graph();U.ranksep/=2,R.edges().forEach(Z=>{let X=R.edge(Z);X.minlen*=2,X.labelpos.toLowerCase()!=="c"&&(U.rankdir==="TB"||U.rankdir==="BT"?X.width+=X.labeloffset:X.height+=X.labeloffset)})}function I(R){R.edges().forEach(U=>{let Z=R.edge(U);if(Z.width&&Z.height){let X=R.node(U.v),J={rank:(R.node(U.w).rank-X.rank)/2+X.rank,e:U};f.addDummyNode(R,"edge-proxy",J,"_ep")}})}function P(R){let U=0;R.nodes().forEach(Z=>{let X=R.node(Z);X.borderTop&&(X.minRank=R.node(X.borderTop).rank,X.maxRank=R.node(X.borderBottom).rank,U=Math.max(U,X.maxRank))}),R.graph().maxRank=U}function $(R){R.nodes().forEach(U=>{let Z=R.node(U);Z.dummy==="edge-proxy"&&(R.edge(Z.e).labelRank=Z.rank,R.removeNode(U))})}function F(R){let U=Number.POSITIVE_INFINITY,Z=0,X=Number.POSITIVE_INFINITY,te=0,J=R.graph(),ee=J.marginx||0,ae=J.marginy||0;function ce(Y){let ne=Y.x,ue=Y.y,pe=Y.width,le=Y.height;U=Math.min(U,ne-pe/2),Z=Math.max(Z,ne+pe/2),X=Math.min(X,ue-le/2),te=Math.max(te,ue+le/2)}R.nodes().forEach(Y=>ce(R.node(Y))),R.edges().forEach(Y=>{let ne=R.edge(Y);Object.hasOwn(ne,"x")&&ce(ne)}),U-=ee,X-=ae,R.nodes().forEach(Y=>{let ne=R.node(Y);ne.x-=U,ne.y-=X}),R.edges().forEach(Y=>{let ne=R.edge(Y);ne.points.forEach(ue=>{ue.x-=U,ue.y-=X}),Object.hasOwn(ne,"x")&&(ne.x-=U),Object.hasOwn(ne,"y")&&(ne.y-=X)}),J.width=Z-U+ee,J.height=te-X+ae}function D(R){R.edges().forEach(U=>{let Z=R.edge(U),X=R.node(U.v),te=R.node(U.w),J,ee;Z.points?(J=Z.points[0],ee=Z.points[Z.points.length-1]):(Z.points=[],J=te,ee=X),Z.points.unshift(f.intersectRect(X,J)),Z.points.push(f.intersectRect(te,ee))})}function V(R){R.edges().forEach(U=>{let Z=R.edge(U);if(Object.hasOwn(Z,"x"))switch((Z.labelpos==="l"||Z.labelpos==="r")&&(Z.width-=Z.labeloffset),Z.labelpos){case"l":Z.x-=Z.width/2+Z.labeloffset;break;case"r":Z.x+=Z.width/2+Z.labeloffset;break}})}function W(R){R.edges().forEach(U=>{let Z=R.edge(U);Z.reversed&&Z.points.reverse()})}function L(R){R.nodes().forEach(U=>{if(R.children(U).length){let Z=R.node(U),X=R.node(Z.borderTop),te=R.node(Z.borderBottom),J=R.node(Z.borderLeft[Z.borderLeft.length-1]),ee=R.node(Z.borderRight[Z.borderRight.length-1]);Z.width=Math.abs(ee.x-J.x),Z.height=Math.abs(te.y-X.y),Z.x=J.x+Z.width/2,Z.y=X.y+Z.height/2}}),R.nodes().forEach(U=>{R.node(U).dummy==="border"&&R.removeNode(U)})}function B(R){R.edges().forEach(U=>{if(U.v===U.w){var Z=R.node(U.v);Z.selfEdges||(Z.selfEdges=[]),Z.selfEdges.push({e:U,label:R.edge(U)}),R.removeEdge(U)}})}function z(R){var U=f.buildLayerMatrix(R);U.forEach(Z=>{var X=0;Z.forEach((te,J)=>{var ee=R.node(te);ee.order=J+X,(ee.selfEdges||[]).forEach(ae=>{f.addDummyNode(R,"selfedge",{width:ae.label.width,height:ae.label.height,rank:ee.rank,order:J+ ++X,e:ae.e,label:ae.label},"_se")}),delete ee.selfEdges})})}function M(R){R.nodes().forEach(U=>{var Z=R.node(U);if(Z.dummy==="selfedge"){var X=R.node(Z.e.v),te=X.x+X.width/2,J=X.y,ee=Z.x-te,ae=X.height/2;R.setEdge(Z.e,Z.label),R.removeNode(U),Z.label.points=[{x:te+2*ee/3,y:J-ae},{x:te+5*ee/6,y:J-ae},{x:te+ee,y:J},{x:te+5*ee/6,y:J+ae},{x:te+2*ee/3,y:J+ae}],Z.label.x=Z.x,Z.label.y=Z.y}})}function G(R,U){return f.mapValues(f.pick(R,U),Number)}function q(R){var U={};return R&&Object.entries(R).forEach(([Z,X])=>{typeof Z=="string"&&(Z=Z.toLowerCase()),U[Z]=X}),U}return NJ}var IJ,p8e;function o7n(){if(p8e)return IJ;p8e=1;let e=jl(),t=Eg().Graph;IJ={debugOrdering:n};function n(r){let s=e.buildLayerMatrix(r),a=new t({compound:!0,multigraph:!0}).setGraph({});return r.nodes().forEach(i=>{a.setNode(i,{label:i}),a.setParent(i,"layer"+r.node(i).rank)}),r.edges().forEach(i=>a.setEdge(i.v,i.w,{},i.name)),s.forEach((i,l)=>{let c="layer"+l;a.setNode(c,{rank:"same"}),i.reduce((u,d)=>(a.setEdge(u,d,{style:"invis"}),d))}),a}return IJ}var AJ,h8e;function l7n(){return h8e||(h8e=1,AJ="1.1.8"),AJ}var RJ,m8e;function c7n(){return m8e||(m8e=1,RJ={graphlib:Eg(),layout:i7n(),debug:o7n(),util:{time:jl().time,notime:jl().notime},version:l7n()}),RJ}var u7n=c7n();const g8e=Cc(u7n);function Pl(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=Pl(e[n]))!==""&&(t+=(t&&" ")+r);else for(let n in e)e[n]&&(t+=(t&&" ")+n);return t}var d7n={value:()=>{}};function wV(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+"")||r in n||/[\s.]/.test(r))throw new Error("illegal type: "+r);n[r]=[]}return new q9(n)}function q9(e){this._=e}function f7n(e,t){return e.trim().split(/^|\s+/).map(function(n){var r="",s=n.indexOf(".");if(s>=0&&(r=n.slice(s+1),n=n.slice(0,s)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:r}})}q9.prototype=wV.prototype={constructor:q9,on:function(e,t){var n=this._,r=f7n(e+"",n),s,a=-1,i=r.length;if(arguments.length<2){for(;++a<i;)if((s=(e=r[a]).type)&&(s=p7n(n[s],e.name)))return s;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++a<i;)if(s=(e=r[a]).type)n[s]=v8e(n[s],e.name,t);else if(t==null)for(s in n)n[s]=v8e(n[s],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new q9(e)},call:function(e,t){if((s=arguments.length-2)>0)for(var n=new Array(s),r=0,s,a;r<s;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(a=this._[e],r=0,s=a.length;r<s;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],s=0,a=r.length;s<a;++s)r[s].value.apply(t,n)}};function p7n(e,t){for(var n=0,r=e.length,s;n<r;++n)if((s=e[n]).name===t)return s.value}function v8e(e,t,n){for(var r=0,s=e.length;r<s;++r)if(e[r].name===t){e[r]=d7n,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var phe="http://www.w3.org/1999/xhtml";const y8e={svg:"http://www.w3.org/2000/svg",xhtml:phe,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function SV(e){var t=e+="",n=t.indexOf(":");return n>=0&&(t=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),y8e.hasOwnProperty(t)?{space:y8e[t],local:e}:e}function h7n(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===phe&&t.documentElement.namespaceURI===phe?t.createElement(e):t.createElementNS(n,e)}}function m7n(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Cxt(e){var t=SV(e);return(t.local?m7n:h7n)(t)}function g7n(){}function s1e(e){return e==null?g7n:function(){return this.querySelector(e)}}function v7n(e){typeof e!="function"&&(e=s1e(e));for(var t=this._groups,n=t.length,r=new Array(n),s=0;s<n;++s)for(var a=t[s],i=a.length,l=r[s]=new Array(i),c,u,d=0;d<i;++d)(c=a[d])&&(u=e.call(c,c.__data__,d,a))&&("__data__"in c&&(u.__data__=c.__data__),l[d]=u);return new Dp(r,this._parents)}function y7n(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function b7n(){return[]}function Ext(e){return e==null?b7n:function(){return this.querySelectorAll(e)}}function x7n(e){return function(){return y7n(e.apply(this,arguments))}}function w7n(e){typeof e=="function"?e=x7n(e):e=Ext(e);for(var t=this._groups,n=t.length,r=[],s=[],a=0;a<n;++a)for(var i=t[a],l=i.length,c,u=0;u<l;++u)(c=i[u])&&(r.push(e.call(c,c.__data__,u,i)),s.push(c));return new Dp(r,s)}function jxt(e){return function(){return this.matches(e)}}function Txt(e){return function(t){return t.matches(e)}}var S7n=Array.prototype.find;function k7n(e){return function(){return S7n.call(this.children,e)}}function O7n(){return this.firstElementChild}function _7n(e){return this.select(e==null?O7n:k7n(typeof e=="function"?e:Txt(e)))}var C7n=Array.prototype.filter;function E7n(){return Array.from(this.children)}function j7n(e){return function(){return C7n.call(this.children,e)}}function T7n(e){return this.selectAll(e==null?E7n:j7n(typeof e=="function"?e:Txt(e)))}function N7n(e){typeof e!="function"&&(e=jxt(e));for(var t=this._groups,n=t.length,r=new Array(n),s=0;s<n;++s)for(var a=t[s],i=a.length,l=r[s]=[],c,u=0;u<i;++u)(c=a[u])&&e.call(c,c.__data__,u,a)&&l.push(c);return new Dp(r,this._parents)}function Nxt(e){return new Array(e.length)}function I7n(){return new Dp(this._enter||this._groups.map(Nxt),this._parents)}function w7(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}w7.prototype={constructor:w7,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 A7n(e){return function(){return e}}function R7n(e,t,n,r,s,a){for(var i=0,l,c=t.length,u=a.length;i<u;++i)(l=t[i])?(l.__data__=a[i],r[i]=l):n[i]=new w7(e,a[i]);for(;i<c;++i)(l=t[i])&&(s[i]=l)}function P7n(e,t,n,r,s,a,i){var l,c,u=new Map,d=t.length,f=a.length,p=new Array(d),h;for(l=0;l<d;++l)(c=t[l])&&(p[l]=h=i.call(c,c.__data__,l,t)+"",u.has(h)?s[l]=c:u.set(h,c));for(l=0;l<f;++l)h=i.call(e,a[l],l,a)+"",(c=u.get(h))?(r[l]=c,c.__data__=a[l],u.delete(h)):n[l]=new w7(e,a[l]);for(l=0;l<d;++l)(c=t[l])&&u.get(p[l])===c&&(s[l]=c)}function $7n(e){return e.__data__}function M7n(e,t){if(!arguments.length)return Array.from(this,$7n);var n=t?P7n:R7n,r=this._parents,s=this._groups;typeof e!="function"&&(e=A7n(e));for(var a=s.length,i=new Array(a),l=new Array(a),c=new Array(a),u=0;u<a;++u){var d=r[u],f=s[u],p=f.length,h=D7n(e.call(d,d&&d.__data__,u,r)),m=h.length,g=l[u]=new Array(m),y=i[u]=new Array(m),b=c[u]=new Array(p);n(d,f,g,y,b,h,t);for(var w=0,S=0,k,_;w<m;++w)if(k=g[w]){for(w>=S&&(S=w+1);!(_=y[S])&&++S<m;);k._next=_||null}}return i=new Dp(i,r),i._enter=l,i._exit=c,i}function D7n(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function L7n(){return new Dp(this._exit||this._groups.map(Nxt),this._parents)}function F7n(e,t,n){var r=this.enter(),s=this,a=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),t!=null&&(s=t(s),s&&(s=s.selection())),n==null?a.remove():n(a),r&&s?r.merge(s).order():s}function z7n(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,s=n.length,a=r.length,i=Math.min(s,a),l=new Array(s),c=0;c<i;++c)for(var u=n[c],d=r[c],f=u.length,p=l[c]=new Array(f),h,m=0;m<f;++m)(h=u[m]||d[m])&&(p[m]=h);for(;c<s;++c)l[c]=n[c];return new Dp(l,this._parents)}function B7n(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],s=r.length-1,a=r[s],i;--s>=0;)(i=r[s])&&(a&&i.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(i,a),a=i);return this}function U7n(e){e||(e=q7n);function t(f,p){return f&&p?e(f.__data__,p.__data__):!f-!p}for(var n=this._groups,r=n.length,s=new Array(r),a=0;a<r;++a){for(var i=n[a],l=i.length,c=s[a]=new Array(l),u,d=0;d<l;++d)(u=i[d])&&(c[d]=u);c.sort(t)}return new Dp(s,this._parents).order()}function q7n(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function V7n(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function H7n(){return Array.from(this)}function W7n(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],s=0,a=r.length;s<a;++s){var i=r[s];if(i)return i}return null}function Z7n(){let e=0;for(const t of this)++e;return e}function G7n(){return!this.node()}function Q7n(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var s=t[n],a=0,i=s.length,l;a<i;++a)(l=s[a])&&e.call(l,l.__data__,a,s);return this}function Y7n(e){return function(){this.removeAttribute(e)}}function X7n(e){return function(){this.removeAttributeNS(e.space,e.local)}}function K7n(e,t){return function(){this.setAttribute(e,t)}}function J7n(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function eBn(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function tBn(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 nBn(e,t){var n=SV(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?X7n:Y7n:typeof t=="function"?n.local?tBn:eBn:n.local?J7n:K7n)(n,t))}function Ixt(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function rBn(e){return function(){this.style.removeProperty(e)}}function sBn(e,t,n){return function(){this.style.setProperty(e,t,n)}}function aBn(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function iBn(e,t,n){return arguments.length>1?this.each((t==null?rBn:typeof t=="function"?aBn:sBn)(e,t,n??"")):gT(this.node(),e)}function gT(e,t){return e.style.getPropertyValue(t)||Ixt(e).getComputedStyle(e,null).getPropertyValue(t)}function oBn(e){return function(){delete this[e]}}function lBn(e,t){return function(){this[e]=t}}function cBn(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function uBn(e,t){return arguments.length>1?this.each((t==null?oBn:typeof t=="function"?cBn:lBn)(e,t)):this.node()[e]}function Axt(e){return e.trim().split(/^|\s+/)}function a1e(e){return e.classList||new Rxt(e)}function Rxt(e){this._node=e,this._names=Axt(e.getAttribute("class")||"")}Rxt.prototype={add:function(e){var t=this._names.indexOf(e);t<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 Pxt(e,t){for(var n=a1e(e),r=-1,s=t.length;++r<s;)n.add(t[r])}function $xt(e,t){for(var n=a1e(e),r=-1,s=t.length;++r<s;)n.remove(t[r])}function dBn(e){return function(){Pxt(this,e)}}function fBn(e){return function(){$xt(this,e)}}function pBn(e,t){return function(){(t.apply(this,arguments)?Pxt:$xt)(this,e)}}function hBn(e,t){var n=Axt(e+"");if(arguments.length<2){for(var r=a1e(this.node()),s=-1,a=n.length;++s<a;)if(!r.contains(n[s]))return!1;return!0}return this.each((typeof t=="function"?pBn:t?dBn:fBn)(n,t))}function mBn(){this.textContent=""}function gBn(e){return function(){this.textContent=e}}function vBn(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function yBn(e){return arguments.length?this.each(e==null?mBn:(typeof e=="function"?vBn:gBn)(e)):this.node().textContent}function bBn(){this.innerHTML=""}function xBn(e){return function(){this.innerHTML=e}}function wBn(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function SBn(e){return arguments.length?this.each(e==null?bBn:(typeof e=="function"?wBn:xBn)(e)):this.node().innerHTML}function kBn(){this.nextSibling&&this.parentNode.appendChild(this)}function OBn(){return this.each(kBn)}function _Bn(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function CBn(){return this.each(_Bn)}function EBn(e){var t=typeof e=="function"?e:Cxt(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function jBn(){return null}function TBn(e,t){var n=typeof e=="function"?e:Cxt(e),r=t==null?jBn:typeof t=="function"?t:s1e(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function NBn(){var e=this.parentNode;e&&e.removeChild(this)}function IBn(){return this.each(NBn)}function ABn(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function RBn(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function PBn(e){return this.select(e?RBn:ABn)}function $Bn(e){return arguments.length?this.property("__data__",e):this.node().__data__}function MBn(e){return function(t){e.call(this,t,this.__data__)}}function DBn(e){return e.trim().split(/^|\s+/).map(function(t){var n="",r=t.indexOf(".");return r>=0&&(n=t.slice(r+1),t=t.slice(0,r)),{type:t,name:n}})}function LBn(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,s=t.length,a;n<s;++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 FBn(e,t,n){return function(){var r=this.__on,s,a=MBn(t);if(r){for(var i=0,l=r.length;i<l;++i)if((s=r[i]).type===e.type&&s.name===e.name){this.removeEventListener(s.type,s.listener,s.options),this.addEventListener(s.type,s.listener=a,s.options=n),s.value=t;return}}this.addEventListener(e.type,a,n),s={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(s):this.__on=[s]}}function zBn(e,t,n){var r=DBn(e+""),s,a=r.length,i;if(arguments.length<2){var l=this.node().__on;if(l){for(var c=0,u=l.length,d;c<u;++c)for(s=0,d=l[c];s<a;++s)if((i=r[s]).type===d.type&&i.name===d.name)return d.value}return}for(l=t?FBn:LBn,s=0;s<a;++s)this.each(l(r[s],t,n));return this}function Mxt(e,t,n){var r=Ixt(e),s=r.CustomEvent;typeof s=="function"?s=new s(t,n):(s=r.document.createEvent("Event"),n?(s.initEvent(t,n.bubbles,n.cancelable),s.detail=n.detail):s.initEvent(t,!1,!1)),e.dispatchEvent(s)}function BBn(e,t){return function(){return Mxt(this,e,t)}}function UBn(e,t){return function(){return Mxt(this,e,t.apply(this,arguments))}}function qBn(e,t){return this.each((typeof t=="function"?UBn:BBn)(e,t))}function*VBn(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],s=0,a=r.length,i;s<a;++s)(i=r[s])&&(yield i)}var Dxt=[null];function Dp(e,t){this._groups=e,this._parents=t}function oD(){return new Dp([[document.documentElement]],Dxt)}function HBn(){return this}Dp.prototype=oD.prototype={constructor:Dp,select:v7n,selectAll:w7n,selectChild:_7n,selectChildren:T7n,filter:N7n,data:M7n,enter:I7n,exit:L7n,join:F7n,merge:z7n,selection:HBn,order:B7n,sort:U7n,call:V7n,nodes:H7n,node:W7n,size:Z7n,empty:G7n,each:Q7n,attr:nBn,style:iBn,property:uBn,classed:hBn,text:yBn,html:SBn,raise:OBn,lower:CBn,append:EBn,insert:TBn,remove:IBn,clone:PBn,datum:$Bn,on:zBn,dispatch:qBn,[Symbol.iterator]:VBn};function fp(e){return typeof e=="string"?new Dp([[document.querySelector(e)]],[document.documentElement]):new Dp([[e]],Dxt)}function WBn(e){let t;for(;t=e.sourceEvent;)e=t;return e}function Xm(e,t){if(e=WBn(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 s=t.getBoundingClientRect();return[e.clientX-s.left-t.clientLeft,e.clientY-s.top-t.clientTop]}}return[e.pageX,e.pageY]}const ZBn={passive:!1},Q$={capture:!0,passive:!1};function PJ(e){e.stopImmediatePropagation()}function wj(e){e.preventDefault(),e.stopImmediatePropagation()}function Lxt(e){var t=e.document.documentElement,n=fp(e).on("dragstart.drag",wj,Q$);"onselectstart"in t?n.on("selectstart.drag",wj,Q$):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function Fxt(e,t){var n=e.document.documentElement,r=fp(e).on("dragstart.drag",null);t&&(r.on("click.drag",wj,Q$),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const g6=e=>()=>e;function hhe(e,{sourceEvent:t,subject:n,target:r,identifier:s,active:a,x:i,y:l,dx:c,dy:u,dispatch:d}){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:s,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:i,enumerable:!0,configurable:!0},y:{value:l,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:u,enumerable:!0,configurable:!0},_:{value:d}})}hhe.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function GBn(e){return!e.ctrlKey&&!e.button}function QBn(){return this.parentNode}function YBn(e,t){return t??{x:e.x,y:e.y}}function XBn(){return navigator.maxTouchPoints||"ontouchstart"in this}function zxt(){var e=GBn,t=QBn,n=YBn,r=XBn,s={},a=wV("start","drag","end"),i=0,l,c,u,d,f=0;function p(k){k.on("mousedown.drag",h).filter(r).on("touchstart.drag",y).on("touchmove.drag",b,ZBn).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function h(k,_){if(!(d||!e.call(this,k,_))){var C=S(this,t.call(this,k,_),k,_,"mouse");C&&(fp(k.view).on("mousemove.drag",m,Q$).on("mouseup.drag",g,Q$),Lxt(k.view),PJ(k),u=!1,l=k.clientX,c=k.clientY,C("start",k))}}function m(k){if(wj(k),!u){var _=k.clientX-l,C=k.clientY-c;u=_*_+C*C>f}s.mouse("drag",k)}function g(k){fp(k.view).on("mousemove.drag mouseup.drag",null),Fxt(k.view,u),wj(k),s.mouse("end",k)}function y(k,_){if(e.call(this,k,_)){var C=k.changedTouches,E=t.call(this,k,_),j=C.length,N,I;for(N=0;N<j;++N)(I=S(this,E,k,_,C[N].identifier,C[N]))&&(PJ(k),I("start",k,C[N]))}}function b(k){var _=k.changedTouches,C=_.length,E,j;for(E=0;E<C;++E)(j=s[_[E].identifier])&&(wj(k),j("drag",k,_[E]))}function w(k){var _=k.changedTouches,C=_.length,E,j;for(d&&clearTimeout(d),d=setTimeout(function(){d=null},500),E=0;E<C;++E)(j=s[_[E].identifier])&&(PJ(k),j("end",k,_[E]))}function S(k,_,C,E,j,N){var I=a.copy(),P=Xm(N||C,_),$,F,D;if((D=n.call(k,new hhe("beforestart",{sourceEvent:C,target:p,identifier:j,active:i,x:P[0],y:P[1],dx:0,dy:0,dispatch:I}),E))!=null)return $=D.x-P[0]||0,F=D.y-P[1]||0,function V(W,L,B){var z=P,M;switch(W){case"start":s[j]=V,M=i++;break;case"end":delete s[j],--i;case"drag":P=Xm(B||L,_),M=i;break}I.call(W,k,new hhe(W,{sourceEvent:L,subject:D,target:p,identifier:j,active:M,x:P[0]+$,y:P[1]+F,dx:P[0]-z[0],dy:P[1]-z[1],dispatch:I}),E)}}return p.filter=function(k){return arguments.length?(e=typeof k=="function"?k:g6(!!k),p):e},p.container=function(k){return arguments.length?(t=typeof k=="function"?k:g6(k),p):t},p.subject=function(k){return arguments.length?(n=typeof k=="function"?k:g6(k),p):n},p.touchable=function(k){return arguments.length?(r=typeof k=="function"?k:g6(!!k),p):r},p.on=function(){var k=a.on.apply(a,arguments);return k===a?p:k},p.clickDistance=function(k){return arguments.length?(f=(k=+k)*k,p):Math.sqrt(f)},p}function i1e(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function Bxt(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function lD(){}var Y$=.7,S7=1/Y$,Sj="\\s*([+-]?\\d+)\\s*",X$="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Xv="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",KBn=/^#([0-9a-f]{3,8})$/,JBn=new RegExp(`^rgb\\(${Sj},${Sj},${Sj}\\)$`),eUn=new RegExp(`^rgb\\(${Xv},${Xv},${Xv}\\)$`),tUn=new RegExp(`^rgba\\(${Sj},${Sj},${Sj},${X$}\\)$`),nUn=new RegExp(`^rgba\\(${Xv},${Xv},${Xv},${X$}\\)$`),rUn=new RegExp(`^hsl\\(${X$},${Xv},${Xv}\\)$`),sUn=new RegExp(`^hsla\\(${X$},${Xv},${Xv},${X$}\\)$`),b8e={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};i1e(lD,TO,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:x8e,formatHex:x8e,formatHex8:aUn,formatHsl:iUn,formatRgb:w8e,toString:w8e});function x8e(){return this.rgb().formatHex()}function aUn(){return this.rgb().formatHex8()}function iUn(){return Uxt(this).formatHsl()}function w8e(){return this.rgb().formatRgb()}function TO(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=KBn.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?S8e(t):n===3?new Xd(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?v6(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?v6(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=JBn.exec(e))?new Xd(t[1],t[2],t[3],1):(t=eUn.exec(e))?new Xd(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=tUn.exec(e))?v6(t[1],t[2],t[3],t[4]):(t=nUn.exec(e))?v6(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=rUn.exec(e))?_8e(t[1],t[2]/100,t[3]/100,1):(t=sUn.exec(e))?_8e(t[1],t[2]/100,t[3]/100,t[4]):b8e.hasOwnProperty(e)?S8e(b8e[e]):e==="transparent"?new Xd(NaN,NaN,NaN,0):null}function S8e(e){return new Xd(e>>16&255,e>>8&255,e&255,1)}function v6(e,t,n,r){return r<=0&&(e=t=n=NaN),new Xd(e,t,n,r)}function oUn(e){return e instanceof lD||(e=TO(e)),e?(e=e.rgb(),new Xd(e.r,e.g,e.b,e.opacity)):new Xd}function mhe(e,t,n,r){return arguments.length===1?oUn(e):new Xd(e,t,n,r??1)}function Xd(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}i1e(Xd,mhe,Bxt(lD,{brighter(e){return e=e==null?S7:Math.pow(S7,e),new Xd(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Y$:Math.pow(Y$,e),new Xd(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Xd(Bk(this.r),Bk(this.g),Bk(this.b),k7(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:k8e,formatHex:k8e,formatHex8:lUn,formatRgb:O8e,toString:O8e}));function k8e(){return`#${_k(this.r)}${_k(this.g)}${_k(this.b)}`}function lUn(){return`#${_k(this.r)}${_k(this.g)}${_k(this.b)}${_k((isNaN(this.opacity)?1:this.opacity)*255)}`}function O8e(){const e=k7(this.opacity);return`${e===1?"rgb(":"rgba("}${Bk(this.r)}, ${Bk(this.g)}, ${Bk(this.b)}${e===1?")":`, ${e})`}`}function k7(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Bk(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function _k(e){return e=Bk(e),(e<16?"0":"")+e.toString(16)}function _8e(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new rg(e,t,n,r)}function Uxt(e){if(e instanceof rg)return new rg(e.h,e.s,e.l,e.opacity);if(e instanceof lD||(e=TO(e)),!e)return new rg;if(e instanceof rg)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,s=Math.min(t,n,r),a=Math.max(t,n,r),i=NaN,l=a-s,c=(a+s)/2;return l?(t===a?i=(n-r)/l+(n<r)*6:n===a?i=(r-t)/l+2:i=(t-n)/l+4,l/=c<.5?a+s:2-a-s,i*=60):l=c>0&&c<1?0:i,new rg(i,l,c,e.opacity)}function cUn(e,t,n,r){return arguments.length===1?Uxt(e):new rg(e,t,n,r??1)}function rg(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}i1e(rg,cUn,Bxt(lD,{brighter(e){return e=e==null?S7:Math.pow(S7,e),new rg(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Y$:Math.pow(Y$,e),new rg(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,s=2*n-r;return new Xd($J(e>=240?e-240:e+120,s,r),$J(e,s,r),$J(e<120?e+240:e-120,s,r),this.opacity)},clamp(){return new rg(C8e(this.h),y6(this.s),y6(this.l),k7(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(){const e=k7(this.opacity);return`${e===1?"hsl(":"hsla("}${C8e(this.h)}, ${y6(this.s)*100}%, ${y6(this.l)*100}%${e===1?")":`, ${e})`}`}}));function C8e(e){return e=(e||0)%360,e<0?e+360:e}function y6(e){return Math.max(0,Math.min(1,e||0))}function $J(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const o1e=e=>()=>e;function uUn(e,t){return function(n){return e+n*t}}function dUn(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function fUn(e){return(e=+e)==1?qxt:function(t,n){return n-t?dUn(t,n,e):o1e(isNaN(t)?n:t)}}function qxt(e,t){var n=t-e;return n?uUn(e,n):o1e(isNaN(e)?t:e)}const O7=(function e(t){var n=fUn(t);function r(s,a){var i=n((s=mhe(s)).r,(a=mhe(a)).r),l=n(s.g,a.g),c=n(s.b,a.b),u=qxt(s.opacity,a.opacity);return function(d){return s.r=i(d),s.g=l(d),s.b=c(d),s.opacity=u(d),s+""}}return r.gamma=e,r})(1);function pUn(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),s;return function(a){for(s=0;s<n;++s)r[s]=e[s]*(1-a)+t[s]*a;return r}}function hUn(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function mUn(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,s=new Array(r),a=new Array(n),i;for(i=0;i<r;++i)s[i]=rx(e[i],t[i]);for(;i<n;++i)a[i]=t[i];return function(l){for(i=0;i<r;++i)a[i]=s[i](l);return a}}function gUn(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function Jm(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function vUn(e,t){var n={},r={},s;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(s in t)s in e?n[s]=rx(e[s],t[s]):r[s]=t[s];return function(a){for(s in n)r[s]=n[s](a);return r}}var ghe=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,MJ=new RegExp(ghe.source,"g");function yUn(e){return function(){return e}}function bUn(e){return function(t){return e(t)+""}}function Vxt(e,t){var n=ghe.lastIndex=MJ.lastIndex=0,r,s,a,i=-1,l=[],c=[];for(e=e+"",t=t+"";(r=ghe.exec(e))&&(s=MJ.exec(t));)(a=s.index)>n&&(a=t.slice(n,a),l[i]?l[i]+=a:l[++i]=a),(r=r[0])===(s=s[0])?l[i]?l[i]+=s:l[++i]=s:(l[++i]=null,c.push({i,x:Jm(r,s)})),n=MJ.lastIndex;return n<t.length&&(a=t.slice(n),l[i]?l[i]+=a:l[++i]=a),l.length<2?c[0]?bUn(c[0].x):yUn(t):(t=c.length,function(u){for(var d=0,f;d<t;++d)l[(f=c[d]).i]=f.x(u);return l.join("")})}function rx(e,t){var n=typeof t,r;return t==null||n==="boolean"?o1e(t):(n==="number"?Jm:n==="string"?(r=TO(t))?(t=r,O7):Vxt:t instanceof TO?O7:t instanceof Date?gUn:hUn(t)?pUn:Array.isArray(t)?mUn:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?vUn:Jm)(e,t)}function l1e(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}var E8e=180/Math.PI,vhe={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Hxt(e,t,n,r,s,a){var i,l,c;return(i=Math.sqrt(e*e+t*t))&&(e/=i,t/=i),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(l=Math.sqrt(n*n+r*r))&&(n/=l,r/=l,c/=l),e*r<t*n&&(e=-e,t=-t,c=-c,i=-i),{translateX:s,translateY:a,rotate:Math.atan2(t,e)*E8e,skewX:Math.atan(c)*E8e,scaleX:i,scaleY:l}}var b6;function xUn(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?vhe:Hxt(t.a,t.b,t.c,t.d,t.e,t.f)}function wUn(e){return e==null||(b6||(b6=document.createElementNS("http://www.w3.org/2000/svg","g")),b6.setAttribute("transform",e),!(e=b6.transform.baseVal.consolidate()))?vhe:(e=e.matrix,Hxt(e.a,e.b,e.c,e.d,e.e,e.f))}function Wxt(e,t,n,r){function s(u){return u.length?u.pop()+" ":""}function a(u,d,f,p,h,m){if(u!==f||d!==p){var g=h.push("translate(",null,t,null,n);m.push({i:g-4,x:Jm(u,f)},{i:g-2,x:Jm(d,p)})}else(f||p)&&h.push("translate("+f+t+p+n)}function i(u,d,f,p){u!==d?(u-d>180?d+=360:d-u>180&&(u+=360),p.push({i:f.push(s(f)+"rotate(",null,r)-2,x:Jm(u,d)})):d&&f.push(s(f)+"rotate("+d+r)}function l(u,d,f,p){u!==d?p.push({i:f.push(s(f)+"skewX(",null,r)-2,x:Jm(u,d)}):d&&f.push(s(f)+"skewX("+d+r)}function c(u,d,f,p,h,m){if(u!==f||d!==p){var g=h.push(s(h)+"scale(",null,",",null,")");m.push({i:g-4,x:Jm(u,f)},{i:g-2,x:Jm(d,p)})}else(f!==1||p!==1)&&h.push(s(h)+"scale("+f+","+p+")")}return function(u,d){var f=[],p=[];return u=e(u),d=e(d),a(u.translateX,u.translateY,d.translateX,d.translateY,f,p),i(u.rotate,d.rotate,f,p),l(u.skewX,d.skewX,f,p),c(u.scaleX,u.scaleY,d.scaleX,d.scaleY,f,p),u=d=null,function(h){for(var m=-1,g=p.length,y;++m<g;)f[(y=p[m]).i]=y.x(h);return f.join("")}}}var SUn=Wxt(xUn,"px, ","px)","deg)"),kUn=Wxt(wUn,", ",")",")"),OUn=1e-12;function j8e(e){return((e=Math.exp(e))+1/e)/2}function _Un(e){return((e=Math.exp(e))-1/e)/2}function CUn(e){return((e=Math.exp(2*e))-1)/(e+1)}const V9=(function e(t,n,r){function s(a,i){var l=a[0],c=a[1],u=a[2],d=i[0],f=i[1],p=i[2],h=d-l,m=f-c,g=h*h+m*m,y,b;if(g<OUn)b=Math.log(p/u)/t,y=function(E){return[l+E*h,c+E*m,u*Math.exp(t*E*b)]};else{var w=Math.sqrt(g),S=(p*p-u*u+r*g)/(2*u*n*w),k=(p*p-u*u-r*g)/(2*p*n*w),_=Math.log(Math.sqrt(S*S+1)-S),C=Math.log(Math.sqrt(k*k+1)-k);b=(C-_)/t,y=function(E){var j=E*b,N=j8e(_),I=u/(n*w)*(N*CUn(t*j+_)-_Un(_));return[l+I*h,c+I*m,u*N/j8e(t*j+_)]}}return y.duration=b*1e3*t/Math.SQRT2,y}return s.rho=function(a){var i=Math.max(.001,+a),l=i*i,c=l*l;return e(i,l,c)},s})(Math.SQRT2,2,4);function EUn(e,t){t===void 0&&(t=e,e=rx);for(var n=0,r=t.length-1,s=t[0],a=new Array(r<0?0:r);n<r;)a[n]=e(s,s=t[++n]);return function(i){var l=Math.max(0,Math.min(r-1,Math.floor(i*=r)));return a[l](i-l)}}var vT=0,a2=0,HA=0,Zxt=1e3,_7,i2,C7=0,NO=0,kV=0,K$=typeof performance=="object"&&performance.now?performance:Date,Gxt=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function c1e(){return NO||(Gxt(jUn),NO=K$.now()+kV)}function jUn(){NO=0}function E7(){this._call=this._time=this._next=null}E7.prototype=Qxt.prototype={constructor:E7,restart:function(e,t,n){if(typeof e!="function")throw new TypeError("callback is not a function");n=(n==null?c1e():+n)+(t==null?0:+t),!this._next&&i2!==this&&(i2?i2._next=this:_7=this,i2=this),this._call=e,this._time=n,yhe()},stop:function(){this._call&&(this._call=null,this._time=1/0,yhe())}};function Qxt(e,t,n){var r=new E7;return r.restart(e,t,n),r}function TUn(){c1e(),++vT;for(var e=_7,t;e;)(t=NO-e._time)>=0&&e._call.call(void 0,t),e=e._next;--vT}function T8e(){NO=(C7=K$.now())+kV,vT=a2=0;try{TUn()}finally{vT=0,IUn(),NO=0}}function NUn(){var e=K$.now(),t=e-C7;t>Zxt&&(kV-=t,C7=e)}function IUn(){for(var e,t=_7,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:_7=n);i2=e,yhe(r)}function yhe(e){if(!vT){a2&&(a2=clearTimeout(a2));var t=e-NO;t>24?(e<1/0&&(a2=setTimeout(T8e,e-K$.now()-kV)),HA&&(HA=clearInterval(HA))):(HA||(C7=K$.now(),HA=setInterval(NUn,Zxt)),vT=1,Gxt(T8e))}}function N8e(e,t,n){var r=new E7;return t=t==null?0:+t,r.restart(s=>{r.stop(),e(s+t)},t,n),r}var AUn=wV("start","end","cancel","interrupt"),RUn=[],Yxt=0,I8e=1,bhe=2,H9=3,A8e=4,xhe=5,W9=6;function OV(e,t,n,r,s,a){var i=e.__transition;if(!i)e.__transition={};else if(n in i)return;PUn(e,n,{name:t,index:r,group:s,on:AUn,tween:RUn,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Yxt})}function u1e(e,t){var n=Lg(e,t);if(n.state>Yxt)throw new Error("too late; already scheduled");return n}function $y(e,t){var n=Lg(e,t);if(n.state>H9)throw new Error("too late; already running");return n}function Lg(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function PUn(e,t,n){var r=e.__transition,s;r[t]=n,n.timer=Qxt(a,0,n.time);function a(u){n.state=I8e,n.timer.restart(i,n.delay,n.time),n.delay<=u&&i(u-n.delay)}function i(u){var d,f,p,h;if(n.state!==I8e)return c();for(d in r)if(h=r[d],h.name===n.name){if(h.state===H9)return N8e(i);h.state===A8e?(h.state=W9,h.timer.stop(),h.on.call("interrupt",e,e.__data__,h.index,h.group),delete r[d]):+d<t&&(h.state=W9,h.timer.stop(),h.on.call("cancel",e,e.__data__,h.index,h.group),delete r[d])}if(N8e(function(){n.state===H9&&(n.state=A8e,n.timer.restart(l,n.delay,n.time),l(u))}),n.state=bhe,n.on.call("start",e,e.__data__,n.index,n.group),n.state===bhe){for(n.state=H9,s=new Array(p=n.tween.length),d=0,f=-1;d<p;++d)(h=n.tween[d].value.call(e,e.__data__,n.index,n.group))&&(s[++f]=h);s.length=f+1}}function l(u){for(var d=u<n.duration?n.ease.call(null,u/n.duration):(n.timer.restart(c),n.state=xhe,1),f=-1,p=s.length;++f<p;)s[f].call(e,d);n.state===xhe&&(n.on.call("end",e,e.__data__,n.index,n.group),c())}function c(){n.state=W9,n.timer.stop(),delete r[t];for(var u in r)return;delete e.__transition}}function Z9(e,t){var n=e.__transition,r,s,a=!0,i;if(n){t=t==null?null:t+"";for(i in n){if((r=n[i]).name!==t){a=!1;continue}s=r.state>bhe&&r.state<xhe,r.state=W9,r.timer.stop(),r.on.call(s?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete n[i]}a&&delete e.__transition}}function $Un(e){return this.each(function(){Z9(this,e)})}function MUn(e,t){var n,r;return function(){var s=$y(this,e),a=s.tween;if(a!==n){r=n=a;for(var i=0,l=r.length;i<l;++i)if(r[i].name===t){r=r.slice(),r.splice(i,1);break}}s.tween=r}}function DUn(e,t,n){var r,s;if(typeof n!="function")throw new Error;return function(){var a=$y(this,e),i=a.tween;if(i!==r){s=(r=i).slice();for(var l={name:t,value:n},c=0,u=s.length;c<u;++c)if(s[c].name===t){s[c]=l;break}c===u&&s.push(l)}a.tween=s}}function LUn(e,t){var n=this._id;if(e+="",arguments.length<2){for(var r=Lg(this.node(),n).tween,s=0,a=r.length,i;s<a;++s)if((i=r[s]).name===e)return i.value;return null}return this.each((t==null?MUn:DUn)(n,e,t))}function d1e(e,t,n){var r=e._id;return e.each(function(){var s=$y(this,r);(s.value||(s.value={}))[t]=n.apply(this,arguments)}),function(s){return Lg(s,r).value[t]}}function Xxt(e,t){var n;return(typeof t=="number"?Jm:t instanceof TO?O7:(n=TO(t))?(t=n,O7):Vxt)(e,t)}function FUn(e){return function(){this.removeAttribute(e)}}function zUn(e){return function(){this.removeAttributeNS(e.space,e.local)}}function BUn(e,t,n){var r,s=n+"",a;return function(){var i=this.getAttribute(e);return i===s?null:i===r?a:a=t(r=i,n)}}function UUn(e,t,n){var r,s=n+"",a;return function(){var i=this.getAttributeNS(e.space,e.local);return i===s?null:i===r?a:a=t(r=i,n)}}function qUn(e,t,n){var r,s,a;return function(){var i,l=n(this),c;return l==null?void this.removeAttribute(e):(i=this.getAttribute(e),c=l+"",i===c?null:i===r&&c===s?a:(s=c,a=t(r=i,l)))}}function VUn(e,t,n){var r,s,a;return function(){var i,l=n(this),c;return l==null?void this.removeAttributeNS(e.space,e.local):(i=this.getAttributeNS(e.space,e.local),c=l+"",i===c?null:i===r&&c===s?a:(s=c,a=t(r=i,l)))}}function HUn(e,t){var n=SV(e),r=n==="transform"?kUn:Xxt;return this.attrTween(e,typeof t=="function"?(n.local?VUn:qUn)(n,r,d1e(this,"attr."+e,t)):t==null?(n.local?zUn:FUn)(n):(n.local?UUn:BUn)(n,r,t))}function WUn(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function ZUn(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function GUn(e,t){var n,r;function s(){var a=t.apply(this,arguments);return a!==r&&(n=(r=a)&&ZUn(e,a)),n}return s._value=t,s}function QUn(e,t){var n,r;function s(){var a=t.apply(this,arguments);return a!==r&&(n=(r=a)&&WUn(e,a)),n}return s._value=t,s}function YUn(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 new Error;var r=SV(e);return this.tween(n,(r.local?GUn:QUn)(r,t))}function XUn(e,t){return function(){u1e(this,e).delay=+t.apply(this,arguments)}}function KUn(e,t){return t=+t,function(){u1e(this,e).delay=t}}function JUn(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?XUn:KUn)(t,e)):Lg(this.node(),t).delay}function eqn(e,t){return function(){$y(this,e).duration=+t.apply(this,arguments)}}function tqn(e,t){return t=+t,function(){$y(this,e).duration=t}}function nqn(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?eqn:tqn)(t,e)):Lg(this.node(),t).duration}function rqn(e,t){if(typeof t!="function")throw new Error;return function(){$y(this,e).ease=t}}function sqn(e){var t=this._id;return arguments.length?this.each(rqn(t,e)):Lg(this.node(),t).ease}function aqn(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!="function")throw new Error;$y(this,e).ease=n}}function iqn(e){if(typeof e!="function")throw new Error;return this.each(aqn(this._id,e))}function oqn(e){typeof e!="function"&&(e=jxt(e));for(var t=this._groups,n=t.length,r=new Array(n),s=0;s<n;++s)for(var a=t[s],i=a.length,l=r[s]=[],c,u=0;u<i;++u)(c=a[u])&&e.call(c,c.__data__,u,a)&&l.push(c);return new kx(r,this._parents,this._name,this._id)}function lqn(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,r=t.length,s=n.length,a=Math.min(r,s),i=new Array(r),l=0;l<a;++l)for(var c=t[l],u=n[l],d=c.length,f=i[l]=new Array(d),p,h=0;h<d;++h)(p=c[h]||u[h])&&(f[h]=p);for(;l<r;++l)i[l]=t[l];return new kx(i,this._parents,this._name,this._id)}function cqn(e){return(e+"").trim().split(/^|\s+/).every(function(t){var n=t.indexOf(".");return n>=0&&(t=t.slice(0,n)),!t||t==="start"})}function uqn(e,t,n){var r,s,a=cqn(t)?u1e:$y;return function(){var i=a(this,e),l=i.on;l!==r&&(s=(r=l).copy()).on(t,n),i.on=s}}function dqn(e,t){var n=this._id;return arguments.length<2?Lg(this.node(),n).on.on(e):this.each(uqn(n,e,t))}function fqn(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function pqn(){return this.on("end.remove",fqn(this._id))}function hqn(e){var t=this._name,n=this._id;typeof e!="function"&&(e=s1e(e));for(var r=this._groups,s=r.length,a=new Array(s),i=0;i<s;++i)for(var l=r[i],c=l.length,u=a[i]=new Array(c),d,f,p=0;p<c;++p)(d=l[p])&&(f=e.call(d,d.__data__,p,l))&&("__data__"in d&&(f.__data__=d.__data__),u[p]=f,OV(u[p],t,n,p,u,Lg(d,n)));return new kx(a,this._parents,t,n)}function mqn(e){var t=this._name,n=this._id;typeof e!="function"&&(e=Ext(e));for(var r=this._groups,s=r.length,a=[],i=[],l=0;l<s;++l)for(var c=r[l],u=c.length,d,f=0;f<u;++f)if(d=c[f]){for(var p=e.call(d,d.__data__,f,c),h,m=Lg(d,n),g=0,y=p.length;g<y;++g)(h=p[g])&&OV(h,t,n,g,p,m);a.push(p),i.push(d)}return new kx(a,i,t,n)}var gqn=oD.prototype.constructor;function vqn(){return new gqn(this._groups,this._parents)}function yqn(e,t){var n,r,s;return function(){var a=gT(this,e),i=(this.style.removeProperty(e),gT(this,e));return a===i?null:a===n&&i===r?s:s=t(n=a,r=i)}}function Kxt(e){return function(){this.style.removeProperty(e)}}function bqn(e,t,n){var r,s=n+"",a;return function(){var i=gT(this,e);return i===s?null:i===r?a:a=t(r=i,n)}}function xqn(e,t,n){var r,s,a;return function(){var i=gT(this,e),l=n(this),c=l+"";return l==null&&(c=l=(this.style.removeProperty(e),gT(this,e))),i===c?null:i===r&&c===s?a:(s=c,a=t(r=i,l))}}function wqn(e,t){var n,r,s,a="style."+t,i="end."+a,l;return function(){var c=$y(this,e),u=c.on,d=c.value[a]==null?l||(l=Kxt(t)):void 0;(u!==n||s!==d)&&(r=(n=u).copy()).on(i,s=d),c.on=r}}function Sqn(e,t,n){var r=(e+="")=="transform"?SUn:Xxt;return t==null?this.styleTween(e,yqn(e,r)).on("end.style."+e,Kxt(e)):typeof t=="function"?this.styleTween(e,xqn(e,r,d1e(this,"style."+e,t))).each(wqn(this._id,e)):this.styleTween(e,bqn(e,r,t),n).on("end.style."+e,null)}function kqn(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function Oqn(e,t,n){var r,s;function a(){var i=t.apply(this,arguments);return i!==s&&(r=(s=i)&&kqn(e,i,n)),r}return a._value=t,a}function _qn(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 new Error;return this.tween(r,Oqn(e,t,n??""))}function Cqn(e){return function(){this.textContent=e}}function Eqn(e){return function(){var t=e(this);this.textContent=t??""}}function jqn(e){return this.tween("text",typeof e=="function"?Eqn(d1e(this,"text",e)):Cqn(e==null?"":e+""))}function Tqn(e){return function(t){this.textContent=e.call(this,t)}}function Nqn(e){var t,n;function r(){var s=e.apply(this,arguments);return s!==n&&(t=(n=s)&&Tqn(s)),t}return r._value=e,r}function Iqn(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 new Error;return this.tween(t,Nqn(e))}function Aqn(){for(var e=this._name,t=this._id,n=Jxt(),r=this._groups,s=r.length,a=0;a<s;++a)for(var i=r[a],l=i.length,c,u=0;u<l;++u)if(c=i[u]){var d=Lg(c,t);OV(c,e,n,u,i,{time:d.time+d.delay+d.duration,delay:0,duration:d.duration,ease:d.ease})}return new kx(r,this._parents,e,n)}function Rqn(){var e,t,n=this,r=n._id,s=n.size();return new Promise(function(a,i){var l={value:i},c={value:function(){--s===0&&a()}};n.each(function(){var u=$y(this,r),d=u.on;d!==e&&(t=(e=d).copy(),t._.cancel.push(l),t._.interrupt.push(l),t._.end.push(c)),u.on=t}),s===0&&a()})}var Pqn=0;function kx(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function Jxt(){return++Pqn}var pb=oD.prototype;kx.prototype={constructor:kx,select:hqn,selectAll:mqn,selectChild:pb.selectChild,selectChildren:pb.selectChildren,filter:oqn,merge:lqn,selection:vqn,transition:Aqn,call:pb.call,nodes:pb.nodes,node:pb.node,size:pb.size,empty:pb.empty,each:pb.each,on:dqn,attr:HUn,attrTween:YUn,style:Sqn,styleTween:_qn,text:jqn,textTween:Iqn,remove:pqn,tween:LUn,delay:JUn,duration:nqn,ease:sqn,easeVarying:iqn,end:Rqn,[Symbol.iterator]:pb[Symbol.iterator]};function $qn(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var Mqn={time:null,delay:0,duration:250,ease:$qn};function Dqn(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return n}function Lqn(e){var t,n;e instanceof kx?(t=e._id,e=e._name):(t=Jxt(),(n=Mqn).time=c1e(),e=e==null?null:e+"");for(var r=this._groups,s=r.length,a=0;a<s;++a)for(var i=r[a],l=i.length,c,u=0;u<l;++u)(c=i[u])&&OV(c,e,t,u,i,n||Dqn(c,t));return new kx(r,this._parents,e,t)}oD.prototype.interrupt=$Un;oD.prototype.transition=Lqn;const x6=e=>()=>e;function Fqn(e,{sourceEvent:t,target:n,transform:r,dispatch:s}){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:s}})}function Vb(e,t,n){this.k=e,this.x=t,this.y=n}Vb.prototype={constructor:Vb,scale:function(e){return e===1?this:new Vb(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Vb(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 _V=new Vb(1,0,0);e0t.prototype=Vb.prototype;function e0t(e){for(;!e.__zoom;)if(!(e=e.parentNode))return _V;return e.__zoom}function DJ(e){e.stopImmediatePropagation()}function WA(e){e.preventDefault(),e.stopImmediatePropagation()}function zqn(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function Bqn(){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 R8e(){return this.__zoom||_V}function Uqn(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function qqn(){return navigator.maxTouchPoints||"ontouchstart"in this}function Vqn(e,t,n){var r=e.invertX(t[0][0])-n[0][0],s=e.invertX(t[1][0])-n[1][0],a=e.invertY(t[0][1])-n[0][1],i=e.invertY(t[1][1])-n[1][1];return e.translate(s>r?(r+s)/2:Math.min(0,r)||Math.max(0,s),i>a?(a+i)/2:Math.min(0,a)||Math.max(0,i))}function t0t(){var e=zqn,t=Bqn,n=Vqn,r=Uqn,s=qqn,a=[0,1/0],i=[[-1/0,-1/0],[1/0,1/0]],l=250,c=V9,u=wV("start","zoom","end"),d,f,p,h=500,m=150,g=0,y=10;function b(D){D.property("__zoom",R8e).on("wheel.zoom",j,{passive:!1}).on("mousedown.zoom",N).on("dblclick.zoom",I).filter(s).on("touchstart.zoom",P).on("touchmove.zoom",$).on("touchend.zoom touchcancel.zoom",F).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}b.transform=function(D,V,W,L){var B=D.selection?D.selection():D;B.property("__zoom",R8e),D!==B?_(D,V,W,L):B.interrupt().each(function(){C(this,arguments).event(L).start().zoom(null,typeof V=="function"?V.apply(this,arguments):V).end()})},b.scaleBy=function(D,V,W,L){b.scaleTo(D,function(){var B=this.__zoom.k,z=typeof V=="function"?V.apply(this,arguments):V;return B*z},W,L)},b.scaleTo=function(D,V,W,L){b.transform(D,function(){var B=t.apply(this,arguments),z=this.__zoom,M=W==null?k(B):typeof W=="function"?W.apply(this,arguments):W,G=z.invert(M),q=typeof V=="function"?V.apply(this,arguments):V;return n(S(w(z,q),M,G),B,i)},W,L)},b.translateBy=function(D,V,W,L){b.transform(D,function(){return n(this.__zoom.translate(typeof V=="function"?V.apply(this,arguments):V,typeof W=="function"?W.apply(this,arguments):W),t.apply(this,arguments),i)},null,L)},b.translateTo=function(D,V,W,L,B){b.transform(D,function(){var z=t.apply(this,arguments),M=this.__zoom,G=L==null?k(z):typeof L=="function"?L.apply(this,arguments):L;return n(_V.translate(G[0],G[1]).scale(M.k).translate(typeof V=="function"?-V.apply(this,arguments):-V,typeof W=="function"?-W.apply(this,arguments):-W),z,i)},L,B)};function w(D,V){return V=Math.max(a[0],Math.min(a[1],V)),V===D.k?D:new Vb(V,D.x,D.y)}function S(D,V,W){var L=V[0]-W[0]*D.k,B=V[1]-W[1]*D.k;return L===D.x&&B===D.y?D:new Vb(D.k,L,B)}function k(D){return[(+D[0][0]+ +D[1][0])/2,(+D[0][1]+ +D[1][1])/2]}function _(D,V,W,L){D.on("start.zoom",function(){C(this,arguments).event(L).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(L).end()}).tween("zoom",function(){var B=this,z=arguments,M=C(B,z).event(L),G=t.apply(B,z),q=W==null?k(G):typeof W=="function"?W.apply(B,z):W,R=Math.max(G[1][0]-G[0][0],G[1][1]-G[0][1]),U=B.__zoom,Z=typeof V=="function"?V.apply(B,z):V,X=c(U.invert(q).concat(R/U.k),Z.invert(q).concat(R/Z.k));return function(te){if(te===1)te=Z;else{var J=X(te),ee=R/J[2];te=new Vb(ee,q[0]-J[0]*ee,q[1]-J[1]*ee)}M.zoom(null,te)}})}function C(D,V,W){return!W&&D.__zooming||new E(D,V)}function E(D,V){this.that=D,this.args=V,this.active=0,this.sourceEvent=null,this.extent=t.apply(D,V),this.taps=0}E.prototype={event:function(D){return D&&(this.sourceEvent=D),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(D,V){return this.mouse&&D!=="mouse"&&(this.mouse[1]=V.invert(this.mouse[0])),this.touch0&&D!=="touch"&&(this.touch0[1]=V.invert(this.touch0[0])),this.touch1&&D!=="touch"&&(this.touch1[1]=V.invert(this.touch1[0])),this.that.__zoom=V,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(D){var V=fp(this.that).datum();u.call(D,this.that,new Fqn(D,{sourceEvent:this.sourceEvent,target:b,transform:this.that.__zoom,dispatch:u}),V)}};function j(D,...V){if(!e.apply(this,arguments))return;var W=C(this,V).event(D),L=this.__zoom,B=Math.max(a[0],Math.min(a[1],L.k*Math.pow(2,r.apply(this,arguments)))),z=Xm(D);if(W.wheel)(W.mouse[0][0]!==z[0]||W.mouse[0][1]!==z[1])&&(W.mouse[1]=L.invert(W.mouse[0]=z)),clearTimeout(W.wheel);else{if(L.k===B)return;W.mouse=[z,L.invert(z)],Z9(this),W.start()}WA(D),W.wheel=setTimeout(M,m),W.zoom("mouse",n(S(w(L,B),W.mouse[0],W.mouse[1]),W.extent,i));function M(){W.wheel=null,W.end()}}function N(D,...V){if(p||!e.apply(this,arguments))return;var W=D.currentTarget,L=C(this,V,!0).event(D),B=fp(D.view).on("mousemove.zoom",q,!0).on("mouseup.zoom",R,!0),z=Xm(D,W),M=D.clientX,G=D.clientY;Lxt(D.view),DJ(D),L.mouse=[z,this.__zoom.invert(z)],Z9(this),L.start();function q(U){if(WA(U),!L.moved){var Z=U.clientX-M,X=U.clientY-G;L.moved=Z*Z+X*X>g}L.event(U).zoom("mouse",n(S(L.that.__zoom,L.mouse[0]=Xm(U,W),L.mouse[1]),L.extent,i))}function R(U){B.on("mousemove.zoom mouseup.zoom",null),Fxt(U.view,L.moved),WA(U),L.event(U).end()}}function I(D,...V){if(e.apply(this,arguments)){var W=this.__zoom,L=Xm(D.changedTouches?D.changedTouches[0]:D,this),B=W.invert(L),z=W.k*(D.shiftKey?.5:2),M=n(S(w(W,z),L,B),t.apply(this,V),i);WA(D),l>0?fp(this).transition().duration(l).call(_,M,L,D):fp(this).call(b.transform,M,L,D)}}function P(D,...V){if(e.apply(this,arguments)){var W=D.touches,L=W.length,B=C(this,V,D.changedTouches.length===L).event(D),z,M,G,q;for(DJ(D),M=0;M<L;++M)G=W[M],q=Xm(G,this),q=[q,this.__zoom.invert(q),G.identifier],B.touch0?!B.touch1&&B.touch0[2]!==q[2]&&(B.touch1=q,B.taps=0):(B.touch0=q,z=!0,B.taps=1+!!d);d&&(d=clearTimeout(d)),z&&(B.taps<2&&(f=q[0],d=setTimeout(function(){d=null},h)),Z9(this),B.start())}}function $(D,...V){if(this.__zooming){var W=C(this,V).event(D),L=D.changedTouches,B=L.length,z,M,G,q;for(WA(D),z=0;z<B;++z)M=L[z],G=Xm(M,this),W.touch0&&W.touch0[2]===M.identifier?W.touch0[0]=G:W.touch1&&W.touch1[2]===M.identifier&&(W.touch1[0]=G);if(M=W.that.__zoom,W.touch1){var R=W.touch0[0],U=W.touch0[1],Z=W.touch1[0],X=W.touch1[1],te=(te=Z[0]-R[0])*te+(te=Z[1]-R[1])*te,J=(J=X[0]-U[0])*J+(J=X[1]-U[1])*J;M=w(M,Math.sqrt(te/J)),G=[(R[0]+Z[0])/2,(R[1]+Z[1])/2],q=[(U[0]+X[0])/2,(U[1]+X[1])/2]}else if(W.touch0)G=W.touch0[0],q=W.touch0[1];else return;W.zoom("touch",n(S(M,G,q),W.extent,i))}}function F(D,...V){if(this.__zooming){var W=C(this,V).event(D),L=D.changedTouches,B=L.length,z,M;for(DJ(D),p&&clearTimeout(p),p=setTimeout(function(){p=null},h),z=0;z<B;++z)M=L[z],W.touch0&&W.touch0[2]===M.identifier?delete W.touch0:W.touch1&&W.touch1[2]===M.identifier&&delete W.touch1;if(W.touch1&&!W.touch0&&(W.touch0=W.touch1,delete W.touch1),W.touch0)W.touch0[1]=this.__zoom.invert(W.touch0[0]);else if(W.end(),W.taps===2&&(M=Xm(M,this),Math.hypot(f[0]-M[0],f[1]-M[1])<y)){var G=fp(this).on("dblclick.zoom");G&&G.apply(this,arguments)}}}return b.wheelDelta=function(D){return arguments.length?(r=typeof D=="function"?D:x6(+D),b):r},b.filter=function(D){return arguments.length?(e=typeof D=="function"?D:x6(!!D),b):e},b.touchable=function(D){return arguments.length?(s=typeof D=="function"?D:x6(!!D),b):s},b.extent=function(D){return arguments.length?(t=typeof D=="function"?D:x6([[+D[0][0],+D[0][1]],[+D[1][0],+D[1][1]]]),b):t},b.scaleExtent=function(D){return arguments.length?(a[0]=+D[0],a[1]=+D[1],b):[a[0],a[1]]},b.translateExtent=function(D){return arguments.length?(i[0][0]=+D[0][0],i[1][0]=+D[1][0],i[0][1]=+D[0][1],i[1][1]=+D[1][1],b):[[i[0][0],i[0][1]],[i[1][0],i[1][1]]]},b.constrain=function(D){return arguments.length?(n=D,b):n},b.duration=function(D){return arguments.length?(l=+D,b):l},b.interpolate=function(D){return arguments.length?(c=D,b):c},b.on=function(){var D=u.on.apply(u,arguments);return D===u?b:D},b.clickDistance=function(D){return arguments.length?(g=(D=+D)*D,b):Math.sqrt(g)},b.tapDistance=function(D){return arguments.length?(y=+D,b):y},b}const py={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."},J$=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],n0t=["Enter"," ","Escape"],r0t={"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"};var yT;(function(e){e.Strict="strict",e.Loose="loose"})(yT||(yT={}));var Uk;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Uk||(Uk={}));var eM;(function(e){e.Partial="partial",e.Full="full"})(eM||(eM={}));const s0t={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var sw;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(sw||(sw={}));var tM;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(tM||(tM={}));var nr;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(nr||(nr={}));const P8e={[nr.Left]:nr.Right,[nr.Right]:nr.Left,[nr.Top]:nr.Bottom,[nr.Bottom]:nr.Top};function a0t(e){return e===null?null:e?"valid":"invalid"}const i0t=e=>"id"in e&&"source"in e&&"target"in e,Hqn=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),f1e=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),cD=(e,t=[0,0])=>{const{width:n,height:r}=Hx(e),s=e.origin??t,a=n*s[0],i=r*s[1];return{x:e.position.x-a,y:e.position.y-i}},Wqn=(e,t={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((r,s)=>{const a=typeof s=="string";let i=!t.nodeLookup&&!a?s:void 0;t.nodeLookup&&(i=a?t.nodeLookup.get(s):f1e(s)?s:t.nodeLookup.get(s.id));const l=i?j7(i,t.nodeOrigin):{x:0,y:0,x2:0,y2:0};return CV(r,l)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return EV(n)},uD=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},r=!1;return e.forEach(s=>{(t.filter===void 0||t.filter(s))&&(n=CV(n,j7(s)),r=!0)}),r?EV(n):{x:0,y:0,width:0,height:0}},p1e=(e,t,[n,r,s]=[0,0,1],a=!1,i=!1)=>{const l={...fD(t,[n,r,s]),width:t.width/s,height:t.height/s},c=[];for(const u of e.values()){const{measured:d,selectable:f=!0,hidden:p=!1}=u;if(i&&!f||p)continue;const h=d.width??u.width??u.initialWidth??null,m=d.height??u.height??u.initialHeight??null,g=nM(l,xT(u)),y=(h??0)*(m??0),b=a&&g>0;(!u.internals.handleBounds||b||g>=y||u.dragging)&&c.push(u)}return c},Zqn=(e,t)=>{const n=new Set;return e.forEach(r=>{n.add(r.id)}),t.filter(r=>n.has(r.source)||n.has(r.target))};function Gqn(e,t){const n=new Map,r=t?.nodes?new Set(t.nodes.map(s=>s.id)):null;return e.forEach(s=>{s.measured.width&&s.measured.height&&(t?.includeHiddenNodes||!s.hidden)&&(!r||r.has(s.id))&&n.set(s.id,s)}),n}async function Qqn({nodes:e,width:t,height:n,panZoom:r,minZoom:s,maxZoom:a},i){if(e.size===0)return Promise.resolve(!0);const l=Gqn(e,i),c=uD(l),u=h1e(c,t,n,i?.minZoom??s,i?.maxZoom??a,i?.padding??.1);return await r.setViewport(u,{duration:i?.duration,ease:i?.ease,interpolate:i?.interpolate}),Promise.resolve(!0)}function o0t({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:s,onError:a}){const i=n.get(e),l=i.parentId?n.get(i.parentId):void 0,{x:c,y:u}=l?l.internals.positionAbsolute:{x:0,y:0},d=i.origin??r;let f=i.extent||s;if(i.extent==="parent"&&!i.expandParent)if(!l)a?.("005",py.error005());else{const h=l.measured.width,m=l.measured.height;h&&m&&(f=[[c,u],[c+h,u+m]])}else l&&wT(i.extent)&&(f=[[i.extent[0][0]+c,i.extent[0][1]+u],[i.extent[1][0]+c,i.extent[1][1]+u]]);const p=wT(f)?IO(t,f,i.measured):t;return(i.measured.width===void 0||i.measured.height===void 0)&&a?.("015",py.error015()),{position:{x:p.x-c+(i.measured.width??0)*d[0],y:p.y-u+(i.measured.height??0)*d[1]},positionAbsolute:p}}async function Yqn({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:s}){const a=new Set(e.map(p=>p.id)),i=[];for(const p of n){if(p.deletable===!1)continue;const h=a.has(p.id),m=!h&&p.parentId&&i.find(g=>g.id===p.parentId);(h||m)&&i.push(p)}const l=new Set(t.map(p=>p.id)),c=r.filter(p=>p.deletable!==!1),d=Zqn(i,c);for(const p of c)l.has(p.id)&&!d.find(m=>m.id===p.id)&&d.push(p);if(!s)return{edges:d,nodes:i};const f=await s({nodes:i,edges:d});return typeof f=="boolean"?f?{edges:d,nodes:i}:{edges:[],nodes:[]}:f}const bT=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),IO=(e={x:0,y:0},t,n)=>({x:bT(e.x,t[0][0],t[1][0]-(n?.width??0)),y:bT(e.y,t[0][1],t[1][1]-(n?.height??0))});function l0t(e,t,n){const{width:r,height:s}=Hx(n),{x:a,y:i}=n.internals.positionAbsolute;return IO(e,[[a,i],[a+r,i+s]],t)}const $8e=(e,t,n)=>e<t?bT(Math.abs(e-t),1,t)/t:e>n?-bT(Math.abs(e-n),1,t)/t:0,c0t=(e,t,n=15,r=40)=>{const s=$8e(e.x,r,t.width-r)*n,a=$8e(e.y,r,t.height-r)*n;return[s,a]},CV=(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)}),whe=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),EV=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),xT=(e,t=[0,0])=>{const{x:n,y:r}=f1e(e)?e.internals.positionAbsolute:cD(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}},j7=(e,t=[0,0])=>{const{x:n,y:r}=f1e(e)?e.internals.positionAbsolute:cD(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)}},u0t=(e,t)=>EV(CV(whe(e),whe(t))),nM=(e,t)=>{const 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)},M8e=e=>cg(e.width)&&cg(e.height)&&cg(e.x)&&cg(e.y),cg=e=>!isNaN(e)&&isFinite(e),Xqn=(e,t)=>{},dD=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),fD=({x:e,y:t},[n,r,s],a=!1,i=[1,1])=>{const l={x:(e-n)/s,y:(t-r)/s};return a?dD(l,i):l},T7=({x:e,y:t},[n,r,s])=>({x:e*s+n,y:t*s+r});function DC(e,t){if(typeof e=="number")return Math.floor((t-t/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(n)}if(typeof e=="string"&&e.endsWith("%")){const 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 Kqn(e,t,n){if(typeof e=="string"||typeof e=="number"){const r=DC(e,n),s=DC(e,t);return{top:r,right:s,bottom:r,left:s,x:s*2,y:r*2}}if(typeof e=="object"){const r=DC(e.top??e.y??0,n),s=DC(e.bottom??e.y??0,n),a=DC(e.left??e.x??0,t),i=DC(e.right??e.x??0,t);return{top:r,right:i,bottom:s,left:a,x:a+i,y:r+s}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function Jqn(e,t,n,r,s,a){const{x:i,y:l}=T7(e,[t,n,r]),{x:c,y:u}=T7({x:e.x+e.width,y:e.y+e.height},[t,n,r]),d=s-c,f=a-u;return{left:Math.floor(i),top:Math.floor(l),right:Math.floor(d),bottom:Math.floor(f)}}const h1e=(e,t,n,r,s,a)=>{const i=Kqn(a,t,n),l=(t-i.x)/e.width,c=(n-i.y)/e.height,u=Math.min(l,c),d=bT(u,r,s),f=e.x+e.width/2,p=e.y+e.height/2,h=t/2-f*d,m=n/2-p*d,g=Jqn(e,h,m,d,t,n),y={left:Math.min(g.left-i.left,0),top:Math.min(g.top-i.top,0),right:Math.min(g.right-i.right,0),bottom:Math.min(g.bottom-i.bottom,0)};return{x:h-y.left+y.right,y:m-y.top+y.bottom,zoom:d}},rM=()=>typeof navigator<"u"&&navigator?.userAgent?.indexOf("Mac")>=0;function wT(e){return e!=null&&e!=="parent"}function Hx(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function d0t(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function f0t(e,t={width:0,height:0},n,r,s){const a={...e},i=r.get(n);if(i){const l=i.origin||s;a.x+=i.internals.positionAbsolute.x-(t.width??0)*l[0],a.y+=i.internals.positionAbsolute.y-(t.height??0)*l[1]}return a}function D8e(e,t){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}function eVn(){let e,t;return{promise:new Promise((r,s)=>{e=r,t=s}),resolve:e,reject:t}}function tVn(e){return{...r0t,...e||{}}}function F2(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r,containerBounds:s}){const{x:a,y:i}=ug(e),l=fD({x:a-(s?.left??0),y:i-(s?.top??0)},r),{x:c,y:u}=n?dD(l,t):l;return{xSnapped:c,ySnapped:u,...l}}const m1e=e=>({width:e.offsetWidth,height:e.offsetHeight}),p0t=e=>e?.getRootNode?.()||window?.document,nVn=["INPUT","SELECT","TEXTAREA"];function h0t(e){const t=e.composedPath?.()?.[0]||e.target;return t?.nodeType!==1?!1:nVn.includes(t.nodeName)||t.hasAttribute("contenteditable")||!!t.closest(".nokey")}const m0t=e=>"clientX"in e,ug=(e,t)=>{const n=m0t(e),r=n?e.clientX:e.touches?.[0].clientX,s=n?e.clientY:e.touches?.[0].clientY;return{x:r-(t?.left??0),y:s-(t?.top??0)}},L8e=(e,t,n,r,s)=>{const a=t.querySelectorAll(`.${e}`);return!a||!a.length?null:Array.from(a).map(i=>{const l=i.getBoundingClientRect();return{id:i.getAttribute("data-handleid"),type:e,nodeId:s,position:i.getAttribute("data-handlepos"),x:(l.left-n.left)/r,y:(l.top-n.top)/r,...m1e(i)}})};function g0t({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:s,sourceControlY:a,targetControlX:i,targetControlY:l}){const c=e*.125+s*.375+i*.375+n*.125,u=t*.125+a*.375+l*.375+r*.125,d=Math.abs(c-e),f=Math.abs(u-t);return[c,u,d,f]}function w6(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function F8e({pos:e,x1:t,y1:n,x2:r,y2:s,c:a}){switch(e){case nr.Left:return[t-w6(t-r,a),n];case nr.Right:return[t+w6(r-t,a),n];case nr.Top:return[t,n-w6(n-s,a)];case nr.Bottom:return[t,n+w6(s-n,a)]}}function g1e({sourceX:e,sourceY:t,sourcePosition:n=nr.Bottom,targetX:r,targetY:s,targetPosition:a=nr.Top,curvature:i=.25}){const[l,c]=F8e({pos:n,x1:e,y1:t,x2:r,y2:s,c:i}),[u,d]=F8e({pos:a,x1:r,y1:s,x2:e,y2:t,c:i}),[f,p,h,m]=g0t({sourceX:e,sourceY:t,targetX:r,targetY:s,sourceControlX:l,sourceControlY:c,targetControlX:u,targetControlY:d});return[`M${e},${t} C${l},${c} ${u},${d} ${r},${s}`,f,p,h,m]}function v0t({sourceX:e,sourceY:t,targetX:n,targetY:r}){const s=Math.abs(n-e)/2,a=n<e?n+s:n-s,i=Math.abs(r-t)/2,l=r<t?r+i:r-i;return[a,l,s,i]}function rVn({sourceNode:e,targetNode:t,selected:n=!1,zIndex:r=0,elevateOnSelect:s=!1,zIndexMode:a="basic"}){if(a==="manual")return r;const i=s&&n?r+1e3:r,l=Math.max(e.parentId||s&&e.selected?e.internals.z:0,t.parentId||s&&t.selected?t.internals.z:0);return i+l}function sVn({sourceNode:e,targetNode:t,width:n,height:r,transform:s}){const a=CV(j7(e),j7(t));a.x===a.x2&&(a.x2+=1),a.y===a.y2&&(a.y2+=1);const i={x:-s[0]/s[2],y:-s[1]/s[2],width:n/s[2],height:r/s[2]};return nM(i,EV(a))>0}const aVn=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||""}-${n}${r||""}`,iVn=(e,t)=>t.some(n=>n.source===e.source&&n.target===e.target&&(n.sourceHandle===e.sourceHandle||!n.sourceHandle&&!e.sourceHandle)&&(n.targetHandle===e.targetHandle||!n.targetHandle&&!e.targetHandle)),oVn=(e,t,n={})=>{if(!e.source||!e.target)return t;const r=n.getEdgeId||aVn;let s;return i0t(e)?s={...e}:s={...e,id:r(e)},iVn(s,t)?t:(s.sourceHandle===null&&delete s.sourceHandle,s.targetHandle===null&&delete s.targetHandle,t.concat(s))};function y0t({sourceX:e,sourceY:t,targetX:n,targetY:r}){const[s,a,i,l]=v0t({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,s,a,i,l]}const z8e={[nr.Left]:{x:-1,y:0},[nr.Right]:{x:1,y:0},[nr.Top]:{x:0,y:-1},[nr.Bottom]:{x:0,y:1}},lVn=({source:e,sourcePosition:t=nr.Bottom,target:n})=>t===nr.Left||t===nr.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},B8e=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function cVn({source:e,sourcePosition:t=nr.Bottom,target:n,targetPosition:r=nr.Top,center:s,offset:a,stepPosition:i}){const l=z8e[t],c=z8e[r],u={x:e.x+l.x*a,y:e.y+l.y*a},d={x:n.x+c.x*a,y:n.y+c.y*a},f=lVn({source:u,sourcePosition:t,target:d}),p=f.x!==0?"x":"y",h=f[p];let m=[],g,y;const b={x:0,y:0},w={x:0,y:0},[,,S,k]=v0t({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(l[p]*c[p]===-1){p==="x"?(g=s.x??u.x+(d.x-u.x)*i,y=s.y??(u.y+d.y)/2):(g=s.x??(u.x+d.x)/2,y=s.y??u.y+(d.y-u.y)*i);const j=[{x:g,y:u.y},{x:g,y:d.y}],N=[{x:u.x,y},{x:d.x,y}];l[p]===h?m=p==="x"?j:N:m=p==="x"?N:j}else{const j=[{x:u.x,y:d.y}],N=[{x:d.x,y:u.y}];if(p==="x"?m=l.x===h?N:j:m=l.y===h?j:N,t===r){const D=Math.abs(e[p]-n[p]);if(D<=a){const V=Math.min(a-1,a-D);l[p]===h?b[p]=(u[p]>e[p]?-1:1)*V:w[p]=(d[p]>n[p]?-1:1)*V}}if(t!==r){const D=p==="x"?"y":"x",V=l[p]===c[D],W=u[D]>d[D],L=u[D]<d[D];(l[p]===1&&(!V&&W||V&&L)||l[p]!==1&&(!V&&L||V&&W))&&(m=p==="x"?j:N)}const I={x:u.x+b.x,y:u.y+b.y},P={x:d.x+w.x,y:d.y+w.y},$=Math.max(Math.abs(I.x-m[0].x),Math.abs(P.x-m[0].x)),F=Math.max(Math.abs(I.y-m[0].y),Math.abs(P.y-m[0].y));$>=F?(g=(I.x+P.x)/2,y=m[0].y):(g=m[0].x,y=(I.y+P.y)/2)}const _={x:u.x+b.x,y:u.y+b.y},C={x:d.x+w.x,y:d.y+w.y};return[[e,..._.x!==m[0].x||_.y!==m[0].y?[_]:[],...m,...C.x!==m[m.length-1].x||C.y!==m[m.length-1].y?[C]:[],n],g,y,S,k]}function uVn(e,t,n,r){const s=Math.min(B8e(e,t)/2,B8e(t,n)/2,r),{x:a,y:i}=t;if(e.x===a&&a===n.x||e.y===i&&i===n.y)return`L${a} ${i}`;if(e.y===i){const u=e.x<n.x?-1:1,d=e.y<n.y?1:-1;return`L ${a+s*u},${i}Q ${a},${i} ${a},${i+s*d}`}const l=e.x<n.x?1:-1,c=e.y<n.y?-1:1;return`L ${a},${i+s*c}Q ${a},${i} ${a+s*l},${i}`}function She({sourceX:e,sourceY:t,sourcePosition:n=nr.Bottom,targetX:r,targetY:s,targetPosition:a=nr.Top,borderRadius:i=5,centerX:l,centerY:c,offset:u=20,stepPosition:d=.5}){const[f,p,h,m,g]=cVn({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:s},targetPosition:a,center:{x:l,y:c},offset:u,stepPosition:d});let y=`M${f[0].x} ${f[0].y}`;for(let b=1;b<f.length-1;b++)y+=uVn(f[b-1],f[b],f[b+1],i);return y+=`L${f[f.length-1].x} ${f[f.length-1].y}`,[y,p,h,m,g]}function U8e(e){return e&&!!(e.internals.handleBounds||e.handles?.length)&&!!(e.measured.width||e.width||e.initialWidth)}function dVn(e){const{sourceNode:t,targetNode:n}=e;if(!U8e(t)||!U8e(n))return null;const r=t.internals.handleBounds||q8e(t.handles),s=n.internals.handleBounds||q8e(n.handles),a=V8e(r?.source??[],e.sourceHandle),i=V8e(e.connectionMode===yT.Strict?s?.target??[]:(s?.target??[]).concat(s?.source??[]),e.targetHandle);if(!a||!i)return e.onError?.("008",py.error008(a?"target":"source",{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;const l=a?.position||nr.Bottom,c=i?.position||nr.Top,u=AO(t,a,l),d=AO(n,i,c);return{sourceX:u.x,sourceY:u.y,targetX:d.x,targetY:d.y,sourcePosition:l,targetPosition:c}}function q8e(e){if(!e)return null;const t=[],n=[];for(const 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 AO(e,t,n=nr.Left,r=!1){const s=(t?.x??0)+e.internals.positionAbsolute.x,a=(t?.y??0)+e.internals.positionAbsolute.y,{width:i,height:l}=t??Hx(e);if(r)return{x:s+i/2,y:a+l/2};switch(t?.position??n){case nr.Top:return{x:s+i/2,y:a};case nr.Right:return{x:s+i,y:a+l/2};case nr.Bottom:return{x:s+i/2,y:a+l};case nr.Left:return{x:s,y:a+l/2}}}function V8e(e,t){return e&&(t?e.find(n=>n.id===t):e[0])||null}function khe(e,t){return e?typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`:""}function fVn(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:s}){const a=new Set;return e.reduce((i,l)=>([l.markerStart||r,l.markerEnd||s].forEach(c=>{if(c&&typeof c=="object"){const u=khe(c,t);a.has(u)||(i.push({id:u,color:c.color||n,...c}),a.add(u))}}),i),[]).sort((i,l)=>i.id.localeCompare(l.id))}const b0t=1e3,pVn=10,v1e={nodeOrigin:[0,0],nodeExtent:J$,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},hVn={...v1e,checkEquality:!0};function y1e(e,t){const n={...e};for(const r in t)t[r]!==void 0&&(n[r]=t[r]);return n}function mVn(e,t,n){const r=y1e(v1e,n);for(const s of e.values())if(s.parentId)x1e(s,e,t,r);else{const a=cD(s,r.nodeOrigin),i=wT(s.extent)?s.extent:r.nodeExtent,l=IO(a,i,Hx(s));s.internals.positionAbsolute=l}}function gVn(e,t){if(!e.handles)return e.measured?t?.internals.handleBounds:void 0;const n=[],r=[];for(const s of e.handles){const a={id:s.id,width:s.width??1,height:s.height??1,nodeId:e.id,x:s.x,y:s.y,position:s.position,type:s.type};s.type==="source"?n.push(a):s.type==="target"&&r.push(a)}return{source:n,target:r}}function b1e(e){return e==="manual"}function Ohe(e,t,n,r={}){const s=y1e(hVn,r),a={i:0},i=new Map(t),l=s?.elevateNodesOnSelect&&!b1e(s.zIndexMode)?b0t:0;let c=e.length>0,u=!1;t.clear(),n.clear();for(const d of e){let f=i.get(d.id);if(s.checkEquality&&d===f?.internals.userNode)t.set(d.id,f);else{const p=cD(d,s.nodeOrigin),h=wT(d.extent)?d.extent:s.nodeExtent,m=IO(p,h,Hx(d));f={...s.defaults,...d,measured:{width:d.measured?.width,height:d.measured?.height},internals:{positionAbsolute:m,handleBounds:gVn(d,f),z:x0t(d,l,s.zIndexMode),userNode:d}},t.set(d.id,f)}(f.measured===void 0||f.measured.width===void 0||f.measured.height===void 0)&&!f.hidden&&(c=!1),d.parentId&&x1e(f,t,n,r,a),u||=d.selected??!1}return{nodesInitialized:c,hasSelectedNodes:u}}function vVn(e,t){if(!e.parentId)return;const n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function x1e(e,t,n,r,s){const{elevateNodesOnSelect:a,nodeOrigin:i,nodeExtent:l,zIndexMode:c}=y1e(v1e,r),u=e.parentId,d=t.get(u);if(!d){console.warn(`Parent node ${u} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}vVn(e,n),s&&!d.parentId&&d.internals.rootParentIndex===void 0&&c==="auto"&&(d.internals.rootParentIndex=++s.i,d.internals.z=d.internals.z+s.i*pVn),s&&d.internals.rootParentIndex!==void 0&&(s.i=d.internals.rootParentIndex);const f=a&&!b1e(c)?b0t:0,{x:p,y:h,z:m}=yVn(e,d,i,l,f,c),{positionAbsolute:g}=e.internals,y=p!==g.x||h!==g.y;(y||m!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:y?{x:p,y:h}:g,z:m}})}function x0t(e,t,n){const r=cg(e.zIndex)?e.zIndex:0;return b1e(n)?r:r+(e.selected?t:0)}function yVn(e,t,n,r,s,a){const{x:i,y:l}=t.internals.positionAbsolute,c=Hx(e),u=cD(e,n),d=wT(e.extent)?IO(u,e.extent,c):u;let f=IO({x:i+d.x,y:l+d.y},r,c);e.extent==="parent"&&(f=l0t(f,c,t));const p=x0t(e,s,a),h=t.internals.z??0;return{x:f.x,y:f.y,z:h>=p?h+1:p}}function w1e(e,t,n,r=[0,0]){const s=[],a=new Map;for(const i of e){const l=t.get(i.parentId);if(!l)continue;const c=a.get(i.parentId)?.expandedRect??xT(l),u=u0t(c,i.rect);a.set(i.parentId,{expandedRect:u,parent:l})}return a.size>0&&a.forEach(({expandedRect:i,parent:l},c)=>{const u=l.internals.positionAbsolute,d=Hx(l),f=l.origin??r,p=i.x<u.x?Math.round(Math.abs(u.x-i.x)):0,h=i.y<u.y?Math.round(Math.abs(u.y-i.y)):0,m=Math.max(d.width,Math.round(i.width)),g=Math.max(d.height,Math.round(i.height)),y=(m-d.width)*f[0],b=(g-d.height)*f[1];(p>0||h>0||y||b)&&(s.push({id:c,type:"position",position:{x:l.position.x-p+y,y:l.position.y-h+b}}),n.get(c)?.forEach(w=>{e.some(S=>S.id===w.id)||s.push({id:w.id,type:"position",position:{x:w.position.x+p,y:w.position.y+h}})})),(d.width<i.width||d.height<i.height||p||h)&&s.push({id:c,type:"dimensions",setAttributes:!0,dimensions:{width:m+(p?f[0]*p-y:0),height:g+(h?f[1]*h-b:0)}})}),s}function bVn(e,t,n,r,s,a,i){const l=r?.querySelector(".xyflow__viewport");let c=!1;if(!l)return{changes:[],updatedInternals:c};const u=[],d=window.getComputedStyle(l),{m22:f}=new window.DOMMatrixReadOnly(d.transform),p=[];for(const h of e.values()){const m=t.get(h.id);if(!m)continue;if(m.hidden){t.set(m.id,{...m,internals:{...m.internals,handleBounds:void 0}}),c=!0;continue}const g=m1e(h.nodeElement),y=m.measured.width!==g.width||m.measured.height!==g.height;if(!!(g.width&&g.height&&(y||!m.internals.handleBounds||h.force))){const w=h.nodeElement.getBoundingClientRect(),S=wT(m.extent)?m.extent:a;let{positionAbsolute:k}=m.internals;m.parentId&&m.extent==="parent"?k=l0t(k,g,t.get(m.parentId)):S&&(k=IO(k,S,g));const _={...m,measured:g,internals:{...m.internals,positionAbsolute:k,handleBounds:{source:L8e("source",h.nodeElement,w,f,m.id),target:L8e("target",h.nodeElement,w,f,m.id)}}};t.set(m.id,_),m.parentId&&x1e(_,t,n,{nodeOrigin:s,zIndexMode:i}),c=!0,y&&(u.push({id:m.id,type:"dimensions",dimensions:g}),m.expandParent&&m.parentId&&p.push({id:m.id,parentId:m.parentId,rect:xT(_,s)}))}}if(p.length>0){const h=w1e(p,t,n,s);u.push(...h)}return{changes:u,updatedInternals:c}}async function xVn({delta:e,panZoom:t,transform:n,translateExtent:r,width:s,height:a}){if(!t||!e.x&&!e.y)return Promise.resolve(!1);const i=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[s,a]],r),l=!!i&&(i.x!==n[0]||i.y!==n[1]||i.k!==n[2]);return Promise.resolve(l)}function H8e(e,t,n,r,s,a){let i=s;const l=r.get(i)||new Map;r.set(i,l.set(n,t)),i=`${s}-${e}`;const c=r.get(i)||new Map;if(r.set(i,c.set(n,t)),a){i=`${s}-${e}-${a}`;const u=r.get(i)||new Map;r.set(i,u.set(n,t))}}function w0t(e,t,n){e.clear(),t.clear();for(const r of n){const{source:s,target:a,sourceHandle:i=null,targetHandle:l=null}=r,c={edgeId:r.id,source:s,target:a,sourceHandle:i,targetHandle:l},u=`${s}-${i}--${a}-${l}`,d=`${a}-${l}--${s}-${i}`;H8e("source",c,d,e,s,i),H8e("target",c,u,e,a,l),t.set(r.id,r)}}function S0t(e,t){if(!e.parentId)return!1;const n=t.get(e.parentId);return n?n.selected?!0:S0t(n,t):!1}function W8e(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 wVn(e,t,n,r){const s=new Map;for(const[a,i]of e)if((i.selected||i.id===r)&&(!i.parentId||!S0t(i,e))&&(i.draggable||t&&typeof i.draggable>"u")){const l=e.get(a);l&&s.set(a,{id:a,position:l.position||{x:0,y:0},distance:{x:n.x-l.internals.positionAbsolute.x,y:n.y-l.internals.positionAbsolute.y},extent:l.extent,parentId:l.parentId,origin:l.origin,expandParent:l.expandParent,internals:{positionAbsolute:l.internals.positionAbsolute||{x:0,y:0}},measured:{width:l.measured.width??0,height:l.measured.height??0}})}return s}function LJ({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){const s=[];for(const[i,l]of t){const c=n.get(i)?.internals.userNode;c&&s.push({...c,position:l.position,dragging:r})}if(!e)return[s[0],s];const a=n.get(e)?.internals.userNode;return[a?{...a,position:t.get(e)?.position||a.position,dragging:r}:s[0],s]}function SVn({dragItems:e,snapGrid:t,x:n,y:r}){const s=e.values().next().value;if(!s)return null;const a={x:n-s.distance.x,y:r-s.distance.y},i=dD(a,t);return{x:i.x-a.x,y:i.y-a.y}}function kVn({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:s}){let a={x:null,y:null},i=0,l=new Map,c=!1,u={x:0,y:0},d=null,f=!1,p=null,h=!1,m=!1,g=null;function y({noDragClassName:w,handleSelector:S,domNode:k,isSelectable:_,nodeId:C,nodeClickDistance:E=0}){p=fp(k);function j({x:$,y:F}){const{nodeLookup:D,nodeExtent:V,snapGrid:W,snapToGrid:L,nodeOrigin:B,onNodeDrag:z,onSelectionDrag:M,onError:G,updateNodePositions:q}=t();a={x:$,y:F};let R=!1;const U=l.size>1,Z=U&&V?whe(uD(l)):null,X=U&&L?SVn({dragItems:l,snapGrid:W,x:$,y:F}):null;for(const[te,J]of l){if(!D.has(te))continue;let ee={x:$-J.distance.x,y:F-J.distance.y};L&&(ee=X?{x:Math.round(ee.x+X.x),y:Math.round(ee.y+X.y)}:dD(ee,W));let ae=null;if(U&&V&&!J.extent&&Z){const{positionAbsolute:ne}=J.internals,ue=ne.x-Z.x+V[0][0],pe=ne.x+J.measured.width-Z.x2+V[1][0],le=ne.y-Z.y+V[0][1],ve=ne.y+J.measured.height-Z.y2+V[1][1];ae=[[ue,le],[pe,ve]]}const{position:ce,positionAbsolute:Y}=o0t({nodeId:te,nextPosition:ee,nodeLookup:D,nodeExtent:ae||V,nodeOrigin:B,onError:G});R=R||J.position.x!==ce.x||J.position.y!==ce.y,J.position=ce,J.internals.positionAbsolute=Y}if(m=m||R,!!R&&(q(l,!0),g&&(r||z||!C&&M))){const[te,J]=LJ({nodeId:C,dragItems:l,nodeLookup:D});r?.(g,l,te,J),z?.(g,te,J),C||M?.(g,J)}}async function N(){if(!d)return;const{transform:$,panBy:F,autoPanSpeed:D,autoPanOnNodeDrag:V}=t();if(!V){c=!1,cancelAnimationFrame(i);return}const[W,L]=c0t(u,d,D);(W!==0||L!==0)&&(a.x=(a.x??0)-W/$[2],a.y=(a.y??0)-L/$[2],await F({x:W,y:L})&&j(a)),i=requestAnimationFrame(N)}function I($){const{nodeLookup:F,multiSelectionActive:D,nodesDraggable:V,transform:W,snapGrid:L,snapToGrid:B,selectNodesOnDrag:z,onNodeDragStart:M,onSelectionDragStart:G,unselectNodesAndEdges:q}=t();f=!0,(!z||!_)&&!D&&C&&(F.get(C)?.selected||q()),_&&z&&C&&e?.(C);const R=F2($.sourceEvent,{transform:W,snapGrid:L,snapToGrid:B,containerBounds:d});if(a=R,l=wVn(F,V,R,C),l.size>0&&(n||M||!C&&G)){const[U,Z]=LJ({nodeId:C,dragItems:l,nodeLookup:F});n?.($.sourceEvent,l,U,Z),M?.($.sourceEvent,U,Z),C||G?.($.sourceEvent,Z)}}const P=zxt().clickDistance(E).on("start",$=>{const{domNode:F,nodeDragThreshold:D,transform:V,snapGrid:W,snapToGrid:L}=t();d=F?.getBoundingClientRect()||null,h=!1,m=!1,g=$.sourceEvent,D===0&&I($),a=F2($.sourceEvent,{transform:V,snapGrid:W,snapToGrid:L,containerBounds:d}),u=ug($.sourceEvent,d)}).on("drag",$=>{const{autoPanOnNodeDrag:F,transform:D,snapGrid:V,snapToGrid:W,nodeDragThreshold:L,nodeLookup:B}=t(),z=F2($.sourceEvent,{transform:D,snapGrid:V,snapToGrid:W,containerBounds:d});if(g=$.sourceEvent,($.sourceEvent.type==="touchmove"&&$.sourceEvent.touches.length>1||C&&!B.has(C))&&(h=!0),!h){if(!c&&F&&f&&(c=!0,N()),!f){const M=ug($.sourceEvent,d),G=M.x-u.x,q=M.y-u.y;Math.sqrt(G*G+q*q)>L&&I($)}(a.x!==z.xSnapped||a.y!==z.ySnapped)&&l&&f&&(u=ug($.sourceEvent,d),j(z))}}).on("end",$=>{if(!(!f||h)&&(c=!1,f=!1,cancelAnimationFrame(i),l.size>0)){const{nodeLookup:F,updateNodePositions:D,onNodeDragStop:V,onSelectionDragStop:W}=t();if(m&&(D(l,!1),m=!1),s||V||!C&&W){const[L,B]=LJ({nodeId:C,dragItems:l,nodeLookup:F,dragging:!1});s?.($.sourceEvent,l,L,B),V?.($.sourceEvent,L,B),C||W?.($.sourceEvent,B)}}}).filter($=>{const F=$.target;return!$.button&&(!w||!W8e(F,`.${w}`,k))&&(!S||W8e(F,S,k))});p.call(P)}function b(){p?.on(".drag",null)}return{update:y,destroy:b}}function OVn(e,t,n){const r=[],s={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const a of t.values())nM(s,xT(a))>0&&r.push(a);return r}const _Vn=250;function CVn(e,t,n,r){let s=[],a=1/0;const i=OVn(e,n,t+_Vn);for(const l of i){const c=[...l.internals.handleBounds?.source??[],...l.internals.handleBounds?.target??[]];for(const u of c){if(r.nodeId===u.nodeId&&r.type===u.type&&r.id===u.id)continue;const{x:d,y:f}=AO(l,u,u.position,!0),p=Math.sqrt(Math.pow(d-e.x,2)+Math.pow(f-e.y,2));p>t||(p<a?(s=[{...u,x:d,y:f}],a=p):p===a&&s.push({...u,x:d,y:f}))}}if(!s.length)return null;if(s.length>1){const l=r.type==="source"?"target":"source";return s.find(c=>c.type===l)??s[0]}return s[0]}function k0t(e,t,n,r,s,a=!1){const i=r.get(e);if(!i)return null;const l=s==="strict"?i.internals.handleBounds?.[t]:[...i.internals.handleBounds?.source??[],...i.internals.handleBounds?.target??[]],c=(n?l?.find(u=>u.id===n):l?.[0])??null;return c&&a?{...c,...AO(i,c,c.position,!0)}:c}function O0t(e,t){return e||(t?.classList.contains("target")?"target":t?.classList.contains("source")?"source":null)}function EVn(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}const _0t=()=>!0;function jVn(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:s,edgeUpdaterType:a,isTarget:i,domNode:l,nodeLookup:c,lib:u,autoPanOnConnect:d,flowId:f,panBy:p,cancelConnection:h,onConnectStart:m,onConnect:g,onConnectEnd:y,isValidConnection:b=_0t,onReconnectEnd:w,updateConnection:S,getTransform:k,getFromHandle:_,autoPanSpeed:C,dragThreshold:E=1,handleDomNode:j}){const N=p0t(e.target);let I=0,P;const{x:$,y:F}=ug(e),D=O0t(a,j),V=l?.getBoundingClientRect();let W=!1;if(!V||!D)return;const L=k0t(s,D,r,c,t);if(!L)return;let B=ug(e,V),z=!1,M=null,G=!1,q=null;function R(){if(!d||!V)return;const[ce,Y]=c0t(B,V,C);p({x:ce,y:Y}),I=requestAnimationFrame(R)}const U={...L,nodeId:s,type:D,position:L.position},Z=c.get(s);let te={inProgress:!0,isValid:null,from:AO(Z,U,nr.Left,!0),fromHandle:U,fromPosition:U.position,fromNode:Z,to:B,toHandle:null,toPosition:P8e[U.position],toNode:null,pointer:B};function J(){W=!0,S(te),m?.(e,{nodeId:s,handleId:r,handleType:D})}E===0&&J();function ee(ce){if(!W){const{x:ve,y:ye}=ug(ce),Se=ve-$,Ne=ye-F;if(!(Se*Se+Ne*Ne>E*E))return;J()}if(!_()||!U){ae(ce);return}const Y=k();B=ug(ce,V),P=CVn(fD(B,Y,!1,[1,1]),n,c,U),z||(R(),z=!0);const ne=C0t(ce,{handle:P,connectionMode:t,fromNodeId:s,fromHandleId:r,fromType:i?"target":"source",isValidConnection:b,doc:N,lib:u,flowId:f,nodeLookup:c});q=ne.handleDomNode,M=ne.connection,G=EVn(!!P,ne.isValid);const ue=c.get(s),pe=ue?AO(ue,U,nr.Left,!0):te.from,le={...te,from:pe,isValid:G,to:ne.toHandle&&G?T7({x:ne.toHandle.x,y:ne.toHandle.y},Y):B,toHandle:ne.toHandle,toPosition:G&&ne.toHandle?ne.toHandle.position:P8e[U.position],toNode:ne.toHandle?c.get(ne.toHandle.nodeId):null,pointer:B};S(le),te=le}function ae(ce){if(!("touches"in ce&&ce.touches.length>0)){if(W){(P||q)&&M&&G&&g?.(M);const{inProgress:Y,...ne}=te,ue={...ne,toPosition:te.toHandle?te.toPosition:null};y?.(ce,ue),a&&w?.(ce,ue)}h(),cancelAnimationFrame(I),z=!1,G=!1,M=null,q=null,N.removeEventListener("mousemove",ee),N.removeEventListener("mouseup",ae),N.removeEventListener("touchmove",ee),N.removeEventListener("touchend",ae)}}N.addEventListener("mousemove",ee),N.addEventListener("mouseup",ae),N.addEventListener("touchmove",ee),N.addEventListener("touchend",ae)}function C0t(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:s,fromType:a,doc:i,lib:l,flowId:c,isValidConnection:u=_0t,nodeLookup:d}){const f=a==="target",p=t?i.querySelector(`.${l}-flow__handle[data-id="${c}-${t?.nodeId}-${t?.id}-${t?.type}"]`):null,{x:h,y:m}=ug(e),g=i.elementFromPoint(h,m),y=g?.classList.contains(`${l}-flow__handle`)?g:p,b={handleDomNode:y,isValid:!1,connection:null,toHandle:null};if(y){const w=O0t(void 0,y),S=y.getAttribute("data-nodeid"),k=y.getAttribute("data-handleid"),_=y.classList.contains("connectable"),C=y.classList.contains("connectableend");if(!S||!w)return b;const E={source:f?S:r,sourceHandle:f?k:s,target:f?r:S,targetHandle:f?s:k};b.connection=E;const N=_&&C&&(n===yT.Strict?f&&w==="source"||!f&&w==="target":S!==r||k!==s);b.isValid=N&&u(E),b.toHandle=k0t(S,w,k,d,n,!0)}return b}const _he={onPointerDown:jVn,isValid:C0t};function TVn({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){const s=fp(e);function a({translateExtent:l,width:c,height:u,zoomStep:d=1,pannable:f=!0,zoomable:p=!0,inversePan:h=!1}){const m=S=>{if(S.sourceEvent.type!=="wheel"||!t)return;const k=n(),_=S.sourceEvent.ctrlKey&&rM()?10:1,C=-S.sourceEvent.deltaY*(S.sourceEvent.deltaMode===1?.05:S.sourceEvent.deltaMode?1:.002)*d,E=k[2]*Math.pow(2,C*_);t.scaleTo(E)};let g=[0,0];const y=S=>{(S.sourceEvent.type==="mousedown"||S.sourceEvent.type==="touchstart")&&(g=[S.sourceEvent.clientX??S.sourceEvent.touches[0].clientX,S.sourceEvent.clientY??S.sourceEvent.touches[0].clientY])},b=S=>{const k=n();if(S.sourceEvent.type!=="mousemove"&&S.sourceEvent.type!=="touchmove"||!t)return;const _=[S.sourceEvent.clientX??S.sourceEvent.touches[0].clientX,S.sourceEvent.clientY??S.sourceEvent.touches[0].clientY],C=[_[0]-g[0],_[1]-g[1]];g=_;const E=r()*Math.max(k[2],Math.log(k[2]))*(h?-1:1),j={x:k[0]-C[0]*E,y:k[1]-C[1]*E},N=[[0,0],[c,u]];t.setViewportConstrained({x:j.x,y:j.y,zoom:k[2]},N,l)},w=t0t().on("start",y).on("zoom",f?b:null).on("zoom.wheel",p?m:null);s.call(w,{})}function i(){s.on("zoom",null)}return{update:a,destroy:i,pointer:Xm}}const jV=e=>({x:e.x,y:e.y,zoom:e.k}),FJ=({x:e,y:t,zoom:n})=>_V.translate(e,t).scale(n),BE=(e,t)=>e.target.closest(`.${t}`),E0t=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),NVn=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,zJ=(e,t=0,n=NVn,r=()=>{})=>{const s=typeof t=="number"&&t>0;return s||r(),s?e.transition().duration(t).ease(n).on("end",r):e},j0t=e=>{const t=e.ctrlKey&&rM()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function IVn({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:s,panOnScrollSpeed:a,zoomOnPinch:i,onPanZoomStart:l,onPanZoom:c,onPanZoomEnd:u}){return d=>{if(BE(d,t))return d.ctrlKey&&d.preventDefault(),!1;d.preventDefault(),d.stopImmediatePropagation();const f=n.property("__zoom").k||1;if(d.ctrlKey&&i){const y=Xm(d),b=j0t(d),w=f*Math.pow(2,b);r.scaleTo(n,w,y,d);return}const p=d.deltaMode===1?20:1;let h=s===Uk.Vertical?0:d.deltaX*p,m=s===Uk.Horizontal?0:d.deltaY*p;!rM()&&d.shiftKey&&s!==Uk.Vertical&&(h=d.deltaY*p,m=0),r.translateBy(n,-(h/f)*a,-(m/f)*a,{internal:!0});const g=jV(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(c?.(d,g),e.panScrollTimeout=setTimeout(()=>{u?.(d,g),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,l?.(d,g))}}function AVn({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,s){const a=r.type==="wheel",i=!t&&a&&!r.ctrlKey,l=BE(r,e);if(r.ctrlKey&&a&&l&&r.preventDefault(),i||l)return null;r.preventDefault(),n.call(this,r,s)}}function RVn({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{if(r.sourceEvent?.internal)return;const s=jV(r.transform);e.mouseButton=r.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=s,r.sourceEvent?.type==="mousedown"&&t(!0),n&&n?.(r.sourceEvent,s)}}function PVn({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:s}){return a=>{e.usedRightMouseButton=!!(n&&E0t(t,e.mouseButton??0)),a.sourceEvent?.sync||r([a.transform.x,a.transform.y,a.transform.k]),s&&!a.sourceEvent?.internal&&s?.(a.sourceEvent,jV(a.transform))}}function $Vn({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:s,onPaneContextMenu:a}){return i=>{if(!i.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,a&&E0t(t,e.mouseButton??0)&&!e.usedRightMouseButton&&i.sourceEvent&&a(i.sourceEvent),e.usedRightMouseButton=!1,r(!1),s)){const l=jV(i.transform);e.prevViewport=l,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{s?.(i.sourceEvent,l)},n?150:0)}}}function MVn({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:r,panOnScroll:s,zoomOnDoubleClick:a,userSelectionActive:i,noWheelClassName:l,noPanClassName:c,lib:u,connectionInProgress:d}){return f=>{const p=e||t,h=n&&f.ctrlKey,m=f.type==="wheel";if(f.button===1&&f.type==="mousedown"&&(BE(f,`${u}-flow__node`)||BE(f,`${u}-flow__edge`)))return!0;if(!r&&!p&&!s&&!a&&!n||i||d&&!m||BE(f,l)&&m||BE(f,c)&&(!m||s&&m&&!e)||!n&&f.ctrlKey&&m)return!1;if(!n&&f.type==="touchstart"&&f.touches?.length>1)return f.preventDefault(),!1;if(!p&&!s&&!h&&m||!r&&(f.type==="mousedown"||f.type==="touchstart")||Array.isArray(r)&&!r.includes(f.button)&&f.type==="mousedown")return!1;const g=Array.isArray(r)&&r.includes(f.button)||!f.button||f.button<=1;return(!f.ctrlKey||m)&&g}}function DVn({domNode:e,minZoom:t,maxZoom:n,translateExtent:r,viewport:s,onPanZoom:a,onPanZoomStart:i,onPanZoomEnd:l,onDraggingChange:c}){const u={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},d=e.getBoundingClientRect(),f=t0t().scaleExtent([t,n]).translateExtent(r),p=fp(e).call(f);w({x:s.x,y:s.y,zoom:bT(s.zoom,t,n)},[[0,0],[d.width,d.height]],r);const h=p.on("wheel.zoom"),m=p.on("dblclick.zoom");f.wheelDelta(j0t);function g(P,$){return p?new Promise(F=>{f?.interpolate($?.interpolate==="linear"?rx:V9).transform(zJ(p,$?.duration,$?.ease,()=>F(!0)),P)}):Promise.resolve(!1)}function y({noWheelClassName:P,noPanClassName:$,onPaneContextMenu:F,userSelectionActive:D,panOnScroll:V,panOnDrag:W,panOnScrollMode:L,panOnScrollSpeed:B,preventScrolling:z,zoomOnPinch:M,zoomOnScroll:G,zoomOnDoubleClick:q,zoomActivationKeyPressed:R,lib:U,onTransformChange:Z,connectionInProgress:X,paneClickDistance:te,selectionOnDrag:J}){D&&!u.isZoomingOrPanning&&b();const ee=V&&!R&&!D;f.clickDistance(J?1/0:!cg(te)||te<0?0:te);const ae=ee?IVn({zoomPanValues:u,noWheelClassName:P,d3Selection:p,d3Zoom:f,panOnScrollMode:L,panOnScrollSpeed:B,zoomOnPinch:M,onPanZoomStart:i,onPanZoom:a,onPanZoomEnd:l}):AVn({noWheelClassName:P,preventScrolling:z,d3ZoomHandler:h});if(p.on("wheel.zoom",ae,{passive:!1}),!D){const Y=RVn({zoomPanValues:u,onDraggingChange:c,onPanZoomStart:i});f.on("start",Y);const ne=PVn({zoomPanValues:u,panOnDrag:W,onPaneContextMenu:!!F,onPanZoom:a,onTransformChange:Z});f.on("zoom",ne);const ue=$Vn({zoomPanValues:u,panOnDrag:W,panOnScroll:V,onPaneContextMenu:F,onPanZoomEnd:l,onDraggingChange:c});f.on("end",ue)}const ce=MVn({zoomActivationKeyPressed:R,panOnDrag:W,zoomOnScroll:G,panOnScroll:V,zoomOnDoubleClick:q,zoomOnPinch:M,userSelectionActive:D,noPanClassName:$,noWheelClassName:P,lib:U,connectionInProgress:X});f.filter(ce),q?p.on("dblclick.zoom",m):p.on("dblclick.zoom",null)}function b(){f.on("zoom",null)}async function w(P,$,F){const D=FJ(P),V=f?.constrain()(D,$,F);return V&&await g(V),new Promise(W=>W(V))}async function S(P,$){const F=FJ(P);return await g(F,$),new Promise(D=>D(F))}function k(P){if(p){const $=FJ(P),F=p.property("__zoom");(F.k!==P.zoom||F.x!==P.x||F.y!==P.y)&&f?.transform(p,$,null,{sync:!0})}}function _(){const P=p?e0t(p.node()):{x:0,y:0,k:1};return{x:P.x,y:P.y,zoom:P.k}}function C(P,$){return p?new Promise(F=>{f?.interpolate($?.interpolate==="linear"?rx:V9).scaleTo(zJ(p,$?.duration,$?.ease,()=>F(!0)),P)}):Promise.resolve(!1)}function E(P,$){return p?new Promise(F=>{f?.interpolate($?.interpolate==="linear"?rx:V9).scaleBy(zJ(p,$?.duration,$?.ease,()=>F(!0)),P)}):Promise.resolve(!1)}function j(P){f?.scaleExtent(P)}function N(P){f?.translateExtent(P)}function I(P){const $=!cg(P)||P<0?0:P;f?.clickDistance($)}return{update:y,destroy:b,setViewport:S,setViewportConstrained:w,getViewport:_,scaleTo:C,scaleBy:E,setScaleExtent:j,setTranslateExtent:N,syncViewport:k,setClickDistance:I}}var ST;(function(e){e.Line="line",e.Handle="handle"})(ST||(ST={}));function LVn({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:s,affectsY:a}){const i=e-t,l=n-r,c=[i>0?1:i<0?-1:0,l>0?1:l<0?-1:0];return i&&s&&(c[0]=c[0]*-1),l&&a&&(c[1]=c[1]*-1),c}function Z8e(e){const t=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),r=e.includes("left"),s=e.includes("top");return{isHorizontal:t,isVertical:n,affectsX:r,affectsY:s}}function D0(e,t){return Math.max(0,t-e)}function L0(e,t){return Math.max(0,e-t)}function S6(e,t,n){return Math.max(0,t-e,e-n)}function G8e(e,t){return e?!t:t}function FVn(e,t,n,r,s,a,i,l){let{affectsX:c,affectsY:u}=t;const{isHorizontal:d,isVertical:f}=t,p=d&&f,{xSnapped:h,ySnapped:m}=n,{minWidth:g,maxWidth:y,minHeight:b,maxHeight:w}=r,{x:S,y:k,width:_,height:C,aspectRatio:E}=e;let j=Math.floor(d?h-e.pointerX:0),N=Math.floor(f?m-e.pointerY:0);const I=_+(c?-j:j),P=C+(u?-N:N),$=-a[0]*_,F=-a[1]*C;let D=S6(I,g,y),V=S6(P,b,w);if(i){let B=0,z=0;c&&j<0?B=D0(S+j+$,i[0][0]):!c&&j>0&&(B=L0(S+I+$,i[1][0])),u&&N<0?z=D0(k+N+F,i[0][1]):!u&&N>0&&(z=L0(k+P+F,i[1][1])),D=Math.max(D,B),V=Math.max(V,z)}if(l){let B=0,z=0;c&&j>0?B=L0(S+j,l[0][0]):!c&&j<0&&(B=D0(S+I,l[1][0])),u&&N>0?z=L0(k+N,l[0][1]):!u&&N<0&&(z=D0(k+P,l[1][1])),D=Math.max(D,B),V=Math.max(V,z)}if(s){if(d){const B=S6(I/E,b,w)*E;if(D=Math.max(D,B),i){let z=0;!c&&!u||c&&!u&&p?z=L0(k+F+I/E,i[1][1])*E:z=D0(k+F+(c?j:-j)/E,i[0][1])*E,D=Math.max(D,z)}if(l){let z=0;!c&&!u||c&&!u&&p?z=D0(k+I/E,l[1][1])*E:z=L0(k+(c?j:-j)/E,l[0][1])*E,D=Math.max(D,z)}}if(f){const B=S6(P*E,g,y)/E;if(V=Math.max(V,B),i){let z=0;!c&&!u||u&&!c&&p?z=L0(S+P*E+$,i[1][0])/E:z=D0(S+(u?N:-N)*E+$,i[0][0])/E,V=Math.max(V,z)}if(l){let z=0;!c&&!u||u&&!c&&p?z=D0(S+P*E,l[1][0])/E:z=L0(S+(u?N:-N)*E,l[0][0])/E,V=Math.max(V,z)}}}N=N+(N<0?V:-V),j=j+(j<0?D:-D),s&&(p?I>P*E?N=(G8e(c,u)?-j:j)/E:j=(G8e(c,u)?-N:N)*E:d?(N=j/E,u=c):(j=N*E,c=u));const W=c?S+j:S,L=u?k+N:k;return{width:_+(c?-j:j),height:C+(u?-N:N),x:a[0]*j*(c?-1:1)+W,y:a[1]*N*(u?-1:1)+L}}const T0t={width:0,height:0,x:0,y:0},zVn={...T0t,pointerX:0,pointerY:0,aspectRatio:1};function BVn(e){return[[0,0],[e.measured.width,e.measured.height]]}function UVn(e,t,n){const r=t.position.x+e.position.x,s=t.position.y+e.position.y,a=e.measured.width??0,i=e.measured.height??0,l=n[0]*a,c=n[1]*i;return[[r-l,s-c],[r+a-l,s+i-c]]}function qVn({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:s}){const a=fp(e);let i={controlDirection:Z8e("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function l({controlPosition:u,boundaries:d,keepAspectRatio:f,resizeDirection:p,onResizeStart:h,onResize:m,onResizeEnd:g,shouldResize:y}){let b={...T0t},w={...zVn};i={boundaries:d,resizeDirection:p,keepAspectRatio:f,controlDirection:Z8e(u)};let S,k=null,_=[],C,E,j,N=!1;const I=zxt().on("start",P=>{const{nodeLookup:$,transform:F,snapGrid:D,snapToGrid:V,nodeOrigin:W,paneDomNode:L}=n();if(S=$.get(t),!S)return;k=L?.getBoundingClientRect()??null;const{xSnapped:B,ySnapped:z}=F2(P.sourceEvent,{transform:F,snapGrid:D,snapToGrid:V,containerBounds:k});b={width:S.measured.width??0,height:S.measured.height??0,x:S.position.x??0,y:S.position.y??0},w={...b,pointerX:B,pointerY:z,aspectRatio:b.width/b.height},C=void 0,S.parentId&&(S.extent==="parent"||S.expandParent)&&(C=$.get(S.parentId),E=C&&S.extent==="parent"?BVn(C):void 0),_=[],j=void 0;for(const[M,G]of $)if(G.parentId===t&&(_.push({id:M,position:{...G.position},extent:G.extent}),G.extent==="parent"||G.expandParent)){const q=UVn(G,S,G.origin??W);j?j=[[Math.min(q[0][0],j[0][0]),Math.min(q[0][1],j[0][1])],[Math.max(q[1][0],j[1][0]),Math.max(q[1][1],j[1][1])]]:j=q}h?.(P,{...b})}).on("drag",P=>{const{transform:$,snapGrid:F,snapToGrid:D,nodeOrigin:V}=n(),W=F2(P.sourceEvent,{transform:$,snapGrid:F,snapToGrid:D,containerBounds:k}),L=[];if(!S)return;const{x:B,y:z,width:M,height:G}=b,q={},R=S.origin??V,{width:U,height:Z,x:X,y:te}=FVn(w,i.controlDirection,W,i.boundaries,i.keepAspectRatio,R,E,j),J=U!==M,ee=Z!==G,ae=X!==B&&J,ce=te!==z&ⅇif(!ae&&!ce&&!J&&!ee)return;if((ae||ce||R[0]===1||R[1]===1)&&(q.x=ae?X:b.x,q.y=ce?te:b.y,b.x=q.x,b.y=q.y,_.length>0)){const pe=X-B,le=te-z;for(const ve of _)ve.position={x:ve.position.x-pe+R[0]*(U-M),y:ve.position.y-le+R[1]*(Z-G)},L.push(ve)}if((J||ee)&&(q.width=J&&(!i.resizeDirection||i.resizeDirection==="horizontal")?U:b.width,q.height=ee&&(!i.resizeDirection||i.resizeDirection==="vertical")?Z:b.height,b.width=q.width,b.height=q.height),C&&S.expandParent){const pe=R[0]*(q.width??0);q.x&&q.x<pe&&(b.x=pe,w.x=w.x-(q.x-pe));const le=R[1]*(q.height??0);q.y&&q.y<le&&(b.y=le,w.y=w.y-(q.y-le))}const Y=LVn({width:b.width,prevWidth:M,height:b.height,prevHeight:G,affectsX:i.controlDirection.affectsX,affectsY:i.controlDirection.affectsY}),ne={...b,direction:Y};y?.(P,ne)!==!1&&(N=!0,m?.(P,ne),r(q,L))}).on("end",P=>{N&&(g?.(P,{...b}),s?.({...b}),N=!1)});a.call(I)}function c(){a.on(".drag",null)}return{update:l,destroy:c}}const VVn={},Q8e=e=>{let t;const n=new Set,r=(d,f)=>{const p=typeof d=="function"?d(t):d;if(!Object.is(p,t)){const h=t;t=f??(typeof p!="object"||p===null)?p:Object.assign({},t,p),n.forEach(m=>m(t,h))}},s=()=>t,c={setState:r,getState:s,getInitialState:()=>u,subscribe:d=>(n.add(d),()=>n.delete(d)),destroy:()=>{(VVn?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},u=t=e(r,s,c);return c},HVn=e=>e?Q8e(e):Q8e,{useDebugValue:WVn}=Le,{useSyncExternalStoreWithSelector:ZVn}=xwn,GVn=e=>e;function N0t(e,t=GVn,n){const r=ZVn(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return WVn(r),r}const Y8e=(e,t)=>{const n=HVn(e),r=(s,a=t)=>N0t(n,s,a);return Object.assign(r,n),r},QVn=(e,t)=>e?Y8e(e,t):Y8e;function to(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[r,s]of e)if(!Object.is(s,t.get(r)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}const TV=v.createContext(null),YVn=TV.Provider,I0t=py.error001();function Us(e,t){const n=v.useContext(TV);if(n===null)throw new Error(I0t);return N0t(n,e,t)}function wo(){const e=v.useContext(TV);if(e===null)throw new Error(I0t);return v.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const X8e={display:"none"},XVn={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},A0t="react-flow__node-desc",R0t="react-flow__edge-desc",KVn="react-flow__aria-live",JVn=e=>e.ariaLiveMessage,eHn=e=>e.ariaLabelConfig;function tHn({rfId:e}){const t=Us(JVn);return o.jsx("div",{id:`${KVn}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:XVn,children:t})}function nHn({rfId:e,disableKeyboardA11y:t}){const n=Us(eHn);return o.jsxs(o.Fragment,{children:[o.jsx("div",{id:`${A0t}-${e}`,style:X8e,children:t?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),o.jsx("div",{id:`${R0t}-${e}`,style:X8e,children:n["edge.a11yDescription.default"]}),!t&&o.jsx(tHn,{rfId:e})]})}const pD=v.forwardRef(({position:e="top-left",children:t,className:n,style:r,...s},a)=>{const i=`${e}`.split("-");return o.jsx("div",{className:Pl(["react-flow__panel",n,...i]),style:r,ref:a,...s,children:t})});pD.displayName="Panel";function rHn({proOptions:e,position:t="bottom-right"}){return e?.hideAttribution?null:o.jsx(pD,{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:o.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const sHn=e=>{const t=[],n=[];for(const[,r]of e.nodeLookup)r.selected&&t.push(r.internals.userNode);for(const[,r]of e.edgeLookup)r.selected&&n.push(r);return{selectedNodes:t,selectedEdges:n}},k6=e=>e.id;function aHn(e,t){return to(e.selectedNodes.map(k6),t.selectedNodes.map(k6))&&to(e.selectedEdges.map(k6),t.selectedEdges.map(k6))}function iHn({onSelectionChange:e}){const t=wo(),{selectedNodes:n,selectedEdges:r}=Us(sHn,aHn);return v.useEffect(()=>{const s={nodes:n,edges:r};e?.(s),t.getState().onSelectionChangeHandlers.forEach(a=>a(s))},[n,r,e]),null}const oHn=e=>!!e.onSelectionChangeHandlers;function lHn({onSelectionChange:e}){const t=Us(oHn);return e||t?o.jsx(iHn,{onSelectionChange:e}):null}const Che=typeof window<"u"?v.useLayoutEffect:v.useEffect,P0t=[0,0],cHn={x:0,y:0,zoom:1},uHn=["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"],K8e=[...uHn,"rfId"],dHn=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}),J8e={translateExtent:J$,nodeOrigin:P0t,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function fHn(e){const{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:s,setTranslateExtent:a,setNodeExtent:i,reset:l,setDefaultNodesAndEdges:c}=Us(dHn,to),u=wo();Che(()=>(c(e.defaultNodes,e.defaultEdges),()=>{d.current=J8e,l()}),[]);const d=v.useRef(J8e);return Che(()=>{for(const f of K8e){const p=e[f],h=d.current[f];p!==h&&(typeof e[f]>"u"||(f==="nodes"?t(p):f==="edges"?n(p):f==="minZoom"?r(p):f==="maxZoom"?s(p):f==="translateExtent"?a(p):f==="nodeExtent"?i(p):f==="ariaLabelConfig"?u.setState({ariaLabelConfig:tVn(p)}):f==="fitView"?u.setState({fitViewQueued:p}):f==="fitViewOptions"?u.setState({fitViewOptions:p}):u.setState({[f]:p})))}d.current=e},K8e.map(f=>e[f])),null}function e9e(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function pHn(e){const[t,n]=v.useState(e==="system"?null:e);return v.useEffect(()=>{if(e!=="system"){n(e);return}const r=e9e(),s=()=>n(r?.matches?"dark":"light");return s(),r?.addEventListener("change",s),()=>{r?.removeEventListener("change",s)}},[e]),t!==null?t:e9e()?.matches?"dark":"light"}const t9e=typeof document<"u"?document:null;function sM(e=null,t={target:t9e,actInsideInputWithModifier:!0}){const[n,r]=v.useState(!1),s=v.useRef(!1),a=v.useRef(new Set([])),[i,l]=v.useMemo(()=>{if(e!==null){const u=(Array.isArray(e)?e:[e]).filter(f=>typeof f=="string").map(f=>f.replace("+",`
|
|
336
|
+
`:r=="r"?"\r":r=="t"?" ":"\\")}eq(t){return this.search==t.search&&this.replace==t.replace&&this.caseSensitive==t.caseSensitive&&this.regexp==t.regexp&&this.wholeWord==t.wholeWord&&this.test==t.test}create(){return this.regexp?new bFn(this):new gFn(this)}getCursor(t,n=0,r){let s=t.doc?t:os.create({doc:t});return r==null&&(r=s.doc.length),this.regexp?yE(this,s,n,r):vE(this,s,n,r)}}class cxt{constructor(t){this.spec=t}}function hFn(e,t,n){return(r,s,a,i)=>{if(n&&!n(r,s,a,i))return!1;let l=r>=i&&s<=i+a.length?a.slice(r-i,s-i):t.doc.sliceString(r,s);return e(l,t,r,s)}}function vE(e,t,n,r){let s;return e.wholeWord&&(s=mFn(t.doc,t.charCategorizer(t.selection.main.head))),e.test&&(s=hFn(e.test,t,s)),new Sx(t.doc,e.unquoted,n,r,e.caseSensitive?void 0:a=>a.toLowerCase(),s)}function mFn(e,t){return(n,r,s,a)=>((a>n||a+s.length<r)&&(a=Math.max(0,n-2),s=e.sliceString(a,Math.min(e.length,r+2))),(t(g7(s,n-a))!=fo.Word||t(v7(s,n-a))!=fo.Word)&&(t(v7(s,r-a))!=fo.Word||t(g7(s,r-a))!=fo.Word))}class gFn extends cxt{constructor(t){super(t)}nextMatch(t,n,r){let s=vE(this.spec,t,r,t.doc.length).nextOverlapping();if(s.done){let a=Math.min(t.doc.length,n+this.spec.unquoted.length);s=vE(this.spec,t,0,a).nextOverlapping()}return s.done||s.value.from==n&&s.value.to==r?null:s.value}prevMatchInRange(t,n,r){for(let s=r;;){let a=Math.max(n,s-1e4-this.spec.unquoted.length),i=vE(this.spec,t,a,s),l=null;for(;!i.nextOverlapping().done;)l=i.value;if(l)return l;if(a==n)return null;s-=1e4}}prevMatch(t,n,r){let s=this.prevMatchInRange(t,0,n);return s||(s=this.prevMatchInRange(t,Math.max(0,r-this.spec.unquoted.length),t.doc.length)),s&&(s.from!=n||s.to!=r)?s:null}getReplacement(t){return this.spec.unquote(this.spec.replace)}matchAll(t,n){let r=vE(this.spec,t,0,t.doc.length),s=[];for(;!r.next().done;){if(s.length>=n)return null;s.push(r.value)}return s}highlight(t,n,r,s){let a=vE(this.spec,t,Math.max(0,n-this.spec.unquoted.length),Math.min(r+this.spec.unquoted.length,t.doc.length));for(;!a.next().done;)s(a.value.from,a.value.to)}}function vFn(e,t,n){return(r,s,a)=>(!n||n(r,s,a))&&e(a[0],t,r,s)}function yE(e,t,n,r){let s;return e.wholeWord&&(s=yFn(t.charCategorizer(t.selection.main.head))),e.test&&(s=vFn(e.test,t,s)),new ixt(t.doc,e.search,{ignoreCase:!e.caseSensitive,test:s},n,r)}function g7(e,t){return e.slice(vc(e,t,!1),t)}function v7(e,t){return e.slice(t,vc(e,t))}function yFn(e){return(t,n,r)=>!r[0].length||(e(g7(r.input,r.index))!=fo.Word||e(v7(r.input,r.index))!=fo.Word)&&(e(v7(r.input,r.index+r[0].length))!=fo.Word||e(g7(r.input,r.index+r[0].length))!=fo.Word)}class bFn extends cxt{nextMatch(t,n,r){let s=yE(this.spec,t,r,t.doc.length).next();return s.done&&(s=yE(this.spec,t,0,n).next()),s.done?null:s.value}prevMatchInRange(t,n,r){for(let s=1;;s++){let a=Math.max(n,r-s*1e4),i=yE(this.spec,t,a,r),l=null;for(;!i.next().done;)l=i.value;if(l&&(a==n||l.from>a+10))return l;if(a==n)return null}}prevMatch(t,n,r){return this.prevMatchInRange(t,0,n)||this.prevMatchInRange(t,r,t.doc.length)}getReplacement(t){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(n,r)=>{if(r=="&")return t.match[0];if(r=="$")return"$";for(let s=r.length;s>0;s--){let a=+r.slice(0,s);if(a>0&&a<t.match.length)return t.match[a]+r.slice(s)}return n})}matchAll(t,n){let r=yE(this.spec,t,0,t.doc.length),s=[];for(;!r.next().done;){if(s.length>=n)return null;s.push(r.value)}return s}highlight(t,n,r,s){let a=yE(this.spec,t,Math.max(0,n-250),Math.min(r+250,t.doc.length));for(;!a.next().done;)s(a.value.from,a.value.to)}}const W$=vr.define(),Jwe=vr.define(),Rw=ml.define({create(e){return new DK(dhe(e).create(),null)},update(e,t){for(let n of t.effects)n.is(W$)?e=new DK(n.value.create(),e.panel):n.is(Jwe)&&(e=new DK(e.query,n.value?e1e:null));return e},provide:e=>M$.from(e,t=>t.panel)});class DK{constructor(t,n){this.query=t,this.panel=n}}const xFn=Cn.mark({class:"cm-searchMatch"}),wFn=Cn.mark({class:"cm-searchMatch cm-searchMatch-selected"}),SFn=yo.fromClass(class{constructor(e){this.view=e,this.decorations=this.highlight(e.state.field(Rw))}update(e){let t=e.state.field(Rw);(t!=e.startState.field(Rw)||e.docChanged||e.selectionSet||e.viewportChanged)&&(this.decorations=this.highlight(t))}highlight({query:e,panel:t}){if(!t||!e.spec.valid)return Cn.none;let{view:n}=this,r=new xd;for(let s=0,a=n.visibleRanges,i=a.length;s<i;s++){let{from:l,to:c}=a[s];for(;s<i-1&&c>a[s+1].from-500;)c=a[++s].to;e.highlight(n.state,l,c,(u,d)=>{let f=n.state.selection.ranges.some(p=>p.from==u&&p.to==d);r.add(u,d,f?wFn:xFn)})}return r.finish()}},{decorations:e=>e.decorations});function iD(e){return t=>{let n=t.state.field(Rw,!1);return n&&n.query.spec.valid?e(t,n):fxt(t)}}const y7=iD((e,{query:t})=>{let{to:n}=e.state.selection.main,r=t.nextMatch(e.state,n,n);if(!r)return!1;let s=bt.single(r.from,r.to),a=e.state.facet(FN);return e.dispatch({selection:s,effects:[t1e(e,r),a.scrollToMatch(s.main,e)],userEvent:"select.search"}),dxt(e),!0}),b7=iD((e,{query:t})=>{let{state:n}=e,{from:r}=n.selection.main,s=t.prevMatch(n,r,r);if(!s)return!1;let a=bt.single(s.from,s.to),i=e.state.facet(FN);return e.dispatch({selection:a,effects:[t1e(e,s),i.scrollToMatch(a.main,e)],userEvent:"select.search"}),dxt(e),!0}),kFn=iD((e,{query:t})=>{let n=t.matchAll(e.state,1e3);return!n||!n.length?!1:(e.dispatch({selection:bt.create(n.map(r=>bt.range(r.from,r.to))),userEvent:"select.search.matches"}),!0)}),OFn=({state:e,dispatch:t})=>{let n=e.selection;if(n.ranges.length>1||n.main.empty)return!1;let{from:r,to:s}=n.main,a=[],i=0;for(let l=new Sx(e.doc,e.sliceDoc(r,s));!l.next().done;){if(a.length>1e3)return!1;l.value.from==r&&(i=a.length),a.push(bt.range(l.value.from,l.value.to))}return t(e.update({selection:bt.create(a,i),userEvent:"select.search.matches"})),!0},c6e=iD((e,{query:t})=>{let{state:n}=e,{from:r,to:s}=n.selection.main;if(n.readOnly)return!1;let a=t.nextMatch(n,r,r);if(!a)return!1;let i=a,l=[],c,u,d=[];i.precise?i.from==r&&i.to==s&&(u=n.toText(t.getReplacement(i)),l.push({from:i.from,to:i.to,insert:u}),d.push(Nt.announce.of(n.phrase("replaced match on line $",n.doc.lineAt(r).number)+"."))):i=t.nextMatch(n,i.from,i.to);let f=e.state.changes(l);return i&&(c=bt.single(i.from,i.to).map(f),d.push(t1e(e,i)),d.push(n.facet(FN).scrollToMatch(c.main,e))),e.dispatch({changes:f,selection:c,effects:d,userEvent:"input.replace"}),!0}),_Fn=iD((e,{query:t})=>{if(e.state.readOnly)return!1;let n=[];for(let s of t.matchAll(e.state,1e9)){let{from:a,to:i,precise:l}=s;l&&n.push({from:a,to:i,insert:t.getReplacement(s)})}if(!n.length)return!1;let r=e.state.phrase("replaced $ matches",n.length)+".";return e.dispatch({changes:n,effects:Nt.announce.of(r),userEvent:"input.replace.all"}),!0});function e1e(e){return e.state.facet(FN).createPanel(e)}function dhe(e,t){var n,r,s,a,i;let l=e.selection.main,c=l.empty||l.to>l.from+100?"":e.sliceDoc(l.from,l.to);if(t&&!c)return t;let u=e.facet(FN);return new lxt({search:((n=t?.literal)!==null&&n!==void 0?n:u.literal)?c:c.replace(/\n/g,"\\n"),caseSensitive:(r=t?.caseSensitive)!==null&&r!==void 0?r:u.caseSensitive,literal:(s=t?.literal)!==null&&s!==void 0?s:u.literal,regexp:(a=t?.regexp)!==null&&a!==void 0?a:u.regexp,wholeWord:(i=t?.wholeWord)!==null&&i!==void 0?i:u.wholeWord})}function uxt(e){let t=gwe(e,e1e);return t&&t.dom.querySelector("[main-field]")}function dxt(e){let t=uxt(e);t&&t==e.root.activeElement&&t.select()}const fxt=e=>{let t=e.state.field(Rw,!1);if(t&&t.panel){let n=uxt(e);if(n&&n!=e.root.activeElement){let r=dhe(e.state,t.query.spec);r.valid&&e.dispatch({effects:W$.of(r)}),n.focus(),n.select()}}else e.dispatch({effects:[Jwe.of(!0),t?W$.of(dhe(e.state,t.query.spec)):vr.appendConfig.of(TFn)]});return!0},pxt=e=>{let t=e.state.field(Rw,!1);if(!t||!t.panel)return!1;let n=gwe(e,e1e);return n&&n.dom.contains(e.root.activeElement)&&e.focus(),e.dispatch({effects:Jwe.of(!1)}),!0},CFn=[{key:"Mod-f",run:fxt,scope:"editor search-panel"},{key:"F3",run:y7,shift:b7,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:y7,shift:b7,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:pxt,scope:"editor search-panel"},{key:"Mod-Shift-l",run:OFn},{key:"Mod-Alt-g",run:nFn},{key:"Mod-d",run:pFn,preventDefault:!0}];class EFn{constructor(t){this.view=t;let n=this.query=t.state.field(Rw).query.spec;this.commit=this.commit.bind(this),this.searchField=ii("input",{value:n.search,placeholder:Hf(t,"Find"),"aria-label":Hf(t,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=ii("input",{value:n.replace,placeholder:Hf(t,"Replace"),"aria-label":Hf(t,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=ii("input",{type:"checkbox",name:"case",form:"",checked:n.caseSensitive,onchange:this.commit}),this.reField=ii("input",{type:"checkbox",name:"re",form:"",checked:n.regexp,onchange:this.commit}),this.wordField=ii("input",{type:"checkbox",name:"word",form:"",checked:n.wholeWord,onchange:this.commit});function r(s,a,i){return ii("button",{class:"cm-button",name:s,onclick:a,type:"button"},i)}this.dom=ii("div",{onkeydown:s=>this.keydown(s),class:"cm-search"},[this.searchField,r("next",()=>y7(t),[Hf(t,"next")]),r("prev",()=>b7(t),[Hf(t,"previous")]),r("select",()=>kFn(t),[Hf(t,"all")]),ii("label",null,[this.caseField,Hf(t,"match case")]),ii("label",null,[this.reField,Hf(t,"regexp")]),ii("label",null,[this.wordField,Hf(t,"by word")]),...t.state.readOnly?[]:[ii("br"),this.replaceField,r("replace",()=>c6e(t),[Hf(t,"replace")]),r("replaceAll",()=>_Fn(t),[Hf(t,"replace all")])],ii("button",{name:"close",onclick:()=>pxt(t),"aria-label":Hf(t,"close"),type:"button"},["×"])])}commit(){let t=new lxt({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});t.eq(this.query)||(this.query=t,this.view.dispatch({effects:W$.of(t)}))}keydown(t){Z3n(this.view,t,"search-panel")?t.preventDefault():t.keyCode==13&&t.target==this.searchField?(t.preventDefault(),(t.shiftKey?b7:y7)(this.view)):t.keyCode==13&&t.target==this.replaceField&&(t.preventDefault(),c6e(this.view))}update(t){for(let n of t.transactions)for(let r of n.effects)r.is(W$)&&!r.value.eq(this.query)&&this.setQuery(r.value)}setQuery(t){this.query=t,this.searchField.value=t.search,this.replaceField.value=t.replace,this.caseField.checked=t.caseSensitive,this.reField.checked=t.regexp,this.wordField.checked=t.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(FN).top}}function Hf(e,t){return e.state.phrase(t)}const p6=30,h6=/[\s\.,:;?!]/;function t1e(e,{from:t,to:n}){let r=e.state.doc.lineAt(t),s=e.state.doc.lineAt(n).to,a=Math.max(r.from,t-p6),i=Math.min(s,n+p6),l=e.state.sliceDoc(a,i);if(a!=r.from){for(let c=0;c<p6;c++)if(!h6.test(l[c+1])&&h6.test(l[c])){l=l.slice(c);break}}if(i!=s){for(let c=l.length-1;c>l.length-p6;c--)if(!h6.test(l[c-1])&&h6.test(l[c])){l=l.slice(0,c);break}}return Nt.announce.of(`${e.state.phrase("current match")}. ${l} ${e.state.phrase("on line")} ${r.number}.`)}const jFn=Nt.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"}}),TFn=[Rw,Pg.low(SFn),jFn];class u6e{constructor(t,n,r){this.from=t,this.to=n,this.diagnostic=r}}class ck{constructor(t,n,r){this.diagnostics=t,this.panel=n,this.selected=r}static init(t,n,r){let s=r.facet(Z$).markerFilter;s&&(t=s(t,r));let a=t.slice().sort((d,f)=>d.from-f.from||d.to-f.to),i=new xd,l=[],c=0;for(let d=0;;){let f=d==a.length?null:a[d];if(!f&&!l.length)break;let p,h;for(l.length?(p=c,h=l.reduce((g,y)=>Math.min(g,y.to),f&&f.from>p?f.from:1e8)):(p=f.from,h=f.to,l.push(f),d++);d<a.length;){let g=a[d];if(g.from==p&&(g.to>g.from||g.to==p))l.push(g),d++,h=Math.min(g.to,h);else{h=Math.min(g.from,h);break}}let m=UFn(l);if(l.some(g=>g.from==g.to||g.from==g.to-1&&r.doc.lineAt(g.from).to==g.from))i.add(p,p,Cn.widget({widget:new LFn(m),diagnostics:l.slice()}));else{let g=l.reduce((y,b)=>b.markClass?y+" "+b.markClass:y,"");i.add(p,h,Cn.mark({class:"cm-lintRange cm-lintRange-"+m+g,diagnostics:l.slice(),inclusiveEnd:l.some(y=>y.to>h)}))}c=h;for(let g=0;g<l.length;g++)l[g].to<=c&&l.splice(g--,1)}let u=i.finish();return new ck(u,n,mT(u))}}function mT(e,t=null,n=0){let r=null;return e.between(n,1e9,(s,a,{spec:i})=>{if(!(t&&i.diagnostics.indexOf(t)<0))if(!r)r=new u6e(s,a,t||i.diagnostics[0]);else{if(i.diagnostics.indexOf(r.diagnostic)<0)return!1;r=new u6e(r.from,a,r.diagnostic)}}),r}function NFn(e,t){let n=t.pos,r=t.end||n,s=e.state.facet(Z$).hideOn(e,n,r);if(s!=null)return s;let a=e.startState.doc.lineAt(t.pos);return!!(e.effects.some(i=>i.is(hxt))||e.changes.touchesRange(a.from,Math.max(a.to,r)))}function IFn(e,t){return e.field(gp,!1)?t:t.concat(vr.appendConfig.of(qFn))}const hxt=vr.define(),n1e=vr.define(),mxt=vr.define(),gp=ml.define({create(){return new ck(Cn.none,null,null)},update(e,t){if(t.docChanged&&e.diagnostics.size){let n=e.diagnostics.map(t.changes),r=null,s=e.panel;if(e.selected){let a=t.changes.mapPos(e.selected.from,1);r=mT(n,e.selected.diagnostic,a)||mT(n,null,a)}!n.size&&s&&t.state.facet(Z$).autoPanel&&(s=null),e=new ck(n,s,r)}for(let n of t.effects)if(n.is(hxt)){let r=t.state.facet(Z$).autoPanel?n.value.length?G$.open:null:e.panel;e=ck.init(n.value,r,t.state)}else n.is(n1e)?e=new ck(e.diagnostics,n.value?G$.open:null,e.selected):n.is(mxt)&&(e=new ck(e.diagnostics,e.panel,n.value));return e},provide:e=>[M$.from(e,t=>t.panel),Nt.decorations.from(e,t=>t.diagnostics)]}),AFn=Cn.mark({class:"cm-lintRange cm-lintRange-active"});function RFn(e,t,n){let{diagnostics:r}=e.state.field(gp),s,a=-1,i=-1;r.between(t-(n<0?1:0),t+(n>0?1:0),(c,u,{spec:d})=>{if(t>=c&&t<=u&&(c==u||(t>c||n>0)&&(t<u||n<0)))return s=d.diagnostics,a=c,i=u,!1});let l=e.state.facet(Z$).tooltipFilter;return s&&l&&(s=l(s,e.state)),s?{pos:a,end:i,above:e.state.doc.lineAt(a).to<i,create(){return{dom:PFn(e,s)}}}:null}function PFn(e,t){return ii("ul",{class:"cm-tooltip-lint"},t.map(n=>vxt(e,n,!1)))}const $Fn=e=>{let t=e.state.field(gp,!1);(!t||!t.panel)&&e.dispatch({effects:IFn(e.state,[n1e.of(!0)])});let n=gwe(e,G$.open);return n&&n.dom.querySelector(".cm-panel-lint ul").focus(),!0},d6e=e=>{let t=e.state.field(gp,!1);return!t||!t.panel?!1:(e.dispatch({effects:n1e.of(!1)}),!0)},MFn=e=>{let t=e.state.field(gp,!1);if(!t)return!1;let n=e.state.selection.main,r=t.diagnostics.iter(n.to+1);return!r.value&&(r=t.diagnostics.iter(0),!r.value||r.from==n.from&&r.to==n.to)?!1:(e.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),!0)},DFn=[{key:"Mod-Shift-m",run:$Fn,preventDefault:!0},{key:"F8",run:MFn}],Z$=On.define({combine(e){return{sources:e.map(t=>t.source).filter(t=>t!=null),...Ry(e.map(t=>t.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:f6e,tooltipFilter:f6e,needsRefresh:(t,n)=>t?n?r=>t(r)||n(r):t:n,hideOn:(t,n)=>t?n?(r,s,a)=>t(r,s,a)||n(r,s,a):t:n,autoPanel:(t,n)=>t||n})}}});function f6e(e,t){return e?t?(n,r)=>t(e(n,r),r):e:t}function gxt(e){let t=[];if(e)e:for(let{name:n}of e){for(let r=0;r<n.length;r++){let s=n[r];if(/[a-zA-Z]/.test(s)&&!t.some(a=>a.toLowerCase()==s.toLowerCase())){t.push(s);continue e}}t.push("")}return t}function vxt(e,t,n){var r;let s=n?gxt(t.actions):[];return ii("li",{class:"cm-diagnostic cm-diagnostic-"+t.severity},ii("span",{class:"cm-diagnosticText"},t.renderMessage?t.renderMessage(e):t.message),(r=t.actions)===null||r===void 0?void 0:r.map((a,i)=>{let l=!1,c=h=>{if(h.preventDefault(),l)return;l=!0;let m=mT(e.state.field(gp).diagnostics,t);m&&a.apply(e,m.from,m.to)},{name:u}=a,d=s[i]?u.indexOf(s[i]):-1,f=d<0?u:[u.slice(0,d),ii("u",u.slice(d,d+1)),u.slice(d+1)],p=a.markClass?" "+a.markClass:"";return ii("button",{type:"button",class:"cm-diagnosticAction"+p,onclick:c,onmousedown:c,"aria-label":` Action: ${u}${d<0?"":` (access key "${s[i]})"`}.`},f)}),t.source&&ii("div",{class:"cm-diagnosticSource"},t.source))}class LFn extends Zp{constructor(t){super(),this.sev=t}eq(t){return t.sev==this.sev}toDOM(){return ii("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class p6e{constructor(t,n){this.diagnostic=n,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=vxt(t,n,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class G${constructor(t){this.view=t,this.items=[];let n=s=>{if(s.keyCode==27)d6e(this.view),this.view.focus();else if(s.keyCode==38||s.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(s.keyCode==40||s.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(s.keyCode==36)this.moveSelection(0);else if(s.keyCode==35)this.moveSelection(this.items.length-1);else if(s.keyCode==13)this.view.focus();else if(s.keyCode>=65&&s.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:a}=this.items[this.selectedIndex],i=gxt(a.actions);for(let l=0;l<i.length;l++)if(i[l].toUpperCase().charCodeAt(0)==s.keyCode){let c=mT(this.view.state.field(gp).diagnostics,a);c&&a.actions[l].apply(t,c.from,c.to)}}else return;s.preventDefault()},r=s=>{for(let a=0;a<this.items.length;a++)this.items[a].dom.contains(s.target)&&this.moveSelection(a)};this.list=ii("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:n,onclick:r}),this.dom=ii("div",{class:"cm-panel-lint"},this.list,ii("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>d6e(this.view)},"×")),this.update()}get selectedIndex(){let t=this.view.state.field(gp).selected;if(!t)return-1;for(let n=0;n<this.items.length;n++)if(this.items[n].diagnostic==t.diagnostic)return n;return-1}update(){let{diagnostics:t,selected:n}=this.view.state.field(gp),r=0,s=!1,a=null,i=new Set;for(t.between(0,this.view.state.doc.length,(l,c,{spec:u})=>{for(let d of u.diagnostics){if(i.has(d))continue;i.add(d);let f=-1,p;for(let h=r;h<this.items.length;h++)if(this.items[h].diagnostic==d){f=h;break}f<0?(p=new p6e(this.view,d),this.items.splice(r,0,p),s=!0):(p=this.items[f],f>r&&(this.items.splice(r,f-r),s=!0)),n&&p.diagnostic==n.diagnostic?p.dom.hasAttribute("aria-selected")||(p.dom.setAttribute("aria-selected","true"),a=p):p.dom.hasAttribute("aria-selected")&&p.dom.removeAttribute("aria-selected"),r++}});r<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)s=!0,this.items.pop();this.items.length==0&&(this.items.push(new p6e(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),s=!0),a?(this.list.setAttribute("aria-activedescendant",a.id),this.view.requestMeasure({key:this,read:()=>({sel:a.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:l,panel:c})=>{let u=c.height/this.list.offsetHeight;l.top<c.top?this.list.scrollTop-=(c.top-l.top)/u:l.bottom>c.bottom&&(this.list.scrollTop+=(l.bottom-c.bottom)/u)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),s&&this.sync()}sync(){let t=this.list.firstChild;function n(){let r=t;t=r.nextSibling,r.remove()}for(let r of this.items)if(r.dom.parentNode==this.list){for(;t!=r.dom;)n();t=r.dom.nextSibling}else this.list.insertBefore(r.dom,t);for(;t;)n()}moveSelection(t){if(this.selectedIndex<0)return;let n=this.view.state.field(gp),r=mT(n.diagnostics,this.items[t].diagnostic);r&&this.view.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0,effects:mxt.of(r)})}static open(t){return new G$(t)}}function FFn(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 m6(e){return FFn(`<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"')}const zFn=Nt.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:m6("#d11")},".cm-lintRange-warning":{backgroundImage:m6("orange")},".cm-lintRange-info":{backgroundImage:m6("#999")},".cm-lintRange-hint":{backgroundImage:m6("#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}}});function BFn(e){return e=="error"?4:e=="warning"?3:e=="info"?2:1}function UFn(e){let t="hint",n=1;for(let r of e){let s=BFn(r.severity);s>n&&(n=s,t=r.severity)}return t}const qFn=[gp,Nt.decorations.compute([gp],e=>{let{selected:t,panel:n}=e.field(gp);return!t||!n||t.from==t.to?Cn.none:Cn.set([AFn.range(t.from,t.to)])}),$Dn(RFn,{hideOn:NFn}),zFn];var h6e=function(t){t===void 0&&(t={});var n=t,r=n.crosshairCursor,s=r===void 0?!1:r,a=[];t.closeBracketsKeymap!==!1&&(a=a.concat(A5n)),t.defaultKeymap!==!1&&(a=a.concat(J9n)),t.searchKeymap!==!1&&(a=a.concat(CFn)),t.historyKeymap!==!1&&(a=a.concat(i9n)),t.foldKeymap!==!1&&(a=a.concat(v4n)),t.completionKeymap!==!1&&(a=a.concat(dyt)),t.lintKeymap!==!1&&(a=a.concat(DFn));var i=[];return t.lineNumbers!==!1&&i.push(ZDn()),t.highlightActiveLineGutter!==!1&&i.push(YDn()),t.highlightSpecialChars!==!1&&i.push(cDn()),t.history!==!1&&i.push(X8n()),t.foldGutter!==!1&&i.push(w4n()),t.drawSelection!==!1&&i.push(J3n()),t.dropCursor!==!1&&i.push(sDn()),t.allowMultipleSelections!==!1&&i.push(os.allowMultipleSelections.of(!0)),t.indentOnInput!==!1&&i.push(c4n()),t.syntaxHighlighting!==!1&&i.push(F1(_4n,{fallback:!0})),t.bracketMatching!==!1&&i.push(A4n()),t.closeBrackets!==!1&&i.push(j5n()),t.autocompletion!==!1&&i.push(uyt()),t.rectangularSelection!==!1&&i.push(kDn()),s!==!1&&i.push(CDn()),t.highlightActiveLine!==!1&&i.push(mDn()),t.highlightSelectionMatches!==!1&&i.push(aFn()),t.tabSize&&typeof t.tabSize=="number"&&i.push($N.of(" ".repeat(t.tabSize))),i.concat([PN.of(a.flat())]).filter(Boolean)};const VFn="#e5c07b",m6e="#e06c75",HFn="#56b6c2",WFn="#ffffff",U9="#abb2bf",fhe="#7d8799",ZFn="#61afef",GFn="#98c379",g6e="#d19a66",QFn="#c678dd",YFn="#21252b",v6e="#2c313a",y6e="#282c34",LK="#353a42",XFn="#3E4451",b6e="#528bff",KFn=Nt.theme({"&":{color:U9,backgroundColor:y6e},".cm-content":{caretColor:b6e},".cm-cursor, .cm-dropCursor":{borderLeftColor:b6e},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:XFn},".cm-panels":{backgroundColor:YFn,color:U9},".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 #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:y6e,color:fhe,border:"none"},".cm-activeLineGutter":{backgroundColor:v6e},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:LK},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:LK,borderBottomColor:LK},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:v6e,color:U9}}},{dark:!0}),JFn=$g.define([{tag:fe.keyword,color:QFn},{tag:[fe.name,fe.deleted,fe.character,fe.propertyName,fe.macroName],color:m6e},{tag:[fe.function(fe.variableName),fe.labelName],color:ZFn},{tag:[fe.color,fe.constant(fe.name),fe.standard(fe.name)],color:g6e},{tag:[fe.definition(fe.name),fe.separator],color:U9},{tag:[fe.typeName,fe.className,fe.number,fe.changed,fe.annotation,fe.modifier,fe.self,fe.namespace],color:VFn},{tag:[fe.operator,fe.operatorKeyword,fe.url,fe.escape,fe.regexp,fe.link,fe.special(fe.string)],color:HFn},{tag:[fe.meta,fe.comment],color:fhe},{tag:fe.strong,fontWeight:"bold"},{tag:fe.emphasis,fontStyle:"italic"},{tag:fe.strikethrough,textDecoration:"line-through"},{tag:fe.link,color:fhe,textDecoration:"underline"},{tag:fe.heading,fontWeight:"bold",color:m6e},{tag:[fe.atom,fe.bool,fe.special(fe.variableName)],color:g6e},{tag:[fe.processingInstruction,fe.string,fe.inserted],color:GFn},{tag:fe.invalid,color:WFn}]),ezn=[KFn,F1(JFn)];var tzn=Nt.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),nzn=function(t){t===void 0&&(t={});var n=t,r=n.indentWithTab,s=r===void 0?!0:r,a=n.editable,i=a===void 0?!0:a,l=n.readOnly,c=l===void 0?!1:l,u=n.theme,d=u===void 0?"light":u,f=n.placeholder,p=f===void 0?"":f,h=n.basicSetup,m=h===void 0?!0:h,g=[];switch(s&&g.unshift(PN.of([eFn])),m&&(typeof m=="boolean"?g.unshift(h6e()):g.unshift(h6e(m))),p&&g.unshift(bDn(p)),d){case"light":g.push(tzn);break;case"dark":g.push(ezn);break;case"none":break;default:g.push(d);break}return i===!1&&g.push(Nt.editable.of(!1)),c&&g.push(os.readOnly.of(!0)),[...g]},rzn=e=>({line:e.state.doc.lineAt(e.state.selection.main.from),lineCount:e.state.doc.lines,lineBreak:e.state.lineBreak,length:e.state.doc.length,readOnly:e.state.readOnly,tabSize:e.state.tabSize,selection:e.state.selection,selectionAsSingle:e.state.selection.asSingle().main,ranges:e.state.selection.ranges,selectionCode:e.state.sliceDoc(e.state.selection.main.from,e.state.selection.main.to),selections:e.state.selection.ranges.map(t=>e.state.sliceDoc(t.from,t.to)),selectedText:e.state.selection.ranges.some(t=>!t.empty)});class szn{constructor(t,n){this.timeLeftMS=void 0,this.timeoutMS=void 0,this.isCancelled=!1,this.isTimeExhausted=!1,this.callbacks=[],this.timeLeftMS=n,this.timeoutMS=n,this.callbacks.push(t)}tick(){if(!this.isCancelled&&!this.isTimeExhausted&&(this.timeLeftMS--,this.timeLeftMS<=0)){this.isTimeExhausted=!0;var t=this.callbacks.slice();this.callbacks.length=0,t.forEach(n=>{try{n()}catch(r){console.error("TimeoutLatch callback error:",r)}})}}cancel(){this.isCancelled=!0,this.callbacks.length=0}reset(){this.timeLeftMS=this.timeoutMS,this.isCancelled=!1,this.isTimeExhausted=!1}get isDone(){return this.isCancelled||this.isTimeExhausted}}class x6e{constructor(){this.interval=null,this.latches=new Set}add(t){this.latches.add(t),this.start()}remove(t){this.latches.delete(t),this.latches.size===0&&this.stop()}start(){this.interval===null&&(this.interval=setInterval(()=>{this.latches.forEach(t=>{t.tick(),t.isDone&&this.remove(t)})},1))}stop(){this.interval!==null&&(clearInterval(this.interval),this.interval=null)}}var FK=null,azn=()=>typeof window>"u"?new x6e:(FK||(FK=new x6e),FK),w6e=Ay.define(),izn=200,ozn=[];function lzn(e){var t=e.value,n=e.selection,r=e.onChange,s=e.onStatistics,a=e.onCreateEditor,i=e.onUpdate,l=e.extensions,c=l===void 0?ozn:l,u=e.autoFocus,d=e.theme,f=d===void 0?"light":d,p=e.height,h=p===void 0?null:p,m=e.minHeight,g=m===void 0?null:m,y=e.maxHeight,b=y===void 0?null:y,w=e.width,S=w===void 0?null:w,k=e.minWidth,_=k===void 0?null:k,C=e.maxWidth,E=C===void 0?null:C,j=e.placeholder,N=j===void 0?"":j,I=e.editable,P=I===void 0?!0:I,$=e.readOnly,F=$===void 0?!1:$,D=e.indentWithTab,V=D===void 0?!0:D,W=e.basicSetup,L=W===void 0?!0:W,B=e.root,z=e.initialState,M=v.useState(),G=M[0],q=M[1],R=v.useState(),U=R[0],Z=R[1],X=v.useState(),te=X[0],J=X[1],ee=v.useState(()=>({current:null}))[0],ae=v.useState(()=>({current:null}))[0],ce=Nt.theme({"&":{height:h,minHeight:g,maxHeight:b,width:S,minWidth:_,maxWidth:E},"& .cm-scroller":{height:"100% !important"}}),Y=Nt.updateListener.of(pe=>{if(pe.docChanged&&typeof r=="function"&&!pe.transactions.some(ye=>ye.annotation(w6e))){ee.current?ee.current.reset():(ee.current=new szn(()=>{if(ae.current){var ye=ae.current;ae.current=null,ye()}ee.current=null},izn),azn().add(ee.current));var le=pe.state.doc,ve=le.toString();r(ve,pe)}s&&s(rzn(pe))}),ne=nzn({theme:f,editable:P,readOnly:F,placeholder:N,indentWithTab:V,basicSetup:L}),ue=[Y,ce,...ne];return i&&typeof i=="function"&&ue.push(Nt.updateListener.of(i)),ue=ue.concat(c),v.useLayoutEffect(()=>{if(G&&!te){var pe={doc:t,selection:n,extensions:ue},le=z?os.fromJSON(z.json,pe,z.fields):os.create(pe);if(J(le),!U){var ve=new Nt({state:le,parent:G,root:B});Z(ve),a&&a(ve,le)}}return()=>{U&&(J(void 0),Z(void 0))}},[G,te]),v.useEffect(()=>{e.container&&q(e.container)},[e.container]),v.useEffect(()=>()=>{U&&(U.destroy(),Z(void 0)),ee.current&&(ee.current.cancel(),ee.current=null)},[U]),v.useEffect(()=>{u&&U&&U.focus()},[u,U]),v.useEffect(()=>{U&&U.dispatch({effects:vr.reconfigure.of(ue)})},[f,c,h,g,b,S,_,E,N,P,F,V,L,r,i]),v.useEffect(()=>{if(t!==void 0){var pe=U?U.state.doc.toString():"";if(U&&t!==pe){var le=ee.current&&!ee.current.isDone,ve=()=>{U&&t!==U.state.doc.toString()&&U.dispatch({changes:{from:0,to:U.state.doc.toString().length,insert:t||""},annotations:[w6e.of(!0)]})};le?ae.current=ve:ve()}}},[t,U]),{state:te,setState:J,view:U,setView:Z,container:G,setContainer:q}}var czn=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],Kc=v.forwardRef((e,t)=>{var n=e.className,r=e.value,s=r===void 0?"":r,a=e.selection,i=e.extensions,l=i===void 0?[]:i,c=e.onChange,u=e.onStatistics,d=e.onCreateEditor,f=e.onUpdate,p=e.autoFocus,h=e.theme,m=h===void 0?"light":h,g=e.height,y=e.minHeight,b=e.maxHeight,w=e.width,S=e.minWidth,k=e.maxWidth,_=e.basicSetup,C=e.placeholder,E=e.indentWithTab,j=e.editable,N=e.readOnly,I=e.root,P=e.initialState,$=_bt(e,czn),F=v.useRef(null),D=lzn({root:I,value:s,autoFocus:p,theme:m,height:g,minHeight:y,maxHeight:b,width:w,minWidth:S,maxWidth:k,basicSetup:_,placeholder:C,indentWithTab:E,editable:j,readOnly:N,selection:a,onChange:c,onStatistics:u,onCreateEditor:d,onUpdate:f,extensions:l,initialState:P}),V=D.state,W=D.view,L=D.container,B=D.setContainer;v.useImperativeHandle(t,()=>({editor:F.current,state:V,view:W}),[F,L,V,W]);var z=v.useCallback(G=>{F.current=G,B(G)},[B]);if(typeof s!="string")throw new Error("value must be typeof string but got "+typeof s);var M=typeof m=="string"?"cm-theme-"+m:"cm-theme";return o.jsx("div",jO({ref:z,className:""+M+(n?" "+n:"")},$))});Kc.displayName="CodeMirror";function uzn(e){return new OO(wwe.define(e))}const yxt=[Ym.of({name:"JavaScript",alias:["ecmascript","js","node"],extensions:["js","mjs","cjs"],load(){return Eo(()=>Promise.resolve().then(()=>d6),[],import.meta.url).then(e=>e.javascript())}}),Ym.of({name:"JSON",alias:["json5"],extensions:["json","map"],load(){return Eo(()=>Promise.resolve().then(()=>V4n),void 0,import.meta.url).then(e=>e.json())}}),Ym.of({name:"JSX",extensions:["jsx"],load(){return Eo(()=>Promise.resolve().then(()=>d6),void 0,import.meta.url).then(e=>e.javascript({jsx:!0}))}}),Ym.of({name:"Markdown",extensions:["md","markdown","mkd"],load(){return Eo(()=>Promise.resolve().then(()=>L8n),void 0,import.meta.url).then(e=>e.markdown())}}),Ym.of({name:"TSX",extensions:["tsx"],load(){return Eo(()=>Promise.resolve().then(()=>d6),void 0,import.meta.url).then(e=>e.javascript({jsx:!0,typescript:!0}))}}),Ym.of({name:"TypeScript",alias:["ts"],extensions:["ts","mts","cts"],load(){return Eo(()=>Promise.resolve().then(()=>d6),void 0,import.meta.url).then(e=>e.javascript({typescript:!0}))}}),Ym.of({name:"Shell",alias:["bash","sh","zsh"],extensions:["sh","ksh","bash"],filename:/^PKGBUILD$/,load(){return Eo(()=>import("./shell-CjFT_Tl9.js"),[],import.meta.url).then(e=>uzn(e.shell))}})];function dzn(e,t=5){if(!e?.properties)return[];const n=[];function r(s,a,i){if(i>t)return;const l=Array.isArray(s.type)?s.type.join(" | "):s.type;if(n.push({path:a,label:a,description:s.description??s.title,type:l}),s.properties)for(const[c,u]of Object.entries(s.properties))r(u,`${a}.${c}`,i+1);if(s.items?.properties)for(const[c,u]of Object.entries(s.items.properties))r(u,`${a}[].${c}`,i+1)}for(const[s,a]of Object.entries(e.properties))r(a,s,1);return n}function fzn(e){const t=dzn(e);return uyt({override:[pzn(t)],defaultKeymap:!0,closeOnBlur:!0,icons:!1})}function pzn(e){return t=>{const r=t.state.sliceDoc(Math.max(0,t.pos-50),t.pos).match(/\{\{([a-zA-Z0-9_.\[\]]*)?$/);if(!r)return null;const s=r[1]??"",a=t.pos-s.length,i=s?e.filter(c=>c.path.toLowerCase().startsWith(s.toLowerCase())):e;if(i.length===0)return null;const l=i.map(c=>({label:c.path,displayLabel:c.path,detail:c.type,info:c.description,apply:(u,d,f,p)=>{const g=u.state.sliceDoc(p,p+2)==="}}"?d.label:`${d.label}}}`;u.dispatch({changes:{from:f,to:p,insert:g},selection:{anchor:f+g.length}})}}));return{from:a,options:l,validFor:/^[a-zA-Z0-9_.\[\]]*$/}}}const hzn=/\{\{([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)*)\}\}/g,mzn=Cn.mark({class:"cm-variable-highlight"}),S6e=new Ovt({regexp:hzn,decoration:()=>mzn}),gzn=yo.fromClass(class{decorations;constructor(e){this.decorations=S6e.createDeco(e)}update(e){this.decorations=S6e.updateDeco(e,this.decorations)}},{decorations:e=>e.decorations}),vzn=gzn;function yzn(){const e=DN({settings:{fontFamily:"var(--font-mono)",fontSize:"0.8rem",lineHighlight:"transparent",gutterBackground:"transparent",gutterForeground:"var(--neutral2)",background:"transparent",foreground:"var(--neutral6)",caret:"var(--neutral6)"},styles:[{tag:[fe.className,fe.propertyName],color:"var(--neutral6)"},{tag:fe.heading,color:"var(--accent3)",fontWeight:"bold"},{tag:[fe.heading1,fe.heading2,fe.heading3,fe.heading4,fe.heading5,fe.heading6],color:"var(--accent3)",fontWeight:"bold"},{tag:fe.emphasis,fontStyle:"italic",color:"var(--neutral6)"},{tag:fe.strong,fontWeight:"bold",color:"var(--neutral6)"},{tag:fe.link,color:"var(--accent3)",textDecoration:"underline"},{tag:fe.url,color:"var(--accent3)"},{tag:fe.monospace,color:"var(--neutral6)"},{tag:fe.strikethrough,textDecoration:"line-through"},{tag:fe.quote,fontStyle:"italic",color:"var(--neutral2)"}]}),t=Nt.theme({".cm-editor":{backgroundColor:"transparent"},".cm-content":{color:"var(--neutral6)",caretColor:"var(--neutral6)"},".cm-lineNumbers .cm-gutterElement":{color:"var(--neutral2)"},".cm-activeLineGutter":{color:"var(--neutral3)"},".cm-cursor":{borderLeftColor:"var(--neutral6)"},".cm-selectionBackground, .cm-content ::selection":{backgroundColor:"color-mix(in srgb, var(--accent3) 22%, transparent)"},".cm-tooltip-autocomplete":{backgroundColor:"var(--surface2)",border:"1px solid var(--border1)",borderRadius:"6px",boxShadow:"0 8px 16px rgba(0, 0, 0, 0.2)"},".cm-tooltip-autocomplete > ul":{fontFamily:"var(--font-mono)"},".cm-completionLabel":{color:"var(--neutral6)"},".cm-completionDetail":{color:"var(--neutral3)",fontSize:"0.7rem",marginLeft:"auto",paddingLeft:"12px"},".cm-completionInfo":{backgroundColor:"var(--surface2)",border:"1px solid var(--border1)",color:"var(--neutral3)",padding:"8px 12px"},".cm-completionIcon":{display:"none"},"ul.cm-completionList li[aria-selected]":{backgroundColor:"var(--surface4)",color:"var(--neutral6)"},".cm-line .cm-variable-highlight":{color:"var(--accent6) !important",fontWeight:"500"}});return[e,t]}function bzn(){const e=Nt.theme({"&":{backgroundColor:"transparent",color:"var(--neutral6)",fontSize:"0.8rem"},"&.cm-editor .cm-scroller":{fontFamily:"var(--font-mono)"},".cm-gutters":{backgroundColor:"transparent",color:"var(--neutral2)",borderRight:"none"},".cm-content":{color:"var(--neutral6)",caretColor:"var(--neutral6)"},".cm-activeLine":{backgroundColor:"transparent"},".cm-lineNumbers .cm-gutterElement":{color:"var(--neutral2)"},".cm-activeLineGutter":{backgroundColor:"transparent",color:"var(--neutral3)"},".cm-cursor, .cm-dropCursor":{borderLeftColor:"var(--neutral6)"},"&.cm-focused .cm-selectionBackground, & .cm-line::selection, & .cm-selectionLayer .cm-selectionBackground, .cm-content ::selection":{background:"color-mix(in srgb, var(--accent3) 22%, transparent) !important"},".cm-tooltip-autocomplete":{backgroundColor:"var(--surface2)",border:"1px solid var(--border1)",borderRadius:"6px",boxShadow:"0 8px 16px rgba(0, 0, 0, 0.2)"},".cm-tooltip-autocomplete > ul":{fontFamily:"var(--font-mono)"},".cm-completionLabel":{color:"var(--neutral6)"},".cm-completionDetail":{color:"var(--neutral3)",fontSize:"0.7rem",marginLeft:"auto",paddingLeft:"12px"},".cm-completionInfo":{backgroundColor:"var(--surface2)",border:"1px solid var(--border1)",color:"var(--neutral3)",padding:"8px 12px"},".cm-completionIcon":{display:"none"},"ul.cm-completionList li[aria-selected]":{backgroundColor:"var(--surface4)",color:"var(--neutral6)"},".cm-line .cm-variable-highlight":{color:"var(--accent6) !important",fontWeight:"500"}}),t=$g.define([{tag:[fe.comment,fe.bracket],color:"var(--neutral2)"},{tag:[fe.string,fe.meta,fe.regexp],color:"var(--accent1)"},{tag:[fe.atom,fe.bool,fe.special(fe.variableName)],color:"var(--accent6)"},{tag:[fe.keyword,fe.operator,fe.tagName],color:"var(--accent2)"},{tag:[fe.function(fe.propertyName),fe.propertyName],color:"var(--accent5)"},{tag:[fe.definition(fe.variableName),fe.function(fe.variableName),fe.className,fe.attributeName],color:"var(--accent3)"},{tag:[fe.variableName,fe.number],color:"var(--accent5)"},{tag:[fe.name,fe.quote],color:"var(--accent1)"},{tag:fe.heading,color:"var(--accent3)",fontWeight:"bold"},{tag:[fe.heading1,fe.heading2,fe.heading3,fe.heading4,fe.heading5,fe.heading6],color:"var(--accent3)",fontWeight:"bold"},{tag:[fe.emphasis],fontStyle:"italic",color:"var(--neutral6)"},{tag:[fe.strong],fontWeight:"bold",color:"var(--neutral6)"},{tag:fe.link,color:"var(--accent3)",textDecoration:"underline"},{tag:fe.url,color:"var(--accent3)"},{tag:fe.monospace,color:"var(--neutral6)"},{tag:fe.strikethrough,textDecoration:"line-through"},{tag:[fe.deleted],color:"var(--accent2)"},{tag:fe.invalid,color:"var(--error)"},{tag:[fe.standard(fe.tagName)],color:"var(--accent1)"}]);return[e,F1(t)]}const Py=()=>{const e=TN().resolvedTheme==="dark";return v.useMemo(()=>e?yzn():bzn(),[e])},Qr=v.forwardRef(({data:e,value:t,onChange:n,showCopyButton:r=!0,className:s,language:a="json",highlightVariables:i=!1,placeholder:l,schema:c,autoFocus:u,lineNumbers:d=!0,lineWrapping:f=!0,editable:p,...h},m)=>{const g=Py(),y=e?JSON.stringify(e,null,2):t??"",b=v.useMemo(()=>{const w=[];return f&&w.push(Nt.lineWrapping),a==="json"?w.push(of):a==="markdown"&&w.push(Gwe({base:EO,codeLanguages:yxt})),i&&a==="markdown"&&w.push(vzn),c&&a==="markdown"&&w.push(fzn(c)),p===!1&&w.push(os.readOnly.of(!0)),w},[a,i,c,p,f]);return o.jsxs("div",{className:K("rounded-md bg-surface3 p-1 font-mono relative border border-border1 overflow-hidden",s),...h,children:[r&&o.jsx(ba,{content:y,className:"absolute top-2 right-2 z-20"}),o.jsx(Kc,{ref:m,value:y,theme:g,extensions:b,onChange:n,editable:p,"aria-label":"Code editor",placeholder:l,height:"100%",style:{height:"100%"},autoFocus:u,basicSetup:{lineNumbers:d}})]})}),xzn={js:"javascript",javascript:"javascript",mjs:"javascript",cjs:"javascript",node:"javascript",ts:"typescript",typescript:"typescript",mts:"typescript",cts:"typescript",tsx:"tsx",jsx:"jsx",json:"json",json5:"json",md:"markdown",markdown:"markdown",py:"python",python:"python",sh:"bash",bash:"bash",shell:"bash",zsh:"bash"};let zK=null;function wzn(){return zK||(zK=(async()=>{const[{createHighlighterCore:e},{createJavaScriptRegexEngine:t}]=await Promise.all([Eo(()=>import("./core-QCZ49Nb8.js"),__vite__mapDeps([0,1,2]),import.meta.url),Eo(()=>import("./engine-javascript-CSIo_1eZ.js"),__vite__mapDeps([3,1]),import.meta.url)]);return e({themes:[Eo(()=>import("./github-light-DAi9KRSo.js"),[],import.meta.url),Eo(()=>import("./github-dark-DHJKELXO.js"),[],import.meta.url)],langs:[Eo(()=>import("./javascript-ySlJ1b_l.js"),[],import.meta.url),Eo(()=>import("./typescript-Dj6nwHGl.js"),[],import.meta.url),Eo(()=>import("./tsx-B6W0miNI.js"),[],import.meta.url),Eo(()=>import("./jsx-BAng5TT0.js"),[],import.meta.url),Eo(()=>import("./json-BQoSv7ci.js"),[],import.meta.url),Eo(()=>import("./bash-atvbtKCR.js"),[],import.meta.url),Eo(()=>import("./markdown-UIAJJxZW.js"),[],import.meta.url),Eo(()=>import("./python-DhUJRlN_.js"),[],import.meta.url)],engine:t()})})()),zK}async function Szn(e,t){const n=xzn[t?.toLowerCase()];if(!n)return null;const r=await wzn(),{tokens:s}=r.codeToTokens(e,{lang:n,defaultColor:!1,themes:{light:"github-light",dark:"github-dark"}});return s}const kzn=e=>{try{return JSON.stringify(e??{},null,2)}catch{return"{}"}},Ozn=({editorClassName:e="h-[240px] max-h-[40vh]",onSaved:t})=>{const n=Py(),{settings:r,setSettings:s}=Zq(),a=r?.tracingOptions,i=v.useMemo(()=>kzn(a),[a]),[l,c]=v.useState(()=>i),u=v.useRef(!1);v.useEffect(()=>{u.current||c(i)},[i]);const d=p=>{u.current=!0,c(p)},f=()=>{if(!l){s({...r,tracingOptions:void 0}),t?.();return}try{const p=JSON.parse(l);typeof p=="object"&&p!==null&&s({...r,tracingOptions:p})}catch{return}t?.()};return o.jsxs("div",{className:"space-y-2 px-5 py-2",children:[o.jsx(ge,{as:"h3",variant:"ui-md",className:"text-neutral3",children:"Tracing Options"}),o.jsx(Kc,{value:l,onChange:d,theme:n,extensions:[of],className:K("overflow-y-scroll bg-surface3 rounded-lg overflow-hidden p-3",e)}),o.jsx("div",{className:"flex items-center justify-end",children:o.jsx(de,{type:"button",onClick:f,children:"Save"})})]})},_zn=()=>{const[e,t]=v.useState(!1);return o.jsxs(o.Fragment,{children:[o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx(de,{type:"button",variant:"ghost",size:"icon-md","aria-label":"Run Options",onClick:()=>t(!0),children:o.jsx(Ue,{children:o.jsx(tbe,{})})})}),o.jsx(Bn,{children:"Run Options"})]}),o.jsx(br,{open:e,onOpenChange:t,children:o.jsxs(xr,{children:[o.jsxs(wr,{children:[o.jsx(gr,{children:"Run Options"}),o.jsx(Qs,{children:"Configure tracing and debug options for this workflow run"})]}),o.jsx(Ar,{children:o.jsx(Ozn,{onSaved:()=>t(!1)})})]})})]})};function Czn({status:e}){switch(e){case"running":return o.jsx(Qt,{});case"failed":return o.jsx(vs,{className:"text-accent2"});case"canceled":return o.jsx(xf,{className:"text-neutral3"});case"pending":case"waiting":return o.jsx(aO,{className:"text-neutral3"});case"suspended":return o.jsx(JU,{className:"text-accent3"});case"success":return o.jsx(Js,{className:"text-accent1"});default:return o.jsx(aO,{className:"text-neutral3"})}}function bxt({status:e}){return o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx(Ue,{"aria-label":e,className:"shrink-0",children:o.jsx(Czn,{status:e})})}),o.jsx(Bn,{children:e})]})}var BK,k6e;function r1e(){if(k6e)return BK;k6e=1;var e="\0",t="\0",n="";class r{_isDirected=!0;_isMultigraph=!1;_isCompound=!1;_label;_defaultNodeLabelFn=()=>{};_defaultEdgeLabelFn=()=>{};_nodes={};_in={};_preds={};_out={};_sucs={};_edgeObjs={};_edgeLabels={};_nodeCount=0;_edgeCount=0;_parent;_children;constructor(d){d&&(this._isDirected=Object.hasOwn(d,"directed")?d.directed:!0,this._isMultigraph=Object.hasOwn(d,"multigraph")?d.multigraph:!1,this._isCompound=Object.hasOwn(d,"compound")?d.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[t]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(d){return this._label=d,this}graph(){return this._label}setDefaultNodeLabel(d){return this._defaultNodeLabelFn=d,typeof d!="function"&&(this._defaultNodeLabelFn=()=>d),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var d=this;return this.nodes().filter(f=>Object.keys(d._in[f]).length===0)}sinks(){var d=this;return this.nodes().filter(f=>Object.keys(d._out[f]).length===0)}setNodes(d,f){var p=arguments,h=this;return d.forEach(function(m){p.length>1?h.setNode(m,f):h.setNode(m)}),this}setNode(d,f){return Object.hasOwn(this._nodes,d)?(arguments.length>1&&(this._nodes[d]=f),this):(this._nodes[d]=arguments.length>1?f:this._defaultNodeLabelFn(d),this._isCompound&&(this._parent[d]=t,this._children[d]={},this._children[t][d]=!0),this._in[d]={},this._preds[d]={},this._out[d]={},this._sucs[d]={},++this._nodeCount,this)}node(d){return this._nodes[d]}hasNode(d){return Object.hasOwn(this._nodes,d)}removeNode(d){var f=this;if(Object.hasOwn(this._nodes,d)){var p=h=>f.removeEdge(f._edgeObjs[h]);delete this._nodes[d],this._isCompound&&(this._removeFromParentsChildList(d),delete this._parent[d],this.children(d).forEach(function(h){f.setParent(h)}),delete this._children[d]),Object.keys(this._in[d]).forEach(p),delete this._in[d],delete this._preds[d],Object.keys(this._out[d]).forEach(p),delete this._out[d],delete this._sucs[d],--this._nodeCount}return this}setParent(d,f){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(f===void 0)f=t;else{f+="";for(var p=f;p!==void 0;p=this.parent(p))if(p===d)throw new Error("Setting "+f+" as parent of "+d+" would create a cycle");this.setNode(f)}return this.setNode(d),this._removeFromParentsChildList(d),this._parent[d]=f,this._children[f][d]=!0,this}_removeFromParentsChildList(d){delete this._children[this._parent[d]][d]}parent(d){if(this._isCompound){var f=this._parent[d];if(f!==t)return f}}children(d=t){if(this._isCompound){var f=this._children[d];if(f)return Object.keys(f)}else{if(d===t)return this.nodes();if(this.hasNode(d))return[]}}predecessors(d){var f=this._preds[d];if(f)return Object.keys(f)}successors(d){var f=this._sucs[d];if(f)return Object.keys(f)}neighbors(d){var f=this.predecessors(d);if(f){const h=new Set(f);for(var p of this.successors(d))h.add(p);return Array.from(h.values())}}isLeaf(d){var f;return this.isDirected()?f=this.successors(d):f=this.neighbors(d),f.length===0}filterNodes(d){var f=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});f.setGraph(this.graph());var p=this;Object.entries(this._nodes).forEach(function([g,y]){d(g)&&f.setNode(g,y)}),Object.values(this._edgeObjs).forEach(function(g){f.hasNode(g.v)&&f.hasNode(g.w)&&f.setEdge(g,p.edge(g))});var h={};function m(g){var y=p.parent(g);return y===void 0||f.hasNode(y)?(h[g]=y,y):y in h?h[y]:m(y)}return this._isCompound&&f.nodes().forEach(g=>f.setParent(g,m(g))),f}setDefaultEdgeLabel(d){return this._defaultEdgeLabelFn=d,typeof d!="function"&&(this._defaultEdgeLabelFn=()=>d),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(d,f){var p=this,h=arguments;return d.reduce(function(m,g){return h.length>1?p.setEdge(m,g,f):p.setEdge(m,g),g}),this}setEdge(){var d,f,p,h,m=!1,g=arguments[0];typeof g=="object"&&g!==null&&"v"in g?(d=g.v,f=g.w,p=g.name,arguments.length===2&&(h=arguments[1],m=!0)):(d=g,f=arguments[1],p=arguments[3],arguments.length>2&&(h=arguments[2],m=!0)),d=""+d,f=""+f,p!==void 0&&(p=""+p);var y=i(this._isDirected,d,f,p);if(Object.hasOwn(this._edgeLabels,y))return m&&(this._edgeLabels[y]=h),this;if(p!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(d),this.setNode(f),this._edgeLabels[y]=m?h:this._defaultEdgeLabelFn(d,f,p);var b=l(this._isDirected,d,f,p);return d=b.v,f=b.w,Object.freeze(b),this._edgeObjs[y]=b,s(this._preds[f],d),s(this._sucs[d],f),this._in[f][y]=b,this._out[d][y]=b,this._edgeCount++,this}edge(d,f,p){var h=arguments.length===1?c(this._isDirected,arguments[0]):i(this._isDirected,d,f,p);return this._edgeLabels[h]}edgeAsObj(){const d=this.edge(...arguments);return typeof d!="object"?{label:d}:d}hasEdge(d,f,p){var h=arguments.length===1?c(this._isDirected,arguments[0]):i(this._isDirected,d,f,p);return Object.hasOwn(this._edgeLabels,h)}removeEdge(d,f,p){var h=arguments.length===1?c(this._isDirected,arguments[0]):i(this._isDirected,d,f,p),m=this._edgeObjs[h];return m&&(d=m.v,f=m.w,delete this._edgeLabels[h],delete this._edgeObjs[h],a(this._preds[f],d),a(this._sucs[d],f),delete this._in[f][h],delete this._out[d][h],this._edgeCount--),this}inEdges(d,f){var p=this._in[d];if(p){var h=Object.values(p);return f?h.filter(m=>m.v===f):h}}outEdges(d,f){var p=this._out[d];if(p){var h=Object.values(p);return f?h.filter(m=>m.w===f):h}}nodeEdges(d,f){var p=this.inEdges(d,f);if(p)return p.concat(this.outEdges(d,f))}}function s(u,d){u[d]?u[d]++:u[d]=1}function a(u,d){--u[d]||delete u[d]}function i(u,d,f,p){var h=""+d,m=""+f;if(!u&&h>m){var g=h;h=m,m=g}return h+n+m+n+(p===void 0?e:p)}function l(u,d,f,p){var h=""+d,m=""+f;if(!u&&h>m){var g=h;h=m,m=g}var y={v:h,w:m};return p&&(y.name=p),y}function c(u,d){return i(u,d.v,d.w,d.name)}return BK=r,BK}var UK,O6e;function Ezn(){return O6e||(O6e=1,UK="2.2.4"),UK}var qK,_6e;function jzn(){return _6e||(_6e=1,qK={Graph:r1e(),version:Ezn()}),qK}var VK,C6e;function Tzn(){if(C6e)return VK;C6e=1;var e=r1e();VK={write:t,read:s};function t(a){var i={options:{directed:a.isDirected(),multigraph:a.isMultigraph(),compound:a.isCompound()},nodes:n(a),edges:r(a)};return a.graph()!==void 0&&(i.value=structuredClone(a.graph())),i}function n(a){return a.nodes().map(function(i){var l=a.node(i),c=a.parent(i),u={v:i};return l!==void 0&&(u.value=l),c!==void 0&&(u.parent=c),u})}function r(a){return a.edges().map(function(i){var l=a.edge(i),c={v:i.v,w:i.w};return i.name!==void 0&&(c.name=i.name),l!==void 0&&(c.value=l),c})}function s(a){var i=new e(a.options).setGraph(a.value);return a.nodes.forEach(function(l){i.setNode(l.v,l.value),l.parent&&i.setParent(l.v,l.parent)}),a.edges.forEach(function(l){i.setEdge({v:l.v,w:l.w,name:l.name},l.value)}),i}return VK}var HK,E6e;function Nzn(){if(E6e)return HK;E6e=1,HK=e;function e(t){var n={},r=[],s;function a(i){Object.hasOwn(n,i)||(n[i]=!0,s.push(i),t.successors(i).forEach(a),t.predecessors(i).forEach(a))}return t.nodes().forEach(function(i){s=[],a(i),s.length&&r.push(s)}),r}return HK}var WK,j6e;function xxt(){if(j6e)return WK;j6e=1;class e{_arr=[];_keyIndices={};size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var r=this._keyIndices[n];if(r!==void 0)return this._arr[r].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,r){var s=this._keyIndices;if(n=String(n),!Object.hasOwn(s,n)){var a=this._arr,i=a.length;return s[n]=i,a.push({key:n,priority:r}),this._decrease(i),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,r){var s=this._keyIndices[n];if(r>this._arr[s].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[s].priority+" New: "+r);this._arr[s].priority=r,this._decrease(s)}_heapify(n){var r=this._arr,s=2*n,a=s+1,i=n;s<r.length&&(i=r[s].priority<r[i].priority?s:i,a<r.length&&(i=r[a].priority<r[i].priority?a:i),i!==n&&(this._swap(n,i),this._heapify(i)))}_decrease(n){for(var r=this._arr,s=r[n].priority,a;n!==0&&(a=n>>1,!(r[a].priority<s));)this._swap(n,a),n=a}_swap(n,r){var s=this._arr,a=this._keyIndices,i=s[n],l=s[r];s[n]=l,s[r]=i,a[l.key]=n,a[i.key]=r}}return WK=e,WK}var ZK,T6e;function wxt(){if(T6e)return ZK;T6e=1;var e=xxt();ZK=n;var t=()=>1;function n(s,a,i,l){return r(s,String(a),i||t,l||function(c){return s.outEdges(c)})}function r(s,a,i,l){var c={},u=new e,d,f,p=function(h){var m=h.v!==d?h.v:h.w,g=c[m],y=i(h),b=f.distance+y;if(y<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+h+" Weight: "+y);b<g.distance&&(g.distance=b,g.predecessor=d,u.decrease(m,b))};for(s.nodes().forEach(function(h){var m=h===a?0:Number.POSITIVE_INFINITY;c[h]={distance:m},u.add(h,m)});u.size()>0&&(d=u.removeMin(),f=c[d],f.distance!==Number.POSITIVE_INFINITY);)l(d).forEach(p);return c}return ZK}var GK,N6e;function Izn(){if(N6e)return GK;N6e=1;var e=wxt();GK=t;function t(n,r,s){return n.nodes().reduce(function(a,i){return a[i]=e(n,i,r,s),a},{})}return GK}var QK,I6e;function Sxt(){if(I6e)return QK;I6e=1,QK=e;function e(t){var n=0,r=[],s={},a=[];function i(l){var c=s[l]={onStack:!0,lowlink:n,index:n++};if(r.push(l),t.successors(l).forEach(function(f){Object.hasOwn(s,f)?s[f].onStack&&(c.lowlink=Math.min(c.lowlink,s[f].index)):(i(f),c.lowlink=Math.min(c.lowlink,s[f].lowlink))}),c.lowlink===c.index){var u=[],d;do d=r.pop(),s[d].onStack=!1,u.push(d);while(l!==d);a.push(u)}}return t.nodes().forEach(function(l){Object.hasOwn(s,l)||i(l)}),a}return QK}var YK,A6e;function Azn(){if(A6e)return YK;A6e=1;var e=Sxt();YK=t;function t(n){return e(n).filter(function(r){return r.length>1||r.length===1&&n.hasEdge(r[0],r[0])})}return YK}var XK,R6e;function Rzn(){if(R6e)return XK;R6e=1,XK=t;var e=()=>1;function t(r,s,a){return n(r,s||e,a||function(i){return r.outEdges(i)})}function n(r,s,a){var i={},l=r.nodes();return l.forEach(function(c){i[c]={},i[c][c]={distance:0},l.forEach(function(u){c!==u&&(i[c][u]={distance:Number.POSITIVE_INFINITY})}),a(c).forEach(function(u){var d=u.v===c?u.w:u.v,f=s(u);i[c][d]={distance:f,predecessor:c}})}),l.forEach(function(c){var u=i[c];l.forEach(function(d){var f=i[d];l.forEach(function(p){var h=f[c],m=u[p],g=f[p],y=h.distance+m.distance;y<g.distance&&(g.distance=y,g.predecessor=m.predecessor)})})}),i}return XK}var KK,P6e;function kxt(){if(P6e)return KK;P6e=1;function e(n){var r={},s={},a=[];function i(l){if(Object.hasOwn(s,l))throw new t;Object.hasOwn(r,l)||(s[l]=!0,r[l]=!0,n.predecessors(l).forEach(i),delete s[l],a.push(l))}if(n.sinks().forEach(i),Object.keys(r).length!==n.nodeCount())throw new t;return a}class t extends Error{constructor(){super(...arguments)}}return KK=e,e.CycleException=t,KK}var JK,$6e;function Pzn(){if($6e)return JK;$6e=1;var e=kxt();JK=t;function t(n){try{e(n)}catch(r){if(r instanceof e.CycleException)return!1;throw r}return!0}return JK}var eJ,M6e;function Oxt(){if(M6e)return eJ;M6e=1,eJ=e;function e(s,a,i){Array.isArray(a)||(a=[a]);var l=s.isDirected()?f=>s.successors(f):f=>s.neighbors(f),c=i==="post"?t:n,u=[],d={};return a.forEach(f=>{if(!s.hasNode(f))throw new Error("Graph does not have node: "+f);c(f,l,d,u)}),u}function t(s,a,i,l){for(var c=[[s,!1]];c.length>0;){var u=c.pop();u[1]?l.push(u[0]):Object.hasOwn(i,u[0])||(i[u[0]]=!0,c.push([u[0],!0]),r(a(u[0]),d=>c.push([d,!1])))}}function n(s,a,i,l){for(var c=[s];c.length>0;){var u=c.pop();Object.hasOwn(i,u)||(i[u]=!0,l.push(u),r(a(u),d=>c.push(d)))}}function r(s,a){for(var i=s.length;i--;)a(s[i],i,s);return s}return eJ}var tJ,D6e;function $zn(){if(D6e)return tJ;D6e=1;var e=Oxt();tJ=t;function t(n,r){return e(n,r,"post")}return tJ}var nJ,L6e;function Mzn(){if(L6e)return nJ;L6e=1;var e=Oxt();nJ=t;function t(n,r){return e(n,r,"pre")}return nJ}var rJ,F6e;function Dzn(){if(F6e)return rJ;F6e=1;var e=r1e(),t=xxt();rJ=n;function n(r,s){var a=new e,i={},l=new t,c;function u(f){var p=f.v===c?f.w:f.v,h=l.priority(p);if(h!==void 0){var m=s(f);m<h&&(i[p]=c,l.decrease(p,m))}}if(r.nodeCount()===0)return a;r.nodes().forEach(function(f){l.add(f,Number.POSITIVE_INFINITY),a.setNode(f)}),l.decrease(r.nodes()[0],0);for(var d=!1;l.size()>0;){if(c=l.removeMin(),Object.hasOwn(i,c))a.setEdge(c,i[c]);else{if(d)throw new Error("Input graph is not connected: "+r);d=!0}r.nodeEdges(c).forEach(u)}return a}return rJ}var sJ,z6e;function Lzn(){return z6e||(z6e=1,sJ={components:Nzn(),dijkstra:wxt(),dijkstraAll:Izn(),findCycles:Azn(),floydWarshall:Rzn(),isAcyclic:Pzn(),postorder:$zn(),preorder:Mzn(),prim:Dzn(),tarjan:Sxt(),topsort:kxt()}),sJ}var aJ,B6e;function Eg(){if(B6e)return aJ;B6e=1;var e=jzn();return aJ={Graph:e.Graph,json:Tzn(),alg:Lzn(),version:e.version},aJ}var iJ,U6e;function Fzn(){if(U6e)return iJ;U6e=1;class e{constructor(){let s={};s._next=s._prev=s,this._sentinel=s}dequeue(){let s=this._sentinel,a=s._prev;if(a!==s)return t(a),a}enqueue(s){let a=this._sentinel;s._prev&&s._next&&t(s),s._next=a._next,a._next._prev=s,a._next=s,s._prev=a}toString(){let s=[],a=this._sentinel,i=a._prev;for(;i!==a;)s.push(JSON.stringify(i,n)),i=i._prev;return"["+s.join(", ")+"]"}}function t(r){r._prev._next=r._next,r._next._prev=r._prev,delete r._next,delete r._prev}function n(r,s){if(r!=="_next"&&r!=="_prev")return s}return iJ=e,iJ}var oJ,q6e;function zzn(){if(q6e)return oJ;q6e=1;let e=Eg().Graph,t=Fzn();oJ=r;let n=()=>1;function r(u,d){if(u.nodeCount()<=1)return[];let f=i(u,d||n);return s(f.graph,f.buckets,f.zeroIdx).flatMap(h=>u.outEdges(h.v,h.w))}function s(u,d,f){let p=[],h=d[d.length-1],m=d[0],g;for(;u.nodeCount();){for(;g=m.dequeue();)a(u,d,f,g);for(;g=h.dequeue();)a(u,d,f,g);if(u.nodeCount()){for(let y=d.length-2;y>0;--y)if(g=d[y].dequeue(),g){p=p.concat(a(u,d,f,g,!0));break}}}return p}function a(u,d,f,p,h){let m=h?[]:void 0;return u.inEdges(p.v).forEach(g=>{let y=u.edge(g),b=u.node(g.v);h&&m.push({v:g.v,w:g.w}),b.out-=y,l(d,f,b)}),u.outEdges(p.v).forEach(g=>{let y=u.edge(g),b=g.w,w=u.node(b);w.in-=y,l(d,f,w)}),u.removeNode(p.v),m}function i(u,d){let f=new e,p=0,h=0;u.nodes().forEach(y=>{f.setNode(y,{v:y,in:0,out:0})}),u.edges().forEach(y=>{let b=f.edge(y.v,y.w)||0,w=d(y),S=b+w;f.setEdge(y.v,y.w,S),h=Math.max(h,f.node(y.v).out+=w),p=Math.max(p,f.node(y.w).in+=w)});let m=c(h+p+3).map(()=>new t),g=p+1;return f.nodes().forEach(y=>{l(m,g,f.node(y))}),{graph:f,buckets:m,zeroIdx:g}}function l(u,d,f){f.out?f.in?u[f.out-f.in+d].enqueue(f):u[u.length-1].enqueue(f):u[0].enqueue(f)}function c(u){const d=[];for(let f=0;f<u;f++)d.push(f);return d}return oJ}var lJ,V6e;function jl(){if(V6e)return lJ;V6e=1;let e=Eg().Graph;lJ={addBorderNode:d,addDummyNode:t,applyWithChunking:h,asNonCompoundGraph:r,buildLayerMatrix:l,intersectRect:i,mapValues:C,maxRank:m,normalizeRanks:c,notime:b,partition:g,pick:_,predecessorWeights:a,range:k,removeEmptyRanks:u,simplify:n,successorWeights:s,time:y,uniqueId:S,zipObject:E};function t(j,N,I,P){for(var $=P;j.hasNode($);)$=S(P);return I.dummy=N,j.setNode($,I),$}function n(j){let N=new e().setGraph(j.graph());return j.nodes().forEach(I=>N.setNode(I,j.node(I))),j.edges().forEach(I=>{let P=N.edge(I.v,I.w)||{weight:0,minlen:1},$=j.edge(I);N.setEdge(I.v,I.w,{weight:P.weight+$.weight,minlen:Math.max(P.minlen,$.minlen)})}),N}function r(j){let N=new e({multigraph:j.isMultigraph()}).setGraph(j.graph());return j.nodes().forEach(I=>{j.children(I).length||N.setNode(I,j.node(I))}),j.edges().forEach(I=>{N.setEdge(I,j.edge(I))}),N}function s(j){let N=j.nodes().map(I=>{let P={};return j.outEdges(I).forEach($=>{P[$.w]=(P[$.w]||0)+j.edge($).weight}),P});return E(j.nodes(),N)}function a(j){let N=j.nodes().map(I=>{let P={};return j.inEdges(I).forEach($=>{P[$.v]=(P[$.v]||0)+j.edge($).weight}),P});return E(j.nodes(),N)}function i(j,N){let I=j.x,P=j.y,$=N.x-I,F=N.y-P,D=j.width/2,V=j.height/2;if(!$&&!F)throw new Error("Not possible to find intersection inside of the rectangle");let W,L;return Math.abs(F)*D>Math.abs($)*V?(F<0&&(V=-V),W=V*$/F,L=V):($<0&&(D=-D),W=D,L=D*F/$),{x:I+W,y:P+L}}function l(j){let N=k(m(j)+1).map(()=>[]);return j.nodes().forEach(I=>{let P=j.node(I),$=P.rank;$!==void 0&&(N[$][P.order]=I)}),N}function c(j){let N=j.nodes().map(P=>{let $=j.node(P).rank;return $===void 0?Number.MAX_VALUE:$}),I=h(Math.min,N);j.nodes().forEach(P=>{let $=j.node(P);Object.hasOwn($,"rank")&&($.rank-=I)})}function u(j){let N=j.nodes().map(D=>j.node(D).rank),I=h(Math.min,N),P=[];j.nodes().forEach(D=>{let V=j.node(D).rank-I;P[V]||(P[V]=[]),P[V].push(D)});let $=0,F=j.graph().nodeRankFactor;Array.from(P).forEach((D,V)=>{D===void 0&&V%F!==0?--$:D!==void 0&&$&&D.forEach(W=>j.node(W).rank+=$)})}function d(j,N,I,P){let $={width:0,height:0};return arguments.length>=4&&($.rank=I,$.order=P),t(j,"border",$,N)}function f(j,N=p){const I=[];for(let P=0;P<j.length;P+=N){const $=j.slice(P,P+N);I.push($)}return I}const p=65535;function h(j,N){if(N.length>p){const I=f(N);return j.apply(null,I.map(P=>j.apply(null,P)))}else return j.apply(null,N)}function m(j){const I=j.nodes().map(P=>{let $=j.node(P).rank;return $===void 0?Number.MIN_VALUE:$});return h(Math.max,I)}function g(j,N){let I={lhs:[],rhs:[]};return j.forEach(P=>{N(P)?I.lhs.push(P):I.rhs.push(P)}),I}function y(j,N){let I=Date.now();try{return N()}finally{console.log(j+" time: "+(Date.now()-I)+"ms")}}function b(j,N){return N()}let w=0;function S(j){var N=++w;return j+(""+N)}function k(j,N,I=1){N==null&&(N=j,j=0);let P=F=>F<N;I<0&&(P=F=>N<F);const $=[];for(let F=j;P(F);F+=I)$.push(F);return $}function _(j,N){const I={};for(const P of N)j[P]!==void 0&&(I[P]=j[P]);return I}function C(j,N){let I=N;return typeof N=="string"&&(I=P=>P[N]),Object.entries(j).reduce((P,[$,F])=>(P[$]=I(F,$),P),{})}function E(j,N){return j.reduce((I,P,$)=>(I[P]=N[$],I),{})}return lJ}var cJ,H6e;function Bzn(){if(H6e)return cJ;H6e=1;let e=zzn(),t=jl().uniqueId;cJ={run:n,undo:s};function n(a){(a.graph().acyclicer==="greedy"?e(a,l(a)):r(a)).forEach(c=>{let u=a.edge(c);a.removeEdge(c),u.forwardName=c.name,u.reversed=!0,a.setEdge(c.w,c.v,u,t("rev"))});function l(c){return u=>c.edge(u).weight}}function r(a){let i=[],l={},c={};function u(d){Object.hasOwn(c,d)||(c[d]=!0,l[d]=!0,a.outEdges(d).forEach(f=>{Object.hasOwn(l,f.w)?i.push(f):u(f.w)}),delete l[d])}return a.nodes().forEach(u),i}function s(a){a.edges().forEach(i=>{let l=a.edge(i);if(l.reversed){a.removeEdge(i);let c=l.forwardName;delete l.reversed,delete l.forwardName,a.setEdge(i.w,i.v,l,c)}})}return cJ}var uJ,W6e;function Uzn(){if(W6e)return uJ;W6e=1;let e=jl();uJ={run:t,undo:r};function t(s){s.graph().dummyChains=[],s.edges().forEach(a=>n(s,a))}function n(s,a){let i=a.v,l=s.node(i).rank,c=a.w,u=s.node(c).rank,d=a.name,f=s.edge(a),p=f.labelRank;if(u===l+1)return;s.removeEdge(a);let h,m,g;for(g=0,++l;l<u;++g,++l)f.points=[],m={width:0,height:0,edgeLabel:f,edgeObj:a,rank:l},h=e.addDummyNode(s,"edge",m,"_d"),l===p&&(m.width=f.width,m.height=f.height,m.dummy="edge-label",m.labelpos=f.labelpos),s.setEdge(i,h,{weight:f.weight},d),g===0&&s.graph().dummyChains.push(h),i=h;s.setEdge(i,c,{weight:f.weight},d)}function r(s){s.graph().dummyChains.forEach(a=>{let i=s.node(a),l=i.edgeLabel,c;for(s.setEdge(i.edgeObj,l);i.dummy;)c=s.successors(a)[0],s.removeNode(a),l.points.push({x:i.x,y:i.y}),i.dummy==="edge-label"&&(l.x=i.x,l.y=i.y,l.width=i.width,l.height=i.height),a=c,i=s.node(a)})}return uJ}var dJ,Z6e;function x7(){if(Z6e)return dJ;Z6e=1;const{applyWithChunking:e}=jl();dJ={longestPath:t,slack:n};function t(r){var s={};function a(i){var l=r.node(i);if(Object.hasOwn(s,i))return l.rank;s[i]=!0;let c=r.outEdges(i).map(d=>d==null?Number.POSITIVE_INFINITY:a(d.w)-r.edge(d).minlen);var u=e(Math.min,c);return u===Number.POSITIVE_INFINITY&&(u=0),l.rank=u}r.sources().forEach(a)}function n(r,s){return r.node(s.w).rank-r.node(s.v).rank-r.edge(s).minlen}return dJ}var fJ,G6e;function _xt(){if(G6e)return fJ;G6e=1;var e=Eg().Graph,t=x7().slack;fJ=n;function n(i){var l=new e({directed:!1}),c=i.nodes()[0],u=i.nodeCount();l.setNode(c,{});for(var d,f;r(l,i)<u;)d=s(l,i),f=l.hasNode(d.v)?t(i,d):-t(i,d),a(l,i,f);return l}function r(i,l){function c(u){l.nodeEdges(u).forEach(d=>{var f=d.v,p=u===f?d.w:f;!i.hasNode(p)&&!t(l,d)&&(i.setNode(p,{}),i.setEdge(u,p,{}),c(p))})}return i.nodes().forEach(c),i.nodeCount()}function s(i,l){return l.edges().reduce((u,d)=>{let f=Number.POSITIVE_INFINITY;return i.hasNode(d.v)!==i.hasNode(d.w)&&(f=t(l,d)),f<u[0]?[f,d]:u},[Number.POSITIVE_INFINITY,null])[1]}function a(i,l,c){i.nodes().forEach(u=>l.node(u).rank+=c)}return fJ}var pJ,Q6e;function qzn(){if(Q6e)return pJ;Q6e=1;var e=_xt(),t=x7().slack,n=x7().longestPath,r=Eg().alg.preorder,s=Eg().alg.postorder,a=jl().simplify;pJ=i,i.initLowLimValues=d,i.initCutValues=l,i.calcCutValue=u,i.leaveEdge=p,i.enterEdge=h,i.exchangeEdges=m;function i(w){w=a(w),n(w);var S=e(w);d(S),l(S,w);for(var k,_;k=p(S);)_=h(S,w,k),m(S,w,k,_)}function l(w,S){var k=s(w,w.nodes());k=k.slice(0,k.length-1),k.forEach(_=>c(w,S,_))}function c(w,S,k){var _=w.node(k),C=_.parent;w.edge(k,C).cutvalue=u(w,S,k)}function u(w,S,k){var _=w.node(k),C=_.parent,E=!0,j=S.edge(k,C),N=0;return j||(E=!1,j=S.edge(C,k)),N=j.weight,S.nodeEdges(k).forEach(I=>{var P=I.v===k,$=P?I.w:I.v;if($!==C){var F=P===E,D=S.edge(I).weight;if(N+=F?D:-D,y(w,k,$)){var V=w.edge(k,$).cutvalue;N+=F?-V:V}}}),N}function d(w,S){arguments.length<2&&(S=w.nodes()[0]),f(w,{},1,S)}function f(w,S,k,_,C){var E=k,j=w.node(_);return S[_]=!0,w.neighbors(_).forEach(N=>{Object.hasOwn(S,N)||(k=f(w,S,k,N,_))}),j.low=E,j.lim=k++,C?j.parent=C:delete j.parent,k}function p(w){return w.edges().find(S=>w.edge(S).cutvalue<0)}function h(w,S,k){var _=k.v,C=k.w;S.hasEdge(_,C)||(_=k.w,C=k.v);var E=w.node(_),j=w.node(C),N=E,I=!1;E.lim>j.lim&&(N=j,I=!0);var P=S.edges().filter($=>I===b(w,w.node($.v),N)&&I!==b(w,w.node($.w),N));return P.reduce(($,F)=>t(S,F)<t(S,$)?F:$)}function m(w,S,k,_){var C=k.v,E=k.w;w.removeEdge(C,E),w.setEdge(_.v,_.w,{}),d(w),l(w,S),g(w,S)}function g(w,S){var k=w.nodes().find(C=>!S.node(C).parent),_=r(w,k);_=_.slice(1),_.forEach(C=>{var E=w.node(C).parent,j=S.edge(C,E),N=!1;j||(j=S.edge(E,C),N=!0),S.node(C).rank=S.node(E).rank+(N?j.minlen:-j.minlen)})}function y(w,S,k){return w.hasEdge(S,k)}function b(w,S,k){return k.low<=S.lim&&S.lim<=k.lim}return pJ}var hJ,Y6e;function Vzn(){if(Y6e)return hJ;Y6e=1;var e=x7(),t=e.longestPath,n=_xt(),r=qzn();hJ=s;function s(c){var u=c.graph().ranker;if(u instanceof Function)return u(c);switch(c.graph().ranker){case"network-simplex":l(c);break;case"tight-tree":i(c);break;case"longest-path":a(c);break;case"none":break;default:l(c)}}var a=t;function i(c){t(c),n(c)}function l(c){r(c)}return hJ}var mJ,X6e;function Hzn(){if(X6e)return mJ;X6e=1,mJ=e;function e(r){let s=n(r);r.graph().dummyChains.forEach(a=>{let i=r.node(a),l=i.edgeObj,c=t(r,s,l.v,l.w),u=c.path,d=c.lca,f=0,p=u[f],h=!0;for(;a!==l.w;){if(i=r.node(a),h){for(;(p=u[f])!==d&&r.node(p).maxRank<i.rank;)f++;p===d&&(h=!1)}if(!h){for(;f<u.length-1&&r.node(p=u[f+1]).minRank<=i.rank;)f++;p=u[f]}r.setParent(a,p),a=r.successors(a)[0]}})}function t(r,s,a,i){let l=[],c=[],u=Math.min(s[a].low,s[i].low),d=Math.max(s[a].lim,s[i].lim),f,p;f=a;do f=r.parent(f),l.push(f);while(f&&(s[f].low>u||d>s[f].lim));for(p=f,f=i;(f=r.parent(f))!==p;)c.push(f);return{path:l.concat(c.reverse()),lca:p}}function n(r){let s={},a=0;function i(l){let c=a;r.children(l).forEach(i),s[l]={low:c,lim:a++}}return r.children().forEach(i),s}return mJ}var gJ,K6e;function Wzn(){if(K6e)return gJ;K6e=1;let e=jl();gJ={run:t,cleanup:a};function t(i){let l=e.addDummyNode(i,"root",{},"_root"),c=r(i),u=Object.values(c),d=e.applyWithChunking(Math.max,u)-1,f=2*d+1;i.graph().nestingRoot=l,i.edges().forEach(h=>i.edge(h).minlen*=f);let p=s(i)+1;i.children().forEach(h=>n(i,l,f,p,d,c,h)),i.graph().nodeRankFactor=f}function n(i,l,c,u,d,f,p){let h=i.children(p);if(!h.length){p!==l&&i.setEdge(l,p,{weight:0,minlen:c});return}let m=e.addBorderNode(i,"_bt"),g=e.addBorderNode(i,"_bb"),y=i.node(p);i.setParent(m,p),y.borderTop=m,i.setParent(g,p),y.borderBottom=g,h.forEach(b=>{n(i,l,c,u,d,f,b);let w=i.node(b),S=w.borderTop?w.borderTop:b,k=w.borderBottom?w.borderBottom:b,_=w.borderTop?u:2*u,C=S!==k?1:d-f[p]+1;i.setEdge(m,S,{weight:_,minlen:C,nestingEdge:!0}),i.setEdge(k,g,{weight:_,minlen:C,nestingEdge:!0})}),i.parent(p)||i.setEdge(l,m,{weight:0,minlen:d+f[p]})}function r(i){var l={};function c(u,d){var f=i.children(u);f&&f.length&&f.forEach(p=>c(p,d+1)),l[u]=d}return i.children().forEach(u=>c(u,1)),l}function s(i){return i.edges().reduce((l,c)=>l+i.edge(c).weight,0)}function a(i){var l=i.graph();i.removeNode(l.nestingRoot),delete l.nestingRoot,i.edges().forEach(c=>{var u=i.edge(c);u.nestingEdge&&i.removeEdge(c)})}return gJ}var vJ,J6e;function Zzn(){if(J6e)return vJ;J6e=1;let e=jl();vJ=t;function t(r){function s(a){let i=r.children(a),l=r.node(a);if(i.length&&i.forEach(s),Object.hasOwn(l,"minRank")){l.borderLeft=[],l.borderRight=[];for(let c=l.minRank,u=l.maxRank+1;c<u;++c)n(r,"borderLeft","_bl",a,l,c),n(r,"borderRight","_br",a,l,c)}}r.children().forEach(s)}function n(r,s,a,i,l,c){let u={width:0,height:0,rank:c,borderType:s},d=l[s][c-1],f=e.addDummyNode(r,"border",u,a);l[s][c]=f,r.setParent(f,i),d&&r.setEdge(d,f,{weight:1})}return vJ}var yJ,e8e;function Gzn(){if(e8e)return yJ;e8e=1,yJ={adjust:e,undo:t};function e(c){let u=c.graph().rankdir.toLowerCase();(u==="lr"||u==="rl")&&n(c)}function t(c){let u=c.graph().rankdir.toLowerCase();(u==="bt"||u==="rl")&&s(c),(u==="lr"||u==="rl")&&(i(c),n(c))}function n(c){c.nodes().forEach(u=>r(c.node(u))),c.edges().forEach(u=>r(c.edge(u)))}function r(c){let u=c.width;c.width=c.height,c.height=u}function s(c){c.nodes().forEach(u=>a(c.node(u))),c.edges().forEach(u=>{let d=c.edge(u);d.points.forEach(a),Object.hasOwn(d,"y")&&a(d)})}function a(c){c.y=-c.y}function i(c){c.nodes().forEach(u=>l(c.node(u))),c.edges().forEach(u=>{let d=c.edge(u);d.points.forEach(l),Object.hasOwn(d,"x")&&l(d)})}function l(c){let u=c.x;c.x=c.y,c.y=u}return yJ}var bJ,t8e;function Qzn(){if(t8e)return bJ;t8e=1;let e=jl();bJ=t;function t(n){let r={},s=n.nodes().filter(d=>!n.children(d).length),a=s.map(d=>n.node(d).rank),i=e.applyWithChunking(Math.max,a),l=e.range(i+1).map(()=>[]);function c(d){if(r[d])return;r[d]=!0;let f=n.node(d);l[f.rank].push(d),n.successors(d).forEach(c)}return s.sort((d,f)=>n.node(d).rank-n.node(f).rank).forEach(c),l}return bJ}var xJ,n8e;function Yzn(){if(n8e)return xJ;n8e=1;let e=jl().zipObject;xJ=t;function t(r,s){let a=0;for(let i=1;i<s.length;++i)a+=n(r,s[i-1],s[i]);return a}function n(r,s,a){let i=e(a,a.map((p,h)=>h)),l=s.flatMap(p=>r.outEdges(p).map(h=>({pos:i[h.w],weight:r.edge(h).weight})).sort((h,m)=>h.pos-m.pos)),c=1;for(;c<a.length;)c<<=1;let u=2*c-1;c-=1;let d=new Array(u).fill(0),f=0;return l.forEach(p=>{let h=p.pos+c;d[h]+=p.weight;let m=0;for(;h>0;)h%2&&(m+=d[h+1]),h=h-1>>1,d[h]+=p.weight;f+=p.weight*m}),f}return xJ}var wJ,r8e;function Xzn(){if(r8e)return wJ;r8e=1,wJ=e;function e(t,n=[]){return n.map(r=>{let s=t.inEdges(r);if(s.length){let a=s.reduce((i,l)=>{let c=t.edge(l),u=t.node(l.v);return{sum:i.sum+c.weight*u.order,weight:i.weight+c.weight}},{sum:0,weight:0});return{v:r,barycenter:a.sum/a.weight,weight:a.weight}}else return{v:r}})}return wJ}var SJ,s8e;function Kzn(){if(s8e)return SJ;s8e=1;let e=jl();SJ=t;function t(s,a){let i={};s.forEach((c,u)=>{let d=i[c.v]={indegree:0,in:[],out:[],vs:[c.v],i:u};c.barycenter!==void 0&&(d.barycenter=c.barycenter,d.weight=c.weight)}),a.edges().forEach(c=>{let u=i[c.v],d=i[c.w];u!==void 0&&d!==void 0&&(d.indegree++,u.out.push(i[c.w]))});let l=Object.values(i).filter(c=>!c.indegree);return n(l)}function n(s){let a=[];function i(c){return u=>{u.merged||(u.barycenter===void 0||c.barycenter===void 0||u.barycenter>=c.barycenter)&&r(c,u)}}function l(c){return u=>{u.in.push(c),--u.indegree===0&&s.push(u)}}for(;s.length;){let c=s.pop();a.push(c),c.in.reverse().forEach(i(c)),c.out.forEach(l(c))}return a.filter(c=>!c.merged).map(c=>e.pick(c,["vs","i","barycenter","weight"]))}function r(s,a){let i=0,l=0;s.weight&&(i+=s.barycenter*s.weight,l+=s.weight),a.weight&&(i+=a.barycenter*a.weight,l+=a.weight),s.vs=a.vs.concat(s.vs),s.barycenter=i/l,s.weight=l,s.i=Math.min(a.i,s.i),a.merged=!0}return SJ}var kJ,a8e;function Jzn(){if(a8e)return kJ;a8e=1;let e=jl();kJ=t;function t(s,a){let i=e.partition(s,m=>Object.hasOwn(m,"barycenter")),l=i.lhs,c=i.rhs.sort((m,g)=>g.i-m.i),u=[],d=0,f=0,p=0;l.sort(r(!!a)),p=n(u,c,p),l.forEach(m=>{p+=m.vs.length,u.push(m.vs),d+=m.barycenter*m.weight,f+=m.weight,p=n(u,c,p)});let h={vs:u.flat(!0)};return f&&(h.barycenter=d/f,h.weight=f),h}function n(s,a,i){let l;for(;a.length&&(l=a[a.length-1]).i<=i;)a.pop(),s.push(l.vs),i++;return i}function r(s){return(a,i)=>a.barycenter<i.barycenter?-1:a.barycenter>i.barycenter?1:s?i.i-a.i:a.i-i.i}return kJ}var OJ,i8e;function e7n(){if(i8e)return OJ;i8e=1;let e=Xzn(),t=Kzn(),n=Jzn();OJ=r;function r(i,l,c,u){let d=i.children(l),f=i.node(l),p=f?f.borderLeft:void 0,h=f?f.borderRight:void 0,m={};p&&(d=d.filter(w=>w!==p&&w!==h));let g=e(i,d);g.forEach(w=>{if(i.children(w.v).length){let S=r(i,w.v,c,u);m[w.v]=S,Object.hasOwn(S,"barycenter")&&a(w,S)}});let y=t(g,c);s(y,m);let b=n(y,u);if(p&&(b.vs=[p,b.vs,h].flat(!0),i.predecessors(p).length)){let w=i.node(i.predecessors(p)[0]),S=i.node(i.predecessors(h)[0]);Object.hasOwn(b,"barycenter")||(b.barycenter=0,b.weight=0),b.barycenter=(b.barycenter*b.weight+w.order+S.order)/(b.weight+2),b.weight+=2}return b}function s(i,l){i.forEach(c=>{c.vs=c.vs.flatMap(u=>l[u]?l[u].vs:u)})}function a(i,l){i.barycenter!==void 0?(i.barycenter=(i.barycenter*i.weight+l.barycenter*l.weight)/(i.weight+l.weight),i.weight+=l.weight):(i.barycenter=l.barycenter,i.weight=l.weight)}return OJ}var _J,o8e;function t7n(){if(o8e)return _J;o8e=1;let e=Eg().Graph,t=jl();_J=n;function n(s,a,i,l){l||(l=s.nodes());let c=r(s),u=new e({compound:!0}).setGraph({root:c}).setDefaultNodeLabel(d=>s.node(d));return l.forEach(d=>{let f=s.node(d),p=s.parent(d);(f.rank===a||f.minRank<=a&&a<=f.maxRank)&&(u.setNode(d),u.setParent(d,p||c),s[i](d).forEach(h=>{let m=h.v===d?h.w:h.v,g=u.edge(m,d),y=g!==void 0?g.weight:0;u.setEdge(m,d,{weight:s.edge(h).weight+y})}),Object.hasOwn(f,"minRank")&&u.setNode(d,{borderLeft:f.borderLeft[a],borderRight:f.borderRight[a]}))}),u}function r(s){for(var a;s.hasNode(a=t.uniqueId("_root")););return a}return _J}var CJ,l8e;function n7n(){if(l8e)return CJ;l8e=1,CJ=e;function e(t,n,r){let s={},a;r.forEach(i=>{let l=t.parent(i),c,u;for(;l;){if(c=t.parent(l),c?(u=s[c],s[c]=l):(u=a,a=l),u&&u!==l){n.setEdge(u,l);return}l=c}})}return CJ}var EJ,c8e;function r7n(){if(c8e)return EJ;c8e=1;let e=Qzn(),t=Yzn(),n=e7n(),r=t7n(),s=n7n(),a=Eg().Graph,i=jl();EJ=l;function l(f,p){if(p&&typeof p.customOrder=="function"){p.customOrder(f,l);return}let h=i.maxRank(f),m=c(f,i.range(1,h+1),"inEdges"),g=c(f,i.range(h-1,-1,-1),"outEdges"),y=e(f);if(d(f,y),p&&p.disableOptimalOrderHeuristic)return;let b=Number.POSITIVE_INFINITY,w;for(let S=0,k=0;k<4;++S,++k){u(S%2?m:g,S%4>=2),y=i.buildLayerMatrix(f);let _=t(f,y);_<b&&(k=0,w=Object.assign({},y),b=_)}d(f,w)}function c(f,p,h){const m=new Map,g=(y,b)=>{m.has(y)||m.set(y,[]),m.get(y).push(b)};for(const y of f.nodes()){const b=f.node(y);if(typeof b.rank=="number"&&g(b.rank,y),typeof b.minRank=="number"&&typeof b.maxRank=="number")for(let w=b.minRank;w<=b.maxRank;w++)w!==b.rank&&g(w,y)}return p.map(function(y){return r(f,y,h,m.get(y)||[])})}function u(f,p){let h=new a;f.forEach(function(m){let g=m.graph().root,y=n(m,g,h,p);y.vs.forEach((b,w)=>m.node(b).order=w),s(m,h,y.vs)})}function d(f,p){Object.values(p).forEach(h=>h.forEach((m,g)=>f.node(m).order=g))}return EJ}var jJ,u8e;function s7n(){if(u8e)return jJ;u8e=1;let e=Eg().Graph,t=jl();jJ={positionX:h,findType1Conflicts:n,findType2Conflicts:r,addConflict:a,hasConflict:i,verticalAlignment:l,horizontalCompaction:c,alignCoordinates:f,findSmallestWidthAlignment:d,balance:p};function n(y,b){let w={};function S(k,_){let C=0,E=0,j=k.length,N=_[_.length-1];return _.forEach((I,P)=>{let $=s(y,I),F=$?y.node($).order:j;($||I===N)&&(_.slice(E,P+1).forEach(D=>{y.predecessors(D).forEach(V=>{let W=y.node(V),L=W.order;(L<C||F<L)&&!(W.dummy&&y.node(D).dummy)&&a(w,V,D)})}),E=P+1,C=F)}),_}return b.length&&b.reduce(S),w}function r(y,b){let w={};function S(_,C,E,j,N){let I;t.range(C,E).forEach(P=>{I=_[P],y.node(I).dummy&&y.predecessors(I).forEach($=>{let F=y.node($);F.dummy&&(F.order<j||F.order>N)&&a(w,$,I)})})}function k(_,C){let E=-1,j,N=0;return C.forEach((I,P)=>{if(y.node(I).dummy==="border"){let $=y.predecessors(I);$.length&&(j=y.node($[0]).order,S(C,N,P,E,j),N=P,E=j)}S(C,N,C.length,j,_.length)}),C}return b.length&&b.reduce(k),w}function s(y,b){if(y.node(b).dummy)return y.predecessors(b).find(w=>y.node(w).dummy)}function a(y,b,w){if(b>w){let k=b;b=w,w=k}let S=y[b];S||(y[b]=S={}),S[w]=!0}function i(y,b,w){if(b>w){let S=b;b=w,w=S}return!!y[b]&&Object.hasOwn(y[b],w)}function l(y,b,w,S){let k={},_={},C={};return b.forEach(E=>{E.forEach((j,N)=>{k[j]=j,_[j]=j,C[j]=N})}),b.forEach(E=>{let j=-1;E.forEach(N=>{let I=S(N);if(I.length){I=I.sort(($,F)=>C[$]-C[F]);let P=(I.length-1)/2;for(let $=Math.floor(P),F=Math.ceil(P);$<=F;++$){let D=I[$];_[N]===N&&j<C[D]&&!i(w,N,D)&&(_[D]=N,_[N]=k[N]=k[D],j=C[D])}}})}),{root:k,align:_}}function c(y,b,w,S,k){let _={},C=u(y,b,w,k),E=k?"borderLeft":"borderRight";function j(P,$){let F=C.nodes(),D=F.pop(),V={};for(;D;)V[D]?P(D):(V[D]=!0,F.push(D),F=F.concat($(D))),D=F.pop()}function N(P){_[P]=C.inEdges(P).reduce(($,F)=>Math.max($,_[F.v]+C.edge(F)),0)}function I(P){let $=C.outEdges(P).reduce((D,V)=>Math.min(D,_[V.w]-C.edge(V)),Number.POSITIVE_INFINITY),F=y.node(P);$!==Number.POSITIVE_INFINITY&&F.borderType!==E&&(_[P]=Math.max(_[P],$))}return j(N,C.predecessors.bind(C)),j(I,C.successors.bind(C)),Object.keys(S).forEach(P=>_[P]=_[w[P]]),_}function u(y,b,w,S){let k=new e,_=y.graph(),C=m(_.nodesep,_.edgesep,S);return b.forEach(E=>{let j;E.forEach(N=>{let I=w[N];if(k.setNode(I),j){var P=w[j],$=k.edge(P,I);k.setEdge(P,I,Math.max(C(y,N,j),$||0))}j=N})}),k}function d(y,b){return Object.values(b).reduce((w,S)=>{let k=Number.NEGATIVE_INFINITY,_=Number.POSITIVE_INFINITY;Object.entries(S).forEach(([E,j])=>{let N=g(y,E)/2;k=Math.max(j+N,k),_=Math.min(j-N,_)});const C=k-_;return C<w[0]&&(w=[C,S]),w},[Number.POSITIVE_INFINITY,null])[1]}function f(y,b){let w=Object.values(b),S=t.applyWithChunking(Math.min,w),k=t.applyWithChunking(Math.max,w);["u","d"].forEach(_=>{["l","r"].forEach(C=>{let E=_+C,j=y[E];if(j===b)return;let N=Object.values(j),I=S-t.applyWithChunking(Math.min,N);C!=="l"&&(I=k-t.applyWithChunking(Math.max,N)),I&&(y[E]=t.mapValues(j,P=>P+I))})})}function p(y,b){return t.mapValues(y.ul,(w,S)=>{if(b)return y[b.toLowerCase()][S];{let k=Object.values(y).map(_=>_[S]).sort((_,C)=>_-C);return(k[1]+k[2])/2}})}function h(y){let b=t.buildLayerMatrix(y),w=Object.assign(n(y,b),r(y,b)),S={},k;["u","d"].forEach(C=>{k=C==="u"?b:Object.values(b).reverse(),["l","r"].forEach(E=>{E==="r"&&(k=k.map(P=>Object.values(P).reverse()));let j=(C==="u"?y.predecessors:y.successors).bind(y),N=l(y,k,w,j),I=c(y,k,N.root,N.align,E==="r");E==="r"&&(I=t.mapValues(I,P=>-P)),S[C+E]=I})});let _=d(y,S);return f(S,_),p(S,y.graph().align)}function m(y,b,w){return(S,k,_)=>{let C=S.node(k),E=S.node(_),j=0,N;if(j+=C.width/2,Object.hasOwn(C,"labelpos"))switch(C.labelpos.toLowerCase()){case"l":N=-C.width/2;break;case"r":N=C.width/2;break}if(N&&(j+=w?N:-N),N=0,j+=(C.dummy?b:y)/2,j+=(E.dummy?b:y)/2,j+=E.width/2,Object.hasOwn(E,"labelpos"))switch(E.labelpos.toLowerCase()){case"l":N=E.width/2;break;case"r":N=-E.width/2;break}return N&&(j+=w?N:-N),N=0,j}}function g(y,b){return y.node(b).width}return jJ}var TJ,d8e;function a7n(){if(d8e)return TJ;d8e=1;let e=jl(),t=s7n().positionX;TJ=n;function n(s){s=e.asNonCompoundGraph(s),r(s),Object.entries(t(s)).forEach(([a,i])=>s.node(a).x=i)}function r(s){let a=e.buildLayerMatrix(s),i=s.graph().ranksep,l=0;a.forEach(c=>{const u=c.reduce((d,f)=>{const p=s.node(f).height;return d>p?d:p},0);c.forEach(d=>s.node(d).y=l+u/2),l+=u+i})}return TJ}var NJ,f8e;function i7n(){if(f8e)return NJ;f8e=1;let e=Bzn(),t=Uzn(),n=Vzn(),r=jl().normalizeRanks,s=Hzn(),a=jl().removeEmptyRanks,i=Wzn(),l=Zzn(),c=Gzn(),u=r7n(),d=a7n(),f=jl(),p=Eg().Graph;NJ=h;function h(R,U){let Z=U&&U.debugTiming?f.time:f.notime;Z("layout",()=>{let X=Z(" buildLayoutGraph",()=>j(R));Z(" runLayout",()=>m(X,Z,U)),Z(" updateInputGraph",()=>g(R,X))})}function m(R,U,Z){U(" makeSpaceForEdgeLabels",()=>N(R)),U(" removeSelfEdges",()=>B(R)),U(" acyclic",()=>e.run(R)),U(" nestingGraph.run",()=>i.run(R)),U(" rank",()=>n(f.asNonCompoundGraph(R))),U(" injectEdgeLabelProxies",()=>I(R)),U(" removeEmptyRanks",()=>a(R)),U(" nestingGraph.cleanup",()=>i.cleanup(R)),U(" normalizeRanks",()=>r(R)),U(" assignRankMinMax",()=>P(R)),U(" removeEdgeLabelProxies",()=>$(R)),U(" normalize.run",()=>t.run(R)),U(" parentDummyChains",()=>s(R)),U(" addBorderSegments",()=>l(R)),U(" order",()=>u(R,Z)),U(" insertSelfEdges",()=>z(R)),U(" adjustCoordinateSystem",()=>c.adjust(R)),U(" position",()=>d(R)),U(" positionSelfEdges",()=>M(R)),U(" removeBorderNodes",()=>L(R)),U(" normalize.undo",()=>t.undo(R)),U(" fixupEdgeLabelCoords",()=>V(R)),U(" undoCoordinateSystem",()=>c.undo(R)),U(" translateGraph",()=>F(R)),U(" assignNodeIntersects",()=>D(R)),U(" reversePoints",()=>W(R)),U(" acyclic.undo",()=>e.undo(R))}function g(R,U){R.nodes().forEach(Z=>{let X=R.node(Z),te=U.node(Z);X&&(X.x=te.x,X.y=te.y,X.rank=te.rank,U.children(Z).length&&(X.width=te.width,X.height=te.height))}),R.edges().forEach(Z=>{let X=R.edge(Z),te=U.edge(Z);X.points=te.points,Object.hasOwn(te,"x")&&(X.x=te.x,X.y=te.y)}),R.graph().width=U.graph().width,R.graph().height=U.graph().height}let y=["nodesep","edgesep","ranksep","marginx","marginy"],b={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},w=["acyclicer","ranker","rankdir","align"],S=["width","height","rank"],k={width:0,height:0},_=["minlen","weight","width","height","labeloffset"],C={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},E=["labelpos"];function j(R){let U=new p({multigraph:!0,compound:!0}),Z=q(R.graph());return U.setGraph(Object.assign({},b,G(Z,y),f.pick(Z,w))),R.nodes().forEach(X=>{let te=q(R.node(X));const J=G(te,S);Object.keys(k).forEach(ee=>{J[ee]===void 0&&(J[ee]=k[ee])}),U.setNode(X,J),U.setParent(X,R.parent(X))}),R.edges().forEach(X=>{let te=q(R.edge(X));U.setEdge(X,Object.assign({},C,G(te,_),f.pick(te,E)))}),U}function N(R){let U=R.graph();U.ranksep/=2,R.edges().forEach(Z=>{let X=R.edge(Z);X.minlen*=2,X.labelpos.toLowerCase()!=="c"&&(U.rankdir==="TB"||U.rankdir==="BT"?X.width+=X.labeloffset:X.height+=X.labeloffset)})}function I(R){R.edges().forEach(U=>{let Z=R.edge(U);if(Z.width&&Z.height){let X=R.node(U.v),J={rank:(R.node(U.w).rank-X.rank)/2+X.rank,e:U};f.addDummyNode(R,"edge-proxy",J,"_ep")}})}function P(R){let U=0;R.nodes().forEach(Z=>{let X=R.node(Z);X.borderTop&&(X.minRank=R.node(X.borderTop).rank,X.maxRank=R.node(X.borderBottom).rank,U=Math.max(U,X.maxRank))}),R.graph().maxRank=U}function $(R){R.nodes().forEach(U=>{let Z=R.node(U);Z.dummy==="edge-proxy"&&(R.edge(Z.e).labelRank=Z.rank,R.removeNode(U))})}function F(R){let U=Number.POSITIVE_INFINITY,Z=0,X=Number.POSITIVE_INFINITY,te=0,J=R.graph(),ee=J.marginx||0,ae=J.marginy||0;function ce(Y){let ne=Y.x,ue=Y.y,pe=Y.width,le=Y.height;U=Math.min(U,ne-pe/2),Z=Math.max(Z,ne+pe/2),X=Math.min(X,ue-le/2),te=Math.max(te,ue+le/2)}R.nodes().forEach(Y=>ce(R.node(Y))),R.edges().forEach(Y=>{let ne=R.edge(Y);Object.hasOwn(ne,"x")&&ce(ne)}),U-=ee,X-=ae,R.nodes().forEach(Y=>{let ne=R.node(Y);ne.x-=U,ne.y-=X}),R.edges().forEach(Y=>{let ne=R.edge(Y);ne.points.forEach(ue=>{ue.x-=U,ue.y-=X}),Object.hasOwn(ne,"x")&&(ne.x-=U),Object.hasOwn(ne,"y")&&(ne.y-=X)}),J.width=Z-U+ee,J.height=te-X+ae}function D(R){R.edges().forEach(U=>{let Z=R.edge(U),X=R.node(U.v),te=R.node(U.w),J,ee;Z.points?(J=Z.points[0],ee=Z.points[Z.points.length-1]):(Z.points=[],J=te,ee=X),Z.points.unshift(f.intersectRect(X,J)),Z.points.push(f.intersectRect(te,ee))})}function V(R){R.edges().forEach(U=>{let Z=R.edge(U);if(Object.hasOwn(Z,"x"))switch((Z.labelpos==="l"||Z.labelpos==="r")&&(Z.width-=Z.labeloffset),Z.labelpos){case"l":Z.x-=Z.width/2+Z.labeloffset;break;case"r":Z.x+=Z.width/2+Z.labeloffset;break}})}function W(R){R.edges().forEach(U=>{let Z=R.edge(U);Z.reversed&&Z.points.reverse()})}function L(R){R.nodes().forEach(U=>{if(R.children(U).length){let Z=R.node(U),X=R.node(Z.borderTop),te=R.node(Z.borderBottom),J=R.node(Z.borderLeft[Z.borderLeft.length-1]),ee=R.node(Z.borderRight[Z.borderRight.length-1]);Z.width=Math.abs(ee.x-J.x),Z.height=Math.abs(te.y-X.y),Z.x=J.x+Z.width/2,Z.y=X.y+Z.height/2}}),R.nodes().forEach(U=>{R.node(U).dummy==="border"&&R.removeNode(U)})}function B(R){R.edges().forEach(U=>{if(U.v===U.w){var Z=R.node(U.v);Z.selfEdges||(Z.selfEdges=[]),Z.selfEdges.push({e:U,label:R.edge(U)}),R.removeEdge(U)}})}function z(R){var U=f.buildLayerMatrix(R);U.forEach(Z=>{var X=0;Z.forEach((te,J)=>{var ee=R.node(te);ee.order=J+X,(ee.selfEdges||[]).forEach(ae=>{f.addDummyNode(R,"selfedge",{width:ae.label.width,height:ae.label.height,rank:ee.rank,order:J+ ++X,e:ae.e,label:ae.label},"_se")}),delete ee.selfEdges})})}function M(R){R.nodes().forEach(U=>{var Z=R.node(U);if(Z.dummy==="selfedge"){var X=R.node(Z.e.v),te=X.x+X.width/2,J=X.y,ee=Z.x-te,ae=X.height/2;R.setEdge(Z.e,Z.label),R.removeNode(U),Z.label.points=[{x:te+2*ee/3,y:J-ae},{x:te+5*ee/6,y:J-ae},{x:te+ee,y:J},{x:te+5*ee/6,y:J+ae},{x:te+2*ee/3,y:J+ae}],Z.label.x=Z.x,Z.label.y=Z.y}})}function G(R,U){return f.mapValues(f.pick(R,U),Number)}function q(R){var U={};return R&&Object.entries(R).forEach(([Z,X])=>{typeof Z=="string"&&(Z=Z.toLowerCase()),U[Z]=X}),U}return NJ}var IJ,p8e;function o7n(){if(p8e)return IJ;p8e=1;let e=jl(),t=Eg().Graph;IJ={debugOrdering:n};function n(r){let s=e.buildLayerMatrix(r),a=new t({compound:!0,multigraph:!0}).setGraph({});return r.nodes().forEach(i=>{a.setNode(i,{label:i}),a.setParent(i,"layer"+r.node(i).rank)}),r.edges().forEach(i=>a.setEdge(i.v,i.w,{},i.name)),s.forEach((i,l)=>{let c="layer"+l;a.setNode(c,{rank:"same"}),i.reduce((u,d)=>(a.setEdge(u,d,{style:"invis"}),d))}),a}return IJ}var AJ,h8e;function l7n(){return h8e||(h8e=1,AJ="1.1.8"),AJ}var RJ,m8e;function c7n(){return m8e||(m8e=1,RJ={graphlib:Eg(),layout:i7n(),debug:o7n(),util:{time:jl().time,notime:jl().notime},version:l7n()}),RJ}var u7n=c7n();const g8e=Cc(u7n);function Pl(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=Pl(e[n]))!==""&&(t+=(t&&" ")+r);else for(let n in e)e[n]&&(t+=(t&&" ")+n);return t}var d7n={value:()=>{}};function wV(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+"")||r in n||/[\s.]/.test(r))throw new Error("illegal type: "+r);n[r]=[]}return new q9(n)}function q9(e){this._=e}function f7n(e,t){return e.trim().split(/^|\s+/).map(function(n){var r="",s=n.indexOf(".");if(s>=0&&(r=n.slice(s+1),n=n.slice(0,s)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:r}})}q9.prototype=wV.prototype={constructor:q9,on:function(e,t){var n=this._,r=f7n(e+"",n),s,a=-1,i=r.length;if(arguments.length<2){for(;++a<i;)if((s=(e=r[a]).type)&&(s=p7n(n[s],e.name)))return s;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++a<i;)if(s=(e=r[a]).type)n[s]=v8e(n[s],e.name,t);else if(t==null)for(s in n)n[s]=v8e(n[s],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new q9(e)},call:function(e,t){if((s=arguments.length-2)>0)for(var n=new Array(s),r=0,s,a;r<s;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(a=this._[e],r=0,s=a.length;r<s;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],s=0,a=r.length;s<a;++s)r[s].value.apply(t,n)}};function p7n(e,t){for(var n=0,r=e.length,s;n<r;++n)if((s=e[n]).name===t)return s.value}function v8e(e,t,n){for(var r=0,s=e.length;r<s;++r)if(e[r].name===t){e[r]=d7n,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var phe="http://www.w3.org/1999/xhtml";const y8e={svg:"http://www.w3.org/2000/svg",xhtml:phe,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function SV(e){var t=e+="",n=t.indexOf(":");return n>=0&&(t=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),y8e.hasOwnProperty(t)?{space:y8e[t],local:e}:e}function h7n(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===phe&&t.documentElement.namespaceURI===phe?t.createElement(e):t.createElementNS(n,e)}}function m7n(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Cxt(e){var t=SV(e);return(t.local?m7n:h7n)(t)}function g7n(){}function s1e(e){return e==null?g7n:function(){return this.querySelector(e)}}function v7n(e){typeof e!="function"&&(e=s1e(e));for(var t=this._groups,n=t.length,r=new Array(n),s=0;s<n;++s)for(var a=t[s],i=a.length,l=r[s]=new Array(i),c,u,d=0;d<i;++d)(c=a[d])&&(u=e.call(c,c.__data__,d,a))&&("__data__"in c&&(u.__data__=c.__data__),l[d]=u);return new Dp(r,this._parents)}function y7n(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function b7n(){return[]}function Ext(e){return e==null?b7n:function(){return this.querySelectorAll(e)}}function x7n(e){return function(){return y7n(e.apply(this,arguments))}}function w7n(e){typeof e=="function"?e=x7n(e):e=Ext(e);for(var t=this._groups,n=t.length,r=[],s=[],a=0;a<n;++a)for(var i=t[a],l=i.length,c,u=0;u<l;++u)(c=i[u])&&(r.push(e.call(c,c.__data__,u,i)),s.push(c));return new Dp(r,s)}function jxt(e){return function(){return this.matches(e)}}function Txt(e){return function(t){return t.matches(e)}}var S7n=Array.prototype.find;function k7n(e){return function(){return S7n.call(this.children,e)}}function O7n(){return this.firstElementChild}function _7n(e){return this.select(e==null?O7n:k7n(typeof e=="function"?e:Txt(e)))}var C7n=Array.prototype.filter;function E7n(){return Array.from(this.children)}function j7n(e){return function(){return C7n.call(this.children,e)}}function T7n(e){return this.selectAll(e==null?E7n:j7n(typeof e=="function"?e:Txt(e)))}function N7n(e){typeof e!="function"&&(e=jxt(e));for(var t=this._groups,n=t.length,r=new Array(n),s=0;s<n;++s)for(var a=t[s],i=a.length,l=r[s]=[],c,u=0;u<i;++u)(c=a[u])&&e.call(c,c.__data__,u,a)&&l.push(c);return new Dp(r,this._parents)}function Nxt(e){return new Array(e.length)}function I7n(){return new Dp(this._enter||this._groups.map(Nxt),this._parents)}function w7(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}w7.prototype={constructor:w7,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 A7n(e){return function(){return e}}function R7n(e,t,n,r,s,a){for(var i=0,l,c=t.length,u=a.length;i<u;++i)(l=t[i])?(l.__data__=a[i],r[i]=l):n[i]=new w7(e,a[i]);for(;i<c;++i)(l=t[i])&&(s[i]=l)}function P7n(e,t,n,r,s,a,i){var l,c,u=new Map,d=t.length,f=a.length,p=new Array(d),h;for(l=0;l<d;++l)(c=t[l])&&(p[l]=h=i.call(c,c.__data__,l,t)+"",u.has(h)?s[l]=c:u.set(h,c));for(l=0;l<f;++l)h=i.call(e,a[l],l,a)+"",(c=u.get(h))?(r[l]=c,c.__data__=a[l],u.delete(h)):n[l]=new w7(e,a[l]);for(l=0;l<d;++l)(c=t[l])&&u.get(p[l])===c&&(s[l]=c)}function $7n(e){return e.__data__}function M7n(e,t){if(!arguments.length)return Array.from(this,$7n);var n=t?P7n:R7n,r=this._parents,s=this._groups;typeof e!="function"&&(e=A7n(e));for(var a=s.length,i=new Array(a),l=new Array(a),c=new Array(a),u=0;u<a;++u){var d=r[u],f=s[u],p=f.length,h=D7n(e.call(d,d&&d.__data__,u,r)),m=h.length,g=l[u]=new Array(m),y=i[u]=new Array(m),b=c[u]=new Array(p);n(d,f,g,y,b,h,t);for(var w=0,S=0,k,_;w<m;++w)if(k=g[w]){for(w>=S&&(S=w+1);!(_=y[S])&&++S<m;);k._next=_||null}}return i=new Dp(i,r),i._enter=l,i._exit=c,i}function D7n(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function L7n(){return new Dp(this._exit||this._groups.map(Nxt),this._parents)}function F7n(e,t,n){var r=this.enter(),s=this,a=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),t!=null&&(s=t(s),s&&(s=s.selection())),n==null?a.remove():n(a),r&&s?r.merge(s).order():s}function z7n(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,s=n.length,a=r.length,i=Math.min(s,a),l=new Array(s),c=0;c<i;++c)for(var u=n[c],d=r[c],f=u.length,p=l[c]=new Array(f),h,m=0;m<f;++m)(h=u[m]||d[m])&&(p[m]=h);for(;c<s;++c)l[c]=n[c];return new Dp(l,this._parents)}function B7n(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],s=r.length-1,a=r[s],i;--s>=0;)(i=r[s])&&(a&&i.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(i,a),a=i);return this}function U7n(e){e||(e=q7n);function t(f,p){return f&&p?e(f.__data__,p.__data__):!f-!p}for(var n=this._groups,r=n.length,s=new Array(r),a=0;a<r;++a){for(var i=n[a],l=i.length,c=s[a]=new Array(l),u,d=0;d<l;++d)(u=i[d])&&(c[d]=u);c.sort(t)}return new Dp(s,this._parents).order()}function q7n(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function V7n(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function H7n(){return Array.from(this)}function W7n(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],s=0,a=r.length;s<a;++s){var i=r[s];if(i)return i}return null}function Z7n(){let e=0;for(const t of this)++e;return e}function G7n(){return!this.node()}function Q7n(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var s=t[n],a=0,i=s.length,l;a<i;++a)(l=s[a])&&e.call(l,l.__data__,a,s);return this}function Y7n(e){return function(){this.removeAttribute(e)}}function X7n(e){return function(){this.removeAttributeNS(e.space,e.local)}}function K7n(e,t){return function(){this.setAttribute(e,t)}}function J7n(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function eBn(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function tBn(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 nBn(e,t){var n=SV(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?X7n:Y7n:typeof t=="function"?n.local?tBn:eBn:n.local?J7n:K7n)(n,t))}function Ixt(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function rBn(e){return function(){this.style.removeProperty(e)}}function sBn(e,t,n){return function(){this.style.setProperty(e,t,n)}}function aBn(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function iBn(e,t,n){return arguments.length>1?this.each((t==null?rBn:typeof t=="function"?aBn:sBn)(e,t,n??"")):gT(this.node(),e)}function gT(e,t){return e.style.getPropertyValue(t)||Ixt(e).getComputedStyle(e,null).getPropertyValue(t)}function oBn(e){return function(){delete this[e]}}function lBn(e,t){return function(){this[e]=t}}function cBn(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function uBn(e,t){return arguments.length>1?this.each((t==null?oBn:typeof t=="function"?cBn:lBn)(e,t)):this.node()[e]}function Axt(e){return e.trim().split(/^|\s+/)}function a1e(e){return e.classList||new Rxt(e)}function Rxt(e){this._node=e,this._names=Axt(e.getAttribute("class")||"")}Rxt.prototype={add:function(e){var t=this._names.indexOf(e);t<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 Pxt(e,t){for(var n=a1e(e),r=-1,s=t.length;++r<s;)n.add(t[r])}function $xt(e,t){for(var n=a1e(e),r=-1,s=t.length;++r<s;)n.remove(t[r])}function dBn(e){return function(){Pxt(this,e)}}function fBn(e){return function(){$xt(this,e)}}function pBn(e,t){return function(){(t.apply(this,arguments)?Pxt:$xt)(this,e)}}function hBn(e,t){var n=Axt(e+"");if(arguments.length<2){for(var r=a1e(this.node()),s=-1,a=n.length;++s<a;)if(!r.contains(n[s]))return!1;return!0}return this.each((typeof t=="function"?pBn:t?dBn:fBn)(n,t))}function mBn(){this.textContent=""}function gBn(e){return function(){this.textContent=e}}function vBn(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function yBn(e){return arguments.length?this.each(e==null?mBn:(typeof e=="function"?vBn:gBn)(e)):this.node().textContent}function bBn(){this.innerHTML=""}function xBn(e){return function(){this.innerHTML=e}}function wBn(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function SBn(e){return arguments.length?this.each(e==null?bBn:(typeof e=="function"?wBn:xBn)(e)):this.node().innerHTML}function kBn(){this.nextSibling&&this.parentNode.appendChild(this)}function OBn(){return this.each(kBn)}function _Bn(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function CBn(){return this.each(_Bn)}function EBn(e){var t=typeof e=="function"?e:Cxt(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function jBn(){return null}function TBn(e,t){var n=typeof e=="function"?e:Cxt(e),r=t==null?jBn:typeof t=="function"?t:s1e(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function NBn(){var e=this.parentNode;e&&e.removeChild(this)}function IBn(){return this.each(NBn)}function ABn(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function RBn(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function PBn(e){return this.select(e?RBn:ABn)}function $Bn(e){return arguments.length?this.property("__data__",e):this.node().__data__}function MBn(e){return function(t){e.call(this,t,this.__data__)}}function DBn(e){return e.trim().split(/^|\s+/).map(function(t){var n="",r=t.indexOf(".");return r>=0&&(n=t.slice(r+1),t=t.slice(0,r)),{type:t,name:n}})}function LBn(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,s=t.length,a;n<s;++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 FBn(e,t,n){return function(){var r=this.__on,s,a=MBn(t);if(r){for(var i=0,l=r.length;i<l;++i)if((s=r[i]).type===e.type&&s.name===e.name){this.removeEventListener(s.type,s.listener,s.options),this.addEventListener(s.type,s.listener=a,s.options=n),s.value=t;return}}this.addEventListener(e.type,a,n),s={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(s):this.__on=[s]}}function zBn(e,t,n){var r=DBn(e+""),s,a=r.length,i;if(arguments.length<2){var l=this.node().__on;if(l){for(var c=0,u=l.length,d;c<u;++c)for(s=0,d=l[c];s<a;++s)if((i=r[s]).type===d.type&&i.name===d.name)return d.value}return}for(l=t?FBn:LBn,s=0;s<a;++s)this.each(l(r[s],t,n));return this}function Mxt(e,t,n){var r=Ixt(e),s=r.CustomEvent;typeof s=="function"?s=new s(t,n):(s=r.document.createEvent("Event"),n?(s.initEvent(t,n.bubbles,n.cancelable),s.detail=n.detail):s.initEvent(t,!1,!1)),e.dispatchEvent(s)}function BBn(e,t){return function(){return Mxt(this,e,t)}}function UBn(e,t){return function(){return Mxt(this,e,t.apply(this,arguments))}}function qBn(e,t){return this.each((typeof t=="function"?UBn:BBn)(e,t))}function*VBn(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],s=0,a=r.length,i;s<a;++s)(i=r[s])&&(yield i)}var Dxt=[null];function Dp(e,t){this._groups=e,this._parents=t}function oD(){return new Dp([[document.documentElement]],Dxt)}function HBn(){return this}Dp.prototype=oD.prototype={constructor:Dp,select:v7n,selectAll:w7n,selectChild:_7n,selectChildren:T7n,filter:N7n,data:M7n,enter:I7n,exit:L7n,join:F7n,merge:z7n,selection:HBn,order:B7n,sort:U7n,call:V7n,nodes:H7n,node:W7n,size:Z7n,empty:G7n,each:Q7n,attr:nBn,style:iBn,property:uBn,classed:hBn,text:yBn,html:SBn,raise:OBn,lower:CBn,append:EBn,insert:TBn,remove:IBn,clone:PBn,datum:$Bn,on:zBn,dispatch:qBn,[Symbol.iterator]:VBn};function fp(e){return typeof e=="string"?new Dp([[document.querySelector(e)]],[document.documentElement]):new Dp([[e]],Dxt)}function WBn(e){let t;for(;t=e.sourceEvent;)e=t;return e}function Xm(e,t){if(e=WBn(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 s=t.getBoundingClientRect();return[e.clientX-s.left-t.clientLeft,e.clientY-s.top-t.clientTop]}}return[e.pageX,e.pageY]}const ZBn={passive:!1},Q$={capture:!0,passive:!1};function PJ(e){e.stopImmediatePropagation()}function wj(e){e.preventDefault(),e.stopImmediatePropagation()}function Lxt(e){var t=e.document.documentElement,n=fp(e).on("dragstart.drag",wj,Q$);"onselectstart"in t?n.on("selectstart.drag",wj,Q$):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function Fxt(e,t){var n=e.document.documentElement,r=fp(e).on("dragstart.drag",null);t&&(r.on("click.drag",wj,Q$),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const g6=e=>()=>e;function hhe(e,{sourceEvent:t,subject:n,target:r,identifier:s,active:a,x:i,y:l,dx:c,dy:u,dispatch:d}){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:s,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:i,enumerable:!0,configurable:!0},y:{value:l,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:u,enumerable:!0,configurable:!0},_:{value:d}})}hhe.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function GBn(e){return!e.ctrlKey&&!e.button}function QBn(){return this.parentNode}function YBn(e,t){return t??{x:e.x,y:e.y}}function XBn(){return navigator.maxTouchPoints||"ontouchstart"in this}function zxt(){var e=GBn,t=QBn,n=YBn,r=XBn,s={},a=wV("start","drag","end"),i=0,l,c,u,d,f=0;function p(k){k.on("mousedown.drag",h).filter(r).on("touchstart.drag",y).on("touchmove.drag",b,ZBn).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function h(k,_){if(!(d||!e.call(this,k,_))){var C=S(this,t.call(this,k,_),k,_,"mouse");C&&(fp(k.view).on("mousemove.drag",m,Q$).on("mouseup.drag",g,Q$),Lxt(k.view),PJ(k),u=!1,l=k.clientX,c=k.clientY,C("start",k))}}function m(k){if(wj(k),!u){var _=k.clientX-l,C=k.clientY-c;u=_*_+C*C>f}s.mouse("drag",k)}function g(k){fp(k.view).on("mousemove.drag mouseup.drag",null),Fxt(k.view,u),wj(k),s.mouse("end",k)}function y(k,_){if(e.call(this,k,_)){var C=k.changedTouches,E=t.call(this,k,_),j=C.length,N,I;for(N=0;N<j;++N)(I=S(this,E,k,_,C[N].identifier,C[N]))&&(PJ(k),I("start",k,C[N]))}}function b(k){var _=k.changedTouches,C=_.length,E,j;for(E=0;E<C;++E)(j=s[_[E].identifier])&&(wj(k),j("drag",k,_[E]))}function w(k){var _=k.changedTouches,C=_.length,E,j;for(d&&clearTimeout(d),d=setTimeout(function(){d=null},500),E=0;E<C;++E)(j=s[_[E].identifier])&&(PJ(k),j("end",k,_[E]))}function S(k,_,C,E,j,N){var I=a.copy(),P=Xm(N||C,_),$,F,D;if((D=n.call(k,new hhe("beforestart",{sourceEvent:C,target:p,identifier:j,active:i,x:P[0],y:P[1],dx:0,dy:0,dispatch:I}),E))!=null)return $=D.x-P[0]||0,F=D.y-P[1]||0,function V(W,L,B){var z=P,M;switch(W){case"start":s[j]=V,M=i++;break;case"end":delete s[j],--i;case"drag":P=Xm(B||L,_),M=i;break}I.call(W,k,new hhe(W,{sourceEvent:L,subject:D,target:p,identifier:j,active:M,x:P[0]+$,y:P[1]+F,dx:P[0]-z[0],dy:P[1]-z[1],dispatch:I}),E)}}return p.filter=function(k){return arguments.length?(e=typeof k=="function"?k:g6(!!k),p):e},p.container=function(k){return arguments.length?(t=typeof k=="function"?k:g6(k),p):t},p.subject=function(k){return arguments.length?(n=typeof k=="function"?k:g6(k),p):n},p.touchable=function(k){return arguments.length?(r=typeof k=="function"?k:g6(!!k),p):r},p.on=function(){var k=a.on.apply(a,arguments);return k===a?p:k},p.clickDistance=function(k){return arguments.length?(f=(k=+k)*k,p):Math.sqrt(f)},p}function i1e(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function Bxt(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function lD(){}var Y$=.7,S7=1/Y$,Sj="\\s*([+-]?\\d+)\\s*",X$="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Xv="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",KBn=/^#([0-9a-f]{3,8})$/,JBn=new RegExp(`^rgb\\(${Sj},${Sj},${Sj}\\)$`),eUn=new RegExp(`^rgb\\(${Xv},${Xv},${Xv}\\)$`),tUn=new RegExp(`^rgba\\(${Sj},${Sj},${Sj},${X$}\\)$`),nUn=new RegExp(`^rgba\\(${Xv},${Xv},${Xv},${X$}\\)$`),rUn=new RegExp(`^hsl\\(${X$},${Xv},${Xv}\\)$`),sUn=new RegExp(`^hsla\\(${X$},${Xv},${Xv},${X$}\\)$`),b8e={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};i1e(lD,TO,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:x8e,formatHex:x8e,formatHex8:aUn,formatHsl:iUn,formatRgb:w8e,toString:w8e});function x8e(){return this.rgb().formatHex()}function aUn(){return this.rgb().formatHex8()}function iUn(){return Uxt(this).formatHsl()}function w8e(){return this.rgb().formatRgb()}function TO(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=KBn.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?S8e(t):n===3?new Xd(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?v6(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?v6(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=JBn.exec(e))?new Xd(t[1],t[2],t[3],1):(t=eUn.exec(e))?new Xd(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=tUn.exec(e))?v6(t[1],t[2],t[3],t[4]):(t=nUn.exec(e))?v6(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=rUn.exec(e))?_8e(t[1],t[2]/100,t[3]/100,1):(t=sUn.exec(e))?_8e(t[1],t[2]/100,t[3]/100,t[4]):b8e.hasOwnProperty(e)?S8e(b8e[e]):e==="transparent"?new Xd(NaN,NaN,NaN,0):null}function S8e(e){return new Xd(e>>16&255,e>>8&255,e&255,1)}function v6(e,t,n,r){return r<=0&&(e=t=n=NaN),new Xd(e,t,n,r)}function oUn(e){return e instanceof lD||(e=TO(e)),e?(e=e.rgb(),new Xd(e.r,e.g,e.b,e.opacity)):new Xd}function mhe(e,t,n,r){return arguments.length===1?oUn(e):new Xd(e,t,n,r??1)}function Xd(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}i1e(Xd,mhe,Bxt(lD,{brighter(e){return e=e==null?S7:Math.pow(S7,e),new Xd(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Y$:Math.pow(Y$,e),new Xd(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Xd(Bk(this.r),Bk(this.g),Bk(this.b),k7(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:k8e,formatHex:k8e,formatHex8:lUn,formatRgb:O8e,toString:O8e}));function k8e(){return`#${_k(this.r)}${_k(this.g)}${_k(this.b)}`}function lUn(){return`#${_k(this.r)}${_k(this.g)}${_k(this.b)}${_k((isNaN(this.opacity)?1:this.opacity)*255)}`}function O8e(){const e=k7(this.opacity);return`${e===1?"rgb(":"rgba("}${Bk(this.r)}, ${Bk(this.g)}, ${Bk(this.b)}${e===1?")":`, ${e})`}`}function k7(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Bk(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function _k(e){return e=Bk(e),(e<16?"0":"")+e.toString(16)}function _8e(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new rg(e,t,n,r)}function Uxt(e){if(e instanceof rg)return new rg(e.h,e.s,e.l,e.opacity);if(e instanceof lD||(e=TO(e)),!e)return new rg;if(e instanceof rg)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,s=Math.min(t,n,r),a=Math.max(t,n,r),i=NaN,l=a-s,c=(a+s)/2;return l?(t===a?i=(n-r)/l+(n<r)*6:n===a?i=(r-t)/l+2:i=(t-n)/l+4,l/=c<.5?a+s:2-a-s,i*=60):l=c>0&&c<1?0:i,new rg(i,l,c,e.opacity)}function cUn(e,t,n,r){return arguments.length===1?Uxt(e):new rg(e,t,n,r??1)}function rg(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}i1e(rg,cUn,Bxt(lD,{brighter(e){return e=e==null?S7:Math.pow(S7,e),new rg(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Y$:Math.pow(Y$,e),new rg(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,s=2*n-r;return new Xd($J(e>=240?e-240:e+120,s,r),$J(e,s,r),$J(e<120?e+240:e-120,s,r),this.opacity)},clamp(){return new rg(C8e(this.h),y6(this.s),y6(this.l),k7(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(){const e=k7(this.opacity);return`${e===1?"hsl(":"hsla("}${C8e(this.h)}, ${y6(this.s)*100}%, ${y6(this.l)*100}%${e===1?")":`, ${e})`}`}}));function C8e(e){return e=(e||0)%360,e<0?e+360:e}function y6(e){return Math.max(0,Math.min(1,e||0))}function $J(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const o1e=e=>()=>e;function uUn(e,t){return function(n){return e+n*t}}function dUn(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function fUn(e){return(e=+e)==1?qxt:function(t,n){return n-t?dUn(t,n,e):o1e(isNaN(t)?n:t)}}function qxt(e,t){var n=t-e;return n?uUn(e,n):o1e(isNaN(e)?t:e)}const O7=(function e(t){var n=fUn(t);function r(s,a){var i=n((s=mhe(s)).r,(a=mhe(a)).r),l=n(s.g,a.g),c=n(s.b,a.b),u=qxt(s.opacity,a.opacity);return function(d){return s.r=i(d),s.g=l(d),s.b=c(d),s.opacity=u(d),s+""}}return r.gamma=e,r})(1);function pUn(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),s;return function(a){for(s=0;s<n;++s)r[s]=e[s]*(1-a)+t[s]*a;return r}}function hUn(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function mUn(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,s=new Array(r),a=new Array(n),i;for(i=0;i<r;++i)s[i]=rx(e[i],t[i]);for(;i<n;++i)a[i]=t[i];return function(l){for(i=0;i<r;++i)a[i]=s[i](l);return a}}function gUn(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function Jm(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function vUn(e,t){var n={},r={},s;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(s in t)s in e?n[s]=rx(e[s],t[s]):r[s]=t[s];return function(a){for(s in n)r[s]=n[s](a);return r}}var ghe=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,MJ=new RegExp(ghe.source,"g");function yUn(e){return function(){return e}}function bUn(e){return function(t){return e(t)+""}}function Vxt(e,t){var n=ghe.lastIndex=MJ.lastIndex=0,r,s,a,i=-1,l=[],c=[];for(e=e+"",t=t+"";(r=ghe.exec(e))&&(s=MJ.exec(t));)(a=s.index)>n&&(a=t.slice(n,a),l[i]?l[i]+=a:l[++i]=a),(r=r[0])===(s=s[0])?l[i]?l[i]+=s:l[++i]=s:(l[++i]=null,c.push({i,x:Jm(r,s)})),n=MJ.lastIndex;return n<t.length&&(a=t.slice(n),l[i]?l[i]+=a:l[++i]=a),l.length<2?c[0]?bUn(c[0].x):yUn(t):(t=c.length,function(u){for(var d=0,f;d<t;++d)l[(f=c[d]).i]=f.x(u);return l.join("")})}function rx(e,t){var n=typeof t,r;return t==null||n==="boolean"?o1e(t):(n==="number"?Jm:n==="string"?(r=TO(t))?(t=r,O7):Vxt:t instanceof TO?O7:t instanceof Date?gUn:hUn(t)?pUn:Array.isArray(t)?mUn:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?vUn:Jm)(e,t)}function l1e(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}var E8e=180/Math.PI,vhe={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Hxt(e,t,n,r,s,a){var i,l,c;return(i=Math.sqrt(e*e+t*t))&&(e/=i,t/=i),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(l=Math.sqrt(n*n+r*r))&&(n/=l,r/=l,c/=l),e*r<t*n&&(e=-e,t=-t,c=-c,i=-i),{translateX:s,translateY:a,rotate:Math.atan2(t,e)*E8e,skewX:Math.atan(c)*E8e,scaleX:i,scaleY:l}}var b6;function xUn(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?vhe:Hxt(t.a,t.b,t.c,t.d,t.e,t.f)}function wUn(e){return e==null||(b6||(b6=document.createElementNS("http://www.w3.org/2000/svg","g")),b6.setAttribute("transform",e),!(e=b6.transform.baseVal.consolidate()))?vhe:(e=e.matrix,Hxt(e.a,e.b,e.c,e.d,e.e,e.f))}function Wxt(e,t,n,r){function s(u){return u.length?u.pop()+" ":""}function a(u,d,f,p,h,m){if(u!==f||d!==p){var g=h.push("translate(",null,t,null,n);m.push({i:g-4,x:Jm(u,f)},{i:g-2,x:Jm(d,p)})}else(f||p)&&h.push("translate("+f+t+p+n)}function i(u,d,f,p){u!==d?(u-d>180?d+=360:d-u>180&&(u+=360),p.push({i:f.push(s(f)+"rotate(",null,r)-2,x:Jm(u,d)})):d&&f.push(s(f)+"rotate("+d+r)}function l(u,d,f,p){u!==d?p.push({i:f.push(s(f)+"skewX(",null,r)-2,x:Jm(u,d)}):d&&f.push(s(f)+"skewX("+d+r)}function c(u,d,f,p,h,m){if(u!==f||d!==p){var g=h.push(s(h)+"scale(",null,",",null,")");m.push({i:g-4,x:Jm(u,f)},{i:g-2,x:Jm(d,p)})}else(f!==1||p!==1)&&h.push(s(h)+"scale("+f+","+p+")")}return function(u,d){var f=[],p=[];return u=e(u),d=e(d),a(u.translateX,u.translateY,d.translateX,d.translateY,f,p),i(u.rotate,d.rotate,f,p),l(u.skewX,d.skewX,f,p),c(u.scaleX,u.scaleY,d.scaleX,d.scaleY,f,p),u=d=null,function(h){for(var m=-1,g=p.length,y;++m<g;)f[(y=p[m]).i]=y.x(h);return f.join("")}}}var SUn=Wxt(xUn,"px, ","px)","deg)"),kUn=Wxt(wUn,", ",")",")"),OUn=1e-12;function j8e(e){return((e=Math.exp(e))+1/e)/2}function _Un(e){return((e=Math.exp(e))-1/e)/2}function CUn(e){return((e=Math.exp(2*e))-1)/(e+1)}const V9=(function e(t,n,r){function s(a,i){var l=a[0],c=a[1],u=a[2],d=i[0],f=i[1],p=i[2],h=d-l,m=f-c,g=h*h+m*m,y,b;if(g<OUn)b=Math.log(p/u)/t,y=function(E){return[l+E*h,c+E*m,u*Math.exp(t*E*b)]};else{var w=Math.sqrt(g),S=(p*p-u*u+r*g)/(2*u*n*w),k=(p*p-u*u-r*g)/(2*p*n*w),_=Math.log(Math.sqrt(S*S+1)-S),C=Math.log(Math.sqrt(k*k+1)-k);b=(C-_)/t,y=function(E){var j=E*b,N=j8e(_),I=u/(n*w)*(N*CUn(t*j+_)-_Un(_));return[l+I*h,c+I*m,u*N/j8e(t*j+_)]}}return y.duration=b*1e3*t/Math.SQRT2,y}return s.rho=function(a){var i=Math.max(.001,+a),l=i*i,c=l*l;return e(i,l,c)},s})(Math.SQRT2,2,4);function EUn(e,t){t===void 0&&(t=e,e=rx);for(var n=0,r=t.length-1,s=t[0],a=new Array(r<0?0:r);n<r;)a[n]=e(s,s=t[++n]);return function(i){var l=Math.max(0,Math.min(r-1,Math.floor(i*=r)));return a[l](i-l)}}var vT=0,a2=0,HA=0,Zxt=1e3,_7,i2,C7=0,NO=0,kV=0,K$=typeof performance=="object"&&performance.now?performance:Date,Gxt=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function c1e(){return NO||(Gxt(jUn),NO=K$.now()+kV)}function jUn(){NO=0}function E7(){this._call=this._time=this._next=null}E7.prototype=Qxt.prototype={constructor:E7,restart:function(e,t,n){if(typeof e!="function")throw new TypeError("callback is not a function");n=(n==null?c1e():+n)+(t==null?0:+t),!this._next&&i2!==this&&(i2?i2._next=this:_7=this,i2=this),this._call=e,this._time=n,yhe()},stop:function(){this._call&&(this._call=null,this._time=1/0,yhe())}};function Qxt(e,t,n){var r=new E7;return r.restart(e,t,n),r}function TUn(){c1e(),++vT;for(var e=_7,t;e;)(t=NO-e._time)>=0&&e._call.call(void 0,t),e=e._next;--vT}function T8e(){NO=(C7=K$.now())+kV,vT=a2=0;try{TUn()}finally{vT=0,IUn(),NO=0}}function NUn(){var e=K$.now(),t=e-C7;t>Zxt&&(kV-=t,C7=e)}function IUn(){for(var e,t=_7,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:_7=n);i2=e,yhe(r)}function yhe(e){if(!vT){a2&&(a2=clearTimeout(a2));var t=e-NO;t>24?(e<1/0&&(a2=setTimeout(T8e,e-K$.now()-kV)),HA&&(HA=clearInterval(HA))):(HA||(C7=K$.now(),HA=setInterval(NUn,Zxt)),vT=1,Gxt(T8e))}}function N8e(e,t,n){var r=new E7;return t=t==null?0:+t,r.restart(s=>{r.stop(),e(s+t)},t,n),r}var AUn=wV("start","end","cancel","interrupt"),RUn=[],Yxt=0,I8e=1,bhe=2,H9=3,A8e=4,xhe=5,W9=6;function OV(e,t,n,r,s,a){var i=e.__transition;if(!i)e.__transition={};else if(n in i)return;PUn(e,n,{name:t,index:r,group:s,on:AUn,tween:RUn,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Yxt})}function u1e(e,t){var n=Lg(e,t);if(n.state>Yxt)throw new Error("too late; already scheduled");return n}function $y(e,t){var n=Lg(e,t);if(n.state>H9)throw new Error("too late; already running");return n}function Lg(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function PUn(e,t,n){var r=e.__transition,s;r[t]=n,n.timer=Qxt(a,0,n.time);function a(u){n.state=I8e,n.timer.restart(i,n.delay,n.time),n.delay<=u&&i(u-n.delay)}function i(u){var d,f,p,h;if(n.state!==I8e)return c();for(d in r)if(h=r[d],h.name===n.name){if(h.state===H9)return N8e(i);h.state===A8e?(h.state=W9,h.timer.stop(),h.on.call("interrupt",e,e.__data__,h.index,h.group),delete r[d]):+d<t&&(h.state=W9,h.timer.stop(),h.on.call("cancel",e,e.__data__,h.index,h.group),delete r[d])}if(N8e(function(){n.state===H9&&(n.state=A8e,n.timer.restart(l,n.delay,n.time),l(u))}),n.state=bhe,n.on.call("start",e,e.__data__,n.index,n.group),n.state===bhe){for(n.state=H9,s=new Array(p=n.tween.length),d=0,f=-1;d<p;++d)(h=n.tween[d].value.call(e,e.__data__,n.index,n.group))&&(s[++f]=h);s.length=f+1}}function l(u){for(var d=u<n.duration?n.ease.call(null,u/n.duration):(n.timer.restart(c),n.state=xhe,1),f=-1,p=s.length;++f<p;)s[f].call(e,d);n.state===xhe&&(n.on.call("end",e,e.__data__,n.index,n.group),c())}function c(){n.state=W9,n.timer.stop(),delete r[t];for(var u in r)return;delete e.__transition}}function Z9(e,t){var n=e.__transition,r,s,a=!0,i;if(n){t=t==null?null:t+"";for(i in n){if((r=n[i]).name!==t){a=!1;continue}s=r.state>bhe&&r.state<xhe,r.state=W9,r.timer.stop(),r.on.call(s?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete n[i]}a&&delete e.__transition}}function $Un(e){return this.each(function(){Z9(this,e)})}function MUn(e,t){var n,r;return function(){var s=$y(this,e),a=s.tween;if(a!==n){r=n=a;for(var i=0,l=r.length;i<l;++i)if(r[i].name===t){r=r.slice(),r.splice(i,1);break}}s.tween=r}}function DUn(e,t,n){var r,s;if(typeof n!="function")throw new Error;return function(){var a=$y(this,e),i=a.tween;if(i!==r){s=(r=i).slice();for(var l={name:t,value:n},c=0,u=s.length;c<u;++c)if(s[c].name===t){s[c]=l;break}c===u&&s.push(l)}a.tween=s}}function LUn(e,t){var n=this._id;if(e+="",arguments.length<2){for(var r=Lg(this.node(),n).tween,s=0,a=r.length,i;s<a;++s)if((i=r[s]).name===e)return i.value;return null}return this.each((t==null?MUn:DUn)(n,e,t))}function d1e(e,t,n){var r=e._id;return e.each(function(){var s=$y(this,r);(s.value||(s.value={}))[t]=n.apply(this,arguments)}),function(s){return Lg(s,r).value[t]}}function Xxt(e,t){var n;return(typeof t=="number"?Jm:t instanceof TO?O7:(n=TO(t))?(t=n,O7):Vxt)(e,t)}function FUn(e){return function(){this.removeAttribute(e)}}function zUn(e){return function(){this.removeAttributeNS(e.space,e.local)}}function BUn(e,t,n){var r,s=n+"",a;return function(){var i=this.getAttribute(e);return i===s?null:i===r?a:a=t(r=i,n)}}function UUn(e,t,n){var r,s=n+"",a;return function(){var i=this.getAttributeNS(e.space,e.local);return i===s?null:i===r?a:a=t(r=i,n)}}function qUn(e,t,n){var r,s,a;return function(){var i,l=n(this),c;return l==null?void this.removeAttribute(e):(i=this.getAttribute(e),c=l+"",i===c?null:i===r&&c===s?a:(s=c,a=t(r=i,l)))}}function VUn(e,t,n){var r,s,a;return function(){var i,l=n(this),c;return l==null?void this.removeAttributeNS(e.space,e.local):(i=this.getAttributeNS(e.space,e.local),c=l+"",i===c?null:i===r&&c===s?a:(s=c,a=t(r=i,l)))}}function HUn(e,t){var n=SV(e),r=n==="transform"?kUn:Xxt;return this.attrTween(e,typeof t=="function"?(n.local?VUn:qUn)(n,r,d1e(this,"attr."+e,t)):t==null?(n.local?zUn:FUn)(n):(n.local?UUn:BUn)(n,r,t))}function WUn(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function ZUn(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function GUn(e,t){var n,r;function s(){var a=t.apply(this,arguments);return a!==r&&(n=(r=a)&&ZUn(e,a)),n}return s._value=t,s}function QUn(e,t){var n,r;function s(){var a=t.apply(this,arguments);return a!==r&&(n=(r=a)&&WUn(e,a)),n}return s._value=t,s}function YUn(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 new Error;var r=SV(e);return this.tween(n,(r.local?GUn:QUn)(r,t))}function XUn(e,t){return function(){u1e(this,e).delay=+t.apply(this,arguments)}}function KUn(e,t){return t=+t,function(){u1e(this,e).delay=t}}function JUn(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?XUn:KUn)(t,e)):Lg(this.node(),t).delay}function eqn(e,t){return function(){$y(this,e).duration=+t.apply(this,arguments)}}function tqn(e,t){return t=+t,function(){$y(this,e).duration=t}}function nqn(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?eqn:tqn)(t,e)):Lg(this.node(),t).duration}function rqn(e,t){if(typeof t!="function")throw new Error;return function(){$y(this,e).ease=t}}function sqn(e){var t=this._id;return arguments.length?this.each(rqn(t,e)):Lg(this.node(),t).ease}function aqn(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!="function")throw new Error;$y(this,e).ease=n}}function iqn(e){if(typeof e!="function")throw new Error;return this.each(aqn(this._id,e))}function oqn(e){typeof e!="function"&&(e=jxt(e));for(var t=this._groups,n=t.length,r=new Array(n),s=0;s<n;++s)for(var a=t[s],i=a.length,l=r[s]=[],c,u=0;u<i;++u)(c=a[u])&&e.call(c,c.__data__,u,a)&&l.push(c);return new kx(r,this._parents,this._name,this._id)}function lqn(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,r=t.length,s=n.length,a=Math.min(r,s),i=new Array(r),l=0;l<a;++l)for(var c=t[l],u=n[l],d=c.length,f=i[l]=new Array(d),p,h=0;h<d;++h)(p=c[h]||u[h])&&(f[h]=p);for(;l<r;++l)i[l]=t[l];return new kx(i,this._parents,this._name,this._id)}function cqn(e){return(e+"").trim().split(/^|\s+/).every(function(t){var n=t.indexOf(".");return n>=0&&(t=t.slice(0,n)),!t||t==="start"})}function uqn(e,t,n){var r,s,a=cqn(t)?u1e:$y;return function(){var i=a(this,e),l=i.on;l!==r&&(s=(r=l).copy()).on(t,n),i.on=s}}function dqn(e,t){var n=this._id;return arguments.length<2?Lg(this.node(),n).on.on(e):this.each(uqn(n,e,t))}function fqn(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function pqn(){return this.on("end.remove",fqn(this._id))}function hqn(e){var t=this._name,n=this._id;typeof e!="function"&&(e=s1e(e));for(var r=this._groups,s=r.length,a=new Array(s),i=0;i<s;++i)for(var l=r[i],c=l.length,u=a[i]=new Array(c),d,f,p=0;p<c;++p)(d=l[p])&&(f=e.call(d,d.__data__,p,l))&&("__data__"in d&&(f.__data__=d.__data__),u[p]=f,OV(u[p],t,n,p,u,Lg(d,n)));return new kx(a,this._parents,t,n)}function mqn(e){var t=this._name,n=this._id;typeof e!="function"&&(e=Ext(e));for(var r=this._groups,s=r.length,a=[],i=[],l=0;l<s;++l)for(var c=r[l],u=c.length,d,f=0;f<u;++f)if(d=c[f]){for(var p=e.call(d,d.__data__,f,c),h,m=Lg(d,n),g=0,y=p.length;g<y;++g)(h=p[g])&&OV(h,t,n,g,p,m);a.push(p),i.push(d)}return new kx(a,i,t,n)}var gqn=oD.prototype.constructor;function vqn(){return new gqn(this._groups,this._parents)}function yqn(e,t){var n,r,s;return function(){var a=gT(this,e),i=(this.style.removeProperty(e),gT(this,e));return a===i?null:a===n&&i===r?s:s=t(n=a,r=i)}}function Kxt(e){return function(){this.style.removeProperty(e)}}function bqn(e,t,n){var r,s=n+"",a;return function(){var i=gT(this,e);return i===s?null:i===r?a:a=t(r=i,n)}}function xqn(e,t,n){var r,s,a;return function(){var i=gT(this,e),l=n(this),c=l+"";return l==null&&(c=l=(this.style.removeProperty(e),gT(this,e))),i===c?null:i===r&&c===s?a:(s=c,a=t(r=i,l))}}function wqn(e,t){var n,r,s,a="style."+t,i="end."+a,l;return function(){var c=$y(this,e),u=c.on,d=c.value[a]==null?l||(l=Kxt(t)):void 0;(u!==n||s!==d)&&(r=(n=u).copy()).on(i,s=d),c.on=r}}function Sqn(e,t,n){var r=(e+="")=="transform"?SUn:Xxt;return t==null?this.styleTween(e,yqn(e,r)).on("end.style."+e,Kxt(e)):typeof t=="function"?this.styleTween(e,xqn(e,r,d1e(this,"style."+e,t))).each(wqn(this._id,e)):this.styleTween(e,bqn(e,r,t),n).on("end.style."+e,null)}function kqn(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function Oqn(e,t,n){var r,s;function a(){var i=t.apply(this,arguments);return i!==s&&(r=(s=i)&&kqn(e,i,n)),r}return a._value=t,a}function _qn(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 new Error;return this.tween(r,Oqn(e,t,n??""))}function Cqn(e){return function(){this.textContent=e}}function Eqn(e){return function(){var t=e(this);this.textContent=t??""}}function jqn(e){return this.tween("text",typeof e=="function"?Eqn(d1e(this,"text",e)):Cqn(e==null?"":e+""))}function Tqn(e){return function(t){this.textContent=e.call(this,t)}}function Nqn(e){var t,n;function r(){var s=e.apply(this,arguments);return s!==n&&(t=(n=s)&&Tqn(s)),t}return r._value=e,r}function Iqn(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 new Error;return this.tween(t,Nqn(e))}function Aqn(){for(var e=this._name,t=this._id,n=Jxt(),r=this._groups,s=r.length,a=0;a<s;++a)for(var i=r[a],l=i.length,c,u=0;u<l;++u)if(c=i[u]){var d=Lg(c,t);OV(c,e,n,u,i,{time:d.time+d.delay+d.duration,delay:0,duration:d.duration,ease:d.ease})}return new kx(r,this._parents,e,n)}function Rqn(){var e,t,n=this,r=n._id,s=n.size();return new Promise(function(a,i){var l={value:i},c={value:function(){--s===0&&a()}};n.each(function(){var u=$y(this,r),d=u.on;d!==e&&(t=(e=d).copy(),t._.cancel.push(l),t._.interrupt.push(l),t._.end.push(c)),u.on=t}),s===0&&a()})}var Pqn=0;function kx(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function Jxt(){return++Pqn}var pb=oD.prototype;kx.prototype={constructor:kx,select:hqn,selectAll:mqn,selectChild:pb.selectChild,selectChildren:pb.selectChildren,filter:oqn,merge:lqn,selection:vqn,transition:Aqn,call:pb.call,nodes:pb.nodes,node:pb.node,size:pb.size,empty:pb.empty,each:pb.each,on:dqn,attr:HUn,attrTween:YUn,style:Sqn,styleTween:_qn,text:jqn,textTween:Iqn,remove:pqn,tween:LUn,delay:JUn,duration:nqn,ease:sqn,easeVarying:iqn,end:Rqn,[Symbol.iterator]:pb[Symbol.iterator]};function $qn(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var Mqn={time:null,delay:0,duration:250,ease:$qn};function Dqn(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return n}function Lqn(e){var t,n;e instanceof kx?(t=e._id,e=e._name):(t=Jxt(),(n=Mqn).time=c1e(),e=e==null?null:e+"");for(var r=this._groups,s=r.length,a=0;a<s;++a)for(var i=r[a],l=i.length,c,u=0;u<l;++u)(c=i[u])&&OV(c,e,t,u,i,n||Dqn(c,t));return new kx(r,this._parents,e,t)}oD.prototype.interrupt=$Un;oD.prototype.transition=Lqn;const x6=e=>()=>e;function Fqn(e,{sourceEvent:t,target:n,transform:r,dispatch:s}){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:s}})}function Vb(e,t,n){this.k=e,this.x=t,this.y=n}Vb.prototype={constructor:Vb,scale:function(e){return e===1?this:new Vb(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Vb(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 _V=new Vb(1,0,0);e0t.prototype=Vb.prototype;function e0t(e){for(;!e.__zoom;)if(!(e=e.parentNode))return _V;return e.__zoom}function DJ(e){e.stopImmediatePropagation()}function WA(e){e.preventDefault(),e.stopImmediatePropagation()}function zqn(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function Bqn(){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 R8e(){return this.__zoom||_V}function Uqn(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function qqn(){return navigator.maxTouchPoints||"ontouchstart"in this}function Vqn(e,t,n){var r=e.invertX(t[0][0])-n[0][0],s=e.invertX(t[1][0])-n[1][0],a=e.invertY(t[0][1])-n[0][1],i=e.invertY(t[1][1])-n[1][1];return e.translate(s>r?(r+s)/2:Math.min(0,r)||Math.max(0,s),i>a?(a+i)/2:Math.min(0,a)||Math.max(0,i))}function t0t(){var e=zqn,t=Bqn,n=Vqn,r=Uqn,s=qqn,a=[0,1/0],i=[[-1/0,-1/0],[1/0,1/0]],l=250,c=V9,u=wV("start","zoom","end"),d,f,p,h=500,m=150,g=0,y=10;function b(D){D.property("__zoom",R8e).on("wheel.zoom",j,{passive:!1}).on("mousedown.zoom",N).on("dblclick.zoom",I).filter(s).on("touchstart.zoom",P).on("touchmove.zoom",$).on("touchend.zoom touchcancel.zoom",F).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}b.transform=function(D,V,W,L){var B=D.selection?D.selection():D;B.property("__zoom",R8e),D!==B?_(D,V,W,L):B.interrupt().each(function(){C(this,arguments).event(L).start().zoom(null,typeof V=="function"?V.apply(this,arguments):V).end()})},b.scaleBy=function(D,V,W,L){b.scaleTo(D,function(){var B=this.__zoom.k,z=typeof V=="function"?V.apply(this,arguments):V;return B*z},W,L)},b.scaleTo=function(D,V,W,L){b.transform(D,function(){var B=t.apply(this,arguments),z=this.__zoom,M=W==null?k(B):typeof W=="function"?W.apply(this,arguments):W,G=z.invert(M),q=typeof V=="function"?V.apply(this,arguments):V;return n(S(w(z,q),M,G),B,i)},W,L)},b.translateBy=function(D,V,W,L){b.transform(D,function(){return n(this.__zoom.translate(typeof V=="function"?V.apply(this,arguments):V,typeof W=="function"?W.apply(this,arguments):W),t.apply(this,arguments),i)},null,L)},b.translateTo=function(D,V,W,L,B){b.transform(D,function(){var z=t.apply(this,arguments),M=this.__zoom,G=L==null?k(z):typeof L=="function"?L.apply(this,arguments):L;return n(_V.translate(G[0],G[1]).scale(M.k).translate(typeof V=="function"?-V.apply(this,arguments):-V,typeof W=="function"?-W.apply(this,arguments):-W),z,i)},L,B)};function w(D,V){return V=Math.max(a[0],Math.min(a[1],V)),V===D.k?D:new Vb(V,D.x,D.y)}function S(D,V,W){var L=V[0]-W[0]*D.k,B=V[1]-W[1]*D.k;return L===D.x&&B===D.y?D:new Vb(D.k,L,B)}function k(D){return[(+D[0][0]+ +D[1][0])/2,(+D[0][1]+ +D[1][1])/2]}function _(D,V,W,L){D.on("start.zoom",function(){C(this,arguments).event(L).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(L).end()}).tween("zoom",function(){var B=this,z=arguments,M=C(B,z).event(L),G=t.apply(B,z),q=W==null?k(G):typeof W=="function"?W.apply(B,z):W,R=Math.max(G[1][0]-G[0][0],G[1][1]-G[0][1]),U=B.__zoom,Z=typeof V=="function"?V.apply(B,z):V,X=c(U.invert(q).concat(R/U.k),Z.invert(q).concat(R/Z.k));return function(te){if(te===1)te=Z;else{var J=X(te),ee=R/J[2];te=new Vb(ee,q[0]-J[0]*ee,q[1]-J[1]*ee)}M.zoom(null,te)}})}function C(D,V,W){return!W&&D.__zooming||new E(D,V)}function E(D,V){this.that=D,this.args=V,this.active=0,this.sourceEvent=null,this.extent=t.apply(D,V),this.taps=0}E.prototype={event:function(D){return D&&(this.sourceEvent=D),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(D,V){return this.mouse&&D!=="mouse"&&(this.mouse[1]=V.invert(this.mouse[0])),this.touch0&&D!=="touch"&&(this.touch0[1]=V.invert(this.touch0[0])),this.touch1&&D!=="touch"&&(this.touch1[1]=V.invert(this.touch1[0])),this.that.__zoom=V,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(D){var V=fp(this.that).datum();u.call(D,this.that,new Fqn(D,{sourceEvent:this.sourceEvent,target:b,transform:this.that.__zoom,dispatch:u}),V)}};function j(D,...V){if(!e.apply(this,arguments))return;var W=C(this,V).event(D),L=this.__zoom,B=Math.max(a[0],Math.min(a[1],L.k*Math.pow(2,r.apply(this,arguments)))),z=Xm(D);if(W.wheel)(W.mouse[0][0]!==z[0]||W.mouse[0][1]!==z[1])&&(W.mouse[1]=L.invert(W.mouse[0]=z)),clearTimeout(W.wheel);else{if(L.k===B)return;W.mouse=[z,L.invert(z)],Z9(this),W.start()}WA(D),W.wheel=setTimeout(M,m),W.zoom("mouse",n(S(w(L,B),W.mouse[0],W.mouse[1]),W.extent,i));function M(){W.wheel=null,W.end()}}function N(D,...V){if(p||!e.apply(this,arguments))return;var W=D.currentTarget,L=C(this,V,!0).event(D),B=fp(D.view).on("mousemove.zoom",q,!0).on("mouseup.zoom",R,!0),z=Xm(D,W),M=D.clientX,G=D.clientY;Lxt(D.view),DJ(D),L.mouse=[z,this.__zoom.invert(z)],Z9(this),L.start();function q(U){if(WA(U),!L.moved){var Z=U.clientX-M,X=U.clientY-G;L.moved=Z*Z+X*X>g}L.event(U).zoom("mouse",n(S(L.that.__zoom,L.mouse[0]=Xm(U,W),L.mouse[1]),L.extent,i))}function R(U){B.on("mousemove.zoom mouseup.zoom",null),Fxt(U.view,L.moved),WA(U),L.event(U).end()}}function I(D,...V){if(e.apply(this,arguments)){var W=this.__zoom,L=Xm(D.changedTouches?D.changedTouches[0]:D,this),B=W.invert(L),z=W.k*(D.shiftKey?.5:2),M=n(S(w(W,z),L,B),t.apply(this,V),i);WA(D),l>0?fp(this).transition().duration(l).call(_,M,L,D):fp(this).call(b.transform,M,L,D)}}function P(D,...V){if(e.apply(this,arguments)){var W=D.touches,L=W.length,B=C(this,V,D.changedTouches.length===L).event(D),z,M,G,q;for(DJ(D),M=0;M<L;++M)G=W[M],q=Xm(G,this),q=[q,this.__zoom.invert(q),G.identifier],B.touch0?!B.touch1&&B.touch0[2]!==q[2]&&(B.touch1=q,B.taps=0):(B.touch0=q,z=!0,B.taps=1+!!d);d&&(d=clearTimeout(d)),z&&(B.taps<2&&(f=q[0],d=setTimeout(function(){d=null},h)),Z9(this),B.start())}}function $(D,...V){if(this.__zooming){var W=C(this,V).event(D),L=D.changedTouches,B=L.length,z,M,G,q;for(WA(D),z=0;z<B;++z)M=L[z],G=Xm(M,this),W.touch0&&W.touch0[2]===M.identifier?W.touch0[0]=G:W.touch1&&W.touch1[2]===M.identifier&&(W.touch1[0]=G);if(M=W.that.__zoom,W.touch1){var R=W.touch0[0],U=W.touch0[1],Z=W.touch1[0],X=W.touch1[1],te=(te=Z[0]-R[0])*te+(te=Z[1]-R[1])*te,J=(J=X[0]-U[0])*J+(J=X[1]-U[1])*J;M=w(M,Math.sqrt(te/J)),G=[(R[0]+Z[0])/2,(R[1]+Z[1])/2],q=[(U[0]+X[0])/2,(U[1]+X[1])/2]}else if(W.touch0)G=W.touch0[0],q=W.touch0[1];else return;W.zoom("touch",n(S(M,G,q),W.extent,i))}}function F(D,...V){if(this.__zooming){var W=C(this,V).event(D),L=D.changedTouches,B=L.length,z,M;for(DJ(D),p&&clearTimeout(p),p=setTimeout(function(){p=null},h),z=0;z<B;++z)M=L[z],W.touch0&&W.touch0[2]===M.identifier?delete W.touch0:W.touch1&&W.touch1[2]===M.identifier&&delete W.touch1;if(W.touch1&&!W.touch0&&(W.touch0=W.touch1,delete W.touch1),W.touch0)W.touch0[1]=this.__zoom.invert(W.touch0[0]);else if(W.end(),W.taps===2&&(M=Xm(M,this),Math.hypot(f[0]-M[0],f[1]-M[1])<y)){var G=fp(this).on("dblclick.zoom");G&&G.apply(this,arguments)}}}return b.wheelDelta=function(D){return arguments.length?(r=typeof D=="function"?D:x6(+D),b):r},b.filter=function(D){return arguments.length?(e=typeof D=="function"?D:x6(!!D),b):e},b.touchable=function(D){return arguments.length?(s=typeof D=="function"?D:x6(!!D),b):s},b.extent=function(D){return arguments.length?(t=typeof D=="function"?D:x6([[+D[0][0],+D[0][1]],[+D[1][0],+D[1][1]]]),b):t},b.scaleExtent=function(D){return arguments.length?(a[0]=+D[0],a[1]=+D[1],b):[a[0],a[1]]},b.translateExtent=function(D){return arguments.length?(i[0][0]=+D[0][0],i[1][0]=+D[1][0],i[0][1]=+D[0][1],i[1][1]=+D[1][1],b):[[i[0][0],i[0][1]],[i[1][0],i[1][1]]]},b.constrain=function(D){return arguments.length?(n=D,b):n},b.duration=function(D){return arguments.length?(l=+D,b):l},b.interpolate=function(D){return arguments.length?(c=D,b):c},b.on=function(){var D=u.on.apply(u,arguments);return D===u?b:D},b.clickDistance=function(D){return arguments.length?(g=(D=+D)*D,b):Math.sqrt(g)},b.tapDistance=function(D){return arguments.length?(y=+D,b):y},b}const py={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."},J$=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],n0t=["Enter"," ","Escape"],r0t={"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"};var yT;(function(e){e.Strict="strict",e.Loose="loose"})(yT||(yT={}));var Uk;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Uk||(Uk={}));var eM;(function(e){e.Partial="partial",e.Full="full"})(eM||(eM={}));const s0t={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var sw;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(sw||(sw={}));var tM;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(tM||(tM={}));var nr;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(nr||(nr={}));const P8e={[nr.Left]:nr.Right,[nr.Right]:nr.Left,[nr.Top]:nr.Bottom,[nr.Bottom]:nr.Top};function a0t(e){return e===null?null:e?"valid":"invalid"}const i0t=e=>"id"in e&&"source"in e&&"target"in e,Hqn=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),f1e=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),cD=(e,t=[0,0])=>{const{width:n,height:r}=Hx(e),s=e.origin??t,a=n*s[0],i=r*s[1];return{x:e.position.x-a,y:e.position.y-i}},Wqn=(e,t={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((r,s)=>{const a=typeof s=="string";let i=!t.nodeLookup&&!a?s:void 0;t.nodeLookup&&(i=a?t.nodeLookup.get(s):f1e(s)?s:t.nodeLookup.get(s.id));const l=i?j7(i,t.nodeOrigin):{x:0,y:0,x2:0,y2:0};return CV(r,l)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return EV(n)},uD=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},r=!1;return e.forEach(s=>{(t.filter===void 0||t.filter(s))&&(n=CV(n,j7(s)),r=!0)}),r?EV(n):{x:0,y:0,width:0,height:0}},p1e=(e,t,[n,r,s]=[0,0,1],a=!1,i=!1)=>{const l={...fD(t,[n,r,s]),width:t.width/s,height:t.height/s},c=[];for(const u of e.values()){const{measured:d,selectable:f=!0,hidden:p=!1}=u;if(i&&!f||p)continue;const h=d.width??u.width??u.initialWidth??null,m=d.height??u.height??u.initialHeight??null,g=nM(l,xT(u)),y=(h??0)*(m??0),b=a&&g>0;(!u.internals.handleBounds||b||g>=y||u.dragging)&&c.push(u)}return c},Zqn=(e,t)=>{const n=new Set;return e.forEach(r=>{n.add(r.id)}),t.filter(r=>n.has(r.source)||n.has(r.target))};function Gqn(e,t){const n=new Map,r=t?.nodes?new Set(t.nodes.map(s=>s.id)):null;return e.forEach(s=>{s.measured.width&&s.measured.height&&(t?.includeHiddenNodes||!s.hidden)&&(!r||r.has(s.id))&&n.set(s.id,s)}),n}async function Qqn({nodes:e,width:t,height:n,panZoom:r,minZoom:s,maxZoom:a},i){if(e.size===0)return Promise.resolve(!0);const l=Gqn(e,i),c=uD(l),u=h1e(c,t,n,i?.minZoom??s,i?.maxZoom??a,i?.padding??.1);return await r.setViewport(u,{duration:i?.duration,ease:i?.ease,interpolate:i?.interpolate}),Promise.resolve(!0)}function o0t({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:s,onError:a}){const i=n.get(e),l=i.parentId?n.get(i.parentId):void 0,{x:c,y:u}=l?l.internals.positionAbsolute:{x:0,y:0},d=i.origin??r;let f=i.extent||s;if(i.extent==="parent"&&!i.expandParent)if(!l)a?.("005",py.error005());else{const h=l.measured.width,m=l.measured.height;h&&m&&(f=[[c,u],[c+h,u+m]])}else l&&wT(i.extent)&&(f=[[i.extent[0][0]+c,i.extent[0][1]+u],[i.extent[1][0]+c,i.extent[1][1]+u]]);const p=wT(f)?IO(t,f,i.measured):t;return(i.measured.width===void 0||i.measured.height===void 0)&&a?.("015",py.error015()),{position:{x:p.x-c+(i.measured.width??0)*d[0],y:p.y-u+(i.measured.height??0)*d[1]},positionAbsolute:p}}async function Yqn({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:s}){const a=new Set(e.map(p=>p.id)),i=[];for(const p of n){if(p.deletable===!1)continue;const h=a.has(p.id),m=!h&&p.parentId&&i.find(g=>g.id===p.parentId);(h||m)&&i.push(p)}const l=new Set(t.map(p=>p.id)),c=r.filter(p=>p.deletable!==!1),d=Zqn(i,c);for(const p of c)l.has(p.id)&&!d.find(m=>m.id===p.id)&&d.push(p);if(!s)return{edges:d,nodes:i};const f=await s({nodes:i,edges:d});return typeof f=="boolean"?f?{edges:d,nodes:i}:{edges:[],nodes:[]}:f}const bT=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),IO=(e={x:0,y:0},t,n)=>({x:bT(e.x,t[0][0],t[1][0]-(n?.width??0)),y:bT(e.y,t[0][1],t[1][1]-(n?.height??0))});function l0t(e,t,n){const{width:r,height:s}=Hx(n),{x:a,y:i}=n.internals.positionAbsolute;return IO(e,[[a,i],[a+r,i+s]],t)}const $8e=(e,t,n)=>e<t?bT(Math.abs(e-t),1,t)/t:e>n?-bT(Math.abs(e-n),1,t)/t:0,c0t=(e,t,n=15,r=40)=>{const s=$8e(e.x,r,t.width-r)*n,a=$8e(e.y,r,t.height-r)*n;return[s,a]},CV=(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)}),whe=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),EV=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),xT=(e,t=[0,0])=>{const{x:n,y:r}=f1e(e)?e.internals.positionAbsolute:cD(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}},j7=(e,t=[0,0])=>{const{x:n,y:r}=f1e(e)?e.internals.positionAbsolute:cD(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)}},u0t=(e,t)=>EV(CV(whe(e),whe(t))),nM=(e,t)=>{const 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)},M8e=e=>cg(e.width)&&cg(e.height)&&cg(e.x)&&cg(e.y),cg=e=>!isNaN(e)&&isFinite(e),Xqn=(e,t)=>{},dD=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),fD=({x:e,y:t},[n,r,s],a=!1,i=[1,1])=>{const l={x:(e-n)/s,y:(t-r)/s};return a?dD(l,i):l},T7=({x:e,y:t},[n,r,s])=>({x:e*s+n,y:t*s+r});function DC(e,t){if(typeof e=="number")return Math.floor((t-t/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(n)}if(typeof e=="string"&&e.endsWith("%")){const 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 Kqn(e,t,n){if(typeof e=="string"||typeof e=="number"){const r=DC(e,n),s=DC(e,t);return{top:r,right:s,bottom:r,left:s,x:s*2,y:r*2}}if(typeof e=="object"){const r=DC(e.top??e.y??0,n),s=DC(e.bottom??e.y??0,n),a=DC(e.left??e.x??0,t),i=DC(e.right??e.x??0,t);return{top:r,right:i,bottom:s,left:a,x:a+i,y:r+s}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function Jqn(e,t,n,r,s,a){const{x:i,y:l}=T7(e,[t,n,r]),{x:c,y:u}=T7({x:e.x+e.width,y:e.y+e.height},[t,n,r]),d=s-c,f=a-u;return{left:Math.floor(i),top:Math.floor(l),right:Math.floor(d),bottom:Math.floor(f)}}const h1e=(e,t,n,r,s,a)=>{const i=Kqn(a,t,n),l=(t-i.x)/e.width,c=(n-i.y)/e.height,u=Math.min(l,c),d=bT(u,r,s),f=e.x+e.width/2,p=e.y+e.height/2,h=t/2-f*d,m=n/2-p*d,g=Jqn(e,h,m,d,t,n),y={left:Math.min(g.left-i.left,0),top:Math.min(g.top-i.top,0),right:Math.min(g.right-i.right,0),bottom:Math.min(g.bottom-i.bottom,0)};return{x:h-y.left+y.right,y:m-y.top+y.bottom,zoom:d}},rM=()=>typeof navigator<"u"&&navigator?.userAgent?.indexOf("Mac")>=0;function wT(e){return e!=null&&e!=="parent"}function Hx(e){return{width:e.measured?.width??e.width??e.initialWidth??0,height:e.measured?.height??e.height??e.initialHeight??0}}function d0t(e){return(e.measured?.width??e.width??e.initialWidth)!==void 0&&(e.measured?.height??e.height??e.initialHeight)!==void 0}function f0t(e,t={width:0,height:0},n,r,s){const a={...e},i=r.get(n);if(i){const l=i.origin||s;a.x+=i.internals.positionAbsolute.x-(t.width??0)*l[0],a.y+=i.internals.positionAbsolute.y-(t.height??0)*l[1]}return a}function D8e(e,t){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}function eVn(){let e,t;return{promise:new Promise((r,s)=>{e=r,t=s}),resolve:e,reject:t}}function tVn(e){return{...r0t,...e||{}}}function F2(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r,containerBounds:s}){const{x:a,y:i}=ug(e),l=fD({x:a-(s?.left??0),y:i-(s?.top??0)},r),{x:c,y:u}=n?dD(l,t):l;return{xSnapped:c,ySnapped:u,...l}}const m1e=e=>({width:e.offsetWidth,height:e.offsetHeight}),p0t=e=>e?.getRootNode?.()||window?.document,nVn=["INPUT","SELECT","TEXTAREA"];function h0t(e){const t=e.composedPath?.()?.[0]||e.target;return t?.nodeType!==1?!1:nVn.includes(t.nodeName)||t.hasAttribute("contenteditable")||!!t.closest(".nokey")}const m0t=e=>"clientX"in e,ug=(e,t)=>{const n=m0t(e),r=n?e.clientX:e.touches?.[0].clientX,s=n?e.clientY:e.touches?.[0].clientY;return{x:r-(t?.left??0),y:s-(t?.top??0)}},L8e=(e,t,n,r,s)=>{const a=t.querySelectorAll(`.${e}`);return!a||!a.length?null:Array.from(a).map(i=>{const l=i.getBoundingClientRect();return{id:i.getAttribute("data-handleid"),type:e,nodeId:s,position:i.getAttribute("data-handlepos"),x:(l.left-n.left)/r,y:(l.top-n.top)/r,...m1e(i)}})};function g0t({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:s,sourceControlY:a,targetControlX:i,targetControlY:l}){const c=e*.125+s*.375+i*.375+n*.125,u=t*.125+a*.375+l*.375+r*.125,d=Math.abs(c-e),f=Math.abs(u-t);return[c,u,d,f]}function w6(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function F8e({pos:e,x1:t,y1:n,x2:r,y2:s,c:a}){switch(e){case nr.Left:return[t-w6(t-r,a),n];case nr.Right:return[t+w6(r-t,a),n];case nr.Top:return[t,n-w6(n-s,a)];case nr.Bottom:return[t,n+w6(s-n,a)]}}function g1e({sourceX:e,sourceY:t,sourcePosition:n=nr.Bottom,targetX:r,targetY:s,targetPosition:a=nr.Top,curvature:i=.25}){const[l,c]=F8e({pos:n,x1:e,y1:t,x2:r,y2:s,c:i}),[u,d]=F8e({pos:a,x1:r,y1:s,x2:e,y2:t,c:i}),[f,p,h,m]=g0t({sourceX:e,sourceY:t,targetX:r,targetY:s,sourceControlX:l,sourceControlY:c,targetControlX:u,targetControlY:d});return[`M${e},${t} C${l},${c} ${u},${d} ${r},${s}`,f,p,h,m]}function v0t({sourceX:e,sourceY:t,targetX:n,targetY:r}){const s=Math.abs(n-e)/2,a=n<e?n+s:n-s,i=Math.abs(r-t)/2,l=r<t?r+i:r-i;return[a,l,s,i]}function rVn({sourceNode:e,targetNode:t,selected:n=!1,zIndex:r=0,elevateOnSelect:s=!1,zIndexMode:a="basic"}){if(a==="manual")return r;const i=s&&n?r+1e3:r,l=Math.max(e.parentId||s&&e.selected?e.internals.z:0,t.parentId||s&&t.selected?t.internals.z:0);return i+l}function sVn({sourceNode:e,targetNode:t,width:n,height:r,transform:s}){const a=CV(j7(e),j7(t));a.x===a.x2&&(a.x2+=1),a.y===a.y2&&(a.y2+=1);const i={x:-s[0]/s[2],y:-s[1]/s[2],width:n/s[2],height:r/s[2]};return nM(i,EV(a))>0}const aVn=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||""}-${n}${r||""}`,iVn=(e,t)=>t.some(n=>n.source===e.source&&n.target===e.target&&(n.sourceHandle===e.sourceHandle||!n.sourceHandle&&!e.sourceHandle)&&(n.targetHandle===e.targetHandle||!n.targetHandle&&!e.targetHandle)),oVn=(e,t,n={})=>{if(!e.source||!e.target)return t;const r=n.getEdgeId||aVn;let s;return i0t(e)?s={...e}:s={...e,id:r(e)},iVn(s,t)?t:(s.sourceHandle===null&&delete s.sourceHandle,s.targetHandle===null&&delete s.targetHandle,t.concat(s))};function y0t({sourceX:e,sourceY:t,targetX:n,targetY:r}){const[s,a,i,l]=v0t({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,s,a,i,l]}const z8e={[nr.Left]:{x:-1,y:0},[nr.Right]:{x:1,y:0},[nr.Top]:{x:0,y:-1},[nr.Bottom]:{x:0,y:1}},lVn=({source:e,sourcePosition:t=nr.Bottom,target:n})=>t===nr.Left||t===nr.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},B8e=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function cVn({source:e,sourcePosition:t=nr.Bottom,target:n,targetPosition:r=nr.Top,center:s,offset:a,stepPosition:i}){const l=z8e[t],c=z8e[r],u={x:e.x+l.x*a,y:e.y+l.y*a},d={x:n.x+c.x*a,y:n.y+c.y*a},f=lVn({source:u,sourcePosition:t,target:d}),p=f.x!==0?"x":"y",h=f[p];let m=[],g,y;const b={x:0,y:0},w={x:0,y:0},[,,S,k]=v0t({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(l[p]*c[p]===-1){p==="x"?(g=s.x??u.x+(d.x-u.x)*i,y=s.y??(u.y+d.y)/2):(g=s.x??(u.x+d.x)/2,y=s.y??u.y+(d.y-u.y)*i);const j=[{x:g,y:u.y},{x:g,y:d.y}],N=[{x:u.x,y},{x:d.x,y}];l[p]===h?m=p==="x"?j:N:m=p==="x"?N:j}else{const j=[{x:u.x,y:d.y}],N=[{x:d.x,y:u.y}];if(p==="x"?m=l.x===h?N:j:m=l.y===h?j:N,t===r){const D=Math.abs(e[p]-n[p]);if(D<=a){const V=Math.min(a-1,a-D);l[p]===h?b[p]=(u[p]>e[p]?-1:1)*V:w[p]=(d[p]>n[p]?-1:1)*V}}if(t!==r){const D=p==="x"?"y":"x",V=l[p]===c[D],W=u[D]>d[D],L=u[D]<d[D];(l[p]===1&&(!V&&W||V&&L)||l[p]!==1&&(!V&&L||V&&W))&&(m=p==="x"?j:N)}const I={x:u.x+b.x,y:u.y+b.y},P={x:d.x+w.x,y:d.y+w.y},$=Math.max(Math.abs(I.x-m[0].x),Math.abs(P.x-m[0].x)),F=Math.max(Math.abs(I.y-m[0].y),Math.abs(P.y-m[0].y));$>=F?(g=(I.x+P.x)/2,y=m[0].y):(g=m[0].x,y=(I.y+P.y)/2)}const _={x:u.x+b.x,y:u.y+b.y},C={x:d.x+w.x,y:d.y+w.y};return[[e,..._.x!==m[0].x||_.y!==m[0].y?[_]:[],...m,...C.x!==m[m.length-1].x||C.y!==m[m.length-1].y?[C]:[],n],g,y,S,k]}function uVn(e,t,n,r){const s=Math.min(B8e(e,t)/2,B8e(t,n)/2,r),{x:a,y:i}=t;if(e.x===a&&a===n.x||e.y===i&&i===n.y)return`L${a} ${i}`;if(e.y===i){const u=e.x<n.x?-1:1,d=e.y<n.y?1:-1;return`L ${a+s*u},${i}Q ${a},${i} ${a},${i+s*d}`}const l=e.x<n.x?1:-1,c=e.y<n.y?-1:1;return`L ${a},${i+s*c}Q ${a},${i} ${a+s*l},${i}`}function She({sourceX:e,sourceY:t,sourcePosition:n=nr.Bottom,targetX:r,targetY:s,targetPosition:a=nr.Top,borderRadius:i=5,centerX:l,centerY:c,offset:u=20,stepPosition:d=.5}){const[f,p,h,m,g]=cVn({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:s},targetPosition:a,center:{x:l,y:c},offset:u,stepPosition:d});let y=`M${f[0].x} ${f[0].y}`;for(let b=1;b<f.length-1;b++)y+=uVn(f[b-1],f[b],f[b+1],i);return y+=`L${f[f.length-1].x} ${f[f.length-1].y}`,[y,p,h,m,g]}function U8e(e){return e&&!!(e.internals.handleBounds||e.handles?.length)&&!!(e.measured.width||e.width||e.initialWidth)}function dVn(e){const{sourceNode:t,targetNode:n}=e;if(!U8e(t)||!U8e(n))return null;const r=t.internals.handleBounds||q8e(t.handles),s=n.internals.handleBounds||q8e(n.handles),a=V8e(r?.source??[],e.sourceHandle),i=V8e(e.connectionMode===yT.Strict?s?.target??[]:(s?.target??[]).concat(s?.source??[]),e.targetHandle);if(!a||!i)return e.onError?.("008",py.error008(a?"target":"source",{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;const l=a?.position||nr.Bottom,c=i?.position||nr.Top,u=AO(t,a,l),d=AO(n,i,c);return{sourceX:u.x,sourceY:u.y,targetX:d.x,targetY:d.y,sourcePosition:l,targetPosition:c}}function q8e(e){if(!e)return null;const t=[],n=[];for(const 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 AO(e,t,n=nr.Left,r=!1){const s=(t?.x??0)+e.internals.positionAbsolute.x,a=(t?.y??0)+e.internals.positionAbsolute.y,{width:i,height:l}=t??Hx(e);if(r)return{x:s+i/2,y:a+l/2};switch(t?.position??n){case nr.Top:return{x:s+i/2,y:a};case nr.Right:return{x:s+i,y:a+l/2};case nr.Bottom:return{x:s+i/2,y:a+l};case nr.Left:return{x:s,y:a+l/2}}}function V8e(e,t){return e&&(t?e.find(n=>n.id===t):e[0])||null}function khe(e,t){return e?typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`:""}function fVn(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:s}){const a=new Set;return e.reduce((i,l)=>([l.markerStart||r,l.markerEnd||s].forEach(c=>{if(c&&typeof c=="object"){const u=khe(c,t);a.has(u)||(i.push({id:u,color:c.color||n,...c}),a.add(u))}}),i),[]).sort((i,l)=>i.id.localeCompare(l.id))}const b0t=1e3,pVn=10,v1e={nodeOrigin:[0,0],nodeExtent:J$,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},hVn={...v1e,checkEquality:!0};function y1e(e,t){const n={...e};for(const r in t)t[r]!==void 0&&(n[r]=t[r]);return n}function mVn(e,t,n){const r=y1e(v1e,n);for(const s of e.values())if(s.parentId)x1e(s,e,t,r);else{const a=cD(s,r.nodeOrigin),i=wT(s.extent)?s.extent:r.nodeExtent,l=IO(a,i,Hx(s));s.internals.positionAbsolute=l}}function gVn(e,t){if(!e.handles)return e.measured?t?.internals.handleBounds:void 0;const n=[],r=[];for(const s of e.handles){const a={id:s.id,width:s.width??1,height:s.height??1,nodeId:e.id,x:s.x,y:s.y,position:s.position,type:s.type};s.type==="source"?n.push(a):s.type==="target"&&r.push(a)}return{source:n,target:r}}function b1e(e){return e==="manual"}function Ohe(e,t,n,r={}){const s=y1e(hVn,r),a={i:0},i=new Map(t),l=s?.elevateNodesOnSelect&&!b1e(s.zIndexMode)?b0t:0;let c=e.length>0,u=!1;t.clear(),n.clear();for(const d of e){let f=i.get(d.id);if(s.checkEquality&&d===f?.internals.userNode)t.set(d.id,f);else{const p=cD(d,s.nodeOrigin),h=wT(d.extent)?d.extent:s.nodeExtent,m=IO(p,h,Hx(d));f={...s.defaults,...d,measured:{width:d.measured?.width,height:d.measured?.height},internals:{positionAbsolute:m,handleBounds:gVn(d,f),z:x0t(d,l,s.zIndexMode),userNode:d}},t.set(d.id,f)}(f.measured===void 0||f.measured.width===void 0||f.measured.height===void 0)&&!f.hidden&&(c=!1),d.parentId&&x1e(f,t,n,r,a),u||=d.selected??!1}return{nodesInitialized:c,hasSelectedNodes:u}}function vVn(e,t){if(!e.parentId)return;const n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function x1e(e,t,n,r,s){const{elevateNodesOnSelect:a,nodeOrigin:i,nodeExtent:l,zIndexMode:c}=y1e(v1e,r),u=e.parentId,d=t.get(u);if(!d){console.warn(`Parent node ${u} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}vVn(e,n),s&&!d.parentId&&d.internals.rootParentIndex===void 0&&c==="auto"&&(d.internals.rootParentIndex=++s.i,d.internals.z=d.internals.z+s.i*pVn),s&&d.internals.rootParentIndex!==void 0&&(s.i=d.internals.rootParentIndex);const f=a&&!b1e(c)?b0t:0,{x:p,y:h,z:m}=yVn(e,d,i,l,f,c),{positionAbsolute:g}=e.internals,y=p!==g.x||h!==g.y;(y||m!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:y?{x:p,y:h}:g,z:m}})}function x0t(e,t,n){const r=cg(e.zIndex)?e.zIndex:0;return b1e(n)?r:r+(e.selected?t:0)}function yVn(e,t,n,r,s,a){const{x:i,y:l}=t.internals.positionAbsolute,c=Hx(e),u=cD(e,n),d=wT(e.extent)?IO(u,e.extent,c):u;let f=IO({x:i+d.x,y:l+d.y},r,c);e.extent==="parent"&&(f=l0t(f,c,t));const p=x0t(e,s,a),h=t.internals.z??0;return{x:f.x,y:f.y,z:h>=p?h+1:p}}function w1e(e,t,n,r=[0,0]){const s=[],a=new Map;for(const i of e){const l=t.get(i.parentId);if(!l)continue;const c=a.get(i.parentId)?.expandedRect??xT(l),u=u0t(c,i.rect);a.set(i.parentId,{expandedRect:u,parent:l})}return a.size>0&&a.forEach(({expandedRect:i,parent:l},c)=>{const u=l.internals.positionAbsolute,d=Hx(l),f=l.origin??r,p=i.x<u.x?Math.round(Math.abs(u.x-i.x)):0,h=i.y<u.y?Math.round(Math.abs(u.y-i.y)):0,m=Math.max(d.width,Math.round(i.width)),g=Math.max(d.height,Math.round(i.height)),y=(m-d.width)*f[0],b=(g-d.height)*f[1];(p>0||h>0||y||b)&&(s.push({id:c,type:"position",position:{x:l.position.x-p+y,y:l.position.y-h+b}}),n.get(c)?.forEach(w=>{e.some(S=>S.id===w.id)||s.push({id:w.id,type:"position",position:{x:w.position.x+p,y:w.position.y+h}})})),(d.width<i.width||d.height<i.height||p||h)&&s.push({id:c,type:"dimensions",setAttributes:!0,dimensions:{width:m+(p?f[0]*p-y:0),height:g+(h?f[1]*h-b:0)}})}),s}function bVn(e,t,n,r,s,a,i){const l=r?.querySelector(".xyflow__viewport");let c=!1;if(!l)return{changes:[],updatedInternals:c};const u=[],d=window.getComputedStyle(l),{m22:f}=new window.DOMMatrixReadOnly(d.transform),p=[];for(const h of e.values()){const m=t.get(h.id);if(!m)continue;if(m.hidden){t.set(m.id,{...m,internals:{...m.internals,handleBounds:void 0}}),c=!0;continue}const g=m1e(h.nodeElement),y=m.measured.width!==g.width||m.measured.height!==g.height;if(!!(g.width&&g.height&&(y||!m.internals.handleBounds||h.force))){const w=h.nodeElement.getBoundingClientRect(),S=wT(m.extent)?m.extent:a;let{positionAbsolute:k}=m.internals;m.parentId&&m.extent==="parent"?k=l0t(k,g,t.get(m.parentId)):S&&(k=IO(k,S,g));const _={...m,measured:g,internals:{...m.internals,positionAbsolute:k,handleBounds:{source:L8e("source",h.nodeElement,w,f,m.id),target:L8e("target",h.nodeElement,w,f,m.id)}}};t.set(m.id,_),m.parentId&&x1e(_,t,n,{nodeOrigin:s,zIndexMode:i}),c=!0,y&&(u.push({id:m.id,type:"dimensions",dimensions:g}),m.expandParent&&m.parentId&&p.push({id:m.id,parentId:m.parentId,rect:xT(_,s)}))}}if(p.length>0){const h=w1e(p,t,n,s);u.push(...h)}return{changes:u,updatedInternals:c}}async function xVn({delta:e,panZoom:t,transform:n,translateExtent:r,width:s,height:a}){if(!t||!e.x&&!e.y)return Promise.resolve(!1);const i=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[s,a]],r),l=!!i&&(i.x!==n[0]||i.y!==n[1]||i.k!==n[2]);return Promise.resolve(l)}function H8e(e,t,n,r,s,a){let i=s;const l=r.get(i)||new Map;r.set(i,l.set(n,t)),i=`${s}-${e}`;const c=r.get(i)||new Map;if(r.set(i,c.set(n,t)),a){i=`${s}-${e}-${a}`;const u=r.get(i)||new Map;r.set(i,u.set(n,t))}}function w0t(e,t,n){e.clear(),t.clear();for(const r of n){const{source:s,target:a,sourceHandle:i=null,targetHandle:l=null}=r,c={edgeId:r.id,source:s,target:a,sourceHandle:i,targetHandle:l},u=`${s}-${i}--${a}-${l}`,d=`${a}-${l}--${s}-${i}`;H8e("source",c,d,e,s,i),H8e("target",c,u,e,a,l),t.set(r.id,r)}}function S0t(e,t){if(!e.parentId)return!1;const n=t.get(e.parentId);return n?n.selected?!0:S0t(n,t):!1}function W8e(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 wVn(e,t,n,r){const s=new Map;for(const[a,i]of e)if((i.selected||i.id===r)&&(!i.parentId||!S0t(i,e))&&(i.draggable||t&&typeof i.draggable>"u")){const l=e.get(a);l&&s.set(a,{id:a,position:l.position||{x:0,y:0},distance:{x:n.x-l.internals.positionAbsolute.x,y:n.y-l.internals.positionAbsolute.y},extent:l.extent,parentId:l.parentId,origin:l.origin,expandParent:l.expandParent,internals:{positionAbsolute:l.internals.positionAbsolute||{x:0,y:0}},measured:{width:l.measured.width??0,height:l.measured.height??0}})}return s}function LJ({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){const s=[];for(const[i,l]of t){const c=n.get(i)?.internals.userNode;c&&s.push({...c,position:l.position,dragging:r})}if(!e)return[s[0],s];const a=n.get(e)?.internals.userNode;return[a?{...a,position:t.get(e)?.position||a.position,dragging:r}:s[0],s]}function SVn({dragItems:e,snapGrid:t,x:n,y:r}){const s=e.values().next().value;if(!s)return null;const a={x:n-s.distance.x,y:r-s.distance.y},i=dD(a,t);return{x:i.x-a.x,y:i.y-a.y}}function kVn({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:s}){let a={x:null,y:null},i=0,l=new Map,c=!1,u={x:0,y:0},d=null,f=!1,p=null,h=!1,m=!1,g=null;function y({noDragClassName:w,handleSelector:S,domNode:k,isSelectable:_,nodeId:C,nodeClickDistance:E=0}){p=fp(k);function j({x:$,y:F}){const{nodeLookup:D,nodeExtent:V,snapGrid:W,snapToGrid:L,nodeOrigin:B,onNodeDrag:z,onSelectionDrag:M,onError:G,updateNodePositions:q}=t();a={x:$,y:F};let R=!1;const U=l.size>1,Z=U&&V?whe(uD(l)):null,X=U&&L?SVn({dragItems:l,snapGrid:W,x:$,y:F}):null;for(const[te,J]of l){if(!D.has(te))continue;let ee={x:$-J.distance.x,y:F-J.distance.y};L&&(ee=X?{x:Math.round(ee.x+X.x),y:Math.round(ee.y+X.y)}:dD(ee,W));let ae=null;if(U&&V&&!J.extent&&Z){const{positionAbsolute:ne}=J.internals,ue=ne.x-Z.x+V[0][0],pe=ne.x+J.measured.width-Z.x2+V[1][0],le=ne.y-Z.y+V[0][1],ve=ne.y+J.measured.height-Z.y2+V[1][1];ae=[[ue,le],[pe,ve]]}const{position:ce,positionAbsolute:Y}=o0t({nodeId:te,nextPosition:ee,nodeLookup:D,nodeExtent:ae||V,nodeOrigin:B,onError:G});R=R||J.position.x!==ce.x||J.position.y!==ce.y,J.position=ce,J.internals.positionAbsolute=Y}if(m=m||R,!!R&&(q(l,!0),g&&(r||z||!C&&M))){const[te,J]=LJ({nodeId:C,dragItems:l,nodeLookup:D});r?.(g,l,te,J),z?.(g,te,J),C||M?.(g,J)}}async function N(){if(!d)return;const{transform:$,panBy:F,autoPanSpeed:D,autoPanOnNodeDrag:V}=t();if(!V){c=!1,cancelAnimationFrame(i);return}const[W,L]=c0t(u,d,D);(W!==0||L!==0)&&(a.x=(a.x??0)-W/$[2],a.y=(a.y??0)-L/$[2],await F({x:W,y:L})&&j(a)),i=requestAnimationFrame(N)}function I($){const{nodeLookup:F,multiSelectionActive:D,nodesDraggable:V,transform:W,snapGrid:L,snapToGrid:B,selectNodesOnDrag:z,onNodeDragStart:M,onSelectionDragStart:G,unselectNodesAndEdges:q}=t();f=!0,(!z||!_)&&!D&&C&&(F.get(C)?.selected||q()),_&&z&&C&&e?.(C);const R=F2($.sourceEvent,{transform:W,snapGrid:L,snapToGrid:B,containerBounds:d});if(a=R,l=wVn(F,V,R,C),l.size>0&&(n||M||!C&&G)){const[U,Z]=LJ({nodeId:C,dragItems:l,nodeLookup:F});n?.($.sourceEvent,l,U,Z),M?.($.sourceEvent,U,Z),C||G?.($.sourceEvent,Z)}}const P=zxt().clickDistance(E).on("start",$=>{const{domNode:F,nodeDragThreshold:D,transform:V,snapGrid:W,snapToGrid:L}=t();d=F?.getBoundingClientRect()||null,h=!1,m=!1,g=$.sourceEvent,D===0&&I($),a=F2($.sourceEvent,{transform:V,snapGrid:W,snapToGrid:L,containerBounds:d}),u=ug($.sourceEvent,d)}).on("drag",$=>{const{autoPanOnNodeDrag:F,transform:D,snapGrid:V,snapToGrid:W,nodeDragThreshold:L,nodeLookup:B}=t(),z=F2($.sourceEvent,{transform:D,snapGrid:V,snapToGrid:W,containerBounds:d});if(g=$.sourceEvent,($.sourceEvent.type==="touchmove"&&$.sourceEvent.touches.length>1||C&&!B.has(C))&&(h=!0),!h){if(!c&&F&&f&&(c=!0,N()),!f){const M=ug($.sourceEvent,d),G=M.x-u.x,q=M.y-u.y;Math.sqrt(G*G+q*q)>L&&I($)}(a.x!==z.xSnapped||a.y!==z.ySnapped)&&l&&f&&(u=ug($.sourceEvent,d),j(z))}}).on("end",$=>{if(!(!f||h)&&(c=!1,f=!1,cancelAnimationFrame(i),l.size>0)){const{nodeLookup:F,updateNodePositions:D,onNodeDragStop:V,onSelectionDragStop:W}=t();if(m&&(D(l,!1),m=!1),s||V||!C&&W){const[L,B]=LJ({nodeId:C,dragItems:l,nodeLookup:F,dragging:!1});s?.($.sourceEvent,l,L,B),V?.($.sourceEvent,L,B),C||W?.($.sourceEvent,B)}}}).filter($=>{const F=$.target;return!$.button&&(!w||!W8e(F,`.${w}`,k))&&(!S||W8e(F,S,k))});p.call(P)}function b(){p?.on(".drag",null)}return{update:y,destroy:b}}function OVn(e,t,n){const r=[],s={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const a of t.values())nM(s,xT(a))>0&&r.push(a);return r}const _Vn=250;function CVn(e,t,n,r){let s=[],a=1/0;const i=OVn(e,n,t+_Vn);for(const l of i){const c=[...l.internals.handleBounds?.source??[],...l.internals.handleBounds?.target??[]];for(const u of c){if(r.nodeId===u.nodeId&&r.type===u.type&&r.id===u.id)continue;const{x:d,y:f}=AO(l,u,u.position,!0),p=Math.sqrt(Math.pow(d-e.x,2)+Math.pow(f-e.y,2));p>t||(p<a?(s=[{...u,x:d,y:f}],a=p):p===a&&s.push({...u,x:d,y:f}))}}if(!s.length)return null;if(s.length>1){const l=r.type==="source"?"target":"source";return s.find(c=>c.type===l)??s[0]}return s[0]}function k0t(e,t,n,r,s,a=!1){const i=r.get(e);if(!i)return null;const l=s==="strict"?i.internals.handleBounds?.[t]:[...i.internals.handleBounds?.source??[],...i.internals.handleBounds?.target??[]],c=(n?l?.find(u=>u.id===n):l?.[0])??null;return c&&a?{...c,...AO(i,c,c.position,!0)}:c}function O0t(e,t){return e||(t?.classList.contains("target")?"target":t?.classList.contains("source")?"source":null)}function EVn(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}const _0t=()=>!0;function jVn(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:s,edgeUpdaterType:a,isTarget:i,domNode:l,nodeLookup:c,lib:u,autoPanOnConnect:d,flowId:f,panBy:p,cancelConnection:h,onConnectStart:m,onConnect:g,onConnectEnd:y,isValidConnection:b=_0t,onReconnectEnd:w,updateConnection:S,getTransform:k,getFromHandle:_,autoPanSpeed:C,dragThreshold:E=1,handleDomNode:j}){const N=p0t(e.target);let I=0,P;const{x:$,y:F}=ug(e),D=O0t(a,j),V=l?.getBoundingClientRect();let W=!1;if(!V||!D)return;const L=k0t(s,D,r,c,t);if(!L)return;let B=ug(e,V),z=!1,M=null,G=!1,q=null;function R(){if(!d||!V)return;const[ce,Y]=c0t(B,V,C);p({x:ce,y:Y}),I=requestAnimationFrame(R)}const U={...L,nodeId:s,type:D,position:L.position},Z=c.get(s);let te={inProgress:!0,isValid:null,from:AO(Z,U,nr.Left,!0),fromHandle:U,fromPosition:U.position,fromNode:Z,to:B,toHandle:null,toPosition:P8e[U.position],toNode:null,pointer:B};function J(){W=!0,S(te),m?.(e,{nodeId:s,handleId:r,handleType:D})}E===0&&J();function ee(ce){if(!W){const{x:ve,y:ye}=ug(ce),Se=ve-$,Ne=ye-F;if(!(Se*Se+Ne*Ne>E*E))return;J()}if(!_()||!U){ae(ce);return}const Y=k();B=ug(ce,V),P=CVn(fD(B,Y,!1,[1,1]),n,c,U),z||(R(),z=!0);const ne=C0t(ce,{handle:P,connectionMode:t,fromNodeId:s,fromHandleId:r,fromType:i?"target":"source",isValidConnection:b,doc:N,lib:u,flowId:f,nodeLookup:c});q=ne.handleDomNode,M=ne.connection,G=EVn(!!P,ne.isValid);const ue=c.get(s),pe=ue?AO(ue,U,nr.Left,!0):te.from,le={...te,from:pe,isValid:G,to:ne.toHandle&&G?T7({x:ne.toHandle.x,y:ne.toHandle.y},Y):B,toHandle:ne.toHandle,toPosition:G&&ne.toHandle?ne.toHandle.position:P8e[U.position],toNode:ne.toHandle?c.get(ne.toHandle.nodeId):null,pointer:B};S(le),te=le}function ae(ce){if(!("touches"in ce&&ce.touches.length>0)){if(W){(P||q)&&M&&G&&g?.(M);const{inProgress:Y,...ne}=te,ue={...ne,toPosition:te.toHandle?te.toPosition:null};y?.(ce,ue),a&&w?.(ce,ue)}h(),cancelAnimationFrame(I),z=!1,G=!1,M=null,q=null,N.removeEventListener("mousemove",ee),N.removeEventListener("mouseup",ae),N.removeEventListener("touchmove",ee),N.removeEventListener("touchend",ae)}}N.addEventListener("mousemove",ee),N.addEventListener("mouseup",ae),N.addEventListener("touchmove",ee),N.addEventListener("touchend",ae)}function C0t(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:s,fromType:a,doc:i,lib:l,flowId:c,isValidConnection:u=_0t,nodeLookup:d}){const f=a==="target",p=t?i.querySelector(`.${l}-flow__handle[data-id="${c}-${t?.nodeId}-${t?.id}-${t?.type}"]`):null,{x:h,y:m}=ug(e),g=i.elementFromPoint(h,m),y=g?.classList.contains(`${l}-flow__handle`)?g:p,b={handleDomNode:y,isValid:!1,connection:null,toHandle:null};if(y){const w=O0t(void 0,y),S=y.getAttribute("data-nodeid"),k=y.getAttribute("data-handleid"),_=y.classList.contains("connectable"),C=y.classList.contains("connectableend");if(!S||!w)return b;const E={source:f?S:r,sourceHandle:f?k:s,target:f?r:S,targetHandle:f?s:k};b.connection=E;const N=_&&C&&(n===yT.Strict?f&&w==="source"||!f&&w==="target":S!==r||k!==s);b.isValid=N&&u(E),b.toHandle=k0t(S,w,k,d,n,!0)}return b}const _he={onPointerDown:jVn,isValid:C0t};function TVn({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){const s=fp(e);function a({translateExtent:l,width:c,height:u,zoomStep:d=1,pannable:f=!0,zoomable:p=!0,inversePan:h=!1}){const m=S=>{if(S.sourceEvent.type!=="wheel"||!t)return;const k=n(),_=S.sourceEvent.ctrlKey&&rM()?10:1,C=-S.sourceEvent.deltaY*(S.sourceEvent.deltaMode===1?.05:S.sourceEvent.deltaMode?1:.002)*d,E=k[2]*Math.pow(2,C*_);t.scaleTo(E)};let g=[0,0];const y=S=>{(S.sourceEvent.type==="mousedown"||S.sourceEvent.type==="touchstart")&&(g=[S.sourceEvent.clientX??S.sourceEvent.touches[0].clientX,S.sourceEvent.clientY??S.sourceEvent.touches[0].clientY])},b=S=>{const k=n();if(S.sourceEvent.type!=="mousemove"&&S.sourceEvent.type!=="touchmove"||!t)return;const _=[S.sourceEvent.clientX??S.sourceEvent.touches[0].clientX,S.sourceEvent.clientY??S.sourceEvent.touches[0].clientY],C=[_[0]-g[0],_[1]-g[1]];g=_;const E=r()*Math.max(k[2],Math.log(k[2]))*(h?-1:1),j={x:k[0]-C[0]*E,y:k[1]-C[1]*E},N=[[0,0],[c,u]];t.setViewportConstrained({x:j.x,y:j.y,zoom:k[2]},N,l)},w=t0t().on("start",y).on("zoom",f?b:null).on("zoom.wheel",p?m:null);s.call(w,{})}function i(){s.on("zoom",null)}return{update:a,destroy:i,pointer:Xm}}const jV=e=>({x:e.x,y:e.y,zoom:e.k}),FJ=({x:e,y:t,zoom:n})=>_V.translate(e,t).scale(n),BE=(e,t)=>e.target.closest(`.${t}`),E0t=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),NVn=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,zJ=(e,t=0,n=NVn,r=()=>{})=>{const s=typeof t=="number"&&t>0;return s||r(),s?e.transition().duration(t).ease(n).on("end",r):e},j0t=e=>{const t=e.ctrlKey&&rM()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function IVn({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:s,panOnScrollSpeed:a,zoomOnPinch:i,onPanZoomStart:l,onPanZoom:c,onPanZoomEnd:u}){return d=>{if(BE(d,t))return d.ctrlKey&&d.preventDefault(),!1;d.preventDefault(),d.stopImmediatePropagation();const f=n.property("__zoom").k||1;if(d.ctrlKey&&i){const y=Xm(d),b=j0t(d),w=f*Math.pow(2,b);r.scaleTo(n,w,y,d);return}const p=d.deltaMode===1?20:1;let h=s===Uk.Vertical?0:d.deltaX*p,m=s===Uk.Horizontal?0:d.deltaY*p;!rM()&&d.shiftKey&&s!==Uk.Vertical&&(h=d.deltaY*p,m=0),r.translateBy(n,-(h/f)*a,-(m/f)*a,{internal:!0});const g=jV(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(c?.(d,g),e.panScrollTimeout=setTimeout(()=>{u?.(d,g),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,l?.(d,g))}}function AVn({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,s){const a=r.type==="wheel",i=!t&&a&&!r.ctrlKey,l=BE(r,e);if(r.ctrlKey&&a&&l&&r.preventDefault(),i||l)return null;r.preventDefault(),n.call(this,r,s)}}function RVn({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{if(r.sourceEvent?.internal)return;const s=jV(r.transform);e.mouseButton=r.sourceEvent?.button||0,e.isZoomingOrPanning=!0,e.prevViewport=s,r.sourceEvent?.type==="mousedown"&&t(!0),n&&n?.(r.sourceEvent,s)}}function PVn({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:s}){return a=>{e.usedRightMouseButton=!!(n&&E0t(t,e.mouseButton??0)),a.sourceEvent?.sync||r([a.transform.x,a.transform.y,a.transform.k]),s&&!a.sourceEvent?.internal&&s?.(a.sourceEvent,jV(a.transform))}}function $Vn({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:s,onPaneContextMenu:a}){return i=>{if(!i.sourceEvent?.internal&&(e.isZoomingOrPanning=!1,a&&E0t(t,e.mouseButton??0)&&!e.usedRightMouseButton&&i.sourceEvent&&a(i.sourceEvent),e.usedRightMouseButton=!1,r(!1),s)){const l=jV(i.transform);e.prevViewport=l,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{s?.(i.sourceEvent,l)},n?150:0)}}}function MVn({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:r,panOnScroll:s,zoomOnDoubleClick:a,userSelectionActive:i,noWheelClassName:l,noPanClassName:c,lib:u,connectionInProgress:d}){return f=>{const p=e||t,h=n&&f.ctrlKey,m=f.type==="wheel";if(f.button===1&&f.type==="mousedown"&&(BE(f,`${u}-flow__node`)||BE(f,`${u}-flow__edge`)))return!0;if(!r&&!p&&!s&&!a&&!n||i||d&&!m||BE(f,l)&&m||BE(f,c)&&(!m||s&&m&&!e)||!n&&f.ctrlKey&&m)return!1;if(!n&&f.type==="touchstart"&&f.touches?.length>1)return f.preventDefault(),!1;if(!p&&!s&&!h&&m||!r&&(f.type==="mousedown"||f.type==="touchstart")||Array.isArray(r)&&!r.includes(f.button)&&f.type==="mousedown")return!1;const g=Array.isArray(r)&&r.includes(f.button)||!f.button||f.button<=1;return(!f.ctrlKey||m)&&g}}function DVn({domNode:e,minZoom:t,maxZoom:n,translateExtent:r,viewport:s,onPanZoom:a,onPanZoomStart:i,onPanZoomEnd:l,onDraggingChange:c}){const u={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},d=e.getBoundingClientRect(),f=t0t().scaleExtent([t,n]).translateExtent(r),p=fp(e).call(f);w({x:s.x,y:s.y,zoom:bT(s.zoom,t,n)},[[0,0],[d.width,d.height]],r);const h=p.on("wheel.zoom"),m=p.on("dblclick.zoom");f.wheelDelta(j0t);function g(P,$){return p?new Promise(F=>{f?.interpolate($?.interpolate==="linear"?rx:V9).transform(zJ(p,$?.duration,$?.ease,()=>F(!0)),P)}):Promise.resolve(!1)}function y({noWheelClassName:P,noPanClassName:$,onPaneContextMenu:F,userSelectionActive:D,panOnScroll:V,panOnDrag:W,panOnScrollMode:L,panOnScrollSpeed:B,preventScrolling:z,zoomOnPinch:M,zoomOnScroll:G,zoomOnDoubleClick:q,zoomActivationKeyPressed:R,lib:U,onTransformChange:Z,connectionInProgress:X,paneClickDistance:te,selectionOnDrag:J}){D&&!u.isZoomingOrPanning&&b();const ee=V&&!R&&!D;f.clickDistance(J?1/0:!cg(te)||te<0?0:te);const ae=ee?IVn({zoomPanValues:u,noWheelClassName:P,d3Selection:p,d3Zoom:f,panOnScrollMode:L,panOnScrollSpeed:B,zoomOnPinch:M,onPanZoomStart:i,onPanZoom:a,onPanZoomEnd:l}):AVn({noWheelClassName:P,preventScrolling:z,d3ZoomHandler:h});if(p.on("wheel.zoom",ae,{passive:!1}),!D){const Y=RVn({zoomPanValues:u,onDraggingChange:c,onPanZoomStart:i});f.on("start",Y);const ne=PVn({zoomPanValues:u,panOnDrag:W,onPaneContextMenu:!!F,onPanZoom:a,onTransformChange:Z});f.on("zoom",ne);const ue=$Vn({zoomPanValues:u,panOnDrag:W,panOnScroll:V,onPaneContextMenu:F,onPanZoomEnd:l,onDraggingChange:c});f.on("end",ue)}const ce=MVn({zoomActivationKeyPressed:R,panOnDrag:W,zoomOnScroll:G,panOnScroll:V,zoomOnDoubleClick:q,zoomOnPinch:M,userSelectionActive:D,noPanClassName:$,noWheelClassName:P,lib:U,connectionInProgress:X});f.filter(ce),q?p.on("dblclick.zoom",m):p.on("dblclick.zoom",null)}function b(){f.on("zoom",null)}async function w(P,$,F){const D=FJ(P),V=f?.constrain()(D,$,F);return V&&await g(V),new Promise(W=>W(V))}async function S(P,$){const F=FJ(P);return await g(F,$),new Promise(D=>D(F))}function k(P){if(p){const $=FJ(P),F=p.property("__zoom");(F.k!==P.zoom||F.x!==P.x||F.y!==P.y)&&f?.transform(p,$,null,{sync:!0})}}function _(){const P=p?e0t(p.node()):{x:0,y:0,k:1};return{x:P.x,y:P.y,zoom:P.k}}function C(P,$){return p?new Promise(F=>{f?.interpolate($?.interpolate==="linear"?rx:V9).scaleTo(zJ(p,$?.duration,$?.ease,()=>F(!0)),P)}):Promise.resolve(!1)}function E(P,$){return p?new Promise(F=>{f?.interpolate($?.interpolate==="linear"?rx:V9).scaleBy(zJ(p,$?.duration,$?.ease,()=>F(!0)),P)}):Promise.resolve(!1)}function j(P){f?.scaleExtent(P)}function N(P){f?.translateExtent(P)}function I(P){const $=!cg(P)||P<0?0:P;f?.clickDistance($)}return{update:y,destroy:b,setViewport:S,setViewportConstrained:w,getViewport:_,scaleTo:C,scaleBy:E,setScaleExtent:j,setTranslateExtent:N,syncViewport:k,setClickDistance:I}}var ST;(function(e){e.Line="line",e.Handle="handle"})(ST||(ST={}));function LVn({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:s,affectsY:a}){const i=e-t,l=n-r,c=[i>0?1:i<0?-1:0,l>0?1:l<0?-1:0];return i&&s&&(c[0]=c[0]*-1),l&&a&&(c[1]=c[1]*-1),c}function Z8e(e){const t=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),r=e.includes("left"),s=e.includes("top");return{isHorizontal:t,isVertical:n,affectsX:r,affectsY:s}}function D0(e,t){return Math.max(0,t-e)}function L0(e,t){return Math.max(0,e-t)}function S6(e,t,n){return Math.max(0,t-e,e-n)}function G8e(e,t){return e?!t:t}function FVn(e,t,n,r,s,a,i,l){let{affectsX:c,affectsY:u}=t;const{isHorizontal:d,isVertical:f}=t,p=d&&f,{xSnapped:h,ySnapped:m}=n,{minWidth:g,maxWidth:y,minHeight:b,maxHeight:w}=r,{x:S,y:k,width:_,height:C,aspectRatio:E}=e;let j=Math.floor(d?h-e.pointerX:0),N=Math.floor(f?m-e.pointerY:0);const I=_+(c?-j:j),P=C+(u?-N:N),$=-a[0]*_,F=-a[1]*C;let D=S6(I,g,y),V=S6(P,b,w);if(i){let B=0,z=0;c&&j<0?B=D0(S+j+$,i[0][0]):!c&&j>0&&(B=L0(S+I+$,i[1][0])),u&&N<0?z=D0(k+N+F,i[0][1]):!u&&N>0&&(z=L0(k+P+F,i[1][1])),D=Math.max(D,B),V=Math.max(V,z)}if(l){let B=0,z=0;c&&j>0?B=L0(S+j,l[0][0]):!c&&j<0&&(B=D0(S+I,l[1][0])),u&&N>0?z=L0(k+N,l[0][1]):!u&&N<0&&(z=D0(k+P,l[1][1])),D=Math.max(D,B),V=Math.max(V,z)}if(s){if(d){const B=S6(I/E,b,w)*E;if(D=Math.max(D,B),i){let z=0;!c&&!u||c&&!u&&p?z=L0(k+F+I/E,i[1][1])*E:z=D0(k+F+(c?j:-j)/E,i[0][1])*E,D=Math.max(D,z)}if(l){let z=0;!c&&!u||c&&!u&&p?z=D0(k+I/E,l[1][1])*E:z=L0(k+(c?j:-j)/E,l[0][1])*E,D=Math.max(D,z)}}if(f){const B=S6(P*E,g,y)/E;if(V=Math.max(V,B),i){let z=0;!c&&!u||u&&!c&&p?z=L0(S+P*E+$,i[1][0])/E:z=D0(S+(u?N:-N)*E+$,i[0][0])/E,V=Math.max(V,z)}if(l){let z=0;!c&&!u||u&&!c&&p?z=D0(S+P*E,l[1][0])/E:z=L0(S+(u?N:-N)*E,l[0][0])/E,V=Math.max(V,z)}}}N=N+(N<0?V:-V),j=j+(j<0?D:-D),s&&(p?I>P*E?N=(G8e(c,u)?-j:j)/E:j=(G8e(c,u)?-N:N)*E:d?(N=j/E,u=c):(j=N*E,c=u));const W=c?S+j:S,L=u?k+N:k;return{width:_+(c?-j:j),height:C+(u?-N:N),x:a[0]*j*(c?-1:1)+W,y:a[1]*N*(u?-1:1)+L}}const T0t={width:0,height:0,x:0,y:0},zVn={...T0t,pointerX:0,pointerY:0,aspectRatio:1};function BVn(e){return[[0,0],[e.measured.width,e.measured.height]]}function UVn(e,t,n){const r=t.position.x+e.position.x,s=t.position.y+e.position.y,a=e.measured.width??0,i=e.measured.height??0,l=n[0]*a,c=n[1]*i;return[[r-l,s-c],[r+a-l,s+i-c]]}function qVn({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:s}){const a=fp(e);let i={controlDirection:Z8e("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function l({controlPosition:u,boundaries:d,keepAspectRatio:f,resizeDirection:p,onResizeStart:h,onResize:m,onResizeEnd:g,shouldResize:y}){let b={...T0t},w={...zVn};i={boundaries:d,resizeDirection:p,keepAspectRatio:f,controlDirection:Z8e(u)};let S,k=null,_=[],C,E,j,N=!1;const I=zxt().on("start",P=>{const{nodeLookup:$,transform:F,snapGrid:D,snapToGrid:V,nodeOrigin:W,paneDomNode:L}=n();if(S=$.get(t),!S)return;k=L?.getBoundingClientRect()??null;const{xSnapped:B,ySnapped:z}=F2(P.sourceEvent,{transform:F,snapGrid:D,snapToGrid:V,containerBounds:k});b={width:S.measured.width??0,height:S.measured.height??0,x:S.position.x??0,y:S.position.y??0},w={...b,pointerX:B,pointerY:z,aspectRatio:b.width/b.height},C=void 0,S.parentId&&(S.extent==="parent"||S.expandParent)&&(C=$.get(S.parentId),E=C&&S.extent==="parent"?BVn(C):void 0),_=[],j=void 0;for(const[M,G]of $)if(G.parentId===t&&(_.push({id:M,position:{...G.position},extent:G.extent}),G.extent==="parent"||G.expandParent)){const q=UVn(G,S,G.origin??W);j?j=[[Math.min(q[0][0],j[0][0]),Math.min(q[0][1],j[0][1])],[Math.max(q[1][0],j[1][0]),Math.max(q[1][1],j[1][1])]]:j=q}h?.(P,{...b})}).on("drag",P=>{const{transform:$,snapGrid:F,snapToGrid:D,nodeOrigin:V}=n(),W=F2(P.sourceEvent,{transform:$,snapGrid:F,snapToGrid:D,containerBounds:k}),L=[];if(!S)return;const{x:B,y:z,width:M,height:G}=b,q={},R=S.origin??V,{width:U,height:Z,x:X,y:te}=FVn(w,i.controlDirection,W,i.boundaries,i.keepAspectRatio,R,E,j),J=U!==M,ee=Z!==G,ae=X!==B&&J,ce=te!==z&ⅇif(!ae&&!ce&&!J&&!ee)return;if((ae||ce||R[0]===1||R[1]===1)&&(q.x=ae?X:b.x,q.y=ce?te:b.y,b.x=q.x,b.y=q.y,_.length>0)){const pe=X-B,le=te-z;for(const ve of _)ve.position={x:ve.position.x-pe+R[0]*(U-M),y:ve.position.y-le+R[1]*(Z-G)},L.push(ve)}if((J||ee)&&(q.width=J&&(!i.resizeDirection||i.resizeDirection==="horizontal")?U:b.width,q.height=ee&&(!i.resizeDirection||i.resizeDirection==="vertical")?Z:b.height,b.width=q.width,b.height=q.height),C&&S.expandParent){const pe=R[0]*(q.width??0);q.x&&q.x<pe&&(b.x=pe,w.x=w.x-(q.x-pe));const le=R[1]*(q.height??0);q.y&&q.y<le&&(b.y=le,w.y=w.y-(q.y-le))}const Y=LVn({width:b.width,prevWidth:M,height:b.height,prevHeight:G,affectsX:i.controlDirection.affectsX,affectsY:i.controlDirection.affectsY}),ne={...b,direction:Y};y?.(P,ne)!==!1&&(N=!0,m?.(P,ne),r(q,L))}).on("end",P=>{N&&(g?.(P,{...b}),s?.({...b}),N=!1)});a.call(I)}function c(){a.on(".drag",null)}return{update:l,destroy:c}}const VVn={},Q8e=e=>{let t;const n=new Set,r=(d,f)=>{const p=typeof d=="function"?d(t):d;if(!Object.is(p,t)){const h=t;t=f??(typeof p!="object"||p===null)?p:Object.assign({},t,p),n.forEach(m=>m(t,h))}},s=()=>t,c={setState:r,getState:s,getInitialState:()=>u,subscribe:d=>(n.add(d),()=>n.delete(d)),destroy:()=>{(VVn?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},u=t=e(r,s,c);return c},HVn=e=>e?Q8e(e):Q8e,{useDebugValue:WVn}=Le,{useSyncExternalStoreWithSelector:ZVn}=xwn,GVn=e=>e;function N0t(e,t=GVn,n){const r=ZVn(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return WVn(r),r}const Y8e=(e,t)=>{const n=HVn(e),r=(s,a=t)=>N0t(n,s,a);return Object.assign(r,n),r},QVn=(e,t)=>e?Y8e(e,t):Y8e;function to(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[r,s]of e)if(!Object.is(s,t.get(r)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}const TV=v.createContext(null),YVn=TV.Provider,I0t=py.error001();function Us(e,t){const n=v.useContext(TV);if(n===null)throw new Error(I0t);return N0t(n,e,t)}function wo(){const e=v.useContext(TV);if(e===null)throw new Error(I0t);return v.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const X8e={display:"none"},XVn={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},A0t="react-flow__node-desc",R0t="react-flow__edge-desc",KVn="react-flow__aria-live",JVn=e=>e.ariaLiveMessage,eHn=e=>e.ariaLabelConfig;function tHn({rfId:e}){const t=Us(JVn);return o.jsx("div",{id:`${KVn}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:XVn,children:t})}function nHn({rfId:e,disableKeyboardA11y:t}){const n=Us(eHn);return o.jsxs(o.Fragment,{children:[o.jsx("div",{id:`${A0t}-${e}`,style:X8e,children:t?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),o.jsx("div",{id:`${R0t}-${e}`,style:X8e,children:n["edge.a11yDescription.default"]}),!t&&o.jsx(tHn,{rfId:e})]})}const pD=v.forwardRef(({position:e="top-left",children:t,className:n,style:r,...s},a)=>{const i=`${e}`.split("-");return o.jsx("div",{className:Pl(["react-flow__panel",n,...i]),style:r,ref:a,...s,children:t})});pD.displayName="Panel";function rHn({proOptions:e,position:t="bottom-right"}){return e?.hideAttribution?null:o.jsx(pD,{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:o.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const sHn=e=>{const t=[],n=[];for(const[,r]of e.nodeLookup)r.selected&&t.push(r.internals.userNode);for(const[,r]of e.edgeLookup)r.selected&&n.push(r);return{selectedNodes:t,selectedEdges:n}},k6=e=>e.id;function aHn(e,t){return to(e.selectedNodes.map(k6),t.selectedNodes.map(k6))&&to(e.selectedEdges.map(k6),t.selectedEdges.map(k6))}function iHn({onSelectionChange:e}){const t=wo(),{selectedNodes:n,selectedEdges:r}=Us(sHn,aHn);return v.useEffect(()=>{const s={nodes:n,edges:r};e?.(s),t.getState().onSelectionChangeHandlers.forEach(a=>a(s))},[n,r,e]),null}const oHn=e=>!!e.onSelectionChangeHandlers;function lHn({onSelectionChange:e}){const t=Us(oHn);return e||t?o.jsx(iHn,{onSelectionChange:e}):null}const Che=typeof window<"u"?v.useLayoutEffect:v.useEffect,P0t=[0,0],cHn={x:0,y:0,zoom:1},uHn=["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"],K8e=[...uHn,"rfId"],dHn=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}),J8e={translateExtent:J$,nodeOrigin:P0t,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function fHn(e){const{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:s,setTranslateExtent:a,setNodeExtent:i,reset:l,setDefaultNodesAndEdges:c}=Us(dHn,to),u=wo();Che(()=>(c(e.defaultNodes,e.defaultEdges),()=>{d.current=J8e,l()}),[]);const d=v.useRef(J8e);return Che(()=>{for(const f of K8e){const p=e[f],h=d.current[f];p!==h&&(typeof e[f]>"u"||(f==="nodes"?t(p):f==="edges"?n(p):f==="minZoom"?r(p):f==="maxZoom"?s(p):f==="translateExtent"?a(p):f==="nodeExtent"?i(p):f==="ariaLabelConfig"?u.setState({ariaLabelConfig:tVn(p)}):f==="fitView"?u.setState({fitViewQueued:p}):f==="fitViewOptions"?u.setState({fitViewOptions:p}):u.setState({[f]:p})))}d.current=e},K8e.map(f=>e[f])),null}function e9e(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function pHn(e){const[t,n]=v.useState(e==="system"?null:e);return v.useEffect(()=>{if(e!=="system"){n(e);return}const r=e9e(),s=()=>n(r?.matches?"dark":"light");return s(),r?.addEventListener("change",s),()=>{r?.removeEventListener("change",s)}},[e]),t!==null?t:e9e()?.matches?"dark":"light"}const t9e=typeof document<"u"?document:null;function sM(e=null,t={target:t9e,actInsideInputWithModifier:!0}){const[n,r]=v.useState(!1),s=v.useRef(!1),a=v.useRef(new Set([])),[i,l]=v.useMemo(()=>{if(e!==null){const u=(Array.isArray(e)?e:[e]).filter(f=>typeof f=="string").map(f=>f.replace("+",`
|
|
337
337
|
`).replace(`
|
|
338
338
|
|
|
339
339
|
`,`
|
|
@@ -724,7 +724,7 @@ window.parent.postMessage({jsonrpc:'2.0',method:'ui/notifications/sandbox-proxy-
|
|
|
724
724
|
"groundTruth": "Expected result (optional)",
|
|
725
725
|
"metadata": { "key": "value" } // optional
|
|
726
726
|
}
|
|
727
|
-
]`})]})]})}function _es({errors:e,maxErrors:t=5}){if(e.length===0)return null;const n=e.slice(0,t),r=e.length-t;return o.jsxs("div",{className:"bg-accent2/10 border border-accent2/30 rounded-md p-3",children:[o.jsxs("div",{className:"flex items-center gap-2 text-accent2 mb-2",children:[o.jsx(Ue,{children:o.jsx(kp,{className:"w-4 h-4"})}),o.jsxs("span",{className:"font-medium text-sm",children:[e.length," validation error",e.length!==1?"s":""]})]}),o.jsx("ul",{className:"text-sm text-accent2/80 space-y-1",children:n.map((s,a)=>o.jsxs("li",{className:"flex gap-2",children:[o.jsx("span",{className:"shrink-0",children:"•"}),o.jsx("span",{children:s.message})]},a))}),r>0&&o.jsxs("div",{className:"text-xs text-accent2/60 mt-2",children:["+",r," more error",r!==1?"s":""]})]})}function Ces({datasetId:e,open:t,onOpenChange:n,onSuccess:r}){const[s,a]=v.useState("upload"),[i,l]=v.useState(null),[c,u]=v.useState({current:0,total:0}),[d,f]=v.useState(null),[p,h]=v.useState(!1),{parseFile:m,isParsing:g,error:y}=KKr(),{batchInsertItems:b}=_i(),w=v.useCallback(async I=>{try{const P=await m(I);l(P),a("preview")}catch{}},[m]),S=v.useCallback(async()=>{if(!i||i.items.length===0)return;a("importing"),h(!0);const{items:I}=i;u({current:0,total:I.length});try{await b.mutateAsync({datasetId:e,items:I.map(P=>({input:P.input,groundTruth:P.groundTruth,metadata:P.metadata}))}),f({success:I.length,errors:0})}catch{f({success:0,errors:I.length})}u({current:I.length,total:I.length}),h(!1),a("complete")},[i,b,e]),k=v.useCallback(()=>{n(!1),r?.(),d&&d.success>0&&De.success(`Imported ${d.success} item${d.success!==1?"s":""}`),setTimeout(()=>{a("upload"),l(null),u({current:0,total:0}),f(null)},150)},[n,r,d]),_=v.useCallback(()=>{p||(n(!1),setTimeout(()=>{a("upload"),l(null),u({current:0,total:0}),f(null)},150))},[p,n]),C=i&&i.items.length>0&&i.errors.length===0,E=()=>{switch(s){case"upload":return o.jsx(Oes,{onFileSelect:w,isParsing:g,error:y?.message});case"preview":return i?o.jsx("div",{className:"flex flex-col gap-4",children:i.errors.length>0?o.jsxs(o.Fragment,{children:[o.jsx(_es,{errors:i.errors}),o.jsx("div",{className:"text-sm text-neutral4",children:"Please fix the errors in your JSON file and try again."})]}):o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"text-sm text-neutral4",children:["Found ",i.items.length," valid item",i.items.length!==1?"s":""," to import."]}),o.jsx(kes,{items:i.items,maxRows:5})]})}):null;case"importing":return o.jsxs("div",{className:"flex flex-col items-center gap-4 py-8",children:[o.jsx(Qt,{}),o.jsxs("div",{className:"text-center",children:[o.jsx("div",{className:"text-lg font-medium text-neutral1",children:"Importing items..."}),o.jsxs("div",{className:"text-sm text-neutral4 mt-1",children:[c.current," of ",c.total]})]})]});case"complete":return o.jsxs("div",{className:"flex flex-col items-center gap-4 py-8",children:[o.jsx("div",{className:"text-4xl",children:d&&d.errors===0?"✓":"⚠"}),o.jsxs("div",{className:"text-center",children:[o.jsx("div",{className:"text-lg font-medium text-neutral1",children:"Import Complete"}),o.jsxs("div",{className:"text-sm text-neutral4 mt-1",children:[d?.success??0," item",d?.success!==1?"s":""," imported",d&&d.errors>0&&o.jsxs("span",{className:"text-accent2",children:[" ","(",d.errors," error",d.errors!==1?"s":"",")"]})]})]})]})}},j=()=>{switch(s){case"upload":return o.jsx(de,{onClick:_,children:"Cancel"});case"preview":return o.jsxs(o.Fragment,{children:[o.jsx(de,{onClick:()=>a("upload"),children:"Back"}),o.jsxs(de,{variant:"primary",onClick:S,disabled:!C,children:["Import ",i?.items.length??0," Item",i?.items.length!==1?"s":""]})]});case"importing":return null;case"complete":return o.jsx(de,{variant:"primary",onClick:k,children:"Done"})}},N={upload:"Import JSON",preview:"Preview Data",importing:"Importing",complete:"Import Complete"};return o.jsx(br,{open:t,onOpenChange:_,children:o.jsxs(xr,{className:"max-w-2xl max-h-[90vh]",children:[o.jsxs(wr,{children:[o.jsx(gr,{children:N[s]}),o.jsx(Qs,{children:"Import dataset items from a JSON file."})]}),o.jsx(Ar,{className:"min-h-[200px] max-h-[50vh] overflow-y-auto",children:E()}),o.jsx(kc,{className:"px-6 pt-4 flex justify-end gap-2",children:j()})]})})}const xTe=e=>{const t=We(),{data:n}=YM(e),r=n?.experiments;return wt({queryKey:["dataset-review-items",e,r?.map(s=>s.id)],queryFn:async()=>!r||r.length===0?[]:(await Promise.all(r.map(async a=>{if(!a.datasetId)return[];try{const{results:i}=await t.listDatasetExperimentResults(a.datasetId,a.id);return i.filter(l=>l.status==="needs-review").map(l=>({id:l.id,input:l.input,output:l.output,error:l.error,itemId:l.itemId,experimentId:l.experimentId,datasetId:a.datasetId??void 0,traceId:l.traceId??void 0,scores:l.scores?Object.fromEntries(l.scores.map(c=>[c.scorerId,c.score??0])):{},tags:l.tags??[],comment:""}))}catch{return[]}}))).flat(),enabled:!!e&&!!r&&r.length>0,refetchOnWindowFocus:!1})},Ees=e=>{const t=We(),{data:n}=YM(e),r=n?.experiments;return wt({queryKey:["dataset-completed-items",e,r?.map(s=>s.id)],queryFn:async()=>!r||r.length===0?[]:(await Promise.all(r.map(async a=>{if(!a.datasetId)return[];try{const{results:i}=await t.listDatasetExperimentResults(a.datasetId,a.id);return i.filter(l=>l.status==="complete").map(l=>({id:l.id,input:l.input,output:l.output,error:l.error,itemId:l.itemId,experimentId:l.experimentId,datasetId:a.datasetId??void 0,traceId:l.traceId??void 0,scores:l.scores?Object.fromEntries(l.scores.map(c=>[c.scorerId,c.score??0])):{},tags:l.tags??[],comment:""}))}catch{return[]}}))).flat(),enabled:!!e&&!!r&&r.length>0,refetchOnWindowFocus:!1})};function jes(e,t){if(typeof e=="string")return e.length>t?e.slice(0,t)+"...":e;try{const n=JSON.stringify(e);return n.length>t?n.slice(0,t)+"...":n}catch{return String(e)}}function k8t({datasetId:e,experimentId:t,featuredItemId:n}){const r=We(),{data:s}=Ux(e),{data:a,isLoading:i}=xTe(e),{data:l,isLoading:c}=Ees(e),u=v.useMemo(()=>t?(a??[]).filter(Ce=>Ce.experimentId===t):a,[a,t]),d=v.useMemo(()=>t?(l??[]).filter(Ce=>Ce.experimentId===t):l,[l,t]),{updateExperimentResult:f}=_i(),[p,h]=v.useState(n??null);v.useEffect(()=>{n!==void 0&&h(n)},[n]);const[m,g]=v.useState(null),[y,b]=v.useState(new Set),[w,S]=v.useState(!1),[k,_]=v.useState(!1),[C,E]=v.useState(!1),[j,N]=v.useState(""),[I,P]=v.useState(""),[$,F]=v.useState(""),[D,V]=v.useState([]),[W,L]=v.useState(!1),[B,z]=v.useState(null),M=v.useMemo(()=>B??u??[],[B,u]);v.useEffect(()=>{z(null)},[e,t]),v.useEffect(()=>{u&&B===null&&z(u)},[u,B]);const G=v.useMemo(()=>{const Ce=new Set;if(s?.tags)for(const Ee of s.tags)Ce.add(Ee);for(const Ee of M)for(const _e of Ee.tags)Ce.add(_e);return[...Ce].sort()},[s,M]),q=v.useCallback(Ce=>{!s||!e||(s.tags??[]).includes(Ce)},[s,e]),R=v.useMemo(()=>m?m==="__untagged__"?M.filter(Ce=>Ce.tags.length===0):M.filter(Ce=>Ce.tags.includes(m)):M,[M,m]),U=v.useMemo(()=>{const Ce=new Map;for(const Ee of M)for(const _e of Ee.tags)Ce.set(_e,(Ce.get(_e)??0)+1);return[...Ce.entries()].sort((Ee,_e)=>_e[1]-Ee[1])},[M]),Z=v.useMemo(()=>M.filter(Ce=>Ce.tags.length===0).length,[M]),X=v.useMemo(()=>{let Ce=0;return m&&Ce++,w&&Ce++,Ce},[m,w]),te=v.useCallback((Ce,Ee)=>{z(Oe=>(Oe??[]).map(Re=>Re.id===Ce?{...Re,tags:Ee}:Re));const _e=M.find(Oe=>Oe.id===Ce);_e?.experimentId&&_e?.datasetId&&f.mutate({datasetId:_e.datasetId,experimentId:_e.experimentId,resultId:_e.id,tags:Ee})},[M,f]),J=v.useCallback((Ce,Ee)=>{const _e=M.find(Oe=>Oe.id===Ce);_e?.traceId&&Ee!==void 0&&r.createFeedback({feedback:{traceId:_e.traceId,source:"studio",feedbackSource:"studio",feedbackType:"rating",value:Ee==="positive"?1:-1,experimentId:_e.experimentId??void 0,sourceId:_e.id}}).catch(()=>{}),z(Oe=>(Oe??[]).map(Re=>Re.id===Ce?{...Re,rating:Ee}:Re))},[M,r]),ee=v.useCallback((Ce,Ee)=>{const _e=M.find(Oe=>Oe.id===Ce);_e?.traceId&&r.createFeedback({feedback:{traceId:_e.traceId,source:"studio",feedbackSource:"studio",feedbackType:"comment",value:Ee,comment:Ee,experimentId:_e.experimentId??void 0,sourceId:_e.id}}).catch(()=>{}),z(Oe=>(Oe??[]).map(Re=>Re.id===Ce?{...Re,comment:Ee}:Re))},[M,r]),ae=v.useCallback(Ce=>{const Ee=M.find(_e=>_e.id===Ce);z(_e=>(_e??[]).filter(Oe=>Oe.id!==Ce)),b(_e=>{const Oe=new Set(_e);return Oe.delete(Ce),Oe}),p===Ce&&h(null),Ee?.experimentId&&Ee?.datasetId&&f.mutate({datasetId:Ee.datasetId,experimentId:Ee.experimentId,resultId:Ee.id,status:null})},[M,f,p]),ce=v.useCallback(Ce=>{const Ee=M.find(_e=>_e.id===Ce);z(_e=>(_e??[]).filter(Oe=>Oe.id!==Ce)),b(_e=>{const Oe=new Set(_e);return Oe.delete(Ce),Oe}),p===Ce&&h(null),Ee?.experimentId&&Ee?.datasetId&&f.mutate({datasetId:Ee.datasetId,experimentId:Ee.experimentId,resultId:Ee.id,status:"complete"})},[M,f,p]),Y=v.useMemo(()=>{const Ce=w?d??[]:R;return!w||!m?Ce:m==="__untagged__"?Ce.filter(Ee=>Ee.tags.length===0):Ce.filter(Ee=>Ee.tags.includes(m))},[w,d,R,m]),ne=w?c:!1,ue=v.useMemo(()=>new Set(Y.map(Ce=>Ce.id)),[Y]),pe=v.useMemo(()=>[...y].filter(Ce=>ue.has(Ce)).length,[y,ue]),le=Y.length>0&&pe===Y.length,ve=pe>0&&!le,ye=v.useCallback(Ce=>{b(Ee=>{const _e=new Set(Ee);return _e.has(Ce)?_e.delete(Ce):_e.add(Ce),_e})},[]),Se=v.useCallback(()=>{b(le?new Set:new Set(Y.map(Ce=>Ce.id)))},[le,Y]),Ne=v.useCallback(Ce=>{for(const Ee of y){const _e=M.find(Oe=>Oe.id===Ee);_e&&!_e.tags.includes(Ce)&&te(Ee,[..._e.tags,Ce])}},[M,y,te]),ke=v.useCallback(Ce=>{for(const Ee of y){const _e=M.find(Oe=>Oe.id===Ee);_e&&_e.tags.includes(Ce)&&te(Ee,_e.tags.filter(Oe=>Oe!==Ce))}},[M,y,te]),Ie=v.useCallback(()=>{for(const Ce of y)ce(Ce);b(new Set)},[y,ce]),ze=v.useCallback(()=>{for(const Ce of y)ae(Ce);b(new Set)},[y,ae]),oe=v.useCallback(()=>{N(""),E(!0)},[]),se=v.useCallback(async()=>{if(!(!I||!$)){_(!0),E(!1);try{const Ce=M.filter(_e=>y.has(_e.id));if(Ce.length===0){_(!1);return}const Ee=await r.clusterFailures({modelId:`${I}/${$}`,items:Ce.map(_e=>({id:_e.id,input:_e.input,output:_e.output??void 0,error:typeof _e.error=="string"?_e.error:_e.error?String(_e.error):void 0,scores:_e.scores,existingTags:_e.tags.length>0?_e.tags:void 0})),availableTags:G.length>0?G:void 0,prompt:j||void 0});Ee.proposedTags&&Ee.proposedTags.length>0&&(V(Ee.proposedTags.map(_e=>({..._e,accepted:!0}))),L(!0))}catch(Ce){console.error("Analysis failed:",Ce)}finally{_(!1)}}},[I,$,M,y,r,G,j]),re=v.useCallback(()=>{for(const Ce of D){if(!Ce.accepted)continue;const Ee=M.find(_e=>_e.id===Ce.itemId);if(Ee){const _e=[...new Set([...Ee.tags,...Ce.tags])];te(Ee.id,_e)}}L(!1)},[D,M,te]),he=v.useCallback(Ce=>{h(Ee=>Ee===Ce?null:Ce)},[]),xe=v.useMemo(()=>p?Y.find(Ce=>Ce.id===p)??null:null,[p,Y]),je=p?Y.findIndex(Ce=>Ce.id===p):-1,Pe=je>0?()=>h(Y[je-1].id):void 0,Ge=je>=0&&je<Y.length-1?()=>h(Y[je+1].id):void 0,Ze="auto minmax(15rem,1fr) 10rem 8rem 6rem 6rem";return i?o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx(Qt,{className:"w-6 h-6"})}):o.jsxs("div",{className:"flex flex-1 min-h-0 overflow-hidden",children:[o.jsx(br,{open:C,onOpenChange:E,children:o.jsxs(xr,{children:[o.jsxs(wr,{children:[o.jsx(gr,{children:"Analyze Items"}),o.jsx(Qs,{children:"Use an LLM to automatically suggest tags for the selected items."})]}),o.jsxs("div",{className:"space-y-4 py-2",children:[o.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[o.jsxs("div",{children:[o.jsx(Rt,{className:"text-xs mb-1 block",children:"Provider"}),o.jsx(Fy,{value:I,onValueChange:P})]}),o.jsxs("div",{children:[o.jsx(Rt,{className:"text-xs mb-1 block",children:"Model"}),o.jsx(zy,{llmId:I,value:$,onValueChange:F})]})]}),o.jsxs(ge,{variant:"ui-xs",className:"text-neutral3",children:[y.size," item",y.size!==1?"s":""," will be analyzed"]}),o.jsxs("div",{children:[o.jsx(Rt,{className:"text-xs",children:"Instructions (optional)"}),o.jsx(Yl,{value:j,onChange:Ce=>N(Ce.target.value),placeholder:"E.g., Focus on safety issues and factual errors...",rows:3,className:"text-xs mt-1"})]})]}),o.jsxs(kc,{children:[o.jsx(de,{variant:"outline",onClick:()=>E(!1),children:"Cancel"}),o.jsxs(de,{onClick:se,disabled:!I||!$||k,children:[k?o.jsx(Qt,{className:"w-4 h-4 mr-1"}):null,"Analyze"]})]})]})}),o.jsx(br,{open:W,onOpenChange:L,children:o.jsxs(xr,{className:"max-w-2xl max-h-[80vh] overflow-y-auto",children:[o.jsxs(wr,{children:[o.jsx(gr,{children:"Review Proposed Tags"}),o.jsxs(Qs,{children:[D.filter(Ce=>Ce.accepted).length," of ",D.length," proposals selected"]})]}),o.jsx("div",{className:"space-y-3 py-2",children:D.map((Ce,Ee)=>{const _e=M.find(Oe=>Oe.id===Ce.itemId);return o.jsx("div",{className:K("p-3 border rounded-lg",!Ce.accepted&&"opacity-50"),children:o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx($o,{checked:Ce.accepted,onCheckedChange:Oe=>V(Re=>Re.map((qe,Ye)=>Ye===Ee?{...qe,accepted:!!Oe}:qe))}),o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx(ge,{variant:"ui-xs",className:"text-neutral4 truncate block",children:_e?typeof _e.input=="string"?_e.input.slice(0,100):JSON.stringify(_e.input).slice(0,100):Ce.itemId}),o.jsx("div",{className:"flex gap-1 flex-wrap mt-1.5",children:Ce.tags.map((Oe,Re)=>o.jsx(r8t,{tag:Oe,onRename:qe=>V(Ye=>Ye.map((tt,It)=>It===Ee?{...tt,tags:tt.tags.map((ot,zt)=>zt===Re?qe:ot)}:tt)),onRemove:()=>V(qe=>qe.map((Ye,tt)=>tt===Ee?{...Ye,tags:Ye.tags.filter((It,ot)=>ot!==Re)}:Ye))},`${Oe}-${Re}`))}),Ce.reason&&o.jsx(ge,{variant:"ui-xs",className:"text-neutral3 mt-1 block italic",children:Ce.reason})]})]})},Ce.itemId)})}),o.jsxs(kc,{children:[o.jsx(de,{variant:"outline",onClick:()=>L(!1),children:"Cancel"}),o.jsxs(de,{onClick:re,disabled:D.filter(Ce=>Ce.accepted).length===0,children:["Accept ",D.filter(Ce=>Ce.accepted).length," proposals"]})]})]})}),o.jsxs("div",{className:K("grid w-full h-full grid-cols-1 gap-4 overflow-y-auto",xe&&"grid-cols-[1fr_1fr]"),children:[o.jsxs("div",{className:"grid gap-8 content-start w-full overflow-y-auto",children:[o.jsxs("div",{className:"flex items-center justify-between w-full flex-wrap gap-4 gap-x-6",children:[o.jsxs("div",{className:"flex items-center gap-3",children:[o.jsxs(pt,{children:[o.jsx(pt.Trigger,{asChild:!0,children:o.jsxs(de,{variant:"outline",size:"md",children:[o.jsx(Rlt,{}),"Filter",X>0&&o.jsx("span",{className:K("ml-0.5 inline-flex items-center justify-center rounded-full bg-accent1/50 text-neutral5 text-ui-sm w-5 h-5"),children:X})]})}),o.jsxs(pt.Content,{align:"start",className:K("min-w-48"),children:[o.jsxs(pt.Sub,{children:[o.jsxs(pt.SubTrigger,{children:["Status",w&&o.jsx("span",{className:K("ml-auto text-ui-sm text-accent1"),children:"1"})]}),o.jsxs(pt.SubContent,{children:[o.jsx(pt.CheckboxItem,{checked:!w,onCheckedChange:()=>{S(!1),h(null)},onSelect:Ce=>Ce.preventDefault(),children:"Review Queue"}),o.jsx(pt.CheckboxItem,{checked:w,onCheckedChange:()=>{S(!0),h(null)},onSelect:Ce=>Ce.preventDefault(),children:"Completed"})]})]}),o.jsxs(pt.Sub,{children:[o.jsxs(pt.SubTrigger,{children:["Tags",m&&o.jsx("span",{className:K("ml-auto text-ui-sm text-accent1"),children:"1"})]}),o.jsxs(pt.SubContent,{children:[o.jsx(pt.CheckboxItem,{checked:!m,onCheckedChange:()=>g(null),onSelect:Ce=>Ce.preventDefault(),children:"All"}),Z>0&&o.jsx(pt.CheckboxItem,{checked:m==="__untagged__",onCheckedChange:()=>g(m==="__untagged__"?null:"__untagged__"),onSelect:Ce=>Ce.preventDefault(),children:"Untagged"}),U.length>0&&o.jsx(pt.Separator,{}),U.map(([Ce])=>o.jsx(pt.CheckboxItem,{checked:m===Ce,onCheckedChange:()=>g(m===Ce?null:Ce),onSelect:Ee=>Ee.preventDefault(),children:Ce},Ce))]})]}),X>0&&o.jsxs(o.Fragment,{children:[o.jsx(pt.Separator,{}),o.jsxs(pt.Item,{onSelect:()=>{g(null),S(!1),h(null)},children:[o.jsx(vs,{}),"Clear all filters"]})]})]})]}),X>0&&o.jsxs(de,{variant:"outline",size:"md",onClick:()=>{g(null),S(!1),h(null)},children:[o.jsx(vs,{}),"Reset"]})]}),!w&&y.size>0&&o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(n8t,{selectedCount:y.size,vocabulary:G,onApplyTag:Ne,onRemoveTag:ke,onNewTag:Ce=>Ne(Ce)}),o.jsxs(pt,{children:[o.jsx(pt.Trigger,{asChild:!0,children:o.jsxs(de,{disabled:k,children:[k?o.jsx(Qt,{className:"w-4 h-4"}):o.jsx(Ue,{size:"sm",children:o.jsx(va,{})}),"Actions"]})}),o.jsxs(pt.Content,{align:"end",children:[o.jsxs(pt.Item,{onSelect:Ie,children:[o.jsx(Ue,{size:"sm",children:o.jsx(sO,{})}),"Complete"]}),o.jsxs(pt.Item,{onSelect:ze,children:[o.jsx(Ue,{size:"sm",children:o.jsx(eu,{})}),"Remove"]}),o.jsx(pt.Separator,{}),o.jsxs(pt.Item,{onSelect:oe,children:[o.jsx(Ue,{size:"sm",children:o.jsx(bg,{})}),"Analyze"]})]})]})]})]}),ne?o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx(Qt,{className:"w-6 h-6"})}):Y.length===0?o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsxs("div",{className:"text-center px-8",children:[o.jsx(ge,{variant:"ui-sm",className:"text-neutral3 block",children:w?"No completed reviews yet":"No items to review"}),o.jsx(ge,{variant:"ui-xs",className:"text-neutral3 mt-2 block",children:w?"Items marked as complete will appear here for auditing.":"When experiment results are flagged for review, they will appear here."})]})}):o.jsxs(me,{columns:Ze,className:"min-w-0",children:[o.jsxs(me.Top,{hasLeadingCell:!0,children:[w?o.jsx(me.TopCell,{children:" "}):o.jsx(me.TopSelectCell,{checked:le?!0:ve?"indeterminate":!1,onToggle:()=>Se(),"aria-label":"Select all"}),o.jsxs(me.TopCells,{colStart:2,children:[o.jsx(me.TopCell,{children:"Input"}),o.jsx(me.TopCell,{children:"Comment"}),o.jsx(me.TopCell,{children:"Tags"}),o.jsx(me.TopCell,{children:"Rating"}),o.jsx(me.TopCell,{children:"Scores"})]})]}),Y.map(Ce=>{const Ee=Ce.scores?Object.entries(Ce.scores):[],_e=p===Ce.id,Oe=o.jsxs(o.Fragment,{children:[o.jsx(me.Cell,{height:"compact",className:"min-w-0 text-neutral4",children:o.jsx("span",{className:"block truncate",children:jes(Ce.input,200)})}),o.jsx(me.Cell,{height:"compact",className:"min-w-0",children:Ce.comment?o.jsx(ge,{variant:"ui-xs",className:"text-neutral3 truncate",children:Ce.comment}):o.jsx(ge,{variant:"ui-xs",className:"text-neutral2",children:"—"})}),o.jsx(me.Cell,{height:"compact",className:"min-w-0",children:Ce.tags.length>0?o.jsx(ge,{variant:"ui-xs",className:"text-neutral4 truncate",children:Ce.tags.join(", ")}):o.jsx(ge,{variant:"ui-xs",className:"text-neutral2",children:"—"})}),o.jsxs(me.Cell,{height:"compact",children:[Ce.rating==="positive"&&o.jsx(Ue,{size:"sm",className:"text-positive1",children:o.jsx(sbe,{})}),Ce.rating==="negative"&&o.jsx(Ue,{size:"sm",className:"text-negative1",children:o.jsx(rbe,{})}),!Ce.rating&&o.jsx(ge,{variant:"ui-xs",className:"text-neutral2",children:"—"})]}),o.jsx(me.Cell,{height:"compact",children:Ee.length>0?o.jsxs("div",{className:"flex items-center gap-1",children:[o.jsx(Ue,{size:"sm",className:"text-neutral3",children:o.jsx(em,{})}),o.jsx(ge,{variant:"ui-xs",className:"text-neutral4 font-mono",children:Ee[0][1].toFixed(2)}),Ee.length>1&&o.jsxs(un,{variant:"default",children:["+",Ee.length-1]})]}):o.jsx(ge,{variant:"ui-xs",className:"text-neutral2",children:"—"})})]});return o.jsxs(me.RowWrapper,{children:[w?o.jsx(me.Cell,{height:"compact",className:"justify-items-center px-4",children:o.jsx("div",{role:"img","aria-label":Ce.error?"Error":"Success",title:Ce.error?"Error":"Success",className:K("w-2 h-2 rounded-full",Ce.error?"bg-red-700":"bg-green-600")})}):o.jsx(me.SelectCell,{checked:y.has(Ce.id),onToggle:()=>ye(Ce.id),"aria-label":`Select item ${Ce.id}`}),o.jsx(me.RowButton,{flushLeft:!0,colStart:2,featured:_e,onClick:()=>he(Ce.id),children:Oe})]},Ce.id)})]})]}),xe&&o.jsx(t8t,{item:xe,isCompleted:w,tagVocabulary:G,onRate:Ce=>J(xe.id,Ce),onSetTags:Ce=>{te(xe.id,Ce);for(const Ee of Ce)G.includes(Ee)||q(Ee)},onComment:Ce=>ee(xe.id,Ce),onRemove:()=>ae(xe.id),onComplete:w?void 0:()=>ce(xe.id),onPrevious:Pe,onNext:Ge,onClose:()=>h(null)})]})]})}function Tes({datasetId:e,onAddItemClick:t,onNavigateToDataset:n}){const{navigate:r}=yn(),[s,a]=ji(),{tab:i,activeVersion:l,handleTabChange:c}=yTe(s,a),[u,d]=v.useState(!1),[f,p]=v.useState(!1),[h,m]=v.useState(!1),[g,y]=v.useState([]),[b,w]=v.useState(!1),[S,k]=v.useState([]),[_,C]=v.useState(!1),[E,j]=v.useState([]),[N,I]=v.useState(0),[P,$]=v.useState(null),[F,D]=v.useState(""),[V]=C0e(F,300),{data:W}=Ux(e),{data:L=[],total:B,isLoading:z,setEndOfListElement:M,isFetchingNextPage:G,hasNextPage:q}=_1(e,V||void 0,l),{total:R}=_1(e,void 0,l),[U,Z]=v.useState({}),{data:X,isLoading:te}=YM(e,void 0,U),{data:J}=YM(e),{deleteItems:ee}=_i(),ae=X?.experiments??[],ce=J?.experiments??[],Y=NJr({hasSearchQuery:!!V,filteredItemsLength:L.length,unfilteredItemsTotal:R,itemsTotal:B}),{data:ne}=xTe(e),ue=ne?.length??0,pe=re=>{$(re)},le=()=>{$(null)},ve=re=>{y(re),m(!0)},ye=re=>{k(re),w(!0)},Se=re=>{w(re),re||(k([]),I(he=>he+1))},Ne=re=>{r(`/datasets/${e}/items?items=${re.join(",")}`)},ke=re=>{r(`/datasets/${e}/versions?ids=${re.join(",")}`)},Ie=re=>{j(re),C(!0)},ze=async()=>{await ee.mutateAsync({datasetId:e,itemIds:E}),De.success(`Deleted ${E.length} items`),C(!1),j([]),I(re=>re+1)},oe=re=>{m(!1),y([]),I(he=>he+1),n?.(re)},se=re=>{m(re),re||(y([]),I(he=>he+1))};return o.jsxs(o.Fragment,{children:[o.jsxs(su,{defaultTab:"items",value:i,onValueChange:c,className:"grid grid-rows-[auto_1fr] h-full",children:[o.jsxs(au,{children:[o.jsxs(Vr,{value:"items",children:["Items ",o.jsx(Xs,{color:"gray",children:Y})]}),o.jsxs(Vr,{value:"experiments",children:["Experiments",o.jsx(Xs,{color:"gray",children:ae.length})]}),o.jsxs(Vr,{value:"review",children:["Review",ue>0&&o.jsx(Xs,{color:"orange",children:ue})]})]}),o.jsx(ps,{value:"items",className:"grid overflow-auto mt-5 pb-0",children:o.jsx(Ses,{datasetId:e,items:L,isLoading:z,featuredItemId:P,onItemSelect:pe,onItemClose:le,onAddClick:t??(()=>{}),onImportClick:()=>d(!0),onImportJsonClick:()=>p(!0),onBulkDeleteClick:Ie,onCreateDatasetClick:ve,onAddToDatasetClick:ye,onCompareItemsClick:Ne,datasetName:W?.name,clearSelectionTrigger:N,setEndOfListElement:M,isFetchingNextPage:G,hasNextPage:q,searchQuery:F,activeSearchQuery:V,onSearchChange:D,currentDatasetVersion:W?.version,onCompareVersionsClick:ke})}),o.jsx(ps,{value:"experiments",className:"grid overflow-auto mt-5 pb-0",children:o.jsx(ZJr,{experiments:ae,allExperiments:ce,isLoading:te,datasetId:e,filters:U,onFiltersChange:Z})}),o.jsx(ps,{value:"review",className:"overflow-auto mt-2 pb-0",children:o.jsx(k8t,{datasetId:e})})]}),o.jsx(FJr,{datasetId:e,open:u,onOpenChange:d}),o.jsx(Ces,{datasetId:e,open:f,onOpenChange:p}),o.jsx(mJr,{open:h,onOpenChange:se,items:g,onSuccess:oe}),o.jsx(gJr,{open:b,onOpenChange:Se,items:S,currentDatasetId:e}),o.jsx(jt,{open:_,onOpenChange:C,children:o.jsxs(jt.Content,{children:[o.jsxs(jt.Header,{children:[o.jsx(jt.Title,{children:"Delete Items"}),o.jsxs(jt.Description,{children:["Are you sure you want to delete ",E.length," item",E.length!==1?"s":"","? This action cannot be undone."]})]}),o.jsxs(jt.Footer,{children:[o.jsx(jt.Cancel,{children:"Cancel"}),o.jsx(jt.Action,{onClick:ze,children:ee.isPending?"Deleting...":"Delete"})]})]})})]})}function Nes(e){if(!(e instanceof Error))return null;const t=e.message.match(/- ({.*})$/);if(!t)return null;try{const n=JSON.parse(t[1]);if(n.field&&Array.isArray(n.errors))return{field:n.field,errors:n.errors}}catch{}return null}function qre({field:e,errors:t}){return t.length?o.jsx("div",{className:"mt-2 space-y-1",children:t.map((n,r)=>o.jsxs("p",{className:"text-xs text-destructive",children:[o.jsxs("code",{className:"bg-destructive/10 px-1 rounded",children:[e,n.path!=="/"?n.path:""]}),": ",n.message]},r))}):null}function Ies({datasetId:e,open:t,onOpenChange:n,onSuccess:r}){const[s,a]=v.useState("{}"),[i,l]=v.useState(""),[c,u]=v.useState(""),[d,f]=v.useState(""),[p,h]=v.useState(""),[m,g]=v.useState(null),{addItem:y}=_i(),b=async C=>{C.preventDefault();let E;try{E=JSON.parse(s)}catch{De.error("Input must be valid JSON");return}let j;if(i.trim())try{j=JSON.parse(i)}catch{De.error("Ground Truth must be valid JSON");return}let N;if(c.trim())try{N=JSON.parse(c)}catch{De.error("Expected Trajectory must be valid JSON");return}let I;if(d.trim())try{const $=JSON.parse(d);if(!Array.isArray($)){De.error("Tool Mocks must be a JSON array");return}I=$}catch{De.error("Tool Mocks must be valid JSON");return}let P;if(p.trim())try{P=JSON.parse(p)}catch{De.error("Request Context must be valid JSON");return}try{await y.mutateAsync({datasetId:e,input:E,groundTruth:j,expectedTrajectory:N,toolMocks:I,requestContext:P}),De.success("Item added successfully"),g(null),a("{}"),l(""),u(""),f(""),h(""),n(!1),r?.()}catch($){const F=Nes($);F?g(F):De.error(`Failed to add item: ${$ instanceof Error?$.message:"Unknown error"}`)}},w=C=>{a(C),m?.field==="input"&&g(null)},S=C=>{l(C),m?.field==="groundTruth"&&g(null)},k=C=>{f(C),m?.field==="toolMocks"&&g(null)},_=()=>{a("{}"),l(""),u(""),f(""),h(""),g(null),n(!1)};return o.jsx(br,{open:t,onOpenChange:n,children:o.jsxs(xr,{className:"max-w-lg",children:[o.jsx(wr,{children:o.jsx(gr,{children:"Add Item"})}),o.jsx(Ar,{children:o.jsxs("form",{onSubmit:b,className:"space-y-4",children:[o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{htmlFor:"item-input",children:"Input (JSON) *"}),o.jsx(Qr,{value:s,onChange:w,showCopyButton:!1,className:"min-h-[120px]"}),m?.field==="input"&&o.jsx(qre,{field:"input",errors:m.errors})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{htmlFor:"item-ground-truth",children:"Ground Truth (JSON, optional)"}),o.jsx(Qr,{value:i,onChange:S,showCopyButton:!1,className:"min-h-[80px]"}),m?.field==="groundTruth"&&o.jsx(qre,{field:"groundTruth",errors:m.errors})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{htmlFor:"item-trajectory",children:"Expected Trajectory (JSON, optional)"}),o.jsx(Qr,{value:c,onChange:u,showCopyButton:!1,className:"min-h-[80px]"})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{htmlFor:"item-tool-mocks",children:"Tool Mocks (JSON array, optional)"}),o.jsx(Qr,{value:d,onChange:k,showCopyButton:!1,className:"min-h-[80px]"}),m?.field==="toolMocks"&&o.jsx(qre,{field:"toolMocks",errors:m.errors})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{htmlFor:"item-request-context",children:"Request Context (JSON, optional)"}),o.jsx(Qr,{value:p,onChange:h,showCopyButton:!1,className:"min-h-[80px]"})]}),o.jsxs("div",{className:"flex justify-end gap-2 pt-4",children:[o.jsx(de,{type:"button",onClick:_,children:"Cancel"}),o.jsx(de,{type:"submit",variant:"primary",disabled:y.isPending,children:y.isPending?"Adding...":"Add Item"})]})]})})]})})}function Aes({item:e}){return o.jsx(ua,{withMargins:!1,children:o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{size:"smaller",children:[o.jsx(pN,{}),o.jsx("span",{className:"truncate",children:e.id}),o.jsx(ba,{content:e.id,tooltip:`Copy item ID: ${e.id}`})]}),o.jsxs(ua.Description,{children:[o.jsxs(Nl,{children:[o.jsx(Olt,{})," Created ",er(new Date(e.createdAt),"MMM d, yyyy h:mm aaa")]}),e.datasetVersion!=null&&o.jsxs(Nl,{children:[o.jsx(o_,{})," Version v",e.datasetVersion]})]})]})})}function wTe({item:e}){const t=e?.input?JSON.stringify(e.input,null,2):"null",n=e?.groundTruth?JSON.stringify(e.groundTruth,null,2):"null",r=e?.metadata?JSON.stringify(e.metadata,null,2):"null",s=e?.expectedTrajectory?JSON.stringify(e.expectedTrajectory,null,2):null;return o.jsxs(Bje,{children:[o.jsx(Ps.CodeSection,{title:"Input",icon:o.jsx(iO,{}),codeStr:t}),o.jsx(Ps.CodeSection,{title:"Ground Truth",icon:o.jsx(hg,{}),codeStr:n}),s&&o.jsx(Ps.CodeSection,{title:"Expected Trajectory",icon:o.jsx(Jye,{}),codeStr:s}),o.jsx(Ps.CodeSection,{title:"Metadata",icon:o.jsx(gN,{}),codeStr:r})]})}function Res({selectedScorers:e,setSelectedScorers:t,disabled:n=!1,container:r}){const{data:s,isLoading:a}=th(),i=v.useMemo(()=>s?Object.entries(s).map(([l,c])=>({value:l,label:c.scorer?.config?.name||l,description:c.scorer?.config?.description||""})):[],[s]);return o.jsxs("div",{className:"grid gap-2",children:[o.jsx(Rt,{children:"Scorers (Optional)"}),o.jsx(Xl,{multiple:!0,options:i,value:e,onValueChange:t,placeholder:"Select scorers...",searchPlaceholder:"Search scorers...",emptyText:"No scorers available",disabled:n||a,container:r})]})}const Pes=[{value:"agent",label:"Agent"},{value:"workflow",label:"Workflow"},{value:"scorer",label:"Scorer"}];function $es({targetType:e,setTargetType:t,targetId:n,setTargetId:r,container:s}){const{data:a,isLoading:i}=Sm(),{data:l,isLoading:c}=By(),{data:u,isLoading:d}=th(),f=e==="agent"?Object.entries(a??{}).map(([g,y])=>({value:g,label:y.name??g})):e==="workflow"?Object.entries(l??{}).map(([g,y])=>({value:g,label:y.name??g})):e==="scorer"?Object.entries(u??{}).map(([g,y])=>({value:g,label:y.scorer?.config?.name??g})):[],p=e==="agent"&&i||e==="workflow"&&c||e==="scorer"&&d,h=g=>{t(g),r("")},m=e==="agent"?"Agent":e==="workflow"?"Workflow":"Scorer";return o.jsxs("div",{className:"grid gap-6",children:[o.jsxs("div",{className:"grid gap-2",children:[o.jsx(Rt,{children:"Target Type"}),o.jsx(Xl,{options:Pes,value:e,onValueChange:h,placeholder:"Select target type",searchPlaceholder:"Search types...",emptyText:"No types available",container:s})]}),e&&o.jsxs("div",{className:"grid gap-2",children:[o.jsx(Rt,{children:m}),o.jsx(Xl,{options:f,value:n,onValueChange:r,placeholder:`Select ${e}`,searchPlaceholder:"Search...",emptyText:"No targets available",disabled:p,container:s})]})]})}function Mes({requestContextSchema:e,onChange:t}){const n=v.useMemo(()=>{try{return om(am(e))}catch(r){return console.error("Failed to parse requestContextSchema:",r),null}},[e]);return n?o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{children:"Request Context"}),o.jsx(J3,{schema:n,onValuesChange:t,className:"[&_button[type=submit]]:hidden"})]}):o.jsx("p",{className:"text-sm text-destructive",children:"Failed to parse request context schema"})}function Des({datasetId:e,version:t,requestContextSchema:n,open:r,onOpenChange:s,onSuccess:a}){const i=v.useRef(null),[l,c]=v.useState(""),[u,d]=v.useState(""),[f,p]=v.useState([]),[h,m]=v.useState({}),[g,y]=v.useState(""),{triggerExperiment:b}=_i(),w=!!(n&&Object.keys(n).length>0),S=l&&u,k=b.isPending,_=()=>{c(""),d(""),p([]),m({}),y("")},C=()=>{if(w){const N=Object.entries(h).filter(([,I])=>I!==void 0&&I!=="");return N.length>0?Object.fromEntries(N):void 0}if(g.trim()){let N;try{N=JSON.parse(g)}catch{throw new Error("Request Context must be valid JSON")}if(!N||typeof N!="object"||Array.isArray(N))throw new Error("Request Context must be a JSON object");return N}},E=async()=>{if(!S)return;let N;try{N=C()}catch(I){const P=I instanceof Error?I.message:"Request Context must be valid JSON";ju.error(P);return}try{const I=await b.mutateAsync({datasetId:e,targetType:l,targetId:u,scorerIds:f.length>0?f:void 0,version:t,requestContext:N});ju.success("Experiment triggered successfully"),s(!1),a?.(I.experimentId),_()}catch(I){const P=I instanceof Error?I.message:"Failed to trigger experiment";ju.error(P)}},j=()=>{k||(s(!1),_())};return o.jsx(br,{open:r,onOpenChange:j,children:o.jsxs(xr,{ref:i,children:[o.jsxs(wr,{children:[o.jsx(gr,{children:"Run Experiment"}),o.jsx(Qs,{children:t?`Execute items from ${er(new Date(t),"MMM d, yyyy")} version against a target.`:"Execute all items in this dataset against a target."})]}),o.jsxs(Ar,{className:"grid gap-6",children:[o.jsx($es,{targetType:l,setTargetType:c,targetId:u,setTargetId:d,container:i}),l&&l!=="scorer"&&o.jsx(Res,{selectedScorers:f,setSelectedScorers:p,disabled:k,container:i}),w?o.jsx(Mes,{requestContextSchema:n,onChange:m}):o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{children:"Request Context (JSON, optional)"}),o.jsx(Qr,{value:g,onChange:y,showCopyButton:!1,className:"min-h-[80px]"})]})]}),o.jsxs(kc,{className:"px-6 pt-4",children:[o.jsx(de,{onClick:j,disabled:k,children:"Cancel"}),o.jsx(de,{variant:"primary",onClick:E,disabled:!S||k,children:k?o.jsxs(o.Fragment,{children:[o.jsx(Qt,{className:"w-4 h-4"}),"Running..."]}):"Run"})]})]})})}const Les=e=>{const t=We();return wt({queryKey:["experiment-trace-light",e],queryFn:async()=>{if(!e)throw new Error("Trace ID is required");return t.getTraceLight(e)},enabled:!!e})},STe=e=>o.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 9.45892 8.88606",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[o.jsx("path",{d:"M8.53702 7.36403C8.98547 7.36403 9.34918 7.70502 9.34918 8.12535C9.34906 8.54559 8.9854 8.88606 8.53702 8.88606H5.6839C5.23552 8.88606 4.87186 8.54559 4.87174 8.12535C4.87174 7.70502 5.23545 7.36403 5.6839 7.36403H8.53702Z",fill:"currentColor"}),o.jsx("path",{d:"M8.53702 3.67209C8.98547 3.67209 9.34918 4.01309 9.34918 4.43342C9.34911 4.8537 8.98543 5.19413 8.53702 5.19413H5.6839C5.23549 5.19413 4.87181 4.8537 4.87174 4.43342C4.87174 4.01309 5.23545 3.67209 5.6839 3.67209H8.53702Z",fill:"currentColor"}),o.jsx("path",{d:"M8.67155 0C9.10635 2.06584e-05 9.45892 0.341006 9.45892 0.761326C9.45878 1.18153 9.10627 1.52201 8.67155 1.52203H2.88163C2.4469 1.52203 2.0944 1.18154 2.09427 0.761326C2.09427 0.340993 2.44681 3.80132e-08 2.88163 0H8.67155Z",fill:"currentColor"}),o.jsx("path",{d:"M0.757606 0.760086V4.01122H3.50594V4.76883H0.759466L0.762566 5.4291C0.76837 6.70703 1.8058 7.73972 3.08374 7.73973H3.67953V8.49796H3.08374C1.38863 8.49795 0.0120204 7.1273 0.00433981 5.4322L0 4.39188V0.760086H0.757606Z",fill:"currentColor"})]});function Vre(e){try{return JSON.stringify(e??{})}catch{return String(e)}}function Fes({report:e}){const{served:t,unconsumed:n,liveCalls:r,failure:s}=e,a=[...t.map(i=>({outcome:"served",toolName:i.toolName,args:i.args})),...r.map(i=>({outcome:"live",toolName:i.toolName,args:i.args})),...n.map(i=>({outcome:"unconsumed",toolName:i.toolName,args:i.args}))];return o.jsxs("div",{className:"grid gap-2","data-testid":"tool-mock-report",children:[o.jsx(bn.SectionHeading,{icon:o.jsx(nm,{}),className:"mb-2",children:"Tool Mocks"}),s&&o.jsx(In,{variant:"destructive",title:"Mock mismatch",children:o.jsxs(In.Message,{children:[o.jsx("span",{className:"block",children:`Tool "${s.toolName}" was called with arguments that did not match an available mock (${s.code}).`}),o.jsxs("span",{className:"mt-1 block font-mono text-xs",children:["Called with: ",Vre(s.args)]}),n.length>0&&o.jsxs("span",{className:"mt-1 block font-mono text-xs",children:["Unconsumed mocks: ",n.map(i=>Vre(i.args)).join(", ")]})]})}),o.jsx("div",{className:"rounded border border-border1 divide-y divide-border1 text-sm",children:a.map((i,l)=>o.jsxs("div",{className:"flex items-center justify-between gap-2 px-3 py-1.5",children:[o.jsxs("span",{className:"min-w-0 truncate",children:[o.jsx("span",{className:"font-mono text-neutral4",children:i.toolName}),o.jsx("span",{className:"ml-2 font-mono text-xs text-neutral3",children:Vre(i.args)})]}),o.jsx("span",{className:`shrink-0 text-xs px-2 py-0.5 rounded ${zes(i.outcome)}`,children:i.outcome})]},`${i.outcome}-${i.toolName}-${l}`))})]})}function zes(e){switch(e){case"served":return"bg-accent1/10 text-accent1";case"live":return"bg-orange-500/10 text-orange-400";case"unconsumed":return"bg-neutral3/10 text-neutral4"}}function Bes({result:e,scores:t,onPrevious:n,onNext:r,onClose:s,onShowTrace:a,onOpenInReview:i,onScoreClick:l,featuredScoreId:c,onFlagForReview:u,collapsed:d,onCollapsedChange:f}){const[p,h]=v.useState(!1),m=d??p,g=f??h,y=!!e?.error,b=G8(e?.input),w=G8(e?.output),S=G8(e?.groundTruth),k=u&&e.status!=="needs-review"&&e.status!=="complete",_=Array.isArray(e.tags)?e.tags:[];return o.jsxs(bn,{collapsed:m,children:[o.jsxs(bn.Header,{children:[o.jsxs(bn.Heading,{children:["Result ",o.jsxs("b",{children:["# ",e.id.length>12?`${e.id.slice(0,12)}…`:e.id]})]}),o.jsxs($r,{className:"ml-auto shrink-0",children:[f&&o.jsx(de,{size:"md",tooltip:m?"Expand panel":"Collapse panel",onClick:()=>g(!m),children:m?o.jsx(jlt,{}):o.jsx(Elt,{})}),o.jsx(bn.NextPrevNav,{onPrevious:n,onNext:r,previousLabel:"Previous result",nextLabel:"Next result"}),o.jsxs(de,{size:"md",onClick:a,disabled:!e.traceId,children:[o.jsx(STe,{}),"Trace"]}),o.jsx(bn.CloseButton,{onClick:s,tooltip:"Close result panel"})]})]}),!m&&o.jsxs(bn.Content,{children:[o.jsxs("div",{className:"grid gap-4 mb-6",children:[o.jsxs(Bt,{children:[o.jsx(Bt.Key,{children:"Item Id"}),o.jsx(Bt.ValueWithCopyBtn,{copyTooltip:"Copy Item Id to clipboard",copyValue:e.itemId,children:e.itemId}),o.jsx(Bt.Key,{children:"Created"}),o.jsx(Bt.Value,{children:er(new Date(e.createdAt),"MMM d, yyyy 'at' h:mm a")})]}),y&&o.jsx(In,{variant:"destructive",title:"Error",children:o.jsx(In.Message,{children:G8(e?.error&&typeof e.error=="object"?e.error.message:e?.error)})}),t&&t.length>0&&o.jsxs(me,{columns:"1fr 1fr",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Scorer"}),o.jsx(me.TopCell,{children:"Score"})]}),t.map(C=>o.jsxs(me.RowButton,{featured:c===C.id,onClick:()=>l?.(C.id),children:[o.jsx(me.Cell,{height:"compact",children:C.scorerId}),o.jsx(me.MonoCell,{children:C.score.toFixed(3)})]},C.id))]}),e.toolMockReport&&o.jsx(Fes,{report:e.toolMockReport}),(e.status||_.length>0||k)&&o.jsxs("div",{className:"grid gap-2",children:[o.jsx(bn.SectionHeading,{icon:o.jsx(gN,{}),className:"mb-2",children:"Review"}),(e.status||_.length>0)&&o.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[e.status&&o.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium ${e.status==="needs-review"?"bg-orange-500/10 text-orange-400":e.status==="complete"?"bg-accent1/10 text-accent1":"bg-neutral3/10 text-neutral4"}`,children:e.status}),_.map(C=>o.jsx("span",{className:"text-xs px-2 py-0.5 rounded bg-surface4 text-neutral4",children:C},C))]}),k&&o.jsx("div",{children:o.jsxs(de,{size:"sm",onClick:()=>u(e.id),children:[o.jsx(eq,{}),"Flag for Review"]})}),e.status==="needs-review"&&i&&o.jsx("div",{children:o.jsxs(de,{size:"sm",onClick:i,children:[o.jsx(Pa,{}),"Review"]})})]})]}),o.jsxs("div",{className:"grid gap-3",children:[o.jsx(bn.CodeSection,{title:"Input",icon:o.jsx(pN,{}),codeStr:b}),o.jsx(bn.CodeSection,{title:"Output",icon:o.jsx(hg,{}),codeStr:w}),o.jsx(bn.CodeSection,{title:"Ground Truth",icon:o.jsx(nbe,{}),codeStr:S})]})]})]})}function G8(e){return e==null?"-":typeof e=="string"?e:JSON.stringify(e,null,2)}function Ues({results:e,isLoading:t,featuredResultId:n,onResultClick:r,columns:s,scoresByItemId:a,scorerIds:i,setEndOfListElement:l,isFetchingNextPage:c,hasNextPage:u,selectedIds:d,onToggleSelect:f}){const p=!!(d&&f),h=[p?"auto":"",...s.map(g=>g.size)].filter(Boolean).join(" "),m=s.some(g=>g.name==="input");return t?o.jsx(el,{columns:h}):o.jsxs(me,{columns:h,className:"min-w-0",children:[o.jsxs(me.Top,{hasLeadingCell:p,children:[p&&o.jsx(me.TopCell,{children:" "}),p?o.jsx(me.TopCells,{colStart:2,children:s.map(g=>o.jsx(me.TopCell,{children:g.label},g.name))}):s.map(g=>o.jsx(me.TopCell,{children:g.label},g.name))]}),e.length===0?o.jsx(me.NoMatch,{message:"No results yet"}):o.jsxs(o.Fragment,{children:[e.map(g=>{const y=!!g.error,b=g.id===n,w=o.jsxs(o.Fragment,{children:[o.jsx(me.IdCell,{id:g.itemId}),o.jsx(me.Cell,{height:"compact",children:o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx("div",{className:"flex items-center justify-center w-10 relative bg-transparent h-full",children:o.jsx("div",{role:"img","aria-label":y?"Error":"Success",className:K("w-2 h-2 rounded-full",y?"bg-red-700":"bg-green-600")})})}),o.jsx(Bn,{children:y?"Error":"Success"})]})}),m&&o.jsx(me.MonoCell,{children:Ves(qes(g.input),200)}),i?.map(S=>{const _=a?.[g.itemId]?.find(C=>C.scorerId===S);return o.jsx(me.Cell,{height:"compact",className:"font-mono text-neutral3 text-ui-smd",children:_!=null?_.score.toFixed(3):"-"},S)})]});return p?o.jsxs(me.RowWrapper,{children:[o.jsx(me.SelectCell,{checked:d.has(g.id),onToggle:()=>f(g.id),"aria-label":`Select result ${g.itemId}`}),o.jsx(me.RowButton,{flushLeft:!0,colStart:2,featured:b,onClick:()=>r(g.id),children:w})]},g.id):o.jsx(me.RowButton,{featured:b,onClick:()=>r(g.id),children:w},g.id)}),o.jsx(me.NextPageLoading,{isLoading:c,hasMore:u,setEndOfListElement:l})]})]})}function qes(e){return e==null?"-":typeof e=="string"?e:JSON.stringify(e,null,2)}function Ves(e,t){return e.length<=t?e:e.slice(0,t-1)+"..."}function Hes(e){const t=e.scorer;return t?.hasJudge===!1?!0:t?.hasJudge===!0?!1:!e.preprocessPrompt&&!e.analyzePrompt&&!e.generateScorePrompt&&!e.generateReasonPrompt}function Wes({score:e,onNext:t,onPrevious:n,onClose:r,onShowTrace:s,collapsed:a,onCollapsedChange:i}){const[l,c]=v.useState(!1),u=a??l,d=i??c,f=Hes(e),p=f?"N/A — code-based scorer":"N/A — step not configured";return o.jsxs(bn,{collapsed:u,children:[o.jsxs(bn.Header,{children:[o.jsxs(bn.Heading,{children:["Score ",o.jsx("b",{children:e.scorerId})]}),o.jsxs($r,{className:"ml-auto shrink-0",children:[i&&o.jsx(de,{size:"md",tooltip:u?"Expand panel":"Collapse panel",onClick:()=>d(!u),children:u?o.jsx(jlt,{}):o.jsx(Elt,{})}),(n||t)&&o.jsx(bn.NextPrevNav,{onPrevious:n,onNext:t,previousLabel:"Previous score",nextLabel:"Next score"}),s&&o.jsxs(de,{size:"md",onClick:s,disabled:!e.traceId,children:[o.jsx(STe,{}),"Trace"]}),o.jsx(bn.CloseButton,{onClick:r,tooltip:"Close score panel"})]})]}),!u&&o.jsx(bn.Content,{children:o.jsxs("div",{className:"grid gap-3",children:[o.jsx(bn.CodeSection,{title:`Score: ${e.score}`,icon:o.jsx(em,{}),codeStr:e.reason||p,simplified:!0}),!f&&o.jsxs(o.Fragment,{children:[o.jsx(bn.CodeSection,{title:"Preprocess Prompt",icon:o.jsx(xh,{}),codeStr:e.preprocessPrompt||p,simplified:!0}),o.jsx(bn.CodeSection,{title:"Analyze Prompt",icon:o.jsx(xh,{}),codeStr:e.analyzePrompt||p,simplified:!0}),o.jsx(bn.CodeSection,{title:"Generate Score Prompt",icon:o.jsx(xh,{}),codeStr:e.generateScorePrompt||p,simplified:!0}),o.jsx(bn.CodeSection,{title:"Generate Reason Prompt",icon:o.jsx(xh,{}),codeStr:e.generateReasonPrompt||p,simplified:!0})]})]})})]})}const TQe=[{name:"scorer",label:"Scorer",size:"1fr"},{name:"avg",label:"Avg Score",size:"1fr"},{name:"count",label:"Items Scored",size:"1fr"}];function Zes({scoresByItemId:e,experimentStatus:t}){const n=v.useMemo(()=>{if(!e)return[];const r={};for(const s of Object.values(e))for(const a of s)r[a.scorerId]||(r[a.scorerId]={sum:0,count:0}),r[a.scorerId].sum+=a.score,r[a.scorerId].count++;return Object.entries(r).map(([s,{sum:a,count:i}])=>({scorerId:s,avg:a/i,count:i})).sort((s,a)=>s.scorerId.localeCompare(a.scorerId))},[e]);if(n.length===0){const r=t==="running"||t==="pending",s=e!==void 0;let a,i;return r?(a="Experiment in progress",i="Summary metrics will appear here once the experiment completes."):s?(a="No scorers configured",i="Add scorers when triggering an experiment to evaluate results and see summary metrics here."):(a="Loading scores",i="Fetching scorer results…"),o.jsx("div",{className:"flex h-full items-center justify-center py-12",children:o.jsx(Lr,{iconSlot:o.jsx(em,{className:"w-8 h-8 text-neutral3"}),titleSlot:a,descriptionSlot:i})})}return o.jsxs(gn,{children:[o.jsxs(gn.Header,{columns:TQe,children:[o.jsx(gn.HeaderCol,{children:"Scorer"}),o.jsx(gn.HeaderCol,{children:"Avg Score"}),o.jsx(gn.HeaderCol,{children:"Items Scored"})]}),o.jsx(gn.Scroller,{children:o.jsx(gn.Items,{children:n.map(({scorerId:r,avg:s,count:a})=>o.jsxs(gn.Row,{columns:TQe,children:[o.jsx(gn.TextCell,{children:r}),o.jsx(gn.TextCell,{className:"font-mono",children:s.toFixed(3)}),o.jsx(gn.TextCell,{className:"font-mono",children:a})]},r))})})]})}function O8t({experimentId:e,datasetId:t,experimentStatus:n,results:r,isLoading:s,setEndOfListElement:a,isFetchingNextPage:i,hasNextPage:l}){const[c,u]=v.useState(null),[d,f]=v.useState(null),[p,h]=v.useState(void 0),[m,g]=v.useState(null),[y,b]=v.useState(new Set),[w,S]=v.useState(!1),[k,_]=v.useState(!1),[C,E]=v.useState(!1),[j,N]=v.useState(!1),{updateExperimentResult:I}=_i(),P=v.useCallback(se=>{b(re=>{const he=new Set(re);return he.has(se)?he.delete(se):he.add(se),he})},[]),$=v.useCallback(()=>b(new Set),[]),F=v.useCallback(()=>{const se=r.filter(re=>!!re.error).map(re=>re.id);b(new Set(se))},[r]),D=v.useCallback(async se=>{if(w||se.length===0)return;S(!0);let re=0;const he=new Set;try{for(const xe of se)try{await I.mutateAsync({datasetId:t,experimentId:e,resultId:xe,status:"needs-review"}),re++,he.add(xe)}catch{}}finally{S(!1)}he.size>0&&b(xe=>{const je=new Set(xe);for(const Pe of he)je.delete(Pe);return je}),re>0&&De(`${re} result${re>1?"s":""} flagged for review`)},[t,e,w,I]),V=r.find(se=>se.id===c)??null,[W,L]=v.useState("summary"),[B,z]=v.useState(null),M=se=>{L(se),se!=="reviews"&&z(null)},{data:G}=xTe(t),q=(G??[]).filter(se=>se.experimentId===e).length,{data:R}=V6t(e,n),U=v.useMemo(()=>{if(!R)return[];const se=new Set;for(const re of Object.values(R))for(const he of re)se.add(he.scorerId);return[...se].sort()},[R]),Z=se=>{u(se),f(null),h(void 0),g(null)},X=se=>{Z(se===c?null:se)},te=()=>{Z(null)},J=()=>{if(!V)return;const se=r.findIndex(re=>re.id===V.id);if(se>=0&&se<r.length-1)return()=>Z(r[se+1].id)},ee=()=>{if(!V)return;const se=r.findIndex(re=>re.id===V.id);if(se>0)return()=>Z(r[se-1].id)},ae=V?R?.[V.itemId]:void 0,ce=ae?.find(se=>se.id===m)??null,Y=se=>{g(se===m?null:se),f(null),h(void 0)},ne=()=>{if(!m||!ae)return;const se=ae.findIndex(re=>re.id===m);if(se>=0&&se<ae.length-1)return()=>g(ae[se+1].id)},ue=()=>{if(!m||!ae)return;const se=ae.findIndex(re=>re.id===m);if(se>0)return()=>g(ae[se-1].id)},{data:pe,isLoading:le}=Les(d),ve=pe?.spans,{data:ye,isLoading:Se}=oI(d,p),Ne=ye?.span,{handlePreviousSpan:ke,handleNextSpan:Ie}=KH(ve,p??null,h),ze=(()=>{const se=[],re=!!ce,he=!!d;return se.push(k?"auto":re||he?"2fr":"1fr"),re&&se.push(j?"auto":"3fr"),he&&se.push(C?"auto":"3fr"),he&&p&&se.push("3fr"),se.join(" ")})(),oe=v.useMemo(()=>[{name:"itemId",label:"Item ID",size:"7rem"},{name:"status",label:"Status",size:"5rem"},{name:"input",label:"Input",size:"minmax(15rem,1fr)"},...U.map(se=>({name:se,label:se,size:"12rem"}))],[U]);return o.jsxs(su,{defaultTab:"summary",value:W,onValueChange:M,className:"grid grid-rows-[auto_1fr] h-full overflow-hidden",children:[o.jsxs(au,{children:[o.jsx(Vr,{value:"summary",children:"Summary"}),o.jsx(Vr,{value:"results",children:"Results"}),o.jsxs(Vr,{value:"reviews",children:["Reviews",q>0&&o.jsx(Xs,{color:"orange",children:q})]})]}),o.jsx(ps,{value:"summary",className:"overflow-y-auto mt-5",children:o.jsx(Zes,{scoresByItemId:R,experimentStatus:n})}),o.jsx(ps,{value:"reviews",className:"overflow-auto mt-2 pb-0",children:o.jsx(k8t,{datasetId:t,experimentId:e,featuredItemId:B})}),o.jsxs(ps,{value:"results",className:"grid grid-rows-[auto_1fr] overflow-hidden mt-2",children:[o.jsxs("div",{className:"mb-4",children:[y.size>0&&o.jsxs("div",{className:"flex items-center gap-2 px-4 py-2 bg-surface3",children:[o.jsxs(ge,{variant:"ui-xs",className:"text-neutral5 font-medium",children:[y.size," selected"]}),o.jsx("div",{className:"flex-1"}),o.jsxs(de,{variant:"outline",size:"sm",disabled:w,onClick:()=>D([...y]),children:[o.jsx(Ue,{size:"sm",children:o.jsx(eq,{})}),"Flag for Review"]}),o.jsx(de,{variant:"ghost",size:"sm",onClick:$,children:"Clear"})]}),r.length>0&&y.size===0&&!s&&o.jsx("div",{className:"flex items-center gap-2 px-4 py-2",children:o.jsx(de,{variant:"ghost",size:"sm",onClick:F,children:"Select loaded failures"})})]}),o.jsxs("div",{className:K("grid w-full h-full grid-cols-1 gap-4 overflow-y-auto",V&&"grid-cols-[1fr_1fr]"),children:[o.jsx("div",{className:"flex overflow-y-auto w-full",children:o.jsx("div",{className:"grid gap-8 content-start w-full overflow-y-auto",children:o.jsx(Ues,{results:r,isLoading:s,featuredResultId:c,onResultClick:X,columns:oe,scoresByItemId:R,scorerIds:U,setEndOfListElement:a,isFetchingNextPage:i,hasNextPage:l,selectedIds:y,onToggleSelect:P})})}),V&&o.jsxs("div",{className:"grid gap-4 max-h-full min-h-0 overflow-auto content-start",style:{gridTemplateRows:ze},children:[o.jsx(Bes,{result:V,scores:ae,onPrevious:ee(),onNext:J(),onClose:te,onScoreClick:Y,featuredScoreId:m,onShowTrace:()=>{V.traceId&&(f(V.traceId),h(void 0),g(null),_(!0),E(!1))},onOpenInReview:()=>{z(V.id),L("reviews")},onFlagForReview:se=>D([se]),collapsed:k,onCollapsedChange:_}),ce&&o.jsx(Wes,{score:ce,onNext:ne(),onPrevious:ue(),onClose:()=>g(null),onShowTrace:()=>{ce.traceId&&(f(ce.traceId),h(void 0),_(!0),N(!0),E(!1))},collapsed:j,onCollapsedChange:N}),d&&o.jsxs(o.Fragment,{children:[o.jsx(fTe,{traceId:d,spans:ve,isLoading:le,onClose:()=>{f(null),h(void 0),_(!1),N(!1)},onSpanSelect:h,initialSpanId:p??null,placement:"traces-list",showUnavailableFeaturesMsg:!1,collapsed:C,onCollapsedChange:E,LinkComponent:$3,traceHref:`/traces/${d}`}),p&&o.jsx(QH,{traceId:d,spanId:p,span:Ne,isLoading:Se,onPrevious:ke,onNext:Ie,onClose:()=>h(void 0)})]})]})]})]})]})}const Ges={pending:o.jsx(aO,{}),running:o.jsx(Hde,{}),completed:o.jsx(Js,{}),failed:o.jsx(vs,{})};function Qes({experiment:e,className:t}){const n=e.status,r=e.totalItems-e.succeededCount-e.failedCount;return o.jsxs("div",{className:K("grid justify-items-end gap-3",t),children:[o.jsxs("div",{className:"flex p-1 px-3 text-ui-lg capitalize text-neutral4 gap-2 items-center bg-surface5 rounded-lg ",children:[o.jsx("span",{className:K("w-5 h-5 flex items-center justify-center rounded-full text-black","[&>svg]:w-4 [&>svg]:h-4",{"bg-green-700":n==="completed","bg-red-700":n==="failed","bg-cyan-600":n==="running","bg-yellow-600":n==="pending"}),children:Ges[n]}),e.status]}),o.jsxs("div",{className:K("flex items-center gap-3 text-neutral3 text-ui-md ","[&>span]:flex [&>span]:gap-1 [&>span]:items-center ","[&_b]:text-neutral4 [&_b]:font-semibold"),children:[o.jsxs("span",{children:["Total: ",o.jsx("b",{children:e.totalItems})]}),o.jsxs("span",{children:["Succeeded: ",o.jsx("b",{children:e.succeededCount})]}),o.jsxs("span",{children:["Failed: ",o.jsx("b",{children:e.failedCount})]}),(n==="pending"||n==="running")&&o.jsxs("span",{children:["Pending: ",o.jsx("b",{children:r})]})]})]})}function Yes({onPrevious:e,onNext:t,previousAriaLabel:n="Previous",nextAriaLabel:r="Next"}){return o.jsxs($r,{spacing:"close",children:[o.jsxs(de,{onClick:e,disabled:!e,"aria-label":n,children:[o.jsx(Bq,{})," Prev"]}),o.jsxs(de,{onClick:t,disabled:!t,"aria-label":r,children:["Next",o.jsx(Fq,{})]})]})}function kTe({delta:e}){const t=e>0?o.jsx(Xs,{size:"small",color:"green",intensity:"muted",children:o.jsx(l3,{})}):e<0?o.jsx(Xs,{size:"small",color:"red",intensity:"muted",children:o.jsx(dln,{})}):null;return o.jsxs("span",{className:K("font-mono text-sm text-neutral4 min-w-20"),children:[o.jsx("span",{className:"w-3 inline-block",children:e>0?"+ ":e<0?"- ":""}),Math.abs(e).toFixed(2)," ",t]})}function Q8(e){return e==null?"-":typeof e=="string"?e:JSON.stringify(e,null,2)}function Xes({item:e,baselineId:t,contenderId:n,baselineVersion:r,contenderVersion:s,onPrevious:a,onNext:i,onClose:l}){const c=e.results[t],u=e.results[n],d=!!(c&&u),f=new Set;if(c)for(const h of Object.keys(c.scores))f.add(h);if(u)for(const h of Object.keys(u.scores))f.add(h);const p=[...f].sort();return o.jsxs(Gr,{withLeftSeparator:!0,children:[o.jsxs(Gr.Toolbar,{children:[o.jsx(Yes,{onPrevious:a,onNext:i,previousAriaLabel:"Previous comparison item",nextAriaLabel:"Next comparison item"}),o.jsx($r,{children:o.jsx(de,{onClick:l,"aria-label":"Close comparison detail panel",children:o.jsx(vs,{})})})]}),o.jsxs(Gr.Content,{className:"pb-6",children:[o.jsx(ua,{withMargins:!1,children:o.jsx(ua.Column,{children:o.jsxs(ua.Title,{size:"smaller",children:[o.jsx(pN,{})," ",e.itemId]})})}),d?o.jsx(o.Fragment,{children:o.jsxs(Bje,{children:[p.length>0&&o.jsxs("div",{className:"grid gap-3",children:[o.jsx("h4",{className:"text-sm font-medium text-neutral5",children:"Scores"}),o.jsx("div",{className:"grid gap-2",children:p.map(h=>{const m=c?.scores[h]??null,g=u?.scores[h]??null,y=m!=null&&g!=null?g-m:null;return o.jsxs("div",{className:"flex items-center justify-between gap-4 px-3 py-2 rounded-lg bg-surface2",children:[o.jsx("span",{className:"text-sm text-neutral5 font-medium",children:h}),o.jsxs("div",{className:"flex items-center gap-4",children:[o.jsxs("span",{className:"text-sm text-neutral3",children:[m!=null?m.toFixed(3):"-"," →"," ",g!=null?g.toFixed(3):"-"]}),y!=null&&o.jsx(kTe,{delta:y})]})]},h)})})]}),o.jsx(Ps.CodeSection,{title:o.jsxs(o.Fragment,{children:[o.jsx(Xs,{color:"purple",children:"Baseline "})," Experiment Output"]}),icon:o.jsx(hg,{}),codeStr:Q8(c?.output)}),o.jsx(Ps.CodeSection,{title:o.jsxs(o.Fragment,{children:[o.jsx(Xs,{color:"cyan",children:"Contender "})," Experiment Output"]}),icon:o.jsx(hg,{}),codeStr:Q8(u?.output)}),o.jsx(Ps.CodeSection,{title:"Item Input",icon:o.jsx(iO,{}),codeStr:Q8(e.input)}),o.jsx(Ps.CodeSection,{title:"Item Ground Truth",icon:o.jsx(nbe,{}),codeStr:Q8(e.groundTruth)})]})}):o.jsx(In,{variant:"warning",title:"Comparison not available",children:o.jsx(In.Message,{children:(()=>{const h=c?"Contender":"Baseline",m=c?s:r;return o.jsxs(o.Fragment,{children:["The ",h," experiment was run against dataset",m!=null?` v. ${m}`:"",", which does not contain this item."]})})()})})]})]})}function Kes({items:e,baselineId:t,contenderId:n,scorerIds:r,featuredItemId:s,columns:a,onItemClick:i}){return o.jsx(Gr,{children:o.jsxs(gn,{children:[o.jsxs(gn.Header,{columns:a,children:[o.jsx(gn.HeaderCol,{children:"Item ID"}),!s&&r.map(l=>o.jsx(gn.HeaderCol,{className:"flex justify-center",children:l},l))]}),o.jsx(gn.Scroller,{children:o.jsx(gn.Items,{children:e.map(l=>{const c=l.results[t],u=l.results[n],d=!!(c&&u);return o.jsx(gn.Row,{children:o.jsxs(gn.RowButton,{item:{id:l.itemId},columns:a,isFeatured:s===l.itemId,onClick:i,children:[o.jsx(gn.IdCell,{id:l.itemId,className:d?"":"text-neutral1"}),!s&&o.jsx(o.Fragment,{children:r.map(f=>{const p=c?.scores[f]??null,h=u?.scores[f]??null,m=p!=null&&h!=null?h-p:null;return o.jsx(gn.Cell,{className:"flex items-center gap-5 justify-center font-mono",children:m!=null?o.jsxs(o.Fragment,{children:[o.jsxs("span",{className:"flex items-center text-neutral2 min-w-24",children:[p?.toFixed(2)," → ",h?.toFixed(2)]}),o.jsx(kTe,{delta:m})]}):o.jsx("span",{className:"text-neutral1",children:"-"})},f)})})]})},l.itemId)})})})]})})}const Jes={baseline:{label:"Baseline",color:"purple",customStyle:"items-end justify-items-end [&>div]:justify-end border-r-0 rounded-r-none"},contender:{label:"Contender",color:"cyan",customStyle:"items-start justify-items-start [&>div]:justify-start border-l-0 rounded-l-none"}};function NQe({datasetId:e,experiment:t,type:n}){const{Link:r}=yn(),{label:s,color:a,customStyle:i}=Jes[n];if(!t)return null;const l=t.createdAt?new Date(t.createdAt):null;return o.jsxs("div",{className:`grid border-2 border-border1 rounded-lg p-5 gap-3 ${i}`,children:[o.jsxs("div",{className:"flex items-center gap-3 w-full overflow-clip",children:[n==="contender"&&o.jsxs(Xs,{size:"small",color:a,children:[s,o.jsx(hm,{})]}),o.jsx(de,{as:r,href:`/datasets/${e}/experiments/${t.id}`,children:o.jsx("span",{className:"truncate min-w-0",children:t.id})}),n==="baseline"&&o.jsxs(Xs,{size:"small",color:a,children:[o.jsx(Ec,{})," ",s]})]}),o.jsxs("div",{className:"flex flex-wrap gap-x-4 gap-y-1 text-ui-sm text-neutral3",children:[o.jsxs(Nl,{children:[o.jsx(nbe,{})," ",t.targetType," / ",t.targetId]}),o.jsxs(Nl,{children:[o.jsx(rq,{})," v",t.datasetVersion??"—"]}),l&&o.jsxs(Nl,{children:[o.jsx(_lt,{})," ",er(l,"MMM d, yyyy HH:mm")]})]})]})}function ets({datasetId:e,experimentIdA:t,experimentIdB:n,onSwap:r}){const[s,a]=v.useState(null),{data:i,isLoading:l,error:c}=UKr(e,t,n),{data:u}=IU(e,t),{data:d}=IU(e,n),f=u&&d&&u.datasetVersion!==d.datasetVersion,p=v.useMemo(()=>{if(!i)return[];const E=new Set;for(const j of i.items)for(const N of Object.values(j.results))if(N)for(const I of Object.keys(N.scores))E.add(I);return[...E].sort()},[i]),h=v.useMemo(()=>{if(!i||p.length===0)return[];const E=i.baselineId,j=t===E?n:t;return p.map(N=>{let I=0,P=0,$=0,F=0;for(const L of i.items){const B=L.results[E]?.scores[N],z=L.results[j]?.scores[N];B!=null&&(I+=B,$++),z!=null&&(P+=z,F++)}const D=$>0?I/$:null,V=F>0?P/F:null,W=D!=null&&V!=null?V-D:null;return{scorerId:N,avgA:D,avgB:V,delta:W}})},[i,p,t,n]),m=[{name:"scorer",label:"Scorer",size:"1fr"},{name:"baselineAvg",label:"Baseline Avg",size:"1fr"},{name:"comparisonAvg",label:"Comparison Avg",size:"1fr"},{name:"delta",label:"Delta",size:"1fr"}],g=v.useMemo(()=>[{name:"itemId",label:"Item ID",size:"8rem"},...s?[]:p.map(E=>({name:E,label:E,size:"1fr"}))],[p,s]),y=i?.items.find(E=>E.itemId===s)??null,b=E=>{a(E===s?null:E)},w=()=>{a(null)},S=()=>{if(!i||!s)return;const E=i.items.findIndex(j=>j.itemId===s);if(E>=0&&E<i.items.length-1)return()=>a(i.items[E+1].itemId)},k=()=>{if(!i||!s)return;const E=i.items.findIndex(j=>j.itemId===s);if(E>0)return()=>a(i.items[E-1].itemId)};if(l)return o.jsx("div",{className:"flex items-center justify-center h-64",children:o.jsx(Qt,{})});if(c)return o.jsx(In,{variant:"warning",title:"Error loading comparison",children:o.jsx(In.Message,{children:c instanceof Error?c.message:"Unknown error"})});if(!i||i.items.length===0)return o.jsx("div",{className:"text-neutral4 text-sm text-center py-8",children:"No comparison data"});const _=i.baselineId,C=t===_?n:t;return o.jsxs("div",{className:"grid gap-10",children:[u&&d&&o.jsxs("div",{className:K("relative grid xl:grid-cols-[1fr_auto_1fr] gap-4 xl:gap-0"),children:[o.jsx(NQe,{datasetId:e,experiment:u,type:"baseline"}),o.jsx("div",{className:"relative flex items-center justify-center px-[2vw] before:absolute before:inset-y-0 before:left-1/2 before:-translate-x-1/2 before:w-[2px] before:bg-border1",children:o.jsx("div",{className:"relative z-1 bg-surface2 rounded-lg p-2",children:o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx(de,{onClick:r,children:"VS"})}),o.jsx(Bn,{children:"Switch the order"})]})})}),o.jsx(NQe,{datasetId:e,experiment:d,type:"contender"})]}),f&&o.jsx(In,{variant:"warning",title:"Version mismatch",children:o.jsxs(In.Message,{children:["These experiments used different dataset versions (v",u.datasetVersion," vs v",d.datasetVersion,"). Results may not be directly comparable."]})}),h.length>0&&o.jsxs(gn,{children:[o.jsxs(gn.Header,{columns:m,children:[o.jsx(gn.HeaderCol,{children:"Scorer"}),o.jsx(gn.HeaderCol,{className:"flex justify-center",children:o.jsxs(IGe,{children:[o.jsx(Xs,{color:"purple",size:"small",intensity:"muted",children:"Baseline"}),o.jsx(Xs,{color:"purple",size:"small",children:"Avg"})]})}),o.jsx(gn.HeaderCol,{className:"flex justify-center",children:o.jsxs(IGe,{children:[o.jsx(Xs,{color:"cyan",size:"small",intensity:"muted",children:"Contender"}),o.jsx(Xs,{color:"cyan",size:"small",children:"Avg"})]})}),o.jsx(gn.HeaderCol,{className:"flex justify-center",children:"Delta"})]}),o.jsx(gn.Scroller,{children:o.jsx(gn.Items,{children:h.map(({scorerId:E,avgA:j,avgB:N,delta:I})=>o.jsxs(gn.Row,{columns:m,children:[o.jsx(gn.TextCell,{children:E}),o.jsx(gn.TextCell,{className:"text-center font-mono",children:j!=null?j.toFixed(3):"-"}),o.jsx(gn.TextCell,{className:"text-center font-mono",children:N!=null?N.toFixed(3):"-"}),o.jsx(gn.TextCell,{className:"flex justify-center",children:I!=null?o.jsx(kTe,{delta:I}):"-"})]},E))})})]}),o.jsxs(ry,{className:K({"grid-cols-[1fr_2fr]":!!y}),children:[o.jsx(Kes,{items:i.items,baselineId:_,contenderId:C,scorerIds:p,featuredItemId:s,columns:g,onItemClick:b}),!!y&&o.jsx(Xes,{item:y,baselineId:_,contenderId:C,baselineVersion:u?.datasetVersion,contenderVersion:d?.datasetVersion,onPrevious:k(),onNext:S(),onClose:w})]})]})}function tts({datasetId:e,itemId:t,onVersionSelect:n,onCompareVersionsClick:r,activeVersion:s}){const{data:a,isLoading:i}=vTe(e,t),[l,c]=v.useState(!1),[u,d]=v.useState(new Set),f=b=>{n?.(b)},p=b=>s==null?b.isLatest:b.datasetVersion===s,h=b=>{d(w=>{const S=new Set(w);if(S.has(b))S.delete(b);else if(S.size>=2){const[k]=Array.from(S);return new Set([k,b])}else S.add(b);return S})},m=()=>{c(!1),d(new Set)},g=()=>{c(!0)},y=()=>{u.size===2&&r?.([...u])};return o.jsxs(Gr,{className:"min-w-56",children:[l?o.jsx(Gr.Toolbar,{className:"grid justify-stretch gap-3 w-full",children:o.jsxs($r,{children:[o.jsx(de,{onClick:m,children:"Cancel"}),o.jsx(de,{variant:"primary",disabled:u.size!==2,onClick:y,tooltip:u.size!==2?"Check 2 versions to compare":void 0,className:"grow",children:"Compare"})]})}):o.jsx(o.Fragment,{children:(a||[]).length>1&&o.jsx(Gr.Toolbar,{children:o.jsxs(de,{onClick:g,className:"w-full",children:[o.jsx(Qw,{})," Compare Ver."]})})}),i?o.jsx(nts,{}):o.jsxs(gn,{children:[o.jsx(gn.Header,{children:o.jsx(gn.HeaderCol,{children:"Item Version History"})}),o.jsx(gn.Scroller,{children:o.jsx(gn.Items,{children:a?.map(b=>{const w=String(b.datasetVersion),S=typeof b.updatedAt=="string"?new Date(b.updatedAt):b.updatedAt;return o.jsxs(gn.Row,{isSelected:l&&u.has(w),children:[l&&o.jsx(gn.LabelCell,{children:o.jsx($o,{checked:u.has(w),disabled:b.isDeleted,onCheckedChange:()=>{},onClick:k=>{k.stopPropagation(),b.isDeleted||h(w)},"aria-label":`Select version ${b.datasetVersion}`})}),o.jsx(gn.RowButton,{item:b,columns:[{name:"version",label:"Item Version History",size:"1fr"}],isFeatured:p(b),onClick:()=>f(b),className:"py-2",children:o.jsx(gn.VersionCell,{version:b.datasetVersion,date:S,isLatest:b.isLatest,isDeleted:b.isDeleted})})]},String(b.datasetVersion))})})})]})]})}function nts(){return o.jsxs(gn,{children:[o.jsx(gn.Header,{columns:[{name:"version",label:"Item Version History",size:"1fr"}],children:o.jsx(gn.HeaderCol,{children:"Item Version History"})}),o.jsx(gn.Items,{children:Array.from({length:3}).map((e,t)=>o.jsx(gn.Row,{children:o.jsx(gn.RowButton,{columns:[{name:"version",label:"Item Version History",size:"1fr"}],children:o.jsx(gn.TextCell,{isLoading:!0,children:"Loading..."})})},t))})]})}function rts(e,t){if(t){const n=typeof t=="string"?new Date(t):t;return`v${e} ${er(n,"MMM dd 'at' H:mm:ss a")}`}return`v${e}`}function sts({datasetId:e,versionA:t,versionB:n,onVersionChange:r}){const{data:s}=sTe(e),a=(s??[]).map(i=>({value:String(i.version),label:`${rts(i.version,i.createdAt)}${i.isCurrent?" (current)":""}`}));return o.jsxs(Gr.Toolbar,{className:"grid grid-cols-[1fr_1fr_1fr_10rem] gap-4 w-full",children:[o.jsx("div",{}),o.jsx(xc,{label:"Version A",labelIsHidden:!0,name:"version-a",placeholder:"Select version",options:a,value:t??"",onValueChange:i=>r?.(i,n??"")}),o.jsx(xc,{label:"Version B",labelIsHidden:!0,name:"version-b",options:a,value:n??"",onValueChange:i=>r?.(t??"",i)}),o.jsx("div",{})]})}const ats=[{name:"id",label:"ID",size:"1fr"},{name:"versionA",label:"Version A",size:"1fr"},{name:"versionB",label:"Version B",size:"1fr"},{name:"compare",label:"Compare",size:"10rem"}],its={added:{color:"blue",borderColor:"border-blue-900",icon:o.jsx(Fr,{}),tooltip:"Added in this version"},changed:{color:"orange",borderColor:"border-yellow-900",icon:o.jsx(Vlt,{}),tooltip:"Changed in this version"},same:{color:"green",borderColor:"border-green-900",icon:o.jsx(Pcn,{}),tooltip:"Same in both versions"}};function Hre({red:e=!1,tooltip:t}){return o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx(wln,{className:K("text-neutral3/40 w-5 h-5 ",{"text-red-900":e})})}),t&&o.jsx(Bn,{children:t})]})}function VS({variant:e,version:t}){if(!e)return o.jsxs("span",{className:"text-ui-md text-neutral4",children:["v. ",t]});const{color:n,icon:r,tooltip:s}=its[e];return o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsxs("div",{className:"grid grid-cols-[1fr_auto]",children:[t!==void 0&&o.jsxs("span",{className:"pr-3 text-ui-md text-neutral4 min-w-16 flex justify-end",children:["v. ",t]}),o.jsx(Xs,{color:n,size:"small",children:r})]})}),o.jsx(Bn,{children:s})]})}function ots(e,t){return e&&t&&e.datasetVersion===t.datasetVersion?"same":e&&t&&e.datasetVersion!==t.datasetVersion?"changed":e?"added":"removed"}function lts({datasetId:e,versionA:t,versionB:n,allItems:r,itemsAMap:s,itemsBMap:a}){const{Link:i}=yn(),l=t>n;return o.jsx(gn,{children:o.jsx(gn.Scroller,{children:o.jsx(gn.Items,{children:r.map(({id:c})=>{const u=s.get(c),d=a.get(c),f=ots(u,d);return o.jsxs(gn.Row,{columns:ats,children:[o.jsx(gn.IdCell,{id:c,isShortened:!1}),f!=="same"?o.jsxs(o.Fragment,{children:[u?.datasetVersion?o.jsx(gn.LinkCell,{LinkComponent:i,href:`/datasets/${e}/items/${c}`,className:"gap-2",children:!d&&l?o.jsx(VS,{variant:"added",version:u.datasetVersion}):f==="changed"&&l?o.jsx(VS,{variant:"changed",version:u.datasetVersion}):o.jsx(VS,{version:u.datasetVersion})}):o.jsx(gn.Cell,{className:"justify-center flex items-center",children:o.jsx(Hre,{red:l,tooltip:l?"Deleted in this version":"Not present in this version"})}),d?.datasetVersion?o.jsx(gn.LinkCell,{LinkComponent:i,href:`/datasets/${e}/items/${c}`,className:"gap-2",children:!u&&!l?o.jsx(VS,{variant:"added",version:d.datasetVersion}):f==="changed"&&!l?o.jsx(VS,{variant:"changed",version:d.datasetVersion}):o.jsx(VS,{version:d.datasetVersion})}):o.jsx(gn.Cell,{className:"justify-center flex items-center",children:o.jsx(Hre,{red:!l,tooltip:l?"Not present in this version":"Deleted in this version"})})]}):o.jsx(gn.LinkCell,{LinkComponent:i,href:`/datasets/${e}/items/${c}`,className:"col-span-2 gap-2",children:o.jsx(VS,{variant:"same",version:d?.datasetVersion})}),f==="changed"?o.jsx(gn.LinkCell,{LinkComponent:i,href:`/datasets/${e}/items/${c}/versions?ids=${u?.datasetVersion},${d?.datasetVersion}`,children:"Compare"}):o.jsx(gn.Cell,{children:o.jsx(Hre,{tooltip:o.jsxs(o.Fragment,{children:["Comparing is available",o.jsx("br",{})," only for changed items"]})})})]},c)})})})})}const IQe={needsReview:"#facc15",complete:"#22c55e"},cts=[{label:"Needs Review",color:IQe.needsReview},{label:"Reviewed",color:IQe.complete}];function uts({reviewSummary:e,experiments:t,datasets:n,isLoading:r,isError:s}){const{data:a,maxVal:i,totalInPipeline:l}=v.useMemo(()=>{if(!e?.counts||!t)return{data:[],maxVal:0,totalInPipeline:0};const u=new Map;for(const m of t)u.set(m.id,m);const d=new Map;if(n)for(const m of n)d.set(m.id,m.name);let f=0,p=0;const h=[];for(const m of e.counts){const g=m.needsReview+m.complete;if(g===0)continue;p+=g,g>f&&(f=g);const y=u.get(m.experimentId),b=y?.datasetId?d.get(y.datasetId):void 0,w=b?`${b} · ${m.experimentId.slice(0,8)}`:m.experimentId.slice(0,8);h.push({name:w,values:[m.needsReview,m.complete]})}return{data:h,maxVal:f,totalInPipeline:p}},[e,t,n]),c=a.length>0;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Review Pipeline",description:"Items in review across experiments."}),c&&o.jsx(Ut.Summary,{value:String(l),label:"Items in pipeline"})]}),r?o.jsx(Ut.Loading,{}):s?o.jsx(Ut.Error,{message:"Failed to load review data"}):o.jsx(Ut.Content,{children:c?o.jsx(oN,{data:a,segments:cts,maxVal:i,fmt:u=>String(u)}):o.jsx(Ut.NoData,{message:"No items have been sent to review yet"})})]})}function OTe(){const e=We();return wt({queryKey:["experiment-review-summary"],queryFn:()=>e.getExperimentReviewSummary()})}function _8t(e){const t=new Map;if(!e?.counts)return t;for(const n of e.counts)t.set(n.experimentId,{needsReview:n.needsReview,complete:n.complete,total:n.total});return t}function dts(e,t){const n=new Map,r=_8t(e);if(!r.size||!t)return n;for(const s of t){const a=r.get(s.id);if(!a||!s.datasetId||a.needsReview+a.complete===0)continue;const l=n.get(s.datasetId)??{needsReview:0,complete:0};l.needsReview+=a.needsReview,l.complete+=a.complete,n.set(s.datasetId,l)}return n}function fts(e){return e?.counts?e.counts.reduce((t,n)=>({needsReview:t.needsReview+n.needsReview,complete:t.complete+n.complete,inPipeline:t.inPipeline+n.needsReview+n.complete}),{needsReview:0,complete:0,inPipeline:0}):{needsReview:0,complete:0,inPipeline:0}}const pts=10;function hts(){const[e,t]=v.useState(!1),[n,r]=v.useState(""),[s,a]=v.useState("all"),[i,l]=v.useState("all"),[c,u]=v.useState("all"),[d,f]=v.useState(0),{data:p,isLoading:h,error:m}=Rg({page:d,perPage:pts}),{data:g,isLoading:y,error:b}=WZ(),{data:w}=OTe(),S=v.useMemo(()=>p?.datasets??[],[p?.datasets]),k=p?.pagination?.hasMore??!1,_=v.useMemo(()=>g?.experiments??[],[g?.experiments]),C=v.useMemo(()=>iJr(S),[S]),E=v.useMemo(()=>dts(w,_),[w,_]),j=h||y,N=m||b,I=()=>t(!0),P=v.useCallback(()=>f(z=>z+1),[]),$=v.useCallback(()=>f(z=>Math.max(0,z-1)),[]),F=v.useCallback(z=>{r(z),f(0)},[]),D=v.useCallback(z=>{a(z),f(0)},[]),V=v.useCallback(z=>{l(z),f(0)},[]),W=v.useCallback(z=>{u(z),f(0)},[]);if(N&&gs(N))return o.jsx(lr,{children:o.jsx(Vs,{})});if(N&&ys(N))return o.jsx(lr,{children:o.jsx(Ds,{resource:"datasets"})});if(N)return o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load datasets",message:N.message})});if(S.length===0&&!j&&d===0)return o.jsxs(o.Fragment,{children:[o.jsx(lr,{children:o.jsx(dJr,{onCreateClick:I})}),o.jsx(Ave,{open:e,onOpenChange:t})]});const L=s!=="all"||i!=="all"||c!=="all"||n!=="",B=()=>{r(""),a("all"),l("all"),u("all"),f(0)};return o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsx(hJr,{search:n,onSearchChange:F,targetFilter:s,onTargetFilterChange:D,experimentFilter:i,onExperimentFilterChange:V,tagFilter:c,onTagFilterChange:W,tagOptions:C,onReset:B,hasActiveFilters:L,onCreateClick:I})}),o.jsx(uJr,{datasets:S,experiments:_,reviewByDataset:E,isLoading:j,search:n,targetFilter:s,experimentFilter:i,tagFilter:c,currentPage:d,hasMore:k,onNextPage:P,onPrevPage:$}),o.jsx(Ave,{open:e,onOpenChange:t})]})}function Y8({children:e}){return o.jsxs(Lt,{height:"full",children:[o.jsx("div",{}),o.jsx(Lt.MainArea,{isCentered:!0,children:e})]})}function mts(){const{datasetId:e}=dr(),t=bs(),[n,r]=ji(),{activeVersion:s}=yTe(n,r),[a,i]=v.useState(!1),[l,c]=v.useState(!1),[u,d]=v.useState(!1),[f,p]=v.useState(!1),[h,m]=v.useState(!1),{data:g,error:y,isLoading:b}=Ux(e),{data:w=[],isLoading:S}=_1(e,void 0,s),k=!S&&w.length===0;if(b)return null;if(y&&gs(y))return o.jsx(Y8,{children:o.jsx(Vs,{})});if(y&&ys(y))return o.jsx(Y8,{children:o.jsx(Ds,{resource:"datasets"})});if(y&&H1e(y)||!b&&!y&&!g)return o.jsx(Y8,{children:o.jsx(Lr,{iconSlot:o.jsx(ay,{}),titleSlot:"Dataset not found",descriptionSlot:`No dataset with id "${e}".`,actionSlot:o.jsxs(de,{as:ci,to:"/datasets",children:[o.jsx(Ec,{}),"Back to Datasets"]})})});if(y)return o.jsx(Y8,{children:o.jsx(Fi,{title:"Failed to load dataset",message:y instanceof Error?y.message:"An unexpected error occurred. Please try again."})});const _=E=>{t(`/datasets/${e}/experiments/${E}`)},C=()=>{t("/datasets")};return o.jsxs(o.Fragment,{children:[o.jsxs(Lt,{height:"full",children:[o.jsx(Lt.TopArea,{children:o.jsxs(Lt.Row,{children:[o.jsxs(Lt.Column,{children:[g?.description&&o.jsx("p",{className:"text-ui-smd text-neutral3 mb-1",children:g.description}),o.jsxs(Bt,{numOfCol:2,children:[o.jsx(Bt.Key,{children:"Created at"}),o.jsx(Bt.Value,{children:g?.createdAt?er(new Date(g.createdAt),"MMM d, yyyy"):""}),o.jsx(Bt.Key,{children:"Latest version"}),o.jsxs(Bt.Value,{children:["v",g?.version??""]})]})]}),o.jsx(Lt.Column,{children:o.jsxs($r,{children:[k?o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx("span",{className:"cursor-not-allowed",children:o.jsx("div",{className:"pointer-events-none opacity-50",inert:!0,"aria-disabled":"true",children:o.jsxs(de,{variant:"primary",children:[o.jsx(Pp,{}),s!=null?`Run on v${s}`:"Run Experiment"]})})})}),o.jsx(Bn,{children:"Add items to the dataset before running an experiment"})]}):o.jsxs(de,{variant:"primary",onClick:()=>i(!0),children:[o.jsx(Pp,{}),s!=null?`Run on v${s}`:"Run Experiment"]}),o.jsxs(pt,{children:[o.jsx(pt.Trigger,{asChild:!0,children:o.jsx(de,{size:"lg","aria-label":"Dataset actions menu",children:o.jsx(u3,{})})}),o.jsxs(pt.Content,{align:"end",className:"w-48",children:[o.jsxs(pt.Item,{onSelect:()=>d(!0),children:[o.jsx(tm,{})," Edit Dataset"]}),o.jsxs(pt.Item,{onSelect:()=>m(!0),children:[o.jsx(Rp,{})," Duplicate Dataset"]}),o.jsxs(pt.Item,{onSelect:()=>p(!0),className:"text-red-500 focus:text-red-400",children:[o.jsx(eu,{})," Delete Dataset"]})]})]})]})})]})}),o.jsx(Lt.MainArea,{children:o.jsx(Tes,{datasetId:e,onAddItemClick:()=>c(!0)})})]}),o.jsx(Des,{datasetId:e,version:s??void 0,requestContextSchema:g?.requestContextSchema,open:a,onOpenChange:i,onSuccess:_}),o.jsx(Ies,{datasetId:e,open:l,onOpenChange:c}),g&&o.jsx(xJr,{open:u,onOpenChange:d,dataset:{id:g.id,name:g.name,description:g?.description||"",targetType:g.targetType,inputSchema:g.inputSchema,groundTruthSchema:g.groundTruthSchema,requestContextSchema:g.requestContextSchema}}),g&&o.jsx(vJr,{open:h,onOpenChange:m,sourceDatasetId:g.id,sourceDatasetName:g.name,sourceDatasetDescription:g.description,sourceDatasetTargetType:g.targetType}),g&&o.jsx(SJr,{open:f,onOpenChange:p,datasetId:g.id,datasetName:g.name,onSuccess:C})]})}function C8t({experiment:e}){const{Link:t,paths:n}=yn(),{data:r}=Sm(),{data:s}=By(),{data:a}=th(),i=()=>{switch(e.targetType){case"agent":return n.agentLink(e.targetId);case"workflow":return n.workflowLink(e.targetId);case"scorer":return n.scorerLink(e.targetId);default:return"#"}},l=()=>{const u=e.targetId;if(!u)return u;switch(e.targetType){case"agent":return r?.[u]?.name??u;case"workflow":return s?.[u]?.name??u;case"scorer":return a?.[u]?.scorer?.config?.name??u;default:return u}},c=e.agentVersion&&e.targetType==="agent"&&e.targetId?`${n.agentLink(e.targetId)}/editor?version=${encodeURIComponent(e.agentVersion)}`:null;return o.jsx(Lt.TopArea,{children:o.jsxs(Lt.Row,{children:[o.jsx(Lt.Column,{children:o.jsxs(Bt,{numOfCol:2,children:[o.jsx(Bt.Key,{children:"Created at"}),o.jsx(Bt.Value,{children:er(new Date(e.createdAt),"MMM d, yyyy 'at' h:mm a")}),e.completedAt&&o.jsxs(o.Fragment,{children:[o.jsx(Bt.Key,{children:"Completed at"}),o.jsx(Bt.Value,{children:er(new Date(e.completedAt),"MMM d, yyyy 'at' h:mm a")})]}),o.jsx(Bt.Key,{children:"Target"}),o.jsx(Bt.ValueLink,{href:i(),as:t,children:l()}),e.agentVersion&&o.jsxs(o.Fragment,{children:[o.jsx(Bt.Key,{children:"Version"}),c?o.jsx(Bt.ValueLink,{href:c,as:t,children:e.agentVersion}):o.jsx(Bt.Value,{children:e.agentVersion})]})]})}),o.jsx(Lt.Column,{children:o.jsx(Qes,{experiment:e})})]})})}function X8({children:e}){return o.jsxs(Lt,{height:"full",children:[o.jsx("div",{}),o.jsx(Lt.MainArea,{isCentered:!0,children:e})]})}function gts(){const{datasetId:e,experimentId:t}=dr(),{data:n,isLoading:r,error:s}=IU(e,t),{data:a,isLoading:i,setEndOfListElement:l,isFetchingNextPage:c,hasNextPage:u}=BZ({datasetId:e,experimentId:t,experimentStatus:n?.status});return!e||!t||r?null:s&&gs(s)?o.jsx(X8,{children:o.jsx(Vs,{})}):s&&ys(s)?o.jsx(X8,{children:o.jsx(Ds,{resource:"datasets"})}):s&&H1e(s)||!r&&!s&&!n?o.jsx(X8,{children:o.jsx(Lr,{iconSlot:o.jsx(Wye,{}),titleSlot:"Experiment not found",descriptionSlot:`No experiment with id "${t}".`,actionSlot:o.jsxs(de,{as:ci,to:`/datasets/${e}?tab=experiments`,children:[o.jsx(Ec,{}),"Back to Dataset"]})})}):s?o.jsx(X8,{children:o.jsx(Fi,{title:"Failed to load experiment",message:s instanceof Error?s.message:"An unexpected error occurred. Please try again."})}):o.jsxs(Lt,{height:"full",children:[o.jsx(C8t,{experiment:n}),o.jsx(Lt.MainArea,{children:o.jsx(O8t,{experimentId:t,datasetId:e,experimentStatus:n.status,results:a??[],isLoading:i,setEndOfListElement:l,isFetchingNextPage:c,hasNextPage:u})})]})}function vts(){const{datasetId:e}=dr(),[t,n]=ji(),{error:r}=Ux(e??""),s=t.get("baseline")??"",a=t.get("contender")??"";return r&&gs(r)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})})}):r&&ys(r)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"datasets"})})}):!e||!s||!a?o.jsx(cs,{children:o.jsx(xy,{children:o.jsxs("div",{className:"text-neutral4 text-center py-8",children:[o.jsx("p",{children:"Select two experiments to compare."}),o.jsxs("p",{className:"text-sm mt-2",children:["Use the URL format: /datasets/","{datasetId}","/experiments?baseline=","{experimentIdA}","&contender=","{experimentIdB}"]})]})})}):o.jsx(cs,{children:o.jsx(xy,{children:o.jsxs("div",{className:"max-w-[100rem] w-full px-12 mx-auto grid content-start ",children:[o.jsxs(ua,{children:[o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{children:[o.jsx(Qw,{})," Dataset Experiments Comparison"]}),o.jsxs(ua.Description,{children:["Comparing"," ",o.jsx(ci,{to:`/datasets/${e}/experiments/${s}`,children:s.slice(0,8)})," vs"," ",o.jsx(ci,{to:`/datasets/${e}/experiments/${a}`,children:a.slice(0,8)})]})]}),o.jsx(ua.Column,{children:o.jsxs(de,{as:ci,to:`/datasets/${e}`,children:[o.jsx(Ec,{}),"Back to Dataset"]})})]}),o.jsx(ets,{datasetId:e,experimentIdA:s,experimentIdB:a,onSwap:()=>{n({baseline:a,contender:s})}})]})})})}function yts(){const{datasetId:e,itemId:t}=dr(),{Link:n}=yn(),r=bs(),{data:s,isLoading:a,error:i}=vTe(e??"",t??""),{updateItem:l,deleteItem:c}=_i(),{data:u}=Ux(e??""),d=s?.[0]??null,f=d?.isDeleted??!1,[p,h]=v.useState(null),m=v.useMemo(()=>!d||f?{input:"",groundTruth:"",metadata:"",trajectory:"",toolMocks:"",requestContext:""}:{input:JSON.stringify(d.input,null,2),groundTruth:d.groundTruth?JSON.stringify(d.groundTruth,null,2):"",metadata:d.metadata?JSON.stringify(d.metadata,null,2):"",trajectory:d.expectedTrajectory!=null?JSON.stringify(d.expectedTrajectory,null,2):"",toolMocks:d.toolMocks?.length?JSON.stringify(d.toolMocks,null,2):"",requestContext:d.requestContext?JSON.stringify(d.requestContext,null,2):""},[d,f]),g=d?.datasetVersion??0,[y,b]=v.useState(!1),[w,S]=v.useState(m.input),[k,_]=v.useState(m.groundTruth),[C,E]=v.useState(m.metadata),[j,N]=v.useState(m.trajectory),[I,P]=v.useState(m.toolMocks),[$,F]=v.useState(m.requestContext),[D,V]=v.useState(g);g!==D&&(V(g),S(m.input),_(m.groundTruth),E(m.metadata),N(m.trajectory),P(m.toolMocks),F(m.requestContext));const[W,L]=v.useState(!1),B=J=>{h(f?J:J.isLatest?null:J)},z=()=>{h(null)},M=!f&&p!=null,G=()=>{M||b(!0)},q=()=>{M||L(!0)},R=async()=>{if(!e||!t)return;let J;try{J=JSON.parse(w)}catch{De.error("Input must be valid JSON");return}let ee;if(k.trim())try{ee=JSON.parse(k)}catch{De.error("Ground Truth must be valid JSON");return}let ae;if(C.trim())try{ae=JSON.parse(C)}catch{De.error("Metadata must be valid JSON");return}let ce;const Y=j!==m.trajectory;if(Y&&j.trim())try{ce=JSON.parse(j)}catch{De.error("Expected Trajectory must be valid JSON");return}let ne;const ue=I!==m.toolMocks;if(ue&&I.trim())try{const ve=JSON.parse(I);if(!Array.isArray(ve)){De.error("Tool Mocks must be a JSON array");return}ne=ve}catch{De.error("Tool Mocks must be valid JSON");return}let pe;const le=$!==m.requestContext;if(le&&$.trim())try{pe=JSON.parse($)}catch{De.error("Request Context must be valid JSON");return}try{await l.mutateAsync({datasetId:e,itemId:t,input:J,groundTruth:ee,metadata:ae,...Y?{expectedTrajectory:ce??null}:{},...ue?{toolMocks:ne??[]}:{},...le?{requestContext:pe}:{}}),De.success("Item updated successfully"),b(!1)}catch(ve){De.error(`Failed to update item: ${ve instanceof Error?ve.message:"Unknown error"}`)}},U=()=>{d&&(S(JSON.stringify(d.input,null,2)),_(d.groundTruth?JSON.stringify(d.groundTruth,null,2):""),E(d.metadata?JSON.stringify(d.metadata,null,2):""),N(d.expectedTrajectory!=null?JSON.stringify(d.expectedTrajectory,null,2):""),P(d.toolMocks?.length?JSON.stringify(d.toolMocks,null,2):""),F(d.requestContext?JSON.stringify(d.requestContext,null,2):"")),b(!1)},Z=async()=>{if(!(!e||!t))try{await c.mutateAsync({datasetId:e,itemId:t}),De.success("Item deleted successfully"),L(!1),r(`/datasets/${e}`)}catch(J){De.error(`Failed to delete item: ${J instanceof Error?J.message:"Unknown error"}`)}},X=p??d,te=X?{id:t??"",datasetId:e??"",datasetVersion:X.datasetVersion,input:X.input,groundTruth:X.groundTruth,expectedTrajectory:X.expectedTrajectory,metadata:X.metadata,createdAt:X.createdAt,updatedAt:X.updatedAt}:null;return i&&gs(i)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})})}):i&&ys(i)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"datasets"})})}):a?null:!e||!t||!s||s.length===0?o.jsx(cs,{children:o.jsx(xy,{children:o.jsx("div",{className:"text-neutral3 p-4",children:"Item not found"})})}):o.jsxs(o.Fragment,{children:[o.jsx(cs,{children:o.jsx("div",{className:"h-full overflow-hidden px-6 pb-4",children:o.jsxs("div",{className:"grid gap-6 max-w-[60rem] mx-auto grid-rows-[auto_1fr] h-full",children:[o.jsxs(ua,{children:[o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{children:[o.jsx(pN,{}),t," ",o.jsx(ba,{content:t})]}),o.jsx(ua.Description,{children:o.jsxs(Nl,{children:["Item of ",o.jsx(ay,{})," ",u?.name]})}),o.jsxs(ua.Description,{children:[o.jsxs(Nl,{children:[o.jsx(Olt,{})," Created at"," ",d?.createdAt?er(new Date(d.createdAt),"MMM d, yyyy"):""]}),o.jsxs(Nl,{children:[o.jsx(o_,{})," Latest version v",d?.datasetVersion??""]})]})]}),o.jsx(ua.Column,{children:!y&&!f&&o.jsxs($r,{children:[o.jsxs(de,{onClick:G,disabled:M,title:M?"Return to latest version to edit":void 0,children:[o.jsx(Vlt,{})," Edit"]}),o.jsxs(de,{onClick:q,disabled:M,title:M?"Return to latest version to delete":void 0,children:[o.jsx(eu,{})," Delete"]})]})})]}),o.jsxs(ry,{className:y?"grid-cols-1":"grid-cols-[1fr_auto]",children:[o.jsxs(Gr,{withRightSeparator:!y,children:[f&&d&&o.jsx(In,{variant:"destructive",title:"Item deleted",children:o.jsxs(In.Message,{children:["This item was deleted at version v",d.datasetVersion]})}),!f&&M&&p&&o.jsx(In,{variant:"warning",title:"Previous version",action:o.jsxs(In.Button,{onClick:z,children:[o.jsx(blt,{})," Return to the latest version"]}),children:o.jsxs(In.Message,{children:["Viewing version v",p.datasetVersion]})}),y?o.jsx(w8t,{inputValue:w,setInputValue:S,groundTruthValue:k,setGroundTruthValue:_,metadataValue:C,setMetadataValue:E,trajectoryValue:j,setTrajectoryValue:N,toolMocksValue:I,setToolMocksValue:P,requestContextValue:$,setRequestContextValue:F,validationErrors:null,onSave:R,onCancel:U,isSaving:l.isPending}):te?o.jsx(wTe,{item:te,Link:n}):o.jsx("div",{className:"text-neutral4 text-sm",children:"Item data not available"})]}),!y&&o.jsx(Gr,{children:o.jsx(tts,{datasetId:e,itemId:t,onClose:()=>{},onVersionSelect:B,onCompareVersionsClick:J=>{r(`/datasets/${e}/items/${t}/versions?ids=${J.join(",")}`)},activeVersion:p?.datasetVersion??null})})]})]})})}),o.jsx(jt,{open:W,onOpenChange:L,children:o.jsxs(jt.Content,{children:[o.jsxs(jt.Header,{children:[o.jsx(jt.Title,{children:"Delete Item"}),o.jsx(jt.Description,{children:"Are you sure you want to delete this item? This action cannot be undone."})]}),o.jsxs(jt.Footer,{children:[o.jsx(jt.Cancel,{children:"Cancel"}),o.jsx(jt.Action,{onClick:Z,children:c.isPending?"Deleting...":"Delete"})]})]})})]})}function AQe(e){return JSON.stringify({input:e.input??null,groundTruth:e.groundTruth??null,metadata:e.metadata??null},null,2)}function bts(){const{datasetId:e}=dr(),[t,n]=ji(),r=t.get("items")?.split(",").filter(Boolean)??[],{data:s,error:a}=Ux(e??""),{Link:i}=yn(),[l,c]=v.useState(!1),{data:u}=AU(e??"",r[0]??""),{data:d}=AU(e??"",r[1]??"");return a&&gs(a)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})})}):a&&ys(a)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"datasets"})})}):!e||r.length<2?o.jsx(cs,{children:o.jsx(xy,{children:o.jsx("div",{className:"text-neutral4 text-center py-8",children:o.jsx("p",{children:"Select at least two items to compare."})})})}):o.jsxs(cs,{children:[o.jsx(Ty,{owner:"dataset-items-compare",children:o.jsxs(de,{as:ci,to:`/datasets/${e}`,variant:"outline",children:[o.jsx(Ec,{}),"Back to Dataset"]})}),o.jsx("div",{className:"h-full overflow-hidden px-[3vw] pb-4",children:o.jsxs("div",{className:K("grid gap-6 max-w-[140rem] mx-auto grid-rows-[auto_1fr] h-full",{"grid-rows-[auto_auto_1fr]":l}),children:[o.jsxs(ua,{children:[o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{children:[o.jsx(Qw,{}),"Compare Dataset Items"]}),o.jsx(ua.Description,{children:o.jsxs(Nl,{children:["Comparing ",r.length," items of"," ",o.jsx(ci,{to:`/datasets/${e}`,className:"text-info1 hover:underline",children:s?.name||e?.slice(0,8)})]})})]}),o.jsx(ua.Column,{children:o.jsx($r,{children:o.jsx(de,{variant:"primary",onClick:()=>c(f=>!f),children:l?o.jsxs(o.Fragment,{children:[o.jsx(Ilt,{})," Default View"]}):o.jsxs(o.Fragment,{children:[o.jsx(Ccn,{})," Diff View"]})})})})]}),o.jsx(ry,{className:"grid-cols-[1fr_3vw_1fr]",children:r.map((f,p)=>o.jsxs(v.Fragment,{children:[o.jsx(xts,{datasetId:e,itemId:f,Link:i,idx:p,itemIds:r,showContent:!l,onItemChange:h=>{const m=[...r];m[p]=h,n({items:m.join(",")})}}),p==0&&o.jsx("div",{className:K("bg-surface5 w-[3px] shrink-0 mx-[1.5vw]")})]},f))}),l&&u&&d&&o.jsx(E_e,{codeA:AQe(u),codeB:AQe(d)})]})})]})}function xts({datasetId:e,itemId:t,Link:n,idx:r,itemIds:s,onItemChange:a,showContent:i=!0}){const{data:l,isLoading:c}=AU(e,t),{data:u}=_1(e),d=new Set(s.filter((p,h)=>h!==r)),f=(u??[]).map(p=>({value:p.id,label:p.id,disabled:d.has(p.id)}));return o.jsxs(Gr,{children:[o.jsxs(Gr.Toolbar,{className:"flex gap-4",children:[o.jsxs(xa,{name:`compare-item-${r}`,value:t,onValueChange:a,children:[o.jsx(Sa,{"aria-label":"Item",children:o.jsx(wa,{placeholder:"Select item"})}),o.jsx(ka,{children:f.map(p=>o.jsx(qr,{value:p.value,disabled:p.disabled,children:p.label},p.value))})]}),o.jsxs(de,{as:n,to:`/datasets/${e}/items/${t}`,children:[o.jsx(o_,{}),"Versions"]})]}),i&&o.jsx(Gr.Content,{children:c?o.jsx("div",{className:"text-neutral4 text-sm",children:"Loading..."}):l?o.jsxs(o.Fragment,{children:[o.jsx(Aes,{item:l}),o.jsx(wTe,{item:l,Link:n})]}):o.jsxs("div",{className:"text-neutral4 text-sm",children:["Item ",t.slice(0,8)," not found"]})})]})}function RQe(e){return JSON.stringify({input:e.input??null,groundTruth:e.groundTruth??null,metadata:e.metadata??null},null,2)}function wts(){const{datasetId:e,itemId:t}=dr(),[n,r]=ji(),[s,a]=v.useState(!1),i=n.get("ids")?.split(",").map(Number).filter(h=>!isNaN(h)&&h>0)??[],{data:l,error:c}=Ux(e??""),{Link:u}=yn(),{data:d}=vTe(e??"",t??""),{data:f}=Pve(e??"",t??"",i[0]??0,l?.version),{data:p}=Pve(e??"",t??"",i[1]??0,l?.version);return c&&gs(c)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})})}):c&&ys(c)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"datasets"})})}):!e||!t||i.length<2?o.jsx(cs,{children:o.jsx(xy,{children:o.jsx("div",{className:"text-neutral4 text-center py-8",children:o.jsx("p",{children:"Select at least two versions to compare."})})})}):o.jsxs(cs,{children:[o.jsx(Ty,{owner:"dataset-item-versions-compare",children:o.jsxs(de,{as:ci,to:`/datasets/${e}/items/${t}`,variant:"outline",children:[o.jsx(Ec,{}),"Back to Item"]})}),o.jsx("div",{className:"h-full overflow-hidden px-[3vw] pb-4",children:o.jsxs("div",{className:K("grid gap-6 max-w-[140rem] mx-auto grid-rows-[auto_1fr] h-full",{"grid-rows-[auto_auto_1fr]":s}),children:[o.jsxs(ua,{children:[o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{children:[o.jsx(Qw,{}),"Compare Dataset Item Versions"]}),o.jsx(ua.Description,{children:o.jsxs(Nl,{children:["Comparing ",i.length," versions of"," ",o.jsx(ci,{to:`/datasets/${e}/items/${t}`,className:"text-info1 hover:underline",children:t})]})})]}),o.jsx(ua.Column,{children:o.jsx($r,{children:o.jsx(de,{variant:"primary",onClick:()=>a(h=>!h),children:s?o.jsxs(o.Fragment,{children:[o.jsx(Ilt,{})," Default View"]}):o.jsxs(o.Fragment,{children:[o.jsx(dun,{})," Diff View"]})})})})]}),o.jsx(ry,{className:"grid-cols-[1fr_3vw_1fr]",children:i.map((h,m)=>o.jsxs(v.Fragment,{children:[o.jsx(Sts,{datasetId:e,itemId:t,datasetVersion:h,latestVersion:l?.version,allVersions:d??[],versionNumbers:i,Link:u,idx:m,showContent:!s,onVersionChange:g=>{const y=[...i];y[m]=g,r({ids:y.join(",")})}}),m===0&&o.jsx("div",{className:K("bg-surface5 w-[3px] shrink-0 mx-[1.5vw]")})]},h))}),s&&f&&p&&o.jsx(E_e,{codeA:RQe(f),codeB:RQe(p)})]})})]})}function Sts({datasetId:e,itemId:t,datasetVersion:n,latestVersion:r,allVersions:s,versionNumbers:a,Link:i,idx:l,showContent:c=!0,onVersionChange:u}){const{data:d,isLoading:f}=Pve(e,t,n,r),p=new Set(a.filter((g,y)=>y!==l)),h=s.map(g=>{const y=typeof g.updatedAt=="string"?new Date(g.updatedAt):g.updatedAt;return{value:String(g.datasetVersion),label:o.jsxs(o.Fragment,{children:[o.jsxs("b",{children:["v. ",g.datasetVersion]})," - ",er(y,"MMM d, yyyy h:mm a"),g.isLatest?o.jsx(Xs,{color:"blue",size:"small",children:"Latest"}):null]}),disabled:p.has(g.datasetVersion)}}),m=d?{id:d.id,datasetId:e,datasetVersion:d.datasetVersion,input:d.input,groundTruth:d.groundTruth,metadata:d.metadata,createdAt:d.createdAt,updatedAt:d.updatedAt}:null;return o.jsxs(Gr,{children:[o.jsxs(Gr.Toolbar,{className:"grid gap-4 grid-cols-[auto_1fr]",children:[o.jsx(o_,{className:"w-6 h-6 opacity-50"}),o.jsxs(xa,{name:`compare-version-${l}`,value:String(n),onValueChange:g=>u(Number(g)),children:[o.jsx(Sa,{"aria-label":"Version",className:"w-full",children:o.jsx(wa,{placeholder:"Select version"})}),o.jsx(ka,{children:h.map(g=>o.jsx(qr,{value:g.value,disabled:g.disabled,children:g.label},g.value))})]})]}),c&&o.jsx(Gr.Content,{children:f?o.jsx("div",{className:"text-neutral4 text-sm",children:"Loading..."}):!d||!m?o.jsxs("div",{className:"text-neutral4 text-sm",children:["Version ",n," not found"]}):o.jsx(wTe,{item:m,Link:i})})]})}function kts(){const{datasetId:e}=dr(),[t]=ji(),n=t.get("ids")?.split(",").map(Number).filter(g=>!isNaN(g)&&g>0)??[],r=bs(),{data:s,error:a}=Ux(e??""),i=_1(e??"",void 0,n[0]??null),l=_1(e??"",void 0,n[1]??null),c=v.useMemo(()=>i.data??[],[i.data]),u=v.useMemo(()=>l.data??[],[l.data]),d=v.useMemo(()=>{const g=new Map;for(const y of[...c,...u])g.has(y.id)||g.set(y.id,{id:y.id,createdAt:new Date(y.createdAt)});return[...g.values()].sort((y,b)=>b.createdAt.getTime()-y.createdAt.getTime())},[c,u]),f=v.useMemo(()=>new Map(c.map(g=>[g.id,g])),[c]),p=v.useMemo(()=>new Map(u.map(g=>[g.id,g])),[u]);if(a&&gs(a))return o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})})});if(a&&ys(a))return o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"datasets"})})});if(!e||n.length<2)return o.jsx(cs,{children:o.jsx(xy,{children:o.jsx("div",{className:"text-neutral4 text-center py-8",children:o.jsx("p",{children:"Select at least two versions to compare."})})})});const h=(g,y,b)=>{r(`/datasets/${e}/items/${g}/versions?ids=${y?.datasetVersion??""},${b?.datasetVersion??""}`)},m=(g,y)=>{r(`/datasets/${e}/versions?ids=${g},${y}`,{replace:!0})};return o.jsx(cs,{children:o.jsx("div",{className:"h-full overflow-hidden px-[3vw] pb-4",children:o.jsxs("div",{className:"grid gap-6 max-w-[140rem] mx-auto grid-rows-[auto_1fr] h-full",children:[o.jsxs(ua,{children:[o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{children:[o.jsx(Zdn,{})," Compare Dataset Versions"]}),o.jsx(ua.Description,{children:o.jsxs(Nl,{children:[o.jsx(o_,{})," Comparing ",n.length," versions of"," ",s?.name||e?.slice(0,8)]})})]}),o.jsx(ua.Column,{children:o.jsxs(de,{as:ci,to:`/datasets/${e}`,children:[o.jsx(Ec,{}),"Back to Dataset"]})})]}),o.jsx(ry,{children:o.jsxs(Gr,{children:[o.jsx(sts,{datasetId:e,versionA:String(n[0]),versionB:String(n[1]),onVersionChange:m}),o.jsx(lts,{datasetId:e,versionA:n[0],versionB:n[1],allItems:d,itemsAMap:f,itemsBMap:p,onItemClick:h})]})})]})})})}function $ve({children:e,className:t}){return o.jsx("div",{className:K("flex flex-wrap gap-8",t),children:e})}function Ots(e){if(!e||e.length<2)return null;const t=[...e].sort((i,l)=>new Date(i.createdAt).getTime()-new Date(l.createdAt).getTime()),n=Math.floor(t.length/2),r=n,s=t.length-n;if(r===0)return null;const a=(s-r)/r*100;return{changePct:Math.round(a*10)/10,prevValue:String(r)}}function _ts({scorers:e,datasets:t,experiments:n,avgScore:r,prevAvgScore:s,totalNeedsReview:a,isLoadingScorers:i,isLoadingDatasets:l,isLoadingExperiments:c,isLoadingScores:u,isLoadingReview:d}){const f=e?Object.keys(e).length:void 0,p=t?.length,h=n?.length,m=r!=null&&s!=null&&s!==0?{changePct:Math.round((r-s)/s*100*10)/10,prevValue:String(s)}:null,g=Ots(n);return o.jsxs(o.Fragment,{children:[o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:"Total Scorers"}),i?o.jsx(Kr.Loading,{}):f!=null?o.jsxs(o.Fragment,{children:[o.jsx(Kr.Value,{children:String(f)}),o.jsx(Kr.NoChange,{message:"Static count"})]}):o.jsx(Kr.NoData,{})]}),o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:"Total Datasets"}),l?o.jsx(Kr.Loading,{}):p!=null?o.jsxs(o.Fragment,{children:[o.jsx(Kr.Value,{children:String(p)}),o.jsx(Kr.NoChange,{message:"Static count"})]}):o.jsx(Kr.NoData,{})]}),o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:"Avg Score"}),u?o.jsx(Kr.Loading,{}):r!=null?o.jsxs(o.Fragment,{children:[o.jsx(Kr.Value,{children:String(r)}),m?o.jsx(Kr.Change,{changePct:m.changePct,prevValue:m.prevValue}):o.jsx(Kr.NoChange,{})]}):o.jsx(Kr.NoData,{})]}),o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:"Total Experiments"}),c?o.jsx(Kr.Loading,{}):h!=null?o.jsxs(o.Fragment,{children:[o.jsx(Kr.Value,{children:String(h)}),g?o.jsx(Kr.Change,{changePct:g.changePct,prevValue:g.prevValue}):o.jsx(Kr.NoChange,{})]}):o.jsx(Kr.NoData,{})]}),o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:"Needs Review"}),d?o.jsx(Kr.Loading,{}):a!=null?o.jsxs(o.Fragment,{children:[o.jsx(Kr.Value,{children:String(a)}),a>0?o.jsx(Kr.NoChange,{message:"items pending review"}):o.jsx(Kr.NoChange,{message:"All caught up"})]}):o.jsx(Kr.NoData,{})]})]})}const PQe="auto 1fr auto auto auto auto auto auto auto";function Cts(e){return e?(typeof e=="string"?new Date(e):e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}):"—"}const Ets={completed:"success",running:"warning",failed:"error",pending:"neutral"};function jts({experiments:e,datasets:t,reviewByExperiment:n,isLoading:r,search:s="",statusFilter:a="all",datasetFilter:i="all"}){const{paths:l,Link:c}=yn(),u=v.useMemo(()=>{const p=new Map;return t?.forEach(h=>p.set(h.id,h.name)),p},[t]),d=v.useMemo(()=>[...e].sort((p,h)=>{const m=p.createdAt?new Date(p.createdAt).getTime():0;return(h.createdAt?new Date(h.createdAt).getTime():0)-m}),[e]),f=v.useMemo(()=>{const p=s.toLowerCase();return d.filter(h=>{const m=h.datasetId?u.get(h.datasetId)??"":"",g=!p||h.id.toLowerCase().includes(p)||m.toLowerCase().includes(p)||(h.targetId??"").toLowerCase().includes(p),y=a==="all"||h.status===a,b=i==="all"||h.datasetId===i;return g&&y&&b})},[d,s,u,a,i]);return r?o.jsx(el,{columns:PQe}):o.jsxs(me,{columns:PQe,variant:"striped",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Experiment"}),o.jsx(me.TopCell,{children:"Dataset"}),o.jsx(me.TopCell,{children:"Target"}),o.jsx(me.TopCell,{children:"Status"}),o.jsx(me.TopCell,{className:"text-center",children:"Items"}),o.jsx(me.TopCell,{className:"text-center",children:"Succeeded"}),o.jsx(me.TopCell,{className:"text-center",children:"Failed"}),o.jsx(me.TopCell,{className:"text-center",children:"Review"}),o.jsx(me.TopCell,{children:"Date"})]}),f.map(p=>{const h=p.datasetId?u.get(p.datasetId)??p.datasetId.slice(0,8):"—",m=p.status??"pending",g=p.succeededCount??0,y=p.failedCount??0,b=p.totalItems??0,w=b>0?Math.round(g/b*100):0;return o.jsxs(me.RowLink,{to:l.experimentLink(p.id),LinkComponent:c,children:[o.jsx(me.NameCell,{className:"font-mono",children:p.id.slice(0,8)}),o.jsx(me.TextCell,{children:h}),o.jsx(me.Cell,{children:o.jsxs("span",{className:"truncate",children:[p.targetType," ",p.targetId]})}),o.jsx(me.Cell,{children:o.jsx(dg,{variant:Ets[m]??"neutral",withDot:!0,children:m})}),o.jsx(me.TextCell,{className:"text-center",children:b}),o.jsx(me.TextCell,{className:"text-center",children:o.jsxs("span",{className:g>0?"text-accent1":"",children:[g," (",w,"%)"]})}),o.jsx(me.TextCell,{className:"text-center",children:o.jsx("span",{className:y>0?"text-accent2":"",children:y})}),o.jsx(me.Cell,{className:"text-center",children:(()=>{const S=n?.get(p.id);if(!S)return o.jsx("span",{className:"text-neutral2",children:"—"});const k=S.needsReview+S.complete;return k===0?o.jsx("span",{className:"text-neutral2",children:"—"}):S.needsReview>0?o.jsxs(Xs,{size:"small",color:"yellow",children:[S.needsReview," pending"]}):o.jsxs(Xs,{size:"small",color:"green",children:[S.complete,"/",k," reviewed"]})})()}),o.jsx(me.TextCell,{children:Cts(p.createdAt)})]},p.id)})]})}const Tts=[{value:"all",label:"All statuses"},{value:"completed",label:"Completed"},{value:"running",label:"Running"},{value:"failed",label:"Failed"},{value:"pending",label:"Pending"}];function Nts(e){return[{value:"all",label:"All datasets"},...(e??[]).map(t=>({value:t.id,label:t.name}))]}const K8={completed:"#22c55e",running:"#facc15",pending:"#fb923c",failed:"#f87171"},Its=[{label:"Completed",color:K8.completed},{label:"Running",color:K8.running},{label:"Pending",color:K8.pending},{label:"Failed",color:K8.failed}];function Ats({experiments:e,datasets:t,isLoading:n,isError:r}){const{data:s,maxVal:a}=v.useMemo(()=>{if(!e||e.length===0)return{data:[],maxVal:0};const l=new Map;if(t)for(const f of t)l.set(f.id,f.name);const c=new Map;for(const f of e){const p=f.datasetId??"unknown";c.has(p)||c.set(p,{completed:0,running:0,pending:0,failed:0});const h=c.get(p),m=f.status;m in h&&h[m]++}let u=0;return{data:Array.from(c.entries()).map(([f,p])=>{const h=p.completed+p.running+p.pending+p.failed;return h>u&&(u=h),{name:l.get(f)??f.slice(0,12),values:[p.completed,p.running,p.pending,p.failed]}}),maxVal:u}},[e,t]),i=s.length>0;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Experiments by Dataset",description:"Experiment status breakdown per dataset."}),i&&o.jsx(Ut.Summary,{value:String(e?.length??0),label:"Total experiments"})]}),n?o.jsx(Ut.Loading,{}):r?o.jsx(Ut.Error,{message:"Failed to load experiments data"}):o.jsx(Ut.Content,{children:i?o.jsx(oN,{data:s,segments:Its,maxVal:a,fmt:l=>String(l)}):o.jsx(Ut.NoData,{message:"No experiments have been run yet"})})]})}const Rts=()=>o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Lr,{iconSlot:o.jsx(xf,{}),titleSlot:"No Experiments yet",descriptionSlot:o.jsxs(o.Fragment,{children:["Run an experiment from a dataset to evaluate ",o.jsx("br",{}),"your agents and workflows."]}),actionSlot:o.jsx("div",{className:"flex flex-col items-center gap-2",children:o.jsxs(de,{variant:"ghost",as:"a",href:"https://mastra.ai/en/docs/evals/datasets/running-experiments",target:"_blank",rel:"noopener noreferrer",children:["Experiments Documentation ",o.jsx(Pa,{})]})})})});function Pts({search:e,onSearchChange:t,statusFilter:n,onStatusFilterChange:r,datasetFilter:s,onDatasetFilterChange:a,datasetOptions:i,onReset:l,hasActiveFilters:c}){return o.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[o.jsx(Of,{label:"Search experiments",placeholder:"Filter by experiment, dataset, or target",value:e,onSearch:t}),o.jsxs($r,{children:[o.jsx(xc,{label:"Status",labelIsHidden:!0,name:"filter-status",options:[...Tts],value:n,onValueChange:r,className:"whitespace-nowrap"}),o.jsx(xc,{label:"Dataset",labelIsHidden:!0,name:"filter-dataset",options:i,value:s,onValueChange:a,className:"whitespace-nowrap"}),l&&c&&o.jsxs(de,{onClick:l,size:"sm",variant:"default",children:[o.jsx(vs,{className:"size-3"})," Reset"]})]})]})}function $ts(){const{data:e,isLoading:t,error:n}=th(),{data:r,isLoading:s,error:a}=Rg(),{data:i,isLoading:l,error:c}=WZ(),{data:u,isLoading:d,isError:f,error:p}=IWr(),{data:h,isLoading:m,isError:g,error:y}=OTe(),b=r?.datasets,w=i?.experiments,S=v.useMemo(()=>fts(h),[h]),k=n||a||c||p||y;return k&&gs(k)?o.jsx(lr,{children:o.jsx(Vs,{})}):k&&ys(k)?o.jsx(lr,{children:o.jsx(Ds,{resource:"evaluation"})}):k?o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load evaluation data",message:k.message})}):o.jsx(Lt,{width:"wide",height:"full",children:o.jsxs("div",{className:"flex flex-col gap-6",children:[o.jsx($ve,{children:o.jsx(_ts,{scorers:e,datasets:b,experiments:w,avgScore:u?.avgScore??null,prevAvgScore:u?.prevAvgScore??null,totalNeedsReview:S.needsReview,isLoadingScorers:t,isLoadingDatasets:s,isLoadingExperiments:l,isLoadingScores:d,isLoadingReview:m})}),o.jsx(DHr,{summaryData:u?.summaryData??[],overTimeData:u?.overTimeData??[],scorerNames:u?.scorerNames??[],avgScore:u?.avgScore??null,isLoading:d,isError:f}),o.jsxs("div",{className:"grid grid-cols-1 gap-6 lg:grid-cols-2",children:[o.jsx(pJr,{experiments:w,isLoading:l,isError:!!c}),o.jsx(Ats,{experiments:w,datasets:b,isLoading:l,isError:!!c})]}),o.jsx(uts,{reviewSummary:h,experiments:w,datasets:b,isLoading:m,isError:!!g})]})})}function Mts(){const[e,t]=v.useState(""),[n,r]=v.useState("all"),[s,a]=v.useState("all"),{data:i,isLoading:l,error:c}=Rg(),{data:u,isLoading:d,error:f}=WZ(),{data:p}=OTe(),h=v.useMemo(()=>i?.datasets??[],[i?.datasets]),m=v.useMemo(()=>u?.experiments??[],[u?.experiments]),g=v.useMemo(()=>Nts(h),[h]),y=v.useMemo(()=>_8t(p),[p]),b=l||d,w=f||c;if(w&&gs(w))return o.jsx(lr,{children:o.jsx(Vs,{})});if(f&&ys(f))return o.jsx(lr,{children:o.jsx(Ds,{resource:"experiments"})});if(c&&ys(c))return o.jsx(lr,{children:o.jsx(Ds,{resource:"datasets"})});if(w)return o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load experiments",message:w.message})});if(m.length===0&&!b)return o.jsx(lr,{children:o.jsx(Rts,{})});const S=n!=="all"||s!=="all"||e!=="",k=()=>{t(""),r("all"),a("all")};return o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsx(Pts,{search:e,onSearchChange:t,statusFilter:n,onStatusFilterChange:r,datasetFilter:s,onDatasetFilterChange:a,datasetOptions:g,onReset:k,hasActiveFilters:S})}),o.jsx(jts,{experiments:m,datasets:h,reviewByExperiment:y,isLoading:b,search:e,statusFilter:n,datasetFilter:s})]})}function J8({children:e}){return o.jsxs(Lt,{height:"full",children:[o.jsx("div",{}),o.jsx(Lt.MainArea,{isCentered:!0,children:e})]})}function Dts(){const{experimentId:e}=dr(),{data:t,isLoading:n}=WZ(),s=t?.experiments?.find(h=>h.id===e)?.datasetId??"",{data:a,isLoading:i,error:l}=IU(s,e??""),{data:c,isLoading:u,setEndOfListElement:d,isFetchingNextPage:f,hasNextPage:p}=BZ({datasetId:s,experimentId:e??"",experimentStatus:a?.status});return!e||n||i?null:l&&gs(l)?o.jsx(J8,{children:o.jsx(Vs,{})}):l&&ys(l)?o.jsx(J8,{children:o.jsx(Ds,{resource:"datasets"})}):l&&H1e(l)||!n&&!s||!i&&!l&&!a?o.jsx(J8,{children:o.jsx(Lr,{iconSlot:o.jsx(Wye,{}),titleSlot:"Experiment not found",descriptionSlot:`No experiment with id "${e}".`,actionSlot:o.jsxs(de,{as:ci,to:"/experiments",children:[o.jsx(Ec,{}),"Back to Experiments"]})})}):l?o.jsx(J8,{children:o.jsx(Fi,{title:"Failed to load experiment",message:l instanceof Error?l.message:"An unexpected error occurred. Please try again."})}):o.jsxs(Lt,{height:"full",children:[o.jsx(C8t,{experiment:a}),o.jsx(Lt.MainArea,{children:o.jsx(O8t,{experimentId:e,datasetId:s,experimentStatus:a.status,results:c??[],isLoading:u,setEndOfListElement:d,isFetchingNextPage:f,hasNextPage:p})})]})}function Lts({connection:e,isAdmin:t,disconnectPending:n,onDisconnect:r}){return o.jsxs("li",{className:"flex items-center justify-between border-b py-2",children:[o.jsxs("div",{children:[o.jsx("div",{className:"font-mono text-xs",children:e.connectionId}),o.jsxs("div",{className:"text-xs text-gray-500",children:[e.label??"(no label)"," · ",e.status,e.scope?` · ${e.scope}`:"",t&&e.authorId?` · author: ${e.authorId}`:""]})]}),o.jsx("button",{type:"button",className:"text-red-600 underline disabled:opacity-50",onClick:r,disabled:n,children:"Disconnect"})]})}function E8t({connections:e,isAdmin:t,disconnectPending:n,onDisconnect:r}){return o.jsx("ul",{className:"space-y-1",children:e.map(s=>o.jsx(Lts,{connection:s,isAdmin:t,disconnectPending:n,onDisconnect:()=>r(s.connectionId)},s.connectionId))})}function Fts({groups:e,isAdmin:t,disconnectPending:n,onDisconnect:r}){return o.jsx("div",{className:"space-y-4",children:e.map(([s,a])=>o.jsxs("div",{children:[o.jsx("h3",{className:"text-sm font-semibold text-gray-700","data-testid":`integration-author-group-${s}`,children:s==="shared"?"Shared":`Owned by ${s}`}),o.jsx(E8t,{connections:a,isAdmin:t,disconnectPending:n,onDisconnect:r})]},s))})}function zts({providerId:e,toolkit:t,connections:n,groupedByAuthor:r,isAdmin:s,isLoading:a,error:i,disconnectPending:l,disconnectError:c,onDisconnect:u}){return o.jsxs("div",{className:"space-y-2 border rounded p-4",children:[o.jsx("h2",{className:"text-lg font-semibold",children:"Existing connections"}),!e||!t?o.jsx("p",{className:"text-gray-500",children:"Pick a provider and toolkit to list connections."}):a?o.jsx("p",{className:"text-gray-500",children:"Loading…"}):i?o.jsx("p",{className:"text-red-600",children:String(i)}):n.length===0?o.jsx("p",{className:"text-gray-500",children:"No connections."}):r?o.jsx(Fts,{groups:r,isAdmin:s,disconnectPending:l,onDisconnect:u}):o.jsx(E8t,{connections:n,isAdmin:s,disconnectPending:l,onDisconnect:u}),c?o.jsx("p",{className:"text-red-600",children:String(c)}):null]})}function Bts({providers:e,toolkits:t,providerId:n,toolkit:r,label:s,providersLoading:a,providersError:i,toolkitsLoading:l,toolkitsError:c,authorizePending:u,authorizeError:d,authorizedConnection:f,onProviderChange:p,onToolkitChange:h,onLabelChange:m,onConnect:g}){return o.jsxs("div",{className:"space-y-4 border rounded p-4",children:[o.jsxs("div",{className:"space-y-1",children:[o.jsx("label",{className:"block font-medium",htmlFor:"provider-select",children:"Provider"}),o.jsxs("select",{id:"provider-select",className:"border rounded px-2 py-1 w-full",value:n,onChange:y=>p(y.target.value),disabled:a,children:[o.jsx("option",{value:"",children:"— select provider —"}),e.map(y=>o.jsxs("option",{value:y.id,children:[y.displayName??y.name," (",y.id,")"]},y.id))]}),a&&o.jsx("span",{className:"text-gray-500",children:"Loading providers…"}),i?o.jsx("span",{className:"text-red-600",children:String(i)}):null]}),o.jsxs("div",{className:"space-y-1",children:[o.jsx("label",{className:"block font-medium",htmlFor:"toolkit-select",children:"Toolkit"}),o.jsxs("select",{id:"toolkit-select",className:"border rounded px-2 py-1 w-full",value:r,onChange:y=>h(y.target.value),disabled:!n||l,children:[o.jsx("option",{value:"",children:"— select toolkit —"}),t.map(y=>o.jsxs("option",{value:y.slug,children:[y.name," (",y.slug,")"]},y.slug))]}),l&&o.jsx("span",{className:"text-gray-500",children:"Loading toolkits…"}),c?o.jsx("span",{className:"text-red-600",children:String(c)}):null]}),o.jsxs("div",{className:"space-y-1",children:[o.jsx("label",{className:"block font-medium",htmlFor:"label-input",children:"Label (optional)"}),o.jsx("input",{id:"label-input",type:"text",className:"border rounded px-2 py-1 w-full",placeholder:"My personal Gmail",value:s,onChange:y=>m(y.target.value),disabled:!n||!r})]}),o.jsx("button",{type:"button",className:"bg-blue-600 text-white rounded px-4 py-2 disabled:opacity-50",onClick:g,disabled:!n||!r||u,children:u?"Authorizing…":"Connect"}),d?o.jsx("p",{className:"text-red-600",children:String(d)}):null,f&&o.jsxs("p",{className:"text-green-700",children:["Authorized: ",f.connectionId," (status: ",f.status,")"]})]})}const $Qe=e=>e.authorId?.trim()||"shared",Uts=(e,t)=>{if(!t||new Set(e.map($Qe)).size<=1)return null;const r=new Map;for(const a of e){const i=$Qe(a);r.set(i,[...r.get(i)??[],a])}const s=Array.from(r.entries());return s.sort(([a],[i])=>a==="shared"?1:i==="shared"?-1:a.localeCompare(i)),s},qts=["*","tool-providers:*","tool-providers:admin"];function Vts(){const{data:e}=wm();return e?.permissions?.some(t=>qts.includes(t))??!1}function Hts(){const[e,t]=v.useState(""),[n,r]=v.useState(""),[s,a]=v.useState(""),i=dI(),l=hW(e||null),c=xAt(e||null,n||null),u=bAt(),d=gAt(),f=Vts(),p=i.data?.providers??[],h=l.data?.data??[],m=v.useMemo(()=>c.data?.items??[],[c.data?.items]),g=v.useMemo(()=>Uts(m,f),[m,f]),y=S=>{t(S),r("")},b=()=>{!e||!n||u.mutate({providerId:e,toolkit:n,label:s.trim()||null},{onSuccess:()=>{a(""),c.refetch()}})},w=S=>{d.mutate({providerId:e,connectionId:S})};return o.jsxs("div",{className:"p-6 max-w-3xl space-y-6 text-sm",children:[o.jsx("h1",{className:"text-2xl font-semibold",children:"Integrations"}),o.jsx("p",{className:"text-gray-500",children:"Minimal page to verify the ToolProvider backend. Pick a provider and toolkit, then connect."}),o.jsx(Bts,{providers:p,toolkits:h,providerId:e,toolkit:n,label:s,providersLoading:i.isLoading,providersError:i.error,toolkitsLoading:l.isLoading,toolkitsError:l.error,authorizePending:u.isPending,authorizeError:u.error,authorizedConnection:u.data,onProviderChange:y,onToolkitChange:r,onLabelChange:a,onConnect:b}),o.jsx(zts,{providerId:e,toolkit:n,connections:m,groupedByAuthor:g,isAdmin:f,isLoading:c.isLoading,error:c.error,disconnectPending:d.isPending,disconnectError:d.error,onDisconnect:w})]})}function Wts({title:e,description:t,errorBanner:n,children:r}){return o.jsx("div",{"data-testid":"login-page",className:"flex min-h-screen items-center justify-center bg-surface1",children:o.jsxs("div",{className:"w-full max-w-sm space-y-6",children:[o.jsxs("div",{className:"flex flex-col items-center space-y-2",children:[o.jsx(Gh,{className:"h-10 w-10"}),o.jsx("h1",{className:"text-xl font-semibold text-neutral6",children:e})]}),t,n,r]})})}function j8t({redirectUri:e,onSuccess:t,initialMode:n="signin",errorMessage:r}){const{data:s,isLoading:a}=rc(),{mutate:i,isPending:l,error:c}=C1r(),{mutate:u,isPending:d,error:f}=j1r(),{mutate:p,isPending:h}=qNt(),[m,g]=v.useState(n),[y,b]=v.useState(""),[w,S]=v.useState(""),[k,_]=v.useState("");if(a)return o.jsx("div",{className:"flex min-h-screen items-center justify-center bg-surface1",children:o.jsx("div",{className:"text-neutral3",children:"Loading..."})});if(!s?.enabled||!s?.login)return o.jsx("div",{className:"flex min-h-screen items-center justify-center bg-surface1",children:o.jsx("div",{className:"text-neutral3",children:"Authentication is not configured"})});const{login:C}=s,E=C.type==="sso"||C.type==="both",j=C.type==="credentials"||C.type==="both",N=C.sso,I=C.signUpEnabled!==!1,P=m==="signin"||!I,$=P?l:d,F=P?c:f,D=()=>{t?t():e?window.location.href=e:window.location.href="/"},V=M=>{M.preventDefault(),P?i({email:w,password:k},{onSuccess:D}):u({email:w,password:k,name:y||void 0},{onSuccess:D})},W=()=>{p({redirectUri:e},{onSuccess:M=>{window.location.href=M.url}})},L=()=>{g(P?"signup":"signin")},B=C.description?o.jsxs("div",{className:"flex items-start gap-2.5 rounded-md border border-border1 bg-surface1 p-3",children:[o.jsx(pf,{className:"mt-0.5 h-4 w-4 shrink-0 text-neutral4"}),o.jsx("p",{className:"text-sm text-neutral3",children:C.description})]}):null,z=r?o.jsx("div",{className:"rounded-md bg-red-500/10 p-3 text-sm text-red-400",children:r}):null;return o.jsxs(Wts,{title:P?"Sign in to Mastra Studio":"Create your account",description:B,errorBanner:z,children:[j&&o.jsxs("form",{onSubmit:V,className:"space-y-4",children:[!P&&o.jsxs("div",{className:"space-y-2",children:[o.jsx("label",{htmlFor:"name",className:"block text-sm text-neutral4",children:"Name"}),o.jsx(kn,{id:"name",type:"text",value:y,onChange:M=>b(M.target.value),placeholder:"Your name",variant:"default",size:"lg"})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx("label",{htmlFor:"email",className:"block text-sm text-neutral4",children:"Email"}),o.jsx(kn,{id:"email",type:"email",value:w,onChange:M=>S(M.target.value),placeholder:"you@example.com",required:!0,variant:"default",size:"lg"})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx("label",{htmlFor:"password",className:"block text-sm text-neutral4",children:"Password"}),o.jsx(kn,{id:"password",type:"password",value:k,onChange:M=>_(M.target.value),placeholder:P?"Enter your password":"Create a password",required:!0,variant:"default",size:"lg"})]}),F&&o.jsx("div",{className:"rounded-md bg-red-500/10 p-3 text-sm text-red-400",children:F.message}),o.jsx(de,{type:"submit",disabled:$,className:"w-full",size:"lg",children:$?P?"Signing in...":"Creating account...":P?"Sign in":"Create account"}),I&&o.jsxs("div",{className:"text-center text-sm",children:[o.jsx("span",{className:"text-neutral3",children:P?"Don't have an account? ":"Already have an account? "}),o.jsx("button",{type:"button",onClick:L,className:"text-neutral6 hover:underline",children:P?"Sign up":"Sign in"})]})]}),E&&j&&o.jsxs("div",{className:"relative",children:[o.jsx("div",{className:"absolute inset-0 flex items-center",children:o.jsx("div",{className:"w-full border-t border-border1"})}),o.jsx("div",{className:"relative flex justify-center text-sm",children:o.jsx("span",{className:"bg-surface1 px-2 text-neutral3",children:"or continue with"})})]}),E&&N&&o.jsxs(de,{onClick:W,disabled:h,className:"w-full",size:"lg",variant:"outline",children:[N.icon&&o.jsx("span",{className:"mr-2",children:N.icon}),h?"Redirecting...":N.text||"Sign in"]})]})}function Zts(){const[e]=ji(),t=bs(),n=e.get("redirect")||"/",s=e.get("mode")==="signup"?"signup":"signin",a=e.get("error_description")||e.get("error")||null,i=()=>{n.startsWith("http")?window.location.href=n:t(n,{replace:!0})};return o.jsx(j8t,{redirectUri:n,onSuccess:i,initialMode:s,errorMessage:a})}function Gts({error:e,resource:t,errorTitle:n}){if(gs(e))return o.jsx(Vs,{});if(ys(e))return o.jsx(Ds,{resource:t});if(R1t(e,"logs"))return o.jsx(Lr,{iconSlot:o.jsx(Nxe,{}),titleSlot:"Logs are not available with your current storage",descriptionSlot:"The configured observability storage provider does not support listing logs. Switch to a storage provider with logs support to view runtime logs in Studio."});const r=e instanceof Error?e.message:void 0;return o.jsx(Fi,{title:n,message:r??"Unknown error"})}function Qts({listSlot:e,logPanelSlot:t,tracePanelSlot:n,spanPanelSlot:r,logCollapsed:s}){const a=!!t;return o.jsxs("div",{className:K("grid h-full min-h-0 gap-4 items-start",a?"grid-cols-[1fr_1fr]":"grid-cols-[1fr]"),children:[e,a&&o.jsxs("div",{className:K("grid gap-4 h-full overflow-auto",n&&r?s?"grid-rows-[auto_1fr_1fr]":"grid-rows-[1fr_1fr_1fr]":n?s?"grid-rows-[auto_1fr]":"grid-rows-[1fr_1fr]":s?"grid-rows-[auto]":"grid-rows-[1fr]"),children:[t,n,r]})]})}const Yts={debug:{label:"DEBUG",color:"#71717a"},info:{label:"INFO",color:"#60a5fa"},warn:{label:"WARN",color:"#facc15"},error:{label:"ERROR",color:"#f87171"},fatal:{label:"FATAL",color:"#dc2626"}};function Xts({level:e}){const t=Yts[e];return o.jsx(So,{height:"compact",children:o.jsx("span",{className:"uppercase text-ui-sm font-semibold",style:{color:t.color},children:t.label})})}function Kts({entityType:e,className:t}){const n=K("size-3.5 shrink-0 text-neutral2",t);switch(e.toLowerCase()){case Os.AGENT:return o.jsx(rl,{className:n,"aria-hidden":!0});case"workflow":case Os.WORKFLOW_RUN:return o.jsx(kd,{className:n,"aria-hidden":!0});case Os.TOOL:return o.jsx(Qp,{className:n,"aria-hidden":!0});default:return null}}function Jts({entityType:e,entityName:t}){const n=e??"";return o.jsxs(So,{height:"compact",className:"flex min-w-0 items-center gap-2",children:[o.jsx(Kts,{entityType:n}),t?o.jsx("span",{className:"min-w-0 text-ui-smd truncate",children:t}):"-"]})}function ens({message:e}){return o.jsx(So,{height:"compact",className:"text-neutral4 text-ui-smd min-w-0 truncate font-mono",children:e})}function tns({data:e}){if(!e||Object.keys(e).length===0)return o.jsx(So,{height:"compact",children:null});const t=Object.entries(e).map(([n,r])=>{if(typeof r=="string")return`${n}: ${r}`;try{return`${n}: ${JSON.stringify(r)}`}catch{return`${n}: <unserializable>`}}).join(", ");return o.jsx(Xke,{children:t})}const zl=Object.assign(BD,{Top:ZH,TopCell:M_,TopCellWithTooltip:GH,TopCellSmart:ZEt,RowWrapper:nOe,RowButton:UD,RowLink:GEt,Spacer:tOe,NoMatch:WH,DateCell:Kke,TimeCell:Jke,LevelCell:Xts,EntityCell:Jts,MessageCell:ens,DataCell:tns,NextPageLoading:HH}),MQe="6rem 9rem 5rem 10rem minmax(8rem,1fr) minmax(8rem,1fr)",nns=36,rns=8;function sns({logs:e,isLoading:t,isFetchingNextPage:n,hasNextPage:r,setEndOfListElement:s,logIdMap:a,featuredLogId:i,onLogClick:l}){const c=v.useRef(null),u=X6t({count:e.length,getScrollElement:()=>c.current,estimateSize:()=>nns,overscan:rns}),d=v.useRef(t);if(v.useEffect(()=>{d.current&&!t&&c.current?.dispatchEvent(new Event("scroll")),d.current=t},[t]),t)return o.jsx(el,{columns:MQe});const f=u.getVirtualItems(),p=u.getTotalSize(),h=f[0]?.start??0,m=f.length>0?Math.max(0,p-(f[f.length-1]?.end??0)):0;return o.jsxs(zl,{columns:MQe,variant:"striped",scrollRef:c,className:"min-w-0",children:[o.jsxs(zl.Top,{children:[o.jsx(zl.TopCell,{children:"Date"}),o.jsx(zl.TopCell,{children:"Time"}),o.jsx(zl.TopCell,{children:"Level"}),o.jsx(zl.TopCell,{children:"Entity"}),o.jsx(zl.TopCell,{children:"Message"}),o.jsx(zl.TopCell,{children:"Data"})]}),e.length===0?o.jsx(zl.NoMatch,{message:"No logs match your search"}):o.jsxs(o.Fragment,{children:[o.jsx(zl.Spacer,{height:h}),f.map(g=>{const y=e[g.index];if(!y)return null;const b=a.get(y);if(!b)return null;const w=b===i;return o.jsxs(zl.RowButton,{ref:u.measureElement,"data-index":g.index,onClick:()=>l(y),featured:w,variant:y.level==="error"||y.level==="fatal"?"error":"default",children:[o.jsx(zl.DateCell,{timestamp:y.timestamp}),o.jsx(zl.TimeCell,{timestamp:y.timestamp}),o.jsx(zl.LevelCell,{level:y.level}),o.jsx(zl.EntityCell,{entityType:y.entityType,entityName:y.entityName}),o.jsx(zl.MessageCell,{message:y.message}),o.jsx(zl.DataCell,{data:y.data})]},b)}),o.jsx(zl.Spacer,{height:m})]}),o.jsx(zl.NextPageLoading,{isLoading:n,hasMore:r,setEndOfListElement:s})]})}function ans({onClear:e,onRemoveAll:t,onSave:n,onRemoveSaved:r,isLoading:s,filterFields:a,filterTokens:i,onFilterTokensChange:l,autoFocusFilterFieldId:c}){const u=i.length>0,d=i.some(f=>ins(f,a));return o.jsxs("div",{className:K("grid grid-cols-[1fr_auto] gap-3 items-start"),children:[o.jsx(uTe,{fields:a,tokens:i,onTokensChange:l,disabled:s,autoFocusFieldId:c}),u&&o.jsx(lTe,{disabled:s,onClear:d?e:void 0,onRemoveAll:t,onSave:n,onRemoveSaved:r})]})}function ins(e,t){const n=t.find(r=>r.id===e.fieldId);return n?n.kind==="text"?typeof e.value=="string"&&e.value.trim()!=="":n.kind==="pick-multi"?n.multi?Array.isArray(e.value)&&e.value.length>0:typeof e.value=="string"&&e.value!==""&&e.value!=="Any":n.kind==="multi-select"?Array.isArray(e.value)&&e.value.length>0:!1:!1}const ons={"last-24h":"the last 24 hours","last-3d":"the last 3 days","last-7d":"the last 7 days","last-14d":"the last 14 days","last-30d":"the last 30 days"},Wre="MMM d, yyyy HH:mm",Zre="Pick a wider range or lower the logging level — verbose entries (debug, info) may be filtered out.";function lns({datePreset:e,dateFrom:t,dateTo:n}){return e&&e!=="all"&&e!=="custom"?{title:`No logs for ${ons[e]}`,description:Zre}:t&&n?{title:`No logs between ${er(t,Wre)} and ${er(n,Wre)}`,description:Zre}:t?{title:`No logs since ${er(t,Wre)}`,description:Zre}:{title:"No logs yet",description:"Logs will appear here once agents, workflows, or tools are executed."}}const cns=({datePreset:e,dateFrom:t,dateTo:n}={})=>{const{title:r,description:s}=lns({datePreset:e,dateFrom:t,dateTo:n});return o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Lr,{iconSlot:o.jsx(Nxe,{}),titleSlot:r,descriptionSlot:s,actionSlot:o.jsxs(de,{variant:"ghost",as:"a",href:"https://mastra.ai/en/docs/observability/logging",target:"_blank",rel:"noopener noreferrer",children:["Logging Documentation ",o.jsx(Ixe,{})]})})})},uns=20,dns=1e4;function fns(e,t,n){if(e?.pagination?.hasMore)return n+1}function pns(e){const t=new Set,n=[];for(const r of e.pages)for(const s of r.logs??[]){const a=s.logId??JSON.stringify(s);t.has(a)||(t.add(a),n.push(s))}return n}function hns(e){return R1t(e.state.error,"logs")?!1:dns}const mns=({filters:e}={})=>{const t=We(),{inView:n,setRef:r}=C_(),s=R1({queryKey:["logs",e],queryFn:({pageParam:p})=>t.listLogsVNext({pagination:{page:p,perPage:uns},filters:e,orderBy:{field:"timestamp",direction:"DESC"}}),initialPageParam:0,getNextPageParam:fns,select:pns,retry:!1,refetchInterval:hns}),{hasNextPage:a,isFetchingNextPage:i,fetchNextPage:l,data:c,isLoading:u,isError:d,error:f}=s;return v.useEffect(()=>{n&&a&&!i&&l()},[n,a,i,l]),{data:c,hasNextPage:a,isFetchingNextPage:i,fetchNextPage:l,isLoading:u,isError:d,error:f,setEndOfListElement:r}},gns="Filters setting for Logs saved",vns="Filters setting for Logs cleared up";function yns(e,t,n){const{storageKey:r,messages:s,skipHydration:a}={},[i,l]=v.useState(()=>YGe(r)!==null),c=v.useCallback(()=>{KQr(e,r),l(!0);const f=s?.saved??gns;f!==!1&&De.success(f)},[e,r,s?.saved]),u=v.useCallback(()=>{JQr(r),l(!1);const f=s?.cleared??vns;f!==!1&&De.success(f)},[r,s?.cleared]),d=v.useRef(!1);return v.useEffect(()=>{if(a||d.current||(d.current=!0,eYr(e)))return;const f=YGe(r);f&&t(p=>{const h=new URLSearchParams(p);for(const[m,g]of f)h.append(m,g);return h},{replace:!0})},[]),{hasSavedFilters:i,handleSave:c,handleRemoveSaved:u}}function bns(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return(t>>>0).toString(36)}function xns(e){const t=new Map;for(const n of e){if(n.logId){t.set(n,n.logId);continue}const r=n.timestamp instanceof Date?n.timestamp.toISOString():n.timestamp;t.set(n,bns(`${r}${n.message??""}${n.data?JSON.stringify(n.data):""}`))}return t}function wns(e,t,n,r){const s=v.useMemo(()=>xns(e),[e]),a=v.useMemo(()=>{const h=new Map;for(let m=0;m<e.length;m++){const g=s.get(e[m]);g&&h.set(g,{log:e[m],idx:m})}return h},[e,s]),l=(t?a.get(t):void 0)?.idx??-1,c=l>=0?e[l]:null,u=v.useCallback(h=>s.get(h),[s]),d=v.useCallback(h=>{const m=s.get(h);if(m){if(t===m){n({logId:null});return}n(r?{logId:m,traceId:h.traceId??null,spanId:null}:{logId:m})}},[s,t,r,n]),f=l>0?()=>{const h=e[l-1],m=s.get(h);n(r?{logId:m,traceId:h.traceId??null,spanId:null}:{logId:m})}:void 0,p=l>=0&&l<e.length-1?()=>{const h=e[l+1],m=s.get(h);n(r?{logId:m,traceId:h.traceId??null,spanId:null}:{logId:m})}:void 0;return{logIdMap:s,getLogId:u,featuredLog:c,handleLogClick:d,handlePreviousLog:f,handleNextLog:p}}const Mve="logId",Dve="traceId",Lve="spanId",RR=1440*60*1e3,Sns={"last-24h":RR,"last-3d":3*RR,"last-7d":7*RR,"last-14d":14*RR,"last-30d":30*RR};function e9(e){e.delete(Mve),e.delete(Dve),e.delete(Lve)}function kns(e,t,n){const{onRemoveAll:r}={},s=v.useMemo(()=>{const _=e.get(zb);return _&&XQr.has(_)?_:"last-24h"},[e]),a=e.get(Bb),i=e.get(Ub),l=v.useMemo(()=>{if(s==="custom"){if(!a)return;const C=new Date(a);return Number.isNaN(C.getTime())?void 0:C}if(s==="all")return;const _=Sns[s];return _?new Date(Date.now()-_):void 0},[s,a]),c=v.useMemo(()=>{if(s!=="custom"||!i)return;const _=new Date(i);return Number.isNaN(_.getTime())?void 0:_},[s,i]),u=v.useRef(s);u.current=s;const d=e.get(Mve),f=e.get(Dve),p=e.get(Lve),h=v.useMemo(()=>Q6t.find(_=>_.entityType===e.get(Px)),[e]),m=v.useMemo(()=>nYr(e),[e]),g=v.useCallback(_=>{t(C=>{const E=new URLSearchParams(C);for(const[j,N]of Object.entries(_)){const I=j==="logId"?Mve:j==="traceId"?Dve:Lve;N?E.set(I,N):E.delete(I)}return E},{replace:!0})},[t]),y=v.useCallback(_=>{t(C=>{const E=new URLSearchParams(C);return sYr(E,_),e9(E),E},{replace:!0})},[t]),b=y,w=v.useCallback((_,C)=>{if(u.current!=="custom")return;const E=C==="from"?Bb:Ub;t(j=>{const N=new URLSearchParams(j);return _?N.set(E,_.toISOString()):N.delete(E),e9(N),N},{replace:!0})},[t]),S=v.useCallback(_=>{u.current=_,t(C=>{const E=new URLSearchParams(C);return _==="last-24h"?(E.delete(zb),E.delete(Bb),E.delete(Ub)):_==="custom"?E.set(zb,"custom"):(E.set(zb,_),E.delete(Bb),E.delete(Ub)),e9(E),E},{replace:!0})},[t]),k=v.useCallback(()=>{t(_=>{const C=new URLSearchParams(_);C.delete(Px);for(const E of V4)C.delete(kl[E]);return C.delete(zb),C.delete(Bb),C.delete(Ub),e9(C),C},{replace:!0}),r?.()},[t,r]);return v.useMemo(()=>({searchParams:e,setSearchParams:t,datePreset:s,selectedDateFrom:l,selectedDateTo:c,datePresetRef:u,featuredLogId:d,featuredTraceId:f,featuredSpanId:p,selectedEntityOption:h,filterTokens:m,handleFeaturedChange:g,handleFilterTokensChange:b,handleDateChange:w,handleDatePresetChange:S,handleRemoveAll:k,applyFilterTokens:y}),[e,t,s,l,c,u,d,f,p,h,m,g,b,w,S,k,y])}function Ons(){const[e,t]=ji(),n=kns(e,t),r=yns(e,t),[s,a]=v.useState(),[i,l]=v.useState(!1),{data:c=[],isPending:u}=gTe(),{data:d=[],isPending:f}=pTe({entityType:n.selectedEntityOption?.entityType,rootOnly:!0}),{data:p=[],isPending:h}=hTe(),{data:m=[],isPending:g}=mTe(),y=v.useMemo(()=>tYr({availableTags:c,availableRootEntityNames:d,availableServiceNames:m,availableEnvironments:p,loading:{tags:u,entityNames:f,serviceNames:g,environments:h}}),[c,d,m,p,u,f,g,h]),b=v.useMemo(()=>aYr({rootEntityType:n.selectedEntityOption?.entityType,dateFrom:n.selectedDateFrom,dateTo:n.selectedDateTo,tokens:n.filterTokens}),[n.filterTokens,n.selectedDateFrom,n.selectedDateTo,n.selectedEntityOption]),{data:w=[],isLoading:S,error:k,isFetchingNextPage:_,hasNextPage:C,setEndOfListElement:E}=mns({filters:b}),{logIdMap:j,featuredLog:N,handleLogClick:I,handlePreviousLog:P,handleNextLog:$}=wns(w,n.featuredLogId,n.handleFeaturedChange,n.featuredTraceId),{data:F,isLoading:D}=XH(n.featuredTraceId??null),{data:V,isLoading:W}=oI(n.featuredTraceId??"",n.featuredSpanId??""),L=v.useCallback(()=>n.applyFilterTokens(iYr(y,n.filterTokens)),[y,n]),B=v.useCallback(()=>n.handleFeaturedChange({logId:null}),[n]),z=v.useCallback(X=>n.handleFeaturedChange({traceId:X,spanId:null}),[n]),M=v.useCallback((X,te)=>n.handleFeaturedChange({traceId:X,spanId:te}),[n]),G=v.useCallback(()=>{n.handleFeaturedChange({traceId:null,spanId:null}),l(!1)},[n]),q=v.useCallback(()=>n.handleFeaturedChange({spanId:null}),[n]),R=v.useCallback(X=>n.handleFeaturedChange({spanId:X??null}),[n]),U=o.jsxs(Lt.TopArea,{children:[o.jsx(Lt.Row,{children:o.jsxs(Lt.Column,{className:"flex flex-wrap items-start justify-start gap-2",children:[o.jsx(oTe,{preset:n.datePreset,onPresetChange:n.handleDatePresetChange,dateFrom:n.selectedDateFrom,dateTo:n.selectedDateTo,onDateChange:n.handleDateChange,disabled:S,presets:["last-24h","last-3d","last-7d","last-14d","last-30d","custom"]}),o.jsx(dTe,{fields:y,tokens:n.filterTokens,onTokensChange:n.handleFilterTokensChange,disabled:S,onStartTextFilter:a})]})}),o.jsx(ans,{isLoading:S,filterFields:y,filterTokens:n.filterTokens,onFilterTokensChange:n.handleFilterTokensChange,onClear:L,onRemoveAll:n.handleRemoveAll,onSave:r.handleSave,onRemoveSaved:r.hasSavedFilters?r.handleRemoveSaved:void 0,autoFocusFilterFieldId:s})]});if(k)return o.jsxs(Lt,{width:"wide",height:"full",children:[U,o.jsx(Lt.MainArea,{isCentered:!0,children:o.jsx(Gts,{error:k,resource:"logs",errorTitle:"Failed to load logs"})})]});const Z=!!n.selectedEntityOption||n.filterTokens.length>0;return w.length===0&&!S&&!Z?o.jsxs(Lt,{width:"wide",height:"full",children:[U,o.jsx(Lt.MainArea,{isCentered:!0,children:o.jsx(cns,{datePreset:n.datePreset,dateFrom:n.selectedDateFrom,dateTo:n.selectedDateTo})})]}):o.jsxs(Lt,{width:"wide",height:"full",children:[U,o.jsx(Qts,{logCollapsed:i,listSlot:o.jsx(sns,{logs:w,isLoading:S,isFetchingNextPage:_,hasNextPage:C,setEndOfListElement:E,logIdMap:j,featuredLogId:n.featuredLogId,onLogClick:I}),logPanelSlot:N?o.jsx(xYr,{log:N,onClose:B,onTraceClick:z,onSpanClick:M,onPrevious:P,onNext:$,collapsed:i,onCollapsedChange:l}):null,tracePanelSlot:n.featuredTraceId?o.jsx(cjt,{traceId:n.featuredTraceId,spans:F?.spans,isLoading:D,onClose:G,onSpanSelect:R,selectedSpanId:n.featuredSpanId}):null,spanPanelSlot:n.featuredTraceId&&n.featuredSpanId?o.jsx(oYr,{spanId:n.featuredSpanId,span:V?.span,isLoading:W,onClose:q}):null})]})}function _ns({server:e}){const{paths:t,Link:n}=yn(),s=We().options.baseUrl,a=s?`${s}/api/mcp/${e.id}/sse`:"",{data:i}=f5t(e),l=Object.values(i||{}),c=l.length,u=l.filter(p=>p.toolType==="agent").length,d=l.filter(p=>p.toolType==="workflow").length,f=dm(e.name,50);return o.jsxs(me.RowLink,{to:t.mcpServerLink(e.id),LinkComponent:n,children:[o.jsx(me.NameCell,{children:f}),o.jsx(me.DescriptionCell,{children:a}),o.jsx(me.TextCell,{className:"text-center",children:u||""}),o.jsx(me.TextCell,{className:"text-center",children:c||""}),o.jsx(me.TextCell,{className:"text-center",children:d||""})]})}function Cns({mcpServers:e,isLoading:t,search:n=""}){const r=v.useMemo(()=>{const s=n.toLowerCase();return e.filter(a=>a.name?.toLowerCase().includes(s)||a.id?.toLowerCase().includes(s))},[e,n]);return t?o.jsx(el,{columns:"auto 1fr auto auto auto"}):o.jsxs(me,{columns:"auto 1fr auto auto auto",variant:"striped",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Name"}),o.jsx(me.TopCell,{children:"URL"}),o.jsx(me.TopCellSmart,{long:"Agents",short:o.jsx(rl,{}),tooltip:"Agent Tools",className:"text-center"}),o.jsx(me.TopCellSmart,{long:"Tools",short:o.jsx(Qp,{}),tooltip:"Tools",className:"text-center"}),o.jsx(me.TopCellSmart,{long:"Workflows",short:o.jsx(kd,{}),tooltip:"Workflow Tools",className:"text-center"})]}),r.length===0&&n?o.jsx(me.NoMatch,{message:"No MCP Servers match your search"}):null,r.map(s=>o.jsx(_ns,{server:s},s.id))]})}const Ens=()=>o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Lr,{iconSlot:o.jsx(xf,{}),titleSlot:"No MCP Servers yet",descriptionSlot:o.jsxs(o.Fragment,{children:["MCP servers are not configured yet. ",o.jsx("br",{}),"More information in the documentation."]}),actionSlot:o.jsxs(de,{variant:"ghost",as:"a",href:"https://mastra.ai/docs/tools-mcp/mcp-overview",target:"_blank",rel:"noopener noreferrer",children:["MCP Documentation ",o.jsx(Pa,{})]})})}),jns=()=>{const{data:e=[],isLoading:t,error:n}=kZ(),[r,s]=v.useState("");return n&&gs(n)?o.jsx(lr,{children:o.jsx(Vs,{})}):n&&ys(n)?o.jsx(lr,{children:o.jsx(Ds,{resource:"MCP servers"})}):n?o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load MCP servers",message:n.message})}):e.length===0&&!t?o.jsx(lr,{children:o.jsx(Ens,{})}):o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsx("div",{className:"max-w-120",children:o.jsx(Of,{onSearch:s,label:"Filter MCP servers",placeholder:"Filter by name"})})}),o.jsx(Cns,{mcpServers:e,isLoading:t,search:r})]})},Tns=(e,t)=>{const n=new Map,r=Object.keys(t);for(const s of r){const a=t[s],i=a.tools,l=Object.keys(i);for(const c of l){const u=i[c];n.has(u.id)||n.set(u.id,{...u,agents:[]}),n.get(u.id).agents.push({...a,id:s})}}for(const[s,a]of Object.entries(e))n.has(a.id)||n.set(a.id,{...a,agents:[]});return Array.from(n.values())};function Nns({tools:e,agents:t,isLoading:n,search:r=""}){const{paths:s,Link:a}=yn(),i=v.useMemo(()=>Tns(e,t),[e,t]),l=v.useMemo(()=>i.filter(c=>c.id.toLowerCase().includes(r.toLowerCase())),[i,r]);return n?o.jsx(el,{columns:"auto 1fr auto"}):o.jsxs(me,{columns:"auto 1fr auto",variant:"striped",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Name"}),o.jsx(me.TopCell,{children:"Description"}),o.jsx(me.TopCellSmart,{long:"Agents",short:o.jsx(rl,{}),tooltip:"Attached Agents",className:"text-center"})]}),l.length===0&&r?o.jsx(me.NoMatch,{message:"No Tools match your search"}):null,l.map(c=>{const u=dm(c.id,50),d=dm(c.description??"",200),f=c.agents.length;return o.jsxs(me.RowLink,{to:s.toolLink(c.id),LinkComponent:a,children:[o.jsx(me.NameCell,{children:u}),o.jsx(me.DescriptionCell,{children:d}),o.jsx(me.TextCell,{className:"text-center",children:f||""})]},c.id)})]})}const Ins=()=>o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Lr,{iconSlot:o.jsx(xf,{}),titleSlot:"No Tools yet",descriptionSlot:o.jsxs(o.Fragment,{children:["Mastra tools are not configured yet. ",o.jsx("br",{}),"More information in the documentation."]}),actionSlot:o.jsxs(de,{variant:"ghost",as:"a",href:"https://mastra.ai/docs/agents/using-tools-and-mcp",target:"_blank",rel:"noopener noreferrer",children:["Tools Documentation ",o.jsx(Pa,{})]})})}),Ans=()=>{const e=We();return Rn({mutationFn:async({toolId:t,input:n,requestContext:r})=>{const s=new s_;Object.entries(r??{}).forEach(([a,i])=>{s.set(a,i)});try{return await e.getTool(t).execute({data:n,requestContext:s})}catch(a){throw De.error("Error executing dev tool"),console.error("Error executing dev tool:",a),a}}})},Rns=({toolId:e})=>{const{canExecute:t}=al(),n=t("tools"),{data:r={}}=Sm(),s=v.useMemo(()=>{for(const g of Object.values(r))if(g.tools){const y=Object.values(g.tools).find(b=>b.id===e);if(y)return y}return null},[r,e]),{data:a,isLoading:i,error:l}=uwr(e,{enabled:!s}),c=s||a,{mutateAsync:u,isPending:d,data:f}=Ans(),{requestContext:p}=_s();v.useEffect(()=>{if(l){const g=l instanceof Error?l.message:"Failed to load tool";De.error(`Error loading tool: ${g}`)}},[l]);const h=async(g,y)=>{if(!c)return;const b={...p??{},...y??{}};return u({toolId:c.id,input:g,requestContext:b})},m=c?.inputSchema?om(am(mx(c?.inputSchema))):Ss({});return i?o.jsxs("div",{className:"p-6",children:[o.jsx(At,{className:"h-8 w-48 mb-4"}),o.jsx(At,{className:"h-32 w-full"})]}):l?null:c?n?o.jsx(Vje,{executionResult:f,isExecutingTool:d,zodInputSchema:m,handleExecuteTool:h,toolDescription:c.description,toolId:c.id,requestContextSchema:c.requestContextSchema}):o.jsx("div",{className:"py-12 text-center px-6",children:o.jsx(ge,{variant:"ui-sm",className:"text-neutral3",children:"You don't have permission to execute tools."})}):o.jsx("div",{className:"py-12 text-center px-6",children:o.jsx(ge,{variant:"header-md",className:"text-neutral3",children:"Tool not found"})})};function Pns({value:e,onValueChange:t,placeholder:n="Select a tool...",searchPlaceholder:r="Search tools...",emptyText:s="No tools found.",className:a,disabled:i=!1,variant:l}){const{data:c={},isLoading:u,isError:d,error:f}=cI(),{data:p={},isLoading:h,isError:m,error:g}=Sm(),{navigate:y,paths:b}=yn();v.useEffect(()=>{if(d){const _=f instanceof Error?f.message:"Failed to load tools";De.error(`Error loading tools: ${_}`)}},[d,f]),v.useEffect(()=>{if(m){const _=g instanceof Error?g.message:"Failed to load agents";De.error(`Error loading agents: ${_}`)}},[m,g]);const w=new Map;Object.values(p).forEach(_=>{_.tools&&Object.values(_.tools).forEach(C=>{w.has(C.id)||w.set(C.id,C)})}),Object.values(c).forEach(_=>{w.has(_.id)||w.set(_.id,_)});const S=Array.from(w.values()).map(_=>({label:_.id,value:_.id})),k=_=>{t?t(_):_&&_!==e&&y(b.toolLink(_))};return o.jsx(Xl,{options:S,value:e,onValueChange:k,placeholder:u||h?"Loading tools...":n,searchPlaceholder:r,emptyText:s,className:a,disabled:i||u||h||d||m,variant:l})}const $ns=({isLoading:e,server:t})=>{const[{sseUrl:n,httpStreamUrl:r},s]=v.useState({sseUrl:"",httpStreamUrl:""});if(v.useEffect(()=>{if(!t)return;const i=window.MASTRA_SERVER_HOST,l=window.MASTRA_SERVER_PORT;let c=null;i&&l&&(c=`http://${i}:${l}`);const u=c||"http://localhost:4111",d=`${u}/api/mcp/${t.id}/sse`,f=`${u}/api/mcp/${t.id}/mcp`;s({sseUrl:d,httpStreamUrl:f})},[t]),e)return null;if(!t)return o.jsx(xy,{children:o.jsx(ge,{as:"h1",variant:"header-md",className:"text-neutral3 font-medium py-20 text-center",children:"Server not found"})});const a=`npx -y mcp-remote ${n}`;return o.jsxs(xy,{isDivided:!0,children:[o.jsxs("div",{className:"px-8 py-12 mx-auto max-w-2xl w-full",children:[o.jsx(ge,{as:"h1",variant:"header-md",className:"text-neutral6 font-medium pb-4",children:t.name}),o.jsxs("div",{className:"flex items-center gap-1 pb-6",children:[o.jsx(un,{icon:o.jsx(JEt,{className:"text-neutral6"}),className:"rounded-r-sm text-neutral4!",children:"Version"}),o.jsx(un,{className:"rounded-l-sm text-neutral4!",children:t.version_detail.version})]}),o.jsx(ge,{className:"text-neutral3 pb-4",children:"This MCP server can be accessed through multiple transport methods. Choose the one that best fits your use case."}),o.jsxs("div",{className:"flex flex-col gap-4",children:[o.jsxs("div",{className:"rounded-lg border border-border1 bg-surface3 p-4",children:[o.jsx(un,{icon:o.jsx("span",{className:"font-mono w-6 text-accent1 font-medium mr-1",children:"HTTP"}),children:"Regular HTTP Endpoint"}),o.jsx(ge,{className:"text-neutral3 pt-1 pb-2",children:"Use for stateless HTTP transport with streamable responses."}),o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx(ge,{className:"px-2 py-1 bg-surface4 rounded-lg",children:r}),o.jsx("div",{className:"pt-1",children:o.jsx(ba,{tooltip:"Copy HTTP Stream URL",content:r})})]})]}),o.jsxs("div",{className:"rounded-lg border border-border1 bg-surface3 p-4",children:[o.jsx(un,{icon:o.jsx("span",{className:"font-mono w-6 text-accent1 font-medium mr-1",children:"SSE"}),children:"Server-Sent Events"}),o.jsx(ge,{className:"text-neutral3 pt-1 pb-2",children:"Use for real-time communication via SSE."}),o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx(ge,{className:"px-2 py-1 bg-surface4 rounded-lg",children:n}),o.jsx("div",{className:"pt-1",children:o.jsx(ba,{tooltip:"Copy SSE URL",content:n})})]})]}),o.jsxs("div",{className:"rounded-lg border border-border1 bg-surface3 p-4",children:[o.jsx(un,{icon:o.jsx("span",{className:"font-mono w-6 text-accent1 font-medium mr-1",children:"CLI"}),children:"Command Line"}),o.jsx(ge,{className:"text-neutral3 pt-1 pb-2",children:"Use for local command-line access via npx and mcp-remote."}),o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx(ge,{className:"px-2 py-1 bg-surface4 rounded-lg",children:a}),o.jsx("div",{className:"pt-1",children:o.jsx(ba,{tooltip:"Copy Command Line Config",content:a})})]})]})]})]}),o.jsx("div",{className:"h-full overflow-y-scroll border-l border-border1",children:o.jsx(Mns,{server:t})})]})},Mns=({server:e})=>{const{data:t={},isLoading:n}=f5t(e);if(n)return null;const r=Object.keys(t);return o.jsxs("div",{className:"p-5 overflow-y-scroll",children:[o.jsxs("div",{className:"text-neutral6 flex gap-2 items-center",children:[o.jsx(Ue,{size:"lg",className:"bg-surface4 rounded-md p-1",children:o.jsx(D_,{})}),o.jsx(ge,{variant:"header-md",as:"h2",className:"font-medium",children:"Available Tools"})]}),o.jsx("div",{className:"flex flex-col gap-2 pt-6",children:r.map(s=>{const a=t[s];return o.jsx(Lns,{tool:a,serverId:e.id},s)})})]})};function Dns(e){if(!e)return!1;const t=e.ui;return!!(typeof t?.resourceUri=="string"&&t.resourceUri.startsWith("ui://")||typeof e["ui/resourceUri"]=="string"&&e["ui/resourceUri"].startsWith("ui://"))}const Lns=({tool:e,serverId:t})=>{const n=v.useRef(null),{Link:r,paths:s}=yn(),a=GLt[e.toolType||"tool"],i=Dns(e._meta);return o.jsxs(Cf,{onClick:()=>n.current?.click(),children:[o.jsx(yAt,{children:o.jsx(a,{className:"group-hover/entity:text-accent6"})}),o.jsxs(jf,{children:[o.jsx(Ef,{children:o.jsxs("span",{className:"flex items-center gap-2",children:[o.jsx(r,{ref:n,href:s.mcpServerToolLink(t,e.id),children:e.id}),i&&o.jsx(un,{className:"text-[10px] py-0",children:"App"})]})}),o.jsx(Yp,{children:e.description})]})]})},Fns=()=>{const{serverId:e}=dr(),{data:t=[],isLoading:n}=kZ(),r=t.find(s=>s.id===e);return o.jsx("div",{className:"h-full w-full overflow-hidden",children:o.jsx($ns,{isLoading:n,server:r})})};function zns(e){if(!e)return;const t=e.ui;if(t?.resourceUri)return t.resourceUri;const n=e["ui/resourceUri"];if(typeof n=="string")return n}const Bns=({toolId:e,serverId:t})=>{const{canExecute:n}=al(),r=n("tools"),s=We(),{data:a,isLoading:i,error:l}=lje(t,e),{mutateAsync:c,isPending:u,data:d}=pzr(t,e),f=a?zns(a._meta):void 0,{data:p}=wt({queryKey:["mcp-app-resource",t,f],queryFn:async()=>f?(await s.readMcpServerResource(t,f)).contents[0]?.text??null:null,enabled:!!f}),h=v.useCallback(async(y,b)=>await c(b),[c]);v.useEffect(()=>{if(l){const y=l instanceof Error?l.message:"Failed to load tool";De.error(`Error loading tool: ${y}`)}},[l]);const m=async y=>{if(a)return await c(y)};if(i)return o.jsxs("div",{className:"p-6",children:[o.jsx(At,{className:"h-8 w-48 mb-4"}),o.jsx(At,{className:"h-32 w-full"})]});if(l)return null;if(!a)return o.jsx("div",{className:"py-12 text-center px-6",children:o.jsx(ge,{variant:"header-md",className:"text-neutral3",children:"Tool not found"})});if(!r)return o.jsx("div",{className:"py-12 text-center px-6",children:o.jsx(ge,{variant:"ui-sm",className:"text-neutral3",children:"You don't have permission to execute tools."})});let g;try{g=om(am(a.inputSchema))}catch(y){console.error("Error processing input schema:",y),De.error("Failed to process tool input schema."),g=Ss({})}return o.jsxs("div",{className:"flex flex-col gap-4",children:[p&&o.jsx("div",{className:"border-b border-border1 p-4",children:o.jsx(d5t,{html:p,toolName:a.name??a.id,onToolCall:h})}),o.jsx(Vje,{executionResult:d,isExecutingTool:u,zodInputSchema:g,handleExecuteTool:m,toolDescription:a.description||"",toolId:a.id})]})},Uns=()=>{const{serverId:e,toolId:t}=dr(),{data:n,isLoading:r}=lje(e,t);return r||!n?null:o.jsx("div",{className:"h-full w-full overflow-y-auto",children:o.jsx(Bns,{toolId:t,serverId:e})})},qns=["last-24h","last-3d","last-7d","last-14d","last-30d","custom"];function Vns(e){switch(e){case"3d":return"last-3d";case"7d":return"last-7d";case"14d":return"last-14d";case"30d":return"last-30d";case"custom":return"custom";default:return"last-24h"}}function Hns(e){switch(e){case"last-3d":return"3d";case"last-7d":return"7d";case"last-14d":return"14d";case"last-30d":return"30d";case"custom":return"custom";default:return"24h"}}function Wns(){const{datePreset:e,setDatePreset:t,customRange:n,setCustomRange:r}=qZ(),s=v.useRef(e);s.current=e;const a=v.useRef(n);return a.current=n,o.jsx(oTe,{preset:Vns(e),onPresetChange:i=>{const l=Hns(i);s.current=l,t(l)},dateFrom:n?.from,dateTo:n?.to,onDateChange:(i,l)=>{if(s.current!=="custom")return;const c={...a.current,[l]:i};a.current=c,r(c)},presets:qns})}const Gre={"24h":1440*60*1e3,"3d":4320*60*1e3,"7d":10080*60*1e3,"14d":336*60*60*1e3,"30d":720*60*60*1e3};function Zns(e,t,n){if(e!=="custom"){const r=Gre[e]??Gre["24h"];return{start:new Date(n-r),end:new Date(n)}}return{start:t?.from??new Date(n-Gre["24h"]),end:t?.to??new Date(n)}}function Cm(){const{datePreset:e,customRange:t,dimensionalFilter:n,dimensionalFilterKey:r}=qZ(),s=v.useRef(null),a=e==="custom"?`custom:${t?.from?.getTime()??""}:${t?.to?.getTime()??""}`:`preset:${e}`;(!s.current||s.current.key!==a)&&(s.current={key:a,anchor:Date.now()});const i=s.current.anchor,l=v.useMemo(()=>Zns(e,t,i),[e,t,i]),c=v.useMemo(()=>({timestamp:l,...n}),[l,r]),u=v.useMemo(()=>`${a}|${r}`,[a,r]);return{datePreset:e,customRange:t,timestamp:l,filters:c,dimensionalFilter:n,filterKey:u}}function T8t(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","agent-runs-kpi",n],queryFn:()=>e.getMetricAggregate({name:["mastra_agent_duration_ms"],aggregation:"count",filters:t,comparePeriod:"previous_period"})})}function H4({href:e,LinkComponent:t="a"}){return o.jsx(de,{as:t,href:e,variant:"ghost",size:"icon-md",tooltip:"View in Traces","aria-label":"View in Traces",children:o.jsx(Dkn,{})})}function Gns({href:e,LinkComponent:t="a"}){return o.jsx(de,{as:t,href:e,variant:"ghost",size:"icon-md",tooltip:"View errors in Logs","aria-label":"View errors in Logs",children:o.jsx(bOn,{})})}function Qns(e){switch(e){case"24h":return"last-24h";case"3d":return"last-3d";case"7d":return"last-7d";case"14d":return"last-14d";case"30d":return"last-30d";case"custom":return"custom";default:return}}function Yns(e,t){if(t==="1h"){const s=new Date(e);s.setUTCMinutes(0,0,0);const a=new Date(s.getTime()+3600*1e3);return{from:s,to:a}}const n=new Date(e);n.setUTCHours(0,0,0,0);const r=new Date(n.getTime()+1440*60*1e3);return{from:n,to:r}}function N8t(e,t,n,r,s,a,i){if(i){e.set(t,"custom"),e.set(n,i.from.toISOString()),e.set(r,i.to.toISOString());return}if(s==="custom"){e.set(t,"custom"),a?.from&&e.set(n,a.from.toISOString()),a?.to&&e.set(r,a.to.toISOString());return}const l=Qns(s);l&&e.set(t,l)}function jo(e,t,n){typeof n=="string"&&n.length>0&&e.set(t,n)}function I8t(e,t,n){if(!(!Array.isArray(n)||n.length===0))for(const r of n)r&&e.append(t,r)}function DQe({preset:e,customRange:t,dashboardFilter:n,scope:r,tracesBasePath:s="/observability"}){const a=new URLSearchParams;a.set(gw,"branches"),N8t(a,vw,yw,bw,e,t,r.window);const i=r.rootEntityType??n.rootEntityType;i&&a.set(_x,i),r.status&&a.set(Cx,r.status),jo(a,Sl.entityName,r.entityName??n.entityName),jo(a,Sl.threadId,r.threadId??n.threadId),jo(a,Sl.resourceId,r.resourceId??n.resourceId),jo(a,Sl.entityId,n.entityId),jo(a,Sl.runId,n.runId),jo(a,Sl.sessionId,n.sessionId),jo(a,Sl.requestId,n.requestId),jo(a,Sl.userId,n.userId),jo(a,Sl.organizationId,n.organizationId),jo(a,Sl.experimentId,n.experimentId),jo(a,Sl.serviceName,n.serviceName),jo(a,Sl.environment,n.environment),I8t(a,Sl.tags,n.tags);const l=a.toString();return l?`${s}?${l}`:s}function Xns({preset:e,customRange:t,dashboardFilter:n,scope:r,logsBasePath:s="/logs"}){const a=new URLSearchParams;N8t(a,zb,Bb,Ub,e,t,r.window);const i=r.rootEntityType??n.rootEntityType;i&&a.set(Px,i),jo(a,kl.entityName,r.entityName??n.entityName),jo(a,kl.threadId,r.threadId??n.threadId),jo(a,kl.resourceId,r.resourceId??n.resourceId),jo(a,kl.runId,n.runId),jo(a,kl.sessionId,n.sessionId),jo(a,kl.requestId,n.requestId),jo(a,kl.userId,n.userId),jo(a,kl.organizationId,n.organizationId),jo(a,kl.experimentId,n.experimentId),jo(a,kl.serviceName,n.serviceName),jo(a,kl.environment,n.environment),I8t(a,kl.tags,n.tags),r.status==="error"&&a.append(kl.level,"error");const l=a.toString();return l?`${s}?${l}`:s}function kI(){const{datePreset:e,customRange:t,dimensionalFilter:n,tracesBasePath:r,logsBasePath:s}=qZ(),a=v.useCallback((c={})=>DQe({preset:e,customRange:t,dashboardFilter:n,scope:c,tracesBasePath:r}),[e,t,n,r]),i=v.useCallback((c={})=>Xns({preset:e,customRange:t,dashboardFilter:n,scope:c,logsBasePath:s}),[e,t,n,s]),l=v.useCallback((c,u,d)=>{const f=Yns(u,d);return DQe({preset:e,customRange:t,dashboardFilter:n,scope:{...c,window:f},tracesBasePath:r})},[e,t,n,r]);return{getTracesHref:a,getLogsHref:i,getBucketTracesHref:l}}const A8t="1h";async function Qre(e,t,n){const r=await e.getMetricPercentiles({name:t,percentiles:[.5,.95],interval:A8t,filters:n}),s=r.series.find(l=>l.percentile===.5),a=r.series.find(l=>l.percentile===.95);if(!s||!a)return[];const i=new Map(a.points.map(l=>[new Date(l.timestamp).getTime(),l.value]));return s.points.map(l=>{const c=new Date(l.timestamp),u=c.getTime();return{time:c.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!1}),tsMs:u,p50:Math.round(l.value),p95:Math.round(i.get(u)??0)}})}function Kns(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","latency",n],queryFn:async()=>{const[r,s,a]=await Promise.all([Qre(e,"mastra_agent_duration_ms",t),Qre(e,"mastra_workflow_duration_ms",t),Qre(e,"mastra_tool_duration_ms",t)]);return{agentData:r,workflowData:s,toolData:a,interval:A8t}}})}const LQe={agents:Os.AGENT,workflows:Os.WORKFLOW_RUN,tools:Os.TOOL};function Jns(){const{data:e,isLoading:t,isError:n}=Kns(),{getTracesHref:r,getBucketTracesHref:s}=kI(),{Link:a}=yn(),i=bs();return o.jsx(WQr,{data:e,isLoading:t,isError:n,onPointClick:(l,c)=>{Number.isFinite(c.tsMs)&&i(s({rootEntityType:LQe[l]},c.tsMs,"1h"))},actions:l=>o.jsx(H4,{href:r({rootEntityType:LQe[l]}),LinkComponent:a})})}function ers(e){return e==="threads"||e==="resources"}function Yre(e){return e.length<=12?e:`${e.slice(0,6)}…${e.slice(-4)}`}function trs({threads:e,resources:t,getThreadRowHref:n,getResourceRowHref:r,actions:s,LinkComponent:a}){const[i,l]=v.useState("threads"),c=e.data?.map(y=>({...y,key:y.threadId}))??[],u=t.data?.map(y=>({...y,key:y.resourceId}))??[],d=c.length>0,f=u.length>0,p=e.data?.reduce((y,b)=>y+b.runs,0)??0,h=t.data?.reduce((y,b)=>y+b.threadCount,0)??0,m=i==="threads"?e:t,g=typeof s=="function"?s(i):s;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Memory",description:"Resource and Thread consumption"}),i==="threads"&&d&&o.jsx(Ut.Summary,{value:p.toLocaleString(),label:"Total runs"}),i==="resources"&&f&&o.jsx(Ut.Summary,{value:h.toLocaleString(),label:"Total threads"}),g?o.jsx(Ut.Actions,{children:g}):null]}),m.isLoading?o.jsx(Ut.Loading,{}):m.isError?o.jsx(Ut.Error,{message:"Failed to load memory data"}):o.jsx(Ut.Content,{children:o.jsxs(su,{defaultTab:"threads",value:i,onValueChange:y=>{ers(y)&&l(y)},className:"grid grid-rows-[auto_1fr] overflow-y-auto h-full",children:[o.jsxs(au,{children:[o.jsx(Vr,{value:"threads",children:"Threads"}),o.jsx(Vr,{value:"resources",children:"Resources"})]}),o.jsx(ps,{value:"threads",children:d?o.jsxs(me,{columns:"auto auto auto auto auto",...jve,children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{sticky:"start",children:"Thread ID"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Resource ID"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Runs"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Tokens"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Cost"})]}),c.map(y=>{const b=n?.(y),w=o.jsxs(o.Fragment,{children:[o.jsx(me.RowHeaderCell,{height:"compact",className:"text-ui-sm",children:Yre(y.threadId)}),o.jsx(me.NumberCell,{children:y.resourceId?Yre(y.resourceId):"—"}),o.jsx(me.NumberCell,{highlight:!0,children:y.runs.toLocaleString()}),o.jsx(me.NumberCell,{children:y.tokens>0?yc(y.tokens):"—"}),o.jsx(me.NumberCell,{children:y.cost!=null?vg(y.cost,y.costUnit):"—"})]});return b?o.jsx(me.RowLink,{to:b,LinkComponent:a,children:w},y.key):o.jsx(me.RowStatic,{children:w},y.key)})]}):o.jsx(Ut.NoData,{message:"No thread activity yet"})}),o.jsx(ps,{value:"resources",children:f?o.jsxs(me,{columns:"auto auto auto auto",...jve,children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{sticky:"start",children:"Resource ID"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Threads"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Tokens"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Cost"})]}),u.map(y=>{const b=r?.(y),w=o.jsxs(o.Fragment,{children:[o.jsx(me.RowHeaderCell,{height:"compact",className:"text-ui-sm",children:Yre(y.resourceId)}),o.jsx(me.NumberCell,{highlight:!0,children:y.threadCount.toLocaleString()}),o.jsx(me.NumberCell,{children:y.tokens>0?yc(y.tokens):"—"}),o.jsx(me.NumberCell,{children:y.cost!=null?vg(y.cost,y.costUnit):"—"})]});return b?o.jsx(me.RowLink,{to:b,LinkComponent:a,children:w},y.key):o.jsx(me.RowStatic,{children:w},y.key)})]}):o.jsx(Ut.NoData,{message:"No resource activity yet"})})]})})]})}const Xre=20;function nrs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","top-active-threads",n],queryFn:async()=>{const r={groupBy:["threadId","resourceId"],orderDirection:"DESC",filters:t},[s,a,i]=await Promise.all([e.getMetricBreakdown({...r,name:["mastra_agent_duration_ms"],aggregation:"count",limit:Xre}),e.getMetricBreakdown({...r,name:["mastra_model_total_input_tokens"],aggregation:"sum",limit:Xre}),e.getMetricBreakdown({...r,name:["mastra_model_total_output_tokens"],aggregation:"sum",limit:Xre})]),l=new Map,c=d=>(l.has(d)||l.set(d,{tokens:0,cost:null,costUnit:null}),l.get(d)),u=d=>{for(const f of d){const p=f.dimensions.threadId;if(!p)continue;const h=c(p);h.tokens+=f.value,f.estimatedCost!=null&&(h.cost=(h.cost??0)+f.estimatedCost,f.costUnit&&(h.costUnit=f.costUnit))}};return u(a.groups),u(i.groups),s.groups.filter(d=>!!d.dimensions.threadId).map(d=>{const f=d.dimensions.threadId,p=l.get(f);return{threadId:f,resourceId:d.dimensions.resourceId??null,runs:d.value,tokens:p?.tokens??0,cost:p?.cost??null,costUnit:p?.costUnit??null}})}})}const Kre=20;function rrs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","top-resources-by-threads",n],queryFn:async()=>{const r={groupBy:["resourceId"],orderDirection:"DESC",filters:t},[s,a,i]=await Promise.all([e.getMetricBreakdown({...r,name:["mastra_agent_duration_ms"],aggregation:"count_distinct",distinctColumn:"threadId",limit:Kre}),e.getMetricBreakdown({...r,name:["mastra_model_total_input_tokens"],aggregation:"sum",limit:Kre}),e.getMetricBreakdown({...r,name:["mastra_model_total_output_tokens"],aggregation:"sum",limit:Kre})]),l=new Map,c=d=>(l.has(d)||l.set(d,{tokens:0,cost:null,costUnit:null}),l.get(d)),u=d=>{for(const f of d){const p=f.dimensions.resourceId;if(!p)continue;const h=c(p);h.tokens+=f.value,f.estimatedCost!=null&&(h.cost=(h.cost??0)+f.estimatedCost,f.costUnit&&(h.costUnit=f.costUnit))}};return u(a.groups),u(i.groups),s.groups.filter(d=>!!d.dimensions.resourceId).map(d=>{const f=d.dimensions.resourceId,p=l.get(f);return{resourceId:f,threadCount:d.value,tokens:p?.tokens??0,cost:p?.cost??null,costUnit:p?.costUnit??null}})}})}function srs(){const e=nrs(),t=rrs(),{getTracesHref:n}=kI(),{Link:r}=yn();return o.jsx(trs,{threads:{data:e.data,isLoading:e.isLoading,isError:e.isError},resources:{data:t.data,isLoading:t.isLoading,isError:t.isError},LinkComponent:r,getThreadRowHref:s=>n({threadId:s.threadId,...s.resourceId?{resourceId:s.resourceId}:{}}),getResourceRowHref:s=>n({resourceId:s.resourceId})})}function W4({label:e,value:t,prevValue:n,changePct:r,isLoading:s,isError:a}){const i=t!=null;return o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:e}),o.jsx(Kr.Value,{className:i?void 0:"invisible",children:i?t:"—"}),a?o.jsx(Kr.Error,{}):s?o.jsx(Kr.Loading,{}):i?r!=null?o.jsx(Kr.Change,{changePct:r,prevValue:n}):o.jsx(Kr.NoChange,{}):o.jsx(Kr.NoData,{})]})}function ars(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","active-resources-kpi",n],queryFn:()=>e.getMetricAggregate({name:["mastra_agent_duration_ms"],aggregation:"count_distinct",distinctColumn:"resourceId",filters:t,comparePeriod:"previous_period"})})}function irs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","active-threads-kpi",n],queryFn:()=>e.getMetricAggregate({name:["mastra_agent_duration_ms"],aggregation:"count_distinct",distinctColumn:"threadId",filters:t,comparePeriod:"previous_period"})})}function ors(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","model-cost-kpi",n],queryFn:async()=>{const r=await e.getMetricAggregate({name:["mastra_model_total_input_tokens","mastra_model_total_output_tokens"],aggregation:"sum",filters:t,comparePeriod:"previous_period"});return{cost:r.estimatedCost??null,costUnit:r.costUnit??null,previousCost:r.previousEstimatedCost??null,costChangePercent:r.costChangePercent??null}}})}function lrs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","total-tokens-kpi",n],queryFn:async()=>{const[r,s]=await Promise.all([e.getMetricAggregate({name:["mastra_model_total_input_tokens"],aggregation:"sum",filters:t,comparePeriod:"previous_period"}),e.getMetricAggregate({name:["mastra_model_total_output_tokens"],aggregation:"sum",filters:t,comparePeriod:"previous_period"})]),a=r.value!=null||s.value!=null,i=r.previousValue!=null||s.previousValue!=null,l=(r.value??0)+(s.value??0),c=(r.previousValue??0)+(s.previousValue??0),u=i&&c>0?(l-c)/c*100:null;return{value:a?l:null,previousValue:i?c:null,changePercent:u}}})}function crs(){const{data:e,isLoading:t,isError:n}=T8t();return o.jsx(W4,{label:"Total Agent Runs",value:e?.value!=null?e.value.toLocaleString():null,prevValue:e?.previousValue!=null?e.previousValue.toLocaleString():void 0,changePct:e?.changePercent??null,isLoading:t,isError:n})}function urs(){const{data:e,isLoading:t,isError:n}=ors();return o.jsx(W4,{label:"Total Model Cost",value:e?.cost!=null?vg(e.cost,e.costUnit):null,prevValue:e?.previousCost!=null?vg(e.previousCost,e.costUnit):void 0,changePct:e?.costChangePercent??null,isLoading:t,isError:n})}function drs(){const{data:e,isLoading:t,isError:n}=lrs();return o.jsx(W4,{label:"Total Tokens",value:e?.value!=null?yc(e.value):null,prevValue:e?.previousValue!=null?yc(e.previousValue):void 0,changePct:e?.changePercent??null,isLoading:t,isError:n})}function frs(){const{data:e,isLoading:t,isError:n}=irs();return o.jsx(W4,{label:"Total Threads",value:e?.value!=null?yc(e.value):null,prevValue:e?.previousValue!=null?yc(e.previousValue):void 0,changePct:e?.changePercent??null,isLoading:t,isError:n})}function prs(){const{data:e,isLoading:t,isError:n}=ars();return o.jsx(W4,{label:"Total Resources",value:e?.value!=null?yc(e.value):null,prevValue:e?.previousValue!=null?yc(e.previousValue):void 0,changePct:e?.changePercent??null,isLoading:t,isError:n})}function hrs({onClear:e,onRemoveAll:t,onSave:n,onRemoveSaved:r,isLoading:s,filterFields:a,filterTokens:i,onFilterTokensChange:l,autoFocusFilterFieldId:c}){const u=i.length>0,d=i.some(f=>mrs(f,a));return o.jsxs("div",{className:K("grid grid-cols-[1fr_auto] gap-3 items-start"),children:[o.jsx(uTe,{fields:a,tokens:i,onTokensChange:l,disabled:s,autoFocusFieldId:c}),u&&o.jsx(lTe,{disabled:s,onClear:d?e:void 0,onRemoveAll:t,onSave:n,onRemoveSaved:r})]})}function mrs(e,t){const n=t.find(r=>r.id===e.fieldId);return n?n.kind==="text"?typeof e.value=="string"&&e.value.trim()!=="":n.kind==="pick-multi"?n.multi?Array.isArray(e.value)&&e.value.length>0:typeof e.value=="string"&&e.value!==""&&e.value!=="Any":n.kind==="multi-select"?Array.isArray(e.value)&&e.value.length>0:!1:!1}function grs({rows:e,isLoading:t,isError:n,getRowHref:r,actions:s,LinkComponent:a}){const i=!!e&&e.length>0;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Model Usage & Cost",description:"Token consumption by model."}),i&&(()=>{const l=e.reduce((d,f)=>d+(f.cost??0),0),c=new Set;for(const d of e)d.cost!=null&&d.costUnit&&c.add(d.costUnit);let u;return c.size===0?u=l>0?vg(l):"—":c.size===1?u=l>0?vg(l,[...c][0]):"—":u="Mixed",o.jsx(Ut.Summary,{value:u,label:"Total cost"})})(),s?o.jsx(Ut.Actions,{children:s}):null]}),t?o.jsx(Ut.Loading,{}):n?o.jsx(Ut.Error,{message:"Failed to load model usage data"}):o.jsx(Ut.Content,{children:i?o.jsxs(me,{columns:"auto auto auto auto auto auto",...jve,children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{sticky:"start",children:"Model"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Input"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Output"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Cache Read"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Cache Write"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Cost"})]}),e.map(l=>{const c=r?.(l),u=o.jsxs(o.Fragment,{children:[o.jsx(me.RowHeaderCell,{height:"compact",className:"text-ui-sm",children:l.model}),o.jsx(me.NumberCell,{children:l.input}),o.jsx(me.NumberCell,{children:l.output}),o.jsx(me.NumberCell,{children:l.cacheRead}),o.jsx(me.NumberCell,{children:l.cacheWrite}),o.jsx(me.NumberCell,{highlight:!0,children:l.cost!=null?vg(l.cost,l.costUnit):"—"})]});return c?o.jsx(me.RowLink,{to:c,LinkComponent:a,children:u},l.model):o.jsx(me.RowStatic,{children:u},l.model)})]}):o.jsx(Ut.NoData,{message:"No model usage data yet"})})]})}function vrs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","model-usage-cost",n],queryFn:async()=>{const[r,s,a,i]=await Promise.all(["mastra_model_total_input_tokens","mastra_model_total_output_tokens","mastra_model_input_cache_read_tokens","mastra_model_input_cache_write_tokens"].map(d=>e.getMetricBreakdown({name:[d],groupBy:["model"],aggregation:"sum",orderDirection:"DESC",filters:t}))),l=new Map,c=d=>(l.has(d)||l.set(d,{input:0,output:0,cacheRead:0,cacheWrite:0,cost:null,costUnit:null}),l.get(d)),u=(d,f)=>{f.estimatedCost!=null&&(d.cost=(d.cost??0)+f.estimatedCost,f.costUnit&&(d.costUnit=f.costUnit))};for(const d of r.groups){const f=d.dimensions.model??"unknown",p=c(f);p.input=d.value,u(p,d)}for(const d of s.groups){const f=d.dimensions.model??"unknown",p=c(f);p.output=d.value,u(p,d)}for(const d of a.groups){const f=d.dimensions.model??"unknown",p=c(f);p.cacheRead=d.value}for(const d of i.groups){const f=d.dimensions.model??"unknown",p=c(f);p.cacheWrite=d.value}return Array.from(l.entries()).map(([d,f])=>({model:d,input:yc(f.input),output:yc(f.output),cacheRead:yc(f.cacheRead),cacheWrite:yc(f.cacheWrite),cost:f.cost,costUnit:f.costUnit})).sort((d,f)=>d.model.localeCompare(f.model))}})}function yrs(){const{data:e,isLoading:t,isError:n}=vrs(),{getTracesHref:r}=kI(),{Link:s}=yn();return o.jsx(grs,{rows:e,isLoading:t,isError:n,LinkComponent:s,getRowHref:()=>r({rootEntityType:Os.AGENT}),actions:o.jsx(H4,{href:r({rootEntityType:Os.AGENT}),LinkComponent:s})})}function brs(e){return e==="tokens"||e==="cost"}function xrs({data:e,isLoading:t,isError:n,getRowHref:r,actions:s,LinkComponent:a}){const[i,l]=v.useState("tokens"),c=e??[],u=c.length>0,d=c.reduce((b,w)=>b+w.total,0),f=c.filter(b=>b.cost!=null&&b.cost>0),p=new Set(f.map(b=>b.costUnit??"usd")),h=p.size<=1,m=h?[...p][0]??"usd":null,g=h?f.reduce((b,w)=>b+(w.cost??0),0):0,y=h&&g>0;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Token Usage by Agent",description:"Token consumption grouped by agent."}),u&&(i==="cost"&&y?o.jsx(Ut.Summary,{value:vg(g,m),label:"Total cost"}):o.jsx(Ut.Summary,{value:yc(d),label:"Total tokens"})),u&&s?o.jsx(Ut.Actions,{children:s}):null]}),t?o.jsx(Ut.Loading,{}):n?o.jsx(Ut.Error,{message:"Failed to load token usage data"}):o.jsx(Ut.Content,{children:u?o.jsxs(su,{defaultTab:"tokens",value:i,onValueChange:b=>{brs(b)&&l(b)},className:"grid grid-rows-[auto_1fr] overflow-y-auto h-full",children:[o.jsxs(au,{children:[o.jsx(Vr,{value:"tokens",children:"Tokens"}),o.jsx(Vr,{value:"cost",children:"Cost"})]}),o.jsx(ps,{value:"tokens",children:o.jsx(oN,{LinkComponent:a,data:c.map(b=>({name:b.name,values:[b.input,b.output],href:r?.(b)})),segments:[{label:"Input",color:Np.blueDark},{label:"Output",color:Np.blue}],maxVal:Math.max(...c.map(b=>b.input+b.output)),fmt:yc})}),o.jsx(ps,{value:"cost",children:y?o.jsx(oN,{LinkComponent:a,data:f.slice().sort((b,w)=>(w.cost??0)-(b.cost??0)).map(b=>({name:b.name,values:[b.cost],href:r?.(b)})),segments:[{label:"Cost",color:Np.purple}],maxVal:Math.max(...f.map(b=>b.cost??0)),fmt:b=>vg(b,m)}):o.jsx(Ut.NoData,{message:"No cost data yet"})})]}):o.jsx(Ut.NoData,{message:"No token usage data yet"})})]})}function wrs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","token-usage-by-agent",n],queryFn:async()=>{const r={groupBy:["entityName"],aggregation:"sum",orderDirection:"DESC",filters:t},[s,a]=await Promise.all([e.getMetricBreakdown({...r,name:["mastra_model_total_input_tokens"]}),e.getMetricBreakdown({...r,name:["mastra_model_total_output_tokens"]})]),i=new Map,l=u=>(i.has(u)||i.set(u,{input:0,output:0,cost:null,costUnit:null}),i.get(u)),c=(u,d)=>{d.estimatedCost!=null&&(u.cost=(u.cost??0)+d.estimatedCost,d.costUnit&&(u.costUnit=d.costUnit))};for(const u of s.groups){const d=u.dimensions.entityName??"unknown",f=l(d);f.input=u.value,c(f,u)}for(const u of a.groups){const d=u.dimensions.entityName??"unknown",f=l(d);f.output=u.value,c(f,u)}return Array.from(i.entries()).map(([u,d])=>({name:u,input:d.input,output:d.output,total:d.input+d.output,cost:d.cost,costUnit:d.costUnit})).sort((u,d)=>d.total-u.total)}})}function Srs(){const{data:e,isLoading:t,isError:n}=wrs(),{getTracesHref:r}=kI(),{Link:s}=yn();return o.jsx(xrs,{data:e,isLoading:t,isError:n,LinkComponent:s,getRowHref:a=>r({rootEntityType:Os.AGENT,entityName:a.name}),actions:o.jsx(H4,{href:r({rootEntityType:Os.AGENT}),LinkComponent:s})})}function krs(e){return e==="24h"?"1h":"1d"}function Ors(e,t){return t==="1h"?e.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!1}):e.toLocaleDateString("en-US",{month:"short",day:"2-digit"})}function FQe(e,t,n){for(const r of t?.points??[]){const s=new Date(r.timestamp).getTime();if(!Number.isFinite(s))continue;const a=e.get(s)??{tsMs:s,input:0,output:0,cost:null,costUnits:new Set,hasUnknownCostUnit:!1};a[n]+=r.value,r.estimatedCost!=null&&(a.cost=(a.cost??0)+r.estimatedCost,t?.costUnit?a.costUnits.add(t.costUnit):a.hasUnknownCostUnit=!0),e.set(s,a)}}function _rs(e){return e.cost==null||e.hasUnknownCostUnit||e.costUnits.size!==1?null:[...e.costUnits][0]??null}function Crs(){const e=We(),{datePreset:t,filters:n,filterKey:r}=Cm(),s=krs(t);return wt({queryKey:["metrics","token-usage-timeseries",r,s],queryFn:async()=>{const[a,i]=await Promise.all([e.getMetricTimeSeries({name:["mastra_model_total_input_tokens"],interval:s,aggregation:"sum",filters:n}),e.getMetricTimeSeries({name:["mastra_model_total_output_tokens"],interval:s,aggregation:"sum",filters:n})]),l=new Map;return FQe(l,a.series[0],"input"),FQe(l,i.series[0],"output"),{data:Array.from(l.values()).sort((u,d)=>u.tsMs-d.tsMs).map(u=>{const d=new Date(u.tsMs);return{time:Ors(d,s),tsMs:u.tsMs,input:u.input,output:u.output,total:u.input+u.output,cost:u.cost,costUnit:_rs(u)}}),interval:s}}})}function Ers(){const{data:e,isLoading:t,isError:n}=Crs(),{getTracesHref:r}=kI(),{Link:s}=yn();return o.jsx(QQr,{data:e?.data,interval:e?.interval,isLoading:t,isError:n,actions:o.jsx(H4,{href:r(),LinkComponent:s})})}function Jre({data:e,rowHrefs:t,errorHrefs:n,LinkComponent:r}){return o.jsx(oN,{LinkComponent:r,data:e.map(s=>{const a=n?.(s),i=t?.(s);return a?{name:s.name,values:[s.completed,s.errors],hrefs:[i,a]}:{name:s.name,values:[s.completed,s.errors],href:i}}),segments:[{label:"Completed",color:Np.blueDark},{label:"Errors",color:Np.pink}],maxVal:Math.max(...e.map(s=>s.completed+s.errors)),fmt:yc})}function jrs({data:e,isLoading:t,isError:n,getRowHref:r,getErrorSegmentHref:s,actions:a,LinkComponent:i}){const[l,c]=v.useState("agents"),u=typeof a=="function"?a(l):a,d=!!e&&(e.agentData.length>0||e.workflowData.length>0||e.toolData.length>0),f=e?[...e.agentData,...e.workflowData,...e.toolData].reduce((m,g)=>m+g.completed+g.errors,0):0,p=m=>r?g=>r(m,g):void 0,h=m=>s?g=>s(m,g):void 0;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Trace Volume",description:"Runs and call counts."}),d&&o.jsx(Ut.Summary,{value:yc(f),label:"Total runs"}),u?o.jsx(Ut.Actions,{children:u}):null]}),t?o.jsx(Ut.Loading,{}):n?o.jsx(Ut.Error,{message:"Failed to load trace volume data"}):o.jsx(Ut.Content,{children:d?o.jsxs(su,{value:l,onValueChange:c,defaultTab:"agents",className:"grid grid-rows-[auto_1fr] overflow-y-auto h-full",children:[o.jsxs(au,{children:[o.jsx(Vr,{value:"agents",children:"Agents"}),o.jsx(Vr,{value:"workflows",children:"Workflows"}),o.jsx(Vr,{value:"tools",children:"Tools"})]}),o.jsx(ps,{value:"agents",children:e.agentData.length>0?o.jsx(Jre,{data:e.agentData,rowHrefs:p("agents"),errorHrefs:h("agents"),LinkComponent:i}):o.jsx(Ut.NoData,{message:"No agent data yet"})}),o.jsx(ps,{value:"workflows",children:e.workflowData.length>0?o.jsx(Jre,{data:e.workflowData,rowHrefs:p("workflows"),errorHrefs:h("workflows"),LinkComponent:i}):o.jsx(Ut.NoData,{message:"No workflow data yet"})}),o.jsx(ps,{value:"tools",children:e.toolData.length>0?o.jsx(Jre,{data:e.toolData,rowHrefs:p("tools"),errorHrefs:h("tools"),LinkComponent:i}):o.jsx(Ut.NoData,{message:"No tool data yet"})})]}):o.jsx(Ut.NoData,{message:"No trace volume data yet"})})]})}async function ese(e,t,n){const r=await e.getMetricBreakdown({name:[t],groupBy:["entityName","status"],aggregation:"count",orderDirection:"DESC",filters:n}),s=new Map;for(const a of r.groups){const i=a.dimensions.entityName??"unknown",l=a.dimensions.status??"ok";s.has(i)||s.set(i,{completed:0,errors:0});const c=s.get(i);l==="error"?c.errors+=a.value:c.completed+=a.value}return Array.from(s.entries()).map(([a,i])=>({name:a,...i})).sort((a,i)=>i.completed+i.errors-(a.completed+a.errors))}function Trs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","trace-volume",n],queryFn:async()=>{const[r,s,a]=await Promise.all([ese(e,"mastra_agent_duration_ms",t),ese(e,"mastra_workflow_duration_ms",t),ese(e,"mastra_tool_duration_ms",t)]);return{agentData:r,workflowData:s,toolData:a}}})}const t9={agents:Os.AGENT,workflows:Os.WORKFLOW_RUN,tools:Os.TOOL};function Nrs(){const{data:e,isLoading:t,isError:n}=Trs(),{getTracesHref:r,getLogsHref:s}=kI(),{Link:a}=yn();return o.jsx(jrs,{data:e,isLoading:t,isError:n,LinkComponent:a,getRowHref:(i,l)=>r({rootEntityType:t9[i],entityName:l.name}),getErrorSegmentHref:(i,l)=>l.errors>0?s({rootEntityType:t9[i],entityName:l.name,status:"error"}):void 0,actions:i=>o.jsxs(o.Fragment,{children:[o.jsx(H4,{href:r({rootEntityType:t9[i]}),LinkComponent:a}),o.jsx(Gns,{href:s({rootEntityType:t9[i],status:"error"}),LinkComponent:a})]})})}const Irs=new Set(["ObservabilityStorageClickhouseVNext","ObservabilityStorageDuckDB","ObservabilityInMemory","ObservabilitySpanner","ObservabilityStoragePostgresVNext"]),tse="period",n9="dateFrom",r9="dateTo";function Ars(){const[e,t]=ji(),n=e.get(tse),r=UQr(n)?n:"24h",s=v.useMemo(()=>{if(r!=="custom")return;const d=h=>{if(!h)return;const m=new Date(h);return Number.isNaN(m.getTime())?void 0:m},f=d(e.get(n9)),p=d(e.get(r9));if(!(!f&&!p))return{from:f,to:p}},[r,e.toString()]),a=v.useMemo(()=>$Qr(e),[e.toString()]),i=v.useCallback(d=>{t(f=>{const p=new URLSearchParams(f);return d==="24h"?p.delete(tse):p.set(tse,d),d!=="custom"&&(p.delete(n9),p.delete(r9)),p},{replace:!0})},[t]),l=v.useCallback(d=>{t(f=>{const p=new URLSearchParams(f);return d?.from?p.set(n9,d.from.toISOString()):p.delete(n9),d?.to?p.set(r9,d.to.toISOString()):p.delete(r9),p},{replace:!0})},[t]),c=v.useCallback(d=>{t(f=>{const p=new URLSearchParams(f);return DQr(p,d),p},{replace:!0})},[t]),u=v.useRef(!1);return v.useEffect(()=>{if(u.current||(u.current=!0,RQr(e)))return;const d=W6t();d&&t(f=>{const p=new URLSearchParams(f);for(const[h,m]of d)p.append(h,m);return p},{replace:!0})},[]),o.jsx(VQr,{preset:r,filterTokens:a,onPresetChange:i,onFilterTokensChange:c,customRange:s,onCustomRangeChange:l,children:o.jsx(Rrs,{})})}function Rrs(){const[e]=ji(),{error:t,isLoading:n}=T8t(),{filterTokens:r,setFilterTokens:s}=qZ(),[a,i]=v.useState(),{data:l,isLoading:c}=L4(),u=l?.observabilityStorageType,d=u?Irs.has(u):!1,f=u==="ObservabilityInMemory",{data:p,isLoading:h}=gTe(),{data:m,isLoading:g}=pTe(),{data:y,isLoading:b}=mTe(),{data:w,isLoading:S}=hTe(),k=v.useMemo(()=>PQr({availableTags:p??[],availableEntityNames:m??[],availableServiceNames:y??[],availableEnvironments:w??[],loading:{tags:h,entityNames:g,serviceNames:b,environments:S}}),[p,m,y,w,h,g,b,S]),[_,C]=v.useState(()=>W6t()!==null),E=v.useCallback(()=>{IQr(e),C(!0),De.success("Filters setting for Metrics saved")},[e]),j=v.useCallback(()=>{AQr(),C(!1),De.success("Filters setting for Metrics cleared up")},[]),N=v.useCallback(()=>{s([])},[s]),I=v.useCallback(()=>{const P=r.map($=>{const F=k.find(D=>D.id===$.fieldId);return F?F.kind==="text"?{fieldId:$.fieldId,value:""}:F.kind==="pick-multi"?F.multi?{fieldId:$.fieldId,value:[]}:{fieldId:$.fieldId,value:"Any"}:F.kind==="multi-select"?{fieldId:$.fieldId,value:[]}:$:$});s(P)},[k,r,s]);return t&&gs(t)?o.jsx(lr,{children:o.jsx(Vs,{})}):t&&ys(t)?o.jsx(lr,{children:o.jsx(Ds,{resource:"metrics"})}):t?o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load metrics",message:t.message})}):o.jsxs(Lt,{width:"wide",height:"full",children:[o.jsxs(Lt.TopArea,{children:[o.jsx(Lt.Row,{children:o.jsxs(Lt.Column,{className:"flex flex-wrap items-start justify-start gap-2",children:[o.jsx(Wns,{}),o.jsx(dTe,{fields:k,tokens:r,onTokensChange:s,disabled:n,onStartTextFilter:i})]})}),o.jsx(hrs,{isLoading:n,filterFields:k,filterTokens:r,onFilterTokensChange:s,onClear:I,onRemoveAll:N,onSave:E,onRemoveSaved:_?j:void 0,autoFocusFilterFieldId:a})]}),c?null:d?o.jsxs("div",{className:"grid gap-8 content-start pb-10",children:[f&&o.jsx(In,{variant:"info",title:"Metrics are not persisted",children:o.jsx(In.Message,{children:"This project uses in-memory storage for observability. Metrics will be lost on every server restart. For persistent metrics, switch the observability storage to ClickHouse, DuckDB, Postgres v-next, or Spanner."})}),o.jsxs($ve,{children:[o.jsx(crs,{}),o.jsx(urs,{}),o.jsx(drs,{}),o.jsx(frs,{}),o.jsx(prs,{})]}),o.jsxs($ve,{children:[o.jsx(yrs,{}),o.jsx(Srs,{}),o.jsx(Ers,{}),o.jsx(srs,{}),o.jsx(Nrs,{}),o.jsx(Jns,{})]})]}):o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Lr,{iconSlot:o.jsx(xf,{}),titleSlot:"Metrics are not available with your current storage",descriptionSlot:"Metrics require ClickHouse, DuckDB, Postgres v-next, Spanner, or in-memory storage for observability. Other relational databases (LibSQL, MSSQL) and document stores (MongoDB) do not support metrics collection. To enable metrics on an existing project, switch the observability storage in the Mastra configuration.",actionSlot:o.jsxs(de,{variant:"ghost",as:"a",href:"https://mastra.ai/docs/observability/metrics/overview",target:"_blank",rel:"noopener noreferrer",children:["Metrics Documentation ",o.jsx(Pa,{})]})})})]})}function Prs(){const{paths:e}=yn(),{data:t,isLoading:n,error:r}=YLt(),{isCmsAvailable:s}=xI(),[a,i]=v.useState(""),l=t?.promptBlocks??[];return r&&gs(r)?o.jsx(lr,{children:o.jsx(Vs,{})}):r&&ys(r)?o.jsx(lr,{children:o.jsx(Ds,{resource:"prompt blocks"})}):r?o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load prompt blocks",message:r.message})}):l.length===0&&!n?o.jsx(lr,{children:o.jsx(MZr,{})}):o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsxs(Lt.Row,{align:"center",stack:"responsive",children:[o.jsx("div",{className:"max-w-120 flex-1",children:o.jsx(Of,{onSearch:i,label:"Filter prompts",placeholder:"Filter by name or description"})}),s&&o.jsxs(de,{as:ci,to:e.cmsPromptBlockCreateLink(),variant:"primary",className:"shrink-0",children:[o.jsx(Fr,{}),"Create Prompt"]})]})}),o.jsx($Zr,{promptBlocks:l,isLoading:n,search:a})]})}function $rs(){return o.jsx(Lt,{width:"narrow",children:o.jsx(Lt.MainArea,{children:o.jsx(Vzr,{children:o.jsx(ave,{})})})})}const Mrs=[{title:"Mastra APIs",description:"Explore and test the available REST API endpoints with the interactive Swagger UI.",icon:Icn,href:"/swagger-ui",external:!1},{title:"Documentation",description:"Read the official Mastra documentation for guides, references, and tutorials.",icon:Slt,href:"https://mastra.ai/en/docs",external:!0},{title:"Github",description:"Browse the source code, report issues, and contribute to the Mastra project.",icon:Pa,href:"https://github.com/mastra-ai/mastra",external:!0},{title:"Community",description:"Join the Mastra Discord community for help, discussion, and collaboration.",icon:Hj,href:"https://discord.gg/BTYqqHKUrf",external:!0},{title:"Share with your team",description:"Running Mastra Studio locally? Deploy to the cloud so your team can collaborate.",icon:Nlt,href:"https://mastra.ai/cloud",external:!0},{title:"Talk to our Sales team",description:"Get a custom demo, discuss on-prem deployments, and how we can help you accelerate getting agents into production.",icon:klt,href:"https://mastra.ai/contact?ref=studio",external:!0}];function Drs(){return o.jsx(Lt,{width:"narrow",children:o.jsx(Lt.MainArea,{children:o.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4 max-w-3xl",children:Mrs.map(e=>o.jsxs("a",{href:e.href,...e.external?{target:"_blank",rel:"noreferrer"}:{},className:"group flex flex-col gap-3 rounded-lg border border-border1 bg-surface2 p-5 transition-colors hover:border-accent1 hover:bg-surface3",children:[o.jsxs("div",{className:"flex items-center gap-2.5",children:[o.jsx(e.icon,{className:"h-5 w-5 text-icon3 group-hover:text-accent1 transition-colors"}),o.jsx("span",{className:"text-ui-md font-medium text-text1",children:e.title}),e.external&&o.jsx(Pa,{className:"h-3.5 w-3.5 text-icon3 ml-auto opacity-0 group-hover:opacity-100 transition-opacity"})]}),o.jsx("p",{className:"text-ui-sm text-text3 leading-relaxed",children:e.description})]},e.href))})})})}function Lrs(){const{data:e={},isLoading:t,error:n}=th(),[r,s]=v.useState(""),[a,i]=v.useState("all");if(n&&gs(n))return o.jsx(lr,{children:o.jsx(Vs,{})});if(n&&ys(n))return o.jsx(lr,{children:o.jsx(Ds,{resource:"scorers"})});if(n)return o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load scorers",message:n.message})});if(Object.keys(e).length===0&&!t)return o.jsx(lr,{children:o.jsx(UHr,{})});const l=a!=="all"||r!=="",c=()=>{s(""),i("all")};return o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsx(YHr,{search:r,onSearchChange:s,sourceFilter:a,onSourceFilterChange:i,onReset:c,hasActiveFilters:l})}),o.jsx(BHr,{scorers:e,isLoading:t,search:r,sourceFilter:a})]})}function Frs(){const{scorerId:e}=dr(),[t,n]=ji(),r=t.get("scoreId")??void 0,[s,a]=v.useState(r),[i,l]=v.useState({value:"all",label:"All Entities",type:"ALL"}),{scorer:c,error:u}=yHr(e),{data:d={},isLoading:f,error:p}=Sm(),{isLoading:h,error:m}=By(),{data:g=[],isLoading:y,error:b,isFetchingNextPage:w,hasNextPage:S,setEndOfListElement:k}=vHr({scorerId:e,entityId:i?.value==="all"?void 0:i?.value,entityType:i?.type==="ALL"?void 0:i?.type}),_=v.useMemo(()=>c?.agentIds?.filter(z=>d[z]).map(z=>({value:z,label:d[z].name,type:"AGENT"}))||[],[c?.agentIds,d]),C=v.useMemo(()=>c?.workflowIds?.map(z=>({value:z,label:z,type:"WORKFLOW"}))||[],[c?.workflowIds]),E=v.useMemo(()=>[{value:"all",label:"All Entities",type:"ALL"},..._,...C],[_,C]),j=t.get("entity")??"all",N=E.find(z=>z.value===j);N&&N.value!==i?.value&&l(N),v.useEffect(()=>{if(u){const z=u instanceof Error?u.message:"Failed to load scorer";De.error(`Error loading scorer: ${z}`)}},[u]),v.useEffect(()=>{if(p){const z=p instanceof Error?p.message:"Failed to load agents";De.error(`Error loading agents: ${z}`)}},[p]),v.useEffect(()=>{if(m){const z=m instanceof Error?m.message:"Failed to load workflows";De.error(`Error loading workflows: ${z}`)}},[m]);const I=z=>{z?.value&&n(M=>{const G=new URLSearchParams(M);return G.set("entity",z.value),G})};v.useEffect(()=>{const z=t.get("scoreId")??void 0;if(z===s)return;if(!z){a(void 0);return}g.find(G=>G.id===z)&&a(z)},[t,g]);const P=v.useCallback(z=>{a(z||void 0),n(M=>{const G=new URLSearchParams(M);return z?G.set("scoreId",z):G.delete("scoreId"),G})},[n]);if(!c)return null;const $=gs(u)||gs(p)||gs(m),F=u&&ys(u),D=!$&&!F&&(u||p||m),V=!y&&g.length===0,W=i?.value!=="all",L=c?.scorer?.source==="stored"?o.jsx(Ty,{owner:"scorer-detail",children:o.jsxs(de,{variant:"default",as:ci,to:`/cms/scorers/${e}/edit`,size:"sm",children:[o.jsx(tm,{})," Edit"]})}):null;if($||F||D||V&&!W){const z=(u instanceof Error?u.message:void 0)??(p instanceof Error?p.message:void 0)??(m instanceof Error?m.message:void 0)??"An unexpected error occurred";return o.jsxs(Lt,{width:"wide",height:"full",children:[L,o.jsx(Lt.MainArea,{isCentered:!0,children:$?o.jsx(Vs,{}):F?o.jsx(Ds,{resource:"scorers"}):D?o.jsx(Fi,{title:"Failed to load scorer",message:z}):o.jsx(fHr,{})})]})}return o.jsxs(Lt,{width:"wide",children:[L,o.jsx(Lt.TopArea,{children:o.jsx(pHr,{selectedEntity:i,entityOptions:E,onEntityChange:I,onReset:()=>{n(z=>{const M=new URLSearchParams(z);return M.set("entity","all"),M})},isLoading:y||f||h})}),o.jsx(dHr,{scores:g,isLoading:y,selectedScoreId:s,isFetchingNextPage:w,hasNextPage:S,setEndOfListElement:k,onScoreClick:P,errorMsg:b?.message})]})}function zrs({label:e,description:t,htmlFor:n,className:r,children:s}){return o.jsxs("div",{className:K("flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",r),"data-slot":"settings-row",children:[o.jsxs("div",{children:[n?o.jsx(Rt,{htmlFor:n,className:"text-sm font-medium",children:e}):o.jsx("p",{className:"text-sm font-medium",children:e}),t&&o.jsx("p",{className:"text-sm text-neutral3",children:t})]}),s]})}const R8t=[{value:"dark",label:"Dark",Icon:idn},{value:"light",label:"Light",Icon:mfn},{value:"system",label:"System",Icon:zlt}],Brs=e=>R8t.some(t=>t.value===e);function Urs({option:e}){const{Icon:t}=e;return o.jsxs("span",{className:"inline-flex min-w-0 max-w-full items-center gap-2",children:[o.jsx(t,{"aria-hidden":"true",className:"h-4 w-4 shrink-0 opacity-70"}),o.jsx("span",{className:"min-w-0 truncate",children:e.label})]})}const qrs=()=>{const{baseUrl:e,headers:t,apiPrefix:n}=Dxe(),{theme:r,setTheme:s}=TN();return o.jsx(Lt,{width:"narrow",children:o.jsxs(Lt.MainArea,{className:"flex flex-col gap-5 mt-6",children:[o.jsx(zge,{title:"Theme",description:"Customize the appearance of the studio.",children:o.jsx(zrs,{label:"Theme mode",htmlFor:"theme",children:o.jsxs(xa,{value:r,onValueChange:a=>{Brs(a)&&s(a)},children:[o.jsx(Sa,{id:"theme",className:"w-full sm:w-48",children:o.jsx(wa,{className:"inline-flex min-w-0 max-w-full items-center"})}),o.jsx(ka,{children:R8t.map(a=>o.jsx(qr,{value:a.value,children:o.jsx(Urs,{option:a})},a.value))})]})})}),o.jsx(zge,{title:"Mastra Connection",description:"Configure the Mastra instance URL, API prefix, and request headers used by the studio.",children:o.jsx(vLt,{initialConfig:{baseUrl:e,headers:t,apiPrefix:n}})})]})})};function Vrs(){const[e]=ji(),t=bs(),n=e.get("redirect")||"/",r=()=>{n.startsWith("http")?window.location.href=n:t(n,{replace:!0})};return o.jsx(j8t,{redirectUri:n,onSuccess:r,initialMode:"signup"})}const P8t=e=>o.jsxs("svg",{width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[o.jsx("g",{clipPath:"url(#clip0_21999_22095)",children:o.jsx("path",{d:"M7.5 0.75C3.6325 0.75 0.5 3.8825 0.5 7.75C0.5 10.8475 2.50375 13.4637 5.28625 14.3912C5.63625 14.4525 5.7675 14.2425 5.7675 14.0587C5.7675 13.8925 5.75875 13.3412 5.75875 12.755C4 13.0787 3.545 12.3262 3.405 11.9325C3.32625 11.7312 2.985 11.11 2.6875 10.9437C2.4425 10.8125 2.0925 10.4887 2.67875 10.48C3.23 10.4712 3.62375 10.9875 3.755 11.1975C4.385 12.2562 5.39125 11.9587 5.79375 11.775C5.855 11.32 6.03875 11.0137 6.24 10.8387C4.6825 10.6637 3.055 10.06 3.055 7.3825C3.055 6.62125 3.32625 5.99125 3.7725 5.50125C3.7025 5.32625 3.4575 4.60875 3.8425 3.64625C3.8425 3.64625 4.42875 3.4625 5.7675 4.36375C6.3275 4.20625 6.9225 4.1275 7.5175 4.1275C8.1125 4.1275 8.7075 4.20625 9.2675 4.36375C10.6062 3.45375 11.1925 3.64625 11.1925 3.64625C11.5775 4.60875 11.3325 5.32625 11.2625 5.50125C11.7087 5.99125 11.98 6.6125 11.98 7.3825C11.98 10.0687 10.3438 10.6637 8.78625 10.8387C9.04 11.0575 9.25875 11.4775 9.25875 12.1337C9.25875 13.07 9.25 13.8225 9.25 14.0587C9.25 14.2425 9.38125 14.4612 9.73125 14.3912C11.1209 13.9221 12.3284 13.029 13.1839 11.8377C14.0393 10.6463 14.4996 9.21668 14.5 7.75C14.5 3.8825 11.3675 0.75 7.5 0.75Z",fill:"currentColor"})}),o.jsx("defs",{children:o.jsx("clipPath",{id:"clip0_21999_22095",children:o.jsx("rect",{width:"14",height:"14",fill:"currentColor",transform:"translate(0.5 0.75)"})})})]});function Hrs(e){return e.replace(/\/$/,"").split("/").pop()}function ZZ({children:e,className:t}){return o.jsx("div",{className:K("border border-border1 rounded-lg mt-12 py-8 lg:min-h-[25rem] transition-height px-4 lg:px-12",t),children:e})}function Wrs({templates:e,linkComponent:t,className:n,isLoading:r}){const s=t||"a";return r?o.jsx("div",{className:K("grid gap-y-4",n),children:Array.from({length:5}).map((a,i)=>o.jsx("div",{className:"h-16 bg-surface3 animate-pulse rounded-lg"},i))}):o.jsx("div",{className:K("grid gap-y-4",n),children:e.map(a=>{const i=a?.agents||a?.tools||a?.networks||a?.workflows||a?.mcp;return o.jsxs("article",{className:K("border border-border1 rounded-lg overflow-hidden w-full grid grid-cols-[1fr_auto] bg-surface3 transition-colors hover:bg-surface4"),children:[o.jsxs(s,{to:`/templates/${a.slug}`,className:K("grid [&:hover_p]:text-neutral5",{"grid-cols-[8rem_1fr] lg:grid-cols-[12rem_1fr]":a.imageURL}),children:[a.imageURL&&o.jsx("div",{className:K("overflow-hidden"),children:o.jsx("div",{className:"w-full h-full bg-cover thumb transition-scale duration-150",style:{backgroundImage:`url(${a.imageURL})`}})}),o.jsxs("div",{className:K("grid py-3 px-6 w-full gap-0.5","[&_svg]:w-[1em] [&_svg]:h-[1em] [&_svg]:text-neutral3"),children:[o.jsx("h2",{className:"text-ui-lg text-neutral5",children:a.title}),o.jsx("p",{className:"text-ui-md text-neutral4 transition-colors duration-500",children:a.description}),o.jsxs("div",{className:"hidden 2xl:flex text-neutral3 text-ui-md flex-wrap items-center gap-4 mt-3",children:[i&&o.jsxs("ul",{className:K("flex gap-4 text-ui-md text-neutral3 m-0 p-0 list-none","[&>li]:flex [&>li]:items-center [&>li]:gap-0.5 text-neutral4"),children:[a?.agents&&a.agents.length>0&&o.jsxs("li",{children:[o.jsx(rl,{})," ",a.agents.length]}),a?.tools&&a.tools.length>0&&o.jsxs("li",{children:[o.jsx(Qp,{})," ",a.tools.length]}),a?.networks&&a.networks.length>0&&o.jsxs("li",{children:[o.jsx(Blt,{})," ",a.networks.length]}),a?.workflows&&a.workflows.length>0&&o.jsxs("li",{children:[o.jsx(iq,{})," ",a.workflows.length]}),a?.mcp&&a.mcp.length>0&&o.jsxs("li",{children:[o.jsx(D_,{})," ",a.mcp.length]})]}),i&&a.supportedProviders&&o.jsx("small",{children:"|"}),o.jsx("div",{className:"flex items-center text-neutral3 gap-4",children:a.supportedProviders.map(l=>o.jsx("span",{className:"",children:l},l))})]})]})]}),o.jsx("a",{href:a.githubUrl,className:K("group items-center gap-2 text-ui-md ml-auto pr-4 hidden","lg:flex"),target:"_blank",rel:"noopener noreferrer",children:o.jsxs("span",{className:"flex items-center gap-2 px-2 py-1 rounded bg-surface1 group-hover:bg-surface2 text-neutral3 transition-colors group-hover:text-neutral5",children:[o.jsx(P8t,{})," ",Hrs(a.githubUrl)]})})]},a.slug)})})}function Zrs({tagOptions:e,selectedTag:t,providerOptions:n,selectedProvider:r,onTagChange:s,onProviderChange:a,searchTerm:i,onSearchChange:l,onReset:c,className:u,isLoading:d}){return d?o.jsxs("div",{className:K("h-[6.5rem] flex items-center gap-8","[&>div]:bg-surface3 [&>div]:w-48 [&>div]:h-8 [&>div]:animate-pulse",u),children:[o.jsx("div",{})," ",o.jsx("div",{})," ",o.jsx("div",{})]}):o.jsxs("div",{className:K("flex flex-wrap mx-auto sticky top-0 gap-4 bg-surface2 py-8",u),children:[o.jsx(DT,{name:"search-templates",label:"Search templates",labelIsHidden:!0,value:i,onChange:f=>l?.(f.target.value),placeholder:"Search Template"}),o.jsx(xc,{label:"Filter by tag",labelIsHidden:!0,name:"filter-tag",value:t,onValueChange:s,options:e}),o.jsx(xc,{label:"Filter by provider",labelIsHidden:!0,name:"filter-provider",value:r,onValueChange:a,options:n}),c&&o.jsxs(de,{onClick:c,children:["Reset ",o.jsx(vs,{})]})]})}function Grs(){const{data:e,isLoading:t}=tYn(),{templates:n,tags:r,providers:s}=e??{templates:[],tags:[],providers:[]},[a,i]=v.useState("all"),[l,c]=v.useState("all"),[u,d]=v.useState(""),f=[{value:"all",label:"Any tag"}];(r||[]).forEach(w=>{f.push({value:w,label:w})});const p=[{value:"all",label:"Any provider"}];(s||[]).forEach(w=>{p.push({value:w,label:w})});const h=(w,S)=>{S==="tag"?i(w):S==="provider"&&c(w)},m=w=>{d(w)},g=()=>{i("all"),c("all"),d("")},y=n.filter(w=>!(u&&!w.title.toLowerCase().includes(u)&&!w.description.toLowerCase().includes(u)||a!=="all"&&!w.tags.includes(a)||l!=="all"&&!w.supportedProviders.includes(l))),b=u||a!=="all"||l!=="all";return o.jsxs(cs,{children:[o.jsx(Gxe,{children:o.jsxs(Npt,{children:[o.jsx(Ue,{children:o.jsx(Hv,{})}),"Templates"]})}),o.jsxs("div",{className:K("overflow-y-auto w-full h-full px-8 pb-12 z-10"),children:[o.jsx(Zrs,{selectedTag:a,onTagChange:w=>h(w,"tag"),tagOptions:f,selectedProvider:l,onProviderChange:w=>h(w,"provider"),providerOptions:p,searchTerm:u,onSearchChange:m,onReset:b?g:void 0,className:"max-w-[80rem]",isLoading:t}),o.jsx(Wrs,{templates:y,linkComponent:ci,className:"max-w-[80rem] mx-auto",isLoading:t})]})]})}const Qrs="1.48.1-alpha.0";function Yrs({errorMsg:e,validationErrors:t}){const n=typeof e=="string"?e:e!=null?String(e):void 0,r=n?.includes("Invalid schema for function"),s=n?.includes("validation issue")||t&&t.length>0,a=()=>s?"Template installation completed but some validation issues remain. The template may still be functional, but you should review and fix these issues.":r?"There was an issue with the AI model configuration. This may be related to the selected model or AI SDK version compatibility.":"An unexpected error occurred during template installation.",i=()=>s?{icon:o.jsx(kp,{className:"text-yellow-500"}),title:"Template Installed with Warnings"}:{icon:o.jsx(iun,{}),title:"Template Installation Failed"},{icon:l,title:c}=i();return o.jsxs(ZZ,{className:"space-y-4 text-neutral3 mb-8 content-center",children:[o.jsxs("div",{className:K("grid items-center justify-items-center gap-4 content-center","[&>svg]:w-8 [&>svg]:h-8"),children:[l,o.jsxs("div",{className:"text-center space-y-2",children:[o.jsx("p",{className:"text-ui-md font-medium text-neutral5",children:c}),o.jsx("p",{className:"text-ui-md text-neutral3",children:a()})]})]}),t&&t.length>0&&o.jsxs("details",{className:"text-xs",children:[o.jsxs("summary",{className:"cursor-pointer text-neutral3 hover:text-neutral4 select-none text-center",children:["Show Validation Issues (",t.length,")"]}),o.jsx("div",{className:"mt-4 p-3 bg-gray-100 dark:bg-gray-800 rounded text-xs overflow-auto max-h-60 text-left space-y-2",children:t.map((u,d)=>o.jsxs("div",{className:"border-l-2 border-red-400 pl-2",children:[o.jsx("div",{className:"font-medium text-red-600 dark:text-red-400",children:u.type==="typescript"?"🔴 TypeScript Error":"⚠️ Lint Error"}),o.jsx("div",{className:"text-xs font-mono text-gray-700 dark:text-gray-300 mt-1 whitespace-pre-wrap wrap-break-word",children:u.message})]},d))})]}),n&&!s&&o.jsxs("details",{className:"text-xs",children:[o.jsx("summary",{className:"cursor-pointer text-neutral3 hover:text-neutral4 select-none text-center",children:"Show Details"}),o.jsx("div",{className:"mt-4 p-3 bg-gray-100 dark:bg-gray-800 rounded text-xs font-mono overflow-auto max-h-60 text-left",children:o.jsx("div",{className:"whitespace-pre-wrap wrap-break-word",children:n})})]})]})}function Xrs({providerOptions:e,selectedProvider:t,onProviderChange:n,variables:r,errors:s,handleInstallTemplate:a,handleVariableChange:i,isLoadingEnvVars:l,isInstalling:c,defaultModelProvider:u,defaultModelId:d,onModelUpdate:f}){return o.jsx(ZZ,{children:o.jsxs("div",{className:"max-w-[40rem] my-4 p-4 lg:p-8 mx-auto gap-8 grid",children:[o.jsxs("h2",{className:K("text-neutral4 text-header-sm font-semibold flex items-center gap-2","[&>svg]:w-[1.2em] [&_svg]:h-[1.2em] [&_svg]:opacity-70"),children:["Install Template ",o.jsx(Ult,{})]}),o.jsx(xc,{name:"template-provider",options:e,label:"Template AI Model Provider",onValueChange:n,value:t,placeholder:"Select",layout:"horizontal"}),t&&Object.entries(r||{}).length>0&&o.jsxs(o.Fragment,{children:[o.jsx("h3",{className:"text-neutral3 text-ui-md",children:"Set required Environmental Variables"}),o.jsx("div",{className:"grid grid-cols-[1fr_1fr] gap-4 items-start",children:l?o.jsxs("div",{className:K("flex items-center justify-center col-span-2 text-neutral3 text-ui-sm gap-4","[&_svg]:opacity-50 [&_svg]:w-[1.1em] [&_svg]:h-[1.1em]","animate-in fade-in duration-300"),children:[o.jsx(Qt,{})," Loading variables..."]}):Object.entries(r).map(([p,h])=>o.jsxs(v.Fragment,{children:[o.jsx(fO,{name:`env-${p}`,labelIsHidden:!0,label:"Key",value:p,disabled:!0,className:"w-full"}),o.jsx(fO,{name:p,labelIsHidden:!0,label:"Value",value:h,onChange:i,errorMsg:s.includes(p)?"Value is required.":"",autoComplete:"off",className:"w-full"})]},p))}),o.jsxs("div",{className:"border-t border-border1 pt-12 mt-3.5 relative",children:[o.jsx("div",{className:"absolute w-8 h-8 rounded-full bg-surface2 top-0 left-1/2 -translate-x-1/2 -translate-y-4 text-ui-sm text-neutral3 flex items-center justify-center",children:"And"}),o.jsx("h3",{className:"text-neutral4 text-ui-lg",children:"Set AI Model for Template Installation"}),o.jsx("p",{className:"text-neutral3 text-ui-md mt-2 mb-8",children:"This model will be used by the workflow to process and install the template"}),o.jsx(gLt,{defaultProvider:u||"",defaultModel:d||"",updateModel:f||(()=>Promise.resolve({message:"Updated"})),closeEditor:()=>{},autoSave:!0,selectProviderPlaceholder:"Provider"})]})]}),t&&!l&&o.jsx(de,{className:K("flex items-center gap-2 mt-4 justify-center text-ui-md w-full bg-surface5 min-h-10 rounded-lg text-neutral5 hover:bg-surface6 transition-colors","[&>svg]:w-[1.1em] [&_svg]:h-[1.1em] [&_svg]:text-neutral5"),onClick:a,disabled:!t||!u||!d||s.length>0||c,children:c?o.jsxs(o.Fragment,{children:[o.jsx(Qt,{className:"w-4 h-4"})," Installing..."]}):o.jsxs(o.Fragment,{children:["Install ",o.jsx(hm,{})]})})]})})}function Krs({title:e,description:t,githubUrl:n,isLoading:r,infoData:s,templateSlug:a}){const i=a?`feat/install-template-${a}`:"feat/install-template-[slug]";return o.jsxs(o.Fragment,{children:[o.jsx("div",{className:K("grid mt-8 items-center"),children:o.jsxs("div",{className:K("text-header-lg flex items-center gap-3","[&>svg]:w-[1.2em] [&>svg]:h-[1.2em] [&>svg]:opacity-50",{"[&>svg]:opacity-20":r}),children:[o.jsx(Hv,{}),o.jsx("h2",{className:K({"bg-surface4 flex rounded-lg min-w-[50%]":r}),children:r?o.jsx(o.Fragment,{children:" "}):e})]})}),o.jsxs("div",{className:"grid lg:grid-cols-[1fr_1fr] gap-x-24",children:[o.jsxs("div",{className:"grid",children:[o.jsx("p",{className:K("mb-4 text-ui-md text-neutral4 mt-2 leading-7",{"bg-surface4 rounded-lg ":r}),children:r?o.jsx(o.Fragment,{children:" "}):t}),!r&&a&&o.jsxs("div",{className:K("bg-surface2 border border-surface4 rounded-lg p-4 mb-4","flex items-start gap-3"),children:[o.jsx("div",{className:"shrink-0 mt-0.5",children:o.jsx(Mx,{className:"w-[1.1em] h-[1.1em] text-blue-500"})}),o.jsxs("div",{className:"flex-1 space-y-2",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(Qye,{className:"w-[1em] h-[1em] text-neutral4"}),o.jsx("span",{className:"text-ui-md font-medium text-neutral5",children:"A new Git branch will be created"})]}),o.jsxs("div",{className:"text-ui-sm text-neutral4 space-y-1",children:[o.jsxs("div",{children:[o.jsx("span",{className:"font-medium",children:"Branch name:"})," ",o.jsx("code",{className:"bg-surface3 px-1.5 py-0.5 rounded text-ui-sm font-mono",children:i})]}),o.jsx("div",{children:"This ensures safe installation with easy rollback if needed. Your main branch remains unchanged."})]})]})]}),n&&o.jsxs("a",{href:n,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-2 mt-auto text-neutral3 text-ui-md hover:text-neutral5",children:[o.jsx(P8t,{}),n?.split("/")?.pop()]})]}),s&&o.jsx(zje,{data:s,labelsAreHidden:!0,isLoading:r})]})]})}function Jrs(e){switch(e){case"running":return o.jsx(Qt,{});case"success":return o.jsx(hx,{});case"failed":return o.jsx(Pu,{});default:return null}}function ess({stepId:e,step:t,isActive:n,position:r}){const s=a=>a.charAt(0).toUpperCase()+a.slice(1).replace(/-/g," ");return o.jsxs("div",{className:K("grid gap-6 grid-cols-[1fr_auto] py-3 px-4 rounded-lg",is.all,{"border border-dashed border-neutral2 bg-surface3":n}),children:[o.jsxs("div",{className:"grid grid-cols-[auto_1fr] gap-2",children:[o.jsxs("span",{className:K("text-ui-md min-w-6 flex justify-end",is.colors,{"text-neutral5":n||t.status==="success","text-neutral3":!n&&t.status!=="success"}),children:[r,"."]}),o.jsxs("div",{children:[o.jsx("h4",{className:K("text-ui-md",is.colors,{"text-neutral5":n||t.status==="success","text-neutral3":!n&&t.status!=="success"}),children:s(e)}),t.description&&o.jsx("p",{className:"text-ui-md text-neutral2 -mt-0.5",children:t.description})]})]}),o.jsx("div",{className:K("w-[1.75rem] h-[1.75rem] rounded-full flex items-center justify-center self-center",is.all,{"border border-neutral2 border-dashed":t.status==="pending","[&>svg]:text-white [&>svg]:w-4 [&>svg]:h-4":t.status!=="running","w-[1.75rem] h-[1.75rem]":t.status==="running","bg-accent1Dark shadow-glow-accent1":t.status==="success","bg-accent2Dark shadow-glow-accent2":t.status==="failed","scale-110":t.status==="success"||t.status==="failed"}),children:Jrs(t.status)})]})}function tss({currentStep:e,steps:t=[],className:n}){return o.jsx("div",{className:K(n),children:t.map((r,s)=>o.jsx(ess,{stepId:r.id,step:r,isActive:e?.id===r.id,position:s+1},r.id))})}function nss({steps:e}){const t=e.length,n=e.filter(r=>r.status==="success").length;return o.jsxs("div",{className:"flex justify-center flex-col gap-4 content-center w-full",children:[o.jsx("div",{className:"grid grid-cols-[0_repeat(9,1fr)] w-full",children:e.map((r,s)=>o.jsx("div",{className:K("flex justify-end items-center relative h-[2rem]",is.colors,{"bg-accent1Dark":r.status==="success"&&e?.[s-1]?.status==="success"}),children:o.jsx("div",{className:K("w-[2rem] h-[2rem] rounded-full flex items-center justify-center self-center absolute right-0 translate-x-[50%] bg-surface3 z-10 text-neutral3 font-bold text-ui-sm",is.all,{"border border-neutral2 border-dashed":r.status==="pending","[&>svg]:text-surface1 [&>svg]:w-[1.1rem] [&>svg]:h-[1.1rem]":r.status!=="running","bg-accent1Dark text-white shadow-glow-accent1 scale-110":r.status==="success","bg-accent2Dark text-white shadow-glow-accent2 scale-110":r.status==="failed"}),children:r.status==="running"?o.jsx(Qt,{}):s+1})},r.id))}),o.jsxs("div",{className:K("text-xs text-neutral3 text-center",is.colors),children:[n," of ",t," steps completed"]})]})}function rss({name:e,streamResult:t,runId:n,workflowInfo:r}){const s=t?.phase||"initializing",a=t?.payload?.workflowState,i=t?.payload?.currentStep,l=t?.error,c=a?.steps||{},u=Object.keys(c).length>0,d=g=>g==="input"||g.endsWith(".input")||g.startsWith("Mapping_")&&/[0-9a-f]{8}/.test(g)||/[0-9a-f]{8,}/.test(g)?!1:r?.allSteps?g in r.allSteps:!0,f=Object.entries(c).filter(([g,y])=>d(g)),p=f.length,h=()=>{switch(s){case"initializing":return"Preparing template installation...";case"processing":return`Installing ${e} template`;case"completed":return"Template installation completed!";case"error":return"Template installation failed";default:return"Installing template..."}},m=f.map(([g,y])=>({id:g,status:y?.status,description:y?.description,title:g.charAt(0).toUpperCase()+g.slice(1).replace(/-/g," "),isActive:i?.id===g}));return o.jsxs(ZZ,{className:"space-y-6 text-neutral3 mb-8 content-center",children:[o.jsxs("div",{className:"text-center",children:[o.jsx("h3",{className:"text-lg font-semibold text-neutral5",children:h()}),(t?.runId||n)&&o.jsxs("div",{className:"mt-2 text-ui-sm text-neutral3",children:["Run ID: ",t?.runId??n]})]}),u&&p>0&&!["error"].includes(s)&&o.jsx("div",{className:"max-w-[30rem] w-full mx-auto px-6",children:o.jsx(nss,{steps:m})}),l&&s==="error"&&o.jsxs("div",{className:K("rounded-lg text-neutral5 p-6 flex items-center gap-3 text-ui-md bg-red-500/10","[&>svg]:w-6 [&>svg]:h-6 [&>svg]:opacity-70 [&>svg]:text-red-500"),children:[o.jsx(gdn,{}),l||"Something went wrong"]}),u&&o.jsx(tss,{steps:m,currentStep:i,className:"pb-4"}),!u&&s==="initializing"&&o.jsxs("div",{className:"text-center text-sm text-neutral3 grid gap-4 justify-items-center",children:[o.jsx(Qt,{}),o.jsx("p",{children:"This may take some time..."})]})]})}function sss({name:e,installedEntities:t}){return o.jsxs(ZZ,{className:K("grid items-center justify-items-center gap-4 content-center","[&>svg]:w-8 [&>svg]:h-8"),children:[o.jsx(Ult,{}),o.jsx("h2",{className:"text-header-md",children:"Done!"}),o.jsxs("p",{className:"text-ui-md text-center text-neutral3 ",children:["The ",o.jsx("b",{className:"text-neutral4",children:e})," template has been successfully installed.",t&&t.length>0&&o.jsxs(o.Fragment,{children:[o.jsx("br",{})," Installed entities are listed below."]})]}),t&&t.length>0&&o.jsx(zje,{data:t})]})}function ass(){const{templateSlug:e}=dr(),[t,n]=ji(),[r,s]=v.useState(""),[a,i]=v.useState(""),[l,c]=v.useState(""),[u,d]=v.useState({}),[f,p]=v.useState([]),[h,m]=v.useState(null),[g,y]=v.useState(!1),[b,w]=v.useState(""),[S,k]=v.useState(!1),[_,C]=v.useState(!1),[E,j]=v.useState([]),{data:N,isLoading:I}=nYn({repoOrSlug:e,owner:"mastra-ai"}),$=Qrs?.includes("beta")??!1?"beta":"main",{data:F,isLoading:D}=rYn({repo:N?.githubUrl?new URL(N.githubUrl).pathname.split("/")[2]:`template-${e}`,owner:"mastra-ai",branch:$}),{data:V,isLoading:W}=sYn(),{mutateAsync:L,isPending:B}=aYn(),{mutateAsync:z}=iYn(),{streamInstall:M,streamResult:G,isStreaming:q}=lYn(V),{observeInstall:R,streamResult:U,isStreaming:Z}=cYn(V);v.useEffect(()=>{const ne=t.get("runId");ne&&!g&&!h&&!q&&!Z&&(console.info("🔄 Checking completed run after hot reload:",{runId:ne}),w(ne),z({runId:ne}).then(ue=>{const pe=ue.snapshot;if(pe?.status==="success"&&pe?.result?.success)y(!0);else if(pe?.result?.success===!1)if(pe?.result?.validationResults&&!pe?.result?.validationResults?.valid&&pe?.result?.validationResults?.remainingErrors>0){const{remainingErrors:ve,errors:ye}=pe.result.validationResults,Se=`Template installation completed but ${ve} validation issue${ve>1?"s":""} remain unresolved.`;m(Se),j(ye||[])}else{const ve=pe?.result?.message||pe?.result?.error||"Template installation failed";m(typeof ve=="string"?ve:String(ve))}}).catch(ue=>{console.error("❌ Failed to fetch run details:",ue),m("Failed to retrieve installation status after reload")}))},[t,g,h,q,Z,z]),v.useEffect(()=>{const ne=t.get("runId"),ue=t.get("resume"),pe=t.get("provider");if(ne&&ue==="true"&&pe&&!q&&!Z&&!S&&!_&&V){w(ne),k(!0);try{z({runId:ne}).then(le=>{if(le.snapshot?.status==="running")return R.mutateAsync({runId:ne})}).then(()=>{n(le=>{const ve=new URLSearchParams(le);return ve.delete("resume"),ve})}).catch(le=>{console.error("❌ Failed to resume template installation:",le),le.message?.includes("404")||le.message?.includes("not found")?m("Template installation run not found. It may have expired or been completed."):m("Failed to resume template installation. Please try again.")})}catch(le){console.error("❌ Auto-resume failed with error:",le),m("Failed to resume template installation. Please refresh and try again.")}}},[t,e,q,Z,S,_,V,z,R,n]);const X=[{value:"openai",label:"OpenAI"},{value:"anthropic",label:"Anthropic"},{value:"groq",label:"Groq"},{value:"google",label:"Google"}],te=[{key:"tools",label:"Tools",value:N?.tools?.length?N.tools.map(ne=>ne).join(", "):"n/a",icon:o.jsx(Qp,{})},{key:"agents",label:"Agents",value:N?.agents?.length?N.agents.map(ne=>ne).join(", "):"n/a",icon:o.jsx(rl,{})},{key:"workflows",label:"Workflows",value:N?.workflows?.length?N.workflows.map(ne=>ne).join(", "):"n/a",icon:o.jsx(iq,{})},{key:"providers",label:"Providers",value:N?.supportedProviders?.length?N.supportedProviders.join(", "):"n/a",icon:o.jsx(Iv,{})},{key:"tags",label:"Tags",value:N?.tags?.length?N.tags.join(", "):"n/a",icon:o.jsx(gN,{})}],J=[{...te[0]},{...te[1]},{...te[2]}].filter(ne=>ne.value!=="n/a");v.useEffect(()=>{F&&d(F)},[F]),v.useEffect(()=>{const ne=G||U;ne?.phase==="error"&&ne?.error&&m(typeof ne.error=="string"?ne.error:String(ne.error))},[G?.phase,G?.error,U?.phase,U?.error]);const ee=ne=>{s(ne)},ae=async ne=>(i(ne.provider),c(ne.modelId),{message:"Model updated successfully"}),ce=async()=>{const ne=Object.entries(u).reduce((ue,[pe,le])=>(le===""&&ue.push(pe),ue),[]);if(ne.length>0){p(ne);return}if(N){m(null),y(!1),w(""),C(!0);try{const pe={repo:N.githubUrl||`https://github.com/mastra-ai/template-${N.slug}`,ref:$,slug:N.slug,variables:u},{runId:le}=await L({});w(le),n(ve=>{const ye=new URLSearchParams(ve);return ye.set("runId",le),ye.set("resume","true"),ye.set("provider",r||"openai"),ye}),await M.mutateAsync({inputData:pe,selectedModel:{provider:a,modelId:l},runId:le})}catch(ue){C(!1),m(ue?.message||"Template installation failed"),console.error("Template installation failed",ue)}}},Y=ne=>{const{name:ue,value:pe}=ne.target;pe.trim()===""?p(le=>[...le,ue]):p(le=>le.filter(ve=>ve!==ue)),d(le=>({...le,[ue]:pe}))};return o.jsx(cs,{children:o.jsx("div",{className:K("w-full lg:px-12 h-full overflow-y-scroll"),children:o.jsxs("div",{className:"p-6 w-full max-w-[80rem] mx-auto grid gap-y-4",children:[o.jsx(Krs,{isLoading:I,title:N?.title,description:N?.longDescription,imageURL:N?.imageURL,githubUrl:N?.githubUrl,infoData:te,templateSlug:e}),N&&o.jsxs(o.Fragment,{children:[(q||Z)&&o.jsx(rss,{name:N.title,streamResult:Z?U:G,runId:b,workflowInfo:V}),g&&o.jsx(sss,{name:N.title,installedEntities:J,linkComponent:ci}),h&&o.jsx(Yrs,{errorMsg:h,validationErrors:E.length>0?E:G?.validationResults?.errors||U?.validationResults?.errors}),!q&&!Z&&!g&&!h&&o.jsx(Xrs,{providerOptions:X,selectedProvider:r,onProviderChange:ee,variables:u,setVariables:d,errors:f,setErrors:p,handleInstallTemplate:ce,handleVariableChange:Y,isLoadingEnvVars:D||W,isInstalling:B,defaultModelProvider:a,defaultModelId:l,onModelUpdate:ae})]})]})})})}const iss=()=>{const{toolId:e,agentId:t}=dr();return o.jsx("div",{className:"h-full w-full overflow-y-auto",children:o.jsx(JWr,{toolId:e,agentId:t})})},oss=()=>{const{toolId:e}=dr();return o.jsx("div",{className:"h-full w-full overflow-y-hidden",children:o.jsx(Rns,{toolId:e})})};function lss(){const{traceId:e}=dr(),[t,n]=ji(),r=bs(),s=t.get("spanId")||void 0,a=t.get("tab"),i=a==="scoring"?"scoring":a==="feedback"?"feedback":"details",l=t.get("scoreId")||void 0,[c,u]=v.useState(s??null),[d,f]=v.useState(),[p,h]=v.useState(i),[m,g]=v.useState(0),[y,b]=v.useState(!1),{data:w,isLoading:S,error:k}=XH(e),_=v.useMemo(()=>w?.spans??[],[w?.spans]),C=v.useMemo(()=>_.find(ae=>ae.parentSpanId==null),[_]),{data:E,isLoading:j}=oI(e,c??"");v.useEffect(()=>g(0),[e,c]);const{data:N,isLoading:I}=th(),{data:P,isLoading:$}=VLt({traceId:e,spanId:c??void 0,page:m}),[F,D]=v.useState(0);v.useEffect(()=>D(0),[e,c]);const{data:V,isLoading:W}=v8t({traceId:e,page:F});v.useEffect(()=>{if(l&&P?.scores&&!d){const ae=P.scores.find(ce=>ce.id===l);ae&&f(ae)}},[l,P?.scores,d]);const L=v.useCallback(ae=>{const ce=new URLSearchParams(t);for(const[Y,ne]of Object.entries(ae))ne===null||ne===""?ce.delete(Y):ce.set(Y,ne);n(ce,{replace:!0})},[t,n]),B=v.useCallback(ae=>{const ce=ae??null,Y=ce===c;u(ce),Y||(f(void 0),h("details"),L({spanId:ce,tab:null,scoreId:null}))},[c,L]),z=v.useCallback(()=>{u(null),f(void 0),h("details"),L({spanId:null,tab:null,scoreId:null})},[L]),M=v.useCallback(ae=>{u(ae),f(void 0),h("details"),L({spanId:ae,tab:null,scoreId:null})},[L]),{handlePreviousSpan:G,handleNextSpan:q}=KH(_,c,M),R=v.useCallback(ae=>{const ce=ae;h(ce),f(void 0),L({tab:ce==="details"?null:ce,scoreId:null})},[L]),U=v.useCallback(ae=>{f(ae),L({scoreId:ae.id})},[L]),Z=v.useCallback(()=>{f(void 0),L({scoreId:null})},[L]),X=v.useCallback(()=>{r("/observability")},[r]),te=v.useCallback(()=>{h("scoring"),C&&c!==C.spanId?(u(C.spanId),f(void 0),L({spanId:C.spanId,tab:"scoring",scoreId:null})):L({tab:"scoring"})},[C,c,L]),J=C?o.jsx(Ty,{owner:"trace-detail",children:o.jsxs($r,{children:[o.jsxs(de,{tooltip:"Evaluate Trace","aria-label":"Evaluate Trace",onClick:te,children:[o.jsx(Jln,{}),"Evaluate"]}),o.jsxs(de,{tooltip:"Save as Dataset Item","aria-label":"Save as Dataset Item",onClick:()=>b(!0),children:[o.jsx(fd,{}),"Save"]})]})}):null,ee=C?o.jsx(Lt.Row,{children:o.jsx(Lt.Column,{children:o.jsx(l8t,{rootSpan:C,numOfCol:3})})}):null;return k?o.jsxs(Lt,{height:"full",children:[J,ee&&o.jsx(Lt.TopArea,{children:ee}),o.jsx(Lt.MainArea,{isCentered:!0,children:o.jsx(c8t,{error:k,resource:"traces",errorTitle:"Failed to load trace"})})]}):o.jsxs(Lt,{children:[J,ee&&o.jsx(Lt.TopArea,{children:ee}),o.jsx(f8t,{rootSpanId:C?.spanId,traceId:e,isOpen:y,onClose:()=>b(!1)}),o.jsxs("div",{className:K("grid h-full min-h-0 gap-4 overflow-hidden items-start mt-4",c?"grid-cols-[2fr_3fr]":"grid-cols-[1fr]"),children:[o.jsx(fTe,{traceId:e,spans:_,isLoading:S,onClose:X,onSpanSelect:B,onEvaluateTrace:te,initialSpanId:c,placement:"trace-page",timelineChartWidth:c?"default":"wide"}),c&&!S&&o.jsxs("div",{className:K("grid gap-4 max-h-full min-h-0 overflow-auto",d?"grid-rows-[1fr_1fr]":"grid-rows-[1fr]"),children:[o.jsx(QH,{traceId:e,spanId:c,span:E?.span,isLoading:j,onClose:z,onPrevious:G,onNext:q,activeTab:p,onTabChange:R,feedbackTabBadge:V?.pagination?.total??void 0,feedbackTabSlot:()=>o.jsx(h8t,{feedbackData:V,onPageChange:D,isLoadingFeedbackData:W}),scoringTabBadge:P?.pagination?.total??void 0,scoringTabSlot:({span:ae,traceId:ce,spanId:Y})=>o.jsxs("div",{className:"grid gap-6",children:[o.jsx(g8t,{traceId:ce,isTopLevelSpan:!ae.parentSpanId,spanId:Y,entityType:ae.attributes?.agentId||ae.entityType===Os.AGENT?"Agent":ae.attributes?.workflowId||ae.entityType===Os.WORKFLOW_RUN?"Workflow":void 0,scorers:N,isLoadingScorers:I}),o.jsx(m8t,{scoresData:P,onPageChange:g,isLoadingScoresData:$,onScoreSelect:U})]})}),d&&o.jsx(Fje,{score:d,onClose:Z})]})]})]})}function css(){const{data:e,isLoading:t,error:n}=By(),[r,s]=v.useState("");return n&&gs(n)?o.jsx(lr,{children:o.jsx(Vs,{})}):n&&ys(n)?o.jsx(lr,{children:o.jsx(Ds,{resource:"workflows"})}):n?o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load workflows",message:n.message})}):Object.keys(e||{}).length===0&&!t?o.jsx(lr,{children:o.jsx(gMr,{})}):o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsxs(Lt.Row,{align:"center",stack:"responsive",children:[o.jsx("div",{className:"max-w-120 flex-1",children:o.jsx(Of,{onSearch:s,label:"Filter workflows",placeholder:"Filter by name or description"})}),o.jsxs(de,{as:ci,to:"/workflows/schedules",variant:"primary",className:"shrink-0",children:[o.jsx(c3,{}),"Schedules"]})]})}),o.jsx(mMr,{workflows:e||{},isLoading:t,search:r})]})}const uss={active:"bg-accent1",paused:"bg-accent3"},dss={active:"text-accent1",paused:"text-accent3"},$8t=({status:e})=>o.jsxs("span",{className:"inline-flex items-center gap-2 whitespace-nowrap",children:[o.jsx("span",{className:`h-1.5 w-1.5 rounded-full ${uss[e]}`,"aria-hidden":!0}),o.jsx("span",{className:`text-ui-sm ${dss[e]}`,children:e})]}),Pj=e=>!e||e<=0?"—":new Date(e).toLocaleString(),iP=e=>{if(!e||e<=0)return"—";const t=e-Date.now(),n=Math.abs(t),r=Math.floor(n/1e3);if(r<60)return t>=0?`in ${r}s`:`${r}s ago`;const s=Math.floor(r/60);if(s<60)return t>=0?`in ${s}m`:`${s}m ago`;const a=Math.floor(s/60);if(a<24)return t>=0?`in ${a}h`:`${a}h ago`;const i=Math.floor(a/24);return t>=0?`in ${i}d`:`${i}d ago`};function M8t({status:e}){const{icon:t,color:n}=fss(e);return o.jsxs("span",{className:`inline-flex items-center gap-1.5 whitespace-nowrap text-ui-sm ${n}`,children:[o.jsx("span",{className:"inline-flex shrink-0 items-center","aria-hidden":!0,children:t}),o.jsx("span",{children:e})]})}function fss(e){switch(e){case"success":return{icon:o.jsx(Js,{size:14}),color:"text-accent1"};case"failed":return{icon:o.jsx(vs,{size:14}),color:"text-accent2"};case"running":return{icon:o.jsx(Qt,{}),color:"text-neutral3"};case"suspended":return{icon:o.jsx(JU,{size:14}),color:"text-accent3"};case"canceled":return{icon:o.jsx(xf,{size:14}),color:"text-neutral3"};case"pending":case"waiting":return{icon:o.jsx(aO,{size:14}),color:"text-neutral3"};default:return{icon:null,color:"text-neutral3"}}}const zQe="auto auto auto auto 1fr";function pss(e){if(e===void 0)return"—";if(e<1e3)return`${e}ms`;if(e<6e4)return`${(e/1e3).toFixed(1)}s`;const t=Math.floor(e/6e4),n=Math.floor(e%6e4/1e3);return`${t}m ${n}s`}function hss(e){const t=Math.abs(e),n=e<0?"-":"";return t<1e3?`${n}${t}ms`:t<6e4?`${n}${(t/1e3).toFixed(1)}s`:t<36e5?`${n}${(t/6e4).toFixed(1)}m`:`${n}${(t/36e5).toFixed(1)}h`}const mss=3e4,gss=5*6e4;function vss({triggers:e,isLoading:t,workflowId:n,hasNextPage:r,isFetchingNextPage:s,setEndOfListElement:a}){const{Link:i,paths:l}=yn();return t?o.jsx(el,{columns:zQe}):e.length===0?o.jsx(ge,{variant:"ui-md",className:"text-neutral4 p-4",children:"No trigger history yet."}):o.jsxs(me,{columns:zQe,className:"min-w-0",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Run"}),o.jsx(me.TopCell,{children:"Status"}),o.jsx(me.TopCell,{children:"Started"}),o.jsx(me.TopCell,{children:"Duration"}),o.jsx(me.TopCell,{children:" "})]}),e.map(c=>{const u=c.actualFireAt-c.scheduledFireAt,d=hss(u),f=`Scheduled ${Pj(c.scheduledFireAt)} — published ${Pj(c.actualFireAt)} (drift ${d})`,p=c.outcome==="failed",h=p?c.error:c.run?.error,m=Math.abs(u),g=!p&&m>mss&&m<=gss,y=`${c.scheduleId}-${c.runId}-${c.actualFireAt}`,b=!!(n&&c.runId&&!p),w=o.jsx("span",{className:b?"text-accent1 font-mono text-ui-sm whitespace-nowrap":"text-neutral3 font-mono text-ui-sm whitespace-nowrap",children:c.runId}),S=o.jsxs(o.Fragment,{children:[o.jsx(me.Cell,{height:"compact",children:w}),o.jsx(me.Cell,{height:"compact",children:o.jsxs("span",{className:"inline-flex items-center gap-2",children:[p?o.jsxs("span",{className:"inline-flex items-center gap-1.5 whitespace-nowrap text-ui-sm text-accent2",children:[o.jsx(kp,{size:14}),"publish failed"]}):c.run?o.jsx(M8t,{status:c.run.status}):o.jsx("span",{className:"inline-flex items-center gap-1.5 whitespace-nowrap text-ui-sm text-neutral3",children:"pending"}),h?o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx("span",{className:"text-accent2 inline-flex",children:o.jsx(kp,{size:14})})}),o.jsx(Bn,{children:h})]}):null]})}),o.jsx(me.Cell,{height:"compact",children:o.jsxs("span",{className:"inline-flex items-center gap-2 whitespace-nowrap",children:[o.jsx("span",{title:f,children:iP(c.actualFireAt)}),g?o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx("span",{className:"text-accent3 inline-flex",children:o.jsx(kp,{size:14})})}),o.jsxs(Bn,{children:["Published ",d," after the scheduled fire time"]})]}):null]})}),o.jsx(me.Cell,{height:"compact",children:c.run?o.jsx("span",{children:pss(c.run.durationMs)}):o.jsx("span",{className:"text-neutral4",children:"—"})}),o.jsx(me.Cell,{height:"compact",children:" "})]});return b?o.jsx(me.RowLink,{to:l.workflowRunLink(n,c.runId),LinkComponent:i,children:S},y):o.jsx(me.RowStatic,{children:S},y)}),o.jsx(me.NextPageLoading,{isLoading:s,hasMore:r,setEndOfListElement:a})]})}const yss=e=>{const t=We();return wt({queryKey:["schedule",e],enabled:!!e,queryFn:async()=>{if(!e)throw new Error("scheduleId is required");return t.getSchedule(e)}})},BQe=25,bss=e=>{const t=We(),{inView:n,setRef:r}=C_(),s=R1({queryKey:["schedule-triggers",e],enabled:!!e,initialPageParam:void 0,queryFn:async({pageParam:u})=>e?t.listScheduleTriggers(e,{limit:BQe,toActualFireAt:u}):{triggers:[]},getNextPageParam:u=>{if(!(!u?.triggers?.length||u.triggers.length<BQe))return u.triggers[u.triggers.length-1].actualFireAt},refetchInterval:u=>(u.state.data?.pages.flatMap(p=>p.triggers)??[]).some(p=>p.run?p.run.status==="pending"||p.run.status==="running"||p.run.status==="waiting":p.outcome==="published")?5e3:!1}),a=s.data?.pages.flatMap(u=>u?.triggers??[])??[],{hasNextPage:i,isFetchingNextPage:l,fetchNextPage:c}=s;return v.useEffect(()=>{n&&i&&!l&&c()},[n,i,l,c]),{...s,data:a,setEndOfListElement:r}},xss=e=>{const t=We(),n=Hr();return Rn({mutationFn:async r=>{if(!e)throw new Error("scheduleId is required");return r==="pause"?t.pauseSchedule(e):t.resumeSchedule(e)},onSuccess:(r,s)=>{n.invalidateQueries({queryKey:["schedule",e]}),n.invalidateQueries({queryKey:["schedules"]}),De.success(s==="pause"?"Schedule paused":"Schedule resumed")},onError:r=>{De.error(r.message)}})};function s9({label:e,children:t}){return o.jsxs("div",{className:"flex flex-col gap-1",children:[o.jsx(ge,{variant:"ui-xs",className:"text-neutral4 uppercase tracking-wide",children:e}),o.jsx("div",{className:"text-ui-md",children:t})]})}function wss(){const{scheduleId:e}=dr(),{paths:t}=yn(),{data:n,error:r}=yss(e),{data:s,isLoading:a,error:i,hasNextPage:l,isFetchingNextPage:c,setEndOfListElement:u}=bss(e),d=xss(e);if(r&&gs(r))return o.jsx(lr,{children:o.jsx(Vs,{})});if(r&&ys(r))return o.jsx(lr,{children:o.jsx(Ds,{resource:"schedules"})});if(r)return o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load schedule",message:r.message})});const f=n?.target.type==="workflow"?n.target.workflowId:void 0;return o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsx(Lt.Row,{className:"justify-end",children:o.jsxs(Lt.Column,{className:"flex justify-end gap-2",children:[o.jsxs(de,{as:ci,to:t.schedulesLink(),variant:"ghost",children:[o.jsx(Ec,{}),"Back to schedules"]}),f?o.jsx(de,{as:ci,to:t.workflowLink(f),variant:"ghost",children:"Open workflow"}):null,n?o.jsx(de,{onClick:()=>d.mutate(n.status==="active"?"pause":"resume"),disabled:d.isPending,"data-testid":"schedule-toggle-button",children:n.status==="active"?o.jsxs(o.Fragment,{children:[o.jsx(qlt,{}),"Pause"]}):o.jsxs(o.Fragment,{children:[o.jsx(Pp,{}),"Resume"]})}):null]})})}),n?o.jsxs("div",{className:"grid gap-6 h-full overflow-hidden grid-cols-[minmax(0,20rem)_1fr]",children:[o.jsxs("div",{className:"flex flex-col gap-4 border border-border1 rounded-md p-4 h-fit",children:[o.jsx(s9,{label:"Workflow",children:f?o.jsx(ci,{to:t.workflowLink(f),className:"text-accent1 hover:underline",children:f}):"—"}),o.jsxs(s9,{label:"Cron",children:[o.jsx("code",{className:"font-mono text-ui-md",children:n.cron}),n.timezone?o.jsx("span",{className:"text-neutral4 ml-2 text-ui-sm",children:n.timezone}):null]}),o.jsx(s9,{label:"Status",children:o.jsx($8t,{status:n.status})}),o.jsx(s9,{label:"Next fire",children:o.jsx("span",{title:Pj(n.nextFireAt),children:iP(n.nextFireAt)})})]}),o.jsxs("div",{className:"overflow-y-auto","data-testid":"schedule-triggers-panel",children:[o.jsx(ge,{variant:"ui-md",className:"mb-3",children:"Trigger history"}),i?o.jsx(Fi,{title:"Failed to load trigger history",message:i.message}):o.jsx(vss,{triggers:s??[],isLoading:a,workflowId:f,hasNextPage:l,isFetchingNextPage:c,setEndOfListElement:u})]})]}):null]})}const UQe="minmax(0, 1.2fr) minmax(0, 1.4fr) minmax(0, 1fr) auto auto auto";function Sss({schedules:e,isLoading:t,search:n=""}){const{paths:r,Link:s}=yn(),a=v.useMemo(()=>{const i=n.toLowerCase();return i?e.filter(l=>l.id.toLowerCase().includes(i)||l.target.workflowId.toLowerCase().includes(i)):e},[e,n]);return t?o.jsx(el,{columns:UQe}):o.jsxs(me,{columns:UQe,variant:"striped",className:"min-w-0",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Workflow"}),o.jsx(me.TopCell,{children:"Schedule ID"}),o.jsx(me.TopCell,{children:"Cron"}),o.jsx(me.TopCell,{children:"Status"}),o.jsx(me.TopCell,{children:"Next fire"}),o.jsx(me.TopCell,{children:"Last run"})]}),a.length===0&&n?o.jsx(me.NoMatch,{message:"No schedules match your search"}):null,a.length===0&&!n?o.jsx(me.NoMatch,{message:"No schedules configured"}):null,a.map(i=>o.jsxs(me.RowLink,{to:r.scheduleLink(i.id),LinkComponent:s,children:[o.jsx(me.NameCell,{children:i.target.workflowId}),o.jsx(me.Cell,{height:"compact",className:"min-w-0",children:o.jsx("span",{className:"block truncate font-mono text-ui-smd text-neutral3",title:i.id,children:i.id})}),o.jsx(me.Cell,{height:"compact",children:o.jsxs("span",{className:"inline-flex items-center gap-2 whitespace-nowrap",children:[o.jsx("code",{className:"font-mono text-ui-sm",children:i.cron}),i.timezone?o.jsx("span",{className:"text-neutral4 text-ui-xs",children:i.timezone}):null]})}),o.jsx(me.Cell,{height:"compact",children:o.jsx($8t,{status:i.status})}),o.jsx(me.Cell,{height:"compact",children:o.jsx("span",{className:"whitespace-nowrap",title:Pj(i.nextFireAt),children:iP(i.nextFireAt)})}),o.jsx(me.Cell,{height:"compact",children:i.lastRun?o.jsxs("span",{className:"inline-flex items-center gap-2 whitespace-nowrap",children:[o.jsx(M8t,{status:i.lastRun.status}),o.jsx("span",{className:"text-neutral4 text-ui-sm",title:Pj(i.lastFireAt),children:i.lastFireAt?iP(i.lastFireAt):""})]}):i.lastFireAt?o.jsx("span",{className:"whitespace-nowrap",title:Pj(i.lastFireAt),children:iP(i.lastFireAt)}):o.jsx("span",{className:"text-neutral4",children:"Never"})})]},i.id))]})}function kss({workflowId:e}={}){const{data:t,isLoading:n,error:r}=Wxe(e?{workflowId:e}:{}),[s,a]=v.useState("");return r?o.jsx(Fi,{title:"Failed to load schedules",message:r.message}):o.jsxs("div",{className:"grid grid-rows-[auto_1fr] gap-4 h-full overflow-hidden",children:[o.jsx("div",{className:"max-w-120",children:o.jsx(Of,{onSearch:a,label:"Filter schedules",placeholder:"Filter by id or workflow"})}),o.jsx("div",{className:"overflow-y-auto",children:o.jsx(Sss,{schedules:t??[],isLoading:n,search:s})})]})}function Oss(){const[e]=ji(),t=e.get("workflowId")??void 0,{error:n}=Wxe(t?{workflowId:t}:{});return n&&gs(n)?o.jsx(lr,{children:o.jsx(Vs,{})}):n&&ys(n)?o.jsx(lr,{children:o.jsx(Ds,{resource:"schedules"})}):o.jsx(Lt,{children:o.jsx("div",{className:"h-full",children:o.jsx(kss,{workflowId:t})})})}function _ss({stepGraph:e,open:t,workflowName:n}){const{nodes:r,edges:s}=O1e({stepGraph:e}),[a,i]=v.useState(!1),[l,c,u]=cwt(r),[d]=uwt(s),{edgeTypes:f,nodeTypes:p,styledEdges:h}=c2t({edges:d,workflowName:n,stepGraph:e});return v.useEffect(()=>{if(t){const m=setTimeout(()=>{i(!0)},500);return()=>clearTimeout(m)}},[t]),o.jsx("div",{className:"w-full h-full relative bg-surface1",children:a?o.jsxs(lwt,{nodes:l,edges:h,edgeTypes:f,fitView:!0,fitViewOptions:{maxZoom:1},minZoom:.01,maxZoom:1,nodeTypes:p,onNodesChange:u,children:[o.jsx(F_e,{position:"bottom-left"}),o.jsx(fwt,{variant:Kv.Lines,gap:12,size:.5})]}):o.jsx("div",{className:"w-full h-full flex items-center justify-center",children:o.jsx(Qt,{})})})}function Css(){const{stepDetail:e,closeStepDetail:t}=FV();return e?o.jsxs("div",{className:"flex flex-col h-full","data-testid":"workflow-step-detail-panel",children:[o.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border1 bg-surface1",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[e.type==="map-config"&&o.jsx(Vde,{className:"w-4 h-4",style:{color:wu.map}}),e.type==="nested-graph"&&o.jsx(kd,{className:"w-4 h-4",style:{color:wu.workflow}}),o.jsxs("div",{className:"flex flex-col",children:[o.jsx(ge,{variant:"ui-md",className:"text-neutral6 font-medium",children:e.type==="map-config"?`${e.stepName} Config`:`${e.stepName} Workflow`}),e.type==="map-config"&&e.stepId&&e.stepId!==e.stepName&&o.jsx(ge,{variant:"ui-xs",className:"text-neutral3",children:e.stepId})]})]}),o.jsx("button",{onClick:t,className:"p-1 hover:bg-surface3 rounded transition-colors","aria-label":"Close",children:o.jsx(vs,{className:"w-4 h-4 text-neutral3"})})]}),o.jsxs("div",{className:"flex-1 overflow-auto",children:[e.type==="map-config"&&e.mapConfig&&o.jsx(tP,{data:e.mapConfig}),e.type==="nested-graph"&&e.nestedGraph&&o.jsx("div",{className:"h-full min-h-[400px]",children:o.jsx(k1e,{children:o.jsx(_ss,{stepGraph:e.nestedGraph.stepGraph,open:!0,workflowName:e.nestedGraph.fullStep})},`nested-graph-${e.nestedGraph.fullStep}`)})]})]}):null}function Ess(e){const t=new Blob([JSON.stringify(e??null)]).size;return t<1024?`${t} B`:`${(t/1024).toFixed(1)} KB`}function jss(e,t){if(e&&typeof e=="object"&&!Array.isArray(e)){const n=Object.keys(e);if(n.length===1)return n[0]}return t}function Tss({suspendedSteps:e,workflow:t,isStreaming:n,onResume:r}){return n||e.length===0?null:o.jsxs("div",{className:"space-y-5 rounded-lg border border-border1 bg-surface4 p-5","data-testid":"workflow-suspended-steps",children:[o.jsxs("div",{className:"flex items-center justify-between gap-3",children:[o.jsxs(ge,{as:"p",variant:"ui-md",className:"flex items-center gap-2 text-neutral6 font-semibold",children:[o.jsx(Ue,{children:o.jsx(JU,{})}),"Step suspended"]}),o.jsx(un,{variant:"warning",children:"Needs input"})]}),e.map((s,a)=>{const i=t.allSteps[s.stepId];if(!i||i.isWorkflow)return null;const l=i?.resumeSchema?om(am(mx(i.resumeSchema))):rp(ur(),sT());return o.jsx(Nss,{step:s,stepSchema:l,description:i.description,isStreaming:n,onResume:r},`${s.runId}-${s.stepId}-${a}`)})]})}function Nss({step:e,stepSchema:t,description:n,isStreaming:r,onResume:s}){const[a,i]=v.useState(!1);return o.jsxs("div",{className:"space-y-5",children:[o.jsxs("div",{className:"space-y-2",children:[o.jsx(ge,{as:"p",variant:"ui-md",className:"text-neutral6 font-medium truncate",children:e.stepId}),n&&o.jsx(ge,{as:"p",variant:"ui-sm",className:"text-neutral3",children:n})]}),e.suspendPayload&&o.jsxs("div",{className:"space-y-2",children:[o.jsxs(ge,{as:"p",variant:"ui-sm",className:"flex items-center gap-2 text-neutral3",children:[o.jsx(Ue,{children:o.jsx(ldn,{})}),"The step is asking"]}),o.jsxs(Lp,{open:a,onOpenChange:i,children:[o.jsxs(mf,{className:"flex w-full items-center justify-between gap-2 rounded-lg border border-border1 bg-surface3 px-3 py-2.5",children:[o.jsxs("span",{className:"flex items-center gap-2 min-w-0",children:[o.jsx(Ue,{children:o.jsx(la,{className:K("transition-transform text-neutral3",{"transform rotate-90":a})})}),o.jsx(ge,{as:"span",variant:"ui-md",className:"text-neutral6 truncate",children:jss(e.suspendPayload,e.stepId)})]}),o.jsx(ge,{as:"span",variant:"ui-sm",className:"text-neutral3 shrink-0",children:Ess(e.suspendPayload)})]}),o.jsx(gf,{children:o.jsx("div",{"data-testid":"suspended-payload",className:"pt-2",children:o.jsx(Qr,{data:e.suspendPayload,className:"w-full overflow-x-auto p-2",showCopyButton:!1})})})]})]}),o.jsxs("div",{className:"space-y-3",children:[o.jsxs(ge,{as:"p",variant:"ui-sm",className:"flex items-center gap-2 text-neutral3",children:[o.jsx(Ue,{children:o.jsx(ddn,{})}),"Your response"]}),o.jsx("div",{className:"-mx-5",children:o.jsx(A7,{schema:t,isSubmitLoading:r,submitButtonLabel:"Resume",submitButtonIcon:o.jsx(Pp,{}),submitButtonFullWidth:!0,collapsible:!1,hideHeading:!0,hideInputTypeLabel:!0,onSubmit:l=>{const c=e.stepId?.split(".");s({stepId:c,runId:e.runId,suspendPayload:e.suspendPayload,resumeData:l,isLoading:!1})}})})]})]})}function Iss(){const{result:e,runSnapshot:t,workflow:n,runId:r,isStreamingWorkflow:s}=v.useContext(Rl),{runId:a}=dr(),i=bwt(e,r??""),l=xZn(),c=!!a,u=t?.status==="suspended",f=!!(a&&r&&a===r)&&e?.status==="suspended";return s||!n||i.length===0||c&&!u&&!f?null:o.jsx("div",{"data-testid":"workflow-suspended-overlay",className:"absolute top-2 right-2 z-20 w-[380px] max-w-[calc(100%-1rem)] max-h-[calc(100%-1rem)] overflow-y-auto rounded-lg shadow-lg animate-in fade-in-0 slide-in-from-top-2 zoom-in-95 duration-300",children:o.jsx(Tss,{suspendedSteps:i,workflow:n,isStreaming:s,onResume:l})},r)}const Ass=e=>o.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[o.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.99982 2.0625C3.8252 2.0625 2.06232 3.82538 2.06232 6C2.06232 8.17462 3.8252 9.9375 5.99982 9.9375C8.17444 9.9375 9.93732 8.17462 9.93732 6C9.93732 3.82538 8.17444 2.0625 5.99982 2.0625ZM0.937317 6C0.937317 3.20406 3.20388 0.9375 5.99982 0.9375C8.79576 0.9375 11.0623 3.20406 11.0623 6C11.0623 8.79594 8.79576 11.0625 5.99982 11.0625C3.20388 11.0625 0.937317 8.79594 0.937317 6Z",fill:"currentColor"}),o.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.97865 4.57004C8.22604 4.75795 8.27426 5.11082 8.08635 5.35821L6.05486 8.03279C5.94873 8.17251 5.78348 8.25471 5.60803 8.25505C5.43257 8.2554 5.267 8.17385 5.16032 8.03454L3.80937 6.27034C3.6205 6.02369 3.66733 5.67063 3.91398 5.48176C4.16063 5.29288 4.51369 5.33972 4.70257 5.58637L5.6051 6.76498L7.19048 4.67774C7.37839 4.43036 7.73126 4.38213 7.97865 4.57004Z",fill:"currentColor"})]}),Rss=e=>o.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[o.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.99982 2.0625C3.8252 2.0625 2.06232 3.82538 2.06232 6C2.06232 8.17462 3.8252 9.9375 5.99982 9.9375C8.17444 9.9375 9.93732 8.17462 9.93732 6C9.93732 3.82538 8.17444 2.0625 5.99982 2.0625ZM0.937317 6C0.937317 3.20406 3.20388 0.9375 5.99982 0.9375C8.79576 0.9375 11.0623 3.20406 11.0623 6C11.0623 8.79594 8.79576 11.0625 5.99982 11.0625C3.20388 11.0625 0.937317 8.79594 0.937317 6Z",fill:"currentColor"}),o.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.89741 4.10293C8.11707 4.32261 8.11706 4.67877 7.89738 4.89843L6.79517 6.00058L7.8962 7.10155C8.11588 7.32122 8.11589 7.67737 7.89623 7.89705C7.67656 8.11673 7.32041 8.11674 7.10073 7.89707L5.99965 6.79605L4.89856 7.89707C4.67889 8.11673 4.32273 8.11672 4.10307 7.89704C3.88341 7.67737 3.88342 7.32121 4.10309 7.10155L5.20413 6.00058L4.10191 4.89843C3.88224 4.67877 3.88223 4.32262 4.10189 4.10294C4.32155 3.88326 4.67771 3.88325 4.89738 4.10292L5.99965 5.20511L7.10191 4.10291C7.32159 3.88325 7.67774 3.88326 7.89741 4.10293Z",fill:"currentColor"})]}),Pss=e=>e.includes("."),$ss=e=>e==="input"||e.endsWith(".input"),Mss=1;function Dss(e){return`${Number((e/1e3).toPrecision(3))}s`}function Lss(e,t){const n=Object.entries(e).filter(([i])=>!$ss(i));if(n.length===0)return[];const r=Math.min(...n.map(([,i])=>i.startedAt)),s=Math.max(...n.map(([,i])=>i.endedAt??t)),a=Math.max(s-r,1);return n.map(([i,l])=>{const c=l.endedAt===void 0,d=(l.endedAt??t)-l.startedAt,f=(l.startedAt-r)/a*100,p=Math.max(d/a*100,Mss);return{stepId:i,step:l,status:l.status,offsetPct:f,widthPct:p,durationMs:d,isRunning:c,isNestedEntry:Pss(i)}})}const Fss=({status:e})=>o.jsxs(Ue,{children:[e==="success"&&o.jsx(Ass,{className:"text-accent1"}),e==="failed"&&o.jsx(Rss,{className:"text-accent2"}),e==="suspended"&&o.jsx(JU,{className:"text-accent3"}),e==="waiting"&&o.jsx(qde,{className:"text-accent5"}),e==="skipped"&&o.jsx(qde,{className:"text-icon3"}),e==="running"&&o.jsx(ia,{className:"text-accent6 animate-spin"})]}),zss={success:"bg-accent1",failed:"bg-accent2",suspended:"bg-accent3",waiting:"bg-accent5",skipped:"bg-border1",running:"bg-accent6"};function D8t(e){return e.split(/[-_.\s]+/).filter(Boolean).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}const qQe=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:{value:e},Bss=e=>{const t=e;return e2t({duration:t.duration,date:t.date,isForEach:t.isForEach,mapConfig:t.mapConfig,canSuspend:t.canSuspend,isParallel:t.isParallel,stepGraph:t.stepGraph})},Uss=({row:e,index:t,isSelected:n,isHovered:r,onSelectStep:s,onHoverStep:a,onOpenInput:i,onOpenOutput:l})=>{const c=Bss(e.step),u=e.status==="running",d=!e.isNestedEntry;return o.jsxs("div",{role:"button",tabIndex:0,"data-testid":"workflow-timeline-row","data-workflow-step-key":e.stepId,"data-workflow-step-active":n?"true":void 0,"data-workflow-step-hovered":r?"true":void 0,"data-workflow-step-nested":e.isNestedEntry?"true":void 0,"aria-pressed":n,"aria-disabled":!d,onMouseEnter:()=>{d&&a(e.stepId)},onMouseLeave:()=>{d&&a(null)},onClick:()=>{d&&s(e.stepId)},onKeyDown:f=>{!d||f.key!=="Enter"&&f.key!==" "||(f.preventDefault(),s(e.stepId))},className:K("grid grid-cols-[auto_auto_auto_minmax(0,10rem)_minmax(0,1fr)_auto_5rem] items-center gap-2 rounded-md border border-transparent px-2 py-1 text-left transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-accent1",d&&"cursor-pointer",d&&"hover:bg-surface4",d&&r&&!n&&"border-neutral6 bg-surface4",d&&n&&"border-accent1",e.isNestedEntry&&"cursor-default opacity-55"),children:[o.jsx("div",{className:"flex justify-center",children:o.jsx(Fss,{status:e.status})}),o.jsx("div",{className:"flex justify-center",children:o.jsx(de,{type:"button",variant:"ghost",size:"icon-sm",tooltip:"View step input",disabled:u,className:"text-neutral3 hover:text-neutral6 disabled:cursor-not-allowed disabled:opacity-40",onClick:f=>{f.stopPropagation(),u||i(e)},children:o.jsx(cfn,{})})}),o.jsx("div",{className:"flex overflow-hidden",children:o.jsx(aU,{indicators:c,className:"shrink-0"})}),o.jsx(ge,{as:"span",variant:"ui-sm",className:"block min-w-0 max-w-full justify-self-stretch overflow-hidden text-ellipsis whitespace-nowrap text-left text-neutral6",children:D8t(e.stepId)}),o.jsx("div",{className:"relative h-2 min-w-0 rounded bg-surface4",children:o.jsx("div",{"data-testid":"workflow-timeline-bar","data-offset":String(e.offsetPct),"data-width":String(e.widthPct),className:`absolute top-0 h-full rounded ${zss[e.status]}`,style:{left:`${e.offsetPct}%`,width:`${e.widthPct}%`}})}),o.jsx("div",{className:"flex justify-center",children:o.jsx(de,{type:"button",variant:"ghost",size:"icon-sm",tooltip:"View step output",disabled:u,className:"text-neutral3 hover:text-neutral6 disabled:cursor-not-allowed disabled:opacity-40",onClick:f=>{f.stopPropagation(),u||l(e)},children:o.jsx(ofn,{})})}),o.jsx(ge,{as:"span",variant:"ui-sm",className:"w-20 justify-self-end text-right text-neutral3 tabular-nums",children:Dss(e.durationMs)})]},`timeline-item-${e.stepId}-${t}`)};function qss(){const{steps:e}=t4(),{selectedStepId:t,hoverStepId:n,setSelectedStepId:r,setHoverStepId:s}=Yq(),[a,i]=v.useState(()=>Date.now()),[l,c]=v.useState(!1),[u,d]=v.useState(null),f=v.useRef(null);e0e(f,{enabled:!l});const p=Lss(e,a),h=p.some(m=>m.isRunning);return v.useEffect(()=>{if(!h)return;const m=setInterval(()=>i(Date.now()),100);return()=>clearInterval(m)},[h]),v.useEffect(()=>{if(l||p.length===0)return;const m=f.current;m&&(m.scrollTop=m.scrollHeight)},[l,p.length]),p.length===0?null:o.jsxs(o.Fragment,{children:[o.jsx("div",{"data-testid":"workflow-timeline",className:"pointer-events-none absolute right-0 bottom-0 z-20 px-2 pb-2",style:{left:"var(--workflow-left-panel-width, 0px)"},children:o.jsxs("div",{className:"pointer-events-auto flex max-h-64 w-full min-w-0 flex-col gap-3 overflow-hidden rounded-studio-panel border border-border1/50 bg-surface3 p-4 shadow-lg",children:[o.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-3",children:[o.jsx(ge,{as:"p",variant:"ui-md",className:"text-neutral3",children:"Timeline"}),o.jsx("button",{type:"button","aria-label":l?"Expand timeline":"Collapse timeline","aria-expanded":!l,onClick:()=>c(m=>!m),className:"rounded-md p-1 text-neutral3 transition-colors hover:bg-surface4 hover:text-neutral6",children:o.jsx(va,{className:K("h-4 w-4 transition-transform",l&&"-rotate-90")})})]}),!l&&o.jsx("div",{ref:f,"data-testid":"workflow-timeline-list",className:"flex min-h-0 flex-col gap-2 overflow-y-auto",children:p.map((m,g)=>o.jsx(Uss,{row:m,index:g,isSelected:t===m.stepId,isHovered:n===m.stepId,onSelectStep:r,onHoverStep:s,onOpenInput:y=>d({type:"input",stepId:y.stepId,data:qQe(y.step.input)}),onOpenOutput:y=>d({type:"output",stepId:y.stepId,data:qQe(y.step.output)})},`timeline-item-${m.stepId}-${g}`))})]})}),o.jsx(br,{open:!!u,onOpenChange:m=>!m&&d(null),children:u&&o.jsx(wwt,{data:u.data,title:`${D8t(u.stepId)} ${u.type==="input"?"input":"output"}`})})]})}const Vss=({workflowId:e,workflow:t,isLoading:n})=>{const{stepDetail:r}=FV();return o.jsxs("div",{className:"flex h-full min-h-0",children:[o.jsx("div",{className:"flex h-full min-h-0 flex-1 flex-col",children:o.jsxs("div",{className:"relative min-h-0 flex-1 p-2 pb-0",children:[o.jsx(v2t,{workflowId:e,workflow:t,isLoading:n}),o.jsx(Iss,{}),o.jsx(qss,{})]})}),r&&o.jsx("div",{className:"w-[420px] min-h-0 overflow-hidden border-l border-border1",children:o.jsx(Css,{})})]})},VQe=()=>{const{workflowId:e}=dr(),{data:t,isLoading:n,error:r}=gD(e);return r&&gs(r)?o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})}):r&&ys(r)?o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"workflows"})}):o.jsx(q1e,{children:o.jsx(Vss,{workflowId:e,workflow:t??void 0,isLoading:n})})};function Hss(e,t){if(e==null)return{};var n,r,s=_bt(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}function Fve(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Wss(e){if(Array.isArray(e))return Fve(e)}function Zss(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Gss(e,t){if(e){if(typeof e=="string")return Fve(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Fve(e,t):void 0}}function Qss(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
727
|
+
]`})]})]})}function _es({errors:e,maxErrors:t=5}){if(e.length===0)return null;const n=e.slice(0,t),r=e.length-t;return o.jsxs("div",{className:"bg-accent2/10 border border-accent2/30 rounded-md p-3",children:[o.jsxs("div",{className:"flex items-center gap-2 text-accent2 mb-2",children:[o.jsx(Ue,{children:o.jsx(kp,{className:"w-4 h-4"})}),o.jsxs("span",{className:"font-medium text-sm",children:[e.length," validation error",e.length!==1?"s":""]})]}),o.jsx("ul",{className:"text-sm text-accent2/80 space-y-1",children:n.map((s,a)=>o.jsxs("li",{className:"flex gap-2",children:[o.jsx("span",{className:"shrink-0",children:"•"}),o.jsx("span",{children:s.message})]},a))}),r>0&&o.jsxs("div",{className:"text-xs text-accent2/60 mt-2",children:["+",r," more error",r!==1?"s":""]})]})}function Ces({datasetId:e,open:t,onOpenChange:n,onSuccess:r}){const[s,a]=v.useState("upload"),[i,l]=v.useState(null),[c,u]=v.useState({current:0,total:0}),[d,f]=v.useState(null),[p,h]=v.useState(!1),{parseFile:m,isParsing:g,error:y}=KKr(),{batchInsertItems:b}=_i(),w=v.useCallback(async I=>{try{const P=await m(I);l(P),a("preview")}catch{}},[m]),S=v.useCallback(async()=>{if(!i||i.items.length===0)return;a("importing"),h(!0);const{items:I}=i;u({current:0,total:I.length});try{await b.mutateAsync({datasetId:e,items:I.map(P=>({input:P.input,groundTruth:P.groundTruth,metadata:P.metadata}))}),f({success:I.length,errors:0})}catch{f({success:0,errors:I.length})}u({current:I.length,total:I.length}),h(!1),a("complete")},[i,b,e]),k=v.useCallback(()=>{n(!1),r?.(),d&&d.success>0&&De.success(`Imported ${d.success} item${d.success!==1?"s":""}`),setTimeout(()=>{a("upload"),l(null),u({current:0,total:0}),f(null)},150)},[n,r,d]),_=v.useCallback(()=>{p||(n(!1),setTimeout(()=>{a("upload"),l(null),u({current:0,total:0}),f(null)},150))},[p,n]),C=i&&i.items.length>0&&i.errors.length===0,E=()=>{switch(s){case"upload":return o.jsx(Oes,{onFileSelect:w,isParsing:g,error:y?.message});case"preview":return i?o.jsx("div",{className:"flex flex-col gap-4",children:i.errors.length>0?o.jsxs(o.Fragment,{children:[o.jsx(_es,{errors:i.errors}),o.jsx("div",{className:"text-sm text-neutral4",children:"Please fix the errors in your JSON file and try again."})]}):o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"text-sm text-neutral4",children:["Found ",i.items.length," valid item",i.items.length!==1?"s":""," to import."]}),o.jsx(kes,{items:i.items,maxRows:5})]})}):null;case"importing":return o.jsxs("div",{className:"flex flex-col items-center gap-4 py-8",children:[o.jsx(Qt,{}),o.jsxs("div",{className:"text-center",children:[o.jsx("div",{className:"text-lg font-medium text-neutral1",children:"Importing items..."}),o.jsxs("div",{className:"text-sm text-neutral4 mt-1",children:[c.current," of ",c.total]})]})]});case"complete":return o.jsxs("div",{className:"flex flex-col items-center gap-4 py-8",children:[o.jsx("div",{className:"text-4xl",children:d&&d.errors===0?"✓":"⚠"}),o.jsxs("div",{className:"text-center",children:[o.jsx("div",{className:"text-lg font-medium text-neutral1",children:"Import Complete"}),o.jsxs("div",{className:"text-sm text-neutral4 mt-1",children:[d?.success??0," item",d?.success!==1?"s":""," imported",d&&d.errors>0&&o.jsxs("span",{className:"text-accent2",children:[" ","(",d.errors," error",d.errors!==1?"s":"",")"]})]})]})]})}},j=()=>{switch(s){case"upload":return o.jsx(de,{onClick:_,children:"Cancel"});case"preview":return o.jsxs(o.Fragment,{children:[o.jsx(de,{onClick:()=>a("upload"),children:"Back"}),o.jsxs(de,{variant:"primary",onClick:S,disabled:!C,children:["Import ",i?.items.length??0," Item",i?.items.length!==1?"s":""]})]});case"importing":return null;case"complete":return o.jsx(de,{variant:"primary",onClick:k,children:"Done"})}},N={upload:"Import JSON",preview:"Preview Data",importing:"Importing",complete:"Import Complete"};return o.jsx(br,{open:t,onOpenChange:_,children:o.jsxs(xr,{className:"max-w-2xl max-h-[90vh]",children:[o.jsxs(wr,{children:[o.jsx(gr,{children:N[s]}),o.jsx(Qs,{children:"Import dataset items from a JSON file."})]}),o.jsx(Ar,{className:"min-h-[200px] max-h-[50vh] overflow-y-auto",children:E()}),o.jsx(kc,{className:"px-6 pt-4 flex justify-end gap-2",children:j()})]})})}const xTe=e=>{const t=We(),{data:n}=YM(e),r=n?.experiments;return wt({queryKey:["dataset-review-items",e,r?.map(s=>s.id)],queryFn:async()=>!r||r.length===0?[]:(await Promise.all(r.map(async a=>{if(!a.datasetId)return[];try{const{results:i}=await t.listDatasetExperimentResults(a.datasetId,a.id);return i.filter(l=>l.status==="needs-review").map(l=>({id:l.id,input:l.input,output:l.output,error:l.error,itemId:l.itemId,experimentId:l.experimentId,datasetId:a.datasetId??void 0,traceId:l.traceId??void 0,scores:l.scores?Object.fromEntries(l.scores.map(c=>[c.scorerId,c.score??0])):{},tags:l.tags??[],comment:""}))}catch{return[]}}))).flat(),enabled:!!e&&!!r&&r.length>0,refetchOnWindowFocus:!1})},Ees=e=>{const t=We(),{data:n}=YM(e),r=n?.experiments;return wt({queryKey:["dataset-completed-items",e,r?.map(s=>s.id)],queryFn:async()=>!r||r.length===0?[]:(await Promise.all(r.map(async a=>{if(!a.datasetId)return[];try{const{results:i}=await t.listDatasetExperimentResults(a.datasetId,a.id);return i.filter(l=>l.status==="complete").map(l=>({id:l.id,input:l.input,output:l.output,error:l.error,itemId:l.itemId,experimentId:l.experimentId,datasetId:a.datasetId??void 0,traceId:l.traceId??void 0,scores:l.scores?Object.fromEntries(l.scores.map(c=>[c.scorerId,c.score??0])):{},tags:l.tags??[],comment:""}))}catch{return[]}}))).flat(),enabled:!!e&&!!r&&r.length>0,refetchOnWindowFocus:!1})};function jes(e,t){if(typeof e=="string")return e.length>t?e.slice(0,t)+"...":e;try{const n=JSON.stringify(e);return n.length>t?n.slice(0,t)+"...":n}catch{return String(e)}}function k8t({datasetId:e,experimentId:t,featuredItemId:n}){const r=We(),{data:s}=Ux(e),{data:a,isLoading:i}=xTe(e),{data:l,isLoading:c}=Ees(e),u=v.useMemo(()=>t?(a??[]).filter(Ce=>Ce.experimentId===t):a,[a,t]),d=v.useMemo(()=>t?(l??[]).filter(Ce=>Ce.experimentId===t):l,[l,t]),{updateExperimentResult:f}=_i(),[p,h]=v.useState(n??null);v.useEffect(()=>{n!==void 0&&h(n)},[n]);const[m,g]=v.useState(null),[y,b]=v.useState(new Set),[w,S]=v.useState(!1),[k,_]=v.useState(!1),[C,E]=v.useState(!1),[j,N]=v.useState(""),[I,P]=v.useState(""),[$,F]=v.useState(""),[D,V]=v.useState([]),[W,L]=v.useState(!1),[B,z]=v.useState(null),M=v.useMemo(()=>B??u??[],[B,u]);v.useEffect(()=>{z(null)},[e,t]),v.useEffect(()=>{u&&B===null&&z(u)},[u,B]);const G=v.useMemo(()=>{const Ce=new Set;if(s?.tags)for(const Ee of s.tags)Ce.add(Ee);for(const Ee of M)for(const _e of Ee.tags)Ce.add(_e);return[...Ce].sort()},[s,M]),q=v.useCallback(Ce=>{!s||!e||(s.tags??[]).includes(Ce)},[s,e]),R=v.useMemo(()=>m?m==="__untagged__"?M.filter(Ce=>Ce.tags.length===0):M.filter(Ce=>Ce.tags.includes(m)):M,[M,m]),U=v.useMemo(()=>{const Ce=new Map;for(const Ee of M)for(const _e of Ee.tags)Ce.set(_e,(Ce.get(_e)??0)+1);return[...Ce.entries()].sort((Ee,_e)=>_e[1]-Ee[1])},[M]),Z=v.useMemo(()=>M.filter(Ce=>Ce.tags.length===0).length,[M]),X=v.useMemo(()=>{let Ce=0;return m&&Ce++,w&&Ce++,Ce},[m,w]),te=v.useCallback((Ce,Ee)=>{z(Oe=>(Oe??[]).map(Re=>Re.id===Ce?{...Re,tags:Ee}:Re));const _e=M.find(Oe=>Oe.id===Ce);_e?.experimentId&&_e?.datasetId&&f.mutate({datasetId:_e.datasetId,experimentId:_e.experimentId,resultId:_e.id,tags:Ee})},[M,f]),J=v.useCallback((Ce,Ee)=>{const _e=M.find(Oe=>Oe.id===Ce);_e?.traceId&&Ee!==void 0&&r.createFeedback({feedback:{traceId:_e.traceId,source:"studio",feedbackSource:"studio",feedbackType:"rating",value:Ee==="positive"?1:-1,experimentId:_e.experimentId??void 0,sourceId:_e.id}}).catch(()=>{}),z(Oe=>(Oe??[]).map(Re=>Re.id===Ce?{...Re,rating:Ee}:Re))},[M,r]),ee=v.useCallback((Ce,Ee)=>{const _e=M.find(Oe=>Oe.id===Ce);_e?.traceId&&r.createFeedback({feedback:{traceId:_e.traceId,source:"studio",feedbackSource:"studio",feedbackType:"comment",value:Ee,comment:Ee,experimentId:_e.experimentId??void 0,sourceId:_e.id}}).catch(()=>{}),z(Oe=>(Oe??[]).map(Re=>Re.id===Ce?{...Re,comment:Ee}:Re))},[M,r]),ae=v.useCallback(Ce=>{const Ee=M.find(_e=>_e.id===Ce);z(_e=>(_e??[]).filter(Oe=>Oe.id!==Ce)),b(_e=>{const Oe=new Set(_e);return Oe.delete(Ce),Oe}),p===Ce&&h(null),Ee?.experimentId&&Ee?.datasetId&&f.mutate({datasetId:Ee.datasetId,experimentId:Ee.experimentId,resultId:Ee.id,status:null})},[M,f,p]),ce=v.useCallback(Ce=>{const Ee=M.find(_e=>_e.id===Ce);z(_e=>(_e??[]).filter(Oe=>Oe.id!==Ce)),b(_e=>{const Oe=new Set(_e);return Oe.delete(Ce),Oe}),p===Ce&&h(null),Ee?.experimentId&&Ee?.datasetId&&f.mutate({datasetId:Ee.datasetId,experimentId:Ee.experimentId,resultId:Ee.id,status:"complete"})},[M,f,p]),Y=v.useMemo(()=>{const Ce=w?d??[]:R;return!w||!m?Ce:m==="__untagged__"?Ce.filter(Ee=>Ee.tags.length===0):Ce.filter(Ee=>Ee.tags.includes(m))},[w,d,R,m]),ne=w?c:!1,ue=v.useMemo(()=>new Set(Y.map(Ce=>Ce.id)),[Y]),pe=v.useMemo(()=>[...y].filter(Ce=>ue.has(Ce)).length,[y,ue]),le=Y.length>0&&pe===Y.length,ve=pe>0&&!le,ye=v.useCallback(Ce=>{b(Ee=>{const _e=new Set(Ee);return _e.has(Ce)?_e.delete(Ce):_e.add(Ce),_e})},[]),Se=v.useCallback(()=>{b(le?new Set:new Set(Y.map(Ce=>Ce.id)))},[le,Y]),Ne=v.useCallback(Ce=>{for(const Ee of y){const _e=M.find(Oe=>Oe.id===Ee);_e&&!_e.tags.includes(Ce)&&te(Ee,[..._e.tags,Ce])}},[M,y,te]),ke=v.useCallback(Ce=>{for(const Ee of y){const _e=M.find(Oe=>Oe.id===Ee);_e&&_e.tags.includes(Ce)&&te(Ee,_e.tags.filter(Oe=>Oe!==Ce))}},[M,y,te]),Ie=v.useCallback(()=>{for(const Ce of y)ce(Ce);b(new Set)},[y,ce]),ze=v.useCallback(()=>{for(const Ce of y)ae(Ce);b(new Set)},[y,ae]),oe=v.useCallback(()=>{N(""),E(!0)},[]),se=v.useCallback(async()=>{if(!(!I||!$)){_(!0),E(!1);try{const Ce=M.filter(_e=>y.has(_e.id));if(Ce.length===0){_(!1);return}const Ee=await r.clusterFailures({modelId:`${I}/${$}`,items:Ce.map(_e=>({id:_e.id,input:_e.input,output:_e.output??void 0,error:typeof _e.error=="string"?_e.error:_e.error?String(_e.error):void 0,scores:_e.scores,existingTags:_e.tags.length>0?_e.tags:void 0})),availableTags:G.length>0?G:void 0,prompt:j||void 0});Ee.proposedTags&&Ee.proposedTags.length>0&&(V(Ee.proposedTags.map(_e=>({..._e,accepted:!0}))),L(!0))}catch(Ce){console.error("Analysis failed:",Ce)}finally{_(!1)}}},[I,$,M,y,r,G,j]),re=v.useCallback(()=>{for(const Ce of D){if(!Ce.accepted)continue;const Ee=M.find(_e=>_e.id===Ce.itemId);if(Ee){const _e=[...new Set([...Ee.tags,...Ce.tags])];te(Ee.id,_e)}}L(!1)},[D,M,te]),he=v.useCallback(Ce=>{h(Ee=>Ee===Ce?null:Ce)},[]),xe=v.useMemo(()=>p?Y.find(Ce=>Ce.id===p)??null:null,[p,Y]),je=p?Y.findIndex(Ce=>Ce.id===p):-1,Pe=je>0?()=>h(Y[je-1].id):void 0,Ge=je>=0&&je<Y.length-1?()=>h(Y[je+1].id):void 0,Ze="auto minmax(15rem,1fr) 10rem 8rem 6rem 6rem";return i?o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx(Qt,{className:"w-6 h-6"})}):o.jsxs("div",{className:"flex flex-1 min-h-0 overflow-hidden",children:[o.jsx(br,{open:C,onOpenChange:E,children:o.jsxs(xr,{children:[o.jsxs(wr,{children:[o.jsx(gr,{children:"Analyze Items"}),o.jsx(Qs,{children:"Use an LLM to automatically suggest tags for the selected items."})]}),o.jsxs("div",{className:"space-y-4 py-2",children:[o.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[o.jsxs("div",{children:[o.jsx(Rt,{className:"text-xs mb-1 block",children:"Provider"}),o.jsx(Fy,{value:I,onValueChange:P})]}),o.jsxs("div",{children:[o.jsx(Rt,{className:"text-xs mb-1 block",children:"Model"}),o.jsx(zy,{llmId:I,value:$,onValueChange:F})]})]}),o.jsxs(ge,{variant:"ui-xs",className:"text-neutral3",children:[y.size," item",y.size!==1?"s":""," will be analyzed"]}),o.jsxs("div",{children:[o.jsx(Rt,{className:"text-xs",children:"Instructions (optional)"}),o.jsx(Yl,{value:j,onChange:Ce=>N(Ce.target.value),placeholder:"E.g., Focus on safety issues and factual errors...",rows:3,className:"text-xs mt-1"})]})]}),o.jsxs(kc,{children:[o.jsx(de,{variant:"outline",onClick:()=>E(!1),children:"Cancel"}),o.jsxs(de,{onClick:se,disabled:!I||!$||k,children:[k?o.jsx(Qt,{className:"w-4 h-4 mr-1"}):null,"Analyze"]})]})]})}),o.jsx(br,{open:W,onOpenChange:L,children:o.jsxs(xr,{className:"max-w-2xl max-h-[80vh] overflow-y-auto",children:[o.jsxs(wr,{children:[o.jsx(gr,{children:"Review Proposed Tags"}),o.jsxs(Qs,{children:[D.filter(Ce=>Ce.accepted).length," of ",D.length," proposals selected"]})]}),o.jsx("div",{className:"space-y-3 py-2",children:D.map((Ce,Ee)=>{const _e=M.find(Oe=>Oe.id===Ce.itemId);return o.jsx("div",{className:K("p-3 border rounded-lg",!Ce.accepted&&"opacity-50"),children:o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx($o,{checked:Ce.accepted,onCheckedChange:Oe=>V(Re=>Re.map((qe,Ye)=>Ye===Ee?{...qe,accepted:!!Oe}:qe))}),o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx(ge,{variant:"ui-xs",className:"text-neutral4 truncate block",children:_e?typeof _e.input=="string"?_e.input.slice(0,100):JSON.stringify(_e.input).slice(0,100):Ce.itemId}),o.jsx("div",{className:"flex gap-1 flex-wrap mt-1.5",children:Ce.tags.map((Oe,Re)=>o.jsx(r8t,{tag:Oe,onRename:qe=>V(Ye=>Ye.map((tt,It)=>It===Ee?{...tt,tags:tt.tags.map((ot,zt)=>zt===Re?qe:ot)}:tt)),onRemove:()=>V(qe=>qe.map((Ye,tt)=>tt===Ee?{...Ye,tags:Ye.tags.filter((It,ot)=>ot!==Re)}:Ye))},`${Oe}-${Re}`))}),Ce.reason&&o.jsx(ge,{variant:"ui-xs",className:"text-neutral3 mt-1 block italic",children:Ce.reason})]})]})},Ce.itemId)})}),o.jsxs(kc,{children:[o.jsx(de,{variant:"outline",onClick:()=>L(!1),children:"Cancel"}),o.jsxs(de,{onClick:re,disabled:D.filter(Ce=>Ce.accepted).length===0,children:["Accept ",D.filter(Ce=>Ce.accepted).length," proposals"]})]})]})}),o.jsxs("div",{className:K("grid w-full h-full grid-cols-1 gap-4 overflow-y-auto",xe&&"grid-cols-[1fr_1fr]"),children:[o.jsxs("div",{className:"grid gap-8 content-start w-full overflow-y-auto",children:[o.jsxs("div",{className:"flex items-center justify-between w-full flex-wrap gap-4 gap-x-6",children:[o.jsxs("div",{className:"flex items-center gap-3",children:[o.jsxs(pt,{children:[o.jsx(pt.Trigger,{asChild:!0,children:o.jsxs(de,{variant:"outline",size:"md",children:[o.jsx(Rlt,{}),"Filter",X>0&&o.jsx("span",{className:K("ml-0.5 inline-flex items-center justify-center rounded-full bg-accent1/50 text-neutral5 text-ui-sm w-5 h-5"),children:X})]})}),o.jsxs(pt.Content,{align:"start",className:K("min-w-48"),children:[o.jsxs(pt.Sub,{children:[o.jsxs(pt.SubTrigger,{children:["Status",w&&o.jsx("span",{className:K("ml-auto text-ui-sm text-accent1"),children:"1"})]}),o.jsxs(pt.SubContent,{children:[o.jsx(pt.CheckboxItem,{checked:!w,onCheckedChange:()=>{S(!1),h(null)},onSelect:Ce=>Ce.preventDefault(),children:"Review Queue"}),o.jsx(pt.CheckboxItem,{checked:w,onCheckedChange:()=>{S(!0),h(null)},onSelect:Ce=>Ce.preventDefault(),children:"Completed"})]})]}),o.jsxs(pt.Sub,{children:[o.jsxs(pt.SubTrigger,{children:["Tags",m&&o.jsx("span",{className:K("ml-auto text-ui-sm text-accent1"),children:"1"})]}),o.jsxs(pt.SubContent,{children:[o.jsx(pt.CheckboxItem,{checked:!m,onCheckedChange:()=>g(null),onSelect:Ce=>Ce.preventDefault(),children:"All"}),Z>0&&o.jsx(pt.CheckboxItem,{checked:m==="__untagged__",onCheckedChange:()=>g(m==="__untagged__"?null:"__untagged__"),onSelect:Ce=>Ce.preventDefault(),children:"Untagged"}),U.length>0&&o.jsx(pt.Separator,{}),U.map(([Ce])=>o.jsx(pt.CheckboxItem,{checked:m===Ce,onCheckedChange:()=>g(m===Ce?null:Ce),onSelect:Ee=>Ee.preventDefault(),children:Ce},Ce))]})]}),X>0&&o.jsxs(o.Fragment,{children:[o.jsx(pt.Separator,{}),o.jsxs(pt.Item,{onSelect:()=>{g(null),S(!1),h(null)},children:[o.jsx(vs,{}),"Clear all filters"]})]})]})]}),X>0&&o.jsxs(de,{variant:"outline",size:"md",onClick:()=>{g(null),S(!1),h(null)},children:[o.jsx(vs,{}),"Reset"]})]}),!w&&y.size>0&&o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(n8t,{selectedCount:y.size,vocabulary:G,onApplyTag:Ne,onRemoveTag:ke,onNewTag:Ce=>Ne(Ce)}),o.jsxs(pt,{children:[o.jsx(pt.Trigger,{asChild:!0,children:o.jsxs(de,{disabled:k,children:[k?o.jsx(Qt,{className:"w-4 h-4"}):o.jsx(Ue,{size:"sm",children:o.jsx(va,{})}),"Actions"]})}),o.jsxs(pt.Content,{align:"end",children:[o.jsxs(pt.Item,{onSelect:Ie,children:[o.jsx(Ue,{size:"sm",children:o.jsx(sO,{})}),"Complete"]}),o.jsxs(pt.Item,{onSelect:ze,children:[o.jsx(Ue,{size:"sm",children:o.jsx(eu,{})}),"Remove"]}),o.jsx(pt.Separator,{}),o.jsxs(pt.Item,{onSelect:oe,children:[o.jsx(Ue,{size:"sm",children:o.jsx(bg,{})}),"Analyze"]})]})]})]})]}),ne?o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx(Qt,{className:"w-6 h-6"})}):Y.length===0?o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsxs("div",{className:"text-center px-8",children:[o.jsx(ge,{variant:"ui-sm",className:"text-neutral3 block",children:w?"No completed reviews yet":"No items to review"}),o.jsx(ge,{variant:"ui-xs",className:"text-neutral3 mt-2 block",children:w?"Items marked as complete will appear here for auditing.":"When experiment results are flagged for review, they will appear here."})]})}):o.jsxs(me,{columns:Ze,className:"min-w-0",children:[o.jsxs(me.Top,{hasLeadingCell:!0,children:[w?o.jsx(me.TopCell,{children:" "}):o.jsx(me.TopSelectCell,{checked:le?!0:ve?"indeterminate":!1,onToggle:()=>Se(),"aria-label":"Select all"}),o.jsxs(me.TopCells,{colStart:2,children:[o.jsx(me.TopCell,{children:"Input"}),o.jsx(me.TopCell,{children:"Comment"}),o.jsx(me.TopCell,{children:"Tags"}),o.jsx(me.TopCell,{children:"Rating"}),o.jsx(me.TopCell,{children:"Scores"})]})]}),Y.map(Ce=>{const Ee=Ce.scores?Object.entries(Ce.scores):[],_e=p===Ce.id,Oe=o.jsxs(o.Fragment,{children:[o.jsx(me.Cell,{height:"compact",className:"min-w-0 text-neutral4",children:o.jsx("span",{className:"block truncate",children:jes(Ce.input,200)})}),o.jsx(me.Cell,{height:"compact",className:"min-w-0",children:Ce.comment?o.jsx(ge,{variant:"ui-xs",className:"text-neutral3 truncate",children:Ce.comment}):o.jsx(ge,{variant:"ui-xs",className:"text-neutral2",children:"—"})}),o.jsx(me.Cell,{height:"compact",className:"min-w-0",children:Ce.tags.length>0?o.jsx(ge,{variant:"ui-xs",className:"text-neutral4 truncate",children:Ce.tags.join(", ")}):o.jsx(ge,{variant:"ui-xs",className:"text-neutral2",children:"—"})}),o.jsxs(me.Cell,{height:"compact",children:[Ce.rating==="positive"&&o.jsx(Ue,{size:"sm",className:"text-positive1",children:o.jsx(sbe,{})}),Ce.rating==="negative"&&o.jsx(Ue,{size:"sm",className:"text-negative1",children:o.jsx(rbe,{})}),!Ce.rating&&o.jsx(ge,{variant:"ui-xs",className:"text-neutral2",children:"—"})]}),o.jsx(me.Cell,{height:"compact",children:Ee.length>0?o.jsxs("div",{className:"flex items-center gap-1",children:[o.jsx(Ue,{size:"sm",className:"text-neutral3",children:o.jsx(em,{})}),o.jsx(ge,{variant:"ui-xs",className:"text-neutral4 font-mono",children:Ee[0][1].toFixed(2)}),Ee.length>1&&o.jsxs(un,{variant:"default",children:["+",Ee.length-1]})]}):o.jsx(ge,{variant:"ui-xs",className:"text-neutral2",children:"—"})})]});return o.jsxs(me.RowWrapper,{children:[w?o.jsx(me.Cell,{height:"compact",className:"justify-items-center px-4",children:o.jsx("div",{role:"img","aria-label":Ce.error?"Error":"Success",title:Ce.error?"Error":"Success",className:K("w-2 h-2 rounded-full",Ce.error?"bg-red-700":"bg-green-600")})}):o.jsx(me.SelectCell,{checked:y.has(Ce.id),onToggle:()=>ye(Ce.id),"aria-label":`Select item ${Ce.id}`}),o.jsx(me.RowButton,{flushLeft:!0,colStart:2,featured:_e,onClick:()=>he(Ce.id),children:Oe})]},Ce.id)})]})]}),xe&&o.jsx(t8t,{item:xe,isCompleted:w,tagVocabulary:G,onRate:Ce=>J(xe.id,Ce),onSetTags:Ce=>{te(xe.id,Ce);for(const Ee of Ce)G.includes(Ee)||q(Ee)},onComment:Ce=>ee(xe.id,Ce),onRemove:()=>ae(xe.id),onComplete:w?void 0:()=>ce(xe.id),onPrevious:Pe,onNext:Ge,onClose:()=>h(null)})]})]})}function Tes({datasetId:e,onAddItemClick:t,onNavigateToDataset:n}){const{navigate:r}=yn(),[s,a]=ji(),{tab:i,activeVersion:l,handleTabChange:c}=yTe(s,a),[u,d]=v.useState(!1),[f,p]=v.useState(!1),[h,m]=v.useState(!1),[g,y]=v.useState([]),[b,w]=v.useState(!1),[S,k]=v.useState([]),[_,C]=v.useState(!1),[E,j]=v.useState([]),[N,I]=v.useState(0),[P,$]=v.useState(null),[F,D]=v.useState(""),[V]=C0e(F,300),{data:W}=Ux(e),{data:L=[],total:B,isLoading:z,setEndOfListElement:M,isFetchingNextPage:G,hasNextPage:q}=_1(e,V||void 0,l),{total:R}=_1(e,void 0,l),[U,Z]=v.useState({}),{data:X,isLoading:te}=YM(e,void 0,U),{data:J}=YM(e),{deleteItems:ee}=_i(),ae=X?.experiments??[],ce=J?.experiments??[],Y=NJr({hasSearchQuery:!!V,filteredItemsLength:L.length,unfilteredItemsTotal:R,itemsTotal:B}),{data:ne}=xTe(e),ue=ne?.length??0,pe=re=>{$(re)},le=()=>{$(null)},ve=re=>{y(re),m(!0)},ye=re=>{k(re),w(!0)},Se=re=>{w(re),re||(k([]),I(he=>he+1))},Ne=re=>{r(`/datasets/${e}/items?items=${re.join(",")}`)},ke=re=>{r(`/datasets/${e}/versions?ids=${re.join(",")}`)},Ie=re=>{j(re),C(!0)},ze=async()=>{await ee.mutateAsync({datasetId:e,itemIds:E}),De.success(`Deleted ${E.length} items`),C(!1),j([]),I(re=>re+1)},oe=re=>{m(!1),y([]),I(he=>he+1),n?.(re)},se=re=>{m(re),re||(y([]),I(he=>he+1))};return o.jsxs(o.Fragment,{children:[o.jsxs(su,{defaultTab:"items",value:i,onValueChange:c,className:"grid grid-rows-[auto_1fr] h-full",children:[o.jsxs(au,{children:[o.jsxs(Vr,{value:"items",children:["Items ",o.jsx(Xs,{color:"gray",children:Y})]}),o.jsxs(Vr,{value:"experiments",children:["Experiments",o.jsx(Xs,{color:"gray",children:ae.length})]}),o.jsxs(Vr,{value:"review",children:["Review",ue>0&&o.jsx(Xs,{color:"orange",children:ue})]})]}),o.jsx(ps,{value:"items",className:"grid overflow-auto mt-5 pb-0",children:o.jsx(Ses,{datasetId:e,items:L,isLoading:z,featuredItemId:P,onItemSelect:pe,onItemClose:le,onAddClick:t??(()=>{}),onImportClick:()=>d(!0),onImportJsonClick:()=>p(!0),onBulkDeleteClick:Ie,onCreateDatasetClick:ve,onAddToDatasetClick:ye,onCompareItemsClick:Ne,datasetName:W?.name,clearSelectionTrigger:N,setEndOfListElement:M,isFetchingNextPage:G,hasNextPage:q,searchQuery:F,activeSearchQuery:V,onSearchChange:D,currentDatasetVersion:W?.version,onCompareVersionsClick:ke})}),o.jsx(ps,{value:"experiments",className:"grid overflow-auto mt-5 pb-0",children:o.jsx(ZJr,{experiments:ae,allExperiments:ce,isLoading:te,datasetId:e,filters:U,onFiltersChange:Z})}),o.jsx(ps,{value:"review",className:"overflow-auto mt-2 pb-0",children:o.jsx(k8t,{datasetId:e})})]}),o.jsx(FJr,{datasetId:e,open:u,onOpenChange:d}),o.jsx(Ces,{datasetId:e,open:f,onOpenChange:p}),o.jsx(mJr,{open:h,onOpenChange:se,items:g,onSuccess:oe}),o.jsx(gJr,{open:b,onOpenChange:Se,items:S,currentDatasetId:e}),o.jsx(jt,{open:_,onOpenChange:C,children:o.jsxs(jt.Content,{children:[o.jsxs(jt.Header,{children:[o.jsx(jt.Title,{children:"Delete Items"}),o.jsxs(jt.Description,{children:["Are you sure you want to delete ",E.length," item",E.length!==1?"s":"","? This action cannot be undone."]})]}),o.jsxs(jt.Footer,{children:[o.jsx(jt.Cancel,{children:"Cancel"}),o.jsx(jt.Action,{onClick:ze,children:ee.isPending?"Deleting...":"Delete"})]})]})})]})}function Nes(e){if(!(e instanceof Error))return null;const t=e.message.match(/- ({.*})$/);if(!t)return null;try{const n=JSON.parse(t[1]);if(n.field&&Array.isArray(n.errors))return{field:n.field,errors:n.errors}}catch{}return null}function qre({field:e,errors:t}){return t.length?o.jsx("div",{className:"mt-2 space-y-1",children:t.map((n,r)=>o.jsxs("p",{className:"text-xs text-destructive",children:[o.jsxs("code",{className:"bg-destructive/10 px-1 rounded",children:[e,n.path!=="/"?n.path:""]}),": ",n.message]},r))}):null}function Ies({datasetId:e,open:t,onOpenChange:n,onSuccess:r}){const[s,a]=v.useState("{}"),[i,l]=v.useState(""),[c,u]=v.useState(""),[d,f]=v.useState(""),[p,h]=v.useState(""),[m,g]=v.useState(null),{addItem:y}=_i(),b=async C=>{C.preventDefault();let E;try{E=JSON.parse(s)}catch{De.error("Input must be valid JSON");return}let j;if(i.trim())try{j=JSON.parse(i)}catch{De.error("Ground Truth must be valid JSON");return}let N;if(c.trim())try{N=JSON.parse(c)}catch{De.error("Expected Trajectory must be valid JSON");return}let I;if(d.trim())try{const $=JSON.parse(d);if(!Array.isArray($)){De.error("Tool Mocks must be a JSON array");return}I=$}catch{De.error("Tool Mocks must be valid JSON");return}let P;if(p.trim())try{P=JSON.parse(p)}catch{De.error("Request Context must be valid JSON");return}try{await y.mutateAsync({datasetId:e,input:E,groundTruth:j,expectedTrajectory:N,toolMocks:I,requestContext:P}),De.success("Item added successfully"),g(null),a("{}"),l(""),u(""),f(""),h(""),n(!1),r?.()}catch($){const F=Nes($);F?g(F):De.error(`Failed to add item: ${$ instanceof Error?$.message:"Unknown error"}`)}},w=C=>{a(C),m?.field==="input"&&g(null)},S=C=>{l(C),m?.field==="groundTruth"&&g(null)},k=C=>{f(C),m?.field==="toolMocks"&&g(null)},_=()=>{a("{}"),l(""),u(""),f(""),h(""),g(null),n(!1)};return o.jsx(br,{open:t,onOpenChange:n,children:o.jsxs(xr,{className:"max-w-lg",children:[o.jsx(wr,{children:o.jsx(gr,{children:"Add Item"})}),o.jsx(Ar,{children:o.jsxs("form",{onSubmit:b,className:"space-y-4",children:[o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{htmlFor:"item-input",children:"Input (JSON) *"}),o.jsx(Qr,{value:s,onChange:w,showCopyButton:!1,className:"min-h-[120px]"}),m?.field==="input"&&o.jsx(qre,{field:"input",errors:m.errors})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{htmlFor:"item-ground-truth",children:"Ground Truth (JSON, optional)"}),o.jsx(Qr,{value:i,onChange:S,showCopyButton:!1,className:"min-h-[80px]"}),m?.field==="groundTruth"&&o.jsx(qre,{field:"groundTruth",errors:m.errors})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{htmlFor:"item-trajectory",children:"Expected Trajectory (JSON, optional)"}),o.jsx(Qr,{value:c,onChange:u,showCopyButton:!1,className:"min-h-[80px]"})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{htmlFor:"item-tool-mocks",children:"Tool Mocks (JSON array, optional)"}),o.jsx(Qr,{value:d,onChange:k,showCopyButton:!1,className:"min-h-[80px]"}),m?.field==="toolMocks"&&o.jsx(qre,{field:"toolMocks",errors:m.errors})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{htmlFor:"item-request-context",children:"Request Context (JSON, optional)"}),o.jsx(Qr,{value:p,onChange:h,showCopyButton:!1,className:"min-h-[80px]"})]}),o.jsxs("div",{className:"flex justify-end gap-2 pt-4",children:[o.jsx(de,{type:"button",onClick:_,children:"Cancel"}),o.jsx(de,{type:"submit",variant:"primary",disabled:y.isPending,children:y.isPending?"Adding...":"Add Item"})]})]})})]})})}function Aes({item:e}){return o.jsx(ua,{withMargins:!1,children:o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{size:"smaller",children:[o.jsx(pN,{}),o.jsx("span",{className:"truncate",children:e.id}),o.jsx(ba,{content:e.id,tooltip:`Copy item ID: ${e.id}`})]}),o.jsxs(ua.Description,{children:[o.jsxs(Nl,{children:[o.jsx(Olt,{})," Created ",er(new Date(e.createdAt),"MMM d, yyyy h:mm aaa")]}),e.datasetVersion!=null&&o.jsxs(Nl,{children:[o.jsx(o_,{})," Version v",e.datasetVersion]})]})]})})}function wTe({item:e}){const t=e?.input?JSON.stringify(e.input,null,2):"null",n=e?.groundTruth?JSON.stringify(e.groundTruth,null,2):"null",r=e?.metadata?JSON.stringify(e.metadata,null,2):"null",s=e?.expectedTrajectory?JSON.stringify(e.expectedTrajectory,null,2):null;return o.jsxs(Bje,{children:[o.jsx(Ps.CodeSection,{title:"Input",icon:o.jsx(iO,{}),codeStr:t}),o.jsx(Ps.CodeSection,{title:"Ground Truth",icon:o.jsx(hg,{}),codeStr:n}),s&&o.jsx(Ps.CodeSection,{title:"Expected Trajectory",icon:o.jsx(Jye,{}),codeStr:s}),o.jsx(Ps.CodeSection,{title:"Metadata",icon:o.jsx(gN,{}),codeStr:r})]})}function Res({selectedScorers:e,setSelectedScorers:t,disabled:n=!1,container:r}){const{data:s,isLoading:a}=th(),i=v.useMemo(()=>s?Object.entries(s).map(([l,c])=>({value:l,label:c.scorer?.config?.name||l,description:c.scorer?.config?.description||""})):[],[s]);return o.jsxs("div",{className:"grid gap-2",children:[o.jsx(Rt,{children:"Scorers (Optional)"}),o.jsx(Xl,{multiple:!0,options:i,value:e,onValueChange:t,placeholder:"Select scorers...",searchPlaceholder:"Search scorers...",emptyText:"No scorers available",disabled:n||a,container:r})]})}const Pes=[{value:"agent",label:"Agent"},{value:"workflow",label:"Workflow"},{value:"scorer",label:"Scorer"}];function $es({targetType:e,setTargetType:t,targetId:n,setTargetId:r,container:s}){const{data:a,isLoading:i}=Sm(),{data:l,isLoading:c}=By(),{data:u,isLoading:d}=th(),f=e==="agent"?Object.entries(a??{}).map(([g,y])=>({value:g,label:y.name??g})):e==="workflow"?Object.entries(l??{}).map(([g,y])=>({value:g,label:y.name??g})):e==="scorer"?Object.entries(u??{}).map(([g,y])=>({value:g,label:y.scorer?.config?.name??g})):[],p=e==="agent"&&i||e==="workflow"&&c||e==="scorer"&&d,h=g=>{t(g),r("")},m=e==="agent"?"Agent":e==="workflow"?"Workflow":"Scorer";return o.jsxs("div",{className:"grid gap-6",children:[o.jsxs("div",{className:"grid gap-2",children:[o.jsx(Rt,{children:"Target Type"}),o.jsx(Xl,{options:Pes,value:e,onValueChange:h,placeholder:"Select target type",searchPlaceholder:"Search types...",emptyText:"No types available",container:s})]}),e&&o.jsxs("div",{className:"grid gap-2",children:[o.jsx(Rt,{children:m}),o.jsx(Xl,{options:f,value:n,onValueChange:r,placeholder:`Select ${e}`,searchPlaceholder:"Search...",emptyText:"No targets available",disabled:p,container:s})]})]})}function Mes({requestContextSchema:e,onChange:t}){const n=v.useMemo(()=>{try{return om(am(e))}catch(r){return console.error("Failed to parse requestContextSchema:",r),null}},[e]);return n?o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{children:"Request Context"}),o.jsx(J3,{schema:n,onValuesChange:t,className:"[&_button[type=submit]]:hidden"})]}):o.jsx("p",{className:"text-sm text-destructive",children:"Failed to parse request context schema"})}function Des({datasetId:e,version:t,requestContextSchema:n,open:r,onOpenChange:s,onSuccess:a}){const i=v.useRef(null),[l,c]=v.useState(""),[u,d]=v.useState(""),[f,p]=v.useState([]),[h,m]=v.useState({}),[g,y]=v.useState(""),{triggerExperiment:b}=_i(),w=!!(n&&Object.keys(n).length>0),S=l&&u,k=b.isPending,_=()=>{c(""),d(""),p([]),m({}),y("")},C=()=>{if(w){const N=Object.entries(h).filter(([,I])=>I!==void 0&&I!=="");return N.length>0?Object.fromEntries(N):void 0}if(g.trim()){let N;try{N=JSON.parse(g)}catch{throw new Error("Request Context must be valid JSON")}if(!N||typeof N!="object"||Array.isArray(N))throw new Error("Request Context must be a JSON object");return N}},E=async()=>{if(!S)return;let N;try{N=C()}catch(I){const P=I instanceof Error?I.message:"Request Context must be valid JSON";ju.error(P);return}try{const I=await b.mutateAsync({datasetId:e,targetType:l,targetId:u,scorerIds:f.length>0?f:void 0,version:t,requestContext:N});ju.success("Experiment triggered successfully"),s(!1),a?.(I.experimentId),_()}catch(I){const P=I instanceof Error?I.message:"Failed to trigger experiment";ju.error(P)}},j=()=>{k||(s(!1),_())};return o.jsx(br,{open:r,onOpenChange:j,children:o.jsxs(xr,{ref:i,children:[o.jsxs(wr,{children:[o.jsx(gr,{children:"Run Experiment"}),o.jsx(Qs,{children:t?`Execute items from ${er(new Date(t),"MMM d, yyyy")} version against a target.`:"Execute all items in this dataset against a target."})]}),o.jsxs(Ar,{className:"grid gap-6",children:[o.jsx($es,{targetType:l,setTargetType:c,targetId:u,setTargetId:d,container:i}),l&&l!=="scorer"&&o.jsx(Res,{selectedScorers:f,setSelectedScorers:p,disabled:k,container:i}),w?o.jsx(Mes,{requestContextSchema:n,onChange:m}):o.jsxs("div",{className:"space-y-2",children:[o.jsx(Rt,{children:"Request Context (JSON, optional)"}),o.jsx(Qr,{value:g,onChange:y,showCopyButton:!1,className:"min-h-[80px]"})]})]}),o.jsxs(kc,{className:"px-6 pt-4",children:[o.jsx(de,{onClick:j,disabled:k,children:"Cancel"}),o.jsx(de,{variant:"primary",onClick:E,disabled:!S||k,children:k?o.jsxs(o.Fragment,{children:[o.jsx(Qt,{className:"w-4 h-4"}),"Running..."]}):"Run"})]})]})})}const Les=e=>{const t=We();return wt({queryKey:["experiment-trace-light",e],queryFn:async()=>{if(!e)throw new Error("Trace ID is required");return t.getTraceLight(e)},enabled:!!e})},STe=e=>o.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 9.45892 8.88606",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[o.jsx("path",{d:"M8.53702 7.36403C8.98547 7.36403 9.34918 7.70502 9.34918 8.12535C9.34906 8.54559 8.9854 8.88606 8.53702 8.88606H5.6839C5.23552 8.88606 4.87186 8.54559 4.87174 8.12535C4.87174 7.70502 5.23545 7.36403 5.6839 7.36403H8.53702Z",fill:"currentColor"}),o.jsx("path",{d:"M8.53702 3.67209C8.98547 3.67209 9.34918 4.01309 9.34918 4.43342C9.34911 4.8537 8.98543 5.19413 8.53702 5.19413H5.6839C5.23549 5.19413 4.87181 4.8537 4.87174 4.43342C4.87174 4.01309 5.23545 3.67209 5.6839 3.67209H8.53702Z",fill:"currentColor"}),o.jsx("path",{d:"M8.67155 0C9.10635 2.06584e-05 9.45892 0.341006 9.45892 0.761326C9.45878 1.18153 9.10627 1.52201 8.67155 1.52203H2.88163C2.4469 1.52203 2.0944 1.18154 2.09427 0.761326C2.09427 0.340993 2.44681 3.80132e-08 2.88163 0H8.67155Z",fill:"currentColor"}),o.jsx("path",{d:"M0.757606 0.760086V4.01122H3.50594V4.76883H0.759466L0.762566 5.4291C0.76837 6.70703 1.8058 7.73972 3.08374 7.73973H3.67953V8.49796H3.08374C1.38863 8.49795 0.0120204 7.1273 0.00433981 5.4322L0 4.39188V0.760086H0.757606Z",fill:"currentColor"})]});function Vre(e){try{return JSON.stringify(e??{})}catch{return String(e)}}function Fes({report:e}){const{served:t,unconsumed:n,liveCalls:r,failure:s}=e,a=[...t.map(i=>({outcome:"served",toolName:i.toolName,args:i.args})),...r.map(i=>({outcome:"live",toolName:i.toolName,args:i.args})),...n.map(i=>({outcome:"unconsumed",toolName:i.toolName,args:i.args}))];return o.jsxs("div",{className:"grid gap-2","data-testid":"tool-mock-report",children:[o.jsx(bn.SectionHeading,{icon:o.jsx(nm,{}),className:"mb-2",children:"Tool Mocks"}),s&&o.jsx(In,{variant:"destructive",title:"Mock mismatch",children:o.jsxs(In.Message,{children:[o.jsx("span",{className:"block",children:`Tool "${s.toolName}" was called with arguments that did not match an available mock (${s.code}).`}),o.jsxs("span",{className:"mt-1 block font-mono text-xs",children:["Called with: ",Vre(s.args)]}),n.length>0&&o.jsxs("span",{className:"mt-1 block font-mono text-xs",children:["Unconsumed mocks: ",n.map(i=>Vre(i.args)).join(", ")]})]})}),o.jsx("div",{className:"rounded border border-border1 divide-y divide-border1 text-sm",children:a.map((i,l)=>o.jsxs("div",{className:"flex items-center justify-between gap-2 px-3 py-1.5",children:[o.jsxs("span",{className:"min-w-0 truncate",children:[o.jsx("span",{className:"font-mono text-neutral4",children:i.toolName}),o.jsx("span",{className:"ml-2 font-mono text-xs text-neutral3",children:Vre(i.args)})]}),o.jsx("span",{className:`shrink-0 text-xs px-2 py-0.5 rounded ${zes(i.outcome)}`,children:i.outcome})]},`${i.outcome}-${i.toolName}-${l}`))})]})}function zes(e){switch(e){case"served":return"bg-accent1/10 text-accent1";case"live":return"bg-orange-500/10 text-orange-400";case"unconsumed":return"bg-neutral3/10 text-neutral4"}}function Bes({result:e,scores:t,onPrevious:n,onNext:r,onClose:s,onShowTrace:a,onOpenInReview:i,onScoreClick:l,featuredScoreId:c,onFlagForReview:u,collapsed:d,onCollapsedChange:f}){const[p,h]=v.useState(!1),m=d??p,g=f??h,y=!!e?.error,b=G8(e?.input),w=G8(e?.output),S=G8(e?.groundTruth),k=u&&e.status!=="needs-review"&&e.status!=="complete",_=Array.isArray(e.tags)?e.tags:[];return o.jsxs(bn,{collapsed:m,children:[o.jsxs(bn.Header,{children:[o.jsxs(bn.Heading,{children:["Result ",o.jsxs("b",{children:["# ",e.id.length>12?`${e.id.slice(0,12)}…`:e.id]})]}),o.jsxs($r,{className:"ml-auto shrink-0",children:[f&&o.jsx(de,{size:"md",tooltip:m?"Expand panel":"Collapse panel",onClick:()=>g(!m),children:m?o.jsx(jlt,{}):o.jsx(Elt,{})}),o.jsx(bn.NextPrevNav,{onPrevious:n,onNext:r,previousLabel:"Previous result",nextLabel:"Next result"}),o.jsxs(de,{size:"md",onClick:a,disabled:!e.traceId,children:[o.jsx(STe,{}),"Trace"]}),o.jsx(bn.CloseButton,{onClick:s,tooltip:"Close result panel"})]})]}),!m&&o.jsxs(bn.Content,{children:[o.jsxs("div",{className:"grid gap-4 mb-6",children:[o.jsxs(Bt,{children:[o.jsx(Bt.Key,{children:"Item Id"}),o.jsx(Bt.ValueWithCopyBtn,{copyTooltip:"Copy Item Id to clipboard",copyValue:e.itemId,children:e.itemId}),o.jsx(Bt.Key,{children:"Created"}),o.jsx(Bt.Value,{children:er(new Date(e.createdAt),"MMM d, yyyy 'at' h:mm a")})]}),y&&o.jsx(In,{variant:"destructive",title:"Error",children:o.jsx(In.Message,{children:G8(e?.error&&typeof e.error=="object"?e.error.message:e?.error)})}),t&&t.length>0&&o.jsxs(me,{columns:"1fr 1fr",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Scorer"}),o.jsx(me.TopCell,{children:"Score"})]}),t.map(C=>o.jsxs(me.RowButton,{featured:c===C.id,onClick:()=>l?.(C.id),children:[o.jsx(me.Cell,{height:"compact",children:C.scorerId}),o.jsx(me.MonoCell,{children:C.score.toFixed(3)})]},C.id))]}),e.toolMockReport&&o.jsx(Fes,{report:e.toolMockReport}),(e.status||_.length>0||k)&&o.jsxs("div",{className:"grid gap-2",children:[o.jsx(bn.SectionHeading,{icon:o.jsx(gN,{}),className:"mb-2",children:"Review"}),(e.status||_.length>0)&&o.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[e.status&&o.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium ${e.status==="needs-review"?"bg-orange-500/10 text-orange-400":e.status==="complete"?"bg-accent1/10 text-accent1":"bg-neutral3/10 text-neutral4"}`,children:e.status}),_.map(C=>o.jsx("span",{className:"text-xs px-2 py-0.5 rounded bg-surface4 text-neutral4",children:C},C))]}),k&&o.jsx("div",{children:o.jsxs(de,{size:"sm",onClick:()=>u(e.id),children:[o.jsx(eq,{}),"Flag for Review"]})}),e.status==="needs-review"&&i&&o.jsx("div",{children:o.jsxs(de,{size:"sm",onClick:i,children:[o.jsx(Pa,{}),"Review"]})})]})]}),o.jsxs("div",{className:"grid gap-3",children:[o.jsx(bn.CodeSection,{title:"Input",icon:o.jsx(pN,{}),codeStr:b}),o.jsx(bn.CodeSection,{title:"Output",icon:o.jsx(hg,{}),codeStr:w}),o.jsx(bn.CodeSection,{title:"Ground Truth",icon:o.jsx(nbe,{}),codeStr:S})]})]})]})}function G8(e){return e==null?"-":typeof e=="string"?e:JSON.stringify(e,null,2)}function Ues({results:e,isLoading:t,featuredResultId:n,onResultClick:r,columns:s,scoresByItemId:a,scorerIds:i,setEndOfListElement:l,isFetchingNextPage:c,hasNextPage:u,selectedIds:d,onToggleSelect:f}){const p=!!(d&&f),h=[p?"auto":"",...s.map(g=>g.size)].filter(Boolean).join(" "),m=s.some(g=>g.name==="input");return t?o.jsx(el,{columns:h}):o.jsxs(me,{columns:h,className:"min-w-0",children:[o.jsxs(me.Top,{hasLeadingCell:p,children:[p&&o.jsx(me.TopCell,{children:" "}),p?o.jsx(me.TopCells,{colStart:2,children:s.map(g=>o.jsx(me.TopCell,{children:g.label},g.name))}):s.map(g=>o.jsx(me.TopCell,{children:g.label},g.name))]}),e.length===0?o.jsx(me.NoMatch,{message:"No results yet"}):o.jsxs(o.Fragment,{children:[e.map(g=>{const y=!!g.error,b=g.id===n,w=o.jsxs(o.Fragment,{children:[o.jsx(me.IdCell,{id:g.itemId}),o.jsx(me.Cell,{height:"compact",children:o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx("div",{className:"flex items-center justify-center w-10 relative bg-transparent h-full",children:o.jsx("div",{role:"img","aria-label":y?"Error":"Success",className:K("w-2 h-2 rounded-full",y?"bg-red-700":"bg-green-600")})})}),o.jsx(Bn,{children:y?"Error":"Success"})]})}),m&&o.jsx(me.MonoCell,{children:Ves(qes(g.input),200)}),i?.map(S=>{const _=a?.[g.itemId]?.find(C=>C.scorerId===S);return o.jsx(me.Cell,{height:"compact",className:"font-mono text-neutral3 text-ui-smd",children:_!=null?_.score.toFixed(3):"-"},S)})]});return p?o.jsxs(me.RowWrapper,{children:[o.jsx(me.SelectCell,{checked:d.has(g.id),onToggle:()=>f(g.id),"aria-label":`Select result ${g.itemId}`}),o.jsx(me.RowButton,{flushLeft:!0,colStart:2,featured:b,onClick:()=>r(g.id),children:w})]},g.id):o.jsx(me.RowButton,{featured:b,onClick:()=>r(g.id),children:w},g.id)}),o.jsx(me.NextPageLoading,{isLoading:c,hasMore:u,setEndOfListElement:l})]})]})}function qes(e){return e==null?"-":typeof e=="string"?e:JSON.stringify(e,null,2)}function Ves(e,t){return e.length<=t?e:e.slice(0,t-1)+"..."}function Hes(e){const t=e.scorer;return t?.hasJudge===!1?!0:t?.hasJudge===!0?!1:!e.preprocessPrompt&&!e.analyzePrompt&&!e.generateScorePrompt&&!e.generateReasonPrompt}function Wes({score:e,onNext:t,onPrevious:n,onClose:r,onShowTrace:s,collapsed:a,onCollapsedChange:i}){const[l,c]=v.useState(!1),u=a??l,d=i??c,f=Hes(e),p=f?"N/A — code-based scorer":"N/A — step not configured";return o.jsxs(bn,{collapsed:u,children:[o.jsxs(bn.Header,{children:[o.jsxs(bn.Heading,{children:["Score ",o.jsx("b",{children:e.scorerId})]}),o.jsxs($r,{className:"ml-auto shrink-0",children:[i&&o.jsx(de,{size:"md",tooltip:u?"Expand panel":"Collapse panel",onClick:()=>d(!u),children:u?o.jsx(jlt,{}):o.jsx(Elt,{})}),(n||t)&&o.jsx(bn.NextPrevNav,{onPrevious:n,onNext:t,previousLabel:"Previous score",nextLabel:"Next score"}),s&&o.jsxs(de,{size:"md",onClick:s,disabled:!e.traceId,children:[o.jsx(STe,{}),"Trace"]}),o.jsx(bn.CloseButton,{onClick:r,tooltip:"Close score panel"})]})]}),!u&&o.jsx(bn.Content,{children:o.jsxs("div",{className:"grid gap-3",children:[o.jsx(bn.CodeSection,{title:`Score: ${e.score}`,icon:o.jsx(em,{}),codeStr:e.reason||p,simplified:!0}),!f&&o.jsxs(o.Fragment,{children:[o.jsx(bn.CodeSection,{title:"Preprocess Prompt",icon:o.jsx(xh,{}),codeStr:e.preprocessPrompt||p,simplified:!0}),o.jsx(bn.CodeSection,{title:"Analyze Prompt",icon:o.jsx(xh,{}),codeStr:e.analyzePrompt||p,simplified:!0}),o.jsx(bn.CodeSection,{title:"Generate Score Prompt",icon:o.jsx(xh,{}),codeStr:e.generateScorePrompt||p,simplified:!0}),o.jsx(bn.CodeSection,{title:"Generate Reason Prompt",icon:o.jsx(xh,{}),codeStr:e.generateReasonPrompt||p,simplified:!0})]})]})})]})}const TQe=[{name:"scorer",label:"Scorer",size:"1fr"},{name:"avg",label:"Avg Score",size:"1fr"},{name:"count",label:"Items Scored",size:"1fr"}];function Zes({scoresByItemId:e,experimentStatus:t}){const n=v.useMemo(()=>{if(!e)return[];const r={};for(const s of Object.values(e))for(const a of s)r[a.scorerId]||(r[a.scorerId]={sum:0,count:0}),r[a.scorerId].sum+=a.score,r[a.scorerId].count++;return Object.entries(r).map(([s,{sum:a,count:i}])=>({scorerId:s,avg:a/i,count:i})).sort((s,a)=>s.scorerId.localeCompare(a.scorerId))},[e]);if(n.length===0){const r=t==="running"||t==="pending",s=e!==void 0;let a,i;return r?(a="Experiment in progress",i="Summary metrics will appear here once the experiment completes."):s?(a="No scorers configured",i="Add scorers when triggering an experiment to evaluate results and see summary metrics here."):(a="Loading scores",i="Fetching scorer results…"),o.jsx("div",{className:"flex h-full items-center justify-center py-12",children:o.jsx(Lr,{iconSlot:o.jsx(em,{className:"w-8 h-8 text-neutral3"}),titleSlot:a,descriptionSlot:i})})}return o.jsxs(gn,{children:[o.jsxs(gn.Header,{columns:TQe,children:[o.jsx(gn.HeaderCol,{children:"Scorer"}),o.jsx(gn.HeaderCol,{children:"Avg Score"}),o.jsx(gn.HeaderCol,{children:"Items Scored"})]}),o.jsx(gn.Scroller,{children:o.jsx(gn.Items,{children:n.map(({scorerId:r,avg:s,count:a})=>o.jsxs(gn.Row,{columns:TQe,children:[o.jsx(gn.TextCell,{children:r}),o.jsx(gn.TextCell,{className:"font-mono",children:s.toFixed(3)}),o.jsx(gn.TextCell,{className:"font-mono",children:a})]},r))})})]})}function O8t({experimentId:e,datasetId:t,experimentStatus:n,results:r,isLoading:s,setEndOfListElement:a,isFetchingNextPage:i,hasNextPage:l}){const[c,u]=v.useState(null),[d,f]=v.useState(null),[p,h]=v.useState(void 0),[m,g]=v.useState(null),[y,b]=v.useState(new Set),[w,S]=v.useState(!1),[k,_]=v.useState(!1),[C,E]=v.useState(!1),[j,N]=v.useState(!1),{updateExperimentResult:I}=_i(),P=v.useCallback(se=>{b(re=>{const he=new Set(re);return he.has(se)?he.delete(se):he.add(se),he})},[]),$=v.useCallback(()=>b(new Set),[]),F=v.useCallback(()=>{const se=r.filter(re=>!!re.error).map(re=>re.id);b(new Set(se))},[r]),D=v.useCallback(async se=>{if(w||se.length===0)return;S(!0);let re=0;const he=new Set;try{for(const xe of se)try{await I.mutateAsync({datasetId:t,experimentId:e,resultId:xe,status:"needs-review"}),re++,he.add(xe)}catch{}}finally{S(!1)}he.size>0&&b(xe=>{const je=new Set(xe);for(const Pe of he)je.delete(Pe);return je}),re>0&&De(`${re} result${re>1?"s":""} flagged for review`)},[t,e,w,I]),V=r.find(se=>se.id===c)??null,[W,L]=v.useState("summary"),[B,z]=v.useState(null),M=se=>{L(se),se!=="reviews"&&z(null)},{data:G}=xTe(t),q=(G??[]).filter(se=>se.experimentId===e).length,{data:R}=V6t(e,n),U=v.useMemo(()=>{if(!R)return[];const se=new Set;for(const re of Object.values(R))for(const he of re)se.add(he.scorerId);return[...se].sort()},[R]),Z=se=>{u(se),f(null),h(void 0),g(null)},X=se=>{Z(se===c?null:se)},te=()=>{Z(null)},J=()=>{if(!V)return;const se=r.findIndex(re=>re.id===V.id);if(se>=0&&se<r.length-1)return()=>Z(r[se+1].id)},ee=()=>{if(!V)return;const se=r.findIndex(re=>re.id===V.id);if(se>0)return()=>Z(r[se-1].id)},ae=V?R?.[V.itemId]:void 0,ce=ae?.find(se=>se.id===m)??null,Y=se=>{g(se===m?null:se),f(null),h(void 0)},ne=()=>{if(!m||!ae)return;const se=ae.findIndex(re=>re.id===m);if(se>=0&&se<ae.length-1)return()=>g(ae[se+1].id)},ue=()=>{if(!m||!ae)return;const se=ae.findIndex(re=>re.id===m);if(se>0)return()=>g(ae[se-1].id)},{data:pe,isLoading:le}=Les(d),ve=pe?.spans,{data:ye,isLoading:Se}=oI(d,p),Ne=ye?.span,{handlePreviousSpan:ke,handleNextSpan:Ie}=KH(ve,p??null,h),ze=(()=>{const se=[],re=!!ce,he=!!d;return se.push(k?"auto":re||he?"2fr":"1fr"),re&&se.push(j?"auto":"3fr"),he&&se.push(C?"auto":"3fr"),he&&p&&se.push("3fr"),se.join(" ")})(),oe=v.useMemo(()=>[{name:"itemId",label:"Item ID",size:"7rem"},{name:"status",label:"Status",size:"5rem"},{name:"input",label:"Input",size:"minmax(15rem,1fr)"},...U.map(se=>({name:se,label:se,size:"12rem"}))],[U]);return o.jsxs(su,{defaultTab:"summary",value:W,onValueChange:M,className:"grid grid-rows-[auto_1fr] h-full overflow-hidden",children:[o.jsxs(au,{children:[o.jsx(Vr,{value:"summary",children:"Summary"}),o.jsx(Vr,{value:"results",children:"Results"}),o.jsxs(Vr,{value:"reviews",children:["Reviews",q>0&&o.jsx(Xs,{color:"orange",children:q})]})]}),o.jsx(ps,{value:"summary",className:"overflow-y-auto mt-5",children:o.jsx(Zes,{scoresByItemId:R,experimentStatus:n})}),o.jsx(ps,{value:"reviews",className:"overflow-auto mt-2 pb-0",children:o.jsx(k8t,{datasetId:t,experimentId:e,featuredItemId:B})}),o.jsxs(ps,{value:"results",className:"grid grid-rows-[auto_1fr] overflow-hidden mt-2",children:[o.jsxs("div",{className:"mb-4",children:[y.size>0&&o.jsxs("div",{className:"flex items-center gap-2 px-4 py-2 bg-surface3",children:[o.jsxs(ge,{variant:"ui-xs",className:"text-neutral5 font-medium",children:[y.size," selected"]}),o.jsx("div",{className:"flex-1"}),o.jsxs(de,{variant:"outline",size:"sm",disabled:w,onClick:()=>D([...y]),children:[o.jsx(Ue,{size:"sm",children:o.jsx(eq,{})}),"Flag for Review"]}),o.jsx(de,{variant:"ghost",size:"sm",onClick:$,children:"Clear"})]}),r.length>0&&y.size===0&&!s&&o.jsx("div",{className:"flex items-center gap-2 px-4 py-2",children:o.jsx(de,{variant:"ghost",size:"sm",onClick:F,children:"Select loaded failures"})})]}),o.jsxs("div",{className:K("grid w-full h-full grid-cols-1 gap-4 overflow-y-auto",V&&"grid-cols-[1fr_1fr]"),children:[o.jsx("div",{className:"flex overflow-y-auto w-full",children:o.jsx("div",{className:"grid gap-8 content-start w-full overflow-y-auto",children:o.jsx(Ues,{results:r,isLoading:s,featuredResultId:c,onResultClick:X,columns:oe,scoresByItemId:R,scorerIds:U,setEndOfListElement:a,isFetchingNextPage:i,hasNextPage:l,selectedIds:y,onToggleSelect:P})})}),V&&o.jsxs("div",{className:"grid gap-4 max-h-full min-h-0 overflow-auto content-start",style:{gridTemplateRows:ze},children:[o.jsx(Bes,{result:V,scores:ae,onPrevious:ee(),onNext:J(),onClose:te,onScoreClick:Y,featuredScoreId:m,onShowTrace:()=>{V.traceId&&(f(V.traceId),h(void 0),g(null),_(!0),E(!1))},onOpenInReview:()=>{z(V.id),L("reviews")},onFlagForReview:se=>D([se]),collapsed:k,onCollapsedChange:_}),ce&&o.jsx(Wes,{score:ce,onNext:ne(),onPrevious:ue(),onClose:()=>g(null),onShowTrace:()=>{ce.traceId&&(f(ce.traceId),h(void 0),_(!0),N(!0),E(!1))},collapsed:j,onCollapsedChange:N}),d&&o.jsxs(o.Fragment,{children:[o.jsx(fTe,{traceId:d,spans:ve,isLoading:le,onClose:()=>{f(null),h(void 0),_(!1),N(!1)},onSpanSelect:h,initialSpanId:p??null,placement:"traces-list",showUnavailableFeaturesMsg:!1,collapsed:C,onCollapsedChange:E,LinkComponent:$3,traceHref:`/traces/${d}`}),p&&o.jsx(QH,{traceId:d,spanId:p,span:Ne,isLoading:Se,onPrevious:ke,onNext:Ie,onClose:()=>h(void 0)})]})]})]})]})]})}const Ges={pending:o.jsx(aO,{}),running:o.jsx(Hde,{}),completed:o.jsx(Js,{}),failed:o.jsx(vs,{})};function Qes({experiment:e,className:t}){const n=e.status,r=e.totalItems-e.succeededCount-e.failedCount;return o.jsxs("div",{className:K("grid justify-items-end gap-3",t),children:[o.jsxs("div",{className:"flex p-1 px-3 text-ui-lg capitalize text-neutral4 gap-2 items-center bg-surface5 rounded-lg ",children:[o.jsx("span",{className:K("w-5 h-5 flex items-center justify-center rounded-full text-black","[&>svg]:w-4 [&>svg]:h-4",{"bg-green-700":n==="completed","bg-red-700":n==="failed","bg-cyan-600":n==="running","bg-yellow-600":n==="pending"}),children:Ges[n]}),e.status]}),o.jsxs("div",{className:K("flex items-center gap-3 text-neutral3 text-ui-md ","[&>span]:flex [&>span]:gap-1 [&>span]:items-center ","[&_b]:text-neutral4 [&_b]:font-semibold"),children:[o.jsxs("span",{children:["Total: ",o.jsx("b",{children:e.totalItems})]}),o.jsxs("span",{children:["Succeeded: ",o.jsx("b",{children:e.succeededCount})]}),o.jsxs("span",{children:["Failed: ",o.jsx("b",{children:e.failedCount})]}),(n==="pending"||n==="running")&&o.jsxs("span",{children:["Pending: ",o.jsx("b",{children:r})]})]})]})}function Yes({onPrevious:e,onNext:t,previousAriaLabel:n="Previous",nextAriaLabel:r="Next"}){return o.jsxs($r,{spacing:"close",children:[o.jsxs(de,{onClick:e,disabled:!e,"aria-label":n,children:[o.jsx(Bq,{})," Prev"]}),o.jsxs(de,{onClick:t,disabled:!t,"aria-label":r,children:["Next",o.jsx(Fq,{})]})]})}function kTe({delta:e}){const t=e>0?o.jsx(Xs,{size:"small",color:"green",intensity:"muted",children:o.jsx(l3,{})}):e<0?o.jsx(Xs,{size:"small",color:"red",intensity:"muted",children:o.jsx(dln,{})}):null;return o.jsxs("span",{className:K("font-mono text-sm text-neutral4 min-w-20"),children:[o.jsx("span",{className:"w-3 inline-block",children:e>0?"+ ":e<0?"- ":""}),Math.abs(e).toFixed(2)," ",t]})}function Q8(e){return e==null?"-":typeof e=="string"?e:JSON.stringify(e,null,2)}function Xes({item:e,baselineId:t,contenderId:n,baselineVersion:r,contenderVersion:s,onPrevious:a,onNext:i,onClose:l}){const c=e.results[t],u=e.results[n],d=!!(c&&u),f=new Set;if(c)for(const h of Object.keys(c.scores))f.add(h);if(u)for(const h of Object.keys(u.scores))f.add(h);const p=[...f].sort();return o.jsxs(Gr,{withLeftSeparator:!0,children:[o.jsxs(Gr.Toolbar,{children:[o.jsx(Yes,{onPrevious:a,onNext:i,previousAriaLabel:"Previous comparison item",nextAriaLabel:"Next comparison item"}),o.jsx($r,{children:o.jsx(de,{onClick:l,"aria-label":"Close comparison detail panel",children:o.jsx(vs,{})})})]}),o.jsxs(Gr.Content,{className:"pb-6",children:[o.jsx(ua,{withMargins:!1,children:o.jsx(ua.Column,{children:o.jsxs(ua.Title,{size:"smaller",children:[o.jsx(pN,{})," ",e.itemId]})})}),d?o.jsx(o.Fragment,{children:o.jsxs(Bje,{children:[p.length>0&&o.jsxs("div",{className:"grid gap-3",children:[o.jsx("h4",{className:"text-sm font-medium text-neutral5",children:"Scores"}),o.jsx("div",{className:"grid gap-2",children:p.map(h=>{const m=c?.scores[h]??null,g=u?.scores[h]??null,y=m!=null&&g!=null?g-m:null;return o.jsxs("div",{className:"flex items-center justify-between gap-4 px-3 py-2 rounded-lg bg-surface2",children:[o.jsx("span",{className:"text-sm text-neutral5 font-medium",children:h}),o.jsxs("div",{className:"flex items-center gap-4",children:[o.jsxs("span",{className:"text-sm text-neutral3",children:[m!=null?m.toFixed(3):"-"," →"," ",g!=null?g.toFixed(3):"-"]}),y!=null&&o.jsx(kTe,{delta:y})]})]},h)})})]}),o.jsx(Ps.CodeSection,{title:o.jsxs(o.Fragment,{children:[o.jsx(Xs,{color:"purple",children:"Baseline "})," Experiment Output"]}),icon:o.jsx(hg,{}),codeStr:Q8(c?.output)}),o.jsx(Ps.CodeSection,{title:o.jsxs(o.Fragment,{children:[o.jsx(Xs,{color:"cyan",children:"Contender "})," Experiment Output"]}),icon:o.jsx(hg,{}),codeStr:Q8(u?.output)}),o.jsx(Ps.CodeSection,{title:"Item Input",icon:o.jsx(iO,{}),codeStr:Q8(e.input)}),o.jsx(Ps.CodeSection,{title:"Item Ground Truth",icon:o.jsx(nbe,{}),codeStr:Q8(e.groundTruth)})]})}):o.jsx(In,{variant:"warning",title:"Comparison not available",children:o.jsx(In.Message,{children:(()=>{const h=c?"Contender":"Baseline",m=c?s:r;return o.jsxs(o.Fragment,{children:["The ",h," experiment was run against dataset",m!=null?` v. ${m}`:"",", which does not contain this item."]})})()})})]})]})}function Kes({items:e,baselineId:t,contenderId:n,scorerIds:r,featuredItemId:s,columns:a,onItemClick:i}){return o.jsx(Gr,{children:o.jsxs(gn,{children:[o.jsxs(gn.Header,{columns:a,children:[o.jsx(gn.HeaderCol,{children:"Item ID"}),!s&&r.map(l=>o.jsx(gn.HeaderCol,{className:"flex justify-center",children:l},l))]}),o.jsx(gn.Scroller,{children:o.jsx(gn.Items,{children:e.map(l=>{const c=l.results[t],u=l.results[n],d=!!(c&&u);return o.jsx(gn.Row,{children:o.jsxs(gn.RowButton,{item:{id:l.itemId},columns:a,isFeatured:s===l.itemId,onClick:i,children:[o.jsx(gn.IdCell,{id:l.itemId,className:d?"":"text-neutral1"}),!s&&o.jsx(o.Fragment,{children:r.map(f=>{const p=c?.scores[f]??null,h=u?.scores[f]??null,m=p!=null&&h!=null?h-p:null;return o.jsx(gn.Cell,{className:"flex items-center gap-5 justify-center font-mono",children:m!=null?o.jsxs(o.Fragment,{children:[o.jsxs("span",{className:"flex items-center text-neutral2 min-w-24",children:[p?.toFixed(2)," → ",h?.toFixed(2)]}),o.jsx(kTe,{delta:m})]}):o.jsx("span",{className:"text-neutral1",children:"-"})},f)})})]})},l.itemId)})})})]})})}const Jes={baseline:{label:"Baseline",color:"purple",customStyle:"items-end justify-items-end [&>div]:justify-end border-r-0 rounded-r-none"},contender:{label:"Contender",color:"cyan",customStyle:"items-start justify-items-start [&>div]:justify-start border-l-0 rounded-l-none"}};function NQe({datasetId:e,experiment:t,type:n}){const{Link:r}=yn(),{label:s,color:a,customStyle:i}=Jes[n];if(!t)return null;const l=t.createdAt?new Date(t.createdAt):null;return o.jsxs("div",{className:`grid border-2 border-border1 rounded-lg p-5 gap-3 ${i}`,children:[o.jsxs("div",{className:"flex items-center gap-3 w-full overflow-clip",children:[n==="contender"&&o.jsxs(Xs,{size:"small",color:a,children:[s,o.jsx(hm,{})]}),o.jsx(de,{as:r,href:`/datasets/${e}/experiments/${t.id}`,children:o.jsx("span",{className:"truncate min-w-0",children:t.id})}),n==="baseline"&&o.jsxs(Xs,{size:"small",color:a,children:[o.jsx(Ec,{})," ",s]})]}),o.jsxs("div",{className:"flex flex-wrap gap-x-4 gap-y-1 text-ui-sm text-neutral3",children:[o.jsxs(Nl,{children:[o.jsx(nbe,{})," ",t.targetType," / ",t.targetId]}),o.jsxs(Nl,{children:[o.jsx(rq,{})," v",t.datasetVersion??"—"]}),l&&o.jsxs(Nl,{children:[o.jsx(_lt,{})," ",er(l,"MMM d, yyyy HH:mm")]})]})]})}function ets({datasetId:e,experimentIdA:t,experimentIdB:n,onSwap:r}){const[s,a]=v.useState(null),{data:i,isLoading:l,error:c}=UKr(e,t,n),{data:u}=IU(e,t),{data:d}=IU(e,n),f=u&&d&&u.datasetVersion!==d.datasetVersion,p=v.useMemo(()=>{if(!i)return[];const E=new Set;for(const j of i.items)for(const N of Object.values(j.results))if(N)for(const I of Object.keys(N.scores))E.add(I);return[...E].sort()},[i]),h=v.useMemo(()=>{if(!i||p.length===0)return[];const E=i.baselineId,j=t===E?n:t;return p.map(N=>{let I=0,P=0,$=0,F=0;for(const L of i.items){const B=L.results[E]?.scores[N],z=L.results[j]?.scores[N];B!=null&&(I+=B,$++),z!=null&&(P+=z,F++)}const D=$>0?I/$:null,V=F>0?P/F:null,W=D!=null&&V!=null?V-D:null;return{scorerId:N,avgA:D,avgB:V,delta:W}})},[i,p,t,n]),m=[{name:"scorer",label:"Scorer",size:"1fr"},{name:"baselineAvg",label:"Baseline Avg",size:"1fr"},{name:"comparisonAvg",label:"Comparison Avg",size:"1fr"},{name:"delta",label:"Delta",size:"1fr"}],g=v.useMemo(()=>[{name:"itemId",label:"Item ID",size:"8rem"},...s?[]:p.map(E=>({name:E,label:E,size:"1fr"}))],[p,s]),y=i?.items.find(E=>E.itemId===s)??null,b=E=>{a(E===s?null:E)},w=()=>{a(null)},S=()=>{if(!i||!s)return;const E=i.items.findIndex(j=>j.itemId===s);if(E>=0&&E<i.items.length-1)return()=>a(i.items[E+1].itemId)},k=()=>{if(!i||!s)return;const E=i.items.findIndex(j=>j.itemId===s);if(E>0)return()=>a(i.items[E-1].itemId)};if(l)return o.jsx("div",{className:"flex items-center justify-center h-64",children:o.jsx(Qt,{})});if(c)return o.jsx(In,{variant:"warning",title:"Error loading comparison",children:o.jsx(In.Message,{children:c instanceof Error?c.message:"Unknown error"})});if(!i||i.items.length===0)return o.jsx("div",{className:"text-neutral4 text-sm text-center py-8",children:"No comparison data"});const _=i.baselineId,C=t===_?n:t;return o.jsxs("div",{className:"grid gap-10",children:[u&&d&&o.jsxs("div",{className:K("relative grid xl:grid-cols-[1fr_auto_1fr] gap-4 xl:gap-0"),children:[o.jsx(NQe,{datasetId:e,experiment:u,type:"baseline"}),o.jsx("div",{className:"relative flex items-center justify-center px-[2vw] before:absolute before:inset-y-0 before:left-1/2 before:-translate-x-1/2 before:w-[2px] before:bg-border1",children:o.jsx("div",{className:"relative z-1 bg-surface2 rounded-lg p-2",children:o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx(de,{onClick:r,children:"VS"})}),o.jsx(Bn,{children:"Switch the order"})]})})}),o.jsx(NQe,{datasetId:e,experiment:d,type:"contender"})]}),f&&o.jsx(In,{variant:"warning",title:"Version mismatch",children:o.jsxs(In.Message,{children:["These experiments used different dataset versions (v",u.datasetVersion," vs v",d.datasetVersion,"). Results may not be directly comparable."]})}),h.length>0&&o.jsxs(gn,{children:[o.jsxs(gn.Header,{columns:m,children:[o.jsx(gn.HeaderCol,{children:"Scorer"}),o.jsx(gn.HeaderCol,{className:"flex justify-center",children:o.jsxs(IGe,{children:[o.jsx(Xs,{color:"purple",size:"small",intensity:"muted",children:"Baseline"}),o.jsx(Xs,{color:"purple",size:"small",children:"Avg"})]})}),o.jsx(gn.HeaderCol,{className:"flex justify-center",children:o.jsxs(IGe,{children:[o.jsx(Xs,{color:"cyan",size:"small",intensity:"muted",children:"Contender"}),o.jsx(Xs,{color:"cyan",size:"small",children:"Avg"})]})}),o.jsx(gn.HeaderCol,{className:"flex justify-center",children:"Delta"})]}),o.jsx(gn.Scroller,{children:o.jsx(gn.Items,{children:h.map(({scorerId:E,avgA:j,avgB:N,delta:I})=>o.jsxs(gn.Row,{columns:m,children:[o.jsx(gn.TextCell,{children:E}),o.jsx(gn.TextCell,{className:"text-center font-mono",children:j!=null?j.toFixed(3):"-"}),o.jsx(gn.TextCell,{className:"text-center font-mono",children:N!=null?N.toFixed(3):"-"}),o.jsx(gn.TextCell,{className:"flex justify-center",children:I!=null?o.jsx(kTe,{delta:I}):"-"})]},E))})})]}),o.jsxs(ry,{className:K({"grid-cols-[1fr_2fr]":!!y}),children:[o.jsx(Kes,{items:i.items,baselineId:_,contenderId:C,scorerIds:p,featuredItemId:s,columns:g,onItemClick:b}),!!y&&o.jsx(Xes,{item:y,baselineId:_,contenderId:C,baselineVersion:u?.datasetVersion,contenderVersion:d?.datasetVersion,onPrevious:k(),onNext:S(),onClose:w})]})]})}function tts({datasetId:e,itemId:t,onVersionSelect:n,onCompareVersionsClick:r,activeVersion:s}){const{data:a,isLoading:i}=vTe(e,t),[l,c]=v.useState(!1),[u,d]=v.useState(new Set),f=b=>{n?.(b)},p=b=>s==null?b.isLatest:b.datasetVersion===s,h=b=>{d(w=>{const S=new Set(w);if(S.has(b))S.delete(b);else if(S.size>=2){const[k]=Array.from(S);return new Set([k,b])}else S.add(b);return S})},m=()=>{c(!1),d(new Set)},g=()=>{c(!0)},y=()=>{u.size===2&&r?.([...u])};return o.jsxs(Gr,{className:"min-w-56",children:[l?o.jsx(Gr.Toolbar,{className:"grid justify-stretch gap-3 w-full",children:o.jsxs($r,{children:[o.jsx(de,{onClick:m,children:"Cancel"}),o.jsx(de,{variant:"primary",disabled:u.size!==2,onClick:y,tooltip:u.size!==2?"Check 2 versions to compare":void 0,className:"grow",children:"Compare"})]})}):o.jsx(o.Fragment,{children:(a||[]).length>1&&o.jsx(Gr.Toolbar,{children:o.jsxs(de,{onClick:g,className:"w-full",children:[o.jsx(Qw,{})," Compare Ver."]})})}),i?o.jsx(nts,{}):o.jsxs(gn,{children:[o.jsx(gn.Header,{children:o.jsx(gn.HeaderCol,{children:"Item Version History"})}),o.jsx(gn.Scroller,{children:o.jsx(gn.Items,{children:a?.map(b=>{const w=String(b.datasetVersion),S=typeof b.updatedAt=="string"?new Date(b.updatedAt):b.updatedAt;return o.jsxs(gn.Row,{isSelected:l&&u.has(w),children:[l&&o.jsx(gn.LabelCell,{children:o.jsx($o,{checked:u.has(w),disabled:b.isDeleted,onCheckedChange:()=>{},onClick:k=>{k.stopPropagation(),b.isDeleted||h(w)},"aria-label":`Select version ${b.datasetVersion}`})}),o.jsx(gn.RowButton,{item:b,columns:[{name:"version",label:"Item Version History",size:"1fr"}],isFeatured:p(b),onClick:()=>f(b),className:"py-2",children:o.jsx(gn.VersionCell,{version:b.datasetVersion,date:S,isLatest:b.isLatest,isDeleted:b.isDeleted})})]},String(b.datasetVersion))})})})]})]})}function nts(){return o.jsxs(gn,{children:[o.jsx(gn.Header,{columns:[{name:"version",label:"Item Version History",size:"1fr"}],children:o.jsx(gn.HeaderCol,{children:"Item Version History"})}),o.jsx(gn.Items,{children:Array.from({length:3}).map((e,t)=>o.jsx(gn.Row,{children:o.jsx(gn.RowButton,{columns:[{name:"version",label:"Item Version History",size:"1fr"}],children:o.jsx(gn.TextCell,{isLoading:!0,children:"Loading..."})})},t))})]})}function rts(e,t){if(t){const n=typeof t=="string"?new Date(t):t;return`v${e} ${er(n,"MMM dd 'at' H:mm:ss a")}`}return`v${e}`}function sts({datasetId:e,versionA:t,versionB:n,onVersionChange:r}){const{data:s}=sTe(e),a=(s??[]).map(i=>({value:String(i.version),label:`${rts(i.version,i.createdAt)}${i.isCurrent?" (current)":""}`}));return o.jsxs(Gr.Toolbar,{className:"grid grid-cols-[1fr_1fr_1fr_10rem] gap-4 w-full",children:[o.jsx("div",{}),o.jsx(xc,{label:"Version A",labelIsHidden:!0,name:"version-a",placeholder:"Select version",options:a,value:t??"",onValueChange:i=>r?.(i,n??"")}),o.jsx(xc,{label:"Version B",labelIsHidden:!0,name:"version-b",options:a,value:n??"",onValueChange:i=>r?.(t??"",i)}),o.jsx("div",{})]})}const ats=[{name:"id",label:"ID",size:"1fr"},{name:"versionA",label:"Version A",size:"1fr"},{name:"versionB",label:"Version B",size:"1fr"},{name:"compare",label:"Compare",size:"10rem"}],its={added:{color:"blue",borderColor:"border-blue-900",icon:o.jsx(Fr,{}),tooltip:"Added in this version"},changed:{color:"orange",borderColor:"border-yellow-900",icon:o.jsx(Vlt,{}),tooltip:"Changed in this version"},same:{color:"green",borderColor:"border-green-900",icon:o.jsx(Pcn,{}),tooltip:"Same in both versions"}};function Hre({red:e=!1,tooltip:t}){return o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx(wln,{className:K("text-neutral3/40 w-5 h-5 ",{"text-red-900":e})})}),t&&o.jsx(Bn,{children:t})]})}function VS({variant:e,version:t}){if(!e)return o.jsxs("span",{className:"text-ui-md text-neutral4",children:["v. ",t]});const{color:n,icon:r,tooltip:s}=its[e];return o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsxs("div",{className:"grid grid-cols-[1fr_auto]",children:[t!==void 0&&o.jsxs("span",{className:"pr-3 text-ui-md text-neutral4 min-w-16 flex justify-end",children:["v. ",t]}),o.jsx(Xs,{color:n,size:"small",children:r})]})}),o.jsx(Bn,{children:s})]})}function ots(e,t){return e&&t&&e.datasetVersion===t.datasetVersion?"same":e&&t&&e.datasetVersion!==t.datasetVersion?"changed":e?"added":"removed"}function lts({datasetId:e,versionA:t,versionB:n,allItems:r,itemsAMap:s,itemsBMap:a}){const{Link:i}=yn(),l=t>n;return o.jsx(gn,{children:o.jsx(gn.Scroller,{children:o.jsx(gn.Items,{children:r.map(({id:c})=>{const u=s.get(c),d=a.get(c),f=ots(u,d);return o.jsxs(gn.Row,{columns:ats,children:[o.jsx(gn.IdCell,{id:c,isShortened:!1}),f!=="same"?o.jsxs(o.Fragment,{children:[u?.datasetVersion?o.jsx(gn.LinkCell,{LinkComponent:i,href:`/datasets/${e}/items/${c}`,className:"gap-2",children:!d&&l?o.jsx(VS,{variant:"added",version:u.datasetVersion}):f==="changed"&&l?o.jsx(VS,{variant:"changed",version:u.datasetVersion}):o.jsx(VS,{version:u.datasetVersion})}):o.jsx(gn.Cell,{className:"justify-center flex items-center",children:o.jsx(Hre,{red:l,tooltip:l?"Deleted in this version":"Not present in this version"})}),d?.datasetVersion?o.jsx(gn.LinkCell,{LinkComponent:i,href:`/datasets/${e}/items/${c}`,className:"gap-2",children:!u&&!l?o.jsx(VS,{variant:"added",version:d.datasetVersion}):f==="changed"&&!l?o.jsx(VS,{variant:"changed",version:d.datasetVersion}):o.jsx(VS,{version:d.datasetVersion})}):o.jsx(gn.Cell,{className:"justify-center flex items-center",children:o.jsx(Hre,{red:!l,tooltip:l?"Not present in this version":"Deleted in this version"})})]}):o.jsx(gn.LinkCell,{LinkComponent:i,href:`/datasets/${e}/items/${c}`,className:"col-span-2 gap-2",children:o.jsx(VS,{variant:"same",version:d?.datasetVersion})}),f==="changed"?o.jsx(gn.LinkCell,{LinkComponent:i,href:`/datasets/${e}/items/${c}/versions?ids=${u?.datasetVersion},${d?.datasetVersion}`,children:"Compare"}):o.jsx(gn.Cell,{children:o.jsx(Hre,{tooltip:o.jsxs(o.Fragment,{children:["Comparing is available",o.jsx("br",{})," only for changed items"]})})})]},c)})})})})}const IQe={needsReview:"#facc15",complete:"#22c55e"},cts=[{label:"Needs Review",color:IQe.needsReview},{label:"Reviewed",color:IQe.complete}];function uts({reviewSummary:e,experiments:t,datasets:n,isLoading:r,isError:s}){const{data:a,maxVal:i,totalInPipeline:l}=v.useMemo(()=>{if(!e?.counts||!t)return{data:[],maxVal:0,totalInPipeline:0};const u=new Map;for(const m of t)u.set(m.id,m);const d=new Map;if(n)for(const m of n)d.set(m.id,m.name);let f=0,p=0;const h=[];for(const m of e.counts){const g=m.needsReview+m.complete;if(g===0)continue;p+=g,g>f&&(f=g);const y=u.get(m.experimentId),b=y?.datasetId?d.get(y.datasetId):void 0,w=b?`${b} · ${m.experimentId.slice(0,8)}`:m.experimentId.slice(0,8);h.push({name:w,values:[m.needsReview,m.complete]})}return{data:h,maxVal:f,totalInPipeline:p}},[e,t,n]),c=a.length>0;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Review Pipeline",description:"Items in review across experiments."}),c&&o.jsx(Ut.Summary,{value:String(l),label:"Items in pipeline"})]}),r?o.jsx(Ut.Loading,{}):s?o.jsx(Ut.Error,{message:"Failed to load review data"}):o.jsx(Ut.Content,{children:c?o.jsx(oN,{data:a,segments:cts,maxVal:i,fmt:u=>String(u)}):o.jsx(Ut.NoData,{message:"No items have been sent to review yet"})})]})}function OTe(){const e=We();return wt({queryKey:["experiment-review-summary"],queryFn:()=>e.getExperimentReviewSummary()})}function _8t(e){const t=new Map;if(!e?.counts)return t;for(const n of e.counts)t.set(n.experimentId,{needsReview:n.needsReview,complete:n.complete,total:n.total});return t}function dts(e,t){const n=new Map,r=_8t(e);if(!r.size||!t)return n;for(const s of t){const a=r.get(s.id);if(!a||!s.datasetId||a.needsReview+a.complete===0)continue;const l=n.get(s.datasetId)??{needsReview:0,complete:0};l.needsReview+=a.needsReview,l.complete+=a.complete,n.set(s.datasetId,l)}return n}function fts(e){return e?.counts?e.counts.reduce((t,n)=>({needsReview:t.needsReview+n.needsReview,complete:t.complete+n.complete,inPipeline:t.inPipeline+n.needsReview+n.complete}),{needsReview:0,complete:0,inPipeline:0}):{needsReview:0,complete:0,inPipeline:0}}const pts=10;function hts(){const[e,t]=v.useState(!1),[n,r]=v.useState(""),[s,a]=v.useState("all"),[i,l]=v.useState("all"),[c,u]=v.useState("all"),[d,f]=v.useState(0),{data:p,isLoading:h,error:m}=Rg({page:d,perPage:pts}),{data:g,isLoading:y,error:b}=WZ(),{data:w}=OTe(),S=v.useMemo(()=>p?.datasets??[],[p?.datasets]),k=p?.pagination?.hasMore??!1,_=v.useMemo(()=>g?.experiments??[],[g?.experiments]),C=v.useMemo(()=>iJr(S),[S]),E=v.useMemo(()=>dts(w,_),[w,_]),j=h||y,N=m||b,I=()=>t(!0),P=v.useCallback(()=>f(z=>z+1),[]),$=v.useCallback(()=>f(z=>Math.max(0,z-1)),[]),F=v.useCallback(z=>{r(z),f(0)},[]),D=v.useCallback(z=>{a(z),f(0)},[]),V=v.useCallback(z=>{l(z),f(0)},[]),W=v.useCallback(z=>{u(z),f(0)},[]);if(N&&gs(N))return o.jsx(lr,{children:o.jsx(Vs,{})});if(N&&ys(N))return o.jsx(lr,{children:o.jsx(Ds,{resource:"datasets"})});if(N)return o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load datasets",message:N.message})});if(S.length===0&&!j&&d===0)return o.jsxs(o.Fragment,{children:[o.jsx(lr,{children:o.jsx(dJr,{onCreateClick:I})}),o.jsx(Ave,{open:e,onOpenChange:t})]});const L=s!=="all"||i!=="all"||c!=="all"||n!=="",B=()=>{r(""),a("all"),l("all"),u("all"),f(0)};return o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsx(hJr,{search:n,onSearchChange:F,targetFilter:s,onTargetFilterChange:D,experimentFilter:i,onExperimentFilterChange:V,tagFilter:c,onTagFilterChange:W,tagOptions:C,onReset:B,hasActiveFilters:L,onCreateClick:I})}),o.jsx(uJr,{datasets:S,experiments:_,reviewByDataset:E,isLoading:j,search:n,targetFilter:s,experimentFilter:i,tagFilter:c,currentPage:d,hasMore:k,onNextPage:P,onPrevPage:$}),o.jsx(Ave,{open:e,onOpenChange:t})]})}function Y8({children:e}){return o.jsxs(Lt,{height:"full",children:[o.jsx("div",{}),o.jsx(Lt.MainArea,{isCentered:!0,children:e})]})}function mts(){const{datasetId:e}=dr(),t=bs(),[n,r]=ji(),{activeVersion:s}=yTe(n,r),[a,i]=v.useState(!1),[l,c]=v.useState(!1),[u,d]=v.useState(!1),[f,p]=v.useState(!1),[h,m]=v.useState(!1),{data:g,error:y,isLoading:b}=Ux(e),{data:w=[],isLoading:S}=_1(e,void 0,s),k=!S&&w.length===0;if(b)return null;if(y&&gs(y))return o.jsx(Y8,{children:o.jsx(Vs,{})});if(y&&ys(y))return o.jsx(Y8,{children:o.jsx(Ds,{resource:"datasets"})});if(y&&H1e(y)||!b&&!y&&!g)return o.jsx(Y8,{children:o.jsx(Lr,{iconSlot:o.jsx(ay,{}),titleSlot:"Dataset not found",descriptionSlot:`No dataset with id "${e}".`,actionSlot:o.jsxs(de,{as:ci,to:"/datasets",children:[o.jsx(Ec,{}),"Back to Datasets"]})})});if(y)return o.jsx(Y8,{children:o.jsx(Fi,{title:"Failed to load dataset",message:y instanceof Error?y.message:"An unexpected error occurred. Please try again."})});const _=E=>{t(`/datasets/${e}/experiments/${E}`)},C=()=>{t("/datasets")};return o.jsxs(o.Fragment,{children:[o.jsxs(Lt,{height:"full",children:[o.jsx(Lt.TopArea,{children:o.jsxs(Lt.Row,{children:[o.jsxs(Lt.Column,{children:[g?.description&&o.jsx("p",{className:"text-ui-smd text-neutral3 mb-1",children:g.description}),o.jsxs(Bt,{numOfCol:2,children:[o.jsx(Bt.Key,{children:"Created at"}),o.jsx(Bt.Value,{children:g?.createdAt?er(new Date(g.createdAt),"MMM d, yyyy"):""}),o.jsx(Bt.Key,{children:"Latest version"}),o.jsxs(Bt.Value,{children:["v",g?.version??""]})]})]}),o.jsx(Lt.Column,{children:o.jsxs($r,{children:[k?o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx("span",{className:"cursor-not-allowed",children:o.jsx("div",{className:"pointer-events-none opacity-50",inert:!0,"aria-disabled":"true",children:o.jsxs(de,{variant:"primary",children:[o.jsx(Pp,{}),s!=null?`Run on v${s}`:"Run Experiment"]})})})}),o.jsx(Bn,{children:"Add items to the dataset before running an experiment"})]}):o.jsxs(de,{variant:"primary",onClick:()=>i(!0),children:[o.jsx(Pp,{}),s!=null?`Run on v${s}`:"Run Experiment"]}),o.jsxs(pt,{children:[o.jsx(pt.Trigger,{asChild:!0,children:o.jsx(de,{size:"lg","aria-label":"Dataset actions menu",children:o.jsx(u3,{})})}),o.jsxs(pt.Content,{align:"end",className:"w-48",children:[o.jsxs(pt.Item,{onSelect:()=>d(!0),children:[o.jsx(tm,{})," Edit Dataset"]}),o.jsxs(pt.Item,{onSelect:()=>m(!0),children:[o.jsx(Rp,{})," Duplicate Dataset"]}),o.jsxs(pt.Item,{onSelect:()=>p(!0),className:"text-red-500 focus:text-red-400",children:[o.jsx(eu,{})," Delete Dataset"]})]})]})]})})]})}),o.jsx(Lt.MainArea,{children:o.jsx(Tes,{datasetId:e,onAddItemClick:()=>c(!0)})})]}),o.jsx(Des,{datasetId:e,version:s??void 0,requestContextSchema:g?.requestContextSchema,open:a,onOpenChange:i,onSuccess:_}),o.jsx(Ies,{datasetId:e,open:l,onOpenChange:c}),g&&o.jsx(xJr,{open:u,onOpenChange:d,dataset:{id:g.id,name:g.name,description:g?.description||"",targetType:g.targetType,inputSchema:g.inputSchema,groundTruthSchema:g.groundTruthSchema,requestContextSchema:g.requestContextSchema}}),g&&o.jsx(vJr,{open:h,onOpenChange:m,sourceDatasetId:g.id,sourceDatasetName:g.name,sourceDatasetDescription:g.description,sourceDatasetTargetType:g.targetType}),g&&o.jsx(SJr,{open:f,onOpenChange:p,datasetId:g.id,datasetName:g.name,onSuccess:C})]})}function C8t({experiment:e}){const{Link:t,paths:n}=yn(),{data:r}=Sm(),{data:s}=By(),{data:a}=th(),i=()=>{switch(e.targetType){case"agent":return n.agentLink(e.targetId);case"workflow":return n.workflowLink(e.targetId);case"scorer":return n.scorerLink(e.targetId);default:return"#"}},l=()=>{const u=e.targetId;if(!u)return u;switch(e.targetType){case"agent":return r?.[u]?.name??u;case"workflow":return s?.[u]?.name??u;case"scorer":return a?.[u]?.scorer?.config?.name??u;default:return u}},c=e.agentVersion&&e.targetType==="agent"&&e.targetId?`${n.agentLink(e.targetId)}/editor?version=${encodeURIComponent(e.agentVersion)}`:null;return o.jsx(Lt.TopArea,{children:o.jsxs(Lt.Row,{children:[o.jsx(Lt.Column,{children:o.jsxs(Bt,{numOfCol:2,children:[o.jsx(Bt.Key,{children:"Created at"}),o.jsx(Bt.Value,{children:er(new Date(e.createdAt),"MMM d, yyyy 'at' h:mm a")}),e.completedAt&&o.jsxs(o.Fragment,{children:[o.jsx(Bt.Key,{children:"Completed at"}),o.jsx(Bt.Value,{children:er(new Date(e.completedAt),"MMM d, yyyy 'at' h:mm a")})]}),o.jsx(Bt.Key,{children:"Target"}),o.jsx(Bt.ValueLink,{href:i(),as:t,children:l()}),e.agentVersion&&o.jsxs(o.Fragment,{children:[o.jsx(Bt.Key,{children:"Version"}),c?o.jsx(Bt.ValueLink,{href:c,as:t,children:e.agentVersion}):o.jsx(Bt.Value,{children:e.agentVersion})]})]})}),o.jsx(Lt.Column,{children:o.jsx(Qes,{experiment:e})})]})})}function X8({children:e}){return o.jsxs(Lt,{height:"full",children:[o.jsx("div",{}),o.jsx(Lt.MainArea,{isCentered:!0,children:e})]})}function gts(){const{datasetId:e,experimentId:t}=dr(),{data:n,isLoading:r,error:s}=IU(e,t),{data:a,isLoading:i,setEndOfListElement:l,isFetchingNextPage:c,hasNextPage:u}=BZ({datasetId:e,experimentId:t,experimentStatus:n?.status});return!e||!t||r?null:s&&gs(s)?o.jsx(X8,{children:o.jsx(Vs,{})}):s&&ys(s)?o.jsx(X8,{children:o.jsx(Ds,{resource:"datasets"})}):s&&H1e(s)||!r&&!s&&!n?o.jsx(X8,{children:o.jsx(Lr,{iconSlot:o.jsx(Wye,{}),titleSlot:"Experiment not found",descriptionSlot:`No experiment with id "${t}".`,actionSlot:o.jsxs(de,{as:ci,to:`/datasets/${e}?tab=experiments`,children:[o.jsx(Ec,{}),"Back to Dataset"]})})}):s?o.jsx(X8,{children:o.jsx(Fi,{title:"Failed to load experiment",message:s instanceof Error?s.message:"An unexpected error occurred. Please try again."})}):o.jsxs(Lt,{height:"full",children:[o.jsx(C8t,{experiment:n}),o.jsx(Lt.MainArea,{children:o.jsx(O8t,{experimentId:t,datasetId:e,experimentStatus:n.status,results:a??[],isLoading:i,setEndOfListElement:l,isFetchingNextPage:c,hasNextPage:u})})]})}function vts(){const{datasetId:e}=dr(),[t,n]=ji(),{error:r}=Ux(e??""),s=t.get("baseline")??"",a=t.get("contender")??"";return r&&gs(r)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})})}):r&&ys(r)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"datasets"})})}):!e||!s||!a?o.jsx(cs,{children:o.jsx(xy,{children:o.jsxs("div",{className:"text-neutral4 text-center py-8",children:[o.jsx("p",{children:"Select two experiments to compare."}),o.jsxs("p",{className:"text-sm mt-2",children:["Use the URL format: /datasets/","{datasetId}","/experiments?baseline=","{experimentIdA}","&contender=","{experimentIdB}"]})]})})}):o.jsx(cs,{children:o.jsx(xy,{children:o.jsxs("div",{className:"max-w-[100rem] w-full px-12 mx-auto grid content-start ",children:[o.jsxs(ua,{children:[o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{children:[o.jsx(Qw,{})," Dataset Experiments Comparison"]}),o.jsxs(ua.Description,{children:["Comparing"," ",o.jsx(ci,{to:`/datasets/${e}/experiments/${s}`,children:s.slice(0,8)})," vs"," ",o.jsx(ci,{to:`/datasets/${e}/experiments/${a}`,children:a.slice(0,8)})]})]}),o.jsx(ua.Column,{children:o.jsxs(de,{as:ci,to:`/datasets/${e}`,children:[o.jsx(Ec,{}),"Back to Dataset"]})})]}),o.jsx(ets,{datasetId:e,experimentIdA:s,experimentIdB:a,onSwap:()=>{n({baseline:a,contender:s})}})]})})})}function yts(){const{datasetId:e,itemId:t}=dr(),{Link:n}=yn(),r=bs(),{data:s,isLoading:a,error:i}=vTe(e??"",t??""),{updateItem:l,deleteItem:c}=_i(),{data:u}=Ux(e??""),d=s?.[0]??null,f=d?.isDeleted??!1,[p,h]=v.useState(null),m=v.useMemo(()=>!d||f?{input:"",groundTruth:"",metadata:"",trajectory:"",toolMocks:"",requestContext:""}:{input:JSON.stringify(d.input,null,2),groundTruth:d.groundTruth?JSON.stringify(d.groundTruth,null,2):"",metadata:d.metadata?JSON.stringify(d.metadata,null,2):"",trajectory:d.expectedTrajectory!=null?JSON.stringify(d.expectedTrajectory,null,2):"",toolMocks:d.toolMocks?.length?JSON.stringify(d.toolMocks,null,2):"",requestContext:d.requestContext?JSON.stringify(d.requestContext,null,2):""},[d,f]),g=d?.datasetVersion??0,[y,b]=v.useState(!1),[w,S]=v.useState(m.input),[k,_]=v.useState(m.groundTruth),[C,E]=v.useState(m.metadata),[j,N]=v.useState(m.trajectory),[I,P]=v.useState(m.toolMocks),[$,F]=v.useState(m.requestContext),[D,V]=v.useState(g);g!==D&&(V(g),S(m.input),_(m.groundTruth),E(m.metadata),N(m.trajectory),P(m.toolMocks),F(m.requestContext));const[W,L]=v.useState(!1),B=J=>{h(f?J:J.isLatest?null:J)},z=()=>{h(null)},M=!f&&p!=null,G=()=>{M||b(!0)},q=()=>{M||L(!0)},R=async()=>{if(!e||!t)return;let J;try{J=JSON.parse(w)}catch{De.error("Input must be valid JSON");return}let ee;if(k.trim())try{ee=JSON.parse(k)}catch{De.error("Ground Truth must be valid JSON");return}let ae;if(C.trim())try{ae=JSON.parse(C)}catch{De.error("Metadata must be valid JSON");return}let ce;const Y=j!==m.trajectory;if(Y&&j.trim())try{ce=JSON.parse(j)}catch{De.error("Expected Trajectory must be valid JSON");return}let ne;const ue=I!==m.toolMocks;if(ue&&I.trim())try{const ve=JSON.parse(I);if(!Array.isArray(ve)){De.error("Tool Mocks must be a JSON array");return}ne=ve}catch{De.error("Tool Mocks must be valid JSON");return}let pe;const le=$!==m.requestContext;if(le&&$.trim())try{pe=JSON.parse($)}catch{De.error("Request Context must be valid JSON");return}try{await l.mutateAsync({datasetId:e,itemId:t,input:J,groundTruth:ee,metadata:ae,...Y?{expectedTrajectory:ce??null}:{},...ue?{toolMocks:ne??[]}:{},...le?{requestContext:pe}:{}}),De.success("Item updated successfully"),b(!1)}catch(ve){De.error(`Failed to update item: ${ve instanceof Error?ve.message:"Unknown error"}`)}},U=()=>{d&&(S(JSON.stringify(d.input,null,2)),_(d.groundTruth?JSON.stringify(d.groundTruth,null,2):""),E(d.metadata?JSON.stringify(d.metadata,null,2):""),N(d.expectedTrajectory!=null?JSON.stringify(d.expectedTrajectory,null,2):""),P(d.toolMocks?.length?JSON.stringify(d.toolMocks,null,2):""),F(d.requestContext?JSON.stringify(d.requestContext,null,2):"")),b(!1)},Z=async()=>{if(!(!e||!t))try{await c.mutateAsync({datasetId:e,itemId:t}),De.success("Item deleted successfully"),L(!1),r(`/datasets/${e}`)}catch(J){De.error(`Failed to delete item: ${J instanceof Error?J.message:"Unknown error"}`)}},X=p??d,te=X?{id:t??"",datasetId:e??"",datasetVersion:X.datasetVersion,input:X.input,groundTruth:X.groundTruth,expectedTrajectory:X.expectedTrajectory,metadata:X.metadata,createdAt:X.createdAt,updatedAt:X.updatedAt}:null;return i&&gs(i)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})})}):i&&ys(i)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"datasets"})})}):a?null:!e||!t||!s||s.length===0?o.jsx(cs,{children:o.jsx(xy,{children:o.jsx("div",{className:"text-neutral3 p-4",children:"Item not found"})})}):o.jsxs(o.Fragment,{children:[o.jsx(cs,{children:o.jsx("div",{className:"h-full overflow-hidden px-6 pb-4",children:o.jsxs("div",{className:"grid gap-6 max-w-[60rem] mx-auto grid-rows-[auto_1fr] h-full",children:[o.jsxs(ua,{children:[o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{children:[o.jsx(pN,{}),t," ",o.jsx(ba,{content:t})]}),o.jsx(ua.Description,{children:o.jsxs(Nl,{children:["Item of ",o.jsx(ay,{})," ",u?.name]})}),o.jsxs(ua.Description,{children:[o.jsxs(Nl,{children:[o.jsx(Olt,{})," Created at"," ",d?.createdAt?er(new Date(d.createdAt),"MMM d, yyyy"):""]}),o.jsxs(Nl,{children:[o.jsx(o_,{})," Latest version v",d?.datasetVersion??""]})]})]}),o.jsx(ua.Column,{children:!y&&!f&&o.jsxs($r,{children:[o.jsxs(de,{onClick:G,disabled:M,title:M?"Return to latest version to edit":void 0,children:[o.jsx(Vlt,{})," Edit"]}),o.jsxs(de,{onClick:q,disabled:M,title:M?"Return to latest version to delete":void 0,children:[o.jsx(eu,{})," Delete"]})]})})]}),o.jsxs(ry,{className:y?"grid-cols-1":"grid-cols-[1fr_auto]",children:[o.jsxs(Gr,{withRightSeparator:!y,children:[f&&d&&o.jsx(In,{variant:"destructive",title:"Item deleted",children:o.jsxs(In.Message,{children:["This item was deleted at version v",d.datasetVersion]})}),!f&&M&&p&&o.jsx(In,{variant:"warning",title:"Previous version",action:o.jsxs(In.Button,{onClick:z,children:[o.jsx(blt,{})," Return to the latest version"]}),children:o.jsxs(In.Message,{children:["Viewing version v",p.datasetVersion]})}),y?o.jsx(w8t,{inputValue:w,setInputValue:S,groundTruthValue:k,setGroundTruthValue:_,metadataValue:C,setMetadataValue:E,trajectoryValue:j,setTrajectoryValue:N,toolMocksValue:I,setToolMocksValue:P,requestContextValue:$,setRequestContextValue:F,validationErrors:null,onSave:R,onCancel:U,isSaving:l.isPending}):te?o.jsx(wTe,{item:te,Link:n}):o.jsx("div",{className:"text-neutral4 text-sm",children:"Item data not available"})]}),!y&&o.jsx(Gr,{children:o.jsx(tts,{datasetId:e,itemId:t,onClose:()=>{},onVersionSelect:B,onCompareVersionsClick:J=>{r(`/datasets/${e}/items/${t}/versions?ids=${J.join(",")}`)},activeVersion:p?.datasetVersion??null})})]})]})})}),o.jsx(jt,{open:W,onOpenChange:L,children:o.jsxs(jt.Content,{children:[o.jsxs(jt.Header,{children:[o.jsx(jt.Title,{children:"Delete Item"}),o.jsx(jt.Description,{children:"Are you sure you want to delete this item? This action cannot be undone."})]}),o.jsxs(jt.Footer,{children:[o.jsx(jt.Cancel,{children:"Cancel"}),o.jsx(jt.Action,{onClick:Z,children:c.isPending?"Deleting...":"Delete"})]})]})})]})}function AQe(e){return JSON.stringify({input:e.input??null,groundTruth:e.groundTruth??null,metadata:e.metadata??null},null,2)}function bts(){const{datasetId:e}=dr(),[t,n]=ji(),r=t.get("items")?.split(",").filter(Boolean)??[],{data:s,error:a}=Ux(e??""),{Link:i}=yn(),[l,c]=v.useState(!1),{data:u}=AU(e??"",r[0]??""),{data:d}=AU(e??"",r[1]??"");return a&&gs(a)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})})}):a&&ys(a)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"datasets"})})}):!e||r.length<2?o.jsx(cs,{children:o.jsx(xy,{children:o.jsx("div",{className:"text-neutral4 text-center py-8",children:o.jsx("p",{children:"Select at least two items to compare."})})})}):o.jsxs(cs,{children:[o.jsx(Ty,{owner:"dataset-items-compare",children:o.jsxs(de,{as:ci,to:`/datasets/${e}`,variant:"outline",children:[o.jsx(Ec,{}),"Back to Dataset"]})}),o.jsx("div",{className:"h-full overflow-hidden px-[3vw] pb-4",children:o.jsxs("div",{className:K("grid gap-6 max-w-[140rem] mx-auto grid-rows-[auto_1fr] h-full",{"grid-rows-[auto_auto_1fr]":l}),children:[o.jsxs(ua,{children:[o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{children:[o.jsx(Qw,{}),"Compare Dataset Items"]}),o.jsx(ua.Description,{children:o.jsxs(Nl,{children:["Comparing ",r.length," items of"," ",o.jsx(ci,{to:`/datasets/${e}`,className:"text-info1 hover:underline",children:s?.name||e?.slice(0,8)})]})})]}),o.jsx(ua.Column,{children:o.jsx($r,{children:o.jsx(de,{variant:"primary",onClick:()=>c(f=>!f),children:l?o.jsxs(o.Fragment,{children:[o.jsx(Ilt,{})," Default View"]}):o.jsxs(o.Fragment,{children:[o.jsx(Ccn,{})," Diff View"]})})})})]}),o.jsx(ry,{className:"grid-cols-[1fr_3vw_1fr]",children:r.map((f,p)=>o.jsxs(v.Fragment,{children:[o.jsx(xts,{datasetId:e,itemId:f,Link:i,idx:p,itemIds:r,showContent:!l,onItemChange:h=>{const m=[...r];m[p]=h,n({items:m.join(",")})}}),p==0&&o.jsx("div",{className:K("bg-surface5 w-[3px] shrink-0 mx-[1.5vw]")})]},f))}),l&&u&&d&&o.jsx(E_e,{codeA:AQe(u),codeB:AQe(d)})]})})]})}function xts({datasetId:e,itemId:t,Link:n,idx:r,itemIds:s,onItemChange:a,showContent:i=!0}){const{data:l,isLoading:c}=AU(e,t),{data:u}=_1(e),d=new Set(s.filter((p,h)=>h!==r)),f=(u??[]).map(p=>({value:p.id,label:p.id,disabled:d.has(p.id)}));return o.jsxs(Gr,{children:[o.jsxs(Gr.Toolbar,{className:"flex gap-4",children:[o.jsxs(xa,{name:`compare-item-${r}`,value:t,onValueChange:a,children:[o.jsx(Sa,{"aria-label":"Item",children:o.jsx(wa,{placeholder:"Select item"})}),o.jsx(ka,{children:f.map(p=>o.jsx(qr,{value:p.value,disabled:p.disabled,children:p.label},p.value))})]}),o.jsxs(de,{as:n,to:`/datasets/${e}/items/${t}`,children:[o.jsx(o_,{}),"Versions"]})]}),i&&o.jsx(Gr.Content,{children:c?o.jsx("div",{className:"text-neutral4 text-sm",children:"Loading..."}):l?o.jsxs(o.Fragment,{children:[o.jsx(Aes,{item:l}),o.jsx(wTe,{item:l,Link:n})]}):o.jsxs("div",{className:"text-neutral4 text-sm",children:["Item ",t.slice(0,8)," not found"]})})]})}function RQe(e){return JSON.stringify({input:e.input??null,groundTruth:e.groundTruth??null,metadata:e.metadata??null},null,2)}function wts(){const{datasetId:e,itemId:t}=dr(),[n,r]=ji(),[s,a]=v.useState(!1),i=n.get("ids")?.split(",").map(Number).filter(h=>!isNaN(h)&&h>0)??[],{data:l,error:c}=Ux(e??""),{Link:u}=yn(),{data:d}=vTe(e??"",t??""),{data:f}=Pve(e??"",t??"",i[0]??0,l?.version),{data:p}=Pve(e??"",t??"",i[1]??0,l?.version);return c&&gs(c)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})})}):c&&ys(c)?o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"datasets"})})}):!e||!t||i.length<2?o.jsx(cs,{children:o.jsx(xy,{children:o.jsx("div",{className:"text-neutral4 text-center py-8",children:o.jsx("p",{children:"Select at least two versions to compare."})})})}):o.jsxs(cs,{children:[o.jsx(Ty,{owner:"dataset-item-versions-compare",children:o.jsxs(de,{as:ci,to:`/datasets/${e}/items/${t}`,variant:"outline",children:[o.jsx(Ec,{}),"Back to Item"]})}),o.jsx("div",{className:"h-full overflow-hidden px-[3vw] pb-4",children:o.jsxs("div",{className:K("grid gap-6 max-w-[140rem] mx-auto grid-rows-[auto_1fr] h-full",{"grid-rows-[auto_auto_1fr]":s}),children:[o.jsxs(ua,{children:[o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{children:[o.jsx(Qw,{}),"Compare Dataset Item Versions"]}),o.jsx(ua.Description,{children:o.jsxs(Nl,{children:["Comparing ",i.length," versions of"," ",o.jsx(ci,{to:`/datasets/${e}/items/${t}`,className:"text-info1 hover:underline",children:t})]})})]}),o.jsx(ua.Column,{children:o.jsx($r,{children:o.jsx(de,{variant:"primary",onClick:()=>a(h=>!h),children:s?o.jsxs(o.Fragment,{children:[o.jsx(Ilt,{})," Default View"]}):o.jsxs(o.Fragment,{children:[o.jsx(dun,{})," Diff View"]})})})})]}),o.jsx(ry,{className:"grid-cols-[1fr_3vw_1fr]",children:i.map((h,m)=>o.jsxs(v.Fragment,{children:[o.jsx(Sts,{datasetId:e,itemId:t,datasetVersion:h,latestVersion:l?.version,allVersions:d??[],versionNumbers:i,Link:u,idx:m,showContent:!s,onVersionChange:g=>{const y=[...i];y[m]=g,r({ids:y.join(",")})}}),m===0&&o.jsx("div",{className:K("bg-surface5 w-[3px] shrink-0 mx-[1.5vw]")})]},h))}),s&&f&&p&&o.jsx(E_e,{codeA:RQe(f),codeB:RQe(p)})]})})]})}function Sts({datasetId:e,itemId:t,datasetVersion:n,latestVersion:r,allVersions:s,versionNumbers:a,Link:i,idx:l,showContent:c=!0,onVersionChange:u}){const{data:d,isLoading:f}=Pve(e,t,n,r),p=new Set(a.filter((g,y)=>y!==l)),h=s.map(g=>{const y=typeof g.updatedAt=="string"?new Date(g.updatedAt):g.updatedAt;return{value:String(g.datasetVersion),label:o.jsxs(o.Fragment,{children:[o.jsxs("b",{children:["v. ",g.datasetVersion]})," - ",er(y,"MMM d, yyyy h:mm a"),g.isLatest?o.jsx(Xs,{color:"blue",size:"small",children:"Latest"}):null]}),disabled:p.has(g.datasetVersion)}}),m=d?{id:d.id,datasetId:e,datasetVersion:d.datasetVersion,input:d.input,groundTruth:d.groundTruth,metadata:d.metadata,createdAt:d.createdAt,updatedAt:d.updatedAt}:null;return o.jsxs(Gr,{children:[o.jsxs(Gr.Toolbar,{className:"grid gap-4 grid-cols-[auto_1fr]",children:[o.jsx(o_,{className:"w-6 h-6 opacity-50"}),o.jsxs(xa,{name:`compare-version-${l}`,value:String(n),onValueChange:g=>u(Number(g)),children:[o.jsx(Sa,{"aria-label":"Version",className:"w-full",children:o.jsx(wa,{placeholder:"Select version"})}),o.jsx(ka,{children:h.map(g=>o.jsx(qr,{value:g.value,disabled:g.disabled,children:g.label},g.value))})]})]}),c&&o.jsx(Gr.Content,{children:f?o.jsx("div",{className:"text-neutral4 text-sm",children:"Loading..."}):!d||!m?o.jsxs("div",{className:"text-neutral4 text-sm",children:["Version ",n," not found"]}):o.jsx(wTe,{item:m,Link:i})})]})}function kts(){const{datasetId:e}=dr(),[t]=ji(),n=t.get("ids")?.split(",").map(Number).filter(g=>!isNaN(g)&&g>0)??[],r=bs(),{data:s,error:a}=Ux(e??""),i=_1(e??"",void 0,n[0]??null),l=_1(e??"",void 0,n[1]??null),c=v.useMemo(()=>i.data??[],[i.data]),u=v.useMemo(()=>l.data??[],[l.data]),d=v.useMemo(()=>{const g=new Map;for(const y of[...c,...u])g.has(y.id)||g.set(y.id,{id:y.id,createdAt:new Date(y.createdAt)});return[...g.values()].sort((y,b)=>b.createdAt.getTime()-y.createdAt.getTime())},[c,u]),f=v.useMemo(()=>new Map(c.map(g=>[g.id,g])),[c]),p=v.useMemo(()=>new Map(u.map(g=>[g.id,g])),[u]);if(a&&gs(a))return o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})})});if(a&&ys(a))return o.jsx(cs,{children:o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"datasets"})})});if(!e||n.length<2)return o.jsx(cs,{children:o.jsx(xy,{children:o.jsx("div",{className:"text-neutral4 text-center py-8",children:o.jsx("p",{children:"Select at least two versions to compare."})})})});const h=(g,y,b)=>{r(`/datasets/${e}/items/${g}/versions?ids=${y?.datasetVersion??""},${b?.datasetVersion??""}`)},m=(g,y)=>{r(`/datasets/${e}/versions?ids=${g},${y}`,{replace:!0})};return o.jsx(cs,{children:o.jsx("div",{className:"h-full overflow-hidden px-[3vw] pb-4",children:o.jsxs("div",{className:"grid gap-6 max-w-[140rem] mx-auto grid-rows-[auto_1fr] h-full",children:[o.jsxs(ua,{children:[o.jsxs(ua.Column,{children:[o.jsxs(ua.Title,{children:[o.jsx(Zdn,{})," Compare Dataset Versions"]}),o.jsx(ua.Description,{children:o.jsxs(Nl,{children:[o.jsx(o_,{})," Comparing ",n.length," versions of"," ",s?.name||e?.slice(0,8)]})})]}),o.jsx(ua.Column,{children:o.jsxs(de,{as:ci,to:`/datasets/${e}`,children:[o.jsx(Ec,{}),"Back to Dataset"]})})]}),o.jsx(ry,{children:o.jsxs(Gr,{children:[o.jsx(sts,{datasetId:e,versionA:String(n[0]),versionB:String(n[1]),onVersionChange:m}),o.jsx(lts,{datasetId:e,versionA:n[0],versionB:n[1],allItems:d,itemsAMap:f,itemsBMap:p,onItemClick:h})]})})]})})})}function $ve({children:e,className:t}){return o.jsx("div",{className:K("flex flex-wrap gap-8",t),children:e})}function Ots(e){if(!e||e.length<2)return null;const t=[...e].sort((i,l)=>new Date(i.createdAt).getTime()-new Date(l.createdAt).getTime()),n=Math.floor(t.length/2),r=n,s=t.length-n;if(r===0)return null;const a=(s-r)/r*100;return{changePct:Math.round(a*10)/10,prevValue:String(r)}}function _ts({scorers:e,datasets:t,experiments:n,avgScore:r,prevAvgScore:s,totalNeedsReview:a,isLoadingScorers:i,isLoadingDatasets:l,isLoadingExperiments:c,isLoadingScores:u,isLoadingReview:d}){const f=e?Object.keys(e).length:void 0,p=t?.length,h=n?.length,m=r!=null&&s!=null&&s!==0?{changePct:Math.round((r-s)/s*100*10)/10,prevValue:String(s)}:null,g=Ots(n);return o.jsxs(o.Fragment,{children:[o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:"Total Scorers"}),i?o.jsx(Kr.Loading,{}):f!=null?o.jsxs(o.Fragment,{children:[o.jsx(Kr.Value,{children:String(f)}),o.jsx(Kr.NoChange,{message:"Static count"})]}):o.jsx(Kr.NoData,{})]}),o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:"Total Datasets"}),l?o.jsx(Kr.Loading,{}):p!=null?o.jsxs(o.Fragment,{children:[o.jsx(Kr.Value,{children:String(p)}),o.jsx(Kr.NoChange,{message:"Static count"})]}):o.jsx(Kr.NoData,{})]}),o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:"Avg Score"}),u?o.jsx(Kr.Loading,{}):r!=null?o.jsxs(o.Fragment,{children:[o.jsx(Kr.Value,{children:String(r)}),m?o.jsx(Kr.Change,{changePct:m.changePct,prevValue:m.prevValue}):o.jsx(Kr.NoChange,{})]}):o.jsx(Kr.NoData,{})]}),o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:"Total Experiments"}),c?o.jsx(Kr.Loading,{}):h!=null?o.jsxs(o.Fragment,{children:[o.jsx(Kr.Value,{children:String(h)}),g?o.jsx(Kr.Change,{changePct:g.changePct,prevValue:g.prevValue}):o.jsx(Kr.NoChange,{})]}):o.jsx(Kr.NoData,{})]}),o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:"Needs Review"}),d?o.jsx(Kr.Loading,{}):a!=null?o.jsxs(o.Fragment,{children:[o.jsx(Kr.Value,{children:String(a)}),a>0?o.jsx(Kr.NoChange,{message:"items pending review"}):o.jsx(Kr.NoChange,{message:"All caught up"})]}):o.jsx(Kr.NoData,{})]})]})}const PQe="auto 1fr auto auto auto auto auto auto auto";function Cts(e){return e?(typeof e=="string"?new Date(e):e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"}):"—"}const Ets={completed:"success",running:"warning",failed:"error",pending:"neutral"};function jts({experiments:e,datasets:t,reviewByExperiment:n,isLoading:r,search:s="",statusFilter:a="all",datasetFilter:i="all"}){const{paths:l,Link:c}=yn(),u=v.useMemo(()=>{const p=new Map;return t?.forEach(h=>p.set(h.id,h.name)),p},[t]),d=v.useMemo(()=>[...e].sort((p,h)=>{const m=p.createdAt?new Date(p.createdAt).getTime():0;return(h.createdAt?new Date(h.createdAt).getTime():0)-m}),[e]),f=v.useMemo(()=>{const p=s.toLowerCase();return d.filter(h=>{const m=h.datasetId?u.get(h.datasetId)??"":"",g=!p||h.id.toLowerCase().includes(p)||m.toLowerCase().includes(p)||(h.targetId??"").toLowerCase().includes(p),y=a==="all"||h.status===a,b=i==="all"||h.datasetId===i;return g&&y&&b})},[d,s,u,a,i]);return r?o.jsx(el,{columns:PQe}):o.jsxs(me,{columns:PQe,variant:"striped",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Experiment"}),o.jsx(me.TopCell,{children:"Dataset"}),o.jsx(me.TopCell,{children:"Target"}),o.jsx(me.TopCell,{children:"Status"}),o.jsx(me.TopCell,{className:"text-center",children:"Items"}),o.jsx(me.TopCell,{className:"text-center",children:"Succeeded"}),o.jsx(me.TopCell,{className:"text-center",children:"Failed"}),o.jsx(me.TopCell,{className:"text-center",children:"Review"}),o.jsx(me.TopCell,{children:"Date"})]}),f.map(p=>{const h=p.datasetId?u.get(p.datasetId)??p.datasetId.slice(0,8):"—",m=p.status??"pending",g=p.succeededCount??0,y=p.failedCount??0,b=p.totalItems??0,w=b>0?Math.round(g/b*100):0;return o.jsxs(me.RowLink,{to:l.experimentLink(p.id),LinkComponent:c,children:[o.jsx(me.NameCell,{className:"font-mono",children:p.id.slice(0,8)}),o.jsx(me.TextCell,{children:h}),o.jsx(me.Cell,{children:o.jsxs("span",{className:"truncate",children:[p.targetType," ",p.targetId]})}),o.jsx(me.Cell,{children:o.jsx(dg,{variant:Ets[m]??"neutral",withDot:!0,children:m})}),o.jsx(me.TextCell,{className:"text-center",children:b}),o.jsx(me.TextCell,{className:"text-center",children:o.jsxs("span",{className:g>0?"text-accent1":"",children:[g," (",w,"%)"]})}),o.jsx(me.TextCell,{className:"text-center",children:o.jsx("span",{className:y>0?"text-accent2":"",children:y})}),o.jsx(me.Cell,{className:"text-center",children:(()=>{const S=n?.get(p.id);if(!S)return o.jsx("span",{className:"text-neutral2",children:"—"});const k=S.needsReview+S.complete;return k===0?o.jsx("span",{className:"text-neutral2",children:"—"}):S.needsReview>0?o.jsxs(Xs,{size:"small",color:"yellow",children:[S.needsReview," pending"]}):o.jsxs(Xs,{size:"small",color:"green",children:[S.complete,"/",k," reviewed"]})})()}),o.jsx(me.TextCell,{children:Cts(p.createdAt)})]},p.id)})]})}const Tts=[{value:"all",label:"All statuses"},{value:"completed",label:"Completed"},{value:"running",label:"Running"},{value:"failed",label:"Failed"},{value:"pending",label:"Pending"}];function Nts(e){return[{value:"all",label:"All datasets"},...(e??[]).map(t=>({value:t.id,label:t.name}))]}const K8={completed:"#22c55e",running:"#facc15",pending:"#fb923c",failed:"#f87171"},Its=[{label:"Completed",color:K8.completed},{label:"Running",color:K8.running},{label:"Pending",color:K8.pending},{label:"Failed",color:K8.failed}];function Ats({experiments:e,datasets:t,isLoading:n,isError:r}){const{data:s,maxVal:a}=v.useMemo(()=>{if(!e||e.length===0)return{data:[],maxVal:0};const l=new Map;if(t)for(const f of t)l.set(f.id,f.name);const c=new Map;for(const f of e){const p=f.datasetId??"unknown";c.has(p)||c.set(p,{completed:0,running:0,pending:0,failed:0});const h=c.get(p),m=f.status;m in h&&h[m]++}let u=0;return{data:Array.from(c.entries()).map(([f,p])=>{const h=p.completed+p.running+p.pending+p.failed;return h>u&&(u=h),{name:l.get(f)??f.slice(0,12),values:[p.completed,p.running,p.pending,p.failed]}}),maxVal:u}},[e,t]),i=s.length>0;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Experiments by Dataset",description:"Experiment status breakdown per dataset."}),i&&o.jsx(Ut.Summary,{value:String(e?.length??0),label:"Total experiments"})]}),n?o.jsx(Ut.Loading,{}):r?o.jsx(Ut.Error,{message:"Failed to load experiments data"}):o.jsx(Ut.Content,{children:i?o.jsx(oN,{data:s,segments:Its,maxVal:a,fmt:l=>String(l)}):o.jsx(Ut.NoData,{message:"No experiments have been run yet"})})]})}const Rts=()=>o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Lr,{iconSlot:o.jsx(xf,{}),titleSlot:"No Experiments yet",descriptionSlot:o.jsxs(o.Fragment,{children:["Run an experiment from a dataset to evaluate ",o.jsx("br",{}),"your agents and workflows."]}),actionSlot:o.jsx("div",{className:"flex flex-col items-center gap-2",children:o.jsxs(de,{variant:"ghost",as:"a",href:"https://mastra.ai/en/docs/evals/datasets/running-experiments",target:"_blank",rel:"noopener noreferrer",children:["Experiments Documentation ",o.jsx(Pa,{})]})})})});function Pts({search:e,onSearchChange:t,statusFilter:n,onStatusFilterChange:r,datasetFilter:s,onDatasetFilterChange:a,datasetOptions:i,onReset:l,hasActiveFilters:c}){return o.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[o.jsx(Of,{label:"Search experiments",placeholder:"Filter by experiment, dataset, or target",value:e,onSearch:t}),o.jsxs($r,{children:[o.jsx(xc,{label:"Status",labelIsHidden:!0,name:"filter-status",options:[...Tts],value:n,onValueChange:r,className:"whitespace-nowrap"}),o.jsx(xc,{label:"Dataset",labelIsHidden:!0,name:"filter-dataset",options:i,value:s,onValueChange:a,className:"whitespace-nowrap"}),l&&c&&o.jsxs(de,{onClick:l,size:"sm",variant:"default",children:[o.jsx(vs,{className:"size-3"})," Reset"]})]})]})}function $ts(){const{data:e,isLoading:t,error:n}=th(),{data:r,isLoading:s,error:a}=Rg(),{data:i,isLoading:l,error:c}=WZ(),{data:u,isLoading:d,isError:f,error:p}=IWr(),{data:h,isLoading:m,isError:g,error:y}=OTe(),b=r?.datasets,w=i?.experiments,S=v.useMemo(()=>fts(h),[h]),k=n||a||c||p||y;return k&&gs(k)?o.jsx(lr,{children:o.jsx(Vs,{})}):k&&ys(k)?o.jsx(lr,{children:o.jsx(Ds,{resource:"evaluation"})}):k?o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load evaluation data",message:k.message})}):o.jsx(Lt,{width:"wide",height:"full",children:o.jsxs("div",{className:"flex flex-col gap-6",children:[o.jsx($ve,{children:o.jsx(_ts,{scorers:e,datasets:b,experiments:w,avgScore:u?.avgScore??null,prevAvgScore:u?.prevAvgScore??null,totalNeedsReview:S.needsReview,isLoadingScorers:t,isLoadingDatasets:s,isLoadingExperiments:l,isLoadingScores:d,isLoadingReview:m})}),o.jsx(DHr,{summaryData:u?.summaryData??[],overTimeData:u?.overTimeData??[],scorerNames:u?.scorerNames??[],avgScore:u?.avgScore??null,isLoading:d,isError:f}),o.jsxs("div",{className:"grid grid-cols-1 gap-6 lg:grid-cols-2",children:[o.jsx(pJr,{experiments:w,isLoading:l,isError:!!c}),o.jsx(Ats,{experiments:w,datasets:b,isLoading:l,isError:!!c})]}),o.jsx(uts,{reviewSummary:h,experiments:w,datasets:b,isLoading:m,isError:!!g})]})})}function Mts(){const[e,t]=v.useState(""),[n,r]=v.useState("all"),[s,a]=v.useState("all"),{data:i,isLoading:l,error:c}=Rg(),{data:u,isLoading:d,error:f}=WZ(),{data:p}=OTe(),h=v.useMemo(()=>i?.datasets??[],[i?.datasets]),m=v.useMemo(()=>u?.experiments??[],[u?.experiments]),g=v.useMemo(()=>Nts(h),[h]),y=v.useMemo(()=>_8t(p),[p]),b=l||d,w=f||c;if(w&&gs(w))return o.jsx(lr,{children:o.jsx(Vs,{})});if(f&&ys(f))return o.jsx(lr,{children:o.jsx(Ds,{resource:"experiments"})});if(c&&ys(c))return o.jsx(lr,{children:o.jsx(Ds,{resource:"datasets"})});if(w)return o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load experiments",message:w.message})});if(m.length===0&&!b)return o.jsx(lr,{children:o.jsx(Rts,{})});const S=n!=="all"||s!=="all"||e!=="",k=()=>{t(""),r("all"),a("all")};return o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsx(Pts,{search:e,onSearchChange:t,statusFilter:n,onStatusFilterChange:r,datasetFilter:s,onDatasetFilterChange:a,datasetOptions:g,onReset:k,hasActiveFilters:S})}),o.jsx(jts,{experiments:m,datasets:h,reviewByExperiment:y,isLoading:b,search:e,statusFilter:n,datasetFilter:s})]})}function J8({children:e}){return o.jsxs(Lt,{height:"full",children:[o.jsx("div",{}),o.jsx(Lt.MainArea,{isCentered:!0,children:e})]})}function Dts(){const{experimentId:e}=dr(),{data:t,isLoading:n}=WZ(),s=t?.experiments?.find(h=>h.id===e)?.datasetId??"",{data:a,isLoading:i,error:l}=IU(s,e??""),{data:c,isLoading:u,setEndOfListElement:d,isFetchingNextPage:f,hasNextPage:p}=BZ({datasetId:s,experimentId:e??"",experimentStatus:a?.status});return!e||n||i?null:l&&gs(l)?o.jsx(J8,{children:o.jsx(Vs,{})}):l&&ys(l)?o.jsx(J8,{children:o.jsx(Ds,{resource:"datasets"})}):l&&H1e(l)||!n&&!s||!i&&!l&&!a?o.jsx(J8,{children:o.jsx(Lr,{iconSlot:o.jsx(Wye,{}),titleSlot:"Experiment not found",descriptionSlot:`No experiment with id "${e}".`,actionSlot:o.jsxs(de,{as:ci,to:"/experiments",children:[o.jsx(Ec,{}),"Back to Experiments"]})})}):l?o.jsx(J8,{children:o.jsx(Fi,{title:"Failed to load experiment",message:l instanceof Error?l.message:"An unexpected error occurred. Please try again."})}):o.jsxs(Lt,{height:"full",children:[o.jsx(C8t,{experiment:a}),o.jsx(Lt.MainArea,{children:o.jsx(O8t,{experimentId:e,datasetId:s,experimentStatus:a.status,results:c??[],isLoading:u,setEndOfListElement:d,isFetchingNextPage:f,hasNextPage:p})})]})}function Lts({connection:e,isAdmin:t,disconnectPending:n,onDisconnect:r}){return o.jsxs("li",{className:"flex items-center justify-between border-b py-2",children:[o.jsxs("div",{children:[o.jsx("div",{className:"font-mono text-xs",children:e.connectionId}),o.jsxs("div",{className:"text-xs text-gray-500",children:[e.label??"(no label)"," · ",e.status,e.scope?` · ${e.scope}`:"",t&&e.authorId?` · author: ${e.authorId}`:""]})]}),o.jsx("button",{type:"button",className:"text-red-600 underline disabled:opacity-50",onClick:r,disabled:n,children:"Disconnect"})]})}function E8t({connections:e,isAdmin:t,disconnectPending:n,onDisconnect:r}){return o.jsx("ul",{className:"space-y-1",children:e.map(s=>o.jsx(Lts,{connection:s,isAdmin:t,disconnectPending:n,onDisconnect:()=>r(s.connectionId)},s.connectionId))})}function Fts({groups:e,isAdmin:t,disconnectPending:n,onDisconnect:r}){return o.jsx("div",{className:"space-y-4",children:e.map(([s,a])=>o.jsxs("div",{children:[o.jsx("h3",{className:"text-sm font-semibold text-gray-700","data-testid":`integration-author-group-${s}`,children:s==="shared"?"Shared":`Owned by ${s}`}),o.jsx(E8t,{connections:a,isAdmin:t,disconnectPending:n,onDisconnect:r})]},s))})}function zts({providerId:e,toolkit:t,connections:n,groupedByAuthor:r,isAdmin:s,isLoading:a,error:i,disconnectPending:l,disconnectError:c,onDisconnect:u}){return o.jsxs("div",{className:"space-y-2 border rounded p-4",children:[o.jsx("h2",{className:"text-lg font-semibold",children:"Existing connections"}),!e||!t?o.jsx("p",{className:"text-gray-500",children:"Pick a provider and toolkit to list connections."}):a?o.jsx("p",{className:"text-gray-500",children:"Loading…"}):i?o.jsx("p",{className:"text-red-600",children:String(i)}):n.length===0?o.jsx("p",{className:"text-gray-500",children:"No connections."}):r?o.jsx(Fts,{groups:r,isAdmin:s,disconnectPending:l,onDisconnect:u}):o.jsx(E8t,{connections:n,isAdmin:s,disconnectPending:l,onDisconnect:u}),c?o.jsx("p",{className:"text-red-600",children:String(c)}):null]})}function Bts({providers:e,toolkits:t,providerId:n,toolkit:r,label:s,providersLoading:a,providersError:i,toolkitsLoading:l,toolkitsError:c,authorizePending:u,authorizeError:d,authorizedConnection:f,onProviderChange:p,onToolkitChange:h,onLabelChange:m,onConnect:g}){return o.jsxs("div",{className:"space-y-4 border rounded p-4",children:[o.jsxs("div",{className:"space-y-1",children:[o.jsx("label",{className:"block font-medium",htmlFor:"provider-select",children:"Provider"}),o.jsxs("select",{id:"provider-select",className:"border rounded px-2 py-1 w-full",value:n,onChange:y=>p(y.target.value),disabled:a,children:[o.jsx("option",{value:"",children:"— select provider —"}),e.map(y=>o.jsxs("option",{value:y.id,children:[y.displayName??y.name," (",y.id,")"]},y.id))]}),a&&o.jsx("span",{className:"text-gray-500",children:"Loading providers…"}),i?o.jsx("span",{className:"text-red-600",children:String(i)}):null]}),o.jsxs("div",{className:"space-y-1",children:[o.jsx("label",{className:"block font-medium",htmlFor:"toolkit-select",children:"Toolkit"}),o.jsxs("select",{id:"toolkit-select",className:"border rounded px-2 py-1 w-full",value:r,onChange:y=>h(y.target.value),disabled:!n||l,children:[o.jsx("option",{value:"",children:"— select toolkit —"}),t.map(y=>o.jsxs("option",{value:y.slug,children:[y.name," (",y.slug,")"]},y.slug))]}),l&&o.jsx("span",{className:"text-gray-500",children:"Loading toolkits…"}),c?o.jsx("span",{className:"text-red-600",children:String(c)}):null]}),o.jsxs("div",{className:"space-y-1",children:[o.jsx("label",{className:"block font-medium",htmlFor:"label-input",children:"Label (optional)"}),o.jsx("input",{id:"label-input",type:"text",className:"border rounded px-2 py-1 w-full",placeholder:"My personal Gmail",value:s,onChange:y=>m(y.target.value),disabled:!n||!r})]}),o.jsx("button",{type:"button",className:"bg-blue-600 text-white rounded px-4 py-2 disabled:opacity-50",onClick:g,disabled:!n||!r||u,children:u?"Authorizing…":"Connect"}),d?o.jsx("p",{className:"text-red-600",children:String(d)}):null,f&&o.jsxs("p",{className:"text-green-700",children:["Authorized: ",f.connectionId," (status: ",f.status,")"]})]})}const $Qe=e=>e.authorId?.trim()||"shared",Uts=(e,t)=>{if(!t||new Set(e.map($Qe)).size<=1)return null;const r=new Map;for(const a of e){const i=$Qe(a);r.set(i,[...r.get(i)??[],a])}const s=Array.from(r.entries());return s.sort(([a],[i])=>a==="shared"?1:i==="shared"?-1:a.localeCompare(i)),s},qts=["*","tool-providers:*","tool-providers:admin"];function Vts(){const{data:e}=wm();return e?.permissions?.some(t=>qts.includes(t))??!1}function Hts(){const[e,t]=v.useState(""),[n,r]=v.useState(""),[s,a]=v.useState(""),i=dI(),l=hW(e||null),c=xAt(e||null,n||null),u=bAt(),d=gAt(),f=Vts(),p=i.data?.providers??[],h=l.data?.data??[],m=v.useMemo(()=>c.data?.items??[],[c.data?.items]),g=v.useMemo(()=>Uts(m,f),[m,f]),y=S=>{t(S),r("")},b=()=>{!e||!n||u.mutate({providerId:e,toolkit:n,label:s.trim()||null},{onSuccess:()=>{a(""),c.refetch()}})},w=S=>{d.mutate({providerId:e,connectionId:S})};return o.jsxs("div",{className:"p-6 max-w-3xl space-y-6 text-sm",children:[o.jsx("h1",{className:"text-2xl font-semibold",children:"Integrations"}),o.jsx("p",{className:"text-gray-500",children:"Minimal page to verify the ToolProvider backend. Pick a provider and toolkit, then connect."}),o.jsx(Bts,{providers:p,toolkits:h,providerId:e,toolkit:n,label:s,providersLoading:i.isLoading,providersError:i.error,toolkitsLoading:l.isLoading,toolkitsError:l.error,authorizePending:u.isPending,authorizeError:u.error,authorizedConnection:u.data,onProviderChange:y,onToolkitChange:r,onLabelChange:a,onConnect:b}),o.jsx(zts,{providerId:e,toolkit:n,connections:m,groupedByAuthor:g,isAdmin:f,isLoading:c.isLoading,error:c.error,disconnectPending:d.isPending,disconnectError:d.error,onDisconnect:w})]})}function Wts({title:e,description:t,errorBanner:n,children:r}){return o.jsx("div",{"data-testid":"login-page",className:"flex min-h-screen items-center justify-center bg-surface1",children:o.jsxs("div",{className:"w-full max-w-sm space-y-6",children:[o.jsxs("div",{className:"flex flex-col items-center space-y-2",children:[o.jsx(Gh,{className:"h-10 w-10"}),o.jsx("h1",{className:"text-xl font-semibold text-neutral6",children:e})]}),t,n,r]})})}function j8t({redirectUri:e,onSuccess:t,initialMode:n="signin",errorMessage:r}){const{data:s,isLoading:a}=rc(),{mutate:i,isPending:l,error:c}=C1r(),{mutate:u,isPending:d,error:f}=j1r(),{mutate:p,isPending:h}=qNt(),[m,g]=v.useState(n),[y,b]=v.useState(""),[w,S]=v.useState(""),[k,_]=v.useState("");if(a)return o.jsx("div",{className:"flex min-h-screen items-center justify-center bg-surface1",children:o.jsx("div",{className:"text-neutral3",children:"Loading..."})});if(!s?.enabled||!s?.login)return o.jsx("div",{className:"flex min-h-screen items-center justify-center bg-surface1",children:o.jsx("div",{className:"text-neutral3",children:"Authentication is not configured"})});const{login:C}=s,E=C.type==="sso"||C.type==="both",j=C.type==="credentials"||C.type==="both",N=C.sso,I=C.signUpEnabled!==!1,P=m==="signin"||!I,$=P?l:d,F=P?c:f,D=()=>{t?t():e?window.location.href=e:window.location.href="/"},V=M=>{M.preventDefault(),P?i({email:w,password:k},{onSuccess:D}):u({email:w,password:k,name:y||void 0},{onSuccess:D})},W=()=>{p({redirectUri:e},{onSuccess:M=>{window.location.href=M.url}})},L=()=>{g(P?"signup":"signin")},B=C.description?o.jsxs("div",{className:"flex items-start gap-2.5 rounded-md border border-border1 bg-surface1 p-3",children:[o.jsx(pf,{className:"mt-0.5 h-4 w-4 shrink-0 text-neutral4"}),o.jsx("p",{className:"text-sm text-neutral3",children:C.description})]}):null,z=r?o.jsx("div",{className:"rounded-md bg-red-500/10 p-3 text-sm text-red-400",children:r}):null;return o.jsxs(Wts,{title:P?"Sign in to Mastra Studio":"Create your account",description:B,errorBanner:z,children:[j&&o.jsxs("form",{onSubmit:V,className:"space-y-4",children:[!P&&o.jsxs("div",{className:"space-y-2",children:[o.jsx("label",{htmlFor:"name",className:"block text-sm text-neutral4",children:"Name"}),o.jsx(kn,{id:"name",type:"text",value:y,onChange:M=>b(M.target.value),placeholder:"Your name",variant:"default",size:"lg"})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx("label",{htmlFor:"email",className:"block text-sm text-neutral4",children:"Email"}),o.jsx(kn,{id:"email",type:"email",value:w,onChange:M=>S(M.target.value),placeholder:"you@example.com",required:!0,variant:"default",size:"lg"})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsx("label",{htmlFor:"password",className:"block text-sm text-neutral4",children:"Password"}),o.jsx(kn,{id:"password",type:"password",value:k,onChange:M=>_(M.target.value),placeholder:P?"Enter your password":"Create a password",required:!0,variant:"default",size:"lg"})]}),F&&o.jsx("div",{className:"rounded-md bg-red-500/10 p-3 text-sm text-red-400",children:F.message}),o.jsx(de,{type:"submit",disabled:$,className:"w-full",size:"lg",children:$?P?"Signing in...":"Creating account...":P?"Sign in":"Create account"}),I&&o.jsxs("div",{className:"text-center text-sm",children:[o.jsx("span",{className:"text-neutral3",children:P?"Don't have an account? ":"Already have an account? "}),o.jsx("button",{type:"button",onClick:L,className:"text-neutral6 hover:underline",children:P?"Sign up":"Sign in"})]})]}),E&&j&&o.jsxs("div",{className:"relative",children:[o.jsx("div",{className:"absolute inset-0 flex items-center",children:o.jsx("div",{className:"w-full border-t border-border1"})}),o.jsx("div",{className:"relative flex justify-center text-sm",children:o.jsx("span",{className:"bg-surface1 px-2 text-neutral3",children:"or continue with"})})]}),E&&N&&o.jsxs(de,{onClick:W,disabled:h,className:"w-full",size:"lg",variant:"outline",children:[N.icon&&o.jsx("span",{className:"mr-2",children:N.icon}),h?"Redirecting...":N.text||"Sign in"]})]})}function Zts(){const[e]=ji(),t=bs(),n=e.get("redirect")||"/",s=e.get("mode")==="signup"?"signup":"signin",a=e.get("error_description")||e.get("error")||null,i=()=>{n.startsWith("http")?window.location.href=n:t(n,{replace:!0})};return o.jsx(j8t,{redirectUri:n,onSuccess:i,initialMode:s,errorMessage:a})}function Gts({error:e,resource:t,errorTitle:n}){if(gs(e))return o.jsx(Vs,{});if(ys(e))return o.jsx(Ds,{resource:t});if(R1t(e,"logs"))return o.jsx(Lr,{iconSlot:o.jsx(Nxe,{}),titleSlot:"Logs are not available with your current storage",descriptionSlot:"The configured observability storage provider does not support listing logs. Switch to a storage provider with logs support to view runtime logs in Studio."});const r=e instanceof Error?e.message:void 0;return o.jsx(Fi,{title:n,message:r??"Unknown error"})}function Qts({listSlot:e,logPanelSlot:t,tracePanelSlot:n,spanPanelSlot:r,logCollapsed:s}){const a=!!t;return o.jsxs("div",{className:K("grid h-full min-h-0 gap-4 items-start",a?"grid-cols-[1fr_1fr]":"grid-cols-[1fr]"),children:[e,a&&o.jsxs("div",{className:K("grid gap-4 h-full overflow-auto",n&&r?s?"grid-rows-[auto_1fr_1fr]":"grid-rows-[1fr_1fr_1fr]":n?s?"grid-rows-[auto_1fr]":"grid-rows-[1fr_1fr]":s?"grid-rows-[auto]":"grid-rows-[1fr]"),children:[t,n,r]})]})}const Yts={debug:{label:"DEBUG",color:"#71717a"},info:{label:"INFO",color:"#60a5fa"},warn:{label:"WARN",color:"#facc15"},error:{label:"ERROR",color:"#f87171"},fatal:{label:"FATAL",color:"#dc2626"}};function Xts({level:e}){const t=Yts[e];return o.jsx(So,{height:"compact",children:o.jsx("span",{className:"uppercase text-ui-sm font-semibold",style:{color:t.color},children:t.label})})}function Kts({entityType:e,className:t}){const n=K("size-3.5 shrink-0 text-neutral2",t);switch(e.toLowerCase()){case Os.AGENT:return o.jsx(rl,{className:n,"aria-hidden":!0});case"workflow":case Os.WORKFLOW_RUN:return o.jsx(kd,{className:n,"aria-hidden":!0});case Os.TOOL:return o.jsx(Qp,{className:n,"aria-hidden":!0});default:return null}}function Jts({entityType:e,entityName:t}){const n=e??"";return o.jsxs(So,{height:"compact",className:"flex min-w-0 items-center gap-2",children:[o.jsx(Kts,{entityType:n}),t?o.jsx("span",{className:"min-w-0 text-ui-smd truncate",children:t}):"-"]})}function ens({message:e}){return o.jsx(So,{height:"compact",className:"text-neutral4 text-ui-smd min-w-0 truncate font-mono",children:e})}function tns({data:e}){if(!e||Object.keys(e).length===0)return o.jsx(So,{height:"compact",children:null});const t=Object.entries(e).map(([n,r])=>{if(typeof r=="string")return`${n}: ${r}`;try{return`${n}: ${JSON.stringify(r)}`}catch{return`${n}: <unserializable>`}}).join(", ");return o.jsx(Xke,{children:t})}const zl=Object.assign(BD,{Top:ZH,TopCell:M_,TopCellWithTooltip:GH,TopCellSmart:ZEt,RowWrapper:nOe,RowButton:UD,RowLink:GEt,Spacer:tOe,NoMatch:WH,DateCell:Kke,TimeCell:Jke,LevelCell:Xts,EntityCell:Jts,MessageCell:ens,DataCell:tns,NextPageLoading:HH}),MQe="6rem 9rem 5rem 10rem minmax(8rem,1fr) minmax(8rem,1fr)",nns=36,rns=8;function sns({logs:e,isLoading:t,isFetchingNextPage:n,hasNextPage:r,setEndOfListElement:s,logIdMap:a,featuredLogId:i,onLogClick:l}){const c=v.useRef(null),u=X6t({count:e.length,getScrollElement:()=>c.current,estimateSize:()=>nns,overscan:rns}),d=v.useRef(t);if(v.useEffect(()=>{d.current&&!t&&c.current?.dispatchEvent(new Event("scroll")),d.current=t},[t]),t)return o.jsx(el,{columns:MQe});const f=u.getVirtualItems(),p=u.getTotalSize(),h=f[0]?.start??0,m=f.length>0?Math.max(0,p-(f[f.length-1]?.end??0)):0;return o.jsxs(zl,{columns:MQe,variant:"striped",scrollRef:c,className:"min-w-0",children:[o.jsxs(zl.Top,{children:[o.jsx(zl.TopCell,{children:"Date"}),o.jsx(zl.TopCell,{children:"Time"}),o.jsx(zl.TopCell,{children:"Level"}),o.jsx(zl.TopCell,{children:"Entity"}),o.jsx(zl.TopCell,{children:"Message"}),o.jsx(zl.TopCell,{children:"Data"})]}),e.length===0?o.jsx(zl.NoMatch,{message:"No logs match your search"}):o.jsxs(o.Fragment,{children:[o.jsx(zl.Spacer,{height:h}),f.map(g=>{const y=e[g.index];if(!y)return null;const b=a.get(y);if(!b)return null;const w=b===i;return o.jsxs(zl.RowButton,{ref:u.measureElement,"data-index":g.index,onClick:()=>l(y),featured:w,variant:y.level==="error"||y.level==="fatal"?"error":"default",children:[o.jsx(zl.DateCell,{timestamp:y.timestamp}),o.jsx(zl.TimeCell,{timestamp:y.timestamp}),o.jsx(zl.LevelCell,{level:y.level}),o.jsx(zl.EntityCell,{entityType:y.entityType,entityName:y.entityName}),o.jsx(zl.MessageCell,{message:y.message}),o.jsx(zl.DataCell,{data:y.data})]},b)}),o.jsx(zl.Spacer,{height:m})]}),o.jsx(zl.NextPageLoading,{isLoading:n,hasMore:r,setEndOfListElement:s})]})}function ans({onClear:e,onRemoveAll:t,onSave:n,onRemoveSaved:r,isLoading:s,filterFields:a,filterTokens:i,onFilterTokensChange:l,autoFocusFilterFieldId:c}){const u=i.length>0,d=i.some(f=>ins(f,a));return o.jsxs("div",{className:K("grid grid-cols-[1fr_auto] gap-3 items-start"),children:[o.jsx(uTe,{fields:a,tokens:i,onTokensChange:l,disabled:s,autoFocusFieldId:c}),u&&o.jsx(lTe,{disabled:s,onClear:d?e:void 0,onRemoveAll:t,onSave:n,onRemoveSaved:r})]})}function ins(e,t){const n=t.find(r=>r.id===e.fieldId);return n?n.kind==="text"?typeof e.value=="string"&&e.value.trim()!=="":n.kind==="pick-multi"?n.multi?Array.isArray(e.value)&&e.value.length>0:typeof e.value=="string"&&e.value!==""&&e.value!=="Any":n.kind==="multi-select"?Array.isArray(e.value)&&e.value.length>0:!1:!1}const ons={"last-24h":"the last 24 hours","last-3d":"the last 3 days","last-7d":"the last 7 days","last-14d":"the last 14 days","last-30d":"the last 30 days"},Wre="MMM d, yyyy HH:mm",Zre="Pick a wider range or lower the logging level — verbose entries (debug, info) may be filtered out.";function lns({datePreset:e,dateFrom:t,dateTo:n}){return e&&e!=="all"&&e!=="custom"?{title:`No logs for ${ons[e]}`,description:Zre}:t&&n?{title:`No logs between ${er(t,Wre)} and ${er(n,Wre)}`,description:Zre}:t?{title:`No logs since ${er(t,Wre)}`,description:Zre}:{title:"No logs yet",description:"Logs will appear here once agents, workflows, or tools are executed."}}const cns=({datePreset:e,dateFrom:t,dateTo:n}={})=>{const{title:r,description:s}=lns({datePreset:e,dateFrom:t,dateTo:n});return o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Lr,{iconSlot:o.jsx(Nxe,{}),titleSlot:r,descriptionSlot:s,actionSlot:o.jsxs(de,{variant:"ghost",as:"a",href:"https://mastra.ai/en/docs/observability/logging",target:"_blank",rel:"noopener noreferrer",children:["Logging Documentation ",o.jsx(Ixe,{})]})})})},uns=20,dns=1e4;function fns(e,t,n){if(e?.pagination?.hasMore)return n+1}function pns(e){const t=new Set,n=[];for(const r of e.pages)for(const s of r.logs??[]){const a=s.logId??JSON.stringify(s);t.has(a)||(t.add(a),n.push(s))}return n}function hns(e){return R1t(e.state.error,"logs")?!1:dns}const mns=({filters:e}={})=>{const t=We(),{inView:n,setRef:r}=C_(),s=R1({queryKey:["logs",e],queryFn:({pageParam:p})=>t.listLogsVNext({pagination:{page:p,perPage:uns},filters:e,orderBy:{field:"timestamp",direction:"DESC"}}),initialPageParam:0,getNextPageParam:fns,select:pns,retry:!1,refetchInterval:hns}),{hasNextPage:a,isFetchingNextPage:i,fetchNextPage:l,data:c,isLoading:u,isError:d,error:f}=s;return v.useEffect(()=>{n&&a&&!i&&l()},[n,a,i,l]),{data:c,hasNextPage:a,isFetchingNextPage:i,fetchNextPage:l,isLoading:u,isError:d,error:f,setEndOfListElement:r}},gns="Filters setting for Logs saved",vns="Filters setting for Logs cleared up";function yns(e,t,n){const{storageKey:r,messages:s,skipHydration:a}={},[i,l]=v.useState(()=>YGe(r)!==null),c=v.useCallback(()=>{KQr(e,r),l(!0);const f=s?.saved??gns;f!==!1&&De.success(f)},[e,r,s?.saved]),u=v.useCallback(()=>{JQr(r),l(!1);const f=s?.cleared??vns;f!==!1&&De.success(f)},[r,s?.cleared]),d=v.useRef(!1);return v.useEffect(()=>{if(a||d.current||(d.current=!0,eYr(e)))return;const f=YGe(r);f&&t(p=>{const h=new URLSearchParams(p);for(const[m,g]of f)h.append(m,g);return h},{replace:!0})},[]),{hasSavedFilters:i,handleSave:c,handleRemoveSaved:u}}function bns(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return(t>>>0).toString(36)}function xns(e){const t=new Map;for(const n of e){if(n.logId){t.set(n,n.logId);continue}const r=n.timestamp instanceof Date?n.timestamp.toISOString():n.timestamp;t.set(n,bns(`${r}${n.message??""}${n.data?JSON.stringify(n.data):""}`))}return t}function wns(e,t,n,r){const s=v.useMemo(()=>xns(e),[e]),a=v.useMemo(()=>{const h=new Map;for(let m=0;m<e.length;m++){const g=s.get(e[m]);g&&h.set(g,{log:e[m],idx:m})}return h},[e,s]),l=(t?a.get(t):void 0)?.idx??-1,c=l>=0?e[l]:null,u=v.useCallback(h=>s.get(h),[s]),d=v.useCallback(h=>{const m=s.get(h);if(m){if(t===m){n({logId:null});return}n(r?{logId:m,traceId:h.traceId??null,spanId:null}:{logId:m})}},[s,t,r,n]),f=l>0?()=>{const h=e[l-1],m=s.get(h);n(r?{logId:m,traceId:h.traceId??null,spanId:null}:{logId:m})}:void 0,p=l>=0&&l<e.length-1?()=>{const h=e[l+1],m=s.get(h);n(r?{logId:m,traceId:h.traceId??null,spanId:null}:{logId:m})}:void 0;return{logIdMap:s,getLogId:u,featuredLog:c,handleLogClick:d,handlePreviousLog:f,handleNextLog:p}}const Mve="logId",Dve="traceId",Lve="spanId",RR=1440*60*1e3,Sns={"last-24h":RR,"last-3d":3*RR,"last-7d":7*RR,"last-14d":14*RR,"last-30d":30*RR};function e9(e){e.delete(Mve),e.delete(Dve),e.delete(Lve)}function kns(e,t,n){const{onRemoveAll:r}={},s=v.useMemo(()=>{const _=e.get(zb);return _&&XQr.has(_)?_:"last-24h"},[e]),a=e.get(Bb),i=e.get(Ub),l=v.useMemo(()=>{if(s==="custom"){if(!a)return;const C=new Date(a);return Number.isNaN(C.getTime())?void 0:C}if(s==="all")return;const _=Sns[s];return _?new Date(Date.now()-_):void 0},[s,a]),c=v.useMemo(()=>{if(s!=="custom"||!i)return;const _=new Date(i);return Number.isNaN(_.getTime())?void 0:_},[s,i]),u=v.useRef(s);u.current=s;const d=e.get(Mve),f=e.get(Dve),p=e.get(Lve),h=v.useMemo(()=>Q6t.find(_=>_.entityType===e.get(Px)),[e]),m=v.useMemo(()=>nYr(e),[e]),g=v.useCallback(_=>{t(C=>{const E=new URLSearchParams(C);for(const[j,N]of Object.entries(_)){const I=j==="logId"?Mve:j==="traceId"?Dve:Lve;N?E.set(I,N):E.delete(I)}return E},{replace:!0})},[t]),y=v.useCallback(_=>{t(C=>{const E=new URLSearchParams(C);return sYr(E,_),e9(E),E},{replace:!0})},[t]),b=y,w=v.useCallback((_,C)=>{if(u.current!=="custom")return;const E=C==="from"?Bb:Ub;t(j=>{const N=new URLSearchParams(j);return _?N.set(E,_.toISOString()):N.delete(E),e9(N),N},{replace:!0})},[t]),S=v.useCallback(_=>{u.current=_,t(C=>{const E=new URLSearchParams(C);return _==="last-24h"?(E.delete(zb),E.delete(Bb),E.delete(Ub)):_==="custom"?E.set(zb,"custom"):(E.set(zb,_),E.delete(Bb),E.delete(Ub)),e9(E),E},{replace:!0})},[t]),k=v.useCallback(()=>{t(_=>{const C=new URLSearchParams(_);C.delete(Px);for(const E of V4)C.delete(kl[E]);return C.delete(zb),C.delete(Bb),C.delete(Ub),e9(C),C},{replace:!0}),r?.()},[t,r]);return v.useMemo(()=>({searchParams:e,setSearchParams:t,datePreset:s,selectedDateFrom:l,selectedDateTo:c,datePresetRef:u,featuredLogId:d,featuredTraceId:f,featuredSpanId:p,selectedEntityOption:h,filterTokens:m,handleFeaturedChange:g,handleFilterTokensChange:b,handleDateChange:w,handleDatePresetChange:S,handleRemoveAll:k,applyFilterTokens:y}),[e,t,s,l,c,u,d,f,p,h,m,g,b,w,S,k,y])}function Ons(){const[e,t]=ji(),n=kns(e,t),r=yns(e,t),[s,a]=v.useState(),[i,l]=v.useState(!1),{data:c=[],isPending:u}=gTe(),{data:d=[],isPending:f}=pTe({entityType:n.selectedEntityOption?.entityType,rootOnly:!0}),{data:p=[],isPending:h}=hTe(),{data:m=[],isPending:g}=mTe(),y=v.useMemo(()=>tYr({availableTags:c,availableRootEntityNames:d,availableServiceNames:m,availableEnvironments:p,loading:{tags:u,entityNames:f,serviceNames:g,environments:h}}),[c,d,m,p,u,f,g,h]),b=v.useMemo(()=>aYr({rootEntityType:n.selectedEntityOption?.entityType,dateFrom:n.selectedDateFrom,dateTo:n.selectedDateTo,tokens:n.filterTokens}),[n.filterTokens,n.selectedDateFrom,n.selectedDateTo,n.selectedEntityOption]),{data:w=[],isLoading:S,error:k,isFetchingNextPage:_,hasNextPage:C,setEndOfListElement:E}=mns({filters:b}),{logIdMap:j,featuredLog:N,handleLogClick:I,handlePreviousLog:P,handleNextLog:$}=wns(w,n.featuredLogId,n.handleFeaturedChange,n.featuredTraceId),{data:F,isLoading:D}=XH(n.featuredTraceId??null),{data:V,isLoading:W}=oI(n.featuredTraceId??"",n.featuredSpanId??""),L=v.useCallback(()=>n.applyFilterTokens(iYr(y,n.filterTokens)),[y,n]),B=v.useCallback(()=>n.handleFeaturedChange({logId:null}),[n]),z=v.useCallback(X=>n.handleFeaturedChange({traceId:X,spanId:null}),[n]),M=v.useCallback((X,te)=>n.handleFeaturedChange({traceId:X,spanId:te}),[n]),G=v.useCallback(()=>{n.handleFeaturedChange({traceId:null,spanId:null}),l(!1)},[n]),q=v.useCallback(()=>n.handleFeaturedChange({spanId:null}),[n]),R=v.useCallback(X=>n.handleFeaturedChange({spanId:X??null}),[n]),U=o.jsxs(Lt.TopArea,{children:[o.jsx(Lt.Row,{children:o.jsxs(Lt.Column,{className:"flex flex-wrap items-start justify-start gap-2",children:[o.jsx(oTe,{preset:n.datePreset,onPresetChange:n.handleDatePresetChange,dateFrom:n.selectedDateFrom,dateTo:n.selectedDateTo,onDateChange:n.handleDateChange,disabled:S,presets:["last-24h","last-3d","last-7d","last-14d","last-30d","custom"]}),o.jsx(dTe,{fields:y,tokens:n.filterTokens,onTokensChange:n.handleFilterTokensChange,disabled:S,onStartTextFilter:a})]})}),o.jsx(ans,{isLoading:S,filterFields:y,filterTokens:n.filterTokens,onFilterTokensChange:n.handleFilterTokensChange,onClear:L,onRemoveAll:n.handleRemoveAll,onSave:r.handleSave,onRemoveSaved:r.hasSavedFilters?r.handleRemoveSaved:void 0,autoFocusFilterFieldId:s})]});if(k)return o.jsxs(Lt,{width:"wide",height:"full",children:[U,o.jsx(Lt.MainArea,{isCentered:!0,children:o.jsx(Gts,{error:k,resource:"logs",errorTitle:"Failed to load logs"})})]});const Z=!!n.selectedEntityOption||n.filterTokens.length>0;return w.length===0&&!S&&!Z?o.jsxs(Lt,{width:"wide",height:"full",children:[U,o.jsx(Lt.MainArea,{isCentered:!0,children:o.jsx(cns,{datePreset:n.datePreset,dateFrom:n.selectedDateFrom,dateTo:n.selectedDateTo})})]}):o.jsxs(Lt,{width:"wide",height:"full",children:[U,o.jsx(Qts,{logCollapsed:i,listSlot:o.jsx(sns,{logs:w,isLoading:S,isFetchingNextPage:_,hasNextPage:C,setEndOfListElement:E,logIdMap:j,featuredLogId:n.featuredLogId,onLogClick:I}),logPanelSlot:N?o.jsx(xYr,{log:N,onClose:B,onTraceClick:z,onSpanClick:M,onPrevious:P,onNext:$,collapsed:i,onCollapsedChange:l}):null,tracePanelSlot:n.featuredTraceId?o.jsx(cjt,{traceId:n.featuredTraceId,spans:F?.spans,isLoading:D,onClose:G,onSpanSelect:R,selectedSpanId:n.featuredSpanId}):null,spanPanelSlot:n.featuredTraceId&&n.featuredSpanId?o.jsx(oYr,{spanId:n.featuredSpanId,span:V?.span,isLoading:W,onClose:q}):null})]})}function _ns({server:e}){const{paths:t,Link:n}=yn(),s=We().options.baseUrl,a=s?`${s}/api/mcp/${e.id}/sse`:"",{data:i}=f5t(e),l=Object.values(i||{}),c=l.length,u=l.filter(p=>p.toolType==="agent").length,d=l.filter(p=>p.toolType==="workflow").length,f=dm(e.name,50);return o.jsxs(me.RowLink,{to:t.mcpServerLink(e.id),LinkComponent:n,children:[o.jsx(me.NameCell,{children:f}),o.jsx(me.DescriptionCell,{children:a}),o.jsx(me.TextCell,{className:"text-center",children:u||""}),o.jsx(me.TextCell,{className:"text-center",children:c||""}),o.jsx(me.TextCell,{className:"text-center",children:d||""})]})}function Cns({mcpServers:e,isLoading:t,search:n=""}){const r=v.useMemo(()=>{const s=n.toLowerCase();return e.filter(a=>a.name?.toLowerCase().includes(s)||a.id?.toLowerCase().includes(s))},[e,n]);return t?o.jsx(el,{columns:"auto 1fr auto auto auto"}):o.jsxs(me,{columns:"auto 1fr auto auto auto",variant:"striped",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Name"}),o.jsx(me.TopCell,{children:"URL"}),o.jsx(me.TopCellSmart,{long:"Agents",short:o.jsx(rl,{}),tooltip:"Agent Tools",className:"text-center"}),o.jsx(me.TopCellSmart,{long:"Tools",short:o.jsx(Qp,{}),tooltip:"Tools",className:"text-center"}),o.jsx(me.TopCellSmart,{long:"Workflows",short:o.jsx(kd,{}),tooltip:"Workflow Tools",className:"text-center"})]}),r.length===0&&n?o.jsx(me.NoMatch,{message:"No MCP Servers match your search"}):null,r.map(s=>o.jsx(_ns,{server:s},s.id))]})}const Ens=()=>o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Lr,{iconSlot:o.jsx(xf,{}),titleSlot:"No MCP Servers yet",descriptionSlot:o.jsxs(o.Fragment,{children:["MCP servers are not configured yet. ",o.jsx("br",{}),"More information in the documentation."]}),actionSlot:o.jsxs(de,{variant:"ghost",as:"a",href:"https://mastra.ai/docs/tools-mcp/mcp-overview",target:"_blank",rel:"noopener noreferrer",children:["MCP Documentation ",o.jsx(Pa,{})]})})}),jns=()=>{const{data:e=[],isLoading:t,error:n}=kZ(),[r,s]=v.useState("");return n&&gs(n)?o.jsx(lr,{children:o.jsx(Vs,{})}):n&&ys(n)?o.jsx(lr,{children:o.jsx(Ds,{resource:"MCP servers"})}):n?o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load MCP servers",message:n.message})}):e.length===0&&!t?o.jsx(lr,{children:o.jsx(Ens,{})}):o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsx("div",{className:"max-w-120",children:o.jsx(Of,{onSearch:s,label:"Filter MCP servers",placeholder:"Filter by name"})})}),o.jsx(Cns,{mcpServers:e,isLoading:t,search:r})]})},Tns=(e,t)=>{const n=new Map,r=Object.keys(t);for(const s of r){const a=t[s],i=a.tools,l=Object.keys(i);for(const c of l){const u=i[c];n.has(u.id)||n.set(u.id,{...u,agents:[]}),n.get(u.id).agents.push({...a,id:s})}}for(const[s,a]of Object.entries(e))n.has(a.id)||n.set(a.id,{...a,agents:[]});return Array.from(n.values())};function Nns({tools:e,agents:t,isLoading:n,search:r=""}){const{paths:s,Link:a}=yn(),i=v.useMemo(()=>Tns(e,t),[e,t]),l=v.useMemo(()=>i.filter(c=>c.id.toLowerCase().includes(r.toLowerCase())),[i,r]);return n?o.jsx(el,{columns:"auto 1fr auto"}):o.jsxs(me,{columns:"auto 1fr auto",variant:"striped",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Name"}),o.jsx(me.TopCell,{children:"Description"}),o.jsx(me.TopCellSmart,{long:"Agents",short:o.jsx(rl,{}),tooltip:"Attached Agents",className:"text-center"})]}),l.length===0&&r?o.jsx(me.NoMatch,{message:"No Tools match your search"}):null,l.map(c=>{const u=dm(c.id,50),d=dm(c.description??"",200),f=c.agents.length;return o.jsxs(me.RowLink,{to:s.toolLink(c.id),LinkComponent:a,children:[o.jsx(me.NameCell,{children:u}),o.jsx(me.DescriptionCell,{children:d}),o.jsx(me.TextCell,{className:"text-center",children:f||""})]},c.id)})]})}const Ins=()=>o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Lr,{iconSlot:o.jsx(xf,{}),titleSlot:"No Tools yet",descriptionSlot:o.jsxs(o.Fragment,{children:["Mastra tools are not configured yet. ",o.jsx("br",{}),"More information in the documentation."]}),actionSlot:o.jsxs(de,{variant:"ghost",as:"a",href:"https://mastra.ai/docs/agents/using-tools-and-mcp",target:"_blank",rel:"noopener noreferrer",children:["Tools Documentation ",o.jsx(Pa,{})]})})}),Ans=()=>{const e=We();return Rn({mutationFn:async({toolId:t,input:n,requestContext:r})=>{const s=new s_;Object.entries(r??{}).forEach(([a,i])=>{s.set(a,i)});try{return await e.getTool(t).execute({data:n,requestContext:s})}catch(a){throw De.error("Error executing dev tool"),console.error("Error executing dev tool:",a),a}}})},Rns=({toolId:e})=>{const{canExecute:t}=al(),n=t("tools"),{data:r={}}=Sm(),s=v.useMemo(()=>{for(const g of Object.values(r))if(g.tools){const y=Object.values(g.tools).find(b=>b.id===e);if(y)return y}return null},[r,e]),{data:a,isLoading:i,error:l}=uwr(e,{enabled:!s}),c=s||a,{mutateAsync:u,isPending:d,data:f}=Ans(),{requestContext:p}=_s();v.useEffect(()=>{if(l){const g=l instanceof Error?l.message:"Failed to load tool";De.error(`Error loading tool: ${g}`)}},[l]);const h=async(g,y)=>{if(!c)return;const b={...p??{},...y??{}};return u({toolId:c.id,input:g,requestContext:b})},m=c?.inputSchema?om(am(mx(c?.inputSchema))):Ss({});return i?o.jsxs("div",{className:"p-6",children:[o.jsx(At,{className:"h-8 w-48 mb-4"}),o.jsx(At,{className:"h-32 w-full"})]}):l?null:c?n?o.jsx(Vje,{executionResult:f,isExecutingTool:d,zodInputSchema:m,handleExecuteTool:h,toolDescription:c.description,toolId:c.id,requestContextSchema:c.requestContextSchema}):o.jsx("div",{className:"py-12 text-center px-6",children:o.jsx(ge,{variant:"ui-sm",className:"text-neutral3",children:"You don't have permission to execute tools."})}):o.jsx("div",{className:"py-12 text-center px-6",children:o.jsx(ge,{variant:"header-md",className:"text-neutral3",children:"Tool not found"})})};function Pns({value:e,onValueChange:t,placeholder:n="Select a tool...",searchPlaceholder:r="Search tools...",emptyText:s="No tools found.",className:a,disabled:i=!1,variant:l}){const{data:c={},isLoading:u,isError:d,error:f}=cI(),{data:p={},isLoading:h,isError:m,error:g}=Sm(),{navigate:y,paths:b}=yn();v.useEffect(()=>{if(d){const _=f instanceof Error?f.message:"Failed to load tools";De.error(`Error loading tools: ${_}`)}},[d,f]),v.useEffect(()=>{if(m){const _=g instanceof Error?g.message:"Failed to load agents";De.error(`Error loading agents: ${_}`)}},[m,g]);const w=new Map;Object.values(p).forEach(_=>{_.tools&&Object.values(_.tools).forEach(C=>{w.has(C.id)||w.set(C.id,C)})}),Object.values(c).forEach(_=>{w.has(_.id)||w.set(_.id,_)});const S=Array.from(w.values()).map(_=>({label:_.id,value:_.id})),k=_=>{t?t(_):_&&_!==e&&y(b.toolLink(_))};return o.jsx(Xl,{options:S,value:e,onValueChange:k,placeholder:u||h?"Loading tools...":n,searchPlaceholder:r,emptyText:s,className:a,disabled:i||u||h||d||m,variant:l})}const $ns=({isLoading:e,server:t})=>{const[{sseUrl:n,httpStreamUrl:r},s]=v.useState({sseUrl:"",httpStreamUrl:""});if(v.useEffect(()=>{if(!t)return;const i=window.MASTRA_SERVER_HOST,l=window.MASTRA_SERVER_PORT;let c=null;i&&l&&(c=`http://${i}:${l}`);const u=c||"http://localhost:4111",d=`${u}/api/mcp/${t.id}/sse`,f=`${u}/api/mcp/${t.id}/mcp`;s({sseUrl:d,httpStreamUrl:f})},[t]),e)return null;if(!t)return o.jsx(xy,{children:o.jsx(ge,{as:"h1",variant:"header-md",className:"text-neutral3 font-medium py-20 text-center",children:"Server not found"})});const a=`npx -y mcp-remote ${n}`;return o.jsxs(xy,{isDivided:!0,children:[o.jsxs("div",{className:"px-8 py-12 mx-auto max-w-2xl w-full",children:[o.jsx(ge,{as:"h1",variant:"header-md",className:"text-neutral6 font-medium pb-4",children:t.name}),o.jsxs("div",{className:"flex items-center gap-1 pb-6",children:[o.jsx(un,{icon:o.jsx(JEt,{className:"text-neutral6"}),className:"rounded-r-sm text-neutral4!",children:"Version"}),o.jsx(un,{className:"rounded-l-sm text-neutral4!",children:t.version_detail.version})]}),o.jsx(ge,{className:"text-neutral3 pb-4",children:"This MCP server can be accessed through multiple transport methods. Choose the one that best fits your use case."}),o.jsxs("div",{className:"flex flex-col gap-4",children:[o.jsxs("div",{className:"rounded-lg border border-border1 bg-surface3 p-4",children:[o.jsx(un,{icon:o.jsx("span",{className:"font-mono w-6 text-accent1 font-medium mr-1",children:"HTTP"}),children:"Regular HTTP Endpoint"}),o.jsx(ge,{className:"text-neutral3 pt-1 pb-2",children:"Use for stateless HTTP transport with streamable responses."}),o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx(ge,{className:"px-2 py-1 bg-surface4 rounded-lg",children:r}),o.jsx("div",{className:"pt-1",children:o.jsx(ba,{tooltip:"Copy HTTP Stream URL",content:r})})]})]}),o.jsxs("div",{className:"rounded-lg border border-border1 bg-surface3 p-4",children:[o.jsx(un,{icon:o.jsx("span",{className:"font-mono w-6 text-accent1 font-medium mr-1",children:"SSE"}),children:"Server-Sent Events"}),o.jsx(ge,{className:"text-neutral3 pt-1 pb-2",children:"Use for real-time communication via SSE."}),o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx(ge,{className:"px-2 py-1 bg-surface4 rounded-lg",children:n}),o.jsx("div",{className:"pt-1",children:o.jsx(ba,{tooltip:"Copy SSE URL",content:n})})]})]}),o.jsxs("div",{className:"rounded-lg border border-border1 bg-surface3 p-4",children:[o.jsx(un,{icon:o.jsx("span",{className:"font-mono w-6 text-accent1 font-medium mr-1",children:"CLI"}),children:"Command Line"}),o.jsx(ge,{className:"text-neutral3 pt-1 pb-2",children:"Use for local command-line access via npx and mcp-remote."}),o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx(ge,{className:"px-2 py-1 bg-surface4 rounded-lg",children:a}),o.jsx("div",{className:"pt-1",children:o.jsx(ba,{tooltip:"Copy Command Line Config",content:a})})]})]})]})]}),o.jsx("div",{className:"h-full overflow-y-scroll border-l border-border1",children:o.jsx(Mns,{server:t})})]})},Mns=({server:e})=>{const{data:t={},isLoading:n}=f5t(e);if(n)return null;const r=Object.keys(t);return o.jsxs("div",{className:"p-5 overflow-y-scroll",children:[o.jsxs("div",{className:"text-neutral6 flex gap-2 items-center",children:[o.jsx(Ue,{size:"lg",className:"bg-surface4 rounded-md p-1",children:o.jsx(D_,{})}),o.jsx(ge,{variant:"header-md",as:"h2",className:"font-medium",children:"Available Tools"})]}),o.jsx("div",{className:"flex flex-col gap-2 pt-6",children:r.map(s=>{const a=t[s];return o.jsx(Lns,{tool:a,serverId:e.id},s)})})]})};function Dns(e){if(!e)return!1;const t=e.ui;return!!(typeof t?.resourceUri=="string"&&t.resourceUri.startsWith("ui://")||typeof e["ui/resourceUri"]=="string"&&e["ui/resourceUri"].startsWith("ui://"))}const Lns=({tool:e,serverId:t})=>{const n=v.useRef(null),{Link:r,paths:s}=yn(),a=GLt[e.toolType||"tool"],i=Dns(e._meta);return o.jsxs(Cf,{onClick:()=>n.current?.click(),children:[o.jsx(yAt,{children:o.jsx(a,{className:"group-hover/entity:text-accent6"})}),o.jsxs(jf,{children:[o.jsx(Ef,{children:o.jsxs("span",{className:"flex items-center gap-2",children:[o.jsx(r,{ref:n,href:s.mcpServerToolLink(t,e.id),children:e.id}),i&&o.jsx(un,{className:"text-[10px] py-0",children:"App"})]})}),o.jsx(Yp,{children:e.description})]})]})},Fns=()=>{const{serverId:e}=dr(),{data:t=[],isLoading:n}=kZ(),r=t.find(s=>s.id===e);return o.jsx("div",{className:"h-full w-full overflow-hidden",children:o.jsx($ns,{isLoading:n,server:r})})};function zns(e){if(!e)return;const t=e.ui;if(t?.resourceUri)return t.resourceUri;const n=e["ui/resourceUri"];if(typeof n=="string")return n}const Bns=({toolId:e,serverId:t})=>{const{canExecute:n}=al(),r=n("tools"),s=We(),{data:a,isLoading:i,error:l}=lje(t,e),{mutateAsync:c,isPending:u,data:d}=pzr(t,e),f=a?zns(a._meta):void 0,{data:p}=wt({queryKey:["mcp-app-resource",t,f],queryFn:async()=>f?(await s.readMcpServerResource(t,f)).contents[0]?.text??null:null,enabled:!!f}),h=v.useCallback(async(y,b)=>await c(b),[c]);v.useEffect(()=>{if(l){const y=l instanceof Error?l.message:"Failed to load tool";De.error(`Error loading tool: ${y}`)}},[l]);const m=async y=>{if(a)return await c(y)};if(i)return o.jsxs("div",{className:"p-6",children:[o.jsx(At,{className:"h-8 w-48 mb-4"}),o.jsx(At,{className:"h-32 w-full"})]});if(l)return null;if(!a)return o.jsx("div",{className:"py-12 text-center px-6",children:o.jsx(ge,{variant:"header-md",className:"text-neutral3",children:"Tool not found"})});if(!r)return o.jsx("div",{className:"py-12 text-center px-6",children:o.jsx(ge,{variant:"ui-sm",className:"text-neutral3",children:"You don't have permission to execute tools."})});let g;try{g=om(am(a.inputSchema))}catch(y){console.error("Error processing input schema:",y),De.error("Failed to process tool input schema."),g=Ss({})}return o.jsxs("div",{className:"flex flex-col gap-4",children:[p&&o.jsx("div",{className:"border-b border-border1 p-4",children:o.jsx(d5t,{html:p,toolName:a.name??a.id,onToolCall:h})}),o.jsx(Vje,{executionResult:d,isExecutingTool:u,zodInputSchema:g,handleExecuteTool:m,toolDescription:a.description||"",toolId:a.id})]})},Uns=()=>{const{serverId:e,toolId:t}=dr(),{data:n,isLoading:r}=lje(e,t);return r||!n?null:o.jsx("div",{className:"h-full w-full overflow-y-auto",children:o.jsx(Bns,{toolId:t,serverId:e})})},qns=["last-24h","last-3d","last-7d","last-14d","last-30d","custom"];function Vns(e){switch(e){case"3d":return"last-3d";case"7d":return"last-7d";case"14d":return"last-14d";case"30d":return"last-30d";case"custom":return"custom";default:return"last-24h"}}function Hns(e){switch(e){case"last-3d":return"3d";case"last-7d":return"7d";case"last-14d":return"14d";case"last-30d":return"30d";case"custom":return"custom";default:return"24h"}}function Wns(){const{datePreset:e,setDatePreset:t,customRange:n,setCustomRange:r}=qZ(),s=v.useRef(e);s.current=e;const a=v.useRef(n);return a.current=n,o.jsx(oTe,{preset:Vns(e),onPresetChange:i=>{const l=Hns(i);s.current=l,t(l)},dateFrom:n?.from,dateTo:n?.to,onDateChange:(i,l)=>{if(s.current!=="custom")return;const c={...a.current,[l]:i};a.current=c,r(c)},presets:qns})}const Gre={"24h":1440*60*1e3,"3d":4320*60*1e3,"7d":10080*60*1e3,"14d":336*60*60*1e3,"30d":720*60*60*1e3};function Zns(e,t,n){if(e!=="custom"){const r=Gre[e]??Gre["24h"];return{start:new Date(n-r),end:new Date(n)}}return{start:t?.from??new Date(n-Gre["24h"]),end:t?.to??new Date(n)}}function Cm(){const{datePreset:e,customRange:t,dimensionalFilter:n,dimensionalFilterKey:r}=qZ(),s=v.useRef(null),a=e==="custom"?`custom:${t?.from?.getTime()??""}:${t?.to?.getTime()??""}`:`preset:${e}`;(!s.current||s.current.key!==a)&&(s.current={key:a,anchor:Date.now()});const i=s.current.anchor,l=v.useMemo(()=>Zns(e,t,i),[e,t,i]),c=v.useMemo(()=>({timestamp:l,...n}),[l,r]),u=v.useMemo(()=>`${a}|${r}`,[a,r]);return{datePreset:e,customRange:t,timestamp:l,filters:c,dimensionalFilter:n,filterKey:u}}function T8t(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","agent-runs-kpi",n],queryFn:()=>e.getMetricAggregate({name:["mastra_agent_duration_ms"],aggregation:"count",filters:t,comparePeriod:"previous_period"})})}function H4({href:e,LinkComponent:t="a"}){return o.jsx(de,{as:t,href:e,variant:"ghost",size:"icon-md",tooltip:"View in Traces","aria-label":"View in Traces",children:o.jsx(Dkn,{})})}function Gns({href:e,LinkComponent:t="a"}){return o.jsx(de,{as:t,href:e,variant:"ghost",size:"icon-md",tooltip:"View errors in Logs","aria-label":"View errors in Logs",children:o.jsx(bOn,{})})}function Qns(e){switch(e){case"24h":return"last-24h";case"3d":return"last-3d";case"7d":return"last-7d";case"14d":return"last-14d";case"30d":return"last-30d";case"custom":return"custom";default:return}}function Yns(e,t){if(t==="1h"){const s=new Date(e);s.setUTCMinutes(0,0,0);const a=new Date(s.getTime()+3600*1e3);return{from:s,to:a}}const n=new Date(e);n.setUTCHours(0,0,0,0);const r=new Date(n.getTime()+1440*60*1e3);return{from:n,to:r}}function N8t(e,t,n,r,s,a,i){if(i){e.set(t,"custom"),e.set(n,i.from.toISOString()),e.set(r,i.to.toISOString());return}if(s==="custom"){e.set(t,"custom"),a?.from&&e.set(n,a.from.toISOString()),a?.to&&e.set(r,a.to.toISOString());return}const l=Qns(s);l&&e.set(t,l)}function jo(e,t,n){typeof n=="string"&&n.length>0&&e.set(t,n)}function I8t(e,t,n){if(!(!Array.isArray(n)||n.length===0))for(const r of n)r&&e.append(t,r)}function DQe({preset:e,customRange:t,dashboardFilter:n,scope:r,tracesBasePath:s="/observability"}){const a=new URLSearchParams;a.set(gw,"branches"),N8t(a,vw,yw,bw,e,t,r.window);const i=r.rootEntityType??n.rootEntityType;i&&a.set(_x,i),r.status&&a.set(Cx,r.status),jo(a,Sl.entityName,r.entityName??n.entityName),jo(a,Sl.threadId,r.threadId??n.threadId),jo(a,Sl.resourceId,r.resourceId??n.resourceId),jo(a,Sl.entityId,n.entityId),jo(a,Sl.runId,n.runId),jo(a,Sl.sessionId,n.sessionId),jo(a,Sl.requestId,n.requestId),jo(a,Sl.userId,n.userId),jo(a,Sl.organizationId,n.organizationId),jo(a,Sl.experimentId,n.experimentId),jo(a,Sl.serviceName,n.serviceName),jo(a,Sl.environment,n.environment),I8t(a,Sl.tags,n.tags);const l=a.toString();return l?`${s}?${l}`:s}function Xns({preset:e,customRange:t,dashboardFilter:n,scope:r,logsBasePath:s="/logs"}){const a=new URLSearchParams;N8t(a,zb,Bb,Ub,e,t,r.window);const i=r.rootEntityType??n.rootEntityType;i&&a.set(Px,i),jo(a,kl.entityName,r.entityName??n.entityName),jo(a,kl.threadId,r.threadId??n.threadId),jo(a,kl.resourceId,r.resourceId??n.resourceId),jo(a,kl.runId,n.runId),jo(a,kl.sessionId,n.sessionId),jo(a,kl.requestId,n.requestId),jo(a,kl.userId,n.userId),jo(a,kl.organizationId,n.organizationId),jo(a,kl.experimentId,n.experimentId),jo(a,kl.serviceName,n.serviceName),jo(a,kl.environment,n.environment),I8t(a,kl.tags,n.tags),r.status==="error"&&a.append(kl.level,"error");const l=a.toString();return l?`${s}?${l}`:s}function kI(){const{datePreset:e,customRange:t,dimensionalFilter:n,tracesBasePath:r,logsBasePath:s}=qZ(),a=v.useCallback((c={})=>DQe({preset:e,customRange:t,dashboardFilter:n,scope:c,tracesBasePath:r}),[e,t,n,r]),i=v.useCallback((c={})=>Xns({preset:e,customRange:t,dashboardFilter:n,scope:c,logsBasePath:s}),[e,t,n,s]),l=v.useCallback((c,u,d)=>{const f=Yns(u,d);return DQe({preset:e,customRange:t,dashboardFilter:n,scope:{...c,window:f},tracesBasePath:r})},[e,t,n,r]);return{getTracesHref:a,getLogsHref:i,getBucketTracesHref:l}}const A8t="1h";async function Qre(e,t,n){const r=await e.getMetricPercentiles({name:t,percentiles:[.5,.95],interval:A8t,filters:n}),s=r.series.find(l=>l.percentile===.5),a=r.series.find(l=>l.percentile===.95);if(!s||!a)return[];const i=new Map(a.points.map(l=>[new Date(l.timestamp).getTime(),l.value]));return s.points.map(l=>{const c=new Date(l.timestamp),u=c.getTime();return{time:c.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!1}),tsMs:u,p50:Math.round(l.value),p95:Math.round(i.get(u)??0)}})}function Kns(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","latency",n],queryFn:async()=>{const[r,s,a]=await Promise.all([Qre(e,"mastra_agent_duration_ms",t),Qre(e,"mastra_workflow_duration_ms",t),Qre(e,"mastra_tool_duration_ms",t)]);return{agentData:r,workflowData:s,toolData:a,interval:A8t}}})}const LQe={agents:Os.AGENT,workflows:Os.WORKFLOW_RUN,tools:Os.TOOL};function Jns(){const{data:e,isLoading:t,isError:n}=Kns(),{getTracesHref:r,getBucketTracesHref:s}=kI(),{Link:a}=yn(),i=bs();return o.jsx(WQr,{data:e,isLoading:t,isError:n,onPointClick:(l,c)=>{Number.isFinite(c.tsMs)&&i(s({rootEntityType:LQe[l]},c.tsMs,"1h"))},actions:l=>o.jsx(H4,{href:r({rootEntityType:LQe[l]}),LinkComponent:a})})}function ers(e){return e==="threads"||e==="resources"}function Yre(e){return e.length<=12?e:`${e.slice(0,6)}…${e.slice(-4)}`}function trs({threads:e,resources:t,getThreadRowHref:n,getResourceRowHref:r,actions:s,LinkComponent:a}){const[i,l]=v.useState("threads"),c=e.data?.map(y=>({...y,key:y.threadId}))??[],u=t.data?.map(y=>({...y,key:y.resourceId}))??[],d=c.length>0,f=u.length>0,p=e.data?.reduce((y,b)=>y+b.runs,0)??0,h=t.data?.reduce((y,b)=>y+b.threadCount,0)??0,m=i==="threads"?e:t,g=typeof s=="function"?s(i):s;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Memory",description:"Resource and Thread consumption"}),i==="threads"&&d&&o.jsx(Ut.Summary,{value:p.toLocaleString(),label:"Total runs"}),i==="resources"&&f&&o.jsx(Ut.Summary,{value:h.toLocaleString(),label:"Total threads"}),g?o.jsx(Ut.Actions,{children:g}):null]}),m.isLoading?o.jsx(Ut.Loading,{}):m.isError?o.jsx(Ut.Error,{message:"Failed to load memory data"}):o.jsx(Ut.Content,{children:o.jsxs(su,{defaultTab:"threads",value:i,onValueChange:y=>{ers(y)&&l(y)},className:"grid grid-rows-[auto_1fr] overflow-y-auto h-full",children:[o.jsxs(au,{children:[o.jsx(Vr,{value:"threads",children:"Threads"}),o.jsx(Vr,{value:"resources",children:"Resources"})]}),o.jsx(ps,{value:"threads",children:d?o.jsxs(me,{columns:"auto auto auto auto auto",...jve,children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{sticky:"start",children:"Thread ID"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Resource ID"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Runs"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Tokens"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Cost"})]}),c.map(y=>{const b=n?.(y),w=o.jsxs(o.Fragment,{children:[o.jsx(me.RowHeaderCell,{height:"compact",className:"text-ui-sm",children:Yre(y.threadId)}),o.jsx(me.NumberCell,{children:y.resourceId?Yre(y.resourceId):"—"}),o.jsx(me.NumberCell,{highlight:!0,children:y.runs.toLocaleString()}),o.jsx(me.NumberCell,{children:y.tokens>0?yc(y.tokens):"—"}),o.jsx(me.NumberCell,{children:y.cost!=null?vg(y.cost,y.costUnit):"—"})]});return b?o.jsx(me.RowLink,{to:b,LinkComponent:a,children:w},y.key):o.jsx(me.RowStatic,{children:w},y.key)})]}):o.jsx(Ut.NoData,{message:"No thread activity yet"})}),o.jsx(ps,{value:"resources",children:f?o.jsxs(me,{columns:"auto auto auto auto",...jve,children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{sticky:"start",children:"Resource ID"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Threads"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Tokens"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Cost"})]}),u.map(y=>{const b=r?.(y),w=o.jsxs(o.Fragment,{children:[o.jsx(me.RowHeaderCell,{height:"compact",className:"text-ui-sm",children:Yre(y.resourceId)}),o.jsx(me.NumberCell,{highlight:!0,children:y.threadCount.toLocaleString()}),o.jsx(me.NumberCell,{children:y.tokens>0?yc(y.tokens):"—"}),o.jsx(me.NumberCell,{children:y.cost!=null?vg(y.cost,y.costUnit):"—"})]});return b?o.jsx(me.RowLink,{to:b,LinkComponent:a,children:w},y.key):o.jsx(me.RowStatic,{children:w},y.key)})]}):o.jsx(Ut.NoData,{message:"No resource activity yet"})})]})})]})}const Xre=20;function nrs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","top-active-threads",n],queryFn:async()=>{const r={groupBy:["threadId","resourceId"],orderDirection:"DESC",filters:t},[s,a,i]=await Promise.all([e.getMetricBreakdown({...r,name:["mastra_agent_duration_ms"],aggregation:"count",limit:Xre}),e.getMetricBreakdown({...r,name:["mastra_model_total_input_tokens"],aggregation:"sum",limit:Xre}),e.getMetricBreakdown({...r,name:["mastra_model_total_output_tokens"],aggregation:"sum",limit:Xre})]),l=new Map,c=d=>(l.has(d)||l.set(d,{tokens:0,cost:null,costUnit:null}),l.get(d)),u=d=>{for(const f of d){const p=f.dimensions.threadId;if(!p)continue;const h=c(p);h.tokens+=f.value,f.estimatedCost!=null&&(h.cost=(h.cost??0)+f.estimatedCost,f.costUnit&&(h.costUnit=f.costUnit))}};return u(a.groups),u(i.groups),s.groups.filter(d=>!!d.dimensions.threadId).map(d=>{const f=d.dimensions.threadId,p=l.get(f);return{threadId:f,resourceId:d.dimensions.resourceId??null,runs:d.value,tokens:p?.tokens??0,cost:p?.cost??null,costUnit:p?.costUnit??null}})}})}const Kre=20;function rrs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","top-resources-by-threads",n],queryFn:async()=>{const r={groupBy:["resourceId"],orderDirection:"DESC",filters:t},[s,a,i]=await Promise.all([e.getMetricBreakdown({...r,name:["mastra_agent_duration_ms"],aggregation:"count_distinct",distinctColumn:"threadId",limit:Kre}),e.getMetricBreakdown({...r,name:["mastra_model_total_input_tokens"],aggregation:"sum",limit:Kre}),e.getMetricBreakdown({...r,name:["mastra_model_total_output_tokens"],aggregation:"sum",limit:Kre})]),l=new Map,c=d=>(l.has(d)||l.set(d,{tokens:0,cost:null,costUnit:null}),l.get(d)),u=d=>{for(const f of d){const p=f.dimensions.resourceId;if(!p)continue;const h=c(p);h.tokens+=f.value,f.estimatedCost!=null&&(h.cost=(h.cost??0)+f.estimatedCost,f.costUnit&&(h.costUnit=f.costUnit))}};return u(a.groups),u(i.groups),s.groups.filter(d=>!!d.dimensions.resourceId).map(d=>{const f=d.dimensions.resourceId,p=l.get(f);return{resourceId:f,threadCount:d.value,tokens:p?.tokens??0,cost:p?.cost??null,costUnit:p?.costUnit??null}})}})}function srs(){const e=nrs(),t=rrs(),{getTracesHref:n}=kI(),{Link:r}=yn();return o.jsx(trs,{threads:{data:e.data,isLoading:e.isLoading,isError:e.isError},resources:{data:t.data,isLoading:t.isLoading,isError:t.isError},LinkComponent:r,getThreadRowHref:s=>n({threadId:s.threadId,...s.resourceId?{resourceId:s.resourceId}:{}}),getResourceRowHref:s=>n({resourceId:s.resourceId})})}function W4({label:e,value:t,prevValue:n,changePct:r,isLoading:s,isError:a}){const i=t!=null;return o.jsxs(Kr,{children:[o.jsx(Kr.Label,{children:e}),o.jsx(Kr.Value,{className:i?void 0:"invisible",children:i?t:"—"}),a?o.jsx(Kr.Error,{}):s?o.jsx(Kr.Loading,{}):i?r!=null?o.jsx(Kr.Change,{changePct:r,prevValue:n}):o.jsx(Kr.NoChange,{}):o.jsx(Kr.NoData,{})]})}function ars(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","active-resources-kpi",n],queryFn:()=>e.getMetricAggregate({name:["mastra_agent_duration_ms"],aggregation:"count_distinct",distinctColumn:"resourceId",filters:t,comparePeriod:"previous_period"})})}function irs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","active-threads-kpi",n],queryFn:()=>e.getMetricAggregate({name:["mastra_agent_duration_ms"],aggregation:"count_distinct",distinctColumn:"threadId",filters:t,comparePeriod:"previous_period"})})}function ors(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","model-cost-kpi",n],queryFn:async()=>{const r=await e.getMetricAggregate({name:["mastra_model_total_input_tokens","mastra_model_total_output_tokens"],aggregation:"sum",filters:t,comparePeriod:"previous_period"});return{cost:r.estimatedCost??null,costUnit:r.costUnit??null,previousCost:r.previousEstimatedCost??null,costChangePercent:r.costChangePercent??null}}})}function lrs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","total-tokens-kpi",n],queryFn:async()=>{const[r,s]=await Promise.all([e.getMetricAggregate({name:["mastra_model_total_input_tokens"],aggregation:"sum",filters:t,comparePeriod:"previous_period"}),e.getMetricAggregate({name:["mastra_model_total_output_tokens"],aggregation:"sum",filters:t,comparePeriod:"previous_period"})]),a=r.value!=null||s.value!=null,i=r.previousValue!=null||s.previousValue!=null,l=(r.value??0)+(s.value??0),c=(r.previousValue??0)+(s.previousValue??0),u=i&&c>0?(l-c)/c*100:null;return{value:a?l:null,previousValue:i?c:null,changePercent:u}}})}function crs(){const{data:e,isLoading:t,isError:n}=T8t();return o.jsx(W4,{label:"Total Agent Runs",value:e?.value!=null?e.value.toLocaleString():null,prevValue:e?.previousValue!=null?e.previousValue.toLocaleString():void 0,changePct:e?.changePercent??null,isLoading:t,isError:n})}function urs(){const{data:e,isLoading:t,isError:n}=ors();return o.jsx(W4,{label:"Total Model Cost",value:e?.cost!=null?vg(e.cost,e.costUnit):null,prevValue:e?.previousCost!=null?vg(e.previousCost,e.costUnit):void 0,changePct:e?.costChangePercent??null,isLoading:t,isError:n})}function drs(){const{data:e,isLoading:t,isError:n}=lrs();return o.jsx(W4,{label:"Total Tokens",value:e?.value!=null?yc(e.value):null,prevValue:e?.previousValue!=null?yc(e.previousValue):void 0,changePct:e?.changePercent??null,isLoading:t,isError:n})}function frs(){const{data:e,isLoading:t,isError:n}=irs();return o.jsx(W4,{label:"Total Threads",value:e?.value!=null?yc(e.value):null,prevValue:e?.previousValue!=null?yc(e.previousValue):void 0,changePct:e?.changePercent??null,isLoading:t,isError:n})}function prs(){const{data:e,isLoading:t,isError:n}=ars();return o.jsx(W4,{label:"Total Resources",value:e?.value!=null?yc(e.value):null,prevValue:e?.previousValue!=null?yc(e.previousValue):void 0,changePct:e?.changePercent??null,isLoading:t,isError:n})}function hrs({onClear:e,onRemoveAll:t,onSave:n,onRemoveSaved:r,isLoading:s,filterFields:a,filterTokens:i,onFilterTokensChange:l,autoFocusFilterFieldId:c}){const u=i.length>0,d=i.some(f=>mrs(f,a));return o.jsxs("div",{className:K("grid grid-cols-[1fr_auto] gap-3 items-start"),children:[o.jsx(uTe,{fields:a,tokens:i,onTokensChange:l,disabled:s,autoFocusFieldId:c}),u&&o.jsx(lTe,{disabled:s,onClear:d?e:void 0,onRemoveAll:t,onSave:n,onRemoveSaved:r})]})}function mrs(e,t){const n=t.find(r=>r.id===e.fieldId);return n?n.kind==="text"?typeof e.value=="string"&&e.value.trim()!=="":n.kind==="pick-multi"?n.multi?Array.isArray(e.value)&&e.value.length>0:typeof e.value=="string"&&e.value!==""&&e.value!=="Any":n.kind==="multi-select"?Array.isArray(e.value)&&e.value.length>0:!1:!1}function grs({rows:e,isLoading:t,isError:n,getRowHref:r,actions:s,LinkComponent:a}){const i=!!e&&e.length>0;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Model Usage & Cost",description:"Token consumption by model."}),i&&(()=>{const l=e.reduce((d,f)=>d+(f.cost??0),0),c=new Set;for(const d of e)d.cost!=null&&d.costUnit&&c.add(d.costUnit);let u;return c.size===0?u=l>0?vg(l):"—":c.size===1?u=l>0?vg(l,[...c][0]):"—":u="Mixed",o.jsx(Ut.Summary,{value:u,label:"Total cost"})})(),s?o.jsx(Ut.Actions,{children:s}):null]}),t?o.jsx(Ut.Loading,{}):n?o.jsx(Ut.Error,{message:"Failed to load model usage data"}):o.jsx(Ut.Content,{children:i?o.jsxs(me,{columns:"auto auto auto auto auto auto",...jve,children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{sticky:"start",children:"Model"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Input"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Output"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Cache Read"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Cache Write"}),o.jsx(me.TopCell,{className:"justify-end text-right",children:"Cost"})]}),e.map(l=>{const c=r?.(l),u=o.jsxs(o.Fragment,{children:[o.jsx(me.RowHeaderCell,{height:"compact",className:"text-ui-sm",children:l.model}),o.jsx(me.NumberCell,{children:l.input}),o.jsx(me.NumberCell,{children:l.output}),o.jsx(me.NumberCell,{children:l.cacheRead}),o.jsx(me.NumberCell,{children:l.cacheWrite}),o.jsx(me.NumberCell,{highlight:!0,children:l.cost!=null?vg(l.cost,l.costUnit):"—"})]});return c?o.jsx(me.RowLink,{to:c,LinkComponent:a,children:u},l.model):o.jsx(me.RowStatic,{children:u},l.model)})]}):o.jsx(Ut.NoData,{message:"No model usage data yet"})})]})}function vrs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","model-usage-cost",n],queryFn:async()=>{const[r,s,a,i]=await Promise.all(["mastra_model_total_input_tokens","mastra_model_total_output_tokens","mastra_model_input_cache_read_tokens","mastra_model_input_cache_write_tokens"].map(d=>e.getMetricBreakdown({name:[d],groupBy:["model"],aggregation:"sum",orderDirection:"DESC",filters:t}))),l=new Map,c=d=>(l.has(d)||l.set(d,{input:0,output:0,cacheRead:0,cacheWrite:0,cost:null,costUnit:null}),l.get(d)),u=(d,f)=>{f.estimatedCost!=null&&(d.cost=(d.cost??0)+f.estimatedCost,f.costUnit&&(d.costUnit=f.costUnit))};for(const d of r.groups){const f=d.dimensions.model??"unknown",p=c(f);p.input=d.value,u(p,d)}for(const d of s.groups){const f=d.dimensions.model??"unknown",p=c(f);p.output=d.value,u(p,d)}for(const d of a.groups){const f=d.dimensions.model??"unknown",p=c(f);p.cacheRead=d.value}for(const d of i.groups){const f=d.dimensions.model??"unknown",p=c(f);p.cacheWrite=d.value}return Array.from(l.entries()).map(([d,f])=>({model:d,input:yc(f.input),output:yc(f.output),cacheRead:yc(f.cacheRead),cacheWrite:yc(f.cacheWrite),cost:f.cost,costUnit:f.costUnit})).sort((d,f)=>d.model.localeCompare(f.model))}})}function yrs(){const{data:e,isLoading:t,isError:n}=vrs(),{getTracesHref:r}=kI(),{Link:s}=yn();return o.jsx(grs,{rows:e,isLoading:t,isError:n,LinkComponent:s,getRowHref:()=>r({rootEntityType:Os.AGENT}),actions:o.jsx(H4,{href:r({rootEntityType:Os.AGENT}),LinkComponent:s})})}function brs(e){return e==="tokens"||e==="cost"}function xrs({data:e,isLoading:t,isError:n,getRowHref:r,actions:s,LinkComponent:a}){const[i,l]=v.useState("tokens"),c=e??[],u=c.length>0,d=c.reduce((b,w)=>b+w.total,0),f=c.filter(b=>b.cost!=null&&b.cost>0),p=new Set(f.map(b=>b.costUnit??"usd")),h=p.size<=1,m=h?[...p][0]??"usd":null,g=h?f.reduce((b,w)=>b+(w.cost??0),0):0,y=h&&g>0;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Token Usage by Agent",description:"Token consumption grouped by agent."}),u&&(i==="cost"&&y?o.jsx(Ut.Summary,{value:vg(g,m),label:"Total cost"}):o.jsx(Ut.Summary,{value:yc(d),label:"Total tokens"})),u&&s?o.jsx(Ut.Actions,{children:s}):null]}),t?o.jsx(Ut.Loading,{}):n?o.jsx(Ut.Error,{message:"Failed to load token usage data"}):o.jsx(Ut.Content,{children:u?o.jsxs(su,{defaultTab:"tokens",value:i,onValueChange:b=>{brs(b)&&l(b)},className:"grid grid-rows-[auto_1fr] overflow-y-auto h-full",children:[o.jsxs(au,{children:[o.jsx(Vr,{value:"tokens",children:"Tokens"}),o.jsx(Vr,{value:"cost",children:"Cost"})]}),o.jsx(ps,{value:"tokens",children:o.jsx(oN,{LinkComponent:a,data:c.map(b=>({name:b.name,values:[b.input,b.output],href:r?.(b)})),segments:[{label:"Input",color:Np.blueDark},{label:"Output",color:Np.blue}],maxVal:Math.max(...c.map(b=>b.input+b.output)),fmt:yc})}),o.jsx(ps,{value:"cost",children:y?o.jsx(oN,{LinkComponent:a,data:f.slice().sort((b,w)=>(w.cost??0)-(b.cost??0)).map(b=>({name:b.name,values:[b.cost],href:r?.(b)})),segments:[{label:"Cost",color:Np.purple}],maxVal:Math.max(...f.map(b=>b.cost??0)),fmt:b=>vg(b,m)}):o.jsx(Ut.NoData,{message:"No cost data yet"})})]}):o.jsx(Ut.NoData,{message:"No token usage data yet"})})]})}function wrs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","token-usage-by-agent",n],queryFn:async()=>{const r={groupBy:["entityName"],aggregation:"sum",orderDirection:"DESC",filters:t},[s,a]=await Promise.all([e.getMetricBreakdown({...r,name:["mastra_model_total_input_tokens"]}),e.getMetricBreakdown({...r,name:["mastra_model_total_output_tokens"]})]),i=new Map,l=u=>(i.has(u)||i.set(u,{input:0,output:0,cost:null,costUnit:null}),i.get(u)),c=(u,d)=>{d.estimatedCost!=null&&(u.cost=(u.cost??0)+d.estimatedCost,d.costUnit&&(u.costUnit=d.costUnit))};for(const u of s.groups){const d=u.dimensions.entityName??"unknown",f=l(d);f.input=u.value,c(f,u)}for(const u of a.groups){const d=u.dimensions.entityName??"unknown",f=l(d);f.output=u.value,c(f,u)}return Array.from(i.entries()).map(([u,d])=>({name:u,input:d.input,output:d.output,total:d.input+d.output,cost:d.cost,costUnit:d.costUnit})).sort((u,d)=>d.total-u.total)}})}function Srs(){const{data:e,isLoading:t,isError:n}=wrs(),{getTracesHref:r}=kI(),{Link:s}=yn();return o.jsx(xrs,{data:e,isLoading:t,isError:n,LinkComponent:s,getRowHref:a=>r({rootEntityType:Os.AGENT,entityName:a.name}),actions:o.jsx(H4,{href:r({rootEntityType:Os.AGENT}),LinkComponent:s})})}function krs(e){return e==="24h"?"1h":"1d"}function Ors(e,t){return t==="1h"?e.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!1}):e.toLocaleDateString("en-US",{month:"short",day:"2-digit"})}function FQe(e,t,n){for(const r of t?.points??[]){const s=new Date(r.timestamp).getTime();if(!Number.isFinite(s))continue;const a=e.get(s)??{tsMs:s,input:0,output:0,cost:null,costUnits:new Set,hasUnknownCostUnit:!1};a[n]+=r.value,r.estimatedCost!=null&&(a.cost=(a.cost??0)+r.estimatedCost,t?.costUnit?a.costUnits.add(t.costUnit):a.hasUnknownCostUnit=!0),e.set(s,a)}}function _rs(e){return e.cost==null||e.hasUnknownCostUnit||e.costUnits.size!==1?null:[...e.costUnits][0]??null}function Crs(){const e=We(),{datePreset:t,filters:n,filterKey:r}=Cm(),s=krs(t);return wt({queryKey:["metrics","token-usage-timeseries",r,s],queryFn:async()=>{const[a,i]=await Promise.all([e.getMetricTimeSeries({name:["mastra_model_total_input_tokens"],interval:s,aggregation:"sum",filters:n}),e.getMetricTimeSeries({name:["mastra_model_total_output_tokens"],interval:s,aggregation:"sum",filters:n})]),l=new Map;return FQe(l,a.series[0],"input"),FQe(l,i.series[0],"output"),{data:Array.from(l.values()).sort((u,d)=>u.tsMs-d.tsMs).map(u=>{const d=new Date(u.tsMs);return{time:Ors(d,s),tsMs:u.tsMs,input:u.input,output:u.output,total:u.input+u.output,cost:u.cost,costUnit:_rs(u)}}),interval:s}}})}function Ers(){const{data:e,isLoading:t,isError:n}=Crs(),{getTracesHref:r}=kI(),{Link:s}=yn();return o.jsx(QQr,{data:e?.data,interval:e?.interval,isLoading:t,isError:n,actions:o.jsx(H4,{href:r(),LinkComponent:s})})}function Jre({data:e,rowHrefs:t,errorHrefs:n,LinkComponent:r}){return o.jsx(oN,{LinkComponent:r,data:e.map(s=>{const a=n?.(s),i=t?.(s);return a?{name:s.name,values:[s.completed,s.errors],hrefs:[i,a]}:{name:s.name,values:[s.completed,s.errors],href:i}}),segments:[{label:"Completed",color:Np.blueDark},{label:"Errors",color:Np.pink}],maxVal:Math.max(...e.map(s=>s.completed+s.errors)),fmt:yc})}function jrs({data:e,isLoading:t,isError:n,getRowHref:r,getErrorSegmentHref:s,actions:a,LinkComponent:i}){const[l,c]=v.useState("agents"),u=typeof a=="function"?a(l):a,d=!!e&&(e.agentData.length>0||e.workflowData.length>0||e.toolData.length>0),f=e?[...e.agentData,...e.workflowData,...e.toolData].reduce((m,g)=>m+g.completed+g.errors,0):0,p=m=>r?g=>r(m,g):void 0,h=m=>s?g=>s(m,g):void 0;return o.jsxs(Ut,{children:[o.jsxs(Ut.TopBar,{children:[o.jsx(Ut.TitleAndDescription,{title:"Trace Volume",description:"Runs and call counts."}),d&&o.jsx(Ut.Summary,{value:yc(f),label:"Total runs"}),u?o.jsx(Ut.Actions,{children:u}):null]}),t?o.jsx(Ut.Loading,{}):n?o.jsx(Ut.Error,{message:"Failed to load trace volume data"}):o.jsx(Ut.Content,{children:d?o.jsxs(su,{value:l,onValueChange:c,defaultTab:"agents",className:"grid grid-rows-[auto_1fr] overflow-y-auto h-full",children:[o.jsxs(au,{children:[o.jsx(Vr,{value:"agents",children:"Agents"}),o.jsx(Vr,{value:"workflows",children:"Workflows"}),o.jsx(Vr,{value:"tools",children:"Tools"})]}),o.jsx(ps,{value:"agents",children:e.agentData.length>0?o.jsx(Jre,{data:e.agentData,rowHrefs:p("agents"),errorHrefs:h("agents"),LinkComponent:i}):o.jsx(Ut.NoData,{message:"No agent data yet"})}),o.jsx(ps,{value:"workflows",children:e.workflowData.length>0?o.jsx(Jre,{data:e.workflowData,rowHrefs:p("workflows"),errorHrefs:h("workflows"),LinkComponent:i}):o.jsx(Ut.NoData,{message:"No workflow data yet"})}),o.jsx(ps,{value:"tools",children:e.toolData.length>0?o.jsx(Jre,{data:e.toolData,rowHrefs:p("tools"),errorHrefs:h("tools"),LinkComponent:i}):o.jsx(Ut.NoData,{message:"No tool data yet"})})]}):o.jsx(Ut.NoData,{message:"No trace volume data yet"})})]})}async function ese(e,t,n){const r=await e.getMetricBreakdown({name:[t],groupBy:["entityName","status"],aggregation:"count",orderDirection:"DESC",filters:n}),s=new Map;for(const a of r.groups){const i=a.dimensions.entityName??"unknown",l=a.dimensions.status??"ok";s.has(i)||s.set(i,{completed:0,errors:0});const c=s.get(i);l==="error"?c.errors+=a.value:c.completed+=a.value}return Array.from(s.entries()).map(([a,i])=>({name:a,...i})).sort((a,i)=>i.completed+i.errors-(a.completed+a.errors))}function Trs(){const e=We(),{filters:t,filterKey:n}=Cm();return wt({queryKey:["metrics","trace-volume",n],queryFn:async()=>{const[r,s,a]=await Promise.all([ese(e,"mastra_agent_duration_ms",t),ese(e,"mastra_workflow_duration_ms",t),ese(e,"mastra_tool_duration_ms",t)]);return{agentData:r,workflowData:s,toolData:a}}})}const t9={agents:Os.AGENT,workflows:Os.WORKFLOW_RUN,tools:Os.TOOL};function Nrs(){const{data:e,isLoading:t,isError:n}=Trs(),{getTracesHref:r,getLogsHref:s}=kI(),{Link:a}=yn();return o.jsx(jrs,{data:e,isLoading:t,isError:n,LinkComponent:a,getRowHref:(i,l)=>r({rootEntityType:t9[i],entityName:l.name}),getErrorSegmentHref:(i,l)=>l.errors>0?s({rootEntityType:t9[i],entityName:l.name,status:"error"}):void 0,actions:i=>o.jsxs(o.Fragment,{children:[o.jsx(H4,{href:r({rootEntityType:t9[i]}),LinkComponent:a}),o.jsx(Gns,{href:s({rootEntityType:t9[i],status:"error"}),LinkComponent:a})]})})}const Irs=new Set(["ObservabilityStorageClickhouseVNext","ObservabilityStorageDuckDB","ObservabilityInMemory","ObservabilitySpanner","ObservabilityStoragePostgresVNext"]),tse="period",n9="dateFrom",r9="dateTo";function Ars(){const[e,t]=ji(),n=e.get(tse),r=UQr(n)?n:"24h",s=v.useMemo(()=>{if(r!=="custom")return;const d=h=>{if(!h)return;const m=new Date(h);return Number.isNaN(m.getTime())?void 0:m},f=d(e.get(n9)),p=d(e.get(r9));if(!(!f&&!p))return{from:f,to:p}},[r,e.toString()]),a=v.useMemo(()=>$Qr(e),[e.toString()]),i=v.useCallback(d=>{t(f=>{const p=new URLSearchParams(f);return d==="24h"?p.delete(tse):p.set(tse,d),d!=="custom"&&(p.delete(n9),p.delete(r9)),p},{replace:!0})},[t]),l=v.useCallback(d=>{t(f=>{const p=new URLSearchParams(f);return d?.from?p.set(n9,d.from.toISOString()):p.delete(n9),d?.to?p.set(r9,d.to.toISOString()):p.delete(r9),p},{replace:!0})},[t]),c=v.useCallback(d=>{t(f=>{const p=new URLSearchParams(f);return DQr(p,d),p},{replace:!0})},[t]),u=v.useRef(!1);return v.useEffect(()=>{if(u.current||(u.current=!0,RQr(e)))return;const d=W6t();d&&t(f=>{const p=new URLSearchParams(f);for(const[h,m]of d)p.append(h,m);return p},{replace:!0})},[]),o.jsx(VQr,{preset:r,filterTokens:a,onPresetChange:i,onFilterTokensChange:c,customRange:s,onCustomRangeChange:l,children:o.jsx(Rrs,{})})}function Rrs(){const[e]=ji(),{error:t,isLoading:n}=T8t(),{filterTokens:r,setFilterTokens:s}=qZ(),[a,i]=v.useState(),{data:l,isLoading:c}=L4(),u=l?.observabilityStorageType,d=u?Irs.has(u):!1,f=u==="ObservabilityInMemory",{data:p,isLoading:h}=gTe(),{data:m,isLoading:g}=pTe(),{data:y,isLoading:b}=mTe(),{data:w,isLoading:S}=hTe(),k=v.useMemo(()=>PQr({availableTags:p??[],availableEntityNames:m??[],availableServiceNames:y??[],availableEnvironments:w??[],loading:{tags:h,entityNames:g,serviceNames:b,environments:S}}),[p,m,y,w,h,g,b,S]),[_,C]=v.useState(()=>W6t()!==null),E=v.useCallback(()=>{IQr(e),C(!0),De.success("Filters setting for Metrics saved")},[e]),j=v.useCallback(()=>{AQr(),C(!1),De.success("Filters setting for Metrics cleared up")},[]),N=v.useCallback(()=>{s([])},[s]),I=v.useCallback(()=>{const P=r.map($=>{const F=k.find(D=>D.id===$.fieldId);return F?F.kind==="text"?{fieldId:$.fieldId,value:""}:F.kind==="pick-multi"?F.multi?{fieldId:$.fieldId,value:[]}:{fieldId:$.fieldId,value:"Any"}:F.kind==="multi-select"?{fieldId:$.fieldId,value:[]}:$:$});s(P)},[k,r,s]);return t&&gs(t)?o.jsx(lr,{children:o.jsx(Vs,{})}):t&&ys(t)?o.jsx(lr,{children:o.jsx(Ds,{resource:"metrics"})}):t?o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load metrics",message:t.message})}):o.jsxs(Lt,{width:"wide",height:"full",children:[o.jsxs(Lt.TopArea,{children:[o.jsx(Lt.Row,{children:o.jsxs(Lt.Column,{className:"flex flex-wrap items-start justify-start gap-2",children:[o.jsx(Wns,{}),o.jsx(dTe,{fields:k,tokens:r,onTokensChange:s,disabled:n,onStartTextFilter:i})]})}),o.jsx(hrs,{isLoading:n,filterFields:k,filterTokens:r,onFilterTokensChange:s,onClear:I,onRemoveAll:N,onSave:E,onRemoveSaved:_?j:void 0,autoFocusFilterFieldId:a})]}),c?null:d?o.jsxs("div",{className:"grid gap-8 content-start pb-10",children:[f&&o.jsx(In,{variant:"info",title:"Metrics are not persisted",children:o.jsx(In.Message,{children:"This project uses in-memory storage for observability. Metrics will be lost on every server restart. For persistent metrics, switch the observability storage to ClickHouse, DuckDB, Postgres v-next, or Spanner."})}),o.jsxs($ve,{children:[o.jsx(crs,{}),o.jsx(urs,{}),o.jsx(drs,{}),o.jsx(frs,{}),o.jsx(prs,{})]}),o.jsxs($ve,{children:[o.jsx(yrs,{}),o.jsx(Srs,{}),o.jsx(Ers,{}),o.jsx(srs,{}),o.jsx(Nrs,{}),o.jsx(Jns,{})]})]}):o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Lr,{iconSlot:o.jsx(xf,{}),titleSlot:"Metrics are not available with your current storage",descriptionSlot:"Metrics require ClickHouse, DuckDB, Postgres v-next, Spanner, or in-memory storage for observability. Other relational databases (LibSQL, MSSQL) and document stores (MongoDB) do not support metrics collection. To enable metrics on an existing project, switch the observability storage in the Mastra configuration.",actionSlot:o.jsxs(de,{variant:"ghost",as:"a",href:"https://mastra.ai/docs/observability/metrics/overview",target:"_blank",rel:"noopener noreferrer",children:["Metrics Documentation ",o.jsx(Pa,{})]})})})]})}function Prs(){const{paths:e}=yn(),{data:t,isLoading:n,error:r}=YLt(),{isCmsAvailable:s}=xI(),[a,i]=v.useState(""),l=t?.promptBlocks??[];return r&&gs(r)?o.jsx(lr,{children:o.jsx(Vs,{})}):r&&ys(r)?o.jsx(lr,{children:o.jsx(Ds,{resource:"prompt blocks"})}):r?o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load prompt blocks",message:r.message})}):l.length===0&&!n?o.jsx(lr,{children:o.jsx(MZr,{})}):o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsxs(Lt.Row,{align:"center",stack:"responsive",children:[o.jsx("div",{className:"max-w-120 flex-1",children:o.jsx(Of,{onSearch:i,label:"Filter prompts",placeholder:"Filter by name or description"})}),s&&o.jsxs(de,{as:ci,to:e.cmsPromptBlockCreateLink(),variant:"primary",className:"shrink-0",children:[o.jsx(Fr,{}),"Create Prompt"]})]})}),o.jsx($Zr,{promptBlocks:l,isLoading:n,search:a})]})}function $rs(){return o.jsx(Lt,{width:"narrow",children:o.jsx(Lt.MainArea,{children:o.jsx(Vzr,{children:o.jsx(ave,{})})})})}const Mrs=[{title:"Mastra APIs",description:"Explore and test the available REST API endpoints with the interactive Swagger UI.",icon:Icn,href:"/swagger-ui",external:!1},{title:"Documentation",description:"Read the official Mastra documentation for guides, references, and tutorials.",icon:Slt,href:"https://mastra.ai/en/docs",external:!0},{title:"Github",description:"Browse the source code, report issues, and contribute to the Mastra project.",icon:Pa,href:"https://github.com/mastra-ai/mastra",external:!0},{title:"Community",description:"Join the Mastra Discord community for help, discussion, and collaboration.",icon:Hj,href:"https://discord.gg/BTYqqHKUrf",external:!0},{title:"Share with your team",description:"Running Mastra Studio locally? Deploy to the cloud so your team can collaborate.",icon:Nlt,href:"https://mastra.ai/cloud",external:!0},{title:"Talk to our Sales team",description:"Get a custom demo, discuss on-prem deployments, and how we can help you accelerate getting agents into production.",icon:klt,href:"https://mastra.ai/contact?ref=studio",external:!0}];function Drs(){return o.jsx(Lt,{width:"narrow",children:o.jsx(Lt.MainArea,{children:o.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4 max-w-3xl",children:Mrs.map(e=>o.jsxs("a",{href:e.href,...e.external?{target:"_blank",rel:"noreferrer"}:{},className:"group flex flex-col gap-3 rounded-lg border border-border1 bg-surface2 p-5 transition-colors hover:border-accent1 hover:bg-surface3",children:[o.jsxs("div",{className:"flex items-center gap-2.5",children:[o.jsx(e.icon,{className:"h-5 w-5 text-icon3 group-hover:text-accent1 transition-colors"}),o.jsx("span",{className:"text-ui-md font-medium text-text1",children:e.title}),e.external&&o.jsx(Pa,{className:"h-3.5 w-3.5 text-icon3 ml-auto opacity-0 group-hover:opacity-100 transition-opacity"})]}),o.jsx("p",{className:"text-ui-sm text-text3 leading-relaxed",children:e.description})]},e.href))})})})}function Lrs(){const{data:e={},isLoading:t,error:n}=th(),[r,s]=v.useState(""),[a,i]=v.useState("all");if(n&&gs(n))return o.jsx(lr,{children:o.jsx(Vs,{})});if(n&&ys(n))return o.jsx(lr,{children:o.jsx(Ds,{resource:"scorers"})});if(n)return o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load scorers",message:n.message})});if(Object.keys(e).length===0&&!t)return o.jsx(lr,{children:o.jsx(UHr,{})});const l=a!=="all"||r!=="",c=()=>{s(""),i("all")};return o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsx(YHr,{search:r,onSearchChange:s,sourceFilter:a,onSourceFilterChange:i,onReset:c,hasActiveFilters:l})}),o.jsx(BHr,{scorers:e,isLoading:t,search:r,sourceFilter:a})]})}function Frs(){const{scorerId:e}=dr(),[t,n]=ji(),r=t.get("scoreId")??void 0,[s,a]=v.useState(r),[i,l]=v.useState({value:"all",label:"All Entities",type:"ALL"}),{scorer:c,error:u}=yHr(e),{data:d={},isLoading:f,error:p}=Sm(),{isLoading:h,error:m}=By(),{data:g=[],isLoading:y,error:b,isFetchingNextPage:w,hasNextPage:S,setEndOfListElement:k}=vHr({scorerId:e,entityId:i?.value==="all"?void 0:i?.value,entityType:i?.type==="ALL"?void 0:i?.type}),_=v.useMemo(()=>c?.agentIds?.filter(z=>d[z]).map(z=>({value:z,label:d[z].name,type:"AGENT"}))||[],[c?.agentIds,d]),C=v.useMemo(()=>c?.workflowIds?.map(z=>({value:z,label:z,type:"WORKFLOW"}))||[],[c?.workflowIds]),E=v.useMemo(()=>[{value:"all",label:"All Entities",type:"ALL"},..._,...C],[_,C]),j=t.get("entity")??"all",N=E.find(z=>z.value===j);N&&N.value!==i?.value&&l(N),v.useEffect(()=>{if(u){const z=u instanceof Error?u.message:"Failed to load scorer";De.error(`Error loading scorer: ${z}`)}},[u]),v.useEffect(()=>{if(p){const z=p instanceof Error?p.message:"Failed to load agents";De.error(`Error loading agents: ${z}`)}},[p]),v.useEffect(()=>{if(m){const z=m instanceof Error?m.message:"Failed to load workflows";De.error(`Error loading workflows: ${z}`)}},[m]);const I=z=>{z?.value&&n(M=>{const G=new URLSearchParams(M);return G.set("entity",z.value),G})};v.useEffect(()=>{const z=t.get("scoreId")??void 0;if(z===s)return;if(!z){a(void 0);return}g.find(G=>G.id===z)&&a(z)},[t,g]);const P=v.useCallback(z=>{a(z||void 0),n(M=>{const G=new URLSearchParams(M);return z?G.set("scoreId",z):G.delete("scoreId"),G})},[n]);if(!c)return null;const $=gs(u)||gs(p)||gs(m),F=u&&ys(u),D=!$&&!F&&(u||p||m),V=!y&&g.length===0,W=i?.value!=="all",L=c?.scorer?.source==="stored"?o.jsx(Ty,{owner:"scorer-detail",children:o.jsxs(de,{variant:"default",as:ci,to:`/cms/scorers/${e}/edit`,size:"sm",children:[o.jsx(tm,{})," Edit"]})}):null;if($||F||D||V&&!W){const z=(u instanceof Error?u.message:void 0)??(p instanceof Error?p.message:void 0)??(m instanceof Error?m.message:void 0)??"An unexpected error occurred";return o.jsxs(Lt,{width:"wide",height:"full",children:[L,o.jsx(Lt.MainArea,{isCentered:!0,children:$?o.jsx(Vs,{}):F?o.jsx(Ds,{resource:"scorers"}):D?o.jsx(Fi,{title:"Failed to load scorer",message:z}):o.jsx(fHr,{})})]})}return o.jsxs(Lt,{width:"wide",children:[L,o.jsx(Lt.TopArea,{children:o.jsx(pHr,{selectedEntity:i,entityOptions:E,onEntityChange:I,onReset:()=>{n(z=>{const M=new URLSearchParams(z);return M.set("entity","all"),M})},isLoading:y||f||h})}),o.jsx(dHr,{scores:g,isLoading:y,selectedScoreId:s,isFetchingNextPage:w,hasNextPage:S,setEndOfListElement:k,onScoreClick:P,errorMsg:b?.message})]})}function zrs({label:e,description:t,htmlFor:n,className:r,children:s}){return o.jsxs("div",{className:K("flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",r),"data-slot":"settings-row",children:[o.jsxs("div",{children:[n?o.jsx(Rt,{htmlFor:n,className:"text-sm font-medium",children:e}):o.jsx("p",{className:"text-sm font-medium",children:e}),t&&o.jsx("p",{className:"text-sm text-neutral3",children:t})]}),s]})}const R8t=[{value:"dark",label:"Dark",Icon:idn},{value:"light",label:"Light",Icon:mfn},{value:"system",label:"System",Icon:zlt}],Brs=e=>R8t.some(t=>t.value===e);function Urs({option:e}){const{Icon:t}=e;return o.jsxs("span",{className:"inline-flex min-w-0 max-w-full items-center gap-2",children:[o.jsx(t,{"aria-hidden":"true",className:"h-4 w-4 shrink-0 opacity-70"}),o.jsx("span",{className:"min-w-0 truncate",children:e.label})]})}const qrs=()=>{const{baseUrl:e,headers:t,apiPrefix:n}=Dxe(),{theme:r,setTheme:s}=TN();return o.jsx(Lt,{width:"narrow",children:o.jsxs(Lt.MainArea,{className:"flex flex-col gap-5 mt-6",children:[o.jsx(zge,{title:"Theme",description:"Customize the appearance of the studio.",children:o.jsx(zrs,{label:"Theme mode",htmlFor:"theme",children:o.jsxs(xa,{value:r,onValueChange:a=>{Brs(a)&&s(a)},children:[o.jsx(Sa,{id:"theme",className:"w-full sm:w-48",children:o.jsx(wa,{className:"inline-flex min-w-0 max-w-full items-center"})}),o.jsx(ka,{children:R8t.map(a=>o.jsx(qr,{value:a.value,children:o.jsx(Urs,{option:a})},a.value))})]})})}),o.jsx(zge,{title:"Mastra Connection",description:"Configure the Mastra instance URL, API prefix, and request headers used by the studio.",children:o.jsx(vLt,{initialConfig:{baseUrl:e,headers:t,apiPrefix:n}})})]})})};function Vrs(){const[e]=ji(),t=bs(),n=e.get("redirect")||"/",r=()=>{n.startsWith("http")?window.location.href=n:t(n,{replace:!0})};return o.jsx(j8t,{redirectUri:n,onSuccess:r,initialMode:"signup"})}const P8t=e=>o.jsxs("svg",{width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[o.jsx("g",{clipPath:"url(#clip0_21999_22095)",children:o.jsx("path",{d:"M7.5 0.75C3.6325 0.75 0.5 3.8825 0.5 7.75C0.5 10.8475 2.50375 13.4637 5.28625 14.3912C5.63625 14.4525 5.7675 14.2425 5.7675 14.0587C5.7675 13.8925 5.75875 13.3412 5.75875 12.755C4 13.0787 3.545 12.3262 3.405 11.9325C3.32625 11.7312 2.985 11.11 2.6875 10.9437C2.4425 10.8125 2.0925 10.4887 2.67875 10.48C3.23 10.4712 3.62375 10.9875 3.755 11.1975C4.385 12.2562 5.39125 11.9587 5.79375 11.775C5.855 11.32 6.03875 11.0137 6.24 10.8387C4.6825 10.6637 3.055 10.06 3.055 7.3825C3.055 6.62125 3.32625 5.99125 3.7725 5.50125C3.7025 5.32625 3.4575 4.60875 3.8425 3.64625C3.8425 3.64625 4.42875 3.4625 5.7675 4.36375C6.3275 4.20625 6.9225 4.1275 7.5175 4.1275C8.1125 4.1275 8.7075 4.20625 9.2675 4.36375C10.6062 3.45375 11.1925 3.64625 11.1925 3.64625C11.5775 4.60875 11.3325 5.32625 11.2625 5.50125C11.7087 5.99125 11.98 6.6125 11.98 7.3825C11.98 10.0687 10.3438 10.6637 8.78625 10.8387C9.04 11.0575 9.25875 11.4775 9.25875 12.1337C9.25875 13.07 9.25 13.8225 9.25 14.0587C9.25 14.2425 9.38125 14.4612 9.73125 14.3912C11.1209 13.9221 12.3284 13.029 13.1839 11.8377C14.0393 10.6463 14.4996 9.21668 14.5 7.75C14.5 3.8825 11.3675 0.75 7.5 0.75Z",fill:"currentColor"})}),o.jsx("defs",{children:o.jsx("clipPath",{id:"clip0_21999_22095",children:o.jsx("rect",{width:"14",height:"14",fill:"currentColor",transform:"translate(0.5 0.75)"})})})]});function Hrs(e){return e.replace(/\/$/,"").split("/").pop()}function ZZ({children:e,className:t}){return o.jsx("div",{className:K("border border-border1 rounded-lg mt-12 py-8 lg:min-h-[25rem] transition-height px-4 lg:px-12",t),children:e})}function Wrs({templates:e,linkComponent:t,className:n,isLoading:r}){const s=t||"a";return r?o.jsx("div",{className:K("grid gap-y-4",n),children:Array.from({length:5}).map((a,i)=>o.jsx("div",{className:"h-16 bg-surface3 animate-pulse rounded-lg"},i))}):o.jsx("div",{className:K("grid gap-y-4",n),children:e.map(a=>{const i=a?.agents||a?.tools||a?.networks||a?.workflows||a?.mcp;return o.jsxs("article",{className:K("border border-border1 rounded-lg overflow-hidden w-full grid grid-cols-[1fr_auto] bg-surface3 transition-colors hover:bg-surface4"),children:[o.jsxs(s,{to:`/templates/${a.slug}`,className:K("grid [&:hover_p]:text-neutral5",{"grid-cols-[8rem_1fr] lg:grid-cols-[12rem_1fr]":a.imageURL}),children:[a.imageURL&&o.jsx("div",{className:K("overflow-hidden"),children:o.jsx("div",{className:"w-full h-full bg-cover thumb transition-scale duration-150",style:{backgroundImage:`url(${a.imageURL})`}})}),o.jsxs("div",{className:K("grid py-3 px-6 w-full gap-0.5","[&_svg]:w-[1em] [&_svg]:h-[1em] [&_svg]:text-neutral3"),children:[o.jsx("h2",{className:"text-ui-lg text-neutral5",children:a.title}),o.jsx("p",{className:"text-ui-md text-neutral4 transition-colors duration-500",children:a.description}),o.jsxs("div",{className:"hidden 2xl:flex text-neutral3 text-ui-md flex-wrap items-center gap-4 mt-3",children:[i&&o.jsxs("ul",{className:K("flex gap-4 text-ui-md text-neutral3 m-0 p-0 list-none","[&>li]:flex [&>li]:items-center [&>li]:gap-0.5 text-neutral4"),children:[a?.agents&&a.agents.length>0&&o.jsxs("li",{children:[o.jsx(rl,{})," ",a.agents.length]}),a?.tools&&a.tools.length>0&&o.jsxs("li",{children:[o.jsx(Qp,{})," ",a.tools.length]}),a?.networks&&a.networks.length>0&&o.jsxs("li",{children:[o.jsx(Blt,{})," ",a.networks.length]}),a?.workflows&&a.workflows.length>0&&o.jsxs("li",{children:[o.jsx(iq,{})," ",a.workflows.length]}),a?.mcp&&a.mcp.length>0&&o.jsxs("li",{children:[o.jsx(D_,{})," ",a.mcp.length]})]}),i&&a.supportedProviders&&o.jsx("small",{children:"|"}),o.jsx("div",{className:"flex items-center text-neutral3 gap-4",children:a.supportedProviders.map(l=>o.jsx("span",{className:"",children:l},l))})]})]})]}),o.jsx("a",{href:a.githubUrl,className:K("group items-center gap-2 text-ui-md ml-auto pr-4 hidden","lg:flex"),target:"_blank",rel:"noopener noreferrer",children:o.jsxs("span",{className:"flex items-center gap-2 px-2 py-1 rounded bg-surface1 group-hover:bg-surface2 text-neutral3 transition-colors group-hover:text-neutral5",children:[o.jsx(P8t,{})," ",Hrs(a.githubUrl)]})})]},a.slug)})})}function Zrs({tagOptions:e,selectedTag:t,providerOptions:n,selectedProvider:r,onTagChange:s,onProviderChange:a,searchTerm:i,onSearchChange:l,onReset:c,className:u,isLoading:d}){return d?o.jsxs("div",{className:K("h-[6.5rem] flex items-center gap-8","[&>div]:bg-surface3 [&>div]:w-48 [&>div]:h-8 [&>div]:animate-pulse",u),children:[o.jsx("div",{})," ",o.jsx("div",{})," ",o.jsx("div",{})]}):o.jsxs("div",{className:K("flex flex-wrap mx-auto sticky top-0 gap-4 bg-surface2 py-8",u),children:[o.jsx(DT,{name:"search-templates",label:"Search templates",labelIsHidden:!0,value:i,onChange:f=>l?.(f.target.value),placeholder:"Search Template"}),o.jsx(xc,{label:"Filter by tag",labelIsHidden:!0,name:"filter-tag",value:t,onValueChange:s,options:e}),o.jsx(xc,{label:"Filter by provider",labelIsHidden:!0,name:"filter-provider",value:r,onValueChange:a,options:n}),c&&o.jsxs(de,{onClick:c,children:["Reset ",o.jsx(vs,{})]})]})}function Grs(){const{data:e,isLoading:t}=tYn(),{templates:n,tags:r,providers:s}=e??{templates:[],tags:[],providers:[]},[a,i]=v.useState("all"),[l,c]=v.useState("all"),[u,d]=v.useState(""),f=[{value:"all",label:"Any tag"}];(r||[]).forEach(w=>{f.push({value:w,label:w})});const p=[{value:"all",label:"Any provider"}];(s||[]).forEach(w=>{p.push({value:w,label:w})});const h=(w,S)=>{S==="tag"?i(w):S==="provider"&&c(w)},m=w=>{d(w)},g=()=>{i("all"),c("all"),d("")},y=n.filter(w=>!(u&&!w.title.toLowerCase().includes(u)&&!w.description.toLowerCase().includes(u)||a!=="all"&&!w.tags.includes(a)||l!=="all"&&!w.supportedProviders.includes(l))),b=u||a!=="all"||l!=="all";return o.jsxs(cs,{children:[o.jsx(Gxe,{children:o.jsxs(Npt,{children:[o.jsx(Ue,{children:o.jsx(Hv,{})}),"Templates"]})}),o.jsxs("div",{className:K("overflow-y-auto w-full h-full px-8 pb-12 z-10"),children:[o.jsx(Zrs,{selectedTag:a,onTagChange:w=>h(w,"tag"),tagOptions:f,selectedProvider:l,onProviderChange:w=>h(w,"provider"),providerOptions:p,searchTerm:u,onSearchChange:m,onReset:b?g:void 0,className:"max-w-[80rem]",isLoading:t}),o.jsx(Wrs,{templates:y,linkComponent:ci,className:"max-w-[80rem] mx-auto",isLoading:t})]})]})}const Qrs="1.49.0-alpha.2";function Yrs({errorMsg:e,validationErrors:t}){const n=typeof e=="string"?e:e!=null?String(e):void 0,r=n?.includes("Invalid schema for function"),s=n?.includes("validation issue")||t&&t.length>0,a=()=>s?"Template installation completed but some validation issues remain. The template may still be functional, but you should review and fix these issues.":r?"There was an issue with the AI model configuration. This may be related to the selected model or AI SDK version compatibility.":"An unexpected error occurred during template installation.",i=()=>s?{icon:o.jsx(kp,{className:"text-yellow-500"}),title:"Template Installed with Warnings"}:{icon:o.jsx(iun,{}),title:"Template Installation Failed"},{icon:l,title:c}=i();return o.jsxs(ZZ,{className:"space-y-4 text-neutral3 mb-8 content-center",children:[o.jsxs("div",{className:K("grid items-center justify-items-center gap-4 content-center","[&>svg]:w-8 [&>svg]:h-8"),children:[l,o.jsxs("div",{className:"text-center space-y-2",children:[o.jsx("p",{className:"text-ui-md font-medium text-neutral5",children:c}),o.jsx("p",{className:"text-ui-md text-neutral3",children:a()})]})]}),t&&t.length>0&&o.jsxs("details",{className:"text-xs",children:[o.jsxs("summary",{className:"cursor-pointer text-neutral3 hover:text-neutral4 select-none text-center",children:["Show Validation Issues (",t.length,")"]}),o.jsx("div",{className:"mt-4 p-3 bg-gray-100 dark:bg-gray-800 rounded text-xs overflow-auto max-h-60 text-left space-y-2",children:t.map((u,d)=>o.jsxs("div",{className:"border-l-2 border-red-400 pl-2",children:[o.jsx("div",{className:"font-medium text-red-600 dark:text-red-400",children:u.type==="typescript"?"🔴 TypeScript Error":"⚠️ Lint Error"}),o.jsx("div",{className:"text-xs font-mono text-gray-700 dark:text-gray-300 mt-1 whitespace-pre-wrap wrap-break-word",children:u.message})]},d))})]}),n&&!s&&o.jsxs("details",{className:"text-xs",children:[o.jsx("summary",{className:"cursor-pointer text-neutral3 hover:text-neutral4 select-none text-center",children:"Show Details"}),o.jsx("div",{className:"mt-4 p-3 bg-gray-100 dark:bg-gray-800 rounded text-xs font-mono overflow-auto max-h-60 text-left",children:o.jsx("div",{className:"whitespace-pre-wrap wrap-break-word",children:n})})]})]})}function Xrs({providerOptions:e,selectedProvider:t,onProviderChange:n,variables:r,errors:s,handleInstallTemplate:a,handleVariableChange:i,isLoadingEnvVars:l,isInstalling:c,defaultModelProvider:u,defaultModelId:d,onModelUpdate:f}){return o.jsx(ZZ,{children:o.jsxs("div",{className:"max-w-[40rem] my-4 p-4 lg:p-8 mx-auto gap-8 grid",children:[o.jsxs("h2",{className:K("text-neutral4 text-header-sm font-semibold flex items-center gap-2","[&>svg]:w-[1.2em] [&_svg]:h-[1.2em] [&_svg]:opacity-70"),children:["Install Template ",o.jsx(Ult,{})]}),o.jsx(xc,{name:"template-provider",options:e,label:"Template AI Model Provider",onValueChange:n,value:t,placeholder:"Select",layout:"horizontal"}),t&&Object.entries(r||{}).length>0&&o.jsxs(o.Fragment,{children:[o.jsx("h3",{className:"text-neutral3 text-ui-md",children:"Set required Environmental Variables"}),o.jsx("div",{className:"grid grid-cols-[1fr_1fr] gap-4 items-start",children:l?o.jsxs("div",{className:K("flex items-center justify-center col-span-2 text-neutral3 text-ui-sm gap-4","[&_svg]:opacity-50 [&_svg]:w-[1.1em] [&_svg]:h-[1.1em]","animate-in fade-in duration-300"),children:[o.jsx(Qt,{})," Loading variables..."]}):Object.entries(r).map(([p,h])=>o.jsxs(v.Fragment,{children:[o.jsx(fO,{name:`env-${p}`,labelIsHidden:!0,label:"Key",value:p,disabled:!0,className:"w-full"}),o.jsx(fO,{name:p,labelIsHidden:!0,label:"Value",value:h,onChange:i,errorMsg:s.includes(p)?"Value is required.":"",autoComplete:"off",className:"w-full"})]},p))}),o.jsxs("div",{className:"border-t border-border1 pt-12 mt-3.5 relative",children:[o.jsx("div",{className:"absolute w-8 h-8 rounded-full bg-surface2 top-0 left-1/2 -translate-x-1/2 -translate-y-4 text-ui-sm text-neutral3 flex items-center justify-center",children:"And"}),o.jsx("h3",{className:"text-neutral4 text-ui-lg",children:"Set AI Model for Template Installation"}),o.jsx("p",{className:"text-neutral3 text-ui-md mt-2 mb-8",children:"This model will be used by the workflow to process and install the template"}),o.jsx(gLt,{defaultProvider:u||"",defaultModel:d||"",updateModel:f||(()=>Promise.resolve({message:"Updated"})),closeEditor:()=>{},autoSave:!0,selectProviderPlaceholder:"Provider"})]})]}),t&&!l&&o.jsx(de,{className:K("flex items-center gap-2 mt-4 justify-center text-ui-md w-full bg-surface5 min-h-10 rounded-lg text-neutral5 hover:bg-surface6 transition-colors","[&>svg]:w-[1.1em] [&_svg]:h-[1.1em] [&_svg]:text-neutral5"),onClick:a,disabled:!t||!u||!d||s.length>0||c,children:c?o.jsxs(o.Fragment,{children:[o.jsx(Qt,{className:"w-4 h-4"})," Installing..."]}):o.jsxs(o.Fragment,{children:["Install ",o.jsx(hm,{})]})})]})})}function Krs({title:e,description:t,githubUrl:n,isLoading:r,infoData:s,templateSlug:a}){const i=a?`feat/install-template-${a}`:"feat/install-template-[slug]";return o.jsxs(o.Fragment,{children:[o.jsx("div",{className:K("grid mt-8 items-center"),children:o.jsxs("div",{className:K("text-header-lg flex items-center gap-3","[&>svg]:w-[1.2em] [&>svg]:h-[1.2em] [&>svg]:opacity-50",{"[&>svg]:opacity-20":r}),children:[o.jsx(Hv,{}),o.jsx("h2",{className:K({"bg-surface4 flex rounded-lg min-w-[50%]":r}),children:r?o.jsx(o.Fragment,{children:" "}):e})]})}),o.jsxs("div",{className:"grid lg:grid-cols-[1fr_1fr] gap-x-24",children:[o.jsxs("div",{className:"grid",children:[o.jsx("p",{className:K("mb-4 text-ui-md text-neutral4 mt-2 leading-7",{"bg-surface4 rounded-lg ":r}),children:r?o.jsx(o.Fragment,{children:" "}):t}),!r&&a&&o.jsxs("div",{className:K("bg-surface2 border border-surface4 rounded-lg p-4 mb-4","flex items-start gap-3"),children:[o.jsx("div",{className:"shrink-0 mt-0.5",children:o.jsx(Mx,{className:"w-[1.1em] h-[1.1em] text-blue-500"})}),o.jsxs("div",{className:"flex-1 space-y-2",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(Qye,{className:"w-[1em] h-[1em] text-neutral4"}),o.jsx("span",{className:"text-ui-md font-medium text-neutral5",children:"A new Git branch will be created"})]}),o.jsxs("div",{className:"text-ui-sm text-neutral4 space-y-1",children:[o.jsxs("div",{children:[o.jsx("span",{className:"font-medium",children:"Branch name:"})," ",o.jsx("code",{className:"bg-surface3 px-1.5 py-0.5 rounded text-ui-sm font-mono",children:i})]}),o.jsx("div",{children:"This ensures safe installation with easy rollback if needed. Your main branch remains unchanged."})]})]})]}),n&&o.jsxs("a",{href:n,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-2 mt-auto text-neutral3 text-ui-md hover:text-neutral5",children:[o.jsx(P8t,{}),n?.split("/")?.pop()]})]}),s&&o.jsx(zje,{data:s,labelsAreHidden:!0,isLoading:r})]})]})}function Jrs(e){switch(e){case"running":return o.jsx(Qt,{});case"success":return o.jsx(hx,{});case"failed":return o.jsx(Pu,{});default:return null}}function ess({stepId:e,step:t,isActive:n,position:r}){const s=a=>a.charAt(0).toUpperCase()+a.slice(1).replace(/-/g," ");return o.jsxs("div",{className:K("grid gap-6 grid-cols-[1fr_auto] py-3 px-4 rounded-lg",is.all,{"border border-dashed border-neutral2 bg-surface3":n}),children:[o.jsxs("div",{className:"grid grid-cols-[auto_1fr] gap-2",children:[o.jsxs("span",{className:K("text-ui-md min-w-6 flex justify-end",is.colors,{"text-neutral5":n||t.status==="success","text-neutral3":!n&&t.status!=="success"}),children:[r,"."]}),o.jsxs("div",{children:[o.jsx("h4",{className:K("text-ui-md",is.colors,{"text-neutral5":n||t.status==="success","text-neutral3":!n&&t.status!=="success"}),children:s(e)}),t.description&&o.jsx("p",{className:"text-ui-md text-neutral2 -mt-0.5",children:t.description})]})]}),o.jsx("div",{className:K("w-[1.75rem] h-[1.75rem] rounded-full flex items-center justify-center self-center",is.all,{"border border-neutral2 border-dashed":t.status==="pending","[&>svg]:text-white [&>svg]:w-4 [&>svg]:h-4":t.status!=="running","w-[1.75rem] h-[1.75rem]":t.status==="running","bg-accent1Dark shadow-glow-accent1":t.status==="success","bg-accent2Dark shadow-glow-accent2":t.status==="failed","scale-110":t.status==="success"||t.status==="failed"}),children:Jrs(t.status)})]})}function tss({currentStep:e,steps:t=[],className:n}){return o.jsx("div",{className:K(n),children:t.map((r,s)=>o.jsx(ess,{stepId:r.id,step:r,isActive:e?.id===r.id,position:s+1},r.id))})}function nss({steps:e}){const t=e.length,n=e.filter(r=>r.status==="success").length;return o.jsxs("div",{className:"flex justify-center flex-col gap-4 content-center w-full",children:[o.jsx("div",{className:"grid grid-cols-[0_repeat(9,1fr)] w-full",children:e.map((r,s)=>o.jsx("div",{className:K("flex justify-end items-center relative h-[2rem]",is.colors,{"bg-accent1Dark":r.status==="success"&&e?.[s-1]?.status==="success"}),children:o.jsx("div",{className:K("w-[2rem] h-[2rem] rounded-full flex items-center justify-center self-center absolute right-0 translate-x-[50%] bg-surface3 z-10 text-neutral3 font-bold text-ui-sm",is.all,{"border border-neutral2 border-dashed":r.status==="pending","[&>svg]:text-surface1 [&>svg]:w-[1.1rem] [&>svg]:h-[1.1rem]":r.status!=="running","bg-accent1Dark text-white shadow-glow-accent1 scale-110":r.status==="success","bg-accent2Dark text-white shadow-glow-accent2 scale-110":r.status==="failed"}),children:r.status==="running"?o.jsx(Qt,{}):s+1})},r.id))}),o.jsxs("div",{className:K("text-xs text-neutral3 text-center",is.colors),children:[n," of ",t," steps completed"]})]})}function rss({name:e,streamResult:t,runId:n,workflowInfo:r}){const s=t?.phase||"initializing",a=t?.payload?.workflowState,i=t?.payload?.currentStep,l=t?.error,c=a?.steps||{},u=Object.keys(c).length>0,d=g=>g==="input"||g.endsWith(".input")||g.startsWith("Mapping_")&&/[0-9a-f]{8}/.test(g)||/[0-9a-f]{8,}/.test(g)?!1:r?.allSteps?g in r.allSteps:!0,f=Object.entries(c).filter(([g,y])=>d(g)),p=f.length,h=()=>{switch(s){case"initializing":return"Preparing template installation...";case"processing":return`Installing ${e} template`;case"completed":return"Template installation completed!";case"error":return"Template installation failed";default:return"Installing template..."}},m=f.map(([g,y])=>({id:g,status:y?.status,description:y?.description,title:g.charAt(0).toUpperCase()+g.slice(1).replace(/-/g," "),isActive:i?.id===g}));return o.jsxs(ZZ,{className:"space-y-6 text-neutral3 mb-8 content-center",children:[o.jsxs("div",{className:"text-center",children:[o.jsx("h3",{className:"text-lg font-semibold text-neutral5",children:h()}),(t?.runId||n)&&o.jsxs("div",{className:"mt-2 text-ui-sm text-neutral3",children:["Run ID: ",t?.runId??n]})]}),u&&p>0&&!["error"].includes(s)&&o.jsx("div",{className:"max-w-[30rem] w-full mx-auto px-6",children:o.jsx(nss,{steps:m})}),l&&s==="error"&&o.jsxs("div",{className:K("rounded-lg text-neutral5 p-6 flex items-center gap-3 text-ui-md bg-red-500/10","[&>svg]:w-6 [&>svg]:h-6 [&>svg]:opacity-70 [&>svg]:text-red-500"),children:[o.jsx(gdn,{}),l||"Something went wrong"]}),u&&o.jsx(tss,{steps:m,currentStep:i,className:"pb-4"}),!u&&s==="initializing"&&o.jsxs("div",{className:"text-center text-sm text-neutral3 grid gap-4 justify-items-center",children:[o.jsx(Qt,{}),o.jsx("p",{children:"This may take some time..."})]})]})}function sss({name:e,installedEntities:t}){return o.jsxs(ZZ,{className:K("grid items-center justify-items-center gap-4 content-center","[&>svg]:w-8 [&>svg]:h-8"),children:[o.jsx(Ult,{}),o.jsx("h2",{className:"text-header-md",children:"Done!"}),o.jsxs("p",{className:"text-ui-md text-center text-neutral3 ",children:["The ",o.jsx("b",{className:"text-neutral4",children:e})," template has been successfully installed.",t&&t.length>0&&o.jsxs(o.Fragment,{children:[o.jsx("br",{})," Installed entities are listed below."]})]}),t&&t.length>0&&o.jsx(zje,{data:t})]})}function ass(){const{templateSlug:e}=dr(),[t,n]=ji(),[r,s]=v.useState(""),[a,i]=v.useState(""),[l,c]=v.useState(""),[u,d]=v.useState({}),[f,p]=v.useState([]),[h,m]=v.useState(null),[g,y]=v.useState(!1),[b,w]=v.useState(""),[S,k]=v.useState(!1),[_,C]=v.useState(!1),[E,j]=v.useState([]),{data:N,isLoading:I}=nYn({repoOrSlug:e,owner:"mastra-ai"}),$=Qrs?.includes("beta")??!1?"beta":"main",{data:F,isLoading:D}=rYn({repo:N?.githubUrl?new URL(N.githubUrl).pathname.split("/")[2]:`template-${e}`,owner:"mastra-ai",branch:$}),{data:V,isLoading:W}=sYn(),{mutateAsync:L,isPending:B}=aYn(),{mutateAsync:z}=iYn(),{streamInstall:M,streamResult:G,isStreaming:q}=lYn(V),{observeInstall:R,streamResult:U,isStreaming:Z}=cYn(V);v.useEffect(()=>{const ne=t.get("runId");ne&&!g&&!h&&!q&&!Z&&(console.info("🔄 Checking completed run after hot reload:",{runId:ne}),w(ne),z({runId:ne}).then(ue=>{const pe=ue.snapshot;if(pe?.status==="success"&&pe?.result?.success)y(!0);else if(pe?.result?.success===!1)if(pe?.result?.validationResults&&!pe?.result?.validationResults?.valid&&pe?.result?.validationResults?.remainingErrors>0){const{remainingErrors:ve,errors:ye}=pe.result.validationResults,Se=`Template installation completed but ${ve} validation issue${ve>1?"s":""} remain unresolved.`;m(Se),j(ye||[])}else{const ve=pe?.result?.message||pe?.result?.error||"Template installation failed";m(typeof ve=="string"?ve:String(ve))}}).catch(ue=>{console.error("❌ Failed to fetch run details:",ue),m("Failed to retrieve installation status after reload")}))},[t,g,h,q,Z,z]),v.useEffect(()=>{const ne=t.get("runId"),ue=t.get("resume"),pe=t.get("provider");if(ne&&ue==="true"&&pe&&!q&&!Z&&!S&&!_&&V){w(ne),k(!0);try{z({runId:ne}).then(le=>{if(le.snapshot?.status==="running")return R.mutateAsync({runId:ne})}).then(()=>{n(le=>{const ve=new URLSearchParams(le);return ve.delete("resume"),ve})}).catch(le=>{console.error("❌ Failed to resume template installation:",le),le.message?.includes("404")||le.message?.includes("not found")?m("Template installation run not found. It may have expired or been completed."):m("Failed to resume template installation. Please try again.")})}catch(le){console.error("❌ Auto-resume failed with error:",le),m("Failed to resume template installation. Please refresh and try again.")}}},[t,e,q,Z,S,_,V,z,R,n]);const X=[{value:"openai",label:"OpenAI"},{value:"anthropic",label:"Anthropic"},{value:"groq",label:"Groq"},{value:"google",label:"Google"}],te=[{key:"tools",label:"Tools",value:N?.tools?.length?N.tools.map(ne=>ne).join(", "):"n/a",icon:o.jsx(Qp,{})},{key:"agents",label:"Agents",value:N?.agents?.length?N.agents.map(ne=>ne).join(", "):"n/a",icon:o.jsx(rl,{})},{key:"workflows",label:"Workflows",value:N?.workflows?.length?N.workflows.map(ne=>ne).join(", "):"n/a",icon:o.jsx(iq,{})},{key:"providers",label:"Providers",value:N?.supportedProviders?.length?N.supportedProviders.join(", "):"n/a",icon:o.jsx(Iv,{})},{key:"tags",label:"Tags",value:N?.tags?.length?N.tags.join(", "):"n/a",icon:o.jsx(gN,{})}],J=[{...te[0]},{...te[1]},{...te[2]}].filter(ne=>ne.value!=="n/a");v.useEffect(()=>{F&&d(F)},[F]),v.useEffect(()=>{const ne=G||U;ne?.phase==="error"&&ne?.error&&m(typeof ne.error=="string"?ne.error:String(ne.error))},[G?.phase,G?.error,U?.phase,U?.error]);const ee=ne=>{s(ne)},ae=async ne=>(i(ne.provider),c(ne.modelId),{message:"Model updated successfully"}),ce=async()=>{const ne=Object.entries(u).reduce((ue,[pe,le])=>(le===""&&ue.push(pe),ue),[]);if(ne.length>0){p(ne);return}if(N){m(null),y(!1),w(""),C(!0);try{const pe={repo:N.githubUrl||`https://github.com/mastra-ai/template-${N.slug}`,ref:$,slug:N.slug,variables:u},{runId:le}=await L({});w(le),n(ve=>{const ye=new URLSearchParams(ve);return ye.set("runId",le),ye.set("resume","true"),ye.set("provider",r||"openai"),ye}),await M.mutateAsync({inputData:pe,selectedModel:{provider:a,modelId:l},runId:le})}catch(ue){C(!1),m(ue?.message||"Template installation failed"),console.error("Template installation failed",ue)}}},Y=ne=>{const{name:ue,value:pe}=ne.target;pe.trim()===""?p(le=>[...le,ue]):p(le=>le.filter(ve=>ve!==ue)),d(le=>({...le,[ue]:pe}))};return o.jsx(cs,{children:o.jsx("div",{className:K("w-full lg:px-12 h-full overflow-y-scroll"),children:o.jsxs("div",{className:"p-6 w-full max-w-[80rem] mx-auto grid gap-y-4",children:[o.jsx(Krs,{isLoading:I,title:N?.title,description:N?.longDescription,imageURL:N?.imageURL,githubUrl:N?.githubUrl,infoData:te,templateSlug:e}),N&&o.jsxs(o.Fragment,{children:[(q||Z)&&o.jsx(rss,{name:N.title,streamResult:Z?U:G,runId:b,workflowInfo:V}),g&&o.jsx(sss,{name:N.title,installedEntities:J,linkComponent:ci}),h&&o.jsx(Yrs,{errorMsg:h,validationErrors:E.length>0?E:G?.validationResults?.errors||U?.validationResults?.errors}),!q&&!Z&&!g&&!h&&o.jsx(Xrs,{providerOptions:X,selectedProvider:r,onProviderChange:ee,variables:u,setVariables:d,errors:f,setErrors:p,handleInstallTemplate:ce,handleVariableChange:Y,isLoadingEnvVars:D||W,isInstalling:B,defaultModelProvider:a,defaultModelId:l,onModelUpdate:ae})]})]})})})}const iss=()=>{const{toolId:e,agentId:t}=dr();return o.jsx("div",{className:"h-full w-full overflow-y-auto",children:o.jsx(JWr,{toolId:e,agentId:t})})},oss=()=>{const{toolId:e}=dr();return o.jsx("div",{className:"h-full w-full overflow-y-hidden",children:o.jsx(Rns,{toolId:e})})};function lss(){const{traceId:e}=dr(),[t,n]=ji(),r=bs(),s=t.get("spanId")||void 0,a=t.get("tab"),i=a==="scoring"?"scoring":a==="feedback"?"feedback":"details",l=t.get("scoreId")||void 0,[c,u]=v.useState(s??null),[d,f]=v.useState(),[p,h]=v.useState(i),[m,g]=v.useState(0),[y,b]=v.useState(!1),{data:w,isLoading:S,error:k}=XH(e),_=v.useMemo(()=>w?.spans??[],[w?.spans]),C=v.useMemo(()=>_.find(ae=>ae.parentSpanId==null),[_]),{data:E,isLoading:j}=oI(e,c??"");v.useEffect(()=>g(0),[e,c]);const{data:N,isLoading:I}=th(),{data:P,isLoading:$}=VLt({traceId:e,spanId:c??void 0,page:m}),[F,D]=v.useState(0);v.useEffect(()=>D(0),[e,c]);const{data:V,isLoading:W}=v8t({traceId:e,page:F});v.useEffect(()=>{if(l&&P?.scores&&!d){const ae=P.scores.find(ce=>ce.id===l);ae&&f(ae)}},[l,P?.scores,d]);const L=v.useCallback(ae=>{const ce=new URLSearchParams(t);for(const[Y,ne]of Object.entries(ae))ne===null||ne===""?ce.delete(Y):ce.set(Y,ne);n(ce,{replace:!0})},[t,n]),B=v.useCallback(ae=>{const ce=ae??null,Y=ce===c;u(ce),Y||(f(void 0),h("details"),L({spanId:ce,tab:null,scoreId:null}))},[c,L]),z=v.useCallback(()=>{u(null),f(void 0),h("details"),L({spanId:null,tab:null,scoreId:null})},[L]),M=v.useCallback(ae=>{u(ae),f(void 0),h("details"),L({spanId:ae,tab:null,scoreId:null})},[L]),{handlePreviousSpan:G,handleNextSpan:q}=KH(_,c,M),R=v.useCallback(ae=>{const ce=ae;h(ce),f(void 0),L({tab:ce==="details"?null:ce,scoreId:null})},[L]),U=v.useCallback(ae=>{f(ae),L({scoreId:ae.id})},[L]),Z=v.useCallback(()=>{f(void 0),L({scoreId:null})},[L]),X=v.useCallback(()=>{r("/observability")},[r]),te=v.useCallback(()=>{h("scoring"),C&&c!==C.spanId?(u(C.spanId),f(void 0),L({spanId:C.spanId,tab:"scoring",scoreId:null})):L({tab:"scoring"})},[C,c,L]),J=C?o.jsx(Ty,{owner:"trace-detail",children:o.jsxs($r,{children:[o.jsxs(de,{tooltip:"Evaluate Trace","aria-label":"Evaluate Trace",onClick:te,children:[o.jsx(Jln,{}),"Evaluate"]}),o.jsxs(de,{tooltip:"Save as Dataset Item","aria-label":"Save as Dataset Item",onClick:()=>b(!0),children:[o.jsx(fd,{}),"Save"]})]})}):null,ee=C?o.jsx(Lt.Row,{children:o.jsx(Lt.Column,{children:o.jsx(l8t,{rootSpan:C,numOfCol:3})})}):null;return k?o.jsxs(Lt,{height:"full",children:[J,ee&&o.jsx(Lt.TopArea,{children:ee}),o.jsx(Lt.MainArea,{isCentered:!0,children:o.jsx(c8t,{error:k,resource:"traces",errorTitle:"Failed to load trace"})})]}):o.jsxs(Lt,{children:[J,ee&&o.jsx(Lt.TopArea,{children:ee}),o.jsx(f8t,{rootSpanId:C?.spanId,traceId:e,isOpen:y,onClose:()=>b(!1)}),o.jsxs("div",{className:K("grid h-full min-h-0 gap-4 overflow-hidden items-start mt-4",c?"grid-cols-[2fr_3fr]":"grid-cols-[1fr]"),children:[o.jsx(fTe,{traceId:e,spans:_,isLoading:S,onClose:X,onSpanSelect:B,onEvaluateTrace:te,initialSpanId:c,placement:"trace-page",timelineChartWidth:c?"default":"wide"}),c&&!S&&o.jsxs("div",{className:K("grid gap-4 max-h-full min-h-0 overflow-auto",d?"grid-rows-[1fr_1fr]":"grid-rows-[1fr]"),children:[o.jsx(QH,{traceId:e,spanId:c,span:E?.span,isLoading:j,onClose:z,onPrevious:G,onNext:q,activeTab:p,onTabChange:R,feedbackTabBadge:V?.pagination?.total??void 0,feedbackTabSlot:()=>o.jsx(h8t,{feedbackData:V,onPageChange:D,isLoadingFeedbackData:W}),scoringTabBadge:P?.pagination?.total??void 0,scoringTabSlot:({span:ae,traceId:ce,spanId:Y})=>o.jsxs("div",{className:"grid gap-6",children:[o.jsx(g8t,{traceId:ce,isTopLevelSpan:!ae.parentSpanId,spanId:Y,entityType:ae.attributes?.agentId||ae.entityType===Os.AGENT?"Agent":ae.attributes?.workflowId||ae.entityType===Os.WORKFLOW_RUN?"Workflow":void 0,scorers:N,isLoadingScorers:I}),o.jsx(m8t,{scoresData:P,onPageChange:g,isLoadingScoresData:$,onScoreSelect:U})]})}),d&&o.jsx(Fje,{score:d,onClose:Z})]})]})]})}function css(){const{data:e,isLoading:t,error:n}=By(),[r,s]=v.useState("");return n&&gs(n)?o.jsx(lr,{children:o.jsx(Vs,{})}):n&&ys(n)?o.jsx(lr,{children:o.jsx(Ds,{resource:"workflows"})}):n?o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load workflows",message:n.message})}):Object.keys(e||{}).length===0&&!t?o.jsx(lr,{children:o.jsx(gMr,{})}):o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsxs(Lt.Row,{align:"center",stack:"responsive",children:[o.jsx("div",{className:"max-w-120 flex-1",children:o.jsx(Of,{onSearch:s,label:"Filter workflows",placeholder:"Filter by name or description"})}),o.jsxs(de,{as:ci,to:"/workflows/schedules",variant:"primary",className:"shrink-0",children:[o.jsx(c3,{}),"Schedules"]})]})}),o.jsx(mMr,{workflows:e||{},isLoading:t,search:r})]})}const uss={active:"bg-accent1",paused:"bg-accent3"},dss={active:"text-accent1",paused:"text-accent3"},$8t=({status:e})=>o.jsxs("span",{className:"inline-flex items-center gap-2 whitespace-nowrap",children:[o.jsx("span",{className:`h-1.5 w-1.5 rounded-full ${uss[e]}`,"aria-hidden":!0}),o.jsx("span",{className:`text-ui-sm ${dss[e]}`,children:e})]}),Pj=e=>!e||e<=0?"—":new Date(e).toLocaleString(),iP=e=>{if(!e||e<=0)return"—";const t=e-Date.now(),n=Math.abs(t),r=Math.floor(n/1e3);if(r<60)return t>=0?`in ${r}s`:`${r}s ago`;const s=Math.floor(r/60);if(s<60)return t>=0?`in ${s}m`:`${s}m ago`;const a=Math.floor(s/60);if(a<24)return t>=0?`in ${a}h`:`${a}h ago`;const i=Math.floor(a/24);return t>=0?`in ${i}d`:`${i}d ago`};function M8t({status:e}){const{icon:t,color:n}=fss(e);return o.jsxs("span",{className:`inline-flex items-center gap-1.5 whitespace-nowrap text-ui-sm ${n}`,children:[o.jsx("span",{className:"inline-flex shrink-0 items-center","aria-hidden":!0,children:t}),o.jsx("span",{children:e})]})}function fss(e){switch(e){case"success":return{icon:o.jsx(Js,{size:14}),color:"text-accent1"};case"failed":return{icon:o.jsx(vs,{size:14}),color:"text-accent2"};case"running":return{icon:o.jsx(Qt,{}),color:"text-neutral3"};case"suspended":return{icon:o.jsx(JU,{size:14}),color:"text-accent3"};case"canceled":return{icon:o.jsx(xf,{size:14}),color:"text-neutral3"};case"pending":case"waiting":return{icon:o.jsx(aO,{size:14}),color:"text-neutral3"};default:return{icon:null,color:"text-neutral3"}}}const zQe="auto auto auto auto 1fr";function pss(e){if(e===void 0)return"—";if(e<1e3)return`${e}ms`;if(e<6e4)return`${(e/1e3).toFixed(1)}s`;const t=Math.floor(e/6e4),n=Math.floor(e%6e4/1e3);return`${t}m ${n}s`}function hss(e){const t=Math.abs(e),n=e<0?"-":"";return t<1e3?`${n}${t}ms`:t<6e4?`${n}${(t/1e3).toFixed(1)}s`:t<36e5?`${n}${(t/6e4).toFixed(1)}m`:`${n}${(t/36e5).toFixed(1)}h`}const mss=3e4,gss=5*6e4;function vss({triggers:e,isLoading:t,workflowId:n,hasNextPage:r,isFetchingNextPage:s,setEndOfListElement:a}){const{Link:i,paths:l}=yn();return t?o.jsx(el,{columns:zQe}):e.length===0?o.jsx(ge,{variant:"ui-md",className:"text-neutral4 p-4",children:"No trigger history yet."}):o.jsxs(me,{columns:zQe,className:"min-w-0",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Run"}),o.jsx(me.TopCell,{children:"Status"}),o.jsx(me.TopCell,{children:"Started"}),o.jsx(me.TopCell,{children:"Duration"}),o.jsx(me.TopCell,{children:" "})]}),e.map(c=>{const u=c.actualFireAt-c.scheduledFireAt,d=hss(u),f=`Scheduled ${Pj(c.scheduledFireAt)} — published ${Pj(c.actualFireAt)} (drift ${d})`,p=c.outcome==="failed",h=p?c.error:c.run?.error,m=Math.abs(u),g=!p&&m>mss&&m<=gss,y=`${c.scheduleId}-${c.runId}-${c.actualFireAt}`,b=!!(n&&c.runId&&!p),w=o.jsx("span",{className:b?"text-accent1 font-mono text-ui-sm whitespace-nowrap":"text-neutral3 font-mono text-ui-sm whitespace-nowrap",children:c.runId}),S=o.jsxs(o.Fragment,{children:[o.jsx(me.Cell,{height:"compact",children:w}),o.jsx(me.Cell,{height:"compact",children:o.jsxs("span",{className:"inline-flex items-center gap-2",children:[p?o.jsxs("span",{className:"inline-flex items-center gap-1.5 whitespace-nowrap text-ui-sm text-accent2",children:[o.jsx(kp,{size:14}),"publish failed"]}):c.run?o.jsx(M8t,{status:c.run.status}):o.jsx("span",{className:"inline-flex items-center gap-1.5 whitespace-nowrap text-ui-sm text-neutral3",children:"pending"}),h?o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx("span",{className:"text-accent2 inline-flex",children:o.jsx(kp,{size:14})})}),o.jsx(Bn,{children:h})]}):null]})}),o.jsx(me.Cell,{height:"compact",children:o.jsxs("span",{className:"inline-flex items-center gap-2 whitespace-nowrap",children:[o.jsx("span",{title:f,children:iP(c.actualFireAt)}),g?o.jsxs(Wn,{children:[o.jsx(zn,{asChild:!0,children:o.jsx("span",{className:"text-accent3 inline-flex",children:o.jsx(kp,{size:14})})}),o.jsxs(Bn,{children:["Published ",d," after the scheduled fire time"]})]}):null]})}),o.jsx(me.Cell,{height:"compact",children:c.run?o.jsx("span",{children:pss(c.run.durationMs)}):o.jsx("span",{className:"text-neutral4",children:"—"})}),o.jsx(me.Cell,{height:"compact",children:" "})]});return b?o.jsx(me.RowLink,{to:l.workflowRunLink(n,c.runId),LinkComponent:i,children:S},y):o.jsx(me.RowStatic,{children:S},y)}),o.jsx(me.NextPageLoading,{isLoading:s,hasMore:r,setEndOfListElement:a})]})}const yss=e=>{const t=We();return wt({queryKey:["schedule",e],enabled:!!e,queryFn:async()=>{if(!e)throw new Error("scheduleId is required");return t.getSchedule(e)}})},BQe=25,bss=e=>{const t=We(),{inView:n,setRef:r}=C_(),s=R1({queryKey:["schedule-triggers",e],enabled:!!e,initialPageParam:void 0,queryFn:async({pageParam:u})=>e?t.listScheduleTriggers(e,{limit:BQe,toActualFireAt:u}):{triggers:[]},getNextPageParam:u=>{if(!(!u?.triggers?.length||u.triggers.length<BQe))return u.triggers[u.triggers.length-1].actualFireAt},refetchInterval:u=>(u.state.data?.pages.flatMap(p=>p.triggers)??[]).some(p=>p.run?p.run.status==="pending"||p.run.status==="running"||p.run.status==="waiting":p.outcome==="published")?5e3:!1}),a=s.data?.pages.flatMap(u=>u?.triggers??[])??[],{hasNextPage:i,isFetchingNextPage:l,fetchNextPage:c}=s;return v.useEffect(()=>{n&&i&&!l&&c()},[n,i,l,c]),{...s,data:a,setEndOfListElement:r}},xss=e=>{const t=We(),n=Hr();return Rn({mutationFn:async r=>{if(!e)throw new Error("scheduleId is required");return r==="pause"?t.pauseSchedule(e):t.resumeSchedule(e)},onSuccess:(r,s)=>{n.invalidateQueries({queryKey:["schedule",e]}),n.invalidateQueries({queryKey:["schedules"]}),De.success(s==="pause"?"Schedule paused":"Schedule resumed")},onError:r=>{De.error(r.message)}})};function s9({label:e,children:t}){return o.jsxs("div",{className:"flex flex-col gap-1",children:[o.jsx(ge,{variant:"ui-xs",className:"text-neutral4 uppercase tracking-wide",children:e}),o.jsx("div",{className:"text-ui-md",children:t})]})}function wss(){const{scheduleId:e}=dr(),{paths:t}=yn(),{data:n,error:r}=yss(e),{data:s,isLoading:a,error:i,hasNextPage:l,isFetchingNextPage:c,setEndOfListElement:u}=bss(e),d=xss(e);if(r&&gs(r))return o.jsx(lr,{children:o.jsx(Vs,{})});if(r&&ys(r))return o.jsx(lr,{children:o.jsx(Ds,{resource:"schedules"})});if(r)return o.jsx(lr,{children:o.jsx(Fi,{title:"Failed to load schedule",message:r.message})});const f=n?.target.type==="workflow"?n.target.workflowId:void 0;return o.jsxs(Lt,{children:[o.jsx(Lt.TopArea,{children:o.jsx(Lt.Row,{className:"justify-end",children:o.jsxs(Lt.Column,{className:"flex justify-end gap-2",children:[o.jsxs(de,{as:ci,to:t.schedulesLink(),variant:"ghost",children:[o.jsx(Ec,{}),"Back to schedules"]}),f?o.jsx(de,{as:ci,to:t.workflowLink(f),variant:"ghost",children:"Open workflow"}):null,n?o.jsx(de,{onClick:()=>d.mutate(n.status==="active"?"pause":"resume"),disabled:d.isPending,"data-testid":"schedule-toggle-button",children:n.status==="active"?o.jsxs(o.Fragment,{children:[o.jsx(qlt,{}),"Pause"]}):o.jsxs(o.Fragment,{children:[o.jsx(Pp,{}),"Resume"]})}):null]})})}),n?o.jsxs("div",{className:"grid gap-6 h-full overflow-hidden grid-cols-[minmax(0,20rem)_1fr]",children:[o.jsxs("div",{className:"flex flex-col gap-4 border border-border1 rounded-md p-4 h-fit",children:[o.jsx(s9,{label:"Workflow",children:f?o.jsx(ci,{to:t.workflowLink(f),className:"text-accent1 hover:underline",children:f}):"—"}),o.jsxs(s9,{label:"Cron",children:[o.jsx("code",{className:"font-mono text-ui-md",children:n.cron}),n.timezone?o.jsx("span",{className:"text-neutral4 ml-2 text-ui-sm",children:n.timezone}):null]}),o.jsx(s9,{label:"Status",children:o.jsx($8t,{status:n.status})}),o.jsx(s9,{label:"Next fire",children:o.jsx("span",{title:Pj(n.nextFireAt),children:iP(n.nextFireAt)})})]}),o.jsxs("div",{className:"overflow-y-auto","data-testid":"schedule-triggers-panel",children:[o.jsx(ge,{variant:"ui-md",className:"mb-3",children:"Trigger history"}),i?o.jsx(Fi,{title:"Failed to load trigger history",message:i.message}):o.jsx(vss,{triggers:s??[],isLoading:a,workflowId:f,hasNextPage:l,isFetchingNextPage:c,setEndOfListElement:u})]})]}):null]})}const UQe="minmax(0, 1.2fr) minmax(0, 1.4fr) minmax(0, 1fr) auto auto auto";function Sss({schedules:e,isLoading:t,search:n=""}){const{paths:r,Link:s}=yn(),a=v.useMemo(()=>{const i=n.toLowerCase();return i?e.filter(l=>l.id.toLowerCase().includes(i)||l.target.workflowId.toLowerCase().includes(i)):e},[e,n]);return t?o.jsx(el,{columns:UQe}):o.jsxs(me,{columns:UQe,variant:"striped",className:"min-w-0",children:[o.jsxs(me.Top,{children:[o.jsx(me.TopCell,{children:"Workflow"}),o.jsx(me.TopCell,{children:"Schedule ID"}),o.jsx(me.TopCell,{children:"Cron"}),o.jsx(me.TopCell,{children:"Status"}),o.jsx(me.TopCell,{children:"Next fire"}),o.jsx(me.TopCell,{children:"Last run"})]}),a.length===0&&n?o.jsx(me.NoMatch,{message:"No schedules match your search"}):null,a.length===0&&!n?o.jsx(me.NoMatch,{message:"No schedules configured"}):null,a.map(i=>o.jsxs(me.RowLink,{to:r.scheduleLink(i.id),LinkComponent:s,children:[o.jsx(me.NameCell,{children:i.target.workflowId}),o.jsx(me.Cell,{height:"compact",className:"min-w-0",children:o.jsx("span",{className:"block truncate font-mono text-ui-smd text-neutral3",title:i.id,children:i.id})}),o.jsx(me.Cell,{height:"compact",children:o.jsxs("span",{className:"inline-flex items-center gap-2 whitespace-nowrap",children:[o.jsx("code",{className:"font-mono text-ui-sm",children:i.cron}),i.timezone?o.jsx("span",{className:"text-neutral4 text-ui-xs",children:i.timezone}):null]})}),o.jsx(me.Cell,{height:"compact",children:o.jsx($8t,{status:i.status})}),o.jsx(me.Cell,{height:"compact",children:o.jsx("span",{className:"whitespace-nowrap",title:Pj(i.nextFireAt),children:iP(i.nextFireAt)})}),o.jsx(me.Cell,{height:"compact",children:i.lastRun?o.jsxs("span",{className:"inline-flex items-center gap-2 whitespace-nowrap",children:[o.jsx(M8t,{status:i.lastRun.status}),o.jsx("span",{className:"text-neutral4 text-ui-sm",title:Pj(i.lastFireAt),children:i.lastFireAt?iP(i.lastFireAt):""})]}):i.lastFireAt?o.jsx("span",{className:"whitespace-nowrap",title:Pj(i.lastFireAt),children:iP(i.lastFireAt)}):o.jsx("span",{className:"text-neutral4",children:"Never"})})]},i.id))]})}function kss({workflowId:e}={}){const{data:t,isLoading:n,error:r}=Wxe(e?{workflowId:e}:{}),[s,a]=v.useState("");return r?o.jsx(Fi,{title:"Failed to load schedules",message:r.message}):o.jsxs("div",{className:"grid grid-rows-[auto_1fr] gap-4 h-full overflow-hidden",children:[o.jsx("div",{className:"max-w-120",children:o.jsx(Of,{onSearch:a,label:"Filter schedules",placeholder:"Filter by id or workflow"})}),o.jsx("div",{className:"overflow-y-auto",children:o.jsx(Sss,{schedules:t??[],isLoading:n,search:s})})]})}function Oss(){const[e]=ji(),t=e.get("workflowId")??void 0,{error:n}=Wxe(t?{workflowId:t}:{});return n&&gs(n)?o.jsx(lr,{children:o.jsx(Vs,{})}):n&&ys(n)?o.jsx(lr,{children:o.jsx(Ds,{resource:"schedules"})}):o.jsx(Lt,{children:o.jsx("div",{className:"h-full",children:o.jsx(kss,{workflowId:t})})})}function _ss({stepGraph:e,open:t,workflowName:n}){const{nodes:r,edges:s}=O1e({stepGraph:e}),[a,i]=v.useState(!1),[l,c,u]=cwt(r),[d]=uwt(s),{edgeTypes:f,nodeTypes:p,styledEdges:h}=c2t({edges:d,workflowName:n,stepGraph:e});return v.useEffect(()=>{if(t){const m=setTimeout(()=>{i(!0)},500);return()=>clearTimeout(m)}},[t]),o.jsx("div",{className:"w-full h-full relative bg-surface1",children:a?o.jsxs(lwt,{nodes:l,edges:h,edgeTypes:f,fitView:!0,fitViewOptions:{maxZoom:1},minZoom:.01,maxZoom:1,nodeTypes:p,onNodesChange:u,children:[o.jsx(F_e,{position:"bottom-left"}),o.jsx(fwt,{variant:Kv.Lines,gap:12,size:.5})]}):o.jsx("div",{className:"w-full h-full flex items-center justify-center",children:o.jsx(Qt,{})})})}function Css(){const{stepDetail:e,closeStepDetail:t}=FV();return e?o.jsxs("div",{className:"flex flex-col h-full","data-testid":"workflow-step-detail-panel",children:[o.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border1 bg-surface1",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[e.type==="map-config"&&o.jsx(Vde,{className:"w-4 h-4",style:{color:wu.map}}),e.type==="nested-graph"&&o.jsx(kd,{className:"w-4 h-4",style:{color:wu.workflow}}),o.jsxs("div",{className:"flex flex-col",children:[o.jsx(ge,{variant:"ui-md",className:"text-neutral6 font-medium",children:e.type==="map-config"?`${e.stepName} Config`:`${e.stepName} Workflow`}),e.type==="map-config"&&e.stepId&&e.stepId!==e.stepName&&o.jsx(ge,{variant:"ui-xs",className:"text-neutral3",children:e.stepId})]})]}),o.jsx("button",{onClick:t,className:"p-1 hover:bg-surface3 rounded transition-colors","aria-label":"Close",children:o.jsx(vs,{className:"w-4 h-4 text-neutral3"})})]}),o.jsxs("div",{className:"flex-1 overflow-auto",children:[e.type==="map-config"&&e.mapConfig&&o.jsx(tP,{data:e.mapConfig}),e.type==="nested-graph"&&e.nestedGraph&&o.jsx("div",{className:"h-full min-h-[400px]",children:o.jsx(k1e,{children:o.jsx(_ss,{stepGraph:e.nestedGraph.stepGraph,open:!0,workflowName:e.nestedGraph.fullStep})},`nested-graph-${e.nestedGraph.fullStep}`)})]})]}):null}function Ess(e){const t=new Blob([JSON.stringify(e??null)]).size;return t<1024?`${t} B`:`${(t/1024).toFixed(1)} KB`}function jss(e,t){if(e&&typeof e=="object"&&!Array.isArray(e)){const n=Object.keys(e);if(n.length===1)return n[0]}return t}function Tss({suspendedSteps:e,workflow:t,isStreaming:n,onResume:r}){return n||e.length===0?null:o.jsxs("div",{className:"space-y-5 rounded-lg border border-border1 bg-surface4 p-5","data-testid":"workflow-suspended-steps",children:[o.jsxs("div",{className:"flex items-center justify-between gap-3",children:[o.jsxs(ge,{as:"p",variant:"ui-md",className:"flex items-center gap-2 text-neutral6 font-semibold",children:[o.jsx(Ue,{children:o.jsx(JU,{})}),"Step suspended"]}),o.jsx(un,{variant:"warning",children:"Needs input"})]}),e.map((s,a)=>{const i=t.allSteps[s.stepId];if(!i||i.isWorkflow)return null;const l=i?.resumeSchema?om(am(mx(i.resumeSchema))):rp(ur(),sT());return o.jsx(Nss,{step:s,stepSchema:l,description:i.description,isStreaming:n,onResume:r},`${s.runId}-${s.stepId}-${a}`)})]})}function Nss({step:e,stepSchema:t,description:n,isStreaming:r,onResume:s}){const[a,i]=v.useState(!1);return o.jsxs("div",{className:"space-y-5",children:[o.jsxs("div",{className:"space-y-2",children:[o.jsx(ge,{as:"p",variant:"ui-md",className:"text-neutral6 font-medium truncate",children:e.stepId}),n&&o.jsx(ge,{as:"p",variant:"ui-sm",className:"text-neutral3",children:n})]}),e.suspendPayload&&o.jsxs("div",{className:"space-y-2",children:[o.jsxs(ge,{as:"p",variant:"ui-sm",className:"flex items-center gap-2 text-neutral3",children:[o.jsx(Ue,{children:o.jsx(ldn,{})}),"The step is asking"]}),o.jsxs(Lp,{open:a,onOpenChange:i,children:[o.jsxs(mf,{className:"flex w-full items-center justify-between gap-2 rounded-lg border border-border1 bg-surface3 px-3 py-2.5",children:[o.jsxs("span",{className:"flex items-center gap-2 min-w-0",children:[o.jsx(Ue,{children:o.jsx(la,{className:K("transition-transform text-neutral3",{"transform rotate-90":a})})}),o.jsx(ge,{as:"span",variant:"ui-md",className:"text-neutral6 truncate",children:jss(e.suspendPayload,e.stepId)})]}),o.jsx(ge,{as:"span",variant:"ui-sm",className:"text-neutral3 shrink-0",children:Ess(e.suspendPayload)})]}),o.jsx(gf,{children:o.jsx("div",{"data-testid":"suspended-payload",className:"pt-2",children:o.jsx(Qr,{data:e.suspendPayload,className:"w-full overflow-x-auto p-2",showCopyButton:!1})})})]})]}),o.jsxs("div",{className:"space-y-3",children:[o.jsxs(ge,{as:"p",variant:"ui-sm",className:"flex items-center gap-2 text-neutral3",children:[o.jsx(Ue,{children:o.jsx(ddn,{})}),"Your response"]}),o.jsx("div",{className:"-mx-5",children:o.jsx(A7,{schema:t,isSubmitLoading:r,submitButtonLabel:"Resume",submitButtonIcon:o.jsx(Pp,{}),submitButtonFullWidth:!0,collapsible:!1,hideHeading:!0,hideInputTypeLabel:!0,onSubmit:l=>{const c=e.stepId?.split(".");s({stepId:c,runId:e.runId,suspendPayload:e.suspendPayload,resumeData:l,isLoading:!1})}})})]})]})}function Iss(){const{result:e,runSnapshot:t,workflow:n,runId:r,isStreamingWorkflow:s}=v.useContext(Rl),{runId:a}=dr(),i=bwt(e,r??""),l=xZn(),c=!!a,u=t?.status==="suspended",f=!!(a&&r&&a===r)&&e?.status==="suspended";return s||!n||i.length===0||c&&!u&&!f?null:o.jsx("div",{"data-testid":"workflow-suspended-overlay",className:"absolute top-2 right-2 z-20 w-[380px] max-w-[calc(100%-1rem)] max-h-[calc(100%-1rem)] overflow-y-auto rounded-lg shadow-lg animate-in fade-in-0 slide-in-from-top-2 zoom-in-95 duration-300",children:o.jsx(Tss,{suspendedSteps:i,workflow:n,isStreaming:s,onResume:l})},r)}const Ass=e=>o.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[o.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.99982 2.0625C3.8252 2.0625 2.06232 3.82538 2.06232 6C2.06232 8.17462 3.8252 9.9375 5.99982 9.9375C8.17444 9.9375 9.93732 8.17462 9.93732 6C9.93732 3.82538 8.17444 2.0625 5.99982 2.0625ZM0.937317 6C0.937317 3.20406 3.20388 0.9375 5.99982 0.9375C8.79576 0.9375 11.0623 3.20406 11.0623 6C11.0623 8.79594 8.79576 11.0625 5.99982 11.0625C3.20388 11.0625 0.937317 8.79594 0.937317 6Z",fill:"currentColor"}),o.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.97865 4.57004C8.22604 4.75795 8.27426 5.11082 8.08635 5.35821L6.05486 8.03279C5.94873 8.17251 5.78348 8.25471 5.60803 8.25505C5.43257 8.2554 5.267 8.17385 5.16032 8.03454L3.80937 6.27034C3.6205 6.02369 3.66733 5.67063 3.91398 5.48176C4.16063 5.29288 4.51369 5.33972 4.70257 5.58637L5.6051 6.76498L7.19048 4.67774C7.37839 4.43036 7.73126 4.38213 7.97865 4.57004Z",fill:"currentColor"})]}),Rss=e=>o.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[o.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.99982 2.0625C3.8252 2.0625 2.06232 3.82538 2.06232 6C2.06232 8.17462 3.8252 9.9375 5.99982 9.9375C8.17444 9.9375 9.93732 8.17462 9.93732 6C9.93732 3.82538 8.17444 2.0625 5.99982 2.0625ZM0.937317 6C0.937317 3.20406 3.20388 0.9375 5.99982 0.9375C8.79576 0.9375 11.0623 3.20406 11.0623 6C11.0623 8.79594 8.79576 11.0625 5.99982 11.0625C3.20388 11.0625 0.937317 8.79594 0.937317 6Z",fill:"currentColor"}),o.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.89741 4.10293C8.11707 4.32261 8.11706 4.67877 7.89738 4.89843L6.79517 6.00058L7.8962 7.10155C8.11588 7.32122 8.11589 7.67737 7.89623 7.89705C7.67656 8.11673 7.32041 8.11674 7.10073 7.89707L5.99965 6.79605L4.89856 7.89707C4.67889 8.11673 4.32273 8.11672 4.10307 7.89704C3.88341 7.67737 3.88342 7.32121 4.10309 7.10155L5.20413 6.00058L4.10191 4.89843C3.88224 4.67877 3.88223 4.32262 4.10189 4.10294C4.32155 3.88326 4.67771 3.88325 4.89738 4.10292L5.99965 5.20511L7.10191 4.10291C7.32159 3.88325 7.67774 3.88326 7.89741 4.10293Z",fill:"currentColor"})]}),Pss=e=>e.includes("."),$ss=e=>e==="input"||e.endsWith(".input"),Mss=1;function Dss(e){return`${Number((e/1e3).toPrecision(3))}s`}function Lss(e,t){const n=Object.entries(e).filter(([i])=>!$ss(i));if(n.length===0)return[];const r=Math.min(...n.map(([,i])=>i.startedAt)),s=Math.max(...n.map(([,i])=>i.endedAt??t)),a=Math.max(s-r,1);return n.map(([i,l])=>{const c=l.endedAt===void 0,d=(l.endedAt??t)-l.startedAt,f=(l.startedAt-r)/a*100,p=Math.max(d/a*100,Mss);return{stepId:i,step:l,status:l.status,offsetPct:f,widthPct:p,durationMs:d,isRunning:c,isNestedEntry:Pss(i)}})}const Fss=({status:e})=>o.jsxs(Ue,{children:[e==="success"&&o.jsx(Ass,{className:"text-accent1"}),e==="failed"&&o.jsx(Rss,{className:"text-accent2"}),e==="suspended"&&o.jsx(JU,{className:"text-accent3"}),e==="waiting"&&o.jsx(qde,{className:"text-accent5"}),e==="skipped"&&o.jsx(qde,{className:"text-icon3"}),e==="running"&&o.jsx(ia,{className:"text-accent6 animate-spin"})]}),zss={success:"bg-accent1",failed:"bg-accent2",suspended:"bg-accent3",waiting:"bg-accent5",skipped:"bg-border1",running:"bg-accent6"};function D8t(e){return e.split(/[-_.\s]+/).filter(Boolean).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}const qQe=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:{value:e},Bss=e=>{const t=e;return e2t({duration:t.duration,date:t.date,isForEach:t.isForEach,mapConfig:t.mapConfig,canSuspend:t.canSuspend,isParallel:t.isParallel,stepGraph:t.stepGraph})},Uss=({row:e,index:t,isSelected:n,isHovered:r,onSelectStep:s,onHoverStep:a,onOpenInput:i,onOpenOutput:l})=>{const c=Bss(e.step),u=e.status==="running",d=!e.isNestedEntry;return o.jsxs("div",{role:"button",tabIndex:0,"data-testid":"workflow-timeline-row","data-workflow-step-key":e.stepId,"data-workflow-step-active":n?"true":void 0,"data-workflow-step-hovered":r?"true":void 0,"data-workflow-step-nested":e.isNestedEntry?"true":void 0,"aria-pressed":n,"aria-disabled":!d,onMouseEnter:()=>{d&&a(e.stepId)},onMouseLeave:()=>{d&&a(null)},onClick:()=>{d&&s(e.stepId)},onKeyDown:f=>{!d||f.key!=="Enter"&&f.key!==" "||(f.preventDefault(),s(e.stepId))},className:K("grid grid-cols-[auto_auto_auto_minmax(0,10rem)_minmax(0,1fr)_auto_5rem] items-center gap-2 rounded-md border border-transparent px-2 py-1 text-left transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-accent1",d&&"cursor-pointer",d&&"hover:bg-surface4",d&&r&&!n&&"border-neutral6 bg-surface4",d&&n&&"border-accent1",e.isNestedEntry&&"cursor-default opacity-55"),children:[o.jsx("div",{className:"flex justify-center",children:o.jsx(Fss,{status:e.status})}),o.jsx("div",{className:"flex justify-center",children:o.jsx(de,{type:"button",variant:"ghost",size:"icon-sm",tooltip:"View step input",disabled:u,className:"text-neutral3 hover:text-neutral6 disabled:cursor-not-allowed disabled:opacity-40",onClick:f=>{f.stopPropagation(),u||i(e)},children:o.jsx(cfn,{})})}),o.jsx("div",{className:"flex overflow-hidden",children:o.jsx(aU,{indicators:c,className:"shrink-0"})}),o.jsx(ge,{as:"span",variant:"ui-sm",className:"block min-w-0 max-w-full justify-self-stretch overflow-hidden text-ellipsis whitespace-nowrap text-left text-neutral6",children:D8t(e.stepId)}),o.jsx("div",{className:"relative h-2 min-w-0 rounded bg-surface4",children:o.jsx("div",{"data-testid":"workflow-timeline-bar","data-offset":String(e.offsetPct),"data-width":String(e.widthPct),className:`absolute top-0 h-full rounded ${zss[e.status]}`,style:{left:`${e.offsetPct}%`,width:`${e.widthPct}%`}})}),o.jsx("div",{className:"flex justify-center",children:o.jsx(de,{type:"button",variant:"ghost",size:"icon-sm",tooltip:"View step output",disabled:u,className:"text-neutral3 hover:text-neutral6 disabled:cursor-not-allowed disabled:opacity-40",onClick:f=>{f.stopPropagation(),u||l(e)},children:o.jsx(ofn,{})})}),o.jsx(ge,{as:"span",variant:"ui-sm",className:"w-20 justify-self-end text-right text-neutral3 tabular-nums",children:Dss(e.durationMs)})]},`timeline-item-${e.stepId}-${t}`)};function qss(){const{steps:e}=t4(),{selectedStepId:t,hoverStepId:n,setSelectedStepId:r,setHoverStepId:s}=Yq(),[a,i]=v.useState(()=>Date.now()),[l,c]=v.useState(!1),[u,d]=v.useState(null),f=v.useRef(null);e0e(f,{enabled:!l});const p=Lss(e,a),h=p.some(m=>m.isRunning);return v.useEffect(()=>{if(!h)return;const m=setInterval(()=>i(Date.now()),100);return()=>clearInterval(m)},[h]),v.useEffect(()=>{if(l||p.length===0)return;const m=f.current;m&&(m.scrollTop=m.scrollHeight)},[l,p.length]),p.length===0?null:o.jsxs(o.Fragment,{children:[o.jsx("div",{"data-testid":"workflow-timeline",className:"pointer-events-none absolute right-0 bottom-0 z-20 px-2 pb-2",style:{left:"var(--workflow-left-panel-width, 0px)"},children:o.jsxs("div",{className:"pointer-events-auto flex max-h-64 w-full min-w-0 flex-col gap-3 overflow-hidden rounded-studio-panel border border-border1/50 bg-surface3 p-4 shadow-lg",children:[o.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-3",children:[o.jsx(ge,{as:"p",variant:"ui-md",className:"text-neutral3",children:"Timeline"}),o.jsx("button",{type:"button","aria-label":l?"Expand timeline":"Collapse timeline","aria-expanded":!l,onClick:()=>c(m=>!m),className:"rounded-md p-1 text-neutral3 transition-colors hover:bg-surface4 hover:text-neutral6",children:o.jsx(va,{className:K("h-4 w-4 transition-transform",l&&"-rotate-90")})})]}),!l&&o.jsx("div",{ref:f,"data-testid":"workflow-timeline-list",className:"flex min-h-0 flex-col gap-2 overflow-y-auto",children:p.map((m,g)=>o.jsx(Uss,{row:m,index:g,isSelected:t===m.stepId,isHovered:n===m.stepId,onSelectStep:r,onHoverStep:s,onOpenInput:y=>d({type:"input",stepId:y.stepId,data:qQe(y.step.input)}),onOpenOutput:y=>d({type:"output",stepId:y.stepId,data:qQe(y.step.output)})},`timeline-item-${m.stepId}-${g}`))})]})}),o.jsx(br,{open:!!u,onOpenChange:m=>!m&&d(null),children:u&&o.jsx(wwt,{data:u.data,title:`${D8t(u.stepId)} ${u.type==="input"?"input":"output"}`})})]})}const Vss=({workflowId:e,workflow:t,isLoading:n})=>{const{stepDetail:r}=FV();return o.jsxs("div",{className:"flex h-full min-h-0",children:[o.jsx("div",{className:"flex h-full min-h-0 flex-1 flex-col",children:o.jsxs("div",{className:"relative min-h-0 flex-1 p-2 pb-0",children:[o.jsx(v2t,{workflowId:e,workflow:t,isLoading:n}),o.jsx(Iss,{}),o.jsx(qss,{})]})}),r&&o.jsx("div",{className:"w-[420px] min-h-0 overflow-hidden border-l border-border1",children:o.jsx(Css,{})})]})},VQe=()=>{const{workflowId:e}=dr(),{data:t,isLoading:n,error:r}=gD(e);return r&&gs(r)?o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Vs,{})}):r&&ys(r)?o.jsx("div",{className:"flex h-full items-center justify-center",children:o.jsx(Ds,{resource:"workflows"})}):o.jsx(q1e,{children:o.jsx(Vss,{workflowId:e,workflow:t??void 0,isLoading:n})})};function Hss(e,t){if(e==null)return{};var n,r,s=_bt(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}function Fve(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Wss(e){if(Array.isArray(e))return Fve(e)}function Zss(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Gss(e,t){if(e){if(typeof e=="string")return Fve(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Fve(e,t):void 0}}function Qss(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
728
728
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function zve(e){return Wss(e)||Zss(e)||Gss(e)||Qss()}function KM(e){"@babel/helpers - typeof";return KM=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},KM(e)}function Yss(e,t){if(KM(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(KM(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Xss(e){var t=Yss(e,"string");return KM(t)=="symbol"?t:t+""}function L8t(e,t,n){return(t=Xss(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function HQe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function ej(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?HQe(Object(n),!0).forEach(function(r){L8t(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):HQe(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Kss(e){var t=e.length;if(t===0||t===1)return e;if(t===2)return[e[0],e[1],"".concat(e[0],".").concat(e[1]),"".concat(e[1],".").concat(e[0])];if(t===3)return[e[0],e[1],e[2],"".concat(e[0],".").concat(e[1]),"".concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[0]),"".concat(e[1],".").concat(e[2]),"".concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[1]),"".concat(e[0],".").concat(e[1],".").concat(e[2]),"".concat(e[0],".").concat(e[2],".").concat(e[1]),"".concat(e[1],".").concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[0],".").concat(e[1]),"".concat(e[2],".").concat(e[1],".").concat(e[0])];if(t>=4)return[e[0],e[1],e[2],e[3],"".concat(e[0],".").concat(e[1]),"".concat(e[0],".").concat(e[2]),"".concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[0]),"".concat(e[1],".").concat(e[2]),"".concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[1]),"".concat(e[2],".").concat(e[3]),"".concat(e[3],".").concat(e[0]),"".concat(e[3],".").concat(e[1]),"".concat(e[3],".").concat(e[2]),"".concat(e[0],".").concat(e[1],".").concat(e[2]),"".concat(e[0],".").concat(e[1],".").concat(e[3]),"".concat(e[0],".").concat(e[2],".").concat(e[1]),"".concat(e[0],".").concat(e[2],".").concat(e[3]),"".concat(e[0],".").concat(e[3],".").concat(e[1]),"".concat(e[0],".").concat(e[3],".").concat(e[2]),"".concat(e[1],".").concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[2],".").concat(e[0]),"".concat(e[1],".").concat(e[2],".").concat(e[3]),"".concat(e[1],".").concat(e[3],".").concat(e[0]),"".concat(e[1],".").concat(e[3],".").concat(e[2]),"".concat(e[2],".").concat(e[0],".").concat(e[1]),"".concat(e[2],".").concat(e[0],".").concat(e[3]),"".concat(e[2],".").concat(e[1],".").concat(e[0]),"".concat(e[2],".").concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[3],".").concat(e[0]),"".concat(e[2],".").concat(e[3],".").concat(e[1]),"".concat(e[3],".").concat(e[0],".").concat(e[1]),"".concat(e[3],".").concat(e[0],".").concat(e[2]),"".concat(e[3],".").concat(e[1],".").concat(e[0]),"".concat(e[3],".").concat(e[1],".").concat(e[2]),"".concat(e[3],".").concat(e[2],".").concat(e[0]),"".concat(e[3],".").concat(e[2],".").concat(e[1]),"".concat(e[0],".").concat(e[1],".").concat(e[2],".").concat(e[3]),"".concat(e[0],".").concat(e[1],".").concat(e[3],".").concat(e[2]),"".concat(e[0],".").concat(e[2],".").concat(e[1],".").concat(e[3]),"".concat(e[0],".").concat(e[2],".").concat(e[3],".").concat(e[1]),"".concat(e[0],".").concat(e[3],".").concat(e[1],".").concat(e[2]),"".concat(e[0],".").concat(e[3],".").concat(e[2],".").concat(e[1]),"".concat(e[1],".").concat(e[0],".").concat(e[2],".").concat(e[3]),"".concat(e[1],".").concat(e[0],".").concat(e[3],".").concat(e[2]),"".concat(e[1],".").concat(e[2],".").concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[2],".").concat(e[3],".").concat(e[0]),"".concat(e[1],".").concat(e[3],".").concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[3],".").concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[0],".").concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[0],".").concat(e[3],".").concat(e[1]),"".concat(e[2],".").concat(e[1],".").concat(e[0],".").concat(e[3]),"".concat(e[2],".").concat(e[1],".").concat(e[3],".").concat(e[0]),"".concat(e[2],".").concat(e[3],".").concat(e[0],".").concat(e[1]),"".concat(e[2],".").concat(e[3],".").concat(e[1],".").concat(e[0]),"".concat(e[3],".").concat(e[0],".").concat(e[1],".").concat(e[2]),"".concat(e[3],".").concat(e[0],".").concat(e[2],".").concat(e[1]),"".concat(e[3],".").concat(e[1],".").concat(e[0],".").concat(e[2]),"".concat(e[3],".").concat(e[1],".").concat(e[2],".").concat(e[0]),"".concat(e[3],".").concat(e[2],".").concat(e[0],".").concat(e[1]),"".concat(e[3],".").concat(e[2],".").concat(e[1],".").concat(e[0])]}var nse={};function Jss(e){if(e.length===0||e.length===1)return e;var t=e.join(".");return nse[t]||(nse[t]=Kss(e)),nse[t]}function eas(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,r=e.filter(function(a){return a!=="token"}),s=Jss(r);return s.reduce(function(a,i){return ej(ej({},a),n[i])},t)}function WQe(e){return e.join(" ")}function tas(e,t){var n=0;return function(r){return n+=1,r.map(function(s,a){return F8t({node:s,stylesheet:e,useInlineStyles:t,key:"code-segment-".concat(n,"-").concat(a)})})}}function F8t(e){var t=e.node,n=e.stylesheet,r=e.style,s=r===void 0?{}:r,a=e.useInlineStyles,i=e.key,l=t.properties,c=t.type,u=t.tagName,d=t.value;if(c==="text")return d;if(u){var f=tas(n,a),p;if(!a)p=ej(ej({},l),{},{className:WQe(l.className)});else{var h=Object.keys(n).reduce(function(b,w){return w.split(".").forEach(function(S){b.includes(S)||b.push(S)}),b},[]),m=l.className&&l.className.includes("token")?["token"]:[],g=l.className&&m.concat(l.className.filter(function(b){return!h.includes(b)}));p=ej(ej({},l),{},{className:WQe(g)||void 0,style:eas(l.className,Object.assign({},l.style,s),n)})}var y=f(t.children);return Le.createElement(u,jO({key:i},p),y)}}const nas=(function(e,t){var n=e.listLanguages();return n.indexOf(t)!==-1});var ras=["language","children","style","customStyle","codeTagProps","useInlineStyles","showLineNumbers","showInlineLineNumbers","startingLineNumber","lineNumberContainerStyle","lineNumberStyle","wrapLines","wrapLongLines","lineProps","renderer","PreTag","CodeTag","code","astGenerator"];function ZQe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),n.push.apply(n,r)}return n}function Sw(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?ZQe(Object(n),!0).forEach(function(r){L8t(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ZQe(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}var sas=/\n/g;function aas(e){return e.match(sas)}function ias(e){var t=e.lines,n=e.startingLineNumber,r=e.style;return t.map(function(s,a){var i=a+n;return Le.createElement("span",{key:"line-".concat(a),className:"react-syntax-highlighter-line-number",style:typeof r=="function"?r(i):r},"".concat(i,`
|
|
729
729
|
`))})}function oas(e){var t=e.codeString,n=e.codeStyle,r=e.containerStyle,s=r===void 0?{float:"left",paddingRight:"10px"}:r,a=e.numberStyle,i=a===void 0?{}:a,l=e.startingLineNumber;return Le.createElement("code",{style:Object.assign({},n,s)},ias({lines:t.replace(/\n$/,"").split(`
|
|
730
730
|
`),style:i,startingLineNumber:l}))}function las(e){return"".concat(e.toString().length,".25em")}function z8t(e,t){return{type:"element",tagName:"span",properties:{key:"line-number--".concat(e),className:["comment","linenumber","react-syntax-highlighter-line-number"],style:t},children:[{type:"text",value:e}]}}function B8t(e,t,n){var r={display:"inline-block",minWidth:las(n),paddingRight:"1em",textAlign:"right",userSelect:"none"},s=typeof e=="function"?e(t):e,a=Sw(Sw({},r),s);return a}function bF(e){var t=e.children,n=e.lineNumber,r=e.lineNumberStyle,s=e.largestLineNumber,a=e.showInlineLineNumbers,i=e.lineProps,l=i===void 0?{}:i,c=e.className,u=c===void 0?[]:c,d=e.showLineNumbers,f=e.wrapLongLines,p=e.wrapLines,h=p===void 0?!1:p,m=h?Sw({},typeof l=="function"?l(n):l):{};if(m.className=m.className?[].concat(zve(m.className.trim().split(/\s+/)),zve(u)):u,n&&a){var g=B8t(r,n,s);t.unshift(z8t(n,g))}return f&d&&(m.style=Sw({display:"flex"},m.style)),{type:"element",tagName:"span",properties:m,children:t}}function U8t(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],r=0;r<e.length;r++){var s=e[r];if(s.type==="text")n.push(bF({children:[s],className:zve(new Set(t))}));else if(s.children){var a=t.concat(s.properties.className);U8t(s.children,a).forEach(function(i){return n.push(i)})}}return n}function cas(e,t,n,r,s,a,i,l,c){var u,d=U8t(e.value),f=[],p=-1,h=0;function m(_,C){var E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];return bF({children:_,lineNumber:C,lineNumberStyle:l,largestLineNumber:i,showInlineLineNumbers:s,lineProps:n,className:E,showLineNumbers:r,wrapLongLines:c,wrapLines:t})}function g(_,C){if(r&&C&&s){var E=B8t(l,C,i);_.unshift(z8t(C,E))}return _}function y(_,C){var E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];return t||E.length>0?m(_,C,E):g(_,C)}for(var b=function(){var C=d[h],E=C.children[0].value,j=aas(E);if(j){var N=E.split(`
|