openfox 2.0.16 → 2.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/agent-defaults/builder.agent.md +1 -2
  2. package/dist/agent-defaults/code-reviewer.agent.md +1 -1
  3. package/dist/agent-defaults/planner.agent.md +4 -1
  4. package/dist/agent-defaults/verifier.agent.md +1 -1
  5. package/dist/{chat-handler-PC6OVDUR.js → chat-handler-Z2C4372A.js} +5 -5
  6. package/dist/{chunk-63UEI4AF.js → chunk-4MTSWBWH.js} +3 -3
  7. package/dist/{chunk-L7TDUIQY.js → chunk-DX37WNM7.js} +28 -3
  8. package/dist/{chunk-JO6RF2U2.js → chunk-FCSFHRKI.js} +79 -49
  9. package/dist/{chunk-DQ6SV26Y.js → chunk-FERQPF5N.js} +28 -21
  10. package/dist/{chunk-OUK5IW26.js → chunk-M6ELTMPZ.js} +2 -2
  11. package/dist/{chunk-WOTBK3QQ.js → chunk-MPSOO6KF.js} +7 -7
  12. package/dist/{chunk-XAMAYRDA.js → chunk-O4TED6AJ.js} +5 -1
  13. package/dist/{chunk-FWJ6YXGA.js → chunk-VHWUZ7TO.js} +2 -2
  14. package/dist/cli/dev.js +1 -1
  15. package/dist/cli/index.js +1 -1
  16. package/dist/{compactor-R7GRFBOU.js → compactor-FAN7KRQN.js} +3 -3
  17. package/dist/{orchestrator-3SB2BMQ7.js → orchestrator-YPL5S4QN.js} +5 -5
  18. package/dist/package.json +1 -1
  19. package/dist/{processor-KWPYXPL7.js → processor-GUUAJ24C.js} +5 -5
  20. package/dist/{project-creator-6DU7E75S.js → project-creator-BDDFQM6G.js} +2 -2
  21. package/dist/{projects-2HYIZC4Y.js → projects-VO4PMVZY.js} +2 -2
  22. package/dist/{serve-HZXJXK6T.js → serve-Z5GO323T.js} +8 -8
  23. package/dist/server/index.js +7 -7
  24. package/dist/{server-RYKKAOFF.js → server-IZL6UZEZ.js} +7 -7
  25. package/dist/{tools-Y7ZGLK7A.js → tools-QTEXQQ7Z.js} +4 -4
  26. package/dist/web/assets/{index-Ho_tVUbw.css → index-Bq9rJ9jH.css} +1 -1
  27. package/dist/web/assets/index-ByjaBwIN.js +301 -0
  28. package/dist/web/index.html +2 -2
  29. package/dist/web/sw.js +1 -1
  30. package/package.json +1 -1
  31. package/dist/web/assets/index-BMz5-yAf.js +0 -301
@@ -0,0 +1,301 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/angular-html-DA-rfuFy.js","assets/html-pp8916En.js","assets/javascript-wDzz0qaB.js","assets/css-CLj8gQPS.js","assets/angular-ts-BrjP3tb8.js","assets/scss-D5BDwBP9.js","assets/apl-CORt7UWP.js","assets/xml-sdJ4AIDG.js","assets/java-CylS5w8V.js","assets/json-Cp-IABpG.js","assets/astro-HNnZUWAn.js","assets/typescript-BPQ3VLAy.js","assets/postcss-CXtECtnM.js","assets/tsx-COt5Ahok.js","assets/blade-2xfisSek.js","assets/html-derivative-DlHx6ybY.js","assets/sql-CRqJ_cUM.js","assets/bsl-BO_Y6i37.js","assets/sdbl-DVxCFoDh.js","assets/cairo-KRGpt6FW.js","assets/python-B6aJPvgy.js","assets/cobol-nBiQ_Alo.js","assets/coffee-Ch7k5sss.js","assets/cpp-UfJy6YNI.js","assets/regexp-CDVJQ6XC.js","assets/glsl-DplSGwfg.js","assets/c-BIGW1oBm.js","assets/crystal-DGywbUpC.js","assets/shellscript-Yzrsuije.js","assets/edge-FbVlp4U3.js","assets/elixir-CkH2-t6x.js","assets/elm-DbKCFpqz.js","assets/erb-Dm6A9KJ5.js","assets/ruby-DyJCeAvU.js","assets/haml-D5jkg6IW.js","assets/graphql-ChdNCCLP.js","assets/jsx-g9-lgVsj.js","assets/lua-BaeVxFsk.js","assets/yaml-Buea-lGh.js","assets/erlang-DsQrWhSR.js","assets/markdown-Cvjx9yec.js","assets/fortran-fixed-form-CkoXwp7k.js","assets/fortran-free-form-BxgE0vQu.js","assets/fsharp-CXgrBDvD.js","assets/gdresource-BOOCDP_w.js","assets/gdshader-DkwncUOv.js","assets/gdscript-C5YyOfLZ.js","assets/git-commit-F4YmCXRG.js","assets/diff-D97Zzqfu.js","assets/git-rebase-r7XF79zn.js","assets/glimmer-js-ByusRIyA.js","assets/glimmer-ts-BfAWNZQY.js","assets/hack-DbPARsA_.js","assets/handlebars-BpdQsYii.js","assets/http-jrhK8wxY.js","assets/hurl-irOxFIW8.js","assets/csv-fuZLfV_i.js","assets/hxml-Bvhsp5Yf.js","assets/haxe-CzTSHFRz.js","assets/jinja-f2NsQr07.js","assets/jison-wvAkD_A8.js","assets/julia-D7OTSIA_.js","assets/r-Dspwwk_N.js","assets/just-CUsbIsdP.js","assets/perl-B9cMNwum.js","assets/latex-CaSxy8MP.js","assets/tex-idrVyKtj.js","assets/liquid-C0sCDyMI.js","assets/marko-DjSrsDqO.js","assets/less-B1dDrJ26.js","assets/mdc-DTYItulj.js","assets/nextflow-C-mBbutL.js","assets/nextflow-groovy-vE_lwT2v.js","assets/nginx-BpAMiNFr.js","assets/nim-BIad80T-.js","assets/php-Csjmro_R.js","assets/pug-DKIMFp6K.js","assets/qml-3beO22l8.js","assets/razor-BjBPvh-w.js","assets/csharp-DSvCPggb.js","assets/rst-CpCqk9r5.js","assets/cmake-D1j8_8rp.js","assets/sas-DEy46yEz.js","assets/shaderlab-Dg9Lc6iA.js","assets/hlsl-D3lLCCz7.js","assets/shellsession-BADoaaVG.js","assets/soy-8wufbnw4.js","assets/sparql-rVzFXLq3.js","assets/turtle-BsS91CYL.js","assets/stata-DI20mbqo.js","assets/surrealql-Bq5Q-fJD.js","assets/svelte-Cy7k_4gC.js","assets/templ-DhtptRzy.js","assets/go-C27-OAKa.js","assets/ts-tags-D351s5mN.js","assets/twig-CW1WmMYd.js","assets/vue-D2xRrEX4.js","assets/vue-html-AaS7Mt5G.js","assets/vue-vine-BoDAl6tE.js","assets/stylus-BEDo0Tqx.js","assets/xsl-CtQFsRM5.js"])))=>i.map(i=>d[i]);
2
+ var e2=Object.defineProperty;var t2=Object.getPrototypeOf;var n2=Reflect.get;var tv=e=>{throw TypeError(e)};var r2=(e,t,n)=>t in e?e2(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var me=(e,t,n)=>r2(e,typeof t!="symbol"?t+"":t,n),wf=(e,t,n)=>t.has(e)||tv("Cannot "+n);var kn=(e,t,n)=>(wf(e,t,"read from private field"),n?n.call(e):t.get(e)),gi=(e,t,n)=>t.has(e)?tv("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),xr=(e,t,n,s)=>(wf(e,t,"write to private field"),s?s.call(e,n):t.set(e,n),n),Cf=(e,t,n)=>(wf(e,t,"access private method"),n);var nv=(e,t,n)=>n2(t2(e),n,t);function s2(e,t){for(var n=0;n<t.length;n++){const s=t[n];if(typeof s!="string"&&!Array.isArray(s)){for(const a in s)if(a!=="default"&&!(a in e)){const l=Object.getOwnPropertyDescriptor(s,a);l&&Object.defineProperty(e,a,l.get?l:{enumerable:!0,get:()=>s[a]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))s(a);new MutationObserver(a=>{for(const l of a)if(l.type==="childList")for(const u of l.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&s(u)}).observe(document,{childList:!0,subtree:!0});function n(a){const l={};return a.integrity&&(l.integrity=a.integrity),a.referrerPolicy&&(l.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?l.credentials="include":a.crossOrigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function s(a){if(a.ep)return;a.ep=!0;const l=n(a);fetch(a.href,l)}})();function Ru(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var kf={exports:{}},zo={};/**
3
+ * @license React
4
+ * react-jsx-runtime.production.js
5
+ *
6
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
7
+ *
8
+ * This source code is licensed under the MIT license found in the
9
+ * LICENSE file in the root directory of this source tree.
10
+ */var rv;function i2(){if(rv)return zo;rv=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(s,a,l){var u=null;if(l!==void 0&&(u=""+l),a.key!==void 0&&(u=""+a.key),"key"in a){l={};for(var c in a)c!=="key"&&(l[c]=a[c])}else l=a;return a=l.ref,{$$typeof:e,type:s,key:u,ref:a!==void 0?a:null,props:l}}return zo.Fragment=t,zo.jsx=n,zo.jsxs=n,zo}var sv;function a2(){return sv||(sv=1,kf.exports=i2()),kf.exports}var o=a2(),Ef={exports:{}},Ge={};/**
11
+ * @license React
12
+ * react.production.js
13
+ *
14
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
15
+ *
16
+ * This source code is licensed under the MIT license found in the
17
+ * LICENSE file in the root directory of this source tree.
18
+ */var iv;function o2(){if(iv)return Ge;iv=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),l=Symbol.for("react.consumer"),u=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),f=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),_=Symbol.iterator;function x($){return $===null||typeof $!="object"?null:($=_&&$[_]||$["@@iterator"],typeof $=="function"?$:null)}var w={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,v={};function S($,F,P){this.props=$,this.context=F,this.refs=v,this.updater=P||w}S.prototype.isReactComponent={},S.prototype.setState=function($,F){if(typeof $!="object"&&typeof $!="function"&&$!=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,$,F,"setState")},S.prototype.forceUpdate=function($){this.updater.enqueueForceUpdate(this,$,"forceUpdate")};function b(){}b.prototype=S.prototype;function y($,F,P){this.props=$,this.context=F,this.refs=v,this.updater=P||w}var E=y.prototype=new b;E.constructor=y,C(E,S.prototype),E.isPureReactComponent=!0;var N=Array.isArray;function T(){}var L={H:null,A:null,T:null,S:null},A=Object.prototype.hasOwnProperty;function R($,F,P){var ee=P.ref;return{$$typeof:e,type:$,key:F,ref:ee!==void 0?ee:null,props:P}}function M($,F){return R($.type,F,$.props)}function G($){return typeof $=="object"&&$!==null&&$.$$typeof===e}function W($){var F={"=":"=0",":":"=2"};return"$"+$.replace(/[=:]/g,function(P){return F[P]})}var O=/\/+/g;function U($,F){return typeof $=="object"&&$!==null&&$.key!=null?W(""+$.key):F.toString(36)}function V($){switch($.status){case"fulfilled":return $.value;case"rejected":throw $.reason;default:switch(typeof $.status=="string"?$.then(T,T):($.status="pending",$.then(function(F){$.status==="pending"&&($.status="fulfilled",$.value=F)},function(F){$.status==="pending"&&($.status="rejected",$.reason=F)})),$.status){case"fulfilled":return $.value;case"rejected":throw $.reason}}throw $}function z($,F,P,ee,J){var re=typeof $;(re==="undefined"||re==="boolean")&&($=null);var Y=!1;if($===null)Y=!0;else switch(re){case"bigint":case"string":case"number":Y=!0;break;case"object":switch($.$$typeof){case e:case t:Y=!0;break;case m:return Y=$._init,z(Y($._payload),F,P,ee,J)}}if(Y)return J=J($),Y=ee===""?"."+U($,0):ee,N(J)?(P="",Y!=null&&(P=Y.replace(O,"$&/")+"/"),z(J,F,P,"",function(ae){return ae})):J!=null&&(G(J)&&(J=M(J,P+(J.key==null||$&&$.key===J.key?"":(""+J.key).replace(O,"$&/")+"/")+Y)),F.push(J)),1;Y=0;var q=ee===""?".":ee+":";if(N($))for(var Z=0;Z<$.length;Z++)ee=$[Z],re=q+U(ee,Z),Y+=z(ee,F,P,re,J);else if(Z=x($),typeof Z=="function")for($=Z.call($),Z=0;!(ee=$.next()).done;)ee=ee.value,re=q+U(ee,Z++),Y+=z(ee,F,P,re,J);else if(re==="object"){if(typeof $.then=="function")return z(V($),F,P,ee,J);throw F=String($),Error("Objects are not valid as a React child (found: "+(F==="[object Object]"?"object with keys {"+Object.keys($).join(", ")+"}":F)+"). If you meant to render a collection of children, use an array instead.")}return Y}function X($,F,P){if($==null)return $;var ee=[],J=0;return z($,ee,"","",function(re){return F.call(P,re,J++)}),ee}function te($){if($._status===-1){var F=$._result;F=F(),F.then(function(P){($._status===0||$._status===-1)&&($._status=1,$._result=P)},function(P){($._status===0||$._status===-1)&&($._status=2,$._result=P)}),$._status===-1&&($._status=0,$._result=F)}if($._status===1)return $._result.default;throw $._result}var H=typeof reportError=="function"?reportError:function($){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var F=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof $=="object"&&$!==null&&typeof $.message=="string"?String($.message):String($),error:$});if(!window.dispatchEvent(F))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",$);return}console.error($)},I={map:X,forEach:function($,F,P){X($,function(){F.apply(this,arguments)},P)},count:function($){var F=0;return X($,function(){F++}),F},toArray:function($){return X($,function(F){return F})||[]},only:function($){if(!G($))throw Error("React.Children.only expected to receive a single React element child.");return $}};return Ge.Activity=p,Ge.Children=I,Ge.Component=S,Ge.Fragment=n,Ge.Profiler=a,Ge.PureComponent=y,Ge.StrictMode=s,Ge.Suspense=d,Ge.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=L,Ge.__COMPILER_RUNTIME={__proto__:null,c:function($){return L.H.useMemoCache($)}},Ge.cache=function($){return function(){return $.apply(null,arguments)}},Ge.cacheSignal=function(){return null},Ge.cloneElement=function($,F,P){if($==null)throw Error("The argument must be a React element, but you passed "+$+".");var ee=C({},$.props),J=$.key;if(F!=null)for(re in F.key!==void 0&&(J=""+F.key),F)!A.call(F,re)||re==="key"||re==="__self"||re==="__source"||re==="ref"&&F.ref===void 0||(ee[re]=F[re]);var re=arguments.length-2;if(re===1)ee.children=P;else if(1<re){for(var Y=Array(re),q=0;q<re;q++)Y[q]=arguments[q+2];ee.children=Y}return R($.type,J,ee)},Ge.createContext=function($){return $={$$typeof:u,_currentValue:$,_currentValue2:$,_threadCount:0,Provider:null,Consumer:null},$.Provider=$,$.Consumer={$$typeof:l,_context:$},$},Ge.createElement=function($,F,P){var ee,J={},re=null;if(F!=null)for(ee in F.key!==void 0&&(re=""+F.key),F)A.call(F,ee)&&ee!=="key"&&ee!=="__self"&&ee!=="__source"&&(J[ee]=F[ee]);var Y=arguments.length-2;if(Y===1)J.children=P;else if(1<Y){for(var q=Array(Y),Z=0;Z<Y;Z++)q[Z]=arguments[Z+2];J.children=q}if($&&$.defaultProps)for(ee in Y=$.defaultProps,Y)J[ee]===void 0&&(J[ee]=Y[ee]);return R($,re,J)},Ge.createRef=function(){return{current:null}},Ge.forwardRef=function($){return{$$typeof:c,render:$}},Ge.isValidElement=G,Ge.lazy=function($){return{$$typeof:m,_payload:{_status:-1,_result:$},_init:te}},Ge.memo=function($,F){return{$$typeof:f,type:$,compare:F===void 0?null:F}},Ge.startTransition=function($){var F=L.T,P={};L.T=P;try{var ee=$(),J=L.S;J!==null&&J(P,ee),typeof ee=="object"&&ee!==null&&typeof ee.then=="function"&&ee.then(T,H)}catch(re){H(re)}finally{F!==null&&P.types!==null&&(F.types=P.types),L.T=F}},Ge.unstable_useCacheRefresh=function(){return L.H.useCacheRefresh()},Ge.use=function($){return L.H.use($)},Ge.useActionState=function($,F,P){return L.H.useActionState($,F,P)},Ge.useCallback=function($,F){return L.H.useCallback($,F)},Ge.useContext=function($){return L.H.useContext($)},Ge.useDebugValue=function(){},Ge.useDeferredValue=function($,F){return L.H.useDeferredValue($,F)},Ge.useEffect=function($,F){return L.H.useEffect($,F)},Ge.useEffectEvent=function($){return L.H.useEffectEvent($)},Ge.useId=function(){return L.H.useId()},Ge.useImperativeHandle=function($,F,P){return L.H.useImperativeHandle($,F,P)},Ge.useInsertionEffect=function($,F){return L.H.useInsertionEffect($,F)},Ge.useLayoutEffect=function($,F){return L.H.useLayoutEffect($,F)},Ge.useMemo=function($,F){return L.H.useMemo($,F)},Ge.useOptimistic=function($,F){return L.H.useOptimistic($,F)},Ge.useReducer=function($,F,P){return L.H.useReducer($,F,P)},Ge.useRef=function($){return L.H.useRef($)},Ge.useState=function($){return L.H.useState($)},Ge.useSyncExternalStore=function($,F,P){return L.H.useSyncExternalStore($,F,P)},Ge.useTransition=function(){return L.H.useTransition()},Ge.version="19.2.4",Ge}var av;function Ou(){return av||(av=1,Ef.exports=o2()),Ef.exports}var D=Ou();const Vs=Ru(D),l2=s2({__proto__:null,default:Vs},[D]);var jf={exports:{}},$o={},Nf={exports:{}},Tf={};/**
19
+ * @license React
20
+ * scheduler.production.js
21
+ *
22
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
23
+ *
24
+ * This source code is licensed under the MIT license found in the
25
+ * LICENSE file in the root directory of this source tree.
26
+ */var ov;function c2(){return ov||(ov=1,(function(e){function t(z,X){var te=z.length;z.push(X);e:for(;0<te;){var H=te-1>>>1,I=z[H];if(0<a(I,X))z[H]=X,z[te]=I,te=H;else break e}}function n(z){return z.length===0?null:z[0]}function s(z){if(z.length===0)return null;var X=z[0],te=z.pop();if(te!==X){z[0]=te;e:for(var H=0,I=z.length,$=I>>>1;H<$;){var F=2*(H+1)-1,P=z[F],ee=F+1,J=z[ee];if(0>a(P,te))ee<I&&0>a(J,P)?(z[H]=J,z[ee]=te,H=ee):(z[H]=P,z[F]=te,H=F);else if(ee<I&&0>a(J,te))z[H]=J,z[ee]=te,H=ee;else break e}}return X}function a(z,X){var te=z.sortIndex-X.sortIndex;return te!==0?te:z.id-X.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,c=u.now();e.unstable_now=function(){return u.now()-c}}var d=[],f=[],m=1,p=null,_=3,x=!1,w=!1,C=!1,v=!1,S=typeof setTimeout=="function"?setTimeout:null,b=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;function E(z){for(var X=n(f);X!==null;){if(X.callback===null)s(f);else if(X.startTime<=z)s(f),X.sortIndex=X.expirationTime,t(d,X);else break;X=n(f)}}function N(z){if(C=!1,E(z),!w)if(n(d)!==null)w=!0,T||(T=!0,W());else{var X=n(f);X!==null&&V(N,X.startTime-z)}}var T=!1,L=-1,A=5,R=-1;function M(){return v?!0:!(e.unstable_now()-R<A)}function G(){if(v=!1,T){var z=e.unstable_now();R=z;var X=!0;try{e:{w=!1,C&&(C=!1,b(L),L=-1),x=!0;var te=_;try{t:{for(E(z),p=n(d);p!==null&&!(p.expirationTime>z&&M());){var H=p.callback;if(typeof H=="function"){p.callback=null,_=p.priorityLevel;var I=H(p.expirationTime<=z);if(z=e.unstable_now(),typeof I=="function"){p.callback=I,E(z),X=!0;break t}p===n(d)&&s(d),E(z)}else s(d);p=n(d)}if(p!==null)X=!0;else{var $=n(f);$!==null&&V(N,$.startTime-z),X=!1}}break e}finally{p=null,_=te,x=!1}X=void 0}}finally{X?W():T=!1}}}var W;if(typeof y=="function")W=function(){y(G)};else if(typeof MessageChannel<"u"){var O=new MessageChannel,U=O.port2;O.port1.onmessage=G,W=function(){U.postMessage(null)}}else W=function(){S(G,0)};function V(z,X){L=S(function(){z(e.unstable_now())},X)}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(z){z.callback=null},e.unstable_forceFrameRate=function(z){0>z||125<z?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):A=0<z?Math.floor(1e3/z):5},e.unstable_getCurrentPriorityLevel=function(){return _},e.unstable_next=function(z){switch(_){case 1:case 2:case 3:var X=3;break;default:X=_}var te=_;_=X;try{return z()}finally{_=te}},e.unstable_requestPaint=function(){v=!0},e.unstable_runWithPriority=function(z,X){switch(z){case 1:case 2:case 3:case 4:case 5:break;default:z=3}var te=_;_=z;try{return X()}finally{_=te}},e.unstable_scheduleCallback=function(z,X,te){var H=e.unstable_now();switch(typeof te=="object"&&te!==null?(te=te.delay,te=typeof te=="number"&&0<te?H+te:H):te=H,z){case 1:var I=-1;break;case 2:I=250;break;case 5:I=1073741823;break;case 4:I=1e4;break;default:I=5e3}return I=te+I,z={id:m++,callback:X,priorityLevel:z,startTime:te,expirationTime:I,sortIndex:-1},te>H?(z.sortIndex=te,t(f,z),n(d)===null&&z===n(f)&&(C?(b(L),L=-1):C=!0,V(N,te-H))):(z.sortIndex=I,t(d,z),w||x||(w=!0,T||(T=!0,W()))),z},e.unstable_shouldYield=M,e.unstable_wrapCallback=function(z){var X=_;return function(){var te=_;_=X;try{return z.apply(this,arguments)}finally{_=te}}}})(Tf)),Tf}var lv;function u2(){return lv||(lv=1,Nf.exports=c2()),Nf.exports}var Af={exports:{}},yn={};/**
27
+ * @license React
28
+ * react-dom.production.js
29
+ *
30
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
31
+ *
32
+ * This source code is licensed under the MIT license found in the
33
+ * LICENSE file in the root directory of this source tree.
34
+ */var cv;function d2(){if(cv)return yn;cv=1;var e=Ou();function t(d){var f="https://react.dev/errors/"+d;if(1<arguments.length){f+="?args[]="+encodeURIComponent(arguments[1]);for(var m=2;m<arguments.length;m++)f+="&args[]="+encodeURIComponent(arguments[m])}return"Minified React error #"+d+"; visit "+f+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function n(){}var s={d:{f:n,r:function(){throw Error(t(522))},D:n,C:n,L:n,m:n,X:n,S:n,M:n},p:0,findDOMNode:null},a=Symbol.for("react.portal");function l(d,f,m){var p=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:p==null?null:""+p,children:d,containerInfo:f,implementation:m}}var u=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(d,f){if(d==="font")return"";if(typeof f=="string")return f==="use-credentials"?f:""}return yn.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=s,yn.createPortal=function(d,f){var m=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!f||f.nodeType!==1&&f.nodeType!==9&&f.nodeType!==11)throw Error(t(299));return l(d,f,null,m)},yn.flushSync=function(d){var f=u.T,m=s.p;try{if(u.T=null,s.p=2,d)return d()}finally{u.T=f,s.p=m,s.d.f()}},yn.preconnect=function(d,f){typeof d=="string"&&(f?(f=f.crossOrigin,f=typeof f=="string"?f==="use-credentials"?f:"":void 0):f=null,s.d.C(d,f))},yn.prefetchDNS=function(d){typeof d=="string"&&s.d.D(d)},yn.preinit=function(d,f){if(typeof d=="string"&&f&&typeof f.as=="string"){var m=f.as,p=c(m,f.crossOrigin),_=typeof f.integrity=="string"?f.integrity:void 0,x=typeof f.fetchPriority=="string"?f.fetchPriority:void 0;m==="style"?s.d.S(d,typeof f.precedence=="string"?f.precedence:void 0,{crossOrigin:p,integrity:_,fetchPriority:x}):m==="script"&&s.d.X(d,{crossOrigin:p,integrity:_,fetchPriority:x,nonce:typeof f.nonce=="string"?f.nonce:void 0})}},yn.preinitModule=function(d,f){if(typeof d=="string")if(typeof f=="object"&&f!==null){if(f.as==null||f.as==="script"){var m=c(f.as,f.crossOrigin);s.d.M(d,{crossOrigin:m,integrity:typeof f.integrity=="string"?f.integrity:void 0,nonce:typeof f.nonce=="string"?f.nonce:void 0})}}else f==null&&s.d.M(d)},yn.preload=function(d,f){if(typeof d=="string"&&typeof f=="object"&&f!==null&&typeof f.as=="string"){var m=f.as,p=c(m,f.crossOrigin);s.d.L(d,m,{crossOrigin:p,integrity:typeof f.integrity=="string"?f.integrity:void 0,nonce:typeof f.nonce=="string"?f.nonce:void 0,type:typeof f.type=="string"?f.type:void 0,fetchPriority:typeof f.fetchPriority=="string"?f.fetchPriority:void 0,referrerPolicy:typeof f.referrerPolicy=="string"?f.referrerPolicy:void 0,imageSrcSet:typeof f.imageSrcSet=="string"?f.imageSrcSet:void 0,imageSizes:typeof f.imageSizes=="string"?f.imageSizes:void 0,media:typeof f.media=="string"?f.media:void 0})}},yn.preloadModule=function(d,f){if(typeof d=="string")if(f){var m=c(f.as,f.crossOrigin);s.d.m(d,{as:typeof f.as=="string"&&f.as!=="script"?f.as:void 0,crossOrigin:m,integrity:typeof f.integrity=="string"?f.integrity:void 0})}else s.d.m(d)},yn.requestFormReset=function(d){s.d.r(d)},yn.unstable_batchedUpdates=function(d,f){return d(f)},yn.useFormState=function(d,f,m){return u.H.useFormState(d,f,m)},yn.useFormStatus=function(){return u.H.useHostTransitionStatus()},yn.version="19.2.4",yn}var uv;function rS(){if(uv)return Af.exports;uv=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(),Af.exports=d2(),Af.exports}/**
35
+ * @license React
36
+ * react-dom-client.production.js
37
+ *
38
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
39
+ *
40
+ * This source code is licensed under the MIT license found in the
41
+ * LICENSE file in the root directory of this source tree.
42
+ */var dv;function h2(){if(dv)return $o;dv=1;var e=u2(),t=Ou(),n=rS();function s(r){var i="https://react.dev/errors/"+r;if(1<arguments.length){i+="?args[]="+encodeURIComponent(arguments[1]);for(var h=2;h<arguments.length;h++)i+="&args[]="+encodeURIComponent(arguments[h])}return"Minified React error #"+r+"; visit "+i+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function a(r){return!(!r||r.nodeType!==1&&r.nodeType!==9&&r.nodeType!==11)}function l(r){var i=r,h=r;if(r.alternate)for(;i.return;)i=i.return;else{r=i;do i=r,(i.flags&4098)!==0&&(h=i.return),r=i.return;while(r)}return i.tag===3?h:null}function u(r){if(r.tag===13){var i=r.memoizedState;if(i===null&&(r=r.alternate,r!==null&&(i=r.memoizedState)),i!==null)return i.dehydrated}return null}function c(r){if(r.tag===31){var i=r.memoizedState;if(i===null&&(r=r.alternate,r!==null&&(i=r.memoizedState)),i!==null)return i.dehydrated}return null}function d(r){if(l(r)!==r)throw Error(s(188))}function f(r){var i=r.alternate;if(!i){if(i=l(r),i===null)throw Error(s(188));return i!==r?null:r}for(var h=r,g=i;;){var k=h.return;if(k===null)break;var j=k.alternate;if(j===null){if(g=k.return,g!==null){h=g;continue}break}if(k.child===j.child){for(j=k.child;j;){if(j===h)return d(k),r;if(j===g)return d(k),i;j=j.sibling}throw Error(s(188))}if(h.return!==g.return)h=k,g=j;else{for(var B=!1,K=k.child;K;){if(K===h){B=!0,h=k,g=j;break}if(K===g){B=!0,g=k,h=j;break}K=K.sibling}if(!B){for(K=j.child;K;){if(K===h){B=!0,h=j,g=k;break}if(K===g){B=!0,g=j,h=k;break}K=K.sibling}if(!B)throw Error(s(189))}}if(h.alternate!==g)throw Error(s(190))}if(h.tag!==3)throw Error(s(188));return h.stateNode.current===h?r:i}function m(r){var i=r.tag;if(i===5||i===26||i===27||i===6)return r;for(r=r.child;r!==null;){if(i=m(r),i!==null)return i;r=r.sibling}return null}var p=Object.assign,_=Symbol.for("react.element"),x=Symbol.for("react.transitional.element"),w=Symbol.for("react.portal"),C=Symbol.for("react.fragment"),v=Symbol.for("react.strict_mode"),S=Symbol.for("react.profiler"),b=Symbol.for("react.consumer"),y=Symbol.for("react.context"),E=Symbol.for("react.forward_ref"),N=Symbol.for("react.suspense"),T=Symbol.for("react.suspense_list"),L=Symbol.for("react.memo"),A=Symbol.for("react.lazy"),R=Symbol.for("react.activity"),M=Symbol.for("react.memo_cache_sentinel"),G=Symbol.iterator;function W(r){return r===null||typeof r!="object"?null:(r=G&&r[G]||r["@@iterator"],typeof r=="function"?r:null)}var O=Symbol.for("react.client.reference");function U(r){if(r==null)return null;if(typeof r=="function")return r.$$typeof===O?null:r.displayName||r.name||null;if(typeof r=="string")return r;switch(r){case C:return"Fragment";case S:return"Profiler";case v:return"StrictMode";case N:return"Suspense";case T:return"SuspenseList";case R:return"Activity"}if(typeof r=="object")switch(r.$$typeof){case w:return"Portal";case y:return r.displayName||"Context";case b:return(r._context.displayName||"Context")+".Consumer";case E:var i=r.render;return r=r.displayName,r||(r=i.displayName||i.name||"",r=r!==""?"ForwardRef("+r+")":"ForwardRef"),r;case L:return i=r.displayName||null,i!==null?i:U(r.type)||"Memo";case A:i=r._payload,r=r._init;try{return U(r(i))}catch{}}return null}var V=Array.isArray,z=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,X=n.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,te={pending:!1,data:null,method:null,action:null},H=[],I=-1;function $(r){return{current:r}}function F(r){0>I||(r.current=H[I],H[I]=null,I--)}function P(r,i){I++,H[I]=r.current,r.current=i}var ee=$(null),J=$(null),re=$(null),Y=$(null);function q(r,i){switch(P(re,i),P(J,r),P(ee,null),i.nodeType){case 9:case 11:r=(r=i.documentElement)&&(r=r.namespaceURI)?Cy(r):0;break;default:if(r=i.tagName,i=i.namespaceURI)i=Cy(i),r=ky(i,r);else switch(r){case"svg":r=1;break;case"math":r=2;break;default:r=0}}F(ee),P(ee,r)}function Z(){F(ee),F(J),F(re)}function ae(r){r.memoizedState!==null&&P(Y,r);var i=ee.current,h=ky(i,r.type);i!==h&&(P(J,r),P(ee,h))}function se(r){J.current===r&&(F(ee),F(J)),Y.current===r&&(F(Y),Mo._currentValue=te)}var oe,je;function Le(r){if(oe===void 0)try{throw Error()}catch(h){var i=h.stack.trim().match(/\n( *(at )?)/);oe=i&&i[1]||"",je=-1<h.stack.indexOf(`
43
+ at`)?" (<anonymous>)":-1<h.stack.indexOf("@")?"@unknown:0:0":""}return`
44
+ `+oe+r+je}var De=!1;function Re(r,i){if(!r||De)return"";De=!0;var h=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var g={DetermineComponentFrameRoot:function(){try{if(i){var be=function(){throw Error()};if(Object.defineProperty(be.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(be,[])}catch(fe){var he=fe}Reflect.construct(r,[],be)}else{try{be.call()}catch(fe){he=fe}r.call(be.prototype)}}else{try{throw Error()}catch(fe){he=fe}(be=r())&&typeof be.catch=="function"&&be.catch(function(){})}}catch(fe){if(fe&&he&&typeof fe.stack=="string")return[fe.stack,he.stack]}return[null,null]}};g.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var k=Object.getOwnPropertyDescriptor(g.DetermineComponentFrameRoot,"name");k&&k.configurable&&Object.defineProperty(g.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var j=g.DetermineComponentFrameRoot(),B=j[0],K=j[1];if(B&&K){var ne=B.split(`
45
+ `),de=K.split(`
46
+ `);for(k=g=0;g<ne.length&&!ne[g].includes("DetermineComponentFrameRoot");)g++;for(;k<de.length&&!de[k].includes("DetermineComponentFrameRoot");)k++;if(g===ne.length||k===de.length)for(g=ne.length-1,k=de.length-1;1<=g&&0<=k&&ne[g]!==de[k];)k--;for(;1<=g&&0<=k;g--,k--)if(ne[g]!==de[k]){if(g!==1||k!==1)do if(g--,k--,0>k||ne[g]!==de[k]){var xe=`
47
+ `+ne[g].replace(" at new "," at ");return r.displayName&&xe.includes("<anonymous>")&&(xe=xe.replace("<anonymous>",r.displayName)),xe}while(1<=g&&0<=k);break}}}finally{De=!1,Error.prepareStackTrace=h}return(h=r?r.displayName||r.name:"")?Le(h):""}function Te(r,i){switch(r.tag){case 26:case 27:case 5:return Le(r.type);case 16:return Le("Lazy");case 13:return r.child!==i&&i!==null?Le("Suspense Fallback"):Le("Suspense");case 19:return Le("SuspenseList");case 0:case 15:return Re(r.type,!1);case 11:return Re(r.type.render,!1);case 1:return Re(r.type,!0);case 31:return Le("Activity");default:return""}}function Ae(r){try{var i="",h=null;do i+=Te(r,h),h=r,r=r.return;while(r);return i}catch(g){return`
48
+ Error generating stack: `+g.message+`
49
+ `+g.stack}}var pe=Object.prototype.hasOwnProperty,ce=e.unstable_scheduleCallback,Se=e.unstable_cancelCallback,Ze=e.unstable_shouldYield,_t=e.unstable_requestPaint,dt=e.unstable_now,tn=e.unstable_getCurrentPriorityLevel,ge=e.unstable_ImmediatePriority,Ce=e.unstable_UserBlockingPriority,Ie=e.unstable_NormalPriority,Fe=e.unstable_LowPriority,Ve=e.unstable_IdlePriority,St=e.log,Ye=e.unstable_setDisableYieldValue,wt=null,ct=null;function nn(r){if(typeof St=="function"&&Ye(r),ct&&typeof ct.setStrictMode=="function")try{ct.setStrictMode(wt,r)}catch{}}var ht=Math.clz32?Math.clz32:ot,jn=Math.log,_n=Math.LN2;function ot(r){return r>>>=0,r===0?32:31-(jn(r)/_n|0)|0}var fr=256,Ii=262144,Pi=4194304;function kr(r){var i=r&42;if(i!==0)return i;switch(r&-r){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 r&261888;case 262144:case 524288:case 1048576:case 2097152:return r&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return r&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return r}}function Bi(r,i,h){var g=r.pendingLanes;if(g===0)return 0;var k=0,j=r.suspendedLanes,B=r.pingedLanes;r=r.warmLanes;var K=g&134217727;return K!==0?(g=K&~j,g!==0?k=kr(g):(B&=K,B!==0?k=kr(B):h||(h=K&~r,h!==0&&(k=kr(h))))):(K=g&~j,K!==0?k=kr(K):B!==0?k=kr(B):h||(h=g&~r,h!==0&&(k=kr(h)))),k===0?0:i!==0&&i!==k&&(i&j)===0&&(j=k&-k,h=i&-i,j>=h||j===32&&(h&4194048)!==0)?i:k}function Js(r,i){return(r.pendingLanes&~(r.suspendedLanes&~r.pingedLanes)&i)===0}function Ka(r,i){switch(r){case 1:case 2:case 4:case 8:case 64:return i+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 i+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 jl(){var r=Pi;return Pi<<=1,(Pi&62914560)===0&&(Pi=4194304),r}function zi(r){for(var i=[],h=0;31>h;h++)i.push(r);return i}function ps(r,i){r.pendingLanes|=i,i!==268435456&&(r.suspendedLanes=0,r.pingedLanes=0,r.warmLanes=0)}function ye(r,i,h,g,k,j){var B=r.pendingLanes;r.pendingLanes=h,r.suspendedLanes=0,r.pingedLanes=0,r.warmLanes=0,r.expiredLanes&=h,r.entangledLanes&=h,r.errorRecoveryDisabledLanes&=h,r.shellSuspendCounter=0;var K=r.entanglements,ne=r.expirationTimes,de=r.hiddenUpdates;for(h=B&~h;0<h;){var xe=31-ht(h),be=1<<xe;K[xe]=0,ne[xe]=-1;var he=de[xe];if(he!==null)for(de[xe]=null,xe=0;xe<he.length;xe++){var fe=he[xe];fe!==null&&(fe.lane&=-536870913)}h&=~be}g!==0&&_e(r,g,0),j!==0&&k===0&&r.tag!==0&&(r.suspendedLanes|=j&~(B&~i))}function _e(r,i,h){r.pendingLanes|=i,r.suspendedLanes&=~i;var g=31-ht(i);r.entangledLanes|=i,r.entanglements[g]=r.entanglements[g]|1073741824|h&261930}function Oe(r,i){var h=r.entangledLanes|=i;for(r=r.entanglements;h;){var g=31-ht(h),k=1<<g;k&i|r[g]&i&&(r[g]|=i),h&=~k}}function $e(r,i){var h=i&-i;return h=(h&42)!==0?1:et(h),(h&(r.suspendedLanes|i))!==0?0:h}function et(r){switch(r){case 2:r=1;break;case 8:r=4;break;case 32:r=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:r=128;break;case 268435456:r=134217728;break;default:r=0}return r}function We(r){return r&=-r,2<r?8<r?(r&134217727)!==0?32:268435456:8:2}function ft(){var r=X.p;return r!==0?r:(r=window.event,r===void 0?32:Ky(r.type))}function fn(r,i){var h=X.p;try{return X.p=r,i()}finally{X.p=h}}var Pt=Math.random().toString(36).slice(2),yt="__reactFiber$"+Pt,Nn="__reactProps$"+Pt,$i="__reactContainer$"+Pt,fd="__reactEvents$"+Pt,FC="__reactListeners$"+Pt,VC="__reactHandles$"+Pt,dg="__reactResources$"+Pt,Ya="__reactMarker$"+Pt;function md(r){delete r[yt],delete r[Nn],delete r[fd],delete r[FC],delete r[VC]}function Hi(r){var i=r[yt];if(i)return i;for(var h=r.parentNode;h;){if(i=h[$i]||h[yt]){if(h=i.alternate,i.child!==null||h!==null&&h.child!==null)for(r=Dy(r);r!==null;){if(h=r[yt])return h;r=Dy(r)}return i}r=h,h=r.parentNode}return null}function Ui(r){if(r=r[yt]||r[$i]){var i=r.tag;if(i===5||i===6||i===13||i===31||i===26||i===27||i===3)return r}return null}function Xa(r){var i=r.tag;if(i===5||i===26||i===27||i===6)return r.stateNode;throw Error(s(33))}function Fi(r){var i=r[dg];return i||(i=r[dg]={hoistableStyles:new Map,hoistableScripts:new Map}),i}function cn(r){r[Ya]=!0}var hg=new Set,fg={};function Zs(r,i){Vi(r,i),Vi(r+"Capture",i)}function Vi(r,i){for(fg[r]=i,r=0;r<i.length;r++)hg.add(i[r])}var GC=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]*$"),mg={},pg={};function WC(r){return pe.call(pg,r)?!0:pe.call(mg,r)?!1:GC.test(r)?pg[r]=!0:(mg[r]=!0,!1)}function Nl(r,i,h){if(WC(i))if(h===null)r.removeAttribute(i);else{switch(typeof h){case"undefined":case"function":case"symbol":r.removeAttribute(i);return;case"boolean":var g=i.toLowerCase().slice(0,5);if(g!=="data-"&&g!=="aria-"){r.removeAttribute(i);return}}r.setAttribute(i,""+h)}}function Tl(r,i,h){if(h===null)r.removeAttribute(i);else{switch(typeof h){case"undefined":case"function":case"symbol":case"boolean":r.removeAttribute(i);return}r.setAttribute(i,""+h)}}function $r(r,i,h,g){if(g===null)r.removeAttribute(h);else{switch(typeof g){case"undefined":case"function":case"symbol":case"boolean":r.removeAttribute(h);return}r.setAttributeNS(i,h,""+g)}}function Xn(r){switch(typeof r){case"bigint":case"boolean":case"number":case"string":case"undefined":return r;case"object":return r;default:return""}}function gg(r){var i=r.type;return(r=r.nodeName)&&r.toLowerCase()==="input"&&(i==="checkbox"||i==="radio")}function qC(r,i,h){var g=Object.getOwnPropertyDescriptor(r.constructor.prototype,i);if(!r.hasOwnProperty(i)&&typeof g<"u"&&typeof g.get=="function"&&typeof g.set=="function"){var k=g.get,j=g.set;return Object.defineProperty(r,i,{configurable:!0,get:function(){return k.call(this)},set:function(B){h=""+B,j.call(this,B)}}),Object.defineProperty(r,i,{enumerable:g.enumerable}),{getValue:function(){return h},setValue:function(B){h=""+B},stopTracking:function(){r._valueTracker=null,delete r[i]}}}}function pd(r){if(!r._valueTracker){var i=gg(r)?"checked":"value";r._valueTracker=qC(r,i,""+r[i])}}function xg(r){if(!r)return!1;var i=r._valueTracker;if(!i)return!0;var h=i.getValue(),g="";return r&&(g=gg(r)?r.checked?"true":"false":r.value),r=g,r!==h?(i.setValue(r),!0):!1}function Al(r){if(r=r||(typeof document<"u"?document:void 0),typeof r>"u")return null;try{return r.activeElement||r.body}catch{return r.body}}var KC=/[\n"\\]/g;function Qn(r){return r.replace(KC,function(i){return"\\"+i.charCodeAt(0).toString(16)+" "})}function gd(r,i,h,g,k,j,B,K){r.name="",B!=null&&typeof B!="function"&&typeof B!="symbol"&&typeof B!="boolean"?r.type=B:r.removeAttribute("type"),i!=null?B==="number"?(i===0&&r.value===""||r.value!=i)&&(r.value=""+Xn(i)):r.value!==""+Xn(i)&&(r.value=""+Xn(i)):B!=="submit"&&B!=="reset"||r.removeAttribute("value"),i!=null?xd(r,B,Xn(i)):h!=null?xd(r,B,Xn(h)):g!=null&&r.removeAttribute("value"),k==null&&j!=null&&(r.defaultChecked=!!j),k!=null&&(r.checked=k&&typeof k!="function"&&typeof k!="symbol"),K!=null&&typeof K!="function"&&typeof K!="symbol"&&typeof K!="boolean"?r.name=""+Xn(K):r.removeAttribute("name")}function _g(r,i,h,g,k,j,B,K){if(j!=null&&typeof j!="function"&&typeof j!="symbol"&&typeof j!="boolean"&&(r.type=j),i!=null||h!=null){if(!(j!=="submit"&&j!=="reset"||i!=null)){pd(r);return}h=h!=null?""+Xn(h):"",i=i!=null?""+Xn(i):h,K||i===r.value||(r.value=i),r.defaultValue=i}g=g??k,g=typeof g!="function"&&typeof g!="symbol"&&!!g,r.checked=K?r.checked:!!g,r.defaultChecked=!!g,B!=null&&typeof B!="function"&&typeof B!="symbol"&&typeof B!="boolean"&&(r.name=B),pd(r)}function xd(r,i,h){i==="number"&&Al(r.ownerDocument)===r||r.defaultValue===""+h||(r.defaultValue=""+h)}function Gi(r,i,h,g){if(r=r.options,i){i={};for(var k=0;k<h.length;k++)i["$"+h[k]]=!0;for(h=0;h<r.length;h++)k=i.hasOwnProperty("$"+r[h].value),r[h].selected!==k&&(r[h].selected=k),k&&g&&(r[h].defaultSelected=!0)}else{for(h=""+Xn(h),i=null,k=0;k<r.length;k++){if(r[k].value===h){r[k].selected=!0,g&&(r[k].defaultSelected=!0);return}i!==null||r[k].disabled||(i=r[k])}i!==null&&(i.selected=!0)}}function yg(r,i,h){if(i!=null&&(i=""+Xn(i),i!==r.value&&(r.value=i),h==null)){r.defaultValue!==i&&(r.defaultValue=i);return}r.defaultValue=h!=null?""+Xn(h):""}function vg(r,i,h,g){if(i==null){if(g!=null){if(h!=null)throw Error(s(92));if(V(g)){if(1<g.length)throw Error(s(93));g=g[0]}h=g}h==null&&(h=""),i=h}h=Xn(i),r.defaultValue=h,g=r.textContent,g===h&&g!==""&&g!==null&&(r.value=g),pd(r)}function Wi(r,i){if(i){var h=r.firstChild;if(h&&h===r.lastChild&&h.nodeType===3){h.nodeValue=i;return}}r.textContent=i}var YC=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 bg(r,i,h){var g=i.indexOf("--")===0;h==null||typeof h=="boolean"||h===""?g?r.setProperty(i,""):i==="float"?r.cssFloat="":r[i]="":g?r.setProperty(i,h):typeof h!="number"||h===0||YC.has(i)?i==="float"?r.cssFloat=h:r[i]=(""+h).trim():r[i]=h+"px"}function Sg(r,i,h){if(i!=null&&typeof i!="object")throw Error(s(62));if(r=r.style,h!=null){for(var g in h)!h.hasOwnProperty(g)||i!=null&&i.hasOwnProperty(g)||(g.indexOf("--")===0?r.setProperty(g,""):g==="float"?r.cssFloat="":r[g]="");for(var k in i)g=i[k],i.hasOwnProperty(k)&&h[k]!==g&&bg(r,k,g)}else for(var j in i)i.hasOwnProperty(j)&&bg(r,j,i[j])}function _d(r){if(r.indexOf("-")===-1)return!1;switch(r){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 XC=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"]]),QC=/^[\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 Ll(r){return QC.test(""+r)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":r}function Hr(){}var yd=null;function vd(r){return r=r.target||r.srcElement||window,r.correspondingUseElement&&(r=r.correspondingUseElement),r.nodeType===3?r.parentNode:r}var qi=null,Ki=null;function wg(r){var i=Ui(r);if(i&&(r=i.stateNode)){var h=r[Nn]||null;e:switch(r=i.stateNode,i.type){case"input":if(gd(r,h.value,h.defaultValue,h.defaultValue,h.checked,h.defaultChecked,h.type,h.name),i=h.name,h.type==="radio"&&i!=null){for(h=r;h.parentNode;)h=h.parentNode;for(h=h.querySelectorAll('input[name="'+Qn(""+i)+'"][type="radio"]'),i=0;i<h.length;i++){var g=h[i];if(g!==r&&g.form===r.form){var k=g[Nn]||null;if(!k)throw Error(s(90));gd(g,k.value,k.defaultValue,k.defaultValue,k.checked,k.defaultChecked,k.type,k.name)}}for(i=0;i<h.length;i++)g=h[i],g.form===r.form&&xg(g)}break e;case"textarea":yg(r,h.value,h.defaultValue);break e;case"select":i=h.value,i!=null&&Gi(r,!!h.multiple,i,!1)}}}var bd=!1;function Cg(r,i,h){if(bd)return r(i,h);bd=!0;try{var g=r(i);return g}finally{if(bd=!1,(qi!==null||Ki!==null)&&(_c(),qi&&(i=qi,r=Ki,Ki=qi=null,wg(i),r)))for(i=0;i<r.length;i++)wg(r[i])}}function Qa(r,i){var h=r.stateNode;if(h===null)return null;var g=h[Nn]||null;if(g===null)return null;h=g[i];e:switch(i){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(g=!g.disabled)||(r=r.type,g=!(r==="button"||r==="input"||r==="select"||r==="textarea")),r=!g;break e;default:r=!1}if(r)return null;if(h&&typeof h!="function")throw Error(s(231,i,typeof h));return h}var Ur=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Sd=!1;if(Ur)try{var Ja={};Object.defineProperty(Ja,"passive",{get:function(){Sd=!0}}),window.addEventListener("test",Ja,Ja),window.removeEventListener("test",Ja,Ja)}catch{Sd=!1}var gs=null,wd=null,Dl=null;function kg(){if(Dl)return Dl;var r,i=wd,h=i.length,g,k="value"in gs?gs.value:gs.textContent,j=k.length;for(r=0;r<h&&i[r]===k[r];r++);var B=h-r;for(g=1;g<=B&&i[h-g]===k[j-g];g++);return Dl=k.slice(r,1<g?1-g:void 0)}function Rl(r){var i=r.keyCode;return"charCode"in r?(r=r.charCode,r===0&&i===13&&(r=13)):r=i,r===10&&(r=13),32<=r||r===13?r:0}function Ol(){return!0}function Eg(){return!1}function Tn(r){function i(h,g,k,j,B){this._reactName=h,this._targetInst=k,this.type=g,this.nativeEvent=j,this.target=B,this.currentTarget=null;for(var K in r)r.hasOwnProperty(K)&&(h=r[K],this[K]=h?h(j):j[K]);return this.isDefaultPrevented=(j.defaultPrevented!=null?j.defaultPrevented:j.returnValue===!1)?Ol:Eg,this.isPropagationStopped=Eg,this}return p(i.prototype,{preventDefault:function(){this.defaultPrevented=!0;var h=this.nativeEvent;h&&(h.preventDefault?h.preventDefault():typeof h.returnValue!="unknown"&&(h.returnValue=!1),this.isDefaultPrevented=Ol)},stopPropagation:function(){var h=this.nativeEvent;h&&(h.stopPropagation?h.stopPropagation():typeof h.cancelBubble!="unknown"&&(h.cancelBubble=!0),this.isPropagationStopped=Ol)},persist:function(){},isPersistent:Ol}),i}var ei={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(r){return r.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Ml=Tn(ei),Za=p({},ei,{view:0,detail:0}),JC=Tn(Za),Cd,kd,eo,Il=p({},Za,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:jd,button:0,buttons:0,relatedTarget:function(r){return r.relatedTarget===void 0?r.fromElement===r.srcElement?r.toElement:r.fromElement:r.relatedTarget},movementX:function(r){return"movementX"in r?r.movementX:(r!==eo&&(eo&&r.type==="mousemove"?(Cd=r.screenX-eo.screenX,kd=r.screenY-eo.screenY):kd=Cd=0,eo=r),Cd)},movementY:function(r){return"movementY"in r?r.movementY:kd}}),jg=Tn(Il),ZC=p({},Il,{dataTransfer:0}),ek=Tn(ZC),tk=p({},Za,{relatedTarget:0}),Ed=Tn(tk),nk=p({},ei,{animationName:0,elapsedTime:0,pseudoElement:0}),rk=Tn(nk),sk=p({},ei,{clipboardData:function(r){return"clipboardData"in r?r.clipboardData:window.clipboardData}}),ik=Tn(sk),ak=p({},ei,{data:0}),Ng=Tn(ak),ok={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},lk={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"},ck={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function uk(r){var i=this.nativeEvent;return i.getModifierState?i.getModifierState(r):(r=ck[r])?!!i[r]:!1}function jd(){return uk}var dk=p({},Za,{key:function(r){if(r.key){var i=ok[r.key]||r.key;if(i!=="Unidentified")return i}return r.type==="keypress"?(r=Rl(r),r===13?"Enter":String.fromCharCode(r)):r.type==="keydown"||r.type==="keyup"?lk[r.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:jd,charCode:function(r){return r.type==="keypress"?Rl(r):0},keyCode:function(r){return r.type==="keydown"||r.type==="keyup"?r.keyCode:0},which:function(r){return r.type==="keypress"?Rl(r):r.type==="keydown"||r.type==="keyup"?r.keyCode:0}}),hk=Tn(dk),fk=p({},Il,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Tg=Tn(fk),mk=p({},Za,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:jd}),pk=Tn(mk),gk=p({},ei,{propertyName:0,elapsedTime:0,pseudoElement:0}),xk=Tn(gk),_k=p({},Il,{deltaX:function(r){return"deltaX"in r?r.deltaX:"wheelDeltaX"in r?-r.wheelDeltaX:0},deltaY:function(r){return"deltaY"in r?r.deltaY:"wheelDeltaY"in r?-r.wheelDeltaY:"wheelDelta"in r?-r.wheelDelta:0},deltaZ:0,deltaMode:0}),yk=Tn(_k),vk=p({},ei,{newState:0,oldState:0}),bk=Tn(vk),Sk=[9,13,27,32],Nd=Ur&&"CompositionEvent"in window,to=null;Ur&&"documentMode"in document&&(to=document.documentMode);var wk=Ur&&"TextEvent"in window&&!to,Ag=Ur&&(!Nd||to&&8<to&&11>=to),Lg=" ",Dg=!1;function Rg(r,i){switch(r){case"keyup":return Sk.indexOf(i.keyCode)!==-1;case"keydown":return i.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Og(r){return r=r.detail,typeof r=="object"&&"data"in r?r.data:null}var Yi=!1;function Ck(r,i){switch(r){case"compositionend":return Og(i);case"keypress":return i.which!==32?null:(Dg=!0,Lg);case"textInput":return r=i.data,r===Lg&&Dg?null:r;default:return null}}function kk(r,i){if(Yi)return r==="compositionend"||!Nd&&Rg(r,i)?(r=kg(),Dl=wd=gs=null,Yi=!1,r):null;switch(r){case"paste":return null;case"keypress":if(!(i.ctrlKey||i.altKey||i.metaKey)||i.ctrlKey&&i.altKey){if(i.char&&1<i.char.length)return i.char;if(i.which)return String.fromCharCode(i.which)}return null;case"compositionend":return Ag&&i.locale!=="ko"?null:i.data;default:return null}}var Ek={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 Mg(r){var i=r&&r.nodeName&&r.nodeName.toLowerCase();return i==="input"?!!Ek[r.type]:i==="textarea"}function Ig(r,i,h,g){qi?Ki?Ki.push(g):Ki=[g]:qi=g,i=kc(i,"onChange"),0<i.length&&(h=new Ml("onChange","change",null,h,g),r.push({event:h,listeners:i}))}var no=null,ro=null;function jk(r){_y(r,0)}function Pl(r){var i=Xa(r);if(xg(i))return r}function Pg(r,i){if(r==="change")return i}var Bg=!1;if(Ur){var Td;if(Ur){var Ad="oninput"in document;if(!Ad){var zg=document.createElement("div");zg.setAttribute("oninput","return;"),Ad=typeof zg.oninput=="function"}Td=Ad}else Td=!1;Bg=Td&&(!document.documentMode||9<document.documentMode)}function $g(){no&&(no.detachEvent("onpropertychange",Hg),ro=no=null)}function Hg(r){if(r.propertyName==="value"&&Pl(ro)){var i=[];Ig(i,ro,r,vd(r)),Cg(jk,i)}}function Nk(r,i,h){r==="focusin"?($g(),no=i,ro=h,no.attachEvent("onpropertychange",Hg)):r==="focusout"&&$g()}function Tk(r){if(r==="selectionchange"||r==="keyup"||r==="keydown")return Pl(ro)}function Ak(r,i){if(r==="click")return Pl(i)}function Lk(r,i){if(r==="input"||r==="change")return Pl(i)}function Dk(r,i){return r===i&&(r!==0||1/r===1/i)||r!==r&&i!==i}var Bn=typeof Object.is=="function"?Object.is:Dk;function so(r,i){if(Bn(r,i))return!0;if(typeof r!="object"||r===null||typeof i!="object"||i===null)return!1;var h=Object.keys(r),g=Object.keys(i);if(h.length!==g.length)return!1;for(g=0;g<h.length;g++){var k=h[g];if(!pe.call(i,k)||!Bn(r[k],i[k]))return!1}return!0}function Ug(r){for(;r&&r.firstChild;)r=r.firstChild;return r}function Fg(r,i){var h=Ug(r);r=0;for(var g;h;){if(h.nodeType===3){if(g=r+h.textContent.length,r<=i&&g>=i)return{node:h,offset:i-r};r=g}e:{for(;h;){if(h.nextSibling){h=h.nextSibling;break e}h=h.parentNode}h=void 0}h=Ug(h)}}function Vg(r,i){return r&&i?r===i?!0:r&&r.nodeType===3?!1:i&&i.nodeType===3?Vg(r,i.parentNode):"contains"in r?r.contains(i):r.compareDocumentPosition?!!(r.compareDocumentPosition(i)&16):!1:!1}function Gg(r){r=r!=null&&r.ownerDocument!=null&&r.ownerDocument.defaultView!=null?r.ownerDocument.defaultView:window;for(var i=Al(r.document);i instanceof r.HTMLIFrameElement;){try{var h=typeof i.contentWindow.location.href=="string"}catch{h=!1}if(h)r=i.contentWindow;else break;i=Al(r.document)}return i}function Ld(r){var i=r&&r.nodeName&&r.nodeName.toLowerCase();return i&&(i==="input"&&(r.type==="text"||r.type==="search"||r.type==="tel"||r.type==="url"||r.type==="password")||i==="textarea"||r.contentEditable==="true")}var Rk=Ur&&"documentMode"in document&&11>=document.documentMode,Xi=null,Dd=null,io=null,Rd=!1;function Wg(r,i,h){var g=h.window===h?h.document:h.nodeType===9?h:h.ownerDocument;Rd||Xi==null||Xi!==Al(g)||(g=Xi,"selectionStart"in g&&Ld(g)?g={start:g.selectionStart,end:g.selectionEnd}:(g=(g.ownerDocument&&g.ownerDocument.defaultView||window).getSelection(),g={anchorNode:g.anchorNode,anchorOffset:g.anchorOffset,focusNode:g.focusNode,focusOffset:g.focusOffset}),io&&so(io,g)||(io=g,g=kc(Dd,"onSelect"),0<g.length&&(i=new Ml("onSelect","select",null,i,h),r.push({event:i,listeners:g}),i.target=Xi)))}function ti(r,i){var h={};return h[r.toLowerCase()]=i.toLowerCase(),h["Webkit"+r]="webkit"+i,h["Moz"+r]="moz"+i,h}var Qi={animationend:ti("Animation","AnimationEnd"),animationiteration:ti("Animation","AnimationIteration"),animationstart:ti("Animation","AnimationStart"),transitionrun:ti("Transition","TransitionRun"),transitionstart:ti("Transition","TransitionStart"),transitioncancel:ti("Transition","TransitionCancel"),transitionend:ti("Transition","TransitionEnd")},Od={},qg={};Ur&&(qg=document.createElement("div").style,"AnimationEvent"in window||(delete Qi.animationend.animation,delete Qi.animationiteration.animation,delete Qi.animationstart.animation),"TransitionEvent"in window||delete Qi.transitionend.transition);function ni(r){if(Od[r])return Od[r];if(!Qi[r])return r;var i=Qi[r],h;for(h in i)if(i.hasOwnProperty(h)&&h in qg)return Od[r]=i[h];return r}var Kg=ni("animationend"),Yg=ni("animationiteration"),Xg=ni("animationstart"),Ok=ni("transitionrun"),Mk=ni("transitionstart"),Ik=ni("transitioncancel"),Qg=ni("transitionend"),Jg=new Map,Md="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(" ");Md.push("scrollEnd");function mr(r,i){Jg.set(r,i),Zs(i,[r])}var Bl=typeof reportError=="function"?reportError:function(r){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var i=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(i))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",r);return}console.error(r)},Jn=[],Ji=0,Id=0;function zl(){for(var r=Ji,i=Id=Ji=0;i<r;){var h=Jn[i];Jn[i++]=null;var g=Jn[i];Jn[i++]=null;var k=Jn[i];Jn[i++]=null;var j=Jn[i];if(Jn[i++]=null,g!==null&&k!==null){var B=g.pending;B===null?k.next=k:(k.next=B.next,B.next=k),g.pending=k}j!==0&&Zg(h,k,j)}}function $l(r,i,h,g){Jn[Ji++]=r,Jn[Ji++]=i,Jn[Ji++]=h,Jn[Ji++]=g,Id|=g,r.lanes|=g,r=r.alternate,r!==null&&(r.lanes|=g)}function Pd(r,i,h,g){return $l(r,i,h,g),Hl(r)}function ri(r,i){return $l(r,null,null,i),Hl(r)}function Zg(r,i,h){r.lanes|=h;var g=r.alternate;g!==null&&(g.lanes|=h);for(var k=!1,j=r.return;j!==null;)j.childLanes|=h,g=j.alternate,g!==null&&(g.childLanes|=h),j.tag===22&&(r=j.stateNode,r===null||r._visibility&1||(k=!0)),r=j,j=j.return;return r.tag===3?(j=r.stateNode,k&&i!==null&&(k=31-ht(h),r=j.hiddenUpdates,g=r[k],g===null?r[k]=[i]:g.push(i),i.lane=h|536870912),j):null}function Hl(r){if(50<No)throw No=0,Wh=null,Error(s(185));for(var i=r.return;i!==null;)r=i,i=r.return;return r.tag===3?r.stateNode:null}var Zi={};function Pk(r,i,h,g){this.tag=r,this.key=h,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=i,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=g,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function zn(r,i,h,g){return new Pk(r,i,h,g)}function Bd(r){return r=r.prototype,!(!r||!r.isReactComponent)}function Fr(r,i){var h=r.alternate;return h===null?(h=zn(r.tag,i,r.key,r.mode),h.elementType=r.elementType,h.type=r.type,h.stateNode=r.stateNode,h.alternate=r,r.alternate=h):(h.pendingProps=i,h.type=r.type,h.flags=0,h.subtreeFlags=0,h.deletions=null),h.flags=r.flags&65011712,h.childLanes=r.childLanes,h.lanes=r.lanes,h.child=r.child,h.memoizedProps=r.memoizedProps,h.memoizedState=r.memoizedState,h.updateQueue=r.updateQueue,i=r.dependencies,h.dependencies=i===null?null:{lanes:i.lanes,firstContext:i.firstContext},h.sibling=r.sibling,h.index=r.index,h.ref=r.ref,h.refCleanup=r.refCleanup,h}function ex(r,i){r.flags&=65011714;var h=r.alternate;return h===null?(r.childLanes=0,r.lanes=i,r.child=null,r.subtreeFlags=0,r.memoizedProps=null,r.memoizedState=null,r.updateQueue=null,r.dependencies=null,r.stateNode=null):(r.childLanes=h.childLanes,r.lanes=h.lanes,r.child=h.child,r.subtreeFlags=0,r.deletions=null,r.memoizedProps=h.memoizedProps,r.memoizedState=h.memoizedState,r.updateQueue=h.updateQueue,r.type=h.type,i=h.dependencies,r.dependencies=i===null?null:{lanes:i.lanes,firstContext:i.firstContext}),r}function Ul(r,i,h,g,k,j){var B=0;if(g=r,typeof r=="function")Bd(r)&&(B=1);else if(typeof r=="string")B=UE(r,h,ee.current)?26:r==="html"||r==="head"||r==="body"?27:5;else e:switch(r){case R:return r=zn(31,h,i,k),r.elementType=R,r.lanes=j,r;case C:return si(h.children,k,j,i);case v:B=8,k|=24;break;case S:return r=zn(12,h,i,k|2),r.elementType=S,r.lanes=j,r;case N:return r=zn(13,h,i,k),r.elementType=N,r.lanes=j,r;case T:return r=zn(19,h,i,k),r.elementType=T,r.lanes=j,r;default:if(typeof r=="object"&&r!==null)switch(r.$$typeof){case y:B=10;break e;case b:B=9;break e;case E:B=11;break e;case L:B=14;break e;case A:B=16,g=null;break e}B=29,h=Error(s(130,r===null?"null":typeof r,"")),g=null}return i=zn(B,h,i,k),i.elementType=r,i.type=g,i.lanes=j,i}function si(r,i,h,g){return r=zn(7,r,g,i),r.lanes=h,r}function zd(r,i,h){return r=zn(6,r,null,i),r.lanes=h,r}function tx(r){var i=zn(18,null,null,0);return i.stateNode=r,i}function $d(r,i,h){return i=zn(4,r.children!==null?r.children:[],r.key,i),i.lanes=h,i.stateNode={containerInfo:r.containerInfo,pendingChildren:null,implementation:r.implementation},i}var nx=new WeakMap;function Zn(r,i){if(typeof r=="object"&&r!==null){var h=nx.get(r);return h!==void 0?h:(i={value:r,source:i,stack:Ae(i)},nx.set(r,i),i)}return{value:r,source:i,stack:Ae(i)}}var ea=[],ta=0,Fl=null,ao=0,er=[],tr=0,xs=null,Er=1,jr="";function Vr(r,i){ea[ta++]=ao,ea[ta++]=Fl,Fl=r,ao=i}function rx(r,i,h){er[tr++]=Er,er[tr++]=jr,er[tr++]=xs,xs=r;var g=Er;r=jr;var k=32-ht(g)-1;g&=~(1<<k),h+=1;var j=32-ht(i)+k;if(30<j){var B=k-k%5;j=(g&(1<<B)-1).toString(32),g>>=B,k-=B,Er=1<<32-ht(i)+k|h<<k|g,jr=j+r}else Er=1<<j|h<<k|g,jr=r}function Hd(r){r.return!==null&&(Vr(r,1),rx(r,1,0))}function Ud(r){for(;r===Fl;)Fl=ea[--ta],ea[ta]=null,ao=ea[--ta],ea[ta]=null;for(;r===xs;)xs=er[--tr],er[tr]=null,jr=er[--tr],er[tr]=null,Er=er[--tr],er[tr]=null}function sx(r,i){er[tr++]=Er,er[tr++]=jr,er[tr++]=xs,Er=i.id,jr=i.overflow,xs=r}var mn=null,Mt=null,lt=!1,_s=null,nr=!1,Fd=Error(s(519));function ys(r){var i=Error(s(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw oo(Zn(i,r)),Fd}function ix(r){var i=r.stateNode,h=r.type,g=r.memoizedProps;switch(i[yt]=r,i[Nn]=g,h){case"dialog":rt("cancel",i),rt("close",i);break;case"iframe":case"object":case"embed":rt("load",i);break;case"video":case"audio":for(h=0;h<Ao.length;h++)rt(Ao[h],i);break;case"source":rt("error",i);break;case"img":case"image":case"link":rt("error",i),rt("load",i);break;case"details":rt("toggle",i);break;case"input":rt("invalid",i),_g(i,g.value,g.defaultValue,g.checked,g.defaultChecked,g.type,g.name,!0);break;case"select":rt("invalid",i);break;case"textarea":rt("invalid",i),vg(i,g.value,g.defaultValue,g.children)}h=g.children,typeof h!="string"&&typeof h!="number"&&typeof h!="bigint"||i.textContent===""+h||g.suppressHydrationWarning===!0||Sy(i.textContent,h)?(g.popover!=null&&(rt("beforetoggle",i),rt("toggle",i)),g.onScroll!=null&&rt("scroll",i),g.onScrollEnd!=null&&rt("scrollend",i),g.onClick!=null&&(i.onclick=Hr),i=!0):i=!1,i||ys(r,!0)}function ax(r){for(mn=r.return;mn;)switch(mn.tag){case 5:case 31:case 13:nr=!1;return;case 27:case 3:nr=!0;return;default:mn=mn.return}}function na(r){if(r!==mn)return!1;if(!lt)return ax(r),lt=!0,!1;var i=r.tag,h;if((h=i!==3&&i!==27)&&((h=i===5)&&(h=r.type,h=!(h!=="form"&&h!=="button")||lf(r.type,r.memoizedProps)),h=!h),h&&Mt&&ys(r),ax(r),i===13){if(r=r.memoizedState,r=r!==null?r.dehydrated:null,!r)throw Error(s(317));Mt=Ly(r)}else if(i===31){if(r=r.memoizedState,r=r!==null?r.dehydrated:null,!r)throw Error(s(317));Mt=Ly(r)}else i===27?(i=Mt,Rs(r.type)?(r=ff,ff=null,Mt=r):Mt=i):Mt=mn?sr(r.stateNode.nextSibling):null;return!0}function ii(){Mt=mn=null,lt=!1}function Vd(){var r=_s;return r!==null&&(Rn===null?Rn=r:Rn.push.apply(Rn,r),_s=null),r}function oo(r){_s===null?_s=[r]:_s.push(r)}var Gd=$(null),ai=null,Gr=null;function vs(r,i,h){P(Gd,i._currentValue),i._currentValue=h}function Wr(r){r._currentValue=Gd.current,F(Gd)}function Wd(r,i,h){for(;r!==null;){var g=r.alternate;if((r.childLanes&i)!==i?(r.childLanes|=i,g!==null&&(g.childLanes|=i)):g!==null&&(g.childLanes&i)!==i&&(g.childLanes|=i),r===h)break;r=r.return}}function qd(r,i,h,g){var k=r.child;for(k!==null&&(k.return=r);k!==null;){var j=k.dependencies;if(j!==null){var B=k.child;j=j.firstContext;e:for(;j!==null;){var K=j;j=k;for(var ne=0;ne<i.length;ne++)if(K.context===i[ne]){j.lanes|=h,K=j.alternate,K!==null&&(K.lanes|=h),Wd(j.return,h,r),g||(B=null);break e}j=K.next}}else if(k.tag===18){if(B=k.return,B===null)throw Error(s(341));B.lanes|=h,j=B.alternate,j!==null&&(j.lanes|=h),Wd(B,h,r),B=null}else B=k.child;if(B!==null)B.return=k;else for(B=k;B!==null;){if(B===r){B=null;break}if(k=B.sibling,k!==null){k.return=B.return,B=k;break}B=B.return}k=B}}function ra(r,i,h,g){r=null;for(var k=i,j=!1;k!==null;){if(!j){if((k.flags&524288)!==0)j=!0;else if((k.flags&262144)!==0)break}if(k.tag===10){var B=k.alternate;if(B===null)throw Error(s(387));if(B=B.memoizedProps,B!==null){var K=k.type;Bn(k.pendingProps.value,B.value)||(r!==null?r.push(K):r=[K])}}else if(k===Y.current){if(B=k.alternate,B===null)throw Error(s(387));B.memoizedState.memoizedState!==k.memoizedState.memoizedState&&(r!==null?r.push(Mo):r=[Mo])}k=k.return}r!==null&&qd(i,r,h,g),i.flags|=262144}function Vl(r){for(r=r.firstContext;r!==null;){if(!Bn(r.context._currentValue,r.memoizedValue))return!0;r=r.next}return!1}function oi(r){ai=r,Gr=null,r=r.dependencies,r!==null&&(r.firstContext=null)}function pn(r){return ox(ai,r)}function Gl(r,i){return ai===null&&oi(r),ox(r,i)}function ox(r,i){var h=i._currentValue;if(i={context:i,memoizedValue:h,next:null},Gr===null){if(r===null)throw Error(s(308));Gr=i,r.dependencies={lanes:0,firstContext:i},r.flags|=524288}else Gr=Gr.next=i;return h}var Bk=typeof AbortController<"u"?AbortController:function(){var r=[],i=this.signal={aborted:!1,addEventListener:function(h,g){r.push(g)}};this.abort=function(){i.aborted=!0,r.forEach(function(h){return h()})}},zk=e.unstable_scheduleCallback,$k=e.unstable_NormalPriority,Kt={$$typeof:y,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Kd(){return{controller:new Bk,data:new Map,refCount:0}}function lo(r){r.refCount--,r.refCount===0&&zk($k,function(){r.controller.abort()})}var co=null,Yd=0,sa=0,ia=null;function Hk(r,i){if(co===null){var h=co=[];Yd=0,sa=Jh(),ia={status:"pending",value:void 0,then:function(g){h.push(g)}}}return Yd++,i.then(lx,lx),i}function lx(){if(--Yd===0&&co!==null){ia!==null&&(ia.status="fulfilled");var r=co;co=null,sa=0,ia=null;for(var i=0;i<r.length;i++)(0,r[i])()}}function Uk(r,i){var h=[],g={status:"pending",value:null,reason:null,then:function(k){h.push(k)}};return r.then(function(){g.status="fulfilled",g.value=i;for(var k=0;k<h.length;k++)(0,h[k])(i)},function(k){for(g.status="rejected",g.reason=k,k=0;k<h.length;k++)(0,h[k])(void 0)}),g}var cx=z.S;z.S=function(r,i){W_=dt(),typeof i=="object"&&i!==null&&typeof i.then=="function"&&Hk(r,i),cx!==null&&cx(r,i)};var li=$(null);function Xd(){var r=li.current;return r!==null?r:Nt.pooledCache}function Wl(r,i){i===null?P(li,li.current):P(li,i.pool)}function ux(){var r=Xd();return r===null?null:{parent:Kt._currentValue,pool:r}}var aa=Error(s(460)),Qd=Error(s(474)),ql=Error(s(542)),Kl={then:function(){}};function dx(r){return r=r.status,r==="fulfilled"||r==="rejected"}function hx(r,i,h){switch(h=r[h],h===void 0?r.push(i):h!==i&&(i.then(Hr,Hr),i=h),i.status){case"fulfilled":return i.value;case"rejected":throw r=i.reason,mx(r),r;default:if(typeof i.status=="string")i.then(Hr,Hr);else{if(r=Nt,r!==null&&100<r.shellSuspendCounter)throw Error(s(482));r=i,r.status="pending",r.then(function(g){if(i.status==="pending"){var k=i;k.status="fulfilled",k.value=g}},function(g){if(i.status==="pending"){var k=i;k.status="rejected",k.reason=g}})}switch(i.status){case"fulfilled":return i.value;case"rejected":throw r=i.reason,mx(r),r}throw ui=i,aa}}function ci(r){try{var i=r._init;return i(r._payload)}catch(h){throw h!==null&&typeof h=="object"&&typeof h.then=="function"?(ui=h,aa):h}}var ui=null;function fx(){if(ui===null)throw Error(s(459));var r=ui;return ui=null,r}function mx(r){if(r===aa||r===ql)throw Error(s(483))}var oa=null,uo=0;function Yl(r){var i=uo;return uo+=1,oa===null&&(oa=[]),hx(oa,r,i)}function ho(r,i){i=i.props.ref,r.ref=i!==void 0?i:null}function Xl(r,i){throw i.$$typeof===_?Error(s(525)):(r=Object.prototype.toString.call(i),Error(s(31,r==="[object Object]"?"object with keys {"+Object.keys(i).join(", ")+"}":r)))}function px(r){function i(le,ie){if(r){var ue=le.deletions;ue===null?(le.deletions=[ie],le.flags|=16):ue.push(ie)}}function h(le,ie){if(!r)return null;for(;ie!==null;)i(le,ie),ie=ie.sibling;return null}function g(le){for(var ie=new Map;le!==null;)le.key!==null?ie.set(le.key,le):ie.set(le.index,le),le=le.sibling;return ie}function k(le,ie){return le=Fr(le,ie),le.index=0,le.sibling=null,le}function j(le,ie,ue){return le.index=ue,r?(ue=le.alternate,ue!==null?(ue=ue.index,ue<ie?(le.flags|=67108866,ie):ue):(le.flags|=67108866,ie)):(le.flags|=1048576,ie)}function B(le){return r&&le.alternate===null&&(le.flags|=67108866),le}function K(le,ie,ue,ve){return ie===null||ie.tag!==6?(ie=zd(ue,le.mode,ve),ie.return=le,ie):(ie=k(ie,ue),ie.return=le,ie)}function ne(le,ie,ue,ve){var Be=ue.type;return Be===C?xe(le,ie,ue.props.children,ve,ue.key):ie!==null&&(ie.elementType===Be||typeof Be=="object"&&Be!==null&&Be.$$typeof===A&&ci(Be)===ie.type)?(ie=k(ie,ue.props),ho(ie,ue),ie.return=le,ie):(ie=Ul(ue.type,ue.key,ue.props,null,le.mode,ve),ho(ie,ue),ie.return=le,ie)}function de(le,ie,ue,ve){return ie===null||ie.tag!==4||ie.stateNode.containerInfo!==ue.containerInfo||ie.stateNode.implementation!==ue.implementation?(ie=$d(ue,le.mode,ve),ie.return=le,ie):(ie=k(ie,ue.children||[]),ie.return=le,ie)}function xe(le,ie,ue,ve,Be){return ie===null||ie.tag!==7?(ie=si(ue,le.mode,ve,Be),ie.return=le,ie):(ie=k(ie,ue),ie.return=le,ie)}function be(le,ie,ue){if(typeof ie=="string"&&ie!==""||typeof ie=="number"||typeof ie=="bigint")return ie=zd(""+ie,le.mode,ue),ie.return=le,ie;if(typeof ie=="object"&&ie!==null){switch(ie.$$typeof){case x:return ue=Ul(ie.type,ie.key,ie.props,null,le.mode,ue),ho(ue,ie),ue.return=le,ue;case w:return ie=$d(ie,le.mode,ue),ie.return=le,ie;case A:return ie=ci(ie),be(le,ie,ue)}if(V(ie)||W(ie))return ie=si(ie,le.mode,ue,null),ie.return=le,ie;if(typeof ie.then=="function")return be(le,Yl(ie),ue);if(ie.$$typeof===y)return be(le,Gl(le,ie),ue);Xl(le,ie)}return null}function he(le,ie,ue,ve){var Be=ie!==null?ie.key:null;if(typeof ue=="string"&&ue!==""||typeof ue=="number"||typeof ue=="bigint")return Be!==null?null:K(le,ie,""+ue,ve);if(typeof ue=="object"&&ue!==null){switch(ue.$$typeof){case x:return ue.key===Be?ne(le,ie,ue,ve):null;case w:return ue.key===Be?de(le,ie,ue,ve):null;case A:return ue=ci(ue),he(le,ie,ue,ve)}if(V(ue)||W(ue))return Be!==null?null:xe(le,ie,ue,ve,null);if(typeof ue.then=="function")return he(le,ie,Yl(ue),ve);if(ue.$$typeof===y)return he(le,ie,Gl(le,ue),ve);Xl(le,ue)}return null}function fe(le,ie,ue,ve,Be){if(typeof ve=="string"&&ve!==""||typeof ve=="number"||typeof ve=="bigint")return le=le.get(ue)||null,K(ie,le,""+ve,Be);if(typeof ve=="object"&&ve!==null){switch(ve.$$typeof){case x:return le=le.get(ve.key===null?ue:ve.key)||null,ne(ie,le,ve,Be);case w:return le=le.get(ve.key===null?ue:ve.key)||null,de(ie,le,ve,Be);case A:return ve=ci(ve),fe(le,ie,ue,ve,Be)}if(V(ve)||W(ve))return le=le.get(ue)||null,xe(ie,le,ve,Be,null);if(typeof ve.then=="function")return fe(le,ie,ue,Yl(ve),Be);if(ve.$$typeof===y)return fe(le,ie,ue,Gl(ie,ve),Be);Xl(ie,ve)}return null}function Me(le,ie,ue,ve){for(var Be=null,mt=null,Pe=ie,Xe=ie=0,at=null;Pe!==null&&Xe<ue.length;Xe++){Pe.index>Xe?(at=Pe,Pe=null):at=Pe.sibling;var pt=he(le,Pe,ue[Xe],ve);if(pt===null){Pe===null&&(Pe=at);break}r&&Pe&&pt.alternate===null&&i(le,Pe),ie=j(pt,ie,Xe),mt===null?Be=pt:mt.sibling=pt,mt=pt,Pe=at}if(Xe===ue.length)return h(le,Pe),lt&&Vr(le,Xe),Be;if(Pe===null){for(;Xe<ue.length;Xe++)Pe=be(le,ue[Xe],ve),Pe!==null&&(ie=j(Pe,ie,Xe),mt===null?Be=Pe:mt.sibling=Pe,mt=Pe);return lt&&Vr(le,Xe),Be}for(Pe=g(Pe);Xe<ue.length;Xe++)at=fe(Pe,le,Xe,ue[Xe],ve),at!==null&&(r&&at.alternate!==null&&Pe.delete(at.key===null?Xe:at.key),ie=j(at,ie,Xe),mt===null?Be=at:mt.sibling=at,mt=at);return r&&Pe.forEach(function(Bs){return i(le,Bs)}),lt&&Vr(le,Xe),Be}function Ue(le,ie,ue,ve){if(ue==null)throw Error(s(151));for(var Be=null,mt=null,Pe=ie,Xe=ie=0,at=null,pt=ue.next();Pe!==null&&!pt.done;Xe++,pt=ue.next()){Pe.index>Xe?(at=Pe,Pe=null):at=Pe.sibling;var Bs=he(le,Pe,pt.value,ve);if(Bs===null){Pe===null&&(Pe=at);break}r&&Pe&&Bs.alternate===null&&i(le,Pe),ie=j(Bs,ie,Xe),mt===null?Be=Bs:mt.sibling=Bs,mt=Bs,Pe=at}if(pt.done)return h(le,Pe),lt&&Vr(le,Xe),Be;if(Pe===null){for(;!pt.done;Xe++,pt=ue.next())pt=be(le,pt.value,ve),pt!==null&&(ie=j(pt,ie,Xe),mt===null?Be=pt:mt.sibling=pt,mt=pt);return lt&&Vr(le,Xe),Be}for(Pe=g(Pe);!pt.done;Xe++,pt=ue.next())pt=fe(Pe,le,Xe,pt.value,ve),pt!==null&&(r&&pt.alternate!==null&&Pe.delete(pt.key===null?Xe:pt.key),ie=j(pt,ie,Xe),mt===null?Be=pt:mt.sibling=pt,mt=pt);return r&&Pe.forEach(function(ZE){return i(le,ZE)}),lt&&Vr(le,Xe),Be}function Et(le,ie,ue,ve){if(typeof ue=="object"&&ue!==null&&ue.type===C&&ue.key===null&&(ue=ue.props.children),typeof ue=="object"&&ue!==null){switch(ue.$$typeof){case x:e:{for(var Be=ue.key;ie!==null;){if(ie.key===Be){if(Be=ue.type,Be===C){if(ie.tag===7){h(le,ie.sibling),ve=k(ie,ue.props.children),ve.return=le,le=ve;break e}}else if(ie.elementType===Be||typeof Be=="object"&&Be!==null&&Be.$$typeof===A&&ci(Be)===ie.type){h(le,ie.sibling),ve=k(ie,ue.props),ho(ve,ue),ve.return=le,le=ve;break e}h(le,ie);break}else i(le,ie);ie=ie.sibling}ue.type===C?(ve=si(ue.props.children,le.mode,ve,ue.key),ve.return=le,le=ve):(ve=Ul(ue.type,ue.key,ue.props,null,le.mode,ve),ho(ve,ue),ve.return=le,le=ve)}return B(le);case w:e:{for(Be=ue.key;ie!==null;){if(ie.key===Be)if(ie.tag===4&&ie.stateNode.containerInfo===ue.containerInfo&&ie.stateNode.implementation===ue.implementation){h(le,ie.sibling),ve=k(ie,ue.children||[]),ve.return=le,le=ve;break e}else{h(le,ie);break}else i(le,ie);ie=ie.sibling}ve=$d(ue,le.mode,ve),ve.return=le,le=ve}return B(le);case A:return ue=ci(ue),Et(le,ie,ue,ve)}if(V(ue))return Me(le,ie,ue,ve);if(W(ue)){if(Be=W(ue),typeof Be!="function")throw Error(s(150));return ue=Be.call(ue),Ue(le,ie,ue,ve)}if(typeof ue.then=="function")return Et(le,ie,Yl(ue),ve);if(ue.$$typeof===y)return Et(le,ie,Gl(le,ue),ve);Xl(le,ue)}return typeof ue=="string"&&ue!==""||typeof ue=="number"||typeof ue=="bigint"?(ue=""+ue,ie!==null&&ie.tag===6?(h(le,ie.sibling),ve=k(ie,ue),ve.return=le,le=ve):(h(le,ie),ve=zd(ue,le.mode,ve),ve.return=le,le=ve),B(le)):h(le,ie)}return function(le,ie,ue,ve){try{uo=0;var Be=Et(le,ie,ue,ve);return oa=null,Be}catch(Pe){if(Pe===aa||Pe===ql)throw Pe;var mt=zn(29,Pe,null,le.mode);return mt.lanes=ve,mt.return=le,mt}finally{}}}var di=px(!0),gx=px(!1),bs=!1;function Jd(r){r.updateQueue={baseState:r.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Zd(r,i){r=r.updateQueue,i.updateQueue===r&&(i.updateQueue={baseState:r.baseState,firstBaseUpdate:r.firstBaseUpdate,lastBaseUpdate:r.lastBaseUpdate,shared:r.shared,callbacks:null})}function Ss(r){return{lane:r,tag:0,payload:null,callback:null,next:null}}function ws(r,i,h){var g=r.updateQueue;if(g===null)return null;if(g=g.shared,(xt&2)!==0){var k=g.pending;return k===null?i.next=i:(i.next=k.next,k.next=i),g.pending=i,i=Hl(r),Zg(r,null,h),i}return $l(r,g,i,h),Hl(r)}function fo(r,i,h){if(i=i.updateQueue,i!==null&&(i=i.shared,(h&4194048)!==0)){var g=i.lanes;g&=r.pendingLanes,h|=g,i.lanes=h,Oe(r,h)}}function eh(r,i){var h=r.updateQueue,g=r.alternate;if(g!==null&&(g=g.updateQueue,h===g)){var k=null,j=null;if(h=h.firstBaseUpdate,h!==null){do{var B={lane:h.lane,tag:h.tag,payload:h.payload,callback:null,next:null};j===null?k=j=B:j=j.next=B,h=h.next}while(h!==null);j===null?k=j=i:j=j.next=i}else k=j=i;h={baseState:g.baseState,firstBaseUpdate:k,lastBaseUpdate:j,shared:g.shared,callbacks:g.callbacks},r.updateQueue=h;return}r=h.lastBaseUpdate,r===null?h.firstBaseUpdate=i:r.next=i,h.lastBaseUpdate=i}var th=!1;function mo(){if(th){var r=ia;if(r!==null)throw r}}function po(r,i,h,g){th=!1;var k=r.updateQueue;bs=!1;var j=k.firstBaseUpdate,B=k.lastBaseUpdate,K=k.shared.pending;if(K!==null){k.shared.pending=null;var ne=K,de=ne.next;ne.next=null,B===null?j=de:B.next=de,B=ne;var xe=r.alternate;xe!==null&&(xe=xe.updateQueue,K=xe.lastBaseUpdate,K!==B&&(K===null?xe.firstBaseUpdate=de:K.next=de,xe.lastBaseUpdate=ne))}if(j!==null){var be=k.baseState;B=0,xe=de=ne=null,K=j;do{var he=K.lane&-536870913,fe=he!==K.lane;if(fe?(it&he)===he:(g&he)===he){he!==0&&he===sa&&(th=!0),xe!==null&&(xe=xe.next={lane:0,tag:K.tag,payload:K.payload,callback:null,next:null});e:{var Me=r,Ue=K;he=i;var Et=h;switch(Ue.tag){case 1:if(Me=Ue.payload,typeof Me=="function"){be=Me.call(Et,be,he);break e}be=Me;break e;case 3:Me.flags=Me.flags&-65537|128;case 0:if(Me=Ue.payload,he=typeof Me=="function"?Me.call(Et,be,he):Me,he==null)break e;be=p({},be,he);break e;case 2:bs=!0}}he=K.callback,he!==null&&(r.flags|=64,fe&&(r.flags|=8192),fe=k.callbacks,fe===null?k.callbacks=[he]:fe.push(he))}else fe={lane:he,tag:K.tag,payload:K.payload,callback:K.callback,next:null},xe===null?(de=xe=fe,ne=be):xe=xe.next=fe,B|=he;if(K=K.next,K===null){if(K=k.shared.pending,K===null)break;fe=K,K=fe.next,fe.next=null,k.lastBaseUpdate=fe,k.shared.pending=null}}while(!0);xe===null&&(ne=be),k.baseState=ne,k.firstBaseUpdate=de,k.lastBaseUpdate=xe,j===null&&(k.shared.lanes=0),Ns|=B,r.lanes=B,r.memoizedState=be}}function xx(r,i){if(typeof r!="function")throw Error(s(191,r));r.call(i)}function _x(r,i){var h=r.callbacks;if(h!==null)for(r.callbacks=null,r=0;r<h.length;r++)xx(h[r],i)}var la=$(null),Ql=$(0);function yx(r,i){r=ts,P(Ql,r),P(la,i),ts=r|i.baseLanes}function nh(){P(Ql,ts),P(la,la.current)}function rh(){ts=Ql.current,F(la),F(Ql)}var $n=$(null),rr=null;function Cs(r){var i=r.alternate;P(Vt,Vt.current&1),P($n,r),rr===null&&(i===null||la.current!==null||i.memoizedState!==null)&&(rr=r)}function sh(r){P(Vt,Vt.current),P($n,r),rr===null&&(rr=r)}function vx(r){r.tag===22?(P(Vt,Vt.current),P($n,r),rr===null&&(rr=r)):ks()}function ks(){P(Vt,Vt.current),P($n,$n.current)}function Hn(r){F($n),rr===r&&(rr=null),F(Vt)}var Vt=$(0);function Jl(r){for(var i=r;i!==null;){if(i.tag===13){var h=i.memoizedState;if(h!==null&&(h=h.dehydrated,h===null||df(h)||hf(h)))return i}else if(i.tag===19&&(i.memoizedProps.revealOrder==="forwards"||i.memoizedProps.revealOrder==="backwards"||i.memoizedProps.revealOrder==="unstable_legacy-backwards"||i.memoizedProps.revealOrder==="together")){if((i.flags&128)!==0)return i}else if(i.child!==null){i.child.return=i,i=i.child;continue}if(i===r)break;for(;i.sibling===null;){if(i.return===null||i.return===r)return null;i=i.return}i.sibling.return=i.return,i=i.sibling}return null}var qr=0,Ke=null,Ct=null,Yt=null,Zl=!1,ca=!1,hi=!1,ec=0,go=0,ua=null,Fk=0;function Ht(){throw Error(s(321))}function ih(r,i){if(i===null)return!1;for(var h=0;h<i.length&&h<r.length;h++)if(!Bn(r[h],i[h]))return!1;return!0}function ah(r,i,h,g,k,j){return qr=j,Ke=i,i.memoizedState=null,i.updateQueue=null,i.lanes=0,z.H=r===null||r.memoizedState===null?r_:bh,hi=!1,j=h(g,k),hi=!1,ca&&(j=Sx(i,h,g,k)),bx(r),j}function bx(r){z.H=yo;var i=Ct!==null&&Ct.next!==null;if(qr=0,Yt=Ct=Ke=null,Zl=!1,go=0,ua=null,i)throw Error(s(300));r===null||Xt||(r=r.dependencies,r!==null&&Vl(r)&&(Xt=!0))}function Sx(r,i,h,g){Ke=r;var k=0;do{if(ca&&(ua=null),go=0,ca=!1,25<=k)throw Error(s(301));if(k+=1,Yt=Ct=null,r.updateQueue!=null){var j=r.updateQueue;j.lastEffect=null,j.events=null,j.stores=null,j.memoCache!=null&&(j.memoCache.index=0)}z.H=s_,j=i(h,g)}while(ca);return j}function Vk(){var r=z.H,i=r.useState()[0];return i=typeof i.then=="function"?xo(i):i,r=r.useState()[0],(Ct!==null?Ct.memoizedState:null)!==r&&(Ke.flags|=1024),i}function oh(){var r=ec!==0;return ec=0,r}function lh(r,i,h){i.updateQueue=r.updateQueue,i.flags&=-2053,r.lanes&=~h}function ch(r){if(Zl){for(r=r.memoizedState;r!==null;){var i=r.queue;i!==null&&(i.pending=null),r=r.next}Zl=!1}qr=0,Yt=Ct=Ke=null,ca=!1,go=ec=0,ua=null}function Cn(){var r={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Yt===null?Ke.memoizedState=Yt=r:Yt=Yt.next=r,Yt}function Gt(){if(Ct===null){var r=Ke.alternate;r=r!==null?r.memoizedState:null}else r=Ct.next;var i=Yt===null?Ke.memoizedState:Yt.next;if(i!==null)Yt=i,Ct=r;else{if(r===null)throw Ke.alternate===null?Error(s(467)):Error(s(310));Ct=r,r={memoizedState:Ct.memoizedState,baseState:Ct.baseState,baseQueue:Ct.baseQueue,queue:Ct.queue,next:null},Yt===null?Ke.memoizedState=Yt=r:Yt=Yt.next=r}return Yt}function tc(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function xo(r){var i=go;return go+=1,ua===null&&(ua=[]),r=hx(ua,r,i),i=Ke,(Yt===null?i.memoizedState:Yt.next)===null&&(i=i.alternate,z.H=i===null||i.memoizedState===null?r_:bh),r}function nc(r){if(r!==null&&typeof r=="object"){if(typeof r.then=="function")return xo(r);if(r.$$typeof===y)return pn(r)}throw Error(s(438,String(r)))}function uh(r){var i=null,h=Ke.updateQueue;if(h!==null&&(i=h.memoCache),i==null){var g=Ke.alternate;g!==null&&(g=g.updateQueue,g!==null&&(g=g.memoCache,g!=null&&(i={data:g.data.map(function(k){return k.slice()}),index:0})))}if(i==null&&(i={data:[],index:0}),h===null&&(h=tc(),Ke.updateQueue=h),h.memoCache=i,h=i.data[i.index],h===void 0)for(h=i.data[i.index]=Array(r),g=0;g<r;g++)h[g]=M;return i.index++,h}function Kr(r,i){return typeof i=="function"?i(r):i}function rc(r){var i=Gt();return dh(i,Ct,r)}function dh(r,i,h){var g=r.queue;if(g===null)throw Error(s(311));g.lastRenderedReducer=h;var k=r.baseQueue,j=g.pending;if(j!==null){if(k!==null){var B=k.next;k.next=j.next,j.next=B}i.baseQueue=k=j,g.pending=null}if(j=r.baseState,k===null)r.memoizedState=j;else{i=k.next;var K=B=null,ne=null,de=i,xe=!1;do{var be=de.lane&-536870913;if(be!==de.lane?(it&be)===be:(qr&be)===be){var he=de.revertLane;if(he===0)ne!==null&&(ne=ne.next={lane:0,revertLane:0,gesture:null,action:de.action,hasEagerState:de.hasEagerState,eagerState:de.eagerState,next:null}),be===sa&&(xe=!0);else if((qr&he)===he){de=de.next,he===sa&&(xe=!0);continue}else be={lane:0,revertLane:de.revertLane,gesture:null,action:de.action,hasEagerState:de.hasEagerState,eagerState:de.eagerState,next:null},ne===null?(K=ne=be,B=j):ne=ne.next=be,Ke.lanes|=he,Ns|=he;be=de.action,hi&&h(j,be),j=de.hasEagerState?de.eagerState:h(j,be)}else he={lane:be,revertLane:de.revertLane,gesture:de.gesture,action:de.action,hasEagerState:de.hasEagerState,eagerState:de.eagerState,next:null},ne===null?(K=ne=he,B=j):ne=ne.next=he,Ke.lanes|=be,Ns|=be;de=de.next}while(de!==null&&de!==i);if(ne===null?B=j:ne.next=K,!Bn(j,r.memoizedState)&&(Xt=!0,xe&&(h=ia,h!==null)))throw h;r.memoizedState=j,r.baseState=B,r.baseQueue=ne,g.lastRenderedState=j}return k===null&&(g.lanes=0),[r.memoizedState,g.dispatch]}function hh(r){var i=Gt(),h=i.queue;if(h===null)throw Error(s(311));h.lastRenderedReducer=r;var g=h.dispatch,k=h.pending,j=i.memoizedState;if(k!==null){h.pending=null;var B=k=k.next;do j=r(j,B.action),B=B.next;while(B!==k);Bn(j,i.memoizedState)||(Xt=!0),i.memoizedState=j,i.baseQueue===null&&(i.baseState=j),h.lastRenderedState=j}return[j,g]}function wx(r,i,h){var g=Ke,k=Gt(),j=lt;if(j){if(h===void 0)throw Error(s(407));h=h()}else h=i();var B=!Bn((Ct||k).memoizedState,h);if(B&&(k.memoizedState=h,Xt=!0),k=k.queue,ph(Ex.bind(null,g,k,r),[r]),k.getSnapshot!==i||B||Yt!==null&&Yt.memoizedState.tag&1){if(g.flags|=2048,da(9,{destroy:void 0},kx.bind(null,g,k,h,i),null),Nt===null)throw Error(s(349));j||(qr&127)!==0||Cx(g,i,h)}return h}function Cx(r,i,h){r.flags|=16384,r={getSnapshot:i,value:h},i=Ke.updateQueue,i===null?(i=tc(),Ke.updateQueue=i,i.stores=[r]):(h=i.stores,h===null?i.stores=[r]:h.push(r))}function kx(r,i,h,g){i.value=h,i.getSnapshot=g,jx(i)&&Nx(r)}function Ex(r,i,h){return h(function(){jx(i)&&Nx(r)})}function jx(r){var i=r.getSnapshot;r=r.value;try{var h=i();return!Bn(r,h)}catch{return!0}}function Nx(r){var i=ri(r,2);i!==null&&On(i,r,2)}function fh(r){var i=Cn();if(typeof r=="function"){var h=r;if(r=h(),hi){nn(!0);try{h()}finally{nn(!1)}}}return i.memoizedState=i.baseState=r,i.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Kr,lastRenderedState:r},i}function Tx(r,i,h,g){return r.baseState=h,dh(r,Ct,typeof g=="function"?g:Kr)}function Gk(r,i,h,g,k){if(ac(r))throw Error(s(485));if(r=i.action,r!==null){var j={payload:k,action:r,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(B){j.listeners.push(B)}};z.T!==null?h(!0):j.isTransition=!1,g(j),h=i.pending,h===null?(j.next=i.pending=j,Ax(i,j)):(j.next=h.next,i.pending=h.next=j)}}function Ax(r,i){var h=i.action,g=i.payload,k=r.state;if(i.isTransition){var j=z.T,B={};z.T=B;try{var K=h(k,g),ne=z.S;ne!==null&&ne(B,K),Lx(r,i,K)}catch(de){mh(r,i,de)}finally{j!==null&&B.types!==null&&(j.types=B.types),z.T=j}}else try{j=h(k,g),Lx(r,i,j)}catch(de){mh(r,i,de)}}function Lx(r,i,h){h!==null&&typeof h=="object"&&typeof h.then=="function"?h.then(function(g){Dx(r,i,g)},function(g){return mh(r,i,g)}):Dx(r,i,h)}function Dx(r,i,h){i.status="fulfilled",i.value=h,Rx(i),r.state=h,i=r.pending,i!==null&&(h=i.next,h===i?r.pending=null:(h=h.next,i.next=h,Ax(r,h)))}function mh(r,i,h){var g=r.pending;if(r.pending=null,g!==null){g=g.next;do i.status="rejected",i.reason=h,Rx(i),i=i.next;while(i!==g)}r.action=null}function Rx(r){r=r.listeners;for(var i=0;i<r.length;i++)(0,r[i])()}function Ox(r,i){return i}function Mx(r,i){if(lt){var h=Nt.formState;if(h!==null){e:{var g=Ke;if(lt){if(Mt){t:{for(var k=Mt,j=nr;k.nodeType!==8;){if(!j){k=null;break t}if(k=sr(k.nextSibling),k===null){k=null;break t}}j=k.data,k=j==="F!"||j==="F"?k:null}if(k){Mt=sr(k.nextSibling),g=k.data==="F!";break e}}ys(g)}g=!1}g&&(i=h[0])}}return h=Cn(),h.memoizedState=h.baseState=i,g={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ox,lastRenderedState:i},h.queue=g,h=e_.bind(null,Ke,g),g.dispatch=h,g=fh(!1),j=vh.bind(null,Ke,!1,g.queue),g=Cn(),k={state:i,dispatch:null,action:r,pending:null},g.queue=k,h=Gk.bind(null,Ke,k,j,h),k.dispatch=h,g.memoizedState=r,[i,h,!1]}function Ix(r){var i=Gt();return Px(i,Ct,r)}function Px(r,i,h){if(i=dh(r,i,Ox)[0],r=rc(Kr)[0],typeof i=="object"&&i!==null&&typeof i.then=="function")try{var g=xo(i)}catch(B){throw B===aa?ql:B}else g=i;i=Gt();var k=i.queue,j=k.dispatch;return h!==i.memoizedState&&(Ke.flags|=2048,da(9,{destroy:void 0},Wk.bind(null,k,h),null)),[g,j,r]}function Wk(r,i){r.action=i}function Bx(r){var i=Gt(),h=Ct;if(h!==null)return Px(i,h,r);Gt(),i=i.memoizedState,h=Gt();var g=h.queue.dispatch;return h.memoizedState=r,[i,g,!1]}function da(r,i,h,g){return r={tag:r,create:h,deps:g,inst:i,next:null},i=Ke.updateQueue,i===null&&(i=tc(),Ke.updateQueue=i),h=i.lastEffect,h===null?i.lastEffect=r.next=r:(g=h.next,h.next=r,r.next=g,i.lastEffect=r),r}function zx(){return Gt().memoizedState}function sc(r,i,h,g){var k=Cn();Ke.flags|=r,k.memoizedState=da(1|i,{destroy:void 0},h,g===void 0?null:g)}function ic(r,i,h,g){var k=Gt();g=g===void 0?null:g;var j=k.memoizedState.inst;Ct!==null&&g!==null&&ih(g,Ct.memoizedState.deps)?k.memoizedState=da(i,j,h,g):(Ke.flags|=r,k.memoizedState=da(1|i,j,h,g))}function $x(r,i){sc(8390656,8,r,i)}function ph(r,i){ic(2048,8,r,i)}function qk(r){Ke.flags|=4;var i=Ke.updateQueue;if(i===null)i=tc(),Ke.updateQueue=i,i.events=[r];else{var h=i.events;h===null?i.events=[r]:h.push(r)}}function Hx(r){var i=Gt().memoizedState;return qk({ref:i,nextImpl:r}),function(){if((xt&2)!==0)throw Error(s(440));return i.impl.apply(void 0,arguments)}}function Ux(r,i){return ic(4,2,r,i)}function Fx(r,i){return ic(4,4,r,i)}function Vx(r,i){if(typeof i=="function"){r=r();var h=i(r);return function(){typeof h=="function"?h():i(null)}}if(i!=null)return r=r(),i.current=r,function(){i.current=null}}function Gx(r,i,h){h=h!=null?h.concat([r]):null,ic(4,4,Vx.bind(null,i,r),h)}function gh(){}function Wx(r,i){var h=Gt();i=i===void 0?null:i;var g=h.memoizedState;return i!==null&&ih(i,g[1])?g[0]:(h.memoizedState=[r,i],r)}function qx(r,i){var h=Gt();i=i===void 0?null:i;var g=h.memoizedState;if(i!==null&&ih(i,g[1]))return g[0];if(g=r(),hi){nn(!0);try{r()}finally{nn(!1)}}return h.memoizedState=[g,i],g}function xh(r,i,h){return h===void 0||(qr&1073741824)!==0&&(it&261930)===0?r.memoizedState=i:(r.memoizedState=h,r=K_(),Ke.lanes|=r,Ns|=r,h)}function Kx(r,i,h,g){return Bn(h,i)?h:la.current!==null?(r=xh(r,h,g),Bn(r,i)||(Xt=!0),r):(qr&42)===0||(qr&1073741824)!==0&&(it&261930)===0?(Xt=!0,r.memoizedState=h):(r=K_(),Ke.lanes|=r,Ns|=r,i)}function Yx(r,i,h,g,k){var j=X.p;X.p=j!==0&&8>j?j:8;var B=z.T,K={};z.T=K,vh(r,!1,i,h);try{var ne=k(),de=z.S;if(de!==null&&de(K,ne),ne!==null&&typeof ne=="object"&&typeof ne.then=="function"){var xe=Uk(ne,g);_o(r,i,xe,Vn(r))}else _o(r,i,g,Vn(r))}catch(be){_o(r,i,{then:function(){},status:"rejected",reason:be},Vn())}finally{X.p=j,B!==null&&K.types!==null&&(B.types=K.types),z.T=B}}function Kk(){}function _h(r,i,h,g){if(r.tag!==5)throw Error(s(476));var k=Xx(r).queue;Yx(r,k,i,te,h===null?Kk:function(){return Qx(r),h(g)})}function Xx(r){var i=r.memoizedState;if(i!==null)return i;i={memoizedState:te,baseState:te,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Kr,lastRenderedState:te},next:null};var h={};return i.next={memoizedState:h,baseState:h,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Kr,lastRenderedState:h},next:null},r.memoizedState=i,r=r.alternate,r!==null&&(r.memoizedState=i),i}function Qx(r){var i=Xx(r);i.next===null&&(i=r.alternate.memoizedState),_o(r,i.next.queue,{},Vn())}function yh(){return pn(Mo)}function Jx(){return Gt().memoizedState}function Zx(){return Gt().memoizedState}function Yk(r){for(var i=r.return;i!==null;){switch(i.tag){case 24:case 3:var h=Vn();r=Ss(h);var g=ws(i,r,h);g!==null&&(On(g,i,h),fo(g,i,h)),i={cache:Kd()},r.payload=i;return}i=i.return}}function Xk(r,i,h){var g=Vn();h={lane:g,revertLane:0,gesture:null,action:h,hasEagerState:!1,eagerState:null,next:null},ac(r)?t_(i,h):(h=Pd(r,i,h,g),h!==null&&(On(h,r,g),n_(h,i,g)))}function e_(r,i,h){var g=Vn();_o(r,i,h,g)}function _o(r,i,h,g){var k={lane:g,revertLane:0,gesture:null,action:h,hasEagerState:!1,eagerState:null,next:null};if(ac(r))t_(i,k);else{var j=r.alternate;if(r.lanes===0&&(j===null||j.lanes===0)&&(j=i.lastRenderedReducer,j!==null))try{var B=i.lastRenderedState,K=j(B,h);if(k.hasEagerState=!0,k.eagerState=K,Bn(K,B))return $l(r,i,k,0),Nt===null&&zl(),!1}catch{}finally{}if(h=Pd(r,i,k,g),h!==null)return On(h,r,g),n_(h,i,g),!0}return!1}function vh(r,i,h,g){if(g={lane:2,revertLane:Jh(),gesture:null,action:g,hasEagerState:!1,eagerState:null,next:null},ac(r)){if(i)throw Error(s(479))}else i=Pd(r,h,g,2),i!==null&&On(i,r,2)}function ac(r){var i=r.alternate;return r===Ke||i!==null&&i===Ke}function t_(r,i){ca=Zl=!0;var h=r.pending;h===null?i.next=i:(i.next=h.next,h.next=i),r.pending=i}function n_(r,i,h){if((h&4194048)!==0){var g=i.lanes;g&=r.pendingLanes,h|=g,i.lanes=h,Oe(r,h)}}var yo={readContext:pn,use:nc,useCallback:Ht,useContext:Ht,useEffect:Ht,useImperativeHandle:Ht,useLayoutEffect:Ht,useInsertionEffect:Ht,useMemo:Ht,useReducer:Ht,useRef:Ht,useState:Ht,useDebugValue:Ht,useDeferredValue:Ht,useTransition:Ht,useSyncExternalStore:Ht,useId:Ht,useHostTransitionStatus:Ht,useFormState:Ht,useActionState:Ht,useOptimistic:Ht,useMemoCache:Ht,useCacheRefresh:Ht};yo.useEffectEvent=Ht;var r_={readContext:pn,use:nc,useCallback:function(r,i){return Cn().memoizedState=[r,i===void 0?null:i],r},useContext:pn,useEffect:$x,useImperativeHandle:function(r,i,h){h=h!=null?h.concat([r]):null,sc(4194308,4,Vx.bind(null,i,r),h)},useLayoutEffect:function(r,i){return sc(4194308,4,r,i)},useInsertionEffect:function(r,i){sc(4,2,r,i)},useMemo:function(r,i){var h=Cn();i=i===void 0?null:i;var g=r();if(hi){nn(!0);try{r()}finally{nn(!1)}}return h.memoizedState=[g,i],g},useReducer:function(r,i,h){var g=Cn();if(h!==void 0){var k=h(i);if(hi){nn(!0);try{h(i)}finally{nn(!1)}}}else k=i;return g.memoizedState=g.baseState=k,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:r,lastRenderedState:k},g.queue=r,r=r.dispatch=Xk.bind(null,Ke,r),[g.memoizedState,r]},useRef:function(r){var i=Cn();return r={current:r},i.memoizedState=r},useState:function(r){r=fh(r);var i=r.queue,h=e_.bind(null,Ke,i);return i.dispatch=h,[r.memoizedState,h]},useDebugValue:gh,useDeferredValue:function(r,i){var h=Cn();return xh(h,r,i)},useTransition:function(){var r=fh(!1);return r=Yx.bind(null,Ke,r.queue,!0,!1),Cn().memoizedState=r,[!1,r]},useSyncExternalStore:function(r,i,h){var g=Ke,k=Cn();if(lt){if(h===void 0)throw Error(s(407));h=h()}else{if(h=i(),Nt===null)throw Error(s(349));(it&127)!==0||Cx(g,i,h)}k.memoizedState=h;var j={value:h,getSnapshot:i};return k.queue=j,$x(Ex.bind(null,g,j,r),[r]),g.flags|=2048,da(9,{destroy:void 0},kx.bind(null,g,j,h,i),null),h},useId:function(){var r=Cn(),i=Nt.identifierPrefix;if(lt){var h=jr,g=Er;h=(g&~(1<<32-ht(g)-1)).toString(32)+h,i="_"+i+"R_"+h,h=ec++,0<h&&(i+="H"+h.toString(32)),i+="_"}else h=Fk++,i="_"+i+"r_"+h.toString(32)+"_";return r.memoizedState=i},useHostTransitionStatus:yh,useFormState:Mx,useActionState:Mx,useOptimistic:function(r){var i=Cn();i.memoizedState=i.baseState=r;var h={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return i.queue=h,i=vh.bind(null,Ke,!0,h),h.dispatch=i,[r,i]},useMemoCache:uh,useCacheRefresh:function(){return Cn().memoizedState=Yk.bind(null,Ke)},useEffectEvent:function(r){var i=Cn(),h={impl:r};return i.memoizedState=h,function(){if((xt&2)!==0)throw Error(s(440));return h.impl.apply(void 0,arguments)}}},bh={readContext:pn,use:nc,useCallback:Wx,useContext:pn,useEffect:ph,useImperativeHandle:Gx,useInsertionEffect:Ux,useLayoutEffect:Fx,useMemo:qx,useReducer:rc,useRef:zx,useState:function(){return rc(Kr)},useDebugValue:gh,useDeferredValue:function(r,i){var h=Gt();return Kx(h,Ct.memoizedState,r,i)},useTransition:function(){var r=rc(Kr)[0],i=Gt().memoizedState;return[typeof r=="boolean"?r:xo(r),i]},useSyncExternalStore:wx,useId:Jx,useHostTransitionStatus:yh,useFormState:Ix,useActionState:Ix,useOptimistic:function(r,i){var h=Gt();return Tx(h,Ct,r,i)},useMemoCache:uh,useCacheRefresh:Zx};bh.useEffectEvent=Hx;var s_={readContext:pn,use:nc,useCallback:Wx,useContext:pn,useEffect:ph,useImperativeHandle:Gx,useInsertionEffect:Ux,useLayoutEffect:Fx,useMemo:qx,useReducer:hh,useRef:zx,useState:function(){return hh(Kr)},useDebugValue:gh,useDeferredValue:function(r,i){var h=Gt();return Ct===null?xh(h,r,i):Kx(h,Ct.memoizedState,r,i)},useTransition:function(){var r=hh(Kr)[0],i=Gt().memoizedState;return[typeof r=="boolean"?r:xo(r),i]},useSyncExternalStore:wx,useId:Jx,useHostTransitionStatus:yh,useFormState:Bx,useActionState:Bx,useOptimistic:function(r,i){var h=Gt();return Ct!==null?Tx(h,Ct,r,i):(h.baseState=r,[r,h.queue.dispatch])},useMemoCache:uh,useCacheRefresh:Zx};s_.useEffectEvent=Hx;function Sh(r,i,h,g){i=r.memoizedState,h=h(g,i),h=h==null?i:p({},i,h),r.memoizedState=h,r.lanes===0&&(r.updateQueue.baseState=h)}var wh={enqueueSetState:function(r,i,h){r=r._reactInternals;var g=Vn(),k=Ss(g);k.payload=i,h!=null&&(k.callback=h),i=ws(r,k,g),i!==null&&(On(i,r,g),fo(i,r,g))},enqueueReplaceState:function(r,i,h){r=r._reactInternals;var g=Vn(),k=Ss(g);k.tag=1,k.payload=i,h!=null&&(k.callback=h),i=ws(r,k,g),i!==null&&(On(i,r,g),fo(i,r,g))},enqueueForceUpdate:function(r,i){r=r._reactInternals;var h=Vn(),g=Ss(h);g.tag=2,i!=null&&(g.callback=i),i=ws(r,g,h),i!==null&&(On(i,r,h),fo(i,r,h))}};function i_(r,i,h,g,k,j,B){return r=r.stateNode,typeof r.shouldComponentUpdate=="function"?r.shouldComponentUpdate(g,j,B):i.prototype&&i.prototype.isPureReactComponent?!so(h,g)||!so(k,j):!0}function a_(r,i,h,g){r=i.state,typeof i.componentWillReceiveProps=="function"&&i.componentWillReceiveProps(h,g),typeof i.UNSAFE_componentWillReceiveProps=="function"&&i.UNSAFE_componentWillReceiveProps(h,g),i.state!==r&&wh.enqueueReplaceState(i,i.state,null)}function fi(r,i){var h=i;if("ref"in i){h={};for(var g in i)g!=="ref"&&(h[g]=i[g])}if(r=r.defaultProps){h===i&&(h=p({},h));for(var k in r)h[k]===void 0&&(h[k]=r[k])}return h}function o_(r){Bl(r)}function l_(r){console.error(r)}function c_(r){Bl(r)}function oc(r,i){try{var h=r.onUncaughtError;h(i.value,{componentStack:i.stack})}catch(g){setTimeout(function(){throw g})}}function u_(r,i,h){try{var g=r.onCaughtError;g(h.value,{componentStack:h.stack,errorBoundary:i.tag===1?i.stateNode:null})}catch(k){setTimeout(function(){throw k})}}function Ch(r,i,h){return h=Ss(h),h.tag=3,h.payload={element:null},h.callback=function(){oc(r,i)},h}function d_(r){return r=Ss(r),r.tag=3,r}function h_(r,i,h,g){var k=h.type.getDerivedStateFromError;if(typeof k=="function"){var j=g.value;r.payload=function(){return k(j)},r.callback=function(){u_(i,h,g)}}var B=h.stateNode;B!==null&&typeof B.componentDidCatch=="function"&&(r.callback=function(){u_(i,h,g),typeof k!="function"&&(Ts===null?Ts=new Set([this]):Ts.add(this));var K=g.stack;this.componentDidCatch(g.value,{componentStack:K!==null?K:""})})}function Qk(r,i,h,g,k){if(h.flags|=32768,g!==null&&typeof g=="object"&&typeof g.then=="function"){if(i=h.alternate,i!==null&&ra(i,h,k,!0),h=$n.current,h!==null){switch(h.tag){case 31:case 13:return rr===null?yc():h.alternate===null&&Ut===0&&(Ut=3),h.flags&=-257,h.flags|=65536,h.lanes=k,g===Kl?h.flags|=16384:(i=h.updateQueue,i===null?h.updateQueue=new Set([g]):i.add(g),Yh(r,g,k)),!1;case 22:return h.flags|=65536,g===Kl?h.flags|=16384:(i=h.updateQueue,i===null?(i={transitions:null,markerInstances:null,retryQueue:new Set([g])},h.updateQueue=i):(h=i.retryQueue,h===null?i.retryQueue=new Set([g]):h.add(g)),Yh(r,g,k)),!1}throw Error(s(435,h.tag))}return Yh(r,g,k),yc(),!1}if(lt)return i=$n.current,i!==null?((i.flags&65536)===0&&(i.flags|=256),i.flags|=65536,i.lanes=k,g!==Fd&&(r=Error(s(422),{cause:g}),oo(Zn(r,h)))):(g!==Fd&&(i=Error(s(423),{cause:g}),oo(Zn(i,h))),r=r.current.alternate,r.flags|=65536,k&=-k,r.lanes|=k,g=Zn(g,h),k=Ch(r.stateNode,g,k),eh(r,k),Ut!==4&&(Ut=2)),!1;var j=Error(s(520),{cause:g});if(j=Zn(j,h),jo===null?jo=[j]:jo.push(j),Ut!==4&&(Ut=2),i===null)return!0;g=Zn(g,h),h=i;do{switch(h.tag){case 3:return h.flags|=65536,r=k&-k,h.lanes|=r,r=Ch(h.stateNode,g,r),eh(h,r),!1;case 1:if(i=h.type,j=h.stateNode,(h.flags&128)===0&&(typeof i.getDerivedStateFromError=="function"||j!==null&&typeof j.componentDidCatch=="function"&&(Ts===null||!Ts.has(j))))return h.flags|=65536,k&=-k,h.lanes|=k,k=d_(k),h_(k,r,h,g),eh(h,k),!1}h=h.return}while(h!==null);return!1}var kh=Error(s(461)),Xt=!1;function gn(r,i,h,g){i.child=r===null?gx(i,null,h,g):di(i,r.child,h,g)}function f_(r,i,h,g,k){h=h.render;var j=i.ref;if("ref"in g){var B={};for(var K in g)K!=="ref"&&(B[K]=g[K])}else B=g;return oi(i),g=ah(r,i,h,B,j,k),K=oh(),r!==null&&!Xt?(lh(r,i,k),Yr(r,i,k)):(lt&&K&&Hd(i),i.flags|=1,gn(r,i,g,k),i.child)}function m_(r,i,h,g,k){if(r===null){var j=h.type;return typeof j=="function"&&!Bd(j)&&j.defaultProps===void 0&&h.compare===null?(i.tag=15,i.type=j,p_(r,i,j,g,k)):(r=Ul(h.type,null,g,i,i.mode,k),r.ref=i.ref,r.return=i,i.child=r)}if(j=r.child,!Rh(r,k)){var B=j.memoizedProps;if(h=h.compare,h=h!==null?h:so,h(B,g)&&r.ref===i.ref)return Yr(r,i,k)}return i.flags|=1,r=Fr(j,g),r.ref=i.ref,r.return=i,i.child=r}function p_(r,i,h,g,k){if(r!==null){var j=r.memoizedProps;if(so(j,g)&&r.ref===i.ref)if(Xt=!1,i.pendingProps=g=j,Rh(r,k))(r.flags&131072)!==0&&(Xt=!0);else return i.lanes=r.lanes,Yr(r,i,k)}return Eh(r,i,h,g,k)}function g_(r,i,h,g){var k=g.children,j=r!==null?r.memoizedState:null;if(r===null&&i.stateNode===null&&(i.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),g.mode==="hidden"){if((i.flags&128)!==0){if(j=j!==null?j.baseLanes|h:h,r!==null){for(g=i.child=r.child,k=0;g!==null;)k=k|g.lanes|g.childLanes,g=g.sibling;g=k&~j}else g=0,i.child=null;return x_(r,i,j,h,g)}if((h&536870912)!==0)i.memoizedState={baseLanes:0,cachePool:null},r!==null&&Wl(i,j!==null?j.cachePool:null),j!==null?yx(i,j):nh(),vx(i);else return g=i.lanes=536870912,x_(r,i,j!==null?j.baseLanes|h:h,h,g)}else j!==null?(Wl(i,j.cachePool),yx(i,j),ks(),i.memoizedState=null):(r!==null&&Wl(i,null),nh(),ks());return gn(r,i,k,h),i.child}function vo(r,i){return r!==null&&r.tag===22||i.stateNode!==null||(i.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),i.sibling}function x_(r,i,h,g,k){var j=Xd();return j=j===null?null:{parent:Kt._currentValue,pool:j},i.memoizedState={baseLanes:h,cachePool:j},r!==null&&Wl(i,null),nh(),vx(i),r!==null&&ra(r,i,g,!0),i.childLanes=k,null}function lc(r,i){return i=uc({mode:i.mode,children:i.children},r.mode),i.ref=r.ref,r.child=i,i.return=r,i}function __(r,i,h){return di(i,r.child,null,h),r=lc(i,i.pendingProps),r.flags|=2,Hn(i),i.memoizedState=null,r}function Jk(r,i,h){var g=i.pendingProps,k=(i.flags&128)!==0;if(i.flags&=-129,r===null){if(lt){if(g.mode==="hidden")return r=lc(i,g),i.lanes=536870912,vo(null,r);if(sh(i),(r=Mt)?(r=Ay(r,nr),r=r!==null&&r.data==="&"?r:null,r!==null&&(i.memoizedState={dehydrated:r,treeContext:xs!==null?{id:Er,overflow:jr}:null,retryLane:536870912,hydrationErrors:null},h=tx(r),h.return=i,i.child=h,mn=i,Mt=null)):r=null,r===null)throw ys(i);return i.lanes=536870912,null}return lc(i,g)}var j=r.memoizedState;if(j!==null){var B=j.dehydrated;if(sh(i),k)if(i.flags&256)i.flags&=-257,i=__(r,i,h);else if(i.memoizedState!==null)i.child=r.child,i.flags|=128,i=null;else throw Error(s(558));else if(Xt||ra(r,i,h,!1),k=(h&r.childLanes)!==0,Xt||k){if(g=Nt,g!==null&&(B=$e(g,h),B!==0&&B!==j.retryLane))throw j.retryLane=B,ri(r,B),On(g,r,B),kh;yc(),i=__(r,i,h)}else r=j.treeContext,Mt=sr(B.nextSibling),mn=i,lt=!0,_s=null,nr=!1,r!==null&&sx(i,r),i=lc(i,g),i.flags|=4096;return i}return r=Fr(r.child,{mode:g.mode,children:g.children}),r.ref=i.ref,i.child=r,r.return=i,r}function cc(r,i){var h=i.ref;if(h===null)r!==null&&r.ref!==null&&(i.flags|=4194816);else{if(typeof h!="function"&&typeof h!="object")throw Error(s(284));(r===null||r.ref!==h)&&(i.flags|=4194816)}}function Eh(r,i,h,g,k){return oi(i),h=ah(r,i,h,g,void 0,k),g=oh(),r!==null&&!Xt?(lh(r,i,k),Yr(r,i,k)):(lt&&g&&Hd(i),i.flags|=1,gn(r,i,h,k),i.child)}function y_(r,i,h,g,k,j){return oi(i),i.updateQueue=null,h=Sx(i,g,h,k),bx(r),g=oh(),r!==null&&!Xt?(lh(r,i,j),Yr(r,i,j)):(lt&&g&&Hd(i),i.flags|=1,gn(r,i,h,j),i.child)}function v_(r,i,h,g,k){if(oi(i),i.stateNode===null){var j=Zi,B=h.contextType;typeof B=="object"&&B!==null&&(j=pn(B)),j=new h(g,j),i.memoizedState=j.state!==null&&j.state!==void 0?j.state:null,j.updater=wh,i.stateNode=j,j._reactInternals=i,j=i.stateNode,j.props=g,j.state=i.memoizedState,j.refs={},Jd(i),B=h.contextType,j.context=typeof B=="object"&&B!==null?pn(B):Zi,j.state=i.memoizedState,B=h.getDerivedStateFromProps,typeof B=="function"&&(Sh(i,h,B,g),j.state=i.memoizedState),typeof h.getDerivedStateFromProps=="function"||typeof j.getSnapshotBeforeUpdate=="function"||typeof j.UNSAFE_componentWillMount!="function"&&typeof j.componentWillMount!="function"||(B=j.state,typeof j.componentWillMount=="function"&&j.componentWillMount(),typeof j.UNSAFE_componentWillMount=="function"&&j.UNSAFE_componentWillMount(),B!==j.state&&wh.enqueueReplaceState(j,j.state,null),po(i,g,j,k),mo(),j.state=i.memoizedState),typeof j.componentDidMount=="function"&&(i.flags|=4194308),g=!0}else if(r===null){j=i.stateNode;var K=i.memoizedProps,ne=fi(h,K);j.props=ne;var de=j.context,xe=h.contextType;B=Zi,typeof xe=="object"&&xe!==null&&(B=pn(xe));var be=h.getDerivedStateFromProps;xe=typeof be=="function"||typeof j.getSnapshotBeforeUpdate=="function",K=i.pendingProps!==K,xe||typeof j.UNSAFE_componentWillReceiveProps!="function"&&typeof j.componentWillReceiveProps!="function"||(K||de!==B)&&a_(i,j,g,B),bs=!1;var he=i.memoizedState;j.state=he,po(i,g,j,k),mo(),de=i.memoizedState,K||he!==de||bs?(typeof be=="function"&&(Sh(i,h,be,g),de=i.memoizedState),(ne=bs||i_(i,h,ne,g,he,de,B))?(xe||typeof j.UNSAFE_componentWillMount!="function"&&typeof j.componentWillMount!="function"||(typeof j.componentWillMount=="function"&&j.componentWillMount(),typeof j.UNSAFE_componentWillMount=="function"&&j.UNSAFE_componentWillMount()),typeof j.componentDidMount=="function"&&(i.flags|=4194308)):(typeof j.componentDidMount=="function"&&(i.flags|=4194308),i.memoizedProps=g,i.memoizedState=de),j.props=g,j.state=de,j.context=B,g=ne):(typeof j.componentDidMount=="function"&&(i.flags|=4194308),g=!1)}else{j=i.stateNode,Zd(r,i),B=i.memoizedProps,xe=fi(h,B),j.props=xe,be=i.pendingProps,he=j.context,de=h.contextType,ne=Zi,typeof de=="object"&&de!==null&&(ne=pn(de)),K=h.getDerivedStateFromProps,(de=typeof K=="function"||typeof j.getSnapshotBeforeUpdate=="function")||typeof j.UNSAFE_componentWillReceiveProps!="function"&&typeof j.componentWillReceiveProps!="function"||(B!==be||he!==ne)&&a_(i,j,g,ne),bs=!1,he=i.memoizedState,j.state=he,po(i,g,j,k),mo();var fe=i.memoizedState;B!==be||he!==fe||bs||r!==null&&r.dependencies!==null&&Vl(r.dependencies)?(typeof K=="function"&&(Sh(i,h,K,g),fe=i.memoizedState),(xe=bs||i_(i,h,xe,g,he,fe,ne)||r!==null&&r.dependencies!==null&&Vl(r.dependencies))?(de||typeof j.UNSAFE_componentWillUpdate!="function"&&typeof j.componentWillUpdate!="function"||(typeof j.componentWillUpdate=="function"&&j.componentWillUpdate(g,fe,ne),typeof j.UNSAFE_componentWillUpdate=="function"&&j.UNSAFE_componentWillUpdate(g,fe,ne)),typeof j.componentDidUpdate=="function"&&(i.flags|=4),typeof j.getSnapshotBeforeUpdate=="function"&&(i.flags|=1024)):(typeof j.componentDidUpdate!="function"||B===r.memoizedProps&&he===r.memoizedState||(i.flags|=4),typeof j.getSnapshotBeforeUpdate!="function"||B===r.memoizedProps&&he===r.memoizedState||(i.flags|=1024),i.memoizedProps=g,i.memoizedState=fe),j.props=g,j.state=fe,j.context=ne,g=xe):(typeof j.componentDidUpdate!="function"||B===r.memoizedProps&&he===r.memoizedState||(i.flags|=4),typeof j.getSnapshotBeforeUpdate!="function"||B===r.memoizedProps&&he===r.memoizedState||(i.flags|=1024),g=!1)}return j=g,cc(r,i),g=(i.flags&128)!==0,j||g?(j=i.stateNode,h=g&&typeof h.getDerivedStateFromError!="function"?null:j.render(),i.flags|=1,r!==null&&g?(i.child=di(i,r.child,null,k),i.child=di(i,null,h,k)):gn(r,i,h,k),i.memoizedState=j.state,r=i.child):r=Yr(r,i,k),r}function b_(r,i,h,g){return ii(),i.flags|=256,gn(r,i,h,g),i.child}var jh={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Nh(r){return{baseLanes:r,cachePool:ux()}}function Th(r,i,h){return r=r!==null?r.childLanes&~h:0,i&&(r|=Fn),r}function S_(r,i,h){var g=i.pendingProps,k=!1,j=(i.flags&128)!==0,B;if((B=j)||(B=r!==null&&r.memoizedState===null?!1:(Vt.current&2)!==0),B&&(k=!0,i.flags&=-129),B=(i.flags&32)!==0,i.flags&=-33,r===null){if(lt){if(k?Cs(i):ks(),(r=Mt)?(r=Ay(r,nr),r=r!==null&&r.data!=="&"?r:null,r!==null&&(i.memoizedState={dehydrated:r,treeContext:xs!==null?{id:Er,overflow:jr}:null,retryLane:536870912,hydrationErrors:null},h=tx(r),h.return=i,i.child=h,mn=i,Mt=null)):r=null,r===null)throw ys(i);return hf(r)?i.lanes=32:i.lanes=536870912,null}var K=g.children;return g=g.fallback,k?(ks(),k=i.mode,K=uc({mode:"hidden",children:K},k),g=si(g,k,h,null),K.return=i,g.return=i,K.sibling=g,i.child=K,g=i.child,g.memoizedState=Nh(h),g.childLanes=Th(r,B,h),i.memoizedState=jh,vo(null,g)):(Cs(i),Ah(i,K))}var ne=r.memoizedState;if(ne!==null&&(K=ne.dehydrated,K!==null)){if(j)i.flags&256?(Cs(i),i.flags&=-257,i=Lh(r,i,h)):i.memoizedState!==null?(ks(),i.child=r.child,i.flags|=128,i=null):(ks(),K=g.fallback,k=i.mode,g=uc({mode:"visible",children:g.children},k),K=si(K,k,h,null),K.flags|=2,g.return=i,K.return=i,g.sibling=K,i.child=g,di(i,r.child,null,h),g=i.child,g.memoizedState=Nh(h),g.childLanes=Th(r,B,h),i.memoizedState=jh,i=vo(null,g));else if(Cs(i),hf(K)){if(B=K.nextSibling&&K.nextSibling.dataset,B)var de=B.dgst;B=de,g=Error(s(419)),g.stack="",g.digest=B,oo({value:g,source:null,stack:null}),i=Lh(r,i,h)}else if(Xt||ra(r,i,h,!1),B=(h&r.childLanes)!==0,Xt||B){if(B=Nt,B!==null&&(g=$e(B,h),g!==0&&g!==ne.retryLane))throw ne.retryLane=g,ri(r,g),On(B,r,g),kh;df(K)||yc(),i=Lh(r,i,h)}else df(K)?(i.flags|=192,i.child=r.child,i=null):(r=ne.treeContext,Mt=sr(K.nextSibling),mn=i,lt=!0,_s=null,nr=!1,r!==null&&sx(i,r),i=Ah(i,g.children),i.flags|=4096);return i}return k?(ks(),K=g.fallback,k=i.mode,ne=r.child,de=ne.sibling,g=Fr(ne,{mode:"hidden",children:g.children}),g.subtreeFlags=ne.subtreeFlags&65011712,de!==null?K=Fr(de,K):(K=si(K,k,h,null),K.flags|=2),K.return=i,g.return=i,g.sibling=K,i.child=g,vo(null,g),g=i.child,K=r.child.memoizedState,K===null?K=Nh(h):(k=K.cachePool,k!==null?(ne=Kt._currentValue,k=k.parent!==ne?{parent:ne,pool:ne}:k):k=ux(),K={baseLanes:K.baseLanes|h,cachePool:k}),g.memoizedState=K,g.childLanes=Th(r,B,h),i.memoizedState=jh,vo(r.child,g)):(Cs(i),h=r.child,r=h.sibling,h=Fr(h,{mode:"visible",children:g.children}),h.return=i,h.sibling=null,r!==null&&(B=i.deletions,B===null?(i.deletions=[r],i.flags|=16):B.push(r)),i.child=h,i.memoizedState=null,h)}function Ah(r,i){return i=uc({mode:"visible",children:i},r.mode),i.return=r,r.child=i}function uc(r,i){return r=zn(22,r,null,i),r.lanes=0,r}function Lh(r,i,h){return di(i,r.child,null,h),r=Ah(i,i.pendingProps.children),r.flags|=2,i.memoizedState=null,r}function w_(r,i,h){r.lanes|=i;var g=r.alternate;g!==null&&(g.lanes|=i),Wd(r.return,i,h)}function Dh(r,i,h,g,k,j){var B=r.memoizedState;B===null?r.memoizedState={isBackwards:i,rendering:null,renderingStartTime:0,last:g,tail:h,tailMode:k,treeForkCount:j}:(B.isBackwards=i,B.rendering=null,B.renderingStartTime=0,B.last=g,B.tail=h,B.tailMode=k,B.treeForkCount=j)}function C_(r,i,h){var g=i.pendingProps,k=g.revealOrder,j=g.tail;g=g.children;var B=Vt.current,K=(B&2)!==0;if(K?(B=B&1|2,i.flags|=128):B&=1,P(Vt,B),gn(r,i,g,h),g=lt?ao:0,!K&&r!==null&&(r.flags&128)!==0)e:for(r=i.child;r!==null;){if(r.tag===13)r.memoizedState!==null&&w_(r,h,i);else if(r.tag===19)w_(r,h,i);else if(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;r=r.return}r.sibling.return=r.return,r=r.sibling}switch(k){case"forwards":for(h=i.child,k=null;h!==null;)r=h.alternate,r!==null&&Jl(r)===null&&(k=h),h=h.sibling;h=k,h===null?(k=i.child,i.child=null):(k=h.sibling,h.sibling=null),Dh(i,!1,k,h,j,g);break;case"backwards":case"unstable_legacy-backwards":for(h=null,k=i.child,i.child=null;k!==null;){if(r=k.alternate,r!==null&&Jl(r)===null){i.child=k;break}r=k.sibling,k.sibling=h,h=k,k=r}Dh(i,!0,h,null,j,g);break;case"together":Dh(i,!1,null,null,void 0,g);break;default:i.memoizedState=null}return i.child}function Yr(r,i,h){if(r!==null&&(i.dependencies=r.dependencies),Ns|=i.lanes,(h&i.childLanes)===0)if(r!==null){if(ra(r,i,h,!1),(h&i.childLanes)===0)return null}else return null;if(r!==null&&i.child!==r.child)throw Error(s(153));if(i.child!==null){for(r=i.child,h=Fr(r,r.pendingProps),i.child=h,h.return=i;r.sibling!==null;)r=r.sibling,h=h.sibling=Fr(r,r.pendingProps),h.return=i;h.sibling=null}return i.child}function Rh(r,i){return(r.lanes&i)!==0?!0:(r=r.dependencies,!!(r!==null&&Vl(r)))}function Zk(r,i,h){switch(i.tag){case 3:q(i,i.stateNode.containerInfo),vs(i,Kt,r.memoizedState.cache),ii();break;case 27:case 5:ae(i);break;case 4:q(i,i.stateNode.containerInfo);break;case 10:vs(i,i.type,i.memoizedProps.value);break;case 31:if(i.memoizedState!==null)return i.flags|=128,sh(i),null;break;case 13:var g=i.memoizedState;if(g!==null)return g.dehydrated!==null?(Cs(i),i.flags|=128,null):(h&i.child.childLanes)!==0?S_(r,i,h):(Cs(i),r=Yr(r,i,h),r!==null?r.sibling:null);Cs(i);break;case 19:var k=(r.flags&128)!==0;if(g=(h&i.childLanes)!==0,g||(ra(r,i,h,!1),g=(h&i.childLanes)!==0),k){if(g)return C_(r,i,h);i.flags|=128}if(k=i.memoizedState,k!==null&&(k.rendering=null,k.tail=null,k.lastEffect=null),P(Vt,Vt.current),g)break;return null;case 22:return i.lanes=0,g_(r,i,h,i.pendingProps);case 24:vs(i,Kt,r.memoizedState.cache)}return Yr(r,i,h)}function k_(r,i,h){if(r!==null)if(r.memoizedProps!==i.pendingProps)Xt=!0;else{if(!Rh(r,h)&&(i.flags&128)===0)return Xt=!1,Zk(r,i,h);Xt=(r.flags&131072)!==0}else Xt=!1,lt&&(i.flags&1048576)!==0&&rx(i,ao,i.index);switch(i.lanes=0,i.tag){case 16:e:{var g=i.pendingProps;if(r=ci(i.elementType),i.type=r,typeof r=="function")Bd(r)?(g=fi(r,g),i.tag=1,i=v_(null,i,r,g,h)):(i.tag=0,i=Eh(null,i,r,g,h));else{if(r!=null){var k=r.$$typeof;if(k===E){i.tag=11,i=f_(null,i,r,g,h);break e}else if(k===L){i.tag=14,i=m_(null,i,r,g,h);break e}}throw i=U(r)||r,Error(s(306,i,""))}}return i;case 0:return Eh(r,i,i.type,i.pendingProps,h);case 1:return g=i.type,k=fi(g,i.pendingProps),v_(r,i,g,k,h);case 3:e:{if(q(i,i.stateNode.containerInfo),r===null)throw Error(s(387));g=i.pendingProps;var j=i.memoizedState;k=j.element,Zd(r,i),po(i,g,null,h);var B=i.memoizedState;if(g=B.cache,vs(i,Kt,g),g!==j.cache&&qd(i,[Kt],h,!0),mo(),g=B.element,j.isDehydrated)if(j={element:g,isDehydrated:!1,cache:B.cache},i.updateQueue.baseState=j,i.memoizedState=j,i.flags&256){i=b_(r,i,g,h);break e}else if(g!==k){k=Zn(Error(s(424)),i),oo(k),i=b_(r,i,g,h);break e}else{switch(r=i.stateNode.containerInfo,r.nodeType){case 9:r=r.body;break;default:r=r.nodeName==="HTML"?r.ownerDocument.body:r}for(Mt=sr(r.firstChild),mn=i,lt=!0,_s=null,nr=!0,h=gx(i,null,g,h),i.child=h;h;)h.flags=h.flags&-3|4096,h=h.sibling}else{if(ii(),g===k){i=Yr(r,i,h);break e}gn(r,i,g,h)}i=i.child}return i;case 26:return cc(r,i),r===null?(h=Iy(i.type,null,i.pendingProps,null))?i.memoizedState=h:lt||(h=i.type,r=i.pendingProps,g=Ec(re.current).createElement(h),g[yt]=i,g[Nn]=r,xn(g,h,r),cn(g),i.stateNode=g):i.memoizedState=Iy(i.type,r.memoizedProps,i.pendingProps,r.memoizedState),null;case 27:return ae(i),r===null&&lt&&(g=i.stateNode=Ry(i.type,i.pendingProps,re.current),mn=i,nr=!0,k=Mt,Rs(i.type)?(ff=k,Mt=sr(g.firstChild)):Mt=k),gn(r,i,i.pendingProps.children,h),cc(r,i),r===null&&(i.flags|=4194304),i.child;case 5:return r===null&&lt&&((k=g=Mt)&&(g=TE(g,i.type,i.pendingProps,nr),g!==null?(i.stateNode=g,mn=i,Mt=sr(g.firstChild),nr=!1,k=!0):k=!1),k||ys(i)),ae(i),k=i.type,j=i.pendingProps,B=r!==null?r.memoizedProps:null,g=j.children,lf(k,j)?g=null:B!==null&&lf(k,B)&&(i.flags|=32),i.memoizedState!==null&&(k=ah(r,i,Vk,null,null,h),Mo._currentValue=k),cc(r,i),gn(r,i,g,h),i.child;case 6:return r===null&&lt&&((r=h=Mt)&&(h=AE(h,i.pendingProps,nr),h!==null?(i.stateNode=h,mn=i,Mt=null,r=!0):r=!1),r||ys(i)),null;case 13:return S_(r,i,h);case 4:return q(i,i.stateNode.containerInfo),g=i.pendingProps,r===null?i.child=di(i,null,g,h):gn(r,i,g,h),i.child;case 11:return f_(r,i,i.type,i.pendingProps,h);case 7:return gn(r,i,i.pendingProps,h),i.child;case 8:return gn(r,i,i.pendingProps.children,h),i.child;case 12:return gn(r,i,i.pendingProps.children,h),i.child;case 10:return g=i.pendingProps,vs(i,i.type,g.value),gn(r,i,g.children,h),i.child;case 9:return k=i.type._context,g=i.pendingProps.children,oi(i),k=pn(k),g=g(k),i.flags|=1,gn(r,i,g,h),i.child;case 14:return m_(r,i,i.type,i.pendingProps,h);case 15:return p_(r,i,i.type,i.pendingProps,h);case 19:return C_(r,i,h);case 31:return Jk(r,i,h);case 22:return g_(r,i,h,i.pendingProps);case 24:return oi(i),g=pn(Kt),r===null?(k=Xd(),k===null&&(k=Nt,j=Kd(),k.pooledCache=j,j.refCount++,j!==null&&(k.pooledCacheLanes|=h),k=j),i.memoizedState={parent:g,cache:k},Jd(i),vs(i,Kt,k)):((r.lanes&h)!==0&&(Zd(r,i),po(i,null,null,h),mo()),k=r.memoizedState,j=i.memoizedState,k.parent!==g?(k={parent:g,cache:g},i.memoizedState=k,i.lanes===0&&(i.memoizedState=i.updateQueue.baseState=k),vs(i,Kt,g)):(g=j.cache,vs(i,Kt,g),g!==k.cache&&qd(i,[Kt],h,!0))),gn(r,i,i.pendingProps.children,h),i.child;case 29:throw i.pendingProps}throw Error(s(156,i.tag))}function Xr(r){r.flags|=4}function Oh(r,i,h,g,k){if((i=(r.mode&32)!==0)&&(i=!1),i){if(r.flags|=16777216,(k&335544128)===k)if(r.stateNode.complete)r.flags|=8192;else if(J_())r.flags|=8192;else throw ui=Kl,Qd}else r.flags&=-16777217}function E_(r,i){if(i.type!=="stylesheet"||(i.state.loading&4)!==0)r.flags&=-16777217;else if(r.flags|=16777216,!Hy(i))if(J_())r.flags|=8192;else throw ui=Kl,Qd}function dc(r,i){i!==null&&(r.flags|=4),r.flags&16384&&(i=r.tag!==22?jl():536870912,r.lanes|=i,pa|=i)}function bo(r,i){if(!lt)switch(r.tailMode){case"hidden":i=r.tail;for(var h=null;i!==null;)i.alternate!==null&&(h=i),i=i.sibling;h===null?r.tail=null:h.sibling=null;break;case"collapsed":h=r.tail;for(var g=null;h!==null;)h.alternate!==null&&(g=h),h=h.sibling;g===null?i||r.tail===null?r.tail=null:r.tail.sibling=null:g.sibling=null}}function It(r){var i=r.alternate!==null&&r.alternate.child===r.child,h=0,g=0;if(i)for(var k=r.child;k!==null;)h|=k.lanes|k.childLanes,g|=k.subtreeFlags&65011712,g|=k.flags&65011712,k.return=r,k=k.sibling;else for(k=r.child;k!==null;)h|=k.lanes|k.childLanes,g|=k.subtreeFlags,g|=k.flags,k.return=r,k=k.sibling;return r.subtreeFlags|=g,r.childLanes=h,i}function eE(r,i,h){var g=i.pendingProps;switch(Ud(i),i.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return It(i),null;case 1:return It(i),null;case 3:return h=i.stateNode,g=null,r!==null&&(g=r.memoizedState.cache),i.memoizedState.cache!==g&&(i.flags|=2048),Wr(Kt),Z(),h.pendingContext&&(h.context=h.pendingContext,h.pendingContext=null),(r===null||r.child===null)&&(na(i)?Xr(i):r===null||r.memoizedState.isDehydrated&&(i.flags&256)===0||(i.flags|=1024,Vd())),It(i),null;case 26:var k=i.type,j=i.memoizedState;return r===null?(Xr(i),j!==null?(It(i),E_(i,j)):(It(i),Oh(i,k,null,g,h))):j?j!==r.memoizedState?(Xr(i),It(i),E_(i,j)):(It(i),i.flags&=-16777217):(r=r.memoizedProps,r!==g&&Xr(i),It(i),Oh(i,k,r,g,h)),null;case 27:if(se(i),h=re.current,k=i.type,r!==null&&i.stateNode!=null)r.memoizedProps!==g&&Xr(i);else{if(!g){if(i.stateNode===null)throw Error(s(166));return It(i),null}r=ee.current,na(i)?ix(i):(r=Ry(k,g,h),i.stateNode=r,Xr(i))}return It(i),null;case 5:if(se(i),k=i.type,r!==null&&i.stateNode!=null)r.memoizedProps!==g&&Xr(i);else{if(!g){if(i.stateNode===null)throw Error(s(166));return It(i),null}if(j=ee.current,na(i))ix(i);else{var B=Ec(re.current);switch(j){case 1:j=B.createElementNS("http://www.w3.org/2000/svg",k);break;case 2:j=B.createElementNS("http://www.w3.org/1998/Math/MathML",k);break;default:switch(k){case"svg":j=B.createElementNS("http://www.w3.org/2000/svg",k);break;case"math":j=B.createElementNS("http://www.w3.org/1998/Math/MathML",k);break;case"script":j=B.createElement("div"),j.innerHTML="<script><\/script>",j=j.removeChild(j.firstChild);break;case"select":j=typeof g.is=="string"?B.createElement("select",{is:g.is}):B.createElement("select"),g.multiple?j.multiple=!0:g.size&&(j.size=g.size);break;default:j=typeof g.is=="string"?B.createElement(k,{is:g.is}):B.createElement(k)}}j[yt]=i,j[Nn]=g;e:for(B=i.child;B!==null;){if(B.tag===5||B.tag===6)j.appendChild(B.stateNode);else if(B.tag!==4&&B.tag!==27&&B.child!==null){B.child.return=B,B=B.child;continue}if(B===i)break e;for(;B.sibling===null;){if(B.return===null||B.return===i)break e;B=B.return}B.sibling.return=B.return,B=B.sibling}i.stateNode=j;e:switch(xn(j,k,g),k){case"button":case"input":case"select":case"textarea":g=!!g.autoFocus;break e;case"img":g=!0;break e;default:g=!1}g&&Xr(i)}}return It(i),Oh(i,i.type,r===null?null:r.memoizedProps,i.pendingProps,h),null;case 6:if(r&&i.stateNode!=null)r.memoizedProps!==g&&Xr(i);else{if(typeof g!="string"&&i.stateNode===null)throw Error(s(166));if(r=re.current,na(i)){if(r=i.stateNode,h=i.memoizedProps,g=null,k=mn,k!==null)switch(k.tag){case 27:case 5:g=k.memoizedProps}r[yt]=i,r=!!(r.nodeValue===h||g!==null&&g.suppressHydrationWarning===!0||Sy(r.nodeValue,h)),r||ys(i,!0)}else r=Ec(r).createTextNode(g),r[yt]=i,i.stateNode=r}return It(i),null;case 31:if(h=i.memoizedState,r===null||r.memoizedState!==null){if(g=na(i),h!==null){if(r===null){if(!g)throw Error(s(318));if(r=i.memoizedState,r=r!==null?r.dehydrated:null,!r)throw Error(s(557));r[yt]=i}else ii(),(i.flags&128)===0&&(i.memoizedState=null),i.flags|=4;It(i),r=!1}else h=Vd(),r!==null&&r.memoizedState!==null&&(r.memoizedState.hydrationErrors=h),r=!0;if(!r)return i.flags&256?(Hn(i),i):(Hn(i),null);if((i.flags&128)!==0)throw Error(s(558))}return It(i),null;case 13:if(g=i.memoizedState,r===null||r.memoizedState!==null&&r.memoizedState.dehydrated!==null){if(k=na(i),g!==null&&g.dehydrated!==null){if(r===null){if(!k)throw Error(s(318));if(k=i.memoizedState,k=k!==null?k.dehydrated:null,!k)throw Error(s(317));k[yt]=i}else ii(),(i.flags&128)===0&&(i.memoizedState=null),i.flags|=4;It(i),k=!1}else k=Vd(),r!==null&&r.memoizedState!==null&&(r.memoizedState.hydrationErrors=k),k=!0;if(!k)return i.flags&256?(Hn(i),i):(Hn(i),null)}return Hn(i),(i.flags&128)!==0?(i.lanes=h,i):(h=g!==null,r=r!==null&&r.memoizedState!==null,h&&(g=i.child,k=null,g.alternate!==null&&g.alternate.memoizedState!==null&&g.alternate.memoizedState.cachePool!==null&&(k=g.alternate.memoizedState.cachePool.pool),j=null,g.memoizedState!==null&&g.memoizedState.cachePool!==null&&(j=g.memoizedState.cachePool.pool),j!==k&&(g.flags|=2048)),h!==r&&h&&(i.child.flags|=8192),dc(i,i.updateQueue),It(i),null);case 4:return Z(),r===null&&nf(i.stateNode.containerInfo),It(i),null;case 10:return Wr(i.type),It(i),null;case 19:if(F(Vt),g=i.memoizedState,g===null)return It(i),null;if(k=(i.flags&128)!==0,j=g.rendering,j===null)if(k)bo(g,!1);else{if(Ut!==0||r!==null&&(r.flags&128)!==0)for(r=i.child;r!==null;){if(j=Jl(r),j!==null){for(i.flags|=128,bo(g,!1),r=j.updateQueue,i.updateQueue=r,dc(i,r),i.subtreeFlags=0,r=h,h=i.child;h!==null;)ex(h,r),h=h.sibling;return P(Vt,Vt.current&1|2),lt&&Vr(i,g.treeForkCount),i.child}r=r.sibling}g.tail!==null&&dt()>gc&&(i.flags|=128,k=!0,bo(g,!1),i.lanes=4194304)}else{if(!k)if(r=Jl(j),r!==null){if(i.flags|=128,k=!0,r=r.updateQueue,i.updateQueue=r,dc(i,r),bo(g,!0),g.tail===null&&g.tailMode==="hidden"&&!j.alternate&&!lt)return It(i),null}else 2*dt()-g.renderingStartTime>gc&&h!==536870912&&(i.flags|=128,k=!0,bo(g,!1),i.lanes=4194304);g.isBackwards?(j.sibling=i.child,i.child=j):(r=g.last,r!==null?r.sibling=j:i.child=j,g.last=j)}return g.tail!==null?(r=g.tail,g.rendering=r,g.tail=r.sibling,g.renderingStartTime=dt(),r.sibling=null,h=Vt.current,P(Vt,k?h&1|2:h&1),lt&&Vr(i,g.treeForkCount),r):(It(i),null);case 22:case 23:return Hn(i),rh(),g=i.memoizedState!==null,r!==null?r.memoizedState!==null!==g&&(i.flags|=8192):g&&(i.flags|=8192),g?(h&536870912)!==0&&(i.flags&128)===0&&(It(i),i.subtreeFlags&6&&(i.flags|=8192)):It(i),h=i.updateQueue,h!==null&&dc(i,h.retryQueue),h=null,r!==null&&r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(h=r.memoizedState.cachePool.pool),g=null,i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(g=i.memoizedState.cachePool.pool),g!==h&&(i.flags|=2048),r!==null&&F(li),null;case 24:return h=null,r!==null&&(h=r.memoizedState.cache),i.memoizedState.cache!==h&&(i.flags|=2048),Wr(Kt),It(i),null;case 25:return null;case 30:return null}throw Error(s(156,i.tag))}function tE(r,i){switch(Ud(i),i.tag){case 1:return r=i.flags,r&65536?(i.flags=r&-65537|128,i):null;case 3:return Wr(Kt),Z(),r=i.flags,(r&65536)!==0&&(r&128)===0?(i.flags=r&-65537|128,i):null;case 26:case 27:case 5:return se(i),null;case 31:if(i.memoizedState!==null){if(Hn(i),i.alternate===null)throw Error(s(340));ii()}return r=i.flags,r&65536?(i.flags=r&-65537|128,i):null;case 13:if(Hn(i),r=i.memoizedState,r!==null&&r.dehydrated!==null){if(i.alternate===null)throw Error(s(340));ii()}return r=i.flags,r&65536?(i.flags=r&-65537|128,i):null;case 19:return F(Vt),null;case 4:return Z(),null;case 10:return Wr(i.type),null;case 22:case 23:return Hn(i),rh(),r!==null&&F(li),r=i.flags,r&65536?(i.flags=r&-65537|128,i):null;case 24:return Wr(Kt),null;case 25:return null;default:return null}}function j_(r,i){switch(Ud(i),i.tag){case 3:Wr(Kt),Z();break;case 26:case 27:case 5:se(i);break;case 4:Z();break;case 31:i.memoizedState!==null&&Hn(i);break;case 13:Hn(i);break;case 19:F(Vt);break;case 10:Wr(i.type);break;case 22:case 23:Hn(i),rh(),r!==null&&F(li);break;case 24:Wr(Kt)}}function So(r,i){try{var h=i.updateQueue,g=h!==null?h.lastEffect:null;if(g!==null){var k=g.next;h=k;do{if((h.tag&r)===r){g=void 0;var j=h.create,B=h.inst;g=j(),B.destroy=g}h=h.next}while(h!==k)}}catch(K){bt(i,i.return,K)}}function Es(r,i,h){try{var g=i.updateQueue,k=g!==null?g.lastEffect:null;if(k!==null){var j=k.next;g=j;do{if((g.tag&r)===r){var B=g.inst,K=B.destroy;if(K!==void 0){B.destroy=void 0,k=i;var ne=h,de=K;try{de()}catch(xe){bt(k,ne,xe)}}}g=g.next}while(g!==j)}}catch(xe){bt(i,i.return,xe)}}function N_(r){var i=r.updateQueue;if(i!==null){var h=r.stateNode;try{_x(i,h)}catch(g){bt(r,r.return,g)}}}function T_(r,i,h){h.props=fi(r.type,r.memoizedProps),h.state=r.memoizedState;try{h.componentWillUnmount()}catch(g){bt(r,i,g)}}function wo(r,i){try{var h=r.ref;if(h!==null){switch(r.tag){case 26:case 27:case 5:var g=r.stateNode;break;case 30:g=r.stateNode;break;default:g=r.stateNode}typeof h=="function"?r.refCleanup=h(g):h.current=g}}catch(k){bt(r,i,k)}}function Nr(r,i){var h=r.ref,g=r.refCleanup;if(h!==null)if(typeof g=="function")try{g()}catch(k){bt(r,i,k)}finally{r.refCleanup=null,r=r.alternate,r!=null&&(r.refCleanup=null)}else if(typeof h=="function")try{h(null)}catch(k){bt(r,i,k)}else h.current=null}function A_(r){var i=r.type,h=r.memoizedProps,g=r.stateNode;try{e:switch(i){case"button":case"input":case"select":case"textarea":h.autoFocus&&g.focus();break e;case"img":h.src?g.src=h.src:h.srcSet&&(g.srcset=h.srcSet)}}catch(k){bt(r,r.return,k)}}function Mh(r,i,h){try{var g=r.stateNode;wE(g,r.type,h,i),g[Nn]=i}catch(k){bt(r,r.return,k)}}function L_(r){return r.tag===5||r.tag===3||r.tag===26||r.tag===27&&Rs(r.type)||r.tag===4}function Ih(r){e:for(;;){for(;r.sibling===null;){if(r.return===null||L_(r.return))return null;r=r.return}for(r.sibling.return=r.return,r=r.sibling;r.tag!==5&&r.tag!==6&&r.tag!==18;){if(r.tag===27&&Rs(r.type)||r.flags&2||r.child===null||r.tag===4)continue e;r.child.return=r,r=r.child}if(!(r.flags&2))return r.stateNode}}function Ph(r,i,h){var g=r.tag;if(g===5||g===6)r=r.stateNode,i?(h.nodeType===9?h.body:h.nodeName==="HTML"?h.ownerDocument.body:h).insertBefore(r,i):(i=h.nodeType===9?h.body:h.nodeName==="HTML"?h.ownerDocument.body:h,i.appendChild(r),h=h._reactRootContainer,h!=null||i.onclick!==null||(i.onclick=Hr));else if(g!==4&&(g===27&&Rs(r.type)&&(h=r.stateNode,i=null),r=r.child,r!==null))for(Ph(r,i,h),r=r.sibling;r!==null;)Ph(r,i,h),r=r.sibling}function hc(r,i,h){var g=r.tag;if(g===5||g===6)r=r.stateNode,i?h.insertBefore(r,i):h.appendChild(r);else if(g!==4&&(g===27&&Rs(r.type)&&(h=r.stateNode),r=r.child,r!==null))for(hc(r,i,h),r=r.sibling;r!==null;)hc(r,i,h),r=r.sibling}function D_(r){var i=r.stateNode,h=r.memoizedProps;try{for(var g=r.type,k=i.attributes;k.length;)i.removeAttributeNode(k[0]);xn(i,g,h),i[yt]=r,i[Nn]=h}catch(j){bt(r,r.return,j)}}var Qr=!1,Qt=!1,Bh=!1,R_=typeof WeakSet=="function"?WeakSet:Set,un=null;function nE(r,i){if(r=r.containerInfo,af=Rc,r=Gg(r),Ld(r)){if("selectionStart"in r)var h={start:r.selectionStart,end:r.selectionEnd};else e:{h=(h=r.ownerDocument)&&h.defaultView||window;var g=h.getSelection&&h.getSelection();if(g&&g.rangeCount!==0){h=g.anchorNode;var k=g.anchorOffset,j=g.focusNode;g=g.focusOffset;try{h.nodeType,j.nodeType}catch{h=null;break e}var B=0,K=-1,ne=-1,de=0,xe=0,be=r,he=null;t:for(;;){for(var fe;be!==h||k!==0&&be.nodeType!==3||(K=B+k),be!==j||g!==0&&be.nodeType!==3||(ne=B+g),be.nodeType===3&&(B+=be.nodeValue.length),(fe=be.firstChild)!==null;)he=be,be=fe;for(;;){if(be===r)break t;if(he===h&&++de===k&&(K=B),he===j&&++xe===g&&(ne=B),(fe=be.nextSibling)!==null)break;be=he,he=be.parentNode}be=fe}h=K===-1||ne===-1?null:{start:K,end:ne}}else h=null}h=h||{start:0,end:0}}else h=null;for(of={focusedElem:r,selectionRange:h},Rc=!1,un=i;un!==null;)if(i=un,r=i.child,(i.subtreeFlags&1028)!==0&&r!==null)r.return=i,un=r;else for(;un!==null;){switch(i=un,j=i.alternate,r=i.flags,i.tag){case 0:if((r&4)!==0&&(r=i.updateQueue,r=r!==null?r.events:null,r!==null))for(h=0;h<r.length;h++)k=r[h],k.ref.impl=k.nextImpl;break;case 11:case 15:break;case 1:if((r&1024)!==0&&j!==null){r=void 0,h=i,k=j.memoizedProps,j=j.memoizedState,g=h.stateNode;try{var Me=fi(h.type,k);r=g.getSnapshotBeforeUpdate(Me,j),g.__reactInternalSnapshotBeforeUpdate=r}catch(Ue){bt(h,h.return,Ue)}}break;case 3:if((r&1024)!==0){if(r=i.stateNode.containerInfo,h=r.nodeType,h===9)uf(r);else if(h===1)switch(r.nodeName){case"HEAD":case"HTML":case"BODY":uf(r);break;default:r.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((r&1024)!==0)throw Error(s(163))}if(r=i.sibling,r!==null){r.return=i.return,un=r;break}un=i.return}}function O_(r,i,h){var g=h.flags;switch(h.tag){case 0:case 11:case 15:Zr(r,h),g&4&&So(5,h);break;case 1:if(Zr(r,h),g&4)if(r=h.stateNode,i===null)try{r.componentDidMount()}catch(B){bt(h,h.return,B)}else{var k=fi(h.type,i.memoizedProps);i=i.memoizedState;try{r.componentDidUpdate(k,i,r.__reactInternalSnapshotBeforeUpdate)}catch(B){bt(h,h.return,B)}}g&64&&N_(h),g&512&&wo(h,h.return);break;case 3:if(Zr(r,h),g&64&&(r=h.updateQueue,r!==null)){if(i=null,h.child!==null)switch(h.child.tag){case 27:case 5:i=h.child.stateNode;break;case 1:i=h.child.stateNode}try{_x(r,i)}catch(B){bt(h,h.return,B)}}break;case 27:i===null&&g&4&&D_(h);case 26:case 5:Zr(r,h),i===null&&g&4&&A_(h),g&512&&wo(h,h.return);break;case 12:Zr(r,h);break;case 31:Zr(r,h),g&4&&P_(r,h);break;case 13:Zr(r,h),g&4&&B_(r,h),g&64&&(r=h.memoizedState,r!==null&&(r=r.dehydrated,r!==null&&(h=dE.bind(null,h),LE(r,h))));break;case 22:if(g=h.memoizedState!==null||Qr,!g){i=i!==null&&i.memoizedState!==null||Qt,k=Qr;var j=Qt;Qr=g,(Qt=i)&&!j?es(r,h,(h.subtreeFlags&8772)!==0):Zr(r,h),Qr=k,Qt=j}break;case 30:break;default:Zr(r,h)}}function M_(r){var i=r.alternate;i!==null&&(r.alternate=null,M_(i)),r.child=null,r.deletions=null,r.sibling=null,r.tag===5&&(i=r.stateNode,i!==null&&md(i)),r.stateNode=null,r.return=null,r.dependencies=null,r.memoizedProps=null,r.memoizedState=null,r.pendingProps=null,r.stateNode=null,r.updateQueue=null}var Bt=null,An=!1;function Jr(r,i,h){for(h=h.child;h!==null;)I_(r,i,h),h=h.sibling}function I_(r,i,h){if(ct&&typeof ct.onCommitFiberUnmount=="function")try{ct.onCommitFiberUnmount(wt,h)}catch{}switch(h.tag){case 26:Qt||Nr(h,i),Jr(r,i,h),h.memoizedState?h.memoizedState.count--:h.stateNode&&(h=h.stateNode,h.parentNode.removeChild(h));break;case 27:Qt||Nr(h,i);var g=Bt,k=An;Rs(h.type)&&(Bt=h.stateNode,An=!1),Jr(r,i,h),Do(h.stateNode),Bt=g,An=k;break;case 5:Qt||Nr(h,i);case 6:if(g=Bt,k=An,Bt=null,Jr(r,i,h),Bt=g,An=k,Bt!==null)if(An)try{(Bt.nodeType===9?Bt.body:Bt.nodeName==="HTML"?Bt.ownerDocument.body:Bt).removeChild(h.stateNode)}catch(j){bt(h,i,j)}else try{Bt.removeChild(h.stateNode)}catch(j){bt(h,i,j)}break;case 18:Bt!==null&&(An?(r=Bt,Ny(r.nodeType===9?r.body:r.nodeName==="HTML"?r.ownerDocument.body:r,h.stateNode),wa(r)):Ny(Bt,h.stateNode));break;case 4:g=Bt,k=An,Bt=h.stateNode.containerInfo,An=!0,Jr(r,i,h),Bt=g,An=k;break;case 0:case 11:case 14:case 15:Es(2,h,i),Qt||Es(4,h,i),Jr(r,i,h);break;case 1:Qt||(Nr(h,i),g=h.stateNode,typeof g.componentWillUnmount=="function"&&T_(h,i,g)),Jr(r,i,h);break;case 21:Jr(r,i,h);break;case 22:Qt=(g=Qt)||h.memoizedState!==null,Jr(r,i,h),Qt=g;break;default:Jr(r,i,h)}}function P_(r,i){if(i.memoizedState===null&&(r=i.alternate,r!==null&&(r=r.memoizedState,r!==null))){r=r.dehydrated;try{wa(r)}catch(h){bt(i,i.return,h)}}}function B_(r,i){if(i.memoizedState===null&&(r=i.alternate,r!==null&&(r=r.memoizedState,r!==null&&(r=r.dehydrated,r!==null))))try{wa(r)}catch(h){bt(i,i.return,h)}}function rE(r){switch(r.tag){case 31:case 13:case 19:var i=r.stateNode;return i===null&&(i=r.stateNode=new R_),i;case 22:return r=r.stateNode,i=r._retryCache,i===null&&(i=r._retryCache=new R_),i;default:throw Error(s(435,r.tag))}}function fc(r,i){var h=rE(r);i.forEach(function(g){if(!h.has(g)){h.add(g);var k=hE.bind(null,r,g);g.then(k,k)}})}function Ln(r,i){var h=i.deletions;if(h!==null)for(var g=0;g<h.length;g++){var k=h[g],j=r,B=i,K=B;e:for(;K!==null;){switch(K.tag){case 27:if(Rs(K.type)){Bt=K.stateNode,An=!1;break e}break;case 5:Bt=K.stateNode,An=!1;break e;case 3:case 4:Bt=K.stateNode.containerInfo,An=!0;break e}K=K.return}if(Bt===null)throw Error(s(160));I_(j,B,k),Bt=null,An=!1,j=k.alternate,j!==null&&(j.return=null),k.return=null}if(i.subtreeFlags&13886)for(i=i.child;i!==null;)z_(i,r),i=i.sibling}var pr=null;function z_(r,i){var h=r.alternate,g=r.flags;switch(r.tag){case 0:case 11:case 14:case 15:Ln(i,r),Dn(r),g&4&&(Es(3,r,r.return),So(3,r),Es(5,r,r.return));break;case 1:Ln(i,r),Dn(r),g&512&&(Qt||h===null||Nr(h,h.return)),g&64&&Qr&&(r=r.updateQueue,r!==null&&(g=r.callbacks,g!==null&&(h=r.shared.hiddenCallbacks,r.shared.hiddenCallbacks=h===null?g:h.concat(g))));break;case 26:var k=pr;if(Ln(i,r),Dn(r),g&512&&(Qt||h===null||Nr(h,h.return)),g&4){var j=h!==null?h.memoizedState:null;if(g=r.memoizedState,h===null)if(g===null)if(r.stateNode===null){e:{g=r.type,h=r.memoizedProps,k=k.ownerDocument||k;t:switch(g){case"title":j=k.getElementsByTagName("title")[0],(!j||j[Ya]||j[yt]||j.namespaceURI==="http://www.w3.org/2000/svg"||j.hasAttribute("itemprop"))&&(j=k.createElement(g),k.head.insertBefore(j,k.querySelector("head > title"))),xn(j,g,h),j[yt]=r,cn(j),g=j;break e;case"link":var B=zy("link","href",k).get(g+(h.href||""));if(B){for(var K=0;K<B.length;K++)if(j=B[K],j.getAttribute("href")===(h.href==null||h.href===""?null:h.href)&&j.getAttribute("rel")===(h.rel==null?null:h.rel)&&j.getAttribute("title")===(h.title==null?null:h.title)&&j.getAttribute("crossorigin")===(h.crossOrigin==null?null:h.crossOrigin)){B.splice(K,1);break t}}j=k.createElement(g),xn(j,g,h),k.head.appendChild(j);break;case"meta":if(B=zy("meta","content",k).get(g+(h.content||""))){for(K=0;K<B.length;K++)if(j=B[K],j.getAttribute("content")===(h.content==null?null:""+h.content)&&j.getAttribute("name")===(h.name==null?null:h.name)&&j.getAttribute("property")===(h.property==null?null:h.property)&&j.getAttribute("http-equiv")===(h.httpEquiv==null?null:h.httpEquiv)&&j.getAttribute("charset")===(h.charSet==null?null:h.charSet)){B.splice(K,1);break t}}j=k.createElement(g),xn(j,g,h),k.head.appendChild(j);break;default:throw Error(s(468,g))}j[yt]=r,cn(j),g=j}r.stateNode=g}else $y(k,r.type,r.stateNode);else r.stateNode=By(k,g,r.memoizedProps);else j!==g?(j===null?h.stateNode!==null&&(h=h.stateNode,h.parentNode.removeChild(h)):j.count--,g===null?$y(k,r.type,r.stateNode):By(k,g,r.memoizedProps)):g===null&&r.stateNode!==null&&Mh(r,r.memoizedProps,h.memoizedProps)}break;case 27:Ln(i,r),Dn(r),g&512&&(Qt||h===null||Nr(h,h.return)),h!==null&&g&4&&Mh(r,r.memoizedProps,h.memoizedProps);break;case 5:if(Ln(i,r),Dn(r),g&512&&(Qt||h===null||Nr(h,h.return)),r.flags&32){k=r.stateNode;try{Wi(k,"")}catch(Me){bt(r,r.return,Me)}}g&4&&r.stateNode!=null&&(k=r.memoizedProps,Mh(r,k,h!==null?h.memoizedProps:k)),g&1024&&(Bh=!0);break;case 6:if(Ln(i,r),Dn(r),g&4){if(r.stateNode===null)throw Error(s(162));g=r.memoizedProps,h=r.stateNode;try{h.nodeValue=g}catch(Me){bt(r,r.return,Me)}}break;case 3:if(Tc=null,k=pr,pr=jc(i.containerInfo),Ln(i,r),pr=k,Dn(r),g&4&&h!==null&&h.memoizedState.isDehydrated)try{wa(i.containerInfo)}catch(Me){bt(r,r.return,Me)}Bh&&(Bh=!1,$_(r));break;case 4:g=pr,pr=jc(r.stateNode.containerInfo),Ln(i,r),Dn(r),pr=g;break;case 12:Ln(i,r),Dn(r);break;case 31:Ln(i,r),Dn(r),g&4&&(g=r.updateQueue,g!==null&&(r.updateQueue=null,fc(r,g)));break;case 13:Ln(i,r),Dn(r),r.child.flags&8192&&r.memoizedState!==null!=(h!==null&&h.memoizedState!==null)&&(pc=dt()),g&4&&(g=r.updateQueue,g!==null&&(r.updateQueue=null,fc(r,g)));break;case 22:k=r.memoizedState!==null;var ne=h!==null&&h.memoizedState!==null,de=Qr,xe=Qt;if(Qr=de||k,Qt=xe||ne,Ln(i,r),Qt=xe,Qr=de,Dn(r),g&8192)e:for(i=r.stateNode,i._visibility=k?i._visibility&-2:i._visibility|1,k&&(h===null||ne||Qr||Qt||mi(r)),h=null,i=r;;){if(i.tag===5||i.tag===26){if(h===null){ne=h=i;try{if(j=ne.stateNode,k)B=j.style,typeof B.setProperty=="function"?B.setProperty("display","none","important"):B.display="none";else{K=ne.stateNode;var be=ne.memoizedProps.style,he=be!=null&&be.hasOwnProperty("display")?be.display:null;K.style.display=he==null||typeof he=="boolean"?"":(""+he).trim()}}catch(Me){bt(ne,ne.return,Me)}}}else if(i.tag===6){if(h===null){ne=i;try{ne.stateNode.nodeValue=k?"":ne.memoizedProps}catch(Me){bt(ne,ne.return,Me)}}}else if(i.tag===18){if(h===null){ne=i;try{var fe=ne.stateNode;k?Ty(fe,!0):Ty(ne.stateNode,!1)}catch(Me){bt(ne,ne.return,Me)}}}else if((i.tag!==22&&i.tag!==23||i.memoizedState===null||i===r)&&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;h===i&&(h=null),i=i.return}h===i&&(h=null),i.sibling.return=i.return,i=i.sibling}g&4&&(g=r.updateQueue,g!==null&&(h=g.retryQueue,h!==null&&(g.retryQueue=null,fc(r,h))));break;case 19:Ln(i,r),Dn(r),g&4&&(g=r.updateQueue,g!==null&&(r.updateQueue=null,fc(r,g)));break;case 30:break;case 21:break;default:Ln(i,r),Dn(r)}}function Dn(r){var i=r.flags;if(i&2){try{for(var h,g=r.return;g!==null;){if(L_(g)){h=g;break}g=g.return}if(h==null)throw Error(s(160));switch(h.tag){case 27:var k=h.stateNode,j=Ih(r);hc(r,j,k);break;case 5:var B=h.stateNode;h.flags&32&&(Wi(B,""),h.flags&=-33);var K=Ih(r);hc(r,K,B);break;case 3:case 4:var ne=h.stateNode.containerInfo,de=Ih(r);Ph(r,de,ne);break;default:throw Error(s(161))}}catch(xe){bt(r,r.return,xe)}r.flags&=-3}i&4096&&(r.flags&=-4097)}function $_(r){if(r.subtreeFlags&1024)for(r=r.child;r!==null;){var i=r;$_(i),i.tag===5&&i.flags&1024&&i.stateNode.reset(),r=r.sibling}}function Zr(r,i){if(i.subtreeFlags&8772)for(i=i.child;i!==null;)O_(r,i.alternate,i),i=i.sibling}function mi(r){for(r=r.child;r!==null;){var i=r;switch(i.tag){case 0:case 11:case 14:case 15:Es(4,i,i.return),mi(i);break;case 1:Nr(i,i.return);var h=i.stateNode;typeof h.componentWillUnmount=="function"&&T_(i,i.return,h),mi(i);break;case 27:Do(i.stateNode);case 26:case 5:Nr(i,i.return),mi(i);break;case 22:i.memoizedState===null&&mi(i);break;case 30:mi(i);break;default:mi(i)}r=r.sibling}}function es(r,i,h){for(h=h&&(i.subtreeFlags&8772)!==0,i=i.child;i!==null;){var g=i.alternate,k=r,j=i,B=j.flags;switch(j.tag){case 0:case 11:case 15:es(k,j,h),So(4,j);break;case 1:if(es(k,j,h),g=j,k=g.stateNode,typeof k.componentDidMount=="function")try{k.componentDidMount()}catch(de){bt(g,g.return,de)}if(g=j,k=g.updateQueue,k!==null){var K=g.stateNode;try{var ne=k.shared.hiddenCallbacks;if(ne!==null)for(k.shared.hiddenCallbacks=null,k=0;k<ne.length;k++)xx(ne[k],K)}catch(de){bt(g,g.return,de)}}h&&B&64&&N_(j),wo(j,j.return);break;case 27:D_(j);case 26:case 5:es(k,j,h),h&&g===null&&B&4&&A_(j),wo(j,j.return);break;case 12:es(k,j,h);break;case 31:es(k,j,h),h&&B&4&&P_(k,j);break;case 13:es(k,j,h),h&&B&4&&B_(k,j);break;case 22:j.memoizedState===null&&es(k,j,h),wo(j,j.return);break;case 30:break;default:es(k,j,h)}i=i.sibling}}function zh(r,i){var h=null;r!==null&&r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(h=r.memoizedState.cachePool.pool),r=null,i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(r=i.memoizedState.cachePool.pool),r!==h&&(r!=null&&r.refCount++,h!=null&&lo(h))}function $h(r,i){r=null,i.alternate!==null&&(r=i.alternate.memoizedState.cache),i=i.memoizedState.cache,i!==r&&(i.refCount++,r!=null&&lo(r))}function gr(r,i,h,g){if(i.subtreeFlags&10256)for(i=i.child;i!==null;)H_(r,i,h,g),i=i.sibling}function H_(r,i,h,g){var k=i.flags;switch(i.tag){case 0:case 11:case 15:gr(r,i,h,g),k&2048&&So(9,i);break;case 1:gr(r,i,h,g);break;case 3:gr(r,i,h,g),k&2048&&(r=null,i.alternate!==null&&(r=i.alternate.memoizedState.cache),i=i.memoizedState.cache,i!==r&&(i.refCount++,r!=null&&lo(r)));break;case 12:if(k&2048){gr(r,i,h,g),r=i.stateNode;try{var j=i.memoizedProps,B=j.id,K=j.onPostCommit;typeof K=="function"&&K(B,i.alternate===null?"mount":"update",r.passiveEffectDuration,-0)}catch(ne){bt(i,i.return,ne)}}else gr(r,i,h,g);break;case 31:gr(r,i,h,g);break;case 13:gr(r,i,h,g);break;case 23:break;case 22:j=i.stateNode,B=i.alternate,i.memoizedState!==null?j._visibility&2?gr(r,i,h,g):Co(r,i):j._visibility&2?gr(r,i,h,g):(j._visibility|=2,ha(r,i,h,g,(i.subtreeFlags&10256)!==0||!1)),k&2048&&zh(B,i);break;case 24:gr(r,i,h,g),k&2048&&$h(i.alternate,i);break;default:gr(r,i,h,g)}}function ha(r,i,h,g,k){for(k=k&&((i.subtreeFlags&10256)!==0||!1),i=i.child;i!==null;){var j=r,B=i,K=h,ne=g,de=B.flags;switch(B.tag){case 0:case 11:case 15:ha(j,B,K,ne,k),So(8,B);break;case 23:break;case 22:var xe=B.stateNode;B.memoizedState!==null?xe._visibility&2?ha(j,B,K,ne,k):Co(j,B):(xe._visibility|=2,ha(j,B,K,ne,k)),k&&de&2048&&zh(B.alternate,B);break;case 24:ha(j,B,K,ne,k),k&&de&2048&&$h(B.alternate,B);break;default:ha(j,B,K,ne,k)}i=i.sibling}}function Co(r,i){if(i.subtreeFlags&10256)for(i=i.child;i!==null;){var h=r,g=i,k=g.flags;switch(g.tag){case 22:Co(h,g),k&2048&&zh(g.alternate,g);break;case 24:Co(h,g),k&2048&&$h(g.alternate,g);break;default:Co(h,g)}i=i.sibling}}var ko=8192;function fa(r,i,h){if(r.subtreeFlags&ko)for(r=r.child;r!==null;)U_(r,i,h),r=r.sibling}function U_(r,i,h){switch(r.tag){case 26:fa(r,i,h),r.flags&ko&&r.memoizedState!==null&&FE(h,pr,r.memoizedState,r.memoizedProps);break;case 5:fa(r,i,h);break;case 3:case 4:var g=pr;pr=jc(r.stateNode.containerInfo),fa(r,i,h),pr=g;break;case 22:r.memoizedState===null&&(g=r.alternate,g!==null&&g.memoizedState!==null?(g=ko,ko=16777216,fa(r,i,h),ko=g):fa(r,i,h));break;default:fa(r,i,h)}}function F_(r){var i=r.alternate;if(i!==null&&(r=i.child,r!==null)){i.child=null;do i=r.sibling,r.sibling=null,r=i;while(r!==null)}}function Eo(r){var i=r.deletions;if((r.flags&16)!==0){if(i!==null)for(var h=0;h<i.length;h++){var g=i[h];un=g,G_(g,r)}F_(r)}if(r.subtreeFlags&10256)for(r=r.child;r!==null;)V_(r),r=r.sibling}function V_(r){switch(r.tag){case 0:case 11:case 15:Eo(r),r.flags&2048&&Es(9,r,r.return);break;case 3:Eo(r);break;case 12:Eo(r);break;case 22:var i=r.stateNode;r.memoizedState!==null&&i._visibility&2&&(r.return===null||r.return.tag!==13)?(i._visibility&=-3,mc(r)):Eo(r);break;default:Eo(r)}}function mc(r){var i=r.deletions;if((r.flags&16)!==0){if(i!==null)for(var h=0;h<i.length;h++){var g=i[h];un=g,G_(g,r)}F_(r)}for(r=r.child;r!==null;){switch(i=r,i.tag){case 0:case 11:case 15:Es(8,i,i.return),mc(i);break;case 22:h=i.stateNode,h._visibility&2&&(h._visibility&=-3,mc(i));break;default:mc(i)}r=r.sibling}}function G_(r,i){for(;un!==null;){var h=un;switch(h.tag){case 0:case 11:case 15:Es(8,h,i);break;case 23:case 22:if(h.memoizedState!==null&&h.memoizedState.cachePool!==null){var g=h.memoizedState.cachePool.pool;g!=null&&g.refCount++}break;case 24:lo(h.memoizedState.cache)}if(g=h.child,g!==null)g.return=h,un=g;else e:for(h=r;un!==null;){g=un;var k=g.sibling,j=g.return;if(M_(g),g===h){un=null;break e}if(k!==null){k.return=j,un=k;break e}un=j}}}var sE={getCacheForType:function(r){var i=pn(Kt),h=i.data.get(r);return h===void 0&&(h=r(),i.data.set(r,h)),h},cacheSignal:function(){return pn(Kt).controller.signal}},iE=typeof WeakMap=="function"?WeakMap:Map,xt=0,Nt=null,nt=null,it=0,vt=0,Un=null,js=!1,ma=!1,Hh=!1,ts=0,Ut=0,Ns=0,pi=0,Uh=0,Fn=0,pa=0,jo=null,Rn=null,Fh=!1,pc=0,W_=0,gc=1/0,xc=null,Ts=null,rn=0,As=null,ga=null,ns=0,Vh=0,Gh=null,q_=null,No=0,Wh=null;function Vn(){return(xt&2)!==0&&it!==0?it&-it:z.T!==null?Jh():ft()}function K_(){if(Fn===0)if((it&536870912)===0||lt){var r=Ii;Ii<<=1,(Ii&3932160)===0&&(Ii=262144),Fn=r}else Fn=536870912;return r=$n.current,r!==null&&(r.flags|=32),Fn}function On(r,i,h){(r===Nt&&(vt===2||vt===9)||r.cancelPendingCommit!==null)&&(xa(r,0),Ls(r,it,Fn,!1)),ps(r,h),((xt&2)===0||r!==Nt)&&(r===Nt&&((xt&2)===0&&(pi|=h),Ut===4&&Ls(r,it,Fn,!1)),Tr(r))}function Y_(r,i,h){if((xt&6)!==0)throw Error(s(327));var g=!h&&(i&127)===0&&(i&r.expiredLanes)===0||Js(r,i),k=g?lE(r,i):Kh(r,i,!0),j=g;do{if(k===0){ma&&!g&&Ls(r,i,0,!1);break}else{if(h=r.current.alternate,j&&!aE(h)){k=Kh(r,i,!1),j=!1;continue}if(k===2){if(j=i,r.errorRecoveryDisabledLanes&j)var B=0;else B=r.pendingLanes&-536870913,B=B!==0?B:B&536870912?536870912:0;if(B!==0){i=B;e:{var K=r;k=jo;var ne=K.current.memoizedState.isDehydrated;if(ne&&(xa(K,B).flags|=256),B=Kh(K,B,!1),B!==2){if(Hh&&!ne){K.errorRecoveryDisabledLanes|=j,pi|=j,k=4;break e}j=Rn,Rn=k,j!==null&&(Rn===null?Rn=j:Rn.push.apply(Rn,j))}k=B}if(j=!1,k!==2)continue}}if(k===1){xa(r,0),Ls(r,i,0,!0);break}e:{switch(g=r,j=k,j){case 0:case 1:throw Error(s(345));case 4:if((i&4194048)!==i)break;case 6:Ls(g,i,Fn,!js);break e;case 2:Rn=null;break;case 3:case 5:break;default:throw Error(s(329))}if((i&62914560)===i&&(k=pc+300-dt(),10<k)){if(Ls(g,i,Fn,!js),Bi(g,0,!0)!==0)break e;ns=i,g.timeoutHandle=Ey(X_.bind(null,g,h,Rn,xc,Fh,i,Fn,pi,pa,js,j,"Throttled",-0,0),k);break e}X_(g,h,Rn,xc,Fh,i,Fn,pi,pa,js,j,null,-0,0)}}break}while(!0);Tr(r)}function X_(r,i,h,g,k,j,B,K,ne,de,xe,be,he,fe){if(r.timeoutHandle=-1,be=i.subtreeFlags,be&8192||(be&16785408)===16785408){be={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Hr},U_(i,j,be);var Me=(j&62914560)===j?pc-dt():(j&4194048)===j?W_-dt():0;if(Me=VE(be,Me),Me!==null){ns=j,r.cancelPendingCommit=Me(sy.bind(null,r,i,j,h,g,k,B,K,ne,xe,be,null,he,fe)),Ls(r,j,B,!de);return}}sy(r,i,j,h,g,k,B,K,ne)}function aE(r){for(var i=r;;){var h=i.tag;if((h===0||h===11||h===15)&&i.flags&16384&&(h=i.updateQueue,h!==null&&(h=h.stores,h!==null)))for(var g=0;g<h.length;g++){var k=h[g],j=k.getSnapshot;k=k.value;try{if(!Bn(j(),k))return!1}catch{return!1}}if(h=i.child,i.subtreeFlags&16384&&h!==null)h.return=i,i=h;else{if(i===r)break;for(;i.sibling===null;){if(i.return===null||i.return===r)return!0;i=i.return}i.sibling.return=i.return,i=i.sibling}}return!0}function Ls(r,i,h,g){i&=~Uh,i&=~pi,r.suspendedLanes|=i,r.pingedLanes&=~i,g&&(r.warmLanes|=i),g=r.expirationTimes;for(var k=i;0<k;){var j=31-ht(k),B=1<<j;g[j]=-1,k&=~B}h!==0&&_e(r,h,i)}function _c(){return(xt&6)===0?(To(0),!1):!0}function qh(){if(nt!==null){if(vt===0)var r=nt.return;else r=nt,Gr=ai=null,ch(r),oa=null,uo=0,r=nt;for(;r!==null;)j_(r.alternate,r),r=r.return;nt=null}}function xa(r,i){var h=r.timeoutHandle;h!==-1&&(r.timeoutHandle=-1,EE(h)),h=r.cancelPendingCommit,h!==null&&(r.cancelPendingCommit=null,h()),ns=0,qh(),Nt=r,nt=h=Fr(r.current,null),it=i,vt=0,Un=null,js=!1,ma=Js(r,i),Hh=!1,pa=Fn=Uh=pi=Ns=Ut=0,Rn=jo=null,Fh=!1,(i&8)!==0&&(i|=i&32);var g=r.entangledLanes;if(g!==0)for(r=r.entanglements,g&=i;0<g;){var k=31-ht(g),j=1<<k;i|=r[k],g&=~j}return ts=i,zl(),h}function Q_(r,i){Ke=null,z.H=yo,i===aa||i===ql?(i=fx(),vt=3):i===Qd?(i=fx(),vt=4):vt=i===kh?8:i!==null&&typeof i=="object"&&typeof i.then=="function"?6:1,Un=i,nt===null&&(Ut=1,oc(r,Zn(i,r.current)))}function J_(){var r=$n.current;return r===null?!0:(it&4194048)===it?rr===null:(it&62914560)===it||(it&536870912)!==0?r===rr:!1}function Z_(){var r=z.H;return z.H=yo,r===null?yo:r}function ey(){var r=z.A;return z.A=sE,r}function yc(){Ut=4,js||(it&4194048)!==it&&$n.current!==null||(ma=!0),(Ns&134217727)===0&&(pi&134217727)===0||Nt===null||Ls(Nt,it,Fn,!1)}function Kh(r,i,h){var g=xt;xt|=2;var k=Z_(),j=ey();(Nt!==r||it!==i)&&(xc=null,xa(r,i)),i=!1;var B=Ut;e:do try{if(vt!==0&&nt!==null){var K=nt,ne=Un;switch(vt){case 8:qh(),B=6;break e;case 3:case 2:case 9:case 6:$n.current===null&&(i=!0);var de=vt;if(vt=0,Un=null,_a(r,K,ne,de),h&&ma){B=0;break e}break;default:de=vt,vt=0,Un=null,_a(r,K,ne,de)}}oE(),B=Ut;break}catch(xe){Q_(r,xe)}while(!0);return i&&r.shellSuspendCounter++,Gr=ai=null,xt=g,z.H=k,z.A=j,nt===null&&(Nt=null,it=0,zl()),B}function oE(){for(;nt!==null;)ty(nt)}function lE(r,i){var h=xt;xt|=2;var g=Z_(),k=ey();Nt!==r||it!==i?(xc=null,gc=dt()+500,xa(r,i)):ma=Js(r,i);e:do try{if(vt!==0&&nt!==null){i=nt;var j=Un;t:switch(vt){case 1:vt=0,Un=null,_a(r,i,j,1);break;case 2:case 9:if(dx(j)){vt=0,Un=null,ny(i);break}i=function(){vt!==2&&vt!==9||Nt!==r||(vt=7),Tr(r)},j.then(i,i);break e;case 3:vt=7;break e;case 4:vt=5;break e;case 7:dx(j)?(vt=0,Un=null,ny(i)):(vt=0,Un=null,_a(r,i,j,7));break;case 5:var B=null;switch(nt.tag){case 26:B=nt.memoizedState;case 5:case 27:var K=nt;if(B?Hy(B):K.stateNode.complete){vt=0,Un=null;var ne=K.sibling;if(ne!==null)nt=ne;else{var de=K.return;de!==null?(nt=de,vc(de)):nt=null}break t}}vt=0,Un=null,_a(r,i,j,5);break;case 6:vt=0,Un=null,_a(r,i,j,6);break;case 8:qh(),Ut=6;break e;default:throw Error(s(462))}}cE();break}catch(xe){Q_(r,xe)}while(!0);return Gr=ai=null,z.H=g,z.A=k,xt=h,nt!==null?0:(Nt=null,it=0,zl(),Ut)}function cE(){for(;nt!==null&&!Ze();)ty(nt)}function ty(r){var i=k_(r.alternate,r,ts);r.memoizedProps=r.pendingProps,i===null?vc(r):nt=i}function ny(r){var i=r,h=i.alternate;switch(i.tag){case 15:case 0:i=y_(h,i,i.pendingProps,i.type,void 0,it);break;case 11:i=y_(h,i,i.pendingProps,i.type.render,i.ref,it);break;case 5:ch(i);default:j_(h,i),i=nt=ex(i,ts),i=k_(h,i,ts)}r.memoizedProps=r.pendingProps,i===null?vc(r):nt=i}function _a(r,i,h,g){Gr=ai=null,ch(i),oa=null,uo=0;var k=i.return;try{if(Qk(r,k,i,h,it)){Ut=1,oc(r,Zn(h,r.current)),nt=null;return}}catch(j){if(k!==null)throw nt=k,j;Ut=1,oc(r,Zn(h,r.current)),nt=null;return}i.flags&32768?(lt||g===1?r=!0:ma||(it&536870912)!==0?r=!1:(js=r=!0,(g===2||g===9||g===3||g===6)&&(g=$n.current,g!==null&&g.tag===13&&(g.flags|=16384))),ry(i,r)):vc(i)}function vc(r){var i=r;do{if((i.flags&32768)!==0){ry(i,js);return}r=i.return;var h=eE(i.alternate,i,ts);if(h!==null){nt=h;return}if(i=i.sibling,i!==null){nt=i;return}nt=i=r}while(i!==null);Ut===0&&(Ut=5)}function ry(r,i){do{var h=tE(r.alternate,r);if(h!==null){h.flags&=32767,nt=h;return}if(h=r.return,h!==null&&(h.flags|=32768,h.subtreeFlags=0,h.deletions=null),!i&&(r=r.sibling,r!==null)){nt=r;return}nt=r=h}while(r!==null);Ut=6,nt=null}function sy(r,i,h,g,k,j,B,K,ne){r.cancelPendingCommit=null;do bc();while(rn!==0);if((xt&6)!==0)throw Error(s(327));if(i!==null){if(i===r.current)throw Error(s(177));if(j=i.lanes|i.childLanes,j|=Id,ye(r,h,j,B,K,ne),r===Nt&&(nt=Nt=null,it=0),ga=i,As=r,ns=h,Vh=j,Gh=k,q_=g,(i.subtreeFlags&10256)!==0||(i.flags&10256)!==0?(r.callbackNode=null,r.callbackPriority=0,fE(Ie,function(){return cy(),null})):(r.callbackNode=null,r.callbackPriority=0),g=(i.flags&13878)!==0,(i.subtreeFlags&13878)!==0||g){g=z.T,z.T=null,k=X.p,X.p=2,B=xt,xt|=4;try{nE(r,i,h)}finally{xt=B,X.p=k,z.T=g}}rn=1,iy(),ay(),oy()}}function iy(){if(rn===1){rn=0;var r=As,i=ga,h=(i.flags&13878)!==0;if((i.subtreeFlags&13878)!==0||h){h=z.T,z.T=null;var g=X.p;X.p=2;var k=xt;xt|=4;try{z_(i,r);var j=of,B=Gg(r.containerInfo),K=j.focusedElem,ne=j.selectionRange;if(B!==K&&K&&K.ownerDocument&&Vg(K.ownerDocument.documentElement,K)){if(ne!==null&&Ld(K)){var de=ne.start,xe=ne.end;if(xe===void 0&&(xe=de),"selectionStart"in K)K.selectionStart=de,K.selectionEnd=Math.min(xe,K.value.length);else{var be=K.ownerDocument||document,he=be&&be.defaultView||window;if(he.getSelection){var fe=he.getSelection(),Me=K.textContent.length,Ue=Math.min(ne.start,Me),Et=ne.end===void 0?Ue:Math.min(ne.end,Me);!fe.extend&&Ue>Et&&(B=Et,Et=Ue,Ue=B);var le=Fg(K,Ue),ie=Fg(K,Et);if(le&&ie&&(fe.rangeCount!==1||fe.anchorNode!==le.node||fe.anchorOffset!==le.offset||fe.focusNode!==ie.node||fe.focusOffset!==ie.offset)){var ue=be.createRange();ue.setStart(le.node,le.offset),fe.removeAllRanges(),Ue>Et?(fe.addRange(ue),fe.extend(ie.node,ie.offset)):(ue.setEnd(ie.node,ie.offset),fe.addRange(ue))}}}}for(be=[],fe=K;fe=fe.parentNode;)fe.nodeType===1&&be.push({element:fe,left:fe.scrollLeft,top:fe.scrollTop});for(typeof K.focus=="function"&&K.focus(),K=0;K<be.length;K++){var ve=be[K];ve.element.scrollLeft=ve.left,ve.element.scrollTop=ve.top}}Rc=!!af,of=af=null}finally{xt=k,X.p=g,z.T=h}}r.current=i,rn=2}}function ay(){if(rn===2){rn=0;var r=As,i=ga,h=(i.flags&8772)!==0;if((i.subtreeFlags&8772)!==0||h){h=z.T,z.T=null;var g=X.p;X.p=2;var k=xt;xt|=4;try{O_(r,i.alternate,i)}finally{xt=k,X.p=g,z.T=h}}rn=3}}function oy(){if(rn===4||rn===3){rn=0,_t();var r=As,i=ga,h=ns,g=q_;(i.subtreeFlags&10256)!==0||(i.flags&10256)!==0?rn=5:(rn=0,ga=As=null,ly(r,r.pendingLanes));var k=r.pendingLanes;if(k===0&&(Ts=null),We(h),i=i.stateNode,ct&&typeof ct.onCommitFiberRoot=="function")try{ct.onCommitFiberRoot(wt,i,void 0,(i.current.flags&128)===128)}catch{}if(g!==null){i=z.T,k=X.p,X.p=2,z.T=null;try{for(var j=r.onRecoverableError,B=0;B<g.length;B++){var K=g[B];j(K.value,{componentStack:K.stack})}}finally{z.T=i,X.p=k}}(ns&3)!==0&&bc(),Tr(r),k=r.pendingLanes,(h&261930)!==0&&(k&42)!==0?r===Wh?No++:(No=0,Wh=r):No=0,To(0)}}function ly(r,i){(r.pooledCacheLanes&=i)===0&&(i=r.pooledCache,i!=null&&(r.pooledCache=null,lo(i)))}function bc(){return iy(),ay(),oy(),cy()}function cy(){if(rn!==5)return!1;var r=As,i=Vh;Vh=0;var h=We(ns),g=z.T,k=X.p;try{X.p=32>h?32:h,z.T=null,h=Gh,Gh=null;var j=As,B=ns;if(rn=0,ga=As=null,ns=0,(xt&6)!==0)throw Error(s(331));var K=xt;if(xt|=4,V_(j.current),H_(j,j.current,B,h),xt=K,To(0,!1),ct&&typeof ct.onPostCommitFiberRoot=="function")try{ct.onPostCommitFiberRoot(wt,j)}catch{}return!0}finally{X.p=k,z.T=g,ly(r,i)}}function uy(r,i,h){i=Zn(h,i),i=Ch(r.stateNode,i,2),r=ws(r,i,2),r!==null&&(ps(r,2),Tr(r))}function bt(r,i,h){if(r.tag===3)uy(r,r,h);else for(;i!==null;){if(i.tag===3){uy(i,r,h);break}else if(i.tag===1){var g=i.stateNode;if(typeof i.type.getDerivedStateFromError=="function"||typeof g.componentDidCatch=="function"&&(Ts===null||!Ts.has(g))){r=Zn(h,r),h=d_(2),g=ws(i,h,2),g!==null&&(h_(h,g,i,r),ps(g,2),Tr(g));break}}i=i.return}}function Yh(r,i,h){var g=r.pingCache;if(g===null){g=r.pingCache=new iE;var k=new Set;g.set(i,k)}else k=g.get(i),k===void 0&&(k=new Set,g.set(i,k));k.has(h)||(Hh=!0,k.add(h),r=uE.bind(null,r,i,h),i.then(r,r))}function uE(r,i,h){var g=r.pingCache;g!==null&&g.delete(i),r.pingedLanes|=r.suspendedLanes&h,r.warmLanes&=~h,Nt===r&&(it&h)===h&&(Ut===4||Ut===3&&(it&62914560)===it&&300>dt()-pc?(xt&2)===0&&xa(r,0):Uh|=h,pa===it&&(pa=0)),Tr(r)}function dy(r,i){i===0&&(i=jl()),r=ri(r,i),r!==null&&(ps(r,i),Tr(r))}function dE(r){var i=r.memoizedState,h=0;i!==null&&(h=i.retryLane),dy(r,h)}function hE(r,i){var h=0;switch(r.tag){case 31:case 13:var g=r.stateNode,k=r.memoizedState;k!==null&&(h=k.retryLane);break;case 19:g=r.stateNode;break;case 22:g=r.stateNode._retryCache;break;default:throw Error(s(314))}g!==null&&g.delete(i),dy(r,h)}function fE(r,i){return ce(r,i)}var Sc=null,ya=null,Xh=!1,wc=!1,Qh=!1,Ds=0;function Tr(r){r!==ya&&r.next===null&&(ya===null?Sc=ya=r:ya=ya.next=r),wc=!0,Xh||(Xh=!0,pE())}function To(r,i){if(!Qh&&wc){Qh=!0;do for(var h=!1,g=Sc;g!==null;){if(r!==0){var k=g.pendingLanes;if(k===0)var j=0;else{var B=g.suspendedLanes,K=g.pingedLanes;j=(1<<31-ht(42|r)+1)-1,j&=k&~(B&~K),j=j&201326741?j&201326741|1:j?j|2:0}j!==0&&(h=!0,py(g,j))}else j=it,j=Bi(g,g===Nt?j:0,g.cancelPendingCommit!==null||g.timeoutHandle!==-1),(j&3)===0||Js(g,j)||(h=!0,py(g,j));g=g.next}while(h);Qh=!1}}function mE(){hy()}function hy(){wc=Xh=!1;var r=0;Ds!==0&&kE()&&(r=Ds);for(var i=dt(),h=null,g=Sc;g!==null;){var k=g.next,j=fy(g,i);j===0?(g.next=null,h===null?Sc=k:h.next=k,k===null&&(ya=h)):(h=g,(r!==0||(j&3)!==0)&&(wc=!0)),g=k}rn!==0&&rn!==5||To(r),Ds!==0&&(Ds=0)}function fy(r,i){for(var h=r.suspendedLanes,g=r.pingedLanes,k=r.expirationTimes,j=r.pendingLanes&-62914561;0<j;){var B=31-ht(j),K=1<<B,ne=k[B];ne===-1?((K&h)===0||(K&g)!==0)&&(k[B]=Ka(K,i)):ne<=i&&(r.expiredLanes|=K),j&=~K}if(i=Nt,h=it,h=Bi(r,r===i?h:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),g=r.callbackNode,h===0||r===i&&(vt===2||vt===9)||r.cancelPendingCommit!==null)return g!==null&&g!==null&&Se(g),r.callbackNode=null,r.callbackPriority=0;if((h&3)===0||Js(r,h)){if(i=h&-h,i===r.callbackPriority)return i;switch(g!==null&&Se(g),We(h)){case 2:case 8:h=Ce;break;case 32:h=Ie;break;case 268435456:h=Ve;break;default:h=Ie}return g=my.bind(null,r),h=ce(h,g),r.callbackPriority=i,r.callbackNode=h,i}return g!==null&&g!==null&&Se(g),r.callbackPriority=2,r.callbackNode=null,2}function my(r,i){if(rn!==0&&rn!==5)return r.callbackNode=null,r.callbackPriority=0,null;var h=r.callbackNode;if(bc()&&r.callbackNode!==h)return null;var g=it;return g=Bi(r,r===Nt?g:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),g===0?null:(Y_(r,g,i),fy(r,dt()),r.callbackNode!=null&&r.callbackNode===h?my.bind(null,r):null)}function py(r,i){if(bc())return null;Y_(r,i,!0)}function pE(){jE(function(){(xt&6)!==0?ce(ge,mE):hy()})}function Jh(){if(Ds===0){var r=sa;r===0&&(r=fr,fr<<=1,(fr&261888)===0&&(fr=256)),Ds=r}return Ds}function gy(r){return r==null||typeof r=="symbol"||typeof r=="boolean"?null:typeof r=="function"?r:Ll(""+r)}function xy(r,i){var h=i.ownerDocument.createElement("input");return h.name=i.name,h.value=i.value,r.id&&h.setAttribute("form",r.id),i.parentNode.insertBefore(h,i),r=new FormData(r),h.parentNode.removeChild(h),r}function gE(r,i,h,g,k){if(i==="submit"&&h&&h.stateNode===k){var j=gy((k[Nn]||null).action),B=g.submitter;B&&(i=(i=B[Nn]||null)?gy(i.formAction):B.getAttribute("formAction"),i!==null&&(j=i,B=null));var K=new Ml("action","action",null,g,k);r.push({event:K,listeners:[{instance:null,listener:function(){if(g.defaultPrevented){if(Ds!==0){var ne=B?xy(k,B):new FormData(k);_h(h,{pending:!0,data:ne,method:k.method,action:j},null,ne)}}else typeof j=="function"&&(K.preventDefault(),ne=B?xy(k,B):new FormData(k),_h(h,{pending:!0,data:ne,method:k.method,action:j},j,ne))},currentTarget:k}]})}}for(var Zh=0;Zh<Md.length;Zh++){var ef=Md[Zh],xE=ef.toLowerCase(),_E=ef[0].toUpperCase()+ef.slice(1);mr(xE,"on"+_E)}mr(Kg,"onAnimationEnd"),mr(Yg,"onAnimationIteration"),mr(Xg,"onAnimationStart"),mr("dblclick","onDoubleClick"),mr("focusin","onFocus"),mr("focusout","onBlur"),mr(Ok,"onTransitionRun"),mr(Mk,"onTransitionStart"),mr(Ik,"onTransitionCancel"),mr(Qg,"onTransitionEnd"),Vi("onMouseEnter",["mouseout","mouseover"]),Vi("onMouseLeave",["mouseout","mouseover"]),Vi("onPointerEnter",["pointerout","pointerover"]),Vi("onPointerLeave",["pointerout","pointerover"]),Zs("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),Zs("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),Zs("onBeforeInput",["compositionend","keypress","textInput","paste"]),Zs("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),Zs("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),Zs("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Ao="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(" "),yE=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(Ao));function _y(r,i){i=(i&4)!==0;for(var h=0;h<r.length;h++){var g=r[h],k=g.event;g=g.listeners;e:{var j=void 0;if(i)for(var B=g.length-1;0<=B;B--){var K=g[B],ne=K.instance,de=K.currentTarget;if(K=K.listener,ne!==j&&k.isPropagationStopped())break e;j=K,k.currentTarget=de;try{j(k)}catch(xe){Bl(xe)}k.currentTarget=null,j=ne}else for(B=0;B<g.length;B++){if(K=g[B],ne=K.instance,de=K.currentTarget,K=K.listener,ne!==j&&k.isPropagationStopped())break e;j=K,k.currentTarget=de;try{j(k)}catch(xe){Bl(xe)}k.currentTarget=null,j=ne}}}}function rt(r,i){var h=i[fd];h===void 0&&(h=i[fd]=new Set);var g=r+"__bubble";h.has(g)||(yy(i,r,2,!1),h.add(g))}function tf(r,i,h){var g=0;i&&(g|=4),yy(h,r,g,i)}var Cc="_reactListening"+Math.random().toString(36).slice(2);function nf(r){if(!r[Cc]){r[Cc]=!0,hg.forEach(function(h){h!=="selectionchange"&&(yE.has(h)||tf(h,!1,r),tf(h,!0,r))});var i=r.nodeType===9?r:r.ownerDocument;i===null||i[Cc]||(i[Cc]=!0,tf("selectionchange",!1,i))}}function yy(r,i,h,g){switch(Ky(i)){case 2:var k=qE;break;case 8:k=KE;break;default:k=_f}h=k.bind(null,i,h,r),k=void 0,!Sd||i!=="touchstart"&&i!=="touchmove"&&i!=="wheel"||(k=!0),g?k!==void 0?r.addEventListener(i,h,{capture:!0,passive:k}):r.addEventListener(i,h,!0):k!==void 0?r.addEventListener(i,h,{passive:k}):r.addEventListener(i,h,!1)}function rf(r,i,h,g,k){var j=g;if((i&1)===0&&(i&2)===0&&g!==null)e:for(;;){if(g===null)return;var B=g.tag;if(B===3||B===4){var K=g.stateNode.containerInfo;if(K===k)break;if(B===4)for(B=g.return;B!==null;){var ne=B.tag;if((ne===3||ne===4)&&B.stateNode.containerInfo===k)return;B=B.return}for(;K!==null;){if(B=Hi(K),B===null)return;if(ne=B.tag,ne===5||ne===6||ne===26||ne===27){g=j=B;continue e}K=K.parentNode}}g=g.return}Cg(function(){var de=j,xe=vd(h),be=[];e:{var he=Jg.get(r);if(he!==void 0){var fe=Ml,Me=r;switch(r){case"keypress":if(Rl(h)===0)break e;case"keydown":case"keyup":fe=hk;break;case"focusin":Me="focus",fe=Ed;break;case"focusout":Me="blur",fe=Ed;break;case"beforeblur":case"afterblur":fe=Ed;break;case"click":if(h.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":fe=jg;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":fe=ek;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":fe=pk;break;case Kg:case Yg:case Xg:fe=rk;break;case Qg:fe=xk;break;case"scroll":case"scrollend":fe=JC;break;case"wheel":fe=yk;break;case"copy":case"cut":case"paste":fe=ik;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":fe=Tg;break;case"toggle":case"beforetoggle":fe=bk}var Ue=(i&4)!==0,Et=!Ue&&(r==="scroll"||r==="scrollend"),le=Ue?he!==null?he+"Capture":null:he;Ue=[];for(var ie=de,ue;ie!==null;){var ve=ie;if(ue=ve.stateNode,ve=ve.tag,ve!==5&&ve!==26&&ve!==27||ue===null||le===null||(ve=Qa(ie,le),ve!=null&&Ue.push(Lo(ie,ve,ue))),Et)break;ie=ie.return}0<Ue.length&&(he=new fe(he,Me,null,h,xe),be.push({event:he,listeners:Ue}))}}if((i&7)===0){e:{if(he=r==="mouseover"||r==="pointerover",fe=r==="mouseout"||r==="pointerout",he&&h!==yd&&(Me=h.relatedTarget||h.fromElement)&&(Hi(Me)||Me[$i]))break e;if((fe||he)&&(he=xe.window===xe?xe:(he=xe.ownerDocument)?he.defaultView||he.parentWindow:window,fe?(Me=h.relatedTarget||h.toElement,fe=de,Me=Me?Hi(Me):null,Me!==null&&(Et=l(Me),Ue=Me.tag,Me!==Et||Ue!==5&&Ue!==27&&Ue!==6)&&(Me=null)):(fe=null,Me=de),fe!==Me)){if(Ue=jg,ve="onMouseLeave",le="onMouseEnter",ie="mouse",(r==="pointerout"||r==="pointerover")&&(Ue=Tg,ve="onPointerLeave",le="onPointerEnter",ie="pointer"),Et=fe==null?he:Xa(fe),ue=Me==null?he:Xa(Me),he=new Ue(ve,ie+"leave",fe,h,xe),he.target=Et,he.relatedTarget=ue,ve=null,Hi(xe)===de&&(Ue=new Ue(le,ie+"enter",Me,h,xe),Ue.target=ue,Ue.relatedTarget=Et,ve=Ue),Et=ve,fe&&Me)t:{for(Ue=vE,le=fe,ie=Me,ue=0,ve=le;ve;ve=Ue(ve))ue++;ve=0;for(var Be=ie;Be;Be=Ue(Be))ve++;for(;0<ue-ve;)le=Ue(le),ue--;for(;0<ve-ue;)ie=Ue(ie),ve--;for(;ue--;){if(le===ie||ie!==null&&le===ie.alternate){Ue=le;break t}le=Ue(le),ie=Ue(ie)}Ue=null}else Ue=null;fe!==null&&vy(be,he,fe,Ue,!1),Me!==null&&Et!==null&&vy(be,Et,Me,Ue,!0)}}e:{if(he=de?Xa(de):window,fe=he.nodeName&&he.nodeName.toLowerCase(),fe==="select"||fe==="input"&&he.type==="file")var mt=Pg;else if(Mg(he))if(Bg)mt=Lk;else{mt=Tk;var Pe=Nk}else fe=he.nodeName,!fe||fe.toLowerCase()!=="input"||he.type!=="checkbox"&&he.type!=="radio"?de&&_d(de.elementType)&&(mt=Pg):mt=Ak;if(mt&&(mt=mt(r,de))){Ig(be,mt,h,xe);break e}Pe&&Pe(r,he,de),r==="focusout"&&de&&he.type==="number"&&de.memoizedProps.value!=null&&xd(he,"number",he.value)}switch(Pe=de?Xa(de):window,r){case"focusin":(Mg(Pe)||Pe.contentEditable==="true")&&(Xi=Pe,Dd=de,io=null);break;case"focusout":io=Dd=Xi=null;break;case"mousedown":Rd=!0;break;case"contextmenu":case"mouseup":case"dragend":Rd=!1,Wg(be,h,xe);break;case"selectionchange":if(Rk)break;case"keydown":case"keyup":Wg(be,h,xe)}var Xe;if(Nd)e:{switch(r){case"compositionstart":var at="onCompositionStart";break e;case"compositionend":at="onCompositionEnd";break e;case"compositionupdate":at="onCompositionUpdate";break e}at=void 0}else Yi?Rg(r,h)&&(at="onCompositionEnd"):r==="keydown"&&h.keyCode===229&&(at="onCompositionStart");at&&(Ag&&h.locale!=="ko"&&(Yi||at!=="onCompositionStart"?at==="onCompositionEnd"&&Yi&&(Xe=kg()):(gs=xe,wd="value"in gs?gs.value:gs.textContent,Yi=!0)),Pe=kc(de,at),0<Pe.length&&(at=new Ng(at,r,null,h,xe),be.push({event:at,listeners:Pe}),Xe?at.data=Xe:(Xe=Og(h),Xe!==null&&(at.data=Xe)))),(Xe=wk?Ck(r,h):kk(r,h))&&(at=kc(de,"onBeforeInput"),0<at.length&&(Pe=new Ng("onBeforeInput","beforeinput",null,h,xe),be.push({event:Pe,listeners:at}),Pe.data=Xe)),gE(be,r,de,h,xe)}_y(be,i)})}function Lo(r,i,h){return{instance:r,listener:i,currentTarget:h}}function kc(r,i){for(var h=i+"Capture",g=[];r!==null;){var k=r,j=k.stateNode;if(k=k.tag,k!==5&&k!==26&&k!==27||j===null||(k=Qa(r,h),k!=null&&g.unshift(Lo(r,k,j)),k=Qa(r,i),k!=null&&g.push(Lo(r,k,j))),r.tag===3)return g;r=r.return}return[]}function vE(r){if(r===null)return null;do r=r.return;while(r&&r.tag!==5&&r.tag!==27);return r||null}function vy(r,i,h,g,k){for(var j=i._reactName,B=[];h!==null&&h!==g;){var K=h,ne=K.alternate,de=K.stateNode;if(K=K.tag,ne!==null&&ne===g)break;K!==5&&K!==26&&K!==27||de===null||(ne=de,k?(de=Qa(h,j),de!=null&&B.unshift(Lo(h,de,ne))):k||(de=Qa(h,j),de!=null&&B.push(Lo(h,de,ne)))),h=h.return}B.length!==0&&r.push({event:i,listeners:B})}var bE=/\r\n?/g,SE=/\u0000|\uFFFD/g;function by(r){return(typeof r=="string"?r:""+r).replace(bE,`
50
+ `).replace(SE,"")}function Sy(r,i){return i=by(i),by(r)===i}function kt(r,i,h,g,k,j){switch(h){case"children":typeof g=="string"?i==="body"||i==="textarea"&&g===""||Wi(r,g):(typeof g=="number"||typeof g=="bigint")&&i!=="body"&&Wi(r,""+g);break;case"className":Tl(r,"class",g);break;case"tabIndex":Tl(r,"tabindex",g);break;case"dir":case"role":case"viewBox":case"width":case"height":Tl(r,h,g);break;case"style":Sg(r,g,j);break;case"data":if(i!=="object"){Tl(r,"data",g);break}case"src":case"href":if(g===""&&(i!=="a"||h!=="href")){r.removeAttribute(h);break}if(g==null||typeof g=="function"||typeof g=="symbol"||typeof g=="boolean"){r.removeAttribute(h);break}g=Ll(""+g),r.setAttribute(h,g);break;case"action":case"formAction":if(typeof g=="function"){r.setAttribute(h,"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 j=="function"&&(h==="formAction"?(i!=="input"&&kt(r,i,"name",k.name,k,null),kt(r,i,"formEncType",k.formEncType,k,null),kt(r,i,"formMethod",k.formMethod,k,null),kt(r,i,"formTarget",k.formTarget,k,null)):(kt(r,i,"encType",k.encType,k,null),kt(r,i,"method",k.method,k,null),kt(r,i,"target",k.target,k,null)));if(g==null||typeof g=="symbol"||typeof g=="boolean"){r.removeAttribute(h);break}g=Ll(""+g),r.setAttribute(h,g);break;case"onClick":g!=null&&(r.onclick=Hr);break;case"onScroll":g!=null&&rt("scroll",r);break;case"onScrollEnd":g!=null&&rt("scrollend",r);break;case"dangerouslySetInnerHTML":if(g!=null){if(typeof g!="object"||!("__html"in g))throw Error(s(61));if(h=g.__html,h!=null){if(k.children!=null)throw Error(s(60));r.innerHTML=h}}break;case"multiple":r.multiple=g&&typeof g!="function"&&typeof g!="symbol";break;case"muted":r.muted=g&&typeof g!="function"&&typeof g!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(g==null||typeof g=="function"||typeof g=="boolean"||typeof g=="symbol"){r.removeAttribute("xlink:href");break}h=Ll(""+g),r.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",h);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":g!=null&&typeof g!="function"&&typeof g!="symbol"?r.setAttribute(h,""+g):r.removeAttribute(h);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":g&&typeof g!="function"&&typeof g!="symbol"?r.setAttribute(h,""):r.removeAttribute(h);break;case"capture":case"download":g===!0?r.setAttribute(h,""):g!==!1&&g!=null&&typeof g!="function"&&typeof g!="symbol"?r.setAttribute(h,g):r.removeAttribute(h);break;case"cols":case"rows":case"size":case"span":g!=null&&typeof g!="function"&&typeof g!="symbol"&&!isNaN(g)&&1<=g?r.setAttribute(h,g):r.removeAttribute(h);break;case"rowSpan":case"start":g==null||typeof g=="function"||typeof g=="symbol"||isNaN(g)?r.removeAttribute(h):r.setAttribute(h,g);break;case"popover":rt("beforetoggle",r),rt("toggle",r),Nl(r,"popover",g);break;case"xlinkActuate":$r(r,"http://www.w3.org/1999/xlink","xlink:actuate",g);break;case"xlinkArcrole":$r(r,"http://www.w3.org/1999/xlink","xlink:arcrole",g);break;case"xlinkRole":$r(r,"http://www.w3.org/1999/xlink","xlink:role",g);break;case"xlinkShow":$r(r,"http://www.w3.org/1999/xlink","xlink:show",g);break;case"xlinkTitle":$r(r,"http://www.w3.org/1999/xlink","xlink:title",g);break;case"xlinkType":$r(r,"http://www.w3.org/1999/xlink","xlink:type",g);break;case"xmlBase":$r(r,"http://www.w3.org/XML/1998/namespace","xml:base",g);break;case"xmlLang":$r(r,"http://www.w3.org/XML/1998/namespace","xml:lang",g);break;case"xmlSpace":$r(r,"http://www.w3.org/XML/1998/namespace","xml:space",g);break;case"is":Nl(r,"is",g);break;case"innerText":case"textContent":break;default:(!(2<h.length)||h[0]!=="o"&&h[0]!=="O"||h[1]!=="n"&&h[1]!=="N")&&(h=XC.get(h)||h,Nl(r,h,g))}}function sf(r,i,h,g,k,j){switch(h){case"style":Sg(r,g,j);break;case"dangerouslySetInnerHTML":if(g!=null){if(typeof g!="object"||!("__html"in g))throw Error(s(61));if(h=g.__html,h!=null){if(k.children!=null)throw Error(s(60));r.innerHTML=h}}break;case"children":typeof g=="string"?Wi(r,g):(typeof g=="number"||typeof g=="bigint")&&Wi(r,""+g);break;case"onScroll":g!=null&&rt("scroll",r);break;case"onScrollEnd":g!=null&&rt("scrollend",r);break;case"onClick":g!=null&&(r.onclick=Hr);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!fg.hasOwnProperty(h))e:{if(h[0]==="o"&&h[1]==="n"&&(k=h.endsWith("Capture"),i=h.slice(2,k?h.length-7:void 0),j=r[Nn]||null,j=j!=null?j[h]:null,typeof j=="function"&&r.removeEventListener(i,j,k),typeof g=="function")){typeof j!="function"&&j!==null&&(h in r?r[h]=null:r.hasAttribute(h)&&r.removeAttribute(h)),r.addEventListener(i,g,k);break e}h in r?r[h]=g:g===!0?r.setAttribute(h,""):Nl(r,h,g)}}}function xn(r,i,h){switch(i){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":rt("error",r),rt("load",r);var g=!1,k=!1,j;for(j in h)if(h.hasOwnProperty(j)){var B=h[j];if(B!=null)switch(j){case"src":g=!0;break;case"srcSet":k=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(s(137,i));default:kt(r,i,j,B,h,null)}}k&&kt(r,i,"srcSet",h.srcSet,h,null),g&&kt(r,i,"src",h.src,h,null);return;case"input":rt("invalid",r);var K=j=B=k=null,ne=null,de=null;for(g in h)if(h.hasOwnProperty(g)){var xe=h[g];if(xe!=null)switch(g){case"name":k=xe;break;case"type":B=xe;break;case"checked":ne=xe;break;case"defaultChecked":de=xe;break;case"value":j=xe;break;case"defaultValue":K=xe;break;case"children":case"dangerouslySetInnerHTML":if(xe!=null)throw Error(s(137,i));break;default:kt(r,i,g,xe,h,null)}}_g(r,j,K,ne,de,B,k,!1);return;case"select":rt("invalid",r),g=B=j=null;for(k in h)if(h.hasOwnProperty(k)&&(K=h[k],K!=null))switch(k){case"value":j=K;break;case"defaultValue":B=K;break;case"multiple":g=K;default:kt(r,i,k,K,h,null)}i=j,h=B,r.multiple=!!g,i!=null?Gi(r,!!g,i,!1):h!=null&&Gi(r,!!g,h,!0);return;case"textarea":rt("invalid",r),j=k=g=null;for(B in h)if(h.hasOwnProperty(B)&&(K=h[B],K!=null))switch(B){case"value":g=K;break;case"defaultValue":k=K;break;case"children":j=K;break;case"dangerouslySetInnerHTML":if(K!=null)throw Error(s(91));break;default:kt(r,i,B,K,h,null)}vg(r,g,k,j);return;case"option":for(ne in h)if(h.hasOwnProperty(ne)&&(g=h[ne],g!=null))switch(ne){case"selected":r.selected=g&&typeof g!="function"&&typeof g!="symbol";break;default:kt(r,i,ne,g,h,null)}return;case"dialog":rt("beforetoggle",r),rt("toggle",r),rt("cancel",r),rt("close",r);break;case"iframe":case"object":rt("load",r);break;case"video":case"audio":for(g=0;g<Ao.length;g++)rt(Ao[g],r);break;case"image":rt("error",r),rt("load",r);break;case"details":rt("toggle",r);break;case"embed":case"source":case"link":rt("error",r),rt("load",r);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(de in h)if(h.hasOwnProperty(de)&&(g=h[de],g!=null))switch(de){case"children":case"dangerouslySetInnerHTML":throw Error(s(137,i));default:kt(r,i,de,g,h,null)}return;default:if(_d(i)){for(xe in h)h.hasOwnProperty(xe)&&(g=h[xe],g!==void 0&&sf(r,i,xe,g,h,void 0));return}}for(K in h)h.hasOwnProperty(K)&&(g=h[K],g!=null&&kt(r,i,K,g,h,null))}function wE(r,i,h,g){switch(i){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var k=null,j=null,B=null,K=null,ne=null,de=null,xe=null;for(fe in h){var be=h[fe];if(h.hasOwnProperty(fe)&&be!=null)switch(fe){case"checked":break;case"value":break;case"defaultValue":ne=be;default:g.hasOwnProperty(fe)||kt(r,i,fe,null,g,be)}}for(var he in g){var fe=g[he];if(be=h[he],g.hasOwnProperty(he)&&(fe!=null||be!=null))switch(he){case"type":j=fe;break;case"name":k=fe;break;case"checked":de=fe;break;case"defaultChecked":xe=fe;break;case"value":B=fe;break;case"defaultValue":K=fe;break;case"children":case"dangerouslySetInnerHTML":if(fe!=null)throw Error(s(137,i));break;default:fe!==be&&kt(r,i,he,fe,g,be)}}gd(r,B,K,ne,de,xe,j,k);return;case"select":fe=B=K=he=null;for(j in h)if(ne=h[j],h.hasOwnProperty(j)&&ne!=null)switch(j){case"value":break;case"multiple":fe=ne;default:g.hasOwnProperty(j)||kt(r,i,j,null,g,ne)}for(k in g)if(j=g[k],ne=h[k],g.hasOwnProperty(k)&&(j!=null||ne!=null))switch(k){case"value":he=j;break;case"defaultValue":K=j;break;case"multiple":B=j;default:j!==ne&&kt(r,i,k,j,g,ne)}i=K,h=B,g=fe,he!=null?Gi(r,!!h,he,!1):!!g!=!!h&&(i!=null?Gi(r,!!h,i,!0):Gi(r,!!h,h?[]:"",!1));return;case"textarea":fe=he=null;for(K in h)if(k=h[K],h.hasOwnProperty(K)&&k!=null&&!g.hasOwnProperty(K))switch(K){case"value":break;case"children":break;default:kt(r,i,K,null,g,k)}for(B in g)if(k=g[B],j=h[B],g.hasOwnProperty(B)&&(k!=null||j!=null))switch(B){case"value":he=k;break;case"defaultValue":fe=k;break;case"children":break;case"dangerouslySetInnerHTML":if(k!=null)throw Error(s(91));break;default:k!==j&&kt(r,i,B,k,g,j)}yg(r,he,fe);return;case"option":for(var Me in h)if(he=h[Me],h.hasOwnProperty(Me)&&he!=null&&!g.hasOwnProperty(Me))switch(Me){case"selected":r.selected=!1;break;default:kt(r,i,Me,null,g,he)}for(ne in g)if(he=g[ne],fe=h[ne],g.hasOwnProperty(ne)&&he!==fe&&(he!=null||fe!=null))switch(ne){case"selected":r.selected=he&&typeof he!="function"&&typeof he!="symbol";break;default:kt(r,i,ne,he,g,fe)}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 Ue in h)he=h[Ue],h.hasOwnProperty(Ue)&&he!=null&&!g.hasOwnProperty(Ue)&&kt(r,i,Ue,null,g,he);for(de in g)if(he=g[de],fe=h[de],g.hasOwnProperty(de)&&he!==fe&&(he!=null||fe!=null))switch(de){case"children":case"dangerouslySetInnerHTML":if(he!=null)throw Error(s(137,i));break;default:kt(r,i,de,he,g,fe)}return;default:if(_d(i)){for(var Et in h)he=h[Et],h.hasOwnProperty(Et)&&he!==void 0&&!g.hasOwnProperty(Et)&&sf(r,i,Et,void 0,g,he);for(xe in g)he=g[xe],fe=h[xe],!g.hasOwnProperty(xe)||he===fe||he===void 0&&fe===void 0||sf(r,i,xe,he,g,fe);return}}for(var le in h)he=h[le],h.hasOwnProperty(le)&&he!=null&&!g.hasOwnProperty(le)&&kt(r,i,le,null,g,he);for(be in g)he=g[be],fe=h[be],!g.hasOwnProperty(be)||he===fe||he==null&&fe==null||kt(r,i,be,he,g,fe)}function wy(r){switch(r){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function CE(){if(typeof performance.getEntriesByType=="function"){for(var r=0,i=0,h=performance.getEntriesByType("resource"),g=0;g<h.length;g++){var k=h[g],j=k.transferSize,B=k.initiatorType,K=k.duration;if(j&&K&&wy(B)){for(B=0,K=k.responseEnd,g+=1;g<h.length;g++){var ne=h[g],de=ne.startTime;if(de>K)break;var xe=ne.transferSize,be=ne.initiatorType;xe&&wy(be)&&(ne=ne.responseEnd,B+=xe*(ne<K?1:(K-de)/(ne-de)))}if(--g,i+=8*(j+B)/(k.duration/1e3),r++,10<r)break}}if(0<r)return i/r/1e6}return navigator.connection&&(r=navigator.connection.downlink,typeof r=="number")?r:5}var af=null,of=null;function Ec(r){return r.nodeType===9?r:r.ownerDocument}function Cy(r){switch(r){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function ky(r,i){if(r===0)switch(i){case"svg":return 1;case"math":return 2;default:return 0}return r===1&&i==="foreignObject"?0:r}function lf(r,i){return r==="textarea"||r==="noscript"||typeof i.children=="string"||typeof i.children=="number"||typeof i.children=="bigint"||typeof i.dangerouslySetInnerHTML=="object"&&i.dangerouslySetInnerHTML!==null&&i.dangerouslySetInnerHTML.__html!=null}var cf=null;function kE(){var r=window.event;return r&&r.type==="popstate"?r===cf?!1:(cf=r,!0):(cf=null,!1)}var Ey=typeof setTimeout=="function"?setTimeout:void 0,EE=typeof clearTimeout=="function"?clearTimeout:void 0,jy=typeof Promise=="function"?Promise:void 0,jE=typeof queueMicrotask=="function"?queueMicrotask:typeof jy<"u"?function(r){return jy.resolve(null).then(r).catch(NE)}:Ey;function NE(r){setTimeout(function(){throw r})}function Rs(r){return r==="head"}function Ny(r,i){var h=i,g=0;do{var k=h.nextSibling;if(r.removeChild(h),k&&k.nodeType===8)if(h=k.data,h==="/$"||h==="/&"){if(g===0){r.removeChild(k),wa(i);return}g--}else if(h==="$"||h==="$?"||h==="$~"||h==="$!"||h==="&")g++;else if(h==="html")Do(r.ownerDocument.documentElement);else if(h==="head"){h=r.ownerDocument.head,Do(h);for(var j=h.firstChild;j;){var B=j.nextSibling,K=j.nodeName;j[Ya]||K==="SCRIPT"||K==="STYLE"||K==="LINK"&&j.rel.toLowerCase()==="stylesheet"||h.removeChild(j),j=B}}else h==="body"&&Do(r.ownerDocument.body);h=k}while(h);wa(i)}function Ty(r,i){var h=r;r=0;do{var g=h.nextSibling;if(h.nodeType===1?i?(h._stashedDisplay=h.style.display,h.style.display="none"):(h.style.display=h._stashedDisplay||"",h.getAttribute("style")===""&&h.removeAttribute("style")):h.nodeType===3&&(i?(h._stashedText=h.nodeValue,h.nodeValue=""):h.nodeValue=h._stashedText||""),g&&g.nodeType===8)if(h=g.data,h==="/$"){if(r===0)break;r--}else h!=="$"&&h!=="$?"&&h!=="$~"&&h!=="$!"||r++;h=g}while(h)}function uf(r){var i=r.firstChild;for(i&&i.nodeType===10&&(i=i.nextSibling);i;){var h=i;switch(i=i.nextSibling,h.nodeName){case"HTML":case"HEAD":case"BODY":uf(h),md(h);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(h.rel.toLowerCase()==="stylesheet")continue}r.removeChild(h)}}function TE(r,i,h,g){for(;r.nodeType===1;){var k=h;if(r.nodeName.toLowerCase()!==i.toLowerCase()){if(!g&&(r.nodeName!=="INPUT"||r.type!=="hidden"))break}else if(g){if(!r[Ya])switch(i){case"meta":if(!r.hasAttribute("itemprop"))break;return r;case"link":if(j=r.getAttribute("rel"),j==="stylesheet"&&r.hasAttribute("data-precedence"))break;if(j!==k.rel||r.getAttribute("href")!==(k.href==null||k.href===""?null:k.href)||r.getAttribute("crossorigin")!==(k.crossOrigin==null?null:k.crossOrigin)||r.getAttribute("title")!==(k.title==null?null:k.title))break;return r;case"style":if(r.hasAttribute("data-precedence"))break;return r;case"script":if(j=r.getAttribute("src"),(j!==(k.src==null?null:k.src)||r.getAttribute("type")!==(k.type==null?null:k.type)||r.getAttribute("crossorigin")!==(k.crossOrigin==null?null:k.crossOrigin))&&j&&r.hasAttribute("async")&&!r.hasAttribute("itemprop"))break;return r;default:return r}}else if(i==="input"&&r.type==="hidden"){var j=k.name==null?null:""+k.name;if(k.type==="hidden"&&r.getAttribute("name")===j)return r}else return r;if(r=sr(r.nextSibling),r===null)break}return null}function AE(r,i,h){if(i==="")return null;for(;r.nodeType!==3;)if((r.nodeType!==1||r.nodeName!=="INPUT"||r.type!=="hidden")&&!h||(r=sr(r.nextSibling),r===null))return null;return r}function Ay(r,i){for(;r.nodeType!==8;)if((r.nodeType!==1||r.nodeName!=="INPUT"||r.type!=="hidden")&&!i||(r=sr(r.nextSibling),r===null))return null;return r}function df(r){return r.data==="$?"||r.data==="$~"}function hf(r){return r.data==="$!"||r.data==="$?"&&r.ownerDocument.readyState!=="loading"}function LE(r,i){var h=r.ownerDocument;if(r.data==="$~")r._reactRetry=i;else if(r.data!=="$?"||h.readyState!=="loading")i();else{var g=function(){i(),h.removeEventListener("DOMContentLoaded",g)};h.addEventListener("DOMContentLoaded",g),r._reactRetry=g}}function sr(r){for(;r!=null;r=r.nextSibling){var i=r.nodeType;if(i===1||i===3)break;if(i===8){if(i=r.data,i==="$"||i==="$!"||i==="$?"||i==="$~"||i==="&"||i==="F!"||i==="F")break;if(i==="/$"||i==="/&")return null}}return r}var ff=null;function Ly(r){r=r.nextSibling;for(var i=0;r;){if(r.nodeType===8){var h=r.data;if(h==="/$"||h==="/&"){if(i===0)return sr(r.nextSibling);i--}else h!=="$"&&h!=="$!"&&h!=="$?"&&h!=="$~"&&h!=="&"||i++}r=r.nextSibling}return null}function Dy(r){r=r.previousSibling;for(var i=0;r;){if(r.nodeType===8){var h=r.data;if(h==="$"||h==="$!"||h==="$?"||h==="$~"||h==="&"){if(i===0)return r;i--}else h!=="/$"&&h!=="/&"||i++}r=r.previousSibling}return null}function Ry(r,i,h){switch(i=Ec(h),r){case"html":if(r=i.documentElement,!r)throw Error(s(452));return r;case"head":if(r=i.head,!r)throw Error(s(453));return r;case"body":if(r=i.body,!r)throw Error(s(454));return r;default:throw Error(s(451))}}function Do(r){for(var i=r.attributes;i.length;)r.removeAttributeNode(i[0]);md(r)}var ir=new Map,Oy=new Set;function jc(r){return typeof r.getRootNode=="function"?r.getRootNode():r.nodeType===9?r:r.ownerDocument}var rs=X.d;X.d={f:DE,r:RE,D:OE,C:ME,L:IE,m:PE,X:zE,S:BE,M:$E};function DE(){var r=rs.f(),i=_c();return r||i}function RE(r){var i=Ui(r);i!==null&&i.tag===5&&i.type==="form"?Qx(i):rs.r(r)}var va=typeof document>"u"?null:document;function My(r,i,h){var g=va;if(g&&typeof i=="string"&&i){var k=Qn(i);k='link[rel="'+r+'"][href="'+k+'"]',typeof h=="string"&&(k+='[crossorigin="'+h+'"]'),Oy.has(k)||(Oy.add(k),r={rel:r,crossOrigin:h,href:i},g.querySelector(k)===null&&(i=g.createElement("link"),xn(i,"link",r),cn(i),g.head.appendChild(i)))}}function OE(r){rs.D(r),My("dns-prefetch",r,null)}function ME(r,i){rs.C(r,i),My("preconnect",r,i)}function IE(r,i,h){rs.L(r,i,h);var g=va;if(g&&r&&i){var k='link[rel="preload"][as="'+Qn(i)+'"]';i==="image"&&h&&h.imageSrcSet?(k+='[imagesrcset="'+Qn(h.imageSrcSet)+'"]',typeof h.imageSizes=="string"&&(k+='[imagesizes="'+Qn(h.imageSizes)+'"]')):k+='[href="'+Qn(r)+'"]';var j=k;switch(i){case"style":j=ba(r);break;case"script":j=Sa(r)}ir.has(j)||(r=p({rel:"preload",href:i==="image"&&h&&h.imageSrcSet?void 0:r,as:i},h),ir.set(j,r),g.querySelector(k)!==null||i==="style"&&g.querySelector(Ro(j))||i==="script"&&g.querySelector(Oo(j))||(i=g.createElement("link"),xn(i,"link",r),cn(i),g.head.appendChild(i)))}}function PE(r,i){rs.m(r,i);var h=va;if(h&&r){var g=i&&typeof i.as=="string"?i.as:"script",k='link[rel="modulepreload"][as="'+Qn(g)+'"][href="'+Qn(r)+'"]',j=k;switch(g){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":j=Sa(r)}if(!ir.has(j)&&(r=p({rel:"modulepreload",href:r},i),ir.set(j,r),h.querySelector(k)===null)){switch(g){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(h.querySelector(Oo(j)))return}g=h.createElement("link"),xn(g,"link",r),cn(g),h.head.appendChild(g)}}}function BE(r,i,h){rs.S(r,i,h);var g=va;if(g&&r){var k=Fi(g).hoistableStyles,j=ba(r);i=i||"default";var B=k.get(j);if(!B){var K={loading:0,preload:null};if(B=g.querySelector(Ro(j)))K.loading=5;else{r=p({rel:"stylesheet",href:r,"data-precedence":i},h),(h=ir.get(j))&&mf(r,h);var ne=B=g.createElement("link");cn(ne),xn(ne,"link",r),ne._p=new Promise(function(de,xe){ne.onload=de,ne.onerror=xe}),ne.addEventListener("load",function(){K.loading|=1}),ne.addEventListener("error",function(){K.loading|=2}),K.loading|=4,Nc(B,i,g)}B={type:"stylesheet",instance:B,count:1,state:K},k.set(j,B)}}}function zE(r,i){rs.X(r,i);var h=va;if(h&&r){var g=Fi(h).hoistableScripts,k=Sa(r),j=g.get(k);j||(j=h.querySelector(Oo(k)),j||(r=p({src:r,async:!0},i),(i=ir.get(k))&&pf(r,i),j=h.createElement("script"),cn(j),xn(j,"link",r),h.head.appendChild(j)),j={type:"script",instance:j,count:1,state:null},g.set(k,j))}}function $E(r,i){rs.M(r,i);var h=va;if(h&&r){var g=Fi(h).hoistableScripts,k=Sa(r),j=g.get(k);j||(j=h.querySelector(Oo(k)),j||(r=p({src:r,async:!0,type:"module"},i),(i=ir.get(k))&&pf(r,i),j=h.createElement("script"),cn(j),xn(j,"link",r),h.head.appendChild(j)),j={type:"script",instance:j,count:1,state:null},g.set(k,j))}}function Iy(r,i,h,g){var k=(k=re.current)?jc(k):null;if(!k)throw Error(s(446));switch(r){case"meta":case"title":return null;case"style":return typeof h.precedence=="string"&&typeof h.href=="string"?(i=ba(h.href),h=Fi(k).hoistableStyles,g=h.get(i),g||(g={type:"style",instance:null,count:0,state:null},h.set(i,g)),g):{type:"void",instance:null,count:0,state:null};case"link":if(h.rel==="stylesheet"&&typeof h.href=="string"&&typeof h.precedence=="string"){r=ba(h.href);var j=Fi(k).hoistableStyles,B=j.get(r);if(B||(k=k.ownerDocument||k,B={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},j.set(r,B),(j=k.querySelector(Ro(r)))&&!j._p&&(B.instance=j,B.state.loading=5),ir.has(r)||(h={rel:"preload",as:"style",href:h.href,crossOrigin:h.crossOrigin,integrity:h.integrity,media:h.media,hrefLang:h.hrefLang,referrerPolicy:h.referrerPolicy},ir.set(r,h),j||HE(k,r,h,B.state))),i&&g===null)throw Error(s(528,""));return B}if(i&&g!==null)throw Error(s(529,""));return null;case"script":return i=h.async,h=h.src,typeof h=="string"&&i&&typeof i!="function"&&typeof i!="symbol"?(i=Sa(h),h=Fi(k).hoistableScripts,g=h.get(i),g||(g={type:"script",instance:null,count:0,state:null},h.set(i,g)),g):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,r))}}function ba(r){return'href="'+Qn(r)+'"'}function Ro(r){return'link[rel="stylesheet"]['+r+"]"}function Py(r){return p({},r,{"data-precedence":r.precedence,precedence:null})}function HE(r,i,h,g){r.querySelector('link[rel="preload"][as="style"]['+i+"]")?g.loading=1:(i=r.createElement("link"),g.preload=i,i.addEventListener("load",function(){return g.loading|=1}),i.addEventListener("error",function(){return g.loading|=2}),xn(i,"link",h),cn(i),r.head.appendChild(i))}function Sa(r){return'[src="'+Qn(r)+'"]'}function Oo(r){return"script[async]"+r}function By(r,i,h){if(i.count++,i.instance===null)switch(i.type){case"style":var g=r.querySelector('style[data-href~="'+Qn(h.href)+'"]');if(g)return i.instance=g,cn(g),g;var k=p({},h,{"data-href":h.href,"data-precedence":h.precedence,href:null,precedence:null});return g=(r.ownerDocument||r).createElement("style"),cn(g),xn(g,"style",k),Nc(g,h.precedence,r),i.instance=g;case"stylesheet":k=ba(h.href);var j=r.querySelector(Ro(k));if(j)return i.state.loading|=4,i.instance=j,cn(j),j;g=Py(h),(k=ir.get(k))&&mf(g,k),j=(r.ownerDocument||r).createElement("link"),cn(j);var B=j;return B._p=new Promise(function(K,ne){B.onload=K,B.onerror=ne}),xn(j,"link",g),i.state.loading|=4,Nc(j,h.precedence,r),i.instance=j;case"script":return j=Sa(h.src),(k=r.querySelector(Oo(j)))?(i.instance=k,cn(k),k):(g=h,(k=ir.get(j))&&(g=p({},h),pf(g,k)),r=r.ownerDocument||r,k=r.createElement("script"),cn(k),xn(k,"link",g),r.head.appendChild(k),i.instance=k);case"void":return null;default:throw Error(s(443,i.type))}else i.type==="stylesheet"&&(i.state.loading&4)===0&&(g=i.instance,i.state.loading|=4,Nc(g,h.precedence,r));return i.instance}function Nc(r,i,h){for(var g=h.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),k=g.length?g[g.length-1]:null,j=k,B=0;B<g.length;B++){var K=g[B];if(K.dataset.precedence===i)j=K;else if(j!==k)break}j?j.parentNode.insertBefore(r,j.nextSibling):(i=h.nodeType===9?h.head:h,i.insertBefore(r,i.firstChild))}function mf(r,i){r.crossOrigin==null&&(r.crossOrigin=i.crossOrigin),r.referrerPolicy==null&&(r.referrerPolicy=i.referrerPolicy),r.title==null&&(r.title=i.title)}function pf(r,i){r.crossOrigin==null&&(r.crossOrigin=i.crossOrigin),r.referrerPolicy==null&&(r.referrerPolicy=i.referrerPolicy),r.integrity==null&&(r.integrity=i.integrity)}var Tc=null;function zy(r,i,h){if(Tc===null){var g=new Map,k=Tc=new Map;k.set(h,g)}else k=Tc,g=k.get(h),g||(g=new Map,k.set(h,g));if(g.has(r))return g;for(g.set(r,null),h=h.getElementsByTagName(r),k=0;k<h.length;k++){var j=h[k];if(!(j[Ya]||j[yt]||r==="link"&&j.getAttribute("rel")==="stylesheet")&&j.namespaceURI!=="http://www.w3.org/2000/svg"){var B=j.getAttribute(i)||"";B=r+B;var K=g.get(B);K?K.push(j):g.set(B,[j])}}return g}function $y(r,i,h){r=r.ownerDocument||r,r.head.insertBefore(h,i==="title"?r.querySelector("head > title"):null)}function UE(r,i,h){if(h===1||i.itemProp!=null)return!1;switch(r){case"meta":case"title":return!0;case"style":if(typeof i.precedence!="string"||typeof i.href!="string"||i.href==="")break;return!0;case"link":if(typeof i.rel!="string"||typeof i.href!="string"||i.href===""||i.onLoad||i.onError)break;switch(i.rel){case"stylesheet":return r=i.disabled,typeof i.precedence=="string"&&r==null;default:return!0}case"script":if(i.async&&typeof i.async!="function"&&typeof i.async!="symbol"&&!i.onLoad&&!i.onError&&i.src&&typeof i.src=="string")return!0}return!1}function Hy(r){return!(r.type==="stylesheet"&&(r.state.loading&3)===0)}function FE(r,i,h,g){if(h.type==="stylesheet"&&(typeof g.media!="string"||matchMedia(g.media).matches!==!1)&&(h.state.loading&4)===0){if(h.instance===null){var k=ba(g.href),j=i.querySelector(Ro(k));if(j){i=j._p,i!==null&&typeof i=="object"&&typeof i.then=="function"&&(r.count++,r=Ac.bind(r),i.then(r,r)),h.state.loading|=4,h.instance=j,cn(j);return}j=i.ownerDocument||i,g=Py(g),(k=ir.get(k))&&mf(g,k),j=j.createElement("link"),cn(j);var B=j;B._p=new Promise(function(K,ne){B.onload=K,B.onerror=ne}),xn(j,"link",g),h.instance=j}r.stylesheets===null&&(r.stylesheets=new Map),r.stylesheets.set(h,i),(i=h.state.preload)&&(h.state.loading&3)===0&&(r.count++,h=Ac.bind(r),i.addEventListener("load",h),i.addEventListener("error",h))}}var gf=0;function VE(r,i){return r.stylesheets&&r.count===0&&Dc(r,r.stylesheets),0<r.count||0<r.imgCount?function(h){var g=setTimeout(function(){if(r.stylesheets&&Dc(r,r.stylesheets),r.unsuspend){var j=r.unsuspend;r.unsuspend=null,j()}},6e4+i);0<r.imgBytes&&gf===0&&(gf=62500*CE());var k=setTimeout(function(){if(r.waitingForImages=!1,r.count===0&&(r.stylesheets&&Dc(r,r.stylesheets),r.unsuspend)){var j=r.unsuspend;r.unsuspend=null,j()}},(r.imgBytes>gf?50:800)+i);return r.unsuspend=h,function(){r.unsuspend=null,clearTimeout(g),clearTimeout(k)}}:null}function Ac(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Dc(this,this.stylesheets);else if(this.unsuspend){var r=this.unsuspend;this.unsuspend=null,r()}}}var Lc=null;function Dc(r,i){r.stylesheets=null,r.unsuspend!==null&&(r.count++,Lc=new Map,i.forEach(GE,r),Lc=null,Ac.call(r))}function GE(r,i){if(!(i.state.loading&4)){var h=Lc.get(r);if(h)var g=h.get(null);else{h=new Map,Lc.set(r,h);for(var k=r.querySelectorAll("link[data-precedence],style[data-precedence]"),j=0;j<k.length;j++){var B=k[j];(B.nodeName==="LINK"||B.getAttribute("media")!=="not all")&&(h.set(B.dataset.precedence,B),g=B)}g&&h.set(null,g)}k=i.instance,B=k.getAttribute("data-precedence"),j=h.get(B)||g,j===g&&h.set(null,k),h.set(B,k),this.count++,g=Ac.bind(this),k.addEventListener("load",g),k.addEventListener("error",g),j?j.parentNode.insertBefore(k,j.nextSibling):(r=r.nodeType===9?r.head:r,r.insertBefore(k,r.firstChild)),i.state.loading|=4}}var Mo={$$typeof:y,Provider:null,Consumer:null,_currentValue:te,_currentValue2:te,_threadCount:0};function WE(r,i,h,g,k,j,B,K,ne){this.tag=1,this.containerInfo=r,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=zi(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=zi(0),this.hiddenUpdates=zi(null),this.identifierPrefix=g,this.onUncaughtError=k,this.onCaughtError=j,this.onRecoverableError=B,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=ne,this.incompleteTransitions=new Map}function Uy(r,i,h,g,k,j,B,K,ne,de,xe,be){return r=new WE(r,i,h,B,ne,de,xe,be,K),i=1,j===!0&&(i|=24),j=zn(3,null,null,i),r.current=j,j.stateNode=r,i=Kd(),i.refCount++,r.pooledCache=i,i.refCount++,j.memoizedState={element:g,isDehydrated:h,cache:i},Jd(j),r}function Fy(r){return r?(r=Zi,r):Zi}function Vy(r,i,h,g,k,j){k=Fy(k),g.context===null?g.context=k:g.pendingContext=k,g=Ss(i),g.payload={element:h},j=j===void 0?null:j,j!==null&&(g.callback=j),h=ws(r,g,i),h!==null&&(On(h,r,i),fo(h,r,i))}function Gy(r,i){if(r=r.memoizedState,r!==null&&r.dehydrated!==null){var h=r.retryLane;r.retryLane=h!==0&&h<i?h:i}}function xf(r,i){Gy(r,i),(r=r.alternate)&&Gy(r,i)}function Wy(r){if(r.tag===13||r.tag===31){var i=ri(r,67108864);i!==null&&On(i,r,67108864),xf(r,67108864)}}function qy(r){if(r.tag===13||r.tag===31){var i=Vn();i=et(i);var h=ri(r,i);h!==null&&On(h,r,i),xf(r,i)}}var Rc=!0;function qE(r,i,h,g){var k=z.T;z.T=null;var j=X.p;try{X.p=2,_f(r,i,h,g)}finally{X.p=j,z.T=k}}function KE(r,i,h,g){var k=z.T;z.T=null;var j=X.p;try{X.p=8,_f(r,i,h,g)}finally{X.p=j,z.T=k}}function _f(r,i,h,g){if(Rc){var k=yf(g);if(k===null)rf(r,i,g,Oc,h),Yy(r,g);else if(XE(k,r,i,h,g))g.stopPropagation();else if(Yy(r,g),i&4&&-1<YE.indexOf(r)){for(;k!==null;){var j=Ui(k);if(j!==null)switch(j.tag){case 3:if(j=j.stateNode,j.current.memoizedState.isDehydrated){var B=kr(j.pendingLanes);if(B!==0){var K=j;for(K.pendingLanes|=2,K.entangledLanes|=2;B;){var ne=1<<31-ht(B);K.entanglements[1]|=ne,B&=~ne}Tr(j),(xt&6)===0&&(gc=dt()+500,To(0))}}break;case 31:case 13:K=ri(j,2),K!==null&&On(K,j,2),_c(),xf(j,2)}if(j=yf(g),j===null&&rf(r,i,g,Oc,h),j===k)break;k=j}k!==null&&g.stopPropagation()}else rf(r,i,g,null,h)}}function yf(r){return r=vd(r),vf(r)}var Oc=null;function vf(r){if(Oc=null,r=Hi(r),r!==null){var i=l(r);if(i===null)r=null;else{var h=i.tag;if(h===13){if(r=u(i),r!==null)return r;r=null}else if(h===31){if(r=c(i),r!==null)return r;r=null}else if(h===3){if(i.stateNode.current.memoizedState.isDehydrated)return i.tag===3?i.stateNode.containerInfo:null;r=null}else i!==r&&(r=null)}}return Oc=r,null}function Ky(r){switch(r){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(tn()){case ge:return 2;case Ce:return 8;case Ie:case Fe:return 32;case Ve:return 268435456;default:return 32}default:return 32}}var bf=!1,Os=null,Ms=null,Is=null,Io=new Map,Po=new Map,Ps=[],YE="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 Yy(r,i){switch(r){case"focusin":case"focusout":Os=null;break;case"dragenter":case"dragleave":Ms=null;break;case"mouseover":case"mouseout":Is=null;break;case"pointerover":case"pointerout":Io.delete(i.pointerId);break;case"gotpointercapture":case"lostpointercapture":Po.delete(i.pointerId)}}function Bo(r,i,h,g,k,j){return r===null||r.nativeEvent!==j?(r={blockedOn:i,domEventName:h,eventSystemFlags:g,nativeEvent:j,targetContainers:[k]},i!==null&&(i=Ui(i),i!==null&&Wy(i)),r):(r.eventSystemFlags|=g,i=r.targetContainers,k!==null&&i.indexOf(k)===-1&&i.push(k),r)}function XE(r,i,h,g,k){switch(i){case"focusin":return Os=Bo(Os,r,i,h,g,k),!0;case"dragenter":return Ms=Bo(Ms,r,i,h,g,k),!0;case"mouseover":return Is=Bo(Is,r,i,h,g,k),!0;case"pointerover":var j=k.pointerId;return Io.set(j,Bo(Io.get(j)||null,r,i,h,g,k)),!0;case"gotpointercapture":return j=k.pointerId,Po.set(j,Bo(Po.get(j)||null,r,i,h,g,k)),!0}return!1}function Xy(r){var i=Hi(r.target);if(i!==null){var h=l(i);if(h!==null){if(i=h.tag,i===13){if(i=u(h),i!==null){r.blockedOn=i,fn(r.priority,function(){qy(h)});return}}else if(i===31){if(i=c(h),i!==null){r.blockedOn=i,fn(r.priority,function(){qy(h)});return}}else if(i===3&&h.stateNode.current.memoizedState.isDehydrated){r.blockedOn=h.tag===3?h.stateNode.containerInfo:null;return}}}r.blockedOn=null}function Mc(r){if(r.blockedOn!==null)return!1;for(var i=r.targetContainers;0<i.length;){var h=yf(r.nativeEvent);if(h===null){h=r.nativeEvent;var g=new h.constructor(h.type,h);yd=g,h.target.dispatchEvent(g),yd=null}else return i=Ui(h),i!==null&&Wy(i),r.blockedOn=h,!1;i.shift()}return!0}function Qy(r,i,h){Mc(r)&&h.delete(i)}function QE(){bf=!1,Os!==null&&Mc(Os)&&(Os=null),Ms!==null&&Mc(Ms)&&(Ms=null),Is!==null&&Mc(Is)&&(Is=null),Io.forEach(Qy),Po.forEach(Qy)}function Ic(r,i){r.blockedOn===i&&(r.blockedOn=null,bf||(bf=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,QE)))}var Pc=null;function Jy(r){Pc!==r&&(Pc=r,e.unstable_scheduleCallback(e.unstable_NormalPriority,function(){Pc===r&&(Pc=null);for(var i=0;i<r.length;i+=3){var h=r[i],g=r[i+1],k=r[i+2];if(typeof g!="function"){if(vf(g||h)===null)continue;break}var j=Ui(h);j!==null&&(r.splice(i,3),i-=3,_h(j,{pending:!0,data:k,method:h.method,action:g},g,k))}}))}function wa(r){function i(ne){return Ic(ne,r)}Os!==null&&Ic(Os,r),Ms!==null&&Ic(Ms,r),Is!==null&&Ic(Is,r),Io.forEach(i),Po.forEach(i);for(var h=0;h<Ps.length;h++){var g=Ps[h];g.blockedOn===r&&(g.blockedOn=null)}for(;0<Ps.length&&(h=Ps[0],h.blockedOn===null);)Xy(h),h.blockedOn===null&&Ps.shift();if(h=(r.ownerDocument||r).$$reactFormReplay,h!=null)for(g=0;g<h.length;g+=3){var k=h[g],j=h[g+1],B=k[Nn]||null;if(typeof j=="function")B||Jy(h);else if(B){var K=null;if(j&&j.hasAttribute("formAction")){if(k=j,B=j[Nn]||null)K=B.formAction;else if(vf(k)!==null)continue}else K=B.action;typeof K=="function"?h[g+1]=K:(h.splice(g,3),g-=3),Jy(h)}}}function Zy(){function r(j){j.canIntercept&&j.info==="react-transition"&&j.intercept({handler:function(){return new Promise(function(B){return k=B})},focusReset:"manual",scroll:"manual"})}function i(){k!==null&&(k(),k=null),g||setTimeout(h,20)}function h(){if(!g&&!navigation.transition){var j=navigation.currentEntry;j&&j.url!=null&&navigation.navigate(j.url,{state:j.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var g=!1,k=null;return navigation.addEventListener("navigate",r),navigation.addEventListener("navigatesuccess",i),navigation.addEventListener("navigateerror",i),setTimeout(h,100),function(){g=!0,navigation.removeEventListener("navigate",r),navigation.removeEventListener("navigatesuccess",i),navigation.removeEventListener("navigateerror",i),k!==null&&(k(),k=null)}}}function Sf(r){this._internalRoot=r}Bc.prototype.render=Sf.prototype.render=function(r){var i=this._internalRoot;if(i===null)throw Error(s(409));var h=i.current,g=Vn();Vy(h,g,r,i,null,null)},Bc.prototype.unmount=Sf.prototype.unmount=function(){var r=this._internalRoot;if(r!==null){this._internalRoot=null;var i=r.containerInfo;Vy(r.current,2,null,r,null,null),_c(),i[$i]=null}};function Bc(r){this._internalRoot=r}Bc.prototype.unstable_scheduleHydration=function(r){if(r){var i=ft();r={blockedOn:null,target:r,priority:i};for(var h=0;h<Ps.length&&i!==0&&i<Ps[h].priority;h++);Ps.splice(h,0,r),h===0&&Xy(r)}};var ev=t.version;if(ev!=="19.2.4")throw Error(s(527,ev,"19.2.4"));X.findDOMNode=function(r){var i=r._reactInternals;if(i===void 0)throw typeof r.render=="function"?Error(s(188)):(r=Object.keys(r).join(","),Error(s(268,r)));return r=f(i),r=r!==null?m(r):null,r=r===null?null:r.stateNode,r};var JE={bundleType:0,version:"19.2.4",rendererPackageName:"react-dom",currentDispatcherRef:z,reconcilerVersion:"19.2.4"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var zc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!zc.isDisabled&&zc.supportsFiber)try{wt=zc.inject(JE),ct=zc}catch{}}return $o.createRoot=function(r,i){if(!a(r))throw Error(s(299));var h=!1,g="",k=o_,j=l_,B=c_;return i!=null&&(i.unstable_strictMode===!0&&(h=!0),i.identifierPrefix!==void 0&&(g=i.identifierPrefix),i.onUncaughtError!==void 0&&(k=i.onUncaughtError),i.onCaughtError!==void 0&&(j=i.onCaughtError),i.onRecoverableError!==void 0&&(B=i.onRecoverableError)),i=Uy(r,1,!1,null,null,h,g,null,k,j,B,Zy),r[$i]=i.current,nf(r),new Sf(i)},$o.hydrateRoot=function(r,i,h){if(!a(r))throw Error(s(299));var g=!1,k="",j=o_,B=l_,K=c_,ne=null;return h!=null&&(h.unstable_strictMode===!0&&(g=!0),h.identifierPrefix!==void 0&&(k=h.identifierPrefix),h.onUncaughtError!==void 0&&(j=h.onUncaughtError),h.onCaughtError!==void 0&&(B=h.onCaughtError),h.onRecoverableError!==void 0&&(K=h.onRecoverableError),h.formState!==void 0&&(ne=h.formState)),i=Uy(r,1,!0,i,h??null,g,k,ne,j,B,K,Zy),i.context=Fy(null),h=i.current,g=Vn(),g=et(g),k=Ss(g),k.callback=null,ws(h,k,g),h=g,i.current.lanes=h,ps(i,h),Tr(i),r[$i]=i.current,nf(r),new Bc(i)},$o.version="19.2.4",$o}var hv;function f2(){if(hv)return jf.exports;hv=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(),jf.exports=h2(),jf.exports}var m2=f2();const p2=Ru(m2),fv=e=>{let t;const n=new Set,s=(f,m)=>{const p=typeof f=="function"?f(t):f;if(!Object.is(p,t)){const _=t;t=m??(typeof p!="object"||p===null)?p:Object.assign({},t,p),n.forEach(x=>x(t,_))}},a=()=>t,c={setState:s,getState:a,getInitialState:()=>d,subscribe:f=>(n.add(f),()=>n.delete(f))},d=t=e(s,a,c);return c},g2=(e=>e?fv(e):fv),x2=e=>e;function _2(e,t=x2){const n=Vs.useSyncExternalStore(e.subscribe,Vs.useCallback(()=>t(e.getState()),[e,t]),Vs.useCallback(()=>t(e.getInitialState()),[e,t]));return Vs.useDebugValue(n),n}const mv=e=>{const t=g2(e),n=s=>_2(t,s);return Object.assign(n,t),n},Yn=(e=>e?mv(e):mv);async function Ne(e,t={}){const n=localStorage.getItem("openfox_token"),s={...t.headers instanceof Headers?Object.fromEntries(t.headers.entries()):t.headers,...n?{"x-session-token":n}:{}};return fetch(e,{...t,headers:s})}async function y2(e,t){try{return(await Ne(`/api/sessions/${e}/replay`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({messageIndex:t})})).ok}catch{return!1}}const ze={GLOBAL_INSTRUCTIONS:"global_instructions",NOTIFICATION_SETTINGS:"notification_settings",DISPLAY_SHOW_THINKING:"display.showThinking",DISPLAY_SHOW_VERBOSE_TOOL_OUTPUT:"display.showVerboseToolOutput",DISPLAY_SHOW_STATS:"display.showStats",DISPLAY_SHOW_AGENT_DEFINITIONS:"display.showAgentDefinitions",DISPLAY_SHOW_WORKFLOW_BARS:"display.showWorkflowBars",DISPLAY_SHOW_SYNTAX_HIGHLIGHTING:"display.showSyntaxHighlighting",DISPLAY_THEME:"display.theme",DISPLAY_USER_PRESETS:"display.userPresets",DISPLAY_FOLLOW_SYSTEM_THEME:"display.followSystemTheme",DISPLAY_SHOW_OPEN_IN_EDITOR:"display.showOpenInEditorLinks",LLM_DYNAMIC_SYSTEM_PROMPT:"llm.dynamicSystemPrompt",KEYBINDINGS:"keybindings",RETRY_PATTERNS:"agent.retryPatterns"};function $c(e,t){return n=>({loading:{...n.loading,[e]:t}})}function pv(e,t){return n=>({settings:{...n.settings,[e]:t},loading:{...n.loading,[e]:!1}})}const sS=[ze.DISPLAY_SHOW_THINKING,ze.DISPLAY_SHOW_VERBOSE_TOOL_OUTPUT,ze.DISPLAY_SHOW_STATS,ze.DISPLAY_SHOW_AGENT_DEFINITIONS,ze.DISPLAY_SHOW_WORKFLOW_BARS,ze.DISPLAY_SHOW_SYNTAX_HIGHLIGHTING,ze.DISPLAY_FOLLOW_SYSTEM_THEME,ze.DISPLAY_SHOW_OPEN_IN_EDITOR];function Mu(){return{showThinking:on(e=>e.settings[ze.DISPLAY_SHOW_THINKING]??"true")==="true",showVerboseToolOutput:on(e=>e.settings[ze.DISPLAY_SHOW_VERBOSE_TOOL_OUTPUT]??"true")==="true",showStats:on(e=>e.settings[ze.DISPLAY_SHOW_STATS]??"true")==="true",showAgentDefinitions:on(e=>e.settings[ze.DISPLAY_SHOW_AGENT_DEFINITIONS]??"true")==="true",showWorkflowBars:on(e=>e.settings[ze.DISPLAY_SHOW_WORKFLOW_BARS]??"true")==="true",showSyntaxHighlighting:on(e=>e.settings[ze.DISPLAY_SHOW_SYNTAX_HIGHLIGHTING]??"true")==="true"}}const on=Yn(e=>({settings:{},loading:{},getSetting:async t=>{e($c(t,!0));try{const s=await(await Ne(`/api/settings/${t}`)).json();return e(pv(t,s.value??"")),s.value}catch{return e($c(t,!1)),null}},getSettings:async t=>{if(t.length!==0)try{const s=await(await Ne(`/api/settings?keys=${encodeURIComponent(t.join(","))}`)).json();e({settings:s,loading:Object.fromEntries(t.map(a=>[a,!1]))})}catch{e({loading:Object.fromEntries(t.map(n=>[n,!1]))})}},setSetting:async(t,n)=>{e($c(t,!0));try{const a=await(await Ne(`/api/settings/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:n})})).json();e(pv(t,a.value??""))}catch{e($c(t,!1))}}})),Lf=Object.freeze(Object.defineProperty({__proto__:null,DISPLAY_SETTINGS_KEYS:sS,SETTINGS_KEYS:ze,useDisplaySettings:Mu,useSettingsStore:on},Symbol.toStringTag,{value:"Module"}));function v2(){const[e,t]=D.useState({offsetTop:0,height:window.innerHeight,keyboardVisible:!1}),n=D.useRef(window.innerHeight);return D.useEffect(()=>{const s=window.visualViewport;if(!s)return;const a=()=>{const l=s.offsetTop,u=s.height,c=n.current-u>100;t({offsetTop:l,height:u,keyboardVisible:c})};return a(),s.addEventListener("resize",a),s.addEventListener("scroll",a),()=>{s.removeEventListener("resize",a),s.removeEventListener("scroll",a)}},[]),e}function b2(e,t){if(e instanceof RegExp)return{keys:!1,pattern:e};var n,s,a,l,u=[],c="",d=e.split("/");for(d[0]||d.shift();a=d.shift();)n=a[0],n==="*"?(u.push(n),c+=a[1]==="?"?"(?:/(.*))?":"/(.*)"):n===":"?(s=a.indexOf("?",1),l=a.indexOf(".",1),u.push(a.substring(1,~s?s:~l?l:a.length)),c+=~s&&!~l?"(?:/([^/]+?))?":"/([^/]+?)",~l&&(c+=(~s?"?":"")+"\\"+a.substring(l))):c+="/"+a;return{keys:u,pattern:new RegExp("^"+c+(t?"(?=$|/)":"/?$"),"i")}}var Df={exports:{}},Rf={};/**
51
+ * @license React
52
+ * use-sync-external-store-shim.production.js
53
+ *
54
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
55
+ *
56
+ * This source code is licensed under the MIT license found in the
57
+ * LICENSE file in the root directory of this source tree.
58
+ */var gv;function S2(){if(gv)return Rf;gv=1;var e=Ou();function t(p,_){return p===_&&(p!==0||1/p===1/_)||p!==p&&_!==_}var n=typeof Object.is=="function"?Object.is:t,s=e.useState,a=e.useEffect,l=e.useLayoutEffect,u=e.useDebugValue;function c(p,_){var x=_(),w=s({inst:{value:x,getSnapshot:_}}),C=w[0].inst,v=w[1];return l(function(){C.value=x,C.getSnapshot=_,d(C)&&v({inst:C})},[p,x,_]),a(function(){return d(C)&&v({inst:C}),p(function(){d(C)&&v({inst:C})})},[p]),u(x),x}function d(p){var _=p.getSnapshot;p=p.value;try{var x=_();return!n(p,x)}catch{return!0}}function f(p,_){return _()}var m=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?f:c;return Rf.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:m,Rf}var xv;function w2(){return xv||(xv=1,Df.exports=S2()),Df.exports}var C2=w2();const k2=l2.useInsertionEffect,E2=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",j2=E2?D.useLayoutEffect:D.useEffect,N2=k2||j2,iS=e=>{const t=D.useRef([e,(...n)=>t[0](...n)]).current;return N2(()=>{t[0]=e}),t[1]},T2="popstate",ip="pushState",ap="replaceState",A2="hashchange",_v=[T2,ip,ap,A2],L2=e=>{for(const t of _v)addEventListener(t,e);return()=>{for(const t of _v)removeEventListener(t,e)}},aS=(e,t)=>C2.useSyncExternalStore(L2,e,t),yv=()=>location.search,D2=({ssrSearch:e}={})=>aS(yv,e!=null?()=>e:yv),vv=()=>location.pathname,R2=({ssrPath:e}={})=>aS(vv,e!=null?()=>e:vv),O2=(e,{replace:t=!1,state:n=null}={})=>history[t?ap:ip](n,"",e),M2=(e={})=>[R2(e),O2],bv=Symbol.for("wouter_v3");if(typeof history<"u"&&typeof window[bv]>"u"){for(const e of[ip,ap]){const t=history[e];history[e]=function(){const n=t.apply(this,arguments),s=new Event(e);return s.arguments=arguments,dispatchEvent(s),n}}Object.defineProperty(window,bv,{value:!0})}const I2=(e,t)=>t.toLowerCase().indexOf(e.toLowerCase())?"~"+t:t.slice(e.length)||"/",oS=(e="")=>e==="/"?"":e,P2=(e,t)=>e[0]==="~"?e.slice(1):oS(t)+e,B2=(e="",t)=>I2(Sv(oS(e)),Sv(t)),Sv=e=>{try{return decodeURI(e)}catch{return e}},lS={hook:M2,searchHook:D2,parser:b2,base:"",ssrPath:void 0,ssrSearch:void 0,ssrContext:void 0,hrefs:e=>e,aroundNav:(e,t,n)=>e(t,n)},cS=D.createContext(lS),Ha=()=>D.useContext(cS),uS={},dS=D.createContext(uS),z2=()=>D.useContext(dS),Iu=e=>{const[t,n]=e.hook(e);return[B2(e.base,t),iS((s,a)=>e.aroundNav(n,P2(s,e.base),a))]},hr=()=>Iu(Ha()),op=(e,t,n,s)=>{const{pattern:a,keys:l}=t instanceof RegExp?{keys:!1,pattern:t}:e(t||"*",s),u=a.exec(n)||[],[c,...d]=u;return c!==void 0?[!0,(()=>{const f=l!==!1?Object.fromEntries(l.map((p,_)=>[p,d[_]])):u.groups;let m={...d};return f&&Object.assign(m,f),m})(),...s?[c]:[]]:[!1,null]},lp=e=>op(Ha().parser,e,hr()[0]),$2=({children:e,...t})=>{var m,p,_;const n=Ha(),s=t.hook?lS:n;let a=s;const[l,u=t.ssrSearch??""]=((m=t.ssrPath)==null?void 0:m.split("?"))??[];l&&(t.ssrSearch=u,t.ssrPath=l),t.hrefs=t.hrefs??((p=t.hook)==null?void 0:p.hrefs),t.searchHook=t.searchHook??((_=t.hook)==null?void 0:_.searchHook);let c=D.useRef({}),d=c.current,f=d;for(let x in s){const w=x==="base"?s[x]+(t[x]??""):t[x]??s[x];d===f&&w!==f[x]&&(c.current=f={...f}),f[x]=w,(w!==s[x]||w!==a[x])&&(a=f)}return D.createElement(cS.Provider,{value:a,children:e})},wv=({children:e,component:t},n)=>t?D.createElement(t,{params:n}):typeof e=="function"?e(n):e,H2=e=>{let t=D.useRef(uS);const n=t.current;return t.current=Object.keys(e).length!==Object.keys(n).length||Object.entries(e).some(([s,a])=>a!==n[s])?e:n},Ho=({path:e,nest:t,match:n,...s})=>{const a=Ha(),[l]=Iu(a),[u,c,d]=n??op(a.parser,e,l,t),f=H2({...z2(),...c});if(!u)return null;const m=d?D.createElement($2,{base:d},wv(s,f)):wv(s,f);return D.createElement(dS.Provider,{value:f,children:m})},qn=D.forwardRef((e,t)=>{const n=Ha(),[s,a]=Iu(n),{to:l="",href:u=l,onClick:c,asChild:d,children:f,className:m,replace:p,state:_,transition:x,...w}=e,C=iS(S=>{S.ctrlKey||S.metaKey||S.altKey||S.shiftKey||S.button!==0||(c==null||c(S),S.defaultPrevented||(S.preventDefault(),a(u,e)))}),v=n.hrefs(u[0]==="~"?u.slice(1):n.base+u,n);return d&&D.isValidElement(f)?D.cloneElement(f,{onClick:C,href:v}):D.createElement("a",{...w,onClick:C,href:v,className:m!=null&&m.call?m(s===u):m,children:f,ref:t})}),hS=e=>Array.isArray(e)?e.flatMap(t=>hS(t&&t.type===D.Fragment?t.props.children:t)):[e],U2=({children:e,location:t})=>{const n=Ha(),[s]=Iu(n);for(const a of hS(e)){let l=0;if(D.isValidElement(a)&&(l=op(n.parser,a.props.path,t||s,a.props.nest))[0])return D.cloneElement(a,{match:l})}return null};function F2(e){return typeof e=="object"&&e!==null&&"type"in e&&"payload"in e}function fS(){if(typeof crypto<"u"&&crypto.randomUUID)try{return crypto.randomUUID()}catch{}return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}class V2{constructor(t){me(this,"ws",null);me(this,"handlers",new Set);me(this,"statusHandler",null);me(this,"baseUrl");me(this,"isReconnecting",!1);me(this,"connectingPromise",null);me(this,"lastCloseCode",0);me(this,"reconnectAttempts",0);me(this,"manualReconnectScheduled",!1);this.baseUrl=t}getUrl(){const t=localStorage.getItem("openfox_token");if(t){const n=this.baseUrl.includes("?")?"&":"?";return`${this.baseUrl}${n}token=${encodeURIComponent(t)}`}return this.baseUrl}setToken(t){localStorage.setItem("openfox_token",t)}clearToken(){localStorage.removeItem("openfox_token")}hasToken(){return!!localStorage.getItem("openfox_token")}getLastCloseCode(){return this.lastCloseCode}onStatusChange(t){this.statusHandler=t}connect(){var t,n,s;return((t=this.ws)==null?void 0:t.readyState)===WebSocket.OPEN?Promise.resolve():(this.lastCloseCode=0,this.isReconnecting=!1,this.connectingPromise&&((n=this.ws)==null?void 0:n.readyState)===WebSocket.CONNECTING?this.connectingPromise:(this.lastCloseCode=0,this.isReconnecting=!1,this.connectingPromise&&((s=this.ws)==null?void 0:s.readyState)===WebSocket.CONNECTING?(console.warn("[WS CLIENT] Connection already in progress, returning existing promise"),this.connectingPromise):(this.connectingPromise=new Promise((a,l)=>{try{const u=this.getUrl();this.ws=new WebSocket(u);const c=setTimeout(()=>{var d;((d=this.ws)==null?void 0:d.readyState)===WebSocket.CONNECTING&&(this.ws.close(),l(new Error("Connection timeout")))},5e3);this.ws.onopen=()=>{var d;clearTimeout(c),this.isReconnecting=!1,this.connectingPromise=null,(d=this.statusHandler)==null||d.call(this,"connected"),a()},this.ws.onclose=d=>{var f,m,p;clearTimeout(c),this.lastCloseCode=d.code,((f=this.ws)==null?void 0:f.readyState)===WebSocket.CONNECTING?(this.connectingPromise=null,(m=this.statusHandler)==null||m.call(this,"disconnected"),l(new Error(`Connection closed: ${d.code}`))):(this.connectingPromise=null,(p=this.statusHandler)==null||p.call(this,"disconnected"),this.attemptReconnect())},this.ws.onerror=d=>{clearTimeout(c),console.error("WebSocket error:",d),this.connectingPromise=null,l(d)},this.ws.onmessage=d=>{try{const f=JSON.parse(d.data);F2(f)&&this.handlers.forEach(m=>m(f))}catch(f){console.error("Failed to parse WebSocket message:",f)}}}catch(u){this.connectingPromise=null,l(u)}}),this.connectingPromise)))}attemptReconnect(){var a;if(([1e3,1005,1006,4e3].includes(this.lastCloseCode)||this.lastCloseCode===0)&&this.hasToken()){console.warn("[WS] Auth failure or initial failure with token - not auto-reconnecting, awaiting user action");return}if(this.isReconnecting||this.manualReconnectScheduled)return;this.isReconnecting=!0,(a=this.statusHandler)==null||a.call(this,"reconnecting");const s=Math.min(1e3*Math.pow(2,this.reconnectAttempts||0),3e4);this.reconnectAttempts=(this.reconnectAttempts||0)+1,setTimeout(()=>{this.isReconnecting=!1,this.manualReconnectScheduled=!1,this.connect().catch(()=>{})},s)}reconnect(){this.manualReconnectScheduled=!0,this.isReconnecting=!1,this.lastCloseCode=0,this.connectingPromise=null,this.connect().catch(()=>{})}disconnect(){this.isReconnecting=!1,this.reconnectAttempts=0,this.ws&&(this.ws.close(),this.ws=null)}resetReconnectAttempts(){this.reconnectAttempts=0}send(t,n){if(!this.ws||this.ws.readyState!==WebSocket.OPEN)throw new Error("WebSocket not connected");const s=fS(),a={id:s,type:t,payload:n};return this.ws.send(JSON.stringify(a)),s}subscribe(t){return this.handlers.add(t),()=>this.handlers.delete(t)}get isConnected(){var t;return((t=this.ws)==null?void 0:t.readyState)===WebSocket.OPEN}}const G2=window.location.protocol==="https:"?"wss:":"ws:";let wm=window.location.port;wm||(wm=window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"?"10469":window.location.protocol==="https:"?"443":"80");const W2=`${G2}//${window.location.hostname}:${wm}/ws`,$t=new V2(W2),q2=3e4;function cp(e){switch(e){case"vllm":return"vLLM";case"sglang":return"SGLang";case"ollama":return"Ollama";case"llamacpp":return"llama.cpp";case"openai":return"OpenAI";case"anthropic":return"Anthropic";case"opencode-go":return"OpenCode Go";case"unknown":return"Other"}}const zt=Yn((e,t)=>({version:null,model:null,maxContext:2e5,llmUrl:null,llmStatus:"unknown",backend:"unknown",providers:[],activeProviderId:null,defaultModelSelection:null,loading:!1,activating:!1,error:null,autoRefreshInterval:null,fetchConfig:async()=>{e({loading:!0,error:null});try{const n=await Ne("/api/config");if(!n.ok)throw new Error("Failed to fetch config");const s=await n.json();e({version:s.version,model:s.model,maxContext:s.maxContext,llmUrl:s.llmUrl,llmStatus:s.llmStatus,backend:s.backend,providers:s.providers??[],activeProviderId:s.activeProviderId??null,defaultModelSelection:s.defaultModelSelection??null,loading:!1})}catch(n){e({error:n instanceof Error?n.message:"Unknown error",loading:!1})}},refreshModel:async()=>{try{const n=await Ne("/api/model/refresh",{method:"POST"});if(!n.ok)throw new Error("Failed to refresh model");const s=await n.json(),l=we.getState().currentSession;if(l!=null&&l.providerId&&l.providerModel){e({llmStatus:s.llmStatus,backend:s.backend});return}e({model:s.model,llmStatus:s.llmStatus,backend:s.backend})}catch(n){console.error("Failed to refresh model:",n)}},activateProvider:async n=>{const{activeProviderId:s,providers:a}=t();if(n===s)return!0;e({activating:!0,error:null});try{const l=await Ne(`/api/providers/${n}/activate`,{method:"POST"});if(!l.ok){const c=await l.json();throw new Error(c.error??"Failed to activate provider")}const u=await l.json();return e({activeProviderId:u.activeProviderId,model:u.model,backend:u.backend,providers:a.map(c=>({...c,isActive:c.id===u.activeProviderId})),activating:!1}),!0}catch(l){return e({error:l instanceof Error?l.message:"Failed to switch provider",activating:!1}),!1}},syncFromSession:(n,s)=>{var c;const{providers:a,defaultModelSelection:l}=t();let u=s;if(!u){const d=l?l.split("/"):[],f=d[0],m=d.slice(1).join("/")??"";if(f===n&&m)u=m;else{const p=a.find(_=>_.id===n);u=((c=p==null?void 0:p.models[0])==null?void 0:c.id)??""}}e({activeProviderId:n,model:u,defaultModelSelection:`${n}/${u}`,providers:a.map(d=>({...d,isActive:d.id===n}))})},refreshProviderModels:async n=>{e({activating:!0,error:null});try{const s=await Ne(`/api/providers/${n}/refresh`,{method:"POST"});if(!s.ok){const u=await s.json();throw new Error(u.error??"Failed to refresh models")}const a=await s.json(),{providers:l}=t();return e({providers:l.map(u=>u.id===n?{...u,models:a.models,status:a.status}:u),activating:!1}),!0}catch(s){return e({error:s instanceof Error?s.message:"Failed to refresh models",activating:!1}),!1}},startAutoRefresh:()=>{const{autoRefreshInterval:n,refreshModel:s}=t();if(n)return;const a=setInterval(()=>{s()},q2);e({autoRefreshInterval:a})},stopAutoRefresh:()=>{const{autoRefreshInterval:n}=t();n&&(clearInterval(n),e({autoRefreshInterval:null}))},getActiveProvider:()=>{const{providers:n,activeProviderId:s}=t();return n.find(a=>a.id===s)},getModelContext:n=>{const{providers:s,activeProviderId:a}=t(),l=s.find(c=>c.id===a);if(!l)return 2e5;const u=l.models.find(c=>c.id===n);return(u==null?void 0:u.contextWindow)??2e5}})),Rt=Yn((e,t)=>({projects:[],currentProject:null,loading:!1,listProjects:async()=>{e({loading:!0});try{const s=await(await Ne("/api/projects")).json();e({projects:s.projects??[],loading:!1})}catch(n){console.error("Failed to load projects:",n),e({loading:!1})}},createProject:async(n,s)=>{try{const a=await Ne("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:n,workdir:s})});if(!a.ok){const u=await a.json().catch(()=>({}));return{error:{code:u.code||"UNKNOWN",path:u.path,message:u.error}}}const l=await a.json();return await t().listProjects(),l.project}catch{return null}},loadProject:async n=>{try{const s=await Ne(`/api/projects/${n}`);if(!s.ok)return null;const a=await s.json();return e({currentProject:a.project}),t().projects.length===0&&await t().listProjects(),a.project}catch{return null}},updateProject:async(n,s)=>{var a;try{const l=await Ne(`/api/projects/${n}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)});if(!l.ok)return null;const u=await l.json();return((a=t().currentProject)==null?void 0:a.id)===n&&e({currentProject:u.project}),await t().listProjects(),u.project}catch{return null}},deleteProject:async n=>{var s;try{return(await Ne(`/api/projects/${n}`,{method:"DELETE"})).ok?(await t().listProjects(),((s=t().currentProject)==null?void 0:s.id)===n&&e({currentProject:null}),!0):!1}catch{return!1}},toggleStar:async(n,s)=>{var a;try{const l=await Ne(`/api/projects/${n}/star`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({isStarred:s})});if(!l.ok)return!1;if(((a=t().currentProject)==null?void 0:a.id)===n){const u=await l.json();e({currentProject:u.project})}return await t().listProjects(),!0}catch{return!1}},clearProject:()=>{e({currentProject:null})}})),Ys=async(e,t,n)=>{try{const s=await Ne(t,{method:e,headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});return s.ok?{success:!0}:{success:!1,error:(await s.json()).error}}catch{return{success:!1,error:"Network error"}}},Pu=async(e,t,n)=>{try{const s=await Ne(e,{method:"POST",body:n?JSON.stringify({destination:n}):void 0,headers:n?{"Content-Type":"application/json"}:void 0}),a=await s.json();return s.ok?(await t(),{success:!0}):{success:!1,error:a.error??"Failed to duplicate"}}catch{return{success:!1,error:"Network error"}}};function mS(e){let t=null;function n(){t===null&&(t=requestAnimationFrame(()=>{t=null,e()}))}return n}let Hc=[];const el=Yn()((e,t)=>{function n(){if(Hc.length===0)return;const a=Hc;Hc=[],e(l=>{const u={...l.logs};for(const c of a){const d=u[c.processId]??[];u[c.processId]=[...d,{offset:d.length,content:c.content,timestamp:Date.now(),stream:c.stream}]}return{logs:u}})}const s=mS(n);return{processes:[],logs:{},loading:!1,setProcesses:a=>e({processes:a}),addProcess:a=>e(l=>({processes:[...l.processes,a]})),updateProcess:(a,l)=>e(u=>({processes:u.processes.map(c=>c.id===a?{...c,...l}:c)})),removeProcess:a=>e(l=>({processes:l.processes.filter(u=>u.id!==a),logs:Object.fromEntries(Object.entries(l.logs).filter(([u])=>u!==a))})),stopProcess:async(a,l)=>{try{(await Ne(`/api/sessions/${l}/background-process/${a}/stop`,{method:"POST"})).ok&&t().removeProcess(a)}catch{}},appendLog:(a,l,u)=>{Hc.push({processId:a,stream:l,content:u}),s()},setLogs:(a,l)=>e(u=>({logs:{...u.logs,[a]:l}})),clearLogs:a=>e(l=>({logs:{...l.logs,[a]:[]}})),handleMessage:(a,l)=>{switch(a){case"backgroundProcess.started":{const{processId:u,name:c,pid:d,status:f}=l;e(m=>({processes:[...m.processes,{id:u,sessionId:"",name:c,command:"",cwd:"",pid:d,status:f,exitCode:null,createdAt:Date.now(),startedAt:Date.now(),endedAt:null}]}));break}case"backgroundProcess.output":{const u=l.processId,c=l.stream,d=l.content;t().appendLog(u,c,d);break}case"backgroundProcess.exited":{const u=l.processId,c=l.exitCode;e(d=>({processes:d.processes.map(f=>f.id===u?{...f,status:"exited",exitCode:c}:f)}));break}case"backgroundProcess.removed":{const u=l.processId;t().removeProcess(u);break}}}}}),K2={messageId:null,deltaContent:"",thinkingContent:"",toolOutput:[]};let au=null;function Y2(e){au=e}function wi(){return K2}function Of(){au==null||au()}let Uc=[];const Mr=Yn()((e,t)=>{function n(){if(Uc.length===0)return;const a=Uc;Uc=[],e(l=>({logs:[...l.logs,...a]}))}const s=mS(n);return{workdir:null,status:null,logs:[],config:null,loading:!1,setWorkdir:a=>{t().workdir!==a&&(e({workdir:a,status:null,logs:[],config:null,loading:!0}),a&&(t().fetchStatus(),t().fetchConfig()))},fetchStatus:async()=>{const a=t().workdir;if(a)try{const u=await(await Ne(`/api/dev-server?workdir=${encodeURIComponent(a)}`)).json();e({status:u,loading:!1})}catch{e({loading:!1})}},fetchConfig:async()=>{const a=t().workdir;if(a)try{const u=await(await Ne(`/api/dev-server/config?workdir=${encodeURIComponent(a)}`)).json();e({config:u.config??null})}catch{}},fetchLogs:async()=>{const a=t().workdir;if(a)try{const c=(await(await Ne(`/api/dev-server/logs?workdir=${encodeURIComponent(a)}`)).json()).logs.map(d=>({stream:d.stream,content:d.content}));e({logs:c})}catch{}},start:async()=>{const a=t().workdir;if(a)try{const u=await(await Ne(`/api/dev-server/start?workdir=${encodeURIComponent(a)}`,{method:"POST"})).json();e({status:u,logs:[]})}catch{}},stop:async()=>{const a=t().workdir;if(a)try{const u=await(await Ne(`/api/dev-server/stop?workdir=${encodeURIComponent(a)}`,{method:"POST"})).json();e({status:u})}catch{}},restart:async()=>{const a=t().workdir;if(a)try{const u=await(await Ne(`/api/dev-server/restart?workdir=${encodeURIComponent(a)}`,{method:"POST"})).json();e({status:u,logs:[]})}catch{}},saveConfig:async a=>{const l=t().workdir;if(l)try{const c=await(await Ne(`/api/dev-server/config?workdir=${encodeURIComponent(l)}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)})).json();e({config:c.config??a}),t().fetchStatus()}catch{}},handleMessage:a=>{const l=t().workdir;if(l)switch(a.type){case"devServer.output":{const u=a.payload;if(u.workdir!==l)return;Uc.push({stream:u.stream,content:u.content}),s();break}case"devServer.state":{const u=a.payload;if(u.workdir!==l)return;e(c=>({status:c.status?{...c.status,state:u.state,errorMessage:u.errorMessage}:c.status}));break}}}}}),X2=[{key:"complete",label:"Task Complete",description:"When an agent finishes its work"},{key:"waiting_for_user",label:"Waiting for Input",description:"When the agent needs your input"},{key:"phase_done",label:"Phase Done",description:"When a build phase completes successfully"},{key:"phase_blocked",label:"Phase Blocked",description:"When a build phase is blocked and needs intervention"},{key:"new_message",label:"New Message",description:"When a new assistant message starts arriving"}],Q2=[{url:"/sounds/notification.mp3",label:"Notification"},{url:"/sounds/waiting-for-user.mp3",label:"Waiting for User"},{url:"/sounds/achievement.mp3",label:"Achievement"},{url:"/sounds/intervention.mp3",label:"Intervention"},{url:"/sounds/typing.mp3",label:"Typing"}],pS={complete:"/sounds/notification.mp3",waiting_for_user:"/sounds/waiting-for-user.mp3",phase_done:"/sounds/achievement.mp3",phase_blocked:"/sounds/intervention.mp3",new_message:"/sounds/typing.mp3"},Gs={soundEnabled:!0,browserNotification:!1,customSoundUrl:null},gS={soundEnabled:!1,browserNotification:!1,customSoundUrl:null},Cm={soundEnabled:!0,browserNotificationEnabled:!1,events:{complete:{...Gs},waiting_for_user:{...Gs},phase_done:{...Gs},phase_blocked:{...Gs},new_message:{...gS}},agentOverrides:{}};function xS(e,t,n){var l;const s=e.events[t];if(!n)return s;const a=(l=e.agentOverrides[n])==null?void 0:l[t];return a?{soundEnabled:a.soundEnabled??s.soundEnabled,browserNotification:a.browserNotification??s.browserNotification,customSoundUrl:a.customSoundUrl!==void 0?a.customSoundUrl:s.customSoundUrl}:s}const ki=Yn((e,t)=>({settings:Cm,loaded:!1,load:()=>{on.getState().getSetting(ze.NOTIFICATION_SETTINGS);const s=on.subscribe(l=>{const u=l.settings[ze.NOTIFICATION_SETTINGS];if(u!==void 0)try{const c=JSON.parse(u);e({settings:Cv(c),loaded:!0})}catch{e({loaded:!0})}}),a=on.getState().settings[ze.NOTIFICATION_SETTINGS];if(a)try{const l=JSON.parse(a);e({settings:Cv(l),loaded:!0})}catch{e({loaded:!0})}return s},update:n=>{e({settings:n}),Mf(n)},updateEvent:(n,s)=>{const a=t().settings,l={...a,events:{...a.events,[n]:{...a.events[n],...s}}};e({settings:l}),Mf(l)},updateAgentOverride:(n,s,a)=>{var d;const l=t().settings,u={...l.agentOverrides};if(a===null){if(u[n]){const f={...u[n]};delete f[s],Object.keys(f).length===0?delete u[n]:u[n]=f}}else u[n]={...u[n],[s]:{...((d=u[n])==null?void 0:d[s])??{},...a}};const c={...l,agentOverrides:u};e({settings:c}),Mf(c)}}));function Mf(e){on.getState().setSetting(ze.NOTIFICATION_SETTINGS,JSON.stringify(e))}function Cv(e){var t,n,s,a,l;return{soundEnabled:e.soundEnabled??Cm.soundEnabled,browserNotificationEnabled:e.browserNotificationEnabled??Cm.browserNotificationEnabled,events:{complete:{...Gs,...(t=e.events)==null?void 0:t.complete},waiting_for_user:{...Gs,...(n=e.events)==null?void 0:n.waiting_for_user},phase_done:{...Gs,...(s=e.events)==null?void 0:s.phase_done},phase_blocked:{...Gs,...(a=e.events)==null?void 0:a.phase_blocked},new_message:{...gS,...(l=e.events)==null?void 0:l.new_message}},agentOverrides:e.agentOverrides??{}}}const kv=new Map;function J2(e){let t=kv.get(e);return t||(t=new Audio(e),t.volume=.5,kv.set(e,t)),t}let _S=typeof Notification<"u"?Notification.permission:"denied";function Z2(){return typeof Notification>"u"?Promise.resolve("denied"):Notification.requestPermission().then(e=>(_S=e,e))}const ej={complete:"Task Complete",waiting_for_user:"Waiting for Input",phase_done:"Phase Complete",phase_blocked:"Phase Blocked",new_message:"New Message"},tj={complete:"The agent has finished its work.",waiting_for_user:"The agent needs your input to continue.",phase_done:"The build phase completed successfully.",phase_blocked:"The build phase is blocked and needs intervention.",new_message:"A new assistant message is arriving."};function nj(e){typeof Notification>"u"||_S==="granted"&&(document.hasFocus()||new Notification(ej[e],{body:tj[e],icon:"/fox.svg",tag:`openfox-${e}`}))}function pl(e,t){const{settings:n}=ki.getState(),s=xS(n,e,t);if(n.soundEnabled&&s.soundEnabled){const a=s.customSoundUrl??pS[e],l=J2(a);l.currentTime=0,l.play().catch(()=>{})}n.browserNotificationEnabled&&s.browserNotification&&nj(e)}const rj=e=>pl("complete",e),sj=e=>pl("phase_done",e),ij=e=>pl("phase_blocked",e),Ev=e=>pl("waiting_for_user",e),aj=e=>pl("new_message",e),jv=new Map;function Qo(e,t){var l;const n=t===((l=e.currentSession)==null?void 0:l.id)?e.currentSession:null,s=e.sessions.find(u=>u.id===t),a=(n==null?void 0:n.mode)??(s==null?void 0:s.mode);return a==="planner"?"planner":a==="builder"?"build":"planner"}function oj(e,t){if(e.type==="chat.done"){const n=e.payload,s=Qo(t,e.sessionId),a=n.agentType??s;n.reason==="complete"&&rj(a),n.reason==="waiting_for_user"&&Ev(a);return}if(e.type==="chat.path_confirmation"){const n=Qo(t,e.sessionId);Ev(n);return}if(e.type==="task.completed"){const n=Qo(t,e.sessionId);sj(n);return}if(e.type==="phase.changed"&&e.sessionId){const n=e.payload,s=jv.get(e.sessionId)??null;if(jv.set(e.sessionId,n.phase),s===n.phase)return;const a=Qo(t,e.sessionId);n.phase==="blocked"&&ij(a)}}const If=new Set;function Wt(e,t){return t!==null&&e.sessionId===t}function lj(e,t,n){return e.id!==void 0||Wt(e,t)||n===!0&&e.sessionId!==void 0}function cj(e,t){return e.includes(t)?e:[...e,t]}function Nv(e,t){return e.filter(n=>n!==t)}function uj(e,t){const n=e.find(l=>l.id===t.id),s=t.messageCount??t.messages.length,a=n?{...n,projectId:t.projectId,workdir:t.workdir,mode:t.mode,phase:t.phase,isRunning:t.isRunning&&n.isRunning!==!1,messageCount:s,criteriaCount:t.criteria.length,criteriaCompleted:t.criteria.filter(l=>l.status.type==="passed").length}:{id:t.id,projectId:t.projectId,workdir:t.workdir,mode:t.mode,phase:t.phase,isRunning:t.isRunning,createdAt:"",updatedAt:"",criteriaCount:t.criteria.length,criteriaCompleted:t.criteria.filter(l=>l.status.type==="passed").length,messageCount:s};return n?e.map(l=>l.id===t.id?a:l):[a,...e]}function dj(e,t,n){return e.map(s=>{const a=(n==null?void 0:n.id)===s.id?n:null,l=t.find(u=>u.id===s.id);return{...s,title:s.title??(l==null?void 0:l.title),mode:(a==null?void 0:a.mode)??(l==null?void 0:l.mode)??s.mode,phase:(a==null?void 0:a.phase)??(l==null?void 0:l.phase)??s.phase,isRunning:s.isRunning&&(l==null?void 0:l.isRunning)!==!1,messageCount:s.messageCount,recentUserPrompts:s.recentUserPrompts}})}function Tv(e,t,n,s){var c;const a=e.sessionId,l=(c=n().currentSession)==null?void 0:c.id,u=a&&a!==l;if(t(d=>({sessions:d.sessions.map(f=>f.id===a?s(f):f)})),!u){const d=n().currentSession;if(d){const f=s(d);t(()=>({currentSession:f}))}}}function Av(e,t,n){var u,c,d,f,m,p,_,x,w,C,v,S,b,y,E,N,T,L,A,R,M,G,W;const s=n();oj(e,s);const a=((u=s.currentSession)==null?void 0:u.id)??null,l=()=>{const O=e.sessionId;!O||O===a||t(U=>({unreadSessionIds:cj(U.unreadSessionIds,O)}))};switch(e.type){case"session.state":{const O=e.payload;if(!lj(e,a,s.pendingSessionCreate))break;const U=O.messages.find(z=>z.isStreaming)??null,V=n().pendingSessionCreate===!0;if(t({currentSession:O.session,sessions:uj(n().sessions,O.session),unreadSessionIds:Nv(n().unreadSessionIds,O.session.id),messages:O.messages,streamingMessageId:(U==null?void 0:U.id)??null,streamingMessage:U,currentTodos:[],pendingPathConfirmations:O.pendingConfirmations??[],pendingQuestions:O.pendingQuestions??[],error:null,...V?{pendingSessionCreate:O.session.id}:{}}),O.session.providerId){const z=zt.getState();z.providers.find(te=>te.id===O.session.providerId)&&z.syncFromSession(O.session.providerId,O.session.providerModel??"")}break}case"session.list":{const O=e.payload;t(U=>({sessions:dj(O.sessions,U.sessions,U.currentSession)}));break}case"session.deleted":{const O=e.payload;t(U=>({unreadSessionIds:Nv(U.unreadSessionIds,O.sessionId)})),n().listSessions();break}case"session.deletedAll":{n().listSessions();break}case"session.running":{const O=e.payload;Tv(e,t,n,U=>({...U,isRunning:O.isRunning})),O.isRunning||t({abortInProgress:!1,queuedMessages:[]}),O.isRunning&&t({restoredInput:null});break}case"chat.message":{if(!Wt(e,((c=n().currentSession)==null?void 0:c.id)??null)){l();break}const O=e.payload;t(U=>{if(U.messages.some(z=>z.id===O.message.id))return U;const V=O.message.role==="user";return{messages:[...U.messages,O.message],sessions:U.sessions.map(z=>z.id===e.sessionId&&V?{...z,messageCount:z.messageCount+1}:z),streamingMessageId:O.message.isStreaming?O.message.id:U.streamingMessageId,streamingMessage:O.message.isStreaming?O.message:U.streamingMessage}});break}case"chat.message_updated":{if(!Wt(e,((d=n().currentSession)==null?void 0:d.id)??null)){l();break}const O=e.payload,U=O.updates.isStreaming===!1&&n().streamingMessageId===O.messageId;t(V=>{const z=V.streamingMessage;if(z&&z.id===O.messageId){const X={...z,...O.updates};return{messages:V.messages.map(te=>te.id===O.messageId?X:te),streamingMessageId:U?null:V.streamingMessageId,streamingMessage:U?null:{...z,...O.updates}}}return{messages:V.messages.map(X=>X.id===O.messageId?{...X,...O.updates}:X),streamingMessageId:U?null:V.streamingMessageId}});break}case"chat.delta":{if(!Wt(e,((f=n().currentSession)==null?void 0:f.id)??null)){l();break}const O=e.payload;if(!If.has(O.messageId)){If.add(O.messageId);const V=O.subAgentType?"sub-agent":Qo(n(),e.sessionId);aj(V)}const U=wi();U.messageId=O.messageId,U.deltaContent+=O.content,Of();break}case"chat.thinking":{if(!Wt(e,((m=n().currentSession)==null?void 0:m.id)??null)){l();break}const O=e.payload,U=wi();U.messageId=O.messageId,U.thinkingContent+=O.content,Of();break}case"chat.tool_preparing":{if(!Wt(e,((p=n().currentSession)==null?void 0:p.id)??null)){l();break}const O=e.payload,U=n().streamingMessage;if(!U||U.id!==O.messageId||((_=U.toolCalls)==null?void 0:_.find((z,X)=>X===O.index)))return;t(z=>{const X=z.streamingMessage.preparingToolCalls??[],te=X.findIndex(I=>I.index===O.index);let H;return te>=0?H=X.map((I,$)=>$===te?{...I,arguments:O.arguments}:I):H=[...X,{index:O.index,name:O.name,...O.arguments?{arguments:O.arguments}:{}}],{streamingMessage:{...z.streamingMessage,preparingToolCalls:H}}});break}case"chat.tool_call":{if(!Wt(e,((x=n().currentSession)==null?void 0:x.id)??null)){l();break}const O=e.payload,U=V=>{var H;const z=(H=V.preparingToolCalls)==null?void 0:H.filter((I,$)=>{var F;return I.name===O.tool?(F=V.preparingToolCalls)==null?void 0:F.slice(0,$).some(ee=>ee.name===O.tool):!0}),X=wi(),te=X.toolOutput.filter(I=>I.callId===O.callId);return te.length>0&&(X.toolOutput=X.toolOutput.filter(I=>I.callId!==O.callId)),{...V,toolCalls:[...V.toolCalls??[],{id:O.callId,name:O.tool,arguments:O.args,startedAt:Date.now(),...te.length>0?{streamingOutput:te.map(I=>({stream:I.stream,content:I.content,timestamp:Date.now()}))}:{}}],...z&&z.length>0?{preparingToolCalls:z}:{preparingToolCalls:void 0}}};t(V=>{const z=V.streamingMessage;return z&&z.id===O.messageId?{streamingMessage:U(z)}:{messages:V.messages.map(X=>X.id===O.messageId?U(X):X)}});break}case"chat.tool_output":{if(!Wt(e,((w=n().currentSession)==null?void 0:w.id)??null)){l();break}const O=e.payload,U=wi();U.messageId=O.messageId,U.toolOutput.push({messageId:O.messageId,callId:O.callId,stream:O.stream,content:O.output}),Of();break}case"chat.tool_result":{if(!Wt(e,((C=n().currentSession)==null?void 0:C.id)??null)){l();break}const O=e.payload,U=V=>{var X;const z=(X=V.toolCalls)==null?void 0:X.map(te=>te.id===O.callId?{...te,result:O.result}:te);return{...V,toolCalls:z}};t(V=>{const z=V.streamingMessage;return z&&z.id===O.messageId?{streamingMessage:U(z)}:{messages:V.messages.map(X=>X.id===O.messageId?U(X):X)}});break}case"chat.vision_fallback":{if(!Wt(e,((v=n().currentSession)==null?void 0:v.id)??null)){l();break}const O=e.payload;t(U=>{const V=`${O.messageId}-${O.attachmentId}`,z={...U.visionFallbackByMessage};return z[V]={type:O.type,attachmentId:O.attachmentId,filename:O.filename,description:O.description},{visionFallbackByMessage:z}});break}case"chat.todo":{if(!Wt(e,((S=n().currentSession)==null?void 0:S.id)??null)){l();break}const O=e.payload;t({currentTodos:O.todos});break}case"chat.progress":{if(!Wt(e,((b=n().currentSession)==null?void 0:b.id)??null)){l();break}const O=e.payload;console.warn("Progress:",O.message,O.phase);break}case"chat.format_retry":{if(!Wt(e,((y=n().currentSession)==null?void 0:y.id)??null)){l();break}const O=e.payload;console.warn("Format retry:",O.attempt,"/",O.maxAttempts);break}case"chat.done":{if(!Wt(e,((E=n().currentSession)==null?void 0:E.id)??null)){l();break}const O=wi();O.messageId=null,O.deltaContent="",O.thinkingContent="",O.toolOutput=[],If.delete(e.payload.messageId);const U=e.payload,V=U.stats;t(z=>{const X=z.streamingMessage,te=X&&X.id===U.messageId?{...X,isStreaming:!1,stats:V??X.stats}:null;return{messages:z.messages.map(H=>H.id===U.messageId?te??{...H,isStreaming:!1,stats:V??H.stats,completeReason:U.reason}:H),streamingMessageId:null,streamingMessage:null,visionFallbackByMessage:{}}});break}case"chat.error":{if(!Wt(e,((N=n().currentSession)==null?void 0:N.id)??null)){l();break}const O=wi(),U=e.payload;console.error("Chat error:",U.error,"recoverable:",U.recoverable),U.recoverable||(O.messageId=null,O.deltaContent="",O.thinkingContent="",O.toolOutput=[]),t(V=>({error:{code:"CHAT_ERROR",message:U.error},streamingMessageId:U.recoverable?V.streamingMessageId:null,...U.recoverable?{}:{messages:V.streamingMessage?V.messages.map(z=>z.id===V.streamingMessage.id?V.streamingMessage:z):V.messages,streamingMessage:null}}));break}case"chat.path_confirmation":{if(!Wt(e,((T=n().currentSession)==null?void 0:T.id)??null)){l();break}const O=e.payload,U={callId:O.callId,tool:O.tool,paths:O.paths,workdir:O.workdir,reason:O.reason};t(V=>({pendingPathConfirmations:[...V.pendingPathConfirmations,U]}));break}case"chat.ask_user":{if(!Wt(e,((L=n().currentSession)==null?void 0:L.id)??null)){l();return}const O=e.payload,U={callId:O.callId,question:O.question,type:O.type??"text",options:O.options??void 0};t(V=>({pendingQuestions:[...V.pendingQuestions.filter(z=>z.callId!==O.callId),U]}));break}case"mode.changed":{if(!Wt(e,((A=n().currentSession)==null?void 0:A.id)??null)){l();break}const O=e.payload;t(U=>({currentSession:U.currentSession?{...U.currentSession,mode:O.mode}:null}));break}case"phase.changed":{const O=e.payload;Tv(e,t,n,U=>({...U,phase:O.phase}));break}case"criteria.updated":{if(!Wt(e,((R=n().currentSession)==null?void 0:R.id)??null)){l();break}const O=e.payload;t(U=>({currentSession:U.currentSession?{...U.currentSession,criteria:O.criteria}:null}));break}case"metadata.updated":{if(!Wt(e,((M=n().currentSession)==null?void 0:M.id)??null)){l();break}const O=e.payload;t(U=>({currentSession:U.currentSession?{...U.currentSession,metadataEntries:{...U.currentSession.metadataEntries,[O.key]:O.entries}}:null}));break}case"context.state":{const O=e.payload,U=Wt(e,((G=n().currentSession)==null?void 0:G.id)??null);O.subAgentId?U&&n().updateSubAgentContextState(O.subAgentId,O.context):U?t({contextState:O.context}):l();break}case"session.name_generated":{const O=e.payload,U=e.sessionId,V=(W=n().currentSession)==null?void 0:W.id;t(z=>{const X=z.sessions.map(H=>H.id===U?{...H,title:O.name,updatedAt:new Date().toISOString()}:H),te=V===U?z.currentSession?{...z.currentSession,title:O.name,updatedAt:new Date().toISOString()}:null:z.currentSession;return{sessions:X,currentSession:te}});break}case"queue.state":{const O=e.payload;t({queuedMessages:O.messages??[]});break}case"mcp.servers.changed":{window.dispatchEvent(new CustomEvent("mcp-servers-changed"));break}case"git.status":{const O=e.payload;t({gitStatus:{branch:O.branch,diff:O.diff}});break}case"devServer.output":case"devServer.state":{Mr.getState().handleMessage(e);break}case"backgroundProcess.started":case"backgroundProcess.output":case"backgroundProcess.exited":case"backgroundProcess.removed":{el.getState().handleMessage(e.type,e.payload);break}case"error":{const O=e.payload;console.error("Server error:",O),t({error:{code:O.code,message:O.message},streamingMessageId:null});break}}}let Uo=!1,Ar=null;const Pf=new Set,Fc=new Map;function Lv(e,t,n){return e==null?void 0:e.map(s=>{const a=t.filter(l=>l.callId===s.id);return a.length===0?s:(n.add(s.id),{...s,streamingOutput:[...s.streamingOutput??[],...a.map(l=>({stream:l.stream,content:l.content,timestamp:Date.now()}))]})})}async function Dv(e,t,n,s,a){try{const u=await(await Ne(`/api/sessions/${e}/message`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:t,attachments:n,messageKind:s})})).json();u.queueState&&a({queuedMessages:u.queueState})}catch(l){console.error("Error queueing message:",l)}}const we=Yn((e,t)=>(Y2(()=>{const n=wi();if(!n.messageId)return;const s=n.deltaContent.length>0,a=n.thinkingContent.length>0,l=n.toolOutput.length>0;if(!s&&!a&&!l)return;const u=n.deltaContent,c=n.thinkingContent,d=n.toolOutput;n.deltaContent="",n.thinkingContent="",n.toolOutput=[],e(f=>{const m=f.streamingMessage;if(m&&m.id===n.messageId){const p={...m};if(s&&(p.content=p.content+u),a&&(p.thinkingContent=(p.thinkingContent??"")+c),l){const _=new Set;p.toolCalls=Lv(p.toolCalls,d,_);const x=d.filter(w=>!_.has(w.callId));x.length>0&&n.toolOutput.push(...x)}return{streamingMessage:p}}if(l){const p=new Set,_=f.messages.map(w=>w.id!==n.messageId?w:{...w,toolCalls:Lv(w.toolCalls,d,p)}),x=d.filter(w=>!p.has(w.callId));return x.length>0&&n.toolOutput.push(...x),{messages:_}}return f})}),{connectionStatus:"disconnected",showPasswordModal:!1,passwordModalRetry:!1,sessions:[],currentSession:null,unreadSessionIds:[],messages:[],streamingMessageId:null,streamingMessage:null,currentTodos:[],contextState:null,subAgentContextStates:{},pendingPathConfirmations:[],pendingQuestions:[],visionFallbackByMessage:{},gitStatus:null,queuedMessages:[],abortInProgress:!1,restoredInput:null,error:null,sessionsHasMore:!0,sessionsPaginationLoading:!1,pendingSessionCreate:!1,connect:async()=>{if(t().connectionStatus==="connected")return;e({connectionStatus:"reconnecting"});let s=!1;try{s=(await(await Ne("/api/auth")).json()).requiresAuth}catch{}if(s&&!$t.hasToken()){e({showPasswordModal:!0,passwordModalRetry:!1,connectionStatus:"reconnecting"});return}$t.onStatusChange(a=>{var l;if(e({connectionStatus:a}),a==="connected"){t().listSessions(void 0),Rt.getState().listProjects();const u=(l=t().currentSession)==null?void 0:l.id;u&&t().loadSession(u)}});try{await $t.connect(),Uo||(Uo=!0,Ar=$t.subscribe(a=>{Av(a,e,t)}))}catch(a){console.error("Failed to connect:",a);const l=$t.getLastCloseCode();if(!$t.hasToken()&&(l===1006||l===4e3)){e({showPasswordModal:!0,passwordModalRetry:!0,connectionStatus:"reconnecting"});return}Ar&&(Ar(),Ar=null),Uo=!1,e({connectionStatus:"disconnected"})}},reconnect:()=>{$t.disconnect(),Ar&&(Ar(),Ar=null),Uo=!1,e({connectionStatus:"disconnected"}),t().connect()},disconnect:()=>{$t.disconnect(),Ar&&(Ar(),Ar=null),Uo=!1,e({connectionStatus:"disconnected",showPasswordModal:!1})},submitPassword:async n=>{try{const s=await fetch("/api/auth/login",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({password:n})});if(!s.ok){e({showPasswordModal:!0,passwordModalRetry:!0,connectionStatus:"reconnecting"});return}const{token:a}=await s.json();$t.setToken(a),e({showPasswordModal:!1}),t().connect();const{listProjects:l}=Rt.getState(),{fetchConfig:u}=zt.getState();l(),u(),t().connect()}catch{e({showPasswordModal:!0,passwordModalRetry:!0,connectionStatus:"reconnecting"})}},cancelPassword:()=>{$t.clearToken(),e({showPasswordModal:!1,connectionStatus:"disconnected"})},createSession:async(n,s)=>{if(t().pendingSessionCreate)return null;try{e({pendingSessionCreate:!0});const l=await Ne("/api/sessions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:n,title:s})});if(!l.ok)return e({pendingSessionCreate:!1}),null;const u=await l.json();try{$t.send("session.load",{sessionId:u.session.id})}catch{}return u.session}catch{return e({pendingSessionCreate:!1}),null}},loadSession:async n=>{if(!Pf.has(n)){Pf.add(n);try{const s=t().currentSession;!s||s.id!==n?e({currentSession:null,unreadSessionIds:t().unreadSessionIds.filter(u=>u!==n),subAgentContextStates:{},messages:[],streamingMessageId:null,streamingMessage:null,currentTodos:[],contextState:null,pendingPathConfirmations:[],pendingQuestions:[],queuedMessages:[],abortInProgress:!1,restoredInput:null,error:null,pendingSessionCreate:!1}):e({unreadSessionIds:t().unreadSessionIds.filter(u=>u!==n)});const a=await Ne(`/api/sessions/${n}`);if(!a.ok)return;const l=await a.json();e({currentSession:l.session,messages:l.messages??[],contextState:l.contextState,queuedMessages:l.queueState??[],pendingQuestions:l.pendingQuestions??[]}),$t.send("session.load",{sessionId:n});try{const u=await Ne(`/api/sessions/${n}/background-processes`);if(u.ok){const c=await u.json();el.getState().setProcesses(c.processes??[])}}catch{}}catch{}finally{Pf.delete(n)}}},listSessions:async(n,s=20)=>{const a=n??"global";if(Fc.has(a))return Fc.get(a);const l=(async()=>{try{const u=new URLSearchParams;u.set("limit",String(s)),n&&u.set("projectId",n);const d=await(await Ne(`/api/sessions?${u.toString()}`)).json(),f=d.sessions??[];e(m=>({sessions:f.map(p=>{var x,w;const _=m.sessions.find(C=>C.id===p.id);return{...p,title:p.title??(_==null?void 0:_.title),mode:((x=m.currentSession)==null?void 0:x.id)===p.id?m.currentSession.mode:(_==null?void 0:_.mode)??p.mode,phase:((w=m.currentSession)==null?void 0:w.id)===p.id?m.currentSession.phase:(_==null?void 0:_.phase)??p.phase,isRunning:p.isRunning&&(_==null?void 0:_.isRunning)!==!1,messageCount:p.messageCount,recentUserPrompts:p.recentUserPrompts}}),sessionsHasMore:n?d.hasMore??!1:!0}))}catch{}finally{Fc.delete(a)}})();return Fc.set(a,l),l},loadMoreSessions:async n=>{const s=t();if(!(s.sessionsPaginationLoading||!s.sessionsHasMore)){e({sessionsPaginationLoading:!0});try{const a=new URLSearchParams;a.set("limit","20"),a.set("offset",String(s.sessions.length)),a.set("projectId",n);const u=await(await Ne(`/api/sessions?${a.toString()}`)).json(),c=u.sessions??[];e(d=>({sessions:[...d.sessions,...c.map(f=>{const m=d.sessions.find(p=>p.id===f.id);return(m==null?void 0:m.isRunning)===!1?{...f,isRunning:!1}:f})],sessionsHasMore:u.hasMore??!1,sessionsPaginationLoading:!1}))}catch{e({sessionsPaginationLoading:!1})}}},deleteSession:async n=>{var s;try{return(await Ne(`/api/sessions/${n}`,{method:"DELETE"})).ok?(await t().listSessions(),((s=t().currentSession)==null?void 0:s.id)===n&&t().clearSession(),!0):!1}catch{return!1}},renameSession:async(n,s)=>{var a;try{const l=await Ne(`/api/sessions/${n}/title`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:s})});if(!l.ok)return!1;if(await t().listSessions(),((a=t().currentSession)==null?void 0:a.id)===n){const c=await l.json();c.session&&e({currentSession:c.session})}return!0}catch{return!1}},deleteAllSessions:async n=>{try{return(await Ne(`/api/projects/${n}/sessions`,{method:"DELETE"})).ok?(await t().listSessions(),!0):!1}catch{return!1}},clearSession:()=>{e(n=>({currentSession:null,messages:[],streamingMessageId:null,streamingMessage:null,currentTodos:[],contextState:null,restoredInput:null,pendingSessionCreate:!1,unreadSessionIds:n.currentSession?n.unreadSessionIds.filter(s=>s!==n.currentSession.id):n.unreadSessionIds}))},sendMessage:async(n,s,a)=>{var u;const l=(u=t().currentSession)==null?void 0:u.id;if(l){e({streamingMessageId:null});try{const d=await(await Ne(`/api/sessions/${l}/message`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:n,attachments:s,messageKind:a==null?void 0:a.messageKind})})).json();d.queueState&&e({queuedMessages:d.queueState})}catch(c){console.error("Error sending message:",c)}}},stopGeneration:async()=>{var s;const n=(s=t().currentSession)==null?void 0:s.id;if(n&&!t().abortInProgress){e({abortInProgress:!0});try{const l=await(await Ne(`/api/sessions/${n}/stop`,{method:"POST"})).json();if(l.queuedMessages&&l.queuedMessages.length>0){const u=l.queuedMessages.map(c=>c.content).join(`
59
+ `);e({restoredInput:u})}}catch(a){console.error("Error stopping generation:",a)}}},continueGeneration:async()=>{var s;const n=(s=t().currentSession)==null?void 0:s.id;if(n){e({streamingMessageId:null});try{await Ne(`/api/sessions/${n}/continue`,{method:"POST"})}catch(a){console.error("Error continuing generation:",a)}}},launchRunner:(n,s,a,l)=>{e({streamingMessageId:null});const u={};n!=null&&n.trim()&&(u.content=n),s&&s.length>0&&(u.attachments=s),a&&(u.workflowId=a),l&&(u.subGroup=l),$t.send("runner.launch",u)},switchMode:async n=>{var a;const s=(a=t().currentSession)==null?void 0:a.id;if(s)try{const l=await Ne(`/api/sessions/${s}/mode`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:n})});if(!l.ok){console.error("Failed to switch mode:",await l.json());return}const u=await l.json();u.session&&e({currentSession:u.session})}catch(l){console.error("Error switching mode:",l)}},switchDangerLevel:async n=>{var a;const s=(a=t().currentSession)==null?void 0:a.id;if(s)try{const l=await Ne(`/api/sessions/${s}/danger-level`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({dangerLevel:n})});if(!l.ok){console.error("Failed to switch danger level:",await l.json());return}const u=await l.json();u.session&&e({currentSession:u.session})}catch(l){console.error("Error switching danger level:",l)}},acceptAndBuild:(n,s,a,l)=>{var d;e({streamingMessageId:null});const u={};n&&(u.workflowId=n),s!=null&&s.trim()&&(u.content=s),a&&a.length>0&&(u.attachments=a),l&&(u.subGroup=l);const c=(d=t().currentSession)==null?void 0:d.id;c&&Ne(`/api/sessions/${c}/mode`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:"builder"})}).then(()=>{$t.send("runner.launch",u)})},editCriteria:async n=>{var a;const s=(a=t().currentSession)==null?void 0:a.id;if(s)try{const l=await Ne(`/api/sessions/${s}/criteria`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({criteria:n})});l.ok||console.error("Failed to update criteria:",await l.json())}catch(l){console.error("Error updating criteria:",l)}},compactContext:()=>{$t.send("context.compact",{})},setSessionProvider:async(n,s)=>{var a,l;try{const u=(a=t().currentSession)==null?void 0:a.id;if(!u)return null;const c=await Ne(`/api/sessions/${u}/provider`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({providerId:n,...s?{model:s}:{}})});if(!c.ok)return null;const d=await c.json();if(e({currentSession:d.session,messages:d.messages??[],contextState:d.contextState}),(l=d.session)!=null&&l.providerId){const f=zt.getState();f.providers.find(p=>p.id===d.session.providerId)&&f.syncFromSession(d.session.providerId,d.session.providerModel??"")}return d.session}catch{return null}},updateContextState:n=>{e({contextState:n})},updateSubAgentContextState:(n,s)=>{e(a=>({subAgentContextStates:{...a.subAgentContextStates,[n]:s}}))},clearSubAgentContextState:n=>{e(s=>{const a={...s.subAgentContextStates};return delete a[n],{subAgentContextStates:a}})},confirmPath:async(n,s,a=!1)=>{var u;const l=(u=t().currentSession)==null?void 0:u.id;if(l)try{await Ne(`/api/sessions/${l}/confirm-path`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({callId:n,approved:s,alwaysAllow:a})})}catch(c){console.error("Error confirming path:",c)}},answerQuestion:async(n,s,a)=>{var u;const l=(u=t().currentSession)==null?void 0:u.id;if(l){try{await Ne(`/api/sessions/${l}/answer`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({callId:n,answer:s,skip:a})})}catch(c){console.error("Error answering question:",c)}e(c=>({pendingQuestions:c.pendingQuestions.filter(d=>d.callId!==n)}))}},queueAsap:async(n,s,a)=>{var u;const l=(u=t().currentSession)==null?void 0:u.id;l&&await Dv(l,n,s,a,e)},queueCompletion:async(n,s,a)=>{var u;const l=(u=t().currentSession)==null?void 0:u.id;l&&await Dv(l,n,s,a,e)},cancelQueued:async n=>{var a;const s=(a=t().currentSession)==null?void 0:a.id;if(s)try{const u=await(await Ne(`/api/sessions/${s}/queue/${n}`,{method:"DELETE"})).json();u.queueState&&e({queuedMessages:u.queueState})}catch(l){console.error("Error canceling queued message:",l)}},clearError:()=>{e({error:null})},clearRestoredInput:()=>{e({restoredInput:null})},resetPendingSessionCreate:()=>{e({pendingSessionCreate:!1})},handleServerMessage:n=>{Av(n,e,t)}}));function Bu(){return we(e=>{var t;return((t=e.currentSession)==null?void 0:t.isRunning)??!1})}function hj(){return we(e=>e.abortInProgress)}function fj(){const e=we(s=>s.connect),t=we(s=>s.connectionStatus),n=ki(s=>s.load);return D.useEffect(()=>{e()},[e]),D.useEffect(()=>{t==="connected"&&n()},[t,n]),{connectionStatus:t}}const mj="modulepreload",pj=function(e){return"/"+e},Rv={},Q=function(t,n,s){let a=Promise.resolve();if(n&&n.length>0){let u=function(f){return Promise.all(f.map(m=>Promise.resolve(m).then(p=>({status:"fulfilled",value:p}),p=>({status:"rejected",reason:p}))))};document.getElementsByTagName("link");const c=document.querySelector("meta[property=csp-nonce]"),d=(c==null?void 0:c.nonce)||(c==null?void 0:c.getAttribute("nonce"));a=u(n.map(f=>{if(f=pj(f),f in Rv)return;Rv[f]=!0;const m=f.endsWith(".css"),p=m?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${f}"]${p}`))return;const _=document.createElement("link");if(_.rel=m?"stylesheet":mj,m||(_.as="script"),_.crossOrigin="",_.href=f,d&&_.setAttribute("nonce",d),document.head.appendChild(_),m)return new Promise((x,w)=>{_.addEventListener("load",x),_.addEventListener("error",()=>w(new Error(`Unable to preload CSS for ${f}`)))})}))}function l(u){const c=new Event("vite:preloadError",{cancelable:!0});if(c.payload=u,window.dispatchEvent(c),!c.defaultPrevented)throw u}return a.then(u=>{for(const c of u||[])c.status==="rejected"&&l(c.reason);return t().catch(l)})},yS=[{key:"color-bg-primary",category:"background",label:"Primary Background",defaultValue:"13 17 23"},{key:"color-bg-secondary",category:"background",label:"Secondary Background",defaultValue:"22 27 34"},{key:"color-bg-tertiary",category:"background",label:"Tertiary Background",defaultValue:"33 38 45"},{key:"color-primary",category:"surface",label:"Primary Surface",defaultValue:"10 10 10"},{key:"color-secondary",category:"surface",label:"Secondary Surface",defaultValue:"20 20 20"},{key:"color-text-primary",category:"text",label:"Primary Text",defaultValue:"139 148 158"},{key:"color-text-secondary",category:"text",label:"Secondary Text",defaultValue:"139 148 158"},{key:"color-text-muted",category:"text",label:"Muted Text",defaultValue:"72 79 88"},{key:"color-accent-primary",category:"accent",label:"Primary Accent",defaultValue:"88 166 255"},{key:"color-accent-success",category:"accent",label:"Success Accent",defaultValue:"63 185 80"},{key:"color-accent-warning",category:"accent",label:"Warning Accent",defaultValue:"210 153 34"},{key:"color-accent-error",category:"accent",label:"Error Accent",defaultValue:"248 81 73"},{key:"color-border",category:"border",label:"Border",defaultValue:"48 53 60"}],Pr=[{id:"system",name:"System",tokens:{}},{id:"dark",name:"Dark",tokens:{"color-bg-primary":"13 17 23","color-bg-secondary":"22 27 34","color-bg-tertiary":"33 38 45","color-primary":"10 10 10","color-secondary":"20 20 20","color-text-primary":"255 255 255","color-text-secondary":"139 148 158","color-text-muted":"72 79 88","color-accent-primary":"88 166 255","color-accent-success":"63 185 80","color-accent-warning":"210 153 34","color-accent-error":"248 81 73","color-border":"48 53 60"}},{id:"light",name:"Light",tokens:{"color-bg-primary":"255 255 255","color-bg-secondary":"250 251 252","color-bg-tertiary":"243 244 246","color-primary":"245 245 245","color-secondary":"229 229 229","color-text-primary":"15 23 42","color-text-secondary":"30 41 59","color-text-muted":"100 116 139","color-accent-primary":"37 99 235","color-accent-success":"22 163 74","color-accent-warning":"217 119 6","color-accent-error":"220 38 38","color-border":"203 213 225"}},{id:"monokai",name:"Monokai",tokens:{"color-bg-primary":"39 40 34","color-bg-secondary":"30 31 28","color-bg-tertiary":"62 61 50","color-primary":"30 31 28","color-secondary":"45 46 39","color-text-primary":"248 248 242","color-text-secondary":"207 207 194","color-text-muted":"117 113 94","color-accent-primary":"102 217 239","color-accent-success":"166 226 46","color-accent-warning":"230 219 116","color-accent-error":"249 38 114","color-border":"73 72 62"}},{id:"dracula",name:"Dracula",tokens:{"color-bg-primary":"40 42 54","color-bg-secondary":"33 34 44","color-bg-tertiary":"68 71 90","color-primary":"30 31 41","color-secondary":"44 46 61","color-text-primary":"248 248 242","color-text-secondary":"230 230 230","color-text-muted":"98 114 164","color-accent-primary":"189 147 249","color-accent-success":"80 250 123","color-accent-warning":"255 184 108","color-accent-error":"255 85 85","color-border":"68 71 90"}},{id:"nord",name:"Nord",tokens:{"color-bg-primary":"46 52 64","color-bg-secondary":"59 66 82","color-bg-tertiary":"67 76 94","color-primary":"46 52 64","color-secondary":"59 66 82","color-text-primary":"236 239 244","color-text-secondary":"229 233 240","color-text-muted":"76 86 106","color-accent-primary":"129 161 193","color-accent-success":"163 190 140","color-accent-warning":"235 203 139","color-accent-error":"191 97 106","color-border":"76 86 106"}}];function Ov(){try{const e=localStorage.getItem("openfox:userPresets");if(e)return JSON.parse(e)}catch{}return[]}const Ft=Yn((e,t)=>({currentPreset:"dark",basePreset:"",customTokens:{},isCustom:!1,isCustomizing:!1,userPresets:Ov(),followSystemTheme:!0,isSystem:!1,applySavedTheme:()=>{const{getSavedTheme:n,applyPreset:s,applyTokens:a}=t(),l=n();if(l)try{const u=JSON.parse(l);u.preset&&u.tokens?(s(u.preset),e({basePreset:u.preset}),a(u.tokens)):u.preset?s(u.preset):u.tokens&&a(u.tokens)}catch{s("dark")}else s("dark")},applyPreset:n=>{if(Pr.find(a=>a.id===n))if(n==="system"){const l=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";e({basePreset:"system",currentPreset:l,customTokens:{},isCustom:!1,isCustomizing:!1,isSystem:!0}),t().applyTheme()}else e({currentPreset:n,basePreset:"",customTokens:{},isCustom:!1,isCustomizing:!1,isSystem:!1}),t().applyTheme()},startCustomizing:()=>{var a;const{currentPreset:n}=t(),s=((a=Pr.find(l=>l.id===n))==null?void 0:a.tokens)??{};e({basePreset:n,customTokens:{...s},isCustom:!0,isCustomizing:!0})},setCustomToken:(n,s)=>{e(a=>({customTokens:{...a.customTokens,[n]:s}})),t().applyTheme()},cancelCustomizing:()=>{t().applyPreset(t().basePreset||t().currentPreset)},saveCustomTheme:()=>{const{customTokens:n}=t();t().saveTheme(JSON.stringify({tokens:n})).catch(()=>{}),e({isCustomizing:!1})},applyTokens:n=>{e({customTokens:n,isCustom:!0,isCustomizing:!1}),t().applyTheme()},getActiveTheme:()=>{var u,c;const{basePreset:n,customTokens:s,isCustom:a}=t();if(a&&n)return{...((u=Pr.find(f=>f.id===n))==null?void 0:u.tokens)??{},...s};if(a)return{...yS.reduce((d,f)=>({...d,[f.key]:f.defaultValue}),{}),...s};const l=Pr.find(d=>d.id===t().currentPreset);return(l==null?void 0:l.tokens)??((c=Pr[0])==null?void 0:c.tokens)??{}},applyTheme:()=>{if(typeof document>"u")return;const n=t().getActiveTheme(),s=document.documentElement;Object.entries(n).forEach(([a,l])=>{s.style.setProperty(`--${a}`,l)})},getSavedTheme:()=>{try{const n=localStorage.getItem("openfox:theme");if(!n)return null;if(n[0]!=="{")return JSON.stringify({preset:n});const s=JSON.parse(n);if(s.preset)return JSON.stringify({preset:s.preset});if(s.tokens)return JSON.stringify({tokens:s.tokens})}catch{return null}return null},saveTheme:async n=>{localStorage.setItem("openfox:theme",n);const{useSettingsStore:s}=await Q(async()=>{const{useSettingsStore:a}=await Promise.resolve().then(()=>Lf);return{useSettingsStore:a}},void 0);await s.getState().setSetting(ze.DISPLAY_THEME,n)},clearCustomTheme:()=>{localStorage.removeItem("openfox:theme"),e({isCustom:!1,isCustomizing:!1,basePreset:""})},setFollowSystemTheme:n=>{e({followSystemTheme:n}),Q(async()=>{const{useSettingsStore:s,SETTINGS_KEYS:a}=await Promise.resolve().then(()=>Lf);return{useSettingsStore:s,SETTINGS_KEYS:a}},void 0).then(({useSettingsStore:s,SETTINGS_KEYS:a})=>{s.getState().setSetting(a.DISPLAY_FOLLOW_SYSTEM_THEME,String(n))})},initSystemThemeListener:()=>{if(typeof window>"u")return()=>{};const n=window.matchMedia("(prefers-color-scheme: dark)"),s=l=>{const{followSystemTheme:u}=t();u&&(t().applyPreset(l?"dark":"light"),t().saveTheme(JSON.stringify({preset:l?"dark":"light"})))},a=l=>s(l.matches);return n.addEventListener("change",a),()=>n.removeEventListener("change",a)},reset:()=>{e({currentPreset:"dark",basePreset:"",customTokens:{},isCustom:!1,isCustomizing:!1,userPresets:[],followSystemTheme:!0})},addUserPreset:n=>{const{basePreset:s,customTokens:a,currentPreset:l}=t(),u={id:"custom-"+Date.now(),name:n,basePreset:s||l,tokens:{...a}},c=[...t().userPresets,u];e({userPresets:c}),t().saveUserPresets()},applyUserPreset:n=>{const s=t().userPresets[n];s&&(e({currentPreset:s.basePreset,basePreset:s.basePreset,customTokens:{...s.tokens},isCustom:!0,isCustomizing:!1}),t().applyTheme(),t().saveTheme(JSON.stringify({preset:s.basePreset,tokens:s.tokens})).catch(()=>{}))},deleteUserPreset:n=>{const s=t().userPresets.filter((a,l)=>l!==n);e({userPresets:s}),t().saveUserPresets()},loadUserPresets:()=>{e({userPresets:Ov()})},saveUserPresets:()=>{localStorage.setItem("openfox:userPresets",JSON.stringify(t().userPresets)),Q(async()=>{const{useSettingsStore:n}=await Promise.resolve().then(()=>Lf);return{useSettingsStore:n}},void 0).then(({useSettingsStore:n})=>{n.getState().setSetting(ze.DISPLAY_USER_PRESETS,JSON.stringify(t().userPresets)).catch(()=>{})})}}));function gj({canLoad:e,projectId:t,currentProjectId:n}){const s=Rt(u=>u.loadProject),a=we(u=>u.listSessions),l=we(u=>u.clearSession);D.useEffect(()=>{e&&t&&(n!==t&&s(t),a(t),l())},[e,t,n,s,a,l])}function xj({canLoad:e,projectId:t,sessionId:n,currentProjectId:s,currentSessionId:a}){const l=we(f=>f.loadSession),u=Rt(f=>f.loadProject),c=we(f=>f.listSessions),d=we(f=>f.pendingSessionCreate);D.useEffect(()=>{e&&t&&s!==t&&u(t)},[e,t,s,u]),D.useEffect(()=>{e&&n&&a!==n&&l(n),e&&t&&c(t)},[e,n,a,l,c,d,t])}function _j({className:e="w-5 h-5"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 19l-7-7 7-7"})})}function up({className:e="w-3.5 h-3.5"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M14 5l7 7m0 0l-7 7m7-7H3"})})}function yj({className:e="w-5 h-5"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15.172 7l-6.586 6.586a2 2 0 102.828 2.828l6.414-6.586a4 4 0 00-5.656-5.656l-6.415 6.585a6 6 0 108.486 8.486L20.5 13"})})}function vj({className:e="w-3 h-3 text-text-muted"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10"})})}function bj({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,viewBox:"0 0 16 16",fill:"currentColor",children:o.jsx("path",{d:"M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.493 2.493 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25Zm-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Zm8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5ZM4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Z"})})}function Br({className:e="w-3.5 h-3.5 text-text-muted"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M5 13l4 4L19 7"})})}function dr({className:e="w-3 h-3 text-text-muted",rotate:t}){return o.jsx("svg",{className:e,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,style:t!==void 0?{transform:`rotate(${t}deg)`}:void 0,children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19 9l-7 7-7-7"})})}function Sj({className:e="w-4 h-4"}){return o.jsxs("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[o.jsx("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2",strokeWidth:"2"}),o.jsx("path",{d:"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1",strokeWidth:"2"})]})}function dp({className:e="w-3.5 h-3.5"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})}function wj({className:e="w-3 h-3"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"})})}function hp({className:e="w-4 h-4"}){return o.jsxs("svg",{className:e,fill:"currentColor",viewBox:"0 0 24 24",children:[o.jsx("circle",{cx:"12",cy:"5",r:"2"}),o.jsx("circle",{cx:"12",cy:"12",r:"2"}),o.jsx("circle",{cx:"12",cy:"19",r:"2"})]})}function du({className:e="w-3.5 h-3.5"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z"})})}function zu({className:e="w-5 h-5 text-accent-primary"}){return o.jsx("svg",{className:e,fill:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{d:"M10 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2z"})})}function Cj({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 9V4.5M9 9H4.5M9 9L3.75 3.75M9 15v4.5M9 15H4.5M9 15l-5.25 5.25M15 9h4.5M15 9V4.5M15 9l5.25-5.25M15 15h4.5M15 15v4.5m0-4.5l5.25 5.25"})})}function kj({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4"})})}function Ej({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,viewBox:"0 0 16 16",fill:"currentColor",children:o.jsx("path",{d:"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.1-.303c.652-.18 1.37.008 1.755.653a8.043 8.043 0 0 1 .683 1.18c.227.568.096 1.26-.378 1.726l-.812.804a.312.312 0 0 0-.081.283c.024.166.04.335.04.507s-.016.341-.04.507a.312.312 0 0 0 .08.283l.813.804c.474.466.605 1.158.378 1.726a8.07 8.07 0 0 1-.683 1.18c-.385.645-1.103.833-1.755.653l-1.1-.303c-.066-.019-.176-.011-.299.071a5.1 5.1 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.107c-.168.645-.714 1.196-1.458 1.26a8.094 8.094 0 0 1-1.402 0c-.744-.064-1.29-.615-1.458-1.26l-.29-1.107a.426.426 0 0 0-.211-.224 5.11 5.11 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.1.303c-.652.18-1.37-.008-1.755-.653a8.044 8.044 0 0 1-.683-1.18c-.227-.568-.096-1.26.378-1.726l.812-.804a.312.312 0 0 0 .081-.283A5.18 5.18 0 0 1 2.3 8c0-.172.016-.341.04-.507a.312.312 0 0 0-.08-.283l-.813-.804C.973 5.94.842 5.248 1.069 4.68c.181-.452.395-.882.683-1.18.385-.645 1.103-.833 1.755-.653l1.1.303c.066.019.176.011.299-.071.214-.143.437-.272.668-.386a.426.426 0 0 0 .211-.224l.29-1.107C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm0 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5Z"})})}function vS({className:e="w-3 h-3"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})}function jj({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a3 3 0 013-3h4a3 3 0 013 3v1"})})}function Mv({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})}function bS({className:e="w-[18px] h-[18px]"}){return o.jsxs("svg",{className:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[o.jsx("circle",{cx:"12",cy:"5",r:"1.5",fill:"currentColor",stroke:"none"}),o.jsx("circle",{cx:"12",cy:"12",r:"1.5",fill:"currentColor",stroke:"none"}),o.jsx("circle",{cx:"12",cy:"19",r:"1.5",fill:"currentColor",stroke:"none"})]})}function Nj({className:e="w-4 h-4"}){return o.jsxs("svg",{className:e,viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[o.jsx("path",{d:"M6.5 3.5H3a1 1 0 0 0-1 1V13a1 1 0 0 0 1 1h8.5a1 1 0 0 0 1-1V9.5"}),o.jsx("path",{d:"M9.5 2h4.5v4.5"}),o.jsx("path",{d:"M14 2L7.5 8.5"})]})}function Tj({className:e="w-3 h-3",color:t}){return o.jsx("svg",{className:e,fill:t??"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{d:"M8 5v14l11-7z"})})}function Xs({className:e="w-3 h-3 text-accent-primary"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4v16m8-8H4"})})}function Aj({className:e="w-5 h-5"}){return o.jsx("svg",{className:e,viewBox:"0 0 20 20",fill:"currentColor",children:o.jsx("path",{fillRule:"evenodd",d:"M10 3a1 1 0 011 1v5h5a1 1 0 110 2h-5v5a1 1 0 11-2 0v-5H4a1 1 0 110-2h5V4a1 1 0 011-1z",clipRule:"evenodd"})})}function fp({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"})})}function Lj({className:e="w-4 h-4"}){return o.jsxs("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z"}),o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"})]})}function Dj({className:e="w-3 h-3 text-blue-400 animate-spin flex-shrink-0"}){return o.jsxs("svg",{"aria-label":"Session running",className:e,viewBox:"0 0 24 24",fill:"none",children:[o.jsx("title",{children:"Running"}),o.jsx("circle",{className:"opacity-30",cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"3"}),o.jsx("path",{d:"M21 12a9 9 0 00-9-9",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round"})]})}function Rj({className:e="w-3.5 h-3.5 text-text-muted"}){return o.jsx("svg",{className:e,fill:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{d:"M10.788 3.21c.448-1.077 1.976-1.077 2.424 0l2.082 5.007 5.404.433c1.164.093 1.636 1.545.749 2.305l-4.117 3.527 1.257 5.273c.271 1.136-.964 2.033-1.96 1.425L12 18.354 7.373 21.18c-.996.608-2.231-.29-1.96-1.425l1.257-5.273-4.117-3.527c-.887-.76-.415-2.212.749-2.305l5.404-.433 2.082-5.006z"})})}function Oj({className:e="w-3.5 h-3.5 text-text-muted"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"})})}function SS({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,viewBox:"0 0 16 16",fill:"currentColor",children:o.jsx("rect",{x:"3",y:"3",width:"10",height:"10",rx:"1"})})}function Mj({className:e="w-3.5 h-3.5 shrink-0",color:t}){return o.jsx("svg",{className:e,fill:"none",stroke:t,viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})})}function Ij({className:e="w-4 h-4"}){return o.jsxs("svg",{className:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[o.jsx("polyline",{points:"4 17 10 11 4 5"}),o.jsx("line",{x1:"12",y1:"19",x2:"20",y2:"19"})]})}function gl({className:e="w-3.5 h-3.5"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})})}function mp(){return o.jsx("svg",{className:"w-3.5 h-3.5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})})}function Pj({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})})}function km({className:e="w-2.5 h-2.5"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})})}function xl({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,viewBox:"0 0 20 20",fill:"currentColor",children:o.jsx("path",{fillRule:"evenodd",d:"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",clipRule:"evenodd"})})}function wS({className:e="w-4 h-4"}){return o.jsx("svg",{className:e,viewBox:"0 0 16 16",fill:"currentColor",children:o.jsx("path",{d:"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.55.55 0 0 1 0-.708z"})})}function Bj({className:e="w-3.5 h-3.5 text-text-muted"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z"})})}function zj({className:e="w-3.5 h-3.5 text-text-muted"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z"})})}function Iv({className:e="w-3.5 h-3.5 text-text-muted"}){return o.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9.75 17L9 20l-1 1h8l-1-1-.75-3M3 13h18M5 17h14a2 2 0 002-2V5a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"})})}function Em(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}function Pv(e,t){const n=$t.ws;!n||n.readyState!==WebSocket.OPEN||n.send(JSON.stringify({id:Em(),type:e,payload:t}))}const vr=Yn((e,t)=>({isOpen:!1,sessions:[],workdir:null,setOpen:n=>e({isOpen:n}),toggleOpen:()=>e(n=>({isOpen:!n.isOpen})),setWorkdir:n=>e({workdir:n}),fetchSessions:async n=>{if(!n){e({sessions:[]});return}try{const s=await Ne(`/api/terminals?projectId=${encodeURIComponent(n)}`);if(s.ok){const a=await s.json();e({sessions:a});const l=$t.ws;if(l&&l.readyState===WebSocket.OPEN)for(const u of a)l.send(JSON.stringify({id:Em(),type:"terminal.subscribe",payload:{sessionId:u.id}}))}}catch(s){console.error("Failed to fetch terminals:",s)}},createSession:async(n,s)=>{try{const a=await Ne("/api/terminals",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workdir:n??t().workdir??void 0,projectId:s})});if(a.ok){const l=await a.json();e(c=>({sessions:[...c.sessions,l]}));const u=$t.ws;u&&u.readyState===WebSocket.OPEN&&u.send(JSON.stringify({id:Em(),type:"terminal.subscribe",payload:{sessionId:l.id}}))}}catch(a){console.error("Failed to create terminal:",a)}},writeSession:(n,s)=>{Pv("terminal.write",{sessionId:n,data:s})},resizeSession:(n,s,a)=>{Pv("terminal.resize",{sessionId:n,cols:s,rows:a})},killSession:async n=>{try{(await Ne(`/api/terminals/${n}`,{method:"DELETE"})).ok&&e(a=>({sessions:a.sessions.filter(l=>l.id!==n)}))}catch(s){console.error("Failed to kill terminal:",s)}},handleMessage:n=>{switch(n.type){case"terminal.exit":{const{sessionId:s}=n.payload||{};s&&e(a=>{const l=a.sessions.filter(u=>u.id!==s);return l.length===0&&a.isOpen?{sessions:[],isOpen:!1}:{sessions:l}});break}}}}));$t.subscribe(e=>{var t;(t=e.type)!=null&&t.startsWith("terminal.")&&vr.getState().handleMessage(e)});const La={terminalToggle:{type:"double-press",key:"Control",threshold:300},quickAction:{type:"double-press",key:"Shift",threshold:300},agentSwitching:[{type:"chord",key:"1",modifiers:["ctrl"]},{type:"chord",key:"2",modifiers:["ctrl"]},{type:"chord",key:"3",modifiers:["ctrl"]},{type:"chord",key:"4",modifiers:["ctrl"]}]};function jm(e){if(!e)return structuredClone(La);try{const t=JSON.parse(e);return{terminalToggle:t.terminalToggle??structuredClone(La.terminalToggle),quickAction:t.quickAction??structuredClone(La.quickAction),agentSwitching:t.agentSwitching??structuredClone(La.agentSwitching)}}catch{return structuredClone(La)}}function Bv(e){return e.code.startsWith("Digit")?e.code.slice(-1):e.code.startsWith("Key")?e.code.slice(3).toLowerCase():e.key}function CS(e){if(e.type==="double-press")return`Double ${e.key==="Control"?"Ctrl":e.key==="Shift"?"Shift":e.key==="Alt"?"Alt":e.key==="Meta"?"Meta":e.key}`;const t=e.modifiers.map(s=>{switch(s){case"ctrl":return"Ctrl";case"meta":return"⌘";case"alt":return"Alt";case"shift":return"Shift"}}),n=e.key.length===1?e.key.toUpperCase():e.key;return[...t,n].join("+")}function $j(e){return e.type==="double-press"}function kS(e){return e.type==="chord"}function Hj(e,t){return t.length===1&&/^[a-z]$/i.test(t)?e.code===`Key${t.toUpperCase()}`:t.length===1&&/^[0-9]$/.test(t)?e.code===`Digit${t}`:e.key.toLowerCase()===t.toLowerCase()}function ES(e,t){const n=t.modifiers.includes("ctrl"),s=t.modifiers.includes("meta"),a=t.modifiers.includes("alt"),l=t.modifiers.includes("shift");return Hj(e,t.key)&&e.ctrlKey===n&&e.metaKey===s&&e.altKey===a&&e.shiftKey===l}function pp(){const e=on(t=>t.settings[ze.KEYBINDINGS]);return jm(e)}function Uj(e,t,n){const s=D.useRef(0),a=D.useRef(t);a.current=t,D.useEffect(()=>{if(!e)return;const l=e.threshold??300,u=c=>{if(c.key!==e.key)return;const d=e.key==="Control",f=e.key==="Shift",m=e.key==="Alt",p=e.key==="Meta";if(!d&&c.ctrlKey||!f&&c.shiftKey||!m&&c.altKey||!p&&c.metaKey)return;const _=Date.now();_-s.current<l?(c.preventDefault(),c.stopPropagation(),a.current(),s.current=0):s.current=_};return window.addEventListener("keydown",u,n!=null&&n.capture?!0:void 0),()=>window.removeEventListener("keydown",u,n!=null&&n.capture?!0:void 0)},[e,n==null?void 0:n.capture])}function Fj(e,t){const n=D.useRef(t);n.current=t,D.useEffect(()=>{if(!e)return;const s=a=>{ES(a,e)&&(a.preventDefault(),n.current())};return window.addEventListener("keydown",s),()=>window.removeEventListener("keydown",s)},[e])}function jS(e,t,n){Uj(e&&$j(e)?e:void 0,t,n),Fj(e&&kS(e)?e:void 0,t)}function Vj(e,t,n){const s=D.useRef(n);s.current=n,D.useEffect(()=>{const a=l=>{for(let u=0;u<e.length;u++){const c=e[u];if(!c)continue;const d=t[u];if(d&&kS(c)&&ES(l,c)){l.preventDefault(),s.current(d.id);return}}};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[e,t])}var Ua=rS();const $u=D.forwardRef(({icon:e,iconSize:t="w-3.5 h-3.5",className:n="",...s},a)=>o.jsx("button",{ref:a,type:"button",className:`p-1 rounded text-text-muted hover:text-text-primary hover:bg-bg-primary transition-colors ${n}`,...s,children:o.jsx("svg",{className:t,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:e})})}));$u.displayName="IconButton";const Gj="M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z",Ws=D.forwardRef((e,t)=>o.jsx($u,{ref:t,icon:Gj,title:"Edit",...e}));Ws.displayName="EditButton";const Wj="M6 18L18 6M6 6l12 12",gp=D.forwardRef((e,t)=>o.jsx($u,{ref:t,icon:Wj,...e}));gp.displayName="CloseButton";const qj={sm:"max-w-sm",md:"max-w-md",lg:"max-w-2xl",xl:"max-w-4xl",full:"max-w-[95vw] h-[90vh] flex-1"};function Ot({label:e,title:t,headerRight:n,size:s="md",minHeight:a,children:l,footer:u,className:c,onClose:d,isOpen:f,closeOnBackdropClick:m=!0,closeOnEscape:p=!0,showCloseButton:_=!0}){const[x,w]=D.useState(!1),C=f!==void 0,v=C?f:x,S=D.useCallback(()=>{C||w(!0)},[C]),b=D.useCallback(()=>{C||w(!1),d==null||d()},[C,d]);D.useEffect(()=>{if(!v||!p)return;const E=N=>{N.key==="Escape"&&(N.stopPropagation(),b())};return document.addEventListener("keydown",E),()=>document.removeEventListener("keydown",E)},[v,b,p]);const y=e&&(typeof e=="string"?o.jsx("button",{type:"button",onClick:S,className:c,children:e}):o.jsx("span",{onClick:S,className:c,style:{cursor:"pointer"},children:e}));return o.jsxs(o.Fragment,{children:[y,v&&(typeof document<"u"?Ua.createPortal(o.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center p-4",children:[o.jsx("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm",onClick:m?b:void 0}),o.jsxs("div",{className:`relative w-full ${qj[s]} max-h-[90vh] bg-bg-secondary border border-border rounded shadow-xl flex flex-col`,children:[(t||n||_)&&o.jsxs("div",{className:"flex items-center justify-between px-4 py-3 border-b border-border",children:[t&&o.jsx("h2",{className:"text-lg font-semibold text-text-primary",children:t}),o.jsxs("div",{className:"flex items-center gap-2 ml-auto",children:[n,_&&o.jsx(gp,{onClick:b,"aria-label":"Close"})]})]}),o.jsx("div",{className:"p-4 overflow-y-auto flex-1 min-h-0",style:a?{minHeight:a}:void 0,children:l}),u&&o.jsx("div",{className:"px-4 py-3 border-t border-border",children:u})]})]}),document.body):null)]})}function Kj({value:e,defaultUrl:t,disabled:n,onChange:s}){const a=e??t;return o.jsxs("div",{className:"relative",children:[o.jsx("select",{value:a,disabled:n,onChange:l=>{const u=l.target.value;s(u===t?null:u)},className:"appearance-none bg-bg-tertiary border border-border rounded px-1.5 pr-5 text-xs focus:outline-none focus:ring-1 focus:ring-accent-primary disabled:opacity-40 cursor-pointer",style:{width:"60px"},children:Q2.map(({url:l,label:u})=>o.jsx("option",{value:l,title:u,children:u.split(" ")[0]},l))}),o.jsx(dr,{className:"absolute right-0.5 top-1/2 -translate-y-1/2 w-3 h-3 pointer-events-none text-text-muted"})]})}const zv=[{key:"general",label:"General"},{key:"build",label:"Agent"},{key:"sub-agent",label:"Sub-agent"}];function Yj(){const e=ki(d=>d.settings),t=ki(d=>d.update),n=ki(d=>d.updateEvent),s=ki(d=>d.updateAgentOverride),a=ki(d=>d.load);D.useEffect(()=>{a()},[a]);const l=async()=>{await Z2()==="granted"&&t({...e,browserNotificationEnabled:!0})},u=(d,f,m,p)=>{d==="general"?n(f,{[m]:p}):s(d,f,{[m]:p})},c=(d,f,m)=>{d==="general"?n(f,{customSoundUrl:m}):s(d,f,{customSoundUrl:m})};return o.jsxs("div",{className:"space-y-6",children:[o.jsxs("div",{className:"space-y-3",children:[o.jsx("h3",{className:"text-sm font-medium text-text-primary",children:"Master Controls"}),o.jsx($v,{label:"Sound notifications",description:"Play sounds when events occur",checked:e.soundEnabled,onChange:d=>t({...e,soundEnabled:d})}),o.jsx($v,{label:"Browser notifications",description:"Show desktop notifications when the window is not focused",checked:e.browserNotificationEnabled,onChange:d=>{d&&typeof Notification<"u"&&Notification.permission!=="granted"?l():t({...e,browserNotificationEnabled:d})}}),typeof Notification<"u"&&Notification.permission==="denied"&&e.browserNotificationEnabled&&o.jsx("p",{className:"text-xs text-accent-error ml-6",children:"Browser notifications are blocked. Please enable them in your browser settings."})]}),o.jsxs("div",{className:"space-y-3",children:[o.jsx("h3",{className:"text-sm font-medium text-text-primary",children:"Notification Settings"}),o.jsx("div",{className:"border border-border rounded overflow-hidden",children:o.jsxs("table",{className:"w-full text-sm",children:[o.jsx("thead",{className:"sticky top-0 bg-bg-tertiary",children:o.jsxs("tr",{className:"border-b border-border",children:[o.jsx("th",{className:"text-left px-3 py-2 text-text-primary font-medium w-40",children:"Event"}),zv.map(d=>o.jsx("th",{className:"text-center px-2 py-2 text-text-primary font-medium",children:d.label},d.key))]})}),o.jsx("tbody",{children:X2.map(d=>o.jsxs("tr",{className:"border-b border-border last:border-b-0 hover:bg-bg-secondary/50",children:[o.jsx("td",{className:"px-3 py-2",children:o.jsx("div",{className:"text-text-primary text-xs",children:d.label})}),zv.map(f=>{const m=xS(e,d.key,f.key==="general"?void 0:f.key),p=pS[d.key];return o.jsx("td",{className:"px-2 py-2 align-top",children:o.jsxs("div",{className:"flex flex-col items-center gap-1",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("label",{className:"flex items-center gap-1 text-text-secondary",children:o.jsx("input",{type:"checkbox",checked:m.soundEnabled,onChange:_=>u(f.key,d.key,"soundEnabled",_.target.checked),disabled:!e.soundEnabled,className:"rounded border-border",title:"Sound"})}),o.jsx("label",{className:"flex items-center gap-1 text-text-secondary",children:o.jsx("input",{type:"checkbox",checked:m.browserNotification,onChange:_=>u(f.key,d.key,"browserNotification",_.target.checked),disabled:!e.browserNotificationEnabled,className:"rounded border-border",title:"Browser"})})]}),m.soundEnabled&&e.soundEnabled&&o.jsx(Kj,{value:m.customSoundUrl,defaultUrl:p,disabled:!e.soundEnabled,onChange:_=>c(f.key,d.key,_)})]})},f.key)})]},d.key))})]})})]})]})}function $v({label:e,description:t,checked:n,onChange:s}){return o.jsxs("label",{className:"flex items-start justify-between gap-3 cursor-pointer group",children:[o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx("div",{className:"text-sm text-text-primary group-hover:text-accent-primary transition-colors",children:e}),o.jsx("div",{className:"text-xs text-text-muted mt-0.5",children:t})]}),o.jsx("div",{className:"flex-shrink-0 pt-0.5",children:o.jsx("div",{className:`relative w-9 h-5 rounded-full transition-colors ${n?"bg-accent-primary":"bg-bg-tertiary border border-border"}`,onClick:a=>{a.preventDefault(),s(!n)},children:o.jsx("div",{className:`absolute top-0.5 w-4 h-4 rounded-full bg-white shadow transition-transform ${n?"translate-x-4":"translate-x-0.5"}`})})})]})}const tt=D.forwardRef(({variant:e="secondary",size:t="md",className:n="",children:s,...a},l)=>{const u="rounded font-medium transition-colors disabled:opacity-50 disabled:cursor-not-allowed",c={primary:"bg-accent-primary/25 text-text-primary hover:bg-accent-primary/40",secondary:"bg-bg-tertiary text-text-primary hover:bg-border",danger:"bg-accent-error text-white hover:bg-accent-error/80"},d={sm:"px-1.5 py-1 text-xs",md:"px-3 py-1.5 text-sm",lg:"px-4 py-2 text-base"};return o.jsx("button",{ref:l,className:`${u} ${c[e]} ${d[t]} ${n}`,...a,children:s})});tt.displayName="Button";async function xp(e,t,n){t({loading:!0});try{const a=await(await Ne(e)).json();t({defaults:a.defaults??[],userItems:a.userItems??[],...n?{projectItems:a.projectItems??[]}:{},loading:!1})}catch{t({loading:!1})}}const Lr=Yn((e,t)=>({defaults:[],userItems:[],projectItems:[],loading:!1,fetchSkills:async()=>{await xp("/api/skills",e,!0)},toggleSkill:async n=>{try{const a=await(await Ne(`/api/skills/${n}/toggle`,{method:"POST"})).json();e(l=>({defaults:l.defaults.map(u=>u.id===n?{...u,enabled:a.enabled}:u),userItems:l.userItems.map(u=>u.id===n?{...u,enabled:a.enabled}:u)}))}catch{}},fetchSkill:async n=>{try{const s=await Ne(`/api/skills/${n}`);return s.ok?await s.json():null}catch{return null}},fetchDefaultContent:async n=>{try{const s=await Ne(`/api/skills/defaults/${n}`);return s.ok?await s.json():null}catch{return null}},createSkill:async(n,s)=>{const a=await Ys("POST","/api/skills",{...n,destination:s});return a.success&&await t().fetchSkills(),a},updateSkill:async(n,s)=>{const a=await Ys("PUT",`/api/skills/${n}`,s);return a.success&&await t().fetchSkills(),a},deleteSkill:async n=>{try{const s=await Ne(`/api/skills/${n}`,{method:"DELETE"}),a=await s.json();return s.ok?(e(l=>({userItems:l.userItems.filter(u=>u.id!==n)})),{success:!0}):{success:!1,error:a.error??"Failed to delete"}}catch{return{success:!1,error:"Network error"}}},duplicateSkill:async(n,s)=>Pu(`/api/skills/${n}/duplicate`,()=>t().fetchSkills(),s)}));function Hu(){const[e,t]=D.useState({id:null,type:null}),n=D.useCallback(l=>t({id:l,type:"delete"}),[]),s=D.useCallback(()=>t({id:null,type:null}),[]),a=D.useCallback((l,u)=>e.id===l&&e.type===u,[e.id,e.type]);return{requestDelete:n,clearConfirm:s,isConfirming:a}}function _p({onConfirm:e,onCancel:t}){return o.jsxs("div",{className:"flex items-center gap-1",children:[o.jsx("button",{onClick:e,className:"px-1.5 py-0.5 rounded text-xs hover:opacity-90 transition-colors bg-accent-error/20 text-accent-error hover:bg-accent-error/30",children:"Delete"}),o.jsx("button",{onClick:t,className:"px-1.5 py-0.5 rounded text-text-muted text-xs hover:bg-bg-primary transition-colors",children:"Cancel"})]})}function yp({onClick:e}){return o.jsx("button",{onClick:e,className:"p-1.5 rounded hover:bg-bg-primary text-text-muted hover:text-accent-error transition-colors",title:"Delete",children:o.jsx(gl,{})})}function hu({onClick:e}){return o.jsx("button",{onClick:e,className:"p-1.5 rounded hover:bg-bg-primary text-text-muted hover:text-text-primary transition-colors",title:"Duplicate",children:o.jsx(dp,{})})}function Sr({label:e,value:t,onChange:n,placeholder:s,readOnly:a,hint:l,mono:u}){return o.jsxs("div",{children:[o.jsxs("label",{className:"block text-xs text-text-secondary mb-1",children:[e,l&&o.jsx("span",{className:"text-text-muted ml-1",children:l})]}),o.jsx("input",{value:t,onChange:c=>n(c.target.value),readOnly:a,placeholder:s,className:`w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm focus:outline-none focus:ring-1 focus:ring-accent-primary ${u?"font-mono":""} ${a?"opacity-60":""}`})]})}function Xj({onCancel:e,onSave:t,saving:n,saveDisabled:s}){return o.jsxs("div",{className:"flex justify-end gap-2 pt-2 border-t border-border",children:[o.jsx(tt,{variant:"secondary",onClick:e,children:"Cancel"}),o.jsx(tt,{variant:"primary",onClick:t,disabled:n||s,children:n?"Saving...":"Save"})]})}function Uu({message:e}){return o.jsx("div",{className:"text-accent-error text-sm px-3 py-2 bg-accent-error/10 rounded",children:e})}function NS({description:e,onNew:t,loading:n,hasItems:s,children:a}){return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"flex items-center justify-between mb-4",children:[o.jsx("p",{className:"text-text-secondary text-sm",children:e}),o.jsx("div",{className:"flex items-center gap-2 flex-shrink-0 ml-3",children:o.jsx(tt,{variant:"primary",size:"sm",onClick:t,children:"+ New"})})]}),n&&!s?o.jsx("div",{className:"text-text-muted text-sm",children:"Loading..."}):s?a:o.jsx("div",{className:"text-text-muted text-sm",children:"No items defined."})]})}function TS({label:e="Custom",children:t}){return o.jsxs("div",{children:[o.jsx("h3",{className:"text-xs font-medium text-text-secondary mb-2 uppercase tracking-wide",children:e}),o.jsx("div",{className:"space-y-2",children:t})]})}function vp({description:e,onNew:t,newLabel:n="+ New"}){return o.jsxs("div",{className:"flex items-center justify-between mb-4",children:[o.jsx("p",{className:"text-text-secondary text-sm",children:e}),o.jsx("div",{className:"flex items-center gap-2 flex-shrink-0 ml-3",children:o.jsx(tt,{variant:"primary",size:"sm",onClick:t,children:n})})]})}function AS({isBuiltIn:e,isConfirmingDelete:t,onView:n,onEdit:s,onDuplicate:a,onDelete:l,children:u}){return o.jsxs("div",{className:"flex items-center justify-between p-3 rounded border border-border bg-bg-tertiary",children:[o.jsx("div",{className:"min-w-0 flex-1 mr-3",children:u}),o.jsxs("div",{className:"flex items-center gap-1.5 flex-shrink-0",children:[e&&n&&o.jsx("button",{onClick:n,className:"p-1.5 rounded text-text-muted hover:text-text-primary hover:bg-bg-primary transition-colors",title:"View",children:o.jsx(du,{})}),o.jsx(hu,{onClick:a}),!e&&s&&o.jsx(Ws,{onClick:s}),!e&&(t?o.jsx(_p,{onConfirm:()=>{l==null||l()},onCancel:()=>{}}):o.jsx(yp,{onClick:()=>l==null?void 0:l()}))]})]})}function Qj({id:e,name:t,description:n,isBuiltIn:s,isConfirmingDelete:a,onView:l,onEdit:u,onDuplicate:c,onDelete:d}){return o.jsxs(AS,{isBuiltIn:s,isConfirmingDelete:a,onView:l,onEdit:u,onDuplicate:c,onDelete:d,children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"text-text-primary text-sm font-medium",children:t}),o.jsx("span",{className:"text-text-muted text-xs font-mono",children:e})]}),n&&o.jsx("p",{className:"text-text-muted text-xs truncate",children:n})]})}function bp({loading:e,hasItems:t,loadingLabel:n,emptyLabel:s,children:a}){return e&&!t?o.jsx("div",{className:"text-text-muted text-sm",children:n}):t?o.jsx("div",{className:"space-y-4",children:a}):s?o.jsx("div",{className:"text-text-muted text-sm",children:s}):null}function LS({name:e,id:t,nameLabel:n="Name",idLabel:s="ID",namePlaceholder:a="My Item",idPlaceholder:l="my-item",nameHint:u,readOnlyId:c=!1,readOnlyHint:d="(read-only)",onNameChange:f,onIdChange:m}){return o.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[o.jsx(Sr,{label:n,value:e,onChange:f,placeholder:a,hint:u}),o.jsx(Sr,{label:s,value:t,onChange:m,readOnly:c,placeholder:l,hint:c?d:void 0,mono:!0})]})}function DS(e={}){const{initialData:t={}}=e,[n,s]=D.useState("list"),[a,l]=D.useState(null),[u,c]=D.useState(""),[d,f]=D.useState(!1),[m,p]=D.useState(t),_=D.useCallback(()=>{p(t),c(""),l(null)},[t]),x=D.useCallback(S=>{s(S),S==="list"&&_()},[_]),w=D.useCallback(S=>{p(b=>typeof S=="function"?S(b):S)},[]),C=D.useCallback((S,b={})=>{l(S),s("edit"),p({...b}),c("")},[]),v=D.useCallback(()=>{l(null),s("edit"),p(t),c("")},[t]);return{view:n,editingId:a,formError:u,saving:d,formData:m,setView:x,setEditingId:l,setFormError:c,setFormData:w,setSaving:f,resetForm:_,startEditing:C,startNew:v}}function Hv({skill:e,isBuiltIn:t,isConfirmingDelete:n,onView:s,onEdit:a,onDuplicate:l,onDelete:u}){return o.jsx(Qj,{id:e.id,name:e.name,description:e.description,isBuiltIn:t,isConfirmingDelete:n,onView:s,onEdit:a,onDuplicate:l,onDelete:u})}function Jj({isOpen:e}){const t=Lr(z=>z.defaults),n=Lr(z=>z.userItems),s=Lr(z=>z.projectItems),a=Lr(z=>z.loading),l=Lr(z=>z.fetchSkills),u=Lr(z=>z.fetchSkill),c=Lr(z=>z.fetchDefaultContent),d=Lr(z=>z.createSkill),f=Lr(z=>z.updateSkill),m=Lr(z=>z.deleteSkill),{view:p,editingId:_,formError:x,saving:w,formData:C,setView:v,setEditingId:S,setFormError:b,setFormData:y,setSaving:E}=DS(),{clearConfirm:N}=Hu();D.useEffect(()=>{e&&(l(),v("list"),S(null),N())},[e,l,N]);const T=(z,X,te,H)=>{y({name:H??z.metadata.name,id:te??z.metadata.id,description:z.metadata.description??"",version:z.metadata.version??"1.0.0",prompt:z.prompt,isReadOnly:X,destination:"user"})},L=async z=>{if(t.some(te=>te.id===z)){const te=await c(z);if(!te)return;T(te,!0),S(z),b(""),v("edit")}else{const te=await u(z);if(!te)return;T(te,!0),S(z),b(""),v("edit")}},A=async z=>{const te=t.some(I=>I.id===z)?await c(z):await u(z);if(!te)return;const H=`${z}-copy-${Date.now()}`;T(te,!1,H,`${te.metadata.name} (copy)`),S(null),b(""),v("edit")},R=()=>{y({name:"",id:"",description:"",version:"1.0.0",prompt:"",isReadOnly:!1,destination:"user"}),v("edit")},M=async z=>{const X=await u(z);X&&(T(X,!1),S(z),b(""),v("edit"))},G=async z=>{await m(z),N()},W=async()=>{const z=_??C.id;if(!z||!C.name||!C.prompt){b("Name, ID, and prompt are required.");return}E(!0),b("");const X={metadata:{id:z,name:C.name,description:C.description,version:C.version},prompt:C.prompt},te=_?await f(_,X):await d(X,C.destination);if(E(!1),!te.success){b(te.error??"Failed to save skill.");return}v("list")},O=z=>{y(X=>({...X,name:z})),_||y(X=>({...X,id:z.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}))},U=C.isReadOnly;if(p==="edit")return o.jsxs("div",{className:"flex flex-col h-full",children:[o.jsxs("div",{className:"flex justify-between items-center mb-3",children:[o.jsx("h2",{className:"text-lg font-semibold text-text-primary",children:U?C.name:_?"Edit Skill":"New Skill"}),o.jsx("button",{onClick:()=>v("list"),className:"text-text-muted hover:text-text-primary",children:"Cancel"})]}),x&&o.jsx(Uu,{message:x}),o.jsxs("div",{className:"space-y-3 mb-3",children:[o.jsx(LS,{name:C.name,id:C.id,nameLabel:"Name",idLabel:"ID",namePlaceholder:"My Skill",idPlaceholder:"my-skill",readOnlyId:!0,onNameChange:O,onIdChange:()=>{}}),o.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[o.jsx(Sr,{label:"Description",value:C.description,onChange:z=>y(X=>({...X,description:z})),placeholder:"What this skill does...",readOnly:U}),o.jsx(Sr,{label:"Version",value:C.version,onChange:z=>y(X=>({...X,version:z})),placeholder:"1.0.0",readOnly:U})]})]}),o.jsxs("div",{className:"flex-1 min-h-[120px] border-t border-border pt-3 flex flex-col",children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Prompt"}),o.jsx("textarea",{value:C.prompt,onChange:z=>y(X=>({...X,prompt:z.target.value})),readOnly:U,placeholder:"The system prompt for this skill...",className:"h-80 w-full px-3 py-2 bg-bg-tertiary border border-border rounded text-sm font-mono resize-y focus:outline-none focus:ring-1 focus:ring-accent-primary"})]}),!_&&o.jsxs("div",{className:"flex items-center gap-2 pt-2",children:[o.jsx("label",{className:"text-xs text-text-secondary",children:"Save to:"}),o.jsxs("select",{value:C.destination,onChange:z=>y(X=>({...X,destination:z.target.value})),className:"px-2 py-1 bg-bg-tertiary border border-border rounded text-xs focus:outline-none focus:ring-1 focus:ring-accent-primary",children:[o.jsx("option",{value:"user",children:"Global config"}),o.jsx("option",{value:"project",children:"Project (.openfox/)"})]})]}),o.jsxs("div",{className:"flex justify-end gap-2 pt-3 border-t border-border flex-shrink-0",children:[o.jsx(tt,{variant:"secondary",onClick:()=>v("list"),children:"Cancel"}),U?o.jsx(tt,{variant:"primary",onClick:()=>{y(z=>({...z,name:z.name+" (copy)",id:`${_}-copy-${Date.now()}`,isReadOnly:!1})),S(null)},children:"Duplicate & Customize"}):o.jsx(tt,{variant:"primary",onClick:W,disabled:w||!C.name||!C.id||!C.prompt,children:w?"Saving...":"Save"})]})]});function V({items:z}){return z.map(X=>o.jsx(Hv,{skill:X,isBuiltIn:!1,isConfirmingDelete:!1,onView:()=>L(X.id),onEdit:()=>M(X.id),onDuplicate:()=>A(X.id),onDelete:()=>G(X.id)},X.id))}return o.jsxs("div",{children:[o.jsx(vp,{description:"Skills provide domain-specific knowledge that agents can load on demand.",onNew:R}),o.jsxs(bp,{loading:a,hasItems:t.length>0||n.length>0,loadingLabel:"Loading skills...",emptyLabel:"No skills created yet.",children:[t.length>0&&o.jsxs("div",{children:[o.jsx("h3",{className:"text-xs font-medium text-text-secondary mb-2 uppercase tracking-wide",children:"Built-in"}),o.jsx("div",{className:"space-y-2",children:t.map(z=>o.jsx(Hv,{skill:z,isBuiltIn:!0,isConfirmingDelete:!1,onView:()=>L(z.id),onDuplicate:()=>A(z.id)},z.id))})]}),n.length>0&&o.jsx(TS,{children:o.jsx(V,{items:n})}),s.length>0&&o.jsxs("div",{className:"mt-4",children:[o.jsx("h3",{className:"text-xs font-medium text-text-secondary mb-2 uppercase tracking-wide",children:"Project"}),o.jsx("div",{className:"space-y-2",children:o.jsx(V,{items:s})})]})]})]})}function Fu(){const e=on(a=>a.settings),t=on(a=>a.loading),n=on(a=>a.getSetting),s=on(a=>a.setSetting);return{settings:e,loading:t,getSetting:n,setSetting:s}}function Zj({isOpen:e}){const{settings:t,loading:n,getSetting:s,setSetting:a}=Fu(),l=t[ze.GLOBAL_INSTRUCTIONS]??"",u=n[ze.GLOBAL_INSTRUCTIONS]??!1,[c,d]=D.useState(l),[f,m]=D.useState(!1),[p,_]=D.useState(!1);D.useEffect(()=>{e&&s(ze.GLOBAL_INSTRUCTIONS)},[e,s]),D.useEffect(()=>{d(l),m(!1)},[l]);const x=async()=>{_(!0),await a(ze.GLOBAL_INSTRUCTIONS,c),_(!1),m(!1)},w=()=>{d(l),m(!1)},C=u||p;return o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{children:[o.jsx("label",{className:"block text-sm font-medium text-text-primary mb-2",children:"Global Instructions"}),o.jsx("p",{className:"text-sm text-text-muted mb-2",children:"These instructions are injected into every prompt, regardless of project."}),o.jsx("textarea",{value:c,onChange:v=>{d(v.target.value),m(!0)},placeholder:"Enter global instructions that apply to all projects...",className:"w-full min-h-80 px-3 py-2 bg-bg-tertiary border border-border rounded text-sm font-mono resize-y focus:outline-none focus:ring-1 focus:ring-accent-primary",disabled:C})]}),o.jsxs("div",{className:"flex justify-end gap-2",children:[o.jsx(tt,{variant:"secondary",onClick:w,disabled:!f,children:"Discard"}),o.jsx(tt,{variant:"primary",onClick:x,disabled:!f||C,children:p?"Saving...":"Save"})]})]})}function eN(e){const t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(t){const n=parseInt(t[1]??"0",16),s=parseInt(t[2]??"0",16),a=parseInt(t[3]??"0",16);return`${n} ${s} ${a}`}return e}function Ci(e){const t=e.split(" ").map(n=>parseInt(n,10));return t.length===3&&t.every(n=>!isNaN(n))?`#${t.map(n=>(n??0).toString(16).padStart(2,"0")).join("")}`:e}function tN({isOpen:e,isNew:t,basePresetId:n,presetName:s,initialTokens:a,onClose:l,onSave:u}){const[c,d]=D.useState(a),[f,m]=D.useState(s);D.useEffect(()=>{d(a),m(s)},[a,s]);const p=(v,S)=>{const b=S.startsWith("#")?eN(S):S;d(y=>({...y,[v]:b}))},_=()=>{u(f.trim()||"Untitled",{...c})},x=yS.reduce((v,S)=>{const b=S.category;return v[b]||(v[b]=[]),v[b].push(S),v},{}),w={background:"Backgrounds",surface:"Surfaces",text:"Text",accent:"Accents",border:"Border"},C=Pr.find(v=>v.id===n);return o.jsx(Ot,{isOpen:e,onClose:l,size:"lg",title:t?"New Theme":"Edit Theme",closeOnBackdropClick:!0,closeOnEscape:!0,footer:o.jsxs("div",{className:"flex gap-2 justify-end",children:[o.jsx("button",{type:"button",onClick:l,className:"px-4 py-2 border border-border rounded text-sm text-text-primary hover:bg-bg-tertiary transition-colors",children:"Cancel"}),o.jsx("button",{type:"button",onClick:_,className:"px-4 py-2 bg-accent-primary text-white rounded hover:bg-accent-primary/80 transition-colors text-sm",children:"Save"})]}),children:o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{children:[o.jsx("label",{className:"text-xs text-text-muted block mb-1",children:"Name"}),o.jsx("input",{type:"text",value:f,onChange:v=>m(v.target.value),className:"w-full px-3 py-2 bg-bg-tertiary border border-border rounded text-sm text-text-primary focus:outline-none focus:ring-1 focus:ring-accent-primary"})]}),!t&&o.jsxs("div",{className:"text-xs text-text-muted",children:["Based on ",o.jsx("span",{className:"text-text-primary",children:C==null?void 0:C.name})]}),Object.entries(x).map(([v,S])=>o.jsxs("div",{className:"space-y-3",children:[o.jsx("h4",{className:"text-xs font-medium text-text-muted uppercase",children:w[v]??v}),o.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:S.map(b=>o.jsxs("div",{className:"flex flex-col gap-1",children:[o.jsx("label",{htmlFor:b.key,className:"text-xs text-text-muted",children:b.label}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("input",{type:"color",id:b.key,value:Ci(c[b.key]??b.defaultValue),onChange:y=>p(b.key,y.target.value),className:"w-8 h-8 rounded cursor-pointer border border-border bg-transparent flex-shrink-0"}),o.jsx("input",{type:"text",value:c[b.key]??b.defaultValue,onChange:y=>p(b.key,y.target.value),className:"flex-1 min-w-0 px-2 py-1 bg-bg-tertiary border border-border rounded text-xs text-text-primary font-mono focus:outline-none focus:ring-1 focus:ring-accent-primary"})]})]},b.key))})]},v))]})})}function nN(){const[e,t]=D.useState(null),n=Ft(y=>y.currentPreset),s=Ft(y=>y.isCustom),a=Ft(y=>y.basePreset),l=Ft(y=>y.isSystem),u=Ft(y=>y.applyPreset),c=Ft(y=>y.applyUserPreset),d=Ft(y=>y.deleteUserPreset),f=Ft(y=>y.saveTheme),m=Ft(y=>y.userPresets),p=y=>{y==="system"?(u(y),f(JSON.stringify({preset:"system"})).catch(()=>{})):(u(y),f(JSON.stringify({preset:y})).catch(()=>{}))},_=y=>{c(y)},x=y=>{const E=Pr.find(N=>N.id===y);E&&t({type:"new",presetIndex:m.length,basePresetId:y,presetName:E.name+" Copy",tokens:{...E.tokens}})},w=y=>{const E=m[y];if(!E)return;const N=Pr.find(L=>L.id===E.basePreset),T=N?{...N.tokens,...E.tokens}:E.tokens;t({type:"edit",presetIndex:y,basePresetId:E.basePreset,presetName:E.name,tokens:T})},C=(y,E)=>{if(!e)return;const N=[...m];if(e.type==="new"){const T={id:"custom-"+Date.now(),name:y,basePreset:e.basePresetId,tokens:E};N.push(T);const L=N.length-1;Ft.setState({userPresets:N}),Ft.getState().saveUserPresets(),Ft.getState().applyUserPreset(L)}else{const T=N[e.presetIndex];T&&(N[e.presetIndex]={...T,name:y,tokens:E}),Ft.setState({userPresets:N}),Ft.getState().saveUserPresets(),Ft.getState().applyUserPreset(e.presetIndex)}t(null)},v=()=>{t(null)},S=(y,E)=>{y.stopPropagation(),d(E)},b=l?"system":s?a:n;return o.jsxs("div",{className:"space-y-4",children:[o.jsx("h3",{className:"text-sm font-medium text-text-primary",children:"Theme"}),o.jsx("div",{className:"flex flex-wrap gap-2 pb-2",children:Pr.map(y=>{const E=y.id===b&&!s;return o.jsxs("div",{className:"relative group",children:[o.jsxs("button",{type:"button",onClick:()=>p(y.id),className:`flex flex-col items-center gap-2 px-3 py-3 rounded-lg border transition-colors min-w-[80px] ${E?"border-accent-primary bg-bg-tertiary text-text-primary":"border-border bg-bg-secondary text-text-muted hover:border-text-muted"}`,children:[o.jsx("div",{className:"w-8 h-8 rounded border flex items-center justify-center",style:{backgroundColor:y.id==="system"?"transparent":Ci(y.tokens["color-bg-primary"]??"#000"),borderColor:Ci(y.tokens["color-border"]??"#000")},children:y.id==="system"?o.jsx("div",{className:"w-4 h-4 rounded-full",style:{background:"linear-gradient(135deg, #000 50%, #fff 50%)"}}):o.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:Ci(y.tokens["color-text-primary"]??"#fff")}})}),o.jsx("span",{className:"text-xs",children:y.name})]}),y.id!=="system"&&o.jsx("button",{type:"button",onClick:N=>{N.stopPropagation(),x(y.id)},className:"absolute top-1 right-1 w-6 h-6 rounded bg-bg-tertiary border border-border flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity z-10 hover:border-text-muted",title:"Create custom theme based on this",children:o.jsx("span",{className:"text-xs",children:"✎"})})]},y.id)})}),m.length>0&&o.jsxs(o.Fragment,{children:[o.jsx("h4",{className:"text-xs font-medium text-text-muted uppercase",children:"My Themes"}),o.jsx("div",{className:"grid grid-cols-5 gap-2",children:m.map((y,E)=>{const N=Pr.find(L=>L.id===y.basePreset),T=N?{...N.tokens,...y.tokens}:y.tokens;return o.jsxs("div",{className:"relative group",children:[o.jsxs("button",{type:"button",onClick:()=>_(E),className:`w-full flex flex-col items-center gap-2 px-3 py-3 rounded-lg border transition-colors ${s&&a===y.basePreset&&b===y.basePreset?"border-accent-primary bg-bg-tertiary text-text-primary":"border-border bg-bg-secondary text-text-muted hover:border-text-muted"}`,children:[o.jsx("div",{className:"w-8 h-8 rounded border flex items-center justify-center",style:{backgroundColor:Ci(T["color-bg-primary"]??"#000"),borderColor:Ci(T["color-border"]??"#000")},children:o.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:Ci(T["color-text-primary"]??"#fff")}})}),o.jsx("span",{className:"text-xs truncate w-full text-center",children:y.name})]}),o.jsx("button",{type:"button",onClick:L=>{L.stopPropagation(),w(E)},className:"absolute top-1 right-1 w-6 h-6 rounded bg-bg-tertiary border border-border flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity z-10 hover:border-text-muted",title:"Edit",children:o.jsx("span",{className:"text-xs",children:"✎"})}),o.jsx("button",{type:"button",onClick:L=>S(L,E),className:"absolute -top-1 -left-1 w-5 h-5 rounded-full bg-accent-error text-white flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity z-20",children:o.jsx(xl,{className:"w-3 h-3"})})]},y.id)})})]}),e&&o.jsx(tN,{isOpen:!0,isNew:e.type==="new",presetIndex:e.presetIndex,basePresetId:e.basePresetId,presetName:e.presetName,initialTokens:e.tokens,onClose:v,onSave:C})]})}function rN(){return o.jsx(nN,{})}function sN(){const{settings:e,loading:t,getSetting:n,setSetting:s}=Fu(),a=t[ze.DISPLAY_SHOW_THINKING]??!1,l=[{key:ze.DISPLAY_SHOW_THINKING,label:"Show thinking blocks",description:"Display AI reasoning content in the feed"},{key:ze.DISPLAY_SHOW_VERBOSE_TOOL_OUTPUT,label:"Show expanded tool output",description:"Always show full tool call details instead of compact view"},{key:ze.DISPLAY_SHOW_STATS,label:"Show stats bar",description:"Display model, tokens, and timing information"},{key:ze.DISPLAY_SHOW_AGENT_DEFINITIONS,label:"Show agent definitions",description:"Display agent definition injections in the feed"},{key:ze.DISPLAY_SHOW_WORKFLOW_BARS,label:"Show workflow bars",description:"Display workflow start and end markers"},{key:ze.DISPLAY_SHOW_SYNTAX_HIGHLIGHTING,label:"Show syntax highlighting",description:"Nicer formatting, but very slow - does not affect red/green diff coloring"}],u=Object.fromEntries(l.map(m=>[m.key,e[m.key]??"true"])),[c,d]=D.useState(()=>Object.fromEntries(l.map(m=>[m.key,u[m.key]==="true"])));D.useEffect(()=>{l.forEach(m=>n(m.key))},[n]),D.useEffect(()=>{d(Object.fromEntries(l.map(m=>[m.key,u[m.key]==="true"])))},[JSON.stringify(u)]);const f=async m=>{const p=String(!c[m]);d(_=>({..._,[m]:!_[m]})),await s(m,p)};return a?o.jsx("div",{className:"text-sm text-text-muted",children:"Loading..."}):o.jsxs("div",{className:"space-y-6",children:[o.jsx(rN,{}),o.jsxs("div",{children:[o.jsx("h3",{className:"text-sm font-medium text-text-primary mb-4",children:"Feed Display"}),o.jsx("div",{className:"space-y-4",children:l.map(({key:m,label:p,description:_})=>o.jsxs("label",{className:"flex items-start justify-between gap-3 cursor-pointer",children:[o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx("div",{className:"text-sm text-text-primary font-medium",children:p}),o.jsx("div",{className:"text-xs text-text-muted mt-0.5",children:_})]}),o.jsx("button",{type:"button",onClick:()=>f(m),className:`relative inline-flex h-6 w-11 flex-shrink-0 items-center rounded-full transition-colors ${c[m]?"bg-accent-primary":"bg-bg-tertiary"}`,children:o.jsx("span",{className:`inline-block h-4 w-4 transform rounded-full bg-white transition-transform ${c[m]?"translate-x-6":"translate-x-1"}`})})]},m))})]})]})}function RS({enabled:e,onClick:t}){return o.jsx("button",{type:"button",onClick:t,className:`relative inline-flex h-6 w-11 items-center rounded-full transition-colors ${e?"bg-accent-primary":"bg-bg-tertiary"}`,children:o.jsx("span",{className:`inline-block h-4 w-4 transform rounded-full bg-white transition-transform ${e?"translate-x-6":"translate-x-1"}`})})}function iN(e){try{return new RegExp(e),!0}catch{return!1}}function aN({value:e,onChange:t}){const[n,s]=D.useState({}),a=(d,f)=>{const m=e.patterns.map((p,_)=>_===d?{...p,...f}:p);t({...e,patterns:m})},l=d=>{const f=e.patterns.filter((m,p)=>p!==d);t({...e,patterns:f})},u=()=>{const d={field:"content",pattern:"",action:"retry",active:!0};t({...e,patterns:[...e.patterns,d]})},c=(d,f)=>{s(m=>({...m,[d]:f.length>0&&!iN(f)})),a(d,{pattern:f})};return o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{children:[o.jsx("label",{className:"text-sm font-medium text-text-primary",children:"Max Retries Per Turn"}),o.jsx("input",{type:"number",min:1,max:100,value:e.maxRetriesPerTurn,onChange:d=>{const f=parseInt(d.target.value,10),m=isNaN(f)?10:Math.max(1,Math.min(100,f));t({...e,maxRetriesPerTurn:m})},className:"mt-1 block w-24 px-2 py-1 text-sm bg-bg-secondary border border-border rounded"})]}),e.patterns.length===0?o.jsx("p",{className:"text-sm text-text-muted",children:"No retry patterns configured."}):o.jsxs("table",{className:"w-full text-sm",children:[o.jsx("thead",{children:o.jsxs("tr",{className:"text-left text-text-muted border-b border-border",children:[o.jsx("th",{className:"pb-2 pr-2 w-12",children:"Active"}),o.jsx("th",{className:"pb-2 pr-2",children:"Field"}),o.jsx("th",{className:"pb-2 pr-2",children:"Pattern"}),o.jsx("th",{className:"pb-2 pr-2",children:"Action"}),o.jsx("th",{className:"pb-2 w-8"})]})}),o.jsx("tbody",{children:e.patterns.map((d,f)=>o.jsxs("tr",{className:"border-b border-border",children:[o.jsx("td",{className:"py-2 pr-2",children:o.jsx("input",{type:"checkbox",checked:d.active,onChange:()=>a(f,{active:!d.active}),className:"accent-accent-primary","aria-label":`Toggle pattern ${f+1}`})}),o.jsx("td",{className:"py-2 pr-2",children:o.jsxs("select",{value:d.field,onChange:m=>a(f,{field:m.target.value}),className:"px-2 py-1 bg-bg-secondary border border-border rounded text-sm",children:[o.jsx("option",{value:"content",children:"content"}),o.jsx("option",{value:"thinking",children:"thinking"}),o.jsx("option",{value:"both",children:"both"})]})}),o.jsx("td",{className:"py-2 pr-2",children:o.jsxs("div",{className:"flex items-center gap-1",children:[o.jsx("input",{type:"text",value:d.pattern,onChange:m=>c(f,m.target.value),placeholder:"regex pattern",className:"flex-1 px-2 py-1 bg-bg-secondary border border-border rounded text-sm font-mono"}),d.pattern.length>0&&o.jsx("span",{className:`text-sm ${n[f]?"text-red-500":"text-green-500"}`,children:n[f]?"✗":"✓"})]})}),o.jsx("td",{className:"py-2 pr-2 text-text-muted",children:"retry"}),o.jsx("td",{className:"py-2",children:o.jsx("button",{onClick:()=>l(f),title:"Remove pattern",className:"text-text-muted hover:text-red-500 transition-colors",children:"×"})})]},f))})]}),o.jsx(tt,{variant:"secondary",onClick:u,children:"Add Pattern"})]})}function oN({onClose:e}){const[,t]=hr(),{settings:n,getSetting:s,setSetting:a}=Fu(),l=n[ze.DISPLAY_SHOW_OPEN_IN_EDITOR]==="true",u=n[ze.LLM_DYNAMIC_SYSTEM_PROMPT]==="true",[c,d]=D.useState({openInEditor:l,dynamicPrompt:u}),[f,m]=D.useState({patterns:[],maxRetriesPerTurn:10});D.useEffect(()=>{d({openInEditor:l,dynamicPrompt:u})},[l,u]),D.useEffect(()=>{s(ze.DISPLAY_SHOW_OPEN_IN_EDITOR),s(ze.LLM_DYNAMIC_SYSTEM_PROMPT),s(ze.RETRY_PATTERNS)},[s]),D.useEffect(()=>{const C=n[ze.RETRY_PATTERNS];if(C)try{m(JSON.parse(C))}catch{}},[n]);const p=D.useCallback(C=>{m(C),a(ze.RETRY_PATTERNS,JSON.stringify(C))},[a]),_=()=>{const C=!c.openInEditor;d(v=>({...v,openInEditor:C})),a(ze.DISPLAY_SHOW_OPEN_IN_EDITOR,String(C))},x=()=>{const C=!c.dynamicPrompt;d(v=>({...v,dynamicPrompt:C})),a(ze.LLM_DYNAMIC_SYSTEM_PROMPT,String(C))};function w(){e(),t("/onboarding")}return o.jsxs("div",{className:"space-y-6",children:[o.jsx(Uv,{title:"Dynamic System Prompt",description:"Rebuild the system prompt on every turn. When disabled, changes are applied on demand via the context header for better cache performance.",enabled:c.dynamicPrompt,onToggle:x,boldTitle:!0}),o.jsx("hr",{className:"border-border"}),o.jsxs("div",{children:[o.jsx("h3",{className:"text-sm font-medium text-text-primary mb-3",children:"Auto-Retry Patterns"}),o.jsx("p",{className:"text-xs text-text-muted mb-3",children:'Define regex patterns that, when matched against LLM responses mid-stream, trigger an automatic retry with a "continue" prompt. The content that triggered the match is preserved in the chat feed.'}),o.jsx(aN,{value:f,onChange:p})]}),o.jsx("hr",{className:"border-border"}),o.jsxs("div",{children:[o.jsx("h3",{className:"text-sm font-medium text-text-primary mb-3",children:"Integrations"}),o.jsx(Uv,{title:'Show "Open in VSCode" links',description:"Display a link on file reads to open the file directly in VS Code.",enabled:c.openInEditor,onToggle:_})]}),o.jsx("hr",{className:"border-border"}),o.jsxs("div",{children:[o.jsx("h3",{className:"text-sm font-medium text-text-primary mb-1",children:"Onboarding"}),o.jsx("p",{className:"text-sm text-text-muted mb-4",children:"Reset your OpenFox setup and go through the initial configuration again."}),o.jsx(tt,{variant:"secondary",onClick:w,children:"Launch Onboarding"})]})]})}function Uv({title:e,description:t,enabled:n,onToggle:s,boldTitle:a}){return o.jsxs("label",{className:"flex items-start justify-between gap-3 cursor-pointer",children:[o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx("div",{className:`text-sm ${a?"font-medium":""} text-text-primary`,children:e}),o.jsx("div",{className:"text-xs text-text-muted mt-0.5",children:t})]}),o.jsx("div",{className:"flex-shrink-0",children:o.jsx(RS,{enabled:n,onClick:s})})]})}function lN({label:e,binding:t,isRecording:n,onStartRecording:s,onBindingRecorded:a,onCancelRecording:l}){const u=D.useRef(null),c=D.useRef(0),d=D.useRef("");return D.useEffect(()=>{if(!n)return;const f=new Set(["Control","Shift","Alt","Meta"]);let m=[];const p=x=>{if(x.preventDefault(),x.stopPropagation(),x.key==="Escape"){l();return}if(f.has(x.key)){x.ctrlKey&&!m.includes("ctrl")&&m.push("ctrl"),x.metaKey&&!m.includes("meta")&&m.push("meta"),x.altKey&&!m.includes("alt")&&m.push("alt"),x.shiftKey&&!m.includes("shift")&&m.push("shift");return}if(m.length>0||x.ctrlKey||x.metaKey||x.altKey||x.shiftKey){const v=[...m];x.ctrlKey&&!v.includes("ctrl")&&v.push("ctrl"),x.metaKey&&!v.includes("meta")&&v.push("meta"),x.altKey&&!v.includes("alt")&&v.push("alt"),x.shiftKey&&!v.includes("shift")&&v.push("shift"),a({type:"chord",key:Bv(x),modifiers:v});return}const w=Date.now(),C=Bv(x);if(C===d.current&&w-c.current<400){a({type:"double-press",key:C,threshold:300});return}c.current=w,d.current=C},_=x=>{x.key==="Control"&&(m=m.filter(w=>w!=="ctrl")),x.key==="Shift"&&(m=m.filter(w=>w!=="shift")),x.key==="Alt"&&(m=m.filter(w=>w!=="alt")),x.key==="Meta"&&(m=m.filter(w=>w!=="meta"))};return window.addEventListener("keydown",p,!0),window.addEventListener("keyup",_,!0),()=>{window.removeEventListener("keydown",p,!0),window.removeEventListener("keyup",_,!0)}},[n,a,l]),o.jsxs("div",{ref:u,className:`flex items-center justify-between px-3 py-2 rounded transition-colors ${n?"bg-accent-primary/10 ring-1 ring-accent-primary":"hover:bg-bg-tertiary"}`,children:[o.jsx("span",{className:"text-sm text-text-primary",children:e}),o.jsx("div",{className:"flex items-center gap-2",children:n?o.jsx("span",{className:"text-xs text-accent-primary font-medium animate-pulse",children:"Press shortcut..."}):o.jsx("button",{type:"button",onClick:s,className:"px-2 py-0.5 text-xs font-mono bg-bg-tertiary text-text-secondary rounded border border-border hover:border-accent-primary hover:text-accent-primary transition-colors",children:CS(t)})})]})}function cN(){const{settings:e,loading:t,setSetting:n}=Fu(),s=e[ze.KEYBINDINGS],a=t[ze.KEYBINDINGS]??!1,l=jm(s),[u,c]=D.useState(null),d=[{id:"terminalToggle",label:"Toggle Terminal",binding:l.terminalToggle},{id:"quickAction",label:"Quick Action",binding:l.quickAction},...l.agentSwitching.map((_,x)=>({id:`agentSwitching.${x}`,label:`Switch to Agent ${x+1}`,binding:_}))],f=_=>{c(_)},m=D.useCallback(_=>{if(!u)return;const x=jm(s),w=structuredClone(x);if(u.startsWith("agentSwitching.")){const C=parseInt(u.split(".")[1],10);w.agentSwitching[C]=_}else u==="terminalToggle"?w.terminalToggle=_:u==="quickAction"&&(w.quickAction=_);c(null),n(ze.KEYBINDINGS,JSON.stringify(w))},[u,s,n]),p=()=>{n(ze.KEYBINDINGS,JSON.stringify(La))};return o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{className:"flex items-center justify-between mb-2",children:[o.jsx("h3",{className:"text-sm font-medium text-text-primary",children:"Keyboard Shortcuts"}),o.jsx("button",{type:"button",onClick:p,disabled:a,className:"text-xs text-text-muted hover:text-text-primary px-2 py-1 rounded hover:bg-bg-tertiary transition-colors disabled:opacity-30",children:"Reset to defaults"})]}),a?o.jsx("div",{className:"text-sm text-text-muted",children:"Loading..."}):o.jsx("div",{className:"space-y-1",children:d.map(_=>o.jsx(lN,{label:_.label,binding:_.binding,isRecording:u===_.id,onStartRecording:()=>f(_.id),onBindingRecorded:m,onCancelRecording:()=>c(null)},_.id))})]})}function Fv(e){return e>=1e3?`~${(e/1e3).toFixed(1)}K`:`~${e}`}function uN(){const[e,t]=D.useState([]),[n,s]=D.useState(!0),[a,l]=D.useState(!1),[u,c]=D.useState(new Set),[d,f]=D.useState(new Set),[m,p]=D.useState({name:"",transport:"stdio",command:"",args:"",env:"",url:"",headers:""}),[_,x]=D.useState(""),[w,C]=D.useState(!1),{requestDelete:v,clearConfirm:S,isConfirming:b}=Hu(),y=D.useCallback(async()=>{try{const G=await(await Ne("/api/mcp/servers")).json();t(G.servers??[])}catch{}s(!1)},[]);D.useEffect(()=>{y()},[y]),D.useEffect(()=>{const M=()=>y();return window.addEventListener("mcp-servers-changed",M),()=>window.removeEventListener("mcp-servers-changed",M)},[y]);const E=M=>{c(G=>{const W=new Set(G);return W.has(M)?W.delete(M):W.add(M),W})},N=async()=>{if(x(""),!m.name){x("Name is required");return}if(m.transport==="stdio"&&!m.command){x("Command is required for stdio transport");return}if(m.transport==="http"&&!m.url){x("URL is required for HTTP transport");return}C(!0);try{const M=O=>{const U={};return O.split(`
60
+ `).filter(Boolean).forEach(V=>{const z=V.indexOf("=");z>0&&(U[V.slice(0,z).trim()]=V.slice(z+1).trim())}),U},G={name:m.name,transport:m.transport};if(m.transport==="stdio"){G.command=m.command;const O=m.args?m.args.split(" ").filter(Boolean):void 0;O&&O.length>0&&(G.args=O);const U=M(m.env);Object.keys(U).length>0&&(G.env=U)}else{G.url=m.url;const O=M(m.headers);Object.keys(O).length>0&&(G.headers=O)}const W=await Ne("/api/mcp/servers",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(G)});if(!W.ok){const O=await W.json();throw new Error(O.error??"Failed to add server")}l(!1),p({name:"",transport:"stdio",command:"",args:"",env:"",url:"",headers:""}),await y()}catch(M){x(M instanceof Error?M.message:String(M))}finally{C(!1)}},T=async M=>{try{const G=await Ne(`/api/mcp/servers/${encodeURIComponent(M)}`,{method:"DELETE"});if(!G.ok){const W=await G.json();console.error("Failed to remove MCP server:",W.error)}S(),await y()}catch(G){console.error("Failed to remove MCP server:",G)}},L=async(M,G,W)=>{try{const O=await Ne(`/api/mcp/servers/${encodeURIComponent(M)}/tools/${encodeURIComponent(G)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({enabled:W})});if(!O.ok){const U=await O.json();console.error("Failed to toggle tool:",U.error)}await y()}catch(O){console.error("Failed to toggle tool:",O)}},A=M=>{switch(M){case"connected":return"text-accent-success";case"error":return"text-accent-error";default:return"text-text-muted"}},R=M=>{switch(M){case"connected":return"●";case"error":return"●";default:return"○"}};return o.jsxs("div",{children:[o.jsx(vp,{description:"MCP servers provide external tools that extend OpenFox's capabilities.",onNew:()=>l(!0),newLabel:"+ Add Server"}),o.jsx(bp,{loading:n,hasItems:e.length>0,loadingLabel:"Loading MCP servers...",emptyLabel:"No MCP servers configured.",children:e.map(M=>{var G;return o.jsxs("div",{className:"rounded border border-border bg-bg-tertiary overflow-hidden",children:[o.jsxs("div",{className:"flex items-center justify-between p-3 cursor-pointer hover:bg-bg-primary/50 transition-colors",onClick:()=>E(M.name),children:[o.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[o.jsx("span",{className:`text-sm ${A(M.status)}`,children:R(M.status)}),o.jsx("span",{className:"text-sm font-medium text-text-primary",children:M.name}),o.jsx("span",{className:"text-xs text-text-muted",children:M.config.transport}),o.jsxs("span",{className:"text-xs text-text-muted",children:["(",M.tools.length," tools)"]}),o.jsxs("span",{className:"text-xs text-text-muted",children:[Fv(M.estimatedTokens)," tokens"]})]}),o.jsxs("div",{className:"flex items-center gap-2",children:[M.status==="error"&&M.error&&o.jsx("span",{className:"text-xs text-accent-error truncate max-w-[200px]",title:M.error,children:M.error}),o.jsx("span",{className:"text-xs text-text-muted",children:u.has(M.name)?"▲":"▼"})]})]}),u.has(M.name)&&o.jsxs("div",{className:"border-t border-border px-3 py-2 space-y-1.5",children:[M.config.command&&o.jsxs("div",{className:"text-xs text-text-muted font-mono",children:[M.config.command," ",((G=M.config.args)==null?void 0:G.join(" "))??""]}),M.config.url&&o.jsx("div",{className:"text-xs text-text-muted font-mono",children:M.config.url}),M.tools.length===0?o.jsx("div",{className:"text-xs text-text-muted",children:"No tools available"}):o.jsx("div",{className:"space-y-1",children:M.tools.map(W=>o.jsxs("div",{className:"py-1",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsxs("div",{className:"min-w-0 flex-1 mr-2",children:[o.jsx("span",{className:"text-xs text-text-primary font-mono",children:W.name}),W.description&&W.description.length>80?o.jsxs("button",{onClick:()=>{const O=`${M.name}:${W.name}`;f(U=>{const V=new Set(U);return V.has(O)?V.delete(O):V.add(O),V})},className:"inline-flex items-center gap-0.5 text-xs text-text-muted hover:text-text-primary transition-colors ml-2",children:[o.jsx("span",{className:"truncate max-w-[300px]",children:W.description}),o.jsx(dr,{rotate:d.has(`${M.name}:${W.name}`)?180:0,className:"w-3 h-3 flex-shrink-0"})]}):W.description?o.jsx("span",{className:"text-xs text-text-muted ml-2",children:W.description}):null]}),o.jsx("span",{className:"text-xs text-text-muted mr-2 flex-shrink-0",children:Fv(W.estimatedTokens)}),o.jsx(RS,{enabled:W.enabled,onClick:()=>L(M.name,W.name,!W.enabled)})]}),W.description&&W.description.length>80&&d.has(`${M.name}:${W.name}`)&&o.jsx("div",{className:"text-xs text-text-muted mt-1 ml-1",children:W.description})]},W.name))}),o.jsx("div",{className:"pt-2 flex items-center justify-end gap-2",children:b(M.name,"delete")?o.jsxs(o.Fragment,{children:[o.jsx("button",{onClick:W=>{W.stopPropagation(),T(M.name)},className:"px-2 py-1 rounded text-xs font-medium hover:opacity-90 transition-colors bg-accent-error/20 text-accent-error hover:bg-accent-error/30",children:"Delete"}),o.jsx("button",{onClick:W=>{W.stopPropagation(),S()},className:"px-2 py-1 rounded text-xs text-text-muted hover:bg-bg-primary transition-colors",children:"Cancel"})]}):o.jsx("button",{onClick:W=>{W.stopPropagation(),v(M.name)},className:"px-2 py-1 rounded text-xs font-medium text-accent-error/80 hover:text-accent-error hover:bg-accent-error/10 transition-colors",children:"Remove server"})})]})]},M.name)})}),a&&o.jsx(Ot,{isOpen:a,onClose:()=>{l(!1),x("")},title:"Add MCP Server",size:"sm",children:o.jsxs("div",{className:"space-y-3",children:[o.jsx(Sr,{label:"Name",value:m.name,onChange:M=>p({...m,name:M}),placeholder:"e.g. filesystem"}),o.jsxs("div",{children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Transport"}),o.jsxs("div",{className:"flex gap-1",children:[o.jsx("button",{onClick:()=>p({...m,transport:"stdio"}),className:`px-3 py-1.5 rounded text-xs font-medium transition-colors ${m.transport==="stdio"?"bg-accent-primary text-white":"bg-bg-tertiary text-text-secondary hover:bg-bg-primary"}`,children:"Stdio"}),o.jsx("button",{onClick:()=>p({...m,transport:"http"}),className:`px-3 py-1.5 rounded text-xs font-medium transition-colors ${m.transport==="http"?"bg-accent-primary text-white":"bg-bg-tertiary text-text-secondary hover:bg-bg-primary"}`,children:"HTTP"})]})]}),m.transport==="stdio"?o.jsxs(o.Fragment,{children:[o.jsx(Sr,{label:"Command",value:m.command,onChange:M=>p({...m,command:M}),placeholder:"e.g. npx"}),o.jsx(Sr,{label:"Arguments",value:m.args,onChange:M=>p({...m,args:M}),placeholder:"space-separated args"}),o.jsxs("div",{children:[o.jsxs("label",{className:"block text-xs text-text-secondary mb-1",children:["Environment variables ",o.jsx("span",{className:"text-text-muted",children:"(KEY=VALUE, one per line)"})]}),o.jsx("textarea",{value:m.env,onChange:M=>p({...m,env:M.target.value}),placeholder:"API_KEY=xxx",className:"w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm font-mono resize-none focus:outline-none focus:ring-1 focus:ring-accent-primary",rows:3})]})]}):o.jsxs(o.Fragment,{children:[o.jsx(Sr,{label:"URL",value:m.url,onChange:M=>p({...m,url:M}),placeholder:"e.g. https://mcp.example.com/mcp"}),o.jsxs("div",{children:[o.jsxs("label",{className:"block text-xs text-text-secondary mb-1",children:["Headers ",o.jsx("span",{className:"text-text-muted",children:"(KEY=VALUE, one per line)"})]}),o.jsx("textarea",{value:m.headers,onChange:M=>p({...m,headers:M.target.value}),placeholder:"X-API-Key=xxx",className:"w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm font-mono resize-none focus:outline-none focus:ring-1 focus:ring-accent-primary",rows:3})]})]}),_&&o.jsx(Uu,{message:_}),o.jsxs("div",{className:"flex justify-end gap-2 pt-2 border-t border-border",children:[o.jsx(tt,{variant:"secondary",onClick:()=>{l(!1),x(""),C(!1),p({name:"",transport:"stdio",command:"",args:"",env:"",url:"",headers:""})},disabled:w,children:"Cancel"}),o.jsx(tt,{variant:"primary",onClick:N,disabled:w,children:w?"Adding...":"Add"})]})]})})]})}function dN({isOpen:e,onClose:t}){const[n,s]=D.useState("instructions"),a=()=>{try{$t.send("context.checkDynamic",{})}catch{}t()};return o.jsx(Ot,{isOpen:e,onClose:a,title:"Settings",size:"xl",minHeight:"500px",children:o.jsxs("div",{className:"flex flex-col h-full",children:[o.jsxs("div",{className:"flex border-b border-border mb-4 -mt-1 overflow-x-auto scrollbar-hide",children:[o.jsx(xi,{label:"Instructions",active:n==="instructions",onClick:()=>s("instructions")}),o.jsx(xi,{label:"Skills",active:n==="skills",onClick:()=>s("skills")}),o.jsx(xi,{label:"Notifications",active:n==="notifications",onClick:()=>s("notifications")}),o.jsx(xi,{label:"Display",active:n==="display",onClick:()=>s("display")}),o.jsx(xi,{label:"Keybindings",active:n==="keybindings",onClick:()=>s("keybindings")}),o.jsx(xi,{label:"MCP",active:n==="mcp",onClick:()=>s("mcp")}),o.jsx(xi,{label:"Advanced",active:n==="advanced",onClick:()=>s("advanced")})]}),n==="instructions"&&o.jsx(Zj,{isOpen:e}),n==="skills"&&o.jsx(Jj,{isOpen:e}),n==="notifications"&&o.jsx("div",{className:"max-h-[60vh] overflow-y-auto",children:o.jsx(Yj,{})}),n==="display"&&o.jsx(sN,{}),n==="keybindings"&&o.jsx(cN,{}),n==="mcp"&&o.jsx("div",{className:"max-h-[60vh] overflow-y-auto",children:o.jsx(uN,{})}),n==="advanced"&&o.jsx(oN,{onClose:t})]})})}function xi({label:e,active:t,onClick:n}){return o.jsx("button",{onClick:n,className:`px-4 py-2 text-sm font-medium border-b-2 transition-colors whitespace-nowrap ${t?"border-accent-primary text-accent-primary":"border-transparent text-text-muted hover:text-text-secondary hover:border-border"}`,children:e})}var Bf={exports:{}},Vv;function hN(){return Vv||(Vv=1,(function(e,t){(function(n,s){e.exports=s()})(globalThis,(()=>(()=>{var n={4567:function(u,c,d){var f=this&&this.__decorate||function(b,y,E,N){var T,L=arguments.length,A=L<3?y:N===null?N=Object.getOwnPropertyDescriptor(y,E):N;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")A=Reflect.decorate(b,y,E,N);else for(var R=b.length-1;R>=0;R--)(T=b[R])&&(A=(L<3?T(A):L>3?T(y,E,A):T(y,E))||A);return L>3&&A&&Object.defineProperty(y,E,A),A},m=this&&this.__param||function(b,y){return function(E,N){y(E,N,b)}};Object.defineProperty(c,"__esModule",{value:!0}),c.AccessibilityManager=void 0;const p=d(9042),_=d(9924),x=d(844),w=d(4725),C=d(2585),v=d(3656);let S=c.AccessibilityManager=class extends x.Disposable{constructor(b,y,E,N){super(),this._terminal=b,this._coreBrowserService=E,this._renderService=N,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="",this._accessibilityContainer=this._coreBrowserService.mainDocument.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=this._coreBrowserService.mainDocument.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let T=0;T<this._terminal.rows;T++)this._rowElements[T]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[T]);if(this._topBoundaryFocusListener=T=>this._handleBoundaryFocus(T,0),this._bottomBoundaryFocusListener=T=>this._handleBoundaryFocus(T,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions(),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=this._coreBrowserService.mainDocument.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this.register(new _.TimeBasedDebouncer(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((T=>this._handleResize(T.rows)))),this.register(this._terminal.onRender((T=>this._refreshRows(T.start,T.end)))),this.register(this._terminal.onScroll((()=>this._refreshRows()))),this.register(this._terminal.onA11yChar((T=>this._handleChar(T)))),this.register(this._terminal.onLineFeed((()=>this._handleChar(`
61
+ `)))),this.register(this._terminal.onA11yTab((T=>this._handleTab(T)))),this.register(this._terminal.onKey((T=>this._handleKey(T.key)))),this.register(this._terminal.onBlur((()=>this._clearLiveRegion()))),this.register(this._renderService.onDimensionsChange((()=>this._refreshRowsDimensions()))),this.register((0,v.addDisposableDomListener)(document,"selectionchange",(()=>this._handleSelectionChange()))),this.register(this._coreBrowserService.onDprChange((()=>this._refreshRowsDimensions()))),this._refreshRows(),this.register((0,x.toDisposable)((()=>{this._accessibilityContainer.remove(),this._rowElements.length=0})))}_handleTab(b){for(let y=0;y<b;y++)this._handleChar(" ")}_handleChar(b){this._liveRegionLineCount<21&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==b&&(this._charsToAnnounce+=b):this._charsToAnnounce+=b,b===`
62
+ `&&(this._liveRegionLineCount++,this._liveRegionLineCount===21&&(this._liveRegion.textContent+=p.tooMuchOutput)))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(b){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(b)||this._charsToConsume.push(b)}_refreshRows(b,y){this._liveRegionDebouncer.refresh(b,y,this._terminal.rows)}_renderRows(b,y){const E=this._terminal.buffer,N=E.lines.length.toString();for(let T=b;T<=y;T++){const L=E.lines.get(E.ydisp+T),A=[],R=(L==null?void 0:L.translateToString(!0,void 0,void 0,A))||"",M=(E.ydisp+T+1).toString(),G=this._rowElements[T];G&&(R.length===0?(G.innerText=" ",this._rowColumns.set(G,[0,1])):(G.textContent=R,this._rowColumns.set(G,A)),G.setAttribute("aria-posinset",M),G.setAttribute("aria-setsize",N))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(b,y){const E=b.target,N=this._rowElements[y===0?1:this._rowElements.length-2];if(E.getAttribute("aria-posinset")===(y===0?"1":`${this._terminal.buffer.lines.length}`)||b.relatedTarget!==N)return;let T,L;if(y===0?(T=E,L=this._rowElements.pop(),this._rowContainer.removeChild(L)):(T=this._rowElements.shift(),L=E,this._rowContainer.removeChild(T)),T.removeEventListener("focus",this._topBoundaryFocusListener),L.removeEventListener("focus",this._bottomBoundaryFocusListener),y===0){const A=this._createAccessibilityTreeNode();this._rowElements.unshift(A),this._rowContainer.insertAdjacentElement("afterbegin",A)}else{const A=this._createAccessibilityTreeNode();this._rowElements.push(A),this._rowContainer.appendChild(A)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(y===0?-1:1),this._rowElements[y===0?1:this._rowElements.length-2].focus(),b.preventDefault(),b.stopImmediatePropagation()}_handleSelectionChange(){var R;if(this._rowElements.length===0)return;const b=document.getSelection();if(!b)return;if(b.isCollapsed)return void(this._rowContainer.contains(b.anchorNode)&&this._terminal.clearSelection());if(!b.anchorNode||!b.focusNode)return void console.error("anchorNode and/or focusNode are null");let y={node:b.anchorNode,offset:b.anchorOffset},E={node:b.focusNode,offset:b.focusOffset};if((y.node.compareDocumentPosition(E.node)&Node.DOCUMENT_POSITION_PRECEDING||y.node===E.node&&y.offset>E.offset)&&([y,E]=[E,y]),y.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(y={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(y.node))return;const N=this._rowElements.slice(-1)[0];if(E.node.compareDocumentPosition(N)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(E={node:N,offset:((R=N.textContent)==null?void 0:R.length)??0}),!this._rowContainer.contains(E.node))return;const T=({node:M,offset:G})=>{const W=M instanceof Text?M.parentNode:M;let O=parseInt(W==null?void 0:W.getAttribute("aria-posinset"),10)-1;if(isNaN(O))return console.warn("row is invalid. Race condition?"),null;const U=this._rowColumns.get(W);if(!U)return console.warn("columns is null. Race condition?"),null;let V=G<U.length?U[G]:U.slice(-1)[0]+1;return V>=this._terminal.cols&&(++O,V=0),{row:O,column:V}},L=T(y),A=T(E);if(L&&A){if(L.row>A.row||L.row===A.row&&L.column>=A.column)throw new Error("invalid range");this._terminal.select(L.column,L.row,(A.row-L.row)*this._terminal.cols-L.column+A.column)}}_handleResize(b){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let y=this._rowContainer.children.length;y<this._terminal.rows;y++)this._rowElements[y]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[y]);for(;this._rowElements.length>b;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){const b=this._coreBrowserService.mainDocument.createElement("div");return b.setAttribute("role","listitem"),b.tabIndex=-1,this._refreshRowDimensions(b),b}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){this._accessibilityContainer.style.width=`${this._renderService.dimensions.css.canvas.width}px`,this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let b=0;b<this._terminal.rows;b++)this._refreshRowDimensions(this._rowElements[b])}}_refreshRowDimensions(b){b.style.height=`${this._renderService.dimensions.css.cell.height}px`}};c.AccessibilityManager=S=f([m(1,C.IInstantiationService),m(2,w.ICoreBrowserService),m(3,w.IRenderService)],S)},3614:(u,c)=>{function d(_){return _.replace(/\r?\n/g,"\r")}function f(_,x){return x?"\x1B[200~"+_+"\x1B[201~":_}function m(_,x,w,C){_=f(_=d(_),w.decPrivateModes.bracketedPasteMode&&C.rawOptions.ignoreBracketedPasteMode!==!0),w.triggerDataEvent(_,!0),x.value=""}function p(_,x,w){const C=w.getBoundingClientRect(),v=_.clientX-C.left-10,S=_.clientY-C.top-10;x.style.width="20px",x.style.height="20px",x.style.left=`${v}px`,x.style.top=`${S}px`,x.style.zIndex="1000",x.focus()}Object.defineProperty(c,"__esModule",{value:!0}),c.rightClickHandler=c.moveTextAreaUnderMouseCursor=c.paste=c.handlePasteEvent=c.copyHandler=c.bracketTextForPaste=c.prepareTextForTerminal=void 0,c.prepareTextForTerminal=d,c.bracketTextForPaste=f,c.copyHandler=function(_,x){_.clipboardData&&_.clipboardData.setData("text/plain",x.selectionText),_.preventDefault()},c.handlePasteEvent=function(_,x,w,C){_.stopPropagation(),_.clipboardData&&m(_.clipboardData.getData("text/plain"),x,w,C)},c.paste=m,c.moveTextAreaUnderMouseCursor=p,c.rightClickHandler=function(_,x,w,C,v){p(_,x,w),v&&C.rightClickSelect(_),x.value=C.selectionText,x.select()}},7239:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.ColorContrastCache=void 0;const f=d(1505);c.ColorContrastCache=class{constructor(){this._color=new f.TwoKeyMap,this._css=new f.TwoKeyMap}setCss(m,p,_){this._css.set(m,p,_)}getCss(m,p){return this._css.get(m,p)}setColor(m,p,_){this._color.set(m,p,_)}getColor(m,p){return this._color.get(m,p)}clear(){this._color.clear(),this._css.clear()}}},3656:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.addDisposableDomListener=void 0,c.addDisposableDomListener=function(d,f,m,p){d.addEventListener(f,m,p);let _=!1;return{dispose:()=>{_||(_=!0,d.removeEventListener(f,m,p))}}}},3551:function(u,c,d){var f=this&&this.__decorate||function(S,b,y,E){var N,T=arguments.length,L=T<3?b:E===null?E=Object.getOwnPropertyDescriptor(b,y):E;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")L=Reflect.decorate(S,b,y,E);else for(var A=S.length-1;A>=0;A--)(N=S[A])&&(L=(T<3?N(L):T>3?N(b,y,L):N(b,y))||L);return T>3&&L&&Object.defineProperty(b,y,L),L},m=this&&this.__param||function(S,b){return function(y,E){b(y,E,S)}};Object.defineProperty(c,"__esModule",{value:!0}),c.Linkifier=void 0;const p=d(3656),_=d(8460),x=d(844),w=d(2585),C=d(4725);let v=c.Linkifier=class extends x.Disposable{get currentLink(){return this._currentLink}constructor(S,b,y,E,N){super(),this._element=S,this._mouseService=b,this._renderService=y,this._bufferService=E,this._linkProviderService=N,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this.register(new _.EventEmitter),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this.register(new _.EventEmitter),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this.register((0,x.getDisposeArrayDisposable)(this._linkCacheDisposables)),this.register((0,x.toDisposable)((()=>{var T;this._lastMouseEvent=void 0,(T=this._activeProviderReplies)==null||T.clear()}))),this.register(this._bufferService.onResize((()=>{this._clearCurrentLink(),this._wasResized=!0}))),this.register((0,p.addDisposableDomListener)(this._element,"mouseleave",(()=>{this._isMouseOut=!0,this._clearCurrentLink()}))),this.register((0,p.addDisposableDomListener)(this._element,"mousemove",this._handleMouseMove.bind(this))),this.register((0,p.addDisposableDomListener)(this._element,"mousedown",this._handleMouseDown.bind(this))),this.register((0,p.addDisposableDomListener)(this._element,"mouseup",this._handleMouseUp.bind(this)))}_handleMouseMove(S){this._lastMouseEvent=S;const b=this._positionFromMouseEvent(S,this._element,this._mouseService);if(!b)return;this._isMouseOut=!1;const y=S.composedPath();for(let E=0;E<y.length;E++){const N=y[E];if(N.classList.contains("xterm"))break;if(N.classList.contains("xterm-hover"))return}this._lastBufferCell&&b.x===this._lastBufferCell.x&&b.y===this._lastBufferCell.y||(this._handleHover(b),this._lastBufferCell=b)}_handleHover(S){if(this._activeLine!==S.y||this._wasResized)return this._clearCurrentLink(),this._askForLink(S,!1),void(this._wasResized=!1);this._currentLink&&this._linkAtPosition(this._currentLink.link,S)||(this._clearCurrentLink(),this._askForLink(S,!0))}_askForLink(S,b){var E,N;this._activeProviderReplies&&b||((E=this._activeProviderReplies)==null||E.forEach((T=>{T==null||T.forEach((L=>{L.link.dispose&&L.link.dispose()}))})),this._activeProviderReplies=new Map,this._activeLine=S.y);let y=!1;for(const[T,L]of this._linkProviderService.linkProviders.entries())b?(N=this._activeProviderReplies)!=null&&N.get(T)&&(y=this._checkLinkProviderResult(T,S,y)):L.provideLinks(S.y,(A=>{var M,G;if(this._isMouseOut)return;const R=A==null?void 0:A.map((W=>({link:W})));(M=this._activeProviderReplies)==null||M.set(T,R),y=this._checkLinkProviderResult(T,S,y),((G=this._activeProviderReplies)==null?void 0:G.size)===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(S.y,this._activeProviderReplies)}))}_removeIntersectingLinks(S,b){const y=new Set;for(let E=0;E<b.size;E++){const N=b.get(E);if(N)for(let T=0;T<N.length;T++){const L=N[T],A=L.link.range.start.y<S?0:L.link.range.start.x,R=L.link.range.end.y>S?this._bufferService.cols:L.link.range.end.x;for(let M=A;M<=R;M++){if(y.has(M)){N.splice(T--,1);break}y.add(M)}}}}_checkLinkProviderResult(S,b,y){var T;if(!this._activeProviderReplies)return y;const E=this._activeProviderReplies.get(S);let N=!1;for(let L=0;L<S;L++)this._activeProviderReplies.has(L)&&!this._activeProviderReplies.get(L)||(N=!0);if(!N&&E){const L=E.find((A=>this._linkAtPosition(A.link,b)));L&&(y=!0,this._handleNewLink(L))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!y)for(let L=0;L<this._activeProviderReplies.size;L++){const A=(T=this._activeProviderReplies.get(L))==null?void 0:T.find((R=>this._linkAtPosition(R.link,b)));if(A){y=!0,this._handleNewLink(A);break}}return y}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(S){if(!this._currentLink)return;const b=this._positionFromMouseEvent(S,this._element,this._mouseService);b&&this._mouseDownLink===this._currentLink&&this._linkAtPosition(this._currentLink.link,b)&&this._currentLink.link.activate(S,this._currentLink.link.text)}_clearCurrentLink(S,b){this._currentLink&&this._lastMouseEvent&&(!S||!b||this._currentLink.link.range.start.y>=S&&this._currentLink.link.range.end.y<=b)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,(0,x.disposeArray)(this._linkCacheDisposables))}_handleNewLink(S){if(!this._lastMouseEvent)return;const b=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);b&&this._linkAtPosition(S.link,b)&&(this._currentLink=S,this._currentLink.state={decorations:{underline:S.link.decorations===void 0||S.link.decorations.underline,pointerCursor:S.link.decorations===void 0||S.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,S.link,this._lastMouseEvent),S.link.decorations={},Object.defineProperties(S.link.decorations,{pointerCursor:{get:()=>{var y,E;return(E=(y=this._currentLink)==null?void 0:y.state)==null?void 0:E.decorations.pointerCursor},set:y=>{var E;(E=this._currentLink)!=null&&E.state&&this._currentLink.state.decorations.pointerCursor!==y&&(this._currentLink.state.decorations.pointerCursor=y,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",y))}},underline:{get:()=>{var y,E;return(E=(y=this._currentLink)==null?void 0:y.state)==null?void 0:E.decorations.underline},set:y=>{var E,N,T;(E=this._currentLink)!=null&&E.state&&((T=(N=this._currentLink)==null?void 0:N.state)==null?void 0:T.decorations.underline)!==y&&(this._currentLink.state.decorations.underline=y,this._currentLink.state.isHovered&&this._fireUnderlineEvent(S.link,y))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange((y=>{if(!this._currentLink)return;const E=y.start===0?0:y.start+1+this._bufferService.buffer.ydisp,N=this._bufferService.buffer.ydisp+1+y.end;if(this._currentLink.link.range.start.y>=E&&this._currentLink.link.range.end.y<=N&&(this._clearCurrentLink(E,N),this._lastMouseEvent)){const T=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);T&&this._askForLink(T,!1)}}))))}_linkHover(S,b,y){var E;(E=this._currentLink)!=null&&E.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(b,!0),this._currentLink.state.decorations.pointerCursor&&S.classList.add("xterm-cursor-pointer")),b.hover&&b.hover(y,b.text)}_fireUnderlineEvent(S,b){const y=S.range,E=this._bufferService.buffer.ydisp,N=this._createLinkUnderlineEvent(y.start.x-1,y.start.y-E-1,y.end.x,y.end.y-E-1,void 0);(b?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(N)}_linkLeave(S,b,y){var E;(E=this._currentLink)!=null&&E.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(b,!1),this._currentLink.state.decorations.pointerCursor&&S.classList.remove("xterm-cursor-pointer")),b.leave&&b.leave(y,b.text)}_linkAtPosition(S,b){const y=S.range.start.y*this._bufferService.cols+S.range.start.x,E=S.range.end.y*this._bufferService.cols+S.range.end.x,N=b.y*this._bufferService.cols+b.x;return y<=N&&N<=E}_positionFromMouseEvent(S,b,y){const E=y.getCoords(S,b,this._bufferService.cols,this._bufferService.rows);if(E)return{x:E[0],y:E[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(S,b,y,E,N){return{x1:S,y1:b,x2:y,y2:E,cols:this._bufferService.cols,fg:N}}};c.Linkifier=v=f([m(1,C.IMouseService),m(2,C.IRenderService),m(3,w.IBufferService),m(4,C.ILinkProviderService)],v)},9042:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.tooMuchOutput=c.promptLabel=void 0,c.promptLabel="Terminal input",c.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},3730:function(u,c,d){var f=this&&this.__decorate||function(C,v,S,b){var y,E=arguments.length,N=E<3?v:b===null?b=Object.getOwnPropertyDescriptor(v,S):b;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")N=Reflect.decorate(C,v,S,b);else for(var T=C.length-1;T>=0;T--)(y=C[T])&&(N=(E<3?y(N):E>3?y(v,S,N):y(v,S))||N);return E>3&&N&&Object.defineProperty(v,S,N),N},m=this&&this.__param||function(C,v){return function(S,b){v(S,b,C)}};Object.defineProperty(c,"__esModule",{value:!0}),c.OscLinkProvider=void 0;const p=d(511),_=d(2585);let x=c.OscLinkProvider=class{constructor(C,v,S){this._bufferService=C,this._optionsService=v,this._oscLinkService=S}provideLinks(C,v){var R;const S=this._bufferService.buffer.lines.get(C-1);if(!S)return void v(void 0);const b=[],y=this._optionsService.rawOptions.linkHandler,E=new p.CellData,N=S.getTrimmedLength();let T=-1,L=-1,A=!1;for(let M=0;M<N;M++)if(L!==-1||S.hasContent(M)){if(S.loadCell(M,E),E.hasExtendedAttrs()&&E.extended.urlId){if(L===-1){L=M,T=E.extended.urlId;continue}A=E.extended.urlId!==T}else L!==-1&&(A=!0);if(A||L!==-1&&M===N-1){const G=(R=this._oscLinkService.getLinkData(T))==null?void 0:R.uri;if(G){const W={start:{x:L+1,y:C},end:{x:M+(A||M!==N-1?0:1),y:C}};let O=!1;if(!(y!=null&&y.allowNonHttpProtocols))try{const U=new URL(G);["http:","https:"].includes(U.protocol)||(O=!0)}catch{O=!0}O||b.push({text:G,range:W,activate:(U,V)=>y?y.activate(U,V,W):w(0,V),hover:(U,V)=>{var z;return(z=y==null?void 0:y.hover)==null?void 0:z.call(y,U,V,W)},leave:(U,V)=>{var z;return(z=y==null?void 0:y.leave)==null?void 0:z.call(y,U,V,W)}})}A=!1,E.hasExtendedAttrs()&&E.extended.urlId?(L=M,T=E.extended.urlId):(L=-1,T=-1)}}v(b)}};function w(C,v){if(confirm(`Do you want to navigate to ${v}?
63
+
64
+ WARNING: This link could potentially be dangerous`)){const S=window.open();if(S){try{S.opener=null}catch{}S.location.href=v}else console.warn("Opening link blocked as opener could not be cleared")}}c.OscLinkProvider=x=f([m(0,_.IBufferService),m(1,_.IOptionsService),m(2,_.IOscLinkService)],x)},6193:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.RenderDebouncer=void 0,c.RenderDebouncer=class{constructor(d,f){this._renderCallback=d,this._coreBrowserService=f,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(d){return this._refreshCallbacks.push(d),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._innerRefresh()))),this._animationFrame}refresh(d,f,m){this._rowCount=m,d=d!==void 0?d:0,f=f!==void 0?f:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,d):d,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,f):f,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)return void this._runRefreshCallbacks();const d=Math.max(this._rowStart,0),f=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(d,f),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(const d of this._refreshCallbacks)d(0);this._refreshCallbacks=[]}}},3236:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.Terminal=void 0;const f=d(3614),m=d(3656),p=d(3551),_=d(9042),x=d(3730),w=d(1680),C=d(3107),v=d(5744),S=d(2950),b=d(1296),y=d(428),E=d(4269),N=d(5114),T=d(8934),L=d(3230),A=d(9312),R=d(4725),M=d(6731),G=d(8055),W=d(8969),O=d(8460),U=d(844),V=d(6114),z=d(8437),X=d(2584),te=d(7399),H=d(5941),I=d(9074),$=d(2585),F=d(5435),P=d(4567),ee=d(779);class J extends W.CoreTerminal{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}constructor(Y={}){super(Y),this.browser=V,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this.register(new U.MutableDisposable),this._onCursorMove=this.register(new O.EventEmitter),this.onCursorMove=this._onCursorMove.event,this._onKey=this.register(new O.EventEmitter),this.onKey=this._onKey.event,this._onRender=this.register(new O.EventEmitter),this.onRender=this._onRender.event,this._onSelectionChange=this.register(new O.EventEmitter),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this.register(new O.EventEmitter),this.onTitleChange=this._onTitleChange.event,this._onBell=this.register(new O.EventEmitter),this.onBell=this._onBell.event,this._onFocus=this.register(new O.EventEmitter),this._onBlur=this.register(new O.EventEmitter),this._onA11yCharEmitter=this.register(new O.EventEmitter),this._onA11yTabEmitter=this.register(new O.EventEmitter),this._onWillOpen=this.register(new O.EventEmitter),this._setup(),this._decorationService=this._instantiationService.createInstance(I.DecorationService),this._instantiationService.setService($.IDecorationService,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(ee.LinkProviderService),this._instantiationService.setService(R.ILinkProviderService,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(x.OscLinkProvider)),this.register(this._inputHandler.onRequestBell((()=>this._onBell.fire()))),this.register(this._inputHandler.onRequestRefreshRows(((q,Z)=>this.refresh(q,Z)))),this.register(this._inputHandler.onRequestSendFocus((()=>this._reportFocus()))),this.register(this._inputHandler.onRequestReset((()=>this.reset()))),this.register(this._inputHandler.onRequestWindowsOptionsReport((q=>this._reportWindowsOptions(q)))),this.register(this._inputHandler.onColor((q=>this._handleColorEvent(q)))),this.register((0,O.forwardEvent)(this._inputHandler.onCursorMove,this._onCursorMove)),this.register((0,O.forwardEvent)(this._inputHandler.onTitleChange,this._onTitleChange)),this.register((0,O.forwardEvent)(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this.register((0,O.forwardEvent)(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this.register(this._bufferService.onResize((q=>this._afterResize(q.cols,q.rows)))),this.register((0,U.toDisposable)((()=>{var q,Z;this._customKeyEventHandler=void 0,(Z=(q=this.element)==null?void 0:q.parentNode)==null||Z.removeChild(this.element)})))}_handleColorEvent(Y){if(this._themeService)for(const q of Y){let Z,ae="";switch(q.index){case 256:Z="foreground",ae="10";break;case 257:Z="background",ae="11";break;case 258:Z="cursor",ae="12";break;default:Z="ansi",ae="4;"+q.index}switch(q.type){case 0:const se=G.color.toColorRGB(Z==="ansi"?this._themeService.colors.ansi[q.index]:this._themeService.colors[Z]);this.coreService.triggerDataEvent(`${X.C0.ESC}]${ae};${(0,H.toRgbString)(se)}${X.C1_ESCAPED.ST}`);break;case 1:if(Z==="ansi")this._themeService.modifyColors((oe=>oe.ansi[q.index]=G.channels.toColor(...q.color)));else{const oe=Z;this._themeService.modifyColors((je=>je[oe]=G.channels.toColor(...q.color)))}break;case 2:this._themeService.restoreColor(q.index)}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(Y){Y?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(P.AccessibilityManager,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(Y){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(X.C0.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){var Y;return(Y=this.textarea)==null?void 0:Y.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(X.C0.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;const Y=this.buffer.ybase+this.buffer.y,q=this.buffer.lines.get(Y);if(!q)return;const Z=Math.min(this.buffer.x,this.cols-1),ae=this._renderService.dimensions.css.cell.height,se=q.getWidth(Z),oe=this._renderService.dimensions.css.cell.width*se,je=this.buffer.y*this._renderService.dimensions.css.cell.height,Le=Z*this._renderService.dimensions.css.cell.width;this.textarea.style.left=Le+"px",this.textarea.style.top=je+"px",this.textarea.style.width=oe+"px",this.textarea.style.height=ae+"px",this.textarea.style.lineHeight=ae+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this.register((0,m.addDisposableDomListener)(this.element,"copy",(q=>{this.hasSelection()&&(0,f.copyHandler)(q,this._selectionService)})));const Y=q=>(0,f.handlePasteEvent)(q,this.textarea,this.coreService,this.optionsService);this.register((0,m.addDisposableDomListener)(this.textarea,"paste",Y)),this.register((0,m.addDisposableDomListener)(this.element,"paste",Y)),V.isFirefox?this.register((0,m.addDisposableDomListener)(this.element,"mousedown",(q=>{q.button===2&&(0,f.rightClickHandler)(q,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)}))):this.register((0,m.addDisposableDomListener)(this.element,"contextmenu",(q=>{(0,f.rightClickHandler)(q,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)}))),V.isLinux&&this.register((0,m.addDisposableDomListener)(this.element,"auxclick",(q=>{q.button===1&&(0,f.moveTextAreaUnderMouseCursor)(q,this.textarea,this.screenElement)})))}_bindKeys(){this.register((0,m.addDisposableDomListener)(this.textarea,"keyup",(Y=>this._keyUp(Y)),!0)),this.register((0,m.addDisposableDomListener)(this.textarea,"keydown",(Y=>this._keyDown(Y)),!0)),this.register((0,m.addDisposableDomListener)(this.textarea,"keypress",(Y=>this._keyPress(Y)),!0)),this.register((0,m.addDisposableDomListener)(this.textarea,"compositionstart",(()=>this._compositionHelper.compositionstart()))),this.register((0,m.addDisposableDomListener)(this.textarea,"compositionupdate",(Y=>this._compositionHelper.compositionupdate(Y)))),this.register((0,m.addDisposableDomListener)(this.textarea,"compositionend",(()=>this._compositionHelper.compositionend()))),this.register((0,m.addDisposableDomListener)(this.textarea,"input",(Y=>this._inputEvent(Y)),!0)),this.register(this.onRender((()=>this._compositionHelper.updateCompositionElements())))}open(Y){var Z;if(!Y)throw new Error("Terminal requires a parent element.");if(Y.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),((Z=this.element)==null?void 0:Z.ownerDocument.defaultView)&&this._coreBrowserService)return void(this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView));this._document=Y.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"),Y.appendChild(this.element);const q=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),q.appendChild(this._viewportElement),this._viewportScrollArea=this._document.createElement("div"),this._viewportScrollArea.classList.add("xterm-scroll-area"),this._viewportElement.appendChild(this._viewportScrollArea),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this.register((0,m.addDisposableDomListener)(this.screenElement,"mousemove",(ae=>this.updateCursorStyle(ae)))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),q.appendChild(this.screenElement),this.textarea=this._document.createElement("textarea"),this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",_.promptLabel),V.isChromeOS||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._coreBrowserService=this.register(this._instantiationService.createInstance(N.CoreBrowserService,this.textarea,Y.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(R.ICoreBrowserService,this._coreBrowserService),this.register((0,m.addDisposableDomListener)(this.textarea,"focus",(ae=>this._handleTextAreaFocus(ae)))),this.register((0,m.addDisposableDomListener)(this.textarea,"blur",(()=>this._handleTextAreaBlur()))),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(y.CharSizeService,this._document,this._helperContainer),this._instantiationService.setService(R.ICharSizeService,this._charSizeService),this._themeService=this._instantiationService.createInstance(M.ThemeService),this._instantiationService.setService(R.IThemeService,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(E.CharacterJoinerService),this._instantiationService.setService(R.ICharacterJoinerService,this._characterJoinerService),this._renderService=this.register(this._instantiationService.createInstance(L.RenderService,this.rows,this.screenElement)),this._instantiationService.setService(R.IRenderService,this._renderService),this.register(this._renderService.onRenderedViewportChange((ae=>this._onRender.fire(ae)))),this.onResize((ae=>this._renderService.resize(ae.cols,ae.rows))),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(S.CompositionHelper,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(T.MouseService),this._instantiationService.setService(R.IMouseService,this._mouseService),this.linkifier=this.register(this._instantiationService.createInstance(p.Linkifier,this.screenElement)),this.element.appendChild(q);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this.viewport=this._instantiationService.createInstance(w.Viewport,this._viewportElement,this._viewportScrollArea),this.viewport.onRequestScrollLines((ae=>this.scrollLines(ae.amount,ae.suppressScrollEvent,1))),this.register(this._inputHandler.onRequestSyncScrollBar((()=>this.viewport.syncScrollArea()))),this.register(this.viewport),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.register(this._renderService.onDimensionsChange((()=>this.viewport.syncScrollArea()))),this._selectionService=this.register(this._instantiationService.createInstance(A.SelectionService,this.element,this.screenElement,this.linkifier)),this._instantiationService.setService(R.ISelectionService,this._selectionService),this.register(this._selectionService.onRequestScrollLines((ae=>this.scrollLines(ae.amount,ae.suppressScrollEvent)))),this.register(this._selectionService.onSelectionChange((()=>this._onSelectionChange.fire()))),this.register(this._selectionService.onRequestRedraw((ae=>this._renderService.handleSelectionChanged(ae.start,ae.end,ae.columnSelectMode)))),this.register(this._selectionService.onLinuxMouseSelection((ae=>{this.textarea.value=ae,this.textarea.focus(),this.textarea.select()}))),this.register(this._onScroll.event((ae=>{this.viewport.syncScrollArea(),this._selectionService.refresh()}))),this.register((0,m.addDisposableDomListener)(this._viewportElement,"scroll",(()=>this._selectionService.refresh()))),this.register(this._instantiationService.createInstance(C.BufferDecorationRenderer,this.screenElement)),this.register((0,m.addDisposableDomListener)(this.element,"mousedown",(ae=>this._selectionService.handleMouseDown(ae)))),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(P.AccessibilityManager,this)),this.register(this.optionsService.onSpecificOptionChange("screenReaderMode",(ae=>this._handleScreenReaderModeOptionChange(ae)))),this.options.overviewRulerWidth&&(this._overviewRulerRenderer=this.register(this._instantiationService.createInstance(v.OverviewRulerRenderer,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRulerWidth",(ae=>{!this._overviewRulerRenderer&&ae&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this.register(this._instantiationService.createInstance(v.OverviewRulerRenderer,this._viewportElement,this.screenElement)))})),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(b.DomRenderer,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){const Y=this,q=this.element;function Z(oe){const je=Y._mouseService.getMouseReportCoords(oe,Y.screenElement);if(!je)return!1;let Le,De;switch(oe.overrideType||oe.type){case"mousemove":De=32,oe.buttons===void 0?(Le=3,oe.button!==void 0&&(Le=oe.button<3?oe.button:3)):Le=1&oe.buttons?0:4&oe.buttons?1:2&oe.buttons?2:3;break;case"mouseup":De=0,Le=oe.button<3?oe.button:3;break;case"mousedown":De=1,Le=oe.button<3?oe.button:3;break;case"wheel":if(Y._customWheelEventHandler&&Y._customWheelEventHandler(oe)===!1||Y.viewport.getLinesScrolled(oe)===0)return!1;De=oe.deltaY<0?0:1,Le=4;break;default:return!1}return!(De===void 0||Le===void 0||Le>4)&&Y.coreMouseService.triggerMouseEvent({col:je.col,row:je.row,x:je.x,y:je.y,button:Le,action:De,ctrl:oe.ctrlKey,alt:oe.altKey,shift:oe.shiftKey})}const ae={mouseup:null,wheel:null,mousedrag:null,mousemove:null},se={mouseup:oe=>(Z(oe),oe.buttons||(this._document.removeEventListener("mouseup",ae.mouseup),ae.mousedrag&&this._document.removeEventListener("mousemove",ae.mousedrag)),this.cancel(oe)),wheel:oe=>(Z(oe),this.cancel(oe,!0)),mousedrag:oe=>{oe.buttons&&Z(oe)},mousemove:oe=>{oe.buttons||Z(oe)}};this.register(this.coreMouseService.onProtocolChange((oe=>{oe?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(oe)),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()),8&oe?ae.mousemove||(q.addEventListener("mousemove",se.mousemove),ae.mousemove=se.mousemove):(q.removeEventListener("mousemove",ae.mousemove),ae.mousemove=null),16&oe?ae.wheel||(q.addEventListener("wheel",se.wheel,{passive:!1}),ae.wheel=se.wheel):(q.removeEventListener("wheel",ae.wheel),ae.wheel=null),2&oe?ae.mouseup||(ae.mouseup=se.mouseup):(this._document.removeEventListener("mouseup",ae.mouseup),ae.mouseup=null),4&oe?ae.mousedrag||(ae.mousedrag=se.mousedrag):(this._document.removeEventListener("mousemove",ae.mousedrag),ae.mousedrag=null)}))),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this.register((0,m.addDisposableDomListener)(q,"mousedown",(oe=>{if(oe.preventDefault(),this.focus(),this.coreMouseService.areMouseEventsActive&&!this._selectionService.shouldForceSelection(oe))return Z(oe),ae.mouseup&&this._document.addEventListener("mouseup",ae.mouseup),ae.mousedrag&&this._document.addEventListener("mousemove",ae.mousedrag),this.cancel(oe)}))),this.register((0,m.addDisposableDomListener)(q,"wheel",(oe=>{if(!ae.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(oe)===!1)return!1;if(!this.buffer.hasScrollback){const je=this.viewport.getLinesScrolled(oe);if(je===0)return;const Le=X.C0.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(oe.deltaY<0?"A":"B");let De="";for(let Re=0;Re<Math.abs(je);Re++)De+=Le;return this.coreService.triggerDataEvent(De,!0),this.cancel(oe,!0)}return this.viewport.handleWheel(oe)?this.cancel(oe):void 0}}),{passive:!1})),this.register((0,m.addDisposableDomListener)(q,"touchstart",(oe=>{if(!this.coreMouseService.areMouseEventsActive)return this.viewport.handleTouchStart(oe),this.cancel(oe)}),{passive:!0})),this.register((0,m.addDisposableDomListener)(q,"touchmove",(oe=>{if(!this.coreMouseService.areMouseEventsActive)return this.viewport.handleTouchMove(oe)?void 0:this.cancel(oe)}),{passive:!1}))}refresh(Y,q){var Z;(Z=this._renderService)==null||Z.refreshRows(Y,q)}updateCursorStyle(Y){var q;(q=this._selectionService)!=null&&q.shouldColumnSelect(Y)?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(Y,q,Z=0){var ae;Z===1?(super.scrollLines(Y,q,Z),this.refresh(0,this.rows-1)):(ae=this.viewport)==null||ae.scrollLines(Y)}paste(Y){(0,f.paste)(Y,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(Y){this._customKeyEventHandler=Y}attachCustomWheelEventHandler(Y){this._customWheelEventHandler=Y}registerLinkProvider(Y){return this._linkProviderService.registerLinkProvider(Y)}registerCharacterJoiner(Y){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");const q=this._characterJoinerService.register(Y);return this.refresh(0,this.rows-1),q}deregisterCharacterJoiner(Y){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(Y)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(Y){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+Y)}registerDecoration(Y){return this._decorationService.registerDecoration(Y)}hasSelection(){return!!this._selectionService&&this._selectionService.hasSelection}select(Y,q,Z){this._selectionService.setSelection(Y,q,Z)}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(){var Y;(Y=this._selectionService)==null||Y.clearSelection()}selectAll(){var Y;(Y=this._selectionService)==null||Y.selectAll()}selectLines(Y,q){var Z;(Z=this._selectionService)==null||Z.selectLines(Y,q)}_keyDown(Y){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(Y)===!1)return!1;const q=this.browser.isMac&&this.options.macOptionIsMeta&&Y.altKey;if(!q&&!this._compositionHelper.keydown(Y))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(),!1;q||Y.key!=="Dead"&&Y.key!=="AltGraph"||(this._unprocessedDeadKey=!0);const Z=(0,te.evaluateKeyboardEvent)(Y,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(Y),Z.type===3||Z.type===2){const ae=this.rows-1;return this.scrollLines(Z.type===2?-ae:ae),this.cancel(Y,!0)}return Z.type===1&&this.selectAll(),!!this._isThirdLevelShift(this.browser,Y)||(Z.cancel&&this.cancel(Y,!0),!Z.key||!!(Y.key&&!Y.ctrlKey&&!Y.altKey&&!Y.metaKey&&Y.key.length===1&&Y.key.charCodeAt(0)>=65&&Y.key.charCodeAt(0)<=90)||(this._unprocessedDeadKey?(this._unprocessedDeadKey=!1,!0):(Z.key!==X.C0.ETX&&Z.key!==X.C0.CR||(this.textarea.value=""),this._onKey.fire({key:Z.key,domEvent:Y}),this._showCursor(),this.coreService.triggerDataEvent(Z.key,!0),!this.optionsService.rawOptions.screenReaderMode||Y.altKey||Y.ctrlKey?this.cancel(Y,!0):void(this._keyDownHandled=!0))))}_isThirdLevelShift(Y,q){const Z=Y.isMac&&!this.options.macOptionIsMeta&&q.altKey&&!q.ctrlKey&&!q.metaKey||Y.isWindows&&q.altKey&&q.ctrlKey&&!q.metaKey||Y.isWindows&&q.getModifierState("AltGraph");return q.type==="keypress"?Z:Z&&(!q.keyCode||q.keyCode>47)}_keyUp(Y){this._keyDownSeen=!1,this._customKeyEventHandler&&this._customKeyEventHandler(Y)===!1||((function(q){return q.keyCode===16||q.keyCode===17||q.keyCode===18})(Y)||this.focus(),this.updateCursorStyle(Y),this._keyPressHandled=!1)}_keyPress(Y){let q;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(Y)===!1)return!1;if(this.cancel(Y),Y.charCode)q=Y.charCode;else if(Y.which===null||Y.which===void 0)q=Y.keyCode;else{if(Y.which===0||Y.charCode===0)return!1;q=Y.which}return!(!q||(Y.altKey||Y.ctrlKey||Y.metaKey)&&!this._isThirdLevelShift(this.browser,Y)||(q=String.fromCharCode(q),this._onKey.fire({key:q,domEvent:Y}),this._showCursor(),this.coreService.triggerDataEvent(q,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,0))}_inputEvent(Y){if(Y.data&&Y.inputType==="insertText"&&(!Y.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;const q=Y.data;return this.coreService.triggerDataEvent(q,!0),this.cancel(Y),!0}return!1}resize(Y,q){Y!==this.cols||q!==this.rows?super.resize(Y,q):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()}_afterResize(Y,q){var Z,ae;(Z=this._charSizeService)==null||Z.measure(),(ae=this.viewport)==null||ae.syncScrollArea(!0)}clear(){var Y;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 q=1;q<this.rows;q++)this.buffer.lines.push(this.buffer.getBlankLine(z.DEFAULT_ATTR_DATA));this._onScroll.fire({position:this.buffer.ydisp,source:0}),(Y=this.viewport)==null||Y.reset(),this.refresh(0,this.rows-1)}}reset(){var q,Z;this.options.rows=this.rows,this.options.cols=this.cols;const Y=this._customKeyEventHandler;this._setup(),super.reset(),(q=this._selectionService)==null||q.reset(),this._decorationService.reset(),(Z=this.viewport)==null||Z.reset(),this._customKeyEventHandler=Y,this.refresh(0,this.rows-1)}clearTextureAtlas(){var Y;(Y=this._renderService)==null||Y.clearTextureAtlas()}_reportFocus(){var Y;(Y=this.element)!=null&&Y.classList.contains("focus")?this.coreService.triggerDataEvent(X.C0.ESC+"[I"):this.coreService.triggerDataEvent(X.C0.ESC+"[O")}_reportWindowsOptions(Y){if(this._renderService)switch(Y){case F.WindowsOptionsReportType.GET_WIN_SIZE_PIXELS:const q=this._renderService.dimensions.css.canvas.width.toFixed(0),Z=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${X.C0.ESC}[4;${Z};${q}t`);break;case F.WindowsOptionsReportType.GET_CELL_SIZE_PIXELS:const ae=this._renderService.dimensions.css.cell.width.toFixed(0),se=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${X.C0.ESC}[6;${se};${ae}t`)}}cancel(Y,q){if(this.options.cancelEvents||q)return Y.preventDefault(),Y.stopPropagation(),!1}}c.Terminal=J},9924:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.TimeBasedDebouncer=void 0,c.TimeBasedDebouncer=class{constructor(d,f=1e3){this._renderCallback=d,this._debounceThresholdMS=f,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(d,f,m){this._rowCount=m,d=d!==void 0?d:0,f=f!==void 0?f:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,d):d,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,f):f;const p=Date.now();if(p-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=p,this._innerRefresh();else if(!this._additionalRefreshRequested){const _=p-this._lastRefreshMs,x=this._debounceThresholdMS-_;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout((()=>{this._lastRefreshMs=Date.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0}),x)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;const d=Math.max(this._rowStart,0),f=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(d,f)}}},1680:function(u,c,d){var f=this&&this.__decorate||function(S,b,y,E){var N,T=arguments.length,L=T<3?b:E===null?E=Object.getOwnPropertyDescriptor(b,y):E;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")L=Reflect.decorate(S,b,y,E);else for(var A=S.length-1;A>=0;A--)(N=S[A])&&(L=(T<3?N(L):T>3?N(b,y,L):N(b,y))||L);return T>3&&L&&Object.defineProperty(b,y,L),L},m=this&&this.__param||function(S,b){return function(y,E){b(y,E,S)}};Object.defineProperty(c,"__esModule",{value:!0}),c.Viewport=void 0;const p=d(3656),_=d(4725),x=d(8460),w=d(844),C=d(2585);let v=c.Viewport=class extends w.Disposable{constructor(S,b,y,E,N,T,L,A){super(),this._viewportElement=S,this._scrollArea=b,this._bufferService=y,this._optionsService=E,this._charSizeService=N,this._renderService=T,this._coreBrowserService=L,this.scrollBarWidth=0,this._currentRowHeight=0,this._currentDeviceCellHeight=0,this._lastRecordedBufferLength=0,this._lastRecordedViewportHeight=0,this._lastRecordedBufferHeight=0,this._lastTouchY=0,this._lastScrollTop=0,this._wheelPartialScroll=0,this._refreshAnimationFrame=null,this._ignoreNextScrollEvent=!1,this._smoothScrollState={startTime:0,origin:-1,target:-1},this._onRequestScrollLines=this.register(new x.EventEmitter),this.onRequestScrollLines=this._onRequestScrollLines.event,this.scrollBarWidth=this._viewportElement.offsetWidth-this._scrollArea.offsetWidth||15,this.register((0,p.addDisposableDomListener)(this._viewportElement,"scroll",this._handleScroll.bind(this))),this._activeBuffer=this._bufferService.buffer,this.register(this._bufferService.buffers.onBufferActivate((R=>this._activeBuffer=R.activeBuffer))),this._renderDimensions=this._renderService.dimensions,this.register(this._renderService.onDimensionsChange((R=>this._renderDimensions=R))),this._handleThemeChange(A.colors),this.register(A.onChangeColors((R=>this._handleThemeChange(R)))),this.register(this._optionsService.onSpecificOptionChange("scrollback",(()=>this.syncScrollArea()))),setTimeout((()=>this.syncScrollArea()))}_handleThemeChange(S){this._viewportElement.style.backgroundColor=S.background.css}reset(){this._currentRowHeight=0,this._currentDeviceCellHeight=0,this._lastRecordedBufferLength=0,this._lastRecordedViewportHeight=0,this._lastRecordedBufferHeight=0,this._lastTouchY=0,this._lastScrollTop=0,this._coreBrowserService.window.requestAnimationFrame((()=>this.syncScrollArea()))}_refresh(S){if(S)return this._innerRefresh(),void(this._refreshAnimationFrame!==null&&this._coreBrowserService.window.cancelAnimationFrame(this._refreshAnimationFrame));this._refreshAnimationFrame===null&&(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._innerRefresh())))}_innerRefresh(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderDimensions.device.cell.height/this._coreBrowserService.dpr,this._currentDeviceCellHeight=this._renderDimensions.device.cell.height,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;const b=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderDimensions.css.canvas.height);this._lastRecordedBufferHeight!==b&&(this._lastRecordedBufferHeight=b,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}const S=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==S&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=S),this._refreshAnimationFrame=null}syncScrollArea(S=!1){if(this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(S);this._lastRecordedViewportHeight===this._renderService.dimensions.css.canvas.height&&this._lastScrollTop===this._activeBuffer.ydisp*this._currentRowHeight&&this._renderDimensions.device.cell.height===this._currentDeviceCellHeight||this._refresh(S)}_handleScroll(S){if(this._lastScrollTop=this._viewportElement.scrollTop,!this._viewportElement.offsetParent)return;if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._onRequestScrollLines.fire({amount:0,suppressScrollEvent:!0});const b=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._onRequestScrollLines.fire({amount:b,suppressScrollEvent:!0})}_smoothScroll(){if(this._isDisposed||this._smoothScrollState.origin===-1||this._smoothScrollState.target===-1)return;const S=this._smoothScrollPercent();this._viewportElement.scrollTop=this._smoothScrollState.origin+Math.round(S*(this._smoothScrollState.target-this._smoothScrollState.origin)),S<1?this._coreBrowserService.window.requestAnimationFrame((()=>this._smoothScroll())):this._clearSmoothScrollState()}_smoothScrollPercent(){return this._optionsService.rawOptions.smoothScrollDuration&&this._smoothScrollState.startTime?Math.max(Math.min((Date.now()-this._smoothScrollState.startTime)/this._optionsService.rawOptions.smoothScrollDuration,1),0):1}_clearSmoothScrollState(){this._smoothScrollState.startTime=0,this._smoothScrollState.origin=-1,this._smoothScrollState.target=-1}_bubbleScroll(S,b){const y=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(b<0&&this._viewportElement.scrollTop!==0||b>0&&y<this._lastRecordedBufferHeight)||(S.cancelable&&S.preventDefault(),!1)}handleWheel(S){const b=this._getPixelsScrolled(S);return b!==0&&(this._optionsService.rawOptions.smoothScrollDuration?(this._smoothScrollState.startTime=Date.now(),this._smoothScrollPercent()<1?(this._smoothScrollState.origin=this._viewportElement.scrollTop,this._smoothScrollState.target===-1?this._smoothScrollState.target=this._viewportElement.scrollTop+b:this._smoothScrollState.target+=b,this._smoothScrollState.target=Math.max(Math.min(this._smoothScrollState.target,this._viewportElement.scrollHeight),0),this._smoothScroll()):this._clearSmoothScrollState()):this._viewportElement.scrollTop+=b,this._bubbleScroll(S,b))}scrollLines(S){if(S!==0)if(this._optionsService.rawOptions.smoothScrollDuration){const b=S*this._currentRowHeight;this._smoothScrollState.startTime=Date.now(),this._smoothScrollPercent()<1?(this._smoothScrollState.origin=this._viewportElement.scrollTop,this._smoothScrollState.target=this._smoothScrollState.origin+b,this._smoothScrollState.target=Math.max(Math.min(this._smoothScrollState.target,this._viewportElement.scrollHeight),0),this._smoothScroll()):this._clearSmoothScrollState()}else this._onRequestScrollLines.fire({amount:S,suppressScrollEvent:!1})}_getPixelsScrolled(S){if(S.deltaY===0||S.shiftKey)return 0;let b=this._applyScrollModifier(S.deltaY,S);return S.deltaMode===WheelEvent.DOM_DELTA_LINE?b*=this._currentRowHeight:S.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(b*=this._currentRowHeight*this._bufferService.rows),b}getBufferElements(S,b){var A;let y,E="";const N=[],T=b??this._bufferService.buffer.lines.length,L=this._bufferService.buffer.lines;for(let R=S;R<T;R++){const M=L.get(R);if(!M)continue;const G=(A=L.get(R+1))==null?void 0:A.isWrapped;if(E+=M.translateToString(!G),!G||R===L.length-1){const W=document.createElement("div");W.textContent=E,N.push(W),E.length>0&&(y=W),E=""}}return{bufferElements:N,cursorElement:y}}getLinesScrolled(S){if(S.deltaY===0||S.shiftKey)return 0;let b=this._applyScrollModifier(S.deltaY,S);return S.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(b/=this._currentRowHeight+0,this._wheelPartialScroll+=b,b=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):S.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(b*=this._bufferService.rows),b}_applyScrollModifier(S,b){const y=this._optionsService.rawOptions.fastScrollModifier;return y==="alt"&&b.altKey||y==="ctrl"&&b.ctrlKey||y==="shift"&&b.shiftKey?S*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:S*this._optionsService.rawOptions.scrollSensitivity}handleTouchStart(S){this._lastTouchY=S.touches[0].pageY}handleTouchMove(S){const b=this._lastTouchY-S.touches[0].pageY;return this._lastTouchY=S.touches[0].pageY,b!==0&&(this._viewportElement.scrollTop+=b,this._bubbleScroll(S,b))}};c.Viewport=v=f([m(2,C.IBufferService),m(3,C.IOptionsService),m(4,_.ICharSizeService),m(5,_.IRenderService),m(6,_.ICoreBrowserService),m(7,_.IThemeService)],v)},3107:function(u,c,d){var f=this&&this.__decorate||function(C,v,S,b){var y,E=arguments.length,N=E<3?v:b===null?b=Object.getOwnPropertyDescriptor(v,S):b;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")N=Reflect.decorate(C,v,S,b);else for(var T=C.length-1;T>=0;T--)(y=C[T])&&(N=(E<3?y(N):E>3?y(v,S,N):y(v,S))||N);return E>3&&N&&Object.defineProperty(v,S,N),N},m=this&&this.__param||function(C,v){return function(S,b){v(S,b,C)}};Object.defineProperty(c,"__esModule",{value:!0}),c.BufferDecorationRenderer=void 0;const p=d(4725),_=d(844),x=d(2585);let w=c.BufferDecorationRenderer=class extends _.Disposable{constructor(C,v,S,b,y){super(),this._screenElement=C,this._bufferService=v,this._coreBrowserService=S,this._decorationService=b,this._renderService=y,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((E=>this._removeDecoration(E)))),this.register((0,_.toDisposable)((()=>{this._container.remove(),this._decorationElements.clear()})))}_queueRefresh(){this._animationFrame===void 0&&(this._animationFrame=this._renderService.addRefreshCallback((()=>{this._doRefreshDecorations(),this._animationFrame=void 0})))}_doRefreshDecorations(){for(const C of this._decorationService.decorations)this._renderDecoration(C);this._dimensionsChanged=!1}_renderDecoration(C){this._refreshStyle(C),this._dimensionsChanged&&this._refreshXPosition(C)}_createElement(C){var b;const v=this._coreBrowserService.mainDocument.createElement("div");v.classList.add("xterm-decoration"),v.classList.toggle("xterm-decoration-top-layer",((b=C==null?void 0:C.options)==null?void 0:b.layer)==="top"),v.style.width=`${Math.round((C.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,v.style.height=(C.options.height||1)*this._renderService.dimensions.css.cell.height+"px",v.style.top=(C.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height+"px",v.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;const S=C.options.x??0;return S&&S>this._bufferService.cols&&(v.style.display="none"),this._refreshXPosition(C,v),v}_refreshStyle(C){const v=C.marker.line-this._bufferService.buffers.active.ydisp;if(v<0||v>=this._bufferService.rows)C.element&&(C.element.style.display="none",C.onRenderEmitter.fire(C.element));else{let S=this._decorationElements.get(C);S||(S=this._createElement(C),C.element=S,this._decorationElements.set(C,S),this._container.appendChild(S),C.onDispose((()=>{this._decorationElements.delete(C),S.remove()}))),S.style.top=v*this._renderService.dimensions.css.cell.height+"px",S.style.display=this._altBufferIsActive?"none":"block",C.onRenderEmitter.fire(S)}}_refreshXPosition(C,v=C.element){if(!v)return;const S=C.options.x??0;(C.options.anchor||"left")==="right"?v.style.right=S?S*this._renderService.dimensions.css.cell.width+"px":"":v.style.left=S?S*this._renderService.dimensions.css.cell.width+"px":""}_removeDecoration(C){var v;(v=this._decorationElements.get(C))==null||v.remove(),this._decorationElements.delete(C),C.dispose()}};c.BufferDecorationRenderer=w=f([m(1,x.IBufferService),m(2,p.ICoreBrowserService),m(3,x.IDecorationService),m(4,p.IRenderService)],w)},5871:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.ColorZoneStore=void 0,c.ColorZoneStore=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(d){if(d.options.overviewRulerOptions){for(const f of this._zones)if(f.color===d.options.overviewRulerOptions.color&&f.position===d.options.overviewRulerOptions.position){if(this._lineIntersectsZone(f,d.marker.line))return;if(this._lineAdjacentToZone(f,d.marker.line,d.options.overviewRulerOptions.position))return void this._addLineToZone(f,d.marker.line)}if(this._zonePoolIndex<this._zonePool.length)return this._zonePool[this._zonePoolIndex].color=d.options.overviewRulerOptions.color,this._zonePool[this._zonePoolIndex].position=d.options.overviewRulerOptions.position,this._zonePool[this._zonePoolIndex].startBufferLine=d.marker.line,this._zonePool[this._zonePoolIndex].endBufferLine=d.marker.line,void this._zones.push(this._zonePool[this._zonePoolIndex++]);this._zones.push({color:d.options.overviewRulerOptions.color,position:d.options.overviewRulerOptions.position,startBufferLine:d.marker.line,endBufferLine:d.marker.line}),this._zonePool.push(this._zones[this._zones.length-1]),this._zonePoolIndex++}}setPadding(d){this._linePadding=d}_lineIntersectsZone(d,f){return f>=d.startBufferLine&&f<=d.endBufferLine}_lineAdjacentToZone(d,f,m){return f>=d.startBufferLine-this._linePadding[m||"full"]&&f<=d.endBufferLine+this._linePadding[m||"full"]}_addLineToZone(d,f){d.startBufferLine=Math.min(d.startBufferLine,f),d.endBufferLine=Math.max(d.endBufferLine,f)}}},5744:function(u,c,d){var f=this&&this.__decorate||function(y,E,N,T){var L,A=arguments.length,R=A<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,N):T;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(y,E,N,T);else for(var M=y.length-1;M>=0;M--)(L=y[M])&&(R=(A<3?L(R):A>3?L(E,N,R):L(E,N))||R);return A>3&&R&&Object.defineProperty(E,N,R),R},m=this&&this.__param||function(y,E){return function(N,T){E(N,T,y)}};Object.defineProperty(c,"__esModule",{value:!0}),c.OverviewRulerRenderer=void 0;const p=d(5871),_=d(4725),x=d(844),w=d(2585),C={full:0,left:0,center:0,right:0},v={full:0,left:0,center:0,right:0},S={full:0,left:0,center:0,right:0};let b=c.OverviewRulerRenderer=class extends x.Disposable{get _width(){return this._optionsService.options.overviewRulerWidth||0}constructor(y,E,N,T,L,A,R){var G;super(),this._viewportElement=y,this._screenElement=E,this._bufferService=N,this._decorationService=T,this._renderService=L,this._optionsService=A,this._coreBrowserService=R,this._colorZoneStore=new p.ColorZoneStore,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(),(G=this._viewportElement.parentElement)==null||G.insertBefore(this._canvas,this._viewportElement);const M=this._canvas.getContext("2d");if(!M)throw new Error("Ctx cannot be null");this._ctx=M,this._registerDecorationListeners(),this._registerBufferChangeListeners(),this._registerDimensionChangeListeners(),this.register((0,x.toDisposable)((()=>{var W;(W=this._canvas)==null||W.remove()})))}_registerDecorationListeners(){this.register(this._decorationService.onDecorationRegistered((()=>this._queueRefresh(void 0,!0)))),this.register(this._decorationService.onDecorationRemoved((()=>this._queueRefresh(void 0,!0))))}_registerBufferChangeListeners(){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())})))}_registerDimensionChangeListeners(){this.register(this._renderService.onRender((()=>{this._containerHeight&&this._containerHeight===this._screenElement.clientHeight||(this._queueRefresh(!0),this._containerHeight=this._screenElement.clientHeight)}))),this.register(this._optionsService.onSpecificOptionChange("overviewRulerWidth",(()=>this._queueRefresh(!0)))),this.register(this._coreBrowserService.onDprChange((()=>this._queueRefresh(!0)))),this._queueRefresh(!0)}_refreshDrawConstants(){const y=Math.floor(this._canvas.width/3),E=Math.ceil(this._canvas.width/3);v.full=this._canvas.width,v.left=y,v.center=E,v.right=y,this._refreshDrawHeightConstants(),S.full=0,S.left=0,S.center=v.left,S.right=v.left+v.center}_refreshDrawHeightConstants(){C.full=Math.round(2*this._coreBrowserService.dpr);const y=this._canvas.height/this._bufferService.buffer.lines.length,E=Math.round(Math.max(Math.min(y,12),6)*this._coreBrowserService.dpr);C.left=E,C.center=E,C.right=E}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*C.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*C.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*C.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*C.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(const E of this._decorationService.decorations)this._colorZoneStore.addDecoration(E);this._ctx.lineWidth=1;const y=this._colorZoneStore.zones;for(const E of y)E.position!=="full"&&this._renderColorZone(E);for(const E of y)E.position==="full"&&this._renderColorZone(E);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderColorZone(y){this._ctx.fillStyle=y.color,this._ctx.fillRect(S[y.position||"full"],Math.round((this._canvas.height-1)*(y.startBufferLine/this._bufferService.buffers.active.lines.length)-C[y.position||"full"]/2),v[y.position||"full"],Math.round((this._canvas.height-1)*((y.endBufferLine-y.startBufferLine)/this._bufferService.buffers.active.lines.length)+C[y.position||"full"]))}_queueRefresh(y,E){this._shouldUpdateDimensions=y||this._shouldUpdateDimensions,this._shouldUpdateAnchor=E||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>{this._refreshDecorations(),this._animationFrame=void 0})))}};c.OverviewRulerRenderer=b=f([m(2,w.IBufferService),m(3,w.IDecorationService),m(4,_.IRenderService),m(5,w.IOptionsService),m(6,_.ICoreBrowserService)],b)},2950:function(u,c,d){var f=this&&this.__decorate||function(C,v,S,b){var y,E=arguments.length,N=E<3?v:b===null?b=Object.getOwnPropertyDescriptor(v,S):b;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")N=Reflect.decorate(C,v,S,b);else for(var T=C.length-1;T>=0;T--)(y=C[T])&&(N=(E<3?y(N):E>3?y(v,S,N):y(v,S))||N);return E>3&&N&&Object.defineProperty(v,S,N),N},m=this&&this.__param||function(C,v){return function(S,b){v(S,b,C)}};Object.defineProperty(c,"__esModule",{value:!0}),c.CompositionHelper=void 0;const p=d(4725),_=d(2585),x=d(2584);let w=c.CompositionHelper=class{get isComposing(){return this._isComposing}constructor(C,v,S,b,y,E){this._textarea=C,this._compositionView=v,this._bufferService=S,this._optionsService=b,this._coreService=y,this._renderService=E,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}compositionstart(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")}compositionupdate(C){this._compositionView.textContent=C.data,this.updateCompositionElements(),setTimeout((()=>{this._compositionPosition.end=this._textarea.value.length}),0)}compositionend(){this._finalizeComposition(!0)}keydown(C){if(this._isComposing||this._isSendingComposition){if(C.keyCode===229||C.keyCode===16||C.keyCode===17||C.keyCode===18)return!1;this._finalizeComposition(!1)}return C.keyCode!==229||(this._handleAnyTextareaChanges(),!1)}_finalizeComposition(C){if(this._compositionView.classList.remove("active"),this._isComposing=!1,C){const v={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((()=>{if(this._isSendingComposition){let S;this._isSendingComposition=!1,v.start+=this._dataAlreadySent.length,S=this._isComposing?this._textarea.value.substring(v.start,v.end):this._textarea.value.substring(v.start),S.length>0&&this._coreService.triggerDataEvent(S,!0)}}),0)}else{this._isSendingComposition=!1;const v=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(v,!0)}}_handleAnyTextareaChanges(){const C=this._textarea.value;setTimeout((()=>{if(!this._isComposing){const v=this._textarea.value,S=v.replace(C,"");this._dataAlreadySent=S,v.length>C.length?this._coreService.triggerDataEvent(S,!0):v.length<C.length?this._coreService.triggerDataEvent(`${x.C0.DEL}`,!0):v.length===C.length&&v!==C&&this._coreService.triggerDataEvent(v,!0)}}),0)}updateCompositionElements(C){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){const v=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),S=this._renderService.dimensions.css.cell.height,b=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,y=v*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=y+"px",this._compositionView.style.top=b+"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";const E=this._compositionView.getBoundingClientRect();this._textarea.style.left=y+"px",this._textarea.style.top=b+"px",this._textarea.style.width=Math.max(E.width,1)+"px",this._textarea.style.height=Math.max(E.height,1)+"px",this._textarea.style.lineHeight=E.height+"px"}C||setTimeout((()=>this.updateCompositionElements(!0)),0)}}};c.CompositionHelper=w=f([m(2,_.IBufferService),m(3,_.IOptionsService),m(4,_.ICoreService),m(5,p.IRenderService)],w)},9806:(u,c)=>{function d(f,m,p){const _=p.getBoundingClientRect(),x=f.getComputedStyle(p),w=parseInt(x.getPropertyValue("padding-left")),C=parseInt(x.getPropertyValue("padding-top"));return[m.clientX-_.left-w,m.clientY-_.top-C]}Object.defineProperty(c,"__esModule",{value:!0}),c.getCoords=c.getCoordsRelativeToElement=void 0,c.getCoordsRelativeToElement=d,c.getCoords=function(f,m,p,_,x,w,C,v,S){if(!w)return;const b=d(f,m,p);return b?(b[0]=Math.ceil((b[0]+(S?C/2:0))/C),b[1]=Math.ceil(b[1]/v),b[0]=Math.min(Math.max(b[0],1),_+(S?1:0)),b[1]=Math.min(Math.max(b[1],1),x),b):void 0}},9504:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.moveToCellSequence=void 0;const f=d(2584);function m(v,S,b,y){const E=v-p(v,b),N=S-p(S,b),T=Math.abs(E-N)-(function(L,A,R){let M=0;const G=L-p(L,R),W=A-p(A,R);for(let O=0;O<Math.abs(G-W);O++){const U=_(L,A)==="A"?-1:1,V=R.buffer.lines.get(G+U*O);V!=null&&V.isWrapped&&M++}return M})(v,S,b);return C(T,w(_(v,S),y))}function p(v,S){let b=0,y=S.buffer.lines.get(v),E=y==null?void 0:y.isWrapped;for(;E&&v>=0&&v<S.rows;)b++,y=S.buffer.lines.get(--v),E=y==null?void 0:y.isWrapped;return b}function _(v,S){return v>S?"A":"B"}function x(v,S,b,y,E,N){let T=v,L=S,A="";for(;T!==b||L!==y;)T+=E?1:-1,E&&T>N.cols-1?(A+=N.buffer.translateBufferLineToString(L,!1,v,T),T=0,v=0,L++):!E&&T<0&&(A+=N.buffer.translateBufferLineToString(L,!1,0,v+1),T=N.cols-1,v=T,L--);return A+N.buffer.translateBufferLineToString(L,!1,v,T)}function w(v,S){const b=S?"O":"[";return f.C0.ESC+b+v}function C(v,S){v=Math.floor(v);let b="";for(let y=0;y<v;y++)b+=S;return b}c.moveToCellSequence=function(v,S,b,y){const E=b.buffer.x,N=b.buffer.y;if(!b.buffer.hasScrollback)return(function(A,R,M,G,W,O){return m(R,G,W,O).length===0?"":C(x(A,R,A,R-p(R,W),!1,W).length,w("D",O))})(E,N,0,S,b,y)+m(N,S,b,y)+(function(A,R,M,G,W,O){let U;U=m(R,G,W,O).length>0?G-p(G,W):R;const V=G,z=(function(X,te,H,I,$,F){let P;return P=m(H,I,$,F).length>0?I-p(I,$):te,X<H&&P<=I||X>=H&&P<I?"C":"D"})(A,R,M,G,W,O);return C(x(A,U,M,V,z==="C",W).length,w(z,O))})(E,N,v,S,b,y);let T;if(N===S)return T=E>v?"D":"C",C(Math.abs(E-v),w(T,y));T=N>S?"D":"C";const L=Math.abs(N-S);return C((function(A,R){return R.cols-A})(N>S?v:E,b)+(L-1)*b.cols+1+((N>S?E:v)-1),w(T,y))}},1296:function(u,c,d){var f=this&&this.__decorate||function(O,U,V,z){var X,te=arguments.length,H=te<3?U:z===null?z=Object.getOwnPropertyDescriptor(U,V):z;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")H=Reflect.decorate(O,U,V,z);else for(var I=O.length-1;I>=0;I--)(X=O[I])&&(H=(te<3?X(H):te>3?X(U,V,H):X(U,V))||H);return te>3&&H&&Object.defineProperty(U,V,H),H},m=this&&this.__param||function(O,U){return function(V,z){U(V,z,O)}};Object.defineProperty(c,"__esModule",{value:!0}),c.DomRenderer=void 0;const p=d(3787),_=d(2550),x=d(2223),w=d(6171),C=d(6052),v=d(4725),S=d(8055),b=d(8460),y=d(844),E=d(2585),N="xterm-dom-renderer-owner-",T="xterm-rows",L="xterm-fg-",A="xterm-bg-",R="xterm-focus",M="xterm-selection";let G=1,W=c.DomRenderer=class extends y.Disposable{constructor(O,U,V,z,X,te,H,I,$,F,P,ee,J){super(),this._terminal=O,this._document=U,this._element=V,this._screenElement=z,this._viewportElement=X,this._helperContainer=te,this._linkifier2=H,this._charSizeService=$,this._optionsService=F,this._bufferService=P,this._coreBrowserService=ee,this._themeService=J,this._terminalClass=G++,this._rowElements=[],this._selectionRenderModel=(0,C.createSelectionRenderModel)(),this.onRequestRedraw=this.register(new b.EventEmitter).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(T),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(M),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=(0,w.createRenderDimensions)(),this._updateDimensions(),this.register(this._optionsService.onOptionChange((()=>this._handleOptionsChanged()))),this.register(this._themeService.onChangeColors((re=>this._injectCss(re)))),this._injectCss(this._themeService.colors),this._rowFactory=I.createInstance(p.DomRendererRowFactory,document),this._element.classList.add(N+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this.register(this._linkifier2.onShowLinkUnderline((re=>this._handleLinkHover(re)))),this.register(this._linkifier2.onHideLinkUnderline((re=>this._handleLinkLeave(re)))),this.register((0,y.toDisposable)((()=>{this._element.classList.remove(N+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()}))),this._widthCache=new _.WidthCache(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(){const O=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*O,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*O),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/O),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/O),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(const V of this._rowElements)V.style.width=`${this.dimensions.css.canvas.width}px`,V.style.height=`${this.dimensions.css.cell.height}px`,V.style.lineHeight=`${this.dimensions.css.cell.height}px`,V.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));const U=`${this._terminalSelector} .${T} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=U,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(O){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let U=`${this._terminalSelector} .${T} { color: ${O.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;U+=`${this._terminalSelector} .${T} .xterm-dim { color: ${S.color.multiplyOpacity(O.foreground,.5).css};}`,U+=`${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;}`;const V=`blink_underline_${this._terminalClass}`,z=`blink_bar_${this._terminalClass}`,X=`blink_block_${this._terminalClass}`;U+=`@keyframes ${V} { 50% { border-bottom-style: hidden; }}`,U+=`@keyframes ${z} { 50% { box-shadow: none; }}`,U+=`@keyframes ${X} { 0% { background-color: ${O.cursor.css}; color: ${O.cursorAccent.css}; } 50% { background-color: inherit; color: ${O.cursor.css}; }}`,U+=`${this._terminalSelector} .${T}.${R} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${V} 1s step-end infinite;}${this._terminalSelector} .${T}.${R} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${z} 1s step-end infinite;}${this._terminalSelector} .${T}.${R} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${X} 1s step-end infinite;}${this._terminalSelector} .${T} .xterm-cursor.xterm-cursor-block { background-color: ${O.cursor.css}; color: ${O.cursorAccent.css};}${this._terminalSelector} .${T} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${O.cursor.css} !important; color: ${O.cursorAccent.css} !important;}${this._terminalSelector} .${T} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${O.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${T} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${O.cursor.css} inset;}${this._terminalSelector} .${T} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${O.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,U+=`${this._terminalSelector} .${M} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${M} div { position: absolute; background-color: ${O.selectionBackgroundOpaque.css};}${this._terminalSelector} .${M} div { position: absolute; background-color: ${O.selectionInactiveBackgroundOpaque.css};}`;for(const[te,H]of O.ansi.entries())U+=`${this._terminalSelector} .${L}${te} { color: ${H.css}; }${this._terminalSelector} .${L}${te}.xterm-dim { color: ${S.color.multiplyOpacity(H,.5).css}; }${this._terminalSelector} .${A}${te} { background-color: ${H.css}; }`;U+=`${this._terminalSelector} .${L}${x.INVERTED_DEFAULT_COLOR} { color: ${S.color.opaque(O.background).css}; }${this._terminalSelector} .${L}${x.INVERTED_DEFAULT_COLOR}.xterm-dim { color: ${S.color.multiplyOpacity(S.color.opaque(O.background),.5).css}; }${this._terminalSelector} .${A}${x.INVERTED_DEFAULT_COLOR} { background-color: ${O.foreground.css}; }`,this._themeStyleElement.textContent=U}_setDefaultSpacing(){const O=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${O}px`,this._rowFactory.defaultSpacing=O}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(O,U){for(let V=this._rowElements.length;V<=U;V++){const z=this._document.createElement("div");this._rowContainer.appendChild(z),this._rowElements.push(z)}for(;this._rowElements.length>U;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(O,U){this._refreshRowElements(O,U),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(R),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(R),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(O,U,V){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(O,U,V),this.renderRows(0,this._bufferService.rows-1),!O||!U)return;this._selectionRenderModel.update(this._terminal,O,U,V);const z=this._selectionRenderModel.viewportStartRow,X=this._selectionRenderModel.viewportEndRow,te=this._selectionRenderModel.viewportCappedStartRow,H=this._selectionRenderModel.viewportCappedEndRow;if(te>=this._bufferService.rows||H<0)return;const I=this._document.createDocumentFragment();if(V){const $=O[0]>U[0];I.appendChild(this._createSelectionElement(te,$?U[0]:O[0],$?O[0]:U[0],H-te+1))}else{const $=z===te?O[0]:0,F=te===X?U[0]:this._bufferService.cols;I.appendChild(this._createSelectionElement(te,$,F));const P=H-te-1;if(I.appendChild(this._createSelectionElement(te+1,0,this._bufferService.cols,P)),te!==H){const ee=X===H?U[0]:this._bufferService.cols;I.appendChild(this._createSelectionElement(H,0,ee))}}this._selectionContainer.appendChild(I)}_createSelectionElement(O,U,V,z=1){const X=this._document.createElement("div"),te=U*this.dimensions.css.cell.width;let H=this.dimensions.css.cell.width*(V-U);return te+H>this.dimensions.css.canvas.width&&(H=this.dimensions.css.canvas.width-te),X.style.height=z*this.dimensions.css.cell.height+"px",X.style.top=O*this.dimensions.css.cell.height+"px",X.style.left=`${te}px`,X.style.width=`${H}px`,X}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(const O of this._rowElements)O.replaceChildren()}renderRows(O,U){const V=this._bufferService.buffer,z=V.ybase+V.y,X=Math.min(V.x,this._bufferService.cols-1),te=this._optionsService.rawOptions.cursorBlink,H=this._optionsService.rawOptions.cursorStyle,I=this._optionsService.rawOptions.cursorInactiveStyle;for(let $=O;$<=U;$++){const F=$+V.ydisp,P=this._rowElements[$],ee=V.lines.get(F);if(!P||!ee)break;P.replaceChildren(...this._rowFactory.createRow(ee,F,F===z,H,I,X,te,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${N}${this._terminalClass}`}_handleLinkHover(O){this._setCellUnderline(O.x1,O.x2,O.y1,O.y2,O.cols,!0)}_handleLinkLeave(O){this._setCellUnderline(O.x1,O.x2,O.y1,O.y2,O.cols,!1)}_setCellUnderline(O,U,V,z,X,te){V<0&&(O=0),z<0&&(U=0);const H=this._bufferService.rows-1;V=Math.max(Math.min(V,H),0),z=Math.max(Math.min(z,H),0),X=Math.min(X,this._bufferService.cols);const I=this._bufferService.buffer,$=I.ybase+I.y,F=Math.min(I.x,X-1),P=this._optionsService.rawOptions.cursorBlink,ee=this._optionsService.rawOptions.cursorStyle,J=this._optionsService.rawOptions.cursorInactiveStyle;for(let re=V;re<=z;++re){const Y=re+I.ydisp,q=this._rowElements[re],Z=I.lines.get(Y);if(!q||!Z)break;q.replaceChildren(...this._rowFactory.createRow(Z,Y,Y===$,ee,J,F,P,this.dimensions.css.cell.width,this._widthCache,te?re===V?O:0:-1,te?(re===z?U:X)-1:-1))}}};c.DomRenderer=W=f([m(7,E.IInstantiationService),m(8,v.ICharSizeService),m(9,E.IOptionsService),m(10,E.IBufferService),m(11,v.ICoreBrowserService),m(12,v.IThemeService)],W)},3787:function(u,c,d){var f=this&&this.__decorate||function(T,L,A,R){var M,G=arguments.length,W=G<3?L:R===null?R=Object.getOwnPropertyDescriptor(L,A):R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")W=Reflect.decorate(T,L,A,R);else for(var O=T.length-1;O>=0;O--)(M=T[O])&&(W=(G<3?M(W):G>3?M(L,A,W):M(L,A))||W);return G>3&&W&&Object.defineProperty(L,A,W),W},m=this&&this.__param||function(T,L){return function(A,R){L(A,R,T)}};Object.defineProperty(c,"__esModule",{value:!0}),c.DomRendererRowFactory=void 0;const p=d(2223),_=d(643),x=d(511),w=d(2585),C=d(8055),v=d(4725),S=d(4269),b=d(6171),y=d(3734);let E=c.DomRendererRowFactory=class{constructor(T,L,A,R,M,G,W){this._document=T,this._characterJoinerService=L,this._optionsService=A,this._coreBrowserService=R,this._coreService=M,this._decorationService=G,this._themeService=W,this._workCell=new x.CellData,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(T,L,A){this._selectionStart=T,this._selectionEnd=L,this._columnSelectMode=A}createRow(T,L,A,R,M,G,W,O,U,V,z){const X=[],te=this._characterJoinerService.getJoinedCharacters(L),H=this._themeService.colors;let I,$=T.getNoBgTrimmedLength();A&&$<G+1&&($=G+1);let F=0,P="",ee=0,J=0,re=0,Y=!1,q=0,Z=!1,ae=0;const se=[],oe=V!==-1&&z!==-1;for(let je=0;je<$;je++){T.loadCell(je,this._workCell);let Le=this._workCell.getWidth();if(Le===0)continue;let De=!1,Re=je,Te=this._workCell;if(te.length>0&&je===te[0][0]){De=!0;const Ye=te.shift();Te=new S.JoinedCellData(this._workCell,T.translateToString(!0,Ye[0],Ye[1]),Ye[1]-Ye[0]),Re=Ye[1]-1,Le=Te.getWidth()}const Ae=this._isCellInSelection(je,L),pe=A&&je===G,ce=oe&&je>=V&&je<=z;let Se=!1;this._decorationService.forEachDecorationAtCell(je,L,void 0,(Ye=>{Se=!0}));let Ze=Te.getChars()||_.WHITESPACE_CELL_CHAR;if(Ze===" "&&(Te.isUnderline()||Te.isOverline())&&(Ze=" "),ae=Le*O-U.get(Ze,Te.isBold(),Te.isItalic()),I){if(F&&(Ae&&Z||!Ae&&!Z&&Te.bg===ee)&&(Ae&&Z&&H.selectionForeground||Te.fg===J)&&Te.extended.ext===re&&ce===Y&&ae===q&&!pe&&!De&&!Se){Te.isInvisible()?P+=_.WHITESPACE_CELL_CHAR:P+=Ze,F++;continue}F&&(I.textContent=P),I=this._document.createElement("span"),F=0,P=""}else I=this._document.createElement("span");if(ee=Te.bg,J=Te.fg,re=Te.extended.ext,Y=ce,q=ae,Z=Ae,De&&G>=je&&G<=Re&&(G=je),!this._coreService.isCursorHidden&&pe&&this._coreService.isCursorInitialized){if(se.push("xterm-cursor"),this._coreBrowserService.isFocused)W&&se.push("xterm-cursor-blink"),se.push(R==="bar"?"xterm-cursor-bar":R==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(M)switch(M){case"outline":se.push("xterm-cursor-outline");break;case"block":se.push("xterm-cursor-block");break;case"bar":se.push("xterm-cursor-bar");break;case"underline":se.push("xterm-cursor-underline")}}if(Te.isBold()&&se.push("xterm-bold"),Te.isItalic()&&se.push("xterm-italic"),Te.isDim()&&se.push("xterm-dim"),P=Te.isInvisible()?_.WHITESPACE_CELL_CHAR:Te.getChars()||_.WHITESPACE_CELL_CHAR,Te.isUnderline()&&(se.push(`xterm-underline-${Te.extended.underlineStyle}`),P===" "&&(P=" "),!Te.isUnderlineColorDefault()))if(Te.isUnderlineColorRGB())I.style.textDecorationColor=`rgb(${y.AttributeData.toColorRGB(Te.getUnderlineColor()).join(",")})`;else{let Ye=Te.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&Te.isBold()&&Ye<8&&(Ye+=8),I.style.textDecorationColor=H.ansi[Ye].css}Te.isOverline()&&(se.push("xterm-overline"),P===" "&&(P=" ")),Te.isStrikethrough()&&se.push("xterm-strikethrough"),ce&&(I.style.textDecoration="underline");let _t=Te.getFgColor(),dt=Te.getFgColorMode(),tn=Te.getBgColor(),ge=Te.getBgColorMode();const Ce=!!Te.isInverse();if(Ce){const Ye=_t;_t=tn,tn=Ye;const wt=dt;dt=ge,ge=wt}let Ie,Fe,Ve,St=!1;switch(this._decorationService.forEachDecorationAtCell(je,L,void 0,(Ye=>{Ye.options.layer!=="top"&&St||(Ye.backgroundColorRGB&&(ge=50331648,tn=Ye.backgroundColorRGB.rgba>>8&16777215,Ie=Ye.backgroundColorRGB),Ye.foregroundColorRGB&&(dt=50331648,_t=Ye.foregroundColorRGB.rgba>>8&16777215,Fe=Ye.foregroundColorRGB),St=Ye.options.layer==="top")})),!St&&Ae&&(Ie=this._coreBrowserService.isFocused?H.selectionBackgroundOpaque:H.selectionInactiveBackgroundOpaque,tn=Ie.rgba>>8&16777215,ge=50331648,St=!0,H.selectionForeground&&(dt=50331648,_t=H.selectionForeground.rgba>>8&16777215,Fe=H.selectionForeground)),St&&se.push("xterm-decoration-top"),ge){case 16777216:case 33554432:Ve=H.ansi[tn],se.push(`xterm-bg-${tn}`);break;case 50331648:Ve=C.channels.toColor(tn>>16,tn>>8&255,255&tn),this._addStyle(I,`background-color:#${N((tn>>>0).toString(16),"0",6)}`);break;default:Ce?(Ve=H.foreground,se.push(`xterm-bg-${p.INVERTED_DEFAULT_COLOR}`)):Ve=H.background}switch(Ie||Te.isDim()&&(Ie=C.color.multiplyOpacity(Ve,.5)),dt){case 16777216:case 33554432:Te.isBold()&&_t<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(_t+=8),this._applyMinimumContrast(I,Ve,H.ansi[_t],Te,Ie,void 0)||se.push(`xterm-fg-${_t}`);break;case 50331648:const Ye=C.channels.toColor(_t>>16&255,_t>>8&255,255&_t);this._applyMinimumContrast(I,Ve,Ye,Te,Ie,Fe)||this._addStyle(I,`color:#${N(_t.toString(16),"0",6)}`);break;default:this._applyMinimumContrast(I,Ve,H.foreground,Te,Ie,Fe)||Ce&&se.push(`xterm-fg-${p.INVERTED_DEFAULT_COLOR}`)}se.length&&(I.className=se.join(" "),se.length=0),pe||De||Se?I.textContent=P:F++,ae!==this.defaultSpacing&&(I.style.letterSpacing=`${ae}px`),X.push(I),je=Re}return I&&F&&(I.textContent=P),X}_applyMinimumContrast(T,L,A,R,M,G){if(this._optionsService.rawOptions.minimumContrastRatio===1||(0,b.treatGlyphAsBackgroundColor)(R.getCode()))return!1;const W=this._getContrastCache(R);let O;if(M||G||(O=W.getColor(L.rgba,A.rgba)),O===void 0){const U=this._optionsService.rawOptions.minimumContrastRatio/(R.isDim()?2:1);O=C.color.ensureContrastRatio(M||L,G||A,U),W.setColor((M||L).rgba,(G||A).rgba,O??null)}return!!O&&(this._addStyle(T,`color:${O.css}`),!0)}_getContrastCache(T){return T.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(T,L){T.setAttribute("style",`${T.getAttribute("style")||""}${L};`)}_isCellInSelection(T,L){const A=this._selectionStart,R=this._selectionEnd;return!(!A||!R)&&(this._columnSelectMode?A[0]<=R[0]?T>=A[0]&&L>=A[1]&&T<R[0]&&L<=R[1]:T<A[0]&&L>=A[1]&&T>=R[0]&&L<=R[1]:L>A[1]&&L<R[1]||A[1]===R[1]&&L===A[1]&&T>=A[0]&&T<R[0]||A[1]<R[1]&&L===R[1]&&T<R[0]||A[1]<R[1]&&L===A[1]&&T>=A[0])}};function N(T,L,A){for(;T.length<A;)T=L+T;return T}c.DomRendererRowFactory=E=f([m(1,v.ICharacterJoinerService),m(2,w.IOptionsService),m(3,v.ICoreBrowserService),m(4,w.ICoreService),m(5,w.IDecorationService),m(6,v.IThemeService)],E)},2550:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.WidthCache=void 0,c.WidthCache=class{constructor(d,f){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=d.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";const m=d.createElement("span");m.classList.add("xterm-char-measure-element");const p=d.createElement("span");p.classList.add("xterm-char-measure-element"),p.style.fontWeight="bold";const _=d.createElement("span");_.classList.add("xterm-char-measure-element"),_.style.fontStyle="italic";const x=d.createElement("span");x.classList.add("xterm-char-measure-element"),x.style.fontWeight="bold",x.style.fontStyle="italic",this._measureElements=[m,p,_,x],this._container.appendChild(m),this._container.appendChild(p),this._container.appendChild(_),this._container.appendChild(x),f.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(d,f,m,p){d===this._font&&f===this._fontSize&&m===this._weight&&p===this._weightBold||(this._font=d,this._fontSize=f,this._weight=m,this._weightBold=p,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${m}`,this._measureElements[1].style.fontWeight=`${p}`,this._measureElements[2].style.fontWeight=`${m}`,this._measureElements[3].style.fontWeight=`${p}`,this.clear())}get(d,f,m){let p=0;if(!f&&!m&&d.length===1&&(p=d.charCodeAt(0))<256){if(this._flat[p]!==-9999)return this._flat[p];const w=this._measure(d,0);return w>0&&(this._flat[p]=w),w}let _=d;f&&(_+="B"),m&&(_+="I");let x=this._holey.get(_);if(x===void 0){let w=0;f&&(w|=1),m&&(w|=2),x=this._measure(d,w),x>0&&this._holey.set(_,x)}return x}_measure(d,f){const m=this._measureElements[f];return m.textContent=d.repeat(32),m.offsetWidth/32}}},2223:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.TEXT_BASELINE=c.DIM_OPACITY=c.INVERTED_DEFAULT_COLOR=void 0;const f=d(6114);c.INVERTED_DEFAULT_COLOR=257,c.DIM_OPACITY=.5,c.TEXT_BASELINE=f.isFirefox||f.isLegacyEdge?"bottom":"ideographic"},6171:(u,c)=>{function d(m){return 57508<=m&&m<=57558}function f(m){return m>=128512&&m<=128591||m>=127744&&m<=128511||m>=128640&&m<=128767||m>=9728&&m<=9983||m>=9984&&m<=10175||m>=65024&&m<=65039||m>=129280&&m<=129535||m>=127462&&m<=127487}Object.defineProperty(c,"__esModule",{value:!0}),c.computeNextVariantOffset=c.createRenderDimensions=c.treatGlyphAsBackgroundColor=c.allowRescaling=c.isEmoji=c.isRestrictedPowerlineGlyph=c.isPowerlineGlyph=c.throwIfFalsy=void 0,c.throwIfFalsy=function(m){if(!m)throw new Error("value must not be falsy");return m},c.isPowerlineGlyph=d,c.isRestrictedPowerlineGlyph=function(m){return 57520<=m&&m<=57527},c.isEmoji=f,c.allowRescaling=function(m,p,_,x){return p===1&&_>Math.ceil(1.5*x)&&m!==void 0&&m>255&&!f(m)&&!d(m)&&!(function(w){return 57344<=w&&w<=63743})(m)},c.treatGlyphAsBackgroundColor=function(m){return d(m)||(function(p){return 9472<=p&&p<=9631})(m)},c.createRenderDimensions=function(){return{css:{canvas:{width:0,height:0},cell:{width:0,height:0}},device:{canvas:{width:0,height:0},cell:{width:0,height:0},char:{width:0,height:0,left:0,top:0}}}},c.computeNextVariantOffset=function(m,p,_=0){return(m-(2*Math.round(p)-_))%(2*Math.round(p))}},6052:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.createSelectionRenderModel=void 0;class d{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(m,p,_,x=!1){if(this.selectionStart=p,this.selectionEnd=_,!p||!_||p[0]===_[0]&&p[1]===_[1])return void this.clear();const w=m.buffers.active.ydisp,C=p[1]-w,v=_[1]-w,S=Math.max(C,0),b=Math.min(v,m.rows-1);S>=m.rows||b<0?this.clear():(this.hasSelection=!0,this.columnSelectMode=x,this.viewportStartRow=C,this.viewportEndRow=v,this.viewportCappedStartRow=S,this.viewportCappedEndRow=b,this.startCol=p[0],this.endCol=_[0])}isCellSelected(m,p,_){return!!this.hasSelection&&(_-=m.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?p>=this.startCol&&_>=this.viewportCappedStartRow&&p<this.endCol&&_<=this.viewportCappedEndRow:p<this.startCol&&_>=this.viewportCappedStartRow&&p>=this.endCol&&_<=this.viewportCappedEndRow:_>this.viewportStartRow&&_<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&_===this.viewportStartRow&&p>=this.startCol&&p<this.endCol||this.viewportStartRow<this.viewportEndRow&&_===this.viewportEndRow&&p<this.endCol||this.viewportStartRow<this.viewportEndRow&&_===this.viewportStartRow&&p>=this.startCol)}}c.createSelectionRenderModel=function(){return new d}},456:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.SelectionModel=void 0,c.SelectionModel=class{constructor(d){this._bufferService=d,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.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()){const d=this.selectionStart[0]+this.selectionStartLength;return d>this._bufferService.cols?d%this._bufferService.cols==0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(d/this._bufferService.cols)-1]:[d%this._bufferService.cols,this.selectionStart[1]+Math.floor(d/this._bufferService.cols)]:[d,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){const d=this.selectionStart[0]+this.selectionStartLength;return d>this._bufferService.cols?[d%this._bufferService.cols,this.selectionStart[1]+Math.floor(d/this._bufferService.cols)]:[Math.max(d,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){const d=this.selectionStart,f=this.selectionEnd;return!(!d||!f)&&(d[1]>f[1]||d[1]===f[1]&&d[0]>f[0])}handleTrim(d){return this.selectionStart&&(this.selectionStart[1]-=d),this.selectionEnd&&(this.selectionEnd[1]-=d),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}}},428:function(u,c,d){var f=this&&this.__decorate||function(b,y,E,N){var T,L=arguments.length,A=L<3?y:N===null?N=Object.getOwnPropertyDescriptor(y,E):N;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")A=Reflect.decorate(b,y,E,N);else for(var R=b.length-1;R>=0;R--)(T=b[R])&&(A=(L<3?T(A):L>3?T(y,E,A):T(y,E))||A);return L>3&&A&&Object.defineProperty(y,E,A),A},m=this&&this.__param||function(b,y){return function(E,N){y(E,N,b)}};Object.defineProperty(c,"__esModule",{value:!0}),c.CharSizeService=void 0;const p=d(2585),_=d(8460),x=d(844);let w=c.CharSizeService=class extends x.Disposable{get hasValidSize(){return this.width>0&&this.height>0}constructor(b,y,E){super(),this._optionsService=E,this.width=0,this.height=0,this._onCharSizeChange=this.register(new _.EventEmitter),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this.register(new S(this._optionsService))}catch{this._measureStrategy=this.register(new v(b,y,this._optionsService))}this.register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],(()=>this.measure())))}measure(){const b=this._measureStrategy.measure();b.width===this.width&&b.height===this.height||(this.width=b.width,this.height=b.height,this._onCharSizeChange.fire())}};c.CharSizeService=w=f([m(2,p.IOptionsService)],w);class C extends x.Disposable{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(y,E){y!==void 0&&y>0&&E!==void 0&&E>0&&(this._result.width=y,this._result.height=E)}}class v extends C{constructor(y,E,N){super(),this._document=y,this._parentElement=E,this._optionsService=N,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}}class S extends C{constructor(y){super(),this._optionsService=y,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");const E=this._ctx.measureText("W");if(!("width"in E&&"fontBoundingBoxAscent"in E&&"fontBoundingBoxDescent"in E))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;const y=this._ctx.measureText("W");return this._validateAndSet(y.width,y.fontBoundingBoxAscent+y.fontBoundingBoxDescent),this._result}}},4269:function(u,c,d){var f=this&&this.__decorate||function(S,b,y,E){var N,T=arguments.length,L=T<3?b:E===null?E=Object.getOwnPropertyDescriptor(b,y):E;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")L=Reflect.decorate(S,b,y,E);else for(var A=S.length-1;A>=0;A--)(N=S[A])&&(L=(T<3?N(L):T>3?N(b,y,L):N(b,y))||L);return T>3&&L&&Object.defineProperty(b,y,L),L},m=this&&this.__param||function(S,b){return function(y,E){b(y,E,S)}};Object.defineProperty(c,"__esModule",{value:!0}),c.CharacterJoinerService=c.JoinedCellData=void 0;const p=d(3734),_=d(643),x=d(511),w=d(2585);class C extends p.AttributeData{constructor(b,y,E){super(),this.content=0,this.combinedData="",this.fg=b.fg,this.bg=b.bg,this.combinedData=y,this._width=E}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(b){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}c.JoinedCellData=C;let v=c.CharacterJoinerService=class OS{constructor(b){this._bufferService=b,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new x.CellData}register(b){const y={id:this._nextCharacterJoinerId++,handler:b};return this._characterJoiners.push(y),y.id}deregister(b){for(let y=0;y<this._characterJoiners.length;y++)if(this._characterJoiners[y].id===b)return this._characterJoiners.splice(y,1),!0;return!1}getJoinedCharacters(b){if(this._characterJoiners.length===0)return[];const y=this._bufferService.buffer.lines.get(b);if(!y||y.length===0)return[];const E=[],N=y.translateToString(!0);let T=0,L=0,A=0,R=y.getFg(0),M=y.getBg(0);for(let G=0;G<y.getTrimmedLength();G++)if(y.loadCell(G,this._workCell),this._workCell.getWidth()!==0){if(this._workCell.fg!==R||this._workCell.bg!==M){if(G-T>1){const W=this._getJoinedRanges(N,A,L,y,T);for(let O=0;O<W.length;O++)E.push(W[O])}T=G,A=L,R=this._workCell.fg,M=this._workCell.bg}L+=this._workCell.getChars().length||_.WHITESPACE_CELL_CHAR.length}if(this._bufferService.cols-T>1){const G=this._getJoinedRanges(N,A,L,y,T);for(let W=0;W<G.length;W++)E.push(G[W])}return E}_getJoinedRanges(b,y,E,N,T){const L=b.substring(y,E);let A=[];try{A=this._characterJoiners[0].handler(L)}catch(R){console.error(R)}for(let R=1;R<this._characterJoiners.length;R++)try{const M=this._characterJoiners[R].handler(L);for(let G=0;G<M.length;G++)OS._mergeRanges(A,M[G])}catch(M){console.error(M)}return this._stringRangesToCellRanges(A,N,T),A}_stringRangesToCellRanges(b,y,E){let N=0,T=!1,L=0,A=b[N];if(A){for(let R=E;R<this._bufferService.cols;R++){const M=y.getWidth(R),G=y.getString(R).length||_.WHITESPACE_CELL_CHAR.length;if(M!==0){if(!T&&A[0]<=L&&(A[0]=R,T=!0),A[1]<=L){if(A[1]=R,A=b[++N],!A)break;A[0]<=L?(A[0]=R,T=!0):T=!1}L+=G}}A&&(A[1]=this._bufferService.cols)}}static _mergeRanges(b,y){let E=!1;for(let N=0;N<b.length;N++){const T=b[N];if(E){if(y[1]<=T[0])return b[N-1][1]=y[1],b;if(y[1]<=T[1])return b[N-1][1]=Math.max(y[1],T[1]),b.splice(N,1),b;b.splice(N,1),N--}else{if(y[1]<=T[0])return b.splice(N,0,y),b;if(y[1]<=T[1])return T[0]=Math.min(y[0],T[0]),b;y[0]<T[1]&&(T[0]=Math.min(y[0],T[0]),E=!0)}}return E?b[b.length-1][1]=y[1]:b.push(y),b}};c.CharacterJoinerService=v=f([m(0,w.IBufferService)],v)},5114:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.CoreBrowserService=void 0;const f=d(844),m=d(8460),p=d(3656);class _ extends f.Disposable{constructor(C,v,S){super(),this._textarea=C,this._window=v,this.mainDocument=S,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=new x(this._window),this._onDprChange=this.register(new m.EventEmitter),this.onDprChange=this._onDprChange.event,this._onWindowChange=this.register(new m.EventEmitter),this.onWindowChange=this._onWindowChange.event,this.register(this.onWindowChange((b=>this._screenDprMonitor.setWindow(b)))),this.register((0,m.forwardEvent)(this._screenDprMonitor.onDprChange,this._onDprChange)),this._textarea.addEventListener("focus",(()=>this._isFocused=!0)),this._textarea.addEventListener("blur",(()=>this._isFocused=!1))}get window(){return this._window}set window(C){this._window!==C&&(this._window=C,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}}c.CoreBrowserService=_;class x extends f.Disposable{constructor(C){super(),this._parentWindow=C,this._windowResizeListener=this.register(new f.MutableDisposable),this._onDprChange=this.register(new m.EventEmitter),this.onDprChange=this._onDprChange.event,this._outerListener=()=>this._setDprAndFireIfDiffers(),this._currentDevicePixelRatio=this._parentWindow.devicePixelRatio,this._updateDpr(),this._setWindowResizeListener(),this.register((0,f.toDisposable)((()=>this.clearListener())))}setWindow(C){this._parentWindow=C,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=(0,p.addDisposableDomListener)(this._parentWindow,"resize",(()=>this._setDprAndFireIfDiffers()))}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){var C;this._outerListener&&((C=this._resolutionMediaMatchList)==null||C.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)}}},779:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.LinkProviderService=void 0;const f=d(844);class m extends f.Disposable{constructor(){super(),this.linkProviders=[],this.register((0,f.toDisposable)((()=>this.linkProviders.length=0)))}registerLinkProvider(_){return this.linkProviders.push(_),{dispose:()=>{const x=this.linkProviders.indexOf(_);x!==-1&&this.linkProviders.splice(x,1)}}}}c.LinkProviderService=m},8934:function(u,c,d){var f=this&&this.__decorate||function(w,C,v,S){var b,y=arguments.length,E=y<3?C:S===null?S=Object.getOwnPropertyDescriptor(C,v):S;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")E=Reflect.decorate(w,C,v,S);else for(var N=w.length-1;N>=0;N--)(b=w[N])&&(E=(y<3?b(E):y>3?b(C,v,E):b(C,v))||E);return y>3&&E&&Object.defineProperty(C,v,E),E},m=this&&this.__param||function(w,C){return function(v,S){C(v,S,w)}};Object.defineProperty(c,"__esModule",{value:!0}),c.MouseService=void 0;const p=d(4725),_=d(9806);let x=c.MouseService=class{constructor(w,C){this._renderService=w,this._charSizeService=C}getCoords(w,C,v,S,b){return(0,_.getCoords)(window,w,C,v,S,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,b)}getMouseReportCoords(w,C){const v=(0,_.getCoordsRelativeToElement)(window,w,C);if(this._charSizeService.hasValidSize)return v[0]=Math.min(Math.max(v[0],0),this._renderService.dimensions.css.canvas.width-1),v[1]=Math.min(Math.max(v[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(v[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(v[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(v[0]),y:Math.floor(v[1])}}};c.MouseService=x=f([m(0,p.IRenderService),m(1,p.ICharSizeService)],x)},3230:function(u,c,d){var f=this&&this.__decorate||function(b,y,E,N){var T,L=arguments.length,A=L<3?y:N===null?N=Object.getOwnPropertyDescriptor(y,E):N;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")A=Reflect.decorate(b,y,E,N);else for(var R=b.length-1;R>=0;R--)(T=b[R])&&(A=(L<3?T(A):L>3?T(y,E,A):T(y,E))||A);return L>3&&A&&Object.defineProperty(y,E,A),A},m=this&&this.__param||function(b,y){return function(E,N){y(E,N,b)}};Object.defineProperty(c,"__esModule",{value:!0}),c.RenderService=void 0;const p=d(6193),_=d(4725),x=d(8460),w=d(844),C=d(7226),v=d(2585);let S=c.RenderService=class extends w.Disposable{get dimensions(){return this._renderer.value.dimensions}constructor(b,y,E,N,T,L,A,R){super(),this._rowCount=b,this._charSizeService=N,this._renderer=this.register(new w.MutableDisposable),this._pausedResizeTask=new C.DebouncedIdleTask,this._observerDisposable=this.register(new w.MutableDisposable),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 x.EventEmitter),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this.register(new x.EventEmitter),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this.register(new x.EventEmitter),this.onRender=this._onRender.event,this._onRefreshRequest=this.register(new x.EventEmitter),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new p.RenderDebouncer(((M,G)=>this._renderRows(M,G)),A),this.register(this._renderDebouncer),this.register(A.onDprChange((()=>this.handleDevicePixelRatioChange()))),this.register(L.onResize((()=>this._fullRefresh()))),this.register(L.buffers.onBufferActivate((()=>{var M;return(M=this._renderer.value)==null?void 0:M.clear()}))),this.register(E.onOptionChange((()=>this._handleOptionsChanged()))),this.register(this._charSizeService.onCharSizeChange((()=>this.handleCharSizeChanged()))),this.register(T.onDecorationRegistered((()=>this._fullRefresh()))),this.register(T.onDecorationRemoved((()=>this._fullRefresh()))),this.register(E.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],(()=>{this.clear(),this.handleResize(L.cols,L.rows),this._fullRefresh()}))),this.register(E.onMultipleOptionChange(["cursorBlink","cursorStyle"],(()=>this.refreshRows(L.buffer.y,L.buffer.y,!0)))),this.register(R.onChangeColors((()=>this._fullRefresh()))),this._registerIntersectionObserver(A.window,y),this.register(A.onWindowChange((M=>this._registerIntersectionObserver(M,y))))}_registerIntersectionObserver(b,y){if("IntersectionObserver"in b){const E=new b.IntersectionObserver((N=>this._handleIntersectionChange(N[N.length-1])),{threshold:0});E.observe(y),this._observerDisposable.value=(0,w.toDisposable)((()=>E.disconnect()))}}_handleIntersectionChange(b){this._isPaused=b.isIntersecting===void 0?b.intersectionRatio===0:!b.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(b,y,E=!1){this._isPaused?this._needsFullRefresh=!0:(E||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(b,y,this._rowCount))}_renderRows(b,y){this._renderer.value&&(b=Math.min(b,this._rowCount-1),y=Math.min(y,this._rowCount-1),this._renderer.value.renderRows(b,y),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:b,end:y}),this._onRender.fire({start:b,end:y}),this._isNextRenderRedrawOnly=!0)}resize(b,y){this._rowCount=y,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(b){this._renderer.value=b,this._renderer.value&&(this._renderer.value.onRequestRedraw((y=>this.refreshRows(y.start,y.end,!0))),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(b){return this._renderDebouncer.addRefreshCallback(b)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){var b,y;this._renderer.value&&((y=(b=this._renderer.value).clearTextureAtlas)==null||y.call(b),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(b,y){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set((()=>{var E;return(E=this._renderer.value)==null?void 0:E.handleResize(b,y)})):this._renderer.value.handleResize(b,y),this._fullRefresh())}handleCharSizeChanged(){var b;(b=this._renderer.value)==null||b.handleCharSizeChanged()}handleBlur(){var b;(b=this._renderer.value)==null||b.handleBlur()}handleFocus(){var b;(b=this._renderer.value)==null||b.handleFocus()}handleSelectionChanged(b,y,E){var N;this._selectionState.start=b,this._selectionState.end=y,this._selectionState.columnSelectMode=E,(N=this._renderer.value)==null||N.handleSelectionChanged(b,y,E)}handleCursorMove(){var b;(b=this._renderer.value)==null||b.handleCursorMove()}clear(){var b;(b=this._renderer.value)==null||b.clear()}};c.RenderService=S=f([m(2,v.IOptionsService),m(3,_.ICharSizeService),m(4,v.IDecorationService),m(5,v.IBufferService),m(6,_.ICoreBrowserService),m(7,_.IThemeService)],S)},9312:function(u,c,d){var f=this&&this.__decorate||function(A,R,M,G){var W,O=arguments.length,U=O<3?R:G===null?G=Object.getOwnPropertyDescriptor(R,M):G;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")U=Reflect.decorate(A,R,M,G);else for(var V=A.length-1;V>=0;V--)(W=A[V])&&(U=(O<3?W(U):O>3?W(R,M,U):W(R,M))||U);return O>3&&U&&Object.defineProperty(R,M,U),U},m=this&&this.__param||function(A,R){return function(M,G){R(M,G,A)}};Object.defineProperty(c,"__esModule",{value:!0}),c.SelectionService=void 0;const p=d(9806),_=d(9504),x=d(456),w=d(4725),C=d(8460),v=d(844),S=d(6114),b=d(4841),y=d(511),E=d(2585),N=" ",T=new RegExp(N,"g");let L=c.SelectionService=class extends v.Disposable{constructor(A,R,M,G,W,O,U,V,z){super(),this._element=A,this._screenElement=R,this._linkifier=M,this._bufferService=G,this._coreService=W,this._mouseService=O,this._optionsService=U,this._renderService=V,this._coreBrowserService=z,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new y.CellData,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this.register(new C.EventEmitter),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this.register(new C.EventEmitter),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this.register(new C.EventEmitter),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this.register(new C.EventEmitter),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=X=>this._handleMouseMove(X),this._mouseUpListener=X=>this._handleMouseUp(X),this._coreService.onUserInput((()=>{this.hasSelection&&this.clearSelection()})),this._trimListener=this._bufferService.buffer.lines.onTrim((X=>this._handleTrim(X))),this.register(this._bufferService.buffers.onBufferActivate((X=>this._handleBufferActivate(X)))),this.enable(),this._model=new x.SelectionModel(this._bufferService),this._activeSelectionMode=0,this.register((0,v.toDisposable)((()=>{this._removeMouseDownListeners()})))}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(){const A=this._model.finalSelectionStart,R=this._model.finalSelectionEnd;return!(!A||!R||A[0]===R[0]&&A[1]===R[1])}get selectionText(){const A=this._model.finalSelectionStart,R=this._model.finalSelectionEnd;if(!A||!R)return"";const M=this._bufferService.buffer,G=[];if(this._activeSelectionMode===3){if(A[0]===R[0])return"";const W=A[0]<R[0]?A[0]:R[0],O=A[0]<R[0]?R[0]:A[0];for(let U=A[1];U<=R[1];U++){const V=M.translateBufferLineToString(U,!0,W,O);G.push(V)}}else{const W=A[1]===R[1]?R[0]:void 0;G.push(M.translateBufferLineToString(A[1],!0,A[0],W));for(let O=A[1]+1;O<=R[1]-1;O++){const U=M.lines.get(O),V=M.translateBufferLineToString(O,!0);U!=null&&U.isWrapped?G[G.length-1]+=V:G.push(V)}if(A[1]!==R[1]){const O=M.lines.get(R[1]),U=M.translateBufferLineToString(R[1],!0,0,R[0]);O&&O.isWrapped?G[G.length-1]+=U:G.push(U)}}return G.map((W=>W.replace(T," "))).join(S.isWindows?`\r
65
+ `:`
66
+ `)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(A){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame((()=>this._refresh()))),S.isLinux&&A&&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(A){const R=this._getMouseBufferCoords(A),M=this._model.finalSelectionStart,G=this._model.finalSelectionEnd;return!!(M&&G&&R)&&this._areCoordsInSelection(R,M,G)}isCellInSelection(A,R){const M=this._model.finalSelectionStart,G=this._model.finalSelectionEnd;return!(!M||!G)&&this._areCoordsInSelection([A,R],M,G)}_areCoordsInSelection(A,R,M){return A[1]>R[1]&&A[1]<M[1]||R[1]===M[1]&&A[1]===R[1]&&A[0]>=R[0]&&A[0]<M[0]||R[1]<M[1]&&A[1]===M[1]&&A[0]<M[0]||R[1]<M[1]&&A[1]===R[1]&&A[0]>=R[0]}_selectWordAtCursor(A,R){var W,O;const M=(O=(W=this._linkifier.currentLink)==null?void 0:W.link)==null?void 0:O.range;if(M)return this._model.selectionStart=[M.start.x-1,M.start.y-1],this._model.selectionStartLength=(0,b.getRangeLength)(M,this._bufferService.cols),this._model.selectionEnd=void 0,!0;const G=this._getMouseBufferCoords(A);return!!G&&(this._selectWordAt(G,R),this._model.selectionEnd=void 0,!0)}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(A,R){this._model.clearSelection(),A=Math.max(A,0),R=Math.min(R,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,A],this._model.selectionEnd=[this._bufferService.cols,R],this.refresh(),this._onSelectionChange.fire()}_handleTrim(A){this._model.handleTrim(A)&&this.refresh()}_getMouseBufferCoords(A){const R=this._mouseService.getCoords(A,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(R)return R[0]--,R[1]--,R[1]+=this._bufferService.buffer.ydisp,R}_getMouseEventScrollAmount(A){let R=(0,p.getCoordsRelativeToElement)(this._coreBrowserService.window,A,this._screenElement)[1];const M=this._renderService.dimensions.css.canvas.height;return R>=0&&R<=M?0:(R>M&&(R-=M),R=Math.min(Math.max(R,-50),50),R/=50,R/Math.abs(R)+Math.round(14*R))}shouldForceSelection(A){return S.isMac?A.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:A.shiftKey}handleMouseDown(A){if(this._mouseDownTimeStamp=A.timeStamp,(A.button!==2||!this.hasSelection)&&A.button===0){if(!this._enabled){if(!this.shouldForceSelection(A))return;A.stopPropagation()}A.preventDefault(),this._dragScrollAmount=0,this._enabled&&A.shiftKey?this._handleIncrementalClick(A):A.detail===1?this._handleSingleClick(A):A.detail===2?this._handleDoubleClick(A):A.detail===3&&this._handleTripleClick(A),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()),50)}_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(A){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(A))}_handleSingleClick(A){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(A)?3:0,this._model.selectionStart=this._getMouseBufferCoords(A),!this._model.selectionStart)return;this._model.selectionEnd=void 0;const R=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);R&&R.length!==this._model.selectionStart[0]&&R.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(A){this._selectWordAtCursor(A,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(A){const R=this._getMouseBufferCoords(A);R&&(this._activeSelectionMode=2,this._selectLineAt(R[1]))}shouldColumnSelect(A){return A.altKey&&!(S.isMac&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(A){if(A.stopImmediatePropagation(),!this._model.selectionStart)return;const R=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(A),!this._model.selectionEnd)return void this.refresh(!0);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(A),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));const M=this._bufferService.buffer;if(this._model.selectionEnd[1]<M.lines.length){const G=M.lines.get(this._model.selectionEnd[1]);G&&G.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}R&&R[0]===this._model.selectionEnd[0]&&R[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});const A=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(A.ydisp+this._bufferService.rows,A.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=A.ydisp),this.refresh()}}_handleMouseUp(A){const R=A.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&R<500&&A.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){const M=this._mouseService.getCoords(A,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(M&&M[0]!==void 0&&M[1]!==void 0){const G=(0,_.moveToCellSequence)(M[0]-1,M[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(G,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){const A=this._model.finalSelectionStart,R=this._model.finalSelectionEnd,M=!(!A||!R||A[0]===R[0]&&A[1]===R[1]);M?A&&R&&(this._oldSelectionStart&&this._oldSelectionEnd&&A[0]===this._oldSelectionStart[0]&&A[1]===this._oldSelectionStart[1]&&R[0]===this._oldSelectionEnd[0]&&R[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(A,R,M)):this._oldHasSelection&&this._fireOnSelectionChange(A,R,M)}_fireOnSelectionChange(A,R,M){this._oldSelectionStart=A,this._oldSelectionEnd=R,this._oldHasSelection=M,this._onSelectionChange.fire()}_handleBufferActivate(A){this.clearSelection(),this._trimListener.dispose(),this._trimListener=A.activeBuffer.lines.onTrim((R=>this._handleTrim(R)))}_convertViewportColToCharacterIndex(A,R){let M=R;for(let G=0;R>=G;G++){const W=A.loadCell(G,this._workCell).getChars().length;this._workCell.getWidth()===0?M--:W>1&&R!==G&&(M+=W-1)}return M}setSelection(A,R,M){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[A,R],this._model.selectionStartLength=M,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(A){this._isClickInSelection(A)||(this._selectWordAtCursor(A,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(A,R,M=!0,G=!0){if(A[0]>=this._bufferService.cols)return;const W=this._bufferService.buffer,O=W.lines.get(A[1]);if(!O)return;const U=W.translateBufferLineToString(A[1],!1);let V=this._convertViewportColToCharacterIndex(O,A[0]),z=V;const X=A[0]-V;let te=0,H=0,I=0,$=0;if(U.charAt(V)===" "){for(;V>0&&U.charAt(V-1)===" ";)V--;for(;z<U.length&&U.charAt(z+1)===" ";)z++}else{let ee=A[0],J=A[0];O.getWidth(ee)===0&&(te++,ee--),O.getWidth(J)===2&&(H++,J++);const re=O.getString(J).length;for(re>1&&($+=re-1,z+=re-1);ee>0&&V>0&&!this._isCharWordSeparator(O.loadCell(ee-1,this._workCell));){O.loadCell(ee-1,this._workCell);const Y=this._workCell.getChars().length;this._workCell.getWidth()===0?(te++,ee--):Y>1&&(I+=Y-1,V-=Y-1),V--,ee--}for(;J<O.length&&z+1<U.length&&!this._isCharWordSeparator(O.loadCell(J+1,this._workCell));){O.loadCell(J+1,this._workCell);const Y=this._workCell.getChars().length;this._workCell.getWidth()===2?(H++,J++):Y>1&&($+=Y-1,z+=Y-1),z++,J++}}z++;let F=V+X-te+I,P=Math.min(this._bufferService.cols,z-V+te+H-I-$);if(R||U.slice(V,z).trim()!==""){if(M&&F===0&&O.getCodePoint(0)!==32){const ee=W.lines.get(A[1]-1);if(ee&&O.isWrapped&&ee.getCodePoint(this._bufferService.cols-1)!==32){const J=this._getWordAt([this._bufferService.cols-1,A[1]-1],!1,!0,!1);if(J){const re=this._bufferService.cols-J.start;F-=re,P+=re}}}if(G&&F+P===this._bufferService.cols&&O.getCodePoint(this._bufferService.cols-1)!==32){const ee=W.lines.get(A[1]+1);if(ee!=null&&ee.isWrapped&&ee.getCodePoint(0)!==32){const J=this._getWordAt([0,A[1]+1],!1,!1,!0);J&&(P+=J.length)}}return{start:F,length:P}}}_selectWordAt(A,R){const M=this._getWordAt(A,R);if(M){for(;M.start<0;)M.start+=this._bufferService.cols,A[1]--;this._model.selectionStart=[M.start,A[1]],this._model.selectionStartLength=M.length}}_selectToWordAt(A){const R=this._getWordAt(A,!0);if(R){let M=A[1];for(;R.start<0;)R.start+=this._bufferService.cols,M--;if(!this._model.areSelectionValuesReversed())for(;R.start+R.length>this._bufferService.cols;)R.length-=this._bufferService.cols,M++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?R.start:R.start+R.length,M]}}_isCharWordSeparator(A){return A.getWidth()!==0&&this._optionsService.rawOptions.wordSeparator.indexOf(A.getChars())>=0}_selectLineAt(A){const R=this._bufferService.buffer.getWrappedRangeForLine(A),M={start:{x:0,y:R.first},end:{x:this._bufferService.cols-1,y:R.last}};this._model.selectionStart=[0,R.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=(0,b.getRangeLength)(M,this._bufferService.cols)}};c.SelectionService=L=f([m(3,E.IBufferService),m(4,E.ICoreService),m(5,w.IMouseService),m(6,E.IOptionsService),m(7,w.IRenderService),m(8,w.ICoreBrowserService)],L)},4725:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.ILinkProviderService=c.IThemeService=c.ICharacterJoinerService=c.ISelectionService=c.IRenderService=c.IMouseService=c.ICoreBrowserService=c.ICharSizeService=void 0;const f=d(8343);c.ICharSizeService=(0,f.createDecorator)("CharSizeService"),c.ICoreBrowserService=(0,f.createDecorator)("CoreBrowserService"),c.IMouseService=(0,f.createDecorator)("MouseService"),c.IRenderService=(0,f.createDecorator)("RenderService"),c.ISelectionService=(0,f.createDecorator)("SelectionService"),c.ICharacterJoinerService=(0,f.createDecorator)("CharacterJoinerService"),c.IThemeService=(0,f.createDecorator)("ThemeService"),c.ILinkProviderService=(0,f.createDecorator)("LinkProviderService")},6731:function(u,c,d){var f=this&&this.__decorate||function(L,A,R,M){var G,W=arguments.length,O=W<3?A:M===null?M=Object.getOwnPropertyDescriptor(A,R):M;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")O=Reflect.decorate(L,A,R,M);else for(var U=L.length-1;U>=0;U--)(G=L[U])&&(O=(W<3?G(O):W>3?G(A,R,O):G(A,R))||O);return W>3&&O&&Object.defineProperty(A,R,O),O},m=this&&this.__param||function(L,A){return function(R,M){A(R,M,L)}};Object.defineProperty(c,"__esModule",{value:!0}),c.ThemeService=c.DEFAULT_ANSI_COLORS=void 0;const p=d(7239),_=d(8055),x=d(8460),w=d(844),C=d(2585),v=_.css.toColor("#ffffff"),S=_.css.toColor("#000000"),b=_.css.toColor("#ffffff"),y=_.css.toColor("#000000"),E={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};c.DEFAULT_ANSI_COLORS=Object.freeze((()=>{const L=[_.css.toColor("#2e3436"),_.css.toColor("#cc0000"),_.css.toColor("#4e9a06"),_.css.toColor("#c4a000"),_.css.toColor("#3465a4"),_.css.toColor("#75507b"),_.css.toColor("#06989a"),_.css.toColor("#d3d7cf"),_.css.toColor("#555753"),_.css.toColor("#ef2929"),_.css.toColor("#8ae234"),_.css.toColor("#fce94f"),_.css.toColor("#729fcf"),_.css.toColor("#ad7fa8"),_.css.toColor("#34e2e2"),_.css.toColor("#eeeeec")],A=[0,95,135,175,215,255];for(let R=0;R<216;R++){const M=A[R/36%6|0],G=A[R/6%6|0],W=A[R%6];L.push({css:_.channels.toCss(M,G,W),rgba:_.channels.toRgba(M,G,W)})}for(let R=0;R<24;R++){const M=8+10*R;L.push({css:_.channels.toCss(M,M,M),rgba:_.channels.toRgba(M,M,M)})}return L})());let N=c.ThemeService=class extends w.Disposable{get colors(){return this._colors}constructor(L){super(),this._optionsService=L,this._contrastCache=new p.ColorContrastCache,this._halfContrastCache=new p.ColorContrastCache,this._onChangeColors=this.register(new x.EventEmitter),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:v,background:S,cursor:b,cursorAccent:y,selectionForeground:void 0,selectionBackgroundTransparent:E,selectionBackgroundOpaque:_.color.blend(S,E),selectionInactiveBackgroundTransparent:E,selectionInactiveBackgroundOpaque:_.color.blend(S,E),ansi:c.DEFAULT_ANSI_COLORS.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))))}_setTheme(L={}){const A=this._colors;if(A.foreground=T(L.foreground,v),A.background=T(L.background,S),A.cursor=T(L.cursor,b),A.cursorAccent=T(L.cursorAccent,y),A.selectionBackgroundTransparent=T(L.selectionBackground,E),A.selectionBackgroundOpaque=_.color.blend(A.background,A.selectionBackgroundTransparent),A.selectionInactiveBackgroundTransparent=T(L.selectionInactiveBackground,A.selectionBackgroundTransparent),A.selectionInactiveBackgroundOpaque=_.color.blend(A.background,A.selectionInactiveBackgroundTransparent),A.selectionForeground=L.selectionForeground?T(L.selectionForeground,_.NULL_COLOR):void 0,A.selectionForeground===_.NULL_COLOR&&(A.selectionForeground=void 0),_.color.isOpaque(A.selectionBackgroundTransparent)&&(A.selectionBackgroundTransparent=_.color.opacity(A.selectionBackgroundTransparent,.3)),_.color.isOpaque(A.selectionInactiveBackgroundTransparent)&&(A.selectionInactiveBackgroundTransparent=_.color.opacity(A.selectionInactiveBackgroundTransparent,.3)),A.ansi=c.DEFAULT_ANSI_COLORS.slice(),A.ansi[0]=T(L.black,c.DEFAULT_ANSI_COLORS[0]),A.ansi[1]=T(L.red,c.DEFAULT_ANSI_COLORS[1]),A.ansi[2]=T(L.green,c.DEFAULT_ANSI_COLORS[2]),A.ansi[3]=T(L.yellow,c.DEFAULT_ANSI_COLORS[3]),A.ansi[4]=T(L.blue,c.DEFAULT_ANSI_COLORS[4]),A.ansi[5]=T(L.magenta,c.DEFAULT_ANSI_COLORS[5]),A.ansi[6]=T(L.cyan,c.DEFAULT_ANSI_COLORS[6]),A.ansi[7]=T(L.white,c.DEFAULT_ANSI_COLORS[7]),A.ansi[8]=T(L.brightBlack,c.DEFAULT_ANSI_COLORS[8]),A.ansi[9]=T(L.brightRed,c.DEFAULT_ANSI_COLORS[9]),A.ansi[10]=T(L.brightGreen,c.DEFAULT_ANSI_COLORS[10]),A.ansi[11]=T(L.brightYellow,c.DEFAULT_ANSI_COLORS[11]),A.ansi[12]=T(L.brightBlue,c.DEFAULT_ANSI_COLORS[12]),A.ansi[13]=T(L.brightMagenta,c.DEFAULT_ANSI_COLORS[13]),A.ansi[14]=T(L.brightCyan,c.DEFAULT_ANSI_COLORS[14]),A.ansi[15]=T(L.brightWhite,c.DEFAULT_ANSI_COLORS[15]),L.extendedAnsi){const R=Math.min(A.ansi.length-16,L.extendedAnsi.length);for(let M=0;M<R;M++)A.ansi[M+16]=T(L.extendedAnsi[M],c.DEFAULT_ANSI_COLORS[M+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(L){this._restoreColor(L),this._onChangeColors.fire(this.colors)}_restoreColor(L){if(L!==void 0)switch(L){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[L]=this._restoreColors.ansi[L]}else for(let A=0;A<this._restoreColors.ansi.length;++A)this._colors.ansi[A]=this._restoreColors.ansi[A]}modifyColors(L){L(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()}}};function T(L,A){if(L!==void 0)try{return _.css.toColor(L)}catch{}return A}c.ThemeService=N=f([m(0,C.IOptionsService)],N)},6349:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.CircularList=void 0;const f=d(8460),m=d(844);class p extends m.Disposable{constructor(x){super(),this._maxLength=x,this.onDeleteEmitter=this.register(new f.EventEmitter),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this.register(new f.EventEmitter),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this.register(new f.EventEmitter),this.onTrim=this.onTrimEmitter.event,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(x){if(this._maxLength===x)return;const w=new Array(x);for(let C=0;C<Math.min(x,this.length);C++)w[C]=this._array[this._getCyclicIndex(C)];this._array=w,this._maxLength=x,this._startIndex=0}get length(){return this._length}set length(x){if(x>this._length)for(let w=this._length;w<x;w++)this._array[w]=void 0;this._length=x}get(x){return this._array[this._getCyclicIndex(x)]}set(x,w){this._array[this._getCyclicIndex(x)]=w}push(x){this._array[this._getCyclicIndex(this._length)]=x,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(x,w,...C){if(w){for(let v=x;v<this._length-w;v++)this._array[this._getCyclicIndex(v)]=this._array[this._getCyclicIndex(v+w)];this._length-=w,this.onDeleteEmitter.fire({index:x,amount:w})}for(let v=this._length-1;v>=x;v--)this._array[this._getCyclicIndex(v+C.length)]=this._array[this._getCyclicIndex(v)];for(let v=0;v<C.length;v++)this._array[this._getCyclicIndex(x+v)]=C[v];if(C.length&&this.onInsertEmitter.fire({index:x,amount:C.length}),this._length+C.length>this._maxLength){const v=this._length+C.length-this._maxLength;this._startIndex+=v,this._length=this._maxLength,this.onTrimEmitter.fire(v)}else this._length+=C.length}trimStart(x){x>this._length&&(x=this._length),this._startIndex+=x,this._length-=x,this.onTrimEmitter.fire(x)}shiftElements(x,w,C){if(!(w<=0)){if(x<0||x>=this._length)throw new Error("start argument out of range");if(x+C<0)throw new Error("Cannot shift elements in list beyond index 0");if(C>0){for(let S=w-1;S>=0;S--)this.set(x+S+C,this.get(x+S));const v=x+w+C-this._length;if(v>0)for(this._length+=v;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let v=0;v<w;v++)this.set(x+v+C,this.get(x+v))}}_getCyclicIndex(x){return(this._startIndex+x)%this._maxLength}}c.CircularList=p},1439:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.clone=void 0,c.clone=function d(f,m=5){if(typeof f!="object")return f;const p=Array.isArray(f)?[]:{};for(const _ in f)p[_]=m<=1?f[_]:f[_]&&d(f[_],m-1);return p}},8055:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.contrastRatio=c.toPaddedHex=c.rgba=c.rgb=c.css=c.color=c.channels=c.NULL_COLOR=void 0;let d=0,f=0,m=0,p=0;var _,x,w,C,v;function S(y){const E=y.toString(16);return E.length<2?"0"+E:E}function b(y,E){return y<E?(E+.05)/(y+.05):(y+.05)/(E+.05)}c.NULL_COLOR={css:"#00000000",rgba:0},(function(y){y.toCss=function(E,N,T,L){return L!==void 0?`#${S(E)}${S(N)}${S(T)}${S(L)}`:`#${S(E)}${S(N)}${S(T)}`},y.toRgba=function(E,N,T,L=255){return(E<<24|N<<16|T<<8|L)>>>0},y.toColor=function(E,N,T,L){return{css:y.toCss(E,N,T,L),rgba:y.toRgba(E,N,T,L)}}})(_||(c.channels=_={})),(function(y){function E(N,T){return p=Math.round(255*T),[d,f,m]=v.toChannels(N.rgba),{css:_.toCss(d,f,m,p),rgba:_.toRgba(d,f,m,p)}}y.blend=function(N,T){if(p=(255&T.rgba)/255,p===1)return{css:T.css,rgba:T.rgba};const L=T.rgba>>24&255,A=T.rgba>>16&255,R=T.rgba>>8&255,M=N.rgba>>24&255,G=N.rgba>>16&255,W=N.rgba>>8&255;return d=M+Math.round((L-M)*p),f=G+Math.round((A-G)*p),m=W+Math.round((R-W)*p),{css:_.toCss(d,f,m),rgba:_.toRgba(d,f,m)}},y.isOpaque=function(N){return(255&N.rgba)==255},y.ensureContrastRatio=function(N,T,L){const A=v.ensureContrastRatio(N.rgba,T.rgba,L);if(A)return _.toColor(A>>24&255,A>>16&255,A>>8&255)},y.opaque=function(N){const T=(255|N.rgba)>>>0;return[d,f,m]=v.toChannels(T),{css:_.toCss(d,f,m),rgba:T}},y.opacity=E,y.multiplyOpacity=function(N,T){return p=255&N.rgba,E(N,p*T/255)},y.toColorRGB=function(N){return[N.rgba>>24&255,N.rgba>>16&255,N.rgba>>8&255]}})(x||(c.color=x={})),(function(y){let E,N;try{const T=document.createElement("canvas");T.width=1,T.height=1;const L=T.getContext("2d",{willReadFrequently:!0});L&&(E=L,E.globalCompositeOperation="copy",N=E.createLinearGradient(0,0,1,1))}catch{}y.toColor=function(T){if(T.match(/#[\da-f]{3,8}/i))switch(T.length){case 4:return d=parseInt(T.slice(1,2).repeat(2),16),f=parseInt(T.slice(2,3).repeat(2),16),m=parseInt(T.slice(3,4).repeat(2),16),_.toColor(d,f,m);case 5:return d=parseInt(T.slice(1,2).repeat(2),16),f=parseInt(T.slice(2,3).repeat(2),16),m=parseInt(T.slice(3,4).repeat(2),16),p=parseInt(T.slice(4,5).repeat(2),16),_.toColor(d,f,m,p);case 7:return{css:T,rgba:(parseInt(T.slice(1),16)<<8|255)>>>0};case 9:return{css:T,rgba:parseInt(T.slice(1),16)>>>0}}const L=T.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 d=parseInt(L[1]),f=parseInt(L[2]),m=parseInt(L[3]),p=Math.round(255*(L[5]===void 0?1:parseFloat(L[5]))),_.toColor(d,f,m,p);if(!E||!N)throw new Error("css.toColor: Unsupported css format");if(E.fillStyle=N,E.fillStyle=T,typeof E.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(E.fillRect(0,0,1,1),[d,f,m,p]=E.getImageData(0,0,1,1).data,p!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:_.toRgba(d,f,m,p),css:T}}})(w||(c.css=w={})),(function(y){function E(N,T,L){const A=N/255,R=T/255,M=L/255;return .2126*(A<=.03928?A/12.92:Math.pow((A+.055)/1.055,2.4))+.7152*(R<=.03928?R/12.92:Math.pow((R+.055)/1.055,2.4))+.0722*(M<=.03928?M/12.92:Math.pow((M+.055)/1.055,2.4))}y.relativeLuminance=function(N){return E(N>>16&255,N>>8&255,255&N)},y.relativeLuminance2=E})(C||(c.rgb=C={})),(function(y){function E(T,L,A){const R=T>>24&255,M=T>>16&255,G=T>>8&255;let W=L>>24&255,O=L>>16&255,U=L>>8&255,V=b(C.relativeLuminance2(W,O,U),C.relativeLuminance2(R,M,G));for(;V<A&&(W>0||O>0||U>0);)W-=Math.max(0,Math.ceil(.1*W)),O-=Math.max(0,Math.ceil(.1*O)),U-=Math.max(0,Math.ceil(.1*U)),V=b(C.relativeLuminance2(W,O,U),C.relativeLuminance2(R,M,G));return(W<<24|O<<16|U<<8|255)>>>0}function N(T,L,A){const R=T>>24&255,M=T>>16&255,G=T>>8&255;let W=L>>24&255,O=L>>16&255,U=L>>8&255,V=b(C.relativeLuminance2(W,O,U),C.relativeLuminance2(R,M,G));for(;V<A&&(W<255||O<255||U<255);)W=Math.min(255,W+Math.ceil(.1*(255-W))),O=Math.min(255,O+Math.ceil(.1*(255-O))),U=Math.min(255,U+Math.ceil(.1*(255-U))),V=b(C.relativeLuminance2(W,O,U),C.relativeLuminance2(R,M,G));return(W<<24|O<<16|U<<8|255)>>>0}y.blend=function(T,L){if(p=(255&L)/255,p===1)return L;const A=L>>24&255,R=L>>16&255,M=L>>8&255,G=T>>24&255,W=T>>16&255,O=T>>8&255;return d=G+Math.round((A-G)*p),f=W+Math.round((R-W)*p),m=O+Math.round((M-O)*p),_.toRgba(d,f,m)},y.ensureContrastRatio=function(T,L,A){const R=C.relativeLuminance(T>>8),M=C.relativeLuminance(L>>8);if(b(R,M)<A){if(M<R){const O=E(T,L,A),U=b(R,C.relativeLuminance(O>>8));if(U<A){const V=N(T,L,A);return U>b(R,C.relativeLuminance(V>>8))?O:V}return O}const G=N(T,L,A),W=b(R,C.relativeLuminance(G>>8));if(W<A){const O=E(T,L,A);return W>b(R,C.relativeLuminance(O>>8))?G:O}return G}},y.reduceLuminance=E,y.increaseLuminance=N,y.toChannels=function(T){return[T>>24&255,T>>16&255,T>>8&255,255&T]}})(v||(c.rgba=v={})),c.toPaddedHex=S,c.contrastRatio=b},8969:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.CoreTerminal=void 0;const f=d(844),m=d(2585),p=d(4348),_=d(7866),x=d(744),w=d(7302),C=d(6975),v=d(8460),S=d(1753),b=d(1480),y=d(7994),E=d(9282),N=d(5435),T=d(5981),L=d(2660);let A=!1;class R extends f.Disposable{get onScroll(){return this._onScrollApi||(this._onScrollApi=this.register(new v.EventEmitter),this._onScroll.event((G=>{var W;(W=this._onScrollApi)==null||W.fire(G.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(G){for(const W in G)this.optionsService.options[W]=G[W]}constructor(G){super(),this._windowsWrappingHeuristics=this.register(new f.MutableDisposable),this._onBinary=this.register(new v.EventEmitter),this.onBinary=this._onBinary.event,this._onData=this.register(new v.EventEmitter),this.onData=this._onData.event,this._onLineFeed=this.register(new v.EventEmitter),this.onLineFeed=this._onLineFeed.event,this._onResize=this.register(new v.EventEmitter),this.onResize=this._onResize.event,this._onWriteParsed=this.register(new v.EventEmitter),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this.register(new v.EventEmitter),this._instantiationService=new p.InstantiationService,this.optionsService=this.register(new w.OptionsService(G)),this._instantiationService.setService(m.IOptionsService,this.optionsService),this._bufferService=this.register(this._instantiationService.createInstance(x.BufferService)),this._instantiationService.setService(m.IBufferService,this._bufferService),this._logService=this.register(this._instantiationService.createInstance(_.LogService)),this._instantiationService.setService(m.ILogService,this._logService),this.coreService=this.register(this._instantiationService.createInstance(C.CoreService)),this._instantiationService.setService(m.ICoreService,this.coreService),this.coreMouseService=this.register(this._instantiationService.createInstance(S.CoreMouseService)),this._instantiationService.setService(m.ICoreMouseService,this.coreMouseService),this.unicodeService=this.register(this._instantiationService.createInstance(b.UnicodeService)),this._instantiationService.setService(m.IUnicodeService,this.unicodeService),this._charsetService=this._instantiationService.createInstance(y.CharsetService),this._instantiationService.setService(m.ICharsetService,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(L.OscLinkService),this._instantiationService.setService(m.IOscLinkService,this._oscLinkService),this._inputHandler=this.register(new N.InputHandler(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this.register((0,v.forwardEvent)(this._inputHandler.onLineFeed,this._onLineFeed)),this.register(this._inputHandler),this.register((0,v.forwardEvent)(this._bufferService.onResize,this._onResize)),this.register((0,v.forwardEvent)(this.coreService.onData,this._onData)),this.register((0,v.forwardEvent)(this.coreService.onBinary,this._onBinary)),this.register(this.coreService.onRequestScrollToBottom((()=>this.scrollToBottom()))),this.register(this.coreService.onUserInput((()=>this._writeBuffer.handleUserInput()))),this.register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],(()=>this._handleWindowsPtyOptionChange()))),this.register(this._bufferService.onScroll((W=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp,source:0}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)}))),this.register(this._inputHandler.onScroll((W=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp,source:0}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)}))),this._writeBuffer=this.register(new T.WriteBuffer(((W,O)=>this._inputHandler.parse(W,O)))),this.register((0,v.forwardEvent)(this._writeBuffer.onWriteParsed,this._onWriteParsed))}write(G,W){this._writeBuffer.write(G,W)}writeSync(G,W){this._logService.logLevel<=m.LogLevelEnum.WARN&&!A&&(this._logService.warn("writeSync is unreliable and will be removed soon."),A=!0),this._writeBuffer.writeSync(G,W)}input(G,W=!0){this.coreService.triggerDataEvent(G,W)}resize(G,W){isNaN(G)||isNaN(W)||(G=Math.max(G,x.MINIMUM_COLS),W=Math.max(W,x.MINIMUM_ROWS),this._bufferService.resize(G,W))}scroll(G,W=!1){this._bufferService.scroll(G,W)}scrollLines(G,W,O){this._bufferService.scrollLines(G,W,O)}scrollPages(G){this.scrollLines(G*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(G){const W=G-this._bufferService.buffer.ydisp;W!==0&&this.scrollLines(W)}registerEscHandler(G,W){return this._inputHandler.registerEscHandler(G,W)}registerDcsHandler(G,W){return this._inputHandler.registerDcsHandler(G,W)}registerCsiHandler(G,W){return this._inputHandler.registerCsiHandler(G,W)}registerOscHandler(G,W){return this._inputHandler.registerOscHandler(G,W)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let G=!1;const W=this.optionsService.rawOptions.windowsPty;W&&W.buildNumber!==void 0&&W.buildNumber!==void 0?G=W.backend==="conpty"&&W.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(G=!0),G?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){const G=[];G.push(this.onLineFeed(E.updateWindowsModeWrappedState.bind(null,this._bufferService))),G.push(this.registerCsiHandler({final:"H"},(()=>((0,E.updateWindowsModeWrappedState)(this._bufferService),!1)))),this._windowsWrappingHeuristics.value=(0,f.toDisposable)((()=>{for(const W of G)W.dispose()}))}}}c.CoreTerminal=R},8460:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.runAndSubscribe=c.forwardEvent=c.EventEmitter=void 0,c.EventEmitter=class{constructor(){this._listeners=[],this._disposed=!1}get event(){return this._event||(this._event=d=>(this._listeners.push(d),{dispose:()=>{if(!this._disposed){for(let f=0;f<this._listeners.length;f++)if(this._listeners[f]===d)return void this._listeners.splice(f,1)}}})),this._event}fire(d,f){const m=[];for(let p=0;p<this._listeners.length;p++)m.push(this._listeners[p]);for(let p=0;p<m.length;p++)m[p].call(void 0,d,f)}dispose(){this.clearListeners(),this._disposed=!0}clearListeners(){this._listeners&&(this._listeners.length=0)}},c.forwardEvent=function(d,f){return d((m=>f.fire(m)))},c.runAndSubscribe=function(d,f){return f(void 0),d((m=>f(m)))}},5435:function(u,c,d){var f=this&&this.__decorate||function(te,H,I,$){var F,P=arguments.length,ee=P<3?H:$===null?$=Object.getOwnPropertyDescriptor(H,I):$;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ee=Reflect.decorate(te,H,I,$);else for(var J=te.length-1;J>=0;J--)(F=te[J])&&(ee=(P<3?F(ee):P>3?F(H,I,ee):F(H,I))||ee);return P>3&&ee&&Object.defineProperty(H,I,ee),ee},m=this&&this.__param||function(te,H){return function(I,$){H(I,$,te)}};Object.defineProperty(c,"__esModule",{value:!0}),c.InputHandler=c.WindowsOptionsReportType=void 0;const p=d(2584),_=d(7116),x=d(2015),w=d(844),C=d(482),v=d(8437),S=d(8460),b=d(643),y=d(511),E=d(3734),N=d(2585),T=d(1480),L=d(6242),A=d(6351),R=d(5941),M={"(":0,")":1,"*":2,"+":3,"-":1,".":2},G=131072;function W(te,H){if(te>24)return H.setWinLines||!1;switch(te){case 1:return!!H.restoreWin;case 2:return!!H.minimizeWin;case 3:return!!H.setWinPosition;case 4:return!!H.setWinSizePixels;case 5:return!!H.raiseWin;case 6:return!!H.lowerWin;case 7:return!!H.refreshWin;case 8:return!!H.setWinSizeChars;case 9:return!!H.maximizeWin;case 10:return!!H.fullscreenWin;case 11:return!!H.getWinState;case 13:return!!H.getWinPosition;case 14:return!!H.getWinSizePixels;case 15:return!!H.getScreenSizePixels;case 16:return!!H.getCellSizePixels;case 18:return!!H.getWinSizeChars;case 19:return!!H.getScreenSizeChars;case 20:return!!H.getIconTitle;case 21:return!!H.getWinTitle;case 22:return!!H.pushTitle;case 23:return!!H.popTitle;case 24:return!!H.setWinLines}return!1}var O;(function(te){te[te.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",te[te.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"})(O||(c.WindowsOptionsReportType=O={}));let U=0;class V extends w.Disposable{getAttrData(){return this._curAttrData}constructor(H,I,$,F,P,ee,J,re,Y=new x.EscapeSequenceParser){super(),this._bufferService=H,this._charsetService=I,this._coreService=$,this._logService=F,this._optionsService=P,this._oscLinkService=ee,this._coreMouseService=J,this._unicodeService=re,this._parser=Y,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new C.StringToUtf32,this._utf8Decoder=new C.Utf8ToUtf32,this._workCell=new y.CellData,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=v.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=v.DEFAULT_ATTR_DATA.clone(),this._onRequestBell=this.register(new S.EventEmitter),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this.register(new S.EventEmitter),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this.register(new S.EventEmitter),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this.register(new S.EventEmitter),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this.register(new S.EventEmitter),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this.register(new S.EventEmitter),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this.register(new S.EventEmitter),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this.register(new S.EventEmitter),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this.register(new S.EventEmitter),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this.register(new S.EventEmitter),this.onLineFeed=this._onLineFeed.event,this._onScroll=this.register(new S.EventEmitter),this.onScroll=this._onScroll.event,this._onTitleChange=this.register(new S.EventEmitter),this.onTitleChange=this._onTitleChange.event,this._onColor=this.register(new S.EventEmitter),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 z(this._bufferService),this._activeBuffer=this._bufferService.buffer,this.register(this._bufferService.buffers.onBufferActivate((q=>this._activeBuffer=q.activeBuffer))),this._parser.setCsiHandlerFallback(((q,Z)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(q),params:Z.toArray()})})),this._parser.setEscHandlerFallback((q=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(q)})})),this._parser.setExecuteHandlerFallback((q=>{this._logService.debug("Unknown EXECUTE code: ",{code:q})})),this._parser.setOscHandlerFallback(((q,Z,ae)=>{this._logService.debug("Unknown OSC code: ",{identifier:q,action:Z,data:ae})})),this._parser.setDcsHandlerFallback(((q,Z,ae)=>{Z==="HOOK"&&(ae=ae.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(q),action:Z,payload:ae})})),this._parser.setPrintHandler(((q,Z,ae)=>this.print(q,Z,ae))),this._parser.registerCsiHandler({final:"@"},(q=>this.insertChars(q))),this._parser.registerCsiHandler({intermediates:" ",final:"@"},(q=>this.scrollLeft(q))),this._parser.registerCsiHandler({final:"A"},(q=>this.cursorUp(q))),this._parser.registerCsiHandler({intermediates:" ",final:"A"},(q=>this.scrollRight(q))),this._parser.registerCsiHandler({final:"B"},(q=>this.cursorDown(q))),this._parser.registerCsiHandler({final:"C"},(q=>this.cursorForward(q))),this._parser.registerCsiHandler({final:"D"},(q=>this.cursorBackward(q))),this._parser.registerCsiHandler({final:"E"},(q=>this.cursorNextLine(q))),this._parser.registerCsiHandler({final:"F"},(q=>this.cursorPrecedingLine(q))),this._parser.registerCsiHandler({final:"G"},(q=>this.cursorCharAbsolute(q))),this._parser.registerCsiHandler({final:"H"},(q=>this.cursorPosition(q))),this._parser.registerCsiHandler({final:"I"},(q=>this.cursorForwardTab(q))),this._parser.registerCsiHandler({final:"J"},(q=>this.eraseInDisplay(q,!1))),this._parser.registerCsiHandler({prefix:"?",final:"J"},(q=>this.eraseInDisplay(q,!0))),this._parser.registerCsiHandler({final:"K"},(q=>this.eraseInLine(q,!1))),this._parser.registerCsiHandler({prefix:"?",final:"K"},(q=>this.eraseInLine(q,!0))),this._parser.registerCsiHandler({final:"L"},(q=>this.insertLines(q))),this._parser.registerCsiHandler({final:"M"},(q=>this.deleteLines(q))),this._parser.registerCsiHandler({final:"P"},(q=>this.deleteChars(q))),this._parser.registerCsiHandler({final:"S"},(q=>this.scrollUp(q))),this._parser.registerCsiHandler({final:"T"},(q=>this.scrollDown(q))),this._parser.registerCsiHandler({final:"X"},(q=>this.eraseChars(q))),this._parser.registerCsiHandler({final:"Z"},(q=>this.cursorBackwardTab(q))),this._parser.registerCsiHandler({final:"`"},(q=>this.charPosAbsolute(q))),this._parser.registerCsiHandler({final:"a"},(q=>this.hPositionRelative(q))),this._parser.registerCsiHandler({final:"b"},(q=>this.repeatPrecedingCharacter(q))),this._parser.registerCsiHandler({final:"c"},(q=>this.sendDeviceAttributesPrimary(q))),this._parser.registerCsiHandler({prefix:">",final:"c"},(q=>this.sendDeviceAttributesSecondary(q))),this._parser.registerCsiHandler({final:"d"},(q=>this.linePosAbsolute(q))),this._parser.registerCsiHandler({final:"e"},(q=>this.vPositionRelative(q))),this._parser.registerCsiHandler({final:"f"},(q=>this.hVPosition(q))),this._parser.registerCsiHandler({final:"g"},(q=>this.tabClear(q))),this._parser.registerCsiHandler({final:"h"},(q=>this.setMode(q))),this._parser.registerCsiHandler({prefix:"?",final:"h"},(q=>this.setModePrivate(q))),this._parser.registerCsiHandler({final:"l"},(q=>this.resetMode(q))),this._parser.registerCsiHandler({prefix:"?",final:"l"},(q=>this.resetModePrivate(q))),this._parser.registerCsiHandler({final:"m"},(q=>this.charAttributes(q))),this._parser.registerCsiHandler({final:"n"},(q=>this.deviceStatus(q))),this._parser.registerCsiHandler({prefix:"?",final:"n"},(q=>this.deviceStatusPrivate(q))),this._parser.registerCsiHandler({intermediates:"!",final:"p"},(q=>this.softReset(q))),this._parser.registerCsiHandler({intermediates:" ",final:"q"},(q=>this.setCursorStyle(q))),this._parser.registerCsiHandler({final:"r"},(q=>this.setScrollRegion(q))),this._parser.registerCsiHandler({final:"s"},(q=>this.saveCursor(q))),this._parser.registerCsiHandler({final:"t"},(q=>this.windowOptions(q))),this._parser.registerCsiHandler({final:"u"},(q=>this.restoreCursor(q))),this._parser.registerCsiHandler({intermediates:"'",final:"}"},(q=>this.insertColumns(q))),this._parser.registerCsiHandler({intermediates:"'",final:"~"},(q=>this.deleteColumns(q))),this._parser.registerCsiHandler({intermediates:'"',final:"q"},(q=>this.selectProtected(q))),this._parser.registerCsiHandler({intermediates:"$",final:"p"},(q=>this.requestMode(q,!0))),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},(q=>this.requestMode(q,!1))),this._parser.setExecuteHandler(p.C0.BEL,(()=>this.bell())),this._parser.setExecuteHandler(p.C0.LF,(()=>this.lineFeed())),this._parser.setExecuteHandler(p.C0.VT,(()=>this.lineFeed())),this._parser.setExecuteHandler(p.C0.FF,(()=>this.lineFeed())),this._parser.setExecuteHandler(p.C0.CR,(()=>this.carriageReturn())),this._parser.setExecuteHandler(p.C0.BS,(()=>this.backspace())),this._parser.setExecuteHandler(p.C0.HT,(()=>this.tab())),this._parser.setExecuteHandler(p.C0.SO,(()=>this.shiftOut())),this._parser.setExecuteHandler(p.C0.SI,(()=>this.shiftIn())),this._parser.setExecuteHandler(p.C1.IND,(()=>this.index())),this._parser.setExecuteHandler(p.C1.NEL,(()=>this.nextLine())),this._parser.setExecuteHandler(p.C1.HTS,(()=>this.tabSet())),this._parser.registerOscHandler(0,new L.OscHandler((q=>(this.setTitle(q),this.setIconName(q),!0)))),this._parser.registerOscHandler(1,new L.OscHandler((q=>this.setIconName(q)))),this._parser.registerOscHandler(2,new L.OscHandler((q=>this.setTitle(q)))),this._parser.registerOscHandler(4,new L.OscHandler((q=>this.setOrReportIndexedColor(q)))),this._parser.registerOscHandler(8,new L.OscHandler((q=>this.setHyperlink(q)))),this._parser.registerOscHandler(10,new L.OscHandler((q=>this.setOrReportFgColor(q)))),this._parser.registerOscHandler(11,new L.OscHandler((q=>this.setOrReportBgColor(q)))),this._parser.registerOscHandler(12,new L.OscHandler((q=>this.setOrReportCursorColor(q)))),this._parser.registerOscHandler(104,new L.OscHandler((q=>this.restoreIndexedColor(q)))),this._parser.registerOscHandler(110,new L.OscHandler((q=>this.restoreFgColor(q)))),this._parser.registerOscHandler(111,new L.OscHandler((q=>this.restoreBgColor(q)))),this._parser.registerOscHandler(112,new L.OscHandler((q=>this.restoreCursorColor(q)))),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(const q in _.CHARSETS)this._parser.registerEscHandler({intermediates:"(",final:q},(()=>this.selectCharset("("+q))),this._parser.registerEscHandler({intermediates:")",final:q},(()=>this.selectCharset(")"+q))),this._parser.registerEscHandler({intermediates:"*",final:q},(()=>this.selectCharset("*"+q))),this._parser.registerEscHandler({intermediates:"+",final:q},(()=>this.selectCharset("+"+q))),this._parser.registerEscHandler({intermediates:"-",final:q},(()=>this.selectCharset("-"+q))),this._parser.registerEscHandler({intermediates:".",final:q},(()=>this.selectCharset("."+q))),this._parser.registerEscHandler({intermediates:"/",final:q},(()=>this.selectCharset("/"+q)));this._parser.registerEscHandler({intermediates:"#",final:"8"},(()=>this.screenAlignmentPattern())),this._parser.setErrorHandler((q=>(this._logService.error("Parsing error: ",q),q))),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new A.DcsHandler(((q,Z)=>this.requestStatusString(q,Z))))}_preserveStack(H,I,$,F){this._parseStack.paused=!0,this._parseStack.cursorStartX=H,this._parseStack.cursorStartY=I,this._parseStack.decodedLength=$,this._parseStack.position=F}_logSlowResolvingAsync(H){this._logService.logLevel<=N.LogLevelEnum.WARN&&Promise.race([H,new Promise(((I,$)=>setTimeout((()=>$("#SLOW_TIMEOUT")),5e3)))]).catch((I=>{if(I!=="#SLOW_TIMEOUT")throw I;console.warn("async parser handler taking longer than 5000 ms")}))}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(H,I){let $,F=this._activeBuffer.x,P=this._activeBuffer.y,ee=0;const J=this._parseStack.paused;if(J){if($=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,I))return this._logSlowResolvingAsync($),$;F=this._parseStack.cursorStartX,P=this._parseStack.cursorStartY,this._parseStack.paused=!1,H.length>G&&(ee=this._parseStack.position+G)}if(this._logService.logLevel<=N.LogLevelEnum.DEBUG&&this._logService.debug("parsing data"+(typeof H=="string"?` "${H}"`:` "${Array.prototype.map.call(H,(q=>String.fromCharCode(q))).join("")}"`),typeof H=="string"?H.split("").map((q=>q.charCodeAt(0))):H),this._parseBuffer.length<H.length&&this._parseBuffer.length<G&&(this._parseBuffer=new Uint32Array(Math.min(H.length,G))),J||this._dirtyRowTracker.clearRange(),H.length>G)for(let q=ee;q<H.length;q+=G){const Z=q+G<H.length?q+G:H.length,ae=typeof H=="string"?this._stringDecoder.decode(H.substring(q,Z),this._parseBuffer):this._utf8Decoder.decode(H.subarray(q,Z),this._parseBuffer);if($=this._parser.parse(this._parseBuffer,ae))return this._preserveStack(F,P,ae,q),this._logSlowResolvingAsync($),$}else if(!J){const q=typeof H=="string"?this._stringDecoder.decode(H,this._parseBuffer):this._utf8Decoder.decode(H,this._parseBuffer);if($=this._parser.parse(this._parseBuffer,q))return this._preserveStack(F,P,q,0),this._logSlowResolvingAsync($),$}this._activeBuffer.x===F&&this._activeBuffer.y===P||this._onCursorMove.fire();const re=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),Y=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);Y<this._bufferService.rows&&this._onRequestRefreshRows.fire(Math.min(Y,this._bufferService.rows-1),Math.min(re,this._bufferService.rows-1))}print(H,I,$){let F,P;const ee=this._charsetService.charset,J=this._optionsService.rawOptions.screenReaderMode,re=this._bufferService.cols,Y=this._coreService.decPrivateModes.wraparound,q=this._coreService.modes.insertMode,Z=this._curAttrData;let ae=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&$-I>0&&ae.getWidth(this._activeBuffer.x-1)===2&&ae.setCellFromCodepoint(this._activeBuffer.x-1,0,1,Z);let se=this._parser.precedingJoinState;for(let oe=I;oe<$;++oe){if(F=H[oe],F<127&&ee){const Re=ee[String.fromCharCode(F)];Re&&(F=Re.charCodeAt(0))}const je=this._unicodeService.charProperties(F,se);P=T.UnicodeService.extractWidth(je);const Le=T.UnicodeService.extractShouldJoin(je),De=Le?T.UnicodeService.extractWidth(se):0;if(se=je,J&&this._onA11yChar.fire((0,C.stringFromCodePoint)(F)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+P-De>re){if(Y){const Re=ae;let Te=this._activeBuffer.x-De;for(this._activeBuffer.x=De,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),ae=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),De>0&&ae instanceof v.BufferLine&&ae.copyCellsFrom(Re,Te,0,De,!1);Te<re;)Re.setCellFromCodepoint(Te++,0,1,Z)}else if(this._activeBuffer.x=re-1,P===2)continue}if(Le&&this._activeBuffer.x){const Re=ae.getWidth(this._activeBuffer.x-1)?1:2;ae.addCodepointToCell(this._activeBuffer.x-Re,F,P);for(let Te=P-De;--Te>=0;)ae.setCellFromCodepoint(this._activeBuffer.x++,0,0,Z)}else if(q&&(ae.insertCells(this._activeBuffer.x,P-De,this._activeBuffer.getNullCell(Z)),ae.getWidth(re-1)===2&&ae.setCellFromCodepoint(re-1,b.NULL_CELL_CODE,b.NULL_CELL_WIDTH,Z)),ae.setCellFromCodepoint(this._activeBuffer.x++,F,P,Z),P>0)for(;--P;)ae.setCellFromCodepoint(this._activeBuffer.x++,0,0,Z)}this._parser.precedingJoinState=se,this._activeBuffer.x<re&&$-I>0&&ae.getWidth(this._activeBuffer.x)===0&&!ae.hasContent(this._activeBuffer.x)&&ae.setCellFromCodepoint(this._activeBuffer.x,0,1,Z),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(H,I){return H.final!=="t"||H.prefix||H.intermediates?this._parser.registerCsiHandler(H,I):this._parser.registerCsiHandler(H,($=>!W($.params[0],this._optionsService.rawOptions.windowOptions)||I($)))}registerDcsHandler(H,I){return this._parser.registerDcsHandler(H,new A.DcsHandler(I))}registerEscHandler(H,I){return this._parser.registerEscHandler(H,I)}registerOscHandler(H,I){return this._parser.registerOscHandler(H,new L.OscHandler(I))}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(){var H;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&&((H=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y))!=null&&H.isWrapped)){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;const I=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);I.hasWidth(this._activeBuffer.x)&&!I.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;const H=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-H),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(H=this._bufferService.cols-1){this._activeBuffer.x=Math.min(H,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(H,I){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=H,this._activeBuffer.y=this._activeBuffer.scrollTop+I):(this._activeBuffer.x=H,this._activeBuffer.y=I),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(H,I){this._restrictCursor(),this._setCursor(this._activeBuffer.x+H,this._activeBuffer.y+I)}cursorUp(H){const I=this._activeBuffer.y-this._activeBuffer.scrollTop;return I>=0?this._moveCursor(0,-Math.min(I,H.params[0]||1)):this._moveCursor(0,-(H.params[0]||1)),!0}cursorDown(H){const I=this._activeBuffer.scrollBottom-this._activeBuffer.y;return I>=0?this._moveCursor(0,Math.min(I,H.params[0]||1)):this._moveCursor(0,H.params[0]||1),!0}cursorForward(H){return this._moveCursor(H.params[0]||1,0),!0}cursorBackward(H){return this._moveCursor(-(H.params[0]||1),0),!0}cursorNextLine(H){return this.cursorDown(H),this._activeBuffer.x=0,!0}cursorPrecedingLine(H){return this.cursorUp(H),this._activeBuffer.x=0,!0}cursorCharAbsolute(H){return this._setCursor((H.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(H){return this._setCursor(H.length>=2?(H.params[1]||1)-1:0,(H.params[0]||1)-1),!0}charPosAbsolute(H){return this._setCursor((H.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(H){return this._moveCursor(H.params[0]||1,0),!0}linePosAbsolute(H){return this._setCursor(this._activeBuffer.x,(H.params[0]||1)-1),!0}vPositionRelative(H){return this._moveCursor(0,H.params[0]||1),!0}hVPosition(H){return this.cursorPosition(H),!0}tabClear(H){const I=H.params[0];return I===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:I===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(H){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let I=H.params[0]||1;for(;I--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(H){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let I=H.params[0]||1;for(;I--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(H){const I=H.params[0];return I===1&&(this._curAttrData.bg|=536870912),I!==2&&I!==0||(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(H,I,$,F=!1,P=!1){const ee=this._activeBuffer.lines.get(this._activeBuffer.ybase+H);ee.replaceCells(I,$,this._activeBuffer.getNullCell(this._eraseAttrData()),P),F&&(ee.isWrapped=!1)}_resetBufferLine(H,I=!1){const $=this._activeBuffer.lines.get(this._activeBuffer.ybase+H);$&&($.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),I),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+H),$.isWrapped=!1)}eraseInDisplay(H,I=!1){let $;switch(this._restrictCursor(this._bufferService.cols),H.params[0]){case 0:for($=this._activeBuffer.y,this._dirtyRowTracker.markDirty($),this._eraseInBufferLine($++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,I);$<this._bufferService.rows;$++)this._resetBufferLine($,I);this._dirtyRowTracker.markDirty($);break;case 1:for($=this._activeBuffer.y,this._dirtyRowTracker.markDirty($),this._eraseInBufferLine($,0,this._activeBuffer.x+1,!0,I),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get($+1).isWrapped=!1);$--;)this._resetBufferLine($,I);this._dirtyRowTracker.markDirty(0);break;case 2:for($=this._bufferService.rows,this._dirtyRowTracker.markDirty($-1);$--;)this._resetBufferLine($,I);this._dirtyRowTracker.markDirty(0);break;case 3:const F=this._activeBuffer.lines.length-this._bufferService.rows;F>0&&(this._activeBuffer.lines.trimStart(F),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-F,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-F,0),this._onScroll.fire(0))}return!0}eraseInLine(H,I=!1){switch(this._restrictCursor(this._bufferService.cols),H.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,I);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,I);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,I)}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(H){this._restrictCursor();let I=H.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const $=this._activeBuffer.ybase+this._activeBuffer.y,F=this._bufferService.rows-1-this._activeBuffer.scrollBottom,P=this._bufferService.rows-1+this._activeBuffer.ybase-F+1;for(;I--;)this._activeBuffer.lines.splice(P-1,1),this._activeBuffer.lines.splice($,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(H){this._restrictCursor();let I=H.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const $=this._activeBuffer.ybase+this._activeBuffer.y;let F;for(F=this._bufferService.rows-1-this._activeBuffer.scrollBottom,F=this._bufferService.rows-1+this._activeBuffer.ybase-F;I--;)this._activeBuffer.lines.splice($,1),this._activeBuffer.lines.splice(F,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(H){this._restrictCursor();const I=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return I&&(I.insertCells(this._activeBuffer.x,H.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(H){this._restrictCursor();const I=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return I&&(I.deleteCells(this._activeBuffer.x,H.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(H){let I=H.params[0]||1;for(;I--;)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(H){let I=H.params[0]||1;for(;I--;)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(v.DEFAULT_ATTR_DATA));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(H){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const I=H.params[0]||1;for(let $=this._activeBuffer.scrollTop;$<=this._activeBuffer.scrollBottom;++$){const F=this._activeBuffer.lines.get(this._activeBuffer.ybase+$);F.deleteCells(0,I,this._activeBuffer.getNullCell(this._eraseAttrData())),F.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(H){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const I=H.params[0]||1;for(let $=this._activeBuffer.scrollTop;$<=this._activeBuffer.scrollBottom;++$){const F=this._activeBuffer.lines.get(this._activeBuffer.ybase+$);F.insertCells(0,I,this._activeBuffer.getNullCell(this._eraseAttrData())),F.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(H){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const I=H.params[0]||1;for(let $=this._activeBuffer.scrollTop;$<=this._activeBuffer.scrollBottom;++$){const F=this._activeBuffer.lines.get(this._activeBuffer.ybase+$);F.insertCells(this._activeBuffer.x,I,this._activeBuffer.getNullCell(this._eraseAttrData())),F.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(H){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const I=H.params[0]||1;for(let $=this._activeBuffer.scrollTop;$<=this._activeBuffer.scrollBottom;++$){const F=this._activeBuffer.lines.get(this._activeBuffer.ybase+$);F.deleteCells(this._activeBuffer.x,I,this._activeBuffer.getNullCell(this._eraseAttrData())),F.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(H){this._restrictCursor();const I=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return I&&(I.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(H.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(H){const I=this._parser.precedingJoinState;if(!I)return!0;const $=H.params[0]||1,F=T.UnicodeService.extractWidth(I),P=this._activeBuffer.x-F,ee=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(P),J=new Uint32Array(ee.length*$);let re=0;for(let q=0;q<ee.length;){const Z=ee.codePointAt(q)||0;J[re++]=Z,q+=Z>65535?2:1}let Y=re;for(let q=1;q<$;++q)J.copyWithin(Y,0,re),Y+=re;return this.print(J,0,Y),!0}sendDeviceAttributesPrimary(H){return H.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(p.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(p.C0.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(H){return H.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(p.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(p.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(H.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(p.C0.ESC+"[>83;40003;0c")),!0}_is(H){return(this._optionsService.rawOptions.termName+"").indexOf(H)===0}setMode(H){for(let I=0;I<H.length;I++)switch(H.params[I]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0}return!0}setModePrivate(H){for(let I=0;I<H.length;I++)switch(H.params[I]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,_.DEFAULT_CHARSET),this._charsetService.setgCharset(1,_.DEFAULT_CHARSET),this._charsetService.setgCharset(2,_.DEFAULT_CHARSET),this._charsetService.setgCharset(3,_.DEFAULT_CHARSET);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(0,this._bufferService.rows-1),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0}return!0}resetMode(H){for(let I=0;I<H.length;I++)switch(H.params[I]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1}return!0}resetModePrivate(H){for(let I=0;I<H.length;I++)switch(H.params[I]){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:case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),H.params[I]===1049&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(0,this._bufferService.rows-1),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1}return!0}requestMode(H,I){const $=this._coreService.decPrivateModes,{activeProtocol:F,activeEncoding:P}=this._coreMouseService,ee=this._coreService,{buffers:J,cols:re}=this._bufferService,{active:Y,alt:q}=J,Z=this._optionsService.rawOptions,ae=Le=>Le?1:2,se=H.params[0];return oe=se,je=I?se===2?4:se===4?ae(ee.modes.insertMode):se===12?3:se===20?ae(Z.convertEol):0:se===1?ae($.applicationCursorKeys):se===3?Z.windowOptions.setWinLines?re===80?2:re===132?1:0:0:se===6?ae($.origin):se===7?ae($.wraparound):se===8?3:se===9?ae(F==="X10"):se===12?ae(Z.cursorBlink):se===25?ae(!ee.isCursorHidden):se===45?ae($.reverseWraparound):se===66?ae($.applicationKeypad):se===67?4:se===1e3?ae(F==="VT200"):se===1002?ae(F==="DRAG"):se===1003?ae(F==="ANY"):se===1004?ae($.sendFocus):se===1005?4:se===1006?ae(P==="SGR"):se===1015?4:se===1016?ae(P==="SGR_PIXELS"):se===1048?1:se===47||se===1047||se===1049?ae(Y===q):se===2004?ae($.bracketedPasteMode):0,ee.triggerDataEvent(`${p.C0.ESC}[${I?"":"?"}${oe};${je}$y`),!0;var oe,je}_updateAttrColor(H,I,$,F,P){return I===2?(H|=50331648,H&=-16777216,H|=E.AttributeData.fromColorRGB([$,F,P])):I===5&&(H&=-50331904,H|=33554432|255&$),H}_extractColor(H,I,$){const F=[0,0,-1,0,0,0];let P=0,ee=0;do{if(F[ee+P]=H.params[I+ee],H.hasSubParams(I+ee)){const J=H.getSubParams(I+ee);let re=0;do F[1]===5&&(P=1),F[ee+re+1+P]=J[re];while(++re<J.length&&re+ee+1+P<F.length);break}if(F[1]===5&&ee+P>=2||F[1]===2&&ee+P>=5)break;F[1]&&(P=1)}while(++ee+I<H.length&&ee+P<F.length);for(let J=2;J<F.length;++J)F[J]===-1&&(F[J]=0);switch(F[0]){case 38:$.fg=this._updateAttrColor($.fg,F[1],F[3],F[4],F[5]);break;case 48:$.bg=this._updateAttrColor($.bg,F[1],F[3],F[4],F[5]);break;case 58:$.extended=$.extended.clone(),$.extended.underlineColor=this._updateAttrColor($.extended.underlineColor,F[1],F[3],F[4],F[5])}return ee}_processUnderline(H,I){I.extended=I.extended.clone(),(!~H||H>5)&&(H=1),I.extended.underlineStyle=H,I.fg|=268435456,H===0&&(I.fg&=-268435457),I.updateExtended()}_processSGR0(H){H.fg=v.DEFAULT_ATTR_DATA.fg,H.bg=v.DEFAULT_ATTR_DATA.bg,H.extended=H.extended.clone(),H.extended.underlineStyle=0,H.extended.underlineColor&=-67108864,H.updateExtended()}charAttributes(H){if(H.length===1&&H.params[0]===0)return this._processSGR0(this._curAttrData),!0;const I=H.length;let $;const F=this._curAttrData;for(let P=0;P<I;P++)$=H.params[P],$>=30&&$<=37?(F.fg&=-50331904,F.fg|=16777216|$-30):$>=40&&$<=47?(F.bg&=-50331904,F.bg|=16777216|$-40):$>=90&&$<=97?(F.fg&=-50331904,F.fg|=16777224|$-90):$>=100&&$<=107?(F.bg&=-50331904,F.bg|=16777224|$-100):$===0?this._processSGR0(F):$===1?F.fg|=134217728:$===3?F.bg|=67108864:$===4?(F.fg|=268435456,this._processUnderline(H.hasSubParams(P)?H.getSubParams(P)[0]:1,F)):$===5?F.fg|=536870912:$===7?F.fg|=67108864:$===8?F.fg|=1073741824:$===9?F.fg|=2147483648:$===2?F.bg|=134217728:$===21?this._processUnderline(2,F):$===22?(F.fg&=-134217729,F.bg&=-134217729):$===23?F.bg&=-67108865:$===24?(F.fg&=-268435457,this._processUnderline(0,F)):$===25?F.fg&=-536870913:$===27?F.fg&=-67108865:$===28?F.fg&=-1073741825:$===29?F.fg&=2147483647:$===39?(F.fg&=-67108864,F.fg|=16777215&v.DEFAULT_ATTR_DATA.fg):$===49?(F.bg&=-67108864,F.bg|=16777215&v.DEFAULT_ATTR_DATA.bg):$===38||$===48||$===58?P+=this._extractColor(H,P,F):$===53?F.bg|=1073741824:$===55?F.bg&=-1073741825:$===59?(F.extended=F.extended.clone(),F.extended.underlineColor=-1,F.updateExtended()):$===100?(F.fg&=-67108864,F.fg|=16777215&v.DEFAULT_ATTR_DATA.fg,F.bg&=-67108864,F.bg|=16777215&v.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",$);return!0}deviceStatus(H){switch(H.params[0]){case 5:this._coreService.triggerDataEvent(`${p.C0.ESC}[0n`);break;case 6:const I=this._activeBuffer.y+1,$=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${p.C0.ESC}[${I};${$}R`)}return!0}deviceStatusPrivate(H){if(H.params[0]===6){const I=this._activeBuffer.y+1,$=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${p.C0.ESC}[?${I};${$}R`)}return!0}softReset(H){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=v.DEFAULT_ATTR_DATA.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(H){const I=H.params[0]||1;switch(I){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}const $=I%2==1;return this._optionsService.options.cursorBlink=$,!0}setScrollRegion(H){const I=H.params[0]||1;let $;return(H.length<2||($=H.params[1])>this._bufferService.rows||$===0)&&($=this._bufferService.rows),$>I&&(this._activeBuffer.scrollTop=I-1,this._activeBuffer.scrollBottom=$-1,this._setCursor(0,0)),!0}windowOptions(H){if(!W(H.params[0],this._optionsService.rawOptions.windowOptions))return!0;const I=H.length>1?H.params[1]:0;switch(H.params[0]){case 14:I!==2&&this._onRequestWindowsOptionsReport.fire(O.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(O.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${p.C0.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:I!==0&&I!==2||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),I!==0&&I!==1||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:I!==0&&I!==2||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),I!==0&&I!==1||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0}saveCursor(H){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(H){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(H){return this._windowTitle=H,this._onTitleChange.fire(H),!0}setIconName(H){return this._iconName=H,!0}setOrReportIndexedColor(H){const I=[],$=H.split(";");for(;$.length>1;){const F=$.shift(),P=$.shift();if(/^\d+$/.exec(F)){const ee=parseInt(F);if(X(ee))if(P==="?")I.push({type:0,index:ee});else{const J=(0,R.parseColor)(P);J&&I.push({type:1,index:ee,color:J})}}}return I.length&&this._onColor.fire(I),!0}setHyperlink(H){const I=H.split(";");return!(I.length<2)&&(I[1]?this._createHyperlink(I[0],I[1]):!I[0]&&this._finishHyperlink())}_createHyperlink(H,I){this._getCurrentLinkId()&&this._finishHyperlink();const $=H.split(":");let F;const P=$.findIndex((ee=>ee.startsWith("id=")));return P!==-1&&(F=$[P].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:F,uri:I}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(H,I){const $=H.split(";");for(let F=0;F<$.length&&!(I>=this._specialColors.length);++F,++I)if($[F]==="?")this._onColor.fire([{type:0,index:this._specialColors[I]}]);else{const P=(0,R.parseColor)($[F]);P&&this._onColor.fire([{type:1,index:this._specialColors[I],color:P}])}return!0}setOrReportFgColor(H){return this._setOrReportSpecialColor(H,0)}setOrReportBgColor(H){return this._setOrReportSpecialColor(H,1)}setOrReportCursorColor(H){return this._setOrReportSpecialColor(H,2)}restoreIndexedColor(H){if(!H)return this._onColor.fire([{type:2}]),!0;const I=[],$=H.split(";");for(let F=0;F<$.length;++F)if(/^\d+$/.exec($[F])){const P=parseInt($[F]);X(P)&&I.push({type:2,index:P})}return I.length&&this._onColor.fire(I),!0}restoreFgColor(H){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(H){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(H){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,_.DEFAULT_CHARSET),!0}selectCharset(H){return H.length!==2?(this.selectDefaultCharset(),!0):(H[0]==="/"||this._charsetService.setgCharset(M[H[0]],_.CHARSETS[H[1]]||_.DEFAULT_CHARSET),!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){const H=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,H,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=v.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=v.DEFAULT_ATTR_DATA.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal}setgLevel(H){return this._charsetService.setgLevel(H),!0}screenAlignmentPattern(){const H=new y.CellData;H.content=4194373,H.fg=this._curAttrData.fg,H.bg=this._curAttrData.bg,this._setCursor(0,0);for(let I=0;I<this._bufferService.rows;++I){const $=this._activeBuffer.ybase+this._activeBuffer.y+I,F=this._activeBuffer.lines.get($);F&&(F.fill(H),F.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(H,I){const $=this._bufferService.buffer,F=this._optionsService.rawOptions;return(P=>(this._coreService.triggerDataEvent(`${p.C0.ESC}${P}${p.C0.ESC}\\`),!0))(H==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:H==='"p'?'P1$r61;1"p':H==="r"?`P1$r${$.scrollTop+1};${$.scrollBottom+1}r`:H==="m"?"P1$r0m":H===" q"?`P1$r${{block:2,underline:4,bar:6}[F.cursorStyle]-(F.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(H,I){this._dirtyRowTracker.markRangeDirty(H,I)}}c.InputHandler=V;let z=class{constructor(te){this._bufferService=te,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(te){te<this.start?this.start=te:te>this.end&&(this.end=te)}markRangeDirty(te,H){te>H&&(U=te,te=H,H=U),te<this.start&&(this.start=te),H>this.end&&(this.end=H)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};function X(te){return 0<=te&&te<256}z=f([m(0,N.IBufferService)],z)},844:(u,c)=>{function d(f){for(const m of f)m.dispose();f.length=0}Object.defineProperty(c,"__esModule",{value:!0}),c.getDisposeArrayDisposable=c.disposeArray=c.toDisposable=c.MutableDisposable=c.Disposable=void 0,c.Disposable=class{constructor(){this._disposables=[],this._isDisposed=!1}dispose(){this._isDisposed=!0;for(const f of this._disposables)f.dispose();this._disposables.length=0}register(f){return this._disposables.push(f),f}unregister(f){const m=this._disposables.indexOf(f);m!==-1&&this._disposables.splice(m,1)}},c.MutableDisposable=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(f){var m;this._isDisposed||f===this._value||((m=this._value)==null||m.dispose(),this._value=f)}clear(){this.value=void 0}dispose(){var f;this._isDisposed=!0,(f=this._value)==null||f.dispose(),this._value=void 0}},c.toDisposable=function(f){return{dispose:f}},c.disposeArray=d,c.getDisposeArrayDisposable=function(f){return{dispose:()=>d(f)}}},1505:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.FourKeyMap=c.TwoKeyMap=void 0;class d{constructor(){this._data={}}set(m,p,_){this._data[m]||(this._data[m]={}),this._data[m][p]=_}get(m,p){return this._data[m]?this._data[m][p]:void 0}clear(){this._data={}}}c.TwoKeyMap=d,c.FourKeyMap=class{constructor(){this._data=new d}set(f,m,p,_,x){this._data.get(f,m)||this._data.set(f,m,new d),this._data.get(f,m).set(p,_,x)}get(f,m,p,_){var x;return(x=this._data.get(f,m))==null?void 0:x.get(p,_)}clear(){this._data.clear()}}},6114:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.isChromeOS=c.isLinux=c.isWindows=c.isIphone=c.isIpad=c.isMac=c.getSafariVersion=c.isSafari=c.isLegacyEdge=c.isFirefox=c.isNode=void 0,c.isNode=typeof process<"u"&&"title"in process;const d=c.isNode?"node":navigator.userAgent,f=c.isNode?"node":navigator.platform;c.isFirefox=d.includes("Firefox"),c.isLegacyEdge=d.includes("Edge"),c.isSafari=/^((?!chrome|android).)*safari/i.test(d),c.getSafariVersion=function(){if(!c.isSafari)return 0;const m=d.match(/Version\/(\d+)/);return m===null||m.length<2?0:parseInt(m[1])},c.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(f),c.isIpad=f==="iPad",c.isIphone=f==="iPhone",c.isWindows=["Windows","Win16","Win32","WinCE"].includes(f),c.isLinux=f.indexOf("Linux")>=0,c.isChromeOS=/\bCrOS\b/.test(d)},6106:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.SortedList=void 0;let d=0;c.SortedList=class{constructor(f){this._getKey=f,this._array=[]}clear(){this._array.length=0}insert(f){this._array.length!==0?(d=this._search(this._getKey(f)),this._array.splice(d,0,f)):this._array.push(f)}delete(f){if(this._array.length===0)return!1;const m=this._getKey(f);if(m===void 0||(d=this._search(m),d===-1)||this._getKey(this._array[d])!==m)return!1;do if(this._array[d]===f)return this._array.splice(d,1),!0;while(++d<this._array.length&&this._getKey(this._array[d])===m);return!1}*getKeyIterator(f){if(this._array.length!==0&&(d=this._search(f),!(d<0||d>=this._array.length)&&this._getKey(this._array[d])===f))do yield this._array[d];while(++d<this._array.length&&this._getKey(this._array[d])===f)}forEachByKey(f,m){if(this._array.length!==0&&(d=this._search(f),!(d<0||d>=this._array.length)&&this._getKey(this._array[d])===f))do m(this._array[d]);while(++d<this._array.length&&this._getKey(this._array[d])===f)}values(){return[...this._array].values()}_search(f){let m=0,p=this._array.length-1;for(;p>=m;){let _=m+p>>1;const x=this._getKey(this._array[_]);if(x>f)p=_-1;else{if(!(x<f)){for(;_>0&&this._getKey(this._array[_-1])===f;)_--;return _}m=_+1}}return m}}},7226:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.DebouncedIdleTask=c.IdleTaskQueue=c.PriorityTaskQueue=void 0;const f=d(6114);class m{constructor(){this._tasks=[],this._i=0}enqueue(x){this._tasks.push(x),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(x){this._idleCallback=void 0;let w=0,C=0,v=x.timeRemaining(),S=0;for(;this._i<this._tasks.length;){if(w=Date.now(),this._tasks[this._i]()||this._i++,w=Math.max(1,Date.now()-w),C=Math.max(w,C),S=x.timeRemaining(),1.5*C>S)return v-w<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(v-w))}ms`),void this._start();v=S}this.clear()}}class p extends m{_requestCallback(x){return setTimeout((()=>x(this._createDeadline(16))))}_cancelCallback(x){clearTimeout(x)}_createDeadline(x){const w=Date.now()+x;return{timeRemaining:()=>Math.max(0,w-Date.now())}}}c.PriorityTaskQueue=p,c.IdleTaskQueue=!f.isNode&&"requestIdleCallback"in window?class extends m{_requestCallback(_){return requestIdleCallback(_)}_cancelCallback(_){cancelIdleCallback(_)}}:p,c.DebouncedIdleTask=class{constructor(){this._queue=new c.IdleTaskQueue}set(_){this._queue.clear(),this._queue.enqueue(_)}flush(){this._queue.flush()}}},9282:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.updateWindowsModeWrappedState=void 0;const f=d(643);c.updateWindowsModeWrappedState=function(m){const p=m.buffer.lines.get(m.buffer.ybase+m.buffer.y-1),_=p==null?void 0:p.get(m.cols-1),x=m.buffer.lines.get(m.buffer.ybase+m.buffer.y);x&&_&&(x.isWrapped=_[f.CHAR_DATA_CODE_INDEX]!==f.NULL_CELL_CODE&&_[f.CHAR_DATA_CODE_INDEX]!==f.WHITESPACE_CELL_CODE)}},3734:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.ExtendedAttrs=c.AttributeData=void 0;class d{constructor(){this.fg=0,this.bg=0,this.extended=new f}static toColorRGB(p){return[p>>>16&255,p>>>8&255,255&p]}static fromColorRGB(p){return(255&p[0])<<16|(255&p[1])<<8|255&p[2]}clone(){const p=new d;return p.fg=this.fg,p.bg=this.bg,p.extended=this.extended.clone(),p}isInverse(){return 67108864&this.fg}isBold(){return 134217728&this.fg}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:268435456&this.fg}isBlink(){return 536870912&this.fg}isInvisible(){return 1073741824&this.fg}isItalic(){return 67108864&this.bg}isDim(){return 134217728&this.bg}isStrikethrough(){return 2147483648&this.fg}isProtected(){return 536870912&this.bg}isOverline(){return 1073741824&this.bg}getFgColorMode(){return 50331648&this.fg}getBgColorMode(){return 50331648&this.bg}isFgRGB(){return(50331648&this.fg)==50331648}isBgRGB(){return(50331648&this.bg)==50331648}isFgPalette(){return(50331648&this.fg)==16777216||(50331648&this.fg)==33554432}isBgPalette(){return(50331648&this.bg)==16777216||(50331648&this.bg)==33554432}isFgDefault(){return(50331648&this.fg)==0}isBgDefault(){return(50331648&this.bg)==0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}}getBgColor(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}}hasExtendedAttrs(){return 268435456&this.bg}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()}isUnderlineColorRGB(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==50331648:this.isFgRGB()}isUnderlineColorPalette(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==16777216||(50331648&this.extended.underlineColor)==33554432:this.isFgPalette()}isUnderlineColorDefault(){return 268435456&this.bg&&~this.extended.underlineColor?(50331648&this.extended.underlineColor)==0:this.isFgDefault()}getUnderlineStyle(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}}c.AttributeData=d;class f{get ext(){return this._urlId?-469762049&this._ext|this.underlineStyle<<26:this._ext}set ext(p){this._ext=p}get underlineStyle(){return this._urlId?5:(469762048&this._ext)>>26}set underlineStyle(p){this._ext&=-469762049,this._ext|=p<<26&469762048}get underlineColor(){return 67108863&this._ext}set underlineColor(p){this._ext&=-67108864,this._ext|=67108863&p}get urlId(){return this._urlId}set urlId(p){this._urlId=p}get underlineVariantOffset(){const p=(3758096384&this._ext)>>29;return p<0?4294967288^p:p}set underlineVariantOffset(p){this._ext&=536870911,this._ext|=p<<29&3758096384}constructor(p=0,_=0){this._ext=0,this._urlId=0,this._ext=p,this._urlId=_}clone(){return new f(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}}c.ExtendedAttrs=f},9092:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.Buffer=c.MAX_BUFFER_SIZE=void 0;const f=d(6349),m=d(7226),p=d(3734),_=d(8437),x=d(4634),w=d(511),C=d(643),v=d(4863),S=d(7116);c.MAX_BUFFER_SIZE=4294967295,c.Buffer=class{constructor(b,y,E){this._hasScrollback=b,this._optionsService=y,this._bufferService=E,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=_.DEFAULT_ATTR_DATA.clone(),this.savedCharset=S.DEFAULT_CHARSET,this.markers=[],this._nullCell=w.CellData.fromCharData([0,C.NULL_CELL_CHAR,C.NULL_CELL_WIDTH,C.NULL_CELL_CODE]),this._whitespaceCell=w.CellData.fromCharData([0,C.WHITESPACE_CELL_CHAR,C.WHITESPACE_CELL_WIDTH,C.WHITESPACE_CELL_CODE]),this._isClearing=!1,this._memoryCleanupQueue=new m.IdleTaskQueue,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new f.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(b){return b?(this._nullCell.fg=b.fg,this._nullCell.bg=b.bg,this._nullCell.extended=b.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new p.ExtendedAttrs),this._nullCell}getWhitespaceCell(b){return b?(this._whitespaceCell.fg=b.fg,this._whitespaceCell.bg=b.bg,this._whitespaceCell.extended=b.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new p.ExtendedAttrs),this._whitespaceCell}getBlankLine(b,y){return new _.BufferLine(this._bufferService.cols,this.getNullCell(b),y)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){const b=this.ybase+this.y-this.ydisp;return b>=0&&b<this._rows}_getCorrectBufferLength(b){if(!this._hasScrollback)return b;const y=b+this._optionsService.rawOptions.scrollback;return y>c.MAX_BUFFER_SIZE?c.MAX_BUFFER_SIZE:y}fillViewportRows(b){if(this.lines.length===0){b===void 0&&(b=_.DEFAULT_ATTR_DATA);let y=this._rows;for(;y--;)this.lines.push(this.getBlankLine(b))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new f.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(b,y){const E=this.getNullCell(_.DEFAULT_ATTR_DATA);let N=0;const T=this._getCorrectBufferLength(y);if(T>this.lines.maxLength&&(this.lines.maxLength=T),this.lines.length>0){if(this._cols<b)for(let A=0;A<this.lines.length;A++)N+=+this.lines.get(A).resize(b,E);let L=0;if(this._rows<y)for(let A=this._rows;A<y;A++)this.lines.length<y+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new _.BufferLine(b,E)):this.ybase>0&&this.lines.length<=this.ybase+this.y+L+1?(this.ybase--,L++,this.ydisp>0&&this.ydisp--):this.lines.push(new _.BufferLine(b,E)));else for(let A=this._rows;A>y;A--)this.lines.length>y+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(T<this.lines.maxLength){const A=this.lines.length-T;A>0&&(this.lines.trimStart(A),this.ybase=Math.max(this.ybase-A,0),this.ydisp=Math.max(this.ydisp-A,0),this.savedY=Math.max(this.savedY-A,0)),this.lines.maxLength=T}this.x=Math.min(this.x,b-1),this.y=Math.min(this.y,y-1),L&&(this.y+=L),this.savedX=Math.min(this.savedX,b-1),this.scrollTop=0}if(this.scrollBottom=y-1,this._isReflowEnabled&&(this._reflow(b,y),this._cols>b))for(let L=0;L<this.lines.length;L++)N+=+this.lines.get(L).resize(b,E);this._cols=b,this._rows=y,this._memoryCleanupQueue.clear(),N>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue((()=>this._batchedMemoryCleanup())))}_batchedMemoryCleanup(){let b=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,b=!1);let y=0;for(;this._memoryCleanupPosition<this.lines.length;)if(y+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),y>100)return!0;return b}get _isReflowEnabled(){const b=this._optionsService.rawOptions.windowsPty;return b&&b.buildNumber?this._hasScrollback&&b.backend==="conpty"&&b.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(b,y){this._cols!==b&&(b>this._cols?this._reflowLarger(b,y):this._reflowSmaller(b,y))}_reflowLarger(b,y){const E=(0,x.reflowLargerGetLinesToRemove)(this.lines,this._cols,b,this.ybase+this.y,this.getNullCell(_.DEFAULT_ATTR_DATA));if(E.length>0){const N=(0,x.reflowLargerCreateNewLayout)(this.lines,E);(0,x.reflowLargerApplyNewLayout)(this.lines,N.layout),this._reflowLargerAdjustViewport(b,y,N.countRemoved)}}_reflowLargerAdjustViewport(b,y,E){const N=this.getNullCell(_.DEFAULT_ATTR_DATA);let T=E;for(;T-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<y&&this.lines.push(new _.BufferLine(b,N))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-E,0)}_reflowSmaller(b,y){const E=this.getNullCell(_.DEFAULT_ATTR_DATA),N=[];let T=0;for(let L=this.lines.length-1;L>=0;L--){let A=this.lines.get(L);if(!A||!A.isWrapped&&A.getTrimmedLength()<=b)continue;const R=[A];for(;A.isWrapped&&L>0;)A=this.lines.get(--L),R.unshift(A);const M=this.ybase+this.y;if(M>=L&&M<L+R.length)continue;const G=R[R.length-1].getTrimmedLength(),W=(0,x.reflowSmallerGetNewLineLengths)(R,this._cols,b),O=W.length-R.length;let U;U=this.ybase===0&&this.y!==this.lines.length-1?Math.max(0,this.y-this.lines.maxLength+O):Math.max(0,this.lines.length-this.lines.maxLength+O);const V=[];for(let $=0;$<O;$++){const F=this.getBlankLine(_.DEFAULT_ATTR_DATA,!0);V.push(F)}V.length>0&&(N.push({start:L+R.length+T,newLines:V}),T+=V.length),R.push(...V);let z=W.length-1,X=W[z];X===0&&(z--,X=W[z]);let te=R.length-O-1,H=G;for(;te>=0;){const $=Math.min(H,X);if(R[z]===void 0)break;if(R[z].copyCellsFrom(R[te],H-$,X-$,$,!0),X-=$,X===0&&(z--,X=W[z]),H-=$,H===0){te--;const F=Math.max(te,0);H=(0,x.getWrappedLineTrimmedLength)(R,F,this._cols)}}for(let $=0;$<R.length;$++)W[$]<b&&R[$].setCell(W[$],E);let I=O-U;for(;I-- >0;)this.ybase===0?this.y<y-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+T)-y&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+O,this.ybase+y-1)}if(N.length>0){const L=[],A=[];for(let z=0;z<this.lines.length;z++)A.push(this.lines.get(z));const R=this.lines.length;let M=R-1,G=0,W=N[G];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+T);let O=0;for(let z=Math.min(this.lines.maxLength-1,R+T-1);z>=0;z--)if(W&&W.start>M+O){for(let X=W.newLines.length-1;X>=0;X--)this.lines.set(z--,W.newLines[X]);z++,L.push({index:M+1,amount:W.newLines.length}),O+=W.newLines.length,W=N[++G]}else this.lines.set(z,A[M--]);let U=0;for(let z=L.length-1;z>=0;z--)L[z].index+=U,this.lines.onInsertEmitter.fire(L[z]),U+=L[z].amount;const V=Math.max(0,R+T-this.lines.maxLength);V>0&&this.lines.onTrimEmitter.fire(V)}}translateBufferLineToString(b,y,E=0,N){const T=this.lines.get(b);return T?T.translateToString(y,E,N):""}getWrappedRangeForLine(b){let y=b,E=b;for(;y>0&&this.lines.get(y).isWrapped;)y--;for(;E+1<this.lines.length&&this.lines.get(E+1).isWrapped;)E++;return{first:y,last:E}}setupTabStops(b){for(b!=null?this.tabs[b]||(b=this.prevStop(b)):(this.tabs={},b=0);b<this._cols;b+=this._optionsService.rawOptions.tabStopWidth)this.tabs[b]=!0}prevStop(b){for(b==null&&(b=this.x);!this.tabs[--b]&&b>0;);return b>=this._cols?this._cols-1:b<0?0:b}nextStop(b){for(b==null&&(b=this.x);!this.tabs[++b]&&b<this._cols;);return b>=this._cols?this._cols-1:b<0?0:b}clearMarkers(b){this._isClearing=!0;for(let y=0;y<this.markers.length;y++)this.markers[y].line===b&&(this.markers[y].dispose(),this.markers.splice(y--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let b=0;b<this.markers.length;b++)this.markers[b].dispose(),this.markers.splice(b--,1);this._isClearing=!1}addMarker(b){const y=new v.Marker(b);return this.markers.push(y),y.register(this.lines.onTrim((E=>{y.line-=E,y.line<0&&y.dispose()}))),y.register(this.lines.onInsert((E=>{y.line>=E.index&&(y.line+=E.amount)}))),y.register(this.lines.onDelete((E=>{y.line>=E.index&&y.line<E.index+E.amount&&y.dispose(),y.line>E.index&&(y.line-=E.amount)}))),y.register(y.onDispose((()=>this._removeMarker(y)))),y}_removeMarker(b){this._isClearing||this.markers.splice(this.markers.indexOf(b),1)}}},8437:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.BufferLine=c.DEFAULT_ATTR_DATA=void 0;const f=d(3734),m=d(511),p=d(643),_=d(482);c.DEFAULT_ATTR_DATA=Object.freeze(new f.AttributeData);let x=0;class w{constructor(v,S,b=!1){this.isWrapped=b,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*v);const y=S||m.CellData.fromCharData([0,p.NULL_CELL_CHAR,p.NULL_CELL_WIDTH,p.NULL_CELL_CODE]);for(let E=0;E<v;++E)this.setCell(E,y);this.length=v}get(v){const S=this._data[3*v+0],b=2097151&S;return[this._data[3*v+1],2097152&S?this._combined[v]:b?(0,_.stringFromCodePoint)(b):"",S>>22,2097152&S?this._combined[v].charCodeAt(this._combined[v].length-1):b]}set(v,S){this._data[3*v+1]=S[p.CHAR_DATA_ATTR_INDEX],S[p.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[v]=S[1],this._data[3*v+0]=2097152|v|S[p.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*v+0]=S[p.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|S[p.CHAR_DATA_WIDTH_INDEX]<<22}getWidth(v){return this._data[3*v+0]>>22}hasWidth(v){return 12582912&this._data[3*v+0]}getFg(v){return this._data[3*v+1]}getBg(v){return this._data[3*v+2]}hasContent(v){return 4194303&this._data[3*v+0]}getCodePoint(v){const S=this._data[3*v+0];return 2097152&S?this._combined[v].charCodeAt(this._combined[v].length-1):2097151&S}isCombined(v){return 2097152&this._data[3*v+0]}getString(v){const S=this._data[3*v+0];return 2097152&S?this._combined[v]:2097151&S?(0,_.stringFromCodePoint)(2097151&S):""}isProtected(v){return 536870912&this._data[3*v+2]}loadCell(v,S){return x=3*v,S.content=this._data[x+0],S.fg=this._data[x+1],S.bg=this._data[x+2],2097152&S.content&&(S.combinedData=this._combined[v]),268435456&S.bg&&(S.extended=this._extendedAttrs[v]),S}setCell(v,S){2097152&S.content&&(this._combined[v]=S.combinedData),268435456&S.bg&&(this._extendedAttrs[v]=S.extended),this._data[3*v+0]=S.content,this._data[3*v+1]=S.fg,this._data[3*v+2]=S.bg}setCellFromCodepoint(v,S,b,y){268435456&y.bg&&(this._extendedAttrs[v]=y.extended),this._data[3*v+0]=S|b<<22,this._data[3*v+1]=y.fg,this._data[3*v+2]=y.bg}addCodepointToCell(v,S,b){let y=this._data[3*v+0];2097152&y?this._combined[v]+=(0,_.stringFromCodePoint)(S):2097151&y?(this._combined[v]=(0,_.stringFromCodePoint)(2097151&y)+(0,_.stringFromCodePoint)(S),y&=-2097152,y|=2097152):y=S|4194304,b&&(y&=-12582913,y|=b<<22),this._data[3*v+0]=y}insertCells(v,S,b){if((v%=this.length)&&this.getWidth(v-1)===2&&this.setCellFromCodepoint(v-1,0,1,b),S<this.length-v){const y=new m.CellData;for(let E=this.length-v-S-1;E>=0;--E)this.setCell(v+S+E,this.loadCell(v+E,y));for(let E=0;E<S;++E)this.setCell(v+E,b)}else for(let y=v;y<this.length;++y)this.setCell(y,b);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,b)}deleteCells(v,S,b){if(v%=this.length,S<this.length-v){const y=new m.CellData;for(let E=0;E<this.length-v-S;++E)this.setCell(v+E,this.loadCell(v+S+E,y));for(let E=this.length-S;E<this.length;++E)this.setCell(E,b)}else for(let y=v;y<this.length;++y)this.setCell(y,b);v&&this.getWidth(v-1)===2&&this.setCellFromCodepoint(v-1,0,1,b),this.getWidth(v)!==0||this.hasContent(v)||this.setCellFromCodepoint(v,0,1,b)}replaceCells(v,S,b,y=!1){if(y)for(v&&this.getWidth(v-1)===2&&!this.isProtected(v-1)&&this.setCellFromCodepoint(v-1,0,1,b),S<this.length&&this.getWidth(S-1)===2&&!this.isProtected(S)&&this.setCellFromCodepoint(S,0,1,b);v<S&&v<this.length;)this.isProtected(v)||this.setCell(v,b),v++;else for(v&&this.getWidth(v-1)===2&&this.setCellFromCodepoint(v-1,0,1,b),S<this.length&&this.getWidth(S-1)===2&&this.setCellFromCodepoint(S,0,1,b);v<S&&v<this.length;)this.setCell(v++,b)}resize(v,S){if(v===this.length)return 4*this._data.length*2<this._data.buffer.byteLength;const b=3*v;if(v>this.length){if(this._data.buffer.byteLength>=4*b)this._data=new Uint32Array(this._data.buffer,0,b);else{const y=new Uint32Array(b);y.set(this._data),this._data=y}for(let y=this.length;y<v;++y)this.setCell(y,S)}else{this._data=this._data.subarray(0,b);const y=Object.keys(this._combined);for(let N=0;N<y.length;N++){const T=parseInt(y[N],10);T>=v&&delete this._combined[T]}const E=Object.keys(this._extendedAttrs);for(let N=0;N<E.length;N++){const T=parseInt(E[N],10);T>=v&&delete this._extendedAttrs[T]}}return this.length=v,4*b*2<this._data.buffer.byteLength}cleanupMemory(){if(4*this._data.length*2<this._data.buffer.byteLength){const v=new Uint32Array(this._data.length);return v.set(this._data),this._data=v,1}return 0}fill(v,S=!1){if(S)for(let b=0;b<this.length;++b)this.isProtected(b)||this.setCell(b,v);else{this._combined={},this._extendedAttrs={};for(let b=0;b<this.length;++b)this.setCell(b,v)}}copyFrom(v){this.length!==v.length?this._data=new Uint32Array(v._data):this._data.set(v._data),this.length=v.length,this._combined={};for(const S in v._combined)this._combined[S]=v._combined[S];this._extendedAttrs={};for(const S in v._extendedAttrs)this._extendedAttrs[S]=v._extendedAttrs[S];this.isWrapped=v.isWrapped}clone(){const v=new w(0);v._data=new Uint32Array(this._data),v.length=this.length;for(const S in this._combined)v._combined[S]=this._combined[S];for(const S in this._extendedAttrs)v._extendedAttrs[S]=this._extendedAttrs[S];return v.isWrapped=this.isWrapped,v}getTrimmedLength(){for(let v=this.length-1;v>=0;--v)if(4194303&this._data[3*v+0])return v+(this._data[3*v+0]>>22);return 0}getNoBgTrimmedLength(){for(let v=this.length-1;v>=0;--v)if(4194303&this._data[3*v+0]||50331648&this._data[3*v+2])return v+(this._data[3*v+0]>>22);return 0}copyCellsFrom(v,S,b,y,E){const N=v._data;if(E)for(let L=y-1;L>=0;L--){for(let A=0;A<3;A++)this._data[3*(b+L)+A]=N[3*(S+L)+A];268435456&N[3*(S+L)+2]&&(this._extendedAttrs[b+L]=v._extendedAttrs[S+L])}else for(let L=0;L<y;L++){for(let A=0;A<3;A++)this._data[3*(b+L)+A]=N[3*(S+L)+A];268435456&N[3*(S+L)+2]&&(this._extendedAttrs[b+L]=v._extendedAttrs[S+L])}const T=Object.keys(v._combined);for(let L=0;L<T.length;L++){const A=parseInt(T[L],10);A>=S&&(this._combined[A-S+b]=v._combined[A])}}translateToString(v,S,b,y){S=S??0,b=b??this.length,v&&(b=Math.min(b,this.getTrimmedLength())),y&&(y.length=0);let E="";for(;S<b;){const N=this._data[3*S+0],T=2097151&N,L=2097152&N?this._combined[S]:T?(0,_.stringFromCodePoint)(T):p.WHITESPACE_CELL_CHAR;if(E+=L,y)for(let A=0;A<L.length;++A)y.push(S);S+=N>>22||1}return y&&y.push(S),E}}c.BufferLine=w},4841:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.getRangeLength=void 0,c.getRangeLength=function(d,f){if(d.start.y>d.end.y)throw new Error(`Buffer range end (${d.end.x}, ${d.end.y}) cannot be before start (${d.start.x}, ${d.start.y})`);return f*(d.end.y-d.start.y)+(d.end.x-d.start.x+1)}},4634:(u,c)=>{function d(f,m,p){if(m===f.length-1)return f[m].getTrimmedLength();const _=!f[m].hasContent(p-1)&&f[m].getWidth(p-1)===1,x=f[m+1].getWidth(0)===2;return _&&x?p-1:p}Object.defineProperty(c,"__esModule",{value:!0}),c.getWrappedLineTrimmedLength=c.reflowSmallerGetNewLineLengths=c.reflowLargerApplyNewLayout=c.reflowLargerCreateNewLayout=c.reflowLargerGetLinesToRemove=void 0,c.reflowLargerGetLinesToRemove=function(f,m,p,_,x){const w=[];for(let C=0;C<f.length-1;C++){let v=C,S=f.get(++v);if(!S.isWrapped)continue;const b=[f.get(C)];for(;v<f.length&&S.isWrapped;)b.push(S),S=f.get(++v);if(_>=C&&_<v){C+=b.length-1;continue}let y=0,E=d(b,y,m),N=1,T=0;for(;N<b.length;){const A=d(b,N,m),R=A-T,M=p-E,G=Math.min(R,M);b[y].copyCellsFrom(b[N],T,E,G,!1),E+=G,E===p&&(y++,E=0),T+=G,T===A&&(N++,T=0),E===0&&y!==0&&b[y-1].getWidth(p-1)===2&&(b[y].copyCellsFrom(b[y-1],p-1,E++,1,!1),b[y-1].setCell(p-1,x))}b[y].replaceCells(E,p,x);let L=0;for(let A=b.length-1;A>0&&(A>y||b[A].getTrimmedLength()===0);A--)L++;L>0&&(w.push(C+b.length-L),w.push(L)),C+=b.length-1}return w},c.reflowLargerCreateNewLayout=function(f,m){const p=[];let _=0,x=m[_],w=0;for(let C=0;C<f.length;C++)if(x===C){const v=m[++_];f.onDeleteEmitter.fire({index:C-w,amount:v}),C+=v-1,w+=v,x=m[++_]}else p.push(C);return{layout:p,countRemoved:w}},c.reflowLargerApplyNewLayout=function(f,m){const p=[];for(let _=0;_<m.length;_++)p.push(f.get(m[_]));for(let _=0;_<p.length;_++)f.set(_,p[_]);f.length=m.length},c.reflowSmallerGetNewLineLengths=function(f,m,p){const _=[],x=f.map(((S,b)=>d(f,b,m))).reduce(((S,b)=>S+b));let w=0,C=0,v=0;for(;v<x;){if(x-v<p){_.push(x-v);break}w+=p;const S=d(f,C,m);w>S&&(w-=S,C++);const b=f[C].getWidth(w-1)===2;b&&w--;const y=b?p-1:p;_.push(y),v+=y}return _},c.getWrappedLineTrimmedLength=d},5295:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.BufferSet=void 0;const f=d(8460),m=d(844),p=d(9092);class _ extends m.Disposable{constructor(w,C){super(),this._optionsService=w,this._bufferService=C,this._onBufferActivate=this.register(new f.EventEmitter),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 p.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new p.Buffer(!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(w){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(w),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(w,C){this._normal.resize(w,C),this._alt.resize(w,C),this.setupTabStops(w)}setupTabStops(w){this._normal.setupTabStops(w),this._alt.setupTabStops(w)}}c.BufferSet=_},511:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.CellData=void 0;const f=d(482),m=d(643),p=d(3734);class _ extends p.AttributeData{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new p.ExtendedAttrs,this.combinedData=""}static fromCharData(w){const C=new _;return C.setFromCharData(w),C}isCombined(){return 2097152&this.content}getWidth(){return this.content>>22}getChars(){return 2097152&this.content?this.combinedData:2097151&this.content?(0,f.stringFromCodePoint)(2097151&this.content):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content}setFromCharData(w){this.fg=w[m.CHAR_DATA_ATTR_INDEX],this.bg=0;let C=!1;if(w[m.CHAR_DATA_CHAR_INDEX].length>2)C=!0;else if(w[m.CHAR_DATA_CHAR_INDEX].length===2){const v=w[m.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=v&&v<=56319){const S=w[m.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=S&&S<=57343?this.content=1024*(v-55296)+S-56320+65536|w[m.CHAR_DATA_WIDTH_INDEX]<<22:C=!0}else C=!0}else this.content=w[m.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|w[m.CHAR_DATA_WIDTH_INDEX]<<22;C&&(this.combinedData=w[m.CHAR_DATA_CHAR_INDEX],this.content=2097152|w[m.CHAR_DATA_WIDTH_INDEX]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}c.CellData=_},643:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.WHITESPACE_CELL_CODE=c.WHITESPACE_CELL_WIDTH=c.WHITESPACE_CELL_CHAR=c.NULL_CELL_CODE=c.NULL_CELL_WIDTH=c.NULL_CELL_CHAR=c.CHAR_DATA_CODE_INDEX=c.CHAR_DATA_WIDTH_INDEX=c.CHAR_DATA_CHAR_INDEX=c.CHAR_DATA_ATTR_INDEX=c.DEFAULT_EXT=c.DEFAULT_ATTR=c.DEFAULT_COLOR=void 0,c.DEFAULT_COLOR=0,c.DEFAULT_ATTR=256|c.DEFAULT_COLOR<<9,c.DEFAULT_EXT=0,c.CHAR_DATA_ATTR_INDEX=0,c.CHAR_DATA_CHAR_INDEX=1,c.CHAR_DATA_WIDTH_INDEX=2,c.CHAR_DATA_CODE_INDEX=3,c.NULL_CELL_CHAR="",c.NULL_CELL_WIDTH=1,c.NULL_CELL_CODE=0,c.WHITESPACE_CELL_CHAR=" ",c.WHITESPACE_CELL_WIDTH=1,c.WHITESPACE_CELL_CODE=32},4863:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.Marker=void 0;const f=d(8460),m=d(844);class p{get id(){return this._id}constructor(x){this.line=x,this.isDisposed=!1,this._disposables=[],this._id=p._nextId++,this._onDispose=this.register(new f.EventEmitter),this.onDispose=this._onDispose.event}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),(0,m.disposeArray)(this._disposables),this._disposables.length=0)}register(x){return this._disposables.push(x),x}}c.Marker=p,p._nextId=1},7116:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.DEFAULT_CHARSET=c.CHARSETS=void 0,c.CHARSETS={},c.DEFAULT_CHARSET=c.CHARSETS.B,c.CHARSETS[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:"≥","{":"π","|":"≠","}":"£","~":"·"},c.CHARSETS.A={"#":"£"},c.CHARSETS.B=void 0,c.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},c.CHARSETS.C=c.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},c.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},c.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},c.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},c.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},c.CHARSETS.E=c.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},c.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},c.CHARSETS.H=c.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},c.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(u,c)=>{var d,f,m;Object.defineProperty(c,"__esModule",{value:!0}),c.C1_ESCAPED=c.C1=c.C0=void 0,(function(p){p.NUL="\0",p.SOH="",p.STX="",p.ETX="",p.EOT="",p.ENQ="",p.ACK="",p.BEL="\x07",p.BS="\b",p.HT=" ",p.LF=`
67
+ `,p.VT="\v",p.FF="\f",p.CR="\r",p.SO="",p.SI="",p.DLE="",p.DC1="",p.DC2="",p.DC3="",p.DC4="",p.NAK="",p.SYN="",p.ETB="",p.CAN="",p.EM="",p.SUB="",p.ESC="\x1B",p.FS="",p.GS="",p.RS="",p.US="",p.SP=" ",p.DEL=""})(d||(c.C0=d={})),(function(p){p.PAD="€",p.HOP="",p.BPH="‚",p.NBH="ƒ",p.IND="„",p.NEL="…",p.SSA="†",p.ESA="‡",p.HTS="ˆ",p.HTJ="‰",p.VTS="Š",p.PLD="‹",p.PLU="Œ",p.RI="",p.SS2="Ž",p.SS3="",p.DCS="",p.PU1="‘",p.PU2="’",p.STS="“",p.CCH="”",p.MW="•",p.SPA="–",p.EPA="—",p.SOS="˜",p.SGCI="™",p.SCI="š",p.CSI="›",p.ST="œ",p.OSC="",p.PM="ž",p.APC="Ÿ"})(f||(c.C1=f={})),(function(p){p.ST=`${d.ESC}\\`})(m||(c.C1_ESCAPED=m={}))},7399:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.evaluateKeyboardEvent=void 0;const f=d(2584),m={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:["'",'"']};c.evaluateKeyboardEvent=function(p,_,x,w){const C={type:0,cancel:!1,key:void 0},v=(p.shiftKey?1:0)|(p.altKey?2:0)|(p.ctrlKey?4:0)|(p.metaKey?8:0);switch(p.keyCode){case 0:p.key==="UIKeyInputUpArrow"?C.key=_?f.C0.ESC+"OA":f.C0.ESC+"[A":p.key==="UIKeyInputLeftArrow"?C.key=_?f.C0.ESC+"OD":f.C0.ESC+"[D":p.key==="UIKeyInputRightArrow"?C.key=_?f.C0.ESC+"OC":f.C0.ESC+"[C":p.key==="UIKeyInputDownArrow"&&(C.key=_?f.C0.ESC+"OB":f.C0.ESC+"[B");break;case 8:C.key=p.ctrlKey?"\b":f.C0.DEL,p.altKey&&(C.key=f.C0.ESC+C.key);break;case 9:if(p.shiftKey){C.key=f.C0.ESC+"[Z";break}C.key=f.C0.HT,C.cancel=!0;break;case 13:C.key=p.altKey?f.C0.ESC+f.C0.CR:f.C0.CR,C.cancel=!0;break;case 27:C.key=f.C0.ESC,p.altKey&&(C.key=f.C0.ESC+f.C0.ESC),C.cancel=!0;break;case 37:if(p.metaKey)break;v?(C.key=f.C0.ESC+"[1;"+(v+1)+"D",C.key===f.C0.ESC+"[1;3D"&&(C.key=f.C0.ESC+(x?"b":"[1;5D"))):C.key=_?f.C0.ESC+"OD":f.C0.ESC+"[D";break;case 39:if(p.metaKey)break;v?(C.key=f.C0.ESC+"[1;"+(v+1)+"C",C.key===f.C0.ESC+"[1;3C"&&(C.key=f.C0.ESC+(x?"f":"[1;5C"))):C.key=_?f.C0.ESC+"OC":f.C0.ESC+"[C";break;case 38:if(p.metaKey)break;v?(C.key=f.C0.ESC+"[1;"+(v+1)+"A",x||C.key!==f.C0.ESC+"[1;3A"||(C.key=f.C0.ESC+"[1;5A")):C.key=_?f.C0.ESC+"OA":f.C0.ESC+"[A";break;case 40:if(p.metaKey)break;v?(C.key=f.C0.ESC+"[1;"+(v+1)+"B",x||C.key!==f.C0.ESC+"[1;3B"||(C.key=f.C0.ESC+"[1;5B")):C.key=_?f.C0.ESC+"OB":f.C0.ESC+"[B";break;case 45:p.shiftKey||p.ctrlKey||(C.key=f.C0.ESC+"[2~");break;case 46:C.key=v?f.C0.ESC+"[3;"+(v+1)+"~":f.C0.ESC+"[3~";break;case 36:C.key=v?f.C0.ESC+"[1;"+(v+1)+"H":_?f.C0.ESC+"OH":f.C0.ESC+"[H";break;case 35:C.key=v?f.C0.ESC+"[1;"+(v+1)+"F":_?f.C0.ESC+"OF":f.C0.ESC+"[F";break;case 33:p.shiftKey?C.type=2:p.ctrlKey?C.key=f.C0.ESC+"[5;"+(v+1)+"~":C.key=f.C0.ESC+"[5~";break;case 34:p.shiftKey?C.type=3:p.ctrlKey?C.key=f.C0.ESC+"[6;"+(v+1)+"~":C.key=f.C0.ESC+"[6~";break;case 112:C.key=v?f.C0.ESC+"[1;"+(v+1)+"P":f.C0.ESC+"OP";break;case 113:C.key=v?f.C0.ESC+"[1;"+(v+1)+"Q":f.C0.ESC+"OQ";break;case 114:C.key=v?f.C0.ESC+"[1;"+(v+1)+"R":f.C0.ESC+"OR";break;case 115:C.key=v?f.C0.ESC+"[1;"+(v+1)+"S":f.C0.ESC+"OS";break;case 116:C.key=v?f.C0.ESC+"[15;"+(v+1)+"~":f.C0.ESC+"[15~";break;case 117:C.key=v?f.C0.ESC+"[17;"+(v+1)+"~":f.C0.ESC+"[17~";break;case 118:C.key=v?f.C0.ESC+"[18;"+(v+1)+"~":f.C0.ESC+"[18~";break;case 119:C.key=v?f.C0.ESC+"[19;"+(v+1)+"~":f.C0.ESC+"[19~";break;case 120:C.key=v?f.C0.ESC+"[20;"+(v+1)+"~":f.C0.ESC+"[20~";break;case 121:C.key=v?f.C0.ESC+"[21;"+(v+1)+"~":f.C0.ESC+"[21~";break;case 122:C.key=v?f.C0.ESC+"[23;"+(v+1)+"~":f.C0.ESC+"[23~";break;case 123:C.key=v?f.C0.ESC+"[24;"+(v+1)+"~":f.C0.ESC+"[24~";break;default:if(!p.ctrlKey||p.shiftKey||p.altKey||p.metaKey)if(x&&!w||!p.altKey||p.metaKey)!x||p.altKey||p.ctrlKey||p.shiftKey||!p.metaKey?p.key&&!p.ctrlKey&&!p.altKey&&!p.metaKey&&p.keyCode>=48&&p.key.length===1?C.key=p.key:p.key&&p.ctrlKey&&(p.key==="_"&&(C.key=f.C0.US),p.key==="@"&&(C.key=f.C0.NUL)):p.keyCode===65&&(C.type=1);else{const S=m[p.keyCode],b=S==null?void 0:S[p.shiftKey?1:0];if(b)C.key=f.C0.ESC+b;else if(p.keyCode>=65&&p.keyCode<=90){const y=p.ctrlKey?p.keyCode-64:p.keyCode+32;let E=String.fromCharCode(y);p.shiftKey&&(E=E.toUpperCase()),C.key=f.C0.ESC+E}else if(p.keyCode===32)C.key=f.C0.ESC+(p.ctrlKey?f.C0.NUL:" ");else if(p.key==="Dead"&&p.code.startsWith("Key")){let y=p.code.slice(3,4);p.shiftKey||(y=y.toLowerCase()),C.key=f.C0.ESC+y,C.cancel=!0}}else p.keyCode>=65&&p.keyCode<=90?C.key=String.fromCharCode(p.keyCode-64):p.keyCode===32?C.key=f.C0.NUL:p.keyCode>=51&&p.keyCode<=55?C.key=String.fromCharCode(p.keyCode-51+27):p.keyCode===56?C.key=f.C0.DEL:p.keyCode===219?C.key=f.C0.ESC:p.keyCode===220?C.key=f.C0.FS:p.keyCode===221&&(C.key=f.C0.GS)}return C}},482:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.Utf8ToUtf32=c.StringToUtf32=c.utf32ToString=c.stringFromCodePoint=void 0,c.stringFromCodePoint=function(d){return d>65535?(d-=65536,String.fromCharCode(55296+(d>>10))+String.fromCharCode(d%1024+56320)):String.fromCharCode(d)},c.utf32ToString=function(d,f=0,m=d.length){let p="";for(let _=f;_<m;++_){let x=d[_];x>65535?(x-=65536,p+=String.fromCharCode(55296+(x>>10))+String.fromCharCode(x%1024+56320)):p+=String.fromCharCode(x)}return p},c.StringToUtf32=class{constructor(){this._interim=0}clear(){this._interim=0}decode(d,f){const m=d.length;if(!m)return 0;let p=0,_=0;if(this._interim){const x=d.charCodeAt(_++);56320<=x&&x<=57343?f[p++]=1024*(this._interim-55296)+x-56320+65536:(f[p++]=this._interim,f[p++]=x),this._interim=0}for(let x=_;x<m;++x){const w=d.charCodeAt(x);if(55296<=w&&w<=56319){if(++x>=m)return this._interim=w,p;const C=d.charCodeAt(x);56320<=C&&C<=57343?f[p++]=1024*(w-55296)+C-56320+65536:(f[p++]=w,f[p++]=C)}else w!==65279&&(f[p++]=w)}return p}},c.Utf8ToUtf32=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(d,f){const m=d.length;if(!m)return 0;let p,_,x,w,C=0,v=0,S=0;if(this.interim[0]){let E=!1,N=this.interim[0];N&=(224&N)==192?31:(240&N)==224?15:7;let T,L=0;for(;(T=63&this.interim[++L])&&L<4;)N<<=6,N|=T;const A=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,R=A-L;for(;S<R;){if(S>=m)return 0;if(T=d[S++],(192&T)!=128){S--,E=!0;break}this.interim[L++]=T,N<<=6,N|=63&T}E||(A===2?N<128?S--:f[C++]=N:A===3?N<2048||N>=55296&&N<=57343||N===65279||(f[C++]=N):N<65536||N>1114111||(f[C++]=N)),this.interim.fill(0)}const b=m-4;let y=S;for(;y<m;){for(;!(!(y<b)||128&(p=d[y])||128&(_=d[y+1])||128&(x=d[y+2])||128&(w=d[y+3]));)f[C++]=p,f[C++]=_,f[C++]=x,f[C++]=w,y+=4;if(p=d[y++],p<128)f[C++]=p;else if((224&p)==192){if(y>=m)return this.interim[0]=p,C;if(_=d[y++],(192&_)!=128){y--;continue}if(v=(31&p)<<6|63&_,v<128){y--;continue}f[C++]=v}else if((240&p)==224){if(y>=m)return this.interim[0]=p,C;if(_=d[y++],(192&_)!=128){y--;continue}if(y>=m)return this.interim[0]=p,this.interim[1]=_,C;if(x=d[y++],(192&x)!=128){y--;continue}if(v=(15&p)<<12|(63&_)<<6|63&x,v<2048||v>=55296&&v<=57343||v===65279)continue;f[C++]=v}else if((248&p)==240){if(y>=m)return this.interim[0]=p,C;if(_=d[y++],(192&_)!=128){y--;continue}if(y>=m)return this.interim[0]=p,this.interim[1]=_,C;if(x=d[y++],(192&x)!=128){y--;continue}if(y>=m)return this.interim[0]=p,this.interim[1]=_,this.interim[2]=x,C;if(w=d[y++],(192&w)!=128){y--;continue}if(v=(7&p)<<18|(63&_)<<12|(63&x)<<6|63&w,v<65536||v>1114111)continue;f[C++]=v}}return C}}},225:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.UnicodeV6=void 0;const f=d(1480),m=[[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]],p=[[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]];let _;c.UnicodeV6=class{constructor(){if(this.version="6",!_){_=new Uint8Array(65536),_.fill(1),_[0]=0,_.fill(0,1,32),_.fill(0,127,160),_.fill(2,4352,4448),_[9001]=2,_[9002]=2,_.fill(2,11904,42192),_[12351]=1,_.fill(2,44032,55204),_.fill(2,63744,64256),_.fill(2,65040,65050),_.fill(2,65072,65136),_.fill(2,65280,65377),_.fill(2,65504,65511);for(let x=0;x<m.length;++x)_.fill(0,m[x][0],m[x][1]+1)}}wcwidth(x){return x<32?0:x<127?1:x<65536?_[x]:(function(w,C){let v,S=0,b=C.length-1;if(w<C[0][0]||w>C[b][1])return!1;for(;b>=S;)if(v=S+b>>1,w>C[v][1])S=v+1;else{if(!(w<C[v][0]))return!0;b=v-1}return!1})(x,p)?0:x>=131072&&x<=196605||x>=196608&&x<=262141?2:1}charProperties(x,w){let C=this.wcwidth(x),v=C===0&&w!==0;if(v){const S=f.UnicodeService.extractWidth(w);S===0?v=!1:S>C&&(C=S)}return f.UnicodeService.createPropertyValue(0,C,v)}}},5981:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.WriteBuffer=void 0;const f=d(8460),m=d(844);class p extends m.Disposable{constructor(x){super(),this._action=x,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this.register(new f.EventEmitter),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(x,w){if(w!==void 0&&this._syncCalls>w)return void(this._syncCalls=0);if(this._pendingData+=x.length,this._writeBuffer.push(x),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;let C;for(this._isSyncWriting=!0;C=this._writeBuffer.shift();){this._action(C);const v=this._callbacks.shift();v&&v()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(x,w){if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput)return this._didUserInput=!1,this._pendingData+=x.length,this._writeBuffer.push(x),this._callbacks.push(w),void this._innerWrite();setTimeout((()=>this._innerWrite()))}this._pendingData+=x.length,this._writeBuffer.push(x),this._callbacks.push(w)}_innerWrite(x=0,w=!0){const C=x||Date.now();for(;this._writeBuffer.length>this._bufferOffset;){const v=this._writeBuffer[this._bufferOffset],S=this._action(v,w);if(S){const y=E=>Date.now()-C>=12?setTimeout((()=>this._innerWrite(0,E))):this._innerWrite(C,E);return void S.catch((E=>(queueMicrotask((()=>{throw E})),Promise.resolve(!1)))).then(y)}const b=this._callbacks[this._bufferOffset];if(b&&b(),this._bufferOffset++,this._pendingData-=v.length,Date.now()-C>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(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()}}c.WriteBuffer=p},5941:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.toRgbString=c.parseColor=void 0;const d=/^([\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})$/,f=/^[\da-f]+$/;function m(p,_){const x=p.toString(16),w=x.length<2?"0"+x:x;switch(_){case 4:return x[0];case 8:return w;case 12:return(w+w).slice(0,3);default:return w+w}}c.parseColor=function(p){if(!p)return;let _=p.toLowerCase();if(_.indexOf("rgb:")===0){_=_.slice(4);const x=d.exec(_);if(x){const w=x[1]?15:x[4]?255:x[7]?4095:65535;return[Math.round(parseInt(x[1]||x[4]||x[7]||x[10],16)/w*255),Math.round(parseInt(x[2]||x[5]||x[8]||x[11],16)/w*255),Math.round(parseInt(x[3]||x[6]||x[9]||x[12],16)/w*255)]}}else if(_.indexOf("#")===0&&(_=_.slice(1),f.exec(_)&&[3,6,9,12].includes(_.length))){const x=_.length/3,w=[0,0,0];for(let C=0;C<3;++C){const v=parseInt(_.slice(x*C,x*C+x),16);w[C]=x===1?v<<4:x===2?v:x===3?v>>4:v>>8}return w}},c.toRgbString=function(p,_=16){const[x,w,C]=p;return`rgb:${m(x,_)}/${m(w,_)}/${m(C,_)}`}},5770:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.PAYLOAD_LIMIT=void 0,c.PAYLOAD_LIMIT=1e7},6351:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.DcsHandler=c.DcsParser=void 0;const f=d(482),m=d(8742),p=d(5770),_=[];c.DcsParser=class{constructor(){this._handlers=Object.create(null),this._active=_,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=_}registerHandler(w,C){this._handlers[w]===void 0&&(this._handlers[w]=[]);const v=this._handlers[w];return v.push(C),{dispose:()=>{const S=v.indexOf(C);S!==-1&&v.splice(S,1)}}}clearHandler(w){this._handlers[w]&&delete this._handlers[w]}setHandlerFallback(w){this._handlerFb=w}reset(){if(this._active.length)for(let w=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;w>=0;--w)this._active[w].unhook(!1);this._stack.paused=!1,this._active=_,this._ident=0}hook(w,C){if(this.reset(),this._ident=w,this._active=this._handlers[w]||_,this._active.length)for(let v=this._active.length-1;v>=0;v--)this._active[v].hook(C);else this._handlerFb(this._ident,"HOOK",C)}put(w,C,v){if(this._active.length)for(let S=this._active.length-1;S>=0;S--)this._active[S].put(w,C,v);else this._handlerFb(this._ident,"PUT",(0,f.utf32ToString)(w,C,v))}unhook(w,C=!0){if(this._active.length){let v=!1,S=this._active.length-1,b=!1;if(this._stack.paused&&(S=this._stack.loopPosition-1,v=C,b=this._stack.fallThrough,this._stack.paused=!1),!b&&v===!1){for(;S>=0&&(v=this._active[S].unhook(w),v!==!0);S--)if(v instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=S,this._stack.fallThrough=!1,v;S--}for(;S>=0;S--)if(v=this._active[S].unhook(!1),v instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=S,this._stack.fallThrough=!0,v}else this._handlerFb(this._ident,"UNHOOK",w);this._active=_,this._ident=0}};const x=new m.Params;x.addParam(0),c.DcsHandler=class{constructor(w){this._handler=w,this._data="",this._params=x,this._hitLimit=!1}hook(w){this._params=w.length>1||w.params[0]?w.clone():x,this._data="",this._hitLimit=!1}put(w,C,v){this._hitLimit||(this._data+=(0,f.utf32ToString)(w,C,v),this._data.length>p.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))}unhook(w){let C=!1;if(this._hitLimit)C=!1;else if(w&&(C=this._handler(this._data,this._params),C instanceof Promise))return C.then((v=>(this._params=x,this._data="",this._hitLimit=!1,v)));return this._params=x,this._data="",this._hitLimit=!1,C}}},2015:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.EscapeSequenceParser=c.VT500_TRANSITION_TABLE=c.TransitionTable=void 0;const f=d(844),m=d(8742),p=d(6242),_=d(6351);class x{constructor(S){this.table=new Uint8Array(S)}setDefault(S,b){this.table.fill(S<<4|b)}add(S,b,y,E){this.table[b<<8|S]=y<<4|E}addMany(S,b,y,E){for(let N=0;N<S.length;N++)this.table[b<<8|S[N]]=y<<4|E}}c.TransitionTable=x;const w=160;c.VT500_TRANSITION_TABLE=(function(){const v=new x(4095),S=Array.apply(null,Array(256)).map(((L,A)=>A)),b=(L,A)=>S.slice(L,A),y=b(32,127),E=b(0,24);E.push(25),E.push.apply(E,b(28,32));const N=b(0,14);let T;for(T in v.setDefault(1,0),v.addMany(y,0,2,0),N)v.addMany([24,26,153,154],T,3,0),v.addMany(b(128,144),T,3,0),v.addMany(b(144,152),T,3,0),v.add(156,T,0,0),v.add(27,T,11,1),v.add(157,T,4,8),v.addMany([152,158,159],T,0,7),v.add(155,T,11,3),v.add(144,T,11,9);return v.addMany(E,0,3,0),v.addMany(E,1,3,1),v.add(127,1,0,1),v.addMany(E,8,0,8),v.addMany(E,3,3,3),v.add(127,3,0,3),v.addMany(E,4,3,4),v.add(127,4,0,4),v.addMany(E,6,3,6),v.addMany(E,5,3,5),v.add(127,5,0,5),v.addMany(E,2,3,2),v.add(127,2,0,2),v.add(93,1,4,8),v.addMany(y,8,5,8),v.add(127,8,5,8),v.addMany([156,27,24,26,7],8,6,0),v.addMany(b(28,32),8,0,8),v.addMany([88,94,95],1,0,7),v.addMany(y,7,0,7),v.addMany(E,7,0,7),v.add(156,7,0,0),v.add(127,7,0,7),v.add(91,1,11,3),v.addMany(b(64,127),3,7,0),v.addMany(b(48,60),3,8,4),v.addMany([60,61,62,63],3,9,4),v.addMany(b(48,60),4,8,4),v.addMany(b(64,127),4,7,0),v.addMany([60,61,62,63],4,0,6),v.addMany(b(32,64),6,0,6),v.add(127,6,0,6),v.addMany(b(64,127),6,0,0),v.addMany(b(32,48),3,9,5),v.addMany(b(32,48),5,9,5),v.addMany(b(48,64),5,0,6),v.addMany(b(64,127),5,7,0),v.addMany(b(32,48),4,9,5),v.addMany(b(32,48),1,9,2),v.addMany(b(32,48),2,9,2),v.addMany(b(48,127),2,10,0),v.addMany(b(48,80),1,10,0),v.addMany(b(81,88),1,10,0),v.addMany([89,90,92],1,10,0),v.addMany(b(96,127),1,10,0),v.add(80,1,11,9),v.addMany(E,9,0,9),v.add(127,9,0,9),v.addMany(b(28,32),9,0,9),v.addMany(b(32,48),9,9,12),v.addMany(b(48,60),9,8,10),v.addMany([60,61,62,63],9,9,10),v.addMany(E,11,0,11),v.addMany(b(32,128),11,0,11),v.addMany(b(28,32),11,0,11),v.addMany(E,10,0,10),v.add(127,10,0,10),v.addMany(b(28,32),10,0,10),v.addMany(b(48,60),10,8,10),v.addMany([60,61,62,63],10,0,11),v.addMany(b(32,48),10,9,12),v.addMany(E,12,0,12),v.add(127,12,0,12),v.addMany(b(28,32),12,0,12),v.addMany(b(32,48),12,9,12),v.addMany(b(48,64),12,0,11),v.addMany(b(64,127),12,12,13),v.addMany(b(64,127),10,12,13),v.addMany(b(64,127),9,12,13),v.addMany(E,13,13,13),v.addMany(y,13,13,13),v.add(127,13,0,13),v.addMany([27,156,24,26],13,14,0),v.add(w,0,2,0),v.add(w,8,5,8),v.add(w,6,0,6),v.add(w,11,0,11),v.add(w,13,13,13),v})();class C extends f.Disposable{constructor(S=c.VT500_TRANSITION_TABLE){super(),this._transitions=S,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new m.Params,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(b,y,E)=>{},this._executeHandlerFb=b=>{},this._csiHandlerFb=(b,y)=>{},this._escHandlerFb=b=>{},this._errorHandlerFb=b=>b,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this.register((0,f.toDisposable)((()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)}))),this._oscParser=this.register(new p.OscParser),this._dcsParser=this.register(new _.DcsParser),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},(()=>!0))}_identifier(S,b=[64,126]){let y=0;if(S.prefix){if(S.prefix.length>1)throw new Error("only one byte as prefix supported");if(y=S.prefix.charCodeAt(0),y&&60>y||y>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(S.intermediates){if(S.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let N=0;N<S.intermediates.length;++N){const T=S.intermediates.charCodeAt(N);if(32>T||T>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");y<<=8,y|=T}}if(S.final.length!==1)throw new Error("final must be a single byte");const E=S.final.charCodeAt(0);if(b[0]>E||E>b[1])throw new Error(`final must be in range ${b[0]} .. ${b[1]}`);return y<<=8,y|=E,y}identToString(S){const b=[];for(;S;)b.push(String.fromCharCode(255&S)),S>>=8;return b.reverse().join("")}setPrintHandler(S){this._printHandler=S}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(S,b){const y=this._identifier(S,[48,126]);this._escHandlers[y]===void 0&&(this._escHandlers[y]=[]);const E=this._escHandlers[y];return E.push(b),{dispose:()=>{const N=E.indexOf(b);N!==-1&&E.splice(N,1)}}}clearEscHandler(S){this._escHandlers[this._identifier(S,[48,126])]&&delete this._escHandlers[this._identifier(S,[48,126])]}setEscHandlerFallback(S){this._escHandlerFb=S}setExecuteHandler(S,b){this._executeHandlers[S.charCodeAt(0)]=b}clearExecuteHandler(S){this._executeHandlers[S.charCodeAt(0)]&&delete this._executeHandlers[S.charCodeAt(0)]}setExecuteHandlerFallback(S){this._executeHandlerFb=S}registerCsiHandler(S,b){const y=this._identifier(S);this._csiHandlers[y]===void 0&&(this._csiHandlers[y]=[]);const E=this._csiHandlers[y];return E.push(b),{dispose:()=>{const N=E.indexOf(b);N!==-1&&E.splice(N,1)}}}clearCsiHandler(S){this._csiHandlers[this._identifier(S)]&&delete this._csiHandlers[this._identifier(S)]}setCsiHandlerFallback(S){this._csiHandlerFb=S}registerDcsHandler(S,b){return this._dcsParser.registerHandler(this._identifier(S),b)}clearDcsHandler(S){this._dcsParser.clearHandler(this._identifier(S))}setDcsHandlerFallback(S){this._dcsParser.setHandlerFallback(S)}registerOscHandler(S,b){return this._oscParser.registerHandler(S,b)}clearOscHandler(S){this._oscParser.clearHandler(S)}setOscHandlerFallback(S){this._oscParser.setHandlerFallback(S)}setErrorHandler(S){this._errorHandler=S}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(S,b,y,E,N){this._parseStack.state=S,this._parseStack.handlers=b,this._parseStack.handlerPos=y,this._parseStack.transition=E,this._parseStack.chunkPos=N}parse(S,b,y){let E,N=0,T=0,L=0;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,L=this._parseStack.chunkPos+1;else{if(y===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");const A=this._parseStack.handlers;let R=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(y===!1&&R>-1){for(;R>=0&&(E=A[R](this._params),E!==!0);R--)if(E instanceof Promise)return this._parseStack.handlerPos=R,E}this._parseStack.handlers=[];break;case 4:if(y===!1&&R>-1){for(;R>=0&&(E=A[R](),E!==!0);R--)if(E instanceof Promise)return this._parseStack.handlerPos=R,E}this._parseStack.handlers=[];break;case 6:if(N=S[this._parseStack.chunkPos],E=this._dcsParser.unhook(N!==24&&N!==26,y),E)return E;N===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(N=S[this._parseStack.chunkPos],E=this._oscParser.end(N!==24&&N!==26,y),E)return E;N===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,L=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=15&this._parseStack.transition}for(let A=L;A<b;++A){switch(N=S[A],T=this._transitions.table[this.currentState<<8|(N<160?N:w)],T>>4){case 2:for(let O=A+1;;++O){if(O>=b||(N=S[O])<32||N>126&&N<w){this._printHandler(S,A,O),A=O-1;break}if(++O>=b||(N=S[O])<32||N>126&&N<w){this._printHandler(S,A,O),A=O-1;break}if(++O>=b||(N=S[O])<32||N>126&&N<w){this._printHandler(S,A,O),A=O-1;break}if(++O>=b||(N=S[O])<32||N>126&&N<w){this._printHandler(S,A,O),A=O-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:A,code:N,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:const R=this._csiHandlers[this._collect<<8|N];let M=R?R.length-1:-1;for(;M>=0&&(E=R[M](this._params),E!==!0);M--)if(E instanceof Promise)return this._preserveStack(3,R,M,T,A),E;M<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(++A<b&&(N=S[A])>47&&N<60);A--;break;case 9:this._collect<<=8,this._collect|=N;break;case 10:const G=this._escHandlers[this._collect<<8|N];let W=G?G.length-1:-1;for(;W>=0&&(E=G[W](),E!==!0);W--)if(E instanceof Promise)return this._preserveStack(4,G,W,T,A),E;W<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 O=A+1;;++O)if(O>=b||(N=S[O])===24||N===26||N===27||N>127&&N<w){this._dcsParser.put(S,A,O),A=O-1;break}break;case 14:if(E=this._dcsParser.unhook(N!==24&&N!==26),E)return this._preserveStack(6,[],0,T,A),E;N===27&&(T|=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 O=A+1;;O++)if(O>=b||(N=S[O])<32||N>127&&N<w){this._oscParser.put(S,A,O),A=O-1;break}break;case 6:if(E=this._oscParser.end(N!==24&&N!==26),E)return this._preserveStack(5,[],0,T,A),E;N===27&&(T|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0}this.currentState=15&T}}}c.EscapeSequenceParser=C},6242:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.OscHandler=c.OscParser=void 0;const f=d(5770),m=d(482),p=[];c.OscParser=class{constructor(){this._state=0,this._active=p,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(_,x){this._handlers[_]===void 0&&(this._handlers[_]=[]);const w=this._handlers[_];return w.push(x),{dispose:()=>{const C=w.indexOf(x);C!==-1&&w.splice(C,1)}}}clearHandler(_){this._handlers[_]&&delete this._handlers[_]}setHandlerFallback(_){this._handlerFb=_}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=p}reset(){if(this._state===2)for(let _=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;_>=0;--_)this._active[_].end(!1);this._stack.paused=!1,this._active=p,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||p,this._active.length)for(let _=this._active.length-1;_>=0;_--)this._active[_].start();else this._handlerFb(this._id,"START")}_put(_,x,w){if(this._active.length)for(let C=this._active.length-1;C>=0;C--)this._active[C].put(_,x,w);else this._handlerFb(this._id,"PUT",(0,m.utf32ToString)(_,x,w))}start(){this.reset(),this._state=1}put(_,x,w){if(this._state!==3){if(this._state===1)for(;x<w;){const C=_[x++];if(C===59){this._state=2,this._start();break}if(C<48||57<C)return void(this._state=3);this._id===-1&&(this._id=0),this._id=10*this._id+C-48}this._state===2&&w-x>0&&this._put(_,x,w)}}end(_,x=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),this._active.length){let w=!1,C=this._active.length-1,v=!1;if(this._stack.paused&&(C=this._stack.loopPosition-1,w=x,v=this._stack.fallThrough,this._stack.paused=!1),!v&&w===!1){for(;C>=0&&(w=this._active[C].end(_),w!==!0);C--)if(w instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=C,this._stack.fallThrough=!1,w;C--}for(;C>=0;C--)if(w=this._active[C].end(!1),w instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=C,this._stack.fallThrough=!0,w}else this._handlerFb(this._id,"END",_);this._active=p,this._id=-1,this._state=0}}},c.OscHandler=class{constructor(_){this._handler=_,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(_,x,w){this._hitLimit||(this._data+=(0,m.utf32ToString)(_,x,w),this._data.length>f.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))}end(_){let x=!1;if(this._hitLimit)x=!1;else if(_&&(x=this._handler(this._data),x instanceof Promise))return x.then((w=>(this._data="",this._hitLimit=!1,w)));return this._data="",this._hitLimit=!1,x}}},8742:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.Params=void 0;const d=2147483647;class f{static fromArray(p){const _=new f;if(!p.length)return _;for(let x=Array.isArray(p[0])?1:0;x<p.length;++x){const w=p[x];if(Array.isArray(w))for(let C=0;C<w.length;++C)_.addSubParam(w[C]);else _.addParam(w)}return _}constructor(p=32,_=32){if(this.maxLength=p,this.maxSubParamsLength=_,_>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(p),this.length=0,this._subParams=new Int32Array(_),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(p),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}clone(){const p=new f(this.maxLength,this.maxSubParamsLength);return p.params.set(this.params),p.length=this.length,p._subParams.set(this._subParams),p._subParamsLength=this._subParamsLength,p._subParamsIdx.set(this._subParamsIdx),p._rejectDigits=this._rejectDigits,p._rejectSubDigits=this._rejectSubDigits,p._digitIsSub=this._digitIsSub,p}toArray(){const p=[];for(let _=0;_<this.length;++_){p.push(this.params[_]);const x=this._subParamsIdx[_]>>8,w=255&this._subParamsIdx[_];w-x>0&&p.push(Array.prototype.slice.call(this._subParams,x,w))}return p}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(p){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(p<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=p>d?d:p}}addSubParam(p){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(p<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=p>d?d:p,this._subParamsIdx[this.length-1]++}}hasSubParams(p){return(255&this._subParamsIdx[p])-(this._subParamsIdx[p]>>8)>0}getSubParams(p){const _=this._subParamsIdx[p]>>8,x=255&this._subParamsIdx[p];return x-_>0?this._subParams.subarray(_,x):null}getSubParamsAll(){const p={};for(let _=0;_<this.length;++_){const x=this._subParamsIdx[_]>>8,w=255&this._subParamsIdx[_];w-x>0&&(p[_]=this._subParams.slice(x,w))}return p}addDigit(p){let _;if(this._rejectDigits||!(_=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;const x=this._digitIsSub?this._subParams:this.params,w=x[_-1];x[_-1]=~w?Math.min(10*w+p,d):p}}c.Params=f},5741:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.AddonManager=void 0,c.AddonManager=class{constructor(){this._addons=[]}dispose(){for(let d=this._addons.length-1;d>=0;d--)this._addons[d].instance.dispose()}loadAddon(d,f){const m={instance:f,dispose:f.dispose,isDisposed:!1};this._addons.push(m),f.dispose=()=>this._wrappedAddonDispose(m),f.activate(d)}_wrappedAddonDispose(d){if(d.isDisposed)return;let f=-1;for(let m=0;m<this._addons.length;m++)if(this._addons[m]===d){f=m;break}if(f===-1)throw new Error("Could not dispose an addon that has not been loaded");d.isDisposed=!0,d.dispose.apply(d.instance),this._addons.splice(f,1)}}},8771:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.BufferApiView=void 0;const f=d(3785),m=d(511);c.BufferApiView=class{constructor(p,_){this._buffer=p,this.type=_}init(p){return this._buffer=p,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(p){const _=this._buffer.lines.get(p);if(_)return new f.BufferLineApiView(_)}getNullCell(){return new m.CellData}}},3785:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.BufferLineApiView=void 0;const f=d(511);c.BufferLineApiView=class{constructor(m){this._line=m}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(m,p){if(!(m<0||m>=this._line.length))return p?(this._line.loadCell(m,p),p):this._line.loadCell(m,new f.CellData)}translateToString(m,p,_){return this._line.translateToString(m,p,_)}}},8285:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.BufferNamespaceApi=void 0;const f=d(8771),m=d(8460),p=d(844);class _ extends p.Disposable{constructor(w){super(),this._core=w,this._onBufferChange=this.register(new m.EventEmitter),this.onBufferChange=this._onBufferChange.event,this._normal=new f.BufferApiView(this._core.buffers.normal,"normal"),this._alternate=new f.BufferApiView(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)}}c.BufferNamespaceApi=_},7975:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.ParserApi=void 0,c.ParserApi=class{constructor(d){this._core=d}registerCsiHandler(d,f){return this._core.registerCsiHandler(d,(m=>f(m.toArray())))}addCsiHandler(d,f){return this.registerCsiHandler(d,f)}registerDcsHandler(d,f){return this._core.registerDcsHandler(d,((m,p)=>f(m,p.toArray())))}addDcsHandler(d,f){return this.registerDcsHandler(d,f)}registerEscHandler(d,f){return this._core.registerEscHandler(d,f)}addEscHandler(d,f){return this.registerEscHandler(d,f)}registerOscHandler(d,f){return this._core.registerOscHandler(d,f)}addOscHandler(d,f){return this.registerOscHandler(d,f)}}},7090:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.UnicodeApi=void 0,c.UnicodeApi=class{constructor(d){this._core=d}register(d){this._core.unicodeService.register(d)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(d){this._core.unicodeService.activeVersion=d}}},744:function(u,c,d){var f=this&&this.__decorate||function(v,S,b,y){var E,N=arguments.length,T=N<3?S:y===null?y=Object.getOwnPropertyDescriptor(S,b):y;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(v,S,b,y);else for(var L=v.length-1;L>=0;L--)(E=v[L])&&(T=(N<3?E(T):N>3?E(S,b,T):E(S,b))||T);return N>3&&T&&Object.defineProperty(S,b,T),T},m=this&&this.__param||function(v,S){return function(b,y){S(b,y,v)}};Object.defineProperty(c,"__esModule",{value:!0}),c.BufferService=c.MINIMUM_ROWS=c.MINIMUM_COLS=void 0;const p=d(8460),_=d(844),x=d(5295),w=d(2585);c.MINIMUM_COLS=2,c.MINIMUM_ROWS=1;let C=c.BufferService=class extends _.Disposable{get buffer(){return this.buffers.active}constructor(v){super(),this.isUserScrolling=!1,this._onResize=this.register(new p.EventEmitter),this.onResize=this._onResize.event,this._onScroll=this.register(new p.EventEmitter),this.onScroll=this._onScroll.event,this.cols=Math.max(v.rawOptions.cols||0,c.MINIMUM_COLS),this.rows=Math.max(v.rawOptions.rows||0,c.MINIMUM_ROWS),this.buffers=this.register(new x.BufferSet(v,this))}resize(v,S){this.cols=v,this.rows=S,this.buffers.resize(v,S),this._onResize.fire({cols:v,rows:S})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(v,S=!1){const b=this.buffer;let y;y=this._cachedBlankLine,y&&y.length===this.cols&&y.getFg(0)===v.fg&&y.getBg(0)===v.bg||(y=b.getBlankLine(v,S),this._cachedBlankLine=y),y.isWrapped=S;const E=b.ybase+b.scrollTop,N=b.ybase+b.scrollBottom;if(b.scrollTop===0){const T=b.lines.isFull;N===b.lines.length-1?T?b.lines.recycle().copyFrom(y):b.lines.push(y.clone()):b.lines.splice(N+1,0,y.clone()),T?this.isUserScrolling&&(b.ydisp=Math.max(b.ydisp-1,0)):(b.ybase++,this.isUserScrolling||b.ydisp++)}else{const T=N-E+1;b.lines.shiftElements(E+1,T-1,-1),b.lines.set(N,y.clone())}this.isUserScrolling||(b.ydisp=b.ybase),this._onScroll.fire(b.ydisp)}scrollLines(v,S,b){const y=this.buffer;if(v<0){if(y.ydisp===0)return;this.isUserScrolling=!0}else v+y.ydisp>=y.ybase&&(this.isUserScrolling=!1);const E=y.ydisp;y.ydisp=Math.max(Math.min(y.ydisp+v,y.ybase),0),E!==y.ydisp&&(S||this._onScroll.fire(y.ydisp))}};c.BufferService=C=f([m(0,w.IOptionsService)],C)},7994:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.CharsetService=void 0,c.CharsetService=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(d){this.glevel=d,this.charset=this._charsets[d]}setgCharset(d,f){this._charsets[d]=f,this.glevel===d&&(this.charset=f)}}},1753:function(u,c,d){var f=this&&this.__decorate||function(y,E,N,T){var L,A=arguments.length,R=A<3?E:T===null?T=Object.getOwnPropertyDescriptor(E,N):T;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")R=Reflect.decorate(y,E,N,T);else for(var M=y.length-1;M>=0;M--)(L=y[M])&&(R=(A<3?L(R):A>3?L(E,N,R):L(E,N))||R);return A>3&&R&&Object.defineProperty(E,N,R),R},m=this&&this.__param||function(y,E){return function(N,T){E(N,T,y)}};Object.defineProperty(c,"__esModule",{value:!0}),c.CoreMouseService=void 0;const p=d(2585),_=d(8460),x=d(844),w={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:y=>y.button!==4&&y.action===1&&(y.ctrl=!1,y.alt=!1,y.shift=!1,!0)},VT200:{events:19,restrict:y=>y.action!==32},DRAG:{events:23,restrict:y=>y.action!==32||y.button!==3},ANY:{events:31,restrict:y=>!0}};function C(y,E){let N=(y.ctrl?16:0)|(y.shift?4:0)|(y.alt?8:0);return y.button===4?(N|=64,N|=y.action):(N|=3&y.button,4&y.button&&(N|=64),8&y.button&&(N|=128),y.action===32?N|=32:y.action!==0||E||(N|=3)),N}const v=String.fromCharCode,S={DEFAULT:y=>{const E=[C(y,!1)+32,y.col+32,y.row+32];return E[0]>255||E[1]>255||E[2]>255?"":`\x1B[M${v(E[0])}${v(E[1])}${v(E[2])}`},SGR:y=>{const E=y.action===0&&y.button!==4?"m":"M";return`\x1B[<${C(y,!0)};${y.col};${y.row}${E}`},SGR_PIXELS:y=>{const E=y.action===0&&y.button!==4?"m":"M";return`\x1B[<${C(y,!0)};${y.x};${y.y}${E}`}};let b=c.CoreMouseService=class extends x.Disposable{constructor(y,E){super(),this._bufferService=y,this._coreService=E,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._onProtocolChange=this.register(new _.EventEmitter),this.onProtocolChange=this._onProtocolChange.event;for(const N of Object.keys(w))this.addProtocol(N,w[N]);for(const N of Object.keys(S))this.addEncoding(N,S[N]);this.reset()}addProtocol(y,E){this._protocols[y]=E}addEncoding(y,E){this._encodings[y]=E}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(y){if(!this._protocols[y])throw new Error(`unknown protocol "${y}"`);this._activeProtocol=y,this._onProtocolChange.fire(this._protocols[y].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(y){if(!this._encodings[y])throw new Error(`unknown encoding "${y}"`);this._activeEncoding=y}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null}triggerMouseEvent(y){if(y.col<0||y.col>=this._bufferService.cols||y.row<0||y.row>=this._bufferService.rows||y.button===4&&y.action===32||y.button===3&&y.action!==32||y.button!==4&&(y.action===2||y.action===3)||(y.col++,y.row++,y.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,y,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(y))return!1;const E=this._encodings[this._activeEncoding](y);return E&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(E):this._coreService.triggerDataEvent(E,!0)),this._lastEvent=y,!0}explainEvents(y){return{down:!!(1&y),up:!!(2&y),drag:!!(4&y),move:!!(8&y),wheel:!!(16&y)}}_equalEvents(y,E,N){if(N){if(y.x!==E.x||y.y!==E.y)return!1}else if(y.col!==E.col||y.row!==E.row)return!1;return y.button===E.button&&y.action===E.action&&y.ctrl===E.ctrl&&y.alt===E.alt&&y.shift===E.shift}};c.CoreMouseService=b=f([m(0,p.IBufferService),m(1,p.ICoreService)],b)},6975:function(u,c,d){var f=this&&this.__decorate||function(b,y,E,N){var T,L=arguments.length,A=L<3?y:N===null?N=Object.getOwnPropertyDescriptor(y,E):N;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")A=Reflect.decorate(b,y,E,N);else for(var R=b.length-1;R>=0;R--)(T=b[R])&&(A=(L<3?T(A):L>3?T(y,E,A):T(y,E))||A);return L>3&&A&&Object.defineProperty(y,E,A),A},m=this&&this.__param||function(b,y){return function(E,N){y(E,N,b)}};Object.defineProperty(c,"__esModule",{value:!0}),c.CoreService=void 0;const p=d(1439),_=d(8460),x=d(844),w=d(2585),C=Object.freeze({insertMode:!1}),v=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0});let S=c.CoreService=class extends x.Disposable{constructor(b,y,E){super(),this._bufferService=b,this._logService=y,this._optionsService=E,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this.register(new _.EventEmitter),this.onData=this._onData.event,this._onUserInput=this.register(new _.EventEmitter),this.onUserInput=this._onUserInput.event,this._onBinary=this.register(new _.EventEmitter),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this.register(new _.EventEmitter),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=(0,p.clone)(C),this.decPrivateModes=(0,p.clone)(v)}reset(){this.modes=(0,p.clone)(C),this.decPrivateModes=(0,p.clone)(v)}triggerDataEvent(b,y=!1){if(this._optionsService.rawOptions.disableStdin)return;const E=this._bufferService.buffer;y&&this._optionsService.rawOptions.scrollOnUserInput&&E.ybase!==E.ydisp&&this._onRequestScrollToBottom.fire(),y&&this._onUserInput.fire(),this._logService.debug(`sending data "${b}"`,(()=>b.split("").map((N=>N.charCodeAt(0))))),this._onData.fire(b)}triggerBinaryEvent(b){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${b}"`,(()=>b.split("").map((y=>y.charCodeAt(0))))),this._onBinary.fire(b))}};c.CoreService=S=f([m(0,w.IBufferService),m(1,w.ILogService),m(2,w.IOptionsService)],S)},9074:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.DecorationService=void 0;const f=d(8055),m=d(8460),p=d(844),_=d(6106);let x=0,w=0;class C extends p.Disposable{get decorations(){return this._decorations.values()}constructor(){super(),this._decorations=new _.SortedList((b=>b==null?void 0:b.marker.line)),this._onDecorationRegistered=this.register(new m.EventEmitter),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this.register(new m.EventEmitter),this.onDecorationRemoved=this._onDecorationRemoved.event,this.register((0,p.toDisposable)((()=>this.reset())))}registerDecoration(b){if(b.marker.isDisposed)return;const y=new v(b);if(y){const E=y.marker.onDispose((()=>y.dispose()));y.onDispose((()=>{y&&(this._decorations.delete(y)&&this._onDecorationRemoved.fire(y),E.dispose())})),this._decorations.insert(y),this._onDecorationRegistered.fire(y)}return y}reset(){for(const b of this._decorations.values())b.dispose();this._decorations.clear()}*getDecorationsAtCell(b,y,E){let N=0,T=0;for(const L of this._decorations.getKeyIterator(y))N=L.options.x??0,T=N+(L.options.width??1),b>=N&&b<T&&(!E||(L.options.layer??"bottom")===E)&&(yield L)}forEachDecorationAtCell(b,y,E,N){this._decorations.forEachByKey(y,(T=>{x=T.options.x??0,w=x+(T.options.width??1),b>=x&&b<w&&(!E||(T.options.layer??"bottom")===E)&&N(T)}))}}c.DecorationService=C;class v extends p.Disposable{get isDisposed(){return this._isDisposed}get backgroundColorRGB(){return this._cachedBg===null&&(this.options.backgroundColor?this._cachedBg=f.css.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this.options.foregroundColor?this._cachedFg=f.css.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}constructor(b){super(),this.options=b,this.onRenderEmitter=this.register(new m.EventEmitter),this.onRender=this.onRenderEmitter.event,this._onDispose=this.register(new m.EventEmitter),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=b.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}dispose(){this._onDispose.fire(),super.dispose()}}},4348:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.InstantiationService=c.ServiceCollection=void 0;const f=d(2585),m=d(8343);class p{constructor(...x){this._entries=new Map;for(const[w,C]of x)this.set(w,C)}set(x,w){const C=this._entries.get(x);return this._entries.set(x,w),C}forEach(x){for(const[w,C]of this._entries.entries())x(w,C)}has(x){return this._entries.has(x)}get(x){return this._entries.get(x)}}c.ServiceCollection=p,c.InstantiationService=class{constructor(){this._services=new p,this._services.set(f.IInstantiationService,this)}setService(_,x){this._services.set(_,x)}getService(_){return this._services.get(_)}createInstance(_,...x){const w=(0,m.getServiceDependencies)(_).sort(((S,b)=>S.index-b.index)),C=[];for(const S of w){const b=this._services.get(S.id);if(!b)throw new Error(`[createInstance] ${_.name} depends on UNKNOWN service ${S.id}.`);C.push(b)}const v=w.length>0?w[0].index:x.length;if(x.length!==v)throw new Error(`[createInstance] First service dependency of ${_.name} at position ${v+1} conflicts with ${x.length} static arguments`);return new _(...x,...C)}}},7866:function(u,c,d){var f=this&&this.__decorate||function(v,S,b,y){var E,N=arguments.length,T=N<3?S:y===null?y=Object.getOwnPropertyDescriptor(S,b):y;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(v,S,b,y);else for(var L=v.length-1;L>=0;L--)(E=v[L])&&(T=(N<3?E(T):N>3?E(S,b,T):E(S,b))||T);return N>3&&T&&Object.defineProperty(S,b,T),T},m=this&&this.__param||function(v,S){return function(b,y){S(b,y,v)}};Object.defineProperty(c,"__esModule",{value:!0}),c.traceCall=c.setTraceLogger=c.LogService=void 0;const p=d(844),_=d(2585),x={trace:_.LogLevelEnum.TRACE,debug:_.LogLevelEnum.DEBUG,info:_.LogLevelEnum.INFO,warn:_.LogLevelEnum.WARN,error:_.LogLevelEnum.ERROR,off:_.LogLevelEnum.OFF};let w,C=c.LogService=class extends p.Disposable{get logLevel(){return this._logLevel}constructor(v){super(),this._optionsService=v,this._logLevel=_.LogLevelEnum.OFF,this._updateLogLevel(),this.register(this._optionsService.onSpecificOptionChange("logLevel",(()=>this._updateLogLevel()))),w=this}_updateLogLevel(){this._logLevel=x[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(v){for(let S=0;S<v.length;S++)typeof v[S]=="function"&&(v[S]=v[S]())}_log(v,S,b){this._evalLazyOptionalParams(b),v.call(console,(this._optionsService.options.logger?"":"xterm.js: ")+S,...b)}trace(v,...S){var b;this._logLevel<=_.LogLevelEnum.TRACE&&this._log(((b=this._optionsService.options.logger)==null?void 0:b.trace.bind(this._optionsService.options.logger))??console.log,v,S)}debug(v,...S){var b;this._logLevel<=_.LogLevelEnum.DEBUG&&this._log(((b=this._optionsService.options.logger)==null?void 0:b.debug.bind(this._optionsService.options.logger))??console.log,v,S)}info(v,...S){var b;this._logLevel<=_.LogLevelEnum.INFO&&this._log(((b=this._optionsService.options.logger)==null?void 0:b.info.bind(this._optionsService.options.logger))??console.info,v,S)}warn(v,...S){var b;this._logLevel<=_.LogLevelEnum.WARN&&this._log(((b=this._optionsService.options.logger)==null?void 0:b.warn.bind(this._optionsService.options.logger))??console.warn,v,S)}error(v,...S){var b;this._logLevel<=_.LogLevelEnum.ERROR&&this._log(((b=this._optionsService.options.logger)==null?void 0:b.error.bind(this._optionsService.options.logger))??console.error,v,S)}};c.LogService=C=f([m(0,_.IOptionsService)],C),c.setTraceLogger=function(v){w=v},c.traceCall=function(v,S,b){if(typeof b.value!="function")throw new Error("not supported");const y=b.value;b.value=function(...E){if(w.logLevel!==_.LogLevelEnum.TRACE)return y.apply(this,E);w.trace(`GlyphRenderer#${y.name}(${E.map((T=>JSON.stringify(T))).join(", ")})`);const N=y.apply(this,E);return w.trace(`GlyphRenderer#${y.name} return`,N),N}}},7302:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.OptionsService=c.DEFAULT_OPTIONS=void 0;const f=d(8460),m=d(844),p=d(6114);c.DEFAULT_OPTIONS={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},rescaleOverlappingGlyphs:!1,rightClickSelectsWord:p.isMac,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRulerWidth:0};const _=["normal","bold","100","200","300","400","500","600","700","800","900"];class x extends m.Disposable{constructor(C){super(),this._onOptionChange=this.register(new f.EventEmitter),this.onOptionChange=this._onOptionChange.event;const v={...c.DEFAULT_OPTIONS};for(const S in C)if(S in v)try{const b=C[S];v[S]=this._sanitizeAndValidateOption(S,b)}catch(b){console.error(b)}this.rawOptions=v,this.options={...v},this._setupOptions(),this.register((0,m.toDisposable)((()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null})))}onSpecificOptionChange(C,v){return this.onOptionChange((S=>{S===C&&v(this.rawOptions[C])}))}onMultipleOptionChange(C,v){return this.onOptionChange((S=>{C.indexOf(S)!==-1&&v()}))}_setupOptions(){const C=S=>{if(!(S in c.DEFAULT_OPTIONS))throw new Error(`No option with key "${S}"`);return this.rawOptions[S]},v=(S,b)=>{if(!(S in c.DEFAULT_OPTIONS))throw new Error(`No option with key "${S}"`);b=this._sanitizeAndValidateOption(S,b),this.rawOptions[S]!==b&&(this.rawOptions[S]=b,this._onOptionChange.fire(S))};for(const S in this.rawOptions){const b={get:C.bind(this,S),set:v.bind(this,S)};Object.defineProperty(this.options,S,b)}}_sanitizeAndValidateOption(C,v){switch(C){case"cursorStyle":if(v||(v=c.DEFAULT_OPTIONS[C]),!(function(S){return S==="block"||S==="underline"||S==="bar"})(v))throw new Error(`"${v}" is not a valid value for ${C}`);break;case"wordSeparator":v||(v=c.DEFAULT_OPTIONS[C]);break;case"fontWeight":case"fontWeightBold":if(typeof v=="number"&&1<=v&&v<=1e3)break;v=_.includes(v)?v:c.DEFAULT_OPTIONS[C];break;case"cursorWidth":v=Math.floor(v);case"lineHeight":case"tabStopWidth":if(v<1)throw new Error(`${C} cannot be less than 1, value: ${v}`);break;case"minimumContrastRatio":v=Math.max(1,Math.min(21,Math.round(10*v)/10));break;case"scrollback":if((v=Math.min(v,4294967295))<0)throw new Error(`${C} cannot be less than 0, value: ${v}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(v<=0)throw new Error(`${C} cannot be less than or equal to 0, value: ${v}`);break;case"rows":case"cols":if(!v&&v!==0)throw new Error(`${C} must be numeric, value: ${v}`);break;case"windowsPty":v=v??{}}return v}}c.OptionsService=x},2660:function(u,c,d){var f=this&&this.__decorate||function(x,w,C,v){var S,b=arguments.length,y=b<3?w:v===null?v=Object.getOwnPropertyDescriptor(w,C):v;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")y=Reflect.decorate(x,w,C,v);else for(var E=x.length-1;E>=0;E--)(S=x[E])&&(y=(b<3?S(y):b>3?S(w,C,y):S(w,C))||y);return b>3&&y&&Object.defineProperty(w,C,y),y},m=this&&this.__param||function(x,w){return function(C,v){w(C,v,x)}};Object.defineProperty(c,"__esModule",{value:!0}),c.OscLinkService=void 0;const p=d(2585);let _=c.OscLinkService=class{constructor(x){this._bufferService=x,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(x){const w=this._bufferService.buffer;if(x.id===void 0){const E=w.addMarker(w.ybase+w.y),N={data:x,id:this._nextId++,lines:[E]};return E.onDispose((()=>this._removeMarkerFromLink(N,E))),this._dataByLinkId.set(N.id,N),N.id}const C=x,v=this._getEntryIdKey(C),S=this._entriesWithId.get(v);if(S)return this.addLineToLink(S.id,w.ybase+w.y),S.id;const b=w.addMarker(w.ybase+w.y),y={id:this._nextId++,key:this._getEntryIdKey(C),data:C,lines:[b]};return b.onDispose((()=>this._removeMarkerFromLink(y,b))),this._entriesWithId.set(y.key,y),this._dataByLinkId.set(y.id,y),y.id}addLineToLink(x,w){const C=this._dataByLinkId.get(x);if(C&&C.lines.every((v=>v.line!==w))){const v=this._bufferService.buffer.addMarker(w);C.lines.push(v),v.onDispose((()=>this._removeMarkerFromLink(C,v)))}}getLinkData(x){var w;return(w=this._dataByLinkId.get(x))==null?void 0:w.data}_getEntryIdKey(x){return`${x.id};;${x.uri}`}_removeMarkerFromLink(x,w){const C=x.lines.indexOf(w);C!==-1&&(x.lines.splice(C,1),x.lines.length===0&&(x.data.id!==void 0&&this._entriesWithId.delete(x.key),this._dataByLinkId.delete(x.id)))}};c.OscLinkService=_=f([m(0,p.IBufferService)],_)},8343:(u,c)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.createDecorator=c.getServiceDependencies=c.serviceRegistry=void 0;const d="di$target",f="di$dependencies";c.serviceRegistry=new Map,c.getServiceDependencies=function(m){return m[f]||[]},c.createDecorator=function(m){if(c.serviceRegistry.has(m))return c.serviceRegistry.get(m);const p=function(_,x,w){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");(function(C,v,S){v[d]===v?v[f].push({id:C,index:S}):(v[f]=[{id:C,index:S}],v[d]=v)})(p,_,w)};return p.toString=()=>m,c.serviceRegistry.set(m,p),p}},2585:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.IDecorationService=c.IUnicodeService=c.IOscLinkService=c.IOptionsService=c.ILogService=c.LogLevelEnum=c.IInstantiationService=c.ICharsetService=c.ICoreService=c.ICoreMouseService=c.IBufferService=void 0;const f=d(8343);var m;c.IBufferService=(0,f.createDecorator)("BufferService"),c.ICoreMouseService=(0,f.createDecorator)("CoreMouseService"),c.ICoreService=(0,f.createDecorator)("CoreService"),c.ICharsetService=(0,f.createDecorator)("CharsetService"),c.IInstantiationService=(0,f.createDecorator)("InstantiationService"),(function(p){p[p.TRACE=0]="TRACE",p[p.DEBUG=1]="DEBUG",p[p.INFO=2]="INFO",p[p.WARN=3]="WARN",p[p.ERROR=4]="ERROR",p[p.OFF=5]="OFF"})(m||(c.LogLevelEnum=m={})),c.ILogService=(0,f.createDecorator)("LogService"),c.IOptionsService=(0,f.createDecorator)("OptionsService"),c.IOscLinkService=(0,f.createDecorator)("OscLinkService"),c.IUnicodeService=(0,f.createDecorator)("UnicodeService"),c.IDecorationService=(0,f.createDecorator)("DecorationService")},1480:(u,c,d)=>{Object.defineProperty(c,"__esModule",{value:!0}),c.UnicodeService=void 0;const f=d(8460),m=d(225);class p{static extractShouldJoin(x){return(1&x)!=0}static extractWidth(x){return x>>1&3}static extractCharKind(x){return x>>3}static createPropertyValue(x,w,C=!1){return(16777215&x)<<3|(3&w)<<1|(C?1:0)}constructor(){this._providers=Object.create(null),this._active="",this._onChange=new f.EventEmitter,this.onChange=this._onChange.event;const x=new m.UnicodeV6;this.register(x),this._active=x.version,this._activeProvider=x}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(x){if(!this._providers[x])throw new Error(`unknown Unicode version "${x}"`);this._active=x,this._activeProvider=this._providers[x],this._onChange.fire(x)}register(x){this._providers[x.version]=x}wcwidth(x){return this._activeProvider.wcwidth(x)}getStringCellWidth(x){let w=0,C=0;const v=x.length;for(let S=0;S<v;++S){let b=x.charCodeAt(S);if(55296<=b&&b<=56319){if(++S>=v)return w+this.wcwidth(b);const N=x.charCodeAt(S);56320<=N&&N<=57343?b=1024*(b-55296)+N-56320+65536:w+=this.wcwidth(N)}const y=this.charProperties(b,C);let E=p.extractWidth(y);p.extractShouldJoin(y)&&(E-=p.extractWidth(C)),w+=E,C=y}return w}charProperties(x,w){return this._activeProvider.charProperties(x,w)}}c.UnicodeService=p}},s={};function a(u){var c=s[u];if(c!==void 0)return c.exports;var d=s[u]={exports:{}};return n[u].call(d.exports,d,d.exports,a),d.exports}var l={};return(()=>{var u=l;Object.defineProperty(u,"__esModule",{value:!0}),u.Terminal=void 0;const c=a(9042),d=a(3236),f=a(844),m=a(5741),p=a(8285),_=a(7975),x=a(7090),w=["cols","rows"];class C extends f.Disposable{constructor(S){super(),this._core=this.register(new d.Terminal(S)),this._addonManager=this.register(new m.AddonManager),this._publicOptions={...this._core.options};const b=E=>this._core.options[E],y=(E,N)=>{this._checkReadonlyOptions(E),this._core.options[E]=N};for(const E in this._core.options){const N={get:b.bind(this,E),set:y.bind(this,E)};Object.defineProperty(this._publicOptions,E,N)}}_checkReadonlyOptions(S){if(w.includes(S))throw new Error(`Option "${S}" 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 _.ParserApi(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new x.UnicodeApi(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 p.BufferNamespaceApi(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){const S=this._core.coreService.decPrivateModes;let b="none";switch(this._core.coreMouseService.activeProtocol){case"X10":b="x10";break;case"VT200":b="vt200";break;case"DRAG":b="drag";break;case"ANY":b="any"}return{applicationCursorKeysMode:S.applicationCursorKeys,applicationKeypadMode:S.applicationKeypad,bracketedPasteMode:S.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:b,originMode:S.origin,reverseWraparoundMode:S.reverseWraparound,sendFocusMode:S.sendFocus,wraparoundMode:S.wraparound}}get options(){return this._publicOptions}set options(S){for(const b in S)this._publicOptions[b]=S[b]}blur(){this._core.blur()}focus(){this._core.focus()}input(S,b=!0){this._core.input(S,b)}resize(S,b){this._verifyIntegers(S,b),this._core.resize(S,b)}open(S){this._core.open(S)}attachCustomKeyEventHandler(S){this._core.attachCustomKeyEventHandler(S)}attachCustomWheelEventHandler(S){this._core.attachCustomWheelEventHandler(S)}registerLinkProvider(S){return this._core.registerLinkProvider(S)}registerCharacterJoiner(S){return this._checkProposedApi(),this._core.registerCharacterJoiner(S)}deregisterCharacterJoiner(S){this._checkProposedApi(),this._core.deregisterCharacterJoiner(S)}registerMarker(S=0){return this._verifyIntegers(S),this._core.registerMarker(S)}registerDecoration(S){return this._checkProposedApi(),this._verifyPositiveIntegers(S.x??0,S.width??0,S.height??0),this._core.registerDecoration(S)}hasSelection(){return this._core.hasSelection()}select(S,b,y){this._verifyIntegers(S,b,y),this._core.select(S,b,y)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(S,b){this._verifyIntegers(S,b),this._core.selectLines(S,b)}dispose(){super.dispose()}scrollLines(S){this._verifyIntegers(S),this._core.scrollLines(S)}scrollPages(S){this._verifyIntegers(S),this._core.scrollPages(S)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(S){this._verifyIntegers(S),this._core.scrollToLine(S)}clear(){this._core.clear()}write(S,b){this._core.write(S,b)}writeln(S,b){this._core.write(S),this._core.write(`\r
68
+ `,b)}paste(S){this._core.paste(S)}refresh(S,b){this._verifyIntegers(S,b),this._core.refresh(S,b)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(S){this._addonManager.loadAddon(this,S)}static get strings(){return c}_verifyIntegers(...S){for(const b of S)if(b===1/0||isNaN(b)||b%1!=0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...S){for(const b of S)if(b&&(b===1/0||isNaN(b)||b%1!=0||b<0))throw new Error("This API only accepts positive integers")}}u.Terminal=C})(),l})()))})(Bf)),Bf.exports}var fN=hN();/**
69
+ * Copyright (c) 2014-2024 The xterm.js authors. All rights reserved.
70
+ * @license MIT
71
+ *
72
+ * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
73
+ * @license MIT
74
+ *
75
+ * Originally forked from (with the author's permission):
76
+ * Fabrice Bellard's javascript vt100 for jslinux:
77
+ * http://bellard.org/jslinux/
78
+ * Copyright (c) 2011 Fabrice Bellard
79
+ */var mN=2,pN=1,gN=class{activate(t){this._terminal=t}dispose(){}fit(){let t=this.proposeDimensions();if(!t||!this._terminal||isNaN(t.cols)||isNaN(t.rows))return;let n=this._terminal._core;(this._terminal.rows!==t.rows||this._terminal.cols!==t.cols)&&(n._renderService.clear(),this._terminal.resize(t.cols,t.rows))}proposeDimensions(){var _;if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let t=this._terminal._core._renderService.dimensions;if(t.css.cell.width===0||t.css.cell.height===0)return;let n=this._terminal.options.scrollback===0?0:((_=this._terminal.options.overviewRuler)==null?void 0:_.width)||14,s=window.getComputedStyle(this._terminal.element.parentElement),a=parseInt(s.getPropertyValue("height")),l=Math.max(0,parseInt(s.getPropertyValue("width"))),u=window.getComputedStyle(this._terminal.element),c={top:parseInt(u.getPropertyValue("padding-top")),bottom:parseInt(u.getPropertyValue("padding-bottom")),right:parseInt(u.getPropertyValue("padding-right")),left:parseInt(u.getPropertyValue("padding-left"))},d=c.top+c.bottom,f=c.right+c.left,m=a-d,p=l-f-n;return{cols:Math.max(mN,Math.floor(p/t.css.cell.width)),rows:Math.max(pN,Math.floor(m/t.css.cell.height))}}};function xN({sessionId:e,onClose:t,onEscape:n,autoFocus:s}){const a=D.useRef(null),l=D.useRef(e),u=D.useRef(null),c=D.useRef(null),d=vr(m=>m.writeSession),f=vr(m=>m.resizeSession);return D.useEffect(()=>{l.current=e},[e]),D.useEffect(()=>{if(!n)return;const m=p=>{p.key==="Escape"&&(p.preventDefault(),p.stopPropagation(),n())};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)},[n]),D.useEffect(()=>{if(!a.current)return;const m=new fN.Terminal({fontFamily:'"JetBrains Mono", monospace',fontSize:13,theme:{background:"#1a1a1a",foreground:"#e0e0e0",cursor:"#ffffff",cursorAccent:"#1a1a1a"},cursorBlink:!0,cursorStyle:"bar",convertEol:!0}),p=new gN;m.loadAddon(p),u.current={term:m,fitAddon:p},a.current.addEventListener("keydown",C=>{C.key==="Escape"&&n&&(C.preventDefault(),C.stopPropagation(),n())}),m.open(a.current);const _=a.current.querySelector(".xterm");_&&(_.style.padding="8px"),p.fit(),s&&setTimeout(()=>{m.focus()},150);const x=new ResizeObserver(()=>{c.current&&clearTimeout(c.current),c.current=setTimeout(()=>{requestAnimationFrame(()=>{var v;p.fit&&p.fit();const C=(v=u.current)==null?void 0:v.term;C&&C.cols>0&&C.rows>0&&f(l.current,C.cols,C.rows)})},100)});x.observe(a.current),m.onData(C=>{if(C==="\x1B"&&n){n();return}d(l.current,C)}),m.onKey(C=>{C.key==="\x1B"&&n&&(C.domEvent.stopPropagation(),n())});const w=$t.subscribe(C=>{const v=C.payload;if(C.type==="terminal.output"&&(v==null?void 0:v.sessionId)===l.current){const S=v==null?void 0:v.data;S&&m.write(S)}});return()=>{w(),x.disconnect(),c.current&&clearTimeout(c.current),m.dispose(),u.current=null}},[e,d,f]),o.jsxs("div",{className:"flex flex-col h-full bg-[#1a1a1a]",children:[o.jsxs("div",{className:"flex-shrink-0 flex items-center justify-between px-2 py-1 bg-[#252525] border-b border-[#333]",children:[o.jsx("div",{}),o.jsx("button",{onClick:t,className:"p-1 rounded hover:bg-[#333] text-[#888] hover:text-[#ccc] transition-colors",title:"Close terminal",children:o.jsx(wS,{})})]}),o.jsx("div",{ref:a,className:"flex-1 relative overflow-hidden",tabIndex:0,onKeyDown:m=>{m.key==="Escape"&&n&&(m.preventDefault(),m.stopPropagation(),n())}})]})}const MS="openfox-chat-textarea";function IS(){const e=document.getElementById(MS);e&&e.focus()}function _N(e){return e===1?"grid-cols-1":e===2?"grid-cols-1 lg:grid-cols-2":"grid-cols-1 lg:grid-cols-2 xl:grid-cols-3"}function yN({isOpen:e,onClose:t}){const n=vr(w=>w.createSession),s=vr(w=>w.killSession),a=vr(w=>w.sessions),l=vr(w=>w.setWorkdir),u=vr(w=>w.fetchSessions),c=Rt(w=>w.currentProject),[d,f]=D.useState(!0),m=D.useRef(null),p=D.useRef(!1),_=D.useRef(!1),x=D.useCallback(()=>{t()},[t]);return D.useEffect(()=>{c!=null&&c.workdir&&l(c.workdir)},[c==null?void 0:c.workdir,l]),D.useEffect(()=>{e?(f(!0),u(c==null?void 0:c.id).finally(()=>f(!1))):IS()},[e,u,c==null?void 0:c.id]),D.useEffect(()=>{e&&a.length===0&&!d&&!_.current&&(_.current=!0,n(void 0,c==null?void 0:c.id))},[e,a.length,d,n,c==null?void 0:c.id]),D.useEffect(()=>{e?(p.current=!0,setTimeout(()=>{var w;(w=m.current)==null||w.focus(),setTimeout(()=>{p.current=!1},200)},100)):_.current=!1},[e]),D.useEffect(()=>{if(!e)return;const w=C=>{p.current||C.key==="Escape"&&(C.preventDefault(),t())};return window.addEventListener("keydown",w),()=>window.removeEventListener("keydown",w)},[e,t]),e?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"fixed inset-x-0 top-[50vh] bottom-0 z-[100] bg-black/40",style:{pointerEvents:"auto"},onClick:x}),o.jsxs("div",{ref:m,tabIndex:-1,className:"fixed inset-x-0 top-0 z-[100] h-[50vh] bg-bg-primary border-b border-border flex flex-col animate-slide-down outline-none",onClick:w=>w.stopPropagation(),onKeyDown:w=>{w.key==="Escape"&&(w.preventDefault(),x())},children:[o.jsxs("div",{className:"flex items-center justify-between px-4 py-2 border-b border-border",children:[o.jsx("h3",{className:"text-sm font-semibold text-text-primary",children:"Terminal"}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("button",{onClick:()=>n(void 0,c==null?void 0:c.id),className:"p-2 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors",title:"New terminal",children:o.jsx(Aj,{})}),o.jsx("button",{onClick:t,className:"p-2 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors",title:"Close (Esc)",children:o.jsx(xl,{})})]})]}),o.jsx("div",{className:"flex-1 min-h-0 p-2 overflow-auto",children:d?o.jsx("div",{className:"flex items-center justify-center h-full text-text-muted",children:"Loading..."}):a.length===0?o.jsx("div",{className:"flex items-center justify-center h-full text-text-muted",children:o.jsxs("div",{className:"text-center",children:[o.jsx("p",{className:"mb-4",children:"No terminal sessions"}),o.jsx("button",{onClick:()=>n(void 0,c==null?void 0:c.id),className:"px-4 py-2 bg-accent-primary/25 text-text-primary rounded hover:bg-accent-primary/40 transition-colors",children:"Create Terminal"})]})}):o.jsx("div",{className:`grid ${_N(a.length)} gap-2 h-full auto-rows-fr`,children:a.map(w=>o.jsx(xN,{sessionId:w.id,onClose:()=>s(w.id),onEscape:x,autoFocus:a.length===1},w.id))})})]})]}):null}function _l({items:e,footerItems:t=[],trigger:n,minWidth:s="120px",isOpen:a,onOpenChange:l}){const[u,c]=D.useState(!1),d=a!==void 0,f=d?a:u,m=O=>{if(d){const U=typeof O=="function"?O(u):O;l==null||l(U)}else c(O)},[p,_]=D.useState(null),x=D.useRef(null),w=D.useRef(null),[C,v]=D.useState(0),S=D.useRef(0),b=D.useMemo(()=>[...e,...t],[e,t]),y=D.useRef(b),E=D.useCallback(()=>{if(!x.current)return;const O=x.current.getBoundingClientRect(),U=200,z=window.innerHeight-O.bottom<U;_({top:z?O.top-U-4:O.bottom+4,left:O.left,alignToTop:z})},[]);D.useEffect(()=>{y.current=b},[b]),D.useEffect(()=>{function O(U){if(w.current){const V=U.target;w.current.contains(V)||m(!1)}}return f&&document.addEventListener("mousedown",O),()=>{document.removeEventListener("mousedown",O)}},[f]),D.useEffect(()=>{f&&E()},[f,E]),D.useEffect(()=>{if(!f)return;setTimeout(()=>{var U;(U=w.current)==null||U.focus()},0);function O(U){const V=y.current,z=V.filter(te=>!N(te)),X=T(S.current,V);switch(U.key){case"ArrowDown":if(U.preventDefault(),U.stopPropagation(),X<z.length-1){const te=L(S.current+1,V);S.current=te,v(te)}break;case"ArrowUp":if(U.preventDefault(),U.stopPropagation(),X>0){const te=A(S.current-1,V);S.current=te,v(te)}break;case"Enter":U.preventDefault(),U.stopPropagation(),R(S.current,V);break;case"Escape":U.preventDefault(),U.stopPropagation(),m(!1);break}}return window.addEventListener("keydown",O,!0),()=>window.removeEventListener("keydown",O,!0)},[f,b]);function N(O){var z;const U=O.label;return U?String(((z=U.props)==null?void 0:z.className)??"").includes("cursor-default"):!1}function T(O,U){let V=0;for(let z=0;z<O;z++){const X=U[z];X&&!N(X)&&V++}return V}function L(O,U){for(let V=O;V<U.length;V++){const z=U[V];if(z&&!N(z))return V}return O}function A(O,U){for(let V=O;V>=0;V--){const z=U[V];if(z&&!N(z))return V}return O}function R(O,U){var z;const V=U[O];!V||N(V)||((z=V.onClick)==null||z.call(V),V.href&&(window.history.pushState(null,"",V.href),window.dispatchEvent(new PopStateEvent("popstate"))),m(!1))}D.useEffect(()=>{f&&(v(b.findIndex(O=>!N(O))),S.current=b.findIndex(O=>!N(O)))},[f,b]);const M=O=>{O.stopPropagation(),f||E(),m(!f)};function G(O,U,V,z){const te=!N(O)&&z===C,H=o.jsxs(o.Fragment,{children:[O.icon&&o.jsx("span",{className:"w-4 h-4 flex-shrink-0",children:O.icon}),O.label]}),I=U!==V-1;return O.href?o.jsx(qn,{href:O.href,onClick:$=>{var F;(F=O.onClick)==null||F.call(O,$),m(!1)},onAuxClick:()=>m(!1),className:`w-full px-3 py-2 text-left text-sm flex items-center gap-2 transition-colors ${O.danger?"text-accent-error hover:bg-accent-error/10":te?"bg-accent-primary/20 text-text-primary":"hover:bg-bg-tertiary text-text-primary"} ${I?"border-b border-border":""}`,children:H},z):o.jsx("button",{onClick:$=>{var F;(F=O.onClick)==null||F.call(O,$),O.closeOnClick!==!1&&m(!1)},className:`w-full px-3 py-2 text-left text-sm flex items-center gap-2 transition-colors ${O.danger?"text-accent-error hover:bg-accent-error/10":te?"bg-accent-primary/20 text-text-primary":"hover:bg-bg-tertiary text-text-primary"} ${I?"border-b border-border":""}`,children:H},z)}const W=p&&o.jsxs("div",{ref:w,"data-testid":"session-dropdown-menu",className:`fixed bg-bg-secondary border border-border rounded shadow-lg z-50 ${p.alignToTop?"mb-1":"mt-1"}`,style:{top:p.top,left:p.left,minWidth:s},tabIndex:-1,children:[o.jsx("div",{className:"max-h-[60vh] overflow-y-auto",children:e.map((O,U)=>G(O,U,e.length,U))}),t.length>0&&o.jsx("div",{className:"border-t border-border",children:t.map((O,U)=>G(O,U,t.length,e.length+U))})]});return o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"relative",children:o.jsx("div",{ref:x,onClick:M,children:n})}),f&&Ua.createPortal(W,document.body)]})}const Vu=D.forwardRef(({className:e="",...t},n)=>o.jsx("input",{ref:n,className:`bg-bg-tertiary border border-border rounded px-3 py-2 text-text-primary placeholder-text-muted focus:outline-none focus:ring-2 focus:ring-accent-primary/50 focus:border-accent-primary ${e}`,...t}));Vu.displayName="Input";function vN(e){return!e||e.trim()===""?{valid:!1,error:"Project name cannot be empty"}:/^[a-zA-Z0-9._-]+$/.test(e)?{valid:!0}:{valid:!1,error:"Project name can only contain letters, numbers, hyphens, underscores, and dots"}}function PS({isOpen:e,onClose:t,path:n,onRetry:s}){const[a,l]=D.useState(!1),[u,c]=D.useState(null),[d,f]=D.useState(null);D.useEffect(()=>{e&&m()},[e]);const m=async()=>{try{const E=await(await Ne("/api/projects/check-permissions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:n})})).json();f({sudoAvailable:E.sudoAvailable,userInGroup:E.userInGroup,groupHasWrite:E.groupHasWrite,groupName:E.groupName||null})}catch{f({sudoAvailable:!1,userInGroup:!1,groupHasWrite:!1,groupName:null})}},p=D.useCallback(async y=>{l(!0),c(null);try{const N=await(await Ne("/api/projects/fix-permissions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:n,action:y})})).json();N.success?(s(),t()):N.sudoAvailable?c("Failed to fix permissions: "+(N.error||"Unknown error")):c(`Passwordless sudo is not available. Please fix permissions manually:
80
+
81
+ `+(y==="group"?`sudo chmod g+w "${n}"`:"sudo usermod -aG <group> $USER"))}catch(E){c("Failed to fix permissions: "+(E instanceof Error?E.message:"Unknown error"))}finally{l(!1)}},[n,s,t]),_=(d==null?void 0:d.userInGroup)??!1,x=(d==null?void 0:d.groupHasWrite)??!1,w=(d==null?void 0:d.sudoAvailable)??!1,C=(d==null?void 0:d.groupName)??"",v=_&&!x,S=!_&&x,b=!_&&!x;return o.jsx(Ot,{isOpen:e,onClose:t,title:"Permission Denied",size:"sm",children:o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{className:"text-sm text-text-secondary",children:[o.jsx("p",{children:v?o.jsxs(o.Fragment,{children:["The group ",o.jsx("strong",{children:C})," doesn't have write access:"]}):S?o.jsxs(o.Fragment,{children:["You're not a member of group ",o.jsx("strong",{children:C}),":"]}):o.jsxs(o.Fragment,{children:["You're not a member of group ",o.jsx("strong",{children:C})," and it doesn't have write access:"]})}),o.jsx("p",{className:"mt-2 font-mono text-xs bg-bg-tertiary p-2 rounded break-all",children:n})]}),u?o.jsx("div",{className:"p-3 bg-accent-error/10 border border-accent-error/30 rounded text-sm text-accent-error whitespace-pre-wrap",children:u}):d?o.jsxs("div",{className:"flex flex-col gap-2",children:[v&&o.jsxs(o.Fragment,{children:[o.jsx(tt,{type:"button",variant:"primary",onClick:()=>p("group"),disabled:a||!w,className:"w-full",children:a?"Granting access...":"Extend group permissions"}),o.jsx("div",{className:"text-xs text-text-secondary",children:"Or manually execute:"}),o.jsxs("code",{className:"text-xs text-text-muted p-2 bg-bg-tertiary rounded break-all",children:['sudo chmod g+w "',n,'"']})]}),S&&o.jsxs(o.Fragment,{children:[o.jsx(tt,{type:"button",variant:"primary",onClick:()=>p("join_group"),disabled:a||!w,className:"w-full",children:a?"Joining group...":"Join group"}),o.jsx("div",{className:"text-xs text-text-secondary",children:"Or manually execute:"}),o.jsxs("code",{className:"text-xs text-text-muted p-2 bg-bg-tertiary rounded break-all",children:["sudo usermod -aG ",C," $USER"]})]}),b&&o.jsxs(o.Fragment,{children:[o.jsx(tt,{type:"button",variant:"primary",onClick:()=>p("join_group_and_group"),disabled:a||!w,className:"w-full",children:a?"Joining group...":"Join group & grant write permissions"}),o.jsx("div",{className:"text-xs text-text-secondary",children:"Or manually execute:"}),o.jsxs("code",{className:"text-xs text-text-muted p-2 bg-bg-tertiary rounded break-all",children:["sudo usermod -aG ",C," $USER",o.jsx("br",{}),'sudo chmod g+w "',n,'"']})]}),!w&&!u&&o.jsxs("div",{className:"text-xs text-text-secondary",children:[o.jsx("p",{children:"Passwordless sudo is not available. Please fix permissions manually:"}),o.jsxs("code",{className:"block mt-1 p-2 bg-bg-tertiary rounded break-all",children:['sudo chmod g+w "',n,'"']})]}),o.jsx("div",{className:"flex justify-end",children:o.jsx(tt,{type:"button",variant:"secondary",onClick:t,disabled:a,children:"Cancel"})})]}):null]})})}function BS({isOpen:e,onClose:t}){const[,n]=hr(),s=Rt(N=>N.listProjects),[a,l]=D.useState(""),[u,c]=D.useState(null),[d,f]=D.useState(!1),[m,p]=D.useState(""),[_,x]=D.useState(null),w=D.useRef(null);D.useEffect(()=>{e&&(Ne("/api/config").then(N=>N.json()).then(N=>{N.workdir&&p(N.workdir)}),l(""),c(null),f(!1),x(null),setTimeout(()=>{var N;(N=w.current)==null||N.focus()},100))},[e]);const C=D.useCallback(async N=>{N.preventDefault();const T=vN(a);if(!T.valid){c(T.error);return}const L=`${m}/${a}`;await b(L)},[a,n,t,m]),v=D.useCallback(()=>{x(null)},[]),S=D.useCallback(async()=>{const N=`${m}/${a}`;await b(N)},[m,a,n,t,x,c,f]);async function b(N){f(!0),c(null),x(null);try{const T=await Ne("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:a,workdir:N})});if(!T.ok){const R=await T.json().catch(()=>({}));if(R.code==="EACCES"){x(N),f(!1);return}throw new Error(R.error||"Failed to create project")}const A=(await T.json()).project;t(),await s(),n(`/p/${A.id}`)}catch(T){c(T instanceof Error?T.message:"Failed to create project"),f(!1)}}const y=D.useCallback(()=>{l(""),c(null),t()},[t]),E=a?`${m}/${a}`:"";return o.jsxs(o.Fragment,{children:[o.jsx(Ot,{isOpen:e,onClose:y,title:"Create New Project",size:"sm",children:o.jsxs("form",{onSubmit:C,className:"space-y-4",children:[o.jsxs("div",{children:[o.jsx("label",{htmlFor:"project-name",className:"block text-sm font-medium text-text-secondary mb-2",children:"Project Name"}),o.jsx(Vu,{ref:w,id:"project-name",value:a,onChange:N=>{l(N.target.value),c(null)},placeholder:"my-project",disabled:d,"data-testid":"create-project-name-input",className:"w-full"}),a&&o.jsxs("div",{className:"mt-2 text-xs text-text-muted",children:["Full path: ",o.jsx("span",{className:"font-mono",children:E})]}),u&&o.jsx("div",{className:"mt-3 p-3 bg-accent-error/10 border border-accent-error/30 rounded text-sm text-accent-error",children:u})]}),o.jsxs("div",{className:"flex justify-end gap-2",children:[o.jsx(tt,{type:"button",variant:"secondary",onClick:y,disabled:d,children:"Cancel"}),o.jsx(tt,{type:"submit",variant:"primary",disabled:d||!a.trim(),"data-testid":"create-project-submit-button",className:"min-w-[100px]",children:d?o.jsxs("span",{className:"flex items-center gap-2",children:[o.jsx(Xs,{className:"h-4 w-4"}),"Creating..."]}):"Create"})]})]})}),_&&o.jsx(PS,{isOpen:!!_,onClose:v,path:_,onRetry:S})]})}const bN={sm:"w-4 h-4",md:"w-8 h-8",lg:"w-12 h-12"};function yl({size:e="md",className:t=""}){return o.jsx("div",{className:`animate-spin border-2 border-accent-primary border-t-transparent rounded-full ${bN[e]} ${t}`})}function SN({text:e,...t}){return o.jsxs("div",{className:"text-center",children:[o.jsx(yl,{...t,className:"mx-auto mb-4"}),e&&o.jsx("div",{className:"text-text-secondary",children:e})]})}function Sp({onSelect:e,onClose:t,initialPath:n}){const[s,a]=D.useState(null),[l,u]=D.useState(!0),[c,d]=D.useState(""),[f,m]=D.useState(-1),p=D.useRef(null),_=D.useRef([]),x=D.useCallback(async y=>{u(!0),d(""),m(-1);try{const E=y?`/api/directories?path=${encodeURIComponent(y)}`:"/api/directories",T=await(await Ne(E)).json();a(T)}catch(E){console.error("Failed to load directories:",E)}finally{u(!1)}},[]);D.useEffect(()=>{x(n)},[n,x]);const w=((s==null?void 0:s.current)??"").split("/").filter(Boolean).map((y,E,N)=>({name:y,path:"/"+N.slice(0,E+1).join("/")})),C=(s==null?void 0:s.directories.filter(y=>c===""||y.name.toLowerCase().includes(c.toLowerCase())))??[],v=[...s!=null&&s.parent?[{type:"parent",path:s.parent,name:".."}]:[],...C.map(y=>({type:"dir",path:y.path,name:y.name}))];D.useEffect(()=>{m(c?0:-1)},[c,C.length]),D.useEffect(()=>{var y;f>=0&&_.current[f]&&((y=_.current[f])==null||y.scrollIntoView({block:"nearest"}))},[f]);const S=y=>{var E;if(y.key==="ArrowDown")y.preventDefault(),m(N=>Math.min(N+1,v.length-1));else if(y.key==="ArrowUp")y.preventDefault(),m(N=>Math.max(N-1,0));else if(y.key==="Enter"){if(y.preventDefault(),f>=0&&v[f]){const N=v[f];N.type==="parent"?x(N.path):e(N.path)}}else y.key==="Escape"&&(d(""),(E=p.current)==null||E.focus())},b=o.jsxs("div",{className:"flex flex-col gap-2",children:[(s==null?void 0:s.current)&&o.jsx("button",{onClick:()=>e(s.current),className:"w-full px-4 py-2 bg-accent-primary text-text-primary rounded-lg font-medium hover:bg-accent-primary/90 transition-colors",children:"Select this folder"}),o.jsx("button",{onClick:t,className:"w-full text-center text-text-muted hover:text-text-secondary text-sm",children:"Cancel"})]});return o.jsx(Ot,{isOpen:!0,onClose:t,title:"Select Folder",size:"lg",footer:b,children:o.jsxs("div",{className:"flex flex-col h-full -m-4",children:[o.jsxs("div",{className:"sticky top-0 bg-bg-secondary z-10 border-b border-border",children:[s&&o.jsx("div",{className:"px-3 py-2 bg-bg-tertiary/30",children:o.jsxs("div",{className:"flex items-center text-xs overflow-x-auto",children:[w.map((y,E)=>o.jsxs("span",{className:"flex items-center shrink-0",children:[o.jsx("span",{className:"text-text-muted",children:"/"}),o.jsx("button",{onClick:()=>x(y.path),className:`px-1 ${E===w.length-1?"text-accent-primary font-medium":"text-text-secondary hover:text-accent-primary"}`,children:y.name})]},y.path)),w.length===0&&o.jsx("button",{onClick:()=>x("/"),className:"text-text-muted hover:text-accent-primary",children:"/"})]})}),o.jsx("div",{className:"px-4 py-3",children:o.jsxs("div",{className:"relative",children:[o.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 w-4 h-4 text-text-muted pointer-events-none flex items-center justify-center",children:o.jsx(mp,{})}),o.jsx(Vu,{autoFocus:!0,ref:p,value:c,onChange:y=>d(y.target.value),onKeyDown:S,placeholder:"Filter directories...",className:"w-full pl-9"})]})})]}),o.jsx("div",{className:"flex-1 overflow-y-auto",children:l?o.jsx("div",{className:"p-8 text-center",children:o.jsx(yl,{size:"sm"})}):v.length===0?o.jsx("div",{className:"p-8 text-center text-text-muted text-sm",children:c?"No matching directories":"No subdirectories"}):o.jsx("div",{className:"divide-y divide-border",children:v.map((y,E)=>o.jsxs("div",{className:`group flex items-center transition-colors ${E===f?"bg-accent-primary/20":"hover:bg-bg-tertiary/50"}`,children:[o.jsxs("button",{ref:N=>{_.current[E]=N},onClick:()=>{y.type==="parent"?x(y.path):e(y.path)},className:"flex-1 flex items-center gap-3 p-3 text-left min-w-0",children:[y.type==="parent"?o.jsx(_j,{className:"w-5 h-5 text-text-muted shrink-0"}):o.jsx(zu,{className:"w-5 h-5 shrink-0"}),o.jsx("span",{className:"truncate",children:y.name})]}),y.type==="dir"&&o.jsx("button",{onClick:N=>{N.stopPropagation(),x(y.path)},className:"mr-2 p-2 text-text-muted hover:text-text-primary opacity-0 group-hover:opacity-100 transition-opacity rounded hover:bg-bg-tertiary",title:"Navigate into folder",children:o.jsx(up,{className:"w-4 h-4"})})]},y.path))})})]})})}function zS(){const[e,t]=D.useState(null);return D.useEffect(()=>{Ne("/api/config").then(n=>n.json()).then(n=>{n.workdir&&t(n.workdir)})},[]),e}function Gv({projects:e,currentProject:t}){const[,n]=hr(),s=Rt(v=>v.loadProject),a=Rt(v=>v.toggleStar),l=Rt(v=>v.createProject),u=Rt(v=>v.listProjects),[c,d]=D.useState(!1),[f,m]=D.useState(!1),p=zS(),_=D.useCallback(async v=>{const S=v.split("/").filter(Boolean).pop()??"",b=await l(S,v);return b&&"id"in b?(await u(),m(!1),n(`/p/${b.id}`),!0):!1},[l,u,n]),w=D.useMemo(()=>{const v=e.filter(b=>b.isStarred).sort((b,y)=>b.name.localeCompare(y.name)),S=e.filter(b=>!b.isStarred).sort((b,y)=>b.name.localeCompare(y.name));return[...v,...S]},[e]).map(v=>({label:o.jsxs("div",{className:"flex items-center gap-2 flex-1 min-w-0",children:[o.jsx("span",{className:"truncate flex-1",children:v.name}),o.jsx("button",{onClick:S=>{S.stopPropagation(),S.preventDefault(),S.nativeEvent.stopImmediatePropagation(),a(v.id,!v.isStarred)},className:"flex-shrink-0 p-1 hover:bg-bg-tertiary rounded transition-colors",title:v.isStarred?"Unstar project":"Star project",children:v.isStarred?o.jsx(Rj,{className:"w-3.5 h-3.5 text-yellow-500"}):o.jsx(Oj,{className:"w-3.5 h-3.5 text-text-muted hover:text-yellow-500"})})]}),icon:v.id===(t==null?void 0:t.id)?o.jsx(Br,{}):void 0,href:`/p/${v.id}`,closeOnClick:!0,onClick:()=>{s(v.id)}})),C=[{label:o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(zu,{className:"w-4 h-4"}),o.jsx("span",{children:"Open Project"})]}),onClick:()=>m(!0)},{label:o.jsxs("div",{className:"flex items-center gap-2 text-accent-primary",children:[o.jsx(Xs,{className:"w-4 h-4"}),o.jsx("span",{children:"New Project"})]}),onClick:()=>d(!0)}];return o.jsxs(o.Fragment,{children:[o.jsx(_l,{items:w,footerItems:C,trigger:o.jsxs("button",{className:`text-text-secondary hover:text-text-primary text-sm truncate flex items-center gap-1 ${t?"hover:underline":""}`,title:(t==null?void 0:t.name)??"Select project",children:[(t==null?void 0:t.name)??o.jsx("span",{className:"text-text-muted",children:"Select project..."}),o.jsx(dr,{})]}),minWidth:"250px"}),c&&o.jsx(BS,{isOpen:c,onClose:()=>d(!1)}),f&&o.jsx(Sp,{initialPath:p??void 0,onSelect:_,onClose:()=>m(!1)})]})}function $S(e){const t=new Date(e),s=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][t.getDay()],a=t.getFullYear(),l=String(t.getMonth()+1).padStart(2,"0"),u=String(t.getDate()).padStart(2,"0");return`${s} ${a}/${l}/${u}`}function Gu(e){const t=new Date(e),n=String(t.getHours()).padStart(2,"0"),s=String(t.getMinutes()).padStart(2,"0");return`${n}:${s}`}function wN(e){const t=new Date(e),n=new Date,s=new Date(n.getFullYear(),n.getMonth(),n.getDate()),a=new Date(t.getFullYear(),t.getMonth(),t.getDate()),l=Math.floor((s.getTime()-a.getTime())/(1e3*60*60*24)),u=Gu(e);if(l===0)return`today ${u}`;if(l===1)return`yesterday ${u}`;if(l<7)return`${l} days ago ${u}`;{const c=t.getFullYear(),d=String(t.getMonth()+1).padStart(2,"0"),f=String(t.getDate()).padStart(2,"0");return`${c}/${d}/${f} ${u}`}}function HS(e){const t=new Date(e);return{year:t.getFullYear(),month:String(t.getMonth()+1).padStart(2,"0"),day:String(t.getDate()).padStart(2,"0")}}function CN(e){const{year:t,month:n,day:s}=HS(e);return`${t}-${n}-${s}`}function US(e){const t=new Map;for(const a of e){const l=CN(a.updatedAt);t.has(l)||t.set(l,[]),t.get(l).push(a)}for(const[a,l]of t)l.sort((u,c)=>{const d=new Date(u.updatedAt).getTime();return new Date(c.updatedAt).getTime()-d});const n=Array.from(t.keys()).sort((a,l)=>l.localeCompare(a)),s=new Map;for(const a of n)s.set(a,t.get(a));return s}function kN({sessions:e,currentProject:t,currentSession:n,isOpen:s,onOpenChange:a}){var m;const l=we(p=>p.loadSession),u=e.filter(p=>p.projectId===t.id).slice(0,15),c=US(u),d=D.useMemo(()=>{const p=[];p.push({label:o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(Xs,{className:"w-4 h-4 text-accent-primary"}),o.jsx("span",{className:"text-sm",children:"New session"})]}),href:`/p/${t.id}/new`,onClick:()=>{}});for(const[_,x]of c){const w=x[0];if(w){p.push({label:o.jsx("div",{className:"px-3 py-2 text-text-muted text-xs font-medium cursor-default",children:$S(w.updatedAt)}),onClick:()=>{}});for(const C of x)p.push({label:o.jsxs("div",{className:"min-w-[160px]",children:[o.jsx("div",{className:"truncate text-sm",children:C.title??C.id.slice(0,8)}),o.jsx("div",{className:"text-text-muted text-xs",children:Gu(C.updatedAt)})]}),icon:C.id===(n==null?void 0:n.id)?o.jsx(Br,{}):void 0,href:`/p/${t.id}/s/${C.id}`,onClick:()=>{l(C.id)}})}}return p},[t.id,c,n==null?void 0:n.id]),f=n?((m=n.metadata)==null?void 0:m.title)??n.id.slice(0,8):"No session selected";return o.jsx(_l,{items:d,isOpen:s,onOpenChange:a,trigger:o.jsxs("button",{className:"text-text-secondary hover:text-text-primary hover:underline text-sm truncate flex items-center gap-1",title:f,"data-testid":"header-session-dropdown",children:[f,o.jsx(dr,{})]}),minWidth:"280px"})}function EN({items:e,trigger:t,isActive:n=!1}){const[s,a]=D.useState(!1),l=D.useRef(null);return D.useEffect(()=>{function u(c){l.current&&!l.current.contains(c.target)&&a(!1)}if(s)return document.addEventListener("mousedown",u),()=>document.removeEventListener("mousedown",u)},[s]),o.jsxs("div",{className:"relative",ref:l,children:[o.jsxs("button",{type:"button",onClick:()=>a(!s),className:`flex items-center gap-1 px-1.5 py-0.5 rounded transition-colors ${n?"bg-bg-tertiary":"hover:bg-bg-tertiary"}`,children:[typeof t=="string"?o.jsx("span",{className:"text-sm text-text-secondary font-medium",children:t}):t,o.jsx(dr,{className:"w-3 h-3 text-text-muted flex-shrink-0 transition-transform",rotate:s?180:0})]}),s&&e.length>0&&o.jsx("div",{className:"absolute top-full left-0 mt-1 w-56 bg-bg-secondary border border-border rounded-lg shadow-lg overflow-hidden z-50",children:e.map((u,c)=>{const d=u.label&&typeof u.label=="object"&&u.label.type===qn?u.label:null;if(d){const f=d.props.href||"";return o.jsxs(qn,{href:f,className:"flex items-center gap-2 px-3 py-2 text-sm border-b border-border hover:bg-bg-tertiary transition-colors",children:[u.icon,d.props.children]},c)}return u.href?o.jsxs("a",{href:u.href,className:"flex items-center gap-2 px-3 py-2 text-sm border-b border-border hover:bg-bg-tertiary transition-colors",children:[u.icon,u.label]},c):o.jsxs("button",{type:"button",onClick:()=>{var f;(f=u.onClick)==null||f.call(u),a(!1)},className:"flex items-center gap-2 px-3 py-2 text-sm w-full text-left border-b border-border hover:bg-bg-tertiary transition-colors",children:[u.icon,u.label]},c)})})]})}function jN({currentProject:e,sessions:t,currentSession:n,projectIdFromUrl:s}){if(!(e!=null&&e.id)||e.id!==s)return null;const a=t.filter(u=>u.projectId===e.id).sort((u,c)=>new Date(c.updatedAt).getTime()-new Date(u.updatedAt).getTime()).slice(0,5),l=[{label:o.jsxs(qn,{href:`/p/${e.id}/new`,className:"flex items-center gap-2",children:[o.jsx(Xs,{className:"w-3 h-3 text-accent-primary"}),o.jsx("span",{className:"text-sm",children:"New Session"})]})},...a.map(u=>({label:o.jsx(qn,{href:`/p/${e.id}/s/${u.id}`,className:"flex items-center gap-2 truncate text-sm",children:o.jsx("span",{children:u.title??u.id.slice(0,8)})}),icon:u.id===(n==null?void 0:n.id)?o.jsx(Br,{className:"w-3 h-3"}):void 0})),{label:o.jsxs(qn,{href:"/",className:"flex items-center gap-2 text-text-muted hover:text-text-primary",children:[o.jsx(vj,{className:"w-3 h-3"}),o.jsx("span",{className:"text-sm",children:"Projects"})]})}];return o.jsx(EN,{items:l,trigger:o.jsx("span",{className:"text-sm text-text-secondary font-medium",children:e.name})})}function NN({onMenuClick:e,onCriteriaToggle:t}){const[n,s]=D.useState(!1),[a,l]=D.useState(!1),[u,c]=D.useState(!!document.fullscreenElement);D.useEffect(()=>{const E=()=>c(!!document.fullscreenElement);return document.addEventListener("fullscreenchange",E),()=>document.removeEventListener("fullscreenchange",E)},[]);const[d]=hr(),f=d.startsWith("/p/"),m=/^\/p\/[^/]+\/s\/[^/]+$/.test(d),p=we(E=>E.currentSession),_=we(E=>E.sessions),x=Rt(E=>E.currentProject),w=Rt(E=>E.projects),C=zt(E=>E.startAutoRefresh),v=zt(E=>E.stopAutoRefresh),S=vr(E=>E.setOpen),b=vr(E=>E.isOpen);D.useEffect(()=>{const E=()=>l(!0);return window.addEventListener("open-session-dropdown",E),()=>window.removeEventListener("open-session-dropdown",E)},[]);const y=pp();return jS(y.terminalToggle,()=>{vr.getState().toggleOpen()},{capture:!0}),D.useEffect(()=>(C(),()=>v()),[C,v]),o.jsxs("header",{className:"h-8 bg-secondary border-b border-border flex items-center justify-between px-2",children:[o.jsxs("div",{className:"flex items-center gap-2 flex-1 min-w-0",children:[e&&f&&o.jsx("button",{onClick:e,className:"flex-shrink-0 p-2.5 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors",title:"Toggle session list",children:o.jsx(Mv,{})}),o.jsx(qn,{href:"/",className:"text-accent-primary font-semibold text-sm hover:underline flex-shrink-0 hidden md:inline",children:"OpenFox"}),x&&o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"hidden md:inline text-text-muted flex-shrink-0",children:"/"}),o.jsx("span",{className:"hidden md:inline",children:o.jsx(Gv,{projects:w,currentProject:x})}),o.jsx("span",{className:"md:hidden",children:o.jsx(jN,{currentProject:x,sessions:_,currentSession:p,projectIdFromUrl:f&&d.split("/")[2]||null},x==null?void 0:x.id)}),o.jsx("span",{className:"hidden md:inline text-text-muted flex-shrink-0",children:"/"}),o.jsx("span",{className:"hidden md:inline",children:o.jsx(kN,{sessions:_,currentProject:x,currentSession:p,isOpen:a,onOpenChange:l})})]}),!x&&o.jsx("span",{className:"hidden md:inline",children:o.jsx(Gv,{projects:w})})]}),o.jsxs("div",{className:"flex items-center gap-2 flex-shrink-0",children:[m&&o.jsx("button",{onClick:()=>{var E,N,T;document.fullscreenElement?(E=document.exitFullscreen)==null||E.call(document):(T=(N=document.documentElement).requestFullscreen)==null||T.call(N)},className:"max-sm:block hidden p-2 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors",title:u?"Exit fullscreen":"Enter fullscreen",children:u?o.jsx(Cj,{}):o.jsx(kj,{})}),f&&o.jsx("button",{onClick:()=>S(!b),className:`p-2.5 rounded hover:bg-bg-tertiary transition-colors ${b?"text-accent-primary":"text-text-muted hover:text-text-primary"}`,title:"Toggle terminal (double Ctrl)",children:o.jsx(Ij,{})}),o.jsx("button",{onClick:()=>s(!0),className:"p-2.5 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors",title:"Settings",children:o.jsx(Lj,{})}),o.jsx("button",{onClick:()=>{localStorage.removeItem("openfox_token"),window.location.reload()},className:"p-2.5 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors",title:"Logout",children:o.jsx(jj,{})}),t&&m&&o.jsx("button",{onClick:t,className:"p-2.5 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors",title:"Toggle sidebar",children:o.jsx(Mv,{})})]}),o.jsx(dN,{isOpen:n,onClose:()=>s(!1)}),o.jsx(yN,{isOpen:b,onClose:()=>S(!1)})]})}function TN({onCancel:e,onSave:t,saving:n,saveDisabled:s,cancelLabel:a="Cancel",saveLabel:l=n?"Saving...":"Save"}){return o.jsxs("div",{className:"flex justify-end gap-2 flex-shrink-0",children:[o.jsx(tt,{variant:"secondary",onClick:e,children:a}),o.jsx(tt,{variant:"primary",onClick:t,disabled:s??n,children:l})]})}function AN({isOpen:e,onClose:t,project:n}){const s=Rt(E=>E.updateProject),a=()=>{try{$t.send("context.checkDynamic",{})}catch{}t()},[l,u]=D.useState(n.customInstructions??""),[c,d]=D.useState(n.dangerLevel??""),[f,m]=D.useState(!1),[p,_]=D.useState(!1),[x,w]=D.useState(!1),C=f||p;D.useEffect(()=>{u(n.customInstructions??""),d(n.dangerLevel??""),m(!1),_(!1)},[n]);const v=E=>{u(E.target.value),m(!0)},S=E=>{d(E),_(!0)},b=async()=>{w(!0);const E=c===""?null:c;await s(n.id,{customInstructions:l||null,dangerLevel:E}),w(!1),m(!1),_(!1),a()},y=()=>{u(n.customInstructions??""),d(n.dangerLevel??""),m(!1),_(!1),a()};return o.jsx(Ot,{isOpen:e,onClose:y,title:`${n.name} Settings`,size:"lg",footer:o.jsx(TN,{onCancel:y,onSave:b,saving:x,saveDisabled:!C||x}),children:o.jsxs("div",{className:"flex flex-col gap-5 -mt-1",children:[o.jsxs("div",{children:[o.jsx("label",{className:"block text-sm font-medium text-text-primary mb-1 flex-shrink-0",children:"Default Danger Level"}),o.jsx("p",{className:"text-sm text-text-muted mb-3",children:"Default danger level for new sessions in this project. Existing sessions are not affected."}),o.jsxs("div",{className:"flex items-center gap-1 px-1.5 py-1 rounded bg-bg-tertiary/50 w-fit",children:[o.jsx("button",{type:"button",onClick:()=>S(""),className:`px-3 py-1 text-sm font-medium rounded transition-colors ${c===""?"bg-bg-tertiary text-text-primary border border-border":"text-text-muted hover:text-text-primary hover:bg-bg-tertiary"}`,title:"Use global default (Normal)",children:"Default"}),o.jsx("button",{type:"button",onClick:()=>S("normal"),className:`px-3 py-1 text-sm font-medium rounded transition-colors ${c==="normal"?"bg-accent-success/20 text-accent-success border border-accent-success/30":"text-text-muted hover:text-text-primary hover:bg-bg-tertiary"}`,title:"Normal mode - requires path confirmation",children:"Normal"}),o.jsx("button",{type:"button",onClick:()=>S("dangerous"),className:`px-3 py-1 text-sm font-medium rounded transition-colors ${c==="dangerous"?"bg-red-500/20 text-red-400 border border-red-500/30":"text-text-muted hover:text-text-primary hover:bg-bg-tertiary"}`,title:"Dangerous mode - bypasses all confirmations",children:"Dangerous"})]})]}),o.jsxs("div",{children:[o.jsx("label",{className:"block text-sm font-medium text-text-primary mb-1 flex-shrink-0",children:"Project Path"}),o.jsx("p",{className:"text-sm text-text-muted font-mono",children:n.workdir})]}),o.jsxs("div",{className:"flex-1 min-h-[150px] pb-4",children:[o.jsx("label",{className:"block text-sm font-medium text-text-primary mb-1 flex-shrink-0",children:"Project Instructions"}),o.jsx("p",{className:"text-sm text-text-muted mb-3 flex-shrink-0",children:"These instructions are injected into prompts when working in this project. They are applied after global instructions but before AGENTS.md files."}),o.jsx("textarea",{value:l,onChange:v,placeholder:"Enter project-specific instructions...",className:"w-full h-full px-3 py-2 mb-3 bg-bg-tertiary border border-border rounded text-sm font-mono resize-none focus:outline-none focus:ring-1 focus:ring-accent-primary",disabled:x})]})]})})}const LN={sm:"w-3 h-3",md:"w-4 h-4",lg:"w-5 h-5",xl:"w-6 h-6"},DN="M6 18L18 6M6 6l12 12";function vl({onClick:e,className:t="",size:n="md",variant:s="default"}){const a=s==="overlay"?"bg-accent-error text-white rounded-full flex items-center justify-center hover:bg-accent-error/80 transition-colors":s==="sidebar"?"flex-shrink-0 p-2.5 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors":s==="modal"?"text-text-muted hover:text-text-primary transition-colors":"hover:text-white transition-colors";return o.jsx($u,{onClick:e,icon:DN,iconSize:LN[n],className:`${a} ${t}`,title:"Close"})}function FS({projectId:e,isOpen:t=!0,onClose:n}){const[,s]=hr(),[a,l]=D.useState(!1),u=we(N=>N.sessions),c=we(N=>N.currentSession),d=we(N=>N.unreadSessionIds),f=we(N=>N.deleteSession),m=we(N=>N.deleteAllSessions),p=we(N=>N.loadMoreSessions),_=we(N=>N.sessionsHasMore),x=we(N=>N.sessionsPaginationLoading),w=Rt(N=>N.currentProject),C=D.useRef(null),v=D.useCallback(()=>{_&&!x&&w&&p(w.id)},[_,x,w,p]);D.useEffect(()=>{if(!C.current||!_)return;const N=new IntersectionObserver(T=>{const L=T[0];L&&L.isIntersecting&&v()},{threshold:.1});return N.observe(C.current),()=>N.disconnect()},[_,v]);const S=u.filter(N=>N.projectId===(w==null?void 0:w.id)),b=(N,T)=>{T==null||T.stopPropagation(),confirm("Delete this session?")&&(f(N),(c==null?void 0:c.id)===N&&s(`/p/${e}`))},y=(N,T)=>{T==null||T.stopPropagation();const L=u.find(M=>M.id===N),A=(L==null?void 0:L.title)??N.slice(0,6),R=prompt("Rename session:",A);if(R!==null&&R.trim()!==""){const M=we.getState().renameSession;M(N,R.trim())}},E=()=>{confirm("Delete all sessions in this project? This cannot be undone.")&&(m(e),s(`/p/${e}`))};return o.jsxs(o.Fragment,{children:[t&&n&&o.jsx("div",{className:"md:hidden fixed inset-0 bg-black/50 z-40",onClick:n}),o.jsxs("aside",{className:`
82
+ ${t?"md:w-[300px] md:shrink-0":"md:w-0 md:shrink-0 md:overflow-hidden"}
83
+ md:relative md:h-auto md:translate-x-0
84
+
85
+ fixed z-50 h-[calc(100vh-32px)]
86
+ w-[300px] bg-secondary border-r border-border flex flex-col
87
+ transition-all duration-300 ease-in-out
88
+ ${t?"translate-x-0":"-translate-x-full"}
89
+ `,children:[o.jsxs("div",{className:"p-4 border-b border-border flex gap-2",children:[o.jsx(qn,{href:`/p/${e}/new`,className:"flex-1 block text-center rounded font-medium transition-colors bg-accent-primary/25 text-text-primary hover:bg-accent-primary/40 px-3 py-1.5 text-sm","data-testid":"sidebar-new-session-button",children:"+ New Session"}),o.jsx(_l,{items:[{label:"Edit project settings",onClick:()=>l(!0)},{label:"Delete all sessions",onClick:E,danger:!0}],trigger:o.jsx("button",{className:"flex-shrink-0 p-2.5 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors",title:"Options",children:o.jsx(hp,{})})}),n&&o.jsx(vl,{onClick:n,className:"md:hidden",variant:"sidebar",size:"md"})]}),w&&o.jsx(AN,{isOpen:a,onClose:()=>l(!1),project:w}),o.jsx("div",{className:"flex-1 overflow-y-auto",children:S.length===0?o.jsx("div",{className:"p-4 text-center text-text-muted text-xs",children:"No sessions"}):o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"divide-y divide-border",children:RN(S,c,d,b,y,e)}),x&&o.jsx("div",{className:"p-4 text-center text-text-muted text-xs",children:"Loading more..."}),o.jsx("div",{ref:C,className:"h-px"})]})})]})]})}function RN(e,t,n,s,a,l){const u=US(e);return Array.from(u).map(([c,d])=>{const f=d[0];return f?o.jsxs("div",{children:[o.jsx("div",{className:"px-4 py-2 bg-bg-tertiary/30 text-text-muted text-xs font-medium",children:$S(f.updatedAt)}),d.map(m=>{const p=(t==null?void 0:t.id)===m.id,_=n.includes(m.id),x=m.isRunning;return o.jsx("div",{className:`w-full px-4 py-3 text-left hover:bg-bg-tertiary/50 transition-colors group ${p?"bg-bg-tertiary":""}`,children:o.jsxs(qn,{href:`/p/${l}/s/${m.id}`,className:`block ${p?"text-accent-primary":"text-text-primary"} hover:text-accent-primary`,children:[o.jsxs("div",{className:"flex justify-between items-center mb-1",children:[o.jsx("span",{className:`font-medium truncate text-sm ${p?"text-accent-primary":"text-text-primary"}`,children:m.title??m.id.slice(0,6)}),o.jsx(_l,{items:[{label:"Rename session",onClick:w=>a(m.id,w)},{label:"Delete session",onClick:w=>s(m.id,w),danger:!0}],trigger:o.jsx("button",{onClick:w=>w.preventDefault(),className:"p-1.5 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-all",title:"Options",children:o.jsx(hp,{})})})]}),o.jsxs("div",{className:"flex items-center gap-2 mt-1",children:[x?o.jsx(Dj,{}):_&&!p?o.jsx("span",{"aria-label":"Unread activity",title:"Unread activity",className:"w-2 h-2 rounded-full bg-amber-400 flex-shrink-0"}):null,o.jsx("span",{className:"text-text-muted text-xs flex-shrink-0",children:Gu(m.updatedAt)}),o.jsxs("span",{className:"text-text-muted text-xs flex-shrink-0",children:[m.messageCount," messages"]})]})]})},m.id)})]},c):null})}const Wv=["⠋","⠙","⠹","⠸","⠼","⠴"];function ON(){var c;const e=Rt(d=>d.currentProject),t=we(d=>d.currentSession),n=Bu(),s=!1,a=D.useRef(0),l=D.useRef(null);D.useEffect(()=>(n?(l.current=window.setInterval(()=>{a.current=(a.current+1)%Wv.length,u()},150),u()):(l.current&&(clearInterval(l.current),l.current=null),u()),()=>{l.current&&(clearInterval(l.current),l.current=null)}),[n,e,t,s]);const u=()=>{var p;const f=(p=t==null?void 0:t.metadata)==null?void 0:p.title,m=n?`${Wv[a.current]} `:"";e&&f?document.title=`${m}${e.name} - ${f} | OpenFox`:e?document.title=`${m}${e.name} | OpenFox`:document.title=`${m}OpenFox`};return typeof window<"u"&&((c=t==null?void 0:t.metadata)!=null&&c.title)&&window.document.documentElement.setAttribute("data-session-title",t.metadata.title),null}function VS(e,t=28){if(e.length<=t)return e;const n=e.split("/").filter(Boolean);if(n.length<=2)return e;const s=n[0],a=n[n.length-1],l=n.slice(1,-1).join("/"),u=t-s.length-a.length-3;if(u<0)return e;const c=l.slice(0,Math.floor(u/2)),d=l.slice(-Math.ceil(u/2));return`/${s}/${c}...${d}/${a}`}function GS({isOpen:e,onClose:t,projectName:n,onConfirm:s}){const a=()=>{s(),t()};return o.jsx(Ot,{isOpen:e,onClose:t,title:"Delete Project",size:"sm",children:o.jsxs("div",{className:"space-y-4",children:[o.jsxs("p",{className:"text-text-secondary",children:["This will permanently delete the project"," ",o.jsx("span",{className:"font-semibold text-text-primary",children:n})," and all its sessions from OpenFox. The project files on disk will remain untouched."]}),o.jsxs("div",{className:"flex justify-end gap-2",children:[o.jsx(tt,{variant:"secondary",onClick:t,children:"Cancel"}),o.jsx(tt,{variant:"danger",onClick:a,children:"Delete"})]})]})})}function MN({isOpen:e,onClose:t}){const[,n]=hr(),[s,a]=D.useState(!1),l=zS(),[u,c]=D.useState(!1),d=Rt(A=>A.projects),f=Rt(A=>A.createProject),m=Rt(A=>A.listProjects),p=Rt(A=>A.deleteProject),[_,x]=D.useState(null),[w,C]=D.useState(null);D.useEffect(()=>{e&&m()},[e,m]);const v=A=>{n(`/p/${A}`),t()},S=(A,R)=>{R.stopPropagation(),x(A)},b=()=>{_&&(p(_.id),x(null))},y=async A=>N(A);function E(A){return A!=null&&typeof A=="object"&&"error"in A&&A.error!=null&&typeof A.error=="object"&&"code"in A.error&&A.error.code==="EACCES"}async function N(A){const R=A.split("/").filter(Boolean).pop()??"",M=await f(R,A);return m(),E(M)?(C(M.error.path||A),!1):M&&"id"in M?(n(`/p/${M.id}`),t(),!0):!1}const T=D.useCallback(()=>{C(null)},[]),L=D.useCallback(async()=>{const A=w;C(null),A&&await N(A)},[w]);return e?o.jsxs(Ot,{isOpen:e,onClose:t,title:"Open Project",size:"xl",footer:o.jsx("div",{className:"flex justify-end gap-2",children:o.jsx(tt,{variant:"secondary",onClick:t,children:"Close"})}),children:[o.jsxs("div",{className:"flex flex-col sm:flex-row flex-1 -m-4",children:[o.jsxs("div",{className:"w-full sm:w-1/2 border-b sm:border-b-0 sm:border-r border-border flex flex-col max-h-[40vh] sm:max-h-[50vh]",children:[o.jsx("div",{className:"p-3 border-b border-border bg-bg-tertiary/30 shrink-0",children:o.jsx("h3",{className:"font-medium text-sm text-text-secondary",children:"Recent Projects"})}),o.jsx("div",{className:"flex-1 overflow-y-auto",children:d.length===0?o.jsxs("div",{className:"p-6 text-center text-text-muted text-sm",children:[o.jsx("p",{className:"mb-2",children:"No recent projects"}),o.jsx("p",{className:"text-xs",children:'Click "Create new project" to add one'})]}):o.jsx("div",{className:"divide-y divide-border",children:d.map(A=>o.jsxs("div",{className:"group flex items-center gap-3 p-3 hover:bg-bg-tertiary/50 transition-colors",children:[o.jsxs("button",{onClick:()=>v(A.id),className:"flex-1 flex items-center gap-3 text-left",children:[o.jsx(zu,{className:"w-5 h-5 text-accent-primary"}),o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx("div",{className:"font-medium truncate",children:A.name}),o.jsx("div",{className:"text-xs text-text-muted truncate",children:VS(A.workdir,32)})]})]}),o.jsx("button",{onClick:R=>S(A,R),className:"text-accent-error/70 hover:text-accent-error p-1",title:"Delete project",children:o.jsx(gl,{className:"w-4 h-4"})})]},A.id))})})]}),o.jsx("div",{className:"w-full sm:w-1/2 flex flex-col items-center justify-center p-6 sm:p-8 text-center",children:o.jsxs("div",{className:"flex flex-col gap-3 w-full max-w-sm",children:[o.jsx(tt,{variant:"primary",onClick:()=>c(!0),children:"Select existing project"}),o.jsx(tt,{variant:"secondary",onClick:()=>a(!0),"data-testid":"open-project-create-button",children:"Create new project"})]})})]}),s&&o.jsx(BS,{isOpen:s,onClose:()=>a(!1)}),_&&o.jsx(GS,{isOpen:!0,onClose:()=>x(null),projectName:_.name,onConfirm:b}),u&&o.jsx(Sp,{initialPath:l??void 0,onSelect:A=>{y(A)},onClose:()=>c(!1)}),w&&o.jsx(PS,{isOpen:!0,onClose:T,path:w,onRetry:L})]}):null}function IN(){const[e,t]=D.useState(!1),[n,s]=D.useState(null),a=we(w=>w.sessions),l=Rt(w=>w.projects),u=Rt(w=>w.loading),c=Rt(w=>w.listProjects),d=we(w=>w.listSessions),f=Rt(w=>w.deleteProject),m=we(w=>w.connectionStatus);D.useEffect(()=>{m==="connected"&&(c(),d())},[m,c,d]);const p=[...l].sort((w,C)=>{const v=a.filter(E=>E.workdir.startsWith(w.workdir)),S=a.filter(E=>E.workdir.startsWith(C.workdir)),b=v.length>0?new Date(v.reduce((E,N)=>new Date(N.updatedAt)>new Date(E.updatedAt)?N:E).updatedAt).getTime():new Date(w.updatedAt).getTime();return(S.length>0?new Date(S.reduce((E,N)=>new Date(N.updatedAt)>new Date(E.updatedAt)?N:E).updatedAt).getTime():new Date(C.updatedAt).getTime())-b}),_=w=>{const C=l.find(v=>v.id===w);return C?a.filter(v=>v.workdir.startsWith(C.workdir)).sort((v,S)=>new Date(S.updatedAt).getTime()-new Date(v.updatedAt).getTime()).slice(0,5):[]},x=()=>{t(!0)};return o.jsxs("div",{className:"flex-1 flex flex-col overflow-y-auto bg-primary",children:[o.jsxs("div",{className:"max-w-5xl mx-auto w-full p-4 md:p-8",children:[o.jsxs("div",{className:"mb-6 md:mb-8 flex items-center justify-between",children:[o.jsxs("div",{children:[o.jsx("h1",{className:"text-3xl font-bold text-accent-primary",children:"OpenFox"}),o.jsx("p",{className:"text-text-secondary",children:"Local LLM-powered coding assistant with contract-driven execution"})]}),o.jsx(tt,{variant:"primary",onClick:x,children:"Open Project"})]}),p.map(w=>{const C=_(w.id);return o.jsx("div",{className:"mb-6 md:mb-8",children:o.jsxs("div",{className:"bg-bg-secondary border border-border rounded-lg overflow-hidden",children:[o.jsxs("div",{className:"p-3 md:p-4 border-b border-border flex items-center justify-between gap-2",children:[o.jsxs(qn,{href:`/p/${w.id}`,className:"flex items-center gap-2 cursor-pointer hover:opacity-80 transition-opacity flex-1",children:[o.jsx(zu,{className:"w-5 h-5 text-accent-primary flex-shrink-0"}),o.jsx("span",{className:"text-text-primary font-semibold",children:w.name})]}),o.jsx(qn,{href:`/p/${w.id}/new`,className:"rounded font-medium transition-colors bg-accent-primary/25 text-text-primary hover:bg-accent-primary/40 px-1.5 py-1 text-xs",children:"+ New Session"}),o.jsx("button",{type:"button",onClick:()=>s({id:w.id,name:w.name}),className:"p-1.5 rounded text-text-muted hover:text-accent-error hover:bg-accent-error/10 transition-colors",title:"Delete project",children:o.jsx(gl,{className:"w-4 h-4"})})]}),o.jsx("div",{className:"divide-y divide-border",children:C.length>0?C.map(v=>{const S=l.find(y=>v.workdir.startsWith(y.workdir)),b=S?`/p/${S.id}/s/${v.id}`:"#";return o.jsx(qn,{href:b,className:"block p-3 md:p-4 hover:bg-bg-tertiary/50 cursor-pointer transition-colors",children:o.jsxs("div",{className:"flex items-center justify-between gap-2",children:[o.jsx("div",{className:"flex items-center gap-3 flex-1 min-w-0",children:o.jsx("div",{className:"flex-1 min-w-0",children:o.jsx("div",{className:"text-sm text-text-muted truncate",children:v.title??v.id.slice(0,8)})})}),o.jsxs("div",{className:"flex items-center gap-2 flex-shrink-0",children:[o.jsx("span",{className:"text-text-muted text-xs",children:wN(v.updatedAt)}),o.jsxs("span",{className:"text-text-muted text-xs",children:[v.messageCount," msgs"]})]})]})},v.id)}):o.jsx("div",{className:"p-3 md:p-4 text-text-muted text-sm",children:"No sessions yet"})})]})},w.id)}),p.length===0&&!u&&o.jsx("div",{className:"text-center py-12 text-text-muted",children:"No projects yet. Open a project to get started."}),u&&o.jsx("div",{className:"flex justify-center py-12",children:o.jsx(yl,{})})]}),e&&o.jsx(MN,{isOpen:e,onClose:()=>t(!1)}),n&&o.jsx(GS,{isOpen:!0,onClose:()=>s(null),projectName:n.name,onConfirm:()=>f(n.id)})]})}function PN(){const[,e]=lp("/p/:projectId/new"),[,t]=hr(),n=e==null?void 0:e.projectId,s=we(u=>u.createSession),a=we(u=>u.resetPendingSessionCreate),l=D.useCallback(async()=>{if(!n)return;const u=await s(n);u?(t(`/p/${n}/s/${u.id}`),a()):(t(`/p/${n}`),a())},[n,s,t,a]);return D.useEffect(()=>{l()},[l]),o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx(yl,{})})}function BN(){const e=Rt(t=>t.currentProject);return o.jsx("div",{className:"h-full flex flex-col items-center justify-center p-8 text-center",children:o.jsxs("div",{className:"max-w-md",children:[o.jsx("h2",{className:"text-xl font-semibold text-text-primary mb-2",children:(e==null?void 0:e.name)??"Project"}),o.jsx("p",{className:"text-text-secondary mb-6",children:"No session selected"}),o.jsxs("div",{className:"flex flex-col gap-3",children:[e&&o.jsx(qn,{href:`/p/${e.id}/new`,"data-testid":"create-new-session-button",className:"block w-full rounded font-medium transition-colors bg-accent-primary/25 text-text-primary hover:bg-accent-primary/40 px-3 py-2 text-center",children:"Create New Session"}),o.jsx("p",{className:"text-sm text-text-muted",children:"Or select an existing session from the sidebar"})]})]})})}const Fo=e=>Math.round(e*10)/10;function zN(e){return typeof e.totalTime=="number"&&!Number.isNaN(e.totalTime)}function Nm(e){return{providerId:e.providerId,providerName:e.providerName,backend:e.backend,model:e.model}}function $N(e){return`${e.providerId}::${e.model}`}function HN(e){return`${e.providerName} > ${e.model}`}function qv(e){let t=0,n=0,s=0,a=0,l=0,u=0;const c=[],d=[];let f=0;for(const[_,x]of e.entries()){const w=x.stats,C=Nm(w);t+=w.totalTime,n+=w.toolTime,s+=w.prefillTokens,a+=w.generationTokens;const v=w.prefillSpeed>0?w.prefillTokens/w.prefillSpeed:0,S=w.generationSpeed>0?w.generationTokens/w.generationSpeed:0;l+=v,u+=S,c.push({messageId:x.id,timestamp:x.timestamp,...C,mode:w.mode,responseIndex:_+1,prefillTokens:w.prefillTokens,generationTokens:w.generationTokens,prefillSpeed:w.prefillSpeed,generationSpeed:w.generationSpeed,totalTime:w.totalTime,aiTime:w.totalTime-w.toolTime,toolTime:w.toolTime});const b=w.llmCalls??[];for(const y of b)f+=1,d.push({messageId:x.id,timestamp:y.timestamp??x.timestamp,providerId:y.providerId,providerName:y.providerName,backend:y.backend,model:y.model,mode:w.mode,responseIndex:_+1,sessionCallIndex:f,callIndex:y.callIndex,promptTokens:y.promptTokens,completionTokens:y.completionTokens,ttft:y.ttft,completionTime:y.completionTime,prefillSpeed:y.prefillSpeed,generationSpeed:y.generationSpeed,totalTime:y.totalTime,...y.temperature!==void 0&&{temperature:y.temperature},...y.topP!==void 0&&{topP:y.topP},...y.topK!==void 0&&{topK:y.topK},...y.maxTokens!==void 0&&{maxTokens:y.maxTokens}})}const m=l>0?Fo(s/l):0,p=u>0?Fo(a/u):0;return{totalTime:Fo(t),aiTime:Fo(t-n),toolTime:Fo(n),prefillTokens:s,generationTokens:a,avgPrefillSpeed:m,avgGenerationSpeed:p,responseCount:e.length,llmCallCount:d.length,dataPoints:c,callDataPoints:d}}function UN(e){const t=e.filter(a=>a.stats!==void 0&&a.stats!==null&&zN(a.stats)).sort((a,l)=>new Date(a.timestamp).getTime()-new Date(l.timestamp).getTime());if(t.length===0)return null;const n=new Map;for(const a of t){const l=$N(Nm(a.stats)),u=n.get(l)??[];n.set(l,[...u,a])}const s=Array.from(n.entries()).map(([a,l])=>{const u=Nm(l[0].stats),c=qv(l);return{...u,key:a,label:HN(u),...c}});return{...qv(t),modelGroups:s}}function FN(e){return D.useMemo(()=>UN(e),[e])}function WS(){var a;const e=we(l=>l.gitStatus),t=we(l=>l.currentSession),[n,s]=D.useState(!0);return D.useEffect(()=>{t!=null&&t.workdir&&s(!1)},[t==null?void 0:t.workdir]),{branch:(e==null?void 0:e.branch)??null,diff:{files:((a=e==null?void 0:e.diff)==null?void 0:a.files)??[],loading:n,error:null}}}function fu(e){return e.toLocaleString("en-US").replace(/,/g," ")}function Kv(e){return Number.isFinite(e)?e>=1e3?`${(e/1e3).toFixed(1)}k`:e.toFixed(1):"0"}function VN(e){if(!Number.isFinite(e))return"0s";if(e<60)return`${e.toFixed(1)}s`;const t=Math.floor(e/60),n=Math.round(e%60);return`${t}m${n}s`}const Yv=["▁","▂","▃","▄","▅","▆","▇","█"];function GN(e,t,n){if(n===t)return 4;const s=(e-t)/(n-t);return Math.min(7,Math.max(0,Math.round(s*7)))}function WN(e,t){if(e===t){const a=Math.max(Math.abs(e)*.05,1);return{minY:e-a,maxY:t+a}}const n=t-e,s=Math.max(n*.1,.1);return{minY:e-s,maxY:t+s}}function qN(e,t){if(e.length===0||t<=0)return{blocks:"",minX:0,maxX:0,minY:0,maxY:0};const n=[...e].sort((p,_)=>p.x-_.x),s=n[0].x,a=n[n.length-1].x,l=Math.min(...n.map(p=>p.y)),u=Math.max(...n.map(p=>p.y)),{minY:c,maxY:d}=WN(l,u),f=Array.from({length:t},()=>" "),m=new Map;for(const p of n){const _=a===s?0:Math.round((p.x-s)/(a-s)*(t-1)),x=m.get(_)??[];m.set(_,[...x,p.y])}for(const[p,_]of m){const x=Math.max(..._);f[p]=Yv[GN(x,c,d)]??Yv[0]}return{blocks:f.join(""),minX:s,maxX:a,minY:c,maxY:d}}function Xv(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:e.toFixed(1)}function Qv({data:e,width:t=60,height:n=78,label:s,xLabel:a,yLabel:l,showAxes:u=!0,formatY:c=Xv,formatX:d=Xv}){const f=D.useMemo(()=>{const m=qN(e,t),p=Math.max(t*6,240),_=10,x=8,C=[...e].sort((y,E)=>y.x-E.x).map(y=>{const E=m.maxX===m.minX?p/2:_+(y.x-m.minX)/(m.maxX-m.minX)*(p-_*2),N=m.maxY===m.minY?n/2:x+(m.maxY-y.y)/(m.maxY-m.minY)*(n-x*2);return{...y,cx:E,cy:N,leftPercent:E/p*100,topPercent:N/n*100}}),v=C.map((y,E)=>`${E===0?"M":"L"} ${y.cx.toFixed(1)} ${y.cy.toFixed(1)}`).join(" "),b=[m.maxY,(m.maxY+m.minY)/2,m.minY].map(y=>({value:y,y:m.maxY===m.minY?n/2:x+(m.maxY-y)/(m.maxY-m.minY)*(n-x*2)}));return{...m,chartWidth:p,points:C,path:v,gridLines:b}},[e,n,t]);return e.length===0?o.jsxs("div",{className:"font-mono text-text-muted text-xs",children:[s&&o.jsx("div",{className:"mb-1",children:s}),o.jsx("div",{children:"No data"})]}):o.jsxs("div",{className:"font-mono text-xs",children:[s&&o.jsx("div",{className:"text-text-secondary mb-2",children:s}),o.jsxs("div",{className:"flex gap-3",children:[u&&o.jsx("div",{className:"w-12 h-[78px] flex flex-col justify-between text-right text-text-muted",children:f.gridLines.map(m=>o.jsx("span",{children:c(m.value)},`${m.value}-${m.y}`))}),o.jsx("div",{className:"flex-1 min-w-0",children:o.jsxs("div",{className:"relative h-[78px]",children:[o.jsxs("svg",{viewBox:`0 0 ${f.chartWidth} ${n}`,className:"w-full h-[78px] overflow-visible",preserveAspectRatio:"none","aria-hidden":"true",children:[f.gridLines.map(m=>o.jsx("line",{x1:"0",x2:f.chartWidth,y1:m.y,y2:m.y,stroke:"currentColor",strokeDasharray:"3 4",className:"text-border/60"},`grid-${m.y}`)),f.points.map(m=>o.jsx("line",{x1:m.cx,x2:m.cx,y1:n-4,y2:m.cy,stroke:"currentColor",className:"text-border/40"},`guide-${m.cx}-${m.cy}`)),f.points.length>1&&o.jsx("path",{d:f.path,fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"text-accent-primary/45"})]}),f.points.map(m=>o.jsx("div",{className:"absolute -translate-x-1/2 -translate-y-1/2",style:{left:`${m.leftPercent}%`,top:`${m.topPercent}%`},title:`${d(m.x)} -> ${c(m.y)}`,children:o.jsx("div",{className:"w-2.5 h-2.5 rounded-full bg-accent-primary/20 flex items-center justify-center",children:o.jsx("div",{className:"w-1.5 h-1.5 rounded-full bg-accent-primary"})})},`point-${m.x}-${m.y}`))]})})]}),u&&o.jsxs("div",{className:"flex items-start gap-3 text-text-muted mt-1",children:[o.jsx("span",{className:"w-12"}),o.jsxs("span",{className:"flex-1 flex justify-between",children:[o.jsx("span",{children:d(f.minX)}),o.jsx("span",{children:a}),o.jsx("span",{children:d(f.maxX)})]})]}),l&&u&&o.jsx("div",{className:"text-text-muted mt-1 text-center",children:l})]})}function KN({data:e,prefillLabel:t="Prefill Speed (tok/s) by Response",generationLabel:n="Generation Speed (tok/s) by Response",xLabel:s="response",width:a=60}){const l=e.map(c=>({x:c.x,y:c.ppSpeed})),u=e.map(c=>({x:c.x,y:c.tgSpeed}));return o.jsxs("div",{className:"space-y-5",children:[o.jsx(Qv,{data:l,width:a,label:t,xLabel:s}),o.jsx(Qv,{data:u,width:a,label:n,xLabel:s})]})}function YN(e){const t=new Map;for(const n of e.callDataPoints){const s=t.get(n.messageId)??[];t.set(n.messageId,[...s,n])}return e.dataPoints.map(n=>{const s=[...t.get(n.messageId)??[]].sort((a,l)=>a.callIndex-l.callIndex);return{...n,callCount:s.length,calls:s,isExpandable:s.length>1}})}function XN(e){return{mode:"responses",xLabel:"response",prefillLabel:"Prefill Speed (tok/s) by Response",generationLabel:"Generation Speed (tok/s) by Response",points:e.dataPoints.map(t=>({x:t.responseIndex,ppSpeed:t.prefillSpeed,tgSpeed:t.generationSpeed}))}}function QN(e){return{mode:"calls",xLabel:"context",prefillLabel:"Prefill Speed (tok/s) vs Context",generationLabel:"Generation Speed (tok/s) vs Context",points:e.callDataPoints.map(t=>({x:t.promptTokens,ppSpeed:t.prefillSpeed,tgSpeed:t.generationSpeed}))}}function JN(e){return e.callDataPoints.length>0?QN(e):XN(e)}function zf(e){if(e<60)return`${e.toFixed(1)}s`;const t=Math.floor(e/60),n=e%60;return`${t}m ${n.toFixed(0)}s`}function Li(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:e.toString()}function Jo(e){return e>=1e3?`${(e/1e3).toFixed(1)}k`:e.toFixed(1)}function ZN(e){if(e.length===0)return"0 ctx";const t=Math.min(...e),n=Math.max(...e);return t===n?`${Li(t)} ctx`:`${Li(t)}-${Li(n)} ctx`}function mu(e){return`${Jo(e)} t/s`}function qS(e){try{return new Date(e).toLocaleTimeString("en-US",{hour12:!1})}catch{return e}}function eT(e){return{exportedAt:new Date().toISOString(),providerId:e.providerId,providerName:e.providerName,backend:e.backend,model:e.model,label:e.label,summary:{totalTime:e.totalTime,aiTime:e.aiTime,toolTime:e.toolTime,prefillTokens:e.prefillTokens,generationTokens:e.generationTokens,avgPrefillSpeed:e.avgPrefillSpeed,avgGenerationSpeed:e.avgGenerationSpeed,responseCount:e.responseCount,llmCallCount:e.llmCallCount},responses:e.dataPoints.map(t=>({responseIndex:t.responseIndex,timestamp:t.timestamp,mode:t.mode,prefillTokens:t.prefillTokens,generationTokens:t.generationTokens,prefillSpeed:t.prefillSpeed,generationSpeed:t.generationSpeed,totalTime:t.totalTime,aiTime:t.aiTime,toolTime:t.toolTime})),llmCalls:e.callDataPoints.map(t=>({sessionCallIndex:t.sessionCallIndex,responseIndex:t.responseIndex,callIndex:t.callIndex,timestamp:t.timestamp,mode:t.mode,promptTokens:t.promptTokens,completionTokens:t.completionTokens,ttft:t.ttft,completionTime:t.completionTime,prefillSpeed:t.prefillSpeed,generationSpeed:t.generationSpeed,totalTime:t.totalTime}))}}function tT({isOpen:e,onClose:t,stats:n}){const s=D.useRef(null),[a,l]=D.useState({}),[u,c]=D.useState(()=>{var w;return((w=n.modelGroups[0])==null?void 0:w.key)??""});D.useEffect(()=>{var w;n.modelGroups.some(C=>C.key===u)||c(((w=n.modelGroups[0])==null?void 0:w.key)??"")},[u,n.modelGroups]);const d=D.useMemo(()=>n.modelGroups.find(w=>w.key===u)??n.modelGroups[0],[u,n.modelGroups]),f=D.useMemo(()=>d?YN(d):[],[d]),m=D.useMemo(()=>d?JN(d):{mode:"responses",xLabel:"response",prefillLabel:"",generationLabel:"",points:[]},[d]),p=D.useCallback(w=>{l(C=>({...C,[w]:!C[w]}))},[]),_=D.useCallback(()=>{if(!d)return;const w=eT(d);navigator.clipboard.writeText(JSON.stringify(w,null,2)).catch(C=>console.error("Failed to copy:",C))},[d]),x=D.useCallback(async()=>{if(s.current)try{const w=(await Q(async()=>{const{default:S}=await import("./html2canvas.esm-QH1iLAAe.js");return{default:S}},[])).default,C=await w(s.current,{backgroundColor:"#1a1a1a",scale:2}),v=document.createElement("a");v.download=`openfox-stats-${new Date().toISOString().slice(0,10)}.png`,v.href=C.toDataURL("image/png"),v.click()}catch(w){console.error("Failed to export PNG:",w),_()}},[_]);return o.jsx(Ot,{isOpen:e,onClose:t,title:"Session Stats",size:"lg",children:o.jsxs("div",{ref:s,className:"space-y-6",children:[o.jsx("section",{children:o.jsx("div",{className:"flex flex-wrap gap-2",children:n.modelGroups.map(w=>o.jsx("button",{onClick:()=>c(w.key),className:`px-3 py-1.5 rounded border text-xs transition-colors ${w.key===(d==null?void 0:d.key)?"border-accent-primary bg-accent-primary/10 text-accent-primary":"border-border text-text-muted hover:text-text-primary hover:bg-bg-tertiary/40"}`,title:w.label,children:w.label},w.key))})}),d&&o.jsxs("section",{children:[o.jsx("h3",{className:"text-sm font-semibold text-text-secondary mb-3 uppercase tracking-wide",children:"Summary"}),o.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-5 gap-4",children:[o.jsx(ss,{label:"AI Time",value:zf(d.aiTime)}),o.jsx(ss,{label:"Total Time",value:zf(d.totalTime)}),o.jsx(ss,{label:"Tool Time",value:zf(d.toolTime)}),o.jsx(ss,{label:"Responses",value:d.responseCount.toString()}),o.jsx(ss,{label:"LLM Calls",value:d.llmCallCount.toString()})]}),o.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-4 mt-3",children:[o.jsx(ss,{label:"Prefill Tokens",value:Li(d.prefillTokens),subValue:`@ ${Jo(d.avgPrefillSpeed)} tok/s`}),o.jsx(ss,{label:"Gen Tokens",value:Li(d.generationTokens),subValue:`@ ${Jo(d.avgGenerationSpeed)} tok/s`}),o.jsx(ss,{label:"Avg PP Speed",value:`${Jo(d.avgPrefillSpeed)}`,subValue:"tok/s"}),o.jsx(ss,{label:"Avg TG Speed",value:`${Jo(d.avgGenerationSpeed)}`,subValue:"tok/s"})]})]}),d&&m.points.length>1&&o.jsxs("section",{children:[o.jsxs("div",{className:"flex items-center justify-between mb-3",children:[o.jsx("h3",{className:"text-sm font-semibold text-text-secondary uppercase tracking-wide",children:"Performance Progression"}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("button",{onClick:_,className:"px-2 py-1 text-xs text-text-muted hover:text-text-primary hover:bg-bg-tertiary rounded transition-colors",children:"Copy JSON"}),o.jsx("button",{onClick:x,className:"px-2 py-1 text-xs text-text-muted hover:text-text-primary hover:bg-bg-tertiary rounded transition-colors",children:"Save PNG"})]})]}),o.jsx("div",{className:"bg-bg-tertiary/50 rounded p-4",children:o.jsx(KN,{data:m.points,width:50,prefillLabel:m.prefillLabel,generationLabel:m.generationLabel,xLabel:m.xLabel})})]}),d&&o.jsxs("section",{children:[o.jsxs("h3",{className:"text-sm font-semibold text-text-secondary mb-3 uppercase tracking-wide",children:["Response Log (",d.responseCount," responses)"]}),o.jsx("div",{className:"overflow-y-auto bg-bg-tertiary/30 rounded",children:o.jsxs("table",{className:"w-full table-fixed border-separate border-spacing-0 text-xs",children:[o.jsxs("colgroup",{children:[o.jsx("col",{className:"w-[7%]"}),o.jsx("col",{className:"w-[14%]"}),o.jsx("col",{className:"w-[10%]"}),o.jsx("col",{className:"w-[14%]"}),o.jsx("col",{className:"w-[14%]"}),o.jsx("col",{className:"w-[14%]"}),o.jsx("col",{className:"w-[11%]"}),o.jsx("col",{className:"w-[2%]"})]}),o.jsx("thead",{children:o.jsxs("tr",{className:"text-[10px] uppercase tracking-wide text-text-muted/80",children:[o.jsx("th",{className:"px-3 py-2 text-center font-medium",children:"#"}),o.jsx("th",{className:"px-2 py-2 text-center font-medium",children:"At"}),o.jsx("th",{className:"px-2 py-2 text-center font-medium",children:"Time"}),o.jsx("th",{className:"px-2 py-2 text-center font-medium",children:"Context"}),o.jsx("th",{className:"px-2 py-2 text-center font-medium",children:"PP t/s"}),o.jsx("th",{className:"px-2 py-2 text-center font-medium",children:"TG t/s"}),o.jsx("th",{className:"px-2 py-2 text-center font-medium",children:"Calls"}),o.jsx("th",{className:"px-2 py-2"})]})}),o.jsx("tbody",{children:f.map((w,C)=>o.jsxs(D.Fragment,{children:[o.jsx(nT,{row:w,index:C,isExpanded:a[w.messageId]??!1,onToggle:w.isExpandable?()=>p(w.messageId):void 0}),(a[w.messageId]??!1)&&w.calls.map((v,S)=>o.jsx(rT,{dataPoint:v,index:S},`${v.messageId}-${v.callIndex}`))]},w.messageId))})]})})]})]})})}function ss({label:e,value:t,subValue:n}){return o.jsxs("div",{className:"bg-bg-tertiary/50 rounded p-3",children:[o.jsx("div",{className:"text-text-muted text-xs mb-1",children:e}),o.jsx("div",{className:"text-text-primary text-lg font-semibold",children:t}),n&&o.jsx("div",{className:"text-text-muted text-xs",children:n})]})}function nT({row:e,index:t,isExpanded:n,onToggle:s}){const a=e.calls.length>0?ZN(e.calls.map(l=>l.promptTokens)):`${Li(e.prefillTokens)} ctx`;return o.jsxs("tr",{onClick:s,className:`${t%2===0?"bg-bg-tertiary/20":""} ${s?"cursor-pointer hover:bg-bg-tertiary/35 transition-colors":""}`,children:[o.jsx("td",{className:"px-3 py-2 text-center text-text-muted align-middle",children:e.responseIndex}),o.jsx("td",{className:"px-2 py-2 text-center text-text-muted font-mono align-middle whitespace-nowrap",children:qS(e.timestamp)}),o.jsxs("td",{className:"px-2 py-2 text-center text-text-muted align-middle whitespace-nowrap",children:[e.totalTime.toFixed(1),"s"]}),o.jsx("td",{className:"px-2 py-2 text-center text-text-primary font-mono align-middle whitespace-nowrap",children:a.replace(/ ctx$/,"")}),o.jsx("td",{className:"px-2 py-2 text-center text-text-primary font-mono align-middle whitespace-nowrap",children:mu(e.prefillSpeed)}),o.jsx("td",{className:"px-2 py-2 text-center text-text-primary font-mono align-middle whitespace-nowrap",children:mu(e.generationSpeed)}),o.jsx("td",{className:"px-2 py-2 text-center text-text-muted font-mono align-middle whitespace-nowrap",children:e.callCount}),o.jsx("td",{className:"px-2 py-2 text-center text-text-muted align-middle whitespace-nowrap",children:e.isExpandable?n?"v":">":""})]})}function rT({dataPoint:e,index:t}){const n=e.temperature!==void 0||e.topP!==void 0||e.topK!==void 0||e.maxTokens!==void 0;return o.jsxs(o.Fragment,{children:[o.jsxs("tr",{className:`${t%2===0?"bg-bg-tertiary/10":"bg-bg-tertiary/5"}`,children:[o.jsxs("td",{className:"px-3 py-2 pl-6 text-center text-text-muted align-middle border-l border-border/60",children:["c",e.callIndex]}),o.jsx("td",{className:"px-2 py-2 text-center text-text-muted font-mono align-middle whitespace-nowrap",children:qS(e.timestamp)}),o.jsxs("td",{className:"px-2 py-2 text-center text-text-muted align-middle whitespace-nowrap",children:[e.totalTime.toFixed(1),"s"]}),o.jsx("td",{className:"px-2 py-2 text-center text-text-primary font-mono align-middle whitespace-nowrap",children:Li(e.promptTokens)}),o.jsx("td",{className:"px-2 py-2 text-center text-text-primary font-mono align-middle whitespace-nowrap",children:mu(e.prefillSpeed)}),o.jsx("td",{className:"px-2 py-2 text-center text-text-primary font-mono align-middle whitespace-nowrap",children:mu(e.generationSpeed)}),o.jsx("td",{className:"px-2 py-2 text-center text-text-muted font-mono align-middle whitespace-nowrap",children:e.callIndex}),o.jsx("td",{className:"px-2 py-2"})]}),n&&o.jsx("tr",{className:`${t%2===0?"bg-bg-tertiary/5":"bg-bg-tertiary/[2.5%]"}`,children:o.jsx("td",{colSpan:8,className:"px-6 py-1.5 border-l border-border/60",children:o.jsxs("div",{className:"flex flex-wrap gap-x-4 gap-y-1 text-[10px] text-text-muted",children:[e.temperature!==void 0&&o.jsxs("span",{children:["temp: ",e.temperature.toFixed(2)]}),e.topP!==void 0&&o.jsxs("span",{children:["topP: ",e.topP.toFixed(2)]}),e.topK!==void 0&&o.jsxs("span",{children:["topK: ",e.topK]}),e.maxTokens!==void 0&&o.jsxs("span",{children:["maxTok: ",e.maxTokens]})]})})})]})}const sT={passed:{icon:"✓",color:"text-accent-success"},completed:{icon:"◉",color:"text-purple-400"},failed:{icon:"✗",color:"text-accent-error"},resolved:{icon:"✓",color:"text-accent-success"},dismissed:{icon:"–",color:"text-text-muted"},open:{icon:"○",color:"text-accent-warning"},pending:{icon:"○",color:"text-text-muted"},in_progress:{icon:"◌",color:"text-accent-warning"}},iT=["open","in_progress","pending","completed","resolved","dismissed","passed","failed"];function aT(e){return sT[e]??{icon:"○",color:"text-text-muted"}}function KS(e){const t=document.createElement("textarea");return t.innerHTML=e,t.value}const Wu=D.memo(function({status:t,className:n="text-xs leading-tight flex-shrink-0"}){const{icon:s,color:a}=aT(t);return o.jsx("span",{className:`${a} ${n}`,children:s})});function Jv({entries:e,title:t}){const n=D.useMemo(()=>e.reduce((s,a)=>(s[a.status]=(s[a.status]??0)+1,s),{}),[e]);return o.jsxs("h3",{className:"text-sm font-semibold text-text-primary mb-2 flex items-center justify-between",children:[o.jsx("span",{children:t}),Object.keys(n).length>0&&o.jsx("span",{className:"font-normal text-xs flex items-center gap-1.5",children:iT.map(s=>{const a=n[s];return a?o.jsxs("span",{className:"flex items-center gap-0.5",children:[o.jsx(Wu,{status:s}),o.jsx("span",{children:a})]},s):null})})]})}const oT=D.memo(function({entries:t,title:n}){return t.length===0?null:o.jsxs("div",{className:"my-1 rounded border border-border bg-secondary overflow-hidden",children:[n&&o.jsx("div",{className:"px-1.5 py-1 border-b border-border bg-secondary",children:o.jsx("span",{className:"text-xs font-medium text-text-muted",children:n})}),o.jsx("div",{className:"bg-primary",children:t.map((s,a)=>o.jsxs("div",{className:`flex items-start gap-1 px-1.5 py-1 ${a>0?"border-t border-border":""}`,children:[o.jsx(Wu,{status:s.status}),o.jsxs("div",{className:"flex-1 min-w-0 text-xs truncate",children:[o.jsxs("span",{className:"text-text-muted",children:["[",s.id,"]"]})," ",KS(s.description)]})]},s.id??a))})]})}),lT="#6b7280";function al(e,t){var n;return((n=e.find(s=>s.id===t))==null?void 0:n.color)??lT}const gt=Yn(e=>{const t=async()=>{await xp("/api/agents",e,!0)};return{defaults:[],userItems:[],projectItems:[],loading:!1,fetchAgents:t,fetchAgent:async n=>{try{const s=await Ne(`/api/agents/${n}`);return s.ok?await s.json():null}catch{return null}},fetchDefaultContent:async n=>{try{const s=await Ne(`/api/agents/defaults/${n}`);return s.ok?await s.json():null}catch{return null}},createAgent:async(n,s)=>{const a=await Ys("POST","/api/agents",{...n,destination:s});return a.success&&await t(),a},updateAgent:async(n,s)=>{const a=await Ys("PUT",`/api/agents/${n}`,s);return a.success&&await t(),a},deleteAgent:async n=>{try{const s=await Ne(`/api/agents/${n}`,{method:"DELETE"}),a=await s.json();return s.ok?(e(l=>({userItems:l.userItems.filter(u=>u.id!==n)})),{success:!0}):{success:!1,error:a.error??"Failed to delete"}}catch{return{success:!1,error:"Network error"}}},duplicateAgent:async(n,s)=>Pu(`/api/agents/${n}/duplicate`,t,s)}}),jt=Yn((e,t)=>({defaults:[],userItems:[],projectItems:[],activeWorkflowId:"default",loading:!1,templateVariables:[],fetchTemplateVariables:async()=>{try{const s=await(await Ne("/api/workflows/template-variables")).json();e({templateVariables:s.variables??[]})}catch{}},fetchWorkflows:async()=>{e({loading:!0});try{const s=await(await Ne("/api/workflows")).json();e({defaults:s.defaults??[],userItems:s.userItems??[],projectItems:s.projectItems??[],activeWorkflowId:s.activeWorkflowId??"default",loading:!1})}catch{e({loading:!1})}},fetchWorkflow:async n=>{try{const s=await Ne(`/api/workflows/${n}`);return s.ok?await s.json():null}catch{return null}},fetchDefaultContent:async n=>{try{const s=await Ne(`/api/workflows/defaults/${n}`);return s.ok?await s.json():null}catch{return null}},createWorkflow:async(n,s)=>{const a=await Ys("POST","/api/workflows",{...n,destination:s});return a.success&&await t().fetchWorkflows(),a},updateWorkflow:async(n,s)=>{const a=await Ys("PUT",`/api/workflows/${n}`,s);return a.success&&await t().fetchWorkflows(),a},deleteWorkflow:async n=>{try{const s=await Ne(`/api/workflows/${n}`,{method:"DELETE"}),a=await s.json();return s.ok?(e(l=>({userItems:l.userItems.filter(u=>u.id!==n)})),{success:!0}):{success:!1,error:a.error??"Failed to delete"}}catch{return{success:!1,error:"Network error"}}},duplicateWorkflow:async(n,s)=>Pu(`/api/workflows/${n}/duplicate`,()=>t().fetchWorkflows(),s)})),cT={pending:"completed",completed:"passed",passed:"failed",failed:"pending"};async function uT(e,t){await Ne(`/api/sessions/${e}/criteria`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({criteria:t})})}function Vc({id:e,agents:t}){const n=al(t,e),s=t.find(a=>a.id===e);return o.jsx("span",{className:"font-medium rounded px-1",style:{backgroundColor:`${n}20`,color:n},children:(s==null?void 0:s.name)??e})}function dT({id:e}){const t=jt(u=>u.defaults),n=jt(u=>u.userItems),a=D.useMemo(()=>[...t,...n],[t,n]).find(u=>u.id===e),l=(a==null?void 0:a.color)??"#3b82f6";return o.jsx("span",{className:"font-medium rounded px-1",style:{backgroundColor:`${l}20`,color:l},children:(a==null?void 0:a.name)??e})}function hT({entries:e,sessionId:t}){const[n,s]=D.useState(e),[a,l]=D.useState(!1),[u,c]=D.useState(null),[d,f]=D.useState(""),[m,p]=D.useState(""),[_,x]=D.useState(!1),[w,C]=D.useState(!1),v=gt(z=>z.defaults),S=gt(z=>z.userItems),b=gt(z=>z.projectItems),y=D.useMemo(()=>[...v,...S,...b],[v,S,b]),E=D.useRef(null),N=D.useRef(null);D.useEffect(()=>{s(e)},[e]),D.useEffect(()=>{var z;a&&((z=E.current)==null||z.focus())},[a]),D.useEffect(()=>{var z;u&&((z=N.current)==null||z.focus())},[u]);const T=D.useCallback(z=>{s(z),uT(t,z)},[t]),L=D.useCallback(()=>{var H;const z=d.trim();if(!z)return;const X=String(n.length),te=[...n,{id:X,description:z,status:"pending"}];T(te),f(""),(H=E.current)==null||H.focus()},[n,d,T]),A=D.useCallback(()=>{l(!1),f("")},[]),R=D.useCallback((z,X)=>{c(z),p(X)},[]),M=D.useCallback(()=>{if(!u)return;const z=m.trim(),X=n.map(te=>te.id===u?{...te,description:z||te.description}:te);T(X),c(null)},[u,m,n,T]),G=D.useCallback(z=>{const X=n.map(te=>te.id===z?{...te,status:cT[te.status]??"pending"}:te);T(X)},[n,T]),W=D.useCallback(z=>{T(n.filter(X=>X.id!==z))},[n,T]),O=D.useCallback(()=>{T([]),x(!1)},[T]),U=D.useCallback(z=>{z.key==="Enter"&&(z.preventDefault(),L()),z.key==="Escape"&&A()},[L,A]),V=D.useCallback(z=>{z.key==="Enter"&&M(),z.key==="Escape"&&c(null)},[M]);return o.jsxs("div",{className:"my-1 rounded border border-border bg-secondary overflow-hidden",children:[o.jsxs("div",{className:"bg-primary",children:[n.length===0&&!a&&o.jsxs("div",{className:"px-1.5 py-2 text-xs text-text-muted italic text-center",children:["No criteria yet."," ",o.jsx("button",{onClick:()=>C(!0),className:"text-accent-primary hover:underline not-italic cursor-pointer",children:"Learn more"})]}),n.map((z,X)=>{const te=z.status,H=u===z.id;return o.jsxs("div",{className:`flex items-start gap-1 px-1.5 py-1 group ${X>0?"border-t border-border":""}`,children:[o.jsx("button",{onClick:()=>G(z.id),className:"text-xs leading-tight flex-shrink-0 cursor-pointer hover:opacity-70 transition-opacity",title:`Status: ${z.status} (click to cycle)`,children:o.jsx(Wu,{status:te})}),o.jsx("div",{className:"flex-1 min-w-0",children:H?o.jsx("input",{ref:N,value:m,onChange:I=>p(I.target.value),onBlur:M,onKeyDown:V,className:"w-full bg-bg-tertiary text-text-primary text-xs px-1.5 py-0.5 rounded border border-border focus:outline-none focus:border-accent-primary"}):o.jsxs("button",{onClick:()=>R(z.id,z.description),className:"text-xs text-text-primary text-left hover:text-accent-primary transition-colors w-full truncate cursor-pointer",title:"Click to edit",children:["[",z.id,"] ",KS(z.description)]})}),o.jsx("button",{onClick:()=>W(z.id),className:"flex-shrink-0 opacity-0 group-hover:opacity-100 text-text-muted hover:text-accent-error transition-all ml-0.5 cursor-pointer flex items-center self-center",title:"Delete criterion",children:o.jsx(xl,{className:"w-4 h-4"})})]},z.id)})]}),a&&o.jsx("div",{className:"px-1.5 py-1 border-t border-border bg-secondary",children:o.jsxs("div",{className:"flex items-center gap-1",children:[o.jsx("span",{className:"text-text-muted text-xs leading-tight flex-shrink-0",children:"○"}),o.jsx("input",{ref:E,value:d,onChange:z=>f(z.target.value),onKeyDown:U,placeholder:"New criterion...",className:"flex-1 bg-bg-tertiary text-text-primary text-xs px-1.5 py-0.5 rounded border border-border focus:outline-none focus:border-accent-primary placeholder-text-muted"})]})}),o.jsxs("div",{className:"px-1.5 py-1 border-t border-border bg-secondary flex items-center gap-2",children:[a?o.jsxs(o.Fragment,{children:[o.jsxs("button",{onClick:L,className:"flex items-center gap-1 text-xs text-accent-primary hover:text-accent-primary/70 transition-colors cursor-pointer",title:"Add criterion",children:[o.jsx(Xs,{className:"w-3 h-3"}),"Add"]}),o.jsx("button",{onClick:A,className:"flex items-center gap-1 text-xs text-text-muted hover:text-text-primary transition-colors cursor-pointer",title:"Cancel",children:"Cancel"})]}):o.jsxs("button",{onClick:()=>l(!0),className:"flex items-center gap-1 text-xs text-text-muted hover:text-accent-primary transition-colors cursor-pointer",title:"Add criterion",children:[o.jsx(Xs,{className:"w-3 h-3"}),"Add"]}),n.length>0&&o.jsxs("button",{onClick:()=>x(!0),className:"flex items-center gap-1 text-xs text-text-muted hover:text-accent-error transition-colors ml-auto cursor-pointer",title:"Clear all criteria",children:[o.jsx(gl,{className:"w-3 h-3"}),"Clear all"]}),o.jsx("button",{onClick:()=>C(!0),className:"flex items-center gap-1 text-xs text-text-muted hover:text-accent-primary transition-colors cursor-pointer",title:"About criteria",children:o.jsx(vS,{className:"w-3 h-3"})})]}),_&&o.jsx("div",{className:"px-1.5 py-1 border-t border-border bg-secondary",children:o.jsxs("div",{className:"flex items-center gap-2 justify-between",children:[o.jsx("span",{className:"text-xs text-accent-error",children:"Clear all criteria?"}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("button",{onClick:O,className:"text-xs text-accent-error hover:text-accent-error/70 transition-colors cursor-pointer",children:"Yes"}),o.jsx("button",{onClick:()=>x(!1),className:"text-xs text-text-muted hover:text-text-primary transition-colors cursor-pointer",children:"No"})]})]})}),o.jsx(Ot,{isOpen:w,onClose:()=>C(!1),title:"About Acceptance Criteria",size:"md",children:o.jsxs("div",{className:"space-y-3 text-sm text-text-secondary",children:[o.jsx("p",{children:"Each criterion defines a specific requirement that needs to be met."}),o.jsxs("p",{children:["To use this feature, start in ",o.jsx(Vc,{id:"planner",agents:y})," mode and",o.jsxs("strong",{className:"text-text-primary",children:[" ","ask the agent to define acceptance criteria that matches your goal"]}),". Then launch the ",o.jsx(dT,{id:"default"})," builtin workflow to launch the automation part."]}),o.jsx("p",{children:"This workflow will automatically:"}),o.jsxs("ol",{className:"list-decimal list-inside space-y-1",children:[o.jsxs("li",{children:["Launch the ",o.jsx(Vc,{id:"builder",agents:y}),' agent, that will be forced to continue until it marks all criteria as "completed"']}),o.jsxs("li",{children:["Then launch the ",o.jsx(Vc,{id:"verifier",agents:y})," subagent, that will verify each criterion. If every criterion is fulfilled, then it goes to the next step, otherwise, it gives feedback to the main agent until 100% of the criteria are met."]}),o.jsxs("li",{children:["Launch a ",o.jsx(Vc,{id:"code_reviewer",agents:y})," subagent, that will analyze the code to provide actionable feedback to the main agent."]})]}),o.jsx("div",{className:"bg-bg-tertiary rounded p-3 space-y-1.5",children:o.jsx("p",{children:"This lets smaller models follow complex plans to completion and improves the chances that nothing from your plan is missed."})})]})})]})}function fT({isOpen:e,onClose:t}){const n=Mr(C=>C.config),s=Mr(C=>C.saveConfig),[a,l]=D.useState(""),[u,c]=D.useState(""),[d,f]=D.useState(!1),[m,p]=D.useState(!1),[_,x]=D.useState(!1);D.useEffect(()=>{e&&(l((n==null?void 0:n.command)??""),c((n==null?void 0:n.url)??""),f((n==null?void 0:n.hotReload)??!1),p((n==null?void 0:n.disableInspect)??!1))},[e,n]);const w=async()=>{!a.trim()||!u.trim()||(x(!0),await s({command:a.trim(),url:u.trim(),hotReload:d,disableInspect:m}),x(!1),t())};return o.jsx(Ot,{isOpen:e,onClose:t,title:"Dev Server Config",size:"sm",children:o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Command"}),o.jsx("input",{className:"input w-full",type:"text",value:a,onChange:C=>l(C.target.value),placeholder:"npm run dev"})]}),o.jsxs("div",{children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Dev URL"}),o.jsx("input",{className:"input w-full",type:"text",value:u,onChange:C=>c(C.target.value),placeholder:"http://localhost:3000"})]}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("input",{type:"checkbox",id:"hotReload",checked:d,onChange:C=>f(C.target.checked),className:"rounded border-border bg-bg-tertiary"}),o.jsx("label",{htmlFor:"hotReload",className:"text-xs text-text-secondary",children:"Hot Reload"})]}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("input",{type:"checkbox",id:"disableInspect",checked:m,onChange:C=>p(C.target.checked),className:"rounded border-border bg-bg-tertiary"}),o.jsx("label",{htmlFor:"disableInspect",className:"text-xs text-text-secondary",children:"Disable inspect feedback"})]}),o.jsxs("div",{className:"flex justify-end gap-2 pt-2",children:[o.jsx("button",{className:"btn btn-secondary",onClick:t,children:"Cancel"}),o.jsx("button",{className:"btn btn-primary",onClick:w,disabled:_||!a.trim()||!u.trim(),children:_?"Saving...":"Save"})]})]})})}const Zv={30:"text-black",31:"text-red-400",32:"text-accent-success",33:"text-accent-warning",34:"text-blue-400",35:"text-purple-400",36:"text-cyan-400",37:"text-gray-300",90:"text-gray-500",91:"text-red-500",92:"text-green-500",93:"text-yellow-400",94:"text-blue-500",95:"text-pink-400",96:"text-cyan-500",97:"text-white"},mT={40:"bg-black",41:"bg-red-900",42:"bg-green-900",43:"bg-yellow-900",44:"bg-blue-900",45:"bg-purple-900",46:"bg-cyan-900",47:"bg-gray-700"},eb={1:"font-bold",2:"opacity-75",4:"underline",7:"bg-bg-secondary"},pT="text-text-primary";function gT(e){const t=[],n=new RegExp("\x1B\\[([0-9;]+)m","g");let s=0,a="text-text-primary",l;try{for(;(l=n.exec(e))!==null;){if(l.index>s){const f=e.slice(s,l.index);f&&t.push({text:f,className:a})}const u=l[1];if(!u)continue;const c=u.split(";").map(Number);if(c.length===0||c[0]===0){a="text-text-primary";continue}const d=[];for(const f of c)if(f>=30&&f<=37){const m=Zv[f];m&&d.push(m)}else if(f>=40&&f<=47){const m=mT[f];m&&d.push(m)}else if(f>=90&&f<=97){const m=Zv[f];m&&d.push(m)}else if(f in eb){const m=eb[f];m&&d.push(m)}else f===39?d.push(pT):f===49&&(a=a.split(" ").filter(m=>!m.startsWith("bg-")).join(" "));d.length>0&&(a=d.join(" ")),s=n.lastIndex}if(s<e.length){const u=e.slice(s);u&&t.push({text:u,className:a})}return t}catch(u){return console.warn("ANSI parsing failed, stripping codes:",u),[{text:xT(e),className:"text-text-primary"}]}}function xT(e){return e.replace(new RegExp("\x1B\\[([0-9;]+)m","g"),"")}function pu(e){const t=gT(e),n=[];return t.forEach((s,a)=>{const l=s.text.split(`
90
+ `);l.forEach((u,c)=>{n.push(Vs.createElement("span",{key:`${a}-${c}`,className:s.className,style:{display:"inline-block",whiteSpace:"pre-wrap"}},u)),c<l.length-1&&n.push(Vs.createElement("br",{key:`${a}-${c}-br`}))})}),n.length===1?n[0]:n}function YS({logs:e,preRef:t,preClassName:n="text-sm font-mono"}){return o.jsx("pre",{ref:t,className:n,children:e.length===0?o.jsx("span",{className:"text-text-muted",children:"No output yet"}):e.map((s,a)=>o.jsx("span",{className:s.stream==="stderr"?"text-accent-warning":"",children:pu(s.content)},a))})}function wp({isActive:e,onToggle:t,className:n,style:s}){return o.jsxs("button",{type:"button",onClick:()=>t(!e),className:n,style:s,children:[e?o.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-accent-success"}):o.jsx(dr,{className:"w-3 h-3"}),e?"live":"scroll to bottom"]})}const qu=(e,t)=>{const n=D.useRef(!0),s=D.useRef(null),[a,l]=D.useState(!0),u=()=>{const c=e.current;c&&(c.scrollTop=c.scrollHeight)};return D.useEffect(()=>{const c=e.current;if(!c)return;const d=x=>{if(x.deltaY>0){requestAnimationFrame(()=>requestAnimationFrame(()=>{c.scrollHeight-c.scrollTop-c.offsetHeight<100&&(n.current=!0,l(!0))}));return}n.current=!1,l(!1)},f=x=>{x.touches[0]&&(s.current=x.touches[0].clientY)},m=x=>{if(s.current===null)return;const w=x.touches[0];if(!w)return;if(w.clientY-s.current>0){n.current=!1,l(!1);return}requestAnimationFrame(()=>requestAnimationFrame(()=>{c.scrollHeight-c.scrollTop-c.offsetHeight<100&&(n.current=!0,l(!0))}))},p=new MutationObserver(()=>{n.current&&requestAnimationFrame(u)}),_=setInterval(()=>{n.current&&u()},1e3);return c.addEventListener("wheel",d,{passive:!0}),c.addEventListener("touchstart",f,{passive:!0}),c.addEventListener("touchmove",m,{passive:!0}),p.observe(c,{childList:!0,subtree:!0,characterData:!0}),()=>{c.removeEventListener("wheel",d),c.removeEventListener("touchstart",f),c.removeEventListener("touchmove",m),p.disconnect(),clearInterval(_)}},[t==null?void 0:t.id]),{force_scroll_to_bottom:()=>{n.current=!0,l(!0),u()},isAutoScrollActive:a,setAutoScroll:c=>{n.current=c,l(c),c&&u()}}},XS=D.memo(function({title:t,logs:n,onClose:s,preClassName:a}){const l=D.useRef(null),{isAutoScrollActive:u,setAutoScroll:c}=qu(l,null);return o.jsx(Ot,{isOpen:!0,onClose:s,title:t,size:"full",headerRight:o.jsx(wp,{isActive:u,onToggle:c,className:"text-xs text-text-muted hover:text-text-primary flex items-center gap-1 px-1.5 py-0.5 rounded hover:bg-bg-tertiary transition-colors"}),children:o.jsx("div",{ref:l,className:"h-full overflow-y-auto",children:o.jsx(YS,{logs:n,preClassName:a})})})}),_T=D.memo(function({logs:t,anchorRef:n,isHiding:s,isAutoScrollActive:a,onSetAutoScroll:l}){const[u,c]=D.useState(null),d=D.useRef(null),f=D.useRef(l);return f.current=l,D.useEffect(()=>{var p;const m=(p=n.current)==null?void 0:p.getBoundingClientRect();m&&c({bottom:window.innerHeight-m.bottom,right:window.innerWidth-m.right,width:m.width,height:m.height})},[n]),D.useEffect(()=>{const m=d.current;if(!m)return;const p=_=>{if(_.deltaY<0){f.current(!1);return}_.deltaY>0&&requestAnimationFrame(()=>requestAnimationFrame(()=>{m.scrollHeight-m.scrollTop-m.offsetHeight<100&&f.current(!0)}))};return m.addEventListener("wheel",p,{passive:!0}),()=>m.removeEventListener("wheel",p)},[]),D.useEffect(()=>{d.current&&a&&(d.current.scrollTop=d.current.scrollHeight)},[t,a,u]),o.jsx("div",{className:`relative ${u?"":"hidden"}`,children:o.jsx("pre",{ref:d,className:"fixed z-40 text-sm font-mono text-text-primary bg-bg-primary p-2 rounded border border-border overflow-auto transition-all duration-150 ease-out select-text",style:u?{bottom:u.bottom,right:u.right,width:u.width*2,maxHeight:u.height*3,transformOrigin:"bottom right",transform:s?"scale(0.01)":"scale(1)",opacity:s?0:1}:void 0,children:t.map((m,p)=>o.jsx("span",{className:m.stream==="stderr"?"text-accent-warning":"",children:pu(m.content)},p))})})}),yT=D.memo(function({workdir:t}){const n=Mr(U=>U.setWorkdir),s=Mr(U=>U.status),a=Mr(U=>U.config),l=Mr(U=>U.logs),u=Mr(U=>U.start),c=Mr(U=>U.stop),d=Mr(U=>U.fetchLogs),f=we(U=>U.currentSession),[m,p]=D.useState(!1),[_,x]=D.useState(!1),[w,C]=D.useState(!1),[v,S]=D.useState(!1),b=D.useRef(null),{isAutoScrollActive:y,setAutoScroll:E}=qu(b,null),N=D.useRef(null),T=D.useRef(null),L=D.useRef(null),A=D.useRef(null),R=()=>{const U=s==null?void 0:s.inspectProxyPort;if(!U){s!=null&&s.url&&window.open(s.url,"_blank");return}const V=`${window.location.protocol}//${window.location.hostname}:${U}`,z=window.open(V,"_blank");if(z){A.current=z;const X=()=>{var H;!A.current||A.current.closed||(A.current.postMessage({type:"setFoxSessionId",sessionId:(f==null?void 0:f.id)??null},"*"),A.current.postMessage({type:"setFoxSessionTitle",sessionTitle:((H=f==null?void 0:f.metadata)==null?void 0:H.title)??null},"*"),A.current.postMessage({type:"setFoxInspectEnabled",enabled:!(a!=null&&a.disableInspect)},"*"))},te=setInterval(()=>{X(),(!A.current||A.current.closed)&&clearInterval(te)},500);setTimeout(()=>clearInterval(te),5e3)}},M=(s==null?void 0:s.state)??"off",G=a!==null,W=M==="running"||M==="warning";D.useEffect(()=>{n(t??null)},[t,n]),D.useEffect(()=>{W&&d()},[W,d]);const O=()=>{W?c():u()};return o.jsxs("div",{className:"mt-2 pt-3 border-t border-border space-y-3",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:`inline-block w-2.5 h-2.5 rounded-full flex-shrink-0 ${M==="running"?"bg-accent-success":M==="warning"?"bg-accent-warning":M==="error"?"bg-accent-error":"bg-text-muted"}`}),o.jsx("h3",{className:"text-sm font-semibold text-text-primary",children:"Dev Server"})]}),o.jsx("button",{onClick:()=>p(!0),className:"p-1.5 rounded hover:bg-bg-tertiary transition-colors text-text-muted",title:"Configure dev server",children:o.jsx(Ej,{})})]}),G?o.jsx(o.Fragment,{children:M==="running"||M==="warning"?o.jsxs("div",{className:"flex gap-2",children:[o.jsxs("button",{onClick:O,className:"flex-1 flex items-center justify-center gap-1.5 rounded font-medium text-sm px-3 py-1.5 bg-bg-tertiary text-text-primary hover:bg-border transition-colors",children:[o.jsx(SS,{}),"Stop"]}),(s==null?void 0:s.url)&&o.jsxs("button",{onClick:()=>R(),className:"flex-1 flex items-center justify-center gap-1.5 rounded font-medium text-sm px-3 py-1.5 bg-accent-primary/25 text-text-primary hover:bg-accent-primary/40 transition-colors",title:s.url,children:[o.jsx(Nj,{}),"Open"]})]}):o.jsx("button",{onClick:O,className:"w-full rounded font-medium text-sm px-3 py-1.5 bg-accent-primary/25 text-text-primary hover:bg-accent-primary/40 transition-colors",children:"Start"})}):o.jsx("button",{onClick:()=>p(!0),className:"w-full rounded font-medium text-sm px-3 py-1.5 bg-bg-tertiary text-text-muted hover:bg-border transition-colors",children:"Configure"}),o.jsxs("div",{ref:L,className:`relative ${G&&W?"":"hidden"}`,onMouseEnter:()=>{!G||!W||(T.current&&clearTimeout(T.current),N.current=setTimeout(()=>{C(!0),S(!1)},500))},onMouseLeave:()=>{N.current&&clearTimeout(N.current),S(!0),T.current=setTimeout(()=>C(!1),150)},children:[o.jsx(YS,{logs:l,preRef:b,preClassName:"text-sm bg-bg-primary p-2 rounded overflow-auto max-h-[200px] border border-border"}),G&&W&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"absolute bottom-1 right-1 z-50 flex items-center gap-1",children:[(w||v)&&o.jsx(wp,{isActive:y,onToggle:E,className:"text-xs text-text-muted hover:text-text-primary flex items-center gap-1 px-1.5 py-0.5 rounded hover:bg-bg-tertiary transition-colors"}),o.jsx("button",{onClick:()=>x(!0),className:"px-2 py-0.5 rounded text-xs font-medium bg-accent-primary/30 text-text-primary hover:bg-accent-primary/50 transition-colors",children:"Expand"})]}),(w||v)&&L.current&&Ua.createPortal(o.jsx(_T,{logs:l,anchorRef:L,isHiding:v,isAutoScrollActive:y,onSetAutoScroll:E}),document.body)]})]}),o.jsx(fT,{isOpen:m,onClose:()=>p(!1)}),_&&o.jsx(XS,{title:"Dev Server Logs",logs:l,onClose:()=>x(!1)})]})}),vT=D.memo(function({sessionId:t}){var x;const n=el(w=>w.processes),s=el(w=>w.stopProcess),[a,l]=D.useState(null),[u,c]=D.useState([]),d=n.filter(w=>w.status!=="exited"),f=d.filter(w=>w.status==="running").length;if(n.length===0)return null;const m=w=>{switch(w){case"running":return"bg-accent-success";case"starting":return"bg-accent-warning";case"stopping":return"bg-accent-warning";case"exited":return"bg-text-muted";default:return"bg-text-muted"}},p=w=>{const C=el.getState().logs[w]??[];c(C.map(v=>({content:v.content,stream:v.stream}))),l(w)},_=w=>{t&&s(w,t)};return o.jsxs("div",{className:"mt-2 pt-3 border-t border-border space-y-3",children:[o.jsx("div",{className:"flex items-center justify-between",children:o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"inline-block w-2.5 h-2.5 rounded-full flex-shrink-0 bg-accent-primary"}),o.jsx("h3",{className:"text-sm font-semibold text-text-primary",children:"Background"}),o.jsxs("span",{className:"text-xs text-text-muted",children:["(",f," running)"]})]})}),o.jsx("div",{className:"space-y-2",children:d.map(w=>o.jsx("div",{className:"border border-border rounded p-2",children:o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsxs("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:[o.jsx("span",{className:`inline-block w-2 h-2 rounded-full flex-shrink-0 ${m(w.status)}`}),o.jsx("span",{className:"text-sm text-text-primary truncate",title:w.name,children:w.name}),o.jsxs("span",{className:"text-xs text-text-muted",children:["[",w.status,"]"]})]}),o.jsxs("div",{className:"flex gap-1 ml-2",children:[o.jsx("button",{onClick:()=>p(w.id),className:"px-2 py-1 text-xs rounded bg-bg-tertiary hover:bg-border text-text-secondary transition-colors",title:"View logs",children:"Logs"}),o.jsx("button",{onClick:()=>_(w.id),className:"px-2 py-1 text-xs rounded bg-bg-tertiary hover:bg-accent-error/20 text-text-secondary hover:text-accent-error transition-colors",title:"Stop process",children:"Stop"})]})]})},w.id))}),a&&o.jsx(XS,{title:((x=d.find(w=>w.id===a))==null?void 0:x.name)??"",logs:u,onClose:()=>{l(null),c([])}})]})});function bT({isOpen:e,onClose:t,versionInfo:n}){const[s,a]=D.useState("ready"),[l,u]=D.useState(""),[c,d]=D.useState(n),[f,m]=D.useState(!1),[p,_]=D.useState(null),[x,w]=D.useState(null),[C,v]=D.useState(!1);D.useEffect(()=>{if(e){if(n){d(n);return}fetch("/api/auto-update/check").then(E=>E.json()).then(E=>{d({current:E.current,latest:E.latest}),m(E.isService??!1)}).catch(()=>{})}},[e]),D.useEffect(()=>{if(!e||s!=="updating")return;const E=setInterval(()=>{u(N=>N.length>=3?"":N+".")},400);return()=>clearInterval(E)},[e,s]);const S=D.useCallback(async()=>{a("updating"),w(null);try{const N=await(await Ne("/api/auto-update",{method:"POST"})).json();if(m(N.isService??!1),N.success){const T=N.version??"unknown";_(T),localStorage.setItem("openfox_updated_to",T),localStorage.setItem("update_pending","true"),a("complete")}else w(N.error??"Update failed"),a("failed")}catch(E){w(E instanceof Error?E.message:"Update request failed"),a("failed")}},[]),b=D.useCallback(async()=>{v(!0);try{await Ne("/api/auto-update/restart",{method:"POST"})}catch{}setTimeout(()=>window.location.reload(),1e4)},[]);D.useEffect(()=>{e&&(a("ready"),u(""),_(null),w(null),v(!1))},[e]);const y=s!=="updating";return o.jsxs(Ot,{isOpen:e,onClose:y?t:void 0,title:s==="failed"?"Update Failed":s==="complete"?"Update Complete":"New OpenFox Version Available",size:"sm",closeOnBackdropClick:y,showCloseButton:y,children:[o.jsxs("div",{className:"flex flex-col gap-4",children:[c&&o.jsxs("div",{className:"flex justify-between text-sm",children:[o.jsx("span",{className:"text-text-muted",children:"Current version"}),o.jsx("span",{className:"text-text-primary font-mono",children:c.current})]}),c&&o.jsxs("div",{className:"flex justify-between text-sm pb-2",children:[o.jsx("span",{className:"text-text-muted",children:"Latest version"}),o.jsx("span",{className:"text-accent-primary font-mono font-semibold",children:c.latest})]}),s==="updating"&&o.jsxs("div",{className:"flex flex-col gap-2 mt-2",children:[o.jsx("div",{className:"h-1.5 bg-bg-tertiary rounded-full overflow-hidden",children:o.jsx("div",{className:"h-full bg-accent-primary animate-pulse w-full"})}),o.jsxs("p",{className:"text-xs text-text-muted text-center",children:["Updating",l]})]}),s==="complete"&&o.jsxs("div",{className:"flex flex-col gap-3 mt-2",children:[o.jsxs("div",{className:"bg-bg-tertiary rounded px-3 py-2 text-xs text-text-secondary",children:["OpenFox has been updated to v",p??(c==null?void 0:c.latest),".",!f&&" Please restart OpenFox to use the new version."]}),f&&o.jsx("button",{onClick:b,disabled:C,className:"w-full px-3 py-2 text-sm rounded bg-accent-primary hover:brightness-110 transition-all text-white font-medium disabled:opacity-50",children:C?"Reloading in 10s…":"Restart Service"})]}),s==="failed"&&o.jsxs("div",{className:"flex flex-col gap-3 mt-2",children:[o.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 bg-accent-danger/10 border border-accent-danger/30 rounded text-xs",children:[o.jsx("span",{children:"⚠️"}),o.jsx("p",{className:"text-text-secondary",children:x})]}),o.jsx("div",{className:"bg-bg-tertiary rounded px-3 py-2 text-xs font-mono text-text-secondary",children:"openfox update"}),o.jsx("p",{className:"text-xs text-text-muted",children:"Run this command in your terminal to complete the update."})]})]}),s==="ready"&&o.jsx("button",{onClick:S,className:"w-full px-3 py-2 text-sm rounded bg-accent-primary hover:brightness-110 transition-all text-white font-medium",children:"Update OpenFox"}),(s==="complete"||s==="failed")&&o.jsx("button",{onClick:t,className:"w-full px-3 py-2 text-sm rounded bg-bg-tertiary hover:bg-bg-secondary transition-colors text-text-primary font-medium mt-2",children:"Close"})]})}function ST({file:e}){const t=VS(e.path,28),n=e.status==="added"?"text-accent-success":e.status==="deleted"?"text-accent-error":"text-accent-primary",s=e.status==="added"?`+${e.additions}`:e.status==="deleted"?`-${e.deletions}`:e.additions>0||e.deletions>0?`+${e.additions}, -${e.deletions}`:"";return o.jsxs("div",{className:"flex items-center justify-between gap-1 py-0.5 text-xs min-w-0",children:[o.jsx("span",{className:`truncate ${n}`,title:e.path,children:t}),s&&o.jsx("span",{className:`shrink-0 font-mono${e.status==="added"?" text-accent-success":e.status==="deleted"?" text-accent-error":" text-text-muted"}`,children:s})]})}function wT(){const{diff:e}=WS();return e.loading?o.jsx("div",{className:"mt-3",children:o.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-text-muted",children:[o.jsx("span",{className:"w-3 h-3 border border-border border-t-accent-primary rounded-full animate-spin"}),o.jsx("span",{children:"Checking changes..."})]})}):e.files.length===0?o.jsx("div",{className:"mt-3",children:o.jsx("p",{className:"text-xs text-text-muted text-center",children:"No changes"})}):o.jsx("div",{className:"mt-3 max-h-[150px] overflow-y-auto",children:o.jsx("div",{className:"pr-1",children:e.files.map((t,n)=>o.jsx(ST,{file:t},n))})})}function tb({messages:e,workdir:t}){var C,v,S,b;const[n,s]=D.useState(!1),[a,l]=D.useState(!1),[u,c]=D.useState(!1),[d,f]=D.useState(!1),m=FN(e),{branch:p}=WS(),_=zt(y=>y.version),x=we(y=>y.currentSession),w=D.useCallback(async()=>{l(!0);try{const y=await fetch("/api/auto-update/check");if(y.ok){const E=await y.json();c(E.isUpdateAvailable)}}catch{}finally{l(!1)}},[]);return D.useEffect(()=>{w()},[w]),o.jsxs("div",{className:"flex flex-col h-full",children:[m&&o.jsxs("div",{className:"mb-4",children:[o.jsx("button",{onClick:()=>s(!0),className:"w-full flex items-center justify-center px-3 py-2 rounded bg-bg-tertiary hover:bg-bg-secondary transition-colors",title:"View detailed response and call-level stats",children:o.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-muted",children:[o.jsx("span",{className:"text-text-secondary",children:VN(m.aiTime)}),o.jsx("span",{className:"w-px h-3 bg-border"}),o.jsx("span",{className:"text-text-secondary",children:Kv(m.avgPrefillSpeed)}),o.jsx("span",{children:"pp"}),o.jsx("span",{className:"w-px h-3 bg-border"}),o.jsx("span",{className:"text-text-secondary",children:Kv(m.avgGenerationSpeed)}),o.jsx("span",{children:"tg"})]})}),o.jsx(tT,{isOpen:n,onClose:()=>s(!1),stats:m})]}),o.jsx("div",{className:"flex flex-col flex-1 overflow-y-auto",children:o.jsxs("div",{className:"mt-4",children:[o.jsx(Jv,{entries:((C=x==null?void 0:x.metadataEntries)==null?void 0:C.criteria)??[],title:"Acceptance Criteria"}),x&&o.jsx(hT,{entries:((v=x==null?void 0:x.metadataEntries)==null?void 0:v.criteria)??[],sessionId:x.id}),x&&(((b=(S=x.metadataEntries)==null?void 0:S.review_findings)==null?void 0:b.length)??0)>0&&o.jsxs("div",{className:"mt-6",children:[o.jsx(Jv,{entries:x.metadataEntries.review_findings,title:"Review Findings"}),o.jsx(oT,{entries:x.metadataEntries.review_findings})]})]})}),p&&o.jsxs("div",{className:"mt-4 flex items-center gap-2 text-sm",children:[o.jsx(bj,{}),o.jsx("span",{className:"truncate text-text-secondary",title:p,children:p})]}),o.jsx(wT,{}),o.jsx(yT,{workdir:t}),o.jsx(vT,{sessionId:x==null?void 0:x.id}),_&&o.jsxs("div",{className:"mt-4 pt-4 border-t border-border text-center text-xs text-text-muted",children:[o.jsxs("div",{className:"flex items-center justify-center gap-1",children:[o.jsx("a",{href:"https://github.com/co-l/openfox",target:"_blank",rel:"noopener noreferrer",className:"hover:text-accent-primary transition-colors",children:"OpenFox"})," - ",o.jsxs("span",{className:"font-mono",children:["v",_]}),o.jsx("button",{onClick:()=>w(),disabled:a,className:"p-0.5 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors disabled:opacity-50",title:"Check for updates",children:o.jsx(fp,{className:`w-3 h-3 ${a?"animate-spin":""}`})})]}),u&&o.jsx("button",{onClick:()=>f(!0),className:"text-accent-primary hover:underline mt-1",children:"Update OpenFox →"})]}),o.jsx(bT,{isOpen:d,onClose:()=>f(!1),versionInfo:null})]})}function CT({children:e,criteriaSidebarOpen:t=!0,onCriteriaSidebarToggle:n,messages:s}){const a=we(l=>l.currentSession);return o.jsxs("div",{className:"relative h-full overflow-hidden",children:[t&&o.jsx("div",{className:"fixed md:hidden inset-0 bg-secondary/50 z-40",onClick:n}),o.jsxs("div",{className:"flex h-full",children:[o.jsx("div",{className:"flex-1 min-w-0 flex flex-col overflow-hidden bg-secondary",children:e}),t?o.jsx("aside",{className:"hidden md:block w-[320px] shrink-0 border-l border-border p-4 overflow-y-auto bg-secondary",children:o.jsx(tb,{messages:s,workdir:a==null?void 0:a.workdir})}):o.jsx("aside",{className:"hidden md:block w-0 shrink-0 overflow-hidden border-l-0"}),o.jsx("aside",{className:`
91
+ md:hidden
92
+ p-4 overflow-y-auto bg-secondary
93
+ transition-all duration-300 ease-in-out
94
+ fixed right-0 top-[32px] h-[calc(100vh-32px)] z-50
95
+ ${t?"w-[320px] translate-x-0 border-l border-border":"w-[320px] translate-x-full"}
96
+ `,children:o.jsx(tb,{messages:s,workdir:a==null?void 0:a.workdir})})]})]})}function kT(e,t){return t||e>85?"bg-accent-error":e>60?"bg-accent-warning":"bg-accent-success"}function QS({percent:e,dangerZone:t=!1,size:n="md",className:s=""}){const a=n==="sm"?"w-12":"w-20",l=n==="sm"?"h-1":"h-1.5";return o.jsx("div",{className:`${l} bg-bg-tertiary rounded-full overflow-hidden ${a} ${s}`,children:o.jsx("div",{className:`h-full transition-all duration-300 ${kT(e,t)}`,style:{width:`${Math.min(e,100)}%`}})})}function ET({dangerZone:e,size:t="md"}){return e?o.jsx("span",{className:"text-accent-error animate-pulse text-[10px] font-medium",children:"Low!"}):null}function nb(e,t){return t||e>85?"text-accent-error":e>60?"text-accent-warning":"text-text-muted"}function jT(){const e=we(b=>b.contextState),t=we(b=>b.currentSession),n=we(b=>b.compactContext),[s,a]=D.useState(!1),[l,u]=D.useState(!1),[c,d]=D.useState(!1),f=D.useRef(!1);if(D.useEffect(()=>{e!=null&&e.dynamicContextChanged&&!f.current&&u(!1),f.current=(e==null?void 0:e.dynamicContextChanged)??!1},[e==null?void 0:e.dynamicContextChanged]),!e||!t)return null;const{currentTokens:m,maxTokens:p,compactionCount:_,dangerZone:x,dynamicContextChanged:w}=e,C=Math.round(m/p*100),v=t.isRunning,S=()=>{$t.send("context.applyDynamic",{}),u(!0)};return o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"flex-shrink-0 px-4 py-1.5 border-b border-border bg-secondary",children:o.jsxs("div",{className:"flex items-center justify-between gap-4",children:[o.jsx("div",{className:"flex-1"}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsxs("span",{className:nb(C,x),children:[fu(m)," / ",fu(p)]}),o.jsxs("span",{className:nb(C,x),children:["(",C,"%)"]}),o.jsx(QS,{percent:C,dangerZone:x}),o.jsx(ET,{dangerZone:x}),_>0&&o.jsxs("span",{className:"text-[10px] text-text-muted bg-bg-tertiary px-1 py-0.5 rounded",children:[_,"x"]})]}),o.jsx("div",{className:"flex-1 flex justify-end",children:o.jsxs("div",{className:"relative",children:[o.jsx("button",{onClick:()=>a(!s),className:"p-1 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors",title:"More options",children:o.jsx(bS,{})}),s&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>a(!1)}),o.jsxs("div",{className:"absolute right-0 top-full mt-1.5 z-50 bg-bg-secondary border border-border rounded-lg shadow-xl py-1 min-w-[160px]",children:[o.jsx("button",{onClick:()=>{v||n(),a(!1)},disabled:v,className:"w-full px-3 py-1.5 text-left text-sm hover:bg-bg-tertiary transition-colors disabled:opacity-40 disabled:cursor-not-allowed",title:v?"Cannot compact while running":"Compact context",children:o.jsx("span",{className:x?"text-accent-error":"",children:"Compact"})}),w&&o.jsx("button",{onClick:()=>{a(!1),d(!0)},disabled:v,className:"w-full px-3 py-1.5 text-left text-sm hover:bg-bg-tertiary transition-colors disabled:opacity-40 disabled:cursor-not-allowed",title:v?"Cannot apply while running":"Apply dynamic context",children:o.jsx("span",{className:"text-accent-warning",children:"Update system prompt"})})]})]})]})})]})}),w&&!l&&o.jsx("div",{className:"flex-shrink-0 px-4 py-2 bg-accent-warning/10 border-b border-accent-warning/30",children:o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsxs("div",{className:"flex-1 flex items-center justify-center gap-1 text-sm text-text-secondary",children:[o.jsx("span",{children:"System prompt has changed —"}),o.jsx("button",{onClick:()=>d(!0),className:"underline hover:text-text-primary transition-colors",children:"click here to update it"})]}),o.jsx("button",{onClick:()=>u(!0),className:"flex-shrink-0 p-1 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors",title:"Dismiss",children:o.jsx(xl,{})})]})}),o.jsxs(Ot,{isOpen:c,onClose:()=>d(!1),title:"Update system prompt",size:"sm",children:[o.jsx("p",{className:"text-sm text-text-secondary mb-4",children:"Applying the new system prompt will rebuild the cached prompt, which may cause the next response to take longer while the LLM reprocesses the prefix."}),o.jsxs("div",{className:"flex justify-end gap-2",children:[o.jsx("button",{onClick:()=>d(!1),className:"px-3 py-1.5 text-sm rounded bg-bg-tertiary text-text-primary hover:bg-border transition-colors",children:"Cancel"}),o.jsx("button",{onClick:()=>{S(),d(!1)},disabled:v,className:"px-3 py-1.5 text-sm rounded bg-accent-primary text-white hover:opacity-90 transition-colors disabled:opacity-40 disabled:cursor-not-allowed",children:"Update"})]})]})]})}function NT({stats:e,onClose:t}){var n;return o.jsx(Ot,{isOpen:!0,onClose:t,title:"Turn Stats",size:"md",children:o.jsxs("div",{className:"space-y-4",children:[o.jsx("div",{className:"flex items-center gap-3",children:o.jsxs("p",{className:"text-xs text-text-muted",children:[e.model," · ",e.mode]})}),o.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3",children:[o.jsx(Gc,{label:"Total Time",value:`${e.totalTime.toFixed(1)}s`}),o.jsx(Gc,{label:"Prefill",value:e.prefillTokens>=1e3?`${(e.prefillTokens/1e3).toFixed(1)}k`:String(e.prefillTokens)}),o.jsx(Gc,{label:"Generated",value:e.generationTokens>=1e3?`${(e.generationTokens/1e3).toFixed(1)}k`:String(e.generationTokens)}),o.jsx(Gc,{label:"LLM Calls",value:String(((n=e.llmCalls)==null?void 0:n.length)??1)})]}),e.llmCalls&&e.llmCalls.length>0&&o.jsxs("div",{children:[o.jsx("h4",{className:"text-sm font-medium text-text-secondary mb-2",children:"LLM Calls"}),e.llmCalls.map((s,a)=>o.jsxs("div",{className:"bg-bg-tertiary/30 rounded p-3 mb-2",children:[o.jsxs("div",{className:"flex items-center justify-between mb-2",children:[o.jsxs("span",{className:"text-xs text-text-muted",children:["Call ",a+1]}),o.jsxs("span",{className:"text-xs text-text-muted",children:[s.ttft.toFixed(2),"s TTFT · ",s.completionTime.toFixed(2),"s gen"]})]}),o.jsxs("div",{className:"grid grid-cols-2 gap-2 text-xs",children:[o.jsxs("div",{children:[o.jsx("span",{className:"text-text-muted",children:"Tokens:"})," ",o.jsxs("span",{className:"text-text-primary",children:[s.promptTokens," → ",s.completionTokens]})]}),o.jsxs("div",{className:"flex flex-wrap gap-x-2 gap-y-1",children:[s.temperature!==void 0&&o.jsx(Wc,{label:"temp",value:s.temperature.toFixed(2)}),s.topP!==void 0&&o.jsx(Wc,{label:"topP",value:s.topP.toFixed(2)}),s.topK!==void 0&&o.jsx(Wc,{label:"topK",value:String(s.topK)}),s.maxTokens!==void 0&&o.jsx(Wc,{label:"maxTok",value:String(s.maxTokens)})]})]})]},a))]})]})})}function Gc({label:e,value:t}){return o.jsxs("div",{className:"bg-bg-tertiary/50 rounded p-3",children:[o.jsx("div",{className:"text-xs text-text-muted",children:e}),o.jsx("div",{className:"text-lg font-semibold text-text-primary",children:t})]})}function Wc({label:e,value:t}){return o.jsxs("span",{className:"bg-bg-tertiary px-1.5 py-0.5 rounded text-text-primary",children:[o.jsxs("span",{className:"text-text-muted",children:[e,":"]})," ",t]})}function TT(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const AT=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,LT=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,DT={};function rb(e,t){return(DT.jsx?LT:AT).test(e)}const RT=/[ \t\n\f\r]/g;function OT(e){return typeof e=="object"?e.type==="text"?sb(e.value):!1:sb(e)}function sb(e){return e.replace(RT,"")===""}let bl=class{constructor(t,n,s){this.normal=n,this.property=t,s&&(this.space=s)}};bl.prototype.normal={};bl.prototype.property={};bl.prototype.space=void 0;function JS(e,t){const n={},s={};for(const a of e)Object.assign(n,a.property),Object.assign(s,a.normal);return new bl(n,s,t)}function Tm(e){return e.toLowerCase()}let In=class{constructor(t,n){this.attribute=n,this.property=t}};In.prototype.attribute="";In.prototype.booleanish=!1;In.prototype.boolean=!1;In.prototype.commaOrSpaceSeparated=!1;In.prototype.commaSeparated=!1;In.prototype.defined=!1;In.prototype.mustUseProperty=!1;In.prototype.number=!1;In.prototype.overloadedBoolean=!1;In.prototype.property="";In.prototype.spaceSeparated=!1;In.prototype.space=void 0;let MT=0;const Qe=Oi(),Jt=Oi(),Am=Oi(),ke=Oi(),At=Oi(),Ma=Oi(),Gn=Oi();function Oi(){return 2**++MT}const Lm=Object.freeze(Object.defineProperty({__proto__:null,boolean:Qe,booleanish:Jt,commaOrSpaceSeparated:Gn,commaSeparated:Ma,number:ke,overloadedBoolean:Am,spaceSeparated:At},Symbol.toStringTag,{value:"Module"})),$f=Object.keys(Lm);let Cp=class extends In{constructor(t,n,s,a){let l=-1;if(super(t,n),ib(this,"space",a),typeof s=="number")for(;++l<$f.length;){const u=$f[l];ib(this,$f[l],(s&Lm[u])===Lm[u])}}};Cp.prototype.defined=!0;function ib(e,t,n){n&&(e[t]=n)}function Fa(e){const t={},n={};for(const[s,a]of Object.entries(e.properties)){const l=new Cp(s,e.transform(e.attributes||{},s),a,e.space);e.mustUseProperty&&e.mustUseProperty.includes(s)&&(l.mustUseProperty=!0),t[s]=l,n[Tm(s)]=s,n[Tm(l.attribute)]=s}return new bl(t,n,e.space)}const ZS=Fa({properties:{ariaActiveDescendant:null,ariaAtomic:Jt,ariaAutoComplete:null,ariaBusy:Jt,ariaChecked:Jt,ariaColCount:ke,ariaColIndex:ke,ariaColSpan:ke,ariaControls:At,ariaCurrent:null,ariaDescribedBy:At,ariaDetails:null,ariaDisabled:Jt,ariaDropEffect:At,ariaErrorMessage:null,ariaExpanded:Jt,ariaFlowTo:At,ariaGrabbed:Jt,ariaHasPopup:null,ariaHidden:Jt,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:At,ariaLevel:ke,ariaLive:null,ariaModal:Jt,ariaMultiLine:Jt,ariaMultiSelectable:Jt,ariaOrientation:null,ariaOwns:At,ariaPlaceholder:null,ariaPosInSet:ke,ariaPressed:Jt,ariaReadOnly:Jt,ariaRelevant:null,ariaRequired:Jt,ariaRoleDescription:At,ariaRowCount:ke,ariaRowIndex:ke,ariaRowSpan:ke,ariaSelected:Jt,ariaSetSize:ke,ariaSort:null,ariaValueMax:ke,ariaValueMin:ke,ariaValueNow:ke,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function e1(e,t){return t in e?e[t]:t}function t1(e,t){return e1(e,t.toLowerCase())}const IT=Fa({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Ma,acceptCharset:At,accessKey:At,action:null,allow:null,allowFullScreen:Qe,allowPaymentRequest:Qe,allowUserMedia:Qe,alt:null,as:null,async:Qe,autoCapitalize:null,autoComplete:At,autoFocus:Qe,autoPlay:Qe,blocking:At,capture:null,charSet:null,checked:Qe,cite:null,className:At,cols:ke,colSpan:null,content:null,contentEditable:Jt,controls:Qe,controlsList:At,coords:ke|Ma,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Qe,defer:Qe,dir:null,dirName:null,disabled:Qe,download:Am,draggable:Jt,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Qe,formTarget:null,headers:At,height:ke,hidden:Am,high:ke,href:null,hrefLang:null,htmlFor:At,httpEquiv:At,id:null,imageSizes:null,imageSrcSet:null,inert:Qe,inputMode:null,integrity:null,is:null,isMap:Qe,itemId:null,itemProp:At,itemRef:At,itemScope:Qe,itemType:At,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Qe,low:ke,manifest:null,max:null,maxLength:ke,media:null,method:null,min:null,minLength:ke,multiple:Qe,muted:Qe,name:null,nonce:null,noModule:Qe,noValidate:Qe,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Qe,optimum:ke,pattern:null,ping:At,placeholder:null,playsInline:Qe,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Qe,referrerPolicy:null,rel:At,required:Qe,reversed:Qe,rows:ke,rowSpan:ke,sandbox:At,scope:null,scoped:Qe,seamless:Qe,selected:Qe,shadowRootClonable:Qe,shadowRootDelegatesFocus:Qe,shadowRootMode:null,shape:null,size:ke,sizes:null,slot:null,span:ke,spellCheck:Jt,src:null,srcDoc:null,srcLang:null,srcSet:null,start:ke,step:null,style:null,tabIndex:ke,target:null,title:null,translate:null,type:null,typeMustMatch:Qe,useMap:null,value:Jt,width:ke,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:At,axis:null,background:null,bgColor:null,border:ke,borderColor:null,bottomMargin:ke,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Qe,declare:Qe,event:null,face:null,frame:null,frameBorder:null,hSpace:ke,leftMargin:ke,link:null,longDesc:null,lowSrc:null,marginHeight:ke,marginWidth:ke,noResize:Qe,noHref:Qe,noShade:Qe,noWrap:Qe,object:null,profile:null,prompt:null,rev:null,rightMargin:ke,rules:null,scheme:null,scrolling:Jt,standby:null,summary:null,text:null,topMargin:ke,valueType:null,version:null,vAlign:null,vLink:null,vSpace:ke,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Qe,disableRemotePlayback:Qe,prefix:null,property:null,results:ke,security:null,unselectable:null},space:"html",transform:t1}),PT=Fa({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:Gn,accentHeight:ke,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:ke,amplitude:ke,arabicForm:null,ascent:ke,attributeName:null,attributeType:null,azimuth:ke,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:ke,by:null,calcMode:null,capHeight:ke,className:At,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:ke,diffuseConstant:ke,direction:null,display:null,dur:null,divisor:ke,dominantBaseline:null,download:Qe,dx:null,dy:null,edgeMode:null,editable:null,elevation:ke,enableBackground:null,end:null,event:null,exponent:ke,externalResourcesRequired:null,fill:null,fillOpacity:ke,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Ma,g2:Ma,glyphName:Ma,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:ke,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:ke,horizOriginX:ke,horizOriginY:ke,id:null,ideographic:ke,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:ke,k:ke,k1:ke,k2:ke,k3:ke,k4:ke,kernelMatrix:Gn,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:ke,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:ke,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:ke,overlineThickness:ke,paintOrder:null,panose1:null,path:null,pathLength:ke,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:At,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:ke,pointsAtY:ke,pointsAtZ:ke,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Gn,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Gn,rev:Gn,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Gn,requiredFeatures:Gn,requiredFonts:Gn,requiredFormats:Gn,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:ke,specularExponent:ke,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:ke,strikethroughThickness:ke,string:null,stroke:null,strokeDashArray:Gn,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:ke,strokeOpacity:ke,strokeWidth:null,style:null,surfaceScale:ke,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Gn,tabIndex:ke,tableValues:null,target:null,targetX:ke,targetY:ke,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Gn,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:ke,underlineThickness:ke,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:ke,values:null,vAlphabetic:ke,vMathematical:ke,vectorEffect:null,vHanging:ke,vIdeographic:ke,version:null,vertAdvY:ke,vertOriginX:ke,vertOriginY:ke,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:ke,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:e1}),n1=Fa({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),r1=Fa({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:t1}),s1=Fa({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),BT={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},zT=/[A-Z]/g,ab=/-[a-z]/g,$T=/^data[-\w.:]+$/i;function HT(e,t){const n=Tm(t);let s=t,a=In;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&$T.test(t)){if(t.charAt(4)==="-"){const l=t.slice(5).replace(ab,FT);s="data"+l.charAt(0).toUpperCase()+l.slice(1)}else{const l=t.slice(4);if(!ab.test(l)){let u=l.replace(zT,UT);u.charAt(0)!=="-"&&(u="-"+u),t="data"+u}}a=Cp}return new a(s,t)}function UT(e){return"-"+e.toLowerCase()}function FT(e){return e.charAt(1).toUpperCase()}const VT=JS([ZS,IT,n1,r1,s1],"html"),kp=JS([ZS,PT,n1,r1,s1],"svg");function GT(e){return e.join(" ").trim()}var Ca={},Hf,ob;function WT(){if(ob)return Hf;ob=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,s=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,a=/^:\s*/,l=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,u=/^[;\s]*/,c=/^\s+|\s+$/g,d=`
97
+ `,f="/",m="*",p="",_="comment",x="declaration";function w(v,S){if(typeof v!="string")throw new TypeError("First argument must be a string");if(!v)return[];S=S||{};var b=1,y=1;function E(U){var V=U.match(t);V&&(b+=V.length);var z=U.lastIndexOf(d);y=~z?U.length-z:y+U.length}function N(){var U={line:b,column:y};return function(V){return V.position=new T(U),R(),V}}function T(U){this.start=U,this.end={line:b,column:y},this.source=S.source}T.prototype.content=v;function L(U){var V=new Error(S.source+":"+b+":"+y+": "+U);if(V.reason=U,V.filename=S.source,V.line=b,V.column=y,V.source=v,!S.silent)throw V}function A(U){var V=U.exec(v);if(V){var z=V[0];return E(z),v=v.slice(z.length),V}}function R(){A(n)}function M(U){var V;for(U=U||[];V=G();)V!==!1&&U.push(V);return U}function G(){var U=N();if(!(f!=v.charAt(0)||m!=v.charAt(1))){for(var V=2;p!=v.charAt(V)&&(m!=v.charAt(V)||f!=v.charAt(V+1));)++V;if(V+=2,p===v.charAt(V-1))return L("End of comment missing");var z=v.slice(2,V-2);return y+=2,E(z),v=v.slice(V),y+=2,U({type:_,comment:z})}}function W(){var U=N(),V=A(s);if(V){if(G(),!A(a))return L("property missing ':'");var z=A(l),X=U({type:x,property:C(V[0].replace(e,p)),value:z?C(z[0].replace(e,p)):p});return A(u),X}}function O(){var U=[];M(U);for(var V;V=W();)V!==!1&&(U.push(V),M(U));return U}return R(),O()}function C(v){return v?v.replace(c,p):p}return Hf=w,Hf}var lb;function qT(){if(lb)return Ca;lb=1;var e=Ca&&Ca.__importDefault||function(s){return s&&s.__esModule?s:{default:s}};Object.defineProperty(Ca,"__esModule",{value:!0}),Ca.default=n;const t=e(WT());function n(s,a){let l=null;if(!s||typeof s!="string")return l;const u=(0,t.default)(s),c=typeof a=="function";return u.forEach(d=>{if(d.type!=="declaration")return;const{property:f,value:m}=d;c?a(f,m,d):m&&(l=l||{},l[f]=m)}),l}return Ca}var Vo={},cb;function KT(){if(cb)return Vo;cb=1,Object.defineProperty(Vo,"__esModule",{value:!0}),Vo.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,n=/^[^-]+$/,s=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,l=function(f){return!f||n.test(f)||e.test(f)},u=function(f,m){return m.toUpperCase()},c=function(f,m){return"".concat(m,"-")},d=function(f,m){return m===void 0&&(m={}),l(f)?f:(f=f.toLowerCase(),m.reactCompat?f=f.replace(a,c):f=f.replace(s,c),f.replace(t,u))};return Vo.camelCase=d,Vo}var Go,ub;function YT(){if(ub)return Go;ub=1;var e=Go&&Go.__importDefault||function(a){return a&&a.__esModule?a:{default:a}},t=e(qT()),n=KT();function s(a,l){var u={};return!a||typeof a!="string"||(0,t.default)(a,function(c,d){c&&d&&(u[(0,n.camelCase)(c,l)]=d)}),u}return s.default=s,Go=s,Go}var XT=YT();const QT=Ru(XT),i1=a1("end"),Ep=a1("start");function a1(e){return t;function t(n){const s=n&&n.position&&n.position[e]||{};if(typeof s.line=="number"&&s.line>0&&typeof s.column=="number"&&s.column>0)return{line:s.line,column:s.column,offset:typeof s.offset=="number"&&s.offset>-1?s.offset:void 0}}}function JT(e){const t=Ep(e),n=i1(e);if(t&&n)return{start:t,end:n}}function tl(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?db(e.position):"start"in e||"end"in e?db(e):"line"in e||"column"in e?Dm(e):""}function Dm(e){return hb(e&&e.line)+":"+hb(e&&e.column)}function db(e){return Dm(e&&e.start)+"-"+Dm(e&&e.end)}function hb(e){return e&&typeof e=="number"?e:1}class wn extends Error{constructor(t,n,s){super(),typeof n=="string"&&(s=n,n=void 0);let a="",l={},u=!1;if(n&&("line"in n&&"column"in n?l={place:n}:"start"in n&&"end"in n?l={place:n}:"type"in n?l={ancestors:[n],place:n.position}:l={...n}),typeof t=="string"?a=t:!l.cause&&t&&(u=!0,a=t.message,l.cause=t),!l.ruleId&&!l.source&&typeof s=="string"){const d=s.indexOf(":");d===-1?l.ruleId=s:(l.source=s.slice(0,d),l.ruleId=s.slice(d+1))}if(!l.place&&l.ancestors&&l.ancestors){const d=l.ancestors[l.ancestors.length-1];d&&(l.place=d.position)}const c=l.place&&"start"in l.place?l.place.start:l.place;this.ancestors=l.ancestors||void 0,this.cause=l.cause||void 0,this.column=c?c.column:void 0,this.fatal=void 0,this.file="",this.message=a,this.line=c?c.line:void 0,this.name=tl(l.place)||"1:1",this.place=l.place||void 0,this.reason=this.message,this.ruleId=l.ruleId||void 0,this.source=l.source||void 0,this.stack=u&&l.cause&&typeof l.cause.stack=="string"?l.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}wn.prototype.file="";wn.prototype.name="";wn.prototype.reason="";wn.prototype.message="";wn.prototype.stack="";wn.prototype.column=void 0;wn.prototype.line=void 0;wn.prototype.ancestors=void 0;wn.prototype.cause=void 0;wn.prototype.fatal=void 0;wn.prototype.place=void 0;wn.prototype.ruleId=void 0;wn.prototype.source=void 0;const jp={}.hasOwnProperty,ZT=new Map,eA=/[A-Z]/g,tA=new Set(["table","tbody","thead","tfoot","tr"]),nA=new Set(["td","th"]),o1="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function rA(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let s;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");s=dA(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");s=uA(n,t.jsx,t.jsxs)}const a={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:s,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?kp:VT,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},l=l1(a,e,void 0);return l&&typeof l!="string"?l:a.create(e,a.Fragment,{children:l||void 0},void 0)}function l1(e,t,n){if(t.type==="element")return sA(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return iA(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return oA(e,t,n);if(t.type==="mdxjsEsm")return aA(e,t);if(t.type==="root")return lA(e,t,n);if(t.type==="text")return cA(e,t)}function sA(e,t,n){const s=e.schema;let a=s;t.tagName.toLowerCase()==="svg"&&s.space==="html"&&(a=kp,e.schema=a),e.ancestors.push(t);const l=u1(e,t.tagName,!1),u=hA(e,t);let c=Tp(e,t);return tA.has(t.tagName)&&(c=c.filter(function(d){return typeof d=="string"?!OT(d):!0})),c1(e,u,l,t),Np(u,c),e.ancestors.pop(),e.schema=s,e.create(t,l,u,n)}function iA(e,t){if(t.data&&t.data.estree&&e.evaluater){const s=t.data.estree.body[0];return s.type,e.evaluater.evaluateExpression(s.expression)}ol(e,t.position)}function aA(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);ol(e,t.position)}function oA(e,t,n){const s=e.schema;let a=s;t.name==="svg"&&s.space==="html"&&(a=kp,e.schema=a),e.ancestors.push(t);const l=t.name===null?e.Fragment:u1(e,t.name,!0),u=fA(e,t),c=Tp(e,t);return c1(e,u,l,t),Np(u,c),e.ancestors.pop(),e.schema=s,e.create(t,l,u,n)}function lA(e,t,n){const s={};return Np(s,Tp(e,t)),e.create(t,e.Fragment,s,n)}function cA(e,t){return t.value}function c1(e,t,n,s){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=s)}function Np(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function uA(e,t,n){return s;function s(a,l,u,c){const f=Array.isArray(u.children)?n:t;return c?f(l,u,c):f(l,u)}}function dA(e,t){return n;function n(s,a,l,u){const c=Array.isArray(l.children),d=Ep(s);return t(a,l,u,c,{columnNumber:d?d.column-1:void 0,fileName:e,lineNumber:d?d.line:void 0},void 0)}}function hA(e,t){const n={};let s,a;for(a in t.properties)if(a!=="children"&&jp.call(t.properties,a)){const l=mA(e,a,t.properties[a]);if(l){const[u,c]=l;e.tableCellAlignToStyle&&u==="align"&&typeof c=="string"&&nA.has(t.tagName)?s=c:n[u]=c}}if(s){const l=n.style||(n.style={});l[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=s}return n}function fA(e,t){const n={};for(const s of t.attributes)if(s.type==="mdxJsxExpressionAttribute")if(s.data&&s.data.estree&&e.evaluater){const l=s.data.estree.body[0];l.type;const u=l.expression;u.type;const c=u.properties[0];c.type,Object.assign(n,e.evaluater.evaluateExpression(c.argument))}else ol(e,t.position);else{const a=s.name;let l;if(s.value&&typeof s.value=="object")if(s.value.data&&s.value.data.estree&&e.evaluater){const c=s.value.data.estree.body[0];c.type,l=e.evaluater.evaluateExpression(c.expression)}else ol(e,t.position);else l=s.value===null?!0:s.value;n[a]=l}return n}function Tp(e,t){const n=[];let s=-1;const a=e.passKeys?new Map:ZT;for(;++s<t.children.length;){const l=t.children[s];let u;if(e.passKeys){const d=l.type==="element"?l.tagName:l.type==="mdxJsxFlowElement"||l.type==="mdxJsxTextElement"?l.name:void 0;if(d){const f=a.get(d)||0;u=d+"-"+f,a.set(d,f+1)}}const c=l1(e,l,u);c!==void 0&&n.push(c)}return n}function mA(e,t,n){const s=HT(e.schema,t);if(!(n==null||typeof n=="number"&&Number.isNaN(n))){if(Array.isArray(n)&&(n=s.commaSeparated?TT(n):GT(n)),s.property==="style"){let a=typeof n=="object"?n:pA(e,String(n));return e.stylePropertyNameCase==="css"&&(a=gA(a)),["style",a]}return[e.elementAttributeNameCase==="react"&&s.space?BT[s.property]||s.property:s.attribute,n]}}function pA(e,t){try{return QT(t,{reactCompat:!0})}catch(n){if(e.ignoreInvalidStyle)return{};const s=n,a=new wn("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:s,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw a.file=e.filePath||void 0,a.url=o1+"#cannot-parse-style-attribute",a}}function u1(e,t,n){let s;if(!n)s={type:"Literal",value:t};else if(t.includes(".")){const a=t.split(".");let l=-1,u;for(;++l<a.length;){const c=rb(a[l])?{type:"Identifier",name:a[l]}:{type:"Literal",value:a[l]};u=u?{type:"MemberExpression",object:u,property:c,computed:!!(l&&c.type==="Literal"),optional:!1}:c}s=u}else s=rb(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(s.type==="Literal"){const a=s.value;return jp.call(e.components,a)?e.components[a]:a}if(e.evaluater)return e.evaluater.evaluateExpression(s);ol(e)}function ol(e,t){const n=new wn("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw n.file=e.filePath||void 0,n.url=o1+"#cannot-handle-mdx-estrees-without-createevaluater",n}function gA(e){const t={};let n;for(n in e)jp.call(e,n)&&(t[xA(n)]=e[n]);return t}function xA(e){let t=e.replace(eA,_A);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function _A(e){return"-"+e.toLowerCase()}const Uf={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},yA={};function Ap(e,t){const n=yA,s=typeof n.includeImageAlt=="boolean"?n.includeImageAlt:!0,a=typeof n.includeHtml=="boolean"?n.includeHtml:!0;return d1(e,s,a)}function d1(e,t,n){if(vA(e)){if("value"in e)return e.type==="html"&&!n?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return fb(e.children,t,n)}return Array.isArray(e)?fb(e,t,n):""}function fb(e,t,n){const s=[];let a=-1;for(;++a<e.length;)s[a]=d1(e[a],t,n);return s.join("")}function vA(e){return!!(e&&typeof e=="object")}const mb=document.createElement("i");function Lp(e){const t="&"+e+";";mb.innerHTML=t;const n=mb.textContent;return n.charCodeAt(n.length-1)===59&&e!=="semi"||n===t?!1:n}function Kn(e,t,n,s){const a=e.length;let l=0,u;if(t<0?t=-t>a?0:a+t:t=t>a?a:t,n=n>0?n:0,s.length<1e4)u=Array.from(s),u.unshift(t,n),e.splice(...u);else for(n&&e.splice(t,n);l<s.length;)u=s.slice(l,l+1e4),u.unshift(t,0),e.splice(...u),l+=1e4,t+=1e4}function or(e,t){return e.length>0?(Kn(e,e.length,0,t),e):t}const pb={}.hasOwnProperty;function h1(e){const t={};let n=-1;for(;++n<e.length;)bA(t,e[n]);return t}function bA(e,t){let n;for(n in t){const a=(pb.call(e,n)?e[n]:void 0)||(e[n]={}),l=t[n];let u;if(l)for(u in l){pb.call(a,u)||(a[u]=[]);const c=l[u];SA(a[u],Array.isArray(c)?c:c?[c]:[])}}}function SA(e,t){let n=-1;const s=[];for(;++n<t.length;)(t[n].add==="after"?e:s).push(t[n]);Kn(e,0,0,s)}function f1(e,t){const n=Number.parseInt(e,t);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function wr(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const En=Qs(/[A-Za-z]/),Sn=Qs(/[\dA-Za-z]/),wA=Qs(/[#-'*+\--9=?A-Z^-~]/);function gu(e){return e!==null&&(e<32||e===127)}const Rm=Qs(/\d/),CA=Qs(/[\dA-Fa-f]/),kA=Qs(/[!-/:-@[-`{-~]/);function He(e){return e!==null&&e<-2}function Tt(e){return e!==null&&(e<0||e===32)}function st(e){return e===-2||e===-1||e===32}const Ku=Qs(new RegExp("\\p{P}|\\p{S}","u")),Di=Qs(/\s/);function Qs(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function Va(e){const t=[];let n=-1,s=0,a=0;for(;++n<e.length;){const l=e.charCodeAt(n);let u="";if(l===37&&Sn(e.charCodeAt(n+1))&&Sn(e.charCodeAt(n+2)))a=2;else if(l<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(l))||(u=String.fromCharCode(l));else if(l>55295&&l<57344){const c=e.charCodeAt(n+1);l<56320&&c>56319&&c<57344?(u=String.fromCharCode(l,c),a=1):u="�"}else u=String.fromCharCode(l);u&&(t.push(e.slice(s,n),encodeURIComponent(u)),s=n+a+1,u=""),a&&(n+=a,a=0)}return t.join("")+e.slice(s)}function ut(e,t,n,s){const a=s?s-1:Number.POSITIVE_INFINITY;let l=0;return u;function u(d){return st(d)?(e.enter(n),c(d)):t(d)}function c(d){return st(d)&&l++<a?(e.consume(d),c):(e.exit(n),t(d))}}const EA={tokenize:jA};function jA(e){const t=e.attempt(this.parser.constructs.contentInitial,s,a);let n;return t;function s(c){if(c===null){e.consume(c);return}return e.enter("lineEnding"),e.consume(c),e.exit("lineEnding"),ut(e,t,"linePrefix")}function a(c){return e.enter("paragraph"),l(c)}function l(c){const d=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=d),n=d,u(c)}function u(c){if(c===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(c);return}return He(c)?(e.consume(c),e.exit("chunkText"),l):(e.consume(c),u)}}const NA={tokenize:TA},gb={tokenize:AA};function TA(e){const t=this,n=[];let s=0,a,l,u;return c;function c(y){if(s<n.length){const E=n[s];return t.containerState=E[1],e.attempt(E[0].continuation,d,f)(y)}return f(y)}function d(y){if(s++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,a&&b();const E=t.events.length;let N=E,T;for(;N--;)if(t.events[N][0]==="exit"&&t.events[N][1].type==="chunkFlow"){T=t.events[N][1].end;break}S(s);let L=E;for(;L<t.events.length;)t.events[L][1].end={...T},L++;return Kn(t.events,N+1,0,t.events.slice(E)),t.events.length=L,f(y)}return c(y)}function f(y){if(s===n.length){if(!a)return _(y);if(a.currentConstruct&&a.currentConstruct.concrete)return w(y);t.interrupt=!!(a.currentConstruct&&!a._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(gb,m,p)(y)}function m(y){return a&&b(),S(s),_(y)}function p(y){return t.parser.lazy[t.now().line]=s!==n.length,u=t.now().offset,w(y)}function _(y){return t.containerState={},e.attempt(gb,x,w)(y)}function x(y){return s++,n.push([t.currentConstruct,t.containerState]),_(y)}function w(y){if(y===null){a&&b(),S(0),e.consume(y);return}return a=a||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:a,contentType:"flow",previous:l}),C(y)}function C(y){if(y===null){v(e.exit("chunkFlow"),!0),S(0),e.consume(y);return}return He(y)?(e.consume(y),v(e.exit("chunkFlow")),s=0,t.interrupt=void 0,c):(e.consume(y),C)}function v(y,E){const N=t.sliceStream(y);if(E&&N.push(null),y.previous=l,l&&(l.next=y),l=y,a.defineSkip(y.start),a.write(N),t.parser.lazy[y.start.line]){let T=a.events.length;for(;T--;)if(a.events[T][1].start.offset<u&&(!a.events[T][1].end||a.events[T][1].end.offset>u))return;const L=t.events.length;let A=L,R,M;for(;A--;)if(t.events[A][0]==="exit"&&t.events[A][1].type==="chunkFlow"){if(R){M=t.events[A][1].end;break}R=!0}for(S(s),T=L;T<t.events.length;)t.events[T][1].end={...M},T++;Kn(t.events,A+1,0,t.events.slice(L)),t.events.length=T}}function S(y){let E=n.length;for(;E-- >y;){const N=n[E];t.containerState=N[1],N[0].exit.call(t,e)}n.length=y}function b(){a.write([null]),l=void 0,a=void 0,t.containerState._closeFlow=void 0}}function AA(e,t,n){return ut(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Ba(e){if(e===null||Tt(e)||Di(e))return 1;if(Ku(e))return 2}function Yu(e,t,n){const s=[];let a=-1;for(;++a<e.length;){const l=e[a].resolveAll;l&&!s.includes(l)&&(t=l(t,n),s.push(l))}return t}const Om={name:"attention",resolveAll:LA,tokenize:DA};function LA(e,t){let n=-1,s,a,l,u,c,d,f,m;for(;++n<e.length;)if(e[n][0]==="enter"&&e[n][1].type==="attentionSequence"&&e[n][1]._close){for(s=n;s--;)if(e[s][0]==="exit"&&e[s][1].type==="attentionSequence"&&e[s][1]._open&&t.sliceSerialize(e[s][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[s][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[s][1].end.offset-e[s][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;d=e[s][1].end.offset-e[s][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const p={...e[s][1].end},_={...e[n][1].start};xb(p,-d),xb(_,d),u={type:d>1?"strongSequence":"emphasisSequence",start:p,end:{...e[s][1].end}},c={type:d>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:_},l={type:d>1?"strongText":"emphasisText",start:{...e[s][1].end},end:{...e[n][1].start}},a={type:d>1?"strong":"emphasis",start:{...u.start},end:{...c.end}},e[s][1].end={...u.start},e[n][1].start={...c.end},f=[],e[s][1].end.offset-e[s][1].start.offset&&(f=or(f,[["enter",e[s][1],t],["exit",e[s][1],t]])),f=or(f,[["enter",a,t],["enter",u,t],["exit",u,t],["enter",l,t]]),f=or(f,Yu(t.parser.constructs.insideSpan.null,e.slice(s+1,n),t)),f=or(f,[["exit",l,t],["enter",c,t],["exit",c,t],["exit",a,t]]),e[n][1].end.offset-e[n][1].start.offset?(m=2,f=or(f,[["enter",e[n][1],t],["exit",e[n][1],t]])):m=0,Kn(e,s-1,n-s+3,f),n=s+f.length-m-2;break}}for(n=-1;++n<e.length;)e[n][1].type==="attentionSequence"&&(e[n][1].type="data");return e}function DA(e,t){const n=this.parser.constructs.attentionMarkers.null,s=this.previous,a=Ba(s);let l;return u;function u(d){return l=d,e.enter("attentionSequence"),c(d)}function c(d){if(d===l)return e.consume(d),c;const f=e.exit("attentionSequence"),m=Ba(d),p=!m||m===2&&a||n.includes(d),_=!a||a===2&&m||n.includes(s);return f._open=!!(l===42?p:p&&(a||!_)),f._close=!!(l===42?_:_&&(m||!p)),t(d)}}function xb(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const RA={name:"autolink",tokenize:OA};function OA(e,t,n){let s=0;return a;function a(x){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(x),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),l}function l(x){return En(x)?(e.consume(x),u):x===64?n(x):f(x)}function u(x){return x===43||x===45||x===46||Sn(x)?(s=1,c(x)):f(x)}function c(x){return x===58?(e.consume(x),s=0,d):(x===43||x===45||x===46||Sn(x))&&s++<32?(e.consume(x),c):(s=0,f(x))}function d(x){return x===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(x),e.exit("autolinkMarker"),e.exit("autolink"),t):x===null||x===32||x===60||gu(x)?n(x):(e.consume(x),d)}function f(x){return x===64?(e.consume(x),m):wA(x)?(e.consume(x),f):n(x)}function m(x){return Sn(x)?p(x):n(x)}function p(x){return x===46?(e.consume(x),s=0,m):x===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(x),e.exit("autolinkMarker"),e.exit("autolink"),t):_(x)}function _(x){if((x===45||Sn(x))&&s++<63){const w=x===45?_:p;return e.consume(x),w}return n(x)}}const Sl={partial:!0,tokenize:MA};function MA(e,t,n){return s;function s(l){return st(l)?ut(e,a,"linePrefix")(l):a(l)}function a(l){return l===null||He(l)?t(l):n(l)}}const m1={continuation:{tokenize:PA},exit:BA,name:"blockQuote",tokenize:IA};function IA(e,t,n){const s=this;return a;function a(u){if(u===62){const c=s.containerState;return c.open||(e.enter("blockQuote",{_container:!0}),c.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(u),e.exit("blockQuoteMarker"),l}return n(u)}function l(u){return st(u)?(e.enter("blockQuotePrefixWhitespace"),e.consume(u),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(u))}}function PA(e,t,n){const s=this;return a;function a(u){return st(u)?ut(e,l,"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(u):l(u)}function l(u){return e.attempt(m1,t,n)(u)}}function BA(e){e.exit("blockQuote")}const p1={name:"characterEscape",tokenize:zA};function zA(e,t,n){return s;function s(l){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(l),e.exit("escapeMarker"),a}function a(l){return kA(l)?(e.enter("characterEscapeValue"),e.consume(l),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):n(l)}}const g1={name:"characterReference",tokenize:$A};function $A(e,t,n){const s=this;let a=0,l,u;return c;function c(p){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(p),e.exit("characterReferenceMarker"),d}function d(p){return p===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(p),e.exit("characterReferenceMarkerNumeric"),f):(e.enter("characterReferenceValue"),l=31,u=Sn,m(p))}function f(p){return p===88||p===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(p),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),l=6,u=CA,m):(e.enter("characterReferenceValue"),l=7,u=Rm,m(p))}function m(p){if(p===59&&a){const _=e.exit("characterReferenceValue");return u===Sn&&!Lp(s.sliceSerialize(_))?n(p):(e.enter("characterReferenceMarker"),e.consume(p),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return u(p)&&a++<l?(e.consume(p),m):n(p)}}const _b={partial:!0,tokenize:UA},yb={concrete:!0,name:"codeFenced",tokenize:HA};function HA(e,t,n){const s=this,a={partial:!0,tokenize:N};let l=0,u=0,c;return d;function d(T){return f(T)}function f(T){const L=s.events[s.events.length-1];return l=L&&L[1].type==="linePrefix"?L[2].sliceSerialize(L[1],!0).length:0,c=T,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),m(T)}function m(T){return T===c?(u++,e.consume(T),m):u<3?n(T):(e.exit("codeFencedFenceSequence"),st(T)?ut(e,p,"whitespace")(T):p(T))}function p(T){return T===null||He(T)?(e.exit("codeFencedFence"),s.interrupt?t(T):e.check(_b,C,E)(T)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),_(T))}function _(T){return T===null||He(T)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),p(T)):st(T)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),ut(e,x,"whitespace")(T)):T===96&&T===c?n(T):(e.consume(T),_)}function x(T){return T===null||He(T)?p(T):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),w(T))}function w(T){return T===null||He(T)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),p(T)):T===96&&T===c?n(T):(e.consume(T),w)}function C(T){return e.attempt(a,E,v)(T)}function v(T){return e.enter("lineEnding"),e.consume(T),e.exit("lineEnding"),S}function S(T){return l>0&&st(T)?ut(e,b,"linePrefix",l+1)(T):b(T)}function b(T){return T===null||He(T)?e.check(_b,C,E)(T):(e.enter("codeFlowValue"),y(T))}function y(T){return T===null||He(T)?(e.exit("codeFlowValue"),b(T)):(e.consume(T),y)}function E(T){return e.exit("codeFenced"),t(T)}function N(T,L,A){let R=0;return M;function M(V){return T.enter("lineEnding"),T.consume(V),T.exit("lineEnding"),G}function G(V){return T.enter("codeFencedFence"),st(V)?ut(T,W,"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(V):W(V)}function W(V){return V===c?(T.enter("codeFencedFenceSequence"),O(V)):A(V)}function O(V){return V===c?(R++,T.consume(V),O):R>=u?(T.exit("codeFencedFenceSequence"),st(V)?ut(T,U,"whitespace")(V):U(V)):A(V)}function U(V){return V===null||He(V)?(T.exit("codeFencedFence"),L(V)):A(V)}}}function UA(e,t,n){const s=this;return a;function a(u){return u===null?n(u):(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),l)}function l(u){return s.parser.lazy[s.now().line]?n(u):t(u)}}const Ff={name:"codeIndented",tokenize:VA},FA={partial:!0,tokenize:GA};function VA(e,t,n){const s=this;return a;function a(f){return e.enter("codeIndented"),ut(e,l,"linePrefix",5)(f)}function l(f){const m=s.events[s.events.length-1];return m&&m[1].type==="linePrefix"&&m[2].sliceSerialize(m[1],!0).length>=4?u(f):n(f)}function u(f){return f===null?d(f):He(f)?e.attempt(FA,u,d)(f):(e.enter("codeFlowValue"),c(f))}function c(f){return f===null||He(f)?(e.exit("codeFlowValue"),u(f)):(e.consume(f),c)}function d(f){return e.exit("codeIndented"),t(f)}}function GA(e,t,n){const s=this;return a;function a(u){return s.parser.lazy[s.now().line]?n(u):He(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),a):ut(e,l,"linePrefix",5)(u)}function l(u){const c=s.events[s.events.length-1];return c&&c[1].type==="linePrefix"&&c[2].sliceSerialize(c[1],!0).length>=4?t(u):He(u)?a(u):n(u)}}const WA={name:"codeText",previous:KA,resolve:qA,tokenize:YA};function qA(e){let t=e.length-4,n=3,s,a;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(s=n;++s<t;)if(e[s][1].type==="codeTextData"){e[n][1].type="codeTextPadding",e[t][1].type="codeTextPadding",n+=2,t-=2;break}}for(s=n-1,t++;++s<=t;)a===void 0?s!==t&&e[s][1].type!=="lineEnding"&&(a=s):(s===t||e[s][1].type==="lineEnding")&&(e[a][1].type="codeTextData",s!==a+2&&(e[a][1].end=e[s-1][1].end,e.splice(a+2,s-a-2),t-=s-a-2,s=a+2),a=void 0);return e}function KA(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function YA(e,t,n){let s=0,a,l;return u;function u(p){return e.enter("codeText"),e.enter("codeTextSequence"),c(p)}function c(p){return p===96?(e.consume(p),s++,c):(e.exit("codeTextSequence"),d(p))}function d(p){return p===null?n(p):p===32?(e.enter("space"),e.consume(p),e.exit("space"),d):p===96?(l=e.enter("codeTextSequence"),a=0,m(p)):He(p)?(e.enter("lineEnding"),e.consume(p),e.exit("lineEnding"),d):(e.enter("codeTextData"),f(p))}function f(p){return p===null||p===32||p===96||He(p)?(e.exit("codeTextData"),d(p)):(e.consume(p),f)}function m(p){return p===96?(e.consume(p),a++,m):a===s?(e.exit("codeTextSequence"),e.exit("codeText"),t(p)):(l.type="codeTextData",f(p))}}class XA{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,n){const s=n??Number.POSITIVE_INFINITY;return s<this.left.length?this.left.slice(t,s):t>this.left.length?this.right.slice(this.right.length-s+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-s+this.left.length).reverse())}splice(t,n,s){const a=n||0;this.setCursor(Math.trunc(t));const l=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return s&&Wo(this.left,s),l.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Wo(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Wo(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const n=this.left.splice(t,Number.POSITIVE_INFINITY);Wo(this.right,n.reverse())}else{const n=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);Wo(this.left,n.reverse())}}}function Wo(e,t){let n=0;if(t.length<1e4)e.push(...t);else for(;n<t.length;)e.push(...t.slice(n,n+1e4)),n+=1e4}function x1(e){const t={};let n=-1,s,a,l,u,c,d,f;const m=new XA(e);for(;++n<m.length;){for(;n in t;)n=t[n];if(s=m.get(n),n&&s[1].type==="chunkFlow"&&m.get(n-1)[1].type==="listItemPrefix"&&(d=s[1]._tokenizer.events,l=0,l<d.length&&d[l][1].type==="lineEndingBlank"&&(l+=2),l<d.length&&d[l][1].type==="content"))for(;++l<d.length&&d[l][1].type!=="content";)d[l][1].type==="chunkText"&&(d[l][1]._isInFirstContentOfListItem=!0,l++);if(s[0]==="enter")s[1].contentType&&(Object.assign(t,QA(m,n)),n=t[n],f=!0);else if(s[1]._container){for(l=n,a=void 0;l--;)if(u=m.get(l),u[1].type==="lineEnding"||u[1].type==="lineEndingBlank")u[0]==="enter"&&(a&&(m.get(a)[1].type="lineEndingBlank"),u[1].type="lineEnding",a=l);else if(!(u[1].type==="linePrefix"||u[1].type==="listItemIndent"))break;a&&(s[1].end={...m.get(a)[1].start},c=m.slice(a,n),c.unshift(s),m.splice(a,n-a+1,c))}}return Kn(e,0,Number.POSITIVE_INFINITY,m.slice(0)),!f}function QA(e,t){const n=e.get(t)[1],s=e.get(t)[2];let a=t-1;const l=[];let u=n._tokenizer;u||(u=s.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(u._contentTypeTextTrailing=!0));const c=u.events,d=[],f={};let m,p,_=-1,x=n,w=0,C=0;const v=[C];for(;x;){for(;e.get(++a)[1]!==x;);l.push(a),x._tokenizer||(m=s.sliceStream(x),x.next||m.push(null),p&&u.defineSkip(x.start),x._isInFirstContentOfListItem&&(u._gfmTasklistFirstContentOfListItem=!0),u.write(m),x._isInFirstContentOfListItem&&(u._gfmTasklistFirstContentOfListItem=void 0)),p=x,x=x.next}for(x=n;++_<c.length;)c[_][0]==="exit"&&c[_-1][0]==="enter"&&c[_][1].type===c[_-1][1].type&&c[_][1].start.line!==c[_][1].end.line&&(C=_+1,v.push(C),x._tokenizer=void 0,x.previous=void 0,x=x.next);for(u.events=[],x?(x._tokenizer=void 0,x.previous=void 0):v.pop(),_=v.length;_--;){const S=c.slice(v[_],v[_+1]),b=l.pop();d.push([b,b+S.length-1]),e.splice(b,2,S)}for(d.reverse(),_=-1;++_<d.length;)f[w+d[_][0]]=w+d[_][1],w+=d[_][1]-d[_][0]-1;return f}const JA={resolve:eL,tokenize:tL},ZA={partial:!0,tokenize:nL};function eL(e){return x1(e),e}function tL(e,t){let n;return s;function s(c){return e.enter("content"),n=e.enter("chunkContent",{contentType:"content"}),a(c)}function a(c){return c===null?l(c):He(c)?e.check(ZA,u,l)(c):(e.consume(c),a)}function l(c){return e.exit("chunkContent"),e.exit("content"),t(c)}function u(c){return e.consume(c),e.exit("chunkContent"),n.next=e.enter("chunkContent",{contentType:"content",previous:n}),n=n.next,a}}function nL(e,t,n){const s=this;return a;function a(u){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),ut(e,l,"linePrefix")}function l(u){if(u===null||He(u))return n(u);const c=s.events[s.events.length-1];return!s.parser.constructs.disable.null.includes("codeIndented")&&c&&c[1].type==="linePrefix"&&c[2].sliceSerialize(c[1],!0).length>=4?t(u):e.interrupt(s.parser.constructs.flow,n,t)(u)}}function _1(e,t,n,s,a,l,u,c,d){const f=d||Number.POSITIVE_INFINITY;let m=0;return p;function p(S){return S===60?(e.enter(s),e.enter(a),e.enter(l),e.consume(S),e.exit(l),_):S===null||S===32||S===41||gu(S)?n(S):(e.enter(s),e.enter(u),e.enter(c),e.enter("chunkString",{contentType:"string"}),C(S))}function _(S){return S===62?(e.enter(l),e.consume(S),e.exit(l),e.exit(a),e.exit(s),t):(e.enter(c),e.enter("chunkString",{contentType:"string"}),x(S))}function x(S){return S===62?(e.exit("chunkString"),e.exit(c),_(S)):S===null||S===60||He(S)?n(S):(e.consume(S),S===92?w:x)}function w(S){return S===60||S===62||S===92?(e.consume(S),x):x(S)}function C(S){return!m&&(S===null||S===41||Tt(S))?(e.exit("chunkString"),e.exit(c),e.exit(u),e.exit(s),t(S)):m<f&&S===40?(e.consume(S),m++,C):S===41?(e.consume(S),m--,C):S===null||S===32||S===40||gu(S)?n(S):(e.consume(S),S===92?v:C)}function v(S){return S===40||S===41||S===92?(e.consume(S),C):C(S)}}function y1(e,t,n,s,a,l){const u=this;let c=0,d;return f;function f(x){return e.enter(s),e.enter(a),e.consume(x),e.exit(a),e.enter(l),m}function m(x){return c>999||x===null||x===91||x===93&&!d||x===94&&!c&&"_hiddenFootnoteSupport"in u.parser.constructs?n(x):x===93?(e.exit(l),e.enter(a),e.consume(x),e.exit(a),e.exit(s),t):He(x)?(e.enter("lineEnding"),e.consume(x),e.exit("lineEnding"),m):(e.enter("chunkString",{contentType:"string"}),p(x))}function p(x){return x===null||x===91||x===93||He(x)||c++>999?(e.exit("chunkString"),m(x)):(e.consume(x),d||(d=!st(x)),x===92?_:p)}function _(x){return x===91||x===92||x===93?(e.consume(x),c++,p):p(x)}}function v1(e,t,n,s,a,l){let u;return c;function c(_){return _===34||_===39||_===40?(e.enter(s),e.enter(a),e.consume(_),e.exit(a),u=_===40?41:_,d):n(_)}function d(_){return _===u?(e.enter(a),e.consume(_),e.exit(a),e.exit(s),t):(e.enter(l),f(_))}function f(_){return _===u?(e.exit(l),d(u)):_===null?n(_):He(_)?(e.enter("lineEnding"),e.consume(_),e.exit("lineEnding"),ut(e,f,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),m(_))}function m(_){return _===u||_===null||He(_)?(e.exit("chunkString"),f(_)):(e.consume(_),_===92?p:m)}function p(_){return _===u||_===92?(e.consume(_),m):m(_)}}function nl(e,t){let n;return s;function s(a){return He(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),n=!0,s):st(a)?ut(e,s,n?"linePrefix":"lineSuffix")(a):t(a)}}const rL={name:"definition",tokenize:iL},sL={partial:!0,tokenize:aL};function iL(e,t,n){const s=this;let a;return l;function l(x){return e.enter("definition"),u(x)}function u(x){return y1.call(s,e,c,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(x)}function c(x){return a=wr(s.sliceSerialize(s.events[s.events.length-1][1]).slice(1,-1)),x===58?(e.enter("definitionMarker"),e.consume(x),e.exit("definitionMarker"),d):n(x)}function d(x){return Tt(x)?nl(e,f)(x):f(x)}function f(x){return _1(e,m,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(x)}function m(x){return e.attempt(sL,p,p)(x)}function p(x){return st(x)?ut(e,_,"whitespace")(x):_(x)}function _(x){return x===null||He(x)?(e.exit("definition"),s.parser.defined.push(a),t(x)):n(x)}}function aL(e,t,n){return s;function s(c){return Tt(c)?nl(e,a)(c):n(c)}function a(c){return v1(e,l,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(c)}function l(c){return st(c)?ut(e,u,"whitespace")(c):u(c)}function u(c){return c===null||He(c)?t(c):n(c)}}const oL={name:"hardBreakEscape",tokenize:lL};function lL(e,t,n){return s;function s(l){return e.enter("hardBreakEscape"),e.consume(l),a}function a(l){return He(l)?(e.exit("hardBreakEscape"),t(l)):n(l)}}const cL={name:"headingAtx",resolve:uL,tokenize:dL};function uL(e,t){let n=e.length-2,s=3,a,l;return e[s][1].type==="whitespace"&&(s+=2),n-2>s&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(s===n-1||n-4>s&&e[n-2][1].type==="whitespace")&&(n-=s+1===n?2:4),n>s&&(a={type:"atxHeadingText",start:e[s][1].start,end:e[n][1].end},l={type:"chunkText",start:e[s][1].start,end:e[n][1].end,contentType:"text"},Kn(e,s,n-s+1,[["enter",a,t],["enter",l,t],["exit",l,t],["exit",a,t]])),e}function dL(e,t,n){let s=0;return a;function a(m){return e.enter("atxHeading"),l(m)}function l(m){return e.enter("atxHeadingSequence"),u(m)}function u(m){return m===35&&s++<6?(e.consume(m),u):m===null||Tt(m)?(e.exit("atxHeadingSequence"),c(m)):n(m)}function c(m){return m===35?(e.enter("atxHeadingSequence"),d(m)):m===null||He(m)?(e.exit("atxHeading"),t(m)):st(m)?ut(e,c,"whitespace")(m):(e.enter("atxHeadingText"),f(m))}function d(m){return m===35?(e.consume(m),d):(e.exit("atxHeadingSequence"),c(m))}function f(m){return m===null||m===35||Tt(m)?(e.exit("atxHeadingText"),c(m)):(e.consume(m),f)}}const hL=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],vb=["pre","script","style","textarea"],fL={concrete:!0,name:"htmlFlow",resolveTo:gL,tokenize:xL},mL={partial:!0,tokenize:yL},pL={partial:!0,tokenize:_L};function gL(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function xL(e,t,n){const s=this;let a,l,u,c,d;return f;function f(P){return m(P)}function m(P){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(P),p}function p(P){return P===33?(e.consume(P),_):P===47?(e.consume(P),l=!0,C):P===63?(e.consume(P),a=3,s.interrupt?t:I):En(P)?(e.consume(P),u=String.fromCharCode(P),v):n(P)}function _(P){return P===45?(e.consume(P),a=2,x):P===91?(e.consume(P),a=5,c=0,w):En(P)?(e.consume(P),a=4,s.interrupt?t:I):n(P)}function x(P){return P===45?(e.consume(P),s.interrupt?t:I):n(P)}function w(P){const ee="CDATA[";return P===ee.charCodeAt(c++)?(e.consume(P),c===ee.length?s.interrupt?t:W:w):n(P)}function C(P){return En(P)?(e.consume(P),u=String.fromCharCode(P),v):n(P)}function v(P){if(P===null||P===47||P===62||Tt(P)){const ee=P===47,J=u.toLowerCase();return!ee&&!l&&vb.includes(J)?(a=1,s.interrupt?t(P):W(P)):hL.includes(u.toLowerCase())?(a=6,ee?(e.consume(P),S):s.interrupt?t(P):W(P)):(a=7,s.interrupt&&!s.parser.lazy[s.now().line]?n(P):l?b(P):y(P))}return P===45||Sn(P)?(e.consume(P),u+=String.fromCharCode(P),v):n(P)}function S(P){return P===62?(e.consume(P),s.interrupt?t:W):n(P)}function b(P){return st(P)?(e.consume(P),b):M(P)}function y(P){return P===47?(e.consume(P),M):P===58||P===95||En(P)?(e.consume(P),E):st(P)?(e.consume(P),y):M(P)}function E(P){return P===45||P===46||P===58||P===95||Sn(P)?(e.consume(P),E):N(P)}function N(P){return P===61?(e.consume(P),T):st(P)?(e.consume(P),N):y(P)}function T(P){return P===null||P===60||P===61||P===62||P===96?n(P):P===34||P===39?(e.consume(P),d=P,L):st(P)?(e.consume(P),T):A(P)}function L(P){return P===d?(e.consume(P),d=null,R):P===null||He(P)?n(P):(e.consume(P),L)}function A(P){return P===null||P===34||P===39||P===47||P===60||P===61||P===62||P===96||Tt(P)?N(P):(e.consume(P),A)}function R(P){return P===47||P===62||st(P)?y(P):n(P)}function M(P){return P===62?(e.consume(P),G):n(P)}function G(P){return P===null||He(P)?W(P):st(P)?(e.consume(P),G):n(P)}function W(P){return P===45&&a===2?(e.consume(P),z):P===60&&a===1?(e.consume(P),X):P===62&&a===4?(e.consume(P),$):P===63&&a===3?(e.consume(P),I):P===93&&a===5?(e.consume(P),H):He(P)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(mL,F,O)(P)):P===null||He(P)?(e.exit("htmlFlowData"),O(P)):(e.consume(P),W)}function O(P){return e.check(pL,U,F)(P)}function U(P){return e.enter("lineEnding"),e.consume(P),e.exit("lineEnding"),V}function V(P){return P===null||He(P)?O(P):(e.enter("htmlFlowData"),W(P))}function z(P){return P===45?(e.consume(P),I):W(P)}function X(P){return P===47?(e.consume(P),u="",te):W(P)}function te(P){if(P===62){const ee=u.toLowerCase();return vb.includes(ee)?(e.consume(P),$):W(P)}return En(P)&&u.length<8?(e.consume(P),u+=String.fromCharCode(P),te):W(P)}function H(P){return P===93?(e.consume(P),I):W(P)}function I(P){return P===62?(e.consume(P),$):P===45&&a===2?(e.consume(P),I):W(P)}function $(P){return P===null||He(P)?(e.exit("htmlFlowData"),F(P)):(e.consume(P),$)}function F(P){return e.exit("htmlFlow"),t(P)}}function _L(e,t,n){const s=this;return a;function a(u){return He(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),l):n(u)}function l(u){return s.parser.lazy[s.now().line]?n(u):t(u)}}function yL(e,t,n){return s;function s(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(Sl,t,n)}}const vL={name:"htmlText",tokenize:bL};function bL(e,t,n){const s=this;let a,l,u;return c;function c(I){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(I),d}function d(I){return I===33?(e.consume(I),f):I===47?(e.consume(I),N):I===63?(e.consume(I),y):En(I)?(e.consume(I),A):n(I)}function f(I){return I===45?(e.consume(I),m):I===91?(e.consume(I),l=0,w):En(I)?(e.consume(I),b):n(I)}function m(I){return I===45?(e.consume(I),x):n(I)}function p(I){return I===null?n(I):I===45?(e.consume(I),_):He(I)?(u=p,X(I)):(e.consume(I),p)}function _(I){return I===45?(e.consume(I),x):p(I)}function x(I){return I===62?z(I):I===45?_(I):p(I)}function w(I){const $="CDATA[";return I===$.charCodeAt(l++)?(e.consume(I),l===$.length?C:w):n(I)}function C(I){return I===null?n(I):I===93?(e.consume(I),v):He(I)?(u=C,X(I)):(e.consume(I),C)}function v(I){return I===93?(e.consume(I),S):C(I)}function S(I){return I===62?z(I):I===93?(e.consume(I),S):C(I)}function b(I){return I===null||I===62?z(I):He(I)?(u=b,X(I)):(e.consume(I),b)}function y(I){return I===null?n(I):I===63?(e.consume(I),E):He(I)?(u=y,X(I)):(e.consume(I),y)}function E(I){return I===62?z(I):y(I)}function N(I){return En(I)?(e.consume(I),T):n(I)}function T(I){return I===45||Sn(I)?(e.consume(I),T):L(I)}function L(I){return He(I)?(u=L,X(I)):st(I)?(e.consume(I),L):z(I)}function A(I){return I===45||Sn(I)?(e.consume(I),A):I===47||I===62||Tt(I)?R(I):n(I)}function R(I){return I===47?(e.consume(I),z):I===58||I===95||En(I)?(e.consume(I),M):He(I)?(u=R,X(I)):st(I)?(e.consume(I),R):z(I)}function M(I){return I===45||I===46||I===58||I===95||Sn(I)?(e.consume(I),M):G(I)}function G(I){return I===61?(e.consume(I),W):He(I)?(u=G,X(I)):st(I)?(e.consume(I),G):R(I)}function W(I){return I===null||I===60||I===61||I===62||I===96?n(I):I===34||I===39?(e.consume(I),a=I,O):He(I)?(u=W,X(I)):st(I)?(e.consume(I),W):(e.consume(I),U)}function O(I){return I===a?(e.consume(I),a=void 0,V):I===null?n(I):He(I)?(u=O,X(I)):(e.consume(I),O)}function U(I){return I===null||I===34||I===39||I===60||I===61||I===96?n(I):I===47||I===62||Tt(I)?R(I):(e.consume(I),U)}function V(I){return I===47||I===62||Tt(I)?R(I):n(I)}function z(I){return I===62?(e.consume(I),e.exit("htmlTextData"),e.exit("htmlText"),t):n(I)}function X(I){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(I),e.exit("lineEnding"),te}function te(I){return st(I)?ut(e,H,"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(I):H(I)}function H(I){return e.enter("htmlTextData"),u(I)}}const Dp={name:"labelEnd",resolveAll:kL,resolveTo:EL,tokenize:jL},SL={tokenize:NL},wL={tokenize:TL},CL={tokenize:AL};function kL(e){let t=-1;const n=[];for(;++t<e.length;){const s=e[t][1];if(n.push(e[t]),s.type==="labelImage"||s.type==="labelLink"||s.type==="labelEnd"){const a=s.type==="labelImage"?4:2;s.type="data",t+=a}}return e.length!==n.length&&Kn(e,0,e.length,n),e}function EL(e,t){let n=e.length,s=0,a,l,u,c;for(;n--;)if(a=e[n][1],l){if(a.type==="link"||a.type==="labelLink"&&a._inactive)break;e[n][0]==="enter"&&a.type==="labelLink"&&(a._inactive=!0)}else if(u){if(e[n][0]==="enter"&&(a.type==="labelImage"||a.type==="labelLink")&&!a._balanced&&(l=n,a.type!=="labelLink")){s=2;break}}else a.type==="labelEnd"&&(u=n);const d={type:e[l][1].type==="labelLink"?"link":"image",start:{...e[l][1].start},end:{...e[e.length-1][1].end}},f={type:"label",start:{...e[l][1].start},end:{...e[u][1].end}},m={type:"labelText",start:{...e[l+s+2][1].end},end:{...e[u-2][1].start}};return c=[["enter",d,t],["enter",f,t]],c=or(c,e.slice(l+1,l+s+3)),c=or(c,[["enter",m,t]]),c=or(c,Yu(t.parser.constructs.insideSpan.null,e.slice(l+s+4,u-3),t)),c=or(c,[["exit",m,t],e[u-2],e[u-1],["exit",f,t]]),c=or(c,e.slice(u+1)),c=or(c,[["exit",d,t]]),Kn(e,l,e.length,c),e}function jL(e,t,n){const s=this;let a=s.events.length,l,u;for(;a--;)if((s.events[a][1].type==="labelImage"||s.events[a][1].type==="labelLink")&&!s.events[a][1]._balanced){l=s.events[a][1];break}return c;function c(_){return l?l._inactive?p(_):(u=s.parser.defined.includes(wr(s.sliceSerialize({start:l.end,end:s.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(_),e.exit("labelMarker"),e.exit("labelEnd"),d):n(_)}function d(_){return _===40?e.attempt(SL,m,u?m:p)(_):_===91?e.attempt(wL,m,u?f:p)(_):u?m(_):p(_)}function f(_){return e.attempt(CL,m,p)(_)}function m(_){return t(_)}function p(_){return l._balanced=!0,n(_)}}function NL(e,t,n){return s;function s(p){return e.enter("resource"),e.enter("resourceMarker"),e.consume(p),e.exit("resourceMarker"),a}function a(p){return Tt(p)?nl(e,l)(p):l(p)}function l(p){return p===41?m(p):_1(e,u,c,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(p)}function u(p){return Tt(p)?nl(e,d)(p):m(p)}function c(p){return n(p)}function d(p){return p===34||p===39||p===40?v1(e,f,n,"resourceTitle","resourceTitleMarker","resourceTitleString")(p):m(p)}function f(p){return Tt(p)?nl(e,m)(p):m(p)}function m(p){return p===41?(e.enter("resourceMarker"),e.consume(p),e.exit("resourceMarker"),e.exit("resource"),t):n(p)}}function TL(e,t,n){const s=this;return a;function a(c){return y1.call(s,e,l,u,"reference","referenceMarker","referenceString")(c)}function l(c){return s.parser.defined.includes(wr(s.sliceSerialize(s.events[s.events.length-1][1]).slice(1,-1)))?t(c):n(c)}function u(c){return n(c)}}function AL(e,t,n){return s;function s(l){return e.enter("reference"),e.enter("referenceMarker"),e.consume(l),e.exit("referenceMarker"),a}function a(l){return l===93?(e.enter("referenceMarker"),e.consume(l),e.exit("referenceMarker"),e.exit("reference"),t):n(l)}}const LL={name:"labelStartImage",resolveAll:Dp.resolveAll,tokenize:DL};function DL(e,t,n){const s=this;return a;function a(c){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(c),e.exit("labelImageMarker"),l}function l(c){return c===91?(e.enter("labelMarker"),e.consume(c),e.exit("labelMarker"),e.exit("labelImage"),u):n(c)}function u(c){return c===94&&"_hiddenFootnoteSupport"in s.parser.constructs?n(c):t(c)}}const RL={name:"labelStartLink",resolveAll:Dp.resolveAll,tokenize:OL};function OL(e,t,n){const s=this;return a;function a(u){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(u),e.exit("labelMarker"),e.exit("labelLink"),l}function l(u){return u===94&&"_hiddenFootnoteSupport"in s.parser.constructs?n(u):t(u)}}const Vf={name:"lineEnding",tokenize:ML};function ML(e,t){return n;function n(s){return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),ut(e,t,"linePrefix")}}const ou={name:"thematicBreak",tokenize:IL};function IL(e,t,n){let s=0,a;return l;function l(f){return e.enter("thematicBreak"),u(f)}function u(f){return a=f,c(f)}function c(f){return f===a?(e.enter("thematicBreakSequence"),d(f)):s>=3&&(f===null||He(f))?(e.exit("thematicBreak"),t(f)):n(f)}function d(f){return f===a?(e.consume(f),s++,d):(e.exit("thematicBreakSequence"),st(f)?ut(e,c,"whitespace")(f):c(f))}}const Mn={continuation:{tokenize:$L},exit:UL,name:"list",tokenize:zL},PL={partial:!0,tokenize:FL},BL={partial:!0,tokenize:HL};function zL(e,t,n){const s=this,a=s.events[s.events.length-1];let l=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,u=0;return c;function c(x){const w=s.containerState.type||(x===42||x===43||x===45?"listUnordered":"listOrdered");if(w==="listUnordered"?!s.containerState.marker||x===s.containerState.marker:Rm(x)){if(s.containerState.type||(s.containerState.type=w,e.enter(w,{_container:!0})),w==="listUnordered")return e.enter("listItemPrefix"),x===42||x===45?e.check(ou,n,f)(x):f(x);if(!s.interrupt||x===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),d(x)}return n(x)}function d(x){return Rm(x)&&++u<10?(e.consume(x),d):(!s.interrupt||u<2)&&(s.containerState.marker?x===s.containerState.marker:x===41||x===46)?(e.exit("listItemValue"),f(x)):n(x)}function f(x){return e.enter("listItemMarker"),e.consume(x),e.exit("listItemMarker"),s.containerState.marker=s.containerState.marker||x,e.check(Sl,s.interrupt?n:m,e.attempt(PL,_,p))}function m(x){return s.containerState.initialBlankLine=!0,l++,_(x)}function p(x){return st(x)?(e.enter("listItemPrefixWhitespace"),e.consume(x),e.exit("listItemPrefixWhitespace"),_):n(x)}function _(x){return s.containerState.size=l+s.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(x)}}function $L(e,t,n){const s=this;return s.containerState._closeFlow=void 0,e.check(Sl,a,l);function a(c){return s.containerState.furtherBlankLines=s.containerState.furtherBlankLines||s.containerState.initialBlankLine,ut(e,t,"listItemIndent",s.containerState.size+1)(c)}function l(c){return s.containerState.furtherBlankLines||!st(c)?(s.containerState.furtherBlankLines=void 0,s.containerState.initialBlankLine=void 0,u(c)):(s.containerState.furtherBlankLines=void 0,s.containerState.initialBlankLine=void 0,e.attempt(BL,t,u)(c))}function u(c){return s.containerState._closeFlow=!0,s.interrupt=void 0,ut(e,e.attempt(Mn,t,n),"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(c)}}function HL(e,t,n){const s=this;return ut(e,a,"listItemIndent",s.containerState.size+1);function a(l){const u=s.events[s.events.length-1];return u&&u[1].type==="listItemIndent"&&u[2].sliceSerialize(u[1],!0).length===s.containerState.size?t(l):n(l)}}function UL(e){e.exit(this.containerState.type)}function FL(e,t,n){const s=this;return ut(e,a,"listItemPrefixWhitespace",s.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(l){const u=s.events[s.events.length-1];return!st(l)&&u&&u[1].type==="listItemPrefixWhitespace"?t(l):n(l)}}const bb={name:"setextUnderline",resolveTo:VL,tokenize:GL};function VL(e,t){let n=e.length,s,a,l;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){s=n;break}e[n][1].type==="paragraph"&&(a=n)}else e[n][1].type==="content"&&e.splice(n,1),!l&&e[n][1].type==="definition"&&(l=n);const u={type:"setextHeading",start:{...e[s][1].start},end:{...e[e.length-1][1].end}};return e[a][1].type="setextHeadingText",l?(e.splice(a,0,["enter",u,t]),e.splice(l+1,0,["exit",e[s][1],t]),e[s][1].end={...e[l][1].end}):e[s][1]=u,e.push(["exit",u,t]),e}function GL(e,t,n){const s=this;let a;return l;function l(f){let m=s.events.length,p;for(;m--;)if(s.events[m][1].type!=="lineEnding"&&s.events[m][1].type!=="linePrefix"&&s.events[m][1].type!=="content"){p=s.events[m][1].type==="paragraph";break}return!s.parser.lazy[s.now().line]&&(s.interrupt||p)?(e.enter("setextHeadingLine"),a=f,u(f)):n(f)}function u(f){return e.enter("setextHeadingLineSequence"),c(f)}function c(f){return f===a?(e.consume(f),c):(e.exit("setextHeadingLineSequence"),st(f)?ut(e,d,"lineSuffix")(f):d(f))}function d(f){return f===null||He(f)?(e.exit("setextHeadingLine"),t(f)):n(f)}}const WL={tokenize:qL};function qL(e){const t=this,n=e.attempt(Sl,s,e.attempt(this.parser.constructs.flowInitial,a,ut(e,e.attempt(this.parser.constructs.flow,a,e.attempt(JA,a)),"linePrefix")));return n;function s(l){if(l===null){e.consume(l);return}return e.enter("lineEndingBlank"),e.consume(l),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function a(l){if(l===null){e.consume(l);return}return e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const KL={resolveAll:S1()},YL=b1("string"),XL=b1("text");function b1(e){return{resolveAll:S1(e==="text"?QL:void 0),tokenize:t};function t(n){const s=this,a=this.parser.constructs[e],l=n.attempt(a,u,c);return u;function u(m){return f(m)?l(m):c(m)}function c(m){if(m===null){n.consume(m);return}return n.enter("data"),n.consume(m),d}function d(m){return f(m)?(n.exit("data"),l(m)):(n.consume(m),d)}function f(m){if(m===null)return!0;const p=a[m];let _=-1;if(p)for(;++_<p.length;){const x=p[_];if(!x.previous||x.previous.call(s,s.previous))return!0}return!1}}}function S1(e){return t;function t(n,s){let a=-1,l;for(;++a<=n.length;)l===void 0?n[a]&&n[a][1].type==="data"&&(l=a,a++):(!n[a]||n[a][1].type!=="data")&&(a!==l+2&&(n[l][1].end=n[a-1][1].end,n.splice(l+2,a-l-2),a=l+2),l=void 0);return e?e(n,s):n}}function QL(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type==="lineEnding")&&e[n-1][1].type==="data"){const s=e[n-1][1],a=t.sliceStream(s);let l=a.length,u=-1,c=0,d;for(;l--;){const f=a[l];if(typeof f=="string"){for(u=f.length;f.charCodeAt(u-1)===32;)c++,u--;if(u)break;u=-1}else if(f===-2)d=!0,c++;else if(f!==-1){l++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(c=0),c){const f={type:n===e.length||d||c<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:l?u:s.start._bufferIndex+u,_index:s.start._index+l,line:s.end.line,column:s.end.column-c,offset:s.end.offset-c},end:{...s.end}};s.end={...f.start},s.start.offset===s.end.offset?Object.assign(s,f):(e.splice(n,0,["enter",f,t],["exit",f,t]),n+=2)}n++}return e}const JL={42:Mn,43:Mn,45:Mn,48:Mn,49:Mn,50:Mn,51:Mn,52:Mn,53:Mn,54:Mn,55:Mn,56:Mn,57:Mn,62:m1},ZL={91:rL},eD={[-2]:Ff,[-1]:Ff,32:Ff},tD={35:cL,42:ou,45:[bb,ou],60:fL,61:bb,95:ou,96:yb,126:yb},nD={38:g1,92:p1},rD={[-5]:Vf,[-4]:Vf,[-3]:Vf,33:LL,38:g1,42:Om,60:[RA,vL],91:RL,92:[oL,p1],93:Dp,95:Om,96:WA},sD={null:[Om,KL]},iD={null:[42,95]},aD={null:[]},oD=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:iD,contentInitial:ZL,disable:aD,document:JL,flow:tD,flowInitial:eD,insideSpan:sD,string:nD,text:rD},Symbol.toStringTag,{value:"Module"}));function lD(e,t,n){let s={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0};const a={},l=[];let u=[],c=[];const d={attempt:L(N),check:L(T),consume:b,enter:y,exit:E,interrupt:L(T,{interrupt:!0})},f={code:null,containerState:{},defineSkip:C,events:[],now:w,parser:e,previous:null,sliceSerialize:_,sliceStream:x,write:p};let m=t.tokenize.call(f,d);return t.resolveAll&&l.push(t),f;function p(G){return u=or(u,G),v(),u[u.length-1]!==null?[]:(A(t,0),f.events=Yu(l,f.events,f),f.events)}function _(G,W){return uD(x(G),W)}function x(G){return cD(u,G)}function w(){const{_bufferIndex:G,_index:W,line:O,column:U,offset:V}=s;return{_bufferIndex:G,_index:W,line:O,column:U,offset:V}}function C(G){a[G.line]=G.column,M()}function v(){let G;for(;s._index<u.length;){const W=u[s._index];if(typeof W=="string")for(G=s._index,s._bufferIndex<0&&(s._bufferIndex=0);s._index===G&&s._bufferIndex<W.length;)S(W.charCodeAt(s._bufferIndex));else S(W)}}function S(G){m=m(G)}function b(G){He(G)?(s.line++,s.column=1,s.offset+=G===-3?2:1,M()):G!==-1&&(s.column++,s.offset++),s._bufferIndex<0?s._index++:(s._bufferIndex++,s._bufferIndex===u[s._index].length&&(s._bufferIndex=-1,s._index++)),f.previous=G}function y(G,W){const O=W||{};return O.type=G,O.start=w(),f.events.push(["enter",O,f]),c.push(O),O}function E(G){const W=c.pop();return W.end=w(),f.events.push(["exit",W,f]),W}function N(G,W){A(G,W.from)}function T(G,W){W.restore()}function L(G,W){return O;function O(U,V,z){let X,te,H,I;return Array.isArray(U)?F(U):"tokenize"in U?F([U]):$(U);function $(re){return Y;function Y(q){const Z=q!==null&&re[q],ae=q!==null&&re.null,se=[...Array.isArray(Z)?Z:Z?[Z]:[],...Array.isArray(ae)?ae:ae?[ae]:[]];return F(se)(q)}}function F(re){return X=re,te=0,re.length===0?z:P(re[te])}function P(re){return Y;function Y(q){return I=R(),H=re,re.partial||(f.currentConstruct=re),re.name&&f.parser.constructs.disable.null.includes(re.name)?J():re.tokenize.call(W?Object.assign(Object.create(f),W):f,d,ee,J)(q)}}function ee(re){return G(H,I),V}function J(re){return I.restore(),++te<X.length?P(X[te]):z}}}function A(G,W){G.resolveAll&&!l.includes(G)&&l.push(G),G.resolve&&Kn(f.events,W,f.events.length-W,G.resolve(f.events.slice(W),f)),G.resolveTo&&(f.events=G.resolveTo(f.events,f))}function R(){const G=w(),W=f.previous,O=f.currentConstruct,U=f.events.length,V=Array.from(c);return{from:U,restore:z};function z(){s=G,f.previous=W,f.currentConstruct=O,f.events.length=U,c=V,M()}}function M(){s.line in a&&s.column<2&&(s.column=a[s.line],s.offset+=a[s.line]-1)}}function cD(e,t){const n=t.start._index,s=t.start._bufferIndex,a=t.end._index,l=t.end._bufferIndex;let u;if(n===a)u=[e[n].slice(s,l)];else{if(u=e.slice(n,a),s>-1){const c=u[0];typeof c=="string"?u[0]=c.slice(s):u.shift()}l>0&&u.push(e[a].slice(0,l))}return u}function uD(e,t){let n=-1;const s=[];let a;for(;++n<e.length;){const l=e[n];let u;if(typeof l=="string")u=l;else switch(l){case-5:{u="\r";break}case-4:{u=`
98
+ `;break}case-3:{u=`\r
99
+ `;break}case-2:{u=t?" ":" ";break}case-1:{if(!t&&a)continue;u=" ";break}default:u=String.fromCharCode(l)}a=l===-2,s.push(u)}return s.join("")}function dD(e){const s={constructs:h1([oD,...(e||{}).extensions||[]]),content:a(EA),defined:[],document:a(NA),flow:a(WL),lazy:{},string:a(YL),text:a(XL)};return s;function a(l){return u;function u(c){return lD(s,l,c)}}}function hD(e){for(;!x1(e););return e}const Sb=/[\0\t\n\r]/g;function fD(){let e=1,t="",n=!0,s;return a;function a(l,u,c){const d=[];let f,m,p,_,x;for(l=t+(typeof l=="string"?l.toString():new TextDecoder(u||void 0).decode(l)),p=0,t="",n&&(l.charCodeAt(0)===65279&&p++,n=void 0);p<l.length;){if(Sb.lastIndex=p,f=Sb.exec(l),_=f&&f.index!==void 0?f.index:l.length,x=l.charCodeAt(_),!f){t=l.slice(p);break}if(x===10&&p===_&&s)d.push(-3),s=void 0;else switch(s&&(d.push(-5),s=void 0),p<_&&(d.push(l.slice(p,_)),e+=_-p),x){case 0:{d.push(65533),e++;break}case 9:{for(m=Math.ceil(e/4)*4,d.push(-2);e++<m;)d.push(-1);break}case 10:{d.push(-4),e=1;break}default:s=!0,e=1}p=_+1}return c&&(s&&d.push(-5),t&&d.push(t),d.push(null)),d}}const mD=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function pD(e){return e.replace(mD,gD)}function gD(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){const a=n.charCodeAt(1),l=a===120||a===88;return f1(n.slice(l?2:1),l?16:10)}return Lp(n)||e}const w1={}.hasOwnProperty;function xD(e,t,n){return t&&typeof t=="object"&&(n=t,t=void 0),_D(n)(hD(dD(n).document().write(fD()(e,t,!0))))}function _D(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:l(pe),autolinkProtocol:R,autolinkEmail:R,atxHeading:l(De),blockQuote:l(ae),characterEscape:R,characterReference:R,codeFenced:l(se),codeFencedFenceInfo:u,codeFencedFenceMeta:u,codeIndented:l(se,u),codeText:l(oe,u),codeTextData:R,data:R,codeFlowValue:R,definition:l(je),definitionDestinationString:u,definitionLabelString:u,definitionTitleString:u,emphasis:l(Le),hardBreakEscape:l(Re),hardBreakTrailing:l(Re),htmlFlow:l(Te,u),htmlFlowData:R,htmlText:l(Te,u),htmlTextData:R,image:l(Ae),label:u,link:l(pe),listItem:l(Se),listItemValue:_,listOrdered:l(ce,p),listUnordered:l(ce),paragraph:l(Ze),reference:P,referenceString:u,resourceDestinationString:u,resourceTitleString:u,setextHeading:l(De),strong:l(_t),thematicBreak:l(tn)},exit:{atxHeading:d(),atxHeadingSequence:N,autolink:d(),autolinkEmail:Z,autolinkProtocol:q,blockQuote:d(),characterEscapeValue:M,characterReferenceMarkerHexadecimal:J,characterReferenceMarkerNumeric:J,characterReferenceValue:re,characterReference:Y,codeFenced:d(v),codeFencedFence:C,codeFencedFenceInfo:x,codeFencedFenceMeta:w,codeFlowValue:M,codeIndented:d(S),codeText:d(V),codeTextData:M,data:M,definition:d(),definitionDestinationString:E,definitionLabelString:b,definitionTitleString:y,emphasis:d(),hardBreakEscape:d(W),hardBreakTrailing:d(W),htmlFlow:d(O),htmlFlowData:M,htmlText:d(U),htmlTextData:M,image:d(X),label:H,labelText:te,lineEnding:G,link:d(z),listItem:d(),listOrdered:d(),listUnordered:d(),paragraph:d(),referenceString:ee,resourceDestinationString:I,resourceTitleString:$,resource:F,setextHeading:d(A),setextHeadingLineSequence:L,setextHeadingText:T,strong:d(),thematicBreak:d()}};C1(t,(e||{}).mdastExtensions||[]);const n={};return s;function s(ge){let Ce={type:"root",children:[]};const Ie={stack:[Ce],tokenStack:[],config:t,enter:c,exit:f,buffer:u,resume:m,data:n},Fe=[];let Ve=-1;for(;++Ve<ge.length;)if(ge[Ve][1].type==="listOrdered"||ge[Ve][1].type==="listUnordered")if(ge[Ve][0]==="enter")Fe.push(Ve);else{const St=Fe.pop();Ve=a(ge,St,Ve)}for(Ve=-1;++Ve<ge.length;){const St=t[ge[Ve][0]];w1.call(St,ge[Ve][1].type)&&St[ge[Ve][1].type].call(Object.assign({sliceSerialize:ge[Ve][2].sliceSerialize},Ie),ge[Ve][1])}if(Ie.tokenStack.length>0){const St=Ie.tokenStack[Ie.tokenStack.length-1];(St[1]||wb).call(Ie,void 0,St[0])}for(Ce.position={start:zs(ge.length>0?ge[0][1].start:{line:1,column:1,offset:0}),end:zs(ge.length>0?ge[ge.length-2][1].end:{line:1,column:1,offset:0})},Ve=-1;++Ve<t.transforms.length;)Ce=t.transforms[Ve](Ce)||Ce;return Ce}function a(ge,Ce,Ie){let Fe=Ce-1,Ve=-1,St=!1,Ye,wt,ct,nn;for(;++Fe<=Ie;){const ht=ge[Fe];switch(ht[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{ht[0]==="enter"?Ve++:Ve--,nn=void 0;break}case"lineEndingBlank":{ht[0]==="enter"&&(Ye&&!nn&&!Ve&&!ct&&(ct=Fe),nn=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:nn=void 0}if(!Ve&&ht[0]==="enter"&&ht[1].type==="listItemPrefix"||Ve===-1&&ht[0]==="exit"&&(ht[1].type==="listUnordered"||ht[1].type==="listOrdered")){if(Ye){let jn=Fe;for(wt=void 0;jn--;){const _n=ge[jn];if(_n[1].type==="lineEnding"||_n[1].type==="lineEndingBlank"){if(_n[0]==="exit")continue;wt&&(ge[wt][1].type="lineEndingBlank",St=!0),_n[1].type="lineEnding",wt=jn}else if(!(_n[1].type==="linePrefix"||_n[1].type==="blockQuotePrefix"||_n[1].type==="blockQuotePrefixWhitespace"||_n[1].type==="blockQuoteMarker"||_n[1].type==="listItemIndent"))break}ct&&(!wt||ct<wt)&&(Ye._spread=!0),Ye.end=Object.assign({},wt?ge[wt][1].start:ht[1].end),ge.splice(wt||Fe,0,["exit",Ye,ht[2]]),Fe++,Ie++}if(ht[1].type==="listItemPrefix"){const jn={type:"listItem",_spread:!1,start:Object.assign({},ht[1].start),end:void 0};Ye=jn,ge.splice(Fe,0,["enter",jn,ht[2]]),Fe++,Ie++,ct=void 0,nn=!0}}}return ge[Ce][1]._spread=St,Ie}function l(ge,Ce){return Ie;function Ie(Fe){c.call(this,ge(Fe),Fe),Ce&&Ce.call(this,Fe)}}function u(){this.stack.push({type:"fragment",children:[]})}function c(ge,Ce,Ie){this.stack[this.stack.length-1].children.push(ge),this.stack.push(ge),this.tokenStack.push([Ce,Ie||void 0]),ge.position={start:zs(Ce.start),end:void 0}}function d(ge){return Ce;function Ce(Ie){ge&&ge.call(this,Ie),f.call(this,Ie)}}function f(ge,Ce){const Ie=this.stack.pop(),Fe=this.tokenStack.pop();if(Fe)Fe[0].type!==ge.type&&(Ce?Ce.call(this,ge,Fe[0]):(Fe[1]||wb).call(this,ge,Fe[0]));else throw new Error("Cannot close `"+ge.type+"` ("+tl({start:ge.start,end:ge.end})+"): it’s not open");Ie.position.end=zs(ge.end)}function m(){return Ap(this.stack.pop())}function p(){this.data.expectingFirstListItemValue=!0}function _(ge){if(this.data.expectingFirstListItemValue){const Ce=this.stack[this.stack.length-2];Ce.start=Number.parseInt(this.sliceSerialize(ge),10),this.data.expectingFirstListItemValue=void 0}}function x(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.lang=ge}function w(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.meta=ge}function C(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function v(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.value=ge.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function S(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.value=ge.replace(/(\r?\n|\r)$/g,"")}function b(ge){const Ce=this.resume(),Ie=this.stack[this.stack.length-1];Ie.label=Ce,Ie.identifier=wr(this.sliceSerialize(ge)).toLowerCase()}function y(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.title=ge}function E(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.url=ge}function N(ge){const Ce=this.stack[this.stack.length-1];if(!Ce.depth){const Ie=this.sliceSerialize(ge).length;Ce.depth=Ie}}function T(){this.data.setextHeadingSlurpLineEnding=!0}function L(ge){const Ce=this.stack[this.stack.length-1];Ce.depth=this.sliceSerialize(ge).codePointAt(0)===61?1:2}function A(){this.data.setextHeadingSlurpLineEnding=void 0}function R(ge){const Ie=this.stack[this.stack.length-1].children;let Fe=Ie[Ie.length-1];(!Fe||Fe.type!=="text")&&(Fe=dt(),Fe.position={start:zs(ge.start),end:void 0},Ie.push(Fe)),this.stack.push(Fe)}function M(ge){const Ce=this.stack.pop();Ce.value+=this.sliceSerialize(ge),Ce.position.end=zs(ge.end)}function G(ge){const Ce=this.stack[this.stack.length-1];if(this.data.atHardBreak){const Ie=Ce.children[Ce.children.length-1];Ie.position.end=zs(ge.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(Ce.type)&&(R.call(this,ge),M.call(this,ge))}function W(){this.data.atHardBreak=!0}function O(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.value=ge}function U(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.value=ge}function V(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.value=ge}function z(){const ge=this.stack[this.stack.length-1];if(this.data.inReference){const Ce=this.data.referenceType||"shortcut";ge.type+="Reference",ge.referenceType=Ce,delete ge.url,delete ge.title}else delete ge.identifier,delete ge.label;this.data.referenceType=void 0}function X(){const ge=this.stack[this.stack.length-1];if(this.data.inReference){const Ce=this.data.referenceType||"shortcut";ge.type+="Reference",ge.referenceType=Ce,delete ge.url,delete ge.title}else delete ge.identifier,delete ge.label;this.data.referenceType=void 0}function te(ge){const Ce=this.sliceSerialize(ge),Ie=this.stack[this.stack.length-2];Ie.label=pD(Ce),Ie.identifier=wr(Ce).toLowerCase()}function H(){const ge=this.stack[this.stack.length-1],Ce=this.resume(),Ie=this.stack[this.stack.length-1];if(this.data.inReference=!0,Ie.type==="link"){const Fe=ge.children;Ie.children=Fe}else Ie.alt=Ce}function I(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.url=ge}function $(){const ge=this.resume(),Ce=this.stack[this.stack.length-1];Ce.title=ge}function F(){this.data.inReference=void 0}function P(){this.data.referenceType="collapsed"}function ee(ge){const Ce=this.resume(),Ie=this.stack[this.stack.length-1];Ie.label=Ce,Ie.identifier=wr(this.sliceSerialize(ge)).toLowerCase(),this.data.referenceType="full"}function J(ge){this.data.characterReferenceType=ge.type}function re(ge){const Ce=this.sliceSerialize(ge),Ie=this.data.characterReferenceType;let Fe;Ie?(Fe=f1(Ce,Ie==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):Fe=Lp(Ce);const Ve=this.stack[this.stack.length-1];Ve.value+=Fe}function Y(ge){const Ce=this.stack.pop();Ce.position.end=zs(ge.end)}function q(ge){M.call(this,ge);const Ce=this.stack[this.stack.length-1];Ce.url=this.sliceSerialize(ge)}function Z(ge){M.call(this,ge);const Ce=this.stack[this.stack.length-1];Ce.url="mailto:"+this.sliceSerialize(ge)}function ae(){return{type:"blockquote",children:[]}}function se(){return{type:"code",lang:null,meta:null,value:""}}function oe(){return{type:"inlineCode",value:""}}function je(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function Le(){return{type:"emphasis",children:[]}}function De(){return{type:"heading",depth:0,children:[]}}function Re(){return{type:"break"}}function Te(){return{type:"html",value:""}}function Ae(){return{type:"image",title:null,url:"",alt:null}}function pe(){return{type:"link",title:null,url:"",children:[]}}function ce(ge){return{type:"list",ordered:ge.type==="listOrdered",start:null,spread:ge._spread,children:[]}}function Se(ge){return{type:"listItem",spread:ge._spread,checked:null,children:[]}}function Ze(){return{type:"paragraph",children:[]}}function _t(){return{type:"strong",children:[]}}function dt(){return{type:"text",value:""}}function tn(){return{type:"thematicBreak"}}}function zs(e){return{line:e.line,column:e.column,offset:e.offset}}function C1(e,t){let n=-1;for(;++n<t.length;){const s=t[n];Array.isArray(s)?C1(e,s):yD(e,s)}}function yD(e,t){let n;for(n in t)if(w1.call(t,n))switch(n){case"canContainEols":{const s=t[n];s&&e[n].push(...s);break}case"transforms":{const s=t[n];s&&e[n].push(...s);break}case"enter":case"exit":{const s=t[n];s&&Object.assign(e[n],s);break}}}function wb(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+tl({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+tl({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+tl({start:t.start,end:t.end})+") is still open")}function vD(e){const t=this;t.parser=n;function n(s){return xD(s,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function bD(e,t){const n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function SD(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:`
100
+ `}]}function wD(e,t){const n=t.value?t.value+`
101
+ `:"",s={},a=t.lang?t.lang.split(/\s+/):[];a.length>0&&(s.className=["language-"+a[0]]);let l={type:"element",tagName:"code",properties:s,children:[{type:"text",value:n}]};return t.meta&&(l.data={meta:t.meta}),e.patch(t,l),l=e.applyData(t,l),l={type:"element",tagName:"pre",properties:{},children:[l]},e.patch(t,l),l}function CD(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function kD(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function ED(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",s=String(t.identifier).toUpperCase(),a=Va(s.toLowerCase()),l=e.footnoteOrder.indexOf(s);let u,c=e.footnoteCounts.get(s);c===void 0?(c=0,e.footnoteOrder.push(s),u=e.footnoteOrder.length):u=l+1,c+=1,e.footnoteCounts.set(s,c);const d={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+a,id:n+"fnref-"+a+(c>1?"-"+c:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(u)}]};e.patch(t,d);const f={type:"element",tagName:"sup",properties:{},children:[d]};return e.patch(t,f),e.applyData(t,f)}function jD(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function ND(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function k1(e,t){const n=t.referenceType;let s="]";if(n==="collapsed"?s+="[]":n==="full"&&(s+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+s}];const a=e.all(t),l=a[0];l&&l.type==="text"?l.value="["+l.value:a.unshift({type:"text",value:"["});const u=a[a.length-1];return u&&u.type==="text"?u.value+=s:a.push({type:"text",value:s}),a}function TD(e,t){const n=String(t.identifier).toUpperCase(),s=e.definitionById.get(n);if(!s)return k1(e,t);const a={src:Va(s.url||""),alt:t.alt};s.title!==null&&s.title!==void 0&&(a.title=s.title);const l={type:"element",tagName:"img",properties:a,children:[]};return e.patch(t,l),e.applyData(t,l)}function AD(e,t){const n={src:Va(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);const s={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,s),e.applyData(t,s)}function LD(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const s={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,s),e.applyData(t,s)}function DD(e,t){const n=String(t.identifier).toUpperCase(),s=e.definitionById.get(n);if(!s)return k1(e,t);const a={href:Va(s.url||"")};s.title!==null&&s.title!==void 0&&(a.title=s.title);const l={type:"element",tagName:"a",properties:a,children:e.all(t)};return e.patch(t,l),e.applyData(t,l)}function RD(e,t){const n={href:Va(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);const s={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,s),e.applyData(t,s)}function OD(e,t,n){const s=e.all(t),a=n?MD(n):E1(t),l={},u=[];if(typeof t.checked=="boolean"){const m=s[0];let p;m&&m.type==="element"&&m.tagName==="p"?p=m:(p={type:"element",tagName:"p",properties:{},children:[]},s.unshift(p)),p.children.length>0&&p.children.unshift({type:"text",value:" "}),p.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),l.className=["task-list-item"]}let c=-1;for(;++c<s.length;){const m=s[c];(a||c!==0||m.type!=="element"||m.tagName!=="p")&&u.push({type:"text",value:`
102
+ `}),m.type==="element"&&m.tagName==="p"&&!a?u.push(...m.children):u.push(m)}const d=s[s.length-1];d&&(a||d.type!=="element"||d.tagName!=="p")&&u.push({type:"text",value:`
103
+ `});const f={type:"element",tagName:"li",properties:l,children:u};return e.patch(t,f),e.applyData(t,f)}function MD(e){let t=!1;if(e.type==="list"){t=e.spread||!1;const n=e.children;let s=-1;for(;!t&&++s<n.length;)t=E1(n[s])}return t}function E1(e){const t=e.spread;return t??e.children.length>1}function ID(e,t){const n={},s=e.all(t);let a=-1;for(typeof t.start=="number"&&t.start!==1&&(n.start=t.start);++a<s.length;){const u=s[a];if(u.type==="element"&&u.tagName==="li"&&u.properties&&Array.isArray(u.properties.className)&&u.properties.className.includes("task-list-item")){n.className=["contains-task-list"];break}}const l={type:"element",tagName:t.ordered?"ol":"ul",properties:n,children:e.wrap(s,!0)};return e.patch(t,l),e.applyData(t,l)}function PD(e,t){const n={type:"element",tagName:"p",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function BD(e,t){const n={type:"root",children:e.wrap(e.all(t))};return e.patch(t,n),e.applyData(t,n)}function zD(e,t){const n={type:"element",tagName:"strong",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function $D(e,t){const n=e.all(t),s=n.shift(),a=[];if(s){const u={type:"element",tagName:"thead",properties:{},children:e.wrap([s],!0)};e.patch(t.children[0],u),a.push(u)}if(n.length>0){const u={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},c=Ep(t.children[1]),d=i1(t.children[t.children.length-1]);c&&d&&(u.position={start:c,end:d}),a.push(u)}const l={type:"element",tagName:"table",properties:{},children:e.wrap(a,!0)};return e.patch(t,l),e.applyData(t,l)}function HD(e,t,n){const s=n?n.children:void 0,l=(s?s.indexOf(t):1)===0?"th":"td",u=n&&n.type==="table"?n.align:void 0,c=u?u.length:t.children.length;let d=-1;const f=[];for(;++d<c;){const p=t.children[d],_={},x=u?u[d]:void 0;x&&(_.align=x);let w={type:"element",tagName:l,properties:_,children:[]};p&&(w.children=e.all(p),e.patch(p,w),w=e.applyData(p,w)),f.push(w)}const m={type:"element",tagName:"tr",properties:{},children:e.wrap(f,!0)};return e.patch(t,m),e.applyData(t,m)}function UD(e,t){const n={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}const Cb=9,kb=32;function FD(e){const t=String(e),n=/\r?\n|\r/g;let s=n.exec(t),a=0;const l=[];for(;s;)l.push(Eb(t.slice(a,s.index),a>0,!0),s[0]),a=s.index+s[0].length,s=n.exec(t);return l.push(Eb(t.slice(a),a>0,!1)),l.join("")}function Eb(e,t,n){let s=0,a=e.length;if(t){let l=e.codePointAt(s);for(;l===Cb||l===kb;)s++,l=e.codePointAt(s)}if(n){let l=e.codePointAt(a-1);for(;l===Cb||l===kb;)a--,l=e.codePointAt(a-1)}return a>s?e.slice(s,a):""}function VD(e,t){const n={type:"text",value:FD(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function GD(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const WD={blockquote:bD,break:SD,code:wD,delete:CD,emphasis:kD,footnoteReference:ED,heading:jD,html:ND,imageReference:TD,image:AD,inlineCode:LD,linkReference:DD,link:RD,listItem:OD,list:ID,paragraph:PD,root:BD,strong:zD,table:$D,tableCell:UD,tableRow:HD,text:VD,thematicBreak:GD,toml:qc,yaml:qc,definition:qc,footnoteDefinition:qc};function qc(){}const j1=-1,Xu=0,rl=1,xu=2,Rp=3,Op=4,Mp=5,Ip=6,N1=7,T1=8,jb=typeof self=="object"?self:globalThis,qD=(e,t)=>{const n=(a,l)=>(e.set(l,a),a),s=a=>{if(e.has(a))return e.get(a);const[l,u]=t[a];switch(l){case Xu:case j1:return n(u,a);case rl:{const c=n([],a);for(const d of u)c.push(s(d));return c}case xu:{const c=n({},a);for(const[d,f]of u)c[s(d)]=s(f);return c}case Rp:return n(new Date(u),a);case Op:{const{source:c,flags:d}=u;return n(new RegExp(c,d),a)}case Mp:{const c=n(new Map,a);for(const[d,f]of u)c.set(s(d),s(f));return c}case Ip:{const c=n(new Set,a);for(const d of u)c.add(s(d));return c}case N1:{const{name:c,message:d}=u;return n(new jb[c](d),a)}case T1:return n(BigInt(u),a);case"BigInt":return n(Object(BigInt(u)),a);case"ArrayBuffer":return n(new Uint8Array(u).buffer,u);case"DataView":{const{buffer:c}=new Uint8Array(u);return n(new DataView(c),u)}}return n(new jb[l](u),a)};return s},Nb=e=>qD(new Map,e)(0),ka="",{toString:KD}={},{keys:YD}=Object,qo=e=>{const t=typeof e;if(t!=="object"||!e)return[Xu,t];const n=KD.call(e).slice(8,-1);switch(n){case"Array":return[rl,ka];case"Object":return[xu,ka];case"Date":return[Rp,ka];case"RegExp":return[Op,ka];case"Map":return[Mp,ka];case"Set":return[Ip,ka];case"DataView":return[rl,n]}return n.includes("Array")?[rl,n]:n.includes("Error")?[N1,n]:[xu,n]},Kc=([e,t])=>e===Xu&&(t==="function"||t==="symbol"),XD=(e,t,n,s)=>{const a=(u,c)=>{const d=s.push(u)-1;return n.set(c,d),d},l=u=>{if(n.has(u))return n.get(u);let[c,d]=qo(u);switch(c){case Xu:{let m=u;switch(d){case"bigint":c=T1,m=u.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+d);m=null;break;case"undefined":return a([j1],u)}return a([c,m],u)}case rl:{if(d){let _=u;return d==="DataView"?_=new Uint8Array(u.buffer):d==="ArrayBuffer"&&(_=new Uint8Array(u)),a([d,[..._]],u)}const m=[],p=a([c,m],u);for(const _ of u)m.push(l(_));return p}case xu:{if(d)switch(d){case"BigInt":return a([d,u.toString()],u);case"Boolean":case"Number":case"String":return a([d,u.valueOf()],u)}if(t&&"toJSON"in u)return l(u.toJSON());const m=[],p=a([c,m],u);for(const _ of YD(u))(e||!Kc(qo(u[_])))&&m.push([l(_),l(u[_])]);return p}case Rp:return a([c,u.toISOString()],u);case Op:{const{source:m,flags:p}=u;return a([c,{source:m,flags:p}],u)}case Mp:{const m=[],p=a([c,m],u);for(const[_,x]of u)(e||!(Kc(qo(_))||Kc(qo(x))))&&m.push([l(_),l(x)]);return p}case Ip:{const m=[],p=a([c,m],u);for(const _ of u)(e||!Kc(qo(_)))&&m.push(l(_));return p}}const{message:f}=u;return a([c,{name:d,message:f}],u)};return l},Tb=(e,{json:t,lossy:n}={})=>{const s=[];return XD(!(t||n),!!t,new Map,s)(e),s},_u=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?Nb(Tb(e,t)):structuredClone(e):(e,t)=>Nb(Tb(e,t));function QD(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function JD(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function ZD(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||QD,s=e.options.footnoteBackLabel||JD,a=e.options.footnoteLabel||"Footnotes",l=e.options.footnoteLabelTagName||"h2",u=e.options.footnoteLabelProperties||{className:["sr-only"]},c=[];let d=-1;for(;++d<e.footnoteOrder.length;){const f=e.footnoteById.get(e.footnoteOrder[d]);if(!f)continue;const m=e.all(f),p=String(f.identifier).toUpperCase(),_=Va(p.toLowerCase());let x=0;const w=[],C=e.footnoteCounts.get(p);for(;C!==void 0&&++x<=C;){w.length>0&&w.push({type:"text",value:" "});let b=typeof n=="string"?n:n(d,x);typeof b=="string"&&(b={type:"text",value:b}),w.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+_+(x>1?"-"+x:""),dataFootnoteBackref:"",ariaLabel:typeof s=="string"?s:s(d,x),className:["data-footnote-backref"]},children:Array.isArray(b)?b:[b]})}const v=m[m.length-1];if(v&&v.type==="element"&&v.tagName==="p"){const b=v.children[v.children.length-1];b&&b.type==="text"?b.value+=" ":v.children.push({type:"text",value:" "}),v.children.push(...w)}else m.push(...w);const S={type:"element",tagName:"li",properties:{id:t+"fn-"+_},children:e.wrap(m,!0)};e.patch(f,S),c.push(S)}if(c.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:l,properties:{..._u(u),id:"footnote-label"},children:[{type:"text",value:a}]},{type:"text",value:`
104
+ `},{type:"element",tagName:"ol",properties:{},children:e.wrap(c,!0)},{type:"text",value:`
105
+ `}]}}const Qu=(function(e){if(e==null)return rR;if(typeof e=="function")return Ju(e);if(typeof e=="object")return Array.isArray(e)?eR(e):tR(e);if(typeof e=="string")return nR(e);throw new Error("Expected function, string, or object as test")});function eR(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=Qu(e[n]);return Ju(s);function s(...a){let l=-1;for(;++l<t.length;)if(t[l].apply(this,a))return!0;return!1}}function tR(e){const t=e;return Ju(n);function n(s){const a=s;let l;for(l in e)if(a[l]!==t[l])return!1;return!0}}function nR(e){return Ju(t);function t(n){return n&&n.type===e}}function Ju(e){return t;function t(n,s,a){return!!(sR(n)&&e.call(this,n,typeof s=="number"?s:void 0,a||void 0))}}function rR(){return!0}function sR(e){return e!==null&&typeof e=="object"&&"type"in e}const A1=[],iR=!0,Mm=!1,aR="skip";function L1(e,t,n,s){let a;typeof t=="function"&&typeof n!="function"?(s=n,n=t):a=t;const l=Qu(a),u=s?-1:1;c(e,void 0,[])();function c(d,f,m){const p=d&&typeof d=="object"?d:{};if(typeof p.type=="string"){const x=typeof p.tagName=="string"?p.tagName:typeof p.name=="string"?p.name:void 0;Object.defineProperty(_,"name",{value:"node ("+(d.type+(x?"<"+x+">":""))+")"})}return _;function _(){let x=A1,w,C,v;if((!t||l(d,f,m[m.length-1]||void 0))&&(x=oR(n(d,m)),x[0]===Mm))return x;if("children"in d&&d.children){const S=d;if(S.children&&x[0]!==aR)for(C=(s?S.children.length:-1)+u,v=m.concat(S);C>-1&&C<S.children.length;){const b=S.children[C];if(w=c(b,C,v)(),w[0]===Mm)return w;C=typeof w[1]=="number"?w[1]:C+u}}return x}}}function oR(e){return Array.isArray(e)?e:typeof e=="number"?[iR,e]:e==null?A1:[e]}function Pp(e,t,n,s){let a,l,u;typeof t=="function"&&typeof n!="function"?(l=void 0,u=t,a=n):(l=t,u=n,a=s),L1(e,l,c,a);function c(d,f){const m=f[f.length-1],p=m?m.children.indexOf(d):void 0;return u(d,p,m)}}const Im={}.hasOwnProperty,lR={};function cR(e,t){const n=t||lR,s=new Map,a=new Map,l=new Map,u={...WD,...n.handlers},c={all:f,applyData:dR,definitionById:s,footnoteById:a,footnoteCounts:l,footnoteOrder:[],handlers:u,one:d,options:n,patch:uR,wrap:fR};return Pp(e,function(m){if(m.type==="definition"||m.type==="footnoteDefinition"){const p=m.type==="definition"?s:a,_=String(m.identifier).toUpperCase();p.has(_)||p.set(_,m)}}),c;function d(m,p){const _=m.type,x=c.handlers[_];if(Im.call(c.handlers,_)&&x)return x(c,m,p);if(c.options.passThrough&&c.options.passThrough.includes(_)){if("children"in m){const{children:C,...v}=m,S=_u(v);return S.children=c.all(m),S}return _u(m)}return(c.options.unknownHandler||hR)(c,m,p)}function f(m){const p=[];if("children"in m){const _=m.children;let x=-1;for(;++x<_.length;){const w=c.one(_[x],m);if(w){if(x&&_[x-1].type==="break"&&(!Array.isArray(w)&&w.type==="text"&&(w.value=Ab(w.value)),!Array.isArray(w)&&w.type==="element")){const C=w.children[0];C&&C.type==="text"&&(C.value=Ab(C.value))}Array.isArray(w)?p.push(...w):p.push(w)}}}return p}}function uR(e,t){e.position&&(t.position=JT(e))}function dR(e,t){let n=t;if(e&&e.data){const s=e.data.hName,a=e.data.hChildren,l=e.data.hProperties;if(typeof s=="string")if(n.type==="element")n.tagName=s;else{const u="children"in n?n.children:[n];n={type:"element",tagName:s,properties:{},children:u}}n.type==="element"&&l&&Object.assign(n.properties,_u(l)),"children"in n&&n.children&&a!==null&&a!==void 0&&(n.children=a)}return n}function hR(e,t){const n=t.data||{},s="value"in t&&!(Im.call(n,"hProperties")||Im.call(n,"hChildren"))?{type:"text",value:t.value}:{type:"element",tagName:"div",properties:{},children:e.all(t)};return e.patch(t,s),e.applyData(t,s)}function fR(e,t){const n=[];let s=-1;for(t&&n.push({type:"text",value:`
106
+ `});++s<e.length;)s&&n.push({type:"text",value:`
107
+ `}),n.push(e[s]);return t&&e.length>0&&n.push({type:"text",value:`
108
+ `}),n}function Ab(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function Lb(e,t){const n=cR(e,t),s=n.one(e,void 0),a=ZD(n),l=Array.isArray(s)?{type:"root",children:s}:s||{type:"root",children:[]};return a&&l.children.push({type:"text",value:`
109
+ `},a),l}function mR(e,t){return e&&"run"in e?async function(n,s){const a=Lb(n,{file:s,...t});await e.run(a,s)}:function(n,s){return Lb(n,{file:s,...e||t})}}function Db(e){if(e)throw e}var Gf,Rb;function pR(){if(Rb)return Gf;Rb=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=Object.defineProperty,s=Object.getOwnPropertyDescriptor,a=function(f){return typeof Array.isArray=="function"?Array.isArray(f):t.call(f)==="[object Array]"},l=function(f){if(!f||t.call(f)!=="[object Object]")return!1;var m=e.call(f,"constructor"),p=f.constructor&&f.constructor.prototype&&e.call(f.constructor.prototype,"isPrototypeOf");if(f.constructor&&!m&&!p)return!1;var _;for(_ in f);return typeof _>"u"||e.call(f,_)},u=function(f,m){n&&m.name==="__proto__"?n(f,m.name,{enumerable:!0,configurable:!0,value:m.newValue,writable:!0}):f[m.name]=m.newValue},c=function(f,m){if(m==="__proto__")if(e.call(f,m)){if(s)return s(f,m).value}else return;return f[m]};return Gf=function d(){var f,m,p,_,x,w,C=arguments[0],v=1,S=arguments.length,b=!1;for(typeof C=="boolean"&&(b=C,C=arguments[1]||{},v=2),(C==null||typeof C!="object"&&typeof C!="function")&&(C={});v<S;++v)if(f=arguments[v],f!=null)for(m in f)p=c(C,m),_=c(f,m),C!==_&&(b&&_&&(l(_)||(x=a(_)))?(x?(x=!1,w=p&&a(p)?p:[]):w=p&&l(p)?p:{},u(C,{name:m,newValue:d(b,w,_)})):typeof _<"u"&&u(C,{name:m,newValue:_}));return C},Gf}var gR=pR();const Wf=Ru(gR);function Pm(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function xR(){const e=[],t={run:n,use:s};return t;function n(...a){let l=-1;const u=a.pop();if(typeof u!="function")throw new TypeError("Expected function as last argument, not "+u);c(null,...a);function c(d,...f){const m=e[++l];let p=-1;if(d){u(d);return}for(;++p<a.length;)(f[p]===null||f[p]===void 0)&&(f[p]=a[p]);a=f,m?_R(m,c)(...f):u(null,...f)}}function s(a){if(typeof a!="function")throw new TypeError("Expected `middelware` to be a function, not "+a);return e.push(a),t}}function _R(e,t){let n;return s;function s(...u){const c=e.length>u.length;let d;c&&u.push(a);try{d=e.apply(this,u)}catch(f){const m=f;if(c&&n)throw m;return a(m)}c||(d&&d.then&&typeof d.then=="function"?d.then(l,a):d instanceof Error?a(d):l(d))}function a(u,...c){n||(n=!0,t(u,...c))}function l(u){a(null,u)}}const Or={basename:yR,dirname:vR,extname:bR,join:SR,sep:"/"};function yR(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');wl(e);let n=0,s=-1,a=e.length,l;if(t===void 0||t.length===0||t.length>e.length){for(;a--;)if(e.codePointAt(a)===47){if(l){n=a+1;break}}else s<0&&(l=!0,s=a+1);return s<0?"":e.slice(n,s)}if(t===e)return"";let u=-1,c=t.length-1;for(;a--;)if(e.codePointAt(a)===47){if(l){n=a+1;break}}else u<0&&(l=!0,u=a+1),c>-1&&(e.codePointAt(a)===t.codePointAt(c--)?c<0&&(s=a):(c=-1,s=u));return n===s?s=u:s<0&&(s=e.length),e.slice(n,s)}function vR(e){if(wl(e),e.length===0)return".";let t=-1,n=e.length,s;for(;--n;)if(e.codePointAt(n)===47){if(s){t=n;break}}else s||(s=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function bR(e){wl(e);let t=e.length,n=-1,s=0,a=-1,l=0,u;for(;t--;){const c=e.codePointAt(t);if(c===47){if(u){s=t+1;break}continue}n<0&&(u=!0,n=t+1),c===46?a<0?a=t:l!==1&&(l=1):a>-1&&(l=-1)}return a<0||n<0||l===0||l===1&&a===n-1&&a===s+1?"":e.slice(a,n)}function SR(...e){let t=-1,n;for(;++t<e.length;)wl(e[t]),e[t]&&(n=n===void 0?e[t]:n+"/"+e[t]);return n===void 0?".":wR(n)}function wR(e){wl(e);const t=e.codePointAt(0)===47;let n=CR(e,!t);return n.length===0&&!t&&(n="."),n.length>0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function CR(e,t){let n="",s=0,a=-1,l=0,u=-1,c,d;for(;++u<=e.length;){if(u<e.length)c=e.codePointAt(u);else{if(c===47)break;c=47}if(c===47){if(!(a===u-1||l===1))if(a!==u-1&&l===2){if(n.length<2||s!==2||n.codePointAt(n.length-1)!==46||n.codePointAt(n.length-2)!==46){if(n.length>2){if(d=n.lastIndexOf("/"),d!==n.length-1){d<0?(n="",s=0):(n=n.slice(0,d),s=n.length-1-n.lastIndexOf("/")),a=u,l=0;continue}}else if(n.length>0){n="",s=0,a=u,l=0;continue}}t&&(n=n.length>0?n+"/..":"..",s=2)}else n.length>0?n+="/"+e.slice(a+1,u):n=e.slice(a+1,u),s=u-a-1;a=u,l=0}else c===46&&l>-1?l++:l=-1}return n}function wl(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const kR={cwd:ER};function ER(){return"/"}function Bm(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function jR(e){if(typeof e=="string")e=new URL(e);else if(!Bm(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return NR(e)}function NR(e){if(e.hostname!==""){const s=new TypeError('File URL host must be "localhost" or empty on darwin');throw s.code="ERR_INVALID_FILE_URL_HOST",s}const t=e.pathname;let n=-1;for(;++n<t.length;)if(t.codePointAt(n)===37&&t.codePointAt(n+1)===50){const s=t.codePointAt(n+2);if(s===70||s===102){const a=new TypeError("File URL path must not include encoded / characters");throw a.code="ERR_INVALID_FILE_URL_PATH",a}}return decodeURIComponent(t)}const qf=["history","path","basename","stem","extname","dirname"];class D1{constructor(t){let n;t?Bm(t)?n={path:t}:typeof t=="string"||TR(t)?n={value:t}:n=t:n={},this.cwd="cwd"in n?"":kR.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let s=-1;for(;++s<qf.length;){const l=qf[s];l in n&&n[l]!==void 0&&n[l]!==null&&(this[l]=l==="history"?[...n[l]]:n[l])}let a;for(a in n)qf.includes(a)||(this[a]=n[a])}get basename(){return typeof this.path=="string"?Or.basename(this.path):void 0}set basename(t){Yf(t,"basename"),Kf(t,"basename"),this.path=Or.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?Or.dirname(this.path):void 0}set dirname(t){Ob(this.basename,"dirname"),this.path=Or.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?Or.extname(this.path):void 0}set extname(t){if(Kf(t,"extname"),Ob(this.dirname,"extname"),t){if(t.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(t.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=Or.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){Bm(t)&&(t=jR(t)),Yf(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?Or.basename(this.path,this.extname):void 0}set stem(t){Yf(t,"stem"),Kf(t,"stem"),this.path=Or.join(this.dirname||"",t+(this.extname||""))}fail(t,n,s){const a=this.message(t,n,s);throw a.fatal=!0,a}info(t,n,s){const a=this.message(t,n,s);return a.fatal=void 0,a}message(t,n,s){const a=new wn(t,n,s);return this.path&&(a.name=this.path+":"+a.name,a.file=this.path),a.fatal=!1,this.messages.push(a),a}toString(t){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(t||void 0).decode(this.value)}}function Kf(e,t){if(e&&e.includes(Or.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+Or.sep+"`")}function Yf(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function Ob(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}function TR(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const AR=(function(e){const s=this.constructor.prototype,a=s[e],l=function(){return a.apply(l,arguments)};return Object.setPrototypeOf(l,s),l}),LR={}.hasOwnProperty;class Bp extends AR{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=xR()}copy(){const t=new Bp;let n=-1;for(;++n<this.attachers.length;){const s=this.attachers[n];t.use(...s)}return t.data(Wf(!0,{},this.namespace)),t}data(t,n){return typeof t=="string"?arguments.length===2?(Jf("data",this.frozen),this.namespace[t]=n,this):LR.call(this.namespace,t)&&this.namespace[t]||void 0:t?(Jf("data",this.frozen),this.namespace=t,this):this.namespace}freeze(){if(this.frozen)return this;const t=this;for(;++this.freezeIndex<this.attachers.length;){const[n,...s]=this.attachers[this.freezeIndex];if(s[0]===!1)continue;s[0]===!0&&(s[0]=void 0);const a=n.call(t,...s);typeof a=="function"&&this.transformers.use(a)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(t){this.freeze();const n=Yc(t),s=this.parser||this.Parser;return Xf("parse",s),s(String(n),n)}process(t,n){const s=this;return this.freeze(),Xf("process",this.parser||this.Parser),Qf("process",this.compiler||this.Compiler),n?a(void 0,n):new Promise(a);function a(l,u){const c=Yc(t),d=s.parse(c);s.run(d,c,function(m,p,_){if(m||!p||!_)return f(m);const x=p,w=s.stringify(x,_);OR(w)?_.value=w:_.result=w,f(m,_)});function f(m,p){m||!p?u(m):l?l(p):n(void 0,p)}}}processSync(t){let n=!1,s;return this.freeze(),Xf("processSync",this.parser||this.Parser),Qf("processSync",this.compiler||this.Compiler),this.process(t,a),Ib("processSync","process",n),s;function a(l,u){n=!0,Db(l),s=u}}run(t,n,s){Mb(t),this.freeze();const a=this.transformers;return!s&&typeof n=="function"&&(s=n,n=void 0),s?l(void 0,s):new Promise(l);function l(u,c){const d=Yc(n);a.run(t,d,f);function f(m,p,_){const x=p||t;m?c(m):u?u(x):s(void 0,x,_)}}}runSync(t,n){let s=!1,a;return this.run(t,n,l),Ib("runSync","run",s),a;function l(u,c){Db(u),a=c,s=!0}}stringify(t,n){this.freeze();const s=Yc(n),a=this.compiler||this.Compiler;return Qf("stringify",a),Mb(t),a(t,s)}use(t,...n){const s=this.attachers,a=this.namespace;if(Jf("use",this.frozen),t!=null)if(typeof t=="function")d(t,n);else if(typeof t=="object")Array.isArray(t)?c(t):u(t);else throw new TypeError("Expected usable value, not `"+t+"`");return this;function l(f){if(typeof f=="function")d(f,[]);else if(typeof f=="object")if(Array.isArray(f)){const[m,...p]=f;d(m,p)}else u(f);else throw new TypeError("Expected usable value, not `"+f+"`")}function u(f){if(!("plugins"in f)&&!("settings"in f))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");c(f.plugins),f.settings&&(a.settings=Wf(!0,a.settings,f.settings))}function c(f){let m=-1;if(f!=null)if(Array.isArray(f))for(;++m<f.length;){const p=f[m];l(p)}else throw new TypeError("Expected a list of plugins, not `"+f+"`")}function d(f,m){let p=-1,_=-1;for(;++p<s.length;)if(s[p][0]===f){_=p;break}if(_===-1)s.push([f,...m]);else if(m.length>0){let[x,...w]=m;const C=s[_][1];Pm(C)&&Pm(x)&&(x=Wf(!0,C,x)),s[_]=[f,x,...w]}}}}const DR=new Bp().freeze();function Xf(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function Qf(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function Jf(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function Mb(e){if(!Pm(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function Ib(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function Yc(e){return RR(e)?e:new D1(e)}function RR(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function OR(e){return typeof e=="string"||MR(e)}function MR(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const IR="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",Pb=[],Bb={allowDangerousHtml:!0},PR=/^(https?|ircs?|mailto|xmpp)$/i,BR=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"className",id:"remove-classname"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function zR(e){const t=$R(e),n=HR(e);return UR(t.runSync(t.parse(n),n),e)}function $R(e){const t=e.rehypePlugins||Pb,n=e.remarkPlugins||Pb,s=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...Bb}:Bb;return DR().use(vD).use(n).use(mR,s).use(t)}function HR(e){const t=e.children||"",n=new D1;return typeof t=="string"&&(n.value=t),n}function UR(e,t){const n=t.allowedElements,s=t.allowElement,a=t.components,l=t.disallowedElements,u=t.skipHtml,c=t.unwrapDisallowed,d=t.urlTransform||FR;for(const m of BR)Object.hasOwn(t,m.from)&&(""+m.from+(m.to?"use `"+m.to+"` instead":"remove it")+IR+m.id,void 0);return Pp(e,f),rA(e,{Fragment:o.Fragment,components:a,ignoreInvalidStyle:!0,jsx:o.jsx,jsxs:o.jsxs,passKeys:!0,passNode:!0});function f(m,p,_){if(m.type==="raw"&&_&&typeof p=="number")return u?_.children.splice(p,1):_.children[p]={type:"text",value:m.value},p;if(m.type==="element"){let x;for(x in Uf)if(Object.hasOwn(Uf,x)&&Object.hasOwn(m.properties,x)){const w=m.properties[x],C=Uf[x];(C===null||C.includes(m.tagName))&&(m.properties[x]=d(String(w||""),x,m))}}if(m.type==="element"){let x=n?!n.includes(m.tagName):l?l.includes(m.tagName):!1;if(!x&&s&&typeof p=="number"&&(x=!s(m,p,_)),x&&_&&typeof p=="number")return c&&m.children?_.children.splice(p,1,...m.children):_.children.splice(p,1),p}}}function FR(e){const t=e.indexOf(":"),n=e.indexOf("?"),s=e.indexOf("#"),a=e.indexOf("/");return t===-1||a!==-1&&t>a||n!==-1&&t>n||s!==-1&&t>s||PR.test(e.slice(0,t))?e:""}function zb(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let s=0,a=n.indexOf(t);for(;a!==-1;)s++,a=n.indexOf(t,a+t.length);return s}function VR(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function GR(e,t,n){const a=Qu((n||{}).ignore||[]),l=WR(t);let u=-1;for(;++u<l.length;)L1(e,"text",c);function c(f,m){let p=-1,_;for(;++p<m.length;){const x=m[p],w=_?_.children:void 0;if(a(x,w?w.indexOf(x):void 0,_))return;_=x}if(_)return d(f,m)}function d(f,m){const p=m[m.length-1],_=l[u][0],x=l[u][1];let w=0;const v=p.children.indexOf(f);let S=!1,b=[];_.lastIndex=0;let y=_.exec(f.value);for(;y;){const E=y.index,N={index:y.index,input:y.input,stack:[...m,f]};let T=x(...y,N);if(typeof T=="string"&&(T=T.length>0?{type:"text",value:T}:void 0),T===!1?_.lastIndex=E+1:(w!==E&&b.push({type:"text",value:f.value.slice(w,E)}),Array.isArray(T)?b.push(...T):T&&b.push(T),w=E+y[0].length,S=!0),!_.global)break;y=_.exec(f.value)}return S?(w<f.value.length&&b.push({type:"text",value:f.value.slice(w)}),p.children.splice(v,1,...b)):b=[f],v+b.length}}function WR(e){const t=[];if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const n=!e[0]||Array.isArray(e[0])?e:[e];let s=-1;for(;++s<n.length;){const a=n[s];t.push([qR(a[0]),KR(a[1])])}return t}function qR(e){return typeof e=="string"?new RegExp(VR(e),"g"):e}function KR(e){return typeof e=="function"?e:function(){return e}}const Zf="phrasing",em=["autolink","link","image","label"];function YR(){return{transforms:[n3],enter:{literalAutolink:QR,literalAutolinkEmail:tm,literalAutolinkHttp:tm,literalAutolinkWww:tm},exit:{literalAutolink:t3,literalAutolinkEmail:e3,literalAutolinkHttp:JR,literalAutolinkWww:ZR}}}function XR(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:Zf,notInConstruct:em},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:Zf,notInConstruct:em},{character:":",before:"[ps]",after:"\\/",inConstruct:Zf,notInConstruct:em}]}}function QR(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function tm(e){this.config.enter.autolinkProtocol.call(this,e)}function JR(e){this.config.exit.autolinkProtocol.call(this,e)}function ZR(e){this.config.exit.data.call(this,e);const t=this.stack[this.stack.length-1];t.type,t.url="http://"+this.sliceSerialize(e)}function e3(e){this.config.exit.autolinkEmail.call(this,e)}function t3(e){this.exit(e)}function n3(e){GR(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,r3],[new RegExp("(?<=^|\\s|\\p{P}|\\p{S})([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)","gu"),s3]],{ignore:["link","linkReference"]})}function r3(e,t,n,s,a){let l="";if(!R1(a)||(/^w/i.test(t)&&(n=t+n,t="",l="http://"),!i3(n)))return!1;const u=a3(n+s);if(!u[0])return!1;const c={type:"link",title:null,url:l+t+u[0],children:[{type:"text",value:t+u[0]}]};return u[1]?[c,{type:"text",value:u[1]}]:c}function s3(e,t,n,s){return!R1(s,!0)||/[-\d_]$/.test(n)?!1:{type:"link",title:null,url:"mailto:"+t+"@"+n,children:[{type:"text",value:t+"@"+n}]}}function i3(e){const t=e.split(".");return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function a3(e){const t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],s=n.indexOf(")");const a=zb(e,"(");let l=zb(e,")");for(;s!==-1&&a>l;)e+=n.slice(0,s+1),n=n.slice(s+1),s=n.indexOf(")"),l++;return[e,n]}function R1(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Di(n)||Ku(n))&&(!t||n!==47)}O1.peek=p3;function o3(){this.buffer()}function l3(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function c3(){this.buffer()}function u3(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function d3(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=wr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function h3(e){this.exit(e)}function f3(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=wr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function m3(e){this.exit(e)}function p3(){return"["}function O1(e,t,n,s){const a=n.createTracker(s);let l=a.move("[^");const u=n.enter("footnoteReference"),c=n.enter("reference");return l+=a.move(n.safe(n.associationId(e),{after:"]",before:l})),c(),u(),l+=a.move("]"),l}function g3(){return{enter:{gfmFootnoteCallString:o3,gfmFootnoteCall:l3,gfmFootnoteDefinitionLabelString:c3,gfmFootnoteDefinition:u3},exit:{gfmFootnoteCallString:d3,gfmFootnoteCall:h3,gfmFootnoteDefinitionLabelString:f3,gfmFootnoteDefinition:m3}}}function x3(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:O1},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(s,a,l,u){const c=l.createTracker(u);let d=c.move("[^");const f=l.enter("footnoteDefinition"),m=l.enter("label");return d+=c.move(l.safe(l.associationId(s),{before:d,after:"]"})),m(),d+=c.move("]:"),s.children&&s.children.length>0&&(c.shift(4),d+=c.move((t?`
110
+ `:" ")+l.indentLines(l.containerFlow(s,c.current()),t?M1:_3))),f(),d}}function _3(e,t,n){return t===0?e:M1(e,t,n)}function M1(e,t,n){return(n?"":" ")+e}const y3=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];I1.peek=C3;function v3(){return{canContainEols:["delete"],enter:{strikethrough:S3},exit:{strikethrough:w3}}}function b3(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:y3}],handlers:{delete:I1}}}function S3(e){this.enter({type:"delete",children:[]},e)}function w3(e){this.exit(e)}function I1(e,t,n,s){const a=n.createTracker(s),l=n.enter("strikethrough");let u=a.move("~~");return u+=n.containerPhrasing(e,{...a.current(),before:u,after:"~"}),u+=a.move("~~"),l(),u}function C3(){return"~"}function k3(e){return e.length}function E3(e,t){const n=t||{},s=(n.align||[]).concat(),a=n.stringLength||k3,l=[],u=[],c=[],d=[];let f=0,m=-1;for(;++m<e.length;){const C=[],v=[];let S=-1;for(e[m].length>f&&(f=e[m].length);++S<e[m].length;){const b=j3(e[m][S]);if(n.alignDelimiters!==!1){const y=a(b);v[S]=y,(d[S]===void 0||y>d[S])&&(d[S]=y)}C.push(b)}u[m]=C,c[m]=v}let p=-1;if(typeof s=="object"&&"length"in s)for(;++p<f;)l[p]=$b(s[p]);else{const C=$b(s);for(;++p<f;)l[p]=C}p=-1;const _=[],x=[];for(;++p<f;){const C=l[p];let v="",S="";C===99?(v=":",S=":"):C===108?v=":":C===114&&(S=":");let b=n.alignDelimiters===!1?1:Math.max(1,d[p]-v.length-S.length);const y=v+"-".repeat(b)+S;n.alignDelimiters!==!1&&(b=v.length+b+S.length,b>d[p]&&(d[p]=b),x[p]=b),_[p]=y}u.splice(1,0,_),c.splice(1,0,x),m=-1;const w=[];for(;++m<u.length;){const C=u[m],v=c[m];p=-1;const S=[];for(;++p<f;){const b=C[p]||"";let y="",E="";if(n.alignDelimiters!==!1){const N=d[p]-(v[p]||0),T=l[p];T===114?y=" ".repeat(N):T===99?N%2?(y=" ".repeat(N/2+.5),E=" ".repeat(N/2-.5)):(y=" ".repeat(N/2),E=y):E=" ".repeat(N)}n.delimiterStart!==!1&&!p&&S.push("|"),n.padding!==!1&&!(n.alignDelimiters===!1&&b==="")&&(n.delimiterStart!==!1||p)&&S.push(" "),n.alignDelimiters!==!1&&S.push(y),S.push(b),n.alignDelimiters!==!1&&S.push(E),n.padding!==!1&&S.push(" "),(n.delimiterEnd!==!1||p!==f-1)&&S.push("|")}w.push(n.delimiterEnd===!1?S.join("").replace(/ +$/,""):S.join(""))}return w.join(`
111
+ `)}function j3(e){return e==null?"":String(e)}function $b(e){const t=typeof e=="string"?e.codePointAt(0):0;return t===67||t===99?99:t===76||t===108?108:t===82||t===114?114:0}function N3(e,t,n,s){const a=n.enter("blockquote"),l=n.createTracker(s);l.move("> "),l.shift(2);const u=n.indentLines(n.containerFlow(e,l.current()),T3);return a(),u}function T3(e,t,n){return">"+(n?"":" ")+e}function A3(e,t){return Hb(e,t.inConstruct,!0)&&!Hb(e,t.notInConstruct,!1)}function Hb(e,t,n){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return n;let s=-1;for(;++s<t.length;)if(e.includes(t[s]))return!0;return!1}function Ub(e,t,n,s){let a=-1;for(;++a<n.unsafe.length;)if(n.unsafe[a].character===`
112
+ `&&A3(n.stack,n.unsafe[a]))return/[ \t]/.test(s.before)?"":" ";return`\\
113
+ `}function L3(e,t){const n=String(e);let s=n.indexOf(t),a=s,l=0,u=0;if(typeof t!="string")throw new TypeError("Expected substring");for(;s!==-1;)s===a?++l>u&&(u=l):l=1,a=s+t.length,s=n.indexOf(t,a);return u}function D3(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function R3(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function O3(e,t,n,s){const a=R3(n),l=e.value||"",u=a==="`"?"GraveAccent":"Tilde";if(D3(e,n)){const p=n.enter("codeIndented"),_=n.indentLines(l,M3);return p(),_}const c=n.createTracker(s),d=a.repeat(Math.max(L3(l,a)+1,3)),f=n.enter("codeFenced");let m=c.move(d);if(e.lang){const p=n.enter(`codeFencedLang${u}`);m+=c.move(n.safe(e.lang,{before:m,after:" ",encode:["`"],...c.current()})),p()}if(e.lang&&e.meta){const p=n.enter(`codeFencedMeta${u}`);m+=c.move(" "),m+=c.move(n.safe(e.meta,{before:m,after:`
114
+ `,encode:["`"],...c.current()})),p()}return m+=c.move(`
115
+ `),l&&(m+=c.move(l+`
116
+ `)),m+=c.move(d),f(),m}function M3(e,t,n){return(n?"":" ")+e}function zp(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function I3(e,t,n,s){const a=zp(n),l=a==='"'?"Quote":"Apostrophe",u=n.enter("definition");let c=n.enter("label");const d=n.createTracker(s);let f=d.move("[");return f+=d.move(n.safe(n.associationId(e),{before:f,after:"]",...d.current()})),f+=d.move("]: "),c(),!e.url||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),f+=d.move("<"),f+=d.move(n.safe(e.url,{before:f,after:">",...d.current()})),f+=d.move(">")):(c=n.enter("destinationRaw"),f+=d.move(n.safe(e.url,{before:f,after:e.title?" ":`
117
+ `,...d.current()}))),c(),e.title&&(c=n.enter(`title${l}`),f+=d.move(" "+a),f+=d.move(n.safe(e.title,{before:f,after:a,...d.current()})),f+=d.move(a),c()),u(),f}function P3(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function ll(e){return"&#x"+e.toString(16).toUpperCase()+";"}function yu(e,t,n){const s=Ba(e),a=Ba(t);return s===void 0?a===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:a===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:s===1?a===void 0?{inside:!1,outside:!1}:a===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:a===void 0?{inside:!1,outside:!1}:a===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}P1.peek=B3;function P1(e,t,n,s){const a=P3(n),l=n.enter("emphasis"),u=n.createTracker(s),c=u.move(a);let d=u.move(n.containerPhrasing(e,{after:a,before:c,...u.current()}));const f=d.charCodeAt(0),m=yu(s.before.charCodeAt(s.before.length-1),f,a);m.inside&&(d=ll(f)+d.slice(1));const p=d.charCodeAt(d.length-1),_=yu(s.after.charCodeAt(0),p,a);_.inside&&(d=d.slice(0,-1)+ll(p));const x=u.move(a);return l(),n.attentionEncodeSurroundingInfo={after:_.outside,before:m.outside},c+d+x}function B3(e,t,n){return n.options.emphasis||"*"}function z3(e,t){let n=!1;return Pp(e,function(s){if("value"in s&&/\r?\n|\r/.test(s.value)||s.type==="break")return n=!0,Mm}),!!((!e.depth||e.depth<3)&&Ap(e)&&(t.options.setext||n))}function $3(e,t,n,s){const a=Math.max(Math.min(6,e.depth||1),1),l=n.createTracker(s);if(z3(e,n)){const m=n.enter("headingSetext"),p=n.enter("phrasing"),_=n.containerPhrasing(e,{...l.current(),before:`
118
+ `,after:`
119
+ `});return p(),m(),_+`
120
+ `+(a===1?"=":"-").repeat(_.length-(Math.max(_.lastIndexOf("\r"),_.lastIndexOf(`
121
+ `))+1))}const u="#".repeat(a),c=n.enter("headingAtx"),d=n.enter("phrasing");l.move(u+" ");let f=n.containerPhrasing(e,{before:"# ",after:`
122
+ `,...l.current()});return/^[\t ]/.test(f)&&(f=ll(f.charCodeAt(0))+f.slice(1)),f=f?u+" "+f:u,n.options.closeAtx&&(f+=" "+u),d(),c(),f}B1.peek=H3;function B1(e){return e.value||""}function H3(){return"<"}z1.peek=U3;function z1(e,t,n,s){const a=zp(n),l=a==='"'?"Quote":"Apostrophe",u=n.enter("image");let c=n.enter("label");const d=n.createTracker(s);let f=d.move("![");return f+=d.move(n.safe(e.alt,{before:f,after:"]",...d.current()})),f+=d.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),f+=d.move("<"),f+=d.move(n.safe(e.url,{before:f,after:">",...d.current()})),f+=d.move(">")):(c=n.enter("destinationRaw"),f+=d.move(n.safe(e.url,{before:f,after:e.title?" ":")",...d.current()}))),c(),e.title&&(c=n.enter(`title${l}`),f+=d.move(" "+a),f+=d.move(n.safe(e.title,{before:f,after:a,...d.current()})),f+=d.move(a),c()),f+=d.move(")"),u(),f}function U3(){return"!"}$1.peek=F3;function $1(e,t,n,s){const a=e.referenceType,l=n.enter("imageReference");let u=n.enter("label");const c=n.createTracker(s);let d=c.move("![");const f=n.safe(e.alt,{before:d,after:"]",...c.current()});d+=c.move(f+"]["),u();const m=n.stack;n.stack=[],u=n.enter("reference");const p=n.safe(n.associationId(e),{before:d,after:"]",...c.current()});return u(),n.stack=m,l(),a==="full"||!f||f!==p?d+=c.move(p+"]"):a==="shortcut"?d=d.slice(0,-1):d+=c.move("]"),d}function F3(){return"!"}H1.peek=V3;function H1(e,t,n){let s=e.value||"",a="`",l=-1;for(;new RegExp("(^|[^`])"+a+"([^`]|$)").test(s);)a+="`";for(/[^ \r\n]/.test(s)&&(/^[ \r\n]/.test(s)&&/[ \r\n]$/.test(s)||/^`|`$/.test(s))&&(s=" "+s+" ");++l<n.unsafe.length;){const u=n.unsafe[l],c=n.compilePattern(u);let d;if(u.atBreak)for(;d=c.exec(s);){let f=d.index;s.charCodeAt(f)===10&&s.charCodeAt(f-1)===13&&f--,s=s.slice(0,f)+" "+s.slice(d.index+1)}}return a+s+a}function V3(){return"`"}function U1(e,t){const n=Ap(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(n===e.url||"mailto:"+n===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}F1.peek=G3;function F1(e,t,n,s){const a=zp(n),l=a==='"'?"Quote":"Apostrophe",u=n.createTracker(s);let c,d;if(U1(e,n)){const m=n.stack;n.stack=[],c=n.enter("autolink");let p=u.move("<");return p+=u.move(n.containerPhrasing(e,{before:p,after:">",...u.current()})),p+=u.move(">"),c(),n.stack=m,p}c=n.enter("link"),d=n.enter("label");let f=u.move("[");return f+=u.move(n.containerPhrasing(e,{before:f,after:"](",...u.current()})),f+=u.move("]("),d(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(d=n.enter("destinationLiteral"),f+=u.move("<"),f+=u.move(n.safe(e.url,{before:f,after:">",...u.current()})),f+=u.move(">")):(d=n.enter("destinationRaw"),f+=u.move(n.safe(e.url,{before:f,after:e.title?" ":")",...u.current()}))),d(),e.title&&(d=n.enter(`title${l}`),f+=u.move(" "+a),f+=u.move(n.safe(e.title,{before:f,after:a,...u.current()})),f+=u.move(a),d()),f+=u.move(")"),c(),f}function G3(e,t,n){return U1(e,n)?"<":"["}V1.peek=W3;function V1(e,t,n,s){const a=e.referenceType,l=n.enter("linkReference");let u=n.enter("label");const c=n.createTracker(s);let d=c.move("[");const f=n.containerPhrasing(e,{before:d,after:"]",...c.current()});d+=c.move(f+"]["),u();const m=n.stack;n.stack=[],u=n.enter("reference");const p=n.safe(n.associationId(e),{before:d,after:"]",...c.current()});return u(),n.stack=m,l(),a==="full"||!f||f!==p?d+=c.move(p+"]"):a==="shortcut"?d=d.slice(0,-1):d+=c.move("]"),d}function W3(){return"["}function $p(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function q3(e){const t=$p(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function K3(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function G1(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function Y3(e,t,n,s){const a=n.enter("list"),l=n.bulletCurrent;let u=e.ordered?K3(n):$p(n);const c=e.ordered?u==="."?")":".":q3(n);let d=t&&n.bulletLastUsed?u===n.bulletLastUsed:!1;if(!e.ordered){const m=e.children?e.children[0]:void 0;if((u==="*"||u==="-")&&m&&(!m.children||!m.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(d=!0),G1(n)===u&&m){let p=-1;for(;++p<e.children.length;){const _=e.children[p];if(_&&_.type==="listItem"&&_.children&&_.children[0]&&_.children[0].type==="thematicBreak"){d=!0;break}}}}d&&(u=c),n.bulletCurrent=u;const f=n.containerFlow(e,s);return n.bulletLastUsed=u,n.bulletCurrent=l,a(),f}function X3(e){const t=e.options.listItemIndent||"one";if(t!=="tab"&&t!=="one"&&t!=="mixed")throw new Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function Q3(e,t,n,s){const a=X3(n);let l=n.bulletCurrent||$p(n);t&&t.type==="list"&&t.ordered&&(l=(typeof t.start=="number"&&t.start>-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+l);let u=l.length+1;(a==="tab"||a==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(u=Math.ceil(u/4)*4);const c=n.createTracker(s);c.move(l+" ".repeat(u-l.length)),c.shift(u);const d=n.enter("listItem"),f=n.indentLines(n.containerFlow(e,c.current()),m);return d(),f;function m(p,_,x){return _?(x?"":" ".repeat(u))+p:(x?l:l+" ".repeat(u-l.length))+p}}function J3(e,t,n,s){const a=n.enter("paragraph"),l=n.enter("phrasing"),u=n.containerPhrasing(e,s);return l(),a(),u}const Z3=Qu(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function e5(e,t,n,s){return(e.children.some(function(u){return Z3(u)})?n.containerPhrasing:n.containerFlow).call(n,e,s)}function t5(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}W1.peek=n5;function W1(e,t,n,s){const a=t5(n),l=n.enter("strong"),u=n.createTracker(s),c=u.move(a+a);let d=u.move(n.containerPhrasing(e,{after:a,before:c,...u.current()}));const f=d.charCodeAt(0),m=yu(s.before.charCodeAt(s.before.length-1),f,a);m.inside&&(d=ll(f)+d.slice(1));const p=d.charCodeAt(d.length-1),_=yu(s.after.charCodeAt(0),p,a);_.inside&&(d=d.slice(0,-1)+ll(p));const x=u.move(a+a);return l(),n.attentionEncodeSurroundingInfo={after:_.outside,before:m.outside},c+d+x}function n5(e,t,n){return n.options.strong||"*"}function r5(e,t,n,s){return n.safe(e.value,s)}function s5(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function i5(e,t,n){const s=(G1(n)+(n.options.ruleSpaces?" ":"")).repeat(s5(n));return n.options.ruleSpaces?s.slice(0,-1):s}const q1={blockquote:N3,break:Ub,code:O3,definition:I3,emphasis:P1,hardBreak:Ub,heading:$3,html:B1,image:z1,imageReference:$1,inlineCode:H1,link:F1,linkReference:V1,list:Y3,listItem:Q3,paragraph:J3,root:e5,strong:W1,text:r5,thematicBreak:i5};function a5(){return{enter:{table:o5,tableData:Fb,tableHeader:Fb,tableRow:c5},exit:{codeText:u5,table:l5,tableData:nm,tableHeader:nm,tableRow:nm}}}function o5(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function l5(e){this.exit(e),this.data.inTable=void 0}function c5(e){this.enter({type:"tableRow",children:[]},e)}function nm(e){this.exit(e)}function Fb(e){this.enter({type:"tableCell",children:[]},e)}function u5(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,d5));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function d5(e,t){return t==="|"?t:e}function h5(e){const t=e||{},n=t.tableCellPadding,s=t.tablePipeAlign,a=t.stringLength,l=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
123
+ `,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:_,table:u,tableCell:d,tableRow:c}};function u(x,w,C,v){return f(m(x,C,v),x.align)}function c(x,w,C,v){const S=p(x,C,v),b=f([S]);return b.slice(0,b.indexOf(`
124
+ `))}function d(x,w,C,v){const S=C.enter("tableCell"),b=C.enter("phrasing"),y=C.containerPhrasing(x,{...v,before:l,after:l});return b(),S(),y}function f(x,w){return E3(x,{align:w,alignDelimiters:s,padding:n,stringLength:a})}function m(x,w,C){const v=x.children;let S=-1;const b=[],y=w.enter("table");for(;++S<v.length;)b[S]=p(v[S],w,C);return y(),b}function p(x,w,C){const v=x.children;let S=-1;const b=[],y=w.enter("tableRow");for(;++S<v.length;)b[S]=d(v[S],x,w,C);return y(),b}function _(x,w,C){let v=q1.inlineCode(x,w,C);return C.stack.includes("tableCell")&&(v=v.replace(/\|/g,"\\$&")),v}}function f5(){return{exit:{taskListCheckValueChecked:Vb,taskListCheckValueUnchecked:Vb,paragraph:p5}}}function m5(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:g5}}}function Vb(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function p5(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const n=this.stack[this.stack.length-1];n.type;const s=n.children[0];if(s&&s.type==="text"){const a=t.children;let l=-1,u;for(;++l<a.length;){const c=a[l];if(c.type==="paragraph"){u=c;break}}u===n&&(s.value=s.value.slice(1),s.value.length===0?n.children.shift():n.position&&s.position&&typeof s.position.start.offset=="number"&&(s.position.start.column++,s.position.start.offset++,n.position.start=Object.assign({},s.position.start)))}}this.exit(e)}function g5(e,t,n,s){const a=e.children[0],l=typeof e.checked=="boolean"&&a&&a.type==="paragraph",u="["+(e.checked?"x":" ")+"] ",c=n.createTracker(s);l&&c.move(u);let d=q1.listItem(e,t,n,{...s,...c.current()});return l&&(d=d.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,f)),d;function f(m){return m+u}}function x5(){return[YR(),g3(),v3(),a5(),f5()]}function _5(e){return{extensions:[XR(),x3(e),b3(),h5(e),m5()]}}const y5={tokenize:k5,partial:!0},K1={tokenize:E5,partial:!0},Y1={tokenize:j5,partial:!0},X1={tokenize:N5,partial:!0},v5={tokenize:T5,partial:!0},Q1={name:"wwwAutolink",tokenize:w5,previous:Z1},J1={name:"protocolAutolink",tokenize:C5,previous:ew},ms={name:"emailAutolink",tokenize:S5,previous:tw},zr={};function b5(){return{text:zr}}let _i=48;for(;_i<123;)zr[_i]=ms,_i++,_i===58?_i=65:_i===91&&(_i=97);zr[43]=ms;zr[45]=ms;zr[46]=ms;zr[95]=ms;zr[72]=[ms,J1];zr[104]=[ms,J1];zr[87]=[ms,Q1];zr[119]=[ms,Q1];function S5(e,t,n){const s=this;let a,l;return u;function u(p){return!zm(p)||!tw.call(s,s.previous)||Hp(s.events)?n(p):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),c(p))}function c(p){return zm(p)?(e.consume(p),c):p===64?(e.consume(p),d):n(p)}function d(p){return p===46?e.check(v5,m,f)(p):p===45||p===95||Sn(p)?(l=!0,e.consume(p),d):m(p)}function f(p){return e.consume(p),a=!0,d}function m(p){return l&&a&&En(s.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(p)):n(p)}}function w5(e,t,n){const s=this;return a;function a(u){return u!==87&&u!==119||!Z1.call(s,s.previous)||Hp(s.events)?n(u):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(y5,e.attempt(K1,e.attempt(Y1,l),n),n)(u))}function l(u){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(u)}}function C5(e,t,n){const s=this;let a="",l=!1;return u;function u(p){return(p===72||p===104)&&ew.call(s,s.previous)&&!Hp(s.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),a+=String.fromCodePoint(p),e.consume(p),c):n(p)}function c(p){if(En(p)&&a.length<5)return a+=String.fromCodePoint(p),e.consume(p),c;if(p===58){const _=a.toLowerCase();if(_==="http"||_==="https")return e.consume(p),d}return n(p)}function d(p){return p===47?(e.consume(p),l?f:(l=!0,d)):n(p)}function f(p){return p===null||gu(p)||Tt(p)||Di(p)||Ku(p)?n(p):e.attempt(K1,e.attempt(Y1,m),n)(p)}function m(p){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(p)}}function k5(e,t,n){let s=0;return a;function a(u){return(u===87||u===119)&&s<3?(s++,e.consume(u),a):u===46&&s===3?(e.consume(u),l):n(u)}function l(u){return u===null?n(u):t(u)}}function E5(e,t,n){let s,a,l;return u;function u(f){return f===46||f===95?e.check(X1,d,c)(f):f===null||Tt(f)||Di(f)||f!==45&&Ku(f)?d(f):(l=!0,e.consume(f),u)}function c(f){return f===95?s=!0:(a=s,s=void 0),e.consume(f),u}function d(f){return a||s||!l?n(f):t(f)}}function j5(e,t){let n=0,s=0;return a;function a(u){return u===40?(n++,e.consume(u),a):u===41&&s<n?l(u):u===33||u===34||u===38||u===39||u===41||u===42||u===44||u===46||u===58||u===59||u===60||u===63||u===93||u===95||u===126?e.check(X1,t,l)(u):u===null||Tt(u)||Di(u)?t(u):(e.consume(u),a)}function l(u){return u===41&&s++,e.consume(u),a}}function N5(e,t,n){return s;function s(c){return c===33||c===34||c===39||c===41||c===42||c===44||c===46||c===58||c===59||c===63||c===95||c===126?(e.consume(c),s):c===38?(e.consume(c),l):c===93?(e.consume(c),a):c===60||c===null||Tt(c)||Di(c)?t(c):n(c)}function a(c){return c===null||c===40||c===91||Tt(c)||Di(c)?t(c):s(c)}function l(c){return En(c)?u(c):n(c)}function u(c){return c===59?(e.consume(c),s):En(c)?(e.consume(c),u):n(c)}}function T5(e,t,n){return s;function s(l){return e.consume(l),a}function a(l){return Sn(l)?n(l):t(l)}}function Z1(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||Tt(e)}function ew(e){return!En(e)}function tw(e){return!(e===47||zm(e))}function zm(e){return e===43||e===45||e===46||e===95||Sn(e)}function Hp(e){let t=e.length,n=!1;for(;t--;){const s=e[t][1];if((s.type==="labelLink"||s.type==="labelImage")&&!s._balanced){n=!0;break}if(s._gfmAutolinkLiteralWalkedInto){n=!1;break}}return e.length>0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const A5={tokenize:B5,partial:!0};function L5(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:M5,continuation:{tokenize:I5},exit:P5}},text:{91:{name:"gfmFootnoteCall",tokenize:O5},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:D5,resolveTo:R5}}}}function D5(e,t,n){const s=this;let a=s.events.length;const l=s.parser.gfmFootnotes||(s.parser.gfmFootnotes=[]);let u;for(;a--;){const d=s.events[a][1];if(d.type==="labelImage"){u=d;break}if(d.type==="gfmFootnoteCall"||d.type==="labelLink"||d.type==="label"||d.type==="image"||d.type==="link")break}return c;function c(d){if(!u||!u._balanced)return n(d);const f=wr(s.sliceSerialize({start:u.end,end:s.now()}));return f.codePointAt(0)!==94||!l.includes(f.slice(1))?n(d):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),t(d))}}function R5(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const s={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},a={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};a.end.column++,a.end.offset++,a.end._bufferIndex++;const l={type:"gfmFootnoteCallString",start:Object.assign({},a.end),end:Object.assign({},e[e.length-1][1].start)},u={type:"chunkString",contentType:"string",start:Object.assign({},l.start),end:Object.assign({},l.end)},c=[e[n+1],e[n+2],["enter",s,t],e[n+3],e[n+4],["enter",a,t],["exit",a,t],["enter",l,t],["enter",u,t],["exit",u,t],["exit",l,t],e[e.length-2],e[e.length-1],["exit",s,t]];return e.splice(n,e.length-n+1,...c),e}function O5(e,t,n){const s=this,a=s.parser.gfmFootnotes||(s.parser.gfmFootnotes=[]);let l=0,u;return c;function c(p){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),d}function d(p){return p!==94?n(p):(e.enter("gfmFootnoteCallMarker"),e.consume(p),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",f)}function f(p){if(l>999||p===93&&!u||p===null||p===91||Tt(p))return n(p);if(p===93){e.exit("chunkString");const _=e.exit("gfmFootnoteCallString");return a.includes(wr(s.sliceSerialize(_)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(p),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(p)}return Tt(p)||(u=!0),l++,e.consume(p),p===92?m:f}function m(p){return p===91||p===92||p===93?(e.consume(p),l++,f):f(p)}}function M5(e,t,n){const s=this,a=s.parser.gfmFootnotes||(s.parser.gfmFootnotes=[]);let l,u=0,c;return d;function d(w){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(w),e.exit("gfmFootnoteDefinitionLabelMarker"),f}function f(w){return w===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(w),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",m):n(w)}function m(w){if(u>999||w===93&&!c||w===null||w===91||Tt(w))return n(w);if(w===93){e.exit("chunkString");const C=e.exit("gfmFootnoteDefinitionLabelString");return l=wr(s.sliceSerialize(C)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(w),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),_}return Tt(w)||(c=!0),u++,e.consume(w),w===92?p:m}function p(w){return w===91||w===92||w===93?(e.consume(w),u++,m):m(w)}function _(w){return w===58?(e.enter("definitionMarker"),e.consume(w),e.exit("definitionMarker"),a.includes(l)||a.push(l),ut(e,x,"gfmFootnoteDefinitionWhitespace")):n(w)}function x(w){return t(w)}}function I5(e,t,n){return e.check(Sl,t,e.attempt(A5,t,n))}function P5(e){e.exit("gfmFootnoteDefinition")}function B5(e,t,n){const s=this;return ut(e,a,"gfmFootnoteDefinitionIndent",5);function a(l){const u=s.events[s.events.length-1];return u&&u[1].type==="gfmFootnoteDefinitionIndent"&&u[2].sliceSerialize(u[1],!0).length===4?t(l):n(l)}}function z5(e){let n=(e||{}).singleTilde;const s={name:"strikethrough",tokenize:l,resolveAll:a};return n==null&&(n=!0),{text:{126:s},insideSpan:{null:[s]},attentionMarkers:{null:[126]}};function a(u,c){let d=-1;for(;++d<u.length;)if(u[d][0]==="enter"&&u[d][1].type==="strikethroughSequenceTemporary"&&u[d][1]._close){let f=d;for(;f--;)if(u[f][0]==="exit"&&u[f][1].type==="strikethroughSequenceTemporary"&&u[f][1]._open&&u[d][1].end.offset-u[d][1].start.offset===u[f][1].end.offset-u[f][1].start.offset){u[d][1].type="strikethroughSequence",u[f][1].type="strikethroughSequence";const m={type:"strikethrough",start:Object.assign({},u[f][1].start),end:Object.assign({},u[d][1].end)},p={type:"strikethroughText",start:Object.assign({},u[f][1].end),end:Object.assign({},u[d][1].start)},_=[["enter",m,c],["enter",u[f][1],c],["exit",u[f][1],c],["enter",p,c]],x=c.parser.constructs.insideSpan.null;x&&Kn(_,_.length,0,Yu(x,u.slice(f+1,d),c)),Kn(_,_.length,0,[["exit",p,c],["enter",u[d][1],c],["exit",u[d][1],c],["exit",m,c]]),Kn(u,f-1,d-f+3,_),d=f+_.length-2;break}}for(d=-1;++d<u.length;)u[d][1].type==="strikethroughSequenceTemporary"&&(u[d][1].type="data");return u}function l(u,c,d){const f=this.previous,m=this.events;let p=0;return _;function _(w){return f===126&&m[m.length-1][1].type!=="characterEscape"?d(w):(u.enter("strikethroughSequenceTemporary"),x(w))}function x(w){const C=Ba(f);if(w===126)return p>1?d(w):(u.consume(w),p++,x);if(p<2&&!n)return d(w);const v=u.exit("strikethroughSequenceTemporary"),S=Ba(w);return v._open=!S||S===2&&!!C,v._close=!C||C===2&&!!S,c(w)}}}class $5{constructor(){this.map=[]}add(t,n,s){H5(this,t,n,s)}consume(t){if(this.map.sort(function(l,u){return l[0]-u[0]}),this.map.length===0)return;let n=this.map.length;const s=[];for(;n>0;)n-=1,s.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];s.push(t.slice()),t.length=0;let a=s.pop();for(;a;){for(const l of a)t.push(l);a=s.pop()}this.map.length=0}}function H5(e,t,n,s){let a=0;if(!(n===0&&s.length===0)){for(;a<e.map.length;){if(e.map[a][0]===t){e.map[a][1]+=n,e.map[a][2].push(...s);return}a+=1}e.map.push([t,n,s])}}function U5(e,t){let n=!1;const s=[];for(;t<e.length;){const a=e[t];if(n){if(a[0]==="enter")a[1].type==="tableContent"&&s.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(a[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const l=s.length-1;s[l]=s[l]==="left"?"center":"right"}}else if(a[1].type==="tableDelimiterRow")break}else a[0]==="enter"&&a[1].type==="tableDelimiterRow"&&(n=!0);t+=1}return s}function F5(){return{flow:{null:{name:"table",tokenize:V5,resolveAll:G5}}}}function V5(e,t,n){const s=this;let a=0,l=0,u;return c;function c(M){let G=s.events.length-1;for(;G>-1;){const U=s.events[G][1].type;if(U==="lineEnding"||U==="linePrefix")G--;else break}const W=G>-1?s.events[G][1].type:null,O=W==="tableHead"||W==="tableRow"?T:d;return O===T&&s.parser.lazy[s.now().line]?n(M):O(M)}function d(M){return e.enter("tableHead"),e.enter("tableRow"),f(M)}function f(M){return M===124||(u=!0,l+=1),m(M)}function m(M){return M===null?n(M):He(M)?l>1?(l=0,s.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(M),e.exit("lineEnding"),x):n(M):st(M)?ut(e,m,"whitespace")(M):(l+=1,u&&(u=!1,a+=1),M===124?(e.enter("tableCellDivider"),e.consume(M),e.exit("tableCellDivider"),u=!0,m):(e.enter("data"),p(M)))}function p(M){return M===null||M===124||Tt(M)?(e.exit("data"),m(M)):(e.consume(M),M===92?_:p)}function _(M){return M===92||M===124?(e.consume(M),p):p(M)}function x(M){return s.interrupt=!1,s.parser.lazy[s.now().line]?n(M):(e.enter("tableDelimiterRow"),u=!1,st(M)?ut(e,w,"linePrefix",s.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(M):w(M))}function w(M){return M===45||M===58?v(M):M===124?(u=!0,e.enter("tableCellDivider"),e.consume(M),e.exit("tableCellDivider"),C):N(M)}function C(M){return st(M)?ut(e,v,"whitespace")(M):v(M)}function v(M){return M===58?(l+=1,u=!0,e.enter("tableDelimiterMarker"),e.consume(M),e.exit("tableDelimiterMarker"),S):M===45?(l+=1,S(M)):M===null||He(M)?E(M):N(M)}function S(M){return M===45?(e.enter("tableDelimiterFiller"),b(M)):N(M)}function b(M){return M===45?(e.consume(M),b):M===58?(u=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(M),e.exit("tableDelimiterMarker"),y):(e.exit("tableDelimiterFiller"),y(M))}function y(M){return st(M)?ut(e,E,"whitespace")(M):E(M)}function E(M){return M===124?w(M):M===null||He(M)?!u||a!==l?N(M):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(M)):N(M)}function N(M){return n(M)}function T(M){return e.enter("tableRow"),L(M)}function L(M){return M===124?(e.enter("tableCellDivider"),e.consume(M),e.exit("tableCellDivider"),L):M===null||He(M)?(e.exit("tableRow"),t(M)):st(M)?ut(e,L,"whitespace")(M):(e.enter("data"),A(M))}function A(M){return M===null||M===124||Tt(M)?(e.exit("data"),L(M)):(e.consume(M),M===92?R:A)}function R(M){return M===92||M===124?(e.consume(M),A):A(M)}}function G5(e,t){let n=-1,s=!0,a=0,l=[0,0,0,0],u=[0,0,0,0],c=!1,d=0,f,m,p;const _=new $5;for(;++n<e.length;){const x=e[n],w=x[1];x[0]==="enter"?w.type==="tableHead"?(c=!1,d!==0&&(Gb(_,t,d,f,m),m=void 0,d=0),f={type:"table",start:Object.assign({},w.start),end:Object.assign({},w.end)},_.add(n,0,[["enter",f,t]])):w.type==="tableRow"||w.type==="tableDelimiterRow"?(s=!0,p=void 0,l=[0,0,0,0],u=[0,n+1,0,0],c&&(c=!1,m={type:"tableBody",start:Object.assign({},w.start),end:Object.assign({},w.end)},_.add(n,0,[["enter",m,t]])),a=w.type==="tableDelimiterRow"?2:m?3:1):a&&(w.type==="data"||w.type==="tableDelimiterMarker"||w.type==="tableDelimiterFiller")?(s=!1,u[2]===0&&(l[1]!==0&&(u[0]=u[1],p=Xc(_,t,l,a,void 0,p),l=[0,0,0,0]),u[2]=n)):w.type==="tableCellDivider"&&(s?s=!1:(l[1]!==0&&(u[0]=u[1],p=Xc(_,t,l,a,void 0,p)),l=u,u=[l[1],n,0,0])):w.type==="tableHead"?(c=!0,d=n):w.type==="tableRow"||w.type==="tableDelimiterRow"?(d=n,l[1]!==0?(u[0]=u[1],p=Xc(_,t,l,a,n,p)):u[1]!==0&&(p=Xc(_,t,u,a,n,p)),a=0):a&&(w.type==="data"||w.type==="tableDelimiterMarker"||w.type==="tableDelimiterFiller")&&(u[3]=n)}for(d!==0&&Gb(_,t,d,f,m),_.consume(t.events),n=-1;++n<t.events.length;){const x=t.events[n];x[0]==="enter"&&x[1].type==="table"&&(x[1]._align=U5(t.events,n))}return e}function Xc(e,t,n,s,a,l){const u=s===1?"tableHeader":s===2?"tableDelimiter":"tableData",c="tableContent";n[0]!==0&&(l.end=Object.assign({},Da(t.events,n[0])),e.add(n[0],0,[["exit",l,t]]));const d=Da(t.events,n[1]);if(l={type:u,start:Object.assign({},d),end:Object.assign({},d)},e.add(n[1],0,[["enter",l,t]]),n[2]!==0){const f=Da(t.events,n[2]),m=Da(t.events,n[3]),p={type:c,start:Object.assign({},f),end:Object.assign({},m)};if(e.add(n[2],0,[["enter",p,t]]),s!==2){const _=t.events[n[2]],x=t.events[n[3]];if(_[1].end=Object.assign({},x[1].end),_[1].type="chunkText",_[1].contentType="text",n[3]>n[2]+1){const w=n[2]+1,C=n[3]-n[2]-1;e.add(w,C,[])}}e.add(n[3]+1,0,[["exit",p,t]])}return a!==void 0&&(l.end=Object.assign({},Da(t.events,a)),e.add(a,0,[["exit",l,t]]),l=void 0),l}function Gb(e,t,n,s,a){const l=[],u=Da(t.events,n);a&&(a.end=Object.assign({},u),l.push(["exit",a,t])),s.end=Object.assign({},u),l.push(["exit",s,t]),e.add(n+1,0,l)}function Da(e,t){const n=e[t],s=n[0]==="enter"?"start":"end";return n[1][s]}const W5={name:"tasklistCheck",tokenize:K5};function q5(){return{text:{91:W5}}}function K5(e,t,n){const s=this;return a;function a(d){return s.previous!==null||!s._gfmTasklistFirstContentOfListItem?n(d):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(d),e.exit("taskListCheckMarker"),l)}function l(d){return Tt(d)?(e.enter("taskListCheckValueUnchecked"),e.consume(d),e.exit("taskListCheckValueUnchecked"),u):d===88||d===120?(e.enter("taskListCheckValueChecked"),e.consume(d),e.exit("taskListCheckValueChecked"),u):n(d)}function u(d){return d===93?(e.enter("taskListCheckMarker"),e.consume(d),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),c):n(d)}function c(d){return He(d)?t(d):st(d)?e.check({tokenize:Y5},t,n)(d):n(d)}}function Y5(e,t,n){return ut(e,s,"whitespace");function s(a){return a===null?n(a):t(a)}}function X5(e){return h1([b5(),L5(),z5(e),F5(),q5()])}const Q5={};function J5(e){const t=this,n=e||Q5,s=t.data(),a=s.micromarkExtensions||(s.micromarkExtensions=[]),l=s.fromMarkdownExtensions||(s.fromMarkdownExtensions=[]),u=s.toMarkdownExtensions||(s.toMarkdownExtensions=[]);a.push(X5(n)),l.push(x5()),u.push(_5(n))}var $m=Object.defineProperty,Z5=Object.getOwnPropertyDescriptor,eO=Object.getOwnPropertyNames,tO=Object.prototype.hasOwnProperty,Up=(e,t)=>{let n={};for(var s in e)$m(n,s,{get:e[s],enumerable:!0});return $m(n,Symbol.toStringTag,{value:"Module"}),n},nO=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(var a=eO(t),l=0,u=a.length,c;l<u;l++)c=a[l],!tO.call(e,c)&&c!==n&&$m(e,c,{get:(d=>t[d]).bind(null,c),enumerable:!(s=Z5(t,c))||s.enumerable});return e},nw=(e,t,n)=>(nO(e,t,"default"),n);const Zu=[{id:"abap",name:"ABAP",import:(()=>Q(()=>import("./abap-BdImnpbu.js"),[]))},{id:"actionscript-3",name:"ActionScript",import:(()=>Q(()=>import("./actionscript-3-CoDkCxhg.js"),[]))},{id:"ada",name:"Ada",import:(()=>Q(()=>import("./ada-bCR0ucgS.js"),[]))},{id:"angular-html",name:"Angular HTML",import:(()=>Q(()=>import("./angular-html-DA-rfuFy.js").then(e=>e.f),__vite__mapDeps([0,1,2,3])))},{id:"angular-ts",name:"Angular TypeScript",import:(()=>Q(()=>import("./angular-ts-BrjP3tb8.js"),__vite__mapDeps([4,0,1,2,3,5])))},{id:"apache",name:"Apache Conf",import:(()=>Q(()=>import("./apache-Pmp26Uib.js"),[]))},{id:"apex",name:"Apex",import:(()=>Q(()=>import("./apex-Dqspr-GT.js"),[]))},{id:"apl",name:"APL",import:(()=>Q(()=>import("./apl-CORt7UWP.js"),__vite__mapDeps([6,1,2,3,7,8,9])))},{id:"applescript",name:"AppleScript",import:(()=>Q(()=>import("./applescript-Co6uUVPk.js"),[]))},{id:"ara",name:"Ara",import:(()=>Q(()=>import("./ara-BRHolxvo.js"),[]))},{id:"asciidoc",name:"AsciiDoc",aliases:["adoc"],import:(()=>Q(()=>import("./asciidoc-Ve4PFQV2.js"),[]))},{id:"asm",name:"Assembly",import:(()=>Q(()=>import("./asm-D_Q5rh1f.js"),[]))},{id:"astro",name:"Astro",import:(()=>Q(()=>import("./astro-HNnZUWAn.js"),__vite__mapDeps([10,9,2,11,3,12,13])))},{id:"awk",name:"AWK",import:(()=>Q(()=>import("./awk-DMzUqQB5.js"),[]))},{id:"ballerina",name:"Ballerina",import:(()=>Q(()=>import("./ballerina-BFfxhgS-.js"),[]))},{id:"bat",name:"Batch File",aliases:["batch"],import:(()=>Q(()=>import("./bat-BkioyH1T.js"),[]))},{id:"beancount",name:"Beancount",import:(()=>Q(()=>import("./beancount-k_qm7-4y.js"),[]))},{id:"berry",name:"Berry",aliases:["be"],import:(()=>Q(()=>import("./berry-uYugtg8r.js"),[]))},{id:"bibtex",name:"BibTeX",import:(()=>Q(()=>import("./bibtex-CHM0blh-.js"),[]))},{id:"bicep",name:"Bicep",import:(()=>Q(()=>import("./bicep-Bmn6On1c.js"),[]))},{id:"bird2",name:"BIRD2 Configuration",aliases:["bird"],import:(()=>Q(()=>import("./bird2-BIv1doCn.js"),[]))},{id:"blade",name:"Blade",import:(()=>Q(()=>import("./blade-2xfisSek.js"),__vite__mapDeps([14,15,1,2,3,7,8,16,9])))},{id:"bsl",name:"1C (Enterprise)",aliases:["1c"],import:(()=>Q(()=>import("./bsl-BO_Y6i37.js"),__vite__mapDeps([17,18])))},{id:"c",name:"C",import:(()=>Q(()=>import("./c-BIGW1oBm.js"),[]))},{id:"c3",name:"C3",import:(()=>Q(()=>import("./c3-MRO5bC_T.js"),[]))},{id:"cadence",name:"Cadence",aliases:["cdc"],import:(()=>Q(()=>import("./cadence-Bv_4Rxtq.js"),[]))},{id:"cairo",name:"Cairo",import:(()=>Q(()=>import("./cairo-KRGpt6FW.js"),__vite__mapDeps([19,20])))},{id:"clarity",name:"Clarity",import:(()=>Q(()=>import("./clarity-D53aC0YG.js"),[]))},{id:"clojure",name:"Clojure",aliases:["clj"],import:(()=>Q(()=>import("./clojure-P80f7IUj.js"),[]))},{id:"cmake",name:"CMake",import:(()=>Q(()=>import("./cmake-D1j8_8rp.js"),[]))},{id:"cobol",name:"COBOL",import:(()=>Q(()=>import("./cobol-nBiQ_Alo.js"),__vite__mapDeps([21,1,2,3,8])))},{id:"codeowners",name:"CODEOWNERS",import:(()=>Q(()=>import("./codeowners-Bp6g37R7.js"),[]))},{id:"codeql",name:"CodeQL",aliases:["ql"],import:(()=>Q(()=>import("./codeql-DsOJ9woJ.js"),[]))},{id:"coffee",name:"CoffeeScript",aliases:["coffeescript"],import:(()=>Q(()=>import("./coffee-Ch7k5sss.js"),__vite__mapDeps([22,2])))},{id:"common-lisp",name:"Common Lisp",aliases:["lisp"],import:(()=>Q(()=>import("./common-lisp-Cg-RD9OK.js"),[]))},{id:"coq",name:"Coq",import:(()=>Q(()=>import("./coq-DkFqJrB1.js"),[]))},{id:"cpp",name:"C++",aliases:["c++"],import:(()=>Q(()=>import("./cpp-UfJy6YNI.js"),__vite__mapDeps([23,24,25,26,16])))},{id:"crystal",name:"Crystal",import:(()=>Q(()=>import("./crystal-DGywbUpC.js"),__vite__mapDeps([27,1,2,3,16,26,28])))},{id:"csharp",name:"C#",aliases:["c#","cs"],import:(()=>Q(()=>import("./csharp-DSvCPggb.js"),[]))},{id:"css",name:"CSS",import:(()=>Q(()=>import("./css-CLj8gQPS.js"),[]))},{id:"csv",name:"CSV",import:(()=>Q(()=>import("./csv-fuZLfV_i.js"),[]))},{id:"cue",name:"CUE",import:(()=>Q(()=>import("./cue-D82EKSYY.js"),[]))},{id:"cypher",name:"Cypher",aliases:["cql"],import:(()=>Q(()=>import("./cypher-COkxafJQ.js"),[]))},{id:"d",name:"D",import:(()=>Q(()=>import("./d-85-TOEBH.js"),[]))},{id:"dart",name:"Dart",import:(()=>Q(()=>import("./dart-bE4Kk8sk.js"),[]))},{id:"dax",name:"DAX",import:(()=>Q(()=>import("./dax-CEL-wOlO.js"),[]))},{id:"desktop",name:"Desktop",import:(()=>Q(()=>import("./desktop-BmXAJ9_W.js"),[]))},{id:"diff",name:"Diff",import:(()=>Q(()=>import("./diff-D97Zzqfu.js"),[]))},{id:"docker",name:"Dockerfile",aliases:["dockerfile"],import:(()=>Q(()=>import("./docker-BcOcwvcX.js"),[]))},{id:"dotenv",name:"dotEnv",import:(()=>Q(()=>import("./dotenv-Da5cRb03.js"),[]))},{id:"dream-maker",name:"Dream Maker",import:(()=>Q(()=>import("./dream-maker-BtqSS_iP.js"),[]))},{id:"edge",name:"Edge",import:(()=>Q(()=>import("./edge-FbVlp4U3.js"),__vite__mapDeps([29,11,1,2,3,15])))},{id:"elixir",name:"Elixir",import:(()=>Q(()=>import("./elixir-CkH2-t6x.js"),__vite__mapDeps([30,1,2,3])))},{id:"elm",name:"Elm",import:(()=>Q(()=>import("./elm-DbKCFpqz.js"),__vite__mapDeps([31,25,26])))},{id:"emacs-lisp",name:"Emacs Lisp",aliases:["elisp"],import:(()=>Q(()=>import("./emacs-lisp-CXvaQtF9.js"),[]))},{id:"erb",name:"ERB",import:(()=>Q(()=>import("./erb-Dm6A9KJ5.js"),__vite__mapDeps([32,1,2,3,33,34,7,8,16,35,11,36,13,23,24,25,26,28,37,38])))},{id:"erlang",name:"Erlang",aliases:["erl"],import:(()=>Q(()=>import("./erlang-DsQrWhSR.js"),__vite__mapDeps([39,40])))},{id:"fennel",name:"Fennel",import:(()=>Q(()=>import("./fennel-BYunw83y.js"),[]))},{id:"fish",name:"Fish",import:(()=>Q(()=>import("./fish-BvzEVeQv.js"),[]))},{id:"fluent",name:"Fluent",aliases:["ftl"],import:(()=>Q(()=>import("./fluent-C4IJs8-o.js"),[]))},{id:"fortran-fixed-form",name:"Fortran (Fixed Form)",aliases:["f","for","f77"],import:(()=>Q(()=>import("./fortran-fixed-form-CkoXwp7k.js"),__vite__mapDeps([41,42])))},{id:"fortran-free-form",name:"Fortran (Free Form)",aliases:["f90","f95","f03","f08","f18"],import:(()=>Q(()=>import("./fortran-free-form-BxgE0vQu.js"),[]))},{id:"fsharp",name:"F#",aliases:["f#","fs"],import:(()=>Q(()=>import("./fsharp-CXgrBDvD.js"),__vite__mapDeps([43,40])))},{id:"gdresource",name:"GDResource",aliases:["tscn","tres"],import:(()=>Q(()=>import("./gdresource-BOOCDP_w.js"),__vite__mapDeps([44,45,46])))},{id:"gdscript",name:"GDScript",aliases:["gd"],import:(()=>Q(()=>import("./gdscript-C5YyOfLZ.js"),[]))},{id:"gdshader",name:"GDShader",import:(()=>Q(()=>import("./gdshader-DkwncUOv.js"),[]))},{id:"genie",name:"Genie",import:(()=>Q(()=>import("./genie-D0YGMca9.js"),[]))},{id:"gherkin",name:"Gherkin",import:(()=>Q(()=>import("./gherkin-DyxjwDmM.js"),[]))},{id:"git-commit",name:"Git Commit Message",import:(()=>Q(()=>import("./git-commit-F4YmCXRG.js"),__vite__mapDeps([47,48])))},{id:"git-rebase",name:"Git Rebase Message",import:(()=>Q(()=>import("./git-rebase-r7XF79zn.js"),__vite__mapDeps([49,28])))},{id:"gleam",name:"Gleam",import:(()=>Q(()=>import("./gleam-BspZqrRM.js"),[]))},{id:"glimmer-js",name:"Glimmer JS",aliases:["gjs"],import:(()=>Q(()=>import("./glimmer-js-ByusRIyA.js"),__vite__mapDeps([50,2,11,3,1])))},{id:"glimmer-ts",name:"Glimmer TS",aliases:["gts"],import:(()=>Q(()=>import("./glimmer-ts-BfAWNZQY.js"),__vite__mapDeps([51,11,3,2,1])))},{id:"glsl",name:"GLSL",import:(()=>Q(()=>import("./glsl-DplSGwfg.js"),__vite__mapDeps([25,26])))},{id:"gn",name:"GN",import:(()=>Q(()=>import("./gn-n2N0HUVH.js"),[]))},{id:"gnuplot",name:"Gnuplot",import:(()=>Q(()=>import("./gnuplot-DdkO51Og.js"),[]))},{id:"go",name:"Go",import:(()=>Q(()=>import("./go-C27-OAKa.js"),[]))},{id:"graphql",name:"GraphQL",aliases:["gql"],import:(()=>Q(()=>import("./graphql-ChdNCCLP.js"),__vite__mapDeps([35,2,11,36,13])))},{id:"groovy",name:"Groovy",import:(()=>Q(()=>import("./groovy-gcz8RCvz.js"),[]))},{id:"hack",name:"Hack",import:(()=>Q(()=>import("./hack-DbPARsA_.js"),__vite__mapDeps([52,1,2,3,16])))},{id:"haml",name:"Ruby Haml",import:(()=>Q(()=>import("./haml-D5jkg6IW.js"),__vite__mapDeps([34,2,3])))},{id:"handlebars",name:"Handlebars",aliases:["hbs"],import:(()=>Q(()=>import("./handlebars-BpdQsYii.js"),__vite__mapDeps([53,1,2,3,38])))},{id:"haskell",name:"Haskell",aliases:["hs"],import:(()=>Q(()=>import("./haskell-Df6bDoY_.js"),[]))},{id:"haxe",name:"Haxe",import:(()=>Q(()=>import("./haxe-CzTSHFRz.js"),[]))},{id:"hcl",name:"HashiCorp HCL",import:(()=>Q(()=>import("./hcl-BWvSN4gD.js"),[]))},{id:"hjson",name:"Hjson",import:(()=>Q(()=>import("./hjson-D5-asLiD.js"),[]))},{id:"hlsl",name:"HLSL",import:(()=>Q(()=>import("./hlsl-D3lLCCz7.js"),[]))},{id:"html",name:"HTML",import:(()=>Q(()=>import("./html-pp8916En.js"),__vite__mapDeps([1,2,3])))},{id:"html-derivative",name:"HTML (Derivative)",import:(()=>Q(()=>import("./html-derivative-DlHx6ybY.js"),__vite__mapDeps([15,1,2,3])))},{id:"http",name:"HTTP",import:(()=>Q(()=>import("./http-jrhK8wxY.js"),__vite__mapDeps([54,28,9,7,8,35,2,11,36,13])))},{id:"hurl",name:"Hurl",import:(()=>Q(()=>import("./hurl-irOxFIW8.js"),__vite__mapDeps([55,35,2,11,36,13,7,8,56])))},{id:"hxml",name:"HXML",import:(()=>Q(()=>import("./hxml-Bvhsp5Yf.js"),__vite__mapDeps([57,58])))},{id:"hy",name:"Hy",import:(()=>Q(()=>import("./hy-DFXneXwc.js"),[]))},{id:"imba",name:"Imba",import:(()=>Q(()=>import("./imba-DGztddWO.js"),[]))},{id:"ini",name:"INI",aliases:["properties"],import:(()=>Q(()=>import("./ini-BEwlwnbL.js"),[]))},{id:"java",name:"Java",import:(()=>Q(()=>import("./java-CylS5w8V.js"),[]))},{id:"javascript",name:"JavaScript",aliases:["js","cjs","mjs"],import:(()=>Q(()=>import("./javascript-wDzz0qaB.js"),[]))},{id:"jinja",name:"Jinja",import:(()=>Q(()=>import("./jinja-f2NsQr07.js"),__vite__mapDeps([59,1,2,3])))},{id:"jison",name:"Jison",import:(()=>Q(()=>import("./jison-wvAkD_A8.js"),__vite__mapDeps([60,2])))},{id:"json",name:"JSON",import:(()=>Q(()=>import("./json-Cp-IABpG.js"),[]))},{id:"json5",name:"JSON5",import:(()=>Q(()=>import("./json5-C9tS-k6U.js"),[]))},{id:"jsonc",name:"JSON with Comments",import:(()=>Q(()=>import("./jsonc-Des-eS-w.js"),[]))},{id:"jsonl",name:"JSON Lines",import:(()=>Q(()=>import("./jsonl-DcaNXYhu.js"),[]))},{id:"jsonnet",name:"Jsonnet",import:(()=>Q(()=>import("./jsonnet-DFQXde-d.js"),[]))},{id:"jssm",name:"JSSM",aliases:["fsl"],import:(()=>Q(()=>import("./jssm-C2t-YnRu.js"),[]))},{id:"jsx",name:"JSX",import:(()=>Q(()=>import("./jsx-g9-lgVsj.js"),[]))},{id:"julia",name:"Julia",aliases:["jl"],import:(()=>Q(()=>import("./julia-D7OTSIA_.js"),__vite__mapDeps([61,23,24,25,26,16,20,2,62])))},{id:"just",name:"Just",import:(()=>Q(()=>import("./just-CUsbIsdP.js"),__vite__mapDeps([63,28,2,11,64,1,3,7,8,16,20,33,34,35,36,13,23,24,25,26,37,38])))},{id:"kdl",name:"KDL",import:(()=>Q(()=>import("./kdl-DV7GczEv.js"),[]))},{id:"kotlin",name:"Kotlin",aliases:["kt","kts"],import:(()=>Q(()=>import("./kotlin-BdnUsdx6.js"),[]))},{id:"kusto",name:"Kusto",aliases:["kql"],import:(()=>Q(()=>import("./kusto-wEQ09or8.js"),[]))},{id:"latex",name:"LaTeX",import:(()=>Q(()=>import("./latex-CaSxy8MP.js"),__vite__mapDeps([65,66,62])))},{id:"lean",name:"Lean 4",aliases:["lean4"],import:(()=>Q(()=>import("./lean-BZvkOJ9d.js"),[]))},{id:"less",name:"Less",import:(()=>Q(()=>import("./less-B1dDrJ26.js"),[]))},{id:"liquid",name:"Liquid",import:(()=>Q(()=>import("./liquid-C0sCDyMI.js"),__vite__mapDeps([67,1,2,3,9])))},{id:"llvm",name:"LLVM IR",import:(()=>Q(()=>import("./llvm-DjAJT7YJ.js"),[]))},{id:"log",name:"Log file",import:(()=>Q(()=>import("./log-2UxHyX5q.js"),[]))},{id:"logo",name:"Logo",import:(()=>Q(()=>import("./logo-BtOb2qkB.js"),[]))},{id:"lua",name:"Lua",import:(()=>Q(()=>import("./lua-BaeVxFsk.js"),__vite__mapDeps([37,26])))},{id:"luau",name:"Luau",import:(()=>Q(()=>import("./luau-KW6xsasC.js"),[]))},{id:"make",name:"Makefile",aliases:["makefile"],import:(()=>Q(()=>import("./make-CHLpvVh8.js"),[]))},{id:"markdown",name:"Markdown",aliases:["md"],import:(()=>Q(()=>import("./markdown-Cvjx9yec.js"),[]))},{id:"marko",name:"Marko",import:(()=>Q(()=>import("./marko-DjSrsDqO.js"),__vite__mapDeps([68,3,69,5,11])))},{id:"matlab",name:"MATLAB",import:(()=>Q(()=>import("./matlab-D7o27uSR.js"),[]))},{id:"mdc",name:"MDC",import:(()=>Q(()=>import("./mdc-DTYItulj.js"),__vite__mapDeps([70,40,38,15,1,2,3])))},{id:"mdx",name:"MDX",import:(()=>Q(()=>import("./mdx-Cmh6b_Ma.js"),[]))},{id:"mermaid",name:"Mermaid",aliases:["mmd"],import:(()=>Q(()=>import("./mermaid-mWjccvbQ.js"),[]))},{id:"mipsasm",name:"MIPS Assembly",aliases:["mips"],import:(()=>Q(()=>import("./mipsasm-CKIfxQSi.js"),[]))},{id:"mojo",name:"Mojo",import:(()=>Q(()=>import("./mojo-rZm6bMo-.js"),[]))},{id:"moonbit",name:"MoonBit",aliases:["mbt","mbti"],import:(()=>Q(()=>import("./moonbit-_H4v1dQx.js"),[]))},{id:"move",name:"Move",import:(()=>Q(()=>import("./move-IF9eRakj.js"),[]))},{id:"narrat",name:"Narrat Language",aliases:["nar"],import:(()=>Q(()=>import("./narrat-DRg8JJMk.js"),[]))},{id:"nextflow",name:"Nextflow",aliases:["nf"],import:(()=>Q(()=>import("./nextflow-C-mBbutL.js"),__vite__mapDeps([71,72])))},{id:"nextflow-groovy",name:"Nextflow Groovy",import:(()=>Q(()=>import("./nextflow-groovy-vE_lwT2v.js"),[]))},{id:"nginx",name:"Nginx",import:(()=>Q(()=>import("./nginx-BpAMiNFr.js"),__vite__mapDeps([73,37,26])))},{id:"nim",name:"Nim",import:(()=>Q(()=>import("./nim-BIad80T-.js"),__vite__mapDeps([74,26,1,2,3,7,8,25,40])))},{id:"nix",name:"Nix",import:(()=>Q(()=>import("./nix-CwoSXNpI.js"),[]))},{id:"nushell",name:"nushell",aliases:["nu"],import:(()=>Q(()=>import("./nushell-Cz2AlsmD.js"),[]))},{id:"objective-c",name:"Objective-C",aliases:["objc"],import:(()=>Q(()=>import("./objective-c-DXmwc3jG.js"),[]))},{id:"objective-cpp",name:"Objective-C++",import:(()=>Q(()=>import("./objective-cpp-CLxacb5B.js"),[]))},{id:"ocaml",name:"OCaml",import:(()=>Q(()=>import("./ocaml-C0hk2d4L.js"),[]))},{id:"odin",name:"Odin",import:(()=>Q(()=>import("./odin-BBf5iR-q.js"),[]))},{id:"openscad",name:"OpenSCAD",aliases:["scad"],import:(()=>Q(()=>import("./openscad-C4EeE6gA.js"),[]))},{id:"pascal",name:"Pascal",import:(()=>Q(()=>import("./pascal-D93ZcfNL.js"),[]))},{id:"perl",name:"Perl",import:(()=>Q(()=>import("./perl-B9cMNwum.js"),__vite__mapDeps([64,1,2,3,7,8,16])))},{id:"php",name:"PHP",import:(()=>Q(()=>import("./php-Csjmro_R.js"),__vite__mapDeps([75,1,2,3,7,8,16,9])))},{id:"pkl",name:"Pkl",import:(()=>Q(()=>import("./pkl-u5AG7uiY.js"),[]))},{id:"plsql",name:"PL/SQL",import:(()=>Q(()=>import("./plsql-ChMvpjG-.js"),[]))},{id:"po",name:"Gettext PO",aliases:["pot","potx"],import:(()=>Q(()=>import("./po-BTJTHyun.js"),[]))},{id:"polar",name:"Polar",import:(()=>Q(()=>import("./polar-C0HS_06l.js"),[]))},{id:"postcss",name:"PostCSS",import:(()=>Q(()=>import("./postcss-CXtECtnM.js"),[]))},{id:"powerquery",name:"PowerQuery",import:(()=>Q(()=>import("./powerquery-CEu0bR-o.js"),[]))},{id:"powershell",name:"PowerShell",aliases:["ps","ps1"],import:(()=>Q(()=>import("./powershell-Dpen1YoG.js"),[]))},{id:"prisma",name:"Prisma",import:(()=>Q(()=>import("./prisma-Dd19v3D-.js"),[]))},{id:"prolog",name:"Prolog",import:(()=>Q(()=>import("./prolog-CbFg5uaA.js"),[]))},{id:"proto",name:"Protocol Buffer 3",aliases:["protobuf"],import:(()=>Q(()=>import("./proto-C7zT0LnQ.js"),[]))},{id:"pug",name:"Pug",aliases:["jade"],import:(()=>Q(()=>import("./pug-DKIMFp6K.js"),__vite__mapDeps([76,2,3,1])))},{id:"puppet",name:"Puppet",import:(()=>Q(()=>import("./puppet-BMWR74SV.js"),[]))},{id:"purescript",name:"PureScript",import:(()=>Q(()=>import("./purescript-CklMAg4u.js"),[]))},{id:"python",name:"Python",aliases:["py"],import:(()=>Q(()=>import("./python-B6aJPvgy.js"),[]))},{id:"qml",name:"QML",import:(()=>Q(()=>import("./qml-3beO22l8.js"),__vite__mapDeps([77,2])))},{id:"qmldir",name:"QML Directory",import:(()=>Q(()=>import("./qmldir-C8lEn-DE.js"),[]))},{id:"qss",name:"Qt Style Sheets",import:(()=>Q(()=>import("./qss-IeuSbFQv.js"),[]))},{id:"r",name:"R",import:(()=>Q(()=>import("./r-Dspwwk_N.js"),[]))},{id:"racket",name:"Racket",import:(()=>Q(()=>import("./racket-BqYA7rlc.js"),[]))},{id:"raku",name:"Raku",aliases:["perl6"],import:(()=>Q(()=>import("./raku-DXvB9xmW.js"),[]))},{id:"razor",name:"ASP.NET Razor",import:(()=>Q(()=>import("./razor-BjBPvh-w.js"),__vite__mapDeps([78,1,2,3,79])))},{id:"reg",name:"Windows Registry Script",import:(()=>Q(()=>import("./reg-C-SQnVFl.js"),[]))},{id:"regexp",name:"RegExp",aliases:["regex"],import:(()=>Q(()=>import("./regexp-CDVJQ6XC.js"),[]))},{id:"rel",name:"Rel",import:(()=>Q(()=>import("./rel-C3B-1QV4.js"),[]))},{id:"riscv",name:"RISC-V",import:(()=>Q(()=>import("./riscv-BM1_JUlF.js"),[]))},{id:"ron",name:"RON",import:(()=>Q(()=>import("./ron-D8l8udqQ.js"),[]))},{id:"rosmsg",name:"ROS Interface",import:(()=>Q(()=>import("./rosmsg-BJDFO7_C.js"),[]))},{id:"rst",name:"reStructuredText",import:(()=>Q(()=>import("./rst-CpCqk9r5.js"),__vite__mapDeps([80,15,1,2,3,23,24,25,26,16,20,28,38,81,33,34,7,8,35,11,36,13,37])))},{id:"ruby",name:"Ruby",aliases:["rb"],import:(()=>Q(()=>import("./ruby-DyJCeAvU.js"),__vite__mapDeps([33,1,2,3,34,7,8,16,35,11,36,13,23,24,25,26,28,37,38])))},{id:"rust",name:"Rust",aliases:["rs"],import:(()=>Q(()=>import("./rust-B1yitclQ.js"),[]))},{id:"sas",name:"SAS",import:(()=>Q(()=>import("./sas-DEy46yEz.js"),__vite__mapDeps([82,16])))},{id:"sass",name:"Sass",import:(()=>Q(()=>import("./sass-Cj5Yp3dK.js"),[]))},{id:"scala",name:"Scala",import:(()=>Q(()=>import("./scala-C151Ov-r.js"),[]))},{id:"scheme",name:"Scheme",import:(()=>Q(()=>import("./scheme-C98Dy4si.js"),[]))},{id:"scss",name:"SCSS",import:(()=>Q(()=>import("./scss-D5BDwBP9.js"),__vite__mapDeps([5,3])))},{id:"sdbl",name:"1C (Query)",aliases:["1c-query"],import:(()=>Q(()=>import("./sdbl-DVxCFoDh.js"),[]))},{id:"shaderlab",name:"ShaderLab",aliases:["shader"],import:(()=>Q(()=>import("./shaderlab-Dg9Lc6iA.js"),__vite__mapDeps([83,84])))},{id:"shellscript",name:"Shell",aliases:["bash","sh","shell","zsh"],import:(()=>Q(()=>import("./shellscript-Yzrsuije.js"),[]))},{id:"shellsession",name:"Shell Session",aliases:["console"],import:(()=>Q(()=>import("./shellsession-BADoaaVG.js"),__vite__mapDeps([85,28])))},{id:"smalltalk",name:"Smalltalk",import:(()=>Q(()=>import("./smalltalk-BERRCDM3.js"),[]))},{id:"solidity",name:"Solidity",import:(()=>Q(()=>import("./solidity-rGO070M0.js"),[]))},{id:"soy",name:"Closure Templates",aliases:["closure-templates"],import:(()=>Q(()=>import("./soy-8wufbnw4.js"),__vite__mapDeps([86,1,2,3])))},{id:"sparql",name:"SPARQL",import:(()=>Q(()=>import("./sparql-rVzFXLq3.js"),__vite__mapDeps([87,88])))},{id:"splunk",name:"Splunk Query Language",aliases:["spl"],import:(()=>Q(()=>import("./splunk-BtCnVYZw.js"),[]))},{id:"sql",name:"SQL",import:(()=>Q(()=>import("./sql-CRqJ_cUM.js"),[]))},{id:"ssh-config",name:"SSH Config",import:(()=>Q(()=>import("./ssh-config-_ykCGR6B.js"),[]))},{id:"stata",name:"Stata",import:(()=>Q(()=>import("./stata-DI20mbqo.js"),__vite__mapDeps([89,16])))},{id:"stylus",name:"Stylus",aliases:["styl"],import:(()=>Q(()=>import("./stylus-BEDo0Tqx.js"),[]))},{id:"surrealql",name:"SurrealQL",aliases:["surql"],import:(()=>Q(()=>import("./surrealql-Bq5Q-fJD.js"),__vite__mapDeps([90,2])))},{id:"svelte",name:"Svelte",import:(()=>Q(()=>import("./svelte-Cy7k_4gC.js"),__vite__mapDeps([91,2,11,3,12])))},{id:"swift",name:"Swift",import:(()=>Q(()=>import("./swift-D82vCrfD.js"),[]))},{id:"system-verilog",name:"SystemVerilog",import:(()=>Q(()=>import("./system-verilog-CnnmHF94.js"),[]))},{id:"systemd",name:"Systemd Units",import:(()=>Q(()=>import("./systemd-4A_iFExJ.js"),[]))},{id:"talonscript",name:"TalonScript",aliases:["talon"],import:(()=>Q(()=>import("./talonscript-CkByrt1z.js"),[]))},{id:"tasl",name:"Tasl",import:(()=>Q(()=>import("./tasl-QIJgUcNo.js"),[]))},{id:"tcl",name:"Tcl",import:(()=>Q(()=>import("./tcl-dwOrl1Do.js"),[]))},{id:"templ",name:"Templ",import:(()=>Q(()=>import("./templ-DhtptRzy.js"),__vite__mapDeps([92,93,2,3])))},{id:"terraform",name:"Terraform",aliases:["tf","tfvars"],import:(()=>Q(()=>import("./terraform-BETggiCN.js"),[]))},{id:"tex",name:"TeX",import:(()=>Q(()=>import("./tex-idrVyKtj.js"),__vite__mapDeps([66,62])))},{id:"toml",name:"TOML",import:(()=>Q(()=>import("./toml-vGWfd6FD.js"),[]))},{id:"ts-tags",name:"TypeScript with Tags",aliases:["lit"],import:(()=>Q(()=>import("./ts-tags-D351s5mN.js"),__vite__mapDeps([94,11,3,2,25,26,1,16,7,8])))},{id:"tsv",name:"TSV",import:(()=>Q(()=>import("./tsv-B_m7g4N7.js"),[]))},{id:"tsx",name:"TSX",import:(()=>Q(()=>import("./tsx-COt5Ahok.js"),[]))},{id:"turtle",name:"Turtle",import:(()=>Q(()=>import("./turtle-BsS91CYL.js"),[]))},{id:"twig",name:"Twig",import:(()=>Q(()=>import("./twig-CW1WmMYd.js"),__vite__mapDeps([95,3,2,5,75,1,7,8,16,9,20,33,34,35,11,36,13,23,24,25,26,28,37,38])))},{id:"typescript",name:"TypeScript",aliases:["ts","cts","mts"],import:(()=>Q(()=>import("./typescript-BPQ3VLAy.js"),[]))},{id:"typespec",name:"TypeSpec",aliases:["tsp"],import:(()=>Q(()=>import("./typespec-CAFt9gP4.js"),[]))},{id:"typst",name:"Typst",aliases:["typ"],import:(()=>Q(()=>import("./typst-DHCkPAjA.js"),[]))},{id:"v",name:"V",import:(()=>Q(()=>import("./v-BcVCzyr7.js"),[]))},{id:"vala",name:"Vala",import:(()=>Q(()=>import("./vala-CsfeWuGM.js"),[]))},{id:"vb",name:"Visual Basic",aliases:["cmd"],import:(()=>Q(()=>import("./vb-D17OF-Vu.js"),[]))},{id:"verilog",name:"Verilog",import:(()=>Q(()=>import("./verilog-BQ8w6xss.js"),[]))},{id:"vhdl",name:"VHDL",import:(()=>Q(()=>import("./vhdl-CeAyd5Ju.js"),[]))},{id:"viml",name:"Vim Script",aliases:["vim","vimscript"],import:(()=>Q(()=>import("./viml-CJc9bBzg.js"),[]))},{id:"vue",name:"Vue",import:(()=>Q(()=>import("./vue-D2xRrEX4.js"),__vite__mapDeps([96,3,2,11,9,1,15])))},{id:"vue-html",name:"Vue HTML",import:(()=>Q(()=>import("./vue-html-AaS7Mt5G.js"),__vite__mapDeps([97,2])))},{id:"vue-vine",name:"Vue Vine",import:(()=>Q(()=>import("./vue-vine-BoDAl6tE.js"),__vite__mapDeps([98,3,5,69,99,12,2])))},{id:"vyper",name:"Vyper",aliases:["vy"],import:(()=>Q(()=>import("./vyper-CDx5xZoG.js"),[]))},{id:"wasm",name:"WebAssembly",import:(()=>Q(()=>import("./wasm-MzD3tlZU.js"),[]))},{id:"wenyan",name:"Wenyan",aliases:["文言"],import:(()=>Q(()=>import("./wenyan-BV7otONQ.js"),[]))},{id:"wgsl",name:"WGSL",import:(()=>Q(()=>import("./wgsl-Dx-B1_4e.js"),[]))},{id:"wikitext",name:"Wikitext",aliases:["mediawiki","wiki"],import:(()=>Q(()=>import("./wikitext-BhOHFoWU.js"),[]))},{id:"wit",name:"WebAssembly Interface Types",import:(()=>Q(()=>import("./wit-5i3qLPDT.js"),[]))},{id:"wolfram",name:"Wolfram",aliases:["wl"],import:(()=>Q(()=>import("./wolfram-lXgVvXCa.js"),[]))},{id:"xml",name:"XML",import:(()=>Q(()=>import("./xml-sdJ4AIDG.js"),__vite__mapDeps([7,8])))},{id:"xsl",name:"XSL",import:(()=>Q(()=>import("./xsl-CtQFsRM5.js"),__vite__mapDeps([100,7,8])))},{id:"yaml",name:"YAML",aliases:["yml"],import:(()=>Q(()=>import("./yaml-Buea-lGh.js"),[]))},{id:"zenscript",name:"ZenScript",import:(()=>Q(()=>import("./zenscript-DVFEvuxE.js"),[]))},{id:"zig",name:"Zig",import:(()=>Q(()=>import("./zig-VOosw3JB.js"),[]))}],Fp=Object.fromEntries(Zu.map(e=>[e.id,e.import])),Vp=Object.fromEntries(Zu.flatMap(e=>{var t;return((t=e.aliases)==null?void 0:t.map(n=>[n,e.import]))||[]})),Gp={...Fp,...Vp},Wp=[{id:"andromeeda",displayName:"Andromeeda",type:"dark",import:(()=>Q(()=>import("./andromeeda-C4gqWexZ.js"),[]))},{id:"aurora-x",displayName:"Aurora X",type:"dark",import:(()=>Q(()=>import("./aurora-x-D-2ljcwZ.js"),[]))},{id:"ayu-dark",displayName:"Ayu Dark",type:"dark",import:(()=>Q(()=>import("./ayu-dark-DYE7WIF3.js"),[]))},{id:"ayu-light",displayName:"Ayu Light",type:"light",import:(()=>Q(()=>import("./ayu-light-BA47KaF1.js"),[]))},{id:"ayu-mirage",displayName:"Ayu Mirage",type:"dark",import:(()=>Q(()=>import("./ayu-mirage-32ctXXKs.js"),[]))},{id:"catppuccin-frappe",displayName:"Catppuccin Frappé",type:"dark",import:(()=>Q(()=>import("./catppuccin-frappe-DFWUc33u.js"),[]))},{id:"catppuccin-latte",displayName:"Catppuccin Latte",type:"light",import:(()=>Q(()=>import("./catppuccin-latte-C9dUb6Cb.js"),[]))},{id:"catppuccin-macchiato",displayName:"Catppuccin Macchiato",type:"dark",import:(()=>Q(()=>import("./catppuccin-macchiato-DQyhUUbL.js"),[]))},{id:"catppuccin-mocha",displayName:"Catppuccin Mocha",type:"dark",import:(()=>Q(()=>import("./catppuccin-mocha-D87Tk5Gz.js"),[]))},{id:"dark-plus",displayName:"Dark Plus",type:"dark",import:(()=>Q(()=>import("./dark-plus-C3mMm8J8.js"),[]))},{id:"dracula",displayName:"Dracula Theme",type:"dark",import:(()=>Q(()=>import("./dracula-BzJJZx-M.js"),[]))},{id:"dracula-soft",displayName:"Dracula Theme Soft",type:"dark",import:(()=>Q(()=>import("./dracula-soft-BXkSAIEj.js"),[]))},{id:"everforest-dark",displayName:"Everforest Dark",type:"dark",import:(()=>Q(()=>import("./everforest-dark-BgDCqdQA.js"),[]))},{id:"everforest-light",displayName:"Everforest Light",type:"light",import:(()=>Q(()=>import("./everforest-light-C8M2exoo.js"),[]))},{id:"github-dark",displayName:"GitHub Dark",type:"dark",import:(()=>Q(()=>import("./github-dark-DHJKELXO.js"),[]))},{id:"github-dark-default",displayName:"GitHub Dark Default",type:"dark",import:(()=>Q(()=>import("./github-dark-default-Cuk6v7N8.js"),[]))},{id:"github-dark-dimmed",displayName:"GitHub Dark Dimmed",type:"dark",import:(()=>Q(()=>import("./github-dark-dimmed-DH5Ifo-i.js"),[]))},{id:"github-dark-high-contrast",displayName:"GitHub Dark High Contrast",type:"dark",import:(()=>Q(()=>import("./github-dark-high-contrast-E3gJ1_iC.js"),[]))},{id:"github-light",displayName:"GitHub Light",type:"light",import:(()=>Q(()=>import("./github-light-DAi9KRSo.js"),[]))},{id:"github-light-default",displayName:"GitHub Light Default",type:"light",import:(()=>Q(()=>import("./github-light-default-D7oLnXFd.js"),[]))},{id:"github-light-high-contrast",displayName:"GitHub Light High Contrast",type:"light",import:(()=>Q(()=>import("./github-light-high-contrast-BfjtVDDH.js"),[]))},{id:"gruvbox-dark-hard",displayName:"Gruvbox Dark Hard",type:"dark",import:(()=>Q(()=>import("./gruvbox-dark-hard-CFHQjOhq.js"),[]))},{id:"gruvbox-dark-medium",displayName:"Gruvbox Dark Medium",type:"dark",import:(()=>Q(()=>import("./gruvbox-dark-medium-GsRaNv29.js"),[]))},{id:"gruvbox-dark-soft",displayName:"Gruvbox Dark Soft",type:"dark",import:(()=>Q(()=>import("./gruvbox-dark-soft-CVdnzihN.js"),[]))},{id:"gruvbox-light-hard",displayName:"Gruvbox Light Hard",type:"light",import:(()=>Q(()=>import("./gruvbox-light-hard-CH1njM8p.js"),[]))},{id:"gruvbox-light-medium",displayName:"Gruvbox Light Medium",type:"light",import:(()=>Q(()=>import("./gruvbox-light-medium-DRw_LuNl.js"),[]))},{id:"gruvbox-light-soft",displayName:"Gruvbox Light Soft",type:"light",import:(()=>Q(()=>import("./gruvbox-light-soft-hJgmCMqR.js"),[]))},{id:"horizon",displayName:"Horizon",type:"dark",import:(()=>Q(()=>import("./horizon-BUw7H-hv.js"),[]))},{id:"horizon-bright",displayName:"Horizon Bright",type:"light",import:(()=>Q(()=>import("./horizon-bright-CUuTKBJd.js"),[]))},{id:"houston",displayName:"Houston",type:"dark",import:(()=>Q(()=>import("./houston-DnULxvSX.js"),[]))},{id:"kanagawa-dragon",displayName:"Kanagawa Dragon",type:"dark",import:(()=>Q(()=>import("./kanagawa-dragon-CkXjmgJE.js"),[]))},{id:"kanagawa-lotus",displayName:"Kanagawa Lotus",type:"light",import:(()=>Q(()=>import("./kanagawa-lotus-CfQXZHmo.js"),[]))},{id:"kanagawa-wave",displayName:"Kanagawa Wave",type:"dark",import:(()=>Q(()=>import("./kanagawa-wave-DWedfzmr.js"),[]))},{id:"laserwave",displayName:"LaserWave",type:"dark",import:(()=>Q(()=>import("./laserwave-DUszq2jm.js"),[]))},{id:"light-plus",displayName:"Light Plus",type:"light",import:(()=>Q(()=>import("./light-plus-B7mTdjB0.js"),[]))},{id:"material-theme",displayName:"Material Theme",type:"dark",import:(()=>Q(()=>import("./material-theme-D5KoaKCx.js"),[]))},{id:"material-theme-darker",displayName:"Material Theme Darker",type:"dark",import:(()=>Q(()=>import("./material-theme-darker-BfHTSMKl.js"),[]))},{id:"material-theme-lighter",displayName:"Material Theme Lighter",type:"light",import:(()=>Q(()=>import("./material-theme-lighter-B0m2ddpp.js"),[]))},{id:"material-theme-ocean",displayName:"Material Theme Ocean",type:"dark",import:(()=>Q(()=>import("./material-theme-ocean-CyktbL80.js"),[]))},{id:"material-theme-palenight",displayName:"Material Theme Palenight",type:"dark",import:(()=>Q(()=>import("./material-theme-palenight-Csfq5Kiy.js"),[]))},{id:"min-dark",displayName:"Min Dark",type:"dark",import:(()=>Q(()=>import("./min-dark-CafNBF8u.js"),[]))},{id:"min-light",displayName:"Min Light",type:"light",import:(()=>Q(()=>import("./min-light-CTRr51gU.js"),[]))},{id:"monokai",displayName:"Monokai",type:"dark",import:(()=>Q(()=>import("./monokai-D4h5O-jR.js"),[]))},{id:"night-owl",displayName:"Night Owl",type:"dark",import:(()=>Q(()=>import("./night-owl-C39BiMTA.js"),[]))},{id:"night-owl-light",displayName:"Night Owl Light",type:"light",import:(()=>Q(()=>import("./night-owl-light-CMTm3GFP.js"),[]))},{id:"nord",displayName:"Nord",type:"dark",import:(()=>Q(()=>import("./nord-Ddv68eIx.js"),[]))},{id:"one-dark-pro",displayName:"One Dark Pro",type:"dark",import:(()=>Q(()=>import("./one-dark-pro-DVMEJ2y_.js"),[]))},{id:"one-light",displayName:"One Light",type:"light",import:(()=>Q(()=>import("./one-light-C3Wv6jpd.js"),[]))},{id:"plastic",displayName:"Plastic",type:"dark",import:(()=>Q(()=>import("./plastic-3e1v2bzS.js"),[]))},{id:"poimandres",displayName:"Poimandres",type:"dark",import:(()=>Q(()=>import("./poimandres-CS3Unz2-.js"),[]))},{id:"red",displayName:"Red",type:"dark",import:(()=>Q(()=>import("./red-bN70gL4F.js"),[]))},{id:"rose-pine",displayName:"Rosé Pine",type:"dark",import:(()=>Q(()=>import("./rose-pine-qdsjHGoJ.js"),[]))},{id:"rose-pine-dawn",displayName:"Rosé Pine Dawn",type:"light",import:(()=>Q(()=>import("./rose-pine-dawn-DHQR4-dF.js"),[]))},{id:"rose-pine-moon",displayName:"Rosé Pine Moon",type:"dark",import:(()=>Q(()=>import("./rose-pine-moon-D4_iv3hh.js"),[]))},{id:"slack-dark",displayName:"Slack Dark",type:"dark",import:(()=>Q(()=>import("./slack-dark-BthQWCQV.js"),[]))},{id:"slack-ochin",displayName:"Slack Ochin",type:"light",import:(()=>Q(()=>import("./slack-ochin-DqwNpetd.js"),[]))},{id:"snazzy-light",displayName:"Snazzy Light",type:"light",import:(()=>Q(()=>import("./snazzy-light-Bw305WKR.js"),[]))},{id:"solarized-dark",displayName:"Solarized Dark",type:"dark",import:(()=>Q(()=>import("./solarized-dark-DXbdFlpD.js"),[]))},{id:"solarized-light",displayName:"Solarized Light",type:"light",import:(()=>Q(()=>import("./solarized-light-L9t79GZl.js"),[]))},{id:"synthwave-84",displayName:"Synthwave '84",type:"dark",import:(()=>Q(()=>import("./synthwave-84-CbfX1IO0.js"),[]))},{id:"tokyo-night",displayName:"Tokyo Night",type:"dark",import:(()=>Q(()=>import("./tokyo-night-hegEt444.js"),[]))},{id:"vesper",displayName:"Vesper",type:"dark",import:(()=>Q(()=>import("./vesper-DRje8inN.js"),[]))},{id:"vitesse-black",displayName:"Vitesse Black",type:"dark",import:(()=>Q(()=>import("./vitesse-black-Bkuqu6BP.js"),[]))},{id:"vitesse-dark",displayName:"Vitesse Dark",type:"dark",import:(()=>Q(()=>import("./vitesse-dark-D0r3Knsf.js"),[]))},{id:"vitesse-light",displayName:"Vitesse Light",type:"light",import:(()=>Q(()=>import("./vitesse-light-CVO1_9PV.js"),[]))}],qp=Object.fromEntries(Wp.map(e=>[e.id,e.import]));var Kp=class extends Error{constructor(t){super(t),this.name="ShikiError"}};function rO(){return 2147483648}function sO(){return typeof performance<"u"?performance.now():Date.now()}const iO=(e,t)=>e+(t-e%t)%t;async function aO(e){let t,n;const s={};function a(x){n=x,s.HEAPU8=new Uint8Array(x),s.HEAPU32=new Uint32Array(x)}function l(x,w,C){s.HEAPU8.copyWithin(x,w,w+C)}function u(x){try{return t.grow(x-n.byteLength+65535>>>16),a(t.buffer),1}catch{}}function c(x){const w=s.HEAPU8.length;x=x>>>0;const C=rO();if(x>C)return!1;for(let v=1;v<=4;v*=2){let S=w*(1+.2/v);S=Math.min(S,x+100663296);const b=Math.min(C,iO(Math.max(x,S),65536));if(u(b))return!0}return!1}const d=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function f(x,w,C=1024){const v=w+C;let S=w;for(;x[S]&&!(S>=v);)++S;if(S-w>16&&x.buffer&&d)return d.decode(x.subarray(w,S));let b="";for(;w<S;){let y=x[w++];if(!(y&128)){b+=String.fromCharCode(y);continue}const E=x[w++]&63;if((y&224)===192){b+=String.fromCharCode((y&31)<<6|E);continue}const N=x[w++]&63;if((y&240)===224?y=(y&15)<<12|E<<6|N:y=(y&7)<<18|E<<12|N<<6|x[w++]&63,y<65536)b+=String.fromCharCode(y);else{const T=y-65536;b+=String.fromCharCode(55296|T>>10,56320|T&1023)}}return b}function m(x,w){return x?f(s.HEAPU8,x,w):""}const p={emscripten_get_now:sO,emscripten_memcpy_big:l,emscripten_resize_heap:c,fd_write:()=>0};async function _(){const w=await e({env:p,wasi_snapshot_preview1:p});t=w.memory,a(t.buffer),Object.assign(s,w),s.UTF8ToString=m}return await _(),s}var oO=Object.defineProperty,lO=(e,t,n)=>t in e?oO(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,sn=(e,t,n)=>lO(e,typeof t!="symbol"?t+"":t,n);let dn=null;function cO(e){throw new Kp(e.UTF8ToString(e.getLastOnigError()))}class ed{constructor(t){sn(this,"utf16Length"),sn(this,"utf8Length"),sn(this,"utf16Value"),sn(this,"utf8Value"),sn(this,"utf16OffsetToUtf8"),sn(this,"utf8OffsetToUtf16");const n=t.length,s=ed._utf8ByteLength(t),a=s!==n,l=a?new Uint32Array(n+1):null;a&&(l[n]=s);const u=a?new Uint32Array(s+1):null;a&&(u[s]=n);const c=new Uint8Array(s);let d=0;for(let f=0;f<n;f++){const m=t.charCodeAt(f);let p=m,_=!1;if(m>=55296&&m<=56319&&f+1<n){const x=t.charCodeAt(f+1);x>=56320&&x<=57343&&(p=(m-55296<<10)+65536|x-56320,_=!0)}a&&(l[f]=d,_&&(l[f+1]=d),p<=127?u[d+0]=f:p<=2047?(u[d+0]=f,u[d+1]=f):p<=65535?(u[d+0]=f,u[d+1]=f,u[d+2]=f):(u[d+0]=f,u[d+1]=f,u[d+2]=f,u[d+3]=f)),p<=127?c[d++]=p:p<=2047?(c[d++]=192|(p&1984)>>>6,c[d++]=128|(p&63)>>>0):p<=65535?(c[d++]=224|(p&61440)>>>12,c[d++]=128|(p&4032)>>>6,c[d++]=128|(p&63)>>>0):(c[d++]=240|(p&1835008)>>>18,c[d++]=128|(p&258048)>>>12,c[d++]=128|(p&4032)>>>6,c[d++]=128|(p&63)>>>0),_&&f++}this.utf16Length=n,this.utf8Length=s,this.utf16Value=t,this.utf8Value=c,this.utf16OffsetToUtf8=l,this.utf8OffsetToUtf16=u}static _utf8ByteLength(t){let n=0;for(let s=0,a=t.length;s<a;s++){const l=t.charCodeAt(s);let u=l,c=!1;if(l>=55296&&l<=56319&&s+1<a){const d=t.charCodeAt(s+1);d>=56320&&d<=57343&&(u=(l-55296<<10)+65536|d-56320,c=!0)}u<=127?n+=1:u<=2047?n+=2:u<=65535?n+=3:n+=4,c&&s++}return n}createString(t){const n=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,n),n}}const td=class Dr{constructor(t){if(sn(this,"id",++Dr.LAST_ID),sn(this,"_onigBinding"),sn(this,"content"),sn(this,"utf16Length"),sn(this,"utf8Length"),sn(this,"utf16OffsetToUtf8"),sn(this,"utf8OffsetToUtf16"),sn(this,"ptr"),!dn)throw new Kp("Must invoke loadWasm first.");this._onigBinding=dn,this.content=t;const n=new ed(t);this.utf16Length=n.utf16Length,this.utf8Length=n.utf8Length,this.utf16OffsetToUtf8=n.utf16OffsetToUtf8,this.utf8OffsetToUtf16=n.utf8OffsetToUtf16,this.utf8Length<1e4&&!Dr._sharedPtrInUse?(Dr._sharedPtr||(Dr._sharedPtr=dn.omalloc(1e4)),Dr._sharedPtrInUse=!0,dn.HEAPU8.set(n.utf8Value,Dr._sharedPtr),this.ptr=Dr._sharedPtr):this.ptr=n.createString(dn)}convertUtf8OffsetToUtf16(t){return this.utf8OffsetToUtf16?t<0?0:t>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[t]:t}convertUtf16OffsetToUtf8(t){return this.utf16OffsetToUtf8?t<0?0:t>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[t]:t}dispose(){this.ptr===Dr._sharedPtr?Dr._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};sn(td,"LAST_ID",0);sn(td,"_sharedPtr",0);sn(td,"_sharedPtrInUse",!1);let rw=td;class uO{constructor(t){if(sn(this,"_onigBinding"),sn(this,"_ptr"),!dn)throw new Kp("Must invoke loadWasm first.");const n=[],s=[];for(let c=0,d=t.length;c<d;c++){const f=new ed(t[c]);n[c]=f.createString(dn),s[c]=f.utf8Length}const a=dn.omalloc(4*t.length);dn.HEAPU32.set(n,a/4);const l=dn.omalloc(4*t.length);dn.HEAPU32.set(s,l/4);const u=dn.createOnigScanner(a,l,t.length);for(let c=0,d=t.length;c<d;c++)dn.ofree(n[c]);dn.ofree(l),dn.ofree(a),u===0&&cO(dn),this._onigBinding=dn,this._ptr=u}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,n,s){let a=0;if(typeof s=="number"&&(a=s),typeof t=="string"){t=new rw(t);const l=this._findNextMatchSync(t,n,!1,a);return t.dispose(),l}return this._findNextMatchSync(t,n,!1,a)}_findNextMatchSync(t,n,s,a){const l=this._onigBinding,u=l.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(n),a);if(u===0)return null;const c=l.HEAPU32;let d=u/4;const f=c[d++],m=c[d++],p=[];for(let _=0;_<m;_++){const x=t.convertUtf8OffsetToUtf16(c[d++]),w=t.convertUtf8OffsetToUtf16(c[d++]);p[_]={start:x,end:w,length:w-x}}return{index:f,captureIndices:p}}}function dO(e){return typeof e.instantiator=="function"}function hO(e){return typeof e.default=="function"}function fO(e){return typeof e.data<"u"}function mO(e){return typeof Response<"u"&&e instanceof Response}function pO(e){var t;return typeof ArrayBuffer<"u"&&(e instanceof ArrayBuffer||ArrayBuffer.isView(e))||typeof Buffer<"u"&&((t=Buffer.isBuffer)==null?void 0:t.call(Buffer,e))||typeof SharedArrayBuffer<"u"&&e instanceof SharedArrayBuffer||typeof Uint32Array<"u"&&e instanceof Uint32Array}let Qc;function Yp(e){if(Qc)return Qc;async function t(){dn=await aO(async n=>{let s=e;return s=await s,typeof s=="function"&&(s=await s(n)),typeof s=="function"&&(s=await s(n)),dO(s)?s=await s.instantiator(n):hO(s)?s=await s.default(n):(fO(s)&&(s=s.data),mO(s)?typeof WebAssembly.instantiateStreaming=="function"?s=await gO(s)(n):s=await xO(s)(n):pO(s)?s=await rm(s)(n):s instanceof WebAssembly.Module?s=await rm(s)(n):"default"in s&&s.default instanceof WebAssembly.Module&&(s=await rm(s.default)(n))),"instance"in s&&(s=s.instance),"exports"in s&&(s=s.exports),s})}return Qc=t(),Qc}function rm(e){return t=>WebAssembly.instantiate(e,t)}function gO(e){return t=>WebAssembly.instantiateStreaming(e,t)}function xO(e){return async t=>{const n=await e.arrayBuffer();return WebAssembly.instantiate(n,t)}}let sw;function _O(e){sw=e}function yO(){return sw}async function iw(e){return e&&await Yp(e),{createScanner(t){return new uO(t.map(n=>typeof n=="string"?n:n.source))},createString(t){return new rw(t)}}}const vO=Object.freeze(Object.defineProperty({__proto__:null,createOnigurumaEngine:iw,getDefaultWasmLoader:yO,loadWasm:Yp,setDefaultWasmLoader:_O},Symbol.toStringTag,{value:"Module"}));var aw=Up({});nw(aw,vO);var Dt=class extends Error{constructor(e){super(e),this.name="ShikiError"}};function bO(e){return Xp(e)}function Xp(e){return Array.isArray(e)?SO(e):e instanceof RegExp?e:typeof e=="object"?wO(e):e}function SO(e){let t=[];for(let n=0,s=e.length;n<s;n++)t[n]=Xp(e[n]);return t}function wO(e){let t={};for(let n in e)t[n]=Xp(e[n]);return t}function ow(e,...t){return t.forEach(n=>{for(let s in n)e[s]=n[s]}),e}function lw(e){const t=~e.lastIndexOf("/")||~e.lastIndexOf("\\");return t===0?e:~t===e.length-1?lw(e.substring(0,e.length-1)):e.substr(~t+1)}var sm=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Jc=class{static hasCaptures(e){return e===null?!1:(sm.lastIndex=0,sm.test(e))}static replaceCaptures(e,t,n){return e.replace(sm,(s,a,l,u)=>{let c=n[parseInt(a||l,10)];if(c){let d=t.substring(c.start,c.end);for(;d[0]===".";)d=d.substring(1);switch(u){case"downcase":return d.toLowerCase();case"upcase":return d.toUpperCase();default:return d}}else return s})}};function cw(e,t){return e<t?-1:e>t?1:0}function uw(e,t){if(e===null&&t===null)return 0;if(!e)return-1;if(!t)return 1;let n=e.length,s=t.length;if(n===s){for(let a=0;a<n;a++){let l=cw(e[a],t[a]);if(l!==0)return l}return 0}return n-s}function Wb(e){return!!(/^#[0-9a-f]{6}$/i.test(e)||/^#[0-9a-f]{8}$/i.test(e)||/^#[0-9a-f]{3}$/i.test(e)||/^#[0-9a-f]{4}$/i.test(e))}function dw(e){return e.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var hw=class{constructor(e){me(this,"cache",new Map);this.fn=e}get(e){if(this.cache.has(e))return this.cache.get(e);const t=this.fn(e);return this.cache.set(e,t),t}},vu=class{constructor(e,t,n){me(this,"_cachedMatchRoot",new hw(e=>this._root.match(e)));this._colorMap=e,this._defaults=t,this._root=n}static createFromRawTheme(e,t){return this.createFromParsedTheme(EO(e),t)}static createFromParsedTheme(e,t){return NO(e,t)}getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(e){if(e===null)return this._defaults;const t=e.scopeName,s=this._cachedMatchRoot.get(t).find(a=>CO(e.parent,a.parentScopes));return s?new fw(s.fontStyle,s.foreground,s.background):null}},im=class lu{constructor(t,n){this.parent=t,this.scopeName=n}static push(t,n){for(const s of n)t=new lu(t,s);return t}static from(...t){let n=null;for(let s=0;s<t.length;s++)n=new lu(n,t[s]);return n}push(t){return new lu(this,t)}getSegments(){let t=this;const n=[];for(;t;)n.push(t.scopeName),t=t.parent;return n.reverse(),n}toString(){return this.getSegments().join(" ")}extends(t){return this===t?!0:this.parent===null?!1:this.parent.extends(t)}getExtensionIfDefined(t){const n=[];let s=this;for(;s&&s!==t;)n.push(s.scopeName),s=s.parent;return s===t?n.reverse():void 0}};function CO(e,t){if(t.length===0)return!0;for(let n=0;n<t.length;n++){let s=t[n],a=!1;if(s===">"){if(n===t.length-1)return!1;s=t[++n],a=!0}for(;e&&!kO(e.scopeName,s);){if(a)return!1;e=e.parent}if(!e)return!1;e=e.parent}return!0}function kO(e,t){return t===e||e.startsWith(t)&&e[t.length]==="."}var fw=class{constructor(e,t,n){this.fontStyle=e,this.foregroundId=t,this.backgroundId=n}};function EO(e){if(!e)return[];if(!e.settings||!Array.isArray(e.settings))return[];let t=e.settings,n=[],s=0;for(let a=0,l=t.length;a<l;a++){let u=t[a];if(!u.settings)continue;let c;if(typeof u.scope=="string"){let p=u.scope;p=p.replace(/^[,]+/,""),p=p.replace(/[,]+$/,""),c=p.split(",")}else Array.isArray(u.scope)?c=u.scope:c=[""];let d=-1;if(typeof u.settings.fontStyle=="string"){d=0;let p=u.settings.fontStyle.split(" ");for(let _=0,x=p.length;_<x;_++)switch(p[_]){case"italic":d=d|1;break;case"bold":d=d|2;break;case"underline":d=d|4;break;case"strikethrough":d=d|8;break}}let f=null;typeof u.settings.foreground=="string"&&Wb(u.settings.foreground)&&(f=u.settings.foreground);let m=null;typeof u.settings.background=="string"&&Wb(u.settings.background)&&(m=u.settings.background);for(let p=0,_=c.length;p<_;p++){let w=c[p].trim().split(" "),C=w[w.length-1],v=null;w.length>1&&(v=w.slice(0,w.length-1),v.reverse()),n[s++]=new jO(C,v,a,d,f,m)}}return n}var jO=class{constructor(e,t,n,s,a,l){this.scope=e,this.parentScopes=t,this.index=n,this.fontStyle=s,this.foreground=a,this.background=l}},bn=(e=>(e[e.NotSet=-1]="NotSet",e[e.None=0]="None",e[e.Italic=1]="Italic",e[e.Bold=2]="Bold",e[e.Underline=4]="Underline",e[e.Strikethrough=8]="Strikethrough",e))(bn||{});function NO(e,t){e.sort((d,f)=>{let m=cw(d.scope,f.scope);return m!==0||(m=uw(d.parentScopes,f.parentScopes),m!==0)?m:d.index-f.index});let n=0,s="#000000",a="#ffffff";for(;e.length>=1&&e[0].scope==="";){let d=e.shift();d.fontStyle!==-1&&(n=d.fontStyle),d.foreground!==null&&(s=d.foreground),d.background!==null&&(a=d.background)}let l=new TO(t),u=new fw(n,l.getId(s),l.getId(a)),c=new LO(new Hm(0,null,-1,0,0),[]);for(let d=0,f=e.length;d<f;d++){let m=e[d];c.insert(0,m.scope,m.parentScopes,m.fontStyle,l.getId(m.foreground),l.getId(m.background))}return new vu(l,u,c)}var TO=class{constructor(e){me(this,"_isFrozen");me(this,"_lastColorId");me(this,"_id2color");me(this,"_color2id");if(this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null),Array.isArray(e)){this._isFrozen=!0;for(let t=0,n=e.length;t<n;t++)this._color2id[e[t]]=t,this._id2color[t]=e[t]}else this._isFrozen=!1}getId(e){if(e===null)return 0;e=e.toUpperCase();let t=this._color2id[e];if(t)return t;if(this._isFrozen)throw new Error(`Missing color in color map - ${e}`);return t=++this._lastColorId,this._color2id[e]=t,this._id2color[t]=e,t}getColorMap(){return this._id2color.slice(0)}},AO=Object.freeze([]),Hm=class mw{constructor(t,n,s,a,l){me(this,"scopeDepth");me(this,"parentScopes");me(this,"fontStyle");me(this,"foreground");me(this,"background");this.scopeDepth=t,this.parentScopes=n||AO,this.fontStyle=s,this.foreground=a,this.background=l}clone(){return new mw(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(t){let n=[];for(let s=0,a=t.length;s<a;s++)n[s]=t[s].clone();return n}acceptOverwrite(t,n,s,a){this.scopeDepth>t?console.log("how did this happen?"):this.scopeDepth=t,n!==-1&&(this.fontStyle=n),s!==0&&(this.foreground=s),a!==0&&(this.background=a)}},LO=class Um{constructor(t,n=[],s={}){me(this,"_rulesWithParentScopes");this._mainRule=t,this._children=s,this._rulesWithParentScopes=n}static _cmpBySpecificity(t,n){if(t.scopeDepth!==n.scopeDepth)return n.scopeDepth-t.scopeDepth;let s=0,a=0;for(;t.parentScopes[s]===">"&&s++,n.parentScopes[a]===">"&&a++,!(s>=t.parentScopes.length||a>=n.parentScopes.length);){const l=n.parentScopes[a].length-t.parentScopes[s].length;if(l!==0)return l;s++,a++}return n.parentScopes.length-t.parentScopes.length}match(t){if(t!==""){let s=t.indexOf("."),a,l;if(s===-1?(a=t,l=""):(a=t.substring(0,s),l=t.substring(s+1)),this._children.hasOwnProperty(a))return this._children[a].match(l)}const n=this._rulesWithParentScopes.concat(this._mainRule);return n.sort(Um._cmpBySpecificity),n}insert(t,n,s,a,l,u){if(n===""){this._doInsertHere(t,s,a,l,u);return}let c=n.indexOf("."),d,f;c===-1?(d=n,f=""):(d=n.substring(0,c),f=n.substring(c+1));let m;this._children.hasOwnProperty(d)?m=this._children[d]:(m=new Um(this._mainRule.clone(),Hm.cloneArr(this._rulesWithParentScopes)),this._children[d]=m),m.insert(t+1,f,s,a,l,u)}_doInsertHere(t,n,s,a,l){if(n===null){this._mainRule.acceptOverwrite(t,s,a,l);return}for(let u=0,c=this._rulesWithParentScopes.length;u<c;u++){let d=this._rulesWithParentScopes[u];if(uw(d.parentScopes,n)===0){d.acceptOverwrite(t,s,a,l);return}}s===-1&&(s=this._mainRule.fontStyle),a===0&&(a=this._mainRule.foreground),l===0&&(l=this._mainRule.background),this._rulesWithParentScopes.push(new Hm(t,n,s,a,l))}},za=class ar{static toBinaryStr(t){return t.toString(2).padStart(32,"0")}static print(t){const n=ar.getLanguageId(t),s=ar.getTokenType(t),a=ar.getFontStyle(t),l=ar.getForeground(t),u=ar.getBackground(t);console.log({languageId:n,tokenType:s,fontStyle:a,foreground:l,background:u})}static getLanguageId(t){return(t&255)>>>0}static getTokenType(t){return(t&768)>>>8}static containsBalancedBrackets(t){return(t&1024)!==0}static getFontStyle(t){return(t&30720)>>>11}static getForeground(t){return(t&16744448)>>>15}static getBackground(t){return(t&4278190080)>>>24}static set(t,n,s,a,l,u,c){let d=ar.getLanguageId(t),f=ar.getTokenType(t),m=ar.containsBalancedBrackets(t)?1:0,p=ar.getFontStyle(t),_=ar.getForeground(t),x=ar.getBackground(t);return n!==0&&(d=n),s!==8&&(f=s),a!==null&&(m=a?1:0),l!==-1&&(p=l),u!==0&&(_=u),c!==0&&(x=c),(d<<0|f<<8|m<<10|p<<11|_<<15|x<<24)>>>0}};function bu(e,t){const n=[],s=DO(e);let a=s.next();for(;a!==null;){let d=0;if(a.length===2&&a.charAt(1)===":"){switch(a.charAt(0)){case"R":d=1;break;case"L":d=-1;break;default:console.log(`Unknown priority ${a} in scope selector`)}a=s.next()}let f=u();if(n.push({matcher:f,priority:d}),a!==",")break;a=s.next()}return n;function l(){if(a==="-"){a=s.next();const d=l();return f=>!!d&&!d(f)}if(a==="("){a=s.next();const d=c();return a===")"&&(a=s.next()),d}if(qb(a)){const d=[];do d.push(a),a=s.next();while(qb(a));return f=>t(d,f)}return null}function u(){const d=[];let f=l();for(;f;)d.push(f),f=l();return m=>d.every(p=>p(m))}function c(){const d=[];let f=u();for(;f&&(d.push(f),a==="|"||a===",");){do a=s.next();while(a==="|"||a===",");f=u()}return m=>d.some(p=>p(m))}}function qb(e){return!!e&&!!e.match(/[\w\.:]+/)}function DO(e){let t=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,n=t.exec(e);return{next:()=>{if(!n)return null;const s=n[0];return n=t.exec(e),s}}}function pw(e){typeof e.dispose=="function"&&e.dispose()}var cl=class{constructor(e){this.scopeName=e}toKey(){return this.scopeName}},RO=class{constructor(e,t){this.scopeName=e,this.ruleName=t}toKey(){return`${this.scopeName}#${this.ruleName}`}},OO=class{constructor(){me(this,"_references",[]);me(this,"_seenReferenceKeys",new Set);me(this,"visitedRule",new Set)}get references(){return this._references}add(e){const t=e.toKey();this._seenReferenceKeys.has(t)||(this._seenReferenceKeys.add(t),this._references.push(e))}},MO=class{constructor(e,t){me(this,"seenFullScopeRequests",new Set);me(this,"seenPartialScopeRequests",new Set);me(this,"Q");this.repo=e,this.initialScopeName=t,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new cl(this.initialScopeName)]}processQueue(){const e=this.Q;this.Q=[];const t=new OO;for(const n of e)IO(n,this.initialScopeName,this.repo,t);for(const n of t.references)if(n instanceof cl){if(this.seenFullScopeRequests.has(n.scopeName))continue;this.seenFullScopeRequests.add(n.scopeName),this.Q.push(n)}else{if(this.seenFullScopeRequests.has(n.scopeName)||this.seenPartialScopeRequests.has(n.toKey()))continue;this.seenPartialScopeRequests.add(n.toKey()),this.Q.push(n)}}};function IO(e,t,n,s){const a=n.lookup(e.scopeName);if(!a){if(e.scopeName===t)throw new Error(`No grammar provided for <${t}>`);return}const l=n.lookup(t);e instanceof cl?cu({baseGrammar:l,selfGrammar:a},s):Fm(e.ruleName,{baseGrammar:l,selfGrammar:a,repository:a.repository},s);const u=n.injections(e.scopeName);if(u)for(const c of u)s.add(new cl(c))}function Fm(e,t,n){if(t.repository&&t.repository[e]){const s=t.repository[e];Su([s],t,n)}}function cu(e,t){e.selfGrammar.patterns&&Array.isArray(e.selfGrammar.patterns)&&Su(e.selfGrammar.patterns,{...e,repository:e.selfGrammar.repository},t),e.selfGrammar.injections&&Su(Object.values(e.selfGrammar.injections),{...e,repository:e.selfGrammar.repository},t)}function Su(e,t,n){for(const s of e){if(n.visitedRule.has(s))continue;n.visitedRule.add(s);const a=s.repository?ow({},t.repository,s.repository):t.repository;Array.isArray(s.patterns)&&Su(s.patterns,{...t,repository:a},n);const l=s.include;if(!l)continue;const u=gw(l);switch(u.kind){case 0:cu({...t,selfGrammar:t.baseGrammar},n);break;case 1:cu(t,n);break;case 2:Fm(u.ruleName,{...t,repository:a},n);break;case 3:case 4:const c=u.scopeName===t.selfGrammar.scopeName?t.selfGrammar:u.scopeName===t.baseGrammar.scopeName?t.baseGrammar:void 0;if(c){const d={baseGrammar:t.baseGrammar,selfGrammar:c,repository:a};u.kind===4?Fm(u.ruleName,d,n):cu(d,n)}else u.kind===4?n.add(new RO(u.scopeName,u.ruleName)):n.add(new cl(u.scopeName));break}}}var PO=class{constructor(){me(this,"kind",0)}},BO=class{constructor(){me(this,"kind",1)}},zO=class{constructor(e){me(this,"kind",2);this.ruleName=e}},$O=class{constructor(e){me(this,"kind",3);this.scopeName=e}},HO=class{constructor(e,t){me(this,"kind",4);this.scopeName=e,this.ruleName=t}};function gw(e){if(e==="$base")return new PO;if(e==="$self")return new BO;const t=e.indexOf("#");if(t===-1)return new $O(e);if(t===0)return new zO(e.substring(1));{const n=e.substring(0,t),s=e.substring(t+1);return new HO(n,s)}}var UO=/\\(\d+)/,Kb=/\\(\d+)/g,FO=-1,xw=-2;var Cl=class{constructor(e,t,n,s){me(this,"$location");me(this,"id");me(this,"_nameIsCapturing");me(this,"_name");me(this,"_contentNameIsCapturing");me(this,"_contentName");this.$location=e,this.id=t,this._name=n||null,this._nameIsCapturing=Jc.hasCaptures(this._name),this._contentName=s||null,this._contentNameIsCapturing=Jc.hasCaptures(this._contentName)}get debugName(){const e=this.$location?`${lw(this.$location.filename)}:${this.$location.line}`:"unknown";return`${this.constructor.name}#${this.id} @ ${e}`}getName(e,t){return!this._nameIsCapturing||this._name===null||e===null||t===null?this._name:Jc.replaceCaptures(this._name,e,t)}getContentName(e,t){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:Jc.replaceCaptures(this._contentName,e,t)}},VO=class extends Cl{constructor(t,n,s,a,l){super(t,n,s,a);me(this,"retokenizeCapturedWithRuleId");this.retokenizeCapturedWithRuleId=l}dispose(){}collectPatterns(t,n){throw new Error("Not supported!")}compile(t,n){throw new Error("Not supported!")}compileAG(t,n,s,a){throw new Error("Not supported!")}},GO=class extends Cl{constructor(t,n,s,a,l){super(t,n,s,null);me(this,"_match");me(this,"captures");me(this,"_cachedCompiledPatterns");this._match=new ul(a,this.id),this.captures=l,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(t,n){n.push(this._match)}compile(t,n){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,n,s,a){return this._getCachedCompiledPatterns(t).compileAG(t,s,a)}_getCachedCompiledPatterns(t){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new dl,this.collectPatterns(t,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Yb=class extends Cl{constructor(t,n,s,a,l){super(t,n,s,a);me(this,"hasMissingPatterns");me(this,"patterns");me(this,"_cachedCompiledPatterns");this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(t,n){for(const s of this.patterns)t.getRule(s).collectPatterns(t,n)}compile(t,n){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,n,s,a){return this._getCachedCompiledPatterns(t).compileAG(t,s,a)}_getCachedCompiledPatterns(t){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new dl,this.collectPatterns(t,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Vm=class extends Cl{constructor(t,n,s,a,l,u,c,d,f,m){super(t,n,s,a);me(this,"_begin");me(this,"beginCaptures");me(this,"_end");me(this,"endHasBackReferences");me(this,"endCaptures");me(this,"applyEndPatternLast");me(this,"hasMissingPatterns");me(this,"patterns");me(this,"_cachedCompiledPatterns");this._begin=new ul(l,this.id),this.beginCaptures=u,this._end=new ul(c||"￿",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=d,this.applyEndPatternLast=f||!1,this.patterns=m.patterns,this.hasMissingPatterns=m.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(t,n){return this._end.resolveBackReferences(t,n)}collectPatterns(t,n){n.push(this._begin)}compile(t,n){return this._getCachedCompiledPatterns(t,n).compile(t)}compileAG(t,n,s,a){return this._getCachedCompiledPatterns(t,n).compileAG(t,s,a)}_getCachedCompiledPatterns(t,n){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new dl;for(const s of this.patterns)t.getRule(s).collectPatterns(t,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,n):this._cachedCompiledPatterns.setSource(0,n)),this._cachedCompiledPatterns}},wu=class extends Cl{constructor(t,n,s,a,l,u,c,d,f){super(t,n,s,a);me(this,"_begin");me(this,"beginCaptures");me(this,"whileCaptures");me(this,"_while");me(this,"whileHasBackReferences");me(this,"hasMissingPatterns");me(this,"patterns");me(this,"_cachedCompiledPatterns");me(this,"_cachedCompiledWhilePatterns");this._begin=new ul(l,this.id),this.beginCaptures=u,this.whileCaptures=d,this._while=new ul(c,xw),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=f.patterns,this.hasMissingPatterns=f.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(t,n){return this._while.resolveBackReferences(t,n)}collectPatterns(t,n){n.push(this._begin)}compile(t,n){return this._getCachedCompiledPatterns(t).compile(t)}compileAG(t,n,s,a){return this._getCachedCompiledPatterns(t).compileAG(t,s,a)}_getCachedCompiledPatterns(t){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new dl;for(const n of this.patterns)t.getRule(n).collectPatterns(t,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(t,n){return this._getCachedCompiledWhilePatterns(t,n).compile(t)}compileWhileAG(t,n,s,a){return this._getCachedCompiledWhilePatterns(t,n).compileAG(t,s,a)}_getCachedCompiledWhilePatterns(t,n){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new dl,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,n||"￿"),this._cachedCompiledWhilePatterns}},_w=class vn{static createCaptureRule(t,n,s,a,l){return t.registerRule(u=>new VO(n,u,s,a,l))}static getCompiledRuleId(t,n,s){return t.id||n.registerRule(a=>{if(t.id=a,t.match)return new GO(t.$vscodeTextmateLocation,t.id,t.name,t.match,vn._compileCaptures(t.captures,n,s));if(typeof t.begin>"u"){t.repository&&(s=ow({},s,t.repository));let l=t.patterns;return typeof l>"u"&&t.include&&(l=[{include:t.include}]),new Yb(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,vn._compilePatterns(l,n,s))}return t.while?new wu(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,vn._compileCaptures(t.beginCaptures||t.captures,n,s),t.while,vn._compileCaptures(t.whileCaptures||t.captures,n,s),vn._compilePatterns(t.patterns,n,s)):new Vm(t.$vscodeTextmateLocation,t.id,t.name,t.contentName,t.begin,vn._compileCaptures(t.beginCaptures||t.captures,n,s),t.end,vn._compileCaptures(t.endCaptures||t.captures,n,s),t.applyEndPatternLast,vn._compilePatterns(t.patterns,n,s))}),t.id}static _compileCaptures(t,n,s){let a=[];if(t){let l=0;for(const u in t){if(u==="$vscodeTextmateLocation")continue;const c=parseInt(u,10);c>l&&(l=c)}for(let u=0;u<=l;u++)a[u]=null;for(const u in t){if(u==="$vscodeTextmateLocation")continue;const c=parseInt(u,10);let d=0;t[u].patterns&&(d=vn.getCompiledRuleId(t[u],n,s)),a[c]=vn.createCaptureRule(n,t[u].$vscodeTextmateLocation,t[u].name,t[u].contentName,d)}}return a}static _compilePatterns(t,n,s){let a=[];if(t)for(let l=0,u=t.length;l<u;l++){const c=t[l];let d=-1;if(c.include){const f=gw(c.include);switch(f.kind){case 0:case 1:d=vn.getCompiledRuleId(s[c.include],n,s);break;case 2:let m=s[f.ruleName];m&&(d=vn.getCompiledRuleId(m,n,s));break;case 3:case 4:const p=f.scopeName,_=f.kind===4?f.ruleName:null,x=n.getExternalGrammar(p,s);if(x)if(_){let w=x.repository[_];w&&(d=vn.getCompiledRuleId(w,n,x.repository))}else d=vn.getCompiledRuleId(x.repository.$self,n,x.repository);break}}else d=vn.getCompiledRuleId(c,n,s);if(d!==-1){const f=n.getRule(d);let m=!1;if((f instanceof Yb||f instanceof Vm||f instanceof wu)&&f.hasMissingPatterns&&f.patterns.length===0&&(m=!0),m)continue;a.push(d)}}return{patterns:a,hasMissingPatterns:(t?t.length:0)!==a.length}}},ul=class yw{constructor(t,n){me(this,"source");me(this,"ruleId");me(this,"hasAnchor");me(this,"hasBackReferences");me(this,"_anchorCache");if(t&&typeof t=="string"){const s=t.length;let a=0,l=[],u=!1;for(let c=0;c<s;c++)if(t.charAt(c)==="\\"&&c+1<s){const f=t.charAt(c+1);f==="z"?(l.push(t.substring(a,c)),l.push("$(?!\\n)(?<!\\n)"),a=c+2):(f==="A"||f==="G")&&(u=!0),c++}this.hasAnchor=u,a===0?this.source=t:(l.push(t.substring(a,s)),this.source=l.join(""))}else this.hasAnchor=!1,this.source=t;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=n,typeof this.source=="string"?this.hasBackReferences=UO.test(this.source):this.hasBackReferences=!1}clone(){return new yw(this.source,this.ruleId)}setSource(t){this.source!==t&&(this.source=t,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(t,n){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let s=n.map(a=>t.substring(a.start,a.end));return Kb.lastIndex=0,this.source.replace(Kb,(a,l)=>dw(s[parseInt(l,10)]||""))}_buildAnchorCache(){if(typeof this.source!="string")throw new Error("This method should only be called if the source is a string");let t=[],n=[],s=[],a=[],l,u,c,d;for(l=0,u=this.source.length;l<u;l++)c=this.source.charAt(l),t[l]=c,n[l]=c,s[l]=c,a[l]=c,c==="\\"&&l+1<u&&(d=this.source.charAt(l+1),d==="A"?(t[l+1]="￿",n[l+1]="￿",s[l+1]="A",a[l+1]="A"):d==="G"?(t[l+1]="￿",n[l+1]="G",s[l+1]="￿",a[l+1]="G"):(t[l+1]=d,n[l+1]=d,s[l+1]=d,a[l+1]=d),l++);return{A0_G0:t.join(""),A0_G1:n.join(""),A1_G0:s.join(""),A1_G1:a.join("")}}resolveAnchors(t,n){return!this.hasAnchor||!this._anchorCache||typeof this.source!="string"?this.source:t?n?this._anchorCache.A1_G1:this._anchorCache.A1_G0:n?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},dl=class{constructor(){me(this,"_items");me(this,"_hasAnchors");me(this,"_cached");me(this,"_anchorCache");this._items=[],this._hasAnchors=!1,this._cached=null,this._anchorCache={A0_G0:null,A0_G1:null,A1_G0:null,A1_G1:null}}dispose(){this._disposeCaches()}_disposeCaches(){this._cached&&(this._cached.dispose(),this._cached=null),this._anchorCache.A0_G0&&(this._anchorCache.A0_G0.dispose(),this._anchorCache.A0_G0=null),this._anchorCache.A0_G1&&(this._anchorCache.A0_G1.dispose(),this._anchorCache.A0_G1=null),this._anchorCache.A1_G0&&(this._anchorCache.A1_G0.dispose(),this._anchorCache.A1_G0=null),this._anchorCache.A1_G1&&(this._anchorCache.A1_G1.dispose(),this._anchorCache.A1_G1=null)}push(e){this._items.push(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}unshift(e){this._items.unshift(e),this._hasAnchors=this._hasAnchors||e.hasAnchor}length(){return this._items.length}setSource(e,t){this._items[e].source!==t&&(this._disposeCaches(),this._items[e].setSource(t))}compile(e){if(!this._cached){let t=this._items.map(n=>n.source);this._cached=new Xb(e,t,this._items.map(n=>n.ruleId))}return this._cached}compileAG(e,t,n){return this._hasAnchors?t?n?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(e,t,n)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(e,t,n)),this._anchorCache.A1_G0):n?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(e,t,n)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(e,t,n)),this._anchorCache.A0_G0):this.compile(e)}_resolveAnchors(e,t,n){let s=this._items.map(a=>a.resolveAnchors(t,n));return new Xb(e,s,this._items.map(a=>a.ruleId))}},Xb=class{constructor(e,t,n){me(this,"scanner");this.regExps=t,this.rules=n,this.scanner=e.createOnigScanner(t)}dispose(){typeof this.scanner.dispose=="function"&&this.scanner.dispose()}toString(){const e=[];for(let t=0,n=this.rules.length;t<n;t++)e.push(" - "+this.rules[t]+": "+this.regExps[t]);return e.join(`
125
+ `)}findNextMatchSync(e,t,n){const s=this.scanner.findNextMatchSync(e,t,n);return s?{ruleId:this.rules[s.index],captureIndices:s.captureIndices}:null}},am=class{constructor(e,t){this.languageId=e,this.tokenType=t}},ds,WO=(ds=class{constructor(t,n){me(this,"_defaultAttributes");me(this,"_embeddedLanguagesMatcher");me(this,"_getBasicScopeAttributes",new hw(t=>{const n=this._scopeToLanguage(t),s=this._toStandardTokenType(t);return new am(n,s)}));this._defaultAttributes=new am(t,8),this._embeddedLanguagesMatcher=new qO(Object.entries(n||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(t){return t===null?ds._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(t)}_scopeToLanguage(t){return this._embeddedLanguagesMatcher.match(t)||0}_toStandardTokenType(t){const n=t.match(ds.STANDARD_TOKEN_TYPE_REGEXP);if(!n)return 8;switch(n[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"meta.embedded":return 0}throw new Error("Unexpected match for standard token type!")}},me(ds,"_NULL_SCOPE_METADATA",new am(0,0)),me(ds,"STANDARD_TOKEN_TYPE_REGEXP",/\b(comment|string|regex|meta\.embedded)\b/),ds),qO=class{constructor(e){me(this,"values");me(this,"scopesRegExp");if(e.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(e);const t=e.map(([n,s])=>dw(n));t.sort(),t.reverse(),this.scopesRegExp=new RegExp(`^((${t.join(")|(")}))($|\\.)`,"")}}match(e){if(!this.scopesRegExp)return;const t=e.match(this.scopesRegExp);if(t)return this.values.get(t[1])}},Qb=class{constructor(e,t){this.stack=e,this.stoppedEarly=t}};function vw(e,t,n,s,a,l,u,c){const d=t.content.length;let f=!1,m=-1;if(u){const x=KO(e,t,n,s,a,l);a=x.stack,s=x.linePos,n=x.isFirstLine,m=x.anchorPosition}const p=Date.now();for(;!f;){if(c!==0&&Date.now()-p>c)return new Qb(a,!0);_()}return new Qb(a,!1);function _(){const x=YO(e,t,n,s,a,m);if(!x){l.produce(a,d),f=!0;return}const w=x.captureIndices,C=x.matchedRuleId,v=w&&w.length>0?w[0].end>s:!1;if(C===FO){const S=a.getRule(e);l.produce(a,w[0].start),a=a.withContentNameScopesList(a.nameScopesList),Zo(e,t,n,a,l,S.endCaptures,w),l.produce(a,w[0].end);const b=a;if(a=a.parent,m=b.getAnchorPos(),!v&&b.getEnterPos()===s){a=b,l.produce(a,d),f=!0;return}}else{const S=e.getRule(C);l.produce(a,w[0].start);const b=a,y=S.getName(t.content,w),E=a.contentNameScopesList.pushAttributed(y,e);if(a=a.push(C,s,m,w[0].end===d,null,E,E),S instanceof Vm){const N=S;Zo(e,t,n,a,l,N.beginCaptures,w),l.produce(a,w[0].end),m=w[0].end;const T=N.getContentName(t.content,w),L=E.pushAttributed(T,e);if(a=a.withContentNameScopesList(L),N.endHasBackReferences&&(a=a.withEndRule(N.getEndWithResolvedBackReferences(t.content,w))),!v&&b.hasSameRuleAs(a)){a=a.pop(),l.produce(a,d),f=!0;return}}else if(S instanceof wu){const N=S;Zo(e,t,n,a,l,N.beginCaptures,w),l.produce(a,w[0].end),m=w[0].end;const T=N.getContentName(t.content,w),L=E.pushAttributed(T,e);if(a=a.withContentNameScopesList(L),N.whileHasBackReferences&&(a=a.withEndRule(N.getWhileWithResolvedBackReferences(t.content,w))),!v&&b.hasSameRuleAs(a)){a=a.pop(),l.produce(a,d),f=!0;return}}else if(Zo(e,t,n,a,l,S.captures,w),l.produce(a,w[0].end),a=a.pop(),!v){a=a.safePop(),l.produce(a,d),f=!0;return}}w[0].end>s&&(s=w[0].end,n=!1)}}function KO(e,t,n,s,a,l){let u=a.beginRuleCapturedEOL?0:-1;const c=[];for(let d=a;d;d=d.pop()){const f=d.getRule(e);f instanceof wu&&c.push({rule:f,stack:d})}for(let d=c.pop();d;d=c.pop()){const{ruleScanner:f,findOptions:m}=JO(d.rule,e,d.stack.endRule,n,s===u),p=f.findNextMatchSync(t,s,m);if(p){if(p.ruleId!==xw){a=d.stack.pop();break}p.captureIndices&&p.captureIndices.length&&(l.produce(d.stack,p.captureIndices[0].start),Zo(e,t,n,d.stack,l,d.rule.whileCaptures,p.captureIndices),l.produce(d.stack,p.captureIndices[0].end),u=p.captureIndices[0].end,p.captureIndices[0].end>s&&(s=p.captureIndices[0].end,n=!1))}else{a=d.stack.pop();break}}return{stack:a,linePos:s,anchorPosition:u,isFirstLine:n}}function YO(e,t,n,s,a,l){const u=XO(e,t,n,s,a,l),c=e.getInjections();if(c.length===0)return u;const d=QO(c,e,t,n,s,a,l);if(!d)return u;if(!u)return d;const f=u.captureIndices[0].start,m=d.captureIndices[0].start;return m<f||d.priorityMatch&&m===f?d:u}function XO(e,t,n,s,a,l){const u=a.getRule(e),{ruleScanner:c,findOptions:d}=bw(u,e,a.endRule,n,s===l),f=c.findNextMatchSync(t,s,d);return f?{captureIndices:f.captureIndices,matchedRuleId:f.ruleId}:null}function QO(e,t,n,s,a,l,u){let c=Number.MAX_VALUE,d=null,f,m=0;const p=l.contentNameScopesList.getScopeNames();for(let _=0,x=e.length;_<x;_++){const w=e[_];if(!w.matcher(p))continue;const C=t.getRule(w.ruleId),{ruleScanner:v,findOptions:S}=bw(C,t,null,s,a===u),b=v.findNextMatchSync(n,a,S);if(!b)continue;const y=b.captureIndices[0].start;if(!(y>=c)&&(c=y,d=b.captureIndices,f=b.ruleId,m=w.priority,c===a))break}return d?{priorityMatch:m===-1,captureIndices:d,matchedRuleId:f}:null}function bw(e,t,n,s,a){return{ruleScanner:e.compileAG(t,n,s,a),findOptions:0}}function JO(e,t,n,s,a){return{ruleScanner:e.compileWhileAG(t,n,s,a),findOptions:0}}function Zo(e,t,n,s,a,l,u){if(l.length===0)return;const c=t.content,d=Math.min(l.length,u.length),f=[],m=u[0].end;for(let p=0;p<d;p++){const _=l[p];if(_===null)continue;const x=u[p];if(x.length===0)continue;if(x.start>m)break;for(;f.length>0&&f[f.length-1].endPos<=x.start;)a.produceFromScopes(f[f.length-1].scopes,f[f.length-1].endPos),f.pop();if(f.length>0?a.produceFromScopes(f[f.length-1].scopes,x.start):a.produce(s,x.start),_.retokenizeCapturedWithRuleId){const C=_.getName(c,u),v=s.contentNameScopesList.pushAttributed(C,e),S=_.getContentName(c,u),b=v.pushAttributed(S,e),y=s.push(_.retokenizeCapturedWithRuleId,x.start,-1,!1,null,v,b),E=e.createOnigString(c.substring(0,x.end));vw(e,E,n&&x.start===0,x.start,y,a,!1,0),pw(E);continue}const w=_.getName(c,u);if(w!==null){const v=(f.length>0?f[f.length-1].scopes:s.contentNameScopesList).pushAttributed(w,e);f.push(new ZO(v,x.end))}}for(;f.length>0;)a.produceFromScopes(f[f.length-1].scopes,f[f.length-1].endPos),f.pop()}var ZO=class{constructor(e,t){me(this,"scopes");me(this,"endPos");this.scopes=e,this.endPos=t}};function e4(e,t,n,s,a,l,u,c){return new n4(e,t,n,s,a,l,u,c)}function Jb(e,t,n,s,a){const l=bu(t,Cu),u=_w.getCompiledRuleId(n,s,a.repository);for(const c of l)e.push({debugSelector:t,matcher:c.matcher,ruleId:u,grammar:a,priority:c.priority})}function Cu(e,t){if(t.length<e.length)return!1;let n=0;return e.every(s=>{for(let a=n;a<t.length;a++)if(t4(t[a],s))return n=a+1,!0;return!1})}function t4(e,t){if(!e)return!1;if(e===t)return!0;const n=t.length;return e.length>n&&e.substr(0,n)===t&&e[n]==="."}var n4=class{constructor(e,t,n,s,a,l,u,c){me(this,"_rootId");me(this,"_lastRuleId");me(this,"_ruleId2desc");me(this,"_includedGrammars");me(this,"_grammarRepository");me(this,"_grammar");me(this,"_injections");me(this,"_basicScopeAttributesProvider");me(this,"_tokenTypeMatchers");if(this._rootScopeName=e,this.balancedBracketSelectors=l,this._onigLib=c,this._basicScopeAttributesProvider=new WO(n,s),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=u,this._grammar=Zb(t,null),this._injections=null,this._tokenTypeMatchers=[],a)for(const d of Object.keys(a)){const f=bu(d,Cu);for(const m of f)this._tokenTypeMatchers.push({matcher:m.matcher,type:a[d]})}}get themeProvider(){return this._grammarRepository}dispose(){for(const e of this._ruleId2desc)e&&e.dispose()}createOnigScanner(e){return this._onigLib.createOnigScanner(e)}createOnigString(e){return this._onigLib.createOnigString(e)}getMetadataForScope(e){return this._basicScopeAttributesProvider.getBasicScopeAttributes(e)}_collectInjections(){const e={lookup:a=>a===this._rootScopeName?this._grammar:this.getExternalGrammar(a),injections:a=>this._grammarRepository.injections(a)},t=[],n=this._rootScopeName,s=e.lookup(n);if(s){const a=s.injections;if(a)for(let u in a)Jb(t,u,a[u],this,s);const l=this._grammarRepository.injections(n);l&&l.forEach(u=>{const c=this.getExternalGrammar(u);if(c){const d=c.injectionSelector;d&&Jb(t,d,c,this,c)}})}return t.sort((a,l)=>a.priority-l.priority),t}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(e){const t=++this._lastRuleId,n=e(t);return this._ruleId2desc[t]=n,n}getRule(e){return this._ruleId2desc[e]}getExternalGrammar(e,t){if(this._includedGrammars[e])return this._includedGrammars[e];if(this._grammarRepository){const n=this._grammarRepository.lookup(e);if(n)return this._includedGrammars[e]=Zb(n,t&&t.$base),this._includedGrammars[e]}}tokenizeLine(e,t,n=0){const s=this._tokenize(e,t,!1,n);return{tokens:s.lineTokens.getResult(s.ruleStack,s.lineLength),ruleStack:s.ruleStack,stoppedEarly:s.stoppedEarly}}tokenizeLine2(e,t,n=0){const s=this._tokenize(e,t,!0,n);return{tokens:s.lineTokens.getBinaryResult(s.ruleStack,s.lineLength),ruleStack:s.ruleStack,stoppedEarly:s.stoppedEarly}}_tokenize(e,t,n,s){this._rootId===-1&&(this._rootId=_w.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let a;if(!t||t===Gm.NULL){a=!0;const f=this._basicScopeAttributesProvider.getDefaultAttributes(),m=this.themeProvider.getDefaults(),p=za.set(0,f.languageId,f.tokenType,null,m.fontStyle,m.foregroundId,m.backgroundId),_=this.getRule(this._rootId).getName(null,null);let x;_?x=sl.createRootAndLookUpScopeName(_,p,this):x=sl.createRoot("unknown",p),t=new Gm(null,this._rootId,-1,-1,!1,null,x,x)}else a=!1,t.reset();e=e+`
126
+ `;const l=this.createOnigString(e),u=l.content.length,c=new s4(n,e,this._tokenTypeMatchers,this.balancedBracketSelectors),d=vw(this,l,a,0,t,c,!0,s);return pw(l),{lineLength:u,lineTokens:c,ruleStack:d.stack,stoppedEarly:d.stoppedEarly}}};function Zb(e,t){return e=bO(e),e.repository=e.repository||{},e.repository.$self={$vscodeTextmateLocation:e.$vscodeTextmateLocation,patterns:e.patterns,name:e.scopeName},e.repository.$base=t||e.repository.$self,e}var sl=class Rr{constructor(t,n,s){this.parent=t,this.scopePath=n,this.tokenAttributes=s}static fromExtension(t,n){let s=t,a=(t==null?void 0:t.scopePath)??null;for(const l of n)a=im.push(a,l.scopeNames),s=new Rr(s,a,l.encodedTokenAttributes);return s}static createRoot(t,n){return new Rr(null,new im(null,t),n)}static createRootAndLookUpScopeName(t,n,s){const a=s.getMetadataForScope(t),l=new im(null,t),u=s.themeProvider.themeMatch(l),c=Rr.mergeAttributes(n,a,u);return new Rr(null,l,c)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(t){return Rr.equals(this,t)}static equals(t,n){do{if(t===n||!t&&!n)return!0;if(!t||!n||t.scopeName!==n.scopeName||t.tokenAttributes!==n.tokenAttributes)return!1;t=t.parent,n=n.parent}while(!0)}static mergeAttributes(t,n,s){let a=-1,l=0,u=0;return s!==null&&(a=s.fontStyle,l=s.foregroundId,u=s.backgroundId),za.set(t,n.languageId,n.tokenType,null,a,l,u)}pushAttributed(t,n){if(t===null)return this;if(t.indexOf(" ")===-1)return Rr._pushAttributed(this,t,n);const s=t.split(/ /g);let a=this;for(const l of s)a=Rr._pushAttributed(a,l,n);return a}static _pushAttributed(t,n,s){const a=s.getMetadataForScope(n),l=t.scopePath.push(n),u=s.themeProvider.themeMatch(l),c=Rr.mergeAttributes(t.tokenAttributes,a,u);return new Rr(t,l,c)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(t){var a;const n=[];let s=this;for(;s&&s!==t;)n.push({encodedTokenAttributes:s.tokenAttributes,scopeNames:s.scopePath.getExtensionIfDefined(((a=s.parent)==null?void 0:a.scopePath)??null)}),s=s.parent;return s===t?n.reverse():void 0}},lr,Gm=(lr=class{constructor(t,n,s,a,l,u,c,d){me(this,"_stackElementBrand");me(this,"_enterPos");me(this,"_anchorPos");me(this,"depth");this.parent=t,this.ruleId=n,this.beginRuleCapturedEOL=l,this.endRule=u,this.nameScopesList=c,this.contentNameScopesList=d,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=s,this._anchorPos=a}equals(t){return t===null?!1:lr._equals(this,t)}static _equals(t,n){return t===n?!0:this._structuralEquals(t,n)?sl.equals(t.contentNameScopesList,n.contentNameScopesList):!1}static _structuralEquals(t,n){do{if(t===n||!t&&!n)return!0;if(!t||!n||t.depth!==n.depth||t.ruleId!==n.ruleId||t.endRule!==n.endRule)return!1;t=t.parent,n=n.parent}while(!0)}clone(){return this}static _reset(t){for(;t;)t._enterPos=-1,t._anchorPos=-1,t=t.parent}reset(){lr._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(t,n,s,a,l,u,c){return new lr(this,t,n,s,a,l,u,c)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(t){return t.getRule(this.ruleId)}toString(){const t=[];return this._writeString(t,0),"["+t.join(",")+"]"}_writeString(t,n){var s,a;return this.parent&&(n=this.parent._writeString(t,n)),t[n++]=`(${this.ruleId}, ${(s=this.nameScopesList)==null?void 0:s.toString()}, ${(a=this.contentNameScopesList)==null?void 0:a.toString()})`,n}withContentNameScopesList(t){return this.contentNameScopesList===t?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,t)}withEndRule(t){return this.endRule===t?this:new lr(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,t,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(t){let n=this;for(;n&&n._enterPos===t._enterPos;){if(n.ruleId===t.ruleId)return!0;n=n.parent}return!1}toStateStackFrame(){var t,n,s;return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:((n=this.nameScopesList)==null?void 0:n.getExtensionIfDefined(((t=this.parent)==null?void 0:t.nameScopesList)??null))??[],contentNameScopesList:((s=this.contentNameScopesList)==null?void 0:s.getExtensionIfDefined(this.nameScopesList))??[]}}static pushFrame(t,n){const s=sl.fromExtension((t==null?void 0:t.nameScopesList)??null,n.nameScopesList);return new lr(t,n.ruleId,n.enterPos??-1,n.anchorPos??-1,n.beginRuleCapturedEOL,n.endRule,s,sl.fromExtension(s,n.contentNameScopesList))}},me(lr,"NULL",new lr(null,0,0,0,!1,null,null,null)),lr),r4=class{constructor(e,t){me(this,"balancedBracketScopes");me(this,"unbalancedBracketScopes");me(this,"allowAny",!1);this.balancedBracketScopes=e.flatMap(n=>n==="*"?(this.allowAny=!0,[]):bu(n,Cu).map(s=>s.matcher)),this.unbalancedBracketScopes=t.flatMap(n=>bu(n,Cu).map(s=>s.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(e){for(const t of this.unbalancedBracketScopes)if(t(e))return!1;for(const t of this.balancedBracketScopes)if(t(e))return!0;return this.allowAny}},s4=class{constructor(e,t,n,s){me(this,"_emitBinaryTokens");me(this,"_lineText");me(this,"_tokens");me(this,"_binaryTokens");me(this,"_lastTokenEndIndex");me(this,"_tokenTypeOverrides");this.balancedBracketSelectors=s,this._emitBinaryTokens=e,this._tokenTypeOverrides=n,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}produce(e,t){this.produceFromScopes(e.contentNameScopesList,t)}produceFromScopes(e,t){var s;if(this._lastTokenEndIndex>=t)return;if(this._emitBinaryTokens){let a=(e==null?void 0:e.tokenAttributes)??0,l=!1;if((s=this.balancedBracketSelectors)!=null&&s.matchesAlways&&(l=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){const u=(e==null?void 0:e.getScopeNames())??[];for(const c of this._tokenTypeOverrides)c.matcher(u)&&(a=za.set(a,0,c.type,null,-1,0,0));this.balancedBracketSelectors&&(l=this.balancedBracketSelectors.match(u))}if(l&&(a=za.set(a,0,8,l,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===a){this._lastTokenEndIndex=t;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(a),this._lastTokenEndIndex=t;return}const n=(e==null?void 0:e.getScopeNames())??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:t,scopes:n}),this._lastTokenEndIndex=t}getResult(e,t){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===t-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(e,t){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===t-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(e,t),this._binaryTokens[this._binaryTokens.length-2]=0);const n=new Uint32Array(this._binaryTokens.length);for(let s=0,a=this._binaryTokens.length;s<a;s++)n[s]=this._binaryTokens[s];return n}},i4=class{constructor(e,t){me(this,"_grammars",new Map);me(this,"_rawGrammars",new Map);me(this,"_injectionGrammars",new Map);me(this,"_theme");this._onigLib=t,this._theme=e}dispose(){for(const e of this._grammars.values())e.dispose()}setTheme(e){this._theme=e}getColorMap(){return this._theme.getColorMap()}addGrammar(e,t){this._rawGrammars.set(e.scopeName,e),t&&this._injectionGrammars.set(e.scopeName,t)}lookup(e){return this._rawGrammars.get(e)}injections(e){return this._injectionGrammars.get(e)}getDefaults(){return this._theme.getDefaults()}themeMatch(e){return this._theme.match(e)}grammarForScopeName(e,t,n,s,a){if(!this._grammars.has(e)){let l=this._rawGrammars.get(e);if(!l)return null;this._grammars.set(e,e4(e,l,t,n,s,a,this,this._onigLib))}return this._grammars.get(e)}},a4=class{constructor(t){me(this,"_options");me(this,"_syncRegistry");me(this,"_ensureGrammarCache");this._options=t,this._syncRegistry=new i4(vu.createFromRawTheme(t.theme,t.colorMap),t.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(t,n){this._syncRegistry.setTheme(vu.createFromRawTheme(t,n))}getColorMap(){return this._syncRegistry.getColorMap()}loadGrammarWithEmbeddedLanguages(t,n,s){return this.loadGrammarWithConfiguration(t,n,{embeddedLanguages:s})}loadGrammarWithConfiguration(t,n,s){return this._loadGrammar(t,n,s.embeddedLanguages,s.tokenTypes,new r4(s.balancedBracketSelectors||[],s.unbalancedBracketSelectors||[]))}loadGrammar(t){return this._loadGrammar(t,0,null,null,null)}_loadGrammar(t,n,s,a,l){const u=new MO(this._syncRegistry,t);for(;u.Q.length>0;)u.Q.map(c=>this._loadSingleGrammar(c.scopeName)),u.processQueue();return this._grammarForScopeName(t,n,s,a,l)}_loadSingleGrammar(t){this._ensureGrammarCache.has(t)||(this._doLoadSingleGrammar(t),this._ensureGrammarCache.set(t,!0))}_doLoadSingleGrammar(t){const n=this._options.loadGrammar(t);if(n){const s=typeof this._options.getInjections=="function"?this._options.getInjections(t):void 0;this._syncRegistry.addGrammar(n,s)}}addGrammar(t,n=[],s=0,a=null){return this._syncRegistry.addGrammar(t,n),this._grammarForScopeName(t.scopeName,s,a)}_grammarForScopeName(t,n=0,s=null,a=null,l=null){return this._syncRegistry.grammarForScopeName(t,n,s,a,l)}},Wm=Gm.NULL;function ku(e,t){const n=typeof e=="string"?{}:{...e.colorReplacements},s=typeof e=="string"?e:e.name;for(const[a,l]of Object.entries((t==null?void 0:t.colorReplacements)||{}))typeof l=="string"?n[a]=l:a===s&&Object.assign(n,l);return n}function qs(e,t){return e&&((t==null?void 0:t[e==null?void 0:e.toLowerCase()])||e)}function o4(e){return Array.isArray(e)?e:[e]}async function Sw(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function nd(e){return!e||["plaintext","txt","text","plain"].includes(e)}function ww(e){return e==="ansi"||nd(e)}function rd(e){return e==="none"}function Cw(e){return rd(e)}const l4=/(\r?\n)/g;function sd(e,t=!1){var l;if(e.length===0)return[["",0]];const n=e.split(l4);let s=0;const a=[];for(let u=0;u<n.length;u+=2){const c=t?n[u]+(n[u+1]||""):n[u];a.push([c,s]),s+=n[u].length,s+=((l=n[u+1])==null?void 0:l.length)||0}return a}const e0={light:"#333333",dark:"#bbbbbb"},t0={light:"#fffffe",dark:"#1e1e1e"},n0="__shiki_resolved";function Qp(e){var c,d,f,m,p;if(e!=null&&e[n0])return e;const t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||(t.type="dark"),t.colorReplacements={...t.colorReplacements},t.settings||(t.settings=[]);let{bg:n,fg:s}=t;if(!n||!s){const _=t.settings?t.settings.find(x=>!x.name&&!x.scope):void 0;(c=_==null?void 0:_.settings)!=null&&c.foreground&&(s=_.settings.foreground),(d=_==null?void 0:_.settings)!=null&&d.background&&(n=_.settings.background),!s&&((f=t==null?void 0:t.colors)!=null&&f["editor.foreground"])&&(s=t.colors["editor.foreground"]),!n&&((m=t==null?void 0:t.colors)!=null&&m["editor.background"])&&(n=t.colors["editor.background"]),s||(s=t.type==="light"?e0.light:e0.dark),n||(n=t.type==="light"?t0.light:t0.dark),t.fg=s,t.bg=n}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let a=0;const l=new Map;function u(_){var w;if(l.has(_))return l.get(_);a+=1;const x=`#${a.toString(16).padStart(8,"0").toLowerCase()}`;return(w=t.colorReplacements)!=null&&w[`#${x}`]?u(_):(l.set(_,x),x)}t.settings=t.settings.map(_=>{var v,S;const x=((v=_.settings)==null?void 0:v.foreground)&&!_.settings.foreground.startsWith("#"),w=((S=_.settings)==null?void 0:S.background)&&!_.settings.background.startsWith("#");if(!x&&!w)return _;const C={..._,settings:{..._.settings}};if(x){const b=u(_.settings.foreground);t.colorReplacements[b]=_.settings.foreground,C.settings.foreground=b}if(w){const b=u(_.settings.background);t.colorReplacements[b]=_.settings.background,C.settings.background=b}return C});for(const _ of Object.keys(t.colors||{}))if((_==="editor.foreground"||_==="editor.background"||_.startsWith("terminal.ansi"))&&!((p=t.colors[_])!=null&&p.startsWith("#"))){const x=u(t.colors[_]);t.colorReplacements[x]=t.colors[_],t.colors[_]=x}return Object.defineProperty(t,n0,{enumerable:!1,writable:!1,value:!0}),t}async function kw(e){return[...new Set((await Promise.all(e.filter(t=>!ww(t)).map(async t=>await Sw(t).then(n=>Array.isArray(n)?n:[n])))).flat())]}async function Ew(e){return(await Promise.all(e.map(async t=>Cw(t)?null:Qp(await Sw(t))))).filter(t=>!!t)}function jw(e,t){if(!t)return e;if(t[e]){const n=new Set([e]);for(;t[e];){if(e=t[e],n.has(e))throw new Dt(`Circular alias \`${[...n].join(" -> ")} -> ${e}\``);n.add(e)}}return e}var c4=class extends a4{constructor(t,n,s,a={}){super(t);me(this,"_resolver");me(this,"_themes");me(this,"_langs");me(this,"_alias");me(this,"_resolvedThemes",new Map);me(this,"_resolvedGrammars",new Map);me(this,"_langMap",new Map);me(this,"_langGraph",new Map);me(this,"_textmateThemeCache",new WeakMap);me(this,"_loadedThemesCache",null);me(this,"_loadedLanguagesCache",null);this._resolver=t,this._themes=n,this._langs=s,this._alias=a,this._themes.map(l=>this.loadTheme(l)),this.loadLanguages(this._langs)}getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){const n=Qp(t);return n.name&&(this._resolvedThemes.set(n.name,n),this._loadedThemesCache=null),n}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(t){let n=this._textmateThemeCache.get(t);n||(n=vu.createFromRawTheme(t),this._textmateThemeCache.set(t,n)),this._syncRegistry.setTheme(n)}getGrammar(t){return t=jw(t,this._alias),this._resolvedGrammars.get(t)}loadLanguage(t){var l,u,c,d;if(this.getGrammar(t.name))return;const n=new Set([...this._langMap.values()].filter(f=>{var m;return(m=f.embeddedLangsLazy)==null?void 0:m.includes(t.name)}));this._resolver.addLanguage(t);const s={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);const a=this.loadGrammarWithConfiguration(t.scopeName,1,s);if(a.name=t.name,this._resolvedGrammars.set(t.name,a),t.aliases&&t.aliases.forEach(f=>{this._alias[f]=t.name}),this._loadedLanguagesCache=null,n.size)for(const f of n)this._resolvedGrammars.delete(f.name),this._loadedLanguagesCache=null,(u=(l=this._syncRegistry)==null?void 0:l._injectionGrammars)==null||u.delete(f.scopeName),(d=(c=this._syncRegistry)==null?void 0:c._grammars)==null||d.delete(f.scopeName),this.loadLanguage(this._langMap.get(f.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(const a of t)this.resolveEmbeddedLanguages(a);const n=[...this._langGraph.entries()],s=n.filter(([a,l])=>!l);if(s.length){const a=n.filter(([l,u])=>{var c;return u?(c=u.embeddedLanguages||u.embeddedLangs)==null?void 0:c.some(d=>s.map(([f])=>f).includes(d)):!1}).filter(l=>!s.includes(l));throw new Dt(`Missing languages ${s.map(([l])=>`\`${l}\``).join(", ")}, required by ${a.map(([l])=>`\`${l}\``).join(", ")}`)}for(const[a,l]of n)this._resolver.addLanguage(l);for(const[a,l]of n)this.loadLanguage(l)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){this._langMap.set(t.name,t),this._langGraph.set(t.name,t);const n=t.embeddedLanguages??t.embeddedLangs;if(n)for(const s of n)this._langGraph.set(s,this._langMap.get(s))}},u4=class{constructor(e,t){me(this,"_langs",new Map);me(this,"_scopeToLang",new Map);me(this,"_injections",new Map);me(this,"_onigLib");this._onigLib={createOnigScanner:n=>e.createScanner(n),createOnigString:n=>e.createString(n)},t.forEach(n=>this.addLanguage(n))}get onigLib(){return this._onigLib}getLangRegistration(e){return this._langs.get(e)}loadGrammar(e){return this._scopeToLang.get(e)}addLanguage(e){this._langs.set(e.name,e),e.aliases&&e.aliases.forEach(t=>{this._langs.set(t,e)}),this._scopeToLang.set(e.scopeName,e),e.injectTo&&e.injectTo.forEach(t=>{this._injections.get(t)||this._injections.set(t,[]),this._injections.get(t).push(e.scopeName)})}getInjections(e){const t=e.split(".");let n=[];for(let s=1;s<=t.length;s++){const a=t.slice(0,s).join(".");n=[...n,...this._injections.get(a)||[]]}return n}};let Ko=0;function d4(e){Ko+=1,e.warnings!==!1&&Ko>=10&&Ko%10===0&&console.warn(`[Shiki] ${Ko} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new Dt("`engine` option is required for synchronous mode");const n=(e.langs||[]).flat(1),s=(e.themes||[]).flat(1).map(Qp),a=new c4(new u4(e.engine,n),s,n,e.langAlias);let l;function u(b){return jw(b,e.langAlias)}function c(b){v();const y=a.getGrammar(typeof b=="string"?b:b.name);if(!y)throw new Dt(`Language \`${b}\` not found, you may need to load it first`);return y}function d(b){if(b==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};v();const y=a.getTheme(b);if(!y)throw new Dt(`Theme \`${b}\` not found, you may need to load it first`);return y}function f(b){v();const y=d(b);return l!==b&&(a.setTheme(y),l=b),{theme:y,colorMap:a.getColorMap()}}function m(){return v(),a.getLoadedThemes()}function p(){return v(),a.getLoadedLanguages()}function _(...b){v(),a.loadLanguages(b.flat(1))}async function x(...b){return _(await kw(b))}function w(...b){v();for(const y of b.flat(1))a.loadTheme(y)}async function C(...b){return v(),w(await Ew(b))}function v(){if(t)throw new Dt("Shiki instance has been disposed")}function S(){t||(t=!0,a.dispose(),Ko-=1)}return{setTheme:f,getTheme:d,getLanguage:c,getLoadedThemes:m,getLoadedLanguages:p,resolveLangAlias:u,loadLanguage:x,loadLanguageSync:_,loadTheme:C,loadThemeSync:w,dispose:S,[Symbol.dispose]:S}}async function h4(e){e.engine||console.warn("`engine` option is required. Use `createOnigurumaEngine` or `createJavaScriptRegexEngine` to create an engine.");const[t,n,s]=await Promise.all([Ew(e.themes||[]),kw(e.langs||[]),e.engine]);return d4({...e,themes:t,langs:n,engine:s})}const Nw=new WeakMap;function id(e,t){Nw.set(e,t)}function hl(e){return Nw.get(e)}var ad=class Tw{constructor(...t){me(this,"_stacks",{});me(this,"lang");if(t.length===2){const[n,s]=t;this.lang=s,this._stacks=n}else{const[n,s,a]=t;this.lang=s,this._stacks={[a]:n}}}get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,n){return new Tw(Object.fromEntries(o4(n).map(s=>[s,Wm])),t)}getInternalStack(t=this.theme){return this._stacks[t]}getScopes(t=this.theme){return f4(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.getScopes()}}};function f4(e){const t=[],n=new Set;function s(a){var u;if(n.has(a))return;n.add(a);const l=(u=a==null?void 0:a.nameScopesList)==null?void 0:u.scopeName;l&&t.push(l),a.parent&&s(a.parent)}return s(e),t}function m4(e,t){if(!(e instanceof ad))throw new Dt("Invalid grammar state");return e.getInternalStack(t)}const p4=/,/,g4=/ /;function Aw(e,t,n={}){const{theme:s=e.getLoadedThemes()[0]}=n;if(nd(e.resolveLangAlias(n.lang||"text"))||rd(s))return sd(t).map(c=>[{content:c[0],offset:c[1]}]);const{theme:a,colorMap:l}=e.setTheme(s),u=e.getLanguage(n.lang||"text");if(n.grammarState){if(n.grammarState.lang!==u.name)throw new Dt(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${u.name}"`);if(!n.grammarState.themes.includes(a.name))throw new Dt(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${a.name}"`)}return _4(t,u,a,l,n)}function x4(...e){if(e.length===2)return hl(e[1]);const[t,n,s={}]=e,{lang:a="text",theme:l=t.getLoadedThemes()[0]}=s;if(nd(a)||rd(l))throw new Dt("Plain language does not have grammar state");if(a==="ansi")throw new Dt("ANSI language does not have grammar state");const{theme:u,colorMap:c}=t.setTheme(l),d=t.getLanguage(a);return new ad(Jp(n,d,u,c,s).stateStack,d.name,u.name)}function _4(e,t,n,s,a){const l=Jp(e,t,n,s,a),u=new ad(l.stateStack,t.name,n.name);return id(l.tokens,u),l.tokens}function Jp(e,t,n,s,a){const l=ku(n,a),{tokenizeMaxLineLength:u=0,tokenizeTimeLimit:c=500}=a,d=sd(e);let f=a.grammarState?m4(a.grammarState,n.name)??Wm:a.grammarContextCode!=null?Jp(a.grammarContextCode,t,n,s,{...a,grammarState:void 0,grammarContextCode:void 0}).stateStack:Wm,m=[];const p=[];for(let _=0,x=d.length;_<x;_++){const[w,C]=d[_];if(w===""){m=[],p.push([]);continue}if(u>0&&w.length>=u){m=[],p.push([{content:w,offset:C,color:"",fontStyle:0}]);continue}let v,S,b;a.includeExplanation&&(v=t.tokenizeLine(w,f,c),S=v.tokens,b=0);const y=t.tokenizeLine2(w,f,c),E=y.tokens.length/2;for(let N=0;N<E;N++){const T=y.tokens[2*N],L=N+1<E?y.tokens[2*N+2]:w.length;if(T===L)continue;const A=y.tokens[2*N+1],R=qs(s[za.getForeground(A)],l),M=za.getFontStyle(A),G={content:w.substring(T,L),offset:C+T,color:R,fontStyle:M};if(a.includeExplanation){const W=[];if(a.includeExplanation!=="scopeName")for(const U of n.settings){let V;switch(typeof U.scope){case"string":V=U.scope.split(p4).map(z=>z.trim());break;case"object":V=U.scope;break;default:continue}W.push({settings:U,selectors:V.map(z=>z.split(g4))})}G.explanation=[];let O=0;for(;T+O<L;){const U=S[b],V=w.substring(U.startIndex,U.endIndex);O+=V.length,G.explanation.push({content:V,scopes:a.includeExplanation==="scopeName"?y4(U.scopes):v4(W,U.scopes)}),b+=1}}m.push(G)}p.push(m),m=[],f=y.ruleStack}return{tokens:p,stateStack:f}}function y4(e){return e.map(t=>({scopeName:t}))}function v4(e,t){const n=[];for(let s=0,a=t.length;s<a;s++){const l=t[s];n[s]={scopeName:l,themeMatches:S4(e,l,t.slice(0,s))}}return n}function r0(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function b4(e,t,n){if(!r0(e.at(-1),t))return!1;let s=e.length-2,a=n.length-1;for(;s>=0&&a>=0;)r0(e[s],n[a])&&(s-=1),a-=1;return s===-1}function S4(e,t,n){const s=[];for(const{selectors:a,settings:l}of e)for(const u of a)if(b4(u,t,n)){s.push(l);break}return s}function Lw(e,t,n,s=Aw){const a=Object.entries(n.themes).filter(f=>f[1]).map(f=>({color:f[0],theme:f[1]})),l=a.map(f=>{const m=s(e,t,{...n,theme:f.theme});return{tokens:m,state:hl(m),theme:typeof f.theme=="string"?f.theme:f.theme.name}}),u=w4(...l.map(f=>f.tokens)),c=u[0].map((f,m)=>f.map((p,_)=>{const x={content:p.content,variants:{},offset:p.offset};return"includeExplanation"in n&&n.includeExplanation&&(x.explanation=p.explanation),u.forEach((w,C)=>{const{content:v,explanation:S,offset:b,...y}=w[m][_];x.variants[a[C].color]=y}),x})),d=l[0].state?new ad(Object.fromEntries(l.map(f=>{var m;return[f.theme,(m=f.state)==null?void 0:m.getInternalStack(f.theme)]})),l[0].state.lang):void 0;return d&&id(c,d),c}function w4(...e){const t=e.map(()=>[]),n=e.length;for(let s=0;s<e[0].length;s++){const a=e.map(d=>d[s]),l=t.map(()=>[]);t.forEach((d,f)=>d.push(l[f]));const u=a.map(()=>0),c=a.map(d=>d[0]);for(;c.every(d=>d);){const d=Math.min(...c.map(f=>f.content.length));for(let f=0;f<n;f++){const m=c[f];m.content.length===d?(l[f].push(m),u[f]+=1,c[f]=a[f][u[f]]):(l[f].push({...m,content:m.content.slice(0,d)}),c[f]={...m,content:m.content.slice(d),offset:m.offset+d})}}}return t}const C4=["area","base","basefont","bgsound","br","col","command","embed","frame","hr","image","img","input","keygen","link","meta","param","source","track","wbr"];class kl{constructor(t,n,s){this.normal=n,this.property=t,s&&(this.space=s)}}kl.prototype.normal={};kl.prototype.property={};kl.prototype.space=void 0;function Dw(e,t){const n={},s={};for(const a of e)Object.assign(n,a.property),Object.assign(s,a.normal);return new kl(n,s,t)}function qm(e){return e.toLowerCase()}class Pn{constructor(t,n){this.attribute=n,this.property=t}}Pn.prototype.attribute="";Pn.prototype.booleanish=!1;Pn.prototype.boolean=!1;Pn.prototype.commaOrSpaceSeparated=!1;Pn.prototype.commaSeparated=!1;Pn.prototype.defined=!1;Pn.prototype.mustUseProperty=!1;Pn.prototype.number=!1;Pn.prototype.overloadedBoolean=!1;Pn.prototype.property="";Pn.prototype.spaceSeparated=!1;Pn.prototype.space=void 0;let k4=0;const Je=Mi(),Zt=Mi(),Km=Mi(),Ee=Mi(),Lt=Mi(),Ia=Mi(),Wn=Mi();function Mi(){return 2**++k4}const Ym=Object.freeze(Object.defineProperty({__proto__:null,boolean:Je,booleanish:Zt,commaOrSpaceSeparated:Wn,commaSeparated:Ia,number:Ee,overloadedBoolean:Km,spaceSeparated:Lt},Symbol.toStringTag,{value:"Module"})),om=Object.keys(Ym);class Zp extends Pn{constructor(t,n,s,a){let l=-1;if(super(t,n),s0(this,"space",a),typeof s=="number")for(;++l<om.length;){const u=om[l];s0(this,om[l],(s&Ym[u])===Ym[u])}}}Zp.prototype.defined=!0;function s0(e,t,n){n&&(e[t]=n)}function Ga(e){const t={},n={};for(const[s,a]of Object.entries(e.properties)){const l=new Zp(s,e.transform(e.attributes||{},s),a,e.space);e.mustUseProperty&&e.mustUseProperty.includes(s)&&(l.mustUseProperty=!0),t[s]=l,n[qm(s)]=s,n[qm(l.attribute)]=s}return new kl(t,n,e.space)}const Rw=Ga({properties:{ariaActiveDescendant:null,ariaAtomic:Zt,ariaAutoComplete:null,ariaBusy:Zt,ariaChecked:Zt,ariaColCount:Ee,ariaColIndex:Ee,ariaColSpan:Ee,ariaControls:Lt,ariaCurrent:null,ariaDescribedBy:Lt,ariaDetails:null,ariaDisabled:Zt,ariaDropEffect:Lt,ariaErrorMessage:null,ariaExpanded:Zt,ariaFlowTo:Lt,ariaGrabbed:Zt,ariaHasPopup:null,ariaHidden:Zt,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:Lt,ariaLevel:Ee,ariaLive:null,ariaModal:Zt,ariaMultiLine:Zt,ariaMultiSelectable:Zt,ariaOrientation:null,ariaOwns:Lt,ariaPlaceholder:null,ariaPosInSet:Ee,ariaPressed:Zt,ariaReadOnly:Zt,ariaRelevant:null,ariaRequired:Zt,ariaRoleDescription:Lt,ariaRowCount:Ee,ariaRowIndex:Ee,ariaRowSpan:Ee,ariaSelected:Zt,ariaSetSize:Ee,ariaSort:null,ariaValueMax:Ee,ariaValueMin:Ee,ariaValueNow:Ee,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function Ow(e,t){return t in e?e[t]:t}function Mw(e,t){return Ow(e,t.toLowerCase())}const E4=Ga({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Ia,acceptCharset:Lt,accessKey:Lt,action:null,allow:null,allowFullScreen:Je,allowPaymentRequest:Je,allowUserMedia:Je,alt:null,as:null,async:Je,autoCapitalize:null,autoComplete:Lt,autoFocus:Je,autoPlay:Je,blocking:Lt,capture:null,charSet:null,checked:Je,cite:null,className:Lt,cols:Ee,colSpan:null,content:null,contentEditable:Zt,controls:Je,controlsList:Lt,coords:Ee|Ia,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Je,defer:Je,dir:null,dirName:null,disabled:Je,download:Km,draggable:Zt,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Je,formTarget:null,headers:Lt,height:Ee,hidden:Km,high:Ee,href:null,hrefLang:null,htmlFor:Lt,httpEquiv:Lt,id:null,imageSizes:null,imageSrcSet:null,inert:Je,inputMode:null,integrity:null,is:null,isMap:Je,itemId:null,itemProp:Lt,itemRef:Lt,itemScope:Je,itemType:Lt,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Je,low:Ee,manifest:null,max:null,maxLength:Ee,media:null,method:null,min:null,minLength:Ee,multiple:Je,muted:Je,name:null,nonce:null,noModule:Je,noValidate:Je,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Je,optimum:Ee,pattern:null,ping:Lt,placeholder:null,playsInline:Je,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Je,referrerPolicy:null,rel:Lt,required:Je,reversed:Je,rows:Ee,rowSpan:Ee,sandbox:Lt,scope:null,scoped:Je,seamless:Je,selected:Je,shadowRootClonable:Je,shadowRootDelegatesFocus:Je,shadowRootMode:null,shape:null,size:Ee,sizes:null,slot:null,span:Ee,spellCheck:Zt,src:null,srcDoc:null,srcLang:null,srcSet:null,start:Ee,step:null,style:null,tabIndex:Ee,target:null,title:null,translate:null,type:null,typeMustMatch:Je,useMap:null,value:Zt,width:Ee,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:Lt,axis:null,background:null,bgColor:null,border:Ee,borderColor:null,bottomMargin:Ee,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Je,declare:Je,event:null,face:null,frame:null,frameBorder:null,hSpace:Ee,leftMargin:Ee,link:null,longDesc:null,lowSrc:null,marginHeight:Ee,marginWidth:Ee,noResize:Je,noHref:Je,noShade:Je,noWrap:Je,object:null,profile:null,prompt:null,rev:null,rightMargin:Ee,rules:null,scheme:null,scrolling:Zt,standby:null,summary:null,text:null,topMargin:Ee,valueType:null,version:null,vAlign:null,vLink:null,vSpace:Ee,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Je,disableRemotePlayback:Je,prefix:null,property:null,results:Ee,security:null,unselectable:null},space:"html",transform:Mw}),j4=Ga({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:Wn,accentHeight:Ee,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:Ee,amplitude:Ee,arabicForm:null,ascent:Ee,attributeName:null,attributeType:null,azimuth:Ee,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:Ee,by:null,calcMode:null,capHeight:Ee,className:Lt,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:Ee,diffuseConstant:Ee,direction:null,display:null,dur:null,divisor:Ee,dominantBaseline:null,download:Je,dx:null,dy:null,edgeMode:null,editable:null,elevation:Ee,enableBackground:null,end:null,event:null,exponent:Ee,externalResourcesRequired:null,fill:null,fillOpacity:Ee,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Ia,g2:Ia,glyphName:Ia,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:Ee,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:Ee,horizOriginX:Ee,horizOriginY:Ee,id:null,ideographic:Ee,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:Ee,k:Ee,k1:Ee,k2:Ee,k3:Ee,k4:Ee,kernelMatrix:Wn,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:Ee,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:Ee,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:Ee,overlineThickness:Ee,paintOrder:null,panose1:null,path:null,pathLength:Ee,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:Lt,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:Ee,pointsAtY:Ee,pointsAtZ:Ee,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Wn,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Wn,rev:Wn,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Wn,requiredFeatures:Wn,requiredFonts:Wn,requiredFormats:Wn,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:Ee,specularExponent:Ee,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:Ee,strikethroughThickness:Ee,string:null,stroke:null,strokeDashArray:Wn,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:Ee,strokeOpacity:Ee,strokeWidth:null,style:null,surfaceScale:Ee,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Wn,tabIndex:Ee,tableValues:null,target:null,targetX:Ee,targetY:Ee,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Wn,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:Ee,underlineThickness:Ee,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:Ee,values:null,vAlphabetic:Ee,vMathematical:Ee,vectorEffect:null,vHanging:Ee,vIdeographic:Ee,version:null,vertAdvY:Ee,vertOriginX:Ee,vertOriginY:Ee,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:Ee,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:Ow}),Iw=Ga({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),Pw=Ga({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:Mw}),Bw=Ga({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),N4=/[A-Z]/g,i0=/-[a-z]/g,T4=/^data[-\w.:]+$/i;function A4(e,t){const n=qm(t);let s=t,a=Pn;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&T4.test(t)){if(t.charAt(4)==="-"){const l=t.slice(5).replace(i0,D4);s="data"+l.charAt(0).toUpperCase()+l.slice(1)}else{const l=t.slice(4);if(!i0.test(l)){let u=l.replace(N4,L4);u.charAt(0)!=="-"&&(u="-"+u),t="data"+u}}a=Zp}return new a(s,t)}function L4(e){return"-"+e.toLowerCase()}function D4(e){return e.charAt(1).toUpperCase()}const R4=Dw([Rw,E4,Iw,Pw,Bw],"html"),zw=Dw([Rw,j4,Iw,Pw,Bw],"svg"),a0={}.hasOwnProperty;function O4(e,t){const n=t||{};function s(a,...l){let u=s.invalid;const c=s.handlers;if(a&&a0.call(a,e)){const d=String(a[e]);u=a0.call(c,d)?c[d]:s.unknown}if(u)return u.call(this,a,...l)}return s.handlers=n.handlers||{},s.invalid=n.invalid,s.unknown=n.unknown,s}const M4=/["&'<>`]/g,I4=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,P4=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,B4=/[|\\{}()[\]^$+*?.]/g,o0=new WeakMap;function z4(e,t){if(e=e.replace(t.subset?$4(t.subset):M4,s),t.subset||t.escapeOnly)return e;return e.replace(I4,n).replace(P4,s);function n(a,l,u){return t.format((a.charCodeAt(0)-55296)*1024+a.charCodeAt(1)-56320+65536,u.charCodeAt(l+2),t)}function s(a,l,u){return t.format(a.charCodeAt(0),u.charCodeAt(l+1),t)}}function $4(e){let t=o0.get(e);return t||(t=H4(e),o0.set(e,t)),t}function H4(e){const t=[];let n=-1;for(;++n<e.length;)t.push(e[n].replace(B4,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}const U4=/[\dA-Fa-f]/;function F4(e,t,n){const s="&#x"+e.toString(16).toUpperCase();return n&&t&&!U4.test(String.fromCharCode(t))?s:s+";"}const V4=/\d/;function G4(e,t,n){const s="&#"+String(e);return n&&t&&!V4.test(String.fromCharCode(t))?s:s+";"}const W4=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"],lm={nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",fnof:"ƒ",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",bull:"•",hellip:"…",prime:"′",Prime:"″",oline:"‾",frasl:"⁄",weierp:"℘",image:"ℑ",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦",quot:'"',amp:"&",lt:"<",gt:">",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",permil:"‰",lsaquo:"‹",rsaquo:"›",euro:"€"},q4=["cent","copy","divide","gt","lt","not","para","times"],$w={}.hasOwnProperty,Xm={};let Zc;for(Zc in lm)$w.call(lm,Zc)&&(Xm[lm[Zc]]=Zc);const K4=/[^\dA-Za-z]/;function Y4(e,t,n,s){const a=String.fromCharCode(e);if($w.call(Xm,a)){const l=Xm[a],u="&"+l;return n&&W4.includes(l)&&!q4.includes(l)&&(!s||t&&t!==61&&K4.test(String.fromCharCode(t)))?u:u+";"}return""}function X4(e,t,n){let s=F4(e,t,n.omitOptionalSemicolons),a;if((n.useNamedReferences||n.useShortestReferences)&&(a=Y4(e,t,n.omitOptionalSemicolons,n.attribute)),(n.useShortestReferences||!a)&&n.useShortestReferences){const l=G4(e,t,n.omitOptionalSemicolons);l.length<s.length&&(s=l)}return a&&(!n.useShortestReferences||a.length<s.length)?a:s}function Pa(e,t){return z4(e,Object.assign({format:X4},t))}const Q4=/^>|^->|<!--|-->|--!>|<!-$/g,J4=[">"],Z4=["<",">"];function eM(e,t,n,s){return s.settings.bogusComments?"<?"+Pa(e.value,Object.assign({},s.settings.characterReferences,{subset:J4}))+">":"<!--"+e.value.replace(Q4,a)+"-->";function a(l){return Pa(l,Object.assign({},s.settings.characterReferences,{subset:Z4}))}}function tM(e,t,n,s){return"<!"+(s.settings.upperDoctype?"DOCTYPE":"doctype")+(s.settings.tightDoctype?"":" ")+"html>"}function l0(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let s=0,a=n.indexOf(t);for(;a!==-1;)s++,a=n.indexOf(t,a+t.length);return s}function nM(e,t){const n=t||{};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}function rM(e){return e.join(" ").trim()}const sM=/[ \t\n\f\r]/g;function eg(e){return typeof e=="object"?e.type==="text"?c0(e.value):!1:c0(e)}function c0(e){return e.replace(sM,"")===""}const ln=Uw(1),Hw=Uw(-1),iM=[];function Uw(e){return t;function t(n,s,a){const l=n?n.children:iM;let u=(s||0)+e,c=l[u];if(!a)for(;c&&eg(c);)u+=e,c=l[u];return c}}const aM={}.hasOwnProperty;function Fw(e){return t;function t(n,s,a){return aM.call(e,n.tagName)&&e[n.tagName](n,s,a)}}const tg=Fw({body:lM,caption:cm,colgroup:cm,dd:hM,dt:dM,head:cm,html:oM,li:uM,optgroup:fM,option:mM,p:cM,rp:u0,rt:u0,tbody:gM,td:d0,tfoot:xM,th:d0,thead:pM,tr:_M});function cm(e,t,n){const s=ln(n,t,!0);return!s||s.type!=="comment"&&!(s.type==="text"&&eg(s.value.charAt(0)))}function oM(e,t,n){const s=ln(n,t);return!s||s.type!=="comment"}function lM(e,t,n){const s=ln(n,t);return!s||s.type!=="comment"}function cM(e,t,n){const s=ln(n,t);return s?s.type==="element"&&(s.tagName==="address"||s.tagName==="article"||s.tagName==="aside"||s.tagName==="blockquote"||s.tagName==="details"||s.tagName==="div"||s.tagName==="dl"||s.tagName==="fieldset"||s.tagName==="figcaption"||s.tagName==="figure"||s.tagName==="footer"||s.tagName==="form"||s.tagName==="h1"||s.tagName==="h2"||s.tagName==="h3"||s.tagName==="h4"||s.tagName==="h5"||s.tagName==="h6"||s.tagName==="header"||s.tagName==="hgroup"||s.tagName==="hr"||s.tagName==="main"||s.tagName==="menu"||s.tagName==="nav"||s.tagName==="ol"||s.tagName==="p"||s.tagName==="pre"||s.tagName==="section"||s.tagName==="table"||s.tagName==="ul"):!n||!(n.type==="element"&&(n.tagName==="a"||n.tagName==="audio"||n.tagName==="del"||n.tagName==="ins"||n.tagName==="map"||n.tagName==="noscript"||n.tagName==="video"))}function uM(e,t,n){const s=ln(n,t);return!s||s.type==="element"&&s.tagName==="li"}function dM(e,t,n){const s=ln(n,t);return!!(s&&s.type==="element"&&(s.tagName==="dt"||s.tagName==="dd"))}function hM(e,t,n){const s=ln(n,t);return!s||s.type==="element"&&(s.tagName==="dt"||s.tagName==="dd")}function u0(e,t,n){const s=ln(n,t);return!s||s.type==="element"&&(s.tagName==="rp"||s.tagName==="rt")}function fM(e,t,n){const s=ln(n,t);return!s||s.type==="element"&&s.tagName==="optgroup"}function mM(e,t,n){const s=ln(n,t);return!s||s.type==="element"&&(s.tagName==="option"||s.tagName==="optgroup")}function pM(e,t,n){const s=ln(n,t);return!!(s&&s.type==="element"&&(s.tagName==="tbody"||s.tagName==="tfoot"))}function gM(e,t,n){const s=ln(n,t);return!s||s.type==="element"&&(s.tagName==="tbody"||s.tagName==="tfoot")}function xM(e,t,n){return!ln(n,t)}function _M(e,t,n){const s=ln(n,t);return!s||s.type==="element"&&s.tagName==="tr"}function d0(e,t,n){const s=ln(n,t);return!s||s.type==="element"&&(s.tagName==="td"||s.tagName==="th")}const yM=Fw({body:SM,colgroup:wM,head:bM,html:vM,tbody:CM});function vM(e){const t=ln(e,-1);return!t||t.type!=="comment"}function bM(e){const t=new Set;for(const s of e.children)if(s.type==="element"&&(s.tagName==="base"||s.tagName==="title")){if(t.has(s.tagName))return!1;t.add(s.tagName)}const n=e.children[0];return!n||n.type==="element"}function SM(e){const t=ln(e,-1,!0);return!t||t.type!=="comment"&&!(t.type==="text"&&eg(t.value.charAt(0)))&&!(t.type==="element"&&(t.tagName==="meta"||t.tagName==="link"||t.tagName==="script"||t.tagName==="style"||t.tagName==="template"))}function wM(e,t,n){const s=Hw(n,t),a=ln(e,-1,!0);return n&&s&&s.type==="element"&&s.tagName==="colgroup"&&tg(s,n.children.indexOf(s),n)?!1:!!(a&&a.type==="element"&&a.tagName==="col")}function CM(e,t,n){const s=Hw(n,t),a=ln(e,-1);return n&&s&&s.type==="element"&&(s.tagName==="thead"||s.tagName==="tbody")&&tg(s,n.children.indexOf(s),n)?!1:!!(a&&a.type==="element"&&a.tagName==="tr")}const eu={name:[[`
127
+ \f\r &/=>`.split(""),`
128
+ \f\r "&'/=>\``.split("")],[`\0
129
+ \f\r "&'/<=>`.split(""),`\0
130
+ \f\r "&'/<=>\``.split("")]],unquoted:[[`
131
+ \f\r &>`.split(""),`\0
132
+ \f\r "&'<=>\``.split("")],[`\0
133
+ \f\r "&'<=>\``.split(""),`\0
134
+ \f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function kM(e,t,n,s){const a=s.schema,l=a.space==="svg"?!1:s.settings.omitOptionalTags;let u=a.space==="svg"?s.settings.closeEmptyElements:s.settings.voids.includes(e.tagName.toLowerCase());const c=[];let d;a.space==="html"&&e.tagName==="svg"&&(s.schema=zw);const f=EM(s,e.properties),m=s.all(a.space==="html"&&e.tagName==="template"?e.content:e);return s.schema=a,m&&(u=!1),(f||!l||!yM(e,t,n))&&(c.push("<",e.tagName,f?" "+f:""),u&&(a.space==="svg"||s.settings.closeSelfClosing)&&(d=f.charAt(f.length-1),(!s.settings.tightSelfClosing||d==="/"||d&&d!=='"'&&d!=="'")&&c.push(" "),c.push("/")),c.push(">")),c.push(m),!u&&(!l||!tg(e,t,n))&&c.push("</"+e.tagName+">"),c.join("")}function EM(e,t){const n=[];let s=-1,a;if(t){for(a in t)if(t[a]!==null&&t[a]!==void 0){const l=jM(e,a,t[a]);l&&n.push(l)}}for(;++s<n.length;){const l=e.settings.tightAttributes?n[s].charAt(n[s].length-1):void 0;s!==n.length-1&&l!=='"'&&l!=="'"&&(n[s]+=" ")}return n.join("")}function jM(e,t,n){const s=A4(e.schema,t),a=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,l=e.settings.allowDangerousCharacters?0:1;let u=e.quote,c;if(s.overloadedBoolean&&(n===s.attribute||n==="")?n=!0:(s.boolean||s.overloadedBoolean)&&(typeof n!="string"||n===s.attribute||n==="")&&(n=!!n),n==null||n===!1||typeof n=="number"&&Number.isNaN(n))return"";const d=Pa(s.attribute,Object.assign({},e.settings.characterReferences,{subset:eu.name[a][l]}));return n===!0||(n=Array.isArray(n)?(s.commaSeparated?nM:rM)(n,{padLeft:!e.settings.tightCommaSeparatedLists}):String(n),e.settings.collapseEmptyAttributes&&!n)?d:(e.settings.preferUnquoted&&(c=Pa(n,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:eu.unquoted[a][l]}))),c!==n&&(e.settings.quoteSmart&&l0(n,u)>l0(n,e.alternative)&&(u=e.alternative),c=u+Pa(n,Object.assign({},e.settings.characterReferences,{subset:(u==="'"?eu.single:eu.double)[a][l],attribute:!0}))+u),d+(c&&"="+c))}const NM=["<","&"];function Vw(e,t,n,s){return n&&n.type==="element"&&(n.tagName==="script"||n.tagName==="style")?e.value:Pa(e.value,Object.assign({},s.settings.characterReferences,{subset:NM}))}function TM(e,t,n,s){return s.settings.allowDangerousHtml?e.value:Vw(e,t,n,s)}function AM(e,t,n,s){return s.all(e)}const LM=O4("type",{invalid:DM,unknown:RM,handlers:{comment:eM,doctype:tM,element:kM,raw:TM,root:AM,text:Vw}});function DM(e){throw new Error("Expected node, not `"+e+"`")}function RM(e){const t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}const OM={},MM={},IM=[];function PM(e,t){const n=t||OM,s=n.quote||'"',a=s==='"'?"'":'"';if(s!=='"'&&s!=="'")throw new Error("Invalid quote `"+s+"`, expected `'` or `\"`");return{one:BM,all:zM,settings:{omitOptionalTags:n.omitOptionalTags||!1,allowParseErrors:n.allowParseErrors||!1,allowDangerousCharacters:n.allowDangerousCharacters||!1,quoteSmart:n.quoteSmart||!1,preferUnquoted:n.preferUnquoted||!1,tightAttributes:n.tightAttributes||!1,upperDoctype:n.upperDoctype||!1,tightDoctype:n.tightDoctype||!1,bogusComments:n.bogusComments||!1,tightCommaSeparatedLists:n.tightCommaSeparatedLists||!1,tightSelfClosing:n.tightSelfClosing||!1,collapseEmptyAttributes:n.collapseEmptyAttributes||!1,allowDangerousHtml:n.allowDangerousHtml||!1,voids:n.voids||C4,characterReferences:n.characterReferences||MM,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space==="svg"?zw:R4,quote:s,alternative:a}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function BM(e,t,n){return LM(e,t,n,this)}function zM(e){const t=[],n=e&&e.children||IM;let s=-1;for(;++s<n.length;)t[s]=this.one(n[s],s,e);return t.join("")}const h0=/\s+/g;function Gw(e,t){var s;if(!t)return e;e.properties||(e.properties={}),(s=e.properties).class||(s.class=[]),typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(h0)),Array.isArray(e.properties.class)||(e.properties.class=[]);const n=Array.isArray(t)?t:t.split(h0);for(const a of n)a&&!e.properties.class.includes(a)&&e.properties.class.push(a);return e}const $M=/:?lang=["']([^"']+)["']/g,HM=/(?:```|~~~)([\w-]+)/g,UM=/\\begin\{([\w-]+)\}/g,FM=/<script\s+(?:type|lang)=["']([^"']+)["']/gi;function VM(e){const t=sd(e,!0).map(([a])=>a);function n(a){if(a===e.length)return{line:t.length-1,character:t.at(-1).length};let l=a,u=0;for(const c of t){if(l<c.length)break;l-=c.length,u++}return{line:u,character:l}}function s(a,l){let u=0;for(let c=0;c<a;c++)u+=t[c].length;return u+=l,u}return{lines:t,indexToPos:n,posToIndex:s}}function GM(e,t,n){const s=new Set;for(const l of e.matchAll($M)){const u=l[1].toLowerCase().trim();u&&s.add(u)}for(const l of e.matchAll(HM)){const u=l[1].toLowerCase().trim();u&&s.add(u)}for(const l of e.matchAll(UM)){const u=l[1].toLowerCase().trim();u&&s.add(u)}for(const l of e.matchAll(FM)){const u=l[1].toLowerCase().trim(),c=u.includes("/")?u.split("/").pop():u;c&&s.add(c)}if(!n)return[...s];const a=n.getBundledLanguages();return[...s].filter(l=>l&&a[l])}const WM=["color","background-color"];function qM(e,t){let n=0;const s=[];for(const a of t)a>n&&s.push({...e,content:e.content.slice(n,a),offset:e.offset+n}),n=a;return n<e.content.length&&s.push({...e,content:e.content.slice(n),offset:e.offset+n}),s}function KM(e,t){const n=[...t instanceof Set?t:new Set(t)].sort((s,a)=>s-a);return n.length?e.map(s=>s.flatMap(a=>{const l=n.filter(u=>a.offset<u&&u<a.offset+a.content.length).map(u=>u-a.offset).sort((u,c)=>u-c);return l.length?qM(a,l):a})):e}function YM(e,t,n,s,a="css-vars"){const l={content:e.content,explanation:e.explanation,offset:e.offset},u=t.map(m=>Eu(e.variants[m])),c=new Set(u.flatMap(m=>Object.keys(m))),d={},f=(m,p)=>{const _=p==="color"?"":p==="background-color"?"-bg":`-${p}`;return n+t[m]+(p==="color"?"":_)};return u.forEach((m,p)=>{for(const _ of c){const x=m[_]||"inherit";if(p===0&&s&&WM.includes(_))if(s==="light-dark()"&&u.length>1){const w=t.findIndex(v=>v==="light"),C=t.findIndex(v=>v==="dark");if(w===-1||C===-1)throw new Dt('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');d[_]=`light-dark(${u[w][_]||"inherit"}, ${u[C][_]||"inherit"})`,a==="css-vars"&&(d[f(p,_)]=x)}else d[_]=x;else a==="css-vars"&&(d[f(p,_)]=x)}}),l.htmlStyle=d,l}function Eu(e){const t={};if(e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle){e.fontStyle&bn.Italic&&(t["font-style"]="italic"),e.fontStyle&bn.Bold&&(t["font-weight"]="bold");const n=[];e.fontStyle&bn.Underline&&n.push("underline"),e.fontStyle&bn.Strikethrough&&n.push("line-through"),n.length&&(t["text-decoration"]=n.join(" "))}return t}function Qm(e){return typeof e=="string"?e:Object.entries(e).map(([t,n])=>`${t}:${n}`).join(";")}function XM(){const e=new WeakMap;function t(n){if(!e.has(n.meta)){let l=function(c){if(typeof c=="number"){if(c<0||c>n.source.length)throw new Dt(`Invalid decoration offset: ${c}. Code length: ${n.source.length}`);return{...a.indexToPos(c),offset:c}}else{const d=a.lines[c.line];if(d===void 0)throw new Dt(`Invalid decoration position ${JSON.stringify(c)}. Lines length: ${a.lines.length}`);let f=c.character;if(f<0&&(f=d.length+f),f<0||f>d.length)throw new Dt(`Invalid decoration position ${JSON.stringify(c)}. Line ${c.line} length: ${d.length}`);return{...c,character:f,offset:a.posToIndex(c.line,f)}}};var s=l;const a=VM(n.source),u=(n.options.decorations||[]).map(c=>({...c,start:l(c.start),end:l(c.end)}));QM(u),e.set(n.meta,{decorations:u,converter:a,source:n.source})}return e.get(n.meta)}return{name:"shiki:decorations",tokens(n){var s;if((s=this.options.decorations)!=null&&s.length)return KM(n,t(this).decorations.flatMap(a=>[a.start.offset,a.end.offset]))},code(n){var m;if(!((m=this.options.decorations)!=null&&m.length))return;const s=t(this),a=[...n.children].filter(p=>p.type==="element"&&p.tagName==="span");if(a.length!==s.converter.lines.length)throw new Dt(`Number of lines in code element (${a.length}) does not match the number of lines in the source (${s.converter.lines.length}). Failed to apply decorations.`);function l(p,_,x,w){const C=a[p];let v="",S=-1,b=-1;if(_===0&&(S=0),x===0&&(b=0),x===Number.POSITIVE_INFINITY&&(b=C.children.length),S===-1||b===-1)for(let E=0;E<C.children.length;E++)v+=Ww(C.children[E]),S===-1&&v.length===_&&(S=E+1),b===-1&&v.length===x&&(b=E+1);if(S===-1)throw new Dt(`Failed to find start index for decoration ${JSON.stringify(w.start)}`);if(b===-1)throw new Dt(`Failed to find end index for decoration ${JSON.stringify(w.end)}`);const y=C.children.slice(S,b);if(!w.alwaysWrap&&y.length===C.children.length)c(C,w,"line");else if(!w.alwaysWrap&&y.length===1&&y[0].type==="element")c(y[0],w,"token");else{const E={type:"element",tagName:"span",properties:{},children:y};c(E,w,"wrapper"),C.children.splice(S,y.length,E)}}function u(p,_){a[p]=c(a[p],_,"line")}function c(p,_,x){var v;const w=_.properties||{},C=_.transform||(S=>S);return p.tagName=_.tagName||"span",p.properties={...p.properties,...w,class:p.properties.class},(v=_.properties)!=null&&v.class&&Gw(p,_.properties.class),p=C(p,x)||p,p}const d=[],f=s.decorations.sort((p,_)=>_.start.offset-p.start.offset||p.end.offset-_.end.offset);for(const p of f){const{start:_,end:x}=p;if(_.line===x.line)l(_.line,_.character,x.character,p);else if(_.line<x.line){l(_.line,_.character,Number.POSITIVE_INFINITY,p);for(let w=_.line+1;w<x.line;w++)d.unshift(()=>u(w,p));l(x.line,0,x.character,p)}}d.forEach(p=>p())}}}function QM(e){for(let t=0;t<e.length;t++){const n=e[t];if(n.start.offset>n.end.offset)throw new Dt(`Invalid decoration range: ${JSON.stringify(n.start)} - ${JSON.stringify(n.end)}`);for(let s=t+1;s<e.length;s++){const a=e[s],l=n.start.offset<=a.start.offset&&a.start.offset<n.end.offset,u=n.start.offset<a.end.offset&&a.end.offset<=n.end.offset,c=a.start.offset<=n.start.offset&&n.start.offset<a.end.offset,d=a.start.offset<n.end.offset&&n.end.offset<=a.end.offset;if(l||u||c||d){if(l&&u||c&&d||c&&n.start.offset===n.end.offset||u&&a.start.offset===a.end.offset)continue;throw new Dt(`Decorations ${JSON.stringify(n.start)} and ${JSON.stringify(a.start)} intersect.`)}}}}function Ww(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(Ww).join(""):""}const JM=[XM()];function ju(e){const t=ZM(e.transformers||[]);return[...t.pre,...t.normal,...t.post,...JM]}function ZM(e){const t=[],n=[],s=[];for(const a of e)switch(a.enforce){case"pre":t.push(a);break;case"post":n.push(a);break;default:s.push(a)}return{pre:t,post:n,normal:s}}var ji=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],um={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",8:"hidden",9:"strikethrough"};function eI(e,t){const n=e.indexOf("\x1B",t);if(n!==-1&&e[n+1]==="["){const s=e.indexOf("m",n);if(s!==-1)return{sequence:e.substring(n+2,s).split(";"),startPosition:n,position:s+1}}return{position:e.length}}function f0(e){const t=e.shift();if(t==="2"){const n=e.splice(0,3).map(s=>Number.parseInt(s));return n.length!==3||n.some(s=>Number.isNaN(s))?void 0:{type:"rgb",rgb:n}}else if(t==="5"){const n=e.shift();if(n)return{type:"table",index:Number(n)}}}function tI(e){const t=[];for(;e.length>0;){const n=e.shift();if(!n)continue;const s=Number.parseInt(n);if(!Number.isNaN(s))if(s===0)t.push({type:"resetAll"});else if(s<=9)um[s]&&t.push({type:"setDecoration",value:um[s]});else if(s<=29){const a=um[s-20];a&&(t.push({type:"resetDecoration",value:a}),a==="dim"&&t.push({type:"resetDecoration",value:"bold"}))}else if(s<=37)t.push({type:"setForegroundColor",value:{type:"named",name:ji[s-30]}});else if(s===38){const a=f0(e);a&&t.push({type:"setForegroundColor",value:a})}else if(s===39)t.push({type:"resetForegroundColor"});else if(s<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:ji[s-40]}});else if(s===48){const a=f0(e);a&&t.push({type:"setBackgroundColor",value:a})}else s===49?t.push({type:"resetBackgroundColor"}):s===53?t.push({type:"setDecoration",value:"overline"}):s===55?t.push({type:"resetDecoration",value:"overline"}):s>=90&&s<=97?t.push({type:"setForegroundColor",value:{type:"named",name:ji[s-90+8]}}):s>=100&&s<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:ji[s-100+8]}})}return t}function nI(){let e=null,t=null,n=new Set;return{parse(s){const a=[];let l=0;do{const u=eI(s,l),c=u.sequence?s.substring(l,u.startPosition):s.substring(l);if(c.length>0&&a.push({value:c,foreground:e,background:t,decorations:new Set(n)}),u.sequence){const d=tI(u.sequence);for(const f of d)f.type==="resetAll"?(e=null,t=null,n.clear()):f.type==="resetForegroundColor"?e=null:f.type==="resetBackgroundColor"?t=null:f.type==="resetDecoration"&&n.delete(f.value);for(const f of d)f.type==="setForegroundColor"?e=f.value:f.type==="setBackgroundColor"?t=f.value:f.type==="setDecoration"&&n.add(f.value)}l=u.position}while(l<s.length);return a}}}var rI={black:"#000000",red:"#bb0000",green:"#00bb00",yellow:"#bbbb00",blue:"#0000bb",magenta:"#ff00ff",cyan:"#00bbbb",white:"#eeeeee",brightBlack:"#555555",brightRed:"#ff5555",brightGreen:"#00ff00",brightYellow:"#ffff55",brightBlue:"#5555ff",brightMagenta:"#ff55ff",brightCyan:"#55ffff",brightWhite:"#ffffff"};function sI(e=rI){function t(c){return e[c]}function n(c){return`#${c.map(d=>Math.max(0,Math.min(d,255)).toString(16).padStart(2,"0")).join("")}`}let s;function a(){if(s)return s;s=[];for(let f=0;f<ji.length;f++)s.push(t(ji[f]));let c=[0,95,135,175,215,255];for(let f=0;f<6;f++)for(let m=0;m<6;m++)for(let p=0;p<6;p++)s.push(n([c[f],c[m],c[p]]));let d=8;for(let f=0;f<24;f++,d+=10)s.push(n([d,d,d]));return s}function l(c){return a()[c]}function u(c){switch(c.type){case"named":return t(c.name);case"rgb":return n(c.rgb);case"table":return l(c.index)}}return{value:u}}const iI=/#([0-9a-f]{3,8})/i,aI=/var\((--[\w-]+-ansi-[\w-]+)\)/,oI={black:"#000000",red:"#cd3131",green:"#0DBC79",yellow:"#E5E510",blue:"#2472C8",magenta:"#BC3FBC",cyan:"#11A8CD",white:"#E5E5E5",brightBlack:"#666666",brightRed:"#F14C4C",brightGreen:"#23D18B",brightYellow:"#F5F543",brightBlue:"#3B8EEA",brightMagenta:"#D670D6",brightCyan:"#29B8DB",brightWhite:"#FFFFFF"};function lI(e,t,n){const s=ku(e,n),a=sd(t),l=sI(Object.fromEntries(ji.map(c=>{var f;const d=`terminal.ansi${c[0].toUpperCase()}${c.substring(1)}`;return[c,((f=e.colors)==null?void 0:f[d])||oI[c]]}))),u=nI();return a.map(c=>u.parse(c[0]).map(d=>{let f,m;d.decorations.has("reverse")?(f=d.background?l.value(d.background):e.bg,m=d.foreground?l.value(d.foreground):e.fg):(f=d.foreground?l.value(d.foreground):e.fg,m=d.background?l.value(d.background):void 0),f=qs(f,s),m=qs(m,s),d.decorations.has("dim")&&(f=cI(f));let p=bn.None;return d.decorations.has("bold")&&(p|=bn.Bold),d.decorations.has("italic")&&(p|=bn.Italic),d.decorations.has("underline")&&(p|=bn.Underline),d.decorations.has("strikethrough")&&(p|=bn.Strikethrough),{content:d.value,offset:c[1],color:f,bgColor:m,fontStyle:p}}))}function cI(e){const t=e.match(iI);if(t){const s=t[1];if(s.length===8){const a=Math.round(Number.parseInt(s.slice(6,8),16)/2).toString(16).padStart(2,"0");return`#${s.slice(0,6)}${a}`}else{if(s.length===6)return`#${s}80`;if(s.length===4){const a=s[0],l=s[1],u=s[2],c=s[3];return`#${a}${a}${l}${l}${u}${u}${Math.round(Number.parseInt(`${c}${c}`,16)/2).toString(16).padStart(2,"0")}`}else if(s.length===3){const a=s[0],l=s[1],u=s[2];return`#${a}${a}${l}${l}${u}${u}80`}}}const n=e.match(aI);return n?`var(${n[1]}-dim)`:e}function Jm(e,t,n={}){const s=e.resolveLangAlias(n.lang||"text"),{theme:a=e.getLoadedThemes()[0]}=n;if(!nd(s)&&!rd(a)&&s==="ansi"){const{theme:l}=e.setTheme(a);return lI(l,t,n)}return Aw(e,t,n)}function Nu(e,t,n){let s,a,l,u,c,d;if("themes"in n){const{defaultColor:f="light",cssVariablePrefix:m="--shiki-",colorsRendering:p="css-vars"}=n,_=Object.entries(n.themes).filter(S=>S[1]).map(S=>({color:S[0],theme:S[1]})).sort((S,b)=>S.color===f?-1:b.color===f?1:0);if(_.length===0)throw new Dt("`themes` option must not be empty");const x=Lw(e,t,n,Jm);if(d=hl(x),f&&f!=="light-dark()"&&!_.some(S=>S.color===f))throw new Dt(`\`themes\` option must contain the defaultColor key \`${f}\``);const w=_.map(S=>e.getTheme(S.theme)),C=_.map(S=>S.color);l=x.map(S=>S.map(b=>YM(b,C,m,f,p))),d&&id(l,d);const v=_.map(S=>ku(S.theme,n));a=m0(_,w,v,m,f,"fg",p),s=m0(_,w,v,m,f,"bg",p),u=`shiki-themes ${w.map(S=>S.name).join(" ")}`,c=f?void 0:[a,s].join(";")}else if("theme"in n){const f=ku(n.theme,n);l=Jm(e,t,n);const m=e.getTheme(n.theme);s=qs(m.bg,f),a=qs(m.fg,f),u=m.name,d=hl(l)}else throw new Dt("Invalid options, either `theme` or `themes` must be provided");return{tokens:l,fg:a,bg:s,themeName:u,rootStyle:c,grammarState:d}}function m0(e,t,n,s,a,l,u){return e.map((c,d)=>{const f=qs(t[d][l],n[d])||"inherit",m=`${s+c.color}${l==="bg"?"-bg":""}:${f}`;if(d===0&&a){if(a==="light-dark()"&&e.length>1){const p=e.findIndex(x=>x.color==="light"),_=e.findIndex(x=>x.color==="dark");if(p===-1||_===-1)throw new Dt('When using `defaultColor: "light-dark()"`, you must provide both `light` and `dark` themes');return`light-dark(${qs(t[p][l],n[p])||"inherit"}, ${qs(t[_][l],n[_])||"inherit"});${m}`}return f}return u==="css-vars"?m:null}).filter(c=>!!c).join(";")}const qw=/^\s+$/,uI=/^(\s*)(.*?)(\s*)$/;function Tu(e,t,n,s={meta:{},options:n,codeToHast:(a,l)=>Tu(e,a,l),codeToTokens:(a,l)=>Nu(e,a,l)}){var w,C;let a=t;for(const v of ju(n))a=((w=v.preprocess)==null?void 0:w.call(s,a,n))||a;let{tokens:l,fg:u,bg:c,themeName:d,rootStyle:f,grammarState:m}=Nu(e,a,n);const{mergeWhitespaces:p=!0,mergeSameStyleTokens:_=!1}=n;p===!0?l=hI(l):p==="never"&&(l=fI(l)),_&&(l=mI(l));const x={...s,get source(){return a}};for(const v of ju(n))l=((C=v.tokens)==null?void 0:C.call(x,l))||l;return dI(l,{...n,fg:u,bg:c,themeName:d,rootStyle:n.rootStyle===!1?!1:n.rootStyle??f},x,m)}function dI(e,t,n,s=hl(e)){var C,v,S,b;const a=ju(t),l=[],u={type:"root",children:[]},{structure:c="classic",tabindex:d="0"}=t,f={class:`shiki ${t.themeName||""}`};t.rootStyle!==!1&&(t.rootStyle!=null?f.style=t.rootStyle:f.style=`background-color:${t.bg};color:${t.fg}`),d!==!1&&d!=null&&(f.tabindex=d.toString());for(const[y,E]of Object.entries(t.meta||{}))y.startsWith("_")||(f[y]=E);let m={type:"element",tagName:"pre",properties:f,children:[],data:t.data},p={type:"element",tagName:"code",properties:{},children:l};const _=[],x={...n,structure:c,addClassToHast:Gw,get source(){return n.source},get tokens(){return e},get options(){return t},get root(){return u},get pre(){return m},get code(){return p},get lines(){return _}};if(e.forEach((y,E)=>{var L,A;E&&(c==="inline"?u.children.push({type:"element",tagName:"br",properties:{},children:[]}):c==="classic"&&l.push({type:"text",value:`
135
+ `}));let N={type:"element",tagName:"span",properties:{class:"line"},children:[]},T=0;for(const R of y){let M={type:"element",tagName:"span",properties:{...R.htmlAttrs},children:[{type:"text",value:R.content}]};const G=Qm(R.htmlStyle||Eu(R));G&&(M.properties.style=G);for(const W of a)M=((L=W==null?void 0:W.span)==null?void 0:L.call(x,M,E+1,T,N,R))||M;c==="inline"?u.children.push(M):c==="classic"&&N.children.push(M),T+=R.content.length}if(c==="classic"){for(const R of a)N=((A=R==null?void 0:R.line)==null?void 0:A.call(x,N,E+1))||N;_.push(N),l.push(N)}else c==="inline"&&_.push(N)}),c==="classic"){for(const y of a)p=((C=y==null?void 0:y.code)==null?void 0:C.call(x,p))||p;m.children.push(p);for(const y of a)m=((v=y==null?void 0:y.pre)==null?void 0:v.call(x,m))||m;u.children.push(m)}else if(c==="inline"){const y=[];let E={type:"element",tagName:"span",properties:{class:"line"},children:[]};for(const T of u.children)T.type==="element"&&T.tagName==="br"?(y.push(E),E={type:"element",tagName:"span",properties:{class:"line"},children:[]}):(T.type==="element"||T.type==="text")&&E.children.push(T);y.push(E);let N={type:"element",tagName:"code",properties:{},children:y};for(const T of a)N=((S=T==null?void 0:T.code)==null?void 0:S.call(x,N))||N;u.children=[];for(let T=0;T<N.children.length;T++){T>0&&u.children.push({type:"element",tagName:"br",properties:{},children:[]});const L=N.children[T];L.type==="element"&&u.children.push(...L.children)}}let w=u;for(const y of a)w=((b=y==null?void 0:y.root)==null?void 0:b.call(x,w))||w;return s&&id(w,s),w}function hI(e){return e.map(t=>{const n=[];let s="",a;return t.forEach((l,u)=>{const c=!(l.fontStyle&&(l.fontStyle&bn.Underline||l.fontStyle&bn.Strikethrough));c&&qw.test(l.content)&&t[u+1]?(a===void 0&&(a=l.offset),s+=l.content):s?(c?n.push({...l,offset:a,content:s+l.content}):n.push({content:s,offset:a},l),a=void 0,s=""):n.push(l)}),n})}function fI(e){return e.map(t=>t.flatMap(n=>{if(qw.test(n.content))return n;const s=n.content.match(uI);if(!s)return n;const[,a,l,u]=s;if(!a&&!u)return n;const c=[{...n,offset:n.offset+a.length,content:l}];return a&&c.unshift({content:a,offset:n.offset}),u&&c.push({content:u,offset:n.offset+a.length+l.length}),c}))}function mI(e){return e.map(t=>{const n=[];for(const s of t){if(n.length===0){n.push({...s});continue}const a=n.at(-1),l=Qm(a.htmlStyle||Eu(a)),u=Qm(s.htmlStyle||Eu(s)),c=a.fontStyle&&(a.fontStyle&bn.Underline||a.fontStyle&bn.Strikethrough),d=s.fontStyle&&(s.fontStyle&bn.Underline||s.fontStyle&bn.Strikethrough);!c&&!d&&l===u?a.content+=s.content:n.push({...s})}return n})}const pI=PM;function gI(e,t,n){var l;const s={meta:{},options:n,codeToHast:(u,c)=>Tu(e,u,c),codeToTokens:(u,c)=>Nu(e,u,c)};let a=pI(Tu(e,t,n,s));for(const u of ju(n))a=((l=u.postprocess)==null?void 0:l.call(s,a,n))||a;return a}async function xI(e){const t=await h4(e);return{getLastGrammarState:(...n)=>x4(t,...n),codeToTokensBase:(n,s)=>Jm(t,n,s),codeToTokensWithThemes:(n,s)=>Lw(t,n,s),codeToTokens:(n,s)=>Nu(t,n,s),codeToHast:(n,s)=>Tu(t,n,s),codeToHtml:(n,s)=>gI(t,n,s),getBundledLanguages:()=>({}),getBundledThemes:()=>({}),...t,getInternalContext:()=>t}}function _I(e){const t=e.langs,n=e.themes,s=e.engine;async function a(l){function u(p){var _;if(typeof p=="string"){if(p=((_=l.langAlias)==null?void 0:_[p])||p,ww(p))return[];const x=t[p];if(!x)throw new Dt(`Language \`${p}\` is not included in this bundle. You may want to load it from external source.`);return x}return p}function c(p){if(Cw(p))return"none";if(typeof p=="string"){const _=n[p];if(!_)throw new Dt(`Theme \`${p}\` is not included in this bundle. You may want to load it from external source.`);return _}return p}const d=(l.themes??[]).map(p=>c(p)),f=(l.langs??[]).map(p=>u(p)),m=await xI({engine:l.engine??s(),...l,themes:d,langs:f});return{...m,loadLanguage(...p){return m.loadLanguage(...p.map(u))},loadTheme(...p){return m.loadTheme(...p.map(c))},getBundledLanguages(){return t},getBundledThemes(){return n}}}return a}function yI(e){let t;async function n(s={}){if(t){const a=await t;return await Promise.all([a.loadTheme(...s.themes||[]),a.loadLanguage(...s.langs||[])]),a}else{t=e({...s,themes:[],langs:[]});const a=await t;return await Promise.all([a.loadTheme(...s.themes||[]),a.loadLanguage(...s.langs||[])]),a}}return n}function vI(e,t){const n=yI(e);async function s(a,l){var d;const u=await n({langs:[l.lang],themes:"theme"in l?[l.theme]:Object.values(l.themes)}),c=await((d=t==null?void 0:t.guessEmbeddedLanguages)==null?void 0:d.call(t,a,l.lang,u));return c&&await u.loadLanguage(...c),u}return{getSingletonHighlighter(a){return n(a)},async codeToHtml(a,l){return(await s(a,l)).codeToHtml(a,l)},async codeToHast(a,l){return(await s(a,l)).codeToHast(a,l)},async codeToTokens(a,l){return(await s(a,l)).codeToTokens(a,l)},async codeToTokensBase(a,l){return(await s(a,l)).codeToTokensBase(a,l)},async codeToTokensWithThemes(a,l){return(await s(a,l)).codeToTokensWithThemes(a,l)},async getLastGrammarState(a,l){return(await n({langs:[l.lang],themes:[l.theme]})).getLastGrammarState(a,l)}}}var bI=Up({bundledLanguages:()=>Gp,bundledLanguagesAlias:()=>Vp,bundledLanguagesBase:()=>Fp,bundledLanguagesInfo:()=>Zu,bundledThemes:()=>qp,bundledThemesInfo:()=>Wp,codeToHast:()=>Yw,codeToHtml:()=>Kw,codeToTokens:()=>Xw,codeToTokensBase:()=>Qw,codeToTokensWithThemes:()=>Jw,createHighlighter:()=>od,getLastGrammarState:()=>eC,getSingletonHighlighter:()=>Zw});const od=_I({langs:Gp,themes:qp,engine:()=>(0,aw.createOnigurumaEngine)(Q(()=>import("./wasm-CG6Dc4jp.js"),[]))}),{codeToHtml:Kw,codeToHast:Yw,codeToTokens:Xw,codeToTokensBase:Qw,codeToTokensWithThemes:Jw,getSingletonHighlighter:Zw,getLastGrammarState:eC}=vI(od,{guessEmbeddedLanguages:GM}),p0=4294967295;var SI=class{constructor(e,t={}){me(this,"patterns");me(this,"options");me(this,"regexps");this.patterns=e,this.options=t;const{forgiving:n=!1,cache:s,regexConstructor:a}=t;if(!a)throw new Error("Option `regexConstructor` is not provided");this.regexps=e.map(l=>{if(typeof l!="string")return l;const u=s==null?void 0:s.get(l);if(u){if(u instanceof RegExp)return u;if(n)return null;throw u}try{const c=a(l);return s==null||s.set(l,c),c}catch(c){if(s==null||s.set(l,c),n)return null;throw c}})}findNextMatchSync(e,t,n){const s=typeof e=="string"?e:e.content,a=[];function l(u,c,d=0){return{index:u,captureIndices:c.indices.map(f=>f==null?{start:p0,end:p0,length:0}:{start:f[0]+d,end:f[1]+d,length:f[1]-f[0]})}}for(let u=0;u<this.regexps.length;u++){const c=this.regexps[u];if(c)try{c.lastIndex=t;const d=c.exec(s);if(!d)continue;if(d.index===t)return l(u,d,0);a.push([u,d,0])}catch(d){if(this.options.forgiving)continue;throw d}}if(a.length){const u=Math.min(...a.map(c=>c[1].index));for(const[c,d,f]of a)if(d.index===u)return l(c,d,f)}return null}};function Wa(e){if([...e].length!==1)throw new Error(`Expected "${e}" to be a single code point`);return e.codePointAt(0)}function wI(e,t,n){return e.has(t)||e.set(t,n),e.get(t)}const ng=new Set(["alnum","alpha","ascii","blank","cntrl","digit","graph","lower","print","punct","space","upper","word","xdigit"]),hn=String.raw;function qa(e,t){if(e==null)throw new Error(t??"Value expected");return e}const tC=hn`\[\^?`,nC=`c.? | C(?:-.?)?|${hn`[pP]\{(?:\^?[-\x20_]*[A-Za-z][-\x20\w]*\})?`}|${hn`x[89A-Fa-f]\p{AHex}(?:\\x[89A-Fa-f]\p{AHex})*`}|${hn`u(?:\p{AHex}{4})? | x\{[^\}]*\}? | x\p{AHex}{0,2}`}|${hn`o\{[^\}]*\}?`}|${hn`\d{1,3}`}`,rg=/[?*+][?+]?|\{(?:\d+(?:,\d*)?|,\d+)\}\??/,tu=new RegExp(hn`
136
+ \\ (?:
137
+ ${nC}
138
+ | [gk]<[^>]*>?
139
+ | [gk]'[^']*'?
140
+ | .
141
+ )
142
+ | \( (?:
143
+ \? (?:
144
+ [:=!>({]
145
+ | <[=!]
146
+ | <[^>]*>
147
+ | '[^']*'
148
+ | ~\|?
149
+ | #(?:[^)\\]|\\.?)*
150
+ | [^:)]*[:)]
151
+ )?
152
+ | \*[^\)]*\)?
153
+ )?
154
+ | (?:${rg.source})+
155
+ | ${tC}
156
+ | .
157
+ `.replace(/\s+/g,""),"gsu"),dm=new RegExp(hn`
158
+ \\ (?:
159
+ ${nC}
160
+ | .
161
+ )
162
+ | \[:(?:\^?\p{Alpha}+|\^):\]
163
+ | ${tC}
164
+ | &&
165
+ | .
166
+ `.replace(/\s+/g,""),"gsu");function CI(e,t={}){const n={flags:"",...t,rules:{captureGroup:!1,singleline:!1,...t.rules}};if(typeof e!="string")throw new Error("String expected as pattern");const s=FI(n.flags),a=[s.extended],l={captureGroup:n.rules.captureGroup,getCurrentModX(){return a.at(-1)},numOpenGroups:0,popModX(){a.pop()},pushModX(p){a.push(p)},replaceCurrentModX(p){a[a.length-1]=p},singleline:n.rules.singleline};let u=[],c;for(tu.lastIndex=0;c=tu.exec(e);){const p=kI(l,e,c[0],tu.lastIndex);p.tokens?u.push(...p.tokens):p.token&&u.push(p.token),p.lastIndex!==void 0&&(tu.lastIndex=p.lastIndex)}const d=[];let f=0;u.filter(p=>p.type==="GroupOpen").forEach(p=>{p.kind==="capturing"?p.number=++f:p.raw==="("&&d.push(p)}),f||d.forEach((p,_)=>{p.kind="capturing",p.number=_+1});const m=f||d.length;return{tokens:u.map(p=>p.type==="EscapedNumber"?GI(p,m):p).flat(),flags:s}}function kI(e,t,n,s){const[a,l]=n;if(n==="["||n==="[^"){const u=EI(t,n,s);return{tokens:u.tokens,lastIndex:u.lastIndex}}if(a==="\\"){if("AbBGyYzZ".includes(l))return{token:g0(n,n)};if(/^\\g[<']/.test(n)){if(!/^\\g(?:<[^>]+>|'[^']+')$/.test(n))throw new Error(`Invalid group name "${n}"`);return{token:II(n)}}if(/^\\k[<']/.test(n)){if(!/^\\k(?:<[^>]+>|'[^']+')$/.test(n))throw new Error(`Invalid group name "${n}"`);return{token:sC(n)}}if(l==="K")return{token:iC("keep",n)};if(l==="N"||l==="R")return{token:Ni("newline",n,{negate:l==="N"})};if(l==="O")return{token:Ni("any",n)};if(l==="X")return{token:Ni("text_segment",n)};const u=rC(n,{inCharClass:!1});return Array.isArray(u)?{tokens:u}:{token:u}}if(a==="("){if(l==="*")return{token:$I(n)};if(n==="(?{")throw new Error(`Unsupported callout "${n}"`);if(n.startsWith("(?#")){if(t[s]!==")")throw new Error('Unclosed comment group "(?#"');return{lastIndex:s+1}}if(/^\(\?[-imx]+[:)]$/.test(n))return{token:zI(n,e)};if(e.pushModX(e.getCurrentModX()),e.numOpenGroups++,n==="("&&!e.captureGroup||n==="(?:")return{token:Ra("group",n)};if(n==="(?>")return{token:Ra("atomic",n)};if(n==="(?="||n==="(?!"||n==="(?<="||n==="(?<!")return{token:Ra(n[2]==="<"?"lookbehind":"lookahead",n,{negate:n.endsWith("!")})};if(n==="("&&e.captureGroup||n.startsWith("(?<")&&n.endsWith(">")||n.startsWith("(?'")&&n.endsWith("'"))return{token:Ra("capturing",n,{...n!=="("&&{name:n.slice(3,-1)}})};if(n.startsWith("(?~")){if(n==="(?~|")throw new Error(`Unsupported absence function kind "${n}"`);return{token:Ra("absence_repeater",n)}}throw n==="(?("?new Error(`Unsupported conditional "${n}"`):new Error(`Invalid or unsupported group option "${n}"`)}if(n===")"){if(e.popModX(),e.numOpenGroups--,e.numOpenGroups<0)throw new Error('Unmatched ")"');return{token:RI(n)}}if(e.getCurrentModX()){if(n==="#"){const u=t.indexOf(`
167
+ `,s);return{lastIndex:u===-1?t.length:u}}if(/^\s$/.test(n)){const u=/\s+/y;return u.lastIndex=s,{lastIndex:u.exec(t)?u.lastIndex:s}}}if(n===".")return{token:Ni("dot",n)};if(n==="^"||n==="$"){const u=e.singleline?{"^":hn`\A`,$:hn`\Z`}[n]:n;return{token:g0(u,n)}}return n==="|"?{token:NI(n)}:rg.test(n)?{tokens:WI(n)}:{token:hs(Wa(n),n)}}function EI(e,t,n){const s=[x0(t[1]==="^",t)];let a=1,l;for(dm.lastIndex=n;l=dm.exec(e);){const u=l[0];if(u[0]==="["&&u[1]!==":")a++,s.push(x0(u[1]==="^",u));else if(u==="]"){if(s.at(-1).type==="CharacterClassOpen")s.push(hs(93,u));else if(a--,s.push(TI(u)),!a)break}else{const c=jI(u);Array.isArray(c)?s.push(...c):s.push(c)}}return{tokens:s,lastIndex:dm.lastIndex||e.length}}function jI(e){if(e[0]==="\\")return rC(e,{inCharClass:!0});if(e[0]==="["){const t=/\[:(?<negate>\^?)(?<name>[a-z]+):\]/.exec(e);if(!t||!ng.has(t.groups.name))throw new Error(`Invalid POSIX class "${e}"`);return Ni("posix",e,{value:t.groups.name,negate:!!t.groups.negate})}return e==="-"?AI(e):e==="&&"?LI(e):hs(Wa(e),e)}function rC(e,{inCharClass:t}){const n=e[1];if(n==="c"||n==="C")return BI(e);if("dDhHsSwW".includes(n))return HI(e);if(e.startsWith(hn`\o{`))throw new Error(`Incomplete, invalid, or unsupported octal code point "${e}"`);if(/^\\[pP]\{/.test(e)){if(e.length===3)throw new Error(`Incomplete or invalid Unicode property "${e}"`);return UI(e)}if(new RegExp("^\\\\x[89A-Fa-f]\\p{AHex}","u").test(e))try{const s=e.split(/\\x/).slice(1).map(u=>parseInt(u,16)),a=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}).decode(new Uint8Array(s)),l=new TextEncoder;return[...a].map(u=>{const c=[...l.encode(u)].map(d=>`\\x${d.toString(16)}`).join("");return hs(Wa(u),c)})}catch{throw new Error(`Multibyte code "${e}" incomplete or invalid in Oniguruma`)}if(n==="u"||n==="x")return hs(VI(e),e);if(_0.has(n))return hs(_0.get(n),e);if(/\d/.test(n))return DI(t,e);if(e==="\\")throw new Error(hn`Incomplete escape "\"`);if(n==="M")throw new Error(`Unsupported meta "${e}"`);if([...e].length===2)return hs(e.codePointAt(1),e);throw new Error(`Unexpected escape "${e}"`)}function NI(e){return{type:"Alternator",raw:e}}function g0(e,t){return{type:"Assertion",kind:e,raw:t}}function sC(e){return{type:"Backreference",raw:e}}function hs(e,t){return{type:"Character",value:e,raw:t}}function TI(e){return{type:"CharacterClassClose",raw:e}}function AI(e){return{type:"CharacterClassHyphen",raw:e}}function LI(e){return{type:"CharacterClassIntersector",raw:e}}function x0(e,t){return{type:"CharacterClassOpen",negate:e,raw:t}}function Ni(e,t,n={}){return{type:"CharacterSet",kind:e,...n,raw:t}}function iC(e,t,n={}){return e==="keep"?{type:"Directive",kind:e,raw:t}:{type:"Directive",kind:e,flags:qa(n.flags),raw:t}}function DI(e,t){return{type:"EscapedNumber",inCharClass:e,raw:t}}function RI(e){return{type:"GroupClose",raw:e}}function Ra(e,t,n={}){return{type:"GroupOpen",kind:e,...n,raw:t}}function OI(e,t,n,s){return{type:"NamedCallout",kind:e,tag:t,arguments:n,raw:s}}function MI(e,t,n,s){return{type:"Quantifier",kind:e,min:t,max:n,raw:s}}function II(e){return{type:"Subroutine",raw:e}}const PI=new Set(["COUNT","CMP","ERROR","FAIL","MAX","MISMATCH","SKIP","TOTAL_COUNT"]),_0=new Map([["a",7],["b",8],["e",27],["f",12],["n",10],["r",13],["t",9],["v",11]]);function BI(e){const t=e[1]==="c"?e[2]:e[3];if(!t||!/[A-Za-z]/.test(t))throw new Error(`Unsupported control character "${e}"`);return hs(Wa(t.toUpperCase())-64,e)}function zI(e,t){let{on:n,off:s}=/^\(\?(?<on>[imx]*)(?:-(?<off>[-imx]*))?/.exec(e).groups;s??(s="");const a=(t.getCurrentModX()||n.includes("x"))&&!s.includes("x"),l=v0(n),u=v0(s),c={};if(l&&(c.enable=l),u&&(c.disable=u),e.endsWith(")"))return t.replaceCurrentModX(a),iC("flags",e,{flags:c});if(e.endsWith(":"))return t.pushModX(a),t.numOpenGroups++,Ra("group",e,{...(l||u)&&{flags:c}});throw new Error(`Unexpected flag modifier "${e}"`)}function $I(e){const t=/\(\*(?<name>[A-Za-z_]\w*)?(?:\[(?<tag>(?:[A-Za-z_]\w*)?)\])?(?:\{(?<args>[^}]*)\})?\)/.exec(e);if(!t)throw new Error(`Incomplete or invalid named callout "${e}"`);const{name:n,tag:s,args:a}=t.groups;if(!n)throw new Error(`Invalid named callout "${e}"`);if(s==="")throw new Error(`Named callout tag with empty value not allowed "${e}"`);const l=a?a.split(",").filter(m=>m!=="").map(m=>/^[+-]?\d+$/.test(m)?+m:m):[],[u,c,d]=l,f=PI.has(n)?n.toLowerCase():"custom";switch(f){case"fail":case"mismatch":case"skip":if(l.length>0)throw new Error(`Named callout arguments not allowed "${l}"`);break;case"error":if(l.length>1)throw new Error(`Named callout allows only one argument "${l}"`);if(typeof u=="string")throw new Error(`Named callout argument must be a number "${u}"`);break;case"max":if(!l.length||l.length>2)throw new Error(`Named callout must have one or two arguments "${l}"`);if(typeof u=="string"&&!/^[A-Za-z_]\w*$/.test(u))throw new Error(`Named callout argument one must be a tag or number "${u}"`);if(l.length===2&&(typeof c=="number"||!/^[<>X]$/.test(c)))throw new Error(`Named callout optional argument two must be '<', '>', or 'X' "${c}"`);break;case"count":case"total_count":if(l.length>1)throw new Error(`Named callout allows only one argument "${l}"`);if(l.length===1&&(typeof u=="number"||!/^[<>X]$/.test(u)))throw new Error(`Named callout optional argument must be '<', '>', or 'X' "${u}"`);break;case"cmp":if(l.length!==3)throw new Error(`Named callout must have three arguments "${l}"`);if(typeof u=="string"&&!/^[A-Za-z_]\w*$/.test(u))throw new Error(`Named callout argument one must be a tag or number "${u}"`);if(typeof c=="number"||!/^(?:[<>!=]=|[<>])$/.test(c))throw new Error(`Named callout argument two must be '==', '!=', '>', '<', '>=', or '<=' "${c}"`);if(typeof d=="string"&&!/^[A-Za-z_]\w*$/.test(d))throw new Error(`Named callout argument three must be a tag or number "${d}"`);break;case"custom":throw new Error(`Undefined callout name "${n}"`);default:throw new Error(`Unexpected named callout kind "${f}"`)}return OI(f,s??null,(a==null?void 0:a.split(","))??null,e)}function y0(e){let t=null,n,s;if(e[0]==="{"){const{minStr:a,maxStr:l}=/^\{(?<minStr>\d*)(?:,(?<maxStr>\d*))?/.exec(e).groups,u=1e5;if(+a>u||l&&+l>u)throw new Error("Quantifier value unsupported in Oniguruma");if(n=+a,s=l===void 0?+a:l===""?1/0:+l,n>s&&(t="possessive",[n,s]=[s,n]),e.endsWith("?")){if(t==="possessive")throw new Error('Unsupported possessive interval quantifier chain with "?"');t="lazy"}else t||(t="greedy")}else n=e[0]==="+"?1:0,s=e[0]==="?"?1:1/0,t=e[1]==="+"?"possessive":e[1]==="?"?"lazy":"greedy";return MI(t,n,s,e)}function HI(e){const t=e[1].toLowerCase();return Ni({d:"digit",h:"hex",s:"space",w:"word"}[t],e,{negate:e[1]!==t})}function UI(e){const{p:t,neg:n,value:s}=/^\\(?<p>[pP])\{(?<neg>\^?)(?<value>[^}]+)/.exec(e).groups;return Ni("property",e,{value:s,negate:t==="P"&&!n||t==="p"&&!!n})}function v0(e){const t={};return e.includes("i")&&(t.ignoreCase=!0),e.includes("m")&&(t.dotAll=!0),e.includes("x")&&(t.extended=!0),Object.keys(t).length?t:null}function FI(e){const t={ignoreCase:!1,dotAll:!1,extended:!1,digitIsAscii:!1,posixIsAscii:!1,spaceIsAscii:!1,wordIsAscii:!1,textSegmentMode:null};for(let n=0;n<e.length;n++){const s=e[n];if(!"imxDPSWy".includes(s))throw new Error(`Invalid flag "${s}"`);if(s==="y"){if(!/^y{[gw]}/.test(e.slice(n)))throw new Error('Invalid or unspecified flag "y" mode');t.textSegmentMode=e[n+2]==="g"?"grapheme":"word",n+=3;continue}t[{i:"ignoreCase",m:"dotAll",x:"extended",D:"digitIsAscii",P:"posixIsAscii",S:"spaceIsAscii",W:"wordIsAscii"}[s]]=!0}return t}function VI(e){if(new RegExp("^(?:\\\\u(?!\\p{AHex}{4})|\\\\x(?!\\p{AHex}{1,2}|\\{\\p{AHex}{1,8}\\}))","u").test(e))throw new Error(`Incomplete or invalid escape "${e}"`);const t=e[2]==="{"?new RegExp("^\\\\x\\{\\s*(?<hex>\\p{AHex}+)","u").exec(e).groups.hex:e.slice(2);return parseInt(t,16)}function GI(e,t){const{raw:n,inCharClass:s}=e,a=n.slice(1);if(!s&&(a!=="0"&&a.length===1||a[0]!=="0"&&+a<=t))return[sC(n)];const l=[],u=a.match(/^[0-7]+|\d/g);for(let c=0;c<u.length;c++){const d=u[c];let f;if(c===0&&d!=="8"&&d!=="9"){if(f=parseInt(d,8),f>127)throw new Error(hn`Octal encoded byte above 177 unsupported "${n}"`)}else f=Wa(d);l.push(hs(f,(c===0?"\\":"")+d))}return l}function WI(e){const t=[],n=new RegExp(rg,"gy");let s;for(;s=n.exec(e);){const a=s[0];if(a[0]==="{"){const l=/^\{(?<min>\d+),(?<max>\d+)\}\??$/.exec(a);if(l){const{min:u,max:c}=l.groups;if(+u>+c&&a.endsWith("?")){n.lastIndex--,t.push(y0(a.slice(0,-1)));continue}}}t.push(y0(a))}return t}function aC(e,t){if(!Array.isArray(e.body))throw new Error("Expected node with body array");if(e.body.length!==1)return!1;const n=e.body[0];return!t||Object.keys(t).every(s=>t[s]===n[s])}function qI(e){return KI.has(e.type)}const KI=new Set(["AbsenceFunction","Backreference","CapturingGroup","Character","CharacterClass","CharacterSet","Group","Quantifier","Subroutine"]);function oC(e,t={}){const n={flags:"",normalizeUnknownPropertyNames:!1,skipBackrefValidation:!1,skipLookbehindValidation:!1,skipPropertyNameValidation:!1,unicodePropertyMap:null,...t,rules:{captureGroup:!1,singleline:!1,...t.rules}},s=CI(e,{flags:n.flags,rules:{captureGroup:n.rules.captureGroup,singleline:n.rules.singleline}}),a=(_,x)=>{const w=s.tokens[l.nextIndex];switch(l.parent=_,l.nextIndex++,w.type){case"Alternator":return Ri();case"Assertion":return YI(w);case"Backreference":return XI(w,l);case"Character":return ld(w.value,{useLastValid:!!x.isCheckingRangeEnd});case"CharacterClassHyphen":return QI(w,l,x);case"CharacterClassOpen":return JI(w,l,x);case"CharacterSet":return ZI(w,l);case"Directive":return iP(w.kind,{flags:w.flags});case"GroupOpen":return eP(w,l,x);case"NamedCallout":return oP(w.kind,w.tag,w.arguments);case"Quantifier":return tP(w,l);case"Subroutine":return nP(w,l);default:throw new Error(`Unexpected token type "${w.type}"`)}},l={capturingGroups:[],hasNumberedRef:!1,namedGroupsByName:new Map,nextIndex:0,normalizeUnknownPropertyNames:n.normalizeUnknownPropertyNames,parent:null,skipBackrefValidation:n.skipBackrefValidation,skipLookbehindValidation:n.skipLookbehindValidation,skipPropertyNameValidation:n.skipPropertyNameValidation,subroutines:[],tokens:s.tokens,unicodePropertyMap:n.unicodePropertyMap,walk:a},u=cP(aP(s.flags));let c=u.body[0];for(;l.nextIndex<s.tokens.length;){const _=a(c,{});_.type==="Alternative"?(u.body.push(_),c=_):c.body.push(_)}const{capturingGroups:d,hasNumberedRef:f,namedGroupsByName:m,subroutines:p}=l;if(f&&m.size&&!n.rules.captureGroup)throw new Error("Numbered backref/subroutine not allowed when using named capture");for(const{ref:_}of p)if(typeof _=="number"){if(_>d.length)throw new Error("Subroutine uses a group number that's not defined");_&&(d[_-1].isSubroutined=!0)}else if(m.has(_)){if(m.get(_).length>1)throw new Error(hn`Subroutine uses a duplicate group name "\g<${_}>"`);m.get(_)[0].isSubroutined=!0}else throw new Error(hn`Subroutine uses a group name that's not defined "\g<${_}>"`);return u}function YI({kind:e}){return Zm(qa({"^":"line_start",$:"line_end","\\A":"string_start","\\b":"word_boundary","\\B":"word_boundary","\\G":"search_start","\\y":"text_segment_boundary","\\Y":"text_segment_boundary","\\z":"string_end","\\Z":"string_end_newline"}[e],`Unexpected assertion kind "${e}"`),{negate:e===hn`\B`||e===hn`\Y`})}function XI({raw:e},t){const n=/^\\k[<']/.test(e),s=n?e.slice(3,-1):e.slice(1),a=(l,u=!1)=>{const c=t.capturingGroups.length;let d=!1;if(l>c)if(t.skipBackrefValidation)d=!0;else throw new Error(`Not enough capturing groups defined to the left "${e}"`);return t.hasNumberedRef=!0,ep(u?c+1-l:l,{orphan:d})};if(n){const l=/^(?<sign>-?)0*(?<num>[1-9]\d*)$/.exec(s);if(l)return a(+l.groups.num,!!l.groups.sign);if(/[-+]/.test(s))throw new Error(`Invalid backref name "${e}"`);if(!t.namedGroupsByName.has(s))throw new Error(`Group name not defined to the left "${e}"`);return ep(s)}return a(+s)}function QI(e,t,n){const{tokens:s,walk:a}=t,l=t.parent,u=l.body.at(-1),c=s[t.nextIndex];if(!n.isCheckingRangeEnd&&u&&u.type!=="CharacterClass"&&u.type!=="CharacterClassRange"&&c&&c.type!=="CharacterClassOpen"&&c.type!=="CharacterClassClose"&&c.type!=="CharacterClassIntersector"){const d=a(l,{...n,isCheckingRangeEnd:!0});if(u.type==="Character"&&d.type==="Character")return l.body.pop(),sP(u,d);throw new Error("Invalid character class range")}return ld(Wa("-"))}function JI({negate:e},t,n){const{tokens:s,walk:a}=t,l=[uu()],u=s[t.nextIndex];let c=w0(u);for(;c.type!=="CharacterClassClose";){if(c.type==="CharacterClassIntersector")l.push(uu()),t.nextIndex++;else{const f=l.at(-1);f.body.push(a(f,n))}c=w0(s[t.nextIndex],u)}const d=uu({negate:e});return l.length===1?d.body=l[0].body:(d.kind="intersection",d.body=l.map(f=>f.body.length===1?f.body[0]:f)),t.nextIndex++,d}function ZI({kind:e,negate:t,value:n},s){const{normalizeUnknownPropertyNames:a,skipPropertyNameValidation:l,unicodePropertyMap:u}=s;if(e==="property"){const c=cd(n);if(ng.has(c)&&!(u!=null&&u.has(c)))e="posix",n=c;else return Oa(n,{negate:t,normalizeUnknownPropertyNames:a,skipPropertyNameValidation:l,unicodePropertyMap:u})}return e==="posix"?lP(n,{negate:t}):tp(e,{negate:t})}function eP(e,t,n){const{tokens:s,capturingGroups:a,namedGroupsByName:l,skipLookbehindValidation:u,walk:c}=t,d=uP(e),f=d.type==="AbsenceFunction",m=S0(d),p=m&&d.negate;if(d.type==="CapturingGroup"&&(a.push(d),d.name&&wI(l,d.name,[]).push(d)),f&&n.isInAbsenceFunction)throw new Error("Nested absence function not supported by Oniguruma");let _=C0(s[t.nextIndex]);for(;_.type!=="GroupClose";){if(_.type==="Alternator")d.body.push(Ri()),t.nextIndex++;else{const x=d.body.at(-1),w=c(x,{...n,isInAbsenceFunction:n.isInAbsenceFunction||f,isInLookbehind:n.isInLookbehind||m,isInNegLookbehind:n.isInNegLookbehind||p});if(x.body.push(w),(m||n.isInLookbehind)&&!u){const C="Lookbehind includes a pattern not allowed by Oniguruma";if(p||n.isInNegLookbehind){if(b0(w)||w.type==="CapturingGroup")throw new Error(C)}else if(b0(w)||S0(w)&&w.negate)throw new Error(C)}}_=C0(s[t.nextIndex])}return t.nextIndex++,d}function tP({kind:e,min:t,max:n},s){const a=s.parent,l=a.body.at(-1);if(!l||!qI(l))throw new Error("Quantifier requires a repeatable token");const u=cC(e,t,n,l);return a.body.pop(),u}function nP({raw:e},t){const{capturingGroups:n,subroutines:s}=t;let a=e.slice(3,-1);const l=/^(?<sign>[-+]?)0*(?<num>[1-9]\d*)$/.exec(a);if(l){const c=+l.groups.num,d=n.length;if(t.hasNumberedRef=!0,a={"":c,"+":d+c,"-":d+1-c}[l.groups.sign],a<1)throw new Error("Invalid subroutine number")}else a==="0"&&(a=0);const u=uC(a);return s.push(u),u}function rP(e,t){return{type:"AbsenceFunction",kind:e,body:El(t==null?void 0:t.body)}}function Ri(e){return{type:"Alternative",body:dC(e==null?void 0:e.body)}}function Zm(e,t){const n={type:"Assertion",kind:e};return(e==="word_boundary"||e==="text_segment_boundary")&&(n.negate=!!(t!=null&&t.negate)),n}function ep(e,t){const n=!!(t!=null&&t.orphan);return{type:"Backreference",ref:e,...n&&{orphan:n}}}function lC(e,t){const n={name:void 0,isSubroutined:!1,...t};if(n.name!==void 0&&!dP(n.name))throw new Error(`Group name "${n.name}" invalid in Oniguruma`);return{type:"CapturingGroup",number:e,...n.name&&{name:n.name},...n.isSubroutined&&{isSubroutined:n.isSubroutined},body:El(t==null?void 0:t.body)}}function ld(e,t){const n={useLastValid:!1,...t};if(e>1114111){const s=e.toString(16);if(n.useLastValid)e=1114111;else throw e>1310719?new Error(`Invalid code point out of range "\\x{${s}}"`):new Error(`Invalid code point out of range in JS "\\x{${s}}"`)}return{type:"Character",value:e}}function uu(e){const t={kind:"union",negate:!1,...e};return{type:"CharacterClass",kind:t.kind,negate:t.negate,body:dC(e==null?void 0:e.body)}}function sP(e,t){if(t.value<e.value)throw new Error("Character class range out of order");return{type:"CharacterClassRange",min:e,max:t}}function tp(e,t){const n=!!(t!=null&&t.negate),s={type:"CharacterSet",kind:e};return(e==="digit"||e==="hex"||e==="newline"||e==="space"||e==="word")&&(s.negate=n),(e==="text_segment"||e==="newline"&&!n)&&(s.variableLength=!0),s}function iP(e,t={}){if(e==="keep")return{type:"Directive",kind:e};if(e==="flags")return{type:"Directive",kind:e,flags:qa(t.flags)};throw new Error(`Unexpected directive kind "${e}"`)}function aP(e){return{type:"Flags",...e}}function br(e){const t=e==null?void 0:e.atomic,n=e==null?void 0:e.flags;if(t&&n)throw new Error("Atomic group cannot have flags");return{type:"Group",...t&&{atomic:t},...n&&{flags:n},body:El(e==null?void 0:e.body)}}function Ei(e){const t={behind:!1,negate:!1,...e};return{type:"LookaroundAssertion",kind:t.behind?"lookbehind":"lookahead",negate:t.negate,body:El(e==null?void 0:e.body)}}function oP(e,t,n){return{type:"NamedCallout",kind:e,tag:t,arguments:n}}function lP(e,t){const n=!!(t!=null&&t.negate);if(!ng.has(e))throw new Error(`Invalid POSIX class "${e}"`);return{type:"CharacterSet",kind:"posix",value:e,negate:n}}function cC(e,t,n,s){if(t>n)throw new Error("Invalid reversed quantifier range");return{type:"Quantifier",kind:e,min:t,max:n,body:s}}function cP(e,t){return{type:"Regex",body:El(t==null?void 0:t.body),flags:e}}function uC(e){return{type:"Subroutine",ref:e}}function Oa(e,t){var a;const n={negate:!1,normalizeUnknownPropertyNames:!1,skipPropertyNameValidation:!1,unicodePropertyMap:null,...t};let s=(a=n.unicodePropertyMap)==null?void 0:a.get(cd(e));if(!s){if(n.normalizeUnknownPropertyNames)s=hP(e);else if(n.unicodePropertyMap&&!n.skipPropertyNameValidation)throw new Error(hn`Invalid Unicode property "\p{${e}}"`)}return{type:"CharacterSet",kind:"property",value:s??e,negate:n.negate}}function uP({flags:e,kind:t,name:n,negate:s,number:a}){switch(t){case"absence_repeater":return rP("repeater");case"atomic":return br({atomic:!0});case"capturing":return lC(a,{name:n});case"group":return br({flags:e});case"lookahead":case"lookbehind":return Ei({behind:t==="lookbehind",negate:s});default:throw new Error(`Unexpected group kind "${t}"`)}}function El(e){if(e===void 0)e=[Ri()];else if(!Array.isArray(e)||!e.length||!e.every(t=>t.type==="Alternative"))throw new Error("Invalid body; expected array of one or more Alternative nodes");return e}function dC(e){if(e===void 0)e=[];else if(!Array.isArray(e)||!e.every(t=>!!t.type))throw new Error("Invalid body; expected array of nodes");return e}function b0(e){return e.type==="LookaroundAssertion"&&e.kind==="lookahead"}function S0(e){return e.type==="LookaroundAssertion"&&e.kind==="lookbehind"}function dP(e){return/^[\p{Alpha}\p{Pc}][^)]*$/u.test(e)}function hP(e){return e.trim().replace(/[- _]+/g,"_").replace(/[A-Z][a-z]+(?=[A-Z])/g,"$&_").replace(/[A-Za-z]+/g,t=>t[0].toUpperCase()+t.slice(1).toLowerCase())}function cd(e){return e.replace(/[- _]+/g,"").toLowerCase()}function w0(e,t){const n=t;return qa(e,`Unclosed character class${(n==null?void 0:n.type)==="Character"&&n.value===93&&n.raw==="]"?' (started with "]")':""}`)}function C0(e){return qa(e,"Unclosed group")}function il(e,t,n=null){function s(l,u){for(let c=0;c<l.length;c++){const d=a(l[c],u,c,l);c=Math.max(-1,c+d)}}function a(l,u=null,c=null,d=null){var S,b;let f=0,m=!1;const p={node:l,parent:u,key:c,container:d,root:e,remove(){nu(d).splice(Math.max(0,Ea(c)+f),1),f--,m=!0},removeAllNextSiblings(){return nu(d).splice(Ea(c)+1)},removeAllPrevSiblings(){const y=Ea(c)+f;return f-=y,nu(d).splice(0,Math.max(0,y))},replaceWith(y,E={}){const N=!!E.traverse;d?d[Math.max(0,Ea(c)+f)]=y:qa(u,"Can't replace root node")[c]=y,N&&a(y,u,c,d),m=!0},replaceWithMultiple(y,E={}){const N=!!E.traverse;if(nu(d).splice(Math.max(0,Ea(c)+f),1,...y),f+=y.length-1,N){let T=0;for(let L=0;L<y.length;L++)T+=a(y[L],u,Ea(c)+L+T,d)}m=!0},skip(){m=!0}},{type:_}=l,x=t["*"],w=t[_],C=typeof x=="function"?x:x==null?void 0:x.enter,v=typeof w=="function"?w:w==null?void 0:w.enter;if(C==null||C(p,n),v==null||v(p,n),!m)switch(_){case"AbsenceFunction":case"Alternative":case"CapturingGroup":case"CharacterClass":case"Group":case"LookaroundAssertion":s(l.body,l);break;case"Assertion":case"Backreference":case"Character":case"CharacterSet":case"Directive":case"Flags":case"NamedCallout":case"Subroutine":break;case"CharacterClassRange":a(l.min,l,"min"),a(l.max,l,"max");break;case"Quantifier":a(l.body,l,"body");break;case"Regex":s(l.body,l),a(l.flags,l,"flags");break;default:throw new Error(`Unexpected node type "${_}"`)}return(S=w==null?void 0:w.exit)==null||S.call(w,p,n),(b=x==null?void 0:x.exit)==null||b.call(x,p,n),f}return a(e),e}function nu(e){if(!Array.isArray(e))throw new Error("Container expected");return e}function Ea(e){if(typeof e!="number")throw new Error("Numeric key expected");return e}const fP=String.raw`\(\?(?:[:=!>A-Za-z\-]|<[=!]|\(DEFINE\))`;function mP(e,t){for(let n=0;n<e.length;n++)e[n]>=t&&e[n]++}function pP(e,t,n,s){return e.slice(0,t)+s+e.slice(t+n.length)}const ur=Object.freeze({DEFAULT:"DEFAULT",CHAR_CLASS:"CHAR_CLASS"});function sg(e,t,n,s){const a=new RegExp(String.raw`${t}|(?<$skip>\[\^?|\\?.)`,"gsu"),l=[!1];let u=0,c="";for(const d of e.matchAll(a)){const{0:f,groups:{$skip:m}}=d;if(!m&&(!s||s===ur.DEFAULT==!u)){n instanceof Function?c+=n(d,{context:u?ur.CHAR_CLASS:ur.DEFAULT,negated:l[l.length-1]}):c+=n;continue}f[0]==="["?(u++,l.push(f[1]==="^")):f==="]"&&u&&(u--,l.pop()),c+=f}return c}function hC(e,t,n,s){sg(e,t,n,s)}function gP(e,t,n=0,s){if(!new RegExp(t,"su").test(e))return null;const a=new RegExp(`${t}|(?<$skip>\\\\?.)`,"gsu");a.lastIndex=n;let l=0,u;for(;u=a.exec(e);){const{0:c,groups:{$skip:d}}=u;if(!d&&(!s||s===ur.DEFAULT==!l))return u;c==="["?l++:c==="]"&&l&&l--,a.lastIndex==u.index&&a.lastIndex++}return null}function ru(e,t,n){return!!gP(e,t,0,n)}function xP(e,t){const n=/\\?./gsu;n.lastIndex=t;let s=e.length,a=0,l=1,u;for(;u=n.exec(e);){const[c]=u;if(c==="[")a++;else if(a)c==="]"&&a--;else if(c==="(")l++;else if(c===")"&&(l--,!l)){s=u.index;break}}return e.slice(t,s)}const k0=new RegExp(String.raw`(?<noncapturingStart>${fP})|(?<capturingStart>\((?:\?<[^>]+>)?)|\\?.`,"gsu");function _P(e,t){const n=(t==null?void 0:t.hiddenCaptures)??[];let s=(t==null?void 0:t.captureTransfers)??new Map;if(!/\(\?>/.test(e))return{pattern:e,captureTransfers:s,hiddenCaptures:n};const a="(?>",l="(?:(?=(",u=[0],c=[];let d=0,f=0,m=NaN,p;do{p=!1;let _=0,x=0,w=!1,C;for(k0.lastIndex=Number.isNaN(m)?0:m+l.length;C=k0.exec(e);){const{0:v,index:S,groups:{capturingStart:b,noncapturingStart:y}}=C;if(v==="[")_++;else if(_)v==="]"&&_--;else if(v===a&&!w)m=S,w=!0;else if(w&&y)x++;else if(b)w?x++:(d++,u.push(d+f));else if(v===")"&&w){if(!x){f++;const E=d+f;if(e=`${e.slice(0,m)}${l}${e.slice(m+a.length,S)}))<$$${E}>)${e.slice(S+1)}`,p=!0,c.push(E),mP(n,E),s.size){const N=new Map;s.forEach((T,L)=>{N.set(L>=E?L+1:L,T.map(A=>A>=E?A+1:A))}),s=N}break}x--}}}while(p);return n.push(...c),e=sg(e,String.raw`\\(?<backrefNum>[1-9]\d*)|<\$\$(?<wrappedBackrefNum>\d+)>`,({0:_,groups:{backrefNum:x,wrappedBackrefNum:w}})=>{if(x){const C=+x;if(C>u.length-1)throw new Error(`Backref "${_}" greater than number of captures`);return`\\${u[C]}`}return`\\${w}`},ur.DEFAULT),{pattern:e,captureTransfers:s,hiddenCaptures:n}}const fC=String.raw`(?:[?*+]|\{\d+(?:,\d*)?\})`,hm=new RegExp(String.raw`
168
+ \\(?: \d+
169
+ | c[A-Za-z]
170
+ | [gk]<[^>]+>
171
+ | [pPu]\{[^\}]+\}
172
+ | u[A-Fa-f\d]{4}
173
+ | x[A-Fa-f\d]{2}
174
+ )
175
+ | \((?: \? (?: [:=!>]
176
+ | <(?:[=!]|[^>]+>)
177
+ | [A-Za-z\-]+:
178
+ | \(DEFINE\)
179
+ ))?
180
+ | (?<qBase>${fC})(?<qMod>[?+]?)(?<invalidQ>[?*+\{]?)
181
+ | \\?.
182
+ `.replace(/\s+/g,""),"gsu");function yP(e){if(!new RegExp(`${fC}\\+`).test(e))return{pattern:e};const t=[];let n=null,s=null,a="",l=0,u;for(hm.lastIndex=0;u=hm.exec(e);){const{0:c,index:d,groups:{qBase:f,qMod:m,invalidQ:p}}=u;if(c==="[")l||(s=d),l++;else if(c==="]")l?l--:s=null;else if(!l)if(m==="+"&&a&&!a.startsWith("(")){if(p)throw new Error(`Invalid quantifier "${c}"`);let _=-1;if(/^\{\d+\}$/.test(f))e=pP(e,d+f.length,m,"");else{if(a===")"||a==="]"){const x=a===")"?n:s;if(x===null)throw new Error(`Invalid unmatched "${a}"`);e=`${e.slice(0,x)}(?>${e.slice(x,d)}${f})${e.slice(d+c.length)}`}else e=`${e.slice(0,d-a.length)}(?>${a}${f})${e.slice(d+c.length)}`;_+=4}hm.lastIndex+=_}else c[0]==="("?t.push(d):c===")"&&(n=t.length?t.pop():null);a=c}return{pattern:e}}const cr=String.raw,vP=cr`\\g<(?<gRNameOrNum>[^>&]+)&R=(?<gRDepth>[^>]+)>`,np=cr`\(\?R=(?<rDepth>[^\)]+)\)|${vP}`,ud=cr`\(\?<(?![=!])(?<captureName>[^>]+)>`,mC=cr`${ud}|(?<unnamed>\()(?!\?)`,yi=new RegExp(cr`${ud}|${np}|\(\?|\\?.`,"gsu"),fm="Cannot use multiple overlapping recursions";function bP(e,t){const{hiddenCaptures:n,mode:s}={hiddenCaptures:[],mode:"plugin",...t};let a=(t==null?void 0:t.captureTransfers)??new Map;if(!new RegExp(np,"su").test(e))return{pattern:e,captureTransfers:a,hiddenCaptures:n};if(s==="plugin"&&ru(e,cr`\(\?\(DEFINE\)`,ur.DEFAULT))throw new Error("DEFINE groups cannot be used with recursion");const l=[],u=ru(e,cr`\\[1-9]`,ur.DEFAULT),c=new Map,d=[];let f=!1,m=0,p=0,_;for(yi.lastIndex=0;_=yi.exec(e);){const{0:x,groups:{captureName:w,rDepth:C,gRNameOrNum:v,gRDepth:S}}=_;if(x==="[")m++;else if(m)x==="]"&&m--;else if(C){if(E0(C),f)throw new Error(fm);if(u)throw new Error(`${s==="external"?"Backrefs":"Numbered backrefs"} cannot be used with global recursion`);const b=e.slice(0,_.index),y=e.slice(yi.lastIndex);if(ru(y,np,ur.DEFAULT))throw new Error(fm);const E=+C-1;e=j0(b,y,E,!1,n,l,p),a=T0(a,b,E,l.length,0,p);break}else if(v){E0(S);let b=!1;for(const W of d)if(W.name===v||W.num===+v){if(b=!0,W.hasRecursedWithin)throw new Error(fm);break}if(!b)throw new Error(cr`Recursive \g cannot be used outside the referenced group "${s==="external"?v:cr`\g<${v}&R=${S}>`}"`);const y=c.get(v),E=xP(e,y);if(u&&ru(E,cr`${ud}|\((?!\?)`,ur.DEFAULT))throw new Error(`${s==="external"?"Backrefs":"Numbered backrefs"} cannot be used with recursion of capturing groups`);const N=e.slice(y,_.index),T=E.slice(N.length+x.length),L=l.length,A=+S-1,R=j0(N,T,A,!0,n,l,p);a=T0(a,N,A,l.length-L,L,p);const M=e.slice(0,y),G=e.slice(y+E.length);e=`${M}${R}${G}`,yi.lastIndex+=R.length-x.length-N.length-T.length,d.forEach(W=>W.hasRecursedWithin=!0),f=!0}else if(w)p++,c.set(String(p),yi.lastIndex),c.set(w,yi.lastIndex),d.push({num:p,name:w});else if(x[0]==="("){const b=x==="(";b&&(p++,c.set(String(p),yi.lastIndex)),d.push(b?{num:p}:{})}else x===")"&&d.pop()}return n.push(...l),{pattern:e,captureTransfers:a,hiddenCaptures:n}}function E0(e){const t=`Max depth must be integer between 2 and 100; used ${e}`;if(!/^[1-9]\d*$/.test(e))throw new Error(t);if(e=+e,e<2||e>100)throw new Error(t)}function j0(e,t,n,s,a,l,u){const c=new Set;s&&hC(e+t,ud,({groups:{captureName:f}})=>{c.add(f)},ur.DEFAULT);const d=[n,s?c:null,a,l,u];return`${e}${N0(`(?:${e}`,"forward",...d)}(?:)${N0(`${t})`,"backward",...d)}${t}`}function N0(e,t,n,s,a,l,u){const d=m=>t==="forward"?m+2:n-m+2-1;let f="";for(let m=0;m<n;m++){const p=d(m);f+=sg(e,cr`${mC}|\\k<(?<backref>[^>]+)>`,({0:_,groups:{captureName:x,unnamed:w,backref:C}})=>{if(C&&s&&!s.has(C))return _;const v=`_$${p}`;if(w||x){const S=u+l.length+1;return l.push(S),SP(a,S),w?_:`(?<${x}${v}>`}return cr`\k<${C}${v}>`},ur.DEFAULT)}return f}function SP(e,t){for(let n=0;n<e.length;n++)e[n]>=t&&e[n]++}function T0(e,t,n,s,a,l){if(e.size&&s){let u=0;hC(t,mC,()=>u++,ur.DEFAULT);const c=l-u+a,d=new Map;return e.forEach((f,m)=>{const p=(s-u*n)/n,_=u*n,x=m>c+u?m+s:m,w=[];for(const C of f)if(C<=c)w.push(C);else if(C>c+u+p)w.push(C+s);else if(C<=c+u)for(let v=0;v<=n;v++)w.push(C+u*v);else for(let v=0;v<=n;v++)w.push(C+_+p*v);d.set(x,w)}),d}return e}var an=String.fromCodePoint,qe=String.raw,Cr={},dd=globalThis.RegExp;Cr.flagGroups=(()=>{try{new dd("(?i:)")}catch{return!1}return!0})();Cr.unicodeSets=(()=>{try{new dd("[[]]","v")}catch{return!1}return!0})();Cr.bugFlagVLiteralHyphenIsRange=Cr.unicodeSets?(()=>{try{new dd(qe`[\d\-a]`,"v")}catch{return!0}return!1})():!1;Cr.bugNestedClassIgnoresNegation=Cr.unicodeSets&&new dd("[[^a]]","v").test("a");function Au(e,{enable:t,disable:n}){return{dotAll:!(n!=null&&n.dotAll)&&!!(t!=null&&t.dotAll||e.dotAll),ignoreCase:!(n!=null&&n.ignoreCase)&&!!(t!=null&&t.ignoreCase||e.ignoreCase)}}function fl(e,t,n){return e.has(t)||e.set(t,n),e.get(t)}function rp(e,t){return A0[e]>=A0[t]}function wP(e,t){if(e==null)throw new Error(t??"Value expected");return e}var A0={ES2025:2025,ES2024:2024,ES2018:2018},CP={auto:"auto",ES2025:"ES2025",ES2024:"ES2024",ES2018:"ES2018"};function pC(e={}){if({}.toString.call(e)!=="[object Object]")throw new Error("Unexpected options");if(e.target!==void 0&&!CP[e.target])throw new Error(`Unexpected target "${e.target}"`);const t={accuracy:"default",avoidSubclass:!1,flags:"",global:!1,hasIndices:!1,lazyCompileLength:1/0,target:"auto",verbose:!1,...e,rules:{allowOrphanBackrefs:!1,asciiWordBoundaries:!1,captureGroup:!1,recursionLimit:20,singleline:!1,...e.rules}};return t.target==="auto"&&(t.target=Cr.flagGroups?"ES2025":Cr.unicodeSets?"ES2024":"ES2018"),t}var kP="[ -\r ]",EP=new Set([an(304),an(305)]),is=qe`[\p{L}\p{M}\p{N}\p{Pc}]`;function gC(e){if(EP.has(e))return[e];const t=new Set,n=e.toLowerCase(),s=n.toUpperCase(),a=TP.get(n),l=jP.get(n),u=NP.get(n);return[...s].length===1&&t.add(s),u&&t.add(u),a&&t.add(a),t.add(n),l&&t.add(l),[...t]}var ig=new Map(`C Other
183
+ Cc Control cntrl
184
+ Cf Format
185
+ Cn Unassigned
186
+ Co Private_Use
187
+ Cs Surrogate
188
+ L Letter
189
+ LC Cased_Letter
190
+ Ll Lowercase_Letter
191
+ Lm Modifier_Letter
192
+ Lo Other_Letter
193
+ Lt Titlecase_Letter
194
+ Lu Uppercase_Letter
195
+ M Mark Combining_Mark
196
+ Mc Spacing_Mark
197
+ Me Enclosing_Mark
198
+ Mn Nonspacing_Mark
199
+ N Number
200
+ Nd Decimal_Number digit
201
+ Nl Letter_Number
202
+ No Other_Number
203
+ P Punctuation punct
204
+ Pc Connector_Punctuation
205
+ Pd Dash_Punctuation
206
+ Pe Close_Punctuation
207
+ Pf Final_Punctuation
208
+ Pi Initial_Punctuation
209
+ Po Other_Punctuation
210
+ Ps Open_Punctuation
211
+ S Symbol
212
+ Sc Currency_Symbol
213
+ Sk Modifier_Symbol
214
+ Sm Math_Symbol
215
+ So Other_Symbol
216
+ Z Separator
217
+ Zl Line_Separator
218
+ Zp Paragraph_Separator
219
+ Zs Space_Separator
220
+ ASCII
221
+ ASCII_Hex_Digit AHex
222
+ Alphabetic Alpha
223
+ Any
224
+ Assigned
225
+ Bidi_Control Bidi_C
226
+ Bidi_Mirrored Bidi_M
227
+ Case_Ignorable CI
228
+ Cased
229
+ Changes_When_Casefolded CWCF
230
+ Changes_When_Casemapped CWCM
231
+ Changes_When_Lowercased CWL
232
+ Changes_When_NFKC_Casefolded CWKCF
233
+ Changes_When_Titlecased CWT
234
+ Changes_When_Uppercased CWU
235
+ Dash
236
+ Default_Ignorable_Code_Point DI
237
+ Deprecated Dep
238
+ Diacritic Dia
239
+ Emoji
240
+ Emoji_Component EComp
241
+ Emoji_Modifier EMod
242
+ Emoji_Modifier_Base EBase
243
+ Emoji_Presentation EPres
244
+ Extended_Pictographic ExtPict
245
+ Extender Ext
246
+ Grapheme_Base Gr_Base
247
+ Grapheme_Extend Gr_Ext
248
+ Hex_Digit Hex
249
+ IDS_Binary_Operator IDSB
250
+ IDS_Trinary_Operator IDST
251
+ ID_Continue IDC
252
+ ID_Start IDS
253
+ Ideographic Ideo
254
+ Join_Control Join_C
255
+ Logical_Order_Exception LOE
256
+ Lowercase Lower
257
+ Math
258
+ Noncharacter_Code_Point NChar
259
+ Pattern_Syntax Pat_Syn
260
+ Pattern_White_Space Pat_WS
261
+ Quotation_Mark QMark
262
+ Radical
263
+ Regional_Indicator RI
264
+ Sentence_Terminal STerm
265
+ Soft_Dotted SD
266
+ Terminal_Punctuation Term
267
+ Unified_Ideograph UIdeo
268
+ Uppercase Upper
269
+ Variation_Selector VS
270
+ White_Space space
271
+ XID_Continue XIDC
272
+ XID_Start XIDS`.split(/\s/).map(e=>[cd(e),e])),jP=new Map([["s",an(383)],[an(383),"s"]]),NP=new Map([[an(223),an(7838)],[an(107),an(8490)],[an(229),an(8491)],[an(969),an(8486)]]),TP=new Map([$s(453),$s(456),$s(459),$s(498),...mm(8072,8079),...mm(8088,8095),...mm(8104,8111),$s(8124),$s(8140),$s(8188)]),AP=new Map([["alnum",qe`[\p{Alpha}\p{Nd}]`],["alpha",qe`\p{Alpha}`],["ascii",qe`\p{ASCII}`],["blank",qe`[\p{Zs}\t]`],["cntrl",qe`\p{Cc}`],["digit",qe`\p{Nd}`],["graph",qe`[\P{space}&&\P{Cc}&&\P{Cn}&&\P{Cs}]`],["lower",qe`\p{Lower}`],["print",qe`[[\P{space}&&\P{Cc}&&\P{Cn}&&\P{Cs}]\p{Zs}]`],["punct",qe`[\p{P}\p{S}]`],["space",qe`\p{space}`],["upper",qe`\p{Upper}`],["word",qe`[\p{Alpha}\p{M}\p{Nd}\p{Pc}]`],["xdigit",qe`\p{AHex}`]]);function LP(e,t){const n=[];for(let s=e;s<=t;s++)n.push(s);return n}function $s(e){const t=an(e);return[t.toLowerCase(),t]}function mm(e,t){return LP(e,t).map(n=>$s(n))}var xC=new Set(["Lower","Lowercase","Upper","Uppercase","Ll","Lowercase_Letter","Lt","Titlecase_Letter","Lu","Uppercase_Letter"]);function DP(e,t){const n={accuracy:"default",asciiWordBoundaries:!1,avoidSubclass:!1,bestEffortTarget:"ES2025",...t};_C(e);const s={accuracy:n.accuracy,asciiWordBoundaries:n.asciiWordBoundaries,avoidSubclass:n.avoidSubclass,flagDirectivesByAlt:new Map,jsGroupNameMap:new Map,minTargetEs2024:rp(n.bestEffortTarget,"ES2024"),passedLookbehind:!1,strategy:null,subroutineRefMap:new Map,supportedGNodes:new Set,digitIsAscii:e.flags.digitIsAscii,spaceIsAscii:e.flags.spaceIsAscii,wordIsAscii:e.flags.wordIsAscii};il(e,RP,s);const a={dotAll:e.flags.dotAll,ignoreCase:e.flags.ignoreCase},l={currentFlags:a,prevFlags:null,globalFlags:a,groupOriginByCopy:new Map,groupsByName:new Map,multiplexCapturesToLeftByRef:new Map,openRefs:new Map,reffedNodesByReferencer:new Map,subroutineRefMap:s.subroutineRefMap};il(e,OP,l);const u={groupsByName:l.groupsByName,highestOrphanBackref:0,numCapturesToLeft:0,reffedNodesByReferencer:l.reffedNodesByReferencer};return il(e,MP,u),e._originMap=l.groupOriginByCopy,e._strategy=s.strategy,e}var RP={AbsenceFunction({node:e,parent:t,replaceWith:n}){const{body:s,kind:a}=e;if(a==="repeater"){const l=br();l.body[0].body.push(Ei({negate:!0,body:s}),Oa("Any"));const u=br();u.body[0].body.push(cC("greedy",0,1/0,l)),n(qt(u,t),{traverse:!0})}else throw new Error('Unsupported absence function "(?~|"')},Alternative:{enter({node:e,parent:t,key:n},{flagDirectivesByAlt:s}){const a=e.body.filter(l=>l.kind==="flags");for(let l=n+1;l<t.body.length;l++){const u=t.body[l];fl(s,u,[]).push(...a)}},exit({node:e},{flagDirectivesByAlt:t}){var n;if((n=t.get(e))!=null&&n.length){const s=vC(t.get(e));if(s){const a=br({flags:s});a.body[0].body=e.body,e.body=[qt(a,e)]}}}},Assertion({node:e,parent:t,key:n,container:s,root:a,remove:l,replaceWith:u},c){const{kind:d,negate:f}=e,{asciiWordBoundaries:m,avoidSubclass:p,supportedGNodes:_,wordIsAscii:x}=c;if(d==="text_segment_boundary")throw new Error(`Unsupported text segment boundary "\\${f?"Y":"y"}"`);if(d==="line_end")u(qt(Ei({body:[Ri({body:[Zm("string_end")]}),Ri({body:[ld(10)]})]}),t));else if(d==="line_start")u(qt(as(qe`(?<=\A|\n(?!\z))`,{skipLookbehindValidation:!0}),t));else if(d==="search_start")if(_.has(e))a.flags.sticky=!0,l();else{const w=s[n-1];if(w&&HP(w))u(qt(Ei({negate:!0}),t));else{if(p)throw new Error(qe`Uses "\G" in a way that requires a subclass`);u(Hs(Zm("string_start"),t)),c.strategy="clip_search"}}else if(!(d==="string_end"||d==="string_start"))if(d==="string_end_newline")u(qt(as(qe`(?=\n?\z)`),t));else if(d==="word_boundary"){if(!x&&!m){const w=`(?:(?<=${is})(?!${is})|(?<!${is})(?=${is}))`,C=`(?:(?<=${is})(?=${is})|(?<!${is})(?!${is}))`;u(qt(as(f?C:w),t))}}else throw new Error(`Unexpected assertion kind "${d}"`)},Backreference({node:e},{jsGroupNameMap:t}){let{ref:n}=e;typeof n=="string"&&!gm(n)&&(n=pm(n,t),e.ref=n)},CapturingGroup({node:e},{jsGroupNameMap:t,subroutineRefMap:n}){let{name:s}=e;s&&!gm(s)&&(s=pm(s,t),e.name=s),n.set(e.number,e),s&&n.set(s,e)},CharacterClassRange({node:e,parent:t,replaceWith:n}){if(t.kind==="intersection"){const s=uu({body:[e]});n(qt(s,t),{traverse:!0})}},CharacterSet({node:e,parent:t,replaceWith:n},{accuracy:s,minTargetEs2024:a,digitIsAscii:l,spaceIsAscii:u,wordIsAscii:c}){const{kind:d,negate:f,value:m}=e;if(l&&(d==="digit"||m==="digit")){n(Hs(tp("digit",{negate:f}),t));return}if(u&&(d==="space"||m==="space")){n(qt(xm(as(kP),f),t));return}if(c&&(d==="word"||m==="word")){n(Hs(tp("word",{negate:f}),t));return}if(d==="any")n(Hs(Oa("Any"),t));else if(d==="digit")n(Hs(Oa("Nd",{negate:f}),t));else if(d!=="dot")if(d==="text_segment"){if(s==="strict")throw new Error(qe`Use of "\X" requires non-strict accuracy`);const p="\\p{Emoji}(?:\\p{EMod}|\\uFE0F\\u20E3?|[\\x{E0020}-\\x{E007E}]+\\x{E007F})?",_=qe`\p{RI}{2}|${p}(?:\u200D${p})*`;n(qt(as(qe`(?>\r\n|${a?qe`\p{RGI_Emoji}`:_}|\P{M}\p{M}*)`,{skipPropertyNameValidation:!0}),t))}else if(d==="hex")n(Hs(Oa("AHex",{negate:f}),t));else if(d==="newline")n(qt(as(f?`[^
273
+ ]`:`(?>\r
274
+ ?|[
275
+ \v\f…\u2028\u2029])`),t));else if(d==="posix")if(!a&&(m==="graph"||m==="print")){if(s==="strict")throw new Error(`POSIX class "${m}" requires min target ES2024 or non-strict accuracy`);let p={graph:"!-~",print:" -~"}[m];f&&(p=`\0-${an(p.codePointAt(0)-1)}${an(p.codePointAt(2)+1)}-􏿿`),n(qt(as(`[${p}]`),t))}else n(qt(xm(as(AP.get(m)),f),t));else if(d==="property")ig.has(cd(m))||(e.key="sc");else if(d==="space")n(Hs(Oa("space",{negate:f}),t));else if(d==="word")n(qt(xm(as(is),f),t));else throw new Error(`Unexpected character set kind "${d}"`)},Directive({node:e,parent:t,root:n,remove:s,replaceWith:a,removeAllPrevSiblings:l,removeAllNextSiblings:u}){const{kind:c,flags:d}=e;if(c==="flags")if(!d.enable&&!d.disable)s();else{const f=br({flags:d});f.body[0].body=u(),a(qt(f,t),{traverse:!0})}else if(c==="keep"){const f=n.body[0],p=n.body.length===1&&aC(f,{type:"Group"})&&f.body[0].body.length===1?f.body[0]:n;if(t.parent!==p||p.body.length>1)throw new Error(qe`Uses "\K" in a way that's unsupported`);const _=Ei({behind:!0});_.body[0].body=l(),a(qt(_,t))}else throw new Error(`Unexpected directive kind "${c}"`)},Flags({node:e,parent:t}){if(e.posixIsAscii)throw new Error('Unsupported flag "P"');if(e.textSegmentMode==="word")throw new Error('Unsupported flag "y{w}"');["digitIsAscii","extended","posixIsAscii","spaceIsAscii","wordIsAscii","textSegmentMode"].forEach(n=>delete e[n]),Object.assign(e,{global:!1,hasIndices:!1,multiline:!1,sticky:e.sticky??!1}),t.options={disable:{x:!0,n:!0},force:{v:!0}}},Group({node:e}){if(!e.flags)return;const{enable:t,disable:n}=e.flags;t!=null&&t.extended&&delete t.extended,n!=null&&n.extended&&delete n.extended,t!=null&&t.dotAll&&(n!=null&&n.dotAll)&&delete t.dotAll,t!=null&&t.ignoreCase&&(n!=null&&n.ignoreCase)&&delete t.ignoreCase,t&&!Object.keys(t).length&&delete e.flags.enable,n&&!Object.keys(n).length&&delete e.flags.disable,!e.flags.enable&&!e.flags.disable&&delete e.flags},LookaroundAssertion({node:e},t){const{kind:n}=e;n==="lookbehind"&&(t.passedLookbehind=!0)},NamedCallout({node:e,parent:t,replaceWith:n}){const{kind:s}=e;if(s==="fail")n(qt(Ei({negate:!0}),t));else throw new Error(`Unsupported named callout "(*${s.toUpperCase()}"`)},Quantifier({node:e}){if(e.body.type==="Quantifier"){const t=br();t.body[0].body.push(e.body),e.body=qt(t,e)}},Regex:{enter({node:e},{supportedGNodes:t}){const n=[];let s=!1,a=!1;for(const l of e.body)if(l.body.length===1&&l.body[0].kind==="search_start")l.body.pop();else{const u=SC(l.body);u?(s=!0,Array.isArray(u)?n.push(...u):n.push(u)):a=!0}s&&!a&&n.forEach(l=>t.add(l))},exit(e,{accuracy:t,passedLookbehind:n,strategy:s}){if(t==="strict"&&n&&s)throw new Error(qe`Uses "\G" in a way that requires non-strict accuracy`)}},Subroutine({node:e},{jsGroupNameMap:t}){let{ref:n}=e;typeof n=="string"&&!gm(n)&&(n=pm(n,t),e.ref=n)}},OP={Backreference({node:e},{multiplexCapturesToLeftByRef:t,reffedNodesByReferencer:n}){const{orphan:s,ref:a}=e;s||n.set(e,[...t.get(a).map(({node:l})=>l)])},CapturingGroup:{enter({node:e,parent:t,replaceWith:n,skip:s},{groupOriginByCopy:a,groupsByName:l,multiplexCapturesToLeftByRef:u,openRefs:c,reffedNodesByReferencer:d}){const f=a.get(e);if(f&&c.has(e.number)){const p=Hs(L0(e.number),t);d.set(p,c.get(e.number)),n(p);return}c.set(e.number,e),u.set(e.number,[]),e.name&&fl(u,e.name,[]);const m=u.get(e.name??e.number);for(let p=0;p<m.length;p++){const _=m[p];if(f===_.node||f&&f===_.origin||e===_.origin){m.splice(p,1);break}}if(u.get(e.number).push({node:e,origin:f}),e.name&&u.get(e.name).push({node:e,origin:f}),e.name){const p=fl(l,e.name,new Map);let _=!1;if(f)_=!0;else for(const x of p.values())if(!x.hasDuplicateNameToRemove){_=!0;break}l.get(e.name).set(e,{node:e,hasDuplicateNameToRemove:_})}},exit({node:e},{openRefs:t}){t.get(e.number)===e&&t.delete(e.number)}},Group:{enter({node:e},t){t.prevFlags=t.currentFlags,e.flags&&(t.currentFlags=Au(t.currentFlags,e.flags))},exit(e,t){t.currentFlags=t.prevFlags}},Subroutine({node:e,parent:t,replaceWith:n},s){const{isRecursive:a,ref:l}=e;if(a){let m=t;for(;(m=m.parent)&&!(m.type==="CapturingGroup"&&(m.name===l||m.number===l)););s.reffedNodesByReferencer.set(e,m);return}const u=s.subroutineRefMap.get(l),c=l===0,d=c?L0(0):yC(u,s.groupOriginByCopy,null);let f=d;if(!c){const m=vC(BP(u,_=>_.type==="Group"&&!!_.flags)),p=m?Au(s.globalFlags,m):s.globalFlags;IP(p,s.currentFlags)||(f=br({flags:zP(p)}),f.body[0].body.push(d))}n(qt(f,t),{traverse:!c})}},MP={Backreference({node:e,parent:t,replaceWith:n},s){if(e.orphan){s.highestOrphanBackref=Math.max(s.highestOrphanBackref,e.ref);return}const l=s.reffedNodesByReferencer.get(e).filter(u=>PP(u,e));if(!l.length)n(qt(Ei({negate:!0}),t));else if(l.length>1){const u=br({atomic:!0,body:l.reverse().map(c=>Ri({body:[ep(c.number)]}))});n(qt(u,t))}else e.ref=l[0].number},CapturingGroup({node:e},t){e.number=++t.numCapturesToLeft,e.name&&t.groupsByName.get(e.name).get(e).hasDuplicateNameToRemove&&delete e.name},Regex:{exit({node:e},t){const n=Math.max(t.highestOrphanBackref-t.numCapturesToLeft,0);for(let s=0;s<n;s++){const a=lC();e.body.at(-1).body.push(a)}}},Subroutine({node:e},t){!e.isRecursive||e.ref===0||(e.ref=t.reffedNodesByReferencer.get(e).number)}};function _C(e){il(e,{"*"({node:t,parent:n}){t.parent=n}})}function IP(e,t){return e.dotAll===t.dotAll&&e.ignoreCase===t.ignoreCase}function PP(e,t){let n=t;do{if(n.type==="Regex")return!1;if(n.type==="Alternative")continue;if(n===e)return!1;const s=bC(n.parent);for(const a of s){if(a===n)break;if(a===e||wC(a,e))return!0}}while(n=n.parent);throw new Error("Unexpected path")}function yC(e,t,n,s){const a=Array.isArray(e)?[]:{};for(const[l,u]of Object.entries(e))l==="parent"?a.parent=Array.isArray(n)?s:n:u&&typeof u=="object"?a[l]=yC(u,t,a,n):(l==="type"&&u==="CapturingGroup"&&t.set(a,t.get(e)??e),a[l]=u);return a}function L0(e){const t=uC(e);return t.isRecursive=!0,t}function BP(e,t){const n=[];for(;e=e.parent;)(!t||t(e))&&n.push(e);return n}function pm(e,t){if(t.has(e))return t.get(e);const n=`$${t.size}_${e.replace(/^[^$_\p{IDS}]|[^$\u200C\u200D\p{IDC}]/ug,"_")}`;return t.set(e,n),n}function vC(e){const t=["dotAll","ignoreCase"],n={enable:{},disable:{}};return e.forEach(({flags:s})=>{t.forEach(a=>{var l,u;(l=s.enable)!=null&&l[a]&&(delete n.disable[a],n.enable[a]=!0),(u=s.disable)!=null&&u[a]&&(n.disable[a]=!0)})}),Object.keys(n.enable).length||delete n.enable,Object.keys(n.disable).length||delete n.disable,n.enable||n.disable?n:null}function zP({dotAll:e,ignoreCase:t}){const n={};return(e||t)&&(n.enable={},e&&(n.enable.dotAll=!0),t&&(n.enable.ignoreCase=!0)),(!e||!t)&&(n.disable={},!e&&(n.disable.dotAll=!0),!t&&(n.disable.ignoreCase=!0)),n}function bC(e){if(!e)throw new Error("Node expected");const{body:t}=e;return Array.isArray(t)?t:t?[t]:null}function SC(e){const t=e.find(n=>n.kind==="search_start"||UP(n,{negate:!1})||!$P(n));if(!t)return null;if(t.kind==="search_start")return t;if(t.type==="LookaroundAssertion")return t.body[0].body[0];if(t.type==="CapturingGroup"||t.type==="Group"){const n=[];for(const s of t.body){const a=SC(s.body);if(!a)return null;Array.isArray(a)?n.push(...a):n.push(a)}return n}return null}function wC(e,t){const n=bC(e)??[];for(const s of n)if(s===t||wC(s,t))return!0;return!1}function $P({type:e}){return e==="Assertion"||e==="Directive"||e==="LookaroundAssertion"}function HP(e){const t=["Character","CharacterClass","CharacterSet"];return t.includes(e.type)||e.type==="Quantifier"&&e.min&&t.includes(e.body.type)}function UP(e,t){const n={negate:null,...t};return e.type==="LookaroundAssertion"&&(n.negate===null||e.negate===n.negate)&&e.body.length===1&&aC(e.body[0],{type:"Assertion",kind:"search_start"})}function gm(e){return/^[$_\p{IDS}][$\u200C\u200D\p{IDC}]*$/u.test(e)}function as(e,t){const s=oC(e,{...t,unicodePropertyMap:ig}).body;return s.length>1||s[0].body.length>1?br({body:s}):s[0].body[0]}function xm(e,t){return e.negate=t,e}function Hs(e,t){return e.parent=t,e}function qt(e,t){return _C(e),e.parent=t,e}function FP(e,t){const n=pC(t),s=rp(n.target,"ES2024"),a=rp(n.target,"ES2025"),l=n.rules.recursionLimit;if(!Number.isInteger(l)||l<2||l>20)throw new Error("Invalid recursionLimit; use 2-20");let u=null,c=null;if(!a){const x=[e.flags.ignoreCase];il(e,VP,{getCurrentModI:()=>x.at(-1),popModI(){x.pop()},pushModI(w){x.push(w)},setHasCasedChar(){x.at(-1)?u=!0:c=!0}})}const d={dotAll:e.flags.dotAll,ignoreCase:!!((e.flags.ignoreCase||u)&&!c)};let f=e;const m={accuracy:n.accuracy,appliedGlobalFlags:d,captureMap:new Map,currentFlags:{dotAll:e.flags.dotAll,ignoreCase:e.flags.ignoreCase},inCharClass:!1,lastNode:f,originMap:e._originMap,recursionLimit:l,useAppliedIgnoreCase:!!(!a&&u&&c),useFlagMods:a,useFlagV:s,verbose:n.verbose};function p(x){return m.lastNode=f,f=x,wP(GP[x.type],`Unexpected node type "${x.type}"`)(x,m,p)}const _={pattern:e.body.map(p).join("|"),flags:p(e.flags),options:{...e.options}};return s||(delete _.options.force.v,_.options.disable.v=!0,_.options.unicodeSetsPlugin=null),_._captureTransfers=new Map,_._hiddenCaptures=[],m.captureMap.forEach((x,w)=>{x.hidden&&_._hiddenCaptures.push(w),x.transferTo&&fl(_._captureTransfers,x.transferTo,[]).push(w)}),_}var VP={"*":{enter({node:e},t){if(R0(e)){const n=t.getCurrentModI();t.pushModI(e.flags?Au({ignoreCase:n},e.flags).ignoreCase:n)}},exit({node:e},t){R0(e)&&t.popModI()}},Backreference(e,t){t.setHasCasedChar()},Character({node:e},t){ag(an(e.value))&&t.setHasCasedChar()},CharacterClassRange({node:e,skip:t},n){t(),CC(e,{firstOnly:!0}).length&&n.setHasCasedChar()},CharacterSet({node:e},t){e.kind==="property"&&xC.has(e.value)&&t.setHasCasedChar()}},GP={Alternative({body:e},t,n){return e.map(n).join("")},Assertion({kind:e,negate:t}){if(e==="string_end")return"$";if(e==="string_start")return"^";if(e==="word_boundary")return t?qe`\B`:qe`\b`;throw new Error(`Unexpected assertion kind "${e}"`)},Backreference({ref:e},t){if(typeof e!="number")throw new Error("Unexpected named backref in transformed AST");if(!t.useFlagMods&&t.accuracy==="strict"&&t.currentFlags.ignoreCase&&!t.captureMap.get(e).ignoreCase)throw new Error("Use of case-insensitive backref to case-sensitive group requires target ES2025 or non-strict accuracy");return"\\"+e},CapturingGroup(e,t,n){const{body:s,name:a,number:l}=e,u={ignoreCase:t.currentFlags.ignoreCase},c=t.originMap.get(e);return c&&(u.hidden=!0,l>c.number&&(u.transferTo=c.number)),t.captureMap.set(l,u),`(${a?`?<${a}>`:""}${s.map(n).join("|")})`},Character({value:e},t){const n=an(e),s=ja(e,{escDigit:t.lastNode.type==="Backreference",inCharClass:t.inCharClass,useFlagV:t.useFlagV});if(s!==n)return s;if(t.useAppliedIgnoreCase&&t.currentFlags.ignoreCase&&ag(n)){const a=gC(n);return t.inCharClass?a.join(""):a.length>1?`[${a.join("")}]`:a[0]}return n},CharacterClass(e,t,n){const{kind:s,negate:a,parent:l}=e;let{body:u}=e;if(s==="intersection"&&!t.useFlagV)throw new Error("Use of character class intersection requires min target ES2024");Cr.bugFlagVLiteralHyphenIsRange&&t.useFlagV&&u.some(O0)&&(u=[ld(45),...u.filter(f=>!O0(f))]);const c=()=>`[${a?"^":""}${u.map(n).join(s==="intersection"?"&&":"")}]`;if(!t.inCharClass){if((!t.useFlagV||Cr.bugNestedClassIgnoresNegation)&&!a){const m=u.filter(p=>p.type==="CharacterClass"&&p.kind==="union"&&p.negate);if(m.length){const p=br(),_=p.body[0];return p.parent=l,_.parent=p,u=u.filter(x=>!m.includes(x)),e.body=u,u.length?(e.parent=_,_.body.push(e)):p.body.pop(),m.forEach(x=>{const w=Ri({body:[x]});x.parent=w,w.parent=p,p.body.push(w)}),n(p)}}t.inCharClass=!0;const f=c();return t.inCharClass=!1,f}const d=u[0];if(s==="union"&&!a&&d&&((!t.useFlagV||!t.verbose)&&l.kind==="union"&&!(Cr.bugFlagVLiteralHyphenIsRange&&t.useFlagV)||!t.verbose&&l.kind==="intersection"&&u.length===1&&d.type!=="CharacterClassRange"))return u.map(n).join("");if(!t.useFlagV&&l.type==="CharacterClass")throw new Error("Uses nested character class in a way that requires min target ES2024");return c()},CharacterClassRange(e,t){const n=e.min.value,s=e.max.value,a={escDigit:!1,inCharClass:!0,useFlagV:t.useFlagV},l=ja(n,a),u=ja(s,a),c=new Set;if(t.useAppliedIgnoreCase&&t.currentFlags.ignoreCase){const d=CC(e);XP(d).forEach(m=>{c.add(Array.isArray(m)?`${ja(m[0],a)}-${ja(m[1],a)}`:ja(m,a))})}return`${l}-${u}${[...c].join("")}`},CharacterSet({kind:e,negate:t,value:n,key:s},a){if(e==="dot")return a.currentFlags.dotAll?a.appliedGlobalFlags.dotAll||a.useFlagMods?".":"[^]":qe`[^\n]`;if(e==="digit")return t?qe`\D`:qe`\d`;if(e==="property"){if(a.useAppliedIgnoreCase&&a.currentFlags.ignoreCase&&xC.has(n))throw new Error(`Unicode property "${n}" can't be case-insensitive when other chars have specific case`);return`${t?qe`\P`:qe`\p`}{${s?`${s}=`:""}${n}}`}if(e==="word")return t?qe`\W`:qe`\w`;throw new Error(`Unexpected character set kind "${e}"`)},Flags(e,t){return(t.appliedGlobalFlags.ignoreCase?"i":"")+(e.dotAll?"s":"")+(e.sticky?"y":"")},Group({atomic:e,body:t,flags:n,parent:s},a,l){const u=a.currentFlags;n&&(a.currentFlags=Au(u,n));const c=t.map(l).join("|"),d=!a.verbose&&t.length===1&&s.type!=="Quantifier"&&!e&&(!a.useFlagMods||!n)?c:`(?${QP(e,n,a.useFlagMods)}${c})`;return a.currentFlags=u,d},LookaroundAssertion({body:e,kind:t,negate:n},s,a){return`(?${`${t==="lookahead"?"":"<"}${n?"!":"="}`}${e.map(a).join("|")})`},Quantifier(e,t,n){return n(e.body)+JP(e)},Subroutine({isRecursive:e,ref:t},n){if(!e)throw new Error("Unexpected non-recursive subroutine in transformed AST");const s=n.recursionLimit;return t===0?`(?R=${s})`:qe`\g<${t}&R=${s}>`}},WP=new Set(["$","(",")","*","+",".","?","[","\\","]","^","{","|","}"]),qP=new Set(["-","\\","]","^","["]),KP=new Set(["(",")","-","/","[","\\","]","^","{","|","}","!","#","$","%","&","*","+",",",".",":",";","<","=",">","?","@","`","~"]),D0=new Map([[9,qe`\t`],[10,qe`\n`],[11,qe`\v`],[12,qe`\f`],[13,qe`\r`],[8232,qe`\u2028`],[8233,qe`\u2029`],[65279,qe`\uFEFF`]]),YP=new RegExp("^\\p{Cased}$","u");function ag(e){return YP.test(e)}function CC(e,t){const n=!!(t!=null&&t.firstOnly),s=e.min.value,a=e.max.value,l=[];if(s<65&&(a===65535||a>=131071)||s===65536&&a>=131071)return l;for(let u=s;u<=a;u++){const c=an(u);if(!ag(c))continue;const d=gC(c).filter(f=>{const m=f.codePointAt(0);return m<s||m>a});if(d.length&&(l.push(...d),n))break}return l}function ja(e,{escDigit:t,inCharClass:n,useFlagV:s}){if(D0.has(e))return D0.get(e);if(e<32||e>126&&e<160||e>262143||t&&ZP(e))return e>255?`\\u{${e.toString(16).toUpperCase()}}`:`\\x${e.toString(16).toUpperCase().padStart(2,"0")}`;const a=n?s?KP:qP:WP,l=an(e);return(a.has(l)?"\\":"")+l}function XP(e){const t=e.map(a=>a.codePointAt(0)).sort((a,l)=>a-l),n=[];let s=null;for(let a=0;a<t.length;a++)t[a+1]===t[a]+1?s??(s=t[a]):s===null?n.push(t[a]):(n.push([s,t[a]]),s=null);return n}function QP(e,t,n){if(e)return">";let s="";if(t&&n){const{enable:a,disable:l}=t;s=(a!=null&&a.ignoreCase?"i":"")+(a!=null&&a.dotAll?"s":"")+(l?"-":"")+(l!=null&&l.ignoreCase?"i":"")+(l!=null&&l.dotAll?"s":"")}return`${s}:`}function JP({kind:e,max:t,min:n}){let s;return!n&&t===1?s="?":!n&&t===1/0?s="*":n===1&&t===1/0?s="+":n===t?s=`{${n}}`:s=`{${n},${t===1/0?"":t}}`,s+{greedy:"",lazy:"?",possessive:"+"}[e]}function R0({type:e}){return e==="CapturingGroup"||e==="Group"||e==="LookaroundAssertion"}function ZP(e){return e>47&&e<58}function O0({type:e,value:t}){return e==="Character"&&t===45}var Us,us,Ti,Fs,Ai,ml,sp,Ks,e6=(Ks=class extends RegExp{constructor(n,s,a){var t=(...lz)=>(super(...lz),gi(this,ml),gi(this,Us,new Map),gi(this,us,null),gi(this,Ti),gi(this,Fs,null),gi(this,Ai,null),me(this,"rawOptions",{}),this);const l=!!(a!=null&&a.lazyCompile);if(n instanceof RegExp){if(a)throw new Error("Cannot provide options when copying a regexp");const u=n;t(u,s),xr(this,Ti,u.source),u instanceof Ks&&(xr(this,Us,kn(u,Us)),xr(this,Fs,kn(u,Fs)),xr(this,Ai,kn(u,Ai)),this.rawOptions=u.rawOptions)}else{const u={hiddenCaptures:[],strategy:null,transfers:[],...a};t(l?"":n,s),xr(this,Ti,n),xr(this,Us,n6(u.hiddenCaptures,u.transfers)),xr(this,Ai,u.strategy),this.rawOptions=a??{}}l||xr(this,us,this)}get source(){return kn(this,Ti)||"(?:)"}exec(n){if(!kn(this,us)){const{lazyCompile:l,...u}=this.rawOptions;xr(this,us,new Ks(kn(this,Ti),this.flags,u))}const s=this.global||this.sticky,a=this.lastIndex;if(kn(this,Ai)==="clip_search"&&s&&a){this.lastIndex=0;const l=Cf(this,ml,sp).call(this,n.slice(a));return l&&(t6(l,a,n,this.hasIndices),this.lastIndex+=a),l}return Cf(this,ml,sp).call(this,n)}},Us=new WeakMap,us=new WeakMap,Ti=new WeakMap,Fs=new WeakMap,Ai=new WeakMap,ml=new WeakSet,sp=function(n){kn(this,us).lastIndex=this.lastIndex;const s=nv(Ks.prototype,this,"exec").call(kn(this,us),n);if(this.lastIndex=kn(this,us).lastIndex,!s||!kn(this,Us).size)return s;const a=[...s];s.length=1;let l;this.hasIndices&&(l=[...s.indices],s.indices.length=1);const u=[0];for(let c=1;c<a.length;c++){const{hidden:d,transferTo:f}=kn(this,Us).get(c)??{};if(d?u.push(null):(u.push(s.length),s.push(a[c]),this.hasIndices&&s.indices.push(l[c])),f&&a[c]!==void 0){const m=u[f];if(!m)throw new Error(`Invalid capture transfer to "${m}"`);if(s[m]=a[c],this.hasIndices&&(s.indices[m]=l[c]),s.groups){kn(this,Fs)||xr(this,Fs,r6(this.source));const p=kn(this,Fs).get(f);p&&(s.groups[p]=a[c],this.hasIndices&&(s.indices.groups[p]=l[c]))}}}return s},Ks);function t6(e,t,n,s){if(e.index+=t,e.input=n,s){const a=e.indices;for(let u=0;u<a.length;u++){const c=a[u];c&&(a[u]=[c[0]+t,c[1]+t])}const l=a.groups;l&&Object.keys(l).forEach(u=>{const c=l[u];c&&(l[u]=[c[0]+t,c[1]+t])})}}function n6(e,t){const n=new Map;for(const s of e)n.set(s,{hidden:!0});for(const[s,a]of t)for(const l of a)fl(n,l,{}).transferTo=s;return n}function r6(e){const t=/(?<capture>\((?:\?<(?![=!])(?<name>[^>]+)>|(?!\?)))|\\?./gsu,n=new Map;let s=0,a=0,l;for(;l=t.exec(e);){const{0:u,groups:{capture:c,name:d}}=l;u==="["?s++:s?u==="]"&&s--:c&&(a++,d&&n.set(a,d))}return n}function s6(e,t){const n=i6(e,t);return n.options?new e6(n.pattern,n.flags,n.options):new RegExp(n.pattern,n.flags)}function i6(e,t){const n=pC(t),s=oC(e,{flags:n.flags,normalizeUnknownPropertyNames:!0,rules:{captureGroup:n.rules.captureGroup,singleline:n.rules.singleline},skipBackrefValidation:n.rules.allowOrphanBackrefs,unicodePropertyMap:ig}),a=DP(s,{accuracy:n.accuracy,asciiWordBoundaries:n.rules.asciiWordBoundaries,avoidSubclass:n.avoidSubclass,bestEffortTarget:n.target}),l=FP(a,n),u=bP(l.pattern,{captureTransfers:l._captureTransfers,hiddenCaptures:l._hiddenCaptures,mode:"external"}),c=yP(u.pattern),d=_P(c.pattern,{captureTransfers:u.captureTransfers,hiddenCaptures:u.hiddenCaptures}),f={pattern:d.pattern,flags:`${n.hasIndices?"d":""}${n.global?"g":""}${l.flags}${l.options.disable.v?"u":"v"}`};if(n.avoidSubclass){if(n.lazyCompileLength!==1/0)throw new Error("Lazy compilation requires subclass")}else{const m=d.hiddenCaptures.sort((w,C)=>w-C),p=Array.from(d.captureTransfers),_=a._strategy,x=f.pattern.length>=n.lazyCompileLength;(m.length||p.length||_||x)&&(f.options={...m.length&&{hiddenCaptures:m},...p.length&&{transfers:p},..._&&{strategy:_},...x&&{lazyCompile:x}})}return f}function kC(e,t){return s6(e,{global:!0,hasIndices:!0,lazyCompileLength:3e3,rules:{allowOrphanBackrefs:!0,asciiWordBoundaries:!0,captureGroup:!0,recursionLimit:5,singleline:!0},...t})}function a6(e={}){const t={target:"auto",cache:new Map,...e};return t.regexConstructor||(t.regexConstructor=n=>kC(n,{target:t.target})),{createScanner(n){return new SI(n,t)},createString(n){return{content:n}}}}nw(Up({bundledLanguages:()=>Gp,bundledLanguagesAlias:()=>Vp,bundledLanguagesBase:()=>Fp,bundledLanguagesInfo:()=>Zu,bundledThemes:()=>qp,bundledThemesInfo:()=>Wp,codeToHast:()=>Yw,codeToHtml:()=>Kw,codeToTokens:()=>Xw,codeToTokensBase:()=>Qw,codeToTokensWithThemes:()=>Jw,createHighlighter:()=>od,createJavaScriptRegexEngine:()=>a6,createOnigurumaEngine:()=>iw,defaultJavaScriptRegexConstructor:()=>kC,getLastGrammarState:()=>eC,getSingletonHighlighter:()=>Zw,loadWasm:()=>Yp}),bI);let _m=null;const o6=["typescript","javascript","tsx","jsx","python","bash","json","css","html","sql","yaml","markdown","diff","rust","go","java","c","cpp","ruby","toml","scss","graphql","docker","powershell"],l6=["github-dark-default","vitesse-light","monokai","dracula","nord"],c6={dark:"github-dark-default",light:"vitesse-light",monokai:"monokai",dracula:"dracula",nord:"nord"};function u6(){return{name:"line-numbers",line(e,t){e.properties["data-line"]=String(t+1)}}}async function d6(){return _m||(_m=od({themes:l6,langs:o6})),_m}const Yo=new Map,h6=50;function f6(e,t,n){return`${e}|${t}|${n}`}async function EC(e,t,n="github-dark-default"){const s=f6(e,t,n),a=Yo.get(s);if(a)return a;const u=(await d6()).codeToHtml(e,{lang:t,theme:n,transformers:[u6()]});if(Yo.size>=h6){const c=Yo.keys().next().value;c&&Yo.delete(c)}return Yo.set(s,u),u}const m6={ts:"typescript",tsx:"tsx",js:"javascript",jsx:"jsx",py:"python",rb:"ruby",rs:"rust",go:"go",java:"java",c:"c",cpp:"cpp",h:"c",hpp:"cpp",cs:"csharp",php:"php",swift:"swift",kt:"kotlin",scala:"scala",sh:"bash",bash:"bash",zsh:"bash",fish:"bash",ps1:"powershell",sql:"sql",html:"html",htm:"html",css:"css",scss:"scss",sass:"sass",less:"less",json:"json",yaml:"yaml",yml:"yaml",xml:"xml",md:"markdown",markdown:"markdown",toml:"toml",ini:"ini",conf:"ini",dockerfile:"docker",makefile:"makefile",cmake:"cmake",graphql:"graphql",gql:"graphql",vue:"vue",svelte:"svelte"};function hd(e){var a;if(!e)return"text";const t=e.split("/").pop()??"",n=t.toLowerCase();if(n==="dockerfile")return"docker";if(n==="makefile")return"makefile";if(n==="cmakelists.txt")return"cmake";const s=(a=t.split(".").pop())==null?void 0:a.toLowerCase();return s?m6[s]??"text":"text"}function jC(){const e=Ft(n=>n.currentPreset);return Ft(n=>n.isCustom)?"github-dark-default":c6[e]??"github-dark-default"}function NC(e=2e3){const[t,n]=D.useState(!1),s=D.useCallback(async a=>{try{if(navigator.clipboard&&window.isSecureContext)await navigator.clipboard.writeText(a);else{const l=document.createElement("textarea");l.value=a,l.style.position="fixed",l.style.left="-9999px",document.body.appendChild(l),l.select(),document.execCommand("copy"),document.body.removeChild(l)}n(!0),setTimeout(()=>n(!1),e)}catch(l){console.error("Failed to copy:",l)}},[e]);return{copied:t,copy:s}}const p6=D.memo(function({language:t,codeString:n,showSyntaxHighlighting:s}){const{copied:a,copy:l}=NC(),[u,c]=D.useState(null),d=jC(),f=D.useRef(n);return D.useEffect(()=>{s&&(f.current=n,EC(n,t,d).then(m=>{f.current===n&&c(m)}))},[n,t,d,s]),o.jsxs("div",{className:"relative group my-1.5 rounded overflow-hidden",children:[o.jsxs("div",{className:"absolute bottom-0 right-0 flex items-center gap-2 px-2 py-1 text-xs text-text-muted/70 bg-bg-tertiary/60 rounded-tl rounded-tr z-10",children:[o.jsx("span",{children:t}),o.jsx("button",{type:"button",onClick:m=>{m.preventDefault(),m.stopPropagation(),l(n)},className:"opacity-0 group-hover:opacity-100 transition-opacity hover:text-text-primary p-0.5",title:"Copy code",children:a?o.jsx(Br,{}):o.jsx(dp,{})})]}),s&&u?o.jsx("div",{className:"min-w-0",dangerouslySetInnerHTML:{__html:u}}):o.jsx("div",{className:"overflow-x-auto",children:o.jsx("pre",{className:"my-0 px-4 py-3 overflow-x-auto font-mono text-sm whitespace-pre-wrap break-word",children:o.jsx("code",{className:`language-${t}`,children:n})})})]})});function g6(e,t){const n=e?"text-text-muted":"text-sky-400",s=e?"text-text-secondary":"text-amber-400";return{code({className:a,children:l,...u}){const c=/language-(\w+)/.exec(a||"");if(!c&&!String(l).includes(`
276
+ `)){const p=e?"text-text-muted":"text-accent-secondary";return o.jsx("code",{className:`bg-bg-tertiary px-1 py-0.5 rounded ${p} font-mono text-xs`,...u,children:l})}const f=(c==null?void 0:c[1])||"text",m=String(l).replace(/\n$/,"");return o.jsx(p6,{language:f,codeString:m,showSyntaxHighlighting:t})},p({children:a}){const l=e?"text-text-muted":"text-text-primary";return o.jsx("p",{className:`${l} mb-1.5 last:mb-0 leading-tight`,children:a})},ul({children:a}){return o.jsx("ul",{className:"list-disc list-inside mb-1.5 space-y-0.5",children:a})},ol({children:a}){return o.jsx("ol",{className:"list-decimal list-inside mb-1.5 space-y-0.5",children:a})},li({children:a}){const l=e?"text-text-muted":"text-text-primary";return o.jsx("li",{className:`${l} text-sm list-item`,children:a})},h1({children:a}){return o.jsx("h1",{className:`text-base font-bold mb-1.5 mt-2 first:mt-0 ${n}`,children:a})},h2({children:a}){return o.jsx("h2",{className:`text-sm font-bold mb-1.5 mt-2 first:mt-0 ${n}`,children:a})},h3({children:a}){return o.jsx("h3",{className:`text-sm font-bold mb-1.5 mt-1.5 first:mt-0 ${n}`,children:a})},h4({children:a}){return o.jsx("h4",{className:`text-sm font-bold mb-1.5 mt-1.5 first:mt-0 ${n}`,children:a})},strong({children:a}){return o.jsx("strong",{className:`font-bold ${s}`,children:a})},em({children:a}){return o.jsx("em",{className:e?"italic text-text-secondary":"italic",children:a})},a({href:a,children:l}){return o.jsx("a",{href:a,className:"text-accent-primary hover:underline text-sm",target:"_blank",rel:"noopener noreferrer",children:l})},blockquote({children:a}){const l=e?"text-text-muted":"text-text-secondary";return o.jsx("blockquote",{className:`border-l-2 border-accent-primary pl-2 my-1.5 ${l} italic text-sm`,children:a})},table({children:a}){return o.jsx("div",{className:"overflow-x-auto my-1.5",children:o.jsx("table",{className:"min-w-full border border-border",children:a})})},th({children:a}){return o.jsx("th",{className:"border border-border bg-bg-tertiary px-2 py-1 text-left font-semibold text-sm",children:a})},td({children:a}){return o.jsx("td",{className:"border border-border px-2 py-1 text-sm",children:a})},hr(){return o.jsx("hr",{className:"border-border my-2"})},input({checked:a,...l}){return o.jsx("input",{type:"checkbox",checked:a,disabled:!0,className:"mr-1.5 w-3.5 h-3.5",...l})}}}const fs=D.memo(function({content:t,className:n="",muted:s=!1}){const{showSyntaxHighlighting:a}=Mu(),l=D.useMemo(()=>{let c=x6(t);return c=_6(c),c},[t]),u=D.useMemo(()=>g6(s,a),[s,a]);return o.jsx("div",{className:`markdown-content [&_li>p]:inline ${n}`,children:o.jsx(zR,{remarkPlugins:[J5],components:u,children:l})})});function x6(e){let t=e.replace(/^(\s*)•\s/gm,"$1- ");return t=t.replace(/^(\d+)\.\s*\n(?=\S)/gm,"$1. "),t=t.replace(/^\|\s*$/gm,""),t=t.replace(/^\d+:\s/gm,""),t}function _6(e){const t=/```/g,n=e.match(t);if(((n==null?void 0:n.length)??0)%2===1){const a=e.lastIndexOf("```");return e.slice(a+3).includes(`
277
+ `),e+"\n```"}return e}const y6=D.memo(function({content:t,variant:n="default"}){return n==="labeled"?o.jsxs("div",{className:"text-text-muted text-sm italic feed-item",children:[o.jsx("span",{className:"text-purple-400",children:"thinking:"}),o.jsx("div",{className:"ml-1.5 mt-0.5",children:o.jsx(fs,{content:t})})]}):o.jsx("div",{className:"text-text-muted text-sm italic bg-secondary rounded p-1.5 feed-item",children:o.jsx(fs,{content:t,muted:!0})})});function TC({tool:e,className:t="w-4 h-4 text-text-muted flex-shrink-0"}){return e==="glob"||e==="grep"?o.jsx("svg",{className:t,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})}):e==="run_command"||e==="bash"?o.jsx("svg",{className:t,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 9l3 3-3 3m5 0h3M5 20h14a2 2 0 002-2V6a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z"})}):o.jsx("svg",{className:t,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:o.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"})})}const $a=D.memo(function({code:t,language:n,variant:s,showLineNumbers:a=!1,startLine:l=1}){const[u,c]=D.useState(null),d=jC(),f=D.useRef(t);if(D.useEffect(()=>{f.current=t,EC(t,n,d).then(p=>{f.current===t&&c(p)})},[t,n,d]),!u){const p=s==="inline"?"span":s==="block-nowrap"?"div":"pre";return o.jsx(p,{className:"language-",children:o.jsx("code",{className:"language-",children:t})})}if(s==="inline")return o.jsx("span",{dangerouslySetInnerHTML:{__html:u}});const m=a?"":"shiki-plain";return o.jsx("div",{className:m,style:{"--shiki-start":l},dangerouslySetInnerHTML:{__html:u}})});function AC({src:e,alt:t,isOpen:n,onClose:s}){return n?o.jsx(Ot,{isOpen:n,onClose:s,title:"",size:"full",children:o.jsx("div",{className:"flex items-center justify-center h-full",children:o.jsx("img",{src:e,alt:t,className:"max-w-full max-h-[80vh] object-contain rounded-lg shadow-2xl"})})}):null}const Lu=D.memo(function({type:t,children:n}){const s=t==="removed"?"diff-removed-bg diff-removed-border":"diff-added-bg diff-added-border",a=t==="removed"?"line-through decoration-red-400/30":"";return o.jsx("div",{className:`border-l-[3px] ${s}`,children:o.jsx("div",{className:`min-w-0 py-3 ${a}`,children:o.jsx("div",{className:"shiki-compact shiki-transparent-bg",children:n})})})}),v6=D.memo(function({oldString:t,newString:n,filePath:s}){const a=D.useMemo(()=>hd(s),[s]),l=t.length>0,u=n.length>0;return!l&&!u?o.jsx("div",{className:"text-xs text-text-muted italic p-2",children:"No changes"}):o.jsxs("div",{className:"rounded overflow-hidden border border-border",children:[l&&o.jsx(Lu,{type:"removed",children:o.jsx($a,{code:t,language:a,variant:"block",showLineNumbers:!0})}),u&&o.jsx(Lu,{type:"added",children:o.jsx($a,{code:n,language:a,variant:"block",showLineNumbers:!0})})]})}),b6=D.memo(function({content:t,filePath:n}){const s=D.useMemo(()=>hd(n),[n]);return o.jsx("div",{className:"rounded overflow-hidden border border-border max-h-[45vh] overflow-y-auto",children:o.jsx(Lu,{type:"added",children:o.jsx($a,{code:t,language:s,variant:"block",showLineNumbers:!0})})})}),S6=D.memo(function({regions:t,filePath:n}){const s=D.useMemo(()=>hd(n),[n]);return t.length===0?o.jsx("div",{className:"text-xs text-text-muted italic p-2",children:"No changes"}):o.jsx("div",{className:"space-y-2",children:t.map((a,l)=>o.jsx(C6,{region:a,language:s},l))})});function w6(e){const t=[];function n(s,a,l){const u=t[t.length-1];u&&u.type===s&&u.startLine+u.lines.length===a?u.lines.push(l):t.push({type:s,startLine:a,lines:[l]})}for(const s of e.beforeContext)n("context",s.lineNumber,s.content);for(const s of e.edits){const a=s.oldContent.split(`
278
+ `);for(let u=0;u<a.length;u++)n("removed",s.startLine+u,a[u]);const l=s.newContent.split(`
279
+ `);for(let u=0;u<l.length;u++)n("added",s.startLine+u,l[u])}for(const s of e.afterContext)n("context",s.lineNumber,s.content);return t}const C6=D.memo(function({region:t,language:n}){const s=w6(t);return o.jsx("div",{className:"rounded overflow-hidden border border-border font-mono text-sm",children:s.map((a,l)=>o.jsx(k6,{section:a,language:n},l))})}),k6=D.memo(function({section:t,language:n}){const s=t.lines.join(`
280
+ `);return t.type==="context"?o.jsx("div",{children:o.jsx("div",{className:"min-w-0 py-3",children:o.jsx("div",{className:"shiki-compact shiki-transparent-bg",children:o.jsx($a,{code:s,language:n,variant:"block",showLineNumbers:!0,startLine:t.startLine})})})}):o.jsx(Lu,{type:t.type,children:o.jsx($a,{code:s,language:n,variant:"block",showLineNumbers:!0,startLine:t.startLine})})});function M0(e){return e.split(`
281
+ `).filter(t=>!t.startsWith(`
282
+ [`)&&!t.startsWith("[")).map(t=>t.replace(/^\d+: /,"")).join(`
283
+ `)}const E6=D.memo(function({result:t,metadata:n,filePath:s,heightExpanded:a=!1}){const[l,u]=D.useState(!1),c=D.useMemo(()=>hd(s),[s]),d=n==null?void 0:n.mimeType,f=n==null?void 0:n.base64Data;if(d!=null&&d.startsWith("image/")&&f){const C=`data:${d};base64,${f}`;return o.jsxs(o.Fragment,{children:[o.jsx("div",{className:`rounded overflow-hidden border border-border ${a?"":"max-h-[45vh]"} flex items-center justify-center cursor-pointer hover:border-accent-primary transition-colors`,onClick:()=>u(!0),children:o.jsx("img",{src:C,alt:s,className:"max-w-full max-h-[45vh] object-contain"})}),o.jsx(AC,{src:C,alt:s,isOpen:l,onClose:()=>u(!1)})]})}if(!t)return o.jsx("div",{className:"text-xs text-text-muted italic p-2",children:"Empty file"});const m=t;if(c==="markdown"){const C=M0(m);return o.jsx("div",{className:`rounded overflow-hidden border border-border ${a?"":"max-h-[45vh]"} overflow-y-auto p-2`,children:o.jsx(fs,{content:C})})}const p=M0(m),_=m.split(`
284
+ `)[0],x=_==null?void 0:_.match(/^(\d+): /),w=x?parseInt(x[1],10):1;return o.jsx("div",{className:`rounded overflow-hidden border border-border ${a?"":"max-h-[45vh]"} overflow-y-auto`,children:o.jsx($a,{code:p,language:c,variant:"block",showLineNumbers:!0,startLine:w})})}),j6={error:{icon:"✗",color:"text-accent-error",bg:"bg-red-500/10",border:"border-red-500/30"},warning:{icon:"⚠",color:"text-accent-warning",bg:"bg-yellow-500/10",border:"border-yellow-500/30"},info:{icon:"ℹ",color:"text-accent-info",bg:"bg-blue-500/10",border:"border-blue-500/30"},hint:{icon:"💡",color:"text-text-muted",bg:"bg-gray-500/10",border:"border-gray-500/30"}},I0=D.memo(function({diagnostics:t}){if(t.length===0)return null;const n=t.filter(l=>l.severity==="error"),s=t.filter(l=>l.severity==="warning"),a=t.filter(l=>l.severity==="info"||l.severity==="hint");return o.jsxs("div",{className:"rounded border border-border overflow-hidden mt-2",children:[o.jsxs("div",{className:"flex items-center gap-3 px-2 py-1.5 bg-bg-tertiary border-b border-border",children:[o.jsx("span",{className:"text-xs font-medium text-text-secondary",children:"LSP Diagnostics"}),n.length>0&&o.jsxs("span",{className:"text-xs text-accent-error font-medium",children:[n.length," error",n.length!==1?"s":""]}),s.length>0&&o.jsxs("span",{className:"text-xs text-accent-warning font-medium",children:[s.length," warning",s.length!==1?"s":""]}),a.length>0&&o.jsxs("span",{className:"text-xs text-text-muted",children:[a.length," info"]})]}),o.jsx("div",{className:"max-h-48 overflow-y-auto",children:t.map((l,u)=>{const c=j6[l.severity];return o.jsxs("div",{className:`flex items-start gap-2 px-2 py-1.5 ${c.bg} border-b border-border last:border-b-0`,children:[o.jsx("span",{className:`${c.color} text-xs flex-shrink-0 w-4 text-center`,children:c.icon}),o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsxs("span",{className:"text-[10px] text-text-muted font-mono",children:["Ln ",l.range.start.line+1,":",l.range.start.character+1]}),l.code&&o.jsxs("span",{className:"text-[10px] text-text-muted font-mono",children:["[",l.code,"]"]})]}),o.jsx("div",{className:"text-xs text-text-primary break-words",children:l.message})]})]},u)})})]})}),N6=D.memo(function({command:t,timeout:n,startedAt:s,streamingOutput:a,status:l,result:u,error:c,durationMs:d}){const f=D.useRef(null),[m,p]=D.useState(0);D.useEffect(()=>{f.current&&l==="pending"&&(f.current.scrollTop=f.current.scrollHeight)},[a,l]),D.useEffect(()=>{if(l!=="pending"||!s)return;const C=setInterval(()=>{p(Date.now()-s)},100);return()=>clearInterval(C)},[l,s]);const _=n/1e3,x=l==="pending"?m/1e3:(d??0)/1e3,w=l==="pending"?(a==null?void 0:a.map(C=>C.content).join(""))??"":u??"";return o.jsxs("div",{className:"space-y-2",children:[o.jsxs("div",{className:"flex items-center justify-between gap-4",children:[o.jsxs("div",{className:"flex items-center gap-2 text-xs flex-1 min-w-0",children:[o.jsx("span",{className:"text-text-muted flex-shrink-0",children:"$"}),o.jsx("code",{className:"text-text-primary break-all",children:t})]}),o.jsxs("div",{className:"flex items-center gap-2 text-xs text-text-muted flex-shrink-0",children:[l==="pending"&&o.jsx("span",{className:"animate-pulse text-accent-warning",children:"running"}),l==="interrupted"&&o.jsx("span",{className:"text-red-400",children:"interrupted"}),o.jsxs("span",{className:l==="pending"?"text-text-secondary":"text-text-muted",children:[x.toFixed(1),"s / ",_,"s"]})]})]}),l==="pending"&&o.jsx("div",{className:"h-1 bg-bg-tertiary rounded overflow-hidden",children:o.jsx("div",{className:"h-full bg-accent-warning transition-all duration-100",style:{width:`${Math.min(100,m/n*100)}%`}})}),(w||l==="pending")&&o.jsx("pre",{ref:f,className:`text-xs bg-bg-primary p-2 rounded max-h-64 overflow-y-auto ${l==="pending"?"border border-accent-warning/30":""}`,style:{overflowX:"hidden",whiteSpace:"normal"},children:l==="pending"&&a?a.map((C,v)=>o.jsx("span",{className:C.stream==="stderr"?"text-accent-warning":"",children:pu(C.content)},v)):pu(w)}),l==="error"&&c&&o.jsx("div",{className:"text-xs text-accent-error bg-accent-error/10 p-2 rounded",children:c}),l!=="pending"&&d!==void 0&&o.jsxs("div",{className:"text-[10px] text-text-muted",children:["Completed in ",(d/1e3).toFixed(2),"s"]})]})});function T6(e){switch(e){case"sensitive_file":return{title:"Sensitive File Access",description:"Accessing files that may contain secrets"};case"both":return{title:"Sensitive File Access",description:"Accessing sensitive files outside project"};case"dangerous_command":return{title:"Dangerous Command",description:"Running potentially dangerous command"};case"git_no_verify":return{title:"Git --no-verify",description:"Bypassing git hooks/pre-commit checks"};case"outside_workdir":default:return{title:"Path Access Request",description:"Accessing paths outside project directory"}}}function A6({confirmation:e}){const t=we(p=>p.confirmPath),n=we(p=>p.currentSession),s=we(p=>p.switchDangerLevel),{title:a,description:l}=T6(e.reason),u=e.reason==="sensitive_file"||e.reason==="both",c=u?"border-red-500/50":"border-amber-500/50",d=u?"bg-red-500/10":"bg-amber-500/10",f=e.reason==="git_no_verify",m=()=>{n!=null&&n.id&&s("dangerous"),t(e.callId,!0,!1)};return o.jsxs("div",{className:`border ${c} ${d} rounded p-3 my-2`,children:[o.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[o.jsx(km,{}),o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx("div",{className:`text-sm font-medium ${u?"text-red-400":"text-amber-400"}`,children:a}),o.jsx("div",{className:"text-xs text-text-muted",children:l})]})]}),o.jsxs("div",{className:"text-xs text-text-muted mb-2",children:[o.jsx("span",{className:"font-medium",children:e.tool})," wants to access:"]}),o.jsx("div",{className:"bg-bg-primary rounded p-2 mb-3 max-h-24 overflow-y-auto",children:o.jsx("ul",{className:"space-y-0.5",children:e.paths.map((p,_)=>o.jsx("li",{className:`text-xs font-mono ${u?"text-red-300":"text-amber-300"} break-all`,children:p},_))})}),o.jsxs("div",{className:"flex gap-2",children:[o.jsx("button",{onClick:()=>t(e.callId,!1),className:"flex-1 px-3 py-1.5 text-xs font-medium rounded bg-bg-tertiary hover:bg-bg-tertiary/80 text-text-secondary border border-border transition-colors",children:"Deny"}),o.jsx("button",{onClick:()=>t(e.callId,!0,!1),className:"flex-1 px-3 py-1.5 text-xs font-medium rounded bg-accent-primary hover:bg-accent-primary/80 text-text-primary transition-colors",children:"Allow"}),o.jsx("button",{onClick:m,className:`flex-1 px-3 py-1.5 text-xs font-medium rounded transition-colors ${f?"hidden":"bg-red-600 hover:bg-red-700 text-white"}`,title:"Enable dangerous mode and allow this request",children:"Allow Everything"})]})]})}function L6(e,t){if(e==="read_file"){const s=String(t.path??""),a=t.offset,l=t.limit,u=[];return a!==void 0&&a!==1&&u.push(`offset=${a}`),l!==void 0&&u.push(`limit=${l}`),u.length>0?`${s} [${u.join(", ")}]`:s}if(e==="write_file"||e==="edit_file")return String(t.path??"");if(e==="run_command"||e==="bash")return String(t.command??"");if(e==="return_value"){const s=String(t.content??"");return s.length>60?s.slice(0,60)+"...":s}const n=JSON.stringify(t);return n.length>50?n.slice(0,50)+"...":n}function P0(e,t,n){return L6(e,t)}function D6(e){return JSON.stringify(e,null,2)}const R6={pending:{icon:"●",color:"text-accent-warning",animate:!0},success:{icon:"✓",color:"text-accent-success",animate:!1},error:{icon:"✗",color:"text-accent-error",animate:!1},interrupted:{icon:"✗",color:"text-red-400",animate:!1}},O6=D.memo(function({tool:t,args:n,status:s,variant:a="compact",forceCompact:l,result:u,error:c,durationMs:d,diagnostics:f,editContext:m,startedAt:p,streamingOutput:_,metadata:x,callId:w}){var G;const C=t==="edit_file"||t==="write_file",v=t==="run_command"&&s==="pending",S=t==="read_file",y=l?!1:C||v||t==="return_value",[E,N]=D.useState(y),T=R6[s],L=on(W=>W.settings[ze.DISPLAY_SHOW_OPEN_IN_EDITOR])==="true",A=t==="edit_file"?(G=m==null?void 0:m.regions[0])==null?void 0:G.startLine:t==="read_file"?(()=>{const W=u==null?void 0:u.split(`
285
+ `)[0],O=W==null?void 0:W.match(/^(\d+): /);return O?parseInt(O[1],10):void 0})():void 0,R=we(W=>W.pendingPathConfirmations),M=s==="pending"&&w?R.find(W=>W.callId===w)??null:null;return a==="compact"?o.jsxs("div",{className:"flex items-center gap-1.5 text-xs bg-secondary rounded px-2 py-1.5",children:[o.jsx(TC,{tool:t}),o.jsx("span",{className:"text-accent-primary font-medium",children:t}),o.jsx("span",{className:"text-text-muted truncate flex-1",children:P0(t,n)}),o.jsx("span",{className:`${T.color} ${T.animate?"animate-pulse":""}`,children:s==="pending"?"...":"done"})]}):o.jsxs("div",{className:"border border-border rounded overflow-hidden my-1 min-w-0",children:[o.jsxs("button",{className:"w-full flex items-center gap-1.5 p-2 bg-secondary hover:bg-secondary/80 text-left",onClick:()=>N(!E),children:[o.jsx("span",{className:`${T.color} ${T.animate?"animate-pulse":""}`,children:T.icon}),o.jsx("span",{className:"font-mono text-accent-primary text-sm",children:t}),o.jsx("span",{className:"text-text-muted text-xs flex-1 truncate",children:P0(t,n)}),o.jsx("span",{className:"text-text-muted text-xs",children:E?"▼":"▶"})]}),M&&o.jsx(A6,{confirmation:M}),(E||S)&&o.jsxs("div",{className:"p-2 bg-primary border-t border-border space-y-2 min-w-0",children:[t==="run_command"&&o.jsx(N6,{command:String(n.command??""),timeout:n.timeout??12e4,startedAt:p,streamingOutput:_,status:s,result:u,error:c,durationMs:d}),t==="edit_file"&&s==="success"&&o.jsxs(o.Fragment,{children:[m&&m.regions.length>0?o.jsx(S6,{regions:m.regions,filePath:String(n.path??"")}):o.jsx(v6,{oldString:String(n.old_string??""),newString:String(n.new_string??""),filePath:String(n.path??"")}),f&&f.length>0&&o.jsx(I0,{diagnostics:f})]}),t==="write_file"&&s==="success"&&o.jsxs(o.Fragment,{children:[o.jsx(b6,{content:String(n.content??""),filePath:String(n.path??"")}),f&&f.length>0&&o.jsx(I0,{diagnostics:f})]}),t==="read_file"&&s==="success"&&o.jsx(E6,{result:u,metadata:x,filePath:String(n.path??""),heightExpanded:E}),t==="return_value"&&(()=>{const W=(_==null?void 0:_.map(U=>U.content).join(""))??"",O=s==="pending"&&W?W:String(n.content??"");return o.jsxs("div",{children:[o.jsx("div",{className:"text-[10px] text-accent-primary font-medium mb-1 uppercase tracking-wide",children:"Sub-Agent Summary"}),o.jsx("div",{className:"text-xs prose prose-invert prose-sm max-w-none",children:o.jsx(fs,{content:O})})]})})(),t!=="edit_file"&&t!=="write_file"&&t!=="run_command"&&t!=="read_file"&&t!=="return_value"&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{children:[o.jsx("div",{className:"text-[10px] text-text-muted mb-0.5",children:"Arguments:"}),o.jsx("pre",{className:"text-xs bg-bg-primary p-1.5 rounded overflow-x-auto",children:D6(n)})]}),s==="success"&&u!==void 0&&o.jsxs("div",{children:[o.jsxs("div",{className:"text-[10px] text-text-muted mb-0.5",children:["Result",d!==void 0&&` (${d}ms)`,":"]}),o.jsx("pre",{className:"text-xs bg-bg-primary p-1.5 rounded overflow-x-auto max-h-32",children:u||"No output"})]})]}),s==="success"&&(t==="edit_file"||t==="write_file"||t==="read_file")&&d!==void 0&&o.jsxs("div",{className:"text-[10px] text-text-muted flex items-center gap-2",children:[o.jsxs("span",{children:["Completed in ",d,"ms"]}),L&&(t==="read_file"||t==="write_file"||t==="edit_file")&&String((x==null?void 0:x.path)??n.path??"")&&o.jsx("a",{href:`vscode://file/${String((x==null?void 0:x.path)??n.path)}${A?`:${A}`:""}`,className:"text-accent-primary hover:underline ml-auto",children:"Open in VSCode"})]}),s==="error"&&c&&t!=="run_command"&&o.jsxs("div",{children:[o.jsx("div",{className:"text-[10px] text-accent-error mb-0.5",children:"Error:"}),o.jsx("pre",{className:"text-xs bg-bg-primary p-1.5 rounded text-accent-error",children:c})]})]})]})}),M6={read_file:"Reading file",write_file:"Writing file",edit_file:"Editing file",run_command:"Running command",glob:"Searching files",grep:"Searching content",ask_user:"Asking user",criterion:"Managing criterion",session_metadata:"Managing",todo_write:"Updating tasks"},I6={criteria:"criteria",review_findings:"review findings",todos:"tasks"};function P6(e,t){const n=M6[e];if(!n)return`Preparing ${e}`;if(e==="session_metadata"&&t)try{const a=JSON.parse(t).key;if(a){const l=I6[a]??a;return`${n} ${l}`}}catch{}return n}function B6(e){try{const t=e.replace(/\s*\}\s*$/,""),n=JSON.parse(t);if(typeof n.command=="string")return n.command}catch{const t=e.match(/"command"\s*:\s*"([^"]*)/);if(t&&t[1])return t[1]}return null}const z6=D.memo(function({name:t,arguments:n}){let a=P6(t,n)+"...";if(t==="run_command"&&n){const l=B6(n);l&&(a=l)}return o.jsx("div",{className:"border border-border rounded overflow-hidden my-1 min-w-0 animate-pulse",children:o.jsxs("div",{className:"flex items-center gap-1.5 p-2 bg-bg-tertiary",children:[o.jsx("span",{className:"text-accent-warning animate-pulse",children:"..."}),o.jsx(TC,{tool:t}),o.jsx("span",{className:"font-mono text-accent-primary text-sm",children:t}),t==="run_command"&&n?o.jsx("code",{className:"text-text-muted text-xs flex-1 truncate",children:a}):o.jsx("span",{className:"text-text-muted text-xs flex-1",children:a})]})})}),$6={pending:{icon:"○",color:"text-text-muted"},in_progress:{icon:"●",color:"text-accent-warning",animate:!0},completed:{icon:"✓",color:"text-accent-success"}},H6=D.memo(function({todos:t}){return Array.isArray(t)?t.length===0?o.jsx("div",{className:"text-xs text-text-muted italic my-1",children:"No tasks"}):o.jsxs("div",{className:"my-1 rounded border border-border bg-bg-tertiary overflow-hidden",children:[o.jsx("div",{className:"px-2 py-1.5 border-b border-border bg-bg-secondary",children:o.jsx("span",{className:"text-xs font-medium text-text-muted",children:"Tasks"})}),o.jsx("div",{children:t.map((n,s)=>{const a=$6[n.status];return o.jsxs("div",{className:`flex items-start gap-2 px-2 py-1.5 ${s>0?"border-t border-border":""}`,children:[o.jsx("span",{className:`${(a==null?void 0:a.color)??"text-text-muted"} ${a!=null&&a.animate?"animate-pulse":""} text-sm leading-tight`,children:(a==null?void 0:a.icon)??"○"}),o.jsx("span",{className:`text-sm leading-tight ${n.status==="completed"?"text-text-muted":"text-text-primary"}`,children:n.content})]},s)})})]}):o.jsx("div",{className:"text-xs text-accent-warning italic my-1",children:"⚠️ Invalid todos data"})});function U6({toolCall:e}){var E;const t=we(N=>N.pendingQuestions),n=we(N=>N.answerQuestion),[s,a]=D.useState(""),l=D.useRef(null),u=D.useRef(null),c=t.find(N=>N.callId===e.id),d=e.arguments.question??(c==null?void 0:c.question)??"",f=e.arguments.type??(c==null?void 0:c.type)??"text",m=e.arguments.options??(c==null?void 0:c.options)??void 0,p=e.result!==void 0,_=c!==void 0&&!p,x=((E=e.result)==null?void 0:E.output)??"",w=x==="[user skipped]";D.useEffect(()=>{_&&l.current&&l.current.focus()},[_]),D.useEffect(()=>{_&&u.current&&u.current.scrollIntoView({behavior:"smooth",block:"nearest"})},[_]);const C=D.useCallback(()=>{c&&n(c.callId,s)},[c,s,n]),v=D.useCallback(()=>{c&&n(c.callId,"",!0)},[c,n]),S=D.useCallback(N=>{N.key==="Enter"&&!N.shiftKey&&(N.preventDefault(),C()),N.key==="Escape"&&!N.shiftKey&&(N.preventDefault(),v())},[C,v]),b=D.useCallback(N=>{c&&n(c.callId,N)},[c,n]),y="px-3 py-1.5 text-xs font-medium rounded transition-colors";return o.jsxs("div",{ref:u,className:"my-1",children:[o.jsx("div",{className:"text-sm text-text-primary",children:d}),_&&o.jsx("div",{className:"mt-2 border border-border rounded overflow-hidden",children:o.jsx("div",{className:"p-3 bg-primary space-y-2",children:f==="confirm"?o.jsxs("div",{className:"flex gap-2",children:[o.jsx("button",{onClick:()=>b("yes"),className:`${y} flex-1 bg-accent-success/20 hover:bg-accent-success/30 text-accent-success border border-accent-success/30`,children:"Yes"}),o.jsx("button",{onClick:()=>b("no"),className:`${y} flex-1 bg-accent-error/20 hover:bg-accent-error/30 text-accent-error border border-accent-error/30`,children:"No"}),o.jsx("button",{onClick:v,className:`${y} bg-bg-tertiary hover:bg-bg-tertiary/80 text-text-secondary border border-border`,children:"Skip"})]}):f==="choice"&&m&&m.length>0?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"flex flex-col gap-1.5",children:m.map(N=>o.jsx("button",{onClick:()=>b(N),className:`${y} text-left w-full bg-bg-tertiary hover:bg-accent-primary/20 text-text-primary border border-border hover:border-accent-primary/50`,children:N},N))}),o.jsxs("div",{className:"flex gap-2",children:[o.jsx("textarea",{ref:l,value:s,onChange:N=>a(N.target.value),onKeyDown:S,placeholder:"Or type your own answer... (Enter to submit)",className:"flex-1 min-h-[36px] max-h-[80px] px-2 py-1.5 bg-bg-tertiary border border-border rounded text-xs text-text-primary placeholder:text-text-muted focus:outline-none focus:ring-2 focus:ring-accent-primary/50 resize-y",rows:1}),o.jsx("button",{onClick:C,disabled:!s.trim(),className:`${y} bg-accent-primary/25 hover:bg-accent-primary/40 text-text-primary disabled:opacity-50 disabled:cursor-not-allowed`,children:"Send"}),o.jsx("button",{onClick:v,className:`${y} bg-bg-tertiary hover:bg-bg-tertiary/80 text-text-secondary border border-border`,children:"Skip"})]})]}):o.jsxs(o.Fragment,{children:[o.jsx("textarea",{ref:l,value:s,onChange:N=>a(N.target.value),onKeyDown:S,placeholder:"Type your answer here... (Enter to submit, Shift+Enter for new line)",className:"w-full min-h-[80px] px-3 py-2 bg-bg-tertiary border border-border rounded text-sm text-text-primary placeholder:text-text-muted focus:outline-none focus:ring-2 focus:ring-accent-primary/50 resize-y",autoFocus:!0}),o.jsxs("div",{className:"flex justify-end gap-2",children:[o.jsx("button",{onClick:v,className:`${y} bg-bg-tertiary hover:bg-bg-tertiary/80 text-text-secondary border border-border`,children:"Skip"}),o.jsx("button",{onClick:C,disabled:!s.trim(),className:`${y} bg-accent-primary/25 hover:bg-accent-primary/40 text-text-primary disabled:opacity-50 disabled:cursor-not-allowed`,children:"Send Answer"})]})]})})}),p&&o.jsx("div",{className:"mt-1 flex items-center gap-2",children:o.jsx("span",{className:`text-xs ${w?"text-amber-400":"text-accent-success"}`,children:w?"Skipped":`Answered: ${x}`})})]})}const B0={add:{icon:"○",color:"text-text-muted"},update:{icon:"○",color:"text-text-muted"},remove:{icon:"○",color:"text-text-muted"},complete:{icon:"◉",color:"text-purple-400"},pass:{icon:"✓",color:"text-accent-success"},fail:{icon:"✗",color:"text-accent-error"},get:{icon:"○",color:"text-text-muted"},list:{icon:"○",color:"text-text-muted"},schema:{icon:"○",color:"text-text-muted"}},LC=D.memo(function({toolCalls:t,criteria:n}){if(t.length===0)return null;const s=new Map((n==null?void 0:n.map(d=>[d.id,d]))??[]),a=t.find(d=>{var f,m;return d.arguments.action==="get"&&((f=d.result)==null?void 0:f.success)&&((m=d.result)==null?void 0:m.output)}),l=t.some(d=>d.name==="session_metadata"),u={criteria:"Acceptance Criteria",review_findings:"Review Findings",todos:"Tasks"},c=(()=>{if(!l)return"Acceptance Criteria";const d=new Set(t.map(f=>f.arguments.key).filter(Boolean));if(d.size===1){const f=d.values().next().value;return f?u[f]??f:"Session Data"}return"Session Data"})();return o.jsxs("div",{className:"my-1 rounded border border-border bg-secondary overflow-hidden",children:[o.jsx("div",{className:"px-2 py-1.5 border-b border-border bg-secondary",children:o.jsx("span",{className:"text-xs font-medium text-text-muted",children:c})}),o.jsx("div",{className:"bg-primary",children:a?(()=>{const d=a.result.output;if(d==="No criteria defined yet.")return o.jsxs("div",{className:"flex items-start gap-2 px-2 py-1.5",children:[o.jsx("span",{className:"text-text-muted text-sm leading-tight flex-shrink-0",children:"○"}),o.jsx("div",{className:"flex-1 min-w-0 text-text-muted text-sm",children:"No criteria defined yet."})]});try{return JSON.parse(d).map((m,p)=>o.jsxs("div",{className:`flex items-start gap-2 px-2 py-1.5 ${p>0?"border-t border-border":""}`,children:[o.jsx("span",{className:"text-text-muted text-sm leading-tight flex-shrink-0",children:"○"}),o.jsx("div",{className:"flex-1 min-w-0",children:o.jsx(fs,{content:`[${m.id}] ${m.description}`})})]},m.id??p))}catch{return t.map((f,m)=>o.jsx(z0,{tc:f,index:m,criteriaMap:s},f.id??m))}})():t.map((d,f)=>o.jsx(z0,{tc:d,index:f,criteriaMap:s},d.id??f))})]})});function z0({tc:e,index:t,criteriaMap:n}){const s=e.arguments.action,a=e.arguments,l=e.name==="session_metadata",u=s==="remove",c=a.id,d=a.description,f=c?n.get(c):void 0,m=d??(f==null?void 0:f.description)??(u&&c?`[${c}]`:"Criterion updated"),p=a.reason,_=s==="fail";return o.jsxs("div",{className:`flex items-start gap-2 px-2 py-1.5 ${t>0?"border-t border-border":""}`,children:[l?o.jsx(Wu,{status:a.status,className:"text-sm leading-tight flex-shrink-0"}):(()=>{const x=s&&B0[s]?B0[s]:{icon:"○",color:"text-text-muted"};return o.jsx("span",{className:`${x.color} text-sm leading-tight flex-shrink-0`,children:x.icon})})(),o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsx("div",{className:u?"line-through text-text-muted":"",children:o.jsx(fs,{content:m})}),p&&o.jsxs("div",{className:`mt-1 text-sm ${_?"text-accent-error":"text-text-muted"}`,children:[o.jsx("span",{className:"text-text-muted",children:"└ "}),'"',p,'"']})]})]})}function F6(e){return e==="criterion"||e==="session_metadata"}function V6(e){const t=[];let n=[];const s=()=>{n.length>0&&(t.push({type:"criteria_group",toolCalls:n}),n=[])};for(const a of e)a.type==="tool_call"&&F6(a.toolCall.name)?n.push(a.toolCall):(s(),t.push(a));return s(),t}function G6(e,t){if(e.segments&&e.segments.length>0)return W6(e.segments,e.toolCalls??[],e.preparingToolCalls??[],e.stats,t);const n=[];if(e.thinkingContent&&n.push({type:"thinking",content:e.thinkingContent}),e.content&&n.push({type:"text",content:e.content}),e.toolCalls)for(const s of e.toolCalls)n.push({type:"tool_call",toolCall:s});if(e.preparingToolCalls)for(const s of e.preparingToolCalls)n.push({type:"preparing_tool_call",preparing:s});return t&&e.stats&&n.push({type:"stats",stats:e.stats}),n}function W6(e,t,n,s,a){const l=[],u=new Map(t.map(c=>[c.id,c]));for(const c of e)switch(c.type){case"text":l.push({type:"text",content:c.content});break;case"thinking":c.content&&c.content.trim().length>0&&l.push({type:"thinking",content:c.content});break;case"tool_call":{const d=u.get(c.toolCallId);d&&l.push({type:"tool_call",toolCall:d});break}}for(const c of n)l.push({type:"preparing_tool_call",preparing:c});return a&&s&&l.push({type:"stats",stats:s}),l}const og=D.memo(function({message:t,showStats:n=!0,showThinking:s=!0,showVerboseToolOutput:a=!0}){const l=we(_=>{var x,w;return(w=(x=_.currentSession)==null?void 0:x.metadataEntries)==null?void 0:w.criteria}),u=gt(_=>_.defaults),c=gt(_=>_.userItems),d=[...u,...c],f=G6(t,n),m=s?f:f.filter(_=>_.type!=="thinking"),p=V6(m);return p.length===0?null:o.jsx("div",{className:"feed-item",children:o.jsxs("div",{className:"min-w-0",children:[p.map((_,x)=>{var w,C;switch(_.type){case"thinking":return o.jsx(y6,{content:_.content},x);case"text":return o.jsx("div",{className:"prose prose-sm prose-invert max-w-none",children:o.jsx(fs,{content:_.content})},x);case"preparing_tool_call":return o.jsx(z6,{name:_.preparing.name,arguments:_.preparing.arguments},`preparing-${_.preparing.index}`);case"tool_call":{const v=_.toolCall,S=v.result;if(v.name==="ask_user")return o.jsx(U6,{toolCall:v},x);if(v.name==="todo_write"){const E=v.arguments.todos,N=Array.isArray(E)?E:[];return o.jsx(H6,{todos:N},x)}const b=(w=S==null?void 0:S.output)==null?void 0:w.includes("[interrupted by user]"),y=S?b?"interrupted":S.success?"success":"error":"pending";return o.jsx(O6,{tool:v.name,args:v.arguments,status:y,variant:"expandable",forceCompact:!a,result:S==null?void 0:S.output,error:S==null?void 0:S.error,durationMs:S==null?void 0:S.durationMs,diagnostics:S==null?void 0:S.diagnostics,editContext:S==null?void 0:S.editContext,startedAt:v.startedAt,streamingOutput:v.streamingOutput,metadata:S==null?void 0:S.metadata,callId:v.id},x)}case"criteria_group":return o.jsx(LC,{toolCalls:_.toolCalls,criteria:l},x);case"stats":{const v=_.stats;if(!v||"error"in v)return null;const S=((C=v.model.split("/").pop())==null?void 0:C.split("-").slice(0,2).join("-"))??v.model,b=al(d,v.mode),y=N=>N>=1e3?`${(N/1e3).toFixed(1)}k`:N.toString(),E=N=>N>=1e3?`${(N/1e3).toFixed(1)}k`:N.toFixed(1);return o.jsxs("div",{className:"flex items-center justify-center gap-1.5 text-[10px] text-text-muted mt-3",children:[o.jsx("span",{className:"flex-1 h-px bg-border"}),o.jsx("span",{className:"text-text-secondary",children:S}),o.jsx("span",{className:"text-text-muted",children:"·"}),o.jsx("span",{style:{color:b},children:v.mode}),o.jsx("span",{className:"text-text-muted",children:"·"}),o.jsxs("span",{children:[v.totalTime.toFixed(1),"s"]}),v.toolTime>0&&o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"text-text-muted",children:"·"}),o.jsxs("span",{children:[v.toolTime.toFixed(1),"s tools"]})]}),o.jsx("span",{className:"text-text-muted",children:"·"}),o.jsxs("span",{children:[y(v.prefillTokens)," @ ",E(v.prefillSpeed)," pp"]}),o.jsx("span",{className:"text-text-muted",children:"·"}),o.jsxs("span",{children:[y(v.generationTokens)," @ ",E(v.generationSpeed)," tg"]}),o.jsx("span",{className:"text-text-muted",children:"·"}),o.jsx("button",{type:"button",className:"text-text-muted hover:text-text-secondary transition-colors",title:"View detailed stats",onClick:()=>{const N=new CustomEvent("open-turn-stats",{detail:{stats:v}});window.dispatchEvent(N)},children:o.jsx(vS,{className:"w-3 h-3"})}),o.jsx("span",{className:"flex-1 h-px bg-border"})]},x)}}}),t.partial&&o.jsxs("div",{className:"flex items-center gap-1.5 text-[10px] text-accent-warning mt-1",children:[o.jsx(km,{}),o.jsx("span",{children:"Aborted"})]}),t.completeReason==="truncated"&&o.jsxs("div",{className:"flex items-center gap-1.5 text-[10px] text-amber-400/80 mt-1",children:[o.jsx(km,{}),o.jsx("span",{children:"Response was truncated — the model ran out of output tokens."})]})]})})});function Du(e,t){const n=parseInt(e.slice(1,3),16),s=parseInt(e.slice(3,5),16),a=parseInt(e.slice(5,7),16);return`rgba(${n},${s},${a},${t})`}function q6(e){if(e<60)return`${e}s`;const t=Math.floor(e/60),n=Math.round(e%60);return n>0?`${t}m ${n}s`:`${t}m`}function K6(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}const Y6=D.memo(function({data:t}){var u;const n=jt(c=>c.defaults),s=jt(c=>c.userItems),l=((u=[...n,...s].find(c=>c.id===t.workflowId))==null?void 0:u.color)??t.workflowColor??"#8b949e";return o.jsxs("div",{className:"feed-item rounded p-3 border",style:{borderColor:Du(l,.3),backgroundColor:Du(l,.08)},children:[o.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[o.jsx(Mj,{color:l}),o.jsx("span",{className:"text-sm font-medium",style:{color:l},children:t.workflowName??"Task Completed"})]}),o.jsxs("div",{className:"grid grid-cols-3 sm:grid-cols-5 gap-2",children:[o.jsx(Xo,{label:"Iterations",value:String(t.iterations)}),o.jsx(Xo,{label:"Total time",value:q6(t.totalTimeSeconds)}),o.jsx(Xo,{label:"Tool calls",value:String(t.totalToolCalls)}),o.jsx(Xo,{label:"Tokens",value:K6(t.totalTokensGenerated)}),o.jsx(Xo,{label:"Speed",value:t.avgGenerationSpeed>0?`${t.avgGenerationSpeed} tok/s`:"-"})]})]})});function Xo({label:e,value:t}){return o.jsxs("div",{className:"bg-bg-primary/50 rounded px-2 py-1",children:[o.jsx("div",{className:"text-sm text-text-muted",children:e}),o.jsx("div",{className:"text-sm text-text-primary font-medium",children:t})]})}const X6=D.memo(function({data:t}){var u;const n=jt(c=>c.defaults),s=jt(c=>c.userItems),l=((u=[...n,...s].find(c=>c.id===t.workflowId))==null?void 0:u.color)??t.workflowColor??"#6b7280";return o.jsxs("div",{className:"feed-item flex items-center gap-2 px-3 py-2 rounded border",style:{borderColor:Du(l,.3),backgroundColor:Du(l,.08)},children:[o.jsx(Tj,{className:"w-3 h-3 shrink-0",color:l}),o.jsx("span",{className:"text-sm font-medium",style:{color:l},children:t.workflowName}),o.jsx("span",{className:"text-text-muted text-sm",children:"started"})]})});function Q6({attachments:e,messageId:t}){const[n,s]=D.useState(null),a=we(m=>m.visionFallbackByMessage),l=we(m=>m.messages),u=D.useMemo(()=>{const m=l.findIndex(p=>p.id===t);if(m===-1)return null;for(let p=m+1;p<l.length;p++){const _=l[p];if(_&&_.role==="assistant")return _.id}return null},[l,t]),c=m=>{s(m)},d=()=>{s(null)},f=m=>{const p=`${t}-${m}`;if(a[p])return a[p];if(u){const _=`${u}-${m}`;return a[_]}return null};return e.length===0?null:o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"mt-3 flex flex-wrap gap-3",children:e.map(m=>{const p=f(m.id);return o.jsxs("div",{className:"relative inline-block",children:[o.jsxs("button",{onClick:()=>c(m.data),className:"group relative inline-block",title:m.filename,disabled:(p==null?void 0:p.type)==="start",children:[o.jsx("img",{src:m.data,alt:m.filename,className:"max-w-[256px] max-h-[256px] object-contain rounded-lg border border-border hover:border-accent-primary transition-colors cursor-pointer"}),(p==null?void 0:p.type)==="start"&&o.jsx("div",{className:"absolute inset-0 bg-black/60 flex items-center justify-center rounded-lg",children:o.jsx("span",{className:"text-xs text-text-primary animate-pulse",children:"Describing image..."})})]}),(p==null?void 0:p.type)==="done"&&p.description&&o.jsxs("div",{className:"mt-2 p-2 bg-bg-tertiary rounded text-xs text-text-secondary max-w-[256px]",children:[p.description.slice(0,200),p.description.length>200?"...":""]})]},m.id)})}),n&&o.jsx(AC,{src:n,alt:"Attached image",isOpen:!0,onClose:d})]})}function J6({content:e,align:t="right",messageIndex:n,sessionId:s}){const[a,l]=D.useState(!1),[u,c]=D.useState(!1),[d,f]=D.useState("left"),m=D.useRef(null),p=D.useRef(null),_=we(S=>S.loadSession),x=t==="right",w=()=>{if(!p.current)return"left";const S=p.current.getBoundingClientRect(),b=window.innerWidth-S.right,y=S.left,E=160,N=b>=E,T=y>=E;return T&&N||T?"left":N?"right":y>=b?"left":"right"};D.useEffect(()=>{const S=b=>{m.current&&!m.current.contains(b.target)&&l(!1)};return a&&document.addEventListener("mousedown",S),()=>document.removeEventListener("mousedown",S)},[a]);const C=async()=>{try{if(navigator.clipboard)await navigator.clipboard.writeText(e);else{const S=document.createElement("textarea");S.value=e,S.style.position="fixed",S.style.left="-999999px",document.body.appendChild(S),S.select(),document.execCommand("copy"),document.body.removeChild(S)}c(!0),l(!1),window.setTimeout(()=>c(!1),1500)}catch(S){console.error("Failed to copy:",S)}},v=async()=>{!s||n===void 0||(l(!1),await y2(s,n),_(s))};return o.jsx(o.Fragment,{children:o.jsxs("div",{className:`flex items-start gap-1.5 ${x?"":"order-first"}`,children:[u&&o.jsx(Br,{className:"w-4 h-4 text-accent-success"}),o.jsxs("div",{ref:m,className:"relative",children:[o.jsx("button",{ref:p,onClick:()=>{a||f(w()),l(!a)},className:"p-1 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary",title:"Message options",children:o.jsx(hp,{})}),a&&o.jsxs("div",{className:`absolute top-full mt-1 bg-bg-secondary border border-border rounded shadow-xl z-50 py-1 min-w-36 ${d==="right"?"left-0":"right-0"}`,children:[o.jsxs("button",{onClick:C,className:"w-full px-3 py-1.5 text-left text-sm text-text-primary hover:bg-bg-tertiary flex items-center gap-2",children:[o.jsx(dp,{className:"w-4 h-4"}),"Copy"]}),s&&n!==void 0&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"border-t border-border my-1"}),o.jsxs("button",{onClick:v,className:"w-full px-3 py-1.5 text-left text-sm text-text-primary hover:bg-bg-tertiary flex items-center gap-2",children:[o.jsx(fp,{className:"w-4 h-4"}),"Replay"]})]})]})]})]})})}function Z6({message:e}){const[t,n]=D.useState(!1);if(e.messageKind!=="auto-prompt")return null;const s=e.metadata,a=(s==null?void 0:s.color)??"#6b7280",l=(s==null?void 0:s.name)??"Agent",u=(s==null?void 0:s.type)??"agent",d={agent:(s==null?void 0:s.kind)==="reminder"?"reminder":"definition injected",workflow:"instructions",compaction:"prompt injected",subagent:"instructions"}[u]??"injected",f=u==="workflow"||u==="subagent";return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"flex items-center justify-center gap-1.5 text-[10px] text-text-muted font-mono mt-3 mb-4",children:[o.jsx("span",{className:"flex-1 h-px bg-border"}),o.jsx("span",{className:`w-1.5 h-1.5 rounded-full flex-shrink-0 ${f?"":"cursor-pointer"}`,style:{backgroundColor:a},onClick:()=>!f&&n(!0)}),o.jsx("span",{className:f?"":"cursor-pointer hover:text-text-secondary transition-colors",style:{color:a},onClick:()=>!f&&n(!0),children:l}),o.jsx("span",{children:"·"}),o.jsx("span",{className:f?"":"cursor-pointer hover:text-text-secondary transition-colors",onClick:()=>!f&&n(!0),children:d}),o.jsx("span",{className:"flex-1 h-px bg-border"})]}),f&&o.jsx("div",{className:"flex justify-center feed-item mb-4",children:o.jsx("div",{className:"max-w-[75%] rounded p-3 bg-bg-tertiary/50 text-text-secondary text-sm",style:{borderLeft:`3px solid ${a}`},children:o.jsx("pre",{className:"whitespace-pre-wrap font-mono text-xs",children:e.content})})}),o.jsx(Ot,{isOpen:t,onClose:()=>n(!1),title:`${l} Prompt`,size:"lg",children:o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"w-3 h-3 rounded-full",style:{backgroundColor:a}}),o.jsx("span",{className:"text-sm text-text-primary font-medium",children:l}),o.jsxs("span",{className:"text-xs text-text-muted",children:["(",u,")"]})]}),o.jsx("div",{className:"h-full min-h-96",children:o.jsx("pre",{className:"text-sm text-text-secondary whitespace-pre-wrap bg-bg-tertiary rounded p-4 h-full min-h-96 overflow-auto font-mono",children:e.content})})]})})]})}function eB({message:e,messageIndex:t,sessionId:n}){const s=e.messageKind==="auto-prompt",a=e.messageKind==="command",l=e.isSystemGenerated;return o.jsxs("div",{className:"flex justify-end items-start gap-1.5 feed-item",children:[!l&&o.jsx(J6,{content:e.content,align:"right",messageIndex:t,sessionId:n}),o.jsxs("div",{className:`max-w-[75%] rounded p-2 ${l?a?"bg-teal-500/10 border border-teal-500/30":s?"bg-slate-500/10 border border-slate-500/30":"bg-amber-500/10 border border-amber-500/30":"bg-accent-primary/15 text-text-primary"}`,children:[l&&o.jsx("span",{className:`text-[10px] block mb-0.5 ${a?"text-teal-400":s?"text-slate-400":"text-amber-400"}`,children:a?"Command":s?"Auto":"System"}),o.jsx("div",{className:`whitespace-pre-wrap text-sm ${l?`${a?"text-teal-200":s?"text-slate-200":"text-amber-200 italic"}`:""}`,children:e.content}),e.attachments&&e.attachments.length>0&&o.jsx(Q6,{attachments:e.attachments,messageId:e.id})]})]})}const DC=D.memo(function({message:t,isLastAssistantMessage:n=!1,messageIndex:s,sessionId:a}){const l=t.role==="user",u=t.role==="assistant",c=t.role==="system",d=t.role==="tool";if(u)return o.jsx(og,{message:t,showStats:n});if(c&&t.isCompacted)return o.jsxs("div",{className:"feed-item bg-bg-tertiary/50 border border-border rounded p-2",children:[o.jsx("div",{className:"text-text-muted text-xs mb-0.5",children:"[Compacted]"}),o.jsx("div",{className:"text-text-secondary text-xs whitespace-pre-wrap",children:t.content.replace(`[COMPACTED HISTORY]
286
+ `,"")})]});if(d)return o.jsxs("div",{className:"feed-item bg-bg-tertiary/30 border-l-2 border-accent-primary rounded-r p-2",children:[o.jsxs("div",{className:"text-accent-primary text-xs mb-0.5",children:["Tool: ",t.toolName]}),o.jsxs("pre",{className:"text-text-secondary text-xs whitespace-pre-wrap overflow-x-auto max-h-32",children:[t.content.slice(0,500),t.content.length>500&&"..."]})]});if(t.messageKind==="workflow-started")try{const f=JSON.parse(t.content);return o.jsx(X6,{data:f})}catch{}if(t.messageKind==="task-completed")try{const f=JSON.parse(t.content);return o.jsx(Y6,{data:f})}catch{}return t.messageKind==="context-reset"?o.jsxs("div",{className:"flex items-center gap-4 mb-6 text-text-muted text-xs uppercase tracking-wide",children:[o.jsx("div",{className:"flex-1 border-t border-border"}),o.jsx("span",{children:t.content}),o.jsx("div",{className:"flex-1 border-t border-border"})]}):t.messageKind==="auto-prompt"&&t.isSystemGenerated?o.jsx(Z6,{message:t}):t.messageKind==="correction"&&t.isSystemGenerated?o.jsx("div",{className:"flex justify-end feed-item",children:o.jsxs("div",{className:"max-w-[75%] rounded p-2 bg-amber-500/10 border border-amber-500/30",children:[o.jsx("span",{className:"text-[10px] block mb-0.5 text-amber-400",children:"System"}),o.jsx("div",{className:"whitespace-pre-wrap text-sm text-amber-200 italic",children:t.content})]})}):l?o.jsx(eB,{message:t,messageIndex:s,sessionId:a}):o.jsx("div",{className:"flex justify-start feed-item",children:o.jsx("div",{className:"max-w-[75%] rounded p-2 bg-bg-tertiary text-text-primary",children:o.jsx(fs,{content:t.content})})})}),tB={verifier:"Verification",code_reviewer:"Code Review",test_generator:"Test Generation",debugger:"Debug"};function nB(e){return{backgroundColor:`${e}20`,color:e,borderColor:`${e}4d`}}function $0(e,t){return t||e>85?"text-accent-error":e>60?"text-accent-warning":"text-text-muted"}function rB({contextState:e}){const{currentTokens:t,maxTokens:n,compactionCount:s,dangerZone:a}=e,l=Math.round(t/n*100);return o.jsxs("div",{className:"flex items-center gap-1.5 text-[10px]",children:[o.jsxs("span",{className:$0(l,a),children:[fu(t),"/",fu(n)]}),o.jsxs("span",{className:$0(l,a),children:["(",l,"%)"]}),o.jsx(QS,{percent:l,dangerZone:a,size:"sm"}),a&&o.jsx("span",{className:"text-accent-error animate-pulse",children:"Low!"}),s>0&&o.jsxs("span",{className:"text-text-muted bg-bg-tertiary px-1 rounded",children:[s,"x"]})]})}const sB=D.memo(function({messages:t,subAgentType:n,subAgentId:s,isStreaming:a}){const l=D.useRef(null),u=D.useRef(null),[c,d]=D.useState(!1),f=gt(L=>L.defaults),m=gt(L=>L.userItems),p=[...f,...m],_=we(L=>L.subAgentContextStates[s]),{showThinking:x,showVerboseToolOutput:w}=Mu(),{isAutoScrollActive:C,setAutoScroll:v}=qu(u,null);D.useEffect(()=>{a||v(!0)},[a]);const S=D.useCallback(()=>{const L=!c;d(L),L&&setTimeout(()=>{var A;(A=l.current)==null||A.scrollIntoView({block:"start",behavior:"smooth"})},220)},[c]),b=p.find(L=>L.id===n),y=(b==null?void 0:b.name)??tB[n]??n,E=al(p,n),N=nB(E),T=t.filter(L=>L.role!=="tool");return o.jsxs("div",{ref:l,className:"feed-item border border-border rounded overflow-hidden bg-secondary",children:[o.jsxs("div",{className:"w-full flex items-center justify-between px-2 py-1 border-b relative",style:N,children:[o.jsx("span",{className:"text-xs font-medium",children:y}),o.jsx("div",{className:"absolute left-1/2 -translate-x-1/2",children:_&&o.jsx(rB,{contextState:_})}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsxs("button",{type:"button",className:"text-sm text-text-muted hover:text-text-primary flex items-center gap-1.5",onClick:()=>v(!C),children:[o.jsx("span",{className:`w-1 h-1 rounded-full ${C?"bg-accent-success":"border border-text-muted"}`}),"live"]}),o.jsxs("button",{type:"button",className:"text-[10px] px-1.5 py-0.5 rounded bg-bg-tertiary",onClick:S,children:[c?"▼":"▶"," Expand"]})]})]}),o.jsx("div",{ref:u,className:`${c?"max-h-[calc(100vh-10rem)]":"max-h-80"} overflow-y-auto p-2 transition-[max-height] duration-200`,children:T.map(L=>L.role==="assistant"?o.jsx(og,{message:L,showStats:!0,showThinking:x,showVerboseToolOutput:w},L.id):o.jsx(DC,{message:L,isLastAssistantMessage:!1},L.id))})]})});function RC(e,t,n=!0){D.useEffect(()=>{if(!n)return;const s=a=>{var l;(l=e.current)!=null&&l.contains(a.target)||t()};return document.addEventListener("mousedown",s),()=>document.removeEventListener("mousedown",s)},[e,t,n])}const iB=[],aB=D.memo(function({displayItems:t,scrollContainerRef:n,highlightedMessageId:s}){const a=we(R=>{var M,G;return((G=(M=R.currentSession)==null?void 0:M.metadataEntries)==null?void 0:G.criteria)??iB}),l=we(R=>{var M;return(M=R.currentSession)==null?void 0:M.id}),u=we(R=>{var M;return(M=R.currentSession)==null?void 0:M.mode}),c=we(R=>{var M;return(M=R.currentSession)==null?void 0:M.phase}),d=we(R=>R.error),f=we(R=>R.clearError),m=we(R=>R.acceptAndBuild),p=Bu(),{showThinking:_,showVerboseToolOutput:x,showStats:w,showAgentDefinitions:C,showWorkflowBars:v}=Mu(),S=jt(R=>R.defaults),b=jt(R=>R.userItems),y=[...S,...b],E=u==="planner",N=a.length>0,T=c==="done",L=t.some(R=>R.type==="message"&&R.message.role==="assistant"),A=E&&N&&!p&&L&&!T;return o.jsxs("div",{ref:n,"data-testid":"chat-scroll-container",className:"flex-1 min-w-0 overflow-y-auto relative bg-primary",children:[o.jsx("div",{className:"pt-4",children:t.map((R,M)=>{if(R.type==="context-divider")return o.jsxs("div",{"data-item-index":M,className:"flex items-center gap-2 feed-item px-2 md:px-4",children:[o.jsx("div",{className:"flex-1 border-t border-border"}),o.jsx("span",{className:"text-[10px] text-text-muted font-medium px-2",children:"Earlier context summarized"}),o.jsx("div",{className:"flex-1 border-t border-border"})]},M);if(R.type==="subagent"){const U=R.messages.some(V=>V.isStreaming);return o.jsx("div",{"data-item-index":M,className:"px-2 md:px-4",children:o.jsx(sB,{messages:R.messages,subAgentType:R.subAgentType,subAgentId:R.subAgentId,isStreaming:U})},M)}if(R.type==="criteria-batch")return o.jsx("div",{"data-item-index":M,className:"feed-item px-2 md:px-4",children:o.jsx(LC,{toolCalls:R.toolCalls,criteria:a})},M);const G=R.message;if(G.role==="assistant")return o.jsx("div",{"data-item-index":M,className:"px-2 md:px-4",children:o.jsx(og,{message:G,showStats:w,showThinking:_,showVerboseToolOutput:x})},M);const W=!C&&G.messageKind==="auto-prompt",O=!v&&(G.messageKind==="workflow-started"||G.messageKind==="task-completed");return W||O?null:o.jsx("div",{"data-item-index":M,className:"px-2 md:px-4",children:o.jsx("div",{"data-message-id":G.id,className:s===G.id?"rounded animate-highlight-fade":void 0,children:o.jsx(DC,{message:G,messageIndex:M,sessionId:l,isLastAssistantMessage:!1})})},M)})}),o.jsxs("div",{className:"px-2 md:px-4 pb-4",children:[d&&o.jsx("div",{className:"feed-item bg-red-500/10 border border-red-500/50 rounded p-2",children:o.jsxs("div",{className:"flex items-start justify-between gap-2",children:[o.jsxs("div",{children:[o.jsx("div",{className:"text-red-400 text-sm font-medium",children:d.code}),o.jsx("div",{className:"text-red-300 text-xs mt-0.5",children:d.message})]}),o.jsx(vl,{onClick:f,className:"text-red-400 hover:text-red-300 p-0.5",size:"sm"})]})}),A&&o.jsx("div",{className:"flex justify-center gap-2 feed-item flex-wrap",children:y.map(R=>{const M=R.color??"#3b82f6",G=parseInt(M.slice(1,3),16),W=parseInt(M.slice(3,5),16),O=parseInt(M.slice(5,7),16),U=`rgba(${G},${W},${O},0.12)`,V=`rgba(${G},${W},${O},0.22)`,z=`rgba(${G},${W},${O},0.25)`;return o.jsx(oB,{workflowName:R.name,color:M,bg:U,bgHover:V,border:z,subGroups:R.subGroups,onLaunch:X=>m(R.id,void 0,void 0,X)},R.id)})})]})]})});function oB({workflowName:e,color:t,bg:n,bgHover:s,border:a,subGroups:l,onLaunch:u}){const[c,d]=D.useState(!1),f=D.useRef(null);return RC(f,()=>d(!1),c),o.jsxs("div",{className:"relative flex",children:[o.jsxs("button",{onClick:()=>u(),"data-testid":"workflow-run-button",className:"px-4 py-1.5 rounded-l text-sm font-medium transition-colors",style:{backgroundColor:n,color:t,border:`1px solid ${a}`,borderRight:"none"},onMouseEnter:m=>{m.currentTarget.style.backgroundColor=s},onMouseLeave:m=>{m.currentTarget.style.backgroundColor=n},children:["▶ ",e]}),l&&l.length>0&&o.jsxs("div",{ref:f,className:"relative",children:[o.jsx("button",{onClick:()=>d(!c),className:"px-1.5 py-1.5 rounded-r text-sm font-medium transition-colors",style:{backgroundColor:n,color:t,border:`1px solid ${a}`},onMouseEnter:m=>{m.currentTarget.style.backgroundColor=s},onMouseLeave:m=>{m.currentTarget.style.backgroundColor=n},children:"⋮"}),c&&o.jsxs("div",{className:"absolute top-full right-0 mt-1 w-40 bg-bg-secondary border border-border rounded-lg shadow-xl z-50 overflow-hidden",children:[o.jsx("button",{onClick:()=>{u(),d(!1)},className:"w-full text-left px-3 py-2 text-sm text-text-primary hover:bg-bg-tertiary transition-colors",children:"Full workflow"}),o.jsx("div",{className:"border-t border-border/50"}),l.map(m=>o.jsx("button",{onClick:()=>{u(m),d(!1)},className:"w-full text-left px-3 py-2 text-sm text-text-primary hover:bg-bg-tertiary transition-colors",children:m},m))]})]})]})}function lB(){const e=we(s=>s.connectionStatus),t=we(s=>s.reconnect);if(e==="connected")return null;const n=e==="reconnecting";return o.jsxs("div",{className:`
287
+ flex items-center justify-between px-4 py-2
288
+ text-sm font-medium
289
+ ${n?"bg-amber-500/15 border-b border-amber-500/30 text-amber-300":"bg-red-500/15 border-b border-red-500/30 text-red-300"}
290
+ `,children:[o.jsx("div",{className:"flex items-center gap-2",children:n?o.jsxs(o.Fragment,{children:[o.jsxs("span",{className:"flex gap-1",children:[o.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-amber-400 animate-pulse"}),o.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-amber-400 animate-pulse",style:{animationDelay:"150ms"}}),o.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-amber-400 animate-pulse",style:{animationDelay:"300ms"}})]}),o.jsx("span",{children:"Reconnecting to server..."})]}):o.jsxs(o.Fragment,{children:[o.jsx(Pj,{}),o.jsx("span",{children:"Connection lost"})]})}),o.jsx("button",{onClick:()=>t(),disabled:n,className:`
291
+ px-3 py-1 rounded text-xs font-medium
292
+ transition-colors
293
+ ${n?"bg-amber-500/20 text-amber-400 cursor-not-allowed opacity-50":"bg-red-500/20 text-red-300 hover:bg-red-500/30 hover:text-red-200"}
294
+ `,children:n?"Reconnecting...":"Reconnect"})]})}const en=Yn((e,t)=>({defaults:[],userItems:[],projectItems:[],loading:!1,fetchCommands:async()=>{await xp("/api/commands",e,!0)},fetchCommand:async n=>{try{const s=await Ne(`/api/commands/${n}`);return s.ok?await s.json():null}catch{return null}},fetchDefaultContent:async n=>{try{const s=await Ne(`/api/commands/defaults/${n}`);return s.ok?await s.json():null}catch{return null}},createCommand:async(n,s)=>{const a=await Ys("POST","/api/commands",{...n,destination:s});return a.success&&await t().fetchCommands(),a},updateCommand:async(n,s)=>{const a=await Ys("PUT",`/api/commands/${n}`,s);return a.success&&await t().fetchCommands(),a},deleteCommand:async n=>{try{const s=await Ne(`/api/commands/${n}`,{method:"DELETE"}),a=await s.json();return s.ok?(e(l=>({userItems:l.userItems.filter(u=>u.id!==n)})),{success:!0}):{success:!1,error:a.error??"Failed to delete"}}catch{return{success:!1,error:"Network error"}}},duplicateCommand:async(n,s)=>Pu(`/api/commands/${n}/duplicate`,()=>t().fetchCommands(),s)}));function cB(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function uB({onClick:e}){return o.jsx("button",{type:"button",onClick:e,className:"p-1.5 rounded text-text-muted hover:text-text-primary hover:bg-bg-primary transition-colors",title:"View",children:o.jsx(du,{})})}function OC({isOpen:e,onClose:t,initialEditId:n}){const s=en(ce=>ce.defaults),a=en(ce=>ce.userItems),l=en(ce=>ce.projectItems),u=en(ce=>ce.loading),c=en(ce=>ce.fetchCommands),d=en(ce=>ce.fetchCommand),f=en(ce=>ce.fetchDefaultContent),m=en(ce=>ce.createCommand),p=en(ce=>ce.updateCommand),_=en(ce=>ce.deleteCommand),[x,w]=D.useState(null),[C,v]=D.useState(null),{view:S,editingId:b,formError:y,saving:E,formData:N,setView:T,setEditingId:L,setFormError:A,setFormData:R,setSaving:M}=DS(),{requestDelete:G,clearConfirm:W,isConfirming:O}=Hu(),U=D.useRef(!1),V=gt(ce=>ce.defaults),z=gt(ce=>ce.userItems),X=gt(ce=>ce.fetchAgents),H=[...V,...z].filter(ce=>!ce.subagent),I=D.useRef(c),$=D.useRef(X),F=D.useRef(d),P=D.useRef(f),ee=D.useRef(n),J=D.useRef(T),re=D.useRef(L),Y=D.useRef(A),q=D.useRef(W);D.useEffect(()=>{I.current=c,$.current=X,F.current=d,P.current=f,ee.current=n,J.current=T,re.current=L,Y.current=A,q.current=W}),D.useEffect(()=>{if(e)if(I.current(),$.current(),U.current||(q.current(),U.current=!0),ee.current){const ce=s.some(Se=>Se.id===ee.current);J.current("edit"),re.current(ee.current),Y.current(""),ce?P.current(ee.current).then(Se=>{Se&&R({name:Se.metadata.name+" (copy)",id:`${ee.current}-copy-${Date.now()}`,prompt:Se.prompt,agentMode:Se.metadata.agentMode??"",isDefault:!0,destination:"user"})}):F.current(ee.current).then(Se=>{Se&&R({name:Se.metadata.name,id:Se.metadata.id,prompt:Se.prompt,agentMode:Se.metadata.agentMode??"",isDefault:!1,destination:"user"})})}else J.current("list"),re.current(null);else U.current=!1},[e]);const Z=async ce=>{w(ce);const Se=await f(ce);v((Se==null?void 0:Se.prompt)??null)},ae=async ce=>{if(s.some(Ze=>Ze.id===ce)){const Ze=await f(ce);Ze&&(L(null),R({name:`${Ze.metadata.name} (copy)`,id:`${ce}-copy-${Date.now()}`,prompt:Ze.prompt,agentMode:Ze.metadata.agentMode??"",isDefault:!0,destination:"user"}),A(""),T("edit"))}else{const Ze=await d(ce);Ze&&(L(null),R({name:`${Ze.metadata.name} (copy)`,id:`${ce}-copy-${Date.now()}`,prompt:Ze.prompt,agentMode:Ze.metadata.agentMode??"",isDefault:!1,destination:"user"}),A(""),T("edit"))}},se=()=>{R({name:"",id:"",prompt:"",agentMode:"",isDefault:!1,destination:"user"}),L(null),T("edit")},oe=async ce=>{const Se=await d(ce);Se&&(L(ce),R({name:Se.metadata.name,id:Se.metadata.id,prompt:Se.prompt,agentMode:Se.metadata.agentMode??"",isDefault:!1,destination:"user"}),A(""),T("edit"))},je=async ce=>{await _(ce),W()},Le=async()=>{const ce=b??N.id;if(!ce||!N.name||!N.prompt){A("Name and message are required.");return}M(!0),A("");const Se={metadata:{id:ce,name:N.name,...N.agentMode?{agentMode:N.agentMode}:{}},prompt:N.prompt},Ze=b?await p(b,Se):await m(Se,N.destination);if(M(!1),!Ze.success){A(Ze.error??"Failed to save command.");return}n?t():T("list")},De=()=>{n?t():(T("list"),w(null),v(null))},Re=ce=>{R(Se=>({...Se,name:ce})),(!b||N.isDefault)&&R(Se=>({...Se,id:cB(ce)}))},Te=()=>{w(null),v(null),T("list")},Ae=()=>{x&&(w(null),T("edit"),L(x),f(x).then(ce=>{ce&&R({name:`${ce.metadata.name} (copy)`,id:`${x}-copy-${Date.now()}`,prompt:ce.prompt,agentMode:ce.metadata.agentMode??"",isDefault:!0,destination:"user"})}))};if(x){const ce=s.find(Se=>Se.id===x);return o.jsx(Ot,{isOpen:e,onClose:Te,title:`Default: ${(ce==null?void 0:ce.name)??x}`,size:"xl",children:o.jsxs("div",{className:"flex flex-col h-full",children:[o.jsxs("div",{className:"space-y-3 mb-3",children:[o.jsxs("div",{className:"flex items-center gap-2 text-xs text-text-muted",children:[o.jsx("span",{className:"px-1.5 py-0.5 rounded bg-bg-tertiary text-text-secondary",children:"Built-in"}),o.jsx("span",{className:"font-mono",children:x})]}),o.jsxs("div",{children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Name"}),o.jsx("div",{className:"px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm",children:ce==null?void 0:ce.name})]}),o.jsxs("div",{children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Agent Mode"}),o.jsx("div",{className:"px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm text-text-muted",children:(ce==null?void 0:ce.agentMode)||"None"})]})]}),o.jsxs("div",{className:"flex-1 min-h-[120px] border-t border-border pt-3 flex flex-col",children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Message"}),o.jsx("textarea",{value:C??"",readOnly:!0,placeholder:"...",className:"flex-1 w-full px-3 py-2 bg-bg-tertiary border border-border rounded text-sm font-mono resize-none opacity-60"})]}),o.jsxs("div",{className:"flex justify-end gap-2 pt-3 mt-3 border-t border-border flex-shrink-0",children:[o.jsx(tt,{variant:"secondary",onClick:Te,children:"Close"}),o.jsx(tt,{variant:"primary",onClick:Ae,children:"Duplicate & Customize"})]})]})})}if(S==="edit")return o.jsx(Ot,{isOpen:e,onClose:De,title:b?"Edit Command":"New Command",size:"xl",children:o.jsxs("div",{className:"flex flex-col h-full",children:[y&&o.jsx(Uu,{message:y}),o.jsxs("div",{className:"space-y-3 mb-3",children:[o.jsx(LS,{name:N.name,id:N.id,nameLabel:"Name",idLabel:"ID",namePlaceholder:"My Command",idPlaceholder:"my-command",readOnlyId:!!b&&!N.isDefault,onNameChange:Re,onIdChange:ce=>R(Se=>({...Se,id:ce}))}),o.jsxs("div",{children:[o.jsxs("label",{className:"block text-xs text-text-secondary mb-1",children:["Agent Mode ",o.jsx("span",{className:"text-text-muted",children:"(optional)"})]}),o.jsxs("select",{value:N.agentMode,onChange:ce=>R(Se=>({...Se,agentMode:ce.target.value})),className:"w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm focus:outline-none focus:ring-1 focus:ring-accent-primary",children:[o.jsx("option",{value:"",children:"None (keep current mode)"}),H.map(ce=>o.jsx("option",{value:ce.id,children:ce.name},ce.id))]})]}),!b&&o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("label",{className:"text-xs text-text-secondary",children:"Save to:"}),o.jsxs("select",{value:N.destination,onChange:ce=>R(Se=>({...Se,destination:ce.target.value})),className:"px-2 py-1 bg-bg-tertiary border border-border rounded text-xs focus:outline-none focus:ring-1 focus:ring-accent-primary",children:[o.jsx("option",{value:"user",children:"Global config"}),o.jsx("option",{value:"project",children:"Project (.openfox/)"})]})]})]}),o.jsxs("div",{className:"flex-1 min-h-[120px] border-t border-border pt-3 flex flex-col",children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Message"}),o.jsx("textarea",{value:N.prompt,onChange:ce=>R(Se=>({...Se,prompt:ce.target.value})),placeholder:"The message that will be sent when this command is triggered...",className:"h-80 w-full px-3 py-2 bg-bg-tertiary border border-border rounded text-sm font-mono resize-y focus:outline-none focus:ring-1 focus:ring-accent-primary"})]}),o.jsxs("div",{className:"flex justify-end gap-2 pt-3 mt-3 border-t border-border flex-shrink-0",children:[o.jsx(tt,{variant:"secondary",onClick:De,children:"Cancel"}),o.jsx(tt,{variant:"primary",onClick:Le,disabled:E||!N.name||!N.prompt,children:E?"Saving...":"Save"})]})]})});const pe=ce=>ce.map(Se=>o.jsxs("div",{className:"flex items-center justify-between p-3 rounded border border-border bg-bg-tertiary",children:[o.jsx("div",{className:"min-w-0 flex-1 mr-3",children:o.jsx("div",{className:"flex items-center gap-2",children:o.jsx("span",{className:"text-text-primary text-sm font-medium",children:Se.name})})}),o.jsxs("div",{className:"flex items-center gap-1.5 flex-shrink-0",children:[o.jsx(Ws,{onClick:()=>oe(Se.id)}),o.jsx(hu,{onClick:()=>ae(Se.id)}),O(Se.id,"delete")?o.jsx(_p,{onConfirm:()=>je(Se.id),onCancel:W}):o.jsx(yp,{onClick:()=>G(Se.id)})]})]},Se.id));return o.jsxs(Ot,{isOpen:e,onClose:t,title:"Commands",size:"lg",children:[o.jsx(vp,{description:"Commands are pre-defined messages you can send with a single click.",onNew:se}),o.jsxs(bp,{loading:u,hasItems:s.length>0||a.length>0||l.length>0,loadingLabel:"Loading commands...",emptyLabel:"No commands created yet.",children:[s.length>0&&o.jsxs("div",{children:[o.jsx("h3",{className:"text-xs font-medium text-text-secondary mb-2 uppercase tracking-wide",children:"Built-in"}),o.jsx("div",{className:"space-y-2",children:s.map(ce=>o.jsxs("div",{className:"flex items-center justify-between p-3 rounded border border-border bg-bg-tertiary",children:[o.jsx("div",{className:"min-w-0 flex-1 mr-3",children:o.jsx("span",{className:"text-text-primary text-sm font-medium",children:ce.name})}),o.jsxs("div",{className:"flex items-center gap-1.5 flex-shrink-0",children:[o.jsx(uB,{onClick:()=>Z(ce.id)}),o.jsx(hu,{onClick:()=>ae(ce.id)})]})]},ce.id))})]}),a.length>0&&o.jsx(TS,{children:pe(a)}),l.length>0&&o.jsxs("div",{className:"mt-4",children:[o.jsx("h3",{className:"text-xs font-medium text-text-secondary mb-2 uppercase tracking-wide",children:"Project"}),o.jsx("div",{className:"space-y-2",children:pe(l)})]})]})]})}const vi=150,os=54,su=80,_r=30,Na=70,H0=100,bi=50,iu=50,U0=4,MC={step_result:"Result",metadata_all_match:"Metadata match",metadata_all_in:"Metadata in",always:"otherwise"},IC=[{value:"step_result",label:"Step result is..."},{value:"metadata_all_match",label:"Metadata all match (key=value)"},{value:"metadata_all_in",label:"Metadata all in list"},{value:"always",label:"Always (fallback)"}],dB=[{value:"agent",label:"Agent"},{value:"sub_agent",label:"Sub-Agent"},{value:"shell",label:"Shell"}];function lg(e,t){if(e.type==="agent"){const n=t.find(s=>s.id===e.agentId);return{name:(n==null?void 0:n.name)??(e.agentId||"Agent"),color:(n==null?void 0:n.color)||"#3b82f6"}}if(e.type==="sub_agent"){const n=t.find(s=>s.id===e.subAgentType);return{name:(n==null?void 0:n.name)??(e.subAgentType||"Sub-Agent"),color:(n==null?void 0:n.color)||"#a855f7"}}return{name:"Shell",color:"#22c55e"}}function hB(e,t,n,s){const a=iu+bi+vi+H0+vi+bi+iu,l=a/2,u=iu+bi+vi/2,c=iu+bi+vi+H0+vi/2,d=[],f=[],m=new Map,p=e.filter(V=>V.type==="agent"||V.type==="shell"),_=e.filter(V=>V.type==="sub_agent"),x=_.length>0,w=x?u:l,C=p.length>0?c:l,v=bi+_r/2;d.push({id:"$start",type:"terminal",label:"Start",cx:w,cy:v,w:su,h:_r}),m.set("$start",{cx:w,cy:v,w:su,h:_r});const S=V=>{d.push({id:"$done",type:"terminal",label:"Done",cx:w,cy:V,w:su,h:_r}),m.set("$done",{cx:w,cy:V,w:su,h:_r})};if(e.length===0){const V=v+_r/2+Na*2+_r/2;return S(V),{nodes:d,edges:f,width:a,height:V+_r/2+bi,posMap:m}}const b=v+_r/2+Na,y=(V,z)=>{V.forEach((X,te)=>{const H=b+te*(os+Na)+os/2,{name:I,color:$}=lg(X,s);d.push({id:X.id,type:"step",label:I,color:$,cx:z,cy:H,w:vi,h:os}),m.set(X.id,{cx:z,cy:H,w:vi,h:os})})};y(p,w),y(_,C);const E=p.length>0?b+(p.length-1)*(os+Na)+os/2:v,N=x?b+(_.length-1)*(os+Na)+os/2:v,T=Math.max(E,N)+os/2+Na+_r/2;S(T);const L=[];t&&m.has(t)&&L.push({from:"$start",to:t,label:n,edgeKey:"start",direction:"down",backEdgeIndex:0});let A=0;for(const V of e)V.transitions.forEach((z,X)=>{var P;if(!z.goto||!m.has(z.goto))return;const te=m.get(V.id),H=m.get(z.goto),I=z.when.type==="step_result"?`${z.when.result}`:z.when.type==="metadata_all_match"?`${z.when.key??"?"}=${z.when.value??"?"}`:z.when.type==="metadata_all_in"?`${z.when.key??"?"} in [${((P=z.when.values)==null?void 0:P.join(","))??"?"}]`:MC[z.when.type]??z.when.type,$=V.id===z.goto;let F;$?F="back":H.cy>te.cy+1?F="down":H.cy<te.cy-1?F="back":F="same",L.push({from:V.id,to:z.goto,label:I,edgeKey:`${V.id}:${X}`,direction:F,backEdgeIndex:F==="back"?A++:0})});const R=new Map,M=new Map,G=new Map,W=new Map;for(const V of L)V.direction==="down"&&(R.set(V.from,(R.get(V.from)??0)+1),M.set(V.to,(M.get(V.to)??0)+1));const O=new Map,U=new Map;for(const V of L){if(V.direction!=="same")continue;const z=[V.from,V.to].sort().join("|");O.set(z,(O.get(z)??0)+1)}for(const V of L){if(V.direction==="back"||V.direction==="same"){let F=0;if(V.direction==="same"){const P=[V.from,V.to].sort().join("|");F=U.get(P)??0,U.set(P,F+1)}f.push({...V,fromPort:0,toPort:0,sameEdgeIndex:F});continue}const z=R.get(V.from)??1,X=M.get(V.to)??1,te=G.get(V.from)??0,H=W.get(V.to)??0;G.set(V.from,te+1),W.set(V.to,H+1);const I=z===1?0:-.6+1.2*te/(z-1),$=X===1?0:-.6+1.2*H/(X-1);f.push({...V,fromPort:I,toPort:$,sameEdgeIndex:0})}return{nodes:d,edges:f,width:a,height:T+_r/2+bi,posMap:m}}function fB({steps:e,entryStep:t,selectedNodeId:n,selectedEdgeKey:s,startConditionLabel:a,agentTypes:l,isReadOnly:u,onSelectNode:c,onSelectEdge:d,onRemoveStep:f,onCreateTransition:m,onReconnectTo:p,onReconnectFrom:_,onDeleteTransition:x}){const w=D.useRef(null),C=D.useRef(!1),[v,S]=D.useState(null),[b,y]=D.useState(null),[E,N]=D.useState(null),{nodes:T,edges:L,width:A,height:R,posMap:M}=D.useMemo(()=>hB(e,t,a,l),[e,t,a,l]),G=D.useCallback(J=>{var ae;const re=w.current;if(!re)return{x:0,y:0};const Y=re.createSVGPoint();Y.x=J.clientX,Y.y=J.clientY;const q=(ae=re.getScreenCTM())==null?void 0:ae.inverse();if(!q)return{x:0,y:0};const Z=Y.matrixTransform(q);return{x:Z.x,y:Z.y}},[]),W=D.useCallback(J=>!J||!b||J==="$start"?!1:b.type==="reconnect-from"?J!=="$done":!0,[b]),O=D.useCallback((J,re)=>{if(u)return;J.stopPropagation(),J.preventDefault();const Y=G(J);y({type:"new",fromNodeId:re,mouseX:Y.x,mouseY:Y.y})},[G,u]),U=D.useCallback((J,re)=>{if(u)return;J.stopPropagation(),J.preventDefault();const Y=G(J);y({type:"reconnect-to",fromNodeId:re.from,edgeKey:re.edgeKey,mouseX:Y.x,mouseY:Y.y})},[G,u]),V=D.useCallback((J,re)=>{if(u)return;J.stopPropagation(),J.preventDefault();const Y=G(J);y({type:"reconnect-from",fromNodeId:re.from,fixedTargetId:re.to,edgeKey:re.edgeKey,mouseX:Y.x,mouseY:Y.y})},[G,u]),z=D.useCallback(J=>{if(!b)return;const re=G(J);y(Y=>Y?{...Y,mouseX:re.x,mouseY:re.y}:null)},[b,G]),X=D.useCallback(()=>{b&&(C.current=!0,E&&W(E)&&(b.type==="new"?m(b.fromNodeId,E):b.type==="reconnect-to"?p(b.edgeKey,E):b.type==="reconnect-from"&&_(b.edgeKey,E)),y(null),N(null))},[b,E,W,m,p,_]),te=D.useCallback(()=>{if(C.current){C.current=!1;return}c(null),d(null)},[c,d]);D.useEffect(()=>{if(u)return;const J=re=>{re.target instanceof HTMLInputElement||re.target instanceof HTMLTextAreaElement||re.target instanceof HTMLSelectElement||(re.key==="Delete"||re.key==="Backspace")&&s&&s!=="start"&&(re.preventDefault(),x(s),d(null))};return document.addEventListener("keydown",J),()=>document.removeEventListener("keydown",J)},[u,s,x,d]);const H=J=>{const re=M.get(J.from),Y=M.get(J.to);if(!re||!Y)return null;let q,Z,ae,se="middle",oe,je;if(J.direction==="down"){const Le=re.cx+J.fromPort*(re.w/2-10),De=re.cy+re.h/2,Re=Y.cx+J.toPort*(Y.w/2-10),Te=Y.cy-Y.h/2,Ae=Te-De,pe=Re-Le;q=`M ${Le} ${De} C ${Le} ${De+Ae*.4}, ${Re-pe*.2} ${Te-Ae*.1}, ${Re} ${Te}`,Z=Le+(Re-Le)*.5,ae=De+Ae*.6,oe={x:Le,y:De},je={x:Re,y:Te}}else if(J.direction==="back"){const Le=J.from===J.to,De=re.cx>=A/2,Re=J.backEdgeIndex*16,Te=De?A-20-Re:20+Re;if(Le){const Ae=re.cx>=A/2,pe=30+J.backEdgeIndex*14,ce=re.cy-re.h/2,Se=Ae?re.cx+re.w/2:re.cx-re.w/2,Ze=Ae?Se+pe:Se-pe,_t=re.cx+(Ae?re.w/4:-re.w/4),dt=ce-20-J.backEdgeIndex*10;q=`M ${Se} ${re.cy} C ${Ze} ${re.cy}, ${Ze} ${dt}, ${_t} ${ce}`,Z=Ze+10,ae=dt+4,se="middle",oe={x:Se,y:re.cy},je={x:_t,y:ce}}else{const Ae=De?re.cx+re.w/2:re.cx-re.w/2,pe=Y.cx+(De?Y.w/4:-Y.w/4),ce=Math.min(re.cy,Y.cy)-Y.h/2-18-J.backEdgeIndex*14;q=`M ${Ae} ${re.cy} L ${Te} ${re.cy} L ${Te} ${ce} L ${pe} ${ce} L ${pe} ${Y.cy-Y.h/2}`,Z=Te,ae=(re.cy+ce)/2,se=De?"start":"end",oe={x:Ae,y:re.cy},je={x:pe,y:Y.cy-Y.h/2}}}else{const Le=Y.cx>re.cx,De=J.sameEdgeIndex===0?-12:12,Re=Le?re.cx+re.w/2:re.cx-re.w/2,Te=Le?Y.cx-Y.w/2:Y.cx+Y.w/2,Ae=re.cy+De,pe=Y.cy+De,ce=(Re+Te)/2;q=`M ${Re} ${Ae} C ${ce} ${Ae}, ${ce} ${pe}, ${Te} ${pe}`,Z=ce,ae=(Ae+pe)/2-6,oe={x:Re,y:Ae},je={x:Te,y:pe}}return{path:q,labelX:Z,labelY:ae,labelAnchor:se,fromPt:oe,toPt:je}},I=(J,re)=>{const Y=H(J);if(!Y)return null;const{path:q,labelX:Z,labelY:ae,labelAnchor:se}=Y,oe=s===J.edgeKey,je=J.label&&J.label!=="otherwise";return o.jsxs("g",{children:[o.jsx("path",{d:q,fill:"none",stroke:"transparent",strokeWidth:14,className:"cursor-pointer",onClick:Le=>{Le.stopPropagation(),u||d(oe?null:J.edgeKey)}}),o.jsx("path",{d:q,fill:"none",stroke:oe?"#58a6ff":"#484f58",strokeWidth:oe?2.2:1.2,markerEnd:oe?"url(#arrow-selected)":"url(#arrow)",pointerEvents:"none"}),je&&o.jsx("text",{x:Z+(se==="start"?5:se==="end"?-5:0),y:ae+3,textAnchor:se,className:"text-[8px]",fill:oe?"#79c0ff":"#8b949e",style:{paintOrder:"stroke",stroke:"#0d1117",strokeWidth:3,strokeLinejoin:"round"},pointerEvents:"none",children:J.label})]},re)},$=()=>{if(!s||b)return null;const J=L.find(ae=>ae.edgeKey===s);if(!J)return null;const re=H(J);if(!re)return null;const{fromPt:Y,toPt:q}=re,Z=6;return o.jsxs(o.Fragment,{children:[J.edgeKey!=="start"&&o.jsx("circle",{cx:Y.x,cy:Y.y,r:Z,fill:"#58a6ff",fillOpacity:.25,stroke:"#58a6ff",strokeWidth:2,strokeOpacity:.8,className:"cursor-grab",onMouseDown:ae=>V(ae,J)}),o.jsx("circle",{cx:q.x,cy:q.y,r:Z,fill:"#58a6ff",fillOpacity:.25,stroke:"#58a6ff",strokeWidth:2,strokeOpacity:.8,className:"cursor-grab",onMouseDown:ae=>U(ae,J)})]})},F=()=>{if(!b)return null;let J,re,Y,q;if(b.type==="reconnect-from"){const se=M.get(b.fixedTargetId);if(!se)return null;J=b.mouseX,re=b.mouseY,Y=se.cx,q=se.cy-se.h/2}else{const se=M.get(b.fromNodeId);if(!se)return null;J=se.cx,re=se.cy+se.h/2,Y=b.mouseX,q=b.mouseY}const Z=q-re,ae=Math.abs(Z)>10?`M ${J} ${re} C ${J} ${re+Z*.4}, ${Y} ${q-Z*.4}, ${Y} ${q}`:`M ${J} ${re} L ${Y} ${q}`;return o.jsx("path",{d:ae,fill:"none",stroke:"#58a6ff",strokeWidth:2,strokeDasharray:"6 3",strokeOpacity:.7,pointerEvents:"none"})},P=J=>{const re=J.cy+J.h/2,Y=(b==null?void 0:b.fromNodeId)===J.id;return o.jsx("circle",{cx:J.cx,cy:re,r:U0,fill:Y?"#58a6ff":"#1c2128",stroke:Y?"#58a6ff":"#484f58",strokeWidth:1.5,strokeOpacity:Y?1:.5,className:"cursor-crosshair",onMouseDown:q=>O(q,J.id)})},ee=J=>{const re=J.cy-J.h/2,Y=b&&E===J.id&&W(J.id);return o.jsx("circle",{cx:J.cx,cy:re,r:U0,fill:Y?"#3fb950":"#1c2128",stroke:Y?"#3fb950":"#484f58",strokeWidth:1.5,strokeOpacity:Y?1:.5})};return o.jsxs("svg",{ref:w,viewBox:`0 0 ${A} ${R}`,className:"block w-full",preserveAspectRatio:"xMidYMin meet",onMouseMove:z,onMouseUp:X,onClick:te,children:[o.jsxs("defs",{children:[o.jsx("marker",{id:"arrow",viewBox:"0 0 10 7",refX:"10",refY:"3.5",markerWidth:"7",markerHeight:"5",orient:"auto",children:o.jsx("polygon",{points:"0 0, 10 3.5, 0 7",fill:"#484f58"})}),o.jsx("marker",{id:"arrow-selected",viewBox:"0 0 10 7",refX:"10",refY:"3.5",markerWidth:"7",markerHeight:"5",orient:"auto",children:o.jsx("polygon",{points:"0 0, 10 3.5, 0 7",fill:"#58a6ff"})})]}),L.map((J,re)=>I(J,re)),T.map(J=>{const re=n===J.id,Y=J.cx-J.w/2,q=J.cy-J.h/2,Z=v===J.id,ae=b&&E===J.id&&W(J.id);if(J.type==="terminal"){const oe=J.id==="$start",je=oe?"#58a6ff":"#3fb950",Le=oe,De=!oe;return o.jsxs("g",{onClick:Re=>{Re.stopPropagation(),oe&&!u&&d("start")},className:oe&&!u?"cursor-pointer":void 0,children:[ae&&o.jsx("rect",{x:Y-3,y:q-3,width:J.w+6,height:J.h+6,rx:J.h/2+3,fill:"none",stroke:"#3fb950",strokeOpacity:.6,strokeWidth:2}),oe&&s==="start"&&o.jsx("rect",{x:Y-3,y:q-3,width:J.w+6,height:J.h+6,rx:J.h/2+3,fill:"none",stroke:"#58a6ff",strokeOpacity:.5,strokeWidth:2}),o.jsx("rect",{x:Y,y:q,width:J.w,height:J.h,rx:J.h/2,fill:je,fillOpacity:.08,stroke:je,strokeOpacity:.4,strokeWidth:1.5}),o.jsx("text",{x:J.cx,y:J.cy+4,textAnchor:"middle",fill:je,className:"text-[10px] font-medium",pointerEvents:"none",children:J.label}),Le&&P(J),De&&ee(J)]},J.id)}const se=J.color??"#6b7280";return o.jsxs("g",{onClick:oe=>{oe.stopPropagation(),u||c(re?null:J.id)},onMouseEnter:()=>S(J.id),onMouseLeave:()=>S(null),className:u?void 0:"cursor-pointer",children:[ae&&o.jsx("rect",{x:Y-3,y:q-3,width:J.w+6,height:J.h+6,rx:12,fill:"none",stroke:"#3fb950",strokeOpacity:.6,strokeWidth:2}),re&&o.jsx("rect",{x:Y-3,y:q-3,width:J.w+6,height:J.h+6,rx:12,fill:"none",stroke:"#58a6ff",strokeOpacity:.5,strokeWidth:2}),o.jsx("rect",{x:Y,y:q,width:J.w,height:J.h,rx:10,fill:se,fillOpacity:.08,stroke:se,strokeOpacity:.6,strokeWidth:re?2:1.5}),o.jsx("text",{x:J.cx,y:J.cy+4,textAnchor:"middle",fill:"#c9d1d9",className:"text-[11px] font-medium",pointerEvents:"none",children:J.label}),!u&&P(J),!u&&ee(J),Z&&!b&&!u&&o.jsxs("g",{onClick:oe=>{oe.stopPropagation(),f(J.id)},className:"cursor-pointer",children:[o.jsx("circle",{cx:Y+J.w-2,cy:q+2,r:8,fill:"#0d1117",fillOpacity:.9,stroke:"#f85149",strokeOpacity:.5,strokeWidth:1}),o.jsx("line",{x1:Y+J.w-5,y1:q-1,x2:Y+J.w+1,y2:q+5,stroke:"#f85149",strokeWidth:1.5,strokeLinecap:"round"}),o.jsx("line",{x1:Y+J.w+1,y1:q-1,x2:Y+J.w-5,y2:q+5,stroke:"#f85149",strokeWidth:1.5,strokeLinecap:"round"})]})]},J.id)}),b&&T.map(J=>W(J.id)?o.jsx("rect",{x:J.cx-J.w/2-8,y:J.cy-J.h/2-8,width:J.w+16,height:J.h+16,fill:"transparent",rx:12,onMouseEnter:()=>N(J.id),onMouseLeave:()=>N(null),onMouseUp:re=>{re.stopPropagation(),X()}},`drop-${J.id}`):null),F(),$()]})}function mB({name:e,id:t,color:n,description:s,isBuiltIn:a,actions:l}){return o.jsxs("div",{className:"flex items-center justify-between bg-bg-secondary rounded-lg p-4 border border-border",children:[o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"w-2.5 h-2.5 rounded-full flex-shrink-0",style:{backgroundColor:n}}),o.jsx("span",{className:"text-text-primary text-sm font-medium",children:e}),o.jsx("span",{className:"text-text-muted text-xs font-mono",children:t}),a&&o.jsx("span",{className:"px-1.5 py-0.5 rounded text-[10px] font-medium bg-bg-primary text-text-muted",children:"Built-in"})]}),s&&o.jsx("p",{className:"text-text-secondary text-xs mt-0.5 truncate",children:s})]}),o.jsx("div",{className:"flex items-center gap-1 flex-shrink-0 ml-3",children:l})]})}function F0({title:e,items:t,renderActions:n}){return t.length===0?null:o.jsxs("div",{children:[o.jsx("h3",{className:"text-xs font-medium text-text-secondary mb-2 uppercase tracking-wide",children:e}),o.jsx("div",{className:"space-y-2",children:t.map(s=>o.jsx(mB,{name:s.name,id:s.id,color:s.color??"#3b82f6",description:s.description,actions:n(s)},s.id))})]})}const Ta="w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm focus:outline-none focus:ring-1 focus:ring-accent-primary",ym="w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm focus:outline-none focus:ring-1 focus:ring-accent-primary",ls="block text-[11px] text-text-secondary mb-0.5";function vm({variables:e,onInsert:t}){return e.length===0?null:o.jsx("div",{className:"flex flex-wrap gap-1 mt-1",children:e.map(n=>o.jsx("button",{type:"button",onClick:()=>t(n.name),title:n.description,className:"px-1.5 py-0.5 rounded text-[10px] font-mono bg-bg-primary border border-border text-text-secondary hover:text-accent-primary hover:border-accent-primary/40 transition-colors",children:`{{${n.name}}}`},n.name))})}function pB({step:e,isEntry:t,agentTypes:n,transitionCount:s,templateVariables:a,onUpdate:l,onRemove:u,onSetEntry:c}){const{color:d,name:f}=lg(e,n);return o.jsxs("div",{className:"space-y-3 text-sm",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"px-1.5 py-0.5 rounded text-[10px] font-semibold",style:{backgroundColor:d+"20",color:d},children:f}),t&&o.jsx("span",{className:"px-1.5 py-0.5 rounded text-[10px] font-semibold bg-accent-primary/15 text-accent-primary",children:"Entry"})]}),o.jsxs("div",{className:"flex items-center gap-1",children:[!t&&o.jsx("button",{onClick:c,className:"p-1 rounded text-text-muted hover:text-accent-primary text-xs",children:"Set entry"}),o.jsx("button",{onClick:u,className:"p-1 rounded text-text-muted hover:text-accent-error text-xs",children:"Delete"})]})]}),o.jsxs("div",{children:[o.jsx("label",{className:ls,children:"Type"}),o.jsx("select",{value:e.type,onChange:m=>{const p=m.target.value,_=p==="sub_agent"?"verification":"build";if(p==="agent"){const x=n.find(w=>!w.subagent);l({...e,type:p,phase:_,agentId:(x==null?void 0:x.id)??"builder",name:(x==null?void 0:x.name)??"Agent"})}else if(p==="sub_agent"){const x=n.find(w=>w.subagent);l({...e,type:p,phase:_,subAgentType:(x==null?void 0:x.id)??"",name:(x==null?void 0:x.name)??"Sub-Agent"})}else l({...e,type:p,phase:_,name:"Shell"})},className:ym,children:dB.map(m=>o.jsx("option",{value:m.value,children:m.label},m.value))})]}),e.type==="agent"&&o.jsxs("div",{children:[o.jsx("label",{className:ls,children:"Agent Type"}),o.jsx("select",{value:e.agentId??"builder",onChange:m=>{const p=n.find(_=>_.id===m.target.value);l({...e,agentId:m.target.value,name:(p==null?void 0:p.name)??m.target.value})},className:ym,children:n.filter(m=>!m.subagent).map(m=>o.jsx("option",{value:m.id,children:m.name},m.id))})]}),e.type==="sub_agent"&&o.jsxs("div",{children:[o.jsx("label",{className:ls,children:"Sub-Agent Type"}),o.jsxs("select",{value:e.subAgentType??"",onChange:m=>{const p=n.find(_=>_.id===m.target.value);l({...e,subAgentType:m.target.value,name:(p==null?void 0:p.name)??m.target.value})},className:ym,children:[o.jsx("option",{value:"",children:"— select —"}),n.filter(m=>m.subagent).map(m=>o.jsx("option",{value:m.id,children:m.name},m.id))]})]}),(e.type==="agent"||e.type==="sub_agent")&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{children:[o.jsx("label",{className:ls,children:"Prompt"}),o.jsx("textarea",{value:e.prompt??"",onChange:m=>l({...e,prompt:m.target.value||void 0}),rows:6,className:`${Ta} resize-y text-xs`,placeholder:"Injected on first entry..."}),o.jsx(vm,{variables:a,onInsert:m=>l({...e,prompt:(e.prompt??"")+`{{${m}}}`})})]}),o.jsxs("div",{children:[o.jsx("label",{className:ls,children:"Nudge Prompt"}),o.jsx("textarea",{value:e.nudgePrompt??"",onChange:m=>l({...e,nudgePrompt:m.target.value||void 0}),rows:6,className:`${Ta} resize-y text-xs`,placeholder:"Injected on re-entry..."}),o.jsx(vm,{variables:a,onInsert:m=>l({...e,nudgePrompt:(e.nudgePrompt??"")+`{{${m}}}`})})]})]}),e.type==="shell"&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{children:[o.jsx("label",{className:ls,children:"Command"}),o.jsx("textarea",{value:e.command??"",onChange:m=>l({...e,command:m.target.value}),rows:3,className:`${Ta} font-mono text-xs resize-y`,placeholder:"cd {{workdir}} && npm run lint"}),o.jsx(vm,{variables:a,onInsert:m=>l({...e,command:(e.command??"")+`{{${m}}}`})})]}),o.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[o.jsxs("div",{children:[o.jsx("label",{className:ls,children:"Timeout (ms)"}),o.jsx("input",{type:"number",value:e.timeout??6e4,onChange:m=>l({...e,timeout:Number(m.target.value)}),className:`${Ta} font-mono text-xs`})]}),o.jsxs("div",{children:[o.jsx("label",{className:ls,children:"Success Codes"}),o.jsx("input",{value:(e.successExitCodes??[0]).join(", "),onChange:m=>l({...e,successExitCodes:m.target.value.split(",").map(p=>Number(p.trim())).filter(p=>!isNaN(p))}),className:`${Ta} font-mono text-xs`})]})]})]}),o.jsxs("div",{children:[o.jsx("label",{className:ls,children:"Sub-group"}),o.jsx("input",{value:e.subGroup??"",onChange:m=>l({...e,subGroup:m.target.value||void 0}),placeholder:"e.g. build, verify, review",className:Ta})]}),o.jsx("div",{className:"pt-1 border-t border-border/50",children:o.jsxs("p",{className:"text-text-muted text-[10px]",children:[s," outgoing transition",s!==1?"s":""," — drag from the bottom port to connect."]})})]})}const Aa="w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm focus:outline-none focus:ring-1 focus:ring-accent-primary",V0="w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm focus:outline-none focus:ring-1 focus:ring-accent-primary",Si="block text-[11px] text-text-secondary mb-0.5";function gB({fromLabel:e,toLabel:t,condition:n,subGroup:s,fromStep:a,agentTypes:l,transitionIndex:u,totalTransitions:c,onUpdateCondition:d,onUpdateSubGroup:f,onDelete:m,onMoveUp:p,onMoveDown:_}){var C;const x=a&&(a.type==="sub_agent"||a.type==="agent")?l.find(v=>v.id===(a.type==="sub_agent"?a.subAgentType:a.agentId)):void 0,w=(x==null?void 0:x.results)&&x.results.length>0;return o.jsxs("div",{className:"space-y-3 text-sm",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsxs("div",{className:"flex items-center gap-1.5",children:[o.jsxs("span",{className:"px-1.5 py-0.5 rounded text-[10px] font-semibold bg-blue-500/15 text-blue-300",children:["#",u+1]}),c>1&&o.jsxs("div",{className:"flex items-center gap-0.5",children:[o.jsx("button",{onClick:p,disabled:u===0,className:"p-0.5 rounded text-text-muted hover:text-text-primary disabled:opacity-20 disabled:cursor-not-allowed",title:"Move up (higher priority)",children:o.jsx(dr,{className:"w-3 h-3",rotate:180})}),o.jsx("button",{onClick:_,disabled:u===c-1,className:"p-0.5 rounded text-text-muted hover:text-text-primary disabled:opacity-20 disabled:cursor-not-allowed",title:"Move down (lower priority)",children:o.jsx(dr,{className:"w-3 h-3"})})]})]}),o.jsx("button",{onClick:m,className:"p-1 rounded text-text-muted hover:text-accent-error text-xs",children:"Delete"})]}),o.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-text-secondary",children:[o.jsx("span",{className:"font-medium text-text-primary",children:e}),o.jsx(up,{}),o.jsx("span",{className:"font-medium text-text-primary",children:t})]}),o.jsxs("div",{children:[o.jsx("label",{className:Si,children:"Condition"}),o.jsx("select",{value:n.type,onChange:v=>{d(v.target.value==="step_result"?{type:"step_result",result:"success"}:{type:v.target.value})},className:V0,children:IC.map(v=>o.jsx("option",{value:v.value,children:v.label},v.value))})]}),n.type==="step_result"&&o.jsxs("div",{children:[o.jsx("label",{className:Si,children:"Result"}),w?o.jsx("select",{value:n.result??x.results[0],onChange:v=>{d({type:"step_result",result:v.target.value})},className:V0,children:x.results.map(v=>o.jsx("option",{value:v,children:v},v))}):o.jsx("input",{type:"text",value:n.result??"success",onChange:v=>d({type:"step_result",result:v.target.value}),placeholder:"e.g. success, passed, failed",className:Aa})]}),(n.type==="metadata_all_match"||n.type==="metadata_all_in")&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{children:[o.jsx("label",{className:Si,children:"Metadata Key"}),o.jsx("input",{type:"text",value:n.key??"",onChange:v=>d({...n,key:v.target.value}),placeholder:"e.g. criteria, todos, review_findings",className:Aa})]}),o.jsxs("div",{children:[o.jsx("label",{className:Si,children:"Field"}),o.jsx("input",{type:"text",value:n.field??"",onChange:v=>d({...n,field:v.target.value}),placeholder:"e.g. status",className:Aa})]}),n.type==="metadata_all_match"?o.jsxs("div",{children:[o.jsx("label",{className:Si,children:"Value"}),o.jsx("input",{type:"text",value:n.value??"",onChange:v=>d({...n,value:v.target.value}),placeholder:"e.g. passed, resolved",className:Aa})]}):o.jsxs("div",{children:[o.jsx("label",{className:Si,children:"Values (comma-separated)"}),o.jsx("input",{type:"text",value:((C=n.values)==null?void 0:C.join(", "))??"",onChange:v=>d({...n,values:v.target.value.split(",").map(S=>S.trim()).filter(Boolean)}),placeholder:"e.g. resolved, dismissed",className:Aa})]})]}),o.jsxs("div",{children:[o.jsx("label",{className:Si,children:"Sub-group"}),o.jsx("input",{type:"text",value:s??"",onChange:v=>f(v.target.value||void 0),placeholder:"e.g. build, verify",className:Aa})]}),o.jsx("p",{className:"text-text-muted text-[10px]",children:"Drag handles to reconnect. Order determines evaluation priority. Press Delete to remove."})]})}function xB(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function _B(e){let t=1;for(;e.some(n=>n.id===`s${t}`);)t++;return`s${t}`}const cs="w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm focus:outline-none focus:ring-1 focus:ring-accent-primary",G0="w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-sm focus:outline-none focus:ring-1 focus:ring-accent-primary",yr="block text-[11px] text-text-secondary mb-0.5",W0=[];function PC({isOpen:e,onClose:t,initialEditId:n}){var zi,ps;const s=jt(ye=>ye.defaults),a=jt(ye=>ye.userItems),l=jt(ye=>ye.loading),u=jt(ye=>ye.templateVariables),c=jt(ye=>ye.fetchWorkflows),d=jt(ye=>ye.fetchWorkflow),f=jt(ye=>ye.fetchDefaultContent),m=jt(ye=>ye.fetchTemplateVariables),p=jt(ye=>ye.createWorkflow),_=jt(ye=>ye.updateWorkflow),x=jt(ye=>ye.deleteWorkflow),{requestDelete:w,clearConfirm:C,isConfirming:v}=Hu(),[S,b]=D.useState("list"),[y,E]=D.useState(null),[N,T]=D.useState(!1),[L,A]=D.useState(null),[R,M]=D.useState(null),[G,W]=D.useState(""),[O,U]=D.useState(""),[V,z]=D.useState(""),[X,te]=D.useState("1.0.0"),[H,I]=D.useState("#3b82f6"),[$,F]=D.useState(""),[P,ee]=D.useState(50),[J,re]=D.useState(W0),[Y,q]=D.useState({type:"always"}),[Z,ae]=D.useState(""),[se,oe]=D.useState(!1),je=gt(ye=>ye.defaults),Le=gt(ye=>ye.userItems),De=gt(ye=>ye.projectItems),Re=D.useMemo(()=>[...je,...Le,...De],[je,Le,De]),Te=gt(ye=>ye.fetchAgents),[Ae]=D.useState(null);D.useEffect(()=>{e&&(c(),m(),Te(),A(null),M(null),n?s.some(_e=>_e.id===n)?f(n).then(_e=>{_e&&pe({..._e,metadata:{..._e.metadata,name:_e.metadata.name+" (copy)",id:`${n}-copy-${Date.now()}`}},{editingId:null,isReadOnly:!1})}):d(n).then(_e=>{_e&&pe(_e,{editingId:n,isReadOnly:!1})}):(b("list"),E(null),T(!1)))},[e,c,d,f,m,n]);const pe=(ye,_e)=>{W(ye.metadata.name),U(ye.metadata.id),z(ye.metadata.description),te(ye.metadata.version),I(ye.metadata.color??"#3b82f6"),F(ye.entryStep),ee(ye.settings.maxIterations),re(ye.steps),q(ye.startCondition??{type:"always"}),ae(""),(_e==null?void 0:_e.editingId)!==void 0&&E(_e.editingId),(_e==null?void 0:_e.isReadOnly)!==void 0&&T(_e.isReadOnly),(_e==null?void 0:_e.selectedNodeKey)!==void 0&&A(null),(_e==null?void 0:_e.selectedEdgeKey)!==void 0&&M(null),b("edit")},ce=async ye=>{const _e=await d(ye);_e&&pe(_e,{editingId:ye,isReadOnly:!1,selectedNodeKey:null,selectedEdgeKey:null})},Se=async()=>{var et;const ye=y??O;if(!ye||!G)return ae("Name is required."),!1;if(J.length===0)return ae("Add at least one step."),!1;let _e=$;if(!_e||!J.some(We=>We.id===_e)){if(_e=((et=J.find(We=>We.id))==null?void 0:et.id)??"",!_e)return ae("All steps need an ID."),!1;F(_e)}oe(!0),ae("");const Oe={metadata:{id:ye,name:G,description:V,version:X||"1.0.0",color:H},entryStep:_e,settings:{maxIterations:P},steps:J,startCondition:Y},$e=y?await _(y,Oe):await p(Oe);return oe(!1),$e.success?(y||E(ye),!0):(ae($e.error??"Failed to save."),!1)},Ze=async()=>{await Se()},_t=async()=>{await Se()&&(n?t():b("list"))},dt=()=>{n?t():b("list")},tn=ye=>{W(ye),y||U(xB(ye))},ge=async ye=>s.some(Oe=>Oe.id===ye)?await f(ye):await d(ye),Ce=async ye=>{const _e=await ge(ye);_e&&pe(_e,{editingId:ye,isReadOnly:!0})},Ie=async ye=>{const _e=await ge(ye);_e&&pe({..._e,metadata:{..._e.metadata,name:_e.metadata.name+" (copy)",id:`${ye}-copy-${Date.now()}`}},{editingId:null,isReadOnly:!1})},Fe=()=>{E(null),W(""),U(""),z(""),te("1.0.0"),I("#3b82f6"),F(""),ee(50),re(structuredClone(W0)),q({type:"always"}),ae(""),A(null),M(null),T(!1),b("edit")},Ve=async ye=>{await x(ye),C()},St=D.useCallback(ye=>{A(ye),M(null)},[]),Ye=D.useCallback(ye=>{M(ye),A(null)},[]),wt=L!==null?Number(L):-1,ct=wt>=0?J[wt]??null:null,nn=D.useCallback(ye=>{re(_e=>_e.map((Oe,$e)=>$e===wt?ye:Oe))},[wt]),ht=Y.type==="step_result"?`${Y.result}`:Y.type==="metadata_all_match"?`${Y.key??"?"}=${Y.value??"?"}`:Y.type==="metadata_all_in"?`${Y.key??"?"} in [${((zi=Y.values)==null?void 0:zi.join(","))??"?"}]`:MC[Y.type]??Y.type,jn=()=>{const ye=J.length,_e=_B(J),Oe=Re.find($e=>!$e.subagent);re([...J,{id:_e,name:(Oe==null?void 0:Oe.name)??"Agent",type:"agent",phase:"build",agentId:(Oe==null?void 0:Oe.id)??"builder",transitions:[]}]),$||F(_e),St(String(ye))},_n=D.useCallback((ye,_e)=>{ye==="$start"?(F(_e),Ye("start")):re(Oe=>{const $e=Oe.find(We=>We.id===ye),et=$e?$e.transitions.length:0;return Ye(`${ye}:${et}`),Oe.map(We=>We.id===ye?{...We,transitions:[...We.transitions,{when:{type:"always"},goto:_e}]}:We)})},[Ye]),ot=ye=>{if(ye==="start")return null;const _e=ye.lastIndexOf(":"),Oe=ye.slice(0,_e),$e=parseInt(ye.slice(_e+1));return{stepId:Oe,transIdx:$e}},fr=D.useCallback((ye,_e)=>{const Oe=ot(ye);Oe&&re($e=>$e.map(et=>et.id===Oe.stepId?{...et,transitions:et.transitions.map((We,ft)=>ft===Oe.transIdx?_e(We):We)}:et))},[]),Ii=D.useCallback((ye,_e)=>{if(ye==="start"){F(_e);return}fr(ye,Oe=>({...Oe,goto:_e}))},[fr]),Pi=D.useCallback((ye,_e)=>{const Oe=ot(ye);Oe&&(re($e=>{const et=$e.find(ft=>ft.id===Oe.stepId);if(!et)return $e;const We=et.transitions[Oe.transIdx];return We?$e.map(ft=>ft.id===Oe.stepId?{...ft,transitions:ft.transitions.filter((fn,Pt)=>Pt!==Oe.transIdx)}:ft.id===_e?{...ft,transitions:[...ft.transitions,We]}:ft):$e}),M(null))},[]),kr=D.useCallback(ye=>{if(ye==="start"){F(""),M(null);return}const _e=ot(ye);_e&&(re(Oe=>Oe.map($e=>$e.id===_e.stepId?{...$e,transitions:$e.transitions.filter((et,We)=>We!==_e.transIdx)}:$e)),M(null))},[]),Bi=D.useCallback((ye,_e)=>{if(ye==="start"){q(_e);return}fr(ye,Oe=>({...Oe,when:_e}))},[fr]),Js=D.useCallback((ye,_e)=>{ye!=="start"&&fr(ye,Oe=>({...Oe,subGroup:_e||void 0}))},[fr]),Ka=ye=>lg(ye,Re).name,jl=()=>{if(!R)return null;if(R==="start"){const fn=J.find(Pt=>Pt.id===$);return{type:"start",fromLabel:"Start",toLabel:fn?Ka(fn):"(none)",condition:Y}}const ye=R.lastIndexOf(":"),_e=R.slice(0,ye),Oe=parseInt(R.slice(ye+1)),$e=J.find(fn=>fn.id===_e);if(!$e)return null;const et=$e.transitions[Oe];if(!et)return null;const We=J.find(fn=>fn.id===et.goto),ft=et.goto==="$done"?"Done":We?Ka(We):et.goto;return{type:"step",fromLabel:Ka($e),toLabel:ft,condition:et.when,subGroup:et.subGroup}};if(S==="edit"){const ye=jl();return o.jsxs(Ot,{isOpen:e,onClose:dt,title:N?G:y?"Edit Workflow":"New Workflow",size:"full",children:[Z&&o.jsx("div",{className:"text-accent-error text-sm px-3 py-2 bg-accent-error/10 rounded mb-3",children:Z}),o.jsxs("div",{className:"flex items-end gap-3 mb-3 pb-3 border-b border-border flex-wrap",children:[o.jsxs("div",{className:"min-w-[140px]",children:[o.jsx("label",{className:yr,children:"Name"}),o.jsx("input",{value:G,onChange:_e=>tn(_e.target.value),placeholder:"Workflow name",className:`${cs} ${N?"opacity-50":""}`,readOnly:N})]}),o.jsxs("div",{className:"min-w-[100px]",children:[o.jsx("label",{className:yr,children:"ID"}),o.jsx("input",{value:O,readOnly:!0,className:`${cs} font-mono opacity-50`})]}),o.jsxs("div",{className:"flex-1 min-w-[140px]",children:[o.jsx("label",{className:yr,children:"Description"}),o.jsx("input",{value:V,onChange:_e=>!N&&z(_e.target.value),readOnly:N,placeholder:"What does this workflow do?",className:`${cs} ${N?"opacity-50":""}`})]}),o.jsxs("div",{className:"w-20",children:[o.jsx("label",{className:yr,children:"Max Iter."}),o.jsx("input",{type:"number",value:P,onChange:_e=>!N&&ee(Number(_e.target.value)),readOnly:N,className:`${cs} font-mono ${N?"opacity-50":""}`})]}),o.jsxs("div",{children:[o.jsx("label",{className:yr,children:"Color"}),o.jsx("input",{type:"color",value:H,onChange:_e=>!N&&I(_e.target.value),disabled:N,className:`w-8 h-8 rounded border border-border bg-transparent ${N?"opacity-50":"cursor-pointer"}`})]})]}),o.jsxs("div",{className:"flex gap-3",style:{height:"calc(90vh - 220px)",minHeight:300},children:[o.jsxs("div",{className:"flex-1 min-w-0 bg-bg-primary/50 border border-border rounded-lg flex flex-col overflow-hidden",children:[o.jsxs("div",{className:"flex items-center justify-between px-3 py-1.5 border-b border-border/50 shrink-0",children:[o.jsx("span",{className:"text-[10px] text-text-muted uppercase tracking-wider font-medium",children:"Flow"}),!N&&o.jsx("button",{onClick:jn,className:"text-[11px] text-accent-primary hover:text-accent-primary/80",children:"+ Add Step"})]}),o.jsxs("div",{className:"flex-1 min-h-0 p-2 overflow-auto",children:[o.jsx(fB,{steps:J,entryStep:$,selectedNodeId:(ct==null?void 0:ct.id)??null,selectedEdgeKey:R,startConditionLabel:ht,agentTypes:Re,isReadOnly:N,onSelectNode:_e=>{if(_e===null){St(null);return}const Oe=J.findIndex($e=>$e.id===_e);St(Oe>=0?String(Oe):null)},onSelectEdge:Ye,onRemoveStep:_e=>{var $e;const Oe=J.findIndex(et=>et.id===_e);if(re(et=>et.filter(We=>We.id!==_e)),wt===Oe&&St(null),$===_e){const et=J.filter(We=>We.id!==_e);F((($e=et[0])==null?void 0:$e.id)??"")}},onCreateTransition:_n,onReconnectTo:Ii,onReconnectFrom:Pi,onDeleteTransition:kr}),J.length===0&&o.jsxs("div",{className:"flex flex-col items-center justify-center py-8 text-text-muted",children:[o.jsx("p",{className:"text-xs mb-2",children:"No steps yet"}),o.jsx("button",{onClick:jn,className:"px-3 py-1.5 rounded bg-accent-primary/10 text-accent-primary text-xs hover:bg-accent-primary/20",children:"+ Add your first step"})]})]})]}),o.jsxs("div",{className:"w-[300px] shrink-0 border border-border rounded-lg bg-bg-secondary flex flex-col overflow-hidden",children:[o.jsx("div",{className:"px-3 py-1.5 border-b border-border shrink-0",children:o.jsx("span",{className:"text-[10px] text-text-muted uppercase tracking-wider font-medium",children:"Properties"})}),o.jsx("div",{className:"p-3 overflow-y-auto flex-1 min-h-0",children:N&&(ye||ct)?o.jsx("p",{className:"text-text-muted text-xs text-center py-8",children:'View only — click "Duplicate & Customize" to edit.'}):ye?ye.type==="start"?o.jsxs("div",{className:"space-y-3 text-sm",children:[o.jsx("div",{className:"flex items-center gap-2",children:o.jsx("span",{className:"px-1.5 py-0.5 rounded text-[10px] font-semibold bg-blue-500/20 text-blue-300",children:"Start"})}),$&&o.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-text-secondary",children:[o.jsx("span",{className:"text-text-primary font-medium",children:"Start"}),o.jsx(up,{}),o.jsx("span",{className:"text-text-primary font-medium",children:ye.toLabel})]}),o.jsxs("div",{children:[o.jsx("label",{className:yr,children:"Activation Condition"}),o.jsx("select",{value:Y.type,onChange:_e=>q(_e.target.value==="step_result"?{type:"step_result",result:"success"}:_e.target.value==="metadata_all_match"?{type:"metadata_all_match",key:"",field:"",value:""}:_e.target.value==="metadata_all_in"?{type:"metadata_all_in",key:"",field:"",values:[]}:{type:_e.target.value}),className:G0,children:IC.map(_e=>o.jsx("option",{value:_e.value,children:_e.label},_e.value))})]}),Y.type==="step_result"&&o.jsxs("div",{children:[o.jsx("label",{className:yr,children:"Result"}),$&&(()=>{const _e=J.find(We=>We.id===$),Oe=_e&&(_e.type==="sub_agent"||_e.type==="agent")?Re.find(We=>We.id===(_e.type==="sub_agent"?_e.subAgentType:_e.agentId)):void 0,$e=(Oe==null?void 0:Oe.results)&&Oe.results.length>0,et=(Oe==null?void 0:Oe.results)??[];return $e?o.jsx("select",{value:Y.result??et[0],onChange:We=>q({type:"step_result",result:We.target.value}),className:G0,children:et.map(We=>o.jsx("option",{value:We,children:We},We))}):o.jsx("input",{type:"text",value:Y.result??"success",onChange:We=>q({type:"step_result",result:We.target.value}),placeholder:"e.g. success, passed, failed",className:cs})})()]}),(Y.type==="metadata_all_match"||Y.type==="metadata_all_in")&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{children:[o.jsx("label",{className:yr,children:"Metadata Key"}),o.jsx("input",{type:"text",value:Y.key??"",onChange:_e=>q({...Y,key:_e.target.value}),placeholder:"e.g. criteria, todos, review_findings",className:cs})]}),o.jsxs("div",{children:[o.jsx("label",{className:yr,children:"Field"}),o.jsx("input",{type:"text",value:Y.field??"",onChange:_e=>q({...Y,field:_e.target.value}),placeholder:"e.g. status",className:cs})]}),Y.type==="metadata_all_match"?o.jsxs("div",{children:[o.jsx("label",{className:yr,children:"Value"}),o.jsx("input",{type:"text",value:Y.value??"",onChange:_e=>q({...Y,value:_e.target.value}),placeholder:"e.g. passed, resolved",className:cs})]}):o.jsxs("div",{children:[o.jsx("label",{className:yr,children:"Values (comma-separated)"}),o.jsx("input",{type:"text",value:((ps=Y.values)==null?void 0:ps.join(", "))??"",onChange:_e=>q({...Y,values:_e.target.value.split(",").map(Oe=>Oe.trim()).filter(Boolean)}),placeholder:"e.g. resolved, dismissed",className:cs})]})]}),o.jsx("p",{className:"text-text-muted text-[10px]",children:"Workflow only proceeds when this condition is met. Drag the target handle to change entry step."})]}):(()=>{const _e=ot(R),Oe=_e==null?void 0:_e.stepId,$e=(_e==null?void 0:_e.transIdx)??0,et=Oe?J.find(ft=>ft.id===Oe):void 0,We=(et==null?void 0:et.transitions.length)??0;return o.jsx(gB,{fromLabel:ye.fromLabel,toLabel:ye.toLabel,condition:ye.condition,subGroup:"subGroup"in ye?ye.subGroup:void 0,fromStep:ye.type==="step"?J.find(ft=>ft.id===ye.fromLabel):void 0,agentTypes:Re,transitionIndex:$e,totalTransitions:We,onUpdateCondition:ft=>Bi(R,ft),onUpdateSubGroup:ft=>Js(R,ft),onDelete:()=>kr(R),onMoveUp:()=>{re(ft=>{const fn=ft.find(yt=>yt.id===Oe);if(!fn||$e===0)return ft;const Pt=[...fn.transitions];return[Pt[$e-1],Pt[$e]]=[Pt[$e],Pt[$e-1]],ft.map(yt=>yt.id===Oe?{...yt,transitions:Pt}:yt)}),M(`${Oe}:${$e-1}`)},onMoveDown:()=>{re(ft=>{const fn=ft.find(yt=>yt.id===Oe);if(!fn||$e===fn.transitions.length-1)return ft;const Pt=[...fn.transitions];return[Pt[$e],Pt[$e+1]]=[Pt[$e+1],Pt[$e]],ft.map(yt=>yt.id===Oe?{...yt,transitions:Pt}:yt)}),M(`${Oe}:${$e+1}`)}})})():ct?o.jsx(pB,{step:ct,isEntry:ct.id===$,agentTypes:Re,transitionCount:ct.transitions.length,templateVariables:u,onUpdate:nn,onRemove:()=>{var _e;if(ct&&(re(J.filter((Oe,$e)=>$e!==wt)),St(null),$===ct.id)){const Oe=J.filter(($e,et)=>et!==wt);F(((_e=Oe[0])==null?void 0:_e.id)??"")}},onSetEntry:()=>F(ct.id)}):o.jsxs("p",{className:"text-text-muted text-xs text-center py-8",children:["Click a node or edge to edit.",o.jsx("br",{}),"Drag from a port to connect."]})})]})]}),o.jsxs("div",{className:"flex justify-end gap-2 pt-3 mt-3 border-t border-border",children:[o.jsx(tt,{variant:"secondary",onClick:dt,children:"Close"}),N?o.jsx(tt,{variant:"primary",onClick:()=>{W(G+" (copy)"),U(`${y}-copy-${Date.now()}`),E(null),T(!1)},children:"Duplicate & Customize"}):o.jsxs(o.Fragment,{children:[o.jsx(tt,{variant:"primary",onClick:Ze,children:"Save"}),o.jsx(tt,{variant:"primary",onClick:_t,children:"Save & Close"})]})]})]})}return o.jsx(Ot,{isOpen:e,onClose:t,title:"Workflows",size:"lg",children:o.jsx(NS,{description:"Workflows define multi-step agentic processes with branching transitions.",onNew:Fe,loading:l,hasItems:s.length>0||a.length>0,children:o.jsxs("div",{className:"space-y-4",children:[o.jsx(F0,{title:"Built-in",items:s,renderActions:ye=>o.jsx(o.Fragment,{children:o.jsx(Ws,{onClick:()=>Ie(ye.id),children:o.jsx(du,{})})})}),o.jsx(F0,{title:"Custom",items:a,renderActions:ye=>o.jsxs(o.Fragment,{children:[o.jsx(Ws,{onClick:()=>Ce(ye.id),children:o.jsx(du,{})}),o.jsx(Ws,{onClick:()=>ce(ye.id),children:o.jsx("span",{className:"text-[10px]",children:"Edit"})}),o.jsx(hu,{onClick:()=>Ie(ye.id)}),v(ye.id,"delete")?o.jsx(_p,{onConfirm:()=>Ve(ye.id),onCancel:C}):o.jsx(yp,{onClick:()=>w(ye.id)})]})})]})})})}function Ir(e,t){const n=new Set(t.map(s=>s.id));return[...e.filter(s=>!n.has(s.id)),...t]}function BC(e,t){if(!t)return!0;const n=t.toLowerCase().split(/\s+/),s=e.toLowerCase().split(/\s+/);return n.every(a=>{for(const l of s){let u=0;for(let c=0;c<l.length&&u<a.length;c++)l[c]===a[u]&&u++;if(u===a.length)return!0}return!1})}function zC(e,t,n,s,a){switch(e.key){case"ArrowDown":e.preventDefault(),n(l=>Math.min(l+1,t));break;case"ArrowUp":e.preventDefault(),n(l=>Math.max(l-1,0));break;case"Enter":e.preventDefault(),s();break;case"Escape":e.preventDefault(),a();break}}function yB(e){const t=e.match(/^\/p\/([^/]+)/);return t==null?void 0:t[1]}function vB({isOpen:e,onClose:t,onCloseComplete:n,onSelectCommand:s,onSelectWorkflow:a,onCloseCompleteAction:l,textareaContent:u,onSearchMessages:c,onToggleAutoScroll:d,isAutoScrollActive:f}){const[,m]=hr(),p=en(P=>P.fetchCommands),_=jt(P=>P.fetchWorkflows),x=gt(P=>P.fetchAgents),w=en(P=>P.defaults),C=en(P=>P.userItems),v=en(P=>P.projectItems),S=jt(P=>P.defaults),b=jt(P=>P.userItems),y=jt(P=>P.projectItems),E=gt(P=>P.defaults),N=gt(P=>P.userItems),T=gt(P=>P.projectItems),L=we(P=>{var ee;return(ee=P.currentSession)==null?void 0:ee.mode}),A=we(P=>{var ee;return((ee=P.currentSession)==null?void 0:ee.dangerLevel)??"normal"}),R=we(P=>P.switchMode),M=we(P=>P.switchDangerLevel),G=we(P=>{var ee;return(ee=P.currentSession)==null?void 0:ee.projectId}),W=D.useRef(void 0),[O,U]=D.useState(""),[V,z]=D.useState(0),X=D.useRef(null),te=D.useRef(!1);D.useEffect(()=>{e&&(te.current=!0)},[e]),D.useEffect(()=>{if(e){p(),_(),x(),U(""),z(0);const P=setTimeout(()=>{var ee;return(ee=X.current)==null?void 0:ee.focus()},50);return()=>clearTimeout(P)}},[e,p,_,x]),D.useEffect(()=>{var P;!e&&te.current&&(n==null||n(),(P=W.current)==null||P.call(W),W.current=void 0)},[e,n]);const I=[{id:"create-session",name:"New Session",prefix:"Action > Create",action:()=>{const P=G??yB(window.location.pathname);P&&m(`/p/${P}/new`)}},{id:"navigate-session",name:"Another Session",prefix:"Action > Navigate to",action:()=>{W.current=l,t()}},{id:"search-messages",name:"Messages",prefix:"Action > Search",action:()=>{t(),c==null||c()}},{id:"toggle-autoscroll",name:f?"Auto-scroll Off":"Auto-scroll On",prefix:"Action > Toggle",action:()=>{t(),d==null||d(!f)}},...Ir(Ir(E,N),T).filter(P=>!P.subagent&&P.id!==L).map(P=>({id:P.id,name:P.name,prefix:"Agent > Switch to",action:()=>R(P.id)})),...Ir(Ir(w,C),v).map(P=>({id:P.id,name:P.name,prefix:"Command > Launch",action:()=>s(P.id,u)})),...Ir(Ir(S,b),y).map(P=>({id:P.id,name:P.name,prefix:"Workflow > Run",action:()=>a(P.id)})),...["normal","dangerous"].filter(P=>P!==A).map(P=>({id:P,name:P.charAt(0).toUpperCase()+P.slice(1),prefix:"Mode > Switch to",action:()=>M(P)}))].filter(P=>BC(`${P.prefix} ${P.name}`,O)),$=I.length-1,F=P=>{zC(P,$,z,()=>{var ee;(ee=I[V])==null||ee.action(),t()},t)};return e?Ua.createPortal(o.jsxs("div",{className:"fixed inset-0 z-50 flex items-start justify-center pt-[15vh] p-4",children:[o.jsx("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm",onClick:t}),o.jsxs("div",{className:"relative w-full max-w-md bg-bg-secondary border border-border rounded shadow-xl",children:[o.jsxs("div",{className:"flex items-center gap-2 px-4 py-3 border-b border-border",children:[o.jsx("input",{ref:X,type:"text",value:O,onChange:P=>{U(P.target.value),z(0)},onKeyDown:F,placeholder:"Search...",className:"flex-1 bg-transparent text-sm focus:outline-none placeholder:text-text-muted"}),o.jsx(gp,{onClick:t,className:"shrink-0","aria-label":"Close"})]}),o.jsx("div",{className:"overflow-y-auto max-h-[60vh] p-2",children:I.length===0?o.jsx("div",{className:"px-3 py-4 text-center text-text-muted text-sm",children:w.length+C.length+S.length+b.length>0?"No matches":"No agents, commands, or workflows yet"}):I.map((P,ee)=>o.jsxs("button",{type:"button",onClick:()=>{P.action(),t()},className:`w-full text-left px-3 py-2 rounded text-sm transition-colors ${ee===V?"bg-accent-primary/20 text-text-primary":"text-text-secondary hover:bg-bg-tertiary hover:text-text-primary"}`,children:[o.jsxs("span",{className:"text-text-muted font-normal",children:[P.prefix," "]}),o.jsx("span",{children:P.name})]},P.id))})]})]}),document.body):null}function bB(e){const t=new Date(e),n=new Date;if(t.getDate()===n.getDate()&&t.getMonth()===n.getMonth()&&t.getFullYear()===n.getFullYear())return t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",hour12:!1});const a=t.getFullYear(),l=String(t.getMonth()+1).padStart(2,"0"),u=String(t.getDate()).padStart(2,"0"),c=String(t.getHours()).padStart(2,"0"),d=String(t.getMinutes()).padStart(2,"0");return`${a}/${l}/${u} ${c}:${d}`}function SB(e){var t;if(e.type==="message")return e.message.timestamp;if(e.type==="subagent")return(t=e.messages[0])==null?void 0:t.timestamp}function wB(e){var t,n;if(e.type==="message"){const s=e.message;if(s.role==="assistant"){const a=(t=s.content)==null?void 0:t.trim();return((n=s.thinkingContent)==null?void 0:n.trim())&&!a?"italic text-text-muted":""}if(s.role==="user")return"font-bold"}return""}function CB(e){var n,s;if(e.type!=="message")return o.jsx(Iv,{className:"w-3.5 h-3.5"});const t=e.message;return t.role==="assistant"?(n=t.thinkingContent)!=null&&n.trim()&&!((s=t.content)!=null&&s.trim())?o.jsx(zj,{className:"w-3.5 h-3.5"}):o.jsx(Iv,{className:"w-3.5 h-3.5"}):o.jsx(Bj,{className:"w-3.5 h-3.5"})}function q0(e){var t;if(e.type==="message"){const n=e.message,s=n.content||"",a=s.replace(/<[^>]+>/g,"").replace(/\s+/g," ").trim();if(n.messageKind==="workflow-started")try{return`Workflow: ${JSON.parse(s).workflowName}`}catch{return"Workflow started"}if(n.messageKind==="task-completed")return"Task completed";if(n.messageKind==="auto-prompt")return"Auto-prompt";if(n.messageKind==="correction")return"Correction";if(n.messageKind==="context-reset")return"Context reset";if(n.messageKind==="command")return"Command executed";if(n.role==="assistant")return a?a.slice(0,200):(t=n.thinkingContent)!=null&&t.trim()?n.thinkingContent.slice(0,200):"";const l=a.slice(0,200);return l.length<a.length?`${l}...`:l}return e.type==="subagent"?`Sub-agent: ${e.subAgentType}`:e.type==="criteria-batch"?"Acceptance Criteria":""}function kB({isOpen:e,onClose:t,displayItems:n,onNavigate:s}){const[a,l]=D.useState(""),[u,c]=D.useState(0),d=D.useRef(null),f=D.useRef(null),m=D.useMemo(()=>n.filter(v=>{var S,b;return!(v.type==="context-divider"||v.type==="message"&&v.message.role==="assistant"&&!((S=v.message.content)!=null&&S.trim())&&!((b=v.message.thinkingContent)!=null&&b.trim()))}),[n]),p=D.useMemo(()=>a?m.filter(v=>{const S=q0(v);return BC(S,a)}):m,[m,a]),_=p.length-1;D.useEffect(()=>{if(e){l(""),c(0);const v=setTimeout(()=>{var S;return(S=d.current)==null?void 0:S.focus()},50);return()=>clearTimeout(v)}},[e]),D.useEffect(()=>{e&&f.current&&(f.current.scrollTop=f.current.scrollHeight)},[e]);const x=v=>{zC(v,_,c,()=>{const S=p[u];if(S){const b=n.indexOf(S);b>=0&&s(b),t()}},t)},w=v=>{const S=n.indexOf(v);S>=0&&s(S),t()},C=v=>n.indexOf(v);return e?Ua.createPortal(o.jsxs("div",{className:"fixed inset-0 z-50 flex items-start justify-center pt-[15vh] p-4",children:[o.jsx("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm",onClick:t}),o.jsxs("div",{className:"relative w-full max-w-lg bg-bg-secondary border border-border rounded shadow-xl",children:[o.jsxs("div",{className:"flex items-center gap-2 px-4 py-3 border-b border-border",children:[o.jsx(mp,{}),o.jsx("input",{ref:d,type:"text",value:a,onChange:v=>{l(v.target.value),c(0)},onKeyDown:x,placeholder:"Search timeline...",className:"flex-1 bg-transparent text-sm focus:outline-none placeholder:text-text-muted"}),o.jsx("button",{type:"button",onClick:t,className:"p-0.5 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors","aria-label":"Close",children:o.jsx(xl,{className:"w-4 h-4"})})]}),o.jsx("div",{ref:f,className:"overflow-y-auto max-h-[60vh] p-2",children:p.length===0?o.jsx("div",{className:"px-3 py-4 text-center text-text-muted text-sm",children:m.length>0?"No matches":"No messages yet"}):p.map((v,S)=>{const b=C(v),y=CB(v),E=q0(v),N=wB(v),T=SB(v),L=v.type==="message"&&v.message.role==="user";return o.jsx("button",{type:"button",onClick:()=>w(v),className:`w-full text-left px-3 py-2 rounded text-sm transition-colors ${S===u?"bg-accent-primary/20 text-text-primary":L?"bg-accent-primary/5 text-text-secondary hover:bg-accent-primary/10 hover:text-text-primary":"text-text-secondary hover:bg-bg-tertiary hover:text-text-primary"}`,children:o.jsxs("div",{className:"flex items-start justify-between gap-2",children:[o.jsxs("div",{className:"flex items-center gap-1.5 min-w-0 flex-1",children:[o.jsx("span",{className:"flex-shrink-0",children:y}),o.jsx("span",{className:`truncate flex-1 ${N}`,children:E})]}),T&&o.jsx("span",{className:"text-text-muted text-xs shrink-0",children:bB(T)})]})},`${b}-${v.type}`)})})]})]}),document.body):null}function EB({attachment:e,onRemove:t}){const n=s=>s<1024?`${s} B`:s<1048576?`${(s/1024).toFixed(1)} KB`:`${(s/1048576).toFixed(1)} MB`;return o.jsxs("div",{className:"relative inline-flex flex-col items-center p-2 bg-bg-tertiary rounded-lg border border-border",children:[o.jsx(vl,{onClick:()=>t(e.id),className:"absolute -top-2 -right-2",size:"sm",variant:"overlay","aria-label":`Remove ${e.filename}`}),o.jsx("img",{src:e.data,alt:e.filename,className:"w-16 h-16 object-cover rounded-md bg-bg-secondary"}),o.jsx("div",{className:"mt-1 text-xs text-text-muted text-center max-w-16 truncate",title:e.filename,children:e.filename}),o.jsx("div",{className:"text-[10px] text-text-muted",children:n(e.size)})]})}function jB({history:e,selectedIndex:t,onSelect:n,onEscape:s,onNavigate:a}){const l=D.useRef(null),u=D.useRef(null);D.useEffect(()=>{u.current&&l.current&&u.current.scrollIntoView({block:"nearest",behavior:"smooth"})},[t]);const c=f=>{switch(f.key){case"Enter":f.preventDefault(),e[t]&&n(e[t].content);break;case"Escape":f.preventDefault(),s();break;case"ArrowUp":f.preventDefault(),a("up");break;case"ArrowDown":f.preventDefault(),a("down");break}},d=f=>{n(f)};return o.jsx("div",{ref:l,role:"list",className:"mb-2 p-2 bg-bg-secondary border border-border rounded-lg overflow-y-auto max-h-64",onKeyDown:c,children:e.map((f,m)=>o.jsxs("div",{ref:m===t?u:null,role:"listitem",onClick:()=>d(f.content),className:`
295
+ p-2 rounded cursor-pointer transition-colors
296
+ ${m===t?"bg-accent-primary/20 border border-accent-primary":"hover:bg-bg-tertiary"}
297
+ `,children:[o.jsxs("div",{className:"text-xs text-text-muted font-mono",children:[f.formattedTimestamp,f.sessionName&&o.jsxs(o.Fragment,{children:[" | ",o.jsx("span",{className:"text-accent-primary font-medium",children:f.sessionName})]})]}),o.jsx("div",{className:"text-sm text-text-primary mt-1",children:f.trimmedContent})]},f.id))})}function NB(){const e=hj(),t=e?"bg-amber-400":"bg-accent-primary";return o.jsxs("div",{className:"flex items-center gap-3 text-xs text-text-muted py-2",children:[o.jsxs("div",{className:"flex items-center gap-1.5",children:[o.jsxs("span",{className:"flex gap-0.5",children:[o.jsx("span",{className:`w-1 h-1 rounded-full animate-bounce ${t}`,style:{animationDelay:"0ms"}}),o.jsx("span",{className:`w-1 h-1 rounded-full animate-bounce ${t}`,style:{animationDelay:"150ms"}}),o.jsx("span",{className:`w-1 h-1 rounded-full animate-bounce ${t}`,style:{animationDelay:"300ms"}})]}),o.jsx("span",{className:"text-text-secondary",children:e?"Running... (abort in progress)":"Running"})]}),!e&&o.jsx("span",{className:"text-text-muted",children:"esc to interrupt"})]})}const TB={maxWidth:1920,maxHeight:1920,quality:.85,maxSizeBytes:1048576};async function AB(e,t={}){const n={...TB,...t};if(!e.type.startsWith("image/"))throw new Error("File is not an image");if(!["image/png","image/jpeg","image/gif"].includes(e.type))throw new Error(`Unsupported image format: ${e.type}. Only PNG, JPG, and GIF are supported.`);if(e.size<=n.maxSizeBytes){const a=await e.arrayBuffer(),l=PB(a),u=`data:${e.type};base64,${l}`,c=await $C(u);return{dataUrl:u,mimeType:e.type,size:e.size,width:c.width,height:c.height}}return await LB(e,n)}async function LB(e,t){const n=await RB(e),s=await $C(n),{width:a,height:l}=DB(s.width,s.height,t.maxWidth,t.maxHeight),u=OB();u.width=a,u.height=l;const c=u.getContext("2d");if(!c)throw new Error("Failed to get canvas context");c.imageSmoothingEnabled=!0,c.imageSmoothingQuality="high",c.drawImage(s,0,0,a,l);let d=t.quality,f="";for(let p=0;p<10&&(f=u.toDataURL(e.type.startsWith("image/gif")?"image/png":e.type,d),!(K0(f)<=t.maxSizeBytes||d<=.3));p++)d-=.1;const m=K0(f);return{dataUrl:f,mimeType:e.type.startsWith("image/gif")?"image/png":e.type,size:m,width:a,height:l}}function DB(e,t,n,s){const a=e/t;return e>t&&e>n?{width:n,height:Math.round(n/a)}:t>e&&t>s?{width:Math.round(s*a),height:s}:{width:e,height:t}}function RB(e){return new Promise((t,n)=>{const s=IB(),a=new s;a.onload=()=>t(a.result),a.onerror=()=>n(new Error("Failed to read file")),a.readAsDataURL(e)})}function $C(e){return new Promise((t,n)=>{const s=MB(),a=new s;a.onload=()=>t(a),a.onerror=()=>n(new Error("Failed to load image")),a.src=e})}function OB(){var t;const e=cg();if(!((t=e.document)!=null&&t.createElement))throw new Error("Image compression requires browser canvas APIs");return e.document.createElement("canvas")}function MB(){const e=cg();if(!e.Image)throw new Error("Image compression requires browser image APIs");return e.Image}function IB(){const e=cg();if(!e.FileReader)throw new Error("Image compression requires browser file APIs");return e.FileReader}function cg(){return globalThis}function PB(e){const t=new Uint8Array(e);let n="";for(let s=0;s<t.byteLength;s++){const a=t[s];a!==void 0&&(n+=String.fromCharCode(a))}return btoa(n)}function K0(e){const n=e.split(",")[1];return n?Math.round(n.length*3/4):0}function BB(e){return["image/png","image/jpeg","image/gif"].includes(e.type)}function zB(e,t=50*1024*1024){return e.size>t?{valid:!1,error:`Image file is too large (${Y0(e.size)}). Maximum size is ${Y0(t)}.`}:{valid:!0}}function Y0(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}async function bm(e,t,n,s={}){const{maxSizeBytes:a=50*1024*1024,filename:l}=s;if(!BB(e)){n(`Unsupported file type: ${e.type}. Only PNG, JPG, and GIF are supported.`);return}const u=zB(e,a);if(!u.valid){n(u.error??"Image file is too large");return}try{const c=await AB(e,{maxWidth:1920,maxHeight:1920,quality:.85,maxSizeBytes:1048576}),d={id:fS(),filename:l??e.name,mimeType:c.mimeType,size:c.size,data:c.dataUrl};t(d)}catch(c){const d=c instanceof Error?c.message??"Failed to process image":"Failed to process image";n(d)}}function $B({children:e}){return Ua.createPortal(e,document.body)}function HB(e){const t=e.startCondition;if(!t||t.type==="always")return!0;switch(t.type){case"step_result":case"metadata_all_match":case"metadata_all_in":return null;default:return null}}function UB({onSendCommand:e,onSelectWorkflow:t,onSelectWorkflowWithSubGroup:n,onOpenCommandsManager:s,onOpenWorkflowsManager:a,onAttach:l,textareaContent:u,attachments:c}){const[d,f]=D.useState(!1),[m,p]=D.useState("commands"),[_,x]=D.useState(""),[w,C]=D.useState(0),[v,S]=D.useState(null),[b,y]=D.useState(null),E=D.useRef(null),N=D.useRef(null),T=en(ee=>ee.defaults),L=en(ee=>ee.userItems),A=en(ee=>ee.projectItems),R=en(ee=>ee.fetchCommands),M=jt(ee=>ee.defaults),G=jt(ee=>ee.userItems),W=jt(ee=>ee.projectItems),O=jt(ee=>ee.fetchWorkflows),U=Ir(Ir(T,L),A),V=Ir(Ir(M,G),W);D.useEffect(()=>{d&&(m==="commands"?R():m==="workflows"&&O())},[d,m,R,O]),D.useEffect(()=>{d&&(x(""),C(0),requestAnimationFrame(()=>{var ee;return(ee=E.current)==null?void 0:ee.focus()}))},[d,m]),D.useEffect(()=>{if(!d)return;const ee=J=>{var re;(re=N.current)!=null&&re.contains(J.target)||f(!1)};return document.addEventListener("mousedown",ee),()=>document.removeEventListener("mousedown",ee)},[d]);const z=ee=>{switch(ee.key){case"ArrowDown":ee.preventDefault(),C(J=>{const Y=(m==="commands"?U:V).filter(q=>{const Z=_.toLowerCase();return!Z||q.name.toLowerCase().includes(Z)});return Math.min(J+1,Y.length-1)});break;case"ArrowUp":ee.preventDefault(),C(J=>Math.max(J-1,0));break;case"Enter":ee.preventDefault();break;case"Escape":ee.preventDefault(),f(!1);break}},X=ee=>{x(ee),C(0)},te=U.filter(ee=>!_||ee.name.toLowerCase().includes(_.toLowerCase())),H=V.filter(ee=>!_||ee.name.toLowerCase().includes(_.toLowerCase())),I=async ee=>{const J=await en.getState().fetchCommand(ee);J&&e(J.prompt,J.metadata.agentMode,u,c),f(!1)},$=ee=>{t(ee),f(!1)},F=(ee,J)=>{J.stopPropagation(),f(!1),S(ee)},P=(ee,J)=>{J.stopPropagation(),f(!1),y(ee)};return o.jsxs("div",{ref:N,className:"relative",children:[o.jsx("button",{type:"button",onClick:()=>f(!d),className:"px-1.5 py-2 rounded-r bg-bg-secondary text-text-muted hover:text-text-primary hover:bg-bg-tertiary transition-colors border-l border-border/50",title:"More options",children:o.jsx(bS,{className:"w-4 h-4"})}),d&&o.jsxs("div",{className:"absolute bottom-full right-0 mb-1 w-80 max-w-[calc(100vw-2rem)] bg-bg-secondary border border-border rounded-lg shadow-xl z-50 overflow-hidden",children:[o.jsxs("div",{className:"flex border-b border-border",children:[o.jsx("button",{type:"button",onClick:()=>{p("commands"),x(""),C(0)},className:`flex-1 px-4 py-2 text-sm font-medium transition-colors ${m==="commands"?"text-accent-primary border-b-2 border-accent-primary":"text-text-muted hover:text-text-primary"}`,children:"Commands"}),o.jsx("button",{type:"button",onClick:()=>{p("workflows"),x(""),C(0)},className:`flex-1 px-4 py-2 text-sm font-medium transition-colors ${m==="workflows"?"text-accent-primary border-b-2 border-accent-primary":"text-text-muted hover:text-text-primary"}`,children:"Workflows"}),o.jsx("button",{type:"button",onClick:()=>p("attach"),className:`flex-1 px-4 py-2 text-sm font-medium transition-colors ${m==="attach"?"text-accent-primary border-b-2 border-accent-primary":"text-text-muted hover:text-text-primary"}`,children:"Attach"})]}),m!=="attach"&&o.jsx("div",{className:"p-2 border-b border-border",children:o.jsx("input",{ref:E,value:_,onChange:ee=>X(ee.target.value),onKeyDown:z,placeholder:m==="commands"?"Search commands...":"Search workflows...",className:"w-full px-2 py-1 bg-bg-tertiary border border-border rounded text-sm focus:outline-none focus:ring-1 focus:ring-accent-primary"})}),o.jsx("div",{className:"overflow-y-auto max-h-64 p-1",children:m==="commands"?te.length===0?o.jsx("div",{className:"px-3 py-2 text-text-muted text-sm",children:U.length===0?"No commands yet":"No matches"}):te.map((ee,J)=>o.jsxs("div",{className:`flex items-center gap-1 px-3 py-2 rounded transition-colors group ${J===w?"bg-accent-primary/20":"hover:bg-bg-tertiary"}`,children:[o.jsx("button",{type:"button",onClick:()=>I(ee.id),className:"flex-1 text-left",children:o.jsx("div",{className:"text-sm text-text-primary font-medium",children:ee.name})}),o.jsx(Ws,{className:"opacity-0 group-hover:opacity-100",onClick:re=>F(ee.id,re)})]},ee.id)):m==="workflows"?H.length===0?o.jsx("div",{className:"px-3 py-2 text-text-muted text-sm",children:V.length===0?"No workflows yet":"No matches"}):H.map((ee,J)=>{const re=HB(ee),Y=ee.color??"#3b82f6";return o.jsxs("div",{className:`flex items-center gap-2 px-3 py-2 rounded transition-colors group ${J===w?"bg-accent-primary/20":"hover:bg-bg-tertiary"}`,children:[o.jsxs("button",{type:"button",onClick:()=>$(ee.id),className:"flex-1 text-left flex items-center gap-2",children:[o.jsx("span",{className:"w-2 h-2 rounded-full flex-shrink-0",style:{backgroundColor:Y}}),o.jsx("span",{className:"text-sm text-text-primary font-medium flex-1",children:ee.name}),re!==null&&o.jsx("span",{className:"w-1.5 h-1.5 rounded-full flex-shrink-0",style:{backgroundColor:re?"#22c55e":"#6b7280"},title:re?"Entry condition met":"Entry condition not met"})]}),o.jsxs("div",{className:"flex items-center gap-1",children:[ee.subGroups&&ee.subGroups.length>0&&o.jsx(FB,{subGroups:ee.subGroups,onSelect:q=>{f(!1),n(ee.id,q)}}),o.jsx(Ws,{className:"opacity-0 group-hover:opacity-100",onClick:q=>P(ee.id,q)})]})]},ee.id)}):o.jsxs("div",{className:"p-4 flex flex-col items-center gap-3",children:[o.jsxs("button",{type:"button",onClick:()=>{l(),f(!1)},className:"flex items-center gap-2 px-4 py-2 rounded bg-bg-tertiary hover:bg-accent-primary/20 text-text-primary transition-colors",children:[o.jsx(yj,{className:"w-4 h-4"}),o.jsx("span",{className:"text-sm font-medium",children:"Attach image"})]}),o.jsx("span",{className:"text-xs text-text-muted",children:"or drag & drop into chat"})]})}),m!=="attach"&&o.jsx("div",{className:"border-t border-border p-1",children:o.jsx("button",{type:"button",onClick:()=>{f(!1),m==="commands"?s():a()},className:"w-full text-left px-3 py-1.5 rounded text-sm text-text-muted hover:text-text-primary hover:bg-bg-tertiary transition-colors",children:m==="commands"?"Manage Commands...":"Manage Workflows..."})})]}),o.jsx(OC,{isOpen:!!v,onClose:()=>S(null),initialEditId:v}),o.jsx(PC,{isOpen:!!b,onClose:()=>y(null),initialEditId:b})]})}function FB({subGroups:e,onSelect:t}){const[n,s]=D.useState(!1),[a,l]=D.useState({top:0,right:0}),u=D.useRef(null),c=D.useRef(null);RC(c,()=>s(!1),n);const d=f=>{if(f.stopPropagation(),!n&&u.current){const m=u.current.getBoundingClientRect();l({top:m.bottom+4,right:window.innerWidth-m.right})}s(!n)};return o.jsxs(o.Fragment,{children:[o.jsx("button",{ref:u,type:"button",onClick:d,className:"p-1 rounded text-text-muted hover:text-text-primary transition-colors",title:"Sub-groups",children:"⋮"}),n&&o.jsx($B,{children:o.jsx("div",{ref:c,onMouseDown:f=>f.stopPropagation(),className:"fixed w-40 bg-bg-secondary border border-border rounded-lg shadow-xl z-[100] overflow-hidden",style:{top:a.top,right:a.right},children:e.map(f=>o.jsx("button",{type:"button",onClick:m=>{m.stopPropagation(),t(f)},className:"w-full text-left px-3 py-2 text-sm text-text-primary hover:bg-bg-tertiary transition-colors",children:f},f))})})]})}function VB({messages:e,onCancel:t}){return e.length===0?null:o.jsx("div",{className:"mb-2 flex flex-wrap gap-1.5",children:e.map(n=>o.jsxs("div",{className:`inline-flex items-center gap-1.5 px-2 py-1 rounded text-xs ${n.mode==="asap"?"bg-amber-500/15 text-amber-300 border border-amber-500/30":"bg-blue-500/15 text-blue-300 border border-blue-500/30"}`,children:[o.jsxs("span",{className:"font-medium",children:[n.mode==="asap"?"ASAP":"Queue",":"]}),o.jsx("span",{className:"truncate max-w-[200px]",children:n.content}),o.jsx(vl,{onClick:()=>t(n.queueId),size:"sm"})]},n.queueId))})}function GB({agent:e,isBuiltIn:t,isConfirmingDelete:n,alwaysAllowedNames:s,onView:a,onEdit:l,onDuplicate:u,onDelete:c}){const d=e.allowedTools.filter(f=>!(s!=null&&s.has(f)));return o.jsxs(AS,{isBuiltIn:t,isConfirmingDelete:n,onView:a,onEdit:l,onDuplicate:u,onDelete:c,children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"w-2.5 h-2.5 rounded-full flex-shrink-0",style:{backgroundColor:e.color??"#6b7280"}}),o.jsx("span",{className:"text-text-primary text-sm font-medium",children:e.name}),o.jsx("span",{className:"text-text-muted text-xs font-mono",children:e.id}),t&&o.jsx("span",{className:"px-1.5 py-0.5 rounded text-[10px] font-medium bg-bg-primary text-text-muted",children:"Built-in"})]}),e.description&&o.jsx("p",{className:"text-text-secondary text-xs mt-0.5 truncate",children:e.description}),o.jsxs("div",{className:"flex flex-wrap gap-1 mt-1",children:[d.slice(0,5).map(f=>o.jsx("span",{className:"text-[10px] font-mono text-text-muted bg-bg-primary px-1 py-0.5 rounded",children:f},f)),d.length>5&&o.jsxs("span",{className:"text-[10px] text-text-muted",children:["+",d.length-5," more"]})]})]})}function X0({title:e,agents:t,subagents:n,isBuiltIn:s,alwaysAllowedNames:a,onView:l,onDuplicate:u,onEdit:c,onDelete:d}){if(t.length===0&&n.length===0)return null;const f=m=>o.jsx(GB,{agent:m,isBuiltIn:s,isConfirmingDelete:!1,alwaysAllowedNames:a,onView:()=>l(m.id),onEdit:s?void 0:()=>c==null?void 0:c(m.id),onDuplicate:()=>u(m.id),onDelete:s?void 0:()=>d==null?void 0:d(m.id)},m.id);return o.jsxs("div",{children:[o.jsx("h3",{className:"text-xs font-medium text-text-secondary mb-2 uppercase tracking-wide",children:e}),o.jsxs("div",{className:"space-y-2",children:[t.map(f),n.length>0&&o.jsxs("div",{className:"mt-3",children:[o.jsx("div",{className:"text-xs text-text-muted uppercase tracking-wider mb-1.5",children:"Sub-agents"}),o.jsx("div",{className:"space-y-2",children:n.map(f)})]})]})]})}function WB(e){const t=new Map;for(const n of e){const s=n.indexOf(":");if(s===-1)t.set(n,new Set);else{const a=n.slice(0,s),u=n.slice(s+1).split(",").filter(Boolean);t.set(a,new Set(u))}}return t}function Sm(e){const t=[];for(const[n,s]of e)s.size===0?t.push(n):t.push(`${n}:${[...s].join(",")}`);return t}function qB({formName:e,formId:t,formDescription:n,formSubagent:s,formTools:a,formColor:l,formPrompt:u,formError:c,saving:d,isReadOnly:f,availableTools:m,onNameChange:p,onIdChange:_,onDescriptionChange:x,onSubagentChange:w,onToolsChange:C,onColorChange:v,onPromptChange:S,onSave:b,onCancel:y,onDuplicate:E}){const N=WB(a),T=m.filter(R=>!(s&&R.topLevelOnly)),L=(R,M)=>{const G=new Map(N),W=G.get(R)||new Set,O=new Set(W);O.has(M)?O.delete(M):O.add(M),O.size===0?G.set(R,new Set):G.set(R,O),C(Sm(G))},A=R=>{const M=new Map(N);M.has(R)?M.delete(R):M.set(R,new Set),C(Sm(M))};return o.jsxs("div",{className:"flex flex-col h-full",children:[o.jsxs("div",{className:"space-y-3",children:[c&&o.jsx(Uu,{message:c}),o.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[o.jsx(Sr,{label:"Name",value:e,onChange:p,placeholder:"My Agent",readOnly:f}),o.jsx(Sr,{label:"ID",value:t,onChange:_,readOnly:!0,placeholder:"my_agent",hint:"(read-only)",mono:!0})]}),o.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[o.jsx(Sr,{label:"Description",value:n,onChange:x,placeholder:"What this agent does",readOnly:f}),o.jsxs("div",{children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Type"}),o.jsxs("div",{className:"flex items-center gap-3 h-[34px]",children:[o.jsx("button",{onClick:()=>!f&&w(!1),className:`px-2.5 py-1 rounded text-xs font-medium transition-colors ${s?"bg-bg-tertiary text-text-muted hover:text-text-secondary":"bg-accent-primary/25 text-accent-primary"} ${f?"pointer-events-none opacity-60":""}`,children:"Agent"}),o.jsx("button",{onClick:()=>!f&&w(!0),className:`px-2.5 py-1 rounded text-xs font-medium transition-colors ${s?"bg-accent-primary/25 text-accent-primary":"bg-bg-tertiary text-text-muted hover:text-text-secondary"} ${f?"pointer-events-none opacity-60":""}`,children:"Sub-agent"}),o.jsxs("div",{className:"flex items-center gap-1.5 ml-auto",children:[o.jsx("label",{className:"text-xs text-text-secondary",children:"Color"}),o.jsx("input",{type:"color",value:l,onChange:R=>!f&&v(R.target.value),disabled:f,className:"w-6 h-6 rounded cursor-pointer border border-border bg-transparent"})]})]})]})]}),o.jsxs("div",{children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Tools"}),o.jsx("div",{className:"flex flex-wrap gap-1.5 p-2 bg-bg-tertiary border border-border rounded max-h-32 overflow-y-auto",children:T.map(R=>{const M=N.has(R.name),G=R.actions.length>0,W=N.get(R.name)||new Set;return G?f?o.jsxs("button",{className:"px-1.5 py-0.5 rounded text-xs font-mono flex items-center gap-1 bg-bg-primary text-text-muted pointer-events-none opacity-60",children:[o.jsx("span",{children:R.name}),o.jsx("span",{className:"text-[10px]",children:"*"})]},R.name):o.jsx(_l,{trigger:o.jsxs("button",{className:`px-1.5 py-0.5 rounded text-xs font-mono transition-colors flex items-center gap-1 ${M?"bg-accent-primary/25 text-accent-primary":"bg-bg-primary text-text-muted"}`,children:[o.jsx("span",{children:R.name}),G&&o.jsx("span",{className:`text-[10px] ${M&&W.size>0?"text-accent-primary":"text-text-muted"}`,children:"*"})]}),minWidth:"160px",items:[...R.actions.map(O=>({label:o.jsxs("label",{className:"flex items-center gap-2 cursor-pointer",htmlFor:`${R.name}-${O}`,children:[o.jsx("input",{type:"checkbox",id:`${R.name}-${O}`,checked:W.has(O),onChange:()=>L(R.name,O),disabled:f,className:"w-3 h-3 rounded accent-accent-primary"}),o.jsx("span",{children:O})]}),closeOnClick:!1})),{label:M?"Deselect all":"Select all",closeOnClick:!1,onClick:()=>{if(M)A(R.name);else{const O=new Map(N);O.set(R.name,new Set(R.actions)),C(Sm(O))}}}]},R.name):o.jsx("button",{onClick:()=>!f&&A(R.name),className:`px-1.5 py-0.5 rounded text-xs font-mono transition-colors flex items-center gap-1 ${M?"bg-accent-primary/25 text-accent-primary":"bg-bg-primary text-text-muted hover:text-text-secondary"} ${f?"pointer-events-none":"cursor-pointer"}`,children:o.jsx("span",{children:R.name})},R.name)})})]})]}),o.jsxs("div",{className:"flex-1 min-h-[150px] border-t border-border pt-3 flex flex-col",children:[o.jsx("label",{className:"block text-xs text-text-secondary mb-1",children:"Prompt"}),o.jsx("textarea",{value:u,onChange:R=>!f&&S(R.target.value),readOnly:f,placeholder:"Instructions for this agent...",className:`h-80 w-full px-3 py-2 bg-bg-tertiary border border-border rounded text-sm font-mono resize-y focus:outline-none focus:ring-1 focus:ring-accent-primary ${f?"opacity-60":""}`})]}),o.jsx(Xj,{onCancel:y,onSave:b,saving:d,saveDisabled:!e||!u||f}),f&&o.jsx("div",{className:"flex justify-end mt-2",children:o.jsx("button",{onClick:E,className:"px-3 py-1.5 rounded bg-accent-primary/20 text-sm text-accent-primary font-medium hover:bg-accent-primary/30 transition-colors",children:"Duplicate & Customize"})})]})}function KB(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_|_$/g,"")}function YB({isOpen:e,onClose:t,initialEditId:n}){const s=gt(pe=>pe.defaults),a=gt(pe=>pe.userItems),l=gt(pe=>pe.loading),u=gt(pe=>pe.fetchAgents),c=gt(pe=>pe.fetchAgent),d=gt(pe=>pe.fetchDefaultContent),f=gt(pe=>pe.createAgent),m=gt(pe=>pe.updateAgent),p=gt(pe=>pe.deleteAgent),[_,x]=D.useState("list"),[w,C]=D.useState(null),[v,S]=D.useState(!1),[b,y]=D.useState(""),[E,N]=D.useState(""),[T,L]=D.useState(""),[A,R]=D.useState(!0),[M,G]=D.useState([]),[W,O]=D.useState("#6b7280"),[U,V]=D.useState(""),[z,X]=D.useState(""),[te,H]=D.useState(!1),[I,$]=D.useState([]),[F,P]=D.useState(new Set),ee=pe=>{y(pe.metadata.name),N(pe.metadata.id),L(pe.metadata.description),R(pe.metadata.subagent),G(pe.metadata.allowedTools),O(pe.metadata.color??"#6b7280"),V(pe.prompt),X("")},J=(pe,ce,Se)=>{y(pe.metadata.name+" (copy)"),N(`${ce}-copy-${Date.now()}`),L(pe.metadata.description),R(pe.metadata.subagent),G(pe.metadata.allowedTools),O(pe.metadata.color??"#6b7280"),V(pe.prompt),X(""),C(null),S(!1),x("edit")},re=(pe,ce)=>{ee(pe),C(ce),S(!0),x("edit")};D.useEffect(()=>{e&&(u(),Ne("/api/tools").then(pe=>pe.json()).then(pe=>{const ce=pe.tools||[];P(new Set(ce.filter(Se=>Se.alwaysAllowed).map(Se=>Se.name))),$(ce.filter(Se=>!Se.alwaysAllowed))}).catch(()=>{$([]),P(new Set)}),n?s.some(ce=>ce.id===n)?d(n).then(ce=>{ce&&J(ce,n)}):c(n).then(ce=>{ce&&(ee(ce),C(n),S(!1),x("edit"))}):(x("list"),C(null),S(!1)))},[e,u,c,d,n]);const Y=async pe=>{if(s.some(Se=>Se.id===pe)){const Se=await d(pe);if(!Se)return;re(Se,pe)}else{const Se=await c(pe);if(!Se)return;re(Se,pe)}},q=async pe=>{const ce=await d(pe);ce&&J(ce,pe)},Z=()=>{C(null),y(""),N(""),L(""),R(!0),G(["read_file"]),O("#6b7280"),V(""),X(""),S(!1),x("edit")},ae=async pe=>{const ce=await c(pe);ce&&(ee(ce),C(pe),S(!1),x("edit"))},se=async pe=>{await p(pe)},oe=async()=>{const pe=w??E;if(!pe||!b||!U){X("Name and prompt are required.");return}H(!0),X("");const ce={metadata:{id:pe,name:b,description:T,subagent:A,allowedTools:M.filter(Ze=>!F.has(Ze)),color:W},prompt:U},Se=w?await m(w,ce):await f(ce);if(H(!1),!Se.success){X(Se.error??"Failed to save agent.");return}n?t():x("list")},je=()=>{n?t():(x("list"),S(!1))},Le=pe=>{y(pe),w||N(KB(pe))},De=s.filter(pe=>pe.subagent),Re=s.filter(pe=>!pe.subagent),Te=a.filter(pe=>pe.subagent),Ae=a.filter(pe=>!pe.subagent);return _==="edit"?o.jsx(Ot,{isOpen:e,onClose:je,title:v?`${b}`:w?"Edit Agent":"New Agent",size:"xl",children:o.jsx(qB,{formName:b,formId:E,formDescription:T,formSubagent:A,formTools:M,formColor:W,formPrompt:U,formError:z,saving:te,isReadOnly:v,availableTools:I,onNameChange:Le,onIdChange:N,onDescriptionChange:L,onSubagentChange:pe=>{R(pe),pe&&G(ce=>ce.filter(Se=>{var Ze;return!((Ze=I.find(_t=>_t.name===Se))!=null&&Ze.topLevelOnly)}))},onToolsChange:G,onColorChange:O,onPromptChange:V,onSave:oe,onCancel:je,onDuplicate:()=>{y(b+" (copy)"),N(`${w}-copy-${Date.now()}`),C(null),S(!1)}})}):o.jsx(Ot,{isOpen:e,onClose:t,title:"Agents",size:"lg",children:o.jsx(NS,{description:"Agents define behavior, tools, and prompts for top-level modes and sub-agents.",onNew:Z,loading:l,hasItems:s.length>0||a.length>0,children:o.jsxs("div",{className:"space-y-4",children:[s.length>0&&o.jsx(X0,{title:"Built-in",agents:Re,subagents:De,isBuiltIn:!0,alwaysAllowedNames:F,onView:Y,onDuplicate:q}),a.length>0&&o.jsx(X0,{title:"Custom",agents:Ae,subagents:Te,isBuiltIn:!1,alwaysAllowedNames:F,onView:Y,onDuplicate:q,onEdit:ae,onDelete:se})]})})})}function XB(){const e=we(b=>{var y;return(y=b.currentSession)==null?void 0:y.mode}),t=we(b=>b.switchMode),n=gt(b=>b.defaults),s=gt(b=>b.userItems),a=gt(b=>b.fetchAgents),l=[...n,...s],[u,c]=D.useState(!1),[d,f]=D.useState(!1),[m,p]=D.useState(null),_=D.useRef(null);D.useEffect(()=>{a()},[a]),D.useEffect(()=>{function b(y){_.current&&!_.current.contains(y.target)&&c(!1)}return document.addEventListener("mousedown",b),()=>document.removeEventListener("mousedown",b)},[]);const x=pp();if(!e)return null;const w=l.filter(b=>!b.subagent),C=w.find(b=>b.id===e),v=(C==null?void 0:C.name)??e,S=al(l,e);return o.jsxs("div",{className:"relative",ref:_,children:[o.jsxs("button",{type:"button",onClick:()=>c(!u),className:"flex items-center gap-1 px-1.5 py-0.5 rounded hover:bg-bg-tertiary transition-colors",title:"Switch agent",children:[o.jsx("span",{className:"text-sm font-medium",style:{color:S},children:v}),o.jsx(dr,{className:`w-3 h-3 text-text-muted transition-transform ${u?"rotate-180":""}`})]}),u&&w.length>0&&o.jsxs("div",{className:"absolute bottom-full left-0 mb-1 w-56 bg-bg-secondary border border-border rounded-lg shadow-lg overflow-hidden z-50",children:[w.map((b,y)=>{const E=b.id===e,N=al(l,b.id),T=x.agentSwitching[y],L=T?CS(T):null;return o.jsxs("div",{className:`flex items-center gap-2 px-3 py-2 text-sm transition-colors group ${E?"bg-bg-tertiary":"hover:bg-bg-tertiary cursor-pointer"}`,children:[o.jsxs("button",{type:"button",onClick:()=>{E||t(b.id),c(!1)},className:"flex-1 text-left flex items-center gap-2 min-w-0",children:[o.jsx("span",{className:"font-medium truncate",style:{color:N},children:b.name}),E&&o.jsx(Br,{className:"w-3.5 h-3.5 text-text-muted shrink-0"})]}),L&&o.jsx("span",{className:"shrink-0 px-1.5 py-0.5 text-[10px] bg-bg-tertiary text-text-muted rounded",children:L})]},b.id)}),o.jsx("div",{className:"border-t border-border p-1",children:o.jsx("button",{type:"button",onClick:()=>{c(!1),f(!0)},className:"w-full text-left px-3 py-1.5 rounded text-sm text-text-muted hover:text-text-primary hover:bg-bg-tertiary transition-colors",children:"Manage Agents..."})})]}),o.jsx(YB,{isOpen:d,onClose:()=>{f(!1),p(null)},initialEditId:m})]})}function QB(){const e=we(s=>s.currentSession),t=we(s=>s.switchDangerLevel);if(!e)return null;const n=e.dangerLevel??"normal";return o.jsxs("div",{className:"flex items-center gap-1 px-1.5 py-0.5 rounded bg-bg-tertiary/50",children:[o.jsx("button",{type:"button",onClick:()=>t("normal"),className:`px-2 py-0.5 text-xs font-medium rounded transition-colors ${n==="normal"?"bg-accent-success/20 text-accent-success":"text-text-muted hover:text-text-primary hover:bg-bg-tertiary"}`,title:"Normal mode - requires path confirmation",children:"Normal"}),o.jsx("button",{type:"button",onClick:()=>t("dangerous"),className:`px-2 py-0.5 text-xs font-medium rounded transition-colors ${n==="dangerous"?"bg-red-500/20 text-red-400":"text-text-muted hover:text-text-primary hover:bg-bg-tertiary"}`,title:"Dangerous mode - bypasses all confirmations",children:"Dangerous"})]})}function Q0({message:e,field:t,label:n}){const s=e==null?void 0:e[t];return o.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[o.jsx("span",{className:s!=null?"text-accent-success":"text-red-500",children:s!=null?"✓":"✗"}),o.jsxs("span",{className:"text-text-secondary",children:[n,":"]}),o.jsx("span",{className:"text-text-primary font-mono truncate max-w-[200px]",children:JSON.stringify(s??"undefined")})]})}function J0({kwargs:e,onChange:t,mode:n,modelId:s,testResults:a,thinkingField:l,onSeeRaw:u,onTest:c}){var f,m,p,_,x;const d=s+"-"+n;return o.jsxs(o.Fragment,{children:[o.jsxs("div",{children:[o.jsx("label",{className:"text-xs text-text-secondary block mb-1",children:"Extra kwargs"}),o.jsx("input",{type:"text",value:e,onChange:w=>t(w.target.value),className:"w-full px-2 py-1 bg-bg-tertiary border border-border rounded text-xs text-text-primary font-mono"})]}),o.jsxs("div",{className:"flex gap-2 items-start",children:[o.jsx("button",{onClick:c,disabled:(f=a[d])==null?void 0:f.loading,className:"px-2 py-1 bg-bg-tertiary border border-border rounded text-xs text-text-muted hover:text-text-secondary disabled:opacity-50",children:(m=a[d])!=null&&m.loading?"Testing...":"Test"}),((p=a[d])==null?void 0:p.result)&&o.jsx(JB,{testKey:d,testResults:a,thinkingField:l,onSeeRaw:u}),((_=a[d])==null?void 0:_.error)&&o.jsx("span",{className:"text-xs text-red-500",children:(x=a[d])==null?void 0:x.error})]})]})}function JB({testKey:e,testResults:t,thinkingField:n,onSeeRaw:s}){const a=t[e];if(!(a!=null&&a.result))return null;const l=a.message,u=n||(l!=null&&l.reasoning?"reasoning":l!=null&&l.reasoning_content?"reasoning_content":l!=null&&l.thinking?"thinking":void 0);return o.jsxs("div",{className:"flex-1 space-y-1",children:[a.message&&o.jsxs(o.Fragment,{children:[o.jsx(Q0,{message:a.message,field:"content",label:"content"}),u&&o.jsx(Q0,{message:a.message,field:u,label:u})]}),o.jsx("button",{onClick:()=>s(a.result??""),className:"text-xs text-accent-primary hover:underline",children:"See raw output"})]})}function Z0({value:e,onChange:t}){return o.jsxs("div",{children:[o.jsxs("label",{className:"text-xs text-text-secondary block mb-1",children:["Query params ",o.jsx("span",{className:"text-text-muted",children:"(optional JSON)"})]}),o.jsx("input",{type:"text",value:e??"",onChange:n=>t(n.target.value),className:"w-full px-2 py-1 bg-bg-tertiary border border-border rounded text-xs text-text-primary font-mono"})]})}const ZB=[8e3,11434,8080],e8=[{value:"llamacpp",label:"llama.cpp"},{value:"ollama",label:"Ollama"},{value:"vllm",label:"vLLM"},{value:"sglang",label:"SGLang"},{value:"unknown",label:"Other (APIs)"}];function HC({isOpen:e,onClose:t,onSave:n,initialStep:s=1,editProvider:a,editModelId:l}){const[u,c]=D.useState(s),[d,f]=D.useState(""),[m,p]=D.useState(""),[_,x]=D.useState(""),[w,C]=D.useState(""),[v,S]=D.useState(!1),[b,y]=D.useState(!1),[E,N]=D.useState(null),[T,L]=D.useState([]),[A,R]=D.useState(null),[M,G]=D.useState(!1),[W,O]=D.useState(""),[U,V]=D.useState({}),[z,X]=D.useState('{"enable_thinking": true}'),[te,H]=D.useState('{"enable_thinking": false}'),[I,$]=D.useState({}),[F,P]=D.useState(null),ee=D.useRef(null);D.useEffect(()=>{u===1&&e&&requestAnimationFrame(()=>{var Z;return(Z=ee.current)==null?void 0:Z.focus()})},[u,e]);function J(Z,ae){V(se=>({...se,[Z]:{...se[Z],...ae}}))}D.useEffect(()=>{var Z,ae;if(e)if(c(s),f((a==null?void 0:a.name)??""),p((a==null?void 0:a.url)??""),x((a==null?void 0:a.backend)??""),C((a==null?void 0:a.apiKey)??""),S((a==null?void 0:a.isLocal)??!1),N(null),O((a==null?void 0:a.thinkingField)??""),$({}),P(null),(Z=a==null?void 0:a.models)!=null&&Z.length){const se={};for(const oe of a.models)se[oe.id]={contextWindow:oe.contextWindow,supportsVision:oe.supportsVision,thinkingEnabled:oe.thinkingEnabled,thinkingLevel:oe.thinkingLevel??(oe.thinkingEnabled?"max":void 0),nonThinkingEnabled:oe.nonThinkingEnabled,thinkingExtraKwargs:oe.thinkingExtraKwargs,nonThinkingExtraKwargs:oe.nonThinkingExtraKwargs,thinkingQueryParams:oe.thinkingQueryParams,nonThinkingQueryParams:oe.nonThinkingQueryParams,defaultTemperature:oe.defaultTemperature,defaultTopP:oe.defaultTopP,defaultTopK:oe.defaultTopK,defaultMaxTokens:oe.defaultMaxTokens};V(se),L(a.models.map(oe=>({id:oe.id,contextWindow:oe.contextWindow}))),R(l??((ae=a.models[0])==null?void 0:ae.id)??null)}else L([]),V({}),R(null)},[e,s,a==null?void 0:a.id,l]),D.useEffect(()=>{u===2&&m&&T.length===0&&!b&&!E&&re(m)},[u]);async function re(Z){var ae,se;y(!0),N(null),L([]);try{const oe=new URLSearchParams({url:Z});w&&oe.set("apiKey",w);const je=await Ne(`/api/providers/models?${oe.toString()}`);if(je.ok){const Le=await je.json();if((ae=Le.models)!=null&&ae.length){L(Le.models),R(((se=Le.models[0])==null?void 0:se.id)??null);const De={};for(const Re of Le.models)De[Re.id]={contextWindow:Re.contextWindow,thinkingEnabled:!0,thinkingLevel:"max",defaultTemperature:Re.defaultTemperature,defaultTopP:Re.defaultTopP,defaultTopK:Re.defaultTopK,defaultMaxTokens:Re.defaultMaxTokens};V(De)}}else{const Le=await je.json();N(Le.error??`Failed to fetch models from ${Z}`)}}catch(oe){N(`Failed to fetch models from ${Z}: ${oe instanceof Error?oe.message:"Unknown error"}`)}y(!1)}async function Y(Z,ae){const se=Z+"-"+ae;$(De=>({...De,[se]:{loading:!0}}));const oe=U[Z],je={};let Le;if(ae==="thinking"){if(je.reasoning_effort=(oe==null?void 0:oe.thinkingLevel)??"low",z)try{je.chat_template_kwargs=JSON.parse(z)}catch{}if(oe!=null&&oe.thinkingQueryParams)try{Le=JSON.parse(oe.thinkingQueryParams)}catch{}}else{if(je.reasoning_effort="none",te)try{je.chat_template_kwargs=JSON.parse(te)}catch{}if(oe!=null&&oe.nonThinkingQueryParams)try{Le=JSON.parse(oe.nonThinkingQueryParams)}catch{}}try{const De=await Ne("/api/providers/test-params",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({url:m,model:Z,params:je,queryParams:Le,apiKey:w||void 0})}),Re=await De.json();De.ok?$(Te=>({...Te,[se]:{loading:!1,result:JSON.stringify(Re,null,2),message:Re.message}})):$(Te=>({...Te,[se]:{loading:!1,error:Re.error??"Test failed"}}))}catch(De){$(Re=>({...Re,[se]:{loading:!1,error:De instanceof Error?De.message:"Request failed"}}))}}function q(){const Z=d||"Provider",ae=(a==null?void 0:a.id)??`temp-${Date.now()}`;n({id:ae,name:Z,url:m,backend:_||"unknown",apiKey:w||void 0,isLocal:v||void 0,thinkingField:W||void 0,models:T.map(se=>{var oe,je,Le,De,Re,Te,Ae,pe,ce,Se,Ze,_t,dt;return{id:se.id,contextWindow:((oe=U[se.id])==null?void 0:oe.contextWindow)??se.contextWindow,supportsVision:(je=U[se.id])==null?void 0:je.supportsVision,thinkingEnabled:(Le=U[se.id])==null?void 0:Le.thinkingEnabled,thinkingLevel:(De=U[se.id])==null?void 0:De.thinkingLevel,nonThinkingEnabled:(Re=U[se.id])==null?void 0:Re.nonThinkingEnabled,thinkingExtraKwargs:(Te=U[se.id])==null?void 0:Te.thinkingExtraKwargs,nonThinkingExtraKwargs:(Ae=U[se.id])==null?void 0:Ae.nonThinkingExtraKwargs,thinkingQueryParams:(pe=U[se.id])==null?void 0:pe.thinkingQueryParams,nonThinkingQueryParams:(ce=U[se.id])==null?void 0:ce.nonThinkingQueryParams,temperature:(Se=U[se.id])==null?void 0:Se.temperature,topP:(Ze=U[se.id])==null?void 0:Ze.topP,topK:(_t=U[se.id])==null?void 0:_t.topK,maxTokens:(dt=U[se.id])==null?void 0:dt.maxTokens}})}),t()}return e?o.jsxs("div",{className:"fixed inset-0 bg-black/60 flex items-center justify-center z-50",onClick:Z=>{Z.target===Z.currentTarget&&t()},children:[o.jsxs("div",{className:"bg-bg-secondary border border-border rounded-xl w-[640px] max-h-[85vh] overflow-y-auto shadow-2xl",children:[o.jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-border",children:[o.jsx("h3",{className:"text-lg font-semibold text-text-primary",children:a?"Edit Provider":"Add Provider"}),o.jsx("button",{onClick:t,className:"text-text-muted hover:text-text-primary text-xl leading-none p-1",children:"×"})]}),o.jsx("div",{className:"flex gap-1.5 px-6 pt-4",children:[1,2,3].map(Z=>o.jsx("div",{className:`h-1 flex-1 rounded-full transition-colors ${Z<u?"bg-accent-success":Z===u?"bg-accent-primary":"bg-border"}`},Z))}),u===1&&o.jsxs("div",{className:"px-6 py-4 space-y-4",children:[o.jsxs("div",{children:[o.jsx("label",{className:"block text-sm text-text-secondary mb-2",children:"Common URLs"}),o.jsx("div",{className:"grid grid-cols-3 gap-2",children:ZB.map(Z=>o.jsxs("button",{type:"button",onClick:()=>{f(""),p(`http://localhost:${Z}`),x(""),N(null)},className:`p-2 rounded border text-center text-sm transition-colors ${m===`http://localhost:${Z}`?"border-accent-primary bg-accent-primary/10 text-accent-primary":"border-border hover:border-text-muted text-text-secondary"}`,children:["localhost:",Z]},Z))})]}),o.jsxs("div",{children:[o.jsx("label",{className:"block text-sm text-text-secondary mb-1",children:"Provider URL"}),o.jsx("input",{ref:ee,type:"text",value:m,"data-testid":"provider-modal-url",onChange:Z=>{p(Z.target.value),N(null),L([]),V({})},placeholder:"http://localhost:8000",className:"w-full px-4 py-2 bg-bg-primary border border-border rounded-lg text-text-primary placeholder-text-muted focus:outline-none focus:border-accent-primary"})]}),o.jsxs("div",{children:[o.jsx("label",{className:"block text-sm text-text-secondary mb-1",children:"Provider name"}),o.jsx("input",{type:"text",autoComplete:"off",value:d,onChange:Z=>f(Z.target.value),placeholder:"My LLM Server",className:"w-full px-4 py-2 bg-bg-primary border border-border rounded-lg text-text-primary placeholder-text-muted focus:outline-none focus:border-accent-primary"})]}),o.jsxs("div",{children:[o.jsxs("label",{className:"block text-sm text-text-secondary mb-1",children:["API key ",o.jsx("span",{className:"text-text-muted",children:"(optional)"})]}),o.jsx("input",{type:"text",autoComplete:"off",value:w,onChange:Z=>C(Z.target.value),placeholder:"sk-...",className:"w-full px-4 py-2 bg-bg-primary border border-border rounded-lg text-text-primary placeholder-text-muted focus:outline-none focus:border-accent-primary"})]}),o.jsxs("label",{className:"flex items-center gap-2 cursor-pointer",children:[o.jsx("input",{type:"checkbox",checked:v,onChange:Z=>S(Z.target.checked),className:"w-4 h-4 rounded border-border bg-bg-primary accent-accent-primary"}),o.jsx("span",{className:"text-sm text-text-secondary",children:"This is a local provider"})]})]}),u===2&&o.jsxs("div",{className:"px-6 py-4 space-y-4",children:[o.jsx("div",{children:o.jsxs("div",{className:"flex items-end gap-2",children:[o.jsxs("div",{className:"flex-1",children:[o.jsx("label",{className:"block text-sm text-text-secondary mb-1",children:"Backend type"}),o.jsxs("select",{value:_,onChange:Z=>x(Z.target.value),"data-testid":"provider-modal-backend",className:"w-full px-4 py-2 bg-bg-primary border border-border rounded-lg text-text-primary focus:outline-none focus:border-accent-primary",children:[o.jsx("option",{value:"",disabled:!0,children:"-- Select backend type --"}),e8.map(Z=>o.jsx("option",{value:Z.value,children:Z.label},Z.value))]})]}),o.jsx("button",{onClick:()=>G(!0),className:"px-3 h-[38px] bg-bg-primary border border-border rounded-lg hover:border-text-muted transition-colors flex items-center justify-center",title:"Provider-level defaults",children:o.jsx("svg",{className:"w-4 h-4 text-text-muted",viewBox:"0 0 20 20",fill:"currentColor",children:o.jsx("path",{fillRule:"evenodd",d:"M11.49 3.17c-.38-1.56-2.6-1.56-2.98 0a1.532 1.532 0 01-2.286.948c-1.372-.836-2.942.734-2.106 2.106.54.886.061 2.042-.947 2.287-1.561.379-1.561 2.6 0 2.978a1.532 1.532 0 01.947 2.287c-.836 1.372.734 2.942 2.106 2.106a1.532 1.532 0 012.287.947c.379 1.561 2.6 1.561 2.978 0a1.533 1.533 0 012.287-.947c1.372.836 2.942-.734 2.106-2.106a1.533 1.533 0 01.947-2.287c1.561-.379 1.561-2.6 0-2.978a1.532 1.532 0 01-.947-2.287c.836-1.372-.734-2.942-2.106-2.106a1.532 1.532 0 01-2.287-.947zM10 13a3 3 0 100-6 3 3 0 000 6z",clipRule:"evenodd"})})})]})}),b&&o.jsxs("div",{className:"flex items-center gap-2 text-sm text-text-muted",children:[o.jsx("span",{className:"w-4 h-4 border-2 border-accent-primary border-t-transparent rounded-full animate-spin"}),"Fetching models..."]}),E&&o.jsxs("div",{className:"p-3 rounded-lg text-sm bg-red-500/10 text-red-500 border border-red-500/20",children:[o.jsx("p",{children:E}),o.jsxs("p",{className:"text-xs text-text-muted mt-1",children:["URL: ",m]}),o.jsxs("div",{className:"flex gap-2 mt-2",children:[o.jsx("button",{onClick:()=>re(m),className:"text-xs text-accent-primary hover:underline",children:"Retry"}),o.jsx("button",{onClick:()=>c(1),className:"text-xs text-accent-primary hover:underline",children:"Edit URL"})]})]}),T.length>0&&o.jsxs(o.Fragment,{children:[o.jsxs("div",{children:[o.jsx("h4",{className:"text-sm font-medium text-text-primary mb-1",children:"Available Models"}),o.jsx("p",{className:"text-xs text-text-muted mb-3",children:"Configure each model's thinking behavior and parameters. Models without explicit config use provider defaults."})]}),o.jsx("div",{className:"space-y-2",children:T.map(Z=>{var ae,se,oe,je,Le,De,Re,Te,Ae,pe,ce,Se,Ze,_t,dt,tn,ge,Ce,Ie,Fe,Ve,St,Ye,wt,ct,nn,ht,jn,_n;return o.jsxs("div",{className:"bg-bg-primary border border-border rounded-lg overflow-hidden",children:[o.jsxs("button",{onClick:()=>R(A===Z.id?null:Z.id),className:"w-full flex items-center justify-between px-4 py-3 hover:bg-bg-tertiary transition-colors text-left",children:[o.jsxs("div",{className:"flex items-center gap-3",children:[o.jsx("span",{className:"text-sm font-medium text-text-primary",children:Z.id.split("/").pop()}),o.jsxs("span",{className:"text-xs text-text-muted bg-bg-tertiary px-2 py-0.5 rounded",children:[Z.contextWindow.toLocaleString()," ctx"]})]}),o.jsx(dr,{className:`w-4 h-4 text-text-muted transition-transform ${A===Z.id?"rotate-180":""}`})]}),A===Z.id&&o.jsxs("div",{className:"px-4 pb-4 border-t border-border pt-3 space-y-3",children:[o.jsxs("div",{className:"flex gap-3 items-end",children:[o.jsxs("div",{children:[o.jsx("label",{className:"text-xs text-text-secondary block mb-1",children:"Context window (tokens)"}),o.jsx("input",{type:"number",value:((ae=U[Z.id])==null?void 0:ae.contextWindow)??Z.contextWindow,onChange:ot=>J(Z.id,{contextWindow:parseInt(ot.target.value)||Z.contextWindow}),className:"w-32 px-2 py-1 bg-bg-tertiary border border-border rounded text-xs text-text-primary"})]}),o.jsxs("label",{className:"flex items-center gap-1.5 text-xs text-text-secondary pb-1",children:[o.jsx("input",{type:"checkbox",checked:((se=U[Z.id])==null?void 0:se.supportsVision)??!1,onChange:ot=>J(Z.id,{supportsVision:ot.target.checked}),className:"accent-accent-primary"})," ","Supports vision"]})]}),o.jsxs("div",{className:"space-y-2",children:[o.jsxs("label",{className:"flex items-center gap-2 cursor-pointer",children:[o.jsx("input",{type:"checkbox",checked:((oe=U[Z.id])==null?void 0:oe.thinkingEnabled)??!1,onChange:ot=>J(Z.id,{thinkingEnabled:ot.target.checked}),className:"w-4 h-4 rounded border-border bg-bg-tertiary accent-accent-primary"}),o.jsx("span",{className:"text-xs font-medium text-text-primary",children:"Thinking"})]}),((je=U[Z.id])==null?void 0:je.thinkingEnabled)&&o.jsxs("div",{className:"ml-6 space-y-2 pl-3 border-l-2 border-accent-primary/30",children:[o.jsxs("div",{children:[o.jsx("label",{className:"text-xs text-text-secondary block mb-1",children:"Reasoning effort"}),o.jsx("input",{type:"text",value:((Le=U[Z.id])==null?void 0:Le.thinkingLevel)??"max",onChange:ot=>J(Z.id,{thinkingLevel:ot.target.value}),className:"w-full px-2 py-1.5 bg-bg-tertiary border border-border rounded text-xs text-text-primary"})]}),o.jsx(Z0,{value:(De=U[Z.id])==null?void 0:De.thinkingQueryParams,onChange:ot=>J(Z.id,{thinkingQueryParams:ot})}),o.jsx(J0,{kwargs:z,onChange:X,mode:"thinking",modelId:Z.id,testResults:I,thinkingField:W,onSeeRaw:P,onTest:()=>Y(Z.id,"thinking")})]}),o.jsxs("label",{className:"flex items-center gap-2 cursor-pointer",children:[o.jsx("input",{type:"checkbox",checked:((Re=U[Z.id])==null?void 0:Re.nonThinkingEnabled)??!1,onChange:ot=>J(Z.id,{nonThinkingEnabled:ot.target.checked}),className:"w-4 h-4 rounded border-border bg-bg-tertiary accent-accent-primary"}),o.jsx("span",{className:"text-xs font-medium text-text-primary",children:"Non-thinking"})]}),((Te=U[Z.id])==null?void 0:Te.nonThinkingEnabled)&&o.jsxs("div",{className:"ml-6 space-y-2 pl-3 border-l-2 border-accent-warning/30",children:[o.jsx(Z0,{value:(Ae=U[Z.id])==null?void 0:Ae.nonThinkingQueryParams,onChange:ot=>J(Z.id,{nonThinkingQueryParams:ot})}),o.jsx(J0,{kwargs:te,onChange:H,mode:"non-thinking",modelId:Z.id,testResults:I,thinkingField:W,onSeeRaw:P,onTest:()=>Y(Z.id,"non-thinking")})]})]}),o.jsxs("div",{children:[o.jsx("span",{className:"text-xs text-accent-primary cursor-pointer hover:underline",onClick:()=>{var ot;return(ot=document.getElementById(`adv-${Z.id}`))==null?void 0:ot.classList.toggle("hidden")},children:"▸ Advanced parameters"}),o.jsxs("div",{id:`adv-${Z.id}`,className:"hidden mt-2 space-y-2",children:[o.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[o.jsxs("div",{children:[o.jsx("label",{className:"text-xs text-text-secondary block mb-0.5",children:"Temperature"}),o.jsx("input",{type:"number",step:"0.1",value:((pe=U[Z.id])==null?void 0:pe.temperature)??"",onChange:ot=>J(Z.id,{temperature:ot.target.value?parseFloat(ot.target.value):void 0}),placeholder:((Se=(ce=U[Z.id])==null?void 0:ce.defaultTemperature)==null?void 0:Se.toString())??"Using default",className:"w-full px-2 py-1 bg-bg-tertiary border border-border rounded text-xs text-text-primary text-text-secondary"}),((Ze=U[Z.id])==null?void 0:Ze.defaultTemperature)!==void 0&&o.jsxs("p",{className:"text-xs text-text-muted mt-0.5",children:["default: ",(_t=U[Z.id])==null?void 0:_t.defaultTemperature]})]}),o.jsxs("div",{children:[o.jsx("label",{className:"text-xs text-text-secondary block mb-0.5",children:"Top P"}),o.jsx("input",{type:"number",step:"0.05",value:((dt=U[Z.id])==null?void 0:dt.topP)??"",onChange:ot=>J(Z.id,{topP:ot.target.value?parseFloat(ot.target.value):void 0}),placeholder:((ge=(tn=U[Z.id])==null?void 0:tn.defaultTopP)==null?void 0:ge.toString())??"Using default",className:"w-full px-2 py-1 bg-bg-tertiary border border-border rounded text-xs text-text-primary"}),((Ce=U[Z.id])==null?void 0:Ce.defaultTopP)!==void 0&&o.jsxs("p",{className:"text-xs text-text-muted mt-0.5",children:["default: ",(Ie=U[Z.id])==null?void 0:Ie.defaultTopP]})]})]}),o.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[o.jsxs("div",{children:[o.jsx("label",{className:"text-xs text-text-secondary block mb-0.5",children:"Top K"}),o.jsx("input",{type:"number",value:((Fe=U[Z.id])==null?void 0:Fe.topK)??"",onChange:ot=>J(Z.id,{topK:ot.target.value?parseInt(ot.target.value):void 0}),placeholder:((St=(Ve=U[Z.id])==null?void 0:Ve.defaultTopK)==null?void 0:St.toString())??"Using default",className:"w-full px-2 py-1 bg-bg-tertiary border border-border rounded text-xs text-text-primary"}),((Ye=U[Z.id])==null?void 0:Ye.defaultTopK)!==void 0&&o.jsxs("p",{className:"text-xs text-text-muted mt-0.5",children:["default: ",(wt=U[Z.id])==null?void 0:wt.defaultTopK]})]}),o.jsxs("div",{children:[o.jsx("label",{className:"text-xs text-text-secondary block mb-0.5",children:"Max tokens"}),o.jsx("input",{type:"number",value:((ct=U[Z.id])==null?void 0:ct.maxTokens)??"",onChange:ot=>J(Z.id,{maxTokens:ot.target.value?parseInt(ot.target.value):void 0}),placeholder:((ht=(nn=U[Z.id])==null?void 0:nn.defaultMaxTokens)==null?void 0:ht.toString())??"Using default",className:"w-full px-2 py-1 bg-bg-tertiary border border-border rounded text-xs text-text-primary"}),((jn=U[Z.id])==null?void 0:jn.defaultMaxTokens)!==void 0&&o.jsxs("p",{className:"text-xs text-text-muted mt-0.5",children:["default: ",(_n=U[Z.id])==null?void 0:_n.defaultMaxTokens]})]})]})]})]})]})]},Z.id)})})]})]}),u===3&&o.jsx("div",{className:"px-6 py-4 space-y-4",children:o.jsxs("div",{className:"bg-bg-primary border border-border rounded-lg p-4",children:[o.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[o.jsx("span",{className:"text-sm font-medium text-text-primary",children:d||"Provider"}),o.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded-full bg-accent-primary/20 text-accent-primary",children:cp(_||"unknown")})]}),o.jsx("p",{className:"text-xs text-text-muted mb-3",children:m}),T.length>0&&o.jsxs("div",{className:"border-t border-border pt-3",children:[o.jsxs("p",{className:"text-xs text-text-secondary mb-2",children:["Models configured: ",o.jsx("strong",{children:T.length})]}),o.jsx("div",{className:"space-y-1",children:T.map(Z=>{var ae,se;return o.jsxs("div",{className:"text-xs text-text-muted flex items-center gap-2",children:[o.jsxs("span",{children:["• ",Z.id.split("/").pop()]}),o.jsxs("span",{className:"text-text-secondary",children:[Z.contextWindow.toLocaleString()," ctx"]}),((ae=U[Z.id])==null?void 0:ae.thinkingEnabled)&&o.jsx("span",{className:"text-accent-success",children:"thinking"}),((se=U[Z.id])==null?void 0:se.nonThinkingEnabled)&&o.jsx("span",{className:"text-accent-warning",children:"non-thinking"})]},Z.id)})})]})]})}),o.jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-t border-border",children:[o.jsx("div",{children:u>1&&o.jsx("button",{onClick:()=>c(u-1),className:"text-sm text-text-muted hover:text-text-secondary transition-colors",children:"← Back"})}),o.jsxs("div",{className:"flex gap-2",children:[o.jsx("button",{onClick:t,className:"px-4 py-2 text-sm text-text-muted hover:text-text-secondary transition-colors",children:"Cancel"}),u<3?o.jsx("button",{onClick:()=>c(u+1),disabled:u===1&&!m,"data-testid":"provider-modal-next",className:"px-5 py-2 bg-accent-primary text-text-primary rounded-lg text-sm font-medium hover:bg-accent-primary/90 disabled:opacity-50 transition-colors",children:u===1?"Next — Test & Configure":"Next — Review"}):o.jsx("button",{onClick:q,"data-testid":"provider-modal-save",className:"px-5 py-2 bg-accent-primary text-text-primary rounded-lg text-sm font-medium hover:bg-accent-primary/90 transition-colors",children:"Save Provider"})]})]})]}),M&&o.jsx("div",{className:"fixed inset-0 bg-black/60 flex items-center justify-center z-[60]",onClick:Z=>{Z.target===Z.currentTarget&&G(!1)},children:o.jsxs("div",{className:"bg-bg-secondary border border-border rounded-xl w-[480px] shadow-2xl",children:[o.jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-border",children:[o.jsx("h3",{className:"text-base font-semibold text-text-primary",children:"Provider-Level Defaults"}),o.jsx("button",{onClick:()=>G(!1),className:"text-text-muted hover:text-text-primary text-xl leading-none p-1",children:"×"})]}),o.jsxs("div",{className:"px-6 py-4 space-y-4",children:[o.jsx("p",{className:"text-xs text-text-muted",children:"These apply to all models unless overridden per-model."}),o.jsxs("div",{children:[o.jsx("label",{className:"text-xs text-text-secondary block mb-1",children:"Non-thinking mode params"}),o.jsx("input",{type:"text",defaultValue:'reasoning_effort: "none"',readOnly:!0,className:"w-full px-3 py-2 bg-bg-primary border border-border rounded text-sm text-text-secondary font-mono"})]}),o.jsxs("div",{children:[o.jsx("label",{className:"text-xs text-text-secondary block mb-1",children:"Thinking mode params"}),o.jsx("input",{type:"text",defaultValue:'reasoning_effort: "low"',readOnly:!0,className:"w-full px-3 py-2 bg-bg-primary border border-border rounded text-sm text-text-secondary font-mono"})]}),o.jsxs("div",{children:[o.jsxs("label",{className:"text-xs text-text-secondary block mb-1",children:["Thinking response field ",o.jsx("span",{className:"text-text-muted",children:"(override)"})]}),o.jsx("input",{type:"text",value:W,onChange:Z=>O(Z.target.value),placeholder:"Leave blank for auto-detect",className:"w-full px-3 py-2 bg-bg-primary border border-border rounded text-sm text-text-primary font-mono"}),o.jsx("p",{className:"text-xs text-text-muted mt-1",children:"Field name the backend uses for reasoning/thinking content (e.g. reasoning, reasoning_content, thinking)."})]})]}),o.jsx("div",{className:"flex justify-end px-6 py-4 border-t border-border",children:o.jsx("button",{onClick:()=>G(!1),className:"px-5 py-2 bg-accent-primary text-text-primary rounded-lg text-sm font-medium hover:bg-accent-primary/90 transition-colors",children:"Done"})})]})}),F&&o.jsx("div",{className:"fixed inset-0 bg-black/60 flex items-center justify-center z-[70]",onClick:Z=>{Z.target===Z.currentTarget&&P(null)},children:o.jsxs("div",{className:"bg-bg-secondary border border-border rounded-xl w-[600px] max-h-[70vh] shadow-2xl flex flex-col",children:[o.jsxs("div",{className:"flex items-center justify-between px-6 py-4 border-b border-border flex-shrink-0",children:[o.jsx("h3",{className:"text-base font-semibold text-text-primary",children:"Raw Response"}),o.jsx("button",{onClick:()=>P(null),className:"text-text-muted hover:text-text-primary text-xl leading-none p-1",children:"×"})]}),o.jsx("pre",{className:"px-6 py-4 overflow-y-auto text-xs text-text-secondary font-mono whitespace-pre-wrap flex-1",children:F})]})})]}):null}function t8(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(0)}K`:`${e}`}function n8(){var $;const[,e]=hr(),t=we(F=>F.currentSession),n=we(F=>F.setSessionProvider),[s,a]=D.useState(!1),[l,u]=D.useState([]),[c,d]=D.useState(null),f=D.useRef(null),[m,p]=D.useState(null),[_,x]=D.useState(!1),w=D.useRef(new Set),C=zt(F=>F.providers),v=zt(F=>F.activeProviderId),S=zt(F=>F.defaultModelSelection),b=zt(F=>F.activating),y=zt(F=>F.activateProvider),E=zt(F=>F.refreshModel),N=zt(F=>F.refreshProviderModels);D.useEffect(()=>{function F(P){f.current&&!f.current.contains(P.target)&&(a(!1),u([]),w.current=new Set)}return document.addEventListener("mousedown",F),()=>document.removeEventListener("mousedown",F)},[]),D.useEffect(()=>{if(s){const F=C.map(P=>P.id);u(F),F.forEach(P=>{w.current.has(P)||(w.current.add(P),G(P))})}},[s,C]);const T=C.find(F=>F.id===v),L=(T==null?void 0:T.status)==="disconnected",A=S?S.split("/").pop()??null:null,R=A?(($=A.split("/").pop())==null?void 0:$.replace(/-/g," "))??A:"detecting...",M=(F,P)=>S?S===`${F}/${P}`:!1,G=async F=>{d(F);try{await N(F)}catch{}finally{d(null)}},W=F=>{l.includes(F.id)?u(l.filter(P=>P!==F.id)):(u([...l,F.id]),G(F.id))},O=async F=>{if(F.id===v){W(F);return}t?(n(F.id,void 0),zt.getState().syncFromSession(F.id,""),a(!1),u([])):await y(F.id)&&(a(!1),u([]))},U=F=>{W(F)},V=async(F,P)=>{F.stopPropagation(),w.current.delete(P),await G(P)},z=(F,P)=>{p({providerId:F,model:P}),x(!0)},X=m?C.find(F=>F.id===m.providerId):void 0,te=()=>{p(null),x(!1)},H=async F=>{try{if(!(await Ne(`/api/providers/${F.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:F.name,url:F.url,backend:F.backend,apiKey:F.apiKey,isLocal:F.isLocal,thinkingField:F.thinkingField,models:F.models})})).ok)throw new Error("Failed to update provider");await zt.getState().fetchConfig()}catch{}p(null),x(!1)},I=async(F,P)=>{if(t){n(F,P),zt.getState().syncFromSession(F,P),u([]),a(!1);return}d("activating");try{zt.getState().syncFromSession(F,P),u([]),a(!1);const ee=await Ne(`/api/providers/${F}/activate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({model:P})});if(ee.ok){const J=await ee.json();zt.getState().syncFromSession(J.activeProviderId,J.model)}}catch{}finally{d(null)}};return C.length===0?o.jsxs("button",{type:"button",onClick:()=>E(),className:"flex items-center gap-1 px-1.5 py-0.5 rounded hover:bg-bg-tertiary transition-colors group",title:L?"LLM server is offline. Click to retry.":A??"Click to refresh model",children:[L?o.jsx("span",{className:"text-sm text-accent-error animate-pulse",children:"LLM offline"}):o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"text-sm text-accent-primary",children:R}),o.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded-full ${T!=null&&T.isLocal?"text-accent-success bg-accent-success/10":"text-accent-warning bg-accent-warning/10"}`,children:T!=null&&T.isLocal?"local":"api"})]}),o.jsx("span",{className:"text-text-muted opacity-0 group-hover:opacity-100 transition-opacity",children:"↻"})]}):o.jsxs("div",{className:"relative",ref:f,children:[o.jsxs("button",{type:"button",onClick:()=>a(!s),className:"flex items-center gap-1 px-1.5 py-0.5 rounded hover:bg-bg-tertiary transition-colors group",title:"Click to switch provider or model",children:[L?o.jsx("span",{className:"text-sm text-accent-error animate-pulse",children:"offline"}):o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"text-sm text-accent-primary",children:R}),o.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded-full ${T!=null&&T.isLocal?"text-accent-success bg-accent-success/10":"text-accent-warning bg-accent-warning/10"}`,children:T!=null&&T.isLocal?"local":"api"})]}),o.jsx(dr,{className:"w-3 h-3 text-text-muted transition-transform",rotate:s?180:0})]}),s&&o.jsxs("div",{className:"absolute bottom-full right-0 mb-1 w-72 bg-bg-secondary border border-border rounded-lg shadow-lg z-50 overflow-hidden max-h-[80vh] overflow-y-auto",children:[o.jsx("div",{className:"py-1",children:C.map(F=>{var P;return o.jsxs("div",{children:[o.jsxs("div",{className:`px-3 py-2 flex items-center justify-between ${F.id===v?"bg-bg-tertiary":"hover:bg-bg-tertiary"} ${b?"opacity-50 cursor-wait":"cursor-pointer"}`,children:[o.jsxs("div",{onClick:()=>!b&&O(F),className:"flex flex-col min-w-0 flex-1 cursor-pointer",children:[o.jsx("span",{className:`text-sm font-medium truncate ${F.id===v?"text-accent-primary":"text-text-primary"}`,children:F.name}),o.jsx("span",{className:"text-xs text-text-muted truncate",children:F.backend!=="unknown"&&cp(F.backend)})]}),o.jsxs("div",{className:"flex items-center gap-2 flex-shrink-0",children:[F.id===v?o.jsx("span",{className:"text-accent-success",title:"Active",children:o.jsx(Br,{className:"w-4 h-4"})}):o.jsx("span",{className:"w-4"}),o.jsx("button",{type:"button",onClick:ee=>{ee.stopPropagation(),V(ee,F.id)},className:"p-0.5 hover:bg-bg-tertiary rounded transition-colors",title:"Refresh models",children:o.jsx(fp,{className:`w-4 h-4 ${c===F.id?"animate-spin":""} ${F.id===v?"text-accent-primary":"text-text-muted"}`})}),o.jsx("button",{type:"button",onClick:ee=>{ee.stopPropagation(),U(F)},className:"p-0.5 hover:bg-bg-tertiary rounded transition-colors",title:"Show models",children:o.jsx(dr,{className:`w-4 h-4 transition-transform ${l.includes(F.id)?"rotate-180":""} ${F.id===v?"text-accent-primary":"text-text-muted"}`})})]})]}),l.includes(F.id)&&o.jsx("div",{className:"bg-bg-primary border-t border-border max-h-40 overflow-y-auto",children:c===F.id?o.jsx("div",{className:"px-4 py-2 text-xs text-text-muted",children:"Loading models..."}):(P=F.models)!=null&&P.length?F.models.map(ee=>{var J;return o.jsxs("button",{type:"button",onClick:()=>I(F.id,ee.id),disabled:c==="activating",className:`w-full px-4 py-1.5 text-left hover:bg-bg-tertiary transition-colors text-sm flex items-center justify-between group ${c==="activating"?"opacity-50 cursor-wait":""} ${M(F.id,ee.id)?"text-accent-primary":"text-text-secondary"}`,children:[o.jsx("span",{className:"truncate flex-1",children:((J=ee.id.split("/").pop())==null?void 0:J.replace(/-/g," "))??ee.id}),o.jsxs("div",{className:"flex items-center gap-2 flex-shrink-0",children:[o.jsx("span",{className:"text-xs text-text-muted",children:t8(ee.contextWindow)}),o.jsx("button",{type:"button",onClick:re=>{re.stopPropagation(),z(F.id,ee)},className:"opacity-0 group-hover:opacity-100 p-0.5 hover:bg-bg-tertiary rounded transition-opacity",title:"Edit model context",children:o.jsx(wj,{className:"w-3 h-3 text-text-muted"})})]}),M(F.id,ee.id)&&o.jsx("span",{className:"text-accent-success flex-shrink-0 ml-1",children:o.jsx(Br,{className:"w-3.5 h-3.5"})})]},ee.id)}):o.jsx("div",{className:"px-4 py-2 text-xs text-text-muted",children:"No models available"})})]},F.id)})}),o.jsx("div",{className:"border-t border-border px-3 py-2",children:o.jsx("button",{onClick:()=>e("/onboarding"),className:"text-xs text-accent-primary hover:underline",children:"Manage providers"})})]}),m&&_&&o.jsx(HC,{isOpen:!0,onClose:te,onSave:H,initialStep:2,editProvider:{id:m.providerId,name:(X==null?void 0:X.name)??"",url:(X==null?void 0:X.url)??"",backend:(X==null?void 0:X.backend)??"unknown",apiKey:X==null?void 0:X.apiKey,isLocal:X==null?void 0:X.isLocal,thinkingField:X==null?void 0:X.thinkingField,models:X==null?void 0:X.models},editModelId:m.model.id})]})}function r8({input:e,setInput:t,attachments:n,setAttachments:s,dragOver:a,setDragOver:l,errorMessage:u,setErrorMessage:c,scrollContainerRef:d,sessionId:f,sessionMode:m,showHistory:p,history:_,selectedIndex:x,openHistory:w,closeHistory:C,navigateUp:v,navigateDown:S,selectCurrent:b,isAutoScrollActive:y,setAutoScroll:E,onOpenMessageSearch:N,onOpenCommandsModal:T,onOpenWorkflowsModal:L,onSelectWorkflow:A,onSelectWorkflowWithSubGroup:R,clearInput:M}){const G=D.useRef(null),W=D.useRef(null),O=D.useRef(0),U=Bu(),V=we(se=>se.sendMessage),z=we(se=>se.stopGeneration),X=we(se=>se.cancelQueued),te=we(se=>se.queuedMessages),H=we(se=>se.restoredInput),I=we(se=>se.clearRestoredInput);D.useEffect(()=>{var se;H!==null&&(t(H),I(),(se=G.current)==null||se.focus())},[H,t,I]);const $=D.useCallback(()=>{const se=G.current;if(!se)return;const oe=e.length>=O.current;O.current=e.length,oe||(se.style.height="auto"),se.style.height=`${Math.min(200,se.scrollHeight)}px`},[e]);D.useEffect(()=>{if(!f)return;const se=`openfox:draft:${f}`,oe=localStorage.getItem(se);oe!==null&&t(oe)},[f,t]),D.useEffect(()=>{var se;(se=G.current)==null||se.focus(),$()},[f,$]),D.useEffect(()=>{if(!f)return;const se=`openfox:draft:${f}`,oe=setTimeout(()=>{e?localStorage.setItem(se,e):localStorage.removeItem(se)},500);return()=>clearTimeout(oe)},[f,e]),D.useEffect(()=>{$()},[e,$]),D.useEffect(()=>{const se=G.current;if(!se)return;const oe=async je=>{var De;if(document.activeElement!==se)return;const Le=(De=je.clipboardData)==null?void 0:De.items;if(Le){for(const Re of Array.from(Le))if(Re.type.startsWith("image/")){je.preventDefault();const Te=Re.getAsFile();if(!Te)continue;await bm(Te,Ae=>s([...n,Ae]),c,{filename:"pasted-image"})}}};return se.addEventListener("paste",oe),()=>se.removeEventListener("paste",oe)},[n,s,c]);const F=se=>{se.preventDefault(),!(!e.trim()&&n.length===0)&&(V(e,n.length>0?n:void 0),M())},P=se=>{if(p)switch(se.key){case"Enter":{se.preventDefault();const oe=b();oe&&(t(oe),C());return}case"Escape":se.preventDefault(),C(),U&&z();return;case"ArrowUp":se.preventDefault(),v();return;case"ArrowDown":se.preventDefault(),S();return}if(se.key==="ArrowUp"&&e.trim()===""&&!p){se.preventDefault(),w();return}se.key==="Enter"&&!se.shiftKey&&(se.preventDefault(),F(se))},ee=D.useCallback(async se=>{const oe=se.target.files;if(!(!oe||oe.length===0)){c(null);for(const je of Array.from(oe))await bm(je,Le=>s([...n,Le]),c);W.current&&(W.current.value="")}},[n,s,c]),J=D.useCallback(se=>{se.preventDefault(),se.stopPropagation(),l(!0)},[l]),re=D.useCallback(se=>{se.preventDefault(),se.stopPropagation(),l(!1)},[l]),Y=D.useCallback(async se=>{se.preventDefault(),se.stopPropagation(),l(!1),c(null);const oe=se.dataTransfer.files;if(!(!oe||oe.length===0))for(const je of Array.from(oe))await bm(je,Le=>s([...n,Le]),c)},[n,s,l,c]),q=D.useCallback(se=>{s(n.filter(oe=>oe.id!==se))},[n,s]),Z=D.useCallback(()=>{var se;(se=W.current)==null||se.click()},[]),ae=()=>{var se;!e.trim()&&n.length===0||((se=d.current)==null||se.scrollTo({top:d.current.scrollHeight,behavior:"smooth"}),V(e,n),M())};return o.jsxs("form",{onSubmit:F,className:"relative p-2 md:p-4 bg-secondary",children:[U&&o.jsx("div",{className:"absolute -top-8 left-2 md:left-4 z-10",children:o.jsx(NB,{})}),o.jsxs("div",{className:"absolute -top-8 right-2 md:right-4 z-10 flex items-center gap-2",children:[o.jsx(wp,{isActive:y,onToggle:E,className:"text-sm text-text-muted hover:text-text-primary flex items-center gap-1.5 px-2 py-0.5 rounded hover:bg-bg-tertiary transition-colors"}),o.jsxs("button",{type:"button",onClick:N,className:"text-sm text-text-muted hover:text-text-primary flex items-center gap-1.5 px-2 py-0.5 rounded hover:bg-bg-tertiary transition-colors","aria-label":"Browse history",children:[o.jsx(mp,{}),"Browse history"]})]}),o.jsx("input",{ref:W,type:"file",accept:".png,.jpg,.jpeg,.gif",onChange:ee,className:"hidden",multiple:!0}),u&&o.jsx("div",{className:"mb-2 p-2 bg-red-500/10 border border-red-500/50 rounded text-red-300 text-sm",children:u}),n.length>0&&o.jsx("div",{className:"mb-3 flex flex-wrap gap-2",children:n.map(se=>o.jsx(EB,{attachment:se,onRemove:q},se.id))}),p&&o.jsx(jB,{history:_,selectedIndex:x,onSelect:se=>{t(se),C()},onEscape:C,onNavigate:se=>{se==="up"?v():S()}}),o.jsx(VB,{messages:te,onCancel:X}),o.jsxs("div",{className:`flex items-end gap-3 p-3 rounded transition-colors ${a?"bg-accent-primary/10":"bg-primary"}`,onDragOver:J,onDragLeave:re,onDrop:Y,children:[o.jsx("textarea",{id:MS,ref:G,value:e,onChange:se=>{t(se.target.value),p&&C()},onKeyDown:P,placeholder:"What would you like to build?","data-testid":"chat-input-textarea",className:"flex-1 bg-transparent text-sm placeholder:text-text-muted resize-none overflow-y-auto focus:outline-none",style:{minHeight:"24px",maxHeight:"200px"},spellCheck:!1}),o.jsxs("div",{className:"flex items-center self-center gap-1.5",children:[U&&o.jsxs("button",{type:"button",onClick:()=>z(),"data-testid":"chat-stop-button",className:"flex items-center gap-1 px-4 py-1.5 rounded bg-accent-error/20 text-sm text-accent-error font-medium hover:bg-accent-error/30 transition-colors whitespace-nowrap",children:[o.jsx(SS,{}),"Abort"]}),o.jsxs("div",{className:"flex items-center",children:[o.jsx("button",{type:"button",onClick:ae,disabled:!e.trim()&&n.length===0,"data-testid":"chat-send-button",className:"px-4 py-1.5 rounded-l bg-accent-primary/20 text-sm text-accent-primary font-medium hover:bg-accent-primary/30 disabled:opacity-30 disabled:cursor-not-allowed transition-colors",children:"Send"}),o.jsx(UB,{onSendCommand:(se,oe,je,Le)=>{var Re;oe&&m!==oe&&we.getState().switchMode(oe);const De=je&&je.trim()?`${je.trim()}
298
+
299
+ ${se}`:se;(Re=d.current)==null||Re.scrollTo({top:d.current.scrollHeight,behavior:"smooth"}),V(De,Le!=null&&Le.length?Le:void 0,{messageKind:"command",isSystemGenerated:!0}),M()},onSelectWorkflow:A,onSelectWorkflowWithSubGroup:R,onOpenCommandsManager:T,onOpenWorkflowsManager:L,onAttach:Z,textareaContent:e,attachments:n.length>0?n:void 0})]})]})]}),o.jsxs("div",{className:"mt-3 flex items-center justify-between",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(XB,{}),o.jsx(QB,{})]}),o.jsx(n8,{})]})]})}function s8(e){return e==="criterion"||e==="session_metadata"}function i8(e){var t,n;return e.role!=="assistant"||e.subAgentId||(t=e.content)!=null&&t.trim()||(n=e.thinkingContent)!=null&&n.trim()||!e.toolCalls||e.toolCalls.length===0?!1:e.toolCalls.every(s=>s8(s.name))}function a8(e,t=[]){const n=[];let s=null,a=[],l,u=1;const c=new Map,d=new Map,f=[];for(const x of t)x.type==="message"?c.set(x.message.id,x):x.type==="subagent"?d.set(x.subAgentId,x):x.type==="criteria-batch"&&f.push(x);let m=0;const p=()=>{if(a.length>0){const x=f[m];x&&x.type==="criteria-batch"&&x.toolCalls.length===a.length&&x.toolCalls.every((C,v)=>{var S;return C.id===((S=a[v])==null?void 0:S.id)})?n.push(x):n.push({type:"criteria-batch",toolCalls:[...a]}),m++,a=[]}},_=()=>{if(!s)return;const x=s,w=d.get(x.subAgentId);w&&w.type==="subagent"&&w.messages.length===x.messages.length&&w.messages.every((v,S)=>v===x.messages[S])?n.push(w):n.push({type:"subagent",subAgentId:x.subAgentId,subAgentType:x.subAgentType,messages:x.messages}),s=null};for(const x of e)if(x.role!=="tool"){if(x.contextWindowId&&l&&x.contextWindowId!==l&&(p(),_(),u++,n.push({type:"context-divider",windowSequence:u})),l=x.contextWindowId,i8(x)){_();for(const w of x.toolCalls)a.push(w);continue}if(p(),x.subAgentId&&x.subAgentType)s&&s.subAgentId===x.subAgentId?s.messages.push(x):(_(),s={subAgentId:x.subAgentId,subAgentType:x.subAgentType,messages:[x]});else{_();const w=c.get(x.id);w&&w.type==="message"&&w.message===x?n.push(w):n.push({type:"message",message:x})}}return p(),_(),n}function o8(e){const{year:t,month:n,day:s}=HS(e);return`${t}/${n}/${s} ${Gu(e)}`}function l8(e,t){return e.length<=t?e:e.substring(0,t)+"..."}const c8=10,u8=150;function d8(e){const t=[];if(e.recentUserPrompts)for(const n of e.recentUserPrompts)t.push({id:n.id,content:n.content,timestamp:n.timestamp,sessionId:e.id,sessionName:e.title||e.id});return t}function h8(e){return[...e].sort((s,a)=>new Date(a.timestamp).getTime()-new Date(s.timestamp).getTime()).slice(0,c8).reverse().map(s=>({id:s.id,content:s.content,timestamp:s.timestamp,formattedTimestamp:o8(s.timestamp),trimmedContent:l8(s.content,u8),sessionId:s.sessionId,sessionName:s.sessionName}))}function f8(e,t,n){const s=[],a=e.filter(l=>l.role==="user"&&!l.isSystemGenerated&&l.messageKind!=="auto-prompt");for(const l of a)s.push({id:l.id,content:l.content,timestamp:l.timestamp,sessionId:n??"",sessionName:"This session"});for(const l of t)n&&l.id===n||s.push(...d8(l));return h8(s)}function m8(e,t=[],n=null){const[s,a]=D.useState(0),[l,u]=D.useState(!1),c=D.useMemo(()=>f8(e,t,n),[e,t,n]),d=D.useCallback(()=>{c.length>0&&(a(c.length-1),u(!0))},[c.length]),f=D.useCallback(()=>{u(!1),a(0)},[]),m=D.useCallback(()=>{a(x=>c.length===0?x:x===0?c.length-1:x-1)},[c.length]),p=D.useCallback(()=>{a(x=>c.length===0?x:x===c.length-1?0:x+1)},[c.length]),_=D.useCallback(()=>{if(c.length===0||!l)return null;const x=c[s];return(x==null?void 0:x.content)??null},[c,s,l]);return{history:c,selectedIndex:s,showHistory:l,openHistory:d,closeHistory:f,navigateUp:m,navigateDown:p,selectCurrent:_}}D.memo(function({item:t}){const[n,s]=D.useState(!1);return t.type==="start"?o.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 bg-amber-500/10 border border-amber-500/30 rounded text-amber-300 text-sm",children:[o.jsx("span",{className:"animate-pulse",children:"●"}),o.jsx("span",{children:"Delegating image to fallback vision model..."}),t.filename&&o.jsxs("span",{className:"text-amber-400/70",children:["(",t.filename,")"]})]}):o.jsxs("div",{className:"flex items-start gap-2 px-3 py-2 bg-accent-success/10 border border-accent-success/30 rounded",children:[o.jsx("span",{className:"text-accent-success",children:"✓"}),o.jsxs("div",{className:"flex-1 min-w-0",children:[o.jsxs("div",{className:"flex items-center justify-between gap-2",children:[o.jsx("span",{className:"text-accent-success text-sm",children:"Image description done"}),o.jsx("button",{type:"button",onClick:()=>s(!n),className:"text-xs text-accent-primary hover:text-accent-primary/80 transition-colors",children:n?"Hide":"Show"})]}),n&&t.description&&o.jsx("div",{className:"mt-2 text-xs prose prose-invert prose-sm max-w-none",children:o.jsx(fs,{content:t.description})})]})]})});function p8({criteriaSidebarOpen:e,onCriteriaSidebarToggle:t}={}){const n=e??!0,[s,a]=D.useState(""),[l,u]=D.useState([]),[c,d]=D.useState(!1),[f,m]=D.useState(null),[p,_]=D.useState(!1),[x,w]=D.useState(!1),[C,v]=D.useState(!1),[S,b]=D.useState(!1),[y,E]=D.useState(null),N=D.useRef(null),T=we(Ae=>Ae.currentSession),L=we(Ae=>Ae.messages),A=we(Ae=>Ae.streamingMessage),R=we(Ae=>Ae.sessions),M=Bu(),G=we(Ae=>Ae.sendMessage),W=we(Ae=>Ae.acceptAndBuild),O=we(Ae=>Ae.stopGeneration),U=we(Ae=>Ae.launchRunner),V=gt(Ae=>Ae.defaults),z=gt(Ae=>Ae.userItems),X=[...V,...z].filter(Ae=>!Ae.subagent),{history:te,selectedIndex:H,showHistory:I,openHistory:$,closeHistory:F,navigateUp:P,navigateDown:ee,selectCurrent:J}=m8(L,R,T==null?void 0:T.id);D.useEffect(()=>{const Ae=pe=>{E(pe.detail.stats)};return window.addEventListener("open-turn-stats",Ae),()=>window.removeEventListener("open-turn-stats",Ae)},[]),D.useEffect(()=>{jt.getState().fetchWorkflows()},[]);const re=D.useMemo(()=>A?L.map(Ae=>Ae.id===A.id?A:Ae):L,[L,A]),Y=D.useRef([]),q=D.useMemo(()=>{const Ae=a8(re,Y.current);return Y.current=Ae,Ae},[re]),{isAutoScrollActive:Z,setAutoScroll:ae}=qu(N,T),se=D.useCallback(Ae=>{var ce;ae(!1);const pe=document.querySelector(`[data-item-index="${Ae}"]`);pe&&(pe.scrollIntoView({behavior:"smooth",block:"start"}),(ce=pe.closest('[data-testid="chat-scroll-container"]'))==null||ce.scrollBy(0,-80))},[ae]);D.useEffect(()=>{const Ae=pe=>{const ce=C||p||x||S||y;pe.key==="Escape"&&M&&!ce&&O(),pe.key==="ScrollLock"&&ae(!Z)};return window.addEventListener("keydown",Ae),()=>window.removeEventListener("keydown",Ae)},[M,O,Z,C,p,x,S,y]);const oe=pp();jS(oe.quickAction,()=>{v(!0)}),Vj(oe.agentSwitching,X,Ae=>{we.getState().switchMode(Ae)});const je=(T==null?void 0:T.mode)==="planner",Le=(T==null?void 0:T.mode)==="builder",De=Ae=>{const pe=s.trim()?s:void 0,ce=l.length>0?l:void 0;je?W(Ae,pe,ce):Le&&U(pe,ce,Ae),Te()},Re=(Ae,pe)=>{const ce=s.trim()?s:void 0,Se=l.length>0?l:void 0;je?W(Ae,ce,Se,pe):Le&&U(ce,Se,Ae,pe),Te()},Te=()=>{a(""),u([]),T!=null&&T.id&&localStorage.removeItem(`openfox:draft:${T.id}`)};return o.jsxs(o.Fragment,{children:[o.jsxs(CT,{criteriaSidebarOpen:n,onCriteriaSidebarToggle:t,messages:re,children:[o.jsx(jT,{}),y&&o.jsx(NT,{stats:y,onClose:()=>E(null)}),o.jsx(lB,{}),o.jsx(aB,{displayItems:q,scrollContainerRef:N,highlightedMessageId:null}),o.jsx(r8,{input:s,setInput:a,attachments:l,setAttachments:u,dragOver:c,setDragOver:d,errorMessage:f,setErrorMessage:m,scrollContainerRef:N,sessionId:T==null?void 0:T.id,sessionMode:T==null?void 0:T.mode,showHistory:I,history:te,selectedIndex:H,openHistory:$,closeHistory:F,navigateUp:P,navigateDown:ee,selectCurrent:J,isAutoScrollActive:Z,setAutoScroll:ae,onOpenMessageSearch:()=>b(!0),onOpenCommandsModal:()=>_(!0),onOpenWorkflowsModal:()=>w(!0),onSelectWorkflow:De,onSelectWorkflowWithSubGroup:Re,clearInput:Te}),o.jsx(OC,{isOpen:p,onClose:()=>_(!1)}),o.jsx(PC,{isOpen:x,onClose:()=>w(!1)}),o.jsx(vB,{isOpen:C,onClose:()=>v(!1),onSearchMessages:()=>b(!0),isAutoScrollActive:Z,onToggleAutoScroll:ae,textareaContent:s,onCloseComplete:IS,onCloseCompleteAction:()=>window.dispatchEvent(new CustomEvent("open-session-dropdown")),onSelectCommand:async(Ae,pe)=>{const ce=await en.getState().fetchCommand(Ae);if(ce){const Se=pe!=null&&pe.trim()?`${pe.trim()}
300
+
301
+ ${ce.prompt}`:ce.prompt;ce.metadata.agentMode&&we.getState().switchMode(ce.metadata.agentMode),G(Se,l!=null&&l.length?l:void 0,{messageKind:"command",isSystemGenerated:!0}),Te()}},onSelectWorkflow:Ae=>{const pe=s.trim()||void 0,ce=l.length>0?l:void 0;(T==null?void 0:T.mode)==="planner"?we.getState().acceptAndBuild(Ae,pe,ce):we.getState().launchRunner(pe,ce,Ae),Te()}})]}),S&&o.jsx(kB,{isOpen:S,onClose:()=>b(!1),displayItems:q,onNavigate:se})]})}function eS({isOpen:e,isRetry:t,onSubmit:n,onCancel:s}){const[a,l]=D.useState(""),u=D.useRef(null);D.useEffect(()=>{e&&(l(""),setTimeout(()=>{var d;return(d=u.current)==null?void 0:d.focus()},100))},[e]);const c=d=>{d.preventDefault(),a.trim()&&n(a)};return o.jsx(Ot,{isOpen:e,onClose:s,title:t?"Invalid Password":"Password Required",size:"sm",children:o.jsxs("form",{onSubmit:c,className:"space-y-4",children:[o.jsx("p",{className:"text-text-secondary text-sm",children:t?"The password you entered was incorrect. Please try again.":"This server requires a password to connect."}),o.jsx(Vu,{ref:u,type:"password",value:a,onChange:d=>l(d.target.value),placeholder:"Enter password",autoFocus:!0}),o.jsxs("div",{className:"flex justify-end gap-2",children:[o.jsx(tt,{type:"button",variant:"secondary",onClick:s,children:"Cancel"}),o.jsx(tt,{type:"submit",disabled:!a.trim(),children:t?"Try Again":"Connect"})]})]})})}function g8({currentStep:e,totalSteps:t,labels:n,onStepClick:s}){return o.jsx("div",{className:"flex justify-center py-6",children:o.jsx("div",{className:"flex items-center",children:Array.from({length:t},(a,l)=>{const u=l+1,c=u<e,d=u===e;return o.jsxs("div",{className:"flex items-center",children:[o.jsx("button",{onClick:()=>s==null?void 0:s(u),className:`size-8 rounded-full flex items-center justify-center text-sm font-medium transition-colors shrink-0 ${c?"bg-accent-primary text-text-primary hover:opacity-80":d?"bg-accent-primary text-text-primary":"bg-bg-tertiary text-text-muted"}`,children:c?"✓":u}),o.jsx("button",{onClick:()=>s==null?void 0:s(u),className:`ml-2 mr-4 text-sm whitespace-nowrap hidden sm:block ${d?"text-text-primary font-medium":"text-text-muted hover:text-text-secondary"}`,children:n[l]}),l<t-1&&o.jsx("div",{className:`w-12 sm:w-20 h-0.5 mr-4 ${c?"bg-accent-primary":"bg-border"}`})]},l)})})})}function x8({onNext:e}){const[t,n]=D.useState([]),[s,a]=D.useState([]),[l,u]=D.useState(!1),[c,d]=D.useState(null),[f,m]=D.useState(null);D.useEffect(()=>{p()},[]);async function p(){try{const y=await Ne("/api/providers");if(y.ok){const N=(await y.json()).providers.map(T=>({id:T.id,name:T.name,url:T.url,backend:T.backend,model:null,apiKey:T.apiKey,isLocal:T.isLocal,thinkingField:T.thinkingField,models:T.models}));n(N),a(N)}}catch{}}async function _(y){const E=y.id.startsWith("temp-"),N={name:y.name,url:y.url,backend:y.backend,apiKey:y.apiKey,isLocal:y.isLocal,thinkingField:y.thinkingField,models:y.models};try{if(E){const T=await Ne("/api/providers",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(N)});if(T.ok){const L=await T.json(),A={...y,id:L.provider.id,model:null};a(R=>[...R,A]),n(R=>[...R,A])}}else await Ne(`/api/providers/${y.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(N)}),a(T=>T.map(L=>L.id===y.id?{...L,...y,model:null}:L)),n(T=>T.map(L=>L.id===y.id?{...L,...y,model:null}:L))}catch{if(E){const T={...y,model:null};a(L=>[...L,T])}}}function x(){d(null),u(!0)}function w(y){d(y),u(!0)}function C(){u(!1),d(null)}function v(y){m(y),t.some(N=>N.id===y)?Ne(`/api/providers/${y}`,{method:"DELETE"}).then(()=>{a(s.filter(N=>N.id!==y)),n(t.filter(N=>N.id!==y)),m(null)}).catch(()=>m(null)):(a(s.filter(N=>N.id!==y)),m(null))}function S(){const y=s.filter(E=>!E.id.startsWith("temp-"));e({providers:y})}const b=s.length>0;return o.jsxs("div",{className:"max-w-xl mx-auto",children:[o.jsx("h2",{className:"text-2xl font-bold text-text-primary mb-2",children:"LLM Providers"}),o.jsx("p",{className:"text-text-secondary mb-8",children:"Manage your LLM server connections"}),o.jsxs("div",{className:"space-y-4",children:[s.length>0?o.jsx("div",{className:"space-y-2",children:s.map(y=>o.jsxs("div",{className:"flex items-center justify-between bg-bg-secondary rounded-lg p-4 border border-border",children:[o.jsxs("div",{className:"flex-1",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"px-2 py-0.5 bg-accent-primary/25 text-accent-primary rounded text-xs font-medium",children:cp(y.backend)}),o.jsx("span",{className:"text-text-primary font-medium",children:y.name}),o.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded-full ${y.isLocal?"text-accent-success bg-accent-success/10":"text-accent-warning bg-accent-warning/10"}`,children:y.isLocal?"local":"api"})]}),o.jsx("p",{className:"text-text-muted text-sm mt-1",children:y.url}),y.model&&o.jsxs("p",{className:"text-text-secondary text-xs mt-0.5",children:["Model: ",y.model]})]}),o.jsxs("div",{className:"flex items-center gap-1",children:[o.jsx("button",{onClick:()=>w(y),className:"px-2 py-1 text-xs text-text-muted hover:text-text-secondary border border-border rounded transition-colors",children:"Edit"}),o.jsx("button",{onClick:()=>v(y.id),disabled:f===y.id,className:"p-2 text-text-muted hover:text-red-500 transition-colors disabled:opacity-50",title:"Remove provider",children:o.jsx(gl,{})})]})]},y.id))}):o.jsx("div",{className:"bg-bg-secondary rounded-lg p-8 text-center border border-border",children:o.jsx("p",{className:"text-text-muted",children:"No providers configured yet"})}),o.jsxs("button",{onClick:x,"data-testid":"onboarding-add-provider-button",className:"w-full flex items-center justify-center gap-2 px-4 py-3 bg-bg-secondary border border-dashed border-border rounded-lg text-text-secondary hover:text-text-primary hover:border-text-muted transition-colors",children:[o.jsx(Xs,{className:"w-4 h-4"}),"Add Provider"]}),o.jsx("button",{onClick:S,disabled:!b,"data-testid":"onboarding-continue-button",className:"w-full mt-6 px-6 py-3 bg-accent-primary text-text-primary rounded-lg font-medium hover:bg-accent-primary/90 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:"Continue"})]}),o.jsx(HC,{isOpen:l,onClose:C,onSave:_,initialStep:1,editProvider:c??void 0})]})}function _8({onNext:e}){const[t,n]=D.useState(""),[s,a]=D.useState(!1);return D.useEffect(()=>{Ne("/api/config").then(l=>l.json()).then(l=>{l.workdir?n(l.workdir):fetch("/api/directories?path="+encodeURIComponent("/home")).then(u=>u.json()).then(u=>{u.current&&n(u.current)}).catch(()=>{})}).catch(()=>{fetch("/api/directories?path="+encodeURIComponent("/home")).then(l=>l.json()).then(l=>{l.current&&n(l.current)}).catch(()=>{})})},[]),o.jsxs("div",{className:"max-w-xl mx-auto",children:[o.jsx("h2",{className:"text-2xl font-bold text-text-primary mb-2",children:"Your Projects Folder"}),o.jsx("p",{className:"text-text-secondary mb-8",children:"Where should OpenFox create project folders?"}),o.jsxs("div",{className:"space-y-4",children:[o.jsxs("div",{children:[o.jsx("label",{className:"block text-sm text-text-secondary mb-1",children:"Workspace directory"}),o.jsxs("div",{className:"flex gap-2",children:[o.jsx("input",{type:"text",value:t,onChange:l=>n(l.target.value),placeholder:"/home/user/projects","data-testid":"onboarding-workdir-input",className:"flex-1 px-4 py-2 bg-bg-secondary border border-border rounded-lg text-text-primary placeholder-text-muted focus:outline-none focus:border-accent-primary"}),o.jsx("button",{onClick:()=>a(!0),className:"px-4 py-2 bg-bg-secondary border border-border rounded-lg hover:border-text-muted",children:"Browse"})]})]}),s&&o.jsx(Sp,{initialPath:t||void 0,onSelect:l=>{n(l),a(!1)},onClose:()=>a(!1)}),o.jsx("button",{onClick:()=>e({workdir:t}),disabled:!t,"data-testid":"onboarding-workdir-continue-button",className:"w-full mt-6 px-6 py-3 bg-accent-primary text-text-primary rounded-lg font-medium hover:bg-accent-primary/90 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:"Continue"})]})]})}function y8({onNext:e}){const[t,n]=D.useState(!1),[s,a]=D.useState("http://localhost:11434"),[l,u]=D.useState("qwen3.5:0.8b"),{copied:c,copy:d}=NC();D.useEffect(()=>{Ne("/api/config").then(m=>m.json()).then(m=>{m.visionFallback&&(n(m.visionFallback.enabled),a(m.visionFallback.url),u(m.visionFallback.model))}).catch(()=>{})},[]);function f(m){if(m){e({});return}e({visionFallback:{enabled:t,url:s,model:l,timeout:120}})}return o.jsxs("div",{className:"max-w-xl mx-auto",children:[o.jsx("h2",{className:"text-2xl font-bold text-text-primary mb-2",children:"Vision (Optional)"}),o.jsx("p",{className:"text-text-secondary mb-8",children:"Configure a vision model for non-vision models"}),o.jsxs("div",{className:"space-y-6",children:[o.jsxs("div",{className:"bg-bg-secondary rounded-lg p-4 border border-border",children:[o.jsx("p",{className:"text-text-secondary text-sm mb-2",children:"To enable vision support, you need an Ollama server with a vision model:"}),o.jsx("a",{href:"https://ollama.com/download",target:"_blank",rel:"noopener noreferrer",className:"text-accent-primary hover:underline text-sm",children:"Download Ollama"}),o.jsxs("div",{className:"mt-3 p-2 bg-bg-primary rounded border border-border flex items-center justify-between gap-2",children:[o.jsx("code",{className:"text-text-secondary text-xs",children:"ollama pull qwen3.5:0.8b"}),o.jsx("button",{onClick:()=>d("ollama pull qwen3.5:0.8b"),className:"text-text-muted hover:text-text-primary transition-colors",title:"Copy",children:c?o.jsx(Br,{className:"w-4 h-4 text-accent-primary"}):o.jsx(Sj,{className:"w-4 h-4"})})]})]}),o.jsxs("label",{className:"flex items-center gap-3 cursor-pointer",children:[o.jsx("input",{type:"checkbox",checked:t,onChange:m=>n(m.target.checked),className:"w-5 h-5 rounded border-border bg-bg-secondary text-accent-primary focus:ring-accent-primary"}),o.jsx("span",{className:"text-text-primary",children:"Enable vision fallback for non-vision models"})]}),t&&o.jsxs("div",{className:"space-y-4 pl-8",children:[o.jsxs("div",{children:[o.jsx("label",{className:"block text-sm text-text-secondary mb-1",children:"Vision server URL"}),o.jsx("input",{type:"text",value:s,onChange:m=>a(m.target.value),placeholder:"http://localhost:11434",className:"w-full px-4 py-2 bg-bg-secondary border border-border rounded-lg text-text-primary placeholder-text-muted focus:outline-none focus:border-accent-primary"})]}),o.jsxs("div",{children:[o.jsx("label",{className:"block text-sm text-text-secondary mb-1",children:"Vision model name"}),o.jsx("input",{type:"text",value:l,onChange:m=>u(m.target.value),placeholder:"qwen3.5:0.8b",className:"w-full px-4 py-2 bg-bg-secondary border border-border rounded-lg text-text-primary placeholder-text-muted focus:outline-none focus:border-accent-primary"})]})]}),o.jsxs("div",{className:"flex items-center justify-between pt-4",children:[o.jsx("button",{onClick:()=>f(!0),"data-testid":"onboarding-skip-button",className:"text-text-muted hover:text-text-secondary text-sm underline",children:"Skip for now"}),o.jsx("button",{onClick:()=>f(!1),className:"px-6 py-3 bg-accent-primary text-text-primary rounded-lg font-medium hover:bg-accent-primary/90 transition-colors",children:"Finish Setup"})]})]})]})}function v8({onComplete:e}){const[t,n]=D.useState(1),[s,a]=D.useState(!1),[l,u]=D.useState({});async function c(p){u(_=>({..._,providers:p.providers})),n(2)}async function d(p){u(_=>({..._,...p})),n(3)}async function f(p){a(!0);try{if(!(await Ne("/api/init/config",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workdir:l.workdir,visionFallback:p.visionFallback})})).ok)throw new Error("Failed to save config");e()}catch(_){console.error("Failed to save onboarding data:",_),a(!1)}}const m=p=>{n(p)};return o.jsxs("div",{className:"w-full max-w-xl mx-auto px-6 py-16 relative",children:[o.jsx(vl,{onClick:e,className:"absolute top-4 right-4 p-2",variant:"modal",size:"xl"}),o.jsx(g8,{currentStep:t,totalSteps:3,labels:["LLM Server","Projects Folder","Vision"],onStepClick:m}),o.jsx("div",{className:"max-w-xl mx-auto",children:s?o.jsxs("div",{className:"text-center",children:[o.jsx(Xs,{className:"w-6 h-6"}),o.jsx("p",{className:"mt-4 text-text-secondary",children:"Saving your settings..."})]}):o.jsxs(o.Fragment,{children:[t===1&&o.jsx(x8,{onNext:c}),t===2&&o.jsx(_8,{onNext:d}),t===3&&o.jsx(y8,{onNext:f})]})})]})}const tS="openfox_updated_to",nS="update_pending";function b8(){const[e,t]=D.useState(!1),n=localStorage.getItem(tS),s=localStorage.getItem(nS);D.useEffect(()=>{if(!n||!s)return;const l=setTimeout(()=>t(!0),3e4);return()=>clearTimeout(l)},[n,s]);const a=()=>{localStorage.removeItem(tS),localStorage.removeItem(nS),t(!0)};return e||s!=="true"||!n?null:o.jsxs("div",{className:"fixed bottom-20 left-1/2 -translate-x-1/2 z-[100] flex items-center gap-3 px-4 py-2.5 bg-bg-secondary border border-border rounded-lg shadow-xl animate-slide-down",role:"status","aria-live":"polite",children:[o.jsx("div",{className:"flex items-center justify-center w-5 h-5 rounded-full bg-accent-primary/20",children:o.jsx(Br,{className:"w-3 h-3 text-accent-primary"})}),o.jsxs("div",{className:"flex flex-col",children:[o.jsx("span",{className:"text-sm font-medium text-text-primary",children:"OpenFox updated successfully"}),o.jsxs("span",{className:"text-xs text-text-muted",children:["Now running ",n]})]}),o.jsx("button",{onClick:a,className:"ml-2 p-1 rounded hover:bg-bg-tertiary text-text-muted hover:text-text-primary transition-colors","aria-label":"Dismiss",children:o.jsx(wS,{className:"w-3.5 h-3.5"})})]})}typeof window<"u"&&(Ft.getState().loadUserPresets(),Ft.getState().applySavedTheme());function ug(){return typeof window>"u"?!1:localStorage.getItem("openfox_token")!==null}function UC(){return o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx(yl,{})})}function S8({sidebarOpen:e,onSidebarToggle:t}){const[,n]=lp("/p/:projectId"),s=n==null?void 0:n.projectId,a=we(d=>d.connectionStatus),l=Rt(d=>d.currentProject),u=ug();return gj({canLoad:a==="connected"||u,projectId:s,currentProjectId:l==null?void 0:l.id}),!l||l.id!==s?o.jsx(UC,{}):o.jsxs(o.Fragment,{children:[o.jsx(FS,{projectId:s,isOpen:e,onClose:t}),o.jsx("div",{className:"flex-1 min-w-0 bg-primary",children:o.jsx(BN,{})})]})}function w8({sidebarOpen:e,onSidebarToggle:t,rightSidebarOpen:n,onRightSidebarToggle:s}){const[,a]=lp("/p/:projectId/s/:sessionId"),l=a==null?void 0:a.projectId,u=a==null?void 0:a.sessionId,[,c]=hr(),d=we(C=>C.connectionStatus),f=we(C=>C.currentSession),m=we(C=>C.error),p=we(C=>C.clearError),_=Rt(C=>C.currentProject),x=ug();return xj({canLoad:d==="connected"||x,projectId:l,sessionId:u,currentProjectId:_==null?void 0:_.id,currentSessionId:f==null?void 0:f.id}),D.useEffect(()=>{(m==null?void 0:m.code)==="NOT_FOUND"&&l&&(p(),c(`/p/${l}`))},[m,l,p,c]),!_||_.id!==l?o.jsx(UC,{}):o.jsxs(o.Fragment,{children:[o.jsx(FS,{projectId:l,isOpen:e,onClose:t}),o.jsx("div",{className:"flex-1 min-w-0 bg-primary",children:o.jsx(p8,{criteriaSidebarOpen:n,onCriteriaSidebarToggle:s})})]})}function C8(){const e=zt(n=>n.fetchConfig);function t(){e(),window.history.back()}return o.jsx("div",{className:"flex-1 overflow-y-auto",children:o.jsx(v8,{onComplete:t})})}function k8(){const{connectionStatus:e}=fj(),t=zt(V=>V.fetchConfig),n=zt(V=>V.refreshProviderModels),s=zt(V=>V.providers),a=zt(V=>V.activeProviderId),[,l]=hr(),u=ug(),[c,d]=D.useState(!1);D.useEffect(()=>{(e==="connected"||u)&&t().then(()=>{d(!0),on.getState().getSettings([...sS,ze.DISPLAY_THEME,ze.DISPLAY_USER_PRESETS,ze.KEYBINDINGS])})},[e,u,t]),D.useEffect(()=>{c&&a&&n(a).then(()=>{const V=zt.getState().defaultModelSelection;(V?V.split("/")[0]:null)!==a&&t()})},[c,a,n,t]);const f=on(V=>V.settings);D.useEffect(()=>{c&&s.length===0&&l("/onboarding")},[c,s.length]),D.useEffect(()=>{const{applyPreset:V,applyTokens:z,setFollowSystemTheme:X,initSystemThemeListener:te}=Ft.getState(),H=f[ze.DISPLAY_THEME],I=f[ze.DISPLAY_USER_PRESETS],$=f[ze.DISPLAY_FOLLOW_SYSTEM_THEME];if(I&&localStorage.setItem("openfox:userPresets",I),H){localStorage.setItem("openfox:theme",H);try{const P=JSON.parse(H);P.preset&&P.tokens?(V(P.preset),Ft.setState({basePreset:P.preset}),z(P.tokens)):P.preset?V(P.preset):P.tokens&&z(P.tokens)}catch{V("dark")}}else V("system");$!==void 0&&Ft.getState().followSystemTheme!==($==="true")&&X($==="true");const F=te();return()=>F()},[f[ze.DISPLAY_THEME],f[ze.DISPLAY_USER_PRESETS]]);const m=()=>{const V=localStorage.getItem("openfox:leftSidebar");return V!==null?V==="true":!0},p=()=>{const V=localStorage.getItem("openfox:rightSidebar");return V!==null?V==="true":!0},[_,x]=D.useState(m),[w,C]=D.useState(p),[v,S]=D.useState(!1),[b,y]=D.useState(!1),[E,N]=D.useState(!1),T=v2();D.useEffect(()=>{const V=()=>{N(window.innerWidth<768)};return V(),window.addEventListener("resize",V),()=>window.removeEventListener("resize",V)},[]);const L=E?v:_,A=E?b:w,R=()=>{E?S(!v):x(!_)},M=()=>{E?y(!b):C(!w)};D.useEffect(()=>{E||localStorage.setItem("openfox:leftSidebar",String(_))},[_,E]),D.useEffect(()=>{E||localStorage.setItem("openfox:rightSidebar",String(w))},[w,E]),D.useEffect(()=>{(e==="connected"||u)&&t()},[e,t,u]);const G=we(V=>V.showPasswordModal),W=we(V=>V.passwordModalRetry),O=we(V=>V.submitPassword),U=we(V=>V.cancelPassword);return e!=="connected"&&!G&&!u?o.jsxs(o.Fragment,{children:[o.jsx(eS,{isOpen:!0,isRetry:W,onSubmit:O,onCancel:U}),o.jsx("div",{className:"h-screen flex items-center justify-center",children:o.jsx(SN,{text:"Connecting to server..."})})]}):o.jsxs(o.Fragment,{children:[o.jsx(eS,{isOpen:G,isRetry:W,onSubmit:O,onCancel:U}),o.jsxs("div",{className:"flex flex-col",style:{height:E?`calc(${T.offsetTop}px + ${T.height}px)`:"100vh"},children:[o.jsx(ON,{}),o.jsx(NN,{onMenuClick:R,onCriteriaToggle:M}),o.jsx("div",{className:"flex-1 flex overflow-hidden",children:o.jsxs(U2,{children:[o.jsx(Ho,{path:"/onboarding",children:o.jsx(C8,{})}),o.jsx(Ho,{path:"/p/:projectId/s/:sessionId",children:o.jsx(w8,{sidebarOpen:L,onSidebarToggle:R,rightSidebarOpen:A,onRightSidebarToggle:M})}),o.jsx(Ho,{path:"/p/:projectId/new",children:o.jsx(PN,{})}),o.jsx(Ho,{path:"/p/:projectId",children:o.jsx(S8,{sidebarOpen:L,onSidebarToggle:R})}),o.jsx(Ho,{path:"/",children:o.jsx(IN,{})})]})})]}),o.jsx(b8,{})]})}p2.createRoot(document.getElementById("root")).render(o.jsx(Vs.StrictMode,{children:o.jsx(k8,{})}));