nomoreide 0.1.55 → 0.1.56
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/dist/core/config-store.d.ts +7 -0
- package/dist/core/config-store.js +29 -0
- package/dist/core/config-store.js.map +1 -1
- package/dist/core/git-manager.d.ts +15 -0
- package/dist/core/git-manager.js +43 -0
- package/dist/core/git-manager.js.map +1 -1
- package/dist/core/github-manager.d.ts +58 -0
- package/dist/core/github-manager.js +51 -0
- package/dist/core/github-manager.js.map +1 -1
- package/dist/core/snapshot-manager.d.ts +10 -0
- package/dist/core/snapshot-manager.js +42 -5
- package/dist/core/snapshot-manager.js.map +1 -1
- package/dist/core/types.d.ts +5 -0
- package/dist/web/client/assets/{code-editor-CLZ4YEu4.js → code-editor-BnSokx6t.js} +1 -1
- package/dist/web/client/assets/index-B0Tno-0X.js +215 -0
- package/dist/web/client/assets/index-CBZqXKDN.css +1 -0
- package/dist/web/client/index.html +2 -2
- package/dist/web/routes/git-routes.js +106 -10
- package/dist/web/routes/git-routes.js.map +1 -1
- package/dist/web/routes/github-routes.js +212 -3
- package/dist/web/routes/github-routes.js.map +1 -1
- package/dist/web/routes/shell-routes.js +1 -0
- package/dist/web/routes/shell-routes.js.map +1 -1
- package/dist/web/routes/snapshot-routes.js +30 -0
- package/dist/web/routes/snapshot-routes.js.map +1 -1
- package/package.json +1 -1
- package/dist/web/client/assets/index-CD3YkYz8.css +0 -1
- package/dist/web/client/assets/index-siG6R1Rg.js +0 -215
|
@@ -1,215 +0,0 @@
|
|
|
1
|
-
(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))n(o);new MutationObserver(o=>{for(const l of o)if(l.type==="childList")for(const u of l.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&n(u)}).observe(document,{childList:!0,subtree:!0});function s(o){const l={};return o.integrity&&(l.integrity=o.integrity),o.referrerPolicy&&(l.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?l.credentials="include":o.crossOrigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function n(o){if(o.ep)return;o.ep=!0;const l=s(o);fetch(o.href,l)}})();function _A(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Np={exports:{}},pc={};var Ny;function yA(){if(Ny)return pc;Ny=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function s(n,o,l){var u=null;if(l!==void 0&&(u=""+l),o.key!==void 0&&(u=""+o.key),"key"in o){l={};for(var h in o)h!=="key"&&(l[h]=o[h])}else l=o;return o=l.ref,{$$typeof:e,type:n,key:u,ref:o!==void 0?o:null,props:l}}return pc.Fragment=t,pc.jsx=s,pc.jsxs=s,pc}var Ey;function SA(){return Ey||(Ey=1,Np.exports=yA()),Np.exports}var a=SA(),Ep={exports:{}},Ge={};var jy;function wA(){if(jy)return Ge;jy=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),l=Symbol.for("react.consumer"),u=Symbol.for("react.context"),h=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),g=Symbol.for("react.activity"),x=Symbol.iterator;function _(R){return R===null||typeof R!="object"?null:(R=x&&R[x]||R["@@iterator"],typeof R=="function"?R:null)}var S={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},w=Object.assign,C={};function N(R,Z,ie){this.props=R,this.context=Z,this.refs=C,this.updater=ie||S}N.prototype.isReactComponent={},N.prototype.setState=function(R,Z){if(typeof R!="object"&&typeof R!="function"&&R!=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,R,Z,"setState")},N.prototype.forceUpdate=function(R){this.updater.enqueueForceUpdate(this,R,"forceUpdate")};function j(){}j.prototype=N.prototype;function E(R,Z,ie){this.props=R,this.context=Z,this.refs=C,this.updater=ie||S}var A=E.prototype=new j;A.constructor=E,w(A,N.prototype),A.isPureReactComponent=!0;var O=Array.isArray;function P(){}var D={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function z(R,Z,ie){var de=ie.ref;return{$$typeof:e,type:R,key:Z,ref:de!==void 0?de:null,props:ie}}function L(R,Z){return z(R.type,Z,R.props)}function I(R){return typeof R=="object"&&R!==null&&R.$$typeof===e}function $(R){var Z={"=":"=0",":":"=2"};return"$"+R.replace(/[=:]/g,function(ie){return Z[ie]})}var U=/\/+/g;function W(R,Z){return typeof R=="object"&&R!==null&&R.key!=null?$(""+R.key):Z.toString(36)}function G(R){switch(R.status){case"fulfilled":return R.value;case"rejected":throw R.reason;default:switch(typeof R.status=="string"?R.then(P,P):(R.status="pending",R.then(function(Z){R.status==="pending"&&(R.status="fulfilled",R.value=Z)},function(Z){R.status==="pending"&&(R.status="rejected",R.reason=Z)})),R.status){case"fulfilled":return R.value;case"rejected":throw R.reason}}throw R}function B(R,Z,ie,de,fe){var pe=typeof R;(pe==="undefined"||pe==="boolean")&&(R=null);var Se=!1;if(R===null)Se=!0;else switch(pe){case"bigint":case"string":case"number":Se=!0;break;case"object":switch(R.$$typeof){case e:case t:Se=!0;break;case p:return Se=R._init,B(Se(R._payload),Z,ie,de,fe)}}if(Se)return fe=fe(R),Se=de===""?"."+W(R,0):de,O(fe)?(ie="",Se!=null&&(ie=Se.replace(U,"$&/")+"/"),B(fe,Z,ie,"",function(We){return We})):fe!=null&&(I(fe)&&(fe=L(fe,ie+(fe.key==null||R&&R.key===fe.key?"":(""+fe.key).replace(U,"$&/")+"/")+Se)),Z.push(fe)),1;Se=0;var Le=de===""?".":de+":";if(O(R))for(var ve=0;ve<R.length;ve++)de=R[ve],pe=Le+W(de,ve),Se+=B(de,Z,ie,pe,fe);else if(ve=_(R),typeof ve=="function")for(R=ve.call(R),ve=0;!(de=R.next()).done;)de=de.value,pe=Le+W(de,ve++),Se+=B(de,Z,ie,pe,fe);else if(pe==="object"){if(typeof R.then=="function")return B(G(R),Z,ie,de,fe);throw Z=String(R),Error("Objects are not valid as a React child (found: "+(Z==="[object Object]"?"object with keys {"+Object.keys(R).join(", ")+"}":Z)+"). If you meant to render a collection of children, use an array instead.")}return Se}function V(R,Z,ie){if(R==null)return R;var de=[],fe=0;return B(R,de,"","",function(pe){return Z.call(ie,pe,fe++)}),de}function X(R){if(R._status===-1){var Z=R._result;Z=Z(),Z.then(function(ie){(R._status===0||R._status===-1)&&(R._status=1,R._result=ie)},function(ie){(R._status===0||R._status===-1)&&(R._status=2,R._result=ie)}),R._status===-1&&(R._status=0,R._result=Z)}if(R._status===1)return R._result.default;throw R._result}var K=typeof reportError=="function"?reportError:function(R){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var Z=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof R=="object"&&R!==null&&typeof R.message=="string"?String(R.message):String(R),error:R});if(!window.dispatchEvent(Z))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",R);return}console.error(R)},te={map:V,forEach:function(R,Z,ie){V(R,function(){Z.apply(this,arguments)},ie)},count:function(R){var Z=0;return V(R,function(){Z++}),Z},toArray:function(R){return V(R,function(Z){return Z})||[]},only:function(R){if(!I(R))throw Error("React.Children.only expected to receive a single React element child.");return R}};return Ge.Activity=g,Ge.Children=te,Ge.Component=N,Ge.Fragment=s,Ge.Profiler=o,Ge.PureComponent=E,Ge.StrictMode=n,Ge.Suspense=m,Ge.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=D,Ge.__COMPILER_RUNTIME={__proto__:null,c:function(R){return D.H.useMemoCache(R)}},Ge.cache=function(R){return function(){return R.apply(null,arguments)}},Ge.cacheSignal=function(){return null},Ge.cloneElement=function(R,Z,ie){if(R==null)throw Error("The argument must be a React element, but you passed "+R+".");var de=w({},R.props),fe=R.key;if(Z!=null)for(pe in Z.key!==void 0&&(fe=""+Z.key),Z)!T.call(Z,pe)||pe==="key"||pe==="__self"||pe==="__source"||pe==="ref"&&Z.ref===void 0||(de[pe]=Z[pe]);var pe=arguments.length-2;if(pe===1)de.children=ie;else if(1<pe){for(var Se=Array(pe),Le=0;Le<pe;Le++)Se[Le]=arguments[Le+2];de.children=Se}return z(R.type,fe,de)},Ge.createContext=function(R){return R={$$typeof:u,_currentValue:R,_currentValue2:R,_threadCount:0,Provider:null,Consumer:null},R.Provider=R,R.Consumer={$$typeof:l,_context:R},R},Ge.createElement=function(R,Z,ie){var de,fe={},pe=null;if(Z!=null)for(de in Z.key!==void 0&&(pe=""+Z.key),Z)T.call(Z,de)&&de!=="key"&&de!=="__self"&&de!=="__source"&&(fe[de]=Z[de]);var Se=arguments.length-2;if(Se===1)fe.children=ie;else if(1<Se){for(var Le=Array(Se),ve=0;ve<Se;ve++)Le[ve]=arguments[ve+2];fe.children=Le}if(R&&R.defaultProps)for(de in Se=R.defaultProps,Se)fe[de]===void 0&&(fe[de]=Se[de]);return z(R,pe,fe)},Ge.createRef=function(){return{current:null}},Ge.forwardRef=function(R){return{$$typeof:h,render:R}},Ge.isValidElement=I,Ge.lazy=function(R){return{$$typeof:p,_payload:{_status:-1,_result:R},_init:X}},Ge.memo=function(R,Z){return{$$typeof:d,type:R,compare:Z===void 0?null:Z}},Ge.startTransition=function(R){var Z=D.T,ie={};D.T=ie;try{var de=R(),fe=D.S;fe!==null&&fe(ie,de),typeof de=="object"&&de!==null&&typeof de.then=="function"&&de.then(P,K)}catch(pe){K(pe)}finally{Z!==null&&ie.types!==null&&(Z.types=ie.types),D.T=Z}},Ge.unstable_useCacheRefresh=function(){return D.H.useCacheRefresh()},Ge.use=function(R){return D.H.use(R)},Ge.useActionState=function(R,Z,ie){return D.H.useActionState(R,Z,ie)},Ge.useCallback=function(R,Z){return D.H.useCallback(R,Z)},Ge.useContext=function(R){return D.H.useContext(R)},Ge.useDebugValue=function(){},Ge.useDeferredValue=function(R,Z){return D.H.useDeferredValue(R,Z)},Ge.useEffect=function(R,Z){return D.H.useEffect(R,Z)},Ge.useEffectEvent=function(R){return D.H.useEffectEvent(R)},Ge.useId=function(){return D.H.useId()},Ge.useImperativeHandle=function(R,Z,ie){return D.H.useImperativeHandle(R,Z,ie)},Ge.useInsertionEffect=function(R,Z){return D.H.useInsertionEffect(R,Z)},Ge.useLayoutEffect=function(R,Z){return D.H.useLayoutEffect(R,Z)},Ge.useMemo=function(R,Z){return D.H.useMemo(R,Z)},Ge.useOptimistic=function(R,Z){return D.H.useOptimistic(R,Z)},Ge.useReducer=function(R,Z,ie){return D.H.useReducer(R,Z,ie)},Ge.useRef=function(R){return D.H.useRef(R)},Ge.useState=function(R){return D.H.useState(R)},Ge.useSyncExternalStore=function(R,Z,ie){return D.H.useSyncExternalStore(R,Z,ie)},Ge.useTransition=function(){return D.H.useTransition()},Ge.version="19.2.6",Ge}var Ty;function Db(){return Ty||(Ty=1,Ep.exports=wA()),Ep.exports}var y=Db(),jp={exports:{}},gc={},Tp={exports:{}},Ap={};var Ay;function kA(){return Ay||(Ay=1,(function(e){function t(B,V){var X=B.length;B.push(V);e:for(;0<X;){var K=X-1>>>1,te=B[K];if(0<o(te,V))B[K]=V,B[X]=te,X=K;else break e}}function s(B){return B.length===0?null:B[0]}function n(B){if(B.length===0)return null;var V=B[0],X=B.pop();if(X!==V){B[0]=X;e:for(var K=0,te=B.length,R=te>>>1;K<R;){var Z=2*(K+1)-1,ie=B[Z],de=Z+1,fe=B[de];if(0>o(ie,X))de<te&&0>o(fe,ie)?(B[K]=fe,B[de]=X,K=de):(B[K]=ie,B[Z]=X,K=Z);else if(de<te&&0>o(fe,X))B[K]=fe,B[de]=X,K=de;else break e}}return V}function o(B,V){var X=B.sortIndex-V.sortIndex;return X!==0?X:B.id-V.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var l=performance;e.unstable_now=function(){return l.now()}}else{var u=Date,h=u.now();e.unstable_now=function(){return u.now()-h}}var m=[],d=[],p=1,g=null,x=3,_=!1,S=!1,w=!1,C=!1,N=typeof setTimeout=="function"?setTimeout:null,j=typeof clearTimeout=="function"?clearTimeout:null,E=typeof setImmediate<"u"?setImmediate:null;function A(B){for(var V=s(d);V!==null;){if(V.callback===null)n(d);else if(V.startTime<=B)n(d),V.sortIndex=V.expirationTime,t(m,V);else break;V=s(d)}}function O(B){if(w=!1,A(B),!S)if(s(m)!==null)S=!0,P||(P=!0,$());else{var V=s(d);V!==null&&G(O,V.startTime-B)}}var P=!1,D=-1,T=5,z=-1;function L(){return C?!0:!(e.unstable_now()-z<T)}function I(){if(C=!1,P){var B=e.unstable_now();z=B;var V=!0;try{e:{S=!1,w&&(w=!1,j(D),D=-1),_=!0;var X=x;try{t:{for(A(B),g=s(m);g!==null&&!(g.expirationTime>B&&L());){var K=g.callback;if(typeof K=="function"){g.callback=null,x=g.priorityLevel;var te=K(g.expirationTime<=B);if(B=e.unstable_now(),typeof te=="function"){g.callback=te,A(B),V=!0;break t}g===s(m)&&n(m),A(B)}else n(m);g=s(m)}if(g!==null)V=!0;else{var R=s(d);R!==null&&G(O,R.startTime-B),V=!1}}break e}finally{g=null,x=X,_=!1}V=void 0}}finally{V?$():P=!1}}}var $;if(typeof E=="function")$=function(){E(I)};else if(typeof MessageChannel<"u"){var U=new MessageChannel,W=U.port2;U.port1.onmessage=I,$=function(){W.postMessage(null)}}else $=function(){N(I,0)};function G(B,V){D=N(function(){B(e.unstable_now())},V)}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(B){B.callback=null},e.unstable_forceFrameRate=function(B){0>B||125<B?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):T=0<B?Math.floor(1e3/B):5},e.unstable_getCurrentPriorityLevel=function(){return x},e.unstable_next=function(B){switch(x){case 1:case 2:case 3:var V=3;break;default:V=x}var X=x;x=V;try{return B()}finally{x=X}},e.unstable_requestPaint=function(){C=!0},e.unstable_runWithPriority=function(B,V){switch(B){case 1:case 2:case 3:case 4:case 5:break;default:B=3}var X=x;x=B;try{return V()}finally{x=X}},e.unstable_scheduleCallback=function(B,V,X){var K=e.unstable_now();switch(typeof X=="object"&&X!==null?(X=X.delay,X=typeof X=="number"&&0<X?K+X:K):X=K,B){case 1:var te=-1;break;case 2:te=250;break;case 5:te=1073741823;break;case 4:te=1e4;break;default:te=5e3}return te=X+te,B={id:p++,callback:V,priorityLevel:B,startTime:X,expirationTime:te,sortIndex:-1},X>K?(B.sortIndex=X,t(d,B),s(m)===null&&B===s(d)&&(w?(j(D),D=-1):w=!0,G(O,X-K))):(B.sortIndex=te,t(m,B),S||_||(S=!0,P||(P=!0,$()))),B},e.unstable_shouldYield=L,e.unstable_wrapCallback=function(B){var V=x;return function(){var X=x;x=V;try{return B.apply(this,arguments)}finally{x=X}}}})(Ap)),Ap}var My;function CA(){return My||(My=1,Tp.exports=kA()),Tp.exports}var Mp={exports:{}},Fs={};var Ry;function NA(){if(Ry)return Fs;Ry=1;var e=Db();function t(m){var d="https://react.dev/errors/"+m;if(1<arguments.length){d+="?args[]="+encodeURIComponent(arguments[1]);for(var p=2;p<arguments.length;p++)d+="&args[]="+encodeURIComponent(arguments[p])}return"Minified React error #"+m+"; visit "+d+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function s(){}var n={d:{f:s,r:function(){throw Error(t(522))},D:s,C:s,L:s,m:s,X:s,S:s,M:s},p:0,findDOMNode:null},o=Symbol.for("react.portal");function l(m,d,p){var g=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:g==null?null:""+g,children:m,containerInfo:d,implementation:p}}var u=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function h(m,d){if(m==="font")return"";if(typeof d=="string")return d==="use-credentials"?d:""}return Fs.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=n,Fs.createPortal=function(m,d){var p=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!d||d.nodeType!==1&&d.nodeType!==9&&d.nodeType!==11)throw Error(t(299));return l(m,d,null,p)},Fs.flushSync=function(m){var d=u.T,p=n.p;try{if(u.T=null,n.p=2,m)return m()}finally{u.T=d,n.p=p,n.d.f()}},Fs.preconnect=function(m,d){typeof m=="string"&&(d?(d=d.crossOrigin,d=typeof d=="string"?d==="use-credentials"?d:"":void 0):d=null,n.d.C(m,d))},Fs.prefetchDNS=function(m){typeof m=="string"&&n.d.D(m)},Fs.preinit=function(m,d){if(typeof m=="string"&&d&&typeof d.as=="string"){var p=d.as,g=h(p,d.crossOrigin),x=typeof d.integrity=="string"?d.integrity:void 0,_=typeof d.fetchPriority=="string"?d.fetchPriority:void 0;p==="style"?n.d.S(m,typeof d.precedence=="string"?d.precedence:void 0,{crossOrigin:g,integrity:x,fetchPriority:_}):p==="script"&&n.d.X(m,{crossOrigin:g,integrity:x,fetchPriority:_,nonce:typeof d.nonce=="string"?d.nonce:void 0})}},Fs.preinitModule=function(m,d){if(typeof m=="string")if(typeof d=="object"&&d!==null){if(d.as==null||d.as==="script"){var p=h(d.as,d.crossOrigin);n.d.M(m,{crossOrigin:p,integrity:typeof d.integrity=="string"?d.integrity:void 0,nonce:typeof d.nonce=="string"?d.nonce:void 0})}}else d==null&&n.d.M(m)},Fs.preload=function(m,d){if(typeof m=="string"&&typeof d=="object"&&d!==null&&typeof d.as=="string"){var p=d.as,g=h(p,d.crossOrigin);n.d.L(m,p,{crossOrigin:g,integrity:typeof d.integrity=="string"?d.integrity:void 0,nonce:typeof d.nonce=="string"?d.nonce:void 0,type:typeof d.type=="string"?d.type:void 0,fetchPriority:typeof d.fetchPriority=="string"?d.fetchPriority:void 0,referrerPolicy:typeof d.referrerPolicy=="string"?d.referrerPolicy:void 0,imageSrcSet:typeof d.imageSrcSet=="string"?d.imageSrcSet:void 0,imageSizes:typeof d.imageSizes=="string"?d.imageSizes:void 0,media:typeof d.media=="string"?d.media:void 0})}},Fs.preloadModule=function(m,d){if(typeof m=="string")if(d){var p=h(d.as,d.crossOrigin);n.d.m(m,{as:typeof d.as=="string"&&d.as!=="script"?d.as:void 0,crossOrigin:p,integrity:typeof d.integrity=="string"?d.integrity:void 0})}else n.d.m(m)},Fs.requestFormReset=function(m){n.d.r(m)},Fs.unstable_batchedUpdates=function(m,d){return m(d)},Fs.useFormState=function(m,d,p){return u.H.useFormState(m,d,p)},Fs.useFormStatus=function(){return u.H.useHostTransitionStatus()},Fs.version="19.2.6",Fs}var Dy;function cC(){if(Dy)return Mp.exports;Dy=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(),Mp.exports=NA(),Mp.exports}var Oy;function EA(){if(Oy)return gc;Oy=1;var e=CA(),t=Db(),s=cC();function n(i){var r="https://react.dev/errors/"+i;if(1<arguments.length){r+="?args[]="+encodeURIComponent(arguments[1]);for(var c=2;c<arguments.length;c++)r+="&args[]="+encodeURIComponent(arguments[c])}return"Minified React error #"+i+"; visit "+r+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function o(i){return!(!i||i.nodeType!==1&&i.nodeType!==9&&i.nodeType!==11)}function l(i){var r=i,c=i;if(i.alternate)for(;r.return;)r=r.return;else{i=r;do r=i,(r.flags&4098)!==0&&(c=r.return),i=r.return;while(i)}return r.tag===3?c:null}function u(i){if(i.tag===13){var r=i.memoizedState;if(r===null&&(i=i.alternate,i!==null&&(r=i.memoizedState)),r!==null)return r.dehydrated}return null}function h(i){if(i.tag===31){var r=i.memoizedState;if(r===null&&(i=i.alternate,i!==null&&(r=i.memoizedState)),r!==null)return r.dehydrated}return null}function m(i){if(l(i)!==i)throw Error(n(188))}function d(i){var r=i.alternate;if(!r){if(r=l(i),r===null)throw Error(n(188));return r!==i?null:i}for(var c=i,f=r;;){var b=c.return;if(b===null)break;var v=b.alternate;if(v===null){if(f=b.return,f!==null){c=f;continue}break}if(b.child===v.child){for(v=b.child;v;){if(v===c)return m(b),i;if(v===f)return m(b),r;v=v.sibling}throw Error(n(188))}if(c.return!==f.return)c=b,f=v;else{for(var k=!1,M=b.child;M;){if(M===c){k=!0,c=b,f=v;break}if(M===f){k=!0,f=b,c=v;break}M=M.sibling}if(!k){for(M=v.child;M;){if(M===c){k=!0,c=v,f=b;break}if(M===f){k=!0,f=v,c=b;break}M=M.sibling}if(!k)throw Error(n(189))}}if(c.alternate!==f)throw Error(n(190))}if(c.tag!==3)throw Error(n(188));return c.stateNode.current===c?i:r}function p(i){var r=i.tag;if(r===5||r===26||r===27||r===6)return i;for(i=i.child;i!==null;){if(r=p(i),r!==null)return r;i=i.sibling}return null}var g=Object.assign,x=Symbol.for("react.element"),_=Symbol.for("react.transitional.element"),S=Symbol.for("react.portal"),w=Symbol.for("react.fragment"),C=Symbol.for("react.strict_mode"),N=Symbol.for("react.profiler"),j=Symbol.for("react.consumer"),E=Symbol.for("react.context"),A=Symbol.for("react.forward_ref"),O=Symbol.for("react.suspense"),P=Symbol.for("react.suspense_list"),D=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),z=Symbol.for("react.activity"),L=Symbol.for("react.memo_cache_sentinel"),I=Symbol.iterator;function $(i){return i===null||typeof i!="object"?null:(i=I&&i[I]||i["@@iterator"],typeof i=="function"?i:null)}var U=Symbol.for("react.client.reference");function W(i){if(i==null)return null;if(typeof i=="function")return i.$$typeof===U?null:i.displayName||i.name||null;if(typeof i=="string")return i;switch(i){case w:return"Fragment";case N:return"Profiler";case C:return"StrictMode";case O:return"Suspense";case P:return"SuspenseList";case z:return"Activity"}if(typeof i=="object")switch(i.$$typeof){case S:return"Portal";case E:return i.displayName||"Context";case j:return(i._context.displayName||"Context")+".Consumer";case A:var r=i.render;return i=i.displayName,i||(i=r.displayName||r.name||"",i=i!==""?"ForwardRef("+i+")":"ForwardRef"),i;case D:return r=i.displayName||null,r!==null?r:W(i.type)||"Memo";case T:r=i._payload,i=i._init;try{return W(i(r))}catch{}}return null}var G=Array.isArray,B=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,V=s.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,X={pending:!1,data:null,method:null,action:null},K=[],te=-1;function R(i){return{current:i}}function Z(i){0>te||(i.current=K[te],K[te]=null,te--)}function ie(i,r){te++,K[te]=i.current,i.current=r}var de=R(null),fe=R(null),pe=R(null),Se=R(null);function Le(i,r){switch(ie(pe,r),ie(fe,i),ie(de,null),r.nodeType){case 9:case 11:i=(i=r.documentElement)&&(i=i.namespaceURI)?Y_(i):0;break;default:if(i=r.tagName,r=r.namespaceURI)r=Y_(r),i=X_(r,i);else switch(i){case"svg":i=1;break;case"math":i=2;break;default:i=0}}Z(de),ie(de,i)}function ve(){Z(de),Z(fe),Z(pe)}function We(i){i.memoizedState!==null&&ie(Se,i);var r=de.current,c=X_(r,i.type);r!==c&&(ie(fe,i),ie(de,c))}function ge(i){fe.current===i&&(Z(de),Z(fe)),Se.current===i&&(Z(Se),dc._currentValue=X)}var Te,Me;function Pt(i){if(Te===void 0)try{throw Error()}catch(c){var r=c.stack.trim().match(/\n( *(at )?)/);Te=r&&r[1]||"",Me=-1<c.stack.indexOf(`
|
|
2
|
-
at`)?" (<anonymous>)":-1<c.stack.indexOf("@")?"@unknown:0:0":""}return`
|
|
3
|
-
`+Te+i+Me}var Pi=!1;function ni(i,r){if(!i||Pi)return"";Pi=!0;var c=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var f={DetermineComponentFrameRoot:function(){try{if(r){var ce=function(){throw Error()};if(Object.defineProperty(ce.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ce,[])}catch(ne){var se=ne}Reflect.construct(i,[],ce)}else{try{ce.call()}catch(ne){se=ne}i.call(ce.prototype)}}else{try{throw Error()}catch(ne){se=ne}(ce=i())&&typeof ce.catch=="function"&&ce.catch(function(){})}}catch(ne){if(ne&&se&&typeof ne.stack=="string")return[ne.stack,se.stack]}return[null,null]}};f.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var b=Object.getOwnPropertyDescriptor(f.DetermineComponentFrameRoot,"name");b&&b.configurable&&Object.defineProperty(f.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var v=f.DetermineComponentFrameRoot(),k=v[0],M=v[1];if(k&&M){var H=k.split(`
|
|
4
|
-
`),ee=M.split(`
|
|
5
|
-
`);for(b=f=0;f<H.length&&!H[f].includes("DetermineComponentFrameRoot");)f++;for(;b<ee.length&&!ee[b].includes("DetermineComponentFrameRoot");)b++;if(f===H.length||b===ee.length)for(f=H.length-1,b=ee.length-1;1<=f&&0<=b&&H[f]!==ee[b];)b--;for(;1<=f&&0<=b;f--,b--)if(H[f]!==ee[b]){if(f!==1||b!==1)do if(f--,b--,0>b||H[f]!==ee[b]){var re=`
|
|
6
|
-
`+H[f].replace(" at new "," at ");return i.displayName&&re.includes("<anonymous>")&&(re=re.replace("<anonymous>",i.displayName)),re}while(1<=f&&0<=b);break}}}finally{Pi=!1,Error.prepareStackTrace=c}return(c=i?i.displayName||i.name:"")?Pt(c):""}function yr(i,r){switch(i.tag){case 26:case 27:case 5:return Pt(i.type);case 16:return Pt("Lazy");case 13:return i.child!==r&&r!==null?Pt("Suspense Fallback"):Pt("Suspense");case 19:return Pt("SuspenseList");case 0:case 15:return ni(i.type,!1);case 11:return ni(i.type.render,!1);case 1:return ni(i.type,!0);case 31:return Pt("Activity");default:return""}}function $i(i){try{var r="",c=null;do r+=yr(i,c),c=i,i=i.return;while(i);return r}catch(f){return`
|
|
7
|
-
Error generating stack: `+f.message+`
|
|
8
|
-
`+f.stack}}var Hi=Object.prototype.hasOwnProperty,_e=e.unstable_scheduleCallback,ft=e.unstable_cancelCallback,gn=e.unstable_shouldYield,Ts=e.unstable_requestPaint,gt=e.unstable_now,ii=e.unstable_getCurrentPriorityLevel,ds=e.unstable_ImmediatePriority,Ui=e.unstable_UserBlockingPriority,Fi=e.unstable_NormalPriority,io=e.unstable_LowPriority,Sr=e.unstable_IdlePriority,_l=e.log,ro=e.unstable_setDisableYieldValue,qi=null,_s=null;function Mn(i){if(typeof _l=="function"&&ro(i),_s&&typeof _s.setStrictMode=="function")try{_s.setStrictMode(qi,i)}catch{}}var As=Math.clz32?Math.clz32:ao,yl=Math.log,pa=Math.LN2;function ao(i){return i>>>=0,i===0?32:31-(yl(i)/pa|0)|0}var lt=256,ri=262144,bn=4194304;function $s(i){var r=i&42;if(r!==0)return r;switch(i&-i){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return i&261888;case 262144:case 524288:case 1048576:case 2097152:return i&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return i&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return i}}function F(i,r,c){var f=i.pendingLanes;if(f===0)return 0;var b=0,v=i.suspendedLanes,k=i.pingedLanes;i=i.warmLanes;var M=f&134217727;return M!==0?(f=M&~v,f!==0?b=$s(f):(k&=M,k!==0?b=$s(k):c||(c=M&~i,c!==0&&(b=$s(c))))):(M=f&~v,M!==0?b=$s(M):k!==0?b=$s(k):c||(c=f&~i,c!==0&&(b=$s(c)))),b===0?0:r!==0&&r!==b&&(r&v)===0&&(v=b&-b,c=r&-r,v>=c||v===32&&(c&4194048)!==0)?r:b}function oe(i,r){return(i.pendingLanes&~(i.suspendedLanes&~i.pingedLanes)&r)===0}function ye(i,r){switch(i){case 1:case 2:case 4:case 8:case 64:return r+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return r+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Fe(){var i=bn;return bn<<=1,(bn&62914560)===0&&(bn=4194304),i}function Mt(i){for(var r=[],c=0;31>c;c++)r.push(i);return r}function Ct(i,r){i.pendingLanes|=r,r!==268435456&&(i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0)}function Re(i,r,c,f,b,v){var k=i.pendingLanes;i.pendingLanes=c,i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0,i.expiredLanes&=c,i.entangledLanes&=c,i.errorRecoveryDisabledLanes&=c,i.shellSuspendCounter=0;var M=i.entanglements,H=i.expirationTimes,ee=i.hiddenUpdates;for(c=k&~c;0<c;){var re=31-As(c),ce=1<<re;M[re]=0,H[re]=-1;var se=ee[re];if(se!==null)for(ee[re]=null,re=0;re<se.length;re++){var ne=se[re];ne!==null&&(ne.lane&=-536870913)}c&=~ce}f!==0&&ke(i,f,0),v!==0&&b===0&&i.tag!==0&&(i.suspendedLanes|=v&~(k&~r))}function ke(i,r,c){i.pendingLanes|=r,i.suspendedLanes&=~r;var f=31-As(r);i.entangledLanes|=r,i.entanglements[f]=i.entanglements[f]|1073741824|c&261930}function Ue(i,r){var c=i.entangledLanes|=r;for(i=i.entanglements;c;){var f=31-As(c),b=1<<f;b&r|i[f]&r&&(i[f]|=r),c&=~b}}function Kt(i,r){var c=r&-r;return c=(c&42)!==0?1:zt(c),(c&(i.suspendedLanes|r))!==0?0:c}function zt(i){switch(i){case 2:i=1;break;case 8:i=4;break;case 32:i=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:i=128;break;case 268435456:i=134217728;break;default:i=0}return i}function Vi(i){return i&=-i,2<i?8<i?(i&134217727)!==0?32:268435456:8:2}function oo(){var i=V.p;return i!==0?i:(i=window.event,i===void 0?32:vy(i.type))}function lo(i,r){var c=V.p;try{return V.p=i,r()}finally{V.p=c}}var _i=Math.random().toString(36).slice(2),Yt="__reactFiber$"+_i,Hs="__reactProps$"+_i,wr="__reactContainer$"+_i,Sl="__reactEvents$"+_i,Cu="__reactListeners$"+_i,co="__reactHandles$"+_i,Nu="__reactResources$"+_i,ga="__reactMarker$"+_i;function wl(i){delete i[Yt],delete i[Hs],delete i[Sl],delete i[Cu],delete i[co]}function Ks(i){var r=i[Yt];if(r)return r;for(var c=i.parentNode;c;){if(r=c[wr]||c[Yt]){if(c=r.alternate,r.child!==null||c!==null&&c.child!==null)for(i=ny(i);i!==null;){if(c=i[Yt])return c;i=ny(i)}return r}i=c,c=i.parentNode}return null}function Gi(i){if(i=i[Yt]||i[wr]){var r=i.tag;if(r===5||r===6||r===13||r===31||r===26||r===27||r===3)return i}return null}function kr(i){var r=i.tag;if(r===5||r===26||r===27||r===6)return i.stateNode;throw Error(n(33))}function Cr(i){var r=i[Nu];return r||(r=i[Nu]={hoistableStyles:new Map,hoistableScripts:new Map}),r}function es(i){i[ga]=!0}var Eu=new Set,ba={};function Wi(i,r){me(i,r),me(i+"Capture",r)}function me(i,r){for(ba[i]=r,i=0;i<r.length;i++)Eu.add(r[i])}var ze=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),et={},bt={};function Xt(i){return Hi.call(bt,i)?!0:Hi.call(et,i)?!1:ze.test(i)?bt[i]=!0:(et[i]=!0,!1)}function Us(i,r,c){if(Xt(r))if(c===null)i.removeAttribute(r);else{switch(typeof c){case"undefined":case"function":case"symbol":i.removeAttribute(r);return;case"boolean":var f=r.toLowerCase().slice(0,5);if(f!=="data-"&&f!=="aria-"){i.removeAttribute(r);return}}i.setAttribute(r,""+c)}}function xn(i,r,c){if(c===null)i.removeAttribute(r);else{switch(typeof c){case"undefined":case"function":case"symbol":case"boolean":i.removeAttribute(r);return}i.setAttribute(r,""+c)}}function sn(i,r,c,f){if(f===null)i.removeAttribute(c);else{switch(typeof f){case"undefined":case"function":case"symbol":case"boolean":i.removeAttribute(c);return}i.setAttributeNS(r,c,""+f)}}function jt(i){switch(typeof i){case"bigint":case"boolean":case"number":case"string":case"undefined":return i;case"object":return i;default:return""}}function vn(i){var r=i.type;return(i=i.nodeName)&&i.toLowerCase()==="input"&&(r==="checkbox"||r==="radio")}function ju(i,r,c){var f=Object.getOwnPropertyDescriptor(i.constructor.prototype,r);if(!i.hasOwnProperty(r)&&typeof f<"u"&&typeof f.get=="function"&&typeof f.set=="function"){var b=f.get,v=f.set;return Object.defineProperty(i,r,{configurable:!0,get:function(){return b.call(this)},set:function(k){c=""+k,v.call(this,k)}}),Object.defineProperty(i,r,{enumerable:f.enumerable}),{getValue:function(){return c},setValue:function(k){c=""+k},stopTracking:function(){i._valueTracker=null,delete i[r]}}}}function uo(i){if(!i._valueTracker){var r=vn(i)?"checked":"value";i._valueTracker=ju(i,r,""+i[r])}}function kl(i){if(!i)return!1;var r=i._valueTracker;if(!r)return!0;var c=r.getValue(),f="";return i&&(f=vn(i)?i.checked?"true":"false":i.value),i=f,i!==c?(r.setValue(i),!0):!1}function ho(i){if(i=i||(typeof document<"u"?document:void 0),typeof i>"u")return null;try{return i.activeElement||i.body}catch{return i.body}}var Cf=/[\n"\\]/g;function nn(i){return i.replace(Cf,function(r){return"\\"+r.charCodeAt(0).toString(16)+" "})}function Cl(i,r,c,f,b,v,k,M){i.name="",k!=null&&typeof k!="function"&&typeof k!="symbol"&&typeof k!="boolean"?i.type=k:i.removeAttribute("type"),r!=null?k==="number"?(r===0&&i.value===""||i.value!=r)&&(i.value=""+jt(r)):i.value!==""+jt(r)&&(i.value=""+jt(r)):k!=="submit"&&k!=="reset"||i.removeAttribute("value"),r!=null?fo(i,k,jt(r)):c!=null?fo(i,k,jt(c)):f!=null&&i.removeAttribute("value"),b==null&&v!=null&&(i.defaultChecked=!!v),b!=null&&(i.checked=b&&typeof b!="function"&&typeof b!="symbol"),M!=null&&typeof M!="function"&&typeof M!="symbol"&&typeof M!="boolean"?i.name=""+jt(M):i.removeAttribute("name")}function xa(i,r,c,f,b,v,k,M){if(v!=null&&typeof v!="function"&&typeof v!="symbol"&&typeof v!="boolean"&&(i.type=v),r!=null||c!=null){if(!(v!=="submit"&&v!=="reset"||r!=null)){uo(i);return}c=c!=null?""+jt(c):"",r=r!=null?""+jt(r):c,M||r===i.value||(i.value=r),i.defaultValue=r}f=f??b,f=typeof f!="function"&&typeof f!="symbol"&&!!f,i.checked=M?i.checked:!!f,i.defaultChecked=!!f,k!=null&&typeof k!="function"&&typeof k!="symbol"&&typeof k!="boolean"&&(i.name=k),uo(i)}function fo(i,r,c){r==="number"&&ho(i.ownerDocument)===i||i.defaultValue===""+c||(i.defaultValue=""+c)}function Ms(i,r,c,f){if(i=i.options,r){r={};for(var b=0;b<c.length;b++)r["$"+c[b]]=!0;for(c=0;c<i.length;c++)b=r.hasOwnProperty("$"+i[c].value),i[c].selected!==b&&(i[c].selected=b),b&&f&&(i[c].defaultSelected=!0)}else{for(c=""+jt(c),r=null,b=0;b<i.length;b++){if(i[b].value===c){i[b].selected=!0,f&&(i[b].defaultSelected=!0);return}r!==null||i[b].disabled||(r=i[b])}r!==null&&(r.selected=!0)}}function Tu(i,r,c){if(r!=null&&(r=""+jt(r),r!==i.value&&(i.value=r),c==null)){i.defaultValue!==r&&(i.defaultValue=r);return}i.defaultValue=c!=null?""+jt(c):""}function mo(i,r,c,f){if(r==null){if(f!=null){if(c!=null)throw Error(n(92));if(G(f)){if(1<f.length)throw Error(n(93));f=f[0]}c=f}c==null&&(c=""),r=c}c=jt(r),i.defaultValue=c,f=i.textContent,f===c&&f!==""&&f!==null&&(i.value=f),uo(i)}function He(i,r){if(r){var c=i.firstChild;if(c&&c===i.lastChild&&c.nodeType===3){c.nodeValue=r;return}}i.textContent=r}var Au=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function ts(i,r,c){var f=r.indexOf("--")===0;c==null||typeof c=="boolean"||c===""?f?i.setProperty(r,""):r==="float"?i.cssFloat="":i[r]="":f?i.setProperty(r,c):typeof c!="number"||c===0||Au.has(r)?r==="float"?i.cssFloat=c:i[r]=(""+c).trim():i[r]=c+"px"}function xt(i,r,c){if(r!=null&&typeof r!="object")throw Error(n(62));if(i=i.style,c!=null){for(var f in c)!c.hasOwnProperty(f)||r!=null&&r.hasOwnProperty(f)||(f.indexOf("--")===0?i.setProperty(f,""):f==="float"?i.cssFloat="":i[f]="");for(var b in r)f=r[b],r.hasOwnProperty(b)&&c[b]!==f&&ts(i,b,f)}else for(var v in r)r.hasOwnProperty(v)&&ts(i,v,r[v])}function Nr(i){if(i.indexOf("-")===-1)return!1;switch(i){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Ki=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["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"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["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"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["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"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),Nl=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Er(i){return Nl.test(""+i)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":i}function xe(){}var De=null;function Ke(i){return i=i.target||i.srcElement||window,i.correspondingUseElement&&(i=i.correspondingUseElement),i.nodeType===3?i.parentNode:i}var it=null,$t=null;function Rn(i){var r=Gi(i);if(r&&(i=r.stateNode)){var c=i[Hs]||null;e:switch(i=r.stateNode,r.type){case"input":if(Cl(i,c.value,c.defaultValue,c.defaultValue,c.checked,c.defaultChecked,c.type,c.name),r=c.name,c.type==="radio"&&r!=null){for(c=i;c.parentNode;)c=c.parentNode;for(c=c.querySelectorAll('input[name="'+nn(""+r)+'"][type="radio"]'),r=0;r<c.length;r++){var f=c[r];if(f!==i&&f.form===i.form){var b=f[Hs]||null;if(!b)throw Error(n(90));Cl(f,b.value,b.defaultValue,b.defaultValue,b.checked,b.defaultChecked,b.type,b.name)}}for(r=0;r<c.length;r++)f=c[r],f.form===i.form&&kl(f)}break e;case"textarea":Tu(i,c.value,c.defaultValue);break e;case"select":r=c.value,r!=null&&Ms(i,!!c.multiple,r,!1)}}}var El=!1;function Mu(i,r,c){if(El)return i(r,c);El=!0;try{var f=i(r);return f}finally{if(El=!1,(it!==null||$t!==null)&&(xd(),it&&(r=it,i=$t,$t=it=null,Rn(r),i)))for(r=0;r<i.length;r++)Rn(i[r])}}function jl(i,r){var c=i.stateNode;if(c===null)return null;var f=c[Hs]||null;if(f===null)return null;c=f[r];e:switch(r){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(f=!f.disabled)||(i=i.type,f=!(i==="button"||i==="input"||i==="select"||i==="textarea")),i=!f;break e;default:i=!1}if(i)return null;if(c&&typeof c!="function")throw Error(n(231,r,typeof c));return c}var Yi=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Nf=!1;if(Yi)try{var Tl={};Object.defineProperty(Tl,"passive",{get:function(){Nf=!0}}),window.addEventListener("test",Tl,Tl),window.removeEventListener("test",Tl,Tl)}catch{Nf=!1}var jr=null,Ef=null,Ru=null;function Xx(){if(Ru)return Ru;var i,r=Ef,c=r.length,f,b="value"in jr?jr.value:jr.textContent,v=b.length;for(i=0;i<c&&r[i]===b[i];i++);var k=c-i;for(f=1;f<=k&&r[c-f]===b[v-f];f++);return Ru=b.slice(i,1<f?1-f:void 0)}function Du(i){var r=i.keyCode;return"charCode"in i?(i=i.charCode,i===0&&r===13&&(i=13)):i=r,i===10&&(i=13),32<=i||i===13?i:0}function Ou(){return!0}function Zx(){return!1}function rn(i){function r(c,f,b,v,k){this._reactName=c,this._targetInst=b,this.type=f,this.nativeEvent=v,this.target=k,this.currentTarget=null;for(var M in i)i.hasOwnProperty(M)&&(c=i[M],this[M]=c?c(v):v[M]);return this.isDefaultPrevented=(v.defaultPrevented!=null?v.defaultPrevented:v.returnValue===!1)?Ou:Zx,this.isPropagationStopped=Zx,this}return g(r.prototype,{preventDefault:function(){this.defaultPrevented=!0;var c=this.nativeEvent;c&&(c.preventDefault?c.preventDefault():typeof c.returnValue!="unknown"&&(c.returnValue=!1),this.isDefaultPrevented=Ou)},stopPropagation:function(){var c=this.nativeEvent;c&&(c.stopPropagation?c.stopPropagation():typeof c.cancelBubble!="unknown"&&(c.cancelBubble=!0),this.isPropagationStopped=Ou)},persist:function(){},isPersistent:Ou}),r}var va={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(i){return i.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Lu=rn(va),Al=g({},va,{view:0,detail:0}),xj=rn(Al),jf,Tf,Ml,zu=g({},Al,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Mf,button:0,buttons:0,relatedTarget:function(i){return i.relatedTarget===void 0?i.fromElement===i.srcElement?i.toElement:i.fromElement:i.relatedTarget},movementX:function(i){return"movementX"in i?i.movementX:(i!==Ml&&(Ml&&i.type==="mousemove"?(jf=i.screenX-Ml.screenX,Tf=i.screenY-Ml.screenY):Tf=jf=0,Ml=i),jf)},movementY:function(i){return"movementY"in i?i.movementY:Tf}}),Qx=rn(zu),vj=g({},zu,{dataTransfer:0}),_j=rn(vj),yj=g({},Al,{relatedTarget:0}),Af=rn(yj),Sj=g({},va,{animationName:0,elapsedTime:0,pseudoElement:0}),wj=rn(Sj),kj=g({},va,{clipboardData:function(i){return"clipboardData"in i?i.clipboardData:window.clipboardData}}),Cj=rn(kj),Nj=g({},va,{data:0}),Jx=rn(Nj),Ej={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},jj={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Tj={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Aj(i){var r=this.nativeEvent;return r.getModifierState?r.getModifierState(i):(i=Tj[i])?!!r[i]:!1}function Mf(){return Aj}var Mj=g({},Al,{key:function(i){if(i.key){var r=Ej[i.key]||i.key;if(r!=="Unidentified")return r}return i.type==="keypress"?(i=Du(i),i===13?"Enter":String.fromCharCode(i)):i.type==="keydown"||i.type==="keyup"?jj[i.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Mf,charCode:function(i){return i.type==="keypress"?Du(i):0},keyCode:function(i){return i.type==="keydown"||i.type==="keyup"?i.keyCode:0},which:function(i){return i.type==="keypress"?Du(i):i.type==="keydown"||i.type==="keyup"?i.keyCode:0}}),Rj=rn(Mj),Dj=g({},zu,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),ev=rn(Dj),Oj=g({},Al,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Mf}),Lj=rn(Oj),zj=g({},va,{propertyName:0,elapsedTime:0,pseudoElement:0}),Bj=rn(zj),Ij=g({},zu,{deltaX:function(i){return"deltaX"in i?i.deltaX:"wheelDeltaX"in i?-i.wheelDeltaX:0},deltaY:function(i){return"deltaY"in i?i.deltaY:"wheelDeltaY"in i?-i.wheelDeltaY:"wheelDelta"in i?-i.wheelDelta:0},deltaZ:0,deltaMode:0}),Pj=rn(Ij),$j=g({},va,{newState:0,oldState:0}),Hj=rn($j),Uj=[9,13,27,32],Rf=Yi&&"CompositionEvent"in window,Rl=null;Yi&&"documentMode"in document&&(Rl=document.documentMode);var Fj=Yi&&"TextEvent"in window&&!Rl,tv=Yi&&(!Rf||Rl&&8<Rl&&11>=Rl),sv=" ",nv=!1;function iv(i,r){switch(i){case"keyup":return Uj.indexOf(r.keyCode)!==-1;case"keydown":return r.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function rv(i){return i=i.detail,typeof i=="object"&&"data"in i?i.data:null}var po=!1;function qj(i,r){switch(i){case"compositionend":return rv(r);case"keypress":return r.which!==32?null:(nv=!0,sv);case"textInput":return i=r.data,i===sv&&nv?null:i;default:return null}}function Vj(i,r){if(po)return i==="compositionend"||!Rf&&iv(i,r)?(i=Xx(),Ru=Ef=jr=null,po=!1,i):null;switch(i){case"paste":return null;case"keypress":if(!(r.ctrlKey||r.altKey||r.metaKey)||r.ctrlKey&&r.altKey){if(r.char&&1<r.char.length)return r.char;if(r.which)return String.fromCharCode(r.which)}return null;case"compositionend":return tv&&r.locale!=="ko"?null:r.data;default:return null}}var Gj={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function av(i){var r=i&&i.nodeName&&i.nodeName.toLowerCase();return r==="input"?!!Gj[i.type]:r==="textarea"}function ov(i,r,c,f){it?$t?$t.push(f):$t=[f]:it=f,r=Cd(r,"onChange"),0<r.length&&(c=new Lu("onChange","change",null,c,f),i.push({event:c,listeners:r}))}var Dl=null,Ol=null;function Wj(i){F_(i,0)}function Bu(i){var r=kr(i);if(kl(r))return i}function lv(i,r){if(i==="change")return r}var cv=!1;if(Yi){var Df;if(Yi){var Of="oninput"in document;if(!Of){var uv=document.createElement("div");uv.setAttribute("oninput","return;"),Of=typeof uv.oninput=="function"}Df=Of}else Df=!1;cv=Df&&(!document.documentMode||9<document.documentMode)}function dv(){Dl&&(Dl.detachEvent("onpropertychange",hv),Ol=Dl=null)}function hv(i){if(i.propertyName==="value"&&Bu(Ol)){var r=[];ov(r,Ol,i,Ke(i)),Mu(Wj,r)}}function Kj(i,r,c){i==="focusin"?(dv(),Dl=r,Ol=c,Dl.attachEvent("onpropertychange",hv)):i==="focusout"&&dv()}function Yj(i){if(i==="selectionchange"||i==="keyup"||i==="keydown")return Bu(Ol)}function Xj(i,r){if(i==="click")return Bu(r)}function Zj(i,r){if(i==="input"||i==="change")return Bu(r)}function Qj(i,r){return i===r&&(i!==0||1/i===1/r)||i!==i&&r!==r}var _n=typeof Object.is=="function"?Object.is:Qj;function Ll(i,r){if(_n(i,r))return!0;if(typeof i!="object"||i===null||typeof r!="object"||r===null)return!1;var c=Object.keys(i),f=Object.keys(r);if(c.length!==f.length)return!1;for(f=0;f<c.length;f++){var b=c[f];if(!Hi.call(r,b)||!_n(i[b],r[b]))return!1}return!0}function fv(i){for(;i&&i.firstChild;)i=i.firstChild;return i}function mv(i,r){var c=fv(i);i=0;for(var f;c;){if(c.nodeType===3){if(f=i+c.textContent.length,i<=r&&f>=r)return{node:c,offset:r-i};i=f}e:{for(;c;){if(c.nextSibling){c=c.nextSibling;break e}c=c.parentNode}c=void 0}c=fv(c)}}function pv(i,r){return i&&r?i===r?!0:i&&i.nodeType===3?!1:r&&r.nodeType===3?pv(i,r.parentNode):"contains"in i?i.contains(r):i.compareDocumentPosition?!!(i.compareDocumentPosition(r)&16):!1:!1}function gv(i){i=i!=null&&i.ownerDocument!=null&&i.ownerDocument.defaultView!=null?i.ownerDocument.defaultView:window;for(var r=ho(i.document);r instanceof i.HTMLIFrameElement;){try{var c=typeof r.contentWindow.location.href=="string"}catch{c=!1}if(c)i=r.contentWindow;else break;r=ho(i.document)}return r}function Lf(i){var r=i&&i.nodeName&&i.nodeName.toLowerCase();return r&&(r==="input"&&(i.type==="text"||i.type==="search"||i.type==="tel"||i.type==="url"||i.type==="password")||r==="textarea"||i.contentEditable==="true")}var Jj=Yi&&"documentMode"in document&&11>=document.documentMode,go=null,zf=null,zl=null,Bf=!1;function bv(i,r,c){var f=c.window===c?c.document:c.nodeType===9?c:c.ownerDocument;Bf||go==null||go!==ho(f)||(f=go,"selectionStart"in f&&Lf(f)?f={start:f.selectionStart,end:f.selectionEnd}:(f=(f.ownerDocument&&f.ownerDocument.defaultView||window).getSelection(),f={anchorNode:f.anchorNode,anchorOffset:f.anchorOffset,focusNode:f.focusNode,focusOffset:f.focusOffset}),zl&&Ll(zl,f)||(zl=f,f=Cd(zf,"onSelect"),0<f.length&&(r=new Lu("onSelect","select",null,r,c),i.push({event:r,listeners:f}),r.target=go)))}function _a(i,r){var c={};return c[i.toLowerCase()]=r.toLowerCase(),c["Webkit"+i]="webkit"+r,c["Moz"+i]="moz"+r,c}var bo={animationend:_a("Animation","AnimationEnd"),animationiteration:_a("Animation","AnimationIteration"),animationstart:_a("Animation","AnimationStart"),transitionrun:_a("Transition","TransitionRun"),transitionstart:_a("Transition","TransitionStart"),transitioncancel:_a("Transition","TransitionCancel"),transitionend:_a("Transition","TransitionEnd")},If={},xv={};Yi&&(xv=document.createElement("div").style,"AnimationEvent"in window||(delete bo.animationend.animation,delete bo.animationiteration.animation,delete bo.animationstart.animation),"TransitionEvent"in window||delete bo.transitionend.transition);function ya(i){if(If[i])return If[i];if(!bo[i])return i;var r=bo[i],c;for(c in r)if(r.hasOwnProperty(c)&&c in xv)return If[i]=r[c];return i}var vv=ya("animationend"),_v=ya("animationiteration"),yv=ya("animationstart"),eT=ya("transitionrun"),tT=ya("transitionstart"),sT=ya("transitioncancel"),Sv=ya("transitionend"),wv=new Map,Pf="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");Pf.push("scrollEnd");function ai(i,r){wv.set(i,r),Wi(r,[i])}var Iu=typeof reportError=="function"?reportError:function(i){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var r=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof i=="object"&&i!==null&&typeof i.message=="string"?String(i.message):String(i),error:i});if(!window.dispatchEvent(r))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",i);return}console.error(i)},Dn=[],xo=0,$f=0;function Pu(){for(var i=xo,r=$f=xo=0;r<i;){var c=Dn[r];Dn[r++]=null;var f=Dn[r];Dn[r++]=null;var b=Dn[r];Dn[r++]=null;var v=Dn[r];if(Dn[r++]=null,f!==null&&b!==null){var k=f.pending;k===null?b.next=b:(b.next=k.next,k.next=b),f.pending=b}v!==0&&kv(c,b,v)}}function $u(i,r,c,f){Dn[xo++]=i,Dn[xo++]=r,Dn[xo++]=c,Dn[xo++]=f,$f|=f,i.lanes|=f,i=i.alternate,i!==null&&(i.lanes|=f)}function Hf(i,r,c,f){return $u(i,r,c,f),Hu(i)}function Sa(i,r){return $u(i,null,null,r),Hu(i)}function kv(i,r,c){i.lanes|=c;var f=i.alternate;f!==null&&(f.lanes|=c);for(var b=!1,v=i.return;v!==null;)v.childLanes|=c,f=v.alternate,f!==null&&(f.childLanes|=c),v.tag===22&&(i=v.stateNode,i===null||i._visibility&1||(b=!0)),i=v,v=v.return;return i.tag===3?(v=i.stateNode,b&&r!==null&&(b=31-As(c),i=v.hiddenUpdates,f=i[b],f===null?i[b]=[r]:f.push(r),r.lane=c|536870912),v):null}function Hu(i){if(50<ic)throw ic=0,Xm=null,Error(n(185));for(var r=i.return;r!==null;)i=r,r=i.return;return i.tag===3?i.stateNode:null}var vo={};function nT(i,r,c,f){this.tag=i,this.key=c,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=r,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=f,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function yn(i,r,c,f){return new nT(i,r,c,f)}function Uf(i){return i=i.prototype,!(!i||!i.isReactComponent)}function Xi(i,r){var c=i.alternate;return c===null?(c=yn(i.tag,r,i.key,i.mode),c.elementType=i.elementType,c.type=i.type,c.stateNode=i.stateNode,c.alternate=i,i.alternate=c):(c.pendingProps=r,c.type=i.type,c.flags=0,c.subtreeFlags=0,c.deletions=null),c.flags=i.flags&65011712,c.childLanes=i.childLanes,c.lanes=i.lanes,c.child=i.child,c.memoizedProps=i.memoizedProps,c.memoizedState=i.memoizedState,c.updateQueue=i.updateQueue,r=i.dependencies,c.dependencies=r===null?null:{lanes:r.lanes,firstContext:r.firstContext},c.sibling=i.sibling,c.index=i.index,c.ref=i.ref,c.refCleanup=i.refCleanup,c}function Cv(i,r){i.flags&=65011714;var c=i.alternate;return c===null?(i.childLanes=0,i.lanes=r,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=c.childLanes,i.lanes=c.lanes,i.child=c.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=c.memoizedProps,i.memoizedState=c.memoizedState,i.updateQueue=c.updateQueue,i.type=c.type,r=c.dependencies,i.dependencies=r===null?null:{lanes:r.lanes,firstContext:r.firstContext}),i}function Uu(i,r,c,f,b,v){var k=0;if(f=i,typeof i=="function")Uf(i)&&(k=1);else if(typeof i=="string")k=lA(i,c,de.current)?26:i==="html"||i==="head"||i==="body"?27:5;else e:switch(i){case z:return i=yn(31,c,r,b),i.elementType=z,i.lanes=v,i;case w:return wa(c.children,b,v,r);case C:k=8,b|=24;break;case N:return i=yn(12,c,r,b|2),i.elementType=N,i.lanes=v,i;case O:return i=yn(13,c,r,b),i.elementType=O,i.lanes=v,i;case P:return i=yn(19,c,r,b),i.elementType=P,i.lanes=v,i;default:if(typeof i=="object"&&i!==null)switch(i.$$typeof){case E:k=10;break e;case j:k=9;break e;case A:k=11;break e;case D:k=14;break e;case T:k=16,f=null;break e}k=29,c=Error(n(130,i===null?"null":typeof i,"")),f=null}return r=yn(k,c,r,b),r.elementType=i,r.type=f,r.lanes=v,r}function wa(i,r,c,f){return i=yn(7,i,f,r),i.lanes=c,i}function Ff(i,r,c){return i=yn(6,i,null,r),i.lanes=c,i}function Nv(i){var r=yn(18,null,null,0);return r.stateNode=i,r}function qf(i,r,c){return r=yn(4,i.children!==null?i.children:[],i.key,r),r.lanes=c,r.stateNode={containerInfo:i.containerInfo,pendingChildren:null,implementation:i.implementation},r}var Ev=new WeakMap;function On(i,r){if(typeof i=="object"&&i!==null){var c=Ev.get(i);return c!==void 0?c:(r={value:i,source:r,stack:$i(r)},Ev.set(i,r),r)}return{value:i,source:r,stack:$i(r)}}var _o=[],yo=0,Fu=null,Bl=0,Ln=[],zn=0,Tr=null,yi=1,Si="";function Zi(i,r){_o[yo++]=Bl,_o[yo++]=Fu,Fu=i,Bl=r}function jv(i,r,c){Ln[zn++]=yi,Ln[zn++]=Si,Ln[zn++]=Tr,Tr=i;var f=yi;i=Si;var b=32-As(f)-1;f&=~(1<<b),c+=1;var v=32-As(r)+b;if(30<v){var k=b-b%5;v=(f&(1<<k)-1).toString(32),f>>=k,b-=k,yi=1<<32-As(r)+b|c<<b|f,Si=v+i}else yi=1<<v|c<<b|f,Si=i}function Vf(i){i.return!==null&&(Zi(i,1),jv(i,1,0))}function Gf(i){for(;i===Fu;)Fu=_o[--yo],_o[yo]=null,Bl=_o[--yo],_o[yo]=null;for(;i===Tr;)Tr=Ln[--zn],Ln[zn]=null,Si=Ln[--zn],Ln[zn]=null,yi=Ln[--zn],Ln[zn]=null}function Tv(i,r){Ln[zn++]=yi,Ln[zn++]=Si,Ln[zn++]=Tr,yi=r.id,Si=r.overflow,Tr=i}var Rs=null,Rt=null,ot=!1,Ar=null,Bn=!1,Wf=Error(n(519));function Mr(i){var r=Error(n(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Il(On(r,i)),Wf}function Av(i){var r=i.stateNode,c=i.type,f=i.memoizedProps;switch(r[Yt]=i,r[Hs]=f,c){case"dialog":st("cancel",r),st("close",r);break;case"iframe":case"object":case"embed":st("load",r);break;case"video":case"audio":for(c=0;c<ac.length;c++)st(ac[c],r);break;case"source":st("error",r);break;case"img":case"image":case"link":st("error",r),st("load",r);break;case"details":st("toggle",r);break;case"input":st("invalid",r),xa(r,f.value,f.defaultValue,f.checked,f.defaultChecked,f.type,f.name,!0);break;case"select":st("invalid",r);break;case"textarea":st("invalid",r),mo(r,f.value,f.defaultValue,f.children)}c=f.children,typeof c!="string"&&typeof c!="number"&&typeof c!="bigint"||r.textContent===""+c||f.suppressHydrationWarning===!0||W_(r.textContent,c)?(f.popover!=null&&(st("beforetoggle",r),st("toggle",r)),f.onScroll!=null&&st("scroll",r),f.onScrollEnd!=null&&st("scrollend",r),f.onClick!=null&&(r.onclick=xe),r=!0):r=!1,r||Mr(i,!0)}function Mv(i){for(Rs=i.return;Rs;)switch(Rs.tag){case 5:case 31:case 13:Bn=!1;return;case 27:case 3:Bn=!0;return;default:Rs=Rs.return}}function So(i){if(i!==Rs)return!1;if(!ot)return Mv(i),ot=!0,!1;var r=i.tag,c;if((c=r!==3&&r!==27)&&((c=r===5)&&(c=i.type,c=!(c!=="form"&&c!=="button")||dp(i.type,i.memoizedProps)),c=!c),c&&Rt&&Mr(i),Mv(i),r===13){if(i=i.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(n(317));Rt=sy(i)}else if(r===31){if(i=i.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(n(317));Rt=sy(i)}else r===27?(r=Rt,Vr(i.type)?(i=gp,gp=null,Rt=i):Rt=r):Rt=Rs?Pn(i.stateNode.nextSibling):null;return!0}function ka(){Rt=Rs=null,ot=!1}function Kf(){var i=Ar;return i!==null&&(cn===null?cn=i:cn.push.apply(cn,i),Ar=null),i}function Il(i){Ar===null?Ar=[i]:Ar.push(i)}var Yf=R(null),Ca=null,Qi=null;function Rr(i,r,c){ie(Yf,r._currentValue),r._currentValue=c}function Ji(i){i._currentValue=Yf.current,Z(Yf)}function Xf(i,r,c){for(;i!==null;){var f=i.alternate;if((i.childLanes&r)!==r?(i.childLanes|=r,f!==null&&(f.childLanes|=r)):f!==null&&(f.childLanes&r)!==r&&(f.childLanes|=r),i===c)break;i=i.return}}function Zf(i,r,c,f){var b=i.child;for(b!==null&&(b.return=i);b!==null;){var v=b.dependencies;if(v!==null){var k=b.child;v=v.firstContext;e:for(;v!==null;){var M=v;v=b;for(var H=0;H<r.length;H++)if(M.context===r[H]){v.lanes|=c,M=v.alternate,M!==null&&(M.lanes|=c),Xf(v.return,c,i),f||(k=null);break e}v=M.next}}else if(b.tag===18){if(k=b.return,k===null)throw Error(n(341));k.lanes|=c,v=k.alternate,v!==null&&(v.lanes|=c),Xf(k,c,i),k=null}else k=b.child;if(k!==null)k.return=b;else for(k=b;k!==null;){if(k===i){k=null;break}if(b=k.sibling,b!==null){b.return=k.return,k=b;break}k=k.return}b=k}}function wo(i,r,c,f){i=null;for(var b=r,v=!1;b!==null;){if(!v){if((b.flags&524288)!==0)v=!0;else if((b.flags&262144)!==0)break}if(b.tag===10){var k=b.alternate;if(k===null)throw Error(n(387));if(k=k.memoizedProps,k!==null){var M=b.type;_n(b.pendingProps.value,k.value)||(i!==null?i.push(M):i=[M])}}else if(b===Se.current){if(k=b.alternate,k===null)throw Error(n(387));k.memoizedState.memoizedState!==b.memoizedState.memoizedState&&(i!==null?i.push(dc):i=[dc])}b=b.return}i!==null&&Zf(r,i,c,f),r.flags|=262144}function qu(i){for(i=i.firstContext;i!==null;){if(!_n(i.context._currentValue,i.memoizedValue))return!0;i=i.next}return!1}function Na(i){Ca=i,Qi=null,i=i.dependencies,i!==null&&(i.firstContext=null)}function Ds(i){return Rv(Ca,i)}function Vu(i,r){return Ca===null&&Na(i),Rv(i,r)}function Rv(i,r){var c=r._currentValue;if(r={context:r,memoizedValue:c,next:null},Qi===null){if(i===null)throw Error(n(308));Qi=r,i.dependencies={lanes:0,firstContext:r},i.flags|=524288}else Qi=Qi.next=r;return c}var iT=typeof AbortController<"u"?AbortController:function(){var i=[],r=this.signal={aborted:!1,addEventListener:function(c,f){i.push(f)}};this.abort=function(){r.aborted=!0,i.forEach(function(c){return c()})}},rT=e.unstable_scheduleCallback,aT=e.unstable_NormalPriority,ss={$$typeof:E,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Qf(){return{controller:new iT,data:new Map,refCount:0}}function Pl(i){i.refCount--,i.refCount===0&&rT(aT,function(){i.controller.abort()})}var $l=null,Jf=0,ko=0,Co=null;function oT(i,r){if($l===null){var c=$l=[];Jf=0,ko=sp(),Co={status:"pending",value:void 0,then:function(f){c.push(f)}}}return Jf++,r.then(Dv,Dv),r}function Dv(){if(--Jf===0&&$l!==null){Co!==null&&(Co.status="fulfilled");var i=$l;$l=null,ko=0,Co=null;for(var r=0;r<i.length;r++)(0,i[r])()}}function lT(i,r){var c=[],f={status:"pending",value:null,reason:null,then:function(b){c.push(b)}};return i.then(function(){f.status="fulfilled",f.value=r;for(var b=0;b<c.length;b++)(0,c[b])(r)},function(b){for(f.status="rejected",f.reason=b,b=0;b<c.length;b++)(0,c[b])(void 0)}),f}var Ov=B.S;B.S=function(i,r){b_=gt(),typeof r=="object"&&r!==null&&typeof r.then=="function"&&oT(i,r),Ov!==null&&Ov(i,r)};var Ea=R(null);function em(){var i=Ea.current;return i!==null?i:Nt.pooledCache}function Gu(i,r){r===null?ie(Ea,Ea.current):ie(Ea,r.pool)}function Lv(){var i=em();return i===null?null:{parent:ss._currentValue,pool:i}}var No=Error(n(460)),tm=Error(n(474)),Wu=Error(n(542)),Ku={then:function(){}};function zv(i){return i=i.status,i==="fulfilled"||i==="rejected"}function Bv(i,r,c){switch(c=i[c],c===void 0?i.push(r):c!==r&&(r.then(xe,xe),r=c),r.status){case"fulfilled":return r.value;case"rejected":throw i=r.reason,Pv(i),i;default:if(typeof r.status=="string")r.then(xe,xe);else{if(i=Nt,i!==null&&100<i.shellSuspendCounter)throw Error(n(482));i=r,i.status="pending",i.then(function(f){if(r.status==="pending"){var b=r;b.status="fulfilled",b.value=f}},function(f){if(r.status==="pending"){var b=r;b.status="rejected",b.reason=f}})}switch(r.status){case"fulfilled":return r.value;case"rejected":throw i=r.reason,Pv(i),i}throw Ta=r,No}}function ja(i){try{var r=i._init;return r(i._payload)}catch(c){throw c!==null&&typeof c=="object"&&typeof c.then=="function"?(Ta=c,No):c}}var Ta=null;function Iv(){if(Ta===null)throw Error(n(459));var i=Ta;return Ta=null,i}function Pv(i){if(i===No||i===Wu)throw Error(n(483))}var Eo=null,Hl=0;function Yu(i){var r=Hl;return Hl+=1,Eo===null&&(Eo=[]),Bv(Eo,i,r)}function Ul(i,r){r=r.props.ref,i.ref=r!==void 0?r:null}function Xu(i,r){throw r.$$typeof===x?Error(n(525)):(i=Object.prototype.toString.call(r),Error(n(31,i==="[object Object]"?"object with keys {"+Object.keys(r).join(", ")+"}":i)))}function $v(i){function r(Y,q){if(i){var J=Y.deletions;J===null?(Y.deletions=[q],Y.flags|=16):J.push(q)}}function c(Y,q){if(!i)return null;for(;q!==null;)r(Y,q),q=q.sibling;return null}function f(Y){for(var q=new Map;Y!==null;)Y.key!==null?q.set(Y.key,Y):q.set(Y.index,Y),Y=Y.sibling;return q}function b(Y,q){return Y=Xi(Y,q),Y.index=0,Y.sibling=null,Y}function v(Y,q,J){return Y.index=J,i?(J=Y.alternate,J!==null?(J=J.index,J<q?(Y.flags|=67108866,q):J):(Y.flags|=67108866,q)):(Y.flags|=1048576,q)}function k(Y){return i&&Y.alternate===null&&(Y.flags|=67108866),Y}function M(Y,q,J,le){return q===null||q.tag!==6?(q=Ff(J,Y.mode,le),q.return=Y,q):(q=b(q,J),q.return=Y,q)}function H(Y,q,J,le){var Ie=J.type;return Ie===w?re(Y,q,J.props.children,le,J.key):q!==null&&(q.elementType===Ie||typeof Ie=="object"&&Ie!==null&&Ie.$$typeof===T&&ja(Ie)===q.type)?(q=b(q,J.props),Ul(q,J),q.return=Y,q):(q=Uu(J.type,J.key,J.props,null,Y.mode,le),Ul(q,J),q.return=Y,q)}function ee(Y,q,J,le){return q===null||q.tag!==4||q.stateNode.containerInfo!==J.containerInfo||q.stateNode.implementation!==J.implementation?(q=qf(J,Y.mode,le),q.return=Y,q):(q=b(q,J.children||[]),q.return=Y,q)}function re(Y,q,J,le,Ie){return q===null||q.tag!==7?(q=wa(J,Y.mode,le,Ie),q.return=Y,q):(q=b(q,J),q.return=Y,q)}function ce(Y,q,J){if(typeof q=="string"&&q!==""||typeof q=="number"||typeof q=="bigint")return q=Ff(""+q,Y.mode,J),q.return=Y,q;if(typeof q=="object"&&q!==null){switch(q.$$typeof){case _:return J=Uu(q.type,q.key,q.props,null,Y.mode,J),Ul(J,q),J.return=Y,J;case S:return q=qf(q,Y.mode,J),q.return=Y,q;case T:return q=ja(q),ce(Y,q,J)}if(G(q)||$(q))return q=wa(q,Y.mode,J,null),q.return=Y,q;if(typeof q.then=="function")return ce(Y,Yu(q),J);if(q.$$typeof===E)return ce(Y,Vu(Y,q),J);Xu(Y,q)}return null}function se(Y,q,J,le){var Ie=q!==null?q.key:null;if(typeof J=="string"&&J!==""||typeof J=="number"||typeof J=="bigint")return Ie!==null?null:M(Y,q,""+J,le);if(typeof J=="object"&&J!==null){switch(J.$$typeof){case _:return J.key===Ie?H(Y,q,J,le):null;case S:return J.key===Ie?ee(Y,q,J,le):null;case T:return J=ja(J),se(Y,q,J,le)}if(G(J)||$(J))return Ie!==null?null:re(Y,q,J,le,null);if(typeof J.then=="function")return se(Y,q,Yu(J),le);if(J.$$typeof===E)return se(Y,q,Vu(Y,J),le);Xu(Y,J)}return null}function ne(Y,q,J,le,Ie){if(typeof le=="string"&&le!==""||typeof le=="number"||typeof le=="bigint")return Y=Y.get(J)||null,M(q,Y,""+le,Ie);if(typeof le=="object"&&le!==null){switch(le.$$typeof){case _:return Y=Y.get(le.key===null?J:le.key)||null,H(q,Y,le,Ie);case S:return Y=Y.get(le.key===null?J:le.key)||null,ee(q,Y,le,Ie);case T:return le=ja(le),ne(Y,q,J,le,Ie)}if(G(le)||$(le))return Y=Y.get(J)||null,re(q,Y,le,Ie,null);if(typeof le.then=="function")return ne(Y,q,J,Yu(le),Ie);if(le.$$typeof===E)return ne(Y,q,J,Vu(q,le),Ie);Xu(q,le)}return null}function je(Y,q,J,le){for(var Ie=null,ut=null,Oe=q,Xe=q=0,at=null;Oe!==null&&Xe<J.length;Xe++){Oe.index>Xe?(at=Oe,Oe=null):at=Oe.sibling;var dt=se(Y,Oe,J[Xe],le);if(dt===null){Oe===null&&(Oe=at);break}i&&Oe&&dt.alternate===null&&r(Y,Oe),q=v(dt,q,Xe),ut===null?Ie=dt:ut.sibling=dt,ut=dt,Oe=at}if(Xe===J.length)return c(Y,Oe),ot&&Zi(Y,Xe),Ie;if(Oe===null){for(;Xe<J.length;Xe++)Oe=ce(Y,J[Xe],le),Oe!==null&&(q=v(Oe,q,Xe),ut===null?Ie=Oe:ut.sibling=Oe,ut=Oe);return ot&&Zi(Y,Xe),Ie}for(Oe=f(Oe);Xe<J.length;Xe++)at=ne(Oe,Y,Xe,J[Xe],le),at!==null&&(i&&at.alternate!==null&&Oe.delete(at.key===null?Xe:at.key),q=v(at,q,Xe),ut===null?Ie=at:ut.sibling=at,ut=at);return i&&Oe.forEach(function(Xr){return r(Y,Xr)}),ot&&Zi(Y,Xe),Ie}function $e(Y,q,J,le){if(J==null)throw Error(n(151));for(var Ie=null,ut=null,Oe=q,Xe=q=0,at=null,dt=J.next();Oe!==null&&!dt.done;Xe++,dt=J.next()){Oe.index>Xe?(at=Oe,Oe=null):at=Oe.sibling;var Xr=se(Y,Oe,dt.value,le);if(Xr===null){Oe===null&&(Oe=at);break}i&&Oe&&Xr.alternate===null&&r(Y,Oe),q=v(Xr,q,Xe),ut===null?Ie=Xr:ut.sibling=Xr,ut=Xr,Oe=at}if(dt.done)return c(Y,Oe),ot&&Zi(Y,Xe),Ie;if(Oe===null){for(;!dt.done;Xe++,dt=J.next())dt=ce(Y,dt.value,le),dt!==null&&(q=v(dt,q,Xe),ut===null?Ie=dt:ut.sibling=dt,ut=dt);return ot&&Zi(Y,Xe),Ie}for(Oe=f(Oe);!dt.done;Xe++,dt=J.next())dt=ne(Oe,Y,Xe,dt.value,le),dt!==null&&(i&&dt.alternate!==null&&Oe.delete(dt.key===null?Xe:dt.key),q=v(dt,q,Xe),ut===null?Ie=dt:ut.sibling=dt,ut=dt);return i&&Oe.forEach(function(vA){return r(Y,vA)}),ot&&Zi(Y,Xe),Ie}function wt(Y,q,J,le){if(typeof J=="object"&&J!==null&&J.type===w&&J.key===null&&(J=J.props.children),typeof J=="object"&&J!==null){switch(J.$$typeof){case _:e:{for(var Ie=J.key;q!==null;){if(q.key===Ie){if(Ie=J.type,Ie===w){if(q.tag===7){c(Y,q.sibling),le=b(q,J.props.children),le.return=Y,Y=le;break e}}else if(q.elementType===Ie||typeof Ie=="object"&&Ie!==null&&Ie.$$typeof===T&&ja(Ie)===q.type){c(Y,q.sibling),le=b(q,J.props),Ul(le,J),le.return=Y,Y=le;break e}c(Y,q);break}else r(Y,q);q=q.sibling}J.type===w?(le=wa(J.props.children,Y.mode,le,J.key),le.return=Y,Y=le):(le=Uu(J.type,J.key,J.props,null,Y.mode,le),Ul(le,J),le.return=Y,Y=le)}return k(Y);case S:e:{for(Ie=J.key;q!==null;){if(q.key===Ie)if(q.tag===4&&q.stateNode.containerInfo===J.containerInfo&&q.stateNode.implementation===J.implementation){c(Y,q.sibling),le=b(q,J.children||[]),le.return=Y,Y=le;break e}else{c(Y,q);break}else r(Y,q);q=q.sibling}le=qf(J,Y.mode,le),le.return=Y,Y=le}return k(Y);case T:return J=ja(J),wt(Y,q,J,le)}if(G(J))return je(Y,q,J,le);if($(J)){if(Ie=$(J),typeof Ie!="function")throw Error(n(150));return J=Ie.call(J),$e(Y,q,J,le)}if(typeof J.then=="function")return wt(Y,q,Yu(J),le);if(J.$$typeof===E)return wt(Y,q,Vu(Y,J),le);Xu(Y,J)}return typeof J=="string"&&J!==""||typeof J=="number"||typeof J=="bigint"?(J=""+J,q!==null&&q.tag===6?(c(Y,q.sibling),le=b(q,J),le.return=Y,Y=le):(c(Y,q),le=Ff(J,Y.mode,le),le.return=Y,Y=le),k(Y)):c(Y,q)}return function(Y,q,J,le){try{Hl=0;var Ie=wt(Y,q,J,le);return Eo=null,Ie}catch(Oe){if(Oe===No||Oe===Wu)throw Oe;var ut=yn(29,Oe,null,Y.mode);return ut.lanes=le,ut.return=Y,ut}}}var Aa=$v(!0),Hv=$v(!1),Dr=!1;function sm(i){i.updateQueue={baseState:i.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function nm(i,r){i=i.updateQueue,r.updateQueue===i&&(r.updateQueue={baseState:i.baseState,firstBaseUpdate:i.firstBaseUpdate,lastBaseUpdate:i.lastBaseUpdate,shared:i.shared,callbacks:null})}function Or(i){return{lane:i,tag:0,payload:null,callback:null,next:null}}function Lr(i,r,c){var f=i.updateQueue;if(f===null)return null;if(f=f.shared,(mt&2)!==0){var b=f.pending;return b===null?r.next=r:(r.next=b.next,b.next=r),f.pending=r,r=Hu(i),kv(i,null,c),r}return $u(i,f,r,c),Hu(i)}function Fl(i,r,c){if(r=r.updateQueue,r!==null&&(r=r.shared,(c&4194048)!==0)){var f=r.lanes;f&=i.pendingLanes,c|=f,r.lanes=c,Ue(i,c)}}function im(i,r){var c=i.updateQueue,f=i.alternate;if(f!==null&&(f=f.updateQueue,c===f)){var b=null,v=null;if(c=c.firstBaseUpdate,c!==null){do{var k={lane:c.lane,tag:c.tag,payload:c.payload,callback:null,next:null};v===null?b=v=k:v=v.next=k,c=c.next}while(c!==null);v===null?b=v=r:v=v.next=r}else b=v=r;c={baseState:f.baseState,firstBaseUpdate:b,lastBaseUpdate:v,shared:f.shared,callbacks:f.callbacks},i.updateQueue=c;return}i=c.lastBaseUpdate,i===null?c.firstBaseUpdate=r:i.next=r,c.lastBaseUpdate=r}var rm=!1;function ql(){if(rm){var i=Co;if(i!==null)throw i}}function Vl(i,r,c,f){rm=!1;var b=i.updateQueue;Dr=!1;var v=b.firstBaseUpdate,k=b.lastBaseUpdate,M=b.shared.pending;if(M!==null){b.shared.pending=null;var H=M,ee=H.next;H.next=null,k===null?v=ee:k.next=ee,k=H;var re=i.alternate;re!==null&&(re=re.updateQueue,M=re.lastBaseUpdate,M!==k&&(M===null?re.firstBaseUpdate=ee:M.next=ee,re.lastBaseUpdate=H))}if(v!==null){var ce=b.baseState;k=0,re=ee=H=null,M=v;do{var se=M.lane&-536870913,ne=se!==M.lane;if(ne?(rt&se)===se:(f&se)===se){se!==0&&se===ko&&(rm=!0),re!==null&&(re=re.next={lane:0,tag:M.tag,payload:M.payload,callback:null,next:null});e:{var je=i,$e=M;se=r;var wt=c;switch($e.tag){case 1:if(je=$e.payload,typeof je=="function"){ce=je.call(wt,ce,se);break e}ce=je;break e;case 3:je.flags=je.flags&-65537|128;case 0:if(je=$e.payload,se=typeof je=="function"?je.call(wt,ce,se):je,se==null)break e;ce=g({},ce,se);break e;case 2:Dr=!0}}se=M.callback,se!==null&&(i.flags|=64,ne&&(i.flags|=8192),ne=b.callbacks,ne===null?b.callbacks=[se]:ne.push(se))}else ne={lane:se,tag:M.tag,payload:M.payload,callback:M.callback,next:null},re===null?(ee=re=ne,H=ce):re=re.next=ne,k|=se;if(M=M.next,M===null){if(M=b.shared.pending,M===null)break;ne=M,M=ne.next,ne.next=null,b.lastBaseUpdate=ne,b.shared.pending=null}}while(!0);re===null&&(H=ce),b.baseState=H,b.firstBaseUpdate=ee,b.lastBaseUpdate=re,v===null&&(b.shared.lanes=0),$r|=k,i.lanes=k,i.memoizedState=ce}}function Uv(i,r){if(typeof i!="function")throw Error(n(191,i));i.call(r)}function Fv(i,r){var c=i.callbacks;if(c!==null)for(i.callbacks=null,i=0;i<c.length;i++)Uv(c[i],r)}var jo=R(null),Zu=R(0);function qv(i,r){i=lr,ie(Zu,i),ie(jo,r),lr=i|r.baseLanes}function am(){ie(Zu,lr),ie(jo,jo.current)}function om(){lr=Zu.current,Z(jo),Z(Zu)}var Sn=R(null),In=null;function zr(i){var r=i.alternate;ie(Zt,Zt.current&1),ie(Sn,i),In===null&&(r===null||jo.current!==null||r.memoizedState!==null)&&(In=i)}function lm(i){ie(Zt,Zt.current),ie(Sn,i),In===null&&(In=i)}function Vv(i){i.tag===22?(ie(Zt,Zt.current),ie(Sn,i),In===null&&(In=i)):Br()}function Br(){ie(Zt,Zt.current),ie(Sn,Sn.current)}function wn(i){Z(Sn),In===i&&(In=null),Z(Zt)}var Zt=R(0);function Qu(i){for(var r=i;r!==null;){if(r.tag===13){var c=r.memoizedState;if(c!==null&&(c=c.dehydrated,c===null||mp(c)||pp(c)))return r}else if(r.tag===19&&(r.memoizedProps.revealOrder==="forwards"||r.memoizedProps.revealOrder==="backwards"||r.memoizedProps.revealOrder==="unstable_legacy-backwards"||r.memoizedProps.revealOrder==="together")){if((r.flags&128)!==0)return r}else if(r.child!==null){r.child.return=r,r=r.child;continue}if(r===i)break;for(;r.sibling===null;){if(r.return===null||r.return===i)return null;r=r.return}r.sibling.return=r.return,r=r.sibling}return null}var er=0,Ye=null,yt=null,ns=null,Ju=!1,To=!1,Ma=!1,ed=0,Gl=0,Ao=null,cT=0;function Ft(){throw Error(n(321))}function cm(i,r){if(r===null)return!1;for(var c=0;c<r.length&&c<i.length;c++)if(!_n(i[c],r[c]))return!1;return!0}function um(i,r,c,f,b,v){return er=v,Ye=r,r.memoizedState=null,r.updateQueue=null,r.lanes=0,B.H=i===null||i.memoizedState===null?j1:Cm,Ma=!1,v=c(f,b),Ma=!1,To&&(v=Wv(r,c,f,b)),Gv(i),v}function Gv(i){B.H=Yl;var r=yt!==null&&yt.next!==null;if(er=0,ns=yt=Ye=null,Ju=!1,Gl=0,Ao=null,r)throw Error(n(300));i===null||is||(i=i.dependencies,i!==null&&qu(i)&&(is=!0))}function Wv(i,r,c,f){Ye=i;var b=0;do{if(To&&(Ao=null),Gl=0,To=!1,25<=b)throw Error(n(301));if(b+=1,ns=yt=null,i.updateQueue!=null){var v=i.updateQueue;v.lastEffect=null,v.events=null,v.stores=null,v.memoCache!=null&&(v.memoCache.index=0)}B.H=T1,v=r(c,f)}while(To);return v}function uT(){var i=B.H,r=i.useState()[0];return r=typeof r.then=="function"?Wl(r):r,i=i.useState()[0],(yt!==null?yt.memoizedState:null)!==i&&(Ye.flags|=1024),r}function dm(){var i=ed!==0;return ed=0,i}function hm(i,r,c){r.updateQueue=i.updateQueue,r.flags&=-2053,i.lanes&=~c}function fm(i){if(Ju){for(i=i.memoizedState;i!==null;){var r=i.queue;r!==null&&(r.pending=null),i=i.next}Ju=!1}er=0,ns=yt=Ye=null,To=!1,Gl=ed=0,Ao=null}function Ys(){var i={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ns===null?Ye.memoizedState=ns=i:ns=ns.next=i,ns}function Qt(){if(yt===null){var i=Ye.alternate;i=i!==null?i.memoizedState:null}else i=yt.next;var r=ns===null?Ye.memoizedState:ns.next;if(r!==null)ns=r,yt=i;else{if(i===null)throw Ye.alternate===null?Error(n(467)):Error(n(310));yt=i,i={memoizedState:yt.memoizedState,baseState:yt.baseState,baseQueue:yt.baseQueue,queue:yt.queue,next:null},ns===null?Ye.memoizedState=ns=i:ns=ns.next=i}return ns}function td(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Wl(i){var r=Gl;return Gl+=1,Ao===null&&(Ao=[]),i=Bv(Ao,i,r),r=Ye,(ns===null?r.memoizedState:ns.next)===null&&(r=r.alternate,B.H=r===null||r.memoizedState===null?j1:Cm),i}function sd(i){if(i!==null&&typeof i=="object"){if(typeof i.then=="function")return Wl(i);if(i.$$typeof===E)return Ds(i)}throw Error(n(438,String(i)))}function mm(i){var r=null,c=Ye.updateQueue;if(c!==null&&(r=c.memoCache),r==null){var f=Ye.alternate;f!==null&&(f=f.updateQueue,f!==null&&(f=f.memoCache,f!=null&&(r={data:f.data.map(function(b){return b.slice()}),index:0})))}if(r==null&&(r={data:[],index:0}),c===null&&(c=td(),Ye.updateQueue=c),c.memoCache=r,c=r.data[r.index],c===void 0)for(c=r.data[r.index]=Array(i),f=0;f<i;f++)c[f]=L;return r.index++,c}function tr(i,r){return typeof r=="function"?r(i):r}function nd(i){var r=Qt();return pm(r,yt,i)}function pm(i,r,c){var f=i.queue;if(f===null)throw Error(n(311));f.lastRenderedReducer=c;var b=i.baseQueue,v=f.pending;if(v!==null){if(b!==null){var k=b.next;b.next=v.next,v.next=k}r.baseQueue=b=v,f.pending=null}if(v=i.baseState,b===null)i.memoizedState=v;else{r=b.next;var M=k=null,H=null,ee=r,re=!1;do{var ce=ee.lane&-536870913;if(ce!==ee.lane?(rt&ce)===ce:(er&ce)===ce){var se=ee.revertLane;if(se===0)H!==null&&(H=H.next={lane:0,revertLane:0,gesture:null,action:ee.action,hasEagerState:ee.hasEagerState,eagerState:ee.eagerState,next:null}),ce===ko&&(re=!0);else if((er&se)===se){ee=ee.next,se===ko&&(re=!0);continue}else ce={lane:0,revertLane:ee.revertLane,gesture:null,action:ee.action,hasEagerState:ee.hasEagerState,eagerState:ee.eagerState,next:null},H===null?(M=H=ce,k=v):H=H.next=ce,Ye.lanes|=se,$r|=se;ce=ee.action,Ma&&c(v,ce),v=ee.hasEagerState?ee.eagerState:c(v,ce)}else se={lane:ce,revertLane:ee.revertLane,gesture:ee.gesture,action:ee.action,hasEagerState:ee.hasEagerState,eagerState:ee.eagerState,next:null},H===null?(M=H=se,k=v):H=H.next=se,Ye.lanes|=ce,$r|=ce;ee=ee.next}while(ee!==null&&ee!==r);if(H===null?k=v:H.next=M,!_n(v,i.memoizedState)&&(is=!0,re&&(c=Co,c!==null)))throw c;i.memoizedState=v,i.baseState=k,i.baseQueue=H,f.lastRenderedState=v}return b===null&&(f.lanes=0),[i.memoizedState,f.dispatch]}function gm(i){var r=Qt(),c=r.queue;if(c===null)throw Error(n(311));c.lastRenderedReducer=i;var f=c.dispatch,b=c.pending,v=r.memoizedState;if(b!==null){c.pending=null;var k=b=b.next;do v=i(v,k.action),k=k.next;while(k!==b);_n(v,r.memoizedState)||(is=!0),r.memoizedState=v,r.baseQueue===null&&(r.baseState=v),c.lastRenderedState=v}return[v,f]}function Kv(i,r,c){var f=Ye,b=Qt(),v=ot;if(v){if(c===void 0)throw Error(n(407));c=c()}else c=r();var k=!_n((yt||b).memoizedState,c);if(k&&(b.memoizedState=c,is=!0),b=b.queue,vm(Zv.bind(null,f,b,i),[i]),b.getSnapshot!==r||k||ns!==null&&ns.memoizedState.tag&1){if(f.flags|=2048,Mo(9,{destroy:void 0},Xv.bind(null,f,b,c,r),null),Nt===null)throw Error(n(349));v||(er&127)!==0||Yv(f,r,c)}return c}function Yv(i,r,c){i.flags|=16384,i={getSnapshot:r,value:c},r=Ye.updateQueue,r===null?(r=td(),Ye.updateQueue=r,r.stores=[i]):(c=r.stores,c===null?r.stores=[i]:c.push(i))}function Xv(i,r,c,f){r.value=c,r.getSnapshot=f,Qv(r)&&Jv(i)}function Zv(i,r,c){return c(function(){Qv(r)&&Jv(i)})}function Qv(i){var r=i.getSnapshot;i=i.value;try{var c=r();return!_n(i,c)}catch{return!0}}function Jv(i){var r=Sa(i,2);r!==null&&un(r,i,2)}function bm(i){var r=Ys();if(typeof i=="function"){var c=i;if(i=c(),Ma){Mn(!0);try{c()}finally{Mn(!1)}}}return r.memoizedState=r.baseState=i,r.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:tr,lastRenderedState:i},r}function e1(i,r,c,f){return i.baseState=c,pm(i,yt,typeof f=="function"?f:tr)}function dT(i,r,c,f,b){if(ad(i))throw Error(n(485));if(i=r.action,i!==null){var v={payload:b,action:i,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(k){v.listeners.push(k)}};B.T!==null?c(!0):v.isTransition=!1,f(v),c=r.pending,c===null?(v.next=r.pending=v,t1(r,v)):(v.next=c.next,r.pending=c.next=v)}}function t1(i,r){var c=r.action,f=r.payload,b=i.state;if(r.isTransition){var v=B.T,k={};B.T=k;try{var M=c(b,f),H=B.S;H!==null&&H(k,M),s1(i,r,M)}catch(ee){xm(i,r,ee)}finally{v!==null&&k.types!==null&&(v.types=k.types),B.T=v}}else try{v=c(b,f),s1(i,r,v)}catch(ee){xm(i,r,ee)}}function s1(i,r,c){c!==null&&typeof c=="object"&&typeof c.then=="function"?c.then(function(f){n1(i,r,f)},function(f){return xm(i,r,f)}):n1(i,r,c)}function n1(i,r,c){r.status="fulfilled",r.value=c,i1(r),i.state=c,r=i.pending,r!==null&&(c=r.next,c===r?i.pending=null:(c=c.next,r.next=c,t1(i,c)))}function xm(i,r,c){var f=i.pending;if(i.pending=null,f!==null){f=f.next;do r.status="rejected",r.reason=c,i1(r),r=r.next;while(r!==f)}i.action=null}function i1(i){i=i.listeners;for(var r=0;r<i.length;r++)(0,i[r])()}function r1(i,r){return r}function a1(i,r){if(ot){var c=Nt.formState;if(c!==null){e:{var f=Ye;if(ot){if(Rt){t:{for(var b=Rt,v=Bn;b.nodeType!==8;){if(!v){b=null;break t}if(b=Pn(b.nextSibling),b===null){b=null;break t}}v=b.data,b=v==="F!"||v==="F"?b:null}if(b){Rt=Pn(b.nextSibling),f=b.data==="F!";break e}}Mr(f)}f=!1}f&&(r=c[0])}}return c=Ys(),c.memoizedState=c.baseState=r,f={pending:null,lanes:0,dispatch:null,lastRenderedReducer:r1,lastRenderedState:r},c.queue=f,c=C1.bind(null,Ye,f),f.dispatch=c,f=bm(!1),v=km.bind(null,Ye,!1,f.queue),f=Ys(),b={state:r,dispatch:null,action:i,pending:null},f.queue=b,c=dT.bind(null,Ye,b,v,c),b.dispatch=c,f.memoizedState=i,[r,c,!1]}function o1(i){var r=Qt();return l1(r,yt,i)}function l1(i,r,c){if(r=pm(i,r,r1)[0],i=nd(tr)[0],typeof r=="object"&&r!==null&&typeof r.then=="function")try{var f=Wl(r)}catch(k){throw k===No?Wu:k}else f=r;r=Qt();var b=r.queue,v=b.dispatch;return c!==r.memoizedState&&(Ye.flags|=2048,Mo(9,{destroy:void 0},hT.bind(null,b,c),null)),[f,v,i]}function hT(i,r){i.action=r}function c1(i){var r=Qt(),c=yt;if(c!==null)return l1(r,c,i);Qt(),r=r.memoizedState,c=Qt();var f=c.queue.dispatch;return c.memoizedState=i,[r,f,!1]}function Mo(i,r,c,f){return i={tag:i,create:c,deps:f,inst:r,next:null},r=Ye.updateQueue,r===null&&(r=td(),Ye.updateQueue=r),c=r.lastEffect,c===null?r.lastEffect=i.next=i:(f=c.next,c.next=i,i.next=f,r.lastEffect=i),i}function u1(){return Qt().memoizedState}function id(i,r,c,f){var b=Ys();Ye.flags|=i,b.memoizedState=Mo(1|r,{destroy:void 0},c,f===void 0?null:f)}function rd(i,r,c,f){var b=Qt();f=f===void 0?null:f;var v=b.memoizedState.inst;yt!==null&&f!==null&&cm(f,yt.memoizedState.deps)?b.memoizedState=Mo(r,v,c,f):(Ye.flags|=i,b.memoizedState=Mo(1|r,v,c,f))}function d1(i,r){id(8390656,8,i,r)}function vm(i,r){rd(2048,8,i,r)}function fT(i){Ye.flags|=4;var r=Ye.updateQueue;if(r===null)r=td(),Ye.updateQueue=r,r.events=[i];else{var c=r.events;c===null?r.events=[i]:c.push(i)}}function h1(i){var r=Qt().memoizedState;return fT({ref:r,nextImpl:i}),function(){if((mt&2)!==0)throw Error(n(440));return r.impl.apply(void 0,arguments)}}function f1(i,r){return rd(4,2,i,r)}function m1(i,r){return rd(4,4,i,r)}function p1(i,r){if(typeof r=="function"){i=i();var c=r(i);return function(){typeof c=="function"?c():r(null)}}if(r!=null)return i=i(),r.current=i,function(){r.current=null}}function g1(i,r,c){c=c!=null?c.concat([i]):null,rd(4,4,p1.bind(null,r,i),c)}function _m(){}function b1(i,r){var c=Qt();r=r===void 0?null:r;var f=c.memoizedState;return r!==null&&cm(r,f[1])?f[0]:(c.memoizedState=[i,r],i)}function x1(i,r){var c=Qt();r=r===void 0?null:r;var f=c.memoizedState;if(r!==null&&cm(r,f[1]))return f[0];if(f=i(),Ma){Mn(!0);try{i()}finally{Mn(!1)}}return c.memoizedState=[f,r],f}function ym(i,r,c){return c===void 0||(er&1073741824)!==0&&(rt&261930)===0?i.memoizedState=r:(i.memoizedState=c,i=v_(),Ye.lanes|=i,$r|=i,c)}function v1(i,r,c,f){return _n(c,r)?c:jo.current!==null?(i=ym(i,c,f),_n(i,r)||(is=!0),i):(er&42)===0||(er&1073741824)!==0&&(rt&261930)===0?(is=!0,i.memoizedState=c):(i=v_(),Ye.lanes|=i,$r|=i,r)}function _1(i,r,c,f,b){var v=V.p;V.p=v!==0&&8>v?v:8;var k=B.T,M={};B.T=M,km(i,!1,r,c);try{var H=b(),ee=B.S;if(ee!==null&&ee(M,H),H!==null&&typeof H=="object"&&typeof H.then=="function"){var re=lT(H,f);Kl(i,r,re,Nn(i))}else Kl(i,r,f,Nn(i))}catch(ce){Kl(i,r,{then:function(){},status:"rejected",reason:ce},Nn())}finally{V.p=v,k!==null&&M.types!==null&&(k.types=M.types),B.T=k}}function mT(){}function Sm(i,r,c,f){if(i.tag!==5)throw Error(n(476));var b=y1(i).queue;_1(i,b,r,X,c===null?mT:function(){return S1(i),c(f)})}function y1(i){var r=i.memoizedState;if(r!==null)return r;r={memoizedState:X,baseState:X,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:tr,lastRenderedState:X},next:null};var c={};return r.next={memoizedState:c,baseState:c,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:tr,lastRenderedState:c},next:null},i.memoizedState=r,i=i.alternate,i!==null&&(i.memoizedState=r),r}function S1(i){var r=y1(i);r.next===null&&(r=i.alternate.memoizedState),Kl(i,r.next.queue,{},Nn())}function wm(){return Ds(dc)}function w1(){return Qt().memoizedState}function k1(){return Qt().memoizedState}function pT(i){for(var r=i.return;r!==null;){switch(r.tag){case 24:case 3:var c=Nn();i=Or(c);var f=Lr(r,i,c);f!==null&&(un(f,r,c),Fl(f,r,c)),r={cache:Qf()},i.payload=r;return}r=r.return}}function gT(i,r,c){var f=Nn();c={lane:f,revertLane:0,gesture:null,action:c,hasEagerState:!1,eagerState:null,next:null},ad(i)?N1(r,c):(c=Hf(i,r,c,f),c!==null&&(un(c,i,f),E1(c,r,f)))}function C1(i,r,c){var f=Nn();Kl(i,r,c,f)}function Kl(i,r,c,f){var b={lane:f,revertLane:0,gesture:null,action:c,hasEagerState:!1,eagerState:null,next:null};if(ad(i))N1(r,b);else{var v=i.alternate;if(i.lanes===0&&(v===null||v.lanes===0)&&(v=r.lastRenderedReducer,v!==null))try{var k=r.lastRenderedState,M=v(k,c);if(b.hasEagerState=!0,b.eagerState=M,_n(M,k))return $u(i,r,b,0),Nt===null&&Pu(),!1}catch{}if(c=Hf(i,r,b,f),c!==null)return un(c,i,f),E1(c,r,f),!0}return!1}function km(i,r,c,f){if(f={lane:2,revertLane:sp(),gesture:null,action:f,hasEagerState:!1,eagerState:null,next:null},ad(i)){if(r)throw Error(n(479))}else r=Hf(i,c,f,2),r!==null&&un(r,i,2)}function ad(i){var r=i.alternate;return i===Ye||r!==null&&r===Ye}function N1(i,r){To=Ju=!0;var c=i.pending;c===null?r.next=r:(r.next=c.next,c.next=r),i.pending=r}function E1(i,r,c){if((c&4194048)!==0){var f=r.lanes;f&=i.pendingLanes,c|=f,r.lanes=c,Ue(i,c)}}var Yl={readContext:Ds,use:sd,useCallback:Ft,useContext:Ft,useEffect:Ft,useImperativeHandle:Ft,useLayoutEffect:Ft,useInsertionEffect:Ft,useMemo:Ft,useReducer:Ft,useRef:Ft,useState:Ft,useDebugValue:Ft,useDeferredValue:Ft,useTransition:Ft,useSyncExternalStore:Ft,useId:Ft,useHostTransitionStatus:Ft,useFormState:Ft,useActionState:Ft,useOptimistic:Ft,useMemoCache:Ft,useCacheRefresh:Ft};Yl.useEffectEvent=Ft;var j1={readContext:Ds,use:sd,useCallback:function(i,r){return Ys().memoizedState=[i,r===void 0?null:r],i},useContext:Ds,useEffect:d1,useImperativeHandle:function(i,r,c){c=c!=null?c.concat([i]):null,id(4194308,4,p1.bind(null,r,i),c)},useLayoutEffect:function(i,r){return id(4194308,4,i,r)},useInsertionEffect:function(i,r){id(4,2,i,r)},useMemo:function(i,r){var c=Ys();r=r===void 0?null:r;var f=i();if(Ma){Mn(!0);try{i()}finally{Mn(!1)}}return c.memoizedState=[f,r],f},useReducer:function(i,r,c){var f=Ys();if(c!==void 0){var b=c(r);if(Ma){Mn(!0);try{c(r)}finally{Mn(!1)}}}else b=r;return f.memoizedState=f.baseState=b,i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:i,lastRenderedState:b},f.queue=i,i=i.dispatch=gT.bind(null,Ye,i),[f.memoizedState,i]},useRef:function(i){var r=Ys();return i={current:i},r.memoizedState=i},useState:function(i){i=bm(i);var r=i.queue,c=C1.bind(null,Ye,r);return r.dispatch=c,[i.memoizedState,c]},useDebugValue:_m,useDeferredValue:function(i,r){var c=Ys();return ym(c,i,r)},useTransition:function(){var i=bm(!1);return i=_1.bind(null,Ye,i.queue,!0,!1),Ys().memoizedState=i,[!1,i]},useSyncExternalStore:function(i,r,c){var f=Ye,b=Ys();if(ot){if(c===void 0)throw Error(n(407));c=c()}else{if(c=r(),Nt===null)throw Error(n(349));(rt&127)!==0||Yv(f,r,c)}b.memoizedState=c;var v={value:c,getSnapshot:r};return b.queue=v,d1(Zv.bind(null,f,v,i),[i]),f.flags|=2048,Mo(9,{destroy:void 0},Xv.bind(null,f,v,c,r),null),c},useId:function(){var i=Ys(),r=Nt.identifierPrefix;if(ot){var c=Si,f=yi;c=(f&~(1<<32-As(f)-1)).toString(32)+c,r="_"+r+"R_"+c,c=ed++,0<c&&(r+="H"+c.toString(32)),r+="_"}else c=cT++,r="_"+r+"r_"+c.toString(32)+"_";return i.memoizedState=r},useHostTransitionStatus:wm,useFormState:a1,useActionState:a1,useOptimistic:function(i){var r=Ys();r.memoizedState=r.baseState=i;var c={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return r.queue=c,r=km.bind(null,Ye,!0,c),c.dispatch=r,[i,r]},useMemoCache:mm,useCacheRefresh:function(){return Ys().memoizedState=pT.bind(null,Ye)},useEffectEvent:function(i){var r=Ys(),c={impl:i};return r.memoizedState=c,function(){if((mt&2)!==0)throw Error(n(440));return c.impl.apply(void 0,arguments)}}},Cm={readContext:Ds,use:sd,useCallback:b1,useContext:Ds,useEffect:vm,useImperativeHandle:g1,useInsertionEffect:f1,useLayoutEffect:m1,useMemo:x1,useReducer:nd,useRef:u1,useState:function(){return nd(tr)},useDebugValue:_m,useDeferredValue:function(i,r){var c=Qt();return v1(c,yt.memoizedState,i,r)},useTransition:function(){var i=nd(tr)[0],r=Qt().memoizedState;return[typeof i=="boolean"?i:Wl(i),r]},useSyncExternalStore:Kv,useId:w1,useHostTransitionStatus:wm,useFormState:o1,useActionState:o1,useOptimistic:function(i,r){var c=Qt();return e1(c,yt,i,r)},useMemoCache:mm,useCacheRefresh:k1};Cm.useEffectEvent=h1;var T1={readContext:Ds,use:sd,useCallback:b1,useContext:Ds,useEffect:vm,useImperativeHandle:g1,useInsertionEffect:f1,useLayoutEffect:m1,useMemo:x1,useReducer:gm,useRef:u1,useState:function(){return gm(tr)},useDebugValue:_m,useDeferredValue:function(i,r){var c=Qt();return yt===null?ym(c,i,r):v1(c,yt.memoizedState,i,r)},useTransition:function(){var i=gm(tr)[0],r=Qt().memoizedState;return[typeof i=="boolean"?i:Wl(i),r]},useSyncExternalStore:Kv,useId:w1,useHostTransitionStatus:wm,useFormState:c1,useActionState:c1,useOptimistic:function(i,r){var c=Qt();return yt!==null?e1(c,yt,i,r):(c.baseState=i,[i,c.queue.dispatch])},useMemoCache:mm,useCacheRefresh:k1};T1.useEffectEvent=h1;function Nm(i,r,c,f){r=i.memoizedState,c=c(f,r),c=c==null?r:g({},r,c),i.memoizedState=c,i.lanes===0&&(i.updateQueue.baseState=c)}var Em={enqueueSetState:function(i,r,c){i=i._reactInternals;var f=Nn(),b=Or(f);b.payload=r,c!=null&&(b.callback=c),r=Lr(i,b,f),r!==null&&(un(r,i,f),Fl(r,i,f))},enqueueReplaceState:function(i,r,c){i=i._reactInternals;var f=Nn(),b=Or(f);b.tag=1,b.payload=r,c!=null&&(b.callback=c),r=Lr(i,b,f),r!==null&&(un(r,i,f),Fl(r,i,f))},enqueueForceUpdate:function(i,r){i=i._reactInternals;var c=Nn(),f=Or(c);f.tag=2,r!=null&&(f.callback=r),r=Lr(i,f,c),r!==null&&(un(r,i,c),Fl(r,i,c))}};function A1(i,r,c,f,b,v,k){return i=i.stateNode,typeof i.shouldComponentUpdate=="function"?i.shouldComponentUpdate(f,v,k):r.prototype&&r.prototype.isPureReactComponent?!Ll(c,f)||!Ll(b,v):!0}function M1(i,r,c,f){i=r.state,typeof r.componentWillReceiveProps=="function"&&r.componentWillReceiveProps(c,f),typeof r.UNSAFE_componentWillReceiveProps=="function"&&r.UNSAFE_componentWillReceiveProps(c,f),r.state!==i&&Em.enqueueReplaceState(r,r.state,null)}function Ra(i,r){var c=r;if("ref"in r){c={};for(var f in r)f!=="ref"&&(c[f]=r[f])}if(i=i.defaultProps){c===r&&(c=g({},c));for(var b in i)c[b]===void 0&&(c[b]=i[b])}return c}function R1(i){Iu(i)}function D1(i){console.error(i)}function O1(i){Iu(i)}function od(i,r){try{var c=i.onUncaughtError;c(r.value,{componentStack:r.stack})}catch(f){setTimeout(function(){throw f})}}function L1(i,r,c){try{var f=i.onCaughtError;f(c.value,{componentStack:c.stack,errorBoundary:r.tag===1?r.stateNode:null})}catch(b){setTimeout(function(){throw b})}}function jm(i,r,c){return c=Or(c),c.tag=3,c.payload={element:null},c.callback=function(){od(i,r)},c}function z1(i){return i=Or(i),i.tag=3,i}function B1(i,r,c,f){var b=c.type.getDerivedStateFromError;if(typeof b=="function"){var v=f.value;i.payload=function(){return b(v)},i.callback=function(){L1(r,c,f)}}var k=c.stateNode;k!==null&&typeof k.componentDidCatch=="function"&&(i.callback=function(){L1(r,c,f),typeof b!="function"&&(Hr===null?Hr=new Set([this]):Hr.add(this));var M=f.stack;this.componentDidCatch(f.value,{componentStack:M!==null?M:""})})}function bT(i,r,c,f,b){if(c.flags|=32768,f!==null&&typeof f=="object"&&typeof f.then=="function"){if(r=c.alternate,r!==null&&wo(r,c,b,!0),c=Sn.current,c!==null){switch(c.tag){case 31:case 13:return In===null?vd():c.alternate===null&&qt===0&&(qt=3),c.flags&=-257,c.flags|=65536,c.lanes=b,f===Ku?c.flags|=16384:(r=c.updateQueue,r===null?c.updateQueue=new Set([f]):r.add(f),Jm(i,f,b)),!1;case 22:return c.flags|=65536,f===Ku?c.flags|=16384:(r=c.updateQueue,r===null?(r={transitions:null,markerInstances:null,retryQueue:new Set([f])},c.updateQueue=r):(c=r.retryQueue,c===null?r.retryQueue=new Set([f]):c.add(f)),Jm(i,f,b)),!1}throw Error(n(435,c.tag))}return Jm(i,f,b),vd(),!1}if(ot)return r=Sn.current,r!==null?((r.flags&65536)===0&&(r.flags|=256),r.flags|=65536,r.lanes=b,f!==Wf&&(i=Error(n(422),{cause:f}),Il(On(i,c)))):(f!==Wf&&(r=Error(n(423),{cause:f}),Il(On(r,c))),i=i.current.alternate,i.flags|=65536,b&=-b,i.lanes|=b,f=On(f,c),b=jm(i.stateNode,f,b),im(i,b),qt!==4&&(qt=2)),!1;var v=Error(n(520),{cause:f});if(v=On(v,c),nc===null?nc=[v]:nc.push(v),qt!==4&&(qt=2),r===null)return!0;f=On(f,c),c=r;do{switch(c.tag){case 3:return c.flags|=65536,i=b&-b,c.lanes|=i,i=jm(c.stateNode,f,i),im(c,i),!1;case 1:if(r=c.type,v=c.stateNode,(c.flags&128)===0&&(typeof r.getDerivedStateFromError=="function"||v!==null&&typeof v.componentDidCatch=="function"&&(Hr===null||!Hr.has(v))))return c.flags|=65536,b&=-b,c.lanes|=b,b=z1(b),B1(b,i,c,f),im(c,b),!1}c=c.return}while(c!==null);return!1}var Tm=Error(n(461)),is=!1;function Os(i,r,c,f){r.child=i===null?Hv(r,null,c,f):Aa(r,i.child,c,f)}function I1(i,r,c,f,b){c=c.render;var v=r.ref;if("ref"in f){var k={};for(var M in f)M!=="ref"&&(k[M]=f[M])}else k=f;return Na(r),f=um(i,r,c,k,v,b),M=dm(),i!==null&&!is?(hm(i,r,b),sr(i,r,b)):(ot&&M&&Vf(r),r.flags|=1,Os(i,r,f,b),r.child)}function P1(i,r,c,f,b){if(i===null){var v=c.type;return typeof v=="function"&&!Uf(v)&&v.defaultProps===void 0&&c.compare===null?(r.tag=15,r.type=v,$1(i,r,v,f,b)):(i=Uu(c.type,null,f,r,r.mode,b),i.ref=r.ref,i.return=r,r.child=i)}if(v=i.child,!Bm(i,b)){var k=v.memoizedProps;if(c=c.compare,c=c!==null?c:Ll,c(k,f)&&i.ref===r.ref)return sr(i,r,b)}return r.flags|=1,i=Xi(v,f),i.ref=r.ref,i.return=r,r.child=i}function $1(i,r,c,f,b){if(i!==null){var v=i.memoizedProps;if(Ll(v,f)&&i.ref===r.ref)if(is=!1,r.pendingProps=f=v,Bm(i,b))(i.flags&131072)!==0&&(is=!0);else return r.lanes=i.lanes,sr(i,r,b)}return Am(i,r,c,f,b)}function H1(i,r,c,f){var b=f.children,v=i!==null?i.memoizedState:null;if(i===null&&r.stateNode===null&&(r.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),f.mode==="hidden"){if((r.flags&128)!==0){if(v=v!==null?v.baseLanes|c:c,i!==null){for(f=r.child=i.child,b=0;f!==null;)b=b|f.lanes|f.childLanes,f=f.sibling;f=b&~v}else f=0,r.child=null;return U1(i,r,v,c,f)}if((c&536870912)!==0)r.memoizedState={baseLanes:0,cachePool:null},i!==null&&Gu(r,v!==null?v.cachePool:null),v!==null?qv(r,v):am(),Vv(r);else return f=r.lanes=536870912,U1(i,r,v!==null?v.baseLanes|c:c,c,f)}else v!==null?(Gu(r,v.cachePool),qv(r,v),Br(),r.memoizedState=null):(i!==null&&Gu(r,null),am(),Br());return Os(i,r,b,c),r.child}function Xl(i,r){return i!==null&&i.tag===22||r.stateNode!==null||(r.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.sibling}function U1(i,r,c,f,b){var v=em();return v=v===null?null:{parent:ss._currentValue,pool:v},r.memoizedState={baseLanes:c,cachePool:v},i!==null&&Gu(r,null),am(),Vv(r),i!==null&&wo(i,r,f,!0),r.childLanes=b,null}function ld(i,r){return r=ud({mode:r.mode,children:r.children},i.mode),r.ref=i.ref,i.child=r,r.return=i,r}function F1(i,r,c){return Aa(r,i.child,null,c),i=ld(r,r.pendingProps),i.flags|=2,wn(r),r.memoizedState=null,i}function xT(i,r,c){var f=r.pendingProps,b=(r.flags&128)!==0;if(r.flags&=-129,i===null){if(ot){if(f.mode==="hidden")return i=ld(r,f),r.lanes=536870912,Xl(null,i);if(lm(r),(i=Rt)?(i=ty(i,Bn),i=i!==null&&i.data==="&"?i:null,i!==null&&(r.memoizedState={dehydrated:i,treeContext:Tr!==null?{id:yi,overflow:Si}:null,retryLane:536870912,hydrationErrors:null},c=Nv(i),c.return=r,r.child=c,Rs=r,Rt=null)):i=null,i===null)throw Mr(r);return r.lanes=536870912,null}return ld(r,f)}var v=i.memoizedState;if(v!==null){var k=v.dehydrated;if(lm(r),b)if(r.flags&256)r.flags&=-257,r=F1(i,r,c);else if(r.memoizedState!==null)r.child=i.child,r.flags|=128,r=null;else throw Error(n(558));else if(is||wo(i,r,c,!1),b=(c&i.childLanes)!==0,is||b){if(f=Nt,f!==null&&(k=Kt(f,c),k!==0&&k!==v.retryLane))throw v.retryLane=k,Sa(i,k),un(f,i,k),Tm;vd(),r=F1(i,r,c)}else i=v.treeContext,Rt=Pn(k.nextSibling),Rs=r,ot=!0,Ar=null,Bn=!1,i!==null&&Tv(r,i),r=ld(r,f),r.flags|=4096;return r}return i=Xi(i.child,{mode:f.mode,children:f.children}),i.ref=r.ref,r.child=i,i.return=r,i}function cd(i,r){var c=r.ref;if(c===null)i!==null&&i.ref!==null&&(r.flags|=4194816);else{if(typeof c!="function"&&typeof c!="object")throw Error(n(284));(i===null||i.ref!==c)&&(r.flags|=4194816)}}function Am(i,r,c,f,b){return Na(r),c=um(i,r,c,f,void 0,b),f=dm(),i!==null&&!is?(hm(i,r,b),sr(i,r,b)):(ot&&f&&Vf(r),r.flags|=1,Os(i,r,c,b),r.child)}function q1(i,r,c,f,b,v){return Na(r),r.updateQueue=null,c=Wv(r,f,c,b),Gv(i),f=dm(),i!==null&&!is?(hm(i,r,v),sr(i,r,v)):(ot&&f&&Vf(r),r.flags|=1,Os(i,r,c,v),r.child)}function V1(i,r,c,f,b){if(Na(r),r.stateNode===null){var v=vo,k=c.contextType;typeof k=="object"&&k!==null&&(v=Ds(k)),v=new c(f,v),r.memoizedState=v.state!==null&&v.state!==void 0?v.state:null,v.updater=Em,r.stateNode=v,v._reactInternals=r,v=r.stateNode,v.props=f,v.state=r.memoizedState,v.refs={},sm(r),k=c.contextType,v.context=typeof k=="object"&&k!==null?Ds(k):vo,v.state=r.memoizedState,k=c.getDerivedStateFromProps,typeof k=="function"&&(Nm(r,c,k,f),v.state=r.memoizedState),typeof c.getDerivedStateFromProps=="function"||typeof v.getSnapshotBeforeUpdate=="function"||typeof v.UNSAFE_componentWillMount!="function"&&typeof v.componentWillMount!="function"||(k=v.state,typeof v.componentWillMount=="function"&&v.componentWillMount(),typeof v.UNSAFE_componentWillMount=="function"&&v.UNSAFE_componentWillMount(),k!==v.state&&Em.enqueueReplaceState(v,v.state,null),Vl(r,f,v,b),ql(),v.state=r.memoizedState),typeof v.componentDidMount=="function"&&(r.flags|=4194308),f=!0}else if(i===null){v=r.stateNode;var M=r.memoizedProps,H=Ra(c,M);v.props=H;var ee=v.context,re=c.contextType;k=vo,typeof re=="object"&&re!==null&&(k=Ds(re));var ce=c.getDerivedStateFromProps;re=typeof ce=="function"||typeof v.getSnapshotBeforeUpdate=="function",M=r.pendingProps!==M,re||typeof v.UNSAFE_componentWillReceiveProps!="function"&&typeof v.componentWillReceiveProps!="function"||(M||ee!==k)&&M1(r,v,f,k),Dr=!1;var se=r.memoizedState;v.state=se,Vl(r,f,v,b),ql(),ee=r.memoizedState,M||se!==ee||Dr?(typeof ce=="function"&&(Nm(r,c,ce,f),ee=r.memoizedState),(H=Dr||A1(r,c,H,f,se,ee,k))?(re||typeof v.UNSAFE_componentWillMount!="function"&&typeof v.componentWillMount!="function"||(typeof v.componentWillMount=="function"&&v.componentWillMount(),typeof v.UNSAFE_componentWillMount=="function"&&v.UNSAFE_componentWillMount()),typeof v.componentDidMount=="function"&&(r.flags|=4194308)):(typeof v.componentDidMount=="function"&&(r.flags|=4194308),r.memoizedProps=f,r.memoizedState=ee),v.props=f,v.state=ee,v.context=k,f=H):(typeof v.componentDidMount=="function"&&(r.flags|=4194308),f=!1)}else{v=r.stateNode,nm(i,r),k=r.memoizedProps,re=Ra(c,k),v.props=re,ce=r.pendingProps,se=v.context,ee=c.contextType,H=vo,typeof ee=="object"&&ee!==null&&(H=Ds(ee)),M=c.getDerivedStateFromProps,(ee=typeof M=="function"||typeof v.getSnapshotBeforeUpdate=="function")||typeof v.UNSAFE_componentWillReceiveProps!="function"&&typeof v.componentWillReceiveProps!="function"||(k!==ce||se!==H)&&M1(r,v,f,H),Dr=!1,se=r.memoizedState,v.state=se,Vl(r,f,v,b),ql();var ne=r.memoizedState;k!==ce||se!==ne||Dr||i!==null&&i.dependencies!==null&&qu(i.dependencies)?(typeof M=="function"&&(Nm(r,c,M,f),ne=r.memoizedState),(re=Dr||A1(r,c,re,f,se,ne,H)||i!==null&&i.dependencies!==null&&qu(i.dependencies))?(ee||typeof v.UNSAFE_componentWillUpdate!="function"&&typeof v.componentWillUpdate!="function"||(typeof v.componentWillUpdate=="function"&&v.componentWillUpdate(f,ne,H),typeof v.UNSAFE_componentWillUpdate=="function"&&v.UNSAFE_componentWillUpdate(f,ne,H)),typeof v.componentDidUpdate=="function"&&(r.flags|=4),typeof v.getSnapshotBeforeUpdate=="function"&&(r.flags|=1024)):(typeof v.componentDidUpdate!="function"||k===i.memoizedProps&&se===i.memoizedState||(r.flags|=4),typeof v.getSnapshotBeforeUpdate!="function"||k===i.memoizedProps&&se===i.memoizedState||(r.flags|=1024),r.memoizedProps=f,r.memoizedState=ne),v.props=f,v.state=ne,v.context=H,f=re):(typeof v.componentDidUpdate!="function"||k===i.memoizedProps&&se===i.memoizedState||(r.flags|=4),typeof v.getSnapshotBeforeUpdate!="function"||k===i.memoizedProps&&se===i.memoizedState||(r.flags|=1024),f=!1)}return v=f,cd(i,r),f=(r.flags&128)!==0,v||f?(v=r.stateNode,c=f&&typeof c.getDerivedStateFromError!="function"?null:v.render(),r.flags|=1,i!==null&&f?(r.child=Aa(r,i.child,null,b),r.child=Aa(r,null,c,b)):Os(i,r,c,b),r.memoizedState=v.state,i=r.child):i=sr(i,r,b),i}function G1(i,r,c,f){return ka(),r.flags|=256,Os(i,r,c,f),r.child}var Mm={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Rm(i){return{baseLanes:i,cachePool:Lv()}}function Dm(i,r,c){return i=i!==null?i.childLanes&~c:0,r&&(i|=Cn),i}function W1(i,r,c){var f=r.pendingProps,b=!1,v=(r.flags&128)!==0,k;if((k=v)||(k=i!==null&&i.memoizedState===null?!1:(Zt.current&2)!==0),k&&(b=!0,r.flags&=-129),k=(r.flags&32)!==0,r.flags&=-33,i===null){if(ot){if(b?zr(r):Br(),(i=Rt)?(i=ty(i,Bn),i=i!==null&&i.data!=="&"?i:null,i!==null&&(r.memoizedState={dehydrated:i,treeContext:Tr!==null?{id:yi,overflow:Si}:null,retryLane:536870912,hydrationErrors:null},c=Nv(i),c.return=r,r.child=c,Rs=r,Rt=null)):i=null,i===null)throw Mr(r);return pp(i)?r.lanes=32:r.lanes=536870912,null}var M=f.children;return f=f.fallback,b?(Br(),b=r.mode,M=ud({mode:"hidden",children:M},b),f=wa(f,b,c,null),M.return=r,f.return=r,M.sibling=f,r.child=M,f=r.child,f.memoizedState=Rm(c),f.childLanes=Dm(i,k,c),r.memoizedState=Mm,Xl(null,f)):(zr(r),Om(r,M))}var H=i.memoizedState;if(H!==null&&(M=H.dehydrated,M!==null)){if(v)r.flags&256?(zr(r),r.flags&=-257,r=Lm(i,r,c)):r.memoizedState!==null?(Br(),r.child=i.child,r.flags|=128,r=null):(Br(),M=f.fallback,b=r.mode,f=ud({mode:"visible",children:f.children},b),M=wa(M,b,c,null),M.flags|=2,f.return=r,M.return=r,f.sibling=M,r.child=f,Aa(r,i.child,null,c),f=r.child,f.memoizedState=Rm(c),f.childLanes=Dm(i,k,c),r.memoizedState=Mm,r=Xl(null,f));else if(zr(r),pp(M)){if(k=M.nextSibling&&M.nextSibling.dataset,k)var ee=k.dgst;k=ee,f=Error(n(419)),f.stack="",f.digest=k,Il({value:f,source:null,stack:null}),r=Lm(i,r,c)}else if(is||wo(i,r,c,!1),k=(c&i.childLanes)!==0,is||k){if(k=Nt,k!==null&&(f=Kt(k,c),f!==0&&f!==H.retryLane))throw H.retryLane=f,Sa(i,f),un(k,i,f),Tm;mp(M)||vd(),r=Lm(i,r,c)}else mp(M)?(r.flags|=192,r.child=i.child,r=null):(i=H.treeContext,Rt=Pn(M.nextSibling),Rs=r,ot=!0,Ar=null,Bn=!1,i!==null&&Tv(r,i),r=Om(r,f.children),r.flags|=4096);return r}return b?(Br(),M=f.fallback,b=r.mode,H=i.child,ee=H.sibling,f=Xi(H,{mode:"hidden",children:f.children}),f.subtreeFlags=H.subtreeFlags&65011712,ee!==null?M=Xi(ee,M):(M=wa(M,b,c,null),M.flags|=2),M.return=r,f.return=r,f.sibling=M,r.child=f,Xl(null,f),f=r.child,M=i.child.memoizedState,M===null?M=Rm(c):(b=M.cachePool,b!==null?(H=ss._currentValue,b=b.parent!==H?{parent:H,pool:H}:b):b=Lv(),M={baseLanes:M.baseLanes|c,cachePool:b}),f.memoizedState=M,f.childLanes=Dm(i,k,c),r.memoizedState=Mm,Xl(i.child,f)):(zr(r),c=i.child,i=c.sibling,c=Xi(c,{mode:"visible",children:f.children}),c.return=r,c.sibling=null,i!==null&&(k=r.deletions,k===null?(r.deletions=[i],r.flags|=16):k.push(i)),r.child=c,r.memoizedState=null,c)}function Om(i,r){return r=ud({mode:"visible",children:r},i.mode),r.return=i,i.child=r}function ud(i,r){return i=yn(22,i,null,r),i.lanes=0,i}function Lm(i,r,c){return Aa(r,i.child,null,c),i=Om(r,r.pendingProps.children),i.flags|=2,r.memoizedState=null,i}function K1(i,r,c){i.lanes|=r;var f=i.alternate;f!==null&&(f.lanes|=r),Xf(i.return,r,c)}function zm(i,r,c,f,b,v){var k=i.memoizedState;k===null?i.memoizedState={isBackwards:r,rendering:null,renderingStartTime:0,last:f,tail:c,tailMode:b,treeForkCount:v}:(k.isBackwards=r,k.rendering=null,k.renderingStartTime=0,k.last=f,k.tail=c,k.tailMode=b,k.treeForkCount=v)}function Y1(i,r,c){var f=r.pendingProps,b=f.revealOrder,v=f.tail;f=f.children;var k=Zt.current,M=(k&2)!==0;if(M?(k=k&1|2,r.flags|=128):k&=1,ie(Zt,k),Os(i,r,f,c),f=ot?Bl:0,!M&&i!==null&&(i.flags&128)!==0)e:for(i=r.child;i!==null;){if(i.tag===13)i.memoizedState!==null&&K1(i,c,r);else if(i.tag===19)K1(i,c,r);else if(i.child!==null){i.child.return=i,i=i.child;continue}if(i===r)break e;for(;i.sibling===null;){if(i.return===null||i.return===r)break e;i=i.return}i.sibling.return=i.return,i=i.sibling}switch(b){case"forwards":for(c=r.child,b=null;c!==null;)i=c.alternate,i!==null&&Qu(i)===null&&(b=c),c=c.sibling;c=b,c===null?(b=r.child,r.child=null):(b=c.sibling,c.sibling=null),zm(r,!1,b,c,v,f);break;case"backwards":case"unstable_legacy-backwards":for(c=null,b=r.child,r.child=null;b!==null;){if(i=b.alternate,i!==null&&Qu(i)===null){r.child=b;break}i=b.sibling,b.sibling=c,c=b,b=i}zm(r,!0,c,null,v,f);break;case"together":zm(r,!1,null,null,void 0,f);break;default:r.memoizedState=null}return r.child}function sr(i,r,c){if(i!==null&&(r.dependencies=i.dependencies),$r|=r.lanes,(c&r.childLanes)===0)if(i!==null){if(wo(i,r,c,!1),(c&r.childLanes)===0)return null}else return null;if(i!==null&&r.child!==i.child)throw Error(n(153));if(r.child!==null){for(i=r.child,c=Xi(i,i.pendingProps),r.child=c,c.return=r;i.sibling!==null;)i=i.sibling,c=c.sibling=Xi(i,i.pendingProps),c.return=r;c.sibling=null}return r.child}function Bm(i,r){return(i.lanes&r)!==0?!0:(i=i.dependencies,!!(i!==null&&qu(i)))}function vT(i,r,c){switch(r.tag){case 3:Le(r,r.stateNode.containerInfo),Rr(r,ss,i.memoizedState.cache),ka();break;case 27:case 5:We(r);break;case 4:Le(r,r.stateNode.containerInfo);break;case 10:Rr(r,r.type,r.memoizedProps.value);break;case 31:if(r.memoizedState!==null)return r.flags|=128,lm(r),null;break;case 13:var f=r.memoizedState;if(f!==null)return f.dehydrated!==null?(zr(r),r.flags|=128,null):(c&r.child.childLanes)!==0?W1(i,r,c):(zr(r),i=sr(i,r,c),i!==null?i.sibling:null);zr(r);break;case 19:var b=(i.flags&128)!==0;if(f=(c&r.childLanes)!==0,f||(wo(i,r,c,!1),f=(c&r.childLanes)!==0),b){if(f)return Y1(i,r,c);r.flags|=128}if(b=r.memoizedState,b!==null&&(b.rendering=null,b.tail=null,b.lastEffect=null),ie(Zt,Zt.current),f)break;return null;case 22:return r.lanes=0,H1(i,r,c,r.pendingProps);case 24:Rr(r,ss,i.memoizedState.cache)}return sr(i,r,c)}function X1(i,r,c){if(i!==null)if(i.memoizedProps!==r.pendingProps)is=!0;else{if(!Bm(i,c)&&(r.flags&128)===0)return is=!1,vT(i,r,c);is=(i.flags&131072)!==0}else is=!1,ot&&(r.flags&1048576)!==0&&jv(r,Bl,r.index);switch(r.lanes=0,r.tag){case 16:e:{var f=r.pendingProps;if(i=ja(r.elementType),r.type=i,typeof i=="function")Uf(i)?(f=Ra(i,f),r.tag=1,r=V1(null,r,i,f,c)):(r.tag=0,r=Am(null,r,i,f,c));else{if(i!=null){var b=i.$$typeof;if(b===A){r.tag=11,r=I1(null,r,i,f,c);break e}else if(b===D){r.tag=14,r=P1(null,r,i,f,c);break e}}throw r=W(i)||i,Error(n(306,r,""))}}return r;case 0:return Am(i,r,r.type,r.pendingProps,c);case 1:return f=r.type,b=Ra(f,r.pendingProps),V1(i,r,f,b,c);case 3:e:{if(Le(r,r.stateNode.containerInfo),i===null)throw Error(n(387));f=r.pendingProps;var v=r.memoizedState;b=v.element,nm(i,r),Vl(r,f,null,c);var k=r.memoizedState;if(f=k.cache,Rr(r,ss,f),f!==v.cache&&Zf(r,[ss],c,!0),ql(),f=k.element,v.isDehydrated)if(v={element:f,isDehydrated:!1,cache:k.cache},r.updateQueue.baseState=v,r.memoizedState=v,r.flags&256){r=G1(i,r,f,c);break e}else if(f!==b){b=On(Error(n(424)),r),Il(b),r=G1(i,r,f,c);break e}else for(i=r.stateNode.containerInfo,i.nodeType===9?i=i.body:i=i.nodeName==="HTML"?i.ownerDocument.body:i,Rt=Pn(i.firstChild),Rs=r,ot=!0,Ar=null,Bn=!0,c=Hv(r,null,f,c),r.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling;else{if(ka(),f===b){r=sr(i,r,c);break e}Os(i,r,f,c)}r=r.child}return r;case 26:return cd(i,r),i===null?(c=oy(r.type,null,r.pendingProps,null))?r.memoizedState=c:ot||(c=r.type,i=r.pendingProps,f=Nd(pe.current).createElement(c),f[Yt]=r,f[Hs]=i,Ls(f,c,i),es(f),r.stateNode=f):r.memoizedState=oy(r.type,i.memoizedProps,r.pendingProps,i.memoizedState),null;case 27:return We(r),i===null&&ot&&(f=r.stateNode=iy(r.type,r.pendingProps,pe.current),Rs=r,Bn=!0,b=Rt,Vr(r.type)?(gp=b,Rt=Pn(f.firstChild)):Rt=b),Os(i,r,r.pendingProps.children,c),cd(i,r),i===null&&(r.flags|=4194304),r.child;case 5:return i===null&&ot&&((b=f=Rt)&&(f=YT(f,r.type,r.pendingProps,Bn),f!==null?(r.stateNode=f,Rs=r,Rt=Pn(f.firstChild),Bn=!1,b=!0):b=!1),b||Mr(r)),We(r),b=r.type,v=r.pendingProps,k=i!==null?i.memoizedProps:null,f=v.children,dp(b,v)?f=null:k!==null&&dp(b,k)&&(r.flags|=32),r.memoizedState!==null&&(b=um(i,r,uT,null,null,c),dc._currentValue=b),cd(i,r),Os(i,r,f,c),r.child;case 6:return i===null&&ot&&((i=c=Rt)&&(c=XT(c,r.pendingProps,Bn),c!==null?(r.stateNode=c,Rs=r,Rt=null,i=!0):i=!1),i||Mr(r)),null;case 13:return W1(i,r,c);case 4:return Le(r,r.stateNode.containerInfo),f=r.pendingProps,i===null?r.child=Aa(r,null,f,c):Os(i,r,f,c),r.child;case 11:return I1(i,r,r.type,r.pendingProps,c);case 7:return Os(i,r,r.pendingProps,c),r.child;case 8:return Os(i,r,r.pendingProps.children,c),r.child;case 12:return Os(i,r,r.pendingProps.children,c),r.child;case 10:return f=r.pendingProps,Rr(r,r.type,f.value),Os(i,r,f.children,c),r.child;case 9:return b=r.type._context,f=r.pendingProps.children,Na(r),b=Ds(b),f=f(b),r.flags|=1,Os(i,r,f,c),r.child;case 14:return P1(i,r,r.type,r.pendingProps,c);case 15:return $1(i,r,r.type,r.pendingProps,c);case 19:return Y1(i,r,c);case 31:return xT(i,r,c);case 22:return H1(i,r,c,r.pendingProps);case 24:return Na(r),f=Ds(ss),i===null?(b=em(),b===null&&(b=Nt,v=Qf(),b.pooledCache=v,v.refCount++,v!==null&&(b.pooledCacheLanes|=c),b=v),r.memoizedState={parent:f,cache:b},sm(r),Rr(r,ss,b)):((i.lanes&c)!==0&&(nm(i,r),Vl(r,null,null,c),ql()),b=i.memoizedState,v=r.memoizedState,b.parent!==f?(b={parent:f,cache:f},r.memoizedState=b,r.lanes===0&&(r.memoizedState=r.updateQueue.baseState=b),Rr(r,ss,f)):(f=v.cache,Rr(r,ss,f),f!==b.cache&&Zf(r,[ss],c,!0))),Os(i,r,r.pendingProps.children,c),r.child;case 29:throw r.pendingProps}throw Error(n(156,r.tag))}function nr(i){i.flags|=4}function Im(i,r,c,f,b){if((r=(i.mode&32)!==0)&&(r=!1),r){if(i.flags|=16777216,(b&335544128)===b)if(i.stateNode.complete)i.flags|=8192;else if(w_())i.flags|=8192;else throw Ta=Ku,tm}else i.flags&=-16777217}function Z1(i,r){if(r.type!=="stylesheet"||(r.state.loading&4)!==0)i.flags&=-16777217;else if(i.flags|=16777216,!hy(r))if(w_())i.flags|=8192;else throw Ta=Ku,tm}function dd(i,r){r!==null&&(i.flags|=4),i.flags&16384&&(r=i.tag!==22?Fe():536870912,i.lanes|=r,Lo|=r)}function Zl(i,r){if(!ot)switch(i.tailMode){case"hidden":r=i.tail;for(var c=null;r!==null;)r.alternate!==null&&(c=r),r=r.sibling;c===null?i.tail=null:c.sibling=null;break;case"collapsed":c=i.tail;for(var f=null;c!==null;)c.alternate!==null&&(f=c),c=c.sibling;f===null?r||i.tail===null?i.tail=null:i.tail.sibling=null:f.sibling=null}}function Dt(i){var r=i.alternate!==null&&i.alternate.child===i.child,c=0,f=0;if(r)for(var b=i.child;b!==null;)c|=b.lanes|b.childLanes,f|=b.subtreeFlags&65011712,f|=b.flags&65011712,b.return=i,b=b.sibling;else for(b=i.child;b!==null;)c|=b.lanes|b.childLanes,f|=b.subtreeFlags,f|=b.flags,b.return=i,b=b.sibling;return i.subtreeFlags|=f,i.childLanes=c,r}function _T(i,r,c){var f=r.pendingProps;switch(Gf(r),r.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Dt(r),null;case 1:return Dt(r),null;case 3:return c=r.stateNode,f=null,i!==null&&(f=i.memoizedState.cache),r.memoizedState.cache!==f&&(r.flags|=2048),Ji(ss),ve(),c.pendingContext&&(c.context=c.pendingContext,c.pendingContext=null),(i===null||i.child===null)&&(So(r)?nr(r):i===null||i.memoizedState.isDehydrated&&(r.flags&256)===0||(r.flags|=1024,Kf())),Dt(r),null;case 26:var b=r.type,v=r.memoizedState;return i===null?(nr(r),v!==null?(Dt(r),Z1(r,v)):(Dt(r),Im(r,b,null,f,c))):v?v!==i.memoizedState?(nr(r),Dt(r),Z1(r,v)):(Dt(r),r.flags&=-16777217):(i=i.memoizedProps,i!==f&&nr(r),Dt(r),Im(r,b,i,f,c)),null;case 27:if(ge(r),c=pe.current,b=r.type,i!==null&&r.stateNode!=null)i.memoizedProps!==f&&nr(r);else{if(!f){if(r.stateNode===null)throw Error(n(166));return Dt(r),null}i=de.current,So(r)?Av(r):(i=iy(b,f,c),r.stateNode=i,nr(r))}return Dt(r),null;case 5:if(ge(r),b=r.type,i!==null&&r.stateNode!=null)i.memoizedProps!==f&&nr(r);else{if(!f){if(r.stateNode===null)throw Error(n(166));return Dt(r),null}if(v=de.current,So(r))Av(r);else{var k=Nd(pe.current);switch(v){case 1:v=k.createElementNS("http://www.w3.org/2000/svg",b);break;case 2:v=k.createElementNS("http://www.w3.org/1998/Math/MathML",b);break;default:switch(b){case"svg":v=k.createElementNS("http://www.w3.org/2000/svg",b);break;case"math":v=k.createElementNS("http://www.w3.org/1998/Math/MathML",b);break;case"script":v=k.createElement("div"),v.innerHTML="<script><\/script>",v=v.removeChild(v.firstChild);break;case"select":v=typeof f.is=="string"?k.createElement("select",{is:f.is}):k.createElement("select"),f.multiple?v.multiple=!0:f.size&&(v.size=f.size);break;default:v=typeof f.is=="string"?k.createElement(b,{is:f.is}):k.createElement(b)}}v[Yt]=r,v[Hs]=f;e:for(k=r.child;k!==null;){if(k.tag===5||k.tag===6)v.appendChild(k.stateNode);else if(k.tag!==4&&k.tag!==27&&k.child!==null){k.child.return=k,k=k.child;continue}if(k===r)break e;for(;k.sibling===null;){if(k.return===null||k.return===r)break e;k=k.return}k.sibling.return=k.return,k=k.sibling}r.stateNode=v;e:switch(Ls(v,b,f),b){case"button":case"input":case"select":case"textarea":f=!!f.autoFocus;break e;case"img":f=!0;break e;default:f=!1}f&&nr(r)}}return Dt(r),Im(r,r.type,i===null?null:i.memoizedProps,r.pendingProps,c),null;case 6:if(i&&r.stateNode!=null)i.memoizedProps!==f&&nr(r);else{if(typeof f!="string"&&r.stateNode===null)throw Error(n(166));if(i=pe.current,So(r)){if(i=r.stateNode,c=r.memoizedProps,f=null,b=Rs,b!==null)switch(b.tag){case 27:case 5:f=b.memoizedProps}i[Yt]=r,i=!!(i.nodeValue===c||f!==null&&f.suppressHydrationWarning===!0||W_(i.nodeValue,c)),i||Mr(r,!0)}else i=Nd(i).createTextNode(f),i[Yt]=r,r.stateNode=i}return Dt(r),null;case 31:if(c=r.memoizedState,i===null||i.memoizedState!==null){if(f=So(r),c!==null){if(i===null){if(!f)throw Error(n(318));if(i=r.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(n(557));i[Yt]=r}else ka(),(r.flags&128)===0&&(r.memoizedState=null),r.flags|=4;Dt(r),i=!1}else c=Kf(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=c),i=!0;if(!i)return r.flags&256?(wn(r),r):(wn(r),null);if((r.flags&128)!==0)throw Error(n(558))}return Dt(r),null;case 13:if(f=r.memoizedState,i===null||i.memoizedState!==null&&i.memoizedState.dehydrated!==null){if(b=So(r),f!==null&&f.dehydrated!==null){if(i===null){if(!b)throw Error(n(318));if(b=r.memoizedState,b=b!==null?b.dehydrated:null,!b)throw Error(n(317));b[Yt]=r}else ka(),(r.flags&128)===0&&(r.memoizedState=null),r.flags|=4;Dt(r),b=!1}else b=Kf(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=b),b=!0;if(!b)return r.flags&256?(wn(r),r):(wn(r),null)}return wn(r),(r.flags&128)!==0?(r.lanes=c,r):(c=f!==null,i=i!==null&&i.memoizedState!==null,c&&(f=r.child,b=null,f.alternate!==null&&f.alternate.memoizedState!==null&&f.alternate.memoizedState.cachePool!==null&&(b=f.alternate.memoizedState.cachePool.pool),v=null,f.memoizedState!==null&&f.memoizedState.cachePool!==null&&(v=f.memoizedState.cachePool.pool),v!==b&&(f.flags|=2048)),c!==i&&c&&(r.child.flags|=8192),dd(r,r.updateQueue),Dt(r),null);case 4:return ve(),i===null&&ap(r.stateNode.containerInfo),Dt(r),null;case 10:return Ji(r.type),Dt(r),null;case 19:if(Z(Zt),f=r.memoizedState,f===null)return Dt(r),null;if(b=(r.flags&128)!==0,v=f.rendering,v===null)if(b)Zl(f,!1);else{if(qt!==0||i!==null&&(i.flags&128)!==0)for(i=r.child;i!==null;){if(v=Qu(i),v!==null){for(r.flags|=128,Zl(f,!1),i=v.updateQueue,r.updateQueue=i,dd(r,i),r.subtreeFlags=0,i=c,c=r.child;c!==null;)Cv(c,i),c=c.sibling;return ie(Zt,Zt.current&1|2),ot&&Zi(r,f.treeForkCount),r.child}i=i.sibling}f.tail!==null&>()>gd&&(r.flags|=128,b=!0,Zl(f,!1),r.lanes=4194304)}else{if(!b)if(i=Qu(v),i!==null){if(r.flags|=128,b=!0,i=i.updateQueue,r.updateQueue=i,dd(r,i),Zl(f,!0),f.tail===null&&f.tailMode==="hidden"&&!v.alternate&&!ot)return Dt(r),null}else 2*gt()-f.renderingStartTime>gd&&c!==536870912&&(r.flags|=128,b=!0,Zl(f,!1),r.lanes=4194304);f.isBackwards?(v.sibling=r.child,r.child=v):(i=f.last,i!==null?i.sibling=v:r.child=v,f.last=v)}return f.tail!==null?(i=f.tail,f.rendering=i,f.tail=i.sibling,f.renderingStartTime=gt(),i.sibling=null,c=Zt.current,ie(Zt,b?c&1|2:c&1),ot&&Zi(r,f.treeForkCount),i):(Dt(r),null);case 22:case 23:return wn(r),om(),f=r.memoizedState!==null,i!==null?i.memoizedState!==null!==f&&(r.flags|=8192):f&&(r.flags|=8192),f?(c&536870912)!==0&&(r.flags&128)===0&&(Dt(r),r.subtreeFlags&6&&(r.flags|=8192)):Dt(r),c=r.updateQueue,c!==null&&dd(r,c.retryQueue),c=null,i!==null&&i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(c=i.memoizedState.cachePool.pool),f=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(f=r.memoizedState.cachePool.pool),f!==c&&(r.flags|=2048),i!==null&&Z(Ea),null;case 24:return c=null,i!==null&&(c=i.memoizedState.cache),r.memoizedState.cache!==c&&(r.flags|=2048),Ji(ss),Dt(r),null;case 25:return null;case 30:return null}throw Error(n(156,r.tag))}function yT(i,r){switch(Gf(r),r.tag){case 1:return i=r.flags,i&65536?(r.flags=i&-65537|128,r):null;case 3:return Ji(ss),ve(),i=r.flags,(i&65536)!==0&&(i&128)===0?(r.flags=i&-65537|128,r):null;case 26:case 27:case 5:return ge(r),null;case 31:if(r.memoizedState!==null){if(wn(r),r.alternate===null)throw Error(n(340));ka()}return i=r.flags,i&65536?(r.flags=i&-65537|128,r):null;case 13:if(wn(r),i=r.memoizedState,i!==null&&i.dehydrated!==null){if(r.alternate===null)throw Error(n(340));ka()}return i=r.flags,i&65536?(r.flags=i&-65537|128,r):null;case 19:return Z(Zt),null;case 4:return ve(),null;case 10:return Ji(r.type),null;case 22:case 23:return wn(r),om(),i!==null&&Z(Ea),i=r.flags,i&65536?(r.flags=i&-65537|128,r):null;case 24:return Ji(ss),null;case 25:return null;default:return null}}function Q1(i,r){switch(Gf(r),r.tag){case 3:Ji(ss),ve();break;case 26:case 27:case 5:ge(r);break;case 4:ve();break;case 31:r.memoizedState!==null&&wn(r);break;case 13:wn(r);break;case 19:Z(Zt);break;case 10:Ji(r.type);break;case 22:case 23:wn(r),om(),i!==null&&Z(Ea);break;case 24:Ji(ss)}}function Ql(i,r){try{var c=r.updateQueue,f=c!==null?c.lastEffect:null;if(f!==null){var b=f.next;c=b;do{if((c.tag&i)===i){f=void 0;var v=c.create,k=c.inst;f=v(),k.destroy=f}c=c.next}while(c!==b)}}catch(M){_t(r,r.return,M)}}function Ir(i,r,c){try{var f=r.updateQueue,b=f!==null?f.lastEffect:null;if(b!==null){var v=b.next;f=v;do{if((f.tag&i)===i){var k=f.inst,M=k.destroy;if(M!==void 0){k.destroy=void 0,b=r;var H=c,ee=M;try{ee()}catch(re){_t(b,H,re)}}}f=f.next}while(f!==v)}}catch(re){_t(r,r.return,re)}}function J1(i){var r=i.updateQueue;if(r!==null){var c=i.stateNode;try{Fv(r,c)}catch(f){_t(i,i.return,f)}}}function e_(i,r,c){c.props=Ra(i.type,i.memoizedProps),c.state=i.memoizedState;try{c.componentWillUnmount()}catch(f){_t(i,r,f)}}function Jl(i,r){try{var c=i.ref;if(c!==null){switch(i.tag){case 26:case 27:case 5:var f=i.stateNode;break;case 30:f=i.stateNode;break;default:f=i.stateNode}typeof c=="function"?i.refCleanup=c(f):c.current=f}}catch(b){_t(i,r,b)}}function wi(i,r){var c=i.ref,f=i.refCleanup;if(c!==null)if(typeof f=="function")try{f()}catch(b){_t(i,r,b)}finally{i.refCleanup=null,i=i.alternate,i!=null&&(i.refCleanup=null)}else if(typeof c=="function")try{c(null)}catch(b){_t(i,r,b)}else c.current=null}function t_(i){var r=i.type,c=i.memoizedProps,f=i.stateNode;try{e:switch(r){case"button":case"input":case"select":case"textarea":c.autoFocus&&f.focus();break e;case"img":c.src?f.src=c.src:c.srcSet&&(f.srcset=c.srcSet)}}catch(b){_t(i,i.return,b)}}function Pm(i,r,c){try{var f=i.stateNode;FT(f,i.type,c,r),f[Hs]=r}catch(b){_t(i,i.return,b)}}function s_(i){return i.tag===5||i.tag===3||i.tag===26||i.tag===27&&Vr(i.type)||i.tag===4}function $m(i){e:for(;;){for(;i.sibling===null;){if(i.return===null||s_(i.return))return null;i=i.return}for(i.sibling.return=i.return,i=i.sibling;i.tag!==5&&i.tag!==6&&i.tag!==18;){if(i.tag===27&&Vr(i.type)||i.flags&2||i.child===null||i.tag===4)continue e;i.child.return=i,i=i.child}if(!(i.flags&2))return i.stateNode}}function Hm(i,r,c){var f=i.tag;if(f===5||f===6)i=i.stateNode,r?(c.nodeType===9?c.body:c.nodeName==="HTML"?c.ownerDocument.body:c).insertBefore(i,r):(r=c.nodeType===9?c.body:c.nodeName==="HTML"?c.ownerDocument.body:c,r.appendChild(i),c=c._reactRootContainer,c!=null||r.onclick!==null||(r.onclick=xe));else if(f!==4&&(f===27&&Vr(i.type)&&(c=i.stateNode,r=null),i=i.child,i!==null))for(Hm(i,r,c),i=i.sibling;i!==null;)Hm(i,r,c),i=i.sibling}function hd(i,r,c){var f=i.tag;if(f===5||f===6)i=i.stateNode,r?c.insertBefore(i,r):c.appendChild(i);else if(f!==4&&(f===27&&Vr(i.type)&&(c=i.stateNode),i=i.child,i!==null))for(hd(i,r,c),i=i.sibling;i!==null;)hd(i,r,c),i=i.sibling}function n_(i){var r=i.stateNode,c=i.memoizedProps;try{for(var f=i.type,b=r.attributes;b.length;)r.removeAttributeNode(b[0]);Ls(r,f,c),r[Yt]=i,r[Hs]=c}catch(v){_t(i,i.return,v)}}var ir=!1,rs=!1,Um=!1,i_=typeof WeakSet=="function"?WeakSet:Set,ys=null;function ST(i,r){if(i=i.containerInfo,cp=Dd,i=gv(i),Lf(i)){if("selectionStart"in i)var c={start:i.selectionStart,end:i.selectionEnd};else e:{c=(c=i.ownerDocument)&&c.defaultView||window;var f=c.getSelection&&c.getSelection();if(f&&f.rangeCount!==0){c=f.anchorNode;var b=f.anchorOffset,v=f.focusNode;f=f.focusOffset;try{c.nodeType,v.nodeType}catch{c=null;break e}var k=0,M=-1,H=-1,ee=0,re=0,ce=i,se=null;t:for(;;){for(var ne;ce!==c||b!==0&&ce.nodeType!==3||(M=k+b),ce!==v||f!==0&&ce.nodeType!==3||(H=k+f),ce.nodeType===3&&(k+=ce.nodeValue.length),(ne=ce.firstChild)!==null;)se=ce,ce=ne;for(;;){if(ce===i)break t;if(se===c&&++ee===b&&(M=k),se===v&&++re===f&&(H=k),(ne=ce.nextSibling)!==null)break;ce=se,se=ce.parentNode}ce=ne}c=M===-1||H===-1?null:{start:M,end:H}}else c=null}c=c||{start:0,end:0}}else c=null;for(up={focusedElem:i,selectionRange:c},Dd=!1,ys=r;ys!==null;)if(r=ys,i=r.child,(r.subtreeFlags&1028)!==0&&i!==null)i.return=r,ys=i;else for(;ys!==null;){switch(r=ys,v=r.alternate,i=r.flags,r.tag){case 0:if((i&4)!==0&&(i=r.updateQueue,i=i!==null?i.events:null,i!==null))for(c=0;c<i.length;c++)b=i[c],b.ref.impl=b.nextImpl;break;case 11:case 15:break;case 1:if((i&1024)!==0&&v!==null){i=void 0,c=r,b=v.memoizedProps,v=v.memoizedState,f=c.stateNode;try{var je=Ra(c.type,b);i=f.getSnapshotBeforeUpdate(je,v),f.__reactInternalSnapshotBeforeUpdate=i}catch($e){_t(c,c.return,$e)}}break;case 3:if((i&1024)!==0){if(i=r.stateNode.containerInfo,c=i.nodeType,c===9)fp(i);else if(c===1)switch(i.nodeName){case"HEAD":case"HTML":case"BODY":fp(i);break;default:i.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((i&1024)!==0)throw Error(n(163))}if(i=r.sibling,i!==null){i.return=r.return,ys=i;break}ys=r.return}}function r_(i,r,c){var f=c.flags;switch(c.tag){case 0:case 11:case 15:ar(i,c),f&4&&Ql(5,c);break;case 1:if(ar(i,c),f&4)if(i=c.stateNode,r===null)try{i.componentDidMount()}catch(k){_t(c,c.return,k)}else{var b=Ra(c.type,r.memoizedProps);r=r.memoizedState;try{i.componentDidUpdate(b,r,i.__reactInternalSnapshotBeforeUpdate)}catch(k){_t(c,c.return,k)}}f&64&&J1(c),f&512&&Jl(c,c.return);break;case 3:if(ar(i,c),f&64&&(i=c.updateQueue,i!==null)){if(r=null,c.child!==null)switch(c.child.tag){case 27:case 5:r=c.child.stateNode;break;case 1:r=c.child.stateNode}try{Fv(i,r)}catch(k){_t(c,c.return,k)}}break;case 27:r===null&&f&4&&n_(c);case 26:case 5:ar(i,c),r===null&&f&4&&t_(c),f&512&&Jl(c,c.return);break;case 12:ar(i,c);break;case 31:ar(i,c),f&4&&l_(i,c);break;case 13:ar(i,c),f&4&&c_(i,c),f&64&&(i=c.memoizedState,i!==null&&(i=i.dehydrated,i!==null&&(c=MT.bind(null,c),ZT(i,c))));break;case 22:if(f=c.memoizedState!==null||ir,!f){r=r!==null&&r.memoizedState!==null||rs,b=ir;var v=rs;ir=f,(rs=r)&&!v?or(i,c,(c.subtreeFlags&8772)!==0):ar(i,c),ir=b,rs=v}break;case 30:break;default:ar(i,c)}}function a_(i){var r=i.alternate;r!==null&&(i.alternate=null,a_(r)),i.child=null,i.deletions=null,i.sibling=null,i.tag===5&&(r=i.stateNode,r!==null&&wl(r)),i.stateNode=null,i.return=null,i.dependencies=null,i.memoizedProps=null,i.memoizedState=null,i.pendingProps=null,i.stateNode=null,i.updateQueue=null}var Bt=null,an=!1;function rr(i,r,c){for(c=c.child;c!==null;)o_(i,r,c),c=c.sibling}function o_(i,r,c){if(_s&&typeof _s.onCommitFiberUnmount=="function")try{_s.onCommitFiberUnmount(qi,c)}catch{}switch(c.tag){case 26:rs||wi(c,r),rr(i,r,c),c.memoizedState?c.memoizedState.count--:c.stateNode&&(c=c.stateNode,c.parentNode.removeChild(c));break;case 27:rs||wi(c,r);var f=Bt,b=an;Vr(c.type)&&(Bt=c.stateNode,an=!1),rr(i,r,c),lc(c.stateNode),Bt=f,an=b;break;case 5:rs||wi(c,r);case 6:if(f=Bt,b=an,Bt=null,rr(i,r,c),Bt=f,an=b,Bt!==null)if(an)try{(Bt.nodeType===9?Bt.body:Bt.nodeName==="HTML"?Bt.ownerDocument.body:Bt).removeChild(c.stateNode)}catch(v){_t(c,r,v)}else try{Bt.removeChild(c.stateNode)}catch(v){_t(c,r,v)}break;case 18:Bt!==null&&(an?(i=Bt,J_(i.nodeType===9?i.body:i.nodeName==="HTML"?i.ownerDocument.body:i,c.stateNode),Fo(i)):J_(Bt,c.stateNode));break;case 4:f=Bt,b=an,Bt=c.stateNode.containerInfo,an=!0,rr(i,r,c),Bt=f,an=b;break;case 0:case 11:case 14:case 15:Ir(2,c,r),rs||Ir(4,c,r),rr(i,r,c);break;case 1:rs||(wi(c,r),f=c.stateNode,typeof f.componentWillUnmount=="function"&&e_(c,r,f)),rr(i,r,c);break;case 21:rr(i,r,c);break;case 22:rs=(f=rs)||c.memoizedState!==null,rr(i,r,c),rs=f;break;default:rr(i,r,c)}}function l_(i,r){if(r.memoizedState===null&&(i=r.alternate,i!==null&&(i=i.memoizedState,i!==null))){i=i.dehydrated;try{Fo(i)}catch(c){_t(r,r.return,c)}}}function c_(i,r){if(r.memoizedState===null&&(i=r.alternate,i!==null&&(i=i.memoizedState,i!==null&&(i=i.dehydrated,i!==null))))try{Fo(i)}catch(c){_t(r,r.return,c)}}function wT(i){switch(i.tag){case 31:case 13:case 19:var r=i.stateNode;return r===null&&(r=i.stateNode=new i_),r;case 22:return i=i.stateNode,r=i._retryCache,r===null&&(r=i._retryCache=new i_),r;default:throw Error(n(435,i.tag))}}function fd(i,r){var c=wT(i);r.forEach(function(f){if(!c.has(f)){c.add(f);var b=RT.bind(null,i,f);f.then(b,b)}})}function on(i,r){var c=r.deletions;if(c!==null)for(var f=0;f<c.length;f++){var b=c[f],v=i,k=r,M=k;e:for(;M!==null;){switch(M.tag){case 27:if(Vr(M.type)){Bt=M.stateNode,an=!1;break e}break;case 5:Bt=M.stateNode,an=!1;break e;case 3:case 4:Bt=M.stateNode.containerInfo,an=!0;break e}M=M.return}if(Bt===null)throw Error(n(160));o_(v,k,b),Bt=null,an=!1,v=b.alternate,v!==null&&(v.return=null),b.return=null}if(r.subtreeFlags&13886)for(r=r.child;r!==null;)u_(r,i),r=r.sibling}var oi=null;function u_(i,r){var c=i.alternate,f=i.flags;switch(i.tag){case 0:case 11:case 14:case 15:on(r,i),ln(i),f&4&&(Ir(3,i,i.return),Ql(3,i),Ir(5,i,i.return));break;case 1:on(r,i),ln(i),f&512&&(rs||c===null||wi(c,c.return)),f&64&&ir&&(i=i.updateQueue,i!==null&&(f=i.callbacks,f!==null&&(c=i.shared.hiddenCallbacks,i.shared.hiddenCallbacks=c===null?f:c.concat(f))));break;case 26:var b=oi;if(on(r,i),ln(i),f&512&&(rs||c===null||wi(c,c.return)),f&4){var v=c!==null?c.memoizedState:null;if(f=i.memoizedState,c===null)if(f===null)if(i.stateNode===null){e:{f=i.type,c=i.memoizedProps,b=b.ownerDocument||b;t:switch(f){case"title":v=b.getElementsByTagName("title")[0],(!v||v[ga]||v[Yt]||v.namespaceURI==="http://www.w3.org/2000/svg"||v.hasAttribute("itemprop"))&&(v=b.createElement(f),b.head.insertBefore(v,b.querySelector("head > title"))),Ls(v,f,c),v[Yt]=i,es(v),f=v;break e;case"link":var k=uy("link","href",b).get(f+(c.href||""));if(k){for(var M=0;M<k.length;M++)if(v=k[M],v.getAttribute("href")===(c.href==null||c.href===""?null:c.href)&&v.getAttribute("rel")===(c.rel==null?null:c.rel)&&v.getAttribute("title")===(c.title==null?null:c.title)&&v.getAttribute("crossorigin")===(c.crossOrigin==null?null:c.crossOrigin)){k.splice(M,1);break t}}v=b.createElement(f),Ls(v,f,c),b.head.appendChild(v);break;case"meta":if(k=uy("meta","content",b).get(f+(c.content||""))){for(M=0;M<k.length;M++)if(v=k[M],v.getAttribute("content")===(c.content==null?null:""+c.content)&&v.getAttribute("name")===(c.name==null?null:c.name)&&v.getAttribute("property")===(c.property==null?null:c.property)&&v.getAttribute("http-equiv")===(c.httpEquiv==null?null:c.httpEquiv)&&v.getAttribute("charset")===(c.charSet==null?null:c.charSet)){k.splice(M,1);break t}}v=b.createElement(f),Ls(v,f,c),b.head.appendChild(v);break;default:throw Error(n(468,f))}v[Yt]=i,es(v),f=v}i.stateNode=f}else dy(b,i.type,i.stateNode);else i.stateNode=cy(b,f,i.memoizedProps);else v!==f?(v===null?c.stateNode!==null&&(c=c.stateNode,c.parentNode.removeChild(c)):v.count--,f===null?dy(b,i.type,i.stateNode):cy(b,f,i.memoizedProps)):f===null&&i.stateNode!==null&&Pm(i,i.memoizedProps,c.memoizedProps)}break;case 27:on(r,i),ln(i),f&512&&(rs||c===null||wi(c,c.return)),c!==null&&f&4&&Pm(i,i.memoizedProps,c.memoizedProps);break;case 5:if(on(r,i),ln(i),f&512&&(rs||c===null||wi(c,c.return)),i.flags&32){b=i.stateNode;try{He(b,"")}catch(je){_t(i,i.return,je)}}f&4&&i.stateNode!=null&&(b=i.memoizedProps,Pm(i,b,c!==null?c.memoizedProps:b)),f&1024&&(Um=!0);break;case 6:if(on(r,i),ln(i),f&4){if(i.stateNode===null)throw Error(n(162));f=i.memoizedProps,c=i.stateNode;try{c.nodeValue=f}catch(je){_t(i,i.return,je)}}break;case 3:if(Td=null,b=oi,oi=Ed(r.containerInfo),on(r,i),oi=b,ln(i),f&4&&c!==null&&c.memoizedState.isDehydrated)try{Fo(r.containerInfo)}catch(je){_t(i,i.return,je)}Um&&(Um=!1,d_(i));break;case 4:f=oi,oi=Ed(i.stateNode.containerInfo),on(r,i),ln(i),oi=f;break;case 12:on(r,i),ln(i);break;case 31:on(r,i),ln(i),f&4&&(f=i.updateQueue,f!==null&&(i.updateQueue=null,fd(i,f)));break;case 13:on(r,i),ln(i),i.child.flags&8192&&i.memoizedState!==null!=(c!==null&&c.memoizedState!==null)&&(pd=gt()),f&4&&(f=i.updateQueue,f!==null&&(i.updateQueue=null,fd(i,f)));break;case 22:b=i.memoizedState!==null;var H=c!==null&&c.memoizedState!==null,ee=ir,re=rs;if(ir=ee||b,rs=re||H,on(r,i),rs=re,ir=ee,ln(i),f&8192)e:for(r=i.stateNode,r._visibility=b?r._visibility&-2:r._visibility|1,b&&(c===null||H||ir||rs||Da(i)),c=null,r=i;;){if(r.tag===5||r.tag===26){if(c===null){H=c=r;try{if(v=H.stateNode,b)k=v.style,typeof k.setProperty=="function"?k.setProperty("display","none","important"):k.display="none";else{M=H.stateNode;var ce=H.memoizedProps.style,se=ce!=null&&ce.hasOwnProperty("display")?ce.display:null;M.style.display=se==null||typeof se=="boolean"?"":(""+se).trim()}}catch(je){_t(H,H.return,je)}}}else if(r.tag===6){if(c===null){H=r;try{H.stateNode.nodeValue=b?"":H.memoizedProps}catch(je){_t(H,H.return,je)}}}else if(r.tag===18){if(c===null){H=r;try{var ne=H.stateNode;b?ey(ne,!0):ey(H.stateNode,!1)}catch(je){_t(H,H.return,je)}}}else if((r.tag!==22&&r.tag!==23||r.memoizedState===null||r===i)&&r.child!==null){r.child.return=r,r=r.child;continue}if(r===i)break e;for(;r.sibling===null;){if(r.return===null||r.return===i)break e;c===r&&(c=null),r=r.return}c===r&&(c=null),r.sibling.return=r.return,r=r.sibling}f&4&&(f=i.updateQueue,f!==null&&(c=f.retryQueue,c!==null&&(f.retryQueue=null,fd(i,c))));break;case 19:on(r,i),ln(i),f&4&&(f=i.updateQueue,f!==null&&(i.updateQueue=null,fd(i,f)));break;case 30:break;case 21:break;default:on(r,i),ln(i)}}function ln(i){var r=i.flags;if(r&2){try{for(var c,f=i.return;f!==null;){if(s_(f)){c=f;break}f=f.return}if(c==null)throw Error(n(160));switch(c.tag){case 27:var b=c.stateNode,v=$m(i);hd(i,v,b);break;case 5:var k=c.stateNode;c.flags&32&&(He(k,""),c.flags&=-33);var M=$m(i);hd(i,M,k);break;case 3:case 4:var H=c.stateNode.containerInfo,ee=$m(i);Hm(i,ee,H);break;default:throw Error(n(161))}}catch(re){_t(i,i.return,re)}i.flags&=-3}r&4096&&(i.flags&=-4097)}function d_(i){if(i.subtreeFlags&1024)for(i=i.child;i!==null;){var r=i;d_(r),r.tag===5&&r.flags&1024&&r.stateNode.reset(),i=i.sibling}}function ar(i,r){if(r.subtreeFlags&8772)for(r=r.child;r!==null;)r_(i,r.alternate,r),r=r.sibling}function Da(i){for(i=i.child;i!==null;){var r=i;switch(r.tag){case 0:case 11:case 14:case 15:Ir(4,r,r.return),Da(r);break;case 1:wi(r,r.return);var c=r.stateNode;typeof c.componentWillUnmount=="function"&&e_(r,r.return,c),Da(r);break;case 27:lc(r.stateNode);case 26:case 5:wi(r,r.return),Da(r);break;case 22:r.memoizedState===null&&Da(r);break;case 30:Da(r);break;default:Da(r)}i=i.sibling}}function or(i,r,c){for(c=c&&(r.subtreeFlags&8772)!==0,r=r.child;r!==null;){var f=r.alternate,b=i,v=r,k=v.flags;switch(v.tag){case 0:case 11:case 15:or(b,v,c),Ql(4,v);break;case 1:if(or(b,v,c),f=v,b=f.stateNode,typeof b.componentDidMount=="function")try{b.componentDidMount()}catch(ee){_t(f,f.return,ee)}if(f=v,b=f.updateQueue,b!==null){var M=f.stateNode;try{var H=b.shared.hiddenCallbacks;if(H!==null)for(b.shared.hiddenCallbacks=null,b=0;b<H.length;b++)Uv(H[b],M)}catch(ee){_t(f,f.return,ee)}}c&&k&64&&J1(v),Jl(v,v.return);break;case 27:n_(v);case 26:case 5:or(b,v,c),c&&f===null&&k&4&&t_(v),Jl(v,v.return);break;case 12:or(b,v,c);break;case 31:or(b,v,c),c&&k&4&&l_(b,v);break;case 13:or(b,v,c),c&&k&4&&c_(b,v);break;case 22:v.memoizedState===null&&or(b,v,c),Jl(v,v.return);break;case 30:break;default:or(b,v,c)}r=r.sibling}}function Fm(i,r){var c=null;i!==null&&i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(c=i.memoizedState.cachePool.pool),i=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(i=r.memoizedState.cachePool.pool),i!==c&&(i!=null&&i.refCount++,c!=null&&Pl(c))}function qm(i,r){i=null,r.alternate!==null&&(i=r.alternate.memoizedState.cache),r=r.memoizedState.cache,r!==i&&(r.refCount++,i!=null&&Pl(i))}function li(i,r,c,f){if(r.subtreeFlags&10256)for(r=r.child;r!==null;)h_(i,r,c,f),r=r.sibling}function h_(i,r,c,f){var b=r.flags;switch(r.tag){case 0:case 11:case 15:li(i,r,c,f),b&2048&&Ql(9,r);break;case 1:li(i,r,c,f);break;case 3:li(i,r,c,f),b&2048&&(i=null,r.alternate!==null&&(i=r.alternate.memoizedState.cache),r=r.memoizedState.cache,r!==i&&(r.refCount++,i!=null&&Pl(i)));break;case 12:if(b&2048){li(i,r,c,f),i=r.stateNode;try{var v=r.memoizedProps,k=v.id,M=v.onPostCommit;typeof M=="function"&&M(k,r.alternate===null?"mount":"update",i.passiveEffectDuration,-0)}catch(H){_t(r,r.return,H)}}else li(i,r,c,f);break;case 31:li(i,r,c,f);break;case 13:li(i,r,c,f);break;case 23:break;case 22:v=r.stateNode,k=r.alternate,r.memoizedState!==null?v._visibility&2?li(i,r,c,f):ec(i,r):v._visibility&2?li(i,r,c,f):(v._visibility|=2,Ro(i,r,c,f,(r.subtreeFlags&10256)!==0||!1)),b&2048&&Fm(k,r);break;case 24:li(i,r,c,f),b&2048&&qm(r.alternate,r);break;default:li(i,r,c,f)}}function Ro(i,r,c,f,b){for(b=b&&((r.subtreeFlags&10256)!==0||!1),r=r.child;r!==null;){var v=i,k=r,M=c,H=f,ee=k.flags;switch(k.tag){case 0:case 11:case 15:Ro(v,k,M,H,b),Ql(8,k);break;case 23:break;case 22:var re=k.stateNode;k.memoizedState!==null?re._visibility&2?Ro(v,k,M,H,b):ec(v,k):(re._visibility|=2,Ro(v,k,M,H,b)),b&&ee&2048&&Fm(k.alternate,k);break;case 24:Ro(v,k,M,H,b),b&&ee&2048&&qm(k.alternate,k);break;default:Ro(v,k,M,H,b)}r=r.sibling}}function ec(i,r){if(r.subtreeFlags&10256)for(r=r.child;r!==null;){var c=i,f=r,b=f.flags;switch(f.tag){case 22:ec(c,f),b&2048&&Fm(f.alternate,f);break;case 24:ec(c,f),b&2048&&qm(f.alternate,f);break;default:ec(c,f)}r=r.sibling}}var tc=8192;function Do(i,r,c){if(i.subtreeFlags&tc)for(i=i.child;i!==null;)f_(i,r,c),i=i.sibling}function f_(i,r,c){switch(i.tag){case 26:Do(i,r,c),i.flags&tc&&i.memoizedState!==null&&cA(c,oi,i.memoizedState,i.memoizedProps);break;case 5:Do(i,r,c);break;case 3:case 4:var f=oi;oi=Ed(i.stateNode.containerInfo),Do(i,r,c),oi=f;break;case 22:i.memoizedState===null&&(f=i.alternate,f!==null&&f.memoizedState!==null?(f=tc,tc=16777216,Do(i,r,c),tc=f):Do(i,r,c));break;default:Do(i,r,c)}}function m_(i){var r=i.alternate;if(r!==null&&(i=r.child,i!==null)){r.child=null;do r=i.sibling,i.sibling=null,i=r;while(i!==null)}}function sc(i){var r=i.deletions;if((i.flags&16)!==0){if(r!==null)for(var c=0;c<r.length;c++){var f=r[c];ys=f,g_(f,i)}m_(i)}if(i.subtreeFlags&10256)for(i=i.child;i!==null;)p_(i),i=i.sibling}function p_(i){switch(i.tag){case 0:case 11:case 15:sc(i),i.flags&2048&&Ir(9,i,i.return);break;case 3:sc(i);break;case 12:sc(i);break;case 22:var r=i.stateNode;i.memoizedState!==null&&r._visibility&2&&(i.return===null||i.return.tag!==13)?(r._visibility&=-3,md(i)):sc(i);break;default:sc(i)}}function md(i){var r=i.deletions;if((i.flags&16)!==0){if(r!==null)for(var c=0;c<r.length;c++){var f=r[c];ys=f,g_(f,i)}m_(i)}for(i=i.child;i!==null;){switch(r=i,r.tag){case 0:case 11:case 15:Ir(8,r,r.return),md(r);break;case 22:c=r.stateNode,c._visibility&2&&(c._visibility&=-3,md(r));break;default:md(r)}i=i.sibling}}function g_(i,r){for(;ys!==null;){var c=ys;switch(c.tag){case 0:case 11:case 15:Ir(8,c,r);break;case 23:case 22:if(c.memoizedState!==null&&c.memoizedState.cachePool!==null){var f=c.memoizedState.cachePool.pool;f!=null&&f.refCount++}break;case 24:Pl(c.memoizedState.cache)}if(f=c.child,f!==null)f.return=c,ys=f;else e:for(c=i;ys!==null;){f=ys;var b=f.sibling,v=f.return;if(a_(f),f===c){ys=null;break e}if(b!==null){b.return=v,ys=b;break e}ys=v}}}var kT={getCacheForType:function(i){var r=Ds(ss),c=r.data.get(i);return c===void 0&&(c=i(),r.data.set(i,c)),c},cacheSignal:function(){return Ds(ss).controller.signal}},CT=typeof WeakMap=="function"?WeakMap:Map,mt=0,Nt=null,tt=null,rt=0,vt=0,kn=null,Pr=!1,Oo=!1,Vm=!1,lr=0,qt=0,$r=0,Oa=0,Gm=0,Cn=0,Lo=0,nc=null,cn=null,Wm=!1,pd=0,b_=0,gd=1/0,bd=null,Hr=null,hs=0,Ur=null,zo=null,cr=0,Km=0,Ym=null,x_=null,ic=0,Xm=null;function Nn(){return(mt&2)!==0&&rt!==0?rt&-rt:B.T!==null?sp():oo()}function v_(){if(Cn===0)if((rt&536870912)===0||ot){var i=ri;ri<<=1,(ri&3932160)===0&&(ri=262144),Cn=i}else Cn=536870912;return i=Sn.current,i!==null&&(i.flags|=32),Cn}function un(i,r,c){(i===Nt&&(vt===2||vt===9)||i.cancelPendingCommit!==null)&&(Bo(i,0),Fr(i,rt,Cn,!1)),Ct(i,c),((mt&2)===0||i!==Nt)&&(i===Nt&&((mt&2)===0&&(Oa|=c),qt===4&&Fr(i,rt,Cn,!1)),ki(i))}function __(i,r,c){if((mt&6)!==0)throw Error(n(327));var f=!c&&(r&127)===0&&(r&i.expiredLanes)===0||oe(i,r),b=f?jT(i,r):Qm(i,r,!0),v=f;do{if(b===0){Oo&&!f&&Fr(i,r,0,!1);break}else{if(c=i.current.alternate,v&&!NT(c)){b=Qm(i,r,!1),v=!1;continue}if(b===2){if(v=r,i.errorRecoveryDisabledLanes&v)var k=0;else k=i.pendingLanes&-536870913,k=k!==0?k:k&536870912?536870912:0;if(k!==0){r=k;e:{var M=i;b=nc;var H=M.current.memoizedState.isDehydrated;if(H&&(Bo(M,k).flags|=256),k=Qm(M,k,!1),k!==2){if(Vm&&!H){M.errorRecoveryDisabledLanes|=v,Oa|=v,b=4;break e}v=cn,cn=b,v!==null&&(cn===null?cn=v:cn.push.apply(cn,v))}b=k}if(v=!1,b!==2)continue}}if(b===1){Bo(i,0),Fr(i,r,0,!0);break}e:{switch(f=i,v=b,v){case 0:case 1:throw Error(n(345));case 4:if((r&4194048)!==r)break;case 6:Fr(f,r,Cn,!Pr);break e;case 2:cn=null;break;case 3:case 5:break;default:throw Error(n(329))}if((r&62914560)===r&&(b=pd+300-gt(),10<b)){if(Fr(f,r,Cn,!Pr),F(f,0,!0)!==0)break e;cr=r,f.timeoutHandle=Z_(y_.bind(null,f,c,cn,bd,Wm,r,Cn,Oa,Lo,Pr,v,"Throttled",-0,0),b);break e}y_(f,c,cn,bd,Wm,r,Cn,Oa,Lo,Pr,v,null,-0,0)}}break}while(!0);ki(i)}function y_(i,r,c,f,b,v,k,M,H,ee,re,ce,se,ne){if(i.timeoutHandle=-1,ce=r.subtreeFlags,ce&8192||(ce&16785408)===16785408){ce={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:xe},f_(r,v,ce);var je=(v&62914560)===v?pd-gt():(v&4194048)===v?b_-gt():0;if(je=uA(ce,je),je!==null){cr=v,i.cancelPendingCommit=je(T_.bind(null,i,r,v,c,f,b,k,M,H,re,ce,null,se,ne)),Fr(i,v,k,!ee);return}}T_(i,r,v,c,f,b,k,M,H)}function NT(i){for(var r=i;;){var c=r.tag;if((c===0||c===11||c===15)&&r.flags&16384&&(c=r.updateQueue,c!==null&&(c=c.stores,c!==null)))for(var f=0;f<c.length;f++){var b=c[f],v=b.getSnapshot;b=b.value;try{if(!_n(v(),b))return!1}catch{return!1}}if(c=r.child,r.subtreeFlags&16384&&c!==null)c.return=r,r=c;else{if(r===i)break;for(;r.sibling===null;){if(r.return===null||r.return===i)return!0;r=r.return}r.sibling.return=r.return,r=r.sibling}}return!0}function Fr(i,r,c,f){r&=~Gm,r&=~Oa,i.suspendedLanes|=r,i.pingedLanes&=~r,f&&(i.warmLanes|=r),f=i.expirationTimes;for(var b=r;0<b;){var v=31-As(b),k=1<<v;f[v]=-1,b&=~k}c!==0&&ke(i,c,r)}function xd(){return(mt&6)===0?(rc(0),!1):!0}function Zm(){if(tt!==null){if(vt===0)var i=tt.return;else i=tt,Qi=Ca=null,fm(i),Eo=null,Hl=0,i=tt;for(;i!==null;)Q1(i.alternate,i),i=i.return;tt=null}}function Bo(i,r){var c=i.timeoutHandle;c!==-1&&(i.timeoutHandle=-1,GT(c)),c=i.cancelPendingCommit,c!==null&&(i.cancelPendingCommit=null,c()),cr=0,Zm(),Nt=i,tt=c=Xi(i.current,null),rt=r,vt=0,kn=null,Pr=!1,Oo=oe(i,r),Vm=!1,Lo=Cn=Gm=Oa=$r=qt=0,cn=nc=null,Wm=!1,(r&8)!==0&&(r|=r&32);var f=i.entangledLanes;if(f!==0)for(i=i.entanglements,f&=r;0<f;){var b=31-As(f),v=1<<b;r|=i[b],f&=~v}return lr=r,Pu(),c}function S_(i,r){Ye=null,B.H=Yl,r===No||r===Wu?(r=Iv(),vt=3):r===tm?(r=Iv(),vt=4):vt=r===Tm?8:r!==null&&typeof r=="object"&&typeof r.then=="function"?6:1,kn=r,tt===null&&(qt=1,od(i,On(r,i.current)))}function w_(){var i=Sn.current;return i===null?!0:(rt&4194048)===rt?In===null:(rt&62914560)===rt||(rt&536870912)!==0?i===In:!1}function k_(){var i=B.H;return B.H=Yl,i===null?Yl:i}function C_(){var i=B.A;return B.A=kT,i}function vd(){qt=4,Pr||(rt&4194048)!==rt&&Sn.current!==null||(Oo=!0),($r&134217727)===0&&(Oa&134217727)===0||Nt===null||Fr(Nt,rt,Cn,!1)}function Qm(i,r,c){var f=mt;mt|=2;var b=k_(),v=C_();(Nt!==i||rt!==r)&&(bd=null,Bo(i,r)),r=!1;var k=qt;e:do try{if(vt!==0&&tt!==null){var M=tt,H=kn;switch(vt){case 8:Zm(),k=6;break e;case 3:case 2:case 9:case 6:Sn.current===null&&(r=!0);var ee=vt;if(vt=0,kn=null,Io(i,M,H,ee),c&&Oo){k=0;break e}break;default:ee=vt,vt=0,kn=null,Io(i,M,H,ee)}}ET(),k=qt;break}catch(re){S_(i,re)}while(!0);return r&&i.shellSuspendCounter++,Qi=Ca=null,mt=f,B.H=b,B.A=v,tt===null&&(Nt=null,rt=0,Pu()),k}function ET(){for(;tt!==null;)N_(tt)}function jT(i,r){var c=mt;mt|=2;var f=k_(),b=C_();Nt!==i||rt!==r?(bd=null,gd=gt()+500,Bo(i,r)):Oo=oe(i,r);e:do try{if(vt!==0&&tt!==null){r=tt;var v=kn;t:switch(vt){case 1:vt=0,kn=null,Io(i,r,v,1);break;case 2:case 9:if(zv(v)){vt=0,kn=null,E_(r);break}r=function(){vt!==2&&vt!==9||Nt!==i||(vt=7),ki(i)},v.then(r,r);break e;case 3:vt=7;break e;case 4:vt=5;break e;case 7:zv(v)?(vt=0,kn=null,E_(r)):(vt=0,kn=null,Io(i,r,v,7));break;case 5:var k=null;switch(tt.tag){case 26:k=tt.memoizedState;case 5:case 27:var M=tt;if(k?hy(k):M.stateNode.complete){vt=0,kn=null;var H=M.sibling;if(H!==null)tt=H;else{var ee=M.return;ee!==null?(tt=ee,_d(ee)):tt=null}break t}}vt=0,kn=null,Io(i,r,v,5);break;case 6:vt=0,kn=null,Io(i,r,v,6);break;case 8:Zm(),qt=6;break e;default:throw Error(n(462))}}TT();break}catch(re){S_(i,re)}while(!0);return Qi=Ca=null,B.H=f,B.A=b,mt=c,tt!==null?0:(Nt=null,rt=0,Pu(),qt)}function TT(){for(;tt!==null&&!gn();)N_(tt)}function N_(i){var r=X1(i.alternate,i,lr);i.memoizedProps=i.pendingProps,r===null?_d(i):tt=r}function E_(i){var r=i,c=r.alternate;switch(r.tag){case 15:case 0:r=q1(c,r,r.pendingProps,r.type,void 0,rt);break;case 11:r=q1(c,r,r.pendingProps,r.type.render,r.ref,rt);break;case 5:fm(r);default:Q1(c,r),r=tt=Cv(r,lr),r=X1(c,r,lr)}i.memoizedProps=i.pendingProps,r===null?_d(i):tt=r}function Io(i,r,c,f){Qi=Ca=null,fm(r),Eo=null,Hl=0;var b=r.return;try{if(bT(i,b,r,c,rt)){qt=1,od(i,On(c,i.current)),tt=null;return}}catch(v){if(b!==null)throw tt=b,v;qt=1,od(i,On(c,i.current)),tt=null;return}r.flags&32768?(ot||f===1?i=!0:Oo||(rt&536870912)!==0?i=!1:(Pr=i=!0,(f===2||f===9||f===3||f===6)&&(f=Sn.current,f!==null&&f.tag===13&&(f.flags|=16384))),j_(r,i)):_d(r)}function _d(i){var r=i;do{if((r.flags&32768)!==0){j_(r,Pr);return}i=r.return;var c=_T(r.alternate,r,lr);if(c!==null){tt=c;return}if(r=r.sibling,r!==null){tt=r;return}tt=r=i}while(r!==null);qt===0&&(qt=5)}function j_(i,r){do{var c=yT(i.alternate,i);if(c!==null){c.flags&=32767,tt=c;return}if(c=i.return,c!==null&&(c.flags|=32768,c.subtreeFlags=0,c.deletions=null),!r&&(i=i.sibling,i!==null)){tt=i;return}tt=i=c}while(i!==null);qt=6,tt=null}function T_(i,r,c,f,b,v,k,M,H){i.cancelPendingCommit=null;do yd();while(hs!==0);if((mt&6)!==0)throw Error(n(327));if(r!==null){if(r===i.current)throw Error(n(177));if(v=r.lanes|r.childLanes,v|=$f,Re(i,c,v,k,M,H),i===Nt&&(tt=Nt=null,rt=0),zo=r,Ur=i,cr=c,Km=v,Ym=b,x_=f,(r.subtreeFlags&10256)!==0||(r.flags&10256)!==0?(i.callbackNode=null,i.callbackPriority=0,DT(Fi,function(){return O_(),null})):(i.callbackNode=null,i.callbackPriority=0),f=(r.flags&13878)!==0,(r.subtreeFlags&13878)!==0||f){f=B.T,B.T=null,b=V.p,V.p=2,k=mt,mt|=4;try{ST(i,r,c)}finally{mt=k,V.p=b,B.T=f}}hs=1,A_(),M_(),R_()}}function A_(){if(hs===1){hs=0;var i=Ur,r=zo,c=(r.flags&13878)!==0;if((r.subtreeFlags&13878)!==0||c){c=B.T,B.T=null;var f=V.p;V.p=2;var b=mt;mt|=4;try{u_(r,i);var v=up,k=gv(i.containerInfo),M=v.focusedElem,H=v.selectionRange;if(k!==M&&M&&M.ownerDocument&&pv(M.ownerDocument.documentElement,M)){if(H!==null&&Lf(M)){var ee=H.start,re=H.end;if(re===void 0&&(re=ee),"selectionStart"in M)M.selectionStart=ee,M.selectionEnd=Math.min(re,M.value.length);else{var ce=M.ownerDocument||document,se=ce&&ce.defaultView||window;if(se.getSelection){var ne=se.getSelection(),je=M.textContent.length,$e=Math.min(H.start,je),wt=H.end===void 0?$e:Math.min(H.end,je);!ne.extend&&$e>wt&&(k=wt,wt=$e,$e=k);var Y=mv(M,$e),q=mv(M,wt);if(Y&&q&&(ne.rangeCount!==1||ne.anchorNode!==Y.node||ne.anchorOffset!==Y.offset||ne.focusNode!==q.node||ne.focusOffset!==q.offset)){var J=ce.createRange();J.setStart(Y.node,Y.offset),ne.removeAllRanges(),$e>wt?(ne.addRange(J),ne.extend(q.node,q.offset)):(J.setEnd(q.node,q.offset),ne.addRange(J))}}}}for(ce=[],ne=M;ne=ne.parentNode;)ne.nodeType===1&&ce.push({element:ne,left:ne.scrollLeft,top:ne.scrollTop});for(typeof M.focus=="function"&&M.focus(),M=0;M<ce.length;M++){var le=ce[M];le.element.scrollLeft=le.left,le.element.scrollTop=le.top}}Dd=!!cp,up=cp=null}finally{mt=b,V.p=f,B.T=c}}i.current=r,hs=2}}function M_(){if(hs===2){hs=0;var i=Ur,r=zo,c=(r.flags&8772)!==0;if((r.subtreeFlags&8772)!==0||c){c=B.T,B.T=null;var f=V.p;V.p=2;var b=mt;mt|=4;try{r_(i,r.alternate,r)}finally{mt=b,V.p=f,B.T=c}}hs=3}}function R_(){if(hs===4||hs===3){hs=0,Ts();var i=Ur,r=zo,c=cr,f=x_;(r.subtreeFlags&10256)!==0||(r.flags&10256)!==0?hs=5:(hs=0,zo=Ur=null,D_(i,i.pendingLanes));var b=i.pendingLanes;if(b===0&&(Hr=null),Vi(c),r=r.stateNode,_s&&typeof _s.onCommitFiberRoot=="function")try{_s.onCommitFiberRoot(qi,r,void 0,(r.current.flags&128)===128)}catch{}if(f!==null){r=B.T,b=V.p,V.p=2,B.T=null;try{for(var v=i.onRecoverableError,k=0;k<f.length;k++){var M=f[k];v(M.value,{componentStack:M.stack})}}finally{B.T=r,V.p=b}}(cr&3)!==0&&yd(),ki(i),b=i.pendingLanes,(c&261930)!==0&&(b&42)!==0?i===Xm?ic++:(ic=0,Xm=i):ic=0,rc(0)}}function D_(i,r){(i.pooledCacheLanes&=r)===0&&(r=i.pooledCache,r!=null&&(i.pooledCache=null,Pl(r)))}function yd(){return A_(),M_(),R_(),O_()}function O_(){if(hs!==5)return!1;var i=Ur,r=Km;Km=0;var c=Vi(cr),f=B.T,b=V.p;try{V.p=32>c?32:c,B.T=null,c=Ym,Ym=null;var v=Ur,k=cr;if(hs=0,zo=Ur=null,cr=0,(mt&6)!==0)throw Error(n(331));var M=mt;if(mt|=4,p_(v.current),h_(v,v.current,k,c),mt=M,rc(0,!1),_s&&typeof _s.onPostCommitFiberRoot=="function")try{_s.onPostCommitFiberRoot(qi,v)}catch{}return!0}finally{V.p=b,B.T=f,D_(i,r)}}function L_(i,r,c){r=On(c,r),r=jm(i.stateNode,r,2),i=Lr(i,r,2),i!==null&&(Ct(i,2),ki(i))}function _t(i,r,c){if(i.tag===3)L_(i,i,c);else for(;r!==null;){if(r.tag===3){L_(r,i,c);break}else if(r.tag===1){var f=r.stateNode;if(typeof r.type.getDerivedStateFromError=="function"||typeof f.componentDidCatch=="function"&&(Hr===null||!Hr.has(f))){i=On(c,i),c=z1(2),f=Lr(r,c,2),f!==null&&(B1(c,f,r,i),Ct(f,2),ki(f));break}}r=r.return}}function Jm(i,r,c){var f=i.pingCache;if(f===null){f=i.pingCache=new CT;var b=new Set;f.set(r,b)}else b=f.get(r),b===void 0&&(b=new Set,f.set(r,b));b.has(c)||(Vm=!0,b.add(c),i=AT.bind(null,i,r,c),r.then(i,i))}function AT(i,r,c){var f=i.pingCache;f!==null&&f.delete(r),i.pingedLanes|=i.suspendedLanes&c,i.warmLanes&=~c,Nt===i&&(rt&c)===c&&(qt===4||qt===3&&(rt&62914560)===rt&&300>gt()-pd?(mt&2)===0&&Bo(i,0):Gm|=c,Lo===rt&&(Lo=0)),ki(i)}function z_(i,r){r===0&&(r=Fe()),i=Sa(i,r),i!==null&&(Ct(i,r),ki(i))}function MT(i){var r=i.memoizedState,c=0;r!==null&&(c=r.retryLane),z_(i,c)}function RT(i,r){var c=0;switch(i.tag){case 31:case 13:var f=i.stateNode,b=i.memoizedState;b!==null&&(c=b.retryLane);break;case 19:f=i.stateNode;break;case 22:f=i.stateNode._retryCache;break;default:throw Error(n(314))}f!==null&&f.delete(r),z_(i,c)}function DT(i,r){return _e(i,r)}var Sd=null,Po=null,ep=!1,wd=!1,tp=!1,qr=0;function ki(i){i!==Po&&i.next===null&&(Po===null?Sd=Po=i:Po=Po.next=i),wd=!0,ep||(ep=!0,LT())}function rc(i,r){if(!tp&&wd){tp=!0;do for(var c=!1,f=Sd;f!==null;){if(i!==0){var b=f.pendingLanes;if(b===0)var v=0;else{var k=f.suspendedLanes,M=f.pingedLanes;v=(1<<31-As(42|i)+1)-1,v&=b&~(k&~M),v=v&201326741?v&201326741|1:v?v|2:0}v!==0&&(c=!0,$_(f,v))}else v=rt,v=F(f,f===Nt?v:0,f.cancelPendingCommit!==null||f.timeoutHandle!==-1),(v&3)===0||oe(f,v)||(c=!0,$_(f,v));f=f.next}while(c);tp=!1}}function OT(){B_()}function B_(){wd=ep=!1;var i=0;qr!==0&&VT()&&(i=qr);for(var r=gt(),c=null,f=Sd;f!==null;){var b=f.next,v=I_(f,r);v===0?(f.next=null,c===null?Sd=b:c.next=b,b===null&&(Po=c)):(c=f,(i!==0||(v&3)!==0)&&(wd=!0)),f=b}hs!==0&&hs!==5||rc(i),qr!==0&&(qr=0)}function I_(i,r){for(var c=i.suspendedLanes,f=i.pingedLanes,b=i.expirationTimes,v=i.pendingLanes&-62914561;0<v;){var k=31-As(v),M=1<<k,H=b[k];H===-1?((M&c)===0||(M&f)!==0)&&(b[k]=ye(M,r)):H<=r&&(i.expiredLanes|=M),v&=~M}if(r=Nt,c=rt,c=F(i,i===r?c:0,i.cancelPendingCommit!==null||i.timeoutHandle!==-1),f=i.callbackNode,c===0||i===r&&(vt===2||vt===9)||i.cancelPendingCommit!==null)return f!==null&&f!==null&&ft(f),i.callbackNode=null,i.callbackPriority=0;if((c&3)===0||oe(i,c)){if(r=c&-c,r===i.callbackPriority)return r;switch(f!==null&&ft(f),Vi(c)){case 2:case 8:c=Ui;break;case 32:c=Fi;break;case 268435456:c=Sr;break;default:c=Fi}return f=P_.bind(null,i),c=_e(c,f),i.callbackPriority=r,i.callbackNode=c,r}return f!==null&&f!==null&&ft(f),i.callbackPriority=2,i.callbackNode=null,2}function P_(i,r){if(hs!==0&&hs!==5)return i.callbackNode=null,i.callbackPriority=0,null;var c=i.callbackNode;if(yd()&&i.callbackNode!==c)return null;var f=rt;return f=F(i,i===Nt?f:0,i.cancelPendingCommit!==null||i.timeoutHandle!==-1),f===0?null:(__(i,f,r),I_(i,gt()),i.callbackNode!=null&&i.callbackNode===c?P_.bind(null,i):null)}function $_(i,r){if(yd())return null;__(i,r,!0)}function LT(){WT(function(){(mt&6)!==0?_e(ds,OT):B_()})}function sp(){if(qr===0){var i=ko;i===0&&(i=lt,lt<<=1,(lt&261888)===0&&(lt=256)),qr=i}return qr}function H_(i){return i==null||typeof i=="symbol"||typeof i=="boolean"?null:typeof i=="function"?i:Er(""+i)}function U_(i,r){var c=r.ownerDocument.createElement("input");return c.name=r.name,c.value=r.value,i.id&&c.setAttribute("form",i.id),r.parentNode.insertBefore(c,r),i=new FormData(i),c.parentNode.removeChild(c),i}function zT(i,r,c,f,b){if(r==="submit"&&c&&c.stateNode===b){var v=H_((b[Hs]||null).action),k=f.submitter;k&&(r=(r=k[Hs]||null)?H_(r.formAction):k.getAttribute("formAction"),r!==null&&(v=r,k=null));var M=new Lu("action","action",null,f,b);i.push({event:M,listeners:[{instance:null,listener:function(){if(f.defaultPrevented){if(qr!==0){var H=k?U_(b,k):new FormData(b);Sm(c,{pending:!0,data:H,method:b.method,action:v},null,H)}}else typeof v=="function"&&(M.preventDefault(),H=k?U_(b,k):new FormData(b),Sm(c,{pending:!0,data:H,method:b.method,action:v},v,H))},currentTarget:b}]})}}for(var np=0;np<Pf.length;np++){var ip=Pf[np],BT=ip.toLowerCase(),IT=ip[0].toUpperCase()+ip.slice(1);ai(BT,"on"+IT)}ai(vv,"onAnimationEnd"),ai(_v,"onAnimationIteration"),ai(yv,"onAnimationStart"),ai("dblclick","onDoubleClick"),ai("focusin","onFocus"),ai("focusout","onBlur"),ai(eT,"onTransitionRun"),ai(tT,"onTransitionStart"),ai(sT,"onTransitionCancel"),ai(Sv,"onTransitionEnd"),me("onMouseEnter",["mouseout","mouseover"]),me("onMouseLeave",["mouseout","mouseover"]),me("onPointerEnter",["pointerout","pointerover"]),me("onPointerLeave",["pointerout","pointerover"]),Wi("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),Wi("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),Wi("onBeforeInput",["compositionend","keypress","textInput","paste"]),Wi("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),Wi("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),Wi("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var ac="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),PT=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(ac));function F_(i,r){r=(r&4)!==0;for(var c=0;c<i.length;c++){var f=i[c],b=f.event;f=f.listeners;e:{var v=void 0;if(r)for(var k=f.length-1;0<=k;k--){var M=f[k],H=M.instance,ee=M.currentTarget;if(M=M.listener,H!==v&&b.isPropagationStopped())break e;v=M,b.currentTarget=ee;try{v(b)}catch(re){Iu(re)}b.currentTarget=null,v=H}else for(k=0;k<f.length;k++){if(M=f[k],H=M.instance,ee=M.currentTarget,M=M.listener,H!==v&&b.isPropagationStopped())break e;v=M,b.currentTarget=ee;try{v(b)}catch(re){Iu(re)}b.currentTarget=null,v=H}}}}function st(i,r){var c=r[Sl];c===void 0&&(c=r[Sl]=new Set);var f=i+"__bubble";c.has(f)||(q_(r,i,2,!1),c.add(f))}function rp(i,r,c){var f=0;r&&(f|=4),q_(c,i,f,r)}var kd="_reactListening"+Math.random().toString(36).slice(2);function ap(i){if(!i[kd]){i[kd]=!0,Eu.forEach(function(c){c!=="selectionchange"&&(PT.has(c)||rp(c,!1,i),rp(c,!0,i))});var r=i.nodeType===9?i:i.ownerDocument;r===null||r[kd]||(r[kd]=!0,rp("selectionchange",!1,r))}}function q_(i,r,c,f){switch(vy(r)){case 2:var b=fA;break;case 8:b=mA;break;default:b=yp}c=b.bind(null,r,c,i),b=void 0,!Nf||r!=="touchstart"&&r!=="touchmove"&&r!=="wheel"||(b=!0),f?b!==void 0?i.addEventListener(r,c,{capture:!0,passive:b}):i.addEventListener(r,c,!0):b!==void 0?i.addEventListener(r,c,{passive:b}):i.addEventListener(r,c,!1)}function op(i,r,c,f,b){var v=f;if((r&1)===0&&(r&2)===0&&f!==null)e:for(;;){if(f===null)return;var k=f.tag;if(k===3||k===4){var M=f.stateNode.containerInfo;if(M===b)break;if(k===4)for(k=f.return;k!==null;){var H=k.tag;if((H===3||H===4)&&k.stateNode.containerInfo===b)return;k=k.return}for(;M!==null;){if(k=Ks(M),k===null)return;if(H=k.tag,H===5||H===6||H===26||H===27){f=v=k;continue e}M=M.parentNode}}f=f.return}Mu(function(){var ee=v,re=Ke(c),ce=[];e:{var se=wv.get(i);if(se!==void 0){var ne=Lu,je=i;switch(i){case"keypress":if(Du(c)===0)break e;case"keydown":case"keyup":ne=Rj;break;case"focusin":je="focus",ne=Af;break;case"focusout":je="blur",ne=Af;break;case"beforeblur":case"afterblur":ne=Af;break;case"click":if(c.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":ne=Qx;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":ne=_j;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":ne=Lj;break;case vv:case _v:case yv:ne=wj;break;case Sv:ne=Bj;break;case"scroll":case"scrollend":ne=xj;break;case"wheel":ne=Pj;break;case"copy":case"cut":case"paste":ne=Cj;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":ne=ev;break;case"toggle":case"beforetoggle":ne=Hj}var $e=(r&4)!==0,wt=!$e&&(i==="scroll"||i==="scrollend"),Y=$e?se!==null?se+"Capture":null:se;$e=[];for(var q=ee,J;q!==null;){var le=q;if(J=le.stateNode,le=le.tag,le!==5&&le!==26&&le!==27||J===null||Y===null||(le=jl(q,Y),le!=null&&$e.push(oc(q,le,J))),wt)break;q=q.return}0<$e.length&&(se=new ne(se,je,null,c,re),ce.push({event:se,listeners:$e}))}}if((r&7)===0){e:{if(se=i==="mouseover"||i==="pointerover",ne=i==="mouseout"||i==="pointerout",se&&c!==De&&(je=c.relatedTarget||c.fromElement)&&(Ks(je)||je[wr]))break e;if((ne||se)&&(se=re.window===re?re:(se=re.ownerDocument)?se.defaultView||se.parentWindow:window,ne?(je=c.relatedTarget||c.toElement,ne=ee,je=je?Ks(je):null,je!==null&&(wt=l(je),$e=je.tag,je!==wt||$e!==5&&$e!==27&&$e!==6)&&(je=null)):(ne=null,je=ee),ne!==je)){if($e=Qx,le="onMouseLeave",Y="onMouseEnter",q="mouse",(i==="pointerout"||i==="pointerover")&&($e=ev,le="onPointerLeave",Y="onPointerEnter",q="pointer"),wt=ne==null?se:kr(ne),J=je==null?se:kr(je),se=new $e(le,q+"leave",ne,c,re),se.target=wt,se.relatedTarget=J,le=null,Ks(re)===ee&&($e=new $e(Y,q+"enter",je,c,re),$e.target=J,$e.relatedTarget=wt,le=$e),wt=le,ne&&je)t:{for($e=$T,Y=ne,q=je,J=0,le=Y;le;le=$e(le))J++;le=0;for(var Ie=q;Ie;Ie=$e(Ie))le++;for(;0<J-le;)Y=$e(Y),J--;for(;0<le-J;)q=$e(q),le--;for(;J--;){if(Y===q||q!==null&&Y===q.alternate){$e=Y;break t}Y=$e(Y),q=$e(q)}$e=null}else $e=null;ne!==null&&V_(ce,se,ne,$e,!1),je!==null&&wt!==null&&V_(ce,wt,je,$e,!0)}}e:{if(se=ee?kr(ee):window,ne=se.nodeName&&se.nodeName.toLowerCase(),ne==="select"||ne==="input"&&se.type==="file")var ut=lv;else if(av(se))if(cv)ut=Zj;else{ut=Yj;var Oe=Kj}else ne=se.nodeName,!ne||ne.toLowerCase()!=="input"||se.type!=="checkbox"&&se.type!=="radio"?ee&&Nr(ee.elementType)&&(ut=lv):ut=Xj;if(ut&&(ut=ut(i,ee))){ov(ce,ut,c,re);break e}Oe&&Oe(i,se,ee),i==="focusout"&&ee&&se.type==="number"&&ee.memoizedProps.value!=null&&fo(se,"number",se.value)}switch(Oe=ee?kr(ee):window,i){case"focusin":(av(Oe)||Oe.contentEditable==="true")&&(go=Oe,zf=ee,zl=null);break;case"focusout":zl=zf=go=null;break;case"mousedown":Bf=!0;break;case"contextmenu":case"mouseup":case"dragend":Bf=!1,bv(ce,c,re);break;case"selectionchange":if(Jj)break;case"keydown":case"keyup":bv(ce,c,re)}var Xe;if(Rf)e:{switch(i){case"compositionstart":var at="onCompositionStart";break e;case"compositionend":at="onCompositionEnd";break e;case"compositionupdate":at="onCompositionUpdate";break e}at=void 0}else po?iv(i,c)&&(at="onCompositionEnd"):i==="keydown"&&c.keyCode===229&&(at="onCompositionStart");at&&(tv&&c.locale!=="ko"&&(po||at!=="onCompositionStart"?at==="onCompositionEnd"&&po&&(Xe=Xx()):(jr=re,Ef="value"in jr?jr.value:jr.textContent,po=!0)),Oe=Cd(ee,at),0<Oe.length&&(at=new Jx(at,i,null,c,re),ce.push({event:at,listeners:Oe}),Xe?at.data=Xe:(Xe=rv(c),Xe!==null&&(at.data=Xe)))),(Xe=Fj?qj(i,c):Vj(i,c))&&(at=Cd(ee,"onBeforeInput"),0<at.length&&(Oe=new Jx("onBeforeInput","beforeinput",null,c,re),ce.push({event:Oe,listeners:at}),Oe.data=Xe)),zT(ce,i,ee,c,re)}F_(ce,r)})}function oc(i,r,c){return{instance:i,listener:r,currentTarget:c}}function Cd(i,r){for(var c=r+"Capture",f=[];i!==null;){var b=i,v=b.stateNode;if(b=b.tag,b!==5&&b!==26&&b!==27||v===null||(b=jl(i,c),b!=null&&f.unshift(oc(i,b,v)),b=jl(i,r),b!=null&&f.push(oc(i,b,v))),i.tag===3)return f;i=i.return}return[]}function $T(i){if(i===null)return null;do i=i.return;while(i&&i.tag!==5&&i.tag!==27);return i||null}function V_(i,r,c,f,b){for(var v=r._reactName,k=[];c!==null&&c!==f;){var M=c,H=M.alternate,ee=M.stateNode;if(M=M.tag,H!==null&&H===f)break;M!==5&&M!==26&&M!==27||ee===null||(H=ee,b?(ee=jl(c,v),ee!=null&&k.unshift(oc(c,ee,H))):b||(ee=jl(c,v),ee!=null&&k.push(oc(c,ee,H)))),c=c.return}k.length!==0&&i.push({event:r,listeners:k})}var HT=/\r\n?/g,UT=/\u0000|\uFFFD/g;function G_(i){return(typeof i=="string"?i:""+i).replace(HT,`
|
|
9
|
-
`).replace(UT,"")}function W_(i,r){return r=G_(r),G_(i)===r}function St(i,r,c,f,b,v){switch(c){case"children":typeof f=="string"?r==="body"||r==="textarea"&&f===""||He(i,f):(typeof f=="number"||typeof f=="bigint")&&r!=="body"&&He(i,""+f);break;case"className":xn(i,"class",f);break;case"tabIndex":xn(i,"tabindex",f);break;case"dir":case"role":case"viewBox":case"width":case"height":xn(i,c,f);break;case"style":xt(i,f,v);break;case"data":if(r!=="object"){xn(i,"data",f);break}case"src":case"href":if(f===""&&(r!=="a"||c!=="href")){i.removeAttribute(c);break}if(f==null||typeof f=="function"||typeof f=="symbol"||typeof f=="boolean"){i.removeAttribute(c);break}f=Er(""+f),i.setAttribute(c,f);break;case"action":case"formAction":if(typeof f=="function"){i.setAttribute(c,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof v=="function"&&(c==="formAction"?(r!=="input"&&St(i,r,"name",b.name,b,null),St(i,r,"formEncType",b.formEncType,b,null),St(i,r,"formMethod",b.formMethod,b,null),St(i,r,"formTarget",b.formTarget,b,null)):(St(i,r,"encType",b.encType,b,null),St(i,r,"method",b.method,b,null),St(i,r,"target",b.target,b,null)));if(f==null||typeof f=="symbol"||typeof f=="boolean"){i.removeAttribute(c);break}f=Er(""+f),i.setAttribute(c,f);break;case"onClick":f!=null&&(i.onclick=xe);break;case"onScroll":f!=null&&st("scroll",i);break;case"onScrollEnd":f!=null&&st("scrollend",i);break;case"dangerouslySetInnerHTML":if(f!=null){if(typeof f!="object"||!("__html"in f))throw Error(n(61));if(c=f.__html,c!=null){if(b.children!=null)throw Error(n(60));i.innerHTML=c}}break;case"multiple":i.multiple=f&&typeof f!="function"&&typeof f!="symbol";break;case"muted":i.muted=f&&typeof f!="function"&&typeof f!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(f==null||typeof f=="function"||typeof f=="boolean"||typeof f=="symbol"){i.removeAttribute("xlink:href");break}c=Er(""+f),i.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",c);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":f!=null&&typeof f!="function"&&typeof f!="symbol"?i.setAttribute(c,""+f):i.removeAttribute(c);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":f&&typeof f!="function"&&typeof f!="symbol"?i.setAttribute(c,""):i.removeAttribute(c);break;case"capture":case"download":f===!0?i.setAttribute(c,""):f!==!1&&f!=null&&typeof f!="function"&&typeof f!="symbol"?i.setAttribute(c,f):i.removeAttribute(c);break;case"cols":case"rows":case"size":case"span":f!=null&&typeof f!="function"&&typeof f!="symbol"&&!isNaN(f)&&1<=f?i.setAttribute(c,f):i.removeAttribute(c);break;case"rowSpan":case"start":f==null||typeof f=="function"||typeof f=="symbol"||isNaN(f)?i.removeAttribute(c):i.setAttribute(c,f);break;case"popover":st("beforetoggle",i),st("toggle",i),Us(i,"popover",f);break;case"xlinkActuate":sn(i,"http://www.w3.org/1999/xlink","xlink:actuate",f);break;case"xlinkArcrole":sn(i,"http://www.w3.org/1999/xlink","xlink:arcrole",f);break;case"xlinkRole":sn(i,"http://www.w3.org/1999/xlink","xlink:role",f);break;case"xlinkShow":sn(i,"http://www.w3.org/1999/xlink","xlink:show",f);break;case"xlinkTitle":sn(i,"http://www.w3.org/1999/xlink","xlink:title",f);break;case"xlinkType":sn(i,"http://www.w3.org/1999/xlink","xlink:type",f);break;case"xmlBase":sn(i,"http://www.w3.org/XML/1998/namespace","xml:base",f);break;case"xmlLang":sn(i,"http://www.w3.org/XML/1998/namespace","xml:lang",f);break;case"xmlSpace":sn(i,"http://www.w3.org/XML/1998/namespace","xml:space",f);break;case"is":Us(i,"is",f);break;case"innerText":case"textContent":break;default:(!(2<c.length)||c[0]!=="o"&&c[0]!=="O"||c[1]!=="n"&&c[1]!=="N")&&(c=Ki.get(c)||c,Us(i,c,f))}}function lp(i,r,c,f,b,v){switch(c){case"style":xt(i,f,v);break;case"dangerouslySetInnerHTML":if(f!=null){if(typeof f!="object"||!("__html"in f))throw Error(n(61));if(c=f.__html,c!=null){if(b.children!=null)throw Error(n(60));i.innerHTML=c}}break;case"children":typeof f=="string"?He(i,f):(typeof f=="number"||typeof f=="bigint")&&He(i,""+f);break;case"onScroll":f!=null&&st("scroll",i);break;case"onScrollEnd":f!=null&&st("scrollend",i);break;case"onClick":f!=null&&(i.onclick=xe);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!ba.hasOwnProperty(c))e:{if(c[0]==="o"&&c[1]==="n"&&(b=c.endsWith("Capture"),r=c.slice(2,b?c.length-7:void 0),v=i[Hs]||null,v=v!=null?v[c]:null,typeof v=="function"&&i.removeEventListener(r,v,b),typeof f=="function")){typeof v!="function"&&v!==null&&(c in i?i[c]=null:i.hasAttribute(c)&&i.removeAttribute(c)),i.addEventListener(r,f,b);break e}c in i?i[c]=f:f===!0?i.setAttribute(c,""):Us(i,c,f)}}}function Ls(i,r,c){switch(r){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":st("error",i),st("load",i);var f=!1,b=!1,v;for(v in c)if(c.hasOwnProperty(v)){var k=c[v];if(k!=null)switch(v){case"src":f=!0;break;case"srcSet":b=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(n(137,r));default:St(i,r,v,k,c,null)}}b&&St(i,r,"srcSet",c.srcSet,c,null),f&&St(i,r,"src",c.src,c,null);return;case"input":st("invalid",i);var M=v=k=b=null,H=null,ee=null;for(f in c)if(c.hasOwnProperty(f)){var re=c[f];if(re!=null)switch(f){case"name":b=re;break;case"type":k=re;break;case"checked":H=re;break;case"defaultChecked":ee=re;break;case"value":v=re;break;case"defaultValue":M=re;break;case"children":case"dangerouslySetInnerHTML":if(re!=null)throw Error(n(137,r));break;default:St(i,r,f,re,c,null)}}xa(i,v,M,H,ee,k,b,!1);return;case"select":st("invalid",i),f=k=v=null;for(b in c)if(c.hasOwnProperty(b)&&(M=c[b],M!=null))switch(b){case"value":v=M;break;case"defaultValue":k=M;break;case"multiple":f=M;default:St(i,r,b,M,c,null)}r=v,c=k,i.multiple=!!f,r!=null?Ms(i,!!f,r,!1):c!=null&&Ms(i,!!f,c,!0);return;case"textarea":st("invalid",i),v=b=f=null;for(k in c)if(c.hasOwnProperty(k)&&(M=c[k],M!=null))switch(k){case"value":f=M;break;case"defaultValue":b=M;break;case"children":v=M;break;case"dangerouslySetInnerHTML":if(M!=null)throw Error(n(91));break;default:St(i,r,k,M,c,null)}mo(i,f,b,v);return;case"option":for(H in c)c.hasOwnProperty(H)&&(f=c[H],f!=null)&&(H==="selected"?i.selected=f&&typeof f!="function"&&typeof f!="symbol":St(i,r,H,f,c,null));return;case"dialog":st("beforetoggle",i),st("toggle",i),st("cancel",i),st("close",i);break;case"iframe":case"object":st("load",i);break;case"video":case"audio":for(f=0;f<ac.length;f++)st(ac[f],i);break;case"image":st("error",i),st("load",i);break;case"details":st("toggle",i);break;case"embed":case"source":case"link":st("error",i),st("load",i);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(ee in c)if(c.hasOwnProperty(ee)&&(f=c[ee],f!=null))switch(ee){case"children":case"dangerouslySetInnerHTML":throw Error(n(137,r));default:St(i,r,ee,f,c,null)}return;default:if(Nr(r)){for(re in c)c.hasOwnProperty(re)&&(f=c[re],f!==void 0&&lp(i,r,re,f,c,void 0));return}}for(M in c)c.hasOwnProperty(M)&&(f=c[M],f!=null&&St(i,r,M,f,c,null))}function FT(i,r,c,f){switch(r){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var b=null,v=null,k=null,M=null,H=null,ee=null,re=null;for(ne in c){var ce=c[ne];if(c.hasOwnProperty(ne)&&ce!=null)switch(ne){case"checked":break;case"value":break;case"defaultValue":H=ce;default:f.hasOwnProperty(ne)||St(i,r,ne,null,f,ce)}}for(var se in f){var ne=f[se];if(ce=c[se],f.hasOwnProperty(se)&&(ne!=null||ce!=null))switch(se){case"type":v=ne;break;case"name":b=ne;break;case"checked":ee=ne;break;case"defaultChecked":re=ne;break;case"value":k=ne;break;case"defaultValue":M=ne;break;case"children":case"dangerouslySetInnerHTML":if(ne!=null)throw Error(n(137,r));break;default:ne!==ce&&St(i,r,se,ne,f,ce)}}Cl(i,k,M,H,ee,re,v,b);return;case"select":ne=k=M=se=null;for(v in c)if(H=c[v],c.hasOwnProperty(v)&&H!=null)switch(v){case"value":break;case"multiple":ne=H;default:f.hasOwnProperty(v)||St(i,r,v,null,f,H)}for(b in f)if(v=f[b],H=c[b],f.hasOwnProperty(b)&&(v!=null||H!=null))switch(b){case"value":se=v;break;case"defaultValue":M=v;break;case"multiple":k=v;default:v!==H&&St(i,r,b,v,f,H)}r=M,c=k,f=ne,se!=null?Ms(i,!!c,se,!1):!!f!=!!c&&(r!=null?Ms(i,!!c,r,!0):Ms(i,!!c,c?[]:"",!1));return;case"textarea":ne=se=null;for(M in c)if(b=c[M],c.hasOwnProperty(M)&&b!=null&&!f.hasOwnProperty(M))switch(M){case"value":break;case"children":break;default:St(i,r,M,null,f,b)}for(k in f)if(b=f[k],v=c[k],f.hasOwnProperty(k)&&(b!=null||v!=null))switch(k){case"value":se=b;break;case"defaultValue":ne=b;break;case"children":break;case"dangerouslySetInnerHTML":if(b!=null)throw Error(n(91));break;default:b!==v&&St(i,r,k,b,f,v)}Tu(i,se,ne);return;case"option":for(var je in c)se=c[je],c.hasOwnProperty(je)&&se!=null&&!f.hasOwnProperty(je)&&(je==="selected"?i.selected=!1:St(i,r,je,null,f,se));for(H in f)se=f[H],ne=c[H],f.hasOwnProperty(H)&&se!==ne&&(se!=null||ne!=null)&&(H==="selected"?i.selected=se&&typeof se!="function"&&typeof se!="symbol":St(i,r,H,se,f,ne));return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var $e in c)se=c[$e],c.hasOwnProperty($e)&&se!=null&&!f.hasOwnProperty($e)&&St(i,r,$e,null,f,se);for(ee in f)if(se=f[ee],ne=c[ee],f.hasOwnProperty(ee)&&se!==ne&&(se!=null||ne!=null))switch(ee){case"children":case"dangerouslySetInnerHTML":if(se!=null)throw Error(n(137,r));break;default:St(i,r,ee,se,f,ne)}return;default:if(Nr(r)){for(var wt in c)se=c[wt],c.hasOwnProperty(wt)&&se!==void 0&&!f.hasOwnProperty(wt)&&lp(i,r,wt,void 0,f,se);for(re in f)se=f[re],ne=c[re],!f.hasOwnProperty(re)||se===ne||se===void 0&&ne===void 0||lp(i,r,re,se,f,ne);return}}for(var Y in c)se=c[Y],c.hasOwnProperty(Y)&&se!=null&&!f.hasOwnProperty(Y)&&St(i,r,Y,null,f,se);for(ce in f)se=f[ce],ne=c[ce],!f.hasOwnProperty(ce)||se===ne||se==null&&ne==null||St(i,r,ce,se,f,ne)}function K_(i){switch(i){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function qT(){if(typeof performance.getEntriesByType=="function"){for(var i=0,r=0,c=performance.getEntriesByType("resource"),f=0;f<c.length;f++){var b=c[f],v=b.transferSize,k=b.initiatorType,M=b.duration;if(v&&M&&K_(k)){for(k=0,M=b.responseEnd,f+=1;f<c.length;f++){var H=c[f],ee=H.startTime;if(ee>M)break;var re=H.transferSize,ce=H.initiatorType;re&&K_(ce)&&(H=H.responseEnd,k+=re*(H<M?1:(M-ee)/(H-ee)))}if(--f,r+=8*(v+k)/(b.duration/1e3),i++,10<i)break}}if(0<i)return r/i/1e6}return navigator.connection&&(i=navigator.connection.downlink,typeof i=="number")?i:5}var cp=null,up=null;function Nd(i){return i.nodeType===9?i:i.ownerDocument}function Y_(i){switch(i){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function X_(i,r){if(i===0)switch(r){case"svg":return 1;case"math":return 2;default:return 0}return i===1&&r==="foreignObject"?0:i}function dp(i,r){return i==="textarea"||i==="noscript"||typeof r.children=="string"||typeof r.children=="number"||typeof r.children=="bigint"||typeof r.dangerouslySetInnerHTML=="object"&&r.dangerouslySetInnerHTML!==null&&r.dangerouslySetInnerHTML.__html!=null}var hp=null;function VT(){var i=window.event;return i&&i.type==="popstate"?i===hp?!1:(hp=i,!0):(hp=null,!1)}var Z_=typeof setTimeout=="function"?setTimeout:void 0,GT=typeof clearTimeout=="function"?clearTimeout:void 0,Q_=typeof Promise=="function"?Promise:void 0,WT=typeof queueMicrotask=="function"?queueMicrotask:typeof Q_<"u"?function(i){return Q_.resolve(null).then(i).catch(KT)}:Z_;function KT(i){setTimeout(function(){throw i})}function Vr(i){return i==="head"}function J_(i,r){var c=r,f=0;do{var b=c.nextSibling;if(i.removeChild(c),b&&b.nodeType===8)if(c=b.data,c==="/$"||c==="/&"){if(f===0){i.removeChild(b),Fo(r);return}f--}else if(c==="$"||c==="$?"||c==="$~"||c==="$!"||c==="&")f++;else if(c==="html")lc(i.ownerDocument.documentElement);else if(c==="head"){c=i.ownerDocument.head,lc(c);for(var v=c.firstChild;v;){var k=v.nextSibling,M=v.nodeName;v[ga]||M==="SCRIPT"||M==="STYLE"||M==="LINK"&&v.rel.toLowerCase()==="stylesheet"||c.removeChild(v),v=k}}else c==="body"&&lc(i.ownerDocument.body);c=b}while(c);Fo(r)}function ey(i,r){var c=i;i=0;do{var f=c.nextSibling;if(c.nodeType===1?r?(c._stashedDisplay=c.style.display,c.style.display="none"):(c.style.display=c._stashedDisplay||"",c.getAttribute("style")===""&&c.removeAttribute("style")):c.nodeType===3&&(r?(c._stashedText=c.nodeValue,c.nodeValue=""):c.nodeValue=c._stashedText||""),f&&f.nodeType===8)if(c=f.data,c==="/$"){if(i===0)break;i--}else c!=="$"&&c!=="$?"&&c!=="$~"&&c!=="$!"||i++;c=f}while(c)}function fp(i){var r=i.firstChild;for(r&&r.nodeType===10&&(r=r.nextSibling);r;){var c=r;switch(r=r.nextSibling,c.nodeName){case"HTML":case"HEAD":case"BODY":fp(c),wl(c);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(c.rel.toLowerCase()==="stylesheet")continue}i.removeChild(c)}}function YT(i,r,c,f){for(;i.nodeType===1;){var b=c;if(i.nodeName.toLowerCase()!==r.toLowerCase()){if(!f&&(i.nodeName!=="INPUT"||i.type!=="hidden"))break}else if(f){if(!i[ga])switch(r){case"meta":if(!i.hasAttribute("itemprop"))break;return i;case"link":if(v=i.getAttribute("rel"),v==="stylesheet"&&i.hasAttribute("data-precedence"))break;if(v!==b.rel||i.getAttribute("href")!==(b.href==null||b.href===""?null:b.href)||i.getAttribute("crossorigin")!==(b.crossOrigin==null?null:b.crossOrigin)||i.getAttribute("title")!==(b.title==null?null:b.title))break;return i;case"style":if(i.hasAttribute("data-precedence"))break;return i;case"script":if(v=i.getAttribute("src"),(v!==(b.src==null?null:b.src)||i.getAttribute("type")!==(b.type==null?null:b.type)||i.getAttribute("crossorigin")!==(b.crossOrigin==null?null:b.crossOrigin))&&v&&i.hasAttribute("async")&&!i.hasAttribute("itemprop"))break;return i;default:return i}}else if(r==="input"&&i.type==="hidden"){var v=b.name==null?null:""+b.name;if(b.type==="hidden"&&i.getAttribute("name")===v)return i}else return i;if(i=Pn(i.nextSibling),i===null)break}return null}function XT(i,r,c){if(r==="")return null;for(;i.nodeType!==3;)if((i.nodeType!==1||i.nodeName!=="INPUT"||i.type!=="hidden")&&!c||(i=Pn(i.nextSibling),i===null))return null;return i}function ty(i,r){for(;i.nodeType!==8;)if((i.nodeType!==1||i.nodeName!=="INPUT"||i.type!=="hidden")&&!r||(i=Pn(i.nextSibling),i===null))return null;return i}function mp(i){return i.data==="$?"||i.data==="$~"}function pp(i){return i.data==="$!"||i.data==="$?"&&i.ownerDocument.readyState!=="loading"}function ZT(i,r){var c=i.ownerDocument;if(i.data==="$~")i._reactRetry=r;else if(i.data!=="$?"||c.readyState!=="loading")r();else{var f=function(){r(),c.removeEventListener("DOMContentLoaded",f)};c.addEventListener("DOMContentLoaded",f),i._reactRetry=f}}function Pn(i){for(;i!=null;i=i.nextSibling){var r=i.nodeType;if(r===1||r===3)break;if(r===8){if(r=i.data,r==="$"||r==="$!"||r==="$?"||r==="$~"||r==="&"||r==="F!"||r==="F")break;if(r==="/$"||r==="/&")return null}}return i}var gp=null;function sy(i){i=i.nextSibling;for(var r=0;i;){if(i.nodeType===8){var c=i.data;if(c==="/$"||c==="/&"){if(r===0)return Pn(i.nextSibling);r--}else c!=="$"&&c!=="$!"&&c!=="$?"&&c!=="$~"&&c!=="&"||r++}i=i.nextSibling}return null}function ny(i){i=i.previousSibling;for(var r=0;i;){if(i.nodeType===8){var c=i.data;if(c==="$"||c==="$!"||c==="$?"||c==="$~"||c==="&"){if(r===0)return i;r--}else c!=="/$"&&c!=="/&"||r++}i=i.previousSibling}return null}function iy(i,r,c){switch(r=Nd(c),i){case"html":if(i=r.documentElement,!i)throw Error(n(452));return i;case"head":if(i=r.head,!i)throw Error(n(453));return i;case"body":if(i=r.body,!i)throw Error(n(454));return i;default:throw Error(n(451))}}function lc(i){for(var r=i.attributes;r.length;)i.removeAttributeNode(r[0]);wl(i)}var $n=new Map,ry=new Set;function Ed(i){return typeof i.getRootNode=="function"?i.getRootNode():i.nodeType===9?i:i.ownerDocument}var ur=V.d;V.d={f:QT,r:JT,D:eA,C:tA,L:sA,m:nA,X:rA,S:iA,M:aA};function QT(){var i=ur.f(),r=xd();return i||r}function JT(i){var r=Gi(i);r!==null&&r.tag===5&&r.type==="form"?S1(r):ur.r(i)}var $o=typeof document>"u"?null:document;function ay(i,r,c){var f=$o;if(f&&typeof r=="string"&&r){var b=nn(r);b='link[rel="'+i+'"][href="'+b+'"]',typeof c=="string"&&(b+='[crossorigin="'+c+'"]'),ry.has(b)||(ry.add(b),i={rel:i,crossOrigin:c,href:r},f.querySelector(b)===null&&(r=f.createElement("link"),Ls(r,"link",i),es(r),f.head.appendChild(r)))}}function eA(i){ur.D(i),ay("dns-prefetch",i,null)}function tA(i,r){ur.C(i,r),ay("preconnect",i,r)}function sA(i,r,c){ur.L(i,r,c);var f=$o;if(f&&i&&r){var b='link[rel="preload"][as="'+nn(r)+'"]';r==="image"&&c&&c.imageSrcSet?(b+='[imagesrcset="'+nn(c.imageSrcSet)+'"]',typeof c.imageSizes=="string"&&(b+='[imagesizes="'+nn(c.imageSizes)+'"]')):b+='[href="'+nn(i)+'"]';var v=b;switch(r){case"style":v=Ho(i);break;case"script":v=Uo(i)}$n.has(v)||(i=g({rel:"preload",href:r==="image"&&c&&c.imageSrcSet?void 0:i,as:r},c),$n.set(v,i),f.querySelector(b)!==null||r==="style"&&f.querySelector(cc(v))||r==="script"&&f.querySelector(uc(v))||(r=f.createElement("link"),Ls(r,"link",i),es(r),f.head.appendChild(r)))}}function nA(i,r){ur.m(i,r);var c=$o;if(c&&i){var f=r&&typeof r.as=="string"?r.as:"script",b='link[rel="modulepreload"][as="'+nn(f)+'"][href="'+nn(i)+'"]',v=b;switch(f){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":v=Uo(i)}if(!$n.has(v)&&(i=g({rel:"modulepreload",href:i},r),$n.set(v,i),c.querySelector(b)===null)){switch(f){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(c.querySelector(uc(v)))return}f=c.createElement("link"),Ls(f,"link",i),es(f),c.head.appendChild(f)}}}function iA(i,r,c){ur.S(i,r,c);var f=$o;if(f&&i){var b=Cr(f).hoistableStyles,v=Ho(i);r=r||"default";var k=b.get(v);if(!k){var M={loading:0,preload:null};if(k=f.querySelector(cc(v)))M.loading=5;else{i=g({rel:"stylesheet",href:i,"data-precedence":r},c),(c=$n.get(v))&&bp(i,c);var H=k=f.createElement("link");es(H),Ls(H,"link",i),H._p=new Promise(function(ee,re){H.onload=ee,H.onerror=re}),H.addEventListener("load",function(){M.loading|=1}),H.addEventListener("error",function(){M.loading|=2}),M.loading|=4,jd(k,r,f)}k={type:"stylesheet",instance:k,count:1,state:M},b.set(v,k)}}}function rA(i,r){ur.X(i,r);var c=$o;if(c&&i){var f=Cr(c).hoistableScripts,b=Uo(i),v=f.get(b);v||(v=c.querySelector(uc(b)),v||(i=g({src:i,async:!0},r),(r=$n.get(b))&&xp(i,r),v=c.createElement("script"),es(v),Ls(v,"link",i),c.head.appendChild(v)),v={type:"script",instance:v,count:1,state:null},f.set(b,v))}}function aA(i,r){ur.M(i,r);var c=$o;if(c&&i){var f=Cr(c).hoistableScripts,b=Uo(i),v=f.get(b);v||(v=c.querySelector(uc(b)),v||(i=g({src:i,async:!0,type:"module"},r),(r=$n.get(b))&&xp(i,r),v=c.createElement("script"),es(v),Ls(v,"link",i),c.head.appendChild(v)),v={type:"script",instance:v,count:1,state:null},f.set(b,v))}}function oy(i,r,c,f){var b=(b=pe.current)?Ed(b):null;if(!b)throw Error(n(446));switch(i){case"meta":case"title":return null;case"style":return typeof c.precedence=="string"&&typeof c.href=="string"?(r=Ho(c.href),c=Cr(b).hoistableStyles,f=c.get(r),f||(f={type:"style",instance:null,count:0,state:null},c.set(r,f)),f):{type:"void",instance:null,count:0,state:null};case"link":if(c.rel==="stylesheet"&&typeof c.href=="string"&&typeof c.precedence=="string"){i=Ho(c.href);var v=Cr(b).hoistableStyles,k=v.get(i);if(k||(b=b.ownerDocument||b,k={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},v.set(i,k),(v=b.querySelector(cc(i)))&&!v._p&&(k.instance=v,k.state.loading=5),$n.has(i)||(c={rel:"preload",as:"style",href:c.href,crossOrigin:c.crossOrigin,integrity:c.integrity,media:c.media,hrefLang:c.hrefLang,referrerPolicy:c.referrerPolicy},$n.set(i,c),v||oA(b,i,c,k.state))),r&&f===null)throw Error(n(528,""));return k}if(r&&f!==null)throw Error(n(529,""));return null;case"script":return r=c.async,c=c.src,typeof c=="string"&&r&&typeof r!="function"&&typeof r!="symbol"?(r=Uo(c),c=Cr(b).hoistableScripts,f=c.get(r),f||(f={type:"script",instance:null,count:0,state:null},c.set(r,f)),f):{type:"void",instance:null,count:0,state:null};default:throw Error(n(444,i))}}function Ho(i){return'href="'+nn(i)+'"'}function cc(i){return'link[rel="stylesheet"]['+i+"]"}function ly(i){return g({},i,{"data-precedence":i.precedence,precedence:null})}function oA(i,r,c,f){i.querySelector('link[rel="preload"][as="style"]['+r+"]")?f.loading=1:(r=i.createElement("link"),f.preload=r,r.addEventListener("load",function(){return f.loading|=1}),r.addEventListener("error",function(){return f.loading|=2}),Ls(r,"link",c),es(r),i.head.appendChild(r))}function Uo(i){return'[src="'+nn(i)+'"]'}function uc(i){return"script[async]"+i}function cy(i,r,c){if(r.count++,r.instance===null)switch(r.type){case"style":var f=i.querySelector('style[data-href~="'+nn(c.href)+'"]');if(f)return r.instance=f,es(f),f;var b=g({},c,{"data-href":c.href,"data-precedence":c.precedence,href:null,precedence:null});return f=(i.ownerDocument||i).createElement("style"),es(f),Ls(f,"style",b),jd(f,c.precedence,i),r.instance=f;case"stylesheet":b=Ho(c.href);var v=i.querySelector(cc(b));if(v)return r.state.loading|=4,r.instance=v,es(v),v;f=ly(c),(b=$n.get(b))&&bp(f,b),v=(i.ownerDocument||i).createElement("link"),es(v);var k=v;return k._p=new Promise(function(M,H){k.onload=M,k.onerror=H}),Ls(v,"link",f),r.state.loading|=4,jd(v,c.precedence,i),r.instance=v;case"script":return v=Uo(c.src),(b=i.querySelector(uc(v)))?(r.instance=b,es(b),b):(f=c,(b=$n.get(v))&&(f=g({},c),xp(f,b)),i=i.ownerDocument||i,b=i.createElement("script"),es(b),Ls(b,"link",f),i.head.appendChild(b),r.instance=b);case"void":return null;default:throw Error(n(443,r.type))}else r.type==="stylesheet"&&(r.state.loading&4)===0&&(f=r.instance,r.state.loading|=4,jd(f,c.precedence,i));return r.instance}function jd(i,r,c){for(var f=c.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),b=f.length?f[f.length-1]:null,v=b,k=0;k<f.length;k++){var M=f[k];if(M.dataset.precedence===r)v=M;else if(v!==b)break}v?v.parentNode.insertBefore(i,v.nextSibling):(r=c.nodeType===9?c.head:c,r.insertBefore(i,r.firstChild))}function bp(i,r){i.crossOrigin==null&&(i.crossOrigin=r.crossOrigin),i.referrerPolicy==null&&(i.referrerPolicy=r.referrerPolicy),i.title==null&&(i.title=r.title)}function xp(i,r){i.crossOrigin==null&&(i.crossOrigin=r.crossOrigin),i.referrerPolicy==null&&(i.referrerPolicy=r.referrerPolicy),i.integrity==null&&(i.integrity=r.integrity)}var Td=null;function uy(i,r,c){if(Td===null){var f=new Map,b=Td=new Map;b.set(c,f)}else b=Td,f=b.get(c),f||(f=new Map,b.set(c,f));if(f.has(i))return f;for(f.set(i,null),c=c.getElementsByTagName(i),b=0;b<c.length;b++){var v=c[b];if(!(v[ga]||v[Yt]||i==="link"&&v.getAttribute("rel")==="stylesheet")&&v.namespaceURI!=="http://www.w3.org/2000/svg"){var k=v.getAttribute(r)||"";k=i+k;var M=f.get(k);M?M.push(v):f.set(k,[v])}}return f}function dy(i,r,c){i=i.ownerDocument||i,i.head.insertBefore(c,r==="title"?i.querySelector("head > title"):null)}function lA(i,r,c){if(c===1||r.itemProp!=null)return!1;switch(i){case"meta":case"title":return!0;case"style":if(typeof r.precedence!="string"||typeof r.href!="string"||r.href==="")break;return!0;case"link":if(typeof r.rel!="string"||typeof r.href!="string"||r.href===""||r.onLoad||r.onError)break;return r.rel==="stylesheet"?(i=r.disabled,typeof r.precedence=="string"&&i==null):!0;case"script":if(r.async&&typeof r.async!="function"&&typeof r.async!="symbol"&&!r.onLoad&&!r.onError&&r.src&&typeof r.src=="string")return!0}return!1}function hy(i){return!(i.type==="stylesheet"&&(i.state.loading&3)===0)}function cA(i,r,c,f){if(c.type==="stylesheet"&&(typeof f.media!="string"||matchMedia(f.media).matches!==!1)&&(c.state.loading&4)===0){if(c.instance===null){var b=Ho(f.href),v=r.querySelector(cc(b));if(v){r=v._p,r!==null&&typeof r=="object"&&typeof r.then=="function"&&(i.count++,i=Ad.bind(i),r.then(i,i)),c.state.loading|=4,c.instance=v,es(v);return}v=r.ownerDocument||r,f=ly(f),(b=$n.get(b))&&bp(f,b),v=v.createElement("link"),es(v);var k=v;k._p=new Promise(function(M,H){k.onload=M,k.onerror=H}),Ls(v,"link",f),c.instance=v}i.stylesheets===null&&(i.stylesheets=new Map),i.stylesheets.set(c,r),(r=c.state.preload)&&(c.state.loading&3)===0&&(i.count++,c=Ad.bind(i),r.addEventListener("load",c),r.addEventListener("error",c))}}var vp=0;function uA(i,r){return i.stylesheets&&i.count===0&&Rd(i,i.stylesheets),0<i.count||0<i.imgCount?function(c){var f=setTimeout(function(){if(i.stylesheets&&Rd(i,i.stylesheets),i.unsuspend){var v=i.unsuspend;i.unsuspend=null,v()}},6e4+r);0<i.imgBytes&&vp===0&&(vp=62500*qT());var b=setTimeout(function(){if(i.waitingForImages=!1,i.count===0&&(i.stylesheets&&Rd(i,i.stylesheets),i.unsuspend)){var v=i.unsuspend;i.unsuspend=null,v()}},(i.imgBytes>vp?50:800)+r);return i.unsuspend=c,function(){i.unsuspend=null,clearTimeout(f),clearTimeout(b)}}:null}function Ad(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Rd(this,this.stylesheets);else if(this.unsuspend){var i=this.unsuspend;this.unsuspend=null,i()}}}var Md=null;function Rd(i,r){i.stylesheets=null,i.unsuspend!==null&&(i.count++,Md=new Map,r.forEach(dA,i),Md=null,Ad.call(i))}function dA(i,r){if(!(r.state.loading&4)){var c=Md.get(i);if(c)var f=c.get(null);else{c=new Map,Md.set(i,c);for(var b=i.querySelectorAll("link[data-precedence],style[data-precedence]"),v=0;v<b.length;v++){var k=b[v];(k.nodeName==="LINK"||k.getAttribute("media")!=="not all")&&(c.set(k.dataset.precedence,k),f=k)}f&&c.set(null,f)}b=r.instance,k=b.getAttribute("data-precedence"),v=c.get(k)||f,v===f&&c.set(null,b),c.set(k,b),this.count++,f=Ad.bind(this),b.addEventListener("load",f),b.addEventListener("error",f),v?v.parentNode.insertBefore(b,v.nextSibling):(i=i.nodeType===9?i.head:i,i.insertBefore(b,i.firstChild)),r.state.loading|=4}}var dc={$$typeof:E,Provider:null,Consumer:null,_currentValue:X,_currentValue2:X,_threadCount:0};function hA(i,r,c,f,b,v,k,M,H){this.tag=1,this.containerInfo=i,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Mt(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Mt(0),this.hiddenUpdates=Mt(null),this.identifierPrefix=f,this.onUncaughtError=b,this.onCaughtError=v,this.onRecoverableError=k,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=H,this.incompleteTransitions=new Map}function fy(i,r,c,f,b,v,k,M,H,ee,re,ce){return i=new hA(i,r,c,k,H,ee,re,ce,M),r=1,v===!0&&(r|=24),v=yn(3,null,null,r),i.current=v,v.stateNode=i,r=Qf(),r.refCount++,i.pooledCache=r,r.refCount++,v.memoizedState={element:f,isDehydrated:c,cache:r},sm(v),i}function my(i){return i?(i=vo,i):vo}function py(i,r,c,f,b,v){b=my(b),f.context===null?f.context=b:f.pendingContext=b,f=Or(r),f.payload={element:c},v=v===void 0?null:v,v!==null&&(f.callback=v),c=Lr(i,f,r),c!==null&&(un(c,i,r),Fl(c,i,r))}function gy(i,r){if(i=i.memoizedState,i!==null&&i.dehydrated!==null){var c=i.retryLane;i.retryLane=c!==0&&c<r?c:r}}function _p(i,r){gy(i,r),(i=i.alternate)&&gy(i,r)}function by(i){if(i.tag===13||i.tag===31){var r=Sa(i,67108864);r!==null&&un(r,i,67108864),_p(i,67108864)}}function xy(i){if(i.tag===13||i.tag===31){var r=Nn();r=zt(r);var c=Sa(i,r);c!==null&&un(c,i,r),_p(i,r)}}var Dd=!0;function fA(i,r,c,f){var b=B.T;B.T=null;var v=V.p;try{V.p=2,yp(i,r,c,f)}finally{V.p=v,B.T=b}}function mA(i,r,c,f){var b=B.T;B.T=null;var v=V.p;try{V.p=8,yp(i,r,c,f)}finally{V.p=v,B.T=b}}function yp(i,r,c,f){if(Dd){var b=Sp(f);if(b===null)op(i,r,f,Od,c),_y(i,f);else if(gA(b,i,r,c,f))f.stopPropagation();else if(_y(i,f),r&4&&-1<pA.indexOf(i)){for(;b!==null;){var v=Gi(b);if(v!==null)switch(v.tag){case 3:if(v=v.stateNode,v.current.memoizedState.isDehydrated){var k=$s(v.pendingLanes);if(k!==0){var M=v;for(M.pendingLanes|=2,M.entangledLanes|=2;k;){var H=1<<31-As(k);M.entanglements[1]|=H,k&=~H}ki(v),(mt&6)===0&&(gd=gt()+500,rc(0))}}break;case 31:case 13:M=Sa(v,2),M!==null&&un(M,v,2),xd(),_p(v,2)}if(v=Sp(f),v===null&&op(i,r,f,Od,c),v===b)break;b=v}b!==null&&f.stopPropagation()}else op(i,r,f,null,c)}}function Sp(i){return i=Ke(i),wp(i)}var Od=null;function wp(i){if(Od=null,i=Ks(i),i!==null){var r=l(i);if(r===null)i=null;else{var c=r.tag;if(c===13){if(i=u(r),i!==null)return i;i=null}else if(c===31){if(i=h(r),i!==null)return i;i=null}else if(c===3){if(r.stateNode.current.memoizedState.isDehydrated)return r.tag===3?r.stateNode.containerInfo:null;i=null}else r!==i&&(i=null)}}return Od=i,null}function vy(i){switch(i){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(ii()){case ds:return 2;case Ui:return 8;case Fi:case io:return 32;case Sr:return 268435456;default:return 32}default:return 32}}var kp=!1,Gr=null,Wr=null,Kr=null,hc=new Map,fc=new Map,Yr=[],pA="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function _y(i,r){switch(i){case"focusin":case"focusout":Gr=null;break;case"dragenter":case"dragleave":Wr=null;break;case"mouseover":case"mouseout":Kr=null;break;case"pointerover":case"pointerout":hc.delete(r.pointerId);break;case"gotpointercapture":case"lostpointercapture":fc.delete(r.pointerId)}}function mc(i,r,c,f,b,v){return i===null||i.nativeEvent!==v?(i={blockedOn:r,domEventName:c,eventSystemFlags:f,nativeEvent:v,targetContainers:[b]},r!==null&&(r=Gi(r),r!==null&&by(r)),i):(i.eventSystemFlags|=f,r=i.targetContainers,b!==null&&r.indexOf(b)===-1&&r.push(b),i)}function gA(i,r,c,f,b){switch(r){case"focusin":return Gr=mc(Gr,i,r,c,f,b),!0;case"dragenter":return Wr=mc(Wr,i,r,c,f,b),!0;case"mouseover":return Kr=mc(Kr,i,r,c,f,b),!0;case"pointerover":var v=b.pointerId;return hc.set(v,mc(hc.get(v)||null,i,r,c,f,b)),!0;case"gotpointercapture":return v=b.pointerId,fc.set(v,mc(fc.get(v)||null,i,r,c,f,b)),!0}return!1}function yy(i){var r=Ks(i.target);if(r!==null){var c=l(r);if(c!==null){if(r=c.tag,r===13){if(r=u(c),r!==null){i.blockedOn=r,lo(i.priority,function(){xy(c)});return}}else if(r===31){if(r=h(c),r!==null){i.blockedOn=r,lo(i.priority,function(){xy(c)});return}}else if(r===3&&c.stateNode.current.memoizedState.isDehydrated){i.blockedOn=c.tag===3?c.stateNode.containerInfo:null;return}}}i.blockedOn=null}function Ld(i){if(i.blockedOn!==null)return!1;for(var r=i.targetContainers;0<r.length;){var c=Sp(i.nativeEvent);if(c===null){c=i.nativeEvent;var f=new c.constructor(c.type,c);De=f,c.target.dispatchEvent(f),De=null}else return r=Gi(c),r!==null&&by(r),i.blockedOn=c,!1;r.shift()}return!0}function Sy(i,r,c){Ld(i)&&c.delete(r)}function bA(){kp=!1,Gr!==null&&Ld(Gr)&&(Gr=null),Wr!==null&&Ld(Wr)&&(Wr=null),Kr!==null&&Ld(Kr)&&(Kr=null),hc.forEach(Sy),fc.forEach(Sy)}function zd(i,r){i.blockedOn===r&&(i.blockedOn=null,kp||(kp=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,bA)))}var Bd=null;function wy(i){Bd!==i&&(Bd=i,e.unstable_scheduleCallback(e.unstable_NormalPriority,function(){Bd===i&&(Bd=null);for(var r=0;r<i.length;r+=3){var c=i[r],f=i[r+1],b=i[r+2];if(typeof f!="function"){if(wp(f||c)===null)continue;break}var v=Gi(c);v!==null&&(i.splice(r,3),r-=3,Sm(v,{pending:!0,data:b,method:c.method,action:f},f,b))}}))}function Fo(i){function r(H){return zd(H,i)}Gr!==null&&zd(Gr,i),Wr!==null&&zd(Wr,i),Kr!==null&&zd(Kr,i),hc.forEach(r),fc.forEach(r);for(var c=0;c<Yr.length;c++){var f=Yr[c];f.blockedOn===i&&(f.blockedOn=null)}for(;0<Yr.length&&(c=Yr[0],c.blockedOn===null);)yy(c),c.blockedOn===null&&Yr.shift();if(c=(i.ownerDocument||i).$$reactFormReplay,c!=null)for(f=0;f<c.length;f+=3){var b=c[f],v=c[f+1],k=b[Hs]||null;if(typeof v=="function")k||wy(c);else if(k){var M=null;if(v&&v.hasAttribute("formAction")){if(b=v,k=v[Hs]||null)M=k.formAction;else if(wp(b)!==null)continue}else M=k.action;typeof M=="function"?c[f+1]=M:(c.splice(f,3),f-=3),wy(c)}}}function ky(){function i(v){v.canIntercept&&v.info==="react-transition"&&v.intercept({handler:function(){return new Promise(function(k){return b=k})},focusReset:"manual",scroll:"manual"})}function r(){b!==null&&(b(),b=null),f||setTimeout(c,20)}function c(){if(!f&&!navigation.transition){var v=navigation.currentEntry;v&&v.url!=null&&navigation.navigate(v.url,{state:v.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var f=!1,b=null;return navigation.addEventListener("navigate",i),navigation.addEventListener("navigatesuccess",r),navigation.addEventListener("navigateerror",r),setTimeout(c,100),function(){f=!0,navigation.removeEventListener("navigate",i),navigation.removeEventListener("navigatesuccess",r),navigation.removeEventListener("navigateerror",r),b!==null&&(b(),b=null)}}}function Cp(i){this._internalRoot=i}Id.prototype.render=Cp.prototype.render=function(i){var r=this._internalRoot;if(r===null)throw Error(n(409));var c=r.current,f=Nn();py(c,f,i,r,null,null)},Id.prototype.unmount=Cp.prototype.unmount=function(){var i=this._internalRoot;if(i!==null){this._internalRoot=null;var r=i.containerInfo;py(i.current,2,null,i,null,null),xd(),r[wr]=null}};function Id(i){this._internalRoot=i}Id.prototype.unstable_scheduleHydration=function(i){if(i){var r=oo();i={blockedOn:null,target:i,priority:r};for(var c=0;c<Yr.length&&r!==0&&r<Yr[c].priority;c++);Yr.splice(c,0,i),c===0&&yy(i)}};var Cy=t.version;if(Cy!=="19.2.6")throw Error(n(527,Cy,"19.2.6"));V.findDOMNode=function(i){var r=i._reactInternals;if(r===void 0)throw typeof i.render=="function"?Error(n(188)):(i=Object.keys(i).join(","),Error(n(268,i)));return i=d(r),i=i!==null?p(i):null,i=i===null?null:i.stateNode,i};var xA={bundleType:0,version:"19.2.6",rendererPackageName:"react-dom",currentDispatcherRef:B,reconcilerVersion:"19.2.6"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Pd=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Pd.isDisabled&&Pd.supportsFiber)try{qi=Pd.inject(xA),_s=Pd}catch{}}return gc.createRoot=function(i,r){if(!o(i))throw Error(n(299));var c=!1,f="",b=R1,v=D1,k=O1;return r!=null&&(r.unstable_strictMode===!0&&(c=!0),r.identifierPrefix!==void 0&&(f=r.identifierPrefix),r.onUncaughtError!==void 0&&(b=r.onUncaughtError),r.onCaughtError!==void 0&&(v=r.onCaughtError),r.onRecoverableError!==void 0&&(k=r.onRecoverableError)),r=fy(i,1,!1,null,null,c,f,null,b,v,k,ky),i[wr]=r.current,ap(i),new Cp(r)},gc.hydrateRoot=function(i,r,c){if(!o(i))throw Error(n(299));var f=!1,b="",v=R1,k=D1,M=O1,H=null;return c!=null&&(c.unstable_strictMode===!0&&(f=!0),c.identifierPrefix!==void 0&&(b=c.identifierPrefix),c.onUncaughtError!==void 0&&(v=c.onUncaughtError),c.onCaughtError!==void 0&&(k=c.onCaughtError),c.onRecoverableError!==void 0&&(M=c.onRecoverableError),c.formState!==void 0&&(H=c.formState)),r=fy(i,1,!0,r,c??null,f,b,H,v,k,M,ky),r.context=my(null),c=r.current,f=Nn(),f=zt(f),b=Or(f),b.callback=null,Lr(c,b,f),c=f,r.current.lanes=c,Ct(r,c),ki(r),i[wr]=r.current,ap(i),new Id(r)},gc.version="19.2.6",gc}var Ly;function jA(){if(Ly)return jp.exports;Ly=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(),jp.exports=EA(),jp.exports}var uC=jA();const dC=(...e)=>e.filter((t,s,n)=>!!t&&t.trim()!==""&&n.indexOf(t)===s).join(" ").trim();const TA=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const AA=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,s,n)=>n?n.toUpperCase():s.toLowerCase());const zy=e=>{const t=AA(e);return t.charAt(0).toUpperCase()+t.slice(1)};var Rp={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 MA=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},RA=y.createContext({}),DA=()=>y.useContext(RA),OA=y.forwardRef(({color:e,size:t,strokeWidth:s,absoluteStrokeWidth:n,className:o="",children:l,iconNode:u,...h},m)=>{const{size:d=24,strokeWidth:p=2,absoluteStrokeWidth:g=!1,color:x="currentColor",className:_=""}=DA()??{},S=n??g?Number(s??p)*24/Number(t??d):s??p;return y.createElement("svg",{ref:m,...Rp,width:t??d??Rp.width,height:t??d??Rp.height,stroke:e??x,strokeWidth:S,className:dC("lucide",_,o),...!l&&!MA(h)&&{"aria-hidden":"true"},...h},[...u.map(([w,C])=>y.createElement(w,C)),...Array.isArray(l)?l:[l]])});const he=(e,t)=>{const s=y.forwardRef(({className:n,...o},l)=>y.createElement(OA,{ref:l,iconNode:t,className:dC(`lucide-${TA(zy(e))}`,`lucide-${e}`,n),...o}));return s.displayName=zy(e),s};const LA=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],Ga=he("activity",LA);const zA=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],Ob=he("arrow-down",zA);const BA=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],lu=he("arrow-left",BA);const IA=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],Lb=he("arrow-up",IA);const PA=[["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"}]],$A=he("blocks",PA);const HA=[["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"}]],UA=he("book-open",HA);const FA=[["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"}]],qA=he("bot",FA);const VA=[["path",{d:"M21 8a2 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.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]],hC=he("box",VA);const GA=[["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"}]],WA=he("braces",GA);const KA=[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]],fC=he("brain",KA);const YA=[["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"}]],XA=he("calendar",YA);const ZA=[["path",{d:"M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z",key:"18u6gg"}],["circle",{cx:"12",cy:"13",r:"3",key:"1vg3eu"}]],QA=he("camera",ZA);const JA=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Zn=he("check",JA);const e4=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Qn=he("chevron-down",e4);const t4=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],s4=he("chevron-left",t4);const n4=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],pi=he("chevron-right",n4);const i4=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],of=he("chevron-up",i4);const r4=[["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"}]],a4=he("circle-alert",r4);const o4=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],zb=he("circle-check-big",o4);const l4=[["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"}]],c4=he("circle-dashed",l4);const u4=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]],d4=he("circle-dot",u4);const h4=[["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"}]],mC=he("circle-x",h4);const f4=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Ch=he("circle",f4);const m4=[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]],pC=he("code-xml",m4);const p4=[["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"}]],Nh=he("copy",p4);const g4=[["path",{d:"M20 4v7a4 4 0 0 1-4 4H4",key:"6o5b7l"}],["path",{d:"m9 10-5 5 5 5",key:"1kshq7"}]],b4=he("corner-down-left",g4);const x4=[["path",{d:"m15 10 5 5-5 5",key:"qqa56n"}],["path",{d:"M4 4v7a4 4 0 0 0 4 4h12",key:"z08zvw"}]],v4=he("corner-down-right",x4);const _4=[["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"}]],y4=he("cpu",_4);const S4=[["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"}]],Yn=he("database",S4);const w4=[["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"}]],gC=he("download",w4);const k4=[["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"}]],C4=he("earth",k4);const N4=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],bC=he("ellipsis",N4);const E4=[["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"}]],la=he("external-link",E4);const j4=[["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"}]],xC=he("eye-off",j4);const T4=[["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"}]],Bb=he("eye",T4);const A4=[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35",key:"1wthlu"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 16-3 3 3 3",key:"331omg"}],["path",{d:"m9 22 3-3-3-3",key:"lsp7cz"}]],vC=he("file-code-corner",A4);const M4=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M9 10h6",key:"9gxzsh"}],["path",{d:"M12 13V7",key:"h0r20n"}],["path",{d:"M9 17h6",key:"r8uit2"}]],R4=he("file-diff",M4);const D4=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],_C=he("file-exclamation-point",D4);const O4=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M8 13h2",key:"yr2amv"}],["path",{d:"M14 13h2",key:"un5t4a"}],["path",{d:"M8 17h2",key:"2yhykz"}],["path",{d:"M14 17h2",key:"10kma7"}]],L4=he("file-spreadsheet",O4);const z4=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],yC=he("file-text",z4);const B4=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]],SC=he("file",B4);const I4=[["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"}]],P4=he("flask-conical",I4);const $4=[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 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.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]],H4=he("folder-git-2",$4);const U4=[["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"}]],lf=he("folder-open",U4);const F4=[["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"}]],q4=he("folder-plus",F4);const V4=[["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"}]],eo=he("folder",V4);const G4=[["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"}]],W4=he("funnel",G4);const K4=[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]],wC=he("gauge",K4);const Y4=[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]],pn=he("git-branch",Y4);const X4=[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]],Z4=he("git-commit-horizontal",X4);const Q4=[["circle",{cx:"12",cy:"18",r:"3",key:"1mpf1b"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["path",{d:"M18 9v2c0 .6-.4 1-1 1H7c-.6 0-1-.4-1-1V9",key:"1uq4wg"}],["path",{d:"M12 12v3",key:"158kv8"}]],By=he("git-fork",Q4);const J4=[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M6 21V9a9 9 0 0 0 9 9",key:"7kw0sc"}]],Ib=he("git-merge",J4);const eM=[["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M6 9v12",key:"1sc30k"}],["path",{d:"m21 3-6 6",key:"16nqsk"}],["path",{d:"m21 9-6-6",key:"9j17rh"}],["path",{d:"M18 11.5V15",key:"65xf6f"}],["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}]],tM=he("git-pull-request-closed",eM);const sM=[["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M6 9v12",key:"1sc30k"}],["path",{d:"M13 6h3a2 2 0 0 1 2 2v3",key:"1jb6z3"}],["path",{d:"M18 15v6",key:"9wciyi"}],["path",{d:"M21 18h-6",key:"139f0c"}]],nM=he("git-pull-request-create",sM);const iM=[["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"}]],rM=he("git-pull-request",iM);const aM=[["path",{d:"M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5",key:"mvr1a0"}]],oM=he("heart",aM);const lM=[["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"}]],cM=he("history",lM);const uM=[["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"}]],dM=he("image",uM);const hM=[["polyline",{points:"22 12 16 12 14 15 10 15 8 12 2 12",key:"o97t9d"}],["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"}]],Eh=he("inbox",hM);const fM=[["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"}]],kC=he("key-round",fM);const mM=[["path",{d:"M10 5h11",key:"1hkqpe"}],["path",{d:"M10 12h11",key:"6m4ad9"}],["path",{d:"M10 19h11",key:"14g2nv"}],["path",{d:"m3 10 3-3-3-3",key:"i7pm08"}],["path",{d:"m3 20 3-3-3-3",key:"20gx1n"}]],pM=he("list-collapse",mM);const gM=[["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"M3 10a2 2 0 0 0 2 2h3",key:"1npucw"}],["path",{d:"M3 5v12a2 2 0 0 0 2 2h3",key:"x1gjn2"}]],bM=he("list-tree",gM);const xM=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],ht=he("loader-circle",xM);const vM=[["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m16.2 7.8 2.9-2.9",key:"r700ao"}],["path",{d:"M18 12h4",key:"wj9ykh"}],["path",{d:"m16.2 16.2 2.9 2.9",key:"1bxg5t"}],["path",{d:"M12 18v4",key:"jadmvz"}],["path",{d:"m4.9 19.1 2.9-2.9",key:"bwix9q"}],["path",{d:"M2 12h4",key:"j09sii"}],["path",{d:"m4.9 4.9 2.9 2.9",key:"giyufr"}]],Iy=he("loader",vM);const _M=[["circle",{cx:"12",cy:"16",r:"1",key:"1au0dj"}],["rect",{x:"3",y:"10",width:"18",height:"12",rx:"2",key:"6s8ecr"}],["path",{d:"M7 10V7a5 5 0 0 1 10 0v3",key:"1pqi11"}]],yM=he("lock-keyhole",_M);const SM=[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 9.9-1",key:"1mm8w8"}]],CC=he("lock-open",SM);const wM=[["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"}]],kM=he("lock",wM);const CM=[["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"}]],NC=he("maximize-2",CM);const NM=[["path",{d:"M12 12v-2",key:"fwoke6"}],["path",{d:"M12 18v-2",key:"qj6yno"}],["path",{d:"M16 12v-2",key:"heuere"}],["path",{d:"M16 18v-2",key:"s1ct0w"}],["path",{d:"M2 11h1.5",key:"15p63e"}],["path",{d:"M20 18v-2",key:"12ehxp"}],["path",{d:"M20.5 11H22",key:"khsy7a"}],["path",{d:"M4 18v-2",key:"1c3oqr"}],["path",{d:"M8 12v-2",key:"1mwtfd"}],["path",{d:"M8 18v-2",key:"qcmpov"}],["rect",{x:"2",y:"6",width:"20",height:"10",rx:"2",key:"1qcswk"}]],EM=he("memory-stick",NM);const jM=[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]],TM=he("message-circle-warning",jM);const AM=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M12 8v6",key:"1ib9pf"}],["path",{d:"M9 11h6",key:"1fldmi"}]],EC=he("message-square-plus",AM);const MM=[["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"}]],jC=he("minimize-2",MM);const RM=[["path",{d:"M5 12h14",key:"1ays0h"}]],DM=he("minus",RM);const OM=[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]],LM=he("moon",OM);const zM=[["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"}]],BM=he("network",zM);const IM=[["path",{d:"M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z",key:"e79jfc"}],["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}]],PM=he("palette",IM);const $M=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]],HM=he("panel-left-close",$M);const UM=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m14 9 3 3-3 3",key:"8010ee"}]],FM=he("panel-left-open",UM);const qM=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]],VM=he("panel-left",qM);const GM=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 9h18",key:"1pudct"}]],WM=he("panel-top",GM);const KM=[["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"}]],YM=he("paperclip",KM);const XM=[["path",{d:"M13 21h8",key:"1jsn5i"}],["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"}]],ZM=he("pen-line",XM);const QM=[["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"}]],Kc=he("pencil",QM);const JM=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],xr=he("play",JM);const eR=[["path",{d:"M12 22v-5",key:"1ega77"}],["path",{d:"M15 8V2",key:"18g5xt"}],["path",{d:"M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z",key:"1xoxul"}],["path",{d:"M9 8V2",key:"14iosj"}]],TC=he("plug",eR);const tR=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],xs=he("plus",tR);const sR=[["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"}]],nR=he("radio",sR);const iR=[["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"}]],cu=he("refresh-cw",iR);const rR=[["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"}]],uu=he("rotate-ccw",rR);const aR=[["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"}]],AC=he("save",aR);const oR=[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]],MC=he("scroll-text",oR);const lR=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],cR=he("search",lR);const uR=[["path",{d:"M3.714 3.048a.498.498 0 0 0-.683.627l2.843 7.627a2 2 0 0 1 0 1.396l-2.842 7.627a.498.498 0 0 0 .682.627l18-8.5a.5.5 0 0 0 0-.904z",key:"117uat"}],["path",{d:"M6 12h16",key:"s4cdu5"}]],dR=he("send-horizontal",uR);const hR=[["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"}]],RC=he("server",hR);const fR=[["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"}]],mR=he("settings-2",fR);const pR=[["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"}]],DC=he("shield-alert",pR);const gR=[["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:"M9.1 9a3 3 0 0 1 5.82 1c0 2-3 3-3 3",key:"mhlwft"}],["path",{d:"M12 17h.01",key:"p32p05"}]],OC=he("shield-question-mark",gR);const bR=[["path",{d:"M21 4v16",key:"7j8fe9"}],["path",{d:"M6.029 4.285A2 2 0 0 0 3 6v12a2 2 0 0 0 3.029 1.715l9.997-5.998a2 2 0 0 0 .003-3.432z",key:"zs4d6"}]],LC=he("skip-forward",bR);const xR=[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]],mi=he("sparkles",xR);const vR=[["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"}]],_R=he("square-terminal",vR);const yR=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],al=he("square",yR);const SR=[["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"}]],wR=he("sun",SR);const kR=[["path",{d:"M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18",key:"gugj83"}]],zC=he("table-2",kR);const CR=[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]],hl=he("terminal",CR);const NR=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],ha=he("trash-2",NR);const ER=[["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"}]],du=he("triangle-alert",ER);const jR=[["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"}]],Pb=he("upload",jR);const TR=[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]],AR=he("user",TR);const MR=[["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"}]],RR=he("wand-sparkles",MR);const DR=[["path",{d:"M18 16.98h-5.99c-1.1 0-1.95.94-2.48 1.9A4 4 0 0 1 2 17c.01-.7.2-1.4.57-2",key:"q3hayz"}],["path",{d:"m6 17 3.13-5.78c.53-.97.1-2.18-.5-3.1a4 4 0 1 1 6.89-4.06",key:"1go1hn"}],["path",{d:"m12 6 3.13 5.73C15.66 12.7 16.9 13 18 13a4 4 0 0 1 0 8",key:"qlwsc0"}]],OR=he("webhook",DR);const LR=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],zR=he("wrench",LR);const BR=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Ns=he("x",BR);const IR=[["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"}]],PR=he("zap",IR);class BC extends Error{conflict;constructor(t,s){super(t),this.name="PortConflictResponseError",this.conflict=s}}async function Ce(e,t){const s=await fetch(e,t),n=await s.json().catch(()=>{});if(!s.ok)throw s.status===409&&n?.conflict?.code==="PORT_IN_USE"?new BC(n?.error||"Port already in use",n.conflict):new Error(n?.error||s.statusText);return n}async function mn(e,t){const s=new URLSearchParams;for(const[n,o]of Object.entries(t))o!==void 0&&String(o).trim()&&s.set(n,String(o));await Ce(e,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:s})}async function Jn(e,t){const s=new URLSearchParams;for(const[n,o]of Object.entries(t))o!==void 0&&String(o).trim()&&s.set(n,String(o));return Ce(e,{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:s})}async function IC(){return(await Ce("/api/agent")).agent}async function $R(e){return(await Ce(`/api/agent/mcp-status?agent=${encodeURIComponent(e)}`)).statuses}async function HR(){return(await Ce("/api/agent/usage")).usage}async function UR(){return(await Ce("/api/agent/claude-settings")).settings}async function FR(e){return(await Ce("/api/agent/claude-settings",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(e)})).settings}async function qR(){const e=await Ce("/api/agent/chat/status");return{configured:e.configured,approvals:e.approvals,provider:e.provider}}async function VR(e,t,s){await Ce("/api/agent/chat/approve",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({sessionId:e,requestId:t,decision:s})})}async function GR(e,t,s,n,o){const l=await fetch("/api/agent/chat",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({message:e,resumeSessionId:t,autoApprove:o}),signal:n});if(!l.ok||!l.body){const d=await l.json().catch(()=>{});throw new Error(d?.error||l.statusText||"Agent request failed")}const u=l.body.getReader(),h=new TextDecoder;let m="";for(;;){const{done:d,value:p}=await u.read();if(d)break;m+=h.decode(p,{stream:!0});let g=m.indexOf(`
|
|
10
|
-
|
|
11
|
-
`);for(;g!==-1;){const x=m.slice(0,g);m=m.slice(g+2);const _=x.split(`
|
|
12
|
-
`).find(S=>S.startsWith("data:"));if(_){const S=_.slice(5).trim();if(S)try{s(JSON.parse(S))}catch{}}g=m.indexOf(`
|
|
13
|
-
|
|
14
|
-
`)}}}async function PC(){return(await Ce("/api/databases")).connections}async function WR(){return(await Ce("/api/databases/detect")).detected}async function KR(e){await Jn("/api/databases",e)}async function YR(e){return Jn("/api/databases/test",e)}async function XR(e){await Ce(`/api/databases/${encodeURIComponent(e)}`,{method:"DELETE"})}async function $C(e){return(await Ce(`/api/databases/${encodeURIComponent(e)}/tables`)).tables}async function ZR(e,t,s=100){return Jn(`/api/databases/${encodeURIComponent(e)}/query`,{sql:t,limit:s})}async function QR(e,t){await Jn(`/api/databases/${encodeURIComponent(e)}/write-access`,{unlocked:String(t)})}async function Py(e,t,s){return Jn(`/api/databases/${encodeURIComponent(e)}/execute`,{sql:t,mode:s})}async function JR(e,t,s=100,n=0){return Ce(`/api/databases/${encodeURIComponent(e)}/rows?table=${encodeURIComponent(t)}&limit=${s}&offset=${n}`)}async function HC(e=100){return(await Ce(`/api/errors?limit=${e}`)).incidents}async function e6(e){return Ce(`/api/errors/${e}/prompt`)}async function t6(e=200){return(await Ce(`/api/git/graph?limit=${e}`)).commits}async function s6(e,t){const s=new URLSearchParams({hash:e});t&&s.set("file",t);const n=await fetch(`/api/git/commit?${s.toString()}`);if(!n.ok){const o=await n.json().catch(()=>({error:n.statusText}));throw new Error(o.error||"Unable to load commit diff")}return n.text()}async function n6(e){return(await Ce(`/api/git/commit/files?hash=${encodeURIComponent(e)}`)).files}async function i6(){return(await Ce("/api/git/files")).files}async function r6(){return(await Ce("/api/git/file-sizes")).files}async function a6(e){const t=await Ce(`/api/git/file?path=${encodeURIComponent(e)}`);return{content:t.content,truncated:t.truncated,binary:t.binary,size:t.size}}async function o6(e,t){await Ce("/api/git/file",{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({path:e,content:t})})}async function l6(e){const t=await fetch(`/api/git/diff?file=${encodeURIComponent(e)}`);if(!t.ok){const s=await t.json().catch(()=>({error:t.statusText}));throw new Error(s.error||"Unable to load diff")}return t.text()}async function UC(e){await Ce("/api/git/stage",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({paths:e})})}async function c6(e){await Ce("/api/git/unstage",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({paths:e})})}async function FC(e){return(await Jn("/api/git/commit",{message:e})).output}async function cf(){const e=await Jn("/api/git/push",{});return{output:e.output,branch:e.branch,setUpstream:e.setUpstream}}async function u6(){const e=await Jn("/api/git/default-branch/pull",{});return{output:e.output,branch:e.branch}}async function d6(e){return(await Jn("/api/git/branches",{name:e})).output}async function h6(e){await Ce(`/api/git/repositories/${encodeURIComponent(e)}`,{method:"DELETE"})}async function f6(){return Ce("/api/github/token")}async function m6(){return await Ce("/api/github/oauth/start",{method:"POST"})}async function p6(e){const t=await Ce("/api/github/oauth/poll",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({device_code:e})});return{done:t.done,slowDown:t.slowDown}}async function g6(e,t){const s=new URLSearchParams({host:e,token:t});await Ce("/api/github/token",{method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"},body:s})}async function Dp(e="open",t=1){return(await Ce(`/api/github/prs?state=${e}&page=${t}`)).prs}async function b6(e){return(await Ce(`/api/github/prs/${e}`)).pr}async function x6(e){const t=await fetch(`/api/github/prs/${e}/diff`);if(!t.ok){const s=await t.json().catch(()=>({error:t.statusText}));throw new Error(s.error||"Unable to load PR diff")}return t.text()}async function v6(e){return(await Ce("/api/github/prs",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(e)})).pr}async function _6(e,t={}){const s=await Ce(`/api/github/prs/${e}/merge`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({method:t.method??"squash",...t})});return{merged:s.merged,sha:s.sha,message:s.message}}async function Op(e="open",t=1){return(await Ce(`/api/github/issues?state=${e}&page=${t}`)).issues}async function y6(e){return(await Ce(`/api/github/issues/${e}`)).issue}async function S6(e){return(await Ce(`/api/github/issues/${e}/comments`)).comments}async function w6(e,t){return(await Ce(`/api/github/issues/${e}/comments`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({body:t})})).comment}async function k6(e){return(await Ce(`/api/github/ci/${encodeURIComponent(e)}`)).status}async function l0(e,t=1){const s=new URLSearchParams({page:String(t)});return e&&s.set("branch",e),(await Ce(`/api/github/runs?${s}`)).runs}async function C6(e){return(await Ce(`/api/github/runs/${e}/jobs`)).jobs}async function N6(){return(await Ce("/api/log-sources")).sources}async function E6(e){return(await Jn("/api/log-sources",e)).sources}async function qC(e,t={}){const s=new URLSearchParams;return s.set("lines",String(t.lines??500)),t.since&&s.set("since",t.since),t.until&&s.set("until",t.until),t.grep&&s.set("grep",t.grep),t.level&&s.set("level",t.level),t.cursor&&s.set("cursor",t.cursor),t.before&&s.set("before",t.before),(await Ce(`/api/log-sources/${encodeURIComponent(e)}/logs?${s.toString()}`)).logs}const $b={"content-type":"application/json"};async function j6(e){const t=await Ce("/api/onboard/scan",{method:"POST",headers:$b,body:JSON.stringify({url:e})});return{profile:t.profile,proposals:t.proposals,databases:t.databases??[]}}async function T6(e,t,s){const n=s?{name:s.name,engine:s.engine,url:s.url}:void 0;await Ce("/api/onboard/register",{method:"POST",headers:$b,body:JSON.stringify({...e,start:t,database:n})})}async function A6(e,t){const s=await fetch("/api/onboard/install/stream",{method:"POST",headers:$b,body:JSON.stringify(e)});if(!s.ok||!s.body){const u=await s.json().catch(()=>{});t.onError(u?.error||s.statusText);return}const n=s.body.getReader(),o=new TextDecoder;let l="";for(;;){const{done:u,value:h}=await n.read();if(u)break;l+=o.decode(h,{stream:!0});const m=l.split(`
|
|
15
|
-
|
|
16
|
-
`);l=m.pop()??"";for(const d of m)M6(d,t)}}function M6(e,t){let s="message",n="";for(const o of e.split(`
|
|
17
|
-
`))o.startsWith("event:")?s=o.slice(6).trim():o.startsWith("data:")&&(n+=o.slice(5).trim());if(n)try{const o=JSON.parse(n);s==="output"?t.onLine(o):s==="done"?t.onDone(o.exitCode??null):s==="error"&&t.onError(o.error??"Install failed.")}catch{}}async function R6(){return Ce("/api/dashboard")}async function D6(e){await Ce(`/api/services/${encodeURIComponent(e)}`,{method:"DELETE"})}async function O6(e,t,s){t.includes(s)||await mn("/api/bundles",{name:e,originalName:e,services:[...t,s].join(",")})}async function L6(e,t,s){t.includes(s)&&await mn("/api/bundles",{name:e,originalName:e,services:t.filter(n=>n!==s).join(",")})}async function VC(e,{files:t=!1}={}){const s=new URLSearchParams({path:e});return t&&s.set("files","1"),Ce(`/api/fs/directories?${s.toString()}`)}async function GC(e,t={}){const s=new URLSearchParams;s.set("lines",String(t.lines??500)),t.since&&s.set("since",t.since),t.until&&s.set("until",t.until),t.grep&&s.set("grep",t.grep),t.level&&s.set("level",t.level),t.cursor&&s.set("cursor",t.cursor),t.before&&s.set("before",t.before);const n=await Ce(`/api/services/${encodeURIComponent(e)}/logs?${s.toString()}`);return{logs:n.logs,queryable:!!n.queryable}}async function z6(e,t){const s=t?`?path=${encodeURIComponent(t)}`:"";return Ce(`/api/services/${encodeURIComponent(e)}/config-browse${s}`)}async function B6(e){const t=await Ce(`/api/services/${encodeURIComponent(e)}/config-files`);return{cwd:t.cwd,files:t.files}}async function $y(e,t){return Ce(`/api/services/${encodeURIComponent(e)}/config-file?path=${encodeURIComponent(t)}`)}async function I6(e,t,s){return Ce(`/api/services/${encodeURIComponent(e)}/config-file?path=${encodeURIComponent(t)}`,{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({entries:s})})}async function P6(e,t,s){return Ce(`/api/services/${encodeURIComponent(e)}/config-file?path=${encodeURIComponent(t)}`,{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({content:s})})}async function $6(e){return(await Ce(`/api/services/${encodeURIComponent(e)}/metrics`)).metrics}async function H6(e){return Jn("/api/services/test",e)}async function U6(e,t){return Jn(`/api/services/${encodeURIComponent(e)}/test`,t?{pattern:t}:{})}async function WC(e){const t=await fetch(e);if(!t.ok){const s=await t.json().catch(()=>({error:t.statusText}));throw new Error(s.error||"Request failed")}return t.text()}async function F6(){return(await Ce("/api/snapshots")).snapshots}async function q6(e){return(await Ce("/api/snapshots",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({label:e})})).snapshot}async function V6(e){return(await Ce(`/api/snapshots/${encodeURIComponent(e)}/files`)).files}async function G6(e,t){const s=t?`?path=${encodeURIComponent(t)}`:"";return WC(`/api/snapshots/${encodeURIComponent(e)}/diff${s}`)}async function W6(e){return Ce(`/api/snapshots/${encodeURIComponent(e)}/restore`,{method:"POST"})}async function K6(){return(await Ce("/api/agent/change-sets")).sessions}async function Y6(e){return Ce(`/api/agent/change-sets/${encodeURIComponent(e)}`)}async function X6(e,t){const s=t?`?path=${encodeURIComponent(t)}`:"";return WC(`/api/agent/change-sets/${encodeURIComponent(e)}/diff${s}`)}async function Z6(e){return Ce(`/api/agent/change-sets/${encodeURIComponent(e)}/restore`,{method:"POST"})}async function Q6(){return(await Ce("/api/terminal/sessions")).sessions}async function uh(e){return(await Ce("/api/terminal/sessions",{method:"POST",...e?.serviceName?{headers:{"content-type":"application/json"},body:JSON.stringify({serviceName:e.serviceName})}:{}})).session}async function J6(e){await Ce(`/api/terminal/sessions/${encodeURIComponent(e)}`,{method:"DELETE"})}async function e8(){return(await Ce("/api/workflows")).workflows}async function t8(e){return(await Ce("/api/workflows",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(e)})).workflows}async function s8(e){return(await Ce(`/api/workflows/${encodeURIComponent(e)}`,{method:"DELETE"})).workflows}async function Lp(){return(await Ce("/api/git/status")).status}function KC(e){var t,s,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(s=KC(e[t]))&&(n&&(n+=" "),n+=s)}else for(s in e)e[s]&&(n&&(n+=" "),n+=s);return n}function Yc(){for(var e,t,s=0,n="",o=arguments.length;s<o;s++)(e=arguments[s])&&(t=KC(e))&&(n&&(n+=" "),n+=t);return n}const Hy=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,Uy=Yc,YC=(e,t)=>s=>{var n;if(t?.variants==null)return Uy(e,s?.class,s?.className);const{variants:o,defaultVariants:l}=t,u=Object.keys(o).map(d=>{const p=s?.[d],g=l?.[d];if(p===null)return null;const x=Hy(p)||Hy(g);return o[d][x]}),h=s&&Object.entries(s).reduce((d,p)=>{let[g,x]=p;return x===void 0||(d[g]=x),d},{}),m=t==null||(n=t.compoundVariants)===null||n===void 0?void 0:n.reduce((d,p)=>{let{class:g,className:x,..._}=p;return Object.entries(_).every(S=>{let[w,C]=S;return Array.isArray(C)?C.includes({...l,...h}[w]):{...l,...h}[w]===C})?[...d,g,x]:d},[]);return Uy(e,u,m,s?.class,s?.className)},n8=(e,t)=>{const s=new Array(e.length+t.length);for(let n=0;n<e.length;n++)s[n]=e[n];for(let n=0;n<t.length;n++)s[e.length+n]=t[n];return s},i8=(e,t)=>({classGroupId:e,validator:t}),XC=(e=new Map,t=null,s)=>({nextPart:e,validators:t,classGroupId:s}),jh="-",Fy=[],r8="arbitrary..",a8=e=>{const t=l8(e),{conflictingClassGroups:s,conflictingClassGroupModifiers:n}=e;return{getClassGroupId:u=>{if(u.startsWith("[")&&u.endsWith("]"))return o8(u);const h=u.split(jh),m=h[0]===""&&h.length>1?1:0;return ZC(h,m,t)},getConflictingClassGroupIds:(u,h)=>{if(h){const m=n[u],d=s[u];return m?d?n8(d,m):m:d||Fy}return s[u]||Fy}}},ZC=(e,t,s)=>{if(e.length-t===0)return s.classGroupId;const o=e[t],l=s.nextPart.get(o);if(l){const d=ZC(e,t+1,l);if(d)return d}const u=s.validators;if(u===null)return;const h=t===0?e.join(jh):e.slice(t).join(jh),m=u.length;for(let d=0;d<m;d++){const p=u[d];if(p.validator(h))return p.classGroupId}},o8=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),s=t.indexOf(":"),n=t.slice(0,s);return n?r8+n:void 0})(),l8=e=>{const{theme:t,classGroups:s}=e;return c8(s,t)},c8=(e,t)=>{const s=XC();for(const n in e){const o=e[n];Hb(o,s,n,t)}return s},Hb=(e,t,s,n)=>{const o=e.length;for(let l=0;l<o;l++){const u=e[l];u8(u,t,s,n)}},u8=(e,t,s,n)=>{if(typeof e=="string"){d8(e,t,s);return}if(typeof e=="function"){h8(e,t,s,n);return}f8(e,t,s,n)},d8=(e,t,s)=>{const n=e===""?t:QC(t,e);n.classGroupId=s},h8=(e,t,s,n)=>{if(m8(e)){Hb(e(n),t,s,n);return}t.validators===null&&(t.validators=[]),t.validators.push(i8(s,e))},f8=(e,t,s,n)=>{const o=Object.entries(e),l=o.length;for(let u=0;u<l;u++){const[h,m]=o[u];Hb(m,QC(t,h),s,n)}},QC=(e,t)=>{let s=e;const n=t.split(jh),o=n.length;for(let l=0;l<o;l++){const u=n[l];let h=s.nextPart.get(u);h||(h=XC(),s.nextPart.set(u,h)),s=h}return s},m8=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,p8=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,s=Object.create(null),n=Object.create(null);const o=(l,u)=>{s[l]=u,t++,t>e&&(t=0,n=s,s=Object.create(null))};return{get(l){let u=s[l];if(u!==void 0)return u;if((u=n[l])!==void 0)return o(l,u),u},set(l,u){l in s?s[l]=u:o(l,u)}}},c0="!",qy=":",g8=[],Vy=(e,t,s,n,o)=>({modifiers:e,hasImportantModifier:t,baseClassName:s,maybePostfixModifierPosition:n,isExternal:o}),b8=e=>{const{prefix:t,experimentalParseClassName:s}=e;let n=o=>{const l=[];let u=0,h=0,m=0,d;const p=o.length;for(let w=0;w<p;w++){const C=o[w];if(u===0&&h===0){if(C===qy){l.push(o.slice(m,w)),m=w+1;continue}if(C==="/"){d=w;continue}}C==="["?u++:C==="]"?u--:C==="("?h++:C===")"&&h--}const g=l.length===0?o:o.slice(m);let x=g,_=!1;g.endsWith(c0)?(x=g.slice(0,-1),_=!0):g.startsWith(c0)&&(x=g.slice(1),_=!0);const S=d&&d>m?d-m:void 0;return Vy(l,_,x,S)};if(t){const o=t+qy,l=n;n=u=>u.startsWith(o)?l(u.slice(o.length)):Vy(g8,!1,u,void 0,!0)}if(s){const o=n;n=l=>s({className:l,parseClassName:o})}return n},x8=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((s,n)=>{t.set(s,1e6+n)}),s=>{const n=[];let o=[];for(let l=0;l<s.length;l++){const u=s[l],h=u[0]==="[",m=t.has(u);h||m?(o.length>0&&(o.sort(),n.push(...o),o=[]),n.push(u)):o.push(u)}return o.length>0&&(o.sort(),n.push(...o)),n}},v8=e=>({cache:p8(e.cacheSize),parseClassName:b8(e),sortModifiers:x8(e),postfixLookupClassGroupIds:_8(e),...a8(e)}),_8=e=>{const t=Object.create(null),s=e.postfixLookupClassGroups;if(s)for(let n=0;n<s.length;n++)t[s[n]]=!0;return t},y8=/\s+/,S8=(e,t)=>{const{parseClassName:s,getClassGroupId:n,getConflictingClassGroupIds:o,sortModifiers:l,postfixLookupClassGroupIds:u}=t,h=[],m=e.trim().split(y8);let d="";for(let p=m.length-1;p>=0;p-=1){const g=m[p],{isExternal:x,modifiers:_,hasImportantModifier:S,baseClassName:w,maybePostfixModifierPosition:C}=s(g);if(x){d=g+(d.length>0?" "+d:d);continue}let N=!!C,j;if(N){const D=w.substring(0,C);j=n(D);const T=j&&u[j]?n(w):void 0;T&&T!==j&&(j=T,N=!1)}else j=n(w);if(!j){if(!N){d=g+(d.length>0?" "+d:d);continue}if(j=n(w),!j){d=g+(d.length>0?" "+d:d);continue}N=!1}const E=_.length===0?"":_.length===1?_[0]:l(_).join(":"),A=S?E+c0:E,O=A+j;if(h.indexOf(O)>-1)continue;h.push(O);const P=o(j,N);for(let D=0;D<P.length;++D){const T=P[D];h.push(A+T)}d=g+(d.length>0?" "+d:d)}return d},w8=(...e)=>{let t=0,s,n,o="";for(;t<e.length;)(s=e[t++])&&(n=JC(s))&&(o&&(o+=" "),o+=n);return o},JC=e=>{if(typeof e=="string")return e;let t,s="";for(let n=0;n<e.length;n++)e[n]&&(t=JC(e[n]))&&(s&&(s+=" "),s+=t);return s},k8=(e,...t)=>{let s,n,o,l;const u=m=>{const d=t.reduce((p,g)=>g(p),e());return s=v8(d),n=s.cache.get,o=s.cache.set,l=h,h(m)},h=m=>{const d=n(m);if(d)return d;const p=S8(m,s);return o(m,p),p};return l=u,(...m)=>l(w8(...m))},C8=[],fs=e=>{const t=s=>s[e]||C8;return t.isThemeGetter=!0,t},eN=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,tN=/^\((?:(\w[\w-]*):)?(.+)\)$/i,N8=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,E8=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,j8=/\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$/,T8=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,A8=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,M8=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Zr=e=>N8.test(e),Qe=e=>!!e&&!Number.isNaN(Number(e)),Ci=e=>!!e&&Number.isInteger(Number(e)),zp=e=>e.endsWith("%")&&Qe(e.slice(0,-1)),dr=e=>E8.test(e),sN=()=>!0,R8=e=>j8.test(e)&&!T8.test(e),Ub=()=>!1,D8=e=>A8.test(e),O8=e=>M8.test(e),L8=e=>!Ne(e)&&!Ee(e),z8=e=>e.startsWith("@container")&&(e[10]==="/"&&e[11]!==void 0||e[11]==="s"&&e[16]!==void 0&&e.startsWith("-size/",10)||e[11]==="n"&&e[18]!==void 0&&e.startsWith("-normal/",10)),B8=e=>fa(e,rN,Ub),Ne=e=>eN.test(e),La=e=>fa(e,aN,R8),Gy=e=>fa(e,V8,Qe),I8=e=>fa(e,lN,sN),P8=e=>fa(e,oN,Ub),Wy=e=>fa(e,nN,Ub),$8=e=>fa(e,iN,O8),$d=e=>fa(e,cN,D8),Ee=e=>tN.test(e),bc=e=>to(e,aN),H8=e=>to(e,oN),Ky=e=>to(e,nN),U8=e=>to(e,rN),F8=e=>to(e,iN),Hd=e=>to(e,cN,!0),q8=e=>to(e,lN,!0),fa=(e,t,s)=>{const n=eN.exec(e);return n?n[1]?t(n[1]):s(n[2]):!1},to=(e,t,s=!1)=>{const n=tN.exec(e);return n?n[1]?t(n[1]):s:!1},nN=e=>e==="position"||e==="percentage",iN=e=>e==="image"||e==="url",rN=e=>e==="length"||e==="size"||e==="bg-size",aN=e=>e==="length",V8=e=>e==="number",oN=e=>e==="family-name",lN=e=>e==="number"||e==="weight",cN=e=>e==="shadow",G8=()=>{const e=fs("color"),t=fs("font"),s=fs("text"),n=fs("font-weight"),o=fs("tracking"),l=fs("leading"),u=fs("breakpoint"),h=fs("container"),m=fs("spacing"),d=fs("radius"),p=fs("shadow"),g=fs("inset-shadow"),x=fs("text-shadow"),_=fs("drop-shadow"),S=fs("blur"),w=fs("perspective"),C=fs("aspect"),N=fs("ease"),j=fs("animate"),E=()=>["auto","avoid","all","avoid-page","page","left","right","column"],A=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],O=()=>[...A(),Ee,Ne],P=()=>["auto","hidden","clip","visible","scroll"],D=()=>["auto","contain","none"],T=()=>[Ee,Ne,m],z=()=>[Zr,"full","auto",...T()],L=()=>[Ci,"none","subgrid",Ee,Ne],I=()=>["auto",{span:["full",Ci,Ee,Ne]},Ci,Ee,Ne],$=()=>[Ci,"auto",Ee,Ne],U=()=>["auto","min","max","fr",Ee,Ne],W=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],G=()=>["start","end","center","stretch","center-safe","end-safe"],B=()=>["auto",...T()],V=()=>[Zr,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...T()],X=()=>[Zr,"screen","full","dvw","lvw","svw","min","max","fit",...T()],K=()=>[Zr,"screen","full","lh","dvh","lvh","svh","min","max","fit",...T()],te=()=>[e,Ee,Ne],R=()=>[...A(),Ky,Wy,{position:[Ee,Ne]}],Z=()=>["no-repeat",{repeat:["","x","y","space","round"]}],ie=()=>["auto","cover","contain",U8,B8,{size:[Ee,Ne]}],de=()=>[zp,bc,La],fe=()=>["","none","full",d,Ee,Ne],pe=()=>["",Qe,bc,La],Se=()=>["solid","dashed","dotted","double"],Le=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],ve=()=>[Qe,zp,Ky,Wy],We=()=>["","none",S,Ee,Ne],ge=()=>["none",Qe,Ee,Ne],Te=()=>["none",Qe,Ee,Ne],Me=()=>[Qe,Ee,Ne],Pt=()=>[Zr,"full",...T()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[dr],breakpoint:[dr],color:[sN],container:[dr],"drop-shadow":[dr],ease:["in","out","in-out"],font:[L8],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[dr],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[dr],shadow:[dr],spacing:["px",Qe],text:[dr],"text-shadow":[dr],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",Zr,Ne,Ee,C]}],container:["container"],"container-type":[{"@container":["","normal","size",Ee,Ne]}],"container-named":[z8],columns:[{columns:[Qe,Ne,Ee,h]}],"break-after":[{"break-after":E()}],"break-before":[{"break-before":E()}],"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:O()}],overflow:[{overflow:P()}],"overflow-x":[{"overflow-x":P()}],"overflow-y":[{"overflow-y":P()}],overscroll:[{overscroll:D()}],"overscroll-x":[{"overscroll-x":D()}],"overscroll-y":[{"overscroll-y":D()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:z()}],"inset-x":[{"inset-x":z()}],"inset-y":[{"inset-y":z()}],start:[{"inset-s":z(),start:z()}],end:[{"inset-e":z(),end:z()}],"inset-bs":[{"inset-bs":z()}],"inset-be":[{"inset-be":z()}],top:[{top:z()}],right:[{right:z()}],bottom:[{bottom:z()}],left:[{left:z()}],visibility:["visible","invisible","collapse"],z:[{z:[Ci,"auto",Ee,Ne]}],basis:[{basis:[Zr,"full","auto",h,...T()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Qe,Zr,"auto","initial","none",Ne]}],grow:[{grow:["",Qe,Ee,Ne]}],shrink:[{shrink:["",Qe,Ee,Ne]}],order:[{order:[Ci,"first","last","none",Ee,Ne]}],"grid-cols":[{"grid-cols":L()}],"col-start-end":[{col:I()}],"col-start":[{"col-start":$()}],"col-end":[{"col-end":$()}],"grid-rows":[{"grid-rows":L()}],"row-start-end":[{row:I()}],"row-start":[{"row-start":$()}],"row-end":[{"row-end":$()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":U()}],"auto-rows":[{"auto-rows":U()}],gap:[{gap:T()}],"gap-x":[{"gap-x":T()}],"gap-y":[{"gap-y":T()}],"justify-content":[{justify:[...W(),"normal"]}],"justify-items":[{"justify-items":[...G(),"normal"]}],"justify-self":[{"justify-self":["auto",...G()]}],"align-content":[{content:["normal",...W()]}],"align-items":[{items:[...G(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...G(),{baseline:["","last"]}]}],"place-content":[{"place-content":W()}],"place-items":[{"place-items":[...G(),"baseline"]}],"place-self":[{"place-self":["auto",...G()]}],p:[{p:T()}],px:[{px:T()}],py:[{py:T()}],ps:[{ps:T()}],pe:[{pe:T()}],pbs:[{pbs:T()}],pbe:[{pbe:T()}],pt:[{pt:T()}],pr:[{pr:T()}],pb:[{pb:T()}],pl:[{pl:T()}],m:[{m:B()}],mx:[{mx:B()}],my:[{my:B()}],ms:[{ms:B()}],me:[{me:B()}],mbs:[{mbs:B()}],mbe:[{mbe:B()}],mt:[{mt:B()}],mr:[{mr:B()}],mb:[{mb:B()}],ml:[{ml:B()}],"space-x":[{"space-x":T()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":T()}],"space-y-reverse":["space-y-reverse"],size:[{size:V()}],"inline-size":[{inline:["auto",...X()]}],"min-inline-size":[{"min-inline":["auto",...X()]}],"max-inline-size":[{"max-inline":["none",...X()]}],"block-size":[{block:["auto",...K()]}],"min-block-size":[{"min-block":["auto",...K()]}],"max-block-size":[{"max-block":["none",...K()]}],w:[{w:[h,"screen",...V()]}],"min-w":[{"min-w":[h,"screen","none",...V()]}],"max-w":[{"max-w":[h,"screen","none","prose",{screen:[u]},...V()]}],h:[{h:["screen","lh",...V()]}],"min-h":[{"min-h":["screen","lh","none",...V()]}],"max-h":[{"max-h":["screen","lh",...V()]}],"font-size":[{text:["base",s,bc,La]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[n,q8,I8]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",zp,Ne]}],"font-family":[{font:[H8,P8,t]}],"font-features":[{"font-features":[Ne]}],"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:[o,Ee,Ne]}],"line-clamp":[{"line-clamp":[Qe,"none",Ee,Gy]}],leading:[{leading:[l,...T()]}],"list-image":[{"list-image":["none",Ee,Ne]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",Ee,Ne]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:te()}],"text-color":[{text:te()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...Se(),"wavy"]}],"text-decoration-thickness":[{decoration:[Qe,"from-font","auto",Ee,La]}],"text-decoration-color":[{decoration:te()}],"underline-offset":[{"underline-offset":[Qe,"auto",Ee,Ne]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:T()}],"tab-size":[{tab:[Ci,Ee,Ne]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",Ee,Ne]}],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",Ee,Ne]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:R()}],"bg-repeat":[{bg:Z()}],"bg-size":[{bg:ie()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Ci,Ee,Ne],radial:["",Ee,Ne],conic:[Ci,Ee,Ne]},F8,$8]}],"bg-color":[{bg:te()}],"gradient-from-pos":[{from:de()}],"gradient-via-pos":[{via:de()}],"gradient-to-pos":[{to:de()}],"gradient-from":[{from:te()}],"gradient-via":[{via:te()}],"gradient-to":[{to:te()}],rounded:[{rounded:fe()}],"rounded-s":[{"rounded-s":fe()}],"rounded-e":[{"rounded-e":fe()}],"rounded-t":[{"rounded-t":fe()}],"rounded-r":[{"rounded-r":fe()}],"rounded-b":[{"rounded-b":fe()}],"rounded-l":[{"rounded-l":fe()}],"rounded-ss":[{"rounded-ss":fe()}],"rounded-se":[{"rounded-se":fe()}],"rounded-ee":[{"rounded-ee":fe()}],"rounded-es":[{"rounded-es":fe()}],"rounded-tl":[{"rounded-tl":fe()}],"rounded-tr":[{"rounded-tr":fe()}],"rounded-br":[{"rounded-br":fe()}],"rounded-bl":[{"rounded-bl":fe()}],"border-w":[{border:pe()}],"border-w-x":[{"border-x":pe()}],"border-w-y":[{"border-y":pe()}],"border-w-s":[{"border-s":pe()}],"border-w-e":[{"border-e":pe()}],"border-w-bs":[{"border-bs":pe()}],"border-w-be":[{"border-be":pe()}],"border-w-t":[{"border-t":pe()}],"border-w-r":[{"border-r":pe()}],"border-w-b":[{"border-b":pe()}],"border-w-l":[{"border-l":pe()}],"divide-x":[{"divide-x":pe()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":pe()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...Se(),"hidden","none"]}],"divide-style":[{divide:[...Se(),"hidden","none"]}],"border-color":[{border:te()}],"border-color-x":[{"border-x":te()}],"border-color-y":[{"border-y":te()}],"border-color-s":[{"border-s":te()}],"border-color-e":[{"border-e":te()}],"border-color-bs":[{"border-bs":te()}],"border-color-be":[{"border-be":te()}],"border-color-t":[{"border-t":te()}],"border-color-r":[{"border-r":te()}],"border-color-b":[{"border-b":te()}],"border-color-l":[{"border-l":te()}],"divide-color":[{divide:te()}],"outline-style":[{outline:[...Se(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Qe,Ee,Ne]}],"outline-w":[{outline:["",Qe,bc,La]}],"outline-color":[{outline:te()}],shadow:[{shadow:["","none",p,Hd,$d]}],"shadow-color":[{shadow:te()}],"inset-shadow":[{"inset-shadow":["none",g,Hd,$d]}],"inset-shadow-color":[{"inset-shadow":te()}],"ring-w":[{ring:pe()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:te()}],"ring-offset-w":[{"ring-offset":[Qe,La]}],"ring-offset-color":[{"ring-offset":te()}],"inset-ring-w":[{"inset-ring":pe()}],"inset-ring-color":[{"inset-ring":te()}],"text-shadow":[{"text-shadow":["none",x,Hd,$d]}],"text-shadow-color":[{"text-shadow":te()}],opacity:[{opacity:[Qe,Ee,Ne]}],"mix-blend":[{"mix-blend":[...Le(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":Le()}],"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":[Qe]}],"mask-image-linear-from-pos":[{"mask-linear-from":ve()}],"mask-image-linear-to-pos":[{"mask-linear-to":ve()}],"mask-image-linear-from-color":[{"mask-linear-from":te()}],"mask-image-linear-to-color":[{"mask-linear-to":te()}],"mask-image-t-from-pos":[{"mask-t-from":ve()}],"mask-image-t-to-pos":[{"mask-t-to":ve()}],"mask-image-t-from-color":[{"mask-t-from":te()}],"mask-image-t-to-color":[{"mask-t-to":te()}],"mask-image-r-from-pos":[{"mask-r-from":ve()}],"mask-image-r-to-pos":[{"mask-r-to":ve()}],"mask-image-r-from-color":[{"mask-r-from":te()}],"mask-image-r-to-color":[{"mask-r-to":te()}],"mask-image-b-from-pos":[{"mask-b-from":ve()}],"mask-image-b-to-pos":[{"mask-b-to":ve()}],"mask-image-b-from-color":[{"mask-b-from":te()}],"mask-image-b-to-color":[{"mask-b-to":te()}],"mask-image-l-from-pos":[{"mask-l-from":ve()}],"mask-image-l-to-pos":[{"mask-l-to":ve()}],"mask-image-l-from-color":[{"mask-l-from":te()}],"mask-image-l-to-color":[{"mask-l-to":te()}],"mask-image-x-from-pos":[{"mask-x-from":ve()}],"mask-image-x-to-pos":[{"mask-x-to":ve()}],"mask-image-x-from-color":[{"mask-x-from":te()}],"mask-image-x-to-color":[{"mask-x-to":te()}],"mask-image-y-from-pos":[{"mask-y-from":ve()}],"mask-image-y-to-pos":[{"mask-y-to":ve()}],"mask-image-y-from-color":[{"mask-y-from":te()}],"mask-image-y-to-color":[{"mask-y-to":te()}],"mask-image-radial":[{"mask-radial":[Ee,Ne]}],"mask-image-radial-from-pos":[{"mask-radial-from":ve()}],"mask-image-radial-to-pos":[{"mask-radial-to":ve()}],"mask-image-radial-from-color":[{"mask-radial-from":te()}],"mask-image-radial-to-color":[{"mask-radial-to":te()}],"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":A()}],"mask-image-conic-pos":[{"mask-conic":[Qe]}],"mask-image-conic-from-pos":[{"mask-conic-from":ve()}],"mask-image-conic-to-pos":[{"mask-conic-to":ve()}],"mask-image-conic-from-color":[{"mask-conic-from":te()}],"mask-image-conic-to-color":[{"mask-conic-to":te()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:R()}],"mask-repeat":[{mask:Z()}],"mask-size":[{mask:ie()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",Ee,Ne]}],filter:[{filter:["","none",Ee,Ne]}],blur:[{blur:We()}],brightness:[{brightness:[Qe,Ee,Ne]}],contrast:[{contrast:[Qe,Ee,Ne]}],"drop-shadow":[{"drop-shadow":["","none",_,Hd,$d]}],"drop-shadow-color":[{"drop-shadow":te()}],grayscale:[{grayscale:["",Qe,Ee,Ne]}],"hue-rotate":[{"hue-rotate":[Qe,Ee,Ne]}],invert:[{invert:["",Qe,Ee,Ne]}],saturate:[{saturate:[Qe,Ee,Ne]}],sepia:[{sepia:["",Qe,Ee,Ne]}],"backdrop-filter":[{"backdrop-filter":["","none",Ee,Ne]}],"backdrop-blur":[{"backdrop-blur":We()}],"backdrop-brightness":[{"backdrop-brightness":[Qe,Ee,Ne]}],"backdrop-contrast":[{"backdrop-contrast":[Qe,Ee,Ne]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Qe,Ee,Ne]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Qe,Ee,Ne]}],"backdrop-invert":[{"backdrop-invert":["",Qe,Ee,Ne]}],"backdrop-opacity":[{"backdrop-opacity":[Qe,Ee,Ne]}],"backdrop-saturate":[{"backdrop-saturate":[Qe,Ee,Ne]}],"backdrop-sepia":[{"backdrop-sepia":["",Qe,Ee,Ne]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":T()}],"border-spacing-x":[{"border-spacing-x":T()}],"border-spacing-y":[{"border-spacing-y":T()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",Ee,Ne]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Qe,"initial",Ee,Ne]}],ease:[{ease:["linear","initial",N,Ee,Ne]}],delay:[{delay:[Qe,Ee,Ne]}],animate:[{animate:["none",j,Ee,Ne]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[w,Ee,Ne]}],"perspective-origin":[{"perspective-origin":O()}],rotate:[{rotate:ge()}],"rotate-x":[{"rotate-x":ge()}],"rotate-y":[{"rotate-y":ge()}],"rotate-z":[{"rotate-z":ge()}],scale:[{scale:Te()}],"scale-x":[{"scale-x":Te()}],"scale-y":[{"scale-y":Te()}],"scale-z":[{"scale-z":Te()}],"scale-3d":["scale-3d"],skew:[{skew:Me()}],"skew-x":[{"skew-x":Me()}],"skew-y":[{"skew-y":Me()}],transform:[{transform:[Ee,Ne,"","none","gpu","cpu"]}],"transform-origin":[{origin:O()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Pt()}],"translate-x":[{"translate-x":Pt()}],"translate-y":[{"translate-y":Pt()}],"translate-z":[{"translate-z":Pt()}],"translate-none":["translate-none"],zoom:[{zoom:[Ci,Ee,Ne]}],accent:[{accent:te()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:te()}],"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",Ee,Ne]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":te()}],"scrollbar-track-color":[{"scrollbar-track":te()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":T()}],"scroll-mx":[{"scroll-mx":T()}],"scroll-my":[{"scroll-my":T()}],"scroll-ms":[{"scroll-ms":T()}],"scroll-me":[{"scroll-me":T()}],"scroll-mbs":[{"scroll-mbs":T()}],"scroll-mbe":[{"scroll-mbe":T()}],"scroll-mt":[{"scroll-mt":T()}],"scroll-mr":[{"scroll-mr":T()}],"scroll-mb":[{"scroll-mb":T()}],"scroll-ml":[{"scroll-ml":T()}],"scroll-p":[{"scroll-p":T()}],"scroll-px":[{"scroll-px":T()}],"scroll-py":[{"scroll-py":T()}],"scroll-ps":[{"scroll-ps":T()}],"scroll-pe":[{"scroll-pe":T()}],"scroll-pbs":[{"scroll-pbs":T()}],"scroll-pbe":[{"scroll-pbe":T()}],"scroll-pt":[{"scroll-pt":T()}],"scroll-pr":[{"scroll-pr":T()}],"scroll-pb":[{"scroll-pb":T()}],"scroll-pl":[{"scroll-pl":T()}],"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",Ee,Ne]}],fill:[{fill:["none",...te()]}],"stroke-w":[{stroke:[Qe,bc,La,Gy]}],stroke:[{stroke:["none",...te()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],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"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},W8=k8(G8);function ae(...e){return W8(Yc(e))}const K8=YC("inline-flex h-9 shrink-0 cursor-pointer items-center justify-center gap-2 whitespace-nowrap rounded-md border border-transparent px-3 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",outline:"border-border bg-background hover:bg-muted",ghost:"hover:bg-muted",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90"},size:{default:"h-9 px-3",sm:"h-8 px-2.5 text-xs",icon:"size-9 p-0"}},defaultVariants:{variant:"default",size:"default"}});function Q({className:e,variant:t,size:s,...n}){return a.jsx("button",{className:ae(K8({variant:t,size:s,className:e})),...n})}const uN=y.createContext({});function Y8(e){const t=y.useRef(null);return t.current===null&&(t.current=e()),t.current}const X8=typeof window<"u",Z8=X8?y.useLayoutEffect:y.useEffect,Fb=y.createContext(null);function qb(e,t){e.indexOf(t)===-1&&e.push(t)}function Th(e,t){const s=e.indexOf(t);s>-1&&e.splice(s,1)}const zi=(e,t,s)=>s>t?t:s<e?e:s;let Vb=()=>{};const ca={},dN=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function hN(e){return typeof e=="object"&&e!==null}const fN=e=>/^0[^.\s]+$/u.test(e);function mN(e){let t;return()=>(t===void 0&&(t=e()),t)}const Wn=e=>e,Q8=(e,t)=>s=>t(e(s)),hu=(...e)=>e.reduce(Q8),Xc=(e,t,s)=>{const n=t-e;return n===0?1:(s-e)/n};class Gb{constructor(){this.subscriptions=[]}add(t){return qb(this.subscriptions,t),()=>Th(this.subscriptions,t)}notify(t,s,n){const o=this.subscriptions.length;if(o)if(o===1)this.subscriptions[0](t,s,n);else for(let l=0;l<o;l++){const u=this.subscriptions[l];u&&u(t,s,n)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const An=e=>e*1e3,Gn=e=>e/1e3;function pN(e,t){return t?e*(1e3/t):0}const gN=(e,t,s)=>(((1-3*s+3*t)*e+(3*s-6*t))*e+3*t)*e,J8=1e-7,eD=12;function tD(e,t,s,n,o){let l,u,h=0;do u=t+(s-t)/2,l=gN(u,n,o)-e,l>0?s=u:t=u;while(Math.abs(l)>J8&&++h<eD);return u}function fu(e,t,s,n){if(e===t&&s===n)return Wn;const o=l=>tD(l,0,1,e,s);return l=>l===0||l===1?l:gN(o(l),t,n)}const bN=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,xN=e=>t=>1-e(1-t),vN=fu(.33,1.53,.69,.99),Wb=xN(vN),_N=bN(Wb),yN=e=>e>=1?1:(e*=2)<1?.5*Wb(e):.5*(2-Math.pow(2,-10*(e-1))),Kb=e=>1-Math.sin(Math.acos(e)),SN=xN(Kb),wN=bN(Kb),sD=fu(.42,0,1,1),nD=fu(0,0,.58,1),kN=fu(.42,0,.58,1),iD=e=>Array.isArray(e)&&typeof e[0]!="number",CN=e=>Array.isArray(e)&&typeof e[0]=="number",rD={linear:Wn,easeIn:sD,easeInOut:kN,easeOut:nD,circIn:Kb,circInOut:wN,circOut:SN,backIn:Wb,backInOut:_N,backOut:vN,anticipate:yN},aD=e=>typeof e=="string",Yy=e=>{if(CN(e)){Vb(e.length===4);const[t,s,n,o]=e;return fu(t,s,n,o)}else if(aD(e))return rD[e];return e},Ud=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function oD(e,t){let s=new Set,n=new Set,o=!1,l=!1;const u=new WeakSet;let h={delta:0,timestamp:0,isProcessing:!1};function m(p){u.has(p)&&(d.schedule(p),e()),p(h)}const d={schedule:(p,g=!1,x=!1)=>{const S=x&&o?s:n;return g&&u.add(p),S.add(p),p},cancel:p=>{n.delete(p),u.delete(p)},process:p=>{if(h=p,o){l=!0;return}o=!0;const g=s;s=n,n=g,s.forEach(m),s.clear(),o=!1,l&&(l=!1,d.process(p))}};return d}const lD=40;function NN(e,t){let s=!1,n=!0;const o={delta:0,timestamp:0,isProcessing:!1},l=()=>s=!0,u=Ud.reduce((E,A)=>(E[A]=oD(l),E),{}),{setup:h,read:m,resolveKeyframes:d,preUpdate:p,update:g,preRender:x,render:_,postRender:S}=u,w=()=>{const E=ca.useManualTiming,A=E?o.timestamp:performance.now();s=!1,E||(o.delta=n?1e3/60:Math.max(Math.min(A-o.timestamp,lD),1)),o.timestamp=A,o.isProcessing=!0,h.process(o),m.process(o),d.process(o),p.process(o),g.process(o),x.process(o),_.process(o),S.process(o),o.isProcessing=!1,s&&t&&(n=!1,e(w))},C=()=>{s=!0,n=!0,o.isProcessing||e(w)};return{schedule:Ud.reduce((E,A)=>{const O=u[A];return E[A]=(P,D=!1,T=!1)=>(s||C(),O.schedule(P,D,T)),E},{}),cancel:E=>{for(let A=0;A<Ud.length;A++)u[Ud[A]].cancel(E)},state:o,steps:u}}const{schedule:Et,cancel:ua,state:zs,steps:Bp}=NN(typeof requestAnimationFrame<"u"?requestAnimationFrame:Wn,!0);let dh;function cD(){dh=void 0}const Qs={now:()=>(dh===void 0&&Qs.set(zs.isProcessing||ca.useManualTiming?zs.timestamp:performance.now()),dh),set:e=>{dh=e,queueMicrotask(cD)}},EN=e=>t=>typeof t=="string"&&t.startsWith(e),jN=EN("--"),uD=EN("var(--"),Yb=e=>uD(e)?dD.test(e.split("/*")[0].trim()):!1,dD=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function Xy(e){return typeof e!="string"?!1:e.split("/*")[0].includes("var(--")}const fl={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},Zc={...fl,transform:e=>zi(0,1,e)},Fd={...fl,default:1},$c=e=>Math.round(e*1e5)/1e5,Xb=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function hD(e){return e==null}const fD=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,Zb=(e,t)=>s=>!!(typeof s=="string"&&fD.test(s)&&s.startsWith(e)||t&&!hD(s)&&Object.prototype.hasOwnProperty.call(s,t)),TN=(e,t,s)=>n=>{if(typeof n!="string")return n;const[o,l,u,h]=n.match(Xb);return{[e]:parseFloat(o),[t]:parseFloat(l),[s]:parseFloat(u),alpha:h!==void 0?parseFloat(h):1}},mD=e=>zi(0,255,e),Ip={...fl,transform:e=>Math.round(mD(e))},Fa={test:Zb("rgb","red"),parse:TN("red","green","blue"),transform:({red:e,green:t,blue:s,alpha:n=1})=>"rgba("+Ip.transform(e)+", "+Ip.transform(t)+", "+Ip.transform(s)+", "+$c(Zc.transform(n))+")"};function pD(e){let t="",s="",n="",o="";return e.length>5?(t=e.substring(1,3),s=e.substring(3,5),n=e.substring(5,7),o=e.substring(7,9)):(t=e.substring(1,2),s=e.substring(2,3),n=e.substring(3,4),o=e.substring(4,5),t+=t,s+=s,n+=n,o+=o),{red:parseInt(t,16),green:parseInt(s,16),blue:parseInt(n,16),alpha:o?parseInt(o,16)/255:1}}const u0={test:Zb("#"),parse:pD,transform:Fa.transform},mu=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),sa=mu("deg"),Di=mu("%"),Ae=mu("px"),gD=mu("vh"),bD=mu("vw"),Zy={...Di,parse:e=>Di.parse(e)/100,transform:e=>Di.transform(e*100)},Qo={test:Zb("hsl","hue"),parse:TN("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:s,alpha:n=1})=>"hsla("+Math.round(e)+", "+Di.transform($c(t))+", "+Di.transform($c(s))+", "+$c(Zc.transform(n))+")"},os={test:e=>Fa.test(e)||u0.test(e)||Qo.test(e),parse:e=>Fa.test(e)?Fa.parse(e):Qo.test(e)?Qo.parse(e):u0.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?Fa.transform(e):Qo.transform(e),getAnimatableNone:e=>{const t=os.parse(e);return t.alpha=0,os.transform(t)}},xD=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function vD(e){return isNaN(e)&&typeof e=="string"&&(e.match(Xb)?.length||0)+(e.match(xD)?.length||0)>0}const AN="number",MN="color",_D="var",yD="var(",Qy="${}",SD=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function ol(e){const t=e.toString(),s=[],n={color:[],number:[],var:[]},o=[];let l=0;const h=t.replace(SD,m=>(os.test(m)?(n.color.push(l),o.push(MN),s.push(os.parse(m))):m.startsWith(yD)?(n.var.push(l),o.push(_D),s.push(m)):(n.number.push(l),o.push(AN),s.push(parseFloat(m))),++l,Qy)).split(Qy);return{values:s,split:h,indexes:n,types:o}}function wD(e){return ol(e).values}function RN({split:e,types:t}){const s=e.length;return n=>{let o="";for(let l=0;l<s;l++)if(o+=e[l],n[l]!==void 0){const u=t[l];u===AN?o+=$c(n[l]):u===MN?o+=os.transform(n[l]):o+=n[l]}return o}}function kD(e){return RN(ol(e))}const CD=e=>typeof e=="number"?0:os.test(e)?os.getAnimatableNone(e):e,ND=(e,t)=>typeof e=="number"?t?.trim().endsWith("/")?e:0:CD(e);function ED(e){const t=ol(e);return RN(t)(t.values.map((n,o)=>ND(n,t.split[o])))}const fi={test:vD,parse:wD,createTransformer:kD,getAnimatableNone:ED};function Pp(e,t,s){return s<0&&(s+=1),s>1&&(s-=1),s<1/6?e+(t-e)*6*s:s<1/2?t:s<2/3?e+(t-e)*(2/3-s)*6:e}function jD({hue:e,saturation:t,lightness:s,alpha:n}){e/=360,t/=100,s/=100;let o=0,l=0,u=0;if(!t)o=l=u=s;else{const h=s<.5?s*(1+t):s+t-s*t,m=2*s-h;o=Pp(m,h,e+1/3),l=Pp(m,h,e),u=Pp(m,h,e-1/3)}return{red:Math.round(o*255),green:Math.round(l*255),blue:Math.round(u*255),alpha:n}}function Ah(e,t){return s=>s>0?t:e}const Lt=(e,t,s)=>e+(t-e)*s,$p=(e,t,s)=>{const n=e*e,o=s*(t*t-n)+n;return o<0?0:Math.sqrt(o)},TD=[u0,Fa,Qo],AD=e=>TD.find(t=>t.test(e));function Jy(e){const t=AD(e);if(!t)return!1;let s=t.parse(e);return t===Qo&&(s=jD(s)),s}const eS=(e,t)=>{const s=Jy(e),n=Jy(t);if(!s||!n)return Ah(e,t);const o={...s};return l=>(o.red=$p(s.red,n.red,l),o.green=$p(s.green,n.green,l),o.blue=$p(s.blue,n.blue,l),o.alpha=Lt(s.alpha,n.alpha,l),Fa.transform(o))},d0=new Set(["none","hidden"]);function MD(e,t){return d0.has(e)?s=>s<=0?e:t:s=>s>=1?t:e}function RD(e,t){return s=>Lt(e,t,s)}function Qb(e){return typeof e=="number"?RD:typeof e=="string"?Yb(e)?Ah:os.test(e)?eS:LD:Array.isArray(e)?DN:typeof e=="object"?os.test(e)?eS:DD:Ah}function DN(e,t){const s=[...e],n=s.length,o=e.map((l,u)=>Qb(l)(l,t[u]));return l=>{for(let u=0;u<n;u++)s[u]=o[u](l);return s}}function DD(e,t){const s={...e,...t},n={};for(const o in s)e[o]!==void 0&&t[o]!==void 0&&(n[o]=Qb(e[o])(e[o],t[o]));return o=>{for(const l in n)s[l]=n[l](o);return s}}function OD(e,t){const s=[],n={color:0,var:0,number:0};for(let o=0;o<t.values.length;o++){const l=t.types[o],u=e.indexes[l][n[l]],h=e.values[u]??0;s[o]=h,n[l]++}return s}const LD=(e,t)=>{const s=fi.createTransformer(t),n=ol(e),o=ol(t);return n.indexes.var.length===o.indexes.var.length&&n.indexes.color.length===o.indexes.color.length&&n.indexes.number.length>=o.indexes.number.length?d0.has(e)&&!o.values.length||d0.has(t)&&!n.values.length?MD(e,t):hu(DN(OD(n,o),o.values),s):Ah(e,t)};function ON(e,t,s){return typeof e=="number"&&typeof t=="number"&&typeof s=="number"?Lt(e,t,s):Qb(e)(e,t)}const zD=e=>{const t=({timestamp:s})=>e(s);return{start:(s=!0)=>Et.update(t,s),stop:()=>ua(t),now:()=>zs.isProcessing?zs.timestamp:Qs.now()}},LN=(e,t,s=10)=>{let n="";const o=Math.max(Math.round(t/s),2);for(let l=0;l<o;l++)n+=Math.round(e(l/(o-1))*1e4)/1e4+", ";return`linear(${n.substring(0,n.length-2)})`},Mh=2e4;function Jb(e){let t=0;const s=50;let n=e.next(t);for(;!n.done&&t<Mh;)t+=s,n=e.next(t);return t>=Mh?1/0:t}function BD(e,t=100,s){const n=s({...e,keyframes:[0,t]}),o=Math.min(Jb(n),Mh);return{type:"keyframes",ease:l=>n.next(o*l).value/t,duration:Gn(o)}}const Vt={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1};function h0(e,t){return e*Math.sqrt(1-t*t)}const ID=12;function PD(e,t,s){let n=s;for(let o=1;o<ID;o++)n=n-e(n)/t(n);return n}const Hp=.001;function $D({duration:e=Vt.duration,bounce:t=Vt.bounce,velocity:s=Vt.velocity,mass:n=Vt.mass}){let o,l,u=1-t;u=zi(Vt.minDamping,Vt.maxDamping,u),e=zi(Vt.minDuration,Vt.maxDuration,Gn(e)),u<1?(o=d=>{const p=d*u,g=p*e,x=p-s,_=h0(d,u),S=Math.exp(-g);return Hp-x/_*S},l=d=>{const g=d*u*e,x=g*s+s,_=Math.pow(u,2)*Math.pow(d,2)*e,S=Math.exp(-g),w=h0(Math.pow(d,2),u);return(-o(d)+Hp>0?-1:1)*((x-_)*S)/w}):(o=d=>{const p=Math.exp(-d*e),g=(d-s)*e+1;return-Hp+p*g},l=d=>{const p=Math.exp(-d*e),g=(s-d)*(e*e);return p*g});const h=5/e,m=PD(o,l,h);if(e=An(e),isNaN(m))return{stiffness:Vt.stiffness,damping:Vt.damping,duration:e};{const d=Math.pow(m,2)*n;return{stiffness:d,damping:u*2*Math.sqrt(n*d),duration:e}}}const HD=["duration","bounce"],UD=["stiffness","damping","mass"];function tS(e,t){return t.some(s=>e[s]!==void 0)}function FD(e){let t={velocity:Vt.velocity,stiffness:Vt.stiffness,damping:Vt.damping,mass:Vt.mass,isResolvedFromDuration:!1,...e};if(!tS(e,UD)&&tS(e,HD))if(t.velocity=0,e.visualDuration){const s=e.visualDuration,n=2*Math.PI/(s*1.2),o=n*n,l=2*zi(.05,1,1-(e.bounce||0))*Math.sqrt(o);t={...t,mass:Vt.mass,stiffness:o,damping:l}}else{const s=$D({...e,velocity:0});t={...t,...s,mass:Vt.mass},t.isResolvedFromDuration=!0}return t}function Rh(e=Vt.visualDuration,t=Vt.bounce){const s=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:n,restDelta:o}=s;const l=s.keyframes[0],u=s.keyframes[s.keyframes.length-1],h={done:!1,value:l},{stiffness:m,damping:d,mass:p,duration:g,velocity:x,isResolvedFromDuration:_}=FD({...s,velocity:-Gn(s.velocity||0)}),S=x||0,w=d/(2*Math.sqrt(m*p)),C=u-l,N=Gn(Math.sqrt(m/p)),j=Math.abs(C)<5;n||(n=j?Vt.restSpeed.granular:Vt.restSpeed.default),o||(o=j?Vt.restDelta.granular:Vt.restDelta.default);let E,A,O,P,D,T;if(w<1)O=h0(N,w),P=(S+w*N*C)/O,E=L=>{const I=Math.exp(-w*N*L);return u-I*(P*Math.sin(O*L)+C*Math.cos(O*L))},D=w*N*P+C*O,T=w*N*C-P*O,A=L=>Math.exp(-w*N*L)*(D*Math.sin(O*L)+T*Math.cos(O*L));else if(w===1){E=I=>u-Math.exp(-N*I)*(C+(S+N*C)*I);const L=S+N*C;A=I=>Math.exp(-N*I)*(N*L*I-S)}else{const L=N*Math.sqrt(w*w-1);E=W=>{const G=Math.exp(-w*N*W),B=Math.min(L*W,300);return u-G*((S+w*N*C)*Math.sinh(B)+L*C*Math.cosh(B))/L};const I=(S+w*N*C)/L,$=w*N*I-C*L,U=w*N*C-I*L;A=W=>{const G=Math.exp(-w*N*W),B=Math.min(L*W,300);return G*($*Math.sinh(B)+U*Math.cosh(B))}}const z={calculatedDuration:_&&g||null,velocity:L=>An(A(L)),next:L=>{if(!_&&w<1){const $=Math.exp(-w*N*L),U=Math.sin(O*L),W=Math.cos(O*L),G=u-$*(P*U+C*W),B=An($*(D*U+T*W));return h.done=Math.abs(B)<=n&&Math.abs(u-G)<=o,h.value=h.done?u:G,h}const I=E(L);if(_)h.done=L>=g;else{const $=An(A(L));h.done=Math.abs($)<=n&&Math.abs(u-I)<=o}return h.value=h.done?u:I,h},toString:()=>{const L=Math.min(Jb(z),Mh),I=LN($=>z.next(L*$).value,L,30);return L+"ms "+I},toTransition:()=>{}};return z}Rh.applyToOptions=e=>{const t=BD(e,100,Rh);return e.ease=t.ease,e.duration=An(t.duration),e.type="keyframes",e};const qD=5;function zN(e,t,s){const n=Math.max(t-qD,0);return pN(s-e(n),t-n)}function f0({keyframes:e,velocity:t=0,power:s=.8,timeConstant:n=325,bounceDamping:o=10,bounceStiffness:l=500,modifyTarget:u,min:h,max:m,restDelta:d=.5,restSpeed:p}){const g=e[0],x={done:!1,value:g},_=T=>h!==void 0&&T<h||m!==void 0&&T>m,S=T=>h===void 0?m:m===void 0||Math.abs(h-T)<Math.abs(m-T)?h:m;let w=s*t;const C=g+w,N=u===void 0?C:u(C);N!==C&&(w=N-g);const j=T=>-w*Math.exp(-T/n),E=T=>N+j(T),A=T=>{const z=j(T),L=E(T);x.done=Math.abs(z)<=d,x.value=x.done?N:L};let O,P;const D=T=>{_(x.value)&&(O=T,P=Rh({keyframes:[x.value,S(x.value)],velocity:zN(E,T,x.value),damping:o,stiffness:l,restDelta:d,restSpeed:p}))};return D(0),{calculatedDuration:null,next:T=>{let z=!1;return!P&&O===void 0&&(z=!0,A(T),D(T)),O!==void 0&&T>=O?P.next(T-O):(!z&&A(T),x)}}}function VD(e,t,s){const n=[],o=s||ca.mix||ON,l=e.length-1;for(let u=0;u<l;u++){let h=o(e[u],e[u+1]);if(t){const m=Array.isArray(t)?t[u]||Wn:t;h=hu(m,h)}n.push(h)}return n}function GD(e,t,{clamp:s=!0,ease:n,mixer:o}={}){const l=e.length;if(Vb(l===t.length),l===1)return()=>t[0];if(l===2&&t[0]===t[1])return()=>t[1];const u=e[0]===e[1];e[0]>e[l-1]&&(e=[...e].reverse(),t=[...t].reverse());const h=VD(t,n,o),m=h.length,d=p=>{if(u&&p<e[0])return t[0];let g=0;if(m>1)for(;g<e.length-2&&!(p<e[g+1]);g++);const x=Xc(e[g],e[g+1],p);return h[g](x)};return s?p=>d(zi(e[0],e[l-1],p)):d}function WD(e,t){const s=e[e.length-1];for(let n=1;n<=t;n++){const o=Xc(0,t,n);e.push(Lt(s,1,o))}}function KD(e){const t=[0];return WD(t,e.length-1),t}function YD(e,t){return e.map(s=>s*t)}function XD(e,t){return e.map(()=>t||kN).splice(0,e.length-1)}function Hc({duration:e=300,keyframes:t,times:s,ease:n="easeInOut"}){const o=iD(n)?n.map(Yy):Yy(n),l={done:!1,value:t[0]},u=YD(s&&s.length===t.length?s:KD(t),e),h=GD(u,t,{ease:Array.isArray(o)?o:XD(t,o)});return{calculatedDuration:e,next:m=>(l.value=h(m),l.done=m>=e,l)}}const ZD=e=>e!==null;function uf(e,{repeat:t,repeatType:s="loop"},n,o=1){const l=e.filter(ZD),h=o<0||t&&s!=="loop"&&t%2===1?0:l.length-1;return!h||n===void 0?l[h]:n}const QD={decay:f0,inertia:f0,tween:Hc,keyframes:Hc,spring:Rh};function BN(e){typeof e.type=="string"&&(e.type=QD[e.type])}class ex{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,s){return this.finished.then(t,s)}}const JD=e=>e/100;class Dh extends ex{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.delayState={done:!1,value:void 0},this.stop=()=>{const{motionValue:s}=this.options;s&&s.updatedAt!==Qs.now()&&this.tick(Qs.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),this.options.onStop?.())},this.options=t,this.initAnimation(),this.play(),t.autoplay===!1&&this.pause()}initAnimation(){const{options:t}=this;BN(t);const{type:s=Hc,repeat:n=0,repeatDelay:o=0,repeatType:l,velocity:u=0}=t;let{keyframes:h}=t;const m=s||Hc;m!==Hc&&typeof h[0]!="number"&&(this.mixKeyframes=hu(JD,ON(h[0],h[1])),h=[0,100]);const d=m({...t,keyframes:h});l==="mirror"&&(this.mirroredGenerator=m({...t,keyframes:[...h].reverse(),velocity:-u})),d.calculatedDuration===null&&(d.calculatedDuration=Jb(d));const{calculatedDuration:p}=d;this.calculatedDuration=p,this.resolvedDuration=p+o,this.totalDuration=this.resolvedDuration*(n+1)-o,this.generator=d}updateTime(t){const s=Math.round(t-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=s}tick(t,s=!1){const{generator:n,totalDuration:o,mixKeyframes:l,mirroredGenerator:u,resolvedDuration:h,calculatedDuration:m}=this;if(this.startTime===null)return n.next(0);const{delay:d=0,keyframes:p,repeat:g,repeatType:x,repeatDelay:_,type:S,onUpdate:w,finalKeyframe:C}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-o/this.speed,this.startTime)),s?this.currentTime=t:this.updateTime(t);const N=this.currentTime-d*(this.playbackSpeed>=0?1:-1),j=this.playbackSpeed>=0?N<0:N>o;this.currentTime=Math.max(N,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=o);let E=this.currentTime,A=n;if(g){const T=Math.min(this.currentTime,o)/h;let z=Math.floor(T),L=T%1;!L&&T>=1&&(L=1),L===1&&z--,z=Math.min(z,g+1),z%2&&(x==="reverse"?(L=1-L,_&&(L-=_/h)):x==="mirror"&&(A=u)),E=zi(0,1,L)*h}let O;j?(this.delayState.value=p[0],O=this.delayState):O=A.next(E),l&&!j&&(O.value=l(O.value));let{done:P}=O;!j&&m!==null&&(P=this.playbackSpeed>=0?this.currentTime>=o:this.currentTime<=0);const D=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&P);return D&&S!==f0&&(O.value=uf(p,this.options,C,this.speed)),w&&w(O.value),D&&this.finish(),O}then(t,s){return this.finished.then(t,s)}get duration(){return Gn(this.calculatedDuration)}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Gn(t)}get time(){return Gn(this.currentTime)}set time(t){t=An(t),this.currentTime=t,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),this.driver?this.driver.start(!1):(this.startTime=0,this.state="paused",this.holdTime=t,this.tick(t))}getGeneratorVelocity(){const t=this.currentTime;if(t<=0)return this.options.velocity||0;if(this.generator.velocity)return this.generator.velocity(t);const s=this.generator.next(t).value;return zN(n=>this.generator.next(n).value,t,s)}get speed(){return this.playbackSpeed}set speed(t){const s=this.playbackSpeed!==t;s&&this.driver&&this.updateTime(Qs.now()),this.playbackSpeed=t,s&&this.driver&&(this.time=Gn(this.currentTime))}play(){if(this.isStopped)return;const{driver:t=zD,startTime:s}=this.options;this.driver||(this.driver=t(o=>this.tick(o))),this.options.onPlay?.();const n=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=n):this.holdTime!==null?this.startTime=n-this.holdTime:this.startTime||(this.startTime=s??n),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(Qs.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){this.notifyFinished(),this.teardown(),this.state="finished",this.options.onComplete?.()}cancel(){this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),this.options.onCancel?.()}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),this.driver?.stop(),t.observe(this)}}function eO(e){for(let t=1;t<e.length;t++)e[t]??(e[t]=e[t-1])}const qa=e=>e*180/Math.PI,m0=e=>{const t=qa(Math.atan2(e[1],e[0]));return p0(t)},tO={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:m0,rotateZ:m0,skewX:e=>qa(Math.atan(e[1])),skewY:e=>qa(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},p0=e=>(e=e%360,e<0&&(e+=360),e),sS=m0,nS=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),iS=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),sO={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:nS,scaleY:iS,scale:e=>(nS(e)+iS(e))/2,rotateX:e=>p0(qa(Math.atan2(e[6],e[5]))),rotateY:e=>p0(qa(Math.atan2(-e[2],e[0]))),rotateZ:sS,rotate:sS,skewX:e=>qa(Math.atan(e[4])),skewY:e=>qa(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function g0(e){return e.includes("scale")?1:0}function b0(e,t){if(!e||e==="none")return g0(t);const s=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let n,o;if(s)n=sO,o=s;else{const h=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);n=tO,o=h}if(!o)return g0(t);const l=n[t],u=o[1].split(",").map(iO);return typeof l=="function"?l(u):u[l]}const nO=(e,t)=>{const{transform:s="none"}=getComputedStyle(e);return b0(s,t)};function iO(e){return parseFloat(e.trim())}const ml=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],pl=new Set(ml),rS=e=>e===fl||e===Ae,rO=new Set(["x","y","z"]),aO=ml.filter(e=>!rO.has(e));function oO(e){const t=[];return aO.forEach(s=>{const n=e.getValue(s);n!==void 0&&(t.push([s,n.get()]),n.set(s.startsWith("scale")?1:0))}),t}const ia={width:({x:e},{paddingLeft:t="0",paddingRight:s="0",boxSizing:n})=>{const o=e.max-e.min;return n==="border-box"?o:o-parseFloat(t)-parseFloat(s)},height:({y:e},{paddingTop:t="0",paddingBottom:s="0",boxSizing:n})=>{const o=e.max-e.min;return n==="border-box"?o:o-parseFloat(t)-parseFloat(s)},top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>b0(t,"x"),y:(e,{transform:t})=>b0(t,"y")};ia.translateX=ia.x;ia.translateY=ia.y;const Wa=new Set;let x0=!1,v0=!1,_0=!1;function IN(){if(v0){const e=Array.from(Wa).filter(n=>n.needsMeasurement),t=new Set(e.map(n=>n.element)),s=new Map;t.forEach(n=>{const o=oO(n);o.length&&(s.set(n,o),n.render())}),e.forEach(n=>n.measureInitialState()),t.forEach(n=>{n.render();const o=s.get(n);o&&o.forEach(([l,u])=>{n.getValue(l)?.set(u)})}),e.forEach(n=>n.measureEndState()),e.forEach(n=>{n.suspendedScrollY!==void 0&&window.scrollTo(0,n.suspendedScrollY)})}v0=!1,x0=!1,Wa.forEach(e=>e.complete(_0)),Wa.clear()}function PN(){Wa.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(v0=!0)})}function lO(){_0=!0,PN(),IN(),_0=!1}class tx{constructor(t,s,n,o,l,u=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=s,this.name=n,this.motionValue=o,this.element=l,this.isAsync=u}scheduleResolve(){this.state="scheduled",this.isAsync?(Wa.add(this),x0||(x0=!0,Et.read(PN),Et.resolveKeyframes(IN))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:s,element:n,motionValue:o}=this;if(t[0]===null){const l=o?.get(),u=t[t.length-1];if(l!==void 0)t[0]=l;else if(n&&s){const h=n.readValue(s,u);h!=null&&(t[0]=h)}t[0]===void 0&&(t[0]=u),o&&l===void 0&&o.set(t[0])}eO(t)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),Wa.delete(this)}cancel(){this.state==="scheduled"&&(Wa.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const cO=e=>e.startsWith("--");function $N(e,t,s){cO(t)?e.style.setProperty(t,s):e.style[t]=s}const uO={};function HN(e,t){const s=mN(e);return()=>uO[t]??s()}const dO=HN(()=>window.ScrollTimeline!==void 0,"scrollTimeline"),UN=HN(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),Tc=([e,t,s,n])=>`cubic-bezier(${e}, ${t}, ${s}, ${n})`,aS={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Tc([0,.65,.55,1]),circOut:Tc([.55,0,1,.45]),backIn:Tc([.31,.01,.66,-.59]),backOut:Tc([.33,1.53,.69,.99])};function FN(e,t){if(e)return typeof e=="function"?UN()?LN(e,t):"ease-out":CN(e)?Tc(e):Array.isArray(e)?e.map(s=>FN(s,t)||aS.easeOut):aS[e]}function hO(e,t,s,{delay:n=0,duration:o=300,repeat:l=0,repeatType:u="loop",ease:h="easeOut",times:m}={},d=void 0){const p={[t]:s};m&&(p.offset=m);const g=FN(h,o);Array.isArray(g)&&(p.easing=g);const x={delay:n,duration:o,easing:Array.isArray(g)?"linear":g,fill:"both",iterations:l+1,direction:u==="reverse"?"alternate":"normal"};return d&&(x.pseudoElement=d),e.animate(p,x)}function qN(e){return typeof e=="function"&&"applyToOptions"in e}function fO({type:e,...t}){return qN(e)&&UN()?e.applyToOptions(t):(t.duration??(t.duration=300),t.ease??(t.ease="easeOut"),t)}class VN extends ex{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!t)return;const{element:s,name:n,keyframes:o,pseudoElement:l,allowFlatten:u=!1,finalKeyframe:h,onComplete:m}=t;this.isPseudoElement=!!l,this.allowFlatten=u,this.options=t,Vb(typeof t.type!="string");const d=fO(t);this.animation=hO(s,n,o,d,l),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!l){const p=uf(o,this.options,h,this.speed);this.updateMotionValue&&this.updateMotionValue(p),$N(s,n,p),this.animation.cancel()}m?.(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){this.animation.finish?.()}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:t}=this;t==="idle"||t==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){const t=this.options?.element;!this.isPseudoElement&&t?.isConnected&&this.animation.commitStyles?.()}get duration(){const t=this.animation.effect?.getComputedTiming?.().duration||0;return Gn(Number(t))}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Gn(t)}get time(){return Gn(Number(this.animation.currentTime)||0)}set time(t){const s=this.finishedTime!==null;this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=An(t),s&&this.animation.pause()}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(t){this.manualStartTime=this.animation.startTime=t}attachTimeline({timeline:t,rangeStart:s,rangeEnd:n,observe:o}){return this.allowFlatten&&this.animation.effect?.updateTiming({easing:"linear"}),this.animation.onfinish=null,t&&dO()?(this.animation.timeline=t,s&&(this.animation.rangeStart=s),n&&(this.animation.rangeEnd=n),Wn):o(this)}}const GN={anticipate:yN,backInOut:_N,circInOut:wN};function mO(e){return e in GN}function pO(e){typeof e.ease=="string"&&mO(e.ease)&&(e.ease=GN[e.ease])}const Up=10;class gO extends VN{constructor(t){pO(t),BN(t),super(t),t.startTime!==void 0&&t.autoplay!==!1&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){const{motionValue:s,onUpdate:n,onComplete:o,element:l,...u}=this.options;if(!s)return;if(t!==void 0){s.set(t);return}const h=new Dh({...u,autoplay:!1}),m=Math.max(Up,Qs.now()-this.startTime),d=zi(0,Up,m-Up),p=h.sample(m).value,{name:g}=this.options;l&&g&&$N(l,g,p),s.setWithVelocity(h.sample(Math.max(0,m-d)).value,p,d),h.stop()}}const oS=(e,t)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(fi.test(e)||e==="0")&&!e.startsWith("url("));function bO(e){const t=e[0];if(e.length===1)return!0;for(let s=0;s<e.length;s++)if(e[s]!==t)return!0}function xO(e,t,s,n){const o=e[0];if(o===null)return!1;if(t==="display"||t==="visibility")return!0;const l=e[e.length-1],u=oS(o,t),h=oS(l,t);return!u||!h?!1:bO(e)||(s==="spring"||qN(s))&&n}function y0(e){e.duration=0,e.type="keyframes"}const WN=new Set(["opacity","clipPath","filter","transform"]),vO=/^(?:oklch|oklab|lab|lch|color|color-mix|light-dark)\(/;function _O(e){for(let t=0;t<e.length;t++)if(typeof e[t]=="string"&&vO.test(e[t]))return!0;return!1}const yO=new Set(["color","backgroundColor","outlineColor","fill","stroke","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor"]),SO=mN(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function wO(e){const{motionValue:t,name:s,repeatDelay:n,repeatType:o,damping:l,type:u,keyframes:h}=e;if(!(t?.owner?.current instanceof HTMLElement))return!1;const{onUpdate:d,transformTemplate:p}=t.owner.getProps();return SO()&&s&&(WN.has(s)||yO.has(s)&&_O(h))&&(s!=="transform"||!p)&&!d&&!n&&o!=="mirror"&&l!==0&&u!=="inertia"}const kO=40;class CO extends ex{constructor({autoplay:t=!0,delay:s=0,type:n="keyframes",repeat:o=0,repeatDelay:l=0,repeatType:u="loop",keyframes:h,name:m,motionValue:d,element:p,...g}){super(),this.stop=()=>{this._animation&&(this._animation.stop(),this.stopTimeline?.()),this.keyframeResolver?.cancel()},this.createdAt=Qs.now();const x={autoplay:t,delay:s,type:n,repeat:o,repeatDelay:l,repeatType:u,name:m,motionValue:d,element:p,...g},_=p?.KeyframeResolver||tx;this.keyframeResolver=new _(h,(S,w,C)=>this.onKeyframesResolved(S,w,x,!C),m,d,p),this.keyframeResolver?.scheduleResolve()}onKeyframesResolved(t,s,n,o){this.keyframeResolver=void 0;const{name:l,type:u,velocity:h,delay:m,isHandoff:d,onUpdate:p}=n;this.resolvedAt=Qs.now();let g=!0;xO(t,l,u,h)||(g=!1,(ca.instantAnimations||!m)&&p?.(uf(t,n,s)),t[0]=t[t.length-1],y0(n),n.repeat=0);const _={startTime:o?this.resolvedAt?this.resolvedAt-this.createdAt>kO?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:s,...n,keyframes:t},S=g&&!d&&wO(_),w=_.motionValue?.owner?.current;let C;if(S)try{C=new gO({..._,element:w})}catch{C=new Dh(_)}else C=new Dh(_);C.finished.then(()=>{this.notifyFinished()}).catch(Wn),this.pendingTimeline&&(this.stopTimeline=C.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=C}get finished(){return this._animation?this.animation.finished:this._finished}then(t,s){return this.finished.finally(t).then(()=>{})}get animation(){return this._animation||(this.keyframeResolver?.resume(),lO()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){this._animation&&this.animation.cancel(),this.keyframeResolver?.cancel()}}function KN(e,t,s,n=0,o=1){const l=Array.from(e).sort((d,p)=>d.sortNodePosition(p)).indexOf(t),u=e.size,h=(u-1)*n;return typeof s=="function"?s(l,u):o===1?l*n:h-l*n}const NO=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function EO(e){const t=NO.exec(e);if(!t)return[,];const[,s,n,o]=t;return[`--${s??n}`,o]}function YN(e,t,s=1){const[n,o]=EO(e);if(!n)return;const l=window.getComputedStyle(t).getPropertyValue(n);if(l){const u=l.trim();return dN(u)?parseFloat(u):u}return Yb(o)?YN(o,t,s+1):o}const jO={type:"spring",stiffness:500,damping:25,restSpeed:10},TO=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),AO={type:"keyframes",duration:.8},MO={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},RO=(e,{keyframes:t})=>t.length>2?AO:pl.has(e)?e.startsWith("scale")?TO(t[1]):jO:MO;function XN(e,t){if(e?.inherit&&t){const{inherit:s,...n}=e;return{...t,...n}}return e}function sx(e,t){const s=e?.[t]??e?.default??e;return s!==e?XN(s,e):s}const DO=new Set(["when","delay","delayChildren","staggerChildren","staggerDirection","repeat","repeatType","repeatDelay","from","elapsed"]);function OO(e){for(const t in e)if(!DO.has(t))return!0;return!1}const nx=(e,t,s,n={},o,l)=>u=>{const h=sx(n,e)||{},m=h.delay||n.delay||0;let{elapsed:d=0}=n;d=d-An(m);const p={keyframes:Array.isArray(s)?s:[null,s],ease:"easeOut",velocity:t.getVelocity(),...h,delay:-d,onUpdate:x=>{t.set(x),h.onUpdate&&h.onUpdate(x)},onComplete:()=>{u(),h.onComplete&&h.onComplete()},name:e,motionValue:t,element:l?void 0:o};OO(h)||Object.assign(p,RO(e,p)),p.duration&&(p.duration=An(p.duration)),p.repeatDelay&&(p.repeatDelay=An(p.repeatDelay)),p.from!==void 0&&(p.keyframes[0]=p.from);let g=!1;if((p.type===!1||p.duration===0&&!p.repeatDelay)&&(y0(p),p.delay===0&&(g=!0)),(ca.instantAnimations||ca.skipAnimations||o?.shouldSkipAnimations)&&(g=!0,y0(p),p.delay=0),p.allowFlatten=!h.type&&!h.ease,g&&!l&&t.get()!==void 0){const x=uf(p.keyframes,h);if(x!==void 0){Et.update(()=>{p.onUpdate(x),p.onComplete()});return}}return h.isSync?new Dh(p):new CO(p)};function lS(e){const t=[{},{}];return e?.values.forEach((s,n)=>{t[0][n]=s.get(),t[1][n]=s.getVelocity()}),t}function ix(e,t,s,n){if(typeof t=="function"){const[o,l]=lS(n);t=t(s!==void 0?s:e.custom,o,l)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[o,l]=lS(n);t=t(s!==void 0?s:e.custom,o,l)}return t}function Ka(e,t,s){const n=e.getProps();return ix(n,t,s!==void 0?s:n.custom,e)}const ZN=new Set(["width","height","top","left","right","bottom",...ml]),cS=30,LO=e=>!isNaN(parseFloat(e));class zO{constructor(t,s={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=n=>{const o=Qs.now();if(this.updatedAt!==o&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(n),this.current!==this.prev&&(this.events.change?.notify(this.current),this.dependents))for(const l of this.dependents)l.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=s.owner}setCurrent(t){this.current=t,this.updatedAt=Qs.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=LO(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return this.on("change",t)}on(t,s){this.events[t]||(this.events[t]=new Gb);const n=this.events[t].add(s);return t==="change"?()=>{n(),Et.read(()=>{this.events.change.getSize()||this.stop()})}:n}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,s){this.passiveEffect=t,this.stopPassiveEffect=s}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,s,n){this.set(s),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-n}jump(t,s=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,s&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){this.events.change?.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=Qs.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>cS)return 0;const s=Math.min(this.updatedAt-this.prevUpdatedAt,cS);return pN(parseFloat(this.current)-parseFloat(this.prevFrameValue),s)}start(t){return this.stop(),new Promise(s=>{this.hasAnimated=!0,this.animation=t(s),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.dependents?.clear(),this.events.destroy?.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function ll(e,t){return new zO(e,t)}const S0=e=>Array.isArray(e);function BO(e,t,s){e.hasValue(t)?e.getValue(t).set(s):e.addValue(t,ll(s))}function IO(e){return S0(e)?e[e.length-1]||0:e}function PO(e,t){const s=Ka(e,t);let{transitionEnd:n={},transition:o={},...l}=s||{};l={...l,...n};for(const u in l){const h=IO(l[u]);BO(e,u,h)}}const Is=e=>!!(e&&e.getVelocity);function $O(e){return!!(Is(e)&&e.add)}function w0(e,t){const s=e.getValue("willChange");if($O(s))return s.add(t);if(!s&&ca.WillChange){const n=new ca.WillChange("auto");e.addValue("willChange",n),n.add(t)}}function rx(e){return e.replace(/([A-Z])/g,t=>`-${t.toLowerCase()}`)}const HO="framerAppearId",QN="data-"+rx(HO);function JN(e){return e.props[QN]}function UO({protectedKeys:e,needsAnimating:t},s){const n=e.hasOwnProperty(s)&&t[s]!==!0;return t[s]=!1,n}function eE(e,t,{delay:s=0,transitionOverride:n,type:o}={}){let{transition:l,transitionEnd:u,...h}=t;const m=e.getDefaultTransition();l=l?XN(l,m):m;const d=l?.reduceMotion;n&&(l=n);const p=[],g=o&&e.animationState&&e.animationState.getState()[o];for(const x in h){const _=e.getValue(x,e.latestValues[x]??null),S=h[x];if(S===void 0||g&&UO(g,x))continue;const w={delay:s,...sx(l||{},x)},C=_.get();if(C!==void 0&&!_.isAnimating()&&!Array.isArray(S)&&S===C&&!w.velocity){Et.update(()=>_.set(S));continue}let N=!1;if(window.MotionHandoffAnimation){const A=JN(e);if(A){const O=window.MotionHandoffAnimation(A,x,Et);O!==null&&(w.startTime=O,N=!0)}}w0(e,x);const j=d??e.shouldReduceMotion;_.start(nx(x,_,S,j&&ZN.has(x)?{type:!1}:w,e,N));const E=_.animation;E&&p.push(E)}if(u){const x=()=>Et.update(()=>{u&&PO(e,u)});p.length?Promise.all(p).then(x):x()}return p}function k0(e,t,s={}){const n=Ka(e,t,s.type==="exit"?e.presenceContext?.custom:void 0);let{transition:o=e.getDefaultTransition()||{}}=n||{};s.transitionOverride&&(o=s.transitionOverride);const l=n?()=>Promise.all(eE(e,n,s)):()=>Promise.resolve(),u=e.variantChildren&&e.variantChildren.size?(m=0)=>{const{delayChildren:d=0,staggerChildren:p,staggerDirection:g}=o;return FO(e,t,m,d,p,g,s)}:()=>Promise.resolve(),{when:h}=o;if(h){const[m,d]=h==="beforeChildren"?[l,u]:[u,l];return m().then(()=>d())}else return Promise.all([l(),u(s.delay)])}function FO(e,t,s=0,n=0,o=0,l=1,u){const h=[];for(const m of e.variantChildren)m.notify("AnimationStart",t),h.push(k0(m,t,{...u,delay:s+(typeof n=="function"?0:n)+KN(e.variantChildren,m,n,o,l)}).then(()=>m.notify("AnimationComplete",t)));return Promise.all(h)}function qO(e,t,s={}){e.notify("AnimationStart",t);let n;if(Array.isArray(t)){const o=t.map(l=>k0(e,l,s));n=Promise.all(o)}else if(typeof t=="string")n=k0(e,t,s);else{const o=typeof t=="function"?Ka(e,t,s.custom):t;n=Promise.all(eE(e,o,s))}return n.then(()=>{e.notify("AnimationComplete",t)})}const VO={test:e=>e==="auto",parse:e=>e},tE=e=>t=>t.test(e),sE=[fl,Ae,Di,sa,bD,gD,VO],uS=e=>sE.find(tE(e));function GO(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||fN(e):!0}const WO=new Set(["brightness","contrast","saturate","opacity"]);function KO(e){const[t,s]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[n]=s.match(Xb)||[];if(!n)return e;const o=s.replace(n,"");let l=WO.has(t)?1:0;return n!==s&&(l*=100),t+"("+l+o+")"}const YO=/\b([a-z-]*)\(.*?\)/gu,C0={...fi,getAnimatableNone:e=>{const t=e.match(YO);return t?t.map(KO).join(" "):e}},N0={...fi,getAnimatableNone:e=>{const t=fi.parse(e);return fi.createTransformer(e)(t.map(n=>typeof n=="number"?0:typeof n=="object"?{...n,alpha:1}:n))}},dS={...fl,transform:Math.round},XO={rotate:sa,rotateX:sa,rotateY:sa,rotateZ:sa,scale:Fd,scaleX:Fd,scaleY:Fd,scaleZ:Fd,skew:sa,skewX:sa,skewY:sa,distance:Ae,translateX:Ae,translateY:Ae,translateZ:Ae,x:Ae,y:Ae,z:Ae,perspective:Ae,transformPerspective:Ae,opacity:Zc,originX:Zy,originY:Zy,originZ:Ae},ax={borderWidth:Ae,borderTopWidth:Ae,borderRightWidth:Ae,borderBottomWidth:Ae,borderLeftWidth:Ae,borderRadius:Ae,borderTopLeftRadius:Ae,borderTopRightRadius:Ae,borderBottomRightRadius:Ae,borderBottomLeftRadius:Ae,width:Ae,maxWidth:Ae,height:Ae,maxHeight:Ae,top:Ae,right:Ae,bottom:Ae,left:Ae,inset:Ae,insetBlock:Ae,insetBlockStart:Ae,insetBlockEnd:Ae,insetInline:Ae,insetInlineStart:Ae,insetInlineEnd:Ae,padding:Ae,paddingTop:Ae,paddingRight:Ae,paddingBottom:Ae,paddingLeft:Ae,paddingBlock:Ae,paddingBlockStart:Ae,paddingBlockEnd:Ae,paddingInline:Ae,paddingInlineStart:Ae,paddingInlineEnd:Ae,margin:Ae,marginTop:Ae,marginRight:Ae,marginBottom:Ae,marginLeft:Ae,marginBlock:Ae,marginBlockStart:Ae,marginBlockEnd:Ae,marginInline:Ae,marginInlineStart:Ae,marginInlineEnd:Ae,fontSize:Ae,backgroundPositionX:Ae,backgroundPositionY:Ae,...XO,zIndex:dS,fillOpacity:Zc,strokeOpacity:Zc,numOctaves:dS},ZO={...ax,color:os,backgroundColor:os,outlineColor:os,fill:os,stroke:os,borderColor:os,borderTopColor:os,borderRightColor:os,borderBottomColor:os,borderLeftColor:os,filter:C0,WebkitFilter:C0,mask:N0,WebkitMask:N0},nE=e=>ZO[e],QO=new Set([C0,N0]);function iE(e,t){let s=nE(e);return QO.has(s)||(s=fi),s.getAnimatableNone?s.getAnimatableNone(t):void 0}const JO=new Set(["auto","none","0"]);function e7(e,t,s){let n=0,o;for(;n<e.length&&!o;){const l=e[n];typeof l=="string"&&!JO.has(l)&&ol(l).values.length&&(o=e[n]),n++}if(o&&s)for(const l of t)e[l]=iE(s,o)}class t7 extends tx{constructor(t,s,n,o,l){super(t,s,n,o,l,!0)}readKeyframes(){const{unresolvedKeyframes:t,element:s,name:n}=this;if(!s||!s.current)return;super.readKeyframes();for(let p=0;p<t.length;p++){let g=t[p];if(typeof g=="string"&&(g=g.trim(),Yb(g))){const x=YN(g,s.current);x!==void 0&&(t[p]=x),p===t.length-1&&(this.finalKeyframe=g)}}if(this.resolveNoneKeyframes(),!ZN.has(n)||t.length!==2)return;const[o,l]=t,u=uS(o),h=uS(l),m=Xy(o),d=Xy(l);if(m!==d&&ia[n]){this.needsMeasurement=!0;return}if(u!==h)if(rS(u)&&rS(h))for(let p=0;p<t.length;p++){const g=t[p];typeof g=="string"&&(t[p]=parseFloat(g))}else ia[n]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:t,name:s}=this,n=[];for(let o=0;o<t.length;o++)(t[o]===null||GO(t[o]))&&n.push(o);n.length&&e7(t,n,s)}measureInitialState(){const{element:t,unresolvedKeyframes:s,name:n}=this;if(!t||!t.current)return;n==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=ia[n](t.measureViewportBox(),window.getComputedStyle(t.current)),s[0]=this.measuredOrigin;const o=s[s.length-1];o!==void 0&&t.getValue(n,o).jump(o,!1)}measureEndState(){const{element:t,name:s,unresolvedKeyframes:n}=this;if(!t||!t.current)return;const o=t.getValue(s);o&&o.jump(this.measuredOrigin,!1);const l=n.length-1,u=n[l];n[l]=ia[s](t.measureViewportBox(),window.getComputedStyle(t.current)),u!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=u),this.removedTransforms?.length&&this.removedTransforms.forEach(([h,m])=>{t.getValue(h).set(m)}),this.resolveNoneKeyframes()}}function rE(e,t,s){if(e==null)return[];if(e instanceof EventTarget)return[e];if(typeof e=="string"){let n=document;const o=s?.[e]??n.querySelectorAll(e);return o?Array.from(o):[]}return Array.from(e).filter(n=>n!=null)}const aE=(e,t)=>t&&typeof e=="number"?t.transform(e):e;function s7(e){return hN(e)&&"offsetHeight"in e&&!("ownerSVGElement"in e)}const{schedule:ox}=NN(queueMicrotask,!1),ui={x:!1,y:!1};function oE(){return ui.x||ui.y}function n7(e){return e==="x"||e==="y"?ui[e]?null:(ui[e]=!0,()=>{ui[e]=!1}):ui.x||ui.y?null:(ui.x=ui.y=!0,()=>{ui.x=ui.y=!1})}function lE(e,t){const s=rE(e),n=new AbortController,o={passive:!0,...t,signal:n.signal};return[s,o,()=>n.abort()]}function i7(e){return!(e.pointerType==="touch"||oE())}function r7(e,t,s={}){const[n,o,l]=lE(e,s);return n.forEach(u=>{let h=!1,m=!1,d;const p=()=>{u.removeEventListener("pointerleave",S)},g=C=>{d&&(d(C),d=void 0),p()},x=C=>{h=!1,window.removeEventListener("pointerup",x),window.removeEventListener("pointercancel",x),m&&(m=!1,g(C))},_=()=>{h=!0,window.addEventListener("pointerup",x,o),window.addEventListener("pointercancel",x,o)},S=C=>{if(C.pointerType!=="touch"){if(h){m=!0;return}g(C)}},w=C=>{if(!i7(C))return;m=!1;const N=t(u,C);typeof N=="function"&&(d=N,u.addEventListener("pointerleave",S,o))};u.addEventListener("pointerenter",w,o),u.addEventListener("pointerdown",_,o)}),l}const cE=(e,t)=>t?e===t?!0:cE(e,t.parentElement):!1,lx=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,a7=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function o7(e){return a7.has(e.tagName)||e.isContentEditable===!0}const l7=new Set(["INPUT","SELECT","TEXTAREA"]);function c7(e){return l7.has(e.tagName)||e.isContentEditable===!0}const hh=new WeakSet;function hS(e){return t=>{t.key==="Enter"&&e(t)}}function Fp(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const u7=(e,t)=>{const s=e.currentTarget;if(!s)return;const n=hS(()=>{if(hh.has(s))return;Fp(s,"down");const o=hS(()=>{Fp(s,"up")}),l=()=>Fp(s,"cancel");s.addEventListener("keyup",o,t),s.addEventListener("blur",l,t)});s.addEventListener("keydown",n,t),s.addEventListener("blur",()=>s.removeEventListener("keydown",n),t)};function fS(e){return lx(e)&&!oE()}const mS=new WeakSet;function d7(e,t,s={}){const[n,o,l]=lE(e,s),u=h=>{const m=h.currentTarget;if(!fS(h)||mS.has(h))return;hh.add(m),s.stopPropagation&&mS.add(h);const d=t(m,h),p=(_,S)=>{window.removeEventListener("pointerup",g),window.removeEventListener("pointercancel",x),hh.has(m)&&hh.delete(m),fS(_)&&typeof d=="function"&&d(_,{success:S})},g=_=>{p(_,m===window||m===document||s.useGlobalTarget||cE(m,_.target))},x=_=>{p(_,!1)};window.addEventListener("pointerup",g,o),window.addEventListener("pointercancel",x,o)};return n.forEach(h=>{(s.useGlobalTarget?window:h).addEventListener("pointerdown",u,o),s7(h)&&(h.addEventListener("focus",d=>u7(d,o)),!o7(h)&&!h.hasAttribute("tabindex")&&(h.tabIndex=0))}),l}function cx(e){return hN(e)&&"ownerSVGElement"in e}const fh=new WeakMap;let mh;const uE=(e,t,s)=>(n,o)=>o&&o[0]?o[0][e+"Size"]:cx(n)&&"getBBox"in n?n.getBBox()[t]:n[s],h7=uE("inline","width","offsetWidth"),f7=uE("block","height","offsetHeight");function m7({target:e,borderBoxSize:t}){fh.get(e)?.forEach(s=>{s(e,{get width(){return h7(e,t)},get height(){return f7(e,t)}})})}function p7(e){e.forEach(m7)}function g7(){typeof ResizeObserver>"u"||(mh=new ResizeObserver(p7))}function b7(e,t){mh||g7();const s=rE(e);return s.forEach(n=>{let o=fh.get(n);o||(o=new Set,fh.set(n,o)),o.add(t),mh?.observe(n)}),()=>{s.forEach(n=>{const o=fh.get(n);o?.delete(t),o?.size||mh?.unobserve(n)})}}const ph=new Set;let Jo;function x7(){Jo=()=>{const e={get width(){return window.innerWidth},get height(){return window.innerHeight}};ph.forEach(t=>t(e))},window.addEventListener("resize",Jo)}function v7(e){return ph.add(e),Jo||x7(),()=>{ph.delete(e),!ph.size&&typeof Jo=="function"&&(window.removeEventListener("resize",Jo),Jo=void 0)}}function pS(e,t){return typeof e=="function"?v7(e):b7(e,t)}function _7(e){return cx(e)&&e.tagName==="svg"}const y7=[...sE,os,fi],S7=e=>y7.find(tE(e)),gS=()=>({translate:0,scale:1,origin:0,originPoint:0}),el=()=>({x:gS(),y:gS()}),bS=()=>({min:0,max:0}),gs=()=>({x:bS(),y:bS()}),w7=new WeakMap;function df(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function Qc(e){return typeof e=="string"||Array.isArray(e)}const ux=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],dx=["initial",...ux];function hf(e){return df(e.animate)||dx.some(t=>Qc(e[t]))}function dE(e){return!!(hf(e)||e.variants)}function k7(e,t,s){for(const n in t){const o=t[n],l=s[n];if(Is(o))e.addValue(n,o);else if(Is(l))e.addValue(n,ll(o,{owner:e}));else if(l!==o)if(e.hasValue(n)){const u=e.getValue(n);u.liveStyle===!0?u.jump(o):u.hasAnimated||u.set(o)}else{const u=e.getStaticValue(n);e.addValue(n,ll(u!==void 0?u:o,{owner:e}))}}for(const n in s)t[n]===void 0&&e.removeValue(n);return t}const E0={current:null},hE={current:!1},C7=typeof window<"u";function N7(){if(hE.current=!0,!!C7)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>E0.current=e.matches;e.addEventListener("change",t),t()}else E0.current=!1}const xS=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let Oh={};function fE(e){Oh=e}function E7(){return Oh}class j7{scrapeMotionValuesFromProps(t,s,n){return{}}constructor({parent:t,props:s,presenceContext:n,reducedMotionConfig:o,skipAnimations:l,blockInitialAnimation:u,visualState:h},m={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=tx,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const _=Qs.now();this.renderScheduledAt<_&&(this.renderScheduledAt=_,Et.render(this.render,!1,!0))};const{latestValues:d,renderState:p}=h;this.latestValues=d,this.baseTarget={...d},this.initialValues=s.initial?{...d}:{},this.renderState=p,this.parent=t,this.props=s,this.presenceContext=n,this.depth=t?t.depth+1:0,this.reducedMotionConfig=o,this.skipAnimationsConfig=l,this.options=m,this.blockInitialAnimation=!!u,this.isControllingVariants=hf(s),this.isVariantNode=dE(s),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(t&&t.current);const{willChange:g,...x}=this.scrapeMotionValuesFromProps(s,{},this);for(const _ in x){const S=x[_];d[_]!==void 0&&Is(S)&&S.set(d[_])}}mount(t){if(this.hasBeenMounted)for(const s in this.initialValues)this.values.get(s)?.jump(this.initialValues[s]),this.latestValues[s]=this.initialValues[s];this.current=t,w7.set(t,this),this.projection&&!this.projection.instance&&this.projection.mount(t),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((s,n)=>this.bindToMotionValue(n,s)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(hE.current||N7(),this.shouldReduceMotion=E0.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,this.parent?.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){this.projection&&this.projection.unmount(),ua(this.notifyUpdate),ua(this.render),this.valueSubscriptions.forEach(t=>t()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent?.removeChild(this);for(const t in this.events)this.events[t].clear();for(const t in this.features){const s=this.features[t];s&&(s.unmount(),s.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,s){if(this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)(),s.accelerate&&WN.has(t)&&this.current instanceof HTMLElement){const{factory:u,keyframes:h,times:m,ease:d,duration:p}=s.accelerate,g=new VN({element:this.current,name:t,keyframes:h,times:m,ease:d,duration:An(p)}),x=u(g);this.valueSubscriptions.set(t,()=>{x(),g.cancel()});return}const n=pl.has(t);n&&this.onBindTransform&&this.onBindTransform();const o=s.on("change",u=>{this.latestValues[t]=u,this.props.onUpdate&&Et.preRender(this.notifyUpdate),n&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let l;typeof window<"u"&&window.MotionCheckAppearSync&&(l=window.MotionCheckAppearSync(this,t,s)),this.valueSubscriptions.set(t,()=>{o(),l&&l(),s.owner&&s.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in Oh){const s=Oh[t];if(!s)continue;const{isEnabled:n,Feature:o}=s;if(!this.features[t]&&o&&n(this.props)&&(this.features[t]=new o(this)),this.features[t]){const l=this.features[t];l.isMounted?l.update():(l.mount(),l.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):gs()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,s){this.latestValues[t]=s}update(t,s){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=s;for(let n=0;n<xS.length;n++){const o=xS[n];this.propEventSubscriptions[o]&&(this.propEventSubscriptions[o](),delete this.propEventSubscriptions[o]);const l="on"+o,u=t[l];u&&(this.propEventSubscriptions[o]=this.on(o,u))}this.prevMotionValues=k7(this,this.scrapeMotionValuesFromProps(t,this.prevProps||{},this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(t){return this.props.variants?this.props.variants[t]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(t){const s=this.getClosestVariantNode();if(s)return s.variantChildren&&s.variantChildren.add(t),()=>s.variantChildren.delete(t)}addValue(t,s){const n=this.values.get(t);s!==n&&(n&&this.removeValue(t),this.bindToMotionValue(t,s),this.values.set(t,s),this.latestValues[t]=s.get())}removeValue(t){this.values.delete(t);const s=this.valueSubscriptions.get(t);s&&(s(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,s){if(this.props.values&&this.props.values[t])return this.props.values[t];let n=this.values.get(t);return n===void 0&&s!==void 0&&(n=ll(s===null?void 0:s,{owner:this}),this.addValue(t,n)),n}readValue(t,s){let n=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return n!=null&&(typeof n=="string"&&(dN(n)||fN(n))?n=parseFloat(n):!S7(n)&&fi.test(s)&&(n=iE(t,s)),this.setBaseTarget(t,Is(n)?n.get():n)),Is(n)?n.get():n}setBaseTarget(t,s){this.baseTarget[t]=s}getBaseTarget(t){const{initial:s}=this.props;let n;if(typeof s=="string"||typeof s=="object"){const l=ix(this.props,s,this.presenceContext?.custom);l&&(n=l[t])}if(s&&n!==void 0)return n;const o=this.getBaseTargetFromProps(this.props,t);return o!==void 0&&!Is(o)?o:this.initialValues[t]!==void 0&&n===void 0?void 0:this.baseTarget[t]}on(t,s){return this.events[t]||(this.events[t]=new Gb),this.events[t].add(s)}notify(t,...s){this.events[t]&&this.events[t].notify(...s)}scheduleRenderMicrotask(){ox.render(this.render)}}class mE extends j7{constructor(){super(...arguments),this.KeyframeResolver=t7}sortInstanceNodePosition(t,s){return t.compareDocumentPosition(s)&2?1:-1}getBaseTargetFromProps(t,s){const n=t.style;return n?n[s]:void 0}removeValueFromRenderState(t,{vars:s,style:n}){delete s[t],delete n[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;Is(t)&&(this.childSubscription=t.on("change",s=>{this.current&&(this.current.textContent=`${s}`)}))}}class ma{constructor(t){this.isMounted=!1,this.node=t}update(){}}function pE({top:e,left:t,right:s,bottom:n}){return{x:{min:t,max:s},y:{min:e,max:n}}}function T7({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function A7(e,t){if(!t)return e;const s=t({x:e.left,y:e.top}),n=t({x:e.right,y:e.bottom});return{top:s.y,left:s.x,bottom:n.y,right:n.x}}function qp(e){return e===void 0||e===1}function j0({scale:e,scaleX:t,scaleY:s}){return!qp(e)||!qp(t)||!qp(s)}function Pa(e){return j0(e)||gE(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function gE(e){return vS(e.x)||vS(e.y)}function vS(e){return e&&e!=="0%"}function Lh(e,t,s){const n=e-s,o=t*n;return s+o}function _S(e,t,s,n,o){return o!==void 0&&(e=Lh(e,o,n)),Lh(e,s,n)+t}function T0(e,t=0,s=1,n,o){e.min=_S(e.min,t,s,n,o),e.max=_S(e.max,t,s,n,o)}function bE(e,{x:t,y:s}){T0(e.x,t.translate,t.scale,t.originPoint),T0(e.y,s.translate,s.scale,s.originPoint)}const yS=.999999999999,SS=1.0000000000001;function M7(e,t,s,n=!1){const o=s.length;if(!o)return;t.x=t.y=1;let l,u;for(let h=0;h<o;h++){l=s[h],u=l.projectionDelta;const{visualElement:m}=l.options;m&&m.props.style&&m.props.style.display==="contents"||(n&&l.options.layoutScroll&&l.scroll&&l!==l.root&&(Mi(e.x,-l.scroll.offset.x),Mi(e.y,-l.scroll.offset.y)),u&&(t.x*=u.x.scale,t.y*=u.y.scale,bE(e,u)),n&&Pa(l.latestValues)&&gh(e,l.latestValues,l.layout?.layoutBox))}t.x<SS&&t.x>yS&&(t.x=1),t.y<SS&&t.y>yS&&(t.y=1)}function Mi(e,t){e.min+=t,e.max+=t}function wS(e,t,s,n,o=.5){const l=Lt(e.min,e.max,o);T0(e,t,s,l,n)}function kS(e,t){return typeof e=="string"?parseFloat(e)/100*(t.max-t.min):e}function gh(e,t,s){const n=s??e;wS(e.x,kS(t.x,n.x),t.scaleX,t.scale,t.originX),wS(e.y,kS(t.y,n.y),t.scaleY,t.scale,t.originY)}function xE(e,t){return pE(A7(e.getBoundingClientRect(),t))}function R7(e,t,s){const n=xE(e,s),{scroll:o}=t;return o&&(Mi(n.x,o.offset.x),Mi(n.y,o.offset.y)),n}const D7={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},O7=ml.length;function L7(e,t,s){let n="",o=!0;for(let l=0;l<O7;l++){const u=ml[l],h=e[u];if(h===void 0)continue;let m=!0;if(typeof h=="number")m=h===(u.startsWith("scale")?1:0);else{const d=parseFloat(h);m=u.startsWith("scale")?d===1:d===0}if(!m||s){const d=aE(h,ax[u]);if(!m){o=!1;const p=D7[u]||u;n+=`${p}(${d}) `}s&&(t[u]=d)}}return n=n.trim(),s?n=s(t,o?"":n):o&&(n="none"),n}function hx(e,t,s){const{style:n,vars:o,transformOrigin:l}=e;let u=!1,h=!1;for(const m in t){const d=t[m];if(pl.has(m)){u=!0;continue}else if(jN(m)){o[m]=d;continue}else{const p=aE(d,ax[m]);m.startsWith("origin")?(h=!0,l[m]=p):n[m]=p}}if(t.transform||(u||s?n.transform=L7(t,e.transform,s):n.transform&&(n.transform="none")),h){const{originX:m="50%",originY:d="50%",originZ:p=0}=l;n.transformOrigin=`${m} ${d} ${p}`}}function vE(e,{style:t,vars:s},n,o){const l=e.style;let u;for(u in t)l[u]=t[u];o?.applyProjectionStyles(l,n);for(u in s)l.setProperty(u,s[u])}function CS(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const xc={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(Ae.test(e))e=parseFloat(e);else return e;const s=CS(e,t.target.x),n=CS(e,t.target.y);return`${s}% ${n}%`}},z7={correct:(e,{treeScale:t,projectionDelta:s})=>{const n=e,o=fi.parse(e);if(o.length>5)return n;const l=fi.createTransformer(e),u=typeof o[0]!="number"?1:0,h=s.x.scale*t.x,m=s.y.scale*t.y;o[0+u]/=h,o[1+u]/=m;const d=Lt(h,m,.5);return typeof o[2+u]=="number"&&(o[2+u]/=d),typeof o[3+u]=="number"&&(o[3+u]/=d),l(o)}},A0={borderRadius:{...xc,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:xc,borderTopRightRadius:xc,borderBottomLeftRadius:xc,borderBottomRightRadius:xc,boxShadow:z7};function _E(e,{layout:t,layoutId:s}){return pl.has(e)||e.startsWith("origin")||(t||s!==void 0)&&(!!A0[e]||e==="opacity")}function fx(e,t,s){const n=e.style,o=t?.style,l={};if(!n)return l;for(const u in n)(Is(n[u])||o&&Is(o[u])||_E(u,e)||s?.getValue(u)?.liveStyle!==void 0)&&(l[u]=n[u]);return l}function B7(e){return window.getComputedStyle(e)}class I7 extends mE{constructor(){super(...arguments),this.type="html",this.renderInstance=vE}readValueFromInstance(t,s){if(pl.has(s))return this.projection?.isProjecting?g0(s):nO(t,s);{const n=B7(t),o=(jN(s)?n.getPropertyValue(s):n[s])||0;return typeof o=="string"?o.trim():o}}measureInstanceViewportBox(t,{transformPagePoint:s}){return xE(t,s)}build(t,s,n){hx(t,s,n.transformTemplate)}scrapeMotionValuesFromProps(t,s,n){return fx(t,s,n)}}const P7={offset:"stroke-dashoffset",array:"stroke-dasharray"},$7={offset:"strokeDashoffset",array:"strokeDasharray"};function H7(e,t,s=1,n=0,o=!0){e.pathLength=1;const l=o?P7:$7;e[l.offset]=`${-n}`,e[l.array]=`${t} ${s}`}const U7=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function yE(e,{attrX:t,attrY:s,attrScale:n,pathLength:o,pathSpacing:l=1,pathOffset:u=0,...h},m,d,p){if(hx(e,h,d),m){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:g,style:x}=e;g.transform&&(x.transform=g.transform,delete g.transform),(x.transform||g.transformOrigin)&&(x.transformOrigin=g.transformOrigin??"50% 50%",delete g.transformOrigin),x.transform&&(x.transformBox=p?.transformBox??"fill-box",delete g.transformBox);for(const _ of U7)g[_]!==void 0&&(x[_]=g[_],delete g[_]);t!==void 0&&(g.x=t),s!==void 0&&(g.y=s),n!==void 0&&(g.scale=n),o!==void 0&&H7(g,o,l,u,!1)}const SE=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),wE=e=>typeof e=="string"&&e.toLowerCase()==="svg";function F7(e,t,s,n){vE(e,t,void 0,n);for(const o in t.attrs)e.setAttribute(SE.has(o)?o:rx(o),t.attrs[o])}function kE(e,t,s){const n=fx(e,t,s);for(const o in e)if(Is(e[o])||Is(t[o])){const l=ml.indexOf(o)!==-1?"attr"+o.charAt(0).toUpperCase()+o.substring(1):o;n[l]=e[o]}return n}class q7 extends mE{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=gs}getBaseTargetFromProps(t,s){return t[s]}readValueFromInstance(t,s){if(pl.has(s)){const n=nE(s);return n&&n.default||0}return s=SE.has(s)?s:rx(s),t.getAttribute(s)}scrapeMotionValuesFromProps(t,s,n){return kE(t,s,n)}build(t,s,n){yE(t,s,this.isSVGTag,n.transformTemplate,n.style)}renderInstance(t,s,n,o){F7(t,s,n,o)}mount(t){this.isSVGTag=wE(t.tagName),super.mount(t)}}const V7=dx.length;function CE(e){if(!e)return;if(!e.isControllingVariants){const s=e.parent?CE(e.parent)||{}:{};return e.props.initial!==void 0&&(s.initial=e.props.initial),s}const t={};for(let s=0;s<V7;s++){const n=dx[s],o=e.props[n];(Qc(o)||o===!1)&&(t[n]=o)}return t}function NE(e,t){if(!Array.isArray(t))return!1;const s=t.length;if(s!==e.length)return!1;for(let n=0;n<s;n++)if(t[n]!==e[n])return!1;return!0}const G7=[...ux].reverse(),W7=ux.length;function K7(e){return t=>Promise.all(t.map(({animation:s,options:n})=>qO(e,s,n)))}function Y7(e){let t=K7(e),s=NS(),n=!0,o=!1;const l=d=>(p,g)=>{const x=Ka(e,g,d==="exit"?e.presenceContext?.custom:void 0);if(x){const{transition:_,transitionEnd:S,...w}=x;p={...p,...w,...S}}return p};function u(d){t=d(e)}function h(d){const{props:p}=e,g=CE(e.parent)||{},x=[],_=new Set;let S={},w=1/0;for(let N=0;N<W7;N++){const j=G7[N],E=s[j],A=p[j]!==void 0?p[j]:g[j],O=Qc(A),P=j===d?E.isActive:null;P===!1&&(w=N);let D=A===g[j]&&A!==p[j]&&O;if(D&&(n||o)&&e.manuallyAnimateOnMount&&(D=!1),E.protectedKeys={...S},!E.isActive&&P===null||!A&&!E.prevProp||df(A)||typeof A=="boolean")continue;if(j==="exit"&&E.isActive&&P!==!0){E.prevResolvedValues&&(S={...S,...E.prevResolvedValues});continue}const T=X7(E.prevProp,A);let z=T||j===d&&E.isActive&&!D&&O||N>w&&O,L=!1;const I=Array.isArray(A)?A:[A];let $=I.reduce(l(j),{});P===!1&&($={});const{prevResolvedValues:U={}}=E,W={...U,...$},G=X=>{z=!0,_.has(X)&&(L=!0,_.delete(X)),E.needsAnimating[X]=!0;const K=e.getValue(X);K&&(K.liveStyle=!1)};for(const X in W){const K=$[X],te=U[X];if(S.hasOwnProperty(X))continue;let R=!1;S0(K)&&S0(te)?R=!NE(K,te):R=K!==te,R?K!=null?G(X):_.add(X):K!==void 0&&_.has(X)?G(X):E.protectedKeys[X]=!0}E.prevProp=A,E.prevResolvedValues=$,E.isActive&&(S={...S,...$}),(n||o)&&e.blockInitialAnimation&&(z=!1);const B=D&&T;z&&(!B||L)&&x.push(...I.map(X=>{const K={type:j};if(typeof X=="string"&&(n||o)&&!B&&e.manuallyAnimateOnMount&&e.parent){const{parent:te}=e,R=Ka(te,X);if(te.enteringChildren&&R){const{delayChildren:Z}=R.transition||{};K.delay=KN(te.enteringChildren,e,Z)}}return{animation:X,options:K}}))}if(_.size){const N={};if(typeof p.initial!="boolean"){const j=Ka(e,Array.isArray(p.initial)?p.initial[0]:p.initial);j&&j.transition&&(N.transition=j.transition)}_.forEach(j=>{const E=e.getBaseTarget(j),A=e.getValue(j);A&&(A.liveStyle=!0),N[j]=E??null}),x.push({animation:N})}let C=!!x.length;return n&&(p.initial===!1||p.initial===p.animate)&&!e.manuallyAnimateOnMount&&(C=!1),n=!1,o=!1,C?t(x):Promise.resolve()}function m(d,p){if(s[d].isActive===p)return Promise.resolve();e.variantChildren?.forEach(x=>x.animationState?.setActive(d,p)),s[d].isActive=p;const g=h(d);for(const x in s)s[x].protectedKeys={};return g}return{animateChanges:h,setActive:m,setAnimateFunction:u,getState:()=>s,reset:()=>{s=NS(),o=!0}}}function X7(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!NE(t,e):!1}function za(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function NS(){return{animate:za(!0),whileInView:za(),whileHover:za(),whileTap:za(),whileDrag:za(),whileFocus:za(),exit:za()}}function M0(e,t){e.min=t.min,e.max=t.max}function ci(e,t){M0(e.x,t.x),M0(e.y,t.y)}function ES(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}const EE=1e-4,Z7=1-EE,Q7=1+EE,jE=.01,J7=0-jE,eL=0+jE;function Js(e){return e.max-e.min}function tL(e,t,s){return Math.abs(e-t)<=s}function jS(e,t,s,n=.5){e.origin=n,e.originPoint=Lt(t.min,t.max,e.origin),e.scale=Js(s)/Js(t),e.translate=Lt(s.min,s.max,e.origin)-e.originPoint,(e.scale>=Z7&&e.scale<=Q7||isNaN(e.scale))&&(e.scale=1),(e.translate>=J7&&e.translate<=eL||isNaN(e.translate))&&(e.translate=0)}function Uc(e,t,s,n){jS(e.x,t.x,s.x,n?n.originX:void 0),jS(e.y,t.y,s.y,n?n.originY:void 0)}function TS(e,t,s,n=0){const o=n?Lt(s.min,s.max,n):s.min;e.min=o+t.min,e.max=e.min+Js(t)}function sL(e,t,s,n){TS(e.x,t.x,s.x,n?.x),TS(e.y,t.y,s.y,n?.y)}function AS(e,t,s,n=0){const o=n?Lt(s.min,s.max,n):s.min;e.min=t.min-o,e.max=e.min+Js(t)}function zh(e,t,s,n){AS(e.x,t.x,s.x,n?.x),AS(e.y,t.y,s.y,n?.y)}function MS(e,t,s,n,o){return e-=t,e=Lh(e,1/s,n),o!==void 0&&(e=Lh(e,1/o,n)),e}function nL(e,t=0,s=1,n=.5,o,l=e,u=e){if(Di.test(t)&&(t=parseFloat(t),t=Lt(u.min,u.max,t/100)-u.min),typeof t!="number")return;let h=Lt(l.min,l.max,n);e===l&&(h-=t),e.min=MS(e.min,t,s,h,o),e.max=MS(e.max,t,s,h,o)}function RS(e,t,[s,n,o],l,u){nL(e,t[s],t[n],t[o],t.scale,l,u)}const iL=["x","scaleX","originX"],rL=["y","scaleY","originY"];function DS(e,t,s,n){RS(e.x,t,iL,s?s.x:void 0,n?n.x:void 0),RS(e.y,t,rL,s?s.y:void 0,n?n.y:void 0)}function OS(e){return e.translate===0&&e.scale===1}function TE(e){return OS(e.x)&&OS(e.y)}function LS(e,t){return e.min===t.min&&e.max===t.max}function aL(e,t){return LS(e.x,t.x)&&LS(e.y,t.y)}function zS(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function AE(e,t){return zS(e.x,t.x)&&zS(e.y,t.y)}function BS(e){return Js(e.x)/Js(e.y)}function IS(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}function Ai(e){return[e("x"),e("y")]}function oL(e,t,s){let n="";const o=e.x.translate/t.x,l=e.y.translate/t.y,u=s?.z||0;if((o||l||u)&&(n=`translate3d(${o}px, ${l}px, ${u}px) `),(t.x!==1||t.y!==1)&&(n+=`scale(${1/t.x}, ${1/t.y}) `),s){const{transformPerspective:d,rotate:p,rotateX:g,rotateY:x,skewX:_,skewY:S}=s;d&&(n=`perspective(${d}px) ${n}`),p&&(n+=`rotate(${p}deg) `),g&&(n+=`rotateX(${g}deg) `),x&&(n+=`rotateY(${x}deg) `),_&&(n+=`skewX(${_}deg) `),S&&(n+=`skewY(${S}deg) `)}const h=e.x.scale*t.x,m=e.y.scale*t.y;return(h!==1||m!==1)&&(n+=`scale(${h}, ${m})`),n||"none"}const ME=["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"],lL=ME.length,PS=e=>typeof e=="string"?parseFloat(e):e,$S=e=>typeof e=="number"||Ae.test(e);function cL(e,t,s,n,o,l){o?(e.opacity=Lt(0,s.opacity??1,uL(n)),e.opacityExit=Lt(t.opacity??1,0,dL(n))):l&&(e.opacity=Lt(t.opacity??1,s.opacity??1,n));for(let u=0;u<lL;u++){const h=ME[u];let m=HS(t,h),d=HS(s,h);if(m===void 0&&d===void 0)continue;m||(m=0),d||(d=0),m===0||d===0||$S(m)===$S(d)?(e[h]=Math.max(Lt(PS(m),PS(d),n),0),(Di.test(d)||Di.test(m))&&(e[h]+="%")):e[h]=d}(t.rotate||s.rotate)&&(e.rotate=Lt(t.rotate||0,s.rotate||0,n))}function HS(e,t){return e[t]!==void 0?e[t]:e.borderRadius}const uL=RE(0,.5,SN),dL=RE(.5,.95,Wn);function RE(e,t,s){return n=>n<e?0:n>t?1:s(Xc(e,t,n))}function hL(e,t,s){const n=Is(e)?e:ll(e);return n.start(nx("",n,t,s)),n.animation}function Jc(e,t,s,n={passive:!0}){return e.addEventListener(t,s,n),()=>e.removeEventListener(t,s)}const fL=(e,t)=>e.depth-t.depth;class mL{constructor(){this.children=[],this.isDirty=!1}add(t){qb(this.children,t),this.isDirty=!0}remove(t){Th(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(fL),this.isDirty=!1,this.children.forEach(t)}}function pL(e,t){const s=Qs.now(),n=({timestamp:o})=>{const l=o-s;l>=t&&(ua(n),e(l-t))};return Et.setup(n,!0),()=>ua(n)}function bh(e){return Is(e)?e.get():e}class gL{constructor(){this.members=[]}add(t){qb(this.members,t);for(let s=this.members.length-1;s>=0;s--){const n=this.members[s];if(n===t||n===this.lead||n===this.prevLead)continue;const o=n.instance;(!o||o.isConnected===!1)&&!n.snapshot&&(Th(this.members,n),n.unmount())}t.scheduleRender()}remove(t){if(Th(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const s=this.members[this.members.length-1];s&&this.promote(s)}}relegate(t){for(let s=this.members.indexOf(t)-1;s>=0;s--){const n=this.members[s];if(n.isPresent!==!1&&n.instance?.isConnected!==!1)return this.promote(n),!0}return!1}promote(t,s){const n=this.lead;if(t!==n&&(this.prevLead=n,this.lead=t,t.show(),n)){n.updateSnapshot(),t.scheduleRender();const{layoutDependency:o}=n.options,{layoutDependency:l}=t.options;(o===void 0||o!==l)&&(t.resumeFrom=n,s&&(n.preserveOpacity=!0),n.snapshot&&(t.snapshot=n.snapshot,t.snapshot.latestValues=n.animationValues||n.latestValues),t.root?.isUpdating&&(t.isLayoutDirty=!0)),t.options.crossfade===!1&&n.hide()}}exitAnimationComplete(){this.members.forEach(t=>{t.options.onExitComplete?.(),t.resumingFrom?.options.onExitComplete?.()})}scheduleRender(){this.members.forEach(t=>t.instance&&t.scheduleRender(!1))}removeLeadSnapshot(){this.lead?.snapshot&&(this.lead.snapshot=void 0)}}const xh={hasAnimatedSinceResize:!0,hasEverUpdated:!1},Vp=["","X","Y","Z"],bL=1e3;let xL=0;function Gp(e,t,s,n){const{latestValues:o}=t;o[e]&&(s[e]=o[e],t.setStaticValue(e,0),n&&(n[e]=0))}function DE(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const s=JN(t);if(window.MotionHasOptimisedAnimation(s,"transform")){const{layout:o,layoutId:l}=e.options;window.MotionCancelOptimisedAnimation(s,"transform",Et,!(o||l))}const{parent:n}=e;n&&!n.hasCheckedOptimisedAppear&&DE(n)}function OE({attachResizeListener:e,defaultParent:t,measureScroll:s,checkIsScrollRoot:n,resetTransform:o}){return class{constructor(u={},h=t?.()){this.id=xL++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(yL),this.nodes.forEach(EL),this.nodes.forEach(jL),this.nodes.forEach(SL)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=u,this.root=h?h.root||h:this,this.path=h?[...h.path,h]:[],this.parent=h,this.depth=h?h.depth+1:0;for(let m=0;m<this.path.length;m++)this.path[m].shouldResetTransform=!0;this.root===this&&(this.nodes=new mL)}addEventListener(u,h){return this.eventHandlers.has(u)||this.eventHandlers.set(u,new Gb),this.eventHandlers.get(u).add(h)}notifyListeners(u,...h){const m=this.eventHandlers.get(u);m&&m.notify(...h)}hasListeners(u){return this.eventHandlers.has(u)}mount(u){if(this.instance)return;this.isSVG=cx(u)&&!_7(u),this.instance=u;const{layoutId:h,layout:m,visualElement:d}=this.options;if(d&&!d.current&&d.mount(u),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(m||h)&&(this.isLayoutDirty=!0),e){let p,g=0;const x=()=>this.root.updateBlockedByResize=!1;Et.read(()=>{g=window.innerWidth}),e(u,()=>{const _=window.innerWidth;_!==g&&(g=_,this.root.updateBlockedByResize=!0,p&&p(),p=pL(x,250),xh.hasAnimatedSinceResize&&(xh.hasAnimatedSinceResize=!1,this.nodes.forEach(qS)))})}h&&this.root.registerSharedNode(h,this),this.options.animate!==!1&&d&&(h||m)&&this.addEventListener("didUpdate",({delta:p,hasLayoutChanged:g,hasRelativeLayoutChanged:x,layout:_})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const S=this.options.transition||d.getDefaultTransition()||DL,{onLayoutAnimationStart:w,onLayoutAnimationComplete:C}=d.getProps(),N=!this.targetLayout||!AE(this.targetLayout,_),j=!g&&x;if(this.options.layoutRoot||this.resumeFrom||j||g&&(N||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const E={...sx(S,"layout"),onPlay:w,onComplete:C};(d.shouldReduceMotion||this.options.layoutRoot)&&(E.delay=0,E.type=!1),this.startAnimation(E),this.setAnimationOrigin(p,j)}else g||qS(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=_})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const u=this.getStack();u&&u.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),ua(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(TL),this.animationId++)}getTransformTemplate(){const{visualElement:u}=this.options;return u&&u.getProps().transformTemplate}willUpdate(u=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&DE(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let p=0;p<this.path.length;p++){const g=this.path[p];g.shouldResetTransform=!0,(typeof g.latestValues.x=="string"||typeof g.latestValues.y=="string")&&(g.isLayoutDirty=!0),g.updateScroll("snapshot"),g.options.layoutRoot&&g.willUpdate(!1)}const{layoutId:h,layout:m}=this.options;if(h===void 0&&!m)return;const d=this.getTransformTemplate();this.prevTransformTemplateValue=d?d(this.latestValues,""):void 0,this.updateSnapshot(),u&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){const m=this.updateBlockedByResize;this.unblockUpdate(),this.updateBlockedByResize=!1,this.clearAllSnapshots(),m&&this.nodes.forEach(kL),this.nodes.forEach(US);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(FS);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(CL),this.nodes.forEach(NL),this.nodes.forEach(vL),this.nodes.forEach(_L)):this.nodes.forEach(FS),this.clearAllSnapshots();const h=Qs.now();zs.delta=zi(0,1e3/60,h-zs.timestamp),zs.timestamp=h,zs.isProcessing=!0,Bp.update.process(zs),Bp.preRender.process(zs),Bp.render.process(zs),zs.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,ox.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(wL),this.sharedNodes.forEach(AL)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,Et.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){Et.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!Js(this.snapshot.measuredBox.x)&&!Js(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let m=0;m<this.path.length;m++)this.path[m].updateScroll();const u=this.layout;this.layout=this.measure(!1),this.layoutVersion++,this.layoutCorrected||(this.layoutCorrected=gs()),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:h}=this.options;h&&h.notify("LayoutMeasure",this.layout.layoutBox,u?u.layoutBox:void 0)}updateScroll(u="measure"){let h=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===u&&(h=!1),h&&this.instance){const m=n(this.instance);this.scroll={animationId:this.root.animationId,phase:u,isRoot:m,offset:s(this.instance),wasRoot:this.scroll?this.scroll.isRoot:m}}}resetTransform(){if(!o)return;const u=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,h=this.projectionDelta&&!TE(this.projectionDelta),m=this.getTransformTemplate(),d=m?m(this.latestValues,""):void 0,p=d!==this.prevTransformTemplateValue;u&&this.instance&&(h||Pa(this.latestValues)||p)&&(o(this.instance,d),this.shouldResetTransform=!1,this.scheduleRender())}measure(u=!0){const h=this.measurePageBox();let m=this.removeElementScroll(h);return u&&(m=this.removeTransform(m)),OL(m),{animationId:this.root.animationId,measuredBox:h,layoutBox:m,latestValues:{},source:this.id}}measurePageBox(){const{visualElement:u}=this.options;if(!u)return gs();const h=u.measureViewportBox();if(!(this.scroll?.wasRoot||this.path.some(LL))){const{scroll:d}=this.root;d&&(Mi(h.x,d.offset.x),Mi(h.y,d.offset.y))}return h}removeElementScroll(u){const h=gs();if(ci(h,u),this.scroll?.wasRoot)return h;for(let m=0;m<this.path.length;m++){const d=this.path[m],{scroll:p,options:g}=d;d!==this.root&&p&&g.layoutScroll&&(p.wasRoot&&ci(h,u),Mi(h.x,p.offset.x),Mi(h.y,p.offset.y))}return h}applyTransform(u,h=!1,m){const d=m||gs();ci(d,u);for(let p=0;p<this.path.length;p++){const g=this.path[p];!h&&g.options.layoutScroll&&g.scroll&&g!==g.root&&(Mi(d.x,-g.scroll.offset.x),Mi(d.y,-g.scroll.offset.y)),Pa(g.latestValues)&&gh(d,g.latestValues,g.layout?.layoutBox)}return Pa(this.latestValues)&&gh(d,this.latestValues,this.layout?.layoutBox),d}removeTransform(u){const h=gs();ci(h,u);for(let m=0;m<this.path.length;m++){const d=this.path[m];if(!Pa(d.latestValues))continue;let p;d.instance&&(j0(d.latestValues)&&d.updateSnapshot(),p=gs(),ci(p,d.measurePageBox())),DS(h,d.latestValues,d.snapshot?.layoutBox,p)}return Pa(this.latestValues)&&DS(h,this.latestValues),h}setTargetDelta(u){this.targetDelta=u,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(u){this.options={...this.options,...u,crossfade:u.crossfade!==void 0?u.crossfade:!0}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==zs.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(u=!1){const h=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=h.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=h.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=h.isSharedProjectionDirty);const m=!!this.resumingFrom||this!==h;if(!(u||m&&this.isSharedProjectionDirty||this.isProjectionDirty||this.parent?.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:p,layoutId:g}=this.options;if(!this.layout||!(p||g))return;this.resolvedRelativeTargetAt=zs.timestamp;const x=this.getClosestProjectingParent();x&&this.linkedParentVersion!==x.layoutVersion&&!x.options.layoutRoot&&this.removeRelativeTarget(),!this.targetDelta&&!this.relativeTarget&&(this.options.layoutAnchor!==!1&&x&&x.layout?this.createRelativeTarget(x,this.layout.layoutBox,x.layout.layoutBox):this.removeRelativeTarget()),!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=gs(),this.targetWithTransforms=gs()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),sL(this.target,this.relativeTarget,this.relativeParent.target,this.options.layoutAnchor||void 0)):this.targetDelta?(this.resumingFrom?this.applyTransform(this.layout.layoutBox,!1,this.target):ci(this.target,this.layout.layoutBox),bE(this.target,this.targetDelta)):ci(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget&&(this.attemptToResolveRelativeTarget=!1,this.options.layoutAnchor!==!1&&x&&!!x.resumingFrom==!!this.resumingFrom&&!x.options.layoutScroll&&x.target&&this.animationProgress!==1?this.createRelativeTarget(x,this.target,x.target):this.relativeParent=this.relativeTarget=void 0))}getClosestProjectingParent(){if(!(!this.parent||j0(this.parent.latestValues)||gE(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}createRelativeTarget(u,h,m){this.relativeParent=u,this.linkedParentVersion=u.layoutVersion,this.forceRelativeParentToResolveTarget(),this.relativeTarget=gs(),this.relativeTargetOrigin=gs(),zh(this.relativeTargetOrigin,h,m,this.options.layoutAnchor||void 0),ci(this.relativeTarget,this.relativeTargetOrigin)}removeRelativeTarget(){this.relativeParent=this.relativeTarget=void 0}calcProjection(){const u=this.getLead(),h=!!this.resumingFrom||this!==u;let m=!0;if((this.isProjectionDirty||this.parent?.isProjectionDirty)&&(m=!1),h&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(m=!1),this.resolvedRelativeTargetAt===zs.timestamp&&(m=!1),m)return;const{layout:d,layoutId:p}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(d||p))return;ci(this.layoutCorrected,this.layout.layoutBox);const g=this.treeScale.x,x=this.treeScale.y;M7(this.layoutCorrected,this.treeScale,this.path,h),u.layout&&!u.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(u.target=u.layout.layoutBox,u.targetWithTransforms=gs());const{target:_}=u;if(!_){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(ES(this.prevProjectionDelta.x,this.projectionDelta.x),ES(this.prevProjectionDelta.y,this.projectionDelta.y)),Uc(this.projectionDelta,this.layoutCorrected,_,this.latestValues),(this.treeScale.x!==g||this.treeScale.y!==x||!IS(this.projectionDelta.x,this.prevProjectionDelta.x)||!IS(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",_))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(u=!0){if(this.options.visualElement?.scheduleRender(),u){const h=this.getStack();h&&h.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=el(),this.projectionDelta=el(),this.projectionDeltaWithTransform=el()}setAnimationOrigin(u,h=!1){const m=this.snapshot,d=m?m.latestValues:{},p={...this.latestValues},g=el();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!h;const x=gs(),_=m?m.source:void 0,S=this.layout?this.layout.source:void 0,w=_!==S,C=this.getStack(),N=!C||C.members.length<=1,j=!!(w&&!N&&this.options.crossfade===!0&&!this.path.some(RL));this.animationProgress=0;let E;this.mixTargetDelta=A=>{const O=A/1e3;VS(g.x,u.x,O),VS(g.y,u.y,O),this.setTargetDelta(g),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(zh(x,this.layout.layoutBox,this.relativeParent.layout.layoutBox,this.options.layoutAnchor||void 0),ML(this.relativeTarget,this.relativeTargetOrigin,x,O),E&&aL(this.relativeTarget,E)&&(this.isProjectionDirty=!1),E||(E=gs()),ci(E,this.relativeTarget)),w&&(this.animationValues=p,cL(p,d,this.latestValues,O,j,N)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=O},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(u){this.notifyListeners("animationStart"),this.currentAnimation?.stop(),this.resumingFrom?.currentAnimation?.stop(),this.pendingAnimation&&(ua(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=Et.update(()=>{xh.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=ll(0)),this.motionValue.jump(0,!1),this.currentAnimation=hL(this.motionValue,[0,1e3],{...u,velocity:0,isSync:!0,onUpdate:h=>{this.mixTargetDelta(h),u.onUpdate&&u.onUpdate(h)},onStop:()=>{},onComplete:()=>{u.onComplete&&u.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const u=this.getStack();u&&u.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(bL),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const u=this.getLead();let{targetWithTransforms:h,target:m,layout:d,latestValues:p}=u;if(!(!h||!m||!d)){if(this!==u&&this.layout&&d&&LE(this.options.animationType,this.layout.layoutBox,d.layoutBox)){m=this.target||gs();const g=Js(this.layout.layoutBox.x);m.x.min=u.target.x.min,m.x.max=m.x.min+g;const x=Js(this.layout.layoutBox.y);m.y.min=u.target.y.min,m.y.max=m.y.min+x}ci(h,m),gh(h,p),Uc(this.projectionDeltaWithTransform,this.layoutCorrected,h,p)}}registerSharedNode(u,h){this.sharedNodes.has(u)||this.sharedNodes.set(u,new gL),this.sharedNodes.get(u).add(h);const d=h.options.initialPromotionConfig;h.promote({transition:d?d.transition:void 0,preserveFollowOpacity:d&&d.shouldPreserveFollowOpacity?d.shouldPreserveFollowOpacity(h):void 0})}isLead(){const u=this.getStack();return u?u.lead===this:!0}getLead(){const{layoutId:u}=this.options;return u?this.getStack()?.lead||this:this}getPrevLead(){const{layoutId:u}=this.options;return u?this.getStack()?.prevLead:void 0}getStack(){const{layoutId:u}=this.options;if(u)return this.root.sharedNodes.get(u)}promote({needsReset:u,transition:h,preserveFollowOpacity:m}={}){const d=this.getStack();d&&d.promote(this,m),u&&(this.projectionDelta=void 0,this.needsReset=!0),h&&this.setOptions({transition:h})}relegate(){const u=this.getStack();return u?u.relegate(this):!1}resetSkewAndRotation(){const{visualElement:u}=this.options;if(!u)return;let h=!1;const{latestValues:m}=u;if((m.z||m.rotate||m.rotateX||m.rotateY||m.rotateZ||m.skewX||m.skewY)&&(h=!0),!h)return;const d={};m.z&&Gp("z",u,d,this.animationValues);for(let p=0;p<Vp.length;p++)Gp(`rotate${Vp[p]}`,u,d,this.animationValues),Gp(`skew${Vp[p]}`,u,d,this.animationValues);u.render();for(const p in d)u.setStaticValue(p,d[p]),this.animationValues&&(this.animationValues[p]=d[p]);u.scheduleRender()}applyProjectionStyles(u,h){if(!this.instance||this.isSVG)return;if(!this.isVisible){u.visibility="hidden";return}const m=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,u.visibility="",u.opacity="",u.pointerEvents=bh(h?.pointerEvents)||"",u.transform=m?m(this.latestValues,""):"none";return}const d=this.getLead();if(!this.projectionDelta||!this.layout||!d.target){this.options.layoutId&&(u.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,u.pointerEvents=bh(h?.pointerEvents)||""),this.hasProjected&&!Pa(this.latestValues)&&(u.transform=m?m({},""):"none",this.hasProjected=!1);return}u.visibility="";const p=d.animationValues||d.latestValues;this.applyTransformsToTarget();let g=oL(this.projectionDeltaWithTransform,this.treeScale,p);m&&(g=m(p,g)),u.transform=g;const{x,y:_}=this.projectionDelta;u.transformOrigin=`${x.origin*100}% ${_.origin*100}% 0`,d.animationValues?u.opacity=d===this?p.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:p.opacityExit:u.opacity=d===this?p.opacity!==void 0?p.opacity:"":p.opacityExit!==void 0?p.opacityExit:0;for(const S in A0){if(p[S]===void 0)continue;const{correct:w,applyTo:C,isCSSVariable:N}=A0[S],j=g==="none"?p[S]:w(p[S],d);if(C){const E=C.length;for(let A=0;A<E;A++)u[C[A]]=j}else N?this.options.visualElement.renderState.vars[S]=j:u[S]=j}this.options.layoutId&&(u.pointerEvents=d===this?bh(h?.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(u=>u.currentAnimation?.stop()),this.root.nodes.forEach(US),this.root.sharedNodes.clear()}}}function vL(e){e.updateLayout()}function _L(e){const t=e.resumeFrom?.snapshot||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners("didUpdate")){const{layoutBox:s,measuredBox:n}=e.layout,{animationType:o}=e.options,l=t.source!==e.layout.source;if(o==="size")Ai(p=>{const g=l?t.measuredBox[p]:t.layoutBox[p],x=Js(g);g.min=s[p].min,g.max=g.min+x});else if(o==="x"||o==="y"){const p=o==="x"?"y":"x";M0(l?t.measuredBox[p]:t.layoutBox[p],s[p])}else LE(o,t.layoutBox,s)&&Ai(p=>{const g=l?t.measuredBox[p]:t.layoutBox[p],x=Js(s[p]);g.max=g.min+x,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[p].max=e.relativeTarget[p].min+x)});const u=el();Uc(u,s,t.layoutBox);const h=el();l?Uc(h,e.applyTransform(n,!0),t.measuredBox):Uc(h,s,t.layoutBox);const m=!TE(u);let d=!1;if(!e.resumeFrom){const p=e.getClosestProjectingParent();if(p&&!p.resumeFrom){const{snapshot:g,layout:x}=p;if(g&&x){const _=e.options.layoutAnchor||void 0,S=gs();zh(S,t.layoutBox,g.layoutBox,_);const w=gs();zh(w,s,x.layoutBox,_),AE(S,w)||(d=!0),p.options.layoutRoot&&(e.relativeTarget=w,e.relativeTargetOrigin=S,e.relativeParent=p)}}}e.notifyListeners("didUpdate",{layout:s,snapshot:t,delta:h,layoutDelta:u,hasLayoutChanged:m,hasRelativeLayoutChanged:d})}else if(e.isLead()){const{onExitComplete:s}=e.options;s&&s()}e.options.transition=void 0}function yL(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function SL(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function wL(e){e.clearSnapshot()}function US(e){e.clearMeasurements()}function kL(e){e.isLayoutDirty=!0,e.updateLayout()}function FS(e){e.isLayoutDirty=!1}function CL(e){e.isAnimationBlocked&&e.layout&&!e.isLayoutDirty&&(e.snapshot=e.layout,e.isLayoutDirty=!0)}function NL(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function qS(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function EL(e){e.resolveTargetDelta()}function jL(e){e.calcProjection()}function TL(e){e.resetSkewAndRotation()}function AL(e){e.removeLeadSnapshot()}function VS(e,t,s){e.translate=Lt(t.translate,0,s),e.scale=Lt(t.scale,1,s),e.origin=t.origin,e.originPoint=t.originPoint}function GS(e,t,s,n){e.min=Lt(t.min,s.min,n),e.max=Lt(t.max,s.max,n)}function ML(e,t,s,n){GS(e.x,t.x,s.x,n),GS(e.y,t.y,s.y,n)}function RL(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const DL={duration:.45,ease:[.4,0,.1,1]},WS=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),KS=WS("applewebkit/")&&!WS("chrome/")?Math.round:Wn;function YS(e){e.min=KS(e.min),e.max=KS(e.max)}function OL(e){YS(e.x),YS(e.y)}function LE(e,t,s){return e==="position"||e==="preserve-aspect"&&!tL(BS(t),BS(s),.2)}function LL(e){return e!==e.root&&e.scroll?.wasRoot}const zL=OE({attachResizeListener:(e,t)=>Jc(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body?.scrollLeft||0,y:document.documentElement.scrollTop||document.body?.scrollTop||0}),checkIsScrollRoot:()=>!0}),Wp={current:void 0},zE=OE({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!Wp.current){const e=new zL({});e.mount(window),e.setOptions({layoutScroll:!0}),Wp.current=e}return Wp.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),BE=y.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function BL(e=!0){const t=y.useContext(Fb);if(t===null)return[!0,null];const{isPresent:s,onExitComplete:n,register:o}=t,l=y.useId();y.useEffect(()=>{if(e)return o(l)},[e]);const u=y.useCallback(()=>e&&n&&n(l),[l,n,e]);return!s&&n?[!1,u]:[!0]}const IE=y.createContext({strict:!1}),XS={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let ZS=!1;function IL(){if(ZS)return;const e={};for(const t in XS)e[t]={isEnabled:s=>XS[t].some(n=>!!s[n])};fE(e),ZS=!0}function PE(){return IL(),E7()}function PL(e){const t=PE();for(const s in e)t[s]={...t[s],...e[s]};fE(t)}const $L=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function Bh(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||$L.has(e)}let $E=e=>!Bh(e);function HL(e){typeof e=="function"&&($E=t=>t.startsWith("on")?!Bh(t):e(t))}try{HL(require("@emotion/is-prop-valid").default)}catch{}function UL(e,t,s){const n={};for(const o in e)o==="values"&&typeof e.values=="object"||Is(e[o])||($E(o)||s===!0&&Bh(o)||!t&&!Bh(o)||e.draggable&&o.startsWith("onDrag"))&&(n[o]=e[o]);return n}const ff=y.createContext({});function FL(e,t){if(hf(e)){const{initial:s,animate:n}=e;return{initial:s===!1||Qc(s)?s:void 0,animate:Qc(n)?n:void 0}}return e.inherit!==!1?t:{}}function qL(e){const{initial:t,animate:s}=FL(e,y.useContext(ff));return y.useMemo(()=>({initial:t,animate:s}),[QS(t),QS(s)])}function QS(e){return Array.isArray(e)?e.join(" "):e}const mx=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function HE(e,t,s){for(const n in t)!Is(t[n])&&!_E(n,s)&&(e[n]=t[n])}function VL({transformTemplate:e},t){return y.useMemo(()=>{const s=mx();return hx(s,t,e),Object.assign({},s.vars,s.style)},[t])}function GL(e,t){const s=e.style||{},n={};return HE(n,s,e),Object.assign(n,VL(e,t)),n}function WL(e,t){const s={},n=GL(e,t);return e.drag&&e.dragListener!==!1&&(s.draggable=!1,n.userSelect=n.WebkitUserSelect=n.WebkitTouchCallout="none",n.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(s.tabIndex=0),s.style=n,s}const UE=()=>({...mx(),attrs:{}});function KL(e,t,s,n){const o=y.useMemo(()=>{const l=UE();return yE(l,t,wE(n),e.transformTemplate,e.style),{...l.attrs,style:{...l.style}}},[t]);if(e.style){const l={};HE(l,e.style,e),o.style={...l,...o.style}}return o}const YL=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function px(e){return typeof e!="string"||e.includes("-")?!1:!!(YL.indexOf(e)>-1||/[A-Z]/u.test(e))}function XL(e,t,s,{latestValues:n},o,l=!1,u){const m=(u??px(e)?KL:WL)(t,n,o,e),d=UL(t,typeof e=="string",l),p=e!==y.Fragment?{...d,...m,ref:s}:{},{children:g}=t,x=y.useMemo(()=>Is(g)?g.get():g,[g]);return y.createElement(e,{...p,children:x})}function ZL({scrapeMotionValuesFromProps:e,createRenderState:t},s,n,o){return{latestValues:QL(s,n,o,e),renderState:t()}}function QL(e,t,s,n){const o={},l=n(e,{});for(const x in l)o[x]=bh(l[x]);let{initial:u,animate:h}=e;const m=hf(e),d=dE(e);t&&d&&!m&&e.inherit!==!1&&(u===void 0&&(u=t.initial),h===void 0&&(h=t.animate));let p=s?s.initial===!1:!1;p=p||u===!1;const g=p?h:u;if(g&&typeof g!="boolean"&&!df(g)){const x=Array.isArray(g)?g:[g];for(let _=0;_<x.length;_++){const S=ix(e,x[_]);if(S){const{transitionEnd:w,transition:C,...N}=S;for(const j in N){let E=N[j];if(Array.isArray(E)){const A=p?E.length-1:0;E=E[A]}E!==null&&(o[j]=E)}for(const j in w)o[j]=w[j]}}}return o}const FE=e=>(t,s)=>{const n=y.useContext(ff),o=y.useContext(Fb),l=()=>ZL(e,t,n,o);return s?l():Y8(l)},JL=FE({scrapeMotionValuesFromProps:fx,createRenderState:mx}),e9=FE({scrapeMotionValuesFromProps:kE,createRenderState:UE}),t9=Symbol.for("motionComponentSymbol");function s9(e,t,s){const n=y.useRef(s);y.useInsertionEffect(()=>{n.current=s});const o=y.useRef(null);return y.useCallback(l=>{l&&e.onMount?.(l);const u=n.current;if(typeof u=="function")if(l){const h=u(l);typeof h=="function"&&(o.current=h)}else o.current?(o.current(),o.current=null):u(l);else u&&(u.current=l);t&&(l?t.mount(l):t.unmount())},[t])}const qE=y.createContext({});function Xo(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function n9(e,t,s,n,o,l){const{visualElement:u}=y.useContext(ff),h=y.useContext(IE),m=y.useContext(Fb),d=y.useContext(BE),p=d.reducedMotion,g=d.skipAnimations,x=y.useRef(null),_=y.useRef(!1);n=n||h.renderer,!x.current&&n&&(x.current=n(e,{visualState:t,parent:u,props:s,presenceContext:m,blockInitialAnimation:m?m.initial===!1:!1,reducedMotionConfig:p,skipAnimations:g,isSVG:l}),_.current&&x.current&&(x.current.manuallyAnimateOnMount=!0));const S=x.current,w=y.useContext(qE);S&&!S.projection&&o&&(S.type==="html"||S.type==="svg")&&i9(x.current,s,o,w);const C=y.useRef(!1);y.useInsertionEffect(()=>{S&&C.current&&S.update(s,m)});const N=s[QN],j=y.useRef(!!N&&typeof window<"u"&&!window.MotionHandoffIsComplete?.(N)&&window.MotionHasOptimisedAnimation?.(N));return Z8(()=>{_.current=!0,S&&(C.current=!0,window.MotionIsMounted=!0,S.updateFeatures(),S.scheduleRenderMicrotask(),j.current&&S.animationState&&S.animationState.animateChanges())}),y.useEffect(()=>{S&&(!j.current&&S.animationState&&S.animationState.animateChanges(),j.current&&(queueMicrotask(()=>{window.MotionHandoffMarkAsComplete?.(N)}),j.current=!1),S.enteringChildren=void 0)}),S}function i9(e,t,s,n){const{layoutId:o,layout:l,drag:u,dragConstraints:h,layoutScroll:m,layoutRoot:d,layoutAnchor:p,layoutCrossfade:g}=t;e.projection=new s(e.latestValues,t["data-framer-portal-id"]?void 0:VE(e.parent)),e.projection.setOptions({layoutId:o,layout:l,alwaysMeasureLayout:!!u||h&&Xo(h),visualElement:e,animationType:typeof l=="string"?l:"both",initialPromotionConfig:n,crossfade:g,layoutScroll:m,layoutRoot:d,layoutAnchor:p})}function VE(e){if(e)return e.options.allowProjection!==!1?e.projection:VE(e.parent)}function Kp(e,{forwardMotionProps:t=!1,type:s}={},n,o){n&&PL(n);const l=s?s==="svg":px(e),u=l?e9:JL;function h(d,p){let g;const x={...y.useContext(BE),...d,layoutId:r9(d)},{isStatic:_}=x,S=qL(d),w=u(d,_);if(!_&&typeof window<"u"){a9();const C=o9(x);g=C.MeasureLayout,S.visualElement=n9(e,w,x,o,C.ProjectionNode,l)}return a.jsxs(ff.Provider,{value:S,children:[g&&S.visualElement?a.jsx(g,{visualElement:S.visualElement,...x}):null,XL(e,d,s9(w,S.visualElement,p),w,_,t,l)]})}h.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const m=y.forwardRef(h);return m[t9]=e,m}function r9({layoutId:e}){const t=y.useContext(uN).id;return t&&e!==void 0?t+"-"+e:e}function a9(e,t){y.useContext(IE).strict}function o9(e){const t=PE(),{drag:s,layout:n}=t;if(!s&&!n)return{};const o={...s,...n};return{MeasureLayout:s?.isEnabled(e)||n?.isEnabled(e)?o.MeasureLayout:void 0,ProjectionNode:o.ProjectionNode}}function l9(e,t){if(typeof Proxy>"u")return Kp;const s=new Map,n=(l,u)=>Kp(l,u,e,t),o=(l,u)=>n(l,u);return new Proxy(o,{get:(l,u)=>u==="create"?n:(s.has(u)||s.set(u,Kp(u,void 0,e,t)),s.get(u))})}const c9=(e,t)=>t.isSVG??px(e)?new q7(t):new I7(t,{allowProjection:e!==y.Fragment});class u9 extends ma{constructor(t){super(t),t.animationState||(t.animationState=Y7(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();df(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:s}=this.node.prevProps||{};t!==s&&this.updateAnimationControlsSubscription()}unmount(){this.node.animationState.reset(),this.unmountControls?.()}}let d9=0;class h9 extends ma{constructor(){super(...arguments),this.id=d9++,this.isExitComplete=!1}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:s}=this.node.presenceContext,{isPresent:n}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===n)return;if(t&&n===!1){if(this.isExitComplete){const{initial:l,custom:u}=this.node.getProps();if(typeof l=="string"){const h=Ka(this.node,l,u);if(h){const{transition:m,transitionEnd:d,...p}=h;for(const g in p)this.node.getValue(g)?.jump(p[g])}}this.node.animationState.reset(),this.node.animationState.animateChanges()}else this.node.animationState.setActive("exit",!1);this.isExitComplete=!1;return}const o=this.node.animationState.setActive("exit",!t);s&&!t&&o.then(()=>{this.isExitComplete=!0,s(this.id)})}mount(){const{register:t,onExitComplete:s}=this.node.presenceContext||{};s&&s(this.id),t&&(this.unmount=t(this.id))}unmount(){}}const f9={animation:{Feature:u9},exit:{Feature:h9}};function pu(e){return{point:{x:e.pageX,y:e.pageY}}}const m9=e=>t=>lx(t)&&e(t,pu(t));function Fc(e,t,s,n){return Jc(e,t,m9(s),n)}const GE=({current:e})=>e?e.ownerDocument.defaultView:null,JS=(e,t)=>Math.abs(e-t);function p9(e,t){const s=JS(e.x,t.x),n=JS(e.y,t.y);return Math.sqrt(s**2+n**2)}const ew=new Set(["auto","scroll"]);class WE{constructor(t,s,{transformPagePoint:n,contextWindow:o=window,dragSnapToOrigin:l=!1,distanceThreshold:u=3,element:h}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.lastRawMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=_=>{this.handleScroll(_.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;this.lastRawMoveEventInfo&&(this.lastMoveEventInfo=qd(this.lastRawMoveEventInfo,this.transformPagePoint));const _=Yp(this.lastMoveEventInfo,this.history),S=this.startEvent!==null,w=p9(_.offset,{x:0,y:0})>=this.distanceThreshold;if(!S&&!w)return;const{point:C}=_,{timestamp:N}=zs;this.history.push({...C,timestamp:N});const{onStart:j,onMove:E}=this.handlers;S||(j&&j(this.lastMoveEvent,_),this.startEvent=this.lastMoveEvent),E&&E(this.lastMoveEvent,_)},this.handlePointerMove=(_,S)=>{this.lastMoveEvent=_,this.lastRawMoveEventInfo=S,this.lastMoveEventInfo=qd(S,this.transformPagePoint),Et.update(this.updatePoint,!0)},this.handlePointerUp=(_,S)=>{this.end();const{onEnd:w,onSessionEnd:C,resumeAnimation:N}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&N&&N(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const j=Yp(_.type==="pointercancel"?this.lastMoveEventInfo:qd(S,this.transformPagePoint),this.history);this.startEvent&&w&&w(_,j),C&&C(_,j)},!lx(t))return;this.dragSnapToOrigin=l,this.handlers=s,this.transformPagePoint=n,this.distanceThreshold=u,this.contextWindow=o||window;const m=pu(t),d=qd(m,this.transformPagePoint),{point:p}=d,{timestamp:g}=zs;this.history=[{...p,timestamp:g}];const{onSessionStart:x}=s;x&&x(t,Yp(d,this.history)),this.removeListeners=hu(Fc(this.contextWindow,"pointermove",this.handlePointerMove),Fc(this.contextWindow,"pointerup",this.handlePointerUp),Fc(this.contextWindow,"pointercancel",this.handlePointerUp)),h&&this.startScrollTracking(h)}startScrollTracking(t){let s=t.parentElement;for(;s;){const n=getComputedStyle(s);(ew.has(n.overflowX)||ew.has(n.overflowY))&&this.scrollPositions.set(s,{x:s.scrollLeft,y:s.scrollTop}),s=s.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0}),window.addEventListener("scroll",this.onWindowScroll),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(t){const s=this.scrollPositions.get(t);if(!s)return;const n=t===window,o=n?{x:window.scrollX,y:window.scrollY}:{x:t.scrollLeft,y:t.scrollTop},l={x:o.x-s.x,y:o.y-s.y};l.x===0&&l.y===0||(n?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=l.x,this.lastMoveEventInfo.point.y+=l.y):this.history.length>0&&(this.history[0].x-=l.x,this.history[0].y-=l.y),this.scrollPositions.set(t,o),Et.update(this.updatePoint,!0))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),ua(this.updatePoint)}}function qd(e,t){return t?{point:t(e.point)}:e}function tw(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Yp({point:e},t){return{point:e,delta:tw(e,KE(t)),offset:tw(e,g9(t)),velocity:b9(t,.1)}}function g9(e){return e[0]}function KE(e){return e[e.length-1]}function b9(e,t){if(e.length<2)return{x:0,y:0};let s=e.length-1,n=null;const o=KE(e);for(;s>=0&&(n=e[s],!(o.timestamp-n.timestamp>An(t)));)s--;if(!n)return{x:0,y:0};n===e[0]&&e.length>2&&o.timestamp-n.timestamp>An(t)*2&&(n=e[1]);const l=Gn(o.timestamp-n.timestamp);if(l===0)return{x:0,y:0};const u={x:(o.x-n.x)/l,y:(o.y-n.y)/l};return u.x===1/0&&(u.x=0),u.y===1/0&&(u.y=0),u}function x9(e,{min:t,max:s},n){return t!==void 0&&e<t?e=n?Lt(t,e,n.min):Math.max(e,t):s!==void 0&&e>s&&(e=n?Lt(s,e,n.max):Math.min(e,s)),e}function sw(e,t,s){return{min:t!==void 0?e.min+t:void 0,max:s!==void 0?e.max+s-(e.max-e.min):void 0}}function v9(e,{top:t,left:s,bottom:n,right:o}){return{x:sw(e.x,s,o),y:sw(e.y,t,n)}}function nw(e,t){let s=t.min-e.min,n=t.max-e.max;return t.max-t.min<e.max-e.min&&([s,n]=[n,s]),{min:s,max:n}}function _9(e,t){return{x:nw(e.x,t.x),y:nw(e.y,t.y)}}function y9(e,t){let s=.5;const n=Js(e),o=Js(t);return o>n?s=Xc(t.min,t.max-n,e.min):n>o&&(s=Xc(e.min,e.max-o,t.min)),zi(0,1,s)}function S9(e,t){const s={};return t.min!==void 0&&(s.min=t.min-e.min),t.max!==void 0&&(s.max=t.max-e.min),s}const R0=.35;function w9(e=R0){return e===!1?e=0:e===!0&&(e=R0),{x:iw(e,"left","right"),y:iw(e,"top","bottom")}}function iw(e,t,s){return{min:rw(e,t),max:rw(e,s)}}function rw(e,t){return typeof e=="number"?e:e[t]||0}const k9=new WeakMap;class C9{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=gs(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:s=!1,distanceThreshold:n}={}){const{presenceContext:o}=this.visualElement;if(o&&o.isPresent===!1)return;const l=g=>{s&&this.snapToCursor(pu(g).point),this.stopAnimation()},u=(g,x)=>{const{drag:_,dragPropagation:S,onDragStart:w}=this.getProps();if(_&&!S&&(this.openDragLock&&this.openDragLock(),this.openDragLock=n7(_),!this.openDragLock))return;this.latestPointerEvent=g,this.latestPanInfo=x,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Ai(N=>{let j=this.getAxisMotionValue(N).get()||0;if(Di.test(j)){const{projection:E}=this.visualElement;if(E&&E.layout){const A=E.layout.layoutBox[N];A&&(j=Js(A)*(parseFloat(j)/100))}}this.originPoint[N]=j}),w&&Et.update(()=>w(g,x),!1,!0),w0(this.visualElement,"transform");const{animationState:C}=this.visualElement;C&&C.setActive("whileDrag",!0)},h=(g,x)=>{this.latestPointerEvent=g,this.latestPanInfo=x;const{dragPropagation:_,dragDirectionLock:S,onDirectionLock:w,onDrag:C}=this.getProps();if(!_&&!this.openDragLock)return;const{offset:N}=x;if(S&&this.currentDirection===null){this.currentDirection=E9(N),this.currentDirection!==null&&w&&w(this.currentDirection);return}this.updateAxis("x",x.point,N),this.updateAxis("y",x.point,N),this.visualElement.render(),C&&Et.update(()=>C(g,x),!1,!0)},m=(g,x)=>{this.latestPointerEvent=g,this.latestPanInfo=x,this.stop(g,x),this.latestPointerEvent=null,this.latestPanInfo=null},d=()=>{const{dragSnapToOrigin:g}=this.getProps();(g||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:p}=this.getProps();this.panSession=new WE(t,{onSessionStart:l,onStart:u,onMove:h,onSessionEnd:m,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:p,distanceThreshold:n,contextWindow:GE(this.visualElement),element:this.visualElement.current})}stop(t,s){const n=t||this.latestPointerEvent,o=s||this.latestPanInfo,l=this.isDragging;if(this.cancel(),!l||!o||!n)return;const{velocity:u}=o;this.startAnimation(u);const{onDragEnd:h}=this.getProps();h&&Et.postRender(()=>h(n,o))}cancel(){this.isDragging=!1;const{projection:t,animationState:s}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.endPanSession();const{dragPropagation:n}=this.getProps();!n&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),s&&s.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(t,s,n){const{drag:o}=this.getProps();if(!n||!Vd(t,o,this.currentDirection))return;const l=this.getAxisMotionValue(t);let u=this.originPoint[t]+n[t];this.constraints&&this.constraints[t]&&(u=x9(u,this.constraints[t],this.elastic[t])),l.set(u)}resolveConstraints(){const{dragConstraints:t,dragElastic:s}=this.getProps(),n=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):this.visualElement.projection?.layout,o=this.constraints;t&&Xo(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&n?this.constraints=v9(n.layoutBox,t):this.constraints=!1,this.elastic=w9(s),o!==this.constraints&&!Xo(t)&&n&&this.constraints&&!this.hasMutatedConstraints&&Ai(l=>{this.constraints!==!1&&this.getAxisMotionValue(l)&&(this.constraints[l]=S9(n.layoutBox[l],this.constraints[l]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:s}=this.getProps();if(!t||!Xo(t))return!1;const n=t.current,{projection:o}=this.visualElement;if(!o||!o.layout)return!1;const l=R7(n,o.root,this.visualElement.getTransformPagePoint());let u=_9(o.layout.layoutBox,l);if(s){const h=s(T7(u));this.hasMutatedConstraints=!!h,h&&(u=pE(h))}return u}startAnimation(t){const{drag:s,dragMomentum:n,dragElastic:o,dragTransition:l,dragSnapToOrigin:u,onDragTransitionEnd:h}=this.getProps(),m=this.constraints||{},d=Ai(p=>{if(!Vd(p,s,this.currentDirection))return;let g=m&&m[p]||{};(u===!0||u===p)&&(g={min:0,max:0});const x=o?200:1e6,_=o?40:1e7,S={type:"inertia",velocity:n?t[p]:0,bounceStiffness:x,bounceDamping:_,timeConstant:750,restDelta:1,restSpeed:10,...l,...g};return this.startAxisValueAnimation(p,S)});return Promise.all(d).then(h)}startAxisValueAnimation(t,s){const n=this.getAxisMotionValue(t);return w0(this.visualElement,t),n.start(nx(t,n,0,s,this.visualElement,!1))}stopAnimation(){Ai(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){const s=`_drag${t.toUpperCase()}`,n=this.visualElement.getProps(),o=n[s];return o||this.visualElement.getValue(t,(n.initial?n.initial[t]:void 0)||0)}snapToCursor(t){Ai(s=>{const{drag:n}=this.getProps();if(!Vd(s,n,this.currentDirection))return;const{projection:o}=this.visualElement,l=this.getAxisMotionValue(s);if(o&&o.layout){const{min:u,max:h}=o.layout.layoutBox[s],m=l.get()||0;l.set(t[s]-Lt(u,h,.5)+m)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:s}=this.getProps(),{projection:n}=this.visualElement;if(!Xo(s)||!n||!this.constraints)return;this.stopAnimation();const o={x:0,y:0};Ai(u=>{const h=this.getAxisMotionValue(u);if(h&&this.constraints!==!1){const m=h.get();o[u]=y9({min:m,max:m},this.constraints[u])}});const{transformTemplate:l}=this.visualElement.getProps();this.visualElement.current.style.transform=l?l({},""):"none",n.root&&n.root.updateScroll(),n.updateLayout(),this.constraints=!1,this.resolveConstraints(),Ai(u=>{if(!Vd(u,t,null))return;const h=this.getAxisMotionValue(u),{min:m,max:d}=this.constraints[u];h.set(Lt(m,d,o[u]))}),this.visualElement.render()}addListeners(){if(!this.visualElement.current)return;k9.set(this.visualElement,this);const t=this.visualElement.current,s=Fc(t,"pointerdown",d=>{const{drag:p,dragListener:g=!0}=this.getProps(),x=d.target,_=x!==t&&c7(x);p&&g&&!_&&this.start(d)});let n;const o=()=>{const{dragConstraints:d}=this.getProps();Xo(d)&&d.current&&(this.constraints=this.resolveRefConstraints(),n||(n=N9(t,d.current,()=>this.scalePositionWithinConstraints())))},{projection:l}=this.visualElement,u=l.addEventListener("measure",o);l&&!l.layout&&(l.root&&l.root.updateScroll(),l.updateLayout()),Et.read(o);const h=Jc(window,"resize",()=>this.scalePositionWithinConstraints()),m=l.addEventListener("didUpdate",(({delta:d,hasLayoutChanged:p})=>{this.isDragging&&p&&(Ai(g=>{const x=this.getAxisMotionValue(g);x&&(this.originPoint[g]+=d[g].translate,x.set(x.get()+d[g].translate))}),this.visualElement.render())}));return()=>{h(),s(),u(),m&&m(),n&&n()}}getProps(){const t=this.visualElement.getProps(),{drag:s=!1,dragDirectionLock:n=!1,dragPropagation:o=!1,dragConstraints:l=!1,dragElastic:u=R0,dragMomentum:h=!0}=t;return{...t,drag:s,dragDirectionLock:n,dragPropagation:o,dragConstraints:l,dragElastic:u,dragMomentum:h}}}function aw(e){let t=!0;return()=>{if(t){t=!1;return}e()}}function N9(e,t,s){const n=pS(e,aw(s)),o=pS(t,aw(s));return()=>{n(),o()}}function Vd(e,t,s){return(t===!0||t===e)&&(s===null||s===e)}function E9(e,t=10){let s=null;return Math.abs(e.y)>t?s="y":Math.abs(e.x)>t&&(s="x"),s}class j9 extends ma{constructor(t){super(t),this.removeGroupControls=Wn,this.removeListeners=Wn,this.controls=new C9(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Wn}update(){const{dragControls:t}=this.node.getProps(),{dragControls:s}=this.node.prevProps||{};t!==s&&(this.removeGroupControls(),t&&(this.removeGroupControls=t.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}}const Xp=e=>(t,s)=>{e&&Et.update(()=>e(t,s),!1,!0)};class T9 extends ma{constructor(){super(...arguments),this.removePointerDownListener=Wn}onPointerDown(t){this.session=new WE(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:GE(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:s,onPan:n,onPanEnd:o}=this.node.getProps();return{onSessionStart:Xp(t),onStart:Xp(s),onMove:Xp(n),onEnd:(l,u)=>{delete this.session,o&&Et.postRender(()=>o(l,u))}}}mount(){this.removePointerDownListener=Fc(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}let Zp=!1;class A9 extends y.Component{componentDidMount(){const{visualElement:t,layoutGroup:s,switchLayoutGroup:n,layoutId:o}=this.props,{projection:l}=t;l&&(s.group&&s.group.add(l),n&&n.register&&o&&n.register(l),Zp&&l.root.didUpdate(),l.addEventListener("animationComplete",()=>{this.safeToRemove()}),l.setOptions({...l.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),xh.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:s,visualElement:n,drag:o,isPresent:l}=this.props,{projection:u}=n;return u&&(u.isPresent=l,t.layoutDependency!==s&&u.setOptions({...u.options,layoutDependency:s}),Zp=!0,o||t.layoutDependency!==s||s===void 0||t.isPresent!==l?u.willUpdate():this.safeToRemove(),t.isPresent!==l&&(l?u.promote():u.relegate()||Et.postRender(()=>{const h=u.getStack();(!h||!h.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{visualElement:t,layoutAnchor:s}=this.props,{projection:n}=t;n&&(n.options.layoutAnchor=s,n.root.didUpdate(),ox.postRender(()=>{!n.currentAnimation&&n.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:s,switchLayoutGroup:n}=this.props,{projection:o}=t;Zp=!0,o&&(o.scheduleCheckAfterUnmount(),s&&s.group&&s.group.remove(o),n&&n.deregister&&n.deregister(o))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function YE(e){const[t,s]=BL(),n=y.useContext(uN);return a.jsx(A9,{...e,layoutGroup:n,switchLayoutGroup:y.useContext(qE),isPresent:t,safeToRemove:s})}const M9={pan:{Feature:T9},drag:{Feature:j9,ProjectionNode:zE,MeasureLayout:YE}};function ow(e,t,s){const{props:n}=e;e.animationState&&n.whileHover&&e.animationState.setActive("whileHover",s==="Start");const o="onHover"+s,l=n[o];l&&Et.postRender(()=>l(t,pu(t)))}class R9 extends ma{mount(){const{current:t}=this.node;t&&(this.unmount=r7(t,(s,n)=>(ow(this.node,n,"Start"),o=>ow(this.node,o,"End"))))}unmount(){}}class D9 extends ma{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=hu(Jc(this.node.current,"focus",()=>this.onFocus()),Jc(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function lw(e,t,s){const{props:n}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&n.whileTap&&e.animationState.setActive("whileTap",s==="Start");const o="onTap"+(s==="End"?"":s),l=n[o];l&&Et.postRender(()=>l(t,pu(t)))}class O9 extends ma{mount(){const{current:t}=this.node;if(!t)return;const{globalTapTarget:s,propagate:n}=this.node.props;this.unmount=d7(t,(o,l)=>(lw(this.node,l,"Start"),(u,{success:h})=>lw(this.node,u,h?"End":"Cancel")),{useGlobalTarget:s,stopPropagation:n?.tap===!1})}unmount(){}}const D0=new WeakMap,Qp=new WeakMap,L9=e=>{const t=D0.get(e.target);t&&t(e)},z9=e=>{e.forEach(L9)};function B9({root:e,...t}){const s=e||document;Qp.has(s)||Qp.set(s,{});const n=Qp.get(s),o=JSON.stringify(t);return n[o]||(n[o]=new IntersectionObserver(z9,{root:e,...t})),n[o]}function I9(e,t,s){const n=B9(t);return D0.set(e,s),n.observe(e),()=>{D0.delete(e),n.unobserve(e)}}const P9={some:0,all:1};class $9 extends ma{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.stopObserver?.();const{viewport:t={}}=this.node.getProps(),{root:s,margin:n,amount:o="some",once:l}=t,u={root:s?s.current:void 0,rootMargin:n,threshold:typeof o=="number"?o:P9[o]},h=m=>{const{isIntersecting:d}=m;if(this.isInView===d||(this.isInView=d,l&&!d&&this.hasEnteredView))return;d&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",d);const{onViewportEnter:p,onViewportLeave:g}=this.node.getProps(),x=d?p:g;x&&x(m)};this.stopObserver=I9(this.node.current,u,h)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:s}=this.node;["amount","margin","root"].some(H9(t,s))&&this.startObserver()}unmount(){this.stopObserver?.(),this.hasEnteredView=!1,this.isInView=!1}}function H9({viewport:e={}},{viewport:t={}}={}){return s=>e[s]!==t[s]}const U9={inView:{Feature:$9},tap:{Feature:O9},focus:{Feature:D9},hover:{Feature:R9}},F9={layout:{ProjectionNode:zE,MeasureLayout:YE}},q9={...f9,...U9,...M9,...F9},Jp=l9(q9,c9),Pe=({label:e,children:t,variant:s="primary",size:n="medium",icon:o,onClick:l,removable:u=!1,className:h,maxWidth:m,appearance:d,onRemove:p,isLoading:g=!1})=>{const x=V9(s),_=d??(s==="outline"?"outline":"solid"),S=e??t,w=!!l,C={primary:{solid:"border border-transparent bg-primary text-primary-foreground dark:border-zinc-700/80 dark:bg-zinc-900/80 dark:text-zinc-100",outline:"border-2 border-primary/60 text-foreground dark:border-zinc-700/80 dark:bg-zinc-900/80 dark:text-zinc-100",subtle:"border border-transparent bg-primary/15 text-foreground dark:border-zinc-700/70 dark:bg-zinc-900/70 dark:text-zinc-200"},secondary:{solid:"border border-transparent bg-secondary text-secondary-foreground dark:border-zinc-700/80 dark:bg-zinc-900/80 dark:text-zinc-200",outline:"border-2 border-border bg-card text-foreground dark:border-zinc-700/80 dark:bg-zinc-900/80 dark:text-zinc-200",subtle:"border border-border bg-muted text-foreground dark:border-zinc-700/70 dark:bg-zinc-900/70 dark:text-zinc-200"},success:{solid:"border border-transparent bg-emerald-600 text-white dark:border-emerald-400/30 dark:bg-emerald-500/15 dark:text-emerald-300",outline:"border-2 border-emerald-600 text-emerald-700 dark:border-emerald-400/40 dark:bg-emerald-500/10 dark:text-emerald-300",subtle:"border border-transparent bg-emerald-500/15 text-emerald-700 dark:border-emerald-400/25 dark:bg-emerald-500/15 dark:text-emerald-300"},warning:{solid:"border border-transparent bg-amber-500 text-white dark:border-amber-400/30 dark:bg-amber-500/15 dark:text-amber-300",outline:"border-2 border-amber-500 text-amber-700 dark:border-amber-400/40 dark:bg-amber-500/10 dark:text-amber-300",subtle:"border border-transparent bg-amber-500/15 text-amber-700 dark:border-amber-400/25 dark:bg-amber-500/15 dark:text-amber-300"},error:{solid:"border border-transparent bg-destructive text-destructive-foreground dark:border-red-400/30 dark:bg-red-500/15 dark:text-red-300",outline:"border-2 border-destructive text-destructive dark:border-red-400/40 dark:bg-red-500/10 dark:text-red-300",subtle:"border border-transparent bg-destructive/20 text-destructive dark:border-red-400/25 dark:bg-red-500/15 dark:text-red-300"}},N={small:"text-xs px-2 py-1",medium:"text-xs px-2.5 py-1",large:"text-sm px-3 py-1.5"},j=A=>{A.stopPropagation(),l?.()},E=A=>{A.stopPropagation(),p?.()};return a.jsxs(Jp.div,{initial:{opacity:0,scale:.95,y:8,filter:"blur(8px)"},animate:{opacity:1,scale:1,y:0,filter:"blur(0px)"},transition:{duration:.32,ease:"easeInOut",type:"spring"},whileHover:{scale:w?1.04:1,transition:{duration:.2,ease:"easeInOut",type:"spring"}},onClick:j,style:{maxWidth:m},className:ae("inline-flex max-w-full items-center gap-1.5 rounded-lg font-medium shadow-[0_0_16px_rgba(0,0,0,0.14)] backdrop-blur-sm",C[x][_],N[n],w&&"cursor-pointer",h),children:[g?a.jsx(Jp.div,{animate:{rotate:360},transition:{duration:1,ease:"linear",repeat:1/0},className:"flex-shrink-0",children:a.jsx(ht,{className:"size-3.5"})}):o&&a.jsx("span",{className:"flex-shrink-0",children:o}),a.jsx("span",{className:"min-w-0 truncate",children:S}),u&&a.jsx(Jp.button,{initial:{opacity:0,scale:.95,filter:"blur(8px)"},animate:{opacity:1,scale:1,filter:"blur(0px)"},whileHover:{scale:1.1,opacity:1,transition:{duration:.2,ease:"easeInOut",type:"spring"}},className:"flex items-center justify-center rounded-md bg-foreground/15 p-1 opacity-70 hover:opacity-100",onClick:E,type:"button",children:a.jsx(Ns,{className:"size-3.5"})})]})};function V9(e){return e==="danger"?"error":e==="default"||e==="outline"?"primary":e}const G9=YC("rounded-lg border p-4 text-sm",{variants:{variant:{default:"border-border bg-card text-card-foreground",muted:"border-border bg-muted text-muted-foreground",destructive:"border-destructive/40 bg-destructive/10 text-destructive dark:text-red-300"}},defaultVariants:{variant:"default"}});function Ve({className:e,variant:t,...s}){return a.jsx("div",{className:ae(G9({variant:t,className:e})),...s})}function Ih(e){return ae("group/header-action inline-flex h-7 w-7 items-center overflow-hidden rounded-md text-xs font-medium text-muted-foreground transition-[width,background-color,color] duration-200 hover:w-24 hover:bg-muted hover:text-foreground focus:w-24 focus:bg-muted focus:text-foreground focus-visible:w-24 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",e)}function Ph(e){return ae("flex size-7 shrink-0 items-center justify-center [&_svg]:size-4 [&_svg]:shrink-0",e)}function $h(e){return ae("max-w-0 overflow-hidden whitespace-nowrap text-left opacity-0 transition-[max-width,opacity] duration-200 group-hover/header-action:max-w-20 group-hover/header-action:opacity-100 group-focus/header-action:max-w-20 group-focus/header-action:opacity-100",e)}function gi({className:e,...t}){return a.jsx("div",{className:ae("rounded-lg border border-border bg-card text-card-foreground",e),...t})}function bi({className:e,...t}){return a.jsx("div",{className:ae("grid gap-1.5 p-4",e),...t})}function xi({className:e,...t}){return a.jsx("h3",{className:ae("text-sm font-semibold tracking-tight",e),...t})}function Ii({className:e,...t}){return a.jsx("p",{className:ae("text-sm text-muted-foreground",e),...t})}function vi({className:e,...t}){return a.jsx("div",{className:ae("p-4 pt-0",e),...t})}const cw=100;function W9(){const[e,t]=y.useState([]),[s,n]=y.useState(!1),o=y.useRef(new Set);y.useEffect(()=>{const u=new EventSource("/api/agent/tool-calls/stream");return u.addEventListener("open",()=>n(!0)),u.addEventListener("error",()=>n(!1)),u.addEventListener("tool-call",h=>{try{const m=JSON.parse(h.data);t(d=>{if(o.current.has(m.id))return d;o.current.add(m.id);const p=[...d,m];return p.length>cw&&p.splice(0,p.length-cw),p})}catch{}}),()=>{u.close()}},[]);const l=[...e].reverse();return a.jsxs(gi,{className:"min-w-0 rounded-none border-0 border-b border-border bg-transparent",children:[a.jsxs(bi,{className:"border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(Ga,{className:"size-4 text-muted-foreground"}),a.jsx(xi,{children:"Live MCP Tool Calls"}),a.jsx(Pe,{variant:"outline",size:"small",children:e.length})]}),a.jsx(Pe,{variant:"outline",size:"small",icon:a.jsx("span",{className:ae("inline-block size-1.5 rounded-full",s?"animate-pulse bg-emerald-500":"bg-muted-foreground/60")}),children:s?"live":"reconnecting…"})]}),a.jsx(Ii,{className:"text-xs",children:"Streamed from this NoMoreIDE MCP server. Newest at the top."})]}),a.jsx(vi,{className:"p-0",children:l.length?a.jsx("ul",{className:"max-h-96 divide-y divide-border overflow-auto",children:l.map(u=>a.jsxs("li",{className:"px-3 py-2",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsx("span",{className:"truncate font-mono text-xs font-semibold",children:u.tool}),a.jsxs("div",{className:"flex shrink-0 items-center gap-2 font-mono text-[10px] text-muted-foreground",children:[a.jsxs("span",{children:[u.durationMs," ms"]}),a.jsx(Pe,{variant:u.status==="ok"?"success":"error",appearance:"outline",size:"small",children:u.status})]})]}),u.args?a.jsx("div",{className:"mt-0.5 truncate font-mono text-[11px] text-muted-foreground",children:u.args}):null,u.error?a.jsx("div",{className:"mt-0.5 font-mono text-[11px] text-destructive",children:u.error}):null,a.jsx("div",{className:"mt-0.5 font-mono text-[10px] text-muted-foreground/80",children:new Date(u.startedAt).toLocaleTimeString()})]},u.id))}):a.jsx("p",{className:"px-3 py-4 text-xs text-muted-foreground",children:"No tool calls yet. Invoke a NoMoreIDE MCP tool from your agent and it will appear here."})})]})}function K9({agent:e}){return a.jsxs(a.Fragment,{children:[a.jsx(W9,{}),a.jsxs(gi,{className:"min-w-0 rounded-none border-0 bg-transparent",children:[a.jsxs(bi,{className:"border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(lf,{className:"size-4 text-muted-foreground"}),a.jsx(xi,{children:"Recent Projects"})]}),a.jsx(Pe,{variant:"outline",size:"small",children:e.projects.length})]}),a.jsx(Ii,{className:"text-xs",children:"Most recently active projects known to the agent."})]}),a.jsx(vi,{className:"p-0",children:e.projects.length?a.jsx("ul",{className:"divide-y divide-border",children:e.projects.map(t=>a.jsxs("li",{className:ae("flex items-start justify-between gap-3 px-3 py-2",t.current&&"bg-primary/5"),children:[a.jsxs("div",{className:"min-w-0 flex-1",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx("span",{className:"truncate font-mono text-xs font-semibold",children:t.path}),t.current?a.jsx(Pe,{variant:"outline",size:"small",children:"current"}):null]}),t.lastSessionFirstPrompt?a.jsx("p",{className:"mt-0.5 truncate text-[11px] text-muted-foreground",children:t.lastSessionFirstPrompt}):null]}),a.jsxs("div",{className:"shrink-0 text-right font-mono text-[10px] text-muted-foreground",children:[t.mcpServerCount?a.jsxs("div",{children:[t.mcpServerCount," mcp"]}):null,t.lastSessionModified?a.jsx("div",{children:Y9(t.lastSessionModified)}):null]})]},t.path))}):a.jsx("p",{className:"px-3 py-4 text-xs text-muted-foreground",children:"No known projects."})})]})]})}function Y9(e){const t=Date.parse(e);return Number.isNaN(t)?e:new Date(t).toLocaleString()}function gl({className:e}){return a.jsx("svg",{className:ae("size-3.5",e),viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":!0,children:a.jsx("path",{d:"m4.7144 15.9555 4.7174-2.6471.079-.2307-.079-.1275h-.2307l-.7893-.0486-2.6956-.0729-2.3375-.0971-2.2646-.1214-.5707-.1215-.5343-.7042.0546-.3522.4797-.3218.686.0608 1.5179.1032 2.2767.1578 1.6514.0972 2.4468.255h.3886l.0546-.1579-.1336-.0971-.1032-.0972L6.973 9.8356l-2.55-1.6879-1.3356-.9714-.7225-.4918-.3643-.4614-.1578-1.0078.6557-.7225.8803.0607.2246.0607.8925.686 1.9064 1.4754 2.4893 1.8336.3643.3035.1457-.1032.0182-.0728-.164-.2733-1.3539-2.4467-1.445-2.4893-.6435-1.032-.17-.6194c-.0607-.255-.1032-.4674-.1032-.7285L6.287.1335 6.6997 0l.9957.1336.419.3642.6192 1.4147 1.0018 2.2282 1.5543 3.0296.4553.8985.2429.8318.091.255h.1579v-.1457l.1275-1.706.2368-2.0947.2307-2.6957.0789-.7589.3764-.9107.7468-.4918.5828.2793.4797.686-.0668.4433-.2853 1.8517-.5586 2.9021-.3643 1.9429h.2125l.2429-.2429.9835-1.3053 1.6514-2.0643.7286-.8196.85-.9046.5464-.4311h1.0321l.759 1.1293-.34 1.1657-1.0625 1.3478-.8804 1.1414-1.2628 1.7-.7893 1.36.0729.1093.1882-.0183 2.8535-.607 1.5421-.2794 1.8396-.3157.8318.3886.091.3946-.3278.8075-1.967.4857-2.3072.4614-3.4364.8136-.0425.0304.0486.0607 1.5482.1457.6618.0364h1.621l3.0175.2247.7892.522.4736.6376-.079.4857-1.2142.6193-1.6393-.3886-3.825-.9107-1.3113-.3279h-.1822v.1093l1.0929 1.0686 2.0035 1.8092 2.5075 2.3314.1275.5768-.3218.4554-.34-.0486-2.2039-1.6575-.85-.7468-1.9246-1.621h-.1275v.17l.4432.6496 2.3436 3.5214.1214 1.0807-.17.3521-.6071.2125-.6679-.1214-1.3721-1.9246L14.38 17.959l-1.1414-1.9428-.1397.079-.674 7.2552-.3156.3703-.7286.2793-.6071-.4614-.3218-.7468.3218-1.4753.3886-1.9246.3157-1.53.2853-1.9004.17-.6314-.0121-.0425-.1397.0182-1.4328 1.9672-2.1796 2.9446-1.7243 1.8456-.4128.164-.7164-.3704.0667-.6618.4008-.5889 2.386-3.0357 1.4389-1.882.929-1.0868-.0062-.1579h-.0546l-6.3385 4.1164-1.1293.1457-.4857-.4554.0608-.7467.2307-.2429 1.9064-1.3114Z"})})}function gu({className:e}){return a.jsx("svg",{className:ae("size-3.5",e),viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":!0,children:a.jsx("path",{d:"M11.248 18.25q-.825 0-1.568-.314a4.3 4.3 0 0 1-1.32-.874 4 4 0 0 1-1.304.214 4 4 0 0 1-2.046-.544 4.27 4.27 0 0 1-1.518-1.485 4 4 0 0 1-.56-2.095q0-.48.131-1.04A4.4 4.4 0 0 1 2.04 10.71a4.07 4.07 0 0 1 .017-3.4 4.2 4.2 0 0 1 1.056-1.418 3.8 3.8 0 0 1 1.6-.842 3.9 3.9 0 0 1 .76-1.683q.593-.759 1.451-1.188a4.04 4.04 0 0 1 1.832-.429q.825 0 1.567.313.742.314 1.32.875a4 4 0 0 1 1.304-.215q1.106 0 2.046.545a4.14 4.14 0 0 1 1.501 1.485q.578.941.578 2.095 0 .48-.132 1.04.66.61 1.023 1.419.363.792.363 1.666 0 .892-.38 1.717a4.3 4.3 0 0 1-1.072 1.435 3.8 3.8 0 0 1-1.584.825 3.8 3.8 0 0 1-.775 1.683 4.06 4.06 0 0 1-1.436 1.188 4.04 4.04 0 0 1-1.832.429m-4.076-2.062q.825 0 1.435-.347l3.103-1.782a.36.36 0 0 0 .164-.313v-1.42L7.881 14.62a.67.67 0 0 1-.726 0l-3.118-1.798a.5.5 0 0 1-.017.115v.198q0 .841.396 1.551.413.693 1.139 1.089a3.2 3.2 0 0 0 1.617.412m.165-2.69a.4.4 0 0 0 .181.05q.083 0 .165-.05l1.238-.71-3.977-2.31a.7.7 0 0 1-.363-.643v-3.58q-.825.362-1.32 1.122a2.9 2.9 0 0 0-.495 1.65q0 .809.413 1.55.412.743 1.072 1.123zm3.91 3.663q.875 0 1.585-.396a2.96 2.96 0 0 0 1.534-2.64v-3.564a.32.32 0 0 0-.165-.297l-1.254-.726v4.604a.7.7 0 0 1-.363.643l-3.119 1.799a3 3 0 0 0 1.783.577m.627-6.039V8.878L10.01 7.822 8.129 8.878v2.244l1.881 1.056zM7.057 5.859a.7.7 0 0 1 .363-.644l3.119-1.798a3 3 0 0 0-1.782-.578q-.874 0-1.584.396A2.96 2.96 0 0 0 6.05 4.324a3.07 3.07 0 0 0-.396 1.551v3.547q0 .199.165.314l1.237.726zm8.383 7.887q.825-.364 1.303-1.123.495-.758.495-1.65a3.15 3.15 0 0 0-.412-1.55q-.413-.743-1.073-1.123l-3.086-1.782q-.099-.065-.181-.049a.3.3 0 0 0-.165.05l-1.238.692 3.993 2.327a.6.6 0 0 1 .264.264.64.64 0 0 1 .1.363zm-3.317-8.382a.63.63 0 0 1 .726 0l3.135 1.831v-.297q0-.792-.396-1.501a2.86 2.86 0 0 0-1.105-1.155q-.71-.43-1.65-.43-.825 0-1.436.347L8.294 5.941a.36.36 0 0 0-.165.314v1.418z"})})}function X9({className:e}){return a.jsx("svg",{className:ae("size-3.5",e),viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":!0,children:a.jsx("path",{d:"M11.04 19.32Q12 21.51 12 24q0-2.49.93-4.68.96-2.19 2.58-3.81t3.81-2.55Q21.51 12 24 12q-2.49 0-4.68-.93a12.3 12.3 0 0 1-3.81-2.58 12.3 12.3 0 0 1-2.58-3.81Q12 2.49 12 0q0 2.49-.96 4.68-.93 2.19-2.55 3.81a12.3 12.3 0 0 1-3.81 2.58Q2.49 12 0 12q2.49 0 4.68.96 2.19.93 3.81 2.55t2.55 3.81"})})}const Z9=800;function mf({activeHunkIndex:e=0,diff:t}){const s=J9(t),n=y.useRef(null),o=y.useRef([]),[l,u]=y.useState(!1),h=y.useMemo(()=>s.reduce((d,p)=>Math.max(d,p.content.length),0),[s]),m=h>Z9;if(y.useEffect(()=>{u(!1)},[t]),y.useEffect(()=>{if(m&&!l)return;const d=o.current[e],p=n.current;!d||!p||p.scrollTo({top:Math.max(d.offsetTop-8,0),behavior:"smooth"})},[e,t,m,l]),m&&!l){const d=s.filter(g=>g.kind==="add").length,p=s.filter(g=>g.kind==="delete").length;return a.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-card p-6",children:a.jsxs("div",{className:"max-w-sm space-y-3 text-center",children:[a.jsx("p",{className:"text-[13px] font-medium text-foreground",children:"Diff hidden for this data file"}),a.jsxs("p",{className:"text-[12px] text-muted-foreground",children:["Rows run up to ",h.toLocaleString()," characters, so this looks like a CSV, log, or other data dump rather than source code."]}),a.jsxs("p",{className:"font-mono text-[11px]",children:[a.jsxs("span",{className:"text-emerald-700",children:["+",d]})," ",a.jsxs("span",{className:"text-red-700",children:["-",p]})," lines changed"]}),a.jsx(Q,{onClick:()=>u(!0),size:"sm",type:"button",variant:"outline",children:"Show diff anyway"})]})})}return a.jsx("div",{className:"absolute inset-0 overflow-auto bg-card text-xs leading-6 text-foreground",ref:n,children:a.jsx("div",{className:"min-w-full font-mono",children:s.map((d,p)=>a.jsxs("div",{className:ae("grid grid-cols-[3rem_3rem_minmax(0,1fr)]",d.kind==="add"&&"bg-emerald-50 text-emerald-800 dark:bg-emerald-500/15 dark:text-emerald-300",d.kind==="delete"&&"bg-red-50 text-red-800 dark:bg-red-500/15 dark:text-red-300",uw(s,p)&&d.hunkIndex===e&&"outline outline-1 outline-offset-[-1px] outline-primary/35"),ref:d.hunkIndex!==null&&uw(s,p)?g=>{o.current[d.hunkIndex??0]=g}:void 0,children:[a.jsx(dw,{value:d.oldLine}),a.jsx(dw,{value:d.newLine}),a.jsx("span",{className:"min-w-0 whitespace-pre-wrap break-all px-2",children:d.content||" "})]},`${p}-${d.content}`))})})}function Q9(e){return e.split(`
|
|
18
|
-
`).reduce((t,s)=>(s.startsWith("@@")?t.hunks+=1:s.startsWith("+")&&!s.startsWith("+++")?t.additions+=1:s.startsWith("-")&&!s.startsWith("---")&&(t.deletions+=1),t),{additions:0,deletions:0,hunks:0})}function J9(e){const t=ez(e);return t.some(s=>s.kind==="hunk")?t.filter(s=>s.kind!=="meta"&&s.kind!=="hunk"):t}function ez(e){let t=null,s=null,n=null;return e.split(`
|
|
19
|
-
`).map(o=>{if(tz(o))return t=null,s=null,n=null,{content:o,hunkIndex:n,kind:"meta",oldLine:null,newLine:null};if(o.startsWith("@@")){const u=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/.exec(o);return u&&(t=Number(u[1]),s=Number(u[2])),n=(n??-1)+1,{content:o,hunkIndex:n,kind:"hunk",oldLine:null,newLine:null}}if(t===null||s===null)return{content:o,hunkIndex:null,kind:"meta",oldLine:null,newLine:null};if(o.startsWith("\\ No newline"))return{content:o,hunkIndex:n,kind:"meta",oldLine:null,newLine:null};if(o.startsWith("+")&&!o.startsWith("+++")){const u={content:o,hunkIndex:n,kind:"add",oldLine:null,newLine:s};return s+=1,u}if(o.startsWith("-")&&!o.startsWith("---")){const u={content:o,hunkIndex:n,kind:"delete",oldLine:t,newLine:null};return t+=1,u}const l={content:o,hunkIndex:n,kind:"context",oldLine:t,newLine:s};return t+=1,s+=1,l})}function uw(e,t){const s=e[t]?.hunkIndex;if(s===null)return!1;const n=e.findIndex(o=>o.hunkIndex===s&&(o.kind==="add"||o.kind==="delete"));return n!==-1?n===t:e.findIndex(o=>o.hunkIndex===s)===t}function tz(e){return e.startsWith("diff --git ")||e.startsWith("index ")||e.startsWith("--- ")||e.startsWith("+++ ")||e.startsWith("new file mode ")||e.startsWith("deleted file mode ")||e.startsWith("old mode ")||e.startsWith("new mode ")||e.startsWith("similarity index ")||e.startsWith("rename from ")||e.startsWith("rename to ")||e.startsWith("Binary files ")}function dw({value:e}){return a.jsx("span",{className:ae("select-none border-r border-border/70 px-2 text-right text-muted-foreground",e===null&&"text-transparent"),children:e??"-"})}function sz(){const[e,t]=y.useState([]),[s,n]=y.useState(""),[o,l]=y.useState(null),[u,h]=y.useState(!1),[m,d]=y.useState(null),p=y.useCallback(async()=>{try{const S=await F6();t(S),n(w=>w&&S.some(C=>C.sha===w)?w:S[0]?.sha??""),l(null)}catch(S){l(S instanceof Error?S.message:String(S))}},[]);y.useEffect(()=>{p()},[p]);async function g(){h(!0),d(null);try{const S=await q6("manual snapshot");await p(),n(S.sha),d(`Snapshot ${S.sha.slice(0,7)} created.`)}catch(S){l(S instanceof Error?S.message:String(S))}finally{h(!1)}}async function x(S){h(!0),d(null);try{const w=await W6(S);await p(),d(`Restored ${w.restoredFiles} file(s)`+(w.deletedPaths.length?`, removed ${w.deletedPaths.length} added since`:"")+`. Undo via pre-restore snapshot ${w.preRestore.sha.slice(0,7)}.`)}catch(w){l(w instanceof Error?w.message:String(w))}finally{h(!1)}}const _=e.find(S=>S.sha===s);return a.jsxs("div",{className:"grid h-full min-h-0 overflow-hidden bg-card/85 xl:grid-cols-[320px_minmax(0,1fr)]",children:[a.jsxs("aside",{className:"flex min-h-0 flex-col overflow-hidden border-r border-border",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-b border-border px-3 py-2",children:[a.jsxs("span",{className:"flex items-center gap-1.5 text-xs font-semibold",children:[a.jsx(cM,{className:"size-3.5"}),"Snapshots"]}),a.jsxs(Q,{disabled:u,onClick:()=>{g()},size:"sm",type:"button",children:[a.jsx(QA,{className:"size-3.5"}),"Snapshot now"]})]}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:o?a.jsx(Ve,{variant:"destructive",className:"m-3",children:o}):e.length===0?a.jsx(Ve,{variant:"muted",className:"m-3 border-dashed",children:"No snapshots yet. Take one before risky changes, or let agent sessions create them automatically."}):a.jsx("ul",{children:e.map(S=>a.jsx("li",{children:a.jsxs("button",{type:"button",onClick:()=>n(S.sha),className:ae("w-full border-b border-border/60 px-3 py-2 text-left transition-colors",S.sha===s?"bg-background":"hover:bg-muted/50"),children:[a.jsx("span",{className:"block truncate text-xs font-medium",children:S.label}),a.jsxs("span",{className:"mt-0.5 flex items-center gap-2 text-[10px] text-muted-foreground",children:[a.jsx("span",{className:"font-mono",children:S.sha.slice(0,7)}),a.jsx("span",{children:new Date(S.createdAt).toLocaleString()})]})]})},S.ref))})})]}),a.jsxs("section",{className:"flex min-h-0 min-w-0 flex-col",children:[m?a.jsx(Ve,{variant:"muted",className:"m-3 mb-0",children:m}):null,_?a.jsx(nz,{busy:u,onRestore:x,snapshot:_}):a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"muted",className:"border-dashed p-12 text-center",children:"Select a snapshot to compare it with the current working tree."})})]})]})}function nz({busy:e,onRestore:t,snapshot:s}){const[n,o]=y.useState([]),[l,u]=y.useState(""),[h,m]=y.useState(""),[d,p]=y.useState(null),[g,x]=y.useState(!1);return y.useEffect(()=>{let _=!0;return x(!1),p(null),V6(s.sha).then(S=>{_&&(o(S),u(w=>w&&S.some(C=>C.path===w)?w:S[0]?.path??""))}).catch(S=>{_&&p(S instanceof Error?S.message:String(S))}),()=>{_=!1}},[s.sha]),y.useEffect(()=>{if(!l){m("");return}let _=!0;return G6(s.sha,l).then(S=>{_&&m(S)}).catch(S=>{_&&p(S instanceof Error?S.message:String(S))}),()=>{_=!1}},[s.sha,l]),a.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-3 border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"min-w-0",children:[a.jsx("h2",{className:"truncate text-[13px] font-semibold tracking-tight",children:s.label}),a.jsx("p",{className:"text-[10px] text-muted-foreground",children:n.length?`${n.length} file(s) differ from the current working tree.`:"Identical to the current working tree."})]}),g?a.jsxs("span",{className:"flex shrink-0 items-center gap-1.5",children:[a.jsx(Q,{disabled:e,onClick:()=>{x(!1),t(s.sha)},size:"sm",type:"button",variant:"destructive",children:"Confirm restore"}),a.jsx(Q,{onClick:()=>x(!1),size:"sm",type:"button",variant:"outline",children:"Cancel"})]}):a.jsxs(Q,{disabled:e||n.length===0,onClick:()=>x(!0),size:"sm",title:"Reset the working tree to this snapshot (a pre-restore snapshot is taken first)",type:"button",variant:"outline",children:[a.jsx(uu,{className:"size-3.5"}),"Restore…"]})]}),a.jsx(XE,{diff:h,error:d,files:n,onSelectPath:u,selectedPath:l})]})}function XE({diff:e,error:t,files:s,onSelectPath:n,selectedPath:o}){return t?a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"destructive",children:t})}):a.jsxs("div",{className:"grid min-h-0 flex-1 xl:grid-cols-[260px_minmax(0,1fr)]",children:[a.jsx("ul",{className:"min-h-0 overflow-auto border-r border-border",children:s.map(l=>a.jsx("li",{children:a.jsxs("button",{type:"button",onClick:()=>n(l.path),className:ae("flex w-full items-center gap-2 px-3 py-1.5 text-left text-xs transition-colors",l.path===o?"bg-background":"hover:bg-muted/50"),children:[a.jsx("span",{className:ae("w-3 shrink-0 font-mono text-[10px]",l.status==="A"&&"text-emerald-600",l.status==="D"&&"text-red-600",l.status==="M"&&"text-amber-600"),children:l.status}),a.jsx("span",{className:"truncate",children:l.path})]})},l.path))}),a.jsx("div",{className:"relative min-h-0 min-w-0",children:o?a.jsx(mf,{diff:e||"No diff for this file."}):a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"muted",className:"border-dashed p-8 text-center",children:"Select a file to see how it differs from the snapshot."})})})]})}function iz(){const[e,t]=y.useState([]),[s,n]=y.useState(""),[o,l]=y.useState(null),[u,h]=y.useState(null),[m,d]=y.useState(!1),p=y.useCallback(async()=>{try{const x=await K6();t(x),n(_=>_&&x.some(S=>S.id===_)?_:x[0]?.id??""),l(null)}catch(x){l(x instanceof Error?x.message:String(x))}},[]);y.useEffect(()=>{p()},[p]);async function g(x){d(!0),h(null);try{const _=await Z6(x);await p(),h(`Restored ${_.restoredFiles} file(s)`+(_.deletedPaths.length?`, removed ${_.deletedPaths.length} created by the session`:"")+`. Undo via pre-restore snapshot ${_.preRestore.sha.slice(0,7)} in Git → Snapshots.`)}catch(_){l(_ instanceof Error?_.message:String(_))}finally{d(!1)}}return e.length===0?a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"muted",className:"border-dashed p-8 text-center",children:o??"No agent sessions recorded yet. Sessions appear here once an agent calls a nomoreide MCP tool; each one starts with a working-tree snapshot you can roll back to."})}):a.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[u?a.jsx(Ve,{variant:"muted",className:"m-3 mb-0",children:u}):null,a.jsxs("div",{className:"grid min-h-0 flex-1 xl:grid-cols-[280px_minmax(0,1fr)]",children:[a.jsx("aside",{className:"min-h-0 overflow-auto border-r border-border",children:a.jsx("ul",{children:e.map(x=>a.jsx("li",{children:a.jsxs("button",{type:"button",onClick:()=>n(x.id),className:ae("w-full border-b border-border/60 px-3 py-2 text-left transition-colors",x.id===s?"bg-background":"hover:bg-muted/50"),children:[a.jsx("span",{className:"block truncate text-xs font-medium",children:new Date(x.startedAt).toLocaleString()}),a.jsxs("span",{className:"mt-0.5 flex items-center gap-2 text-[10px] text-muted-foreground",children:[a.jsxs("span",{children:[x.toolCount," tool call(s)"]}),x.snapshotSha?a.jsx("span",{className:"font-mono",children:x.snapshotSha.slice(0,7)}):a.jsx("span",{children:"no snapshot"})]})]})},x.id))})}),a.jsx("section",{className:"flex min-h-0 min-w-0 flex-col",children:s?a.jsx(rz,{busy:m,id:s,onRestore:g}):null})]})]})}function rz({busy:e,id:t,onRestore:s}){const[n,o]=y.useState(null),[l,u]=y.useState([]),[h,m]=y.useState(""),[d,p]=y.useState(""),[g,x]=y.useState(null),[_,S]=y.useState(!1);return y.useEffect(()=>{let w=!0;return S(!1),x(null),Y6(t).then(C=>{w&&(o(C.session),u(C.files),m(N=>N&&C.files.some(j=>j.path===N)?N:C.files[0]?.path??""))}).catch(C=>{w&&x(C instanceof Error?C.message:String(C))}),()=>{w=!1}},[t]),y.useEffect(()=>{if(!h){p("");return}let w=!0;return X6(t,h).then(C=>{w&&p(C)}).catch(C=>{w&&x(C instanceof Error?C.message:String(C))}),()=>{w=!1}},[t,h]),a.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-3 border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"min-w-0",children:[a.jsx("h2",{className:"truncate text-[13px] font-semibold tracking-tight",children:l.length?`${l.length} file(s) changed since this session started`:"No working-tree changes since this session started"}),a.jsx("p",{className:"truncate text-[10px] text-muted-foreground",children:n?.repoPath??""})]}),n?.snapshotSha?_?a.jsxs("span",{className:"flex shrink-0 items-center gap-1.5",children:[a.jsx(Q,{disabled:e,onClick:()=>{S(!1),s(t)},size:"sm",type:"button",variant:"destructive",children:"Confirm restore"}),a.jsx(Q,{onClick:()=>S(!1),size:"sm",type:"button",variant:"outline",children:"Cancel"})]}):a.jsxs(Q,{disabled:e||l.length===0,onClick:()=>S(!0),size:"sm",title:"Reset the working tree to before this session (a pre-restore snapshot is taken first)",type:"button",variant:"outline",children:[a.jsx(uu,{className:"size-3.5"}),"Restore to before this session…"]}):null]}),a.jsx(XE,{diff:d,error:g,files:l,onSelectPath:m,selectedPath:h})]})}let hw=0;const fw=()=>(hw+=1,`t${Date.now()}-${hw}`);function az(){const[e,t]=y.useState([]),[s,n]=y.useState(!1),[o,l]=y.useState(null),[u,h]=y.useState(null),[m,d]=y.useState(null),[p,g]=y.useState([]),x=y.useRef(null),_=y.useRef(void 0),S=y.useRef(void 0);y.useEffect(()=>{qR().then(E=>{h(E.configured),d(E.provider)}).catch(()=>h(!1))},[]);const w=y.useCallback(async(E,A)=>{g(P=>P.filter(D=>D.requestId!==E));const O=S.current??_.current;if(O)try{await VR(O,E,A)}catch{}},[]),C=y.useCallback(()=>{x.current?.abort(),x.current=null,n(!1)},[]),N=y.useCallback(async(E,A)=>{const O=E.trim();if(!O||s)return;l(null);const P={id:fw(),createdAt:Date.now(),role:"user",text:O,label:A?.label,tools:[]},D=fw(),T={id:D,createdAt:Date.now(),role:"assistant",text:"",tools:[]};t(I=>[...I,P,T]);const z=I=>t($=>$.map(U=>U.id===D?I(U):U)),L=new AbortController;x.current=L,n(!0);try{await GR(O,A?.isolated?void 0:_.current,I=>{switch(I.type){case"session":S.current=I.sessionId,A?.isolated||(_.current=I.sessionId);break;case"text":z($=>({...$,text:$.text+I.text}));break;case"tool_use":z($=>({...$,tools:[...$.tools,{id:I.id,name:I.name,input:I.input,status:"running"}]}));break;case"tool_result":z($=>({...$,tools:$.tools.map(U=>U.id===I.id?{...U,preview:I.preview,isError:I.isError,status:"done"}:U)}));break;case"approval_request":g($=>[...$,{requestId:I.requestId,name:I.name,input:I.input}]);break;case"error":l(I.message);break;case"done":break}},L.signal,A?.autoApprove)}catch(I){L.signal.aborted||l(I instanceof Error?I.message:String(I))}finally{x.current=null,n(!1)}},[s]),j=y.useCallback(()=>{C(),_.current=void 0,S.current=void 0,t([]),g([]),l(null)},[C]);return{turns:e,streaming:s,error:o,configured:u,provider:m,approvals:p,send:N,stop:C,clear:j,respond:w}}const ZE=y.createContext(null);function oz({children:e}){const t=az(),{streaming:s}=t,[n,o]=y.useState(!1),[l,u]=y.useState(""),[h,m]=y.useState(null),[d,p]=y.useState(0),[g,x]=y.useState(0),[_,S]=y.useState(!1),w=y.useRef([]),C=y.useCallback(()=>p(z=>z+1),[]),N=y.useCallback(()=>x(z=>z+1),[]),j=y.useCallback((z,L)=>(N(),t.send(z,L)),[t,N]),E=y.useCallback(()=>m(null),[]),A=y.useCallback(()=>{o(!0),S(!0)},[]),O=y.useCallback(z=>{o(!0),u(L=>L.trim()?`${L.replace(/\s*$/,"")}
|
|
20
|
-
${z}`:z),C()},[C]);y.useEffect(()=>{if(s)return;const z=w.current.shift();z&&j(z.prompt,{label:z.label,autoApprove:z.autoApprove,isolated:z.isolated})},[s,j]);const P=y.useCallback(({prompt:z,source:L,mode:I="send",label:$,autoApprove:U,background:W,isolated:G})=>(W||o(!0),m(L??null),N(),I==="draft"?(u(z),C(),{queued:!1}):s?(w.current.push({prompt:z,label:$,autoApprove:U,isolated:G}),{queued:!0}):(j(z,{label:$,autoApprove:U,isolated:G}),{queued:!1})),[s,j,C,N]),D=y.useCallback(()=>{w.current=[],m(null),t.clear()},[t]),T={...t,send:j,clear:D,open:n,setOpen:o,draft:l,setDraft:u,insertPath:O,activeSource:h,clearSource:E,focusNonce:d,stickNonce:g,sendToAgent:P,onboarding:_,setOnboarding:S,startOnboard:A};return a.jsx(ZE.Provider,{value:T,children:e})}function At(){const e=y.useContext(ZE);if(!e)throw new Error("useAgentDock must be used within an AgentProvider");return e}function lz(e){const t=Math.max(0,Math.floor(e/6e4));if(t<60)return`${t}m`;const s=Math.floor(t/60),n=t%60;return`${s}h ${String(n).padStart(2,"0")}m`}function cz(e,t=Date.now()){const s=e[0],n=s?t-s.createdAt:0,o=e.length,l=n>=60*6e4||o>=30,u=n>=30*6e4||o>=16,h=l?"heavy":u?"long":"fresh";return{durationLabel:s?lz(n):"0m",recommendation:h==="fresh"?null:"Consider starting a new chat for a cleaner context.",status:h,statusLabel:h==="heavy"?"Heavy context":h==="long"?"Long":"Fresh",turnCount:o}}function uz({now:e,onNewChat:t,turns:s}){const[n,o]=y.useState(()=>Date.now());y.useEffect(()=>{const h=window.setInterval(()=>o(Date.now()),3e4);return()=>window.clearInterval(h)},[]);const l=cz(s,e??n),u=s.length>0;return a.jsxs("div",{className:"flex flex-wrap items-center gap-2 border-b border-border bg-background/55 px-3 py-2 text-xs",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[a.jsx(TM,{className:ae("size-4 shrink-0",l.status==="heavy"?"text-amber-500":l.status==="long"?"text-yellow-500":"text-muted-foreground")}),a.jsx("span",{className:"font-medium",children:"Conversation"}),a.jsx("span",{className:"font-mono text-muted-foreground",children:u?l.durationLabel:"not started"}),u?a.jsxs("span",{className:"font-mono text-muted-foreground",children:[l.turnCount," turns"]}):null]}),a.jsx(Pe,{appearance:l.status==="fresh"?"subtle":"solid",size:"small",variant:l.status==="heavy"?"warning":l.status==="long"?"secondary":"outline",children:l.statusLabel}),l.recommendation?a.jsx("span",{className:"min-w-0 flex-1 text-muted-foreground",children:l.recommendation}):a.jsx("span",{className:"min-w-0 flex-1 text-muted-foreground",children:"Short chats usually give the agent cleaner context."}),a.jsxs(Q,{className:"h-7 gap-1.5 px-2 text-xs",disabled:!u,onClick:t,size:"sm",type:"button",variant:"outline",children:[a.jsx(uu,{className:"size-3.5"}),"New chat"]})]})}function dz({agent:e,agentId:t}){const s=e.project.instructionFileName??(e.project.claudeMdPath?"CLAUDE.md":void 0),n=e.project.instructionFilePreview??e.project.claudeMdPreview,o=e.project.memoryFiles.length+(s?1:0);return a.jsxs(gi,{className:"min-w-0 rounded-none border-0 bg-transparent",children:[a.jsxs(bi,{className:"border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(fC,{className:"size-4 text-muted-foreground"}),a.jsx(xi,{children:"Project Memory"})]}),a.jsx(Pe,{variant:"outline",size:"small",children:o})]}),a.jsx(Ii,{className:"truncate text-xs",children:e.project.memoryDir??(t==="codex"?"No Codex memory directory found for this project.":"No memory directory found for this project.")})]}),a.jsxs(vi,{className:"space-y-2 p-3",children:[s?a.jsx(mw,{title:s,preview:n,defaultOpen:!0}):null,e.project.memoryFiles.length?e.project.memoryFiles.map(l=>a.jsx(mw,{title:l.name,subtitle:`${l.size} B`,preview:l.preview,defaultOpen:l.name==="MEMORY.md"},l.path)):s?null:a.jsx("p",{className:"text-xs text-muted-foreground",children:"No memory files persisted yet for this project."})]})]})}function mw({title:e,subtitle:t,preview:s,defaultOpen:n=!1}){const[o,l]=y.useState(n);return a.jsxs("div",{className:"rounded-md border border-border bg-background/40",children:[a.jsxs("button",{type:"button",onClick:()=>l(!o),className:"flex w-full items-center gap-2 px-2.5 py-1.5 text-left text-xs font-semibold",children:[a.jsx(pi,{className:ae("size-3.5 text-muted-foreground transition-transform",o&&"rotate-90")}),a.jsx("span",{children:e}),t?a.jsx("span",{className:"font-mono text-[10px] font-normal text-muted-foreground",children:t}):null]}),o&&s?a.jsx("pre",{className:"max-h-64 overflow-auto whitespace-pre-wrap border-t border-border px-2.5 py-2 font-mono text-[11px] leading-relaxed text-muted-foreground",children:s}):null]})}const hz=[{animationDelay:"-1.2s",transform:"rotate(.0001deg) translate(146%)"},{animationDelay:"-1.1s",transform:"rotate(30deg) translate(146%)"},{animationDelay:"-1.0s",transform:"rotate(60deg) translate(146%)"},{animationDelay:"-0.9s",transform:"rotate(90deg) translate(146%)"},{animationDelay:"-0.8s",transform:"rotate(120deg) translate(146%)"},{animationDelay:"-0.7s",transform:"rotate(150deg) translate(146%)"},{animationDelay:"-0.6s",transform:"rotate(180deg) translate(146%)"},{animationDelay:"-0.5s",transform:"rotate(210deg) translate(146%)"},{animationDelay:"-0.4s",transform:"rotate(240deg) translate(146%)"},{animationDelay:"-0.3s",transform:"rotate(270deg) translate(146%)"},{animationDelay:"-0.2s",transform:"rotate(300deg) translate(146%)"},{animationDelay:"-0.1s",transform:"rotate(330deg) translate(146%)"}],fz=({size:e=20,color:t="#8f8f8f"})=>a.jsx("div",{style:{width:e,height:e},children:a.jsx("div",{className:"relative left-1/2 top-1/2",style:{width:e,height:e},children:hz.map(s=>a.jsx("div",{className:"absolute -left-[10%] -top-[3.9%] h-[8%] w-[24%] animate-fade-spin rounded-[5px]",style:{backgroundColor:t,...s}},s.transform))})}),mz=[{tiny:"px-1.5 h-6 text-sm",small:"px-1.5 h-8 text-sm",medium:"px-2.5 h-10 text-sm",large:"px-3.5 h-12 text-base"},{tiny:"w-6 h-6 text-sm",small:"w-8 h-8 text-sm",medium:"w-10 h-10 text-sm",large:"w-12 h-12 text-base"}],pz={primary:"bg-gray-1000 hover:bg-gray-1000-h text-background-100 fill-background-100",secondary:"bg-background-100 hover:bg-gray-alpha-200 text-gray-1000 fill-gray-1000 border border-gray-alpha-400",tertiary:"bg-none hover:bg-gray-alpha-200 text-gray-1000 fill-gray-1000",error:"bg-red-800 hover:bg-red-900 text-white fill-white",warning:"bg-amber-800 hover:bg-amber-850 text-black fill-black"},gz={square:{tiny:"rounded",small:"rounded-md",medium:"rounded-md",large:"rounded-lg"},circle:{tiny:"rounded-[100%]",small:"rounded-[100%]",medium:"rounded-[100%]",large:"rounded-[100%]"},rounded:{tiny:"rounded-[100px]",small:"rounded-[100px]",medium:"rounded-[100px]",large:"rounded-[100px]"}},Gd=({size:e="medium",type:t="primary",variant:s="styled",shape:n="square",svgOnly:o=!1,children:l,prefix:u,suffix:h,shadow:m=!1,loading:d=!1,disabled:p=!1,fullWidth:g=!1,className:x,..._})=>a.jsxs("button",{disabled:p,tabIndex:0,className:Yc("flex items-center justify-center gap-0.5 duration-150",mz[+o][e],p||d?"cursor-not-allowed border border-gray-400 bg-gray-100 text-gray-700":pz[t],gz[n][e],m&&"shadow-border-small border-none",g&&"w-full",s==="unstyled"?"h-fit bg-transparent px-0 text-gray-1000 outline-none hover:bg-transparent":"focus:shadow-focus-ring focus:outline-0",x),type:"button",..._,children:[d?a.jsx(fz,{size:e==="large"?24:16}):u,a.jsx("span",{className:Yc("relative overflow-hidden overflow-ellipsis whitespace-nowrap font-sans",e!=="tiny"&&s!=="unstyled"&&"px-1.5"),children:l}),!d&&h]}),bz=({className:e})=>a.jsx("svg",{height:"16",strokeLinejoin:"round",viewBox:"0 0 16 16",width:"16",className:e,children:a.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.4697 13.5303L13 14.0607L14.0607 13L13.5303 12.4697L9.06065 7.99999L13.5303 3.53032L14.0607 2.99999L13 1.93933L12.4697 2.46966L7.99999 6.93933L3.53032 2.46966L2.99999 1.93933L1.93933 2.99999L2.46966 3.53032L6.93933 7.99999L2.46966 12.4697L1.93933 13L2.99999 14.0607L3.53032 13.5303L7.99999 9.06065L12.4697 13.5303Z"})}),xz=()=>a.jsx("svg",{height:"16",strokeLinejoin:"round",viewBox:"0 0 16 16",width:"16",className:"fill-gray-1000",children:a.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.5 8C13.5 4.96643 11.0257 2.5 7.96452 2.5C5.42843 2.5 3.29365 4.19393 2.63724 6.5H5.25H6V8H5.25H0.75C0.335787 8 0 7.66421 0 7.25V2.75V2H1.5V2.75V5.23347C2.57851 2.74164 5.06835 1 7.96452 1C11.8461 1 15 4.13001 15 8C15 11.87 11.8461 15 7.96452 15C5.62368 15 3.54872 13.8617 2.27046 12.1122L1.828 11.5066L3.03915 10.6217L3.48161 11.2273C4.48831 12.6051 6.12055 13.5 7.96452 13.5C11.0257 13.5 13.5 11.0336 13.5 8Z"})});let eg=null,vz=0;const ls={toasts:[],listeners:new Set,add(e,t,s,n,o,l){const u=vz++,h={id:u,text:e,preserve:s,action:n,onAction:o,onUndoAction:l,type:t};if(!h.preserve){h.remaining=3e3,h.start=Date.now();const m=()=>{this.toasts=this.toasts.filter(d=>d.id!==u),this.notify()};h.timeout=setTimeout(m,h.remaining),h.pause=()=>{h.timeout&&(clearTimeout(h.timeout),h.timeout=void 0,h.remaining-=Date.now()-h.start)},h.resume=()=>{h.timeout||(h.start=Date.now(),h.timeout=setTimeout(m,h.remaining))}}this.toasts.push(h),this.notify()},remove(e){ls.toasts=ls.toasts.filter(t=>t.id!==e),ls.notify()},subscribe(e){return ls.listeners.add(e),()=>{ls.listeners.delete(e)}},notify(){ls.listeners.forEach(e=>{e()})}},_z=()=>{const[e,t]=y.useState([]),[s,n]=y.useState([]),[o,l]=y.useState(!1),u=S=>w=>{w&&S.measuredHeight==null&&(S.measuredHeight=w.getBoundingClientRect().height,ls.notify())};y.useEffect(()=>(t([...ls.toasts]),ls.subscribe(()=>{t([...ls.toasts])})),[]),y.useEffect(()=>{const S=e.filter(w=>!s.includes(w.id)).map(w=>w.id);S.length>0&&requestAnimationFrame(()=>{n(w=>[...w,...S])})},[s,e]);const m=Math.max(0,e.length-3),d=(S,w)=>{if(S===w-1)return"none";const C=w-1-S;let N=e[w-1]?.measuredHeight||63;for(let A=w-1;A>S;A--)o?N+=(e[A-1]?.measuredHeight||63)+10:N+=20;const j=-C,E=o?1:1-.05*C;return`translate3d(0, calc(100% - ${N}px), ${j}px) scale(${E})`},p=()=>{l(!0),ls.toasts.forEach(S=>{S.pause?.()})},g=()=>{l(!1),ls.toasts.forEach(S=>{S.resume?.()})},_=e.slice(m).reduce((S,w)=>S+(w.measuredHeight??63),0);return a.jsx("div",{className:"pointer-events-none fixed bottom-4 right-4 z-[9999] w-[min(420px,calc(100vw-2rem))]",style:{height:_},children:a.jsx("div",{className:"pointer-events-auto relative w-full",style:{height:_},onMouseEnter:p,onMouseLeave:g,children:e.map((S,w)=>{const C=w>=m;return a.jsx("div",{ref:u(S),className:Yc("absolute bottom-0 right-0 h-fit rounded-xl p-4 leading-[21px] shadow-menu",{message:"bg-geist-background text-gray-1000",success:"bg-blue-700 text-contrast-fg",warning:"bg-amber-800 text-gray-1000 dark:text-gray-100",error:"bg-red-800 text-contrast-fg"}[S.type],C?"opacity-100":"opacity-0",w<m&&"pointer-events-none"),style:{width:"100%",transition:"all .35s cubic-bezier(.25,.75,.6,.98)",transform:s.includes(S.id)?d(w,e.length):"translate3d(0, 100%, 150px) scale(1)"},children:a.jsxs("div",{className:"flex flex-col items-center justify-between text-[.875rem]",children:[a.jsxs("div",{className:"flex h-full w-full items-center justify-between gap-4",children:[a.jsx("span",{children:S.text}),!S.action&&a.jsxs("div",{className:"flex gap-1",children:[S.onUndoAction&&a.jsx(Gd,{type:"tertiary",svgOnly:!0,size:"small",onClick:()=>{S.onUndoAction?.(),ls.remove(S.id)},children:a.jsx(xz,{})}),a.jsx(Gd,{type:"tertiary",svgOnly:!0,size:"small",onClick:()=>ls.remove(S.id),children:a.jsx(bz,{className:{message:"fill-gray-1000",success:"fill-contrast-fg",warning:"fill-gray-1000 dark:fill-gray-100",error:"fill-contrast-fg"}[S.type]})})]})]}),S.action&&a.jsxs("div",{className:"flex w-full items-center justify-end gap-2",children:[a.jsx(Gd,{type:"tertiary",size:"small",onClick:()=>ls.remove(S.id),children:"Dismiss"}),a.jsx(Gd,{type:"primary",size:"small",onClick:()=>{S.onAction?.(),ls.remove(S.id)},children:S.action})]})]})},S.id)})})})},Wd=()=>{if(eg)return;const e=document.createElement("div");e.className="fixed bottom-4 right-4 z-[9999]",document.body.appendChild(e),eg=uC.createRoot(e),eg.render(a.jsx(_z,{}))},Es=()=>({message:y.useCallback(({text:e,preserve:t,action:s,onAction:n,onUndoAction:o})=>{Wd(),ls.add(e,"message",t,s,n,o)},[]),success:y.useCallback(e=>{Wd(),ls.add(e,"success")},[]),warning:y.useCallback(e=>{Wd(),ls.add(e,"warning")},[]),error:y.useCallback(e=>{Wd(),ls.add(e,"error")},[])});function yz({usage:e}){const t=e.inputTokens+e.cacheCreationInputTokens+e.cacheReadInputTokens,s=t>0?e.cacheReadInputTokens/t*100:0;return a.jsxs("div",{className:"rounded-md border border-border",children:[a.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2 border-b border-border px-3 py-1.5",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(gl,{className:"size-3.5 text-amber-700"}),a.jsx("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Claude Code · last session"}),e.sessionId?a.jsx("span",{className:"font-mono text-[10px] text-muted-foreground",children:e.sessionId.slice(0,8)}):null]}),a.jsxs("span",{className:"font-mono text-sm font-semibold text-emerald-700",children:["$",e.costUSD.toFixed(4)]})]}),a.jsxs("div",{className:"grid grid-cols-2 gap-x-3 gap-y-1.5 px-3 py-2 text-[11px] sm:grid-cols-4",children:[a.jsx(Vs,{label:"Input",value:qn(e.inputTokens)}),a.jsx(Vs,{label:"Output",value:qn(e.outputTokens)}),a.jsx(Vs,{label:"Cache read",value:qn(e.cacheReadInputTokens)}),a.jsx(Vs,{label:"Cache create",value:qn(e.cacheCreationInputTokens)}),a.jsx(Vs,{label:"Lines +",value:String(e.linesAdded)}),a.jsx(Vs,{label:"Lines −",value:String(e.linesRemoved)}),a.jsx(Vs,{label:"Wall",value:gw(e.durationMs)}),a.jsx(Vs,{label:"API",value:gw(e.apiDurationMs)})]}),a.jsxs("div",{className:"border-t border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center justify-between text-[11px] text-muted-foreground",children:[a.jsx("span",{children:"Cache read share of input"}),a.jsxs("span",{className:"font-mono",children:[s.toFixed(1),"%"]})]}),a.jsx("div",{className:"mt-1 h-1.5 overflow-hidden rounded-full bg-muted",children:a.jsx("div",{className:"h-full bg-emerald-500",style:{width:`${Math.min(100,s).toFixed(2)}%`}})})]}),e.fiveHour||e.weekly?a.jsxs("div",{className:"space-y-2 border-t border-border px-3 py-2",children:[a.jsx("div",{className:"text-[10px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Rate limits"}),e.fiveHour?a.jsx(Hh,{label:"5h block",window:e.fiveHour}):null,e.weekly?a.jsx(Hh,{label:"This week",window:e.weekly}):null]}):null,e.models.length?a.jsxs("div",{className:"space-y-1 border-t border-border px-3 py-2",children:[a.jsx("div",{className:"text-[10px] font-semibold uppercase tracking-wide text-muted-foreground",children:"By model"}),e.models.map(n=>a.jsxs("div",{className:"flex items-center justify-between gap-2 font-mono text-[11px]",children:[a.jsx("span",{className:"truncate",children:n.model}),a.jsxs("span",{className:"shrink-0 text-muted-foreground",children:[qn(n.inputTokens+n.outputTokens)," tok ·"," ",a.jsxs("span",{className:"text-emerald-700",children:["$",n.costUSD.toFixed(4)]})]})]},n.model))]}):null]})}function Sz({usage:e}){const t=e.inputTokens>0?e.cachedInputTokens/e.inputTokens*100:0,s=e.contextWindow&&e.contextWindow>0?e.lastTotalTokens/e.contextWindow*100:0;return a.jsxs("div",{className:"rounded-md border border-border",children:[a.jsxs("div",{className:"flex items-center justify-between border-b border-border px-3 py-1.5",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(gu,{className:"size-3.5 text-foreground"}),a.jsx("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Codex · last session"})]}),e.timestamp?a.jsx("span",{className:"font-mono text-[10px] text-muted-foreground",children:new Date(e.timestamp).toLocaleString()}):null]}),a.jsxs("div",{className:"grid grid-cols-2 gap-x-3 gap-y-1.5 px-3 py-2 text-[11px] sm:grid-cols-4",children:[a.jsx(Vs,{label:"Input",value:qn(e.inputTokens)}),a.jsx(Vs,{label:"Output",value:qn(e.outputTokens)}),a.jsx(Vs,{label:"Cache read",value:qn(e.cachedInputTokens)}),a.jsx(Vs,{label:"Reasoning",value:qn(e.reasoningOutputTokens)}),a.jsx(Vs,{label:"Total",value:qn(e.totalTokens)}),a.jsx(Vs,{label:"Last turn",value:qn(e.lastTotalTokens)}),a.jsx(Vs,{label:"Context",value:e.contextWindow?qn(e.contextWindow):"n/a"}),a.jsx(Vs,{label:"Cost",value:"n/a"})]}),a.jsxs("div",{className:"space-y-2 border-t border-border px-3 py-2",children:[a.jsx(pw,{label:"Cache read share of input",value:t,tone:"bg-emerald-500"}),e.contextWindow?a.jsx(pw,{label:"Last turn context share",value:s,tone:"bg-sky-500"}):null]}),e.primary||e.secondary?a.jsxs("div",{className:"space-y-2 border-t border-border px-3 py-2",children:[a.jsx("div",{className:"text-[10px] font-semibold uppercase tracking-wide text-muted-foreground",children:"Rate limits"}),e.primary?a.jsx(Hh,{label:"5h window",window:e.primary}):null,e.secondary?a.jsx(Hh,{label:"Weekly window",window:e.secondary}):null]}):null]})}function pw({label:e,value:t,tone:s}){const n=Math.min(100,Math.max(0,t));return a.jsxs("div",{children:[a.jsxs("div",{className:"flex items-center justify-between text-[11px] text-muted-foreground",children:[a.jsx("span",{children:e}),a.jsxs("span",{className:"font-mono",children:[n.toFixed(1),"%"]})]}),a.jsx("div",{className:"mt-1 h-1.5 overflow-hidden rounded-full bg-muted",children:a.jsx("div",{className:ae("h-full",s),style:{width:`${n.toFixed(2)}%`}})})]})}function Hh({label:e,window:t}){const s=Math.min(100,Math.max(0,t.usedPercent)),n=t.resetsAtUnix?new Date(t.resetsAtUnix*1e3).toLocaleString():null,o=s>=90?"bg-red-500":s>=70?"bg-amber-500":"bg-emerald-500";return a.jsxs("div",{children:[a.jsxs("div",{className:"flex items-center justify-between text-[11px]",children:[a.jsx("span",{className:"text-muted-foreground",children:e}),a.jsxs("span",{className:"font-mono",children:[s.toFixed(1),"%"]})]}),a.jsx("div",{className:"mt-1 h-1.5 overflow-hidden rounded-full bg-muted",children:a.jsx("div",{className:ae("h-full",o),style:{width:`${s.toFixed(2)}%`}})}),n?a.jsxs("div",{className:"mt-0.5 font-mono text-[10px] text-muted-foreground",children:["resets ",n]}):null]})}function Vs({label:e,value:t}){return a.jsxs("div",{children:[a.jsx("div",{className:"text-[10px] uppercase tracking-wide text-muted-foreground",children:e}),a.jsx("div",{className:"font-mono text-xs font-semibold",children:t})]})}function qn(e){return e>=1e6?`${(e/1e6).toFixed(2)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function gw(e){if(!e)return"0s";if(e<1e3)return`${e}ms`;const t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;const s=Math.floor(t/60),n=Math.round(t-s*60);return`${s}m ${n}s`}function wz(e=1e4){const[t,s]=y.useState(null),[n,o]=y.useState(null);return y.useEffect(()=>{let l=!0;const u=()=>{HR().then(m=>{l&&(s(m),o(null))}).catch(m=>{l&&o(m instanceof Error?m.message:String(m))})};u();const h=window.setInterval(u,e);return()=>{l=!1,window.clearInterval(h)}},[e]),{usage:t,error:n}}const kz={"claude-code":{label:"Claude Code",icon:a.jsx(gl,{})},codex:{label:"Codex",icon:a.jsx(gu,{})}};function Cz({agent:e,agentId:t,isDetected:s}){const{usage:n,error:o}=wz(),l=kz[t],u=t==="codex";return a.jsxs(gi,{className:"min-w-0 rounded-none border-0 bg-transparent",children:[a.jsxs(bi,{className:"border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[a.jsx(wC,{className:"size-4 text-muted-foreground"}),a.jsx(xi,{children:u?"Token Usage & Rate Limits":"Token & Cost Usage"}),a.jsx(Pe,{variant:"outline",size:"small",icon:l.icon,children:l.label}),s?a.jsx(Pe,{variant:"outline",size:"small",children:"active session"}):a.jsx("span",{className:"text-[11px] text-muted-foreground",children:"Not the active agent in this session"}),u?null:a.jsx(Nz,{className:"ml-auto"})]}),a.jsxs(Ii,{className:"truncate text-xs",children:[u?a.jsxs(a.Fragment,{children:["Session metrics from ",a.jsx("code",{className:"font-mono",children:"~/.codex/sessions"})]}):a.jsxs(a.Fragment,{children:["Last-session metrics from ",a.jsx("code",{className:"font-mono",children:"~/.claude.json"})]})," · ",a.jsx("span",{className:"font-mono",children:e.project.cwd})]})]}),a.jsxs(vi,{className:"p-3",children:[o?a.jsx("p",{className:"text-xs text-destructive",children:o}):null,u?n?.codex?a.jsx(Sz,{usage:n.codex}):o?null:a.jsx(bw,{agent:"Codex CLI"}):n?.claude?a.jsx(yz,{usage:n.claude}):o?null:a.jsx(bw,{agent:"Claude Code"})]})]})}function Nz({className:e}){const[t,s]=y.useState(!0),[n,o]=y.useState(!0),[l,u]=y.useState(!1),h=Es();y.useEffect(()=>{let d=!0;return UR().then(p=>d&&s(p.coAuthorWithClaude)).catch(()=>{}).finally(()=>d&&o(!1)),()=>{d=!1}},[]);const m=async()=>{const d=!t;u(!0),s(d);try{const p=await FR({coAuthorWithClaude:d});s(p.coAuthorWithClaude),h.success(p.coAuthorWithClaude?"Claude co-author trailer enabled for commits":"Claude co-author trailer disabled for commits")}catch(p){s(!d),h.error(p instanceof Error?p.message:"Failed to update setting")}finally{u(!1)}};return a.jsxs(Q,{type:"button",variant:t?"default":"outline",size:"sm",onClick:m,disabled:n||l,"aria-pressed":t,title:t?"Claude will be added as commit co-author. Click to disable.":"Co-author trailer disabled. Click to enable.",className:ae("gap-1.5",e),children:[a.jsx(gl,{className:"size-3.5"}),"Co-author"]})}function bw({agent:e}){return a.jsxs("p",{className:"text-xs text-muted-foreground",children:["No usage data yet. Run a session with ",e," in this project."]})}const xw=["I want to add a new service to NoMoreIDE. Walk me through it one step at a time —","ask a single question per message and give me options to choose from where it helps.","","Whenever you offer me a set of choices, end that message with a fenced block","labelled `options`, one choice per line, so I can click them. For example:","```options","Local","Docker Compose","SSH (remote)","```","","When the answer is free text (not a pick-list), always show a concrete example","in the question so I know the format — e.g. ask for the SSH host as","'What SSH host alias should I use? (for example: `devbox`)', the command as","'(for example: `npm run dev`)', the directory as '(for example: `/srv/app`)',","and the name as '(for example: `backend`)'. Never ask for a value without an example.","","1. First ask whether it's local, a Docker Compose service, or remote over SSH.","2. For local or Docker: ask which folder it lives in — and remind me I can click"," the paperclip (attach) button at the bottom-left of this chat to browse and"," insert the folder path. Then look inside it (package.json scripts,"," docker-compose.yml, go.mod, etc.) and propose the start command and port —"," confirm with me, don't assume."," For SSH: ask for the host alias, the remote command, and the remote directory.","3. Confirm a short name for it.","","Once I've confirmed everything, register it by running the nomoreide CLI:",' nomoreide add service <name> --command "<cmd>" --cwd "<dir>" [--port <n>] [--description "<text>"]'," Docker: --kind docker-compose --compose-service <svc> [--compose-file <file>] --cwd <dir>",' SSH: --kind ssh --host <alias> --command "<cmd>" --cwd "<remote dir>"',"After it registers successfully, end your final message with the service name in a","fenced `service` block so I get Start / Open buttons for it, e.g.:","```service","backend","```"].join(`
|
|
21
|
-
`),Ez=["I want to connect a database to NoMoreIDE so I can browse it in the Database tab.","Walk me through it one step at a time — ask a single question per message and give","me options to choose from where it helps.","","Whenever you offer me a set of choices, end that message with a fenced block","labelled `options`, one choice per line, so I can click them. For example:","```options","Postgres","MySQL","SQLite","```","","First, look at what's already here before asking me to type things:","- Call `nomoreide_list_services` and check for a database service (a docker-compose"," or local service using a postgres / pgvector / mysql / mariadb image).","- If I just onboarded a repo, prefer the database it exposed.","","Then confirm the connection details with me: engine, host, port, user, password,","and database name. When the answer is free text, show a concrete example in the","question — e.g. the host as '(for example: `127.0.0.1`)' and the port as","'(for example: `5432`)'. For a docker-compose database, use the published host","port (the left side of a `5433:5432` mapping), not the in-container port.","","Once I've confirmed everything, register it with the `nomoreide_register_database`","tool — pass name, engine (postgres|mysql|sqlite), and a connection url, e.g.","`postgres://user:password@127.0.0.1:5433/dbname` (or an absolute file path for","sqlite). After it registers, tell me it's ready to browse in the Database tab."].join(`
|
|
22
|
-
`);function jz(e){const t=e?.trim();return[t?`Onboard this repository into NoMoreIDE and get it running: ${t}`:"I want to add a project to NoMoreIDE from a Git URL. First ask me for the repository URL (for example: `https://github.com/owner/repo`).","","Then set it up end-to-end yourself — don't make me fill in a form:","1. Call the `nomoreide_onboard_repo` tool with the URL to clone and analyze it."," It returns the clone path, a profile (manifests, Docker/compose, env keys,"," README excerpt), and ranked proposals with install-command hints.","2. Pick the best proposal straight from that result. Trust the profile — don't"," crawl the repo with Read/Glob/Grep or shell file reads; it already has what"," you need. Only ask me if it's genuinely ambiguous (e.g. several equally-likely"," apps in a monorepo) — otherwise choose sensible defaults.","3. Install dependencies if needed (run the install command in the clone path).","4. Register it with `nomoreide_register_service` using the returned clone path as"," the cwd, then register it as a git repo with `nomoreide_git_register_repository`"," so it shows in the Git tab."," If the onboard result includes any `databases`, register each one with"," `nomoreide_register_database` (use its name, engine, and url) so it shows in the"," Database tab.","5. Start it with `nomoreide_start_service` and confirm it came up (check its logs).","","Keep me posted as you go, but keep decisions to yourself unless you're truly stuck.","When it's running, end your message with the service name in a fenced `service`","block so I get Start / Open buttons for it, e.g.:","```service","backend","```"].join(`
|
|
23
|
-
`)}function Tz(e){return e.map(t=>`- ${t.name}: ${t.dataType}${t.primaryKey?" (PK)":""}${t.nullable?"":" NOT NULL"}`).join(`
|
|
24
|
-
`)}function QE(e){return e?.length?["## Table schema",Tz(e),""].join(`
|
|
25
|
-
`):""}const JE="Your prompt: ";function Az(e,t,s,n,o){return[`I'm looking at a row in my ${t} database (connection "${e}", table \`${s.qualifiedName}\`).`,"",QE(n),"## Row","```json",JSON.stringify(o,null,2),"```","",JE].join(`
|
|
26
|
-
`)}function vw(e,t,s){const n=s?.engine?`my ${s.engine} database (connection "${e}")`:`my database (connection "${e}")`,o=[`I'm looking at the table \`${t.qualifiedName}\` in ${n}.`,""],l=QE(s?.columns);return l&&o.push(l),o.push(JE),o.join(`
|
|
27
|
-
`)}function Mz(e,t,s){const n=s.engine?`${s.engine} `:"",o=(s.tables??[]).map(u=>u.qualifiedName).filter(Boolean),l=[`Write one ${n}SQL statement for the database connection "${e}".`,"","What it should do:",t.trim(),""];return o.length?(l.push("Tables in this database:"),l.push(o.map(u=>`- ${u}`).join(`
|
|
28
|
-
`)),l.push("Inspect a table's columns with the database tools if you need its exact schema.")):l.push("Use the database tools to inspect the available tables and columns before writing the query."),l.push(""),l.push("Rules:"),s.unlocked?l.push("- This connection is unlocked for writes, so INSERT/UPDATE/DELETE/DDL are allowed if that's what was asked for."):l.push("- This connection is read-only. Return a SELECT (or other read) statement only — never a write."),l.push("- Return exactly one statement."),l.push("- Output ONLY the statement inside a single ```sql code fence — no explanation before or after."),l.join(`
|
|
29
|
-
`)}function Rz(e,t,s,n){return[`This ${t?`${t} `:""}query against the database connection "${e}" failed.`,"","Statement:","```sql",s.trim(),"```","","Error returned by the database:","```",n.trim(),"```","","Explain what's wrong and why, then give a corrected statement in a ```sql code fence.","Use the database tools to check the actual schema if the fix depends on it."].join(`
|
|
30
|
-
`)}function Dz({absolutePath:e,lines:t,relativePath:s}){return[`Please structurally split this large file and preserve behavior: ${s}`,"",`Absolute path: ${e}`,`Current size: ${t.toLocaleString()} lines`,"","First read the file and nearby imports/tests, then propose the smallest safe decomposition.","Prefer extracting cohesive responsibilities into focused modules over mechanical slicing.","Keep public APIs stable where possible, update imports, and run the relevant tests after editing."].join(`
|
|
31
|
-
`)}function Oz(e,t){return[`About commit \`${e.hash.slice(0,7)}\` — "${e.subject}" by ${e.author}:`,"",t,"",`Run \`git show ${e.hash}\` to see the diff if you need it.`].join(`
|
|
32
|
-
`)}function Lz(e){const t=["Write a concise Git commit message for my currently staged changes.","","- Inspect the staged diff yourself (`git diff --cached` or the `nomoreide_git_staged_diff` tool).","- Use a conventional-commit style subject (≤ 72 chars), then a short body if it helps.","- Reply with ONLY the commit message in a code block so I can copy it — don't commit it yourself."];return e.branch&&t.push("",`Branch: \`${e.branch}\``),e.stagedFiles.length&&(t.push("","Staged files:",...e.stagedFiles.slice(0,40).map(s=>`- ${s}`)),e.stagedFiles.length>40&&t.push(`- …and ${e.stagedFiles.length-40} more`)),t.join(`
|
|
33
|
-
`)}function zz(e){return[`I have ${e.fileCount} uncommitted change${e.fileCount===1?"":"s"}${e.branch?` on \`${e.branch}\``:""}.`,"","Review the working tree (`git status` + `git diff`), stage the changes that belong together, and commit them with a clear conventional-commit message. Ask me before committing anything that looks unintended (secrets, debug code, unrelated files)."].join(`
|
|
34
|
-
`)}function Bz(e){return[`My branch${e.branch?` \`${e.branch}\``:""} is ${e.behind} commit${e.behind===1?"":"s"} behind ${e.upstream??"its upstream"}.`,"","Pull and rebase onto the upstream. If there are conflicts, walk me through resolving them — don't force anything or discard my work."].join(`
|
|
35
|
-
`)}function Iz(e){return[`The latest CI run (\`${e.runName}\`)${e.branch?` on \`${e.branch}\``:""} failed: ${e.url}`,"","Figure out why it failed (check the workflow logs / the relevant test or build step), then fix the underlying issue in the code. Explain what was wrong before you change anything."].join(`
|
|
36
|
-
`)}function Pz(e){return["I have these ungrouped services in NoMoreIDE and I'd like to organise them into groups","(groups let me start/stop related services together):","",e.length?e.map(s=>{const n=[`- ${s.name}`];return s.command&&n.push(`command: \`${s.command}\``),s.cwd&&n.push(`cwd: \`${s.cwd}\``),typeof s.port=="number"&&n.push(`port: ${s.port}`),s.description&&n.push(s.description),n.join(" — ")}).join(`
|
|
37
|
-
`):"- (none — all services are already grouped)","","Look at their names, commands, directories and ports and propose how to group them —","for example a frontend + backend that share a repo, or services that boot together.","Group only the ones that genuinely belong together; it's fine to leave some ungrouped.","","Present your proposal as a short list of `group name → services` and end that message","with a fenced `options` block so I can confirm, e.g.:","```options","Yes, create these groups","Let me adjust them first","```","","Do NOT create anything until I confirm. Once I say yes, register each group by running:"," nomoreide add bundle <group-name> <service> <service> ...","Then tell me which groups you created."].join(`
|
|
38
|
-
`)}function $z({service:e,context:t}){return[`Here's the current debug context for my \`${e}\` service. Take a look at its`,"state and recent logs, tell me what stands out, and help me fix anything that's wrong.","",t].join(`
|
|
39
|
-
`)}function _w(){return{serviceNames:[],databaseNames:[],errorIds:[],repositoryPaths:[]}}function Hz(e){return e.serviceNames.length>0||e.databaseNames.length>0||e.errorIds.length>0||e.repositoryPaths.length>0}function Uz({dashboard:e,databases:t,incidents:s,note:n,selection:o}){const l=[qz(e,o.serviceNames),Vz(t,o.databaseNames),Gz(s,o.errorIds),Wz(e,o.repositoryPaths)].filter(Boolean);return["Diagnose this NoMoreIDE workspace context.","Use the selected services, databases, incidents, and repositories together. Tell me what stands out, likely root causes, and the safest next steps.","",`Workspace: ${e.cwd}`,n?.trim()?`Extra user context:
|
|
40
|
-
${n.trim()}`:null,"",l.join(`
|
|
41
|
-
|
|
42
|
-
---
|
|
43
|
-
|
|
44
|
-
`)].filter(Boolean).join(`
|
|
45
|
-
`)}function Fz({note:e,selection:t}){const s=[Kd(t.serviceNames.length,"service"),Kd(t.databaseNames.length,"database"),Kd(t.errorIds.length,"error"),Kd(t.repositoryPaths.length,"repo")].filter(Boolean),n=e?.trim().replace(/\s+/g," ");return n?`Diagnose: ${s.join(", ")}. Note: ${n.slice(0,80)}`:`Diagnose: ${s.join(", ")}`}function qz(e,t){return t.length?["Services",t.map(n=>{const o=e.config.services.find(m=>m.name===n),l=e.runtime.services[n],u=e.health[n],h=e.logs.filter(m=>m.service===n).slice(-8).map(m=>`${m.timestamp} ${m.stream}: ${m.text}`);return[`Service: ${n}`,o?.kind?`kind: ${o.kind}`:null,o?.command?`command: ${o.command}`:null,o?.cwd?`cwd: ${o.cwd}`:null,o?.port?`port: ${o.port}`:null,l?`state: ${l.state}`:"state: unknown",l?.pid?`pid: ${l.pid}`:null,l?.url?`url: ${l.url}`:null,l?.exitCode!==void 0&&l.exitCode!==null?`exitCode: ${l.exitCode}`:null,u?`health: ${u.status} - ${u.summary}`:null,u?.agentContext?`agent debug context:
|
|
46
|
-
${u.agentContext}`:null,h.length?`recent logs:
|
|
47
|
-
${h.join(`
|
|
48
|
-
`)}`:null].filter(Boolean).join(`
|
|
49
|
-
`)}).join(`
|
|
50
|
-
|
|
51
|
-
`)].join(`
|
|
52
|
-
`):null}function Vz(e,t){return t.length?["Databases",t.map(n=>{const o=e.find(l=>l.name===n);return[`Database: ${n}`,o?.engine?`engine: ${o.engine}`:null,o?.url?`url: ${o.url}`:null].filter(Boolean).join(`
|
|
53
|
-
`)}).join(`
|
|
54
|
-
|
|
55
|
-
`)].join(`
|
|
56
|
-
`):null}function Gz(e,t){return t.length?["Error Inbox",t.map(n=>{const o=e.find(l=>l.id===n);return o?[`Incident #${o.id}`,`service: ${o.service}`,`level: ${o.level}`,`title: ${o.title}`,o.file?`file: ${o.file}${o.line?`:${o.line}`:""}`:null,`count: ${o.count}`,`firstSeen: ${o.firstSeen}`,`lastSeen: ${o.lastSeen}`,o.logExcerpt.length?`log excerpt:
|
|
57
|
-
${o.logExcerpt.join(`
|
|
58
|
-
`)}`:null].filter(Boolean).join(`
|
|
59
|
-
`):`Incident #${n}`}).join(`
|
|
60
|
-
|
|
61
|
-
`)].join(`
|
|
62
|
-
`):null}function Wz(e,t){if(!t.length)return null;const s=Kz(e),n=e.git.selectedRepository?.path??e.git.cwd,o=e.git.status?.files.map(u=>`${u.index}${u.workingTree}: ${u.path}`)??[];return["Git Repositories",t.map(u=>{const h=s.find(d=>d.path===u),m=u===n;return[`Repository: ${h?.name??u.split("/").pop()??u}`,`path: ${u}`,m?"current: yes":"current: no",m?o.length?`changed files:
|
|
63
|
-
${o.join(`
|
|
64
|
-
`)}`:"changed files: none":"changed files: not loaded for this repository in the current dashboard view"].join(`
|
|
65
|
-
`)}).join(`
|
|
66
|
-
|
|
67
|
-
`)].join(`
|
|
68
|
-
`)}function Kz(e){return e.config.gitRepositories.length?e.config.gitRepositories:e.git.selectedRepository?[e.git.selectedRepository]:[{name:e.git.cwd.split("/").pop()??"repository",path:e.git.cwd}]}function Kd(e,t){return e?`${e} ${t}${e===1?"":"s"}`:null}function pf(e){return e==="codex"?"Codex":"Claude Code"}function Yz(e,t){const s=e==="codex"?"`~/.codex/skills/<name>/SKILL.md` (user) or `.codex/skills/<name>/SKILL.md` (project)":"`~/.claude/skills/<name>/SKILL.md` (user) or `.claude/skills/<name>/SKILL.md` (project)";return[`Add a new skill for ${pf(e)} from this:`,"",t,"",`Scaffold it at ${s} with valid frontmatter (\`name\`, \`description\`) and a short body, then confirm it's discovered. If the input is a URL or repo, fetch and adapt it.`].join(`
|
|
69
|
-
`)}function Xz(e){return[`Remove the ${e.scope} skill \`${e.name}\`${e.path?` (at \`${e.path}\`)`:""}.`,"","Delete its directory and confirm it's no longer registered. Check nothing else references it first."].join(`
|
|
70
|
-
`)}function Zz(e){const t=[`I'm looking at the ${e.scope} skill \`${e.name}\`${e.path?` (at \`${e.path}\`)`:""}.`];return e.description&&t.push("",`Its description: ${e.description}`),t.push("","My question: "),t.join(`
|
|
71
|
-
`)}function Qz(e,t){const s=e==="codex"?"by adding an `[mcp_servers.<name>]` section to `~/.codex/config.toml`":"with `claude mcp add` (or by editing `~/.claude.json`)";return[`Register a new MCP server for ${pf(e)} from this:`,"",t,"",`Set it up ${s}, then verify it connects. Parse the name, command/URL, and any env/args from the input above.`].join(`
|
|
72
|
-
`)}function Jz(e,t){const s=t==="codex"?`Remove the \`[mcp_servers.${e.name}]\` section from \`~/.codex/config.toml\`.`:`Run \`claude mcp remove ${e.name}\` (scope: ${e.scope}).`;return[`Remove the ${e.scope} MCP server \`${e.name}\`.`,"",`${s} Then confirm it no longer appears in the server list.`].join(`
|
|
73
|
-
`)}function eB(e){const t=[`I'm looking at the ${e.scope} MCP server \`${e.name}\`.`],s=e.command?[e.command,...e.args??[]].join(" "):e.url??e.type;return s&&t.push("",`It points at: \`${s}\``),t.push("","My question: "),t.join(`
|
|
74
|
-
`)}function tB(e,t){return[`Install a plugin for ${pf(e)} from this:`,"",t,"","Use the `/plugin` command or `claude plugin install <name>@<marketplace>` (add the marketplace first if needed), then confirm its skills, commands, and MCP servers are available."].join(`
|
|
75
|
-
`)}function sB(e){const t=e.marketplace?` (from \`${e.marketplace}\`)`:"";return[`Uninstall the plugin \`${e.name}\`${t}.`,"","Use `claude plugin uninstall` or the `/plugin` command, then confirm its skills, commands, and MCP servers are gone."].join(`
|
|
76
|
-
`)}function nB(e){const t=[`I'm looking at the plugin \`${e.name}\`${e.marketplace?` from \`${e.marketplace}\``:""}${e.version?` (v${e.version})`:""}.`];e.description&&t.push("",e.description);const s=[];return e.skills.length&&s.push(`skills: ${e.skills.join(", ")}`),e.commands.length&&s.push(`commands: ${e.commands.join(", ")}`),e.agents.length&&s.push(`agents: ${e.agents.join(", ")}`),e.mcpServers.length&&s.push(`MCP servers: ${e.mcpServers.join(", ")}`),s.length&&(t.push("","It contributes —"),t.push(...s.map(n=>`- ${n}`))),t.push("","My question: "),t.join(`
|
|
77
|
-
`)}function iB(e,t){const s=e==="codex"?"`~/.codex/config.toml` if this Codex version supports hooks":"`~/.claude/settings.json` (user) or `.claude/settings.json` (project)";return[`Add a hook for ${pf(e)} from this:`,"",t,"",`Configure it in ${s}. Pick the correct hook event, matcher, command, and scope from the request, then confirm it appears in the agent tools view.`].join(`
|
|
78
|
-
`)}function rB(e){const t=e.matcher?` with matcher \`${e.matcher}\``:"",s=e.command?` running \`${e.command}\``:"";return[`Remove the ${e.scope} \`${e.event}\` hook${t}${s}.`,"",`Edit \`${e.settingsPath}\`, remove only that hook entry, and confirm it no longer appears in the hooks list.`].join(`
|
|
79
|
-
`)}function aB(e){const t=[`I'm looking at the ${e.scope} \`${e.event}\` hook in \`${e.settingsPath}\`.`];return e.matcher&&t.push("",`Matcher: \`${e.matcher}\``),e.type&&t.push(`Type: \`${e.type}\``),e.command&&t.push(`Command: \`${e.command}\``),t.push("","My question: "),t.join(`
|
|
80
|
-
`)}function e3({id:e,className:t}){return e==="codex"?a.jsx(gu,{className:ae("text-foreground",t)}):e==="gemini"?a.jsx(X9,{className:ae("text-[#1A73E8]",t)}):a.jsx(gl,{className:ae("text-[#D97757]",t)})}function Tt({className:e}){const{provider:t}=At();return a.jsx(e3,{id:t?.id,className:e})}function cl({onAsk:e,label:t,className:s}){const{provider:n}=At(),o=t??`Ask ${n?.label??"Claude"}`;return a.jsx("button",{"aria-label":o,className:ae("flex size-6 items-center justify-center rounded-md opacity-0 transition-all duration-150 hover:bg-muted group-hover:opacity-100",s),onClick:e,title:o,type:"button",children:a.jsx(e3,{id:n?.id,className:"size-3.5"})})}function bu({placeholder:e,onSubmit:t,onCancel:s,className:n}){const[o,l]=y.useState(""),u=()=>{const m=o.trim();m&&t(m)},h=y.useCallback(m=>{m?.focus()},[]);return a.jsxs("form",{className:ae("flex items-center gap-1.5 rounded-md border border-primary/40 bg-primary/5 px-1.5 py-1",n),onSubmit:m=>{m.preventDefault(),u()},children:[a.jsx(cl,{className:"size-5 opacity-100",label:"Send to the agent",onAsk:u}),a.jsx("input",{ref:h,className:"min-w-0 flex-1 bg-transparent text-xs outline-none placeholder:text-muted-foreground",onChange:m=>l(m.target.value),onKeyDown:m=>{m.key==="Escape"&&s()},placeholder:e,value:o}),a.jsx(Q,{type:"submit",size:"icon",className:"size-6",disabled:!o.trim(),title:"Send",children:a.jsx(Zn,{className:"size-3.5"})}),a.jsx(Q,{type:"button",size:"icon",variant:"ghost",className:"size-6",onClick:s,"aria-label":"Cancel",title:"Cancel",children:a.jsx(Ns,{className:"size-3.5"})})]})}function gf({label:e,onClick:t}){return a.jsxs(Q,{type:"button",variant:"ghost",size:"sm",className:"h-6 gap-1 px-1.5 text-[11px] font-medium",onClick:t,title:e,"aria-label":e,children:[a.jsx(xs,{className:"size-3.5"}),"Add"]})}function bf({askLabel:e,removeLabel:t,onAsk:s,onRemove:n}){return a.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[a.jsx(cl,{label:e,onAsk:s}),a.jsx(oB,{label:t,onConfirm:n})]})}function oB({label:e,onConfirm:t}){const[s,n]=y.useState(!1);return s?a.jsxs("span",{className:"flex items-center gap-0.5",children:[a.jsx("button",{type:"button","aria-label":e,title:e,onClick:()=>{n(!1),t()},className:"flex size-6 items-center justify-center rounded-md text-emerald-600 transition-colors hover:bg-emerald-500/10",children:a.jsx(Zn,{className:"size-3.5"})}),a.jsx("button",{type:"button","aria-label":"Cancel",title:"Cancel",onClick:()=>n(!1),className:"flex size-6 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-muted",children:a.jsx(Ns,{className:"size-3.5"})})]}):a.jsx("button",{type:"button","aria-label":e,title:e,onClick:()=>n(!0),className:"flex size-6 items-center justify-center rounded-md text-muted-foreground opacity-0 transition-all duration-150 hover:bg-destructive/10 hover:text-destructive group-hover:opacity-100",children:a.jsx(ha,{className:"size-3.5"})})}function lB({agent:e,agentId:t,alternateHooks:s}){const{sendToAgent:n}=At(),[o,l]=y.useState(!1),u=e.hooks??[];function h(p){l(!1),n({prompt:iB(t,p),source:{type:"agent-hook",label:"New hook"},label:`Add hook: ${p}`})}function m(p){n({prompt:aB(p),source:{type:"agent-hook",label:`${p.event} hook`},mode:"draft"})}function d(p){n({prompt:rB(p),source:{type:"agent-hook",label:`Remove ${p.event}`},label:`Remove hook: ${p.event}`})}return a.jsxs(gi,{className:"min-w-0 rounded-none border-0 border-t border-border bg-transparent md:border-l lg:border-t-0",children:[a.jsxs(bi,{className:"border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(OR,{className:"size-4 text-muted-foreground"}),a.jsx(xi,{children:"Hooks"})]}),a.jsxs("div",{className:"flex items-center gap-1.5",children:[a.jsx(Pe,{variant:"outline",size:"small",children:u.length}),a.jsx(gf,{label:"Add a hook with AI",onClick:()=>l(p=>!p)})]})]}),o?a.jsx(bu,{className:"mt-1.5",placeholder:"Describe the event, matcher, and command…",onSubmit:h,onCancel:()=>l(!1)}):a.jsx(Ii,{className:"text-xs",children:t==="codex"?"Codex hooks from ~/.codex/hooks.json, with state from ~/.codex/config.toml.":"PreToolUse, PostToolUse, and other Claude Code hooks from user and project settings."})]}),a.jsx(vi,{className:"p-0",children:u.length?a.jsx("ul",{className:"divide-y divide-border",children:u.map(p=>a.jsxs("li",{className:"group px-3 py-2 hover:bg-muted/40",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-1",children:[a.jsx("span",{className:"min-w-0 truncate font-mono text-xs font-semibold",title:p.event,children:p.event}),a.jsx(bf,{askLabel:`Ask AI about the ${p.event} hook`,removeLabel:`Remove the ${p.event} hook`,onAsk:()=>m(p),onRemove:()=>d(p)})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-1.5",children:[a.jsx(uB,{hook:p}),a.jsx(dB,{hook:p}),a.jsx(Pe,{variant:"outline",size:"small",children:p.scope})]})]}),a.jsx("div",{className:"mt-1 truncate font-mono text-[11px] text-muted-foreground",title:yw(p),children:yw(p)})]},p.id))}):a.jsx(cB,{agentId:t,alternateHooks:s})})]})}function cB({agentId:e,alternateHooks:t}){const s=e==="codex"?"Codex":"Claude Code";return a.jsxs("p",{className:"px-3 py-4 text-xs text-muted-foreground",children:["No ",s," hooks configured.",t?.count?a.jsxs(a.Fragment,{children:[" ",t.agentLabel," has ",t.count," hook",t.count===1?"":"s","; switch agents above to view them."]}):null]})}function uB({hook:e}){return e.status==="enabled"?a.jsx(Pe,{variant:"success",appearance:"subtle",size:"small",children:"Enabled"}):e.status==="disabled"?a.jsx(Pe,{variant:"error",appearance:"subtle",size:"small",children:"Disabled"}):a.jsx(Pe,{variant:"warning",appearance:"subtle",size:"small",children:"Default"})}function dB({hook:e}){return e.trusted===void 0?null:a.jsx(Pe,{variant:e.trusted?"success":"warning",appearance:"subtle",size:"small",children:e.trusted?"Trusted":"Untrusted"})}function hB(e){return e.command?e.command:e.type??e.settingsPath}function yw(e){return`${e.matcher?`matcher ${e.matcher} · `:""}${hB(e)}`}function fB({agent:e,agentId:t}){const{sendToAgent:s}=At(),[n,o]=y.useState([]),[l,u]=y.useState(!1),[h,m]=y.useState(!1),d=y.useCallback(async()=>{u(!0);try{o(await $R(t))}catch{o([])}finally{u(!1)}},[t]);y.useEffect(()=>{d()},[d]);const p=y.useMemo(()=>{const w={};for(const C of n)w[C.name]=C.state;return w},[n]),g=y.useMemo(()=>{const w=new Set(e.mcpServers.map(N=>N.name)),C=n.filter(N=>!w.has(N.name)).map(N=>({name:N.name,scope:"user",synthetic:!0}));return[...e.mcpServers,...C]},[e.mcpServers,n]);function x(w){m(!1),s({prompt:Qz(t,w),source:{type:"agent-mcp",label:"New MCP server"},label:`Add MCP server: ${w}`})}function _(w){s({prompt:eB(w),source:{type:"agent-mcp",label:`${w.name} server`},mode:"draft"})}function S(w){s({prompt:Jz(w,t),source:{type:"agent-mcp",label:`Remove ${w.name}`},label:`Remove MCP server: ${w.name}`})}return a.jsxs(gi,{className:"min-w-0 rounded-none border-0 bg-transparent md:border-l md:border-border",children:[a.jsxs(bi,{className:"border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(TC,{className:"size-4 text-muted-foreground"}),a.jsx(xi,{children:"MCP Servers"})]}),a.jsxs("div",{className:"flex items-center gap-1.5",children:[a.jsx(Pe,{variant:"outline",size:"small",children:g.length}),a.jsx(Q,{type:"button",variant:"ghost",size:"icon",className:"size-6",onClick:()=>{d()},disabled:l,title:"Re-check authentication status","aria-label":"Re-check authentication status",children:a.jsx(cu,{className:l?"animate-spin":void 0})}),a.jsx(gf,{label:"Register an MCP server with AI",onClick:()=>m(w=>!w)})]})]}),h?a.jsx(bu,{className:"mt-1.5",placeholder:"Paste the MCP install command or URL…",onSubmit:x,onCancel:()=>m(!1)}):a.jsxs(Ii,{className:"text-xs",children:["From"," ",a.jsx("code",{className:"font-mono",children:t==="codex"?"~/.codex/config.toml":"~/.claude.json"}),t==="codex"?"":" + claude.ai connectors",". Status via"," ",a.jsxs("code",{className:"font-mono",children:[t==="codex"?"codex":"claude"," mcp list"]})," ","(fresh health check)."]})]}),a.jsx(vi,{className:"p-0",children:g.length?a.jsx("ul",{className:"divide-y divide-border",children:g.map(w=>a.jsxs("li",{className:"group px-3 py-2 hover:bg-muted/40",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-1",children:[a.jsx("span",{className:"min-w-0 truncate font-mono text-xs font-semibold",title:w.name,children:w.name}),a.jsx(bf,{askLabel:`Ask AI about the ${w.name} server`,removeLabel:`Remove the ${w.name} server`,onAsk:()=>_(w),onRemove:()=>S(w)})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-1.5",children:[a.jsx(pB,{state:p[w.name],loading:l}),a.jsx(Pe,{variant:"outline",size:"small",children:w.synthetic?"connector":w.scope})]})]}),a.jsx("div",{className:"mt-1 truncate font-mono text-[11px] text-muted-foreground",title:w.synthetic?"claude.ai managed connector":Sw(w),children:w.synthetic?"claude.ai managed connector":Sw(w)})]},`${w.scope}:${w.name}`))}):a.jsx("p",{className:"px-3 py-4 text-xs text-muted-foreground",children:"No MCP servers configured."})})]})}const mB={connected:{label:"Connected",dot:"bg-emerald-500"},"needs-auth":{label:"Needs auth",dot:"bg-amber-500"},failed:{label:"Failed",dot:"bg-red-500"},"no-auth":{label:"local",dot:"bg-muted-foreground/50"}};function pB({state:e,loading:t}){if(!e)return t?a.jsx(ht,{className:"size-3 animate-spin text-muted-foreground"}):null;const s=e==="unknown"?void 0:mB[e];return s?a.jsxs("span",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[a.jsx("span",{className:ae("size-1.5 shrink-0 rounded-full",s.dot),"aria-hidden":!0}),s.label]}):null}function Sw(e){return e.command?[e.command,...e.args??[]].join(" "):e.url??e.type??"-"}function gB({agent:e,agentId:t}){const{sendToAgent:s}=At(),[n,o]=y.useState(!1),l=e.plugins??[];function u(d){o(!1),s({prompt:tB(t,d),source:{type:"agent-plugin",label:"New plugin"},label:`Install plugin: ${d}`})}function h(d){s({prompt:nB(d),source:{type:"agent-plugin",label:`${d.name} plugin`},mode:"draft"})}function m(d){s({prompt:sB(d),source:{type:"agent-plugin",label:`Remove ${d.name}`},label:`Uninstall plugin: ${d.name}`})}return a.jsxs(gi,{className:"min-w-0 rounded-none border-0 border-t border-border bg-transparent lg:border-l lg:border-t-0",children:[a.jsxs(bi,{className:"border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx($A,{className:"size-4 text-muted-foreground"}),a.jsx(xi,{children:"Plugins"})]}),a.jsxs("div",{className:"flex items-center gap-1.5",children:[a.jsx(Pe,{variant:"outline",size:"small",children:l.length}),a.jsx(gf,{label:"Install a plugin with AI",onClick:()=>o(d=>!d)})]})]}),n?a.jsx(bu,{className:"mt-1.5",placeholder:"Paste a plugin name, marketplace, or install command…",onSubmit:u,onCancel:()=>o(!1)}):a.jsx(Ii,{className:"text-xs",children:t==="codex"?"Codex doesn't expose an installed-plugin registry here yet.":"Installed from marketplaces (~/.claude/plugins). Each bundles skills, commands, agents, and MCP servers."})]}),a.jsx(vi,{className:"p-0",children:l.length?a.jsx("ul",{className:"divide-y divide-border",children:l.map(d=>a.jsxs("li",{className:"group px-3 py-2 hover:bg-muted/40",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-1",children:[a.jsx("span",{className:"min-w-0 truncate font-mono text-xs font-semibold",title:d.name,children:d.name}),a.jsx(bf,{askLabel:`Ask AI about the ${d.name} plugin`,removeLabel:`Uninstall the ${d.name} plugin`,onAsk:()=>h(d),onRemove:()=>m(d)})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-1.5",children:[d.version&&d.version!=="unknown"?a.jsxs(Pe,{variant:"outline",size:"small",children:["v",d.version]}):null,d.marketplace?a.jsx(Pe,{variant:"outline",size:"small",children:d.marketplace}):null]})]}),d.description?a.jsx("p",{className:"mt-1 truncate text-[11px] text-muted-foreground",title:d.description,children:d.description}):null,a.jsx(bB,{plugin:d})]},`${d.name}@${d.marketplace??""}`))}):a.jsx("p",{className:"px-3 py-4 text-xs text-muted-foreground",children:"No plugins installed."})})]})}function bB({plugin:e}){const t=[];return e.skills.length&&t.push(`${e.skills.length} skill${Yd(e.skills.length)}`),e.commands.length&&t.push(`${e.commands.length} command${Yd(e.commands.length)}`),e.agents.length&&t.push(`${e.agents.length} agent${Yd(e.agents.length)}`),e.mcpServers.length&&t.push(`${e.mcpServers.length} MCP server${Yd(e.mcpServers.length)}`),t.length?a.jsx("div",{className:"mt-1.5 flex flex-wrap gap-1",children:t.map(s=>a.jsx("span",{className:"rounded-full bg-muted px-2 py-0.5 text-[10px] text-muted-foreground",children:s},s))}):null}function Yd(e){return e===1?"":"s"}function xB({agent:e,agentId:t}){const{sendToAgent:s}=At(),[n,o]=y.useState(!1);function l(m){o(!1),s({prompt:Yz(t,m),source:{type:"agent-skill",label:"New skill"},label:`Add skill: ${m}`})}function u(m){s({prompt:Zz(m),source:{type:"agent-skill",label:`${m.name} skill`},mode:"draft"})}function h(m){s({prompt:Xz(m),source:{type:"agent-skill",label:`Remove ${m.name}`},label:`Remove skill: ${m.name}`})}return a.jsxs(gi,{className:"min-w-0 rounded-none border-0 bg-transparent",children:[a.jsxs(bi,{className:"border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(mi,{className:"size-4 text-muted-foreground"}),a.jsx(xi,{children:"Skills"})]}),a.jsxs("div",{className:"flex items-center gap-1.5",children:[a.jsx(Pe,{variant:"outline",size:"small",children:e.skills.length}),a.jsx(gf,{label:"Add a skill with AI",onClick:()=>o(m=>!m)})]})]}),n?a.jsx(bu,{className:"mt-1.5",placeholder:"Paste a skill URL/repo, or describe the skill…",onSubmit:l,onCancel:()=>o(!1)}):a.jsx(Ii,{className:"text-xs",children:t==="codex"?"User, project, and system skills discovered for Codex.":"User and project skills discovered for the active agent."})]}),a.jsx(vi,{className:"p-0",children:e.skills.length?a.jsx("ul",{className:"divide-y divide-border",children:e.skills.map(m=>a.jsxs("li",{className:"group px-3 py-2 hover:bg-muted/40",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-1",children:[a.jsx("span",{className:"min-w-0 truncate font-mono text-xs font-semibold",title:m.name,children:m.name}),a.jsx(bf,{askLabel:`Ask AI about the ${m.name} skill`,removeLabel:`Remove the ${m.name} skill`,onAsk:()=>u(m),onRemove:()=>h(m)})]}),a.jsx("div",{className:"flex shrink-0 items-center gap-1.5",children:a.jsx(Pe,{variant:"outline",size:"small",children:m.scope})})]}),m.description?a.jsx("p",{className:"mt-1 truncate text-[11px] text-muted-foreground",title:m.description,children:m.description}):null]},`${m.scope}:${m.name}`))}):a.jsx("p",{className:"px-3 py-4 text-xs text-muted-foreground",children:"No skills found."})})]})}function vB({agent:e,agentId:t,alternateHooks:s}){return a.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4",children:[a.jsx(xB,{agent:e,agentId:t}),a.jsx(fB,{agent:e,agentId:t}),a.jsx(gB,{agent:e,agentId:t}),a.jsx(lB,{agent:e,agentId:t,alternateHooks:s})]})}const _B=[{id:"claude-code",label:"Claude Code",icon:a.jsx(gl,{className:"size-4"})},{id:"codex",label:"Codex",icon:a.jsx(gu,{className:"size-4"})}],yB=[{id:"overview",label:"Overview",icon:a.jsx(wC,{className:"size-3.5"})},{id:"memory",label:"Memory",icon:a.jsx(fC,{className:"size-3.5"})},{id:"tools",label:"Skills, MCPs, Plugins & Hooks",icon:a.jsx(TC,{className:"size-3.5"})},{id:"activity",label:"Activity",icon:a.jsx(Ga,{className:"size-3.5"})},{id:"changes",label:"Changes",icon:a.jsx(R4,{className:"size-3.5"})}];function SB(){const[e,t]=y.useState(null),[s,n]=y.useState(null),[o,l]=y.useState("claude-code"),[u,h]=y.useState("overview"),{clear:m,turns:d}=At();if(y.useEffect(()=>{let x=!0;return IC().then(_=>{x&&(t(_),_.detected.name==="codex"&&l("codex"))}).catch(_=>{x&&n(_ instanceof Error?_.message:String(_))}),()=>{x=!1}},[]),s)return a.jsx("div",{className:"h-full overflow-auto bg-card/85 p-4",children:a.jsxs(Ve,{variant:"muted",className:"border-destructive/40 text-destructive",children:["Failed to load agent info: ",s]})});if(!e)return a.jsx("div",{className:"h-full overflow-auto bg-card/85 p-4",children:a.jsx(Ve,{variant:"muted",children:"Loading agent info…"})});const p=e.agents?.[o]??e,g=o==="codex"?{agentLabel:"Claude Code",count:e.agents["claude-code"].hooks.length}:{agentLabel:"Codex",count:e.agents.codex.hooks.length};return a.jsxs("div",{className:"flex h-full min-h-0 flex-col bg-card/85",children:[a.jsx("div",{className:"flex shrink-0 items-center gap-2 border-b border-border bg-card/90 px-3 py-2",children:_B.map(x=>{const _=o===x.id,S=e.detected.name===x.id;return a.jsxs("button",{type:"button",onClick:()=>l(x.id),className:ae("flex items-center gap-2 rounded-lg border px-3 py-1.5 text-xs font-medium transition-colors",_?"border-border bg-background text-foreground shadow-sm":"border-transparent text-muted-foreground hover:bg-muted/60 hover:text-foreground"),children:[x.icon,x.label,S?a.jsx("span",{className:"size-1.5 rounded-full bg-emerald-500","aria-hidden":!0}):null]},x.id)})}),a.jsx("div",{className:"flex shrink-0 items-center gap-1 border-b border-border bg-card/90 px-3",children:yB.map(x=>a.jsxs("button",{type:"button",onClick:()=>h(x.id),className:ae("relative flex items-center gap-1.5 px-2.5 py-2 text-xs font-medium transition-colors",u===x.id?"text-foreground":"text-muted-foreground hover:text-foreground"),children:[x.icon,x.label,u===x.id?a.jsx("span",{className:"absolute inset-x-1 -bottom-px h-0.5 bg-primary"}):null]},x.id))}),a.jsx(uz,{onNewChat:m,turns:d}),a.jsxs("div",{className:"min-h-0 flex-1 overflow-auto",children:[u==="overview"?a.jsx(Cz,{agent:p,agentId:o,isDetected:e.detected.name===o}):null,u==="memory"?a.jsx(dz,{agent:p,agentId:o}):null,u==="tools"?a.jsx(vB,{agent:p,agentId:o,alternateHooks:g}):null,u==="activity"?a.jsx(K9,{agent:p,agentId:o}):null,u==="changes"?a.jsx(iz,{}):null]})]})}var xu=cC();function Xn({children:e,icon:t,onClose:s,title:n,size:o="md"}){return y.useEffect(()=>{function l(u){u.key==="Escape"&&s()}return window.addEventListener("keydown",l),()=>window.removeEventListener("keydown",l)},[s]),xu.createPortal(a.jsx("div",{className:"fixed inset-0 z-[1000] grid place-items-center bg-black/35 px-4",onMouseDown:s,children:a.jsxs("div",{"aria-modal":"true",className:`flex max-h-[min(820px,calc(100vh-2rem))] w-full flex-col overflow-hidden rounded-lg border border-border bg-card shadow-xl ${o==="xl"?"max-w-[min(1400px,calc(100vw-2rem))]":o==="lg"?"max-w-3xl":"max-w-lg"}`,onMouseDown:l=>l.stopPropagation(),role:"dialog",children:[a.jsxs("div",{className:"flex shrink-0 items-center gap-3 border-b border-border px-4 py-3",children:[a.jsx("div",{className:"flex size-8 items-center justify-center rounded-md border border-border bg-background text-foreground [&_svg]:size-4",children:t}),a.jsx("h2",{className:"min-w-0 flex-1 truncate text-sm font-semibold",children:n}),a.jsx(Q,{"aria-label":"Close dialog",onClick:s,size:"icon",type:"button",variant:"ghost",children:a.jsx(Ns,{})})]}),a.jsx("div",{className:"min-h-0 overflow-auto p-4",children:e})]})}),document.body)}function nt({className:e,type:t,...s}){return a.jsx("input",{type:t,className:ae("flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm transition-colors placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),...s})}const wB={top:"bottom-full left-1/2 mb-1.5 -translate-x-1/2",bottom:"top-full left-1/2 mt-1.5 -translate-x-1/2",left:"right-full top-1/2 mr-1.5 -translate-y-1/2",right:"left-full top-1/2 ml-1.5 -translate-y-1/2"};function il({label:e,children:t,side:s="bottom",className:n}){return a.jsxs("span",{className:ae("group/tt relative inline-flex",n),children:[t,a.jsx("span",{role:"tooltip",className:ae("pointer-events-none absolute z-[1100] whitespace-nowrap rounded-md bg-foreground px-2 py-1 text-xs font-medium text-background shadow-md","opacity-0 transition-opacity duration-150 group-hover/tt:opacity-100",wB[s]),children:e})]})}const gx="application/x-nomoreide-path";function vu(e,t){return`${e.replace(/\/+$/,"")}/${t.replace(/^\/+/,"")}`}function t3(e,t){e.setData(gx,t)}function ww(e){return e.types.includes(gx)}function kB(e){return e.getData(gx)||null}function s3(e){return{draggable:!0,onDragStart:t=>{t3(t.dataTransfer,e),t.dataTransfer.effectAllowed="copy"}}}const ei='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>',ti='</title><path d="',si='"/></svg>',CB={title:".NET",slug:"dotnet",get svg(){return ei+".NET"+ti+this.path+si},path:"M24 8.77h-2.468v7.565h-1.425V8.77h-2.462V7.53H24zm-6.852 7.565h-4.821V7.53h4.63v1.24h-3.205v2.494h2.953v1.234h-2.953v2.604h3.396zm-6.708 0H8.882L4.78 9.863a2.896 2.896 0 0 1-.258-.51h-.036c.032.189.048.592.048 1.21v5.772H3.157V7.53h1.659l3.965 6.32c.167.261.275.442.323.54h.024c-.04-.233-.06-.629-.06-1.185V7.529h1.372zm-8.703-.693a.868.829 0 0 1-.869.829.868.829 0 0 1-.868-.83.868.829 0 0 1 .868-.828.868.829 0 0 1 .869.829Z",source:"https://github.com/dotnet/brand/blob/c7d0f51b8ec59531332d05fb27a5b758a7a3d689/logo/dotnet-logo.svg",hex:"512BD4",guidelines:"https://github.com/dotnet/brand/blob/c7d0f51b8ec59531332d05fb27a5b758a7a3d689/dotnet-styleGuide-2024.pdf",license:{type:"CC0-1.0",url:"https://spdx.org/licenses/CC0-1.0"}},NB={title:"Bun",slug:"bun",get svg(){return ei+"Bun"+ti+this.path+si},path:"M12 22.596c6.628 0 12-4.338 12-9.688 0-3.318-2.057-6.248-5.219-7.986-1.286-.715-2.297-1.357-3.139-1.89C14.058 2.025 13.08 1.404 12 1.404c-1.097 0-2.334.785-3.966 1.821a49.92 49.92 0 0 1-2.816 1.697C2.057 6.66 0 9.59 0 12.908c0 5.35 5.372 9.687 12 9.687v.001ZM10.599 4.715c.334-.759.503-1.58.498-2.409 0-.145.202-.187.23-.029.658 2.783-.902 4.162-2.057 4.624-.124.048-.199-.121-.103-.209a5.763 5.763 0 0 0 1.432-1.977Zm2.058-.102a5.82 5.82 0 0 0-.782-2.306v-.016c-.069-.123.086-.263.185-.172 1.962 2.111 1.307 4.067.556 5.051-.082.103-.23-.003-.189-.126a5.85 5.85 0 0 0 .23-2.431Zm1.776-.561a5.727 5.727 0 0 0-1.612-1.806v-.014c-.112-.085-.024-.274.114-.218 2.595 1.087 2.774 3.18 2.459 4.407a.116.116 0 0 1-.049.071.11.11 0 0 1-.153-.026.122.122 0 0 1-.022-.083 5.891 5.891 0 0 0-.737-2.331Zm-5.087.561c-.617.546-1.282.76-2.063 1-.117 0-.195-.078-.156-.181 1.752-.909 2.376-1.649 2.999-2.778 0 0 .155-.118.188.085 0 .304-.349 1.329-.968 1.874Zm4.945 11.237a2.957 2.957 0 0 1-.937 1.553c-.346.346-.8.565-1.286.62a2.178 2.178 0 0 1-1.327-.62 2.955 2.955 0 0 1-.925-1.553.244.244 0 0 1 .064-.198.234.234 0 0 1 .193-.069h3.965a.226.226 0 0 1 .19.07c.05.053.073.125.063.197Zm-5.458-2.176a1.862 1.862 0 0 1-2.384-.245 1.98 1.98 0 0 1-.233-2.447c.207-.319.503-.566.848-.713a1.84 1.84 0 0 1 1.092-.11c.366.075.703.261.967.531a1.98 1.98 0 0 1 .408 2.114 1.931 1.931 0 0 1-.698.869v.001Zm8.495.005a1.86 1.86 0 0 1-2.381-.253 1.964 1.964 0 0 1-.547-1.366c0-.384.11-.76.32-1.079.207-.319.503-.567.849-.713a1.844 1.844 0 0 1 1.093-.108c.367.076.704.262.968.534a1.98 1.98 0 0 1 .4 2.117 1.932 1.932 0 0 1-.702.868Z",source:"https://bun.sh/press-kit",hex:"000000"},EB={title:"Deno",slug:"deno",get svg(){return ei+"Deno"+ti+this.path+si},path:"M1.105 18.02A11.9 11.9 0 0 1 0 12.985q0-.698.078-1.376a12 12 0 0 1 .231-1.34A12 12 0 0 1 4.025 4.02a12 12 0 0 1 5.46-2.771 12 12 0 0 1 3.428-.23c1.452.112 2.825.477 4.077 1.05a12 12 0 0 1 2.78 1.774 12.02 12.02 0 0 1 4.053 7.078A12 12 0 0 1 24 12.985q0 .454-.036.914a12 12 0 0 1-.728 3.305 12 12 0 0 1-2.38 3.875c-1.33 1.357-3.02 1.962-4.43 1.936a4.4 4.4 0 0 1-2.724-1.024c-.99-.853-1.391-1.83-1.53-2.919a5 5 0 0 1 .128-1.518c.105-.38.37-1.116.76-1.437-.455-.197-1.04-.624-1.226-.829-.045-.05-.04-.13 0-.183a.155.155 0 0 1 .177-.053c.392.134.869.267 1.372.35.66.111 1.484.25 2.317.292 2.03.1 4.153-.813 4.812-2.627s.403-3.609-1.96-4.685-3.454-2.356-5.363-3.128c-1.247-.505-2.636-.205-4.06.582-3.838 2.121-7.277 8.822-5.69 15.032a.191.191 0 0 1-.315.19 12 12 0 0 1-1.25-1.634 12 12 0 0 1-.769-1.404M11.57 6.087c.649-.051 1.214.501 1.31 1.236.13.979-.228 1.99-1.41 2.013-1.01.02-1.315-.997-1.248-1.614.066-.616.574-1.575 1.35-1.635",source:"https://github.com/denoland/docs/blob/5dee713844c7447f80acd4093caa9d350d80bf36/static/img/logo.svg",hex:"000000",guidelines:"https://deno.com/brand",license:{type:"MIT",url:"https://spdx.org/licenses/MIT"}},jB={title:"Docker",slug:"docker",get svg(){return ei+"Docker"+ti+this.path+si},path:"M13.983 11.078h2.119a.186.186 0 00.186-.185V9.006a.186.186 0 00-.186-.186h-2.119a.185.185 0 00-.185.185v1.888c0 .102.083.185.185.185m-2.954-5.43h2.118a.186.186 0 00.186-.186V3.574a.186.186 0 00-.186-.185h-2.118a.185.185 0 00-.185.185v1.888c0 .102.082.185.185.185m0 2.716h2.118a.187.187 0 00.186-.186V6.29a.186.186 0 00-.186-.185h-2.118a.185.185 0 00-.185.185v1.887c0 .102.082.185.185.186m-2.93 0h2.12a.186.186 0 00.184-.186V6.29a.185.185 0 00-.185-.185H8.1a.185.185 0 00-.185.185v1.887c0 .102.083.185.185.186m-2.964 0h2.119a.186.186 0 00.185-.186V6.29a.185.185 0 00-.185-.185H5.136a.186.186 0 00-.186.185v1.887c0 .102.084.185.186.186m5.893 2.715h2.118a.186.186 0 00.186-.185V9.006a.186.186 0 00-.186-.186h-2.118a.185.185 0 00-.185.185v1.888c0 .102.082.185.185.185m-2.93 0h2.12a.185.185 0 00.184-.185V9.006a.185.185 0 00-.184-.186h-2.12a.185.185 0 00-.184.185v1.888c0 .102.083.185.185.185m-2.964 0h2.119a.185.185 0 00.185-.185V9.006a.185.185 0 00-.184-.186h-2.12a.186.186 0 00-.186.186v1.887c0 .102.084.185.186.185m-2.92 0h2.12a.185.185 0 00.184-.185V9.006a.185.185 0 00-.184-.186h-2.12a.185.185 0 00-.184.185v1.888c0 .102.082.185.185.185M23.763 9.89c-.065-.051-.672-.51-1.954-.51-.338.001-.676.03-1.01.087-.248-1.7-1.653-2.53-1.716-2.566l-.344-.199-.226.327c-.284.438-.49.922-.612 1.43-.23.97-.09 1.882.403 2.661-.595.332-1.55.413-1.744.42H.751a.751.751 0 00-.75.748 11.376 11.376 0 00.692 4.062c.545 1.428 1.355 2.48 2.41 3.124 1.18.723 3.1 1.137 5.275 1.137.983.003 1.963-.086 2.93-.266a12.248 12.248 0 003.823-1.389c.98-.567 1.86-1.288 2.61-2.136 1.252-1.418 1.998-2.997 2.553-4.4h.221c1.372 0 2.215-.549 2.68-1.009.309-.293.55-.65.707-1.046l.098-.288Z",source:"https://www.docker.com/company/newsroom/media-resources",hex:"2496ED"},TB={title:"Go",slug:"go",get svg(){return ei+"Go"+ti+this.path+si},path:"M1.811 10.231c-.047 0-.058-.023-.035-.059l.246-.315c.023-.035.081-.058.128-.058h4.172c.046 0 .058.035.035.07l-.199.303c-.023.036-.082.07-.117.07zM.047 11.306c-.047 0-.059-.023-.035-.058l.245-.316c.023-.035.082-.058.129-.058h5.328c.047 0 .07.035.058.07l-.093.28c-.012.047-.058.07-.105.07zm2.828 1.075c-.047 0-.059-.035-.035-.07l.163-.292c.023-.035.07-.07.117-.07h2.337c.047 0 .07.035.07.082l-.023.28c0 .047-.047.082-.082.082zm12.129-2.36c-.736.187-1.239.327-1.963.514-.176.046-.187.058-.34-.117-.174-.199-.303-.327-.548-.444-.737-.362-1.45-.257-2.115.175-.795.514-1.204 1.274-1.192 2.22.011.935.654 1.706 1.577 1.835.795.105 1.46-.175 1.987-.77.105-.13.198-.27.315-.434H10.47c-.245 0-.304-.152-.222-.35.152-.362.432-.97.596-1.274a.315.315 0 01.292-.187h4.253c-.023.316-.023.631-.07.947a4.983 4.983 0 01-.958 2.29c-.841 1.11-1.94 1.8-3.33 1.986-1.145.152-2.209-.07-3.143-.77-.865-.655-1.356-1.52-1.484-2.595-.152-1.274.222-2.419.993-3.424.83-1.086 1.928-1.776 3.272-2.02 1.098-.2 2.15-.07 3.096.571.62.41 1.063.97 1.356 1.648.07.105.023.164-.117.2m3.868 6.461c-1.064-.024-2.034-.328-2.852-1.029a3.665 3.665 0 01-1.262-2.255c-.21-1.32.152-2.489.947-3.529.853-1.122 1.881-1.706 3.272-1.95 1.192-.21 2.314-.095 3.33.595.923.63 1.496 1.484 1.648 2.605.198 1.578-.257 2.863-1.344 3.962-.771.783-1.718 1.273-2.805 1.495-.315.06-.63.07-.934.106zm2.78-4.72c-.011-.153-.011-.27-.034-.387-.21-1.157-1.274-1.81-2.384-1.554-1.087.245-1.788.935-2.045 2.033-.21.912.234 1.835 1.075 2.21.643.28 1.285.244 1.905-.07.923-.48 1.425-1.228 1.484-2.233z",source:"https://blog.golang.org/go-brand",hex:"00ADD8",guidelines:"https://blog.golang.org/go-brand"},AB={title:"Node.js",slug:"nodedotjs",get svg(){return ei+"Node.js"+ti+this.path+si},path:"M11.998,24c-0.321,0-0.641-0.084-0.922-0.247l-2.936-1.737c-0.438-0.245-0.224-0.332-0.08-0.383 c0.585-0.203,0.703-0.25,1.328-0.604c0.065-0.037,0.151-0.023,0.218,0.017l2.256,1.339c0.082,0.045,0.197,0.045,0.272,0l8.795-5.076 c0.082-0.047,0.134-0.141,0.134-0.238V6.921c0-0.099-0.053-0.192-0.137-0.242l-8.791-5.072c-0.081-0.047-0.189-0.047-0.271,0 L3.075,6.68C2.99,6.729,2.936,6.825,2.936,6.921v10.15c0,0.097,0.054,0.189,0.139,0.235l2.409,1.392 c1.307,0.654,2.108-0.116,2.108-0.89V7.787c0-0.142,0.114-0.253,0.256-0.253h1.115c0.139,0,0.255,0.112,0.255,0.253v10.021 c0,1.745-0.95,2.745-2.604,2.745c-0.508,0-0.909,0-2.026-0.551L2.28,18.675c-0.57-0.329-0.922-0.945-0.922-1.604V6.921 c0-0.659,0.353-1.275,0.922-1.603l8.795-5.082c0.557-0.315,1.296-0.315,1.848,0l8.794,5.082c0.57,0.329,0.924,0.944,0.924,1.603 v10.15c0,0.659-0.354,1.273-0.924,1.604l-8.794,5.078C12.643,23.916,12.324,24,11.998,24z M19.099,13.993 c0-1.9-1.284-2.406-3.987-2.763c-2.731-0.361-3.009-0.548-3.009-1.187c0-0.528,0.235-1.233,2.258-1.233 c1.807,0,2.473,0.389,2.747,1.607c0.024,0.115,0.129,0.199,0.247,0.199h1.141c0.071,0,0.138-0.031,0.186-0.081 c0.048-0.054,0.074-0.123,0.067-0.196c-0.177-2.098-1.571-3.076-4.388-3.076c-2.508,0-4.004,1.058-4.004,2.833 c0,1.925,1.488,2.457,3.895,2.695c2.88,0.282,3.103,0.703,3.103,1.269c0,0.983-0.789,1.402-2.642,1.402 c-2.327,0-2.839-0.584-3.011-1.742c-0.02-0.124-0.126-0.215-0.253-0.215h-1.137c-0.141,0-0.254,0.112-0.254,0.253 c0,1.482,0.806,3.248,4.655,3.248C17.501,17.007,19.099,15.91,19.099,13.993z",source:"https://nodejs.org/en/about/branding",hex:"5FA04E",guidelines:"https://nodejs.org/en/about/branding"},MB={title:"npm",slug:"npm",get svg(){return ei+"npm"+ti+this.path+si},path:"M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z",source:"https://www.npmjs.com",hex:"CB3837",guidelines:"https://docs.npmjs.com/policies/logos-and-usage"},RB={title:"pnpm",slug:"pnpm",get svg(){return ei+"pnpm"+ti+this.path+si},path:"M0 0v7.5h7.5V0zm8.25 0v7.5h7.498V0zm8.25 0v7.5H24V0zM2 2h3.5v3.5H2zm8.25 0h3.498v3.5H10.25zm8.25 0H22v3.5h-3.5zM8.25 8.25v7.5h7.498v-7.5zm8.25 0v7.5H24v-7.5zm2 2H22v3.5h-3.5zM0 16.5V24h7.5v-7.5zm8.25 0V24h7.498v-7.5zm8.25 0V24H24v-7.5z",source:"https://pnpm.io/logos",hex:"F69220"},DB={title:"Python",slug:"python",get svg(){return ei+"Python"+ti+this.path+si},path:"M14.25.18l.9.2.73.26.59.3.45.32.34.34.25.34.16.33.1.3.04.26.02.2-.01.13V8.5l-.05.63-.13.55-.21.46-.26.38-.3.31-.33.25-.35.19-.35.14-.33.1-.3.07-.26.04-.21.02H8.77l-.69.05-.59.14-.5.22-.41.27-.33.32-.27.35-.2.36-.15.37-.1.35-.07.32-.04.27-.02.21v3.06H3.17l-.21-.03-.28-.07-.32-.12-.35-.18-.36-.26-.36-.36-.35-.46-.32-.59-.28-.73-.21-.88-.14-1.05-.05-1.23.06-1.22.16-1.04.24-.87.32-.71.36-.57.4-.44.42-.33.42-.24.4-.16.36-.1.32-.05.24-.01h.16l.06.01h8.16v-.83H6.18l-.01-2.75-.02-.37.05-.34.11-.31.17-.28.25-.26.31-.23.38-.2.44-.18.51-.15.58-.12.64-.1.71-.06.77-.04.84-.02 1.27.05zm-6.3 1.98l-.23.33-.08.41.08.41.23.34.33.22.41.09.41-.09.33-.22.23-.34.08-.41-.08-.41-.23-.33-.33-.22-.41-.09-.41.09zm13.09 3.95l.28.06.32.12.35.18.36.27.36.35.35.47.32.59.28.73.21.88.14 1.04.05 1.23-.06 1.23-.16 1.04-.24.86-.32.71-.36.57-.4.45-.42.33-.42.24-.4.16-.36.09-.32.05-.24.02-.16-.01h-8.22v.82h5.84l.01 2.76.02.36-.05.34-.11.31-.17.29-.25.25-.31.24-.38.2-.44.17-.51.15-.58.13-.64.09-.71.07-.77.04-.84.01-1.27-.04-1.07-.14-.9-.2-.73-.25-.59-.3-.45-.33-.34-.34-.25-.34-.16-.33-.1-.3-.04-.25-.02-.2.01-.13v-5.34l.05-.64.13-.54.21-.46.26-.38.3-.32.33-.24.35-.2.35-.14.33-.1.3-.06.26-.04.21-.02.13-.01h5.84l.69-.05.59-.14.5-.21.41-.28.33-.32.27-.35.2-.36.15-.36.1-.35.07-.32.04-.28.02-.21V6.07h2.09l.14.01zm-6.47 14.25l-.23.33-.08.41.08.41.23.33.33.23.41.08.41-.08.33-.23.23-.33.08-.41-.08-.41-.23-.33-.33-.23-.41-.08-.41.08z",source:"https://www.python.org/community/logos/",hex:"3776AB",guidelines:"https://www.python.org/community/logos/"},kw={title:"Rust",slug:"rust",get svg(){return ei+"Rust"+ti+this.path+si},path:"M23.8346 11.7033l-1.0073-.6236a13.7268 13.7268 0 00-.0283-.2936l.8656-.8069a.3483.3483 0 00-.1154-.578l-1.1066-.414a8.4958 8.4958 0 00-.087-.2856l.6904-.9587a.3462.3462 0 00-.2257-.5446l-1.1663-.1894a9.3574 9.3574 0 00-.1407-.2622l.49-1.0761a.3437.3437 0 00-.0274-.3361.3486.3486 0 00-.3006-.154l-1.1845.0416a6.7444 6.7444 0 00-.1873-.2268l.2723-1.153a.3472.3472 0 00-.417-.4172l-1.1532.2724a14.0183 14.0183 0 00-.2278-.1873l.0415-1.1845a.3442.3442 0 00-.49-.328l-1.076.491c-.0872-.0476-.1742-.0952-.2623-.1407l-.1903-1.1673A.3483.3483 0 0016.256.955l-.9597.6905a8.4867 8.4867 0 00-.2855-.086l-.414-1.1066a.3483.3483 0 00-.5781-.1154l-.8069.8666a9.2936 9.2936 0 00-.2936-.0284L12.2946.1683a.3462.3462 0 00-.5892 0l-.6236 1.0073a13.7383 13.7383 0 00-.2936.0284L9.9803.3374a.3462.3462 0 00-.578.1154l-.4141 1.1065c-.0962.0274-.1903.0567-.2855.086L7.744.955a.3483.3483 0 00-.5447.2258L7.009 2.348a9.3574 9.3574 0 00-.2622.1407l-1.0762-.491a.3462.3462 0 00-.49.328l.0416 1.1845a7.9826 7.9826 0 00-.2278.1873L3.8413 3.425a.3472.3472 0 00-.4171.4171l.2713 1.1531c-.0628.075-.1255.1509-.1863.2268l-1.1845-.0415a.3462.3462 0 00-.328.49l.491 1.0761a9.167 9.167 0 00-.1407.2622l-1.1662.1894a.3483.3483 0 00-.2258.5446l.6904.9587a13.303 13.303 0 00-.087.2855l-1.1065.414a.3483.3483 0 00-.1155.5781l.8656.807a9.2936 9.2936 0 00-.0283.2935l-1.0073.6236a.3442.3442 0 000 .5892l1.0073.6236c.008.0982.0182.1964.0283.2936l-.8656.8079a.3462.3462 0 00.1155.578l1.1065.4141c.0273.0962.0567.1914.087.2855l-.6904.9587a.3452.3452 0 00.2268.5447l1.1662.1893c.0456.088.0922.1751.1408.2622l-.491 1.0762a.3462.3462 0 00.328.49l1.1834-.0415c.0618.0769.1235.1528.1873.2277l-.2713 1.1541a.3462.3462 0 00.4171.4161l1.153-.2713c.075.0638.151.1255.2279.1863l-.0415 1.1845a.3442.3442 0 00.49.327l1.0761-.49c.087.0486.1741.0951.2622.1407l.1903 1.1662a.3483.3483 0 00.5447.2268l.9587-.6904a9.299 9.299 0 00.2855.087l.414 1.1066a.3452.3452 0 00.5781.1154l.8079-.8656c.0972.0111.1954.0203.2936.0294l.6236 1.0073a.3472.3472 0 00.5892 0l.6236-1.0073c.0982-.0091.1964-.0183.2936-.0294l.8069.8656a.3483.3483 0 00.578-.1154l.4141-1.1066a8.4626 8.4626 0 00.2855-.087l.9587.6904a.3452.3452 0 00.5447-.2268l.1903-1.1662c.088-.0456.1751-.0931.2622-.1407l1.0762.49a.3472.3472 0 00.49-.327l-.0415-1.1845a6.7267 6.7267 0 00.2267-.1863l1.1531.2713a.3472.3472 0 00.4171-.416l-.2713-1.1542c.0628-.0749.1255-.1508.1863-.2278l1.1845.0415a.3442.3442 0 00.328-.49l-.49-1.076c.0475-.0872.0951-.1742.1407-.2623l1.1662-.1893a.3483.3483 0 00.2258-.5447l-.6904-.9587.087-.2855 1.1066-.414a.3462.3462 0 00.1154-.5781l-.8656-.8079c.0101-.0972.0202-.1954.0283-.2936l1.0073-.6236a.3442.3442 0 000-.5892zm-6.7413 8.3551a.7138.7138 0 01.2986-1.396.714.714 0 11-.2997 1.396zm-.3422-2.3142a.649.649 0 00-.7715.5l-.3573 1.6685c-1.1035.501-2.3285.7795-3.6193.7795a8.7368 8.7368 0 01-3.6951-.814l-.3574-1.6684a.648.648 0 00-.7714-.499l-1.473.3158a8.7216 8.7216 0 01-.7613-.898h7.1676c.081 0 .1356-.0141.1356-.088v-2.536c0-.074-.0536-.0881-.1356-.0881h-2.0966v-1.6077h2.2677c.2065 0 1.1065.0587 1.394 1.2088.0901.3533.2875 1.5044.4232 1.8729.1346.413.6833 1.2381 1.2685 1.2381h3.5716a.7492.7492 0 00.1296-.0131 8.7874 8.7874 0 01-.8119.9526zM6.8369 20.024a.714.714 0 11-.2997-1.396.714.714 0 01.2997 1.396zM4.1177 8.9972a.7137.7137 0 11-1.304.5791.7137.7137 0 011.304-.579zm-.8352 1.9813l1.5347-.6824a.65.65 0 00.33-.8585l-.3158-.7147h1.2432v5.6025H3.5669a8.7753 8.7753 0 01-.2834-3.348zm6.7343-.5437V8.7836h2.9601c.153 0 1.0792.1772 1.0792.8697 0 .575-.7107.7815-1.2948.7815zm10.7574 1.4862c0 .2187-.008.4363-.0243.651h-.9c-.09 0-.1265.0586-.1265.1477v.413c0 .973-.5487 1.1846-1.0296 1.2382-.4576.0517-.9648-.1913-1.0275-.4717-.2704-1.5186-.7198-1.8436-1.4305-2.4034.8817-.5599 1.799-1.386 1.799-2.4915 0-1.1936-.819-1.9458-1.3769-2.3153-.7825-.5163-1.6491-.6195-1.883-.6195H5.4682a8.7651 8.7651 0 014.907-2.7699l1.0974 1.151a.648.648 0 00.9182.0213l1.227-1.1743a8.7753 8.7753 0 016.0044 4.2762l-.8403 1.8982a.652.652 0 00.33.8585l1.6178.7188c.0283.2875.0425.577.0425.8717zm-9.3006-9.5993a.7128.7128 0 11.984 1.0316.7137.7137 0 01-.984-1.0316zm8.3389 6.71a.7107.7107 0 01.9395-.3625.7137.7137 0 11-.9405.3635z",source:"https://www.rust-lang.org",hex:"000000",guidelines:"https://www.rust-lang.org/policies/media-guide",license:{type:"CC-BY-SA-4.0",url:"https://spdx.org/licenses/CC-BY-SA-4.0"}},OB={title:"Vite",slug:"vite",get svg(){return ei+"Vite"+ti+this.path+si},path:"M13.056 23.238a.57.57 0 0 1-1.02-.355v-5.202c0-.63-.512-1.143-1.144-1.143H5.148a.57.57 0 0 1-.464-.903l3.777-5.29c.54-.753 0-1.804-.93-1.804H.57a.574.574 0 0 1-.543-.746.6.6 0 0 1 .08-.157L5.008.78a.57.57 0 0 1 .467-.24h14.589a.57.57 0 0 1 .466.903l-3.778 5.29c-.54.755 0 1.806.93 1.806h5.745c.238 0 .424.138.513.322a.56.56 0 0 1-.063.603z",source:"https://github.com/voidzero-dev/community-design-resources/blob/55902097229cf01cf2a4ceb376f992f5cf306756/brand-assets/vite/vite-icon-color-bracketless.svg",hex:"9135FF"},LB={title:"Yarn",slug:"yarn",get svg(){return ei+"Yarn"+ti+this.path+si},path:"M12 0C5.375 0 0 5.375 0 12s5.375 12 12 12 12-5.375 12-12S18.625 0 12 0zm.768 4.105c.183 0 .363.053.525.157.125.083.287.185.755 1.154.31-.088.468-.042.551-.019.204.056.366.19.463.375.477.917.542 2.553.334 3.605-.241 1.232-.755 2.029-1.131 2.576.324.329.778.899 1.117 1.825.278.774.31 1.478.273 2.015a5.51 5.51 0 0 0 .602-.329c.593-.366 1.487-.917 2.553-.931.714-.009 1.269.445 1.353 1.103a1.23 1.23 0 0 1-.945 1.362c-.649.158-.95.278-1.821.843-1.232.797-2.539 1.242-3.012 1.39a1.686 1.686 0 0 1-.704.343c-.737.181-3.266.315-3.466.315h-.046c-.783 0-1.214-.241-1.45-.491-.658.329-1.51.19-2.122-.134a1.078 1.078 0 0 1-.58-1.153 1.243 1.243 0 0 1-.153-.195c-.162-.25-.528-.936-.454-1.946.056-.723.556-1.367.88-1.71a5.522 5.522 0 0 1 .408-2.256c.306-.727.885-1.348 1.32-1.737-.32-.537-.644-1.367-.329-2.21.227-.602.412-.936.82-1.08h-.005c.199-.074.389-.153.486-.259a3.418 3.418 0 0 1 2.298-1.103c.037-.093.079-.185.125-.283.31-.658.639-1.029 1.024-1.168a.94.94 0 0 1 .328-.06zm.006.7c-.507.016-1.001 1.519-1.001 1.519s-1.27-.204-2.266.871c-.199.218-.468.334-.746.44-.079.028-.176.023-.417.672-.371.991.625 2.094.625 2.094s-1.186.839-1.626 1.881c-.486 1.144-.338 2.261-.338 2.261s-.843.732-.899 1.487c-.051.663.139 1.2.343 1.515.227.343.51.176.51.176s-.561.653-.037.931c.477.25 1.283.394 1.71-.037.31-.31.371-1.001.486-1.283.028-.065.12.111.209.199.097.093.264.195.264.195s-.755.324-.445 1.066c.102.246.468.403 1.066.398.222-.005 2.664-.139 3.313-.296.375-.088.505-.283.505-.283s1.566-.431 2.998-1.357c.917-.598 1.293-.76 2.034-.936.612-.148.57-1.098-.241-1.084-.839.009-1.575.44-2.196.825-1.163.718-1.742.672-1.742.672l-.018-.032c-.079-.13.371-1.293-.134-2.678-.547-1.515-1.413-1.881-1.344-1.997.297-.5 1.038-1.297 1.334-2.78.176-.899.13-2.377-.269-3.151-.074-.144-.732.241-.732.241s-.616-1.371-.788-1.483a.271.271 0 0 0-.157-.046z",source:"https://github.com/yarnpkg/assets/blob/76d30ca2aebed5b73ea8131d972218fb860bd32d/yarn-kitten-circle.svg",hex:"2C8EBB",guidelines:"https://github.com/yarnpkg/assets/tree/76d30ca2aebed5b73ea8131d972218fb860bd32d",license:{type:"CC-BY-4.0",url:"https://spdx.org/licenses/CC-BY-4.0"}};function zB(e){const t=e.toLowerCase();return/\bvite\b/.test(t)?dn.vite:/\bcargo\s+/.test(t)?dn.cargo:/\brustc\b/.test(t)?dn.rust:/\bdotnet\b/.test(t)?dn.dotnet:/\bdocker(?:\s+compose|-compose|\s+)/.test(t)?dn.docker:/\bpython3?\b|\buvicorn\b|\bfastapi\b/.test(t)?dn.python:/\bgo\s+(run|test|build)\b|\bair\b/.test(t)?dn.go:/\bbun\b/.test(t)?dn.bun:/\bdeno\b/.test(t)?dn.deno:/\bpnpm\b/.test(t)?dn.pnpm:/\byarn\b/.test(t)?dn.yarn:/\bnpm\b/.test(t)?dn.npm:/\bnode\b/.test(t)?dn.node:dn.generic}const dn={bun:{kind:"bun",label:"Bun"},cargo:{kind:"cargo",label:"Cargo"},deno:{kind:"deno",label:"Deno"},dotnet:{kind:"dotnet",label:".NET"},docker:{kind:"docker",label:"Docker"},generic:{kind:"generic",label:"Process"},go:{kind:"go",label:"Go"},node:{kind:"node",label:"Node"},npm:{kind:"npm",label:"npm"},pnpm:{kind:"pnpm",label:"pnpm"},python:{kind:"python",label:"Python"},rust:{kind:"rust",label:"Rust"},vite:{kind:"vite",label:"Vite"},yarn:{kind:"yarn",label:"Yarn"}};function bx({command:e,compact:t}){const s=zB(e),n=BB[s.kind];return a.jsx("span",{"aria-label":`${s.label} process`,className:ae("inline-flex shrink-0 items-center justify-center rounded-md border bg-card shadow-sm dark:border-zinc-700/80 dark:bg-zinc-100",t?"size-6":"size-7",n?"border-border":"border-border bg-muted text-muted-foreground dark:bg-zinc-100 dark:text-zinc-700"),style:n?{color:`#${n.hex}`}:void 0,title:s.label,children:n?a.jsx("svg",{"aria-hidden":"true",className:t?"size-3.5":"size-4",fill:"currentColor",role:"img",viewBox:"0 0 24 24",children:a.jsx("path",{d:n.path})}):a.jsx(hl,{className:t?"size-3.5":"size-4"})})}const BB={bun:NB,cargo:kw,deno:EB,dotnet:CB,docker:jB,generic:null,go:TB,node:AB,npm:MB,pnpm:RB,python:DB,rust:kw,vite:OB,yarn:LB};function Un({className:e,...t}){return a.jsx("label",{className:ae("grid gap-1.5 text-xs font-medium text-muted-foreground",e),...t})}const IB=[{label:"npm",command:"npm run dev",description:"Node dev server"},{label:"pnpm",command:"pnpm dev",description:"pnpm dev server"},{label:"yarn",command:"yarn dev",description:"Yarn dev server"},{label:"bun",command:"bun dev",description:"Bun dev server"},{label:"Deno",command:"deno task dev",description:"Deno dev task"},{label:"Vite",badgeCommand:"vite",command:"npm run dev -- --host 127.0.0.1",description:"Vite app"},{label:"Go",command:"go run .",description:"Go app"},{label:"Rust",command:"cargo run",description:"Rust app"},{label:".NET",command:"dotnet watch run",description:".NET app"},{label:"Python",command:"python manage.py runserver",description:"Python app"},{label:"Docker",command:"docker compose up",description:"Docker Compose stack"}],Cw=[{value:"local",label:"Local",hint:"Run a command in a local working directory."},{value:"docker-compose",label:"Docker Compose",hint:"Bring up a service defined in a docker-compose.yml file."},{value:"ssh",label:"SSH (remote)",hint:"Run a command on a remote host using your local ~/.ssh/config + ssh-agent."}];function PB({result:e}){const t=[...e.stdout,...e.stderr].slice(0,4);return a.jsxs(Ve,{variant:e.ok?"default":"destructive",children:[a.jsx("div",{className:"font-medium",children:e.ok?"Command test passed":"Command test failed"}),a.jsx("div",{className:"mt-1 text-xs",children:e.message}),t.length?a.jsx("pre",{className:"mt-2 max-h-24 overflow-auto rounded-md bg-background/80 p-2 font-mono text-[11px] leading-4",children:t.join(`
|
|
81
|
-
`)}):null]})}function xx({active:e,baseUrl:t,compact:s=!1,onRefresh:n,onStarted:o,restartAction:l,solidStart:u=!1,targetLabel:h}){return e?a.jsxs(a.Fragment,{children:[a.jsx(tg,{compact:s,intent:"restart",icon:a.jsx(uu,{}),label:"Restart",action:l,targetLabel:h,url:`${t}/restart`,onRefresh:n,onSuccess:o}),a.jsx(tg,{compact:s,intent:"stop",icon:a.jsx(al,{}),label:"Stop",targetLabel:h,url:`${t}/stop`,onRefresh:n})]}):a.jsx(tg,{compact:s,intent:u?"startSolid":"start",icon:a.jsx(xr,{}),label:"Start",targetLabel:h,url:`${t}/start`,onRefresh:n,onSuccess:o})}function Uh(e,t,s){const n=s instanceof Error?s.message:String(s);return`${e} failed for ${t}: ${n}`}function tg({action:e,compact:t=!1,intent:s="neutral",icon:n,label:o,targetLabel:l,url:u,onRefresh:h,onSuccess:m}){const[d,p]=y.useState(!1),[g,x]=y.useState(null),{error:_,success:S}=Es();async function w(N={}){p(!0);try{e?await e():await mn(u,N),S(`${o} requested for ${l}.`),await h(),x(null),m?.()}catch(j){j instanceof BC?x(j.conflict):_(Uh(o,l,j))}finally{p(!1)}}const C=a.jsxs(Q,{"aria-label":o,className:`${HB[s]} ${t?"size-7":""}`.trim(),disabled:d,onClick:()=>w(),size:t?"icon":"sm",variant:"outline",children:[n,t?null:o]});return a.jsxs(a.Fragment,{children:[t?a.jsx(il,{label:o,children:C}):C,g?a.jsx($B,{busy:d,conflict:g,onCancel:()=>x(null),onKillAndStart:()=>w({strategy:"killHolder"}),targetLabel:l}):null]})}function $B({busy:e,conflict:t,onCancel:s,onKillAndStart:n,targetLabel:o}){const l=t.holder,u=`http://localhost:${t.port}/`;return a.jsx(Xn,{icon:a.jsx(PR,{}),onClose:e?()=>{}:s,title:`Port ${t.port} is already in use`,children:a.jsxs("div",{className:"space-y-3 p-4 text-sm",children:[a.jsxs("p",{children:[a.jsx("span",{className:"font-medium",children:o})," wants port"," ",a.jsx("span",{className:"font-mono",children:t.port}),", but it's already held by:"]}),a.jsx("pre",{className:"overflow-auto whitespace-pre-wrap rounded border border-border bg-background p-3 font-mono text-xs",children:l?`pid ${l.pid}${l.pgid?` (pgid ${l.pgid})`:""}
|
|
82
|
-
${l.command}`:"unknown process"}),a.jsxs("div",{className:"flex flex-wrap justify-end gap-2 pt-2",children:[a.jsx(Q,{onClick:s,size:"sm",type:"button",variant:"outline",disabled:e,children:"Cancel"}),a.jsxs(Q,{onClick:()=>window.open(u,"_blank","noopener,noreferrer"),size:"sm",type:"button",variant:"outline",disabled:e,children:[a.jsx(la,{}),"Open in browser"]}),a.jsx(Q,{className:"border-red-600 bg-red-600 text-white hover:bg-red-700",disabled:e||!l,onClick:n,size:"sm",type:"button",children:"Stop holder & start"})]})]})})}const HB={neutral:"",restart:"border-amber-600 bg-amber-600 text-white hover:bg-amber-700",start:"",startSolid:"border-emerald-600 bg-emerald-600 text-white hover:bg-emerald-700",stop:"border-red-600 bg-red-600 text-white hover:bg-red-700"};function UB({cwd:e,onRefresh:t,onSaved:s,initialService:n}){const{error:o,success:l}=Es(),u=!!n,[h,m]=y.useState(n?.kind??"local"),[d,p]=y.useState(n?.name??""),[g,x]=y.useState(n?.command??""),[_,S]=y.useState(n?.cwd??e),[w,C]=y.useState(n?.port?String(n.port):""),[N,j]=y.useState(n?.description??""),[E,A]=y.useState(n?.composeFile??""),[O,P]=y.useState(n?.composeService??""),[D,T]=y.useState(n?.host??""),[z,L]=y.useState(null),[I,$]=y.useState(!1);y.useEffect(()=>{L(null)},[g,_,w,h]);function U(){p(""),x(""),S(e),C(""),j(""),A(""),P(""),T(""),L(null)}async function W(B){B.preventDefault();try{const V={name:d,kind:h,cwd:_,port:w,description:N};(h==="local"||h==="ssh")&&(V.command=g),h==="docker-compose"&&(V.composeFile=E,V.composeService=O),h==="ssh"&&(V.host=D),await mn("/api/services",V),u||U(),l(u?`${d} updated.`:`${d} added.`),await t(),s?.()}catch(V){o(Uh(u?"Update service":"Add service",d||"service",V))}}async function G(){if(!g.trim()){o("Test command failed for service: command is required.");return}$(!0);try{L(await H6({command:g,cwd:_,port:w}))}catch(B){o(Uh("Test command",d||"service",B))}finally{$(!1)}}return{editing:u,kind:h,setKind:m,name:d,setName:p,command:g,setCommand:x,formCwd:_,setFormCwd:S,port:w,setPort:C,description:N,setDescription:j,composeFile:E,setComposeFile:A,composeService:O,setComposeService:P,host:D,setHost:T,testResult:z,testing:I,submit:W,testCommand:G}}function Nw({cwd:e,onRefresh:t,onSaved:s,initialService:n}){const{editing:o,kind:l,setKind:u,name:h,setName:m,command:d,setCommand:p,formCwd:g,setFormCwd:x,port:_,setPort:S,description:w,setDescription:C,composeFile:N,setComposeFile:j,composeService:E,setComposeService:A,host:O,setHost:P,testResult:D,testing:T,submit:z,testCommand:L}=UB({cwd:e,onRefresh:t,onSaved:s,initialService:n}),I=Cw.find(G=>G.value===l),$=l==="local"&&d.trim().length>0&&g.trim().length>0,U="grid gap-2 rounded-md border border-border bg-muted/30 p-3",W="px-1 text-[11px] font-semibold uppercase tracking-wide text-muted-foreground";return a.jsxs("form",{className:"grid gap-3",onSubmit:z,children:[a.jsxs("div",{className:"grid gap-3 sm:grid-cols-2",children:[a.jsxs("fieldset",{className:`${U} sm:col-span-2`,children:[a.jsx("legend",{className:W,children:"Step 1 · Service kind"}),a.jsx("div",{className:"grid grid-cols-3 gap-1.5",children:Cw.map(G=>a.jsx(Q,{className:"justify-center",disabled:o,onClick:()=>u(G.value),size:"sm",type:"button",variant:l===G.value?"default":"outline",children:G.label},G.value))}),a.jsx("p",{className:"text-[11px] text-muted-foreground",children:I.hint})]}),a.jsxs("div",{className:"grid gap-3 sm:col-start-1 sm:row-start-2 sm:self-start",children:[a.jsxs("fieldset",{className:U,children:[a.jsx("legend",{className:W,children:"Step 2 · Identity"}),a.jsxs(Un,{children:["Name",a.jsx(nt,{className:"h-8 text-sm",name:"name",onChange:G=>m(G.target.value),placeholder:"backend",readOnly:o,required:!0,value:h}),o?a.jsx("span",{className:"text-[11px] text-muted-foreground",children:"Name is the service key and can't be changed here."}):null]}),a.jsxs(Un,{children:["Description",a.jsx(nt,{className:"h-8 text-sm",name:"description",onChange:G=>C(G.target.value),placeholder:"API server",value:w})]})]}),a.jsxs("fieldset",{className:U,children:[a.jsx("legend",{className:W,children:"Step 4 · Networking (optional)"}),a.jsxs(Un,{children:["Port",a.jsx(nt,{className:"h-8 text-sm",inputMode:"numeric",name:"port",onChange:G=>S(G.target.value),placeholder:"3001",value:_})]})]})]}),l==="local"?a.jsxs("fieldset",{className:`${U} sm:col-start-2 sm:row-start-2 sm:self-start`,children:[a.jsx("legend",{className:W,children:"Step 3 · Local command"}),a.jsx("div",{className:"grid grid-cols-2 gap-1.5 sm:grid-cols-4",children:IB.map(G=>a.jsxs(Q,{className:"justify-start gap-1.5",onClick:()=>{p(G.command),C(G.description)},size:"sm",type:"button",variant:"outline",children:[a.jsx(bx,{command:G.badgeCommand??G.command,compact:!0}),a.jsx("span",{className:"truncate",children:G.label})]},G.label))}),a.jsxs(Un,{children:["Command",a.jsx(nt,{className:"h-8 font-mono text-sm",name:"command",onChange:G=>p(G.target.value),placeholder:"npm run dev",required:!0,value:d})]}),a.jsxs(Un,{children:["Working Directory",a.jsx(nt,{className:"h-8 font-mono text-sm",name:"cwd",onChange:G=>x(G.target.value),required:!0,value:g})]})]}):null,l==="docker-compose"?a.jsxs("fieldset",{className:`${U} sm:col-start-2 sm:row-start-2 sm:self-start`,children:[a.jsx("legend",{className:W,children:"Step 3 · Docker Compose target"}),a.jsxs(Un,{children:["Compose Service",a.jsx(nt,{className:"h-8 font-mono text-sm",name:"composeService",onChange:G=>A(G.target.value),placeholder:"api",required:!0,value:E})]}),a.jsxs(Un,{children:["Compose File (optional)",a.jsx(nt,{className:"h-8 font-mono text-sm",name:"composeFile",onChange:G=>j(G.target.value),placeholder:"docker-compose.yml",value:N})]}),a.jsxs(Un,{children:["Working Directory (where compose file lives)",a.jsx(nt,{className:"h-8 font-mono text-sm",name:"cwd",onChange:G=>x(G.target.value),required:!0,value:g})]})]}):null,l==="ssh"?a.jsxs("fieldset",{className:`${U} sm:col-start-2 sm:row-start-2 sm:self-start`,children:[a.jsx("legend",{className:W,children:"Step 3 · SSH connection"}),a.jsxs(Un,{children:["SSH Host (alias from ~/.ssh/config)",a.jsx(nt,{className:"h-8 font-mono text-sm",name:"host",onChange:G=>P(G.target.value),placeholder:"devbox",required:!0,value:O})]}),a.jsxs(Un,{children:["Remote Command",a.jsx(nt,{className:"h-8 font-mono text-sm",name:"command",onChange:G=>p(G.target.value),placeholder:"npm run dev",required:!0,value:d})]}),a.jsxs(Un,{children:["Remote Working Directory",a.jsx(nt,{className:"h-8 font-mono text-sm",name:"cwd",onChange:G=>x(G.target.value),placeholder:"/srv/app",required:!0,value:g})]}),a.jsxs(Ve,{variant:"muted",children:[a.jsx("div",{className:"font-medium",children:"SSH key handling"}),a.jsxs("div",{className:"mt-1 text-xs",children:["NoMoreIDE never stores key files. Add a ",a.jsxs("code",{children:["Host ",O||"<alias>"]})," entry to",a.jsx("code",{children:" ~/.ssh/config"})," with ",a.jsx("code",{children:"HostName"}),", ",a.jsx("code",{children:"User"}),", and"," ",a.jsx("code",{children:"IdentityFile ~/.ssh/your-key.pem"})," (chmod 0600). Make sure"," ",a.jsx("code",{children:"ssh-agent"})," is running or your key is loaded (",a.jsx("code",{children:"ssh-add ~/.ssh/your-key.pem"}),"). NoMoreIDE will run"," ",a.jsxs("code",{children:["ssh ",O||"<alias>"]})," using that config."]})]})]}):null]}),D?a.jsx(PB,{result:D}):null,a.jsxs("div",{className:"flex flex-wrap justify-end gap-2",children:[l==="local"?a.jsxs(Q,{disabled:T||!$,onClick:L,type:"button",variant:"outline",children:[a.jsx(hl,{}),T?"Testing...":"Test Command"]}):null,a.jsx(Q,{type:"submit",children:o?"Save Service":"Add Service"})]})]})}function n3({initialName:e="",initialServices:t=[],onSaved:s,onRefresh:n,originalName:o,services:l,submitLabel:u="Save Group"}){const{error:h,success:m}=Es();async function d(p){p.preventDefault();const g=p.currentTarget,x=new FormData(g),_=String(x.get("name")??""),S=x.getAll("services").map(w=>String(w)).filter(Boolean);try{await mn("/api/bundles",{name:_,originalName:o,services:S.join(",")}),g.reset(),m(`${_} group saved.`),await n(),s?.()}catch(w){h(Uh("Save group",_||"group",w))}}return a.jsxs("form",{className:"grid gap-2.5",onSubmit:d,children:[a.jsxs(Un,{children:["Group name",a.jsx(nt,{className:"h-8 text-sm",defaultValue:e,name:"name",placeholder:"full-stack",required:!0})]}),a.jsxs("fieldset",{className:"grid gap-1.5",children:[a.jsx("legend",{className:"text-xs font-medium",children:"Services"}),l.length?l.map(p=>a.jsxs("label",{className:"flex items-center gap-2 overflow-hidden rounded-md border border-border px-2.5 py-1.5 text-sm",children:[a.jsx("input",{className:"size-4 shrink-0 accent-primary",defaultChecked:t.includes(p.name),name:"services",type:"checkbox",value:p.name}),a.jsx(bx,{command:p.command??"",compact:!0}),a.jsxs("span",{className:"min-w-0 flex-1",children:[a.jsx("span",{className:"block truncate text-sm font-medium",children:p.name}),a.jsx("span",{className:"block truncate font-mono text-[11px] text-muted-foreground",children:p.command??p.kind??""})]})]},p.name)):a.jsx(Ve,{variant:"muted",children:"All services are already grouped, or none registered."})]}),a.jsx(Q,{className:"h-8",disabled:!l.length,type:"submit",children:u})]})}function FB({allServices:e,group:t,onRefresh:s,ports:n,services:o,health:l,statuses:u,timeline:h,selectedService:m,onSelectService:d,onDropService:p}){const[g,x]=y.useState(!1),[_,S]=y.useState(!1),[w,C]=y.useState(!1),N=o.some(A=>qc(u[A.name]?.state));function j(A){!p||!A.dataTransfer.types.includes(eu)||(A.preventDefault(),A.dataTransfer.dropEffect="copy",C(!0))}function E(A){if(!p)return;A.preventDefault(),C(!1);const O=A.dataTransfer.getData(eu);O&&p(O)}return a.jsxs("section",{className:ae("transition-colors",w&&"bg-primary/5 outline-dashed outline-2 -outline-offset-2 outline-primary/60"),onDragOver:j,onDragLeave:()=>C(!1),onDrop:E,children:[a.jsxs("div",{className:"flex items-center gap-1.5 bg-muted/35 px-3 py-1.5",children:[a.jsxs("button",{"aria-expanded":!_,className:"flex min-w-0 flex-1 cursor-pointer items-center gap-1.5 text-left",onClick:()=>S(A=>!A),type:"button",children:[a.jsx(Qn,{className:ae("size-3.5 shrink-0 text-muted-foreground transition-transform",_&&"-rotate-90")}),a.jsx("span",{className:"truncate text-sm font-medium",children:t.name}),t.services.length?a.jsx(Pe,{size:"small",variant:"secondary",children:t.services.length}):null]}),a.jsx(il,{label:"Edit group",children:a.jsx(Q,{"aria-expanded":g,"aria-label":`Edit ${t.name}`,className:"size-7",onClick:()=>x(A=>!A),size:"icon",type:"button",variant:"ghost",children:a.jsx(Kc,{})})}),a.jsx(xx,{active:N,baseUrl:`/api/bundles/${encodeURIComponent(t.name)}`,compact:!0,restartAction:async()=>{await mn(`/api/bundles/${encodeURIComponent(t.name)}/stop`,{}),await mn(`/api/bundles/${encodeURIComponent(t.name)}/start`,{})},solidStart:!0,targetLabel:`group ${t.name}`,onRefresh:s,onStarted:()=>{const A=o[0];A&&d(A.name)}})]}),g?a.jsx("div",{className:"border-t border-border bg-background/65 p-3",children:a.jsx(n3,{initialName:t.name,initialServices:t.services,onRefresh:s,onSaved:()=>x(!1),originalName:t.name,services:e,submitLabel:"Save Group"})}):null,_?null:a.jsx("div",{className:"divide-y divide-border border-t border-border bg-background/45",children:o.length?o.map(A=>a.jsx(i3,{service:A,status:u[A.name],health:l[A.name],ports:n,onRefresh:s,timeline:h,selected:m===A.name,onSelect:()=>d(A.name)},A.name)):a.jsx(Ve,{variant:"muted",className:"m-4",children:"This group does not match any registered services."})})]})}function i3({service:e,status:t,onRefresh:s,selected:n=!1,onSelect:o}){const l=t?.state??"stopped",u=qc(l),[h,m]=y.useState(!1);return a.jsxs("div",{"aria-selected":n,draggable:!0,onDragStart:d=>{d.dataTransfer.setData(eu,e.name),e.cwd&&t3(d.dataTransfer,e.cwd),d.dataTransfer.effectAllowed="copyMove",m(!0)},onDragEnd:()=>m(!1),className:ae("group grid cursor-pointer grid-cols-[1.75rem_minmax(0,1fr)_auto_auto] items-center gap-2 border-l-2 px-3 py-1.5 transition-colors",h&&"opacity-50",n?"border-l-primary bg-primary/10":"border-l-transparent hover:bg-muted"),onClick:o,role:"option",children:[a.jsx(bx,{command:e.command??""}),a.jsxs("div",{className:"min-w-0 flex-1",children:[a.jsx("div",{className:"truncate text-sm font-medium",children:e.name}),a.jsxs("div",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[a.jsx(qB,{kind:e.kind}),e.port?a.jsxs("span",{children:[":",e.port]}):null]})]}),a.jsx(vx,{state:l}),a.jsx("span",{className:"flex items-center gap-1",onClick:d=>d.stopPropagation(),children:a.jsx(xx,{active:u,baseUrl:`/api/services/${encodeURIComponent(e.name)}`,compact:!0,targetLabel:e.name,onRefresh:s,onStarted:o})})]})}const eu="application/x-nomoreide-service",Ew={local:{label:"local",className:"border-border bg-muted text-muted-foreground"},"docker-compose":{label:"docker",className:"border-sky-500/40 bg-sky-500/10 text-sky-700 dark:text-sky-300"},ssh:{label:"ssh",className:"border-violet-500/40 bg-violet-500/10 text-violet-700 dark:text-violet-300"}};function qB({kind:e}){const t=Ew[e??"local"]??Ew.local;return a.jsx("span",{className:ae("rounded border px-1 py-px text-[9px] font-semibold uppercase leading-none tracking-wide",t.className),children:t.label})}function qc(e){return e==="running"||e==="starting"}function VB(e){return`http://127.0.0.1:${e}`}function vx({state:e}){return a.jsx(Pe,{variant:e==="running"?"success":e==="exited"?"danger":e==="starting"?"warning":"outline",className:ae(e==="running"&&"font-mono"),children:e})}function GB({data:e}){const[t,s]=y.useState(!1),[n,o]=y.useState(()=>_w()),[l,u]=y.useState(""),[h,m]=y.useState([]),[d,p]=y.useState([]),[g,x]=y.useState(null),{sendToAgent:_}=At();y.useEffect(()=>{if(!t)return;let E=!0;return x(null),Promise.allSettled([PC(),HC(20)]).then(A=>{if(!E)return;const[O,P]=A;O.status==="fulfilled"&&m(O.value),P.status==="fulfilled"&&p(P.value),A.filter(T=>T.status==="rejected").length&&x("Some AI context could not be loaded. You can still send available context.")}),()=>{E=!1}},[t]);const S=y.useMemo(()=>WB(e),[e]),w=Hz(n),C=y.useMemo(()=>n.serviceNames.length+n.databaseNames.length+n.errorIds.length+n.repositoryPaths.length,[n]);function N(E,A){o(O=>{const P=O[E],D=P.includes(A)?P.filter(T=>T!==A):[...P,A];return{...O,[E]:D}})}function j(){w&&(_({prompt:Uz({dashboard:e,databases:h,incidents:d,note:l,selection:n}),source:{type:"workspace-context",label:"AI Diagnose"},label:Fz({note:l,selection:n})}),s(!1),u(""),o(_w()))}return a.jsxs(a.Fragment,{children:[a.jsxs("button",{"aria-label":"Open AI Diagnose",className:Ih(),onClick:()=>s(!0),title:"Open AI Diagnose",type:"button",children:[a.jsx("span",{className:Ph(),children:a.jsx(Tt,{className:"size-4"})}),a.jsx("span",{className:$h(),children:"Diagnose"})]}),t?a.jsx(Xn,{icon:a.jsx(Tt,{}),onClose:()=>s(!1),size:"xl",title:"AI Diagnose",children:a.jsxs("div",{className:"space-y-4",children:[a.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-2",children:[a.jsxs("div",{children:[a.jsx("div",{className:"text-sm font-medium",children:"Pick the context the agent should inspect"}),a.jsx("div",{className:"text-xs text-muted-foreground",children:"Combine services, databases, incidents, and repositories into one focused prompt."})]}),a.jsxs(Pe,{variant:C?"secondary":"outline",children:[C," selected"]})]}),g?a.jsx(Ve,{variant:"muted",children:g}):null,a.jsxs("div",{className:"grid min-h-0 gap-3 overflow-hidden lg:grid-cols-4",children:[a.jsx(Xd,{count:e.config.services.length,icon:a.jsx(RC,{}),title:"Services",children:a.jsx("div",{className:"grid gap-2",children:e.config.services.map(E=>{const A=n.serviceNames.includes(E.name),O=e.runtime.services[E.name],P=e.health[E.name];return a.jsxs(Zd,{selected:A,onClick:()=>N("serviceNames",E.name),children:[a.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[a.jsx("span",{className:"min-w-0 flex-1 truncate font-semibold",children:E.name}),a.jsx("span",{className:"shrink-0",children:a.jsx(vx,{state:O?.state??"stopped"})})]}),a.jsxs("span",{className:"mt-1 flex flex-wrap gap-1.5 text-[11px] text-muted-foreground",children:[E.kind?a.jsx("span",{children:E.kind}):null,E.port?a.jsxs("span",{children:[":",E.port]}):null,P?.status?a.jsx("span",{children:P.status}):null]})]},E.name)})})}),a.jsx(Xd,{count:h.length,icon:a.jsx(Yn,{}),title:"Databases",children:h.length?a.jsx("div",{className:"grid gap-2",children:h.map(E=>a.jsxs(Zd,{selected:n.databaseNames.includes(E.name),onClick:()=>N("databaseNames",E.name),children:[a.jsx("span",{className:"truncate font-semibold",children:E.name}),a.jsx("span",{className:"mt-1 block truncate text-[11px] text-muted-foreground",children:E.engine})]},E.name))}):a.jsx(jw,{text:"No database connections detected."})}),a.jsx(Xd,{count:d.length,icon:a.jsx(Eh,{}),title:"Error Inbox",children:d.length?a.jsx("div",{className:"grid gap-2",children:d.map(E=>a.jsxs(Zd,{selected:n.errorIds.includes(E.id),onClick:()=>N("errorIds",E.id),children:[a.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[a.jsx("span",{className:"min-w-0 flex-1 truncate font-semibold",children:E.title}),a.jsx(Pe,{appearance:"subtle",size:"small",variant:E.level==="error"?"danger":"secondary",children:E.level})]}),a.jsxs("span",{className:"mt-1 block min-w-0 truncate font-mono text-[11px] text-muted-foreground",children:[E.service," x",E.count]})]},E.id))}):a.jsx(jw,{text:"No recent incidents."})}),a.jsx(Xd,{count:S.length,icon:a.jsx(pn,{}),title:"Git Repositories",children:a.jsx("div",{className:"grid gap-2",children:S.map(E=>{const A=n.repositoryPaths.includes(E.path),O=E.path===(e.git.selectedRepository?.path??e.git.cwd),P=O?e.git.status?.files.length??0:void 0;return a.jsxs(Zd,{selected:A,onClick:()=>N("repositoryPaths",E.path),children:[a.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[a.jsx("span",{className:"min-w-0 flex-1 truncate font-semibold",children:E.name}),O?a.jsx(Pe,{className:"shrink-0",size:"small",variant:"outline",children:"current"}):null]}),a.jsx("span",{className:"mt-1 block min-w-0 truncate font-mono text-[11px] text-muted-foreground",children:E.path}),P!==void 0?a.jsx("span",{className:"mt-1 block truncate text-[11px] text-muted-foreground",children:P?`${P} changed file${P===1?"":"s"}`:"No changed files"}):null]},E.path)})})})]}),a.jsxs("label",{className:"block space-y-2",children:[a.jsx("span",{className:"text-sm font-medium",children:"Extra context"}),a.jsx("textarea",{className:"min-h-24 w-full resize-y rounded-md border border-border bg-background px-3 py-2 text-sm outline-none transition-colors placeholder:text-muted-foreground focus:border-foreground/40 focus:ring-2 focus:ring-ring",onChange:E=>u(E.target.value),placeholder:"Example: checkout is failing after login, API exits when DB is selected...",value:l})]}),a.jsxs("div",{className:"flex items-center justify-end gap-2",children:[a.jsx(Q,{onClick:()=>s(!1),type:"button",variant:"outline",children:"Cancel"}),a.jsxs(Q,{className:"gap-2",disabled:!w,onClick:j,type:"button",children:[a.jsx(dR,{className:"size-4"}),"Send"]})]})]})}):null]})}function Xd({children:e,count:t,icon:s,title:n}){return a.jsxs("section",{className:"flex max-h-[min(520px,calc(100vh-18rem))] min-h-0 min-w-0 flex-col space-y-2 rounded-md border border-border bg-background/45 p-3",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2 text-sm font-semibold",children:[a.jsx("span",{className:"flex size-6 items-center justify-center rounded-md border border-border bg-background text-muted-foreground [&_svg]:size-3.5",children:s}),a.jsx("span",{className:"min-w-0 flex-1 truncate",children:n}),a.jsx(Pe,{className:"shrink-0",size:"small",variant:"outline",children:t})]}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto pr-1",children:e})]})}function Zd({children:e,onClick:t,selected:s}){return a.jsx("button",{"aria-pressed":s,className:ae("min-h-16 min-w-0 rounded-md border p-3 text-left text-sm transition-colors",s?"border-primary bg-primary/10 text-foreground":"border-border bg-background hover:border-foreground/30 hover:bg-muted/60"),onClick:t,type:"button",children:e})}function jw({text:e}){return a.jsx("div",{className:"rounded-md border border-dashed border-border bg-background/60 px-3 py-3 text-xs text-muted-foreground",children:e})}function WB(e){return e.config.gitRepositories.length?e.config.gitRepositories:e.git.selectedRepository?[e.git.selectedRepository]:[{name:e.git.cwd.split("/").pop()??"repository",path:e.git.cwd}]}function KB(e){const t=ZB(e.capabilities);return t?`${e.prompt}
|
|
83
|
-
|
|
84
|
-
${t}`:e.prompt}function YB({workflowName:e,step:t,status:s,error:n,previousOutput:o,output:l}){const u=["Debug this stuck NoMoreIDE workflow step.","",`Workflow: ${e}`,`Step: ${t.title}`,`Step id: ${t.id}`,`Kind: ${t.kind}`,`Status: ${s}`,"","Step instruction:",QB(t)];return n?.trim()&&u.push("","Runner error:",n.trim()),o?.trim()&&u.push("","Previous step output:",o.trim()),l?.trim()&&u.push("","This step output:",l.trim()),u.push("","Diagnose why the step is stuck, name the smallest safe next action, and tell me whether I should retry, edit the workflow, or stop."),u.join(`
|
|
85
|
-
`)}function XB({workflowName:e,error:t}){return["Recover this NoMoreIDE PR workflow from the default branch guard.","",`Workflow: ${e}`,t?.trim()?`Runner error: ${t.trim()}`:"","","The user approved reading the minimum file diffs needed by clicking the workflow recovery button.","First call `nomoreide_git_status` to see the changed files and current branch.","Inspect only the minimum needed with `nomoreide_git_diff` to understand the change.","Then recommend a concise branch name based on the changes.","Do not create the branch or ask the user to create it; the workflow panel will ask the user and run the branch creation.","Reply with a short rationale and this exact parseable line:","BRANCH_NAME: <branch-name>"].filter(Boolean).join(`
|
|
86
|
-
`)}function ZB(e){if(!e)return"";const t=[Qd("Skills",e.skills),Qd("MCP servers",e.mcpServers),Qd("Plugins",e.plugins),Qd("Hooks/context",e.hooks)].filter(Boolean);return t.length?["Use these selected capabilities if they are available and relevant:",...t,"If a selected capability is unavailable, say so briefly and continue with the best fallback."].join(`
|
|
87
|
-
`):""}function Qd(e,t){const s=Array.from(new Set((t??[]).map(n=>n.trim()).filter(Boolean)));return s.length?`- ${e}: ${s.join(", ")}`:""}function QB(e){return e.kind==="agent"?e.prompt:e.kind==="gate"?`Gate: ${e.message}`:`Action: ${e.op}`}const Tw=/^[ \t>*_-]*WORKFLOW_STATUS:\s*(ok|blocked)\b[ \t]*[—–:-]?[ \t]*(.*)$/im,JB=/^[ \t>*_-]*BRANCH_NAME:\s*`?([A-Za-z0-9][A-Za-z0-9._/-]{0,127})`?\s*$/im,eI=/^[A-Za-z0-9][A-Za-z0-9._/-]{0,127}$/;function tI(e){const t=e.match(Tw);if(t){const s=t[1].toLowerCase()==="blocked",n=t[2]?.trim()||void 0;return{output:e.replace(Tw,"").trim(),blocked:s,reason:s?n:void 0}}return{output:e,blocked:sI(e)}}function sI(e){return/\bi can'?t\b|\bcannot\b|\bunable\b|\bnot able\b|\bwon'?t\b|\bwant me to\b|\bdid you mean\b|\bshould i\b|\bneed (?:you|your|more)\b|\binstead of merging\b/i.test(e)}function nI(e){const t=e.match(JB);if(t&&Aw(t[1]))return t[1];const s=e.match(/^#+\s*Recommended branch name\b([\s\S]*)$/im)?.[1]??e;for(const n of s.matchAll(/`([^`\s]+)`/g)){const o=n[1].trim();if(Aw(o))return o}return null}function Aw(e){return!(!eI.test(e)||e==="main"||e==="master"||e.includes("..")||e.endsWith(".")||e.endsWith("/"))}const iI="\n\nWhen you're finished, end your reply with a line that's exactly `WORKFLOW_STATUS: ok` if you completed this step, or `WORKFLOW_STATUS: blocked` followed by a short reason if you could NOT complete it or you need my input. The workflow runner reads this line.";function rI(e){const{sendToAgent:t,streaming:s,turns:n}=At(),[o,l]=y.useState(null),u=y.useRef(n);y.useEffect(()=>{u.current=n},[n]);const h=y.useRef(o);y.useEffect(()=>{h.current=o},[o]);const m=y.useRef(!1),d=y.useRef(!1),p=y.useRef(null),g=y.useRef(null),x=y.useRef(!1);y.useEffect(()=>{if(s)x.current=!0;else if(x.current&&g.current){const T=g.current;g.current=null,T()}},[s]);const _=y.useCallback(()=>new Promise(T=>{p.current=T}),[]),S=y.useCallback(()=>new Promise(T=>{let z=!1;const L=()=>{z||(z=!0,clearTimeout(I),g.current=null,T())};g.current=L;const I=setTimeout(()=>{x.current||L()},8e3)}),[]),w=y.useCallback(async T=>{const z=await Lp();return T==="committed"?z.files.length===0:T==="pushed"?z.ahead===0:!0},[]),C=y.useCallback(async(T,z,L)=>{if(T.op==="assert-pr-branch"){cI(await Lp());return}if(T.op==="push"){await cf();return}if(T.op==="checkout-default-and-pull"){await u6();return}if(T.op==="commit"){const I=await Lp();if(!I.files.length)throw new Error("Nothing to commit — the working tree is clean.");const $=lI(I.files);$.length&&await UC($),await FC(oI(L,z,I.files));return}throw new Error(`Unknown action: ${T.op}`)},[]),N=y.useCallback(async(T,z,L)=>{if(m.current)return;m.current=!0,d.current=!1;const I=L?.index??0,$=T.steps.map((B,V)=>L&&V<I?L.statuses[V]??"pending":"pending"),U=T.steps.map((B,V)=>L?.outputs[V]??""),W=(B,V,X)=>{$[B]=V,l(K=>K&&{...K,index:B,statuses:[...$],outputs:[...U],...X})};l({workflow:T,startedAt:L?.startedAt??Date.now(),index:I,statuses:[...$],outputs:[...U],error:null,outcome:"running"});const G=B=>{m.current=!1,l(V=>V&&{...V,outcome:B,endedAt:Date.now()})};for(let B=I;B<T.steps.length;B++){const V=T.steps[B];if(V.kind==="gate"){W(B,"waiting");const K=await _();if(p.current=null,K==="stop"){W(B,"skipped"),G("stopped");return}W(B,K==="skip"?"skipped":"done");continue}if(V.kind==="action"){W(B,"running");try{await C(V,B,U),W(B,"done"),e?.()}catch(K){if(V.op==="assert-pr-branch"){W(B,"blocked",{error:Mw(K)}),G("blocked");return}W(B,"failed",{error:Mw(K)}),G("failed");return}if(d.current)return G("stopped");continue}W(B,"running"),x.current=!1,t({prompt:KB(V)+iI,source:{type:"workflow",label:`${T.name}: ${V.title}`},mode:"send",label:V.title,autoApprove:z,background:!0,isolated:V.isolated}),await S(),e?.();const X=tI(aI(u.current));if(U[B]=X.output||"(no reply — see the dock)",X.blocked){W(B,"blocked",{error:X.reason?`Paused — ${X.reason} Fix it (Debug with AI in the dock if you like), then Resume workflow to retry this step.`:"Paused — this step needs your input. Fix it (Debug with AI in the dock if you like), then Resume workflow to retry this step."}),G("blocked");return}if(V.verify&&!await w(V.verify).catch(()=>!1)){W(B,"failed",{error:V.verify==="committed"?"Expected the working tree to be clean after this step, but it isn't. Stopping before the next step.":"Expected the branch to be pushed (no commits ahead), but it isn't. Stopping."}),G("failed");return}if(W(B,"done"),d.current)return G("stopped")}G("done")},[e,C,t,w,S,_]),j=y.useCallback((T,z=!1)=>N(T,z),[N]),E=y.useCallback((T=!1)=>{const z=h.current;!z||z.outcome==="running"||m.current||N(z.workflow,T,{index:z.index,statuses:z.statuses,outputs:z.outputs,startedAt:z.startedAt})},[N]),A=y.useCallback(()=>p.current?.("approve"),[]),O=y.useCallback(()=>p.current?.("skip"),[]),P=y.useCallback(()=>{d.current=!0,p.current?.("stop")},[]),D=y.useCallback(()=>{m.current||l(null)},[]);return{run:o,start:j,resume:E,approve:A,skip:O,stop:P,dismiss:D,isRunning:!!o&&o.outcome==="running"}}function Mw(e){return e instanceof Error?e.message:String(e)}function aI(e){for(let t=e.length-1;t>=0;t--)if(e[t].role==="assistant")return e[t].text.trim();return""}function oI(e,t,s){return e[t-1]?.trim()||dI(s)}function lI(e){return e.some(s=>s.index.trim()&&s.index!=="?")?[]:e.map(s=>s.path)}function cI(e){const t=e.branch.trim();if(!t)throw new Error("Create or switch to a feature branch before opening a PR — detached HEAD cannot be used as a PR branch.");if(!uI(t))return;const n=e.files.length>0?"Create or switch to a feature branch before committing these changes.":"Pull the default branch if needed, then create or switch to a feature branch.";throw new Error(`Create or switch to a feature branch before opening a PR. Current branch is ${t}. ${n}`)}function uI(e){return e==="main"||e==="master"}function dI(e){const t=e.map(s=>s.path.split("/").pop()||s.path);return t.length===1?`Update ${t[0]}`:t.length<=3?`Update ${t.join(", ")}`:`Update ${t.slice(0,3).join(", ")} +${t.length-3} more`}const r3=y.createContext(null);function hI({onRefresh:e,children:t}){const s=rI(e);return a.jsx(r3.Provider,{value:s,children:t})}function fI(){const e=y.useContext(r3);if(!e)throw new Error("useWorkflowRun must be used within a WorkflowRunProvider");return e}function mI({git:e,onRefresh:t}){const{sendToAgent:s}=At(),[n,o]=y.useState(!1),[l,u]=y.useState(null),[h,m]=y.useState(null),d=e.status,p=d?.branch||void 0,g=d?.files.length??0,x=d?.ahead??0,_=d?.behind??0;y.useEffect(()=>{if(!p){m(null);return}let C=!0;return l0(p,1).then(N=>{if(!C)return;const j=N[0];m(j&&pI(j)?j:null)}).catch(()=>{C&&m(null)}),()=>{C=!1}},[p]);const S=y.useMemo(()=>g>0||x>0||_>0||!!h,[g,x,_,h]);if(!d||!S)return null;async function w(){o(!0),u(null);try{await cf(),t?.()}catch(C){u(C instanceof Error?C.message:String(C))}finally{o(!1)}}return a.jsx("div",{className:"mx-auto mb-2 w-full max-w-4xl",children:a.jsxs("div",{className:"flex flex-wrap items-center gap-1.5 rounded-md border border-border bg-muted/40 px-2 py-1.5 text-[11px]",children:[a.jsxs("span",{className:"mr-0.5 inline-flex items-center gap-1 font-medium text-muted-foreground",children:[a.jsx(Tt,{className:"size-3.5"}),p??"git"]}),g>0?a.jsx(Jd,{icon:a.jsx(Z4,{className:"size-3"}),label:`Commit ${g} change${g===1?"":"s"}`,ai:!0,onClick:()=>s({prompt:zz({branch:p,fileCount:g}),source:{type:"git-situation",label:"uncommitted changes"},mode:"send",label:`Commit ${g} uncommitted change${g===1?"":"s"}`})}):null,_>0?a.jsx(Jd,{icon:a.jsx(Ob,{className:"size-3"}),label:`Pull ${_} behind`,ai:!0,onClick:()=>s({prompt:Bz({branch:p,behind:_,upstream:d.upstream}),source:{type:"git-situation",label:"behind upstream"},mode:"send",label:`Pull & rebase (${_} behind)`})}):null,x>0?a.jsx(Jd,{icon:n?a.jsx(ht,{className:"size-3 animate-spin"}):a.jsx(Pb,{className:"size-3"}),label:`Push ${x}`,disabled:n,onClick:()=>{w()}}):null,h?a.jsx(Jd,{danger:!0,icon:a.jsx(du,{className:"size-3"}),label:"Fix failing CI",ai:!0,onClick:()=>s({prompt:Iz({branch:p,runName:h.name,url:h.html_url}),source:{type:"git-situation",label:"failing CI"},mode:"send",label:`Fix failing CI: ${h.name}`})}):null,l?a.jsx("span",{className:"text-destructive",children:l}):null]})})}function Jd({ai:e,danger:t,disabled:s,icon:n,label:o,onClick:l}){return a.jsxs("button",{className:ae("inline-flex items-center gap-1 rounded-full border px-2 py-0.5 font-medium transition-colors disabled:opacity-50",t?"border-destructive/40 bg-destructive/5 text-destructive hover:bg-destructive/10":"border-border bg-background text-foreground hover:bg-muted"),disabled:s,onClick:l,type:"button",children:[n,o,e?a.jsx(Tt,{className:"size-3 opacity-70"}):null]})}function pI(e){return e.status==="completed"&&e.conclusion!==null&&!["success","neutral","skipped"].includes(e.conclusion)}const gI=new Set(["c","cpp","cs","go","java","js","jsx","kt","mjs","py","rs","swift","ts","tsx"]),bI=new Set([".env",".gitignore","components.json","dockerfile","package.json","tsconfig.json","vite.config.ts"]),xI=new Set(["conf","config","ini","toml","yaml","yml"]),vI=new Set(["csv","json","sql","xml"]),_I=new Set(["md","mdx","rst","txt"]),yI=new Set(["gif","jpeg","jpg","png","svg","webp"]),SI=new Set(["package-lock.json","pnpm-lock.yaml","yarn.lock"]),wI=new Set(["css","less","sass","scss"]);function kI(e){const t=e.split("/").pop()?.toLowerCase()??e.toLowerCase(),s=t.includes(".")?t.split(".").pop()??"":"";return SI.has(t)||t.endsWith(".lock")?"lock":CI(t)?"test":bI.has(t)||xI.has(s)?"config":wI.has(s)?"style":yI.has(s)?"image":_I.has(s)?"document":vI.has(s)?"data":gI.has(s)?"code":"generic"}function CI(e){return e.includes(".test.")||e.includes(".spec.")||e.endsWith("_test.go")}function _x({path:e,className:t}){const s=kI(e),n=NI[s];return a.jsx(n,{"aria-label":`${s} file`,className:ae("size-3.5 shrink-0",EI[s],t)})}const NI={code:vC,config:mR,data:Yn,document:yC,generic:SC,image:dM,lock:yM,style:PM,test:P4},EI={code:"text-sky-600",config:"text-zinc-600",data:"text-emerald-700",document:"text-blue-700",generic:"text-muted-foreground",image:"text-fuchsia-700",lock:"text-amber-700",style:"text-rose-700",test:"text-violet-700"};function jI(e){const t=e.lastIndexOf(".");return t>0?e.slice(t):""}function TI({onPick:e,onClose:t}){const[s,n]=y.useState(""),[o,l]=y.useState(null),[u,h]=y.useState(null),[m,d]=y.useState(!1),p=y.useRef(null),g=o?o.parent!==o.path:!1;return y.useEffect(()=>{function x(_){p.current&&!p.current.contains(_.target)&&t()}return document.addEventListener("mousedown",x),()=>document.removeEventListener("mousedown",x)},[t]),y.useEffect(()=>{let x=!0;return d(!0),h(null),VC(s,{files:!0}).then(_=>x&&l(_)).catch(_=>x&&h(_ instanceof Error?_.message:String(_))).finally(()=>x&&d(!1)),()=>{x=!1}},[s]),a.jsxs("div",{ref:p,className:"absolute bottom-full left-2 z-10 mb-2 w-[22rem] max-w-[calc(100vw-1rem)] overflow-hidden rounded-md border border-border bg-card shadow-lg",children:[a.jsxs("div",{className:"flex items-center gap-1 border-b border-border px-2 py-1.5",children:[a.jsx(Q,{"aria-label":"Parent folder",className:"size-7",disabled:!g,onClick:()=>o&&n(o.parent),size:"icon",type:"button",variant:"ghost",children:a.jsx(of,{})}),a.jsx("span",{className:"min-w-0 flex-1 truncate font-mono text-[11px] text-muted-foreground",title:o?.path,children:o?.path??"…"}),m?a.jsx(ht,{className:"size-3.5 animate-spin text-muted-foreground"}):null,o?a.jsxs(Q,{className:"h-7 px-2 text-[11px]",onClick:()=>e(o.path),size:"sm",title:"Attach this folder",type:"button",variant:"outline",children:[a.jsx(v4,{})," This folder"]}):null,a.jsx(Q,{"aria-label":"Close",className:"size-7",onClick:t,size:"icon",type:"button",variant:"ghost",children:a.jsx(Ns,{})})]}),a.jsx("div",{className:"max-h-64 overflow-auto p-1",children:u?a.jsx(Ve,{variant:"destructive",className:"m-1",children:u}):o&&o.entries.length===0?a.jsx(Ve,{variant:"muted",className:"m-1 text-center",children:"Empty folder."}):o?.entries.map(x=>{const _=x.isDir?"":jI(x.name);return a.jsxs("button",{className:"flex w-full items-center gap-1.5 rounded-sm px-2 py-1 text-left text-[12px] hover:bg-muted",onClick:()=>x.isDir?n(x.path):e(x.path),title:x.path,type:"button",children:[x.isDir?a.jsx(eo,{className:"size-3.5 shrink-0 text-amber-600"}):a.jsx(_x,{path:x.path}),a.jsx("span",{className:"min-w-0 flex-1 truncate",children:x.name}),_?a.jsx("span",{className:"shrink-0 rounded bg-muted px-1 font-mono text-[10px] text-muted-foreground",children:_}):null]},x.path)})})]})}const AI=/```options[^\n]*\n([\s\S]*?)```/g,MI=/```service[^\n]*\n([\s\S]*?)```/g,RI=/```sql-write[^\S\n]*([^\n]*)\n([\s\S]*?)```/g,DI=/```(?:options|service|sql-write)[^\n]*\n[\s\S]*$/;function OI(e){const t=[];let s=null,n=null,o=e.replace(AI,(l,u)=>{for(const h of u.split(`
|
|
88
|
-
`)){const m=h.replace(/^[-*\d.)\s]+/,"").trim();m&&t.push(m)}return""});return o=o.replace(MI,(l,u)=>{const h=u.split(`
|
|
89
|
-
`).map(m=>m.trim()).find(Boolean);return h&&(s=h),""}),o=o.replace(RI,(l,u,h)=>{const m=h.trim();return m&&(n={connection:u.trim(),sql:m}),""}),o=o.replace(DI,""),{body:o.trim(),options:t,service:s,sqlWrite:n}}function LI({options:e,disabled:t,onChoose:s}){return a.jsx("div",{className:"flex flex-wrap gap-1.5",children:e.map(n=>a.jsx(Q,{className:"h-7",disabled:t,onClick:()=>s(n),size:"sm",type:"button",variant:"outline",children:n},n))})}function zI({service:e,onStart:t,onOpen:s}){return a.jsxs("div",{className:"flex flex-wrap items-center gap-1.5 rounded-md border border-border bg-muted/30 px-2 py-1.5",children:[a.jsxs("span",{className:"text-[11px] text-muted-foreground",children:["Added ",a.jsx("span",{className:"font-medium text-foreground",children:e})]}),a.jsxs("div",{className:"ml-auto flex gap-1.5",children:[a.jsxs(Q,{className:"h-7",onClick:()=>t(e),size:"sm",type:"button",children:[a.jsx(xr,{})," Start"]}),s?a.jsxs(Q,{className:"h-7",onClick:()=>s(e),size:"sm",type:"button",variant:"outline",children:[a.jsx(la,{})," Open"]}):null]})]})}function BI({proposal:e,onOpen:t}){return a.jsxs("div",{className:"rounded-md border border-amber-500/30 bg-amber-500/[0.06] px-2.5 py-2",children:[a.jsxs("div",{className:"mb-1.5 flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[a.jsx(Yn,{className:"size-3.5 text-amber-600 dark:text-amber-400"}),a.jsxs("span",{children:["Proposed write",e.connection?a.jsxs(a.Fragment,{children:[" ","on ",a.jsx("span",{className:"font-medium text-foreground",children:e.connection})]}):null," ","— runs in the console after you unlock and preview."]})]}),a.jsx("pre",{className:"mb-2 max-h-28 overflow-auto rounded bg-background px-2 py-1.5 font-mono text-[11px] text-foreground",children:e.sql}),a.jsxs(Q,{className:"h-7 w-full bg-amber-600 text-white hover:bg-amber-600/90",onClick:()=>t(e.connection,e.sql),size:"sm",type:"button",children:[a.jsx(la,{})," Open in SQL console"]})]})}function yx(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var so=yx();function a3(e){so=e}var Ua={exec:()=>null};function qo(e){let t=[];return s=>{let n=Math.max(0,Math.min(3,s-1)),o=t[n];return o||(o=e(n),t[n]=o),o}}function ct(e,t=""){let s=typeof e=="string"?e:e.source,n={replace:(o,l)=>{let u=typeof l=="string"?l:l.source;return u=u.replace(Gs.caret,"$1"),s=s.replace(o,u),n},getRegex:()=>new RegExp(s,t)};return n}var II=((e="")=>{try{return!!new RegExp("(?<=1)(?<!1)"+e)}catch{return!1}})(),Gs={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:qo(e=>new RegExp(`^ {0,${e}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:qo(e=>new RegExp(`^ {0,${e}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),fencesBeginRegex:qo(e=>new RegExp(`^ {0,${e}}(?:\`\`\`|~~~)`)),headingBeginRegex:qo(e=>new RegExp(`^ {0,${e}}#`)),htmlBeginRegex:qo(e=>new RegExp(`^ {0,${e}}<(?:[a-z].*>|!--)`,"i")),blockquoteBeginRegex:qo(e=>new RegExp(`^ {0,${e}}>`))},PI=/^(?:[ \t]*(?:\n|$))+/,$I=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,HI=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,_u=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,UI=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Sx=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,o3=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,l3=ct(o3).replace(/bull/g,Sx).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),FI=ct(o3).replace(/bull/g,Sx).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),wx=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,qI=/^[^\n]+/,kx=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,VI=ct(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",kx).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),GI=ct(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Sx).getRegex(),xf="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Cx=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,WI=ct("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",Cx).replace("tag",xf).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),c3=ct(wx).replace("hr",_u).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",xf).getRegex(),KI=ct(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",c3).getRegex(),Nx={blockquote:KI,code:$I,def:VI,fences:HI,heading:UI,hr:_u,html:WI,lheading:l3,list:GI,newline:PI,paragraph:c3,table:Ua,text:qI},Rw=ct("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",_u).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",xf).getRegex(),YI={...Nx,lheading:FI,table:Rw,paragraph:ct(wx).replace("hr",_u).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Rw).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",xf).getRegex()},XI={...Nx,html:ct(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",Cx).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Ua,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ct(wx).replace("hr",_u).replace("heading",` *#{1,6} *[^
|
|
90
|
-
]`).replace("lheading",l3).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},ZI=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,QI=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,u3=/^( {2,}|\\)\n(?!\s*$)/,JI=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,bl=/[\p{P}\p{S}]/u,vf=/[\s\p{P}\p{S}]/u,Ex=/[^\s\p{P}\p{S}]/u,eP=ct(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,vf).getRegex(),d3=/(?!~)[\p{P}\p{S}]/u,tP=/(?!~)[\s\p{P}\p{S}]/u,sP=/(?:[^\s\p{P}\p{S}]|~)/u,nP=ct(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",II?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),h3=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,iP=ct(h3,"u").replace(/punct/g,bl).getRegex(),rP=ct(h3,"u").replace(/punct/g,d3).getRegex(),f3="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",aP=ct(f3,"gu").replace(/notPunctSpace/g,Ex).replace(/punctSpace/g,vf).replace(/punct/g,bl).getRegex(),oP=ct(f3,"gu").replace(/notPunctSpace/g,sP).replace(/punctSpace/g,tP).replace(/punct/g,d3).getRegex(),lP=ct("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Ex).replace(/punctSpace/g,vf).replace(/punct/g,bl).getRegex(),cP=ct(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,bl).getRegex(),uP="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",dP=ct(uP,"gu").replace(/notPunctSpace/g,Ex).replace(/punctSpace/g,vf).replace(/punct/g,bl).getRegex(),hP=ct(/\\(punct)/,"gu").replace(/punct/g,bl).getRegex(),fP=ct(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),mP=ct(Cx).replace("(?:-->|$)","-->").getRegex(),pP=ct("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",mP).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Fh=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,gP=ct(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Fh).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),m3=ct(/^!?\[(label)\]\[(ref)\]/).replace("label",Fh).replace("ref",kx).getRegex(),p3=ct(/^!?\[(ref)\](?:\[\])?/).replace("ref",kx).getRegex(),bP=ct("reflink|nolink(?!\\()","g").replace("reflink",m3).replace("nolink",p3).getRegex(),Dw=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,jx={_backpedal:Ua,anyPunctuation:hP,autolink:fP,blockSkip:nP,br:u3,code:QI,del:Ua,delLDelim:Ua,delRDelim:Ua,emStrongLDelim:iP,emStrongRDelimAst:aP,emStrongRDelimUnd:lP,escape:ZI,link:gP,nolink:p3,punctuation:eP,reflink:m3,reflinkSearch:bP,tag:pP,text:JI,url:Ua},xP={...jx,link:ct(/^!?\[(label)\]\((.*?)\)/).replace("label",Fh).getRegex(),reflink:ct(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Fh).getRegex()},O0={...jx,emStrongRDelimAst:oP,emStrongLDelim:rP,delLDelim:cP,delRDelim:dP,url:ct(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Dw).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:ct(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",Dw).getRegex()},vP={...O0,br:ct(u3).replace("{2,}","*").getRegex(),text:ct(O0.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},eh={normal:Nx,gfm:YI,pedantic:XI},vc={normal:jx,gfm:O0,breaks:vP,pedantic:xP},_P={"&":"&","<":"<",">":">",'"':""","'":"'"},Ow=e=>_P[e];function ji(e,t){if(t){if(Gs.escapeTest.test(e))return e.replace(Gs.escapeReplace,Ow)}else if(Gs.escapeTestNoEncode.test(e))return e.replace(Gs.escapeReplaceNoEncode,Ow);return e}function Lw(e){try{e=encodeURI(e).replace(Gs.percentDecode,"%")}catch{return null}return e}function zw(e,t){let s=e.replace(Gs.findPipe,(l,u,h)=>{let m=!1,d=u;for(;--d>=0&&h[d]==="\\";)m=!m;return m?"|":" |"}),n=s.split(Gs.splitPipe),o=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t)if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;o<n.length;o++)n[o]=n[o].trim().replace(Gs.slashPipe,"|");return n}function Qr(e,t,s){let n=e.length;if(n===0)return"";let o=0;for(;o<n&&e.charAt(n-o-1)===t;)o++;return e.slice(0,n-o)}function Bw(e){let t=e.split(`
|
|
91
|
-
`),s=t.length-1;for(;s>=0&&Gs.blankLine.test(t[s]);)s--;return t.length-s<=2?e:t.slice(0,s+1).join(`
|
|
92
|
-
`)}function yP(e,t){if(e.indexOf(t[1])===-1)return-1;let s=0;for(let n=0;n<e.length;n++)if(e[n]==="\\")n++;else if(e[n]===t[0])s++;else if(e[n]===t[1]&&(s--,s<0))return n;return s>0?-2:-1}function SP(e,t=0){let s=t,n="";for(let o of e)if(o===" "){let l=4-s%4;n+=" ".repeat(l),s+=l}else n+=o,s++;return n}function Iw(e,t,s,n,o){let l=t.href,u=t.title||null,h=e[1].replace(o.other.outputLinkReplace,"$1");n.state.inLink=!0;let m={type:e[0].charAt(0)==="!"?"image":"link",raw:s,href:l,title:u,text:h,tokens:n.inlineTokens(h)};return n.state.inLink=!1,m}function wP(e,t,s){let n=e.match(s.other.indentCodeCompensation);if(n===null)return t;let o=n[1];return t.split(`
|
|
93
|
-
`).map(l=>{let u=l.match(s.other.beginningSpace);if(u===null)return l;let[h]=u;return h.length>=o.length?l.slice(o.length):l}).join(`
|
|
94
|
-
`)}var qh=class{options;rules;lexer;constructor(e){this.options=e||so}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let s=this.options.pedantic?t[0]:Bw(t[0]),n=s.replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:s,codeBlockStyle:"indented",text:n}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let s=t[0],n=wP(s,t[3]||"",this.rules);return{type:"code",raw:s,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:n}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let s=t[2].trim();if(this.rules.other.endingHash.test(s)){let n=Qr(s,"#");(this.options.pedantic||!n||this.rules.other.endingSpaceChar.test(n))&&(s=n.trim())}return{type:"heading",raw:Qr(t[0],`
|
|
95
|
-
`),depth:t[1].length,text:s,tokens:this.lexer.inline(s)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:Qr(t[0],`
|
|
96
|
-
`)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let s=Qr(t[0],`
|
|
97
|
-
`).split(`
|
|
98
|
-
`),n="",o="",l=[];for(;s.length>0;){let u=!1,h=[],m;for(m=0;m<s.length;m++)if(this.rules.other.blockquoteStart.test(s[m]))h.push(s[m]),u=!0;else if(!u)h.push(s[m]);else break;s=s.slice(m);let d=h.join(`
|
|
99
|
-
`),p=d.replace(this.rules.other.blockquoteSetextReplace,`
|
|
100
|
-
$1`).replace(this.rules.other.blockquoteSetextReplace2,"");n=n?`${n}
|
|
101
|
-
${d}`:d,o=o?`${o}
|
|
102
|
-
${p}`:p;let g=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(p,l,!0),this.lexer.state.top=g,s.length===0)break;let x=l.at(-1);if(x?.type==="code")break;if(x?.type==="blockquote"){let _=x,S=_.raw+`
|
|
103
|
-
`+s.join(`
|
|
104
|
-
`),w=this.blockquote(S);l[l.length-1]=w,n=n.substring(0,n.length-_.raw.length)+w.raw,o=o.substring(0,o.length-_.text.length)+w.text;break}else if(x?.type==="list"){let _=x,S=_.raw+`
|
|
105
|
-
`+s.join(`
|
|
106
|
-
`),w=this.list(S);l[l.length-1]=w,n=n.substring(0,n.length-x.raw.length)+w.raw,o=o.substring(0,o.length-_.raw.length)+w.raw,s=S.substring(l.at(-1).raw.length).split(`
|
|
107
|
-
`);continue}}return{type:"blockquote",raw:n,tokens:l,text:o}}}list(e){let t=this.rules.block.list.exec(e);if(t){let s=t[1].trim(),n=s.length>1,o={type:"list",raw:"",ordered:n,start:n?+s.slice(0,-1):"",loose:!1,items:[]};s=n?`\\d{1,9}\\${s.slice(-1)}`:`\\${s}`,this.options.pedantic&&(s=n?s:"[*+-]");let l=this.rules.other.listItemRegex(s),u=!1;for(;e;){let m=!1,d="",p="";if(!(t=l.exec(e))||this.rules.block.hr.test(e))break;d=t[0],e=e.substring(d.length);let g=SP(t[2].split(`
|
|
108
|
-
`,1)[0],t[1].length),x=e.split(`
|
|
109
|
-
`,1)[0],_=!g.trim(),S=0;if(this.options.pedantic?(S=2,p=g.trimStart()):_?S=t[1].length+1:(S=g.search(this.rules.other.nonSpaceChar),S=S>4?1:S,p=g.slice(S),S+=t[1].length),_&&this.rules.other.blankLine.test(x)&&(d+=x+`
|
|
110
|
-
`,e=e.substring(x.length+1),m=!0),!m){let w=this.rules.other.nextBulletRegex(S),C=this.rules.other.hrRegex(S),N=this.rules.other.fencesBeginRegex(S),j=this.rules.other.headingBeginRegex(S),E=this.rules.other.htmlBeginRegex(S),A=this.rules.other.blockquoteBeginRegex(S);for(;e;){let O=e.split(`
|
|
111
|
-
`,1)[0],P;if(x=O,this.options.pedantic?(x=x.replace(this.rules.other.listReplaceNesting," "),P=x):P=x.replace(this.rules.other.tabCharGlobal," "),N.test(x)||j.test(x)||E.test(x)||A.test(x)||w.test(x)||C.test(x))break;if(P.search(this.rules.other.nonSpaceChar)>=S||!x.trim())p+=`
|
|
112
|
-
`+P.slice(S);else{if(_||g.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||N.test(g)||j.test(g)||C.test(g))break;p+=`
|
|
113
|
-
`+x}_=!x.trim(),d+=O+`
|
|
114
|
-
`,e=e.substring(O.length+1),g=P.slice(S)}}o.loose||(u?o.loose=!0:this.rules.other.doubleBlankLine.test(d)&&(u=!0)),o.items.push({type:"list_item",raw:d,task:!!this.options.gfm&&this.rules.other.listIsTask.test(p),loose:!1,text:p,tokens:[]}),o.raw+=d}let h=o.items.at(-1);if(h)h.raw=h.raw.trimEnd(),h.text=h.text.trimEnd();else return;o.raw=o.raw.trimEnd();for(let m of o.items){this.lexer.state.top=!1,m.tokens=this.lexer.blockTokens(m.text,[]);let d=m.tokens[0];if(m.task&&(d?.type==="text"||d?.type==="paragraph")){m.text=m.text.replace(this.rules.other.listReplaceTask,""),d.raw=d.raw.replace(this.rules.other.listReplaceTask,""),d.text=d.text.replace(this.rules.other.listReplaceTask,"");for(let g=this.lexer.inlineQueue.length-1;g>=0;g--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[g].src)){this.lexer.inlineQueue[g].src=this.lexer.inlineQueue[g].src.replace(this.rules.other.listReplaceTask,"");break}let p=this.rules.other.listTaskCheckbox.exec(m.raw);if(p){let g={type:"checkbox",raw:p[0]+" ",checked:p[0]!=="[ ]"};m.checked=g.checked,o.loose?m.tokens[0]&&["paragraph","text"].includes(m.tokens[0].type)&&"tokens"in m.tokens[0]&&m.tokens[0].tokens?(m.tokens[0].raw=g.raw+m.tokens[0].raw,m.tokens[0].text=g.raw+m.tokens[0].text,m.tokens[0].tokens.unshift(g)):m.tokens.unshift({type:"paragraph",raw:g.raw,text:g.raw,tokens:[g]}):m.tokens.unshift(g)}}else m.task&&(m.task=!1);if(!o.loose){let p=m.tokens.filter(x=>x.type==="space"),g=p.length>0&&p.some(x=>this.rules.other.anyLine.test(x.raw));o.loose=g}}if(o.loose)for(let m of o.items){m.loose=!0;for(let d of m.tokens)d.type==="text"&&(d.type="paragraph")}return o}}html(e){let t=this.rules.block.html.exec(e);if(t){let s=Bw(t[0]);return{type:"html",block:!0,raw:s,pre:t[1]==="pre"||t[1]==="script"||t[1]==="style",text:s}}}def(e){let t=this.rules.block.def.exec(e);if(t){let s=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),n=t[2]?t[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",o=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:s,raw:Qr(t[0],`
|
|
115
|
-
`),href:n,title:o}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let s=zw(t[1]),n=t[2].replace(this.rules.other.tableAlignChars,"").split("|"),o=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,"").split(`
|
|
116
|
-
`):[],l={type:"table",raw:Qr(t[0],`
|
|
117
|
-
`),header:[],align:[],rows:[]};if(s.length===n.length){for(let u of n)this.rules.other.tableAlignRight.test(u)?l.align.push("right"):this.rules.other.tableAlignCenter.test(u)?l.align.push("center"):this.rules.other.tableAlignLeft.test(u)?l.align.push("left"):l.align.push(null);for(let u=0;u<s.length;u++)l.header.push({text:s[u],tokens:this.lexer.inline(s[u]),header:!0,align:l.align[u]});for(let u of o)l.rows.push(zw(u,l.header.length).map((h,m)=>({text:h,tokens:this.lexer.inline(h),header:!1,align:l.align[m]})));return l}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t){let s=t[1].trim();return{type:"heading",raw:Qr(t[0],`
|
|
118
|
-
`),depth:t[2].charAt(0)==="="?1:2,text:s,tokens:this.lexer.inline(s)}}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let s=t[1].charAt(t[1].length-1)===`
|
|
119
|
-
`?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:s,tokens:this.lexer.inline(s)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let s=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(s)){if(!this.rules.other.endAngleBracket.test(s))return;let l=Qr(s.slice(0,-1),"\\");if((s.length-l.length)%2===0)return}else{let l=yP(t[2],"()");if(l===-2)return;if(l>-1){let u=(t[0].indexOf("!")===0?5:4)+t[1].length+l;t[2]=t[2].substring(0,l),t[0]=t[0].substring(0,u).trim(),t[3]=""}}let n=t[2],o="";if(this.options.pedantic){let l=this.rules.other.pedanticHrefTitle.exec(n);l&&(n=l[1],o=l[3])}else o=t[3]?t[3].slice(1,-1):"";return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(s)?n=n.slice(1):n=n.slice(1,-1)),Iw(t,{href:n&&n.replace(this.rules.inline.anyPunctuation,"$1"),title:o&&o.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer,this.rules)}}reflink(e,t){let s;if((s=this.rules.inline.reflink.exec(e))||(s=this.rules.inline.nolink.exec(e))){let n=(s[2]||s[1]).replace(this.rules.other.multipleSpaceGlobal," "),o=t[n.toLowerCase()];if(!o){let l=s[0].charAt(0);return{type:"text",raw:l,text:l}}return Iw(s,o,s[0],this.lexer,this.rules)}}emStrong(e,t,s=""){let n=this.rules.inline.emStrongLDelim.exec(e);if(!(!n||!n[1]&&!n[2]&&!n[3]&&!n[4]||n[4]&&s.match(this.rules.other.unicodeAlphaNumeric))&&(!(n[1]||n[3])||!s||this.rules.inline.punctuation.exec(s))){let o=[...n[0]].length-1,l,u,h=o,m=0,d=n[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(d.lastIndex=0,t=t.slice(-1*e.length+o);(n=d.exec(t))!==null;){if(l=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!l)continue;if(u=[...l].length,n[3]||n[4]){h+=u;continue}else if((n[5]||n[6])&&o%3&&!((o+u)%3)){m+=u;continue}if(h-=u,h>0)continue;u=Math.min(u,u+h+m);let p=[...n[0]][0].length,g=e.slice(0,o+n.index+p+u);if(Math.min(o,u)%2){let _=g.slice(1,-1);return{type:"em",raw:g,text:_,tokens:this.lexer.inlineTokens(_)}}let x=g.slice(2,-2);return{type:"strong",raw:g,text:x,tokens:this.lexer.inlineTokens(x)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let s=t[2].replace(this.rules.other.newLineCharGlobal," "),n=this.rules.other.nonSpaceChar.test(s),o=this.rules.other.startingSpaceChar.test(s)&&this.rules.other.endingSpaceChar.test(s);return n&&o&&(s=s.substring(1,s.length-1)),{type:"codespan",raw:t[0],text:s}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e,t,s=""){let n=this.rules.inline.delLDelim.exec(e);if(n&&(!n[1]||!s||this.rules.inline.punctuation.exec(s))){let o=[...n[0]].length-1,l,u,h=o,m=this.rules.inline.delRDelim;for(m.lastIndex=0,t=t.slice(-1*e.length+o);(n=m.exec(t))!==null;){if(l=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!l||(u=[...l].length,u!==o))continue;if(n[3]||n[4]){h+=u;continue}if(h-=u,h>0)continue;u=Math.min(u,u+h);let d=[...n[0]][0].length,p=e.slice(0,o+n.index+d+u),g=p.slice(o,-o);return{type:"del",raw:p,text:g,tokens:this.lexer.inlineTokens(g)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let s,n;return t[2]==="@"?(s=t[1],n="mailto:"+s):(s=t[1],n=s),{type:"link",raw:t[0],text:s,href:n,tokens:[{type:"text",raw:s,text:s}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let s,n;if(t[2]==="@")s=t[0],n="mailto:"+s;else{let o;do o=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??"";while(o!==t[0]);s=t[0],t[1]==="www."?n="http://"+t[0]:n=t[0]}return{type:"link",raw:t[0],text:s,href:n,tokens:[{type:"text",raw:s,text:s}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let s=this.lexer.state.inRawBlock;return{type:"text",raw:t[0],text:t[0],escaped:s}}}},di=class L0{tokens;options;state;inlineQueue;tokenizer;constructor(t){this.tokens=[],this.tokens.links=Object.create(null),this.options=t||so,this.options.tokenizer=this.options.tokenizer||new qh,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let s={other:Gs,block:eh.normal,inline:vc.normal};this.options.pedantic?(s.block=eh.pedantic,s.inline=vc.pedantic):this.options.gfm&&(s.block=eh.gfm,this.options.breaks?s.inline=vc.breaks:s.inline=vc.gfm),this.tokenizer.rules=s}static get rules(){return{block:eh,inline:vc}}static lex(t,s){return new L0(s).lex(t)}static lexInline(t,s){return new L0(s).inlineTokens(t)}lex(t){t=t.replace(Gs.carriageReturn,`
|
|
120
|
-
`),this.blockTokens(t,this.tokens);for(let s=0;s<this.inlineQueue.length;s++){let n=this.inlineQueue[s];this.inlineTokens(n.src,n.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(t,s=[],n=!1){this.tokenizer.lexer=this,this.options.pedantic&&(t=t.replace(Gs.tabCharGlobal," ").replace(Gs.spaceLine,""));let o=1/0;for(;t;){if(t.length<o)o=t.length;else{this.infiniteLoopError(t.charCodeAt(0));break}let l;if(this.options.extensions?.block?.some(h=>(l=h.call({lexer:this},t,s))?(t=t.substring(l.raw.length),s.push(l),!0):!1))continue;if(l=this.tokenizer.space(t)){t=t.substring(l.raw.length);let h=s.at(-1);l.raw.length===1&&h!==void 0?h.raw+=`
|
|
121
|
-
`:s.push(l);continue}if(l=this.tokenizer.code(t)){t=t.substring(l.raw.length);let h=s.at(-1);h?.type==="paragraph"||h?.type==="text"?(h.raw+=(h.raw.endsWith(`
|
|
122
|
-
`)?"":`
|
|
123
|
-
`)+l.raw,h.text+=`
|
|
124
|
-
`+l.text,this.inlineQueue.at(-1).src=h.text):s.push(l);continue}if(l=this.tokenizer.fences(t)){t=t.substring(l.raw.length),s.push(l);continue}if(l=this.tokenizer.heading(t)){t=t.substring(l.raw.length),s.push(l);continue}if(l=this.tokenizer.hr(t)){t=t.substring(l.raw.length),s.push(l);continue}if(l=this.tokenizer.blockquote(t)){t=t.substring(l.raw.length),s.push(l);continue}if(l=this.tokenizer.list(t)){t=t.substring(l.raw.length),s.push(l);continue}if(l=this.tokenizer.html(t)){t=t.substring(l.raw.length),s.push(l);continue}if(l=this.tokenizer.def(t)){t=t.substring(l.raw.length);let h=s.at(-1);h?.type==="paragraph"||h?.type==="text"?(h.raw+=(h.raw.endsWith(`
|
|
125
|
-
`)?"":`
|
|
126
|
-
`)+l.raw,h.text+=`
|
|
127
|
-
`+l.raw,this.inlineQueue.at(-1).src=h.text):this.tokens.links[l.tag]||(this.tokens.links[l.tag]={href:l.href,title:l.title},s.push(l));continue}if(l=this.tokenizer.table(t)){t=t.substring(l.raw.length),s.push(l);continue}if(l=this.tokenizer.lheading(t)){t=t.substring(l.raw.length),s.push(l);continue}let u=t;if(this.options.extensions?.startBlock){let h=1/0,m=t.slice(1),d;this.options.extensions.startBlock.forEach(p=>{d=p.call({lexer:this},m),typeof d=="number"&&d>=0&&(h=Math.min(h,d))}),h<1/0&&h>=0&&(u=t.substring(0,h+1))}if(this.state.top&&(l=this.tokenizer.paragraph(u))){let h=s.at(-1);n&&h?.type==="paragraph"?(h.raw+=(h.raw.endsWith(`
|
|
128
|
-
`)?"":`
|
|
129
|
-
`)+l.raw,h.text+=`
|
|
130
|
-
`+l.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=h.text):s.push(l),n=u.length!==t.length,t=t.substring(l.raw.length);continue}if(l=this.tokenizer.text(t)){t=t.substring(l.raw.length);let h=s.at(-1);h?.type==="text"?(h.raw+=(h.raw.endsWith(`
|
|
131
|
-
`)?"":`
|
|
132
|
-
`)+l.raw,h.text+=`
|
|
133
|
-
`+l.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=h.text):s.push(l);continue}if(t){this.infiniteLoopError(t.charCodeAt(0));break}}return this.state.top=!0,s}inline(t,s=[]){return this.inlineQueue.push({src:t,tokens:s}),s}inlineTokens(t,s=[]){this.tokenizer.lexer=this;let n=t,o=null;if(this.tokens.links){let d=Object.keys(this.tokens.links);if(d.length>0)for(;(o=this.tokenizer.rules.inline.reflinkSearch.exec(n))!==null;)d.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(n=n.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(o=this.tokenizer.rules.inline.anyPunctuation.exec(n))!==null;)n=n.slice(0,o.index)+"++"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let l;for(;(o=this.tokenizer.rules.inline.blockSkip.exec(n))!==null;)l=o[2]?o[2].length:0,n=n.slice(0,o.index+l)+"["+"a".repeat(o[0].length-l-2)+"]"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let u=!1,h="",m=1/0;for(;t;){if(t.length<m)m=t.length;else{this.infiniteLoopError(t.charCodeAt(0));break}u||(h=""),u=!1;let d;if(this.options.extensions?.inline?.some(g=>(d=g.call({lexer:this},t,s))?(t=t.substring(d.raw.length),s.push(d),!0):!1))continue;if(d=this.tokenizer.escape(t)){t=t.substring(d.raw.length),s.push(d);continue}if(d=this.tokenizer.tag(t)){t=t.substring(d.raw.length),s.push(d);continue}if(d=this.tokenizer.link(t)){t=t.substring(d.raw.length),s.push(d);continue}if(d=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(d.raw.length);let g=s.at(-1);d.type==="text"&&g?.type==="text"?(g.raw+=d.raw,g.text+=d.text):s.push(d);continue}if(d=this.tokenizer.emStrong(t,n,h)){t=t.substring(d.raw.length),s.push(d);continue}if(d=this.tokenizer.codespan(t)){t=t.substring(d.raw.length),s.push(d);continue}if(d=this.tokenizer.br(t)){t=t.substring(d.raw.length),s.push(d);continue}if(d=this.tokenizer.del(t,n,h)){t=t.substring(d.raw.length),s.push(d);continue}if(d=this.tokenizer.autolink(t)){t=t.substring(d.raw.length),s.push(d);continue}if(!this.state.inLink&&(d=this.tokenizer.url(t))){t=t.substring(d.raw.length),s.push(d);continue}let p=t;if(this.options.extensions?.startInline){let g=1/0,x=t.slice(1),_;this.options.extensions.startInline.forEach(S=>{_=S.call({lexer:this},x),typeof _=="number"&&_>=0&&(g=Math.min(g,_))}),g<1/0&&g>=0&&(p=t.substring(0,g+1))}if(d=this.tokenizer.inlineText(p)){t=t.substring(d.raw.length),d.raw.slice(-1)!=="_"&&(h=d.raw.slice(-1)),u=!0;let g=s.at(-1);g?.type==="text"?(g.raw+=d.raw,g.text+=d.text):s.push(d);continue}if(t){this.infiniteLoopError(t.charCodeAt(0));break}}return s}infiniteLoopError(t){let s="Infinite loop on byte: "+t;if(this.options.silent)console.error(s);else throw new Error(s)}},Vh=class{options;parser;constructor(e){this.options=e||so}space(e){return""}code({text:e,lang:t,escaped:s}){let n=(t||"").match(Gs.notSpaceStart)?.[0],o=e.replace(Gs.endingNewline,"")+`
|
|
134
|
-
`;return n?'<pre><code class="language-'+ji(n)+'">'+(s?o:ji(o,!0))+`</code></pre>
|
|
135
|
-
`:"<pre><code>"+(s?o:ji(o,!0))+`</code></pre>
|
|
136
|
-
`}blockquote({tokens:e}){return`<blockquote>
|
|
137
|
-
${this.parser.parse(e)}</blockquote>
|
|
138
|
-
`}html({text:e}){return e}def(e){return""}heading({tokens:e,depth:t}){return`<h${t}>${this.parser.parseInline(e)}</h${t}>
|
|
139
|
-
`}hr(e){return`<hr>
|
|
140
|
-
`}list(e){let t=e.ordered,s=e.start,n="";for(let u=0;u<e.items.length;u++){let h=e.items[u];n+=this.listitem(h)}let o=t?"ol":"ul",l=t&&s!==1?' start="'+s+'"':"";return"<"+o+l+`>
|
|
141
|
-
`+n+"</"+o+`>
|
|
142
|
-
`}listitem(e){return`<li>${this.parser.parse(e.tokens)}</li>
|
|
143
|
-
`}checkbox({checked:e}){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:e}){return`<p>${this.parser.parseInline(e)}</p>
|
|
144
|
-
`}table(e){let t="",s="";for(let o=0;o<e.header.length;o++)s+=this.tablecell(e.header[o]);t+=this.tablerow({text:s});let n="";for(let o=0;o<e.rows.length;o++){let l=e.rows[o];s="";for(let u=0;u<l.length;u++)s+=this.tablecell(l[u]);n+=this.tablerow({text:s})}return n&&(n=`<tbody>${n}</tbody>`),`<table>
|
|
145
|
-
<thead>
|
|
146
|
-
`+t+`</thead>
|
|
147
|
-
`+n+`</table>
|
|
148
|
-
`}tablerow({text:e}){return`<tr>
|
|
149
|
-
${e}</tr>
|
|
150
|
-
`}tablecell(e){let t=this.parser.parseInline(e.tokens),s=e.header?"th":"td";return(e.align?`<${s} align="${e.align}">`:`<${s}>`)+t+`</${s}>
|
|
151
|
-
`}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${ji(e,!0)}</code>`}br(e){return"<br>"}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:s}){let n=this.parser.parseInline(s),o=Lw(e);if(o===null)return n;e=o;let l='<a href="'+e+'"';return t&&(l+=' title="'+ji(t)+'"'),l+=">"+n+"</a>",l}image({href:e,title:t,text:s,tokens:n}){n&&(s=this.parser.parseInline(n,this.parser.textRenderer));let o=Lw(e);if(o===null)return ji(s);e=o;let l=`<img src="${e}" alt="${ji(s)}"`;return t&&(l+=` title="${ji(t)}"`),l+=">",l}text(e){return"tokens"in e&&e.tokens?this.parser.parseInline(e.tokens):"escaped"in e&&e.escaped?e.text:ji(e.text)}},Tx=class{strong({text:t}){return t}em({text:t}){return t}codespan({text:t}){return t}del({text:t}){return t}html({text:t}){return t}text({text:t}){return t}link({text:t}){return""+t}image({text:t}){return""+t}br(){return""}checkbox({raw:t}){return t}},hi=class z0{options;renderer;textRenderer;constructor(t){this.options=t||so,this.options.renderer=this.options.renderer||new Vh,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Tx}static parse(t,s){return new z0(s).parse(t)}static parseInline(t,s){return new z0(s).parseInline(t)}parse(t){this.renderer.parser=this;let s="";for(let n=0;n<t.length;n++){let o=t[n];if(this.options.extensions?.renderers?.[o.type]){let u=o,h=this.options.extensions.renderers[u.type].call({parser:this},u);if(h!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(u.type)){s+=h||"";continue}}let l=o;switch(l.type){case"space":{s+=this.renderer.space(l);break}case"hr":{s+=this.renderer.hr(l);break}case"heading":{s+=this.renderer.heading(l);break}case"code":{s+=this.renderer.code(l);break}case"table":{s+=this.renderer.table(l);break}case"blockquote":{s+=this.renderer.blockquote(l);break}case"list":{s+=this.renderer.list(l);break}case"checkbox":{s+=this.renderer.checkbox(l);break}case"html":{s+=this.renderer.html(l);break}case"def":{s+=this.renderer.def(l);break}case"paragraph":{s+=this.renderer.paragraph(l);break}case"text":{s+=this.renderer.text(l);break}default:{let u='Token with "'+l.type+'" type was not found.';if(this.options.silent)return console.error(u),"";throw new Error(u)}}}return s}parseInline(t,s=this.renderer){this.renderer.parser=this;let n="";for(let o=0;o<t.length;o++){let l=t[o];if(this.options.extensions?.renderers?.[l.type]){let h=this.options.extensions.renderers[l.type].call({parser:this},l);if(h!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(l.type)){n+=h||"";continue}}let u=l;switch(u.type){case"escape":{n+=s.text(u);break}case"html":{n+=s.html(u);break}case"link":{n+=s.link(u);break}case"image":{n+=s.image(u);break}case"checkbox":{n+=s.checkbox(u);break}case"strong":{n+=s.strong(u);break}case"em":{n+=s.em(u);break}case"codespan":{n+=s.codespan(u);break}case"br":{n+=s.br(u);break}case"del":{n+=s.del(u);break}case"text":{n+=s.text(u);break}default:{let h='Token with "'+u.type+'" type was not found.';if(this.options.silent)return console.error(h),"";throw new Error(h)}}}return n}},Ac=class{options;block;constructor(e){this.options=e||so}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(e=this.block){return e?di.lex:di.lexInline}provideParser(e=this.block){return e?hi.parse:hi.parseInline}},kP=class{defaults=yx();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=hi;Renderer=Vh;TextRenderer=Tx;Lexer=di;Tokenizer=qh;Hooks=Ac;constructor(...t){this.use(...t)}walkTokens(t,s){let n=[];for(let o of t)switch(n=n.concat(s.call(this,o)),o.type){case"table":{let l=o;for(let u of l.header)n=n.concat(this.walkTokens(u.tokens,s));for(let u of l.rows)for(let h of u)n=n.concat(this.walkTokens(h.tokens,s));break}case"list":{let l=o;n=n.concat(this.walkTokens(l.items,s));break}default:{let l=o;this.defaults.extensions?.childTokens?.[l.type]?this.defaults.extensions.childTokens[l.type].forEach(u=>{let h=l[u].flat(1/0);n=n.concat(this.walkTokens(h,s))}):l.tokens&&(n=n.concat(this.walkTokens(l.tokens,s)))}}return n}use(...t){let s=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(n=>{let o={...n};if(o.async=this.defaults.async||o.async||!1,n.extensions&&(n.extensions.forEach(l=>{if(!l.name)throw new Error("extension name required");if("renderer"in l){let u=s.renderers[l.name];u?s.renderers[l.name]=function(...h){let m=l.renderer.apply(this,h);return m===!1&&(m=u.apply(this,h)),m}:s.renderers[l.name]=l.renderer}if("tokenizer"in l){if(!l.level||l.level!=="block"&&l.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let u=s[l.level];u?u.unshift(l.tokenizer):s[l.level]=[l.tokenizer],l.start&&(l.level==="block"?s.startBlock?s.startBlock.push(l.start):s.startBlock=[l.start]:l.level==="inline"&&(s.startInline?s.startInline.push(l.start):s.startInline=[l.start]))}"childTokens"in l&&l.childTokens&&(s.childTokens[l.name]=l.childTokens)}),o.extensions=s),n.renderer){let l=this.defaults.renderer||new Vh(this.defaults);for(let u in n.renderer){if(!(u in l))throw new Error(`renderer '${u}' does not exist`);if(["options","parser"].includes(u))continue;let h=u,m=n.renderer[h],d=l[h];l[h]=(...p)=>{let g=m.apply(l,p);return g===!1&&(g=d.apply(l,p)),g||""}}o.renderer=l}if(n.tokenizer){let l=this.defaults.tokenizer||new qh(this.defaults);for(let u in n.tokenizer){if(!(u in l))throw new Error(`tokenizer '${u}' does not exist`);if(["options","rules","lexer"].includes(u))continue;let h=u,m=n.tokenizer[h],d=l[h];l[h]=(...p)=>{let g=m.apply(l,p);return g===!1&&(g=d.apply(l,p)),g}}o.tokenizer=l}if(n.hooks){let l=this.defaults.hooks||new Ac;for(let u in n.hooks){if(!(u in l))throw new Error(`hook '${u}' does not exist`);if(["options","block"].includes(u))continue;let h=u,m=n.hooks[h],d=l[h];Ac.passThroughHooks.has(u)?l[h]=p=>{if(this.defaults.async&&Ac.passThroughHooksRespectAsync.has(u))return(async()=>{let x=await m.call(l,p);return d.call(l,x)})();let g=m.call(l,p);return d.call(l,g)}:l[h]=(...p)=>{if(this.defaults.async)return(async()=>{let x=await m.apply(l,p);return x===!1&&(x=await d.apply(l,p)),x})();let g=m.apply(l,p);return g===!1&&(g=d.apply(l,p)),g}}o.hooks=l}if(n.walkTokens){let l=this.defaults.walkTokens,u=n.walkTokens;o.walkTokens=function(h){let m=[];return m.push(u.call(this,h)),l&&(m=m.concat(l.call(this,h))),m}}this.defaults={...this.defaults,...o}}),this}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,s){return di.lex(t,s??this.defaults)}parser(t,s){return hi.parse(t,s??this.defaults)}parseMarkdown(t){return(s,n)=>{let o={...n},l={...this.defaults,...o},u=this.onError(!!l.silent,!!l.async);if(this.defaults.async===!0&&o.async===!1)return u(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof s>"u"||s===null)return u(new Error("marked(): input parameter is undefined or null"));if(typeof s!="string")return u(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(s)+", string expected"));if(l.hooks&&(l.hooks.options=l,l.hooks.block=t),l.async)return(async()=>{let h=l.hooks?await l.hooks.preprocess(s):s,m=await(l.hooks?await l.hooks.provideLexer(t):t?di.lex:di.lexInline)(h,l),d=l.hooks?await l.hooks.processAllTokens(m):m;l.walkTokens&&await Promise.all(this.walkTokens(d,l.walkTokens));let p=await(l.hooks?await l.hooks.provideParser(t):t?hi.parse:hi.parseInline)(d,l);return l.hooks?await l.hooks.postprocess(p):p})().catch(u);try{l.hooks&&(s=l.hooks.preprocess(s));let h=(l.hooks?l.hooks.provideLexer(t):t?di.lex:di.lexInline)(s,l);l.hooks&&(h=l.hooks.processAllTokens(h)),l.walkTokens&&this.walkTokens(h,l.walkTokens);let m=(l.hooks?l.hooks.provideParser(t):t?hi.parse:hi.parseInline)(h,l);return l.hooks&&(m=l.hooks.postprocess(m)),m}catch(h){return u(h)}}}onError(t,s){return n=>{if(n.message+=`
|
|
152
|
-
Please report this to https://github.com/markedjs/marked.`,t){let o="<p>An error occurred:</p><pre>"+ji(n.message+"",!0)+"</pre>";return s?Promise.resolve(o):o}if(s)return Promise.reject(n);throw n}}},Za=new kP;function pt(e,t){return Za.parse(e,t)}pt.options=pt.setOptions=function(e){return Za.setOptions(e),pt.defaults=Za.defaults,a3(pt.defaults),pt};pt.getDefaults=yx;pt.defaults=so;pt.use=function(...e){return Za.use(...e),pt.defaults=Za.defaults,a3(pt.defaults),pt};pt.walkTokens=function(e,t){return Za.walkTokens(e,t)};pt.parseInline=Za.parseInline;pt.Parser=hi;pt.parser=hi.parse;pt.Renderer=Vh;pt.TextRenderer=Tx;pt.Lexer=di;pt.lexer=di.lex;pt.Tokenizer=qh;pt.Hooks=Ac;pt.parse=pt;pt.options;pt.setOptions;pt.use;pt.walkTokens;pt.parseInline;hi.parse;di.lex;function CP(e){return e.replace(/<\/?(script|style|iframe|object|embed)\b[^>]*>/gi,"").replace(/\son\w+\s*=\s*("[^"]*"|'[^']*'|[^\s>]+)/gi,"").replace(/(href|src)\s*=\s*("|')\s*javascript:[^"']*\2/gi,"$1=$2#$2")}function NP({content:e}){const t=y.useMemo(()=>{const s=pt.parse(e,{async:!1,gfm:!0,breaks:!0});return CP(s)},[e]);return a.jsx("div",{className:"chat-md",dangerouslySetInnerHTML:{__html:t}})}function EP(e){return Math.min(e,Math.max(1,Math.ceil(e/22)))}function jP(e){const[t,s]=y.useState(e),n=y.useRef(e),o=y.useRef(e);return o.current=e,y.useEffect(()=>{e.startsWith(n.current)||(n.current=e,s(e))},[e]),y.useEffect(()=>{if(n.current.length>=o.current.length)return;const l=requestAnimationFrame(()=>{const u=o.current,h=u.slice(0,n.current.length+EP(u.length-n.current.length));n.current=h,s(h)});return()=>cancelAnimationFrame(l)},[t,e]),t}function TP(){return a.jsxs("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",role:"status",children:[a.jsx(ht,{className:"size-3.5 animate-spin"}),a.jsx("span",{children:"Thinking…"})]})}function AP({onOpenAgentPage:e,onOpenService:t,onOpenSqlConsole:s,git:n,onGitRefresh:o}){const{error:l,success:u}=Es(),{turns:h,streaming:m,error:d,configured:p,provider:g,approvals:x,send:_,stop:S,clear:w,respond:C,open:N,setOpen:j,draft:E,setDraft:A,insertPath:O,activeSource:P,clearSource:D,focusNonce:T,stickNonce:z,sendToAgent:L,onboarding:I,setOnboarding:$}=At(),[U,W]=y.useState(""),[G,B]=y.useState(!1),[V,X]=y.useState(!1),[K,te]=y.useState(!1),[R,Z]=y.useState(null),[ie,de]=y.useState(!1),fe=y.useRef(null),pe=y.useRef(null),Se=y.useRef(null),Le=y.useRef(null);y.useEffect(()=>{if(!N||I)return;let _e=0,ft=0;const gn=()=>{const Ts=pe.current;if(!Ts||E&&Ts.value!==E){ft++<10&&(_e=requestAnimationFrame(gn));return}Ts.focus();const gt=Ts.value.length;Ts.setSelectionRange(gt,gt),Ts.scrollTop=Ts.scrollHeight};return _e=requestAnimationFrame(gn),()=>cancelAnimationFrame(_e)},[N,T,I]),y.useLayoutEffect(()=>{const _e=pe.current;_e&&(_e.style.height="auto",_e.style.height=`${_e.scrollHeight}px`)},[E]),y.useEffect(()=>{!N||!I||requestAnimationFrame(()=>Se.current?.focus())},[N,I]),y.useEffect(()=>{if(!N)return;const _e=ft=>{Le.current?.contains(ft.target)||j(!1)};return document.addEventListener("pointerdown",_e),()=>document.removeEventListener("pointerdown",_e)},[N,j]),y.useEffect(()=>{const _e=gn=>{gn.dataTransfer&&ww(gn.dataTransfer)&&B(!0)},ft=()=>{B(!1),X(!1)};return document.addEventListener("dragstart",_e),document.addEventListener("dragend",ft),document.addEventListener("drop",ft),()=>{document.removeEventListener("dragstart",_e),document.removeEventListener("dragend",ft),document.removeEventListener("drop",ft)}},[]);const ve=y.useRef(!0);function We(){const _e=fe.current;_e&&(ve.current=_e.scrollHeight-_e.scrollTop-_e.clientHeight<48)}y.useEffect(()=>{const _e=fe.current;_e&&ve.current&&(_e.scrollTop=_e.scrollHeight)},[h,N]),y.useEffect(()=>{ve.current=!0;const _e=fe.current;if(!_e)return;const ft=requestAnimationFrame(()=>{_e.scrollTop=_e.scrollHeight});return()=>cancelAnimationFrame(ft)},[z]);async function ge(){const _e=E;A(""),ve.current=!0,await _(_e)}function Te(_e){_e.trim()&&(A(""),$(!1),W(""),ve.current=!0,L({prompt:jz(_e),source:{type:"repo-onboard",label:"Onboard repo"},label:`Onboard and run this repo: ${_e}`}))}function Me(_e){ve.current=!0,_(_e)}async function Pt(_e){try{await mn(`/api/services/${encodeURIComponent(_e)}/start`,{}),u(`Starting ${_e}…`)}catch(ft){l(ft instanceof Error?ft.message:`Could not start ${_e}.`)}}function Pi(_e){_e.key==="Enter"&&!_e.shiftKey&&(_e.preventDefault(),ge())}function ni(_e){ww(_e.dataTransfer)&&(_e.preventDefault(),_e.dataTransfer.dropEffect="copy",N||j(!0),X(!0))}function yr(_e){_e.currentTarget.contains(_e.relatedTarget)||X(!1)}function $i(_e){X(!1);const ft=kB(_e.dataTransfer);ft&&(_e.preventDefault(),O(ft))}function Hi(_e){if(!N)return;_e.preventDefault(),_e.currentTarget.setPointerCapture(_e.pointerId),de(!0);const ft=160,gn=window.innerHeight-48;function Ts(ii){const ds=window.innerHeight-ii.clientY;Z(Math.max(ft,Math.min(gn,ds)))}function gt(){de(!1),window.removeEventListener("pointermove",Ts),window.removeEventListener("pointerup",gt)}window.addEventListener("pointermove",Ts),window.addEventListener("pointerup",gt)}return a.jsx("div",{ref:Le,className:ae("fixed inset-x-0 bottom-0 z-50 flex flex-col border-t border-border bg-card/95 shadow-[0_-8px_24px_-12px_rgba(0,0,0,0.25)] backdrop-blur",ie?"select-none":"transition-[height] duration-200",N?R===null?"h-[50vh]":"":G?"h-12":"h-9",G&&!V&&"border-primary/60 bg-primary/5",V&&"outline-dashed outline-2 -outline-offset-2 outline-primary/70"),style:N&&R!==null?{height:R}:void 0,onDragOver:ni,onDragLeave:yr,onDrop:$i,children:N?a.jsxs(a.Fragment,{children:[a.jsx("div",{"aria-hidden":!0,className:"absolute inset-x-0 -top-1 z-10 h-2 cursor-ns-resize",onDoubleClick:()=>Z(null),onPointerDown:Hi}),a.jsxs("div",{className:"pointer-events-none absolute inset-x-0 top-0 z-20 flex items-start justify-between gap-2 px-2 pt-1.5",children:[a.jsxs("div",{className:"pointer-events-auto flex items-center gap-2",children:[a.jsx(Pw,{provider:g,className:"size-4 text-primary"}),a.jsx("span",{className:"text-sm font-medium",children:g?.label??"Agent"}),P?a.jsxs("span",{className:"flex items-center gap-1 rounded-full border border-primary/30 bg-primary/10 px-2 py-0.5 text-[11px] text-primary",children:[a.jsx(mi,{className:"size-3"}),a.jsx("span",{className:"max-w-40 truncate",children:P.label}),a.jsx("button",{"aria-label":"Clear source",className:"opacity-60 hover:opacity-100",onClick:D,type:"button",children:a.jsx(Ns,{className:"size-3"})})]}):null]}),a.jsxs("div",{className:"pointer-events-auto flex items-center gap-1",children:[e?a.jsx(Q,{"aria-label":"Open agent page",className:"size-7",onClick:e,size:"icon",title:"Open the full agent page",type:"button",variant:"ghost",children:a.jsx(WM,{})}):null,a.jsx(Q,{"aria-label":"Clear conversation",className:"size-7",disabled:h.length===0,onClick:w,size:"icon",title:"Clear conversation",type:"button",variant:"ghost",children:a.jsx(ha,{})}),a.jsx(Q,{"aria-label":"Collapse agent",className:"size-7",onClick:()=>j(!1),size:"icon",title:"Collapse",type:"button",variant:"ghost",children:a.jsx(Qn,{})})]})]}),a.jsx("div",{ref:fe,className:"min-h-0 flex-1 overflow-auto px-3 py-3",onScroll:We,children:a.jsxs("div",{className:"mx-auto w-full max-w-4xl space-y-3",children:[h.length===0?a.jsx(MP,{configured:p,provider:g,onOnboard:()=>$(!0)}):h.map((_e,ft)=>a.jsx(LP,{turn:_e,streaming:m&&ft===h.length-1,isLast:ft===h.length-1,onChoose:Me,onStartService:Pt,onOpenService:t,onOpenSqlConsole:s},_e.id)),d?a.jsxs("div",{className:"flex items-start gap-2 rounded-md border border-destructive/40 bg-destructive/5 px-3 py-2 text-xs text-destructive",children:[a.jsx(du,{className:"mt-px size-3.5 shrink-0"}),a.jsx("span",{className:"min-w-0 break-words",children:d})]}):null]})}),x.length>0?a.jsx("div",{className:"shrink-0 space-y-1.5 border-t border-amber-500/25 bg-amber-500/[0.04] px-3 py-2",children:x.map(_e=>a.jsx(BP,{prompt:_e,onRespond:C},_e.requestId))}):null,a.jsxs("div",{className:ae("relative shrink-0 p-2 transition-colors",G&&"bg-primary/5"),children:[n?a.jsx(mI,{git:n,onRefresh:o}):null,K?a.jsx(TI,{onClose:()=>te(!1),onPick:_e=>{te(!1),O(_e)}}):null,a.jsxs("div",{className:"mx-auto w-full max-w-4xl",children:[I?a.jsxs("form",{className:"mb-2 flex items-center gap-2 rounded-md border border-primary/40 bg-primary/5 p-1.5",onSubmit:_e=>{_e.preventDefault(),Te(U)},children:[a.jsx(pn,{className:"size-4 shrink-0 text-primary"}),a.jsx("input",{ref:Se,className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground",onChange:_e=>W(_e.target.value),placeholder:"Paste a repo URL — e.g. https://github.com/owner/repo",value:U}),a.jsx(Q,{disabled:!U.trim(),size:"sm",type:"submit",children:"Onboard"}),a.jsx(Q,{"aria-label":"Cancel onboarding",className:"size-7",onClick:()=>{$(!1),W("")},size:"icon",type:"button",variant:"ghost",children:a.jsx(Ns,{})})]}):DP(E)&&!m?a.jsxs("button",{className:"mb-2 flex w-full items-center gap-2 rounded-md border border-primary/40 bg-primary/5 px-3 py-1.5 text-left text-xs text-primary transition-colors hover:bg-primary/10",onClick:()=>Te(E),type:"button",children:[a.jsx(pn,{className:"size-3.5 shrink-0"}),a.jsxs("span",{className:"min-w-0 flex-1 truncate",children:["Onboard ",a.jsx("span",{className:"font-mono",children:E.trim()})," as a service"]}),a.jsx(b4,{className:"size-3.5 shrink-0 opacity-60"})]}):null,a.jsxs("div",{className:"flex items-end gap-1.5 rounded-2xl border border-border bg-background px-1.5 py-1.5 shadow-sm transition-colors hover:border-foreground/25 focus-within:border-foreground/40 focus-within:ring-1 focus-within:ring-ring",children:[a.jsx(Q,{"aria-label":"Attach a file or folder",className:"size-8 shrink-0 rounded-full text-muted-foreground hover:text-foreground",disabled:p===!1,onClick:()=>te(!0),size:"icon",title:"Attach a file or folder",type:"button",variant:K?"secondary":"ghost",children:a.jsx(YM,{})}),a.jsx("textarea",{ref:pe,className:"max-h-32 min-h-8 flex-1 resize-none self-center overflow-y-auto bg-transparent px-1 py-1.5 text-sm outline-none placeholder:text-muted-foreground",disabled:p===!1,onChange:_e=>A(_e.target.value),onKeyDown:Pi,placeholder:p===!1?`${g?.label??"Agent"} (\`${g?.commandName??"agent"}\`) is not installed`:`Ask ${g?.label??"the agent"} anything about this project...`,rows:1,value:E}),m?a.jsx(Q,{"aria-label":"Stop generating",className:"size-8 shrink-0 rounded-full",onClick:S,size:"icon",title:"Stop",type:"button",variant:"secondary",children:a.jsx(al,{className:"size-3.5 fill-current"})}):a.jsx(Q,{"aria-label":"Send message",className:"size-8 shrink-0 rounded-full",disabled:!E.trim()||p===!1,onClick:()=>{ge()},size:"icon",title:"Send",type:"button",children:a.jsx(Lb,{className:"size-4"})})]})]})]})]}):a.jsx("button",{className:ae("flex h-full w-full items-center gap-2 px-3 text-left text-sm hover:bg-muted/50",G?"font-medium text-primary":"text-muted-foreground"),onClick:()=>j(!0),type:"button",children:G?a.jsxs(a.Fragment,{children:[a.jsx(gC,{className:"size-4 animate-bounce text-primary"}),a.jsx("span",{children:"Drop here to add it to your message"})]}):a.jsxs(a.Fragment,{children:[a.jsx(Pw,{provider:g,className:"size-4 text-primary"}),m?a.jsxs("span",{className:"flex items-center gap-2 text-foreground",children:[a.jsx(ht,{className:"size-3.5 animate-spin"})," ",g?.label??"Agent"," is thinking…"]}):a.jsxs("span",{children:["Ask ",g?.label??"the agent","..."]}),a.jsx("span",{className:"ml-auto text-xs text-muted-foreground/70",children:"click to expand"})]})})})}function Pw({provider:e,className:t}){return e?.id==="claude"?a.jsx(gl,{className:t}):e?.id==="codex"?a.jsx(gu,{className:t}):a.jsx(mi,{className:t})}function MP({configured:e,provider:t,onOnboard:s}){return e===!1?a.jsxs("div",{className:"rounded-md border border-border bg-muted/30 px-3 py-2 text-xs text-muted-foreground",children:["This dock runs the ",a.jsx("code",{className:"font-mono",children:t?.commandName??"agent"})," ","CLI. ",t?.installHint??"Install the active agent CLI, then reload."]}):a.jsxs("div",{className:"space-y-2 text-xs text-muted-foreground",children:[a.jsx("p",{children:t?.intro??'This is the active agent, running in your workspace with full tools - e.g. "restart the api and tail its logs", "what changed in git and why?", "fix the failing test".'}),a.jsxs("button",{className:"inline-flex items-center gap-1.5 rounded-full border border-primary/40 bg-primary/5 px-2.5 py-1 text-primary transition-colors hover:bg-primary/10",onClick:s,type:"button",children:[a.jsx(pn,{className:"size-3.5"}),"Onboard a repo from a URL"]})]})}const RP=/^(?:https?:\/\/|git@|ssh:\/\/)\S+$/i;function DP(e){const t=e.trim();return t.includes(`
|
|
153
|
-
`)||t.includes(" ")||!RP.test(t)?!1:/github\.com|gitlab\.|bitbucket\.|\.git$/i.test(t)}function OP({turn:e}){const[t,s]=y.useState(!1),n=!!e.label&&e.label!==e.text,o=n&&!t?e.label:e.text;return a.jsx("div",{className:"flex justify-end",children:a.jsxs("div",{className:"flex max-w-[85%] flex-col items-end gap-0.5",children:[a.jsx("div",{className:"whitespace-pre-wrap break-words rounded-2xl rounded-br-sm bg-muted px-3.5 py-2 text-sm text-foreground",children:o}),n?a.jsxs("button",{className:"flex items-center gap-0.5 px-1 text-[11px] text-muted-foreground transition-colors hover:text-foreground",onClick:()=>s(l=>!l),type:"button",children:[t?a.jsx(of,{className:"size-3"}):a.jsx(Qn,{className:"size-3"}),t?"Hide full prompt":"Show full prompt"]}):null]})})}function LP({turn:e,streaming:t,isLast:s,onChoose:n,onStartService:o,onOpenService:l,onOpenSqlConsole:u}){const h=jP(e.text);if(e.role==="user")return a.jsx(OP,{turn:e});const{body:m,options:d,service:p,sqlWrite:g}=OI(h);return a.jsxs("div",{className:"space-y-1.5",children:[e.tools.map(x=>a.jsx(zP,{tool:x},x.id)),m?a.jsx("div",{className:"break-words px-0.5 text-sm text-foreground",children:a.jsx(NP,{content:m})}):null,d.length>0&&s&&!t?a.jsx(LI,{options:d,onChoose:n}):null,p&&!t?a.jsx(zI,{service:p,onStart:o,onOpen:l}):null,g&&u&&!t?a.jsx(BI,{proposal:g,onOpen:u}):null,t&&!m?a.jsx(TP,{}):null]})}function zP({tool:e}){const t=g3(e.input);return a.jsxs("div",{className:ae("inline-flex max-w-[85%] items-center gap-1.5 rounded-md border px-2 py-1 font-mono text-[11px]",e.isError?"border-destructive/40 bg-destructive/5 text-destructive":"border-border bg-background text-muted-foreground"),children:[e.status==="running"?a.jsx(ht,{className:"size-3 animate-spin"}):a.jsx(zR,{className:"size-3"}),a.jsx("span",{className:"font-semibold",children:e.name}),t?a.jsx("span",{className:"truncate",children:t}):null]})}function BP({prompt:e,onRespond:t}){const s=g3(e.input).slice(0,140);return a.jsxs("div",{className:"flex items-center gap-2.5 rounded-lg border border-amber-500/30 bg-amber-500/5 px-2.5 py-2 text-xs",children:[a.jsx("span",{className:"flex size-7 shrink-0 items-center justify-center rounded-md bg-amber-500/15 text-amber-600 dark:text-amber-400",children:a.jsx(DC,{className:"size-4"})}),a.jsxs("div",{className:"min-w-0 flex-1 leading-tight",children:[a.jsx("div",{className:"mb-0.5 text-[10px] font-semibold uppercase tracking-wider text-amber-600 dark:text-amber-400/90",children:"Permission needed"}),a.jsxs("div",{className:"truncate font-mono text-[11px]",children:[a.jsx("span",{className:"font-semibold text-foreground",children:e.name}),s?a.jsx("span",{className:"ml-1 text-muted-foreground",children:s}):null]})]}),a.jsxs(Q,{className:"h-7 gap-1 text-muted-foreground hover:border-destructive/40 hover:bg-destructive/10 hover:text-destructive",onClick:()=>t(e.requestId,"deny"),size:"sm",type:"button",variant:"outline",children:[a.jsx(Ns,{className:"size-3.5"})," Deny"]}),a.jsxs(Q,{className:"h-7 gap-1",onClick:()=>t(e.requestId,"allow"),size:"sm",type:"button",children:[a.jsx(Zn,{className:"size-3.5"})," Allow"]})]})}function g3(e){return!e||typeof e!="object"?"":Object.values(e).filter(s=>s!==void 0&&s!=="").map(s=>String(s)).join(" ")}const sg={host:"",port:"",user:"",password:"",database:"",ssl:!1},IP="localhost";function B0(e,t,{includePassword:s=!0}={}){const n=e==="mysql"?"mysql":"postgres",o=t.host.trim()||IP,l=t.port.trim(),u=t.database.trim().replace(/^\//,""),h=t.user.trim(),m=s&&t.password,d=h?`${encodeURIComponent(h)}${m?`:${encodeURIComponent(t.password)}`:""}@`:"",p=l?`:${l}`:"",g=e==="postgres"&&t.ssl?"?sslmode=require":"";return`${n}://${d}${o}${p}/${u}${g}`}function I0(e){if(!e.trim())return null;let t;try{t=new URL(e.trim())}catch{return null}return{host:t.hostname,port:t.port,user:$w(t.username),password:$w(t.password),database:t.pathname.replace(/^\//,""),ssl:t.searchParams.get("sslmode")==="require"||t.searchParams.has("ssl")}}function PP(e){const t=/^([a-z0-9+]+):\/\//i.exec(e.trim());if(!t)return null;const s=t[1].toLowerCase();return s.startsWith("postgres")?"postgres":s.startsWith("mysql")?"mysql":s.startsWith("sqlite")||s==="file"?"sqlite":null}function $w(e){try{return decodeURIComponent(e)}catch{return e}}const $P=[{value:"postgres",label:"Postgres"},{value:"mysql",label:"MySQL"},{value:"sqlite",label:"SQLite"}];function HP({onClose:e,onSaved:t,initial:s}){const{error:n,success:o}=Es(),l=!!s,u=y.useMemo(()=>UP(s),[s]),[h,m]=y.useState(u.engine),[d,p]=y.useState(u.name),[g,x]=y.useState(u.url),[_,S]=y.useState(u.fields),[w,C]=y.useState([]),[N,j]=y.useState({status:"idle"}),[E,A]=y.useState(!1),[O,P]=y.useState(!1);y.useEffect(()=>{l||WR().then(C).catch(()=>C([]))},[l]);const D=h==="sqlite",T=D?g.trim():B0(h,_),z=D?!!g.trim():!!(_.host.trim()&&_.database.trim());function L(){j({status:"idle"})}function I(K,te){return B0(K,te,{includePassword:!1})}function $(K){m(K),L(),K!=="sqlite"&&x(I(K,_))}function U(K){const te={..._,...K};S(te),x(I(h,te)),L()}function W(K){L();const te=PP(K),R=te??h;te&&te!==h&&m(te);const Z=te==="sqlite"?null:I0(K);if(!Z){x(K);return}Z.password?(S(Z),x(I(R,Z))):(S({...Z,password:_.password}),x(K))}function G(K){m(K.engine);const te=K.engine==="sqlite"?null:I0(K.url);te?(S(te),x(I(K.engine,te))):x(K.url),L(),d.trim()||p(FP(K))}function B(){return d.trim()?D?g.trim()?null:"Database file path is required.":_.host.trim()?_.database.trim()?null:"Database name is required.":"Host is required.":"Name is required."}async function V(){if(z){A(!0),L();try{const K=await YR({engine:h,url:T});j(K.ok?{status:"ok",message:"Connected"}:{status:"fail",message:K.error??"Connection failed"})}catch(K){j({status:"fail",message:K instanceof Error?K.message:String(K)})}finally{A(!1)}}}async function X(){const K=B();if(K){n(K);return}P(!0);try{await KR({name:d.trim(),engine:h,url:T}),o(`Saved connection "${d.trim()}".`),t(),e()}catch(te){n(te instanceof Error?te.message:String(te))}finally{P(!1)}}return a.jsx(Xn,{icon:a.jsx(Yn,{}),onClose:e,title:l?"Edit database connection":"Add database connection",children:a.jsxs("div",{className:"flex flex-col gap-4",children:[w.length>0?a.jsxs("section",{children:[a.jsxs("p",{className:"mb-1.5 flex items-center gap-1.5 text-xs font-medium text-muted-foreground",children:[a.jsx(RR,{className:"size-3.5"}),"Found in your services"]}),a.jsx("div",{className:"flex flex-wrap gap-1.5",children:w.map(K=>a.jsxs("button",{type:"button",onClick:()=>G(K),className:"group flex items-center gap-1.5 rounded-md border border-border bg-background px-2 py-1 text-left text-xs transition-colors hover:border-primary hover:bg-muted",title:K.maskedUrl,children:[a.jsx(Pe,{variant:"outline",size:"small",children:K.engine}),a.jsx("span",{className:"font-mono",children:K.service}),a.jsxs("span",{className:"font-mono text-muted-foreground",children:["·",K.key]})]},`${K.service}:${K.key}`))})]}):null,a.jsxs("section",{children:[a.jsx("p",{className:"mb-1.5 text-xs font-medium text-muted-foreground",children:"Engine"}),a.jsx("div",{className:"flex gap-1.5",children:$P.map(K=>a.jsx(Q,{size:"sm",variant:h===K.value?"default":"outline",onClick:()=>$(K.value),disabled:l,type:"button",children:K.label},K.value))})]}),a.jsxs("label",{className:"flex flex-col gap-1.5",children:[a.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Name"}),a.jsx(nt,{value:d,onChange:K=>p(K.target.value),placeholder:"e.g. shop-db",disabled:l}),l?a.jsx("span",{className:"text-[11px] text-muted-foreground",children:"The name identifies the connection and can't be changed here."}):null]}),D?null:a.jsxs("section",{className:"flex flex-col gap-3",children:[a.jsxs("div",{className:"flex gap-3",children:[a.jsxs("label",{className:"flex flex-1 flex-col gap-1.5",children:[a.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Host"}),a.jsx(nt,{value:_.host,onChange:K=>U({host:K.target.value}),placeholder:"localhost",className:"font-mono text-xs"})]}),a.jsxs("label",{className:"flex w-24 flex-col gap-1.5",children:[a.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Port"}),a.jsx(nt,{value:_.port,onChange:K=>U({port:K.target.value}),placeholder:h==="mysql"?"3306":"5432",className:"font-mono text-xs"})]})]}),a.jsxs("div",{className:"flex gap-3",children:[a.jsxs("label",{className:"flex flex-1 flex-col gap-1.5",children:[a.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"User"}),a.jsx(nt,{value:_.user,onChange:K=>U({user:K.target.value}),placeholder:"postgres",className:"font-mono text-xs"})]}),a.jsxs("label",{className:"flex flex-1 flex-col gap-1.5",children:[a.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Password"}),a.jsx(nt,{type:"password",value:_.password,onChange:K=>U({password:K.target.value}),placeholder:l?"leave blank to keep current":"••••••••",className:"font-mono text-xs"})]})]}),a.jsxs("label",{className:"flex flex-col gap-1.5",children:[a.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Database"}),a.jsx(nt,{value:_.database,onChange:K=>U({database:K.target.value}),placeholder:"app",className:"font-mono text-xs"})]}),h==="postgres"?a.jsxs("label",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[a.jsx("input",{type:"checkbox",checked:_.ssl,onChange:K=>U({ssl:K.target.checked}),className:"size-3.5 accent-primary"}),"Require SSL (adds ",a.jsx("span",{className:"font-mono",children:"?sslmode=require"}),")"]}):null]}),a.jsxs("label",{className:"flex flex-col gap-1.5",children:[a.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:D?"Database file path":"Connection URL"}),a.jsx(nt,{value:g,onChange:K=>W(K.target.value),placeholder:D?"/abs/path/to/app.db":h==="mysql"?"mysql://user:pass@host:3306/db":"postgres://user:pass@host:5432/db",className:"font-mono text-xs"}),a.jsx("span",{className:"text-[11px] text-muted-foreground",children:D?"Read-only. Stored like a secret and masked in the UI and API.":"Synced with the fields above; the password stays in its field and is never shown here. Stored like a secret and masked in the UI and API."})]}),N.status!=="idle"?a.jsxs("div",{className:`flex items-center gap-1.5 rounded-md border px-2.5 py-1.5 text-xs ${N.status==="ok"?"border-emerald-500/40 text-emerald-600 dark:text-emerald-400":"border-destructive/40 text-destructive"}`,children:[N.status==="ok"?a.jsx(Zn,{className:"size-3.5"}):a.jsx(Ns,{className:"size-3.5"}),a.jsx("span",{className:"break-all font-mono",children:N.message})]}):null,a.jsxs("div",{className:"flex items-center justify-end gap-2 border-t border-border pt-3",children:[a.jsxs(Q,{variant:"outline",size:"sm",onClick:()=>{V()},disabled:E||!z,type:"button",children:[E?a.jsx(ht,{className:"animate-spin"}):null,"Test connection"]}),a.jsxs(Q,{size:"sm",onClick:()=>{X()},disabled:O,type:"button",children:[O?a.jsx(ht,{className:"animate-spin"}):null,l?"Save changes":"Save"]})]})]})})}function UP(e){if(!e)return{engine:"postgres",name:"",fields:sg,url:""};if(e.engine==="sqlite")return{engine:"sqlite",name:e.name,fields:sg,url:e.url};const t=I0(e.url),s=t?{...t,password:""}:sg;return{engine:e.engine,name:e.name,fields:s,url:B0(e.engine,s,{includePassword:!1})}}function FP(e){try{const s=new URL(e.url).pathname.replace(/^\//,"");if(s)return`${e.service}-${s}`}catch{}return`${e.service}-${e.engine}`}function qP({connections:e,selected:t,onSelect:s,onAdd:n,onEdit:o,onRemove:l}){const[u,h]=y.useState(!1),m=y.useRef(null),d=e.find(p=>p.name===t);return y.useEffect(()=>{if(!u)return;function p(g){m.current&&g.target instanceof Node&&!m.current.contains(g.target)&&h(!1)}return document.addEventListener("mousedown",p),()=>document.removeEventListener("mousedown",p)},[u]),a.jsxs("div",{className:"relative z-50 flex items-center gap-2",ref:m,children:[a.jsxs(Q,{className:"max-w-[240px] justify-start gap-2 rounded-md border-border bg-card",onClick:()=>h(p=>!p),size:"sm",type:"button",variant:"outline",children:[a.jsx(Yn,{className:"text-muted-foreground"}),a.jsx("span",{className:"truncate",children:d?.name??"Select connection"}),d?a.jsx(Pe,{variant:"outline",size:"small",children:d.engine}):null,a.jsx(Qn,{className:ae("ml-auto transition-transform",u&&"rotate-180")})]}),u?a.jsxs("div",{className:"absolute right-0 top-10 z-50 w-[min(420px,calc(100vw-2rem))] overflow-hidden rounded-lg border border-border bg-card shadow-lg",children:[a.jsxs("div",{className:"flex items-center gap-2 border-b border-border px-3 py-2",children:[a.jsx(Yn,{className:"size-3.5 text-muted-foreground"}),a.jsx("div",{className:"text-xs font-semibold",children:"Connections"}),a.jsx(Pe,{className:"ml-auto",variant:"outline",size:"small",children:e.length})]}),a.jsx("div",{className:"max-h-72 overflow-auto",children:e.length?a.jsx("div",{className:"divide-y divide-border",children:e.map(p=>{const g=p.name===t;return a.jsxs("div",{className:ae("group grid w-full grid-cols-[1fr_auto_auto_auto] items-center gap-2 px-3 py-1.5 text-left transition-colors hover:bg-muted",g&&"bg-muted/70"),children:[a.jsxs("button",{className:"min-w-0 text-left",onClick:()=>{s(p.name),h(!1)},type:"button",children:[a.jsx("span",{className:"block truncate text-sm font-medium leading-tight",children:p.name}),a.jsx("span",{className:"block truncate font-mono text-[10px] leading-tight text-muted-foreground",children:p.url})]}),g?a.jsx(Zn,{className:"size-3.5"}):a.jsx("span",{className:"size-3.5"}),a.jsx(Q,{"aria-label":`Edit ${p.name}`,className:"size-6 opacity-0 transition-opacity group-hover:opacity-100",onClick:()=>{o(p),h(!1)},size:"icon",title:`Edit ${p.name}`,type:"button",variant:"ghost",children:a.jsx(Kc,{className:"size-3.5"})}),a.jsx(Q,{"aria-label":`Remove ${p.name}`,className:"size-6 opacity-0 transition-opacity group-hover:opacity-100",onClick:()=>l(p.name),size:"icon",title:`Remove ${p.name}`,type:"button",variant:"ghost",children:a.jsx(ha,{className:"size-3.5 text-destructive"})})]},p.name)})}):a.jsx("div",{className:"px-3 py-6 text-center text-xs text-muted-foreground",children:"No saved connections yet."})}),a.jsx("div",{className:"border-t border-border bg-muted/20 p-2",children:a.jsxs(Q,{className:"w-full",onClick:()=>{n(),h(!1)},size:"sm",type:"button",children:[a.jsx(xs,{className:"size-3"}),"Add connection"]})})]}):null]})}function VP({onAddManual:e,onAddWithAi:t}){const[s,n]=y.useState(!1),o=y.useRef(null);y.useEffect(()=>{if(!s)return;function u(h){o.current&&h.target instanceof Node&&!o.current.contains(h.target)&&n(!1)}return document.addEventListener("mousedown",u),()=>document.removeEventListener("mousedown",u)},[s]);function l(u){n(!1),u()}return a.jsxs("div",{className:"relative",ref:o,children:[a.jsxs(Q,{"aria-label":"Add database connection",onClick:()=>n(u=>!u),size:"sm",type:"button",children:[a.jsx(xs,{className:"size-3.5"}),"Add"]}),s?a.jsxs("div",{className:"absolute right-0 top-9 z-50 w-56 overflow-hidden rounded-lg border border-border bg-card shadow-lg",children:[a.jsxs("button",{className:"flex w-full items-center gap-2 px-3 py-2 text-left text-sm transition-colors hover:bg-muted",onClick:()=>l(e),type:"button",children:[a.jsx(Yn,{className:"size-3.5 text-muted-foreground"}),"Add connection"]}),a.jsxs("button",{className:"flex w-full items-center gap-2 border-t border-border px-3 py-2 text-left text-sm transition-colors hover:bg-muted",onClick:()=>l(t),type:"button",children:[a.jsx(mi,{className:"size-3.5 text-muted-foreground"}),"Add with AI"]})]}):null]})}function GP(){const[e,t]=y.useState([]),[s,n]=y.useState(!0),[o,l]=y.useState(null),u=y.useCallback(async()=>{n(!0),l(null);try{t(await PC())}catch(h){l(h instanceof Error?h.message:String(h))}finally{n(!1)}},[]);return y.useEffect(()=>{u()},[u]),{connections:e,loading:s,error:o,refresh:u}}const b3=[50,100,500,1e3];function WP(e){const[t,s]=y.useState(null),[n,o]=y.useState(null),[l,u]=y.useState(!1);y.useEffect(()=>{s(null),o(null)},[e]);const h=y.useCallback(async(d,p)=>{if(!(!e||!d.trim())){u(!0),o(null);try{s(await ZR(e,d,p))}catch(g){s(null),o(g instanceof Error?g.message:String(g))}finally{u(!1)}}},[e]),m=y.useCallback(()=>{s(null),o(null)},[]);return{result:t,error:n,running:l,run:h,reset:m}}const KP=["select","show","explain","pragma","describe","desc"];function YP(e){const t=/^\s*([a-z]+)/i.exec(e)?.[1]?.toLowerCase()??"";return KP.includes(t)}function XP(e){const[t,s]=y.useState(null),[n,o]=y.useState(null),[l,u]=y.useState(null),[h,m]=y.useState(!1),[d,p]=y.useState(!1);y.useEffect(()=>{s(null),o(null),u(null)},[e]);const g=y.useCallback(async w=>{if(!(!e||!w.trim())){m(!0),u(null),o(null);try{const C=await Py(e,w,"preview");s({sql:w,preview:C})}catch(C){u(C instanceof Error?C.message:String(C))}finally{m(!1)}}},[e]),x=y.useCallback(async()=>{if(!e||!t)return null;p(!0),u(null);try{const w=await Py(e,t.sql,"commit");return o(w),s(null),w}catch(w){return s(null),u(w instanceof Error?w.message:String(w)),null}finally{p(!1)}},[e,t]),_=y.useCallback(()=>s(null),[]),S=y.useCallback(()=>{s(null),o(null),u(null)},[]);return{pending:t,committed:n,error:l,previewing:h,committing:d,preview:g,commit:x,cancel:_,reset:S}}function ZP(e,t){const[s,n]=y.useState(!1),o=y.useCallback(async l=>{if(e){n(!0);try{await QR(e,l),t()}finally{n(!1)}}},[e,t]);return{updating:s,setUnlocked:o}}function QP(e){const[t,s]=y.useState([]),[n,o]=y.useState(null),[l,u]=y.useState(null),[h,m]=y.useState(null),[d,p]=y.useState(null),[g,x]=y.useState(!1),[_,S]=y.useState(!1),[w,C]=y.useState(100),[N,j]=y.useState(0);y.useEffect(()=>{j(0)},[e,n]),y.useEffect(()=>{if(s([]),o(null),u(null),m(null),p(null),!e)return;let T=!1;return x(!0),$C(e).then(z=>{T||(s(z),o(z[0]?.qualifiedName??null))}).catch(z=>{T||m(z instanceof Error?z.message:String(z))}).finally(()=>{T||x(!1)}),()=>{T=!0}},[e]),y.useEffect(()=>{if(u(null),p(null),!e||!n)return;let T=!1;return S(!0),JR(e,n,w,N).then(z=>{T||u(z)}).catch(z=>{T||p(z instanceof Error?z.message:String(z))}).finally(()=>{T||S(!1)}),()=>{T=!0}},[e,n,w,N]);const E=N>0,A=l?l.rowCount===w:!1;function O(T){C(T),j(0)}function P(){A&&j(T=>T+w)}function D(){j(T=>Math.max(0,T-w))}return{tables:t,selectedTable:n,setSelectedTable:o,sample:l,tablesError:h,rowsError:d,loadingTables:g,loadingRows:_,limit:w,offset:N,canPrev:E,canNext:A,changePageSize:O,nextPage:P,prevPage:D}}function JP(e,t,s,n){const{sendToAgent:o,streaming:l,turns:u}=At(),[h,m]=y.useState(!1),[d,p]=y.useState(null),g=y.useRef(u);y.useEffect(()=>{g.current=u},[u]);const x=y.useRef(!1),_=y.useRef(null);return y.useEffect(()=>{if(l)x.current=!0;else if(x.current&&_.current){const w=_.current;_.current=null,w()}},[l]),{generate:y.useCallback(async w=>{if(!e||!w.trim()||h)return;m(!0),p(null);let C=[];try{C=await $C(e)}catch{C=[]}x.current=!1;const N=new Promise(j=>{let E=!1;const A=()=>{E||(E=!0,clearTimeout(O),_.current=null,j())};_.current=A;const O=setTimeout(()=>{x.current||A()},8e3)});o({prompt:Mz(e,w,{engine:t,tables:C,unlocked:s}),source:{type:"database-sql-generate",label:"Generate SQL"},label:`Generate SQL: ${w}`,background:!0});try{await N;const j=t$(e$(g.current));j?n(j):p("The agent didn't return a SQL block — open the dock to see its reply.")}finally{m(!1)}},[e,t,s,h,n,o]),generating:h,error:d}}function e$(e){for(let t=e.length-1;t>=0;t--)if(e[t].role==="assistant")return e[t].text.trim();return""}function t$(e){if(!e)return null;const s=/```(?:sql)?\s*\n?([\s\S]*?)```/i.exec(e)?.[1]?.trim();return s||null}function x3({items:e,label:t="More actions",className:s}){const[n,o]=y.useState(!1),[l,u]=y.useState({top:0,right:0}),h=y.useRef(null),m=y.useRef(null);function d(){const p=h.current?.getBoundingClientRect();p&&u({top:p.bottom+4,right:window.innerWidth-p.right}),o(g=>!g)}return y.useEffect(()=>{if(!n)return;function p(_){const S=_.target;h.current?.contains(S)||m.current?.contains(S)||o(!1)}function g(_){_.key==="Escape"&&o(!1)}const x=()=>o(!1);return document.addEventListener("mousedown",p),document.addEventListener("keydown",g),window.addEventListener("scroll",x,!0),()=>{document.removeEventListener("mousedown",p),document.removeEventListener("keydown",g),window.removeEventListener("scroll",x,!0)}},[n]),a.jsxs(a.Fragment,{children:[a.jsx("button",{"aria-label":t,className:ae("flex size-6 items-center justify-center rounded-md text-muted-foreground opacity-0 transition-all duration-150 hover:bg-muted hover:text-foreground group-hover:opacity-100",n&&"opacity-100",s),onClick:d,ref:h,title:t,type:"button",children:a.jsx(bC,{className:"size-3.5"})}),n?xu.createPortal(a.jsx("div",{className:"fixed z-50 min-w-44 overflow-hidden rounded-md border border-border bg-card p-1 shadow-md",ref:m,style:{top:l.top,right:l.right},children:e.map(p=>a.jsxs("button",{className:"flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-left text-xs text-foreground transition-colors hover:bg-muted",onClick:()=>{o(!1),p.onSelect()},type:"button",children:[p.icon?a.jsx("span",{className:"text-muted-foreground",children:p.icon}):null,p.label]},p.label))}),document.body):null]})}function s$({connection:e,sample:t}){const{sendToAgent:s}=At(),{success:n,error:o}=Es(),l=t.columns.map(p=>p.name);function u(p){s({prompt:Az(e,t.engine,t.table,t.columns,p),source:{type:"database-row",label:`${t.table} row`},mode:"draft"})}async function h(p,g){try{await navigator.clipboard.writeText(p),n(`Copied ${g}.`)}catch(x){o(x instanceof Error?x.message:String(x))}}function m(p){const g=x=>{const _=Vc(x);return/[",\n]/.test(_)?`"${_.replace(/"/g,'""')}"`:_};return`${l.join(",")}
|
|
154
|
-
${l.map(x=>g(p[x])).join(",")}`}function d(p){const g=_=>_==null?"NULL":typeof _=="number"||typeof _=="boolean"?String(_):`'${(typeof _=="object"?JSON.stringify(_):String(_)).replace(/'/g,"''")}'`,x=l.map(_=>g(p[_])).join(", ");return`INSERT INTO ${t.table} (${l.join(", ")}) VALUES (${x});`}return t.columns.length===0?a.jsx("div",{className:"p-6 text-sm text-muted-foreground",children:"This table has no columns."}):a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:a.jsxs("table",{className:"w-max min-w-full border-collapse text-left font-mono text-[11px]",children:[a.jsx("thead",{className:"sticky top-0 z-10 bg-card",children:a.jsxs("tr",{className:"border-b border-border",children:[t.columns.map(p=>a.jsxs("th",{className:"whitespace-nowrap px-3 py-2 font-semibold text-foreground",children:[a.jsxs("span",{className:"flex items-center gap-1",children:[p.primaryKey?a.jsx(kC,{className:"size-3 text-amber-500"}):null,p.name]}),a.jsx("span",{className:"block text-[10px] font-normal text-muted-foreground",children:p.dataType})]},p.name)),a.jsx("th",{className:"sticky right-0 z-20 w-16 border-l border-border bg-card px-2 py-2"})]})}),a.jsxs("tbody",{children:[t.rows.map((p,g)=>a.jsxs("tr",{className:"group border-b border-border/60 hover:bg-muted/40",children:[t.columns.map(x=>a.jsx("td",{className:"max-w-[320px] truncate px-3 py-1 align-top text-muted-foreground",title:Vc(p[x.name]),children:Vc(p[x.name])},x.name)),a.jsx("td",{className:"sticky right-0 z-[1] border-l border-border/60 bg-card px-2 py-1 align-top before:pointer-events-none before:absolute before:inset-0 before:bg-muted/40 before:opacity-0 group-hover:before:opacity-100",children:a.jsxs("div",{className:"relative z-[1] flex items-center justify-end gap-0.5",children:[a.jsx(cl,{label:"Ask AI about this row",onAsk:()=>u(p)}),a.jsx(x3,{label:"Row actions",items:[{label:"Copy as JSON",icon:a.jsx(WA,{className:"size-3.5"}),onSelect:()=>{h(JSON.stringify(p,null,2),"row as JSON")}},{label:"Copy as CSV",icon:a.jsx(L4,{className:"size-3.5"}),onSelect:()=>{h(m(p),"row as CSV")}},{label:"Copy as SQL INSERT",icon:a.jsx(Yn,{className:"size-3.5"}),onSelect:()=>{h(d(p),"INSERT statement")}}]})]})})]},g)),t.rows.length===0?a.jsx("tr",{children:a.jsx("td",{colSpan:t.columns.length+1,className:"px-3 py-6 text-center text-muted-foreground",children:"No rows."})}):null]})]})})}function Vc(e){return e==null?"NULL":typeof e=="object"?JSON.stringify(e):String(e)}function n$({connection:e,busy:t,onConfirm:s,onClose:n}){return a.jsx(Xn,{icon:a.jsx(DC,{className:"text-amber-500"}),onClose:n,title:`Unlock writes on "${e}"?`,children:a.jsxs("div",{className:"flex flex-col gap-4 text-sm",children:[a.jsxs("p",{className:"text-muted-foreground",children:["This lets the SQL console run statements that ",a.jsx("strong",{children:"change data"})," ","— ",a.jsx("span",{className:"font-mono",children:"INSERT"}),","," ",a.jsx("span",{className:"font-mono",children:"UPDATE"}),","," ",a.jsx("span",{className:"font-mono",children:"DELETE"}),", and DDL like"," ",a.jsx("span",{className:"font-mono",children:"DROP"}),". Writes still preview their affected rows before they commit, but an unlocked connection can modify or destroy real data."]}),a.jsx("p",{className:"text-muted-foreground",children:"The lock stays open for this connection until you re-lock it. It is never shared with the AI agent."}),a.jsxs("div",{className:"flex items-center justify-end gap-2 border-t border-border pt-3",children:[a.jsx(Q,{variant:"outline",size:"sm",onClick:n,type:"button",children:"Cancel"}),a.jsxs(Q,{size:"sm",onClick:s,disabled:t,type:"button",children:[t?a.jsx(ht,{className:"animate-spin"}):a.jsx(CC,{}),"Unlock writes"]})]})]})})}function i$({sql:e,preview:t,busy:s,onConfirm:n,onClose:o}){return a.jsx(Xn,{icon:a.jsx(du,{className:"text-amber-500"}),onClose:o,title:"Confirm write",children:a.jsxs("div",{className:"flex flex-col gap-4 text-sm",children:[a.jsx("pre",{className:"max-h-40 overflow-auto rounded-md border border-border bg-muted/40 px-3 py-2 font-mono text-[11px] whitespace-pre-wrap",children:e}),t.previewUnavailable?a.jsx("p",{className:"rounded-md border border-amber-500/40 bg-amber-500/10 px-3 py-2 text-[13px] text-amber-700 dark:text-amber-300",children:"This statement can’t be previewed — DDL commits immediately on this engine and cannot be rolled back. Running it applies the change at once."}):a.jsxs("p",{className:"text-muted-foreground",children:["This will affect"," ",a.jsx("strong",{className:"text-foreground tabular-nums",children:t.affectedRows??0})," ","row",t.affectedRows===1?"":"s",". The preview ran in a transaction that was rolled back — nothing has changed yet."]}),a.jsxs("div",{className:"flex items-center justify-end gap-2 border-t border-border pt-3",children:[a.jsx(Q,{variant:"outline",size:"sm",onClick:o,type:"button",children:"Cancel"}),a.jsxs(Q,{size:"sm",className:"bg-amber-600 text-white hover:bg-amber-600/90",onClick:n,disabled:s,type:"button",children:[s?a.jsx(ht,{className:"animate-spin"}):null,"Run & commit"]})]})]})})}function r$({connection:e,engine:t,unlocked:s,seed:n,onWriteAccessChange:o}){const{success:l}=Es(),{sendToAgent:u}=At(),h=WP(e),m=XP(e),d=ZP(e,o),[p,g]=y.useState(n?.sql??""),[x,_]=y.useState(100),S=n?.nonce;y.useEffect(()=>{n&&g(n.sql)},[S]);const[w,C]=y.useState(!1),N=JP(e,t,s,g),j=p.trim().length>0&&!YP(p),E=s&&j,A=j&&!s,O=h.running||m.previewing;function P(){if(p.trim()){if(A){C(!0);return}E?(h.reset(),m.preview(p)):(m.reset(),h.run(p,x))}}function D(L){(L.metaKey||L.ctrlKey)&&L.key==="Enter"&&(L.preventDefault(),P())}function T(L){u({prompt:Rz(e,t,p,L),source:{type:"database-sql-debug",label:"Debug SQL"},label:"Debug this SQL error"})}async function z(){const L=await m.commit();if(L?.committed){const I=L.affectedRows??0;l(`Committed — ${I} row${I===1?"":"s"} affected.`)}}return a.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[a.jsxs("div",{className:"shrink-0 border-b border-border p-2",children:[a.jsx(a$,{generate:N}),a.jsx("textarea",{value:p,onChange:L=>g(L.target.value),onKeyDown:D,spellCheck:!1,placeholder:s?"SELECT … / INSERT … / UPDATE … (Cmd/Ctrl+Enter to run)":"SELECT * FROM … (read-only — Cmd/Ctrl+Enter to run)",className:"h-24 w-full resize-y rounded-md border border-border bg-background px-2 py-1.5 font-mono text-[12px] outline-none focus:border-ring"}),a.jsxs("div",{className:"mt-2 flex items-center justify-between gap-2",children:[a.jsx(o$,{unlocked:s,updating:d.updating,onUnlock:()=>C(!0),onLock:()=>{d.setUnlocked(!1)}}),a.jsxs("div",{className:"flex items-center gap-2",children:[E?null:a.jsx("select",{"aria-label":"Max rows",className:"rounded-md border border-border bg-background px-1.5 py-1 text-[11px]",value:x,onChange:L=>_(Number(L.target.value)),children:b3.map(L=>a.jsxs("option",{value:L,children:[L," rows"]},L))}),a.jsxs(Q,{size:"sm",className:ae("h-7 px-3",E&&"bg-amber-600 text-white hover:bg-amber-600/90"),onClick:P,disabled:O||!p.trim(),type:"button",children:[O?a.jsx(ht,{className:"size-3.5 animate-spin"}):a.jsx(xr,{className:"size-3.5"}),E?"Preview write":"Run"]})]})]})]}),a.jsx(l$,{read:h,write:m,onDebug:T}),w?a.jsx(n$,{connection:e,busy:d.updating,onConfirm:async()=>{await d.setUnlocked(!0),C(!1)},onClose:()=>C(!1)}):null,m.pending?a.jsx(i$,{sql:m.pending.sql,preview:m.pending.preview,busy:m.committing,onConfirm:()=>{z()},onClose:m.cancel}):null]})}function a$({generate:e}){const[t,s]=y.useState("");function n(){const l=t.trim();!l||e.generating||e.generate(l)}function o(l){l.key==="Enter"&&(l.preventDefault(),n())}return a.jsxs("div",{className:"mb-2",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsxs("div",{className:"relative flex-1",children:[a.jsx(Tt,{className:"pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2"}),a.jsx("input",{value:t,onChange:l=>s(l.target.value),onKeyDown:o,disabled:e.generating,placeholder:"Describe the query in plain English — AI writes the SQL below",className:"h-8 w-full rounded-md border border-border bg-background pl-7 pr-2 text-[12px] outline-none focus:border-ring disabled:opacity-60"})]}),a.jsxs(Q,{size:"sm",variant:"outline",className:"h-8 px-3",onClick:n,disabled:e.generating||!t.trim(),type:"button",children:[e.generating?a.jsx(ht,{className:"size-3.5 animate-spin"}):a.jsx(Tt,{className:"size-3.5"}),e.generating?"Generating…":"Ask AI"]})]}),e.error?a.jsx("p",{className:"mt-1 text-[11px] text-amber-600 dark:text-amber-400",children:e.error}):null]})}function o$({unlocked:e,updating:t,onUnlock:s,onLock:n}){return a.jsxs("button",{type:"button",onClick:e?n:s,disabled:t,className:ae("flex items-center gap-1.5 rounded-md border px-2 py-1 text-[11px] font-medium transition-colors",e?"border-amber-500/50 text-amber-600 hover:bg-amber-500/10 dark:text-amber-400":"border-border text-muted-foreground hover:text-foreground"),title:e?"Writes unlocked — click to lock":"Read-only — click to unlock writes",children:[t?a.jsx(ht,{className:"size-3.5 animate-spin"}):e?a.jsx(CC,{className:"size-3.5"}):a.jsx(kM,{className:"size-3.5"}),e?"Writes unlocked":"Read-only"]})}function l$({read:e,write:t,onDebug:s}){const n=t.error??e.error;return a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:n?a.jsxs("div",{className:"space-y-3 p-4",children:[a.jsx("p",{className:"whitespace-pre-wrap font-mono text-[12px] text-destructive",children:n}),a.jsxs(Q,{size:"sm",variant:"outline",className:"h-7 px-3",onClick:()=>s(n),type:"button",children:[a.jsx(Tt,{className:"size-3.5"}),"Debug with AI"]})]}):t.committed?a.jsx(c$,{outcome:t.committed}):e.result?a.jsx(v3,{columns:e.result.columns,rows:e.result.rows,truncated:e.result.truncated}):a.jsx("div",{className:"flex h-full items-center justify-center p-8 text-center text-sm text-muted-foreground",children:"Write a query and run it to see results here."})})}function c$({outcome:e}){if(!e)return null;const t=e.affectedRows??0;return a.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[a.jsxs("div",{className:"flex shrink-0 items-center gap-1.5 border-b border-border bg-emerald-500/10 px-3 py-1.5 text-[12px] text-emerald-700 dark:text-emerald-400",children:[a.jsx(Zn,{className:"size-3.5"}),"Committed — ",t," row",t===1?"":"s"," affected."]}),e.rows&&e.rows.length>0&&e.columns?a.jsx(v3,{columns:e.columns,rows:e.rows}):null]})}function v3({columns:e,rows:t,truncated:s=!1}){return e.length===0?a.jsx("div",{className:"p-6 text-sm text-muted-foreground",children:"Query ran successfully — no columns returned."}):a.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[s?a.jsxs("div",{className:"flex shrink-0 items-center gap-1.5 border-b border-border bg-amber-500/10 px-3 py-1.5 text-[11px] text-amber-600 dark:text-amber-400",children:[a.jsx(du,{className:"size-3.5"}),"Showing the first ",t.length," rows — add a LIMIT to narrow the result."]}):null,a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:a.jsxs("table",{className:"w-max min-w-full border-collapse text-left font-mono text-[11px]",children:[a.jsx("thead",{className:"sticky top-0 z-10 bg-card",children:a.jsx("tr",{className:"border-b border-border",children:e.map(n=>a.jsx("th",{className:"whitespace-nowrap px-3 py-2 font-semibold text-foreground",children:n.name},n.name))})}),a.jsxs("tbody",{children:[t.map((n,o)=>a.jsx("tr",{className:"border-b border-border/60 hover:bg-muted/40",children:e.map(l=>a.jsx("td",{className:"max-w-[320px] truncate px-3 py-1 align-top text-muted-foreground",title:Vc(n[l.name]),children:Vc(n[l.name])},l.name))},o)),t.length===0?a.jsx("tr",{children:a.jsx("td",{colSpan:e.length,className:"px-3 py-6 text-center text-muted-foreground",children:"No rows."})}):null]})]})})]})}function u$({staged:e,onStageConsumed:t}={}){const{connections:s,loading:n,error:o,refresh:l}=GP(),{error:u,success:h}=Es(),{sendToAgent:m}=At(),[d,p]=y.useState(null),[g,x]=y.useState("browse"),[_,S]=y.useState(null),[w,C]=y.useState(null);y.useEffect(()=>{e&&(e.connection&&p(e.connection),x("query"),C({sql:e.sql,nonce:e.nonce}),t?.())},[e?.nonce]);function N(){m({prompt:Ez,source:{type:"database-setup",label:"Add a database"},label:"Help me connect a database, one step at a time."})}y.useEffect(()=>{if(s.length===0){p(null);return}p(A=>A&&s.some(O=>O.name===A)?A:s[0].name)},[s]);async function j(A){try{await XR(A),h(`Removed connection "${A}".`),await l()}catch(O){u(O instanceof Error?O.message:String(O))}}function E(A){S({mode:"edit",target:A})}return a.jsxs("div",{className:"flex h-full min-h-0 flex-col bg-card/85",children:[a.jsxs("header",{className:"flex shrink-0 items-center justify-between gap-2 border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(Yn,{className:"size-4 text-muted-foreground"}),a.jsx("span",{className:"text-sm font-semibold",children:"Databases"}),n&&s.length===0?a.jsx(ht,{className:"size-3.5 animate-spin text-muted-foreground"}):null]}),a.jsxs("div",{className:"flex items-center gap-2",children:[d?a.jsx(d$,{mode:g,onChange:x}):null,a.jsx(qP,{connections:s,selected:d,onSelect:p,onAdd:()=>S({mode:"add"}),onEdit:E,onRemove:A=>{j(A)}}),a.jsx(VP,{onAddManual:()=>S({mode:"add"}),onAddWithAi:N})]})]}),a.jsx("div",{className:"min-h-0 flex-1",children:o?a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"muted",className:"border-destructive/40 text-destructive",children:o})}):d?g==="query"?a.jsx(r$,{connection:d,engine:s.find(A=>A.name===d)?.engine,unlocked:s.find(A=>A.name===d)?.writeUnlocked??!1,seed:w,onWriteAccessChange:l},d):a.jsx(h$,{connection:d}):a.jsx(f$,{onAdd:()=>S({mode:"add"}),onAddWithAi:N})}),_?a.jsx(HP,{initial:_.mode==="edit"?_.target:void 0,onClose:()=>S(null),onSaved:l}):null]})}function d$({mode:e,onChange:t}){const s=[{value:"browse",label:"Browse",icon:zC},{value:"query",label:"SQL",icon:hl}];return a.jsx("div",{className:"flex items-center rounded-md border border-border p-0.5",children:s.map(n=>{const o=n.icon;return a.jsxs("button",{type:"button",onClick:()=>t(n.value),className:ae("flex items-center gap-1 rounded px-2 py-1 text-[11px] font-medium transition-colors",e===n.value?"bg-muted text-foreground":"text-muted-foreground hover:text-foreground"),children:[a.jsx(o,{className:"size-3.5"}),n.label]},n.value)})})}function h$({connection:e}){const{sendToAgent:t}=At(),{tables:s,selectedTable:n,setSelectedTable:o,sample:l,tablesError:u,rowsError:h,loadingTables:m,loadingRows:d,limit:p,offset:g,canPrev:x,canNext:_,changePageSize:S,nextPage:w,prevPage:C}=QP(e);function N(E){t({prompt:vw(e,E.table,{engine:E.engine,columns:E.columns}),source:{type:"database-table",label:`${E.table.name} table`},mode:"draft"})}function j(E){t({prompt:vw(e,E),source:{type:"database-table",label:`${E.name} table`},mode:"draft"})}return a.jsxs("div",{className:"flex h-full min-h-0",children:[a.jsxs("div",{className:"flex w-56 shrink-0 flex-col border-r border-border",children:[a.jsxs("div",{className:"flex shrink-0 items-center gap-2 border-b border-border px-3 py-2",children:[a.jsx(zC,{className:"size-4 text-muted-foreground"}),a.jsx("span",{className:"text-sm font-semibold",children:"Tables"}),a.jsx(Pe,{variant:"outline",size:"small",children:s.length}),m?a.jsx(ht,{className:"size-3.5 animate-spin"}):null]}),u?a.jsx("div",{className:"p-3",children:a.jsx(Ve,{variant:"muted",className:"border-destructive/40 text-destructive",children:u})}):a.jsxs("ul",{className:"min-h-0 flex-1 overflow-auto",children:[s.map(E=>a.jsxs("li",{className:ae("group flex items-center gap-1 pr-1 transition-colors hover:bg-muted/50",E.qualifiedName===n&&"bg-muted/70"),children:[a.jsx("button",{type:"button",onClick:()=>o(E.qualifiedName),className:ae("min-w-0 flex-1 truncate px-3 py-1.5 text-left font-mono text-[11px]",E.qualifiedName===n&&"font-semibold"),children:E.qualifiedName}),a.jsx(cl,{label:`Ask AI about \`${E.qualifiedName}\``,onAsk:()=>j(E)})]},E.qualifiedName)),!m&&s.length===0?a.jsx("li",{className:"px-3 py-2 text-xs text-muted-foreground",children:"No tables."}):null]})]}),a.jsxs("div",{className:"flex min-h-0 min-w-0 flex-1 flex-col",children:[a.jsxs("div",{className:"group flex shrink-0 items-center justify-between gap-2 border-b border-border px-3 py-2",children:[a.jsxs("span",{className:"flex min-w-0 items-center gap-1",children:[a.jsx("span",{className:"truncate font-mono text-xs font-semibold",children:n??"Select a table"}),l?a.jsx(cl,{label:`Ask AI about \`${l.table.qualifiedName}\``,onAsk:()=>N(l)}):null]}),l?a.jsxs("div",{className:"flex shrink-0 items-center gap-2 text-[11px] text-muted-foreground",children:[a.jsx("span",{className:"tabular-nums",children:l.rowCount===0?"no rows":`rows ${g+1}–${g+l.rowCount}`}),a.jsx("select",{"aria-label":"Rows per page",className:"rounded-md border border-border bg-background px-1.5 py-0.5 text-[11px]",value:p,onChange:E=>S(Number(E.target.value)),children:b3.map(E=>a.jsxs("option",{value:E,children:[E," / page"]},E))}),a.jsx(Q,{size:"sm",variant:"outline",className:"h-6 px-2",onClick:C,disabled:!x,type:"button",children:"Prev"}),a.jsx(Q,{size:"sm",variant:"outline",className:"h-6 px-2",onClick:w,disabled:!_,type:"button",children:"Next"})]}):null]}),h?a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"muted",className:"border-destructive/40 text-destructive",children:h})}):d?a.jsxs("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:[a.jsx(ht,{className:"mr-2 size-4 animate-spin"}),"Loading rows…"]}):l?a.jsx(s$,{connection:e,sample:l}):a.jsx("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:"Pick a table to sample its rows."})]})]})}function f$({onAdd:e,onAddWithAi:t}){return a.jsx("div",{className:"flex h-full items-center justify-center p-8 text-center",children:a.jsxs("div",{className:"max-w-sm",children:[a.jsx(Yn,{className:"mx-auto size-8 text-muted-foreground/50"}),a.jsx("p",{className:"mt-3 text-sm font-medium",children:"No connections yet"}),a.jsxs("p",{className:"mt-1 text-xs text-muted-foreground",children:["Add a read-only Postgres, MySQL, or SQLite connection to browse tables and sample rows. NoMoreIDE can auto-detect connection strings from your services' ",a.jsx("code",{children:".env"})," files."]}),a.jsxs("div",{className:"mt-4 flex items-center justify-center gap-2",children:[a.jsxs(Q,{size:"sm",onClick:e,type:"button",children:[a.jsx(xs,{}),"Add connection"]}),a.jsxs(Q,{size:"sm",variant:"outline",onClick:t,type:"button",children:[a.jsx(mi,{}),"Add with AI"]})]})]})})}function m$({incident:e}){const{error:t}=Es(),{sendToAgent:s}=At(),[n,o]=y.useState(!1);async function l(){o(!0);try{const{prompt:u}=await e6(e.id);s({prompt:u,source:{type:"error",label:`${e.service} — ${e.level}`},label:`Help me debug this ${e.level} in \`${e.service}\`: ${e.title}`})}catch(u){t(u instanceof Error?u.message:String(u))}finally{o(!1)}}return a.jsxs("div",{className:"flex h-full min-h-0 min-w-0 flex-col",children:[a.jsxs("div",{className:"shrink-0 border-b border-border px-4 py-3",children:[a.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[a.jsx(Pe,{variant:e.level==="error"?"danger":"secondary",appearance:"subtle",size:"small",children:e.level}),a.jsx("span",{className:"truncate font-mono text-xs font-semibold",children:e.service}),e.count>1?a.jsxs(Pe,{variant:"outline",size:"small",children:["×",e.count]}):null]}),a.jsxs(Q,{onClick:()=>{l()},disabled:n,size:"sm",variant:"outline",children:[a.jsx(Tt,{className:"size-3.5"}),n?"Sending…":"Fix with AI"]})]}),a.jsx("p",{className:"mt-1.5 break-words font-mono text-xs text-foreground",children:e.title}),e.file?a.jsxs("p",{className:"mt-1 flex items-center gap-1.5 font-mono text-[11px] text-muted-foreground",children:[a.jsx(_C,{className:"size-3.5"}),e.file,e.line?`:${e.line}`:""]}):null,a.jsxs("p",{className:"mt-1 font-mono text-[10px] text-muted-foreground/80",children:["first ",new Date(e.firstSeen).toLocaleString()," · last"," ",new Date(e.lastSeen).toLocaleTimeString()]})]}),a.jsxs("div",{className:"min-h-0 flex-1 overflow-auto p-4",children:[a.jsx("p",{className:"mb-1.5 text-xs font-medium text-muted-foreground",children:"Log excerpt"}),a.jsx("pre",{className:"overflow-x-auto rounded-md border border-border bg-muted/40 p-3 font-mono text-[11px] leading-relaxed",children:e.logExcerpt.join(`
|
|
155
|
-
`)}),a.jsx("p",{className:"mt-3 text-[11px] text-muted-foreground",children:`"Fix with AI" sends the agent this excerpt with the affected file's diff and the last 40 log lines, so it can start debugging right away.`})]})]})}function Hw(e){return[...e].sort((t,s)=>t.lastSeen<s.lastSeen?1:t.lastSeen>s.lastSeen?-1:s.id-t.id)}function p$(){const[e,t]=y.useState([]),[s,n]=y.useState(!1),[o,l]=y.useState(null),u=y.useCallback(h=>{t(m=>Hw([...m.filter(d=>d.id!==h.id),h]))},[]);return y.useEffect(()=>{let h=!0;HC().then(d=>{h&&t(Hw(d))}).catch(d=>{h&&l(d instanceof Error?d.message:String(d))});const m=new EventSource("/api/errors/stream");return m.addEventListener("open",()=>n(!0)),m.addEventListener("error",()=>n(!1)),m.addEventListener("incident",d=>{try{const p=JSON.parse(d.data);u(p)}catch{}}),()=>{h=!1,m.close()}},[u]),{incidents:e,connected:s,error:o}}function g$(){const{incidents:e,connected:t,error:s}=p$(),[n,o]=y.useState(null);y.useEffect(()=>{if(e.length===0){o(null);return}o(u=>u!==null&&e.some(h=>h.id===u)?u:e[0].id)},[e]);const l=y.useMemo(()=>e.find(u=>u.id===n)??null,[e,n]);return a.jsxs("div",{className:"flex h-full min-h-0 bg-card/85",children:[a.jsxs("div",{className:"flex w-72 shrink-0 flex-col border-r border-border",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(Eh,{className:"size-4 text-muted-foreground"}),a.jsx("span",{className:"text-sm font-semibold",children:"Incidents"}),a.jsx(Pe,{variant:"outline",size:"small",children:e.length})]}),a.jsx(Pe,{variant:"outline",size:"small",icon:a.jsx("span",{className:ae("inline-block size-1.5 rounded-full",t?"animate-pulse bg-emerald-500":"bg-muted-foreground/60")}),children:t?"live":"reconnecting…"})]}),a.jsx("ul",{className:"min-h-0 flex-1 divide-y divide-border overflow-auto",children:e.map(u=>a.jsx("li",{children:a.jsxs("button",{type:"button",onClick:()=>o(u.id),className:ae("flex w-full flex-col gap-1 px-3 py-2 text-left transition-colors hover:bg-muted/50",u.id===n&&"bg-muted/70"),children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsx("span",{className:"truncate font-mono text-[11px] font-semibold",children:u.service}),a.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[u.count>1?a.jsxs(Pe,{variant:"outline",size:"small",children:["×",u.count]}):null,a.jsx(Pe,{variant:u.level==="error"?"danger":"secondary",appearance:"subtle",size:"small",children:u.level})]})]}),a.jsx("span",{className:"truncate font-mono text-[11px] text-muted-foreground",children:u.title}),a.jsx("span",{className:"font-mono text-[10px] text-muted-foreground/70",children:new Date(u.lastSeen).toLocaleTimeString()})]})},u.id))})]}),a.jsx("div",{className:"min-h-0 min-w-0 flex-1",children:s?a.jsx("div",{className:"p-4",children:a.jsxs(Ve,{variant:"muted",className:"border-destructive/40 text-destructive",children:["Failed to load incidents: ",s]})}):l?a.jsx(m$,{incident:l}):a.jsx("div",{className:"flex h-full items-center justify-center p-8 text-center",children:a.jsxs("div",{className:"max-w-sm",children:[a.jsx(Eh,{className:"mx-auto size-8 text-muted-foreground/50"}),a.jsx("p",{className:"mt-3 text-sm font-medium",children:"No incidents yet"}),a.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:"Errors and stack traces from your running services land here automatically. Each one becomes a one-click prompt for your agent."})]})})})]})}function Gh({label:e}){return a.jsx(Ve,{variant:"muted",className:"m-4 text-center",children:e})}const b$=900*1e3,Mc=12,ng=200;function x$({events:e}){const[t,s]=y.useState(null),[n,o]=y.useState(null),{rows:l,windowStart:u,windowEnd:h}=y.useMemo(()=>v$(e),[e]),m=t?l.find(d=>d.service===t)??null:null;return a.jsxs(a.Fragment,{children:[a.jsxs(gi,{className:"rounded-none border-0 border-b border-border bg-transparent",children:[a.jsxs(bi,{className:"border-b border-border px-3 py-2",children:[a.jsxs(xi,{className:"flex items-center gap-2",children:[a.jsx(Ga,{className:"size-3.5"}),"Runtime Monitor"]}),a.jsx(Ii,{className:"text-xs",children:e.length===0?"No events yet":`${e.length} event${e.length===1?"":"s"} · last 15 min`})]}),a.jsx(vi,{className:"p-0",children:l.length===0?a.jsx(Gh,{label:"No runtime timeline events yet."}):a.jsxs("div",{className:"divide-y divide-border",children:[l.map(d=>a.jsx(y$,{onClick:()=>s(d.service),row:d,windowEnd:h,windowStart:u},d.service)),a.jsxs("div",{className:"flex justify-between px-3 py-1.5 font-mono text-[10px] text-muted-foreground",children:[a.jsx("span",{children:Wh(u)}),a.jsx("span",{children:"now"})]})]})})]}),m?a.jsx(Xn,{icon:a.jsx(Ga,{}),onClose:()=>s(null),title:m.service,children:a.jsx(w$,{onSelect:o,row:m})}):null,n?a.jsx(Xn,{icon:a.jsx(Ga,{}),onClose:()=>o(null),title:n.title,children:a.jsx(k$,{event:n})}):null]})}function v$(e){const t=Date.now(),s=t,n=t-b$;let o=e.filter(m=>{if(m.kind==="service.http")return!1;const d=new Date(m.timestamp).getTime();return!Number.isNaN(d)&&d>=n});o.length===0&&e.length>0?o=e.slice(-ng):o.length>ng&&(o=o.slice(-ng));const l=new Map;for(const m of o){const d=m.service||"·system",p=l.get(d)??[];p.push(m),l.set(d,p)}const u=Math.max(s-n,1);return{rows:Array.from(l.entries()).map(([m,d])=>{const p=[...d].sort((j,E)=>j.timestamp.localeCompare(E.timestamp)),g=new Array(Mc).fill(0),x=new Array(Mc).fill(null);for(const j of p){const E=new Date(j.timestamp).getTime(),A=Math.max(n,Math.min(s,E)),O=Math.min(Mc-1,Math.floor((A-n)/u*Mc));g[O]+=1;const P=x[O];x[O]=_$(P,j.severity)}const _=p.filter(j=>j.severity==="error").length,S=p.filter(j=>j.severity==="warning").length,w=p.length-_-S,C=[...p].reverse().find(j=>j.severity!=="info")??null,N=_>0?"error":S>0?"warning":"info";return{service:m,events:p,errors:_,warnings:S,infos:w,buckets:g,bucketSeverity:x,lastNotable:C,worstSeverity:N}}).sort((m,d)=>{const p=x=>x.errors*1e3+x.warnings,g=p(d)-p(m);return g!==0?g:m.service.localeCompare(d.service)}),windowStart:n,windowEnd:s}}function _$(e,t){return e==="error"||t==="error"?"error":e==="warning"||t==="warning"?"warning":"info"}function y$({onClick:e,row:t,windowEnd:s,windowStart:n}){const o=Math.max(1,...t.buckets);return a.jsxs("button",{className:"timeline-service-row block w-full px-3 py-2 text-left transition-colors hover:bg-muted/40 focus:outline-none focus-visible:bg-muted/40","data-testid":"timeline-service-row",onClick:e,type:"button",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[a.jsx("span",{className:ae("size-2 shrink-0 rounded-full",_3(t.worstSeverity))}),a.jsx("span",{className:"min-w-0 flex-1 truncate text-xs font-medium text-foreground",dir:"rtl",children:a.jsx("bdi",{children:t.service})}),t.errors>0?a.jsxs("span",{className:"rounded bg-red-500/15 px-1 font-mono text-[10px] text-red-500",children:[t.errors,"E"]}):null,t.warnings>0?a.jsxs("span",{className:"rounded bg-amber-500/15 px-1 font-mono text-[10px] text-amber-500",children:[t.warnings,"W"]}):null,a.jsx(pi,{className:"size-3 text-muted-foreground"})]}),a.jsx("div",{className:"timeline-density mt-1.5 grid h-3 gap-px","data-testid":"timeline-density",style:{gridTemplateColumns:`repeat(${Mc}, minmax(0, 1fr))`},children:t.buckets.map((l,u)=>a.jsx(S$,{count:l,max:o,severity:t.bucketSeverity[u]},u))}),t.lastNotable?a.jsx("div",{className:"mt-1 truncate font-mono text-[10px] text-muted-foreground",children:t.lastNotable.detail??t.lastNotable.title}):a.jsxs("div",{className:"mt-1 truncate text-[10px] text-muted-foreground",children:[t.infos," info ",t.infos===1?"event":"events"]}),a.jsxs("div",{className:"mt-0.5 flex justify-between font-mono text-[9px] text-muted-foreground/60",children:[a.jsx("span",{children:Wh(n)}),a.jsx("span",{children:Wh(s)})]})]})}function S$({count:e,max:t,severity:s}){if(e===0)return a.jsx("span",{className:"rounded-sm bg-border/60"});const n=Math.min(1,.35+e/t*.65);return a.jsx("span",{className:ae("rounded-sm",C$(s)),style:{opacity:n},title:`${e} event${e===1?"":"s"}`})}function w$({onSelect:e,row:t}){const s=[...t.events].sort((n,o)=>o.timestamp.localeCompare(n.timestamp));return a.jsxs("div",{className:"flex max-h-[480px] flex-col overflow-hidden",children:[a.jsxs("div",{className:"flex shrink-0 items-center gap-2 border-b border-border px-4 py-2 text-xs text-muted-foreground",children:[a.jsxs("span",{children:[t.events.length," events"]}),a.jsx("span",{children:"·"}),a.jsxs("span",{children:[t.errors," error",t.errors===1?"":"s"]}),a.jsx("span",{children:"·"}),a.jsxs("span",{children:[t.warnings," warning",t.warnings===1?"":"s"]})]}),a.jsx("ul",{className:"min-h-0 divide-y divide-border overflow-auto",children:s.map(n=>a.jsx("li",{children:a.jsxs("button",{className:"block w-full px-4 py-2 text-left hover:bg-muted/40 focus:outline-none focus-visible:bg-muted/40",onClick:()=>e(n),type:"button",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx("span",{className:ae("size-2 shrink-0 rounded-full",_3(n.severity))}),a.jsx("span",{className:"min-w-0 flex-1 truncate text-xs font-medium text-foreground",children:n.title}),a.jsx("span",{className:"shrink-0 font-mono text-[10px] text-muted-foreground",children:Wh(n.timestamp)})]}),n.detail?a.jsx("div",{className:"mt-1 truncate font-mono text-[10px] text-muted-foreground",children:n.detail}):null]})},n.id))})]})}function k$({event:e}){const t=new Date(e.timestamp);return a.jsxs("div",{className:"space-y-3 p-4 text-sm",children:[a.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[a.jsx("span",{className:ae("rounded px-1.5 py-0.5 font-mono text-[10px] uppercase text-white",N$(e.severity)),children:e.severity}),a.jsx("span",{className:"rounded border border-border bg-muted px-1.5 py-0.5 font-mono text-[10px] text-muted-foreground",children:e.kind}),e.service?a.jsx("span",{className:"rounded border border-border bg-background px-1.5 py-0.5 font-mono text-[10px] text-foreground",children:e.service}):null]}),a.jsxs("div",{children:[a.jsx("div",{className:"text-xs text-muted-foreground",children:"When"}),a.jsx("div",{className:"font-mono text-xs",children:Number.isNaN(t.getTime())?e.timestamp:t.toLocaleString()})]}),e.detail?a.jsxs("div",{children:[a.jsx("div",{className:"text-xs text-muted-foreground",children:"Detail"}),a.jsx("pre",{className:"mt-1 max-h-72 overflow-auto whitespace-pre-wrap rounded border border-border bg-background p-3 font-mono text-xs",children:e.detail})]}):null]})}function _3(e){return e==="error"?"bg-red-500":e==="warning"?"bg-amber-500":"bg-zinc-400"}function C$(e){return e==="error"?"bg-red-500":e==="warning"?"bg-amber-500":"bg-zinc-500"}function N$(e){return e==="error"?"bg-red-600":e==="warning"?"bg-amber-600":"bg-zinc-700"}function Wh(e){const t=typeof e=="number"?new Date(e):new Date(e);return Number.isNaN(t.getTime())?"--:--:--":t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"})}function E$({onOnboardRepo:e,onOnboardWithAi:t,onCreateService:s,onCreateWithAi:n}){return a.jsx("div",{className:"flex h-full min-h-0 items-center justify-center overflow-auto bg-card/85 p-6",children:a.jsxs("div",{className:"w-full max-w-xl space-y-6",children:[a.jsxs("div",{className:"space-y-2 text-center",children:[a.jsx("h2",{className:"text-xl font-semibold",children:"Set up your first service"}),a.jsx("p",{className:"text-sm text-muted-foreground",children:"NoMoreIDE runs and watches your services so you don't have to babysit terminals. Add your first one to get started — or let the agent do it for you."})]}),a.jsxs("div",{className:"space-y-3",children:[a.jsx(Uw,{icon:a.jsx(pn,{className:"size-5"}),title:"Add from GitHub",description:"Point at a repo — we detect how to run it and register it for you.",onClick:e,onAi:t,aiTitle:"Onboard with AI — the agent clones, detects and runs it for you"}),a.jsx(Uw,{icon:a.jsx(xs,{className:"size-5"}),title:"Create a service",description:"Define the command, working directory and port yourself.",onClick:s,onAi:n,aiTitle:"Set up with AI — the agent walks you through it, one step at a time"})]})]})})}function Uw({icon:e,title:t,description:s,onClick:n,onAi:o,aiTitle:l}){return a.jsxs("div",{className:"group flex items-stretch overflow-hidden rounded-lg border border-border bg-card shadow-sm transition-colors hover:border-foreground/20",children:[a.jsxs("button",{className:"flex flex-1 items-start gap-3 px-4 py-4 text-left hover:bg-muted/60",onClick:n,type:"button",children:[a.jsx("span",{className:"mt-0.5 shrink-0 text-muted-foreground",children:e}),a.jsxs("span",{className:"min-w-0 space-y-1",children:[a.jsx("span",{className:"block text-sm font-semibold",children:t}),a.jsx("span",{className:"block text-xs text-muted-foreground",children:s})]})]}),a.jsxs("button",{className:"flex shrink-0 items-center gap-1.5 border-l border-border px-4 text-xs font-medium text-muted-foreground transition-colors hover:bg-muted/60 hover:text-foreground",onClick:o,title:l,type:"button",children:[a.jsx(Tt,{className:"size-4 shrink-0"}),"AI"]})]})}function j$({health:e}){if(!e)return null;const t=e.processTree,s=e.status==="healthy"||e.status==="unknown"?void 0:R$(e.summary);return a.jsxs("div",{className:"mt-1.5 grid min-w-0 gap-2 text-[11px] text-muted-foreground sm:grid-cols-[minmax(0,1fr)_auto] sm:items-center",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[a.jsxs("span",{className:ae("inline-flex h-7 shrink-0 items-center gap-1.5 rounded-md px-2.5 font-medium",T$(e.status)),children:[a.jsx("span",{className:"inline-flex shrink-0",children:a.jsx(Ga,{className:"size-3"})}),a.jsx("span",{className:"whitespace-nowrap",children:e.status})]}),s?a.jsx("span",{className:"min-w-0 truncate",children:s}):null]}),t?a.jsxs("div",{className:"health-metrics flex min-w-max items-center gap-2 font-mono sm:justify-end",children:[a.jsxs("span",{className:"inline-flex items-center gap-1 font-mono",children:[a.jsx(y4,{className:"size-3"}),t.processCount," ",t.processCount===1?"process":"processes"]}),a.jsxs("span",{children:[M$(t.cpuPercent)," CPU"]}),a.jsxs("span",{className:"inline-flex items-center gap-1 font-mono",children:[a.jsx(EM,{className:"size-3"}),A$(t.rssMb)," RAM"]})]}):null]})}function T$(e){return e==="healthy"?"bg-emerald-600 text-white":e==="warning"?"bg-amber-600 text-white":e==="unhealthy"?"bg-red-600 text-white":"bg-zinc-700 text-white"}function A$(e){return Number.isInteger(e)?`${e} MB`:`${e.toFixed(1)} MB`}function M$(e){return`${e.toFixed(1)}%`}function R$(e){return e.replace(/^Recent error log:\s*/i,"Recent stderr: ").replace(/:\s*\d+(?:\.\d+)? MB RSS\.?$/i,"").replace(/\s+RSS\.?$/i,"")}function D$({ports:e}){const t=e.filter(n=>n.state==="occupied").length,s=e.filter(n=>n.state==="managed").length;return a.jsxs(gi,{className:"rounded-none border-0 border-b border-border bg-transparent",children:[a.jsxs(bi,{className:"border-b border-border px-3 py-2",children:[a.jsxs(xi,{className:"flex items-center gap-2",children:[a.jsx(BM,{className:"size-3.5"}),"Ports"]}),a.jsxs(Ii,{className:"text-xs",children:[s," managed, ",t," occupied by other"]})]}),a.jsx(vi,{className:"p-0",children:e.length?a.jsx("div",{className:"divide-y divide-border",children:e.map(n=>a.jsxs("div",{className:"grid grid-cols-[1fr_auto] items-center gap-2 px-3 py-2",children:[a.jsxs("div",{className:"min-w-0",children:[a.jsxs("div",{className:"font-mono text-xs",children:[":",n.port]}),a.jsx("div",{className:"truncate text-[11px] text-muted-foreground",children:n.services.join(", ")||"Unassigned"}),n.urls[0]?a.jsx("div",{className:"truncate font-mono text-[10px] text-muted-foreground",children:n.urls[0]}):null]}),a.jsx(O$,{port:n})]},n.port))}):a.jsx(Gh,{label:"No configured ports yet."})})]})}function O$({compact:e,port:t}){const s=t.state==="managed"?"managed":t.state==="occupied"?"occupied by other":"available",n=t.state==="managed"?"success":t.state==="occupied"?"warning":"outline";return a.jsx(Pe,{className:ae(e&&"max-w-36 truncate"),variant:n,children:s})}function L$({onChange:e,value:t}){return a.jsxs("label",{className:"relative block",children:[a.jsx(cR,{className:"pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground"}),a.jsx(nt,{"aria-label":"Search logs",className:"h-8 w-44 pl-7 text-xs",onChange:s=>e(s.target.value),placeholder:"Search logs",value:t})]})}function z$({className:e,containerRef:t,emptyText:s,logs:n,query:o}){return a.jsx("div",{className:ae("h-full max-w-full overflow-auto bg-background font-mono text-[11px] leading-5 dark:bg-zinc-950",e),ref:t,role:"log",children:n.length?n.map((l,u)=>a.jsxs("div",{className:ae("grid min-w-max grid-cols-[168px_minmax(420px,1fr)] gap-2 border-b border-border/45 px-3 py-0.5 dark:border-zinc-800/80",l.stream==="stderr"?"bg-red-50/70 text-red-800 dark:bg-red-950/35 dark:text-red-100":"bg-emerald-50/35 text-zinc-800 dark:bg-zinc-950 dark:text-zinc-200 dark:odd:bg-zinc-900/45"),children:[a.jsx("span",{className:"text-muted-foreground dark:text-zinc-500",children:l.timestamp}),a.jsxs("span",{className:"whitespace-pre-wrap break-words",children:[l.stream==="stderr"?a.jsx("span",{className:"mr-2 rounded bg-red-100 px-1 font-semibold uppercase text-red-700 dark:bg-red-500/15 dark:text-red-300 dark:ring-1 dark:ring-red-400/20",children:"stderr"}):null,I$(l.text,o)]})]},`${l.timestamp}-${l.stream}-${u}`)):a.jsx("div",{className:"p-3 text-muted-foreground",children:s})})}function B$(e){return`${e.timestamp} ${e.stream} ${e.text}`}function I$(e,t){const s=t.trim();if(!s)return e;const n=e.toLowerCase(),o=s.toLowerCase(),l=[];let u=0,h=n.indexOf(o);for(;h!==-1;){h>u&&l.push(e.slice(u,h));const m=h+s.length;l.push(a.jsx("mark",{className:"rounded bg-amber-200 px-0.5 text-amber-950 dark:bg-amber-400/20 dark:text-amber-200",children:e.slice(h,m)},`${h}-${m}`)),u=m,h=n.indexOf(o,u)}return u<e.length&&l.push(e.slice(u)),l}function Fw(e){return`${e.kind}:${e.name}`}function P$(e,t=!1,s={}){const[n,o]=y.useState(),[l,u]=y.useState(),[h,m]=y.useState(e.kind==="source"),d=JSON.stringify(s);return y.useEffect(()=>{o(void 0),u(void 0);let p=!1;const g=async()=>{try{if(e.kind==="service"){const _=await GC(e.name,s);p||(o(_.logs),m(_.queryable),u(void 0))}else{const _=await qC(e.name,s);p||(o(_),m(!0),u(void 0))}}catch(_){p||u(_ instanceof Error?_.message:String(_))}};g();const x=window.setInterval(g,t?1e3:2e3);return()=>{p=!0,window.clearInterval(x)}},[e.kind,e.name,t,d]),{logs:n,error:l,queryable:h}}const $$=[{label:"Live tail",value:""},{label:"Last 15 min",value:"15 min ago"},{label:"Last hour",value:"1 hour ago"},{label:"Today",value:"today"},{label:"Last 24h",value:"1 day ago"},{label:"Last 7 days",value:"7 days ago"}];function y3({target:e,query:t,setQuery:s,streaming:n,setStreaming:o,hideStdout:l,setHideStdout:u,fill:h=!1,leading:m,trailing:d}){const p=e.kind==="source",[g,x]=y.useState(""),[_,S]=y.useState(""),[w,C]=y.useState(t);y.useEffect(()=>{const K=window.setTimeout(()=>C(t),300);return()=>window.clearTimeout(K)},[t]);const N=y.useMemo(()=>{const K={};g&&(K.since=g),_&&(K.level=_);const te=w.trim();return te&&(K.grep=te),K},[g,_,w]),{logs:j,error:E,queryable:A}=P$(e,n,N),O=p||A,P=y.useRef(null),D=y.useRef(!0),[T,z]=y.useState([]),[L,I]=y.useState(!1),$=JSON.stringify(N);y.useEffect(()=>{z([])},[$,e.kind,e.name]);const U=y.useMemo(()=>{const K=j??[];if(T.length===0)return K;const te=new Set(T.map(R=>R.cursor).filter(Boolean));return[...T,...K.filter(R=>!R.cursor||!te.has(R.cursor))]},[j,T]),W=(T[0]??(j??[])[0])?.cursor;async function G(){if(!(!O||!W||L)){I(!0),D.current=!1;try{const K={...N,before:W,lines:200},te=e.kind==="source"?await qC(e.name,K):(await GC(e.name,K)).logs;te.length&&z(R=>{const Z=new Set(R.map(de=>de.cursor).filter(Boolean));return[...te.filter(de=>!de.cursor||!Z.has(de.cursor)),...R]})}finally{I(!1)}}}const B=t.trim().toLowerCase(),V=y.useMemo(()=>{let K=U;return l&&(K=K.filter(te=>te.stream==="stderr")),B&&(K=K.filter(te=>B$(te).toLowerCase().includes(B))),K},[U,l,B]);y.useEffect(()=>{const K=P.current;if(!K)return;const te=()=>{const R=K.scrollHeight-K.scrollTop-K.clientHeight;D.current=R<40};return te(),K.addEventListener("scroll",te,{passive:!0}),()=>K.removeEventListener("scroll",te)},[]),y.useEffect(()=>{if(!n||!D.current||V.length===0)return;const K=P.current;K&&(K.scrollTop=K.scrollHeight)},[n,V]);const X=j?B?`No log lines match "${t.trim()}".`:l?"No stderr output captured.":"No log entries.":"Loading…";return a.jsxs("div",{className:h?"flex h-full min-h-0 flex-col gap-2":"flex flex-col gap-2",children:[a.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[m,a.jsx(L$,{onChange:s,value:t}),O?a.jsxs(a.Fragment,{children:[a.jsx("select",{"aria-label":"Time range",className:"h-8 rounded-md border border-border bg-background px-2 text-xs",onChange:K=>x(K.target.value),value:g,children:$$.map(K=>a.jsx("option",{value:K.value,children:K.label},K.label))}),a.jsxs("select",{"aria-label":"Level",className:"h-8 rounded-md border border-border bg-background px-2 text-xs",onChange:K=>S(K.target.value),value:_,children:[a.jsx("option",{value:"",children:"All levels"}),a.jsx("option",{value:"warn",children:"Warnings+"}),a.jsx("option",{value:"error",children:"Errors"})]})]}):a.jsxs(qw,{active:l,activeClassName:"border-amber-600 bg-amber-50 text-amber-700 dark:border-amber-400/40 dark:bg-amber-500/15 dark:text-amber-300",onClick:()=>u(!l),children:[a.jsx(W4,{}),"Errors only"]}),a.jsxs(qw,{active:n,activeClassName:"border-emerald-600 bg-emerald-50 text-emerald-700 dark:border-emerald-400/40 dark:bg-emerald-500/15 dark:text-emerald-300",onClick:()=>o(!n),children:[a.jsx(nR,{}),n?"Streaming":"Stream"]}),O&&W?a.jsxs(Q,{disabled:L,onClick:()=>{G()},size:"sm",type:"button",variant:"outline",children:[a.jsx(of,{}),L?"Loading…":"Load older"]}):null,d?a.jsx("div",{className:"ml-auto flex items-center gap-2",children:d}):null]}),E?a.jsx("div",{className:"text-red-600",children:E}):null,a.jsx(z$,{className:ae("rounded border border-border/60",h?"min-h-0 flex-1":"max-h-80"),containerRef:P,emptyText:X,logs:V,query:t})]})}function qw({active:e,activeClassName:t,children:s,onClick:n}){return a.jsx(Q,{"aria-pressed":e,className:e?t:void 0,onClick:n,size:"sm",type:"button",variant:"outline",children:s})}function H$(e,t){return e.kind===t.kind&&e.name===t.name}function U$({options:e,target:t,onChange:s,className:n}){const o=e.findIndex(u=>H$(u.target,t)),l=[...new Set(e.map(u=>u.group))];return a.jsx("select",{"aria-label":"Log source",className:n??"h-8 max-w-44 rounded-md border border-border bg-background px-2 text-xs",onChange:u=>s(e[Number(u.target.value)].target),value:String(o),children:l.map(u=>a.jsx("optgroup",{label:u,children:e.map((h,m)=>h.group===u?a.jsx("option",{value:String(m),children:h.label},`${h.group}:${h.label}`):null)},u))})}function F$({serviceName:e}){const[t,s]=y.useState(""),[n,o]=y.useState(!1),[l,u]=y.useState(!1),[h,m]=y.useState(!1),d=a.jsx(y3,{fill:!0,hideStdout:l,query:t,setHideStdout:u,setQuery:s,setStreaming:o,streaming:n,target:{kind:"service",name:e},trailing:a.jsxs(Q,{onClick:()=>m(p=>!p),size:"sm",type:"button",variant:"outline",children:[h?a.jsx(jC,{}):a.jsx(NC,{}),h?"Exit":"Expand"]})});return h?a.jsx(Ax,{onClose:()=>m(!1),title:`Logs — ${e}`,children:d}):a.jsx("div",{className:"h-[60vh] min-h-[24rem]",children:d})}function Ax({title:e,onClose:t,children:s,maxWidthClass:n="max-w-6xl"}){return y.useEffect(()=>{function o(l){l.key==="Escape"&&t()}return window.addEventListener("keydown",o),()=>window.removeEventListener("keydown",o)},[t]),xu.createPortal(a.jsx("div",{className:"fixed inset-0 z-[1000] bg-black/40 p-4 sm:p-8",onMouseDown:t,children:a.jsxs("div",{"aria-modal":"true",className:`mx-auto flex h-full ${n} flex-col overflow-hidden rounded-lg border border-border bg-card text-xs shadow-xl`,onMouseDown:o=>o.stopPropagation(),role:"dialog",children:[a.jsxs("div",{className:"flex shrink-0 items-center gap-3 border-b border-border px-4 py-2",children:[a.jsx("h2",{className:"min-w-0 flex-1 truncate text-sm font-semibold",children:e}),a.jsx(Q,{"aria-label":"Close logs",onClick:t,size:"icon",type:"button",variant:"ghost",children:a.jsx(Ns,{})})]}),a.jsx("div",{className:"min-h-0 flex-1 p-3",children:s})]})}),document.body)}const q$={journald:"Queries `journalctl -u <unit>` — time range, text, and level filter server-side. Add a host to run it over SSH.",docker:"Queries `docker logs <container>` — time window server-side. Add a host to run it over SSH.",ssh:"Reads via `ssh <host> tail -n 500 <path>` using your ~/.ssh/config + ssh-agent.",file:"Tails an absolute file path on this machine.",command:"Runs the command and treats its output as the log (kubectl logs, …)."};function V$({onClose:e,onAdded:t}){const[s,n]=y.useState(""),[o,l]=y.useState("journald"),[u,h]=y.useState(""),[m,d]=y.useState(""),[p,g]=y.useState(""),[x,_]=y.useState(""),[S,w]=y.useState(""),[C,N]=y.useState(""),[j,E]=y.useState(),[A,O]=y.useState(!1);async function P(){O(!0),E(void 0);try{const D={name:s.trim(),kind:"command"};o==="file"?(D.kind="file",D.path=m.trim()):o==="ssh"?(D.kind="ssh",D.host=u.trim(),D.path=m.trim()):o==="command"?(D.kind="command",D.command=p.trim(),x.trim()&&(D.cwd=x.trim())):o==="journald"?(D.driver="journald",D.unit=S.trim(),u.trim()&&(D.host=u.trim())):o==="docker"&&(D.driver="docker",D.container=C.trim(),u.trim()&&(D.host=u.trim()));const T=await E6(D);t(T,D.name),e()}catch(D){E(D instanceof Error?D.message:String(D))}finally{O(!1)}}return a.jsx(Xn,{icon:a.jsx(MC,{}),onClose:e,size:"md",title:"Add log source",children:a.jsxs("form",{className:"flex flex-col gap-3 p-4 text-xs",onSubmit:D=>{D.preventDefault(),P()},children:[a.jsx(hr,{label:"Name",children:a.jsx(nt,{autoFocus:!0,onChange:D=>n(D.target.value),placeholder:"PROD",value:s})}),a.jsxs(hr,{label:"Type",children:[a.jsxs("select",{className:"h-9 w-full rounded-md border border-border bg-background px-2 text-xs",onChange:D=>l(D.target.value),value:o,children:[a.jsx("option",{value:"journald",children:"systemd journal (journald)"}),a.jsx("option",{value:"docker",children:"Docker container"}),a.jsx("option",{value:"ssh",children:"Remote file (SSH)"}),a.jsx("option",{value:"file",children:"Local file"}),a.jsx("option",{value:"command",children:"Command"})]}),a.jsx("p",{className:"mt-1 text-[11px] text-muted-foreground",children:q$[o]})]}),o==="journald"||o==="docker"?a.jsx(hr,{label:"Host (optional — leave blank to run locally)",children:a.jsx(nt,{onChange:D=>h(D.target.value),placeholder:"jobjourney-prod (an alias from ~/.ssh/config)",value:u})}):null,o==="journald"?a.jsx(hr,{label:"Unit",children:a.jsx(nt,{onChange:D=>w(D.target.value),placeholder:"jobjourney",value:S})}):null,o==="docker"?a.jsx(hr,{label:"Container",children:a.jsx(nt,{onChange:D=>N(D.target.value),placeholder:"brainctl-api",value:C})}):null,o==="ssh"?a.jsx(hr,{label:"Host",children:a.jsx(nt,{onChange:D=>h(D.target.value),placeholder:"prod (an alias from ~/.ssh/config)",value:u})}):null,o==="file"||o==="ssh"?a.jsx(hr,{label:o==="ssh"?"Remote path":"File path",children:a.jsx(nt,{onChange:D=>d(D.target.value),placeholder:"/var/log/app/out.log",value:m})}):null,o==="command"?a.jsxs(a.Fragment,{children:[a.jsx(hr,{label:"Command",children:a.jsx(nt,{onChange:D=>g(D.target.value),placeholder:"kubectl logs -l app=myapp --tail 500",value:p})}),a.jsx(hr,{label:"Working directory (optional)",children:a.jsx(nt,{onChange:D=>_(D.target.value),placeholder:"/srv/app",value:x})})]}):null,j?a.jsx("div",{className:"text-red-600",children:j}):null,a.jsxs("div",{className:"flex justify-end gap-2 pt-1",children:[a.jsx(Q,{onClick:e,size:"sm",type:"button",variant:"outline",children:"Cancel"}),a.jsx(Q,{disabled:A||!s.trim(),size:"sm",type:"submit",children:A?"Saving…":"Add source"})]})]})})}function hr({label:e,children:t}){return a.jsxs("label",{className:"flex flex-col gap-1",children:[a.jsx("span",{className:"font-medium text-muted-foreground",children:e}),t]})}const Vw=4;function G$({services:e,initialService:t,onClose:s}){const[n,o]=y.useState([]),[l,u]=y.useState(!1),[h,m]=y.useState(()=>[0]),[d,p]=y.useState(()=>{const E=t?{kind:"service",name:t}:e[0]?{kind:"service",name:e[0]}:void 0;return E?{0:E}:{}}),g=y.useRef(1);y.useEffect(()=>{let E=!1;return N6().then(A=>{E||o(A)}),()=>{E=!0}},[]);const x=[...e.map(E=>({target:{kind:"service",name:E},label:E,group:"Services"})),...n.map(E=>({target:{kind:"source",name:E.name},label:E.name,group:"Log sources"}))],_=x.map(E=>E.target);function S(){if(h.length>=Vw||_.length===0)return;const E=g.current++,A=new Set(Object.values(d).map(Fw)),O=_.find(P=>!A.has(Fw(P)))??_[0];m(P=>[...P,E]),p(P=>({...P,[E]:O}))}function w(E){m(A=>A.filter(O=>O!==E)),p(A=>{const O={...A};return delete O[E],O})}function C(E,A){p(O=>({...O,[E]:A}))}function N(E,A){o(E);const O=h[0];O!==void 0&&C(O,{kind:"source",name:A})}const j=a.jsxs("div",{className:"flex items-center gap-3",children:[a.jsx("span",{children:"Logs"}),a.jsxs(Q,{onClick:()=>u(!0),size:"sm",type:"button",variant:"outline",children:[a.jsx(xs,{}),"Add source"]}),a.jsxs(Q,{disabled:h.length>=Vw||_.length===0,onClick:S,size:"sm",type:"button",variant:"outline",children:[a.jsx(xs,{}),"Add pane"]})]});return a.jsxs(a.Fragment,{children:[a.jsx(Ax,{maxWidthClass:"max-w-[1500px]",onClose:s,title:j,children:_.length===0?a.jsx("div",{className:"grid h-full place-items-center text-center text-muted-foreground",children:a.jsxs("div",{children:[a.jsx("p",{children:"No services or log sources yet."}),a.jsxs(Q,{className:"mt-2",onClick:()=>u(!0),size:"sm",type:"button",children:[a.jsx(xs,{}),"Add a log source"]})]})}):a.jsx("div",{className:ae("grid h-full min-h-0 gap-3",h.length>1?"lg:grid-cols-2":"grid-cols-1",h.length>2?"lg:grid-rows-2":"grid-rows-1"),children:h.map(E=>a.jsx(W$,{onChangeTarget:A=>C(E,A),onRemove:h.length>1?()=>w(E):void 0,options:x,target:d[E]??_[0]},E))})}),l?a.jsx(V$,{onAdded:N,onClose:()=>u(!1)}):null]})}function W$({options:e,target:t,onChangeTarget:s,onRemove:n}){const[o,l]=y.useState(""),[u,h]=y.useState(!0),[m,d]=y.useState(!1);return a.jsx("div",{className:"flex min-h-0 min-w-0 flex-col rounded-lg border border-border bg-background/60 p-2",children:a.jsx(y3,{fill:!0,hideStdout:m,leading:a.jsx(U$,{onChange:s,options:e,target:t}),query:o,setHideStdout:d,setQuery:l,setStreaming:h,streaming:u,target:t,trailing:n?a.jsx(Q,{"aria-label":"Remove pane",onClick:n,size:"icon",type:"button",variant:"ghost",children:a.jsx(Ns,{})}):void 0})})}function K$({rows:e,revealAll:t,onAdd:s,onRemove:n,onUpdate:o}){return e.length===0?a.jsxs("div",{className:"text-muted-foreground",children:["No variables yet."," ",a.jsx("button",{className:"underline",onClick:s,type:"button",children:"Add one"}),"."]}):a.jsx("div",{className:"overflow-x-auto",children:a.jsxs("table",{className:"w-full font-mono text-[11px]",children:[a.jsx("thead",{className:"text-left text-muted-foreground",children:a.jsxs("tr",{children:[a.jsx("th",{className:"py-1 pr-3",children:"Key"}),a.jsx("th",{className:"py-1 pr-3",children:"Value"}),a.jsx("th",{className:"py-1 w-8"})]})}),a.jsx("tbody",{children:e.map((l,u)=>{const h=!l.reveal&&!t;return a.jsxs("tr",{className:"border-t border-border/40",children:[a.jsx("td",{className:"py-1 pr-3 align-top",children:a.jsx("input",{className:"w-full rounded border border-border/60 bg-background px-1.5 py-0.5 font-mono",onChange:m=>o(u,{key:m.target.value}),placeholder:"KEY",spellCheck:!1,value:l.key})}),a.jsx("td",{className:"py-1 pr-3 align-top",children:a.jsxs("div",{className:"flex items-center gap-1",children:[a.jsx("input",{className:"w-full rounded border border-border/60 bg-background px-1.5 py-0.5 font-mono",onChange:m=>o(u,{value:m.target.value}),spellCheck:!1,type:h?"password":"text",value:l.value}),a.jsx("button",{className:"text-muted-foreground hover:text-foreground",onClick:()=>o(u,{reveal:!l.reveal}),title:l.reveal||t?"Hide":"Reveal",type:"button",children:l.reveal||t?a.jsx(xC,{size:14}):a.jsx(Bb,{size:14})})]})}),a.jsx("td",{className:"py-1 align-top",children:a.jsx("button",{className:"text-muted-foreground hover:text-red-600",onClick:()=>n(u),type:"button",children:a.jsx(ha,{size:14})})})]},u)})})]})})}function Y$({serviceName:e,onClose:t,onPick:s}){const[n,o]=y.useState(),[l,u]=y.useState(),[h,m]=y.useState(!0),[d,p]=y.useState();y.useEffect(()=>{let _=!1;return m(!0),u(void 0),(async()=>{try{const S=await z6(e,d);_||o(S)}catch(S){_||u(S instanceof Error?S.message:String(S))}finally{_||m(!1)}})(),()=>{_=!0}},[e,d]);function g(_){if(_.kind==="directory"){p(_.relativePath);return}_.supported&&s(_.relativePath)}function x(){if(!n||n.isRoot)return;const _=n.relativePath,S=_.includes("/")?_.slice(0,_.lastIndexOf("/")):"";p(S||void 0)}return a.jsx(Xn,{icon:a.jsx(lf,{}),onClose:t,size:"lg",title:"Pick a config file",children:a.jsxs("div",{className:"flex flex-col gap-2 p-4",children:[a.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[a.jsxs(Q,{disabled:!n||n.isRoot,onClick:x,size:"sm",type:"button",variant:"outline",children:[a.jsx(of,{})," Up"]}),a.jsx("code",{className:"truncate rounded bg-muted px-2 py-1 font-mono",children:n?.relativePath||"./"})]}),l?a.jsx("div",{className:"text-red-600",children:l}):h?a.jsx("div",{className:"text-muted-foreground",children:"Loading…"}):!n||n.entries.length===0?a.jsx("div",{className:"text-muted-foreground",children:"Empty directory."}):a.jsx("div",{className:"max-h-[50vh] overflow-auto rounded border border-border/60",children:a.jsx("ul",{className:"divide-y divide-border/40",children:n.entries.map(_=>{const S=_.kind==="directory",w=S||_.supported;return a.jsx("li",{children:a.jsxs("button",{className:ae("flex w-full items-center gap-2 px-3 py-1.5 text-left text-xs",w?"hover:bg-muted":"cursor-not-allowed text-muted-foreground"),disabled:!w,onClick:()=>g(_),type:"button",children:[S?a.jsx(eo,{size:14}):a.jsx(SC,{size:14}),a.jsx("span",{className:"flex-1 truncate font-mono",children:_.name}),!S&&_.format?a.jsx(Pe,{size:"small",variant:"secondary",children:_.format}):null]})},_.relativePath)})})}),a.jsxs("p",{className:"text-xs text-muted-foreground",children:["Only ",a.jsx("code",{children:".env*"}),", ",a.jsx("code",{children:"appsettings*.json"}),", and"," ",a.jsx("code",{children:"application*.yml"})," can be selected. Other files are shown disabled."]})]})})}function S3(e){if(!e.trim())return e;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function X$(e){const{error:t,success:s}=Es(),[n,o]=y.useState([]),[l,u]=y.useState(),[h,m]=y.useState(),[d,p]=y.useState(!0),[g,x]=y.useState(!1),[_,S]=y.useState(!1),[w,C]=y.useState(!1),[N,j]=y.useState();y.useEffect(()=>{let L=!1;return p(!0),j(void 0),(async()=>{try{const I=await B6(e);if(L)return;o(I.files),I.files.length>0?u($=>$??I.files[0].path):(u(void 0),m(void 0))}catch(I){L||j(I instanceof Error?I.message:String(I))}finally{L||p(!1)}})(),()=>{L=!0}},[e]);const E=y.useCallback(async L=>{x(!0),j(void 0);try{const I=await $y(e,L),$={path:I.path,relativePath:I.relativePath,format:I.format};I.format==="env"?m({info:$,exists:I.exists,rows:I.entries.map(U=>({...U,reveal:!1}))}):m({info:$,exists:I.exists,text:I.format==="json"?S3(I.content):I.content}),C(!1)}catch(I){j(I instanceof Error?I.message:String(I))}finally{x(!1)}},[e]);y.useEffect(()=>{l&&E(l)},[l,E]);function A(L,I){m($=>{if(!$?.rows)return $;const U=$.rows.map((W,G)=>G===L?{...W,...I}:W);return{...$,rows:U}}),C(!0)}function O(){m(L=>L?.rows?{...L,rows:[...L.rows,{key:"",value:"",secret:!1,reveal:!0}]}:L),C(!0)}function P(L){m(I=>I?.rows?{...I,rows:I.rows.filter(($,U)=>U!==L)}:I),C(!0)}function D(L){m(I=>I&&{...I,text:L}),C(!0)}async function T(){if(h){S(!0);try{if(h.info.format==="env"&&h.rows){const L=await I6(e,h.info.path,h.rows.map(I=>({key:I.key.trim(),value:I.value})));m({info:{path:L.path,relativePath:L.relativePath,format:L.format},exists:L.exists,rows:L.entries.map(I=>({...I,reveal:!1}))}),s(`Saved ${L.entries.length} entries to ${L.relativePath}.`)}else if(h.text!==void 0){const L=await P6(e,h.info.path,h.text);m({info:{path:L.path,relativePath:L.relativePath,format:L.format},exists:L.exists,text:L.content}),s(`Saved ${L.relativePath}.`)}C(!1)}catch(L){t(L instanceof Error?L.message:String(L))}finally{S(!1)}}}async function z(L){try{const I=await $y(e,L),$={path:I.path,relativePath:I.relativePath,format:I.format};return o(U=>U.some(W=>W.path===$.path)?U:[...U,$]),u($.path),s(`Loaded ${$.relativePath}.`),!0}catch(I){return t(I instanceof Error?I.message:String(I)),!1}}return{files:n,selectedPath:l,setSelectedPath:u,loaded:h,loadingList:d,loadingFile:g,saving:_,dirty:w,error:N,addRow:O,removeRow:P,updateRow:A,updateText:D,save:T,pickFile:z}}function Z$({serviceName:e}){const{files:t,selectedPath:s,setSelectedPath:n,loaded:o,loadingList:l,loadingFile:u,saving:h,dirty:m,error:d,addRow:p,removeRow:g,updateRow:x,updateText:_,save:S,pickFile:w}=X$(e),[C,N]=y.useState(!1),[j,E]=y.useState(!1);return l?a.jsx("div",{className:"text-muted-foreground",children:"Loading…"}):d&&!o?a.jsx("div",{className:"text-red-600",children:d}):a.jsxs("div",{className:"space-y-2",children:[a.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[a.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[a.jsx("span",{className:"text-muted-foreground",children:"File:"}),t.length>0?a.jsx("select",{className:"rounded border border-border/60 bg-background px-1.5 py-0.5 font-mono text-xs",onChange:A=>n(A.target.value),value:s??"",children:t.map(A=>a.jsxs("option",{value:A.path,children:[A.relativePath," [",A.format,"]"]},A.path))}):a.jsx("span",{className:"text-muted-foreground",children:"none detected"}),a.jsxs(Q,{onClick:()=>E(!0),size:"sm",type:"button",variant:"outline",children:[a.jsx(lf,{})," Browse files"]}),o?a.jsx("code",{className:"rounded bg-background px-1.5 py-0.5 font-mono text-muted-foreground",children:o.info.path}):null]}),a.jsxs("div",{className:"flex items-center gap-1",children:[o?.info.format==="env"?a.jsxs(a.Fragment,{children:[a.jsxs(Q,{onClick:()=>N(A=>!A),size:"sm",type:"button",variant:"outline",children:[C?a.jsx(xC,{}):a.jsx(Bb,{}),C?"Hide secrets":"Reveal secrets"]}),a.jsxs(Q,{onClick:p,size:"sm",type:"button",variant:"outline",children:[a.jsx(xs,{})," Add"]})]}):null,a.jsxs(Q,{disabled:!m||h||!o,onClick:S,size:"sm",type:"button",children:[a.jsx(AC,{})," ",h?"Saving…":"Save"]})]})]}),d&&!o?a.jsx("div",{className:"text-red-600",children:d}):o?.info.format==="env"&&o.rows?a.jsx("div",{className:ae(u&&"opacity-60 transition-opacity"),children:a.jsx(K$,{revealAll:C,rows:o.rows,onAdd:p,onRemove:g,onUpdate:x})}):o?.text!==void 0?a.jsxs("div",{className:ae("space-y-1",u&&"opacity-60 transition-opacity"),children:[o.info.format==="json"?a.jsx("div",{className:"flex justify-end",children:a.jsx(Q,{onClick:()=>_(S3(o.text??"")),size:"sm",type:"button",variant:"outline",children:"Format JSON"})}):null,a.jsx("textarea",{className:"min-h-[300px] w-full rounded border border-border/60 bg-background p-2 font-mono text-[11px] leading-relaxed",onChange:A=>_(A.target.value),spellCheck:!1,value:o.text})]}):u?a.jsx("div",{className:"text-muted-foreground",children:"Loading file…"}):null,o?a.jsxs("p",{className:"text-muted-foreground",children:[o.info.format==="env"?"Comments and blank lines are preserved.":o.info.format==="json"?"JSON is validated on save.":"YAML is saved as raw text."," ","The running process won't see changes until you restart it."]}):null,j?a.jsx(Y$,{onClose:()=>E(!1),onPick:A=>{w(A).then(O=>{O&&E(!1)})},serviceName:e}):null]})}function Q$({serviceName:e,status:t,timeline:s,onRefresh:n}){const{error:o,success:l}=Es(),[u,h]=y.useState(!1),m=t?.inspector,d=t?.state==="running",p=y.useMemo(()=>s.filter(_=>_.kind==="service.http"&&_.service===e).map(_=>{const S=_.data??{};return{id:S.id??_.id,startedAt:_.timestamp,method:S.method??"?",path:S.path??"?",status:S.status??0,durationMs:S.durationMs??0,reqBytes:S.reqBytes??0,resBytes:S.resBytes??0}}).slice(-500).reverse(),[s,e]);async function g(_){h(!0);try{await mn(`/api/services/${encodeURIComponent(e)}/inspector`,{enabled:_?"true":"false"}),await n(),l(_?`HTTP inspector started for ${e}.`:`HTTP inspector stopped for ${e}.`)}catch(S){o(S instanceof Error?S.message:String(S))}finally{h(!1)}}if(!d)return a.jsx("div",{className:"text-muted-foreground",children:"Service is not running."});if(!m?.enabled)return a.jsxs("div",{className:"space-y-2",children:[a.jsx("p",{className:"text-muted-foreground",children:"The HTTP inspector starts a local proxy that forwards traffic to this service and records every request. Hit the inspect URL instead of the original port to see requests appear here. The service itself is not touched."}),a.jsxs(Q,{disabled:u,onClick:()=>g(!0),size:"sm",type:"button",children:[a.jsx(xr,{})," Start HTTP inspector"]})]});const x=m.port?`http://127.0.0.1:${m.port}`:void 0;return a.jsxs("div",{className:"space-y-2",children:[a.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[a.jsx("span",{className:"text-muted-foreground",children:"Inspect URL:"}),x?a.jsxs(a.Fragment,{children:[a.jsx("code",{className:"rounded bg-background px-1.5 py-0.5 font-mono",children:x}),a.jsxs(Q,{onClick:()=>{navigator.clipboard.writeText(x),l("Copied inspect URL.")},size:"sm",type:"button",variant:"outline",children:[a.jsx(Nh,{})," Copy"]}),a.jsx(Q,{onClick:()=>window.open(x,"_blank","noopener,noreferrer"),size:"sm",type:"button",variant:"outline",children:"Open"})]}):a.jsx("span",{className:"text-muted-foreground",children:"starting…"}),a.jsxs("span",{className:"text-muted-foreground",children:["→ upstream :",m.upstreamPort??"?"]}),a.jsxs(Q,{disabled:u,onClick:()=>g(!1),size:"sm",type:"button",variant:"outline",children:[a.jsx(al,{})," Stop"]})]}),p.length===0?a.jsx("div",{className:"text-muted-foreground",children:"No requests captured yet. Hit the inspect URL in your browser to see traffic."}):a.jsx("div",{className:"max-h-80 overflow-auto",children:a.jsxs("table",{className:"w-full font-mono text-[11px]",children:[a.jsx("thead",{className:"sticky top-0 bg-muted/60 text-left text-muted-foreground",children:a.jsxs("tr",{children:[a.jsx("th",{className:"py-1 pr-3",children:"Time"}),a.jsx("th",{className:"py-1 pr-3",children:"Method"}),a.jsx("th",{className:"py-1 pr-3",children:"Path"}),a.jsx("th",{className:"py-1 pr-3 text-right",children:"Status"}),a.jsx("th",{className:"py-1 pr-3 text-right",children:"Size"}),a.jsx("th",{className:"py-1 pr-3 text-right",children:"ms"})]})}),a.jsx("tbody",{children:p.map(_=>a.jsxs("tr",{className:"border-t border-border/40",children:[a.jsx("td",{className:"py-1 pr-3 text-muted-foreground",children:new Date(_.startedAt).toLocaleTimeString()}),a.jsx("td",{className:"py-1 pr-3",children:_.method}),a.jsx("td",{className:"py-1 pr-3 truncate max-w-[40ch]",children:_.path}),a.jsx("td",{className:ae("py-1 pr-3 text-right",J$(_.status)),children:_.status}),a.jsx("td",{className:"py-1 pr-3 text-right text-muted-foreground",children:eH(_.resBytes)}),a.jsx("td",{className:"py-1 pr-3 text-right",children:_.durationMs.toFixed(1)})]},_.id))})]})})]})}function J$(e){return e>=500?"text-red-600 dark:text-red-400":e>=400?"text-amber-600 dark:text-amber-400":e>=300?"text-zinc-500":e>=200?"text-emerald-600 dark:text-emerald-400":"text-muted-foreground"}function eH(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function tH({serviceName:e}){const[t,s]=y.useState(null),[n,o]=y.useState(null),[l,u]=y.useState(()=>Date.now());return y.useEffect(()=>{let h=!1;async function m(){try{const p=await $6(e);h||(s(p),u(Date.now()),o(null))}catch(p){h||o(p instanceof Error?p.message:String(p))}}m();const d=setInterval(()=>{m()},3e3);return()=>{h=!0,clearInterval(d)}},[e]),n?a.jsxs("p",{className:"text-destructive",children:["Failed to load metrics: ",n]}):t?t.samples.length===0?a.jsx("p",{className:"text-muted-foreground",children:"No samples yet. Metrics start collecting once the service is running."}):a.jsx(sH,{series:t,now:l}):a.jsx("p",{className:"text-muted-foreground",children:"Loading metrics…"})}function sH({series:e,now:t}){const{samples:s}=e,n=y.useMemo(()=>Gw(s,m=>m.cpu),[s]),o=y.useMemo(()=>Gw(s,m=>m.rss),[s]),l=e.startedAt?new Date(e.startedAt):null,u=l?t-l.getTime():null,h=s.length>1?s[s.length-1].t-s[0].t:0;return a.jsxs("div",{className:"space-y-4",children:[a.jsxs("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-4",children:[a.jsx(th,{accent:"#22c55e",label:"CPU",value:`${n.last.toFixed(1)}%`,sub:`peak ${n.max.toFixed(1)}% · avg ${n.avg.toFixed(1)}%`}),a.jsx(th,{accent:"#3b82f6",label:"Memory",value:ig(o.last),sub:`peak ${ig(o.max)} · avg ${ig(o.avg)}`}),a.jsx(th,{accent:"#a855f7",label:"Uptime",value:u!=null?Yw(u):"—",sub:l?`since ${l.toLocaleTimeString()}`:"not running"}),a.jsx(th,{accent:"#f59e0b",label:"Samples",value:String(s.length),sub:h?`over ${Yw(h)}`:"collecting…"})]}),a.jsx(Kw,{label:"CPU",samples:s,pick:m=>m.cpu,summary:n,color:"#22c55e",suffix:"%",unit:"percent"}),a.jsx(Kw,{label:"Memory (RSS)",samples:s,pick:m=>m.rss,summary:o,color:"#3b82f6",suffix:" MB",unit:"mb"})]})}function Gw(e,t){const s=e.map(t),n=s.reduce((o,l)=>o+l,0);return{last:s[s.length-1],max:Math.max(...s),min:Math.min(...s),avg:n/s.length}}function th({accent:e,label:t,value:s,sub:n}){return a.jsxs("div",{className:"rounded-lg border border-border bg-card px-3 py-2",children:[a.jsxs("div",{className:"flex items-center gap-1.5",children:[a.jsx("span",{className:"h-1.5 w-1.5 shrink-0 rounded-full",style:{backgroundColor:e}}),a.jsx("span",{className:"text-[10px] font-semibold uppercase tracking-wide text-muted-foreground",children:t})]}),a.jsx("div",{className:"mt-1 font-mono text-lg leading-none tabular-nums",children:s}),a.jsx("div",{className:"mt-1 truncate font-mono text-[10px] text-muted-foreground",children:n})]})}const Vo=160,Ww=44,nH=20;function Kw({label:e,samples:t,pick:s,summary:n,color:o,suffix:l,unit:u}){const h=y.useMemo(()=>`metric-grad-${u}-${Math.random().toString(36).slice(2,8)}`,[u]),m=t.map(s),d=Math.max(...m,u==="percent"?10:1),p=iH(d),g=0,x=p-g||1,_=t[0].t,S=t[t.length-1].t,w=Math.max(1,S-_),C=L=>(L-_)/w*1e3,N=L=>(1-(L-g)/x)*1e3,j=t.map(L=>`${C(L.t).toFixed(1)},${N(s(L)).toFixed(1)}`),E=`M0,1000 L${j.join(" L")} L1000,1000 Z`,A=`M${j.join(" L")}`,O=C(S),P=N(n.last),D=N(n.avg),T=[1,.75,.5,.25,0],z=5;return a.jsxs("figure",{className:"space-y-1",children:[a.jsxs("figcaption",{className:"flex items-baseline justify-between",children:[a.jsx("span",{className:"text-[11px] font-semibold uppercase tracking-wide text-muted-foreground",children:e}),a.jsxs("span",{className:"font-mono text-[11px] text-muted-foreground",children:["now ",a.jsxs("span",{className:"text-foreground",children:[n.last.toFixed(1),l]}),a.jsx("span",{className:"mx-1.5",children:"·"}),"peak ",n.max.toFixed(1),l,a.jsx("span",{className:"mx-1.5",children:"·"}),"avg ",n.avg.toFixed(1),l]})]}),a.jsxs("div",{className:"rounded-lg border border-border bg-card p-2",children:[a.jsxs("div",{className:"flex",children:[a.jsx("div",{className:"relative flex shrink-0 flex-col justify-between text-right font-mono text-[10px] text-muted-foreground",style:{width:Ww,height:Vo},children:T.map(L=>a.jsx("span",{className:"pr-1 leading-none",children:rH(g+L*x,u)},L))}),a.jsxs("div",{className:"relative min-w-0 flex-1",style:{height:Vo},children:[T.map((L,I)=>a.jsx("div",{className:"pointer-events-none absolute inset-x-0 border-t border-border/40",style:{top:`${L===1?0:L===0?Vo-1:(1-L)*Vo}px`,borderStyle:I===T.length-1?"solid":"dashed"}},L)),a.jsx("div",{className:"pointer-events-none absolute inset-x-0 border-t border-dashed",style:{top:`${D/1e3*Vo}px`,borderColor:o,opacity:.4}}),a.jsxs("svg",{"aria-label":e,className:"absolute inset-0 h-full w-full",preserveAspectRatio:"none",role:"img",viewBox:"0 0 1000 1000",children:[a.jsx("defs",{children:a.jsxs("linearGradient",{id:h,x1:"0",x2:"0",y1:"0",y2:"1",children:[a.jsx("stop",{offset:"0%",stopColor:o,stopOpacity:.35}),a.jsx("stop",{offset:"100%",stopColor:o,stopOpacity:.02})]})}),a.jsx("path",{d:E,fill:`url(#${h})`}),a.jsx("path",{d:A,fill:"none",stroke:o,strokeWidth:2,vectorEffect:"non-scaling-stroke",strokeLinejoin:"round",strokeLinecap:"round"})]}),a.jsx("span",{className:"pointer-events-none absolute z-10 block h-2.5 w-2.5 -translate-x-1/2 -translate-y-1/2 rounded-full ring-2 ring-card",style:{left:`${O/1e3*100}%`,top:`${P/1e3*Vo}px`,backgroundColor:o,boxShadow:`0 0 0 4px ${o}33`}})]})]}),a.jsx("div",{className:"flex font-mono text-[10px] text-muted-foreground",style:{height:nH,paddingLeft:Ww},children:a.jsx("div",{className:"relative flex-1",children:Array.from({length:z+1},(L,I)=>{const $=I/z,U=_+$*w;return a.jsx("span",{className:"absolute top-1 whitespace-nowrap",style:{left:`${$*100}%`,transform:I===0?"translateX(0)":I===z?"translateX(-100%)":"translateX(-50%)"},children:aH(U-S)},I)})})})]})]})}function iH(e){if(e<=1)return 1;const t=Math.pow(10,Math.floor(Math.log10(e))),s=e/t;return(s<=1?1:s<=2?2:s<=5?5:10)*t}function rH(e,t){return t==="percent"?`${e.toFixed(0)}%`:e>=1024?`${(e/1024).toFixed(1)}G`:`${e.toFixed(0)}M`}function ig(e){return e>=1024?`${(e/1024).toFixed(2)} GB`:`${e.toFixed(0)} MB`}function Yw(e){const t=Math.max(0,Math.round(e/1e3));if(t<60)return`${t}s`;const s=Math.floor(t/60);if(s<60)return`${s}m ${t%60}s`;const n=Math.floor(s/60);return n<24?`${n}h ${s%60}m`:`${Math.floor(n/24)}d ${n%24}h`}function aH(e){const t=Math.round(e/1e3);if(t===0)return"now";if(Math.abs(t)<60)return`${t}s`;const n=Math.round(t/60);return Math.abs(n)<60?`${n}m`:`${Math.round(n/60)}h`}function oH({rows:e}){if(e.length===0)return a.jsx("div",{className:"text-muted-foreground",children:"No process tree (service not running)."});const t=[...e].sort((n,o)=>o.cpuPercent-n.cpuPercent),s=new Set(e.map(n=>n.pid));return a.jsx("div",{className:"overflow-x-auto",children:a.jsxs("table",{className:"w-full font-mono text-[11px]",children:[a.jsx("thead",{className:"text-left text-muted-foreground",children:a.jsxs("tr",{children:[a.jsx("th",{className:"py-1 pr-3",children:"PID"}),a.jsx("th",{className:"py-1 pr-3",children:"PPID"}),a.jsx("th",{className:"py-1 pr-3 text-right",children:"CPU%"}),a.jsx("th",{className:"py-1 pr-3 text-right",children:"RSS MB"}),a.jsx("th",{className:"py-1",children:"Command"})]})}),a.jsx("tbody",{children:t.map(n=>{const o=s.has(n.ppid);return a.jsxs("tr",{className:"border-t border-border/40",children:[a.jsx("td",{className:"py-1 pr-3",children:n.pid}),a.jsx("td",{className:"py-1 pr-3 text-muted-foreground",children:n.ppid}),a.jsx("td",{className:"py-1 pr-3 text-right",children:n.cpuPercent.toFixed(1)}),a.jsx("td",{className:"py-1 pr-3 text-right",children:n.rssMb.toFixed(1)}),a.jsx("td",{className:ae("py-1 truncate max-w-[60ch]",o&&"pl-4"),children:n.command})]},n.pid)})})]})})}var lH=2,cH=1,uH=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let t=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(e.css.cell.width===0||e.css.cell.height===0)return;let t=this._terminal.options.scrollback===0?0:this._terminal.options.overviewRuler?.width||14,s=window.getComputedStyle(this._terminal.element.parentElement),n=parseInt(s.getPropertyValue("height")),o=Math.max(0,parseInt(s.getPropertyValue("width"))),l=window.getComputedStyle(this._terminal.element),u={top:parseInt(l.getPropertyValue("padding-top")),bottom:parseInt(l.getPropertyValue("padding-bottom")),right:parseInt(l.getPropertyValue("padding-right")),left:parseInt(l.getPropertyValue("padding-left"))},h=u.top+u.bottom,m=u.right+u.left,d=n-h,p=o-m-t;return{cols:Math.max(lH,Math.floor(p/e.css.cell.width)),rows:Math.max(cH,Math.floor(d/e.css.cell.height))}}};var w3=Object.defineProperty,dH=Object.getOwnPropertyDescriptor,hH=(e,t)=>{for(var s in t)w3(e,s,{get:t[s],enumerable:!0})},Wt=(e,t,s,n)=>{for(var o=n>1?void 0:n?dH(t,s):t,l=e.length-1,u;l>=0;l--)(u=e[l])&&(o=(n?u(t,s,o):u(o))||o);return n&&o&&w3(t,s,o),o},we=(e,t)=>(s,n)=>t(s,n,e),Xw="Terminal input",P0={get:()=>Xw,set:e=>Xw=e},Zw="Too much output to announce, navigate to rows manually to read",$0={get:()=>Zw,set:e=>Zw=e};function fH(e){return e.replace(/\r?\n/g,"\r")}function mH(e,t){return t?"\x1B[200~"+e+"\x1B[201~":e}function pH(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()}function gH(e,t,s,n){if(e.stopPropagation(),e.clipboardData){let o=e.clipboardData.getData("text/plain");k3(o,t,s,n)}}function k3(e,t,s,n){e=fH(e),e=mH(e,s.decPrivateModes.bracketedPasteMode&&n.rawOptions.ignoreBracketedPasteMode!==!0),s.triggerDataEvent(e,!0),t.value=""}function C3(e,t,s){let n=s.getBoundingClientRect(),o=e.clientX-n.left-10,l=e.clientY-n.top-10;t.style.width="20px",t.style.height="20px",t.style.left=`${o}px`,t.style.top=`${l}px`,t.style.zIndex="1000",t.focus()}function Qw(e,t,s,n,o){C3(e,t,s),o&&n.rightClickSelect(e),t.value=n.selectionText,t.select()}function na(e){return e>65535?(e-=65536,String.fromCharCode((e>>10)+55296)+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)}function _f(e,t=0,s=e.length){let n="";for(let o=t;o<s;++o){let l=e[o];l>65535?(l-=65536,n+=String.fromCharCode((l>>10)+55296)+String.fromCharCode(l%1024+56320)):n+=String.fromCharCode(l)}return n}var bH=class{constructor(){this._interim=0}clear(){this._interim=0}decode(e,t){let s=e.length;if(!s)return 0;let n=0,o=0;if(this._interim){let l=e.charCodeAt(o++);56320<=l&&l<=57343?t[n++]=(this._interim-55296)*1024+l-56320+65536:(t[n++]=this._interim,t[n++]=l),this._interim=0}for(let l=o;l<s;++l){let u=e.charCodeAt(l);if(55296<=u&&u<=56319){if(++l>=s)return this._interim=u,n;let h=e.charCodeAt(l);56320<=h&&h<=57343?t[n++]=(u-55296)*1024+h-56320+65536:(t[n++]=u,t[n++]=h);continue}u!==65279&&(t[n++]=u)}return n}},xH=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(e,t){let s=e.length;if(!s)return 0;let n=0,o,l,u,h,m=0,d=0;if(this.interim[0]){let x=!1,_=this.interim[0];_&=(_&224)===192?31:(_&240)===224?15:7;let S=0,w;for(;(w=this.interim[++S]&63)&&S<4;)_<<=6,_|=w;let C=(this.interim[0]&224)===192?2:(this.interim[0]&240)===224?3:4,N=C-S;for(;d<N;){if(d>=s)return 0;if(w=e[d++],(w&192)!==128){d--,x=!0;break}else this.interim[S++]=w,_<<=6,_|=w&63}x||(C===2?_<128?d--:t[n++]=_:C===3?_<2048||_>=55296&&_<=57343||_===65279||(t[n++]=_):_<65536||_>1114111||(t[n++]=_)),this.interim.fill(0)}let p=s-4,g=d;for(;g<s;){for(;g<p&&!((o=e[g])&128)&&!((l=e[g+1])&128)&&!((u=e[g+2])&128)&&!((h=e[g+3])&128);)t[n++]=o,t[n++]=l,t[n++]=u,t[n++]=h,g+=4;if(o=e[g++],o<128)t[n++]=o;else if((o&224)===192){if(g>=s)return this.interim[0]=o,n;if(l=e[g++],(l&192)!==128){g--;continue}if(m=(o&31)<<6|l&63,m<128){g--;continue}t[n++]=m}else if((o&240)===224){if(g>=s)return this.interim[0]=o,n;if(l=e[g++],(l&192)!==128){g--;continue}if(g>=s)return this.interim[0]=o,this.interim[1]=l,n;if(u=e[g++],(u&192)!==128){g--;continue}if(m=(o&15)<<12|(l&63)<<6|u&63,m<2048||m>=55296&&m<=57343||m===65279)continue;t[n++]=m}else if((o&248)===240){if(g>=s)return this.interim[0]=o,n;if(l=e[g++],(l&192)!==128){g--;continue}if(g>=s)return this.interim[0]=o,this.interim[1]=l,n;if(u=e[g++],(u&192)!==128){g--;continue}if(g>=s)return this.interim[0]=o,this.interim[1]=l,this.interim[2]=u,n;if(h=e[g++],(h&192)!==128){g--;continue}if(m=(o&7)<<18|(l&63)<<12|(u&63)<<6|h&63,m<65536||m>1114111)continue;t[n++]=m}}return n}},N3="",ra=" ",yu=class E3{constructor(){this.fg=0,this.bg=0,this.extended=new Kh}static toColorRGB(t){return[t>>>16&255,t>>>8&255,t&255]}static fromColorRGB(t){return(t[0]&255)<<16|(t[1]&255)<<8|t[2]&255}clone(){let t=new E3;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)===50331648}isBgRGB(){return(this.bg&50331648)===50331648}isFgPalette(){return(this.fg&50331648)===16777216||(this.fg&50331648)===33554432}isBgPalette(){return(this.bg&50331648)===16777216||(this.bg&50331648)===33554432}isFgDefault(){return(this.fg&50331648)===0}isBgDefault(){return(this.bg&50331648)===0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===16777216||(this.extended.underlineColor&50331648)===33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)===0:this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},Kh=class j3{constructor(t=0,s=0){this._ext=0,this._urlId=0,this._ext=t,this._urlId=s}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(t){this._ext=t}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(t){this._ext&=-469762049,this._ext|=t<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(t){this._ext&=-67108864,this._ext|=t&67108863}get urlId(){return this._urlId}set urlId(t){this._urlId=t}get underlineVariantOffset(){let t=(this._ext&3758096384)>>29;return t<0?t^4294967288:t}set underlineVariantOffset(t){this._ext&=536870911,this._ext|=t<<29&3758096384}clone(){return new j3(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},Kn=class T3 extends yu{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new Kh,this.combinedData=""}static fromCharData(t){let s=new T3;return s.setFromCharData(t),s}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?na(this.content&2097151):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(t){this.fg=t[0],this.bg=0;let s=!1;if(t[1].length>2)s=!0;else if(t[1].length===2){let n=t[1].charCodeAt(0);if(55296<=n&&n<=56319){let o=t[1].charCodeAt(1);56320<=o&&o<=57343?this.content=(n-55296)*1024+o-56320+65536|t[2]<<22:s=!0}else s=!0}else this.content=t[1].charCodeAt(0)|t[2]<<22;s&&(this.combinedData=t[1],this.content=2097152|t[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},Jw="di$target",H0="di$dependencies",rg=new Map;function vH(e){return e[H0]||[]}function js(e){if(rg.has(e))return rg.get(e);let t=function(s,n,o){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");_H(t,s,o)};return t._id=e,rg.set(e,t),t}function _H(e,t,s){t[Jw]===t?t[H0].push({id:e,index:s}):(t[H0]=[{id:e,index:s}],t[Jw]=t)}var en=js("BufferService"),A3=js("CoreMouseService"),no=js("CoreService"),yH=js("CharsetService"),Mx=js("InstantiationService"),M3=js("LogService"),tn=js("OptionsService"),R3=js("OscLinkService"),SH=js("UnicodeService"),Su=js("DecorationService"),U0=class{constructor(e,t,s){this._bufferService=e,this._optionsService=t,this._oscLinkService=s}provideLinks(e,t){let s=this._bufferService.buffer.lines.get(e-1);if(!s){t(void 0);return}let n=[],o=this._optionsService.rawOptions.linkHandler,l=new Kn,u=s.getTrimmedLength(),h=-1,m=-1,d=!1;for(let p=0;p<u;p++)if(!(m===-1&&!s.hasContent(p))){if(s.loadCell(p,l),l.hasExtendedAttrs()&&l.extended.urlId)if(m===-1){m=p,h=l.extended.urlId;continue}else d=l.extended.urlId!==h;else m!==-1&&(d=!0);if(d||m!==-1&&p===u-1){let g=this._oscLinkService.getLinkData(h)?.uri;if(g){let x={start:{x:m+1,y:e},end:{x:p+(!d&&p===u-1?1:0),y:e}},_=!1;if(!o?.allowNonHttpProtocols)try{let S=new URL(g);["http:","https:"].includes(S.protocol)||(_=!0)}catch{_=!0}_||n.push({text:g,range:x,activate:(S,w)=>o?o.activate(S,w,x):wH(S,w),hover:(S,w)=>o?.hover?.(S,w,x),leave:(S,w)=>o?.leave?.(S,w,x)})}d=!1,l.hasExtendedAttrs()&&l.extended.urlId?(m=p,h=l.extended.urlId):(m=-1,h=-1)}}t(n)}};U0=Wt([we(0,en),we(1,tn),we(2,R3)],U0);function wH(e,t){if(confirm(`Do you want to navigate to ${t}?
|
|
156
|
-
|
|
157
|
-
WARNING: This link could potentially be dangerous`)){let s=window.open();if(s){try{s.opener=null}catch{}s.location.href=t}else console.warn("Opening link blocked as opener could not be cleared")}}var yf=js("CharSizeService"),vr=js("CoreBrowserService"),Rx=js("MouseService"),_r=js("RenderService"),kH=js("SelectionService"),D3=js("CharacterJoinerService"),xl=js("ThemeService"),O3=js("LinkProviderService"),CH=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?e2.isErrorNoTelemetry(e)?new e2(e.message+`
|
|
158
|
-
|
|
159
|
-
`+e.stack):new Error(e.message+`
|
|
160
|
-
|
|
161
|
-
`+e.stack):e},0)}}addListener(e){return this.listeners.push(e),()=>{this._removeListener(e)}}emit(e){this.listeners.forEach(t=>{t(e)})}_removeListener(e){this.listeners.splice(this.listeners.indexOf(e),1)}setUnexpectedErrorHandler(e){this.unexpectedErrorHandler=e}getUnexpectedErrorHandler(){return this.unexpectedErrorHandler}onUnexpectedError(e){this.unexpectedErrorHandler(e),this.emit(e)}onUnexpectedExternalError(e){this.unexpectedErrorHandler(e)}},NH=new CH;function vh(e){EH(e)||NH.onUnexpectedError(e)}var F0="Canceled";function EH(e){return e instanceof jH?!0:e instanceof Error&&e.name===F0&&e.message===F0}var jH=class extends Error{constructor(){super(F0),this.name=this.message}};function TH(e){return new Error(`Illegal argument: ${e}`)}var e2=class q0 extends Error{constructor(t){super(t),this.name="CodeExpectedError"}static fromError(t){if(t instanceof q0)return t;let s=new q0;return s.message=t.message,s.stack=t.stack,s}static isErrorNoTelemetry(t){return t.name==="CodeExpectedError"}},V0=class L3 extends Error{constructor(t){super(t||"An unexpected bug occurred."),Object.setPrototypeOf(this,L3.prototype)}};function En(e,t=0){return e[e.length-(1+t)]}var AH;(e=>{function t(l){return l<0}e.isLessThan=t;function s(l){return l<=0}e.isLessThanOrEqual=s;function n(l){return l>0}e.isGreaterThan=n;function o(l){return l===0}e.isNeitherLessOrGreaterThan=o,e.greaterThan=1,e.lessThan=-1,e.neitherLessOrGreaterThan=0})(AH||={});function MH(e,t){let s=this,n=!1,o;return function(){return n||(n=!0,t||(o=e.apply(s,arguments))),o}}var z3;(e=>{function t(A){return A&&typeof A=="object"&&typeof A[Symbol.iterator]=="function"}e.is=t;let s=Object.freeze([]);function n(){return s}e.empty=n;function*o(A){yield A}e.single=o;function l(A){return t(A)?A:o(A)}e.wrap=l;function u(A){return A||s}e.from=u;function*h(A){for(let O=A.length-1;O>=0;O--)yield A[O]}e.reverse=h;function m(A){return!A||A[Symbol.iterator]().next().done===!0}e.isEmpty=m;function d(A){return A[Symbol.iterator]().next().value}e.first=d;function p(A,O){let P=0;for(let D of A)if(O(D,P++))return!0;return!1}e.some=p;function g(A,O){for(let P of A)if(O(P))return P}e.find=g;function*x(A,O){for(let P of A)O(P)&&(yield P)}e.filter=x;function*_(A,O){let P=0;for(let D of A)yield O(D,P++)}e.map=_;function*S(A,O){let P=0;for(let D of A)yield*O(D,P++)}e.flatMap=S;function*w(...A){for(let O of A)yield*O}e.concat=w;function C(A,O,P){let D=P;for(let T of A)D=O(D,T);return D}e.reduce=C;function*N(A,O,P=A.length){for(O<0&&(O+=A.length),P<0?P+=A.length:P>A.length&&(P=A.length);O<P;O++)yield A[O]}e.slice=N;function j(A,O=Number.POSITIVE_INFINITY){let P=[];if(O===0)return[P,A];let D=A[Symbol.iterator]();for(let T=0;T<O;T++){let z=D.next();if(z.done)return[P,e.empty()];P.push(z.value)}return[P,{[Symbol.iterator](){return D}}]}e.consume=j;async function E(A){let O=[];for await(let P of A)O.push(P);return Promise.resolve(O)}e.asyncToArray=E})(z3||={});function Qa(e){if(z3.is(e)){let t=[];for(let s of e)if(s)try{s.dispose()}catch(n){t.push(n)}if(t.length===1)throw t[0];if(t.length>1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}else if(e)return e.dispose(),e}function RH(...e){return It(()=>Qa(e))}function It(e){return{dispose:MH(()=>{e()})}}var B3=class I3{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{Qa(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?I3.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}delete(t){if(t){if(t===this)throw new Error("Cannot dispose a disposable on itself!");this._toDispose.delete(t),t.dispose()}}deleteAndLeak(t){t&&this._toDispose.has(t)&&(this._toDispose.delete(t),void 0)}};B3.DISABLE_DISPOSED_WARNING=!1;var aa=B3,Je=class{constructor(){this._store=new aa,this._store}dispose(){this._store.dispose()}_register(e){if(e===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(e)}};Je.None=Object.freeze({dispose(){}});var ul=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(e){this._isDisposed||e===this._value||(this._value?.dispose(),this._value=e)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}clearAndLeak(){let e=this._value;return this._value=void 0,e}},pr=typeof window=="object"?window:globalThis,G0=class W0{constructor(t){this.element=t,this.next=W0.Undefined,this.prev=W0.Undefined}};G0.Undefined=new G0(void 0);var Ht=G0,t2=class{constructor(){this._first=Ht.Undefined,this._last=Ht.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Ht.Undefined}clear(){let e=this._first;for(;e!==Ht.Undefined;){let t=e.next;e.prev=Ht.Undefined,e.next=Ht.Undefined,e=t}this._first=Ht.Undefined,this._last=Ht.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){let s=new Ht(e);if(this._first===Ht.Undefined)this._first=s,this._last=s;else if(t){let o=this._last;this._last=s,s.prev=o,o.next=s}else{let o=this._first;this._first=s,s.next=o,o.prev=s}this._size+=1;let n=!1;return()=>{n||(n=!0,this._remove(s))}}shift(){if(this._first!==Ht.Undefined){let e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Ht.Undefined){let e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Ht.Undefined&&e.next!==Ht.Undefined){let t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===Ht.Undefined&&e.next===Ht.Undefined?(this._first=Ht.Undefined,this._last=Ht.Undefined):e.next===Ht.Undefined?(this._last=this._last.prev,this._last.next=Ht.Undefined):e.prev===Ht.Undefined&&(this._first=this._first.next,this._first.prev=Ht.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Ht.Undefined;)yield e.element,e=e.next}},DH=globalThis.performance&&typeof globalThis.performance.now=="function",OH=class P3{static create(t){return new P3(t)}constructor(t){this._now=DH&&t===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}},Bs;(e=>{e.None=()=>Je.None;function t($,U){return g($,()=>{},0,void 0,!0,void 0,U)}e.defer=t;function s($){return(U,W=null,G)=>{let B=!1,V;return V=$(X=>{if(!B)return V?V.dispose():B=!0,U.call(W,X)},null,G),B&&V.dispose(),V}}e.once=s;function n($,U,W){return d((G,B=null,V)=>$(X=>G.call(B,U(X)),null,V),W)}e.map=n;function o($,U,W){return d((G,B=null,V)=>$(X=>{U(X),G.call(B,X)},null,V),W)}e.forEach=o;function l($,U,W){return d((G,B=null,V)=>$(X=>U(X)&&G.call(B,X),null,V),W)}e.filter=l;function u($){return $}e.signal=u;function h(...$){return(U,W=null,G)=>{let B=RH(...$.map(V=>V(X=>U.call(W,X))));return p(B,G)}}e.any=h;function m($,U,W,G){let B=W;return n($,V=>(B=U(B,V),B),G)}e.reduce=m;function d($,U){let W,G={onWillAddFirstListener(){W=$(B.fire,B)},onDidRemoveLastListener(){W?.dispose()}},B=new be(G);return U?.add(B),B.event}function p($,U){return U instanceof Array?U.push($):U&&U.add($),$}function g($,U,W=100,G=!1,B=!1,V,X){let K,te,R,Z=0,ie,de={leakWarningThreshold:V,onWillAddFirstListener(){K=$(pe=>{Z++,te=U(te,pe),G&&!R&&(fe.fire(te),te=void 0),ie=()=>{let Se=te;te=void 0,R=void 0,(!G||Z>1)&&fe.fire(Se),Z=0},typeof W=="number"?(clearTimeout(R),R=setTimeout(ie,W)):R===void 0&&(R=0,queueMicrotask(ie))})},onWillRemoveListener(){B&&Z>0&&ie?.()},onDidRemoveLastListener(){ie=void 0,K.dispose()}},fe=new be(de);return X?.add(fe),fe.event}e.debounce=g;function x($,U=0,W){return e.debounce($,(G,B)=>G?(G.push(B),G):[B],U,void 0,!0,void 0,W)}e.accumulate=x;function _($,U=(G,B)=>G===B,W){let G=!0,B;return l($,V=>{let X=G||!U(V,B);return G=!1,B=V,X},W)}e.latch=_;function S($,U,W){return[e.filter($,U,W),e.filter($,G=>!U(G),W)]}e.split=S;function w($,U=!1,W=[],G){let B=W.slice(),V=$(te=>{B?B.push(te):K.fire(te)});G&&G.add(V);let X=()=>{B?.forEach(te=>K.fire(te)),B=null},K=new be({onWillAddFirstListener(){V||(V=$(te=>K.fire(te)),G&&G.add(V))},onDidAddFirstListener(){B&&(U?setTimeout(X):X())},onDidRemoveLastListener(){V&&V.dispose(),V=null}});return G&&G.add(K),K.event}e.buffer=w;function C($,U){return(W,G,B)=>{let V=U(new j);return $(function(X){let K=V.evaluate(X);K!==N&&W.call(G,K)},void 0,B)}}e.chain=C;let N=Symbol("HaltChainable");class j{constructor(){this.steps=[]}map(U){return this.steps.push(U),this}forEach(U){return this.steps.push(W=>(U(W),W)),this}filter(U){return this.steps.push(W=>U(W)?W:N),this}reduce(U,W){let G=W;return this.steps.push(B=>(G=U(G,B),G)),this}latch(U=(W,G)=>W===G){let W=!0,G;return this.steps.push(B=>{let V=W||!U(B,G);return W=!1,G=B,V?B:N}),this}evaluate(U){for(let W of this.steps)if(U=W(U),U===N)break;return U}}function E($,U,W=G=>G){let G=(...K)=>X.fire(W(...K)),B=()=>$.on(U,G),V=()=>$.removeListener(U,G),X=new be({onWillAddFirstListener:B,onDidRemoveLastListener:V});return X.event}e.fromNodeEventEmitter=E;function A($,U,W=G=>G){let G=(...K)=>X.fire(W(...K)),B=()=>$.addEventListener(U,G),V=()=>$.removeEventListener(U,G),X=new be({onWillAddFirstListener:B,onDidRemoveLastListener:V});return X.event}e.fromDOMEventEmitter=A;function O($){return new Promise(U=>s($)(U))}e.toPromise=O;function P($){let U=new be;return $.then(W=>{U.fire(W)},()=>{U.fire(void 0)}).finally(()=>{U.dispose()}),U.event}e.fromPromise=P;function D($,U){return $(W=>U.fire(W))}e.forward=D;function T($,U,W){return U(W),$(G=>U(G))}e.runAndSubscribe=T;class z{constructor(U,W){this._observable=U,this._counter=0,this._hasChanged=!1;let G={onWillAddFirstListener:()=>{U.addObserver(this)},onDidRemoveLastListener:()=>{U.removeObserver(this)}};this.emitter=new be(G),W&&W.add(this.emitter)}beginUpdate(U){this._counter++}handlePossibleChange(U){}handleChange(U,W){this._hasChanged=!0}endUpdate(U){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function L($,U){return new z($,U).emitter.event}e.fromObservable=L;function I($){return(U,W,G)=>{let B=0,V=!1,X={beginUpdate(){B++},endUpdate(){B--,B===0&&($.reportChanges(),V&&(V=!1,U.call(W)))},handlePossibleChange(){},handleChange(){V=!0}};$.addObserver(X),$.reportChanges();let K={dispose(){$.removeObserver(X)}};return G instanceof aa?G.add(K):Array.isArray(G)&&G.push(K),K}}e.fromObservableLight=I})(Bs||={});var K0=class Y0{constructor(t){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${t}_${Y0._idPool++}`,Y0.all.add(this)}start(t){this._stopWatch=new OH,this.listenerCount=t}stop(){if(this._stopWatch){let t=this._stopWatch.elapsed();this.durations.push(t),this.elapsedOverall+=t,this.invocationCount+=1,this._stopWatch=void 0}}};K0.all=new Set,K0._idPool=0;var LH=K0,zH=-1,$3=class H3{constructor(t,s,n=(H3._idPool++).toString(16).padStart(3,"0")){this._errorHandler=t,this.threshold=s,this.name=n,this._warnCountdown=0}dispose(){this._stacks?.clear()}check(t,s){let n=this.threshold;if(n<=0||s<n)return;this._stacks||(this._stacks=new Map);let o=this._stacks.get(t.value)||0;if(this._stacks.set(t.value,o+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=n*.5;let[l,u]=this.getMostFrequentStack(),h=`[${this.name}] potential listener LEAK detected, having ${s} listeners already. MOST frequent listener (${u}):`;console.warn(h),console.warn(l);let m=new PH(h,l);this._errorHandler(m)}return()=>{let l=this._stacks.get(t.value)||0;this._stacks.set(t.value,l-1)}}getMostFrequentStack(){if(!this._stacks)return;let t,s=0;for(let[n,o]of this._stacks)(!t||s<o)&&(t=[n,o],s=o);return t}};$3._idPool=1;var BH=$3,IH=class U3{constructor(t){this.value=t}static create(){let t=new Error;return new U3(t.stack??"")}print(){console.warn(this.value.split(`
|
|
162
|
-
`).slice(2).join(`
|
|
163
|
-
`))}},PH=class extends Error{constructor(e,t){super(e),this.name="ListenerLeakError",this.stack=t}},$H=class extends Error{constructor(e,t){super(e),this.name="ListenerRefusalError",this.stack=t}},HH=0,ag=class{constructor(e){this.value=e,this.id=HH++}},UH=2,FH,be=class{constructor(e){this._size=0,this._options=e,this._leakageMon=this._options?.leakWarningThreshold?new BH(e?.onListenerError??vh,this._options?.leakWarningThreshold??zH):void 0,this._perfMon=this._options?._profName?new LH(this._options._profName):void 0,this._deliveryQueue=this._options?.deliveryQueue}dispose(){this._disposed||(this._disposed=!0,this._deliveryQueue?.current===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),this._options?.onDidRemoveLastListener?.(),this._leakageMon?.dispose())}get event(){return this._event??=(e,t,s)=>{if(this._leakageMon&&this._size>this._leakageMon.threshold**2){let u=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(u);let h=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],m=new $H(`${u}. HINT: Stack shows most frequent listener (${h[1]}-times)`,h[0]);return(this._options?.onListenerError||vh)(m),Je.None}if(this._disposed)return Je.None;t&&(e=e.bind(t));let n=new ag(e),o;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(n.stack=IH.create(),o=this._leakageMon.check(n.stack,this._size+1)),this._listeners?this._listeners instanceof ag?(this._deliveryQueue??=new qH,this._listeners=[this._listeners,n]):this._listeners.push(n):(this._options?.onWillAddFirstListener?.(this),this._listeners=n,this._options?.onDidAddFirstListener?.(this)),this._size++;let l=It(()=>{o?.(),this._removeListener(n)});return s instanceof aa?s.add(l):Array.isArray(s)&&s.push(l),l},this._event}_removeListener(e){if(this._options?.onWillRemoveListener?.(this),!this._listeners)return;if(this._size===1){this._listeners=void 0,this._options?.onDidRemoveLastListener?.(this),this._size=0;return}let t=this._listeners,s=t.indexOf(e);if(s===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,t[s]=void 0;let n=this._deliveryQueue.current===this;if(this._size*UH<=t.length){let o=0;for(let l=0;l<t.length;l++)t[l]?t[o++]=t[l]:n&&(this._deliveryQueue.end--,o<this._deliveryQueue.i&&this._deliveryQueue.i--);t.length=o}}_deliver(e,t){if(!e)return;let s=this._options?.onListenerError||vh;if(!s){e.value(t);return}try{e.value(t)}catch(n){s(n)}}_deliverQueue(e){let t=e.current._listeners;for(;e.i<e.end;)this._deliver(t[e.i++],e.value);e.reset()}fire(e){if(this._deliveryQueue?.current&&(this._deliverQueue(this._deliveryQueue),this._perfMon?.stop()),this._perfMon?.start(this._size),this._listeners)if(this._listeners instanceof ag)this._deliver(this._listeners,e);else{let t=this._deliveryQueue;t.enqueue(this,e,this._listeners.length),this._deliverQueue(t)}this._perfMon?.stop()}hasListeners(){return this._size>0}},qH=class{constructor(){this.i=-1,this.end=0}enqueue(e,t,s){this.i=0,this.end=s,this.current=e,this.value=t}reset(){this.i=this.end,this.current=void 0,this.value=void 0}},X0=class{constructor(){this.mapWindowIdToZoomLevel=new Map,this._onDidChangeZoomLevel=new be,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this.mapWindowIdToZoomFactor=new Map,this._onDidChangeFullscreen=new be,this.onDidChangeFullscreen=this._onDidChangeFullscreen.event,this.mapWindowIdToFullScreen=new Map}getZoomLevel(t){return this.mapWindowIdToZoomLevel.get(this.getWindowId(t))??0}setZoomLevel(t,s){if(this.getZoomLevel(s)===t)return;let n=this.getWindowId(s);this.mapWindowIdToZoomLevel.set(n,t),this._onDidChangeZoomLevel.fire(n)}getZoomFactor(t){return this.mapWindowIdToZoomFactor.get(this.getWindowId(t))??1}setZoomFactor(t,s){this.mapWindowIdToZoomFactor.set(this.getWindowId(s),t)}setFullscreen(t,s){if(this.isFullscreen(s)===t)return;let n=this.getWindowId(s);this.mapWindowIdToFullScreen.set(n,t),this._onDidChangeFullscreen.fire(n)}isFullscreen(t){return!!this.mapWindowIdToFullScreen.get(this.getWindowId(t))}getWindowId(t){return t.vscodeWindowId}};X0.INSTANCE=new X0;var Dx=X0;function VH(e,t,s){typeof t=="string"&&(t=e.matchMedia(t)),t.addEventListener("change",s)}Dx.INSTANCE.onDidChangeZoomLevel;function GH(e){return Dx.INSTANCE.getZoomFactor(e)}Dx.INSTANCE.onDidChangeFullscreen;var vl=typeof navigator=="object"?navigator.userAgent:"",Z0=vl.indexOf("Firefox")>=0,WH=vl.indexOf("AppleWebKit")>=0,Ox=vl.indexOf("Chrome")>=0,KH=!Ox&&vl.indexOf("Safari")>=0;vl.indexOf("Electron/")>=0;vl.indexOf("Android")>=0;var og=!1;if(typeof pr.matchMedia=="function"){let e=pr.matchMedia("(display-mode: standalone) or (display-mode: window-controls-overlay)"),t=pr.matchMedia("(display-mode: fullscreen)");og=e.matches,VH(pr,e,({matches:s})=>{og&&t.matches||(og=s)})}var tl="en",Q0=!1,J0=!1,_h=!1,F3=!1,sh,yh=tl,s2=tl,YH,mr,Ya=globalThis,Tn;typeof Ya.vscode<"u"&&typeof Ya.vscode.process<"u"?Tn=Ya.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(Tn=process);var XH=typeof Tn?.versions?.electron=="string",ZH=XH&&Tn?.type==="renderer";if(typeof Tn=="object"){Q0=Tn.platform==="win32",J0=Tn.platform==="darwin",_h=Tn.platform==="linux",_h&&Tn.env.SNAP&&Tn.env.SNAP_REVISION,Tn.env.CI||Tn.env.BUILD_ARTIFACTSTAGINGDIRECTORY,sh=tl,yh=tl;let e=Tn.env.VSCODE_NLS_CONFIG;if(e)try{let t=JSON.parse(e);sh=t.userLocale,s2=t.osLocale,yh=t.resolvedLanguage||tl,YH=t.languagePack?.translationsConfigFile}catch{}F3=!0}else typeof navigator=="object"&&!ZH?(mr=navigator.userAgent,Q0=mr.indexOf("Windows")>=0,J0=mr.indexOf("Macintosh")>=0,(mr.indexOf("Macintosh")>=0||mr.indexOf("iPad")>=0||mr.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,_h=mr.indexOf("Linux")>=0,mr?.indexOf("Mobi")>=0,yh=globalThis._VSCODE_NLS_LANGUAGE||tl,sh=navigator.language.toLowerCase(),s2=sh):console.error("Unable to resolve platform.");var q3=Q0,Oi=J0,QH=_h,n2=F3,Bi=mr,Jr=yh,JH;(e=>{function t(){return Jr}e.value=t;function s(){return Jr.length===2?Jr==="en":Jr.length>=3?Jr[0]==="e"&&Jr[1]==="n"&&Jr[2]==="-":!1}e.isDefaultVariant=s;function n(){return Jr==="en"}e.isDefault=n})(JH||={});var eU=typeof Ya.postMessage=="function"&&!Ya.importScripts;(()=>{if(eU){let e=[];Ya.addEventListener("message",s=>{if(s.data&&s.data.vscodeScheduleAsyncWork)for(let n=0,o=e.length;n<o;n++){let l=e[n];if(l.id===s.data.vscodeScheduleAsyncWork){e.splice(n,1),l.callback();return}}});let t=0;return s=>{let n=++t;e.push({id:n,callback:s}),Ya.postMessage({vscodeScheduleAsyncWork:n},"*")}}return e=>setTimeout(e)})();var tU=!!(Bi&&Bi.indexOf("Chrome")>=0);Bi&&Bi.indexOf("Firefox")>=0;!tU&&Bi&&Bi.indexOf("Safari")>=0;Bi&&Bi.indexOf("Edg/")>=0;Bi&&Bi.indexOf("Android")>=0;var Go=typeof navigator=="object"?navigator:{};n2||document.queryCommandSupported&&document.queryCommandSupported("copy")||Go&&Go.clipboard&&Go.clipboard.writeText,n2||Go&&Go.clipboard&&Go.clipboard.readText;var Lx=class{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(e,t){this._keyCodeToStr[e]=t,this._strToKeyCode[t.toLowerCase()]=e}keyCodeToStr(e){return this._keyCodeToStr[e]}strToKeyCode(e){return this._strToKeyCode[e.toLowerCase()]||0}},lg=new Lx,i2=new Lx,r2=new Lx,sU=new Array(230),V3;(e=>{function t(h){return lg.keyCodeToStr(h)}e.toString=t;function s(h){return lg.strToKeyCode(h)}e.fromString=s;function n(h){return i2.keyCodeToStr(h)}e.toUserSettingsUS=n;function o(h){return r2.keyCodeToStr(h)}e.toUserSettingsGeneral=o;function l(h){return i2.strToKeyCode(h)||r2.strToKeyCode(h)}e.fromUserSettings=l;function u(h){if(h>=98&&h<=113)return null;switch(h){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return lg.keyCodeToStr(h)}e.toElectronAccelerator=u})(V3||={});var nU=class G3{constructor(t,s,n,o,l){this.ctrlKey=t,this.shiftKey=s,this.altKey=n,this.metaKey=o,this.keyCode=l}equals(t){return t instanceof G3&&this.ctrlKey===t.ctrlKey&&this.shiftKey===t.shiftKey&&this.altKey===t.altKey&&this.metaKey===t.metaKey&&this.keyCode===t.keyCode}getHashCode(){let t=this.ctrlKey?"1":"0",s=this.shiftKey?"1":"0",n=this.altKey?"1":"0",o=this.metaKey?"1":"0";return`K${t}${s}${n}${o}${this.keyCode}`}isModifierKey(){return this.keyCode===0||this.keyCode===5||this.keyCode===57||this.keyCode===6||this.keyCode===4}toKeybinding(){return new iU([this])}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}},iU=class{constructor(e){if(e.length===0)throw TH("chords");this.chords=e}getHashCode(){let e="";for(let t=0,s=this.chords.length;t<s;t++)t!==0&&(e+=";"),e+=this.chords[t].getHashCode();return e}equals(e){if(e===null||this.chords.length!==e.chords.length)return!1;for(let t=0;t<this.chords.length;t++)if(!this.chords[t].equals(e.chords[t]))return!1;return!0}};function rU(e){if(e.charCode){let s=String.fromCharCode(e.charCode).toUpperCase();return V3.fromString(s)}let t=e.keyCode;if(t===3)return 7;if(Z0)switch(t){case 59:return 85;case 60:if(QH)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(Oi)return 57;break}else if(WH&&(Oi&&t===93||!Oi&&t===92))return 57;return sU[t]||0}var aU=Oi?256:2048,oU=512,lU=1024,cU=Oi?2048:256,a2=class{constructor(e){this._standardKeyboardEventBrand=!0;let t=e;this.browserEvent=t,this.target=t.target,this.ctrlKey=t.ctrlKey,this.shiftKey=t.shiftKey,this.altKey=t.altKey,this.metaKey=t.metaKey,this.altGraphKey=t.getModifierState?.("AltGraph"),this.keyCode=rU(t),this.code=t.code,this.ctrlKey=this.ctrlKey||this.keyCode===5,this.altKey=this.altKey||this.keyCode===6,this.shiftKey=this.shiftKey||this.keyCode===4,this.metaKey=this.metaKey||this.keyCode===57,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(e){return this._asKeybinding===e}_computeKeybinding(){let e=0;this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(e=this.keyCode);let t=0;return this.ctrlKey&&(t|=aU),this.altKey&&(t|=oU),this.shiftKey&&(t|=lU),this.metaKey&&(t|=cU),t|=e,t}_computeKeyCodeChord(){let e=0;return this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(e=this.keyCode),new nU(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,e)}},o2=new WeakMap;function uU(e){if(!e.parent||e.parent===e)return null;try{let t=e.location,s=e.parent.location;if(t.origin!=="null"&&s.origin!=="null"&&t.origin!==s.origin)return null}catch{return null}return e.parent}var dU=class{static getSameOriginWindowChain(e){let t=o2.get(e);if(!t){t=[],o2.set(e,t);let s=e,n;do n=uU(s),n?t.push({window:new WeakRef(s),iframeElement:s.frameElement||null}):t.push({window:new WeakRef(s),iframeElement:null}),s=n;while(s)}return t.slice(0)}static getPositionOfChildWindowRelativeToAncestorWindow(e,t){if(!t||e===t)return{top:0,left:0};let s=0,n=0,o=this.getSameOriginWindowChain(e);for(let l of o){let u=l.window.deref();if(s+=u?.scrollY??0,n+=u?.scrollX??0,u===t||!l.iframeElement)break;let h=l.iframeElement.getBoundingClientRect();s+=h.top,n+=h.left}return{top:s,left:n}}},nh=class{constructor(e,t){this.timestamp=Date.now(),this.browserEvent=t,this.leftButton=t.button===0,this.middleButton=t.button===1,this.rightButton=t.button===2,this.buttons=t.buttons,this.target=t.target,this.detail=t.detail||1,t.type==="dblclick"&&(this.detail=2),this.ctrlKey=t.ctrlKey,this.shiftKey=t.shiftKey,this.altKey=t.altKey,this.metaKey=t.metaKey,typeof t.pageX=="number"?(this.posx=t.pageX,this.posy=t.pageY):(this.posx=t.clientX+this.target.ownerDocument.body.scrollLeft+this.target.ownerDocument.documentElement.scrollLeft,this.posy=t.clientY+this.target.ownerDocument.body.scrollTop+this.target.ownerDocument.documentElement.scrollTop);let s=dU.getPositionOfChildWindowRelativeToAncestorWindow(e,t.view);this.posx-=s.left,this.posy-=s.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}},l2=class{constructor(e,t=0,s=0){this.browserEvent=e||null,this.target=e?e.target||e.targetNode||e.srcElement:null,this.deltaY=s,this.deltaX=t;let n=!1;if(Ox){let o=navigator.userAgent.match(/Chrome\/(\d+)/);n=(o?parseInt(o[1]):123)<=122}if(e){let o=e,l=e,u=e.view?.devicePixelRatio||1;if(typeof o.wheelDeltaY<"u")n?this.deltaY=o.wheelDeltaY/(120*u):this.deltaY=o.wheelDeltaY/120;else if(typeof l.VERTICAL_AXIS<"u"&&l.axis===l.VERTICAL_AXIS)this.deltaY=-l.detail/3;else if(e.type==="wheel"){let h=e;h.deltaMode===h.DOM_DELTA_LINE?Z0&&!Oi?this.deltaY=-e.deltaY/3:this.deltaY=-e.deltaY:this.deltaY=-e.deltaY/40}if(typeof o.wheelDeltaX<"u")KH&&q3?this.deltaX=-(o.wheelDeltaX/120):n?this.deltaX=o.wheelDeltaX/(120*u):this.deltaX=o.wheelDeltaX/120;else if(typeof l.HORIZONTAL_AXIS<"u"&&l.axis===l.HORIZONTAL_AXIS)this.deltaX=-e.detail/3;else if(e.type==="wheel"){let h=e;h.deltaMode===h.DOM_DELTA_LINE?Z0&&!Oi?this.deltaX=-e.deltaX/3:this.deltaX=-e.deltaX:this.deltaX=-e.deltaX/40}this.deltaY===0&&this.deltaX===0&&e.wheelDelta&&(n?this.deltaY=e.wheelDelta/(120*u):this.deltaY=e.wheelDelta/120)}}preventDefault(){this.browserEvent?.preventDefault()}stopPropagation(){this.browserEvent?.stopPropagation()}},W3=Object.freeze(function(e,t){let s=setTimeout(e.bind(t),0);return{dispose(){clearTimeout(s)}}}),hU;(e=>{function t(s){return s===e.None||s===e.Cancelled||s instanceof fU?!0:!s||typeof s!="object"?!1:typeof s.isCancellationRequested=="boolean"&&typeof s.onCancellationRequested=="function"}e.isCancellationToken=t,e.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Bs.None}),e.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:W3})})(hU||={});var fU=class{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?W3:(this._emitter||(this._emitter=new be),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}},zx=class{constructor(e,t){this._isDisposed=!1,this._token=-1,typeof e=="function"&&typeof t=="number"&&this.setIfNotSet(e,t)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(e,t){if(this._isDisposed)throw new V0("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=-1,e()},t)}setIfNotSet(e,t){if(this._isDisposed)throw new V0("Calling 'setIfNotSet' on a disposed TimeoutTimer");this._token===-1&&(this._token=setTimeout(()=>{this._token=-1,e()},t))}},mU=class{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(e,t,s=globalThis){if(this.isDisposed)throw new V0("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let n=s.setInterval(()=>{e()},t);this.disposable=It(()=>{s.clearInterval(n),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}},pU;(e=>{async function t(n){let o,l=await Promise.all(n.map(u=>u.then(h=>h,h=>{o||(o=h)})));if(typeof o<"u")throw o;return l}e.settled=t;function s(n){return new Promise(async(o,l)=>{try{await n(o,l)}catch(u){l(u)}})}e.withAsyncBody=s})(pU||={});var c2=class Fn{static fromArray(t){return new Fn(s=>{s.emitMany(t)})}static fromPromise(t){return new Fn(async s=>{s.emitMany(await t)})}static fromPromises(t){return new Fn(async s=>{await Promise.all(t.map(async n=>s.emitOne(await n)))})}static merge(t){return new Fn(async s=>{await Promise.all(t.map(async n=>{for await(let o of n)s.emitOne(o)}))})}constructor(t,s){this._state=0,this._results=[],this._error=null,this._onReturn=s,this._onStateChanged=new be,queueMicrotask(async()=>{let n={emitOne:o=>this.emitOne(o),emitMany:o=>this.emitMany(o),reject:o=>this.reject(o)};try{await Promise.resolve(t(n)),this.resolve()}catch(o){this.reject(o)}finally{n.emitOne=void 0,n.emitMany=void 0,n.reject=void 0}})}[Symbol.asyncIterator](){let t=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(t<this._results.length)return{done:!1,value:this._results[t++]};if(this._state===1)return{done:!0,value:void 0};await Bs.toPromise(this._onStateChanged.event)}while(!0)},return:async()=>(this._onReturn?.(),{done:!0,value:void 0})}}static map(t,s){return new Fn(async n=>{for await(let o of t)n.emitOne(s(o))})}map(t){return Fn.map(this,t)}static filter(t,s){return new Fn(async n=>{for await(let o of t)s(o)&&n.emitOne(o)})}filter(t){return Fn.filter(this,t)}static coalesce(t){return Fn.filter(t,s=>!!s)}coalesce(){return Fn.coalesce(this)}static async toPromise(t){let s=[];for await(let n of t)s.push(n);return s}toPromise(){return Fn.toPromise(this)}emitOne(t){this._state===0&&(this._results.push(t),this._onStateChanged.fire())}emitMany(t){this._state===0&&(this._results=this._results.concat(t),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(t){this._state===0&&(this._state=2,this._error=t,this._onStateChanged.fire())}};c2.EMPTY=c2.fromArray([]);var{getWindow:Ri,getWindowId:gU,onDidRegisterWindow:bU}=(function(){let e=new Map,t={window:pr,disposables:new aa};e.set(pr.vscodeWindowId,t);let s=new be,n=new be,o=new be;function l(u,h){return(typeof u=="number"?e.get(u):void 0)??(h?t:void 0)}return{onDidRegisterWindow:s.event,onWillUnregisterWindow:o.event,onDidUnregisterWindow:n.event,registerWindow(u){if(e.has(u.vscodeWindowId))return Je.None;let h=new aa,m={window:u,disposables:h.add(new aa)};return e.set(u.vscodeWindowId,m),h.add(It(()=>{e.delete(u.vscodeWindowId),n.fire(u)})),h.add(qe(u,Ss.BEFORE_UNLOAD,()=>{o.fire(u)})),s.fire(m),h},getWindows(){return e.values()},getWindowsCount(){return e.size},getWindowId(u){return u.vscodeWindowId},hasWindow(u){return e.has(u)},getWindowById:l,getWindow(u){let h=u;if(h?.ownerDocument?.defaultView)return h.ownerDocument.defaultView.window;let m=u;return m?.view?m.view.window:pr},getDocument(u){return Ri(u).document}}})(),xU=class{constructor(e,t,s,n){this._node=e,this._type=t,this._handler=s,this._options=n||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}};function qe(e,t,s,n){return new xU(e,t,s,n)}var u2=function(e,t,s,n){return qe(e,t,s,n)},Bx,vU=class extends mU{constructor(e){super(),this.defaultTarget=e&&Ri(e)}cancelAndSet(e,t,s){return super.cancelAndSet(e,t,s??this.defaultTarget)}},d2=class{constructor(e,t=0){this._runner=e,this.priority=t,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(e){vh(e)}}static sort(e,t){return t.priority-e.priority}};(function(){let e=new Map,t=new Map,s=new Map,n=new Map,o=l=>{s.set(l,!1);let u=e.get(l)??[];for(t.set(l,u),e.set(l,[]),n.set(l,!0);u.length>0;)u.sort(d2.sort),u.shift().execute();n.set(l,!1)};Bx=(l,u,h=0)=>{let m=gU(l),d=new d2(u,h),p=e.get(m);return p||(p=[],e.set(m,p)),p.push(d),s.get(m)||(s.set(m,!0),l.requestAnimationFrame(()=>o(m))),d}})();function _U(e){let t=e.getBoundingClientRect(),s=Ri(e);return{left:t.left+s.scrollX,top:t.top+s.scrollY,width:t.width,height:t.height}}var Ss={CLICK:"click",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",CHANGE:"change",FOCUS:"focus",BLUR:"blur",INPUT:"input"},yU=class{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingTop="",this._paddingLeft="",this._paddingBottom="",this._paddingRight="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){let t=hn(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){let t=hn(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){let t=hn(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){let t=hn(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){let t=hn(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){let t=hn(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){let t=hn(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingTop(e){let t=hn(e);this._paddingTop!==t&&(this._paddingTop=t,this.domNode.style.paddingTop=this._paddingTop)}setPaddingLeft(e){let t=hn(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setPaddingBottom(e){let t=hn(e);this._paddingBottom!==t&&(this._paddingBottom=t,this.domNode.style.paddingBottom=this._paddingBottom)}setPaddingRight(e){let t=hn(e);this._paddingRight!==t&&(this._paddingRight=t,this.domNode.style.paddingRight=this._paddingRight)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){let t=hn(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){let t=hn(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){let t=hn(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}};function hn(e){return typeof e=="number"?`${e}px`:e}function Gc(e){return new yU(e)}var K3=class{constructor(){this._hooks=new aa,this._pointerMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(e,t){if(!this.isMonitoring())return;this._hooks.clear(),this._pointerMoveCallback=null;let s=this._onStopCallback;this._onStopCallback=null,e&&s&&s(t)}isMonitoring(){return!!this._pointerMoveCallback}startMonitoring(e,t,s,n,o){this.isMonitoring()&&this.stopMonitoring(!1),this._pointerMoveCallback=n,this._onStopCallback=o;let l=e;try{e.setPointerCapture(t),this._hooks.add(It(()=>{try{e.releasePointerCapture(t)}catch{}}))}catch{l=Ri(e)}this._hooks.add(qe(l,Ss.POINTER_MOVE,u=>{if(u.buttons!==s){this.stopMonitoring(!0);return}u.preventDefault(),this._pointerMoveCallback(u)})),this._hooks.add(qe(l,Ss.POINTER_UP,u=>this.stopMonitoring(!0)))}};function SU(e,t,s){let n=null,o=null;if(typeof s.value=="function"?(n="value",o=s.value,o.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof s.get=="function"&&(n="get",o=s.get),!o)throw new Error("not supported");let l=`$memoize$${t}`;s[n]=function(...u){return this.hasOwnProperty(l)||Object.defineProperty(this,l,{configurable:!1,enumerable:!1,writable:!1,value:o.apply(this,u)}),this[l]}}var Ti;(e=>(e.Tap="-xterm-gesturetap",e.Change="-xterm-gesturechange",e.Start="-xterm-gesturestart",e.End="-xterm-gesturesend",e.Contextmenu="-xterm-gesturecontextmenu"))(Ti||={});var Rc=class qs extends Je{constructor(){super(),this.dispatched=!1,this.targets=new t2,this.ignoreTargets=new t2,this.activeTouches={},this.handle=null,this._lastSetTapCountTime=0,this._register(Bs.runAndSubscribe(bU,({window:t,disposables:s})=>{s.add(qe(t.document,"touchstart",n=>this.onTouchStart(n),{passive:!1})),s.add(qe(t.document,"touchend",n=>this.onTouchEnd(t,n))),s.add(qe(t.document,"touchmove",n=>this.onTouchMove(n),{passive:!1}))},{window:pr,disposables:this._store}))}static addTarget(t){if(!qs.isTouchDevice())return Je.None;qs.INSTANCE||(qs.INSTANCE=new qs);let s=qs.INSTANCE.targets.push(t);return It(s)}static ignoreTarget(t){if(!qs.isTouchDevice())return Je.None;qs.INSTANCE||(qs.INSTANCE=new qs);let s=qs.INSTANCE.ignoreTargets.push(t);return It(s)}static isTouchDevice(){return"ontouchstart"in pr||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(t){let s=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let n=0,o=t.targetTouches.length;n<o;n++){let l=t.targetTouches.item(n);this.activeTouches[l.identifier]={id:l.identifier,initialTarget:l.target,initialTimeStamp:s,initialPageX:l.pageX,initialPageY:l.pageY,rollingTimestamps:[s],rollingPageX:[l.pageX],rollingPageY:[l.pageY]};let u=this.newGestureEvent(Ti.Start,l.target);u.pageX=l.pageX,u.pageY=l.pageY,this.dispatchEvent(u)}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}onTouchEnd(t,s){let n=Date.now(),o=Object.keys(this.activeTouches).length;for(let l=0,u=s.changedTouches.length;l<u;l++){let h=s.changedTouches.item(l);if(!this.activeTouches.hasOwnProperty(String(h.identifier))){console.warn("move of an UNKNOWN touch",h);continue}let m=this.activeTouches[h.identifier],d=Date.now()-m.initialTimeStamp;if(d<qs.HOLD_DELAY&&Math.abs(m.initialPageX-En(m.rollingPageX))<30&&Math.abs(m.initialPageY-En(m.rollingPageY))<30){let p=this.newGestureEvent(Ti.Tap,m.initialTarget);p.pageX=En(m.rollingPageX),p.pageY=En(m.rollingPageY),this.dispatchEvent(p)}else if(d>=qs.HOLD_DELAY&&Math.abs(m.initialPageX-En(m.rollingPageX))<30&&Math.abs(m.initialPageY-En(m.rollingPageY))<30){let p=this.newGestureEvent(Ti.Contextmenu,m.initialTarget);p.pageX=En(m.rollingPageX),p.pageY=En(m.rollingPageY),this.dispatchEvent(p)}else if(o===1){let p=En(m.rollingPageX),g=En(m.rollingPageY),x=En(m.rollingTimestamps)-m.rollingTimestamps[0],_=p-m.rollingPageX[0],S=g-m.rollingPageY[0],w=[...this.targets].filter(C=>m.initialTarget instanceof Node&&C.contains(m.initialTarget));this.inertia(t,w,n,Math.abs(_)/x,_>0?1:-1,p,Math.abs(S)/x,S>0?1:-1,g)}this.dispatchEvent(this.newGestureEvent(Ti.End,m.initialTarget)),delete this.activeTouches[h.identifier]}this.dispatched&&(s.preventDefault(),s.stopPropagation(),this.dispatched=!1)}newGestureEvent(t,s){let n=document.createEvent("CustomEvent");return n.initEvent(t,!1,!0),n.initialTarget=s,n.tapCount=0,n}dispatchEvent(t){if(t.type===Ti.Tap){let s=new Date().getTime(),n=0;s-this._lastSetTapCountTime>qs.CLEAR_TAP_COUNT_TIME?n=1:n=2,this._lastSetTapCountTime=s,t.tapCount=n}else(t.type===Ti.Change||t.type===Ti.Contextmenu)&&(this._lastSetTapCountTime=0);if(t.initialTarget instanceof Node){for(let n of this.ignoreTargets)if(n.contains(t.initialTarget))return;let s=[];for(let n of this.targets)if(n.contains(t.initialTarget)){let o=0,l=t.initialTarget;for(;l&&l!==n;)o++,l=l.parentElement;s.push([o,n])}s.sort((n,o)=>n[0]-o[0]);for(let[n,o]of s)o.dispatchEvent(t),this.dispatched=!0}}inertia(t,s,n,o,l,u,h,m,d){this.handle=Bx(t,()=>{let p=Date.now(),g=p-n,x=0,_=0,S=!0;o+=qs.SCROLL_FRICTION*g,h+=qs.SCROLL_FRICTION*g,o>0&&(S=!1,x=l*o*g),h>0&&(S=!1,_=m*h*g);let w=this.newGestureEvent(Ti.Change);w.translationX=x,w.translationY=_,s.forEach(C=>C.dispatchEvent(w)),S||this.inertia(t,s,p,o,l,u+x,h,m,d+_)})}onTouchMove(t){let s=Date.now();for(let n=0,o=t.changedTouches.length;n<o;n++){let l=t.changedTouches.item(n);if(!this.activeTouches.hasOwnProperty(String(l.identifier))){console.warn("end of an UNKNOWN touch",l);continue}let u=this.activeTouches[l.identifier],h=this.newGestureEvent(Ti.Change,u.initialTarget);h.translationX=l.pageX-En(u.rollingPageX),h.translationY=l.pageY-En(u.rollingPageY),h.pageX=l.pageX,h.pageY=l.pageY,this.dispatchEvent(h),u.rollingPageX.length>3&&(u.rollingPageX.shift(),u.rollingPageY.shift(),u.rollingTimestamps.shift()),u.rollingPageX.push(l.pageX),u.rollingPageY.push(l.pageY),u.rollingTimestamps.push(s)}this.dispatched&&(t.preventDefault(),t.stopPropagation(),this.dispatched=!1)}};Rc.SCROLL_FRICTION=-.005,Rc.HOLD_DELAY=700,Rc.CLEAR_TAP_COUNT_TIME=400,Wt([SU],Rc,"isTouchDevice",1);var wU=Rc,Ix=class extends Je{onclick(e,t){this._register(qe(e,Ss.CLICK,s=>t(new nh(Ri(e),s))))}onmousedown(e,t){this._register(qe(e,Ss.MOUSE_DOWN,s=>t(new nh(Ri(e),s))))}onmouseover(e,t){this._register(qe(e,Ss.MOUSE_OVER,s=>t(new nh(Ri(e),s))))}onmouseleave(e,t){this._register(qe(e,Ss.MOUSE_LEAVE,s=>t(new nh(Ri(e),s))))}onkeydown(e,t){this._register(qe(e,Ss.KEY_DOWN,s=>t(new a2(s))))}onkeyup(e,t){this._register(qe(e,Ss.KEY_UP,s=>t(new a2(s))))}oninput(e,t){this._register(qe(e,Ss.INPUT,t))}onblur(e,t){this._register(qe(e,Ss.BLUR,t))}onfocus(e,t){this._register(qe(e,Ss.FOCUS,t))}onchange(e,t){this._register(qe(e,Ss.CHANGE,t))}ignoreGesture(e){return wU.ignoreTarget(e)}},h2=11,kU=class extends Ix{constructor(e){super(),this._onActivate=e.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=e.bgWidth+"px",this.bgDomNode.style.height=e.bgHeight+"px",typeof e.top<"u"&&(this.bgDomNode.style.top="0px"),typeof e.left<"u"&&(this.bgDomNode.style.left="0px"),typeof e.bottom<"u"&&(this.bgDomNode.style.bottom="0px"),typeof e.right<"u"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=e.className,this.domNode.style.position="absolute",this.domNode.style.width=h2+"px",this.domNode.style.height=h2+"px",typeof e.top<"u"&&(this.domNode.style.top=e.top+"px"),typeof e.left<"u"&&(this.domNode.style.left=e.left+"px"),typeof e.bottom<"u"&&(this.domNode.style.bottom=e.bottom+"px"),typeof e.right<"u"&&(this.domNode.style.right=e.right+"px"),this._pointerMoveMonitor=this._register(new K3),this._register(u2(this.bgDomNode,Ss.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._register(u2(this.domNode,Ss.POINTER_DOWN,t=>this._arrowPointerDown(t))),this._pointerdownRepeatTimer=this._register(new vU),this._pointerdownScheduleRepeatTimer=this._register(new zx)}_arrowPointerDown(e){if(!e.target||!(e.target instanceof Element))return;let t=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,Ri(e))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(t,200),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,s=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),e.preventDefault()}},CU=class eb{constructor(t,s,n,o,l,u,h){this._forceIntegerValues=t,this._scrollStateBrand=void 0,this._forceIntegerValues&&(s=s|0,n=n|0,o=o|0,l=l|0,u=u|0,h=h|0),this.rawScrollLeft=o,this.rawScrollTop=h,s<0&&(s=0),o+s>n&&(o=n-s),o<0&&(o=0),l<0&&(l=0),h+l>u&&(h=u-l),h<0&&(h=0),this.width=s,this.scrollWidth=n,this.scrollLeft=o,this.height=l,this.scrollHeight=u,this.scrollTop=h}equals(t){return this.rawScrollLeft===t.rawScrollLeft&&this.rawScrollTop===t.rawScrollTop&&this.width===t.width&&this.scrollWidth===t.scrollWidth&&this.scrollLeft===t.scrollLeft&&this.height===t.height&&this.scrollHeight===t.scrollHeight&&this.scrollTop===t.scrollTop}withScrollDimensions(t,s){return new eb(this._forceIntegerValues,typeof t.width<"u"?t.width:this.width,typeof t.scrollWidth<"u"?t.scrollWidth:this.scrollWidth,s?this.rawScrollLeft:this.scrollLeft,typeof t.height<"u"?t.height:this.height,typeof t.scrollHeight<"u"?t.scrollHeight:this.scrollHeight,s?this.rawScrollTop:this.scrollTop)}withScrollPosition(t){return new eb(this._forceIntegerValues,this.width,this.scrollWidth,typeof t.scrollLeft<"u"?t.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof t.scrollTop<"u"?t.scrollTop:this.rawScrollTop)}createScrollEvent(t,s){let n=this.width!==t.width,o=this.scrollWidth!==t.scrollWidth,l=this.scrollLeft!==t.scrollLeft,u=this.height!==t.height,h=this.scrollHeight!==t.scrollHeight,m=this.scrollTop!==t.scrollTop;return{inSmoothScrolling:s,oldWidth:t.width,oldScrollWidth:t.scrollWidth,oldScrollLeft:t.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:t.height,oldScrollHeight:t.scrollHeight,oldScrollTop:t.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:n,scrollWidthChanged:o,scrollLeftChanged:l,heightChanged:u,scrollHeightChanged:h,scrollTopChanged:m}}},NU=class extends Je{constructor(e){super(),this._scrollableBrand=void 0,this._onScroll=this._register(new be),this.onScroll=this._onScroll.event,this._smoothScrollDuration=e.smoothScrollDuration,this._scheduleAtNextAnimationFrame=e.scheduleAtNextAnimationFrame,this._state=new CU(e.forceIntegerValues,0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(e){this._smoothScrollDuration=e}validateScrollPosition(e){return this._state.withScrollPosition(e)}getScrollDimensions(){return this._state}setScrollDimensions(e,t){let s=this._state.withScrollDimensions(e,t);this._setState(s,!!this._smoothScrolling),this._smoothScrolling?.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(e){let t=this._state.withScrollPosition(e);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(t,!1)}setScrollPositionSmooth(e,t){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(e);if(this._smoothScrolling){e={scrollLeft:typeof e.scrollLeft>"u"?this._smoothScrolling.to.scrollLeft:e.scrollLeft,scrollTop:typeof e.scrollTop>"u"?this._smoothScrolling.to.scrollTop:e.scrollTop};let s=this._state.withScrollPosition(e);if(this._smoothScrolling.to.scrollLeft===s.scrollLeft&&this._smoothScrolling.to.scrollTop===s.scrollTop)return;let n;t?n=new m2(this._smoothScrolling.from,s,this._smoothScrolling.startTime,this._smoothScrolling.duration):n=this._smoothScrolling.combine(this._state,s,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=n}else{let s=this._state.withScrollPosition(e);this._smoothScrolling=m2.start(this._state,s,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}hasPendingScrollAnimation(){return!!this._smoothScrolling}_performSmoothScrolling(){if(!this._smoothScrolling)return;let e=this._smoothScrolling.tick(),t=this._state.withScrollPosition(e);if(this._setState(t,!0),!!this._smoothScrolling){if(e.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{this._smoothScrolling&&(this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling())})}}_setState(e,t){let s=this._state;s.equals(e)||(this._state=e,this._onScroll.fire(this._state.createScrollEvent(s,t)))}},f2=class{constructor(e,t,s){this.scrollLeft=e,this.scrollTop=t,this.isDone=s}};function cg(e,t){let s=t-e;return function(n){return e+s*TU(n)}}function EU(e,t,s){return function(n){return n<s?e(n/s):t((n-s)/(1-s))}}var m2=class tb{constructor(t,s,n,o){this.from=t,this.to=s,this.duration=o,this.startTime=n,this.animationFrameDisposable=null,this._initAnimations()}_initAnimations(){this.scrollLeft=this._initAnimation(this.from.scrollLeft,this.to.scrollLeft,this.to.width),this.scrollTop=this._initAnimation(this.from.scrollTop,this.to.scrollTop,this.to.height)}_initAnimation(t,s,n){if(Math.abs(t-s)>2.5*n){let o,l;return t<s?(o=t+.75*n,l=s-.75*n):(o=t-.75*n,l=s+.75*n),EU(cg(t,o),cg(l,s),.33)}return cg(t,s)}dispose(){this.animationFrameDisposable!==null&&(this.animationFrameDisposable.dispose(),this.animationFrameDisposable=null)}acceptScrollDimensions(t){this.to=t.withScrollPosition(this.to),this._initAnimations()}tick(){return this._tick(Date.now())}_tick(t){let s=(t-this.startTime)/this.duration;if(s<1){let n=this.scrollLeft(s),o=this.scrollTop(s);return new f2(n,o,!1)}return new f2(this.to.scrollLeft,this.to.scrollTop,!0)}combine(t,s,n){return tb.start(t,s,n)}static start(t,s,n){n=n+10;let o=Date.now()-10;return new tb(t,s,o,n)}};function jU(e){return Math.pow(e,3)}function TU(e){return 1-jU(1-e)}var AU=class extends Je{constructor(e,t,s){super(),this._visibility=e,this._visibleClassName=t,this._invisibleClassName=s,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new zx)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this._updateShouldBeVisible())}setShouldBeVisible(e){this._rawShouldBeVisible=e,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){let e=this._applyVisibilitySetting();this._shouldBeVisible!==e&&(this._shouldBeVisible=e,this.ensureVisibility())}setIsNeeded(e){this._isNeeded!==e&&(this._isNeeded=e,this.ensureVisibility())}setDomNode(e){this._domNode=e,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(e){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(e?" fade":"")))}},MU=140,Y3=class extends Ix{constructor(e){super(),this._lazyRender=e.lazyRender,this._host=e.host,this._scrollable=e.scrollable,this._scrollByPage=e.scrollByPage,this._scrollbarState=e.scrollbarState,this._visibilityController=this._register(new AU(e.visibility,"visible scrollbar "+e.extraScrollbarClassName,"invisible scrollbar "+e.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new K3),this._shouldRender=!0,this.domNode=Gc(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register(qe(this.domNode.domNode,Ss.POINTER_DOWN,t=>this._domNodePointerDown(t)))}_createArrow(e){let t=this._register(new kU(e));this.domNode.domNode.appendChild(t.bgDomNode),this.domNode.domNode.appendChild(t.domNode)}_createSlider(e,t,s,n){this.slider=Gc(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(e),this.slider.setLeft(t),typeof s=="number"&&this.slider.setWidth(s),typeof n=="number"&&this.slider.setHeight(n),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register(qe(this.slider.domNode,Ss.POINTER_DOWN,o=>{o.button===0&&(o.preventDefault(),this._sliderPointerDown(o))})),this.onclick(this.slider.domNode,o=>{o.leftButton&&o.stopPropagation()})}_onElementSize(e){return this._scrollbarState.setVisibleSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(e){return this._scrollbarState.setScrollSize(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(e){return this._scrollbarState.setScrollPosition(e)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(e){e.target===this.domNode.domNode&&this._onPointerDown(e)}delegatePointerDown(e){let t=this.domNode.domNode.getClientRects()[0].top,s=t+this._scrollbarState.getSliderPosition(),n=t+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),o=this._sliderPointerPosition(e);s<=o&&o<=n?e.button===0&&(e.preventDefault(),this._sliderPointerDown(e)):this._onPointerDown(e)}_onPointerDown(e){let t,s;if(e.target===this.domNode.domNode&&typeof e.offsetX=="number"&&typeof e.offsetY=="number")t=e.offsetX,s=e.offsetY;else{let o=_U(this.domNode.domNode);t=e.pageX-o.left,s=e.pageY-o.top}let n=this._pointerDownRelativePosition(t,s);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(n):this._scrollbarState.getDesiredScrollPositionFromOffset(n)),e.button===0&&(e.preventDefault(),this._sliderPointerDown(e))}_sliderPointerDown(e){if(!e.target||!(e.target instanceof Element))return;let t=this._sliderPointerPosition(e),s=this._sliderOrthogonalPointerPosition(e),n=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(e.target,e.pointerId,e.buttons,o=>{let l=this._sliderOrthogonalPointerPosition(o),u=Math.abs(l-s);if(q3&&u>MU){this._setDesiredScrollPositionNow(n.getScrollPosition());return}let h=this._sliderPointerPosition(o)-t;this._setDesiredScrollPositionNow(n.getDesiredScrollPositionFromDelta(h))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(e){let t={};this.writeScrollPosition(t,e),this._scrollable.setScrollPositionNow(t)}updateScrollbarSize(e){this._updateScrollbarSize(e),this._scrollbarState.setScrollbarSize(e),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}},X3=class sb{constructor(t,s,n,o,l,u){this._scrollbarSize=Math.round(s),this._oppositeScrollbarSize=Math.round(n),this._arrowSize=Math.round(t),this._visibleSize=o,this._scrollSize=l,this._scrollPosition=u,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new sb(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(t){let s=Math.round(t);return this._visibleSize!==s?(this._visibleSize=s,this._refreshComputedValues(),!0):!1}setScrollSize(t){let s=Math.round(t);return this._scrollSize!==s?(this._scrollSize=s,this._refreshComputedValues(),!0):!1}setScrollPosition(t){let s=Math.round(t);return this._scrollPosition!==s?(this._scrollPosition=s,this._refreshComputedValues(),!0):!1}setScrollbarSize(t){this._scrollbarSize=Math.round(t)}setOppositeScrollbarSize(t){this._oppositeScrollbarSize=Math.round(t)}static _computeValues(t,s,n,o,l){let u=Math.max(0,n-t),h=Math.max(0,u-2*s),m=o>0&&o>n;if(!m)return{computedAvailableSize:Math.round(u),computedIsNeeded:m,computedSliderSize:Math.round(h),computedSliderRatio:0,computedSliderPosition:0};let d=Math.round(Math.max(20,Math.floor(n*h/o))),p=(h-d)/(o-n),g=l*p;return{computedAvailableSize:Math.round(u),computedIsNeeded:m,computedSliderSize:Math.round(d),computedSliderRatio:p,computedSliderPosition:Math.round(g)}}_refreshComputedValues(){let t=sb._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=t.computedAvailableSize,this._computedIsNeeded=t.computedIsNeeded,this._computedSliderSize=t.computedSliderSize,this._computedSliderRatio=t.computedSliderRatio,this._computedSliderPosition=t.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(t){if(!this._computedIsNeeded)return 0;let s=t-this._arrowSize-this._computedSliderSize/2;return Math.round(s/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(t){if(!this._computedIsNeeded)return 0;let s=t-this._arrowSize,n=this._scrollPosition;return s<this._computedSliderPosition?n-=this._visibleSize:n+=this._visibleSize,n}getDesiredScrollPositionFromDelta(t){if(!this._computedIsNeeded)return 0;let s=this._computedSliderPosition+t;return Math.round(s/this._computedSliderRatio)}},RU=class extends Y3{constructor(e,t,s){let n=e.getScrollDimensions(),o=e.getCurrentScrollPosition();if(super({lazyRender:t.lazyRender,host:s,scrollbarState:new X3(t.horizontalHasArrows?t.arrowSize:0,t.horizontal===2?0:t.horizontalScrollbarSize,t.vertical===2?0:t.verticalScrollbarSize,n.width,n.scrollWidth,o.scrollLeft),visibility:t.horizontal,extraScrollbarClassName:"horizontal",scrollable:e,scrollByPage:t.scrollByPage}),t.horizontalHasArrows)throw new Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(Math.floor((t.horizontalScrollbarSize-t.horizontalSliderSize)/2),0,void 0,t.horizontalSliderSize)}_updateSlider(e,t){this.slider.setWidth(e),this.slider.setLeft(t)}_renderDomNode(e,t){this.domNode.setWidth(e),this.domNode.setHeight(t),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(e.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return e}_sliderPointerPosition(e){return e.pageX}_sliderOrthogonalPointerPosition(e){return e.pageY}_updateScrollbarSize(e){this.slider.setHeight(e)}writeScrollPosition(e,t){e.scrollLeft=t}updateOptions(e){this.updateScrollbarSize(e.horizontal===2?0:e.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._visibilityController.setVisibility(e.horizontal),this._scrollByPage=e.scrollByPage}},DU=class extends Y3{constructor(e,t,s){let n=e.getScrollDimensions(),o=e.getCurrentScrollPosition();if(super({lazyRender:t.lazyRender,host:s,scrollbarState:new X3(t.verticalHasArrows?t.arrowSize:0,t.vertical===2?0:t.verticalScrollbarSize,0,n.height,n.scrollHeight,o.scrollTop),visibility:t.vertical,extraScrollbarClassName:"vertical",scrollable:e,scrollByPage:t.scrollByPage}),t.verticalHasArrows)throw new Error("horizontalHasArrows is not supported in xterm.js");this._createSlider(0,Math.floor((t.verticalScrollbarSize-t.verticalSliderSize)/2),t.verticalSliderSize,void 0)}_updateSlider(e,t){this.slider.setHeight(e),this.slider.setTop(t)}_renderDomNode(e,t){this.domNode.setWidth(t),this.domNode.setHeight(e),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(e){return this._shouldRender=this._onElementScrollSize(e.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(e.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(e.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(e,t){return t}_sliderPointerPosition(e){return e.pageY}_sliderOrthogonalPointerPosition(e){return e.pageX}_updateScrollbarSize(e){this.slider.setWidth(e)}writeScrollPosition(e,t){e.scrollTop=t}updateOptions(e){this.updateScrollbarSize(e.vertical===2?0:e.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(e.vertical),this._scrollByPage=e.scrollByPage}},OU=500,p2=50,LU=class{constructor(e,t,s){this.timestamp=e,this.deltaX=t,this.deltaY=s,this.score=0}},nb=class{constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(this._front===-1&&this._rear===-1)return!1;let t=1,s=0,n=1,o=this._rear;do{let l=o===this._front?t:Math.pow(2,-n);if(t-=l,s+=this._memory[o].score*l,o===this._front)break;o=(this._capacity+o-1)%this._capacity,n++}while(!0);return s<=.5}acceptStandardWheelEvent(t){if(Ox){let s=Ri(t.browserEvent),n=GH(s);this.accept(Date.now(),t.deltaX*n,t.deltaY*n)}else this.accept(Date.now(),t.deltaX,t.deltaY)}accept(t,s,n){let o=null,l=new LU(t,s,n);this._front===-1&&this._rear===-1?(this._memory[0]=l,this._front=0,this._rear=0):(o=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=l),l.score=this._computeScore(l,o)}_computeScore(t,s){if(Math.abs(t.deltaX)>0&&Math.abs(t.deltaY)>0)return 1;let n=.5;if((!this._isAlmostInt(t.deltaX)||!this._isAlmostInt(t.deltaY))&&(n+=.25),s){let o=Math.abs(t.deltaX),l=Math.abs(t.deltaY),u=Math.abs(s.deltaX),h=Math.abs(s.deltaY),m=Math.max(Math.min(o,u),1),d=Math.max(Math.min(l,h),1),p=Math.max(o,u),g=Math.max(l,h);p%m===0&&g%d===0&&(n-=.5)}return Math.min(Math.max(n,0),1)}_isAlmostInt(t){return Math.abs(Math.round(t)-t)<.01}};nb.INSTANCE=new nb;var zU=nb,BU=class extends Ix{constructor(e,t,s){super(),this._onScroll=this._register(new be),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new be),this.onWillScroll=this._onWillScroll.event,this._options=PU(t),this._scrollable=s,this._register(this._scrollable.onScroll(o=>{this._onWillScroll.fire(o),this._onDidScroll(o),this._onScroll.fire(o)}));let n={onMouseWheel:o=>this._onMouseWheel(o),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new DU(this._scrollable,this._options,n)),this._horizontalScrollbar=this._register(new RU(this._scrollable,this._options,n)),this._domNode=document.createElement("div"),this._domNode.className="xterm-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.appendChild(e),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=Gc(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=Gc(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=Gc(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,o=>this._onMouseOver(o)),this.onmouseleave(this._listenOnDomNode,o=>this._onMouseLeave(o)),this._hideTimeout=this._register(new zx),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}get options(){return this._options}dispose(){this._mouseWheelToDispose=Qa(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(e){this._verticalScrollbar.delegatePointerDown(e)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(e){this._scrollable.setScrollDimensions(e,!1)}updateClassName(e){this._options.className=e,Oi&&(this._options.className+=" mac"),this._domNode.className="xterm-scrollable-element "+this._options.className}updateOptions(e){typeof e.handleMouseWheel<"u"&&(this._options.handleMouseWheel=e.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof e.mouseWheelScrollSensitivity<"u"&&(this._options.mouseWheelScrollSensitivity=e.mouseWheelScrollSensitivity),typeof e.fastScrollSensitivity<"u"&&(this._options.fastScrollSensitivity=e.fastScrollSensitivity),typeof e.scrollPredominantAxis<"u"&&(this._options.scrollPredominantAxis=e.scrollPredominantAxis),typeof e.horizontal<"u"&&(this._options.horizontal=e.horizontal),typeof e.vertical<"u"&&(this._options.vertical=e.vertical),typeof e.horizontalScrollbarSize<"u"&&(this._options.horizontalScrollbarSize=e.horizontalScrollbarSize),typeof e.verticalScrollbarSize<"u"&&(this._options.verticalScrollbarSize=e.verticalScrollbarSize),typeof e.scrollByPage<"u"&&(this._options.scrollByPage=e.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}setRevealOnScroll(e){this._revealOnScroll=e}delegateScrollFromMouseWheelEvent(e){this._onMouseWheel(new l2(e))}_setListeningToMouseWheel(e){if(this._mouseWheelToDispose.length>0!==e&&(this._mouseWheelToDispose=Qa(this._mouseWheelToDispose),e)){let t=s=>{this._onMouseWheel(new l2(s))};this._mouseWheelToDispose.push(qe(this._listenOnDomNode,Ss.MOUSE_WHEEL,t,{passive:!1}))}}_onMouseWheel(e){if(e.browserEvent?.defaultPrevented)return;let t=zU.INSTANCE;t.acceptStandardWheelEvent(e);let s=!1;if(e.deltaY||e.deltaX){let o=e.deltaY*this._options.mouseWheelScrollSensitivity,l=e.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&l+o===0?l=o=0:Math.abs(o)>=Math.abs(l)?l=0:o=0),this._options.flipAxes&&([o,l]=[l,o]);let u=!Oi&&e.browserEvent&&e.browserEvent.shiftKey;(this._options.scrollYToX||u)&&!l&&(l=o,o=0),e.browserEvent&&e.browserEvent.altKey&&(l=l*this._options.fastScrollSensitivity,o=o*this._options.fastScrollSensitivity);let h=this._scrollable.getFutureScrollPosition(),m={};if(o){let d=p2*o,p=h.scrollTop-(d<0?Math.floor(d):Math.ceil(d));this._verticalScrollbar.writeScrollPosition(m,p)}if(l){let d=p2*l,p=h.scrollLeft-(d<0?Math.floor(d):Math.ceil(d));this._horizontalScrollbar.writeScrollPosition(m,p)}m=this._scrollable.validateScrollPosition(m),(h.scrollLeft!==m.scrollLeft||h.scrollTop!==m.scrollTop)&&(this._options.mouseWheelSmoothScroll&&t.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(m):this._scrollable.setScrollPositionNow(m),s=!0)}let n=s;!n&&this._options.alwaysConsumeMouseWheel&&(n=!0),!n&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(n=!0),n&&(e.preventDefault(),e.stopPropagation())}_onDidScroll(e){this._shouldRender=this._horizontalScrollbar.onDidScroll(e)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(e)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let e=this._scrollable.getCurrentScrollPosition(),t=e.scrollTop>0,s=e.scrollLeft>0,n=s?" left":"",o=t?" top":"",l=s||t?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${n}`),this._topShadowDomNode.setClassName(`shadow${o}`),this._topLeftShadowDomNode.setClassName(`shadow${l}${o}${n}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(e){this._mouseIsOver=!1,this._hide()}_onMouseOver(e){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),OU)}},IU=class extends BU{constructor(e,t,s){super(e,t,s)}setScrollPosition(e){e.reuseAnimation?this._scrollable.setScrollPositionSmooth(e,e.reuseAnimation):this._scrollable.setScrollPositionNow(e)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}};function PU(e){let t={lazyRender:typeof e.lazyRender<"u"?e.lazyRender:!1,className:typeof e.className<"u"?e.className:"",useShadows:typeof e.useShadows<"u"?e.useShadows:!0,handleMouseWheel:typeof e.handleMouseWheel<"u"?e.handleMouseWheel:!0,flipAxes:typeof e.flipAxes<"u"?e.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof e.consumeMouseWheelIfScrollbarIsNeeded<"u"?e.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof e.alwaysConsumeMouseWheel<"u"?e.alwaysConsumeMouseWheel:!1,scrollYToX:typeof e.scrollYToX<"u"?e.scrollYToX:!1,mouseWheelScrollSensitivity:typeof e.mouseWheelScrollSensitivity<"u"?e.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof e.fastScrollSensitivity<"u"?e.fastScrollSensitivity:5,scrollPredominantAxis:typeof e.scrollPredominantAxis<"u"?e.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof e.mouseWheelSmoothScroll<"u"?e.mouseWheelSmoothScroll:!0,arrowSize:typeof e.arrowSize<"u"?e.arrowSize:11,listenOnDomNode:typeof e.listenOnDomNode<"u"?e.listenOnDomNode:null,horizontal:typeof e.horizontal<"u"?e.horizontal:1,horizontalScrollbarSize:typeof e.horizontalScrollbarSize<"u"?e.horizontalScrollbarSize:10,horizontalSliderSize:typeof e.horizontalSliderSize<"u"?e.horizontalSliderSize:0,horizontalHasArrows:typeof e.horizontalHasArrows<"u"?e.horizontalHasArrows:!1,vertical:typeof e.vertical<"u"?e.vertical:1,verticalScrollbarSize:typeof e.verticalScrollbarSize<"u"?e.verticalScrollbarSize:10,verticalHasArrows:typeof e.verticalHasArrows<"u"?e.verticalHasArrows:!1,verticalSliderSize:typeof e.verticalSliderSize<"u"?e.verticalSliderSize:0,scrollByPage:typeof e.scrollByPage<"u"?e.scrollByPage:!1};return t.horizontalSliderSize=typeof e.horizontalSliderSize<"u"?e.horizontalSliderSize:t.horizontalScrollbarSize,t.verticalSliderSize=typeof e.verticalSliderSize<"u"?e.verticalSliderSize:t.verticalScrollbarSize,Oi&&(t.className+=" mac"),t}var ib=class extends Je{constructor(e,t,s,n,o,l,u,h){super(),this._bufferService=s,this._optionsService=u,this._renderService=h,this._onRequestScrollLines=this._register(new be),this.onRequestScrollLines=this._onRequestScrollLines.event,this._isSyncing=!1,this._isHandlingScroll=!1,this._suppressOnScrollHandler=!1;let m=this._register(new NU({forceIntegerValues:!1,smoothScrollDuration:this._optionsService.rawOptions.smoothScrollDuration,scheduleAtNextAnimationFrame:d=>Bx(n.window,d)}));this._register(this._optionsService.onSpecificOptionChange("smoothScrollDuration",()=>{m.setSmoothScrollDuration(this._optionsService.rawOptions.smoothScrollDuration)})),this._scrollableElement=this._register(new IU(t,{vertical:1,horizontal:2,useShadows:!1,mouseWheelSmoothScroll:!0,...this._getChangeOptions()},m)),this._register(this._optionsService.onMultipleOptionChange(["scrollSensitivity","fastScrollSensitivity","overviewRuler"],()=>this._scrollableElement.updateOptions(this._getChangeOptions()))),this._register(o.onProtocolChange(d=>{this._scrollableElement.updateOptions({handleMouseWheel:!(d&16)})})),this._scrollableElement.setScrollDimensions({height:0,scrollHeight:0}),this._register(Bs.runAndSubscribe(l.onChangeColors,()=>{this._scrollableElement.getDomNode().style.backgroundColor=l.colors.background.css})),e.appendChild(this._scrollableElement.getDomNode()),this._register(It(()=>this._scrollableElement.getDomNode().remove())),this._styleElement=n.mainDocument.createElement("style"),t.appendChild(this._styleElement),this._register(It(()=>this._styleElement.remove())),this._register(Bs.runAndSubscribe(l.onChangeColors,()=>{this._styleElement.textContent=[".xterm .xterm-scrollable-element > .scrollbar > .slider {",` background: ${l.colors.scrollbarSliderBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider:hover {",` background: ${l.colors.scrollbarSliderHoverBackground.css};`,"}",".xterm .xterm-scrollable-element > .scrollbar > .slider.active {",` background: ${l.colors.scrollbarSliderActiveBackground.css};`,"}"].join(`
|
|
164
|
-
`)})),this._register(this._bufferService.onResize(()=>this.queueSync())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._latestYDisp=void 0,this.queueSync()})),this._register(this._bufferService.onScroll(()=>this._sync())),this._register(this._scrollableElement.onScroll(d=>this._handleScroll(d)))}scrollLines(e){let t=this._scrollableElement.getScrollPosition();this._scrollableElement.setScrollPosition({reuseAnimation:!0,scrollTop:t.scrollTop+e*this._renderService.dimensions.css.cell.height})}scrollToLine(e,t){t&&(this._latestYDisp=e),this._scrollableElement.setScrollPosition({reuseAnimation:!t,scrollTop:e*this._renderService.dimensions.css.cell.height})}_getChangeOptions(){return{mouseWheelScrollSensitivity:this._optionsService.rawOptions.scrollSensitivity,fastScrollSensitivity:this._optionsService.rawOptions.fastScrollSensitivity,verticalScrollbarSize:this._optionsService.rawOptions.overviewRuler?.width||14}}queueSync(e){e!==void 0&&(this._latestYDisp=e),this._queuedAnimationFrame===void 0&&(this._queuedAnimationFrame=this._renderService.addRefreshCallback(()=>{this._queuedAnimationFrame=void 0,this._sync(this._latestYDisp)}))}_sync(e=this._bufferService.buffer.ydisp){!this._renderService||this._isSyncing||(this._isSyncing=!0,this._suppressOnScrollHandler=!0,this._scrollableElement.setScrollDimensions({height:this._renderService.dimensions.css.canvas.height,scrollHeight:this._renderService.dimensions.css.cell.height*this._bufferService.buffer.lines.length}),this._suppressOnScrollHandler=!1,e!==this._latestYDisp&&this._scrollableElement.setScrollPosition({scrollTop:e*this._renderService.dimensions.css.cell.height}),this._isSyncing=!1)}_handleScroll(e){if(!this._renderService||this._isHandlingScroll||this._suppressOnScrollHandler)return;this._isHandlingScroll=!0;let t=Math.round(e.scrollTop/this._renderService.dimensions.css.cell.height),s=t-this._bufferService.buffer.ydisp;s!==0&&(this._latestYDisp=t,this._onRequestScrollLines.fire(s)),this._isHandlingScroll=!1}};ib=Wt([we(2,en),we(3,vr),we(4,A3),we(5,xl),we(6,tn),we(7,_r)],ib);var rb=class extends Je{constructor(e,t,s,n,o){super(),this._screenElement=e,this._bufferService=t,this._coreBrowserService=s,this._decorationService=n,this._renderService=o,this._decorationElements=new Map,this._altBufferIsActive=!1,this._dimensionsChanged=!1,this._container=document.createElement("div"),this._container.classList.add("xterm-decoration-container"),this._screenElement.appendChild(this._container),this._register(this._renderService.onRenderedViewportChange(()=>this._doRefreshDecorations())),this._register(this._renderService.onDimensionsChange(()=>{this._dimensionsChanged=!0,this._queueRefresh()})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._altBufferIsActive=this._bufferService.buffer===this._bufferService.buffers.alt})),this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh())),this._register(this._decorationService.onDecorationRemoved(l=>this._removeDecoration(l))),this._register(It(()=>{this._container.remove(),this._decorationElements.clear()}))}_queueRefresh(){this._animationFrame===void 0&&(this._animationFrame=this._renderService.addRefreshCallback(()=>{this._doRefreshDecorations(),this._animationFrame=void 0}))}_doRefreshDecorations(){for(let e of this._decorationService.decorations)this._renderDecoration(e);this._dimensionsChanged=!1}_renderDecoration(e){this._refreshStyle(e),this._dimensionsChanged&&this._refreshXPosition(e)}_createElement(e){let t=this._coreBrowserService.mainDocument.createElement("div");t.classList.add("xterm-decoration"),t.classList.toggle("xterm-decoration-top-layer",e?.options?.layer==="top"),t.style.width=`${Math.round((e.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,t.style.height=`${(e.options.height||1)*this._renderService.dimensions.css.cell.height}px`,t.style.top=`${(e.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height}px`,t.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;let s=e.options.x??0;return s&&s>this._bufferService.cols&&(t.style.display="none"),this._refreshXPosition(e,t),t}_refreshStyle(e){let t=e.marker.line-this._bufferService.buffers.active.ydisp;if(t<0||t>=this._bufferService.rows)e.element&&(e.element.style.display="none",e.onRenderEmitter.fire(e.element));else{let s=this._decorationElements.get(e);s||(s=this._createElement(e),e.element=s,this._decorationElements.set(e,s),this._container.appendChild(s),e.onDispose(()=>{this._decorationElements.delete(e),s.remove()})),s.style.display=this._altBufferIsActive?"none":"block",this._altBufferIsActive||(s.style.width=`${Math.round((e.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,s.style.height=`${(e.options.height||1)*this._renderService.dimensions.css.cell.height}px`,s.style.top=`${t*this._renderService.dimensions.css.cell.height}px`,s.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`),e.onRenderEmitter.fire(s)}}_refreshXPosition(e,t=e.element){if(!t)return;let s=e.options.x??0;(e.options.anchor||"left")==="right"?t.style.right=s?`${s*this._renderService.dimensions.css.cell.width}px`:"":t.style.left=s?`${s*this._renderService.dimensions.css.cell.width}px`:""}_removeDecoration(e){this._decorationElements.get(e)?.remove(),this._decorationElements.delete(e),e.dispose()}};rb=Wt([we(1,en),we(2,vr),we(3,Su),we(4,_r)],rb);var $U=class{constructor(){this._zones=[],this._zonePool=[],this._zonePoolIndex=0,this._linePadding={full:0,left:0,center:0,right:0}}get zones(){return this._zonePool.length=Math.min(this._zonePool.length,this._zones.length),this._zones}clear(){this._zones.length=0,this._zonePoolIndex=0}addDecoration(e){if(e.options.overviewRulerOptions){for(let t of this._zones)if(t.color===e.options.overviewRulerOptions.color&&t.position===e.options.overviewRulerOptions.position){if(this._lineIntersectsZone(t,e.marker.line))return;if(this._lineAdjacentToZone(t,e.marker.line,e.options.overviewRulerOptions.position)){this._addLineToZone(t,e.marker.line);return}}if(this._zonePoolIndex<this._zonePool.length){this._zonePool[this._zonePoolIndex].color=e.options.overviewRulerOptions.color,this._zonePool[this._zonePoolIndex].position=e.options.overviewRulerOptions.position,this._zonePool[this._zonePoolIndex].startBufferLine=e.marker.line,this._zonePool[this._zonePoolIndex].endBufferLine=e.marker.line,this._zones.push(this._zonePool[this._zonePoolIndex++]);return}this._zones.push({color:e.options.overviewRulerOptions.color,position:e.options.overviewRulerOptions.position,startBufferLine:e.marker.line,endBufferLine:e.marker.line}),this._zonePool.push(this._zones[this._zones.length-1]),this._zonePoolIndex++}}setPadding(e){this._linePadding=e}_lineIntersectsZone(e,t){return t>=e.startBufferLine&&t<=e.endBufferLine}_lineAdjacentToZone(e,t,s){return t>=e.startBufferLine-this._linePadding[s||"full"]&&t<=e.endBufferLine+this._linePadding[s||"full"]}_addLineToZone(e,t){e.startBufferLine=Math.min(e.startBufferLine,t),e.endBufferLine=Math.max(e.endBufferLine,t)}},Ni={full:0,left:0,center:0,right:0},ea={full:0,left:0,center:0,right:0},_c={full:0,left:0,center:0,right:0},Yh=class extends Je{constructor(e,t,s,n,o,l,u,h){super(),this._viewportElement=e,this._screenElement=t,this._bufferService=s,this._decorationService=n,this._renderService=o,this._optionsService=l,this._themeService=u,this._coreBrowserService=h,this._colorZoneStore=new $U,this._shouldUpdateDimensions=!0,this._shouldUpdateAnchor=!0,this._lastKnownBufferLength=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add("xterm-decoration-overview-ruler"),this._refreshCanvasDimensions(),this._viewportElement.parentElement?.insertBefore(this._canvas,this._viewportElement),this._register(It(()=>this._canvas?.remove()));let m=this._canvas.getContext("2d");if(m)this._ctx=m;else throw new Error("Ctx cannot be null");this._register(this._decorationService.onDecorationRegistered(()=>this._queueRefresh(void 0,!0))),this._register(this._decorationService.onDecorationRemoved(()=>this._queueRefresh(void 0,!0))),this._register(this._renderService.onRenderedViewportChange(()=>this._queueRefresh())),this._register(this._bufferService.buffers.onBufferActivate(()=>{this._canvas.style.display=this._bufferService.buffer===this._bufferService.buffers.alt?"none":"block"})),this._register(this._bufferService.onScroll(()=>{this._lastKnownBufferLength!==this._bufferService.buffers.normal.lines.length&&(this._refreshDrawHeightConstants(),this._refreshColorZonePadding())})),this._register(this._renderService.onRender(()=>{(!this._containerHeight||this._containerHeight!==this._screenElement.clientHeight)&&(this._queueRefresh(!0),this._containerHeight=this._screenElement.clientHeight)})),this._register(this._coreBrowserService.onDprChange(()=>this._queueRefresh(!0))),this._register(this._optionsService.onSpecificOptionChange("overviewRuler",()=>this._queueRefresh(!0))),this._register(this._themeService.onChangeColors(()=>this._queueRefresh())),this._queueRefresh(!0)}get _width(){return this._optionsService.options.overviewRuler?.width||0}_refreshDrawConstants(){let e=Math.floor((this._canvas.width-1)/3),t=Math.ceil((this._canvas.width-1)/3);ea.full=this._canvas.width,ea.left=e,ea.center=t,ea.right=e,this._refreshDrawHeightConstants(),_c.full=1,_c.left=1,_c.center=1+ea.left,_c.right=1+ea.left+ea.center}_refreshDrawHeightConstants(){Ni.full=Math.round(2*this._coreBrowserService.dpr);let e=this._canvas.height/this._bufferService.buffer.lines.length,t=Math.round(Math.max(Math.min(e,12),6)*this._coreBrowserService.dpr);Ni.left=t,Ni.center=t,Ni.right=t}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Ni.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Ni.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Ni.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*Ni.right)}),this._lastKnownBufferLength=this._bufferService.buffers.normal.lines.length}_refreshCanvasDimensions(){this._canvas.style.width=`${this._width}px`,this._canvas.width=Math.round(this._width*this._coreBrowserService.dpr),this._canvas.style.height=`${this._screenElement.clientHeight}px`,this._canvas.height=Math.round(this._screenElement.clientHeight*this._coreBrowserService.dpr),this._refreshDrawConstants(),this._refreshColorZonePadding()}_refreshDecorations(){this._shouldUpdateDimensions&&this._refreshCanvasDimensions(),this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height),this._colorZoneStore.clear();for(let t of this._decorationService.decorations)this._colorZoneStore.addDecoration(t);this._ctx.lineWidth=1,this._renderRulerOutline();let e=this._colorZoneStore.zones;for(let t of e)t.position!=="full"&&this._renderColorZone(t);for(let t of e)t.position==="full"&&this._renderColorZone(t);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderRulerOutline(){this._ctx.fillStyle=this._themeService.colors.overviewRulerBorder.css,this._ctx.fillRect(0,0,1,this._canvas.height),this._optionsService.rawOptions.overviewRuler.showTopBorder&&this._ctx.fillRect(1,0,this._canvas.width-1,1),this._optionsService.rawOptions.overviewRuler.showBottomBorder&&this._ctx.fillRect(1,this._canvas.height-1,this._canvas.width-1,this._canvas.height)}_renderColorZone(e){this._ctx.fillStyle=e.color,this._ctx.fillRect(_c[e.position||"full"],Math.round((this._canvas.height-1)*(e.startBufferLine/this._bufferService.buffers.active.lines.length)-Ni[e.position||"full"]/2),ea[e.position||"full"],Math.round((this._canvas.height-1)*((e.endBufferLine-e.startBufferLine)/this._bufferService.buffers.active.lines.length)+Ni[e.position||"full"]))}_queueRefresh(e,t){this._shouldUpdateDimensions=e||this._shouldUpdateDimensions,this._shouldUpdateAnchor=t||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._refreshDecorations(),this._animationFrame=void 0}))}};Yh=Wt([we(2,en),we(3,Su),we(4,_r),we(5,tn),we(6,xl),we(7,vr)],Yh);var ue;(e=>(e.NUL="\0",e.SOH="",e.STX="",e.ETX="",e.EOT="",e.ENQ="",e.ACK="",e.BEL="\x07",e.BS="\b",e.HT=" ",e.LF=`
|
|
165
|
-
`,e.VT="\v",e.FF="\f",e.CR="\r",e.SO="",e.SI="",e.DLE="",e.DC1="",e.DC2="",e.DC3="",e.DC4="",e.NAK="",e.SYN="",e.ETB="",e.CAN="",e.EM="",e.SUB="",e.ESC="\x1B",e.FS="",e.GS="",e.RS="",e.US="",e.SP=" ",e.DEL=""))(ue||={});var Sh;(e=>(e.PAD="",e.HOP="",e.BPH="",e.NBH="",e.IND="",e.NEL="
",e.SSA="",e.ESA="",e.HTS="",e.HTJ="",e.VTS="",e.PLD="",e.PLU="",e.RI="",e.SS2="",e.SS3="",e.DCS="",e.PU1="",e.PU2="",e.STS="",e.CCH="",e.MW="",e.SPA="",e.EPA="",e.SOS="",e.SGCI="",e.SCI="",e.CSI="",e.ST="",e.OSC="",e.PM="",e.APC=""))(Sh||={});var Z3;(e=>e.ST=`${ue.ESC}\\`)(Z3||={});var ab=class{constructor(e,t,s,n,o,l){this._textarea=e,this._compositionView=t,this._bufferService=s,this._optionsService=n,this._coreService=o,this._renderService=l,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}get isComposing(){return this._isComposing}compositionstart(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")}compositionupdate(e){this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout(()=>{this._compositionPosition.end=this._textarea.value.length},0)}compositionend(){this._finalizeComposition(!0)}keydown(e){if(this._isComposing||this._isSendingComposition){if(e.keyCode===20||e.keyCode===229||e.keyCode===16||e.keyCode===17||e.keyCode===18)return!1;this._finalizeComposition(!1)}return e.keyCode===229?(this._handleAnyTextareaChanges(),!1):!0}_finalizeComposition(e){if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){let t={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(()=>{if(this._isSendingComposition){this._isSendingComposition=!1;let s;t.start+=this._dataAlreadySent.length,this._isComposing?s=this._textarea.value.substring(t.start,this._compositionPosition.start):s=this._textarea.value.substring(t.start),s.length>0&&this._coreService.triggerDataEvent(s,!0)}},0)}else{this._isSendingComposition=!1;let t=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(t,!0)}}_handleAnyTextareaChanges(){let e=this._textarea.value;setTimeout(()=>{if(!this._isComposing){let t=this._textarea.value,s=t.replace(e,"");this._dataAlreadySent=s,t.length>e.length?this._coreService.triggerDataEvent(s,!0):t.length<e.length?this._coreService.triggerDataEvent(`${ue.DEL}`,!0):t.length===e.length&&t!==e&&this._coreService.triggerDataEvent(t,!0)}},0)}updateCompositionElements(e){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){let t=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),s=this._renderService.dimensions.css.cell.height,n=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,o=t*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=o+"px",this._compositionView.style.top=n+"px",this._compositionView.style.height=s+"px",this._compositionView.style.lineHeight=s+"px",this._compositionView.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._compositionView.style.fontSize=this._optionsService.rawOptions.fontSize+"px";let l=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+"px",this._textarea.style.top=n+"px",this._textarea.style.width=Math.max(l.width,1)+"px",this._textarea.style.height=Math.max(l.height,1)+"px",this._textarea.style.lineHeight=l.height+"px"}e||setTimeout(()=>this.updateCompositionElements(!0),0)}}};ab=Wt([we(2,en),we(3,tn),we(4,no),we(5,_r)],ab);var ws=0,ks=0,Cs=0,Gt=0,g2={css:"#00000000",rgba:0},cs;(e=>{function t(o,l,u,h){return h!==void 0?`#${Ba(o)}${Ba(l)}${Ba(u)}${Ba(h)}`:`#${Ba(o)}${Ba(l)}${Ba(u)}`}e.toCss=t;function s(o,l,u,h=255){return(o<<24|l<<16|u<<8|h)>>>0}e.toRgba=s;function n(o,l,u,h){return{css:e.toCss(o,l,u,h),rgba:e.toRgba(o,l,u,h)}}e.toColor=n})(cs||={});var Ot;(e=>{function t(m,d){if(Gt=(d.rgba&255)/255,Gt===1)return{css:d.css,rgba:d.rgba};let p=d.rgba>>24&255,g=d.rgba>>16&255,x=d.rgba>>8&255,_=m.rgba>>24&255,S=m.rgba>>16&255,w=m.rgba>>8&255;ws=_+Math.round((p-_)*Gt),ks=S+Math.round((g-S)*Gt),Cs=w+Math.round((x-w)*Gt);let C=cs.toCss(ws,ks,Cs),N=cs.toRgba(ws,ks,Cs);return{css:C,rgba:N}}e.blend=t;function s(m){return(m.rgba&255)===255}e.isOpaque=s;function n(m,d,p){let g=wh.ensureContrastRatio(m.rgba,d.rgba,p);if(g)return cs.toColor(g>>24&255,g>>16&255,g>>8&255)}e.ensureContrastRatio=n;function o(m){let d=(m.rgba|255)>>>0;return[ws,ks,Cs]=wh.toChannels(d),{css:cs.toCss(ws,ks,Cs),rgba:d}}e.opaque=o;function l(m,d){return Gt=Math.round(d*255),[ws,ks,Cs]=wh.toChannels(m.rgba),{css:cs.toCss(ws,ks,Cs,Gt),rgba:cs.toRgba(ws,ks,Cs,Gt)}}e.opacity=l;function u(m,d){return Gt=m.rgba&255,l(m,Gt*d/255)}e.multiplyOpacity=u;function h(m){return[m.rgba>>24&255,m.rgba>>16&255,m.rgba>>8&255]}e.toColorRGB=h})(Ot||={});var Ut;(e=>{let t,s;try{let o=document.createElement("canvas");o.width=1,o.height=1;let l=o.getContext("2d",{willReadFrequently:!0});l&&(t=l,t.globalCompositeOperation="copy",s=t.createLinearGradient(0,0,1,1))}catch{}function n(o){if(o.match(/#[\da-f]{3,8}/i))switch(o.length){case 4:return ws=parseInt(o.slice(1,2).repeat(2),16),ks=parseInt(o.slice(2,3).repeat(2),16),Cs=parseInt(o.slice(3,4).repeat(2),16),cs.toColor(ws,ks,Cs);case 5:return ws=parseInt(o.slice(1,2).repeat(2),16),ks=parseInt(o.slice(2,3).repeat(2),16),Cs=parseInt(o.slice(3,4).repeat(2),16),Gt=parseInt(o.slice(4,5).repeat(2),16),cs.toColor(ws,ks,Cs,Gt);case 7:return{css:o,rgba:(parseInt(o.slice(1),16)<<8|255)>>>0};case 9:return{css:o,rgba:parseInt(o.slice(1),16)>>>0}}let l=o.match(/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(,\s*(0|1|\d?\.(\d+))\s*)?\)/);if(l)return ws=parseInt(l[1]),ks=parseInt(l[2]),Cs=parseInt(l[3]),Gt=Math.round((l[5]===void 0?1:parseFloat(l[5]))*255),cs.toColor(ws,ks,Cs,Gt);if(!t||!s)throw new Error("css.toColor: Unsupported css format");if(t.fillStyle=s,t.fillStyle=o,typeof t.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(t.fillRect(0,0,1,1),[ws,ks,Cs,Gt]=t.getImageData(0,0,1,1).data,Gt!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:cs.toRgba(ws,ks,Cs,Gt),css:o}}e.toColor=n})(Ut||={});var Xs;(e=>{function t(n){return s(n>>16&255,n>>8&255,n&255)}e.relativeLuminance=t;function s(n,o,l){let u=n/255,h=o/255,m=l/255,d=u<=.03928?u/12.92:Math.pow((u+.055)/1.055,2.4),p=h<=.03928?h/12.92:Math.pow((h+.055)/1.055,2.4),g=m<=.03928?m/12.92:Math.pow((m+.055)/1.055,2.4);return d*.2126+p*.7152+g*.0722}e.relativeLuminance2=s})(Xs||={});var wh;(e=>{function t(u,h){if(Gt=(h&255)/255,Gt===1)return h;let m=h>>24&255,d=h>>16&255,p=h>>8&255,g=u>>24&255,x=u>>16&255,_=u>>8&255;return ws=g+Math.round((m-g)*Gt),ks=x+Math.round((d-x)*Gt),Cs=_+Math.round((p-_)*Gt),cs.toRgba(ws,ks,Cs)}e.blend=t;function s(u,h,m){let d=Xs.relativeLuminance(u>>8),p=Xs.relativeLuminance(h>>8);if(fr(d,p)<m){if(p<d){let _=n(u,h,m),S=fr(d,Xs.relativeLuminance(_>>8));if(S<m){let w=o(u,h,m),C=fr(d,Xs.relativeLuminance(w>>8));return S>C?_:w}return _}let g=o(u,h,m),x=fr(d,Xs.relativeLuminance(g>>8));if(x<m){let _=n(u,h,m),S=fr(d,Xs.relativeLuminance(_>>8));return x>S?g:_}return g}}e.ensureContrastRatio=s;function n(u,h,m){let d=u>>24&255,p=u>>16&255,g=u>>8&255,x=h>>24&255,_=h>>16&255,S=h>>8&255,w=fr(Xs.relativeLuminance2(x,_,S),Xs.relativeLuminance2(d,p,g));for(;w<m&&(x>0||_>0||S>0);)x-=Math.max(0,Math.ceil(x*.1)),_-=Math.max(0,Math.ceil(_*.1)),S-=Math.max(0,Math.ceil(S*.1)),w=fr(Xs.relativeLuminance2(x,_,S),Xs.relativeLuminance2(d,p,g));return(x<<24|_<<16|S<<8|255)>>>0}e.reduceLuminance=n;function o(u,h,m){let d=u>>24&255,p=u>>16&255,g=u>>8&255,x=h>>24&255,_=h>>16&255,S=h>>8&255,w=fr(Xs.relativeLuminance2(x,_,S),Xs.relativeLuminance2(d,p,g));for(;w<m&&(x<255||_<255||S<255);)x=Math.min(255,x+Math.ceil((255-x)*.1)),_=Math.min(255,_+Math.ceil((255-_)*.1)),S=Math.min(255,S+Math.ceil((255-S)*.1)),w=fr(Xs.relativeLuminance2(x,_,S),Xs.relativeLuminance2(d,p,g));return(x<<24|_<<16|S<<8|255)>>>0}e.increaseLuminance=o;function l(u){return[u>>24&255,u>>16&255,u>>8&255,u&255]}e.toChannels=l})(wh||={});function Ba(e){let t=e.toString(16);return t.length<2?"0"+t:t}function fr(e,t){return e<t?(t+.05)/(e+.05):(e+.05)/(t+.05)}var HU=class extends yu{constructor(e,t,s){super(),this.content=0,this.combinedData="",this.fg=e.fg,this.bg=e.bg,this.combinedData=t,this._width=s}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(e){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},Xh=class{constructor(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new Kn}register(e){let t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id}deregister(e){for(let t=0;t<this._characterJoiners.length;t++)if(this._characterJoiners[t].id===e)return this._characterJoiners.splice(t,1),!0;return!1}getJoinedCharacters(e){if(this._characterJoiners.length===0)return[];let t=this._bufferService.buffer.lines.get(e);if(!t||t.length===0)return[];let s=[],n=t.translateToString(!0),o=0,l=0,u=0,h=t.getFg(0),m=t.getBg(0);for(let d=0;d<t.getTrimmedLength();d++)if(t.loadCell(d,this._workCell),this._workCell.getWidth()!==0){if(this._workCell.fg!==h||this._workCell.bg!==m){if(d-o>1){let p=this._getJoinedRanges(n,u,l,t,o);for(let g=0;g<p.length;g++)s.push(p[g])}o=d,u=l,h=this._workCell.fg,m=this._workCell.bg}l+=this._workCell.getChars().length||ra.length}if(this._bufferService.cols-o>1){let d=this._getJoinedRanges(n,u,l,t,o);for(let p=0;p<d.length;p++)s.push(d[p])}return s}_getJoinedRanges(e,t,s,n,o){let l=e.substring(t,s),u=[];try{u=this._characterJoiners[0].handler(l)}catch(h){console.error(h)}for(let h=1;h<this._characterJoiners.length;h++)try{let m=this._characterJoiners[h].handler(l);for(let d=0;d<m.length;d++)Xh._mergeRanges(u,m[d])}catch(m){console.error(m)}return this._stringRangesToCellRanges(u,n,o),u}_stringRangesToCellRanges(e,t,s){let n=0,o=!1,l=0,u=e[n];if(u){for(let h=s;h<this._bufferService.cols;h++){let m=t.getWidth(h),d=t.getString(h).length||ra.length;if(m!==0){if(!o&&u[0]<=l&&(u[0]=h,o=!0),u[1]<=l){if(u[1]=h,u=e[++n],!u)break;u[0]<=l?(u[0]=h,o=!0):o=!1}l+=d}}u&&(u[1]=this._bufferService.cols)}}static _mergeRanges(e,t){let s=!1;for(let n=0;n<e.length;n++){let o=e[n];if(s){if(t[1]<=o[0])return e[n-1][1]=t[1],e;if(t[1]<=o[1])return e[n-1][1]=Math.max(t[1],o[1]),e.splice(n,1),e;e.splice(n,1),n--}else{if(t[1]<=o[0])return e.splice(n,0,t),e;if(t[1]<=o[1])return o[0]=Math.min(t[0],o[0]),e;t[0]<o[1]&&(o[0]=Math.min(t[0],o[0]),s=!0);continue}}return s?e[e.length-1][1]=t[1]:e.push(t),e}};Xh=Wt([we(0,en)],Xh);function UU(e){return 57508<=e&&e<=57558}function FU(e){return 9472<=e&&e<=9631}function qU(e){return UU(e)||FU(e)}function VU(){return{css:{canvas:ih(),cell:ih()},device:{canvas:ih(),cell:ih(),char:{width:0,height:0,left:0,top:0}}}}function ih(){return{width:0,height:0}}var ob=class{constructor(e,t,s,n,o,l,u){this._document=e,this._characterJoinerService=t,this._optionsService=s,this._coreBrowserService=n,this._coreService=o,this._decorationService=l,this._themeService=u,this._workCell=new Kn,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(e,t,s){this._selectionStart=e,this._selectionEnd=t,this._columnSelectMode=s}createRow(e,t,s,n,o,l,u,h,m,d,p){let g=[],x=this._characterJoinerService.getJoinedCharacters(t),_=this._themeService.colors,S=e.getNoBgTrimmedLength();s&&S<l+1&&(S=l+1);let w,C=0,N="",j=0,E=0,A=0,O=0,P=!1,D=0,T=!1,z=0,L=0,I=[],$=d!==-1&&p!==-1;for(let U=0;U<S;U++){e.loadCell(U,this._workCell);let W=this._workCell.getWidth();if(W===0)continue;let G=!1,B=U>=L,V=U,X=this._workCell;if(x.length>0&&U===x[0][0]&&B){let Me=x.shift(),Pt=this._isCellInSelection(Me[0],t);for(j=Me[0]+1;j<Me[1];j++)B&&=Pt===this._isCellInSelection(j,t);B&&=!s||l<Me[0]||l>=Me[1],B?(G=!0,X=new HU(this._workCell,e.translateToString(!0,Me[0],Me[1]),Me[1]-Me[0]),V=Me[1]-1,W=X.getWidth()):L=Me[1]}let K=this._isCellInSelection(U,t),te=s&&U===l,R=$&&U>=d&&U<=p,Z=!1;this._decorationService.forEachDecorationAtCell(U,t,void 0,Me=>{Z=!0});let ie=X.getChars()||ra;if(ie===" "&&(X.isUnderline()||X.isOverline())&&(ie=" "),z=W*h-m.get(ie,X.isBold(),X.isItalic()),!w)w=this._document.createElement("span");else if(C&&(K&&T||!K&&!T&&X.bg===E)&&(K&&T&&_.selectionForeground||X.fg===A)&&X.extended.ext===O&&R===P&&z===D&&!te&&!G&&!Z&&B){X.isInvisible()?N+=ra:N+=ie,C++;continue}else C&&(w.textContent=N),w=this._document.createElement("span"),C=0,N="";if(E=X.bg,A=X.fg,O=X.extended.ext,P=R,D=z,T=K,G&&l>=U&&l<=V&&(l=U),!this._coreService.isCursorHidden&&te&&this._coreService.isCursorInitialized){if(I.push("xterm-cursor"),this._coreBrowserService.isFocused)u&&I.push("xterm-cursor-blink"),I.push(n==="bar"?"xterm-cursor-bar":n==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(o)switch(o){case"outline":I.push("xterm-cursor-outline");break;case"block":I.push("xterm-cursor-block");break;case"bar":I.push("xterm-cursor-bar");break;case"underline":I.push("xterm-cursor-underline");break}}if(X.isBold()&&I.push("xterm-bold"),X.isItalic()&&I.push("xterm-italic"),X.isDim()&&I.push("xterm-dim"),X.isInvisible()?N=ra:N=X.getChars()||ra,X.isUnderline()&&(I.push(`xterm-underline-${X.extended.underlineStyle}`),N===" "&&(N=" "),!X.isUnderlineColorDefault()))if(X.isUnderlineColorRGB())w.style.textDecorationColor=`rgb(${yu.toColorRGB(X.getUnderlineColor()).join(",")})`;else{let Me=X.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&X.isBold()&&Me<8&&(Me+=8),w.style.textDecorationColor=_.ansi[Me].css}X.isOverline()&&(I.push("xterm-overline"),N===" "&&(N=" ")),X.isStrikethrough()&&I.push("xterm-strikethrough"),R&&(w.style.textDecoration="underline");let de=X.getFgColor(),fe=X.getFgColorMode(),pe=X.getBgColor(),Se=X.getBgColorMode(),Le=!!X.isInverse();if(Le){let Me=de;de=pe,pe=Me;let Pt=fe;fe=Se,Se=Pt}let ve,We,ge=!1;this._decorationService.forEachDecorationAtCell(U,t,void 0,Me=>{Me.options.layer!=="top"&&ge||(Me.backgroundColorRGB&&(Se=50331648,pe=Me.backgroundColorRGB.rgba>>8&16777215,ve=Me.backgroundColorRGB),Me.foregroundColorRGB&&(fe=50331648,de=Me.foregroundColorRGB.rgba>>8&16777215,We=Me.foregroundColorRGB),ge=Me.options.layer==="top")}),!ge&&K&&(ve=this._coreBrowserService.isFocused?_.selectionBackgroundOpaque:_.selectionInactiveBackgroundOpaque,pe=ve.rgba>>8&16777215,Se=50331648,ge=!0,_.selectionForeground&&(fe=50331648,de=_.selectionForeground.rgba>>8&16777215,We=_.selectionForeground)),ge&&I.push("xterm-decoration-top");let Te;switch(Se){case 16777216:case 33554432:Te=_.ansi[pe],I.push(`xterm-bg-${pe}`);break;case 50331648:Te=cs.toColor(pe>>16,pe>>8&255,pe&255),this._addStyle(w,`background-color:#${b2((pe>>>0).toString(16),"0",6)}`);break;default:Le?(Te=_.foreground,I.push("xterm-bg-257")):Te=_.background}switch(ve||X.isDim()&&(ve=Ot.multiplyOpacity(Te,.5)),fe){case 16777216:case 33554432:X.isBold()&&de<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(de+=8),this._applyMinimumContrast(w,Te,_.ansi[de],X,ve,void 0)||I.push(`xterm-fg-${de}`);break;case 50331648:let Me=cs.toColor(de>>16&255,de>>8&255,de&255);this._applyMinimumContrast(w,Te,Me,X,ve,We)||this._addStyle(w,`color:#${b2(de.toString(16),"0",6)}`);break;default:this._applyMinimumContrast(w,Te,_.foreground,X,ve,We)||Le&&I.push("xterm-fg-257")}I.length&&(w.className=I.join(" "),I.length=0),!te&&!G&&!Z&&B?C++:w.textContent=N,z!==this.defaultSpacing&&(w.style.letterSpacing=`${z}px`),g.push(w),U=V}return w&&C&&(w.textContent=N),g}_applyMinimumContrast(e,t,s,n,o,l){if(this._optionsService.rawOptions.minimumContrastRatio===1||qU(n.getCode()))return!1;let u=this._getContrastCache(n),h;if(!o&&!l&&(h=u.getColor(t.rgba,s.rgba)),h===void 0){let m=this._optionsService.rawOptions.minimumContrastRatio/(n.isDim()?2:1);h=Ot.ensureContrastRatio(o||t,l||s,m),u.setColor((o||t).rgba,(l||s).rgba,h??null)}return h?(this._addStyle(e,`color:${h.css}`),!0):!1}_getContrastCache(e){return e.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(e,t){e.setAttribute("style",`${e.getAttribute("style")||""}${t};`)}_isCellInSelection(e,t){let s=this._selectionStart,n=this._selectionEnd;return!s||!n?!1:this._columnSelectMode?s[0]<=n[0]?e>=s[0]&&t>=s[1]&&e<n[0]&&t<=n[1]:e<s[0]&&t>=s[1]&&e>=n[0]&&t<=n[1]:t>s[1]&&t<n[1]||s[1]===n[1]&&t===s[1]&&e>=s[0]&&e<n[0]||s[1]<n[1]&&t===n[1]&&e<n[0]||s[1]<n[1]&&t===s[1]&&e>=s[0]}};ob=Wt([we(1,D3),we(2,tn),we(3,vr),we(4,no),we(5,Su),we(6,xl)],ob);function b2(e,t,s){for(;e.length<s;)e=t+e;return e}var GU=class{constructor(e,t){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=e.createElement("div"),this._container.classList.add("xterm-width-cache-measure-container"),this._container.setAttribute("aria-hidden","true"),this._container.style.whiteSpace="pre",this._container.style.fontKerning="none";let s=e.createElement("span");s.classList.add("xterm-char-measure-element");let n=e.createElement("span");n.classList.add("xterm-char-measure-element"),n.style.fontWeight="bold";let o=e.createElement("span");o.classList.add("xterm-char-measure-element"),o.style.fontStyle="italic";let l=e.createElement("span");l.classList.add("xterm-char-measure-element"),l.style.fontWeight="bold",l.style.fontStyle="italic",this._measureElements=[s,n,o,l],this._container.appendChild(s),this._container.appendChild(n),this._container.appendChild(o),this._container.appendChild(l),t.appendChild(this._container),this.clear()}dispose(){this._container.remove(),this._measureElements.length=0,this._holey=void 0}clear(){this._flat.fill(-9999),this._holey=new Map}setFont(e,t,s,n){e===this._font&&t===this._fontSize&&s===this._weight&&n===this._weightBold||(this._font=e,this._fontSize=t,this._weight=s,this._weightBold=n,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${s}`,this._measureElements[1].style.fontWeight=`${n}`,this._measureElements[2].style.fontWeight=`${s}`,this._measureElements[3].style.fontWeight=`${n}`,this.clear())}get(e,t,s){let n=0;if(!t&&!s&&e.length===1&&(n=e.charCodeAt(0))<256){if(this._flat[n]!==-9999)return this._flat[n];let u=this._measure(e,0);return u>0&&(this._flat[n]=u),u}let o=e;t&&(o+="B"),s&&(o+="I");let l=this._holey.get(o);if(l===void 0){let u=0;t&&(u|=1),s&&(u|=2),l=this._measure(e,u),l>0&&this._holey.set(o,l)}return l}_measure(e,t){let s=this._measureElements[t];return s.textContent=e.repeat(32),s.offsetWidth/32}},WU=class{constructor(){this.clear()}clear(){this.hasSelection=!1,this.columnSelectMode=!1,this.viewportStartRow=0,this.viewportEndRow=0,this.viewportCappedStartRow=0,this.viewportCappedEndRow=0,this.startCol=0,this.endCol=0,this.selectionStart=void 0,this.selectionEnd=void 0}update(e,t,s,n=!1){if(this.selectionStart=t,this.selectionEnd=s,!t||!s||t[0]===s[0]&&t[1]===s[1]){this.clear();return}let o=e.buffers.active.ydisp,l=t[1]-o,u=s[1]-o,h=Math.max(l,0),m=Math.min(u,e.rows-1);if(h>=e.rows||m<0){this.clear();return}this.hasSelection=!0,this.columnSelectMode=n,this.viewportStartRow=l,this.viewportEndRow=u,this.viewportCappedStartRow=h,this.viewportCappedEndRow=m,this.startCol=t[0],this.endCol=s[0]}isCellSelected(e,t,s){return this.hasSelection?(s-=e.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?t>=this.startCol&&s>=this.viewportCappedStartRow&&t<this.endCol&&s<=this.viewportCappedEndRow:t<this.startCol&&s>=this.viewportCappedStartRow&&t>=this.endCol&&s<=this.viewportCappedEndRow:s>this.viewportStartRow&&s<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&s===this.viewportStartRow&&t>=this.startCol&&t<this.endCol||this.viewportStartRow<this.viewportEndRow&&s===this.viewportEndRow&&t<this.endCol||this.viewportStartRow<this.viewportEndRow&&s===this.viewportStartRow&&t>=this.startCol):!1}};function KU(){return new WU}var ug="xterm-dom-renderer-owner-",Hn="xterm-rows",rh="xterm-fg-",x2="xterm-bg-",yc="xterm-focus",ah="xterm-selection",YU=1,lb=class extends Je{constructor(e,t,s,n,o,l,u,h,m,d,p,g,x,_){super(),this._terminal=e,this._document=t,this._element=s,this._screenElement=n,this._viewportElement=o,this._helperContainer=l,this._linkifier2=u,this._charSizeService=m,this._optionsService=d,this._bufferService=p,this._coreService=g,this._coreBrowserService=x,this._themeService=_,this._terminalClass=YU++,this._rowElements=[],this._selectionRenderModel=KU(),this.onRequestRedraw=this._register(new be).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(Hn),this._rowContainer.style.lineHeight="normal",this._rowContainer.setAttribute("aria-hidden","true"),this._refreshRowElements(this._bufferService.cols,this._bufferService.rows),this._selectionContainer=this._document.createElement("div"),this._selectionContainer.classList.add(ah),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=VU(),this._updateDimensions(),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._themeService.onChangeColors(S=>this._injectCss(S))),this._injectCss(this._themeService.colors),this._rowFactory=h.createInstance(ob,document),this._element.classList.add(ug+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this._register(this._linkifier2.onShowLinkUnderline(S=>this._handleLinkHover(S))),this._register(this._linkifier2.onHideLinkUnderline(S=>this._handleLinkLeave(S))),this._register(It(()=>{this._element.classList.remove(ug+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new GU(this._document,this._helperContainer),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}_updateDimensions(){let e=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*e,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*e),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.left=0,this.dimensions.device.char.top=0,this.dimensions.device.canvas.width=this.dimensions.device.cell.width*this._bufferService.cols,this.dimensions.device.canvas.height=this.dimensions.device.cell.height*this._bufferService.rows,this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/e),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/e),this.dimensions.css.cell.width=this.dimensions.css.canvas.width/this._bufferService.cols,this.dimensions.css.cell.height=this.dimensions.css.canvas.height/this._bufferService.rows;for(let s of this._rowElements)s.style.width=`${this.dimensions.css.canvas.width}px`,s.style.height=`${this.dimensions.css.cell.height}px`,s.style.lineHeight=`${this.dimensions.css.cell.height}px`,s.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));let t=`${this._terminalSelector} .${Hn} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=t,this._selectionContainer.style.height=this._viewportElement.style.height,this._screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._screenElement.style.height=`${this.dimensions.css.canvas.height}px`}_injectCss(e){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let t=`${this._terminalSelector} .${Hn} { pointer-events: none; color: ${e.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;t+=`${this._terminalSelector} .${Hn} .xterm-dim { color: ${Ot.multiplyOpacity(e.foreground,.5).css};}`,t+=`${this._terminalSelector} span:not(.xterm-bold) { font-weight: ${this._optionsService.rawOptions.fontWeight};}${this._terminalSelector} span.xterm-bold { font-weight: ${this._optionsService.rawOptions.fontWeightBold};}${this._terminalSelector} span.xterm-italic { font-style: italic;}`;let s=`blink_underline_${this._terminalClass}`,n=`blink_bar_${this._terminalClass}`,o=`blink_block_${this._terminalClass}`;t+=`@keyframes ${s} { 50% { border-bottom-style: hidden; }}`,t+=`@keyframes ${n} { 50% { box-shadow: none; }}`,t+=`@keyframes ${o} { 0% { background-color: ${e.cursor.css}; color: ${e.cursorAccent.css}; } 50% { background-color: inherit; color: ${e.cursor.css}; }}`,t+=`${this._terminalSelector} .${Hn}.${yc} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${s} 1s step-end infinite;}${this._terminalSelector} .${Hn}.${yc} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${n} 1s step-end infinite;}${this._terminalSelector} .${Hn}.${yc} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${o} 1s step-end infinite;}${this._terminalSelector} .${Hn} .xterm-cursor.xterm-cursor-block { background-color: ${e.cursor.css}; color: ${e.cursorAccent.css};}${this._terminalSelector} .${Hn} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${e.cursor.css} !important; color: ${e.cursorAccent.css} !important;}${this._terminalSelector} .${Hn} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${e.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${Hn} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${e.cursor.css} inset;}${this._terminalSelector} .${Hn} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${e.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,t+=`${this._terminalSelector} .${ah} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${ah} div { position: absolute; background-color: ${e.selectionBackgroundOpaque.css};}${this._terminalSelector} .${ah} div { position: absolute; background-color: ${e.selectionInactiveBackgroundOpaque.css};}`;for(let[l,u]of e.ansi.entries())t+=`${this._terminalSelector} .${rh}${l} { color: ${u.css}; }${this._terminalSelector} .${rh}${l}.xterm-dim { color: ${Ot.multiplyOpacity(u,.5).css}; }${this._terminalSelector} .${x2}${l} { background-color: ${u.css}; }`;t+=`${this._terminalSelector} .${rh}257 { color: ${Ot.opaque(e.background).css}; }${this._terminalSelector} .${rh}257.xterm-dim { color: ${Ot.multiplyOpacity(Ot.opaque(e.background),.5).css}; }${this._terminalSelector} .${x2}257 { background-color: ${e.foreground.css}; }`,this._themeStyleElement.textContent=t}_setDefaultSpacing(){let e=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${e}px`,this._rowFactory.defaultSpacing=e}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(e,t){for(let s=this._rowElements.length;s<=t;s++){let n=this._document.createElement("div");this._rowContainer.appendChild(n),this._rowElements.push(n)}for(;this._rowElements.length>t;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(e,t){this._refreshRowElements(e,t),this._updateDimensions(),this.handleSelectionChanged(this._selectionRenderModel.selectionStart,this._selectionRenderModel.selectionEnd,this._selectionRenderModel.columnSelectMode)}handleCharSizeChanged(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}handleBlur(){this._rowContainer.classList.remove(yc),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(yc),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(e,t,s){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(e,t,s),this.renderRows(0,this._bufferService.rows-1),!e||!t||(this._selectionRenderModel.update(this._terminal,e,t,s),!this._selectionRenderModel.hasSelection))return;let n=this._selectionRenderModel.viewportStartRow,o=this._selectionRenderModel.viewportEndRow,l=this._selectionRenderModel.viewportCappedStartRow,u=this._selectionRenderModel.viewportCappedEndRow,h=this._document.createDocumentFragment();if(s){let m=e[0]>t[0];h.appendChild(this._createSelectionElement(l,m?t[0]:e[0],m?e[0]:t[0],u-l+1))}else{let m=n===l?e[0]:0,d=l===o?t[0]:this._bufferService.cols;h.appendChild(this._createSelectionElement(l,m,d));let p=u-l-1;if(h.appendChild(this._createSelectionElement(l+1,0,this._bufferService.cols,p)),l!==u){let g=o===u?t[0]:this._bufferService.cols;h.appendChild(this._createSelectionElement(u,0,g))}}this._selectionContainer.appendChild(h)}_createSelectionElement(e,t,s,n=1){let o=this._document.createElement("div"),l=t*this.dimensions.css.cell.width,u=this.dimensions.css.cell.width*(s-t);return l+u>this.dimensions.css.canvas.width&&(u=this.dimensions.css.canvas.width-l),o.style.height=`${n*this.dimensions.css.cell.height}px`,o.style.top=`${e*this.dimensions.css.cell.height}px`,o.style.left=`${l}px`,o.style.width=`${u}px`,o}handleCursorMove(){}_handleOptionsChanged(){this._updateDimensions(),this._injectCss(this._themeService.colors),this._widthCache.setFont(this._optionsService.rawOptions.fontFamily,this._optionsService.rawOptions.fontSize,this._optionsService.rawOptions.fontWeight,this._optionsService.rawOptions.fontWeightBold),this._setDefaultSpacing()}clear(){for(let e of this._rowElements)e.replaceChildren()}renderRows(e,t){let s=this._bufferService.buffer,n=s.ybase+s.y,o=Math.min(s.x,this._bufferService.cols-1),l=this._coreService.decPrivateModes.cursorBlink??this._optionsService.rawOptions.cursorBlink,u=this._coreService.decPrivateModes.cursorStyle??this._optionsService.rawOptions.cursorStyle,h=this._optionsService.rawOptions.cursorInactiveStyle;for(let m=e;m<=t;m++){let d=m+s.ydisp,p=this._rowElements[m],g=s.lines.get(d);if(!p||!g)break;p.replaceChildren(...this._rowFactory.createRow(g,d,d===n,u,h,o,l,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${ug}${this._terminalClass}`}_handleLinkHover(e){this._setCellUnderline(e.x1,e.x2,e.y1,e.y2,e.cols,!0)}_handleLinkLeave(e){this._setCellUnderline(e.x1,e.x2,e.y1,e.y2,e.cols,!1)}_setCellUnderline(e,t,s,n,o,l){s<0&&(e=0),n<0&&(t=0);let u=this._bufferService.rows-1;s=Math.max(Math.min(s,u),0),n=Math.max(Math.min(n,u),0),o=Math.min(o,this._bufferService.cols);let h=this._bufferService.buffer,m=h.ybase+h.y,d=Math.min(h.x,o-1),p=this._optionsService.rawOptions.cursorBlink,g=this._optionsService.rawOptions.cursorStyle,x=this._optionsService.rawOptions.cursorInactiveStyle;for(let _=s;_<=n;++_){let S=_+h.ydisp,w=this._rowElements[_],C=h.lines.get(S);if(!w||!C)break;w.replaceChildren(...this._rowFactory.createRow(C,S,S===m,g,x,d,p,this.dimensions.css.cell.width,this._widthCache,l?_===s?e:0:-1,l?(_===n?t:o)-1:-1))}}};lb=Wt([we(7,Mx),we(8,yf),we(9,tn),we(10,en),we(11,no),we(12,vr),we(13,xl)],lb);var cb=class extends Je{constructor(e,t,s){super(),this._optionsService=s,this.width=0,this.height=0,this._onCharSizeChange=this._register(new be),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this._register(new ZU(this._optionsService))}catch{this._measureStrategy=this._register(new XU(e,t,this._optionsService))}this._register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],()=>this.measure()))}get hasValidSize(){return this.width>0&&this.height>0}measure(){let e=this._measureStrategy.measure();(e.width!==this.width||e.height!==this.height)&&(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())}};cb=Wt([we(2,tn)],cb);var Q3=class extends Je{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(e,t){e!==void 0&&e>0&&t!==void 0&&t>0&&(this._result.width=e,this._result.height=t)}},XU=class extends Q3{constructor(e,t,s){super(),this._document=e,this._parentElement=t,this._optionsService=s,this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W".repeat(32),this._measureElement.setAttribute("aria-hidden","true"),this._measureElement.style.whiteSpace="pre",this._measureElement.style.fontKerning="none",this._parentElement.appendChild(this._measureElement)}measure(){return this._measureElement.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._measureElement.style.fontSize=`${this._optionsService.rawOptions.fontSize}px`,this._validateAndSet(Number(this._measureElement.offsetWidth)/32,Number(this._measureElement.offsetHeight)),this._result}},ZU=class extends Q3{constructor(e){super(),this._optionsService=e,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");let t=this._ctx.measureText("W");if(!("width"in t&&"fontBoundingBoxAscent"in t&&"fontBoundingBoxDescent"in t))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;let e=this._ctx.measureText("W");return this._validateAndSet(e.width,e.fontBoundingBoxAscent+e.fontBoundingBoxDescent),this._result}},QU=class extends Je{constructor(e,t,s){super(),this._textarea=e,this._window=t,this.mainDocument=s,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=this._register(new JU(this._window)),this._onDprChange=this._register(new be),this.onDprChange=this._onDprChange.event,this._onWindowChange=this._register(new be),this.onWindowChange=this._onWindowChange.event,this._register(this.onWindowChange(n=>this._screenDprMonitor.setWindow(n))),this._register(Bs.forward(this._screenDprMonitor.onDprChange,this._onDprChange)),this._register(qe(this._textarea,"focus",()=>this._isFocused=!0)),this._register(qe(this._textarea,"blur",()=>this._isFocused=!1))}get window(){return this._window}set window(e){this._window!==e&&(this._window=e,this._onWindowChange.fire(this._window))}get dpr(){return this.window.devicePixelRatio}get isFocused(){return this._cachedIsFocused===void 0&&(this._cachedIsFocused=this._isFocused&&this._textarea.ownerDocument.hasFocus(),queueMicrotask(()=>this._cachedIsFocused=void 0)),this._cachedIsFocused}},JU=class extends Je{constructor(e){super(),this._parentWindow=e,this._windowResizeListener=this._register(new ul),this._onDprChange=this._register(new be),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this._register(It(()=>this.clearListener()))}setWindow(e){this._parentWindow=e,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=qe(this._parentWindow,"resize",()=>this._setDprAndFireIfDiffers())}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){this._outerListener&&(this._resolutionMediaMatchList?.removeListener(this._outerListener),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._resolutionMediaMatchList=this._parentWindow.matchMedia(`screen and (resolution: ${this._parentWindow.devicePixelRatio}dppx)`),this._resolutionMediaMatchList.addListener(this._outerListener))}clearListener(){!this._resolutionMediaMatchList||!this._outerListener||(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._outerListener=void 0)}},eF=class extends Je{constructor(){super(),this.linkProviders=[],this._register(It(()=>this.linkProviders.length=0))}registerLinkProvider(e){return this.linkProviders.push(e),{dispose:()=>{let t=this.linkProviders.indexOf(e);t!==-1&&this.linkProviders.splice(t,1)}}}};function Px(e,t,s){let n=s.getBoundingClientRect(),o=e.getComputedStyle(s),l=parseInt(o.getPropertyValue("padding-left")),u=parseInt(o.getPropertyValue("padding-top"));return[t.clientX-n.left-l,t.clientY-n.top-u]}function tF(e,t,s,n,o,l,u,h,m){if(!l)return;let d=Px(e,t,s);if(d)return d[0]=Math.ceil((d[0]+(m?u/2:0))/u),d[1]=Math.ceil(d[1]/h),d[0]=Math.min(Math.max(d[0],1),n+(m?1:0)),d[1]=Math.min(Math.max(d[1],1),o),d}var ub=class{constructor(e,t){this._renderService=e,this._charSizeService=t}getCoords(e,t,s,n,o){return tF(window,e,t,s,n,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,o)}getMouseReportCoords(e,t){let s=Px(window,e,t);if(this._charSizeService.hasValidSize)return s[0]=Math.min(Math.max(s[0],0),this._renderService.dimensions.css.canvas.width-1),s[1]=Math.min(Math.max(s[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(s[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(s[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(s[0]),y:Math.floor(s[1])}}};ub=Wt([we(0,_r),we(1,yf)],ub);var sF=class{constructor(e,t){this._renderCallback=e,this._coreBrowserService=t,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(e){return this._refreshCallbacks.push(e),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh())),this._animationFrame}refresh(e,t,s){this._rowCount=s,e=e!==void 0?e:0,t=t!==void 0?t:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,e):e,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,t):t,!this._animationFrame&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh()))}_innerRefresh(){if(this._animationFrame=void 0,this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0){this._runRefreshCallbacks();return}let e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(e,t),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(let e of this._refreshCallbacks)e(0);this._refreshCallbacks=[]}},J3={};hH(J3,{getSafariVersion:()=>iF,isChromeOS:()=>n5,isFirefox:()=>e5,isIpad:()=>rF,isIphone:()=>aF,isLegacyEdge:()=>nF,isLinux:()=>$x,isMac:()=>Zh,isNode:()=>Sf,isSafari:()=>t5,isWindows:()=>s5});var Sf=typeof process<"u"&&"title"in process,wu=Sf?"node":navigator.userAgent,ku=Sf?"node":navigator.platform,e5=wu.includes("Firefox"),nF=wu.includes("Edge"),t5=/^((?!chrome|android).)*safari/i.test(wu);function iF(){if(!t5)return 0;let e=wu.match(/Version\/(\d+)/);return e===null||e.length<2?0:parseInt(e[1])}var Zh=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(ku),rF=ku==="iPad",aF=ku==="iPhone",s5=["Windows","Win16","Win32","WinCE"].includes(ku),$x=ku.indexOf("Linux")>=0,n5=/\bCrOS\b/.test(wu),i5=class{constructor(){this._tasks=[],this._i=0}enqueue(e){this._tasks.push(e),this._start()}flush(){for(;this._i<this._tasks.length;)this._tasks[this._i]()||this._i++;this.clear()}clear(){this._idleCallback&&(this._cancelCallback(this._idleCallback),this._idleCallback=void 0),this._i=0,this._tasks.length=0}_start(){this._idleCallback||(this._idleCallback=this._requestCallback(this._process.bind(this)))}_process(e){this._idleCallback=void 0;let t=0,s=0,n=e.timeRemaining(),o=0;for(;this._i<this._tasks.length;){if(t=performance.now(),this._tasks[this._i]()||this._i++,t=Math.max(1,performance.now()-t),s=Math.max(t,s),o=e.timeRemaining(),s*1.5>o){n-t<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(n-t))}ms`),this._start();return}n=o}this.clear()}},oF=class extends i5{_requestCallback(e){return setTimeout(()=>e(this._createDeadline(16)))}_cancelCallback(e){clearTimeout(e)}_createDeadline(e){let t=performance.now()+e;return{timeRemaining:()=>Math.max(0,t-performance.now())}}},lF=class extends i5{_requestCallback(e){return requestIdleCallback(e)}_cancelCallback(e){cancelIdleCallback(e)}},Qh=!Sf&&"requestIdleCallback"in window?lF:oF,cF=class{constructor(){this._queue=new Qh}set(e){this._queue.clear(),this._queue.enqueue(e)}flush(){this._queue.flush()}},db=class extends Je{constructor(e,t,s,n,o,l,u,h,m){super(),this._rowCount=e,this._optionsService=s,this._charSizeService=n,this._coreService=o,this._coreBrowserService=h,this._renderer=this._register(new ul),this._pausedResizeTask=new cF,this._observerDisposable=this._register(new ul),this._isPaused=!1,this._needsFullRefresh=!1,this._isNextRenderRedrawOnly=!0,this._needsSelectionRefresh=!1,this._canvasWidth=0,this._canvasHeight=0,this._selectionState={start:void 0,end:void 0,columnSelectMode:!1},this._onDimensionsChange=this._register(new be),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this._register(new be),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this._register(new be),this.onRender=this._onRender.event,this._onRefreshRequest=this._register(new be),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new sF((d,p)=>this._renderRows(d,p),this._coreBrowserService),this._register(this._renderDebouncer),this._syncOutputHandler=new uF(this._coreBrowserService,this._coreService,()=>this._fullRefresh()),this._register(It(()=>this._syncOutputHandler.dispose())),this._register(this._coreBrowserService.onDprChange(()=>this.handleDevicePixelRatioChange())),this._register(u.onResize(()=>this._fullRefresh())),this._register(u.buffers.onBufferActivate(()=>this._renderer.value?.clear())),this._register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this._register(this._charSizeService.onCharSizeChange(()=>this.handleCharSizeChanged())),this._register(l.onDecorationRegistered(()=>this._fullRefresh())),this._register(l.onDecorationRemoved(()=>this._fullRefresh())),this._register(this._optionsService.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],()=>{this.clear(),this.handleResize(u.cols,u.rows),this._fullRefresh()})),this._register(this._optionsService.onMultipleOptionChange(["cursorBlink","cursorStyle"],()=>this.refreshRows(u.buffer.y,u.buffer.y,!0))),this._register(m.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(this._coreBrowserService.window,t),this._register(this._coreBrowserService.onWindowChange(d=>this._registerIntersectionObserver(d,t)))}get dimensions(){return this._renderer.value.dimensions}_registerIntersectionObserver(e,t){if("IntersectionObserver"in e){let s=new e.IntersectionObserver(n=>this._handleIntersectionChange(n[n.length-1]),{threshold:0});s.observe(t),this._observerDisposable.value=It(()=>s.disconnect())}}_handleIntersectionChange(e){this._isPaused=e.isIntersecting===void 0?e.intersectionRatio===0:!e.isIntersecting,!this._isPaused&&!this._charSizeService.hasValidSize&&this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this._pausedResizeTask.flush(),this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)}refreshRows(e,t,s=!1){if(this._isPaused){this._needsFullRefresh=!0;return}if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(e,t);return}let n=this._syncOutputHandler.flush();n&&(e=Math.min(e,n.start),t=Math.max(t,n.end)),s||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount)}_renderRows(e,t){if(this._renderer.value){if(this._coreService.decPrivateModes.synchronizedOutput){this._syncOutputHandler.bufferRows(e,t);return}e=Math.min(e,this._rowCount-1),t=Math.min(t,this._rowCount-1),this._renderer.value.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:e,end:t}),this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0}}resize(e,t){this._rowCount=t,this._fireOnCanvasResize()}_handleOptionsChanged(){this._renderer.value&&(this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize())}_fireOnCanvasResize(){this._renderer.value&&(this._renderer.value.dimensions.css.canvas.width===this._canvasWidth&&this._renderer.value.dimensions.css.canvas.height===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.value.dimensions))}hasRenderer(){return!!this._renderer.value}setRenderer(e){this._renderer.value=e,this._renderer.value&&(this._renderer.value.onRequestRedraw(t=>this.refreshRows(t.start,t.end,!0)),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(e){return this._renderDebouncer.addRefreshCallback(e)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){this._renderer.value&&(this._renderer.value.clearTextureAtlas?.(),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(e,t){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set(()=>this._renderer.value?.handleResize(e,t)):this._renderer.value.handleResize(e,t),this._fullRefresh())}handleCharSizeChanged(){this._renderer.value?.handleCharSizeChanged()}handleBlur(){this._renderer.value?.handleBlur()}handleFocus(){this._renderer.value?.handleFocus()}handleSelectionChanged(e,t,s){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=s,this._renderer.value?.handleSelectionChanged(e,t,s)}handleCursorMove(){this._renderer.value?.handleCursorMove()}clear(){this._renderer.value?.clear()}};db=Wt([we(2,tn),we(3,yf),we(4,no),we(5,Su),we(6,en),we(7,vr),we(8,xl)],db);var uF=class{constructor(e,t,s){this._coreBrowserService=e,this._coreService=t,this._onTimeout=s,this._start=0,this._end=0,this._isBuffering=!1}bufferRows(e,t){this._isBuffering?(this._start=Math.min(this._start,e),this._end=Math.max(this._end,t)):(this._start=e,this._end=t,this._isBuffering=!0),this._timeout===void 0&&(this._timeout=this._coreBrowserService.window.setTimeout(()=>{this._timeout=void 0,this._coreService.decPrivateModes.synchronizedOutput=!1,this._onTimeout()},1e3))}flush(){if(this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0),!this._isBuffering)return;let e={start:this._start,end:this._end};return this._isBuffering=!1,e}dispose(){this._timeout!==void 0&&(this._coreBrowserService.window.clearTimeout(this._timeout),this._timeout=void 0)}};function dF(e,t,s,n){let o=s.buffer.x,l=s.buffer.y;if(!s.buffer.hasScrollback)return mF(o,l,e,t,s,n)+wf(l,t,s,n)+pF(o,l,e,t,s,n);let u;if(l===t)return u=o>e?"D":"C",su(Math.abs(o-e),tu(u,n));u=l>t?"D":"C";let h=Math.abs(l-t),m=fF(l>t?e:o,s)+(h-1)*s.cols+1+hF(l>t?o:e);return su(m,tu(u,n))}function hF(e,t){return e-1}function fF(e,t){return t.cols-e}function mF(e,t,s,n,o,l){return wf(t,n,o,l).length===0?"":su(a5(e,t,e,t-Ja(t,o),!1,o).length,tu("D",l))}function wf(e,t,s,n){let o=e-Ja(e,s),l=t-Ja(t,s),u=Math.abs(o-l)-gF(e,t,s);return su(u,tu(r5(e,t),n))}function pF(e,t,s,n,o,l){let u;wf(t,n,o,l).length>0?u=n-Ja(n,o):u=t;let h=n,m=bF(e,t,s,n,o,l);return su(a5(e,u,s,h,m==="C",o).length,tu(m,l))}function gF(e,t,s){let n=0,o=e-Ja(e,s),l=t-Ja(t,s);for(let u=0;u<Math.abs(o-l);u++){let h=r5(e,t)==="A"?-1:1;s.buffer.lines.get(o+h*u)?.isWrapped&&n++}return n}function Ja(e,t){let s=0,n=t.buffer.lines.get(e),o=n?.isWrapped;for(;o&&e>=0&&e<t.rows;)s++,n=t.buffer.lines.get(--e),o=n?.isWrapped;return s}function bF(e,t,s,n,o,l){let u;return wf(s,n,o,l).length>0?u=n-Ja(n,o):u=t,e<s&&u<=n||e>=s&&u<n?"C":"D"}function r5(e,t){return e>t?"A":"B"}function a5(e,t,s,n,o,l){let u=e,h=t,m="";for(;(u!==s||h!==n)&&h>=0&&h<l.buffer.lines.length;)u+=o?1:-1,o&&u>l.cols-1?(m+=l.buffer.translateBufferLineToString(h,!1,e,u),u=0,e=0,h++):!o&&u<0&&(m+=l.buffer.translateBufferLineToString(h,!1,0,e+1),u=l.cols-1,e=u,h--);return m+l.buffer.translateBufferLineToString(h,!1,e,u)}function tu(e,t){let s=t?"O":"[";return ue.ESC+s+e}function su(e,t){e=Math.floor(e);let s="";for(let n=0;n<e;n++)s+=t;return s}var xF=class{constructor(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}clearSelection(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0}get finalSelectionStart(){return this.isSelectAllActive?[0,0]:!this.selectionEnd||!this.selectionStart?this.selectionStart:this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart}get finalSelectionEnd(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){let e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?e%this._bufferService.cols===0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)-1]:[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){let e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[Math.max(e,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){let e=this.selectionStart,t=this.selectionEnd;return!e||!t?!1:e[1]>t[1]||e[1]===t[1]&&e[0]>t[0]}handleTrim(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}};function v2(e,t){if(e.start.y>e.end.y)throw new Error(`Buffer range end (${e.end.x}, ${e.end.y}) cannot be before start (${e.start.x}, ${e.start.y})`);return t*(e.end.y-e.start.y)+(e.end.x-e.start.x+1)}var dg=50,vF=15,_F=50,yF=500,SF=" ",wF=new RegExp(SF,"g"),hb=class extends Je{constructor(e,t,s,n,o,l,u,h,m){super(),this._element=e,this._screenElement=t,this._linkifier=s,this._bufferService=n,this._coreService=o,this._mouseService=l,this._optionsService=u,this._renderService=h,this._coreBrowserService=m,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new Kn,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this._register(new be),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this._register(new be),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this._register(new be),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this._register(new be),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=d=>this._handleMouseMove(d),this._mouseUpListener=d=>this._handleMouseUp(d),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(d=>this._handleTrim(d)),this._register(this._bufferService.buffers.onBufferActivate(d=>this._handleBufferActivate(d))),this.enable(),this._model=new xF(this._bufferService),this._activeSelectionMode=0,this._register(It(()=>{this._removeMouseDownListeners()})),this._register(this._bufferService.onResize(d=>{d.rowsChanged&&this.clearSelection()}))}reset(){this.clearSelection()}disable(){this.clearSelection(),this._enabled=!1}enable(){this._enabled=!0}get selectionStart(){return this._model.finalSelectionStart}get selectionEnd(){return this._model.finalSelectionEnd}get hasSelection(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!e||!t?!1:e[0]!==t[0]||e[1]!==t[1]}get selectionText(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";let s=this._bufferService.buffer,n=[];if(this._activeSelectionMode===3){if(e[0]===t[0])return"";let o=e[0]<t[0]?e[0]:t[0],l=e[0]<t[0]?t[0]:e[0];for(let u=e[1];u<=t[1];u++){let h=s.translateBufferLineToString(u,!0,o,l);n.push(h)}}else{let o=e[1]===t[1]?t[0]:void 0;n.push(s.translateBufferLineToString(e[1],!0,e[0],o));for(let l=e[1]+1;l<=t[1]-1;l++){let u=s.lines.get(l),h=s.translateBufferLineToString(l,!0);u?.isWrapped?n[n.length-1]+=h:n.push(h)}if(e[1]!==t[1]){let l=s.lines.get(t[1]),u=s.translateBufferLineToString(t[1],!0,0,t[0]);l&&l.isWrapped?n[n.length-1]+=u:n.push(u)}}return n.map(o=>o.replace(wF," ")).join(s5?`\r
|
|
166
|
-
`:`
|
|
167
|
-
`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(e){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),$x&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(e){let t=this._getMouseBufferCoords(e),s=this._model.finalSelectionStart,n=this._model.finalSelectionEnd;return!s||!n||!t?!1:this._areCoordsInSelection(t,s,n)}isCellInSelection(e,t){let s=this._model.finalSelectionStart,n=this._model.finalSelectionEnd;return!s||!n?!1:this._areCoordsInSelection([e,t],s,n)}_areCoordsInSelection(e,t,s){return e[1]>t[1]&&e[1]<s[1]||t[1]===s[1]&&e[1]===t[1]&&e[0]>=t[0]&&e[0]<s[0]||t[1]<s[1]&&e[1]===s[1]&&e[0]<s[0]||t[1]<s[1]&&e[1]===t[1]&&e[0]>=t[0]}_selectWordAtCursor(e,t){let s=this._linkifier.currentLink?.link?.range;if(s)return this._model.selectionStart=[s.start.x-1,s.start.y-1],this._model.selectionStartLength=v2(s,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let n=this._getMouseBufferCoords(e);return n?(this._selectWordAt(n,t),this._model.selectionEnd=void 0,!0):!1}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()}_handleTrim(e){this._model.handleTrim(e)&&this.refresh()}_getMouseBufferCoords(e){let t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t}_getMouseEventScrollAmount(e){let t=Px(this._coreBrowserService.window,e,this._screenElement)[1],s=this._renderService.dimensions.css.canvas.height;return t>=0&&t<=s?0:(t>s&&(t-=s),t=Math.min(Math.max(t,-dg),dg),t/=dg,t/Math.abs(t)+Math.round(t*(vF-1)))}shouldForceSelection(e){return Zh?e.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:e.shiftKey}handleMouseDown(e){if(this._mouseDownTimeStamp=e.timeStamp,!(e.button===2&&this.hasSelection)&&e.button===0){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._handleIncrementalClick(e):e.detail===1?this._handleSingleClick(e):e.detail===2?this._handleDoubleClick(e):e.detail===3&&this._handleTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),_F)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))}_handleSingleClick(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&t.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(e){let t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))}shouldColumnSelect(e){return e.altKey&&!(Zh&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(e){if(e.stopImmediatePropagation(),!this._model.selectionStart)return;let t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),!this._model.selectionEnd){this.refresh(!0);return}this._activeSelectionMode===2?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:this._activeSelectionMode===1&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(e),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let s=this._bufferService.buffer;if(this._model.selectionEnd[1]<s.lines.length){let n=s.lines.get(this._model.selectionEnd[1]);n&&n.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}(!t||t[0]!==this._model.selectionEnd[0]||t[1]!==this._model.selectionEnd[1])&&this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let e=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}}_handleMouseUp(e){let t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<yF&&e.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let s=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(s&&s[0]!==void 0&&s[1]!==void 0){let n=dF(s[0]-1,s[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(n,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,s=!!e&&!!t&&(e[0]!==t[0]||e[1]!==t[1]);if(!s){this._oldHasSelection&&this._fireOnSelectionChange(e,t,s);return}!e||!t||(!this._oldSelectionStart||!this._oldSelectionEnd||e[0]!==this._oldSelectionStart[0]||e[1]!==this._oldSelectionStart[1]||t[0]!==this._oldSelectionEnd[0]||t[1]!==this._oldSelectionEnd[1])&&this._fireOnSelectionChange(e,t,s)}_fireOnSelectionChange(e,t,s){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=s,this._onSelectionChange.fire()}_handleBufferActivate(e){this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim(t=>this._handleTrim(t))}_convertViewportColToCharacterIndex(e,t){let s=t;for(let n=0;t>=n;n++){let o=e.loadCell(n,this._workCell).getChars().length;this._workCell.getWidth()===0?s--:o>1&&t!==n&&(s+=o-1)}return s}setSelection(e,t,s){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=s,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(e,t,s=!0,n=!0){if(e[0]>=this._bufferService.cols)return;let o=this._bufferService.buffer,l=o.lines.get(e[1]);if(!l)return;let u=o.translateBufferLineToString(e[1],!1),h=this._convertViewportColToCharacterIndex(l,e[0]),m=h,d=e[0]-h,p=0,g=0,x=0,_=0;if(u.charAt(h)===" "){for(;h>0&&u.charAt(h-1)===" ";)h--;for(;m<u.length&&u.charAt(m+1)===" ";)m++}else{let C=e[0],N=e[0];l.getWidth(C)===0&&(p++,C--),l.getWidth(N)===2&&(g++,N++);let j=l.getString(N).length;for(j>1&&(_+=j-1,m+=j-1);C>0&&h>0&&!this._isCharWordSeparator(l.loadCell(C-1,this._workCell));){l.loadCell(C-1,this._workCell);let E=this._workCell.getChars().length;this._workCell.getWidth()===0?(p++,C--):E>1&&(x+=E-1,h-=E-1),h--,C--}for(;N<l.length&&m+1<u.length&&!this._isCharWordSeparator(l.loadCell(N+1,this._workCell));){l.loadCell(N+1,this._workCell);let E=this._workCell.getChars().length;this._workCell.getWidth()===2?(g++,N++):E>1&&(_+=E-1,m+=E-1),m++,N++}}m++;let S=h+d-p+x,w=Math.min(this._bufferService.cols,m-h+p+g-x-_);if(!(!t&&u.slice(h,m).trim()==="")){if(s&&S===0&&l.getCodePoint(0)!==32){let C=o.lines.get(e[1]-1);if(C&&l.isWrapped&&C.getCodePoint(this._bufferService.cols-1)!==32){let N=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(N){let j=this._bufferService.cols-N.start;S-=j,w+=j}}}if(n&&S+w===this._bufferService.cols&&l.getCodePoint(this._bufferService.cols-1)!==32){let C=o.lines.get(e[1]+1);if(C?.isWrapped&&C.getCodePoint(0)!==32){let N=this._getWordAt([0,e[1]+1],!1,!1,!0);N&&(w+=N.length)}}return{start:S,length:w}}}_selectWordAt(e,t){let s=this._getWordAt(e,t);if(s){for(;s.start<0;)s.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[s.start,e[1]],this._model.selectionStartLength=s.length}}_selectToWordAt(e){let t=this._getWordAt(e,!0);if(t){let s=e[1];for(;t.start<0;)t.start+=this._bufferService.cols,s--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,s++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,s]}}_isCharWordSeparator(e){return e.getWidth()===0?!1:this._optionsService.rawOptions.wordSeparator.indexOf(e.getChars())>=0}_selectLineAt(e){let t=this._bufferService.buffer.getWrappedRangeForLine(e),s={start:{x:0,y:t.first},end:{x:this._bufferService.cols-1,y:t.last}};this._model.selectionStart=[0,t.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=v2(s,this._bufferService.cols)}};hb=Wt([we(3,en),we(4,no),we(5,Rx),we(6,tn),we(7,_r),we(8,vr)],hb);var _2=class{constructor(){this._data={}}set(e,t,s){this._data[e]||(this._data[e]={}),this._data[e][t]=s}get(e,t){return this._data[e]?this._data[e][t]:void 0}clear(){this._data={}}},y2=class{constructor(){this._color=new _2,this._css=new _2}setCss(e,t,s){this._css.set(e,t,s)}getCss(e,t){return this._css.get(e,t)}setColor(e,t,s){this._color.set(e,t,s)}getColor(e,t){return this._color.get(e,t)}clear(){this._color.clear(),this._css.clear()}},ms=Object.freeze((()=>{let e=[Ut.toColor("#2e3436"),Ut.toColor("#cc0000"),Ut.toColor("#4e9a06"),Ut.toColor("#c4a000"),Ut.toColor("#3465a4"),Ut.toColor("#75507b"),Ut.toColor("#06989a"),Ut.toColor("#d3d7cf"),Ut.toColor("#555753"),Ut.toColor("#ef2929"),Ut.toColor("#8ae234"),Ut.toColor("#fce94f"),Ut.toColor("#729fcf"),Ut.toColor("#ad7fa8"),Ut.toColor("#34e2e2"),Ut.toColor("#eeeeec")],t=[0,95,135,175,215,255];for(let s=0;s<216;s++){let n=t[s/36%6|0],o=t[s/6%6|0],l=t[s%6];e.push({css:cs.toCss(n,o,l),rgba:cs.toRgba(n,o,l)})}for(let s=0;s<24;s++){let n=8+s*10;e.push({css:cs.toCss(n,n,n),rgba:cs.toRgba(n,n,n)})}return e})()),$a=Ut.toColor("#ffffff"),Dc=Ut.toColor("#000000"),S2=Ut.toColor("#ffffff"),w2=Dc,Sc={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117},kF=$a,fb=class extends Je{constructor(e){super(),this._optionsService=e,this._contrastCache=new y2,this._halfContrastCache=new y2,this._onChangeColors=this._register(new be),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:$a,background:Dc,cursor:S2,cursorAccent:w2,selectionForeground:void 0,selectionBackgroundTransparent:Sc,selectionBackgroundOpaque:Ot.blend(Dc,Sc),selectionInactiveBackgroundTransparent:Sc,selectionInactiveBackgroundOpaque:Ot.blend(Dc,Sc),scrollbarSliderBackground:Ot.opacity($a,.2),scrollbarSliderHoverBackground:Ot.opacity($a,.4),scrollbarSliderActiveBackground:Ot.opacity($a,.5),overviewRulerBorder:$a,ansi:ms.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange("theme",()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(e={}){let t=this._colors;if(t.foreground=kt(e.foreground,$a),t.background=kt(e.background,Dc),t.cursor=Ot.blend(t.background,kt(e.cursor,S2)),t.cursorAccent=Ot.blend(t.background,kt(e.cursorAccent,w2)),t.selectionBackgroundTransparent=kt(e.selectionBackground,Sc),t.selectionBackgroundOpaque=Ot.blend(t.background,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundTransparent=kt(e.selectionInactiveBackground,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundOpaque=Ot.blend(t.background,t.selectionInactiveBackgroundTransparent),t.selectionForeground=e.selectionForeground?kt(e.selectionForeground,g2):void 0,t.selectionForeground===g2&&(t.selectionForeground=void 0),Ot.isOpaque(t.selectionBackgroundTransparent)&&(t.selectionBackgroundTransparent=Ot.opacity(t.selectionBackgroundTransparent,.3)),Ot.isOpaque(t.selectionInactiveBackgroundTransparent)&&(t.selectionInactiveBackgroundTransparent=Ot.opacity(t.selectionInactiveBackgroundTransparent,.3)),t.scrollbarSliderBackground=kt(e.scrollbarSliderBackground,Ot.opacity(t.foreground,.2)),t.scrollbarSliderHoverBackground=kt(e.scrollbarSliderHoverBackground,Ot.opacity(t.foreground,.4)),t.scrollbarSliderActiveBackground=kt(e.scrollbarSliderActiveBackground,Ot.opacity(t.foreground,.5)),t.overviewRulerBorder=kt(e.overviewRulerBorder,kF),t.ansi=ms.slice(),t.ansi[0]=kt(e.black,ms[0]),t.ansi[1]=kt(e.red,ms[1]),t.ansi[2]=kt(e.green,ms[2]),t.ansi[3]=kt(e.yellow,ms[3]),t.ansi[4]=kt(e.blue,ms[4]),t.ansi[5]=kt(e.magenta,ms[5]),t.ansi[6]=kt(e.cyan,ms[6]),t.ansi[7]=kt(e.white,ms[7]),t.ansi[8]=kt(e.brightBlack,ms[8]),t.ansi[9]=kt(e.brightRed,ms[9]),t.ansi[10]=kt(e.brightGreen,ms[10]),t.ansi[11]=kt(e.brightYellow,ms[11]),t.ansi[12]=kt(e.brightBlue,ms[12]),t.ansi[13]=kt(e.brightMagenta,ms[13]),t.ansi[14]=kt(e.brightCyan,ms[14]),t.ansi[15]=kt(e.brightWhite,ms[15]),e.extendedAnsi){let s=Math.min(t.ansi.length-16,e.extendedAnsi.length);for(let n=0;n<s;n++)t.ansi[n+16]=kt(e.extendedAnsi[n],ms[n+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(e){this._restoreColor(e),this._onChangeColors.fire(this.colors)}_restoreColor(e){if(e===void 0){for(let t=0;t<this._restoreColors.ansi.length;++t)this._colors.ansi[t]=this._restoreColors.ansi[t];return}switch(e){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[e]=this._restoreColors.ansi[e]}}modifyColors(e){e(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};fb=Wt([we(0,tn)],fb);function kt(e,t){if(e!==void 0)try{return Ut.toColor(e)}catch{}return t}var CF=class{constructor(...e){this._entries=new Map;for(let[t,s]of e)this.set(t,s)}set(e,t){let s=this._entries.get(e);return this._entries.set(e,t),s}forEach(e){for(let[t,s]of this._entries.entries())e(t,s)}has(e){return this._entries.has(e)}get(e){return this._entries.get(e)}},NF=class{constructor(){this._services=new CF,this._services.set(Mx,this)}setService(e,t){this._services.set(e,t)}getService(e){return this._services.get(e)}createInstance(e,...t){let s=vH(e).sort((l,u)=>l.index-u.index),n=[];for(let l of s){let u=this._services.get(l.id);if(!u)throw new Error(`[createInstance] ${e.name} depends on UNKNOWN service ${l.id._id}.`);n.push(u)}let o=s.length>0?s[0].index:t.length;if(t.length!==o)throw new Error(`[createInstance] First service dependency of ${e.name} at position ${o+1} conflicts with ${t.length} static arguments`);return new e(...t,...n)}},EF={trace:0,debug:1,info:2,warn:3,error:4,off:5},jF="xterm.js: ",mb=class extends Je{constructor(e){super(),this._optionsService=e,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=EF[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(e){for(let t=0;t<e.length;t++)typeof e[t]=="function"&&(e[t]=e[t]())}_log(e,t,s){this._evalLazyOptionalParams(s),e.call(console,(this._optionsService.options.logger?"":jF)+t,...s)}trace(e,...t){this._logLevel<=0&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,e,t)}debug(e,...t){this._logLevel<=1&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,e,t)}info(e,...t){this._logLevel<=2&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,e,t)}warn(e,...t){this._logLevel<=3&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,e,t)}error(e,...t){this._logLevel<=4&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,e,t)}};mb=Wt([we(0,tn)],mb);var k2=class extends Je{constructor(e){super(),this._maxLength=e,this.onDeleteEmitter=this._register(new be),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new be),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new be),this.onTrim=this.onTrimEmitter.event,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(e){if(this._maxLength===e)return;let t=new Array(e);for(let s=0;s<Math.min(e,this.length);s++)t[s]=this._array[this._getCyclicIndex(s)];this._array=t,this._maxLength=e,this._startIndex=0}get length(){return this._length}set length(e){if(e>this._length)for(let t=this._length;t<e;t++)this._array[t]=void 0;this._length=e}get(e){return this._array[this._getCyclicIndex(e)]}set(e,t){this._array[this._getCyclicIndex(e)]=t}push(e){this._array[this._getCyclicIndex(this._length)]=e,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw new Error("Can only recycle when the buffer is full");return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(e,t,...s){if(t){for(let n=e;n<this._length-t;n++)this._array[this._getCyclicIndex(n)]=this._array[this._getCyclicIndex(n+t)];this._length-=t,this.onDeleteEmitter.fire({index:e,amount:t})}for(let n=this._length-1;n>=e;n--)this._array[this._getCyclicIndex(n+s.length)]=this._array[this._getCyclicIndex(n)];for(let n=0;n<s.length;n++)this._array[this._getCyclicIndex(e+n)]=s[n];if(s.length&&this.onInsertEmitter.fire({index:e,amount:s.length}),this._length+s.length>this._maxLength){let n=this._length+s.length-this._maxLength;this._startIndex+=n,this._length=this._maxLength,this.onTrimEmitter.fire(n)}else this._length+=s.length}trimStart(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)}shiftElements(e,t,s){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+s<0)throw new Error("Cannot shift elements in list beyond index 0");if(s>0){for(let o=t-1;o>=0;o--)this.set(e+o+s,this.get(e+o));let n=e+t+s-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let n=0;n<t;n++)this.set(e+n+s,this.get(e+n))}}_getCyclicIndex(e){return(this._startIndex+e)%this._maxLength}},Ze=3,as=Object.freeze(new yu),oh=0,hg=2,Oc=class o5{constructor(t,s,n=!1){this.isWrapped=n,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(t*Ze);let o=s||Kn.fromCharData([0,N3,1,0]);for(let l=0;l<t;++l)this.setCell(l,o);this.length=t}get(t){let s=this._data[t*Ze+0],n=s&2097151;return[this._data[t*Ze+1],s&2097152?this._combined[t]:n?na(n):"",s>>22,s&2097152?this._combined[t].charCodeAt(this._combined[t].length-1):n]}set(t,s){this._data[t*Ze+1]=s[0],s[1].length>1?(this._combined[t]=s[1],this._data[t*Ze+0]=t|2097152|s[2]<<22):this._data[t*Ze+0]=s[1].charCodeAt(0)|s[2]<<22}getWidth(t){return this._data[t*Ze+0]>>22}hasWidth(t){return this._data[t*Ze+0]&12582912}getFg(t){return this._data[t*Ze+1]}getBg(t){return this._data[t*Ze+2]}hasContent(t){return this._data[t*Ze+0]&4194303}getCodePoint(t){let s=this._data[t*Ze+0];return s&2097152?this._combined[t].charCodeAt(this._combined[t].length-1):s&2097151}isCombined(t){return this._data[t*Ze+0]&2097152}getString(t){let s=this._data[t*Ze+0];return s&2097152?this._combined[t]:s&2097151?na(s&2097151):""}isProtected(t){return this._data[t*Ze+2]&536870912}loadCell(t,s){return oh=t*Ze,s.content=this._data[oh+0],s.fg=this._data[oh+1],s.bg=this._data[oh+2],s.content&2097152&&(s.combinedData=this._combined[t]),s.bg&268435456&&(s.extended=this._extendedAttrs[t]),s}setCell(t,s){s.content&2097152&&(this._combined[t]=s.combinedData),s.bg&268435456&&(this._extendedAttrs[t]=s.extended),this._data[t*Ze+0]=s.content,this._data[t*Ze+1]=s.fg,this._data[t*Ze+2]=s.bg}setCellFromCodepoint(t,s,n,o){o.bg&268435456&&(this._extendedAttrs[t]=o.extended),this._data[t*Ze+0]=s|n<<22,this._data[t*Ze+1]=o.fg,this._data[t*Ze+2]=o.bg}addCodepointToCell(t,s,n){let o=this._data[t*Ze+0];o&2097152?this._combined[t]+=na(s):o&2097151?(this._combined[t]=na(o&2097151)+na(s),o&=-2097152,o|=2097152):o=s|1<<22,n&&(o&=-12582913,o|=n<<22),this._data[t*Ze+0]=o}insertCells(t,s,n){if(t%=this.length,t&&this.getWidth(t-1)===2&&this.setCellFromCodepoint(t-1,0,1,n),s<this.length-t){let o=new Kn;for(let l=this.length-t-s-1;l>=0;--l)this.setCell(t+s+l,this.loadCell(t+l,o));for(let l=0;l<s;++l)this.setCell(t+l,n)}else for(let o=t;o<this.length;++o)this.setCell(o,n);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,n)}deleteCells(t,s,n){if(t%=this.length,s<this.length-t){let o=new Kn;for(let l=0;l<this.length-t-s;++l)this.setCell(t+l,this.loadCell(t+s+l,o));for(let l=this.length-s;l<this.length;++l)this.setCell(l,n)}else for(let o=t;o<this.length;++o)this.setCell(o,n);t&&this.getWidth(t-1)===2&&this.setCellFromCodepoint(t-1,0,1,n),this.getWidth(t)===0&&!this.hasContent(t)&&this.setCellFromCodepoint(t,0,1,n)}replaceCells(t,s,n,o=!1){if(o){for(t&&this.getWidth(t-1)===2&&!this.isProtected(t-1)&&this.setCellFromCodepoint(t-1,0,1,n),s<this.length&&this.getWidth(s-1)===2&&!this.isProtected(s)&&this.setCellFromCodepoint(s,0,1,n);t<s&&t<this.length;)this.isProtected(t)||this.setCell(t,n),t++;return}for(t&&this.getWidth(t-1)===2&&this.setCellFromCodepoint(t-1,0,1,n),s<this.length&&this.getWidth(s-1)===2&&this.setCellFromCodepoint(s,0,1,n);t<s&&t<this.length;)this.setCell(t++,n)}resize(t,s){if(t===this.length)return this._data.length*4*hg<this._data.buffer.byteLength;let n=t*Ze;if(t>this.length){if(this._data.buffer.byteLength>=n*4)this._data=new Uint32Array(this._data.buffer,0,n);else{let o=new Uint32Array(n);o.set(this._data),this._data=o}for(let o=this.length;o<t;++o)this.setCell(o,s)}else{this._data=this._data.subarray(0,n);let o=Object.keys(this._combined);for(let u=0;u<o.length;u++){let h=parseInt(o[u],10);h>=t&&delete this._combined[h]}let l=Object.keys(this._extendedAttrs);for(let u=0;u<l.length;u++){let h=parseInt(l[u],10);h>=t&&delete this._extendedAttrs[h]}}return this.length=t,n*4*hg<this._data.buffer.byteLength}cleanupMemory(){if(this._data.length*4*hg<this._data.buffer.byteLength){let t=new Uint32Array(this._data.length);return t.set(this._data),this._data=t,1}return 0}fill(t,s=!1){if(s){for(let n=0;n<this.length;++n)this.isProtected(n)||this.setCell(n,t);return}this._combined={},this._extendedAttrs={};for(let n=0;n<this.length;++n)this.setCell(n,t)}copyFrom(t){this.length!==t.length?this._data=new Uint32Array(t._data):this._data.set(t._data),this.length=t.length,this._combined={};for(let s in t._combined)this._combined[s]=t._combined[s];this._extendedAttrs={};for(let s in t._extendedAttrs)this._extendedAttrs[s]=t._extendedAttrs[s];this.isWrapped=t.isWrapped}clone(){let t=new o5(0);t._data=new Uint32Array(this._data),t.length=this.length;for(let s in this._combined)t._combined[s]=this._combined[s];for(let s in this._extendedAttrs)t._extendedAttrs[s]=this._extendedAttrs[s];return t.isWrapped=this.isWrapped,t}getTrimmedLength(){for(let t=this.length-1;t>=0;--t)if(this._data[t*Ze+0]&4194303)return t+(this._data[t*Ze+0]>>22);return 0}getNoBgTrimmedLength(){for(let t=this.length-1;t>=0;--t)if(this._data[t*Ze+0]&4194303||this._data[t*Ze+2]&50331648)return t+(this._data[t*Ze+0]>>22);return 0}copyCellsFrom(t,s,n,o,l){let u=t._data;if(l)for(let m=o-1;m>=0;m--){for(let d=0;d<Ze;d++)this._data[(n+m)*Ze+d]=u[(s+m)*Ze+d];u[(s+m)*Ze+2]&268435456&&(this._extendedAttrs[n+m]=t._extendedAttrs[s+m])}else for(let m=0;m<o;m++){for(let d=0;d<Ze;d++)this._data[(n+m)*Ze+d]=u[(s+m)*Ze+d];u[(s+m)*Ze+2]&268435456&&(this._extendedAttrs[n+m]=t._extendedAttrs[s+m])}let h=Object.keys(t._combined);for(let m=0;m<h.length;m++){let d=parseInt(h[m],10);d>=s&&(this._combined[d-s+n]=t._combined[d])}}translateToString(t,s,n,o){s=s??0,n=n??this.length,t&&(n=Math.min(n,this.getTrimmedLength())),o&&(o.length=0);let l="";for(;s<n;){let u=this._data[s*Ze+0],h=u&2097151,m=u&2097152?this._combined[s]:h?na(h):ra;if(l+=m,o)for(let d=0;d<m.length;++d)o.push(s);s+=u>>22||1}return o&&o.push(s),l}};function TF(e,t,s,n,o,l){let u=[];for(let h=0;h<e.length-1;h++){let m=h,d=e.get(++m);if(!d.isWrapped)continue;let p=[e.get(h)];for(;m<e.length&&d.isWrapped;)p.push(d),d=e.get(++m);if(!l&&n>=h&&n<m){h+=p.length-1;continue}let g=0,x=nu(p,g,t),_=1,S=0;for(;_<p.length;){let C=nu(p,_,t),N=C-S,j=s-x,E=Math.min(N,j);p[g].copyCellsFrom(p[_],S,x,E,!1),x+=E,x===s&&(g++,x=0),S+=E,S===C&&(_++,S=0),x===0&&g!==0&&p[g-1].getWidth(s-1)===2&&(p[g].copyCellsFrom(p[g-1],s-1,x++,1,!1),p[g-1].setCell(s-1,o))}p[g].replaceCells(x,s,o);let w=0;for(let C=p.length-1;C>0&&(C>g||p[C].getTrimmedLength()===0);C--)w++;w>0&&(u.push(h+p.length-w),u.push(w)),h+=p.length-1}return u}function AF(e,t){let s=[],n=0,o=t[n],l=0;for(let u=0;u<e.length;u++)if(o===u){let h=t[++n];e.onDeleteEmitter.fire({index:u-l,amount:h}),u+=h-1,l+=h,o=t[++n]}else s.push(u);return{layout:s,countRemoved:l}}function MF(e,t){let s=[];for(let n=0;n<t.length;n++)s.push(e.get(t[n]));for(let n=0;n<s.length;n++)e.set(n,s[n]);e.length=t.length}function RF(e,t,s){let n=[],o=e.map((m,d)=>nu(e,d,t)).reduce((m,d)=>m+d),l=0,u=0,h=0;for(;h<o;){if(o-h<s){n.push(o-h);break}l+=s;let m=nu(e,u,t);l>m&&(l-=m,u++);let d=e[u].getWidth(l-1)===2;d&&l--;let p=d?s-1:s;n.push(p),h+=p}return n}function nu(e,t,s){if(t===e.length-1)return e[t].getTrimmedLength();let n=!e[t].hasContent(s-1)&&e[t].getWidth(s-1)===1,o=e[t+1].getWidth(0)===2;return n&&o?s-1:s}var l5=class c5{constructor(t){this.line=t,this.isDisposed=!1,this._disposables=[],this._id=c5._nextId++,this._onDispose=this.register(new be),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),Qa(this._disposables),this._disposables.length=0)}register(t){return this._disposables.push(t),t}};l5._nextId=1;var DF=l5,vs={},Ha=vs.B;vs[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"};vs.A={"#":"£"};vs.B=void 0;vs[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"};vs.C=vs[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};vs.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"};vs.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"};vs.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"};vs.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"};vs.E=vs[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"};vs.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"};vs.H=vs[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};vs["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var C2=4294967295,N2=class{constructor(e,t,s){this._hasScrollback=e,this._optionsService=t,this._bufferService=s,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=as.clone(),this.savedCharset=Ha,this.markers=[],this._nullCell=Kn.fromCharData([0,N3,1,0]),this._whitespaceCell=Kn.fromCharData([0,ra,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new Qh,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new k2(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new Kh),this._nullCell}getWhitespaceCell(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new Kh),this._whitespaceCell}getBlankLine(e,t){return new Oc(this._bufferService.cols,this.getNullCell(e),t)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let e=this.ybase+this.y-this.ydisp;return e>=0&&e<this._rows}_getCorrectBufferLength(e){if(!this._hasScrollback)return e;let t=e+this._optionsService.rawOptions.scrollback;return t>C2?C2:t}fillViewportRows(e){if(this.lines.length===0){e===void 0&&(e=as);let t=this._rows;for(;t--;)this.lines.push(this.getBlankLine(e))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new k2(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(e,t){let s=this.getNullCell(as),n=0,o=this._getCorrectBufferLength(t);if(o>this.lines.maxLength&&(this.lines.maxLength=o),this.lines.length>0){if(this._cols<e)for(let u=0;u<this.lines.length;u++)n+=+this.lines.get(u).resize(e,s);let l=0;if(this._rows<t)for(let u=this._rows;u<t;u++)this.lines.length<t+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new Oc(e,s)):this.ybase>0&&this.lines.length<=this.ybase+this.y+l+1?(this.ybase--,l++,this.ydisp>0&&this.ydisp--):this.lines.push(new Oc(e,s)));else for(let u=this._rows;u>t;u--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(o<this.lines.maxLength){let u=this.lines.length-o;u>0&&(this.lines.trimStart(u),this.ybase=Math.max(this.ybase-u,0),this.ydisp=Math.max(this.ydisp-u,0),this.savedY=Math.max(this.savedY-u,0)),this.lines.maxLength=o}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),l&&(this.y+=l),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(let l=0;l<this.lines.length;l++)n+=+this.lines.get(l).resize(e,s);this._cols=e,this._rows=t,this._memoryCleanupQueue.clear(),n>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let e=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,e=!1);let t=0;for(;this._memoryCleanupPosition<this.lines.length;)if(t+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),t>100)return!0;return e}get _isReflowEnabled(){let e=this._optionsService.rawOptions.windowsPty;return e&&e.buildNumber?this._hasScrollback&&e.backend==="conpty"&&e.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(e,t){this._cols!==e&&(e>this._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))}_reflowLarger(e,t){let s=this._optionsService.rawOptions.reflowCursorLine,n=TF(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(as),s);if(n.length>0){let o=AF(this.lines,n);MF(this.lines,o.layout),this._reflowLargerAdjustViewport(e,t,o.countRemoved)}}_reflowLargerAdjustViewport(e,t,s){let n=this.getNullCell(as),o=s;for(;o-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<t&&this.lines.push(new Oc(e,n))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-s,0)}_reflowSmaller(e,t){let s=this._optionsService.rawOptions.reflowCursorLine,n=this.getNullCell(as),o=[],l=0;for(let u=this.lines.length-1;u>=0;u--){let h=this.lines.get(u);if(!h||!h.isWrapped&&h.getTrimmedLength()<=e)continue;let m=[h];for(;h.isWrapped&&u>0;)h=this.lines.get(--u),m.unshift(h);if(!s){let E=this.ybase+this.y;if(E>=u&&E<u+m.length)continue}let d=m[m.length-1].getTrimmedLength(),p=RF(m,this._cols,e),g=p.length-m.length,x;this.ybase===0&&this.y!==this.lines.length-1?x=Math.max(0,this.y-this.lines.maxLength+g):x=Math.max(0,this.lines.length-this.lines.maxLength+g);let _=[];for(let E=0;E<g;E++){let A=this.getBlankLine(as,!0);_.push(A)}_.length>0&&(o.push({start:u+m.length+l,newLines:_}),l+=_.length),m.push(..._);let S=p.length-1,w=p[S];w===0&&(S--,w=p[S]);let C=m.length-g-1,N=d;for(;C>=0;){let E=Math.min(N,w);if(m[S]===void 0)break;if(m[S].copyCellsFrom(m[C],N-E,w-E,E,!0),w-=E,w===0&&(S--,w=p[S]),N-=E,N===0){C--;let A=Math.max(C,0);N=nu(m,A,this._cols)}}for(let E=0;E<m.length;E++)p[E]<e&&m[E].setCell(p[E],n);let j=g-x;for(;j-- >0;)this.ybase===0?this.y<t-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+l)-t&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+g,this.ybase+t-1)}if(o.length>0){let u=[],h=[];for(let w=0;w<this.lines.length;w++)h.push(this.lines.get(w));let m=this.lines.length,d=m-1,p=0,g=o[p];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+l);let x=0;for(let w=Math.min(this.lines.maxLength-1,m+l-1);w>=0;w--)if(g&&g.start>d+x){for(let C=g.newLines.length-1;C>=0;C--)this.lines.set(w--,g.newLines[C]);w++,u.push({index:d+1,amount:g.newLines.length}),x+=g.newLines.length,g=o[++p]}else this.lines.set(w,h[d--]);let _=0;for(let w=u.length-1;w>=0;w--)u[w].index+=_,this.lines.onInsertEmitter.fire(u[w]),_+=u[w].amount;let S=Math.max(0,m+l-this.lines.maxLength);S>0&&this.lines.onTrimEmitter.fire(S)}}translateBufferLineToString(e,t,s=0,n){let o=this.lines.get(e);return o?o.translateToString(t,s,n):""}getWrappedRangeForLine(e){let t=e,s=e;for(;t>0&&this.lines.get(t).isWrapped;)t--;for(;s+1<this.lines.length&&this.lines.get(s+1).isWrapped;)s++;return{first:t,last:s}}setupTabStops(e){for(e!=null?this.tabs[e]||(e=this.prevStop(e)):(this.tabs={},e=0);e<this._cols;e+=this._optionsService.rawOptions.tabStopWidth)this.tabs[e]=!0}prevStop(e){for(e==null&&(e=this.x);!this.tabs[--e]&&e>0;);return e>=this._cols?this._cols-1:e<0?0:e}nextStop(e){for(e==null&&(e=this.x);!this.tabs[++e]&&e<this._cols;);return e>=this._cols?this._cols-1:e<0?0:e}clearMarkers(e){this._isClearing=!0;for(let t=0;t<this.markers.length;t++)this.markers[t].line===e&&(this.markers[t].dispose(),this.markers.splice(t--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let e=0;e<this.markers.length;e++)this.markers[e].dispose();this.markers.length=0,this._isClearing=!1}addMarker(e){let t=new DF(e);return this.markers.push(t),t.register(this.lines.onTrim(s=>{t.line-=s,t.line<0&&t.dispose()})),t.register(this.lines.onInsert(s=>{t.line>=s.index&&(t.line+=s.amount)})),t.register(this.lines.onDelete(s=>{t.line>=s.index&&t.line<s.index+s.amount&&t.dispose(),t.line>s.index&&(t.line-=s.amount)})),t.register(t.onDispose(()=>this._removeMarker(t))),t}_removeMarker(e){this._isClearing||this.markers.splice(this.markers.indexOf(e),1)}},OF=class extends Je{constructor(e,t){super(),this._optionsService=e,this._bufferService=t,this._onBufferActivate=this._register(new be),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange("scrollback",()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange("tabStopWidth",()=>this.setupTabStops()))}reset(){this._normal=new N2(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new N2(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(e,t){this._normal.resize(e,t),this._alt.resize(e,t),this.setupTabStops(e)}setupTabStops(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)}},u5=2,d5=1,pb=class extends Je{constructor(e){super(),this.isUserScrolling=!1,this._onResize=this._register(new be),this.onResize=this._onResize.event,this._onScroll=this._register(new be),this.onScroll=this._onScroll.event,this.cols=Math.max(e.rawOptions.cols||0,u5),this.rows=Math.max(e.rawOptions.rows||0,d5),this.buffers=this._register(new OF(e,this)),this._register(this.buffers.onBufferActivate(t=>{this._onScroll.fire(t.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(e,t){let s=this.cols!==e,n=this.rows!==t;this.cols=e,this.rows=t,this.buffers.resize(e,t),this._onResize.fire({cols:e,rows:t,colsChanged:s,rowsChanged:n})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(e,t=!1){let s=this.buffer,n;n=this._cachedBlankLine,(!n||n.length!==this.cols||n.getFg(0)!==e.fg||n.getBg(0)!==e.bg)&&(n=s.getBlankLine(e,t),this._cachedBlankLine=n),n.isWrapped=t;let o=s.ybase+s.scrollTop,l=s.ybase+s.scrollBottom;if(s.scrollTop===0){let u=s.lines.isFull;l===s.lines.length-1?u?s.lines.recycle().copyFrom(n):s.lines.push(n.clone()):s.lines.splice(l+1,0,n.clone()),u?this.isUserScrolling&&(s.ydisp=Math.max(s.ydisp-1,0)):(s.ybase++,this.isUserScrolling||s.ydisp++)}else{let u=l-o+1;s.lines.shiftElements(o+1,u-1,-1),s.lines.set(l,n.clone())}this.isUserScrolling||(s.ydisp=s.ybase),this._onScroll.fire(s.ydisp)}scrollLines(e,t){let s=this.buffer;if(e<0){if(s.ydisp===0)return;this.isUserScrolling=!0}else e+s.ydisp>=s.ybase&&(this.isUserScrolling=!1);let n=s.ydisp;s.ydisp=Math.max(Math.min(s.ydisp+e,s.ybase),0),n!==s.ydisp&&(t||this._onScroll.fire(s.ydisp))}};pb=Wt([we(0,tn)],pb);var Wo={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:Zh,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},LF=["normal","bold","100","200","300","400","500","600","700","800","900"],zF=class extends Je{constructor(e){super(),this._onOptionChange=this._register(new be),this.onOptionChange=this._onOptionChange.event;let t={...Wo};for(let s in e)if(s in t)try{let n=e[s];t[s]=this._sanitizeAndValidateOption(s,n)}catch(n){console.error(n)}this.rawOptions=t,this.options={...t},this._setupOptions(),this._register(It(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(e,t){return this.onOptionChange(s=>{s===e&&t(this.rawOptions[e])})}onMultipleOptionChange(e,t){return this.onOptionChange(s=>{e.indexOf(s)!==-1&&t()})}_setupOptions(){let e=s=>{if(!(s in Wo))throw new Error(`No option with key "${s}"`);return this.rawOptions[s]},t=(s,n)=>{if(!(s in Wo))throw new Error(`No option with key "${s}"`);n=this._sanitizeAndValidateOption(s,n),this.rawOptions[s]!==n&&(this.rawOptions[s]=n,this._onOptionChange.fire(s))};for(let s in this.rawOptions){let n={get:e.bind(this,s),set:t.bind(this,s)};Object.defineProperty(this.options,s,n)}}_sanitizeAndValidateOption(e,t){switch(e){case"cursorStyle":if(t||(t=Wo[e]),!BF(t))throw new Error(`"${t}" is not a valid value for ${e}`);break;case"wordSeparator":t||(t=Wo[e]);break;case"fontWeight":case"fontWeightBold":if(typeof t=="number"&&1<=t&&t<=1e3)break;t=LF.includes(t)?t:Wo[e];break;case"cursorWidth":t=Math.floor(t);case"lineHeight":case"tabStopWidth":if(t<1)throw new Error(`${e} cannot be less than 1, value: ${t}`);break;case"minimumContrastRatio":t=Math.max(1,Math.min(21,Math.round(t*10)/10));break;case"scrollback":if(t=Math.min(t,4294967295),t<0)throw new Error(`${e} cannot be less than 0, value: ${t}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(t<=0)throw new Error(`${e} cannot be less than or equal to 0, value: ${t}`);break;case"rows":case"cols":if(!t&&t!==0)throw new Error(`${e} must be numeric, value: ${t}`);break;case"windowsPty":t=t??{};break}return t}};function BF(e){return e==="block"||e==="underline"||e==="bar"}function Lc(e,t=5){if(typeof e!="object")return e;let s=Array.isArray(e)?[]:{};for(let n in e)s[n]=t<=1?e[n]:e[n]&&Lc(e[n],t-1);return s}var E2=Object.freeze({insertMode:!1}),j2=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),gb=class extends Je{constructor(e,t,s){super(),this._bufferService=e,this._logService=t,this._optionsService=s,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new be),this.onData=this._onData.event,this._onUserInput=this._register(new be),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new be),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new be),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=Lc(E2),this.decPrivateModes=Lc(j2)}reset(){this.modes=Lc(E2),this.decPrivateModes=Lc(j2)}triggerDataEvent(e,t=!1){if(this._optionsService.rawOptions.disableStdin)return;let s=this._bufferService.buffer;t&&this._optionsService.rawOptions.scrollOnUserInput&&s.ybase!==s.ydisp&&this._onRequestScrollToBottom.fire(),t&&this._onUserInput.fire(),this._logService.debug(`sending data "${e}"`),this._logService.trace("sending data (codes)",()=>e.split("").map(n=>n.charCodeAt(0))),this._onData.fire(e)}triggerBinaryEvent(e){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${e}"`),this._logService.trace("sending binary (codes)",()=>e.split("").map(t=>t.charCodeAt(0))),this._onBinary.fire(e))}};gb=Wt([we(0,en),we(1,M3),we(2,tn)],gb);var T2={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:e=>e.button===4||e.action!==1?!1:(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)},VT200:{events:19,restrict:e=>e.action!==32},DRAG:{events:23,restrict:e=>!(e.action===32&&e.button===3)},ANY:{events:31,restrict:e=>!0}};function fg(e,t){let s=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return e.button===4?(s|=64,s|=e.action):(s|=e.button&3,e.button&4&&(s|=64),e.button&8&&(s|=128),e.action===32?s|=32:e.action===0&&!t&&(s|=3)),s}var mg=String.fromCharCode,A2={DEFAULT:e=>{let t=[fg(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":`\x1B[M${mg(t[0])}${mg(t[1])}${mg(t[2])}`},SGR:e=>{let t=e.action===0&&e.button!==4?"m":"M";return`\x1B[<${fg(e,!0)};${e.col};${e.row}${t}`},SGR_PIXELS:e=>{let t=e.action===0&&e.button!==4?"m":"M";return`\x1B[<${fg(e,!0)};${e.x};${e.y}${t}`}},bb=class extends Je{constructor(e,t,s){super(),this._bufferService=e,this._coreService=t,this._optionsService=s,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new be),this.onProtocolChange=this._onProtocolChange.event;for(let n of Object.keys(T2))this.addProtocol(n,T2[n]);for(let n of Object.keys(A2))this.addEncoding(n,A2[n]);this.reset()}addProtocol(e,t){this._protocols[e]=t}addEncoding(e,t){this._encodings[e]=t}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(e){if(!this._protocols[e])throw new Error(`unknown protocol "${e}"`);this._activeProtocol=e,this._onProtocolChange.fire(this._protocols[e].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(e){if(!this._encodings[e])throw new Error(`unknown encoding "${e}"`);this._activeEncoding=e}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(e,t,s){if(e.deltaY===0||e.shiftKey||t===void 0||s===void 0)return 0;let n=t/s,o=this._applyScrollModifier(e.deltaY,e);return e.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(o/=n+0,Math.abs(e.deltaY)<50&&(o*=.3),this._wheelPartialScroll+=o,o=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(o*=this._bufferService.rows),o}_applyScrollModifier(e,t){return t.altKey||t.ctrlKey||t.shiftKey?e*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:e*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(e){if(e.col<0||e.col>=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows||e.button===4&&e.action===32||e.button===3&&e.action!==32||e.button!==4&&(e.action===2||e.action===3)||(e.col++,e.row++,e.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,e,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(e))return!1;let t=this._encodings[this._activeEncoding](e);return t&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0}explainEvents(e){return{down:!!(e&1),up:!!(e&2),drag:!!(e&4),move:!!(e&8),wheel:!!(e&16)}}_equalEvents(e,t,s){if(s){if(e.x!==t.x||e.y!==t.y)return!1}else if(e.col!==t.col||e.row!==t.row)return!1;return!(e.button!==t.button||e.action!==t.action||e.ctrl!==t.ctrl||e.alt!==t.alt||e.shift!==t.shift)}};bb=Wt([we(0,en),we(1,no),we(2,tn)],bb);var pg=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],IF=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],ps;function PF(e,t){let s=0,n=t.length-1,o;if(e<t[0][0]||e>t[n][1])return!1;for(;n>=s;)if(o=s+n>>1,e>t[o][1])s=o+1;else if(e<t[o][0])n=o-1;else return!0;return!1}var $F=class{constructor(){if(this.version="6",!ps){ps=new Uint8Array(65536),ps.fill(1),ps[0]=0,ps.fill(0,1,32),ps.fill(0,127,160),ps.fill(2,4352,4448),ps[9001]=2,ps[9002]=2,ps.fill(2,11904,42192),ps[12351]=1,ps.fill(2,44032,55204),ps.fill(2,63744,64256),ps.fill(2,65040,65050),ps.fill(2,65072,65136),ps.fill(2,65280,65377),ps.fill(2,65504,65511);for(let e=0;e<pg.length;++e)ps.fill(0,pg[e][0],pg[e][1]+1)}}wcwidth(e){return e<32?0:e<127?1:e<65536?ps[e]:PF(e,IF)?0:e>=131072&&e<=196605||e>=196608&&e<=262141?2:1}charProperties(e,t){let s=this.wcwidth(e),n=s===0&&t!==0;if(n){let o=Va.extractWidth(t);o===0?n=!1:o>s&&(s=o)}return Va.createPropertyValue(0,s,n)}},Va=class kh{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new be,this.onChange=this._onChange.event;let t=new $F;this.register(t),this._active=t.version,this._activeProvider=t}static extractShouldJoin(t){return(t&1)!==0}static extractWidth(t){return t>>1&3}static extractCharKind(t){return t>>3}static createPropertyValue(t,s,n=!1){return(t&16777215)<<3|(s&3)<<1|(n?1:0)}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(t){if(!this._providers[t])throw new Error(`unknown Unicode version "${t}"`);this._active=t,this._activeProvider=this._providers[t],this._onChange.fire(t)}register(t){this._providers[t.version]=t}wcwidth(t){return this._activeProvider.wcwidth(t)}getStringCellWidth(t){let s=0,n=0,o=t.length;for(let l=0;l<o;++l){let u=t.charCodeAt(l);if(55296<=u&&u<=56319){if(++l>=o)return s+this.wcwidth(u);let d=t.charCodeAt(l);56320<=d&&d<=57343?u=(u-55296)*1024+d-56320+65536:s+=this.wcwidth(d)}let h=this.charProperties(u,n),m=kh.extractWidth(h);kh.extractShouldJoin(h)&&(m-=kh.extractWidth(n)),s+=m,n=h}return s}charProperties(t,s){return this._activeProvider.charProperties(t,s)}},HF=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(e){this.glevel=e,this.charset=this._charsets[e]}setgCharset(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)}};function M2(e){let t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1)?.get(e.cols-1),s=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);s&&t&&(s.isWrapped=t[3]!==0&&t[3]!==32)}var wc=2147483647,UF=256,h5=class xb{constructor(t=32,s=32){if(this.maxLength=t,this.maxSubParamsLength=s,s>UF)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(t),this.length=0,this._subParams=new Int32Array(s),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(t),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(t){let s=new xb;if(!t.length)return s;for(let n=Array.isArray(t[0])?1:0;n<t.length;++n){let o=t[n];if(Array.isArray(o))for(let l=0;l<o.length;++l)s.addSubParam(o[l]);else s.addParam(o)}return s}clone(){let t=new xb(this.maxLength,this.maxSubParamsLength);return t.params.set(this.params),t.length=this.length,t._subParams.set(this._subParams),t._subParamsLength=this._subParamsLength,t._subParamsIdx.set(this._subParamsIdx),t._rejectDigits=this._rejectDigits,t._rejectSubDigits=this._rejectSubDigits,t._digitIsSub=this._digitIsSub,t}toArray(){let t=[];for(let s=0;s<this.length;++s){t.push(this.params[s]);let n=this._subParamsIdx[s]>>8,o=this._subParamsIdx[s]&255;o-n>0&&t.push(Array.prototype.slice.call(this._subParams,n,o))}return t}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(t){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(t<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=t>wc?wc:t}addSubParam(t){if(this._digitIsSub=!0,!!this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(t<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=t>wc?wc:t,this._subParamsIdx[this.length-1]++}}hasSubParams(t){return(this._subParamsIdx[t]&255)-(this._subParamsIdx[t]>>8)>0}getSubParams(t){let s=this._subParamsIdx[t]>>8,n=this._subParamsIdx[t]&255;return n-s>0?this._subParams.subarray(s,n):null}getSubParamsAll(){let t={};for(let s=0;s<this.length;++s){let n=this._subParamsIdx[s]>>8,o=this._subParamsIdx[s]&255;o-n>0&&(t[s]=this._subParams.slice(n,o))}return t}addDigit(t){let s;if(this._rejectDigits||!(s=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let n=this._digitIsSub?this._subParams:this.params,o=n[s-1];n[s-1]=~o?Math.min(o*10+t,wc):t}},kc=[],FF=class{constructor(){this._state=0,this._active=kc,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let s=this._handlers[e];return s.push(t),{dispose:()=>{let n=s.indexOf(t);n!==-1&&s.splice(n,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=kc}reset(){if(this._state===2)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=kc,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||kc,!this._active.length)this._handlerFb(this._id,"START");else for(let e=this._active.length-1;e>=0;e--)this._active[e].start()}_put(e,t,s){if(!this._active.length)this._handlerFb(this._id,"PUT",_f(e,t,s));else for(let n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,s)}start(){this.reset(),this._state=1}put(e,t,s){if(this._state!==3){if(this._state===1)for(;t<s;){let n=e[t++];if(n===59){this._state=2,this._start();break}if(n<48||57<n){this._state=3;return}this._id===-1&&(this._id=0),this._id=this._id*10+n-48}this._state===2&&s-t>0&&this._put(e,t,s)}}end(e,t=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),!this._active.length)this._handlerFb(this._id,"END",e);else{let s=!1,n=this._active.length-1,o=!1;if(this._stack.paused&&(n=this._stack.loopPosition-1,s=t,o=this._stack.fallThrough,this._stack.paused=!1),!o&&s===!1){for(;n>=0&&(s=this._active[n].end(e),s!==!0);n--)if(s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!1,s;n--}for(;n>=0;n--)if(s=this._active[n].end(!1),s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!0,s}this._active=kc,this._id=-1,this._state=0}}},jn=class{constructor(e){this._handler=e,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(e,t,s){this._hitLimit||(this._data+=_f(e,t,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(e){let t=!1;if(this._hitLimit)t=!1;else if(e&&(t=this._handler(this._data),t instanceof Promise))return t.then(s=>(this._data="",this._hitLimit=!1,s));return this._data="",this._hitLimit=!1,t}},Cc=[],qF=class{constructor(){this._handlers=Object.create(null),this._active=Cc,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=Cc}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let s=this._handlers[e];return s.push(t),{dispose:()=>{let n=s.indexOf(t);n!==-1&&s.splice(n,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}reset(){if(this._active.length)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=Cc,this._ident=0}hook(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||Cc,!this._active.length)this._handlerFb(this._ident,"HOOK",t);else for(let s=this._active.length-1;s>=0;s--)this._active[s].hook(t)}put(e,t,s){if(!this._active.length)this._handlerFb(this._ident,"PUT",_f(e,t,s));else for(let n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,s)}unhook(e,t=!0){if(!this._active.length)this._handlerFb(this._ident,"UNHOOK",e);else{let s=!1,n=this._active.length-1,o=!1;if(this._stack.paused&&(n=this._stack.loopPosition-1,s=t,o=this._stack.fallThrough,this._stack.paused=!1),!o&&s===!1){for(;n>=0&&(s=this._active[n].unhook(e),s!==!0);n--)if(s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!1,s;n--}for(;n>=0;n--)if(s=this._active[n].unhook(!1),s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=n,this._stack.fallThrough=!0,s}this._active=Cc,this._ident=0}},zc=new h5;zc.addParam(0);var R2=class{constructor(e){this._handler=e,this._data="",this._params=zc,this._hitLimit=!1}hook(e){this._params=e.length>1||e.params[0]?e.clone():zc,this._data="",this._hitLimit=!1}put(e,t,s){this._hitLimit||(this._data+=_f(e,t,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(e){let t=!1;if(this._hitLimit)t=!1;else if(e&&(t=this._handler(this._data,this._params),t instanceof Promise))return t.then(s=>(this._params=zc,this._data="",this._hitLimit=!1,s));return this._params=zc,this._data="",this._hitLimit=!1,t}},VF=class{constructor(e){this.table=new Uint8Array(e)}setDefault(e,t){this.table.fill(e<<4|t)}add(e,t,s,n){this.table[t<<8|e]=s<<4|n}addMany(e,t,s,n){for(let o=0;o<e.length;o++)this.table[t<<8|e[o]]=s<<4|n}},Vn=160,GF=(function(){let e=new VF(4095),t=Array.apply(null,Array(256)).map((h,m)=>m),s=(h,m)=>t.slice(h,m),n=s(32,127),o=s(0,24);o.push(25),o.push.apply(o,s(28,32));let l=s(0,14),u;e.setDefault(1,0),e.addMany(n,0,2,0);for(u in l)e.addMany([24,26,153,154],u,3,0),e.addMany(s(128,144),u,3,0),e.addMany(s(144,152),u,3,0),e.add(156,u,0,0),e.add(27,u,11,1),e.add(157,u,4,8),e.addMany([152,158,159],u,0,7),e.add(155,u,11,3),e.add(144,u,11,9);return e.addMany(o,0,3,0),e.addMany(o,1,3,1),e.add(127,1,0,1),e.addMany(o,8,0,8),e.addMany(o,3,3,3),e.add(127,3,0,3),e.addMany(o,4,3,4),e.add(127,4,0,4),e.addMany(o,6,3,6),e.addMany(o,5,3,5),e.add(127,5,0,5),e.addMany(o,2,3,2),e.add(127,2,0,2),e.add(93,1,4,8),e.addMany(n,8,5,8),e.add(127,8,5,8),e.addMany([156,27,24,26,7],8,6,0),e.addMany(s(28,32),8,0,8),e.addMany([88,94,95],1,0,7),e.addMany(n,7,0,7),e.addMany(o,7,0,7),e.add(156,7,0,0),e.add(127,7,0,7),e.add(91,1,11,3),e.addMany(s(64,127),3,7,0),e.addMany(s(48,60),3,8,4),e.addMany([60,61,62,63],3,9,4),e.addMany(s(48,60),4,8,4),e.addMany(s(64,127),4,7,0),e.addMany([60,61,62,63],4,0,6),e.addMany(s(32,64),6,0,6),e.add(127,6,0,6),e.addMany(s(64,127),6,0,0),e.addMany(s(32,48),3,9,5),e.addMany(s(32,48),5,9,5),e.addMany(s(48,64),5,0,6),e.addMany(s(64,127),5,7,0),e.addMany(s(32,48),4,9,5),e.addMany(s(32,48),1,9,2),e.addMany(s(32,48),2,9,2),e.addMany(s(48,127),2,10,0),e.addMany(s(48,80),1,10,0),e.addMany(s(81,88),1,10,0),e.addMany([89,90,92],1,10,0),e.addMany(s(96,127),1,10,0),e.add(80,1,11,9),e.addMany(o,9,0,9),e.add(127,9,0,9),e.addMany(s(28,32),9,0,9),e.addMany(s(32,48),9,9,12),e.addMany(s(48,60),9,8,10),e.addMany([60,61,62,63],9,9,10),e.addMany(o,11,0,11),e.addMany(s(32,128),11,0,11),e.addMany(s(28,32),11,0,11),e.addMany(o,10,0,10),e.add(127,10,0,10),e.addMany(s(28,32),10,0,10),e.addMany(s(48,60),10,8,10),e.addMany([60,61,62,63],10,0,11),e.addMany(s(32,48),10,9,12),e.addMany(o,12,0,12),e.add(127,12,0,12),e.addMany(s(28,32),12,0,12),e.addMany(s(32,48),12,9,12),e.addMany(s(48,64),12,0,11),e.addMany(s(64,127),12,12,13),e.addMany(s(64,127),10,12,13),e.addMany(s(64,127),9,12,13),e.addMany(o,13,13,13),e.addMany(n,13,13,13),e.add(127,13,0,13),e.addMany([27,156,24,26],13,14,0),e.add(Vn,0,2,0),e.add(Vn,8,5,8),e.add(Vn,6,0,6),e.add(Vn,11,0,11),e.add(Vn,13,13,13),e})(),WF=class extends Je{constructor(e=GF){super(),this._transitions=e,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new h5,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(t,s,n)=>{},this._executeHandlerFb=t=>{},this._csiHandlerFb=(t,s)=>{},this._escHandlerFb=t=>{},this._errorHandlerFb=t=>t,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(It(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new FF),this._dcsParser=this._register(new qF),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(e,t=[64,126]){let s=0;if(e.prefix){if(e.prefix.length>1)throw new Error("only one byte as prefix supported");if(s=e.prefix.charCodeAt(0),s&&60>s||s>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let o=0;o<e.intermediates.length;++o){let l=e.intermediates.charCodeAt(o);if(32>l||l>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");s<<=8,s|=l}}if(e.final.length!==1)throw new Error("final must be a single byte");let n=e.final.charCodeAt(0);if(t[0]>n||n>t[1])throw new Error(`final must be in range ${t[0]} .. ${t[1]}`);return s<<=8,s|=n,s}identToString(e){let t=[];for(;e;)t.push(String.fromCharCode(e&255)),e>>=8;return t.reverse().join("")}setPrintHandler(e){this._printHandler=e}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(e,t){let s=this._identifier(e,[48,126]);this._escHandlers[s]===void 0&&(this._escHandlers[s]=[]);let n=this._escHandlers[s];return n.push(t),{dispose:()=>{let o=n.indexOf(t);o!==-1&&n.splice(o,1)}}}clearEscHandler(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]}setEscHandlerFallback(e){this._escHandlerFb=e}setExecuteHandler(e,t){this._executeHandlers[e.charCodeAt(0)]=t}clearExecuteHandler(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]}setExecuteHandlerFallback(e){this._executeHandlerFb=e}registerCsiHandler(e,t){let s=this._identifier(e);this._csiHandlers[s]===void 0&&(this._csiHandlers[s]=[]);let n=this._csiHandlers[s];return n.push(t),{dispose:()=>{let o=n.indexOf(t);o!==-1&&n.splice(o,1)}}}clearCsiHandler(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]}setCsiHandlerFallback(e){this._csiHandlerFb=e}registerDcsHandler(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)}clearDcsHandler(e){this._dcsParser.clearHandler(this._identifier(e))}setDcsHandlerFallback(e){this._dcsParser.setHandlerFallback(e)}registerOscHandler(e,t){return this._oscParser.registerHandler(e,t)}clearOscHandler(e){this._oscParser.clearHandler(e)}setOscHandlerFallback(e){this._oscParser.setHandlerFallback(e)}setErrorHandler(e){this._errorHandler=e}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(e,t,s,n,o){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=s,this._parseStack.transition=n,this._parseStack.chunkPos=o}parse(e,t,s){let n=0,o=0,l=0,u;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,l=this._parseStack.chunkPos+1;else{if(s===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");let h=this._parseStack.handlers,m=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(s===!1&&m>-1){for(;m>=0&&(u=h[m](this._params),u!==!0);m--)if(u instanceof Promise)return this._parseStack.handlerPos=m,u}this._parseStack.handlers=[];break;case 4:if(s===!1&&m>-1){for(;m>=0&&(u=h[m](),u!==!0);m--)if(u instanceof Promise)return this._parseStack.handlerPos=m,u}this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],u=this._dcsParser.unhook(n!==24&&n!==26,s),u)return u;n===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],u=this._oscParser.end(n!==24&&n!==26,s),u)return u;n===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break}this._parseStack.state=0,l=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=this._parseStack.transition&15}for(let h=l;h<t;++h){switch(n=e[h],o=this._transitions.table[this.currentState<<8|(n<160?n:Vn)],o>>4){case 2:for(let x=h+1;;++x){if(x>=t||(n=e[x])<32||n>126&&n<Vn){this._printHandler(e,h,x),h=x-1;break}if(++x>=t||(n=e[x])<32||n>126&&n<Vn){this._printHandler(e,h,x),h=x-1;break}if(++x>=t||(n=e[x])<32||n>126&&n<Vn){this._printHandler(e,h,x),h=x-1;break}if(++x>=t||(n=e[x])<32||n>126&&n<Vn){this._printHandler(e,h,x),h=x-1;break}}break;case 3:this._executeHandlers[n]?this._executeHandlers[n]():this._executeHandlerFb(n),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:h,code:n,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let m=this._csiHandlers[this._collect<<8|n],d=m?m.length-1:-1;for(;d>=0&&(u=m[d](this._params),u!==!0);d--)if(u instanceof Promise)return this._preserveStack(3,m,d,o,h),u;d<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingJoinState=0;break;case 8:do switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}while(++h<t&&(n=e[h])>47&&n<60);h--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:let p=this._escHandlers[this._collect<<8|n],g=p?p.length-1:-1;for(;g>=0&&(u=p[g](),u!==!0);g--)if(u instanceof Promise)return this._preserveStack(4,p,g,o,h),u;g<0&&this._escHandlerFb(this._collect<<8|n),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(let x=h+1;;++x)if(x>=t||(n=e[x])===24||n===26||n===27||n>127&&n<Vn){this._dcsParser.put(e,h,x),h=x-1;break}break;case 14:if(u=this._dcsParser.unhook(n!==24&&n!==26),u)return this._preserveStack(6,[],0,o,h),u;n===27&&(o|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let x=h+1;;x++)if(x>=t||(n=e[x])<32||n>127&&n<Vn){this._oscParser.put(e,h,x),h=x-1;break}break;case 6:if(u=this._oscParser.end(n!==24&&n!==26),u)return this._preserveStack(5,[],0,o,h),u;n===27&&(o|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break}this.currentState=o&15}}},KF=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,YF=/^[\da-f]+$/;function D2(e){if(!e)return;let t=e.toLowerCase();if(t.indexOf("rgb:")===0){t=t.slice(4);let s=KF.exec(t);if(s){let n=s[1]?15:s[4]?255:s[7]?4095:65535;return[Math.round(parseInt(s[1]||s[4]||s[7]||s[10],16)/n*255),Math.round(parseInt(s[2]||s[5]||s[8]||s[11],16)/n*255),Math.round(parseInt(s[3]||s[6]||s[9]||s[12],16)/n*255)]}}else if(t.indexOf("#")===0&&(t=t.slice(1),YF.exec(t)&&[3,6,9,12].includes(t.length))){let s=t.length/3,n=[0,0,0];for(let o=0;o<3;++o){let l=parseInt(t.slice(s*o,s*o+s),16);n[o]=s===1?l<<4:s===2?l:s===3?l>>4:l>>8}return n}}function gg(e,t){let s=e.toString(16),n=s.length<2?"0"+s:s;switch(t){case 4:return s[0];case 8:return n;case 12:return(n+n).slice(0,3);default:return n+n}}function XF(e,t=16){let[s,n,o]=e;return`rgb:${gg(s,t)}/${gg(n,t)}/${gg(o,t)}`}var ZF={"(":0,")":1,"*":2,"+":3,"-":1,".":2},ta=131072,O2=10;function L2(e,t){if(e>24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}var z2=5e3,B2=0,QF=class extends Je{constructor(e,t,s,n,o,l,u,h,m=new WF){super(),this._bufferService=e,this._charsetService=t,this._coreService=s,this._logService=n,this._optionsService=o,this._oscLinkService=l,this._coreMouseService=u,this._unicodeService=h,this._parser=m,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new bH,this._utf8Decoder=new xH,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=as.clone(),this._eraseAttrDataInternal=as.clone(),this._onRequestBell=this._register(new be),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new be),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new be),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new be),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new be),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new be),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new be),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new be),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new be),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new be),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new be),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new be),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new be),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new vb(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(d=>this._activeBuffer=d.activeBuffer)),this._parser.setCsiHandlerFallback((d,p)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(d),params:p.toArray()})}),this._parser.setEscHandlerFallback(d=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(d)})}),this._parser.setExecuteHandlerFallback(d=>{this._logService.debug("Unknown EXECUTE code: ",{code:d})}),this._parser.setOscHandlerFallback((d,p,g)=>{this._logService.debug("Unknown OSC code: ",{identifier:d,action:p,data:g})}),this._parser.setDcsHandlerFallback((d,p,g)=>{p==="HOOK"&&(g=g.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(d),action:p,payload:g})}),this._parser.setPrintHandler((d,p,g)=>this.print(d,p,g)),this._parser.registerCsiHandler({final:"@"},d=>this.insertChars(d)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},d=>this.scrollLeft(d)),this._parser.registerCsiHandler({final:"A"},d=>this.cursorUp(d)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},d=>this.scrollRight(d)),this._parser.registerCsiHandler({final:"B"},d=>this.cursorDown(d)),this._parser.registerCsiHandler({final:"C"},d=>this.cursorForward(d)),this._parser.registerCsiHandler({final:"D"},d=>this.cursorBackward(d)),this._parser.registerCsiHandler({final:"E"},d=>this.cursorNextLine(d)),this._parser.registerCsiHandler({final:"F"},d=>this.cursorPrecedingLine(d)),this._parser.registerCsiHandler({final:"G"},d=>this.cursorCharAbsolute(d)),this._parser.registerCsiHandler({final:"H"},d=>this.cursorPosition(d)),this._parser.registerCsiHandler({final:"I"},d=>this.cursorForwardTab(d)),this._parser.registerCsiHandler({final:"J"},d=>this.eraseInDisplay(d,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},d=>this.eraseInDisplay(d,!0)),this._parser.registerCsiHandler({final:"K"},d=>this.eraseInLine(d,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},d=>this.eraseInLine(d,!0)),this._parser.registerCsiHandler({final:"L"},d=>this.insertLines(d)),this._parser.registerCsiHandler({final:"M"},d=>this.deleteLines(d)),this._parser.registerCsiHandler({final:"P"},d=>this.deleteChars(d)),this._parser.registerCsiHandler({final:"S"},d=>this.scrollUp(d)),this._parser.registerCsiHandler({final:"T"},d=>this.scrollDown(d)),this._parser.registerCsiHandler({final:"X"},d=>this.eraseChars(d)),this._parser.registerCsiHandler({final:"Z"},d=>this.cursorBackwardTab(d)),this._parser.registerCsiHandler({final:"`"},d=>this.charPosAbsolute(d)),this._parser.registerCsiHandler({final:"a"},d=>this.hPositionRelative(d)),this._parser.registerCsiHandler({final:"b"},d=>this.repeatPrecedingCharacter(d)),this._parser.registerCsiHandler({final:"c"},d=>this.sendDeviceAttributesPrimary(d)),this._parser.registerCsiHandler({prefix:">",final:"c"},d=>this.sendDeviceAttributesSecondary(d)),this._parser.registerCsiHandler({final:"d"},d=>this.linePosAbsolute(d)),this._parser.registerCsiHandler({final:"e"},d=>this.vPositionRelative(d)),this._parser.registerCsiHandler({final:"f"},d=>this.hVPosition(d)),this._parser.registerCsiHandler({final:"g"},d=>this.tabClear(d)),this._parser.registerCsiHandler({final:"h"},d=>this.setMode(d)),this._parser.registerCsiHandler({prefix:"?",final:"h"},d=>this.setModePrivate(d)),this._parser.registerCsiHandler({final:"l"},d=>this.resetMode(d)),this._parser.registerCsiHandler({prefix:"?",final:"l"},d=>this.resetModePrivate(d)),this._parser.registerCsiHandler({final:"m"},d=>this.charAttributes(d)),this._parser.registerCsiHandler({final:"n"},d=>this.deviceStatus(d)),this._parser.registerCsiHandler({prefix:"?",final:"n"},d=>this.deviceStatusPrivate(d)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},d=>this.softReset(d)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},d=>this.setCursorStyle(d)),this._parser.registerCsiHandler({final:"r"},d=>this.setScrollRegion(d)),this._parser.registerCsiHandler({final:"s"},d=>this.saveCursor(d)),this._parser.registerCsiHandler({final:"t"},d=>this.windowOptions(d)),this._parser.registerCsiHandler({final:"u"},d=>this.restoreCursor(d)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},d=>this.insertColumns(d)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},d=>this.deleteColumns(d)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},d=>this.selectProtected(d)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},d=>this.requestMode(d,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},d=>this.requestMode(d,!1)),this._parser.setExecuteHandler(ue.BEL,()=>this.bell()),this._parser.setExecuteHandler(ue.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(ue.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(ue.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(ue.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(ue.BS,()=>this.backspace()),this._parser.setExecuteHandler(ue.HT,()=>this.tab()),this._parser.setExecuteHandler(ue.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(ue.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(Sh.IND,()=>this.index()),this._parser.setExecuteHandler(Sh.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(Sh.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new jn(d=>(this.setTitle(d),this.setIconName(d),!0))),this._parser.registerOscHandler(1,new jn(d=>this.setIconName(d))),this._parser.registerOscHandler(2,new jn(d=>this.setTitle(d))),this._parser.registerOscHandler(4,new jn(d=>this.setOrReportIndexedColor(d))),this._parser.registerOscHandler(8,new jn(d=>this.setHyperlink(d))),this._parser.registerOscHandler(10,new jn(d=>this.setOrReportFgColor(d))),this._parser.registerOscHandler(11,new jn(d=>this.setOrReportBgColor(d))),this._parser.registerOscHandler(12,new jn(d=>this.setOrReportCursorColor(d))),this._parser.registerOscHandler(104,new jn(d=>this.restoreIndexedColor(d))),this._parser.registerOscHandler(110,new jn(d=>this.restoreFgColor(d))),this._parser.registerOscHandler(111,new jn(d=>this.restoreBgColor(d))),this._parser.registerOscHandler(112,new jn(d=>this.restoreCursorColor(d))),this._parser.registerEscHandler({final:"7"},()=>this.saveCursor()),this._parser.registerEscHandler({final:"8"},()=>this.restoreCursor()),this._parser.registerEscHandler({final:"D"},()=>this.index()),this._parser.registerEscHandler({final:"E"},()=>this.nextLine()),this._parser.registerEscHandler({final:"H"},()=>this.tabSet()),this._parser.registerEscHandler({final:"M"},()=>this.reverseIndex()),this._parser.registerEscHandler({final:"="},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:">"},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:"c"},()=>this.fullReset()),this._parser.registerEscHandler({final:"n"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"o"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"|"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"}"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"~"},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:"%",final:"@"},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:"%",final:"G"},()=>this.selectDefaultCharset());for(let d in vs)this._parser.registerEscHandler({intermediates:"(",final:d},()=>this.selectCharset("("+d)),this._parser.registerEscHandler({intermediates:")",final:d},()=>this.selectCharset(")"+d)),this._parser.registerEscHandler({intermediates:"*",final:d},()=>this.selectCharset("*"+d)),this._parser.registerEscHandler({intermediates:"+",final:d},()=>this.selectCharset("+"+d)),this._parser.registerEscHandler({intermediates:"-",final:d},()=>this.selectCharset("-"+d)),this._parser.registerEscHandler({intermediates:".",final:d},()=>this.selectCharset("."+d)),this._parser.registerEscHandler({intermediates:"/",final:d},()=>this.selectCharset("/"+d));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(d=>(this._logService.error("Parsing error: ",d),d)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new R2((d,p)=>this.requestStatusString(d,p)))}getAttrData(){return this._curAttrData}_preserveStack(e,t,s,n){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=s,this._parseStack.position=n}_logSlowResolvingAsync(e){this._logService.logLevel<=3&&Promise.race([e,new Promise((t,s)=>setTimeout(()=>s("#SLOW_TIMEOUT"),z2))]).catch(t=>{if(t!=="#SLOW_TIMEOUT")throw t;console.warn(`async parser handler taking longer than ${z2} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(e,t){let s,n=this._activeBuffer.x,o=this._activeBuffer.y,l=0,u=this._parseStack.paused;if(u){if(s=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(s),s;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>ta&&(l=this._parseStack.position+ta)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof e=="string"?` "${e}"`:` "${Array.prototype.map.call(e,d=>String.fromCharCode(d)).join("")}"`}`),this._logService.logLevel===0&&this._logService.trace("parsing data (codes)",typeof e=="string"?e.split("").map(d=>d.charCodeAt(0)):e),this._parseBuffer.length<e.length&&this._parseBuffer.length<ta&&(this._parseBuffer=new Uint32Array(Math.min(e.length,ta))),u||this._dirtyRowTracker.clearRange(),e.length>ta)for(let d=l;d<e.length;d+=ta){let p=d+ta<e.length?d+ta:e.length,g=typeof e=="string"?this._stringDecoder.decode(e.substring(d,p),this._parseBuffer):this._utf8Decoder.decode(e.subarray(d,p),this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,g))return this._preserveStack(n,o,g,d),this._logSlowResolvingAsync(s),s}else if(!u){let d=typeof e=="string"?this._stringDecoder.decode(e,this._parseBuffer):this._utf8Decoder.decode(e,this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,d))return this._preserveStack(n,o,d,0),this._logSlowResolvingAsync(s),s}(this._activeBuffer.x!==n||this._activeBuffer.y!==o)&&this._onCursorMove.fire();let h=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),m=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);m<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(m,this._bufferService.rows-1),end:Math.min(h,this._bufferService.rows-1)})}print(e,t,s){let n,o,l=this._charsetService.charset,u=this._optionsService.rawOptions.screenReaderMode,h=this._bufferService.cols,m=this._coreService.decPrivateModes.wraparound,d=this._coreService.modes.insertMode,p=this._curAttrData,g=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&s-t>0&&g.getWidth(this._activeBuffer.x-1)===2&&g.setCellFromCodepoint(this._activeBuffer.x-1,0,1,p);let x=this._parser.precedingJoinState;for(let _=t;_<s;++_){if(n=e[_],n<127&&l){let N=l[String.fromCharCode(n)];N&&(n=N.charCodeAt(0))}let S=this._unicodeService.charProperties(n,x);o=Va.extractWidth(S);let w=Va.extractShouldJoin(S),C=w?Va.extractWidth(x):0;if(x=S,u&&this._onA11yChar.fire(na(n)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+o-C>h){if(m){let N=g,j=this._activeBuffer.x-C;for(this._activeBuffer.x=C,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),g=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),C>0&&g instanceof Oc&&g.copyCellsFrom(N,j,0,C,!1);j<h;)N.setCellFromCodepoint(j++,0,1,p)}else if(this._activeBuffer.x=h-1,o===2)continue}if(w&&this._activeBuffer.x){let N=g.getWidth(this._activeBuffer.x-1)?1:2;g.addCodepointToCell(this._activeBuffer.x-N,n,o);for(let j=o-C;--j>=0;)g.setCellFromCodepoint(this._activeBuffer.x++,0,0,p);continue}if(d&&(g.insertCells(this._activeBuffer.x,o-C,this._activeBuffer.getNullCell(p)),g.getWidth(h-1)===2&&g.setCellFromCodepoint(h-1,0,1,p)),g.setCellFromCodepoint(this._activeBuffer.x++,n,o,p),o>0)for(;--o;)g.setCellFromCodepoint(this._activeBuffer.x++,0,0,p)}this._parser.precedingJoinState=x,this._activeBuffer.x<h&&s-t>0&&g.getWidth(this._activeBuffer.x)===0&&!g.hasContent(this._activeBuffer.x)&&g.setCellFromCodepoint(this._activeBuffer.x,0,1,p),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(e,t){return e.final==="t"&&!e.prefix&&!e.intermediates?this._parser.registerCsiHandler(e,s=>L2(s.params[0],this._optionsService.rawOptions.windowOptions)?t(s):!0):this._parser.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._parser.registerDcsHandler(e,new R2(t))}registerEscHandler(e,t){return this._parser.registerEscHandler(e,t)}registerOscHandler(e,t){return this._parser.registerOscHandler(e,new jn(t))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);e.hasWidth(this._activeBuffer.x)&&!e.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-e),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(e=this._bufferService.cols-1){this._activeBuffer.x=Math.min(e,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(e,t){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=e,this._activeBuffer.y=this._activeBuffer.scrollTop+t):(this._activeBuffer.x=e,this._activeBuffer.y=t),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(e,t){this._restrictCursor(),this._setCursor(this._activeBuffer.x+e,this._activeBuffer.y+t)}cursorUp(e){let t=this._activeBuffer.y-this._activeBuffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0}cursorDown(e){let t=this._activeBuffer.scrollBottom-this._activeBuffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0}cursorForward(e){return this._moveCursor(e.params[0]||1,0),!0}cursorBackward(e){return this._moveCursor(-(e.params[0]||1),0),!0}cursorNextLine(e){return this.cursorDown(e),this._activeBuffer.x=0,!0}cursorPrecedingLine(e){return this.cursorUp(e),this._activeBuffer.x=0,!0}cursorCharAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0}charPosAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(e){return this._moveCursor(e.params[0]||1,0),!0}linePosAbsolute(e){return this._setCursor(this._activeBuffer.x,(e.params[0]||1)-1),!0}vPositionRelative(e){return this._moveCursor(0,e.params[0]||1),!0}hVPosition(e){return this.cursorPosition(e),!0}tabClear(e){let t=e.params[0];return t===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:t===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(e){let t=e.params[0];return t===1&&(this._curAttrData.bg|=536870912),(t===2||t===0)&&(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(e,t,s,n=!1,o=!1){let l=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);l.replaceCells(t,s,this._activeBuffer.getNullCell(this._eraseAttrData()),o),n&&(l.isWrapped=!1)}_resetBufferLine(e,t=!1){let s=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);s&&(s.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),t),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+e),s.isWrapped=!1)}eraseInDisplay(e,t=!1){this._restrictCursor(this._bufferService.cols);let s;switch(e.params[0]){case 0:for(s=this._activeBuffer.y,this._dirtyRowTracker.markDirty(s),this._eraseInBufferLine(s++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);s<this._bufferService.rows;s++)this._resetBufferLine(s,t);this._dirtyRowTracker.markDirty(s);break;case 1:for(s=this._activeBuffer.y,this._dirtyRowTracker.markDirty(s),this._eraseInBufferLine(s,0,this._activeBuffer.x+1,!0,t),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(s+1).isWrapped=!1);s--;)this._resetBufferLine(s,t);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(s=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,s-1);s--&&!this._activeBuffer.lines.get(this._activeBuffer.ybase+s)?.getTrimmedLength(););for(;s>=0;s--)this._bufferService.scroll(this._eraseAttrData())}else{for(s=this._bufferService.rows,this._dirtyRowTracker.markDirty(s-1);s--;)this._resetBufferLine(s,t);this._dirtyRowTracker.markDirty(0)}break;case 3:let n=this._activeBuffer.lines.length-this._bufferService.rows;n>0&&(this._activeBuffer.lines.trimStart(n),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-n,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-n,0),this._onScroll.fire(0));break}return!0}eraseInLine(e,t=!1){switch(this._restrictCursor(this._bufferService.cols),e.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,t);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,t);break}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(e){this._restrictCursor();let t=e.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let s=this._activeBuffer.ybase+this._activeBuffer.y,n=this._bufferService.rows-1-this._activeBuffer.scrollBottom,o=this._bufferService.rows-1+this._activeBuffer.ybase-n+1;for(;t--;)this._activeBuffer.lines.splice(o-1,1),this._activeBuffer.lines.splice(s,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(e){this._restrictCursor();let t=e.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let s=this._activeBuffer.ybase+this._activeBuffer.y,n;for(n=this._bufferService.rows-1-this._activeBuffer.scrollBottom,n=this._bufferService.rows-1+this._activeBuffer.ybase-n;t--;)this._activeBuffer.lines.splice(s,1),this._activeBuffer.lines.splice(n,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.insertCells(this._activeBuffer.x,e.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.deleteCells(this._activeBuffer.x,e.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(e){let t=e.params[0]||1;for(;t--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(e){let t=e.params[0]||1;for(;t--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(as));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);n.deleteCells(0,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);n.insertCells(0,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);n.insertCells(this._activeBuffer.x,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);n.deleteCells(this._activeBuffer.x,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(e.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(e){let t=this._parser.precedingJoinState;if(!t)return!0;let s=e.params[0]||1,n=Va.extractWidth(t),o=this._activeBuffer.x-n,l=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(o),u=new Uint32Array(l.length*s),h=0;for(let d=0;d<l.length;){let p=l.codePointAt(d)||0;u[h++]=p,d+=p>65535?2:1}let m=h;for(let d=1;d<s;++d)u.copyWithin(m,0,h),m+=h;return this.print(u,0,m),!0}sendDeviceAttributesPrimary(e){return e.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(ue.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(ue.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(ue.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(ue.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(ue.ESC+"[>83;40003;0c")),!0}_is(e){return(this._optionsService.rawOptions.termName+"").indexOf(e)===0}setMode(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0;break}return!0}setModePrivate(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,Ha),this._charsetService.setgCharset(1,Ha),this._charsetService.setgCharset(2,Ha),this._charsetService.setgCharset(3,Ha);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol="X10";break;case 1e3:this._coreMouseService.activeProtocol="VT200";break;case 1002:this._coreMouseService.activeProtocol="DRAG";break;case 1003:this._coreMouseService.activeProtocol="ANY";break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug("DECSET 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="SGR";break;case 1015:this._logService.debug("DECSET 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="SGR_PIXELS";break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0;break}return!0}resetMode(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1;break}return!0}resetModePrivate(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol="NONE";break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug("DECRST 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),e.params[t]===1049&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0);break}return!0}requestMode(e,t){let s;(w=>(w[w.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",w[w.SET=1]="SET",w[w.RESET=2]="RESET",w[w.PERMANENTLY_SET=3]="PERMANENTLY_SET",w[w.PERMANENTLY_RESET=4]="PERMANENTLY_RESET"))(s||={});let n=this._coreService.decPrivateModes,{activeProtocol:o,activeEncoding:l}=this._coreMouseService,u=this._coreService,{buffers:h,cols:m}=this._bufferService,{active:d,alt:p}=h,g=this._optionsService.rawOptions,x=(w,C)=>(u.triggerDataEvent(`${ue.ESC}[${t?"":"?"}${w};${C}$y`),!0),_=w=>w?1:2,S=e.params[0];return t?S===2?x(S,4):S===4?x(S,_(u.modes.insertMode)):S===12?x(S,3):S===20?x(S,_(g.convertEol)):x(S,0):S===1?x(S,_(n.applicationCursorKeys)):S===3?x(S,g.windowOptions.setWinLines?m===80?2:m===132?1:0:0):S===6?x(S,_(n.origin)):S===7?x(S,_(n.wraparound)):S===8?x(S,3):S===9?x(S,_(o==="X10")):S===12?x(S,_(g.cursorBlink)):S===25?x(S,_(!u.isCursorHidden)):S===45?x(S,_(n.reverseWraparound)):S===66?x(S,_(n.applicationKeypad)):S===67?x(S,4):S===1e3?x(S,_(o==="VT200")):S===1002?x(S,_(o==="DRAG")):S===1003?x(S,_(o==="ANY")):S===1004?x(S,_(n.sendFocus)):S===1005?x(S,4):S===1006?x(S,_(l==="SGR")):S===1015?x(S,4):S===1016?x(S,_(l==="SGR_PIXELS")):S===1048?x(S,1):S===47||S===1047||S===1049?x(S,_(d===p)):S===2004?x(S,_(n.bracketedPasteMode)):S===2026?x(S,_(n.synchronizedOutput)):x(S,0)}_updateAttrColor(e,t,s,n,o){return t===2?(e|=50331648,e&=-16777216,e|=yu.fromColorRGB([s,n,o])):t===5&&(e&=-50331904,e|=33554432|s&255),e}_extractColor(e,t,s){let n=[0,0,-1,0,0,0],o=0,l=0;do{if(n[l+o]=e.params[t+l],e.hasSubParams(t+l)){let u=e.getSubParams(t+l),h=0;do n[1]===5&&(o=1),n[l+h+1+o]=u[h];while(++h<u.length&&h+l+1+o<n.length);break}if(n[1]===5&&l+o>=2||n[1]===2&&l+o>=5)break;n[1]&&(o=1)}while(++l+t<e.length&&l+o<n.length);for(let u=2;u<n.length;++u)n[u]===-1&&(n[u]=0);switch(n[0]){case 38:s.fg=this._updateAttrColor(s.fg,n[1],n[3],n[4],n[5]);break;case 48:s.bg=this._updateAttrColor(s.bg,n[1],n[3],n[4],n[5]);break;case 58:s.extended=s.extended.clone(),s.extended.underlineColor=this._updateAttrColor(s.extended.underlineColor,n[1],n[3],n[4],n[5])}return l}_processUnderline(e,t){t.extended=t.extended.clone(),(!~e||e>5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,e===0&&(t.fg&=-268435457),t.updateExtended()}_processSGR0(e){e.fg=as.fg,e.bg=as.bg,e.extended=e.extended.clone(),e.extended.underlineStyle=0,e.extended.underlineColor&=-67108864,e.updateExtended()}charAttributes(e){if(e.length===1&&e.params[0]===0)return this._processSGR0(this._curAttrData),!0;let t=e.length,s,n=this._curAttrData;for(let o=0;o<t;o++)s=e.params[o],s>=30&&s<=37?(n.fg&=-50331904,n.fg|=16777216|s-30):s>=40&&s<=47?(n.bg&=-50331904,n.bg|=16777216|s-40):s>=90&&s<=97?(n.fg&=-50331904,n.fg|=16777216|s-90|8):s>=100&&s<=107?(n.bg&=-50331904,n.bg|=16777216|s-100|8):s===0?this._processSGR0(n):s===1?n.fg|=134217728:s===3?n.bg|=67108864:s===4?(n.fg|=268435456,this._processUnderline(e.hasSubParams(o)?e.getSubParams(o)[0]:1,n)):s===5?n.fg|=536870912:s===7?n.fg|=67108864:s===8?n.fg|=1073741824:s===9?n.fg|=2147483648:s===2?n.bg|=134217728:s===21?this._processUnderline(2,n):s===22?(n.fg&=-134217729,n.bg&=-134217729):s===23?n.bg&=-67108865:s===24?(n.fg&=-268435457,this._processUnderline(0,n)):s===25?n.fg&=-536870913:s===27?n.fg&=-67108865:s===28?n.fg&=-1073741825:s===29?n.fg&=2147483647:s===39?(n.fg&=-67108864,n.fg|=as.fg&16777215):s===49?(n.bg&=-67108864,n.bg|=as.bg&16777215):s===38||s===48||s===58?o+=this._extractColor(e,o,n):s===53?n.bg|=1073741824:s===55?n.bg&=-1073741825:s===59?(n.extended=n.extended.clone(),n.extended.underlineColor=-1,n.updateExtended()):s===100?(n.fg&=-67108864,n.fg|=as.fg&16777215,n.bg&=-67108864,n.bg|=as.bg&16777215):this._logService.debug("Unknown SGR attribute: %d.",s);return!0}deviceStatus(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(`${ue.ESC}[0n`);break;case 6:let t=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${ue.ESC}[${t};${s}R`);break}return!0}deviceStatusPrivate(e){if(e.params[0]===6){let t=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${ue.ESC}[?${t};${s}R`)}return!0}softReset(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=as.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(e){let t=e.length===0?1:e.params[0];if(t===0)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(t){case 1:case 2:this._coreService.decPrivateModes.cursorStyle="block";break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle="underline";break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle="bar";break}let s=t%2===1;this._coreService.decPrivateModes.cursorBlink=s}return!0}setScrollRegion(e){let t=e.params[0]||1,s;return(e.length<2||(s=e.params[1])>this._bufferService.rows||s===0)&&(s=this._bufferService.rows),s>t&&(this._activeBuffer.scrollTop=t-1,this._activeBuffer.scrollBottom=s-1,this._setCursor(0,0)),!0}windowOptions(e){if(!L2(e.params[0],this._optionsService.rawOptions.windowOptions))return!0;let t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:t!==2&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${ue.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(t===0||t===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>O2&&this._windowTitleStack.shift()),(t===0||t===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>O2&&this._iconNameStack.shift());break;case 23:(t===0||t===2)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(t===0||t===1)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop());break}return!0}saveCursor(e){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(e){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0}setIconName(e){return this._iconName=e,!0}setOrReportIndexedColor(e){let t=[],s=e.split(";");for(;s.length>1;){let n=s.shift(),o=s.shift();if(/^\d+$/.exec(n)){let l=parseInt(n);if(I2(l))if(o==="?")t.push({type:0,index:l});else{let u=D2(o);u&&t.push({type:1,index:l,color:u})}}}return t.length&&this._onColor.fire(t),!0}setHyperlink(e){let t=e.indexOf(";");if(t===-1)return!0;let s=e.slice(0,t).trim(),n=e.slice(t+1);return n?this._createHyperlink(s,n):s.trim()?!1:this._finishHyperlink()}_createHyperlink(e,t){this._getCurrentLinkId()&&this._finishHyperlink();let s=e.split(":"),n,o=s.findIndex(l=>l.startsWith("id="));return o!==-1&&(n=s[o].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:n,uri:t}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(e,t){let s=e.split(";");for(let n=0;n<s.length&&!(t>=this._specialColors.length);++n,++t)if(s[n]==="?")this._onColor.fire([{type:0,index:this._specialColors[t]}]);else{let o=D2(s[n]);o&&this._onColor.fire([{type:1,index:this._specialColors[t],color:o}])}return!0}setOrReportFgColor(e){return this._setOrReportSpecialColor(e,0)}setOrReportBgColor(e){return this._setOrReportSpecialColor(e,1)}setOrReportCursorColor(e){return this._setOrReportSpecialColor(e,2)}restoreIndexedColor(e){if(!e)return this._onColor.fire([{type:2}]),!0;let t=[],s=e.split(";");for(let n=0;n<s.length;++n)if(/^\d+$/.exec(s[n])){let o=parseInt(s[n]);I2(o)&&t.push({type:2,index:o})}return t.length&&this._onColor.fire(t),!0}restoreFgColor(e){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(e){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(e){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,Ha),!0}selectCharset(e){return e.length!==2?(this.selectDefaultCharset(),!0):(e[0]==="/"||this._charsetService.setgCharset(ZF[e[0]],vs[e[1]]||Ha),!0)}index(){return this._restrictCursor(),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let e=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,e,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=as.clone(),this._eraseAttrDataInternal=as.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=this._curAttrData.bg&67108863,this._eraseAttrDataInternal}setgLevel(e){return this._charsetService.setgLevel(e),!0}screenAlignmentPattern(){let e=new Kn;e.content=1<<22|69,e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg,this._setCursor(0,0);for(let t=0;t<this._bufferService.rows;++t){let s=this._activeBuffer.ybase+this._activeBuffer.y+t,n=this._activeBuffer.lines.get(s);n&&(n.fill(e),n.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(e,t){let s=u=>(this._coreService.triggerDataEvent(`${ue.ESC}${u}${ue.ESC}\\`),!0),n=this._bufferService.buffer,o=this._optionsService.rawOptions;return s(e==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:e==='"p'?'P1$r61;1"p':e==="r"?`P1$r${n.scrollTop+1};${n.scrollBottom+1}r`:e==="m"?"P1$r0m":e===" q"?`P1$r${{block:2,underline:4,bar:6}[o.cursorStyle]-(o.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(e,t){this._dirtyRowTracker.markRangeDirty(e,t)}},vb=class{constructor(e){this._bufferService=e,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(e){e<this.start?this.start=e:e>this.end&&(this.end=e)}markRangeDirty(e,t){e>t&&(B2=e,e=t,t=B2),e<this.start&&(this.start=e),t>this.end&&(this.end=t)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};vb=Wt([we(0,en)],vb);function I2(e){return 0<=e&&e<256}var JF=5e7,P2=12,eq=50,tq=class extends Je{constructor(e){super(),this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new be),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(e,t){if(t!==void 0&&this._syncCalls>t){this._syncCalls=0;return}if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;this._isSyncWriting=!0;let s;for(;s=this._writeBuffer.shift();){this._action(s);let n=this._callbacks.shift();n&&n()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(e,t){if(this._pendingData>JF)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)}_innerWrite(e=0,t=!0){let s=e||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let n=this._writeBuffer[this._bufferOffset],o=this._action(n,t);if(o){let u=h=>performance.now()-s>=P2?setTimeout(()=>this._innerWrite(0,h)):this._innerWrite(s,h);o.catch(h=>(queueMicrotask(()=>{throw h}),Promise.resolve(!1))).then(u);return}let l=this._callbacks[this._bufferOffset];if(l&&l(),this._bufferOffset++,this._pendingData-=n.length,performance.now()-s>=P2)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>eq&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},_b=class{constructor(e){this._bufferService=e,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(e){let t=this._bufferService.buffer;if(e.id===void 0){let h=t.addMarker(t.ybase+t.y),m={data:e,id:this._nextId++,lines:[h]};return h.onDispose(()=>this._removeMarkerFromLink(m,h)),this._dataByLinkId.set(m.id,m),m.id}let s=e,n=this._getEntryIdKey(s),o=this._entriesWithId.get(n);if(o)return this.addLineToLink(o.id,t.ybase+t.y),o.id;let l=t.addMarker(t.ybase+t.y),u={id:this._nextId++,key:this._getEntryIdKey(s),data:s,lines:[l]};return l.onDispose(()=>this._removeMarkerFromLink(u,l)),this._entriesWithId.set(u.key,u),this._dataByLinkId.set(u.id,u),u.id}addLineToLink(e,t){let s=this._dataByLinkId.get(e);if(s&&s.lines.every(n=>n.line!==t)){let n=this._bufferService.buffer.addMarker(t);s.lines.push(n),n.onDispose(()=>this._removeMarkerFromLink(s,n))}}getLinkData(e){return this._dataByLinkId.get(e)?.data}_getEntryIdKey(e){return`${e.id};;${e.uri}`}_removeMarkerFromLink(e,t){let s=e.lines.indexOf(t);s!==-1&&(e.lines.splice(s,1),e.lines.length===0&&(e.data.id!==void 0&&this._entriesWithId.delete(e.key),this._dataByLinkId.delete(e.id)))}};_b=Wt([we(0,en)],_b);var $2=!1,sq=class extends Je{constructor(e){super(),this._windowsWrappingHeuristics=this._register(new ul),this._onBinary=this._register(new be),this.onBinary=this._onBinary.event,this._onData=this._register(new be),this.onData=this._onData.event,this._onLineFeed=this._register(new be),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new be),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new be),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new be),this._instantiationService=new NF,this.optionsService=this._register(new zF(e)),this._instantiationService.setService(tn,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(pb)),this._instantiationService.setService(en,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(mb)),this._instantiationService.setService(M3,this._logService),this.coreService=this._register(this._instantiationService.createInstance(gb)),this._instantiationService.setService(no,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(bb)),this._instantiationService.setService(A3,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(Va)),this._instantiationService.setService(SH,this.unicodeService),this._charsetService=this._instantiationService.createInstance(HF),this._instantiationService.setService(yH,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(_b),this._instantiationService.setService(R3,this._oscLinkService),this._inputHandler=this._register(new QF(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(Bs.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(Bs.forward(this._bufferService.onResize,this._onResize)),this._register(Bs.forward(this.coreService.onData,this._onData)),this._register(Bs.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new tq((t,s)=>this._inputHandler.parse(t,s))),this._register(Bs.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new be),this._onScroll.event(e=>{this._onScrollApi?.fire(e.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(e){for(let t in e)this.optionsService.options[t]=e[t]}write(e,t){this._writeBuffer.write(e,t)}writeSync(e,t){this._logService.logLevel<=3&&!$2&&(this._logService.warn("writeSync is unreliable and will be removed soon."),$2=!0),this._writeBuffer.writeSync(e,t)}input(e,t=!0){this.coreService.triggerDataEvent(e,t)}resize(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,u5),t=Math.max(t,d5),this._bufferService.resize(e,t))}scroll(e,t=!1){this._bufferService.scroll(e,t)}scrollLines(e,t){this._bufferService.scrollLines(e,t)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}registerEscHandler(e,t){return this._inputHandler.registerEscHandler(e,t)}registerDcsHandler(e,t){return this._inputHandler.registerDcsHandler(e,t)}registerCsiHandler(e,t){return this._inputHandler.registerCsiHandler(e,t)}registerOscHandler(e,t){return this._inputHandler.registerOscHandler(e,t)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let e=!1,t=this.optionsService.rawOptions.windowsPty;t&&t.buildNumber!==void 0&&t.buildNumber!==void 0?e=t.backend==="conpty"&&t.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(e=!0),e?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let e=[];e.push(this.onLineFeed(M2.bind(null,this._bufferService))),e.push(this.registerCsiHandler({final:"H"},()=>(M2(this._bufferService),!1))),this._windowsWrappingHeuristics.value=It(()=>{for(let t of e)t.dispose()})}}},nq={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};function iq(e,t,s,n){let o={type:0,cancel:!1,key:void 0},l=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:e.key==="UIKeyInputUpArrow"?t?o.key=ue.ESC+"OA":o.key=ue.ESC+"[A":e.key==="UIKeyInputLeftArrow"?t?o.key=ue.ESC+"OD":o.key=ue.ESC+"[D":e.key==="UIKeyInputRightArrow"?t?o.key=ue.ESC+"OC":o.key=ue.ESC+"[C":e.key==="UIKeyInputDownArrow"&&(t?o.key=ue.ESC+"OB":o.key=ue.ESC+"[B");break;case 8:o.key=e.ctrlKey?"\b":ue.DEL,e.altKey&&(o.key=ue.ESC+o.key);break;case 9:if(e.shiftKey){o.key=ue.ESC+"[Z";break}o.key=ue.HT,o.cancel=!0;break;case 13:o.key=e.altKey?ue.ESC+ue.CR:ue.CR,o.cancel=!0;break;case 27:o.key=ue.ESC,e.altKey&&(o.key=ue.ESC+ue.ESC),o.cancel=!0;break;case 37:if(e.metaKey)break;l?o.key=ue.ESC+"[1;"+(l+1)+"D":t?o.key=ue.ESC+"OD":o.key=ue.ESC+"[D";break;case 39:if(e.metaKey)break;l?o.key=ue.ESC+"[1;"+(l+1)+"C":t?o.key=ue.ESC+"OC":o.key=ue.ESC+"[C";break;case 38:if(e.metaKey)break;l?o.key=ue.ESC+"[1;"+(l+1)+"A":t?o.key=ue.ESC+"OA":o.key=ue.ESC+"[A";break;case 40:if(e.metaKey)break;l?o.key=ue.ESC+"[1;"+(l+1)+"B":t?o.key=ue.ESC+"OB":o.key=ue.ESC+"[B";break;case 45:!e.shiftKey&&!e.ctrlKey&&(o.key=ue.ESC+"[2~");break;case 46:l?o.key=ue.ESC+"[3;"+(l+1)+"~":o.key=ue.ESC+"[3~";break;case 36:l?o.key=ue.ESC+"[1;"+(l+1)+"H":t?o.key=ue.ESC+"OH":o.key=ue.ESC+"[H";break;case 35:l?o.key=ue.ESC+"[1;"+(l+1)+"F":t?o.key=ue.ESC+"OF":o.key=ue.ESC+"[F";break;case 33:e.shiftKey?o.type=2:e.ctrlKey?o.key=ue.ESC+"[5;"+(l+1)+"~":o.key=ue.ESC+"[5~";break;case 34:e.shiftKey?o.type=3:e.ctrlKey?o.key=ue.ESC+"[6;"+(l+1)+"~":o.key=ue.ESC+"[6~";break;case 112:l?o.key=ue.ESC+"[1;"+(l+1)+"P":o.key=ue.ESC+"OP";break;case 113:l?o.key=ue.ESC+"[1;"+(l+1)+"Q":o.key=ue.ESC+"OQ";break;case 114:l?o.key=ue.ESC+"[1;"+(l+1)+"R":o.key=ue.ESC+"OR";break;case 115:l?o.key=ue.ESC+"[1;"+(l+1)+"S":o.key=ue.ESC+"OS";break;case 116:l?o.key=ue.ESC+"[15;"+(l+1)+"~":o.key=ue.ESC+"[15~";break;case 117:l?o.key=ue.ESC+"[17;"+(l+1)+"~":o.key=ue.ESC+"[17~";break;case 118:l?o.key=ue.ESC+"[18;"+(l+1)+"~":o.key=ue.ESC+"[18~";break;case 119:l?o.key=ue.ESC+"[19;"+(l+1)+"~":o.key=ue.ESC+"[19~";break;case 120:l?o.key=ue.ESC+"[20;"+(l+1)+"~":o.key=ue.ESC+"[20~";break;case 121:l?o.key=ue.ESC+"[21;"+(l+1)+"~":o.key=ue.ESC+"[21~";break;case 122:l?o.key=ue.ESC+"[23;"+(l+1)+"~":o.key=ue.ESC+"[23~";break;case 123:l?o.key=ue.ESC+"[24;"+(l+1)+"~":o.key=ue.ESC+"[24~";break;default:if(e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey)e.keyCode>=65&&e.keyCode<=90?o.key=String.fromCharCode(e.keyCode-64):e.keyCode===32?o.key=ue.NUL:e.keyCode>=51&&e.keyCode<=55?o.key=String.fromCharCode(e.keyCode-51+27):e.keyCode===56?o.key=ue.DEL:e.keyCode===219?o.key=ue.ESC:e.keyCode===220?o.key=ue.FS:e.keyCode===221&&(o.key=ue.GS);else if((!s||n)&&e.altKey&&!e.metaKey){let u=nq[e.keyCode]?.[e.shiftKey?1:0];if(u)o.key=ue.ESC+u;else if(e.keyCode>=65&&e.keyCode<=90){let h=e.ctrlKey?e.keyCode-64:e.keyCode+32,m=String.fromCharCode(h);e.shiftKey&&(m=m.toUpperCase()),o.key=ue.ESC+m}else if(e.keyCode===32)o.key=ue.ESC+(e.ctrlKey?ue.NUL:" ");else if(e.key==="Dead"&&e.code.startsWith("Key")){let h=e.code.slice(3,4);e.shiftKey||(h=h.toLowerCase()),o.key=ue.ESC+h,o.cancel=!0}}else s&&!e.altKey&&!e.ctrlKey&&!e.shiftKey&&e.metaKey?e.keyCode===65&&(o.type=1):e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&e.key.length===1?o.key=e.key:e.key&&e.ctrlKey&&(e.key==="_"&&(o.key=ue.US),e.key==="@"&&(o.key=ue.NUL));break}return o}var Jt=0,rq=class{constructor(e){this._getKey=e,this._array=[],this._insertedValues=[],this._flushInsertedTask=new Qh,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new Qh,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(e){this._flushCleanupDeleted(),this._insertedValues.length===0&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(e)}_flushInserted(){let e=this._insertedValues.sort((o,l)=>this._getKey(o)-this._getKey(l)),t=0,s=0,n=new Array(this._array.length+this._insertedValues.length);for(let o=0;o<n.length;o++)s>=this._array.length||this._getKey(e[t])<=this._getKey(this._array[s])?(n[o]=e[t],t++):n[o]=this._array[s++];this._array=n,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(e){if(this._flushCleanupInserted(),this._array.length===0)return!1;let t=this._getKey(e);if(t===void 0||(Jt=this._search(t),Jt===-1)||this._getKey(this._array[Jt])!==t)return!1;do if(this._array[Jt]===e)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(Jt),!0;while(++Jt<this._array.length&&this._getKey(this._array[Jt])===t);return!1}_flushDeleted(){this._isFlushingDeleted=!0;let e=this._deletedIndices.sort((o,l)=>o-l),t=0,s=new Array(this._array.length-e.length),n=0;for(let o=0;o<this._array.length;o++)e[t]===o?t++:s[n++]=this._array[o];this._array=s,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Jt=this._search(e),!(Jt<0||Jt>=this._array.length)&&this._getKey(this._array[Jt])===e))do yield this._array[Jt];while(++Jt<this._array.length&&this._getKey(this._array[Jt])===e)}forEachByKey(e,t){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(Jt=this._search(e),!(Jt<0||Jt>=this._array.length)&&this._getKey(this._array[Jt])===e))do t(this._array[Jt]);while(++Jt<this._array.length&&this._getKey(this._array[Jt])===e)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(e){let t=0,s=this._array.length-1;for(;s>=t;){let n=t+s>>1,o=this._getKey(this._array[n]);if(o>e)s=n-1;else if(o<e)t=n+1;else{for(;n>0&&this._getKey(this._array[n-1])===e;)n--;return n}}return t}},bg=0,H2=0,aq=class extends Je{constructor(){super(),this._decorations=new rq(e=>e?.marker.line),this._onDecorationRegistered=this._register(new be),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new be),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(It(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(e){if(e.marker.isDisposed)return;let t=new oq(e);if(t){let s=t.marker.onDispose(()=>t.dispose()),n=t.onDispose(()=>{n.dispose(),t&&(this._decorations.delete(t)&&this._onDecorationRemoved.fire(t),s.dispose())});this._decorations.insert(t),this._onDecorationRegistered.fire(t)}return t}reset(){for(let e of this._decorations.values())e.dispose();this._decorations.clear()}*getDecorationsAtCell(e,t,s){let n=0,o=0;for(let l of this._decorations.getKeyIterator(t))n=l.options.x??0,o=n+(l.options.width??1),e>=n&&e<o&&(!s||(l.options.layer??"bottom")===s)&&(yield l)}forEachDecorationAtCell(e,t,s,n){this._decorations.forEachByKey(t,o=>{bg=o.options.x??0,H2=bg+(o.options.width??1),e>=bg&&e<H2&&(!s||(o.options.layer??"bottom")===s)&&n(o)})}},oq=class extends aa{constructor(e){super(),this.options=e,this.onRenderEmitter=this.add(new be),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new be),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=e.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}get backgroundColorRGB(){return this._cachedBg===null&&(this.options.backgroundColor?this._cachedBg=Ut.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this.options.foregroundColor?this._cachedFg=Ut.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},lq=1e3,cq=class{constructor(e,t=lq){this._renderCallback=e,this._debounceThresholdMS=t,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(e,t,s){this._rowCount=s,e=e!==void 0?e:0,t=t!==void 0?t:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,e):e,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,t):t;let n=performance.now();if(n-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=n,this._innerRefresh();else if(!this._additionalRefreshRequested){let o=n-this._lastRefreshMs,l=this._debounceThresholdMS-o;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},l)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;let e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(e,t)}},U2=20,Jh=class extends Je{constructor(e,t,s,n){super(),this._terminal=e,this._coreBrowserService=s,this._renderService=n,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let o=this._coreBrowserService.mainDocument;this._accessibilityContainer=o.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=o.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let l=0;l<this._terminal.rows;l++)this._rowElements[l]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[l]);if(this._topBoundaryFocusListener=l=>this._handleBoundaryFocus(l,0),this._bottomBoundaryFocusListener=l=>this._handleBoundaryFocus(l,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=o.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new cq(this._renderRows.bind(this))),!this._terminal.element)throw new Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(l=>this._handleResize(l.rows))),this._register(this._terminal.onRender(l=>this._refreshRows(l.start,l.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(l=>this._handleChar(l))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
|
|
168
|
-
`))),this._register(this._terminal.onA11yTab(l=>this._handleTab(l))),this._register(this._terminal.onKey(l=>this._handleKey(l.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(qe(o,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(It(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(e){for(let t=0;t<e;t++)this._handleChar(" ")}_handleChar(e){this._liveRegionLineCount<U2+1&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,e===`
|
|
169
|
-
`&&(this._liveRegionLineCount++,this._liveRegionLineCount===U2+1&&(this._liveRegion.textContent+=$0.get())))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(e){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(e)||this._charsToConsume.push(e)}_refreshRows(e,t){this._liveRegionDebouncer.refresh(e,t,this._terminal.rows)}_renderRows(e,t){let s=this._terminal.buffer,n=s.lines.length.toString();for(let o=e;o<=t;o++){let l=s.lines.get(s.ydisp+o),u=[],h=l?.translateToString(!0,void 0,void 0,u)||"",m=(s.ydisp+o+1).toString(),d=this._rowElements[o];d&&(h.length===0?(d.textContent=" ",this._rowColumns.set(d,[0,1])):(d.textContent=h,this._rowColumns.set(d,u)),d.setAttribute("aria-posinset",m),d.setAttribute("aria-setsize",n),this._alignRowWidth(d))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(e,t){let s=e.target,n=this._rowElements[t===0?1:this._rowElements.length-2],o=s.getAttribute("aria-posinset"),l=t===0?"1":`${this._terminal.buffer.lines.length}`;if(o===l||e.relatedTarget!==n)return;let u,h;if(t===0?(u=s,h=this._rowElements.pop(),this._rowContainer.removeChild(h)):(u=this._rowElements.shift(),h=s,this._rowContainer.removeChild(u)),u.removeEventListener("focus",this._topBoundaryFocusListener),h.removeEventListener("focus",this._bottomBoundaryFocusListener),t===0){let m=this._createAccessibilityTreeNode();this._rowElements.unshift(m),this._rowContainer.insertAdjacentElement("afterbegin",m)}else{let m=this._createAccessibilityTreeNode();this._rowElements.push(m),this._rowContainer.appendChild(m)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(t===0?-1:1),this._rowElements[t===0?1:this._rowElements.length-2].focus(),e.preventDefault(),e.stopImmediatePropagation()}_handleSelectionChange(){if(this._rowElements.length===0)return;let e=this._coreBrowserService.mainDocument.getSelection();if(!e)return;if(e.isCollapsed){this._rowContainer.contains(e.anchorNode)&&this._terminal.clearSelection();return}if(!e.anchorNode||!e.focusNode){console.error("anchorNode and/or focusNode are null");return}let t={node:e.anchorNode,offset:e.anchorOffset},s={node:e.focusNode,offset:e.focusOffset};if((t.node.compareDocumentPosition(s.node)&Node.DOCUMENT_POSITION_PRECEDING||t.node===s.node&&t.offset>s.offset)&&([t,s]=[s,t]),t.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(t={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(t.node))return;let n=this._rowElements.slice(-1)[0];if(s.node.compareDocumentPosition(n)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(s={node:n,offset:n.textContent?.length??0}),!this._rowContainer.contains(s.node))return;let o=({node:h,offset:m})=>{let d=h instanceof Text?h.parentNode:h,p=parseInt(d?.getAttribute("aria-posinset"),10)-1;if(isNaN(p))return console.warn("row is invalid. Race condition?"),null;let g=this._rowColumns.get(d);if(!g)return console.warn("columns is null. Race condition?"),null;let x=m<g.length?g[m]:g.slice(-1)[0]+1;return x>=this._terminal.cols&&(++p,x=0),{row:p,column:x}},l=o(t),u=o(s);if(!(!l||!u)){if(l.row>u.row||l.row===u.row&&l.column>=u.column)throw new Error("invalid range");this._terminal.select(l.column,l.row,(u.row-l.row)*this._terminal.cols-l.column+u.column)}}_handleResize(e){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let t=this._rowContainer.children.length;t<this._terminal.rows;t++)this._rowElements[t]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[t]);for(;this._rowElements.length>e;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let e=this._coreBrowserService.mainDocument.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let e=0;e<this._terminal.rows;e++)this._refreshRowDimensions(this._rowElements[e]),this._alignRowWidth(this._rowElements[e])}}_refreshRowDimensions(e){e.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(e){e.style.transform="";let t=e.getBoundingClientRect().width,s=this._rowColumns.get(e)?.slice(-1)?.[0];if(!s)return;let n=s*this._renderService.dimensions.css.cell.width;e.style.transform=`scaleX(${n/t})`}};Jh=Wt([we(1,Mx),we(2,vr),we(3,_r)],Jh);var yb=class extends Je{constructor(e,t,s,n,o){super(),this._element=e,this._mouseService=t,this._renderService=s,this._bufferService=n,this._linkProviderService=o,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new be),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new be),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(It(()=>{Qa(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(qe(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(qe(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(qe(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(qe(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(e){this._lastMouseEvent=e;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(!t)return;this._isMouseOut=!1;let s=e.composedPath();for(let n=0;n<s.length;n++){let o=s[n];if(o.classList.contains("xterm"))break;if(o.classList.contains("xterm-hover"))return}(!this._lastBufferCell||t.x!==this._lastBufferCell.x||t.y!==this._lastBufferCell.y)&&(this._handleHover(t),this._lastBufferCell=t)}_handleHover(e){if(this._activeLine!==e.y||this._wasResized){this._clearCurrentLink(),this._askForLink(e,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,e)||(this._clearCurrentLink(),this._askForLink(e,!0))}_askForLink(e,t){(!this._activeProviderReplies||!t)&&(this._activeProviderReplies?.forEach(n=>{n?.forEach(o=>{o.link.dispose&&o.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=e.y);let s=!1;for(let[n,o]of this._linkProviderService.linkProviders.entries())t?this._activeProviderReplies?.get(n)&&(s=this._checkLinkProviderResult(n,e,s)):o.provideLinks(e.y,l=>{if(this._isMouseOut)return;let u=l?.map(h=>({link:h}));this._activeProviderReplies?.set(n,u),s=this._checkLinkProviderResult(n,e,s),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(e.y,this._activeProviderReplies)})}_removeIntersectingLinks(e,t){let s=new Set;for(let n=0;n<t.size;n++){let o=t.get(n);if(o)for(let l=0;l<o.length;l++){let u=o[l],h=u.link.range.start.y<e?0:u.link.range.start.x,m=u.link.range.end.y>e?this._bufferService.cols:u.link.range.end.x;for(let d=h;d<=m;d++){if(s.has(d)){o.splice(l--,1);break}s.add(d)}}}}_checkLinkProviderResult(e,t,s){if(!this._activeProviderReplies)return s;let n=this._activeProviderReplies.get(e),o=!1;for(let l=0;l<e;l++)(!this._activeProviderReplies.has(l)||this._activeProviderReplies.get(l))&&(o=!0);if(!o&&n){let l=n.find(u=>this._linkAtPosition(u.link,t));l&&(s=!0,this._handleNewLink(l))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!s)for(let l=0;l<this._activeProviderReplies.size;l++){let u=this._activeProviderReplies.get(l)?.find(h=>this._linkAtPosition(h.link,t));if(u){s=!0,this._handleNewLink(u);break}}return s}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(e){if(!this._currentLink)return;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);t&&this._mouseDownLink&&uq(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,t)&&this._currentLink.link.activate(e,this._currentLink.link.text)}_clearCurrentLink(e,t){!this._currentLink||!this._lastMouseEvent||(!e||!t||this._currentLink.link.range.start.y>=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,Qa(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(e){if(!this._lastMouseEvent)return;let t=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);t&&this._linkAtPosition(e.link,t)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:e.link.decorations===void 0?!0:e.link.decorations.underline,pointerCursor:e.link.decorations===void 0?!0:e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:s=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==s&&(this._currentLink.state.decorations.pointerCursor=s,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",s))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:s=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==s&&(this._currentLink.state.decorations.underline=s,this._currentLink.state.isHovered&&this._fireUnderlineEvent(e.link,s))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(s=>{if(!this._currentLink)return;let n=s.start===0?0:s.start+1+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.ydisp+1+s.end;if(this._currentLink.link.range.start.y>=n&&this._currentLink.link.range.end.y<=o&&(this._clearCurrentLink(n,o),this._lastMouseEvent)){let l=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);l&&this._askForLink(l,!1)}})))}_linkHover(e,t,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(s,t.text)}_fireUnderlineEvent(e,t){let s=e.range,n=this._bufferService.buffer.ydisp,o=this._createLinkUnderlineEvent(s.start.x-1,s.start.y-n-1,s.end.x,s.end.y-n-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(o)}_linkLeave(e,t,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(s,t.text)}_linkAtPosition(e,t){let s=e.range.start.y*this._bufferService.cols+e.range.start.x,n=e.range.end.y*this._bufferService.cols+e.range.end.x,o=t.y*this._bufferService.cols+t.x;return s<=o&&o<=n}_positionFromMouseEvent(e,t,s){let n=s.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(n)return{x:n[0],y:n[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(e,t,s,n,o){return{x1:e,y1:t,x2:s,y2:n,cols:this._bufferService.cols,fg:o}}};yb=Wt([we(1,Rx),we(2,_r),we(3,en),we(4,O3)],yb);function uq(e,t){return e.text===t.text&&e.range.start.x===t.range.start.x&&e.range.start.y===t.range.start.y&&e.range.end.x===t.range.end.x&&e.range.end.y===t.range.end.y}var dq=class extends sq{constructor(e={}){super(e),this._linkifier=this._register(new ul),this.browser=J3,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new ul),this._onCursorMove=this._register(new be),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new be),this.onKey=this._onKey.event,this._onRender=this._register(new be),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new be),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new be),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new be),this.onBell=this._onBell.event,this._onFocus=this._register(new be),this._onBlur=this._register(new be),this._onA11yCharEmitter=this._register(new be),this._onA11yTabEmitter=this._register(new be),this._onWillOpen=this._register(new be),this._setup(),this._decorationService=this._instantiationService.createInstance(aq),this._instantiationService.setService(Su,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(eF),this._instantiationService.setService(O3,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(U0)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(t=>this.refresh(t?.start??0,t?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(t=>this._reportWindowsOptions(t))),this._register(this._inputHandler.onColor(t=>this._handleColorEvent(t))),this._register(Bs.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(Bs.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(Bs.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(Bs.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(t=>this._afterResize(t.cols,t.rows))),this._register(It(()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(e){if(this._themeService)for(let t of e){let s,n="";switch(t.index){case 256:s="foreground",n="10";break;case 257:s="background",n="11";break;case 258:s="cursor",n="12";break;default:s="ansi",n="4;"+t.index}switch(t.type){case 0:let o=Ot.toColorRGB(s==="ansi"?this._themeService.colors.ansi[t.index]:this._themeService.colors[s]);this.coreService.triggerDataEvent(`${ue.ESC}]${n};${XF(o)}${Z3.ST}`);break;case 1:if(s==="ansi")this._themeService.modifyColors(l=>l.ansi[t.index]=cs.toColor(...t.color));else{let l=s;this._themeService.modifyColors(u=>u[l]=cs.toColor(...t.color))}break;case 2:this._themeService.restoreColor(t.index);break}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(e){e?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(Jh,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(e){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(ue.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(ue.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let e=this.buffer.ybase+this.buffer.y,t=this.buffer.lines.get(e);if(!t)return;let s=Math.min(this.buffer.x,this.cols-1),n=this._renderService.dimensions.css.cell.height,o=t.getWidth(s),l=this._renderService.dimensions.css.cell.width*o,u=this.buffer.y*this._renderService.dimensions.css.cell.height,h=s*this._renderService.dimensions.css.cell.width;this.textarea.style.left=h+"px",this.textarea.style.top=u+"px",this.textarea.style.width=l+"px",this.textarea.style.height=n+"px",this.textarea.style.lineHeight=n+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(qe(this.element,"copy",t=>{this.hasSelection()&&pH(t,this._selectionService)}));let e=t=>gH(t,this.textarea,this.coreService,this.optionsService);this._register(qe(this.textarea,"paste",e)),this._register(qe(this.element,"paste",e)),e5?this._register(qe(this.element,"mousedown",t=>{t.button===2&&Qw(t,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(qe(this.element,"contextmenu",t=>{Qw(t,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),$x&&this._register(qe(this.element,"auxclick",t=>{t.button===1&&C3(t,this.textarea,this.screenElement)}))}_bindKeys(){this._register(qe(this.textarea,"keyup",e=>this._keyUp(e),!0)),this._register(qe(this.textarea,"keydown",e=>this._keyDown(e),!0)),this._register(qe(this.textarea,"keypress",e=>this._keyPress(e),!0)),this._register(qe(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(qe(this.textarea,"compositionupdate",e=>this._compositionHelper.compositionupdate(e))),this._register(qe(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(qe(this.textarea,"input",e=>this._inputEvent(e),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(e){if(!e)throw new Error("Terminal requires a parent element.");if(e.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),this.element?.ownerDocument.defaultView&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=e.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),e.appendChild(this.element);let t=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),t.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(qe(this.screenElement,"mousemove",o=>this.updateCursorStyle(o))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),t.appendChild(this.screenElement);let s=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",P0.get()),n5||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange("disableStdin",()=>s.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(QU,this.textarea,e.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(vr,this._coreBrowserService),this._register(qe(this.textarea,"focus",o=>this._handleTextAreaFocus(o))),this._register(qe(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(cb,this._document,this._helperContainer),this._instantiationService.setService(yf,this._charSizeService),this._themeService=this._instantiationService.createInstance(fb),this._instantiationService.setService(xl,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(Xh),this._instantiationService.setService(D3,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(db,this.rows,this.screenElement)),this._instantiationService.setService(_r,this._renderService),this._register(this._renderService.onRenderedViewportChange(o=>this._onRender.fire(o))),this.onResize(o=>this._renderService.resize(o.cols,o.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(ab,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(ub),this._instantiationService.setService(Rx,this._mouseService);let n=this._linkifier.value=this._register(this._instantiationService.createInstance(yb,this.screenElement));this.element.appendChild(t);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(ib,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(o=>{super.scrollLines(o,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(hb,this.element,this.screenElement,n)),this._instantiationService.setService(kH,this._selectionService),this._register(this._selectionService.onRequestScrollLines(o=>this.scrollLines(o.amount,o.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(o=>this._renderService.handleSelectionChanged(o.start,o.end,o.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(o=>{this.textarea.value=o,this.textarea.focus(),this.textarea.select()})),this._register(Bs.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(rb,this.screenElement)),this._register(qe(this.element,"mousedown",o=>this._selectionService.handleMouseDown(o))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(Jh,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",o=>this._handleScreenReaderModeOptionChange(o))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(Yh,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",o=>{!this._overviewRulerRenderer&&o&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(Yh,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(lb,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let e=this,t=this.element;function s(l){let u=e._mouseService.getMouseReportCoords(l,e.screenElement);if(!u)return!1;let h,m;switch(l.overrideType||l.type){case"mousemove":m=32,l.buttons===void 0?(h=3,l.button!==void 0&&(h=l.button<3?l.button:3)):h=l.buttons&1?0:l.buttons&4?1:l.buttons&2?2:3;break;case"mouseup":m=0,h=l.button<3?l.button:3;break;case"mousedown":m=1,h=l.button<3?l.button:3;break;case"wheel":if(e._customWheelEventHandler&&e._customWheelEventHandler(l)===!1)return!1;let d=l.deltaY;if(d===0||e.coreMouseService.consumeWheelEvent(l,e._renderService?.dimensions?.device?.cell?.height,e._coreBrowserService?.dpr)===0)return!1;m=d<0?0:1,h=4;break;default:return!1}return m===void 0||h===void 0||h>4?!1:e.coreMouseService.triggerMouseEvent({col:u.col,row:u.row,x:u.x,y:u.y,button:h,action:m,ctrl:l.ctrlKey,alt:l.altKey,shift:l.shiftKey})}let n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o={mouseup:l=>(s(l),l.buttons||(this._document.removeEventListener("mouseup",n.mouseup),n.mousedrag&&this._document.removeEventListener("mousemove",n.mousedrag)),this.cancel(l)),wheel:l=>(s(l),this.cancel(l,!0)),mousedrag:l=>{l.buttons&&s(l)},mousemove:l=>{l.buttons||s(l)}};this._register(this.coreMouseService.onProtocolChange(l=>{l?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(l)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),l&8?n.mousemove||(t.addEventListener("mousemove",o.mousemove),n.mousemove=o.mousemove):(t.removeEventListener("mousemove",n.mousemove),n.mousemove=null),l&16?n.wheel||(t.addEventListener("wheel",o.wheel,{passive:!1}),n.wheel=o.wheel):(t.removeEventListener("wheel",n.wheel),n.wheel=null),l&2?n.mouseup||(n.mouseup=o.mouseup):(this._document.removeEventListener("mouseup",n.mouseup),n.mouseup=null),l&4?n.mousedrag||(n.mousedrag=o.mousedrag):(this._document.removeEventListener("mousemove",n.mousedrag),n.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(qe(t,"mousedown",l=>{if(l.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(l)))return s(l),n.mouseup&&this._document.addEventListener("mouseup",n.mouseup),n.mousedrag&&this._document.addEventListener("mousemove",n.mousedrag),this.cancel(l)})),this._register(qe(t,"wheel",l=>{if(!n.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(l)===!1)return!1;if(!this.buffer.hasScrollback){if(l.deltaY===0)return!1;if(e.coreMouseService.consumeWheelEvent(l,e._renderService?.dimensions?.device?.cell?.height,e._coreBrowserService?.dpr)===0)return this.cancel(l,!0);let u=ue.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(l.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(u,!0),this.cancel(l,!0)}}},{passive:!1}))}refresh(e,t){this._renderService?.refreshRows(e,t)}updateCursorStyle(e){this._selectionService?.shouldColumnSelect(e)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(e,t){this._viewport?this._viewport.scrollLines(e):super.scrollLines(e,t),this.refresh(0,this.rows-1)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){e&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}paste(e){k3(e,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(e){this._customKeyEventHandler=e}attachCustomWheelEventHandler(e){this._customWheelEventHandler=e}registerLinkProvider(e){return this._linkProviderService.registerLinkProvider(e)}registerCharacterJoiner(e){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");let t=this._characterJoinerService.register(e);return this.refresh(0,this.rows-1),t}deregisterCharacterJoiner(e){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(e)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(e){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+e)}registerDecoration(e){return this._decorationService.registerDecoration(e)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(e,t,s){this._selectionService.setSelection(e,t,s)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(e,t){this._selectionService?.selectLines(e,t)}_keyDown(e){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;let t=this.browser.isMac&&this.options.macOptionIsMeta&&e.altKey;if(!t&&!this._compositionHelper.keydown(e))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!t&&(e.key==="Dead"||e.key==="AltGraph")&&(this._unprocessedDeadKey=!0);let s=iq(e,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(e),s.type===3||s.type===2){let n=this.rows-1;return this.scrollLines(s.type===2?-n:n),this.cancel(e,!0)}if(s.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,e)||(s.cancel&&this.cancel(e,!0),!s.key)||e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.key.length===1&&e.key.charCodeAt(0)>=65&&e.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((s.key===ue.ETX||s.key===ue.CR)&&(this.textarea.value=""),this._onKey.fire({key:s.key,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(s.key,!0),!this.optionsService.rawOptions.screenReaderMode||e.altKey||e.ctrlKey)return this.cancel(e,!0);this._keyDownHandled=!0}_isThirdLevelShift(e,t){let s=e.isMac&&!this.options.macOptionIsMeta&&t.altKey&&!t.ctrlKey&&!t.metaKey||e.isWindows&&t.altKey&&t.ctrlKey&&!t.metaKey||e.isWindows&&t.getModifierState("AltGraph");return t.type==="keypress"?s:s&&(!t.keyCode||t.keyCode>47)}_keyUp(e){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)&&(hq(e)||this.focus(),this.updateCursorStyle(e),this._keyPressHandled=!1)}_keyPress(e){let t;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(e.which===null||e.which===void 0)t=e.keyCode;else if(e.which!==0&&e.charCode!==0)t=e.which;else return!1;return!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)?!1:(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(t,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(e){if(e.data&&e.inputType==="insertText"&&(!e.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let t=e.data;return this.coreService.triggerDataEvent(t,!0),this.cancel(e),!0}return!1}resize(e,t){if(e===this.cols&&t===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(e,t)}_afterResize(e,t){this._charSizeService?.measure()}clear(){if(!(this.buffer.ybase===0&&this.buffer.y===0)){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let e=1;e<this.rows;e++)this.buffer.lines.push(this.buffer.getBlankLine(as));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){this.options.rows=this.rows,this.options.cols=this.cols;let e=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=e,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains("focus")?this.coreService.triggerDataEvent(ue.ESC+"[I"):this.coreService.triggerDataEvent(ue.ESC+"[O")}_reportWindowsOptions(e){if(this._renderService)switch(e){case 0:let t=this._renderService.dimensions.css.canvas.width.toFixed(0),s=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${ue.ESC}[4;${s};${t}t`);break;case 1:let n=this._renderService.dimensions.css.cell.width.toFixed(0),o=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${ue.ESC}[6;${o};${n}t`);break}}cancel(e,t){if(!(!this.options.cancelEvents&&!t))return e.preventDefault(),e.stopPropagation(),!1}};function hq(e){return e.keyCode===16||e.keyCode===17||e.keyCode===18}var fq=class{constructor(){this._addons=[]}dispose(){for(let e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()}loadAddon(e,t){let s={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(s),t.dispose=()=>this._wrappedAddonDispose(s),t.activate(e)}_wrappedAddonDispose(e){if(e.isDisposed)return;let t=-1;for(let s=0;s<this._addons.length;s++)if(this._addons[s]===e){t=s;break}if(t===-1)throw new Error("Could not dispose an addon that has not been loaded");e.isDisposed=!0,e.dispose.apply(e.instance),this._addons.splice(t,1)}},mq=class{constructor(e){this._line=e}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(e,t){if(!(e<0||e>=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new Kn)}translateToString(e,t,s){return this._line.translateToString(e,t,s)}},F2=class{constructor(e,t){this._buffer=e,this.type=t}init(e){return this._buffer=e,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(e){let t=this._buffer.lines.get(e);if(t)return new mq(t)}getNullCell(){return new Kn}},pq=class extends Je{constructor(e){super(),this._core=e,this._onBufferChange=this._register(new be),this.onBufferChange=this._onBufferChange.event,this._normal=new F2(this._core.buffers.normal,"normal"),this._alternate=new F2(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw new Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},gq=class{constructor(e){this._core=e}registerCsiHandler(e,t){return this._core.registerCsiHandler(e,s=>t(s.toArray()))}addCsiHandler(e,t){return this.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._core.registerDcsHandler(e,(s,n)=>t(s,n.toArray()))}addDcsHandler(e,t){return this.registerDcsHandler(e,t)}registerEscHandler(e,t){return this._core.registerEscHandler(e,t)}addEscHandler(e,t){return this.registerEscHandler(e,t)}registerOscHandler(e,t){return this._core.registerOscHandler(e,t)}addOscHandler(e,t){return this.registerOscHandler(e,t)}},bq=class{constructor(e){this._core=e}register(e){this._core.unicodeService.register(e)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(e){this._core.unicodeService.activeVersion=e}},xq=["cols","rows"],Ei=0,vq=class extends Je{constructor(e){super(),this._core=this._register(new dq(e)),this._addonManager=this._register(new fq),this._publicOptions={...this._core.options};let t=n=>this._core.options[n],s=(n,o)=>{this._checkReadonlyOptions(n),this._core.options[n]=o};for(let n in this._core.options){let o={get:t.bind(this,n),set:s.bind(this,n)};Object.defineProperty(this._publicOptions,n,o)}}_checkReadonlyOptions(e){if(xq.includes(e))throw new Error(`Option "${e}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new gq(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new bq(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this._register(new pq(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let e=this._core.coreService.decPrivateModes,t="none";switch(this._core.coreMouseService.activeProtocol){case"X10":t="x10";break;case"VT200":t="vt200";break;case"DRAG":t="drag";break;case"ANY":t="any";break}return{applicationCursorKeysMode:e.applicationCursorKeys,applicationKeypadMode:e.applicationKeypad,bracketedPasteMode:e.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:t,originMode:e.origin,reverseWraparoundMode:e.reverseWraparound,sendFocusMode:e.sendFocus,synchronizedOutputMode:e.synchronizedOutput,wraparoundMode:e.wraparound}}get options(){return this._publicOptions}set options(e){for(let t in e)this._publicOptions[t]=e[t]}blur(){this._core.blur()}focus(){this._core.focus()}input(e,t=!0){this._core.input(e,t)}resize(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)}open(e){this._core.open(e)}attachCustomKeyEventHandler(e){this._core.attachCustomKeyEventHandler(e)}attachCustomWheelEventHandler(e){this._core.attachCustomWheelEventHandler(e)}registerLinkProvider(e){return this._core.registerLinkProvider(e)}registerCharacterJoiner(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)}deregisterCharacterJoiner(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)}registerMarker(e=0){return this._verifyIntegers(e),this._core.registerMarker(e)}registerDecoration(e){return this._checkProposedApi(),this._verifyPositiveIntegers(e.x??0,e.width??0,e.height??0),this._core.registerDecoration(e)}hasSelection(){return this._core.hasSelection()}select(e,t,s){this._verifyIntegers(e,t,s),this._core.select(e,t,s)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)}dispose(){super.dispose()}scrollLines(e){this._verifyIntegers(e),this._core.scrollLines(e)}scrollPages(e){this._verifyIntegers(e),this._core.scrollPages(e)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(e){this._verifyIntegers(e),this._core.scrollToLine(e)}clear(){this._core.clear()}write(e,t){this._core.write(e,t)}writeln(e,t){this._core.write(e),this._core.write(`\r
|
|
170
|
-
`,t)}paste(e){this._core.paste(e)}refresh(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(e){this._addonManager.loadAddon(this,e)}static get strings(){return{get promptLabel(){return P0.get()},set promptLabel(e){P0.set(e)},get tooMuchOutput(){return $0.get()},set tooMuchOutput(e){$0.set(e)}}}_verifyIntegers(...e){for(Ei of e)if(Ei===1/0||isNaN(Ei)||Ei%1!==0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...e){for(Ei of e)if(Ei&&(Ei===1/0||isNaN(Ei)||Ei%1!==0||Ei<0))throw new Error("This API only accepts positive integers")}};function f5({sessionId:e,active:t,toolbarExtra:s}){const n=y.useRef(null),o=y.useRef(null),l=y.useRef(null),u=y.useRef(null),[h,m]=y.useState("Local workspace"),[d,p]=y.useState("connecting"),[g,x]=y.useState("Opening shell"),_=y.useCallback(()=>{const w=u.current,C=l.current;if(!w||w.readyState!==WebSocket.OPEN||!C)return;C.fit();const N=C.proposeDimensions();N&&w.send(JSON.stringify({cols:N.cols,rows:N.rows,type:"resize"}))},[]);y.useEffect(()=>{if(!n.current)return;const w=new vq({allowProposedApi:!0,cursorBlink:!0,fontFamily:'"SF Mono", "JetBrains Mono", ui-monospace, Menlo, monospace',fontSize:12,lineHeight:1.25,scrollback:4e3,theme:{background:"#090909",black:"#090909",blue:"#69a7ff",brightBlack:"#5f6368",brightBlue:"#8ab4f8",brightCyan:"#7ddfd7",brightGreen:"#8fdc8a",brightMagenta:"#d7a2ff",brightRed:"#ff8a80",brightWhite:"#ffffff",brightYellow:"#ffd166",cyan:"#62d0c8",foreground:"#f2f2f2",green:"#7ac77f",magenta:"#c792ea",red:"#ff6b6b",selectionBackground:"#ffffff33",white:"#e8eaed",yellow:"#f7c948"}}),C=new uH;w.loadAddon(C),w.open(n.current),o.current=w,l.current=C;const N=new WebSocket(_q(e));u.current=N;const j=w.onData(A=>{N.readyState===WebSocket.OPEN&&N.send(JSON.stringify({data:A,type:"input"}))});N.addEventListener("open",()=>{p("running"),x("Shell connected"),_()}),N.addEventListener("message",A=>{const O=yq(A.data);if(O){if(O.type==="output"){w.write(O.data);return}if(O.type==="error"){p("error"),x(O.error);return}p(O.state==="idle"?"connecting":O.state),O.cwd&&m(O.cwd),x(O.error??O.shell??"Shell connected")}}),N.addEventListener("close",()=>{p(A=>A==="exited"?A:"exited"),x("Socket closed")}),N.addEventListener("error",()=>{p("error"),x("Terminal socket error")}),window.addEventListener("resize",_),window.setTimeout(_,0);const E=new ResizeObserver(()=>_());return E.observe(n.current),()=>{window.removeEventListener("resize",_),E.disconnect(),j.dispose(),N.close(),w.dispose(),u.current=null,o.current=null,l.current=null}},[e,_]),y.useEffect(()=>{if(!t)return;const w=window.setTimeout(()=>{_(),o.current?.focus()},0);return()=>window.clearTimeout(w)},[t,_]);const S=y.useCallback(w=>{const C=u.current;if(!C||C.readyState!==WebSocket.OPEN)return;const N=l.current?.proposeDimensions();C.send(JSON.stringify({cols:N?.cols,rows:N?.rows,...w}))},[]);return a.jsxs("section",{className:ae("flex h-full min-h-0 flex-col bg-[#090909] text-white",!t&&"hidden"),children:[a.jsxs("div",{className:"flex shrink-0 flex-wrap items-center justify-between gap-3 border-b border-white/10 bg-[#111111] px-4 py-2",children:[a.jsx("div",{className:"min-w-0",children:a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(Pe,{className:ae("border-white/15 bg-white/10 text-white shadow-none",d==="running"&&"border-emerald-400/35 text-emerald-200",d==="error"&&"border-red-400/35 text-red-200"),variant:"outline",children:d}),a.jsxs("span",{className:"truncate font-mono text-[11px] text-white/55",children:[h," · ",g]})]})}),a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsxs(Q,{"aria-label":"Restart terminal",className:"border-white/15 bg-white/5 text-white hover:bg-white/10",size:"sm",variant:"outline",onClick:()=>S({type:"restart"}),type:"button",children:[a.jsx(uu,{}),"Restart"]}),a.jsxs(Q,{"aria-label":"Stop terminal",className:"border-white/15 bg-white/5 text-white hover:bg-white/10",size:"sm",variant:"outline",onClick:()=>S({type:"stop"}),type:"button",children:[a.jsx(al,{}),"Stop"]}),s]})]}),a.jsx("div",{"aria-label":"terminal viewport",className:"min-h-0 flex-1 overflow-hidden px-3 py-0.5",children:a.jsx("div",{className:"h-full w-full",ref:n})})]})}function _q(e){const t=window.location.protocol==="https:"?"wss:":"ws:",s=encodeURIComponent(e);return`${t}//${window.location.host}/api/terminal/socket?id=${s}`}function yq(e){if(typeof e!="string")return null;try{const t=JSON.parse(e);return typeof t?.type=="string"?t:null}catch{return null}}function Sq({serviceName:e,active:t}){const[s,n]=y.useState(null),[o,l]=y.useState(null),[u,h]=y.useState(!1),m=y.useRef(!1);y.useEffect(()=>{if(!t||m.current)return;m.current=!0;let g=!1;return(async()=>{try{const x=await uh({serviceName:e});g||n(x.id)}catch(x){g||l(x instanceof Error?x.message:String(x))}})(),()=>{g=!0}},[t,e]);const d=a.jsxs(Q,{"aria-label":u?"Exit fullscreen terminal":"Expand terminal",className:"border-white/15 bg-white/5 text-white hover:bg-white/10",onClick:()=>h(g=>!g),size:"sm",type:"button",variant:"outline",children:[u?a.jsx(jC,{}):a.jsx(NC,{}),u?"Exit":"Expand"]}),p=o?a.jsxs("div",{className:"p-3 font-mono text-[11px] text-destructive",children:["Could not open terminal: ",o]}):s?a.jsx(f5,{active:t,sessionId:s,toolbarExtra:d}):a.jsx("div",{className:"p-3 font-mono text-[11px] text-muted-foreground",children:"Opening terminal…"});return u&&t?a.jsx(Ax,{onClose:()=>h(!1),title:`Terminal — ${e}`,children:p}):a.jsx("div",{className:ae("h-[60vh] min-h-[24rem] overflow-hidden rounded-md border border-border",!t&&"hidden"),children:p})}const wq=500;function kq(e){const[t,s]=y.useState(),[n,o]=y.useState([]),[l,u]=y.useState(),[h,m]=y.useState(!1),d=y.useRef(void 0);y.useEffect(()=>{d.current=void 0,s(void 0),o([]);const g=new EventSource(`/api/services/${encodeURIComponent(e)}/test/stream`),x=_=>{try{const S=JSON.parse(_.data);S.run.id!==d.current&&(d.current=S.run.id,o([])),s(S.run),S.line&&o(w=>[...w,S.line].slice(-wq))}catch{}};return g.addEventListener("status",x),g.addEventListener("output",x),()=>g.close()},[e]);const p=y.useCallback(async g=>{m(!0),u(void 0);try{await U6(e,g)}catch(x){u(x instanceof Error?x.message:String(x))}finally{m(!1)}},[e]);return{run:t,lines:n,error:l,starting:h,start:p}}const Cq={running:"secondary",passed:"success",failed:"error",error:"error"},Nq={running:"Running",passed:"Passed",failed:"Failed",error:"Error"};function Eq({serviceName:e}){const{run:t,lines:s,error:n,starting:o,start:l}=kq(e),[u,h]=y.useState(""),m=t?.status==="running"||o,d=t?.status==="failed"||t?.status==="error";return a.jsxs("div",{className:"space-y-2",children:[a.jsxs("form",{className:"flex items-center gap-2",onSubmit:p=>{p.preventDefault(),m||l(u.trim()||void 0)},children:[a.jsx(nt,{className:"h-7 flex-1 text-[11px]",disabled:m,onChange:p=>h(p.target.value),placeholder:"Optional test pattern (e.g. config-store)",value:u}),a.jsx(Q,{disabled:m,size:"sm",type:"submit",children:m?"Running…":"Run tests"})]}),n?a.jsx("div",{className:"text-red-600",children:n}):null,t?a.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-muted-foreground",children:[a.jsx(Pe,{size:"small",variant:Cq[t.status],children:Nq[t.status]}),a.jsx("code",{className:"font-mono text-[11px]",children:t.command}),t.failingCount>0?a.jsxs("span",{children:["· ",t.failingCount," failing"]}):null,t.exitCode!=null?a.jsxs("span",{children:["· exit ",t.exitCode]}):null]}):a.jsx("div",{className:"text-muted-foreground",children:"No test runs yet."}),s.length>0?a.jsx("pre",{className:"max-h-72 overflow-auto whitespace-pre-wrap break-all rounded bg-background p-2 font-mono text-[11px]",children:s.map((p,g)=>a.jsx("div",{className:ae(p.stream==="stderr"&&"text-red-500"),children:p.text},g))}):null,d?a.jsxs("div",{className:"rounded border border-border bg-muted/40 p-2",children:["Failures were piped into the"," ",a.jsx("a",{className:"font-medium underline",href:"/errors",children:"Error Inbox"})," ","— open an incident there to copy a debugging prompt for your agent."]}):null]})}function jq({serviceName:e,status:t,health:s,timeline:n,onRefresh:o}){const[l,u]=y.useState("metrics"),h=s?.processTree?.processes??[];return a.jsxs("div",{className:"border-t border-border bg-muted/30 px-3 py-2 text-xs",children:[a.jsxs("div",{className:"mb-2 flex gap-1",children:[a.jsx(Ia,{active:l==="logs",onClick:()=>u("logs"),children:"Logs"}),a.jsxs(Ia,{active:l==="processes",onClick:()=>u("processes"),children:["Processes ",h.length?a.jsx(Pe,{variant:"secondary",size:"small",children:h.length}):null]}),a.jsx(Ia,{active:l==="metrics",onClick:()=>u("metrics"),children:"Metrics"}),a.jsxs(Ia,{active:l==="http",onClick:()=>u("http"),children:["HTTP",t?.inspector?.enabled?a.jsx(Pe,{variant:"success",size:"small",children:"on"}):null]}),a.jsx(Ia,{active:l==="env",onClick:()=>u("env"),children:"Env"}),a.jsx(Ia,{active:l==="tests",onClick:()=>u("tests"),children:"Tests"}),a.jsx(Ia,{active:l==="terminal",onClick:()=>u("terminal"),children:"Terminal"})]}),l==="processes"?a.jsx(oH,{rows:h}):null,l==="metrics"?a.jsx(tH,{serviceName:e}):null,l==="http"?a.jsx(Q$,{serviceName:e,status:t,timeline:n,onRefresh:o}):null,l==="env"?a.jsx(Z$,{serviceName:e}):null,l==="tests"?a.jsx(Eq,{serviceName:e}):null,l==="logs"?a.jsx(F$,{serviceName:e}):null,a.jsx(Sq,{active:l==="terminal",serviceName:e},e)]})}function Ia({active:e,onClick:t,children:s}){return a.jsx("button",{className:ae("inline-flex items-center gap-1.5 rounded-md px-2.5 py-1 text-xs font-medium transition-colors",e?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),onClick:t,type:"button",children:s})}const Tq={high:"success",medium:"warning",low:"secondary"};function Aq({onClose:e,onRefresh:t}){const s=Es(),{sendToAgent:n}=At(),[o,l]=y.useState("url"),[u,h]=y.useState(""),[m,d]=y.useState(!1),[p,g]=y.useState(null),[x,_]=y.useState(null),[S,w]=y.useState([]),[C,N]=y.useState([]),[j,E]=y.useState(null),A=j?.kind==="docker-compose"?C.find(T=>T.composeService===j.composeService):void 0;async function O(){if(u.trim()){d(!0),g(null);try{const T=await j6(u.trim());_(T.profile),w(T.proposals),N(T.databases),E(T.proposals[0]??null),T.proposals.length===0&&g("Cloned, but couldn't detect how to run this repo. Refine with AI or add it manually."),l("review")}catch(T){g(T instanceof Error?T.message:String(T))}finally{d(!1)}}}function P(){n({prompt:`Onboard this repository and register it as a NoMoreIDE service: ${u.trim()}
|
|
171
|
-
Use nomoreide_onboard_repo to inspect it, pick the best run command, then register and start it.`,source:{type:"repo-onboard",label:"Onboard repo"},label:`Onboard and run this repo: ${u.trim()}`}),e()}async function D(T){if(j){d(!0),g(null);try{await T6(j,T,A),await t(),s.success(`${j.name} registered${A?" (+ database)":""}${T?" and starting":""}.`),e()}catch(z){g(z instanceof Error?z.message:String(z))}finally{d(!1)}}}return a.jsxs(Xn,{icon:a.jsx(pn,{}),onClose:e,size:"lg",title:"Add from GitHub",children:[o==="url"?a.jsx(Mq,{url:u,busy:m,error:p,onChange:h,onScan:O,onRefine:P}):null,o==="review"&&x?a.jsx(Rq,{profile:x,proposals:S,selected:j,database:A,error:p,onSelect:E,onEdit:E,onBack:()=>l("url"),onRefine:P,onContinue:()=>l("install")}):null,o==="install"&&j?a.jsx(Oq,{proposal:j,busy:m,error:p,onBack:()=>l("review"),onRegister:D}):null]})}function Mq({url:e,busy:t,error:s,onChange:n,onScan:o,onRefine:l}){return a.jsxs("div",{className:"flex flex-col gap-3",children:[a.jsx("p",{className:"text-sm text-muted-foreground",children:"Paste a repository URL. NoMoreIDE clones it, detects how it runs, and proposes a service."}),a.jsx(nt,{autoFocus:!0,placeholder:"https://github.com/owner/repo",value:e,onChange:u=>n(u.target.value),onKeyDown:u=>{u.key==="Enter"&&!t&&o()}}),s?a.jsx("p",{className:"text-sm text-destructive",children:s}):null,a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs(Q,{variant:"ghost",size:"sm",onClick:l,disabled:!e.trim(),children:[a.jsx(mi,{className:"size-3.5"}),"Refine with AI"]}),a.jsxs(Q,{onClick:o,disabled:t||!e.trim(),children:[t?a.jsx(ht,{className:"size-4 animate-spin"}):a.jsx(pn,{className:"size-4"}),t?"Cloning…":"Clone & detect"]})]})]})}function Rq({profile:e,proposals:t,selected:s,database:n,error:o,onSelect:l,onEdit:u,onBack:h,onRefine:m,onContinue:d}){return a.jsxs("div",{className:"flex flex-col gap-4",children:[a.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[a.jsx("span",{className:"text-sm font-medium",children:e.name}),e.languages.map(p=>a.jsx(Pe,{variant:"outline",size:"small",label:p},p))]}),o?a.jsx("p",{className:"text-sm text-destructive",children:o}):null,t.length>0?a.jsxs("div",{className:"flex flex-col gap-2",children:[a.jsxs("span",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground",children:["Detected service",t.length>1?"s":""]}),t.map(p=>{const g=s?.name===p.name;return a.jsxs("button",{type:"button",onClick:()=>l(p),className:`rounded-md border px-3 py-2 text-left text-sm transition-colors ${g?"border-primary bg-primary/5":"border-border hover:bg-muted/50"}`,children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsx("span",{className:"font-medium",children:p.name}),a.jsx(Pe,{variant:Tq[p.confidence],size:"small",label:p.confidence})]}),a.jsx("div",{className:"mt-0.5 font-mono text-xs text-muted-foreground",children:p.kind==="docker-compose"?`compose · ${p.composeService}`:p.command}),a.jsx("div",{className:"text-[11px] text-muted-foreground",children:p.reason})]},p.name)})]}):null,s?a.jsx(Dq,{proposal:s,onChange:u}):null,n?a.jsxs("div",{className:"flex items-center gap-1.5 rounded-md border border-border bg-muted/30 px-2.5 py-1.5 text-xs text-muted-foreground",children:[a.jsx(Yn,{className:"size-3.5"}),a.jsxs("span",{children:["Also registers database ",a.jsx("span",{className:"font-medium",children:n.name})," (",n.engine,") so it shows in the Database tab."]})]}):null,e.envKeys.length>0?a.jsxs("div",{className:"text-xs text-muted-foreground",children:[a.jsx("span",{className:"font-medium",children:"Env from .env.example:"})," ",e.envKeys.join(", ")]}):null,e.readmeExcerpt?a.jsxs("details",{className:"rounded-md border border-border bg-muted/30 p-2 text-xs",children:[a.jsx("summary",{className:"cursor-pointer font-medium",children:"README excerpt"}),a.jsx("pre",{className:"mt-2 max-h-40 overflow-auto whitespace-pre-wrap font-mono",children:e.readmeExcerpt})]}):null,a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs(Q,{variant:"ghost",size:"sm",onClick:h,children:[a.jsx(lu,{className:"size-3.5"}),"Back"]}),a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsxs(Q,{variant:"outline",size:"sm",onClick:m,children:[a.jsx(mi,{className:"size-3.5"}),"Refine with AI"]}),a.jsx(Q,{onClick:d,disabled:!s,children:"Continue"})]})]})]})}function Dq({proposal:e,onChange:t}){return a.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[a.jsx(Bc,{label:"Service name",children:a.jsx(nt,{value:e.name,onChange:s=>t({...e,name:s.target.value})})}),a.jsx(Bc,{label:"Port (optional)",children:a.jsx(nt,{value:e.port?.toString()??"",placeholder:"auto",onChange:s=>t({...e,port:s.target.value?Number(s.target.value):void 0})})}),e.kind==="docker-compose"?a.jsx(Bc,{label:"Compose service",className:"col-span-2",children:a.jsx(nt,{value:e.composeService??"",onChange:s=>t({...e,composeService:s.target.value})})}):a.jsx(Bc,{label:"Run command",className:"col-span-2",children:a.jsx(nt,{value:e.command??"",onChange:s=>t({...e,command:s.target.value})})})]})}function Oq({proposal:e,busy:t,error:s,onBack:n,onRegister:o}){const[l,u]=y.useState(e.installCommand??""),[h,m]=y.useState([]),[d,p]=y.useState(!1),[g,x]=y.useState(!1),_=y.useRef(null);function S(C){m(N=>[...N,C]),queueMicrotask(()=>{const N=_.current;N&&(N.scrollTop=N.scrollHeight)})}async function w(){l.trim()&&(p(!0),x(!1),m([]),await A6({clonePath:e.cwd,command:l.trim()},{onLine:C=>S(C.text),onDone:C=>{S(C===0?"✓ install complete":`✗ install exited ${C}`),p(!1),x(C===0)},onError:C=>{S(`✗ ${C}`),p(!1)}}))}return a.jsxs("div",{className:"flex flex-col gap-3",children:[a.jsxs("div",{className:"flex items-end gap-2",children:[a.jsx(Bc,{label:"Install command (optional)",className:"flex-1",children:a.jsx(nt,{value:l,placeholder:"e.g. npm install",onChange:C=>u(C.target.value)})}),a.jsxs(Q,{variant:"outline",onClick:w,disabled:d||!l.trim(),children:[d?a.jsx(ht,{className:"size-4 animate-spin"}):a.jsx(gC,{className:"size-4"}),"Install"]})]}),h.length>0?a.jsx("pre",{ref:_,className:"max-h-48 overflow-auto rounded-md border border-border bg-black/80 p-2 font-mono text-[11px] text-green-200",children:h.join(`
|
|
172
|
-
`)}):null,s?a.jsx("p",{className:"text-sm text-destructive",children:s}):null,a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsxs(Q,{variant:"ghost",size:"sm",onClick:n,children:[a.jsx(lu,{className:"size-3.5"}),"Back"]}),a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(Q,{variant:"outline",onClick:()=>o(!1),disabled:t,children:"Register only"}),a.jsxs(Q,{onClick:()=>o(!0),disabled:t,children:[t?a.jsx(ht,{className:"size-4 animate-spin"}):a.jsx(xr,{className:"size-4"}),g||!l.trim()?"Register & start":"Skip install & start"]})]})]})]})}function Bc({label:e,className:t,children:s}){return a.jsxs("label",{className:`flex flex-col gap-1 text-xs ${t??""}`,children:[a.jsx("span",{className:"font-medium text-muted-foreground",children:e}),s]})}function Lq({data:e,onRefresh:t,focusService:s,onServiceFocused:n}){const o=e.config.services[0]?.name??"",[l,u]=y.useState(o),[h,m]=y.useState(null),[d,p]=y.useState(!1),{sendToAgent:g,startOnboard:x}=At(),[_,S]=y.useState(!1),[w,C]=y.useState(!1),[N,j]=y.useState(!1),[E,A]=y.useState(!1),O=y.useRef({}),{error:P,message:D,success:T}=Es(),z=y.useMemo(()=>new Set(e.config.bundles.flatMap(R=>R.services)),[e.config.bundles]),L=y.useMemo(()=>{const R=new Map;for(const Z of e.config.bundles)for(const ie of Z.services)R.has(ie)||R.set(ie,Z.name);return R},[e.config.bundles]),I=y.useMemo(()=>e.config.services.filter(R=>!z.has(R.name)),[e.config.services,z]),$=e.health??{},U=e.config.bundles.length>0||I.length>0;y.useEffect(()=>{!e.config.services.some(Z=>Z.name===l)&&o&&u(o)},[e.config.services,o,l]),y.useEffect(()=>{s&&e.config.services.some(R=>R.name===s)&&(u(s),n?.())},[s,e.config.services,n]);const W=y.useMemo(()=>e.config.services.find(R=>R.name===l),[e.config.services,l]),G=l?e.runtime.services[l]:void 0,B=l?$[l]:void 0;async function V(R,Z){if(!R.services.includes(Z))try{await O6(R.name,R.services,Z),T(`Added ${Z} to ${R.name}.`),await t()}catch(ie){P(ie instanceof Error?ie.message:String(ie))}}async function X(){if(W){if(qc(G?.state)){P(`Stop ${W.name} before deleting it.`);return}if(window.confirm(`Delete service "${W.name}"? This removes it from your config.`))try{await D6(W.name),T(`Deleted ${W.name}.`),await t()}catch(R){P(R instanceof Error?R.message:String(R))}}}async function K(R){const Z=e.config.bundles.filter(ie=>ie.services.includes(R));if(Z.length!==0)try{for(const ie of Z)await L6(ie.name,ie.services,R);D({text:`Removed ${R} from ${Z.map(ie=>ie.name).join(", ")}.`}),await t()}catch(ie){P(ie instanceof Error?ie.message:String(ie))}}y.useEffect(()=>{const R=Object.fromEntries(e.config.services.map(ie=>[ie.name,e.runtime.services[ie.name]?.state??"stopped"])),Z=O.current;if(Object.keys(Z).length){const ie=new Map,de=new Map;for(const fe of e.config.services){const pe=R[fe.name],Se=Z[fe.name];if(!Se||Se===pe)continue;const Le=e.runtime.services[fe.name],ve=L.get(fe.name);if(ve){const We=ie.get(ve)??new Map;if(We.set(pe,(We.get(pe)??0)+1),ie.set(ve,We),pe==="exited"){const ge=de.get(ve)??[];ge.push(Le?.exitCode),de.set(ve,ge)}continue}if(pe==="running")T(`${fe.name} is running.`);else if(pe==="stopped")D({text:`${fe.name} stopped.`});else if(pe==="starting")D({text:`${fe.name} is starting.`});else if(pe==="exited"){const We=Le?.exitCode===void 0||Le.exitCode===null?"":` with code ${Le.exitCode}`;P(`${fe.name} exited${We}.`)}}for(const[fe,pe]of ie)Bq({exitCodes:de.get(fe)??[],groupName:fe,showErrorToast:P,showMessageToast:D,showSuccessToast:T,transitions:pe})}O.current=R},[e.config.services,e.runtime.services,L,P,D,T]);const te=e.config.services.length>0;return a.jsxs(a.Fragment,{children:[te?a.jsxs("div",{className:ae("grid h-full min-h-0 overflow-hidden bg-card/85",w?"lg:grid-cols-[320px_minmax(0,1fr)]":"lg:grid-cols-[320px_minmax(0,1fr)_340px]"),children:[a.jsx("div",{className:"min-h-0 min-w-0 overflow-auto border-r border-border",children:a.jsxs(gi,{className:"min-w-0 rounded-none border-0 border-b border-border bg-transparent",children:[a.jsx(bi,{className:"border-b border-border px-3 py-2",children:a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsx(xi,{className:"text-sm",children:"Services"}),a.jsxs("div",{className:"flex items-center gap-1",children:[a.jsxs(Q,{"aria-haspopup":"dialog",className:"h-7 gap-1.5 px-2 text-xs",onClick:()=>S(!0),size:"sm",type:"button",variant:"outline",children:[a.jsx(MC,{className:"size-3.5"}),"Logs"]}),a.jsx(zq,{onCreateGroup:()=>m("group"),onCreateService:()=>m("service"),onOnboardRepo:()=>p(!0),onOnboardWithAi:x,canGroupWithAi:I.length>1,onCreateWithAi:()=>g({prompt:xw,source:{type:"service-setup",label:"Add a service"},label:"Help me add a new service, one step at a time."}),onGroupWithAi:()=>g({prompt:Pz(I),source:{type:"group-services",label:"Group services"},label:"Propose how to group my ungrouped services."})})]})]})}),a.jsx(vi,{className:"p-0",children:U?a.jsxs("div",{className:"divide-y divide-border",children:[e.config.bundles.map(R=>a.jsx(FB,{group:R,onRefresh:t,ports:e.ports,allServices:e.config.services,health:$,services:e.config.services.filter(Z=>R.services.includes(Z.name)),statuses:e.runtime.services,timeline:e.timeline,selectedService:l,onSelectService:u,onDropService:Z=>{V(R,Z)}},R.name)),I.length?a.jsxs("div",{className:ae("transition-colors",E&&"bg-primary/5 outline-dashed outline-2 -outline-offset-2 outline-primary/60"),onDragOver:R=>{R.dataTransfer.types.includes(eu)&&(R.preventDefault(),R.dataTransfer.dropEffect="move",A(!0))},onDragLeave:()=>A(!1),onDrop:R=>{R.preventDefault(),A(!1);const Z=R.dataTransfer.getData(eu);Z&&K(Z)},children:[a.jsxs("div",{className:"flex items-center justify-between gap-2 bg-muted/55 px-3 py-1 text-[10px] font-semibold uppercase text-muted-foreground",children:[a.jsx("span",{children:"Ungrouped"}),a.jsx("span",{className:"text-muted-foreground/80",children:I.length})]}),a.jsx("div",{className:"divide-y divide-border",children:I.map(R=>a.jsx(i3,{service:R,status:e.runtime.services[R.name],health:$[R.name],ports:e.ports,onRefresh:t,timeline:e.timeline,selected:l===R.name,onSelect:()=>u(R.name)},R.name))})]}):null]}):a.jsx(Gh,{label:"No services registered yet."})})]})}),a.jsx("div",{className:"min-h-0 min-w-0 overflow-auto",children:W?a.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[a.jsxs("div",{className:"shrink-0 space-y-2 border-b border-border bg-background/60 px-4 py-3",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[a.jsx("h2",{className:"min-w-0 truncate text-base font-semibold",children:W.name}),a.jsx(vx,{state:G?.state??"stopped"}),a.jsxs("div",{className:"ml-auto flex shrink-0 items-center gap-1.5",children:[(()=>{const R=G?.url??(W.port?VB(W.port):void 0);return R?a.jsx(il,{label:`Open ${R}`,children:a.jsx(Q,{"aria-label":"Open in browser",className:"size-7",onClick:()=>window.open(R,"_blank","noopener,noreferrer"),size:"icon",type:"button",variant:"outline",children:a.jsx(la,{})})}):null})(),B?.agentContext&&W?a.jsx(il,{label:"Debug this service with AI",children:a.jsx(Q,{"aria-label":"Debug this service with AI",className:"size-7",onClick:()=>g({prompt:$z({service:W.name,context:B.agentContext}),source:{type:"service-debug",label:W.name},label:`Debug \`${W.name}\` with its current context.`}),size:"icon",type:"button",variant:"outline",children:a.jsx(Tt,{className:"size-3.5"})})}):null,a.jsx(xx,{active:qc(G?.state),baseUrl:`/api/services/${encodeURIComponent(W.name)}`,compact:!0,targetLabel:W.name,onRefresh:t}),a.jsx(x3,{className:"size-7 border border-border bg-background opacity-100 hover:border-foreground/30",items:[{icon:a.jsx(Kc,{className:"size-3.5"}),label:"Edit service",onSelect:()=>j(!0)},...qc(G?.state)?[]:[{icon:a.jsx(ha,{className:"size-3.5 text-destructive"}),label:"Delete service",onSelect:()=>{X()}}]],label:`More actions for ${W.name}`}),a.jsx(il,{label:w?"Show Ports & Timeline":"Hide Ports & Timeline",side:"left",children:a.jsx(Q,{"aria-label":w?"Show Ports & Timeline":"Hide Ports & Timeline",className:"size-7",onClick:()=>C(R=>!R),size:"icon",type:"button",variant:"ghost",children:w?a.jsx(s4,{}):a.jsx(pi,{})})})]})]}),W.command?a.jsxs("div",{className:"truncate font-mono text-[11px] text-muted-foreground",title:W.command,children:["$ ",W.command]}):null,W.cwd?a.jsx("div",{className:"truncate font-mono text-[11px] text-muted-foreground",title:W.cwd,children:W.cwd}):null,a.jsx(j$,{health:B})]}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:a.jsx(jq,{serviceName:W.name,status:G,health:B,timeline:e.timeline??[],onRefresh:t},W.name)})]}):a.jsx(Gh,{label:"Select a service to see details."})}),w?null:a.jsxs("div",{className:"min-h-0 overflow-auto border-l border-border",children:[a.jsx(D$,{ports:e.ports}),a.jsx(x$,{events:e.timeline??[]})]})]}):a.jsx(E$,{onOnboardRepo:()=>p(!0),onOnboardWithAi:x,onCreateService:()=>m("service"),onCreateWithAi:()=>g({prompt:xw,source:{type:"service-setup",label:"Add a service"},label:"Help me add a new service, one step at a time."})}),N&&W?a.jsx(Xn,{icon:a.jsx(Kc,{}),onClose:()=>j(!1),size:"lg",title:`Edit Service — ${W.name}`,children:a.jsx(Nw,{cwd:e.cwd,initialService:W,onRefresh:t,onSaved:()=>j(!1)})}):null,h?a.jsx(Xn,{icon:h==="service"?a.jsx(xs,{}):a.jsx(hC,{}),onClose:()=>m(null),size:h==="service"?"lg":"md",title:h==="service"?"Add Service":"Create Group",children:h==="service"?a.jsx(Nw,{cwd:e.cwd,onRefresh:t,onSaved:()=>m(null)}):a.jsx(n3,{services:I,onRefresh:t,onSaved:()=>m(null)})}):null,d?a.jsx(Aq,{onClose:()=>p(!1),onRefresh:t}):null,_?a.jsx(G$,{initialService:l||void 0,onClose:()=>S(!1),services:e.config.services.map(R=>R.name)}):null]})}function zq({onCreateService:e,onCreateGroup:t,onCreateWithAi:s,onGroupWithAi:n,canGroupWithAi:o,onOnboardRepo:l,onOnboardWithAi:u}){const[h,m]=y.useState(!1);function d(p){m(!1),p()}return a.jsxs("div",{className:"relative",children:[a.jsx(il,{label:"Add",side:"bottom",children:a.jsx(Q,{"aria-expanded":h,"aria-haspopup":"menu","aria-label":"Add service or group",className:"size-7",onClick:()=>m(p=>!p),size:"icon",type:"button",variant:"ghost",children:a.jsx(xs,{})})}),h?a.jsxs(a.Fragment,{children:[a.jsx("button",{"aria-hidden":!0,className:"fixed inset-0 z-[40] cursor-default",onClick:()=>m(!1),tabIndex:-1,type:"button"}),a.jsxs("div",{className:"absolute right-0 z-[50] mt-1 w-56 overflow-hidden rounded-md border border-border bg-card py-1 shadow-lg",role:"menu",children:[a.jsxs("div",{className:"group flex items-stretch",children:[a.jsxs("button",{className:"flex flex-1 items-center gap-2 whitespace-nowrap px-3 py-2 text-left text-sm hover:bg-muted/60 [&_svg]:size-4",onClick:()=>d(e),role:"menuitem",type:"button",children:[a.jsx(xs,{}),"Create Service"]}),a.jsxs("button",{className:"flex max-w-0 items-center gap-1.5 overflow-hidden whitespace-nowrap border-l border-transparent px-0 text-[11px] font-medium text-muted-foreground opacity-0 transition-all duration-200 ease-out hover:bg-muted/60 hover:text-foreground group-hover:max-w-24 group-hover:border-border group-hover:px-3 group-hover:opacity-100",onClick:()=>d(s),role:"menuitem",title:"Set up with AI — the agent walks you through it",type:"button",children:[a.jsx(Tt,{className:"size-3.5 shrink-0"}),"AI"]})]}),a.jsxs("div",{className:"group flex items-stretch",children:[a.jsxs("button",{className:"flex flex-1 items-center gap-2 whitespace-nowrap px-3 py-2 text-left text-sm hover:bg-muted/60 [&_svg]:size-4",onClick:()=>d(t),role:"menuitem",type:"button",children:[a.jsx(hC,{}),"Create Group"]}),o?a.jsxs("button",{className:"flex max-w-0 items-center gap-1.5 overflow-hidden whitespace-nowrap border-l border-transparent px-0 text-[11px] font-medium text-muted-foreground opacity-0 transition-all duration-200 ease-out hover:bg-muted/60 hover:text-foreground group-hover:max-w-24 group-hover:border-border group-hover:px-3 group-hover:opacity-100",onClick:()=>d(n),role:"menuitem",title:"Group with AI — the agent proposes groupings for your ungrouped services",type:"button",children:[a.jsx(Tt,{className:"size-3.5 shrink-0"}),"AI"]}):null]}),a.jsxs("div",{className:"group flex items-stretch",children:[a.jsxs("button",{className:"flex flex-1 items-center gap-2 whitespace-nowrap px-3 py-2 text-left text-sm hover:bg-muted/60 [&_svg]:size-4",onClick:()=>d(l),role:"menuitem",type:"button",children:[a.jsx(pn,{}),"Add from GitHub"]}),a.jsxs("button",{className:"flex max-w-0 items-center gap-1.5 overflow-hidden whitespace-nowrap border-l border-transparent px-0 text-[11px] font-medium text-muted-foreground opacity-0 transition-all duration-200 ease-out hover:bg-muted/60 hover:text-foreground group-hover:max-w-24 group-hover:border-border group-hover:px-3 group-hover:opacity-100",onClick:()=>d(u),role:"menuitem",title:"Onboard with AI — the agent clones, detects and runs it for you",type:"button",children:[a.jsx(Tt,{className:"size-3.5 shrink-0"}),"AI"]})]})]})]}):null]})}function Bq({exitCodes:e,groupName:t,showErrorToast:s,showMessageToast:n,showSuccessToast:o,transitions:l}){if(l.size===1){const[m]=l.keys();if(m==="running")o(`${t} group is running.`);else if(m==="stopped")n({text:`${t} group stopped.`});else if(m==="starting")n({text:`${t} group is starting.`});else if(m==="exited"){const d=e.filter(g=>g!=null),p=d.length?` with code ${d.join(", ")}`:"";s(`${t} group exited${p}.`)}return}const u=[...l.entries()].map(([m,d])=>`${d} ${m}`).join(", "),h=`${t} group updated: ${u}.`;l.has("exited")?s(h):n({text:h})}function Iq({data:e,onOpenService:t}){const s=y.useMemo(()=>Pq(e),[e]);return s.length?a.jsxs("div",{className:"flex shrink-0 items-center gap-3 overflow-x-auto border-b border-border bg-card/60 px-4 py-1.5 backdrop-blur",children:[a.jsxs("span",{className:"flex shrink-0 items-center gap-1.5 font-mono text-[10px] uppercase tracking-wider text-muted-foreground",children:[a.jsx(Ga,{className:"size-3"}),"Running"]}),a.jsx("div",{className:"flex min-w-0 items-center gap-2",children:s.map(n=>a.jsxs("button",{className:"group flex shrink-0 items-center gap-2 rounded-md border border-border/60 bg-background/60 px-2.5 py-1 font-mono text-[11px] transition-colors hover:border-border hover:bg-muted",onClick:()=>t(n.name),title:n.url?`${n.name} — ${n.url}`:n.name,type:"button",children:[a.jsx("span",{className:ae("size-2 shrink-0 rounded-full",Hq(n.tone))}),a.jsx("span",{className:"max-w-40 truncate font-medium text-foreground",children:n.name}),n.port?a.jsxs("span",{className:"text-muted-foreground",children:[":",n.port]}):null,n.uptime?a.jsxs("span",{className:"text-muted-foreground/70",children:["↑",n.uptime]}):null]},n.name))})]}):null}function Pq(e){const t=new Map(e.config.services.map(s=>[s.name,s.port]));return Object.values(e.runtime.services).filter(s=>s.state==="running"||s.state==="starting").map(s=>({name:s.name,tone:$q(s,e.health[s.name]),port:t.get(s.name)??Uq(s.url),uptime:s.state==="running"?Fq(s.startedAt):"starting…",url:s.url})).sort((s,n)=>s.name.localeCompare(n.name))}function $q(e,t){return e.state==="starting"?"starting":t?.status==="healthy"?"healthy":t?.status==="warning"?"warning":t?.status==="unhealthy"?"unhealthy":"healthy"}function Hq(e){return e==="starting"?"animate-pulse bg-amber-500":e==="warning"?"bg-amber-500":e==="unhealthy"?"bg-red-500":e==="unknown"?"bg-zinc-500":"bg-emerald-500"}function Uq(e){if(e)try{const t=new URL(e).port;return t?Number(t):void 0}catch{return}}function Fq(e){if(!e)return;const t=new Date(e).getTime();if(Number.isNaN(t))return;const s=Math.max(0,Math.floor((Date.now()-t)/1e3));if(s<60)return`${s}s`;const n=Math.floor(s/60);if(n<60)return`${n}m`;const o=Math.floor(n/60),l=n%60;return o<24?`${o}h${l?`${l}m`:""}`:`${Math.floor(o/24)}d${o%24?`${o%24}h`:""}`}function qq(){const[e,t]=y.useState([]),[s,n]=y.useState(null),[o,l]=y.useState(!1);y.useEffect(()=>{let m=!1;return(async()=>{let d=await Q6().catch(()=>[]);if(d.length===0){const p=await uh().catch(()=>null);d=p?[p]:[]}m||(t(d),n(d[0]?.id??null))})(),()=>{m=!0}},[]);const u=y.useCallback(async()=>{l(!0);try{const m=await uh();t(d=>[...d,m]),n(m.id)}finally{l(!1)}},[]),h=y.useCallback(async m=>{l(!0);try{await J6(m);const d=e.findIndex(g=>g.id===m),p=e.filter(g=>g.id!==m);if(p.length===0){const g=await uh();t([g]),n(g.id);return}if(t(p),s===m){const g=p[Math.min(d,p.length-1)];n(g.id)}}finally{l(!1)}},[e,s]);return a.jsxs("section",{className:"flex h-full min-h-0 flex-col bg-[#090909] text-white",children:[a.jsxs("div",{"aria-label":"Terminal tabs",className:"flex shrink-0 items-center gap-1 overflow-x-auto border-b border-white/10 bg-[#111111] px-2 py-1.5",role:"tablist",children:[e.map((m,d)=>{const p=m.label??`Terminal ${d+1}`;return a.jsxs("div",{className:ae("group flex items-center gap-1 rounded-md border border-transparent px-2 py-1 text-xs",m.id===s?"border-white/15 bg-white/10 text-white":"text-white/60 hover:bg-white/5"),children:[a.jsx("button",{"aria-selected":m.id===s,className:"max-w-[160px] truncate font-medium",onClick:()=>n(m.id),role:"tab",type:"button",children:p}),a.jsx("button",{"aria-label":`Close ${p}`,className:"rounded p-0.5 text-white/40 opacity-0 transition hover:bg-white/10 hover:text-white group-hover:opacity-100",disabled:o,onClick:()=>{h(m.id)},type:"button",children:a.jsx(Ns,{className:"size-3"})})]},m.id)}),a.jsx("button",{"aria-label":"New terminal",className:"ml-1 rounded-md p-1 text-white/60 transition hover:bg-white/10 hover:text-white disabled:opacity-40",disabled:o,onClick:()=>{u()},type:"button",children:a.jsx(xs,{className:"size-4"})})]}),a.jsx("div",{className:"relative min-h-0 flex-1",children:e.length===0?a.jsx("div",{className:"flex h-full items-center justify-center font-mono text-[11px] text-white/40",children:"Starting terminal…"}):e.map(m=>a.jsx("div",{className:"absolute inset-0",children:a.jsx(f5,{active:m.id===s,sessionId:m.id})},m.id))})]})}function m5({branch:e}){return a.jsx("span",{className:"min-w-0 max-w-40",title:e,children:a.jsx(Pe,{className:"w-full max-w-full shadow-none",variant:"outline",children:e})})}function Vq({branch:e,error:t,files:s,selectedFile:n,onSelectFile:o,root:l,staging:u}){const h=y.useMemo(()=>Yq(s).filter(p=>p.files.length),[s]),[m,d]=y.useState({staged:!1,unstaged:!1,untracked:!1});return a.jsxs("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-b border-border bg-card/95 px-2.5 py-1.5",children:[a.jsxs("span",{className:"flex min-w-0 items-center gap-1.5 text-[12px] font-semibold tracking-tight",children:[a.jsx(pn,{className:"size-3.5"}),a.jsx("span",{className:"truncate",children:"Changes"})]}),a.jsxs("span",{className:"flex shrink-0 items-center gap-1.5",children:[e?a.jsx(m5,{branch:e}):null,a.jsx(Pe,{variant:"secondary",children:s.length})]})]}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto py-1",children:h.length?h.map(p=>a.jsx(Gq,{collapsed:m[p.id],group:p,onSelectFile:o,onToggle:()=>d(g=>({...g,[p.id]:!g[p.id]})),root:l,selectedFile:n,staging:u},p.id)):a.jsx(Ve,{variant:"muted",className:"m-3 text-center",children:t??"No changed files."})})]})}function Gq({collapsed:e,group:t,onSelectFile:s,onToggle:n,root:o,selectedFile:l,staging:u}){const h=e?pi:Qn,m=t.files.map(p=>p.path),d=u?t.id==="staged"?{label:"Unstage all",run:()=>u.onUnstage(m)}:{label:"Stage all",run:()=>u.onStage(m)}:null;return a.jsxs("section",{className:"border-b border-border last:border-b-0",children:[a.jsxs("div",{className:"flex w-full items-center justify-between gap-2 bg-muted/45 px-2 py-0.5 text-[10px] font-semibold uppercase text-muted-foreground hover:bg-muted",children:[a.jsxs("button",{className:"flex min-w-0 flex-1 items-center gap-1.5 text-left",onClick:n,type:"button",children:[a.jsx(h,{className:"size-3.5"}),a.jsx("span",{className:"truncate",children:t.label})]}),d?a.jsx("button",{className:"shrink-0 rounded px-1 text-[10px] font-medium normal-case text-muted-foreground transition-colors hover:bg-background hover:text-foreground disabled:opacity-50",disabled:u?.busy,onClick:d.run,type:"button",children:d.label}):null,a.jsx(Pe,{className:"min-w-6 justify-center font-mono shadow-none",size:"small",variant:"outline",children:t.files.length})]}),e?null:a.jsx("div",{children:t.files.map(p=>a.jsx(Wq,{active:l===p.path,file:p,group:t.id,onClick:()=>s(p.path),root:o,staging:u},p.path))})]})}function Wq({active:e,file:t,group:s,onClick:n,root:o,staging:l}){const u=t.path.split("/").pop()||t.path,h=t.path.split("/").slice(0,-1).join("/"),m=o?s3(vu(o,t.path)):{},d=s==="staged";return a.jsxs("div",{className:ae("group flex w-full items-center gap-1.5 px-1 py-0.5 text-[12px] hover:bg-muted",e&&"bg-muted font-medium"),children:[a.jsxs("button",{"aria-label":`Open changed file ${t.path}`,className:"flex min-w-0 flex-1 items-center gap-1.5 text-left",onClick:n,type:"button",...m,children:[a.jsx(_x,{path:t.path}),a.jsxs("span",{className:"flex min-w-0 flex-1 items-baseline gap-1.5 truncate",children:[a.jsx("span",{"data-testid":"changed-file-name",className:"shrink-0 truncate",children:u}),h?a.jsx("span",{"data-testid":"changed-file-dir",className:"min-w-0 truncate text-muted-foreground",children:h}):null]})]}),l?a.jsx("button",{"aria-label":`${d?"Unstage":"Stage"} ${t.path}`,className:"shrink-0 rounded p-0.5 text-muted-foreground opacity-0 transition-colors hover:bg-background hover:text-foreground focus:opacity-100 group-hover:opacity-100 disabled:opacity-50",disabled:l.busy,onClick:()=>d?l.onUnstage([t.path]):l.onStage([t.path]),title:d?"Unstage":"Stage",type:"button",children:d?a.jsx(DM,{className:"size-3.5"}):a.jsx(xs,{className:"size-3.5"})}):null,a.jsx("span",{className:ae("ml-1 shrink-0 font-mono text-[10px] font-semibold",s==="untracked"&&"text-amber-700",s==="staged"&&"text-emerald-700",s==="unstaged"&&"text-zinc-800"),children:Kq(t,s)})]})}function Kq(e,t){return t==="untracked"?"?":t==="staged"?e.index.trim():e.workingTree.trim()}function Yq(e){return[{id:"unstaged",label:"Changes",files:e.filter(t=>!(t.index==="?"&&t.workingTree==="?")&&t.workingTree.trim())},{id:"staged",label:"Staged Changes",files:e.filter(t=>!(t.index==="?"&&t.workingTree==="?")&&t.index.trim()&&!t.workingTree.trim())},{id:"untracked",label:"Untracked Files",files:e.filter(t=>t.index==="?"&&t.workingTree==="?")}]}function Xq({branch:e,files:t,onDone:s}){const{sendToAgent:n}=At(),[o,l]=y.useState(""),[u,h]=y.useState(null),[m,d]=y.useState(null),[p,g]=y.useState(null),x=y.useMemo(()=>t.filter(C=>C.index.trim()&&C.index!=="?").map(C=>C.path),[t]),_=x.length>0&&o.trim().length>0&&u===null;async function S(C,N){h(C),d(null),g(null);try{if(await FC(o.trim()),N){const j=await cf();g(`Committed and pushed ${j.branch}.`)}else g("Committed staged changes.");l(""),s()}catch(j){d(j instanceof Error?j.message:String(j))}finally{h(null)}}function w(){n({prompt:Lz({branch:e,stagedFiles:x}),source:{type:"git-commit",label:"commit message"},mode:"send",label:"Suggest a commit message"})}return a.jsxs("div",{className:"shrink-0 space-y-2 border-t border-border bg-card/95 p-2.5",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a.jsx("span",{className:"text-[11px] font-semibold uppercase tracking-tight text-muted-foreground",children:"Commit"}),a.jsxs("span",{className:"flex items-center gap-1.5",children:[a.jsxs("span",{className:"text-[11px] text-muted-foreground",children:[x.length," staged"]}),a.jsxs("button",{"aria-label":"Suggest a commit message with AI",className:"flex items-center gap-1 rounded px-1.5 py-0.5 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-muted hover:text-foreground disabled:opacity-50",disabled:x.length===0,onClick:w,title:"Ask the agent to draft a commit message from the staged diff",type:"button",children:[a.jsx(Tt,{className:"size-3.5"}),"AI message"]})]})]}),a.jsx("textarea",{"aria-label":"Commit message",className:"min-h-16 w-full resize-y rounded-md border border-border bg-background px-2.5 py-1.5 text-[12px] outline-none transition-colors placeholder:text-muted-foreground focus:border-foreground/40 focus:ring-2 focus:ring-ring",onChange:C=>{l(C.target.value),d(null),g(null)},placeholder:x.length?"Commit message…":"Stage files to commit",value:o}),a.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[a.jsxs(Q,{disabled:!_,onClick:()=>{S("commit",!1)},size:"sm",type:"button",variant:"outline",children:[u==="commit"?a.jsx(ht,{className:"size-3.5 animate-spin"}):a.jsx(Zn,{className:"size-3.5"}),"Commit"]}),a.jsxs(Q,{disabled:!_,onClick:()=>{S("push",!0)},size:"sm",type:"button",children:[u==="push"?a.jsx(ht,{className:"size-3.5 animate-spin"}):a.jsx(Pb,{className:"size-3.5"}),"Commit & push"]})]}),m?a.jsx(Ve,{className:"px-2.5 py-1.5 text-[11px]",variant:"destructive",children:m}):p?a.jsx(Ve,{className:"px-2.5 py-1.5 text-[11px]",variant:"muted",children:p}):null]})}function Zq(e){const t={name:"",path:"",children:[],isFile:!1},s=new Map;s.set("",t);const n=[...e].sort();for(const l of n){const u=l.split("/");let h="";for(let m=0;m<u.length;m+=1){const d=u[m],p=m===u.length-1,g=h?`${h}/${d}`:d;let x=s.get(g);x||(x={name:d,path:g,children:[],isFile:p},s.set(g,x),s.get(h)?.children.push(x)),h=g}}const o=l=>{l.children.sort((u,h)=>u.isFile!==h.isFile?u.isFile?1:-1:u.name.localeCompare(h.name)),l.children.forEach(o)};return o(t),t}function q2(e,t){const s={"":!0},n=o=>{for(const l of o.children)l.isFile||(s[l.path]=!0,t&&n(l))};return n(e),s}function V2({defaultExpandAll:e=!1,paths:t,status:s,selectedFile:n,onSelectFile:o,branch:l,emptyMessage:u="No tracked files.",root:h,title:m="Files"}){const d=y.useMemo(()=>Zq(t),[t]),p=y.useMemo(()=>q2(d,e),[e,d]),g=y.useMemo(()=>q2(d,!0),[d]),x=Math.max(0,Object.keys(g).length-1),_=y.useMemo(()=>{const O=new Map;for(const P of s)O.set(P.path,P);return O},[s]),[S,w]=y.useState(p),[C,N]=y.useState(!1);y.useEffect(()=>{C||d.children.length===0||(w(p),N(!0))},[p,C,d.children.length]);function j(O){w(P=>({...P,[O]:!P[O]}))}function E(){w(g)}function A(){w({"":!0})}return a.jsxs("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-b border-border bg-card/95 px-2.5 py-1.5",children:[a.jsxs("span",{className:"flex min-w-0 items-center gap-1.5 text-[12px] font-semibold tracking-tight",children:[a.jsx(eo,{className:"size-3.5"}),a.jsx("span",{className:"truncate",children:m})]}),a.jsxs("span",{className:"flex shrink-0 items-center gap-1.5",children:[x>0?a.jsxs("span",{className:"flex items-center gap-0.5",children:[a.jsx("button",{"aria-label":"Expand all folders",className:"flex size-6 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",onClick:E,title:"Expand all folders",type:"button",children:a.jsx(bM,{className:"size-3.5"})}),a.jsx("button",{"aria-label":"Collapse all folders",className:"flex size-6 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",onClick:A,title:"Collapse all folders",type:"button",children:a.jsx(pM,{className:"size-3.5"})})]}):null,l?a.jsx(m5,{branch:l}):null,a.jsx(Pe,{variant:"secondary",children:t.length})]})]}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto py-1",children:d.children.length===0?a.jsx(Ve,{variant:"muted",className:"m-3 text-center",children:u}):d.children.map(O=>a.jsx(p5,{depth:0,expanded:S,node:O,onSelectFile:o,onToggle:j,root:h,selectedFile:n,statusByPath:_},O.path))})]})}function p5({depth:e,expanded:t,node:s,onSelectFile:n,onToggle:o,root:l,selectedFile:u,statusByPath:h}){const m=t[s.path]??!1,d=6+e*12,p=l?s3(vu(l,s.path)):{};if(s.isFile){const _=h.get(s.path),S=u===s.path;return a.jsxs("button",{className:ae("flex w-full items-center gap-1.5 px-1 py-0.5 text-left text-[12px] hover:bg-muted",S&&"bg-muted font-medium"),onClick:()=>n(s.path),style:{paddingLeft:d},type:"button",...p,children:[a.jsx(_x,{path:s.path}),a.jsx("span",{className:"min-w-0 flex-1 truncate",children:s.name}),_?a.jsx(Qq,{file:_}):null]})}const g=m?Qn:pi,x=m?lf:eo;return a.jsxs("div",{children:[a.jsxs("button",{className:"flex w-full items-center gap-1 py-0.5 text-left text-[12px] font-medium hover:bg-muted",onClick:()=>o(s.path),style:{paddingLeft:d},type:"button",...p,children:[a.jsx(g,{className:"size-3.5 shrink-0 text-muted-foreground"}),a.jsx(x,{className:"size-3.5 shrink-0 text-amber-600"}),a.jsx("span",{className:"min-w-0 flex-1 truncate",children:s.name})]}),m?s.children.map(_=>a.jsx(p5,{depth:e+1,expanded:t,node:_,onSelectFile:n,onToggle:o,root:l,selectedFile:u,statusByPath:h},_.path)):null]})}function Qq({file:e}){const t=e.workingTree.trim()||e.index.trim();if(!t)return null;const s=e.index.trim()&&!e.workingTree.trim()?"text-emerald-700":t==="?"?"text-amber-700":"text-zinc-700";return a.jsx("span",{className:ae("ml-1 shrink-0 font-mono text-[10px] font-semibold",s),children:t})}const Jq="modulepreload",eV=function(e){return"/"+e},G2={},tV=function(t,s,n){let o=Promise.resolve();if(s&&s.length>0){let m=function(d){return Promise.all(d.map(p=>Promise.resolve(p).then(g=>({status:"fulfilled",value:g}),g=>({status:"rejected",reason:g}))))};document.getElementsByTagName("link");const u=document.querySelector("meta[property=csp-nonce]"),h=u?.nonce||u?.getAttribute("nonce");o=m(s.map(d=>{if(d=eV(d),d in G2)return;G2[d]=!0;const p=d.endsWith(".css"),g=p?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${d}"]${g}`))return;const x=document.createElement("link");if(x.rel=p?"stylesheet":Jq,p||(x.as="script"),x.crossOrigin="",x.href=d,h&&x.setAttribute("nonce",h),document.head.appendChild(x),p)return new Promise((_,S)=>{x.addEventListener("load",_),x.addEventListener("error",()=>S(new Error(`Unable to preload CSS for ${d}`)))})}))}function l(u){const h=new Event("vite:preloadError",{cancelable:!0});if(h.payload=u,window.dispatchEvent(h),!h.defaultPrevented)throw u}return o.then(u=>{for(const h of u||[])h.status==="rejected"&&l(h.reason);return t().catch(l)})};var xg,W2;function sV(){if(W2)return xg;W2=1;function e(F){return F instanceof Map?F.clear=F.delete=F.set=function(){throw new Error("map is read-only")}:F instanceof Set&&(F.add=F.clear=F.delete=function(){throw new Error("set is read-only")}),Object.freeze(F),Object.getOwnPropertyNames(F).forEach(oe=>{const ye=F[oe],Fe=typeof ye;(Fe==="object"||Fe==="function")&&!Object.isFrozen(ye)&&e(ye)}),F}class t{constructor(oe){oe.data===void 0&&(oe.data={}),this.data=oe.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function s(F){return F.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function n(F,...oe){const ye=Object.create(null);for(const Fe in F)ye[Fe]=F[Fe];return oe.forEach(function(Fe){for(const Mt in Fe)ye[Mt]=Fe[Mt]}),ye}const o="</span>",l=F=>!!F.scope,u=(F,{prefix:oe})=>{if(F.startsWith("language:"))return F.replace("language:","language-");if(F.includes(".")){const ye=F.split(".");return[`${oe}${ye.shift()}`,...ye.map((Fe,Mt)=>`${Fe}${"_".repeat(Mt+1)}`)].join(" ")}return`${oe}${F}`};class h{constructor(oe,ye){this.buffer="",this.classPrefix=ye.classPrefix,oe.walk(this)}addText(oe){this.buffer+=s(oe)}openNode(oe){if(!l(oe))return;const ye=u(oe.scope,{prefix:this.classPrefix});this.span(ye)}closeNode(oe){l(oe)&&(this.buffer+=o)}value(){return this.buffer}span(oe){this.buffer+=`<span class="${oe}">`}}const m=(F={})=>{const oe={children:[]};return Object.assign(oe,F),oe};class d{constructor(){this.rootNode=m(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(oe){this.top.children.push(oe)}openNode(oe){const ye=m({scope:oe});this.add(ye),this.stack.push(ye)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(oe){return this.constructor._walk(oe,this.rootNode)}static _walk(oe,ye){return typeof ye=="string"?oe.addText(ye):ye.children&&(oe.openNode(ye),ye.children.forEach(Fe=>this._walk(oe,Fe)),oe.closeNode(ye)),oe}static _collapse(oe){typeof oe!="string"&&oe.children&&(oe.children.every(ye=>typeof ye=="string")?oe.children=[oe.children.join("")]:oe.children.forEach(ye=>{d._collapse(ye)}))}}class p extends d{constructor(oe){super(),this.options=oe}addText(oe){oe!==""&&this.add(oe)}startScope(oe){this.openNode(oe)}endScope(){this.closeNode()}__addSublanguage(oe,ye){const Fe=oe.root;ye&&(Fe.scope=`language:${ye}`),this.add(Fe)}toHTML(){return new h(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function g(F){return F?typeof F=="string"?F:F.source:null}function x(F){return w("(?=",F,")")}function _(F){return w("(?:",F,")*")}function S(F){return w("(?:",F,")?")}function w(...F){return F.map(ye=>g(ye)).join("")}function C(F){const oe=F[F.length-1];return typeof oe=="object"&&oe.constructor===Object?(F.splice(F.length-1,1),oe):{}}function N(...F){return"("+(C(F).capture?"":"?:")+F.map(Fe=>g(Fe)).join("|")+")"}function j(F){return new RegExp(F.toString()+"|").exec("").length-1}function E(F,oe){const ye=F&&F.exec(oe);return ye&&ye.index===0}const A=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function O(F,{joinWith:oe}){let ye=0;return F.map(Fe=>{ye+=1;const Mt=ye;let Ct=g(Fe),Re="";for(;Ct.length>0;){const ke=A.exec(Ct);if(!ke){Re+=Ct;break}Re+=Ct.substring(0,ke.index),Ct=Ct.substring(ke.index+ke[0].length),ke[0][0]==="\\"&&ke[1]?Re+="\\"+String(Number(ke[1])+Mt):(Re+=ke[0],ke[0]==="("&&ye++)}return Re}).map(Fe=>`(${Fe})`).join(oe)}const P=/\b\B/,D="[a-zA-Z]\\w*",T="[a-zA-Z_]\\w*",z="\\b\\d+(\\.\\d+)?",L="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",I="\\b(0b[01]+)",$="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",U=(F={})=>{const oe=/^#![ ]*\//;return F.binary&&(F.begin=w(oe,/.*\b/,F.binary,/\b.*/)),n({scope:"meta",begin:oe,end:/$/,relevance:0,"on:begin":(ye,Fe)=>{ye.index!==0&&Fe.ignoreMatch()}},F)},W={begin:"\\\\[\\s\\S]",relevance:0},G={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[W]},B={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[W]},V={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},X=function(F,oe,ye={}){const Fe=n({scope:"comment",begin:F,end:oe,contains:[]},ye);Fe.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const Mt=N("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return Fe.contains.push({begin:w(/[ ]+/,"(",Mt,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),Fe},K=X("//","$"),te=X("/\\*","\\*/"),R=X("#","$"),Z={scope:"number",begin:z,relevance:0},ie={scope:"number",begin:L,relevance:0},de={scope:"number",begin:I,relevance:0},fe={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[W,{begin:/\[/,end:/\]/,relevance:0,contains:[W]}]},pe={scope:"title",begin:D,relevance:0},Se={scope:"title",begin:T,relevance:0},Le={begin:"\\.\\s*"+T,relevance:0};var We=Object.freeze({__proto__:null,APOS_STRING_MODE:G,BACKSLASH_ESCAPE:W,BINARY_NUMBER_MODE:de,BINARY_NUMBER_RE:I,COMMENT:X,C_BLOCK_COMMENT_MODE:te,C_LINE_COMMENT_MODE:K,C_NUMBER_MODE:ie,C_NUMBER_RE:L,END_SAME_AS_BEGIN:function(F){return Object.assign(F,{"on:begin":(oe,ye)=>{ye.data._beginMatch=oe[1]},"on:end":(oe,ye)=>{ye.data._beginMatch!==oe[1]&&ye.ignoreMatch()}})},HASH_COMMENT_MODE:R,IDENT_RE:D,MATCH_NOTHING_RE:P,METHOD_GUARD:Le,NUMBER_MODE:Z,NUMBER_RE:z,PHRASAL_WORDS_MODE:V,QUOTE_STRING_MODE:B,REGEXP_MODE:fe,RE_STARTERS_RE:$,SHEBANG:U,TITLE_MODE:pe,UNDERSCORE_IDENT_RE:T,UNDERSCORE_TITLE_MODE:Se});function ge(F,oe){F.input[F.index-1]==="."&&oe.ignoreMatch()}function Te(F,oe){F.className!==void 0&&(F.scope=F.className,delete F.className)}function Me(F,oe){oe&&F.beginKeywords&&(F.begin="\\b("+F.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",F.__beforeBegin=ge,F.keywords=F.keywords||F.beginKeywords,delete F.beginKeywords,F.relevance===void 0&&(F.relevance=0))}function Pt(F,oe){Array.isArray(F.illegal)&&(F.illegal=N(...F.illegal))}function Pi(F,oe){if(F.match){if(F.begin||F.end)throw new Error("begin & end are not supported with match");F.begin=F.match,delete F.match}}function ni(F,oe){F.relevance===void 0&&(F.relevance=1)}const yr=(F,oe)=>{if(!F.beforeMatch)return;if(F.starts)throw new Error("beforeMatch cannot be used with starts");const ye=Object.assign({},F);Object.keys(F).forEach(Fe=>{delete F[Fe]}),F.keywords=ye.keywords,F.begin=w(ye.beforeMatch,x(ye.begin)),F.starts={relevance:0,contains:[Object.assign(ye,{endsParent:!0})]},F.relevance=0,delete ye.beforeMatch},$i=["of","and","for","in","not","or","if","then","parent","list","value"],Hi="keyword";function _e(F,oe,ye=Hi){const Fe=Object.create(null);return typeof F=="string"?Mt(ye,F.split(" ")):Array.isArray(F)?Mt(ye,F):Object.keys(F).forEach(function(Ct){Object.assign(Fe,_e(F[Ct],oe,Ct))}),Fe;function Mt(Ct,Re){oe&&(Re=Re.map(ke=>ke.toLowerCase())),Re.forEach(function(ke){const Ue=ke.split("|");Fe[Ue[0]]=[Ct,ft(Ue[0],Ue[1])]})}}function ft(F,oe){return oe?Number(oe):gn(F)?0:1}function gn(F){return $i.includes(F.toLowerCase())}const Ts={},gt=F=>{console.error(F)},ii=(F,...oe)=>{console.log(`WARN: ${F}`,...oe)},ds=(F,oe)=>{Ts[`${F}/${oe}`]||(console.log(`Deprecated as of ${F}. ${oe}`),Ts[`${F}/${oe}`]=!0)},Ui=new Error;function Fi(F,oe,{key:ye}){let Fe=0;const Mt=F[ye],Ct={},Re={};for(let ke=1;ke<=oe.length;ke++)Re[ke+Fe]=Mt[ke],Ct[ke+Fe]=!0,Fe+=j(oe[ke-1]);F[ye]=Re,F[ye]._emit=Ct,F[ye]._multi=!0}function io(F){if(Array.isArray(F.begin)){if(F.skip||F.excludeBegin||F.returnBegin)throw gt("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),Ui;if(typeof F.beginScope!="object"||F.beginScope===null)throw gt("beginScope must be object"),Ui;Fi(F,F.begin,{key:"beginScope"}),F.begin=O(F.begin,{joinWith:""})}}function Sr(F){if(Array.isArray(F.end)){if(F.skip||F.excludeEnd||F.returnEnd)throw gt("skip, excludeEnd, returnEnd not compatible with endScope: {}"),Ui;if(typeof F.endScope!="object"||F.endScope===null)throw gt("endScope must be object"),Ui;Fi(F,F.end,{key:"endScope"}),F.end=O(F.end,{joinWith:""})}}function _l(F){F.scope&&typeof F.scope=="object"&&F.scope!==null&&(F.beginScope=F.scope,delete F.scope)}function ro(F){_l(F),typeof F.beginScope=="string"&&(F.beginScope={_wrap:F.beginScope}),typeof F.endScope=="string"&&(F.endScope={_wrap:F.endScope}),io(F),Sr(F)}function qi(F){function oe(Re,ke){return new RegExp(g(Re),"m"+(F.case_insensitive?"i":"")+(F.unicodeRegex?"u":"")+(ke?"g":""))}class ye{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(ke,Ue){Ue.position=this.position++,this.matchIndexes[this.matchAt]=Ue,this.regexes.push([Ue,ke]),this.matchAt+=j(ke)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const ke=this.regexes.map(Ue=>Ue[1]);this.matcherRe=oe(O(ke,{joinWith:"|"}),!0),this.lastIndex=0}exec(ke){this.matcherRe.lastIndex=this.lastIndex;const Ue=this.matcherRe.exec(ke);if(!Ue)return null;const Kt=Ue.findIndex((Vi,oo)=>oo>0&&Vi!==void 0),zt=this.matchIndexes[Kt];return Ue.splice(0,Kt),Object.assign(Ue,zt)}}class Fe{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(ke){if(this.multiRegexes[ke])return this.multiRegexes[ke];const Ue=new ye;return this.rules.slice(ke).forEach(([Kt,zt])=>Ue.addRule(Kt,zt)),Ue.compile(),this.multiRegexes[ke]=Ue,Ue}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(ke,Ue){this.rules.push([ke,Ue]),Ue.type==="begin"&&this.count++}exec(ke){const Ue=this.getMatcher(this.regexIndex);Ue.lastIndex=this.lastIndex;let Kt=Ue.exec(ke);if(this.resumingScanAtSamePosition()&&!(Kt&&Kt.index===this.lastIndex)){const zt=this.getMatcher(0);zt.lastIndex=this.lastIndex+1,Kt=zt.exec(ke)}return Kt&&(this.regexIndex+=Kt.position+1,this.regexIndex===this.count&&this.considerAll()),Kt}}function Mt(Re){const ke=new Fe;return Re.contains.forEach(Ue=>ke.addRule(Ue.begin,{rule:Ue,type:"begin"})),Re.terminatorEnd&&ke.addRule(Re.terminatorEnd,{type:"end"}),Re.illegal&&ke.addRule(Re.illegal,{type:"illegal"}),ke}function Ct(Re,ke){const Ue=Re;if(Re.isCompiled)return Ue;[Te,Pi,ro,yr].forEach(zt=>zt(Re,ke)),F.compilerExtensions.forEach(zt=>zt(Re,ke)),Re.__beforeBegin=null,[Me,Pt,ni].forEach(zt=>zt(Re,ke)),Re.isCompiled=!0;let Kt=null;return typeof Re.keywords=="object"&&Re.keywords.$pattern&&(Re.keywords=Object.assign({},Re.keywords),Kt=Re.keywords.$pattern,delete Re.keywords.$pattern),Kt=Kt||/\w+/,Re.keywords&&(Re.keywords=_e(Re.keywords,F.case_insensitive)),Ue.keywordPatternRe=oe(Kt,!0),ke&&(Re.begin||(Re.begin=/\B|\b/),Ue.beginRe=oe(Ue.begin),!Re.end&&!Re.endsWithParent&&(Re.end=/\B|\b/),Re.end&&(Ue.endRe=oe(Ue.end)),Ue.terminatorEnd=g(Ue.end)||"",Re.endsWithParent&&ke.terminatorEnd&&(Ue.terminatorEnd+=(Re.end?"|":"")+ke.terminatorEnd)),Re.illegal&&(Ue.illegalRe=oe(Re.illegal)),Re.contains||(Re.contains=[]),Re.contains=[].concat(...Re.contains.map(function(zt){return Mn(zt==="self"?Re:zt)})),Re.contains.forEach(function(zt){Ct(zt,Ue)}),Re.starts&&Ct(Re.starts,ke),Ue.matcher=Mt(Ue),Ue}if(F.compilerExtensions||(F.compilerExtensions=[]),F.contains&&F.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return F.classNameAliases=n(F.classNameAliases||{}),Ct(F)}function _s(F){return F?F.endsWithParent||_s(F.starts):!1}function Mn(F){return F.variants&&!F.cachedVariants&&(F.cachedVariants=F.variants.map(function(oe){return n(F,{variants:null},oe)})),F.cachedVariants?F.cachedVariants:_s(F)?n(F,{starts:F.starts?n(F.starts):null}):Object.isFrozen(F)?n(F):F}var As="11.11.1";class yl extends Error{constructor(oe,ye){super(oe),this.name="HTMLInjectionError",this.html=ye}}const pa=s,ao=n,lt=Symbol("nomatch"),ri=7,bn=function(F){const oe=Object.create(null),ye=Object.create(null),Fe=[];let Mt=!0;const Ct="Could not find the language '{}', did you forget to load/include a language module?",Re={disableAutodetect:!0,name:"Plain text",contains:[]};let ke={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:p};function Ue(me){return ke.noHighlightRe.test(me)}function Kt(me){let ze=me.className+" ";ze+=me.parentNode?me.parentNode.className:"";const et=ke.languageDetectRe.exec(ze);if(et){const bt=Ks(et[1]);return bt||(ii(Ct.replace("{}",et[1])),ii("Falling back to no-highlight mode for this block.",me)),bt?et[1]:"no-highlight"}return ze.split(/\s+/).find(bt=>Ue(bt)||Ks(bt))}function zt(me,ze,et){let bt="",Xt="";typeof ze=="object"?(bt=me,et=ze.ignoreIllegals,Xt=ze.language):(ds("10.7.0","highlight(lang, code, ...args) has been deprecated."),ds("10.7.0",`Please use highlight(code, options) instead.
|
|
173
|
-
https://github.com/highlightjs/highlight.js/issues/2277`),Xt=me,bt=ze),et===void 0&&(et=!0);const Us={code:bt,language:Xt};ba("before:highlight",Us);const xn=Us.result?Us.result:Vi(Us.language,Us.code,et);return xn.code=Us.code,ba("after:highlight",xn),xn}function Vi(me,ze,et,bt){const Xt=Object.create(null);function Us(xe,De){return xe.keywords[De]}function xn(){if(!He.keywords){ts.addText(xt);return}let xe=0;He.keywordPatternRe.lastIndex=0;let De=He.keywordPatternRe.exec(xt),Ke="";for(;De;){Ke+=xt.substring(xe,De.index);const it=Ms.case_insensitive?De[0].toLowerCase():De[0],$t=Us(He,it);if($t){const[Rn,El]=$t;if(ts.addText(Ke),Ke="",Xt[it]=(Xt[it]||0)+1,Xt[it]<=ri&&(Nr+=El),Rn.startsWith("_"))Ke+=De[0];else{const Mu=Ms.classNameAliases[Rn]||Rn;vn(De[0],Mu)}}else Ke+=De[0];xe=He.keywordPatternRe.lastIndex,De=He.keywordPatternRe.exec(xt)}Ke+=xt.substring(xe),ts.addText(Ke)}function sn(){if(xt==="")return;let xe=null;if(typeof He.subLanguage=="string"){if(!oe[He.subLanguage]){ts.addText(xt);return}xe=Vi(He.subLanguage,xt,!0,Au[He.subLanguage]),Au[He.subLanguage]=xe._top}else xe=lo(xt,He.subLanguage.length?He.subLanguage:null);He.relevance>0&&(Nr+=xe.relevance),ts.__addSublanguage(xe._emitter,xe.language)}function jt(){He.subLanguage!=null?sn():xn(),xt=""}function vn(xe,De){xe!==""&&(ts.startScope(De),ts.addText(xe),ts.endScope())}function ju(xe,De){let Ke=1;const it=De.length-1;for(;Ke<=it;){if(!xe._emit[Ke]){Ke++;continue}const $t=Ms.classNameAliases[xe[Ke]]||xe[Ke],Rn=De[Ke];$t?vn(Rn,$t):(xt=Rn,xn(),xt=""),Ke++}}function uo(xe,De){return xe.scope&&typeof xe.scope=="string"&&ts.openNode(Ms.classNameAliases[xe.scope]||xe.scope),xe.beginScope&&(xe.beginScope._wrap?(vn(xt,Ms.classNameAliases[xe.beginScope._wrap]||xe.beginScope._wrap),xt=""):xe.beginScope._multi&&(ju(xe.beginScope,De),xt="")),He=Object.create(xe,{parent:{value:He}}),He}function kl(xe,De,Ke){let it=E(xe.endRe,Ke);if(it){if(xe["on:end"]){const $t=new t(xe);xe["on:end"](De,$t),$t.isMatchIgnored&&(it=!1)}if(it){for(;xe.endsParent&&xe.parent;)xe=xe.parent;return xe}}if(xe.endsWithParent)return kl(xe.parent,De,Ke)}function ho(xe){return He.matcher.regexIndex===0?(xt+=xe[0],1):(Er=!0,0)}function Cf(xe){const De=xe[0],Ke=xe.rule,it=new t(Ke),$t=[Ke.__beforeBegin,Ke["on:begin"]];for(const Rn of $t)if(Rn&&(Rn(xe,it),it.isMatchIgnored))return ho(De);return Ke.skip?xt+=De:(Ke.excludeBegin&&(xt+=De),jt(),!Ke.returnBegin&&!Ke.excludeBegin&&(xt=De)),uo(Ke,xe),Ke.returnBegin?0:De.length}function nn(xe){const De=xe[0],Ke=ze.substring(xe.index),it=kl(He,xe,Ke);if(!it)return lt;const $t=He;He.endScope&&He.endScope._wrap?(jt(),vn(De,He.endScope._wrap)):He.endScope&&He.endScope._multi?(jt(),ju(He.endScope,xe)):$t.skip?xt+=De:($t.returnEnd||$t.excludeEnd||(xt+=De),jt(),$t.excludeEnd&&(xt=De));do He.scope&&ts.closeNode(),!He.skip&&!He.subLanguage&&(Nr+=He.relevance),He=He.parent;while(He!==it.parent);return it.starts&&uo(it.starts,xe),$t.returnEnd?0:De.length}function Cl(){const xe=[];for(let De=He;De!==Ms;De=De.parent)De.scope&&xe.unshift(De.scope);xe.forEach(De=>ts.openNode(De))}let xa={};function fo(xe,De){const Ke=De&&De[0];if(xt+=xe,Ke==null)return jt(),0;if(xa.type==="begin"&&De.type==="end"&&xa.index===De.index&&Ke===""){if(xt+=ze.slice(De.index,De.index+1),!Mt){const it=new Error(`0 width match regex (${me})`);throw it.languageName=me,it.badRule=xa.rule,it}return 1}if(xa=De,De.type==="begin")return Cf(De);if(De.type==="illegal"&&!et){const it=new Error('Illegal lexeme "'+Ke+'" for mode "'+(He.scope||"<unnamed>")+'"');throw it.mode=He,it}else if(De.type==="end"){const it=nn(De);if(it!==lt)return it}if(De.type==="illegal"&&Ke==="")return xt+=`
|
|
174
|
-
`,1;if(Nl>1e5&&Nl>De.index*3)throw new Error("potential infinite loop, way more iterations than matches");return xt+=Ke,Ke.length}const Ms=Ks(me);if(!Ms)throw gt(Ct.replace("{}",me)),new Error('Unknown language: "'+me+'"');const Tu=qi(Ms);let mo="",He=bt||Tu;const Au={},ts=new ke.__emitter(ke);Cl();let xt="",Nr=0,Ki=0,Nl=0,Er=!1;try{if(Ms.__emitTokens)Ms.__emitTokens(ze,ts);else{for(He.matcher.considerAll();;){Nl++,Er?Er=!1:He.matcher.considerAll(),He.matcher.lastIndex=Ki;const xe=He.matcher.exec(ze);if(!xe)break;const De=ze.substring(Ki,xe.index),Ke=fo(De,xe);Ki=xe.index+Ke}fo(ze.substring(Ki))}return ts.finalize(),mo=ts.toHTML(),{language:me,value:mo,relevance:Nr,illegal:!1,_emitter:ts,_top:He}}catch(xe){if(xe.message&&xe.message.includes("Illegal"))return{language:me,value:pa(ze),illegal:!0,relevance:0,_illegalBy:{message:xe.message,index:Ki,context:ze.slice(Ki-100,Ki+100),mode:xe.mode,resultSoFar:mo},_emitter:ts};if(Mt)return{language:me,value:pa(ze),illegal:!1,relevance:0,errorRaised:xe,_emitter:ts,_top:He};throw xe}}function oo(me){const ze={value:pa(me),illegal:!1,relevance:0,_top:Re,_emitter:new ke.__emitter(ke)};return ze._emitter.addText(me),ze}function lo(me,ze){ze=ze||ke.languages||Object.keys(oe);const et=oo(me),bt=ze.filter(Ks).filter(kr).map(jt=>Vi(jt,me,!1));bt.unshift(et);const Xt=bt.sort((jt,vn)=>{if(jt.relevance!==vn.relevance)return vn.relevance-jt.relevance;if(jt.language&&vn.language){if(Ks(jt.language).supersetOf===vn.language)return 1;if(Ks(vn.language).supersetOf===jt.language)return-1}return 0}),[Us,xn]=Xt,sn=Us;return sn.secondBest=xn,sn}function _i(me,ze,et){const bt=ze&&ye[ze]||et;me.classList.add("hljs"),me.classList.add(`language-${bt}`)}function Yt(me){let ze=null;const et=Kt(me);if(Ue(et))return;if(ba("before:highlightElement",{el:me,language:et}),me.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",me);return}if(me.children.length>0&&(ke.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(me)),ke.throwUnescapedHTML))throw new yl("One of your code blocks includes unescaped HTML.",me.innerHTML);ze=me;const bt=ze.textContent,Xt=et?zt(bt,{language:et,ignoreIllegals:!0}):lo(bt);me.innerHTML=Xt.value,me.dataset.highlighted="yes",_i(me,et,Xt.language),me.result={language:Xt.language,re:Xt.relevance,relevance:Xt.relevance},Xt.secondBest&&(me.secondBest={language:Xt.secondBest.language,relevance:Xt.secondBest.relevance}),ba("after:highlightElement",{el:me,result:Xt,text:bt})}function Hs(me){ke=ao(ke,me)}const wr=()=>{co(),ds("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function Sl(){co(),ds("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let Cu=!1;function co(){function me(){co()}if(document.readyState==="loading"){Cu||window.addEventListener("DOMContentLoaded",me,!1),Cu=!0;return}document.querySelectorAll(ke.cssSelector).forEach(Yt)}function Nu(me,ze){let et=null;try{et=ze(F)}catch(bt){if(gt("Language definition for '{}' could not be registered.".replace("{}",me)),Mt)gt(bt);else throw bt;et=Re}et.name||(et.name=me),oe[me]=et,et.rawDefinition=ze.bind(null,F),et.aliases&&Gi(et.aliases,{languageName:me})}function ga(me){delete oe[me];for(const ze of Object.keys(ye))ye[ze]===me&&delete ye[ze]}function wl(){return Object.keys(oe)}function Ks(me){return me=(me||"").toLowerCase(),oe[me]||oe[ye[me]]}function Gi(me,{languageName:ze}){typeof me=="string"&&(me=[me]),me.forEach(et=>{ye[et.toLowerCase()]=ze})}function kr(me){const ze=Ks(me);return ze&&!ze.disableAutodetect}function Cr(me){me["before:highlightBlock"]&&!me["before:highlightElement"]&&(me["before:highlightElement"]=ze=>{me["before:highlightBlock"](Object.assign({block:ze.el},ze))}),me["after:highlightBlock"]&&!me["after:highlightElement"]&&(me["after:highlightElement"]=ze=>{me["after:highlightBlock"](Object.assign({block:ze.el},ze))})}function es(me){Cr(me),Fe.push(me)}function Eu(me){const ze=Fe.indexOf(me);ze!==-1&&Fe.splice(ze,1)}function ba(me,ze){const et=me;Fe.forEach(function(bt){bt[et]&&bt[et](ze)})}function Wi(me){return ds("10.7.0","highlightBlock will be removed entirely in v12.0"),ds("10.7.0","Please use highlightElement now."),Yt(me)}Object.assign(F,{highlight:zt,highlightAuto:lo,highlightAll:co,highlightElement:Yt,highlightBlock:Wi,configure:Hs,initHighlighting:wr,initHighlightingOnLoad:Sl,registerLanguage:Nu,unregisterLanguage:ga,listLanguages:wl,getLanguage:Ks,registerAliases:Gi,autoDetection:kr,inherit:ao,addPlugin:es,removePlugin:Eu}),F.debugMode=function(){Mt=!1},F.safeMode=function(){Mt=!0},F.versionString=As,F.regex={concat:w,lookahead:x,either:N,optional:S,anyNumberOfTimes:_};for(const me in We)typeof We[me]=="object"&&e(We[me]);return Object.assign(F,We),F},$s=bn({});return $s.newInstance=()=>bn({}),xg=$s,$s.HighlightJS=$s,$s.default=$s,xg}var vg,K2;function nV(){if(K2)return vg;K2=1;function e(t){const s=t.regex,n=s.concat(/[\p{L}_]/u,s.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),o=/[\p{L}0-9._:-]+/u,l={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},u={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},h=t.inherit(u,{begin:/\(/,end:/\)/}),m=t.inherit(t.APOS_STRING_MODE,{className:"string"}),d=t.inherit(t.QUOTE_STRING_MODE,{className:"string"}),p={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:o,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[l]},{begin:/'/,end:/'/,contains:[l]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[u,d,m,h,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[u,h,d,m]}]}]},t.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},l,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[d]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[p],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[p],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:s.concat(/</,s.lookahead(s.concat(n,s.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:p}]},{className:"tag",begin:s.concat(/<\//,s.lookahead(s.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}return vg=e,vg}var _g,Y2;function iV(){if(Y2)return _g;Y2=1;function e(t){const s=t.regex,n={},o={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:s.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},o]});const l={className:"subst",begin:/\$\(/,end:/\)/,contains:[t.BACKSLASH_ESCAPE]},u=t.inherit(t.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),h={begin:/<<-?\s*(?=\w+)/,starts:{contains:[t.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},m={className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,n,l]};l.contains.push(m);const d={match:/\\"/},p={className:"string",begin:/'/,end:/'/},g={match:/\\'/},x={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},t.NUMBER_MODE,n]},_=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],S=t.SHEBANG({binary:`(${_.join("|")})`,relevance:10}),w={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[t.inherit(t.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},C=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],N=["true","false"],j={match:/(\/[a-z._-]+)+/},E=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],A=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],O=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],P=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:C,literal:N,built_in:[...E,...A,"set","shopt",...O,...P]},contains:[S,t.SHEBANG(),w,x,u,h,j,m,d,p,g,n]}}return _g=e,_g}var yg,X2;function rV(){if(X2)return yg;X2=1;function e(t){const s=t.regex,n=t.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),o="decltype\\(auto\\)",l="[a-zA-Z_]\\w*::",h="("+o+"|"+s.optional(l)+"[a-zA-Z_]\\w*"+s.optional("<[^<>]+>")+")",m={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},p={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},t.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},g={className:"number",variants:[{match:/\b(0b[01']+)/},{match:/(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/},{match:/(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/},{match:/(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/}],relevance:0},x={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"},contains:[{begin:/\\\n/,relevance:0},t.inherit(p,{className:"string"}),{className:"string",begin:/<.*?>/},n,t.C_BLOCK_COMMENT_MODE]},_={className:"title",begin:s.optional(l)+t.IDENT_RE,relevance:0},S=s.optional(l)+t.IDENT_RE+"\\s*\\(",N={keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","typeof","typeof_unqual","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_BitInt","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal96","_Decimal128","_Decimal64x","_Decimal128x","_Float16","_Float32","_Float64","_Float128","_Float32x","_Float64x","_Float128x","const","static","constexpr","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},j=[x,m,n,t.C_BLOCK_COMMENT_MODE,g,p],E={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:N,contains:j.concat([{begin:/\(/,end:/\)/,keywords:N,contains:j.concat(["self"]),relevance:0}]),relevance:0},A={begin:"("+h+"[\\*&\\s]+)+"+S,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:N,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:o,keywords:N,relevance:0},{begin:S,returnBegin:!0,contains:[t.inherit(_,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:N,relevance:0,contains:[n,t.C_BLOCK_COMMENT_MODE,p,g,m,{begin:/\(/,end:/\)/,keywords:N,relevance:0,contains:["self",n,t.C_BLOCK_COMMENT_MODE,p,g,m]}]},m,n,t.C_BLOCK_COMMENT_MODE,x]};return{name:"C",aliases:["h"],keywords:N,disableAutodetect:!0,illegal:"</",contains:[].concat(E,A,j,[x,{begin:t.IDENT_RE+"::",keywords:N},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},t.TITLE_MODE]}]),exports:{preprocessor:x,strings:p,keywords:N}}}return yg=e,yg}var Sg,Z2;function aV(){if(Z2)return Sg;Z2=1;function e(t){const s=t.regex,n=t.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),o="decltype\\(auto\\)",l="[a-zA-Z_]\\w*::",h="(?!struct)("+o+"|"+s.optional(l)+"[a-zA-Z_]\\w*"+s.optional("<[^<>]+>")+")",m={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},p={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},t.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},g={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},x={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},t.inherit(p,{className:"string"}),{className:"string",begin:/<.*?>/},n,t.C_BLOCK_COMMENT_MODE]},_={className:"title",begin:s.optional(l)+t.IDENT_RE,relevance:0},S=s.optional(l)+t.IDENT_RE+"\\s*\\(",w=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],C=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],N=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],j=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],O={type:C,keyword:w,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:N},P={className:"function.dispatch",relevance:0,keywords:{_hint:j},begin:s.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,t.IDENT_RE,s.lookahead(/(<[^<>]+>|)\s*\(/))},D=[P,x,m,n,t.C_BLOCK_COMMENT_MODE,g,p],T={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:O,contains:D.concat([{begin:/\(/,end:/\)/,keywords:O,contains:D.concat(["self"]),relevance:0}]),relevance:0},z={className:"function",begin:"("+h+"[\\*&\\s]+)+"+S,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:O,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:o,keywords:O,relevance:0},{begin:S,returnBegin:!0,contains:[_],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[p,g]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:O,relevance:0,contains:[n,t.C_BLOCK_COMMENT_MODE,p,g,m,{begin:/\(/,end:/\)/,keywords:O,relevance:0,contains:["self",n,t.C_BLOCK_COMMENT_MODE,p,g,m]}]},m,n,t.C_BLOCK_COMMENT_MODE,x]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:O,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(T,z,P,D,[x,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:O,contains:["self",m]},{begin:t.IDENT_RE+"::",keywords:O},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}return Sg=e,Sg}var wg,Q2;function oV(){if(Q2)return wg;Q2=1;function e(t){const s=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],n=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],o=["default","false","null","true"],l=["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"],u=["add","alias","and","ascending","args","async","await","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value|0","var","when","where","with","yield"],h={keyword:l.concat(u),built_in:s,literal:o},m=t.inherit(t.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),d={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},p={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},g={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},x=t.inherit(g,{illegal:/\n/}),_={className:"subst",begin:/\{/,end:/\}/,keywords:h},S=t.inherit(_,{illegal:/\n/}),w={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},t.BACKSLASH_ESCAPE,S]},C={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},_]},N=t.inherit(C,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},S]});_.contains=[C,w,g,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,d,t.C_BLOCK_COMMENT_MODE],S.contains=[N,w,x,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,d,t.inherit(t.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const j={variants:[p,C,w,g,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},E={begin:"<",end:">",contains:[{beginKeywords:"in out"},m]},A=t.IDENT_RE+"(<"+t.IDENT_RE+"(\\s*,\\s*"+t.IDENT_RE+")*>)?(\\[\\])?",O={begin:"@"+t.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:h,illegal:/::/,contains:[t.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"<!--|-->"},{begin:"</?",end:">"}]}]}),t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},j,d,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},m,E,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[m,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[m,E,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+A+"\\s+)+"+t.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:h,contains:[{beginKeywords:n.join(" "),relevance:0},{begin:t.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[t.TITLE_MODE,E],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:h,relevance:0,contains:[j,d,t.C_BLOCK_COMMENT_MODE]},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},O]}}return wg=e,wg}var kg,J2;function lV(){if(J2)return kg;J2=1;const e=d=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:d.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[d.APOS_STRING_MODE,d.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:d.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),t=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],s=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],n=[...t,...s],o=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),l=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),u=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),h=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function m(d){const p=d.regex,g=e(d),x={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},_="and or not only",S=/@-?\w[\w]*(-\w+)*/,w="[a-zA-Z-][a-zA-Z0-9_-]*",C=[d.APOS_STRING_MODE,d.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[g.BLOCK_COMMENT,x,g.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+w,relevance:0},g.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+l.join("|")+")"},{begin:":(:)?("+u.join("|")+")"}]},g.CSS_VARIABLE,{className:"attribute",begin:"\\b("+h.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[g.BLOCK_COMMENT,g.HEXCOLOR,g.IMPORTANT,g.CSS_NUMBER_MODE,...C,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...C,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},g.FUNCTION_DISPATCH]},{begin:p.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:S},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:_,attribute:o.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...C,g.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+n.join("|")+")\\b"}]}}return kg=m,kg}var Cg,ek;function cV(){if(ek)return Cg;ek=1;function e(t){const s=t.regex,n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},o={begin:"^[-\\*]{3,}",end:"$"},l={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},u={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},h={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},m=/[A-Za-z][A-Za-z0-9+.-]*/,d={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:s.concat(/\[.+?\]\(/,m,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},p={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},g={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},x=t.inherit(p,{contains:[]}),_=t.inherit(g,{contains:[]});p.contains.push(_),g.contains.push(x);let S=[n,d];return[p,g,x,_].forEach(j=>{j.contains=j.contains.concat(S)}),S=S.concat(p,g),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:S},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:S}]}]},n,u,p,g,{className:"quote",begin:"^>\\s+",contains:S,end:"$"},l,o,d,h,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}return Cg=e,Cg}var Ng,tk;function uV(){if(tk)return Ng;tk=1;function e(t){const s=t.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:s.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:s.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}return Ng=e,Ng}var Eg,sk;function dV(){if(sk)return Eg;sk=1;function e(t){const s=t.regex,n="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",o=s.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),l=s.concat(o,/(::\w+)*/),h={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield",...["include","extend","prepend","public","private","protected","raise","throw"]],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]},m={className:"doctag",begin:"@[A-Za-z]+"},d={begin:"#<",end:">"},p=[t.COMMENT("#","$",{contains:[m]}),t.COMMENT("^=begin","^=end",{contains:[m],relevance:10}),t.COMMENT("^__END__",t.MATCH_NOTHING_RE)],g={className:"subst",begin:/#\{/,end:/\}/,keywords:h},x={className:"string",contains:[t.BACKSLASH_ESCAPE,g],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:s.concat(/<<[-~]?'?/,s.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[t.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[t.BACKSLASH_ESCAPE,g]})]}]},_="[1-9](_?[0-9])*|0",S="[0-9](_?[0-9])*",w={className:"number",relevance:0,variants:[{begin:`\\b(${_})(\\.(${S}))?([eE][+-]?(${S})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},C={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:h}]},D=[x,{variants:[{match:[/class\s+/,l,/\s+<\s+/,l]},{match:[/\b(class|module)\s+/,l]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:h},{match:[/(include|extend)\s+/,l],scope:{2:"title.class"},keywords:h},{relevance:0,match:[l,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:o,scope:"title.class"},{match:[/def/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[C]},{begin:t.IDENT_RE+"::"},{className:"symbol",begin:t.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[x,{begin:n}],relevance:0},w,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:h},{begin:"("+t.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[t.BACKSLASH_ESCAPE,g],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(d,p),relevance:0}].concat(d,p);g.contains=D,C.contains=D;const I=[{begin:/^\s*=>/,starts:{end:"$",contains:D}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:h,contains:D}}];return p.unshift(d),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:h,illegal:/\/\*/,contains:[t.SHEBANG({binary:"ruby"})].concat(I).concat(p).concat(D)}}return Eg=e,Eg}var jg,nk;function hV(){if(nk)return jg;nk=1;function e(t){const u={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:u,illegal:"</",contains:[t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{className:"string",variants:[t.QUOTE_STRING_MODE,t.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[t.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:u,illegal:/["']/}]}]}}return jg=e,jg}var Tg,ik;function fV(){if(ik)return Tg;ik=1;function e(t){const s=t.regex,n=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[t.HASH_COMMENT_MODE,t.QUOTE_STRING_MODE,t.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:s.concat(n,s.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}return Tg=e,Tg}var Ag,rk;function mV(){if(rk)return Ag;rk=1;function e(t){const s=t.regex,n={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:t.NUMBER_RE}]},o=t.COMMENT();o.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const l={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},u={className:"literal",begin:/\bon|off|true|false|yes|no\b/},h={className:"string",contains:[t.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},m={begin:/\[/,end:/\]/,contains:[o,u,l,h,n,"self"],relevance:0},d=/[A-Za-z0-9_-]+/,p=/"(\\"|[^"])*"/,g=/'[^']*'/,x=s.either(d,p,g),_=s.concat(x,"(\\s*\\.\\s*",x,")*",s.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[o,{className:"section",begin:/\[+/,end:/\]+/},{begin:_,className:"attr",starts:{end:/$/,contains:[o,m,u,l,h,n]}}]}}return Ag=e,Ag}var Mg,ak;function pV(){if(ak)return Mg;ak=1;var e="[0-9](_*[0-9])*",t=`\\.(${e})`,s="[0-9a-fA-F](_*[0-9a-fA-F])*",n={className:"number",variants:[{begin:`(\\b(${e})((${t})|\\.)?|(${t}))[eE][+-]?(${e})[fFdD]?\\b`},{begin:`\\b(${e})((${t})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${t})[fFdD]?\\b`},{begin:`\\b(${e})[fFdD]\\b`},{begin:`\\b0[xX]((${s})\\.?|(${s})?\\.(${s}))[pP][+-]?(${e})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${s})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function o(u,h,m){return m===-1?"":u.replace(h,d=>o(u,h,m-1))}function l(u){const h=u.regex,m="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",d=m+o("(?:<"+m+"~~~(?:\\s*,\\s*"+m+"~~~)*>)?",/~~~/g,2),S={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},w={className:"meta",begin:"@"+m,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},C={className:"params",begin:/\(/,end:/\)/,keywords:S,relevance:0,contains:[u.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:S,illegal:/<\/|#/,contains:[u.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},u.C_LINE_COMMENT_MODE,u.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[u.BACKSLASH_ESCAPE]},u.APOS_STRING_MODE,u.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,m],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[h.concat(/(?!else)/,m),/\s+/,m,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,m],className:{1:"keyword",3:"title.class"},contains:[C,u.C_LINE_COMMENT_MODE,u.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+d+"\\s+)",u.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:S,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:S,relevance:0,contains:[w,u.APOS_STRING_MODE,u.QUOTE_STRING_MODE,n,u.C_BLOCK_COMMENT_MODE]},u.C_LINE_COMMENT_MODE,u.C_BLOCK_COMMENT_MODE]},n,w]}}return Mg=l,Mg}var Rg,ok;function gV(){if(ok)return Rg;ok=1;const e="[A-Za-z$_][0-9A-Za-z$_]*",t=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],s=["true","false","null","undefined","NaN","Infinity"],n=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],o=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],l=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],u=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],h=[].concat(l,n,o);function m(d){const p=d.regex,g=(Se,{after:Le})=>{const ve="</"+Se[0].slice(1);return Se.input.indexOf(ve,Le)!==-1},x=e,_={begin:"<>",end:"</>"},S=/<[A-Za-z0-9\\._:-]+\s*\/>/,w={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(Se,Le)=>{const ve=Se[0].length+Se.index,We=Se.input[ve];if(We==="<"||We===","){Le.ignoreMatch();return}We===">"&&(g(Se,{after:ve})||Le.ignoreMatch());let ge;const Te=Se.input.substring(ve);if(ge=Te.match(/^\s*=/)){Le.ignoreMatch();return}if((ge=Te.match(/^\s+extends\s+/))&&ge.index===0){Le.ignoreMatch();return}}},C={$pattern:e,keyword:t,literal:s,built_in:h,"variable.language":u},N="[0-9](_?[0-9])*",j=`\\.(${N})`,E="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",A={className:"number",variants:[{begin:`(\\b(${E})((${j})|\\.)?|(${j}))[eE][+-]?(${N})\\b`},{begin:`\\b(${E})\\b((${j})\\b|\\.)?|(${j})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},O={className:"subst",begin:"\\$\\{",end:"\\}",keywords:C,contains:[]},P={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[d.BACKSLASH_ESCAPE,O],subLanguage:"xml"}},D={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[d.BACKSLASH_ESCAPE,O],subLanguage:"css"}},T={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[d.BACKSLASH_ESCAPE,O],subLanguage:"graphql"}},z={className:"string",begin:"`",end:"`",contains:[d.BACKSLASH_ESCAPE,O]},I={className:"comment",variants:[d.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:x+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),d.C_BLOCK_COMMENT_MODE,d.C_LINE_COMMENT_MODE]},$=[d.APOS_STRING_MODE,d.QUOTE_STRING_MODE,P,D,T,z,{match:/\$\d+/},A];O.contains=$.concat({begin:/\{/,end:/\}/,keywords:C,contains:["self"].concat($)});const U=[].concat(I,O.contains),W=U.concat([{begin:/(\s*)\(/,end:/\)/,keywords:C,contains:["self"].concat(U)}]),G={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:C,contains:W},B={variants:[{match:[/class/,/\s+/,x,/\s+/,/extends/,/\s+/,p.concat(x,"(",p.concat(/\./,x),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,x],scope:{1:"keyword",3:"title.class"}}]},V={relevance:0,match:p.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...n,...o]}},X={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},K={variants:[{match:[/function/,/\s+/,x,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[G],illegal:/%/},te={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function R(Se){return p.concat("(?!",Se.join("|"),")")}const Z={match:p.concat(/\b/,R([...l,"super","import"].map(Se=>`${Se}\\s*\\(`)),x,p.lookahead(/\s*\(/)),className:"title.function",relevance:0},ie={begin:p.concat(/\./,p.lookahead(p.concat(x,/(?![0-9A-Za-z$_(])/))),end:x,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},de={match:[/get|set/,/\s+/,x,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},G]},fe="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+d.UNDERSCORE_IDENT_RE+")\\s*=>",pe={match:[/const|var|let/,/\s+/,x,/\s*/,/=\s*/,/(async\s*)?/,p.lookahead(fe)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[G]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:C,exports:{PARAMS_CONTAINS:W,CLASS_REFERENCE:V},illegal:/#(?![$_A-z])/,contains:[d.SHEBANG({label:"shebang",binary:"node",relevance:5}),X,d.APOS_STRING_MODE,d.QUOTE_STRING_MODE,P,D,T,z,I,{match:/\$\d+/},A,V,{scope:"attr",match:x+p.lookahead(":"),relevance:0},pe,{begin:"("+d.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[I,d.REGEXP_MODE,{className:"function",begin:fe,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:d.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:C,contains:W}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:_.begin,end:_.end},{match:S},{begin:w.begin,"on:begin":w.isTrulyOpeningTag,end:w.end}],subLanguage:"xml",contains:[{begin:w.begin,end:w.end,skip:!0,contains:["self"]}]}]},K,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+d.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[G,d.inherit(d.TITLE_MODE,{begin:x,className:"title.function"})]},{match:/\.\.\./,relevance:0},ie,{match:"\\$"+x,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[G]},Z,te,B,de,{match:/\$[(.]/}]}}return Rg=m,Rg}var Dg,lk;function bV(){if(lk)return Dg;lk=1;function e(t){const s={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:"punctuation",relevance:0},o=["true","false","null"],l={scope:"literal",beginKeywords:o.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:o},contains:[s,n,t.QUOTE_STRING_MODE,l,t.C_NUMBER_MODE,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}return Dg=e,Dg}var Og,ck;function xV(){if(ck)return Og;ck=1;var e="[0-9](_*[0-9])*",t=`\\.(${e})`,s="[0-9a-fA-F](_*[0-9a-fA-F])*",n={className:"number",variants:[{begin:`(\\b(${e})((${t})|\\.)?|(${t}))[eE][+-]?(${e})[fFdD]?\\b`},{begin:`\\b(${e})((${t})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${t})[fFdD]?\\b`},{begin:`\\b(${e})[fFdD]\\b`},{begin:`\\b0[xX]((${s})\\.?|(${s})?\\.(${s}))[pP][+-]?(${e})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${s})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function o(l){const u={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},h={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},m={className:"symbol",begin:l.UNDERSCORE_IDENT_RE+"@"},d={className:"subst",begin:/\$\{/,end:/\}/,contains:[l.C_NUMBER_MODE]},p={className:"variable",begin:"\\$"+l.UNDERSCORE_IDENT_RE},g={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[p,d]},{begin:"'",end:"'",illegal:/\n/,contains:[l.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[l.BACKSLASH_ESCAPE,p,d]}]};d.contains.push(g);const x={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+l.UNDERSCORE_IDENT_RE+")?"},_={className:"meta",begin:"@"+l.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[l.inherit(g,{className:"string"}),"self"]}]},S=n,w=l.COMMENT("/\\*","\\*/",{contains:[l.C_BLOCK_COMMENT_MODE]}),C={variants:[{className:"type",begin:l.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},N=C;return N.variants[1].contains=[C],C.variants[1].contains=[N],{name:"Kotlin",aliases:["kt","kts"],keywords:u,contains:[l.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),l.C_LINE_COMMENT_MODE,w,h,m,x,_,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:u,relevance:5,contains:[{begin:l.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[l.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/</,end:/>/,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:u,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[C,l.C_LINE_COMMENT_MODE,w],relevance:0},l.C_LINE_COMMENT_MODE,w,x,_,g,l.C_NUMBER_MODE]},w]},{begin:[/class|interface|trait/,/\s+/,l.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},l.UNDERSCORE_TITLE_MODE,{className:"type",begin:/</,end:/>/,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},x,_]},g,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:`
|
|
175
|
-
`},S]}}return Og=o,Og}var Lg,uk;function vV(){if(uk)return Lg;uk=1;const e=p=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:p.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[p.APOS_STRING_MODE,p.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:p.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),t=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],s=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],n=[...t,...s],o=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),l=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),u=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),h=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),m=l.concat(u).sort().reverse();function d(p){const g=e(p),x=m,_="and or not only",S="[\\w-]+",w="("+S+"|@\\{"+S+"\\})",C=[],N=[],j=function(U){return{className:"string",begin:"~?"+U+".*?"+U}},E=function(U,W,G){return{className:U,begin:W,relevance:G}},A={$pattern:/[a-z-]+/,keyword:_,attribute:o.join(" ")},O={begin:"\\(",end:"\\)",contains:N,keywords:A,relevance:0};N.push(p.C_LINE_COMMENT_MODE,p.C_BLOCK_COMMENT_MODE,j("'"),j('"'),g.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},g.HEXCOLOR,O,E("variable","@@?"+S,10),E("variable","@\\{"+S+"\\}"),E("built_in","~?`[^`]*?`"),{className:"attribute",begin:S+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},g.IMPORTANT,{beginKeywords:"and not"},g.FUNCTION_DISPATCH);const P=N.concat({begin:/\{/,end:/\}/,contains:C}),D={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(N)},T={begin:w+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},g.CSS_VARIABLE,{className:"attribute",begin:"\\b("+h.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:N}}]},z={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:A,returnEnd:!0,contains:N,relevance:0}},L={className:"variable",variants:[{begin:"@"+S+"\\s*:",relevance:15},{begin:"@"+S}],starts:{end:"[;}]",returnEnd:!0,contains:P}},I={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:w,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[p.C_LINE_COMMENT_MODE,p.C_BLOCK_COMMENT_MODE,D,E("keyword","all\\b"),E("variable","@\\{"+S+"\\}"),{begin:"\\b("+n.join("|")+")\\b",className:"selector-tag"},g.CSS_NUMBER_MODE,E("selector-tag",w,0),E("selector-id","#"+w),E("selector-class","\\."+w,0),E("selector-tag","&",0),g.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+l.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+u.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:P},{begin:"!important"},g.FUNCTION_DISPATCH]},$={begin:S+`:(:)?(${x.join("|")})`,returnBegin:!0,contains:[I]};return C.push(p.C_LINE_COMMENT_MODE,p.C_BLOCK_COMMENT_MODE,z,L,$,T,I,D,g.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:C}}return Lg=d,Lg}var zg,dk;function _V(){if(dk)return zg;dk=1;function e(t){const s="\\[=*\\[",n="\\]=*\\]",o={begin:s,end:n,contains:["self"]},l=[t.COMMENT("--(?!"+s+")","$"),t.COMMENT("--"+s,n,{contains:[o],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:t.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:l.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[t.inherit(t.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:l}].concat(l)},t.C_NUMBER_MODE,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,{className:"string",begin:s,end:n,contains:[o],relevance:5}])}}return zg=e,zg}var Bg,hk;function yV(){if(hk)return Bg;hk=1;function e(t){const s={className:"variable",variants:[{begin:"\\$\\("+t.UNDERSCORE_IDENT_RE+"\\)",contains:[t.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},n={className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,s]},o={className:"variable",begin:/\$\([\w-]+\s/,end:/\)/,keywords:{built_in:"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value"},contains:[s,n]},l={begin:"^"+t.UNDERSCORE_IDENT_RE+"\\s*(?=[:+?]?=)"},u={className:"meta",begin:/^\.PHONY:/,end:/$/,keywords:{$pattern:/[\.\w]+/,keyword:".PHONY"}},h={className:"section",begin:/^[^\s]+:/,end:/$/,contains:[s]};return{name:"Makefile",aliases:["mk","mak","make"],keywords:{$pattern:/[\w-]+/,keyword:"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath"},contains:[t.HASH_COMMENT_MODE,s,n,o,l,u,h]}}return Bg=e,Bg}var Ig,fk;function SV(){if(fk)return Ig;fk=1;function e(t){const s=t.regex,n=["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","class","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","field","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","method","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"],o=/[dualxmsipngr]{0,12}/,l={$pattern:/[\w.]+/,keyword:n.join(" ")},u={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:l},h={begin:/->\{/,end:/\}/},m={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},d={scope:"variable",variants:[{begin:/\$\d/},{begin:s.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[m]},p={className:"number",variants:[{match:/0?\.[0-9][0-9_]+\b/},{match:/\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/},{match:/\b0[0-7][0-7_]*\b/},{match:/\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/},{match:/\b0b[0-1][0-1_]*\b/}],relevance:0},g=[t.BACKSLASH_ESCAPE,u,d],x=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],_=(C,N,j="\\1")=>{const E=j==="\\1"?j:s.concat(j,N);return s.concat(s.concat("(?:",C,")"),N,/(?:\\.|[^\\\/])*?/,E,/(?:\\.|[^\\\/])*?/,j,o)},S=(C,N,j)=>s.concat(s.concat("(?:",C,")"),N,/(?:\\.|[^\\\/])*?/,j,o),w=[d,t.HASH_COMMENT_MODE,t.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),h,{className:"string",contains:g,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[t.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},p,{begin:"(\\/\\/|"+t.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[t.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:_("s|tr|y",s.either(...x,{capture:!0}))},{begin:_("s|tr|y","\\(","\\)")},{begin:_("s|tr|y","\\[","\\]")},{begin:_("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:S("(?:m|qr)?",/\//,/\//)},{begin:S("m|qr",s.either(...x,{capture:!0}),/\1/)},{begin:S("m|qr",/\(/,/\)/)},{begin:S("m|qr",/\[/,/\]/)},{begin:S("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[t.TITLE_MODE,m]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[t.TITLE_MODE,m,p]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return u.contains=w,h.contains=w,{name:"Perl",aliases:["pl","pm"],keywords:l,contains:w}}return Ig=e,Ig}var Pg,mk;function wV(){if(mk)return Pg;mk=1;function e(t){const s={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},n=/[a-zA-Z@][a-zA-Z0-9_]*/,m={"variable.language":["this","super"],$pattern:n,keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"],type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"]},d={$pattern:n,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:m,illegal:"</",contains:[s,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,t.C_NUMBER_MODE,t.QUOTE_STRING_MODE,t.APOS_STRING_MODE,{className:"string",variants:[{begin:'@"',end:'"',illegal:"\\n",contains:[t.BACKSLASH_ESCAPE]}]},{className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},t.inherit(t.QUOTE_STRING_MODE,{className:"string"}),{className:"string",begin:/<.*?>/,end:/$/,illegal:"\\n"},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+d.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:d,contains:[t.UNDERSCORE_TITLE_MODE]},{begin:"\\."+t.UNDERSCORE_IDENT_RE,relevance:0}]}}return Pg=e,Pg}var $g,pk;function kV(){if(pk)return $g;pk=1;function e(t){const s=t.regex,n=/(?![A-Za-z0-9])(?![$])/,o=s.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,n),l=s.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,n),u=s.concat(/[A-Z]+/,n),h={scope:"variable",match:"\\$+"+o},m={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},d={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},p=t.inherit(t.APOS_STRING_MODE,{illegal:null}),g=t.inherit(t.QUOTE_STRING_MODE,{illegal:null,contains:t.QUOTE_STRING_MODE.contains.concat(d)}),x={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:t.QUOTE_STRING_MODE.contains.concat(d),"on:begin":(G,B)=>{B.data._beginMatch=G[1]||G[2]},"on:end":(G,B)=>{B.data._beginMatch!==G[1]&&B.ignoreMatch()}},_=t.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),S=`[
|
|
176
|
-
]`,w={scope:"string",variants:[g,p,x,_]},C={scope:"number",variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"}],relevance:0},N=["false","null","true"],j=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],E=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],O={keyword:j,literal:(G=>{const B=[];return G.forEach(V=>{B.push(V),V.toLowerCase()===V?B.push(V.toUpperCase()):B.push(V.toLowerCase())}),B})(N),built_in:E},P=G=>G.map(B=>B.replace(/\|\d+$/,"")),D={variants:[{match:[/new/,s.concat(S,"+"),s.concat("(?!",P(E).join("\\b|"),"\\b)"),l],scope:{1:"keyword",4:"title.class"}}]},T=s.concat(o,"\\b(?!\\()"),z={variants:[{match:[s.concat(/::/,s.lookahead(/(?!class\b)/)),T],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[l,s.concat(/::/,s.lookahead(/(?!class\b)/)),T],scope:{1:"title.class",3:"variable.constant"}},{match:[l,s.concat("::",s.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[l,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},L={scope:"attr",match:s.concat(o,s.lookahead(":"),s.lookahead(/(?!::)/))},I={relevance:0,begin:/\(/,end:/\)/,keywords:O,contains:[L,h,z,t.C_BLOCK_COMMENT_MODE,w,C,D]},$={relevance:0,match:[/\b/,s.concat("(?!fn\\b|function\\b|",P(j).join("\\b|"),"|",P(E).join("\\b|"),"\\b)"),o,s.concat(S,"*"),s.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[I]};I.contains.push($);const U=[L,z,t.C_BLOCK_COMMENT_MODE,w,C,D],W={begin:s.concat(/#\[\s*\\?/,s.either(l,u)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:N,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:N,keyword:["new","array"]},contains:["self",...U]},...U,{scope:"meta",variants:[{match:l},{match:u}]}]};return{case_insensitive:!1,keywords:O,contains:[W,t.HASH_COMMENT_MODE,t.COMMENT("//","$"),t.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:t.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},m,{scope:"variable.language",match:/\$this\b/},h,$,z,{match:[/const/,/\s/,o],scope:{1:"keyword",3:"variable.constant"}},D,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},t.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:O,contains:["self",W,h,z,t.C_BLOCK_COMMENT_MODE,w,C]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},t.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[t.inherit(t.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},t.UNDERSCORE_TITLE_MODE]},w,C]}}return $g=e,$g}var Hg,gk;function CV(){if(gk)return Hg;gk=1;function e(t){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},t.inherit(t.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),t.inherit(t.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}return Hg=e,Hg}var Ug,bk;function NV(){if(bk)return Ug;bk=1;function e(t){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}return Ug=e,Ug}var Fg,xk;function EV(){if(xk)return Fg;xk=1;function e(t){const s=t.regex,n=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),o=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],m={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:o,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},d={className:"meta",begin:/^(>>>|\.\.\.) /},p={className:"subst",begin:/\{/,end:/\}/,keywords:m,illegal:/#/},g={begin:/\{\{/,relevance:0},x={className:"string",contains:[t.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE,d],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,d],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE,d,g,p]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,d,g,p]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[t.BACKSLASH_ESCAPE,g,p]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,g,p]},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},_="[0-9](_?[0-9])*",S=`(\\b(${_}))?\\.(${_})|\\b(${_})\\.`,w=`\\b|${o.join("|")}`,C={className:"number",relevance:0,variants:[{begin:`(\\b(${_})|(${S}))[eE][+-]?(${_})[jJ]?(?=${w})`},{begin:`(${S})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${w})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${w})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${w})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${w})`},{begin:`\\b(${_})[jJ](?=${w})`}]},N={className:"comment",begin:s.lookahead(/# type:/),end:/$/,keywords:m,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},j={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:m,contains:["self",d,C,x,t.HASH_COMMENT_MODE]}]};return p.contains=[x,C,d],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:m,illegal:/(<\/|\?)|=>/,contains:[d,C,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},x,N,t.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[j]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[C,j,x]}]}}return Fg=e,Fg}var qg,vk;function jV(){if(vk)return qg;vk=1;function e(t){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}return qg=e,qg}var Vg,_k;function TV(){if(_k)return Vg;_k=1;function e(t){const s=t.regex,n=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,o=s.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),l=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,u=s.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:n,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[t.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:s.lookahead(s.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:n},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),t.HASH_COMMENT_MODE,{scope:"string",contains:[t.BACKSLASH_ESCAPE],variants:[t.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),t.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),t.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),t.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),t.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),t.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[l,o]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,o]},{scope:{1:"punctuation",2:"number"},match:[u,o]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,o]}]},{scope:{3:"operator"},match:[n,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:l},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:u},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}return Vg=e,Vg}var Gg,yk;function AV(){if(yk)return Gg;yk=1;function e(t){const s=t.regex,n=/(r#)?/,o=s.concat(n,t.UNDERSCORE_IDENT_RE),l=s.concat(n,t.IDENT_RE),u={className:"title.function.invoke",relevance:0,begin:s.concat(/\b/,/(?!let|for|while|if|else|match\b)/,l,s.lookahead(/\s*\(/))},h="([ui](8|16|32|64|128|size)|f(32|64))?",m=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],d=["true","false","Some","None","Ok","Err"],p=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],g=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:t.IDENT_RE+"!?",type:g,keyword:m,literal:d,built_in:p},illegal:"</",contains:[t.C_LINE_COMMENT_MODE,t.COMMENT("/\\*","\\*/",{contains:["self"]}),t.inherit(t.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:"string",variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:"char.escape",match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:"number",variants:[{begin:"\\b0b([01_]+)"+h},{begin:"\\b0o([0-7_]+)"+h},{begin:"\\b0x([A-Fa-f0-9_]+)"+h},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+h}],relevance:0},{begin:[/fn/,/\s+/,o],className:{1:"keyword",3:"title.function"}},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,o],className:{1:"keyword",3:"keyword",4:"variable"}},{begin:[/for/,/\s+/,o,/\s+/,/in/],className:{1:"keyword",3:"variable",5:"keyword"}},{begin:[/type/,/\s+/,o],className:{1:"keyword",3:"title.class"}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,o],className:{1:"keyword",3:"title.class"}},{begin:t.IDENT_RE+"::",keywords:{keyword:"Self",built_in:p,type:g}},{className:"punctuation",begin:"->"},u]}}return Gg=e,Gg}var Wg,Sk;function MV(){if(Sk)return Wg;Sk=1;const e=d=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:d.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[d.APOS_STRING_MODE,d.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:d.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),t=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],s=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],n=[...t,...s],o=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),l=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),u=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),h=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function m(d){const p=e(d),g=u,x=l,_="@[a-z-]+",S="and or not only",C={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[d.C_LINE_COMMENT_MODE,d.C_BLOCK_COMMENT_MODE,p.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},p.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+n.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+x.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+g.join("|")+")"},C,{begin:/\(/,end:/\)/,contains:[p.CSS_NUMBER_MODE]},p.CSS_VARIABLE,{className:"attribute",begin:"\\b("+h.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:/:/,end:/[;}{]/,relevance:0,contains:[p.BLOCK_COMMENT,C,p.HEXCOLOR,p.CSS_NUMBER_MODE,d.QUOTE_STRING_MODE,d.APOS_STRING_MODE,p.IMPORTANT,p.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:_,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:S,attribute:o.join(" ")},contains:[{begin:_,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},C,d.QUOTE_STRING_MODE,d.APOS_STRING_MODE,p.HEXCOLOR,p.CSS_NUMBER_MODE]},p.FUNCTION_DISPATCH]}}return Wg=m,Wg}var Kg,wk;function RV(){if(wk)return Kg;wk=1;function e(t){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}return Kg=e,Kg}var Yg,kk;function DV(){if(kk)return Yg;kk=1;function e(t){const s=t.regex,n=t.COMMENT("--","$"),o={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},l={begin:/"/,end:/"/,contains:[{match:/""/}]},u=["true","false","unknown"],h=["double precision","large object","with timezone","without timezone"],m=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],d=["add","asc","collation","desc","final","first","last","view"],p=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],g=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],x=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],_=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],S=g,w=[...p,...d].filter(P=>!g.includes(P)),C={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},N={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},j={match:s.concat(/\b/,s.either(...S),/\s*\(/),relevance:0,keywords:{built_in:S}};function E(P){return s.concat(/\b/,s.either(...P.map(D=>D.replace(/\s+/,"\\s+"))),/\b/)}const A={scope:"keyword",match:E(_),relevance:0};function O(P,{exceptions:D,when:T}={}){const z=T;return D=D||[],P.map(L=>L.match(/\|\d+$/)||D.includes(L)?L:z(L)?`${L}|0`:L)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:O(w,{when:P=>P.length<3}),literal:u,type:m,built_in:x},contains:[{scope:"type",match:E(h)},A,j,C,o,l,t.C_NUMBER_MODE,t.C_BLOCK_COMMENT_MODE,n,N]}}return Yg=e,Yg}var Xg,Ck;function OV(){if(Ck)return Xg;Ck=1;function e(T){return T?typeof T=="string"?T:T.source:null}function t(T){return s("(?=",T,")")}function s(...T){return T.map(L=>e(L)).join("")}function n(T){const z=T[T.length-1];return typeof z=="object"&&z.constructor===Object?(T.splice(T.length-1,1),z):{}}function o(...T){return"("+(n(T).capture?"":"?:")+T.map(I=>e(I)).join("|")+")"}const l=T=>s(/\b/,T,/\w$/.test(T)?/\b/:/\B/),u=["Protocol","Type"].map(l),h=["init","self"].map(l),m=["Any","Self"],d=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","borrowing","break","case","catch","class","consume","consuming","continue","convenience","copy","default","defer","deinit","didSet","distributed","do","dynamic","each","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","macro","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","package","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],p=["false","nil","true"],g=["assignment","associativity","higherThan","left","lowerThan","none","right"],x=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],_=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],S=o(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),w=o(S,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),C=s(S,w,"*"),N=o(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),j=o(N,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),E=s(N,j,"*"),A=s(/[A-Z]/,j,"*"),O=["attached","autoclosure",s(/convention\(/,o("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",s(/objc\(/,E,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],P=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function D(T){const z={match:/\s+/,relevance:0},L=T.COMMENT("/\\*","\\*/",{contains:["self"]}),I=[T.C_LINE_COMMENT_MODE,L],$={match:[/\./,o(...u,...h)],className:{2:"keyword"}},U={match:s(/\./,o(...d)),relevance:0},W=d.filter(lt=>typeof lt=="string").concat(["_|0"]),G=d.filter(lt=>typeof lt!="string").concat(m).map(l),B={variants:[{className:"keyword",match:o(...G,...h)}]},V={$pattern:o(/\b\w+/,/#\w+/),keyword:W.concat(x),literal:p},X=[$,U,B],K={match:s(/\./,o(..._)),relevance:0},te={className:"built_in",match:s(/\b/,o(..._),/(?=\()/)},R=[K,te],Z={match:/->/,relevance:0},ie={className:"operator",relevance:0,variants:[{match:C},{match:`\\.(\\.|${w})+`}]},de=[Z,ie],fe="([0-9]_*)+",pe="([0-9a-fA-F]_*)+",Se={className:"number",relevance:0,variants:[{match:`\\b(${fe})(\\.(${fe}))?([eE][+-]?(${fe}))?\\b`},{match:`\\b0x(${pe})(\\.(${pe}))?([pP][+-]?(${fe}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},Le=(lt="")=>({className:"subst",variants:[{match:s(/\\/,lt,/[0\\tnr"']/)},{match:s(/\\/,lt,/u\{[0-9a-fA-F]{1,8}\}/)}]}),ve=(lt="")=>({className:"subst",match:s(/\\/,lt,/[\t ]*(?:[\r\n]|\r\n)/)}),We=(lt="")=>({className:"subst",label:"interpol",begin:s(/\\/,lt,/\(/),end:/\)/}),ge=(lt="")=>({begin:s(lt,/"""/),end:s(/"""/,lt),contains:[Le(lt),ve(lt),We(lt)]}),Te=(lt="")=>({begin:s(lt,/"/),end:s(/"/,lt),contains:[Le(lt),We(lt)]}),Me={className:"string",variants:[ge(),ge("#"),ge("##"),ge("###"),Te(),Te("#"),Te("##"),Te("###")]},Pt=[T.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[T.BACKSLASH_ESCAPE]}],Pi={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:Pt},ni=lt=>{const ri=s(lt,/\//),bn=s(/\//,lt);return{begin:ri,end:bn,contains:[...Pt,{scope:"comment",begin:`#(?!.*${bn})`,end:/$/}]}},yr={scope:"regexp",variants:[ni("###"),ni("##"),ni("#"),Pi]},$i={match:s(/`/,E,/`/)},Hi={className:"variable",match:/\$\d+/},_e={className:"variable",match:`\\$${j}+`},ft=[$i,Hi,_e],gn={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:P,contains:[...de,Se,Me]}]}},Ts={scope:"keyword",match:s(/@/,o(...O),t(o(/\(/,/\s+/)))},gt={scope:"meta",match:s(/@/,E)},ii=[gn,Ts,gt],ds={match:t(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:s(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,j,"+")},{className:"type",match:A,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:s(/\s+&\s+/,t(A)),relevance:0}]},Ui={begin:/</,end:/>/,keywords:V,contains:[...I,...X,...ii,Z,ds]};ds.contains.push(Ui);const Fi={match:s(E,/\s*:/),keywords:"_|0",relevance:0},io={begin:/\(/,end:/\)/,relevance:0,keywords:V,contains:["self",Fi,...I,yr,...X,...R,...de,Se,Me,...ft,...ii,ds]},Sr={begin:/</,end:/>/,keywords:"repeat each",contains:[...I,ds]},_l={begin:o(t(s(E,/\s*:/)),t(s(E,/\s+/,E,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:E}]},ro={begin:/\(/,end:/\)/,keywords:V,contains:[_l,...I,...X,...de,Se,Me,...ii,ds,io],endsParent:!0,illegal:/["']/},qi={match:[/(func|macro)/,/\s+/,o($i.match,E,C)],className:{1:"keyword",3:"title.function"},contains:[Sr,ro,z],illegal:[/\[/,/%/]},_s={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[Sr,ro,z],illegal:/\[|%/},Mn={match:[/operator/,/\s+/,C],className:{1:"keyword",3:"title"}},As={begin:[/precedencegroup/,/\s+/,A],className:{1:"keyword",3:"title"},contains:[ds],keywords:[...g,...p],end:/}/},yl={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},pa={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},ao={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,E,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:V,contains:[Sr,...X,{begin:/:/,end:/\{/,keywords:V,contains:[{scope:"title.class.inherited",match:A},...X],relevance:0}]};for(const lt of Me.variants){const ri=lt.contains.find($s=>$s.label==="interpol");ri.keywords=V;const bn=[...X,...R,...de,Se,Me,...ft];ri.contains=[...bn,{begin:/\(/,end:/\)/,contains:["self",...bn]}]}return{name:"Swift",keywords:V,contains:[...I,qi,_s,yl,pa,ao,Mn,As,{beginKeywords:"import",end:/$/,contains:[...I],relevance:0},yr,...X,...R,...de,Se,Me,...ft,...ii,ds,io]}}return Xg=D,Xg}var Zg,Nk;function LV(){if(Nk)return Zg;Nk=1;function e(t){const s="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",o={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},l={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},u={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},h={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[t.BACKSLASH_ESCAPE,l]},m=t.inherit(h,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),_={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},S={end:",",endsWithParent:!0,excludeEnd:!0,keywords:s,relevance:0},w={begin:/\{/,end:/\}/,contains:[S],illegal:"\\n",relevance:0},C={begin:"\\[",end:"\\]",contains:[S],illegal:"\\n",relevance:0},N=[o,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+t.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+t.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},t.HASH_COMMENT_MODE,{beginKeywords:s,keywords:{literal:s}},_,{className:"number",begin:t.C_NUMBER_RE+"\\b",relevance:0},w,C,u,h],j=[...N];return j.pop(),j.push(m),S.contains=j,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:N}}return Zg=e,Zg}var Qg,Ek;function zV(){if(Ek)return Qg;Ek=1;const e="[A-Za-z$_][0-9A-Za-z$_]*",t=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],s=["true","false","null","undefined","NaN","Infinity"],n=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],o=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],l=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],u=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],h=[].concat(l,n,o);function m(p){const g=p.regex,x=(Le,{after:ve})=>{const We="</"+Le[0].slice(1);return Le.input.indexOf(We,ve)!==-1},_=e,S={begin:"<>",end:"</>"},w=/<[A-Za-z0-9\\._:-]+\s*\/>/,C={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(Le,ve)=>{const We=Le[0].length+Le.index,ge=Le.input[We];if(ge==="<"||ge===","){ve.ignoreMatch();return}ge===">"&&(x(Le,{after:We})||ve.ignoreMatch());let Te;const Me=Le.input.substring(We);if(Te=Me.match(/^\s*=/)){ve.ignoreMatch();return}if((Te=Me.match(/^\s+extends\s+/))&&Te.index===0){ve.ignoreMatch();return}}},N={$pattern:e,keyword:t,literal:s,built_in:h,"variable.language":u},j="[0-9](_?[0-9])*",E=`\\.(${j})`,A="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",O={className:"number",variants:[{begin:`(\\b(${A})((${E})|\\.)?|(${E}))[eE][+-]?(${j})\\b`},{begin:`\\b(${A})\\b((${E})\\b|\\.)?|(${E})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},P={className:"subst",begin:"\\$\\{",end:"\\}",keywords:N,contains:[]},D={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[p.BACKSLASH_ESCAPE,P],subLanguage:"xml"}},T={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[p.BACKSLASH_ESCAPE,P],subLanguage:"css"}},z={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[p.BACKSLASH_ESCAPE,P],subLanguage:"graphql"}},L={className:"string",begin:"`",end:"`",contains:[p.BACKSLASH_ESCAPE,P]},$={className:"comment",variants:[p.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:_+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),p.C_BLOCK_COMMENT_MODE,p.C_LINE_COMMENT_MODE]},U=[p.APOS_STRING_MODE,p.QUOTE_STRING_MODE,D,T,z,L,{match:/\$\d+/},O];P.contains=U.concat({begin:/\{/,end:/\}/,keywords:N,contains:["self"].concat(U)});const W=[].concat($,P.contains),G=W.concat([{begin:/(\s*)\(/,end:/\)/,keywords:N,contains:["self"].concat(W)}]),B={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:N,contains:G},V={variants:[{match:[/class/,/\s+/,_,/\s+/,/extends/,/\s+/,g.concat(_,"(",g.concat(/\./,_),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,_],scope:{1:"keyword",3:"title.class"}}]},X={relevance:0,match:g.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...n,...o]}},K={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},te={variants:[{match:[/function/,/\s+/,_,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[B],illegal:/%/},R={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function Z(Le){return g.concat("(?!",Le.join("|"),")")}const ie={match:g.concat(/\b/,Z([...l,"super","import"].map(Le=>`${Le}\\s*\\(`)),_,g.lookahead(/\s*\(/)),className:"title.function",relevance:0},de={begin:g.concat(/\./,g.lookahead(g.concat(_,/(?![0-9A-Za-z$_(])/))),end:_,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},fe={match:[/get|set/,/\s+/,_,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},B]},pe="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+p.UNDERSCORE_IDENT_RE+")\\s*=>",Se={match:[/const|var|let/,/\s+/,_,/\s*/,/=\s*/,/(async\s*)?/,g.lookahead(pe)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[B]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:N,exports:{PARAMS_CONTAINS:G,CLASS_REFERENCE:X},illegal:/#(?![$_A-z])/,contains:[p.SHEBANG({label:"shebang",binary:"node",relevance:5}),K,p.APOS_STRING_MODE,p.QUOTE_STRING_MODE,D,T,z,L,$,{match:/\$\d+/},O,X,{scope:"attr",match:_+g.lookahead(":"),relevance:0},Se,{begin:"("+p.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[$,p.REGEXP_MODE,{className:"function",begin:pe,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:p.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:N,contains:G}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:S.begin,end:S.end},{match:w},{begin:C.begin,"on:begin":C.isTrulyOpeningTag,end:C.end}],subLanguage:"xml",contains:[{begin:C.begin,end:C.end,skip:!0,contains:["self"]}]}]},te,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+p.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[B,p.inherit(p.TITLE_MODE,{begin:_,className:"title.function"})]},{match:/\.\.\./,relevance:0},de,{match:"\\$"+_,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[B]},ie,R,V,fe,{match:/\$[(.]/}]}}function d(p){const g=p.regex,x=m(p),_=e,S=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],w={begin:[/namespace/,/\s+/,p.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},C={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:S},contains:[x.exports.CLASS_REFERENCE]},N={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},j=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],E={$pattern:e,keyword:t.concat(j),literal:s,built_in:h.concat(S),"variable.language":u},A={className:"meta",begin:"@"+_},O=(z,L,I)=>{const $=z.contains.findIndex(U=>U.label===L);if($===-1)throw new Error("can not find mode to replace");z.contains.splice($,1,I)};Object.assign(x.keywords,E),x.exports.PARAMS_CONTAINS.push(A);const P=x.contains.find(z=>z.scope==="attr"),D=Object.assign({},P,{match:g.concat(_,g.lookahead(/\s*\?:/))});x.exports.PARAMS_CONTAINS.push([x.exports.CLASS_REFERENCE,P,D]),x.contains=x.contains.concat([A,w,C,D]),O(x,"shebang",p.SHEBANG()),O(x,"use_strict",N);const T=x.contains.find(z=>z.label==="func.def");return T.relevance=0,Object.assign(x,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),x}return Qg=d,Qg}var Jg,jk;function BV(){if(jk)return Jg;jk=1;function e(t){const s=t.regex,n={className:"string",begin:/"(""|[^/n])"C\b/},o={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},l=/\d{1,2}\/\d{1,2}\/\d{4}/,u=/\d{4}-\d{1,2}-\d{1,2}/,h=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,m=/\d{1,2}(:\d{1,2}){1,2}/,d={className:"literal",variants:[{begin:s.concat(/# */,s.either(u,l),/ *#/)},{begin:s.concat(/# */,m,/ *#/)},{begin:s.concat(/# */,h,/ *#/)},{begin:s.concat(/# */,s.either(u,l),/ +/,s.either(h,m),/ *#/)}]},p={className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},g={className:"label",begin:/^\w+:/},x=t.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),_=t.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[n,o,d,p,g,x,_,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[_]}]}}return Jg=e,Jg}var e0,Tk;function IV(){if(Tk)return e0;Tk=1;function e(t){t.regex;const s=t.COMMENT(/\(;/,/;\)/);s.contains.push("self");const n=t.COMMENT(/;;/,/$/),o=["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"],l={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},u={className:"variable",begin:/\$[\w_]+/},h={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},m={className:"number",relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/},d={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},p={className:"keyword",match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/};return{name:"WebAssembly",keywords:{$pattern:/[\w.]+/,keyword:o},contains:[n,s,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},u,h,l,t.QUOTE_STRING_MODE,d,p,m]}}return e0=e,e0}var t0,Ak;function PV(){if(Ak)return t0;Ak=1;var e=sV();return e.registerLanguage("xml",nV()),e.registerLanguage("bash",iV()),e.registerLanguage("c",rV()),e.registerLanguage("cpp",aV()),e.registerLanguage("csharp",oV()),e.registerLanguage("css",lV()),e.registerLanguage("markdown",cV()),e.registerLanguage("diff",uV()),e.registerLanguage("ruby",dV()),e.registerLanguage("go",hV()),e.registerLanguage("graphql",fV()),e.registerLanguage("ini",mV()),e.registerLanguage("java",pV()),e.registerLanguage("javascript",gV()),e.registerLanguage("json",bV()),e.registerLanguage("kotlin",xV()),e.registerLanguage("less",vV()),e.registerLanguage("lua",_V()),e.registerLanguage("makefile",yV()),e.registerLanguage("perl",SV()),e.registerLanguage("objectivec",wV()),e.registerLanguage("php",kV()),e.registerLanguage("php-template",CV()),e.registerLanguage("plaintext",NV()),e.registerLanguage("python",EV()),e.registerLanguage("python-repl",jV()),e.registerLanguage("r",TV()),e.registerLanguage("rust",AV()),e.registerLanguage("scss",MV()),e.registerLanguage("shell",RV()),e.registerLanguage("sql",DV()),e.registerLanguage("swift",OV()),e.registerLanguage("yaml",LV()),e.registerLanguage("typescript",zV()),e.registerLanguage("vbnet",BV()),e.registerLanguage("wasm",IV()),e.HighlightJS=e,e.default=e,t0=e,t0}var $V=PV();const Sb=_A($V);function HV(e){return e.replace(/<\/?(script|style|iframe|object|embed)\b[^>]*>/gi,"").replace(/\son\w+\s*=\s*("[^"]*"|'[^']*'|[^\s>]+)/gi,"").replace(/(href|src)\s*=\s*("|')\s*javascript:[^"']*\2/gi,"$1=$2#$2")}function UV({content:e}){const t=y.useMemo(()=>{const n=pt.parse(e,{async:!1,gfm:!0,breaks:!1});return HV(n)},[e]),s=y.useRef(null);return y.useEffect(()=>{const n=s.current;n&&n.querySelectorAll("pre code").forEach(o=>{Sb.highlightElement(o)})},[t]),a.jsx("div",{ref:s,className:"md-preview min-w-0 px-6 py-5",dangerouslySetInnerHTML:{__html:t}})}function g5(e){return typeof e>"u"||e===null}function FV(e){return typeof e=="object"&&e!==null}function qV(e){return Array.isArray(e)?e:g5(e)?[]:[e]}function VV(e,t){var s,n,o,l;if(t)for(l=Object.keys(t),s=0,n=l.length;s<n;s+=1)o=l[s],e[o]=t[o];return e}function GV(e,t){var s="",n;for(n=0;n<t;n+=1)s+=e;return s}function WV(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var KV=g5,YV=FV,XV=qV,ZV=GV,QV=WV,JV=VV,bs={isNothing:KV,isObject:YV,toArray:XV,repeat:ZV,isNegativeZero:QV,extend:JV};function b5(e,t){var s="",n=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(s+='in "'+e.mark.name+'" '),s+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!t&&e.mark.snippet&&(s+=`
|
|
177
|
-
|
|
178
|
-
`+e.mark.snippet),n+" "+s):n}function iu(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=b5(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}iu.prototype=Object.create(Error.prototype);iu.prototype.constructor=iu;iu.prototype.toString=function(t){return this.name+": "+b5(this,t)};var Zs=iu;function s0(e,t,s,n,o){var l="",u="",h=Math.floor(o/2)-1;return n-t>h&&(l=" ... ",t=n-h+l.length),s-n>h&&(u=" ...",s=n+h-u.length),{str:l+e.slice(t,s).replace(/\t/g,"→")+u,pos:n-t+l.length}}function n0(e,t){return bs.repeat(" ",t-e.length)+e}function eG(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.linesAfter=2);for(var s=/\r?\n|\r|\0/g,n=[0],o=[],l,u=-1;l=s.exec(e.buffer);)o.push(l.index),n.push(l.index+l[0].length),e.position<=l.index&&u<0&&(u=n.length-2);u<0&&(u=n.length-1);var h="",m,d,p=Math.min(e.line+t.linesAfter,o.length).toString().length,g=t.maxLength-(t.indent+p+3);for(m=1;m<=t.linesBefore&&!(u-m<0);m++)d=s0(e.buffer,n[u-m],o[u-m],e.position-(n[u]-n[u-m]),g),h=bs.repeat(" ",t.indent)+n0((e.line-m+1).toString(),p)+" | "+d.str+`
|
|
179
|
-
`+h;for(d=s0(e.buffer,n[u],o[u],e.position,g),h+=bs.repeat(" ",t.indent)+n0((e.line+1).toString(),p)+" | "+d.str+`
|
|
180
|
-
`,h+=bs.repeat("-",t.indent+p+3+d.pos)+`^
|
|
181
|
-
`,m=1;m<=t.linesAfter&&!(u+m>=o.length);m++)d=s0(e.buffer,n[u+m],o[u+m],e.position-(n[u]-n[u+m]),g),h+=bs.repeat(" ",t.indent)+n0((e.line+m+1).toString(),p)+" | "+d.str+`
|
|
182
|
-
`;return h.replace(/\n$/,"")}var tG=eG,sG=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],nG=["scalar","sequence","mapping"];function iG(e){var t={};return e!==null&&Object.keys(e).forEach(function(s){e[s].forEach(function(n){t[String(n)]=s})}),t}function rG(e,t){if(t=t||{},Object.keys(t).forEach(function(s){if(sG.indexOf(s)===-1)throw new Zs('Unknown option "'+s+'" is met in definition of "'+e+'" YAML type.')}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(s){return s},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=iG(t.styleAliases||null),nG.indexOf(this.kind)===-1)throw new Zs('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var Ps=rG;function Mk(e,t){var s=[];return e[t].forEach(function(n){var o=s.length;s.forEach(function(l,u){l.tag===n.tag&&l.kind===n.kind&&l.multi===n.multi&&(o=u)}),s[o]=n}),s}function aG(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,s;function n(o){o.multi?(e.multi[o.kind].push(o),e.multi.fallback.push(o)):e[o.kind][o.tag]=e.fallback[o.tag]=o}for(t=0,s=arguments.length;t<s;t+=1)arguments[t].forEach(n);return e}function wb(e){return this.extend(e)}wb.prototype.extend=function(t){var s=[],n=[];if(t instanceof Ps)n.push(t);else if(Array.isArray(t))n=n.concat(t);else if(t&&(Array.isArray(t.implicit)||Array.isArray(t.explicit)))t.implicit&&(s=s.concat(t.implicit)),t.explicit&&(n=n.concat(t.explicit));else throw new Zs("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");s.forEach(function(l){if(!(l instanceof Ps))throw new Zs("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(l.loadKind&&l.loadKind!=="scalar")throw new Zs("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(l.multi)throw new Zs("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(l){if(!(l instanceof Ps))throw new Zs("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var o=Object.create(wb.prototype);return o.implicit=(this.implicit||[]).concat(s),o.explicit=(this.explicit||[]).concat(n),o.compiledImplicit=Mk(o,"implicit"),o.compiledExplicit=Mk(o,"explicit"),o.compiledTypeMap=aG(o.compiledImplicit,o.compiledExplicit),o};var x5=wb,v5=new Ps("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),_5=new Ps("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),y5=new Ps("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),S5=new x5({explicit:[v5,_5,y5]});function oG(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function lG(){return null}function cG(e){return e===null}var w5=new Ps("tag:yaml.org,2002:null",{kind:"scalar",resolve:oG,construct:lG,predicate:cG,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function uG(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function dG(e){return e==="true"||e==="True"||e==="TRUE"}function hG(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var k5=new Ps("tag:yaml.org,2002:bool",{kind:"scalar",resolve:uG,construct:dG,predicate:hG,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"});function fG(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function mG(e){return 48<=e&&e<=55}function pG(e){return 48<=e&&e<=57}function gG(e){if(e===null)return!1;var t=e.length,s=0,n=!1,o;if(!t)return!1;if(o=e[s],(o==="-"||o==="+")&&(o=e[++s]),o==="0"){if(s+1===t)return!0;if(o=e[++s],o==="b"){for(s++;s<t;s++)if(o=e[s],o!=="_"){if(o!=="0"&&o!=="1")return!1;n=!0}return n&&o!=="_"}if(o==="x"){for(s++;s<t;s++)if(o=e[s],o!=="_"){if(!fG(e.charCodeAt(s)))return!1;n=!0}return n&&o!=="_"}if(o==="o"){for(s++;s<t;s++)if(o=e[s],o!=="_"){if(!mG(e.charCodeAt(s)))return!1;n=!0}return n&&o!=="_"}}if(o==="_")return!1;for(;s<t;s++)if(o=e[s],o!=="_"){if(!pG(e.charCodeAt(s)))return!1;n=!0}return!(!n||o==="_")}function bG(e){var t=e,s=1,n;if(t.indexOf("_")!==-1&&(t=t.replace(/_/g,"")),n=t[0],(n==="-"||n==="+")&&(n==="-"&&(s=-1),t=t.slice(1),n=t[0]),t==="0")return 0;if(n==="0"){if(t[1]==="b")return s*parseInt(t.slice(2),2);if(t[1]==="x")return s*parseInt(t.slice(2),16);if(t[1]==="o")return s*parseInt(t.slice(2),8)}return s*parseInt(t,10)}function xG(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!bs.isNegativeZero(e)}var C5=new Ps("tag:yaml.org,2002:int",{kind:"scalar",resolve:gG,construct:bG,predicate:xG,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),vG=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function _G(e){return!(e===null||!vG.test(e)||e[e.length-1]==="_")}function yG(e){var t,s;return t=e.replace(/_/g,"").toLowerCase(),s=t[0]==="-"?-1:1,"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?s===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:s*parseFloat(t,10)}var SG=/^[-+]?[0-9]+e/;function wG(e,t){var s;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(bs.isNegativeZero(e))return"-0.0";return s=e.toString(10),SG.test(s)?s.replace("e",".e"):s}function kG(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||bs.isNegativeZero(e))}var N5=new Ps("tag:yaml.org,2002:float",{kind:"scalar",resolve:_G,construct:yG,predicate:kG,represent:wG,defaultStyle:"lowercase"}),E5=S5.extend({implicit:[w5,k5,C5,N5]}),j5=E5,T5=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),A5=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function CG(e){return e===null?!1:T5.exec(e)!==null||A5.exec(e)!==null}function NG(e){var t,s,n,o,l,u,h,m=0,d=null,p,g,x;if(t=T5.exec(e),t===null&&(t=A5.exec(e)),t===null)throw new Error("Date resolve error");if(s=+t[1],n=+t[2]-1,o=+t[3],!t[4])return new Date(Date.UTC(s,n,o));if(l=+t[4],u=+t[5],h=+t[6],t[7]){for(m=t[7].slice(0,3);m.length<3;)m+="0";m=+m}return t[9]&&(p=+t[10],g=+(t[11]||0),d=(p*60+g)*6e4,t[9]==="-"&&(d=-d)),x=new Date(Date.UTC(s,n,o,l,u,h,m)),d&&x.setTime(x.getTime()-d),x}function EG(e){return e.toISOString()}var M5=new Ps("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:CG,construct:NG,instanceOf:Date,represent:EG});function jG(e){return e==="<<"||e===null}var R5=new Ps("tag:yaml.org,2002:merge",{kind:"scalar",resolve:jG}),Hx=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
|
|
183
|
-
\r`;function TG(e){if(e===null)return!1;var t,s,n=0,o=e.length,l=Hx;for(s=0;s<o;s++)if(t=l.indexOf(e.charAt(s)),!(t>64)){if(t<0)return!1;n+=6}return n%8===0}function AG(e){var t,s,n=e.replace(/[\r\n=]/g,""),o=n.length,l=Hx,u=0,h=[];for(t=0;t<o;t++)t%4===0&&t&&(h.push(u>>16&255),h.push(u>>8&255),h.push(u&255)),u=u<<6|l.indexOf(n.charAt(t));return s=o%4*6,s===0?(h.push(u>>16&255),h.push(u>>8&255),h.push(u&255)):s===18?(h.push(u>>10&255),h.push(u>>2&255)):s===12&&h.push(u>>4&255),new Uint8Array(h)}function MG(e){var t="",s=0,n,o,l=e.length,u=Hx;for(n=0;n<l;n++)n%3===0&&n&&(t+=u[s>>18&63],t+=u[s>>12&63],t+=u[s>>6&63],t+=u[s&63]),s=(s<<8)+e[n];return o=l%3,o===0?(t+=u[s>>18&63],t+=u[s>>12&63],t+=u[s>>6&63],t+=u[s&63]):o===2?(t+=u[s>>10&63],t+=u[s>>4&63],t+=u[s<<2&63],t+=u[64]):o===1&&(t+=u[s>>2&63],t+=u[s<<4&63],t+=u[64],t+=u[64]),t}function RG(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var D5=new Ps("tag:yaml.org,2002:binary",{kind:"scalar",resolve:TG,construct:AG,predicate:RG,represent:MG}),DG=Object.prototype.hasOwnProperty,OG=Object.prototype.toString;function LG(e){if(e===null)return!0;var t=[],s,n,o,l,u,h=e;for(s=0,n=h.length;s<n;s+=1){if(o=h[s],u=!1,OG.call(o)!=="[object Object]")return!1;for(l in o)if(DG.call(o,l))if(!u)u=!0;else return!1;if(!u)return!1;if(t.indexOf(l)===-1)t.push(l);else return!1}return!0}function zG(e){return e!==null?e:[]}var O5=new Ps("tag:yaml.org,2002:omap",{kind:"sequence",resolve:LG,construct:zG}),BG=Object.prototype.toString;function IG(e){if(e===null)return!0;var t,s,n,o,l,u=e;for(l=new Array(u.length),t=0,s=u.length;t<s;t+=1){if(n=u[t],BG.call(n)!=="[object Object]"||(o=Object.keys(n),o.length!==1))return!1;l[t]=[o[0],n[o[0]]]}return!0}function PG(e){if(e===null)return[];var t,s,n,o,l,u=e;for(l=new Array(u.length),t=0,s=u.length;t<s;t+=1)n=u[t],o=Object.keys(n),l[t]=[o[0],n[o[0]]];return l}var L5=new Ps("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:IG,construct:PG}),$G=Object.prototype.hasOwnProperty;function HG(e){if(e===null)return!0;var t,s=e;for(t in s)if($G.call(s,t)&&s[t]!==null)return!1;return!0}function UG(e){return e!==null?e:{}}var z5=new Ps("tag:yaml.org,2002:set",{kind:"mapping",resolve:HG,construct:UG}),Ux=j5.extend({implicit:[M5,R5],explicit:[D5,O5,L5,z5]}),da=Object.prototype.hasOwnProperty,ef=1,B5=2,I5=3,tf=4,i0=1,FG=2,Rk=3,qG=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,VG=/[\x85\u2028\u2029]/,GG=/[,\[\]\{\}]/,P5=/^(?:!|!!|![a-z\-]+!)$/i,$5=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Dk(e){return Object.prototype.toString.call(e)}function Li(e){return e===10||e===13}function Xa(e){return e===9||e===32}function fn(e){return e===9||e===32||e===10||e===13}function sl(e){return e===44||e===91||e===93||e===123||e===125}function WG(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function KG(e){return e===120?2:e===117?4:e===85?8:0}function YG(e){return 48<=e&&e<=57?e-48:-1}function Ok(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
|
|
184
|
-
`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"
":e===95?" ":e===76?"\u2028":e===80?"\u2029":""}function XG(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function H5(e,t,s){t==="__proto__"?Object.defineProperty(e,t,{configurable:!0,enumerable:!0,writable:!0,value:s}):e[t]=s}var U5=new Array(256),F5=new Array(256);for(var Ko=0;Ko<256;Ko++)U5[Ko]=Ok(Ko)?1:0,F5[Ko]=Ok(Ko);function ZG(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||Ux,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function q5(e,t){var s={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return s.snippet=tG(s),new Zs(t,s)}function Be(e,t){throw q5(e,t)}function sf(e,t){e.onWarning&&e.onWarning.call(null,q5(e,t))}var Lk={YAML:function(t,s,n){var o,l,u;t.version!==null&&Be(t,"duplication of %YAML directive"),n.length!==1&&Be(t,"YAML directive accepts exactly one argument"),o=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),o===null&&Be(t,"ill-formed argument of the YAML directive"),l=parseInt(o[1],10),u=parseInt(o[2],10),l!==1&&Be(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=u<2,u!==1&&u!==2&&sf(t,"unsupported YAML version of the document")},TAG:function(t,s,n){var o,l;n.length!==2&&Be(t,"TAG directive accepts exactly two arguments"),o=n[0],l=n[1],P5.test(o)||Be(t,"ill-formed tag handle (first argument) of the TAG directive"),da.call(t.tagMap,o)&&Be(t,'there is a previously declared suffix for "'+o+'" tag handle'),$5.test(l)||Be(t,"ill-formed tag prefix (second argument) of the TAG directive");try{l=decodeURIComponent(l)}catch{Be(t,"tag prefix is malformed: "+l)}t.tagMap[o]=l}};function oa(e,t,s,n){var o,l,u,h;if(t<s){if(h=e.input.slice(t,s),n)for(o=0,l=h.length;o<l;o+=1)u=h.charCodeAt(o),u===9||32<=u&&u<=1114111||Be(e,"expected valid JSON character");else qG.test(h)&&Be(e,"the stream contains non-printable characters");e.result+=h}}function zk(e,t,s,n){var o,l,u,h;for(bs.isObject(s)||Be(e,"cannot merge mappings; the provided source object is unacceptable"),o=Object.keys(s),u=0,h=o.length;u<h;u+=1)l=o[u],da.call(t,l)||(H5(t,l,s[l]),n[l]=!0)}function nl(e,t,s,n,o,l,u,h,m){var d,p;if(Array.isArray(o))for(o=Array.prototype.slice.call(o),d=0,p=o.length;d<p;d+=1)Array.isArray(o[d])&&Be(e,"nested arrays are not supported inside keys"),typeof o=="object"&&Dk(o[d])==="[object Object]"&&(o[d]="[object Object]");if(typeof o=="object"&&Dk(o)==="[object Object]"&&(o="[object Object]"),o=String(o),t===null&&(t={}),n==="tag:yaml.org,2002:merge")if(Array.isArray(l))for(d=0,p=l.length;d<p;d+=1)zk(e,t,l[d],s);else zk(e,t,l,s);else!e.json&&!da.call(s,o)&&da.call(t,o)&&(e.line=u||e.line,e.lineStart=h||e.lineStart,e.position=m||e.position,Be(e,"duplicated mapping key")),H5(t,o,l),delete s[o];return t}function Fx(e){var t;t=e.input.charCodeAt(e.position),t===10?e.position++:t===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):Be(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function us(e,t,s){for(var n=0,o=e.input.charCodeAt(e.position);o!==0;){for(;Xa(o);)o===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),o=e.input.charCodeAt(++e.position);if(t&&o===35)do o=e.input.charCodeAt(++e.position);while(o!==10&&o!==13&&o!==0);if(Li(o))for(Fx(e),o=e.input.charCodeAt(e.position),n++,e.lineIndent=0;o===32;)e.lineIndent++,o=e.input.charCodeAt(++e.position);else break}return s!==-1&&n!==0&&e.lineIndent<s&&sf(e,"deficient indentation"),n}function kf(e){var t=e.position,s;return s=e.input.charCodeAt(t),!!((s===45||s===46)&&s===e.input.charCodeAt(t+1)&&s===e.input.charCodeAt(t+2)&&(t+=3,s=e.input.charCodeAt(t),s===0||fn(s)))}function qx(e,t){t===1?e.result+=" ":t>1&&(e.result+=bs.repeat(`
|
|
185
|
-
`,t-1))}function QG(e,t,s){var n,o,l,u,h,m,d,p,g=e.kind,x=e.result,_;if(_=e.input.charCodeAt(e.position),fn(_)||sl(_)||_===35||_===38||_===42||_===33||_===124||_===62||_===39||_===34||_===37||_===64||_===96||(_===63||_===45)&&(o=e.input.charCodeAt(e.position+1),fn(o)||s&&sl(o)))return!1;for(e.kind="scalar",e.result="",l=u=e.position,h=!1;_!==0;){if(_===58){if(o=e.input.charCodeAt(e.position+1),fn(o)||s&&sl(o))break}else if(_===35){if(n=e.input.charCodeAt(e.position-1),fn(n))break}else{if(e.position===e.lineStart&&kf(e)||s&&sl(_))break;if(Li(_))if(m=e.line,d=e.lineStart,p=e.lineIndent,us(e,!1,-1),e.lineIndent>=t){h=!0,_=e.input.charCodeAt(e.position);continue}else{e.position=u,e.line=m,e.lineStart=d,e.lineIndent=p;break}}h&&(oa(e,l,u,!1),qx(e,e.line-m),l=u=e.position,h=!1),Xa(_)||(u=e.position+1),_=e.input.charCodeAt(++e.position)}return oa(e,l,u,!1),e.result?!0:(e.kind=g,e.result=x,!1)}function JG(e,t){var s,n,o;if(s=e.input.charCodeAt(e.position),s!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=o=e.position;(s=e.input.charCodeAt(e.position))!==0;)if(s===39)if(oa(e,n,e.position,!0),s=e.input.charCodeAt(++e.position),s===39)n=e.position,e.position++,o=e.position;else return!0;else Li(s)?(oa(e,n,o,!0),qx(e,us(e,!1,t)),n=o=e.position):e.position===e.lineStart&&kf(e)?Be(e,"unexpected end of the document within a single quoted scalar"):(e.position++,o=e.position);Be(e,"unexpected end of the stream within a single quoted scalar")}function eW(e,t){var s,n,o,l,u,h;if(h=e.input.charCodeAt(e.position),h!==34)return!1;for(e.kind="scalar",e.result="",e.position++,s=n=e.position;(h=e.input.charCodeAt(e.position))!==0;){if(h===34)return oa(e,s,e.position,!0),e.position++,!0;if(h===92){if(oa(e,s,e.position,!0),h=e.input.charCodeAt(++e.position),Li(h))us(e,!1,t);else if(h<256&&U5[h])e.result+=F5[h],e.position++;else if((u=KG(h))>0){for(o=u,l=0;o>0;o--)h=e.input.charCodeAt(++e.position),(u=WG(h))>=0?l=(l<<4)+u:Be(e,"expected hexadecimal character");e.result+=XG(l),e.position++}else Be(e,"unknown escape sequence");s=n=e.position}else Li(h)?(oa(e,s,n,!0),qx(e,us(e,!1,t)),s=n=e.position):e.position===e.lineStart&&kf(e)?Be(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}Be(e,"unexpected end of the stream within a double quoted scalar")}function tW(e,t){var s=!0,n,o,l,u=e.tag,h,m=e.anchor,d,p,g,x,_,S=Object.create(null),w,C,N,j;if(j=e.input.charCodeAt(e.position),j===91)p=93,_=!1,h=[];else if(j===123)p=125,_=!0,h={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=h),j=e.input.charCodeAt(++e.position);j!==0;){if(us(e,!0,t),j=e.input.charCodeAt(e.position),j===p)return e.position++,e.tag=u,e.anchor=m,e.kind=_?"mapping":"sequence",e.result=h,!0;s?j===44&&Be(e,"expected the node content, but found ','"):Be(e,"missed comma between flow collection entries"),C=w=N=null,g=x=!1,j===63&&(d=e.input.charCodeAt(e.position+1),fn(d)&&(g=x=!0,e.position++,us(e,!0,t))),n=e.line,o=e.lineStart,l=e.position,dl(e,t,ef,!1,!0),C=e.tag,w=e.result,us(e,!0,t),j=e.input.charCodeAt(e.position),(x||e.line===n)&&j===58&&(g=!0,j=e.input.charCodeAt(++e.position),us(e,!0,t),dl(e,t,ef,!1,!0),N=e.result),_?nl(e,h,S,C,w,N,n,o,l):g?h.push(nl(e,null,S,C,w,N,n,o,l)):h.push(w),us(e,!0,t),j=e.input.charCodeAt(e.position),j===44?(s=!0,j=e.input.charCodeAt(++e.position)):s=!1}Be(e,"unexpected end of the stream within a flow collection")}function sW(e,t){var s,n,o=i0,l=!1,u=!1,h=t,m=0,d=!1,p,g;if(g=e.input.charCodeAt(e.position),g===124)n=!1;else if(g===62)n=!0;else return!1;for(e.kind="scalar",e.result="";g!==0;)if(g=e.input.charCodeAt(++e.position),g===43||g===45)i0===o?o=g===43?Rk:FG:Be(e,"repeat of a chomping mode identifier");else if((p=YG(g))>=0)p===0?Be(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):u?Be(e,"repeat of an indentation width identifier"):(h=t+p-1,u=!0);else break;if(Xa(g)){do g=e.input.charCodeAt(++e.position);while(Xa(g));if(g===35)do g=e.input.charCodeAt(++e.position);while(!Li(g)&&g!==0)}for(;g!==0;){for(Fx(e),e.lineIndent=0,g=e.input.charCodeAt(e.position);(!u||e.lineIndent<h)&&g===32;)e.lineIndent++,g=e.input.charCodeAt(++e.position);if(!u&&e.lineIndent>h&&(h=e.lineIndent),Li(g)){m++;continue}if(e.lineIndent<h){o===Rk?e.result+=bs.repeat(`
|
|
186
|
-
`,l?1+m:m):o===i0&&l&&(e.result+=`
|
|
187
|
-
`);break}for(n?Xa(g)?(d=!0,e.result+=bs.repeat(`
|
|
188
|
-
`,l?1+m:m)):d?(d=!1,e.result+=bs.repeat(`
|
|
189
|
-
`,m+1)):m===0?l&&(e.result+=" "):e.result+=bs.repeat(`
|
|
190
|
-
`,m):e.result+=bs.repeat(`
|
|
191
|
-
`,l?1+m:m),l=!0,u=!0,m=0,s=e.position;!Li(g)&&g!==0;)g=e.input.charCodeAt(++e.position);oa(e,s,e.position,!1)}return!0}function Bk(e,t){var s,n=e.tag,o=e.anchor,l=[],u,h=!1,m;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=l),m=e.input.charCodeAt(e.position);m!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Be(e,"tab characters must not be used in indentation")),!(m!==45||(u=e.input.charCodeAt(e.position+1),!fn(u))));){if(h=!0,e.position++,us(e,!0,-1)&&e.lineIndent<=t){l.push(null),m=e.input.charCodeAt(e.position);continue}if(s=e.line,dl(e,t,I5,!1,!0),l.push(e.result),us(e,!0,-1),m=e.input.charCodeAt(e.position),(e.line===s||e.lineIndent>t)&&m!==0)Be(e,"bad indentation of a sequence entry");else if(e.lineIndent<t)break}return h?(e.tag=n,e.anchor=o,e.kind="sequence",e.result=l,!0):!1}function nW(e,t,s){var n,o,l,u,h,m,d=e.tag,p=e.anchor,g={},x=Object.create(null),_=null,S=null,w=null,C=!1,N=!1,j;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=g),j=e.input.charCodeAt(e.position);j!==0;){if(!C&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Be(e,"tab characters must not be used in indentation")),n=e.input.charCodeAt(e.position+1),l=e.line,(j===63||j===58)&&fn(n))j===63?(C&&(nl(e,g,x,_,S,null,u,h,m),_=S=w=null),N=!0,C=!0,o=!0):C?(C=!1,o=!0):Be(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,j=n;else{if(u=e.line,h=e.lineStart,m=e.position,!dl(e,s,B5,!1,!0))break;if(e.line===l){for(j=e.input.charCodeAt(e.position);Xa(j);)j=e.input.charCodeAt(++e.position);if(j===58)j=e.input.charCodeAt(++e.position),fn(j)||Be(e,"a whitespace character is expected after the key-value separator within a block mapping"),C&&(nl(e,g,x,_,S,null,u,h,m),_=S=w=null),N=!0,C=!1,o=!1,_=e.tag,S=e.result;else if(N)Be(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=p,!0}else if(N)Be(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=d,e.anchor=p,!0}if((e.line===l||e.lineIndent>t)&&(C&&(u=e.line,h=e.lineStart,m=e.position),dl(e,t,tf,!0,o)&&(C?S=e.result:w=e.result),C||(nl(e,g,x,_,S,w,u,h,m),_=S=w=null),us(e,!0,-1),j=e.input.charCodeAt(e.position)),(e.line===l||e.lineIndent>t)&&j!==0)Be(e,"bad indentation of a mapping entry");else if(e.lineIndent<t)break}return C&&nl(e,g,x,_,S,null,u,h,m),N&&(e.tag=d,e.anchor=p,e.kind="mapping",e.result=g),N}function iW(e){var t,s=!1,n=!1,o,l,u;if(u=e.input.charCodeAt(e.position),u!==33)return!1;if(e.tag!==null&&Be(e,"duplication of a tag property"),u=e.input.charCodeAt(++e.position),u===60?(s=!0,u=e.input.charCodeAt(++e.position)):u===33?(n=!0,o="!!",u=e.input.charCodeAt(++e.position)):o="!",t=e.position,s){do u=e.input.charCodeAt(++e.position);while(u!==0&&u!==62);e.position<e.length?(l=e.input.slice(t,e.position),u=e.input.charCodeAt(++e.position)):Be(e,"unexpected end of the stream within a verbatim tag")}else{for(;u!==0&&!fn(u);)u===33&&(n?Be(e,"tag suffix cannot contain exclamation marks"):(o=e.input.slice(t-1,e.position+1),P5.test(o)||Be(e,"named tag handle cannot contain such characters"),n=!0,t=e.position+1)),u=e.input.charCodeAt(++e.position);l=e.input.slice(t,e.position),GG.test(l)&&Be(e,"tag suffix cannot contain flow indicator characters")}l&&!$5.test(l)&&Be(e,"tag name cannot contain such characters: "+l);try{l=decodeURIComponent(l)}catch{Be(e,"tag name is malformed: "+l)}return s?e.tag=l:da.call(e.tagMap,o)?e.tag=e.tagMap[o]+l:o==="!"?e.tag="!"+l:o==="!!"?e.tag="tag:yaml.org,2002:"+l:Be(e,'undeclared tag handle "'+o+'"'),!0}function rW(e){var t,s;if(s=e.input.charCodeAt(e.position),s!==38)return!1;for(e.anchor!==null&&Be(e,"duplication of an anchor property"),s=e.input.charCodeAt(++e.position),t=e.position;s!==0&&!fn(s)&&!sl(s);)s=e.input.charCodeAt(++e.position);return e.position===t&&Be(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(t,e.position),!0}function aW(e){var t,s,n;if(n=e.input.charCodeAt(e.position),n!==42)return!1;for(n=e.input.charCodeAt(++e.position),t=e.position;n!==0&&!fn(n)&&!sl(n);)n=e.input.charCodeAt(++e.position);return e.position===t&&Be(e,"name of an alias node must contain at least one character"),s=e.input.slice(t,e.position),da.call(e.anchorMap,s)||Be(e,'unidentified alias "'+s+'"'),e.result=e.anchorMap[s],us(e,!0,-1),!0}function dl(e,t,s,n,o){var l,u,h,m=1,d=!1,p=!1,g,x,_,S,w,C;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,l=u=h=tf===s||I5===s,n&&us(e,!0,-1)&&(d=!0,e.lineIndent>t?m=1:e.lineIndent===t?m=0:e.lineIndent<t&&(m=-1)),m===1)for(;iW(e)||rW(e);)us(e,!0,-1)?(d=!0,h=l,e.lineIndent>t?m=1:e.lineIndent===t?m=0:e.lineIndent<t&&(m=-1)):h=!1;if(h&&(h=d||o),(m===1||tf===s)&&(ef===s||B5===s?w=t:w=t+1,C=e.position-e.lineStart,m===1?h&&(Bk(e,C)||nW(e,C,w))||tW(e,w)?p=!0:(u&&sW(e,w)||JG(e,w)||eW(e,w)?p=!0:aW(e)?(p=!0,(e.tag!==null||e.anchor!==null)&&Be(e,"alias node should not have any properties")):QG(e,w,ef===s)&&(p=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):m===0&&(p=h&&Bk(e,C))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&Be(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),g=0,x=e.implicitTypes.length;g<x;g+=1)if(S=e.implicitTypes[g],S.resolve(e.result)){e.result=S.construct(e.result),e.tag=S.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(da.call(e.typeMap[e.kind||"fallback"],e.tag))S=e.typeMap[e.kind||"fallback"][e.tag];else for(S=null,_=e.typeMap.multi[e.kind||"fallback"],g=0,x=_.length;g<x;g+=1)if(e.tag.slice(0,_[g].tag.length)===_[g].tag){S=_[g];break}S||Be(e,"unknown tag !<"+e.tag+">"),e.result!==null&&S.kind!==e.kind&&Be(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+S.kind+'", not "'+e.kind+'"'),S.resolve(e.result,e.tag)?(e.result=S.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Be(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||p}function oW(e){var t=e.position,s,n,o,l=!1,u;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(u=e.input.charCodeAt(e.position))!==0&&(us(e,!0,-1),u=e.input.charCodeAt(e.position),!(e.lineIndent>0||u!==37));){for(l=!0,u=e.input.charCodeAt(++e.position),s=e.position;u!==0&&!fn(u);)u=e.input.charCodeAt(++e.position);for(n=e.input.slice(s,e.position),o=[],n.length<1&&Be(e,"directive name must not be less than one character in length");u!==0;){for(;Xa(u);)u=e.input.charCodeAt(++e.position);if(u===35){do u=e.input.charCodeAt(++e.position);while(u!==0&&!Li(u));break}if(Li(u))break;for(s=e.position;u!==0&&!fn(u);)u=e.input.charCodeAt(++e.position);o.push(e.input.slice(s,e.position))}u!==0&&Fx(e),da.call(Lk,n)?Lk[n](e,n,o):sf(e,'unknown document directive "'+n+'"')}if(us(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,us(e,!0,-1)):l&&Be(e,"directives end mark is expected"),dl(e,e.lineIndent-1,tf,!1,!0),us(e,!0,-1),e.checkLineBreaks&&VG.test(e.input.slice(t,e.position))&&sf(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&kf(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,us(e,!0,-1));return}if(e.position<e.length-1)Be(e,"end of the stream or a document separator is expected");else return}function V5(e,t){e=String(e),t=t||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
|
|
192
|
-
`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var s=new ZG(e,t),n=e.indexOf("\0");for(n!==-1&&(s.position=n,Be(s,"null byte is not allowed in input")),s.input+="\0";s.input.charCodeAt(s.position)===32;)s.lineIndent+=1,s.position+=1;for(;s.position<s.length-1;)oW(s);return s.documents}function lW(e,t,s){t!==null&&typeof t=="object"&&typeof s>"u"&&(s=t,t=null);var n=V5(e,s);if(typeof t!="function")return n;for(var o=0,l=n.length;o<l;o+=1)t(n[o])}function cW(e,t){var s=V5(e,t);if(s.length!==0){if(s.length===1)return s[0];throw new Zs("expected a single document in the stream, but found more")}}var uW=lW,dW=cW,G5={loadAll:uW,load:dW},W5=Object.prototype.toString,K5=Object.prototype.hasOwnProperty,Vx=65279,hW=9,ru=10,fW=13,mW=32,pW=33,gW=34,kb=35,bW=37,xW=38,vW=39,_W=42,Y5=44,yW=45,nf=58,SW=61,wW=62,kW=63,CW=64,X5=91,Z5=93,NW=96,Q5=123,EW=124,J5=125,Ws={};Ws[0]="\\0";Ws[7]="\\a";Ws[8]="\\b";Ws[9]="\\t";Ws[10]="\\n";Ws[11]="\\v";Ws[12]="\\f";Ws[13]="\\r";Ws[27]="\\e";Ws[34]='\\"';Ws[92]="\\\\";Ws[133]="\\N";Ws[160]="\\_";Ws[8232]="\\L";Ws[8233]="\\P";var jW=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],TW=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function AW(e,t){var s,n,o,l,u,h,m;if(t===null)return{};for(s={},n=Object.keys(t),o=0,l=n.length;o<l;o+=1)u=n[o],h=String(t[u]),u.slice(0,2)==="!!"&&(u="tag:yaml.org,2002:"+u.slice(2)),m=e.compiledTypeMap.fallback[u],m&&K5.call(m.styleAliases,h)&&(h=m.styleAliases[h]),s[u]=h;return s}function MW(e){var t,s,n;if(t=e.toString(16).toUpperCase(),e<=255)s="x",n=2;else if(e<=65535)s="u",n=4;else if(e<=4294967295)s="U",n=8;else throw new Zs("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+s+bs.repeat("0",n-t.length)+t}var RW=1,au=2;function DW(e){this.schema=e.schema||Ux,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=bs.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=AW(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?au:RW,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer=="function"?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function Ik(e,t){for(var s=bs.repeat(" ",t),n=0,o=-1,l="",u,h=e.length;n<h;)o=e.indexOf(`
|
|
193
|
-
`,n),o===-1?(u=e.slice(n),n=h):(u=e.slice(n,o+1),n=o+1),u.length&&u!==`
|
|
194
|
-
`&&(l+=s),l+=u;return l}function Cb(e,t){return`
|
|
195
|
-
`+bs.repeat(" ",e.indent*t)}function OW(e,t){var s,n,o;for(s=0,n=e.implicitTypes.length;s<n;s+=1)if(o=e.implicitTypes[s],o.resolve(t))return!0;return!1}function rf(e){return e===mW||e===hW}function ou(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==Vx||65536<=e&&e<=1114111}function Pk(e){return ou(e)&&e!==Vx&&e!==fW&&e!==ru}function $k(e,t,s){var n=Pk(e),o=n&&!rf(e);return(s?n:n&&e!==Y5&&e!==X5&&e!==Z5&&e!==Q5&&e!==J5)&&e!==kb&&!(t===nf&&!o)||Pk(t)&&!rf(t)&&e===kb||t===nf&&o}function LW(e){return ou(e)&&e!==Vx&&!rf(e)&&e!==yW&&e!==kW&&e!==nf&&e!==Y5&&e!==X5&&e!==Z5&&e!==Q5&&e!==J5&&e!==kb&&e!==xW&&e!==_W&&e!==pW&&e!==EW&&e!==SW&&e!==wW&&e!==vW&&e!==gW&&e!==bW&&e!==CW&&e!==NW}function zW(e){return!rf(e)&&e!==nf}function Ic(e,t){var s=e.charCodeAt(t),n;return s>=55296&&s<=56319&&t+1<e.length&&(n=e.charCodeAt(t+1),n>=56320&&n<=57343)?(s-55296)*1024+n-56320+65536:s}function ej(e){var t=/^\n* /;return t.test(e)}var tj=1,Nb=2,sj=3,nj=4,Zo=5;function BW(e,t,s,n,o,l,u,h){var m,d=0,p=null,g=!1,x=!1,_=n!==-1,S=-1,w=LW(Ic(e,0))&&zW(Ic(e,e.length-1));if(t||u)for(m=0;m<e.length;d>=65536?m+=2:m++){if(d=Ic(e,m),!ou(d))return Zo;w=w&&$k(d,p,h),p=d}else{for(m=0;m<e.length;d>=65536?m+=2:m++){if(d=Ic(e,m),d===ru)g=!0,_&&(x=x||m-S-1>n&&e[S+1]!==" ",S=m);else if(!ou(d))return Zo;w=w&&$k(d,p,h),p=d}x=x||_&&m-S-1>n&&e[S+1]!==" "}return!g&&!x?w&&!u&&!o(e)?tj:l===au?Zo:Nb:s>9&&ej(e)?Zo:u?l===au?Zo:Nb:x?nj:sj}function IW(e,t,s,n,o){e.dump=(function(){if(t.length===0)return e.quotingType===au?'""':"''";if(!e.noCompatMode&&(jW.indexOf(t)!==-1||TW.test(t)))return e.quotingType===au?'"'+t+'"':"'"+t+"'";var l=e.indent*Math.max(1,s),u=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-l),h=n||e.flowLevel>-1&&s>=e.flowLevel;function m(d){return OW(e,d)}switch(BW(t,h,e.indent,u,m,e.quotingType,e.forceQuotes&&!n,o)){case tj:return t;case Nb:return"'"+t.replace(/'/g,"''")+"'";case sj:return"|"+Hk(t,e.indent)+Uk(Ik(t,l));case nj:return">"+Hk(t,e.indent)+Uk(Ik(PW(t,u),l));case Zo:return'"'+$W(t)+'"';default:throw new Zs("impossible error: invalid scalar style")}})()}function Hk(e,t){var s=ej(e)?String(t):"",n=e[e.length-1]===`
|
|
196
|
-
`,o=n&&(e[e.length-2]===`
|
|
197
|
-
`||e===`
|
|
198
|
-
`),l=o?"+":n?"":"-";return s+l+`
|
|
199
|
-
`}function Uk(e){return e[e.length-1]===`
|
|
200
|
-
`?e.slice(0,-1):e}function PW(e,t){for(var s=/(\n+)([^\n]*)/g,n=(function(){var d=e.indexOf(`
|
|
201
|
-
`);return d=d!==-1?d:e.length,s.lastIndex=d,Fk(e.slice(0,d),t)})(),o=e[0]===`
|
|
202
|
-
`||e[0]===" ",l,u;u=s.exec(e);){var h=u[1],m=u[2];l=m[0]===" ",n+=h+(!o&&!l&&m!==""?`
|
|
203
|
-
`:"")+Fk(m,t),o=l}return n}function Fk(e,t){if(e===""||e[0]===" ")return e;for(var s=/ [^ ]/g,n,o=0,l,u=0,h=0,m="";n=s.exec(e);)h=n.index,h-o>t&&(l=u>o?u:h,m+=`
|
|
204
|
-
`+e.slice(o,l),o=l+1),u=h;return m+=`
|
|
205
|
-
`,e.length-o>t&&u>o?m+=e.slice(o,u)+`
|
|
206
|
-
`+e.slice(u+1):m+=e.slice(o),m.slice(1)}function $W(e){for(var t="",s=0,n,o=0;o<e.length;s>=65536?o+=2:o++)s=Ic(e,o),n=Ws[s],!n&&ou(s)?(t+=e[o],s>=65536&&(t+=e[o+1])):t+=n||MW(s);return t}function HW(e,t,s){var n="",o=e.tag,l,u,h;for(l=0,u=s.length;l<u;l+=1)h=s[l],e.replacer&&(h=e.replacer.call(s,String(l),h)),(br(e,t,h,!1,!1)||typeof h>"u"&&br(e,t,null,!1,!1))&&(n!==""&&(n+=","+(e.condenseFlow?"":" ")),n+=e.dump);e.tag=o,e.dump="["+n+"]"}function qk(e,t,s,n){var o="",l=e.tag,u,h,m;for(u=0,h=s.length;u<h;u+=1)m=s[u],e.replacer&&(m=e.replacer.call(s,String(u),m)),(br(e,t+1,m,!0,!0,!1,!0)||typeof m>"u"&&br(e,t+1,null,!0,!0,!1,!0))&&((!n||o!=="")&&(o+=Cb(e,t)),e.dump&&ru===e.dump.charCodeAt(0)?o+="-":o+="- ",o+=e.dump);e.tag=l,e.dump=o||"[]"}function UW(e,t,s){var n="",o=e.tag,l=Object.keys(s),u,h,m,d,p;for(u=0,h=l.length;u<h;u+=1)p="",n!==""&&(p+=", "),e.condenseFlow&&(p+='"'),m=l[u],d=s[m],e.replacer&&(d=e.replacer.call(s,m,d)),br(e,t,m,!1,!1)&&(e.dump.length>1024&&(p+="? "),p+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),br(e,t,d,!1,!1)&&(p+=e.dump,n+=p));e.tag=o,e.dump="{"+n+"}"}function FW(e,t,s,n){var o="",l=e.tag,u=Object.keys(s),h,m,d,p,g,x;if(e.sortKeys===!0)u.sort();else if(typeof e.sortKeys=="function")u.sort(e.sortKeys);else if(e.sortKeys)throw new Zs("sortKeys must be a boolean or a function");for(h=0,m=u.length;h<m;h+=1)x="",(!n||o!=="")&&(x+=Cb(e,t)),d=u[h],p=s[d],e.replacer&&(p=e.replacer.call(s,d,p)),br(e,t+1,d,!0,!0,!0)&&(g=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,g&&(e.dump&&ru===e.dump.charCodeAt(0)?x+="?":x+="? "),x+=e.dump,g&&(x+=Cb(e,t)),br(e,t+1,p,!0,g)&&(e.dump&&ru===e.dump.charCodeAt(0)?x+=":":x+=": ",x+=e.dump,o+=x));e.tag=l,e.dump=o||"{}"}function Vk(e,t,s){var n,o,l,u,h,m;for(o=s?e.explicitTypes:e.implicitTypes,l=0,u=o.length;l<u;l+=1)if(h=o[l],(h.instanceOf||h.predicate)&&(!h.instanceOf||typeof t=="object"&&t instanceof h.instanceOf)&&(!h.predicate||h.predicate(t))){if(s?h.multi&&h.representName?e.tag=h.representName(t):e.tag=h.tag:e.tag="?",h.represent){if(m=e.styleMap[h.tag]||h.defaultStyle,W5.call(h.represent)==="[object Function]")n=h.represent(t,m);else if(K5.call(h.represent,m))n=h.represent[m](t,m);else throw new Zs("!<"+h.tag+'> tag resolver accepts not "'+m+'" style');e.dump=n}return!0}return!1}function br(e,t,s,n,o,l,u){e.tag=null,e.dump=s,Vk(e,s,!1)||Vk(e,s,!0);var h=W5.call(e.dump),m=n,d;n&&(n=e.flowLevel<0||e.flowLevel>t);var p=h==="[object Object]"||h==="[object Array]",g,x;if(p&&(g=e.duplicates.indexOf(s),x=g!==-1),(e.tag!==null&&e.tag!=="?"||x||e.indent!==2&&t>0)&&(o=!1),x&&e.usedDuplicates[g])e.dump="*ref_"+g;else{if(p&&x&&!e.usedDuplicates[g]&&(e.usedDuplicates[g]=!0),h==="[object Object]")n&&Object.keys(e.dump).length!==0?(FW(e,t,e.dump,o),x&&(e.dump="&ref_"+g+e.dump)):(UW(e,t,e.dump),x&&(e.dump="&ref_"+g+" "+e.dump));else if(h==="[object Array]")n&&e.dump.length!==0?(e.noArrayIndent&&!u&&t>0?qk(e,t-1,e.dump,o):qk(e,t,e.dump,o),x&&(e.dump="&ref_"+g+e.dump)):(HW(e,t,e.dump),x&&(e.dump="&ref_"+g+" "+e.dump));else if(h==="[object String]")e.tag!=="?"&&IW(e,e.dump,t,l,m);else{if(h==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new Zs("unacceptable kind of an object to dump "+h)}e.tag!==null&&e.tag!=="?"&&(d=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?d="!"+d:d.slice(0,18)==="tag:yaml.org,2002:"?d="!!"+d.slice(18):d="!<"+d+">",e.dump=d+" "+e.dump)}return!0}function qW(e,t){var s=[],n=[],o,l;for(Eb(e,s,n),o=0,l=n.length;o<l;o+=1)t.duplicates.push(s[n[o]]);t.usedDuplicates=new Array(l)}function Eb(e,t,s){var n,o,l;if(e!==null&&typeof e=="object")if(o=t.indexOf(e),o!==-1)s.indexOf(o)===-1&&s.push(o);else if(t.push(e),Array.isArray(e))for(o=0,l=e.length;o<l;o+=1)Eb(e[o],t,s);else for(n=Object.keys(e),o=0,l=n.length;o<l;o+=1)Eb(e[n[o]],t,s)}function VW(e,t){t=t||{};var s=new DW(t);s.noRefs||qW(e,s);var n=e;return s.replacer&&(n=s.replacer.call({"":n},"",n)),br(s,0,n,!0,!0)?s.dump+`
|
|
207
|
-
`:""}var GW=VW,WW={dump:GW};function Gx(e,t){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+t+" instead, which is now safe by default.")}}var KW=Ps,YW=x5,XW=S5,ZW=E5,QW=j5,JW=Ux,eK=G5.load,tK=G5.loadAll,sK=WW.dump,nK=Zs,iK={binary:D5,float:N5,map:y5,null:w5,pairs:L5,set:z5,timestamp:M5,bool:k5,int:C5,merge:R5,omap:O5,seq:_5,str:v5},rK=Gx("safeLoad","load"),aK=Gx("safeLoadAll","loadAll"),oK=Gx("safeDump","dump"),lK={Type:KW,Schema:YW,FAILSAFE_SCHEMA:XW,JSON_SCHEMA:ZW,CORE_SCHEMA:QW,DEFAULT_SCHEMA:JW,load:eK,loadAll:tK,dump:sK,YAMLException:nK,types:iK,safeLoad:rK,safeLoadAll:aK,safeDump:oK};function ij(e){return e!==null&&typeof e=="object"}function rj(e){return typeof e=="string"?"text-rose-700 dark:text-rose-300":typeof e=="number"?"text-emerald-700 dark:text-emerald-300":typeof e=="boolean"?"text-blue-700 dark:text-blue-400":e==null?"text-muted-foreground italic":"text-foreground"}function aj(e){return e==null?"null":typeof e=="string"?e===""?'""':e:String(e)}function oj({label:e,value:t,depth:s,defaultOpen:n}){const[o,l]=y.useState(n),u={paddingLeft:`${s*1.1}rem`};if(!ij(t))return a.jsxs("div",{className:"flex items-baseline gap-2 py-[1px]",style:u,children:[a.jsxs("span",{className:"text-muted-foreground",children:[e,":"]}),a.jsx("span",{className:ae("whitespace-pre-wrap break-words",rj(t)),children:aj(t)})]});const h=Array.isArray(t)?t.map((d,p)=>[String(p),d]):Object.entries(t),m=Array.isArray(t)?`[${h.length}]`:`{${h.length}}`;return a.jsxs("div",{children:[a.jsxs("button",{type:"button",onClick:()=>l(d=>!d),className:"flex w-full items-center gap-1 py-[1px] text-left hover:bg-muted",style:u,children:[o?a.jsx(Qn,{className:"size-3.5 shrink-0 text-muted-foreground"}):a.jsx(pi,{className:"size-3.5 shrink-0 text-muted-foreground"}),a.jsx("span",{className:"font-medium text-foreground",children:e}),a.jsx("span",{className:"text-muted-foreground",children:m})]}),o?h.map(([d,p])=>a.jsx(oj,{label:d,value:p,depth:s+1,defaultOpen:s<1},d)):null]})}function cK({content:e}){const t=y.useMemo(()=>{try{const n=lK.loadAll(e);return{value:n.length<=1?n[0]:n,error:null}}catch(n){return{value:null,error:n instanceof Error?n.message:String(n)}}},[e]);if(t.error)return a.jsx("div",{className:"p-4",children:a.jsxs(Ve,{variant:"destructive",children:["Could not parse YAML: ",t.error]})});if(!ij(t.value))return a.jsx("div",{className:"p-4 font-mono text-[12px]",children:a.jsx("span",{className:rj(t.value),children:aj(t.value)})});const s=Array.isArray(t.value)?t.value.map((n,o)=>[String(o),n]):Object.entries(t.value);return a.jsx("div",{className:"min-w-max px-4 py-3 font-mono text-[12px] leading-[1.6]",children:s.map(([n,o])=>a.jsx(oj,{label:n,value:o,depth:0,defaultOpen:!0},n))})}const uK=y.lazy(()=>tV(()=>import("./code-editor-CLZ4YEu4.js"),[]).then(e=>({default:e.CodeEditor})));function dK(e){const t=e.split("/").pop()?.toLowerCase().split(".").pop()??"";return t==="md"||t==="mdx"||t==="markdown"?"markdown":t==="yml"||t==="yaml"?"yaml":null}function hK(e){const t=e.split("/").pop()?.toLowerCase()??"",s=t.includes(".")?t.split(".").pop()??"":"",n={ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",mjs:"javascript",cjs:"javascript",py:"python",rb:"ruby",go:"go",rs:"rust",java:"java",kt:"kotlin",swift:"swift",c:"c",h:"c",cpp:"cpp",cc:"cpp",hpp:"cpp",cs:"csharp",sh:"bash",bash:"bash",zsh:"bash",json:"json",yaml:"yaml",yml:"yaml",toml:"ini",ini:"ini",md:"markdown",mdx:"markdown",css:"css",scss:"scss",less:"less",html:"xml",xml:"xml",sql:"sql",dockerfile:"dockerfile"};return n[s]?n[s]:t==="dockerfile"?"dockerfile":null}function fK(e,t){const s=e.endsWith(`
|
|
208
|
-
`)?e.slice(0,-1):e;return!t||!Sb.getLanguage(t)?s.split(`
|
|
209
|
-
`).map(Gk):s.split(`
|
|
210
|
-
`).map(n=>{if(!n)return"";try{return Sb.highlight(n,{language:t,ignoreIllegals:!0}).value}catch{return Gk(n)}})}function Gk(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function mK({content:e,path:t}){const s=y.useMemo(()=>hK(t),[t]),n=y.useMemo(()=>fK(e,s),[e,s]),o=`${Math.max(2,String(n.length).length)}ch`;return a.jsx("div",{className:"min-w-max font-mono text-[12px] leading-[1.5]",children:n.map((l,u)=>a.jsxs("div",{className:"flex",children:[a.jsx("span",{className:"shrink-0 select-none border-r border-zinc-200 bg-zinc-100 px-2 text-right text-zinc-400 dark:border-zinc-800 dark:bg-zinc-900 dark:text-zinc-500",style:{minWidth:`calc(${o} + 1rem)`},children:u+1}),a.jsx("span",{className:"hljs whitespace-pre px-3 text-zinc-800 dark:text-zinc-100",dangerouslySetInnerHTML:{__html:l||" "}})]},u))})}function pK({path:e,isModified:t,onViewDiff:s,onFileSaved:n,onSendToAi:o}){const[l,u]=y.useState(null),[h,m]=y.useState(""),[d,p]=y.useState(!1),[g,x]=y.useState(null),[_,S]=y.useState(!1),[w,C]=y.useState(!1),{success:N,error:j}=Es(),E=y.useMemo(()=>dK(e),[e]),[A,O]=y.useState("preview"),P=!!(l&&!l.binary&&!l.truncated),D=l?h!==l.content:!1;y.useEffect(()=>{O(E?"preview":"source"),p(!1)},[E]),y.useEffect(()=>{if(!e){u(null);return}let L=!0;return S(!0),x(null),p(!1),a6(e).then(I=>{L&&(u(I),m(I.content),S(!1))}).catch(I=>{L&&(x(I instanceof Error?I.message:String(I)),S(!1))}),()=>{L=!1}},[e]);async function T(){if(!(!e||!l||!D||w)){C(!0);try{await o6(e,h);const L={...l,content:h,size:new TextEncoder().encode(h).length};u(L),p(!1),N(`Saved ${e}.`),n?.(e)}catch(L){j(L instanceof Error?L.message:String(L))}finally{C(!1)}}}function z(){m(l?.content??""),p(!1)}return e?a.jsxs("section",{className:"flex min-h-0 min-w-0 flex-col border-l border-border bg-card",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-3 border-b border-border px-3 py-1.5",children:[a.jsxs("div",{className:"min-w-0",children:[a.jsx("h2",{className:"truncate text-[13px] font-semibold tracking-tight",children:e}),a.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-[10px] text-muted-foreground",children:[a.jsx("span",{children:"Read-only view of tracked file."}),l?.truncated?a.jsx("span",{className:"text-amber-700",children:"Truncated — file exceeds 1MB."}):null,l?.binary?a.jsx("span",{className:"text-amber-700",children:"Binary file."}):null]})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[E&&!l?.binary?a.jsxs("div",{className:"flex items-center rounded-md border border-border p-0.5",children:[a.jsxs("button",{type:"button",onClick:()=>O("preview"),"aria-pressed":A==="preview",className:ae("flex items-center gap-1 rounded px-2 py-1 text-[11px] font-medium transition-colors",A==="preview"?"bg-primary text-primary-foreground":"text-muted-foreground hover:bg-muted"),children:[a.jsx(Bb,{className:"size-3.5"}),"Preview"]}),a.jsxs("button",{type:"button",onClick:()=>O("source"),"aria-pressed":A==="source",className:ae("flex items-center gap-1 rounded px-2 py-1 text-[11px] font-medium transition-colors",A==="source"?"bg-primary text-primary-foreground":"text-muted-foreground hover:bg-muted"),children:[a.jsx(pC,{className:"size-3.5"}),"Source"]})]}):null,t?a.jsx(Q,{onClick:s,size:"sm",type:"button",variant:"outline",children:"View diff"}):null,o?a.jsx(Q,{"aria-label":"Send file to AI input",className:"size-8",disabled:!e,onClick:o,size:"icon",title:"Send file path to AI input",type:"button",variant:"outline",children:a.jsx(Tt,{className:"size-4"})}):null,d?a.jsxs(a.Fragment,{children:[a.jsxs(Q,{disabled:!D||w,onClick:()=>{T()},size:"sm",type:"button",children:[a.jsx(AC,{}),"Apply"]}),a.jsxs(Q,{disabled:w,onClick:z,size:"sm",type:"button",variant:"outline",children:[a.jsx(Ns,{}),"Cancel"]})]}):P?a.jsxs(Q,{onClick:()=>{O("source"),p(!0)},size:"sm",type:"button",variant:"outline",children:[a.jsx(Kc,{}),"Edit"]}):null]})]}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto bg-zinc-50 dark:bg-zinc-950",children:g?a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"destructive",children:g})}):_?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"Loading…"}):l?.binary?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"Cannot display binary content."}):l?d?a.jsx(y.Suspense,{fallback:a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"Loading editor…"}),children:a.jsx(uK,{path:e,value:h,onChange:m})}):E&&A==="preview"?E==="markdown"?a.jsx(UV,{content:l.content}):a.jsx(cK,{content:l.content}):a.jsx(mK,{content:l.content,path:e}):null})]}):a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"muted",className:"border-dashed p-12 text-center",children:"Select a file to view its contents."})})}function gK({activeHunkIndex:e,filePaths:t,hunkCount:s,pendingNextFilePath:n,selectedFile:o}){if(s>0&&e<s-1)return{kind:"hunk",activeHunkIndex:e+1};const l=t.indexOf(o),u=t[l+1];return u?n===u?{kind:"file",filePath:u}:{kind:"confirm-next-file",filePath:u}:{kind:"none"}}function Wk(e){const t={name:"",fullPath:"",children:new Map};for(const s of e){const n=s.name.split("/");let o=t;n.forEach((l,u)=>{let h=o.children.get(l);h||(h={name:l,fullPath:n.slice(0,u+1).join("/"),children:new Map},o.children.set(l,h)),o=h}),o.branch=s}return t}function Kk({label:e,tree:t,onSelect:s,defaultOpen:n,forceOpen:o}){const[l,u]=y.useState(n??!1),h=o||l,m=t.children.size===0;return a.jsxs("div",{className:"mb-1",children:[a.jsxs("button",{type:"button",onClick:()=>u(d=>!d),className:"flex w-full items-center gap-1 px-2 py-0.5 text-left text-[11px] font-semibold uppercase tracking-wide text-muted-foreground hover:text-foreground",children:[h?a.jsx(Qn,{size:12}):a.jsx(pi,{size:12}),e,m?null:a.jsxs("span",{className:"ml-1 text-[10px] font-normal",children:["(",t.children.size,")"]})]}),h&&!m?a.jsx("ul",{children:Array.from(t.children.values()).map(d=>a.jsx(lj,{node:d,depth:1,onSelect:s,forceOpen:o},d.fullPath))}):null]})}function lj({node:e,depth:t,onSelect:s,forceOpen:n}){const[o,l]=y.useState(!0),u=n||o,h=e.children.size>0,m=e.branch,d={paddingLeft:`${t*10}px`};return!h&&m?a.jsx("li",{children:a.jsxs("button",{type:"button",onClick:()=>s(m),style:d,title:m.name,className:`flex w-full items-center gap-1.5 py-0.5 pr-2 text-left text-[12px] hover:bg-muted/60 ${m.current?"font-semibold text-emerald-700":""}`,children:[a.jsx(pn,{size:11,className:"shrink-0 opacity-70"}),a.jsx("span",{className:"truncate",children:e.name}),m.current?a.jsx("span",{className:"text-[10px]",children:"●"}):null]})}):a.jsxs("li",{children:[a.jsxs("button",{type:"button",onClick:()=>{m?s(m):l(p=>!p)},style:d,className:"flex w-full items-center gap-1 py-0.5 pr-2 text-left text-[12px] hover:bg-muted/60",children:[h?u?a.jsx(Qn,{size:11}):a.jsx(pi,{size:11}):a.jsx("span",{className:"inline-block w-[11px]"}),a.jsx("span",{className:"truncate",children:e.name})]}),u&&h?a.jsx("ul",{children:Array.from(e.children.values()).map(p=>a.jsx(lj,{node:p,depth:t+1,onSelect:s,forceOpen:n},p.fullPath))}):null]})}function bK({selectedCommit:e,selectedFile:t,diff:s,diffLoading:n,diffError:o}){return a.jsxs("section",{className:"flex min-h-0 min-w-0 flex-col bg-card border-b border-border",children:[a.jsx("div",{className:"flex shrink-0 items-center justify-between gap-3 border-b border-border px-3 py-1.5",children:a.jsxs("div",{className:"min-w-0",children:[a.jsx("h2",{className:"truncate text-[13px] font-semibold tracking-tight",children:t??(e?e.subject:"Commit")}),e?a.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-[10px] text-muted-foreground",children:[a.jsx("span",{className:"font-mono",children:e.hash.slice(0,12)}),a.jsxs("span",{children:[e.author," <",e.email,">"]}),a.jsx("span",{children:new Date(e.timestamp*1e3).toLocaleString()})]}):null]})}),a.jsx("div",{className:"relative min-h-0 min-w-0 flex-1",children:o?a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"destructive",children:o})}):e?n?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"Loading diff…"}):s?a.jsx(mf,{activeHunkIndex:0,diff:s}):a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"muted",className:"border-dashed p-6 text-center",children:e.parents.length>1?"Merge commit with no conflict resolution — no diff against the first parent.":"No textual changes in this commit."})}):a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"muted",className:"border-dashed p-12 text-center",children:"Select a commit to inspect its diff."})})})]})}function xK({files:e,filesError:t,selectedHash:s,selectedFile:n,onSelect:o}){return a.jsxs("aside",{className:"flex min-h-0 flex-col overflow-hidden border-r border-border",children:[a.jsx("div",{className:"flex shrink-0 items-center justify-between gap-2 border-b border-border px-3 py-1.5",children:a.jsxs("h2",{className:"text-[13px] font-semibold tracking-tight",children:["Files",e.length?a.jsx("span",{className:"ml-2 text-[11px] font-normal text-muted-foreground",children:e.length}):null]})}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:t?a.jsx("div",{className:"p-3",children:a.jsx(Ve,{variant:"destructive",children:t})}):s?e.length===0?a.jsx("div",{className:"p-3 text-[12px] text-muted-foreground",children:"No file changes."}):a.jsx("ul",{className:"divide-y divide-border",children:e.map(l=>a.jsx("li",{children:a.jsxs("button",{onClick:()=>o(l.path),type:"button",title:l.path,className:`flex w-full items-center gap-2 px-2 py-1 text-left text-[12px] transition-colors hover:bg-muted/60 ${n===l.path?"bg-muted":""}`,children:[a.jsx("span",{className:vK(l.index),children:l.index.trim()||"·"}),a.jsx("span",{className:"truncate font-mono",children:l.path})]})},l.path))}):a.jsx("div",{className:"p-3 text-[12px] text-muted-foreground",children:"Select a commit to see its files."})})]})}function vK(e){const t="inline-flex h-4 w-4 shrink-0 items-center justify-center rounded text-[10px] font-bold";switch(e.trim().toUpperCase()){case"A":return`${t} bg-emerald-100 text-emerald-800`;case"D":return`${t} bg-red-100 text-red-800`;case"M":return`${t} bg-amber-100 text-amber-800`;case"R":return`${t} bg-blue-100 text-blue-800`;case"C":return`${t} bg-indigo-100 text-indigo-800`;default:return`${t} bg-slate-100 text-slate-700`}}const Yk=["#3b82f6","#10b981","#f59e0b","#ec4899","#8b5cf6","#14b8a6","#ef4444","#84cc16"];function Nc(e){return Yk[e%Yk.length]}function _K({lane:e,laneCount:t,edges:s,throughLanes:n,isMerge:o,height:l=28,laneWidth:u=14}){const m=Math.max(e+1,t,1)*u,d=l/2,p=Ec(e,u),g=o?4:3.5;return a.jsxs("svg",{width:m,height:l,viewBox:`0 0 ${m} ${l}`,style:{flex:"0 0 auto",display:"block"},children:[n.map(x=>a.jsx("line",{x1:Ec(x,u),y1:0,x2:Ec(x,u),y2:l,stroke:Nc(x),strokeWidth:1.5},`t-${x}`)),a.jsx("line",{x1:p,y1:0,x2:p,y2:d,stroke:Nc(e),strokeWidth:1.5}),s.map((x,_)=>{const S=Ec(x.fromLane,u),w=Ec(x.toLane,u);if(S===w)return a.jsx("line",{x1:S,y1:d,x2:w,y2:l,stroke:Nc(x.toLane),strokeWidth:1.5},`e-${_}`);const C=d+(l-d)/2;return a.jsx("path",{d:`M ${S} ${d} C ${S} ${C}, ${w} ${C}, ${w} ${l}`,fill:"none",stroke:Nc(x.toLane),strokeWidth:1.5},`e-${_}`)}),a.jsx("circle",{cx:p,cy:d,r:g,fill:Nc(e),stroke:"var(--background, #fff)",strokeWidth:1.5})]})}function Ec(e,t){return e*t+t/2}const yK=5,jb=new Map,r0=new Map,Tb=[];let Ab=0;function Xk(){for(;Ab<yK&&Tb.length>0;){const e=Tb.shift();e&&(Ab++,e())}}function SK(e){return jb.get(e)}function wK(e){const t=jb.get(e);if(t)return Promise.resolve(t);const s=r0.get(e);if(s)return s;const n=new Promise((o,l)=>{Tb.push(()=>{k6(e).then(u=>{u.state!=="pending"&&jb.set(e,u),o(u)}).catch(l).finally(()=>{Ab--,r0.delete(e),Xk()})})});return r0.set(e,n),Xk(),n}function kK({sha:e}){const[t,s]=y.useState(()=>SK(e)??null),n=y.useRef(null);if(y.useEffect(()=>{if(t)return;const u=n.current;if(!u||typeof IntersectionObserver>"u")return;let h=!0;const m=new IntersectionObserver(d=>{d.some(p=>p.isIntersecting)&&(m.disconnect(),wK(e).then(p=>{h&&s(p)}).catch(()=>{}))},{rootMargin:"200px"});return m.observe(u),()=>{h=!1,m.disconnect()}},[e,t]),!t||t.state==="unknown"||t.totalCount===0)return a.jsx("span",{ref:n,"aria-hidden":!0,className:"inline-block size-2 shrink-0"});const o=CK(t.state),l=`CI: ${t.state} (${t.totalCount} check${t.totalCount!==1?"s":""})`;return a.jsx("span",{"aria-label":l,className:`shrink-0 size-2 rounded-full ${o}`,title:l})}function CK(e){switch(e){case"success":return"bg-emerald-500";case"pending":return"bg-amber-400 animate-pulse";case"failure":return"bg-red-500";case"error":return"bg-orange-500";default:return"bg-zinc-400"}}const Zk=28;function NK({commits:e,loading:t,error:s,selectedHash:n,maxLanes:o,rowRefs:l,onSelect:u,onLoadMore:h}){const{sendToAgent:m}=At(),[d,p]=y.useState(null);function g(x,_){p(null),m({prompt:Oz(x,_),source:{type:"git-commit",label:x.hash.slice(0,7)},label:`${x.hash.slice(0,7)}: ${_}`})}return a.jsxs("aside",{className:"flex min-h-0 flex-col overflow-hidden border-r border-border",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-b border-border px-3 py-1.5",children:[a.jsxs("h2",{className:"text-[13px] font-semibold tracking-tight",children:["Commit tree",e.length?a.jsxs("span",{className:"ml-2 text-[11px] font-normal text-muted-foreground",children:[e.length," commits"]}):null]}),a.jsx(Q,{disabled:t,onClick:h,size:"sm",type:"button",variant:"outline",children:"Load more"})]}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:s?a.jsx("div",{className:"p-3",children:a.jsx(Ve,{variant:"destructive",children:s})}):t&&e.length===0?a.jsx("div",{className:"p-3 text-[12px] text-muted-foreground",children:"Loading commits…"}):e.length===0?a.jsx("div",{className:"p-3 text-[12px] text-muted-foreground",children:"No commits."}):a.jsx("ul",{className:"divide-y divide-border",children:e.map(x=>a.jsxs("li",{ref:_=>{_?l.current.set(x.hash,_):l.current.delete(x.hash)},className:"group flex flex-col",children:[a.jsxs("div",{className:`flex items-center transition-colors hover:bg-muted/60 ${n===x.hash?"bg-muted":""}`,children:[a.jsxs("button",{onClick:()=>u(x.hash),type:"button",className:"flex min-w-0 flex-1 items-center gap-2 px-2 py-0.5 text-left",style:{minHeight:Zk},title:`${x.hash}
|
|
211
|
-
${x.author} <${x.email}>
|
|
212
|
-
${x.subject}`,children:[a.jsx(_K,{lane:x.lane,laneCount:Math.max(x.laneCount,o),edges:x.edges,throughLanes:x.throughLanes,isMerge:x.parents.length>1,height:Zk}),a.jsxs("span",{className:"flex items-center gap-1 font-mono text-[10px] text-muted-foreground",children:[x.hash.slice(0,7),a.jsx(kK,{sha:x.hash})]}),a.jsxs("span",{className:"flex min-w-0 flex-1 items-center gap-1.5",children:[x.refs.map(_=>a.jsx("span",{className:jK(_.kind),children:_.name},`${_.kind}-${_.name}`)),a.jsx("span",{className:"truncate text-[12px]",children:x.subject})]}),a.jsx("span",{className:"shrink-0 text-[10px] text-muted-foreground",children:x.author}),a.jsx("span",{className:"shrink-0 font-mono text-[10px] tabular-nums text-muted-foreground/70",title:new Date(x.timestamp*1e3).toLocaleString(),children:EK(x.timestamp)})]}),a.jsx(cl,{className:`mr-1 shrink-0 ${d===x.hash?"opacity-100":""}`,label:`Ask AI about commit ${x.hash.slice(0,7)}`,onAsk:()=>p(_=>_===x.hash?null:x.hash)})]}),d===x.hash?a.jsx("div",{className:"px-2 pb-1.5 pt-0.5",children:a.jsx(bu,{placeholder:"What should the agent do with this commit? (explain, summarize, find regressions…)",onSubmit:_=>g(x,_),onCancel:()=>p(null)})}):null]},x.hash))})})]})}function EK(e){if(!e)return"";const t=Math.max(0,Math.floor(Date.now()/1e3-e));if(t<60)return`${t}s`;const s=Math.floor(t/60);if(s<60)return`${s}m`;const n=Math.floor(s/60);if(n<24)return`${n}h`;const o=Math.floor(n/24);if(o<30)return`${o}d`;const l=Math.floor(o/30);return l<12?`${l}mo`:`${Math.floor(l/12)}y`}function jK(e){const t="rounded border px-1.5 py-px text-[10px] font-medium";switch(e){case"head":return`${t} border-emerald-200 bg-emerald-100 text-emerald-800 dark:border-emerald-400/30 dark:bg-emerald-500/15 dark:text-emerald-300`;case"branch":return`${t} border-blue-200 bg-blue-100 text-blue-800 dark:border-blue-400/30 dark:bg-blue-500/15 dark:text-blue-300`;case"remote":return`${t} border-slate-200 bg-slate-100 text-slate-700 dark:border-zinc-700/80 dark:bg-zinc-800/80 dark:text-zinc-300`;case"tag":return`${t} border-amber-200 bg-amber-100 text-amber-800 dark:border-amber-400/30 dark:bg-amber-500/15 dark:text-amber-300`}}const Qk=200;function TK(){const[e,t]=y.useState([]),[s,n]=y.useState(Qk),[o,l]=y.useState(!0),[u,h]=y.useState(null),[m,d]=y.useState(null),[p,g]=y.useState([]),[x,_]=y.useState(!1),[S,w]=y.useState(null),[C,N]=y.useState(null),[j,E]=y.useState(""),[A,O]=y.useState(!1),[P,D]=y.useState(null),T=y.useCallback(I=>{d(I),g([]),N(null),E("")},[]);y.useEffect(()=>{let I=!0;return l(!0),h(null),t6(s).then($=>{I&&(t($),$.length>0&&!$.some(U=>U.hash===m)&&T($[0].hash))}).catch($=>{I&&h($ instanceof Error?$.message:String($))}).finally(()=>{I&&l(!1)}),()=>{I=!1}},[s]),y.useEffect(()=>{if(!m){g([]),N(null),_(!1);return}let I=!0;return w(null),_(!0),n6(m).then($=>{I&&(g($),N($[0]?.path??null))}).catch($=>{I&&w($ instanceof Error?$.message:String($))}).finally(()=>{I&&_(!1)}),()=>{I=!1}},[m]),y.useEffect(()=>{if(!m||!C){E(""),O(!1);return}let I=!0;return D(null),O(!0),s6(m,C).then($=>{I&&E($)}).catch($=>{I&&D($ instanceof Error?$.message:String($))}).finally(()=>{I&&O(!1)}),()=>{I=!1}},[m,C]);const z=y.useMemo(()=>e.reduce((I,$)=>Math.max(I,$.laneCount),1),[e]),L=e.find(I=>I.hash===m)??null;return{commits:e,loading:o,error:u,selectedHash:m,setSelectedHash:T,files:p,filesError:S,selectedFile:C,setSelectedFile:N,diff:j,diffLoading:A||x,diffError:P,maxLanes:z,selectedCommit:L,loadMore:()=>n(I=>I+Qk)}}function AK({branches:e=[]}){const{commits:t,loading:s,error:n,selectedHash:o,setSelectedHash:l,files:u,filesError:h,selectedFile:m,setSelectedFile:d,diff:p,diffLoading:g,diffError:x,maxLanes:_,selectedCommit:S,loadMore:w}=TK(),[C,N]=y.useState(""),j=y.useMemo(()=>{const T=C.trim().toLowerCase();return T?e.filter(z=>z.name.toLowerCase().includes(T)):e},[e,C]),E=y.useMemo(()=>Wk(j.filter(T=>!T.remote)),[j]),A=y.useMemo(()=>Wk(j.filter(T=>T.remote)),[j]),O=C.trim().length>0,P=y.useRef(new Map);function D(T){const z=T.remote?"remote":"branch",L=t.find(U=>U.refs.some(W=>W.kind===z&&W.name===T.name));if(!L)return;l(L.hash);const I=P.current.get(L.hash),$=I?.parentElement?.parentElement;!I||!$||$.scrollTo({top:Math.max(I.offsetTop-$.clientHeight/2+I.clientHeight/2,0),behavior:"smooth"})}return a.jsxs("div",{className:"grid h-full min-h-0 overflow-hidden border-0 bg-card/85 grid-cols-[220px_minmax(0,1fr)]",children:[a.jsxs("aside",{className:"flex min-h-0 flex-col overflow-hidden border-r border-border",children:[a.jsxs("div",{className:"flex shrink-0 flex-col gap-1 border-b border-border px-3 py-1.5",children:[a.jsx("h2",{className:"text-[13px] font-semibold tracking-tight",children:"Branches"}),a.jsx("input",{type:"search",value:C,onChange:T=>N(T.target.value),placeholder:"Search branches…",className:"w-full rounded border border-border bg-background px-2 py-1 text-[11px] outline-none focus:border-foreground"})]}),a.jsxs("div",{className:"min-h-0 flex-1 overflow-auto py-1",children:[a.jsx(Kk,{label:"Local",tree:E,onSelect:D,defaultOpen:!0,forceOpen:O}),a.jsx(Kk,{label:"Remote",tree:A,onSelect:D,forceOpen:O})]})]}),a.jsxs("div",{className:"grid min-h-0 min-w-0 grid-rows-[minmax(0,3fr)_minmax(0,2fr)]",children:[a.jsx(bK,{selectedCommit:S,selectedFile:m,diff:p,diffLoading:g,diffError:x}),a.jsxs("div",{className:"grid min-h-0 min-w-0 grid-cols-[minmax(0,1fr)_280px]",children:[a.jsx(NK,{commits:t,loading:s,error:n,selectedHash:o,maxLanes:_,rowRefs:P,onSelect:l,onLoadMore:w}),a.jsx(xK,{files:u,filesError:h,selectedHash:o,selectedFile:m,onSelect:d})]})]})]})}const Mb=300,MK=600,RK=new Set(["md","mdx","markdown","txt","rst","adoc","json","jsonc","json5","yaml","yml","toml","xml","ini","cfg","conf","env","properties","csv","tsv","lock","svg","map","snap","png","jpg","jpeg","gif","ico","webp"]);function DK(e){const t=e.toLowerCase();if(t.endsWith(".d.ts")||t.endsWith(".min.js")||t.endsWith(".min.css"))return!1;const s=t.lastIndexOf(".");return s<0?!0:!RK.has(t.slice(s+1))}function OK(e){return e>=MK?"danger":e>=Mb?"warn":"ok"}const LK={ok:"bg-emerald-500/60",warn:"bg-amber-500/70",danger:"bg-destructive/70"},zK={ok:"text-muted-foreground",warn:"text-amber-600 dark:text-amber-400",danger:"text-destructive"};function BK({onOpenFile:e,root:t}){const[s,n]=y.useState([]),[o,l]=y.useState(!0),[u,h]=y.useState(null),[m,d]=y.useState(!0);function p(){l(!0),h(null),r6().then(n).catch(w=>h(w instanceof Error?w.message:String(w))).finally(()=>l(!1))}y.useEffect(()=>{p()},[]);const g=y.useMemo(()=>m?s.filter(w=>DK(w.path)):s,[s,m]),x=s.length-g.length,_=g[0]?.lines??1,S=g.filter(w=>w.lines>=Mb).length;return a.jsxs("div",{className:"flex h-full min-h-0 flex-col bg-card/85",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[a.jsx(_C,{className:"size-4"}),a.jsx("span",{className:"font-semibold text-foreground",children:"Largest files"}),!o&&!u?a.jsxs("span",{children:[g.length," files · ",S," over ",Mb," lines",m&&x>0?` · ${x} data/docs hidden`:""]}):null]}),a.jsxs("div",{className:"flex items-center gap-1.5",children:[a.jsxs(Q,{size:"sm",variant:m?"default":"outline",className:"h-7",onClick:()=>d(w=>!w),title:"Hide docs, data, config and generated files",type:"button",children:[a.jsx(pC,{}),"Code only"]}),a.jsxs(Q,{size:"sm",variant:"outline",className:"h-7",onClick:p,disabled:o,type:"button",children:[o?a.jsx(ht,{className:"animate-spin"}):a.jsx(cu,{}),"Refresh"]})]})]}),u?a.jsx(Ve,{variant:"destructive",className:"m-3",children:u}):o&&s.length===0?a.jsxs("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:[a.jsx(ht,{className:"mr-2 size-4 animate-spin"}),"Scanning tracked files…"]}):g.length===0?a.jsx("div",{className:"flex flex-1 items-center justify-center text-sm text-muted-foreground",children:s.length===0?"No tracked text files found.":"No code files — toggle off “Code only” to see data & docs."}):a.jsx("ul",{className:"min-h-0 flex-1 divide-y divide-border/60 overflow-auto",children:g.map((w,C)=>{const N=OK(w.lines);return a.jsxs("li",{className:"group flex items-center gap-3 px-3 transition-colors hover:bg-muted/50",children:[a.jsx("span",{className:"w-6 shrink-0 text-right font-mono text-[10px] text-muted-foreground",children:C+1}),a.jsx("button",{type:"button",onClick:()=>e(w.path),className:"min-w-0 flex-1 py-1.5 text-left",children:a.jsxs("div",{className:"min-w-0 flex-1",children:[a.jsxs("div",{className:"flex items-center justify-between gap-3",children:[a.jsx("span",{className:"truncate font-mono text-[11px]",children:w.path}),a.jsxs("span",{className:ae("shrink-0 font-mono text-[11px] tabular-nums",zK[N]),children:[w.truncated?"≥":"",w.lines.toLocaleString()," lines"]})]}),a.jsx("div",{className:"mt-1 h-1 w-full overflow-hidden rounded-full bg-muted",children:a.jsx("div",{className:ae("h-full rounded-full",LK[N]),style:{width:`${Math.max(2,w.lines/_*100)}%`}})})]})}),a.jsxs("div",{className:"flex shrink-0 items-center justify-end gap-0.5",children:[a.jsx(IK,{file:w,root:t}),a.jsx(PK,{file:w,root:t})]})]},w.path)})})]})}function IK({file:e,root:t}){const{sendToAgent:s}=At(),n=vu(t,e.path),o=e.path.split("/").pop()??e.path;function l(){s({prompt:Dz({absolutePath:n,lines:e.lines,relativePath:e.path}),source:{label:o,type:"large-file"},label:`Help me split \`${e.path}\` (${e.lines.toLocaleString()} lines).`,mode:"send"})}function u(){s({prompt:n,source:{label:o,type:"large-file"},mode:"draft"})}return a.jsx(cj,{label:`AI actions for ${e.path}`,trigger:a.jsx(Tt,{className:"size-3.5"}),children:h=>a.jsxs(a.Fragment,{children:[a.jsx(Wc,{icon:a.jsx(Tt,{className:"size-3.5"}),onSelect:()=>{h(),l()},children:"Ask AI to split this file"}),a.jsx(Wc,{icon:a.jsx(vC,{className:"size-3.5"}),onSelect:()=>{h(),u()},children:"Send file path to AI"})]})})}function PK({file:e,root:t}){const{error:s,success:n}=Es(),o=vu(t,e.path),l=e.path.split("/").pop()??e.path;async function u(h,m){try{await navigator.clipboard.writeText(h),n(`Copied ${m}.`)}catch(d){s(d instanceof Error?d.message:`Could not copy ${m}.`)}}return a.jsx(cj,{label:`Copy path for ${e.path}`,trigger:a.jsxs(a.Fragment,{children:[a.jsx(bC,{className:"size-3.5"}),a.jsx("span",{className:"sr-only",children:"More actions"})]}),children:h=>a.jsxs(a.Fragment,{children:[a.jsx(Wc,{icon:a.jsx(yC,{className:"size-3.5"}),onSelect:()=>{h(),u(l,"file name")},children:"Copy file name"}),a.jsx(Wc,{icon:a.jsx(Nh,{className:"size-3.5"}),onSelect:()=>{h(),u(e.path,"relative path")},children:"Copy relative path"}),a.jsx(Wc,{icon:a.jsx(Nh,{className:"size-3.5"}),onSelect:()=>{h(),u(o,"absolute path")},children:"Copy absolute path"})]})})}function cj({children:e,label:t,trigger:s}){const[n,o]=y.useState(!1),[l,u]=y.useState({right:0,top:0}),h=y.useRef(null),m=y.useRef(null);function d(){o(!1)}function p(){const g=h.current?.getBoundingClientRect();g&&u({top:g.bottom+6,right:window.innerWidth-g.right}),o(x=>!x)}return y.useEffect(()=>{if(!n)return;function g(_){const S=_.target;h.current?.contains(S)||m.current?.contains(S)||d()}function x(_){_.key==="Escape"&&d()}return document.addEventListener("mousedown",g),document.addEventListener("keydown",x),window.addEventListener("scroll",d,!0),()=>{document.removeEventListener("mousedown",g),document.removeEventListener("keydown",x),window.removeEventListener("scroll",d,!0)}},[n]),a.jsxs(a.Fragment,{children:[a.jsx("button",{"aria-label":t,className:ae("flex h-7 min-w-7 shrink-0 items-center justify-center gap-1 rounded-md px-1.5 text-muted-foreground opacity-0 transition-all duration-150 hover:bg-muted hover:text-foreground group-hover:opacity-100",n&&"bg-muted text-foreground opacity-100"),onClick:p,ref:h,title:t,type:"button",children:s}),n?xu.createPortal(a.jsx("div",{className:"fixed z-50 w-56 overflow-hidden rounded-md border border-border bg-card p-1 shadow-md",ref:m,style:{top:l.top,right:l.right},children:e(d)}),document.body):null]})}function Wc({children:e,icon:t,onSelect:s}){return a.jsxs("button",{className:"flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-left text-xs text-foreground transition-colors hover:bg-muted",onClick:s,type:"button",children:[a.jsx("span",{className:"text-muted-foreground",children:t}),a.jsx("span",{className:"min-w-0 flex-1 truncate",children:e})]})}function $K(){const[e,t]=y.useState(!1),[s,n]=y.useState(!1),[o,l]=y.useState(!0);function u(){l(!0),f6().then(h=>{t(h.configured),n(h.deviceFlowAvailable)}).catch(()=>{t(!1),n(!1)}).finally(()=>l(!1))}return y.useEffect(()=>{u()},[]),{configured:e,deviceFlowAvailable:s,loading:o,refresh:u}}const a0=30;function HK(e="open"){const[t,s]=y.useState([]),[n,o]=y.useState(!0),[l,u]=y.useState(!1),[h,m]=y.useState(!1),[d,p]=y.useState(1),[g,x]=y.useState(null),[_,S]=y.useState(null),[w,C]=y.useState(null),[N,j]=y.useState(""),[E,A]=y.useState(!1),[O,P]=y.useState(null);y.useEffect(()=>{let z=!0;return o(!0),x(null),p(1),Dp(e,1).then(L=>{z&&(s(L),m(L.length===a0),L.length>0&&!L.some(I=>I.number===_)&&S(L[0]?.number??null))}).catch(L=>{z&&x(L instanceof Error?L.message:String(L))}).finally(()=>{z&&o(!1)}),()=>{z=!1}},[e]),y.useEffect(()=>{if(!_){C(null);return}let z=!0;return b6(_).then(L=>{z&&C(L)}).catch(()=>{}),()=>{z=!1}},[_]),y.useEffect(()=>{if(!_){j("");return}let z=!0;return A(!0),P(null),x6(_).then(L=>{z&&j(L)}).catch(L=>{z&&P(L instanceof Error?L.message:String(L))}).finally(()=>{z&&A(!1)}),()=>{z=!1}},[_]);function D(){if(l||!h)return;const z=d+1;u(!0),Dp(e,z).then(L=>{s(I=>{const $=new Set(I.map(U=>U.number));return[...I,...L.filter(U=>!$.has(U.number))]}),m(L.length===a0),p(z)}).catch(L=>x(L instanceof Error?L.message:String(L))).finally(()=>u(!1))}function T(){let z=!0;return o(!0),x(null),p(1),Dp(e,1).then(L=>{z&&(s(L),m(L.length===a0))}).catch(L=>{z&&x(L instanceof Error?L.message:String(L))}).finally(()=>{z&&o(!1)}),()=>{z=!1}}return{prs:t,loading:n,loadingMore:l,hasMore:h,error:g,selectedNumber:_,setSelectedNumber:S,selectedPR:w,diff:N,diffLoading:E,diffError:O,loadMore:D,refresh:T}}const o0=30;function UK(e="open"){const[t,s]=y.useState([]),[n,o]=y.useState(!0),[l,u]=y.useState(!1),[h,m]=y.useState(!1),[d,p]=y.useState(1),[g,x]=y.useState(null),[_,S]=y.useState(null),[w,C]=y.useState(null),[N,j]=y.useState([]),[E,A]=y.useState(!1),[O,P]=y.useState(null),[D,T]=y.useState(!1);y.useEffect(()=>{let $=!0;return o(!0),x(null),p(1),Op(e,1).then(U=>{$&&(s(U),m(U.length===o0),U.length>0&&!U.some(W=>W.number===_)&&S(U[0]?.number??null))}).catch(U=>{$&&x(U instanceof Error?U.message:String(U))}).finally(()=>{$&&o(!1)}),()=>{$=!1}},[e]),y.useEffect(()=>{if(!_){C(null),j([]);return}let $=!0;return A(!0),Promise.all([y6(_),S6(_)]).then(([U,W])=>{$&&(C(U),j(W))}).catch(()=>{}).finally(()=>{$&&A(!1)}),()=>{$=!1}},[_]);async function z($){if(_){T(!0),P(null);try{const U=await w6(_,$);j(W=>[...W,U])}catch(U){P(U instanceof Error?U.message:String(U))}finally{T(!1)}}}function L(){if(l||!h)return;const $=d+1;u(!0),Op(e,$).then(U=>{s(W=>{const G=new Set(W.map(B=>B.number));return[...W,...U.filter(B=>!G.has(B.number))]}),m(U.length===o0),p($)}).catch(U=>x(U instanceof Error?U.message:String(U))).finally(()=>u(!1))}function I(){let $=!0;return o(!0),p(1),Op(e,1).then(U=>{$&&(s(U),m(U.length===o0))}).catch(()=>{}).finally(()=>{$&&o(!1)}),()=>{$=!1}}return{issues:t,loading:n,loadingMore:l,hasMore:h,error:g,selectedNumber:_,setSelectedNumber:S,selectedIssue:w,comments:N,commentsLoading:E,commentError:O,submitting:D,addComment:z,loadMore:L,refresh:I}}function uj({className:e}){return a.jsx("svg",{className:ae("size-3.5",e),viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":!0,children:a.jsx("path",{d:"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"})})}function FK({deviceFlowAvailable:e,onSaved:t}){const[s,n]=y.useState(e?"choose":"pat");return s==="device-pending"?a.jsx(qK,{onSuccess:t,onCancel:()=>n("choose")}):s==="pat"?a.jsx(VK,{onSaved:t,onBack:e?()=>n("choose"):void 0}):a.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-6 p-8",children:[a.jsxs("div",{className:"flex flex-col items-center gap-3 text-center",children:[a.jsx("div",{className:"flex size-12 items-center justify-center rounded-xl bg-muted",children:a.jsx(By,{className:"size-6 text-muted-foreground"})}),a.jsxs("div",{children:[a.jsx("h2",{className:"text-base font-semibold",children:"Connect GitHub"}),a.jsx("p",{className:"mt-1 max-w-sm text-[13px] text-muted-foreground",children:"Authorize NoMoreIDE to read pull requests, issues, and CI status for your repositories."})]})]}),a.jsxs("div",{className:"flex w-full max-w-xs flex-col gap-2",children:[a.jsxs(Q,{className:"w-full",onClick:()=>n("device-pending"),type:"button",children:[a.jsx(By,{className:"mr-2 size-4"}),"Authorize with GitHub"]}),a.jsx("button",{className:"text-[12px] text-muted-foreground underline-offset-2 hover:text-foreground hover:underline",onClick:()=>n("pat"),type:"button",children:"Use a Personal Access Token instead"})]})]})}function qK({onSuccess:e,onCancel:t}){const[s,n]=y.useState(null),[o,l]=y.useState(null),[u,h]=y.useState(!0),[m,d]=y.useState(!1),p=y.useRef(null),g=y.useRef(5),x=y.useRef(!1);y.useEffect(()=>{let C=!0;return m6().then(N=>{if(!C)return;n(N),g.current=N.interval,h(!1);const j=N.verification_uri_complete||N.verification_uri;j&&window.open(j,"_blank","noopener,noreferrer"),_(N.device_code,N.interval),setTimeout(()=>{x.current=!0},N.expires_in*1e3)}).catch(N=>{C&&(l(N instanceof Error?N.message:String(N)),h(!1))}),()=>{C=!1,p.current&&clearTimeout(p.current)}},[]);function _(C,N){p.current=setTimeout(()=>{S(C,N)},N*1e3)}async function S(C,N){if(x.current){l("Authorization expired. Please try again.");return}try{const j=await p6(C);if(j.done){e();return}const E=j.slowDown?N+5:N;g.current=E,_(C,E)}catch{_(C,g.current)}}function w(){s&&navigator.clipboard.writeText(s.user_code).then(()=>{d(!0),setTimeout(()=>d(!1),2e3)})}return u?a.jsx("div",{className:"flex h-full items-center justify-center",children:a.jsxs("div",{className:"flex flex-col items-center gap-3 text-center",children:[a.jsx(Iy,{className:"size-6 animate-spin text-muted-foreground"}),a.jsx("p",{className:"text-[13px] text-muted-foreground",children:"Requesting authorization…"})]})}):o?a.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-4 p-8",children:[a.jsx(Ve,{variant:"destructive",children:o}),a.jsx(Q,{onClick:t,variant:"outline",children:"Go back"})]}):a.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-6 p-8",children:[a.jsxs("div",{className:"flex flex-col items-center gap-3 text-center",children:[a.jsx("div",{className:"flex size-12 items-center justify-center rounded-xl bg-emerald-100 dark:bg-emerald-500/15",children:a.jsx(zb,{className:"size-6 text-emerald-600 dark:text-emerald-400"})}),a.jsxs("div",{children:[a.jsx("h2",{className:"text-base font-semibold",children:"Authorize on GitHub"}),a.jsxs("p",{className:"mt-1 max-w-sm text-[13px] text-muted-foreground",children:["A GitHub page just opened in a new tab. Enter the code below and click"," ",a.jsx("strong",{children:"Authorize"}),"."]})]})]}),a.jsxs("div",{className:"flex flex-col items-center gap-2",children:[a.jsx("div",{className:"flex cursor-pointer select-all items-center gap-3 rounded-xl border-2 border-border bg-muted px-6 py-4 font-mono text-2xl font-bold tracking-[0.3em] transition-colors hover:border-ring",onClick:w,title:"Click to copy",children:s?.user_code}),a.jsx("button",{className:"text-[11px] text-muted-foreground transition-colors hover:text-foreground",onClick:w,type:"button",children:m?"Copied!":"Click code to copy"})]}),a.jsxs("div",{className:"flex flex-col items-center gap-2",children:[a.jsxs("div",{className:"flex items-center gap-2 text-[12px] text-muted-foreground",children:[a.jsx(Iy,{className:"size-3.5 animate-spin"}),"Waiting for authorization…"]}),a.jsx("a",{className:"text-[12px] text-muted-foreground underline-offset-2 hover:text-foreground hover:underline",href:s?.verification_uri_complete||s?.verification_uri,rel:"noopener noreferrer",target:"_blank",children:"Open GitHub again"}),a.jsx("button",{className:"text-[12px] text-muted-foreground underline-offset-2 hover:text-foreground hover:underline",onClick:t,type:"button",children:"Cancel"})]})]})}function VK({onSaved:e,onBack:t}){const[s,n]=y.useState(""),[o,l]=y.useState(!1),[u,h]=y.useState(null);async function m(d){d.preventDefault();const p=s.trim();if(p){l(!0),h(null);try{await g6("github.com",p),e()}catch(g){h(g instanceof Error?g.message:String(g))}finally{l(!1)}}}return a.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-6 p-8",children:[a.jsxs("div",{className:"flex flex-col items-center gap-3 text-center",children:[a.jsx("div",{className:"flex size-12 items-center justify-center rounded-xl bg-muted",children:a.jsx(kC,{className:"size-6 text-muted-foreground"})}),a.jsxs("div",{children:[a.jsx("h2",{className:"text-base font-semibold",children:"Personal Access Token"}),a.jsxs("p",{className:"mt-1 max-w-sm text-[13px] text-muted-foreground",children:["Create a token at"," ",a.jsx("a",{className:"underline underline-offset-2 hover:text-foreground",href:"https://github.com/settings/tokens/new?scopes=repo,workflow",rel:"noopener noreferrer",target:"_blank",children:"github.com/settings/tokens"})," ","with ",a.jsx("code",{className:"rounded bg-muted px-1 py-px text-[11px]",children:"repo"})," and"," ",a.jsx("code",{className:"rounded bg-muted px-1 py-px text-[11px]",children:"workflow"})," scopes."]})]})]}),a.jsxs("form",{className:"flex w-full max-w-sm flex-col gap-3",onSubmit:d=>{m(d)},children:[a.jsx("input",{autoComplete:"off",className:"w-full rounded-md border border-border bg-background px-3 py-2 font-mono text-[13px] placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring",onChange:d=>n(d.target.value),placeholder:"ghp_...",spellCheck:!1,type:"password",value:s}),u?a.jsx(Ve,{variant:"destructive",children:u}):null,a.jsx(Q,{disabled:!s.trim()||o,type:"submit",children:o?"Saving…":"Save token"}),t?a.jsx("button",{className:"text-[12px] text-muted-foreground underline-offset-2 hover:text-foreground hover:underline",onClick:t,type:"button",children:"← Back"}):null]})]})}function Wx({hasMore:e,loading:t,onLoadMore:s}){return e?a.jsx("div",{className:"p-2",children:a.jsxs("button",{className:"flex w-full items-center justify-center gap-1.5 rounded-md border border-border py-1.5 text-[11px] font-medium text-muted-foreground transition-colors hover:bg-muted/60 hover:text-foreground disabled:opacity-60",disabled:t,onClick:s,type:"button",children:[t?a.jsx(ht,{className:"size-3 animate-spin"}):null,t?"Loading…":"Load more"]})}):null}function GK({prs:e,loading:t,loadingMore:s,hasMore:n,error:o,selectedNumber:l,onSelect:u,onLoadMore:h}){return t&&e.length===0?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"Loading pull requests…"}):o?a.jsx("div",{className:"p-4 text-[12px] text-red-500",children:o}):e.length===0?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"No pull requests found."}):a.jsxs(a.Fragment,{children:[a.jsx("ul",{className:"divide-y divide-border",children:e.map(m=>a.jsx("li",{children:a.jsxs("button",{className:`flex w-full items-start gap-3 px-3 py-2.5 text-left transition-colors hover:bg-muted/60 ${l===m.number?"bg-muted":""}`,onClick:()=>u(m.number),type:"button",children:[a.jsx("span",{className:"mt-0.5 shrink-0",children:a.jsx(WK,{pr:m})}),a.jsxs("span",{className:"min-w-0 flex-1",children:[a.jsx("span",{className:"block truncate text-[13px] font-medium",children:m.title}),a.jsxs("span",{className:"block text-[11px] text-muted-foreground",children:["#",m.number," · ",m.base.ref," ← ",m.head.ref," · ",m.user.login]})]}),m.draft?a.jsx("span",{className:"shrink-0 rounded border border-border px-1.5 py-px text-[10px] text-muted-foreground",children:"Draft"}):null]})},m.number))}),a.jsx(Wx,{hasMore:n,loading:s,onLoadMore:h})]})}function WK({pr:e}){return e.state==="merged"?a.jsx(Ib,{className:"size-4 text-purple-500"}):e.state==="closed"?a.jsx(tM,{className:"size-4 text-red-500"}):a.jsx(rM,{className:"size-4 text-emerald-500"})}function KK({pr:e,diff:t,diffLoading:s,diffError:n,onMerged:o}){const[l,u]=y.useState("overview"),[h,m]=y.useState(!1),[d,p]=y.useState(null);if(!e)return a.jsx("div",{className:"flex h-full items-center justify-center text-[12px] text-muted-foreground",children:"Select a pull request"});const g=e.state==="open"&&!e.draft;async function x(){if(!(!e||h)&&window.confirm(`Squash & merge PR #${e.number} "${e.title}" into ${e.base.ref}?`)){m(!0),p(null);try{await _6(e.number,{method:"squash"}),o?.()}catch(S){p(S instanceof Error?S.message:String(S))}finally{m(!1)}}}const _=S=>`rounded px-2 py-0.5 text-[11px] font-medium transition-colors ${S?"bg-foreground text-background":"text-muted-foreground hover:text-foreground"}`;return a.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[a.jsxs("div",{className:"flex shrink-0 items-center gap-2 border-b border-border px-3 py-2",children:[a.jsx("span",{className:"min-w-0 flex-1 truncate text-[13px] font-semibold",children:e.title}),a.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[a.jsx("button",{className:_(l==="overview"),onClick:()=>u("overview"),type:"button",children:"Overview"}),a.jsx("button",{className:_(l==="diff"),onClick:()=>u("diff"),type:"button",children:"Diff"})]}),g?a.jsxs("button",{className:"flex shrink-0 items-center gap-1 rounded bg-emerald-600 px-2 py-0.5 text-[11px] font-medium text-white transition-colors hover:bg-emerald-700 disabled:opacity-60",disabled:h,onClick:()=>{x()},title:"Squash & merge this pull request",type:"button",children:[h?a.jsx(ht,{className:"size-3 animate-spin"}):a.jsx(Ib,{className:"size-3"}),"Squash & merge"]}):null,a.jsx("a",{"aria-label":"Open on GitHub",className:"shrink-0 rounded p-1 text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",href:e.html_url,rel:"noopener noreferrer",target:"_blank",title:"Open on GitHub",children:a.jsx(la,{className:"size-3.5"})})]}),d?a.jsx("div",{className:"shrink-0 border-b border-border bg-red-500/10 px-3 py-1.5 text-[11px] text-red-500",children:d}):null,l==="overview"?a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:a.jsxs("div",{className:"space-y-4 p-4",children:[a.jsxs("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-2 text-[12px]",children:[a.jsx(YK,{pr:e}),a.jsxs("span",{className:"inline-flex items-center gap-1 rounded-md border border-border bg-muted/40 px-2 py-1 font-mono text-[11px]",children:[a.jsx(pn,{className:"size-3 shrink-0 text-muted-foreground"}),e.base.ref,a.jsx(lu,{className:"size-3 shrink-0 text-muted-foreground"}),e.head.ref]}),a.jsxs("span",{className:"inline-flex items-center gap-1 text-muted-foreground",children:[a.jsx(AR,{className:"size-3 shrink-0"}),e.user.login]}),a.jsxs("span",{className:"inline-flex items-center gap-1 text-muted-foreground",children:[a.jsx(XA,{className:"size-3 shrink-0"}),new Date(e.created_at).toLocaleDateString()]})]}),e.body?a.jsx("div",{className:"whitespace-pre-wrap rounded-md border border-border bg-muted/30 p-3 font-mono text-[12px]",children:e.body}):a.jsx("p",{className:"text-[12px] text-muted-foreground italic",children:"No description provided."})]})}):a.jsx("div",{className:"relative min-h-0 min-w-0 flex-1",children:s?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"Loading diff…"}):n?a.jsx("div",{className:"p-4 text-[12px] text-red-500",children:n}):t?a.jsx(mf,{diff:t}):a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"No diff available."})})]})}function YK({pr:e}){const{label:t,cls:s}=e.state==="merged"?{label:"Merged",cls:"border-purple-300 bg-purple-100 text-purple-800 dark:border-purple-400/30 dark:bg-purple-500/15 dark:text-purple-300"}:e.state==="closed"?{label:"Closed",cls:"border-red-300 bg-red-100 text-red-800 dark:border-red-400/30 dark:bg-red-500/15 dark:text-red-300"}:e.draft?{label:"Draft",cls:"border-border bg-muted text-muted-foreground"}:{label:"Open",cls:"border-emerald-300 bg-emerald-100 text-emerald-800 dark:border-emerald-400/30 dark:bg-emerald-500/15 dark:text-emerald-300"};return a.jsxs("span",{className:`inline-flex items-center gap-1 rounded-full border px-2 py-0.5 text-[11px] font-medium ${s}`,children:[t==="Merged"?a.jsx(Ib,{className:"size-3"}):null,t]})}function XK({issues:e,loading:t,loadingMore:s,hasMore:n,error:o,selectedNumber:l,onSelect:u,onLoadMore:h}){return t&&e.length===0?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"Loading issues…"}):o?a.jsx("div",{className:"p-4 text-[12px] text-red-500",children:o}):e.length===0?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"No issues found."}):a.jsxs(a.Fragment,{children:[a.jsx("ul",{className:"divide-y divide-border",children:e.map(m=>a.jsx("li",{children:a.jsxs("button",{className:`flex w-full items-start gap-3 px-3 py-2.5 text-left transition-colors hover:bg-muted/60 ${l===m.number?"bg-muted":""}`,onClick:()=>u(m.number),type:"button",children:[a.jsx(d4,{className:`mt-0.5 size-4 shrink-0 ${m.state==="open"?"text-emerald-500":"text-red-500"}`}),a.jsxs("span",{className:"min-w-0 flex-1",children:[a.jsx("span",{className:"block truncate text-[13px] font-medium",children:m.title}),a.jsxs("span",{className:"block text-[11px] text-muted-foreground",children:["#",m.number," · ",m.user.login," · ",m.comments," comment",m.comments!==1?"s":""]})]}),m.labels.length>0?a.jsx("span",{className:"flex shrink-0 flex-wrap gap-1",children:m.labels.slice(0,3).map(d=>a.jsx("span",{className:"rounded-full px-1.5 py-px text-[10px] font-medium text-white",style:{backgroundColor:`#${d.color}`},children:d.name},d.name))}):null]})},m.number))}),a.jsx(Wx,{hasMore:n,loading:s,onLoadMore:h})]})}function ZK({issue:e,comments:t,commentsLoading:s,commentError:n,submitting:o,onAddComment:l}){const[u,h]=y.useState("");if(!e)return a.jsx("div",{className:"flex h-full items-center justify-center text-[12px] text-muted-foreground",children:"Select an issue"});async function m(d){d.preventDefault();const p=u.trim();p&&(await l(p),h(""))}return a.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[a.jsxs("div",{className:"flex shrink-0 items-center gap-2 border-b border-border px-3 py-2",children:[a.jsx("span",{className:"min-w-0 flex-1 truncate text-[13px] font-semibold",children:e.title}),a.jsx("a",{"aria-label":"Open on GitHub",className:"shrink-0 rounded p-1 text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",href:e.html_url,rel:"noopener noreferrer",target:"_blank",children:a.jsx(la,{className:"size-3.5"})})]}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:a.jsxs("div",{className:"space-y-3 p-4",children:[a.jsxs("div",{className:"flex flex-wrap gap-2 text-[12px]",children:[a.jsxs("span",{className:"rounded border border-border bg-muted/50 px-2 py-0.5 text-[11px]",children:[a.jsx("span",{className:"text-muted-foreground",children:"Author: "}),a.jsx("span",{className:"font-medium",children:e.user.login})]}),a.jsxs("span",{className:"rounded border border-border bg-muted/50 px-2 py-0.5 text-[11px]",children:[a.jsx("span",{className:"text-muted-foreground",children:"Opened: "}),a.jsx("span",{className:"font-medium",children:new Date(e.created_at).toLocaleDateString()})]}),e.labels.map(d=>a.jsx("span",{className:"rounded-full px-2 py-0.5 text-[10px] font-medium text-white",style:{backgroundColor:`#${d.color}`},children:d.name},d.name))]}),e.body?a.jsx("div",{className:"whitespace-pre-wrap rounded-md border border-border bg-muted/30 p-3 font-mono text-[12px]",children:e.body}):a.jsx("p",{className:"text-[12px] text-muted-foreground italic",children:"No description provided."}),s?a.jsx("p",{className:"text-[12px] text-muted-foreground",children:"Loading comments…"}):a.jsx("div",{className:"space-y-2",children:t.map(d=>a.jsxs("div",{className:"rounded-md border border-border bg-muted/20 p-3",children:[a.jsxs("div",{className:"mb-1 flex items-baseline gap-2",children:[a.jsx("span",{className:"text-[11px] font-semibold",children:d.user.login}),a.jsx("span",{className:"text-[10px] text-muted-foreground",children:new Date(d.created_at).toLocaleDateString()})]}),a.jsx("p",{className:"whitespace-pre-wrap font-mono text-[12px]",children:d.body})]},d.id))})]})}),a.jsx("div",{className:"shrink-0 border-t border-border p-3",children:a.jsxs("form",{className:"flex flex-col gap-2",onSubmit:d=>{m(d)},children:[a.jsx("textarea",{className:"w-full resize-none rounded-md border border-border bg-background px-3 py-2 font-mono text-[12px] placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring",onChange:d=>h(d.target.value),placeholder:"Add a comment…",rows:3,value:u}),n?a.jsx(Ve,{variant:"destructive",children:n}):null,a.jsx(Q,{className:"self-end",disabled:!u.trim()||o,size:"sm",type:"submit",children:o?"Posting…":"Comment"})]})})]})}const Jk=30;function QK(e){const[t,s]=y.useState([]),[n,o]=y.useState(null),[l,u]=y.useState([]),[h,m]=y.useState(!0),[d,p]=y.useState(!1),[g,x]=y.useState(!1),[_,S]=y.useState(1),[w,C]=y.useState(!1),[N,j]=y.useState(null),[E,A]=y.useState(null);function O(){let D=!0;return m(!0),j(null),S(1),l0(e,1).then(T=>{D&&(s(T),x(T.length===Jk))}).catch(T=>{D&&j(T instanceof Error?T.message:String(T))}).finally(()=>{D&&m(!1)}),()=>{D=!1}}function P(){if(d||!g)return;const D=_+1;p(!0),l0(e,D).then(T=>{s(z=>{const L=new Set(z.map(I=>I.id));return[...z,...T.filter(I=>!L.has(I.id))]}),x(T.length===Jk),S(D)}).catch(T=>j(T instanceof Error?T.message:String(T))).finally(()=>p(!1))}return y.useEffect(O,[e]),y.useEffect(()=>{o(D=>D&&t.some(T=>T.id===D)?D:t[0]?.id??null)},[t]),y.useEffect(()=>{if(!n){u([]);return}let D=!0;return C(!0),A(null),C6(n).then(T=>{D&&u(T)}).catch(T=>{D&&A(T instanceof Error?T.message:String(T))}).finally(()=>{D&&C(!1)}),()=>{D=!1}},[n]),{runs:t,selectedRunId:n,jobs:l,loading:h,loadingMore:d,hasMore:g,jobsLoading:w,error:N,jobsError:E,loadMore:P,refresh:O,setSelectedRunId:o}}function JK(){const{runs:e,selectedRunId:t,jobs:s,loading:n,loadingMore:o,hasMore:l,jobsLoading:u,error:h,jobsError:m,loadMore:d,refresh:p,setSelectedRunId:g}=QK(),x=e.find(_=>_.id===t)??null;return a.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-b border-border px-3 py-1.5",children:[a.jsx("h2",{className:"text-[13px] font-semibold",children:"Workflow Runs"}),a.jsxs(Q,{disabled:n,onClick:()=>{p()},size:"sm",type:"button",variant:"outline",children:[a.jsx(cu,{className:`mr-1 size-3.5 ${n?"animate-spin":""}`}),"Refresh"]})]}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:h?a.jsx("div",{className:"p-4 text-[12px] text-red-500",children:h}):n&&e.length===0?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"Loading workflow runs…"}):e.length===0?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"No workflow runs found."}):a.jsxs("div",{className:"grid h-full min-h-0 grid-cols-[minmax(280px,380px)_minmax(0,1fr)] divide-x divide-border",children:[a.jsxs("div",{className:"min-h-0 overflow-auto",children:[a.jsx("ul",{className:"divide-y divide-border",children:e.map(_=>a.jsx("li",{children:a.jsxs("button",{className:`flex w-full items-center gap-3 px-3 py-2.5 text-left transition-colors hover:bg-muted/60 ${_.id===t?"bg-muted/70":""}`,onClick:()=>g(_.id),type:"button",children:[a.jsx(eY,{run:_}),a.jsxs("span",{className:"min-w-0 flex-1",children:[a.jsx("span",{className:"block truncate text-[13px] font-medium",children:_.name}),a.jsxs("span",{className:"block text-[11px] text-muted-foreground",children:["#",_.run_number," · ",_.head_branch," · ",_.event," ·"," ",new Date(_.created_at).toLocaleDateString()]})]}),a.jsx(tY,{run:_})]})},_.id))}),a.jsx(Wx,{hasMore:l,loading:o,onLoadMore:d})]}),a.jsx(sY,{error:m,jobs:s,loading:u,run:x})]})})]})}function eY({run:e}){return e.status==="in_progress"||e.status==="queued"?a.jsx(Ch,{className:"size-4 shrink-0 animate-pulse text-amber-400"}):e.conclusion==="success"?a.jsx(zb,{className:"size-4 shrink-0 text-emerald-500"}):e.conclusion==="failure"||e.conclusion==="timed_out"?a.jsx(mC,{className:"size-4 shrink-0 text-red-500"}):a.jsx(Ch,{className:"size-4 shrink-0 text-zinc-400"})}function tY({run:e}){const t=e.status==="completed"?e.conclusion??"completed":e.status,s=t==="success"?"border-emerald-200 bg-emerald-100 text-emerald-800 dark:border-emerald-400/30 dark:bg-emerald-500/15 dark:text-emerald-300":t==="failure"||t==="timed_out"?"border-red-200 bg-red-100 text-red-800 dark:border-red-400/30 dark:bg-red-500/15 dark:text-red-300":t==="in_progress"||t==="queued"?"border-amber-200 bg-amber-100 text-amber-800 dark:border-amber-400/30 dark:bg-amber-500/15 dark:text-amber-300":"border-border bg-muted/50 text-muted-foreground";return a.jsx("span",{className:`shrink-0 rounded border px-1.5 py-px text-[10px] font-medium ${s}`,children:t})}function sY({run:e,jobs:t,loading:s,error:n}){return e?a.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[a.jsxs("div",{className:"flex shrink-0 items-center gap-2 border-b border-border px-3 py-2",children:[a.jsxs("span",{className:"min-w-0 flex-1",children:[a.jsx("span",{className:"block truncate text-[13px] font-semibold",children:e.name}),a.jsxs("span",{className:"block text-[11px] text-muted-foreground",children:["Run #",e.run_number," · ",e.head_branch," · ",e.head_sha.slice(0,7)]})]}),a.jsx("a",{"aria-label":"Open run on GitHub",className:"shrink-0 rounded p-1 text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",href:e.html_url,rel:"noopener noreferrer",target:"_blank",title:"Open run on GitHub",children:a.jsx(la,{className:"size-3.5"})})]}),a.jsx("div",{className:"min-h-0 flex-1 overflow-auto",children:n?a.jsx("div",{className:"p-4 text-[12px] text-red-500",children:n}):s?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"Loading jobs…"}):t.length===0?a.jsx("div",{className:"p-4 text-[12px] text-muted-foreground",children:"No jobs found for this run."}):a.jsx("ul",{className:"divide-y divide-border",children:t.map(o=>a.jsxs("li",{className:"px-3 py-3",children:[a.jsxs("div",{className:"mb-2 flex items-center gap-2",children:[a.jsx(eC,{item:o}),a.jsx("span",{className:"min-w-0 flex-1 truncate text-[13px] font-medium",children:o.name}),a.jsx("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground",children:tC(o.started_at,o.completed_at)}),a.jsx("a",{"aria-label":`Open ${o.name} job on GitHub`,className:"shrink-0 rounded p-1 text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",href:o.html_url,rel:"noopener noreferrer",target:"_blank",title:"Open job on GitHub",children:a.jsx(la,{className:"size-3.5"})})]}),o.steps.length?a.jsx("ol",{className:"space-y-1.5 pl-6",children:o.steps.map(l=>a.jsxs("li",{className:"flex items-center gap-2 text-[12px]",children:[a.jsx(eC,{item:l}),a.jsx("span",{className:"min-w-0 flex-1 truncate",children:l.name}),a.jsx("span",{className:"shrink-0 font-mono text-[11px] text-muted-foreground",children:tC(l.started_at,l.completed_at)})]},`${o.id}:${l.number}`))}):a.jsx("p",{className:"pl-6 text-[12px] text-muted-foreground",children:"No step details available."})]},o.id))})})]}):a.jsx("div",{className:"flex h-full items-center justify-center text-[12px] text-muted-foreground",children:"Select a workflow run"})}function eC({item:e}){return e.status==="in_progress"||e.status==="queued"?a.jsx(Ch,{className:"size-3.5 shrink-0 animate-pulse text-amber-400"}):e.conclusion==="success"||e.conclusion==="skipped"?a.jsx(zb,{className:"size-3.5 shrink-0 text-emerald-500"}):e.conclusion==="failure"||e.conclusion==="timed_out"||e.conclusion==="cancelled"?a.jsx(mC,{className:"size-3.5 shrink-0 text-red-500"}):a.jsx(Ch,{className:"size-3.5 shrink-0 text-zinc-400"})}function tC(e,t){if(!e)return"-";const s=Date.parse(e),n=t?Date.parse(t):Date.now();if(!Number.isFinite(s)||!Number.isFinite(n)||n<s)return"-";const o=Math.max(0,Math.round((n-s)/1e3));if(o<60)return`${o}s`;const l=Math.floor(o/60),u=o%60;return u?`${l}m ${u}s`:`${l}m`}function nY(){const{configured:e,deviceFlowAvailable:t,loading:s,refresh:n}=$K();return s?a.jsx("div",{className:"flex h-full items-center justify-center text-[12px] text-muted-foreground",children:"Loading…"}):e?a.jsx(iY,{}):a.jsx(FK,{deviceFlowAvailable:t,onSaved:n})}function iY(){const[e,t]=y.useState("prs"),[s,n]=y.useState("open"),[o,l]=y.useState("open"),[u,h]=y.useState(!1),m=HK(s),d=UK(o),p=x=>`rounded px-2.5 py-1 text-[11px] font-medium transition-colors ${x?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`,g=x=>`rounded px-2 py-0.5 text-[10px] font-medium transition-colors ${x?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"}`;return a.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[a.jsxs("div",{className:"flex shrink-0 items-center gap-3 border-b border-border px-3 py-2",children:[a.jsxs("div",{className:"flex items-center gap-1.5 text-foreground",children:[a.jsx(uj,{className:"size-4"}),a.jsx("span",{className:"text-[12px] font-semibold tracking-tight",children:"GitHub"})]}),a.jsx("div",{className:"h-4 w-px bg-border"}),a.jsxs("div",{className:"flex items-center gap-0.5 rounded-md bg-muted/60 p-0.5",children:[a.jsx("button",{className:p(e==="prs"),onClick:()=>t("prs"),type:"button",children:"Pull Requests"}),a.jsx("button",{className:p(e==="issues"),onClick:()=>t("issues"),type:"button",children:"Issues"}),a.jsx("button",{className:p(e==="actions"),onClick:()=>t("actions"),type:"button",children:"Actions"})]}),e==="prs"?a.jsxs("div",{className:"ml-auto flex items-center gap-2",children:[a.jsxs("div",{className:"flex items-center gap-0.5 rounded-md bg-muted/60 p-0.5",children:[a.jsx("button",{className:g(s==="open"),onClick:()=>n("open"),type:"button",children:"Open"}),a.jsx("button",{className:g(s==="closed"),onClick:()=>n("closed"),type:"button",children:"Closed"})]}),a.jsx(Q,{onClick:()=>h(!0),size:"sm",type:"button",variant:"outline",children:"New PR"})]}):e==="issues"?a.jsxs("div",{className:"ml-auto flex items-center gap-0.5 rounded-md bg-muted/60 p-0.5",children:[a.jsx("button",{className:g(o==="open"),onClick:()=>l("open"),type:"button",children:"Open"}),a.jsx("button",{className:g(o==="closed"),onClick:()=>l("closed"),type:"button",children:"Closed"})]}):null]}),u?a.jsx(rY,{onCreated:()=>{h(!1),m.refresh()},onCancel:()=>h(!1)}):a.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:e==="prs"?a.jsxs("div",{className:"grid h-full min-h-0 grid-cols-2 divide-x divide-border",children:[a.jsx("div",{className:"min-h-0 overflow-auto",children:a.jsx(GK,{error:m.error,hasMore:m.hasMore,loading:m.loading,loadingMore:m.loadingMore,onLoadMore:m.loadMore,onSelect:m.setSelectedNumber,prs:m.prs,selectedNumber:m.selectedNumber})}),a.jsx("div",{className:"flex min-h-0 min-w-0 flex-col overflow-hidden",children:a.jsx(KK,{diff:m.diff,diffError:m.diffError,diffLoading:m.diffLoading,onMerged:()=>m.refresh(),pr:m.selectedPR})})]}):e==="issues"?a.jsxs("div",{className:"grid h-full min-h-0 grid-cols-2 divide-x divide-border",children:[a.jsx("div",{className:"min-h-0 overflow-auto",children:a.jsx(XK,{error:d.error,hasMore:d.hasMore,issues:d.issues,loading:d.loading,loadingMore:d.loadingMore,onLoadMore:d.loadMore,onSelect:d.setSelectedNumber,selectedNumber:d.selectedNumber})}),a.jsx("div",{className:"flex min-h-0 min-w-0 flex-col overflow-hidden",children:a.jsx(ZK,{commentError:d.commentError,comments:d.comments,commentsLoading:d.commentsLoading,issue:d.selectedIssue,onAddComment:d.addComment,submitting:d.submitting})})]}):a.jsx(JK,{})})]})}function rY({onCreated:e,onCancel:t}){const[s,n]=y.useState(""),[o,l]=y.useState(""),[u,h]=y.useState(""),[m,d]=y.useState("main"),[p,g]=y.useState(!1),[x,_]=y.useState(!1),[S,w]=y.useState(null);async function C(j){if(j.preventDefault(),!(!s.trim()||!u.trim()||!m.trim())){_(!0),w(null);try{await v6({title:s.trim(),body:o.trim()||void 0,head:u.trim(),base:m.trim(),draft:p}),e()}catch(E){w(E instanceof Error?E.message:String(E))}finally{_(!1)}}}const N="w-full rounded-md border border-border bg-background px-3 py-2 text-[13px] placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring";return a.jsxs("form",{className:"flex flex-col gap-3 overflow-auto p-4",onSubmit:j=>{C(j)},children:[a.jsx("h3",{className:"text-[13px] font-semibold",children:"New Pull Request"}),a.jsx("input",{className:N,onChange:j=>n(j.target.value),placeholder:"Title",required:!0,value:s}),a.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[a.jsx("input",{className:N,onChange:j=>h(j.target.value),placeholder:"Head branch",required:!0,value:u}),a.jsx("input",{className:N,onChange:j=>d(j.target.value),placeholder:"Base branch (e.g. main)",required:!0,value:m})]}),a.jsx("textarea",{className:`${N} resize-none`,onChange:j=>l(j.target.value),placeholder:"Description (optional)",rows:5,value:o}),a.jsxs("label",{className:"flex items-center gap-2 text-[12px]",children:[a.jsx("input",{checked:p,className:"size-3.5",onChange:j=>g(j.target.checked),type:"checkbox"}),"Create as draft"]}),S?a.jsx(Ve,{variant:"destructive",children:S}):null,a.jsxs("div",{className:"flex gap-2",children:[a.jsx(Q,{disabled:x,type:"submit",children:x?"Creating…":"Create PR"}),a.jsx(Q,{onClick:t,type:"button",variant:"outline",children:"Cancel"})]})]})}function sC(e,t,s){const n=e.trim(),o=n.toLowerCase(),l=[],u=/\breview|check|inspect|audit\b/.test(o),h=/\btest|verify|ci\b/.test(o),m=/\bcommit\b/.test(o)||/\bship|push|pr|pull request\b/.test(o),d=/\bpush|ship|pr|pull request\b/.test(o),p=/\bpr\b|pull request/.test(o),g=oY(o,s);return p&&l.push({kind:"action",id:"assert-pr-branch",title:"Check PR branch",op:"assert-pr-branch"}),u&&(l.push(lh("gate-review","Approve review","Review the current changes?")),l.push(jc("review","Review changes","Review the current git changes. Summarize risks, likely bugs, and anything that should change before committing.",ch(g,["skills","mcpServers"])))),h&&l.push(jc("verify","Run verification","Run the relevant tests or checks for this repository. If something fails, stop and explain the failure.",ch(g,["skills","mcpServers","plugins"]))),m&&(l.push(jc("commit-message","Generate commit message","Stage the appropriate changed files, inspect the staged diff briefly, and draft one conventional commit message. Do not commit.",ch(g,["skills"]))),l.push(lh("gate-commit","Approve commit","Commit with this generated message?")),l.push({kind:"action",id:"commit",title:"Commit with approved message",op:"commit"})),d&&(l.push(lh("gate-push","Approve push",p?"Push and continue toward a PR?":"Push this branch?")),l.push({kind:"action",id:"push",title:"Push branch",op:"push"})),p&&(l.push(jc("open-pr","Open PR","Open a pull request for the current branch. Use the latest commit subject as the title and summarize the commit list in the body.",ch(g,["mcpServers","plugins"]))),l.push({kind:"action",id:"checkout-default-and-pull",title:"Return to default branch",op:"checkout-default-and-pull"})),l.length||(l.push(lh("gate-start","Approve start","Run this workflow?")),l.push(jc("ai-step","AI step",n||"Complete this workflow step.",g))),{id:cY(dj(nC(o))||"custom-workflow",t),name:nC(o),description:n||"Custom AI-authored workflow.",builtin:!1,steps:lY(l)}}function aY(e){return["Create a NoMoreIDE workflow from this user intent:","",e.trim()||"(no intent provided)","","Return a workflow JSON object only. Use this shape:","{",' "id": "short-kebab-id",',' "name": "Human name",',' "description": "One sentence",',' "steps": [',' { kind: "gate", id: "gate-id", title: "Approve thing", message: "Question for the user?" },',' { kind: "agent", id: "ai-id", title: "AI task", prompt: "Clear instruction", capabilities: { skills: [], mcpServers: [], plugins: [], hooks: [] }, verify: "committed" },',' { kind: "action", id: "push", title: "Push", op: "push" },',' { kind: "action", id: "checkout-default-and-pull", title: "Return to default branch", op: "checkout-default-and-pull" }'," ]","}","","Use gates before mutating git or GitHub state. Prefer intent-level AI steps over direct MCP tool calls."].join(`
|
|
213
|
-
`)}function nC(e){const t=/\breview|check|inspect|audit\b/.test(e),s=/\bcommit\b|\bship|push|pr|pull request\b/.test(e),n=/\bpr\b|pull request/.test(e),o=/\btest|verify|ci\b/.test(e);return t&&s&&n?"Review, Commit & PR":o&&s&&n?"Verify, Commit & PR":t&&s?"Review & Commit":s&&n?"Commit & PR":s?"Commit workflow":t?"Review workflow":"Custom workflow"}function lh(e,t,s){return{kind:"gate",id:e,title:t,message:s}}function jc(e,t,s,n,o){return{kind:"agent",id:e,title:t,prompt:s,capabilities:Kx(n),verify:o}}function oY(e,t){return Kx({skills:t.skills.filter(s=>e.includes(s.toLowerCase())),mcpServers:t.mcpServers.filter(s=>e.includes(s.toLowerCase())),plugins:t.plugins.filter(s=>e.includes(s.toLowerCase())),hooks:t.hooks.filter(s=>e.includes(s.toLowerCase()))})??{}}function ch(e,t){const s={};for(const n of t){const o=e[n];o?.length&&(s[n]=o)}return Kx(s)}function Kx(e){if(!e)return;const t={};for(const s of["skills","mcpServers","plugins","hooks"]){const n=Array.from(new Set((e[s]??[]).filter(Boolean)));n.length&&(t[s]=n)}return Object.keys(t).length?t:void 0}function lY(e){const t=new Map;return e.map(s=>{const n=dj(s.id)||s.kind,o=t.get(n)??0;return t.set(n,o+1),o===0?{...s,id:n}:{...s,id:`${n}-${o+1}`}})}function cY(e,t){const s=new Set(t.map(l=>l.id));let n=e||"workflow",o=2;for(;s.has(n);)n=`${e}-${o}`,o++;return n}function dj(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}function uY(){const{run:e,start:t,resume:s,approve:n,skip:o,stop:l,dismiss:u}=fI(),[h,m]=y.useState([]),[d,p]=y.useState(null),[g,x]=y.useState(null),[_,S]=y.useState(null),[w,C]=y.useState(!0),[N,j]=y.useState(!1),[E,A]=y.useState(!0);y.useEffect(()=>{let z=!0;return C(!0),Promise.all([e8(),IC().catch(()=>null)]).then(([L,I])=>{z&&(m(L),p(I))}).catch(L=>{z&&S(L instanceof Error?L.message:String(L))}).finally(()=>{z&&C(!1)}),()=>{z=!1}},[]);function O(z){j(!0),t(z,E)}async function P(z){S(null);try{const L=await t8(z);m(L),x(null)}catch(L){S(L instanceof Error?L.message:String(L))}}async function D(z){if(!z.builtin&&window.confirm(`Delete workflow "${z.name}"?`)){S(null);try{m(await s8(z.id))}catch(L){S(L instanceof Error?L.message:String(L))}}}function T(z){x({...z,id:Yx(`${z.id}-copy`,h),name:`${z.name} copy`,builtin:!1,steps:z.steps.map((L,I)=>({...L,id:`${L.id}-${I+1}`}))})}return e&&N?a.jsx(_Y,{run:e,onApprove:n,onSkip:o,onStop:l,onBack:()=>j(!1),onResume:()=>{j(!0),s(E)},onRestart:()=>{j(!0),t(e.workflow,E)}}):g?a.jsx(fY,{agent:d?kY(d):null,existing:h,initial:g,onCancel:()=>x(null),onSave:z=>{P(z)}}):a.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-auto bg-card/85",children:[a.jsxs("div",{className:"border-b border-border px-4 py-3",children:[a.jsxs("div",{className:"flex items-start justify-between gap-3",children:[a.jsxs("div",{children:[a.jsxs("h2",{className:"flex items-center gap-1.5 text-[13px] font-semibold",children:[a.jsx(Tt,{className:"size-4"})," AI Workflows"]}),a.jsx("p",{className:"mt-0.5 text-[11px] text-muted-foreground",children:"One-click rituals that exceed the IDE — the agent does the work in the dock, pausing at each gate for your OK."})]}),a.jsxs(Q,{onClick:()=>x(NY(h)),size:"sm",type:"button",variant:"outline",children:[a.jsx(xs,{className:"size-3.5"})," New"]})]}),a.jsxs("label",{className:"mt-2 flex w-fit items-center gap-1.5 text-[11px] text-muted-foreground",children:[a.jsx("input",{checked:E,className:"size-3.5 accent-primary",onChange:z=>A(z.target.checked),type:"checkbox"}),"Run without step-by-step prompts",a.jsx("span",{className:"text-muted-foreground/60",children:"— gates still pause; risky shell still asks."})]})]}),_?a.jsx(Ve,{variant:"destructive",className:"m-4",children:_}):w?a.jsxs("div",{className:"flex flex-1 items-center justify-center text-[12px] text-muted-foreground",children:[a.jsx(ht,{className:"mr-2 size-4 animate-spin"})," Loading workflows…"]}):a.jsxs(a.Fragment,{children:[e?a.jsx(dY,{onClear:u,onView:()=>j(!0),run:e}):null,a.jsx("div",{className:"grid gap-3 p-4 sm:grid-cols-2 xl:grid-cols-3",children:h.map(z=>a.jsx(hY,{lastRun:e?.workflow.id===z.id?e:null,workflow:z,onDelete:()=>{D(z)},onDuplicate:()=>T(z),onEdit:()=>x(z),onRun:()=>O(z)},z.id))})]})]})}function dY({onClear:e,onView:t,run:s}){const n=s.outcome==="running";return a.jsx("section",{className:"mx-4 mt-4 rounded-md border border-border bg-background p-3 shadow-sm",children:a.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[a.jsxs("div",{className:"min-w-0",children:[a.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[a.jsx("span",{className:"text-[10px] font-semibold uppercase tracking-wide text-muted-foreground/70",children:n?"Workflow running":"Last workflow"}),a.jsx(pj,{outcome:s.outcome})]}),a.jsx("p",{className:"mt-1 truncate text-[13px] font-medium",children:s.workflow.name}),a.jsxs("p",{className:"mt-0.5 text-[11px] text-muted-foreground",children:[n?"Started":"Ran"," ",mj(s.startedAt)]})]}),a.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[a.jsxs(Q,{onClick:t,size:"sm",type:"button",children:[a.jsx(hl,{className:"size-3.5"})," View run"]}),n?null:a.jsxs(Q,{onClick:e,size:"sm",type:"button",variant:"outline",children:[a.jsx(Ns,{className:"size-3.5"})," Clear"]})]})]})})}function hY({lastRun:e,workflow:t,onDelete:s,onDuplicate:n,onEdit:o,onRun:l}){const[u,h]=y.useState(!1),m=t.steps.length;return a.jsxs("div",{className:"flex flex-col rounded-lg border border-border bg-background p-3.5 shadow-sm",children:[a.jsxs("div",{className:"flex items-start justify-between gap-2",children:[a.jsx("h3",{className:"text-[13px] font-semibold",children:t.name}),t.builtin?a.jsx("span",{className:"rounded-full border border-border px-1.5 py-px text-[9px] uppercase tracking-wide text-muted-foreground",children:"Template"}):null]}),t.description?a.jsx("p",{className:"mt-1 text-[11px] leading-snug text-muted-foreground",children:t.description}):null,e?a.jsxs("p",{className:"mt-2 flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[a.jsx(hl,{className:"size-3"}),e.outcome==="running"?"Running now":`Last run ${mj(e.startedAt)}`]}):null,a.jsxs("button",{"aria-expanded":u,className:"mt-2.5 flex w-full items-center gap-1.5 text-[11px] text-muted-foreground transition-colors hover:text-foreground",onClick:()=>h(d=>!d),type:"button",children:[a.jsx(pi,{className:ae("size-3 shrink-0 transition-transform",u?"rotate-90":""),"aria-hidden":!0}),a.jsxs("span",{children:[m," ",m===1?"step":"steps"]})]}),u?a.jsx("ol",{className:"mt-1.5 space-y-1",children:t.steps.map(d=>a.jsxs("li",{className:"flex items-center gap-1.5 text-[11px] text-muted-foreground",children:[a.jsx(TY,{kind:d.kind}),a.jsx("span",{className:"truncate",children:af(d)})]},d.id))}):null,a.jsxs(Q,{className:"mt-3 w-full",onClick:l,size:"sm",type:"button",children:[a.jsx(xr,{className:"size-3.5"})," Run"]}),a.jsxs("div",{className:"mt-2 grid grid-cols-3 gap-1.5",children:[a.jsxs(Q,{onClick:o,size:"sm",type:"button",variant:"outline",children:[a.jsx(ZM,{className:"size-3.5"})," Edit"]}),a.jsxs(Q,{onClick:n,size:"sm",type:"button",variant:"outline",children:[a.jsx(Nh,{className:"size-3.5"})," Copy"]}),a.jsxs(Q,{disabled:t.builtin,onClick:s,size:"sm",title:t.builtin?"Duplicate or edit to create your own version first":"Delete workflow",type:"button",variant:"outline",children:[a.jsx(ha,{className:"size-3.5"})," Delete"]})]})]})}function fY({agent:e,existing:t,initial:s,onCancel:n,onSave:o}){const[l,u]=y.useState(()=>structuredClone(s)),[h,m]=y.useState(s.description??""),[d,p]=y.useState(!1),g=CY(e),{sendToAgent:x}=At(),_=!l.id.trim()||!l.name.trim()||l.steps.length===0;function S(P,D){u(T=>({...T,steps:T.steps.map((z,L)=>L===P?D(z):z)}))}function w(P,D){u(T=>{const z=P+D;if(z<0||z>=T.steps.length)return T;const L=[...T.steps],[I]=L.splice(P,1);return L.splice(z,0,I),{...T,steps:L}})}function C(P){u(D=>({...D,steps:D.steps.filter((T,z)=>z!==P)}))}function N(P,D){u(T=>{const z=[...T.steps];return z.splice(P,0,pY(D,T.steps)),{...T,steps:z}})}function j(P=h){const D=sC(P,t,g);u(D)}function E(P){const D=sC(P,[],g);u(T=>({...T,steps:[...T.steps,...D.steps]}))}function A(){x({prompt:aY(h||l.description||l.name),source:{type:"workflow",label:"Workflow composer"},mode:"draft"})}function O(){const P=rl(l.id)||Yx(rl(l.name)||"workflow",t);o({...l,id:P,name:l.name.trim(),description:(h||l.description)?.trim()||void 0,builtin:!1,steps:l.steps.map(EY)})}return a.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden bg-card/85",children:[a.jsxs("div",{className:"flex items-center justify-between gap-3 border-b border-border px-4 py-3",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[a.jsx(Tt,{className:"size-4 shrink-0"}),a.jsxs("div",{className:"min-w-0",children:[a.jsx("input",{"aria-label":"Workflow name",className:"w-full bg-transparent text-[14px] font-semibold outline-none",onChange:P=>u(D=>({...D,name:P.target.value,id:rl(P.target.value)||D.id})),placeholder:"Name your workflow",value:l.name}),a.jsx("span",{className:"font-mono text-[10px] text-muted-foreground",children:l.id})]})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-1.5",children:[a.jsxs(Q,{onClick:()=>p(P=>!P),size:"sm",type:"button",variant:d?"default":"outline",children:[a.jsx(mi,{className:"size-3.5"})," AI compose"]}),a.jsxs(Q,{onClick:n,size:"sm",type:"button",variant:"outline",children:[a.jsx(lu,{className:"size-3.5"})," Back"]}),a.jsxs(Q,{disabled:_,onClick:O,size:"sm",type:"button",children:[a.jsx(Zn,{className:"size-3.5"})," Save"]})]})]}),d?a.jsx("section",{className:"shrink-0 border-b border-border bg-muted/20 p-4",children:a.jsxs("div",{className:"grid gap-3 xl:grid-cols-[minmax(0,1.1fr)_minmax(0,0.9fr)]",children:[a.jsxs("div",{className:"rounded-lg border border-border bg-background p-3 shadow-sm",children:[a.jsx(gr,{children:"Describe workflow"}),a.jsx("textarea",{className:"min-h-16 w-full resize-none bg-transparent text-[13px] leading-relaxed outline-none placeholder:text-muted-foreground",onChange:P=>m(P.target.value),placeholder:"Review my changes with code-review, ask before commit, push, then open a PR with GitHub...",value:h}),a.jsxs("div",{className:"mt-2 flex flex-wrap items-center gap-1.5",children:[a.jsxs(Q,{onClick:()=>j(),size:"sm",type:"button",children:[a.jsx(mi,{className:"size-3.5"})," Draft timeline"]}),a.jsxs(Q,{onClick:A,size:"sm",type:"button",variant:"outline",children:[a.jsx(EC,{className:"size-3.5"})," Ask AI"]}),["Commit safely","Review then push","Fix CI then PR","File issue from changes"].map(P=>a.jsx("button",{className:"rounded-md border border-border bg-muted/30 px-2 py-1 text-[11px] text-muted-foreground transition-colors hover:bg-muted hover:text-foreground",onClick:()=>{m(P),j(P)},type:"button",children:P},P))]})]}),a.jsxs("div",{className:"grid gap-3",children:[a.jsx(gY,{onAdd:E}),a.jsx(bY,{capabilities:g})]})]})}):null,a.jsx("main",{className:"min-h-0 flex-1 overflow-auto p-4",children:a.jsxs("div",{className:"mx-auto max-w-3xl",children:[a.jsx(iC,{onInsert:P=>N(0,P)}),l.steps.length?l.steps.map((P,D)=>a.jsxs(y.Fragment,{children:[a.jsxs("div",{className:"flex gap-4",children:[a.jsxs("div",{className:"relative flex w-9 shrink-0 justify-center pt-2",children:[a.jsx("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-1/2 w-px -translate-x-1/2 bg-border"}),a.jsx(mY,{index:D,kind:P.kind})]}),a.jsx("div",{className:"min-w-0 flex-1 pb-1",children:a.jsx(xY,{capabilities:g,index:D,isFirst:D===0,isLast:D===l.steps.length-1,onMove:w,onRemove:C,onUpdate:S,step:P})})]}),a.jsx(iC,{onInsert:T=>N(D+1,T)})]},`${P.kind}:${P.id}`)):a.jsx("div",{className:"ml-[3.25rem] flex h-24 items-center justify-center rounded-lg border border-dashed border-border text-[12px] text-muted-foreground",children:"Pick a step kind above to start building."})]})})]})}function iC({defaultOpen:e=!1,onInsert:t}){const[s,n]=y.useState(e),o=[{kind:"gate",label:"Gate"},{kind:"agent",label:"AI"},{kind:"action",label:"Auto"}];return a.jsxs("div",{className:"flex gap-4",children:[a.jsxs("div",{className:"relative flex w-9 shrink-0 justify-center",children:[a.jsx("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-1/2 w-px -translate-x-1/2 bg-border"}),a.jsx("button",{"aria-label":s?"Cancel adding step":"Add step here",className:ae("relative z-10 my-1.5 flex size-5 items-center justify-center rounded-full border bg-card text-muted-foreground transition-colors",s?"border-primary/50 text-primary":"border-border hover:border-primary/50 hover:text-primary"),onClick:()=>n(l=>!l),type:"button",children:s?a.jsx(Ns,{className:"size-3"}):a.jsx(xs,{className:"size-3"})})]}),a.jsx("div",{className:"flex-1 py-1",children:s?a.jsx("div",{className:"flex flex-wrap items-center gap-1.5",children:o.map(({kind:l,label:u})=>a.jsxs("button",{className:"flex items-center gap-1.5 rounded-md border border-border bg-background px-2 py-1 text-[11px] text-muted-foreground transition-colors hover:border-primary/40 hover:text-foreground",onClick:()=>{t(l),n(!1)},type:"button",children:[a.jsx(gj,{kind:l})," ",u]},l))}):null})]})}function mY({index:e,kind:t}){return a.jsxs("div",{className:"relative z-10 flex size-9 items-center justify-center rounded-full border border-border bg-card shadow-sm",children:[a.jsx("span",{className:"absolute -right-1 -top-1 flex size-4 items-center justify-center rounded-full border border-border bg-background font-mono text-[9px] text-muted-foreground",children:e+1}),a.jsx(gj,{kind:t})]})}function pY(e,t){const s=new Set(t.map(o=>o.id)),n=o=>{let l=o,u=2;for(;s.has(l);)l=`${o}-${u++}`;return l};return e==="gate"?{kind:"gate",id:n("gate"),title:"Approve step",message:"Continue?"}:e==="action"?{kind:"action",id:n("action"),title:"Commit with approved message",op:"commit"}:{kind:"agent",id:n("step"),title:"AI step",prompt:""}}function gY({onAdd:e}){const[t,s]=y.useState("");return a.jsxs("form",{className:"rounded-lg border border-dashed border-border bg-background/70 p-3",onSubmit:n=>{n.preventDefault();const o=t.trim();o&&(e(o),s(""))},children:[a.jsx(gr,{children:"Add a step"}),a.jsxs("div",{className:"flex gap-2",children:[a.jsx("input",{className:"min-w-0 flex-1 bg-transparent text-[12px] outline-none placeholder:text-muted-foreground",onChange:n=>s(n.target.value),placeholder:"ask before merge, run tests, open an issue...",value:t}),a.jsxs(Q,{size:"sm",type:"submit",variant:"outline",children:[a.jsx(xs,{className:"size-3.5"})," Add"]})]})]})}function bY({capabilities:e}){const t=[...e.skills.map(s=>`@skill:${s}`),...e.mcpServers.map(s=>`@mcp:${s}`),...e.plugins.map(s=>`@plugin:${s}`)].slice(0,18);return t.length?a.jsxs("div",{className:"rounded-lg border border-border bg-background p-3",children:[a.jsx(gr,{children:"Detected capabilities"}),a.jsx("div",{className:"flex max-h-20 flex-wrap gap-1.5 overflow-hidden",children:t.map(s=>a.jsx("span",{className:"rounded-md border border-border bg-muted/30 px-2 py-1 font-mono text-[11px] text-muted-foreground",children:s},s))})]}):null}function xY({capabilities:e,index:t,isFirst:s,isLast:n,onMove:o,onRemove:l,onUpdate:u,step:h}){return a.jsx("section",{className:"group rounded-lg border border-border bg-background p-3 shadow-sm",children:a.jsxs("div",{className:"flex items-start gap-3",children:[a.jsxs("div",{className:"min-w-0 flex-1",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(Rb,{kind:h.kind}),a.jsx("input",{className:"min-w-0 flex-1 bg-transparent text-[13px] font-semibold outline-none",onChange:m=>u(t,d=>({...d,title:m.target.value})),value:h.title})]}),h.kind==="gate"?a.jsx("textarea",{className:"mt-2 min-h-12 w-full resize-none bg-transparent text-[12px] leading-relaxed text-muted-foreground outline-none focus:text-foreground",onChange:m=>u(t,d=>d.kind==="gate"?{...d,message:m.target.value}:d),placeholder:"Question to ask before continuing…",value:h.message}):h.kind==="action"?a.jsxs("div",{className:"mt-2 space-y-1.5",children:[a.jsxs("select",{className:"w-full rounded-md border border-border bg-background px-2 py-1 text-[12px] outline-none",onChange:m=>{const d=m.target.value;u(t,p=>p.kind==="action"?{...p,op:d}:p)},value:h.op,children:[a.jsx("option",{value:"commit",children:"Commit staged changes"}),a.jsx("option",{value:"push",children:"Push branch"}),a.jsx("option",{value:"assert-pr-branch",children:"Check PR branch"}),a.jsx("option",{value:"checkout-default-and-pull",children:"Return to default branch"})]}),a.jsx("p",{className:"text-[11px] leading-relaxed text-muted-foreground",children:hj(h.op)})]}):a.jsxs(a.Fragment,{children:[a.jsx("textarea",{className:"mt-2 min-h-16 w-full resize-none bg-transparent text-[12px] leading-relaxed text-muted-foreground outline-none focus:text-foreground",onChange:m=>u(t,d=>d.kind==="agent"?{...d,prompt:m.target.value}:d),placeholder:"What should the agent do at this step?",value:h.prompt}),a.jsxs("label",{className:"mt-2 flex w-fit items-center gap-1.5 text-[11px] text-muted-foreground",children:[a.jsx("input",{checked:h.isolated??!1,className:"size-3.5 accent-primary",onChange:m=>u(t,d=>d.kind==="agent"?{...d,isolated:m.target.checked}:d),type:"checkbox"}),"Fresh session",a.jsx("span",{className:"text-muted-foreground/60",children:"— cheaper; this step won't see earlier steps' context."})]}),a.jsx(vY,{capabilities:e,selected:h.capabilities,onToggle:(m,d)=>u(t,p=>p.kind==="agent"?{...p,capabilities:jY(p.capabilities,m,d)}:p)})]})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-1 opacity-70 transition-opacity group-hover:opacity-100",children:[a.jsx(Q,{disabled:s,onClick:()=>o(t,-1),size:"sm",type:"button",variant:"ghost",children:"↑"}),a.jsx(Q,{disabled:n,onClick:()=>o(t,1),size:"sm",type:"button",variant:"ghost",children:"↓"}),a.jsx(Q,{onClick:()=>l(t),size:"sm",type:"button",variant:"ghost",children:a.jsx(ha,{className:"size-3.5"})})]})]})})}function vY({capabilities:e,onToggle:t,selected:s}){const n=[{key:"skills",label:"Skills",values:e.skills},{key:"mcpServers",label:"MCP",values:e.mcpServers},{key:"plugins",label:"Plugins",values:e.plugins},{key:"hooks",label:"Hooks",values:e.hooks}];return a.jsxs("div",{className:"space-y-2",children:[a.jsx(gr,{children:"Capabilities"}),n.map(o=>a.jsxs("div",{children:[a.jsx("div",{className:"mb-1 text-[10px] text-muted-foreground",children:o.label}),o.values.length?a.jsx("div",{className:"flex flex-wrap gap-1.5",children:o.values.map(l=>{const u=s?.[o.key]?.includes(l)??!1;return a.jsx("button",{className:ae("rounded-md border px-2 py-1 text-[11px] transition-colors",u?"border-primary/50 bg-primary/10 text-primary":"border-border bg-muted/30 text-muted-foreground hover:bg-muted"),onClick:()=>t(o.key,l),type:"button",children:l},l)})}):a.jsx("p",{className:"text-[11px] text-muted-foreground/70",children:"None detected."})]},o.key))]})}function _Y({run:e,onApprove:t,onSkip:s,onStop:n,onBack:o,onResume:l,onRestart:u}){const{sendToAgent:h}=At(),m=e.outcome!=="running",[d,p]=y.useState(e.index);y.useEffect(()=>{p(e.index)},[e.index]);const g=e.workflow.steps[d]??e.workflow.steps[e.index],x=e.statuses[d]??"pending",_=e.outputs[d],S=e.outputs[d-1],w=g?.kind==="gate"&&x==="waiting",C=x==="failed"||x==="blocked",N=x==="blocked"&&g?.kind==="action"&&g.op==="assert-pr-branch";return a.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden bg-card/85",children:[a.jsxs("div",{className:"flex items-center justify-between gap-2 border-b border-border px-4 py-3",children:[a.jsxs("div",{className:"min-w-0",children:[a.jsxs("h2",{className:"flex items-center gap-1.5 text-[13px] font-semibold",children:[a.jsx(Tt,{className:"size-4"})," ",e.workflow.name]}),a.jsxs("p",{className:"mt-0.5 flex items-center gap-1 text-[11px] text-muted-foreground",children:[a.jsx(hl,{className:"size-3"})," Watch the agent work in the dock below."]})]}),a.jsxs("div",{className:"flex items-center gap-1.5",children:[a.jsx(pj,{outcome:e.outcome}),a.jsxs(Q,{onClick:o,size:"sm",type:"button",variant:"outline",children:[a.jsx(lu,{className:"size-3.5"})," Workflows"]}),m?null:a.jsxs(Q,{onClick:n,size:"sm",type:"button",variant:"outline",children:[a.jsx(al,{className:"size-3.5"})," Stop"]})]})]}),a.jsxs("div",{className:"grid min-h-0 flex-1 overflow-hidden lg:grid-cols-[minmax(240px,320px)_minmax(0,1fr)]",children:[a.jsx("aside",{className:"min-h-0 overflow-auto border-b border-border bg-background/55 p-3 lg:border-b-0 lg:border-r",children:a.jsx("ol",{className:"space-y-1",children:e.workflow.steps.map((j,E)=>{const A=e.statuses[E],O=A==="running"||A==="waiting",P=E===d;return a.jsx("li",{children:a.jsxs("button",{className:ae("flex w-full items-center gap-2 rounded-md border px-2.5 py-2 text-left transition-colors",P?"border-primary/45 bg-primary/[0.06]":O?"border-primary/30 bg-primary/[0.03]":"border-transparent hover:border-border hover:bg-muted/40"),onClick:()=>p(E),type:"button",children:[a.jsx("span",{className:ae("flex size-7 shrink-0 items-center justify-center rounded-full border bg-card",A==="failed"?"border-destructive/50":A==="blocked"?"border-amber-500/50":O?"border-primary/50":A==="done"?"border-emerald-500/50":"border-border"),children:a.jsx(aC,{status:A,kind:j.kind})}),a.jsxs("span",{className:"min-w-0 flex-1",children:[a.jsx("span",{className:"block truncate text-[12px] font-medium",children:af(j)}),a.jsxs("span",{className:"mt-0.5 flex items-center gap-1.5",children:[a.jsx(Rb,{kind:j.kind}),a.jsx("span",{className:"text-[10px] uppercase tracking-wide text-muted-foreground/70",children:rC(A)})]})]}),a.jsx(pi,{className:ae("size-3.5 shrink-0 text-muted-foreground/50 transition-transform",P?"translate-x-0.5 text-primary":"")})]})},j.id)})})}),a.jsx("main",{className:"min-h-0 overflow-auto p-4",children:g?a.jsxs("section",{className:ae("min-h-full rounded-lg border bg-background p-4 shadow-sm",x==="failed"?"border-destructive/40 bg-destructive/[0.03]":x==="blocked"?"border-amber-500/40 bg-amber-500/[0.04]":x==="running"||x==="waiting"?"border-primary/40 bg-primary/[0.03]":"border-border"),children:[a.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2 border-b border-border pb-3",children:[a.jsxs("div",{className:"min-w-0",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(aC,{status:x,kind:g.kind}),a.jsx("h3",{className:"truncate text-[13px] font-semibold",children:af(g)})]}),a.jsxs("div",{className:"mt-1 flex items-center gap-1.5",children:[a.jsx(Rb,{kind:g.kind}),a.jsx("span",{className:"text-[10px] uppercase tracking-wide text-muted-foreground/70",children:rC(x)})]})]}),a.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[m&&C&&d===e.index&&!N?a.jsxs(Q,{"aria-label":"Resume the workflow from this step",onClick:l,size:"sm",type:"button",children:[a.jsx(xr,{className:"size-3.5"})," Resume workflow"]}):null,C?a.jsxs(Q,{"aria-label":"Debug this workflow step with AI",onClick:()=>h({prompt:YB({workflowName:e.workflow.name,step:g,status:x,error:e.error,previousOutput:S,output:_}),source:{type:"workflow-debug",label:g.title},mode:"send",label:`Debug workflow step: ${g.title}`,background:!0}),size:"sm",type:"button",variant:"outline",children:[a.jsx(Tt,{className:"size-3.5"})," Debug with AI"]}):null,m?null:a.jsxs(Q,{"aria-label":"Stop workflow run from step detail",onClick:n,size:"sm",type:"button",variant:"outline",children:[a.jsx(al,{className:"size-3.5"})," Stop after this step"]})]})]}),a.jsxs("div",{className:"py-3 text-[11px] leading-relaxed",children:[a.jsx(wY,{output:_,previousOutput:S,status:x,step:g}),w?a.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-1.5",children:[a.jsxs(Q,{onClick:t,size:"sm",type:"button",children:[a.jsx(Zn,{className:"size-3.5"})," Approve"]}),a.jsxs(Q,{onClick:s,size:"sm",type:"button",variant:"outline",children:[a.jsx(LC,{className:"size-3.5"})," Skip"]}),a.jsxs(Q,{onClick:n,size:"sm",type:"button",variant:"outline",children:[a.jsx(Ns,{className:"size-3.5"})," Stop"]})]}):null,x==="failed"&&e.error?a.jsx("p",{className:"mt-3 text-destructive",children:e.error}):null,N?a.jsx(yY,{error:e.error,onRestart:u,workflowName:e.workflow.name}):null,x==="blocked"&&e.error?a.jsx("p",{className:"mt-3 text-amber-700 dark:text-amber-400",children:e.error}):null]})]}):null})]})]})}function yY({error:e,onRestart:t,workflowName:s}){const{sendToAgent:n,setOpen:o,streaming:l,turns:u}=At(),[h,m]=y.useState(!1),[d,p]=y.useState(null),[g,x]=y.useState(!1),[_,S]=y.useState(null),[w,C]=y.useState(null),N=d===null?"":SY(u,d),j=nI(N),E=h&&!j&&l;function A(P){p(u.length),C(null),S(null),n({prompt:[XB({workflowName:s,error:e}),P?.trim()?P.trim():""].filter(Boolean).join(`
|
|
214
|
-
|
|
215
|
-
`),source:{type:"workflow-branch-recovery",label:s},mode:"send",label:`Recommend PR branch for ${s}`,background:!0}),m(!0)}async function O(){if(j){x(!0),C(null);try{await d6(j),S(j)}catch(P){C(P instanceof Error?P.message:String(P))}finally{x(!1)}}}return a.jsxs("div",{className:"mt-3 rounded-md border border-border bg-muted/35 p-3",children:[a.jsx(gr,{children:"Recover with AI"}),a.jsx("p",{className:"mb-2 text-[11px] text-muted-foreground",children:"Let the agent inspect the change and suggest a feature branch. You approve before anything changes."}),a.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[a.jsxs(Q,{onClick:()=>A(),size:"sm",type:"button",children:[a.jsx(Tt,{className:"size-3.5"})," Recommend branch with AI"]}),_?a.jsxs(Q,{onClick:t,size:"sm",type:"button",variant:"outline",children:[a.jsx(xr,{className:"size-3.5"})," Run again"]}):null]}),E?a.jsxs("p",{className:"mt-2 flex items-center gap-1 text-[11px] text-muted-foreground",children:[a.jsx(ht,{className:"size-3 animate-spin"})," Choosing a branch name in the background."]}):null,j?a.jsxs("div",{className:"mt-3 rounded-md border border-border bg-background p-2.5",children:[a.jsx(gr,{children:"Recommended branch"}),a.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[a.jsx("code",{className:"min-w-0 rounded bg-muted px-2 py-1 font-mono text-[12px] text-foreground",children:j}),a.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[a.jsxs(Q,{disabled:g||_===j,onClick:()=>{O()},size:"sm",type:"button",children:[g?a.jsx(ht,{className:"size-3.5 animate-spin"}):a.jsx(Zn,{className:"size-3.5"}),"Create this branch"]}),a.jsxs(Q,{disabled:g,onClick:()=>A("Recommend a different concise branch name. Keep the same output contract with `BRANCH_NAME: <branch-name>`."),size:"sm",type:"button",variant:"outline",children:[a.jsx(Tt,{className:"size-3.5"})," Ask for another"]})]})]})]}):N&&!E?a.jsxs("div",{className:"mt-3 rounded-md border border-border bg-background p-2.5",children:[a.jsx("p",{className:"text-[11px] text-muted-foreground",children:"The agent did not return a branch name the workflow could read."}),a.jsxs(Q,{className:"mt-2",onClick:()=>A("Return only a concise branch suggestion using this exact line: `BRANCH_NAME: <branch-name>`."),size:"sm",type:"button",variant:"outline",children:[a.jsx(Tt,{className:"size-3.5"})," Ask for another"]})]}):null,_?a.jsxs("p",{className:"mt-2 text-[11px] text-emerald-700 dark:text-emerald-400",children:["Branch created: ",a.jsx("code",{className:"font-mono",children:_}),". Run the workflow again from here."]}):null,w?a.jsx("p",{className:"mt-2 text-[11px] text-destructive",children:w}):null,N?a.jsxs(Q,{className:"mt-2",onClick:()=>o(!0),size:"sm",type:"button",variant:"outline",children:[a.jsx(EC,{className:"size-3.5"})," Open agent"]}):null]})}function SY(e,t){for(let s=e.length-1;s>=t;s--)if(e[s]?.role==="assistant")return e[s].text.trim();return""}function rC(e){return e==="running"?"Running":e==="waiting"?"Waiting":e==="done"?"Done":e==="blocked"?"Needs you":e==="failed"?"Failed":e==="skipped"?"Skipped":"Queued"}function wY({output:e,previousOutput:t,status:s,step:n}){if(n.kind==="gate"){const l=n.id==="gate-commit"?t?.trim():"";return a.jsxs("div",{children:[a.jsx("p",{className:"text-muted-foreground",children:n.message}),l?a.jsxs("div",{className:"mt-3",children:[a.jsx(gr,{children:"Generated commit message"}),a.jsx("div",{className:"whitespace-pre-wrap break-words rounded-md border border-border bg-muted/50 px-2.5 py-2 font-mono text-[11px] text-foreground",children:l})]}):null]})}if(n.kind==="action")return a.jsx("p",{className:"text-muted-foreground",children:hj(n.op)});const o=s==="done"||s==="failed"||s==="skipped";return e?a.jsxs("div",{children:[a.jsx(gr,{children:"Result"}),a.jsx("div",{className:"whitespace-pre-wrap break-words rounded-md bg-muted/50 px-2.5 py-2 font-mono text-[11px] text-foreground",children:e})]}):a.jsxs("div",{children:[a.jsx(gr,{children:o?"Result":"Task"}),o?a.jsx("p",{className:"italic text-muted-foreground",children:"No text reply — see the dock for what the agent did."}):a.jsxs(a.Fragment,{children:[a.jsx("p",{className:"text-muted-foreground",children:n.prompt}),s==="running"?a.jsxs("p",{className:"mt-1.5 flex items-center gap-1 text-muted-foreground/80",children:[a.jsx(ht,{className:"size-3 animate-spin"})," Working in the dock…"]}):null]})]})}function kY(e){return e.detected.name==="codex"?e.agents.codex:e.agents["claude-code"]??e}function CY(e){return e?{skills:Pc(e.skills.map(t=>t.name)),mcpServers:Pc(e.mcpServers.map(t=>t.name)),plugins:Pc(e.plugins.map(t=>t.name)),hooks:Pc(e.hooks.map(t=>t.matcher?`${t.event}: ${t.matcher}`:t.event))}:{skills:[],mcpServers:[],plugins:[],hooks:[]}}function NY(e){return{id:Yx("custom-workflow",e),name:"Custom workflow",description:"A user-built workflow.",builtin:!1,steps:[{kind:"gate",id:"gate-start",title:"Approve start",message:"Run this workflow?"}]}}function EY(e){const t=rl(e.id)||e.kind,s=e.title.trim()||af(e);if(e.kind==="gate")return{...e,id:t,title:s,message:e.message.trim()||"Continue?"};if(e.kind==="action")return{...e,id:t,title:s};const n=fj(e.capabilities);return{...e,id:t,title:s,prompt:e.prompt.trim()||"Complete this workflow step.",capabilities:n}}function hj(e){return e==="assert-pr-branch"?"Checks that PR workflows are running from a feature branch, not main or master.":e==="checkout-default-and-pull"?"Switches back to the default branch and pulls the latest changes.":e==="push"?"Pushes the current branch to its remote.":"Commits the staged changes with the approved generated message."}function fj(e){if(!e)return;const t={};for(const s of["skills","mcpServers","plugins","hooks"]){const n=Pc((e[s]??[]).map(o=>o.trim()).filter(Boolean));n.length&&(t[s]=n)}return Object.keys(t).length?t:void 0}function jY(e,t,s){const n=e?.[t]??[],o=n.includes(s)?n.filter(l=>l!==s):[...n,s];return fj({...e??{},[t]:o})}function Yx(e,t){const s=new Set(t.map(l=>l.id));let n=rl(e)||"workflow",o=2;for(;s.has(n);)n=`${rl(e)||"workflow"}-${o}`,o++;return n}function rl(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}function Pc(e){return Array.from(new Set(e.filter(Boolean)))}function gr({children:e}){return a.jsx("div",{className:"mb-1 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground/70",children:e})}function mj(e){return new Intl.DateTimeFormat(void 0,{hour:"numeric",minute:"2-digit"}).format(new Date(e))}function pj({outcome:e}){const t={running:{label:"Running",className:"border-primary/40 text-primary"},done:{label:"Done",className:"border-emerald-500/40 text-emerald-600 dark:text-emerald-400"},stopped:{label:"Stopped",className:"border-border text-muted-foreground"},failed:{label:"Failed",className:"border-destructive/40 text-destructive"},blocked:{label:"Needs you",className:"border-amber-500/40 text-amber-700 dark:text-amber-400"}},{label:s,className:n}=t[e];return a.jsx("span",{className:ae("rounded-full border px-2 py-0.5 text-[10px] font-medium",n),children:s})}function gj({kind:e}){return e==="gate"?a.jsx(OC,{className:"size-4 text-amber-600 dark:text-amber-400"}):e==="agent"?a.jsx(mi,{className:"size-4 text-primary"}):a.jsx(xr,{className:"size-4 text-muted-foreground"})}function aC({status:e,kind:t}){return e==="running"?a.jsx(ht,{className:"size-4 shrink-0 animate-spin text-primary"}):e==="waiting"?a.jsx(OC,{className:"size-4 shrink-0 text-primary"}):e==="done"?a.jsx(Zn,{className:"size-4 shrink-0 text-emerald-600 dark:text-emerald-400"}):e==="blocked"?a.jsx(a4,{className:"size-4 shrink-0 text-amber-600 dark:text-amber-400"}):e==="failed"?a.jsx(du,{className:"size-4 shrink-0 text-destructive"}):e==="skipped"?a.jsx(LC,{className:"size-4 shrink-0 text-muted-foreground/60"}):t==="agent"?a.jsx(mi,{className:"size-4 shrink-0 text-muted-foreground/50"}):a.jsx(c4,{className:"size-4 shrink-0 text-muted-foreground/50"})}function TY(e){return a.jsx(pi,{className:"size-3 shrink-0 text-muted-foreground/40","aria-hidden":!0})}function Rb({kind:e}){const t=e==="agent"?"AI":e==="gate"?"Gate":"Auto",s=e==="agent"?"border-primary/30 text-primary":e==="gate"?"border-amber-500/40 text-amber-600 dark:text-amber-400":"border-border text-muted-foreground";return a.jsx("span",{className:ae("shrink-0 rounded-full border px-1.5 py-px text-[9px] uppercase tracking-wide",s),children:t})}function af(e){return e.title}function AY({data:e,onRefresh:t}){const{insertPath:s}=At(),[n,o]=y.useState(!1),[l,u]=y.useState("changes"),[h,m]=y.useState("changes"),[d,p]=y.useState(e.git.status?.files[0]?.path??""),[g,x]=y.useState(""),[_,S]=y.useState([]),[w,C]=y.useState(null),[N,j]=y.useState(""),[E,A]=y.useState(null),[O,P]=y.useState(0),[D,T]=y.useState(null),[z,L]=y.useState(()=>new Set),I=e.git.status?.files??[],$=y.useMemo(()=>{const ge=new Set(I.map(Me=>Me.path)),Te=[...z].filter(Me=>!ge.has(Me)).sort().map(Me=>({path:Me,index:" ",workingTree:"M"}));return[...I,...Te]},[I,z]),U=y.useMemo(()=>$.map(ge=>ge.path),[$]),W=y.useMemo(()=>Q9(N),[N]),G=y.useCallback(async(ge,Te)=>{if(Te.length){o(!0);try{await ge(Te),t?.()}finally{o(!1)}}},[t]),B=t?{busy:n,onStage:ge=>{G(UC,ge)},onUnstage:ge=>{G(c6,ge)}}:void 0;y.useEffect(()=>{const ge=$[0]?.path??"";p(Te=>Te&&$.some(Me=>Me.path===Te)?Te:ge)},[$]),y.useEffect(()=>{if(l!=="all"||_.length>0)return;let ge=!0;return C(null),i6().then(Te=>{ge&&S(Te)}).catch(Te=>{ge&&C(Te instanceof Error?Te.message:String(Te))}),()=>{ge=!1}},[l,_.length]),y.useEffect(()=>{if(!d){j("");return}let ge=!0;return A(null),l6(d).then(Te=>{ge&&(j(Te),P(0),T(null))}).catch(Te=>{ge&&A(Te instanceof Error?Te.message:String(Te))}),()=>{ge=!1}},[d]);function V(ge){P(0),T(null),p(ge)}function X(){const ge=gK({activeHunkIndex:O,filePaths:U,hunkCount:W.hunks,pendingNextFilePath:D,selectedFile:d});ge.kind==="hunk"?(T(null),P(ge.activeHunkIndex)):ge.kind==="confirm-next-file"?T(ge.filePath):ge.kind==="file"?V(ge.filePath):T(null)}function K(){if(T(null),O>0){P(Me=>Me-1);return}const ge=$.findIndex(Me=>Me.path===d),Te=$[ge-1];Te&&V(Te.path)}const te=$.findIndex(ge=>ge.path===d),R=!!(W.hunks&&O<W.hunks-1||$[te+1]),Z=!!(O>0||$[te-1]),ie=D?`End of file. Click Next again to open ${D}.`:null,de=ge=>`rounded px-2 py-0.5 text-[11px] font-medium transition-colors ${ge?"bg-foreground text-background":"text-muted-foreground hover:text-foreground"}`,fe=ge=>`flex-1 px-2 py-0.5 text-[11px] font-medium transition-colors ${ge?"bg-foreground text-background":"text-muted-foreground hover:text-foreground"}`,pe=y.useMemo(()=>{const ge=new Set($.map(Te=>Te.path));for(const Te of z)ge.add(Te);return ge},[$,z]);if(!e.git.selectedRepository)return a.jsx(MY,{});function Se(){g&&(u("changes"),m("changes"),V(g))}function Le(ge){L(Te=>new Set(Te).add(ge)),x(ge),u("changes"),m("changes"),V(ge)}function ve(ge){x(ge),u("all")}function We(ge){ge&&s(vu(e.git.cwd,ge))}return a.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden bg-card/85",children:[a.jsxs("div",{className:"flex shrink-0 items-center gap-1 border-b border-border bg-card/95 px-3 py-1",children:[a.jsx("button",{type:"button",className:de(l==="changes"),onClick:()=>u("changes"),children:"Changes"}),a.jsx("button",{type:"button","aria-label":"Open all tracked files",className:de(l==="all"),onClick:()=>u("all"),children:"All files"}),a.jsx("button",{type:"button",className:de(l==="graph"),onClick:()=>u("graph"),children:"Tree"}),a.jsx("button",{type:"button",className:de(l==="largest"),onClick:()=>u("largest"),children:"Largest files"}),a.jsx("button",{type:"button",className:de(l==="snapshots"),onClick:()=>u("snapshots"),children:"Snapshots"}),a.jsx("button",{type:"button",className:de(l==="github"),onClick:()=>u("github"),children:a.jsxs("span",{className:"flex items-center gap-1",children:[a.jsx(uj,{className:"size-3"}),"GitHub"]})}),a.jsx("button",{type:"button",className:de(l==="workflows"),onClick:()=>u("workflows"),children:a.jsxs("span",{className:"flex items-center gap-1",children:[a.jsx(Tt,{className:"size-3"}),"Workflows"]})})]}),a.jsx("div",{className:"min-h-0 flex-1",children:l==="workflows"?a.jsx(uY,{}):l==="github"?a.jsx(nY,{}):l==="graph"?a.jsx(AK,{branches:e.git.branches??[]}):l==="largest"?a.jsx(BK,{onOpenFile:ve,root:e.git.cwd}):l==="snapshots"?a.jsx(sz,{}):l==="all"?a.jsxs("div",{className:"grid h-full min-h-0 overflow-hidden border-0 bg-card/85 xl:grid-cols-[320px_minmax(0,1fr)]",children:[a.jsx("aside",{className:"flex min-h-0 flex-col overflow-hidden",children:w?a.jsx(Ve,{variant:"destructive",className:"m-3",children:w}):a.jsx(V2,{branch:e.git.status?.branch||void 0,onSelectFile:x,paths:_,root:e.git.cwd,selectedFile:g,status:$})}),a.jsx(pK,{isModified:pe.has(g),onFileSaved:Le,onSendToAi:()=>We(g),onViewDiff:Se,path:g})]}):a.jsxs("div",{className:"grid h-full min-h-0 overflow-hidden border-0 bg-card/85 xl:grid-cols-[320px_minmax(0,1fr)]",children:[a.jsxs("aside",{className:"flex min-h-0 flex-col overflow-hidden",children:[a.jsxs("div",{className:"flex shrink-0 gap-0.5 border-b border-border bg-card/95 p-1",children:[a.jsx("button",{"aria-label":"Show changed files as a list",className:fe(h==="changes"),onClick:()=>m("changes"),type:"button",children:"Changes"}),a.jsx("button",{"aria-label":"Show changed files as a tree",className:fe(h==="tree"),onClick:()=>m("tree"),type:"button",children:"Tree"})]}),h==="changes"?a.jsx(Vq,{branch:e.git.status?.branch||void 0,error:e.git.error,files:$,selectedFile:d,onSelectFile:V,root:e.git.cwd,staging:B}):a.jsx(V2,{branch:e.git.status?.branch||void 0,defaultExpandAll:!0,emptyMessage:e.git.error??"No changed files.",onSelectFile:V,paths:U,root:e.git.cwd,selectedFile:d,status:$,title:"Changes"}),t&&e.git.status?a.jsx(Xq,{branch:e.git.status.branch||void 0,files:$,onDone:t}):null]}),a.jsxs("section",{className:"flex min-h-0 min-w-0 flex-col border-l border-border bg-card",children:[a.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-3 border-b border-border px-3 py-1.5",children:[a.jsxs("div",{className:"min-w-0",children:[a.jsx("h2",{className:"truncate text-[13px] font-semibold tracking-tight",children:d||"Diff"}),a.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-[10px] text-muted-foreground",children:[a.jsx("span",{children:"Long rows wrap inside the editor pane."}),W.additions||W.deletions?a.jsxs("span",{className:"flex items-center gap-1 font-mono",children:[a.jsxs("span",{className:"text-emerald-700",children:["+",W.additions]}),a.jsxs("span",{className:"text-red-700",children:["-",W.deletions]})]}):null]})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-1.5",children:[ie?a.jsx("span",{className:"max-w-72 truncate rounded border border-amber-200 bg-amber-50 px-2 py-1 text-[11px] text-amber-900",children:ie}):null,a.jsxs(Q,{disabled:!d||!Z,onClick:K,size:"sm",type:"button",variant:"outline",children:[a.jsx(Lb,{}),"Previous"]}),a.jsxs(Q,{disabled:!d||!R,onClick:X,size:"sm",type:"button",variant:"outline",children:[a.jsx(Ob,{}),"Next"]}),a.jsx(Q,{"aria-label":"Send selected file to AI input",className:"size-8",disabled:!d,onClick:()=>We(d),size:"icon",title:"Send selected file path to AI input",type:"button",variant:"outline",children:a.jsx(Tt,{className:"size-4"})})]})]}),a.jsx("div",{className:"relative min-h-0 min-w-0 flex-1",children:E?a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"destructive",children:E})}):d?a.jsx(mf,{activeHunkIndex:O,diff:N||"No unstaged diff for this file."}):a.jsx("div",{className:"p-4",children:a.jsx(Ve,{variant:"muted",className:"border-dashed p-12 text-center",children:"Select a changed file to inspect its diff."})})})]})]})})]})}function MY(){return a.jsx("div",{className:"flex h-full items-center justify-center p-8 text-center",children:a.jsxs("div",{className:"max-w-sm",children:[a.jsx(H4,{className:"mx-auto size-8 text-muted-foreground/50"}),a.jsx("p",{className:"mt-3 text-sm font-medium",children:"No Git project registered"}),a.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:"Add a folder that is a Git worktree to review changes, browse files, and inspect history. Use the project picker in the header to add one."})]})})}function RY({initialPath:e,onSelect:t,selectedPath:s}){const[n,o]=y.useState(e),[l,u]=y.useState(null),[h,m]=y.useState(null),[d,p]=y.useState(!1),g=DY(l);return y.useEffect(()=>{o(e)},[e]),y.useEffect(()=>{let x=!0;return p(!0),m(null),VC(n).then(_=>{x&&(u(_),t(_.path))}).catch(_=>{x&&m(_ instanceof Error?_.message:String(_))}).finally(()=>{x&&p(!1)}),()=>{x=!1}},[n,t]),a.jsxs("div",{className:"rounded-md border border-border bg-background",children:[a.jsxs("div",{className:"flex items-center gap-2 border-b border-border p-2",children:[g?a.jsx(Q,{"aria-label":"Open parent folder",onClick:()=>l&&o(l.parent),size:"icon",type:"button",variant:"ghost",children:a.jsx(Qn,{className:"rotate-90"})}):null,a.jsx("div",{className:"min-w-0 flex-1 truncate font-mono text-xs text-muted-foreground",children:l?.path??n}),d?a.jsx(ht,{className:"size-4 animate-spin text-muted-foreground"}):null]}),a.jsxs("div",{className:"max-h-56 overflow-auto p-1",children:[h?a.jsx(Ve,{variant:"destructive",className:"m-1",children:h}):null,!h&&l?.entries.length===0?a.jsx(Ve,{variant:"muted",className:"m-1 text-center",children:"No folders here."}):null,l?.entries.map(x=>a.jsxs(Q,{className:ae("h-8 w-full justify-start rounded-sm px-2 text-left",s===x.path&&"bg-muted"),onClick:()=>o(x.path),title:x.path,type:"button",variant:"ghost",children:[a.jsx(eo,{className:"text-accent"}),a.jsx("span",{className:"truncate",children:x.name})]},x.path))]})]})}function DY(e){return!!(e&&e.parent!==e.path)}function oC(e){return e.split(/[\\/]/).filter(Boolean).pop()??"project"}function OY({data:e,onRefresh:t}){const[s,n]=y.useState(!1),[o,l]=y.useState(e.git.cwd),[u,h]=y.useState(null),[m,d]=y.useState(!1),[p,g]=y.useState(e.git.cwd),x=y.useRef(null),_=e.git.selectedRepository,S=_?.name??(e.git.cwd?oC(e.git.cwd):"Add Git project"),{error:w,success:C}=Es(),N=zY({gitCwd:e.git.cwd});y.useEffect(()=>{l(e.git.cwd),g(e.git.cwd)},[e.git.cwd]),y.useEffect(()=>{if(!s)return;function D(T){x.current&&T.target instanceof Node&&!x.current.contains(T.target)&&n(!1)}return document.addEventListener("mousedown",D),()=>document.removeEventListener("mousedown",D)},[s]);async function j(D){try{await mn("/api/git/select",{name:D}),n(!1),await t(),C(`Switched to ${D}.`)}catch(T){w(T instanceof Error?T.message:String(T))}}async function E(D){const T=D.trim();if(!LY(T)){const z="Please add an absolute path. Paths beginning with ~ are not expanded here.";return h(z),w(z),!1}try{const z=oC(T);return await mn("/api/git/repositories",{name:z,path:T}),h(null),await t(),C(`Added Git project ${z}.`),!0}catch(z){const L=z instanceof Error?z.message:String(z);return h(L),w(L),!1}}async function A(D){try{await h6(D),await t(),C(`Removed Git project ${D}.`)}catch(T){w(T instanceof Error?T.message:String(T))}}async function O(D){D.preventDefault(),await E(o)&&n(!1)}function P(){h(null),g(N.selectedPath),d(!0)}return a.jsxs("div",{className:"relative z-50 flex items-center gap-2",ref:x,children:[a.jsxs(Q,{className:"max-w-[220px] justify-start gap-2 rounded-md border-border bg-card",onClick:()=>n(D=>!D),size:"sm",type:"button",variant:"outline",children:[a.jsx(eo,{className:"text-muted-foreground"}),a.jsx("span",{className:"truncate",children:S}),a.jsx(Qn,{className:ae("ml-auto transition-transform",s&&"rotate-180")})]}),a.jsx(Q,{"aria-label":"Add Git project",onClick:P,size:"sm",type:"button",variant:"outline",children:a.jsx(xs,{})}),s?a.jsxs("div",{className:"absolute right-0 top-10 z-50 w-[min(380px,calc(100vw-2rem))] overflow-hidden rounded-lg border border-border bg-card shadow-lg",children:[a.jsxs("div",{className:"flex items-center gap-2 border-b border-border px-3 py-2",children:[a.jsx(C4,{className:"size-3.5 text-muted-foreground"}),a.jsx("div",{className:"text-xs font-semibold",children:"Git Projects"}),a.jsx(Pe,{className:"ml-auto h-5 px-1.5 text-[10px]",variant:"outline",children:e.config.gitRepositories.length})]}),a.jsx("div",{className:"max-h-72 overflow-auto",children:e.config.gitRepositories.length?a.jsx("div",{className:"divide-y divide-border",children:e.config.gitRepositories.map(D=>{const T=D.name===_?.name;return a.jsxs("div",{className:ae("group grid w-full grid-cols-[1fr_auto_auto] items-center gap-2 px-3 py-1.5 text-left transition-colors hover:bg-muted",T&&"bg-muted/70"),children:[a.jsxs("button",{className:"min-w-0 text-left",onClick:()=>{j(D.name)},type:"button",children:[a.jsx("span",{className:"block truncate text-sm font-medium leading-tight",children:D.name}),a.jsx("span",{className:"block truncate font-mono text-[10px] leading-tight text-muted-foreground",children:D.path})]}),T?a.jsx(Zn,{className:"size-3.5"}):a.jsx("span",{className:"size-3.5"}),a.jsx(Q,{"aria-label":`Remove ${D.name}`,className:"size-6 opacity-0 transition-opacity group-hover:opacity-100",onClick:()=>{A(D.name)},size:"icon",title:`Remove ${D.name}`,type:"button",variant:"ghost",children:a.jsx(ha,{className:"size-3.5 text-destructive"})})]},D.name)})}):a.jsx("div",{className:"px-3 py-6 text-center text-xs text-muted-foreground",children:"No saved Git projects yet."})}),a.jsxs("div",{className:"border-t border-border bg-muted/20 p-2",children:[a.jsxs("form",{className:"flex gap-1.5",onSubmit:O,children:[a.jsx(nt,{"aria-label":"Paste absolute path",className:"h-7 flex-1 px-2 font-mono text-[11px]",onChange:D=>{l(D.target.value),h(null)},placeholder:"/absolute/path",value:o}),a.jsxs(Q,{className:"h-7 px-2 text-[11px]",size:"sm",type:"submit",children:[a.jsx(xs,{className:"size-3"}),"Add"]}),a.jsx(Q,{"aria-label":"Browse and add Git project",className:"h-7 px-2",onClick:P,size:"sm",type:"button",variant:"outline",children:a.jsx(q4,{className:"size-3"})})]}),u?a.jsx("div",{className:"mt-1.5 truncate text-[10px] text-destructive",children:u}):null]})]}):null,m?a.jsx(BY,{confirmLabel:N.confirmLabel,errorMessage:u,initialPath:N.initialPath,selectedPath:p,title:"Add Git Project",onCancel:()=>d(!1),onSelect:g,onUse:async()=>{await E(p)&&(d(!1),n(!1))}}):null]})}function LY(e){return e.startsWith("/")}function zY({gitCwd:e}){return{confirmLabel:"Add Git project",initialPath:e,selectedPath:e}}function BY({confirmLabel:e="Use this folder",errorMessage:t,initialPath:s,onCancel:n,onSelect:o,onUse:l,selectedPath:u,title:h="Choose Git Project Folder"}){return xu.createPortal(a.jsx("div",{className:"fixed inset-0 z-[1000] grid place-items-center bg-black/35 px-4",children:a.jsxs("div",{className:"w-full max-w-2xl rounded-xl border border-border bg-card p-4 shadow-xl",children:[a.jsxs("div",{className:"mb-3 flex items-center gap-3",children:[a.jsx("div",{className:"flex size-8 items-center justify-center rounded-lg border border-border bg-background",children:a.jsx(eo,{className:"size-4"})}),a.jsxs("div",{className:"min-w-0 flex-1",children:[a.jsx("div",{className:"text-sm font-semibold",children:h}),a.jsx("div",{className:"truncate font-mono text-xs text-muted-foreground",children:u})]}),a.jsx(Q,{"aria-label":"Close folder picker",onClick:n,size:"icon",variant:"ghost",children:a.jsx(Ns,{})})]}),a.jsx(RY,{initialPath:s,onSelect:o,selectedPath:u}),t?a.jsx("div",{className:"mt-3 rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:t}):null,a.jsxs("div",{className:"mt-4 flex justify-end gap-2",children:[a.jsx(Q,{onClick:n,type:"button",variant:"outline",children:"Cancel"}),a.jsx(Q,{onClick:()=>{l()},type:"button",children:e})]})]})}),document.body)}function IY({ahead:e=0,behind:t=0,branches:s,currentBranch:n,disabled:o,onRefresh:l,upstream:u}){const[h,m]=y.useState(!1),[d,p]=y.useState(""),[g,x]=y.useState(null),[_,S]=y.useState(null),[w,C]=y.useState(null),N=s.filter(z=>!z.remote),j=s.filter(z=>z.remote);async function E(z,L){x(z),C(null),S(null);try{await L(),await l()}catch(I){C(I instanceof Error?I.message:String(I))}finally{x(null)}}async function A(z){await E(`switch:${z}`,async()=>{await mn("/api/git/branches/switch",{name:z}),m(!1)})}async function O(){await E("fetch",async()=>{await mn("/api/git/fetch",{}),S("Fetched latest branch refs.")})}async function P(){await E("push",async()=>{const z=await cf();S(z.setUpstream?`Pushed ${z.branch} and set upstream.`:`Pushed ${z.branch}.`)})}const D=!!n&&(e>0||!u&&t===0);async function T(z){z.preventDefault();const L=d.trim();if(!L){C("Branch name is required.");return}await E("create",async()=>{await mn("/api/git/branches",{name:L}),p(""),m(!1)})}return a.jsxs("div",{className:"fixed bottom-12 right-4 z-50 flex items-end",children:[h?a.jsxs("div",{"aria-label":"Switch Git branch",className:"mb-11 w-[min(460px,calc(100vw-2rem))] rounded-lg border border-border bg-card shadow-xl",role:"dialog",children:[a.jsxs("div",{className:"flex items-center justify-between gap-3 border-b border-border p-3",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[a.jsx(pn,{className:"size-4 text-muted-foreground"}),a.jsx("span",{className:"truncate text-sm font-semibold",children:n||"Branches"})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[D?a.jsxs(Q,{"aria-label":"Push current branch",className:"gap-1.5 px-2 text-xs",disabled:o||g!==null,onClick:()=>{P()},size:"sm",title:u?`Push ${e} commit${e===1?"":"s"} to ${u}`:"Push and set upstream",type:"button",variant:"default",children:[a.jsx(Pb,{className:ae("size-3.5",g==="push"&&"animate-pulse")}),"Push",e>0?` ${e}`:""]}):null,a.jsx(Q,{"aria-label":"Fetch branches",disabled:o||g!==null,onClick:()=>{O()},size:"icon",title:"Fetch branches",type:"button",variant:"ghost",children:a.jsx(cu,{className:ae(g==="fetch"&&"animate-spin")})}),a.jsx(Q,{"aria-label":"Close branch dialog",onClick:()=>m(!1),size:"icon",type:"button",variant:"ghost",children:a.jsx(Ns,{})})]})]}),a.jsx("div",{className:"max-h-72 overflow-auto",children:s.length?a.jsxs(a.Fragment,{children:[a.jsx(lC,{branches:N,busy:g!==null,disabled:o,label:"Local",onSwitch:A}),a.jsx(lC,{branches:j,busy:g!==null,disabled:o,label:"Remote",onSwitch:A})]}):a.jsx("div",{className:"px-3 py-6 text-center text-sm text-muted-foreground",children:"No branches found."})}),a.jsxs("div",{className:"border-t border-border p-3",children:[a.jsxs("form",{className:"grid gap-2 sm:grid-cols-[1fr_auto]",onSubmit:T,children:[a.jsx(nt,{"aria-label":"New branch name",disabled:o||g!==null,onChange:z=>{p(z.target.value),C(null),S(null)},placeholder:"feature/new-work",value:d}),a.jsxs(Q,{disabled:o||g!==null,type:"submit",children:[a.jsx(nM,{}),"Create"]})]}),w||_?a.jsx(Ve,{className:"mt-3 px-3 py-2 text-xs",variant:w?"destructive":"muted",children:w??_}):null]})]}):null,a.jsxs(Q,{className:"h-8 max-w-[260px] gap-2 rounded-md shadow-lg",disabled:o,onClick:()=>m(z=>!z),size:"sm",title:"Switch Git branch",type:"button",variant:"default",children:[a.jsx(pn,{className:"size-4"}),a.jsx("span",{className:"truncate font-mono text-xs",children:n||"No branch"}),n&&(e>0||t>0)?a.jsxs("span",{className:"flex items-center gap-1 font-mono text-[11px] tabular-nums",title:u?`${e} ahead / ${t} behind ${u}`:`${e} ahead / ${t} behind`,children:[t>0?a.jsxs("span",{className:"flex items-center",children:[a.jsx(Ob,{className:"size-3"}),t]}):null,e>0?a.jsxs("span",{className:"flex items-center",children:[a.jsx(Lb,{className:"size-3"}),e]}):null]}):null,a.jsx(Qn,{className:ae("size-4 transition-transform",h&&"rotate-180")})]})]})}function lC({branches:e,busy:t,disabled:s,label:n,onSwitch:o}){return a.jsxs("section",{children:[a.jsx("div",{className:"border-b border-border bg-muted/60 px-3 py-1.5 text-[11px] font-semibold uppercase text-muted-foreground",children:n}),e.length?e.map(l=>a.jsxs("button",{className:ae("grid w-full grid-cols-[1fr_auto] items-center gap-2 border-b border-border px-3 py-2 text-left text-sm last:border-b-0 hover:bg-muted",l.current&&"bg-muted/70"),disabled:s||t||l.current,onClick:()=>{o(l.name)},type:"button",children:[a.jsxs("span",{className:"min-w-0",children:[a.jsx("span",{className:"block truncate font-medium",children:l.name}),l.upstream?a.jsxs("span",{className:"block truncate font-mono text-[11px] text-muted-foreground",children:["tracks ",l.upstream]}):null]}),a.jsx(Pe,{variant:l.current?"success":l.remote?"outline":"secondary",children:l.current?"current":l.remote?"remote":"local"})]},`${l.remote?"remote":"local"}:${l.name}`)):a.jsxs("div",{className:"border-b border-border px-3 py-3 text-sm text-muted-foreground",children:["No ",n.toLowerCase()," branches."]})]})}const bj="nomoreide-theme-choice";function PY(){if(typeof window>"u")return"dark";const e=window.localStorage.getItem(bj);return e==="light"||e==="dark"?e:"dark"}function $Y(e){const t=document.documentElement;t.classList.toggle("dark",e==="dark"),t.style.colorScheme=e}function HY(){const[e,t]=y.useState(()=>PY()),s=y.useRef(null);y.useEffect(()=>{$Y(e),window.localStorage.setItem(bj,e)},[e]);const n=y.useCallback(()=>{const o=e==="dark"?"light":"dark",l=s.current,u=document;if(!l||!u.startViewTransition||window.matchMedia("(prefers-reduced-motion: reduce)").matches){t(o);return}const h=l.getBoundingClientRect(),m=h.left+h.width/2,d=h.top+h.height/2,p=Math.hypot(Math.max(m,window.innerWidth-m),Math.max(d,window.innerHeight-d));u.startViewTransition(()=>{t(o)}).ready.then(()=>{document.documentElement.animate({clipPath:[`circle(0px at ${m}px ${d}px)`,`circle(${p}px at ${m}px ${d}px)`]},{duration:500,easing:"ease-in-out",pseudoElement:"::view-transition-new(root)"})})},[e]);return a.jsxs("button",{ref:s,type:"button",onClick:n,title:e==="dark"?"Switch to light mode":"Switch to dark mode","aria-label":"Toggle theme",className:Ih(),children:[a.jsx("span",{className:Ph(),children:e==="dark"?a.jsx(wR,{}):a.jsx(LM,{})}),a.jsx("span",{className:$h(),children:"Theme"})]})}function UY(e=!1){return ae("group/sidebar hidden h-full shrink-0 overflow-x-hidden overflow-y-auto border-r border-border bg-card/85 py-5 backdrop-blur transition-[width,padding] duration-200 md:flex md:flex-col",e?"w-64 px-4":"w-16 px-2 hover:w-64 hover:px-4")}function FY(e,t=!1){return ae("relative grid h-12 grid-cols-[48px_minmax(0,1fr)] items-center justify-start gap-0 overflow-hidden rounded-md px-0 text-[15px] font-medium transition-[background-color,color,width] duration-150",t?"w-full":"w-12 group-hover/sidebar:w-full",e?"bg-primary text-primary-foreground hover:bg-primary/90":"hover:bg-muted")}function qY(e=!1,t=!1){return ae("min-w-0 overflow-hidden text-left text-current transition duration-150 whitespace-pre",e?"translate-x-1 opacity-100":"opacity-0 group-hover/sidebar:translate-x-1 group-hover/sidebar:opacity-100",t?"pr-10":"pr-3")}function VY(e=!1){return ae("flex size-12 items-center justify-center text-current transition-transform duration-150 [&_svg]:size-5",e?"translate-x-0":"-translate-x-px group-hover/sidebar:translate-x-0")}function GY({docked:e,onToggleDock:t}){return a.jsxs("div",{className:ae("mt-auto flex h-10 min-w-0 items-center overflow-hidden border-t border-border/60 text-[11px] text-muted-foreground transition-[height,opacity,width] duration-150",e?"w-full justify-start opacity-100":"w-12 justify-center group-hover/sidebar:w-full group-hover/sidebar:justify-start group-hover/sidebar:opacity-100"),children:[a.jsxs("span",{className:ae("flex min-w-0 items-center gap-1.5 overflow-hidden whitespace-pre transition-[opacity,width] duration-150",e?"flex-1 opacity-100":"w-0 flex-none opacity-0 group-hover/sidebar:w-auto group-hover/sidebar:flex-1 group-hover/sidebar:opacity-100"),children:[a.jsx("span",{children:"Made with"}),a.jsx(oM,{"aria-label":"love",className:"size-3 shrink-0 fill-red-500 text-red-500"}),a.jsx("span",{children:"by Robert Wang"}),a.jsx("a",{"aria-label":"Robert Wang on LinkedIn",className:"shrink-0 rounded p-0.5 text-muted-foreground transition-colors hover:bg-muted hover:text-[#0A66C2]",href:"https://www.linkedin.com/in/robert-wang-cs/",rel:"noopener noreferrer",target:"_blank",title:"LinkedIn",children:a.jsxs("svg",{className:"size-3 fill-current",role:"img",viewBox:"0 0 24 24",children:[a.jsx("title",{children:"LinkedIn"}),a.jsx("path",{d:"M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.063 2.063 0 1 1 0-4.126 2.063 2.063 0 0 1 0 4.126zM7.119 20.452H3.554V9h3.565v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.225 0z"})]})})]}),a.jsx("button",{"aria-label":e?"Undock sidebar":"Dock sidebar","aria-pressed":e,className:ae("flex size-8 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-muted hover:text-foreground [&_svg]:size-4",e?"ml-auto bg-muted text-foreground":"group-hover/sidebar:ml-auto"),onClick:t,title:e?"Undock sidebar":"Dock sidebar",type:"button",children:e?a.jsx(HM,{}):a.jsx(FM,{})})]})}function WY({className:e}){return a.jsxs("div",{className:ae("min-w-0",e),children:[a.jsxs("div",{className:"flex items-baseline gap-1.5",children:[a.jsx("div",{className:"text-sm font-semibold",children:"NoMoreIDE"}),a.jsxs("div",{className:"font-mono text-[10px] text-muted-foreground",children:["v","0.1.55"]})]}),a.jsx("div",{className:"font-mono text-[11px] text-muted-foreground",children:"127.0.0.1 console"})]})}function KY({syncLocation:e=!0}={}){const[t,s]=y.useState(()=>e?window.location.pathname.startsWith("/agent")?"agent":window.location.pathname.startsWith("/errors")?"errors":window.location.pathname.startsWith("/database")?"database":window.location.pathname.startsWith("/terminal")?"terminal":window.location.pathname.startsWith("/git")?"git":"services":"services"),[n,o]=y.useState(null),[l,u]=y.useState(null),[h,m]=y.useState(null),[d,p]=y.useState(null),[g,x]=y.useState(!0),{error:_,success:S}=Es(),[w,C]=y.useState(()=>window.localStorage.getItem("nomoreide:sidebar-docked")==="true"),N=y.useCallback(async(E={})=>{E.silent||x(!0),p(null);try{o(await R6()),E.notify&&S("Dashboard refreshed.")}catch(A){const O=A instanceof Error?A.message:String(A);p(O),_(O)}finally{x(!1)}},[_,S]);y.useEffect(()=>{N()},[N]),y.useEffect(()=>{function E(){document.visibilityState==="visible"&&N({silent:!0})}const A=window.setInterval(E,5e3);return window.addEventListener("focus",E),document.addEventListener("visibilitychange",E),()=>{window.clearInterval(A),window.removeEventListener("focus",E),document.removeEventListener("visibilitychange",E)}},[t,N]),y.useEffect(()=>{if(!e)return;const E=t==="git"?"/git":t==="agent"?"/agent":t==="errors"?"/errors":t==="database"?"/database":t==="terminal"?"/terminal":"/";window.location.pathname!==E&&window.history.pushState(null,"",E)},[t,e]),y.useEffect(()=>{window.localStorage.setItem("nomoreide:sidebar-docked",String(w))},[w]);const j=y.useMemo(()=>n?Object.values(n.runtime.services).filter(E=>E.state==="running").length:0,[n]);return a.jsx(oz,{children:a.jsx(hI,{onRefresh:()=>{N({silent:!0})},children:a.jsxs("div",{className:"h-screen overflow-hidden pb-9",children:[a.jsxs("div",{className:"mx-auto flex h-full max-w-[1500px]",children:[a.jsxs("aside",{className:UY(w),children:[a.jsxs("div",{className:ae("grid h-12 grid-cols-[48px_minmax(0,1fr)] items-center overflow-hidden transition-[width] duration-150",w?"w-full":"w-12 group-hover/sidebar:w-full"),children:[a.jsx("div",{className:"flex size-12 items-center justify-center",children:a.jsx("div",{className:"flex size-9 items-center justify-center overflow-hidden rounded-md bg-primary text-primary-foreground",children:a.jsxs("svg",{"aria-label":"NoMoreIDE",className:"size-6",fill:"none",role:"img",viewBox:"0 0 64 64",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M5 17C5 13.69 7.69 11 11 11H25L31 17H53C56.31 17 59 19.69 59 23V53C59 56.31 56.31 59 53 59H11C7.69 59 5 56.31 5 53V17Z",fill:"currentColor"}),a.jsx("path",{d:"M22 31L30 39L22 47",stroke:"hsl(var(--primary))",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"4.5"}),a.jsx("path",{d:"M36 47H48",stroke:"hsl(var(--primary))",strokeLinecap:"round",strokeWidth:"4.5"})]})})}),a.jsx(WY,{className:ae("min-w-0 translate-x-1 overflow-hidden transition-opacity duration-200",w?"opacity-100":"opacity-0 group-hover/sidebar:opacity-100")})]}),a.jsxs("nav",{className:"mt-5 grid flex-1 content-start gap-1",children:[a.jsx(Yo,{active:t==="services",badge:j,docked:w,icon:a.jsx(RC,{}),label:"Services",onClick:()=>s("services")}),a.jsx(Yo,{active:t==="git",docked:w,icon:a.jsx(pn,{}),label:"Git Review",onClick:()=>s("git")}),a.jsx(Yo,{active:t==="errors",docked:w,icon:a.jsx(Eh,{}),label:"Error Inbox",onClick:()=>s("errors")}),a.jsx(Yo,{active:t==="database",docked:w,icon:a.jsx(Yn,{}),label:"Database",onClick:()=>s("database")}),a.jsx(Yo,{active:t==="terminal",docked:w,icon:a.jsx(_R,{}),label:"Terminal",onClick:()=>s("terminal")}),a.jsx(Yo,{active:t==="agent",docked:w,icon:a.jsx(qA,{}),label:"Agent",onClick:()=>s("agent")})]}),a.jsx(GY,{docked:w,onToggleDock:()=>C(E=>!E)})]}),a.jsxs("main",{className:"flex h-full min-w-0 flex-1 flex-col px-0 py-0",children:[a.jsxs("header",{className:ae("relative z-40 flex shrink-0 flex-wrap items-center justify-between gap-3 border border-border bg-card/90 px-4 py-3 backdrop-blur","border-x-0 border-t-0 border-b"),children:[a.jsxs("div",{className:"flex items-center gap-3",children:[a.jsx(VM,{className:"size-4 text-muted-foreground md:hidden"}),a.jsxs("div",{children:[a.jsx("h1",{className:"text-lg font-semibold tracking-tight",children:t==="git"?"Git Review":t==="agent"?"Agent":t==="errors"?"Error Inbox":t==="database"?"Database":t==="terminal"?"Terminal":"Services"}),a.jsx("p",{className:"font-mono text-xs text-muted-foreground",children:n?.git.selectedRepository?.name??n?.git.cwd??"Local workspace"})]})]}),a.jsxs("div",{className:"flex items-center gap-2",children:[d?a.jsx(Pe,{variant:"danger",children:d}):null,n&&t==="git"?a.jsx(OY,{data:n,onRefresh:N}):null,a.jsxs("div",{"aria-label":"Dashboard quick actions",className:"flex items-center gap-1 rounded-lg border border-border bg-background p-px",role:"toolbar",children:[a.jsxs("button",{"aria-label":"Refresh dashboard",className:Ih(),onClick:()=>{N({notify:!0})},title:"Refresh dashboard",type:"button",children:[a.jsx("span",{className:Ph(),children:a.jsx(cu,{className:ae(g&&"animate-spin")})}),a.jsx("span",{className:$h(),children:"Refresh"})]}),a.jsx(HY,{}),a.jsxs("a",{"aria-label":"Open NoMoreIDE documentation",className:Ih(),href:"https://www.nomoreide.com/docs",rel:"noreferrer",target:"_blank",title:"Open NoMoreIDE documentation",children:[a.jsx("span",{className:Ph(),children:a.jsx(UA,{})}),a.jsx("span",{className:$h(),children:"Docs"})]}),n?a.jsx(GB,{data:n}):null]})]})]}),n?a.jsx(Iq,{data:n,onOpenService:E=>{u(E),s("services"),N({silent:!0})}}):null,g&&!n?a.jsx(Ve,{variant:"muted",children:"Loading NoMoreIDE state..."}):null,a.jsxs("div",{className:"min-h-0 flex-1 overflow-hidden",children:[n&&t==="services"?a.jsx(Lq,{data:n,onRefresh:N,focusService:l,onServiceFocused:()=>u(null)}):null,n&&t==="git"?a.jsx(AY,{data:n,onRefresh:()=>{N({silent:!0})}}):null,t==="agent"?a.jsx(SB,{}):null,t==="errors"?a.jsx(g$,{}):null,t==="database"?a.jsx(u$,{staged:h,onStageConsumed:()=>m(null)}):null,t==="terminal"?a.jsx(qq,{}):null]})]})]}),n&&t==="git"?a.jsx(IY,{ahead:n.git.status?.ahead??0,behind:n.git.status?.behind??0,branches:n.git.branches,currentBranch:n.git.status?.branch||void 0,disabled:!n.git.status,onRefresh:N,upstream:n.git.status?.upstream}):null,a.jsx(AP,{git:n?.git,onGitRefresh:()=>{N({silent:!0})},onOpenAgentPage:t==="agent"?void 0:()=>s("agent"),onOpenService:E=>{u(E),s("services"),N({silent:!0})},onOpenSqlConsole:(E,A)=>{m(O=>({connection:E,sql:A,nonce:(O?.nonce??0)+1})),s("database")}})]})})})}function Yo({active:e,badge:t,docked:s,icon:n,label:o,onClick:l}){const u=t!==void 0&&t>0;return a.jsxs(Q,{"aria-label":o,title:o,className:FY(e,s),variant:"ghost",onClick:l,type:"button",children:[a.jsx("span",{className:VY(s),children:n}),a.jsx("span",{className:qY(s,u),children:o}),t!==void 0&&t>0?a.jsx(Pe,{appearance:t>0?"solid":"outline",className:ae("min-w-6 justify-center px-1.5 font-mono shadow-none",e?"border-primary-foreground/40 bg-primary-foreground/15 text-primary-foreground dark:border-primary-foreground/40 dark:bg-primary-foreground/15 dark:text-primary-foreground":t>0?"":"border-border bg-background text-muted-foreground","absolute right-1.5 top-1.5 h-4 min-w-4 rounded-full px-1 text-[10px] leading-none shadow-none group-hover/sidebar:right-2 group-hover/sidebar:top-1/2 group-hover/sidebar:-translate-y-1/2 group-hover/sidebar:text-xs",s&&"right-2 top-1/2 -translate-y-1/2 text-xs"),size:"small",variant:t>0?"success":"outline",children:t}):null]})}uC.createRoot(document.getElementById("root")).render(a.jsx(y.StrictMode,{children:a.jsx(KY,{})}));export{a as j,y as r};
|