handmux 0.7.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -14
- package/README.zh-CN.md +16 -12
- package/package.json +3 -3
- package/public/assets/index-BD9dS7RY.css +32 -0
- package/public/assets/index-Bfjbl7JM.js +159 -0
- package/public/index.html +2 -2
- package/src/cli/updateCheck.js +19 -1
- package/src/git.js +27 -4
- package/src/httpApi.js +77 -16
- package/src/uploadTypes.js +2 -0
- package/public/assets/index-CCvTPJwI.js +0 -157
- package/public/assets/index-CYEn5HNU.css +0 -32
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
var F_=Object.defineProperty;var Nh=e=>{throw TypeError(e)};var H_=(e,t,i)=>t in e?F_(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i;var ct=(e,t,i)=>H_(e,typeof t!="symbol"?t+"":t,i),$_=(e,t,i)=>t.has(e)||Nh("Cannot "+i);var Ih=(e,t,i)=>t.has(e)?Nh("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,i);var so=(e,t,i)=>($_(e,t,"access private method"),i);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))s(n);new MutationObserver(n=>{for(const u of n)if(u.type==="childList")for(const p of u.addedNodes)p.tagName==="LINK"&&p.rel==="modulepreload"&&s(p)}).observe(document,{childList:!0,subtree:!0});function i(n){const u={};return n.integrity&&(u.integrity=n.integrity),n.referrerPolicy&&(u.referrerPolicy=n.referrerPolicy),n.crossOrigin==="use-credentials"?u.credentials="include":n.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function s(n){if(n.ep)return;n.ep=!0;const u=i(n);fetch(n.href,u)}})();var tp={exports:{}},Da={},ip={exports:{}},$e={};/**
|
|
2
|
+
* @license React
|
|
3
|
+
* react.production.min.js
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/var Un=Symbol.for("react.element"),z_=Symbol.for("react.portal"),U_=Symbol.for("react.fragment"),W_=Symbol.for("react.strict_mode"),V_=Symbol.for("react.profiler"),K_=Symbol.for("react.provider"),G_=Symbol.for("react.context"),q_=Symbol.for("react.forward_ref"),Y_=Symbol.for("react.suspense"),X_=Symbol.for("react.memo"),J_=Symbol.for("react.lazy"),Ph=Symbol.iterator;function Z_(e){return e===null||typeof e!="object"?null:(e=Ph&&e[Ph]||e["@@iterator"],typeof e=="function"?e:null)}var sp={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},rp=Object.assign,np={};function Fr(e,t,i){this.props=e,this.context=t,this.refs=np,this.updater=i||sp}Fr.prototype.isReactComponent={};Fr.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};Fr.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function op(){}op.prototype=Fr.prototype;function Yc(e,t,i){this.props=e,this.context=t,this.refs=np,this.updater=i||sp}var Xc=Yc.prototype=new op;Xc.constructor=Yc;rp(Xc,Fr.prototype);Xc.isPureReactComponent=!0;var Oh=Array.isArray,ap=Object.prototype.hasOwnProperty,Jc={current:null},lp={key:!0,ref:!0,__self:!0,__source:!0};function cp(e,t,i){var s,n={},u=null,p=null;if(t!=null)for(s in t.ref!==void 0&&(p=t.ref),t.key!==void 0&&(u=""+t.key),t)ap.call(t,s)&&!lp.hasOwnProperty(s)&&(n[s]=t[s]);var r=arguments.length-2;if(r===1)n.children=i;else if(1<r){for(var o=Array(r),f=0;f<r;f++)o[f]=arguments[f+2];n.children=o}if(e&&e.defaultProps)for(s in r=e.defaultProps,r)n[s]===void 0&&(n[s]=r[s]);return{$$typeof:Un,type:e,key:u,ref:p,props:n,_owner:Jc.current}}function Q_(e,t){return{$$typeof:Un,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function Zc(e){return typeof e=="object"&&e!==null&&e.$$typeof===Un}function ev(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(i){return t[i]})}var Bh=/\/+/g;function Za(e,t){return typeof e=="object"&&e!==null&&e.key!=null?ev(""+e.key):t.toString(36)}function Mo(e,t,i,s,n){var u=typeof e;(u==="undefined"||u==="boolean")&&(e=null);var p=!1;if(e===null)p=!0;else switch(u){case"string":case"number":p=!0;break;case"object":switch(e.$$typeof){case Un:case z_:p=!0}}if(p)return p=e,n=n(p),e=s===""?"."+Za(p,0):s,Oh(n)?(i="",e!=null&&(i=e.replace(Bh,"$&/")+"/"),Mo(n,t,i,"",function(f){return f})):n!=null&&(Zc(n)&&(n=Q_(n,i+(!n.key||p&&p.key===n.key?"":(""+n.key).replace(Bh,"$&/")+"/")+e)),t.push(n)),1;if(p=0,s=s===""?".":s+":",Oh(e))for(var r=0;r<e.length;r++){u=e[r];var o=s+Za(u,r);p+=Mo(u,t,i,o,n)}else if(o=Z_(e),typeof o=="function")for(e=o.call(e),r=0;!(u=e.next()).done;)u=u.value,o=s+Za(u,r++),p+=Mo(u,t,i,o,n);else if(u==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return p}function ro(e,t,i){if(e==null)return e;var s=[],n=0;return Mo(e,s,"","",function(u){return t.call(i,u,n++)}),s}function tv(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(i){(e._status===0||e._status===-1)&&(e._status=1,e._result=i)},function(i){(e._status===0||e._status===-1)&&(e._status=2,e._result=i)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var ti={current:null},No={transition:null},iv={ReactCurrentDispatcher:ti,ReactCurrentBatchConfig:No,ReactCurrentOwner:Jc};function up(){throw Error("act(...) is not supported in production builds of React.")}$e.Children={map:ro,forEach:function(e,t,i){ro(e,function(){t.apply(this,arguments)},i)},count:function(e){var t=0;return ro(e,function(){t++}),t},toArray:function(e){return ro(e,function(t){return t})||[]},only:function(e){if(!Zc(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};$e.Component=Fr;$e.Fragment=U_;$e.Profiler=V_;$e.PureComponent=Yc;$e.StrictMode=W_;$e.Suspense=Y_;$e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=iv;$e.act=up;$e.cloneElement=function(e,t,i){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var s=rp({},e.props),n=e.key,u=e.ref,p=e._owner;if(t!=null){if(t.ref!==void 0&&(u=t.ref,p=Jc.current),t.key!==void 0&&(n=""+t.key),e.type&&e.type.defaultProps)var r=e.type.defaultProps;for(o in t)ap.call(t,o)&&!lp.hasOwnProperty(o)&&(s[o]=t[o]===void 0&&r!==void 0?r[o]:t[o])}var o=arguments.length-2;if(o===1)s.children=i;else if(1<o){r=Array(o);for(var f=0;f<o;f++)r[f]=arguments[f+2];s.children=r}return{$$typeof:Un,type:e.type,key:n,ref:u,props:s,_owner:p}};$e.createContext=function(e){return e={$$typeof:G_,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:K_,_context:e},e.Consumer=e};$e.createElement=cp;$e.createFactory=function(e){var t=cp.bind(null,e);return t.type=e,t};$e.createRef=function(){return{current:null}};$e.forwardRef=function(e){return{$$typeof:q_,render:e}};$e.isValidElement=Zc;$e.lazy=function(e){return{$$typeof:J_,_payload:{_status:-1,_result:e},_init:tv}};$e.memo=function(e,t){return{$$typeof:X_,type:e,compare:t===void 0?null:t}};$e.startTransition=function(e){var t=No.transition;No.transition={};try{e()}finally{No.transition=t}};$e.unstable_act=up;$e.useCallback=function(e,t){return ti.current.useCallback(e,t)};$e.useContext=function(e){return ti.current.useContext(e)};$e.useDebugValue=function(){};$e.useDeferredValue=function(e){return ti.current.useDeferredValue(e)};$e.useEffect=function(e,t){return ti.current.useEffect(e,t)};$e.useId=function(){return ti.current.useId()};$e.useImperativeHandle=function(e,t,i){return ti.current.useImperativeHandle(e,t,i)};$e.useInsertionEffect=function(e,t){return ti.current.useInsertionEffect(e,t)};$e.useLayoutEffect=function(e,t){return ti.current.useLayoutEffect(e,t)};$e.useMemo=function(e,t){return ti.current.useMemo(e,t)};$e.useReducer=function(e,t,i){return ti.current.useReducer(e,t,i)};$e.useRef=function(e){return ti.current.useRef(e)};$e.useState=function(e){return ti.current.useState(e)};$e.useSyncExternalStore=function(e,t,i){return ti.current.useSyncExternalStore(e,t,i)};$e.useTransition=function(){return ti.current.useTransition()};$e.version="18.3.1";ip.exports=$e;var N=ip.exports;/**
|
|
10
|
+
* @license React
|
|
11
|
+
* react-jsx-runtime.production.min.js
|
|
12
|
+
*
|
|
13
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
14
|
+
*
|
|
15
|
+
* This source code is licensed under the MIT license found in the
|
|
16
|
+
* LICENSE file in the root directory of this source tree.
|
|
17
|
+
*/var sv=N,rv=Symbol.for("react.element"),nv=Symbol.for("react.fragment"),ov=Object.prototype.hasOwnProperty,av=sv.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,lv={key:!0,ref:!0,__self:!0,__source:!0};function hp(e,t,i){var s,n={},u=null,p=null;i!==void 0&&(u=""+i),t.key!==void 0&&(u=""+t.key),t.ref!==void 0&&(p=t.ref);for(s in t)ov.call(t,s)&&!lv.hasOwnProperty(s)&&(n[s]=t[s]);if(e&&e.defaultProps)for(s in t=e.defaultProps,t)n[s]===void 0&&(n[s]=t[s]);return{$$typeof:rv,type:e,key:u,ref:p,props:n,_owner:av.current}}Da.Fragment=nv;Da.jsx=hp;Da.jsxs=hp;tp.exports=Da;var v=tp.exports,dp={exports:{}},yi={},fp={exports:{}},pp={};/**
|
|
18
|
+
* @license React
|
|
19
|
+
* scheduler.production.min.js
|
|
20
|
+
*
|
|
21
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
22
|
+
*
|
|
23
|
+
* This source code is licensed under the MIT license found in the
|
|
24
|
+
* LICENSE file in the root directory of this source tree.
|
|
25
|
+
*/(function(e){function t(H,S){var M=H.length;H.push(S);e:for(;0<M;){var B=M-1>>>1,F=H[B];if(0<n(F,S))H[B]=S,H[M]=F,M=B;else break e}}function i(H){return H.length===0?null:H[0]}function s(H){if(H.length===0)return null;var S=H[0],M=H.pop();if(M!==S){H[0]=M;e:for(var B=0,F=H.length,G=F>>>1;B<G;){var J=2*(B+1)-1,se=H[J],te=J+1,z=H[te];if(0>n(se,M))te<F&&0>n(z,se)?(H[B]=z,H[te]=M,B=te):(H[B]=se,H[J]=M,B=J);else if(te<F&&0>n(z,M))H[B]=z,H[te]=M,B=te;else break e}}return S}function n(H,S){var M=H.sortIndex-S.sortIndex;return M!==0?M:H.id-S.id}if(typeof performance=="object"&&typeof performance.now=="function"){var u=performance;e.unstable_now=function(){return u.now()}}else{var p=Date,r=p.now();e.unstable_now=function(){return p.now()-r}}var o=[],f=[],_=1,c=null,m=3,y=!1,b=!1,g=!1,a=typeof setTimeout=="function"?setTimeout:null,h=typeof clearTimeout=="function"?clearTimeout:null,l=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function d(H){for(var S=i(f);S!==null;){if(S.callback===null)s(f);else if(S.startTime<=H)s(f),S.sortIndex=S.expirationTime,t(o,S);else break;S=i(f)}}function w(H){if(g=!1,d(H),!b)if(i(o)!==null)b=!0,$(k);else{var S=i(f);S!==null&&V(w,S.startTime-H)}}function k(H,S){b=!1,g&&(g=!1,h(x),x=-1),y=!0;var M=m;try{for(d(S),c=i(o);c!==null&&(!(c.expirationTime>S)||H&&!I());){var B=c.callback;if(typeof B=="function"){c.callback=null,m=c.priorityLevel;var F=B(c.expirationTime<=S);S=e.unstable_now(),typeof F=="function"?c.callback=F:c===i(o)&&s(o),d(S)}else s(o);c=i(o)}if(c!==null)var G=!0;else{var J=i(f);J!==null&&V(w,J.startTime-S),G=!1}return G}finally{c=null,m=M,y=!1}}var C=!1,L=null,x=-1,E=5,R=-1;function I(){return!(e.unstable_now()-R<E)}function T(){if(L!==null){var H=e.unstable_now();R=H;var S=!0;try{S=L(!0,H)}finally{S?A():(C=!1,L=null)}}else C=!1}var A;if(typeof l=="function")A=function(){l(T)};else if(typeof MessageChannel<"u"){var O=new MessageChannel,U=O.port2;O.port1.onmessage=T,A=function(){U.postMessage(null)}}else A=function(){a(T,0)};function $(H){L=H,C||(C=!0,A())}function V(H,S){x=a(function(){H(e.unstable_now())},S)}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(H){H.callback=null},e.unstable_continueExecution=function(){b||y||(b=!0,$(k))},e.unstable_forceFrameRate=function(H){0>H||125<H?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):E=0<H?Math.floor(1e3/H):5},e.unstable_getCurrentPriorityLevel=function(){return m},e.unstable_getFirstCallbackNode=function(){return i(o)},e.unstable_next=function(H){switch(m){case 1:case 2:case 3:var S=3;break;default:S=m}var M=m;m=S;try{return H()}finally{m=M}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(H,S){switch(H){case 1:case 2:case 3:case 4:case 5:break;default:H=3}var M=m;m=H;try{return S()}finally{m=M}},e.unstable_scheduleCallback=function(H,S,M){var B=e.unstable_now();switch(typeof M=="object"&&M!==null?(M=M.delay,M=typeof M=="number"&&0<M?B+M:B):M=B,H){case 1:var F=-1;break;case 2:F=250;break;case 5:F=1073741823;break;case 4:F=1e4;break;default:F=5e3}return F=M+F,H={id:_++,callback:S,priorityLevel:H,startTime:M,expirationTime:F,sortIndex:-1},M>B?(H.sortIndex=M,t(f,H),i(o)===null&&H===i(f)&&(g?(h(x),x=-1):g=!0,V(w,M-B))):(H.sortIndex=F,t(o,H),b||y||(b=!0,$(k))),H},e.unstable_shouldYield=I,e.unstable_wrapCallback=function(H){var S=m;return function(){var M=m;m=S;try{return H.apply(this,arguments)}finally{m=M}}}})(pp);fp.exports=pp;var cv=fp.exports;/**
|
|
26
|
+
* @license React
|
|
27
|
+
* react-dom.production.min.js
|
|
28
|
+
*
|
|
29
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
30
|
+
*
|
|
31
|
+
* This source code is licensed under the MIT license found in the
|
|
32
|
+
* LICENSE file in the root directory of this source tree.
|
|
33
|
+
*/var uv=N,wi=cv;function ue(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,i=1;i<arguments.length;i++)t+="&args[]="+encodeURIComponent(arguments[i]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var mp=new Set,bn={};function er(e,t){Mr(e,t),Mr(e+"Capture",t)}function Mr(e,t){for(bn[e]=t,e=0;e<t.length;e++)mp.add(t[e])}var ns=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),jl=Object.prototype.hasOwnProperty,hv=/^[: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]*$/,jh={},Fh={};function dv(e){return jl.call(Fh,e)?!0:jl.call(jh,e)?!1:hv.test(e)?Fh[e]=!0:(jh[e]=!0,!1)}function fv(e,t,i,s){if(i!==null&&i.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return s?!1:i!==null?!i.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function pv(e,t,i,s){if(t===null||typeof t>"u"||fv(e,t,i,s))return!0;if(s)return!1;if(i!==null)switch(i.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function ii(e,t,i,s,n,u,p){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=s,this.attributeNamespace=n,this.mustUseProperty=i,this.propertyName=e,this.type=t,this.sanitizeURL=u,this.removeEmptyString=p}var jt={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){jt[e]=new ii(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];jt[t]=new ii(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){jt[e]=new ii(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){jt[e]=new ii(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){jt[e]=new ii(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){jt[e]=new ii(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){jt[e]=new ii(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){jt[e]=new ii(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){jt[e]=new ii(e,5,!1,e.toLowerCase(),null,!1,!1)});var Qc=/[\-:]([a-z])/g;function eu(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Qc,eu);jt[t]=new ii(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Qc,eu);jt[t]=new ii(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Qc,eu);jt[t]=new ii(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){jt[e]=new ii(e,1,!1,e.toLowerCase(),null,!1,!1)});jt.xlinkHref=new ii("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){jt[e]=new ii(e,1,!1,e.toLowerCase(),null,!0,!0)});function tu(e,t,i,s){var n=jt.hasOwnProperty(t)?jt[t]:null;(n!==null?n.type!==0:s||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(pv(t,i,n,s)&&(i=null),s||n===null?dv(t)&&(i===null?e.removeAttribute(t):e.setAttribute(t,""+i)):n.mustUseProperty?e[n.propertyName]=i===null?n.type===3?!1:"":i:(t=n.attributeName,s=n.attributeNamespace,i===null?e.removeAttribute(t):(n=n.type,i=n===3||n===4&&i===!0?"":""+i,s?e.setAttributeNS(s,t,i):e.setAttribute(t,i))))}var us=uv.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,no=Symbol.for("react.element"),ur=Symbol.for("react.portal"),hr=Symbol.for("react.fragment"),iu=Symbol.for("react.strict_mode"),Fl=Symbol.for("react.profiler"),gp=Symbol.for("react.provider"),_p=Symbol.for("react.context"),su=Symbol.for("react.forward_ref"),Hl=Symbol.for("react.suspense"),$l=Symbol.for("react.suspense_list"),ru=Symbol.for("react.memo"),fs=Symbol.for("react.lazy"),vp=Symbol.for("react.offscreen"),Hh=Symbol.iterator;function Wr(e){return e===null||typeof e!="object"?null:(e=Hh&&e[Hh]||e["@@iterator"],typeof e=="function"?e:null)}var _t=Object.assign,Qa;function nn(e){if(Qa===void 0)try{throw Error()}catch(i){var t=i.stack.trim().match(/\n( *(at )?)/);Qa=t&&t[1]||""}return`
|
|
34
|
+
`+Qa+e}var el=!1;function tl(e,t){if(!e||el)return"";el=!0;var i=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(f){var s=f}Reflect.construct(e,[],t)}else{try{t.call()}catch(f){s=f}e.call(t.prototype)}else{try{throw Error()}catch(f){s=f}e()}}catch(f){if(f&&s&&typeof f.stack=="string"){for(var n=f.stack.split(`
|
|
35
|
+
`),u=s.stack.split(`
|
|
36
|
+
`),p=n.length-1,r=u.length-1;1<=p&&0<=r&&n[p]!==u[r];)r--;for(;1<=p&&0<=r;p--,r--)if(n[p]!==u[r]){if(p!==1||r!==1)do if(p--,r--,0>r||n[p]!==u[r]){var o=`
|
|
37
|
+
`+n[p].replace(" at new "," at ");return e.displayName&&o.includes("<anonymous>")&&(o=o.replace("<anonymous>",e.displayName)),o}while(1<=p&&0<=r);break}}}finally{el=!1,Error.prepareStackTrace=i}return(e=e?e.displayName||e.name:"")?nn(e):""}function mv(e){switch(e.tag){case 5:return nn(e.type);case 16:return nn("Lazy");case 13:return nn("Suspense");case 19:return nn("SuspenseList");case 0:case 2:case 15:return e=tl(e.type,!1),e;case 11:return e=tl(e.type.render,!1),e;case 1:return e=tl(e.type,!0),e;default:return""}}function zl(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case hr:return"Fragment";case ur:return"Portal";case Fl:return"Profiler";case iu:return"StrictMode";case Hl:return"Suspense";case $l:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case _p:return(e.displayName||"Context")+".Consumer";case gp:return(e._context.displayName||"Context")+".Provider";case su:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case ru:return t=e.displayName||null,t!==null?t:zl(e.type)||"Memo";case fs:t=e._payload,e=e._init;try{return zl(e(t))}catch{}}return null}function gv(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return zl(t);case 8:return t===iu?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Ls(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function wp(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function _v(e){var t=wp(e)?"checked":"value",i=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),s=""+e[t];if(!e.hasOwnProperty(t)&&typeof i<"u"&&typeof i.get=="function"&&typeof i.set=="function"){var n=i.get,u=i.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return n.call(this)},set:function(p){s=""+p,u.call(this,p)}}),Object.defineProperty(e,t,{enumerable:i.enumerable}),{getValue:function(){return s},setValue:function(p){s=""+p},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function oo(e){e._valueTracker||(e._valueTracker=_v(e))}function yp(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var i=t.getValue(),s="";return e&&(s=wp(e)?e.checked?"true":"false":e.value),e=s,e!==i?(t.setValue(e),!0):!1}function Go(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function Ul(e,t){var i=t.checked;return _t({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:i??e._wrapperState.initialChecked})}function $h(e,t){var i=t.defaultValue==null?"":t.defaultValue,s=t.checked!=null?t.checked:t.defaultChecked;i=Ls(t.value!=null?t.value:i),e._wrapperState={initialChecked:s,initialValue:i,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Sp(e,t){t=t.checked,t!=null&&tu(e,"checked",t,!1)}function Wl(e,t){Sp(e,t);var i=Ls(t.value),s=t.type;if(i!=null)s==="number"?(i===0&&e.value===""||e.value!=i)&&(e.value=""+i):e.value!==""+i&&(e.value=""+i);else if(s==="submit"||s==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Vl(e,t.type,i):t.hasOwnProperty("defaultValue")&&Vl(e,t.type,Ls(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function zh(e,t,i){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var s=t.type;if(!(s!=="submit"&&s!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,i||t===e.value||(e.value=t),e.defaultValue=t}i=e.name,i!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,i!==""&&(e.name=i)}function Vl(e,t,i){(t!=="number"||Go(e.ownerDocument)!==e)&&(i==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+i&&(e.defaultValue=""+i))}var on=Array.isArray;function kr(e,t,i,s){if(e=e.options,t){t={};for(var n=0;n<i.length;n++)t["$"+i[n]]=!0;for(i=0;i<e.length;i++)n=t.hasOwnProperty("$"+e[i].value),e[i].selected!==n&&(e[i].selected=n),n&&s&&(e[i].defaultSelected=!0)}else{for(i=""+Ls(i),t=null,n=0;n<e.length;n++){if(e[n].value===i){e[n].selected=!0,s&&(e[n].defaultSelected=!0);return}t!==null||e[n].disabled||(t=e[n])}t!==null&&(t.selected=!0)}}function Kl(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(ue(91));return _t({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Uh(e,t){var i=t.value;if(i==null){if(i=t.children,t=t.defaultValue,i!=null){if(t!=null)throw Error(ue(92));if(on(i)){if(1<i.length)throw Error(ue(93));i=i[0]}t=i}t==null&&(t=""),i=t}e._wrapperState={initialValue:Ls(i)}}function bp(e,t){var i=Ls(t.value),s=Ls(t.defaultValue);i!=null&&(i=""+i,i!==e.value&&(e.value=i),t.defaultValue==null&&e.defaultValue!==i&&(e.defaultValue=i)),s!=null&&(e.defaultValue=""+s)}function Wh(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function xp(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Gl(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?xp(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var ao,Cp=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,i,s,n){MSApp.execUnsafeLocalFunction(function(){return e(t,i,s,n)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(ao=ao||document.createElement("div"),ao.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=ao.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function xn(e,t){if(t){var i=e.firstChild;if(i&&i===e.lastChild&&i.nodeType===3){i.nodeValue=t;return}}e.textContent=t}var un={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},vv=["Webkit","ms","Moz","O"];Object.keys(un).forEach(function(e){vv.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),un[t]=un[e]})});function kp(e,t,i){return t==null||typeof t=="boolean"||t===""?"":i||typeof t!="number"||t===0||un.hasOwnProperty(e)&&un[e]?(""+t).trim():t+"px"}function Ep(e,t){e=e.style;for(var i in t)if(t.hasOwnProperty(i)){var s=i.indexOf("--")===0,n=kp(i,t[i],s);i==="float"&&(i="cssFloat"),s?e.setProperty(i,n):e[i]=n}}var wv=_t({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ql(e,t){if(t){if(wv[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(ue(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(ue(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(ue(61))}if(t.style!=null&&typeof t.style!="object")throw Error(ue(62))}}function Yl(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){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 Xl=null;function nu(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Jl=null,Er=null,Lr=null;function Vh(e){if(e=Kn(e)){if(typeof Jl!="function")throw Error(ue(280));var t=e.stateNode;t&&(t=Pa(t),Jl(e.stateNode,e.type,t))}}function Lp(e){Er?Lr?Lr.push(e):Lr=[e]:Er=e}function Rp(){if(Er){var e=Er,t=Lr;if(Lr=Er=null,Vh(e),t)for(e=0;e<t.length;e++)Vh(t[e])}}function Tp(e,t){return e(t)}function Dp(){}var il=!1;function Ap(e,t,i){if(il)return e(t,i);il=!0;try{return Tp(e,t,i)}finally{il=!1,(Er!==null||Lr!==null)&&(Dp(),Rp())}}function Cn(e,t){var i=e.stateNode;if(i===null)return null;var s=Pa(i);if(s===null)return null;i=s[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(s=!s.disabled)||(e=e.type,s=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!s;break e;default:e=!1}if(e)return null;if(i&&typeof i!="function")throw Error(ue(231,t,typeof i));return i}var Zl=!1;if(ns)try{var Vr={};Object.defineProperty(Vr,"passive",{get:function(){Zl=!0}}),window.addEventListener("test",Vr,Vr),window.removeEventListener("test",Vr,Vr)}catch{Zl=!1}function yv(e,t,i,s,n,u,p,r,o){var f=Array.prototype.slice.call(arguments,3);try{t.apply(i,f)}catch(_){this.onError(_)}}var hn=!1,qo=null,Yo=!1,Ql=null,Sv={onError:function(e){hn=!0,qo=e}};function bv(e,t,i,s,n,u,p,r,o){hn=!1,qo=null,yv.apply(Sv,arguments)}function xv(e,t,i,s,n,u,p,r,o){if(bv.apply(this,arguments),hn){if(hn){var f=qo;hn=!1,qo=null}else throw Error(ue(198));Yo||(Yo=!0,Ql=f)}}function tr(e){var t=e,i=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(i=t.return),e=t.return;while(e)}return t.tag===3?i:null}function Mp(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function Kh(e){if(tr(e)!==e)throw Error(ue(188))}function Cv(e){var t=e.alternate;if(!t){if(t=tr(e),t===null)throw Error(ue(188));return t!==e?null:e}for(var i=e,s=t;;){var n=i.return;if(n===null)break;var u=n.alternate;if(u===null){if(s=n.return,s!==null){i=s;continue}break}if(n.child===u.child){for(u=n.child;u;){if(u===i)return Kh(n),e;if(u===s)return Kh(n),t;u=u.sibling}throw Error(ue(188))}if(i.return!==s.return)i=n,s=u;else{for(var p=!1,r=n.child;r;){if(r===i){p=!0,i=n,s=u;break}if(r===s){p=!0,s=n,i=u;break}r=r.sibling}if(!p){for(r=u.child;r;){if(r===i){p=!0,i=u,s=n;break}if(r===s){p=!0,s=u,i=n;break}r=r.sibling}if(!p)throw Error(ue(189))}}if(i.alternate!==s)throw Error(ue(190))}if(i.tag!==3)throw Error(ue(188));return i.stateNode.current===i?e:t}function Np(e){return e=Cv(e),e!==null?Ip(e):null}function Ip(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=Ip(e);if(t!==null)return t;e=e.sibling}return null}var Pp=wi.unstable_scheduleCallback,Gh=wi.unstable_cancelCallback,kv=wi.unstable_shouldYield,Ev=wi.unstable_requestPaint,bt=wi.unstable_now,Lv=wi.unstable_getCurrentPriorityLevel,ou=wi.unstable_ImmediatePriority,Op=wi.unstable_UserBlockingPriority,Xo=wi.unstable_NormalPriority,Rv=wi.unstable_LowPriority,Bp=wi.unstable_IdlePriority,Aa=null,Yi=null;function Tv(e){if(Yi&&typeof Yi.onCommitFiberRoot=="function")try{Yi.onCommitFiberRoot(Aa,e,void 0,(e.current.flags&128)===128)}catch{}}var Bi=Math.clz32?Math.clz32:Mv,Dv=Math.log,Av=Math.LN2;function Mv(e){return e>>>=0,e===0?32:31-(Dv(e)/Av|0)|0}var lo=64,co=4194304;function an(e){switch(e&-e){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: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 e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Jo(e,t){var i=e.pendingLanes;if(i===0)return 0;var s=0,n=e.suspendedLanes,u=e.pingedLanes,p=i&268435455;if(p!==0){var r=p&~n;r!==0?s=an(r):(u&=p,u!==0&&(s=an(u)))}else p=i&~n,p!==0?s=an(p):u!==0&&(s=an(u));if(s===0)return 0;if(t!==0&&t!==s&&!(t&n)&&(n=s&-s,u=t&-t,n>=u||n===16&&(u&4194240)!==0))return t;if(s&4&&(s|=i&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=s;0<t;)i=31-Bi(t),n=1<<i,s|=e[i],t&=~n;return s}function Nv(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64: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 t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Iv(e,t){for(var i=e.suspendedLanes,s=e.pingedLanes,n=e.expirationTimes,u=e.pendingLanes;0<u;){var p=31-Bi(u),r=1<<p,o=n[p];o===-1?(!(r&i)||r&s)&&(n[p]=Nv(r,t)):o<=t&&(e.expiredLanes|=r),u&=~r}}function ec(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function jp(){var e=lo;return lo<<=1,!(lo&4194240)&&(lo=64),e}function sl(e){for(var t=[],i=0;31>i;i++)t.push(e);return t}function Wn(e,t,i){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Bi(t),e[t]=i}function Pv(e,t){var i=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var s=e.eventTimes;for(e=e.expirationTimes;0<i;){var n=31-Bi(i),u=1<<n;t[n]=0,s[n]=-1,e[n]=-1,i&=~u}}function au(e,t){var i=e.entangledLanes|=t;for(e=e.entanglements;i;){var s=31-Bi(i),n=1<<s;n&t|e[s]&t&&(e[s]|=t),i&=~n}}var et=0;function Fp(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var Hp,lu,$p,zp,Up,tc=!1,uo=[],ws=null,ys=null,Ss=null,kn=new Map,En=new Map,ms=[],Ov="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 submit".split(" ");function qh(e,t){switch(e){case"focusin":case"focusout":ws=null;break;case"dragenter":case"dragleave":ys=null;break;case"mouseover":case"mouseout":Ss=null;break;case"pointerover":case"pointerout":kn.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":En.delete(t.pointerId)}}function Kr(e,t,i,s,n,u){return e===null||e.nativeEvent!==u?(e={blockedOn:t,domEventName:i,eventSystemFlags:s,nativeEvent:u,targetContainers:[n]},t!==null&&(t=Kn(t),t!==null&&lu(t)),e):(e.eventSystemFlags|=s,t=e.targetContainers,n!==null&&t.indexOf(n)===-1&&t.push(n),e)}function Bv(e,t,i,s,n){switch(t){case"focusin":return ws=Kr(ws,e,t,i,s,n),!0;case"dragenter":return ys=Kr(ys,e,t,i,s,n),!0;case"mouseover":return Ss=Kr(Ss,e,t,i,s,n),!0;case"pointerover":var u=n.pointerId;return kn.set(u,Kr(kn.get(u)||null,e,t,i,s,n)),!0;case"gotpointercapture":return u=n.pointerId,En.set(u,Kr(En.get(u)||null,e,t,i,s,n)),!0}return!1}function Wp(e){var t=Fs(e.target);if(t!==null){var i=tr(t);if(i!==null){if(t=i.tag,t===13){if(t=Mp(i),t!==null){e.blockedOn=t,Up(e.priority,function(){$p(i)});return}}else if(t===3&&i.stateNode.current.memoizedState.isDehydrated){e.blockedOn=i.tag===3?i.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Io(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var i=ic(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(i===null){i=e.nativeEvent;var s=new i.constructor(i.type,i);Xl=s,i.target.dispatchEvent(s),Xl=null}else return t=Kn(i),t!==null&&lu(t),e.blockedOn=i,!1;t.shift()}return!0}function Yh(e,t,i){Io(e)&&i.delete(t)}function jv(){tc=!1,ws!==null&&Io(ws)&&(ws=null),ys!==null&&Io(ys)&&(ys=null),Ss!==null&&Io(Ss)&&(Ss=null),kn.forEach(Yh),En.forEach(Yh)}function Gr(e,t){e.blockedOn===t&&(e.blockedOn=null,tc||(tc=!0,wi.unstable_scheduleCallback(wi.unstable_NormalPriority,jv)))}function Ln(e){function t(n){return Gr(n,e)}if(0<uo.length){Gr(uo[0],e);for(var i=1;i<uo.length;i++){var s=uo[i];s.blockedOn===e&&(s.blockedOn=null)}}for(ws!==null&&Gr(ws,e),ys!==null&&Gr(ys,e),Ss!==null&&Gr(Ss,e),kn.forEach(t),En.forEach(t),i=0;i<ms.length;i++)s=ms[i],s.blockedOn===e&&(s.blockedOn=null);for(;0<ms.length&&(i=ms[0],i.blockedOn===null);)Wp(i),i.blockedOn===null&&ms.shift()}var Rr=us.ReactCurrentBatchConfig,Zo=!0;function Fv(e,t,i,s){var n=et,u=Rr.transition;Rr.transition=null;try{et=1,cu(e,t,i,s)}finally{et=n,Rr.transition=u}}function Hv(e,t,i,s){var n=et,u=Rr.transition;Rr.transition=null;try{et=4,cu(e,t,i,s)}finally{et=n,Rr.transition=u}}function cu(e,t,i,s){if(Zo){var n=ic(e,t,i,s);if(n===null)fl(e,t,s,Qo,i),qh(e,s);else if(Bv(n,e,t,i,s))s.stopPropagation();else if(qh(e,s),t&4&&-1<Ov.indexOf(e)){for(;n!==null;){var u=Kn(n);if(u!==null&&Hp(u),u=ic(e,t,i,s),u===null&&fl(e,t,s,Qo,i),u===n)break;n=u}n!==null&&s.stopPropagation()}else fl(e,t,s,null,i)}}var Qo=null;function ic(e,t,i,s){if(Qo=null,e=nu(s),e=Fs(e),e!==null)if(t=tr(e),t===null)e=null;else if(i=t.tag,i===13){if(e=Mp(t),e!==null)return e;e=null}else if(i===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Qo=e,null}function Vp(e){switch(e){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"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 1;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"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Lv()){case ou:return 1;case Op:return 4;case Xo:case Rv:return 16;case Bp:return 536870912;default:return 16}default:return 16}}var _s=null,uu=null,Po=null;function Kp(){if(Po)return Po;var e,t=uu,i=t.length,s,n="value"in _s?_s.value:_s.textContent,u=n.length;for(e=0;e<i&&t[e]===n[e];e++);var p=i-e;for(s=1;s<=p&&t[i-s]===n[u-s];s++);return Po=n.slice(e,1<s?1-s:void 0)}function Oo(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function ho(){return!0}function Xh(){return!1}function Si(e){function t(i,s,n,u,p){this._reactName=i,this._targetInst=n,this.type=s,this.nativeEvent=u,this.target=p,this.currentTarget=null;for(var r in e)e.hasOwnProperty(r)&&(i=e[r],this[r]=i?i(u):u[r]);return this.isDefaultPrevented=(u.defaultPrevented!=null?u.defaultPrevented:u.returnValue===!1)?ho:Xh,this.isPropagationStopped=Xh,this}return _t(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var i=this.nativeEvent;i&&(i.preventDefault?i.preventDefault():typeof i.returnValue!="unknown"&&(i.returnValue=!1),this.isDefaultPrevented=ho)},stopPropagation:function(){var i=this.nativeEvent;i&&(i.stopPropagation?i.stopPropagation():typeof i.cancelBubble!="unknown"&&(i.cancelBubble=!0),this.isPropagationStopped=ho)},persist:function(){},isPersistent:ho}),t}var Hr={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},hu=Si(Hr),Vn=_t({},Hr,{view:0,detail:0}),$v=Si(Vn),rl,nl,qr,Ma=_t({},Vn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:du,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==qr&&(qr&&e.type==="mousemove"?(rl=e.screenX-qr.screenX,nl=e.screenY-qr.screenY):nl=rl=0,qr=e),rl)},movementY:function(e){return"movementY"in e?e.movementY:nl}}),Jh=Si(Ma),zv=_t({},Ma,{dataTransfer:0}),Uv=Si(zv),Wv=_t({},Vn,{relatedTarget:0}),ol=Si(Wv),Vv=_t({},Hr,{animationName:0,elapsedTime:0,pseudoElement:0}),Kv=Si(Vv),Gv=_t({},Hr,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),qv=Si(Gv),Yv=_t({},Hr,{data:0}),Zh=Si(Yv),Xv={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Jv={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"},Zv={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Qv(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Zv[e])?!!t[e]:!1}function du(){return Qv}var e0=_t({},Vn,{key:function(e){if(e.key){var t=Xv[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Oo(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Jv[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:du,charCode:function(e){return e.type==="keypress"?Oo(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Oo(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),t0=Si(e0),i0=_t({},Ma,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Qh=Si(i0),s0=_t({},Vn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:du}),r0=Si(s0),n0=_t({},Hr,{propertyName:0,elapsedTime:0,pseudoElement:0}),o0=Si(n0),a0=_t({},Ma,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),l0=Si(a0),c0=[9,13,27,32],fu=ns&&"CompositionEvent"in window,dn=null;ns&&"documentMode"in document&&(dn=document.documentMode);var u0=ns&&"TextEvent"in window&&!dn,Gp=ns&&(!fu||dn&&8<dn&&11>=dn),ed=" ",td=!1;function qp(e,t){switch(e){case"keyup":return c0.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Yp(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var dr=!1;function h0(e,t){switch(e){case"compositionend":return Yp(t);case"keypress":return t.which!==32?null:(td=!0,ed);case"textInput":return e=t.data,e===ed&&td?null:e;default:return null}}function d0(e,t){if(dr)return e==="compositionend"||!fu&&qp(e,t)?(e=Kp(),Po=uu=_s=null,dr=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Gp&&t.locale!=="ko"?null:t.data;default:return null}}var f0={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 id(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!f0[e.type]:t==="textarea"}function Xp(e,t,i,s){Lp(s),t=ea(t,"onChange"),0<t.length&&(i=new hu("onChange","change",null,i,s),e.push({event:i,listeners:t}))}var fn=null,Rn=null;function p0(e){am(e,0)}function Na(e){var t=mr(e);if(yp(t))return e}function m0(e,t){if(e==="change")return t}var Jp=!1;if(ns){var al;if(ns){var ll="oninput"in document;if(!ll){var sd=document.createElement("div");sd.setAttribute("oninput","return;"),ll=typeof sd.oninput=="function"}al=ll}else al=!1;Jp=al&&(!document.documentMode||9<document.documentMode)}function rd(){fn&&(fn.detachEvent("onpropertychange",Zp),Rn=fn=null)}function Zp(e){if(e.propertyName==="value"&&Na(Rn)){var t=[];Xp(t,Rn,e,nu(e)),Ap(p0,t)}}function g0(e,t,i){e==="focusin"?(rd(),fn=t,Rn=i,fn.attachEvent("onpropertychange",Zp)):e==="focusout"&&rd()}function _0(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Na(Rn)}function v0(e,t){if(e==="click")return Na(t)}function w0(e,t){if(e==="input"||e==="change")return Na(t)}function y0(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Fi=typeof Object.is=="function"?Object.is:y0;function Tn(e,t){if(Fi(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var i=Object.keys(e),s=Object.keys(t);if(i.length!==s.length)return!1;for(s=0;s<i.length;s++){var n=i[s];if(!jl.call(t,n)||!Fi(e[n],t[n]))return!1}return!0}function nd(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function od(e,t){var i=nd(e);e=0;for(var s;i;){if(i.nodeType===3){if(s=e+i.textContent.length,e<=t&&s>=t)return{node:i,offset:t-e};e=s}e:{for(;i;){if(i.nextSibling){i=i.nextSibling;break e}i=i.parentNode}i=void 0}i=nd(i)}}function Qp(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Qp(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function em(){for(var e=window,t=Go();t instanceof e.HTMLIFrameElement;){try{var i=typeof t.contentWindow.location.href=="string"}catch{i=!1}if(i)e=t.contentWindow;else break;t=Go(e.document)}return t}function pu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function S0(e){var t=em(),i=e.focusedElem,s=e.selectionRange;if(t!==i&&i&&i.ownerDocument&&Qp(i.ownerDocument.documentElement,i)){if(s!==null&&pu(i)){if(t=s.start,e=s.end,e===void 0&&(e=t),"selectionStart"in i)i.selectionStart=t,i.selectionEnd=Math.min(e,i.value.length);else if(e=(t=i.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var n=i.textContent.length,u=Math.min(s.start,n);s=s.end===void 0?u:Math.min(s.end,n),!e.extend&&u>s&&(n=s,s=u,u=n),n=od(i,u);var p=od(i,s);n&&p&&(e.rangeCount!==1||e.anchorNode!==n.node||e.anchorOffset!==n.offset||e.focusNode!==p.node||e.focusOffset!==p.offset)&&(t=t.createRange(),t.setStart(n.node,n.offset),e.removeAllRanges(),u>s?(e.addRange(t),e.extend(p.node,p.offset)):(t.setEnd(p.node,p.offset),e.addRange(t)))}}for(t=[],e=i;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof i.focus=="function"&&i.focus(),i=0;i<t.length;i++)e=t[i],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var b0=ns&&"documentMode"in document&&11>=document.documentMode,fr=null,sc=null,pn=null,rc=!1;function ad(e,t,i){var s=i.window===i?i.document:i.nodeType===9?i:i.ownerDocument;rc||fr==null||fr!==Go(s)||(s=fr,"selectionStart"in s&&pu(s)?s={start:s.selectionStart,end:s.selectionEnd}:(s=(s.ownerDocument&&s.ownerDocument.defaultView||window).getSelection(),s={anchorNode:s.anchorNode,anchorOffset:s.anchorOffset,focusNode:s.focusNode,focusOffset:s.focusOffset}),pn&&Tn(pn,s)||(pn=s,s=ea(sc,"onSelect"),0<s.length&&(t=new hu("onSelect","select",null,t,i),e.push({event:t,listeners:s}),t.target=fr)))}function fo(e,t){var i={};return i[e.toLowerCase()]=t.toLowerCase(),i["Webkit"+e]="webkit"+t,i["Moz"+e]="moz"+t,i}var pr={animationend:fo("Animation","AnimationEnd"),animationiteration:fo("Animation","AnimationIteration"),animationstart:fo("Animation","AnimationStart"),transitionend:fo("Transition","TransitionEnd")},cl={},tm={};ns&&(tm=document.createElement("div").style,"AnimationEvent"in window||(delete pr.animationend.animation,delete pr.animationiteration.animation,delete pr.animationstart.animation),"TransitionEvent"in window||delete pr.transitionend.transition);function Ia(e){if(cl[e])return cl[e];if(!pr[e])return e;var t=pr[e],i;for(i in t)if(t.hasOwnProperty(i)&&i in tm)return cl[e]=t[i];return e}var im=Ia("animationend"),sm=Ia("animationiteration"),rm=Ia("animationstart"),nm=Ia("transitionend"),om=new Map,ld="abort auxClick 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(" ");function As(e,t){om.set(e,t),er(t,[e])}for(var ul=0;ul<ld.length;ul++){var hl=ld[ul],x0=hl.toLowerCase(),C0=hl[0].toUpperCase()+hl.slice(1);As(x0,"on"+C0)}As(im,"onAnimationEnd");As(sm,"onAnimationIteration");As(rm,"onAnimationStart");As("dblclick","onDoubleClick");As("focusin","onFocus");As("focusout","onBlur");As(nm,"onTransitionEnd");Mr("onMouseEnter",["mouseout","mouseover"]);Mr("onMouseLeave",["mouseout","mouseover"]);Mr("onPointerEnter",["pointerout","pointerover"]);Mr("onPointerLeave",["pointerout","pointerover"]);er("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));er("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));er("onBeforeInput",["compositionend","keypress","textInput","paste"]);er("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));er("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));er("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var ln="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(" "),k0=new Set("cancel close invalid load scroll toggle".split(" ").concat(ln));function cd(e,t,i){var s=e.type||"unknown-event";e.currentTarget=i,xv(s,t,void 0,e),e.currentTarget=null}function am(e,t){t=(t&4)!==0;for(var i=0;i<e.length;i++){var s=e[i],n=s.event;s=s.listeners;e:{var u=void 0;if(t)for(var p=s.length-1;0<=p;p--){var r=s[p],o=r.instance,f=r.currentTarget;if(r=r.listener,o!==u&&n.isPropagationStopped())break e;cd(n,r,f),u=o}else for(p=0;p<s.length;p++){if(r=s[p],o=r.instance,f=r.currentTarget,r=r.listener,o!==u&&n.isPropagationStopped())break e;cd(n,r,f),u=o}}}if(Yo)throw e=Ql,Yo=!1,Ql=null,e}function ut(e,t){var i=t[cc];i===void 0&&(i=t[cc]=new Set);var s=e+"__bubble";i.has(s)||(lm(t,e,2,!1),i.add(s))}function dl(e,t,i){var s=0;t&&(s|=4),lm(i,e,s,t)}var po="_reactListening"+Math.random().toString(36).slice(2);function Dn(e){if(!e[po]){e[po]=!0,mp.forEach(function(i){i!=="selectionchange"&&(k0.has(i)||dl(i,!1,e),dl(i,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[po]||(t[po]=!0,dl("selectionchange",!1,t))}}function lm(e,t,i,s){switch(Vp(t)){case 1:var n=Fv;break;case 4:n=Hv;break;default:n=cu}i=n.bind(null,t,i,e),n=void 0,!Zl||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(n=!0),s?n!==void 0?e.addEventListener(t,i,{capture:!0,passive:n}):e.addEventListener(t,i,!0):n!==void 0?e.addEventListener(t,i,{passive:n}):e.addEventListener(t,i,!1)}function fl(e,t,i,s,n){var u=s;if(!(t&1)&&!(t&2)&&s!==null)e:for(;;){if(s===null)return;var p=s.tag;if(p===3||p===4){var r=s.stateNode.containerInfo;if(r===n||r.nodeType===8&&r.parentNode===n)break;if(p===4)for(p=s.return;p!==null;){var o=p.tag;if((o===3||o===4)&&(o=p.stateNode.containerInfo,o===n||o.nodeType===8&&o.parentNode===n))return;p=p.return}for(;r!==null;){if(p=Fs(r),p===null)return;if(o=p.tag,o===5||o===6){s=u=p;continue e}r=r.parentNode}}s=s.return}Ap(function(){var f=u,_=nu(i),c=[];e:{var m=om.get(e);if(m!==void 0){var y=hu,b=e;switch(e){case"keypress":if(Oo(i)===0)break e;case"keydown":case"keyup":y=t0;break;case"focusin":b="focus",y=ol;break;case"focusout":b="blur",y=ol;break;case"beforeblur":case"afterblur":y=ol;break;case"click":if(i.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":y=Jh;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":y=Uv;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":y=r0;break;case im:case sm:case rm:y=Kv;break;case nm:y=o0;break;case"scroll":y=$v;break;case"wheel":y=l0;break;case"copy":case"cut":case"paste":y=qv;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":y=Qh}var g=(t&4)!==0,a=!g&&e==="scroll",h=g?m!==null?m+"Capture":null:m;g=[];for(var l=f,d;l!==null;){d=l;var w=d.stateNode;if(d.tag===5&&w!==null&&(d=w,h!==null&&(w=Cn(l,h),w!=null&&g.push(An(l,w,d)))),a)break;l=l.return}0<g.length&&(m=new y(m,b,null,i,_),c.push({event:m,listeners:g}))}}if(!(t&7)){e:{if(m=e==="mouseover"||e==="pointerover",y=e==="mouseout"||e==="pointerout",m&&i!==Xl&&(b=i.relatedTarget||i.fromElement)&&(Fs(b)||b[os]))break e;if((y||m)&&(m=_.window===_?_:(m=_.ownerDocument)?m.defaultView||m.parentWindow:window,y?(b=i.relatedTarget||i.toElement,y=f,b=b?Fs(b):null,b!==null&&(a=tr(b),b!==a||b.tag!==5&&b.tag!==6)&&(b=null)):(y=null,b=f),y!==b)){if(g=Jh,w="onMouseLeave",h="onMouseEnter",l="mouse",(e==="pointerout"||e==="pointerover")&&(g=Qh,w="onPointerLeave",h="onPointerEnter",l="pointer"),a=y==null?m:mr(y),d=b==null?m:mr(b),m=new g(w,l+"leave",y,i,_),m.target=a,m.relatedTarget=d,w=null,Fs(_)===f&&(g=new g(h,l+"enter",b,i,_),g.target=d,g.relatedTarget=a,w=g),a=w,y&&b)t:{for(g=y,h=b,l=0,d=g;d;d=rr(d))l++;for(d=0,w=h;w;w=rr(w))d++;for(;0<l-d;)g=rr(g),l--;for(;0<d-l;)h=rr(h),d--;for(;l--;){if(g===h||h!==null&&g===h.alternate)break t;g=rr(g),h=rr(h)}g=null}else g=null;y!==null&&ud(c,m,y,g,!1),b!==null&&a!==null&&ud(c,a,b,g,!0)}}e:{if(m=f?mr(f):window,y=m.nodeName&&m.nodeName.toLowerCase(),y==="select"||y==="input"&&m.type==="file")var k=m0;else if(id(m))if(Jp)k=w0;else{k=_0;var C=g0}else(y=m.nodeName)&&y.toLowerCase()==="input"&&(m.type==="checkbox"||m.type==="radio")&&(k=v0);if(k&&(k=k(e,f))){Xp(c,k,i,_);break e}C&&C(e,m,f),e==="focusout"&&(C=m._wrapperState)&&C.controlled&&m.type==="number"&&Vl(m,"number",m.value)}switch(C=f?mr(f):window,e){case"focusin":(id(C)||C.contentEditable==="true")&&(fr=C,sc=f,pn=null);break;case"focusout":pn=sc=fr=null;break;case"mousedown":rc=!0;break;case"contextmenu":case"mouseup":case"dragend":rc=!1,ad(c,i,_);break;case"selectionchange":if(b0)break;case"keydown":case"keyup":ad(c,i,_)}var L;if(fu)e:{switch(e){case"compositionstart":var x="onCompositionStart";break e;case"compositionend":x="onCompositionEnd";break e;case"compositionupdate":x="onCompositionUpdate";break e}x=void 0}else dr?qp(e,i)&&(x="onCompositionEnd"):e==="keydown"&&i.keyCode===229&&(x="onCompositionStart");x&&(Gp&&i.locale!=="ko"&&(dr||x!=="onCompositionStart"?x==="onCompositionEnd"&&dr&&(L=Kp()):(_s=_,uu="value"in _s?_s.value:_s.textContent,dr=!0)),C=ea(f,x),0<C.length&&(x=new Zh(x,e,null,i,_),c.push({event:x,listeners:C}),L?x.data=L:(L=Yp(i),L!==null&&(x.data=L)))),(L=u0?h0(e,i):d0(e,i))&&(f=ea(f,"onBeforeInput"),0<f.length&&(_=new Zh("onBeforeInput","beforeinput",null,i,_),c.push({event:_,listeners:f}),_.data=L))}am(c,t)})}function An(e,t,i){return{instance:e,listener:t,currentTarget:i}}function ea(e,t){for(var i=t+"Capture",s=[];e!==null;){var n=e,u=n.stateNode;n.tag===5&&u!==null&&(n=u,u=Cn(e,i),u!=null&&s.unshift(An(e,u,n)),u=Cn(e,t),u!=null&&s.push(An(e,u,n))),e=e.return}return s}function rr(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function ud(e,t,i,s,n){for(var u=t._reactName,p=[];i!==null&&i!==s;){var r=i,o=r.alternate,f=r.stateNode;if(o!==null&&o===s)break;r.tag===5&&f!==null&&(r=f,n?(o=Cn(i,u),o!=null&&p.unshift(An(i,o,r))):n||(o=Cn(i,u),o!=null&&p.push(An(i,o,r)))),i=i.return}p.length!==0&&e.push({event:t,listeners:p})}var E0=/\r\n?/g,L0=/\u0000|\uFFFD/g;function hd(e){return(typeof e=="string"?e:""+e).replace(E0,`
|
|
38
|
+
`).replace(L0,"")}function mo(e,t,i){if(t=hd(t),hd(e)!==t&&i)throw Error(ue(425))}function ta(){}var nc=null,oc=null;function ac(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var lc=typeof setTimeout=="function"?setTimeout:void 0,R0=typeof clearTimeout=="function"?clearTimeout:void 0,dd=typeof Promise=="function"?Promise:void 0,T0=typeof queueMicrotask=="function"?queueMicrotask:typeof dd<"u"?function(e){return dd.resolve(null).then(e).catch(D0)}:lc;function D0(e){setTimeout(function(){throw e})}function pl(e,t){var i=t,s=0;do{var n=i.nextSibling;if(e.removeChild(i),n&&n.nodeType===8)if(i=n.data,i==="/$"){if(s===0){e.removeChild(n),Ln(t);return}s--}else i!=="$"&&i!=="$?"&&i!=="$!"||s++;i=n}while(i);Ln(t)}function bs(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function fd(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var i=e.data;if(i==="$"||i==="$!"||i==="$?"){if(t===0)return e;t--}else i==="/$"&&t++}e=e.previousSibling}return null}var $r=Math.random().toString(36).slice(2),Ki="__reactFiber$"+$r,Mn="__reactProps$"+$r,os="__reactContainer$"+$r,cc="__reactEvents$"+$r,A0="__reactListeners$"+$r,M0="__reactHandles$"+$r;function Fs(e){var t=e[Ki];if(t)return t;for(var i=e.parentNode;i;){if(t=i[os]||i[Ki]){if(i=t.alternate,t.child!==null||i!==null&&i.child!==null)for(e=fd(e);e!==null;){if(i=e[Ki])return i;e=fd(e)}return t}e=i,i=e.parentNode}return null}function Kn(e){return e=e[Ki]||e[os],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function mr(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(ue(33))}function Pa(e){return e[Mn]||null}var uc=[],gr=-1;function Ms(e){return{current:e}}function ht(e){0>gr||(e.current=uc[gr],uc[gr]=null,gr--)}function nt(e,t){gr++,uc[gr]=e.current,e.current=t}var Rs={},Gt=Ms(Rs),ai=Ms(!1),Ws=Rs;function Nr(e,t){var i=e.type.contextTypes;if(!i)return Rs;var s=e.stateNode;if(s&&s.__reactInternalMemoizedUnmaskedChildContext===t)return s.__reactInternalMemoizedMaskedChildContext;var n={},u;for(u in i)n[u]=t[u];return s&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=n),n}function li(e){return e=e.childContextTypes,e!=null}function ia(){ht(ai),ht(Gt)}function pd(e,t,i){if(Gt.current!==Rs)throw Error(ue(168));nt(Gt,t),nt(ai,i)}function cm(e,t,i){var s=e.stateNode;if(t=t.childContextTypes,typeof s.getChildContext!="function")return i;s=s.getChildContext();for(var n in s)if(!(n in t))throw Error(ue(108,gv(e)||"Unknown",n));return _t({},i,s)}function sa(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Rs,Ws=Gt.current,nt(Gt,e),nt(ai,ai.current),!0}function md(e,t,i){var s=e.stateNode;if(!s)throw Error(ue(169));i?(e=cm(e,t,Ws),s.__reactInternalMemoizedMergedChildContext=e,ht(ai),ht(Gt),nt(Gt,e)):ht(ai),nt(ai,i)}var es=null,Oa=!1,ml=!1;function um(e){es===null?es=[e]:es.push(e)}function N0(e){Oa=!0,um(e)}function Ns(){if(!ml&&es!==null){ml=!0;var e=0,t=et;try{var i=es;for(et=1;e<i.length;e++){var s=i[e];do s=s(!0);while(s!==null)}es=null,Oa=!1}catch(n){throw es!==null&&(es=es.slice(e+1)),Pp(ou,Ns),n}finally{et=t,ml=!1}}return null}var _r=[],vr=0,ra=null,na=0,xi=[],Ci=0,Vs=null,ts=1,is="";function Os(e,t){_r[vr++]=na,_r[vr++]=ra,ra=e,na=t}function hm(e,t,i){xi[Ci++]=ts,xi[Ci++]=is,xi[Ci++]=Vs,Vs=e;var s=ts;e=is;var n=32-Bi(s)-1;s&=~(1<<n),i+=1;var u=32-Bi(t)+n;if(30<u){var p=n-n%5;u=(s&(1<<p)-1).toString(32),s>>=p,n-=p,ts=1<<32-Bi(t)+n|i<<n|s,is=u+e}else ts=1<<u|i<<n|s,is=e}function mu(e){e.return!==null&&(Os(e,1),hm(e,1,0))}function gu(e){for(;e===ra;)ra=_r[--vr],_r[vr]=null,na=_r[--vr],_r[vr]=null;for(;e===Vs;)Vs=xi[--Ci],xi[Ci]=null,is=xi[--Ci],xi[Ci]=null,ts=xi[--Ci],xi[Ci]=null}var vi=null,_i=null,ft=!1,Oi=null;function dm(e,t){var i=ki(5,null,null,0);i.elementType="DELETED",i.stateNode=t,i.return=e,t=e.deletions,t===null?(e.deletions=[i],e.flags|=16):t.push(i)}function gd(e,t){switch(e.tag){case 5:var i=e.type;return t=t.nodeType!==1||i.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,vi=e,_i=bs(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,vi=e,_i=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(i=Vs!==null?{id:ts,overflow:is}:null,e.memoizedState={dehydrated:t,treeContext:i,retryLane:1073741824},i=ki(18,null,null,0),i.stateNode=t,i.return=e,e.child=i,vi=e,_i=null,!0):!1;default:return!1}}function hc(e){return(e.mode&1)!==0&&(e.flags&128)===0}function dc(e){if(ft){var t=_i;if(t){var i=t;if(!gd(e,t)){if(hc(e))throw Error(ue(418));t=bs(i.nextSibling);var s=vi;t&&gd(e,t)?dm(s,i):(e.flags=e.flags&-4097|2,ft=!1,vi=e)}}else{if(hc(e))throw Error(ue(418));e.flags=e.flags&-4097|2,ft=!1,vi=e}}}function _d(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;vi=e}function go(e){if(e!==vi)return!1;if(!ft)return _d(e),ft=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!ac(e.type,e.memoizedProps)),t&&(t=_i)){if(hc(e))throw fm(),Error(ue(418));for(;t;)dm(e,t),t=bs(t.nextSibling)}if(_d(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(ue(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var i=e.data;if(i==="/$"){if(t===0){_i=bs(e.nextSibling);break e}t--}else i!=="$"&&i!=="$!"&&i!=="$?"||t++}e=e.nextSibling}_i=null}}else _i=vi?bs(e.stateNode.nextSibling):null;return!0}function fm(){for(var e=_i;e;)e=bs(e.nextSibling)}function Ir(){_i=vi=null,ft=!1}function _u(e){Oi===null?Oi=[e]:Oi.push(e)}var I0=us.ReactCurrentBatchConfig;function Yr(e,t,i){if(e=i.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(i._owner){if(i=i._owner,i){if(i.tag!==1)throw Error(ue(309));var s=i.stateNode}if(!s)throw Error(ue(147,e));var n=s,u=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===u?t.ref:(t=function(p){var r=n.refs;p===null?delete r[u]:r[u]=p},t._stringRef=u,t)}if(typeof e!="string")throw Error(ue(284));if(!i._owner)throw Error(ue(290,e))}return e}function _o(e,t){throw e=Object.prototype.toString.call(t),Error(ue(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function vd(e){var t=e._init;return t(e._payload)}function pm(e){function t(h,l){if(e){var d=h.deletions;d===null?(h.deletions=[l],h.flags|=16):d.push(l)}}function i(h,l){if(!e)return null;for(;l!==null;)t(h,l),l=l.sibling;return null}function s(h,l){for(h=new Map;l!==null;)l.key!==null?h.set(l.key,l):h.set(l.index,l),l=l.sibling;return h}function n(h,l){return h=Es(h,l),h.index=0,h.sibling=null,h}function u(h,l,d){return h.index=d,e?(d=h.alternate,d!==null?(d=d.index,d<l?(h.flags|=2,l):d):(h.flags|=2,l)):(h.flags|=1048576,l)}function p(h){return e&&h.alternate===null&&(h.flags|=2),h}function r(h,l,d,w){return l===null||l.tag!==6?(l=bl(d,h.mode,w),l.return=h,l):(l=n(l,d),l.return=h,l)}function o(h,l,d,w){var k=d.type;return k===hr?_(h,l,d.props.children,w,d.key):l!==null&&(l.elementType===k||typeof k=="object"&&k!==null&&k.$$typeof===fs&&vd(k)===l.type)?(w=n(l,d.props),w.ref=Yr(h,l,d),w.return=h,w):(w=Uo(d.type,d.key,d.props,null,h.mode,w),w.ref=Yr(h,l,d),w.return=h,w)}function f(h,l,d,w){return l===null||l.tag!==4||l.stateNode.containerInfo!==d.containerInfo||l.stateNode.implementation!==d.implementation?(l=xl(d,h.mode,w),l.return=h,l):(l=n(l,d.children||[]),l.return=h,l)}function _(h,l,d,w,k){return l===null||l.tag!==7?(l=Us(d,h.mode,w,k),l.return=h,l):(l=n(l,d),l.return=h,l)}function c(h,l,d){if(typeof l=="string"&&l!==""||typeof l=="number")return l=bl(""+l,h.mode,d),l.return=h,l;if(typeof l=="object"&&l!==null){switch(l.$$typeof){case no:return d=Uo(l.type,l.key,l.props,null,h.mode,d),d.ref=Yr(h,null,l),d.return=h,d;case ur:return l=xl(l,h.mode,d),l.return=h,l;case fs:var w=l._init;return c(h,w(l._payload),d)}if(on(l)||Wr(l))return l=Us(l,h.mode,d,null),l.return=h,l;_o(h,l)}return null}function m(h,l,d,w){var k=l!==null?l.key:null;if(typeof d=="string"&&d!==""||typeof d=="number")return k!==null?null:r(h,l,""+d,w);if(typeof d=="object"&&d!==null){switch(d.$$typeof){case no:return d.key===k?o(h,l,d,w):null;case ur:return d.key===k?f(h,l,d,w):null;case fs:return k=d._init,m(h,l,k(d._payload),w)}if(on(d)||Wr(d))return k!==null?null:_(h,l,d,w,null);_o(h,d)}return null}function y(h,l,d,w,k){if(typeof w=="string"&&w!==""||typeof w=="number")return h=h.get(d)||null,r(l,h,""+w,k);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case no:return h=h.get(w.key===null?d:w.key)||null,o(l,h,w,k);case ur:return h=h.get(w.key===null?d:w.key)||null,f(l,h,w,k);case fs:var C=w._init;return y(h,l,d,C(w._payload),k)}if(on(w)||Wr(w))return h=h.get(d)||null,_(l,h,w,k,null);_o(l,w)}return null}function b(h,l,d,w){for(var k=null,C=null,L=l,x=l=0,E=null;L!==null&&x<d.length;x++){L.index>x?(E=L,L=null):E=L.sibling;var R=m(h,L,d[x],w);if(R===null){L===null&&(L=E);break}e&&L&&R.alternate===null&&t(h,L),l=u(R,l,x),C===null?k=R:C.sibling=R,C=R,L=E}if(x===d.length)return i(h,L),ft&&Os(h,x),k;if(L===null){for(;x<d.length;x++)L=c(h,d[x],w),L!==null&&(l=u(L,l,x),C===null?k=L:C.sibling=L,C=L);return ft&&Os(h,x),k}for(L=s(h,L);x<d.length;x++)E=y(L,h,x,d[x],w),E!==null&&(e&&E.alternate!==null&&L.delete(E.key===null?x:E.key),l=u(E,l,x),C===null?k=E:C.sibling=E,C=E);return e&&L.forEach(function(I){return t(h,I)}),ft&&Os(h,x),k}function g(h,l,d,w){var k=Wr(d);if(typeof k!="function")throw Error(ue(150));if(d=k.call(d),d==null)throw Error(ue(151));for(var C=k=null,L=l,x=l=0,E=null,R=d.next();L!==null&&!R.done;x++,R=d.next()){L.index>x?(E=L,L=null):E=L.sibling;var I=m(h,L,R.value,w);if(I===null){L===null&&(L=E);break}e&&L&&I.alternate===null&&t(h,L),l=u(I,l,x),C===null?k=I:C.sibling=I,C=I,L=E}if(R.done)return i(h,L),ft&&Os(h,x),k;if(L===null){for(;!R.done;x++,R=d.next())R=c(h,R.value,w),R!==null&&(l=u(R,l,x),C===null?k=R:C.sibling=R,C=R);return ft&&Os(h,x),k}for(L=s(h,L);!R.done;x++,R=d.next())R=y(L,h,x,R.value,w),R!==null&&(e&&R.alternate!==null&&L.delete(R.key===null?x:R.key),l=u(R,l,x),C===null?k=R:C.sibling=R,C=R);return e&&L.forEach(function(T){return t(h,T)}),ft&&Os(h,x),k}function a(h,l,d,w){if(typeof d=="object"&&d!==null&&d.type===hr&&d.key===null&&(d=d.props.children),typeof d=="object"&&d!==null){switch(d.$$typeof){case no:e:{for(var k=d.key,C=l;C!==null;){if(C.key===k){if(k=d.type,k===hr){if(C.tag===7){i(h,C.sibling),l=n(C,d.props.children),l.return=h,h=l;break e}}else if(C.elementType===k||typeof k=="object"&&k!==null&&k.$$typeof===fs&&vd(k)===C.type){i(h,C.sibling),l=n(C,d.props),l.ref=Yr(h,C,d),l.return=h,h=l;break e}i(h,C);break}else t(h,C);C=C.sibling}d.type===hr?(l=Us(d.props.children,h.mode,w,d.key),l.return=h,h=l):(w=Uo(d.type,d.key,d.props,null,h.mode,w),w.ref=Yr(h,l,d),w.return=h,h=w)}return p(h);case ur:e:{for(C=d.key;l!==null;){if(l.key===C)if(l.tag===4&&l.stateNode.containerInfo===d.containerInfo&&l.stateNode.implementation===d.implementation){i(h,l.sibling),l=n(l,d.children||[]),l.return=h,h=l;break e}else{i(h,l);break}else t(h,l);l=l.sibling}l=xl(d,h.mode,w),l.return=h,h=l}return p(h);case fs:return C=d._init,a(h,l,C(d._payload),w)}if(on(d))return b(h,l,d,w);if(Wr(d))return g(h,l,d,w);_o(h,d)}return typeof d=="string"&&d!==""||typeof d=="number"?(d=""+d,l!==null&&l.tag===6?(i(h,l.sibling),l=n(l,d),l.return=h,h=l):(i(h,l),l=bl(d,h.mode,w),l.return=h,h=l),p(h)):i(h,l)}return a}var Pr=pm(!0),mm=pm(!1),oa=Ms(null),aa=null,wr=null,vu=null;function wu(){vu=wr=aa=null}function yu(e){var t=oa.current;ht(oa),e._currentValue=t}function fc(e,t,i){for(;e!==null;){var s=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,s!==null&&(s.childLanes|=t)):s!==null&&(s.childLanes&t)!==t&&(s.childLanes|=t),e===i)break;e=e.return}}function Tr(e,t){aa=e,vu=wr=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(oi=!0),e.firstContext=null)}function Li(e){var t=e._currentValue;if(vu!==e)if(e={context:e,memoizedValue:t,next:null},wr===null){if(aa===null)throw Error(ue(308));wr=e,aa.dependencies={lanes:0,firstContext:e}}else wr=wr.next=e;return t}var Hs=null;function Su(e){Hs===null?Hs=[e]:Hs.push(e)}function gm(e,t,i,s){var n=t.interleaved;return n===null?(i.next=i,Su(t)):(i.next=n.next,n.next=i),t.interleaved=i,as(e,s)}function as(e,t){e.lanes|=t;var i=e.alternate;for(i!==null&&(i.lanes|=t),i=e,e=e.return;e!==null;)e.childLanes|=t,i=e.alternate,i!==null&&(i.childLanes|=t),i=e,e=e.return;return i.tag===3?i.stateNode:null}var ps=!1;function bu(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function _m(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function ss(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function xs(e,t,i){var s=e.updateQueue;if(s===null)return null;if(s=s.shared,Ge&2){var n=s.pending;return n===null?t.next=t:(t.next=n.next,n.next=t),s.pending=t,as(e,i)}return n=s.interleaved,n===null?(t.next=t,Su(s)):(t.next=n.next,n.next=t),s.interleaved=t,as(e,i)}function Bo(e,t,i){if(t=t.updateQueue,t!==null&&(t=t.shared,(i&4194240)!==0)){var s=t.lanes;s&=e.pendingLanes,i|=s,t.lanes=i,au(e,i)}}function wd(e,t){var i=e.updateQueue,s=e.alternate;if(s!==null&&(s=s.updateQueue,i===s)){var n=null,u=null;if(i=i.firstBaseUpdate,i!==null){do{var p={eventTime:i.eventTime,lane:i.lane,tag:i.tag,payload:i.payload,callback:i.callback,next:null};u===null?n=u=p:u=u.next=p,i=i.next}while(i!==null);u===null?n=u=t:u=u.next=t}else n=u=t;i={baseState:s.baseState,firstBaseUpdate:n,lastBaseUpdate:u,shared:s.shared,effects:s.effects},e.updateQueue=i;return}e=i.lastBaseUpdate,e===null?i.firstBaseUpdate=t:e.next=t,i.lastBaseUpdate=t}function la(e,t,i,s){var n=e.updateQueue;ps=!1;var u=n.firstBaseUpdate,p=n.lastBaseUpdate,r=n.shared.pending;if(r!==null){n.shared.pending=null;var o=r,f=o.next;o.next=null,p===null?u=f:p.next=f,p=o;var _=e.alternate;_!==null&&(_=_.updateQueue,r=_.lastBaseUpdate,r!==p&&(r===null?_.firstBaseUpdate=f:r.next=f,_.lastBaseUpdate=o))}if(u!==null){var c=n.baseState;p=0,_=f=o=null,r=u;do{var m=r.lane,y=r.eventTime;if((s&m)===m){_!==null&&(_=_.next={eventTime:y,lane:0,tag:r.tag,payload:r.payload,callback:r.callback,next:null});e:{var b=e,g=r;switch(m=t,y=i,g.tag){case 1:if(b=g.payload,typeof b=="function"){c=b.call(y,c,m);break e}c=b;break e;case 3:b.flags=b.flags&-65537|128;case 0:if(b=g.payload,m=typeof b=="function"?b.call(y,c,m):b,m==null)break e;c=_t({},c,m);break e;case 2:ps=!0}}r.callback!==null&&r.lane!==0&&(e.flags|=64,m=n.effects,m===null?n.effects=[r]:m.push(r))}else y={eventTime:y,lane:m,tag:r.tag,payload:r.payload,callback:r.callback,next:null},_===null?(f=_=y,o=c):_=_.next=y,p|=m;if(r=r.next,r===null){if(r=n.shared.pending,r===null)break;m=r,r=m.next,m.next=null,n.lastBaseUpdate=m,n.shared.pending=null}}while(!0);if(_===null&&(o=c),n.baseState=o,n.firstBaseUpdate=f,n.lastBaseUpdate=_,t=n.shared.interleaved,t!==null){n=t;do p|=n.lane,n=n.next;while(n!==t)}else u===null&&(n.shared.lanes=0);Gs|=p,e.lanes=p,e.memoizedState=c}}function yd(e,t,i){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var s=e[t],n=s.callback;if(n!==null){if(s.callback=null,s=i,typeof n!="function")throw Error(ue(191,n));n.call(s)}}}var Gn={},Xi=Ms(Gn),Nn=Ms(Gn),In=Ms(Gn);function $s(e){if(e===Gn)throw Error(ue(174));return e}function xu(e,t){switch(nt(In,t),nt(Nn,e),nt(Xi,Gn),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:Gl(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=Gl(t,e)}ht(Xi),nt(Xi,t)}function Or(){ht(Xi),ht(Nn),ht(In)}function vm(e){$s(In.current);var t=$s(Xi.current),i=Gl(t,e.type);t!==i&&(nt(Nn,e),nt(Xi,i))}function Cu(e){Nn.current===e&&(ht(Xi),ht(Nn))}var mt=Ms(0);function ca(e){for(var t=e;t!==null;){if(t.tag===13){var i=t.memoizedState;if(i!==null&&(i=i.dehydrated,i===null||i.data==="$?"||i.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var gl=[];function ku(){for(var e=0;e<gl.length;e++)gl[e]._workInProgressVersionPrimary=null;gl.length=0}var jo=us.ReactCurrentDispatcher,_l=us.ReactCurrentBatchConfig,Ks=0,gt=null,Rt=null,At=null,ua=!1,mn=!1,Pn=0,P0=0;function Ut(){throw Error(ue(321))}function Eu(e,t){if(t===null)return!1;for(var i=0;i<t.length&&i<e.length;i++)if(!Fi(e[i],t[i]))return!1;return!0}function Lu(e,t,i,s,n,u){if(Ks=u,gt=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,jo.current=e===null||e.memoizedState===null?F0:H0,e=i(s,n),mn){u=0;do{if(mn=!1,Pn=0,25<=u)throw Error(ue(301));u+=1,At=Rt=null,t.updateQueue=null,jo.current=$0,e=i(s,n)}while(mn)}if(jo.current=ha,t=Rt!==null&&Rt.next!==null,Ks=0,At=Rt=gt=null,ua=!1,t)throw Error(ue(300));return e}function Ru(){var e=Pn!==0;return Pn=0,e}function Vi(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return At===null?gt.memoizedState=At=e:At=At.next=e,At}function Ri(){if(Rt===null){var e=gt.alternate;e=e!==null?e.memoizedState:null}else e=Rt.next;var t=At===null?gt.memoizedState:At.next;if(t!==null)At=t,Rt=e;else{if(e===null)throw Error(ue(310));Rt=e,e={memoizedState:Rt.memoizedState,baseState:Rt.baseState,baseQueue:Rt.baseQueue,queue:Rt.queue,next:null},At===null?gt.memoizedState=At=e:At=At.next=e}return At}function On(e,t){return typeof t=="function"?t(e):t}function vl(e){var t=Ri(),i=t.queue;if(i===null)throw Error(ue(311));i.lastRenderedReducer=e;var s=Rt,n=s.baseQueue,u=i.pending;if(u!==null){if(n!==null){var p=n.next;n.next=u.next,u.next=p}s.baseQueue=n=u,i.pending=null}if(n!==null){u=n.next,s=s.baseState;var r=p=null,o=null,f=u;do{var _=f.lane;if((Ks&_)===_)o!==null&&(o=o.next={lane:0,action:f.action,hasEagerState:f.hasEagerState,eagerState:f.eagerState,next:null}),s=f.hasEagerState?f.eagerState:e(s,f.action);else{var c={lane:_,action:f.action,hasEagerState:f.hasEagerState,eagerState:f.eagerState,next:null};o===null?(r=o=c,p=s):o=o.next=c,gt.lanes|=_,Gs|=_}f=f.next}while(f!==null&&f!==u);o===null?p=s:o.next=r,Fi(s,t.memoizedState)||(oi=!0),t.memoizedState=s,t.baseState=p,t.baseQueue=o,i.lastRenderedState=s}if(e=i.interleaved,e!==null){n=e;do u=n.lane,gt.lanes|=u,Gs|=u,n=n.next;while(n!==e)}else n===null&&(i.lanes=0);return[t.memoizedState,i.dispatch]}function wl(e){var t=Ri(),i=t.queue;if(i===null)throw Error(ue(311));i.lastRenderedReducer=e;var s=i.dispatch,n=i.pending,u=t.memoizedState;if(n!==null){i.pending=null;var p=n=n.next;do u=e(u,p.action),p=p.next;while(p!==n);Fi(u,t.memoizedState)||(oi=!0),t.memoizedState=u,t.baseQueue===null&&(t.baseState=u),i.lastRenderedState=u}return[u,s]}function wm(){}function ym(e,t){var i=gt,s=Ri(),n=t(),u=!Fi(s.memoizedState,n);if(u&&(s.memoizedState=n,oi=!0),s=s.queue,Tu(xm.bind(null,i,s,e),[e]),s.getSnapshot!==t||u||At!==null&&At.memoizedState.tag&1){if(i.flags|=2048,Bn(9,bm.bind(null,i,s,n,t),void 0,null),Mt===null)throw Error(ue(349));Ks&30||Sm(i,t,n)}return n}function Sm(e,t,i){e.flags|=16384,e={getSnapshot:t,value:i},t=gt.updateQueue,t===null?(t={lastEffect:null,stores:null},gt.updateQueue=t,t.stores=[e]):(i=t.stores,i===null?t.stores=[e]:i.push(e))}function bm(e,t,i,s){t.value=i,t.getSnapshot=s,Cm(t)&&km(e)}function xm(e,t,i){return i(function(){Cm(t)&&km(e)})}function Cm(e){var t=e.getSnapshot;e=e.value;try{var i=t();return!Fi(e,i)}catch{return!0}}function km(e){var t=as(e,1);t!==null&&ji(t,e,1,-1)}function Sd(e){var t=Vi();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:On,lastRenderedState:e},t.queue=e,e=e.dispatch=j0.bind(null,gt,e),[t.memoizedState,e]}function Bn(e,t,i,s){return e={tag:e,create:t,destroy:i,deps:s,next:null},t=gt.updateQueue,t===null?(t={lastEffect:null,stores:null},gt.updateQueue=t,t.lastEffect=e.next=e):(i=t.lastEffect,i===null?t.lastEffect=e.next=e:(s=i.next,i.next=e,e.next=s,t.lastEffect=e)),e}function Em(){return Ri().memoizedState}function Fo(e,t,i,s){var n=Vi();gt.flags|=e,n.memoizedState=Bn(1|t,i,void 0,s===void 0?null:s)}function Ba(e,t,i,s){var n=Ri();s=s===void 0?null:s;var u=void 0;if(Rt!==null){var p=Rt.memoizedState;if(u=p.destroy,s!==null&&Eu(s,p.deps)){n.memoizedState=Bn(t,i,u,s);return}}gt.flags|=e,n.memoizedState=Bn(1|t,i,u,s)}function bd(e,t){return Fo(8390656,8,e,t)}function Tu(e,t){return Ba(2048,8,e,t)}function Lm(e,t){return Ba(4,2,e,t)}function Rm(e,t){return Ba(4,4,e,t)}function Tm(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Dm(e,t,i){return i=i!=null?i.concat([e]):null,Ba(4,4,Tm.bind(null,t,e),i)}function Du(){}function Am(e,t){var i=Ri();t=t===void 0?null:t;var s=i.memoizedState;return s!==null&&t!==null&&Eu(t,s[1])?s[0]:(i.memoizedState=[e,t],e)}function Mm(e,t){var i=Ri();t=t===void 0?null:t;var s=i.memoizedState;return s!==null&&t!==null&&Eu(t,s[1])?s[0]:(e=e(),i.memoizedState=[e,t],e)}function Nm(e,t,i){return Ks&21?(Fi(i,t)||(i=jp(),gt.lanes|=i,Gs|=i,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,oi=!0),e.memoizedState=i)}function O0(e,t){var i=et;et=i!==0&&4>i?i:4,e(!0);var s=_l.transition;_l.transition={};try{e(!1),t()}finally{et=i,_l.transition=s}}function Im(){return Ri().memoizedState}function B0(e,t,i){var s=ks(e);if(i={lane:s,action:i,hasEagerState:!1,eagerState:null,next:null},Pm(e))Om(t,i);else if(i=gm(e,t,i,s),i!==null){var n=Qt();ji(i,e,s,n),Bm(i,t,s)}}function j0(e,t,i){var s=ks(e),n={lane:s,action:i,hasEagerState:!1,eagerState:null,next:null};if(Pm(e))Om(t,n);else{var u=e.alternate;if(e.lanes===0&&(u===null||u.lanes===0)&&(u=t.lastRenderedReducer,u!==null))try{var p=t.lastRenderedState,r=u(p,i);if(n.hasEagerState=!0,n.eagerState=r,Fi(r,p)){var o=t.interleaved;o===null?(n.next=n,Su(t)):(n.next=o.next,o.next=n),t.interleaved=n;return}}catch{}finally{}i=gm(e,t,n,s),i!==null&&(n=Qt(),ji(i,e,s,n),Bm(i,t,s))}}function Pm(e){var t=e.alternate;return e===gt||t!==null&&t===gt}function Om(e,t){mn=ua=!0;var i=e.pending;i===null?t.next=t:(t.next=i.next,i.next=t),e.pending=t}function Bm(e,t,i){if(i&4194240){var s=t.lanes;s&=e.pendingLanes,i|=s,t.lanes=i,au(e,i)}}var ha={readContext:Li,useCallback:Ut,useContext:Ut,useEffect:Ut,useImperativeHandle:Ut,useInsertionEffect:Ut,useLayoutEffect:Ut,useMemo:Ut,useReducer:Ut,useRef:Ut,useState:Ut,useDebugValue:Ut,useDeferredValue:Ut,useTransition:Ut,useMutableSource:Ut,useSyncExternalStore:Ut,useId:Ut,unstable_isNewReconciler:!1},F0={readContext:Li,useCallback:function(e,t){return Vi().memoizedState=[e,t===void 0?null:t],e},useContext:Li,useEffect:bd,useImperativeHandle:function(e,t,i){return i=i!=null?i.concat([e]):null,Fo(4194308,4,Tm.bind(null,t,e),i)},useLayoutEffect:function(e,t){return Fo(4194308,4,e,t)},useInsertionEffect:function(e,t){return Fo(4,2,e,t)},useMemo:function(e,t){var i=Vi();return t=t===void 0?null:t,e=e(),i.memoizedState=[e,t],e},useReducer:function(e,t,i){var s=Vi();return t=i!==void 0?i(t):t,s.memoizedState=s.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},s.queue=e,e=e.dispatch=B0.bind(null,gt,e),[s.memoizedState,e]},useRef:function(e){var t=Vi();return e={current:e},t.memoizedState=e},useState:Sd,useDebugValue:Du,useDeferredValue:function(e){return Vi().memoizedState=e},useTransition:function(){var e=Sd(!1),t=e[0];return e=O0.bind(null,e[1]),Vi().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,i){var s=gt,n=Vi();if(ft){if(i===void 0)throw Error(ue(407));i=i()}else{if(i=t(),Mt===null)throw Error(ue(349));Ks&30||Sm(s,t,i)}n.memoizedState=i;var u={value:i,getSnapshot:t};return n.queue=u,bd(xm.bind(null,s,u,e),[e]),s.flags|=2048,Bn(9,bm.bind(null,s,u,i,t),void 0,null),i},useId:function(){var e=Vi(),t=Mt.identifierPrefix;if(ft){var i=is,s=ts;i=(s&~(1<<32-Bi(s)-1)).toString(32)+i,t=":"+t+"R"+i,i=Pn++,0<i&&(t+="H"+i.toString(32)),t+=":"}else i=P0++,t=":"+t+"r"+i.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},H0={readContext:Li,useCallback:Am,useContext:Li,useEffect:Tu,useImperativeHandle:Dm,useInsertionEffect:Lm,useLayoutEffect:Rm,useMemo:Mm,useReducer:vl,useRef:Em,useState:function(){return vl(On)},useDebugValue:Du,useDeferredValue:function(e){var t=Ri();return Nm(t,Rt.memoizedState,e)},useTransition:function(){var e=vl(On)[0],t=Ri().memoizedState;return[e,t]},useMutableSource:wm,useSyncExternalStore:ym,useId:Im,unstable_isNewReconciler:!1},$0={readContext:Li,useCallback:Am,useContext:Li,useEffect:Tu,useImperativeHandle:Dm,useInsertionEffect:Lm,useLayoutEffect:Rm,useMemo:Mm,useReducer:wl,useRef:Em,useState:function(){return wl(On)},useDebugValue:Du,useDeferredValue:function(e){var t=Ri();return Rt===null?t.memoizedState=e:Nm(t,Rt.memoizedState,e)},useTransition:function(){var e=wl(On)[0],t=Ri().memoizedState;return[e,t]},useMutableSource:wm,useSyncExternalStore:ym,useId:Im,unstable_isNewReconciler:!1};function Ii(e,t){if(e&&e.defaultProps){t=_t({},t),e=e.defaultProps;for(var i in e)t[i]===void 0&&(t[i]=e[i]);return t}return t}function pc(e,t,i,s){t=e.memoizedState,i=i(s,t),i=i==null?t:_t({},t,i),e.memoizedState=i,e.lanes===0&&(e.updateQueue.baseState=i)}var ja={isMounted:function(e){return(e=e._reactInternals)?tr(e)===e:!1},enqueueSetState:function(e,t,i){e=e._reactInternals;var s=Qt(),n=ks(e),u=ss(s,n);u.payload=t,i!=null&&(u.callback=i),t=xs(e,u,n),t!==null&&(ji(t,e,n,s),Bo(t,e,n))},enqueueReplaceState:function(e,t,i){e=e._reactInternals;var s=Qt(),n=ks(e),u=ss(s,n);u.tag=1,u.payload=t,i!=null&&(u.callback=i),t=xs(e,u,n),t!==null&&(ji(t,e,n,s),Bo(t,e,n))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var i=Qt(),s=ks(e),n=ss(i,s);n.tag=2,t!=null&&(n.callback=t),t=xs(e,n,s),t!==null&&(ji(t,e,s,i),Bo(t,e,s))}};function xd(e,t,i,s,n,u,p){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(s,u,p):t.prototype&&t.prototype.isPureReactComponent?!Tn(i,s)||!Tn(n,u):!0}function jm(e,t,i){var s=!1,n=Rs,u=t.contextType;return typeof u=="object"&&u!==null?u=Li(u):(n=li(t)?Ws:Gt.current,s=t.contextTypes,u=(s=s!=null)?Nr(e,n):Rs),t=new t(i,u),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=ja,e.stateNode=t,t._reactInternals=e,s&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=n,e.__reactInternalMemoizedMaskedChildContext=u),t}function Cd(e,t,i,s){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(i,s),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(i,s),t.state!==e&&ja.enqueueReplaceState(t,t.state,null)}function mc(e,t,i,s){var n=e.stateNode;n.props=i,n.state=e.memoizedState,n.refs={},bu(e);var u=t.contextType;typeof u=="object"&&u!==null?n.context=Li(u):(u=li(t)?Ws:Gt.current,n.context=Nr(e,u)),n.state=e.memoizedState,u=t.getDerivedStateFromProps,typeof u=="function"&&(pc(e,t,u,i),n.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof n.getSnapshotBeforeUpdate=="function"||typeof n.UNSAFE_componentWillMount!="function"&&typeof n.componentWillMount!="function"||(t=n.state,typeof n.componentWillMount=="function"&&n.componentWillMount(),typeof n.UNSAFE_componentWillMount=="function"&&n.UNSAFE_componentWillMount(),t!==n.state&&ja.enqueueReplaceState(n,n.state,null),la(e,i,n,s),n.state=e.memoizedState),typeof n.componentDidMount=="function"&&(e.flags|=4194308)}function Br(e,t){try{var i="",s=t;do i+=mv(s),s=s.return;while(s);var n=i}catch(u){n=`
|
|
39
|
+
Error generating stack: `+u.message+`
|
|
40
|
+
`+u.stack}return{value:e,source:t,stack:n,digest:null}}function yl(e,t,i){return{value:e,source:null,stack:i??null,digest:t??null}}function gc(e,t){try{console.error(t.value)}catch(i){setTimeout(function(){throw i})}}var z0=typeof WeakMap=="function"?WeakMap:Map;function Fm(e,t,i){i=ss(-1,i),i.tag=3,i.payload={element:null};var s=t.value;return i.callback=function(){fa||(fa=!0,Ec=s),gc(e,t)},i}function Hm(e,t,i){i=ss(-1,i),i.tag=3;var s=e.type.getDerivedStateFromError;if(typeof s=="function"){var n=t.value;i.payload=function(){return s(n)},i.callback=function(){gc(e,t)}}var u=e.stateNode;return u!==null&&typeof u.componentDidCatch=="function"&&(i.callback=function(){gc(e,t),typeof s!="function"&&(Cs===null?Cs=new Set([this]):Cs.add(this));var p=t.stack;this.componentDidCatch(t.value,{componentStack:p!==null?p:""})}),i}function kd(e,t,i){var s=e.pingCache;if(s===null){s=e.pingCache=new z0;var n=new Set;s.set(t,n)}else n=s.get(t),n===void 0&&(n=new Set,s.set(t,n));n.has(i)||(n.add(i),e=iw.bind(null,e,t,i),t.then(e,e))}function Ed(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function Ld(e,t,i,s,n){return e.mode&1?(e.flags|=65536,e.lanes=n,e):(e===t?e.flags|=65536:(e.flags|=128,i.flags|=131072,i.flags&=-52805,i.tag===1&&(i.alternate===null?i.tag=17:(t=ss(-1,1),t.tag=2,xs(i,t,1))),i.lanes|=1),e)}var U0=us.ReactCurrentOwner,oi=!1;function Zt(e,t,i,s){t.child=e===null?mm(t,null,i,s):Pr(t,e.child,i,s)}function Rd(e,t,i,s,n){i=i.render;var u=t.ref;return Tr(t,n),s=Lu(e,t,i,s,u,n),i=Ru(),e!==null&&!oi?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n,ls(e,t,n)):(ft&&i&&mu(t),t.flags|=1,Zt(e,t,s,n),t.child)}function Td(e,t,i,s,n){if(e===null){var u=i.type;return typeof u=="function"&&!ju(u)&&u.defaultProps===void 0&&i.compare===null&&i.defaultProps===void 0?(t.tag=15,t.type=u,$m(e,t,u,s,n)):(e=Uo(i.type,null,s,t,t.mode,n),e.ref=t.ref,e.return=t,t.child=e)}if(u=e.child,!(e.lanes&n)){var p=u.memoizedProps;if(i=i.compare,i=i!==null?i:Tn,i(p,s)&&e.ref===t.ref)return ls(e,t,n)}return t.flags|=1,e=Es(u,s),e.ref=t.ref,e.return=t,t.child=e}function $m(e,t,i,s,n){if(e!==null){var u=e.memoizedProps;if(Tn(u,s)&&e.ref===t.ref)if(oi=!1,t.pendingProps=s=u,(e.lanes&n)!==0)e.flags&131072&&(oi=!0);else return t.lanes=e.lanes,ls(e,t,n)}return _c(e,t,i,s,n)}function zm(e,t,i){var s=t.pendingProps,n=s.children,u=e!==null?e.memoizedState:null;if(s.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},nt(Sr,mi),mi|=i;else{if(!(i&1073741824))return e=u!==null?u.baseLanes|i:i,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,nt(Sr,mi),mi|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},s=u!==null?u.baseLanes:i,nt(Sr,mi),mi|=s}else u!==null?(s=u.baseLanes|i,t.memoizedState=null):s=i,nt(Sr,mi),mi|=s;return Zt(e,t,n,i),t.child}function Um(e,t){var i=t.ref;(e===null&&i!==null||e!==null&&e.ref!==i)&&(t.flags|=512,t.flags|=2097152)}function _c(e,t,i,s,n){var u=li(i)?Ws:Gt.current;return u=Nr(t,u),Tr(t,n),i=Lu(e,t,i,s,u,n),s=Ru(),e!==null&&!oi?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n,ls(e,t,n)):(ft&&s&&mu(t),t.flags|=1,Zt(e,t,i,n),t.child)}function Dd(e,t,i,s,n){if(li(i)){var u=!0;sa(t)}else u=!1;if(Tr(t,n),t.stateNode===null)Ho(e,t),jm(t,i,s),mc(t,i,s,n),s=!0;else if(e===null){var p=t.stateNode,r=t.memoizedProps;p.props=r;var o=p.context,f=i.contextType;typeof f=="object"&&f!==null?f=Li(f):(f=li(i)?Ws:Gt.current,f=Nr(t,f));var _=i.getDerivedStateFromProps,c=typeof _=="function"||typeof p.getSnapshotBeforeUpdate=="function";c||typeof p.UNSAFE_componentWillReceiveProps!="function"&&typeof p.componentWillReceiveProps!="function"||(r!==s||o!==f)&&Cd(t,p,s,f),ps=!1;var m=t.memoizedState;p.state=m,la(t,s,p,n),o=t.memoizedState,r!==s||m!==o||ai.current||ps?(typeof _=="function"&&(pc(t,i,_,s),o=t.memoizedState),(r=ps||xd(t,i,r,s,m,o,f))?(c||typeof p.UNSAFE_componentWillMount!="function"&&typeof p.componentWillMount!="function"||(typeof p.componentWillMount=="function"&&p.componentWillMount(),typeof p.UNSAFE_componentWillMount=="function"&&p.UNSAFE_componentWillMount()),typeof p.componentDidMount=="function"&&(t.flags|=4194308)):(typeof p.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=s,t.memoizedState=o),p.props=s,p.state=o,p.context=f,s=r):(typeof p.componentDidMount=="function"&&(t.flags|=4194308),s=!1)}else{p=t.stateNode,_m(e,t),r=t.memoizedProps,f=t.type===t.elementType?r:Ii(t.type,r),p.props=f,c=t.pendingProps,m=p.context,o=i.contextType,typeof o=="object"&&o!==null?o=Li(o):(o=li(i)?Ws:Gt.current,o=Nr(t,o));var y=i.getDerivedStateFromProps;(_=typeof y=="function"||typeof p.getSnapshotBeforeUpdate=="function")||typeof p.UNSAFE_componentWillReceiveProps!="function"&&typeof p.componentWillReceiveProps!="function"||(r!==c||m!==o)&&Cd(t,p,s,o),ps=!1,m=t.memoizedState,p.state=m,la(t,s,p,n);var b=t.memoizedState;r!==c||m!==b||ai.current||ps?(typeof y=="function"&&(pc(t,i,y,s),b=t.memoizedState),(f=ps||xd(t,i,f,s,m,b,o)||!1)?(_||typeof p.UNSAFE_componentWillUpdate!="function"&&typeof p.componentWillUpdate!="function"||(typeof p.componentWillUpdate=="function"&&p.componentWillUpdate(s,b,o),typeof p.UNSAFE_componentWillUpdate=="function"&&p.UNSAFE_componentWillUpdate(s,b,o)),typeof p.componentDidUpdate=="function"&&(t.flags|=4),typeof p.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof p.componentDidUpdate!="function"||r===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof p.getSnapshotBeforeUpdate!="function"||r===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),t.memoizedProps=s,t.memoizedState=b),p.props=s,p.state=b,p.context=o,s=f):(typeof p.componentDidUpdate!="function"||r===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof p.getSnapshotBeforeUpdate!="function"||r===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),s=!1)}return vc(e,t,i,s,u,n)}function vc(e,t,i,s,n,u){Um(e,t);var p=(t.flags&128)!==0;if(!s&&!p)return n&&md(t,i,!1),ls(e,t,u);s=t.stateNode,U0.current=t;var r=p&&typeof i.getDerivedStateFromError!="function"?null:s.render();return t.flags|=1,e!==null&&p?(t.child=Pr(t,e.child,null,u),t.child=Pr(t,null,r,u)):Zt(e,t,r,u),t.memoizedState=s.state,n&&md(t,i,!0),t.child}function Wm(e){var t=e.stateNode;t.pendingContext?pd(e,t.pendingContext,t.pendingContext!==t.context):t.context&&pd(e,t.context,!1),xu(e,t.containerInfo)}function Ad(e,t,i,s,n){return Ir(),_u(n),t.flags|=256,Zt(e,t,i,s),t.child}var wc={dehydrated:null,treeContext:null,retryLane:0};function yc(e){return{baseLanes:e,cachePool:null,transitions:null}}function Vm(e,t,i){var s=t.pendingProps,n=mt.current,u=!1,p=(t.flags&128)!==0,r;if((r=p)||(r=e!==null&&e.memoizedState===null?!1:(n&2)!==0),r?(u=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(n|=1),nt(mt,n&1),e===null)return dc(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(p=s.children,e=s.fallback,u?(s=t.mode,u=t.child,p={mode:"hidden",children:p},!(s&1)&&u!==null?(u.childLanes=0,u.pendingProps=p):u=$a(p,s,0,null),e=Us(e,s,i,null),u.return=t,e.return=t,u.sibling=e,t.child=u,t.child.memoizedState=yc(i),t.memoizedState=wc,e):Au(t,p));if(n=e.memoizedState,n!==null&&(r=n.dehydrated,r!==null))return W0(e,t,p,s,r,n,i);if(u){u=s.fallback,p=t.mode,n=e.child,r=n.sibling;var o={mode:"hidden",children:s.children};return!(p&1)&&t.child!==n?(s=t.child,s.childLanes=0,s.pendingProps=o,t.deletions=null):(s=Es(n,o),s.subtreeFlags=n.subtreeFlags&14680064),r!==null?u=Es(r,u):(u=Us(u,p,i,null),u.flags|=2),u.return=t,s.return=t,s.sibling=u,t.child=s,s=u,u=t.child,p=e.child.memoizedState,p=p===null?yc(i):{baseLanes:p.baseLanes|i,cachePool:null,transitions:p.transitions},u.memoizedState=p,u.childLanes=e.childLanes&~i,t.memoizedState=wc,s}return u=e.child,e=u.sibling,s=Es(u,{mode:"visible",children:s.children}),!(t.mode&1)&&(s.lanes=i),s.return=t,s.sibling=null,e!==null&&(i=t.deletions,i===null?(t.deletions=[e],t.flags|=16):i.push(e)),t.child=s,t.memoizedState=null,s}function Au(e,t){return t=$a({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function vo(e,t,i,s){return s!==null&&_u(s),Pr(t,e.child,null,i),e=Au(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function W0(e,t,i,s,n,u,p){if(i)return t.flags&256?(t.flags&=-257,s=yl(Error(ue(422))),vo(e,t,p,s)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(u=s.fallback,n=t.mode,s=$a({mode:"visible",children:s.children},n,0,null),u=Us(u,n,p,null),u.flags|=2,s.return=t,u.return=t,s.sibling=u,t.child=s,t.mode&1&&Pr(t,e.child,null,p),t.child.memoizedState=yc(p),t.memoizedState=wc,u);if(!(t.mode&1))return vo(e,t,p,null);if(n.data==="$!"){if(s=n.nextSibling&&n.nextSibling.dataset,s)var r=s.dgst;return s=r,u=Error(ue(419)),s=yl(u,s,void 0),vo(e,t,p,s)}if(r=(p&e.childLanes)!==0,oi||r){if(s=Mt,s!==null){switch(p&-p){case 4:n=2;break;case 16:n=8;break;case 64: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:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:n=32;break;case 536870912:n=268435456;break;default:n=0}n=n&(s.suspendedLanes|p)?0:n,n!==0&&n!==u.retryLane&&(u.retryLane=n,as(e,n),ji(s,e,n,-1))}return Bu(),s=yl(Error(ue(421))),vo(e,t,p,s)}return n.data==="$?"?(t.flags|=128,t.child=e.child,t=sw.bind(null,e),n._reactRetry=t,null):(e=u.treeContext,_i=bs(n.nextSibling),vi=t,ft=!0,Oi=null,e!==null&&(xi[Ci++]=ts,xi[Ci++]=is,xi[Ci++]=Vs,ts=e.id,is=e.overflow,Vs=t),t=Au(t,s.children),t.flags|=4096,t)}function Md(e,t,i){e.lanes|=t;var s=e.alternate;s!==null&&(s.lanes|=t),fc(e.return,t,i)}function Sl(e,t,i,s,n){var u=e.memoizedState;u===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:s,tail:i,tailMode:n}:(u.isBackwards=t,u.rendering=null,u.renderingStartTime=0,u.last=s,u.tail=i,u.tailMode=n)}function Km(e,t,i){var s=t.pendingProps,n=s.revealOrder,u=s.tail;if(Zt(e,t,s.children,i),s=mt.current,s&2)s=s&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Md(e,i,t);else if(e.tag===19)Md(e,i,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}s&=1}if(nt(mt,s),!(t.mode&1))t.memoizedState=null;else switch(n){case"forwards":for(i=t.child,n=null;i!==null;)e=i.alternate,e!==null&&ca(e)===null&&(n=i),i=i.sibling;i=n,i===null?(n=t.child,t.child=null):(n=i.sibling,i.sibling=null),Sl(t,!1,n,i,u);break;case"backwards":for(i=null,n=t.child,t.child=null;n!==null;){if(e=n.alternate,e!==null&&ca(e)===null){t.child=n;break}e=n.sibling,n.sibling=i,i=n,n=e}Sl(t,!0,i,null,u);break;case"together":Sl(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Ho(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function ls(e,t,i){if(e!==null&&(t.dependencies=e.dependencies),Gs|=t.lanes,!(i&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(ue(153));if(t.child!==null){for(e=t.child,i=Es(e,e.pendingProps),t.child=i,i.return=t;e.sibling!==null;)e=e.sibling,i=i.sibling=Es(e,e.pendingProps),i.return=t;i.sibling=null}return t.child}function V0(e,t,i){switch(t.tag){case 3:Wm(t),Ir();break;case 5:vm(t);break;case 1:li(t.type)&&sa(t);break;case 4:xu(t,t.stateNode.containerInfo);break;case 10:var s=t.type._context,n=t.memoizedProps.value;nt(oa,s._currentValue),s._currentValue=n;break;case 13:if(s=t.memoizedState,s!==null)return s.dehydrated!==null?(nt(mt,mt.current&1),t.flags|=128,null):i&t.child.childLanes?Vm(e,t,i):(nt(mt,mt.current&1),e=ls(e,t,i),e!==null?e.sibling:null);nt(mt,mt.current&1);break;case 19:if(s=(i&t.childLanes)!==0,e.flags&128){if(s)return Km(e,t,i);t.flags|=128}if(n=t.memoizedState,n!==null&&(n.rendering=null,n.tail=null,n.lastEffect=null),nt(mt,mt.current),s)break;return null;case 22:case 23:return t.lanes=0,zm(e,t,i)}return ls(e,t,i)}var Gm,Sc,qm,Ym;Gm=function(e,t){for(var i=t.child;i!==null;){if(i.tag===5||i.tag===6)e.appendChild(i.stateNode);else if(i.tag!==4&&i.child!==null){i.child.return=i,i=i.child;continue}if(i===t)break;for(;i.sibling===null;){if(i.return===null||i.return===t)return;i=i.return}i.sibling.return=i.return,i=i.sibling}};Sc=function(){};qm=function(e,t,i,s){var n=e.memoizedProps;if(n!==s){e=t.stateNode,$s(Xi.current);var u=null;switch(i){case"input":n=Ul(e,n),s=Ul(e,s),u=[];break;case"select":n=_t({},n,{value:void 0}),s=_t({},s,{value:void 0}),u=[];break;case"textarea":n=Kl(e,n),s=Kl(e,s),u=[];break;default:typeof n.onClick!="function"&&typeof s.onClick=="function"&&(e.onclick=ta)}ql(i,s);var p;i=null;for(f in n)if(!s.hasOwnProperty(f)&&n.hasOwnProperty(f)&&n[f]!=null)if(f==="style"){var r=n[f];for(p in r)r.hasOwnProperty(p)&&(i||(i={}),i[p]="")}else f!=="dangerouslySetInnerHTML"&&f!=="children"&&f!=="suppressContentEditableWarning"&&f!=="suppressHydrationWarning"&&f!=="autoFocus"&&(bn.hasOwnProperty(f)?u||(u=[]):(u=u||[]).push(f,null));for(f in s){var o=s[f];if(r=n!=null?n[f]:void 0,s.hasOwnProperty(f)&&o!==r&&(o!=null||r!=null))if(f==="style")if(r){for(p in r)!r.hasOwnProperty(p)||o&&o.hasOwnProperty(p)||(i||(i={}),i[p]="");for(p in o)o.hasOwnProperty(p)&&r[p]!==o[p]&&(i||(i={}),i[p]=o[p])}else i||(u||(u=[]),u.push(f,i)),i=o;else f==="dangerouslySetInnerHTML"?(o=o?o.__html:void 0,r=r?r.__html:void 0,o!=null&&r!==o&&(u=u||[]).push(f,o)):f==="children"?typeof o!="string"&&typeof o!="number"||(u=u||[]).push(f,""+o):f!=="suppressContentEditableWarning"&&f!=="suppressHydrationWarning"&&(bn.hasOwnProperty(f)?(o!=null&&f==="onScroll"&&ut("scroll",e),u||r===o||(u=[])):(u=u||[]).push(f,o))}i&&(u=u||[]).push("style",i);var f=u;(t.updateQueue=f)&&(t.flags|=4)}};Ym=function(e,t,i,s){i!==s&&(t.flags|=4)};function Xr(e,t){if(!ft)switch(e.tailMode){case"hidden":t=e.tail;for(var i=null;t!==null;)t.alternate!==null&&(i=t),t=t.sibling;i===null?e.tail=null:i.sibling=null;break;case"collapsed":i=e.tail;for(var s=null;i!==null;)i.alternate!==null&&(s=i),i=i.sibling;s===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:s.sibling=null}}function Wt(e){var t=e.alternate!==null&&e.alternate.child===e.child,i=0,s=0;if(t)for(var n=e.child;n!==null;)i|=n.lanes|n.childLanes,s|=n.subtreeFlags&14680064,s|=n.flags&14680064,n.return=e,n=n.sibling;else for(n=e.child;n!==null;)i|=n.lanes|n.childLanes,s|=n.subtreeFlags,s|=n.flags,n.return=e,n=n.sibling;return e.subtreeFlags|=s,e.childLanes=i,t}function K0(e,t,i){var s=t.pendingProps;switch(gu(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Wt(t),null;case 1:return li(t.type)&&ia(),Wt(t),null;case 3:return s=t.stateNode,Or(),ht(ai),ht(Gt),ku(),s.pendingContext&&(s.context=s.pendingContext,s.pendingContext=null),(e===null||e.child===null)&&(go(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Oi!==null&&(Tc(Oi),Oi=null))),Sc(e,t),Wt(t),null;case 5:Cu(t);var n=$s(In.current);if(i=t.type,e!==null&&t.stateNode!=null)qm(e,t,i,s,n),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!s){if(t.stateNode===null)throw Error(ue(166));return Wt(t),null}if(e=$s(Xi.current),go(t)){s=t.stateNode,i=t.type;var u=t.memoizedProps;switch(s[Ki]=t,s[Mn]=u,e=(t.mode&1)!==0,i){case"dialog":ut("cancel",s),ut("close",s);break;case"iframe":case"object":case"embed":ut("load",s);break;case"video":case"audio":for(n=0;n<ln.length;n++)ut(ln[n],s);break;case"source":ut("error",s);break;case"img":case"image":case"link":ut("error",s),ut("load",s);break;case"details":ut("toggle",s);break;case"input":$h(s,u),ut("invalid",s);break;case"select":s._wrapperState={wasMultiple:!!u.multiple},ut("invalid",s);break;case"textarea":Uh(s,u),ut("invalid",s)}ql(i,u),n=null;for(var p in u)if(u.hasOwnProperty(p)){var r=u[p];p==="children"?typeof r=="string"?s.textContent!==r&&(u.suppressHydrationWarning!==!0&&mo(s.textContent,r,e),n=["children",r]):typeof r=="number"&&s.textContent!==""+r&&(u.suppressHydrationWarning!==!0&&mo(s.textContent,r,e),n=["children",""+r]):bn.hasOwnProperty(p)&&r!=null&&p==="onScroll"&&ut("scroll",s)}switch(i){case"input":oo(s),zh(s,u,!0);break;case"textarea":oo(s),Wh(s);break;case"select":case"option":break;default:typeof u.onClick=="function"&&(s.onclick=ta)}s=n,t.updateQueue=s,s!==null&&(t.flags|=4)}else{p=n.nodeType===9?n:n.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=xp(i)),e==="http://www.w3.org/1999/xhtml"?i==="script"?(e=p.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof s.is=="string"?e=p.createElement(i,{is:s.is}):(e=p.createElement(i),i==="select"&&(p=e,s.multiple?p.multiple=!0:s.size&&(p.size=s.size))):e=p.createElementNS(e,i),e[Ki]=t,e[Mn]=s,Gm(e,t,!1,!1),t.stateNode=e;e:{switch(p=Yl(i,s),i){case"dialog":ut("cancel",e),ut("close",e),n=s;break;case"iframe":case"object":case"embed":ut("load",e),n=s;break;case"video":case"audio":for(n=0;n<ln.length;n++)ut(ln[n],e);n=s;break;case"source":ut("error",e),n=s;break;case"img":case"image":case"link":ut("error",e),ut("load",e),n=s;break;case"details":ut("toggle",e),n=s;break;case"input":$h(e,s),n=Ul(e,s),ut("invalid",e);break;case"option":n=s;break;case"select":e._wrapperState={wasMultiple:!!s.multiple},n=_t({},s,{value:void 0}),ut("invalid",e);break;case"textarea":Uh(e,s),n=Kl(e,s),ut("invalid",e);break;default:n=s}ql(i,n),r=n;for(u in r)if(r.hasOwnProperty(u)){var o=r[u];u==="style"?Ep(e,o):u==="dangerouslySetInnerHTML"?(o=o?o.__html:void 0,o!=null&&Cp(e,o)):u==="children"?typeof o=="string"?(i!=="textarea"||o!=="")&&xn(e,o):typeof o=="number"&&xn(e,""+o):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(bn.hasOwnProperty(u)?o!=null&&u==="onScroll"&&ut("scroll",e):o!=null&&tu(e,u,o,p))}switch(i){case"input":oo(e),zh(e,s,!1);break;case"textarea":oo(e),Wh(e);break;case"option":s.value!=null&&e.setAttribute("value",""+Ls(s.value));break;case"select":e.multiple=!!s.multiple,u=s.value,u!=null?kr(e,!!s.multiple,u,!1):s.defaultValue!=null&&kr(e,!!s.multiple,s.defaultValue,!0);break;default:typeof n.onClick=="function"&&(e.onclick=ta)}switch(i){case"button":case"input":case"select":case"textarea":s=!!s.autoFocus;break e;case"img":s=!0;break e;default:s=!1}}s&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return Wt(t),null;case 6:if(e&&t.stateNode!=null)Ym(e,t,e.memoizedProps,s);else{if(typeof s!="string"&&t.stateNode===null)throw Error(ue(166));if(i=$s(In.current),$s(Xi.current),go(t)){if(s=t.stateNode,i=t.memoizedProps,s[Ki]=t,(u=s.nodeValue!==i)&&(e=vi,e!==null))switch(e.tag){case 3:mo(s.nodeValue,i,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&mo(s.nodeValue,i,(e.mode&1)!==0)}u&&(t.flags|=4)}else s=(i.nodeType===9?i:i.ownerDocument).createTextNode(s),s[Ki]=t,t.stateNode=s}return Wt(t),null;case 13:if(ht(mt),s=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(ft&&_i!==null&&t.mode&1&&!(t.flags&128))fm(),Ir(),t.flags|=98560,u=!1;else if(u=go(t),s!==null&&s.dehydrated!==null){if(e===null){if(!u)throw Error(ue(318));if(u=t.memoizedState,u=u!==null?u.dehydrated:null,!u)throw Error(ue(317));u[Ki]=t}else Ir(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Wt(t),u=!1}else Oi!==null&&(Tc(Oi),Oi=null),u=!0;if(!u)return t.flags&65536?t:null}return t.flags&128?(t.lanes=i,t):(s=s!==null,s!==(e!==null&&e.memoizedState!==null)&&s&&(t.child.flags|=8192,t.mode&1&&(e===null||mt.current&1?Tt===0&&(Tt=3):Bu())),t.updateQueue!==null&&(t.flags|=4),Wt(t),null);case 4:return Or(),Sc(e,t),e===null&&Dn(t.stateNode.containerInfo),Wt(t),null;case 10:return yu(t.type._context),Wt(t),null;case 17:return li(t.type)&&ia(),Wt(t),null;case 19:if(ht(mt),u=t.memoizedState,u===null)return Wt(t),null;if(s=(t.flags&128)!==0,p=u.rendering,p===null)if(s)Xr(u,!1);else{if(Tt!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(p=ca(e),p!==null){for(t.flags|=128,Xr(u,!1),s=p.updateQueue,s!==null&&(t.updateQueue=s,t.flags|=4),t.subtreeFlags=0,s=i,i=t.child;i!==null;)u=i,e=s,u.flags&=14680066,p=u.alternate,p===null?(u.childLanes=0,u.lanes=e,u.child=null,u.subtreeFlags=0,u.memoizedProps=null,u.memoizedState=null,u.updateQueue=null,u.dependencies=null,u.stateNode=null):(u.childLanes=p.childLanes,u.lanes=p.lanes,u.child=p.child,u.subtreeFlags=0,u.deletions=null,u.memoizedProps=p.memoizedProps,u.memoizedState=p.memoizedState,u.updateQueue=p.updateQueue,u.type=p.type,e=p.dependencies,u.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),i=i.sibling;return nt(mt,mt.current&1|2),t.child}e=e.sibling}u.tail!==null&&bt()>jr&&(t.flags|=128,s=!0,Xr(u,!1),t.lanes=4194304)}else{if(!s)if(e=ca(p),e!==null){if(t.flags|=128,s=!0,i=e.updateQueue,i!==null&&(t.updateQueue=i,t.flags|=4),Xr(u,!0),u.tail===null&&u.tailMode==="hidden"&&!p.alternate&&!ft)return Wt(t),null}else 2*bt()-u.renderingStartTime>jr&&i!==1073741824&&(t.flags|=128,s=!0,Xr(u,!1),t.lanes=4194304);u.isBackwards?(p.sibling=t.child,t.child=p):(i=u.last,i!==null?i.sibling=p:t.child=p,u.last=p)}return u.tail!==null?(t=u.tail,u.rendering=t,u.tail=t.sibling,u.renderingStartTime=bt(),t.sibling=null,i=mt.current,nt(mt,s?i&1|2:i&1),t):(Wt(t),null);case 22:case 23:return Ou(),s=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==s&&(t.flags|=8192),s&&t.mode&1?mi&1073741824&&(Wt(t),t.subtreeFlags&6&&(t.flags|=8192)):Wt(t),null;case 24:return null;case 25:return null}throw Error(ue(156,t.tag))}function G0(e,t){switch(gu(t),t.tag){case 1:return li(t.type)&&ia(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Or(),ht(ai),ht(Gt),ku(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Cu(t),null;case 13:if(ht(mt),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(ue(340));Ir()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return ht(mt),null;case 4:return Or(),null;case 10:return yu(t.type._context),null;case 22:case 23:return Ou(),null;case 24:return null;default:return null}}var wo=!1,Kt=!1,q0=typeof WeakSet=="function"?WeakSet:Set,ke=null;function yr(e,t){var i=e.ref;if(i!==null)if(typeof i=="function")try{i(null)}catch(s){yt(e,t,s)}else i.current=null}function bc(e,t,i){try{i()}catch(s){yt(e,t,s)}}var Nd=!1;function Y0(e,t){if(nc=Zo,e=em(),pu(e)){if("selectionStart"in e)var i={start:e.selectionStart,end:e.selectionEnd};else e:{i=(i=e.ownerDocument)&&i.defaultView||window;var s=i.getSelection&&i.getSelection();if(s&&s.rangeCount!==0){i=s.anchorNode;var n=s.anchorOffset,u=s.focusNode;s=s.focusOffset;try{i.nodeType,u.nodeType}catch{i=null;break e}var p=0,r=-1,o=-1,f=0,_=0,c=e,m=null;t:for(;;){for(var y;c!==i||n!==0&&c.nodeType!==3||(r=p+n),c!==u||s!==0&&c.nodeType!==3||(o=p+s),c.nodeType===3&&(p+=c.nodeValue.length),(y=c.firstChild)!==null;)m=c,c=y;for(;;){if(c===e)break t;if(m===i&&++f===n&&(r=p),m===u&&++_===s&&(o=p),(y=c.nextSibling)!==null)break;c=m,m=c.parentNode}c=y}i=r===-1||o===-1?null:{start:r,end:o}}else i=null}i=i||{start:0,end:0}}else i=null;for(oc={focusedElem:e,selectionRange:i},Zo=!1,ke=t;ke!==null;)if(t=ke,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,ke=e;else for(;ke!==null;){t=ke;try{var b=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(b!==null){var g=b.memoizedProps,a=b.memoizedState,h=t.stateNode,l=h.getSnapshotBeforeUpdate(t.elementType===t.type?g:Ii(t.type,g),a);h.__reactInternalSnapshotBeforeUpdate=l}break;case 3:var d=t.stateNode.containerInfo;d.nodeType===1?d.textContent="":d.nodeType===9&&d.documentElement&&d.removeChild(d.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(ue(163))}}catch(w){yt(t,t.return,w)}if(e=t.sibling,e!==null){e.return=t.return,ke=e;break}ke=t.return}return b=Nd,Nd=!1,b}function gn(e,t,i){var s=t.updateQueue;if(s=s!==null?s.lastEffect:null,s!==null){var n=s=s.next;do{if((n.tag&e)===e){var u=n.destroy;n.destroy=void 0,u!==void 0&&bc(t,i,u)}n=n.next}while(n!==s)}}function Fa(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var i=t=t.next;do{if((i.tag&e)===e){var s=i.create;i.destroy=s()}i=i.next}while(i!==t)}}function xc(e){var t=e.ref;if(t!==null){var i=e.stateNode;switch(e.tag){case 5:e=i;break;default:e=i}typeof t=="function"?t(e):t.current=e}}function Xm(e){var t=e.alternate;t!==null&&(e.alternate=null,Xm(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Ki],delete t[Mn],delete t[cc],delete t[A0],delete t[M0])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Jm(e){return e.tag===5||e.tag===3||e.tag===4}function Id(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Jm(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Cc(e,t,i){var s=e.tag;if(s===5||s===6)e=e.stateNode,t?i.nodeType===8?i.parentNode.insertBefore(e,t):i.insertBefore(e,t):(i.nodeType===8?(t=i.parentNode,t.insertBefore(e,i)):(t=i,t.appendChild(e)),i=i._reactRootContainer,i!=null||t.onclick!==null||(t.onclick=ta));else if(s!==4&&(e=e.child,e!==null))for(Cc(e,t,i),e=e.sibling;e!==null;)Cc(e,t,i),e=e.sibling}function kc(e,t,i){var s=e.tag;if(s===5||s===6)e=e.stateNode,t?i.insertBefore(e,t):i.appendChild(e);else if(s!==4&&(e=e.child,e!==null))for(kc(e,t,i),e=e.sibling;e!==null;)kc(e,t,i),e=e.sibling}var Ot=null,Pi=!1;function ds(e,t,i){for(i=i.child;i!==null;)Zm(e,t,i),i=i.sibling}function Zm(e,t,i){if(Yi&&typeof Yi.onCommitFiberUnmount=="function")try{Yi.onCommitFiberUnmount(Aa,i)}catch{}switch(i.tag){case 5:Kt||yr(i,t);case 6:var s=Ot,n=Pi;Ot=null,ds(e,t,i),Ot=s,Pi=n,Ot!==null&&(Pi?(e=Ot,i=i.stateNode,e.nodeType===8?e.parentNode.removeChild(i):e.removeChild(i)):Ot.removeChild(i.stateNode));break;case 18:Ot!==null&&(Pi?(e=Ot,i=i.stateNode,e.nodeType===8?pl(e.parentNode,i):e.nodeType===1&&pl(e,i),Ln(e)):pl(Ot,i.stateNode));break;case 4:s=Ot,n=Pi,Ot=i.stateNode.containerInfo,Pi=!0,ds(e,t,i),Ot=s,Pi=n;break;case 0:case 11:case 14:case 15:if(!Kt&&(s=i.updateQueue,s!==null&&(s=s.lastEffect,s!==null))){n=s=s.next;do{var u=n,p=u.destroy;u=u.tag,p!==void 0&&(u&2||u&4)&&bc(i,t,p),n=n.next}while(n!==s)}ds(e,t,i);break;case 1:if(!Kt&&(yr(i,t),s=i.stateNode,typeof s.componentWillUnmount=="function"))try{s.props=i.memoizedProps,s.state=i.memoizedState,s.componentWillUnmount()}catch(r){yt(i,t,r)}ds(e,t,i);break;case 21:ds(e,t,i);break;case 22:i.mode&1?(Kt=(s=Kt)||i.memoizedState!==null,ds(e,t,i),Kt=s):ds(e,t,i);break;default:ds(e,t,i)}}function Pd(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var i=e.stateNode;i===null&&(i=e.stateNode=new q0),t.forEach(function(s){var n=rw.bind(null,e,s);i.has(s)||(i.add(s),s.then(n,n))})}}function Mi(e,t){var i=t.deletions;if(i!==null)for(var s=0;s<i.length;s++){var n=i[s];try{var u=e,p=t,r=p;e:for(;r!==null;){switch(r.tag){case 5:Ot=r.stateNode,Pi=!1;break e;case 3:Ot=r.stateNode.containerInfo,Pi=!0;break e;case 4:Ot=r.stateNode.containerInfo,Pi=!0;break e}r=r.return}if(Ot===null)throw Error(ue(160));Zm(u,p,n),Ot=null,Pi=!1;var o=n.alternate;o!==null&&(o.return=null),n.return=null}catch(f){yt(n,t,f)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Qm(t,e),t=t.sibling}function Qm(e,t){var i=e.alternate,s=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Mi(t,e),zi(e),s&4){try{gn(3,e,e.return),Fa(3,e)}catch(g){yt(e,e.return,g)}try{gn(5,e,e.return)}catch(g){yt(e,e.return,g)}}break;case 1:Mi(t,e),zi(e),s&512&&i!==null&&yr(i,i.return);break;case 5:if(Mi(t,e),zi(e),s&512&&i!==null&&yr(i,i.return),e.flags&32){var n=e.stateNode;try{xn(n,"")}catch(g){yt(e,e.return,g)}}if(s&4&&(n=e.stateNode,n!=null)){var u=e.memoizedProps,p=i!==null?i.memoizedProps:u,r=e.type,o=e.updateQueue;if(e.updateQueue=null,o!==null)try{r==="input"&&u.type==="radio"&&u.name!=null&&Sp(n,u),Yl(r,p);var f=Yl(r,u);for(p=0;p<o.length;p+=2){var _=o[p],c=o[p+1];_==="style"?Ep(n,c):_==="dangerouslySetInnerHTML"?Cp(n,c):_==="children"?xn(n,c):tu(n,_,c,f)}switch(r){case"input":Wl(n,u);break;case"textarea":bp(n,u);break;case"select":var m=n._wrapperState.wasMultiple;n._wrapperState.wasMultiple=!!u.multiple;var y=u.value;y!=null?kr(n,!!u.multiple,y,!1):m!==!!u.multiple&&(u.defaultValue!=null?kr(n,!!u.multiple,u.defaultValue,!0):kr(n,!!u.multiple,u.multiple?[]:"",!1))}n[Mn]=u}catch(g){yt(e,e.return,g)}}break;case 6:if(Mi(t,e),zi(e),s&4){if(e.stateNode===null)throw Error(ue(162));n=e.stateNode,u=e.memoizedProps;try{n.nodeValue=u}catch(g){yt(e,e.return,g)}}break;case 3:if(Mi(t,e),zi(e),s&4&&i!==null&&i.memoizedState.isDehydrated)try{Ln(t.containerInfo)}catch(g){yt(e,e.return,g)}break;case 4:Mi(t,e),zi(e);break;case 13:Mi(t,e),zi(e),n=e.child,n.flags&8192&&(u=n.memoizedState!==null,n.stateNode.isHidden=u,!u||n.alternate!==null&&n.alternate.memoizedState!==null||(Iu=bt())),s&4&&Pd(e);break;case 22:if(_=i!==null&&i.memoizedState!==null,e.mode&1?(Kt=(f=Kt)||_,Mi(t,e),Kt=f):Mi(t,e),zi(e),s&8192){if(f=e.memoizedState!==null,(e.stateNode.isHidden=f)&&!_&&e.mode&1)for(ke=e,_=e.child;_!==null;){for(c=ke=_;ke!==null;){switch(m=ke,y=m.child,m.tag){case 0:case 11:case 14:case 15:gn(4,m,m.return);break;case 1:yr(m,m.return);var b=m.stateNode;if(typeof b.componentWillUnmount=="function"){s=m,i=m.return;try{t=s,b.props=t.memoizedProps,b.state=t.memoizedState,b.componentWillUnmount()}catch(g){yt(s,i,g)}}break;case 5:yr(m,m.return);break;case 22:if(m.memoizedState!==null){Bd(c);continue}}y!==null?(y.return=m,ke=y):Bd(c)}_=_.sibling}e:for(_=null,c=e;;){if(c.tag===5){if(_===null){_=c;try{n=c.stateNode,f?(u=n.style,typeof u.setProperty=="function"?u.setProperty("display","none","important"):u.display="none"):(r=c.stateNode,o=c.memoizedProps.style,p=o!=null&&o.hasOwnProperty("display")?o.display:null,r.style.display=kp("display",p))}catch(g){yt(e,e.return,g)}}}else if(c.tag===6){if(_===null)try{c.stateNode.nodeValue=f?"":c.memoizedProps}catch(g){yt(e,e.return,g)}}else if((c.tag!==22&&c.tag!==23||c.memoizedState===null||c===e)&&c.child!==null){c.child.return=c,c=c.child;continue}if(c===e)break e;for(;c.sibling===null;){if(c.return===null||c.return===e)break e;_===c&&(_=null),c=c.return}_===c&&(_=null),c.sibling.return=c.return,c=c.sibling}}break;case 19:Mi(t,e),zi(e),s&4&&Pd(e);break;case 21:break;default:Mi(t,e),zi(e)}}function zi(e){var t=e.flags;if(t&2){try{e:{for(var i=e.return;i!==null;){if(Jm(i)){var s=i;break e}i=i.return}throw Error(ue(160))}switch(s.tag){case 5:var n=s.stateNode;s.flags&32&&(xn(n,""),s.flags&=-33);var u=Id(e);kc(e,u,n);break;case 3:case 4:var p=s.stateNode.containerInfo,r=Id(e);Cc(e,r,p);break;default:throw Error(ue(161))}}catch(o){yt(e,e.return,o)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function X0(e,t,i){ke=e,eg(e)}function eg(e,t,i){for(var s=(e.mode&1)!==0;ke!==null;){var n=ke,u=n.child;if(n.tag===22&&s){var p=n.memoizedState!==null||wo;if(!p){var r=n.alternate,o=r!==null&&r.memoizedState!==null||Kt;r=wo;var f=Kt;if(wo=p,(Kt=o)&&!f)for(ke=n;ke!==null;)p=ke,o=p.child,p.tag===22&&p.memoizedState!==null?jd(n):o!==null?(o.return=p,ke=o):jd(n);for(;u!==null;)ke=u,eg(u),u=u.sibling;ke=n,wo=r,Kt=f}Od(e)}else n.subtreeFlags&8772&&u!==null?(u.return=n,ke=u):Od(e)}}function Od(e){for(;ke!==null;){var t=ke;if(t.flags&8772){var i=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:Kt||Fa(5,t);break;case 1:var s=t.stateNode;if(t.flags&4&&!Kt)if(i===null)s.componentDidMount();else{var n=t.elementType===t.type?i.memoizedProps:Ii(t.type,i.memoizedProps);s.componentDidUpdate(n,i.memoizedState,s.__reactInternalSnapshotBeforeUpdate)}var u=t.updateQueue;u!==null&&yd(t,u,s);break;case 3:var p=t.updateQueue;if(p!==null){if(i=null,t.child!==null)switch(t.child.tag){case 5:i=t.child.stateNode;break;case 1:i=t.child.stateNode}yd(t,p,i)}break;case 5:var r=t.stateNode;if(i===null&&t.flags&4){i=r;var o=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":o.autoFocus&&i.focus();break;case"img":o.src&&(i.src=o.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var f=t.alternate;if(f!==null){var _=f.memoizedState;if(_!==null){var c=_.dehydrated;c!==null&&Ln(c)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(ue(163))}Kt||t.flags&512&&xc(t)}catch(m){yt(t,t.return,m)}}if(t===e){ke=null;break}if(i=t.sibling,i!==null){i.return=t.return,ke=i;break}ke=t.return}}function Bd(e){for(;ke!==null;){var t=ke;if(t===e){ke=null;break}var i=t.sibling;if(i!==null){i.return=t.return,ke=i;break}ke=t.return}}function jd(e){for(;ke!==null;){var t=ke;try{switch(t.tag){case 0:case 11:case 15:var i=t.return;try{Fa(4,t)}catch(o){yt(t,i,o)}break;case 1:var s=t.stateNode;if(typeof s.componentDidMount=="function"){var n=t.return;try{s.componentDidMount()}catch(o){yt(t,n,o)}}var u=t.return;try{xc(t)}catch(o){yt(t,u,o)}break;case 5:var p=t.return;try{xc(t)}catch(o){yt(t,p,o)}}}catch(o){yt(t,t.return,o)}if(t===e){ke=null;break}var r=t.sibling;if(r!==null){r.return=t.return,ke=r;break}ke=t.return}}var J0=Math.ceil,da=us.ReactCurrentDispatcher,Mu=us.ReactCurrentOwner,Ei=us.ReactCurrentBatchConfig,Ge=0,Mt=null,Et=null,Bt=0,mi=0,Sr=Ms(0),Tt=0,jn=null,Gs=0,Ha=0,Nu=0,_n=null,ri=null,Iu=0,jr=1/0,Qi=null,fa=!1,Ec=null,Cs=null,yo=!1,vs=null,pa=0,vn=0,Lc=null,$o=-1,zo=0;function Qt(){return Ge&6?bt():$o!==-1?$o:$o=bt()}function ks(e){return e.mode&1?Ge&2&&Bt!==0?Bt&-Bt:I0.transition!==null?(zo===0&&(zo=jp()),zo):(e=et,e!==0||(e=window.event,e=e===void 0?16:Vp(e.type)),e):1}function ji(e,t,i,s){if(50<vn)throw vn=0,Lc=null,Error(ue(185));Wn(e,i,s),(!(Ge&2)||e!==Mt)&&(e===Mt&&(!(Ge&2)&&(Ha|=i),Tt===4&&gs(e,Bt)),ci(e,s),i===1&&Ge===0&&!(t.mode&1)&&(jr=bt()+500,Oa&&Ns()))}function ci(e,t){var i=e.callbackNode;Iv(e,t);var s=Jo(e,e===Mt?Bt:0);if(s===0)i!==null&&Gh(i),e.callbackNode=null,e.callbackPriority=0;else if(t=s&-s,e.callbackPriority!==t){if(i!=null&&Gh(i),t===1)e.tag===0?N0(Fd.bind(null,e)):um(Fd.bind(null,e)),T0(function(){!(Ge&6)&&Ns()}),i=null;else{switch(Fp(s)){case 1:i=ou;break;case 4:i=Op;break;case 16:i=Xo;break;case 536870912:i=Bp;break;default:i=Xo}i=lg(i,tg.bind(null,e))}e.callbackPriority=t,e.callbackNode=i}}function tg(e,t){if($o=-1,zo=0,Ge&6)throw Error(ue(327));var i=e.callbackNode;if(Dr()&&e.callbackNode!==i)return null;var s=Jo(e,e===Mt?Bt:0);if(s===0)return null;if(s&30||s&e.expiredLanes||t)t=ma(e,s);else{t=s;var n=Ge;Ge|=2;var u=sg();(Mt!==e||Bt!==t)&&(Qi=null,jr=bt()+500,zs(e,t));do try{ew();break}catch(r){ig(e,r)}while(!0);wu(),da.current=u,Ge=n,Et!==null?t=0:(Mt=null,Bt=0,t=Tt)}if(t!==0){if(t===2&&(n=ec(e),n!==0&&(s=n,t=Rc(e,n))),t===1)throw i=jn,zs(e,0),gs(e,s),ci(e,bt()),i;if(t===6)gs(e,s);else{if(n=e.current.alternate,!(s&30)&&!Z0(n)&&(t=ma(e,s),t===2&&(u=ec(e),u!==0&&(s=u,t=Rc(e,u))),t===1))throw i=jn,zs(e,0),gs(e,s),ci(e,bt()),i;switch(e.finishedWork=n,e.finishedLanes=s,t){case 0:case 1:throw Error(ue(345));case 2:Bs(e,ri,Qi);break;case 3:if(gs(e,s),(s&130023424)===s&&(t=Iu+500-bt(),10<t)){if(Jo(e,0)!==0)break;if(n=e.suspendedLanes,(n&s)!==s){Qt(),e.pingedLanes|=e.suspendedLanes&n;break}e.timeoutHandle=lc(Bs.bind(null,e,ri,Qi),t);break}Bs(e,ri,Qi);break;case 4:if(gs(e,s),(s&4194240)===s)break;for(t=e.eventTimes,n=-1;0<s;){var p=31-Bi(s);u=1<<p,p=t[p],p>n&&(n=p),s&=~u}if(s=n,s=bt()-s,s=(120>s?120:480>s?480:1080>s?1080:1920>s?1920:3e3>s?3e3:4320>s?4320:1960*J0(s/1960))-s,10<s){e.timeoutHandle=lc(Bs.bind(null,e,ri,Qi),s);break}Bs(e,ri,Qi);break;case 5:Bs(e,ri,Qi);break;default:throw Error(ue(329))}}}return ci(e,bt()),e.callbackNode===i?tg.bind(null,e):null}function Rc(e,t){var i=_n;return e.current.memoizedState.isDehydrated&&(zs(e,t).flags|=256),e=ma(e,t),e!==2&&(t=ri,ri=i,t!==null&&Tc(t)),e}function Tc(e){ri===null?ri=e:ri.push.apply(ri,e)}function Z0(e){for(var t=e;;){if(t.flags&16384){var i=t.updateQueue;if(i!==null&&(i=i.stores,i!==null))for(var s=0;s<i.length;s++){var n=i[s],u=n.getSnapshot;n=n.value;try{if(!Fi(u(),n))return!1}catch{return!1}}}if(i=t.child,t.subtreeFlags&16384&&i!==null)i.return=t,t=i;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function gs(e,t){for(t&=~Nu,t&=~Ha,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var i=31-Bi(t),s=1<<i;e[i]=-1,t&=~s}}function Fd(e){if(Ge&6)throw Error(ue(327));Dr();var t=Jo(e,0);if(!(t&1))return ci(e,bt()),null;var i=ma(e,t);if(e.tag!==0&&i===2){var s=ec(e);s!==0&&(t=s,i=Rc(e,s))}if(i===1)throw i=jn,zs(e,0),gs(e,t),ci(e,bt()),i;if(i===6)throw Error(ue(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Bs(e,ri,Qi),ci(e,bt()),null}function Pu(e,t){var i=Ge;Ge|=1;try{return e(t)}finally{Ge=i,Ge===0&&(jr=bt()+500,Oa&&Ns())}}function qs(e){vs!==null&&vs.tag===0&&!(Ge&6)&&Dr();var t=Ge;Ge|=1;var i=Ei.transition,s=et;try{if(Ei.transition=null,et=1,e)return e()}finally{et=s,Ei.transition=i,Ge=t,!(Ge&6)&&Ns()}}function Ou(){mi=Sr.current,ht(Sr)}function zs(e,t){e.finishedWork=null,e.finishedLanes=0;var i=e.timeoutHandle;if(i!==-1&&(e.timeoutHandle=-1,R0(i)),Et!==null)for(i=Et.return;i!==null;){var s=i;switch(gu(s),s.tag){case 1:s=s.type.childContextTypes,s!=null&&ia();break;case 3:Or(),ht(ai),ht(Gt),ku();break;case 5:Cu(s);break;case 4:Or();break;case 13:ht(mt);break;case 19:ht(mt);break;case 10:yu(s.type._context);break;case 22:case 23:Ou()}i=i.return}if(Mt=e,Et=e=Es(e.current,null),Bt=mi=t,Tt=0,jn=null,Nu=Ha=Gs=0,ri=_n=null,Hs!==null){for(t=0;t<Hs.length;t++)if(i=Hs[t],s=i.interleaved,s!==null){i.interleaved=null;var n=s.next,u=i.pending;if(u!==null){var p=u.next;u.next=n,s.next=p}i.pending=s}Hs=null}return e}function ig(e,t){do{var i=Et;try{if(wu(),jo.current=ha,ua){for(var s=gt.memoizedState;s!==null;){var n=s.queue;n!==null&&(n.pending=null),s=s.next}ua=!1}if(Ks=0,At=Rt=gt=null,mn=!1,Pn=0,Mu.current=null,i===null||i.return===null){Tt=1,jn=t,Et=null;break}e:{var u=e,p=i.return,r=i,o=t;if(t=Bt,r.flags|=32768,o!==null&&typeof o=="object"&&typeof o.then=="function"){var f=o,_=r,c=_.tag;if(!(_.mode&1)&&(c===0||c===11||c===15)){var m=_.alternate;m?(_.updateQueue=m.updateQueue,_.memoizedState=m.memoizedState,_.lanes=m.lanes):(_.updateQueue=null,_.memoizedState=null)}var y=Ed(p);if(y!==null){y.flags&=-257,Ld(y,p,r,u,t),y.mode&1&&kd(u,f,t),t=y,o=f;var b=t.updateQueue;if(b===null){var g=new Set;g.add(o),t.updateQueue=g}else b.add(o);break e}else{if(!(t&1)){kd(u,f,t),Bu();break e}o=Error(ue(426))}}else if(ft&&r.mode&1){var a=Ed(p);if(a!==null){!(a.flags&65536)&&(a.flags|=256),Ld(a,p,r,u,t),_u(Br(o,r));break e}}u=o=Br(o,r),Tt!==4&&(Tt=2),_n===null?_n=[u]:_n.push(u),u=p;do{switch(u.tag){case 3:u.flags|=65536,t&=-t,u.lanes|=t;var h=Fm(u,o,t);wd(u,h);break e;case 1:r=o;var l=u.type,d=u.stateNode;if(!(u.flags&128)&&(typeof l.getDerivedStateFromError=="function"||d!==null&&typeof d.componentDidCatch=="function"&&(Cs===null||!Cs.has(d)))){u.flags|=65536,t&=-t,u.lanes|=t;var w=Hm(u,r,t);wd(u,w);break e}}u=u.return}while(u!==null)}ng(i)}catch(k){t=k,Et===i&&i!==null&&(Et=i=i.return);continue}break}while(!0)}function sg(){var e=da.current;return da.current=ha,e===null?ha:e}function Bu(){(Tt===0||Tt===3||Tt===2)&&(Tt=4),Mt===null||!(Gs&268435455)&&!(Ha&268435455)||gs(Mt,Bt)}function ma(e,t){var i=Ge;Ge|=2;var s=sg();(Mt!==e||Bt!==t)&&(Qi=null,zs(e,t));do try{Q0();break}catch(n){ig(e,n)}while(!0);if(wu(),Ge=i,da.current=s,Et!==null)throw Error(ue(261));return Mt=null,Bt=0,Tt}function Q0(){for(;Et!==null;)rg(Et)}function ew(){for(;Et!==null&&!kv();)rg(Et)}function rg(e){var t=ag(e.alternate,e,mi);e.memoizedProps=e.pendingProps,t===null?ng(e):Et=t,Mu.current=null}function ng(e){var t=e;do{var i=t.alternate;if(e=t.return,t.flags&32768){if(i=G0(i,t),i!==null){i.flags&=32767,Et=i;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Tt=6,Et=null;return}}else if(i=K0(i,t,mi),i!==null){Et=i;return}if(t=t.sibling,t!==null){Et=t;return}Et=t=e}while(t!==null);Tt===0&&(Tt=5)}function Bs(e,t,i){var s=et,n=Ei.transition;try{Ei.transition=null,et=1,tw(e,t,i,s)}finally{Ei.transition=n,et=s}return null}function tw(e,t,i,s){do Dr();while(vs!==null);if(Ge&6)throw Error(ue(327));i=e.finishedWork;var n=e.finishedLanes;if(i===null)return null;if(e.finishedWork=null,e.finishedLanes=0,i===e.current)throw Error(ue(177));e.callbackNode=null,e.callbackPriority=0;var u=i.lanes|i.childLanes;if(Pv(e,u),e===Mt&&(Et=Mt=null,Bt=0),!(i.subtreeFlags&2064)&&!(i.flags&2064)||yo||(yo=!0,lg(Xo,function(){return Dr(),null})),u=(i.flags&15990)!==0,i.subtreeFlags&15990||u){u=Ei.transition,Ei.transition=null;var p=et;et=1;var r=Ge;Ge|=4,Mu.current=null,Y0(e,i),Qm(i,e),S0(oc),Zo=!!nc,oc=nc=null,e.current=i,X0(i),Ev(),Ge=r,et=p,Ei.transition=u}else e.current=i;if(yo&&(yo=!1,vs=e,pa=n),u=e.pendingLanes,u===0&&(Cs=null),Tv(i.stateNode),ci(e,bt()),t!==null)for(s=e.onRecoverableError,i=0;i<t.length;i++)n=t[i],s(n.value,{componentStack:n.stack,digest:n.digest});if(fa)throw fa=!1,e=Ec,Ec=null,e;return pa&1&&e.tag!==0&&Dr(),u=e.pendingLanes,u&1?e===Lc?vn++:(vn=0,Lc=e):vn=0,Ns(),null}function Dr(){if(vs!==null){var e=Fp(pa),t=Ei.transition,i=et;try{if(Ei.transition=null,et=16>e?16:e,vs===null)var s=!1;else{if(e=vs,vs=null,pa=0,Ge&6)throw Error(ue(331));var n=Ge;for(Ge|=4,ke=e.current;ke!==null;){var u=ke,p=u.child;if(ke.flags&16){var r=u.deletions;if(r!==null){for(var o=0;o<r.length;o++){var f=r[o];for(ke=f;ke!==null;){var _=ke;switch(_.tag){case 0:case 11:case 15:gn(8,_,u)}var c=_.child;if(c!==null)c.return=_,ke=c;else for(;ke!==null;){_=ke;var m=_.sibling,y=_.return;if(Xm(_),_===f){ke=null;break}if(m!==null){m.return=y,ke=m;break}ke=y}}}var b=u.alternate;if(b!==null){var g=b.child;if(g!==null){b.child=null;do{var a=g.sibling;g.sibling=null,g=a}while(g!==null)}}ke=u}}if(u.subtreeFlags&2064&&p!==null)p.return=u,ke=p;else e:for(;ke!==null;){if(u=ke,u.flags&2048)switch(u.tag){case 0:case 11:case 15:gn(9,u,u.return)}var h=u.sibling;if(h!==null){h.return=u.return,ke=h;break e}ke=u.return}}var l=e.current;for(ke=l;ke!==null;){p=ke;var d=p.child;if(p.subtreeFlags&2064&&d!==null)d.return=p,ke=d;else e:for(p=l;ke!==null;){if(r=ke,r.flags&2048)try{switch(r.tag){case 0:case 11:case 15:Fa(9,r)}}catch(k){yt(r,r.return,k)}if(r===p){ke=null;break e}var w=r.sibling;if(w!==null){w.return=r.return,ke=w;break e}ke=r.return}}if(Ge=n,Ns(),Yi&&typeof Yi.onPostCommitFiberRoot=="function")try{Yi.onPostCommitFiberRoot(Aa,e)}catch{}s=!0}return s}finally{et=i,Ei.transition=t}}return!1}function Hd(e,t,i){t=Br(i,t),t=Fm(e,t,1),e=xs(e,t,1),t=Qt(),e!==null&&(Wn(e,1,t),ci(e,t))}function yt(e,t,i){if(e.tag===3)Hd(e,e,i);else for(;t!==null;){if(t.tag===3){Hd(t,e,i);break}else if(t.tag===1){var s=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof s.componentDidCatch=="function"&&(Cs===null||!Cs.has(s))){e=Br(i,e),e=Hm(t,e,1),t=xs(t,e,1),e=Qt(),t!==null&&(Wn(t,1,e),ci(t,e));break}}t=t.return}}function iw(e,t,i){var s=e.pingCache;s!==null&&s.delete(t),t=Qt(),e.pingedLanes|=e.suspendedLanes&i,Mt===e&&(Bt&i)===i&&(Tt===4||Tt===3&&(Bt&130023424)===Bt&&500>bt()-Iu?zs(e,0):Nu|=i),ci(e,t)}function og(e,t){t===0&&(e.mode&1?(t=co,co<<=1,!(co&130023424)&&(co=4194304)):t=1);var i=Qt();e=as(e,t),e!==null&&(Wn(e,t,i),ci(e,i))}function sw(e){var t=e.memoizedState,i=0;t!==null&&(i=t.retryLane),og(e,i)}function rw(e,t){var i=0;switch(e.tag){case 13:var s=e.stateNode,n=e.memoizedState;n!==null&&(i=n.retryLane);break;case 19:s=e.stateNode;break;default:throw Error(ue(314))}s!==null&&s.delete(t),og(e,i)}var ag;ag=function(e,t,i){if(e!==null)if(e.memoizedProps!==t.pendingProps||ai.current)oi=!0;else{if(!(e.lanes&i)&&!(t.flags&128))return oi=!1,V0(e,t,i);oi=!!(e.flags&131072)}else oi=!1,ft&&t.flags&1048576&&hm(t,na,t.index);switch(t.lanes=0,t.tag){case 2:var s=t.type;Ho(e,t),e=t.pendingProps;var n=Nr(t,Gt.current);Tr(t,i),n=Lu(null,t,s,e,n,i);var u=Ru();return t.flags|=1,typeof n=="object"&&n!==null&&typeof n.render=="function"&&n.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,li(s)?(u=!0,sa(t)):u=!1,t.memoizedState=n.state!==null&&n.state!==void 0?n.state:null,bu(t),n.updater=ja,t.stateNode=n,n._reactInternals=t,mc(t,s,e,i),t=vc(null,t,s,!0,u,i)):(t.tag=0,ft&&u&&mu(t),Zt(null,t,n,i),t=t.child),t;case 16:s=t.elementType;e:{switch(Ho(e,t),e=t.pendingProps,n=s._init,s=n(s._payload),t.type=s,n=t.tag=ow(s),e=Ii(s,e),n){case 0:t=_c(null,t,s,e,i);break e;case 1:t=Dd(null,t,s,e,i);break e;case 11:t=Rd(null,t,s,e,i);break e;case 14:t=Td(null,t,s,Ii(s.type,e),i);break e}throw Error(ue(306,s,""))}return t;case 0:return s=t.type,n=t.pendingProps,n=t.elementType===s?n:Ii(s,n),_c(e,t,s,n,i);case 1:return s=t.type,n=t.pendingProps,n=t.elementType===s?n:Ii(s,n),Dd(e,t,s,n,i);case 3:e:{if(Wm(t),e===null)throw Error(ue(387));s=t.pendingProps,u=t.memoizedState,n=u.element,_m(e,t),la(t,s,null,i);var p=t.memoizedState;if(s=p.element,u.isDehydrated)if(u={element:s,isDehydrated:!1,cache:p.cache,pendingSuspenseBoundaries:p.pendingSuspenseBoundaries,transitions:p.transitions},t.updateQueue.baseState=u,t.memoizedState=u,t.flags&256){n=Br(Error(ue(423)),t),t=Ad(e,t,s,i,n);break e}else if(s!==n){n=Br(Error(ue(424)),t),t=Ad(e,t,s,i,n);break e}else for(_i=bs(t.stateNode.containerInfo.firstChild),vi=t,ft=!0,Oi=null,i=mm(t,null,s,i),t.child=i;i;)i.flags=i.flags&-3|4096,i=i.sibling;else{if(Ir(),s===n){t=ls(e,t,i);break e}Zt(e,t,s,i)}t=t.child}return t;case 5:return vm(t),e===null&&dc(t),s=t.type,n=t.pendingProps,u=e!==null?e.memoizedProps:null,p=n.children,ac(s,n)?p=null:u!==null&&ac(s,u)&&(t.flags|=32),Um(e,t),Zt(e,t,p,i),t.child;case 6:return e===null&&dc(t),null;case 13:return Vm(e,t,i);case 4:return xu(t,t.stateNode.containerInfo),s=t.pendingProps,e===null?t.child=Pr(t,null,s,i):Zt(e,t,s,i),t.child;case 11:return s=t.type,n=t.pendingProps,n=t.elementType===s?n:Ii(s,n),Rd(e,t,s,n,i);case 7:return Zt(e,t,t.pendingProps,i),t.child;case 8:return Zt(e,t,t.pendingProps.children,i),t.child;case 12:return Zt(e,t,t.pendingProps.children,i),t.child;case 10:e:{if(s=t.type._context,n=t.pendingProps,u=t.memoizedProps,p=n.value,nt(oa,s._currentValue),s._currentValue=p,u!==null)if(Fi(u.value,p)){if(u.children===n.children&&!ai.current){t=ls(e,t,i);break e}}else for(u=t.child,u!==null&&(u.return=t);u!==null;){var r=u.dependencies;if(r!==null){p=u.child;for(var o=r.firstContext;o!==null;){if(o.context===s){if(u.tag===1){o=ss(-1,i&-i),o.tag=2;var f=u.updateQueue;if(f!==null){f=f.shared;var _=f.pending;_===null?o.next=o:(o.next=_.next,_.next=o),f.pending=o}}u.lanes|=i,o=u.alternate,o!==null&&(o.lanes|=i),fc(u.return,i,t),r.lanes|=i;break}o=o.next}}else if(u.tag===10)p=u.type===t.type?null:u.child;else if(u.tag===18){if(p=u.return,p===null)throw Error(ue(341));p.lanes|=i,r=p.alternate,r!==null&&(r.lanes|=i),fc(p,i,t),p=u.sibling}else p=u.child;if(p!==null)p.return=u;else for(p=u;p!==null;){if(p===t){p=null;break}if(u=p.sibling,u!==null){u.return=p.return,p=u;break}p=p.return}u=p}Zt(e,t,n.children,i),t=t.child}return t;case 9:return n=t.type,s=t.pendingProps.children,Tr(t,i),n=Li(n),s=s(n),t.flags|=1,Zt(e,t,s,i),t.child;case 14:return s=t.type,n=Ii(s,t.pendingProps),n=Ii(s.type,n),Td(e,t,s,n,i);case 15:return $m(e,t,t.type,t.pendingProps,i);case 17:return s=t.type,n=t.pendingProps,n=t.elementType===s?n:Ii(s,n),Ho(e,t),t.tag=1,li(s)?(e=!0,sa(t)):e=!1,Tr(t,i),jm(t,s,n),mc(t,s,n,i),vc(null,t,s,!0,e,i);case 19:return Km(e,t,i);case 22:return zm(e,t,i)}throw Error(ue(156,t.tag))};function lg(e,t){return Pp(e,t)}function nw(e,t,i,s){this.tag=e,this.key=i,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=s,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ki(e,t,i,s){return new nw(e,t,i,s)}function ju(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ow(e){if(typeof e=="function")return ju(e)?1:0;if(e!=null){if(e=e.$$typeof,e===su)return 11;if(e===ru)return 14}return 2}function Es(e,t){var i=e.alternate;return i===null?(i=ki(e.tag,t,e.key,e.mode),i.elementType=e.elementType,i.type=e.type,i.stateNode=e.stateNode,i.alternate=e,e.alternate=i):(i.pendingProps=t,i.type=e.type,i.flags=0,i.subtreeFlags=0,i.deletions=null),i.flags=e.flags&14680064,i.childLanes=e.childLanes,i.lanes=e.lanes,i.child=e.child,i.memoizedProps=e.memoizedProps,i.memoizedState=e.memoizedState,i.updateQueue=e.updateQueue,t=e.dependencies,i.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},i.sibling=e.sibling,i.index=e.index,i.ref=e.ref,i}function Uo(e,t,i,s,n,u){var p=2;if(s=e,typeof e=="function")ju(e)&&(p=1);else if(typeof e=="string")p=5;else e:switch(e){case hr:return Us(i.children,n,u,t);case iu:p=8,n|=8;break;case Fl:return e=ki(12,i,t,n|2),e.elementType=Fl,e.lanes=u,e;case Hl:return e=ki(13,i,t,n),e.elementType=Hl,e.lanes=u,e;case $l:return e=ki(19,i,t,n),e.elementType=$l,e.lanes=u,e;case vp:return $a(i,n,u,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case gp:p=10;break e;case _p:p=9;break e;case su:p=11;break e;case ru:p=14;break e;case fs:p=16,s=null;break e}throw Error(ue(130,e==null?e:typeof e,""))}return t=ki(p,i,t,n),t.elementType=e,t.type=s,t.lanes=u,t}function Us(e,t,i,s){return e=ki(7,e,s,t),e.lanes=i,e}function $a(e,t,i,s){return e=ki(22,e,s,t),e.elementType=vp,e.lanes=i,e.stateNode={isHidden:!1},e}function bl(e,t,i){return e=ki(6,e,null,t),e.lanes=i,e}function xl(e,t,i){return t=ki(4,e.children!==null?e.children:[],e.key,t),t.lanes=i,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function aw(e,t,i,s,n){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=sl(0),this.expirationTimes=sl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=sl(0),this.identifierPrefix=s,this.onRecoverableError=n,this.mutableSourceEagerHydrationData=null}function Fu(e,t,i,s,n,u,p,r,o){return e=new aw(e,t,i,r,o),t===1?(t=1,u===!0&&(t|=8)):t=0,u=ki(3,null,null,t),e.current=u,u.stateNode=e,u.memoizedState={element:s,isDehydrated:i,cache:null,transitions:null,pendingSuspenseBoundaries:null},bu(u),e}function lw(e,t,i){var s=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:ur,key:s==null?null:""+s,children:e,containerInfo:t,implementation:i}}function cg(e){if(!e)return Rs;e=e._reactInternals;e:{if(tr(e)!==e||e.tag!==1)throw Error(ue(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(li(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(ue(171))}if(e.tag===1){var i=e.type;if(li(i))return cm(e,i,t)}return t}function ug(e,t,i,s,n,u,p,r,o){return e=Fu(i,s,!0,e,n,u,p,r,o),e.context=cg(null),i=e.current,s=Qt(),n=ks(i),u=ss(s,n),u.callback=t??null,xs(i,u,n),e.current.lanes=n,Wn(e,n,s),ci(e,s),e}function za(e,t,i,s){var n=t.current,u=Qt(),p=ks(n);return i=cg(i),t.context===null?t.context=i:t.pendingContext=i,t=ss(u,p),t.payload={element:e},s=s===void 0?null:s,s!==null&&(t.callback=s),e=xs(n,t,p),e!==null&&(ji(e,n,p,u),Bo(e,n,p)),p}function ga(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function $d(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var i=e.retryLane;e.retryLane=i!==0&&i<t?i:t}}function Hu(e,t){$d(e,t),(e=e.alternate)&&$d(e,t)}function cw(){return null}var hg=typeof reportError=="function"?reportError:function(e){console.error(e)};function $u(e){this._internalRoot=e}Ua.prototype.render=$u.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(ue(409));za(e,t,null,null)};Ua.prototype.unmount=$u.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;qs(function(){za(null,e,null,null)}),t[os]=null}};function Ua(e){this._internalRoot=e}Ua.prototype.unstable_scheduleHydration=function(e){if(e){var t=zp();e={blockedOn:null,target:e,priority:t};for(var i=0;i<ms.length&&t!==0&&t<ms[i].priority;i++);ms.splice(i,0,e),i===0&&Wp(e)}};function zu(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function Wa(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function zd(){}function uw(e,t,i,s,n){if(n){if(typeof s=="function"){var u=s;s=function(){var f=ga(p);u.call(f)}}var p=ug(t,s,e,0,null,!1,!1,"",zd);return e._reactRootContainer=p,e[os]=p.current,Dn(e.nodeType===8?e.parentNode:e),qs(),p}for(;n=e.lastChild;)e.removeChild(n);if(typeof s=="function"){var r=s;s=function(){var f=ga(o);r.call(f)}}var o=Fu(e,0,!1,null,null,!1,!1,"",zd);return e._reactRootContainer=o,e[os]=o.current,Dn(e.nodeType===8?e.parentNode:e),qs(function(){za(t,o,i,s)}),o}function Va(e,t,i,s,n){var u=i._reactRootContainer;if(u){var p=u;if(typeof n=="function"){var r=n;n=function(){var o=ga(p);r.call(o)}}za(t,p,e,n)}else p=uw(i,t,e,n,s);return ga(p)}Hp=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var i=an(t.pendingLanes);i!==0&&(au(t,i|1),ci(t,bt()),!(Ge&6)&&(jr=bt()+500,Ns()))}break;case 13:qs(function(){var s=as(e,1);if(s!==null){var n=Qt();ji(s,e,1,n)}}),Hu(e,1)}};lu=function(e){if(e.tag===13){var t=as(e,134217728);if(t!==null){var i=Qt();ji(t,e,134217728,i)}Hu(e,134217728)}};$p=function(e){if(e.tag===13){var t=ks(e),i=as(e,t);if(i!==null){var s=Qt();ji(i,e,t,s)}Hu(e,t)}};zp=function(){return et};Up=function(e,t){var i=et;try{return et=e,t()}finally{et=i}};Jl=function(e,t,i){switch(t){case"input":if(Wl(e,i),t=i.name,i.type==="radio"&&t!=null){for(i=e;i.parentNode;)i=i.parentNode;for(i=i.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<i.length;t++){var s=i[t];if(s!==e&&s.form===e.form){var n=Pa(s);if(!n)throw Error(ue(90));yp(s),Wl(s,n)}}}break;case"textarea":bp(e,i);break;case"select":t=i.value,t!=null&&kr(e,!!i.multiple,t,!1)}};Tp=Pu;Dp=qs;var hw={usingClientEntryPoint:!1,Events:[Kn,mr,Pa,Lp,Rp,Pu]},Jr={findFiberByHostInstance:Fs,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},dw={bundleType:Jr.bundleType,version:Jr.version,rendererPackageName:Jr.rendererPackageName,rendererConfig:Jr.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:us.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Np(e),e===null?null:e.stateNode},findFiberByHostInstance:Jr.findFiberByHostInstance||cw,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var So=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!So.isDisabled&&So.supportsFiber)try{Aa=So.inject(dw),Yi=So}catch{}}yi.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=hw;yi.createPortal=function(e,t){var i=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!zu(t))throw Error(ue(200));return lw(e,t,null,i)};yi.createRoot=function(e,t){if(!zu(e))throw Error(ue(299));var i=!1,s="",n=hg;return t!=null&&(t.unstable_strictMode===!0&&(i=!0),t.identifierPrefix!==void 0&&(s=t.identifierPrefix),t.onRecoverableError!==void 0&&(n=t.onRecoverableError)),t=Fu(e,1,!1,null,null,i,!1,s,n),e[os]=t.current,Dn(e.nodeType===8?e.parentNode:e),new $u(t)};yi.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(ue(188)):(e=Object.keys(e).join(","),Error(ue(268,e)));return e=Np(t),e=e===null?null:e.stateNode,e};yi.flushSync=function(e){return qs(e)};yi.hydrate=function(e,t,i){if(!Wa(t))throw Error(ue(200));return Va(null,e,t,!0,i)};yi.hydrateRoot=function(e,t,i){if(!zu(e))throw Error(ue(405));var s=i!=null&&i.hydratedSources||null,n=!1,u="",p=hg;if(i!=null&&(i.unstable_strictMode===!0&&(n=!0),i.identifierPrefix!==void 0&&(u=i.identifierPrefix),i.onRecoverableError!==void 0&&(p=i.onRecoverableError)),t=ug(t,null,e,1,i??null,n,!1,u,p),e[os]=t.current,Dn(e),s)for(e=0;e<s.length;e++)i=s[e],n=i._getVersion,n=n(i._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[i,n]:t.mutableSourceEagerHydrationData.push(i,n);return new Ua(t)};yi.render=function(e,t,i){if(!Wa(t))throw Error(ue(200));return Va(null,e,t,!1,i)};yi.unmountComponentAtNode=function(e){if(!Wa(e))throw Error(ue(40));return e._reactRootContainer?(qs(function(){Va(null,null,e,!1,function(){e._reactRootContainer=null,e[os]=null})}),!0):!1};yi.unstable_batchedUpdates=Pu;yi.unstable_renderSubtreeIntoContainer=function(e,t,i,s){if(!Wa(i))throw Error(ue(200));if(e==null||e._reactInternals===void 0)throw Error(ue(38));return Va(e,t,i,!1,s)};yi.version="18.3.1-next-f1338f8080-20240426";function dg(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(dg)}catch(e){console.error(e)}}dg(),dp.exports=yi;var qn=dp.exports,fg,Ud=qn;fg=Ud.createRoot,Ud.hydrateRoot;const pg={"common.save":"Save","common.cancel":"Cancel","common.confirm":"Confirm","common.ok":"OK","common.close":"Close","common.delete":"Delete","common.copy":"Copy","common.rename":"Rename","common.create":"Create","common.back":"Back","common.open":"Open","common.loading":"Loading…","common.done":"Done","token.title":"Access token required","token.placeholder":"Paste HANDMUX_TOKEN","settings.language":"Language","home.empty":"No files opened yet","home.emptyHint":'Switch to "New" to pick one',"home.remove":"Remove","drawer.empty":"No sessions bound yet","drawer.unbind":"Unbind","drawer.bind":"Bind session","drawer.logout":"Log out","windowbar.newWindow":"New window","rename.new_name":"New name","rename.name_placeholder":"Short name","rename.name_rule":"Letters, digits, hyphens only (≤16)","rename.failed":"Rename failed, please retry","rename.saving":"Saving…","newwindow.title":"New window","newwindow.window_name":"Window name (optional)","newwindow.name_placeholder":"Leave blank to auto-name","newwindow.name_rule":"Letters, digits, hyphens only (≤16)","newwindow.start_dir":"Start directory","newwindow.session_dir_named":"{dir} (session dir)","newwindow.session_dir_default":"Session dir (default)","newwindow.choose":"Choose","newwindow.reset_to_session_dir":"Reset to session dir","newwindow.creating":"Creating…","startup.label":"Startup command (optional)","startup.aria":"Startup command","startup.preset_shell":"Plain shell (default)","startup.preset_claude":"claude (launch Claude Code)","startup.preset_claude_continue":"claude -c (resume last session)","startup.preset_codex":"codex (launch Codex CLI)","startup.custom":"Custom…","startup.custom_placeholder":'e.g. claude "fix login bug"',"bind.title":"Bind session","bind.sessionName":"Session name","bind.namePlaceholder":"New session name","bind.pickSession":"Choose a session to bind","bind.newSession":"+ New session","bind.alreadyExists":"Session already exists","bind.bind":"Bind","bind.checking":"Checking…","bind.createAndOpen":"Create & open","bind.creating":"Creating…","bind.createHint":`Session "{name}" doesn't exist — tap "Create & open" to create it`,"bind.alreadyBound":"Session already bound","bind.createFailed":"Create failed, please retry","bind.invalidName":"Only letters, digits, hyphens (≤16)","bind.checkFailed":"Check failed, please retry","bind.startDir":"Start directory","bind.homeDirDefault":"Home directory (default)","bind.choose":"Choose","bind.reset":"Reset","actionsheet.confirmAgain":"Confirm? Tap again","dirpicker.title":"Choose directory","inbox.title":"Inbox","inbox.working":"Working","inbox.done":"Done","inbox.needs":"Needs you","inbox.clearDone":"Clear done","inbox.empty":"No pane status yet","inbox.enableTitle":"Turn on AI session notifications","inbox.enableHint":"Tag every Claude / Codex pane working / waiting on you / done, and get pinged when one needs you.","inbox.enableBtn":"Enable","inbox.enabling":"Enabling…","inbox.enableFailed":"Could not enable — check the server logs.","drawer.orphans.title":"{n} not taken over","drawer.orphans.hint":"Take over to control remotely","inbox.orphans.takeover":"Take over","inbox.orphans.noSession":"no resumable history","inbox.orphans.busy":"busy","inbox.orphans.idle":"idle","inbox.orphans.working":"Taking over…","inbox.orphans.failed":"Takeover failed","inbox.orphans.targetLabel":"Take over into","inbox.orphans.targetNew":"New session","inbox.orphans.killTitle":"The original process","inbox.orphans.killEnd":"End it","inbox.orphans.killKeep":"Keep it","inbox.orphans.recommended":"Recommended","inbox.orphans.killWhy":"If the same session is written from both your computer and your phone, its history gets scrambled. Ending the original lets this device own it cleanly.","inbox.orphans.reopen":"Want to continue on the computer instead? Run tmux attach -t <session> in a terminal (the session name is in your list on the left).","idea.title":"Ideas","idea.editPlaceholder":"Edit idea…","idea.addPlaceholder":"Jot an idea…","idea.add":"Add","idea.empty":"No ideas yet — jot one down","idea.dragSort":"Drag to reorder","idea.fillInput":"Fill into input","idea.send":"Send","doclink.title":"Open file","changelog.title":"What's new","preview.dynamic":"Dynamic preview","preview.static":"Static preview","preview.remainTitle":"Time left — tap to renew / stop","preview.toPcView":"Switch to desktop view","preview.toMobileView":"Switch to mobile view","preview.pcView":"Desktop view","preview.mobileView":"Mobile view","preview.refresh":"Refresh","preview.minimize":"Minimize","preview.ttlDialog":"Preview lifetime","preview.renew":"Renew (reset to 1 hour)","preview.stop":"Stop preview","preview.iframeTitle":"Preview","preview.zoomOut":"Zoom out","preview.zoomIn":"Zoom in","imageviewer.loadFailed":"Failed to load image","imageviewer.saved":"Saved — find it in your album/gallery or Downloads","imageviewer.shareUnsupported":"Image sharing requires Chrome or Safari","imageviewer.zoomOut":"Zoom out","imageviewer.zoomIn":"Zoom in","imageviewer.imageTitle":"Image","imageviewer.saveImage":"Save image","imageviewer.shareImage":"Share image","mic.stop":"Stop voice input","mic.start":"Voice input","dock.send":"Send","dock.send.hint":"Tap to send · hold to insert","dock.phrases":"Phrases","dock.attach":"Upload","dock.history":"History","dock.kbdShow":"Keyboard","dock.kbdHide":"Hide keyboard","history.empty":"No history yet","history.scope":"This window only","dock.input.placeholder":"Say something…","dock.command.placeholder":"Type a command · Enter runs it","dock.mode.agent":"Chat","dock.mode.toggle":"Switch input mode","dock.mode.command":"Command","dock.mode.chat":"Chat","fav.title":"Favorites","fav.add":"Add","fav.addPlaceholder":"Add a favorite…","cmd.editTitle":"Saved commands","cmd.global":"GLOBAL","cmd.window":"THIS WINDOW","cmd.withEnter":"Send directly","cmd.addPlaceholder":"Add a command…","cmd.tabCmd":"Command","cmd.tabKey":"Key","cmd.addTo":"Add to","cmd.addTitle":"Add","cmd.editItem":"Edit","cmd.sticky":"Modifier","cmd.stickyNone":"None","cmd.baseKey":"Key","cmd.pickKey":"Pick a key","cmd.moveUp":"Move up","cmd.moveDown":"Move down","cmd.empty":"None yet","chat.editTitle":"Saved messages","chat.favs":"Saved","chat.tabMsg":"Message","chat.addPlaceholder":"Message / slash-command…","dock.upload.aria":"Upload file","dock.upload.title":"Upload file (saved to home upload area, not the project)","dock.upload.progress":"Uploading {name}{tag}","dock.upload.failed":"Upload failed: {names}","dock.upload.rejected":"Unsupported file type: {names}","app.nameExists":"That name already exists","app.renameFailed":"Rename failed, please retry","app.deleteFailed":"Delete failed, please retry","app.moveFailed":"Move failed, please retry","app.sessionGone":'Session "{name}" not found, it may have closed',"app.docNotFound":"File not found","app.docTooLarge":"File too large (over 2MB)","app.docUnsupported":"Unsupported file or path","app.docOpenFailed":"Open failed, please retry","app.preview":"Preview","app.openPreview":"Open preview","app.ideas":"Ideas","app.files":"Files","app.settings":"Settings","usage.title":"Usage","usage.win5h":"5-hour","usage.winWeekly":"Weekly","usage.winMonthly":"Monthly","usage.winGeneric":"{h}h window","usage.winPrimary":"Limit","usage.winSecondary":"Secondary","usage.resetIn":"resets in {t}","usage.resetSoon":"resetting…","usage.claudeOff":"Not wired yet — Claude's 5h/weekly usage needs the handmux statusLine:","usage.claudePending":"No data yet — send a message in a Claude session, then reopen.","usage.codexOff":"Codex not detected on this machine.","usage.codexNoQuota":"No quota data in the latest session yet.","usage.loadFailed":"Failed to load usage.","usage.updatedNow":"updated just now","usage.updatedMin":"updated {n}m ago","usage.updatedHr":"updated {n}h ago","usage.updatedDay":"updated {n}d ago","usage.activityNote":"Updates on new messages","usage.timeMark":"Time elapsed in this window","app.renameSession":"Rename session","app.renameWindow":"Rename window","app.moveLeft":"◀ Move left","app.moveRight":"Move right ▶","app.deleteWindow":"Delete window","app.deleteLastWindowConfirm":"This is the last window; deleting it closes the whole session! Tap again","app.deleteConfirm":"Delete? Tap again","app.cannotLocate":"Cannot locate","app.pickItsDir":", pick the directory it lives in:","app.noBoundSession":"No bound session yet","app.tapToBind":"Tap here to bind one","app.selectSessionHint":"Tap ☰ at the top-left to pick a session","settings.title":"Settings","settings.group_global":"Global settings","settings.font_size":"Font size","settings.font_decrease":"Decrease font size","settings.font_increase":"Increase font size","settings.font_auto":"Auto","settings.font_auto_title":"Auto-fit to height","settings.whats_new":"What's new","settings.view_changelog":"View changelog","settings.has_update":"Has update","settings.version":"Version","settings.update_available":"Version {v} available","settings.update_how":"On your computer, run","settings.push_notifications":"Push notifications","settings.notify_on":"Enabled ✓","settings.notify_enable":"Enable device notifications","settings.notify_enabled":"Enabled, you should receive a welcome notification","settings.notify_disabled":"Disabled","settings.notify_failed":"Operation failed","settings.processing":"Processing","settings.push_hint":'Listens for "Needs you" and "Done": when a watched session needs your authorization/answer, or a turn just finished, a push is sent to this device.',"settings.push_unsupported":"Push requires Chrome or Safari","settings.group_session":"Current session settings","settings.screen_cols":"Screen columns","settings.cols_dec":"Fewer","settings.cols_dec_title":"Fewer columns","settings.cols_inc":"More","settings.cols_inc_title":"More columns","settings.cols_restore":"Default","settings.cols_restore_title":"Restore default window size","settings.preview_site":"Preview site","settings.preview_static_site":"Preview static site","settings.preview_running_dynamic":"Dynamic preview running","settings.preview_running_static":"Static preview running","settings.preview_remain_title":"Time remaining","settings.preview_remain":"{time} left","settings.preview_renew":"Renew","settings.preview_confirm_stop":"Confirm stop","settings.preview_stop":"Stop","settings.preview_name":"Name: {name}","settings.preview_port":"(port :{port})","settings.preview_type":"Preview type","settings.preview_off":"Off","settings.preview_static":"Static","settings.preview_dynamic":"Dynamic","settings.preview_off_hint":'Preview is off. Choose "Static" to start.',"settings.preview_off_hint_both":'Preview is off. Choose "Static" or "Dynamic" to start.',"settings.preview_dynamic_disabled":"Dynamic port preview is off. To turn it on, point a wildcard preview domain (previewDomain, e.g. *.example.com) at the gateway with a matching TLS cert. See the README for the Cloudflare vs self-hosted specifics.","settings.preview_pick_dir":"Pick directory & start","settings.preview_static_hint":"Pick a directory containing index.html to preview on your phone.","settings.preview_port_placeholder":"Port, e.g. 3000","settings.preview_port_label":"Port","settings.preview_starting":"Starting…","settings.preview_start":"Start","settings.preview_dynamic_hint":"Enter a port running on this machine (dev server / backend); your phone accesses it directly via a subdomain.","settings.dir_picker_hint":"Pick the static site directory to preview (containing index.html)","settings.err_port_not_listening":"That port is not listening; make sure the service is running","settings.err_bad_port":"Invalid port (1–65535)","settings.err_dynamic_disabled":"Dynamic preview is not enabled","settings.err_start_failed":"Failed to start","filebrowser.openDirFailed":"Cannot open this directory","filebrowser.copiedPath":"Path copied: {abs}","filebrowser.mkdirFailed":"Failed to create folder (invalid name or already exists)","filebrowser.downloading":"Downloading {name}","filebrowser.downloadFailed":"Download failed","filebrowser.uploading":"Uploading {name}{tag}","filebrowser.uploadFailed":"Upload failed","filebrowser.uploadPartialFailed":"These files failed to upload: {names}","filebrowser.uploadRejected":"Unsupported file type: {names}","filebrowser.sessionDir":"Session directory","filebrowser.jumpToSessionDir":"Jump to current session directory","filebrowser.parentDir":"Parent directory","filebrowser.rootSelect":"Switch root (home / temp dirs)","filebrowser.pathPlaceholder":"Enter path (live filter / jump)","filebrowser.newFolder":"New folder","filebrowser.createBtn":"Create","filebrowser.uploadFile":"Upload file","filebrowser.uploadToCurrentDir":"Upload to current directory","filebrowser.enterSubdirToUpload":"Enter a subdirectory to upload","filebrowser.folderNamePlaceholder":"Folder name","filebrowser.uploadPendingTo":"Upload “{name}” to the current directory","filebrowser.enterSubdirFirst":"(enter a subdirectory first)","filebrowser.upload":"Upload","filebrowser.savedToDownloads":"Saved “{name}” to the Downloads folder; view it in the system file manager","filebrowser.noMatches":"No matching files or directories","filebrowser.tooMany":"Showing the first {shown} of {total} — type in the path box to filter","filebrowser.previewUnsupported":"Preview not supported for this file type; tap the button on the right to download","filebrowser.copyAbsPath":"Copy absolute path","filebrowser.download":"Download","filebrowser.pickThisDir":"Select this directory {path}","filebrowser.downloadConfirm":"Download {name}?","filemanager.files":"Files","filemanager.closeTab":"Close tab","filemanager.minimize":"Minimize","filemanager.recent":"Recent","filemanager.directory":"Directory","git.errReadRepo":"Cannot read repository","git.errLoad":"Load failed","git.noRepoInDir":"No git repository here yet — pick another directory, or run git init in this one.","git.outsideRoots":"This folder is outside the area handmux can open — only your home directory and /tmp are reachable. Move the repo under your home directory to browse it here.","git.errReadDir":"Cannot read this directory","git.commitDetail":"Commit details","git.diff":"Diff","git.bindRepo":"Bind repository","git.collapse":"Collapse","git.currentBranch":"Current branch","git.switchViewedBranch":"Switch viewed branch","git.switchBranch":"Switch branch","git.noBranches":"No branches","git.noRepoBound":'No repository bound — tap "+" at the top left to choose a directory.',"git.changes":"Changes","git.commits":"Commits","git.pullToLoadMore":"Pull to load more","git.pickerHint":"Choose a directory to auto-discover git repositories inside it","git.cleanTree":"Working tree clean","git.noCommits":"No commits","git.noDiff":"No diff","git.fontSmaller":"Decrease font size","git.fontLarger":"Increase font size","git.diffTruncated":"Diff too large, truncated","cmd.panel":"Command panel","cmd.title":"Commands","cmd.empty":"No commands yet — send one or save a favorite","cmd.favorites":"Favorites","cmd.scopeGlobal":"Global · all sessions","cmd.recent":"Recent","cmd.scopeSession":"This session only","cmd.favorite":"Favorite","cmd.unfavorite":"Unfavorite","doc.home":"Recent","doc.read":"Read aloud","doc.pauseRead":"Pause reading","doc.resumeRead":"Resume reading","doc.stopRead":"Stop reading","doc.rate":"Speed","doc.fontSmaller":"Smaller font","doc.fontLarger":"Larger font","inbox.view.working":"Running","inbox.view.done":"Completed","inbox.view.needs":"Needs you","push.unsupported":"Push notifications require Chrome or Safari","push.iosAddToHome":'On iOS, first "Add to Home Screen", then open from the home-screen icon to enable',"push.permissionDenied":"Notification permission denied","push.noVapid":"Push is not configured on the server (VAPID)","push.subscribeFailed":"Failed to report subscription","push.sendFailed":"Send failed","api.loadFailed":"Load failed","api.uploadFailed":"Upload failed","upload.title":"Uploading","upload.processing":"Sent — receiving on the server…","api.uploadBadDir":"Cannot upload to this directory","api.uploadDuplicate":"A file with this name already exists","api.uploadTooLarge":"File too large (50MB limit)","api.uploadBadType":"Unsupported file type","time.secAgo":"{n}s ago","time.minAgo":"{n}m ago","time.hourAgo":"{n}h ago","time.dayAgo":"{n}d ago","time.expired":"Expired","time.minutes":"{n} min"},fw={"common.save":"保存","common.cancel":"取消","common.confirm":"确认","common.ok":"确定","common.close":"关闭","common.delete":"删除","common.copy":"复制","common.rename":"重命名","common.create":"新建","common.back":"返回","common.open":"打开","common.loading":"加载中…","common.done":"完成","token.title":"需要访问 token","token.placeholder":"粘贴 HANDMUX_TOKEN","settings.language":"语言 Language","home.empty":"还没有打开过文件","home.emptyHint":"切到「新增」去挑一个","home.remove":"移除","drawer.empty":"还没有绑定会话","drawer.unbind":"解绑","drawer.bind":"绑定会话","drawer.logout":"退出登录","windowbar.newWindow":"新建窗口","rename.new_name":"新名称","rename.name_placeholder":"名字缩写","rename.name_rule":"只能用字母、数字、横线(≤16)","rename.failed":"重命名失败,请重试","rename.saving":"保存中…","newwindow.title":"新建窗口","newwindow.window_name":"窗口名称(可选)","newwindow.name_placeholder":"留空自动命名","newwindow.name_rule":"只能用字母、数字、横线(≤16)","newwindow.start_dir":"起始目录","newwindow.session_dir_named":"{dir}(会话目录)","newwindow.session_dir_default":"会话目录(默认)","newwindow.choose":"选择","newwindow.reset_to_session_dir":"重置为会话目录","newwindow.creating":"新建中…","startup.label":"启动命令(可选)","startup.aria":"启动命令","startup.preset_shell":"空 shell(默认)","startup.preset_claude":"claude(启动 Claude Code)","startup.preset_claude_continue":"claude -c(接着上次会话)","startup.preset_codex":"codex(启动 Codex CLI)","startup.custom":"自定义…","startup.custom_placeholder":'例如 claude "修复登录bug"',"bind.title":"绑定会话","bind.sessionName":"会话名称","bind.namePlaceholder":"新会话名","bind.pickSession":"选择要绑定的会话","bind.newSession":"+ 新建会话","bind.alreadyExists":"该会话已存在","bind.bind":"绑定","bind.checking":"校验中…","bind.createAndOpen":"新建并打开","bind.creating":"新建中…","bind.createHint":"会话「{name}」不存在,点「新建并打开」创建","bind.alreadyBound":"已绑定该会话","bind.createFailed":"新建失败,请重试","bind.invalidName":"只能用字母、数字、横线(≤16)","bind.checkFailed":"校验失败,请重试","bind.startDir":"起始目录","bind.homeDirDefault":"主目录(默认)","bind.choose":"选择","bind.reset":"重置","actionsheet.confirmAgain":"确认?再点一次","dirpicker.title":"选择目录","inbox.title":"收件箱","inbox.working":"进行中","inbox.done":"已完成","inbox.needs":"需要你","inbox.clearDone":"清除已完成","inbox.empty":"暂无面板状态","inbox.enableTitle":"开启 AI 会话通知","inbox.enableHint":"把每个 Claude / Codex 面板标记为进行中 / 需要你 / 已完成,需要你时还会推送提醒。","inbox.enableBtn":"开启","inbox.enabling":"开启中…","inbox.enableFailed":"开启失败 —— 看看服务端日志。","drawer.orphans.title":"{n} 个未接管会话","drawer.orphans.hint":"接管即可远程操控","inbox.orphans.takeover":"接管","inbox.orphans.noSession":"无可续接的历史","inbox.orphans.busy":"运行中","inbox.orphans.idle":"空闲","inbox.orphans.working":"接管中…","inbox.orphans.failed":"接管失败","inbox.orphans.targetLabel":"接管到","inbox.orphans.targetNew":"新建会话","inbox.orphans.killTitle":"接管后原来的进程","inbox.orphans.killEnd":"结束","inbox.orphans.killKeep":"保留","inbox.orphans.recommended":"推荐","inbox.orphans.killWhy":"同一个会话如果电脑和手机同时在写,历史记录会错乱。结束原进程后由手机这边独占,更稳妥。","inbox.orphans.reopen":"想回电脑上继续?在电脑终端运行 tmux attach -t 会话名 即可(会话名见左侧会话列表)。","idea.title":"想法","idea.editPlaceholder":"编辑想法…","idea.addPlaceholder":"记一条想法…","idea.add":"添加","idea.empty":"还没有想法,记一条吧","idea.dragSort":"拖动排序","idea.fillInput":"填入输入框","idea.send":"发送","doclink.title":"打开文件","changelog.title":"新功能","preview.dynamic":"动态预览","preview.static":"静态预览","preview.remainTitle":"剩余有效期 — 点击续期 / 停止","preview.toPcView":"切换到电脑视图","preview.toMobileView":"切换到手机视图","preview.pcView":"电脑视图","preview.mobileView":"手机视图","preview.refresh":"刷新","preview.minimize":"收起","preview.ttlDialog":"预览有效期","preview.renew":"续期(重置为 1 小时)","preview.stop":"停止预览","preview.iframeTitle":"预览","preview.zoomOut":"缩小","preview.zoomIn":"放大","imageviewer.loadFailed":"图片加载失败","imageviewer.saved":"已保存,可在相册/图库或「下载」中查看","imageviewer.shareUnsupported":"图片分享需要 Chrome 或 Safari 浏览器","imageviewer.zoomOut":"缩小","imageviewer.zoomIn":"放大","imageviewer.imageTitle":"图片","imageviewer.saveImage":"保存图片","imageviewer.shareImage":"分享图片","mic.stop":"停止语音输入","mic.start":"语音输入","dock.send":"发送","dock.send.hint":"点发送 · 长按填入","dock.phrases":"常用语","dock.attach":"上传","dock.history":"历史","dock.kbdShow":"展开键盘","dock.kbdHide":"收起键盘","history.empty":"还没有发送记录","history.scope":"仅当前窗口的记录","dock.input.placeholder":"说点什么…","dock.command.placeholder":"输入命令 · 回车执行","dock.mode.agent":"对话","dock.mode.toggle":"切换输入模式","dock.mode.command":"命令模式","dock.mode.chat":"聊天模式","fav.title":"常用","fav.add":"添加","fav.addPlaceholder":"加一条常用…","cmd.editTitle":"常用命令","cmd.global":"全局","cmd.window":"当前窗口","cmd.withEnter":"直接发送","cmd.addPlaceholder":"加一条命令…","cmd.tabCmd":"命令","cmd.tabKey":"按键","cmd.addTo":"添加到","cmd.addTitle":"添加","cmd.editItem":"编辑","cmd.sticky":"粘滞键","cmd.stickyNone":"无","cmd.baseKey":"基键","cmd.pickKey":"选择按键","cmd.moveUp":"上移","cmd.moveDown":"下移","cmd.empty":"还没有","chat.editTitle":"常用消息","chat.favs":"常用","chat.tabMsg":"消息","chat.addPlaceholder":"消息 / 斜杠命令…","dock.upload.aria":"上传文件","dock.upload.title":"上传文件(存到家目录上传区,不进项目)","dock.upload.progress":"上传 {name}{tag}","dock.upload.failed":"上传失败:{names}","dock.upload.rejected":"不支持的文件类型:{names}","app.nameExists":"该名已存在","app.renameFailed":"重命名失败,请重试","app.deleteFailed":"删除失败,请重试","app.moveFailed":"移动失败,请重试","app.sessionGone":"会话「{name}」不存在,可能已关闭","app.docNotFound":"文件不存在","app.docTooLarge":"文件过大(超过 2MB)","app.docUnsupported":"不支持的文件或路径","app.docOpenFailed":"打开失败,请重试","app.preview":"预览","app.openPreview":"打开预览","app.ideas":"想法","app.files":"文件","app.settings":"设置","usage.title":"用量","usage.win5h":"5 小时","usage.winWeekly":"本周","usage.winMonthly":"本月","usage.winGeneric":"{h} 小时窗口","usage.winPrimary":"额度","usage.winSecondary":"次级额度","usage.resetIn":"{t}后重置","usage.resetSoon":"即将重置…","usage.claudeOff":"尚未接入 —— Claude 的 5h/周额度需要 handmux statusLine:","usage.claudePending":"暂无数据 —— 在 Claude 会话里发一条消息,再重新打开。","usage.codexOff":"本机未检测到 Codex。","usage.codexNoQuota":"最近的会话里还没有额度数据。","usage.loadFailed":"加载用量失败。","usage.updatedNow":"刚刚更新","usage.updatedMin":"{n} 分钟前更新","usage.updatedHr":"{n} 小时前更新","usage.updatedDay":"{n} 天前更新","usage.activityNote":"在有新消息时更新","usage.timeMark":"本窗口已过去的时间","app.renameSession":"重命名会话","app.renameWindow":"重命名窗口","app.moveLeft":"◀ 左移","app.moveRight":"右移 ▶","app.deleteWindow":"删除窗口","app.deleteLastWindowConfirm":"这是最后一个窗口,删除将关闭整个会话!再点一次","app.deleteConfirm":"确认删除?再点一次","app.cannotLocate":"无法定位","app.pickItsDir":",请选它所在的目录:","app.noBoundSession":"还没有绑定会话","app.tapToBind":"点此绑定一个","app.selectSessionHint":"点击左上角 ☰ 选择会话","settings.title":"设置","settings.group_global":"全局设置","settings.font_size":"字体大小","settings.font_decrease":"减小字体","settings.font_increase":"增大字体","settings.font_auto":"自适应","settings.font_auto_title":"按高度自动适配","settings.whats_new":"新功能","settings.view_changelog":"查看更新日志","settings.has_update":"有更新","settings.version":"版本","settings.update_available":"有新版本 v{v} 可用","settings.update_how":"在电脑上运行","settings.push_notifications":"推送通知","settings.notify_on":"已开启 ✓","settings.notify_enable":"开启设备通知","settings.notify_enabled":"已开启,应会收到一条欢迎通知","settings.notify_disabled":"已关闭","settings.notify_failed":"操作失败","settings.processing":"处理中","settings.push_hint":"监听「需要你」和「已完成」:所关注会话需要你授权/回答,或一个回合刚做完时,推送到此设备。","settings.push_unsupported":"推送需要 Chrome 或 Safari 浏览器","settings.group_session":"当前会话设置","settings.screen_cols":"屏幕列数","settings.cols_dec":"减少","settings.cols_dec_title":"减少列数","settings.cols_inc":"增加","settings.cols_inc_title":"增加列数","settings.cols_restore":"默认","settings.cols_restore_title":"恢复窗口默认尺寸","settings.preview_site":"预览站点","settings.preview_static_site":"预览静态站点","settings.preview_running_dynamic":"动态预览 运行中","settings.preview_running_static":"静态预览 运行中","settings.preview_remain_title":"剩余有效期","settings.preview_remain":"剩 {time}","settings.preview_renew":"续期","settings.preview_confirm_stop":"确认停止","settings.preview_stop":"停止","settings.preview_name":"名称:{name}","settings.preview_port":"(端口 :{port})","settings.preview_type":"预览类型","settings.preview_off":"不开启","settings.preview_static":"静态","settings.preview_dynamic":"动态","settings.preview_off_hint":"未开启预览。选择「静态」开始。","settings.preview_off_hint_both":"未开启预览。选择「静态」或「动态」开始。","settings.preview_dynamic_disabled":"动态端口预览未启用。要开启:把一个通配预览域名(previewDomain,如 *.example.com)指向网关,并配上对应的 TLS 证书。Cloudflare / 自建的证书差异见 README。","settings.preview_pick_dir":"选择目录启动","settings.preview_static_hint":"选一个含 index.html 的目录,在手机上预览。","settings.preview_port_placeholder":"端口,如 3000","settings.preview_port_label":"端口","settings.preview_starting":"启动中…","settings.preview_start":"启动","settings.preview_dynamic_hint":"填本机正在运行的端口(dev server / 后端),手机经子域名直接访问。","settings.dir_picker_hint":"选择要预览的静态站点目录(含 index.html)","settings.err_port_not_listening":"该端口未在监听,请确认服务已启动","settings.err_bad_port":"端口不合法(1–65535)","settings.err_dynamic_disabled":"动态预览未开启","settings.err_start_failed":"启动失败","filebrowser.openDirFailed":"无法打开该目录","filebrowser.copiedPath":"已复制路径:{abs}","filebrowser.mkdirFailed":"新建目录失败(名称非法或已存在)","filebrowser.downloading":"下载 {name}","filebrowser.downloadFailed":"下载失败","filebrowser.uploading":"上传 {name}{tag}","filebrowser.uploadFailed":"上传失败","filebrowser.uploadPartialFailed":"以下文件上传失败:{names}","filebrowser.uploadRejected":"不支持的文件类型:{names}","filebrowser.sessionDir":"会话目录","filebrowser.jumpToSessionDir":"跳到当前会话目录","filebrowser.parentDir":"上级目录","filebrowser.rootSelect":"切换根目录(家目录 / 临时目录)","filebrowser.pathPlaceholder":"输入路径(实时筛选/跳转)","filebrowser.newFolder":"新建文件夹","filebrowser.createBtn":"创建","filebrowser.uploadFile":"上传文件","filebrowser.uploadToCurrentDir":"上传到当前目录","filebrowser.enterSubdirToUpload":"请进入一个子目录上传","filebrowser.folderNamePlaceholder":"文件夹名称","filebrowser.uploadPendingTo":"把「{name}」上传到当前目录","filebrowser.enterSubdirFirst":"(请先进入一个子目录)","filebrowser.upload":"上传","filebrowser.savedToDownloads":"已保存「{name}」到「下载」文件夹,可在系统文件管理器查看","filebrowser.noMatches":"没有匹配的文件或目录","filebrowser.tooMany":"共 {total} 项,只显示前 {shown} 项——在路径框输入关键词可筛选","filebrowser.previewUnsupported":"暂不支持该类型文件的预览,点右侧按钮可下载","filebrowser.copyAbsPath":"复制绝对路径","filebrowser.download":"下载","filebrowser.pickThisDir":"选定此目录 {path}","filebrowser.downloadConfirm":"下载 {name}?","filemanager.files":"文件","filemanager.closeTab":"关闭标签","filemanager.minimize":"最小化","filemanager.recent":"最近","filemanager.directory":"目录","git.errReadRepo":"无法读取仓库","git.errLoad":"加载失败","git.noRepoInDir":"这个目录还不是 git 仓库 —— 换一个目录,或在这里 git init 一下。","git.outsideRoots":"这个目录在 handmux 可访问范围之外 —— 只开放主目录和 /tmp。把仓库放到主目录下,就能在这里查看了。","git.errReadDir":"无法读取该目录","git.commitDetail":"提交详情","git.diff":"差异","git.bindRepo":"绑定仓库","git.collapse":"收起","git.currentBranch":"当前分支","git.switchViewedBranch":"切换查看的分支","git.switchBranch":"切换分支","git.noBranches":"暂无分支","git.noRepoBound":"未绑定仓库,点左上角「+」选择一个目录。","git.changes":"变更","git.commits":"提交","git.pullToLoadMore":"下拉加载更多","git.pickerHint":"选择一个目录,自动查找其中的 git 仓库","git.cleanTree":"工作区干净","git.noCommits":"暂无提交","git.noDiff":"无差异","git.fontSmaller":"缩小字体","git.fontLarger":"放大字体","git.diffTruncated":"diff 过大,已截断","cmd.panel":"命令面板","cmd.title":"命令","cmd.empty":"还没有命令,发送一条或保存常用","cmd.favorites":"常用","cmd.scopeGlobal":"全局 · 所有会话","cmd.recent":"最近","cmd.scopeSession":"仅本会话","cmd.favorite":"收藏","cmd.unfavorite":"取消收藏","doc.home":"最近","doc.read":"朗读","doc.pauseRead":"暂停朗读","doc.resumeRead":"继续朗读","doc.stopRead":"停止朗读","doc.rate":"语速","doc.fontSmaller":"缩小字体","doc.fontLarger":"放大字体","inbox.view.working":"进行中","inbox.view.done":"已完成","inbox.view.needs":"需要你","push.unsupported":"推送通知需要 Chrome 或 Safari 浏览器","push.iosAddToHome":'iOS 需先把本站"添加到主屏幕",从主屏图标打开后再开启',"push.permissionDenied":"通知权限被拒绝","push.noVapid":"服务端未配置推送(VAPID)","push.subscribeFailed":"订阅上报失败","push.sendFailed":"发送失败","api.loadFailed":"加载失败","api.uploadFailed":"上传失败","upload.title":"上传中","upload.processing":"已发送,服务器接收中…","api.uploadBadDir":"无法上传到该目录","api.uploadDuplicate":"已存在同名文件","api.uploadTooLarge":"文件过大(上限 50MB)","api.uploadBadType":"不支持的文件类型","time.secAgo":"{n}秒前","time.minAgo":"{n}分钟前","time.hourAgo":"{n}小时前","time.dayAgo":"{n}天前","time.expired":"已过期","time.minutes":"{n} 分钟"},pw={"common.save":"儲存","common.cancel":"取消","common.confirm":"確認","common.ok":"確定","common.close":"關閉","common.delete":"刪除","common.copy":"複製","common.rename":"重新命名","common.create":"新增","common.back":"返回","common.open":"開啟","common.loading":"載入中…","common.done":"完成","token.title":"需要存取 Token","token.placeholder":"貼上 HANDMUX_TOKEN","settings.language":"語言 Language","home.empty":"尚未開啟任何檔案","home.emptyHint":"切換到「新增」挑選一個","home.remove":"移除","drawer.empty":"尚未綁定工作階段","drawer.unbind":"解除綁定","drawer.bind":"綁定工作階段","drawer.logout":"登出","windowbar.newWindow":"新增視窗","rename.new_name":"新名稱","rename.name_placeholder":"名稱縮寫","rename.name_rule":"只能使用字母、數字、連字號(≤16)","rename.failed":"重新命名失敗,請重試","rename.saving":"儲存中…","newwindow.title":"新增視窗","newwindow.window_name":"視窗名稱(選填)","newwindow.name_placeholder":"留空自動命名","newwindow.name_rule":"只能使用字母、數字、連字號(≤16)","newwindow.start_dir":"起始目錄","newwindow.session_dir_named":"{dir}(工作階段目錄)","newwindow.session_dir_default":"工作階段目錄(預設)","newwindow.choose":"選擇","newwindow.reset_to_session_dir":"重置為工作階段目錄","newwindow.creating":"建立中…","startup.label":"啟動命令(選填)","startup.aria":"啟動命令","startup.preset_shell":"空白 Shell(預設)","startup.preset_claude":"claude(啟動 Claude Code)","startup.preset_claude_continue":"claude -c(繼續上次工作階段)","startup.preset_codex":"codex(啟動 Codex CLI)","startup.custom":"自訂…","startup.custom_placeholder":'例如 claude "修復登入 bug"',"bind.title":"綁定工作階段","bind.sessionName":"工作階段名稱","bind.namePlaceholder":"新工作階段名稱","bind.pickSession":"選擇要綁定的工作階段","bind.newSession":"+ 新增工作階段","bind.alreadyExists":"此工作階段已存在","bind.bind":"綁定","bind.checking":"驗證中…","bind.createAndOpen":"新增並開啟","bind.creating":"建立中…","bind.createHint":"工作階段「{name}」不存在,點「新增並開啟」建立","bind.alreadyBound":"已綁定此工作階段","bind.createFailed":"建立失敗,請重試","bind.invalidName":"只能使用字母、數字、連字號(≤16)","bind.checkFailed":"驗證失敗,請重試","bind.startDir":"起始目錄","bind.homeDirDefault":"主目錄(預設)","bind.choose":"選擇","bind.reset":"重置","actionsheet.confirmAgain":"確認?再點一次","dirpicker.title":"選擇目錄","inbox.title":"收件匣","inbox.working":"進行中","inbox.done":"已完成","inbox.needs":"需要你","inbox.clearDone":"清除已完成","inbox.empty":"目前沒有面板狀態","inbox.enableTitle":"開啟 AI 工作階段通知","inbox.enableHint":"將每個 Claude / Codex 面板標記為進行中 / 需要你 / 已完成,需要時也會推播提醒。","inbox.enableBtn":"開啟","inbox.enabling":"開啟中…","inbox.enableFailed":"開啟失敗——請查看伺服器日誌。","idea.title":"想法","idea.editPlaceholder":"編輯想法…","idea.addPlaceholder":"記錄一條想法…","idea.add":"新增","idea.empty":"還沒有想法,記錄一條吧","idea.dragSort":"拖曳排序","idea.fillInput":"填入輸入框","idea.send":"傳送","doclink.title":"開啟檔案","changelog.title":"新功能","preview.dynamic":"動態預覽","preview.static":"靜態預覽","preview.remainTitle":"剩餘有效期 — 點擊續期 / 停止","preview.toPcView":"切換到電腦檢視","preview.toMobileView":"切換到手機檢視","preview.pcView":"電腦檢視","preview.mobileView":"手機檢視","preview.refresh":"重新整理","preview.minimize":"收起","preview.ttlDialog":"預覽有效期","preview.renew":"續期(重置為 1 小時)","preview.stop":"停止預覽","preview.iframeTitle":"預覽","preview.zoomOut":"縮小","preview.zoomIn":"放大","imageviewer.loadFailed":"圖片載入失敗","imageviewer.saved":"已儲存,可在相簿或「下載」中查看","imageviewer.shareUnsupported":"圖片分享需要 Chrome 或 Safari 瀏覽器","imageviewer.zoomOut":"縮小","imageviewer.zoomIn":"放大","imageviewer.imageTitle":"圖片","imageviewer.saveImage":"儲存圖片","imageviewer.shareImage":"分享圖片","mic.stop":"停止語音輸入","mic.start":"語音輸入","dock.send":"傳送","dock.send.hint":"點傳送 · 長按填入","dock.phrases":"常用語","dock.attach":"上傳","dock.history":"歷史","history.empty":"還沒有發送記錄","history.scope":"僅目前視窗的記錄","dock.input.placeholder":"說點什麼…","dock.command.placeholder":"輸入指令 · Enter 執行","dock.mode.agent":"對話","dock.mode.toggle":"切換輸入模式","dock.mode.command":"命令模式","dock.mode.chat":"聊天模式","fav.title":"常用","fav.add":"新增","fav.addPlaceholder":"新增常用…","dock.upload.aria":"上傳檔案","dock.upload.title":"上傳檔案(存到主目錄上傳區,不進專案)","dock.upload.progress":"上傳 {name}{tag}","dock.upload.failed":"上傳失敗:{names}","app.nameExists":"該名稱已存在","app.renameFailed":"重新命名失敗,請重試","app.deleteFailed":"刪除失敗,請重試","app.moveFailed":"移動失敗,請重試","app.sessionGone":"工作階段「{name}」不存在,可能已關閉","app.docNotFound":"檔案不存在","app.docTooLarge":"檔案過大(超過 2MB)","app.docUnsupported":"不支援的檔案或路徑","app.docOpenFailed":"開啟失敗,請重試","app.preview":"預覽","app.openPreview":"開啟預覽","app.ideas":"想法","app.files":"檔案","app.settings":"設定","app.renameSession":"重新命名工作階段","app.renameWindow":"重新命名視窗","app.moveLeft":"◀ 左移","app.moveRight":"右移 ▶","app.deleteWindow":"刪除視窗","app.deleteLastWindowConfirm":"這是最後一個視窗,刪除將關閉整個工作階段!再點一次","app.deleteConfirm":"確認刪除?再點一次","app.cannotLocate":"無法定位","app.pickItsDir":",請選擇所在目錄:","app.noBoundSession":"尚未綁定工作階段","app.tapToBind":"點此綁定一個","app.selectSessionHint":"點擊左上角 ☰ 選擇工作階段","settings.title":"設定","settings.group_global":"全域設定","settings.font_size":"字型大小","settings.font_decrease":"縮小字型","settings.font_increase":"放大字型","settings.font_auto":"自適應","settings.font_auto_title":"依高度自動調整","settings.whats_new":"新功能","settings.view_changelog":"查看更新日誌","settings.has_update":"有更新","settings.version":"版本","settings.update_available":"有新版本 v{v} 可用","settings.update_how":"在電腦上執行","settings.push_notifications":"推播通知","settings.notify_on":"已開啟 ✓","settings.notify_enable":"開啟裝置通知","settings.notify_enabled":"已開啟,應會收到一則歡迎通知","settings.notify_disabled":"已關閉","settings.notify_failed":"操作失敗","settings.processing":"處理中","settings.push_hint":"監聽「需要你」和「已完成」:所關注工作階段需要授權/回答,或一輪剛完成時,推播到此裝置。","settings.push_unsupported":"推播需要 Chrome 或 Safari 瀏覽器","settings.group_session":"目前工作階段設定","settings.screen_cols":"螢幕欄數","settings.cols_dec":"減少","settings.cols_dec_title":"減少欄數","settings.cols_inc":"增加","settings.cols_inc_title":"增加欄數","settings.cols_restore":"預設","settings.cols_restore_title":"恢復視窗預設尺寸","settings.preview_site":"預覽站台","settings.preview_static_site":"預覽靜態站台","settings.preview_running_dynamic":"動態預覽 執行中","settings.preview_running_static":"靜態預覽 執行中","settings.preview_remain_title":"剩餘有效期","settings.preview_remain":"剩 {time}","settings.preview_renew":"續期","settings.preview_confirm_stop":"確認停止","settings.preview_stop":"停止","settings.preview_name":"名稱:{name}","settings.preview_port":"(連接埠:{port})","settings.preview_type":"預覽類型","settings.preview_off":"不開啟","settings.preview_static":"靜態","settings.preview_dynamic":"動態","settings.preview_off_hint":"未開啟預覽。選擇「靜態」開始。","settings.preview_off_hint_both":"未開啟預覽。選擇「靜態」或「動態」開始。","settings.preview_dynamic_disabled":"動態連接埠預覽未啟用。要開啟:將一個萬用字元預覽網域(previewDomain,如 *.example.com)指向閘道,並設定對應的 TLS 憑證。Cloudflare / 自建憑證差異請見 README。","settings.preview_pick_dir":"選擇目錄啟動","settings.preview_static_hint":"選一個含 index.html 的目錄,在手機上預覽。","settings.preview_port_placeholder":"連接埠,如 3000","settings.preview_port_label":"連接埠","settings.preview_starting":"啟動中…","settings.preview_start":"啟動","settings.preview_dynamic_hint":"填入本機正在執行的連接埠(dev server / 後端),手機透過子網域直接存取。","settings.dir_picker_hint":"選擇要預覽的靜態站台目錄(含 index.html)","settings.err_port_not_listening":"該連接埠未在監聽,請確認服務已啟動","settings.err_bad_port":"連接埠不合法(1–65535)","settings.err_dynamic_disabled":"動態預覽未開啟","settings.err_start_failed":"啟動失敗","filebrowser.openDirFailed":"無法開啟該目錄","filebrowser.copiedPath":"已複製路徑:{abs}","filebrowser.mkdirFailed":"建立目錄失敗(名稱不合法或已存在)","filebrowser.downloading":"下載 {name}","filebrowser.downloadFailed":"下載失敗","filebrowser.uploading":"上傳 {name}{tag}","filebrowser.uploadFailed":"上傳失敗","filebrowser.uploadPartialFailed":"以下檔案上傳失敗:{names}","filebrowser.sessionDir":"工作階段目錄","filebrowser.jumpToSessionDir":"跳到目前工作階段目錄","filebrowser.parentDir":"上層目錄","filebrowser.rootSelect":"切換根目錄(主目錄 / 暫存目錄)","filebrowser.pathPlaceholder":"輸入路徑(即時篩選/跳轉)","filebrowser.newFolder":"新增資料夾","filebrowser.createBtn":"建立","filebrowser.uploadFile":"上傳檔案","filebrowser.uploadToCurrentDir":"上傳到目前目錄","filebrowser.enterSubdirToUpload":"請進入一個子目錄上傳","filebrowser.folderNamePlaceholder":"資料夾名稱","filebrowser.uploadPendingTo":"將「{name}」上傳到目前目錄","filebrowser.enterSubdirFirst":"(請先進入一個子目錄)","filebrowser.upload":"上傳","filebrowser.savedToDownloads":"已儲存「{name}」到「下載」資料夾,可在系統檔案管理員查看","filebrowser.noMatches":"沒有符合的檔案或目錄","filebrowser.tooMany":"共 {total} 項,僅顯示前 {shown} 項——在路徑框輸入關鍵字可篩選","filebrowser.previewUnsupported":"暫不支援此類型檔案的預覽,點右側按鈕可下載","filebrowser.copyAbsPath":"複製絕對路徑","filebrowser.download":"下載","filebrowser.pickThisDir":"選定此目錄 {path}","filebrowser.downloadConfirm":"下載 {name}?","filemanager.files":"檔案","filemanager.closeTab":"關閉標籤","filemanager.minimize":"最小化","filemanager.recent":"最近","filemanager.directory":"目錄","git.errReadRepo":"無法讀取儲存庫","git.errLoad":"載入失敗","git.noRepoInDir":"這個目錄還不是 git 儲存庫 —— 換一個目錄,或在這裡 git init 一下。","git.outsideRoots":"這個目錄在 handmux 可存取範圍之外 —— 只開放主目錄和 /tmp。把儲存庫放到主目錄下,就能在這裡檢視了。","git.errReadDir":"無法讀取該目錄","git.commitDetail":"提交詳情","git.diff":"差異","git.bindRepo":"綁定儲存庫","git.collapse":"收起","git.currentBranch":"目前分支","git.switchViewedBranch":"切換查看的分支","git.switchBranch":"切換分支","git.noBranches":"目前沒有分支","git.noRepoBound":"未綁定儲存庫,點左上角「+」選擇一個目錄。","git.changes":"變更","git.commits":"提交","git.pullToLoadMore":"下拉載入更多","git.pickerHint":"選擇一個目錄,自動尋找其中的 git 儲存庫","git.cleanTree":"工作區乾淨","git.noCommits":"目前沒有提交","git.noDiff":"無差異","git.fontSmaller":"縮小字型","git.fontLarger":"放大字型","git.diffTruncated":"diff 過大,已截斷","cmd.panel":"命令面板","cmd.title":"命令","cmd.empty":"還沒有命令,傳送一條或儲存常用","cmd.favorites":"常用","cmd.scopeGlobal":"全域 · 所有工作階段","cmd.recent":"最近","cmd.scopeSession":"僅本工作階段","cmd.favorite":"收藏","cmd.unfavorite":"取消收藏","doc.home":"最近","doc.read":"朗讀","doc.pauseRead":"暫停朗讀","doc.resumeRead":"繼續朗讀","doc.stopRead":"停止朗讀","doc.rate":"語速","doc.fontSmaller":"縮小字型","doc.fontLarger":"放大字型","inbox.view.working":"進行中","inbox.view.done":"已完成","inbox.view.needs":"需要你","push.unsupported":"推播通知需要 Chrome 或 Safari 瀏覽器","push.iosAddToHome":"iOS 需先將本站「加入主畫面」,從主畫面圖示開啟後再開啟","push.permissionDenied":"通知權限被拒絕","push.noVapid":"伺服器未設定推播(VAPID)","push.subscribeFailed":"訂閱回報失敗","push.sendFailed":"傳送失敗","api.loadFailed":"載入失敗","api.uploadFailed":"上傳失敗","upload.title":"上傳中","upload.processing":"已傳送,伺服器接收中…","api.uploadBadDir":"無法上傳到該目錄","api.uploadDuplicate":"已存在同名檔案","api.uploadTooLarge":"檔案過大(上限 50MB)","api.uploadBadType":"不支援的檔案類型","time.secAgo":"{n} 秒前","time.minAgo":"{n} 分鐘前","time.hourAgo":"{n} 小時前","time.dayAgo":"{n} 天前","time.expired":"已過期","time.minutes":"{n} 分鐘"},mw={"common.save":"保存","common.cancel":"キャンセル","common.confirm":"確認","common.ok":"OK","common.close":"閉じる","common.delete":"削除","common.copy":"コピー","common.rename":"名前を変更","common.create":"新規作成","common.back":"戻る","common.open":"開く","common.loading":"読み込み中…","common.done":"完了","token.title":"アクセストークンが必要です","token.placeholder":"HANDMUX_TOKEN を貼り付け","settings.language":"言語 Language","home.empty":"ファイルが開かれていません","home.emptyHint":"「新規」タブでファイルを選択してください","home.remove":"削除","drawer.empty":"セッションが紐付けられていません","drawer.unbind":"紐付け解除","drawer.bind":"セッションを紐付け","drawer.logout":"ログアウト","windowbar.newWindow":"新規ウィンドウ","rename.new_name":"新しい名前","rename.name_placeholder":"短い名前","rename.name_rule":"英数字とハイフンのみ(≤16文字)","rename.failed":"名前の変更に失敗しました。再試行してください","rename.saving":"保存中…","newwindow.title":"新規ウィンドウ","newwindow.window_name":"ウィンドウ名(任意)","newwindow.name_placeholder":"空白で自動命名","newwindow.name_rule":"英数字とハイフンのみ(≤16文字)","newwindow.start_dir":"開始ディレクトリ","newwindow.session_dir_named":"{dir}(セッションディレクトリ)","newwindow.session_dir_default":"セッションディレクトリ(デフォルト)","newwindow.choose":"選択","newwindow.reset_to_session_dir":"セッションディレクトリにリセット","newwindow.creating":"作成中…","startup.label":"起動コマンド(任意)","startup.aria":"起動コマンド","startup.preset_shell":"空のシェル(デフォルト)","startup.preset_claude":"claude(Claude Code を起動)","startup.preset_claude_continue":"claude -c(前回のセッションを継続)","startup.preset_codex":"codex(Codex CLI を起動)","startup.custom":"カスタム…","startup.custom_placeholder":'例:claude "ログインバグを修正"',"bind.title":"セッションを紐付け","bind.sessionName":"セッション名","bind.namePlaceholder":"新しいセッション名","bind.pickSession":"紐付けるセッションを選択","bind.newSession":"+ 新規セッション","bind.alreadyExists":"このセッションは既に存在します","bind.bind":"紐付け","bind.checking":"確認中…","bind.createAndOpen":"作成して開く","bind.creating":"作成中…","bind.createHint":"セッション「{name}」が存在しません。「作成して開く」をタップして作成してください","bind.alreadyBound":"このセッションはすでに紐付けられています","bind.createFailed":"作成に失敗しました。再試行してください","bind.invalidName":"英数字とハイフンのみ(≤16文字)","bind.checkFailed":"確認に失敗しました。再試行してください","bind.startDir":"開始ディレクトリ","bind.homeDirDefault":"ホームディレクトリ(デフォルト)","bind.choose":"選択","bind.reset":"リセット","actionsheet.confirmAgain":"確認しますか?もう一度タップ","dirpicker.title":"ディレクトリを選択","inbox.title":"受信トレイ","inbox.working":"進行中","inbox.done":"完了","inbox.needs":"要対応","inbox.clearDone":"完了済みをクリア","inbox.empty":"パネルの状態なし","inbox.enableTitle":"AI セッション通知を有効にする","inbox.enableHint":"各 Claude / Codex パネルを「進行中」「要対応」「完了」にマークし、対応が必要なときにプッシュ通知を送信します。","inbox.enableBtn":"有効にする","inbox.enabling":"有効化中…","inbox.enableFailed":"有効化に失敗しました——サーバーログを確認してください。","idea.title":"アイデア","idea.editPlaceholder":"アイデアを編集…","idea.addPlaceholder":"アイデアを記録…","idea.add":"追加","idea.empty":"まだアイデアがありません。記録してみましょう","idea.dragSort":"ドラッグで並べ替え","idea.fillInput":"入力欄に挿入","idea.send":"送信","doclink.title":"ファイルを開く","changelog.title":"新機能","preview.dynamic":"ダイナミックプレビュー","preview.static":"静的プレビュー","preview.remainTitle":"残り有効期限 — タップして更新 / 停止","preview.toPcView":"PCビューに切り替え","preview.toMobileView":"モバイルビューに切り替え","preview.pcView":"PCビュー","preview.mobileView":"モバイルビュー","preview.refresh":"更新","preview.minimize":"最小化","preview.ttlDialog":"プレビュー有効期限","preview.renew":"更新(1時間にリセット)","preview.stop":"プレビューを停止","preview.iframeTitle":"プレビュー","preview.zoomOut":"縮小","preview.zoomIn":"拡大","imageviewer.loadFailed":"画像の読み込みに失敗しました","imageviewer.saved":"保存しました。フォトライブラリまたは「ダウンロード」で確認できます","imageviewer.shareUnsupported":"画像の共有には Chrome または Safari が必要です","imageviewer.zoomOut":"縮小","imageviewer.zoomIn":"拡大","imageviewer.imageTitle":"画像","imageviewer.saveImage":"画像を保存","imageviewer.shareImage":"画像を共有","mic.stop":"音声入力を停止","mic.start":"音声入力","dock.send":"送信","dock.send.hint":"タップで送信 · 長押しで挿入","dock.phrases":"よく使うフレーズ","dock.attach":"添付","dock.history":"履歴","history.empty":"履歴はまだありません","history.scope":"このウィンドウの記録のみ","dock.input.placeholder":"メッセージを入力…","dock.command.placeholder":"コマンドを入力 · Enterで実行","dock.mode.agent":"会話","dock.mode.toggle":"入力モードを切替","dock.mode.command":"コマンド","dock.mode.chat":"チャット","fav.title":"よく使う","fav.add":"追加","fav.addPlaceholder":"よく使う項目を追加…","dock.upload.aria":"ファイルをアップロード","dock.upload.title":"ファイルをアップロード(ホームのアップロードフォルダに保存、プロジェクトには含まない)","dock.upload.progress":"{name}{tag} をアップロード中","dock.upload.failed":"アップロード失敗:{names}","app.nameExists":"その名前はすでに使われています","app.renameFailed":"名前の変更に失敗しました。再試行してください","app.deleteFailed":"削除に失敗しました。再試行してください","app.moveFailed":"移動に失敗しました。再試行してください","app.sessionGone":"セッション「{name}」が存在しません。閉じられた可能性があります","app.docNotFound":"ファイルが存在しません","app.docTooLarge":"ファイルが大きすぎます(2MB超)","app.docUnsupported":"サポートされていないファイルまたはパス","app.docOpenFailed":"開くのに失敗しました。再試行してください","app.preview":"プレビュー","app.openPreview":"プレビューを開く","app.ideas":"アイデア","app.files":"ファイル","app.settings":"設定","app.renameSession":"セッション名を変更","app.renameWindow":"ウィンドウ名を変更","app.moveLeft":"◀ 左へ移動","app.moveRight":"右へ移動 ▶","app.deleteWindow":"ウィンドウを削除","app.deleteLastWindowConfirm":"これは最後のウィンドウです。削除するとセッション全体が閉じます!もう一度タップ","app.deleteConfirm":"削除しますか?もう一度タップ","app.cannotLocate":"場所を特定できません","app.pickItsDir":"。ディレクトリを選択してください:","app.noBoundSession":"セッションが紐付けられていません","app.tapToBind":"タップして紐付け","app.selectSessionHint":"左上の ☰ をタップしてセッションを選択","settings.title":"設定","settings.group_global":"グローバル設定","settings.font_size":"フォントサイズ","settings.font_decrease":"フォントを縮小","settings.font_increase":"フォントを拡大","settings.font_auto":"自動調整","settings.font_auto_title":"高さに合わせて自動調整","settings.whats_new":"新機能","settings.view_changelog":"変更履歴を表示","settings.has_update":"更新あり","settings.version":"バージョン","settings.update_available":"バージョン {v} が利用可能","settings.update_how":"パソコンで実行:","settings.push_notifications":"プッシュ通知","settings.notify_on":"有効 ✓","settings.notify_enable":"デバイス通知を有効にする","settings.notify_enabled":"有効にしました。ウェルカム通知が届くはずです","settings.notify_disabled":"無効","settings.notify_failed":"操作に失敗しました","settings.processing":"処理中","settings.push_hint":"「要対応」と「完了」を監視:注目しているセッションが承認/回答を必要としているとき、またはラウンドが完了したときにこのデバイスへ通知します。","settings.push_unsupported":"プッシュ通知には Chrome または Safari が必要です","settings.group_session":"現在のセッション設定","settings.screen_cols":"画面の列数","settings.cols_dec":"減らす","settings.cols_dec_title":"列数を減らす","settings.cols_inc":"増やす","settings.cols_inc_title":"列数を増やす","settings.cols_restore":"デフォルト","settings.cols_restore_title":"ウィンドウのデフォルトサイズに戻す","settings.preview_site":"プレビューサイト","settings.preview_static_site":"静的サイトをプレビュー","settings.preview_running_dynamic":"ダイナミックプレビュー 実行中","settings.preview_running_static":"静的プレビュー 実行中","settings.preview_remain_title":"残り有効期限","settings.preview_remain":"残り {time}","settings.preview_renew":"更新","settings.preview_confirm_stop":"停止を確認","settings.preview_stop":"停止","settings.preview_name":"名前:{name}","settings.preview_port":"(ポート:{port})","settings.preview_type":"プレビュータイプ","settings.preview_off":"無効","settings.preview_static":"静的","settings.preview_dynamic":"ダイナミック","settings.preview_off_hint":"プレビューは無効です。「静的」を選択して開始してください。","settings.preview_off_hint_both":"プレビューは無効です。「静的」または「ダイナミック」を選択して開始してください。","settings.preview_dynamic_disabled":"ダイナミックポートプレビューは無効です。有効にするには:ワイルドカードプレビュードメイン(previewDomain、例:*.example.com)をゲートウェイに向け、対応するTLS証明書を設定してください。Cloudflare /自己署名証明書の違いはREADMEを参照。","settings.preview_pick_dir":"ディレクトリを選択して開始","settings.preview_static_hint":"index.html を含むディレクトリを選択して、スマートフォンでプレビュー。","settings.preview_port_placeholder":"ポート番号(例:3000)","settings.preview_port_label":"ポート","settings.preview_starting":"起動中…","settings.preview_start":"起動","settings.preview_dynamic_hint":"ローカルで実行中のポート(devサーバー / バックエンド)を入力すると、スマートフォンからサブドメイン経由でアクセスできます。","settings.dir_picker_hint":"プレビューする静的サイトのディレクトリを選択(index.html を含む)","settings.err_port_not_listening":"そのポートはリッスンしていません。サービスが起動しているか確認してください","settings.err_bad_port":"ポート番号が無効です(1〜65535)","settings.err_dynamic_disabled":"ダイナミックプレビューは無効です","settings.err_start_failed":"起動に失敗しました","filebrowser.openDirFailed":"ディレクトリを開けませんでした","filebrowser.copiedPath":"パスをコピーしました:{abs}","filebrowser.mkdirFailed":"ディレクトリの作成に失敗しました(名前が無効または既に存在します)","filebrowser.downloading":"{name} をダウンロード中","filebrowser.downloadFailed":"ダウンロードに失敗しました","filebrowser.uploading":"{name}{tag} をアップロード中","filebrowser.uploadFailed":"アップロードに失敗しました","filebrowser.uploadPartialFailed":"以下のファイルのアップロードに失敗しました:{names}","filebrowser.sessionDir":"セッションディレクトリ","filebrowser.jumpToSessionDir":"現在のセッションディレクトリへ移動","filebrowser.parentDir":"親ディレクトリ","filebrowser.rootSelect":"ルートディレクトリを切り替え(ホーム / 一時)","filebrowser.pathPlaceholder":"パスを入力(リアルタイムフィルタ / ジャンプ)","filebrowser.newFolder":"新規フォルダ","filebrowser.createBtn":"作成","filebrowser.uploadFile":"ファイルをアップロード","filebrowser.uploadToCurrentDir":"現在のディレクトリにアップロード","filebrowser.enterSubdirToUpload":"サブディレクトリに移動してからアップロードしてください","filebrowser.folderNamePlaceholder":"フォルダ名","filebrowser.uploadPendingTo":"「{name}」を現在のディレクトリにアップロード","filebrowser.enterSubdirFirst":"(先にサブディレクトリに移動してください)","filebrowser.upload":"アップロード","filebrowser.savedToDownloads":"「{name}」を「ダウンロード」フォルダに保存しました。ファイルマネージャーで確認できます","filebrowser.noMatches":"一致するファイルまたはディレクトリがありません","filebrowser.tooMany":"合計 {total} 件、最初の {shown} 件のみ表示——パス欄にキーワードを入力してフィルタできます","filebrowser.previewUnsupported":"このファイルタイプのプレビューはサポートされていません。右のボタンでダウンロードできます","filebrowser.copyAbsPath":"絶対パスをコピー","filebrowser.download":"ダウンロード","filebrowser.pickThisDir":"このディレクトリを選択 {path}","filebrowser.downloadConfirm":"{name} をダウンロードしますか?","filemanager.files":"ファイル","filemanager.closeTab":"タブを閉じる","filemanager.minimize":"最小化","filemanager.recent":"最近","filemanager.directory":"ディレクトリ","git.errReadRepo":"リポジトリを読み込めませんでした","git.errLoad":"読み込みに失敗しました","git.noRepoInDir":"このディレクトリにはまだ git リポジトリがありません — 別のディレクトリを選ぶか、ここで git init してください。","git.outsideRoots":"このフォルダは handmux がアクセスできる範囲外です — ホームディレクトリと /tmp のみ開けます。リポジトリをホーム配下に移すとここで閲覧できます。","git.errReadDir":"ディレクトリを読み込めませんでした","git.commitDetail":"コミット詳細","git.diff":"差分","git.bindRepo":"リポジトリを紐付け","git.collapse":"折りたたむ","git.currentBranch":"現在のブランチ","git.switchViewedBranch":"表示するブランチを切り替え","git.switchBranch":"ブランチを切り替え","git.noBranches":"ブランチがありません","git.noRepoBound":"リポジトリが紐付けられていません。左上の「+」をタップしてディレクトリを選択してください。","git.changes":"変更","git.commits":"コミット","git.pullToLoadMore":"引っ張ってさらに読み込む","git.pickerHint":"ディレクトリを選択すると、その中の git リポジトリを自動的に検索します","git.cleanTree":"ワーキングツリーはクリーンです","git.noCommits":"コミットがありません","git.noDiff":"差分なし","git.fontSmaller":"フォントを縮小","git.fontLarger":"フォントを拡大","git.diffTruncated":"差分が大きすぎるため、切り捨てられました","cmd.panel":"コマンドパネル","cmd.title":"コマンド","cmd.empty":"コマンドがありません。送信するか、よく使うものを保存してください","cmd.favorites":"お気に入り","cmd.scopeGlobal":"グローバル · 全セッション","cmd.recent":"最近","cmd.scopeSession":"このセッションのみ","cmd.favorite":"お気に入りに追加","cmd.unfavorite":"お気に入りから削除","doc.home":"最近","doc.read":"読み上げ","doc.pauseRead":"一時停止","doc.resumeRead":"再開","doc.stopRead":"読み上げを停止","doc.rate":"読み上げ速度","doc.fontSmaller":"フォントを縮小","doc.fontLarger":"フォントを拡大","inbox.view.working":"進行中","inbox.view.done":"完了","inbox.view.needs":"要対応","push.unsupported":"プッシュ通知には Chrome または Safari が必要です","push.iosAddToHome":"iOS では先にこのサイトを「ホーム画面に追加」し、ホーム画面のアイコンから開いてください","push.permissionDenied":"通知の権限が拒否されました","push.noVapid":"サーバーにプッシュ通知(VAPID)が設定されていません","push.subscribeFailed":"サブスクリプションの登録に失敗しました","push.sendFailed":"送信に失敗しました","api.loadFailed":"読み込みに失敗しました","api.uploadFailed":"アップロードに失敗しました","upload.title":"アップロード中","upload.processing":"送信完了 — サーバーで受信中…","api.uploadBadDir":"そのディレクトリへはアップロードできません","api.uploadDuplicate":"同名のファイルが既に存在します","api.uploadTooLarge":"ファイルが大きすぎます(上限 50MB)","api.uploadBadType":"サポートされていないファイルタイプです","time.secAgo":"{n}秒前","time.minAgo":"{n}分前","time.hourAgo":"{n}時間前","time.dayAgo":"{n}日前","time.expired":"期限切れ","time.minutes":"{n} 分"},gw={"common.save":"저장","common.cancel":"취소","common.confirm":"확인","common.ok":"확인","common.close":"닫기","common.delete":"삭제","common.copy":"복사","common.rename":"이름 변경","common.create":"새로 만들기","common.back":"뒤로","common.open":"열기","common.loading":"로드 중…","common.done":"완료","token.title":"액세스 토큰이 필요합니다","token.placeholder":"HANDMUX_TOKEN 붙여넣기","settings.language":"언어 Language","home.empty":"열린 파일이 없습니다","home.emptyHint":"「새로 만들기」 탭에서 파일을 선택하세요","home.remove":"제거","drawer.empty":"연결된 세션이 없습니다","drawer.unbind":"연결 해제","drawer.bind":"세션 연결","drawer.logout":"로그아웃","windowbar.newWindow":"새 창","rename.new_name":"새 이름","rename.name_placeholder":"짧은 이름","rename.name_rule":"영문자, 숫자, 하이픈만 사용 가능(≤16자)","rename.failed":"이름 변경에 실패했습니다. 다시 시도하세요","rename.saving":"저장 중…","newwindow.title":"새 창","newwindow.window_name":"창 이름(선택 사항)","newwindow.name_placeholder":"비워두면 자동 이름 지정","newwindow.name_rule":"영문자, 숫자, 하이픈만 사용 가능(≤16자)","newwindow.start_dir":"시작 디렉토리","newwindow.session_dir_named":"{dir}(세션 디렉토리)","newwindow.session_dir_default":"세션 디렉토리(기본값)","newwindow.choose":"선택","newwindow.reset_to_session_dir":"세션 디렉토리로 초기화","newwindow.creating":"생성 중…","startup.label":"시작 명령(선택 사항)","startup.aria":"시작 명령","startup.preset_shell":"빈 셸(기본값)","startup.preset_claude":"claude(Claude Code 시작)","startup.preset_claude_continue":"claude -c(이전 세션 이어서)","startup.preset_codex":"codex(Codex CLI 시작)","startup.custom":"사용자 정의…","startup.custom_placeholder":'예:claude "로그인 버그 수정"',"bind.title":"세션 연결","bind.sessionName":"세션 이름","bind.namePlaceholder":"새 세션 이름","bind.pickSession":"연결할 세션 선택","bind.newSession":"+ 새 세션","bind.alreadyExists":"이미 존재하는 세션입니다","bind.bind":"연결","bind.checking":"확인 중…","bind.createAndOpen":"생성 후 열기","bind.creating":"생성 중…","bind.createHint":"세션「{name}」이 존재하지 않습니다. 「생성 후 열기」를 탭하여 생성하세요","bind.alreadyBound":"이미 연결된 세션입니다","bind.createFailed":"생성에 실패했습니다. 다시 시도하세요","bind.invalidName":"영문자, 숫자, 하이픈만 사용 가능(≤16자)","bind.checkFailed":"확인에 실패했습니다. 다시 시도하세요","bind.startDir":"시작 디렉토리","bind.homeDirDefault":"홈 디렉토리(기본값)","bind.choose":"선택","bind.reset":"초기화","actionsheet.confirmAgain":"확인하시겠습니까? 한 번 더 탭하세요","dirpicker.title":"디렉토리 선택","inbox.title":"받은 편지함","inbox.working":"진행 중","inbox.done":"완료","inbox.needs":"확인 필요","inbox.clearDone":"완료 항목 지우기","inbox.empty":"패널 상태 없음","inbox.enableTitle":"AI 세션 알림 활성화","inbox.enableHint":"각 Claude / Codex 패널을 「진행 중」「확인 필요」「완료」로 표시하고, 확인이 필요할 때 푸시 알림을 보냅니다.","inbox.enableBtn":"활성화","inbox.enabling":"활성화 중…","inbox.enableFailed":"활성화에 실패했습니다——서버 로그를 확인하세요.","idea.title":"아이디어","idea.editPlaceholder":"아이디어 편집…","idea.addPlaceholder":"아이디어를 기록하세요…","idea.add":"추가","idea.empty":"아직 아이디어가 없습니다. 하나 기록해보세요","idea.dragSort":"드래그하여 정렬","idea.fillInput":"입력창에 삽입","idea.send":"보내기","doclink.title":"파일 열기","changelog.title":"새 기능","preview.dynamic":"동적 미리보기","preview.static":"정적 미리보기","preview.remainTitle":"남은 유효 기간 — 탭하여 갱신 / 중지","preview.toPcView":"PC 보기로 전환","preview.toMobileView":"모바일 보기로 전환","preview.pcView":"PC 보기","preview.mobileView":"모바일 보기","preview.refresh":"새로 고침","preview.minimize":"최소화","preview.ttlDialog":"미리보기 유효 기간","preview.renew":"갱신(1시간으로 초기화)","preview.stop":"미리보기 중지","preview.iframeTitle":"미리보기","preview.zoomOut":"축소","preview.zoomIn":"확대","imageviewer.loadFailed":"이미지를 불러오지 못했습니다","imageviewer.saved":"저장되었습니다. 사진 앱 또는 「다운로드」에서 확인할 수 있습니다","imageviewer.shareUnsupported":"이미지 공유는 Chrome 또는 Safari가 필요합니다","imageviewer.zoomOut":"축소","imageviewer.zoomIn":"확대","imageviewer.imageTitle":"이미지","imageviewer.saveImage":"이미지 저장","imageviewer.shareImage":"이미지 공유","mic.stop":"음성 입력 중지","mic.start":"음성 입력","dock.send":"보내기","dock.send.hint":"탭하여 보내기 · 길게 눌러 삽입","dock.phrases":"자주 쓰는 문구","dock.attach":"첨부","dock.history":"기록","history.empty":"기록이 아직 없습니다","history.scope":"현재 창의 기록만","dock.input.placeholder":"메시지를 입력하세요…","dock.command.placeholder":"명령 입력 · Enter로 실행","dock.mode.agent":"대화","dock.mode.toggle":"입력 모드 전환","dock.mode.command":"명령 모드","dock.mode.chat":"채팅 모드","fav.title":"자주 쓰기","fav.add":"추가","fav.addPlaceholder":"자주 쓰는 항목 추가…","dock.upload.aria":"파일 업로드","dock.upload.title":"파일 업로드(홈 업로드 폴더에 저장, 프로젝트에는 포함되지 않음)","dock.upload.progress":"{name}{tag} 업로드 중","dock.upload.failed":"업로드 실패:{names}","app.nameExists":"해당 이름은 이미 사용 중입니다","app.renameFailed":"이름 변경에 실패했습니다. 다시 시도하세요","app.deleteFailed":"삭제에 실패했습니다. 다시 시도하세요","app.moveFailed":"이동에 실패했습니다. 다시 시도하세요","app.sessionGone":"세션「{name}」이 존재하지 않습니다. 이미 닫혔을 수 있습니다","app.docNotFound":"파일이 존재하지 않습니다","app.docTooLarge":"파일이 너무 큽니다(2MB 초과)","app.docUnsupported":"지원되지 않는 파일 또는 경로","app.docOpenFailed":"열기에 실패했습니다. 다시 시도하세요","app.preview":"미리보기","app.openPreview":"미리보기 열기","app.ideas":"아이디어","app.files":"파일","app.settings":"설정","app.renameSession":"세션 이름 변경","app.renameWindow":"창 이름 변경","app.moveLeft":"◀ 왼쪽으로 이동","app.moveRight":"오른쪽으로 이동 ▶","app.deleteWindow":"창 삭제","app.deleteLastWindowConfirm":"마지막 창입니다. 삭제하면 전체 세션이 닫힙니다!한 번 더 탭하세요","app.deleteConfirm":"삭제하시겠습니까? 한 번 더 탭하세요","app.cannotLocate":"위치를 찾을 수 없습니다","app.pickItsDir":",디렉토리를 선택하세요:","app.noBoundSession":"연결된 세션이 없습니다","app.tapToBind":"탭하여 연결","app.selectSessionHint":"왼쪽 상단의 ☰ 를 탭하여 세션 선택","settings.title":"설정","settings.group_global":"전체 설정","settings.font_size":"글꼴 크기","settings.font_decrease":"글꼴 축소","settings.font_increase":"글꼴 확대","settings.font_auto":"자동 조정","settings.font_auto_title":"높이에 맞게 자동 조정","settings.whats_new":"새 기능","settings.view_changelog":"변경 내역 보기","settings.has_update":"업데이트 있음","settings.version":"버전","settings.update_available":"버전 {v} 사용 가능","settings.update_how":"컴퓨터에서 실행:","settings.push_notifications":"푸시 알림","settings.notify_on":"활성화됨 ✓","settings.notify_enable":"기기 알림 활성화","settings.notify_enabled":"활성화되었습니다. 환영 알림이 도착할 것입니다","settings.notify_disabled":"비활성화됨","settings.notify_failed":"작업에 실패했습니다","settings.processing":"처리 중","settings.push_hint":"「확인 필요」및「완료」를 모니터링:관심 세션에서 승인/응답이 필요하거나 한 라운드가 완료되면 이 기기로 알림을 보냅니다.","settings.push_unsupported":"푸시 알림은 Chrome 또는 Safari가 필요합니다","settings.group_session":"현재 세션 설정","settings.screen_cols":"화면 열 수","settings.cols_dec":"감소","settings.cols_dec_title":"열 수 감소","settings.cols_inc":"증가","settings.cols_inc_title":"열 수 증가","settings.cols_restore":"기본값","settings.cols_restore_title":"창 기본 크기로 복원","settings.preview_site":"미리보기 사이트","settings.preview_static_site":"정적 사이트 미리보기","settings.preview_running_dynamic":"동적 미리보기 실행 중","settings.preview_running_static":"정적 미리보기 실행 중","settings.preview_remain_title":"남은 유효 기간","settings.preview_remain":"남은 시간 {time}","settings.preview_renew":"갱신","settings.preview_confirm_stop":"중지 확인","settings.preview_stop":"중지","settings.preview_name":"이름:{name}","settings.preview_port":"(포트:{port})","settings.preview_type":"미리보기 유형","settings.preview_off":"비활성화","settings.preview_static":"정적","settings.preview_dynamic":"동적","settings.preview_off_hint":"미리보기가 비활성화되어 있습니다. 「정적」을 선택하여 시작하세요.","settings.preview_off_hint_both":"미리보기가 비활성화되어 있습니다. 「정적」또는「동적」을 선택하여 시작하세요.","settings.preview_dynamic_disabled":"동적 포트 미리보기가 비활성화되어 있습니다. 활성화하려면:와일드카드 미리보기 도메인(previewDomain, 예:*.example.com)을 게이트웨이로 지정하고 TLS 인증서를 설정하세요. Cloudflare /자체 서명 인증서 차이는 README를 참조하세요.","settings.preview_pick_dir":"디렉토리를 선택하여 시작","settings.preview_static_hint":"index.html이 포함된 디렉토리를 선택하여 스마트폰에서 미리보기.","settings.preview_port_placeholder":"포트 번호(예:3000)","settings.preview_port_label":"포트","settings.preview_starting":"시작 중…","settings.preview_start":"시작","settings.preview_dynamic_hint":"로컬에서 실행 중인 포트(dev 서버 / 백엔드)를 입력하면 스마트폰에서 서브도메인을 통해 직접 접속할 수 있습니다.","settings.dir_picker_hint":"미리볼 정적 사이트 디렉토리 선택(index.html 포함)","settings.err_port_not_listening":"해당 포트가 수신 대기 중이지 않습니다. 서비스가 시작되었는지 확인하세요","settings.err_bad_port":"포트 번호가 유효하지 않습니다(1–65535)","settings.err_dynamic_disabled":"동적 미리보기가 비활성화되어 있습니다","settings.err_start_failed":"시작에 실패했습니다","filebrowser.openDirFailed":"디렉토리를 열 수 없습니다","filebrowser.copiedPath":"경로가 복사되었습니다:{abs}","filebrowser.mkdirFailed":"디렉토리 생성에 실패했습니다(이름이 유효하지 않거나 이미 존재합니다)","filebrowser.downloading":"{name} 다운로드 중","filebrowser.downloadFailed":"다운로드에 실패했습니다","filebrowser.uploading":"{name}{tag} 업로드 중","filebrowser.uploadFailed":"업로드에 실패했습니다","filebrowser.uploadPartialFailed":"다음 파일 업로드에 실패했습니다:{names}","filebrowser.sessionDir":"세션 디렉토리","filebrowser.jumpToSessionDir":"현재 세션 디렉토리로 이동","filebrowser.parentDir":"상위 디렉토리","filebrowser.rootSelect":"루트 디렉토리 전환(홈 / 임시)","filebrowser.pathPlaceholder":"경로 입력(실시간 필터 / 이동)","filebrowser.newFolder":"새 폴더","filebrowser.createBtn":"생성","filebrowser.uploadFile":"파일 업로드","filebrowser.uploadToCurrentDir":"현재 디렉토리에 업로드","filebrowser.enterSubdirToUpload":"하위 디렉토리로 이동한 후 업로드하세요","filebrowser.folderNamePlaceholder":"폴더 이름","filebrowser.uploadPendingTo":"「{name}」을 현재 디렉토리에 업로드","filebrowser.enterSubdirFirst":"(먼저 하위 디렉토리로 이동하세요)","filebrowser.upload":"업로드","filebrowser.savedToDownloads":"「{name}」이 「다운로드」 폴더에 저장되었습니다. 파일 관리자에서 확인할 수 있습니다","filebrowser.noMatches":"일치하는 파일 또는 디렉토리가 없습니다","filebrowser.tooMany":"총 {total}개, 처음 {shown}개만 표시——경로 입력창에 키워드를 입력하여 필터할 수 있습니다","filebrowser.previewUnsupported":"이 파일 유형의 미리보기는 지원되지 않습니다. 오른쪽 버튼으로 다운로드할 수 있습니다","filebrowser.copyAbsPath":"절대 경로 복사","filebrowser.download":"다운로드","filebrowser.pickThisDir":"이 디렉토리 선택 {path}","filebrowser.downloadConfirm":"{name}을 다운로드하시겠습니까?","filemanager.files":"파일","filemanager.closeTab":"탭 닫기","filemanager.minimize":"최소화","filemanager.recent":"최근","filemanager.directory":"디렉토리","git.errReadRepo":"저장소를 읽을 수 없습니다","git.errLoad":"불러오기에 실패했습니다","git.noRepoInDir":"아직 git 저장소가 없습니다 — 다른 디렉토리를 선택하거나 여기서 git init 하세요.","git.outsideRoots":"이 폴더는 handmux가 열 수 있는 범위 밖입니다 — 홈 디렉토리와 /tmp만 접근할 수 있습니다. 저장소를 홈 디렉토리 아래로 옮기면 여기서 볼 수 있습니다.","git.errReadDir":"디렉토리를 읽을 수 없습니다","git.commitDetail":"커밋 상세","git.diff":"변경 사항","git.bindRepo":"저장소 연결","git.collapse":"접기","git.currentBranch":"현재 브랜치","git.switchViewedBranch":"표시할 브랜치 전환","git.switchBranch":"브랜치 전환","git.noBranches":"브랜치가 없습니다","git.noRepoBound":"저장소가 연결되지 않았습니다. 왼쪽 상단의 「+」를 탭하여 디렉토리를 선택하세요.","git.changes":"변경사항","git.commits":"커밋","git.pullToLoadMore":"당겨서 더 불러오기","git.pickerHint":"디렉토리를 선택하면 그 안의 git 저장소를 자동으로 찾습니다","git.cleanTree":"작업 트리가 깨끗합니다","git.noCommits":"커밋이 없습니다","git.noDiff":"변경 사항 없음","git.fontSmaller":"글꼴 축소","git.fontLarger":"글꼴 확대","git.diffTruncated":"변경 사항이 너무 커서 잘렸습니다","cmd.panel":"명령 패널","cmd.title":"명령","cmd.empty":"명령이 없습니다. 보내거나 자주 쓰는 것을 저장하세요","cmd.favorites":"즐겨찾기","cmd.scopeGlobal":"전체 · 모든 세션","cmd.recent":"최근","cmd.scopeSession":"현재 세션만","cmd.favorite":"즐겨찾기 추가","cmd.unfavorite":"즐겨찾기 해제","doc.home":"최근","doc.read":"읽어주기","doc.pauseRead":"읽기 일시 정지","doc.resumeRead":"읽기 재개","doc.stopRead":"읽기 중지","doc.rate":"읽기 속도","doc.fontSmaller":"글꼴 축소","doc.fontLarger":"글꼴 확대","inbox.view.working":"진행 중","inbox.view.done":"완료","inbox.view.needs":"확인 필요","push.unsupported":"푸시 알림은 Chrome 또는 Safari가 필요합니다","push.iosAddToHome":"iOS에서는 먼저 이 사이트를 「홈 화면에 추가」한 후 홈 화면 아이콘에서 열어주세요","push.permissionDenied":"알림 권한이 거부되었습니다","push.noVapid":"서버에 푸시 알림(VAPID)이 설정되지 않았습니다","push.subscribeFailed":"구독 등록에 실패했습니다","push.sendFailed":"전송에 실패했습니다","api.loadFailed":"불러오기에 실패했습니다","api.uploadFailed":"업로드에 실패했습니다","upload.title":"업로드 중","upload.processing":"전송 완료 — 서버에서 수신 중…","api.uploadBadDir":"해당 디렉토리에는 업로드할 수 없습니다","api.uploadDuplicate":"같은 이름의 파일이 이미 존재합니다","api.uploadTooLarge":"파일이 너무 큽니다(최대 50MB)","api.uploadBadType":"지원되지 않는 파일 유형입니다","time.secAgo":"{n}초 전","time.minAgo":"{n}분 전","time.hourAgo":"{n}시간 전","time.dayAgo":"{n}일 전","time.expired":"만료됨","time.minutes":"{n}분"},Uu={zh:fw,"zh-TW":pw,en:pg,ja:mw,ko:gw},Wd=[{code:"zh",label:"简体中文"},{code:"zh-TW",label:"繁體中文"},{code:"en",label:"English"},{code:"ja",label:"日本語"},{code:"ko",label:"한국어"}],mg="tw_lang";function _w(e,t,i=Uu){if(e&&i[e])return e;for(const s of t&&t.length?t:["en"]){const n=String(s).toLowerCase();if(i[n])return n;const u=n.split("-")[0];if(i[u])return u}return"en"}function vw(e,t,i,s){let n=e&&e[i]!=null?e[i]:t&&t[i]!=null?t[i]:i;return s&&(n=n.replace(/\{(\w+)\}/g,(u,p)=>s[p]!=null?s[p]:`{${p}}`)),n}const ww=()=>typeof navigator<"u"?navigator.languages||[navigator.language]:null,yw=()=>{try{return localStorage.getItem(mg)}catch{return null}};let _a=_w(yw(),ww());function D(e,t){return vw(Uu[_a],pg,e,t)}function Dc(){return _a}function Sw(e){if(!(!Uu[e]||e===_a)){try{localStorage.setItem(mg,e)}catch{}_a=e,typeof location<"u"&&location.reload()}}const Wu="tw_token",Vu="tw_font",Ka="tw_bound",gg="tw_last_session",_g="tw_win",vg="tw_pane",Ku="tw_favs",Fn="tw_recent",bw=30,Ac="tw_inbox_seen",wg="tw_inbox_read_ts",yg="tw_browse_dir",Sg="tw_preview_dir",bg="tw_startup_cmd",Ys="tw_ideas",xg="tw_changelog_seen",Cg="tw_version_seen",Gu="tw_git_repos",ir=()=>localStorage.getItem(Wu),xw=e=>localStorage.setItem(Wu,e),Cw=()=>localStorage.removeItem(Wu);function Xs(){try{return JSON.parse(localStorage.getItem(Ka))||[]}catch{return[]}}function Vd(e){const t=Xs();return t.includes(e)||t.push(e),localStorage.setItem(Ka,JSON.stringify(t)),t}function Kd(e){const t=Xs().filter(i=>i!==e);return localStorage.setItem(Ka,JSON.stringify(t)),t}function kw(e,t){const i=Xs().map(u=>u===e?t:u);localStorage.setItem(Ka,JSON.stringify(i));const s=qt(Fn);s[e]!=null&&(s[t]=s[e],delete s[e],localStorage.setItem(Fn,JSON.stringify(s)));const n=qt(Ys);return n[e]!=null&&(n[t]=n[e],delete n[e],localStorage.setItem(Ys,JSON.stringify(n))),i}function qt(e){try{const t=JSON.parse(localStorage.getItem(e));return t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{return{}}}function Ts(e,t,i){const s=qt(e);s[t]=i,localStorage.setItem(e,JSON.stringify(s))}const Gd=()=>qt(Ac);function qd(e,t){return Ts(Ac,e,t),qt(Ac)}const Ew=()=>{const e=localStorage.getItem(wg);return e==null?null:Number(e)},Yd=e=>localStorage.setItem(wg,String(e)),Lw=e=>e?qt(yg)[e]??null:null,Cl=(e,t)=>{e&&t&&Ts(yg,e,t)},Rw=e=>e?qt(Sg)[e]??null:null,Tw=(e,t)=>{e&&t&&Ts(Sg,e,t)},Dw=()=>localStorage.getItem(gg),Aw=e=>qt(_g)[e]??null,bo=e=>qt(vg)[e]??null;function Zr({sessionId:e,windowId:t,paneId:i}={}){e&&localStorage.setItem(gg,e),e&&t&&Ts(_g,e,t),t&&i&&Ts(vg,t,i)}function Mw(){const e=Number(localStorage.getItem(Vu));return Number.isFinite(e)&&e>0?e:null}const Xd=e=>localStorage.setItem(Vu,String(e)),Nw=()=>localStorage.removeItem(Vu);function va(){try{return JSON.parse(localStorage.getItem(Ku))||[]}catch{return[]}}function Iw(e){const t=e.trim(),i=va();return t&&!i.includes(t)&&i.push(t),localStorage.setItem(Ku,JSON.stringify(i)),i}function Pw(e){const t=va().filter(i=>i!==e);return localStorage.setItem(Ku,JSON.stringify(t)),t}const kg=()=>localStorage.getItem(bg)||"",Eg=e=>localStorage.setItem(bg,e||""),Lg="tw_orphan_kill",Ow=()=>localStorage.getItem(Lg)!=="0",Bw=e=>localStorage.setItem(Lg,e?"1":"0"),Rg=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:{};function wa(e,t){return!e||!t?[]:Rg(qt(Fn)[e])[t]??[]}function Tg(e,t,i){const s=qt(Fn),n=Rg(s[e]);return i&&i.length?n[t]=i:delete n[t],Object.keys(n).length?s[e]=n:delete s[e],localStorage.setItem(Fn,JSON.stringify(s)),i??[]}function jw(e,t,i){const s=(i||"").trim(),n=wa(e,t);return!s||!e||!t?n:Tg(e,t,[s,...n.filter(u=>u!==s)].slice(0,bw))}function Fw(e,t,i){return!e||!t?wa(e,t):Tg(e,t,wa(e,t).filter(s=>s!==i))}const qu="tw_recent_docs",Dg="tw_pane_base",Hw=30;function ya(){try{return JSON.parse(localStorage.getItem(qu))||[]}catch{return[]}}function Jd({path:e,name:t,type:i,ts:s=Date.now()}){const n=[{path:e,name:t,type:i,ts:s},...ya().filter(u=>u.path!==e)].slice(0,Hw);return localStorage.setItem(qu,JSON.stringify(n)),n}function $w(e){const t=ya().filter(i=>i.path!==e);return localStorage.setItem(qu,JSON.stringify(t)),t}const Zd=e=>qt(Dg)[e]??null,zw=(e,t)=>Ts(Dg,e,t),cs=[10,11,12,13,14,16,18,20,22],Uw=4,Ag="tw_doc_font";function Ww(){const e=localStorage.getItem(Ag),t=Number(e);return e!==null&&Number.isInteger(t)&&t>=0&&t<cs.length?t:Uw}const Vw=e=>localStorage.setItem(Ag,String(Math.min(cs.length-1,Math.max(0,e)))),Kw=2,Mg="tw_diff_font";function Gw(){const e=localStorage.getItem(Mg),t=Number(e);return e!==null&&Number.isInteger(t)&&t>=0&&t<cs.length?t:Kw}const qw=e=>localStorage.setItem(Mg,String(Math.min(cs.length-1,Math.max(0,e))));function Ng(e,t){var i;return!e||!t?[]:((i=qt(Ys)[e])==null?void 0:i[t])??[]}function Qd(e,t,i){if(!e||!t)return[];const s=qt(Ys),n=s[e]||{};return i&&i.length?n[t]=i:delete n[t],Object.keys(n).length?s[e]=n:delete s[e],localStorage.setItem(Ys,JSON.stringify(s)),i??[]}const Yw=()=>localStorage.getItem(xg),Xw=e=>{e&&localStorage.setItem(xg,e)},Jw=()=>localStorage.getItem(Cg),Zw=e=>{e&&localStorage.setItem(Cg,e)};function Qw(e,t,i){if(!e||!t||!i||t===i)return;const s=qt(Ys),n=s[e];!n||n[t]==null||(n[i]=n[t],delete n[t],localStorage.setItem(Ys,JSON.stringify(s)))}function Yu(e){if(!e)return[];const t=qt(Gu)[e];return Array.isArray(t)?t:[]}function ef(e,t){if(!e)return[];const i=[...Yu(e)];for(const s of t)s&&!i.includes(s)&&i.push(s);return Ts(Gu,e,i),i}function ey(e,t){if(!e)return[];const i=Yu(e).filter(s=>s!==t);return Ts(Gu,e,i),i}const Ig=[{v:"2026-07-05-upload",date:"2026-07-05",items:{zh:["上传体验重做:进度条不再一冲到 100% 就假装完事——先显示真实发送进度,字节发完后转成「服务器接收中…」,大文件不再像卡死。上传中可随时「取消」,已传完的文件会保留。","重名不再报错:上传一个已存在的文件名会自动改名(如 `报告 (1).pdf`),绝不覆盖原文件。上传失败时也会告诉你具体原因(过大 / 不支持的类型)。","现在可以上传视频了(mp4、mov、webm 等)。","Git 面板现在能打开 `/tmp` 等家目录以外的仓库(比如 agent 在 /tmp 里干活的项目),不再报红。","聊天输入框多行重做:文字占满整行,麦克风/发送悬到右下角,末行快挤到按钮才让出一行——长消息不再被右侧按钮列挤窄,多行时拖光标也不会误收键盘。"],en:["Upload redone: the bar no longer jumps to 100% and then hangs — it shows real send progress, then flips to “receiving on the server…” once bytes are flushed, so a big file no longer looks stuck. You can Cancel mid-upload; already-uploaded files are kept.","Name clashes no longer fail: uploading an existing name auto-renames (e.g. `report (1).pdf`) and never overwrites. Failures now tell you why (too large / unsupported type).","Video files can now be uploaded (mp4, mov, webm, …).","The git panel can now open repos outside your home directory (e.g. a project an agent is working in under `/tmp`) instead of erroring.","Chat composer redone for multi-line: text takes the full width, mic/send float in the bottom-right corner, and a row is yielded only when the last line actually reaches them — long messages are no longer squeezed by a right-hand button column, and dragging the caret no longer collapses the keyboard."]}},{v:"2026-07-04-usage-timeline",date:"2026-07-04",items:{zh:["用量进度条新增「时间竖线」:标出当前重置窗口已过去的时间比例。已用量在竖线左边=烧得比时间慢(稳),越过竖线=烧得偏快,一眼看出自己的节奏。","命令模式的常用命令分成「全局」和「当前窗口」两组:快捷栏里全局的(灰)排前、当前窗口的(绿)排后。尾部改成 ⚙ 齿轮,点开更高的编辑器分两区、各自 ▲▼ 排序。新增区一行搞定:顶部「命令/按键」大 Tab 选类型,左侧开关选加到全局还是本窗口。命令可勾「带回车」(点一下直接执行,末尾带 ⏎);按键用 ⌃⇧⌥ + 一个基键拼出组合键(如 Ctrl+C),点一下直接发到终端。","聊天模式的快捷条也能自定义了:末尾同样是 ⚙,点开编辑器,「消息/按键」两个 Tab —— 消息就是一句发给 agent 的话(以 / 开头当斜杠命令),按键用同一套 ⌃⇧⌥ + 基键拼组合键(ESC/Tab/退格默认就在里面)。点任意一条可回到弹窗改,▲▼ 排序。","新增版本更新提示:每次打开检测一次,服务端落后于 npm 最新版时设置齿轮亮红点,进设置能看到当前/最新版本号,按提示在电脑上跑 `handmux update` 升级即可。"],en:[`Usage bars now show a "time marker": a thin vertical line at how far the current reset window has elapsed. Usage left of the line = you're burning slower than the clock; past it = faster — pacing at a glance.`,`Command mode's saved commands now split into "Global" and "This window": the quick-bar shows global ones (grey) first, then this window's (green). The trailing + is now a ⚙ opening a taller two-section editor, each reorderable with ▲▼. One add row does it all: a big Command/Key tab picks the type, a left switch picks which list it lands in. Commands can tick "Send Enter" (a tap runs it, marked ⏎); keys are built from ⌃⇧⌥ + a base key into a combo like Ctrl+C that fires straight into the terminal.`,"Chat mode's quick-bar is now customizable too: the same ⚙ at the end opens an editor with a Message/Key tab — a message is a line sent to the agent (starts with / for a slash-command), a key is built from the same ⌃⇧⌥ + base-key picker (ESC/Tab/Backspace ship as defaults). Tap any row to re-open the card and edit it, ▲▼ to reorder.","New update notice: checked once each time you open the app — when the server is behind the latest npm release, the settings gear lights a dot and Settings shows the current/latest version so you can run `handmux update` on your computer."]}},{v:"2026-07-03-usage",date:"2026-07-03",items:{zh:["新增「用量」页(顶栏仪表盘图标):一眼看 Claude 的 5 小时 / 本周额度进度条 + 重置倒计时,以及 Codex 的额度环。全部读主机本地文件,不登录账号、不调用 API。Codex 零配置即用;Claude 的实时额度需要在电脑上运行一次 handmux hooks install(会装一个 statusLine 捕获器,已有自定义 statusLine 的绝不覆盖)。"],en:["New \"Usage\" page (gauge icon in the top bar): see Claude's 5-hour / weekly limit bars with reset countdowns, plus Codex's quota ring — at a glance. All read from local files on the host: no account login, no API calls. Codex works with zero setup; Claude's live limits need a one-time `handmux hooks install` on the computer (it adds a statusLine capturer and never clobbers an existing custom statusLine)."]}},{v:"2026-07-02-codex",date:"2026-07-02",items:{zh:["新增 Codex 支持:收件箱与推送现在同时认得 Claude 和 Codex——Codex 会话的「进行中 / 需要你 / 已完成」都会像 Claude 一样推到手机;tmux 外跑着的 Codex 会话也能一键「接管」进来(codex resume);新建会话的启动命令预设新增 codex。收件箱每一条、以及顶栏当前会话,都带上 Claude / Codex 标记,一眼区分是哪种 agent。","会话抽屉底部新增「未接管会话」:一眼看到在 tmux 外跑着、手机还控制不了的 Claude / Codex(带状态、时间、最后一条消息),点「接管」即可在 tmux 里续接同一会话——自动加进会话列表并跳进去,以后手机随时回来。"],en:["Added Codex support: the inbox and push now recognize both Claude and Codex — a Codex session's working / waiting-on-you / done states reach your phone just like Claude. You can take over Codex sessions running outside tmux (codex resume), and there's a new codex startup-command preset. Every inbox row and the current-session topbar now carry a Claude / Codex mark so you can tell the two apart at a glance.",`The session drawer now has a "not taken over" section at the bottom: Claude / Codex sessions running outside tmux that your phone can't steer yet (with their state, time, and last message). Tap Take over to resume the same conversation inside tmux — it's added to your session list and opened, so you can return to it from your phone anytime.`]}},{v:"2026-06-28-i18n-ui",date:"2026-06-28",items:{zh:["新增繁体中文、日语、韩语界面(设置 → Language 切换)","想法角标:有未完成想法时,灯泡图标右上角显示数量","设置面板列数调节:实时显示当前列数,新增 ±1 精细调节按钮"],en:["Added Traditional Chinese, Japanese, and Korean UI (Settings → Language to switch)","Idea badge: when there are pending ideas, the lightbulb icon shows a count in the corner","Settings column control: shows the current column count live, with new ±1 fine-adjust buttons"]}},{v:"2026-06-20-claude-hooks",date:"2026-06-20",items:{zh:["收件箱:第一次打开若还没接上 Claude Code 通知,会引导你一键开启——开了之后每个 Claude pane 才会标注「进行中 / 需要你 / 已完成」并在需要你时推送。没装 Claude Code 则不打扰。"],en:["Inbox: the first time you open it without Claude Code notifications wired up, it walks you through turning them on with one tap — only then does each Claude pane get tagged working / needs you / done and push when it needs you. If you don't use Claude Code, it stays out of your way."]}},{v:"2026-06-19-logo",date:"2026-06-19",items:{zh:["全新 App 图标:一部手机正向外发射信号、屏上是跳动的终端光标——「在手中,随处续写」的 handmux。重新添加到主屏即可看到新图标。","文件:除了主目录,现在还能进系统临时目录 /tmp 和 $TMPDIR 查看 / 上传 / 下载文件——路径栏最前面那个固定的 ~ 前缀改成了下拉,点一下即可在 家目录 / tmp / TMPDIR 之间切换。临时文件不用先挪进主目录了。","文件:打开文件特别多的目录更快了(不再逐个等文件信息),且最多只渲染前 300 项、其余在底部提示「在路径框输入关键词筛选」——既不卡也好找。","目录选择器:新建窗口、定位文档基准目录时多了「跳到会话目录」按钮;查看类的选择框(Git 绑定、网站预览)不再显示「新建文件夹」——选目录就只选,不误操作。","文件:返回键改为逐层返回——正在预览文件时,返回先回到该文件所在的目录;在目录里则返回上一级路径;到顶层才退出文件面板,不再一下子整个关掉。","文件:.txt / .log / .sh 现在也能像 Markdown 一样直接在应用内预览(原样等宽显示、可 A−/A+ 调字号),终端里这些路径也可点开。"],en:['New app icon: a phone beaming your live session outward, a blinking terminal cursor on its screen — handmux, "in your hand, anywhere." Re-add to your home screen to see it.',"Files: beyond your home dir, you can now browse / upload / download in the system temp dirs /tmp and $TMPDIR — the fixed ~ prefix at the start of the path bar is now a dropdown to switch between home / tmp / TMPDIR. No need to move transient files into home first.",'Files: very full directories open much faster (no more waiting on each file one by one), and at most the first 300 rows render — the rest are summarized at the bottom with "type in the path box to filter," so it neither lags nor overwhelms.',`Directory pickers: a "jump to session dir" button now shows when creating a new window or locating a document's base dir; view-type pickers (Git bind, website preview) no longer show "new folder" — picking a dir just picks, nothing to misfire.`,"Files: Back now steps back one level — while previewing a file it returns to that file's folder; inside a folder it returns to the previous path; only at the top does it close the file panel, instead of dismissing the whole thing at once.","Files: .txt / .log / .sh files now preview in-app just like Markdown (shown verbatim in monospace, with A−/A+ font sizing), and such paths are tappable in the terminal."]}},{v:"2026-06-18",date:"2026-06-18",items:{zh:["新增「Git」面板(顶栏图标):仿 VS Code,一页同屏——「变更」在上、「提交」占据主区(默认 20 条、滚到底自动续),两区都可折叠;顶部单独一行——左显示当前分支,右侧下拉可切换查看任意分支的提交历史(只读,不会 checkout、不动你的工作树)。点文件或某次提交看全屏彩色 diff(右上角 A−/A+ 可调字体大小,设置会记住)。可绑定多个目录(前后端分仓)用顶部 tab 切换,每个窗口各自一套。只读,不影响仓库。","图片查看:双指捏合缩放、放大后单指拖动、双击放大/复位(也有 +/− 按钮兜底);长按图片可「保存图片 / 分享图片」。","在设置 / 想法 / 收件箱 / 会话抽屉 / 常用命令等各面板里,手机返回键现在是「退回上一层」而不是直接退出应用。"],en:[`New "Git" panel (top-bar icon): VS Code style, all on one screen — "Changes" on top, "Commits" filling the main area (20 by default, auto-loads more on scroll), both sections collapsible; a dedicated top row shows the current branch on the left, with a dropdown on the right to view any branch's commit history (read-only — never checks out or touches your working tree). Tap a file or commit for a full-screen colored diff (A−/A+ in the top-right adjusts font size, remembered in settings). You can bind multiple directories (separate front/back-end repos) and switch via top tabs, each window with its own set. Read-only, never affects the repo.`,'Image viewer: pinch to zoom, one-finger drag when zoomed, double-tap to zoom/reset (with +/− buttons as a fallback); long-press an image to "Save image / Share image".','Across Settings / Ideas / Inbox / session drawer / frequent commands and other panels, the phone Back button now "goes back one level" instead of exiting the app outright.']}},{v:"2026-06-17-image-viewer",date:"2026-06-17",items:{zh:["网站预览:选目录预览静态站点,或填端口预览本机正在跑的服务(动态预览走专属子域名,前端路由/接口/HMR 一致)。预览在应用内弹窗打开,可切手机/电脑视图并整体缩放,链接 1 小时有效、可续期。","图片预览:在「文件」或终端里点图片(含 GIF)直接内嵌打开。","新增「想法」管理器(顶栏灯泡):按窗口记待办,可编辑、拖拽排序、一键填入、语音输入;更新日志有新功能时齿轮亮红点。"],en:["Website preview: pick a directory to preview a static site, or enter a port to preview a service running locally (dynamic preview uses a dedicated subdomain, keeping front-end routing/API/HMR consistent). Preview opens in an in-app popup, can switch between phone/desktop views and zoom the whole page; links are valid for 1 hour and renewable.",'Image preview: tap an image (including GIFs) in "Files" or the terminal to open it inline.','New "Ideas" manager (top-bar lightbulb): keep to-dos per window — edit, drag to reorder, one-tap insert, voice input; the gear lights a red dot when the changelog has new features.']}},{v:"2026-06-16-upload-tts",date:"2026-06-16",items:{zh:["聊天框 + 号上传文件,支持多选,自动填入路径","斜杠命令快捷键:/loop、/skill","文档语音朗读(浏览器 TTS,逐句高亮跟读)"],en:["Upload files via the + button in the chat box — multi-select supported, paths auto-filled in","Slash-command shortcuts: /loop, /skill","Read documents aloud (browser TTS, with sentence-by-sentence highlight follow-along)"]}},{v:"2026-06-15-files",date:"2026-06-15",items:{zh:["文件浏览器每个文件加「复制绝对路径」按钮","终端长按选择加拖动引导,不再只复制到一个词","文档目录改用浏览选择,不用手输路径"],en:['Added a "Copy absolute path" button to each file in the file browser',"Long-press selection in the terminal now has a drag guide — no longer copies just a single word","Pick the docs directory by browsing instead of typing the path by hand"]}},{v:"2026-06-14-input-bar",date:"2026-06-14",items:{zh:["微信式点按语音输入:按一下开始听写、再按停止;录音整框变绿+呼吸动效","输入栏改造:输入框满宽、框内发送 ↑、⌫/⏎ 移到按键区右端","命令面板嵌入输入框左侧,「常用/最近」分区","新建窗口/会话可选启动命令,在指定目录自动跑(如 claude)"],en:["WeChat-style tap-to-talk voice input: tap once to start dictation, tap again to stop; the whole box turns green with a breathing animation while recording","Input bar redesign: full-width input field, in-box send ↑, with ⌫/⏎ moved to the right end of the key bar",'Command panel embedded on the left of the input field, with "Frequent/Recent" sections',"New windows/sessions can take an optional startup command that auto-runs in the chosen directory (e.g. claude)"]}},{v:"2026-06-13-file-transfer",date:"2026-06-13",items:{zh:["文件上传/下载:进度条、下载需确认","系统分享到本应用并选位置上传(Android)","文件浏览器打开即落到当前会话目录"],en:["File upload/download: progress bar, downloads require confirmation","Share into this app from the system and pick an upload location (Android)","The file browser opens straight to the current session directory"]}},{v:"2026-06-12-cursor",date:"2026-06-12",items:{zh:["终端光标精确摆到 Claude 真实位置(reflow 安全)","加回终端滚动惯性(横竖两轴)"],en:["Terminal cursor placed precisely at Claude Code's real position (reflow-safe)","Restored terminal scroll inertia (both horizontal and vertical axes)"]}},{v:"2026-06-11-inbox",date:"2026-06-11",items:{zh:["收件箱:顶栏汇总「进行中/已完成/需要你」各几个","窗口标签加 Claude 状态色点(需要你=红/进行中=蓝/已完成=绿)","推送两态可靠优先:需要你 4h、已完成只在完成那刻推"],en:['Inbox: the top bar summarizes how many are "In progress / Done / Needs you"',"Window tabs get a Claude status color dot (Needs you = red / In progress = blue / Done = green)",'Two-state push, reliability first: "Needs you" for 4h, "Done" pushed only at the moment it completes']}},{v:"2026-06-10-docs",date:"2026-06-10",items:{zh:["文档查看器:Markdown 渲染、点终端里的路径即打开、字号缩放","Web Push:开启设备通知","KeyBar 扩展:/clear、/compact、/model、/btw"],en:["Document viewer: Markdown rendering, tap a path in the terminal to open it, font-size zoom","Web Push: enable device notifications","KeyBar additions: /clear, /compact, /model, /btw"]}},{v:"2026-06-09-reorder",date:"2026-06-09",items:{zh:["从管理菜单拖动重排窗口(◀ 左移 / 右移 ▶)"],en:["Reorder windows by dragging from the manage menu (◀ move left / move right ▶)"]}},{v:"2026-06-06-manage",date:"2026-06-06",items:{zh:["长按窗口标签管理:重命名 / 删除","重命名会话/窗口(本地名与历史一并迁移)"],en:["Long-press a window tab to manage it: rename / delete","Rename sessions/windows (local name and history migrated along with it)"]}},{v:"2026-06-05-sessions",date:"2026-06-05",items:{zh:["从绑定弹窗新建会话","+ 新建窗口(可命名)","离线兜底页:断网冷启动也有可重试页面"],en:["Create a new session from the binding popup","+ to create a new window (nameable)","Offline fallback page: a retryable page even on a cold start with no network"]}},{v:"2026-06-03-reliability",date:"2026-06-03",items:{zh:["断线重连:退避 + 每请求超时 + 断线横幅,后台自动暂停轮询","命令面板:常用 + 每会话最近命令"],en:["Reconnect on disconnect: backoff + per-request timeout + a connection-lost banner, polling auto-paused in the background","Command panel: frequent commands + recent commands per session"]}},{v:"2026-06-02-pwa",date:"2026-06-02",items:{zh:["可添加到主屏(PWA 安装)","长按选择并复制终端文本","设置面板(列数/字体/退出)与本地会话列表"],en:["Add to home screen (PWA install)","Long-press to select and copy terminal text","Settings panel (columns/font/exit) and a local session list"]}},{v:"2026-06-01-first",date:"2026-06-01",items:{zh:["首版:手机浏览器驱动真实 tmux 面板","xterm 终端 + 会话/窗口/pane 导航 + 深链","移动按键区(方向键长按连发)、键盘自动抬升、历史浏览、列宽/字号调节"],en:["First release: a phone browser drives real tmux panes","xterm terminal + session/window/pane navigation + deep links","Mobile key bar (arrows auto-repeat on long-press), keyboard auto-lift, scrollback browsing, column-width/font-size adjustment"]}}];var ep;const xo=((ep=Ig[0])==null?void 0:ep.v)??null,ty={jpg:"image/jpeg",jpeg:"image/jpeg",jfif:"image/jpeg",png:"image/png",gif:"image/gif",webp:"image/webp",bmp:"image/bmp",svg:"image/svg+xml",ico:"image/x-icon",heic:"image/heic",heif:"image/heif",avif:"image/avif",tif:"image/tiff",tiff:"image/tiff",pdf:"application/pdf",txt:"text/plain",log:"text/plain",md:"text/markdown",markdown:"text/markdown",csv:"text/csv",json:"application/json",xml:"application/xml",html:"text/html",htm:"text/html",zip:"application/zip",mp4:"video/mp4",m4v:"video/mp4",mov:"video/quicktime",webm:"video/webm",mkv:"video/x-matroska",avi:"video/x-msvideo",wmv:"video/x-ms-wmv",flv:"video/x-flv","3gp":"video/3gpp",ogv:"video/ogg",mpeg:"video/mpeg",mpg:"video/mpeg",doc:"application/msword",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",xls:"application/vnd.ms-excel",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",ppt:"application/vnd.ms-powerpoint",pptx:"application/vnd.openxmlformats-officedocument.presentationml.presentation"};function Ga(e){const t=(e||"").lastIndexOf(".");return t<0?"":ty[e.slice(t+1).toLowerCase()]||""}function iy(e){return Ga(e).startsWith("image/")}class it extends Error{}async function ze(e,t={}){const i=ir(),{timeoutMs:s,...n}=t,u={Authorization:`Bearer ${i??""}`,...n.headers||{}};n.body&&(u["Content-Type"]="application/json");let p=null,r=null;s&&(p=new AbortController,r=setTimeout(()=>p.abort(),s));try{const o=await fetch(e,{cache:"no-store",...n,headers:u,signal:p==null?void 0:p.signal});if(o.status===401)throw new it;if(!o.ok){let f=`${e} -> ${o.status}`;try{const _=await o.json();_!=null&&_.error&&(f=_.error)}catch{}throw new Error(f)}return o.status===204?{unchanged:!0}:await o.json()}catch(o){throw p!=null&&p.signal.aborted?new Error(`${e} -> timeout`):o}finally{r&&clearTimeout(r)}}const br=()=>ze("/api/sessions"),sy=()=>ze("/api/usage"),Qr=e=>ze(`/api/windows?session=${encodeURIComponent(e)}`),Co=e=>ze(`/api/panes?window=${encodeURIComponent(e)}`),ry=(e,t=1500,i)=>ze(`/api/history?pane=${encodeURIComponent(e)}&lines=${t}${i?`&since=${i}`:""}`,{timeoutMs:8e3}),Wo=(e,t,i=!0)=>ze("/api/send",{method:"POST",body:JSON.stringify({pane:e,text:t,enter:i})}),ny=(e,t)=>ze("/api/keys",{method:"POST",body:JSON.stringify({pane:e,keys:t})}),oy=(e,t,i)=>ze("/api/resize",{method:"POST",body:JSON.stringify({window:e,cols:t,rows:i})}),ay=(e,t)=>ze("/api/resize",{method:"POST",body:JSON.stringify({pane:e,cols:t})}),ly=e=>ze(`/api/layout?window=${encodeURIComponent(e)}`),cy=(e,t)=>ze("/api/resize",{method:"POST",body:JSON.stringify({window:e,auto:!0,layout:t})}),uy=(e,t,i)=>ze("/api/sessions",{method:"POST",body:JSON.stringify({name:e,cwd:t,cmd:i})}),hy=(e,t,i,s,n)=>ze("/api/windows",{method:"POST",body:JSON.stringify({session:e,pane:t,name:i,cwd:s,cmd:n})}),dy=(e,t)=>ze("/api/sessions",{method:"PATCH",body:JSON.stringify({id:e,name:t})}),fy=(e,t)=>ze("/api/windows",{method:"PATCH",body:JSON.stringify({id:e,name:t})}),py=e=>ze(`/api/windows?window=${encodeURIComponent(e)}`,{method:"DELETE"}),my=(e,t)=>ze("/api/windows/swap",{method:"POST",body:JSON.stringify({a:e,b:t})}),gy=(e,t)=>ze("/api/dir",{method:"POST",body:JSON.stringify({dir:e,name:t})}),_y=e=>ze(`/api/file?path=${encodeURIComponent(e)}`,{timeoutMs:8e3}),Pg=e=>ze(`/api/dir${e?`?path=${encodeURIComponent(e)}`:""}`,{timeoutMs:8e3}),Js=e=>ze(`/api/pane-cwd?pane=${encodeURIComponent(e)}`,{timeoutMs:8e3}),vy=()=>ze("/api/asr/sign",{timeoutMs:8e3}),Og=()=>ze("/api/config",{timeoutMs:8e3}),wy=()=>ze("/api/version",{timeoutMs:8e3}),yy=()=>ze("/api/hooks/install",{method:"POST",timeoutMs:15e3}),Sy=(e=[])=>ze(`/api/states?sessions=${encodeURIComponent(e.join(","))}`,{timeoutMs:4e3}),tf=()=>ze("/api/orphans",{timeoutMs:8e3}),by=e=>ze("/api/orphans/takeover",{method:"POST",body:JSON.stringify(e),timeoutMs:15e3}),sf=e=>ze(`/api/git/repos?dir=${encodeURIComponent(e)}`,{timeoutMs:8e3}),xy=e=>ze(`/api/git/status?repo=${encodeURIComponent(e)}`,{timeoutMs:8e3}),Cy=(e,{limit:t=50,ref:i}={})=>{let s=`/api/git/log?repo=${encodeURIComponent(e)}&limit=${t}`;return i&&(s+=`&ref=${encodeURIComponent(i)}`),ze(s,{timeoutMs:8e3})},ky=e=>ze(`/api/git/branches?repo=${encodeURIComponent(e)}`,{timeoutMs:8e3}),Ey=(e,{path:t,commit:i,staged:s}={})=>{let n=`/api/git/diff?repo=${encodeURIComponent(e)}&path=${encodeURIComponent(t??"")}`;return i&&(n+=`&commit=${encodeURIComponent(i)}`),s&&(n+="&staged=1"),ze(n,{timeoutMs:8e3})},Ly=(e,t)=>ze(`/api/git/commit?repo=${encodeURIComponent(e)}&hash=${encodeURIComponent(t)}`,{timeoutMs:8e3});function Ry(e,t){return new Promise((i,s)=>{const n=ir(),u=new XMLHttpRequest;u.open("GET",`/api/download?path=${encodeURIComponent(e)}`),u.setRequestHeader("Authorization",`Bearer ${n??""}`),u.responseType="blob",u.onprogress=p=>{t&&p.lengthComputable&&t(p.loaded/p.total)},u.onerror=()=>s(new Error("download failed")),u.onload=()=>{if(u.status===401)return s(new it);if(u.status<200||u.status>=300)return s(new Error(`download -> ${u.status}`));const p=e.split("/").pop()||"download";let r=u.response;const o=Ga(p);o&&r&&r.type!==o&&(r=r.slice(0,r.size,o));const f=URL.createObjectURL(r),_=document.createElement("a");_.href=f,_.download=p,document.body.appendChild(_),_.click(),_.remove(),setTimeout(()=>URL.revokeObjectURL(f),1e3),i()},u.send()})}function Ty(e){return new Promise((t,i)=>{const s=ir(),n=new XMLHttpRequest;n.open("GET",`/api/download?path=${encodeURIComponent(e)}`),n.setRequestHeader("Authorization",`Bearer ${s??""}`),n.responseType="blob",n.onerror=()=>i(new Error(D("api.loadFailed"))),n.onload=()=>{if(n.status===401)return i(new it);if(n.status<200||n.status>=300)return i(new Error(`image -> ${n.status}`));let u=n.response;const p=Ga(e.split("/").pop()||"");p&&u&&u.type!==p&&(u=u.slice(0,u.size,p)),t(URL.createObjectURL(u))},n.send()})}const rf=(e,t)=>{const i=encodeURIComponent(ir()??"");return(e==null?void 0:e.kind)==="dynamic"?`https://${encodeURIComponent(e.name)}.${t}/?token=${i}`:`/preview/${encodeURIComponent(e==null?void 0:e.name)}/?token=${i}`},kl=(e,t={})=>ze("/api/previews",{method:"POST",body:JSON.stringify(t.port!=null?{name:e,port:t.port}:{name:e,dir:t.dir})}),Dy=()=>ze("/api/previews"),Ay=e=>ze(`/api/previews/${encodeURIComponent(e)}`,{method:"DELETE"});class Sa extends Error{constructor(){super("upload aborted"),this.name="UploadAbort"}}function Bg(e,t,i,s=!1,{signal:n}={}){return new Promise((u,p)=>{if(n!=null&&n.aborted)return p(new Sa);const r=ir(),o=new FormData;o.append("dir",e),s&&o.append("stash","1"),o.append("file",t,t.name);const f=new XMLHttpRequest;f.open("POST","/api/upload"),f.setRequestHeader("Authorization",`Bearer ${r??""}`),f.upload.onprogress=m=>{i&&m.lengthComputable&&i(m.loaded/m.total,"sending")},f.upload.onload=()=>{i==null||i(1,"processing")};const _=()=>f.abort();n&&n.addEventListener("abort",_,{once:!0});const c=()=>{n&&n.removeEventListener("abort",_)};f.onabort=()=>{c(),p(new Sa)},f.onerror=()=>{c(),p(new Error(D("api.uploadFailed")))},f.onload=()=>{if(c(),f.status===401)return p(new it);if(f.status>=200&&f.status<300)try{return u(JSON.parse(f.responseText))}catch{return u({})}const m={400:D("api.uploadBadDir"),409:D("api.uploadDuplicate"),413:D("api.uploadTooLarge"),415:D("api.uploadBadType")}[f.status]||D("api.uploadFailed");p(new Error(m))},f.send(o)})}function nf(e){return String(e||"").replace(/[^A-Za-z0-9._-]+/g,"-").replace(/-{2,}/g,"-").replace(/^[-.]+|-+$/g,"").toLowerCase()}function My({session:e,windowName:t,windowId:i}){const s=[e,t].map(nf).filter(Boolean);return s.push(nf(i)||"w"),s.join("-")}const Ny=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" role="img" aria-label="Claude"><title>Claude</title><path fill="#d97757" d="m4.7144 15.9555 4.7174-2.6471.079-.2307-.079-.1275h-.2307l-.7893-.0486-2.6956-.0729-2.3375-.0971-2.2646-.1214-.5707-.1215-.5343-.7042.0546-.3522.4797-.3218.686.0608 1.5179.1032 2.2767.1578 1.6514.0972 2.4468.255h.3886l.0546-.1579-.1336-.0971-.1032-.0972L6.973 9.8356l-2.55-1.6879-1.3356-.9714-.7225-.4918-.3643-.4614-.1578-1.0078.6557-.7225.8803.0607.2246.0607.8925.686 1.9064 1.4754 2.4893 1.8336.3643.3035.1457-.1032.0182-.0728-.164-.2733-1.3539-2.4467-1.445-2.4893-.6435-1.032-.17-.6194c-.0607-.255-.1032-.4674-.1032-.7285L6.287.1335 6.6997 0l.9957.1336.419.3642.6192 1.4147 1.0018 2.2282 1.5543 3.0296.4553.8985.2429.8318.091.255h.1579v-.1457l.1275-1.706.2368-2.0947.2307-2.6957.0789-.7589.3764-.9107.7468-.4918.5828.2793.4797.686-.0668.4433-.2853 1.8517-.5586 2.9021-.3643 1.9429h.2125l.2429-.2429.9835-1.3053 1.6514-2.0643.7286-.8196.85-.9046.5464-.4311h1.0321l.759 1.1293-.34 1.1657-1.0625 1.3478-.8804 1.1414-1.2628 1.7-.7893 1.36.0729.1093.1882-.0183 2.8535-.607 1.5421-.2794 1.8396-.3157.8318.3886.091.3946-.3278.8075-1.967.4857-2.3072.4614-3.4364.8136-.0425.0304.0486.0607 1.5482.1457.6618.0364h1.621l3.0175.2247.7892.522.4736.6376-.079.4857-1.2142.6193-1.6393-.3886-3.825-.9107-1.3113-.3279h-.1822v.1093l1.0929 1.0686 2.0035 1.8092 2.5075 2.3314.1275.5768-.3218.4554-.34-.0486-2.2039-1.6575-.85-.7468-1.9246-1.621h-.1275v.17l.4432.6496 2.3436 3.5214.1214 1.0807-.17.3521-.6071.2125-.6679-.1214-1.3721-1.9246L14.38 17.959l-1.1414-1.9428-.1397.079-.674 7.2552-.3156.3703-.7286.2793-.6071-.4614-.3218-.7468.3218-1.4753.3886-1.9246.3157-1.53.2853-1.9004.17-.6314-.0121-.0425-.1397.0182-1.4328 1.9672-2.1796 2.9446-1.7243 1.8456-.4128.164-.7164-.3704.0667-.6618.4008-.5889 2.386-3.0357 1.4389-1.882.929-1.0868-.0062-.1579h-.0546l-6.3385 4.1164-1.1293.1457-.4857-.4554.0608-.7467.2307-.2429 1.9064-1.3114Z"/></svg>
|
|
41
|
+
`,Iy=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" role="img" aria-label="Codex"><title>Codex (OpenAI)</title><path fill="#ededed" d="M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z"/></svg>
|
|
42
|
+
`,st={viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.75,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":!0};function Hn(){return v.jsx("svg",{...st,children:v.jsx("path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z"})})}function Py(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M4 20h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.66-.9l-.82-1.2A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13c0 1.1.9 2 2 2Z"}),v.jsx("path",{d:"M12 10v6M9 13h6"})]})}function Mc(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2Z"}),v.jsx("circle",{cx:"12",cy:"12",r:"3"})]})}function Oy(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z"}),v.jsx("path",{d:"M14 3v5h5"})]})}function By(){return v.jsxs("svg",{...st,children:[v.jsx("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",ry:"2"}),v.jsx("circle",{cx:"9",cy:"9",r:"2"}),v.jsx("path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"})]})}function jg(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M12 19V5"}),v.jsx("path",{d:"m5 12 7-7 7 7"})]})}function jy(){return v.jsxs("svg",{...st,children:[v.jsx("line",{x1:"2",x2:"5",y1:"12",y2:"12"}),v.jsx("line",{x1:"19",x2:"22",y1:"12",y2:"12"}),v.jsx("line",{x1:"12",x2:"12",y1:"2",y2:"5"}),v.jsx("line",{x1:"12",x2:"12",y1:"19",y2:"22"}),v.jsx("circle",{cx:"12",cy:"12",r:"7"})]})}function Ds(){return v.jsx("svg",{...st,children:v.jsx("path",{d:"m6 9 6 6 6-6"})})}function Fg(){return v.jsx("svg",{...st,children:v.jsx("path",{d:"M12 5v14M5 12h14"})})}function Hg(){return v.jsx("svg",{...st,children:v.jsx("path",{d:"M20 6 9 17l-5-5"})})}function $g(){return v.jsxs("svg",{...st,children:[v.jsx("circle",{cx:"12",cy:"12",r:"9"}),v.jsx("path",{d:"M12 7v5l3 2"})]})}function Fy(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M9 18h6"}),v.jsx("path",{d:"M10 22h4"}),v.jsx("path",{d:"M15.09 14c.18-.98.65-1.74 1.41-2.5A4.65 4.65 0 0 0 18 8 6 6 0 0 0 6 8c0 1 .23 2.23 1.5 3.5A4.61 4.61 0 0 1 8.91 14"})]})}function Hy(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M22 12h-6l-2 3h-4l-2-3H2"}),v.jsx("path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11Z"})]})}function $y(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M12 3v12"}),v.jsx("path",{d:"m7 10 5 5 5-5"}),v.jsx("path",{d:"M5 21h14"})]})}function zg(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"}),v.jsx("path",{d:"M14 2v4a2 2 0 0 0 2 2h4"}),v.jsx("path",{d:"M12 18v-6"}),v.jsx("path",{d:"m9 15 3-3 3 3"})]})}function Ug(){return v.jsxs("svg",{...st,children:[v.jsx("rect",{x:"9",y:"9",width:"11",height:"11",rx:"2"}),v.jsx("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})]})}function zy(){return v.jsx("svg",{...st,children:v.jsx("path",{d:"M7 5l12 7-12 7z"})})}function Uy(){return v.jsxs("svg",{...st,children:[v.jsx("line",{x1:"9",y1:"5",x2:"9",y2:"19"}),v.jsx("line",{x1:"15",y1:"5",x2:"15",y2:"19"})]})}function Wy(){return v.jsx("svg",{...st,children:v.jsx("rect",{x:"6",y:"6",width:"12",height:"12",rx:"2"})})}function Vy(){return v.jsxs("svg",{...st,children:[v.jsx("rect",{x:"9",y:"3",width:"6",height:"11",rx:"3"}),v.jsx("path",{d:"M5 11a7 7 0 0 0 14 0"}),v.jsx("line",{x1:"12",y1:"18",x2:"12",y2:"21"})]})}function Nc(){return v.jsxs("svg",{...st,children:[v.jsx("rect",{x:"2",y:"3",width:"20",height:"14",rx:"2"}),v.jsx("path",{d:"M8 21h8M12 17v4"})]})}function Ky(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M12 14l4-4"}),v.jsx("path",{d:"M3.34 19a10 10 0 1 1 17.32 0"})]})}function Gy(){return v.jsxs("svg",{...st,children:[v.jsx("rect",{x:"5",y:"2",width:"14",height:"20",rx:"2"}),v.jsx("path",{d:"M12 18h.01"})]})}function qy(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"}),v.jsx("path",{d:"M21 3v5h-5"}),v.jsx("path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"}),v.jsx("path",{d:"M3 21v-5h5"})]})}function Wg(){return v.jsxs("svg",{...st,children:[v.jsx("line",{x1:"6",y1:"3",x2:"6",y2:"15"}),v.jsx("circle",{cx:"18",cy:"6",r:"3"}),v.jsx("circle",{cx:"6",cy:"18",r:"3"}),v.jsx("path",{d:"M18 9a9 9 0 0 1-9 9"})]})}function Ar(){return v.jsxs("svg",{...st,children:[v.jsx("path",{d:"M18 6 6 18"}),v.jsx("path",{d:"m6 6 12 12"})]})}function Yy({down:e=!1}){return v.jsxs("svg",{...st,children:[v.jsx("rect",{x:"3",y:"9",width:"18",height:"11",rx:"2"}),v.jsx("path",{d:"M7 13h.01M11 13h.01M15 13h.01M8 16.5h8"}),e?v.jsx("path",{d:"M9 4.5l3 3 3-3"}):v.jsx("path",{d:"M9 6.5l3-3 3 3"})]})}const of={claude:Ny,codex:Iy};function Yn({agent:e}){const t=of[e]?e:"claude";return v.jsx("span",{className:"agent-mark",role:"img","aria-label":t,dangerouslySetInnerHTML:{__html:of[t]}})}const Vg=e=>{if(e<=0)return D("time.expired");const t=Math.max(1,Math.round(e/6e4));return D("time.minutes",{n:t})};function Kg(e,t=!0){const[i,s]=N.useState(()=>Date.now());return N.useEffect(()=>{if(!t||e==null)return;s(Date.now());const n=setInterval(()=>s(Date.now()),1e3);return()=>clearInterval(n)},[t,e]),e!=null?Math.max(0,e-i):0}const El=1280,af=6;function Xy({open:e,name:t,kind:i="static",domain:s=null,port:n,dir:u,expiresAt:p,onRenew:r,onStop:o,onMinimize:f}){const[_,c]=N.useState(!1),[m,y]=N.useState("mobile"),[b,g]=N.useState(1),[a,h]=N.useState({w:0,h:0}),l=N.useRef(null),d=N.useRef(null);N.useEffect(()=>{e||c(!1)},[e]),N.useEffect(()=>{m==="mobile"&&g(1)},[m]),N.useEffect(()=>{const O=d.current;if(!e||!O)return;const U=()=>h({w:O.clientWidth,h:O.clientHeight});if(U(),typeof ResizeObserver>"u")return;const $=new ResizeObserver(U);return $.observe(O),()=>$.disconnect()},[e]);const w=Kg(p,e),k=i==="dynamic"?n!=null?`:${n}`:"":u||"",C=m==="pc"&&a.w>0,L=a.w>0?a.w/El:1,x=a.h>0?a.h/L:0,E=L*b,R=C?{width:`${El*E}px`,height:`${x*E}px`}:void 0,I=C?{width:`${El}px`,height:`${x}px`,transform:`scale(${E})`,transformOrigin:"0 0"}:void 0,T=O=>g(U=>Math.min(af,Math.max(1,+(U+O).toFixed(2)))),A=()=>{const O=l.current;if(O)try{O.contentWindow.location.reload()}catch{O.src=O.src}};return qn.createPortal(v.jsxs("div",{className:`file-sheet ${e?"open":""}`,"aria-hidden":!e,children:[v.jsxs("div",{className:"file-tabs preview-head",children:[v.jsxs("span",{className:"preview-status",children:[v.jsx(Nc,{}),v.jsx("span",{className:"preview-state",children:D(i==="dynamic"?"preview.dynamic":"preview.static")}),t&&v.jsxs("span",{className:"preview-name",title:`${t}${k?" "+k:""}`,children:[t,k&&v.jsx("span",{className:"preview-detail",children:k})]})]}),v.jsx("button",{className:"preview-remain",title:D("preview.remainTitle"),"aria-haspopup":"dialog","aria-expanded":_,onClick:()=>c(O=>!O),children:Vg(w)}),v.jsx("button",{className:"preview-iconbtn",onClick:()=>y(O=>O==="mobile"?"pc":"mobile"),"aria-label":D(m==="mobile"?"preview.toPcView":"preview.toMobileView"),title:D(m==="mobile"?"preview.pcView":"preview.mobileView"),"aria-pressed":m==="pc",children:m==="mobile"?v.jsx(Nc,{}):v.jsx(Gy,{})}),v.jsx("button",{className:"preview-iconbtn",onClick:A,"aria-label":D("preview.refresh"),title:D("preview.refresh"),children:v.jsx(qy,{})}),v.jsx("button",{className:"file-min","aria-label":D("preview.minimize"),title:D("preview.minimize"),onClick:f,children:v.jsx(Ds,{})}),_&&v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"preview-pop-backdrop",onClick:()=>c(!1)}),v.jsxs("div",{className:"preview-pop",role:"dialog","aria-label":D("preview.ttlDialog"),children:[v.jsx("button",{className:"preview-pop-item",onClick:()=>{c(!1),r==null||r()},children:D("preview.renew")}),v.jsx("button",{className:"preview-pop-item preview-pop-danger",onClick:()=>{c(!1),o==null||o()},children:D("preview.stop")})]})]})]}),v.jsx("div",{className:`file-body preview-body ${C?"pc":""}`,ref:d,children:t&&C?v.jsx("div",{className:"preview-scaler",style:R,children:v.jsx("iframe",{ref:l,className:"preview-frame",title:D("preview.iframeTitle"),style:I,src:rf({name:t,kind:i},s)})}):t?v.jsx("iframe",{ref:l,className:"preview-frame",title:D("preview.iframeTitle"),src:rf({name:t,kind:i},s)}):null}),C&&v.jsxs("div",{className:"preview-zoom",children:[v.jsx("button",{className:"preview-zoom-btn",onClick:()=>T(-.5),disabled:b<=1,"aria-label":D("preview.zoomOut"),children:"−"}),v.jsxs("span",{className:"preview-zoom-val","aria-hidden":"true",children:[Math.round(b*100),"%"]}),v.jsx("button",{className:"preview-zoom-btn",onClick:()=>T(.5),disabled:b>=af,"aria-label":D("preview.zoomIn"),children:"+"})]})]}),document.body)}const Jy={working:"working",done:"done",idle:"done",permission:"needs"},Ic={needs:3,done:2,working:1},Zy={working:D("inbox.view.working"),done:D("inbox.view.done"),needs:D("inbox.view.needs")};function Qy(e,t={},i=0){const s=[];for(const[n,u]of Object.entries(e)){const p=Jy[u.kind];if(!p)continue;const r=u.ts||0;p==="done"&&!(r>Math.max(i||0,t[n]||0))||s.push({pane:n,session:u.session,window:u.window,windowName:u.windowName,view:p,msg:u.msg||"",ts:r,agent:u.agent||"claude"})}return s.sort((n,u)=>n.session<u.session?-1:n.session>u.session?1:Ic[u.view]-Ic[n.view]||u.ts-n.ts),s}function e1(e){const t={working:0,done:0,needs:0};for(const i of e)t[i.view]!=null&&(t[i.view]+=1);return t}function t1(e){let t=null,i=0;for(const s of e){const n=Ic[s.view]||0;n>i&&(i=n,t=s.view)}return t}function lf(e){let t=0;for(const i of Object.values(e))(i.ts||0)>t&&(t=i.ts);return t}function Gg(e,t){if(!e)return"";const i=Math.max(0,Math.round((t-e)/1e3));if(i<60)return D("time.secAgo",{n:i});const s=Math.round(i/60);if(s<60)return D("time.minAgo",{n:s});const n=Math.round(s/60);return n<24?D("time.hourAgo",{n}):D("time.dayAgo",{n:Math.round(n/24)})}function Ll(e,t,i){const s=e.findIndex(n=>n.id===t);return s<0?null:e[i==="left"?s-1:s+1]??null}const qg="tw_notify",Yg=()=>localStorage.getItem(qg)==="1",Xg=e=>localStorage.setItem(qg,e?"1":"0");function qa(){return typeof navigator<"u"&&"serviceWorker"in navigator&&typeof window<"u"&&"PushManager"in window&&"Notification"in window}function i1(){var e;return typeof window<"u"&&(((e=window.matchMedia)==null?void 0:e.call(window,"(display-mode: standalone)").matches)||window.navigator.standalone===!0)||!1}const s1=()=>/iP(hone|ad|od)/.test(navigator.userAgent||"");function ba(e={}){return{Authorization:`Bearer ${ir()??""}`,...e}}function r1(e){const t="=".repeat((4-e.length%4)%4),i=(e+t).replace(/-/g,"+").replace(/_/g,"/"),s=atob(i),n=new Uint8Array(s.length);for(let u=0;u<s.length;u+=1)n[u]=s.charCodeAt(u);return n}async function n1(){if(!qa())throw new Error(D("push.unsupported"));if(s1()&&!i1())throw new Error(D("push.iosAddToHome"));if(await Notification.requestPermission()!=="granted")throw new Error(D("push.permissionDenied"));const t=await navigator.serviceWorker.ready,i=await fetch("/api/push/vapid",{headers:ba(),cache:"no-store"});if(!i.ok)throw new Error(D("push.noVapid"));const{key:s}=await i.json();let n=await t.pushManager.getSubscription();if(n||(n=await t.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:r1(s)})),!(await fetch("/api/push/subscribe",{method:"POST",headers:ba({"Content-Type":"application/json"}),body:JSON.stringify({subscription:n,boundSessions:Xs()})})).ok)throw new Error(D("push.subscribeFailed"));return Xg(!0),!0}async function o1(){try{const t=await(await navigator.serviceWorker.ready).pushManager.getSubscription();t&&(await fetch("/api/push/unsubscribe",{method:"POST",headers:ba({"Content-Type":"application/json"}),body:JSON.stringify({endpoint:t.endpoint})}),await t.unsubscribe())}catch{}Xg(!1)}async function en(){if(!(!Yg()||!qa()))try{const t=await(await navigator.serviceWorker.ready).pushManager.getSubscription();if(!t)return;await fetch("/api/push/bound",{method:"POST",headers:ba({"Content-Type":"application/json"}),body:JSON.stringify({endpoint:t.endpoint,boundSessions:Xs()})})}catch{}}async function a1(e){if(qa())try{(await(await navigator.serviceWorker.ready).getNotifications({tag:`pane-${e}`})).forEach(s=>s.close())}catch{}}const cf="\\s'\"`()\\[\\]<>,;,。、;:!?()【】《》「」“”‘’",l1="md|markdown|html|htm|txt|log|sh|png|jpg|jpeg|jfif|gif|webp|svg|bmp|ico|avif|apng",uf=new RegExp(`[^${cf}]+\\.(?:${l1})(?=$|[${cf}:.])`,"gi");function Jg(e){const t=[];if(!e)return t;uf.lastIndex=0;let i;for(;(i=uf.exec(e))!==null;)t.push({start:i.index,end:i.index+i[0].length,path:i[0]});return t}const Zg=e=>typeof e=="string"&&e.startsWith("/");function js(e,t){const i=Zg(t)?t:`${e.replace(/\/+$/,"")}/${t}`,s=i.startsWith("/"),n=[];for(const u of i.split("/"))if(!(!u||u===".")){if(u===".."){n.pop();continue}n.push(u)}return(s?"/":"")+n.join("/")}const c1={key:"home",type:"home",name:D("doc.home")};function u1(e,t,i){if(e.tabs.some(n=>n.key===t))return{...e,active:t};const s={key:t,type:i.type,name:i.name,content:i.content,path:t};return{tabs:[...e.tabs,s],active:t}}function h1(e,t){const i=e.tabs.findIndex(u=>u.key===t);if(i<=0)return e;const s=e.tabs.filter(u=>u.key!==t),n=e.active===t?e.tabs[i-1].key:e.active;return{tabs:s,active:n}}function d1(){const[e,t]=N.useState({tabs:[c1],active:"home"}),i=N.useCallback((u,p)=>t(r=>u1(r,u,p)),[]),s=N.useCallback(u=>t(p=>h1(p,u)),[]),n=N.useCallback(u=>t(p=>({...p,active:u})),[]);return{tabs:e.tabs,active:e.active,openDoc:i,closeTab:s,activate:n}}function f1({open:e,currentSessionName:t,bound:i,onSelectSession:s,onUnbind:n,onBind:u,onClose:p,onLogout:r,orphans:o=[],onTakeoverRequest:f}){const[_,c]=N.useState(!1);return v.jsxs(v.Fragment,{children:[v.jsxs("div",{className:`drawer ${e?"open":""}`,children:[v.jsxs("div",{className:"drawer-list",children:[v.jsx("div",{className:"drawer-title",children:"SESSIONS"}),i.length===0&&v.jsx("div",{className:"drawer-empty",children:D("drawer.empty")}),i.map(m=>v.jsxs("div",{className:`drawer-row drawer-session ${m===t?"active":""}`,children:[v.jsx("span",{className:"drawer-name",onClick:()=>s(m),children:m}),v.jsx("button",{className:"drawer-unbind",onClick:y=>{y.stopPropagation(),n(m)},"aria-label":D("drawer.unbind"),title:D("drawer.unbind"),children:"✕"})]},m)),v.jsxs("button",{className:"drawer-bind",onClick:u,children:["+ ",D("drawer.bind")]}),o.length>0&&v.jsxs("div",{className:"drawer-orphans",children:[v.jsxs("button",{className:"drawer-orphans-head",onClick:()=>c(m=>!m),children:[v.jsx("span",{children:D("drawer.orphans.title",{n:o.length})}),v.jsx("span",{className:"drawer-orphans-caret","aria-hidden":"true",children:_?"▾":"▸"})]}),_&&v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"drawer-orphans-hint",children:D("drawer.orphans.hint")}),o.map(m=>{const y=!m.sessionId,b=m.state==="busy"||y;return v.jsxs("div",{className:"drawer-orphan-row",children:[v.jsxs("div",{className:"drawer-orphan-head",children:[v.jsx("span",{className:"drawer-orphan-cwd",title:m.cwd,children:m.cwdLabel||m.cwd}),v.jsx("button",{className:"drawer-orphan-btn",disabled:b,title:y?D("inbox.orphans.noSession"):void 0,onClick:()=>f==null?void 0:f(m),children:D("inbox.orphans.takeover")})]}),v.jsxs("div",{className:"drawer-orphan-meta",children:[m.agentLabel&&v.jsx("span",{className:"drawer-orphan-agent",children:m.agentLabel}),v.jsx("span",{className:`drawer-orphan-state ${m.state==="busy"?"busy":"idle"}`,children:m.state==="busy"?D("inbox.orphans.busy"):D("inbox.orphans.idle")}),v.jsx("span",{className:"drawer-orphan-time",children:Gg(m.startedAt||m.lastActivity,Date.now())}),m.snippet&&v.jsx("span",{className:"drawer-orphan-msg",children:m.snippet})]})]},m.pid)})]})]})]}),v.jsx("button",{className:"drawer-logout",onClick:r,children:D("drawer.logout")})]}),e&&v.jsx("div",{className:"drawer-backdrop",onClick:p})]})}const p1=500,hf=10;function Xu(e,{onClick:t}={}){const i=N.useRef(null),s=N.useRef(null),n=N.useRef(!1),u=()=>{i.current&&(clearTimeout(i.current),i.current=null)};return{onPointerDown:p=>{n.current=!1,s.current={x:p.clientX,y:p.clientY},u(),i.current=setTimeout(()=>{i.current=null,n.current=!0,e==null||e()},p1)},onPointerMove:p=>{!i.current||!s.current||(Math.abs(p.clientX-s.current.x)>hf||Math.abs(p.clientY-s.current.y)>hf)&&u()},onPointerUp:u,onPointerLeave:u,onPointerCancel:u,onClick:p=>{var r,o;if(n.current){n.current=!1,(r=p.preventDefault)==null||r.call(p),(o=p.stopPropagation)==null||o.call(p);return}t==null||t(p)}}}const df="①②③④⑤⑥⑦⑧⑨",m1=e=>e<df.length?df[e]:String(e+1),ff=(e,t)=>`${m1(t)} ${e.command||e.id}`;function g1({window:e,active:t,agent:i,onSelect:s,onManage:n}){const u=Xu(()=>n(e),{onClick:()=>s(e)});return v.jsxs("button",{"data-win":e.id,className:`win-tab ${t?"active":""}`,...u,children:[i&&v.jsx(Yn,{agent:i}),e.name||e.id,e.panes>1&&v.jsx("span",{className:"win-panes",children:e.panes})]})}function _1({window:e,panes:t,currentPaneId:i,agent:s,onManage:n,onSelectPane:u}){const[p,r]=N.useState(!1),[o,f]=N.useState(null),_=N.useRef(null),c=()=>{var a;const g=(a=_.current)==null?void 0:a.getBoundingClientRect();g&&f({top:g.bottom+6,left:g.left})},m=Xu(()=>n(e),{onClick:()=>{p||c(),r(g=>!g)}});N.useEffect(()=>{if(!p)return;const g=h=>{var l;(l=_.current)!=null&&l.contains(h.target)||r(!1)},a=()=>c();return document.addEventListener("pointerdown",g,!0),window.addEventListener("scroll",a,!0),window.addEventListener("resize",a),()=>{document.removeEventListener("pointerdown",g,!0),window.removeEventListener("scroll",a,!0),window.removeEventListener("resize",a)}},[p]);const y=Math.max(0,t.findIndex(g=>g.id===i)),b=t[y];return v.jsxs("div",{className:"wt-dd active","data-win":e.id,ref:_,children:[v.jsxs("button",{className:"win-tab active wt-trigger","aria-haspopup":"listbox","aria-expanded":p,...m,children:[s&&v.jsx(Yn,{agent:s}),v.jsx("span",{className:"wt-name",children:e.name||e.id}),v.jsx("span",{className:"wt-sep","aria-hidden":"true",children:"│"}),v.jsx("span",{className:"wt-pane",children:ff(b,y)}),v.jsx("span",{className:`wt-caret${p?" open":""}`,"aria-hidden":"true",children:"▾"})]}),p&&o&&v.jsx("div",{className:"dd-menu wt-menu",role:"listbox",style:{top:o.top,left:o.left},children:t.map((g,a)=>v.jsxs("button",{type:"button",role:"option","aria-selected":g.id===i,className:`dd-option${g.id===i?" is-selected":""}`,onClick:()=>{u(g.id),r(!1)},children:[v.jsx("span",{className:"dd-option-label",children:ff(g,a)}),g.id===i&&v.jsx("span",{className:"dd-check","aria-hidden":"true",children:"✓"})]},g.id))})]})}function v1({windows:e,windowAgents:t={},currentAgent:i,currentWindowId:s,panes:n,currentPaneId:u,onSelectWindow:p,onSelectPane:r,onNewWindow:o,onManageWindow:f,trackWindowId:_}){const c=N.useRef(null);return N.useLayoutEffect(()=>{var m,y;_&&((y=(m=c.current)==null?void 0:m.querySelector(`[data-win="${_}"]`))==null||y.scrollIntoView({block:"nearest",inline:"nearest"}))},[e,_]),v.jsx("div",{className:"windowbar",children:v.jsxs("div",{className:"windowbar-scroll",ref:c,children:[e.map(m=>{const y=m.id===s;return y&&n.length>1?v.jsx(_1,{window:m,panes:n,currentPaneId:u,agent:i||t[m.id],onManage:f,onSelectPane:r},m.id):v.jsx(g1,{window:m,active:y,agent:t[m.id],onSelect:p,onManage:f},m.id)}),v.jsx("button",{className:"win-tab win-new",onClick:o,"aria-label":D("windowbar.newWindow"),title:D("windowbar.newWindow"),children:"+"})]})})}var Qg={exports:{}};(function(e,t){(function(i,s){e.exports=s()})(globalThis,()=>(()=>{var i={4567:function(p,r,o){var f=this&&this.__decorate||function(l,d,w,k){var C,L=arguments.length,x=L<3?d:k===null?k=Object.getOwnPropertyDescriptor(d,w):k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(l,d,w,k);else for(var E=l.length-1;E>=0;E--)(C=l[E])&&(x=(L<3?C(x):L>3?C(d,w,x):C(d,w))||x);return L>3&&x&&Object.defineProperty(d,w,x),x},_=this&&this.__param||function(l,d){return function(w,k){d(w,k,l)}};Object.defineProperty(r,"__esModule",{value:!0}),r.AccessibilityManager=void 0;const c=o(9042),m=o(9924),y=o(844),b=o(4725),g=o(2585),a=o(3656);let h=r.AccessibilityManager=class extends y.Disposable{constructor(l,d,w,k){super(),this._terminal=l,this._coreBrowserService=w,this._renderService=k,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 C=0;C<this._terminal.rows;C++)this._rowElements[C]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[C]);if(this._topBoundaryFocusListener=C=>this._handleBoundaryFocus(C,0),this._bottomBoundaryFocusListener=C=>this._handleBoundaryFocus(C,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 m.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(C=>this._handleResize(C.rows))),this.register(this._terminal.onRender(C=>this._refreshRows(C.start,C.end))),this.register(this._terminal.onScroll(()=>this._refreshRows())),this.register(this._terminal.onA11yChar(C=>this._handleChar(C))),this.register(this._terminal.onLineFeed(()=>this._handleChar(`
|
|
43
|
+
`))),this.register(this._terminal.onA11yTab(C=>this._handleTab(C))),this.register(this._terminal.onKey(C=>this._handleKey(C.key))),this.register(this._terminal.onBlur(()=>this._clearLiveRegion())),this.register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this.register((0,a.addDisposableDomListener)(document,"selectionchange",()=>this._handleSelectionChange())),this.register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRows(),this.register((0,y.toDisposable)(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(l){for(let d=0;d<l;d++)this._handleChar(" ")}_handleChar(l){this._liveRegionLineCount<21&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==l&&(this._charsToAnnounce+=l):this._charsToAnnounce+=l,l===`
|
|
44
|
+
`&&(this._liveRegionLineCount++,this._liveRegionLineCount===21&&(this._liveRegion.textContent+=c.tooMuchOutput)))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(l){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(l)||this._charsToConsume.push(l)}_refreshRows(l,d){this._liveRegionDebouncer.refresh(l,d,this._terminal.rows)}_renderRows(l,d){const w=this._terminal.buffer,k=w.lines.length.toString();for(let C=l;C<=d;C++){const L=w.lines.get(w.ydisp+C),x=[],E=(L==null?void 0:L.translateToString(!0,void 0,void 0,x))||"",R=(w.ydisp+C+1).toString(),I=this._rowElements[C];I&&(E.length===0?(I.innerText=" ",this._rowColumns.set(I,[0,1])):(I.textContent=E,this._rowColumns.set(I,x)),I.setAttribute("aria-posinset",R),I.setAttribute("aria-setsize",k))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(l,d){const w=l.target,k=this._rowElements[d===0?1:this._rowElements.length-2];if(w.getAttribute("aria-posinset")===(d===0?"1":`${this._terminal.buffer.lines.length}`)||l.relatedTarget!==k)return;let C,L;if(d===0?(C=w,L=this._rowElements.pop(),this._rowContainer.removeChild(L)):(C=this._rowElements.shift(),L=w,this._rowContainer.removeChild(C)),C.removeEventListener("focus",this._topBoundaryFocusListener),L.removeEventListener("focus",this._bottomBoundaryFocusListener),d===0){const x=this._createAccessibilityTreeNode();this._rowElements.unshift(x),this._rowContainer.insertAdjacentElement("afterbegin",x)}else{const x=this._createAccessibilityTreeNode();this._rowElements.push(x),this._rowContainer.appendChild(x)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(d===0?-1:1),this._rowElements[d===0?1:this._rowElements.length-2].focus(),l.preventDefault(),l.stopImmediatePropagation()}_handleSelectionChange(){var E;if(this._rowElements.length===0)return;const l=document.getSelection();if(!l)return;if(l.isCollapsed)return void(this._rowContainer.contains(l.anchorNode)&&this._terminal.clearSelection());if(!l.anchorNode||!l.focusNode)return void console.error("anchorNode and/or focusNode are null");let d={node:l.anchorNode,offset:l.anchorOffset},w={node:l.focusNode,offset:l.focusOffset};if((d.node.compareDocumentPosition(w.node)&Node.DOCUMENT_POSITION_PRECEDING||d.node===w.node&&d.offset>w.offset)&&([d,w]=[w,d]),d.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(d={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(d.node))return;const k=this._rowElements.slice(-1)[0];if(w.node.compareDocumentPosition(k)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(w={node:k,offset:((E=k.textContent)==null?void 0:E.length)??0}),!this._rowContainer.contains(w.node))return;const C=({node:R,offset:I})=>{const T=R instanceof Text?R.parentNode:R;let A=parseInt(T==null?void 0:T.getAttribute("aria-posinset"),10)-1;if(isNaN(A))return console.warn("row is invalid. Race condition?"),null;const O=this._rowColumns.get(T);if(!O)return console.warn("columns is null. Race condition?"),null;let U=I<O.length?O[I]:O.slice(-1)[0]+1;return U>=this._terminal.cols&&(++A,U=0),{row:A,column:U}},L=C(d),x=C(w);if(L&&x){if(L.row>x.row||L.row===x.row&&L.column>=x.column)throw new Error("invalid range");this._terminal.select(L.column,L.row,(x.row-L.row)*this._terminal.cols-L.column+x.column)}}_handleResize(l){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let d=this._rowContainer.children.length;d<this._terminal.rows;d++)this._rowElements[d]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[d]);for(;this._rowElements.length>l;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){const l=this._coreBrowserService.mainDocument.createElement("div");return l.setAttribute("role","listitem"),l.tabIndex=-1,this._refreshRowDimensions(l),l}_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 l=0;l<this._terminal.rows;l++)this._refreshRowDimensions(this._rowElements[l])}}_refreshRowDimensions(l){l.style.height=`${this._renderService.dimensions.css.cell.height}px`}};r.AccessibilityManager=h=f([_(1,g.IInstantiationService),_(2,b.ICoreBrowserService),_(3,b.IRenderService)],h)},3614:(p,r)=>{function o(m){return m.replace(/\r?\n/g,"\r")}function f(m,y){return y?"\x1B[200~"+m+"\x1B[201~":m}function _(m,y,b,g){m=f(m=o(m),b.decPrivateModes.bracketedPasteMode&&g.rawOptions.ignoreBracketedPasteMode!==!0),b.triggerDataEvent(m,!0),y.value=""}function c(m,y,b){const g=b.getBoundingClientRect(),a=m.clientX-g.left-10,h=m.clientY-g.top-10;y.style.width="20px",y.style.height="20px",y.style.left=`${a}px`,y.style.top=`${h}px`,y.style.zIndex="1000",y.focus()}Object.defineProperty(r,"__esModule",{value:!0}),r.rightClickHandler=r.moveTextAreaUnderMouseCursor=r.paste=r.handlePasteEvent=r.copyHandler=r.bracketTextForPaste=r.prepareTextForTerminal=void 0,r.prepareTextForTerminal=o,r.bracketTextForPaste=f,r.copyHandler=function(m,y){m.clipboardData&&m.clipboardData.setData("text/plain",y.selectionText),m.preventDefault()},r.handlePasteEvent=function(m,y,b,g){m.stopPropagation(),m.clipboardData&&_(m.clipboardData.getData("text/plain"),y,b,g)},r.paste=_,r.moveTextAreaUnderMouseCursor=c,r.rightClickHandler=function(m,y,b,g,a){c(m,y,b),a&&g.rightClickSelect(m),y.value=g.selectionText,y.select()}},7239:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ColorContrastCache=void 0;const f=o(1505);r.ColorContrastCache=class{constructor(){this._color=new f.TwoKeyMap,this._css=new f.TwoKeyMap}setCss(_,c,m){this._css.set(_,c,m)}getCss(_,c){return this._css.get(_,c)}setColor(_,c,m){this._color.set(_,c,m)}getColor(_,c){return this._color.get(_,c)}clear(){this._color.clear(),this._css.clear()}}},3656:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.addDisposableDomListener=void 0,r.addDisposableDomListener=function(o,f,_,c){o.addEventListener(f,_,c);let m=!1;return{dispose:()=>{m||(m=!0,o.removeEventListener(f,_,c))}}}},3551:function(p,r,o){var f=this&&this.__decorate||function(h,l,d,w){var k,C=arguments.length,L=C<3?l:w===null?w=Object.getOwnPropertyDescriptor(l,d):w;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")L=Reflect.decorate(h,l,d,w);else for(var x=h.length-1;x>=0;x--)(k=h[x])&&(L=(C<3?k(L):C>3?k(l,d,L):k(l,d))||L);return C>3&&L&&Object.defineProperty(l,d,L),L},_=this&&this.__param||function(h,l){return function(d,w){l(d,w,h)}};Object.defineProperty(r,"__esModule",{value:!0}),r.Linkifier=void 0;const c=o(3656),m=o(8460),y=o(844),b=o(2585),g=o(4725);let a=r.Linkifier=class extends y.Disposable{get currentLink(){return this._currentLink}constructor(h,l,d,w,k){super(),this._element=h,this._mouseService=l,this._renderService=d,this._bufferService=w,this._linkProviderService=k,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this.register(new m.EventEmitter),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this.register(new m.EventEmitter),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this.register((0,y.getDisposeArrayDisposable)(this._linkCacheDisposables)),this.register((0,y.toDisposable)(()=>{var C;this._lastMouseEvent=void 0,(C=this._activeProviderReplies)==null||C.clear()})),this.register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this.register((0,c.addDisposableDomListener)(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this.register((0,c.addDisposableDomListener)(this._element,"mousemove",this._handleMouseMove.bind(this))),this.register((0,c.addDisposableDomListener)(this._element,"mousedown",this._handleMouseDown.bind(this))),this.register((0,c.addDisposableDomListener)(this._element,"mouseup",this._handleMouseUp.bind(this)))}_handleMouseMove(h){this._lastMouseEvent=h;const l=this._positionFromMouseEvent(h,this._element,this._mouseService);if(!l)return;this._isMouseOut=!1;const d=h.composedPath();for(let w=0;w<d.length;w++){const k=d[w];if(k.classList.contains("xterm"))break;if(k.classList.contains("xterm-hover"))return}this._lastBufferCell&&l.x===this._lastBufferCell.x&&l.y===this._lastBufferCell.y||(this._handleHover(l),this._lastBufferCell=l)}_handleHover(h){if(this._activeLine!==h.y||this._wasResized)return this._clearCurrentLink(),this._askForLink(h,!1),void(this._wasResized=!1);this._currentLink&&this._linkAtPosition(this._currentLink.link,h)||(this._clearCurrentLink(),this._askForLink(h,!0))}_askForLink(h,l){var w,k;this._activeProviderReplies&&l||((w=this._activeProviderReplies)==null||w.forEach(C=>{C==null||C.forEach(L=>{L.link.dispose&&L.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=h.y);let d=!1;for(const[C,L]of this._linkProviderService.linkProviders.entries())l?(k=this._activeProviderReplies)!=null&&k.get(C)&&(d=this._checkLinkProviderResult(C,h,d)):L.provideLinks(h.y,x=>{var R,I;if(this._isMouseOut)return;const E=x==null?void 0:x.map(T=>({link:T}));(R=this._activeProviderReplies)==null||R.set(C,E),d=this._checkLinkProviderResult(C,h,d),((I=this._activeProviderReplies)==null?void 0:I.size)===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(h.y,this._activeProviderReplies)})}_removeIntersectingLinks(h,l){const d=new Set;for(let w=0;w<l.size;w++){const k=l.get(w);if(k)for(let C=0;C<k.length;C++){const L=k[C],x=L.link.range.start.y<h?0:L.link.range.start.x,E=L.link.range.end.y>h?this._bufferService.cols:L.link.range.end.x;for(let R=x;R<=E;R++){if(d.has(R)){k.splice(C--,1);break}d.add(R)}}}}_checkLinkProviderResult(h,l,d){var C;if(!this._activeProviderReplies)return d;const w=this._activeProviderReplies.get(h);let k=!1;for(let L=0;L<h;L++)this._activeProviderReplies.has(L)&&!this._activeProviderReplies.get(L)||(k=!0);if(!k&&w){const L=w.find(x=>this._linkAtPosition(x.link,l));L&&(d=!0,this._handleNewLink(L))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!d)for(let L=0;L<this._activeProviderReplies.size;L++){const x=(C=this._activeProviderReplies.get(L))==null?void 0:C.find(E=>this._linkAtPosition(E.link,l));if(x){d=!0,this._handleNewLink(x);break}}return d}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(h){if(!this._currentLink)return;const l=this._positionFromMouseEvent(h,this._element,this._mouseService);l&&this._mouseDownLink===this._currentLink&&this._linkAtPosition(this._currentLink.link,l)&&this._currentLink.link.activate(h,this._currentLink.link.text)}_clearCurrentLink(h,l){this._currentLink&&this._lastMouseEvent&&(!h||!l||this._currentLink.link.range.start.y>=h&&this._currentLink.link.range.end.y<=l)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,(0,y.disposeArray)(this._linkCacheDisposables))}_handleNewLink(h){if(!this._lastMouseEvent)return;const l=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);l&&this._linkAtPosition(h.link,l)&&(this._currentLink=h,this._currentLink.state={decorations:{underline:h.link.decorations===void 0||h.link.decorations.underline,pointerCursor:h.link.decorations===void 0||h.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,h.link,this._lastMouseEvent),h.link.decorations={},Object.defineProperties(h.link.decorations,{pointerCursor:{get:()=>{var d,w;return(w=(d=this._currentLink)==null?void 0:d.state)==null?void 0:w.decorations.pointerCursor},set:d=>{var w;(w=this._currentLink)!=null&&w.state&&this._currentLink.state.decorations.pointerCursor!==d&&(this._currentLink.state.decorations.pointerCursor=d,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",d))}},underline:{get:()=>{var d,w;return(w=(d=this._currentLink)==null?void 0:d.state)==null?void 0:w.decorations.underline},set:d=>{var w,k,C;(w=this._currentLink)!=null&&w.state&&((C=(k=this._currentLink)==null?void 0:k.state)==null?void 0:C.decorations.underline)!==d&&(this._currentLink.state.decorations.underline=d,this._currentLink.state.isHovered&&this._fireUnderlineEvent(h.link,d))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(d=>{if(!this._currentLink)return;const w=d.start===0?0:d.start+1+this._bufferService.buffer.ydisp,k=this._bufferService.buffer.ydisp+1+d.end;if(this._currentLink.link.range.start.y>=w&&this._currentLink.link.range.end.y<=k&&(this._clearCurrentLink(w,k),this._lastMouseEvent)){const C=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);C&&this._askForLink(C,!1)}})))}_linkHover(h,l,d){var w;(w=this._currentLink)!=null&&w.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(l,!0),this._currentLink.state.decorations.pointerCursor&&h.classList.add("xterm-cursor-pointer")),l.hover&&l.hover(d,l.text)}_fireUnderlineEvent(h,l){const d=h.range,w=this._bufferService.buffer.ydisp,k=this._createLinkUnderlineEvent(d.start.x-1,d.start.y-w-1,d.end.x,d.end.y-w-1,void 0);(l?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(k)}_linkLeave(h,l,d){var w;(w=this._currentLink)!=null&&w.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(l,!1),this._currentLink.state.decorations.pointerCursor&&h.classList.remove("xterm-cursor-pointer")),l.leave&&l.leave(d,l.text)}_linkAtPosition(h,l){const d=h.range.start.y*this._bufferService.cols+h.range.start.x,w=h.range.end.y*this._bufferService.cols+h.range.end.x,k=l.y*this._bufferService.cols+l.x;return d<=k&&k<=w}_positionFromMouseEvent(h,l,d){const w=d.getCoords(h,l,this._bufferService.cols,this._bufferService.rows);if(w)return{x:w[0],y:w[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(h,l,d,w,k){return{x1:h,y1:l,x2:d,y2:w,cols:this._bufferService.cols,fg:k}}};r.Linkifier=a=f([_(1,g.IMouseService),_(2,g.IRenderService),_(3,b.IBufferService),_(4,g.ILinkProviderService)],a)},9042:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.tooMuchOutput=r.promptLabel=void 0,r.promptLabel="Terminal input",r.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},3730:function(p,r,o){var f=this&&this.__decorate||function(g,a,h,l){var d,w=arguments.length,k=w<3?a:l===null?l=Object.getOwnPropertyDescriptor(a,h):l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(g,a,h,l);else for(var C=g.length-1;C>=0;C--)(d=g[C])&&(k=(w<3?d(k):w>3?d(a,h,k):d(a,h))||k);return w>3&&k&&Object.defineProperty(a,h,k),k},_=this&&this.__param||function(g,a){return function(h,l){a(h,l,g)}};Object.defineProperty(r,"__esModule",{value:!0}),r.OscLinkProvider=void 0;const c=o(511),m=o(2585);let y=r.OscLinkProvider=class{constructor(g,a,h){this._bufferService=g,this._optionsService=a,this._oscLinkService=h}provideLinks(g,a){var E;const h=this._bufferService.buffer.lines.get(g-1);if(!h)return void a(void 0);const l=[],d=this._optionsService.rawOptions.linkHandler,w=new c.CellData,k=h.getTrimmedLength();let C=-1,L=-1,x=!1;for(let R=0;R<k;R++)if(L!==-1||h.hasContent(R)){if(h.loadCell(R,w),w.hasExtendedAttrs()&&w.extended.urlId){if(L===-1){L=R,C=w.extended.urlId;continue}x=w.extended.urlId!==C}else L!==-1&&(x=!0);if(x||L!==-1&&R===k-1){const I=(E=this._oscLinkService.getLinkData(C))==null?void 0:E.uri;if(I){const T={start:{x:L+1,y:g},end:{x:R+(x||R!==k-1?0:1),y:g}};let A=!1;if(!(d!=null&&d.allowNonHttpProtocols))try{const O=new URL(I);["http:","https:"].includes(O.protocol)||(A=!0)}catch{A=!0}A||l.push({text:I,range:T,activate:(O,U)=>d?d.activate(O,U,T):b(0,U),hover:(O,U)=>{var $;return($=d==null?void 0:d.hover)==null?void 0:$.call(d,O,U,T)},leave:(O,U)=>{var $;return($=d==null?void 0:d.leave)==null?void 0:$.call(d,O,U,T)}})}x=!1,w.hasExtendedAttrs()&&w.extended.urlId?(L=R,C=w.extended.urlId):(L=-1,C=-1)}}a(l)}};function b(g,a){if(confirm(`Do you want to navigate to ${a}?
|
|
45
|
+
|
|
46
|
+
WARNING: This link could potentially be dangerous`)){const h=window.open();if(h){try{h.opener=null}catch{}h.location.href=a}else console.warn("Opening link blocked as opener could not be cleared")}}r.OscLinkProvider=y=f([_(0,m.IBufferService),_(1,m.IOptionsService),_(2,m.IOscLinkService)],y)},6193:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.RenderDebouncer=void 0,r.RenderDebouncer=class{constructor(o,f){this._renderCallback=o,this._coreBrowserService=f,this._refreshCallbacks=[]}dispose(){this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}addRefreshCallback(o){return this._refreshCallbacks.push(o),this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._innerRefresh())),this._animationFrame}refresh(o,f,_){this._rowCount=_,o=o!==void 0?o:0,f=f!==void 0?f:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,o):o,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 o=Math.max(this._rowStart,0),f=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(o,f),this._runRefreshCallbacks()}_runRefreshCallbacks(){for(const o of this._refreshCallbacks)o(0);this._refreshCallbacks=[]}}},3236:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Terminal=void 0;const f=o(3614),_=o(3656),c=o(3551),m=o(9042),y=o(3730),b=o(1680),g=o(3107),a=o(5744),h=o(2950),l=o(1296),d=o(428),w=o(4269),k=o(5114),C=o(8934),L=o(3230),x=o(9312),E=o(4725),R=o(6731),I=o(8055),T=o(8969),A=o(8460),O=o(844),U=o(6114),$=o(8437),V=o(2584),H=o(7399),S=o(5941),M=o(9074),B=o(2585),F=o(5435),G=o(4567),J=o(779);class se extends T.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(z={}){super(z),this.browser=U,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this.register(new O.MutableDisposable),this._onCursorMove=this.register(new A.EventEmitter),this.onCursorMove=this._onCursorMove.event,this._onKey=this.register(new A.EventEmitter),this.onKey=this._onKey.event,this._onRender=this.register(new A.EventEmitter),this.onRender=this._onRender.event,this._onSelectionChange=this.register(new A.EventEmitter),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this.register(new A.EventEmitter),this.onTitleChange=this._onTitleChange.event,this._onBell=this.register(new A.EventEmitter),this.onBell=this._onBell.event,this._onFocus=this.register(new A.EventEmitter),this._onBlur=this.register(new A.EventEmitter),this._onA11yCharEmitter=this.register(new A.EventEmitter),this._onA11yTabEmitter=this.register(new A.EventEmitter),this._onWillOpen=this.register(new A.EventEmitter),this._setup(),this._decorationService=this._instantiationService.createInstance(M.DecorationService),this._instantiationService.setService(B.IDecorationService,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(J.LinkProviderService),this._instantiationService.setService(E.ILinkProviderService,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(y.OscLinkProvider)),this.register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this.register(this._inputHandler.onRequestRefreshRows((P,Z)=>this.refresh(P,Z))),this.register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this.register(this._inputHandler.onRequestReset(()=>this.reset())),this.register(this._inputHandler.onRequestWindowsOptionsReport(P=>this._reportWindowsOptions(P))),this.register(this._inputHandler.onColor(P=>this._handleColorEvent(P))),this.register((0,A.forwardEvent)(this._inputHandler.onCursorMove,this._onCursorMove)),this.register((0,A.forwardEvent)(this._inputHandler.onTitleChange,this._onTitleChange)),this.register((0,A.forwardEvent)(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this.register((0,A.forwardEvent)(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this.register(this._bufferService.onResize(P=>this._afterResize(P.cols,P.rows))),this.register((0,O.toDisposable)(()=>{var P,Z;this._customKeyEventHandler=void 0,(Z=(P=this.element)==null?void 0:P.parentNode)==null||Z.removeChild(this.element)}))}_handleColorEvent(z){if(this._themeService)for(const P of z){let Z,K="";switch(P.index){case 256:Z="foreground",K="10";break;case 257:Z="background",K="11";break;case 258:Z="cursor",K="12";break;default:Z="ansi",K="4;"+P.index}switch(P.type){case 0:const ae=I.color.toColorRGB(Z==="ansi"?this._themeService.colors.ansi[P.index]:this._themeService.colors[Z]);this.coreService.triggerDataEvent(`${V.C0.ESC}]${K};${(0,S.toRgbString)(ae)}${V.C1_ESCAPED.ST}`);break;case 1:if(Z==="ansi")this._themeService.modifyColors(re=>re.ansi[P.index]=I.channels.toColor(...P.color));else{const re=Z;this._themeService.modifyColors(Se=>Se[re]=I.channels.toColor(...P.color))}break;case 2:this._themeService.restoreColor(P.index)}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(z){z?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(G.AccessibilityManager,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(z){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(V.C0.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){var z;return(z=this.textarea)==null?void 0:z.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(V.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 z=this.buffer.ybase+this.buffer.y,P=this.buffer.lines.get(z);if(!P)return;const Z=Math.min(this.buffer.x,this.cols-1),K=this._renderService.dimensions.css.cell.height,ae=P.getWidth(Z),re=this._renderService.dimensions.css.cell.width*ae,Se=this.buffer.y*this._renderService.dimensions.css.cell.height,we=Z*this._renderService.dimensions.css.cell.width;this.textarea.style.left=we+"px",this.textarea.style.top=Se+"px",this.textarea.style.width=re+"px",this.textarea.style.height=K+"px",this.textarea.style.lineHeight=K+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this.register((0,_.addDisposableDomListener)(this.element,"copy",P=>{this.hasSelection()&&(0,f.copyHandler)(P,this._selectionService)}));const z=P=>(0,f.handlePasteEvent)(P,this.textarea,this.coreService,this.optionsService);this.register((0,_.addDisposableDomListener)(this.textarea,"paste",z)),this.register((0,_.addDisposableDomListener)(this.element,"paste",z)),U.isFirefox?this.register((0,_.addDisposableDomListener)(this.element,"mousedown",P=>{P.button===2&&(0,f.rightClickHandler)(P,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this.register((0,_.addDisposableDomListener)(this.element,"contextmenu",P=>{(0,f.rightClickHandler)(P,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),U.isLinux&&this.register((0,_.addDisposableDomListener)(this.element,"auxclick",P=>{P.button===1&&(0,f.moveTextAreaUnderMouseCursor)(P,this.textarea,this.screenElement)}))}_bindKeys(){this.register((0,_.addDisposableDomListener)(this.textarea,"keyup",z=>this._keyUp(z),!0)),this.register((0,_.addDisposableDomListener)(this.textarea,"keydown",z=>this._keyDown(z),!0)),this.register((0,_.addDisposableDomListener)(this.textarea,"keypress",z=>this._keyPress(z),!0)),this.register((0,_.addDisposableDomListener)(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this.register((0,_.addDisposableDomListener)(this.textarea,"compositionupdate",z=>this._compositionHelper.compositionupdate(z))),this.register((0,_.addDisposableDomListener)(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this.register((0,_.addDisposableDomListener)(this.textarea,"input",z=>this._inputEvent(z),!0)),this.register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(z){var Z;if(!z)throw new Error("Terminal requires a parent element.");if(z.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=z.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"),z.appendChild(this.element);const P=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),P.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,_.addDisposableDomListener)(this.screenElement,"mousemove",K=>this.updateCursorStyle(K))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),P.appendChild(this.screenElement),this.textarea=this._document.createElement("textarea"),this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",m.promptLabel),U.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(k.CoreBrowserService,this.textarea,z.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(E.ICoreBrowserService,this._coreBrowserService),this.register((0,_.addDisposableDomListener)(this.textarea,"focus",K=>this._handleTextAreaFocus(K))),this.register((0,_.addDisposableDomListener)(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(d.CharSizeService,this._document,this._helperContainer),this._instantiationService.setService(E.ICharSizeService,this._charSizeService),this._themeService=this._instantiationService.createInstance(R.ThemeService),this._instantiationService.setService(E.IThemeService,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(w.CharacterJoinerService),this._instantiationService.setService(E.ICharacterJoinerService,this._characterJoinerService),this._renderService=this.register(this._instantiationService.createInstance(L.RenderService,this.rows,this.screenElement)),this._instantiationService.setService(E.IRenderService,this._renderService),this.register(this._renderService.onRenderedViewportChange(K=>this._onRender.fire(K))),this.onResize(K=>this._renderService.resize(K.cols,K.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(h.CompositionHelper,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(C.MouseService),this._instantiationService.setService(E.IMouseService,this._mouseService),this.linkifier=this.register(this._instantiationService.createInstance(c.Linkifier,this.screenElement)),this.element.appendChild(P);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this.viewport=this._instantiationService.createInstance(b.Viewport,this._viewportElement,this._viewportScrollArea),this.viewport.onRequestScrollLines(K=>this.scrollLines(K.amount,K.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(x.SelectionService,this.element,this.screenElement,this.linkifier)),this._instantiationService.setService(E.ISelectionService,this._selectionService),this.register(this._selectionService.onRequestScrollLines(K=>this.scrollLines(K.amount,K.suppressScrollEvent))),this.register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this.register(this._selectionService.onRequestRedraw(K=>this._renderService.handleSelectionChanged(K.start,K.end,K.columnSelectMode))),this.register(this._selectionService.onLinuxMouseSelection(K=>{this.textarea.value=K,this.textarea.focus(),this.textarea.select()})),this.register(this._onScroll.event(K=>{this.viewport.syncScrollArea(),this._selectionService.refresh()})),this.register((0,_.addDisposableDomListener)(this._viewportElement,"scroll",()=>this._selectionService.refresh())),this.register(this._instantiationService.createInstance(g.BufferDecorationRenderer,this.screenElement)),this.register((0,_.addDisposableDomListener)(this.element,"mousedown",K=>this._selectionService.handleMouseDown(K))),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(G.AccessibilityManager,this)),this.register(this.optionsService.onSpecificOptionChange("screenReaderMode",K=>this._handleScreenReaderModeOptionChange(K))),this.options.overviewRulerWidth&&(this._overviewRulerRenderer=this.register(this._instantiationService.createInstance(a.OverviewRulerRenderer,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRulerWidth",K=>{!this._overviewRulerRenderer&&K&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this.register(this._instantiationService.createInstance(a.OverviewRulerRenderer,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(l.DomRenderer,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){const z=this,P=this.element;function Z(re){const Se=z._mouseService.getMouseReportCoords(re,z.screenElement);if(!Se)return!1;let we,De;switch(re.overrideType||re.type){case"mousemove":De=32,re.buttons===void 0?(we=3,re.button!==void 0&&(we=re.button<3?re.button:3)):we=1&re.buttons?0:4&re.buttons?1:2&re.buttons?2:3;break;case"mouseup":De=0,we=re.button<3?re.button:3;break;case"mousedown":De=1,we=re.button<3?re.button:3;break;case"wheel":if(z._customWheelEventHandler&&z._customWheelEventHandler(re)===!1||z.viewport.getLinesScrolled(re)===0)return!1;De=re.deltaY<0?0:1,we=4;break;default:return!1}return!(De===void 0||we===void 0||we>4)&&z.coreMouseService.triggerMouseEvent({col:Se.col,row:Se.row,x:Se.x,y:Se.y,button:we,action:De,ctrl:re.ctrlKey,alt:re.altKey,shift:re.shiftKey})}const K={mouseup:null,wheel:null,mousedrag:null,mousemove:null},ae={mouseup:re=>(Z(re),re.buttons||(this._document.removeEventListener("mouseup",K.mouseup),K.mousedrag&&this._document.removeEventListener("mousemove",K.mousedrag)),this.cancel(re)),wheel:re=>(Z(re),this.cancel(re,!0)),mousedrag:re=>{re.buttons&&Z(re)},mousemove:re=>{re.buttons||Z(re)}};this.register(this.coreMouseService.onProtocolChange(re=>{re?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(re)),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&re?K.mousemove||(P.addEventListener("mousemove",ae.mousemove),K.mousemove=ae.mousemove):(P.removeEventListener("mousemove",K.mousemove),K.mousemove=null),16&re?K.wheel||(P.addEventListener("wheel",ae.wheel,{passive:!1}),K.wheel=ae.wheel):(P.removeEventListener("wheel",K.wheel),K.wheel=null),2&re?K.mouseup||(K.mouseup=ae.mouseup):(this._document.removeEventListener("mouseup",K.mouseup),K.mouseup=null),4&re?K.mousedrag||(K.mousedrag=ae.mousedrag):(this._document.removeEventListener("mousemove",K.mousedrag),K.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this.register((0,_.addDisposableDomListener)(P,"mousedown",re=>{if(re.preventDefault(),this.focus(),this.coreMouseService.areMouseEventsActive&&!this._selectionService.shouldForceSelection(re))return Z(re),K.mouseup&&this._document.addEventListener("mouseup",K.mouseup),K.mousedrag&&this._document.addEventListener("mousemove",K.mousedrag),this.cancel(re)})),this.register((0,_.addDisposableDomListener)(P,"wheel",re=>{if(!K.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(re)===!1)return!1;if(!this.buffer.hasScrollback){const Se=this.viewport.getLinesScrolled(re);if(Se===0)return;const we=V.C0.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(re.deltaY<0?"A":"B");let De="";for(let Ae=0;Ae<Math.abs(Se);Ae++)De+=we;return this.coreService.triggerDataEvent(De,!0),this.cancel(re,!0)}return this.viewport.handleWheel(re)?this.cancel(re):void 0}},{passive:!1})),this.register((0,_.addDisposableDomListener)(P,"touchstart",re=>{if(!this.coreMouseService.areMouseEventsActive)return this.viewport.handleTouchStart(re),this.cancel(re)},{passive:!0})),this.register((0,_.addDisposableDomListener)(P,"touchmove",re=>{if(!this.coreMouseService.areMouseEventsActive)return this.viewport.handleTouchMove(re)?void 0:this.cancel(re)},{passive:!1}))}refresh(z,P){var Z;(Z=this._renderService)==null||Z.refreshRows(z,P)}updateCursorStyle(z){var P;(P=this._selectionService)!=null&&P.shouldColumnSelect(z)?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(z,P,Z=0){var K;Z===1?(super.scrollLines(z,P,Z),this.refresh(0,this.rows-1)):(K=this.viewport)==null||K.scrollLines(z)}paste(z){(0,f.paste)(z,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(z){this._customKeyEventHandler=z}attachCustomWheelEventHandler(z){this._customWheelEventHandler=z}registerLinkProvider(z){return this._linkProviderService.registerLinkProvider(z)}registerCharacterJoiner(z){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");const P=this._characterJoinerService.register(z);return this.refresh(0,this.rows-1),P}deregisterCharacterJoiner(z){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(z)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(z){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+z)}registerDecoration(z){return this._decorationService.registerDecoration(z)}hasSelection(){return!!this._selectionService&&this._selectionService.hasSelection}select(z,P,Z){this._selectionService.setSelection(z,P,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 z;(z=this._selectionService)==null||z.clearSelection()}selectAll(){var z;(z=this._selectionService)==null||z.selectAll()}selectLines(z,P){var Z;(Z=this._selectionService)==null||Z.selectLines(z,P)}_keyDown(z){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(z)===!1)return!1;const P=this.browser.isMac&&this.options.macOptionIsMeta&&z.altKey;if(!P&&!this._compositionHelper.keydown(z))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(),!1;P||z.key!=="Dead"&&z.key!=="AltGraph"||(this._unprocessedDeadKey=!0);const Z=(0,H.evaluateKeyboardEvent)(z,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(z),Z.type===3||Z.type===2){const K=this.rows-1;return this.scrollLines(Z.type===2?-K:K),this.cancel(z,!0)}return Z.type===1&&this.selectAll(),!!this._isThirdLevelShift(this.browser,z)||(Z.cancel&&this.cancel(z,!0),!Z.key||!!(z.key&&!z.ctrlKey&&!z.altKey&&!z.metaKey&&z.key.length===1&&z.key.charCodeAt(0)>=65&&z.key.charCodeAt(0)<=90)||(this._unprocessedDeadKey?(this._unprocessedDeadKey=!1,!0):(Z.key!==V.C0.ETX&&Z.key!==V.C0.CR||(this.textarea.value=""),this._onKey.fire({key:Z.key,domEvent:z}),this._showCursor(),this.coreService.triggerDataEvent(Z.key,!0),!this.optionsService.rawOptions.screenReaderMode||z.altKey||z.ctrlKey?this.cancel(z,!0):void(this._keyDownHandled=!0))))}_isThirdLevelShift(z,P){const Z=z.isMac&&!this.options.macOptionIsMeta&&P.altKey&&!P.ctrlKey&&!P.metaKey||z.isWindows&&P.altKey&&P.ctrlKey&&!P.metaKey||z.isWindows&&P.getModifierState("AltGraph");return P.type==="keypress"?Z:Z&&(!P.keyCode||P.keyCode>47)}_keyUp(z){this._keyDownSeen=!1,this._customKeyEventHandler&&this._customKeyEventHandler(z)===!1||(function(P){return P.keyCode===16||P.keyCode===17||P.keyCode===18}(z)||this.focus(),this.updateCursorStyle(z),this._keyPressHandled=!1)}_keyPress(z){let P;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(z)===!1)return!1;if(this.cancel(z),z.charCode)P=z.charCode;else if(z.which===null||z.which===void 0)P=z.keyCode;else{if(z.which===0||z.charCode===0)return!1;P=z.which}return!(!P||(z.altKey||z.ctrlKey||z.metaKey)&&!this._isThirdLevelShift(this.browser,z)||(P=String.fromCharCode(P),this._onKey.fire({key:P,domEvent:z}),this._showCursor(),this.coreService.triggerDataEvent(P,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,0))}_inputEvent(z){if(z.data&&z.inputType==="insertText"&&(!z.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;const P=z.data;return this.coreService.triggerDataEvent(P,!0),this.cancel(z),!0}return!1}resize(z,P){z!==this.cols||P!==this.rows?super.resize(z,P):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()}_afterResize(z,P){var Z,K;(Z=this._charSizeService)==null||Z.measure(),(K=this.viewport)==null||K.syncScrollArea(!0)}clear(){var z;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 P=1;P<this.rows;P++)this.buffer.lines.push(this.buffer.getBlankLine($.DEFAULT_ATTR_DATA));this._onScroll.fire({position:this.buffer.ydisp,source:0}),(z=this.viewport)==null||z.reset(),this.refresh(0,this.rows-1)}}reset(){var P,Z;this.options.rows=this.rows,this.options.cols=this.cols;const z=this._customKeyEventHandler;this._setup(),super.reset(),(P=this._selectionService)==null||P.reset(),this._decorationService.reset(),(Z=this.viewport)==null||Z.reset(),this._customKeyEventHandler=z,this.refresh(0,this.rows-1)}clearTextureAtlas(){var z;(z=this._renderService)==null||z.clearTextureAtlas()}_reportFocus(){var z;(z=this.element)!=null&&z.classList.contains("focus")?this.coreService.triggerDataEvent(V.C0.ESC+"[I"):this.coreService.triggerDataEvent(V.C0.ESC+"[O")}_reportWindowsOptions(z){if(this._renderService)switch(z){case F.WindowsOptionsReportType.GET_WIN_SIZE_PIXELS:const P=this._renderService.dimensions.css.canvas.width.toFixed(0),Z=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${V.C0.ESC}[4;${Z};${P}t`);break;case F.WindowsOptionsReportType.GET_CELL_SIZE_PIXELS:const K=this._renderService.dimensions.css.cell.width.toFixed(0),ae=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${V.C0.ESC}[6;${ae};${K}t`)}}cancel(z,P){if(this.options.cancelEvents||P)return z.preventDefault(),z.stopPropagation(),!1}}r.Terminal=se},9924:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.TimeBasedDebouncer=void 0,r.TimeBasedDebouncer=class{constructor(o,f=1e3){this._renderCallback=o,this._debounceThresholdMS=f,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(o,f,_){this._rowCount=_,o=o!==void 0?o:0,f=f!==void 0?f:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,o):o,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,f):f;const c=Date.now();if(c-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=c,this._innerRefresh();else if(!this._additionalRefreshRequested){const m=c-this._lastRefreshMs,y=this._debounceThresholdMS-m;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=Date.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},y)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;const o=Math.max(this._rowStart,0),f=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(o,f)}}},1680:function(p,r,o){var f=this&&this.__decorate||function(h,l,d,w){var k,C=arguments.length,L=C<3?l:w===null?w=Object.getOwnPropertyDescriptor(l,d):w;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")L=Reflect.decorate(h,l,d,w);else for(var x=h.length-1;x>=0;x--)(k=h[x])&&(L=(C<3?k(L):C>3?k(l,d,L):k(l,d))||L);return C>3&&L&&Object.defineProperty(l,d,L),L},_=this&&this.__param||function(h,l){return function(d,w){l(d,w,h)}};Object.defineProperty(r,"__esModule",{value:!0}),r.Viewport=void 0;const c=o(3656),m=o(4725),y=o(8460),b=o(844),g=o(2585);let a=r.Viewport=class extends b.Disposable{constructor(h,l,d,w,k,C,L,x){super(),this._viewportElement=h,this._scrollArea=l,this._bufferService=d,this._optionsService=w,this._charSizeService=k,this._renderService=C,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 y.EventEmitter),this.onRequestScrollLines=this._onRequestScrollLines.event,this.scrollBarWidth=this._viewportElement.offsetWidth-this._scrollArea.offsetWidth||15,this.register((0,c.addDisposableDomListener)(this._viewportElement,"scroll",this._handleScroll.bind(this))),this._activeBuffer=this._bufferService.buffer,this.register(this._bufferService.buffers.onBufferActivate(E=>this._activeBuffer=E.activeBuffer)),this._renderDimensions=this._renderService.dimensions,this.register(this._renderService.onDimensionsChange(E=>this._renderDimensions=E)),this._handleThemeChange(x.colors),this.register(x.onChangeColors(E=>this._handleThemeChange(E))),this.register(this._optionsService.onSpecificOptionChange("scrollback",()=>this.syncScrollArea())),setTimeout(()=>this.syncScrollArea())}_handleThemeChange(h){this._viewportElement.style.backgroundColor=h.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(h){if(h)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 l=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderDimensions.css.canvas.height);this._lastRecordedBufferHeight!==l&&(this._lastRecordedBufferHeight=l,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}const h=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==h&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=h),this._refreshAnimationFrame=null}syncScrollArea(h=!1){if(this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(h);this._lastRecordedViewportHeight===this._renderService.dimensions.css.canvas.height&&this._lastScrollTop===this._activeBuffer.ydisp*this._currentRowHeight&&this._renderDimensions.device.cell.height===this._currentDeviceCellHeight||this._refresh(h)}_handleScroll(h){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 l=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._onRequestScrollLines.fire({amount:l,suppressScrollEvent:!0})}_smoothScroll(){if(this._isDisposed||this._smoothScrollState.origin===-1||this._smoothScrollState.target===-1)return;const h=this._smoothScrollPercent();this._viewportElement.scrollTop=this._smoothScrollState.origin+Math.round(h*(this._smoothScrollState.target-this._smoothScrollState.origin)),h<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(h,l){const d=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(l<0&&this._viewportElement.scrollTop!==0||l>0&&d<this._lastRecordedBufferHeight)||(h.cancelable&&h.preventDefault(),!1)}handleWheel(h){const l=this._getPixelsScrolled(h);return l!==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+l:this._smoothScrollState.target+=l,this._smoothScrollState.target=Math.max(Math.min(this._smoothScrollState.target,this._viewportElement.scrollHeight),0),this._smoothScroll()):this._clearSmoothScrollState()):this._viewportElement.scrollTop+=l,this._bubbleScroll(h,l))}scrollLines(h){if(h!==0)if(this._optionsService.rawOptions.smoothScrollDuration){const l=h*this._currentRowHeight;this._smoothScrollState.startTime=Date.now(),this._smoothScrollPercent()<1?(this._smoothScrollState.origin=this._viewportElement.scrollTop,this._smoothScrollState.target=this._smoothScrollState.origin+l,this._smoothScrollState.target=Math.max(Math.min(this._smoothScrollState.target,this._viewportElement.scrollHeight),0),this._smoothScroll()):this._clearSmoothScrollState()}else this._onRequestScrollLines.fire({amount:h,suppressScrollEvent:!1})}_getPixelsScrolled(h){if(h.deltaY===0||h.shiftKey)return 0;let l=this._applyScrollModifier(h.deltaY,h);return h.deltaMode===WheelEvent.DOM_DELTA_LINE?l*=this._currentRowHeight:h.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(l*=this._currentRowHeight*this._bufferService.rows),l}getBufferElements(h,l){var x;let d,w="";const k=[],C=l??this._bufferService.buffer.lines.length,L=this._bufferService.buffer.lines;for(let E=h;E<C;E++){const R=L.get(E);if(!R)continue;const I=(x=L.get(E+1))==null?void 0:x.isWrapped;if(w+=R.translateToString(!I),!I||E===L.length-1){const T=document.createElement("div");T.textContent=w,k.push(T),w.length>0&&(d=T),w=""}}return{bufferElements:k,cursorElement:d}}getLinesScrolled(h){if(h.deltaY===0||h.shiftKey)return 0;let l=this._applyScrollModifier(h.deltaY,h);return h.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(l/=this._currentRowHeight+0,this._wheelPartialScroll+=l,l=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):h.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(l*=this._bufferService.rows),l}_applyScrollModifier(h,l){const d=this._optionsService.rawOptions.fastScrollModifier;return d==="alt"&&l.altKey||d==="ctrl"&&l.ctrlKey||d==="shift"&&l.shiftKey?h*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:h*this._optionsService.rawOptions.scrollSensitivity}handleTouchStart(h){this._lastTouchY=h.touches[0].pageY}handleTouchMove(h){const l=this._lastTouchY-h.touches[0].pageY;return this._lastTouchY=h.touches[0].pageY,l!==0&&(this._viewportElement.scrollTop+=l,this._bubbleScroll(h,l))}};r.Viewport=a=f([_(2,g.IBufferService),_(3,g.IOptionsService),_(4,m.ICharSizeService),_(5,m.IRenderService),_(6,m.ICoreBrowserService),_(7,m.IThemeService)],a)},3107:function(p,r,o){var f=this&&this.__decorate||function(g,a,h,l){var d,w=arguments.length,k=w<3?a:l===null?l=Object.getOwnPropertyDescriptor(a,h):l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(g,a,h,l);else for(var C=g.length-1;C>=0;C--)(d=g[C])&&(k=(w<3?d(k):w>3?d(a,h,k):d(a,h))||k);return w>3&&k&&Object.defineProperty(a,h,k),k},_=this&&this.__param||function(g,a){return function(h,l){a(h,l,g)}};Object.defineProperty(r,"__esModule",{value:!0}),r.BufferDecorationRenderer=void 0;const c=o(4725),m=o(844),y=o(2585);let b=r.BufferDecorationRenderer=class extends m.Disposable{constructor(g,a,h,l,d){super(),this._screenElement=g,this._bufferService=a,this._coreBrowserService=h,this._decorationService=l,this._renderService=d,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(w=>this._removeDecoration(w))),this.register((0,m.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 g of this._decorationService.decorations)this._renderDecoration(g);this._dimensionsChanged=!1}_renderDecoration(g){this._refreshStyle(g),this._dimensionsChanged&&this._refreshXPosition(g)}_createElement(g){var l;const a=this._coreBrowserService.mainDocument.createElement("div");a.classList.add("xterm-decoration"),a.classList.toggle("xterm-decoration-top-layer",((l=g==null?void 0:g.options)==null?void 0:l.layer)==="top"),a.style.width=`${Math.round((g.options.width||1)*this._renderService.dimensions.css.cell.width)}px`,a.style.height=(g.options.height||1)*this._renderService.dimensions.css.cell.height+"px",a.style.top=(g.marker.line-this._bufferService.buffers.active.ydisp)*this._renderService.dimensions.css.cell.height+"px",a.style.lineHeight=`${this._renderService.dimensions.css.cell.height}px`;const h=g.options.x??0;return h&&h>this._bufferService.cols&&(a.style.display="none"),this._refreshXPosition(g,a),a}_refreshStyle(g){const a=g.marker.line-this._bufferService.buffers.active.ydisp;if(a<0||a>=this._bufferService.rows)g.element&&(g.element.style.display="none",g.onRenderEmitter.fire(g.element));else{let h=this._decorationElements.get(g);h||(h=this._createElement(g),g.element=h,this._decorationElements.set(g,h),this._container.appendChild(h),g.onDispose(()=>{this._decorationElements.delete(g),h.remove()})),h.style.top=a*this._renderService.dimensions.css.cell.height+"px",h.style.display=this._altBufferIsActive?"none":"block",g.onRenderEmitter.fire(h)}}_refreshXPosition(g,a=g.element){if(!a)return;const h=g.options.x??0;(g.options.anchor||"left")==="right"?a.style.right=h?h*this._renderService.dimensions.css.cell.width+"px":"":a.style.left=h?h*this._renderService.dimensions.css.cell.width+"px":""}_removeDecoration(g){var a;(a=this._decorationElements.get(g))==null||a.remove(),this._decorationElements.delete(g),g.dispose()}};r.BufferDecorationRenderer=b=f([_(1,y.IBufferService),_(2,c.ICoreBrowserService),_(3,y.IDecorationService),_(4,c.IRenderService)],b)},5871:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ColorZoneStore=void 0,r.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(o){if(o.options.overviewRulerOptions){for(const f of this._zones)if(f.color===o.options.overviewRulerOptions.color&&f.position===o.options.overviewRulerOptions.position){if(this._lineIntersectsZone(f,o.marker.line))return;if(this._lineAdjacentToZone(f,o.marker.line,o.options.overviewRulerOptions.position))return void this._addLineToZone(f,o.marker.line)}if(this._zonePoolIndex<this._zonePool.length)return this._zonePool[this._zonePoolIndex].color=o.options.overviewRulerOptions.color,this._zonePool[this._zonePoolIndex].position=o.options.overviewRulerOptions.position,this._zonePool[this._zonePoolIndex].startBufferLine=o.marker.line,this._zonePool[this._zonePoolIndex].endBufferLine=o.marker.line,void this._zones.push(this._zonePool[this._zonePoolIndex++]);this._zones.push({color:o.options.overviewRulerOptions.color,position:o.options.overviewRulerOptions.position,startBufferLine:o.marker.line,endBufferLine:o.marker.line}),this._zonePool.push(this._zones[this._zones.length-1]),this._zonePoolIndex++}}setPadding(o){this._linePadding=o}_lineIntersectsZone(o,f){return f>=o.startBufferLine&&f<=o.endBufferLine}_lineAdjacentToZone(o,f,_){return f>=o.startBufferLine-this._linePadding[_||"full"]&&f<=o.endBufferLine+this._linePadding[_||"full"]}_addLineToZone(o,f){o.startBufferLine=Math.min(o.startBufferLine,f),o.endBufferLine=Math.max(o.endBufferLine,f)}}},5744:function(p,r,o){var f=this&&this.__decorate||function(d,w,k,C){var L,x=arguments.length,E=x<3?w:C===null?C=Object.getOwnPropertyDescriptor(w,k):C;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")E=Reflect.decorate(d,w,k,C);else for(var R=d.length-1;R>=0;R--)(L=d[R])&&(E=(x<3?L(E):x>3?L(w,k,E):L(w,k))||E);return x>3&&E&&Object.defineProperty(w,k,E),E},_=this&&this.__param||function(d,w){return function(k,C){w(k,C,d)}};Object.defineProperty(r,"__esModule",{value:!0}),r.OverviewRulerRenderer=void 0;const c=o(5871),m=o(4725),y=o(844),b=o(2585),g={full:0,left:0,center:0,right:0},a={full:0,left:0,center:0,right:0},h={full:0,left:0,center:0,right:0};let l=r.OverviewRulerRenderer=class extends y.Disposable{get _width(){return this._optionsService.options.overviewRulerWidth||0}constructor(d,w,k,C,L,x,E){var I;super(),this._viewportElement=d,this._screenElement=w,this._bufferService=k,this._decorationService=C,this._renderService=L,this._optionsService=x,this._coreBrowserService=E,this._colorZoneStore=new c.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(),(I=this._viewportElement.parentElement)==null||I.insertBefore(this._canvas,this._viewportElement);const R=this._canvas.getContext("2d");if(!R)throw new Error("Ctx cannot be null");this._ctx=R,this._registerDecorationListeners(),this._registerBufferChangeListeners(),this._registerDimensionChangeListeners(),this.register((0,y.toDisposable)(()=>{var T;(T=this._canvas)==null||T.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 d=Math.floor(this._canvas.width/3),w=Math.ceil(this._canvas.width/3);a.full=this._canvas.width,a.left=d,a.center=w,a.right=d,this._refreshDrawHeightConstants(),h.full=0,h.left=0,h.center=a.left,h.right=a.left+a.center}_refreshDrawHeightConstants(){g.full=Math.round(2*this._coreBrowserService.dpr);const d=this._canvas.height/this._bufferService.buffer.lines.length,w=Math.round(Math.max(Math.min(d,12),6)*this._coreBrowserService.dpr);g.left=w,g.center=w,g.right=w}_refreshColorZonePadding(){this._colorZoneStore.setPadding({full:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*g.full),left:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*g.left),center:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*g.center),right:Math.floor(this._bufferService.buffers.active.lines.length/(this._canvas.height-1)*g.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 w of this._decorationService.decorations)this._colorZoneStore.addDecoration(w);this._ctx.lineWidth=1;const d=this._colorZoneStore.zones;for(const w of d)w.position!=="full"&&this._renderColorZone(w);for(const w of d)w.position==="full"&&this._renderColorZone(w);this._shouldUpdateDimensions=!1,this._shouldUpdateAnchor=!1}_renderColorZone(d){this._ctx.fillStyle=d.color,this._ctx.fillRect(h[d.position||"full"],Math.round((this._canvas.height-1)*(d.startBufferLine/this._bufferService.buffers.active.lines.length)-g[d.position||"full"]/2),a[d.position||"full"],Math.round((this._canvas.height-1)*((d.endBufferLine-d.startBufferLine)/this._bufferService.buffers.active.lines.length)+g[d.position||"full"]))}_queueRefresh(d,w){this._shouldUpdateDimensions=d||this._shouldUpdateDimensions,this._shouldUpdateAnchor=w||this._shouldUpdateAnchor,this._animationFrame===void 0&&(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._refreshDecorations(),this._animationFrame=void 0}))}};r.OverviewRulerRenderer=l=f([_(2,b.IBufferService),_(3,b.IDecorationService),_(4,m.IRenderService),_(5,b.IOptionsService),_(6,m.ICoreBrowserService)],l)},2950:function(p,r,o){var f=this&&this.__decorate||function(g,a,h,l){var d,w=arguments.length,k=w<3?a:l===null?l=Object.getOwnPropertyDescriptor(a,h):l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")k=Reflect.decorate(g,a,h,l);else for(var C=g.length-1;C>=0;C--)(d=g[C])&&(k=(w<3?d(k):w>3?d(a,h,k):d(a,h))||k);return w>3&&k&&Object.defineProperty(a,h,k),k},_=this&&this.__param||function(g,a){return function(h,l){a(h,l,g)}};Object.defineProperty(r,"__esModule",{value:!0}),r.CompositionHelper=void 0;const c=o(4725),m=o(2585),y=o(2584);let b=r.CompositionHelper=class{get isComposing(){return this._isComposing}constructor(g,a,h,l,d,w){this._textarea=g,this._compositionView=a,this._bufferService=h,this._optionsService=l,this._coreService=d,this._renderService=w,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(g){this._compositionView.textContent=g.data,this.updateCompositionElements(),setTimeout(()=>{this._compositionPosition.end=this._textarea.value.length},0)}compositionend(){this._finalizeComposition(!0)}keydown(g){if(this._isComposing||this._isSendingComposition){if(g.keyCode===229||g.keyCode===16||g.keyCode===17||g.keyCode===18)return!1;this._finalizeComposition(!1)}return g.keyCode!==229||(this._handleAnyTextareaChanges(),!1)}_finalizeComposition(g){if(this._compositionView.classList.remove("active"),this._isComposing=!1,g){const a={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout(()=>{if(this._isSendingComposition){let h;this._isSendingComposition=!1,a.start+=this._dataAlreadySent.length,h=this._isComposing?this._textarea.value.substring(a.start,a.end):this._textarea.value.substring(a.start),h.length>0&&this._coreService.triggerDataEvent(h,!0)}},0)}else{this._isSendingComposition=!1;const a=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(a,!0)}}_handleAnyTextareaChanges(){const g=this._textarea.value;setTimeout(()=>{if(!this._isComposing){const a=this._textarea.value,h=a.replace(g,"");this._dataAlreadySent=h,a.length>g.length?this._coreService.triggerDataEvent(h,!0):a.length<g.length?this._coreService.triggerDataEvent(`${y.C0.DEL}`,!0):a.length===g.length&&a!==g&&this._coreService.triggerDataEvent(a,!0)}},0)}updateCompositionElements(g){if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){const a=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),h=this._renderService.dimensions.css.cell.height,l=this._bufferService.buffer.y*this._renderService.dimensions.css.cell.height,d=a*this._renderService.dimensions.css.cell.width;this._compositionView.style.left=d+"px",this._compositionView.style.top=l+"px",this._compositionView.style.height=h+"px",this._compositionView.style.lineHeight=h+"px",this._compositionView.style.fontFamily=this._optionsService.rawOptions.fontFamily,this._compositionView.style.fontSize=this._optionsService.rawOptions.fontSize+"px";const w=this._compositionView.getBoundingClientRect();this._textarea.style.left=d+"px",this._textarea.style.top=l+"px",this._textarea.style.width=Math.max(w.width,1)+"px",this._textarea.style.height=Math.max(w.height,1)+"px",this._textarea.style.lineHeight=w.height+"px"}g||setTimeout(()=>this.updateCompositionElements(!0),0)}}};r.CompositionHelper=b=f([_(2,m.IBufferService),_(3,m.IOptionsService),_(4,m.ICoreService),_(5,c.IRenderService)],b)},9806:(p,r)=>{function o(f,_,c){const m=c.getBoundingClientRect(),y=f.getComputedStyle(c),b=parseInt(y.getPropertyValue("padding-left")),g=parseInt(y.getPropertyValue("padding-top"));return[_.clientX-m.left-b,_.clientY-m.top-g]}Object.defineProperty(r,"__esModule",{value:!0}),r.getCoords=r.getCoordsRelativeToElement=void 0,r.getCoordsRelativeToElement=o,r.getCoords=function(f,_,c,m,y,b,g,a,h){if(!b)return;const l=o(f,_,c);return l?(l[0]=Math.ceil((l[0]+(h?g/2:0))/g),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),m+(h?1:0)),l[1]=Math.min(Math.max(l[1],1),y),l):void 0}},9504:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.moveToCellSequence=void 0;const f=o(2584);function _(a,h,l,d){const w=a-c(a,l),k=h-c(h,l),C=Math.abs(w-k)-function(L,x,E){let R=0;const I=L-c(L,E),T=x-c(x,E);for(let A=0;A<Math.abs(I-T);A++){const O=m(L,x)==="A"?-1:1,U=E.buffer.lines.get(I+O*A);U!=null&&U.isWrapped&&R++}return R}(a,h,l);return g(C,b(m(a,h),d))}function c(a,h){let l=0,d=h.buffer.lines.get(a),w=d==null?void 0:d.isWrapped;for(;w&&a>=0&&a<h.rows;)l++,d=h.buffer.lines.get(--a),w=d==null?void 0:d.isWrapped;return l}function m(a,h){return a>h?"A":"B"}function y(a,h,l,d,w,k){let C=a,L=h,x="";for(;C!==l||L!==d;)C+=w?1:-1,w&&C>k.cols-1?(x+=k.buffer.translateBufferLineToString(L,!1,a,C),C=0,a=0,L++):!w&&C<0&&(x+=k.buffer.translateBufferLineToString(L,!1,0,a+1),C=k.cols-1,a=C,L--);return x+k.buffer.translateBufferLineToString(L,!1,a,C)}function b(a,h){const l=h?"O":"[";return f.C0.ESC+l+a}function g(a,h){a=Math.floor(a);let l="";for(let d=0;d<a;d++)l+=h;return l}r.moveToCellSequence=function(a,h,l,d){const w=l.buffer.x,k=l.buffer.y;if(!l.buffer.hasScrollback)return function(x,E,R,I,T,A){return _(E,I,T,A).length===0?"":g(y(x,E,x,E-c(E,T),!1,T).length,b("D",A))}(w,k,0,h,l,d)+_(k,h,l,d)+function(x,E,R,I,T,A){let O;O=_(E,I,T,A).length>0?I-c(I,T):E;const U=I,$=function(V,H,S,M,B,F){let G;return G=_(S,M,B,F).length>0?M-c(M,B):H,V<S&&G<=M||V>=S&&G<M?"C":"D"}(x,E,R,I,T,A);return g(y(x,O,R,U,$==="C",T).length,b($,A))}(w,k,a,h,l,d);let C;if(k===h)return C=w>a?"D":"C",g(Math.abs(w-a),b(C,d));C=k>h?"D":"C";const L=Math.abs(k-h);return g(function(x,E){return E.cols-x}(k>h?a:w,l)+(L-1)*l.cols+1+((k>h?w:a)-1),b(C,d))}},1296:function(p,r,o){var f=this&&this.__decorate||function(A,O,U,$){var V,H=arguments.length,S=H<3?O:$===null?$=Object.getOwnPropertyDescriptor(O,U):$;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")S=Reflect.decorate(A,O,U,$);else for(var M=A.length-1;M>=0;M--)(V=A[M])&&(S=(H<3?V(S):H>3?V(O,U,S):V(O,U))||S);return H>3&&S&&Object.defineProperty(O,U,S),S},_=this&&this.__param||function(A,O){return function(U,$){O(U,$,A)}};Object.defineProperty(r,"__esModule",{value:!0}),r.DomRenderer=void 0;const c=o(3787),m=o(2550),y=o(2223),b=o(6171),g=o(6052),a=o(4725),h=o(8055),l=o(8460),d=o(844),w=o(2585),k="xterm-dom-renderer-owner-",C="xterm-rows",L="xterm-fg-",x="xterm-bg-",E="xterm-focus",R="xterm-selection";let I=1,T=r.DomRenderer=class extends d.Disposable{constructor(A,O,U,$,V,H,S,M,B,F,G,J,se){super(),this._terminal=A,this._document=O,this._element=U,this._screenElement=$,this._viewportElement=V,this._helperContainer=H,this._linkifier2=S,this._charSizeService=B,this._optionsService=F,this._bufferService=G,this._coreBrowserService=J,this._themeService=se,this._terminalClass=I++,this._rowElements=[],this._selectionRenderModel=(0,g.createSelectionRenderModel)(),this.onRequestRedraw=this.register(new l.EventEmitter).event,this._rowContainer=this._document.createElement("div"),this._rowContainer.classList.add(C),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(R),this._selectionContainer.setAttribute("aria-hidden","true"),this.dimensions=(0,b.createRenderDimensions)(),this._updateDimensions(),this.register(this._optionsService.onOptionChange(()=>this._handleOptionsChanged())),this.register(this._themeService.onChangeColors(te=>this._injectCss(te))),this._injectCss(this._themeService.colors),this._rowFactory=M.createInstance(c.DomRendererRowFactory,document),this._element.classList.add(k+this._terminalClass),this._screenElement.appendChild(this._rowContainer),this._screenElement.appendChild(this._selectionContainer),this.register(this._linkifier2.onShowLinkUnderline(te=>this._handleLinkHover(te))),this.register(this._linkifier2.onHideLinkUnderline(te=>this._handleLinkLeave(te))),this.register((0,d.toDisposable)(()=>{this._element.classList.remove(k+this._terminalClass),this._rowContainer.remove(),this._selectionContainer.remove(),this._widthCache.dispose(),this._themeStyleElement.remove(),this._dimensionsStyleElement.remove()})),this._widthCache=new m.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 A=this._coreBrowserService.dpr;this.dimensions.device.char.width=this._charSizeService.width*A,this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*A),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/A),this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/A),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 U of this._rowElements)U.style.width=`${this.dimensions.css.canvas.width}px`,U.style.height=`${this.dimensions.css.cell.height}px`,U.style.lineHeight=`${this.dimensions.css.cell.height}px`,U.style.overflow="hidden";this._dimensionsStyleElement||(this._dimensionsStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._dimensionsStyleElement));const O=`${this._terminalSelector} .${C} span { display: inline-block; height: 100%; vertical-align: top;}`;this._dimensionsStyleElement.textContent=O,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(A){this._themeStyleElement||(this._themeStyleElement=this._document.createElement("style"),this._screenElement.appendChild(this._themeStyleElement));let O=`${this._terminalSelector} .${C} { color: ${A.foreground.css}; font-family: ${this._optionsService.rawOptions.fontFamily}; font-size: ${this._optionsService.rawOptions.fontSize}px; font-kerning: none; white-space: pre}`;O+=`${this._terminalSelector} .${C} .xterm-dim { color: ${h.color.multiplyOpacity(A.foreground,.5).css};}`,O+=`${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 U=`blink_underline_${this._terminalClass}`,$=`blink_bar_${this._terminalClass}`,V=`blink_block_${this._terminalClass}`;O+=`@keyframes ${U} { 50% { border-bottom-style: hidden; }}`,O+=`@keyframes ${$} { 50% { box-shadow: none; }}`,O+=`@keyframes ${V} { 0% { background-color: ${A.cursor.css}; color: ${A.cursorAccent.css}; } 50% { background-color: inherit; color: ${A.cursor.css}; }}`,O+=`${this._terminalSelector} .${C}.${E} .xterm-cursor.xterm-cursor-blink.xterm-cursor-underline { animation: ${U} 1s step-end infinite;}${this._terminalSelector} .${C}.${E} .xterm-cursor.xterm-cursor-blink.xterm-cursor-bar { animation: ${$} 1s step-end infinite;}${this._terminalSelector} .${C}.${E} .xterm-cursor.xterm-cursor-blink.xterm-cursor-block { animation: ${V} 1s step-end infinite;}${this._terminalSelector} .${C} .xterm-cursor.xterm-cursor-block { background-color: ${A.cursor.css}; color: ${A.cursorAccent.css};}${this._terminalSelector} .${C} .xterm-cursor.xterm-cursor-block:not(.xterm-cursor-blink) { background-color: ${A.cursor.css} !important; color: ${A.cursorAccent.css} !important;}${this._terminalSelector} .${C} .xterm-cursor.xterm-cursor-outline { outline: 1px solid ${A.cursor.css}; outline-offset: -1px;}${this._terminalSelector} .${C} .xterm-cursor.xterm-cursor-bar { box-shadow: ${this._optionsService.rawOptions.cursorWidth}px 0 0 ${A.cursor.css} inset;}${this._terminalSelector} .${C} .xterm-cursor.xterm-cursor-underline { border-bottom: 1px ${A.cursor.css}; border-bottom-style: solid; height: calc(100% - 1px);}`,O+=`${this._terminalSelector} .${R} { position: absolute; top: 0; left: 0; z-index: 1; pointer-events: none;}${this._terminalSelector}.focus .${R} div { position: absolute; background-color: ${A.selectionBackgroundOpaque.css};}${this._terminalSelector} .${R} div { position: absolute; background-color: ${A.selectionInactiveBackgroundOpaque.css};}`;for(const[H,S]of A.ansi.entries())O+=`${this._terminalSelector} .${L}${H} { color: ${S.css}; }${this._terminalSelector} .${L}${H}.xterm-dim { color: ${h.color.multiplyOpacity(S,.5).css}; }${this._terminalSelector} .${x}${H} { background-color: ${S.css}; }`;O+=`${this._terminalSelector} .${L}${y.INVERTED_DEFAULT_COLOR} { color: ${h.color.opaque(A.background).css}; }${this._terminalSelector} .${L}${y.INVERTED_DEFAULT_COLOR}.xterm-dim { color: ${h.color.multiplyOpacity(h.color.opaque(A.background),.5).css}; }${this._terminalSelector} .${x}${y.INVERTED_DEFAULT_COLOR} { background-color: ${A.foreground.css}; }`,this._themeStyleElement.textContent=O}_setDefaultSpacing(){const A=this.dimensions.css.cell.width-this._widthCache.get("W",!1,!1);this._rowContainer.style.letterSpacing=`${A}px`,this._rowFactory.defaultSpacing=A}handleDevicePixelRatioChange(){this._updateDimensions(),this._widthCache.clear(),this._setDefaultSpacing()}_refreshRowElements(A,O){for(let U=this._rowElements.length;U<=O;U++){const $=this._document.createElement("div");this._rowContainer.appendChild($),this._rowElements.push($)}for(;this._rowElements.length>O;)this._rowContainer.removeChild(this._rowElements.pop())}handleResize(A,O){this._refreshRowElements(A,O),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(E),this.renderRows(0,this._bufferService.rows-1)}handleFocus(){this._rowContainer.classList.add(E),this.renderRows(this._bufferService.buffer.y,this._bufferService.buffer.y)}handleSelectionChanged(A,O,U){if(this._selectionContainer.replaceChildren(),this._rowFactory.handleSelectionChanged(A,O,U),this.renderRows(0,this._bufferService.rows-1),!A||!O)return;this._selectionRenderModel.update(this._terminal,A,O,U);const $=this._selectionRenderModel.viewportStartRow,V=this._selectionRenderModel.viewportEndRow,H=this._selectionRenderModel.viewportCappedStartRow,S=this._selectionRenderModel.viewportCappedEndRow;if(H>=this._bufferService.rows||S<0)return;const M=this._document.createDocumentFragment();if(U){const B=A[0]>O[0];M.appendChild(this._createSelectionElement(H,B?O[0]:A[0],B?A[0]:O[0],S-H+1))}else{const B=$===H?A[0]:0,F=H===V?O[0]:this._bufferService.cols;M.appendChild(this._createSelectionElement(H,B,F));const G=S-H-1;if(M.appendChild(this._createSelectionElement(H+1,0,this._bufferService.cols,G)),H!==S){const J=V===S?O[0]:this._bufferService.cols;M.appendChild(this._createSelectionElement(S,0,J))}}this._selectionContainer.appendChild(M)}_createSelectionElement(A,O,U,$=1){const V=this._document.createElement("div"),H=O*this.dimensions.css.cell.width;let S=this.dimensions.css.cell.width*(U-O);return H+S>this.dimensions.css.canvas.width&&(S=this.dimensions.css.canvas.width-H),V.style.height=$*this.dimensions.css.cell.height+"px",V.style.top=A*this.dimensions.css.cell.height+"px",V.style.left=`${H}px`,V.style.width=`${S}px`,V}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 A of this._rowElements)A.replaceChildren()}renderRows(A,O){const U=this._bufferService.buffer,$=U.ybase+U.y,V=Math.min(U.x,this._bufferService.cols-1),H=this._optionsService.rawOptions.cursorBlink,S=this._optionsService.rawOptions.cursorStyle,M=this._optionsService.rawOptions.cursorInactiveStyle;for(let B=A;B<=O;B++){const F=B+U.ydisp,G=this._rowElements[B],J=U.lines.get(F);if(!G||!J)break;G.replaceChildren(...this._rowFactory.createRow(J,F,F===$,S,M,V,H,this.dimensions.css.cell.width,this._widthCache,-1,-1))}}get _terminalSelector(){return`.${k}${this._terminalClass}`}_handleLinkHover(A){this._setCellUnderline(A.x1,A.x2,A.y1,A.y2,A.cols,!0)}_handleLinkLeave(A){this._setCellUnderline(A.x1,A.x2,A.y1,A.y2,A.cols,!1)}_setCellUnderline(A,O,U,$,V,H){U<0&&(A=0),$<0&&(O=0);const S=this._bufferService.rows-1;U=Math.max(Math.min(U,S),0),$=Math.max(Math.min($,S),0),V=Math.min(V,this._bufferService.cols);const M=this._bufferService.buffer,B=M.ybase+M.y,F=Math.min(M.x,V-1),G=this._optionsService.rawOptions.cursorBlink,J=this._optionsService.rawOptions.cursorStyle,se=this._optionsService.rawOptions.cursorInactiveStyle;for(let te=U;te<=$;++te){const z=te+M.ydisp,P=this._rowElements[te],Z=M.lines.get(z);if(!P||!Z)break;P.replaceChildren(...this._rowFactory.createRow(Z,z,z===B,J,se,F,G,this.dimensions.css.cell.width,this._widthCache,H?te===U?A:0:-1,H?(te===$?O:V)-1:-1))}}};r.DomRenderer=T=f([_(7,w.IInstantiationService),_(8,a.ICharSizeService),_(9,w.IOptionsService),_(10,w.IBufferService),_(11,a.ICoreBrowserService),_(12,a.IThemeService)],T)},3787:function(p,r,o){var f=this&&this.__decorate||function(C,L,x,E){var R,I=arguments.length,T=I<3?L:E===null?E=Object.getOwnPropertyDescriptor(L,x):E;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")T=Reflect.decorate(C,L,x,E);else for(var A=C.length-1;A>=0;A--)(R=C[A])&&(T=(I<3?R(T):I>3?R(L,x,T):R(L,x))||T);return I>3&&T&&Object.defineProperty(L,x,T),T},_=this&&this.__param||function(C,L){return function(x,E){L(x,E,C)}};Object.defineProperty(r,"__esModule",{value:!0}),r.DomRendererRowFactory=void 0;const c=o(2223),m=o(643),y=o(511),b=o(2585),g=o(8055),a=o(4725),h=o(4269),l=o(6171),d=o(3734);let w=r.DomRendererRowFactory=class{constructor(C,L,x,E,R,I,T){this._document=C,this._characterJoinerService=L,this._optionsService=x,this._coreBrowserService=E,this._coreService=R,this._decorationService=I,this._themeService=T,this._workCell=new y.CellData,this._columnSelectMode=!1,this.defaultSpacing=0}handleSelectionChanged(C,L,x){this._selectionStart=C,this._selectionEnd=L,this._columnSelectMode=x}createRow(C,L,x,E,R,I,T,A,O,U,$){const V=[],H=this._characterJoinerService.getJoinedCharacters(L),S=this._themeService.colors;let M,B=C.getNoBgTrimmedLength();x&&B<I+1&&(B=I+1);let F=0,G="",J=0,se=0,te=0,z=!1,P=0,Z=!1,K=0;const ae=[],re=U!==-1&&$!==-1;for(let Se=0;Se<B;Se++){C.loadCell(Se,this._workCell);let we=this._workCell.getWidth();if(we===0)continue;let De=!1,Ae=Se,pe=this._workCell;if(H.length>0&&Se===H[0][0]){De=!0;const Ee=H.shift();pe=new h.JoinedCellData(this._workCell,C.translateToString(!0,Ee[0],Ee[1]),Ee[1]-Ee[0]),Ae=Ee[1]-1,we=pe.getWidth()}const He=this._isCellInSelection(Se,L),Ve=x&&Se===I,ce=re&&Se>=U&&Se<=$;let fe=!1;this._decorationService.forEachDecorationAtCell(Se,L,void 0,Ee=>{fe=!0});let Ce=pe.getChars()||m.WHITESPACE_CELL_CHAR;if(Ce===" "&&(pe.isUnderline()||pe.isOverline())&&(Ce=" "),K=we*A-O.get(Ce,pe.isBold(),pe.isItalic()),M){if(F&&(He&&Z||!He&&!Z&&pe.bg===J)&&(He&&Z&&S.selectionForeground||pe.fg===se)&&pe.extended.ext===te&&ce===z&&K===P&&!Ve&&!De&&!fe){pe.isInvisible()?G+=m.WHITESPACE_CELL_CHAR:G+=Ce,F++;continue}F&&(M.textContent=G),M=this._document.createElement("span"),F=0,G=""}else M=this._document.createElement("span");if(J=pe.bg,se=pe.fg,te=pe.extended.ext,z=ce,P=K,Z=He,De&&I>=Se&&I<=Ae&&(I=Se),!this._coreService.isCursorHidden&&Ve&&this._coreService.isCursorInitialized){if(ae.push("xterm-cursor"),this._coreBrowserService.isFocused)T&&ae.push("xterm-cursor-blink"),ae.push(E==="bar"?"xterm-cursor-bar":E==="underline"?"xterm-cursor-underline":"xterm-cursor-block");else if(R)switch(R){case"outline":ae.push("xterm-cursor-outline");break;case"block":ae.push("xterm-cursor-block");break;case"bar":ae.push("xterm-cursor-bar");break;case"underline":ae.push("xterm-cursor-underline")}}if(pe.isBold()&&ae.push("xterm-bold"),pe.isItalic()&&ae.push("xterm-italic"),pe.isDim()&&ae.push("xterm-dim"),G=pe.isInvisible()?m.WHITESPACE_CELL_CHAR:pe.getChars()||m.WHITESPACE_CELL_CHAR,pe.isUnderline()&&(ae.push(`xterm-underline-${pe.extended.underlineStyle}`),G===" "&&(G=" "),!pe.isUnderlineColorDefault()))if(pe.isUnderlineColorRGB())M.style.textDecorationColor=`rgb(${d.AttributeData.toColorRGB(pe.getUnderlineColor()).join(",")})`;else{let Ee=pe.getUnderlineColor();this._optionsService.rawOptions.drawBoldTextInBrightColors&&pe.isBold()&&Ee<8&&(Ee+=8),M.style.textDecorationColor=S.ansi[Ee].css}pe.isOverline()&&(ae.push("xterm-overline"),G===" "&&(G=" ")),pe.isStrikethrough()&&ae.push("xterm-strikethrough"),ce&&(M.style.textDecoration="underline");let de=pe.getFgColor(),q=pe.getFgColorMode(),ge=pe.getBgColor(),be=pe.getBgColorMode();const Oe=!!pe.isInverse();if(Oe){const Ee=de;de=ge,ge=Ee;const qe=q;q=be,be=qe}let ie,he,ye,Re=!1;switch(this._decorationService.forEachDecorationAtCell(Se,L,void 0,Ee=>{Ee.options.layer!=="top"&&Re||(Ee.backgroundColorRGB&&(be=50331648,ge=Ee.backgroundColorRGB.rgba>>8&16777215,ie=Ee.backgroundColorRGB),Ee.foregroundColorRGB&&(q=50331648,de=Ee.foregroundColorRGB.rgba>>8&16777215,he=Ee.foregroundColorRGB),Re=Ee.options.layer==="top")}),!Re&&He&&(ie=this._coreBrowserService.isFocused?S.selectionBackgroundOpaque:S.selectionInactiveBackgroundOpaque,ge=ie.rgba>>8&16777215,be=50331648,Re=!0,S.selectionForeground&&(q=50331648,de=S.selectionForeground.rgba>>8&16777215,he=S.selectionForeground)),Re&&ae.push("xterm-decoration-top"),be){case 16777216:case 33554432:ye=S.ansi[ge],ae.push(`xterm-bg-${ge}`);break;case 50331648:ye=g.channels.toColor(ge>>16,ge>>8&255,255&ge),this._addStyle(M,`background-color:#${k((ge>>>0).toString(16),"0",6)}`);break;default:Oe?(ye=S.foreground,ae.push(`xterm-bg-${c.INVERTED_DEFAULT_COLOR}`)):ye=S.background}switch(ie||pe.isDim()&&(ie=g.color.multiplyOpacity(ye,.5)),q){case 16777216:case 33554432:pe.isBold()&&de<8&&this._optionsService.rawOptions.drawBoldTextInBrightColors&&(de+=8),this._applyMinimumContrast(M,ye,S.ansi[de],pe,ie,void 0)||ae.push(`xterm-fg-${de}`);break;case 50331648:const Ee=g.channels.toColor(de>>16&255,de>>8&255,255&de);this._applyMinimumContrast(M,ye,Ee,pe,ie,he)||this._addStyle(M,`color:#${k(de.toString(16),"0",6)}`);break;default:this._applyMinimumContrast(M,ye,S.foreground,pe,ie,he)||Oe&&ae.push(`xterm-fg-${c.INVERTED_DEFAULT_COLOR}`)}ae.length&&(M.className=ae.join(" "),ae.length=0),Ve||De||fe?M.textContent=G:F++,K!==this.defaultSpacing&&(M.style.letterSpacing=`${K}px`),V.push(M),Se=Ae}return M&&F&&(M.textContent=G),V}_applyMinimumContrast(C,L,x,E,R,I){if(this._optionsService.rawOptions.minimumContrastRatio===1||(0,l.treatGlyphAsBackgroundColor)(E.getCode()))return!1;const T=this._getContrastCache(E);let A;if(R||I||(A=T.getColor(L.rgba,x.rgba)),A===void 0){const O=this._optionsService.rawOptions.minimumContrastRatio/(E.isDim()?2:1);A=g.color.ensureContrastRatio(R||L,I||x,O),T.setColor((R||L).rgba,(I||x).rgba,A??null)}return!!A&&(this._addStyle(C,`color:${A.css}`),!0)}_getContrastCache(C){return C.isDim()?this._themeService.colors.halfContrastCache:this._themeService.colors.contrastCache}_addStyle(C,L){C.setAttribute("style",`${C.getAttribute("style")||""}${L};`)}_isCellInSelection(C,L){const x=this._selectionStart,E=this._selectionEnd;return!(!x||!E)&&(this._columnSelectMode?x[0]<=E[0]?C>=x[0]&&L>=x[1]&&C<E[0]&&L<=E[1]:C<x[0]&&L>=x[1]&&C>=E[0]&&L<=E[1]:L>x[1]&&L<E[1]||x[1]===E[1]&&L===x[1]&&C>=x[0]&&C<E[0]||x[1]<E[1]&&L===E[1]&&C<E[0]||x[1]<E[1]&&L===x[1]&&C>=x[0])}};function k(C,L,x){for(;C.length<x;)C=L+C;return C}r.DomRendererRowFactory=w=f([_(1,a.ICharacterJoinerService),_(2,b.IOptionsService),_(3,a.ICoreBrowserService),_(4,b.ICoreService),_(5,b.IDecorationService),_(6,a.IThemeService)],w)},2550:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.WidthCache=void 0,r.WidthCache=class{constructor(o,f){this._flat=new Float32Array(256),this._font="",this._fontSize=0,this._weight="normal",this._weightBold="bold",this._measureElements=[],this._container=o.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 _=o.createElement("span");_.classList.add("xterm-char-measure-element");const c=o.createElement("span");c.classList.add("xterm-char-measure-element"),c.style.fontWeight="bold";const m=o.createElement("span");m.classList.add("xterm-char-measure-element"),m.style.fontStyle="italic";const y=o.createElement("span");y.classList.add("xterm-char-measure-element"),y.style.fontWeight="bold",y.style.fontStyle="italic",this._measureElements=[_,c,m,y],this._container.appendChild(_),this._container.appendChild(c),this._container.appendChild(m),this._container.appendChild(y),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(o,f,_,c){o===this._font&&f===this._fontSize&&_===this._weight&&c===this._weightBold||(this._font=o,this._fontSize=f,this._weight=_,this._weightBold=c,this._container.style.fontFamily=this._font,this._container.style.fontSize=`${this._fontSize}px`,this._measureElements[0].style.fontWeight=`${_}`,this._measureElements[1].style.fontWeight=`${c}`,this._measureElements[2].style.fontWeight=`${_}`,this._measureElements[3].style.fontWeight=`${c}`,this.clear())}get(o,f,_){let c=0;if(!f&&!_&&o.length===1&&(c=o.charCodeAt(0))<256){if(this._flat[c]!==-9999)return this._flat[c];const b=this._measure(o,0);return b>0&&(this._flat[c]=b),b}let m=o;f&&(m+="B"),_&&(m+="I");let y=this._holey.get(m);if(y===void 0){let b=0;f&&(b|=1),_&&(b|=2),y=this._measure(o,b),y>0&&this._holey.set(m,y)}return y}_measure(o,f){const _=this._measureElements[f];return _.textContent=o.repeat(32),_.offsetWidth/32}}},2223:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.TEXT_BASELINE=r.DIM_OPACITY=r.INVERTED_DEFAULT_COLOR=void 0;const f=o(6114);r.INVERTED_DEFAULT_COLOR=257,r.DIM_OPACITY=.5,r.TEXT_BASELINE=f.isFirefox||f.isLegacyEdge?"bottom":"ideographic"},6171:(p,r)=>{function o(_){return 57508<=_&&_<=57558}function f(_){return _>=128512&&_<=128591||_>=127744&&_<=128511||_>=128640&&_<=128767||_>=9728&&_<=9983||_>=9984&&_<=10175||_>=65024&&_<=65039||_>=129280&&_<=129535||_>=127462&&_<=127487}Object.defineProperty(r,"__esModule",{value:!0}),r.computeNextVariantOffset=r.createRenderDimensions=r.treatGlyphAsBackgroundColor=r.allowRescaling=r.isEmoji=r.isRestrictedPowerlineGlyph=r.isPowerlineGlyph=r.throwIfFalsy=void 0,r.throwIfFalsy=function(_){if(!_)throw new Error("value must not be falsy");return _},r.isPowerlineGlyph=o,r.isRestrictedPowerlineGlyph=function(_){return 57520<=_&&_<=57527},r.isEmoji=f,r.allowRescaling=function(_,c,m,y){return c===1&&m>Math.ceil(1.5*y)&&_!==void 0&&_>255&&!f(_)&&!o(_)&&!function(b){return 57344<=b&&b<=63743}(_)},r.treatGlyphAsBackgroundColor=function(_){return o(_)||function(c){return 9472<=c&&c<=9631}(_)},r.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}}}},r.computeNextVariantOffset=function(_,c,m=0){return(_-(2*Math.round(c)-m))%(2*Math.round(c))}},6052:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.createSelectionRenderModel=void 0;class o{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(_,c,m,y=!1){if(this.selectionStart=c,this.selectionEnd=m,!c||!m||c[0]===m[0]&&c[1]===m[1])return void this.clear();const b=_.buffers.active.ydisp,g=c[1]-b,a=m[1]-b,h=Math.max(g,0),l=Math.min(a,_.rows-1);h>=_.rows||l<0?this.clear():(this.hasSelection=!0,this.columnSelectMode=y,this.viewportStartRow=g,this.viewportEndRow=a,this.viewportCappedStartRow=h,this.viewportCappedEndRow=l,this.startCol=c[0],this.endCol=m[0])}isCellSelected(_,c,m){return!!this.hasSelection&&(m-=_.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?c>=this.startCol&&m>=this.viewportCappedStartRow&&c<this.endCol&&m<=this.viewportCappedEndRow:c<this.startCol&&m>=this.viewportCappedStartRow&&c>=this.endCol&&m<=this.viewportCappedEndRow:m>this.viewportStartRow&&m<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&m===this.viewportStartRow&&c>=this.startCol&&c<this.endCol||this.viewportStartRow<this.viewportEndRow&&m===this.viewportEndRow&&c<this.endCol||this.viewportStartRow<this.viewportEndRow&&m===this.viewportStartRow&&c>=this.startCol)}}r.createSelectionRenderModel=function(){return new o}},456:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.SelectionModel=void 0,r.SelectionModel=class{constructor(o){this._bufferService=o,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 o=this.selectionStart[0]+this.selectionStartLength;return o>this._bufferService.cols?o%this._bufferService.cols==0?[this._bufferService.cols,this.selectionStart[1]+Math.floor(o/this._bufferService.cols)-1]:[o%this._bufferService.cols,this.selectionStart[1]+Math.floor(o/this._bufferService.cols)]:[o,this.selectionStart[1]]}if(this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]){const o=this.selectionStart[0]+this.selectionStartLength;return o>this._bufferService.cols?[o%this._bufferService.cols,this.selectionStart[1]+Math.floor(o/this._bufferService.cols)]:[Math.max(o,this.selectionEnd[0]),this.selectionEnd[1]]}return this.selectionEnd}}areSelectionValuesReversed(){const o=this.selectionStart,f=this.selectionEnd;return!(!o||!f)&&(o[1]>f[1]||o[1]===f[1]&&o[0]>f[0])}handleTrim(o){return this.selectionStart&&(this.selectionStart[1]-=o),this.selectionEnd&&(this.selectionEnd[1]-=o),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)}}},428:function(p,r,o){var f=this&&this.__decorate||function(l,d,w,k){var C,L=arguments.length,x=L<3?d:k===null?k=Object.getOwnPropertyDescriptor(d,w):k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(l,d,w,k);else for(var E=l.length-1;E>=0;E--)(C=l[E])&&(x=(L<3?C(x):L>3?C(d,w,x):C(d,w))||x);return L>3&&x&&Object.defineProperty(d,w,x),x},_=this&&this.__param||function(l,d){return function(w,k){d(w,k,l)}};Object.defineProperty(r,"__esModule",{value:!0}),r.CharSizeService=void 0;const c=o(2585),m=o(8460),y=o(844);let b=r.CharSizeService=class extends y.Disposable{get hasValidSize(){return this.width>0&&this.height>0}constructor(l,d,w){super(),this._optionsService=w,this.width=0,this.height=0,this._onCharSizeChange=this.register(new m.EventEmitter),this.onCharSizeChange=this._onCharSizeChange.event;try{this._measureStrategy=this.register(new h(this._optionsService))}catch{this._measureStrategy=this.register(new a(l,d,this._optionsService))}this.register(this._optionsService.onMultipleOptionChange(["fontFamily","fontSize"],()=>this.measure()))}measure(){const l=this._measureStrategy.measure();l.width===this.width&&l.height===this.height||(this.width=l.width,this.height=l.height,this._onCharSizeChange.fire())}};r.CharSizeService=b=f([_(2,c.IOptionsService)],b);class g extends y.Disposable{constructor(){super(...arguments),this._result={width:0,height:0}}_validateAndSet(d,w){d!==void 0&&d>0&&w!==void 0&&w>0&&(this._result.width=d,this._result.height=w)}}class a extends g{constructor(d,w,k){super(),this._document=d,this._parentElement=w,this._optionsService=k,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 h extends g{constructor(d){super(),this._optionsService=d,this._canvas=new OffscreenCanvas(100,100),this._ctx=this._canvas.getContext("2d");const w=this._ctx.measureText("W");if(!("width"in w&&"fontBoundingBoxAscent"in w&&"fontBoundingBoxDescent"in w))throw new Error("Required font metrics not supported")}measure(){this._ctx.font=`${this._optionsService.rawOptions.fontSize}px ${this._optionsService.rawOptions.fontFamily}`;const d=this._ctx.measureText("W");return this._validateAndSet(d.width,d.fontBoundingBoxAscent+d.fontBoundingBoxDescent),this._result}}},4269:function(p,r,o){var f=this&&this.__decorate||function(h,l,d,w){var k,C=arguments.length,L=C<3?l:w===null?w=Object.getOwnPropertyDescriptor(l,d):w;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")L=Reflect.decorate(h,l,d,w);else for(var x=h.length-1;x>=0;x--)(k=h[x])&&(L=(C<3?k(L):C>3?k(l,d,L):k(l,d))||L);return C>3&&L&&Object.defineProperty(l,d,L),L},_=this&&this.__param||function(h,l){return function(d,w){l(d,w,h)}};Object.defineProperty(r,"__esModule",{value:!0}),r.CharacterJoinerService=r.JoinedCellData=void 0;const c=o(3734),m=o(643),y=o(511),b=o(2585);class g extends c.AttributeData{constructor(l,d,w){super(),this.content=0,this.combinedData="",this.fg=l.fg,this.bg=l.bg,this.combinedData=d,this._width=w}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(l){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}r.JoinedCellData=g;let a=r.CharacterJoinerService=class e_{constructor(l){this._bufferService=l,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new y.CellData}register(l){const d={id:this._nextCharacterJoinerId++,handler:l};return this._characterJoiners.push(d),d.id}deregister(l){for(let d=0;d<this._characterJoiners.length;d++)if(this._characterJoiners[d].id===l)return this._characterJoiners.splice(d,1),!0;return!1}getJoinedCharacters(l){if(this._characterJoiners.length===0)return[];const d=this._bufferService.buffer.lines.get(l);if(!d||d.length===0)return[];const w=[],k=d.translateToString(!0);let C=0,L=0,x=0,E=d.getFg(0),R=d.getBg(0);for(let I=0;I<d.getTrimmedLength();I++)if(d.loadCell(I,this._workCell),this._workCell.getWidth()!==0){if(this._workCell.fg!==E||this._workCell.bg!==R){if(I-C>1){const T=this._getJoinedRanges(k,x,L,d,C);for(let A=0;A<T.length;A++)w.push(T[A])}C=I,x=L,E=this._workCell.fg,R=this._workCell.bg}L+=this._workCell.getChars().length||m.WHITESPACE_CELL_CHAR.length}if(this._bufferService.cols-C>1){const I=this._getJoinedRanges(k,x,L,d,C);for(let T=0;T<I.length;T++)w.push(I[T])}return w}_getJoinedRanges(l,d,w,k,C){const L=l.substring(d,w);let x=[];try{x=this._characterJoiners[0].handler(L)}catch(E){console.error(E)}for(let E=1;E<this._characterJoiners.length;E++)try{const R=this._characterJoiners[E].handler(L);for(let I=0;I<R.length;I++)e_._mergeRanges(x,R[I])}catch(R){console.error(R)}return this._stringRangesToCellRanges(x,k,C),x}_stringRangesToCellRanges(l,d,w){let k=0,C=!1,L=0,x=l[k];if(x){for(let E=w;E<this._bufferService.cols;E++){const R=d.getWidth(E),I=d.getString(E).length||m.WHITESPACE_CELL_CHAR.length;if(R!==0){if(!C&&x[0]<=L&&(x[0]=E,C=!0),x[1]<=L){if(x[1]=E,x=l[++k],!x)break;x[0]<=L?(x[0]=E,C=!0):C=!1}L+=I}}x&&(x[1]=this._bufferService.cols)}}static _mergeRanges(l,d){let w=!1;for(let k=0;k<l.length;k++){const C=l[k];if(w){if(d[1]<=C[0])return l[k-1][1]=d[1],l;if(d[1]<=C[1])return l[k-1][1]=Math.max(d[1],C[1]),l.splice(k,1),l;l.splice(k,1),k--}else{if(d[1]<=C[0])return l.splice(k,0,d),l;if(d[1]<=C[1])return C[0]=Math.min(d[0],C[0]),l;d[0]<C[1]&&(C[0]=Math.min(d[0],C[0]),w=!0)}}return w?l[l.length-1][1]=d[1]:l.push(d),l}};r.CharacterJoinerService=a=f([_(0,b.IBufferService)],a)},5114:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CoreBrowserService=void 0;const f=o(844),_=o(8460),c=o(3656);class m extends f.Disposable{constructor(g,a,h){super(),this._textarea=g,this._window=a,this.mainDocument=h,this._isFocused=!1,this._cachedIsFocused=void 0,this._screenDprMonitor=new y(this._window),this._onDprChange=this.register(new _.EventEmitter),this.onDprChange=this._onDprChange.event,this._onWindowChange=this.register(new _.EventEmitter),this.onWindowChange=this._onWindowChange.event,this.register(this.onWindowChange(l=>this._screenDprMonitor.setWindow(l))),this.register((0,_.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(g){this._window!==g&&(this._window=g,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}}r.CoreBrowserService=m;class y extends f.Disposable{constructor(g){super(),this._parentWindow=g,this._windowResizeListener=this.register(new f.MutableDisposable),this._onDprChange=this.register(new _.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(g){this._parentWindow=g,this._setWindowResizeListener(),this._setDprAndFireIfDiffers()}_setWindowResizeListener(){this._windowResizeListener.value=(0,c.addDisposableDomListener)(this._parentWindow,"resize",()=>this._setDprAndFireIfDiffers())}_setDprAndFireIfDiffers(){this._parentWindow.devicePixelRatio!==this._currentDevicePixelRatio&&this._onDprChange.fire(this._parentWindow.devicePixelRatio),this._updateDpr()}_updateDpr(){var g;this._outerListener&&((g=this._resolutionMediaMatchList)==null||g.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:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.LinkProviderService=void 0;const f=o(844);class _ extends f.Disposable{constructor(){super(),this.linkProviders=[],this.register((0,f.toDisposable)(()=>this.linkProviders.length=0))}registerLinkProvider(m){return this.linkProviders.push(m),{dispose:()=>{const y=this.linkProviders.indexOf(m);y!==-1&&this.linkProviders.splice(y,1)}}}}r.LinkProviderService=_},8934:function(p,r,o){var f=this&&this.__decorate||function(b,g,a,h){var l,d=arguments.length,w=d<3?g:h===null?h=Object.getOwnPropertyDescriptor(g,a):h;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")w=Reflect.decorate(b,g,a,h);else for(var k=b.length-1;k>=0;k--)(l=b[k])&&(w=(d<3?l(w):d>3?l(g,a,w):l(g,a))||w);return d>3&&w&&Object.defineProperty(g,a,w),w},_=this&&this.__param||function(b,g){return function(a,h){g(a,h,b)}};Object.defineProperty(r,"__esModule",{value:!0}),r.MouseService=void 0;const c=o(4725),m=o(9806);let y=r.MouseService=class{constructor(b,g){this._renderService=b,this._charSizeService=g}getCoords(b,g,a,h,l){return(0,m.getCoords)(window,b,g,a,h,this._charSizeService.hasValidSize,this._renderService.dimensions.css.cell.width,this._renderService.dimensions.css.cell.height,l)}getMouseReportCoords(b,g){const a=(0,m.getCoordsRelativeToElement)(window,b,g);if(this._charSizeService.hasValidSize)return a[0]=Math.min(Math.max(a[0],0),this._renderService.dimensions.css.canvas.width-1),a[1]=Math.min(Math.max(a[1],0),this._renderService.dimensions.css.canvas.height-1),{col:Math.floor(a[0]/this._renderService.dimensions.css.cell.width),row:Math.floor(a[1]/this._renderService.dimensions.css.cell.height),x:Math.floor(a[0]),y:Math.floor(a[1])}}};r.MouseService=y=f([_(0,c.IRenderService),_(1,c.ICharSizeService)],y)},3230:function(p,r,o){var f=this&&this.__decorate||function(l,d,w,k){var C,L=arguments.length,x=L<3?d:k===null?k=Object.getOwnPropertyDescriptor(d,w):k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(l,d,w,k);else for(var E=l.length-1;E>=0;E--)(C=l[E])&&(x=(L<3?C(x):L>3?C(d,w,x):C(d,w))||x);return L>3&&x&&Object.defineProperty(d,w,x),x},_=this&&this.__param||function(l,d){return function(w,k){d(w,k,l)}};Object.defineProperty(r,"__esModule",{value:!0}),r.RenderService=void 0;const c=o(6193),m=o(4725),y=o(8460),b=o(844),g=o(7226),a=o(2585);let h=r.RenderService=class extends b.Disposable{get dimensions(){return this._renderer.value.dimensions}constructor(l,d,w,k,C,L,x,E){super(),this._rowCount=l,this._charSizeService=k,this._renderer=this.register(new b.MutableDisposable),this._pausedResizeTask=new g.DebouncedIdleTask,this._observerDisposable=this.register(new b.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 y.EventEmitter),this.onDimensionsChange=this._onDimensionsChange.event,this._onRenderedViewportChange=this.register(new y.EventEmitter),this.onRenderedViewportChange=this._onRenderedViewportChange.event,this._onRender=this.register(new y.EventEmitter),this.onRender=this._onRender.event,this._onRefreshRequest=this.register(new y.EventEmitter),this.onRefreshRequest=this._onRefreshRequest.event,this._renderDebouncer=new c.RenderDebouncer((R,I)=>this._renderRows(R,I),x),this.register(this._renderDebouncer),this.register(x.onDprChange(()=>this.handleDevicePixelRatioChange())),this.register(L.onResize(()=>this._fullRefresh())),this.register(L.buffers.onBufferActivate(()=>{var R;return(R=this._renderer.value)==null?void 0:R.clear()})),this.register(w.onOptionChange(()=>this._handleOptionsChanged())),this.register(this._charSizeService.onCharSizeChange(()=>this.handleCharSizeChanged())),this.register(C.onDecorationRegistered(()=>this._fullRefresh())),this.register(C.onDecorationRemoved(()=>this._fullRefresh())),this.register(w.onMultipleOptionChange(["customGlyphs","drawBoldTextInBrightColors","letterSpacing","lineHeight","fontFamily","fontSize","fontWeight","fontWeightBold","minimumContrastRatio","rescaleOverlappingGlyphs"],()=>{this.clear(),this.handleResize(L.cols,L.rows),this._fullRefresh()})),this.register(w.onMultipleOptionChange(["cursorBlink","cursorStyle"],()=>this.refreshRows(L.buffer.y,L.buffer.y,!0))),this.register(E.onChangeColors(()=>this._fullRefresh())),this._registerIntersectionObserver(x.window,d),this.register(x.onWindowChange(R=>this._registerIntersectionObserver(R,d)))}_registerIntersectionObserver(l,d){if("IntersectionObserver"in l){const w=new l.IntersectionObserver(k=>this._handleIntersectionChange(k[k.length-1]),{threshold:0});w.observe(d),this._observerDisposable.value=(0,b.toDisposable)(()=>w.disconnect())}}_handleIntersectionChange(l){this._isPaused=l.isIntersecting===void 0?l.intersectionRatio===0:!l.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(l,d,w=!1){this._isPaused?this._needsFullRefresh=!0:(w||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(l,d,this._rowCount))}_renderRows(l,d){this._renderer.value&&(l=Math.min(l,this._rowCount-1),d=Math.min(d,this._rowCount-1),this._renderer.value.renderRows(l,d),this._needsSelectionRefresh&&(this._renderer.value.handleSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRenderedViewportChange.fire({start:l,end:d}),this._onRender.fire({start:l,end:d}),this._isNextRenderRedrawOnly=!0)}resize(l,d){this._rowCount=d,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(l){this._renderer.value=l,this._renderer.value&&(this._renderer.value.onRequestRedraw(d=>this.refreshRows(d.start,d.end,!0)),this._needsSelectionRefresh=!0,this._fullRefresh())}addRefreshCallback(l){return this._renderDebouncer.addRefreshCallback(l)}_fullRefresh(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)}clearTextureAtlas(){var l,d;this._renderer.value&&((d=(l=this._renderer.value).clearTextureAtlas)==null||d.call(l),this._fullRefresh())}handleDevicePixelRatioChange(){this._charSizeService.measure(),this._renderer.value&&(this._renderer.value.handleDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1))}handleResize(l,d){this._renderer.value&&(this._isPaused?this._pausedResizeTask.set(()=>{var w;return(w=this._renderer.value)==null?void 0:w.handleResize(l,d)}):this._renderer.value.handleResize(l,d),this._fullRefresh())}handleCharSizeChanged(){var l;(l=this._renderer.value)==null||l.handleCharSizeChanged()}handleBlur(){var l;(l=this._renderer.value)==null||l.handleBlur()}handleFocus(){var l;(l=this._renderer.value)==null||l.handleFocus()}handleSelectionChanged(l,d,w){var k;this._selectionState.start=l,this._selectionState.end=d,this._selectionState.columnSelectMode=w,(k=this._renderer.value)==null||k.handleSelectionChanged(l,d,w)}handleCursorMove(){var l;(l=this._renderer.value)==null||l.handleCursorMove()}clear(){var l;(l=this._renderer.value)==null||l.clear()}};r.RenderService=h=f([_(2,a.IOptionsService),_(3,m.ICharSizeService),_(4,a.IDecorationService),_(5,a.IBufferService),_(6,m.ICoreBrowserService),_(7,m.IThemeService)],h)},9312:function(p,r,o){var f=this&&this.__decorate||function(x,E,R,I){var T,A=arguments.length,O=A<3?E:I===null?I=Object.getOwnPropertyDescriptor(E,R):I;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")O=Reflect.decorate(x,E,R,I);else for(var U=x.length-1;U>=0;U--)(T=x[U])&&(O=(A<3?T(O):A>3?T(E,R,O):T(E,R))||O);return A>3&&O&&Object.defineProperty(E,R,O),O},_=this&&this.__param||function(x,E){return function(R,I){E(R,I,x)}};Object.defineProperty(r,"__esModule",{value:!0}),r.SelectionService=void 0;const c=o(9806),m=o(9504),y=o(456),b=o(4725),g=o(8460),a=o(844),h=o(6114),l=o(4841),d=o(511),w=o(2585),k=" ",C=new RegExp(k,"g");let L=r.SelectionService=class extends a.Disposable{constructor(x,E,R,I,T,A,O,U,$){super(),this._element=x,this._screenElement=E,this._linkifier=R,this._bufferService=I,this._coreService=T,this._mouseService=A,this._optionsService=O,this._renderService=U,this._coreBrowserService=$,this._dragScrollAmount=0,this._enabled=!0,this._workCell=new d.CellData,this._mouseDownTimeStamp=0,this._oldHasSelection=!1,this._oldSelectionStart=void 0,this._oldSelectionEnd=void 0,this._onLinuxMouseSelection=this.register(new g.EventEmitter),this.onLinuxMouseSelection=this._onLinuxMouseSelection.event,this._onRedrawRequest=this.register(new g.EventEmitter),this.onRequestRedraw=this._onRedrawRequest.event,this._onSelectionChange=this.register(new g.EventEmitter),this.onSelectionChange=this._onSelectionChange.event,this._onRequestScrollLines=this.register(new g.EventEmitter),this.onRequestScrollLines=this._onRequestScrollLines.event,this._mouseMoveListener=V=>this._handleMouseMove(V),this._mouseUpListener=V=>this._handleMouseUp(V),this._coreService.onUserInput(()=>{this.hasSelection&&this.clearSelection()}),this._trimListener=this._bufferService.buffer.lines.onTrim(V=>this._handleTrim(V)),this.register(this._bufferService.buffers.onBufferActivate(V=>this._handleBufferActivate(V))),this.enable(),this._model=new y.SelectionModel(this._bufferService),this._activeSelectionMode=0,this.register((0,a.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 x=this._model.finalSelectionStart,E=this._model.finalSelectionEnd;return!(!x||!E||x[0]===E[0]&&x[1]===E[1])}get selectionText(){const x=this._model.finalSelectionStart,E=this._model.finalSelectionEnd;if(!x||!E)return"";const R=this._bufferService.buffer,I=[];if(this._activeSelectionMode===3){if(x[0]===E[0])return"";const T=x[0]<E[0]?x[0]:E[0],A=x[0]<E[0]?E[0]:x[0];for(let O=x[1];O<=E[1];O++){const U=R.translateBufferLineToString(O,!0,T,A);I.push(U)}}else{const T=x[1]===E[1]?E[0]:void 0;I.push(R.translateBufferLineToString(x[1],!0,x[0],T));for(let A=x[1]+1;A<=E[1]-1;A++){const O=R.lines.get(A),U=R.translateBufferLineToString(A,!0);O!=null&&O.isWrapped?I[I.length-1]+=U:I.push(U)}if(x[1]!==E[1]){const A=R.lines.get(E[1]),O=R.translateBufferLineToString(E[1],!0,0,E[0]);A&&A.isWrapped?I[I.length-1]+=O:I.push(O)}}return I.map(T=>T.replace(C," ")).join(h.isWindows?`\r
|
|
47
|
+
`:`
|
|
48
|
+
`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(x){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),h.isLinux&&x&&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(x){const E=this._getMouseBufferCoords(x),R=this._model.finalSelectionStart,I=this._model.finalSelectionEnd;return!!(R&&I&&E)&&this._areCoordsInSelection(E,R,I)}isCellInSelection(x,E){const R=this._model.finalSelectionStart,I=this._model.finalSelectionEnd;return!(!R||!I)&&this._areCoordsInSelection([x,E],R,I)}_areCoordsInSelection(x,E,R){return x[1]>E[1]&&x[1]<R[1]||E[1]===R[1]&&x[1]===E[1]&&x[0]>=E[0]&&x[0]<R[0]||E[1]<R[1]&&x[1]===R[1]&&x[0]<R[0]||E[1]<R[1]&&x[1]===E[1]&&x[0]>=E[0]}_selectWordAtCursor(x,E){var T,A;const R=(A=(T=this._linkifier.currentLink)==null?void 0:T.link)==null?void 0:A.range;if(R)return this._model.selectionStart=[R.start.x-1,R.start.y-1],this._model.selectionStartLength=(0,l.getRangeLength)(R,this._bufferService.cols),this._model.selectionEnd=void 0,!0;const I=this._getMouseBufferCoords(x);return!!I&&(this._selectWordAt(I,E),this._model.selectionEnd=void 0,!0)}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(x,E){this._model.clearSelection(),x=Math.max(x,0),E=Math.min(E,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,x],this._model.selectionEnd=[this._bufferService.cols,E],this.refresh(),this._onSelectionChange.fire()}_handleTrim(x){this._model.handleTrim(x)&&this.refresh()}_getMouseBufferCoords(x){const E=this._mouseService.getCoords(x,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(E)return E[0]--,E[1]--,E[1]+=this._bufferService.buffer.ydisp,E}_getMouseEventScrollAmount(x){let E=(0,c.getCoordsRelativeToElement)(this._coreBrowserService.window,x,this._screenElement)[1];const R=this._renderService.dimensions.css.canvas.height;return E>=0&&E<=R?0:(E>R&&(E-=R),E=Math.min(Math.max(E,-50),50),E/=50,E/Math.abs(E)+Math.round(14*E))}shouldForceSelection(x){return h.isMac?x.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:x.shiftKey}handleMouseDown(x){if(this._mouseDownTimeStamp=x.timeStamp,(x.button!==2||!this.hasSelection)&&x.button===0){if(!this._enabled){if(!this.shouldForceSelection(x))return;x.stopPropagation()}x.preventDefault(),this._dragScrollAmount=0,this._enabled&&x.shiftKey?this._handleIncrementalClick(x):x.detail===1?this._handleSingleClick(x):x.detail===2?this._handleDoubleClick(x):x.detail===3&&this._handleTripleClick(x),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(x){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(x))}_handleSingleClick(x){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(x)?3:0,this._model.selectionStart=this._getMouseBufferCoords(x),!this._model.selectionStart)return;this._model.selectionEnd=void 0;const E=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);E&&E.length!==this._model.selectionStart[0]&&E.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(x){this._selectWordAtCursor(x,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(x){const E=this._getMouseBufferCoords(x);E&&(this._activeSelectionMode=2,this._selectLineAt(E[1]))}shouldColumnSelect(x){return x.altKey&&!(h.isMac&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(x){if(x.stopImmediatePropagation(),!this._model.selectionStart)return;const E=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(x),!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(x),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));const R=this._bufferService.buffer;if(this._model.selectionEnd[1]<R.lines.length){const I=R.lines.get(this._model.selectionEnd[1]);I&&I.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}E&&E[0]===this._model.selectionEnd[0]&&E[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 x=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(x.ydisp+this._bufferService.rows,x.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=x.ydisp),this.refresh()}}_handleMouseUp(x){const E=x.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&E<500&&x.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){const R=this._mouseService.getCoords(x,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(R&&R[0]!==void 0&&R[1]!==void 0){const I=(0,m.moveToCellSequence)(R[0]-1,R[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(I,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){const x=this._model.finalSelectionStart,E=this._model.finalSelectionEnd,R=!(!x||!E||x[0]===E[0]&&x[1]===E[1]);R?x&&E&&(this._oldSelectionStart&&this._oldSelectionEnd&&x[0]===this._oldSelectionStart[0]&&x[1]===this._oldSelectionStart[1]&&E[0]===this._oldSelectionEnd[0]&&E[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(x,E,R)):this._oldHasSelection&&this._fireOnSelectionChange(x,E,R)}_fireOnSelectionChange(x,E,R){this._oldSelectionStart=x,this._oldSelectionEnd=E,this._oldHasSelection=R,this._onSelectionChange.fire()}_handleBufferActivate(x){this.clearSelection(),this._trimListener.dispose(),this._trimListener=x.activeBuffer.lines.onTrim(E=>this._handleTrim(E))}_convertViewportColToCharacterIndex(x,E){let R=E;for(let I=0;E>=I;I++){const T=x.loadCell(I,this._workCell).getChars().length;this._workCell.getWidth()===0?R--:T>1&&E!==I&&(R+=T-1)}return R}setSelection(x,E,R){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[x,E],this._model.selectionStartLength=R,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(x){this._isClickInSelection(x)||(this._selectWordAtCursor(x,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(x,E,R=!0,I=!0){if(x[0]>=this._bufferService.cols)return;const T=this._bufferService.buffer,A=T.lines.get(x[1]);if(!A)return;const O=T.translateBufferLineToString(x[1],!1);let U=this._convertViewportColToCharacterIndex(A,x[0]),$=U;const V=x[0]-U;let H=0,S=0,M=0,B=0;if(O.charAt(U)===" "){for(;U>0&&O.charAt(U-1)===" ";)U--;for(;$<O.length&&O.charAt($+1)===" ";)$++}else{let J=x[0],se=x[0];A.getWidth(J)===0&&(H++,J--),A.getWidth(se)===2&&(S++,se++);const te=A.getString(se).length;for(te>1&&(B+=te-1,$+=te-1);J>0&&U>0&&!this._isCharWordSeparator(A.loadCell(J-1,this._workCell));){A.loadCell(J-1,this._workCell);const z=this._workCell.getChars().length;this._workCell.getWidth()===0?(H++,J--):z>1&&(M+=z-1,U-=z-1),U--,J--}for(;se<A.length&&$+1<O.length&&!this._isCharWordSeparator(A.loadCell(se+1,this._workCell));){A.loadCell(se+1,this._workCell);const z=this._workCell.getChars().length;this._workCell.getWidth()===2?(S++,se++):z>1&&(B+=z-1,$+=z-1),$++,se++}}$++;let F=U+V-H+M,G=Math.min(this._bufferService.cols,$-U+H+S-M-B);if(E||O.slice(U,$).trim()!==""){if(R&&F===0&&A.getCodePoint(0)!==32){const J=T.lines.get(x[1]-1);if(J&&A.isWrapped&&J.getCodePoint(this._bufferService.cols-1)!==32){const se=this._getWordAt([this._bufferService.cols-1,x[1]-1],!1,!0,!1);if(se){const te=this._bufferService.cols-se.start;F-=te,G+=te}}}if(I&&F+G===this._bufferService.cols&&A.getCodePoint(this._bufferService.cols-1)!==32){const J=T.lines.get(x[1]+1);if(J!=null&&J.isWrapped&&J.getCodePoint(0)!==32){const se=this._getWordAt([0,x[1]+1],!1,!1,!0);se&&(G+=se.length)}}return{start:F,length:G}}}_selectWordAt(x,E){const R=this._getWordAt(x,E);if(R){for(;R.start<0;)R.start+=this._bufferService.cols,x[1]--;this._model.selectionStart=[R.start,x[1]],this._model.selectionStartLength=R.length}}_selectToWordAt(x){const E=this._getWordAt(x,!0);if(E){let R=x[1];for(;E.start<0;)E.start+=this._bufferService.cols,R--;if(!this._model.areSelectionValuesReversed())for(;E.start+E.length>this._bufferService.cols;)E.length-=this._bufferService.cols,R++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?E.start:E.start+E.length,R]}}_isCharWordSeparator(x){return x.getWidth()!==0&&this._optionsService.rawOptions.wordSeparator.indexOf(x.getChars())>=0}_selectLineAt(x){const E=this._bufferService.buffer.getWrappedRangeForLine(x),R={start:{x:0,y:E.first},end:{x:this._bufferService.cols-1,y:E.last}};this._model.selectionStart=[0,E.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=(0,l.getRangeLength)(R,this._bufferService.cols)}};r.SelectionService=L=f([_(3,w.IBufferService),_(4,w.ICoreService),_(5,b.IMouseService),_(6,w.IOptionsService),_(7,b.IRenderService),_(8,b.ICoreBrowserService)],L)},4725:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ILinkProviderService=r.IThemeService=r.ICharacterJoinerService=r.ISelectionService=r.IRenderService=r.IMouseService=r.ICoreBrowserService=r.ICharSizeService=void 0;const f=o(8343);r.ICharSizeService=(0,f.createDecorator)("CharSizeService"),r.ICoreBrowserService=(0,f.createDecorator)("CoreBrowserService"),r.IMouseService=(0,f.createDecorator)("MouseService"),r.IRenderService=(0,f.createDecorator)("RenderService"),r.ISelectionService=(0,f.createDecorator)("SelectionService"),r.ICharacterJoinerService=(0,f.createDecorator)("CharacterJoinerService"),r.IThemeService=(0,f.createDecorator)("ThemeService"),r.ILinkProviderService=(0,f.createDecorator)("LinkProviderService")},6731:function(p,r,o){var f=this&&this.__decorate||function(L,x,E,R){var I,T=arguments.length,A=T<3?x:R===null?R=Object.getOwnPropertyDescriptor(x,E):R;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")A=Reflect.decorate(L,x,E,R);else for(var O=L.length-1;O>=0;O--)(I=L[O])&&(A=(T<3?I(A):T>3?I(x,E,A):I(x,E))||A);return T>3&&A&&Object.defineProperty(x,E,A),A},_=this&&this.__param||function(L,x){return function(E,R){x(E,R,L)}};Object.defineProperty(r,"__esModule",{value:!0}),r.ThemeService=r.DEFAULT_ANSI_COLORS=void 0;const c=o(7239),m=o(8055),y=o(8460),b=o(844),g=o(2585),a=m.css.toColor("#ffffff"),h=m.css.toColor("#000000"),l=m.css.toColor("#ffffff"),d=m.css.toColor("#000000"),w={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};r.DEFAULT_ANSI_COLORS=Object.freeze((()=>{const L=[m.css.toColor("#2e3436"),m.css.toColor("#cc0000"),m.css.toColor("#4e9a06"),m.css.toColor("#c4a000"),m.css.toColor("#3465a4"),m.css.toColor("#75507b"),m.css.toColor("#06989a"),m.css.toColor("#d3d7cf"),m.css.toColor("#555753"),m.css.toColor("#ef2929"),m.css.toColor("#8ae234"),m.css.toColor("#fce94f"),m.css.toColor("#729fcf"),m.css.toColor("#ad7fa8"),m.css.toColor("#34e2e2"),m.css.toColor("#eeeeec")],x=[0,95,135,175,215,255];for(let E=0;E<216;E++){const R=x[E/36%6|0],I=x[E/6%6|0],T=x[E%6];L.push({css:m.channels.toCss(R,I,T),rgba:m.channels.toRgba(R,I,T)})}for(let E=0;E<24;E++){const R=8+10*E;L.push({css:m.channels.toCss(R,R,R),rgba:m.channels.toRgba(R,R,R)})}return L})());let k=r.ThemeService=class extends b.Disposable{get colors(){return this._colors}constructor(L){super(),this._optionsService=L,this._contrastCache=new c.ColorContrastCache,this._halfContrastCache=new c.ColorContrastCache,this._onChangeColors=this.register(new y.EventEmitter),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:a,background:h,cursor:l,cursorAccent:d,selectionForeground:void 0,selectionBackgroundTransparent:w,selectionBackgroundOpaque:m.color.blend(h,w),selectionInactiveBackgroundTransparent:w,selectionInactiveBackgroundOpaque:m.color.blend(h,w),ansi:r.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 x=this._colors;if(x.foreground=C(L.foreground,a),x.background=C(L.background,h),x.cursor=C(L.cursor,l),x.cursorAccent=C(L.cursorAccent,d),x.selectionBackgroundTransparent=C(L.selectionBackground,w),x.selectionBackgroundOpaque=m.color.blend(x.background,x.selectionBackgroundTransparent),x.selectionInactiveBackgroundTransparent=C(L.selectionInactiveBackground,x.selectionBackgroundTransparent),x.selectionInactiveBackgroundOpaque=m.color.blend(x.background,x.selectionInactiveBackgroundTransparent),x.selectionForeground=L.selectionForeground?C(L.selectionForeground,m.NULL_COLOR):void 0,x.selectionForeground===m.NULL_COLOR&&(x.selectionForeground=void 0),m.color.isOpaque(x.selectionBackgroundTransparent)&&(x.selectionBackgroundTransparent=m.color.opacity(x.selectionBackgroundTransparent,.3)),m.color.isOpaque(x.selectionInactiveBackgroundTransparent)&&(x.selectionInactiveBackgroundTransparent=m.color.opacity(x.selectionInactiveBackgroundTransparent,.3)),x.ansi=r.DEFAULT_ANSI_COLORS.slice(),x.ansi[0]=C(L.black,r.DEFAULT_ANSI_COLORS[0]),x.ansi[1]=C(L.red,r.DEFAULT_ANSI_COLORS[1]),x.ansi[2]=C(L.green,r.DEFAULT_ANSI_COLORS[2]),x.ansi[3]=C(L.yellow,r.DEFAULT_ANSI_COLORS[3]),x.ansi[4]=C(L.blue,r.DEFAULT_ANSI_COLORS[4]),x.ansi[5]=C(L.magenta,r.DEFAULT_ANSI_COLORS[5]),x.ansi[6]=C(L.cyan,r.DEFAULT_ANSI_COLORS[6]),x.ansi[7]=C(L.white,r.DEFAULT_ANSI_COLORS[7]),x.ansi[8]=C(L.brightBlack,r.DEFAULT_ANSI_COLORS[8]),x.ansi[9]=C(L.brightRed,r.DEFAULT_ANSI_COLORS[9]),x.ansi[10]=C(L.brightGreen,r.DEFAULT_ANSI_COLORS[10]),x.ansi[11]=C(L.brightYellow,r.DEFAULT_ANSI_COLORS[11]),x.ansi[12]=C(L.brightBlue,r.DEFAULT_ANSI_COLORS[12]),x.ansi[13]=C(L.brightMagenta,r.DEFAULT_ANSI_COLORS[13]),x.ansi[14]=C(L.brightCyan,r.DEFAULT_ANSI_COLORS[14]),x.ansi[15]=C(L.brightWhite,r.DEFAULT_ANSI_COLORS[15]),L.extendedAnsi){const E=Math.min(x.ansi.length-16,L.extendedAnsi.length);for(let R=0;R<E;R++)x.ansi[R+16]=C(L.extendedAnsi[R],r.DEFAULT_ANSI_COLORS[R+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 x=0;x<this._restoreColors.ansi.length;++x)this._colors.ansi[x]=this._restoreColors.ansi[x]}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 C(L,x){if(L!==void 0)try{return m.css.toColor(L)}catch{}return x}r.ThemeService=k=f([_(0,g.IOptionsService)],k)},6349:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CircularList=void 0;const f=o(8460),_=o(844);class c extends _.Disposable{constructor(y){super(),this._maxLength=y,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(y){if(this._maxLength===y)return;const b=new Array(y);for(let g=0;g<Math.min(y,this.length);g++)b[g]=this._array[this._getCyclicIndex(g)];this._array=b,this._maxLength=y,this._startIndex=0}get length(){return this._length}set length(y){if(y>this._length)for(let b=this._length;b<y;b++)this._array[b]=void 0;this._length=y}get(y){return this._array[this._getCyclicIndex(y)]}set(y,b){this._array[this._getCyclicIndex(y)]=b}push(y){this._array[this._getCyclicIndex(this._length)]=y,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(y,b,...g){if(b){for(let a=y;a<this._length-b;a++)this._array[this._getCyclicIndex(a)]=this._array[this._getCyclicIndex(a+b)];this._length-=b,this.onDeleteEmitter.fire({index:y,amount:b})}for(let a=this._length-1;a>=y;a--)this._array[this._getCyclicIndex(a+g.length)]=this._array[this._getCyclicIndex(a)];for(let a=0;a<g.length;a++)this._array[this._getCyclicIndex(y+a)]=g[a];if(g.length&&this.onInsertEmitter.fire({index:y,amount:g.length}),this._length+g.length>this._maxLength){const a=this._length+g.length-this._maxLength;this._startIndex+=a,this._length=this._maxLength,this.onTrimEmitter.fire(a)}else this._length+=g.length}trimStart(y){y>this._length&&(y=this._length),this._startIndex+=y,this._length-=y,this.onTrimEmitter.fire(y)}shiftElements(y,b,g){if(!(b<=0)){if(y<0||y>=this._length)throw new Error("start argument out of range");if(y+g<0)throw new Error("Cannot shift elements in list beyond index 0");if(g>0){for(let h=b-1;h>=0;h--)this.set(y+h+g,this.get(y+h));const a=y+b+g-this._length;if(a>0)for(this._length+=a;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let a=0;a<b;a++)this.set(y+a+g,this.get(y+a))}}_getCyclicIndex(y){return(this._startIndex+y)%this._maxLength}}r.CircularList=c},1439:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.clone=void 0,r.clone=function o(f,_=5){if(typeof f!="object")return f;const c=Array.isArray(f)?[]:{};for(const m in f)c[m]=_<=1?f[m]:f[m]&&o(f[m],_-1);return c}},8055:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.contrastRatio=r.toPaddedHex=r.rgba=r.rgb=r.css=r.color=r.channels=r.NULL_COLOR=void 0;let o=0,f=0,_=0,c=0;var m,y,b,g,a;function h(d){const w=d.toString(16);return w.length<2?"0"+w:w}function l(d,w){return d<w?(w+.05)/(d+.05):(d+.05)/(w+.05)}r.NULL_COLOR={css:"#00000000",rgba:0},function(d){d.toCss=function(w,k,C,L){return L!==void 0?`#${h(w)}${h(k)}${h(C)}${h(L)}`:`#${h(w)}${h(k)}${h(C)}`},d.toRgba=function(w,k,C,L=255){return(w<<24|k<<16|C<<8|L)>>>0},d.toColor=function(w,k,C,L){return{css:d.toCss(w,k,C,L),rgba:d.toRgba(w,k,C,L)}}}(m||(r.channels=m={})),function(d){function w(k,C){return c=Math.round(255*C),[o,f,_]=a.toChannels(k.rgba),{css:m.toCss(o,f,_,c),rgba:m.toRgba(o,f,_,c)}}d.blend=function(k,C){if(c=(255&C.rgba)/255,c===1)return{css:C.css,rgba:C.rgba};const L=C.rgba>>24&255,x=C.rgba>>16&255,E=C.rgba>>8&255,R=k.rgba>>24&255,I=k.rgba>>16&255,T=k.rgba>>8&255;return o=R+Math.round((L-R)*c),f=I+Math.round((x-I)*c),_=T+Math.round((E-T)*c),{css:m.toCss(o,f,_),rgba:m.toRgba(o,f,_)}},d.isOpaque=function(k){return(255&k.rgba)==255},d.ensureContrastRatio=function(k,C,L){const x=a.ensureContrastRatio(k.rgba,C.rgba,L);if(x)return m.toColor(x>>24&255,x>>16&255,x>>8&255)},d.opaque=function(k){const C=(255|k.rgba)>>>0;return[o,f,_]=a.toChannels(C),{css:m.toCss(o,f,_),rgba:C}},d.opacity=w,d.multiplyOpacity=function(k,C){return c=255&k.rgba,w(k,c*C/255)},d.toColorRGB=function(k){return[k.rgba>>24&255,k.rgba>>16&255,k.rgba>>8&255]}}(y||(r.color=y={})),function(d){let w,k;try{const C=document.createElement("canvas");C.width=1,C.height=1;const L=C.getContext("2d",{willReadFrequently:!0});L&&(w=L,w.globalCompositeOperation="copy",k=w.createLinearGradient(0,0,1,1))}catch{}d.toColor=function(C){if(C.match(/#[\da-f]{3,8}/i))switch(C.length){case 4:return o=parseInt(C.slice(1,2).repeat(2),16),f=parseInt(C.slice(2,3).repeat(2),16),_=parseInt(C.slice(3,4).repeat(2),16),m.toColor(o,f,_);case 5:return o=parseInt(C.slice(1,2).repeat(2),16),f=parseInt(C.slice(2,3).repeat(2),16),_=parseInt(C.slice(3,4).repeat(2),16),c=parseInt(C.slice(4,5).repeat(2),16),m.toColor(o,f,_,c);case 7:return{css:C,rgba:(parseInt(C.slice(1),16)<<8|255)>>>0};case 9:return{css:C,rgba:parseInt(C.slice(1),16)>>>0}}const L=C.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 o=parseInt(L[1]),f=parseInt(L[2]),_=parseInt(L[3]),c=Math.round(255*(L[5]===void 0?1:parseFloat(L[5]))),m.toColor(o,f,_,c);if(!w||!k)throw new Error("css.toColor: Unsupported css format");if(w.fillStyle=k,w.fillStyle=C,typeof w.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(w.fillRect(0,0,1,1),[o,f,_,c]=w.getImageData(0,0,1,1).data,c!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:m.toRgba(o,f,_,c),css:C}}}(b||(r.css=b={})),function(d){function w(k,C,L){const x=k/255,E=C/255,R=L/255;return .2126*(x<=.03928?x/12.92:Math.pow((x+.055)/1.055,2.4))+.7152*(E<=.03928?E/12.92:Math.pow((E+.055)/1.055,2.4))+.0722*(R<=.03928?R/12.92:Math.pow((R+.055)/1.055,2.4))}d.relativeLuminance=function(k){return w(k>>16&255,k>>8&255,255&k)},d.relativeLuminance2=w}(g||(r.rgb=g={})),function(d){function w(C,L,x){const E=C>>24&255,R=C>>16&255,I=C>>8&255;let T=L>>24&255,A=L>>16&255,O=L>>8&255,U=l(g.relativeLuminance2(T,A,O),g.relativeLuminance2(E,R,I));for(;U<x&&(T>0||A>0||O>0);)T-=Math.max(0,Math.ceil(.1*T)),A-=Math.max(0,Math.ceil(.1*A)),O-=Math.max(0,Math.ceil(.1*O)),U=l(g.relativeLuminance2(T,A,O),g.relativeLuminance2(E,R,I));return(T<<24|A<<16|O<<8|255)>>>0}function k(C,L,x){const E=C>>24&255,R=C>>16&255,I=C>>8&255;let T=L>>24&255,A=L>>16&255,O=L>>8&255,U=l(g.relativeLuminance2(T,A,O),g.relativeLuminance2(E,R,I));for(;U<x&&(T<255||A<255||O<255);)T=Math.min(255,T+Math.ceil(.1*(255-T))),A=Math.min(255,A+Math.ceil(.1*(255-A))),O=Math.min(255,O+Math.ceil(.1*(255-O))),U=l(g.relativeLuminance2(T,A,O),g.relativeLuminance2(E,R,I));return(T<<24|A<<16|O<<8|255)>>>0}d.blend=function(C,L){if(c=(255&L)/255,c===1)return L;const x=L>>24&255,E=L>>16&255,R=L>>8&255,I=C>>24&255,T=C>>16&255,A=C>>8&255;return o=I+Math.round((x-I)*c),f=T+Math.round((E-T)*c),_=A+Math.round((R-A)*c),m.toRgba(o,f,_)},d.ensureContrastRatio=function(C,L,x){const E=g.relativeLuminance(C>>8),R=g.relativeLuminance(L>>8);if(l(E,R)<x){if(R<E){const A=w(C,L,x),O=l(E,g.relativeLuminance(A>>8));if(O<x){const U=k(C,L,x);return O>l(E,g.relativeLuminance(U>>8))?A:U}return A}const I=k(C,L,x),T=l(E,g.relativeLuminance(I>>8));if(T<x){const A=w(C,L,x);return T>l(E,g.relativeLuminance(A>>8))?I:A}return I}},d.reduceLuminance=w,d.increaseLuminance=k,d.toChannels=function(C){return[C>>24&255,C>>16&255,C>>8&255,255&C]}}(a||(r.rgba=a={})),r.toPaddedHex=h,r.contrastRatio=l},8969:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CoreTerminal=void 0;const f=o(844),_=o(2585),c=o(4348),m=o(7866),y=o(744),b=o(7302),g=o(6975),a=o(8460),h=o(1753),l=o(1480),d=o(7994),w=o(9282),k=o(5435),C=o(5981),L=o(2660);let x=!1;class E extends f.Disposable{get onScroll(){return this._onScrollApi||(this._onScrollApi=this.register(new a.EventEmitter),this._onScroll.event(I=>{var T;(T=this._onScrollApi)==null||T.fire(I.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(I){for(const T in I)this.optionsService.options[T]=I[T]}constructor(I){super(),this._windowsWrappingHeuristics=this.register(new f.MutableDisposable),this._onBinary=this.register(new a.EventEmitter),this.onBinary=this._onBinary.event,this._onData=this.register(new a.EventEmitter),this.onData=this._onData.event,this._onLineFeed=this.register(new a.EventEmitter),this.onLineFeed=this._onLineFeed.event,this._onResize=this.register(new a.EventEmitter),this.onResize=this._onResize.event,this._onWriteParsed=this.register(new a.EventEmitter),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this.register(new a.EventEmitter),this._instantiationService=new c.InstantiationService,this.optionsService=this.register(new b.OptionsService(I)),this._instantiationService.setService(_.IOptionsService,this.optionsService),this._bufferService=this.register(this._instantiationService.createInstance(y.BufferService)),this._instantiationService.setService(_.IBufferService,this._bufferService),this._logService=this.register(this._instantiationService.createInstance(m.LogService)),this._instantiationService.setService(_.ILogService,this._logService),this.coreService=this.register(this._instantiationService.createInstance(g.CoreService)),this._instantiationService.setService(_.ICoreService,this.coreService),this.coreMouseService=this.register(this._instantiationService.createInstance(h.CoreMouseService)),this._instantiationService.setService(_.ICoreMouseService,this.coreMouseService),this.unicodeService=this.register(this._instantiationService.createInstance(l.UnicodeService)),this._instantiationService.setService(_.IUnicodeService,this.unicodeService),this._charsetService=this._instantiationService.createInstance(d.CharsetService),this._instantiationService.setService(_.ICharsetService,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(L.OscLinkService),this._instantiationService.setService(_.IOscLinkService,this._oscLinkService),this._inputHandler=this.register(new k.InputHandler(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this.register((0,a.forwardEvent)(this._inputHandler.onLineFeed,this._onLineFeed)),this.register(this._inputHandler),this.register((0,a.forwardEvent)(this._bufferService.onResize,this._onResize)),this.register((0,a.forwardEvent)(this.coreService.onData,this._onData)),this.register((0,a.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(T=>{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(T=>{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 C.WriteBuffer((T,A)=>this._inputHandler.parse(T,A))),this.register((0,a.forwardEvent)(this._writeBuffer.onWriteParsed,this._onWriteParsed))}write(I,T){this._writeBuffer.write(I,T)}writeSync(I,T){this._logService.logLevel<=_.LogLevelEnum.WARN&&!x&&(this._logService.warn("writeSync is unreliable and will be removed soon."),x=!0),this._writeBuffer.writeSync(I,T)}input(I,T=!0){this.coreService.triggerDataEvent(I,T)}resize(I,T){isNaN(I)||isNaN(T)||(I=Math.max(I,y.MINIMUM_COLS),T=Math.max(T,y.MINIMUM_ROWS),this._bufferService.resize(I,T))}scroll(I,T=!1){this._bufferService.scroll(I,T)}scrollLines(I,T,A){this._bufferService.scrollLines(I,T,A)}scrollPages(I){this.scrollLines(I*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(I){const T=I-this._bufferService.buffer.ydisp;T!==0&&this.scrollLines(T)}registerEscHandler(I,T){return this._inputHandler.registerEscHandler(I,T)}registerDcsHandler(I,T){return this._inputHandler.registerDcsHandler(I,T)}registerCsiHandler(I,T){return this._inputHandler.registerCsiHandler(I,T)}registerOscHandler(I,T){return this._inputHandler.registerOscHandler(I,T)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let I=!1;const T=this.optionsService.rawOptions.windowsPty;T&&T.buildNumber!==void 0&&T.buildNumber!==void 0?I=T.backend==="conpty"&&T.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(I=!0),I?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){const I=[];I.push(this.onLineFeed(w.updateWindowsModeWrappedState.bind(null,this._bufferService))),I.push(this.registerCsiHandler({final:"H"},()=>((0,w.updateWindowsModeWrappedState)(this._bufferService),!1))),this._windowsWrappingHeuristics.value=(0,f.toDisposable)(()=>{for(const T of I)T.dispose()})}}}r.CoreTerminal=E},8460:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.runAndSubscribe=r.forwardEvent=r.EventEmitter=void 0,r.EventEmitter=class{constructor(){this._listeners=[],this._disposed=!1}get event(){return this._event||(this._event=o=>(this._listeners.push(o),{dispose:()=>{if(!this._disposed){for(let f=0;f<this._listeners.length;f++)if(this._listeners[f]===o)return void this._listeners.splice(f,1)}}})),this._event}fire(o,f){const _=[];for(let c=0;c<this._listeners.length;c++)_.push(this._listeners[c]);for(let c=0;c<_.length;c++)_[c].call(void 0,o,f)}dispose(){this.clearListeners(),this._disposed=!0}clearListeners(){this._listeners&&(this._listeners.length=0)}},r.forwardEvent=function(o,f){return o(_=>f.fire(_))},r.runAndSubscribe=function(o,f){return f(void 0),o(_=>f(_))}},5435:function(p,r,o){var f=this&&this.__decorate||function(H,S,M,B){var F,G=arguments.length,J=G<3?S:B===null?B=Object.getOwnPropertyDescriptor(S,M):B;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")J=Reflect.decorate(H,S,M,B);else for(var se=H.length-1;se>=0;se--)(F=H[se])&&(J=(G<3?F(J):G>3?F(S,M,J):F(S,M))||J);return G>3&&J&&Object.defineProperty(S,M,J),J},_=this&&this.__param||function(H,S){return function(M,B){S(M,B,H)}};Object.defineProperty(r,"__esModule",{value:!0}),r.InputHandler=r.WindowsOptionsReportType=void 0;const c=o(2584),m=o(7116),y=o(2015),b=o(844),g=o(482),a=o(8437),h=o(8460),l=o(643),d=o(511),w=o(3734),k=o(2585),C=o(1480),L=o(6242),x=o(6351),E=o(5941),R={"(":0,")":1,"*":2,"+":3,"-":1,".":2},I=131072;function T(H,S){if(H>24)return S.setWinLines||!1;switch(H){case 1:return!!S.restoreWin;case 2:return!!S.minimizeWin;case 3:return!!S.setWinPosition;case 4:return!!S.setWinSizePixels;case 5:return!!S.raiseWin;case 6:return!!S.lowerWin;case 7:return!!S.refreshWin;case 8:return!!S.setWinSizeChars;case 9:return!!S.maximizeWin;case 10:return!!S.fullscreenWin;case 11:return!!S.getWinState;case 13:return!!S.getWinPosition;case 14:return!!S.getWinSizePixels;case 15:return!!S.getScreenSizePixels;case 16:return!!S.getCellSizePixels;case 18:return!!S.getWinSizeChars;case 19:return!!S.getScreenSizeChars;case 20:return!!S.getIconTitle;case 21:return!!S.getWinTitle;case 22:return!!S.pushTitle;case 23:return!!S.popTitle;case 24:return!!S.setWinLines}return!1}var A;(function(H){H[H.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",H[H.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"})(A||(r.WindowsOptionsReportType=A={}));let O=0;class U extends b.Disposable{getAttrData(){return this._curAttrData}constructor(S,M,B,F,G,J,se,te,z=new y.EscapeSequenceParser){super(),this._bufferService=S,this._charsetService=M,this._coreService=B,this._logService=F,this._optionsService=G,this._oscLinkService=J,this._coreMouseService=se,this._unicodeService=te,this._parser=z,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new g.StringToUtf32,this._utf8Decoder=new g.Utf8ToUtf32,this._workCell=new d.CellData,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=a.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=a.DEFAULT_ATTR_DATA.clone(),this._onRequestBell=this.register(new h.EventEmitter),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this.register(new h.EventEmitter),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this.register(new h.EventEmitter),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this.register(new h.EventEmitter),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this.register(new h.EventEmitter),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this.register(new h.EventEmitter),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this.register(new h.EventEmitter),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this.register(new h.EventEmitter),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this.register(new h.EventEmitter),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this.register(new h.EventEmitter),this.onLineFeed=this._onLineFeed.event,this._onScroll=this.register(new h.EventEmitter),this.onScroll=this._onScroll.event,this._onTitleChange=this.register(new h.EventEmitter),this.onTitleChange=this._onTitleChange.event,this._onColor=this.register(new h.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 $(this._bufferService),this._activeBuffer=this._bufferService.buffer,this.register(this._bufferService.buffers.onBufferActivate(P=>this._activeBuffer=P.activeBuffer)),this._parser.setCsiHandlerFallback((P,Z)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(P),params:Z.toArray()})}),this._parser.setEscHandlerFallback(P=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(P)})}),this._parser.setExecuteHandlerFallback(P=>{this._logService.debug("Unknown EXECUTE code: ",{code:P})}),this._parser.setOscHandlerFallback((P,Z,K)=>{this._logService.debug("Unknown OSC code: ",{identifier:P,action:Z,data:K})}),this._parser.setDcsHandlerFallback((P,Z,K)=>{Z==="HOOK"&&(K=K.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(P),action:Z,payload:K})}),this._parser.setPrintHandler((P,Z,K)=>this.print(P,Z,K)),this._parser.registerCsiHandler({final:"@"},P=>this.insertChars(P)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},P=>this.scrollLeft(P)),this._parser.registerCsiHandler({final:"A"},P=>this.cursorUp(P)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},P=>this.scrollRight(P)),this._parser.registerCsiHandler({final:"B"},P=>this.cursorDown(P)),this._parser.registerCsiHandler({final:"C"},P=>this.cursorForward(P)),this._parser.registerCsiHandler({final:"D"},P=>this.cursorBackward(P)),this._parser.registerCsiHandler({final:"E"},P=>this.cursorNextLine(P)),this._parser.registerCsiHandler({final:"F"},P=>this.cursorPrecedingLine(P)),this._parser.registerCsiHandler({final:"G"},P=>this.cursorCharAbsolute(P)),this._parser.registerCsiHandler({final:"H"},P=>this.cursorPosition(P)),this._parser.registerCsiHandler({final:"I"},P=>this.cursorForwardTab(P)),this._parser.registerCsiHandler({final:"J"},P=>this.eraseInDisplay(P,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},P=>this.eraseInDisplay(P,!0)),this._parser.registerCsiHandler({final:"K"},P=>this.eraseInLine(P,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},P=>this.eraseInLine(P,!0)),this._parser.registerCsiHandler({final:"L"},P=>this.insertLines(P)),this._parser.registerCsiHandler({final:"M"},P=>this.deleteLines(P)),this._parser.registerCsiHandler({final:"P"},P=>this.deleteChars(P)),this._parser.registerCsiHandler({final:"S"},P=>this.scrollUp(P)),this._parser.registerCsiHandler({final:"T"},P=>this.scrollDown(P)),this._parser.registerCsiHandler({final:"X"},P=>this.eraseChars(P)),this._parser.registerCsiHandler({final:"Z"},P=>this.cursorBackwardTab(P)),this._parser.registerCsiHandler({final:"`"},P=>this.charPosAbsolute(P)),this._parser.registerCsiHandler({final:"a"},P=>this.hPositionRelative(P)),this._parser.registerCsiHandler({final:"b"},P=>this.repeatPrecedingCharacter(P)),this._parser.registerCsiHandler({final:"c"},P=>this.sendDeviceAttributesPrimary(P)),this._parser.registerCsiHandler({prefix:">",final:"c"},P=>this.sendDeviceAttributesSecondary(P)),this._parser.registerCsiHandler({final:"d"},P=>this.linePosAbsolute(P)),this._parser.registerCsiHandler({final:"e"},P=>this.vPositionRelative(P)),this._parser.registerCsiHandler({final:"f"},P=>this.hVPosition(P)),this._parser.registerCsiHandler({final:"g"},P=>this.tabClear(P)),this._parser.registerCsiHandler({final:"h"},P=>this.setMode(P)),this._parser.registerCsiHandler({prefix:"?",final:"h"},P=>this.setModePrivate(P)),this._parser.registerCsiHandler({final:"l"},P=>this.resetMode(P)),this._parser.registerCsiHandler({prefix:"?",final:"l"},P=>this.resetModePrivate(P)),this._parser.registerCsiHandler({final:"m"},P=>this.charAttributes(P)),this._parser.registerCsiHandler({final:"n"},P=>this.deviceStatus(P)),this._parser.registerCsiHandler({prefix:"?",final:"n"},P=>this.deviceStatusPrivate(P)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},P=>this.softReset(P)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},P=>this.setCursorStyle(P)),this._parser.registerCsiHandler({final:"r"},P=>this.setScrollRegion(P)),this._parser.registerCsiHandler({final:"s"},P=>this.saveCursor(P)),this._parser.registerCsiHandler({final:"t"},P=>this.windowOptions(P)),this._parser.registerCsiHandler({final:"u"},P=>this.restoreCursor(P)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},P=>this.insertColumns(P)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},P=>this.deleteColumns(P)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},P=>this.selectProtected(P)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},P=>this.requestMode(P,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},P=>this.requestMode(P,!1)),this._parser.setExecuteHandler(c.C0.BEL,()=>this.bell()),this._parser.setExecuteHandler(c.C0.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(c.C0.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(c.C0.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(c.C0.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(c.C0.BS,()=>this.backspace()),this._parser.setExecuteHandler(c.C0.HT,()=>this.tab()),this._parser.setExecuteHandler(c.C0.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(c.C0.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(c.C1.IND,()=>this.index()),this._parser.setExecuteHandler(c.C1.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(c.C1.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new L.OscHandler(P=>(this.setTitle(P),this.setIconName(P),!0))),this._parser.registerOscHandler(1,new L.OscHandler(P=>this.setIconName(P))),this._parser.registerOscHandler(2,new L.OscHandler(P=>this.setTitle(P))),this._parser.registerOscHandler(4,new L.OscHandler(P=>this.setOrReportIndexedColor(P))),this._parser.registerOscHandler(8,new L.OscHandler(P=>this.setHyperlink(P))),this._parser.registerOscHandler(10,new L.OscHandler(P=>this.setOrReportFgColor(P))),this._parser.registerOscHandler(11,new L.OscHandler(P=>this.setOrReportBgColor(P))),this._parser.registerOscHandler(12,new L.OscHandler(P=>this.setOrReportCursorColor(P))),this._parser.registerOscHandler(104,new L.OscHandler(P=>this.restoreIndexedColor(P))),this._parser.registerOscHandler(110,new L.OscHandler(P=>this.restoreFgColor(P))),this._parser.registerOscHandler(111,new L.OscHandler(P=>this.restoreBgColor(P))),this._parser.registerOscHandler(112,new L.OscHandler(P=>this.restoreCursorColor(P))),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 P in m.CHARSETS)this._parser.registerEscHandler({intermediates:"(",final:P},()=>this.selectCharset("("+P)),this._parser.registerEscHandler({intermediates:")",final:P},()=>this.selectCharset(")"+P)),this._parser.registerEscHandler({intermediates:"*",final:P},()=>this.selectCharset("*"+P)),this._parser.registerEscHandler({intermediates:"+",final:P},()=>this.selectCharset("+"+P)),this._parser.registerEscHandler({intermediates:"-",final:P},()=>this.selectCharset("-"+P)),this._parser.registerEscHandler({intermediates:".",final:P},()=>this.selectCharset("."+P)),this._parser.registerEscHandler({intermediates:"/",final:P},()=>this.selectCharset("/"+P));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(P=>(this._logService.error("Parsing error: ",P),P)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new x.DcsHandler((P,Z)=>this.requestStatusString(P,Z)))}_preserveStack(S,M,B,F){this._parseStack.paused=!0,this._parseStack.cursorStartX=S,this._parseStack.cursorStartY=M,this._parseStack.decodedLength=B,this._parseStack.position=F}_logSlowResolvingAsync(S){this._logService.logLevel<=k.LogLevelEnum.WARN&&Promise.race([S,new Promise((M,B)=>setTimeout(()=>B("#SLOW_TIMEOUT"),5e3))]).catch(M=>{if(M!=="#SLOW_TIMEOUT")throw M;console.warn("async parser handler taking longer than 5000 ms")})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(S,M){let B,F=this._activeBuffer.x,G=this._activeBuffer.y,J=0;const se=this._parseStack.paused;if(se){if(B=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,M))return this._logSlowResolvingAsync(B),B;F=this._parseStack.cursorStartX,G=this._parseStack.cursorStartY,this._parseStack.paused=!1,S.length>I&&(J=this._parseStack.position+I)}if(this._logService.logLevel<=k.LogLevelEnum.DEBUG&&this._logService.debug("parsing data"+(typeof S=="string"?` "${S}"`:` "${Array.prototype.map.call(S,P=>String.fromCharCode(P)).join("")}"`),typeof S=="string"?S.split("").map(P=>P.charCodeAt(0)):S),this._parseBuffer.length<S.length&&this._parseBuffer.length<I&&(this._parseBuffer=new Uint32Array(Math.min(S.length,I))),se||this._dirtyRowTracker.clearRange(),S.length>I)for(let P=J;P<S.length;P+=I){const Z=P+I<S.length?P+I:S.length,K=typeof S=="string"?this._stringDecoder.decode(S.substring(P,Z),this._parseBuffer):this._utf8Decoder.decode(S.subarray(P,Z),this._parseBuffer);if(B=this._parser.parse(this._parseBuffer,K))return this._preserveStack(F,G,K,P),this._logSlowResolvingAsync(B),B}else if(!se){const P=typeof S=="string"?this._stringDecoder.decode(S,this._parseBuffer):this._utf8Decoder.decode(S,this._parseBuffer);if(B=this._parser.parse(this._parseBuffer,P))return this._preserveStack(F,G,P,0),this._logSlowResolvingAsync(B),B}this._activeBuffer.x===F&&this._activeBuffer.y===G||this._onCursorMove.fire();const te=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),z=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);z<this._bufferService.rows&&this._onRequestRefreshRows.fire(Math.min(z,this._bufferService.rows-1),Math.min(te,this._bufferService.rows-1))}print(S,M,B){let F,G;const J=this._charsetService.charset,se=this._optionsService.rawOptions.screenReaderMode,te=this._bufferService.cols,z=this._coreService.decPrivateModes.wraparound,P=this._coreService.modes.insertMode,Z=this._curAttrData;let K=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&B-M>0&&K.getWidth(this._activeBuffer.x-1)===2&&K.setCellFromCodepoint(this._activeBuffer.x-1,0,1,Z);let ae=this._parser.precedingJoinState;for(let re=M;re<B;++re){if(F=S[re],F<127&&J){const Ae=J[String.fromCharCode(F)];Ae&&(F=Ae.charCodeAt(0))}const Se=this._unicodeService.charProperties(F,ae);G=C.UnicodeService.extractWidth(Se);const we=C.UnicodeService.extractShouldJoin(Se),De=we?C.UnicodeService.extractWidth(ae):0;if(ae=Se,se&&this._onA11yChar.fire((0,g.stringFromCodePoint)(F)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+G-De>te){if(z){const Ae=K;let pe=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),K=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),De>0&&K instanceof a.BufferLine&&K.copyCellsFrom(Ae,pe,0,De,!1);pe<te;)Ae.setCellFromCodepoint(pe++,0,1,Z)}else if(this._activeBuffer.x=te-1,G===2)continue}if(we&&this._activeBuffer.x){const Ae=K.getWidth(this._activeBuffer.x-1)?1:2;K.addCodepointToCell(this._activeBuffer.x-Ae,F,G);for(let pe=G-De;--pe>=0;)K.setCellFromCodepoint(this._activeBuffer.x++,0,0,Z)}else if(P&&(K.insertCells(this._activeBuffer.x,G-De,this._activeBuffer.getNullCell(Z)),K.getWidth(te-1)===2&&K.setCellFromCodepoint(te-1,l.NULL_CELL_CODE,l.NULL_CELL_WIDTH,Z)),K.setCellFromCodepoint(this._activeBuffer.x++,F,G,Z),G>0)for(;--G;)K.setCellFromCodepoint(this._activeBuffer.x++,0,0,Z)}this._parser.precedingJoinState=ae,this._activeBuffer.x<te&&B-M>0&&K.getWidth(this._activeBuffer.x)===0&&!K.hasContent(this._activeBuffer.x)&&K.setCellFromCodepoint(this._activeBuffer.x,0,1,Z),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(S,M){return S.final!=="t"||S.prefix||S.intermediates?this._parser.registerCsiHandler(S,M):this._parser.registerCsiHandler(S,B=>!T(B.params[0],this._optionsService.rawOptions.windowOptions)||M(B))}registerDcsHandler(S,M){return this._parser.registerDcsHandler(S,new x.DcsHandler(M))}registerEscHandler(S,M){return this._parser.registerEscHandler(S,M)}registerOscHandler(S,M){return this._parser.registerOscHandler(S,new L.OscHandler(M))}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 S;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&&((S=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y))!=null&&S.isWrapped)){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;const M=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);M.hasWidth(this._activeBuffer.x)&&!M.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;const S=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-S),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(S=this._bufferService.cols-1){this._activeBuffer.x=Math.min(S,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(S,M){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=S,this._activeBuffer.y=this._activeBuffer.scrollTop+M):(this._activeBuffer.x=S,this._activeBuffer.y=M),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(S,M){this._restrictCursor(),this._setCursor(this._activeBuffer.x+S,this._activeBuffer.y+M)}cursorUp(S){const M=this._activeBuffer.y-this._activeBuffer.scrollTop;return M>=0?this._moveCursor(0,-Math.min(M,S.params[0]||1)):this._moveCursor(0,-(S.params[0]||1)),!0}cursorDown(S){const M=this._activeBuffer.scrollBottom-this._activeBuffer.y;return M>=0?this._moveCursor(0,Math.min(M,S.params[0]||1)):this._moveCursor(0,S.params[0]||1),!0}cursorForward(S){return this._moveCursor(S.params[0]||1,0),!0}cursorBackward(S){return this._moveCursor(-(S.params[0]||1),0),!0}cursorNextLine(S){return this.cursorDown(S),this._activeBuffer.x=0,!0}cursorPrecedingLine(S){return this.cursorUp(S),this._activeBuffer.x=0,!0}cursorCharAbsolute(S){return this._setCursor((S.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(S){return this._setCursor(S.length>=2?(S.params[1]||1)-1:0,(S.params[0]||1)-1),!0}charPosAbsolute(S){return this._setCursor((S.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(S){return this._moveCursor(S.params[0]||1,0),!0}linePosAbsolute(S){return this._setCursor(this._activeBuffer.x,(S.params[0]||1)-1),!0}vPositionRelative(S){return this._moveCursor(0,S.params[0]||1),!0}hVPosition(S){return this.cursorPosition(S),!0}tabClear(S){const M=S.params[0];return M===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:M===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(S){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let M=S.params[0]||1;for(;M--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(S){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let M=S.params[0]||1;for(;M--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(S){const M=S.params[0];return M===1&&(this._curAttrData.bg|=536870912),M!==2&&M!==0||(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(S,M,B,F=!1,G=!1){const J=this._activeBuffer.lines.get(this._activeBuffer.ybase+S);J.replaceCells(M,B,this._activeBuffer.getNullCell(this._eraseAttrData()),G),F&&(J.isWrapped=!1)}_resetBufferLine(S,M=!1){const B=this._activeBuffer.lines.get(this._activeBuffer.ybase+S);B&&(B.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),M),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+S),B.isWrapped=!1)}eraseInDisplay(S,M=!1){let B;switch(this._restrictCursor(this._bufferService.cols),S.params[0]){case 0:for(B=this._activeBuffer.y,this._dirtyRowTracker.markDirty(B),this._eraseInBufferLine(B++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,M);B<this._bufferService.rows;B++)this._resetBufferLine(B,M);this._dirtyRowTracker.markDirty(B);break;case 1:for(B=this._activeBuffer.y,this._dirtyRowTracker.markDirty(B),this._eraseInBufferLine(B,0,this._activeBuffer.x+1,!0,M),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(B+1).isWrapped=!1);B--;)this._resetBufferLine(B,M);this._dirtyRowTracker.markDirty(0);break;case 2:for(B=this._bufferService.rows,this._dirtyRowTracker.markDirty(B-1);B--;)this._resetBufferLine(B,M);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(S,M=!1){switch(this._restrictCursor(this._bufferService.cols),S.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,M);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,M);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,M)}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(S){this._restrictCursor();let M=S.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const B=this._activeBuffer.ybase+this._activeBuffer.y,F=this._bufferService.rows-1-this._activeBuffer.scrollBottom,G=this._bufferService.rows-1+this._activeBuffer.ybase-F+1;for(;M--;)this._activeBuffer.lines.splice(G-1,1),this._activeBuffer.lines.splice(B,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(S){this._restrictCursor();let M=S.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const B=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;M--;)this._activeBuffer.lines.splice(B,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(S){this._restrictCursor();const M=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return M&&(M.insertCells(this._activeBuffer.x,S.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(S){this._restrictCursor();const M=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return M&&(M.deleteCells(this._activeBuffer.x,S.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(S){let M=S.params[0]||1;for(;M--;)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(S){let M=S.params[0]||1;for(;M--;)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(a.DEFAULT_ATTR_DATA));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(S){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const M=S.params[0]||1;for(let B=this._activeBuffer.scrollTop;B<=this._activeBuffer.scrollBottom;++B){const F=this._activeBuffer.lines.get(this._activeBuffer.ybase+B);F.deleteCells(0,M,this._activeBuffer.getNullCell(this._eraseAttrData())),F.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(S){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const M=S.params[0]||1;for(let B=this._activeBuffer.scrollTop;B<=this._activeBuffer.scrollBottom;++B){const F=this._activeBuffer.lines.get(this._activeBuffer.ybase+B);F.insertCells(0,M,this._activeBuffer.getNullCell(this._eraseAttrData())),F.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(S){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const M=S.params[0]||1;for(let B=this._activeBuffer.scrollTop;B<=this._activeBuffer.scrollBottom;++B){const F=this._activeBuffer.lines.get(this._activeBuffer.ybase+B);F.insertCells(this._activeBuffer.x,M,this._activeBuffer.getNullCell(this._eraseAttrData())),F.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(S){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;const M=S.params[0]||1;for(let B=this._activeBuffer.scrollTop;B<=this._activeBuffer.scrollBottom;++B){const F=this._activeBuffer.lines.get(this._activeBuffer.ybase+B);F.deleteCells(this._activeBuffer.x,M,this._activeBuffer.getNullCell(this._eraseAttrData())),F.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(S){this._restrictCursor();const M=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return M&&(M.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(S.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(S){const M=this._parser.precedingJoinState;if(!M)return!0;const B=S.params[0]||1,F=C.UnicodeService.extractWidth(M),G=this._activeBuffer.x-F,J=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(G),se=new Uint32Array(J.length*B);let te=0;for(let P=0;P<J.length;){const Z=J.codePointAt(P)||0;se[te++]=Z,P+=Z>65535?2:1}let z=te;for(let P=1;P<B;++P)se.copyWithin(z,0,te),z+=te;return this.print(se,0,z),!0}sendDeviceAttributesPrimary(S){return S.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(c.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(c.C0.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(S){return S.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(c.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(c.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(S.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(c.C0.ESC+"[>83;40003;0c")),!0}_is(S){return(this._optionsService.rawOptions.termName+"").indexOf(S)===0}setMode(S){for(let M=0;M<S.length;M++)switch(S.params[M]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0}return!0}setModePrivate(S){for(let M=0;M<S.length;M++)switch(S.params[M]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,m.DEFAULT_CHARSET),this._charsetService.setgCharset(1,m.DEFAULT_CHARSET),this._charsetService.setgCharset(2,m.DEFAULT_CHARSET),this._charsetService.setgCharset(3,m.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(S){for(let M=0;M<S.length;M++)switch(S.params[M]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1}return!0}resetModePrivate(S){for(let M=0;M<S.length;M++)switch(S.params[M]){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(),S.params[M]===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(S,M){const B=this._coreService.decPrivateModes,{activeProtocol:F,activeEncoding:G}=this._coreMouseService,J=this._coreService,{buffers:se,cols:te}=this._bufferService,{active:z,alt:P}=se,Z=this._optionsService.rawOptions,K=we=>we?1:2,ae=S.params[0];return re=ae,Se=M?ae===2?4:ae===4?K(J.modes.insertMode):ae===12?3:ae===20?K(Z.convertEol):0:ae===1?K(B.applicationCursorKeys):ae===3?Z.windowOptions.setWinLines?te===80?2:te===132?1:0:0:ae===6?K(B.origin):ae===7?K(B.wraparound):ae===8?3:ae===9?K(F==="X10"):ae===12?K(Z.cursorBlink):ae===25?K(!J.isCursorHidden):ae===45?K(B.reverseWraparound):ae===66?K(B.applicationKeypad):ae===67?4:ae===1e3?K(F==="VT200"):ae===1002?K(F==="DRAG"):ae===1003?K(F==="ANY"):ae===1004?K(B.sendFocus):ae===1005?4:ae===1006?K(G==="SGR"):ae===1015?4:ae===1016?K(G==="SGR_PIXELS"):ae===1048?1:ae===47||ae===1047||ae===1049?K(z===P):ae===2004?K(B.bracketedPasteMode):0,J.triggerDataEvent(`${c.C0.ESC}[${M?"":"?"}${re};${Se}$y`),!0;var re,Se}_updateAttrColor(S,M,B,F,G){return M===2?(S|=50331648,S&=-16777216,S|=w.AttributeData.fromColorRGB([B,F,G])):M===5&&(S&=-50331904,S|=33554432|255&B),S}_extractColor(S,M,B){const F=[0,0,-1,0,0,0];let G=0,J=0;do{if(F[J+G]=S.params[M+J],S.hasSubParams(M+J)){const se=S.getSubParams(M+J);let te=0;do F[1]===5&&(G=1),F[J+te+1+G]=se[te];while(++te<se.length&&te+J+1+G<F.length);break}if(F[1]===5&&J+G>=2||F[1]===2&&J+G>=5)break;F[1]&&(G=1)}while(++J+M<S.length&&J+G<F.length);for(let se=2;se<F.length;++se)F[se]===-1&&(F[se]=0);switch(F[0]){case 38:B.fg=this._updateAttrColor(B.fg,F[1],F[3],F[4],F[5]);break;case 48:B.bg=this._updateAttrColor(B.bg,F[1],F[3],F[4],F[5]);break;case 58:B.extended=B.extended.clone(),B.extended.underlineColor=this._updateAttrColor(B.extended.underlineColor,F[1],F[3],F[4],F[5])}return J}_processUnderline(S,M){M.extended=M.extended.clone(),(!~S||S>5)&&(S=1),M.extended.underlineStyle=S,M.fg|=268435456,S===0&&(M.fg&=-268435457),M.updateExtended()}_processSGR0(S){S.fg=a.DEFAULT_ATTR_DATA.fg,S.bg=a.DEFAULT_ATTR_DATA.bg,S.extended=S.extended.clone(),S.extended.underlineStyle=0,S.extended.underlineColor&=-67108864,S.updateExtended()}charAttributes(S){if(S.length===1&&S.params[0]===0)return this._processSGR0(this._curAttrData),!0;const M=S.length;let B;const F=this._curAttrData;for(let G=0;G<M;G++)B=S.params[G],B>=30&&B<=37?(F.fg&=-50331904,F.fg|=16777216|B-30):B>=40&&B<=47?(F.bg&=-50331904,F.bg|=16777216|B-40):B>=90&&B<=97?(F.fg&=-50331904,F.fg|=16777224|B-90):B>=100&&B<=107?(F.bg&=-50331904,F.bg|=16777224|B-100):B===0?this._processSGR0(F):B===1?F.fg|=134217728:B===3?F.bg|=67108864:B===4?(F.fg|=268435456,this._processUnderline(S.hasSubParams(G)?S.getSubParams(G)[0]:1,F)):B===5?F.fg|=536870912:B===7?F.fg|=67108864:B===8?F.fg|=1073741824:B===9?F.fg|=2147483648:B===2?F.bg|=134217728:B===21?this._processUnderline(2,F):B===22?(F.fg&=-134217729,F.bg&=-134217729):B===23?F.bg&=-67108865:B===24?(F.fg&=-268435457,this._processUnderline(0,F)):B===25?F.fg&=-536870913:B===27?F.fg&=-67108865:B===28?F.fg&=-1073741825:B===29?F.fg&=2147483647:B===39?(F.fg&=-67108864,F.fg|=16777215&a.DEFAULT_ATTR_DATA.fg):B===49?(F.bg&=-67108864,F.bg|=16777215&a.DEFAULT_ATTR_DATA.bg):B===38||B===48||B===58?G+=this._extractColor(S,G,F):B===53?F.bg|=1073741824:B===55?F.bg&=-1073741825:B===59?(F.extended=F.extended.clone(),F.extended.underlineColor=-1,F.updateExtended()):B===100?(F.fg&=-67108864,F.fg|=16777215&a.DEFAULT_ATTR_DATA.fg,F.bg&=-67108864,F.bg|=16777215&a.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",B);return!0}deviceStatus(S){switch(S.params[0]){case 5:this._coreService.triggerDataEvent(`${c.C0.ESC}[0n`);break;case 6:const M=this._activeBuffer.y+1,B=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${c.C0.ESC}[${M};${B}R`)}return!0}deviceStatusPrivate(S){if(S.params[0]===6){const M=this._activeBuffer.y+1,B=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${c.C0.ESC}[?${M};${B}R`)}return!0}softReset(S){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=a.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(S){const M=S.params[0]||1;switch(M){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 B=M%2==1;return this._optionsService.options.cursorBlink=B,!0}setScrollRegion(S){const M=S.params[0]||1;let B;return(S.length<2||(B=S.params[1])>this._bufferService.rows||B===0)&&(B=this._bufferService.rows),B>M&&(this._activeBuffer.scrollTop=M-1,this._activeBuffer.scrollBottom=B-1,this._setCursor(0,0)),!0}windowOptions(S){if(!T(S.params[0],this._optionsService.rawOptions.windowOptions))return!0;const M=S.length>1?S.params[1]:0;switch(S.params[0]){case 14:M!==2&&this._onRequestWindowsOptionsReport.fire(A.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(A.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${c.C0.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:M!==0&&M!==2||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),M!==0&&M!==1||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:M!==0&&M!==2||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),M!==0&&M!==1||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0}saveCursor(S){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(S){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(S){return this._windowTitle=S,this._onTitleChange.fire(S),!0}setIconName(S){return this._iconName=S,!0}setOrReportIndexedColor(S){const M=[],B=S.split(";");for(;B.length>1;){const F=B.shift(),G=B.shift();if(/^\d+$/.exec(F)){const J=parseInt(F);if(V(J))if(G==="?")M.push({type:0,index:J});else{const se=(0,E.parseColor)(G);se&&M.push({type:1,index:J,color:se})}}}return M.length&&this._onColor.fire(M),!0}setHyperlink(S){const M=S.split(";");return!(M.length<2)&&(M[1]?this._createHyperlink(M[0],M[1]):!M[0]&&this._finishHyperlink())}_createHyperlink(S,M){this._getCurrentLinkId()&&this._finishHyperlink();const B=S.split(":");let F;const G=B.findIndex(J=>J.startsWith("id="));return G!==-1&&(F=B[G].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:F,uri:M}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(S,M){const B=S.split(";");for(let F=0;F<B.length&&!(M>=this._specialColors.length);++F,++M)if(B[F]==="?")this._onColor.fire([{type:0,index:this._specialColors[M]}]);else{const G=(0,E.parseColor)(B[F]);G&&this._onColor.fire([{type:1,index:this._specialColors[M],color:G}])}return!0}setOrReportFgColor(S){return this._setOrReportSpecialColor(S,0)}setOrReportBgColor(S){return this._setOrReportSpecialColor(S,1)}setOrReportCursorColor(S){return this._setOrReportSpecialColor(S,2)}restoreIndexedColor(S){if(!S)return this._onColor.fire([{type:2}]),!0;const M=[],B=S.split(";");for(let F=0;F<B.length;++F)if(/^\d+$/.exec(B[F])){const G=parseInt(B[F]);V(G)&&M.push({type:2,index:G})}return M.length&&this._onColor.fire(M),!0}restoreFgColor(S){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(S){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(S){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,m.DEFAULT_CHARSET),!0}selectCharset(S){return S.length!==2?(this.selectDefaultCharset(),!0):(S[0]==="/"||this._charsetService.setgCharset(R[S[0]],m.CHARSETS[S[1]]||m.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 S=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,S,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=a.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=a.DEFAULT_ATTR_DATA.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal}setgLevel(S){return this._charsetService.setgLevel(S),!0}screenAlignmentPattern(){const S=new d.CellData;S.content=4194373,S.fg=this._curAttrData.fg,S.bg=this._curAttrData.bg,this._setCursor(0,0);for(let M=0;M<this._bufferService.rows;++M){const B=this._activeBuffer.ybase+this._activeBuffer.y+M,F=this._activeBuffer.lines.get(B);F&&(F.fill(S),F.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(S,M){const B=this._bufferService.buffer,F=this._optionsService.rawOptions;return(G=>(this._coreService.triggerDataEvent(`${c.C0.ESC}${G}${c.C0.ESC}\\`),!0))(S==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:S==='"p'?'P1$r61;1"p':S==="r"?`P1$r${B.scrollTop+1};${B.scrollBottom+1}r`:S==="m"?"P1$r0m":S===" q"?`P1$r${{block:2,underline:4,bar:6}[F.cursorStyle]-(F.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(S,M){this._dirtyRowTracker.markRangeDirty(S,M)}}r.InputHandler=U;let $=class{constructor(H){this._bufferService=H,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(H){H<this.start?this.start=H:H>this.end&&(this.end=H)}markRangeDirty(H,S){H>S&&(O=H,H=S,S=O),H<this.start&&(this.start=H),S>this.end&&(this.end=S)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};function V(H){return 0<=H&&H<256}$=f([_(0,k.IBufferService)],$)},844:(p,r)=>{function o(f){for(const _ of f)_.dispose();f.length=0}Object.defineProperty(r,"__esModule",{value:!0}),r.getDisposeArrayDisposable=r.disposeArray=r.toDisposable=r.MutableDisposable=r.Disposable=void 0,r.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 _=this._disposables.indexOf(f);_!==-1&&this._disposables.splice(_,1)}},r.MutableDisposable=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(f){var _;this._isDisposed||f===this._value||((_=this._value)==null||_.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}},r.toDisposable=function(f){return{dispose:f}},r.disposeArray=o,r.getDisposeArrayDisposable=function(f){return{dispose:()=>o(f)}}},1505:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.FourKeyMap=r.TwoKeyMap=void 0;class o{constructor(){this._data={}}set(_,c,m){this._data[_]||(this._data[_]={}),this._data[_][c]=m}get(_,c){return this._data[_]?this._data[_][c]:void 0}clear(){this._data={}}}r.TwoKeyMap=o,r.FourKeyMap=class{constructor(){this._data=new o}set(f,_,c,m,y){this._data.get(f,_)||this._data.set(f,_,new o),this._data.get(f,_).set(c,m,y)}get(f,_,c,m){var y;return(y=this._data.get(f,_))==null?void 0:y.get(c,m)}clear(){this._data.clear()}}},6114:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.isChromeOS=r.isLinux=r.isWindows=r.isIphone=r.isIpad=r.isMac=r.getSafariVersion=r.isSafari=r.isLegacyEdge=r.isFirefox=r.isNode=void 0,r.isNode=typeof process<"u"&&"title"in process;const o=r.isNode?"node":navigator.userAgent,f=r.isNode?"node":navigator.platform;r.isFirefox=o.includes("Firefox"),r.isLegacyEdge=o.includes("Edge"),r.isSafari=/^((?!chrome|android).)*safari/i.test(o),r.getSafariVersion=function(){if(!r.isSafari)return 0;const _=o.match(/Version\/(\d+)/);return _===null||_.length<2?0:parseInt(_[1])},r.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(f),r.isIpad=f==="iPad",r.isIphone=f==="iPhone",r.isWindows=["Windows","Win16","Win32","WinCE"].includes(f),r.isLinux=f.indexOf("Linux")>=0,r.isChromeOS=/\bCrOS\b/.test(o)},6106:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.SortedList=void 0;let o=0;r.SortedList=class{constructor(f){this._getKey=f,this._array=[]}clear(){this._array.length=0}insert(f){this._array.length!==0?(o=this._search(this._getKey(f)),this._array.splice(o,0,f)):this._array.push(f)}delete(f){if(this._array.length===0)return!1;const _=this._getKey(f);if(_===void 0||(o=this._search(_),o===-1)||this._getKey(this._array[o])!==_)return!1;do if(this._array[o]===f)return this._array.splice(o,1),!0;while(++o<this._array.length&&this._getKey(this._array[o])===_);return!1}*getKeyIterator(f){if(this._array.length!==0&&(o=this._search(f),!(o<0||o>=this._array.length)&&this._getKey(this._array[o])===f))do yield this._array[o];while(++o<this._array.length&&this._getKey(this._array[o])===f)}forEachByKey(f,_){if(this._array.length!==0&&(o=this._search(f),!(o<0||o>=this._array.length)&&this._getKey(this._array[o])===f))do _(this._array[o]);while(++o<this._array.length&&this._getKey(this._array[o])===f)}values(){return[...this._array].values()}_search(f){let _=0,c=this._array.length-1;for(;c>=_;){let m=_+c>>1;const y=this._getKey(this._array[m]);if(y>f)c=m-1;else{if(!(y<f)){for(;m>0&&this._getKey(this._array[m-1])===f;)m--;return m}_=m+1}}return _}}},7226:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.DebouncedIdleTask=r.IdleTaskQueue=r.PriorityTaskQueue=void 0;const f=o(6114);class _{constructor(){this._tasks=[],this._i=0}enqueue(y){this._tasks.push(y),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(y){this._idleCallback=void 0;let b=0,g=0,a=y.timeRemaining(),h=0;for(;this._i<this._tasks.length;){if(b=Date.now(),this._tasks[this._i]()||this._i++,b=Math.max(1,Date.now()-b),g=Math.max(b,g),h=y.timeRemaining(),1.5*g>h)return a-b<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(a-b))}ms`),void this._start();a=h}this.clear()}}class c extends _{_requestCallback(y){return setTimeout(()=>y(this._createDeadline(16)))}_cancelCallback(y){clearTimeout(y)}_createDeadline(y){const b=Date.now()+y;return{timeRemaining:()=>Math.max(0,b-Date.now())}}}r.PriorityTaskQueue=c,r.IdleTaskQueue=!f.isNode&&"requestIdleCallback"in window?class extends _{_requestCallback(m){return requestIdleCallback(m)}_cancelCallback(m){cancelIdleCallback(m)}}:c,r.DebouncedIdleTask=class{constructor(){this._queue=new r.IdleTaskQueue}set(m){this._queue.clear(),this._queue.enqueue(m)}flush(){this._queue.flush()}}},9282:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.updateWindowsModeWrappedState=void 0;const f=o(643);r.updateWindowsModeWrappedState=function(_){const c=_.buffer.lines.get(_.buffer.ybase+_.buffer.y-1),m=c==null?void 0:c.get(_.cols-1),y=_.buffer.lines.get(_.buffer.ybase+_.buffer.y);y&&m&&(y.isWrapped=m[f.CHAR_DATA_CODE_INDEX]!==f.NULL_CELL_CODE&&m[f.CHAR_DATA_CODE_INDEX]!==f.WHITESPACE_CELL_CODE)}},3734:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ExtendedAttrs=r.AttributeData=void 0;class o{constructor(){this.fg=0,this.bg=0,this.extended=new f}static toColorRGB(c){return[c>>>16&255,c>>>8&255,255&c]}static fromColorRGB(c){return(255&c[0])<<16|(255&c[1])<<8|255&c[2]}clone(){const c=new o;return c.fg=this.fg,c.bg=this.bg,c.extended=this.extended.clone(),c}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}}r.AttributeData=o;class f{get ext(){return this._urlId?-469762049&this._ext|this.underlineStyle<<26:this._ext}set ext(c){this._ext=c}get underlineStyle(){return this._urlId?5:(469762048&this._ext)>>26}set underlineStyle(c){this._ext&=-469762049,this._ext|=c<<26&469762048}get underlineColor(){return 67108863&this._ext}set underlineColor(c){this._ext&=-67108864,this._ext|=67108863&c}get urlId(){return this._urlId}set urlId(c){this._urlId=c}get underlineVariantOffset(){const c=(3758096384&this._ext)>>29;return c<0?4294967288^c:c}set underlineVariantOffset(c){this._ext&=536870911,this._ext|=c<<29&3758096384}constructor(c=0,m=0){this._ext=0,this._urlId=0,this._ext=c,this._urlId=m}clone(){return new f(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}}r.ExtendedAttrs=f},9092:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Buffer=r.MAX_BUFFER_SIZE=void 0;const f=o(6349),_=o(7226),c=o(3734),m=o(8437),y=o(4634),b=o(511),g=o(643),a=o(4863),h=o(7116);r.MAX_BUFFER_SIZE=4294967295,r.Buffer=class{constructor(l,d,w){this._hasScrollback=l,this._optionsService=d,this._bufferService=w,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=m.DEFAULT_ATTR_DATA.clone(),this.savedCharset=h.DEFAULT_CHARSET,this.markers=[],this._nullCell=b.CellData.fromCharData([0,g.NULL_CELL_CHAR,g.NULL_CELL_WIDTH,g.NULL_CELL_CODE]),this._whitespaceCell=b.CellData.fromCharData([0,g.WHITESPACE_CELL_CHAR,g.WHITESPACE_CELL_WIDTH,g.WHITESPACE_CELL_CODE]),this._isClearing=!1,this._memoryCleanupQueue=new _.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(l){return l?(this._nullCell.fg=l.fg,this._nullCell.bg=l.bg,this._nullCell.extended=l.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new c.ExtendedAttrs),this._nullCell}getWhitespaceCell(l){return l?(this._whitespaceCell.fg=l.fg,this._whitespaceCell.bg=l.bg,this._whitespaceCell.extended=l.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new c.ExtendedAttrs),this._whitespaceCell}getBlankLine(l,d){return new m.BufferLine(this._bufferService.cols,this.getNullCell(l),d)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){const l=this.ybase+this.y-this.ydisp;return l>=0&&l<this._rows}_getCorrectBufferLength(l){if(!this._hasScrollback)return l;const d=l+this._optionsService.rawOptions.scrollback;return d>r.MAX_BUFFER_SIZE?r.MAX_BUFFER_SIZE:d}fillViewportRows(l){if(this.lines.length===0){l===void 0&&(l=m.DEFAULT_ATTR_DATA);let d=this._rows;for(;d--;)this.lines.push(this.getBlankLine(l))}}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(l,d){const w=this.getNullCell(m.DEFAULT_ATTR_DATA);let k=0;const C=this._getCorrectBufferLength(d);if(C>this.lines.maxLength&&(this.lines.maxLength=C),this.lines.length>0){if(this._cols<l)for(let x=0;x<this.lines.length;x++)k+=+this.lines.get(x).resize(l,w);let L=0;if(this._rows<d)for(let x=this._rows;x<d;x++)this.lines.length<d+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new m.BufferLine(l,w)):this.ybase>0&&this.lines.length<=this.ybase+this.y+L+1?(this.ybase--,L++,this.ydisp>0&&this.ydisp--):this.lines.push(new m.BufferLine(l,w)));else for(let x=this._rows;x>d;x--)this.lines.length>d+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(C<this.lines.maxLength){const x=this.lines.length-C;x>0&&(this.lines.trimStart(x),this.ybase=Math.max(this.ybase-x,0),this.ydisp=Math.max(this.ydisp-x,0),this.savedY=Math.max(this.savedY-x,0)),this.lines.maxLength=C}this.x=Math.min(this.x,l-1),this.y=Math.min(this.y,d-1),L&&(this.y+=L),this.savedX=Math.min(this.savedX,l-1),this.scrollTop=0}if(this.scrollBottom=d-1,this._isReflowEnabled&&(this._reflow(l,d),this._cols>l))for(let L=0;L<this.lines.length;L++)k+=+this.lines.get(L).resize(l,w);this._cols=l,this._rows=d,this._memoryCleanupQueue.clear(),k>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let l=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,l=!1);let d=0;for(;this._memoryCleanupPosition<this.lines.length;)if(d+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),d>100)return!0;return l}get _isReflowEnabled(){const l=this._optionsService.rawOptions.windowsPty;return l&&l.buildNumber?this._hasScrollback&&l.backend==="conpty"&&l.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(l,d){this._cols!==l&&(l>this._cols?this._reflowLarger(l,d):this._reflowSmaller(l,d))}_reflowLarger(l,d){const w=(0,y.reflowLargerGetLinesToRemove)(this.lines,this._cols,l,this.ybase+this.y,this.getNullCell(m.DEFAULT_ATTR_DATA));if(w.length>0){const k=(0,y.reflowLargerCreateNewLayout)(this.lines,w);(0,y.reflowLargerApplyNewLayout)(this.lines,k.layout),this._reflowLargerAdjustViewport(l,d,k.countRemoved)}}_reflowLargerAdjustViewport(l,d,w){const k=this.getNullCell(m.DEFAULT_ATTR_DATA);let C=w;for(;C-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<d&&this.lines.push(new m.BufferLine(l,k))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-w,0)}_reflowSmaller(l,d){const w=this.getNullCell(m.DEFAULT_ATTR_DATA),k=[];let C=0;for(let L=this.lines.length-1;L>=0;L--){let x=this.lines.get(L);if(!x||!x.isWrapped&&x.getTrimmedLength()<=l)continue;const E=[x];for(;x.isWrapped&&L>0;)x=this.lines.get(--L),E.unshift(x);const R=this.ybase+this.y;if(R>=L&&R<L+E.length)continue;const I=E[E.length-1].getTrimmedLength(),T=(0,y.reflowSmallerGetNewLineLengths)(E,this._cols,l),A=T.length-E.length;let O;O=this.ybase===0&&this.y!==this.lines.length-1?Math.max(0,this.y-this.lines.maxLength+A):Math.max(0,this.lines.length-this.lines.maxLength+A);const U=[];for(let B=0;B<A;B++){const F=this.getBlankLine(m.DEFAULT_ATTR_DATA,!0);U.push(F)}U.length>0&&(k.push({start:L+E.length+C,newLines:U}),C+=U.length),E.push(...U);let $=T.length-1,V=T[$];V===0&&($--,V=T[$]);let H=E.length-A-1,S=I;for(;H>=0;){const B=Math.min(S,V);if(E[$]===void 0)break;if(E[$].copyCellsFrom(E[H],S-B,V-B,B,!0),V-=B,V===0&&($--,V=T[$]),S-=B,S===0){H--;const F=Math.max(H,0);S=(0,y.getWrappedLineTrimmedLength)(E,F,this._cols)}}for(let B=0;B<E.length;B++)T[B]<l&&E[B].setCell(T[B],w);let M=A-O;for(;M-- >0;)this.ybase===0?this.y<d-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+C)-d&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+A,this.ybase+d-1)}if(k.length>0){const L=[],x=[];for(let $=0;$<this.lines.length;$++)x.push(this.lines.get($));const E=this.lines.length;let R=E-1,I=0,T=k[I];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+C);let A=0;for(let $=Math.min(this.lines.maxLength-1,E+C-1);$>=0;$--)if(T&&T.start>R+A){for(let V=T.newLines.length-1;V>=0;V--)this.lines.set($--,T.newLines[V]);$++,L.push({index:R+1,amount:T.newLines.length}),A+=T.newLines.length,T=k[++I]}else this.lines.set($,x[R--]);let O=0;for(let $=L.length-1;$>=0;$--)L[$].index+=O,this.lines.onInsertEmitter.fire(L[$]),O+=L[$].amount;const U=Math.max(0,E+C-this.lines.maxLength);U>0&&this.lines.onTrimEmitter.fire(U)}}translateBufferLineToString(l,d,w=0,k){const C=this.lines.get(l);return C?C.translateToString(d,w,k):""}getWrappedRangeForLine(l){let d=l,w=l;for(;d>0&&this.lines.get(d).isWrapped;)d--;for(;w+1<this.lines.length&&this.lines.get(w+1).isWrapped;)w++;return{first:d,last:w}}setupTabStops(l){for(l!=null?this.tabs[l]||(l=this.prevStop(l)):(this.tabs={},l=0);l<this._cols;l+=this._optionsService.rawOptions.tabStopWidth)this.tabs[l]=!0}prevStop(l){for(l==null&&(l=this.x);!this.tabs[--l]&&l>0;);return l>=this._cols?this._cols-1:l<0?0:l}nextStop(l){for(l==null&&(l=this.x);!this.tabs[++l]&&l<this._cols;);return l>=this._cols?this._cols-1:l<0?0:l}clearMarkers(l){this._isClearing=!0;for(let d=0;d<this.markers.length;d++)this.markers[d].line===l&&(this.markers[d].dispose(),this.markers.splice(d--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let l=0;l<this.markers.length;l++)this.markers[l].dispose(),this.markers.splice(l--,1);this._isClearing=!1}addMarker(l){const d=new a.Marker(l);return this.markers.push(d),d.register(this.lines.onTrim(w=>{d.line-=w,d.line<0&&d.dispose()})),d.register(this.lines.onInsert(w=>{d.line>=w.index&&(d.line+=w.amount)})),d.register(this.lines.onDelete(w=>{d.line>=w.index&&d.line<w.index+w.amount&&d.dispose(),d.line>w.index&&(d.line-=w.amount)})),d.register(d.onDispose(()=>this._removeMarker(d))),d}_removeMarker(l){this._isClearing||this.markers.splice(this.markers.indexOf(l),1)}}},8437:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BufferLine=r.DEFAULT_ATTR_DATA=void 0;const f=o(3734),_=o(511),c=o(643),m=o(482);r.DEFAULT_ATTR_DATA=Object.freeze(new f.AttributeData);let y=0;class b{constructor(a,h,l=!1){this.isWrapped=l,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*a);const d=h||_.CellData.fromCharData([0,c.NULL_CELL_CHAR,c.NULL_CELL_WIDTH,c.NULL_CELL_CODE]);for(let w=0;w<a;++w)this.setCell(w,d);this.length=a}get(a){const h=this._data[3*a+0],l=2097151&h;return[this._data[3*a+1],2097152&h?this._combined[a]:l?(0,m.stringFromCodePoint)(l):"",h>>22,2097152&h?this._combined[a].charCodeAt(this._combined[a].length-1):l]}set(a,h){this._data[3*a+1]=h[c.CHAR_DATA_ATTR_INDEX],h[c.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[a]=h[1],this._data[3*a+0]=2097152|a|h[c.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*a+0]=h[c.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|h[c.CHAR_DATA_WIDTH_INDEX]<<22}getWidth(a){return this._data[3*a+0]>>22}hasWidth(a){return 12582912&this._data[3*a+0]}getFg(a){return this._data[3*a+1]}getBg(a){return this._data[3*a+2]}hasContent(a){return 4194303&this._data[3*a+0]}getCodePoint(a){const h=this._data[3*a+0];return 2097152&h?this._combined[a].charCodeAt(this._combined[a].length-1):2097151&h}isCombined(a){return 2097152&this._data[3*a+0]}getString(a){const h=this._data[3*a+0];return 2097152&h?this._combined[a]:2097151&h?(0,m.stringFromCodePoint)(2097151&h):""}isProtected(a){return 536870912&this._data[3*a+2]}loadCell(a,h){return y=3*a,h.content=this._data[y+0],h.fg=this._data[y+1],h.bg=this._data[y+2],2097152&h.content&&(h.combinedData=this._combined[a]),268435456&h.bg&&(h.extended=this._extendedAttrs[a]),h}setCell(a,h){2097152&h.content&&(this._combined[a]=h.combinedData),268435456&h.bg&&(this._extendedAttrs[a]=h.extended),this._data[3*a+0]=h.content,this._data[3*a+1]=h.fg,this._data[3*a+2]=h.bg}setCellFromCodepoint(a,h,l,d){268435456&d.bg&&(this._extendedAttrs[a]=d.extended),this._data[3*a+0]=h|l<<22,this._data[3*a+1]=d.fg,this._data[3*a+2]=d.bg}addCodepointToCell(a,h,l){let d=this._data[3*a+0];2097152&d?this._combined[a]+=(0,m.stringFromCodePoint)(h):2097151&d?(this._combined[a]=(0,m.stringFromCodePoint)(2097151&d)+(0,m.stringFromCodePoint)(h),d&=-2097152,d|=2097152):d=h|4194304,l&&(d&=-12582913,d|=l<<22),this._data[3*a+0]=d}insertCells(a,h,l){if((a%=this.length)&&this.getWidth(a-1)===2&&this.setCellFromCodepoint(a-1,0,1,l),h<this.length-a){const d=new _.CellData;for(let w=this.length-a-h-1;w>=0;--w)this.setCell(a+h+w,this.loadCell(a+w,d));for(let w=0;w<h;++w)this.setCell(a+w,l)}else for(let d=a;d<this.length;++d)this.setCell(d,l);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,l)}deleteCells(a,h,l){if(a%=this.length,h<this.length-a){const d=new _.CellData;for(let w=0;w<this.length-a-h;++w)this.setCell(a+w,this.loadCell(a+h+w,d));for(let w=this.length-h;w<this.length;++w)this.setCell(w,l)}else for(let d=a;d<this.length;++d)this.setCell(d,l);a&&this.getWidth(a-1)===2&&this.setCellFromCodepoint(a-1,0,1,l),this.getWidth(a)!==0||this.hasContent(a)||this.setCellFromCodepoint(a,0,1,l)}replaceCells(a,h,l,d=!1){if(d)for(a&&this.getWidth(a-1)===2&&!this.isProtected(a-1)&&this.setCellFromCodepoint(a-1,0,1,l),h<this.length&&this.getWidth(h-1)===2&&!this.isProtected(h)&&this.setCellFromCodepoint(h,0,1,l);a<h&&a<this.length;)this.isProtected(a)||this.setCell(a,l),a++;else for(a&&this.getWidth(a-1)===2&&this.setCellFromCodepoint(a-1,0,1,l),h<this.length&&this.getWidth(h-1)===2&&this.setCellFromCodepoint(h,0,1,l);a<h&&a<this.length;)this.setCell(a++,l)}resize(a,h){if(a===this.length)return 4*this._data.length*2<this._data.buffer.byteLength;const l=3*a;if(a>this.length){if(this._data.buffer.byteLength>=4*l)this._data=new Uint32Array(this._data.buffer,0,l);else{const d=new Uint32Array(l);d.set(this._data),this._data=d}for(let d=this.length;d<a;++d)this.setCell(d,h)}else{this._data=this._data.subarray(0,l);const d=Object.keys(this._combined);for(let k=0;k<d.length;k++){const C=parseInt(d[k],10);C>=a&&delete this._combined[C]}const w=Object.keys(this._extendedAttrs);for(let k=0;k<w.length;k++){const C=parseInt(w[k],10);C>=a&&delete this._extendedAttrs[C]}}return this.length=a,4*l*2<this._data.buffer.byteLength}cleanupMemory(){if(4*this._data.length*2<this._data.buffer.byteLength){const a=new Uint32Array(this._data.length);return a.set(this._data),this._data=a,1}return 0}fill(a,h=!1){if(h)for(let l=0;l<this.length;++l)this.isProtected(l)||this.setCell(l,a);else{this._combined={},this._extendedAttrs={};for(let l=0;l<this.length;++l)this.setCell(l,a)}}copyFrom(a){this.length!==a.length?this._data=new Uint32Array(a._data):this._data.set(a._data),this.length=a.length,this._combined={};for(const h in a._combined)this._combined[h]=a._combined[h];this._extendedAttrs={};for(const h in a._extendedAttrs)this._extendedAttrs[h]=a._extendedAttrs[h];this.isWrapped=a.isWrapped}clone(){const a=new b(0);a._data=new Uint32Array(this._data),a.length=this.length;for(const h in this._combined)a._combined[h]=this._combined[h];for(const h in this._extendedAttrs)a._extendedAttrs[h]=this._extendedAttrs[h];return a.isWrapped=this.isWrapped,a}getTrimmedLength(){for(let a=this.length-1;a>=0;--a)if(4194303&this._data[3*a+0])return a+(this._data[3*a+0]>>22);return 0}getNoBgTrimmedLength(){for(let a=this.length-1;a>=0;--a)if(4194303&this._data[3*a+0]||50331648&this._data[3*a+2])return a+(this._data[3*a+0]>>22);return 0}copyCellsFrom(a,h,l,d,w){const k=a._data;if(w)for(let L=d-1;L>=0;L--){for(let x=0;x<3;x++)this._data[3*(l+L)+x]=k[3*(h+L)+x];268435456&k[3*(h+L)+2]&&(this._extendedAttrs[l+L]=a._extendedAttrs[h+L])}else for(let L=0;L<d;L++){for(let x=0;x<3;x++)this._data[3*(l+L)+x]=k[3*(h+L)+x];268435456&k[3*(h+L)+2]&&(this._extendedAttrs[l+L]=a._extendedAttrs[h+L])}const C=Object.keys(a._combined);for(let L=0;L<C.length;L++){const x=parseInt(C[L],10);x>=h&&(this._combined[x-h+l]=a._combined[x])}}translateToString(a,h,l,d){h=h??0,l=l??this.length,a&&(l=Math.min(l,this.getTrimmedLength())),d&&(d.length=0);let w="";for(;h<l;){const k=this._data[3*h+0],C=2097151&k,L=2097152&k?this._combined[h]:C?(0,m.stringFromCodePoint)(C):c.WHITESPACE_CELL_CHAR;if(w+=L,d)for(let x=0;x<L.length;++x)d.push(h);h+=k>>22||1}return d&&d.push(h),w}}r.BufferLine=b},4841:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.getRangeLength=void 0,r.getRangeLength=function(o,f){if(o.start.y>o.end.y)throw new Error(`Buffer range end (${o.end.x}, ${o.end.y}) cannot be before start (${o.start.x}, ${o.start.y})`);return f*(o.end.y-o.start.y)+(o.end.x-o.start.x+1)}},4634:(p,r)=>{function o(f,_,c){if(_===f.length-1)return f[_].getTrimmedLength();const m=!f[_].hasContent(c-1)&&f[_].getWidth(c-1)===1,y=f[_+1].getWidth(0)===2;return m&&y?c-1:c}Object.defineProperty(r,"__esModule",{value:!0}),r.getWrappedLineTrimmedLength=r.reflowSmallerGetNewLineLengths=r.reflowLargerApplyNewLayout=r.reflowLargerCreateNewLayout=r.reflowLargerGetLinesToRemove=void 0,r.reflowLargerGetLinesToRemove=function(f,_,c,m,y){const b=[];for(let g=0;g<f.length-1;g++){let a=g,h=f.get(++a);if(!h.isWrapped)continue;const l=[f.get(g)];for(;a<f.length&&h.isWrapped;)l.push(h),h=f.get(++a);if(m>=g&&m<a){g+=l.length-1;continue}let d=0,w=o(l,d,_),k=1,C=0;for(;k<l.length;){const x=o(l,k,_),E=x-C,R=c-w,I=Math.min(E,R);l[d].copyCellsFrom(l[k],C,w,I,!1),w+=I,w===c&&(d++,w=0),C+=I,C===x&&(k++,C=0),w===0&&d!==0&&l[d-1].getWidth(c-1)===2&&(l[d].copyCellsFrom(l[d-1],c-1,w++,1,!1),l[d-1].setCell(c-1,y))}l[d].replaceCells(w,c,y);let L=0;for(let x=l.length-1;x>0&&(x>d||l[x].getTrimmedLength()===0);x--)L++;L>0&&(b.push(g+l.length-L),b.push(L)),g+=l.length-1}return b},r.reflowLargerCreateNewLayout=function(f,_){const c=[];let m=0,y=_[m],b=0;for(let g=0;g<f.length;g++)if(y===g){const a=_[++m];f.onDeleteEmitter.fire({index:g-b,amount:a}),g+=a-1,b+=a,y=_[++m]}else c.push(g);return{layout:c,countRemoved:b}},r.reflowLargerApplyNewLayout=function(f,_){const c=[];for(let m=0;m<_.length;m++)c.push(f.get(_[m]));for(let m=0;m<c.length;m++)f.set(m,c[m]);f.length=_.length},r.reflowSmallerGetNewLineLengths=function(f,_,c){const m=[],y=f.map((h,l)=>o(f,l,_)).reduce((h,l)=>h+l);let b=0,g=0,a=0;for(;a<y;){if(y-a<c){m.push(y-a);break}b+=c;const h=o(f,g,_);b>h&&(b-=h,g++);const l=f[g].getWidth(b-1)===2;l&&b--;const d=l?c-1:c;m.push(d),a+=d}return m},r.getWrappedLineTrimmedLength=o},5295:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BufferSet=void 0;const f=o(8460),_=o(844),c=o(9092);class m extends _.Disposable{constructor(b,g){super(),this._optionsService=b,this._bufferService=g,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 c.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new c.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(b){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(b),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(b,g){this._normal.resize(b,g),this._alt.resize(b,g),this.setupTabStops(b)}setupTabStops(b){this._normal.setupTabStops(b),this._alt.setupTabStops(b)}}r.BufferSet=m},511:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CellData=void 0;const f=o(482),_=o(643),c=o(3734);class m extends c.AttributeData{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new c.ExtendedAttrs,this.combinedData=""}static fromCharData(b){const g=new m;return g.setFromCharData(b),g}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(b){this.fg=b[_.CHAR_DATA_ATTR_INDEX],this.bg=0;let g=!1;if(b[_.CHAR_DATA_CHAR_INDEX].length>2)g=!0;else if(b[_.CHAR_DATA_CHAR_INDEX].length===2){const a=b[_.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=a&&a<=56319){const h=b[_.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=h&&h<=57343?this.content=1024*(a-55296)+h-56320+65536|b[_.CHAR_DATA_WIDTH_INDEX]<<22:g=!0}else g=!0}else this.content=b[_.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|b[_.CHAR_DATA_WIDTH_INDEX]<<22;g&&(this.combinedData=b[_.CHAR_DATA_CHAR_INDEX],this.content=2097152|b[_.CHAR_DATA_WIDTH_INDEX]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}r.CellData=m},643:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.WHITESPACE_CELL_CODE=r.WHITESPACE_CELL_WIDTH=r.WHITESPACE_CELL_CHAR=r.NULL_CELL_CODE=r.NULL_CELL_WIDTH=r.NULL_CELL_CHAR=r.CHAR_DATA_CODE_INDEX=r.CHAR_DATA_WIDTH_INDEX=r.CHAR_DATA_CHAR_INDEX=r.CHAR_DATA_ATTR_INDEX=r.DEFAULT_EXT=r.DEFAULT_ATTR=r.DEFAULT_COLOR=void 0,r.DEFAULT_COLOR=0,r.DEFAULT_ATTR=256|r.DEFAULT_COLOR<<9,r.DEFAULT_EXT=0,r.CHAR_DATA_ATTR_INDEX=0,r.CHAR_DATA_CHAR_INDEX=1,r.CHAR_DATA_WIDTH_INDEX=2,r.CHAR_DATA_CODE_INDEX=3,r.NULL_CELL_CHAR="",r.NULL_CELL_WIDTH=1,r.NULL_CELL_CODE=0,r.WHITESPACE_CELL_CHAR=" ",r.WHITESPACE_CELL_WIDTH=1,r.WHITESPACE_CELL_CODE=32},4863:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Marker=void 0;const f=o(8460),_=o(844);class c{get id(){return this._id}constructor(y){this.line=y,this.isDisposed=!1,this._disposables=[],this._id=c._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,_.disposeArray)(this._disposables),this._disposables.length=0)}register(y){return this._disposables.push(y),y}}r.Marker=c,c._nextId=1},7116:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.DEFAULT_CHARSET=r.CHARSETS=void 0,r.CHARSETS={},r.DEFAULT_CHARSET=r.CHARSETS.B,r.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:"≥","{":"π","|":"≠","}":"£","~":"·"},r.CHARSETS.A={"#":"£"},r.CHARSETS.B=void 0,r.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},r.CHARSETS.C=r.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},r.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},r.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},r.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},r.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},r.CHARSETS.E=r.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},r.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},r.CHARSETS.H=r.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},r.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(p,r)=>{var o,f,_;Object.defineProperty(r,"__esModule",{value:!0}),r.C1_ESCAPED=r.C1=r.C0=void 0,function(c){c.NUL="\0",c.SOH="",c.STX="",c.ETX="",c.EOT="",c.ENQ="",c.ACK="",c.BEL="\x07",c.BS="\b",c.HT=" ",c.LF=`
|
|
49
|
+
`,c.VT="\v",c.FF="\f",c.CR="\r",c.SO="",c.SI="",c.DLE="",c.DC1="",c.DC2="",c.DC3="",c.DC4="",c.NAK="",c.SYN="",c.ETB="",c.CAN="",c.EM="",c.SUB="",c.ESC="\x1B",c.FS="",c.GS="",c.RS="",c.US="",c.SP=" ",c.DEL=""}(o||(r.C0=o={})),function(c){c.PAD="",c.HOP="",c.BPH="",c.NBH="",c.IND="",c.NEL="
",c.SSA="",c.ESA="",c.HTS="",c.HTJ="",c.VTS="",c.PLD="",c.PLU="",c.RI="",c.SS2="",c.SS3="",c.DCS="",c.PU1="",c.PU2="",c.STS="",c.CCH="",c.MW="",c.SPA="",c.EPA="",c.SOS="",c.SGCI="",c.SCI="",c.CSI="",c.ST="",c.OSC="",c.PM="",c.APC=""}(f||(r.C1=f={})),function(c){c.ST=`${o.ESC}\\`}(_||(r.C1_ESCAPED=_={}))},7399:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.evaluateKeyboardEvent=void 0;const f=o(2584),_={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:["'",'"']};r.evaluateKeyboardEvent=function(c,m,y,b){const g={type:0,cancel:!1,key:void 0},a=(c.shiftKey?1:0)|(c.altKey?2:0)|(c.ctrlKey?4:0)|(c.metaKey?8:0);switch(c.keyCode){case 0:c.key==="UIKeyInputUpArrow"?g.key=m?f.C0.ESC+"OA":f.C0.ESC+"[A":c.key==="UIKeyInputLeftArrow"?g.key=m?f.C0.ESC+"OD":f.C0.ESC+"[D":c.key==="UIKeyInputRightArrow"?g.key=m?f.C0.ESC+"OC":f.C0.ESC+"[C":c.key==="UIKeyInputDownArrow"&&(g.key=m?f.C0.ESC+"OB":f.C0.ESC+"[B");break;case 8:g.key=c.ctrlKey?"\b":f.C0.DEL,c.altKey&&(g.key=f.C0.ESC+g.key);break;case 9:if(c.shiftKey){g.key=f.C0.ESC+"[Z";break}g.key=f.C0.HT,g.cancel=!0;break;case 13:g.key=c.altKey?f.C0.ESC+f.C0.CR:f.C0.CR,g.cancel=!0;break;case 27:g.key=f.C0.ESC,c.altKey&&(g.key=f.C0.ESC+f.C0.ESC),g.cancel=!0;break;case 37:if(c.metaKey)break;a?(g.key=f.C0.ESC+"[1;"+(a+1)+"D",g.key===f.C0.ESC+"[1;3D"&&(g.key=f.C0.ESC+(y?"b":"[1;5D"))):g.key=m?f.C0.ESC+"OD":f.C0.ESC+"[D";break;case 39:if(c.metaKey)break;a?(g.key=f.C0.ESC+"[1;"+(a+1)+"C",g.key===f.C0.ESC+"[1;3C"&&(g.key=f.C0.ESC+(y?"f":"[1;5C"))):g.key=m?f.C0.ESC+"OC":f.C0.ESC+"[C";break;case 38:if(c.metaKey)break;a?(g.key=f.C0.ESC+"[1;"+(a+1)+"A",y||g.key!==f.C0.ESC+"[1;3A"||(g.key=f.C0.ESC+"[1;5A")):g.key=m?f.C0.ESC+"OA":f.C0.ESC+"[A";break;case 40:if(c.metaKey)break;a?(g.key=f.C0.ESC+"[1;"+(a+1)+"B",y||g.key!==f.C0.ESC+"[1;3B"||(g.key=f.C0.ESC+"[1;5B")):g.key=m?f.C0.ESC+"OB":f.C0.ESC+"[B";break;case 45:c.shiftKey||c.ctrlKey||(g.key=f.C0.ESC+"[2~");break;case 46:g.key=a?f.C0.ESC+"[3;"+(a+1)+"~":f.C0.ESC+"[3~";break;case 36:g.key=a?f.C0.ESC+"[1;"+(a+1)+"H":m?f.C0.ESC+"OH":f.C0.ESC+"[H";break;case 35:g.key=a?f.C0.ESC+"[1;"+(a+1)+"F":m?f.C0.ESC+"OF":f.C0.ESC+"[F";break;case 33:c.shiftKey?g.type=2:c.ctrlKey?g.key=f.C0.ESC+"[5;"+(a+1)+"~":g.key=f.C0.ESC+"[5~";break;case 34:c.shiftKey?g.type=3:c.ctrlKey?g.key=f.C0.ESC+"[6;"+(a+1)+"~":g.key=f.C0.ESC+"[6~";break;case 112:g.key=a?f.C0.ESC+"[1;"+(a+1)+"P":f.C0.ESC+"OP";break;case 113:g.key=a?f.C0.ESC+"[1;"+(a+1)+"Q":f.C0.ESC+"OQ";break;case 114:g.key=a?f.C0.ESC+"[1;"+(a+1)+"R":f.C0.ESC+"OR";break;case 115:g.key=a?f.C0.ESC+"[1;"+(a+1)+"S":f.C0.ESC+"OS";break;case 116:g.key=a?f.C0.ESC+"[15;"+(a+1)+"~":f.C0.ESC+"[15~";break;case 117:g.key=a?f.C0.ESC+"[17;"+(a+1)+"~":f.C0.ESC+"[17~";break;case 118:g.key=a?f.C0.ESC+"[18;"+(a+1)+"~":f.C0.ESC+"[18~";break;case 119:g.key=a?f.C0.ESC+"[19;"+(a+1)+"~":f.C0.ESC+"[19~";break;case 120:g.key=a?f.C0.ESC+"[20;"+(a+1)+"~":f.C0.ESC+"[20~";break;case 121:g.key=a?f.C0.ESC+"[21;"+(a+1)+"~":f.C0.ESC+"[21~";break;case 122:g.key=a?f.C0.ESC+"[23;"+(a+1)+"~":f.C0.ESC+"[23~";break;case 123:g.key=a?f.C0.ESC+"[24;"+(a+1)+"~":f.C0.ESC+"[24~";break;default:if(!c.ctrlKey||c.shiftKey||c.altKey||c.metaKey)if(y&&!b||!c.altKey||c.metaKey)!y||c.altKey||c.ctrlKey||c.shiftKey||!c.metaKey?c.key&&!c.ctrlKey&&!c.altKey&&!c.metaKey&&c.keyCode>=48&&c.key.length===1?g.key=c.key:c.key&&c.ctrlKey&&(c.key==="_"&&(g.key=f.C0.US),c.key==="@"&&(g.key=f.C0.NUL)):c.keyCode===65&&(g.type=1);else{const h=_[c.keyCode],l=h==null?void 0:h[c.shiftKey?1:0];if(l)g.key=f.C0.ESC+l;else if(c.keyCode>=65&&c.keyCode<=90){const d=c.ctrlKey?c.keyCode-64:c.keyCode+32;let w=String.fromCharCode(d);c.shiftKey&&(w=w.toUpperCase()),g.key=f.C0.ESC+w}else if(c.keyCode===32)g.key=f.C0.ESC+(c.ctrlKey?f.C0.NUL:" ");else if(c.key==="Dead"&&c.code.startsWith("Key")){let d=c.code.slice(3,4);c.shiftKey||(d=d.toLowerCase()),g.key=f.C0.ESC+d,g.cancel=!0}}else c.keyCode>=65&&c.keyCode<=90?g.key=String.fromCharCode(c.keyCode-64):c.keyCode===32?g.key=f.C0.NUL:c.keyCode>=51&&c.keyCode<=55?g.key=String.fromCharCode(c.keyCode-51+27):c.keyCode===56?g.key=f.C0.DEL:c.keyCode===219?g.key=f.C0.ESC:c.keyCode===220?g.key=f.C0.FS:c.keyCode===221&&(g.key=f.C0.GS)}return g}},482:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Utf8ToUtf32=r.StringToUtf32=r.utf32ToString=r.stringFromCodePoint=void 0,r.stringFromCodePoint=function(o){return o>65535?(o-=65536,String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):String.fromCharCode(o)},r.utf32ToString=function(o,f=0,_=o.length){let c="";for(let m=f;m<_;++m){let y=o[m];y>65535?(y-=65536,c+=String.fromCharCode(55296+(y>>10))+String.fromCharCode(y%1024+56320)):c+=String.fromCharCode(y)}return c},r.StringToUtf32=class{constructor(){this._interim=0}clear(){this._interim=0}decode(o,f){const _=o.length;if(!_)return 0;let c=0,m=0;if(this._interim){const y=o.charCodeAt(m++);56320<=y&&y<=57343?f[c++]=1024*(this._interim-55296)+y-56320+65536:(f[c++]=this._interim,f[c++]=y),this._interim=0}for(let y=m;y<_;++y){const b=o.charCodeAt(y);if(55296<=b&&b<=56319){if(++y>=_)return this._interim=b,c;const g=o.charCodeAt(y);56320<=g&&g<=57343?f[c++]=1024*(b-55296)+g-56320+65536:(f[c++]=b,f[c++]=g)}else b!==65279&&(f[c++]=b)}return c}},r.Utf8ToUtf32=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(o,f){const _=o.length;if(!_)return 0;let c,m,y,b,g=0,a=0,h=0;if(this.interim[0]){let w=!1,k=this.interim[0];k&=(224&k)==192?31:(240&k)==224?15:7;let C,L=0;for(;(C=63&this.interim[++L])&&L<4;)k<<=6,k|=C;const x=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,E=x-L;for(;h<E;){if(h>=_)return 0;if(C=o[h++],(192&C)!=128){h--,w=!0;break}this.interim[L++]=C,k<<=6,k|=63&C}w||(x===2?k<128?h--:f[g++]=k:x===3?k<2048||k>=55296&&k<=57343||k===65279||(f[g++]=k):k<65536||k>1114111||(f[g++]=k)),this.interim.fill(0)}const l=_-4;let d=h;for(;d<_;){for(;!(!(d<l)||128&(c=o[d])||128&(m=o[d+1])||128&(y=o[d+2])||128&(b=o[d+3]));)f[g++]=c,f[g++]=m,f[g++]=y,f[g++]=b,d+=4;if(c=o[d++],c<128)f[g++]=c;else if((224&c)==192){if(d>=_)return this.interim[0]=c,g;if(m=o[d++],(192&m)!=128){d--;continue}if(a=(31&c)<<6|63&m,a<128){d--;continue}f[g++]=a}else if((240&c)==224){if(d>=_)return this.interim[0]=c,g;if(m=o[d++],(192&m)!=128){d--;continue}if(d>=_)return this.interim[0]=c,this.interim[1]=m,g;if(y=o[d++],(192&y)!=128){d--;continue}if(a=(15&c)<<12|(63&m)<<6|63&y,a<2048||a>=55296&&a<=57343||a===65279)continue;f[g++]=a}else if((248&c)==240){if(d>=_)return this.interim[0]=c,g;if(m=o[d++],(192&m)!=128){d--;continue}if(d>=_)return this.interim[0]=c,this.interim[1]=m,g;if(y=o[d++],(192&y)!=128){d--;continue}if(d>=_)return this.interim[0]=c,this.interim[1]=m,this.interim[2]=y,g;if(b=o[d++],(192&b)!=128){d--;continue}if(a=(7&c)<<18|(63&m)<<12|(63&y)<<6|63&b,a<65536||a>1114111)continue;f[g++]=a}}return g}}},225:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.UnicodeV6=void 0;const f=o(1480),_=[[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]],c=[[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 m;r.UnicodeV6=class{constructor(){if(this.version="6",!m){m=new Uint8Array(65536),m.fill(1),m[0]=0,m.fill(0,1,32),m.fill(0,127,160),m.fill(2,4352,4448),m[9001]=2,m[9002]=2,m.fill(2,11904,42192),m[12351]=1,m.fill(2,44032,55204),m.fill(2,63744,64256),m.fill(2,65040,65050),m.fill(2,65072,65136),m.fill(2,65280,65377),m.fill(2,65504,65511);for(let y=0;y<_.length;++y)m.fill(0,_[y][0],_[y][1]+1)}}wcwidth(y){return y<32?0:y<127?1:y<65536?m[y]:function(b,g){let a,h=0,l=g.length-1;if(b<g[0][0]||b>g[l][1])return!1;for(;l>=h;)if(a=h+l>>1,b>g[a][1])h=a+1;else{if(!(b<g[a][0]))return!0;l=a-1}return!1}(y,c)?0:y>=131072&&y<=196605||y>=196608&&y<=262141?2:1}charProperties(y,b){let g=this.wcwidth(y),a=g===0&&b!==0;if(a){const h=f.UnicodeService.extractWidth(b);h===0?a=!1:h>g&&(g=h)}return f.UnicodeService.createPropertyValue(0,g,a)}}},5981:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.WriteBuffer=void 0;const f=o(8460),_=o(844);class c extends _.Disposable{constructor(y){super(),this._action=y,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(y,b){if(b!==void 0&&this._syncCalls>b)return void(this._syncCalls=0);if(this._pendingData+=y.length,this._writeBuffer.push(y),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;let g;for(this._isSyncWriting=!0;g=this._writeBuffer.shift();){this._action(g);const a=this._callbacks.shift();a&&a()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(y,b){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+=y.length,this._writeBuffer.push(y),this._callbacks.push(b),void this._innerWrite();setTimeout(()=>this._innerWrite())}this._pendingData+=y.length,this._writeBuffer.push(y),this._callbacks.push(b)}_innerWrite(y=0,b=!0){const g=y||Date.now();for(;this._writeBuffer.length>this._bufferOffset;){const a=this._writeBuffer[this._bufferOffset],h=this._action(a,b);if(h){const d=w=>Date.now()-g>=12?setTimeout(()=>this._innerWrite(0,w)):this._innerWrite(g,w);return void h.catch(w=>(queueMicrotask(()=>{throw w}),Promise.resolve(!1))).then(d)}const l=this._callbacks[this._bufferOffset];if(l&&l(),this._bufferOffset++,this._pendingData-=a.length,Date.now()-g>=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()}}r.WriteBuffer=c},5941:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.toRgbString=r.parseColor=void 0;const o=/^([\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 _(c,m){const y=c.toString(16),b=y.length<2?"0"+y:y;switch(m){case 4:return y[0];case 8:return b;case 12:return(b+b).slice(0,3);default:return b+b}}r.parseColor=function(c){if(!c)return;let m=c.toLowerCase();if(m.indexOf("rgb:")===0){m=m.slice(4);const y=o.exec(m);if(y){const b=y[1]?15:y[4]?255:y[7]?4095:65535;return[Math.round(parseInt(y[1]||y[4]||y[7]||y[10],16)/b*255),Math.round(parseInt(y[2]||y[5]||y[8]||y[11],16)/b*255),Math.round(parseInt(y[3]||y[6]||y[9]||y[12],16)/b*255)]}}else if(m.indexOf("#")===0&&(m=m.slice(1),f.exec(m)&&[3,6,9,12].includes(m.length))){const y=m.length/3,b=[0,0,0];for(let g=0;g<3;++g){const a=parseInt(m.slice(y*g,y*g+y),16);b[g]=y===1?a<<4:y===2?a:y===3?a>>4:a>>8}return b}},r.toRgbString=function(c,m=16){const[y,b,g]=c;return`rgb:${_(y,m)}/${_(b,m)}/${_(g,m)}`}},5770:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.PAYLOAD_LIMIT=void 0,r.PAYLOAD_LIMIT=1e7},6351:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.DcsHandler=r.DcsParser=void 0;const f=o(482),_=o(8742),c=o(5770),m=[];r.DcsParser=class{constructor(){this._handlers=Object.create(null),this._active=m,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=m}registerHandler(b,g){this._handlers[b]===void 0&&(this._handlers[b]=[]);const a=this._handlers[b];return a.push(g),{dispose:()=>{const h=a.indexOf(g);h!==-1&&a.splice(h,1)}}}clearHandler(b){this._handlers[b]&&delete this._handlers[b]}setHandlerFallback(b){this._handlerFb=b}reset(){if(this._active.length)for(let b=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;b>=0;--b)this._active[b].unhook(!1);this._stack.paused=!1,this._active=m,this._ident=0}hook(b,g){if(this.reset(),this._ident=b,this._active=this._handlers[b]||m,this._active.length)for(let a=this._active.length-1;a>=0;a--)this._active[a].hook(g);else this._handlerFb(this._ident,"HOOK",g)}put(b,g,a){if(this._active.length)for(let h=this._active.length-1;h>=0;h--)this._active[h].put(b,g,a);else this._handlerFb(this._ident,"PUT",(0,f.utf32ToString)(b,g,a))}unhook(b,g=!0){if(this._active.length){let a=!1,h=this._active.length-1,l=!1;if(this._stack.paused&&(h=this._stack.loopPosition-1,a=g,l=this._stack.fallThrough,this._stack.paused=!1),!l&&a===!1){for(;h>=0&&(a=this._active[h].unhook(b),a!==!0);h--)if(a instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=h,this._stack.fallThrough=!1,a;h--}for(;h>=0;h--)if(a=this._active[h].unhook(!1),a instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=h,this._stack.fallThrough=!0,a}else this._handlerFb(this._ident,"UNHOOK",b);this._active=m,this._ident=0}};const y=new _.Params;y.addParam(0),r.DcsHandler=class{constructor(b){this._handler=b,this._data="",this._params=y,this._hitLimit=!1}hook(b){this._params=b.length>1||b.params[0]?b.clone():y,this._data="",this._hitLimit=!1}put(b,g,a){this._hitLimit||(this._data+=(0,f.utf32ToString)(b,g,a),this._data.length>c.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))}unhook(b){let g=!1;if(this._hitLimit)g=!1;else if(b&&(g=this._handler(this._data,this._params),g instanceof Promise))return g.then(a=>(this._params=y,this._data="",this._hitLimit=!1,a));return this._params=y,this._data="",this._hitLimit=!1,g}}},2015:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.EscapeSequenceParser=r.VT500_TRANSITION_TABLE=r.TransitionTable=void 0;const f=o(844),_=o(8742),c=o(6242),m=o(6351);class y{constructor(h){this.table=new Uint8Array(h)}setDefault(h,l){this.table.fill(h<<4|l)}add(h,l,d,w){this.table[l<<8|h]=d<<4|w}addMany(h,l,d,w){for(let k=0;k<h.length;k++)this.table[l<<8|h[k]]=d<<4|w}}r.TransitionTable=y;const b=160;r.VT500_TRANSITION_TABLE=function(){const a=new y(4095),h=Array.apply(null,Array(256)).map((L,x)=>x),l=(L,x)=>h.slice(L,x),d=l(32,127),w=l(0,24);w.push(25),w.push.apply(w,l(28,32));const k=l(0,14);let C;for(C in a.setDefault(1,0),a.addMany(d,0,2,0),k)a.addMany([24,26,153,154],C,3,0),a.addMany(l(128,144),C,3,0),a.addMany(l(144,152),C,3,0),a.add(156,C,0,0),a.add(27,C,11,1),a.add(157,C,4,8),a.addMany([152,158,159],C,0,7),a.add(155,C,11,3),a.add(144,C,11,9);return a.addMany(w,0,3,0),a.addMany(w,1,3,1),a.add(127,1,0,1),a.addMany(w,8,0,8),a.addMany(w,3,3,3),a.add(127,3,0,3),a.addMany(w,4,3,4),a.add(127,4,0,4),a.addMany(w,6,3,6),a.addMany(w,5,3,5),a.add(127,5,0,5),a.addMany(w,2,3,2),a.add(127,2,0,2),a.add(93,1,4,8),a.addMany(d,8,5,8),a.add(127,8,5,8),a.addMany([156,27,24,26,7],8,6,0),a.addMany(l(28,32),8,0,8),a.addMany([88,94,95],1,0,7),a.addMany(d,7,0,7),a.addMany(w,7,0,7),a.add(156,7,0,0),a.add(127,7,0,7),a.add(91,1,11,3),a.addMany(l(64,127),3,7,0),a.addMany(l(48,60),3,8,4),a.addMany([60,61,62,63],3,9,4),a.addMany(l(48,60),4,8,4),a.addMany(l(64,127),4,7,0),a.addMany([60,61,62,63],4,0,6),a.addMany(l(32,64),6,0,6),a.add(127,6,0,6),a.addMany(l(64,127),6,0,0),a.addMany(l(32,48),3,9,5),a.addMany(l(32,48),5,9,5),a.addMany(l(48,64),5,0,6),a.addMany(l(64,127),5,7,0),a.addMany(l(32,48),4,9,5),a.addMany(l(32,48),1,9,2),a.addMany(l(32,48),2,9,2),a.addMany(l(48,127),2,10,0),a.addMany(l(48,80),1,10,0),a.addMany(l(81,88),1,10,0),a.addMany([89,90,92],1,10,0),a.addMany(l(96,127),1,10,0),a.add(80,1,11,9),a.addMany(w,9,0,9),a.add(127,9,0,9),a.addMany(l(28,32),9,0,9),a.addMany(l(32,48),9,9,12),a.addMany(l(48,60),9,8,10),a.addMany([60,61,62,63],9,9,10),a.addMany(w,11,0,11),a.addMany(l(32,128),11,0,11),a.addMany(l(28,32),11,0,11),a.addMany(w,10,0,10),a.add(127,10,0,10),a.addMany(l(28,32),10,0,10),a.addMany(l(48,60),10,8,10),a.addMany([60,61,62,63],10,0,11),a.addMany(l(32,48),10,9,12),a.addMany(w,12,0,12),a.add(127,12,0,12),a.addMany(l(28,32),12,0,12),a.addMany(l(32,48),12,9,12),a.addMany(l(48,64),12,0,11),a.addMany(l(64,127),12,12,13),a.addMany(l(64,127),10,12,13),a.addMany(l(64,127),9,12,13),a.addMany(w,13,13,13),a.addMany(d,13,13,13),a.add(127,13,0,13),a.addMany([27,156,24,26],13,14,0),a.add(b,0,2,0),a.add(b,8,5,8),a.add(b,6,0,6),a.add(b,11,0,11),a.add(b,13,13,13),a}();class g extends f.Disposable{constructor(h=r.VT500_TRANSITION_TABLE){super(),this._transitions=h,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new _.Params,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(l,d,w)=>{},this._executeHandlerFb=l=>{},this._csiHandlerFb=(l,d)=>{},this._escHandlerFb=l=>{},this._errorHandlerFb=l=>l,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 c.OscParser),this._dcsParser=this.register(new m.DcsParser),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(h,l=[64,126]){let d=0;if(h.prefix){if(h.prefix.length>1)throw new Error("only one byte as prefix supported");if(d=h.prefix.charCodeAt(0),d&&60>d||d>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(h.intermediates){if(h.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let k=0;k<h.intermediates.length;++k){const C=h.intermediates.charCodeAt(k);if(32>C||C>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");d<<=8,d|=C}}if(h.final.length!==1)throw new Error("final must be a single byte");const w=h.final.charCodeAt(0);if(l[0]>w||w>l[1])throw new Error(`final must be in range ${l[0]} .. ${l[1]}`);return d<<=8,d|=w,d}identToString(h){const l=[];for(;h;)l.push(String.fromCharCode(255&h)),h>>=8;return l.reverse().join("")}setPrintHandler(h){this._printHandler=h}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(h,l){const d=this._identifier(h,[48,126]);this._escHandlers[d]===void 0&&(this._escHandlers[d]=[]);const w=this._escHandlers[d];return w.push(l),{dispose:()=>{const k=w.indexOf(l);k!==-1&&w.splice(k,1)}}}clearEscHandler(h){this._escHandlers[this._identifier(h,[48,126])]&&delete this._escHandlers[this._identifier(h,[48,126])]}setEscHandlerFallback(h){this._escHandlerFb=h}setExecuteHandler(h,l){this._executeHandlers[h.charCodeAt(0)]=l}clearExecuteHandler(h){this._executeHandlers[h.charCodeAt(0)]&&delete this._executeHandlers[h.charCodeAt(0)]}setExecuteHandlerFallback(h){this._executeHandlerFb=h}registerCsiHandler(h,l){const d=this._identifier(h);this._csiHandlers[d]===void 0&&(this._csiHandlers[d]=[]);const w=this._csiHandlers[d];return w.push(l),{dispose:()=>{const k=w.indexOf(l);k!==-1&&w.splice(k,1)}}}clearCsiHandler(h){this._csiHandlers[this._identifier(h)]&&delete this._csiHandlers[this._identifier(h)]}setCsiHandlerFallback(h){this._csiHandlerFb=h}registerDcsHandler(h,l){return this._dcsParser.registerHandler(this._identifier(h),l)}clearDcsHandler(h){this._dcsParser.clearHandler(this._identifier(h))}setDcsHandlerFallback(h){this._dcsParser.setHandlerFallback(h)}registerOscHandler(h,l){return this._oscParser.registerHandler(h,l)}clearOscHandler(h){this._oscParser.clearHandler(h)}setOscHandlerFallback(h){this._oscParser.setHandlerFallback(h)}setErrorHandler(h){this._errorHandler=h}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(h,l,d,w,k){this._parseStack.state=h,this._parseStack.handlers=l,this._parseStack.handlerPos=d,this._parseStack.transition=w,this._parseStack.chunkPos=k}parse(h,l,d){let w,k=0,C=0,L=0;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,L=this._parseStack.chunkPos+1;else{if(d===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");const x=this._parseStack.handlers;let E=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(d===!1&&E>-1){for(;E>=0&&(w=x[E](this._params),w!==!0);E--)if(w instanceof Promise)return this._parseStack.handlerPos=E,w}this._parseStack.handlers=[];break;case 4:if(d===!1&&E>-1){for(;E>=0&&(w=x[E](),w!==!0);E--)if(w instanceof Promise)return this._parseStack.handlerPos=E,w}this._parseStack.handlers=[];break;case 6:if(k=h[this._parseStack.chunkPos],w=this._dcsParser.unhook(k!==24&&k!==26,d),w)return w;k===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(k=h[this._parseStack.chunkPos],w=this._oscParser.end(k!==24&&k!==26,d),w)return w;k===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 x=L;x<l;++x){switch(k=h[x],C=this._transitions.table[this.currentState<<8|(k<160?k:b)],C>>4){case 2:for(let A=x+1;;++A){if(A>=l||(k=h[A])<32||k>126&&k<b){this._printHandler(h,x,A),x=A-1;break}if(++A>=l||(k=h[A])<32||k>126&&k<b){this._printHandler(h,x,A),x=A-1;break}if(++A>=l||(k=h[A])<32||k>126&&k<b){this._printHandler(h,x,A),x=A-1;break}if(++A>=l||(k=h[A])<32||k>126&&k<b){this._printHandler(h,x,A),x=A-1;break}}break;case 3:this._executeHandlers[k]?this._executeHandlers[k]():this._executeHandlerFb(k),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:x,code:k,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:const E=this._csiHandlers[this._collect<<8|k];let R=E?E.length-1:-1;for(;R>=0&&(w=E[R](this._params),w!==!0);R--)if(w instanceof Promise)return this._preserveStack(3,E,R,C,x),w;R<0&&this._csiHandlerFb(this._collect<<8|k,this._params),this.precedingJoinState=0;break;case 8:do switch(k){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(k-48)}while(++x<l&&(k=h[x])>47&&k<60);x--;break;case 9:this._collect<<=8,this._collect|=k;break;case 10:const I=this._escHandlers[this._collect<<8|k];let T=I?I.length-1:-1;for(;T>=0&&(w=I[T](),w!==!0);T--)if(w instanceof Promise)return this._preserveStack(4,I,T,C,x),w;T<0&&this._escHandlerFb(this._collect<<8|k),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|k,this._params);break;case 13:for(let A=x+1;;++A)if(A>=l||(k=h[A])===24||k===26||k===27||k>127&&k<b){this._dcsParser.put(h,x,A),x=A-1;break}break;case 14:if(w=this._dcsParser.unhook(k!==24&&k!==26),w)return this._preserveStack(6,[],0,C,x),w;k===27&&(C|=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 A=x+1;;A++)if(A>=l||(k=h[A])<32||k>127&&k<b){this._oscParser.put(h,x,A),x=A-1;break}break;case 6:if(w=this._oscParser.end(k!==24&&k!==26),w)return this._preserveStack(5,[],0,C,x),w;k===27&&(C|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0}this.currentState=15&C}}}r.EscapeSequenceParser=g},6242:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.OscHandler=r.OscParser=void 0;const f=o(5770),_=o(482),c=[];r.OscParser=class{constructor(){this._state=0,this._active=c,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(m,y){this._handlers[m]===void 0&&(this._handlers[m]=[]);const b=this._handlers[m];return b.push(y),{dispose:()=>{const g=b.indexOf(y);g!==-1&&b.splice(g,1)}}}clearHandler(m){this._handlers[m]&&delete this._handlers[m]}setHandlerFallback(m){this._handlerFb=m}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=c}reset(){if(this._state===2)for(let m=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;m>=0;--m)this._active[m].end(!1);this._stack.paused=!1,this._active=c,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||c,this._active.length)for(let m=this._active.length-1;m>=0;m--)this._active[m].start();else this._handlerFb(this._id,"START")}_put(m,y,b){if(this._active.length)for(let g=this._active.length-1;g>=0;g--)this._active[g].put(m,y,b);else this._handlerFb(this._id,"PUT",(0,_.utf32ToString)(m,y,b))}start(){this.reset(),this._state=1}put(m,y,b){if(this._state!==3){if(this._state===1)for(;y<b;){const g=m[y++];if(g===59){this._state=2,this._start();break}if(g<48||57<g)return void(this._state=3);this._id===-1&&(this._id=0),this._id=10*this._id+g-48}this._state===2&&b-y>0&&this._put(m,y,b)}}end(m,y=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),this._active.length){let b=!1,g=this._active.length-1,a=!1;if(this._stack.paused&&(g=this._stack.loopPosition-1,b=y,a=this._stack.fallThrough,this._stack.paused=!1),!a&&b===!1){for(;g>=0&&(b=this._active[g].end(m),b!==!0);g--)if(b instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=g,this._stack.fallThrough=!1,b;g--}for(;g>=0;g--)if(b=this._active[g].end(!1),b instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=g,this._stack.fallThrough=!0,b}else this._handlerFb(this._id,"END",m);this._active=c,this._id=-1,this._state=0}}},r.OscHandler=class{constructor(m){this._handler=m,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(m,y,b){this._hitLimit||(this._data+=(0,_.utf32ToString)(m,y,b),this._data.length>f.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))}end(m){let y=!1;if(this._hitLimit)y=!1;else if(m&&(y=this._handler(this._data),y instanceof Promise))return y.then(b=>(this._data="",this._hitLimit=!1,b));return this._data="",this._hitLimit=!1,y}}},8742:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Params=void 0;const o=2147483647;class f{static fromArray(c){const m=new f;if(!c.length)return m;for(let y=Array.isArray(c[0])?1:0;y<c.length;++y){const b=c[y];if(Array.isArray(b))for(let g=0;g<b.length;++g)m.addSubParam(b[g]);else m.addParam(b)}return m}constructor(c=32,m=32){if(this.maxLength=c,this.maxSubParamsLength=m,m>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(c),this.length=0,this._subParams=new Int32Array(m),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(c),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}clone(){const c=new f(this.maxLength,this.maxSubParamsLength);return c.params.set(this.params),c.length=this.length,c._subParams.set(this._subParams),c._subParamsLength=this._subParamsLength,c._subParamsIdx.set(this._subParamsIdx),c._rejectDigits=this._rejectDigits,c._rejectSubDigits=this._rejectSubDigits,c._digitIsSub=this._digitIsSub,c}toArray(){const c=[];for(let m=0;m<this.length;++m){c.push(this.params[m]);const y=this._subParamsIdx[m]>>8,b=255&this._subParamsIdx[m];b-y>0&&c.push(Array.prototype.slice.call(this._subParams,y,b))}return c}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(c){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(c<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=c>o?o:c}}addSubParam(c){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(c<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=c>o?o:c,this._subParamsIdx[this.length-1]++}}hasSubParams(c){return(255&this._subParamsIdx[c])-(this._subParamsIdx[c]>>8)>0}getSubParams(c){const m=this._subParamsIdx[c]>>8,y=255&this._subParamsIdx[c];return y-m>0?this._subParams.subarray(m,y):null}getSubParamsAll(){const c={};for(let m=0;m<this.length;++m){const y=this._subParamsIdx[m]>>8,b=255&this._subParamsIdx[m];b-y>0&&(c[m]=this._subParams.slice(y,b))}return c}addDigit(c){let m;if(this._rejectDigits||!(m=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;const y=this._digitIsSub?this._subParams:this.params,b=y[m-1];y[m-1]=~b?Math.min(10*b+c,o):c}}r.Params=f},5741:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.AddonManager=void 0,r.AddonManager=class{constructor(){this._addons=[]}dispose(){for(let o=this._addons.length-1;o>=0;o--)this._addons[o].instance.dispose()}loadAddon(o,f){const _={instance:f,dispose:f.dispose,isDisposed:!1};this._addons.push(_),f.dispose=()=>this._wrappedAddonDispose(_),f.activate(o)}_wrappedAddonDispose(o){if(o.isDisposed)return;let f=-1;for(let _=0;_<this._addons.length;_++)if(this._addons[_]===o){f=_;break}if(f===-1)throw new Error("Could not dispose an addon that has not been loaded");o.isDisposed=!0,o.dispose.apply(o.instance),this._addons.splice(f,1)}}},8771:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BufferApiView=void 0;const f=o(3785),_=o(511);r.BufferApiView=class{constructor(c,m){this._buffer=c,this.type=m}init(c){return this._buffer=c,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(c){const m=this._buffer.lines.get(c);if(m)return new f.BufferLineApiView(m)}getNullCell(){return new _.CellData}}},3785:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BufferLineApiView=void 0;const f=o(511);r.BufferLineApiView=class{constructor(_){this._line=_}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(_,c){if(!(_<0||_>=this._line.length))return c?(this._line.loadCell(_,c),c):this._line.loadCell(_,new f.CellData)}translateToString(_,c,m){return this._line.translateToString(_,c,m)}}},8285:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BufferNamespaceApi=void 0;const f=o(8771),_=o(8460),c=o(844);class m extends c.Disposable{constructor(b){super(),this._core=b,this._onBufferChange=this.register(new _.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)}}r.BufferNamespaceApi=m},7975:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ParserApi=void 0,r.ParserApi=class{constructor(o){this._core=o}registerCsiHandler(o,f){return this._core.registerCsiHandler(o,_=>f(_.toArray()))}addCsiHandler(o,f){return this.registerCsiHandler(o,f)}registerDcsHandler(o,f){return this._core.registerDcsHandler(o,(_,c)=>f(_,c.toArray()))}addDcsHandler(o,f){return this.registerDcsHandler(o,f)}registerEscHandler(o,f){return this._core.registerEscHandler(o,f)}addEscHandler(o,f){return this.registerEscHandler(o,f)}registerOscHandler(o,f){return this._core.registerOscHandler(o,f)}addOscHandler(o,f){return this.registerOscHandler(o,f)}}},7090:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.UnicodeApi=void 0,r.UnicodeApi=class{constructor(o){this._core=o}register(o){this._core.unicodeService.register(o)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(o){this._core.unicodeService.activeVersion=o}}},744:function(p,r,o){var f=this&&this.__decorate||function(a,h,l,d){var w,k=arguments.length,C=k<3?h:d===null?d=Object.getOwnPropertyDescriptor(h,l):d;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(a,h,l,d);else for(var L=a.length-1;L>=0;L--)(w=a[L])&&(C=(k<3?w(C):k>3?w(h,l,C):w(h,l))||C);return k>3&&C&&Object.defineProperty(h,l,C),C},_=this&&this.__param||function(a,h){return function(l,d){h(l,d,a)}};Object.defineProperty(r,"__esModule",{value:!0}),r.BufferService=r.MINIMUM_ROWS=r.MINIMUM_COLS=void 0;const c=o(8460),m=o(844),y=o(5295),b=o(2585);r.MINIMUM_COLS=2,r.MINIMUM_ROWS=1;let g=r.BufferService=class extends m.Disposable{get buffer(){return this.buffers.active}constructor(a){super(),this.isUserScrolling=!1,this._onResize=this.register(new c.EventEmitter),this.onResize=this._onResize.event,this._onScroll=this.register(new c.EventEmitter),this.onScroll=this._onScroll.event,this.cols=Math.max(a.rawOptions.cols||0,r.MINIMUM_COLS),this.rows=Math.max(a.rawOptions.rows||0,r.MINIMUM_ROWS),this.buffers=this.register(new y.BufferSet(a,this))}resize(a,h){this.cols=a,this.rows=h,this.buffers.resize(a,h),this._onResize.fire({cols:a,rows:h})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(a,h=!1){const l=this.buffer;let d;d=this._cachedBlankLine,d&&d.length===this.cols&&d.getFg(0)===a.fg&&d.getBg(0)===a.bg||(d=l.getBlankLine(a,h),this._cachedBlankLine=d),d.isWrapped=h;const w=l.ybase+l.scrollTop,k=l.ybase+l.scrollBottom;if(l.scrollTop===0){const C=l.lines.isFull;k===l.lines.length-1?C?l.lines.recycle().copyFrom(d):l.lines.push(d.clone()):l.lines.splice(k+1,0,d.clone()),C?this.isUserScrolling&&(l.ydisp=Math.max(l.ydisp-1,0)):(l.ybase++,this.isUserScrolling||l.ydisp++)}else{const C=k-w+1;l.lines.shiftElements(w+1,C-1,-1),l.lines.set(k,d.clone())}this.isUserScrolling||(l.ydisp=l.ybase),this._onScroll.fire(l.ydisp)}scrollLines(a,h,l){const d=this.buffer;if(a<0){if(d.ydisp===0)return;this.isUserScrolling=!0}else a+d.ydisp>=d.ybase&&(this.isUserScrolling=!1);const w=d.ydisp;d.ydisp=Math.max(Math.min(d.ydisp+a,d.ybase),0),w!==d.ydisp&&(h||this._onScroll.fire(d.ydisp))}};r.BufferService=g=f([_(0,b.IOptionsService)],g)},7994:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CharsetService=void 0,r.CharsetService=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(o){this.glevel=o,this.charset=this._charsets[o]}setgCharset(o,f){this._charsets[o]=f,this.glevel===o&&(this.charset=f)}}},1753:function(p,r,o){var f=this&&this.__decorate||function(d,w,k,C){var L,x=arguments.length,E=x<3?w:C===null?C=Object.getOwnPropertyDescriptor(w,k):C;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")E=Reflect.decorate(d,w,k,C);else for(var R=d.length-1;R>=0;R--)(L=d[R])&&(E=(x<3?L(E):x>3?L(w,k,E):L(w,k))||E);return x>3&&E&&Object.defineProperty(w,k,E),E},_=this&&this.__param||function(d,w){return function(k,C){w(k,C,d)}};Object.defineProperty(r,"__esModule",{value:!0}),r.CoreMouseService=void 0;const c=o(2585),m=o(8460),y=o(844),b={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:d=>d.button!==4&&d.action===1&&(d.ctrl=!1,d.alt=!1,d.shift=!1,!0)},VT200:{events:19,restrict:d=>d.action!==32},DRAG:{events:23,restrict:d=>d.action!==32||d.button!==3},ANY:{events:31,restrict:d=>!0}};function g(d,w){let k=(d.ctrl?16:0)|(d.shift?4:0)|(d.alt?8:0);return d.button===4?(k|=64,k|=d.action):(k|=3&d.button,4&d.button&&(k|=64),8&d.button&&(k|=128),d.action===32?k|=32:d.action!==0||w||(k|=3)),k}const a=String.fromCharCode,h={DEFAULT:d=>{const w=[g(d,!1)+32,d.col+32,d.row+32];return w[0]>255||w[1]>255||w[2]>255?"":`\x1B[M${a(w[0])}${a(w[1])}${a(w[2])}`},SGR:d=>{const w=d.action===0&&d.button!==4?"m":"M";return`\x1B[<${g(d,!0)};${d.col};${d.row}${w}`},SGR_PIXELS:d=>{const w=d.action===0&&d.button!==4?"m":"M";return`\x1B[<${g(d,!0)};${d.x};${d.y}${w}`}};let l=r.CoreMouseService=class extends y.Disposable{constructor(d,w){super(),this._bufferService=d,this._coreService=w,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._onProtocolChange=this.register(new m.EventEmitter),this.onProtocolChange=this._onProtocolChange.event;for(const k of Object.keys(b))this.addProtocol(k,b[k]);for(const k of Object.keys(h))this.addEncoding(k,h[k]);this.reset()}addProtocol(d,w){this._protocols[d]=w}addEncoding(d,w){this._encodings[d]=w}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(d){if(!this._protocols[d])throw new Error(`unknown protocol "${d}"`);this._activeProtocol=d,this._onProtocolChange.fire(this._protocols[d].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(d){if(!this._encodings[d])throw new Error(`unknown encoding "${d}"`);this._activeEncoding=d}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null}triggerMouseEvent(d){if(d.col<0||d.col>=this._bufferService.cols||d.row<0||d.row>=this._bufferService.rows||d.button===4&&d.action===32||d.button===3&&d.action!==32||d.button!==4&&(d.action===2||d.action===3)||(d.col++,d.row++,d.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,d,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(d))return!1;const w=this._encodings[this._activeEncoding](d);return w&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(w):this._coreService.triggerDataEvent(w,!0)),this._lastEvent=d,!0}explainEvents(d){return{down:!!(1&d),up:!!(2&d),drag:!!(4&d),move:!!(8&d),wheel:!!(16&d)}}_equalEvents(d,w,k){if(k){if(d.x!==w.x||d.y!==w.y)return!1}else if(d.col!==w.col||d.row!==w.row)return!1;return d.button===w.button&&d.action===w.action&&d.ctrl===w.ctrl&&d.alt===w.alt&&d.shift===w.shift}};r.CoreMouseService=l=f([_(0,c.IBufferService),_(1,c.ICoreService)],l)},6975:function(p,r,o){var f=this&&this.__decorate||function(l,d,w,k){var C,L=arguments.length,x=L<3?d:k===null?k=Object.getOwnPropertyDescriptor(d,w):k;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")x=Reflect.decorate(l,d,w,k);else for(var E=l.length-1;E>=0;E--)(C=l[E])&&(x=(L<3?C(x):L>3?C(d,w,x):C(d,w))||x);return L>3&&x&&Object.defineProperty(d,w,x),x},_=this&&this.__param||function(l,d){return function(w,k){d(w,k,l)}};Object.defineProperty(r,"__esModule",{value:!0}),r.CoreService=void 0;const c=o(1439),m=o(8460),y=o(844),b=o(2585),g=Object.freeze({insertMode:!1}),a=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0});let h=r.CoreService=class extends y.Disposable{constructor(l,d,w){super(),this._bufferService=l,this._logService=d,this._optionsService=w,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this.register(new m.EventEmitter),this.onData=this._onData.event,this._onUserInput=this.register(new m.EventEmitter),this.onUserInput=this._onUserInput.event,this._onBinary=this.register(new m.EventEmitter),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this.register(new m.EventEmitter),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=(0,c.clone)(g),this.decPrivateModes=(0,c.clone)(a)}reset(){this.modes=(0,c.clone)(g),this.decPrivateModes=(0,c.clone)(a)}triggerDataEvent(l,d=!1){if(this._optionsService.rawOptions.disableStdin)return;const w=this._bufferService.buffer;d&&this._optionsService.rawOptions.scrollOnUserInput&&w.ybase!==w.ydisp&&this._onRequestScrollToBottom.fire(),d&&this._onUserInput.fire(),this._logService.debug(`sending data "${l}"`,()=>l.split("").map(k=>k.charCodeAt(0))),this._onData.fire(l)}triggerBinaryEvent(l){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${l}"`,()=>l.split("").map(d=>d.charCodeAt(0))),this._onBinary.fire(l))}};r.CoreService=h=f([_(0,b.IBufferService),_(1,b.ILogService),_(2,b.IOptionsService)],h)},9074:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.DecorationService=void 0;const f=o(8055),_=o(8460),c=o(844),m=o(6106);let y=0,b=0;class g extends c.Disposable{get decorations(){return this._decorations.values()}constructor(){super(),this._decorations=new m.SortedList(l=>l==null?void 0:l.marker.line),this._onDecorationRegistered=this.register(new _.EventEmitter),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this.register(new _.EventEmitter),this.onDecorationRemoved=this._onDecorationRemoved.event,this.register((0,c.toDisposable)(()=>this.reset()))}registerDecoration(l){if(l.marker.isDisposed)return;const d=new a(l);if(d){const w=d.marker.onDispose(()=>d.dispose());d.onDispose(()=>{d&&(this._decorations.delete(d)&&this._onDecorationRemoved.fire(d),w.dispose())}),this._decorations.insert(d),this._onDecorationRegistered.fire(d)}return d}reset(){for(const l of this._decorations.values())l.dispose();this._decorations.clear()}*getDecorationsAtCell(l,d,w){let k=0,C=0;for(const L of this._decorations.getKeyIterator(d))k=L.options.x??0,C=k+(L.options.width??1),l>=k&&l<C&&(!w||(L.options.layer??"bottom")===w)&&(yield L)}forEachDecorationAtCell(l,d,w,k){this._decorations.forEachByKey(d,C=>{y=C.options.x??0,b=y+(C.options.width??1),l>=y&&l<b&&(!w||(C.options.layer??"bottom")===w)&&k(C)})}}r.DecorationService=g;class a extends c.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(l){super(),this.options=l,this.onRenderEmitter=this.register(new _.EventEmitter),this.onRender=this.onRenderEmitter.event,this._onDispose=this.register(new _.EventEmitter),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=l.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}dispose(){this._onDispose.fire(),super.dispose()}}},4348:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.InstantiationService=r.ServiceCollection=void 0;const f=o(2585),_=o(8343);class c{constructor(...y){this._entries=new Map;for(const[b,g]of y)this.set(b,g)}set(y,b){const g=this._entries.get(y);return this._entries.set(y,b),g}forEach(y){for(const[b,g]of this._entries.entries())y(b,g)}has(y){return this._entries.has(y)}get(y){return this._entries.get(y)}}r.ServiceCollection=c,r.InstantiationService=class{constructor(){this._services=new c,this._services.set(f.IInstantiationService,this)}setService(m,y){this._services.set(m,y)}getService(m){return this._services.get(m)}createInstance(m,...y){const b=(0,_.getServiceDependencies)(m).sort((h,l)=>h.index-l.index),g=[];for(const h of b){const l=this._services.get(h.id);if(!l)throw new Error(`[createInstance] ${m.name} depends on UNKNOWN service ${h.id}.`);g.push(l)}const a=b.length>0?b[0].index:y.length;if(y.length!==a)throw new Error(`[createInstance] First service dependency of ${m.name} at position ${a+1} conflicts with ${y.length} static arguments`);return new m(...y,...g)}}},7866:function(p,r,o){var f=this&&this.__decorate||function(a,h,l,d){var w,k=arguments.length,C=k<3?h:d===null?d=Object.getOwnPropertyDescriptor(h,l):d;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(a,h,l,d);else for(var L=a.length-1;L>=0;L--)(w=a[L])&&(C=(k<3?w(C):k>3?w(h,l,C):w(h,l))||C);return k>3&&C&&Object.defineProperty(h,l,C),C},_=this&&this.__param||function(a,h){return function(l,d){h(l,d,a)}};Object.defineProperty(r,"__esModule",{value:!0}),r.traceCall=r.setTraceLogger=r.LogService=void 0;const c=o(844),m=o(2585),y={trace:m.LogLevelEnum.TRACE,debug:m.LogLevelEnum.DEBUG,info:m.LogLevelEnum.INFO,warn:m.LogLevelEnum.WARN,error:m.LogLevelEnum.ERROR,off:m.LogLevelEnum.OFF};let b,g=r.LogService=class extends c.Disposable{get logLevel(){return this._logLevel}constructor(a){super(),this._optionsService=a,this._logLevel=m.LogLevelEnum.OFF,this._updateLogLevel(),this.register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel())),b=this}_updateLogLevel(){this._logLevel=y[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(a){for(let h=0;h<a.length;h++)typeof a[h]=="function"&&(a[h]=a[h]())}_log(a,h,l){this._evalLazyOptionalParams(l),a.call(console,(this._optionsService.options.logger?"":"xterm.js: ")+h,...l)}trace(a,...h){var l;this._logLevel<=m.LogLevelEnum.TRACE&&this._log(((l=this._optionsService.options.logger)==null?void 0:l.trace.bind(this._optionsService.options.logger))??console.log,a,h)}debug(a,...h){var l;this._logLevel<=m.LogLevelEnum.DEBUG&&this._log(((l=this._optionsService.options.logger)==null?void 0:l.debug.bind(this._optionsService.options.logger))??console.log,a,h)}info(a,...h){var l;this._logLevel<=m.LogLevelEnum.INFO&&this._log(((l=this._optionsService.options.logger)==null?void 0:l.info.bind(this._optionsService.options.logger))??console.info,a,h)}warn(a,...h){var l;this._logLevel<=m.LogLevelEnum.WARN&&this._log(((l=this._optionsService.options.logger)==null?void 0:l.warn.bind(this._optionsService.options.logger))??console.warn,a,h)}error(a,...h){var l;this._logLevel<=m.LogLevelEnum.ERROR&&this._log(((l=this._optionsService.options.logger)==null?void 0:l.error.bind(this._optionsService.options.logger))??console.error,a,h)}};r.LogService=g=f([_(0,m.IOptionsService)],g),r.setTraceLogger=function(a){b=a},r.traceCall=function(a,h,l){if(typeof l.value!="function")throw new Error("not supported");const d=l.value;l.value=function(...w){if(b.logLevel!==m.LogLevelEnum.TRACE)return d.apply(this,w);b.trace(`GlyphRenderer#${d.name}(${w.map(C=>JSON.stringify(C)).join(", ")})`);const k=d.apply(this,w);return b.trace(`GlyphRenderer#${d.name} return`,k),k}}},7302:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.OptionsService=r.DEFAULT_OPTIONS=void 0;const f=o(8460),_=o(844),c=o(6114);r.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:c.isMac,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRulerWidth:0};const m=["normal","bold","100","200","300","400","500","600","700","800","900"];class y extends _.Disposable{constructor(g){super(),this._onOptionChange=this.register(new f.EventEmitter),this.onOptionChange=this._onOptionChange.event;const a={...r.DEFAULT_OPTIONS};for(const h in g)if(h in a)try{const l=g[h];a[h]=this._sanitizeAndValidateOption(h,l)}catch(l){console.error(l)}this.rawOptions=a,this.options={...a},this._setupOptions(),this.register((0,_.toDisposable)(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(g,a){return this.onOptionChange(h=>{h===g&&a(this.rawOptions[g])})}onMultipleOptionChange(g,a){return this.onOptionChange(h=>{g.indexOf(h)!==-1&&a()})}_setupOptions(){const g=h=>{if(!(h in r.DEFAULT_OPTIONS))throw new Error(`No option with key "${h}"`);return this.rawOptions[h]},a=(h,l)=>{if(!(h in r.DEFAULT_OPTIONS))throw new Error(`No option with key "${h}"`);l=this._sanitizeAndValidateOption(h,l),this.rawOptions[h]!==l&&(this.rawOptions[h]=l,this._onOptionChange.fire(h))};for(const h in this.rawOptions){const l={get:g.bind(this,h),set:a.bind(this,h)};Object.defineProperty(this.options,h,l)}}_sanitizeAndValidateOption(g,a){switch(g){case"cursorStyle":if(a||(a=r.DEFAULT_OPTIONS[g]),!function(h){return h==="block"||h==="underline"||h==="bar"}(a))throw new Error(`"${a}" is not a valid value for ${g}`);break;case"wordSeparator":a||(a=r.DEFAULT_OPTIONS[g]);break;case"fontWeight":case"fontWeightBold":if(typeof a=="number"&&1<=a&&a<=1e3)break;a=m.includes(a)?a:r.DEFAULT_OPTIONS[g];break;case"cursorWidth":a=Math.floor(a);case"lineHeight":case"tabStopWidth":if(a<1)throw new Error(`${g} cannot be less than 1, value: ${a}`);break;case"minimumContrastRatio":a=Math.max(1,Math.min(21,Math.round(10*a)/10));break;case"scrollback":if((a=Math.min(a,4294967295))<0)throw new Error(`${g} cannot be less than 0, value: ${a}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(a<=0)throw new Error(`${g} cannot be less than or equal to 0, value: ${a}`);break;case"rows":case"cols":if(!a&&a!==0)throw new Error(`${g} must be numeric, value: ${a}`);break;case"windowsPty":a=a??{}}return a}}r.OptionsService=y},2660:function(p,r,o){var f=this&&this.__decorate||function(y,b,g,a){var h,l=arguments.length,d=l<3?b:a===null?a=Object.getOwnPropertyDescriptor(b,g):a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")d=Reflect.decorate(y,b,g,a);else for(var w=y.length-1;w>=0;w--)(h=y[w])&&(d=(l<3?h(d):l>3?h(b,g,d):h(b,g))||d);return l>3&&d&&Object.defineProperty(b,g,d),d},_=this&&this.__param||function(y,b){return function(g,a){b(g,a,y)}};Object.defineProperty(r,"__esModule",{value:!0}),r.OscLinkService=void 0;const c=o(2585);let m=r.OscLinkService=class{constructor(y){this._bufferService=y,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(y){const b=this._bufferService.buffer;if(y.id===void 0){const w=b.addMarker(b.ybase+b.y),k={data:y,id:this._nextId++,lines:[w]};return w.onDispose(()=>this._removeMarkerFromLink(k,w)),this._dataByLinkId.set(k.id,k),k.id}const g=y,a=this._getEntryIdKey(g),h=this._entriesWithId.get(a);if(h)return this.addLineToLink(h.id,b.ybase+b.y),h.id;const l=b.addMarker(b.ybase+b.y),d={id:this._nextId++,key:this._getEntryIdKey(g),data:g,lines:[l]};return l.onDispose(()=>this._removeMarkerFromLink(d,l)),this._entriesWithId.set(d.key,d),this._dataByLinkId.set(d.id,d),d.id}addLineToLink(y,b){const g=this._dataByLinkId.get(y);if(g&&g.lines.every(a=>a.line!==b)){const a=this._bufferService.buffer.addMarker(b);g.lines.push(a),a.onDispose(()=>this._removeMarkerFromLink(g,a))}}getLinkData(y){var b;return(b=this._dataByLinkId.get(y))==null?void 0:b.data}_getEntryIdKey(y){return`${y.id};;${y.uri}`}_removeMarkerFromLink(y,b){const g=y.lines.indexOf(b);g!==-1&&(y.lines.splice(g,1),y.lines.length===0&&(y.data.id!==void 0&&this._entriesWithId.delete(y.key),this._dataByLinkId.delete(y.id)))}};r.OscLinkService=m=f([_(0,c.IBufferService)],m)},8343:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.createDecorator=r.getServiceDependencies=r.serviceRegistry=void 0;const o="di$target",f="di$dependencies";r.serviceRegistry=new Map,r.getServiceDependencies=function(_){return _[f]||[]},r.createDecorator=function(_){if(r.serviceRegistry.has(_))return r.serviceRegistry.get(_);const c=function(m,y,b){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");(function(g,a,h){a[o]===a?a[f].push({id:g,index:h}):(a[f]=[{id:g,index:h}],a[o]=a)})(c,m,b)};return c.toString=()=>_,r.serviceRegistry.set(_,c),c}},2585:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.IDecorationService=r.IUnicodeService=r.IOscLinkService=r.IOptionsService=r.ILogService=r.LogLevelEnum=r.IInstantiationService=r.ICharsetService=r.ICoreService=r.ICoreMouseService=r.IBufferService=void 0;const f=o(8343);var _;r.IBufferService=(0,f.createDecorator)("BufferService"),r.ICoreMouseService=(0,f.createDecorator)("CoreMouseService"),r.ICoreService=(0,f.createDecorator)("CoreService"),r.ICharsetService=(0,f.createDecorator)("CharsetService"),r.IInstantiationService=(0,f.createDecorator)("InstantiationService"),function(c){c[c.TRACE=0]="TRACE",c[c.DEBUG=1]="DEBUG",c[c.INFO=2]="INFO",c[c.WARN=3]="WARN",c[c.ERROR=4]="ERROR",c[c.OFF=5]="OFF"}(_||(r.LogLevelEnum=_={})),r.ILogService=(0,f.createDecorator)("LogService"),r.IOptionsService=(0,f.createDecorator)("OptionsService"),r.IOscLinkService=(0,f.createDecorator)("OscLinkService"),r.IUnicodeService=(0,f.createDecorator)("UnicodeService"),r.IDecorationService=(0,f.createDecorator)("DecorationService")},1480:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.UnicodeService=void 0;const f=o(8460),_=o(225);class c{static extractShouldJoin(y){return(1&y)!=0}static extractWidth(y){return y>>1&3}static extractCharKind(y){return y>>3}static createPropertyValue(y,b,g=!1){return(16777215&y)<<3|(3&b)<<1|(g?1:0)}constructor(){this._providers=Object.create(null),this._active="",this._onChange=new f.EventEmitter,this.onChange=this._onChange.event;const y=new _.UnicodeV6;this.register(y),this._active=y.version,this._activeProvider=y}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(y){if(!this._providers[y])throw new Error(`unknown Unicode version "${y}"`);this._active=y,this._activeProvider=this._providers[y],this._onChange.fire(y)}register(y){this._providers[y.version]=y}wcwidth(y){return this._activeProvider.wcwidth(y)}getStringCellWidth(y){let b=0,g=0;const a=y.length;for(let h=0;h<a;++h){let l=y.charCodeAt(h);if(55296<=l&&l<=56319){if(++h>=a)return b+this.wcwidth(l);const k=y.charCodeAt(h);56320<=k&&k<=57343?l=1024*(l-55296)+k-56320+65536:b+=this.wcwidth(k)}const d=this.charProperties(l,g);let w=c.extractWidth(d);c.extractShouldJoin(d)&&(w-=c.extractWidth(g)),b+=w,g=d}return b}charProperties(y,b){return this._activeProvider.charProperties(y,b)}}r.UnicodeService=c}},s={};function n(p){var r=s[p];if(r!==void 0)return r.exports;var o=s[p]={exports:{}};return i[p].call(o.exports,o,o.exports,n),o.exports}var u={};return(()=>{var p=u;Object.defineProperty(p,"__esModule",{value:!0}),p.Terminal=void 0;const r=n(9042),o=n(3236),f=n(844),_=n(5741),c=n(8285),m=n(7975),y=n(7090),b=["cols","rows"];class g extends f.Disposable{constructor(h){super(),this._core=this.register(new o.Terminal(h)),this._addonManager=this.register(new _.AddonManager),this._publicOptions={...this._core.options};const l=w=>this._core.options[w],d=(w,k)=>{this._checkReadonlyOptions(w),this._core.options[w]=k};for(const w in this._core.options){const k={get:l.bind(this,w),set:d.bind(this,w)};Object.defineProperty(this._publicOptions,w,k)}}_checkReadonlyOptions(h){if(b.includes(h))throw new Error(`Option "${h}" 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 m.ParserApi(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new y.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 c.BufferNamespaceApi(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){const h=this._core.coreService.decPrivateModes;let l="none";switch(this._core.coreMouseService.activeProtocol){case"X10":l="x10";break;case"VT200":l="vt200";break;case"DRAG":l="drag";break;case"ANY":l="any"}return{applicationCursorKeysMode:h.applicationCursorKeys,applicationKeypadMode:h.applicationKeypad,bracketedPasteMode:h.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:l,originMode:h.origin,reverseWraparoundMode:h.reverseWraparound,sendFocusMode:h.sendFocus,wraparoundMode:h.wraparound}}get options(){return this._publicOptions}set options(h){for(const l in h)this._publicOptions[l]=h[l]}blur(){this._core.blur()}focus(){this._core.focus()}input(h,l=!0){this._core.input(h,l)}resize(h,l){this._verifyIntegers(h,l),this._core.resize(h,l)}open(h){this._core.open(h)}attachCustomKeyEventHandler(h){this._core.attachCustomKeyEventHandler(h)}attachCustomWheelEventHandler(h){this._core.attachCustomWheelEventHandler(h)}registerLinkProvider(h){return this._core.registerLinkProvider(h)}registerCharacterJoiner(h){return this._checkProposedApi(),this._core.registerCharacterJoiner(h)}deregisterCharacterJoiner(h){this._checkProposedApi(),this._core.deregisterCharacterJoiner(h)}registerMarker(h=0){return this._verifyIntegers(h),this._core.registerMarker(h)}registerDecoration(h){return this._checkProposedApi(),this._verifyPositiveIntegers(h.x??0,h.width??0,h.height??0),this._core.registerDecoration(h)}hasSelection(){return this._core.hasSelection()}select(h,l,d){this._verifyIntegers(h,l,d),this._core.select(h,l,d)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(h,l){this._verifyIntegers(h,l),this._core.selectLines(h,l)}dispose(){super.dispose()}scrollLines(h){this._verifyIntegers(h),this._core.scrollLines(h)}scrollPages(h){this._verifyIntegers(h),this._core.scrollPages(h)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(h){this._verifyIntegers(h),this._core.scrollToLine(h)}clear(){this._core.clear()}write(h,l){this._core.write(h,l)}writeln(h,l){this._core.write(h),this._core.write(`\r
|
|
50
|
+
`,l)}paste(h){this._core.paste(h)}refresh(h,l){this._verifyIntegers(h,l),this._core.refresh(h,l)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(h){this._addonManager.loadAddon(this,h)}static get strings(){return r}_verifyIntegers(...h){for(const l of h)if(l===1/0||isNaN(l)||l%1!=0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...h){for(const l of h)if(l&&(l===1/0||isNaN(l)||l%1!=0||l<0))throw new Error("This API only accepts positive integers")}}p.Terminal=g})(),u})())})(Qg);var w1=Qg.exports,t_={exports:{}};(function(e,t){(function(i,s){e.exports=s()})(self,()=>(()=>{var i={965:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.GlyphRenderer=void 0;const f=o(374),_=o(509),c=o(855),m=o(859),y=o(381),b=11,g=b*Float32Array.BYTES_PER_ELEMENT;let a,h=0,l=0,d=0;class w extends m.Disposable{constructor(C,L,x,E){super(),this._terminal=C,this._gl=L,this._dimensions=x,this._optionsService=E,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)]};const R=this._gl;_.TextureAtlas.maxAtlasPages===void 0&&(_.TextureAtlas.maxAtlasPages=Math.min(32,(0,f.throwIfFalsy)(R.getParameter(R.MAX_TEXTURE_IMAGE_UNITS))),_.TextureAtlas.maxTextureSize=(0,f.throwIfFalsy)(R.getParameter(R.MAX_TEXTURE_SIZE))),this._program=(0,f.throwIfFalsy)((0,y.createProgram)(R,`#version 300 es
|
|
51
|
+
layout (location = 0) in vec2 a_unitquad;
|
|
52
|
+
layout (location = 1) in vec2 a_cellpos;
|
|
53
|
+
layout (location = 2) in vec2 a_offset;
|
|
54
|
+
layout (location = 3) in vec2 a_size;
|
|
55
|
+
layout (location = 4) in float a_texpage;
|
|
56
|
+
layout (location = 5) in vec2 a_texcoord;
|
|
57
|
+
layout (location = 6) in vec2 a_texsize;
|
|
58
|
+
|
|
59
|
+
uniform mat4 u_projection;
|
|
60
|
+
uniform vec2 u_resolution;
|
|
61
|
+
|
|
62
|
+
out vec2 v_texcoord;
|
|
63
|
+
flat out int v_texpage;
|
|
64
|
+
|
|
65
|
+
void main() {
|
|
66
|
+
vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);
|
|
67
|
+
gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);
|
|
68
|
+
v_texpage = int(a_texpage);
|
|
69
|
+
v_texcoord = a_texcoord + a_unitquad * a_texsize;
|
|
70
|
+
}`,function($){let V="";for(let H=1;H<$;H++)V+=` else if (v_texpage == ${H}) { outColor = texture(u_texture[${H}], v_texcoord); }`;return`#version 300 es
|
|
71
|
+
precision lowp float;
|
|
72
|
+
|
|
73
|
+
in vec2 v_texcoord;
|
|
74
|
+
flat in int v_texpage;
|
|
75
|
+
|
|
76
|
+
uniform sampler2D u_texture[${$}];
|
|
77
|
+
|
|
78
|
+
out vec4 outColor;
|
|
79
|
+
|
|
80
|
+
void main() {
|
|
81
|
+
if (v_texpage == 0) {
|
|
82
|
+
outColor = texture(u_texture[0], v_texcoord);
|
|
83
|
+
} ${V}
|
|
84
|
+
}`}(_.TextureAtlas.maxAtlasPages))),this.register((0,m.toDisposable)(()=>R.deleteProgram(this._program))),this._projectionLocation=(0,f.throwIfFalsy)(R.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=(0,f.throwIfFalsy)(R.getUniformLocation(this._program,"u_resolution")),this._textureLocation=(0,f.throwIfFalsy)(R.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=R.createVertexArray(),R.bindVertexArray(this._vertexArrayObject);const I=new Float32Array([0,0,1,0,0,1,1,1]),T=R.createBuffer();this.register((0,m.toDisposable)(()=>R.deleteBuffer(T))),R.bindBuffer(R.ARRAY_BUFFER,T),R.bufferData(R.ARRAY_BUFFER,I,R.STATIC_DRAW),R.enableVertexAttribArray(0),R.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);const A=new Uint8Array([0,1,2,3]),O=R.createBuffer();this.register((0,m.toDisposable)(()=>R.deleteBuffer(O))),R.bindBuffer(R.ELEMENT_ARRAY_BUFFER,O),R.bufferData(R.ELEMENT_ARRAY_BUFFER,A,R.STATIC_DRAW),this._attributesBuffer=(0,f.throwIfFalsy)(R.createBuffer()),this.register((0,m.toDisposable)(()=>R.deleteBuffer(this._attributesBuffer))),R.bindBuffer(R.ARRAY_BUFFER,this._attributesBuffer),R.enableVertexAttribArray(2),R.vertexAttribPointer(2,2,R.FLOAT,!1,g,0),R.vertexAttribDivisor(2,1),R.enableVertexAttribArray(3),R.vertexAttribPointer(3,2,R.FLOAT,!1,g,2*Float32Array.BYTES_PER_ELEMENT),R.vertexAttribDivisor(3,1),R.enableVertexAttribArray(4),R.vertexAttribPointer(4,1,R.FLOAT,!1,g,4*Float32Array.BYTES_PER_ELEMENT),R.vertexAttribDivisor(4,1),R.enableVertexAttribArray(5),R.vertexAttribPointer(5,2,R.FLOAT,!1,g,5*Float32Array.BYTES_PER_ELEMENT),R.vertexAttribDivisor(5,1),R.enableVertexAttribArray(6),R.vertexAttribPointer(6,2,R.FLOAT,!1,g,7*Float32Array.BYTES_PER_ELEMENT),R.vertexAttribDivisor(6,1),R.enableVertexAttribArray(1),R.vertexAttribPointer(1,2,R.FLOAT,!1,g,9*Float32Array.BYTES_PER_ELEMENT),R.vertexAttribDivisor(1,1),R.useProgram(this._program);const U=new Int32Array(_.TextureAtlas.maxAtlasPages);for(let $=0;$<_.TextureAtlas.maxAtlasPages;$++)U[$]=$;R.uniform1iv(this._textureLocation,U),R.uniformMatrix4fv(this._projectionLocation,!1,y.PROJECTION_MATRIX),this._atlasTextures=[];for(let $=0;$<_.TextureAtlas.maxAtlasPages;$++){const V=new y.GLTexture((0,f.throwIfFalsy)(R.createTexture()));this.register((0,m.toDisposable)(()=>R.deleteTexture(V.texture))),R.activeTexture(R.TEXTURE0+$),R.bindTexture(R.TEXTURE_2D,V.texture),R.texParameteri(R.TEXTURE_2D,R.TEXTURE_WRAP_S,R.CLAMP_TO_EDGE),R.texParameteri(R.TEXTURE_2D,R.TEXTURE_WRAP_T,R.CLAMP_TO_EDGE),R.texImage2D(R.TEXTURE_2D,0,R.RGBA,1,1,0,R.RGBA,R.UNSIGNED_BYTE,new Uint8Array([255,0,0,255])),this._atlasTextures[$]=V}R.enable(R.BLEND),R.blendFunc(R.SRC_ALPHA,R.ONE_MINUS_SRC_ALPHA),this.handleResize()}beginFrame(){return!this._atlas||this._atlas.beginFrame()}updateCell(C,L,x,E,R,I,T,A,O){this._updateCell(this._vertices.attributes,C,L,x,E,R,I,T,A,O)}_updateCell(C,L,x,E,R,I,T,A,O,U){h=(x*this._terminal.cols+L)*b,E!==c.NULL_CELL_CODE&&E!==void 0?this._atlas&&(a=A&&A.length>1?this._atlas.getRasterizedGlyphCombinedChar(A,R,I,T,!1):this._atlas.getRasterizedGlyph(E,R,I,T,!1),l=Math.floor((this._dimensions.device.cell.width-this._dimensions.device.char.width)/2),R!==U&&a.offset.x>l?(d=a.offset.x-l,C[h]=-(a.offset.x-d)+this._dimensions.device.char.left,C[h+1]=-a.offset.y+this._dimensions.device.char.top,C[h+2]=(a.size.x-d)/this._dimensions.device.canvas.width,C[h+3]=a.size.y/this._dimensions.device.canvas.height,C[h+4]=a.texturePage,C[h+5]=a.texturePositionClipSpace.x+d/this._atlas.pages[a.texturePage].canvas.width,C[h+6]=a.texturePositionClipSpace.y,C[h+7]=a.sizeClipSpace.x-d/this._atlas.pages[a.texturePage].canvas.width,C[h+8]=a.sizeClipSpace.y):(C[h]=-a.offset.x+this._dimensions.device.char.left,C[h+1]=-a.offset.y+this._dimensions.device.char.top,C[h+2]=a.size.x/this._dimensions.device.canvas.width,C[h+3]=a.size.y/this._dimensions.device.canvas.height,C[h+4]=a.texturePage,C[h+5]=a.texturePositionClipSpace.x,C[h+6]=a.texturePositionClipSpace.y,C[h+7]=a.sizeClipSpace.x,C[h+8]=a.sizeClipSpace.y),this._optionsService.rawOptions.rescaleOverlappingGlyphs&&(0,f.allowRescaling)(E,O,a.size.x,this._dimensions.device.cell.width)&&(C[h+2]=(this._dimensions.device.cell.width-1)/this._dimensions.device.canvas.width)):C.fill(0,h,h+b-1-2)}clear(){const C=this._terminal,L=C.cols*C.rows*b;this._vertices.count!==L?this._vertices.attributes=new Float32Array(L):this._vertices.attributes.fill(0);let x=0;for(;x<this._vertices.attributesBuffers.length;x++)this._vertices.count!==L?this._vertices.attributesBuffers[x]=new Float32Array(L):this._vertices.attributesBuffers[x].fill(0);this._vertices.count=L,x=0;for(let E=0;E<C.rows;E++)for(let R=0;R<C.cols;R++)this._vertices.attributes[x+9]=R/C.cols,this._vertices.attributes[x+10]=E/C.rows,x+=b}handleResize(){const C=this._gl;C.useProgram(this._program),C.viewport(0,0,C.canvas.width,C.canvas.height),C.uniform2f(this._resolutionLocation,C.canvas.width,C.canvas.height),this.clear()}render(C){if(!this._atlas)return;const L=this._gl;L.useProgram(this._program),L.bindVertexArray(this._vertexArrayObject),this._activeBuffer=(this._activeBuffer+1)%2;const x=this._vertices.attributesBuffers[this._activeBuffer];let E=0;for(let R=0;R<C.lineLengths.length;R++){const I=R*this._terminal.cols*b,T=this._vertices.attributes.subarray(I,I+C.lineLengths[R]*b);x.set(T,E),E+=T.length}L.bindBuffer(L.ARRAY_BUFFER,this._attributesBuffer),L.bufferData(L.ARRAY_BUFFER,x.subarray(0,E),L.STREAM_DRAW);for(let R=0;R<this._atlas.pages.length;R++)this._atlas.pages[R].version!==this._atlasTextures[R].version&&this._bindAtlasPageTexture(L,this._atlas,R);L.drawElementsInstanced(L.TRIANGLE_STRIP,4,L.UNSIGNED_BYTE,0,E/b)}setAtlas(C){this._atlas=C;for(const L of this._atlasTextures)L.version=-1}_bindAtlasPageTexture(C,L,x){C.activeTexture(C.TEXTURE0+x),C.bindTexture(C.TEXTURE_2D,this._atlasTextures[x].texture),C.texParameteri(C.TEXTURE_2D,C.TEXTURE_WRAP_S,C.CLAMP_TO_EDGE),C.texParameteri(C.TEXTURE_2D,C.TEXTURE_WRAP_T,C.CLAMP_TO_EDGE),C.texImage2D(C.TEXTURE_2D,0,C.RGBA,C.RGBA,C.UNSIGNED_BYTE,L.pages[x].canvas),C.generateMipmap(C.TEXTURE_2D),this._atlasTextures[x].version=L.pages[x].version}setDimensions(C){this._dimensions=C}}r.GlyphRenderer=w},742:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.RectangleRenderer=void 0;const f=o(374),_=o(859),c=o(310),m=o(381),y=8*Float32Array.BYTES_PER_ELEMENT;class b{constructor(){this.attributes=new Float32Array(160),this.count=0}}let g=0,a=0,h=0,l=0,d=0,w=0,k=0;class C extends _.Disposable{constructor(x,E,R,I){super(),this._terminal=x,this._gl=E,this._dimensions=R,this._themeService=I,this._vertices=new b,this._verticesCursor=new b;const T=this._gl;this._program=(0,f.throwIfFalsy)((0,m.createProgram)(T,`#version 300 es
|
|
85
|
+
layout (location = 0) in vec2 a_position;
|
|
86
|
+
layout (location = 1) in vec2 a_size;
|
|
87
|
+
layout (location = 2) in vec4 a_color;
|
|
88
|
+
layout (location = 3) in vec2 a_unitquad;
|
|
89
|
+
|
|
90
|
+
uniform mat4 u_projection;
|
|
91
|
+
|
|
92
|
+
out vec4 v_color;
|
|
93
|
+
|
|
94
|
+
void main() {
|
|
95
|
+
vec2 zeroToOne = a_position + (a_unitquad * a_size);
|
|
96
|
+
gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);
|
|
97
|
+
v_color = a_color;
|
|
98
|
+
}`,`#version 300 es
|
|
99
|
+
precision lowp float;
|
|
100
|
+
|
|
101
|
+
in vec4 v_color;
|
|
102
|
+
|
|
103
|
+
out vec4 outColor;
|
|
104
|
+
|
|
105
|
+
void main() {
|
|
106
|
+
outColor = v_color;
|
|
107
|
+
}`)),this.register((0,_.toDisposable)(()=>T.deleteProgram(this._program))),this._projectionLocation=(0,f.throwIfFalsy)(T.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=T.createVertexArray(),T.bindVertexArray(this._vertexArrayObject);const A=new Float32Array([0,0,1,0,0,1,1,1]),O=T.createBuffer();this.register((0,_.toDisposable)(()=>T.deleteBuffer(O))),T.bindBuffer(T.ARRAY_BUFFER,O),T.bufferData(T.ARRAY_BUFFER,A,T.STATIC_DRAW),T.enableVertexAttribArray(3),T.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);const U=new Uint8Array([0,1,2,3]),$=T.createBuffer();this.register((0,_.toDisposable)(()=>T.deleteBuffer($))),T.bindBuffer(T.ELEMENT_ARRAY_BUFFER,$),T.bufferData(T.ELEMENT_ARRAY_BUFFER,U,T.STATIC_DRAW),this._attributesBuffer=(0,f.throwIfFalsy)(T.createBuffer()),this.register((0,_.toDisposable)(()=>T.deleteBuffer(this._attributesBuffer))),T.bindBuffer(T.ARRAY_BUFFER,this._attributesBuffer),T.enableVertexAttribArray(0),T.vertexAttribPointer(0,2,T.FLOAT,!1,y,0),T.vertexAttribDivisor(0,1),T.enableVertexAttribArray(1),T.vertexAttribPointer(1,2,T.FLOAT,!1,y,2*Float32Array.BYTES_PER_ELEMENT),T.vertexAttribDivisor(1,1),T.enableVertexAttribArray(2),T.vertexAttribPointer(2,4,T.FLOAT,!1,y,4*Float32Array.BYTES_PER_ELEMENT),T.vertexAttribDivisor(2,1),this._updateCachedColors(I.colors),this.register(this._themeService.onChangeColors(V=>{this._updateCachedColors(V),this._updateViewportRectangle()}))}renderBackgrounds(){this._renderVertices(this._vertices)}renderCursor(){this._renderVertices(this._verticesCursor)}_renderVertices(x){const E=this._gl;E.useProgram(this._program),E.bindVertexArray(this._vertexArrayObject),E.uniformMatrix4fv(this._projectionLocation,!1,m.PROJECTION_MATRIX),E.bindBuffer(E.ARRAY_BUFFER,this._attributesBuffer),E.bufferData(E.ARRAY_BUFFER,x.attributes,E.DYNAMIC_DRAW),E.drawElementsInstanced(this._gl.TRIANGLE_STRIP,4,E.UNSIGNED_BYTE,0,x.count)}handleResize(){this._updateViewportRectangle()}setDimensions(x){this._dimensions=x}_updateCachedColors(x){this._bgFloat=this._colorToFloat32Array(x.background),this._cursorFloat=this._colorToFloat32Array(x.cursor)}_updateViewportRectangle(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.device.cell.width,this._terminal.rows*this._dimensions.device.cell.height,this._bgFloat)}updateBackgrounds(x){const E=this._terminal,R=this._vertices;let I,T,A,O,U,$,V,H,S,M,B,F=1;for(I=0;I<E.rows;I++){for(A=-1,O=0,U=0,$=!1,T=0;T<E.cols;T++)V=(I*E.cols+T)*c.RENDER_MODEL_INDICIES_PER_CELL,H=x.cells[V+c.RENDER_MODEL_BG_OFFSET],S=x.cells[V+c.RENDER_MODEL_FG_OFFSET],M=!!(67108864&S),(H!==O||S!==U&&($||M))&&((O!==0||$&&U!==0)&&(B=8*F++,this._updateRectangle(R,B,U,O,A,T,I)),A=T,O=H,U=S,$=M);(O!==0||$&&U!==0)&&(B=8*F++,this._updateRectangle(R,B,U,O,A,E.cols,I))}R.count=F}updateCursor(x){const E=this._verticesCursor,R=x.cursor;if(!R||R.style==="block")return void(E.count=0);let I,T=0;R.style!=="bar"&&R.style!=="outline"||(I=8*T++,this._addRectangleFloat(E.attributes,I,R.x*this._dimensions.device.cell.width,R.y*this._dimensions.device.cell.height,R.style==="bar"?R.dpr*R.cursorWidth:R.dpr,this._dimensions.device.cell.height,this._cursorFloat)),R.style!=="underline"&&R.style!=="outline"||(I=8*T++,this._addRectangleFloat(E.attributes,I,R.x*this._dimensions.device.cell.width,(R.y+1)*this._dimensions.device.cell.height-R.dpr,R.width*this._dimensions.device.cell.width,R.dpr,this._cursorFloat)),R.style==="outline"&&(I=8*T++,this._addRectangleFloat(E.attributes,I,R.x*this._dimensions.device.cell.width,R.y*this._dimensions.device.cell.height,R.width*this._dimensions.device.cell.width,R.dpr,this._cursorFloat),I=8*T++,this._addRectangleFloat(E.attributes,I,(R.x+R.width)*this._dimensions.device.cell.width-R.dpr,R.y*this._dimensions.device.cell.height,R.dpr,this._dimensions.device.cell.height,this._cursorFloat)),E.count=T}_updateRectangle(x,E,R,I,T,A,O){if(67108864&R)switch(50331648&R){case 16777216:case 33554432:g=this._themeService.colors.ansi[255&R].rgba;break;case 50331648:g=(16777215&R)<<8;break;default:g=this._themeService.colors.foreground.rgba}else switch(50331648&I){case 16777216:case 33554432:g=this._themeService.colors.ansi[255&I].rgba;break;case 50331648:g=(16777215&I)<<8;break;default:g=this._themeService.colors.background.rgba}x.attributes.length<E+4&&(x.attributes=(0,m.expandFloat32Array)(x.attributes,this._terminal.rows*this._terminal.cols*8)),a=T*this._dimensions.device.cell.width,h=O*this._dimensions.device.cell.height,l=(g>>24&255)/255,d=(g>>16&255)/255,w=(g>>8&255)/255,k=1,this._addRectangle(x.attributes,E,a,h,(A-T)*this._dimensions.device.cell.width,this._dimensions.device.cell.height,l,d,w,k)}_addRectangle(x,E,R,I,T,A,O,U,$,V){x[E]=R/this._dimensions.device.canvas.width,x[E+1]=I/this._dimensions.device.canvas.height,x[E+2]=T/this._dimensions.device.canvas.width,x[E+3]=A/this._dimensions.device.canvas.height,x[E+4]=O,x[E+5]=U,x[E+6]=$,x[E+7]=V}_addRectangleFloat(x,E,R,I,T,A,O){x[E]=R/this._dimensions.device.canvas.width,x[E+1]=I/this._dimensions.device.canvas.height,x[E+2]=T/this._dimensions.device.canvas.width,x[E+3]=A/this._dimensions.device.canvas.height,x[E+4]=O[0],x[E+5]=O[1],x[E+6]=O[2],x[E+7]=O[3]}_colorToFloat32Array(x){return new Float32Array([(x.rgba>>24&255)/255,(x.rgba>>16&255)/255,(x.rgba>>8&255)/255,(255&x.rgba)/255])}}r.RectangleRenderer=C},310:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.RenderModel=r.COMBINED_CHAR_BIT_MASK=r.RENDER_MODEL_EXT_OFFSET=r.RENDER_MODEL_FG_OFFSET=r.RENDER_MODEL_BG_OFFSET=r.RENDER_MODEL_INDICIES_PER_CELL=void 0;const f=o(296);r.RENDER_MODEL_INDICIES_PER_CELL=4,r.RENDER_MODEL_BG_OFFSET=1,r.RENDER_MODEL_FG_OFFSET=2,r.RENDER_MODEL_EXT_OFFSET=3,r.COMBINED_CHAR_BIT_MASK=2147483648,r.RenderModel=class{constructor(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection=(0,f.createSelectionRenderModel)()}resize(_,c){const m=_*c*r.RENDER_MODEL_INDICIES_PER_CELL;m!==this.cells.length&&(this.cells=new Uint32Array(m),this.lineLengths=new Uint32Array(c))}clear(){this.cells.fill(0,0),this.lineLengths.fill(0,0)}}},666:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.JoinedCellData=r.WebglRenderer=void 0;const f=o(820),_=o(274),c=o(627),m=o(457),y=o(56),b=o(374),g=o(345),a=o(859),h=o(147),l=o(782),d=o(855),w=o(965),k=o(742),C=o(310),L=o(733);class x extends a.Disposable{constructor(T,A,O,U,$,V,H,S,M){super(),this._terminal=T,this._characterJoinerService=A,this._charSizeService=O,this._coreBrowserService=U,this._coreService=$,this._decorationService=V,this._optionsService=H,this._themeService=S,this._cursorBlinkStateManager=new a.MutableDisposable,this._charAtlasDisposable=this.register(new a.MutableDisposable),this._observerDisposable=this.register(new a.MutableDisposable),this._model=new C.RenderModel,this._workCell=new l.CellData,this._workCell2=new l.CellData,this._rectangleRenderer=this.register(new a.MutableDisposable),this._glyphRenderer=this.register(new a.MutableDisposable),this._onChangeTextureAtlas=this.register(new g.EventEmitter),this.onChangeTextureAtlas=this._onChangeTextureAtlas.event,this._onAddTextureAtlasCanvas=this.register(new g.EventEmitter),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._onRemoveTextureAtlasCanvas=this.register(new g.EventEmitter),this.onRemoveTextureAtlasCanvas=this._onRemoveTextureAtlasCanvas.event,this._onRequestRedraw=this.register(new g.EventEmitter),this.onRequestRedraw=this._onRequestRedraw.event,this._onContextLoss=this.register(new g.EventEmitter),this.onContextLoss=this._onContextLoss.event,this.register(this._themeService.onChangeColors(()=>this._handleColorChange())),this._cellColorResolver=new _.CellColorResolver(this._terminal,this._optionsService,this._model.selection,this._decorationService,this._coreBrowserService,this._themeService),this._core=this._terminal._core,this._renderLayers=[new L.LinkRenderLayer(this._core.screenElement,2,this._terminal,this._core.linkifier,this._coreBrowserService,H,this._themeService)],this.dimensions=(0,b.createRenderDimensions)(),this._devicePixelRatio=this._coreBrowserService.dpr,this._updateDimensions(),this._updateCursorBlink(),this.register(H.onOptionChange(()=>this._handleOptionsChanged())),this._canvas=this._coreBrowserService.mainDocument.createElement("canvas");const B={antialias:!1,depth:!1,preserveDrawingBuffer:M};if(this._gl=this._canvas.getContext("webgl2",B),!this._gl)throw new Error("WebGL2 not supported "+this._gl);this.register((0,f.addDisposableDomListener)(this._canvas,"webglcontextlost",F=>{console.log("webglcontextlost event received"),F.preventDefault(),this._contextRestorationTimeout=setTimeout(()=>{this._contextRestorationTimeout=void 0,console.warn("webgl context not restored; firing onContextLoss"),this._onContextLoss.fire(F)},3e3)})),this.register((0,f.addDisposableDomListener)(this._canvas,"webglcontextrestored",F=>{console.warn("webglcontextrestored event received"),clearTimeout(this._contextRestorationTimeout),this._contextRestorationTimeout=void 0,(0,c.removeTerminalFromCache)(this._terminal),this._initializeWebGLState(),this._requestRedrawViewport()})),this._observerDisposable.value=(0,y.observeDevicePixelDimensions)(this._canvas,this._coreBrowserService.window,(F,G)=>this._setCanvasDevicePixelDimensions(F,G)),this.register(this._coreBrowserService.onWindowChange(F=>{this._observerDisposable.value=(0,y.observeDevicePixelDimensions)(this._canvas,F,(G,J)=>this._setCanvasDevicePixelDimensions(G,J))})),this._core.screenElement.appendChild(this._canvas),[this._rectangleRenderer.value,this._glyphRenderer.value]=this._initializeWebGLState(),this._isAttached=this._coreBrowserService.window.document.body.contains(this._core.screenElement),this.register((0,a.toDisposable)(()=>{var F;for(const G of this._renderLayers)G.dispose();(F=this._canvas.parentElement)==null||F.removeChild(this._canvas),(0,c.removeTerminalFromCache)(this._terminal)}))}get textureAtlas(){var T;return(T=this._charAtlas)==null?void 0:T.pages[0].canvas}_handleColorChange(){this._refreshCharAtlas(),this._clearModel(!0)}handleDevicePixelRatioChange(){this._devicePixelRatio!==this._coreBrowserService.dpr&&(this._devicePixelRatio=this._coreBrowserService.dpr,this.handleResize(this._terminal.cols,this._terminal.rows))}handleResize(T,A){var O,U,$,V;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows);for(const H of this._renderLayers)H.resize(this._terminal,this.dimensions);this._canvas.width=this.dimensions.device.canvas.width,this._canvas.height=this.dimensions.device.canvas.height,this._canvas.style.width=`${this.dimensions.css.canvas.width}px`,this._canvas.style.height=`${this.dimensions.css.canvas.height}px`,this._core.screenElement.style.width=`${this.dimensions.css.canvas.width}px`,this._core.screenElement.style.height=`${this.dimensions.css.canvas.height}px`,(O=this._rectangleRenderer.value)==null||O.setDimensions(this.dimensions),(U=this._rectangleRenderer.value)==null||U.handleResize(),($=this._glyphRenderer.value)==null||$.setDimensions(this.dimensions),(V=this._glyphRenderer.value)==null||V.handleResize(),this._refreshCharAtlas(),this._clearModel(!1)}handleCharSizeChanged(){this.handleResize(this._terminal.cols,this._terminal.rows)}handleBlur(){var T;for(const A of this._renderLayers)A.handleBlur(this._terminal);(T=this._cursorBlinkStateManager.value)==null||T.pause(),this._requestRedrawViewport()}handleFocus(){var T;for(const A of this._renderLayers)A.handleFocus(this._terminal);(T=this._cursorBlinkStateManager.value)==null||T.resume(),this._requestRedrawViewport()}handleSelectionChanged(T,A,O){for(const U of this._renderLayers)U.handleSelectionChanged(this._terminal,T,A,O);this._model.selection.update(this._core,T,A,O),this._requestRedrawViewport()}handleCursorMove(){var T;for(const A of this._renderLayers)A.handleCursorMove(this._terminal);(T=this._cursorBlinkStateManager.value)==null||T.restartBlinkAnimation()}_handleOptionsChanged(){this._updateDimensions(),this._refreshCharAtlas(),this._updateCursorBlink()}_initializeWebGLState(){return this._rectangleRenderer.value=new k.RectangleRenderer(this._terminal,this._gl,this.dimensions,this._themeService),this._glyphRenderer.value=new w.GlyphRenderer(this._terminal,this._gl,this.dimensions,this._optionsService),this.handleCharSizeChanged(),[this._rectangleRenderer.value,this._glyphRenderer.value]}_refreshCharAtlas(){var A;if(this.dimensions.device.char.width<=0&&this.dimensions.device.char.height<=0)return void(this._isAttached=!1);const T=(0,c.acquireTextureAtlas)(this._terminal,this._optionsService.rawOptions,this._themeService.colors,this.dimensions.device.cell.width,this.dimensions.device.cell.height,this.dimensions.device.char.width,this.dimensions.device.char.height,this._coreBrowserService.dpr);this._charAtlas!==T&&(this._onChangeTextureAtlas.fire(T.pages[0].canvas),this._charAtlasDisposable.value=(0,a.getDisposeArrayDisposable)([(0,g.forwardEvent)(T.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas),(0,g.forwardEvent)(T.onRemoveTextureAtlasCanvas,this._onRemoveTextureAtlasCanvas)])),this._charAtlas=T,this._charAtlas.warmUp(),(A=this._glyphRenderer.value)==null||A.setAtlas(this._charAtlas)}_clearModel(T){var A;this._model.clear(),T&&((A=this._glyphRenderer.value)==null||A.clear())}clearTextureAtlas(){var T;(T=this._charAtlas)==null||T.clearTexture(),this._clearModel(!0),this._requestRedrawViewport()}clear(){var T;this._clearModel(!0);for(const A of this._renderLayers)A.reset(this._terminal);(T=this._cursorBlinkStateManager.value)==null||T.restartBlinkAnimation(),this._updateCursorBlink()}registerCharacterJoiner(T){return-1}deregisterCharacterJoiner(T){return!1}renderRows(T,A){if(!this._isAttached){if(!(this._coreBrowserService.window.document.body.contains(this._core.screenElement)&&this._charSizeService.width&&this._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}for(const O of this._renderLayers)O.handleGridChanged(this._terminal,T,A);this._glyphRenderer.value&&this._rectangleRenderer.value&&(this._glyphRenderer.value.beginFrame()?(this._clearModel(!0),this._updateModel(0,this._terminal.rows-1)):this._updateModel(T,A),this._rectangleRenderer.value.renderBackgrounds(),this._glyphRenderer.value.render(this._model),this._cursorBlinkStateManager.value&&!this._cursorBlinkStateManager.value.isCursorVisible||this._rectangleRenderer.value.renderCursor())}_updateCursorBlink(){this._terminal.options.cursorBlink?this._cursorBlinkStateManager.value=new m.CursorBlinkStateManager(()=>{this._requestRedrawCursor()},this._coreBrowserService):this._cursorBlinkStateManager.clear(),this._requestRedrawCursor()}_updateModel(T,A){const O=this._core;let U,$,V,H,S,M,B,F,G,J,se,te,z,P,Z=this._workCell;T=R(T,O.rows-1,0),A=R(A,O.rows-1,0);const K=this._terminal.buffer.active.baseY+this._terminal.buffer.active.cursorY,ae=K-O.buffer.ydisp,re=Math.min(this._terminal.buffer.active.cursorX,O.cols-1);let Se=-1;const we=this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden&&(!this._cursorBlinkStateManager.value||this._cursorBlinkStateManager.value.isCursorVisible);this._model.cursor=void 0;let De=!1;for($=T;$<=A;$++)for(V=$+O.buffer.ydisp,H=O.buffer.lines.get(V),this._model.lineLengths[$]=0,S=this._characterJoinerService.getJoinedCharacters(V),z=0;z<O.cols;z++)if(U=this._cellColorResolver.result.bg,H.loadCell(z,Z),z===0&&(U=this._cellColorResolver.result.bg),M=!1,B=z,S.length>0&&z===S[0][0]&&(M=!0,F=S.shift(),Z=new E(Z,H.translateToString(!0,F[0],F[1]),F[1]-F[0]),B=F[1]-1),G=Z.getChars(),J=Z.getCode(),te=($*O.cols+z)*C.RENDER_MODEL_INDICIES_PER_CELL,this._cellColorResolver.resolve(Z,z,V,this.dimensions.device.cell.width),we&&V===K&&(z===re&&(this._model.cursor={x:re,y:ae,width:Z.getWidth(),style:this._coreBrowserService.isFocused?O.options.cursorStyle||"block":O.options.cursorInactiveStyle,cursorWidth:O.options.cursorWidth,dpr:this._devicePixelRatio},Se=re+Z.getWidth()-1),z>=re&&z<=Se&&(this._coreBrowserService.isFocused&&(O.options.cursorStyle||"block")==="block"||this._coreBrowserService.isFocused===!1&&O.options.cursorInactiveStyle==="block")&&(this._cellColorResolver.result.fg=50331648|this._themeService.colors.cursorAccent.rgba>>8&16777215,this._cellColorResolver.result.bg=50331648|this._themeService.colors.cursor.rgba>>8&16777215)),J!==d.NULL_CELL_CODE&&(this._model.lineLengths[$]=z+1),(this._model.cells[te]!==J||this._model.cells[te+C.RENDER_MODEL_BG_OFFSET]!==this._cellColorResolver.result.bg||this._model.cells[te+C.RENDER_MODEL_FG_OFFSET]!==this._cellColorResolver.result.fg||this._model.cells[te+C.RENDER_MODEL_EXT_OFFSET]!==this._cellColorResolver.result.ext)&&(De=!0,G.length>1&&(J|=C.COMBINED_CHAR_BIT_MASK),this._model.cells[te]=J,this._model.cells[te+C.RENDER_MODEL_BG_OFFSET]=this._cellColorResolver.result.bg,this._model.cells[te+C.RENDER_MODEL_FG_OFFSET]=this._cellColorResolver.result.fg,this._model.cells[te+C.RENDER_MODEL_EXT_OFFSET]=this._cellColorResolver.result.ext,se=Z.getWidth(),this._glyphRenderer.value.updateCell(z,$,J,this._cellColorResolver.result.bg,this._cellColorResolver.result.fg,this._cellColorResolver.result.ext,G,se,U),M))for(Z=this._workCell,z++;z<B;z++)P=($*O.cols+z)*C.RENDER_MODEL_INDICIES_PER_CELL,this._glyphRenderer.value.updateCell(z,$,d.NULL_CELL_CODE,0,0,0,d.NULL_CELL_CHAR,0,0),this._model.cells[P]=d.NULL_CELL_CODE,this._model.cells[P+C.RENDER_MODEL_BG_OFFSET]=this._cellColorResolver.result.bg,this._model.cells[P+C.RENDER_MODEL_FG_OFFSET]=this._cellColorResolver.result.fg,this._model.cells[P+C.RENDER_MODEL_EXT_OFFSET]=this._cellColorResolver.result.ext;De&&this._rectangleRenderer.value.updateBackgrounds(this._model),this._rectangleRenderer.value.updateCursor(this._model)}_updateDimensions(){this._charSizeService.width&&this._charSizeService.height&&(this.dimensions.device.char.width=Math.floor(this._charSizeService.width*this._devicePixelRatio),this.dimensions.device.char.height=Math.ceil(this._charSizeService.height*this._devicePixelRatio),this.dimensions.device.cell.height=Math.floor(this.dimensions.device.char.height*this._optionsService.rawOptions.lineHeight),this.dimensions.device.char.top=this._optionsService.rawOptions.lineHeight===1?0:Math.round((this.dimensions.device.cell.height-this.dimensions.device.char.height)/2),this.dimensions.device.cell.width=this.dimensions.device.char.width+Math.round(this._optionsService.rawOptions.letterSpacing),this.dimensions.device.char.left=Math.floor(this._optionsService.rawOptions.letterSpacing/2),this.dimensions.device.canvas.height=this._terminal.rows*this.dimensions.device.cell.height,this.dimensions.device.canvas.width=this._terminal.cols*this.dimensions.device.cell.width,this.dimensions.css.canvas.height=Math.round(this.dimensions.device.canvas.height/this._devicePixelRatio),this.dimensions.css.canvas.width=Math.round(this.dimensions.device.canvas.width/this._devicePixelRatio),this.dimensions.css.cell.height=this.dimensions.device.cell.height/this._devicePixelRatio,this.dimensions.css.cell.width=this.dimensions.device.cell.width/this._devicePixelRatio)}_setCanvasDevicePixelDimensions(T,A){this._canvas.width===T&&this._canvas.height===A||(this._canvas.width=T,this._canvas.height=A,this._requestRedrawViewport())}_requestRedrawViewport(){this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})}_requestRedrawCursor(){const T=this._terminal.buffer.active.cursorY;this._onRequestRedraw.fire({start:T,end:T})}}r.WebglRenderer=x;class E extends h.AttributeData{constructor(T,A,O){super(),this.content=0,this.combinedData="",this.fg=T.fg,this.bg=T.bg,this.combinedData=A,this._width=O}isCombined(){return 2097152}getWidth(){return this._width}getChars(){return this.combinedData}getCode(){return 2097151}setFromCharData(T){throw new Error("not implemented")}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}function R(I,T,A=0){return Math.max(Math.min(I,T),A)}r.JoinedCellData=E},381:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.GLTexture=r.expandFloat32Array=r.createShader=r.createProgram=r.PROJECTION_MATRIX=void 0;const f=o(374);function _(c,m,y){const b=(0,f.throwIfFalsy)(c.createShader(m));if(c.shaderSource(b,y),c.compileShader(b),c.getShaderParameter(b,c.COMPILE_STATUS))return b;console.error(c.getShaderInfoLog(b)),c.deleteShader(b)}r.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),r.createProgram=function(c,m,y){const b=(0,f.throwIfFalsy)(c.createProgram());if(c.attachShader(b,(0,f.throwIfFalsy)(_(c,c.VERTEX_SHADER,m))),c.attachShader(b,(0,f.throwIfFalsy)(_(c,c.FRAGMENT_SHADER,y))),c.linkProgram(b),c.getProgramParameter(b,c.LINK_STATUS))return b;console.error(c.getProgramInfoLog(b)),c.deleteProgram(b)},r.createShader=_,r.expandFloat32Array=function(c,m){const y=Math.min(2*c.length,m),b=new Float32Array(y);for(let g=0;g<c.length;g++)b[g]=c[g];return b},r.GLTexture=class{constructor(c){this.texture=c,this.version=-1}}},592:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.BaseRenderLayer=void 0;const f=o(627),_=o(237),c=o(374),m=o(859);class y extends m.Disposable{constructor(g,a,h,l,d,w,k,C){super(),this._container=a,this._alpha=d,this._coreBrowserService=w,this._optionsService=k,this._themeService=C,this._deviceCharWidth=0,this._deviceCharHeight=0,this._deviceCellWidth=0,this._deviceCellHeight=0,this._deviceCharLeft=0,this._deviceCharTop=0,this._canvas=this._coreBrowserService.mainDocument.createElement("canvas"),this._canvas.classList.add(`xterm-${h}-layer`),this._canvas.style.zIndex=l.toString(),this._initCanvas(),this._container.appendChild(this._canvas),this.register(this._themeService.onChangeColors(L=>{this._refreshCharAtlas(g,L),this.reset(g)})),this.register((0,m.toDisposable)(()=>{this._canvas.remove()}))}_initCanvas(){this._ctx=(0,c.throwIfFalsy)(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()}handleBlur(g){}handleFocus(g){}handleCursorMove(g){}handleGridChanged(g,a,h){}handleSelectionChanged(g,a,h,l=!1){}_setTransparency(g,a){if(a===this._alpha)return;const h=this._canvas;this._alpha=a,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,h),this._refreshCharAtlas(g,this._themeService.colors),this.handleGridChanged(g,0,g.rows-1)}_refreshCharAtlas(g,a){this._deviceCharWidth<=0&&this._deviceCharHeight<=0||(this._charAtlas=(0,f.acquireTextureAtlas)(g,this._optionsService.rawOptions,a,this._deviceCellWidth,this._deviceCellHeight,this._deviceCharWidth,this._deviceCharHeight,this._coreBrowserService.dpr),this._charAtlas.warmUp())}resize(g,a){this._deviceCellWidth=a.device.cell.width,this._deviceCellHeight=a.device.cell.height,this._deviceCharWidth=a.device.char.width,this._deviceCharHeight=a.device.char.height,this._deviceCharLeft=a.device.char.left,this._deviceCharTop=a.device.char.top,this._canvas.width=a.device.canvas.width,this._canvas.height=a.device.canvas.height,this._canvas.style.width=`${a.css.canvas.width}px`,this._canvas.style.height=`${a.css.canvas.height}px`,this._alpha||this._clearAll(),this._refreshCharAtlas(g,this._themeService.colors)}_fillBottomLineAtCells(g,a,h=1){this._ctx.fillRect(g*this._deviceCellWidth,(a+1)*this._deviceCellHeight-this._coreBrowserService.dpr-1,h*this._deviceCellWidth,this._coreBrowserService.dpr)}_clearAll(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._themeService.colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))}_clearCells(g,a,h,l){this._alpha?this._ctx.clearRect(g*this._deviceCellWidth,a*this._deviceCellHeight,h*this._deviceCellWidth,l*this._deviceCellHeight):(this._ctx.fillStyle=this._themeService.colors.background.css,this._ctx.fillRect(g*this._deviceCellWidth,a*this._deviceCellHeight,h*this._deviceCellWidth,l*this._deviceCellHeight))}_fillCharTrueColor(g,a,h,l){this._ctx.font=this._getFont(g,!1,!1),this._ctx.textBaseline=_.TEXT_BASELINE,this._clipCell(h,l,a.getWidth()),this._ctx.fillText(a.getChars(),h*this._deviceCellWidth+this._deviceCharLeft,l*this._deviceCellHeight+this._deviceCharTop+this._deviceCharHeight)}_clipCell(g,a,h){this._ctx.beginPath(),this._ctx.rect(g*this._deviceCellWidth,a*this._deviceCellHeight,h*this._deviceCellWidth,this._deviceCellHeight),this._ctx.clip()}_getFont(g,a,h){return`${h?"italic":""} ${a?g.options.fontWeightBold:g.options.fontWeight} ${g.options.fontSize*this._coreBrowserService.dpr}px ${g.options.fontFamily}`}}r.BaseRenderLayer=y},733:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.LinkRenderLayer=void 0;const f=o(197),_=o(237),c=o(592);class m extends c.BaseRenderLayer{constructor(b,g,a,h,l,d,w){super(a,b,"link",g,!0,l,d,w),this.register(h.onShowLinkUnderline(k=>this._handleShowLinkUnderline(k))),this.register(h.onHideLinkUnderline(k=>this._handleHideLinkUnderline(k)))}resize(b,g){super.resize(b,g),this._state=void 0}reset(b){this._clearCurrentLink()}_clearCurrentLink(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);const b=this._state.y2-this._state.y1-1;b>0&&this._clearCells(0,this._state.y1+1,this._state.cols,b),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}}_handleShowLinkUnderline(b){if(b.fg===_.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._themeService.colors.background.css:b.fg!==void 0&&(0,f.is256Color)(b.fg)?this._ctx.fillStyle=this._themeService.colors.ansi[b.fg].css:this._ctx.fillStyle=this._themeService.colors.foreground.css,b.y1===b.y2)this._fillBottomLineAtCells(b.x1,b.y1,b.x2-b.x1);else{this._fillBottomLineAtCells(b.x1,b.y1,b.cols-b.x1);for(let g=b.y1+1;g<b.y2;g++)this._fillBottomLineAtCells(0,g,b.cols);this._fillBottomLineAtCells(0,b.y2,b.x2)}this._state=b}_handleHideLinkUnderline(b){this._clearCurrentLink()}}r.LinkRenderLayer=m},820:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.addDisposableDomListener=void 0,r.addDisposableDomListener=function(o,f,_,c){o.addEventListener(f,_,c);let m=!1;return{dispose:()=>{m||(m=!0,o.removeEventListener(f,_,c))}}}},274:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CellColorResolver=void 0;const f=o(855),_=o(160),c=o(374);let m,y=0,b=0,g=!1,a=!1,h=!1,l=0;r.CellColorResolver=class{constructor(d,w,k,C,L,x){this._terminal=d,this._optionService=w,this._selectionRenderModel=k,this._decorationService=C,this._coreBrowserService=L,this._themeService=x,this.result={fg:0,bg:0,ext:0}}resolve(d,w,k,C){if(this.result.bg=d.bg,this.result.fg=d.fg,this.result.ext=268435456&d.bg?d.extended.ext:0,b=0,y=0,a=!1,g=!1,h=!1,m=this._themeService.colors,l=0,d.getCode()!==f.NULL_CELL_CODE&&d.extended.underlineStyle===4){const L=Math.max(1,Math.floor(this._optionService.rawOptions.fontSize*this._coreBrowserService.dpr/15));l=w*C%(2*Math.round(L))}if(this._decorationService.forEachDecorationAtCell(w,k,"bottom",L=>{L.backgroundColorRGB&&(b=L.backgroundColorRGB.rgba>>8&16777215,a=!0),L.foregroundColorRGB&&(y=L.foregroundColorRGB.rgba>>8&16777215,g=!0)}),h=this._selectionRenderModel.isCellSelected(this._terminal,w,k),h){if(67108864&this.result.fg||50331648&this.result.bg){if(67108864&this.result.fg)switch(50331648&this.result.fg){case 16777216:case 33554432:b=this._themeService.colors.ansi[255&this.result.fg].rgba;break;case 50331648:b=(16777215&this.result.fg)<<8|255;break;default:b=this._themeService.colors.foreground.rgba}else switch(50331648&this.result.bg){case 16777216:case 33554432:b=this._themeService.colors.ansi[255&this.result.bg].rgba;break;case 50331648:b=(16777215&this.result.bg)<<8|255}b=_.rgba.blend(b,4294967040&(this._coreBrowserService.isFocused?m.selectionBackgroundOpaque:m.selectionInactiveBackgroundOpaque).rgba|128)>>8&16777215}else b=(this._coreBrowserService.isFocused?m.selectionBackgroundOpaque:m.selectionInactiveBackgroundOpaque).rgba>>8&16777215;if(a=!0,m.selectionForeground&&(y=m.selectionForeground.rgba>>8&16777215,g=!0),(0,c.treatGlyphAsBackgroundColor)(d.getCode())){if(67108864&this.result.fg&&!(50331648&this.result.bg))y=(this._coreBrowserService.isFocused?m.selectionBackgroundOpaque:m.selectionInactiveBackgroundOpaque).rgba>>8&16777215;else{if(67108864&this.result.fg)switch(50331648&this.result.bg){case 16777216:case 33554432:y=this._themeService.colors.ansi[255&this.result.bg].rgba;break;case 50331648:y=(16777215&this.result.bg)<<8|255}else switch(50331648&this.result.fg){case 16777216:case 33554432:y=this._themeService.colors.ansi[255&this.result.fg].rgba;break;case 50331648:y=(16777215&this.result.fg)<<8|255;break;default:y=this._themeService.colors.foreground.rgba}y=_.rgba.blend(y,4294967040&(this._coreBrowserService.isFocused?m.selectionBackgroundOpaque:m.selectionInactiveBackgroundOpaque).rgba|128)>>8&16777215}g=!0}}this._decorationService.forEachDecorationAtCell(w,k,"top",L=>{L.backgroundColorRGB&&(b=L.backgroundColorRGB.rgba>>8&16777215,a=!0),L.foregroundColorRGB&&(y=L.foregroundColorRGB.rgba>>8&16777215,g=!0)}),a&&(b=h?-16777216&d.bg&-134217729|b|50331648:-16777216&d.bg|b|50331648),g&&(y=-16777216&d.fg&-67108865|y|50331648),67108864&this.result.fg&&(a&&!g&&(y=50331648&this.result.bg?-134217728&this.result.fg|67108863&this.result.bg:-134217728&this.result.fg|16777215&m.background.rgba>>8|50331648,g=!0),!a&&g&&(b=50331648&this.result.fg?-67108864&this.result.bg|67108863&this.result.fg:-67108864&this.result.bg|16777215&m.foreground.rgba>>8|50331648,a=!0)),m=void 0,this.result.bg=a?b:this.result.bg,this.result.fg=g?y:this.result.fg,this.result.ext&=536870911,this.result.ext|=l<<29&3758096384}}},627:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.removeTerminalFromCache=r.acquireTextureAtlas=void 0;const f=o(509),_=o(197),c=[];r.acquireTextureAtlas=function(m,y,b,g,a,h,l,d){const w=(0,_.generateConfig)(g,a,h,l,y,b,d);for(let L=0;L<c.length;L++){const x=c[L],E=x.ownedBy.indexOf(m);if(E>=0){if((0,_.configEquals)(x.config,w))return x.atlas;x.ownedBy.length===1?(x.atlas.dispose(),c.splice(L,1)):x.ownedBy.splice(E,1);break}}for(let L=0;L<c.length;L++){const x=c[L];if((0,_.configEquals)(x.config,w))return x.ownedBy.push(m),x.atlas}const k=m._core,C={atlas:new f.TextureAtlas(document,w,k.unicodeService),config:w,ownedBy:[m]};return c.push(C),C.atlas},r.removeTerminalFromCache=function(m){for(let y=0;y<c.length;y++){const b=c[y].ownedBy.indexOf(m);if(b!==-1){c[y].ownedBy.length===1?(c[y].atlas.dispose(),c.splice(y,1)):c[y].ownedBy.splice(b,1);break}}}},197:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.is256Color=r.configEquals=r.generateConfig=void 0;const f=o(160);r.generateConfig=function(_,c,m,y,b,g,a){const h={foreground:g.foreground,background:g.background,cursor:f.NULL_COLOR,cursorAccent:f.NULL_COLOR,selectionForeground:f.NULL_COLOR,selectionBackgroundTransparent:f.NULL_COLOR,selectionBackgroundOpaque:f.NULL_COLOR,selectionInactiveBackgroundTransparent:f.NULL_COLOR,selectionInactiveBackgroundOpaque:f.NULL_COLOR,ansi:g.ansi.slice(),contrastCache:g.contrastCache,halfContrastCache:g.halfContrastCache};return{customGlyphs:b.customGlyphs,devicePixelRatio:a,letterSpacing:b.letterSpacing,lineHeight:b.lineHeight,deviceCellWidth:_,deviceCellHeight:c,deviceCharWidth:m,deviceCharHeight:y,fontFamily:b.fontFamily,fontSize:b.fontSize,fontWeight:b.fontWeight,fontWeightBold:b.fontWeightBold,allowTransparency:b.allowTransparency,drawBoldTextInBrightColors:b.drawBoldTextInBrightColors,minimumContrastRatio:b.minimumContrastRatio,colors:h}},r.configEquals=function(_,c){for(let m=0;m<_.colors.ansi.length;m++)if(_.colors.ansi[m].rgba!==c.colors.ansi[m].rgba)return!1;return _.devicePixelRatio===c.devicePixelRatio&&_.customGlyphs===c.customGlyphs&&_.lineHeight===c.lineHeight&&_.letterSpacing===c.letterSpacing&&_.fontFamily===c.fontFamily&&_.fontSize===c.fontSize&&_.fontWeight===c.fontWeight&&_.fontWeightBold===c.fontWeightBold&&_.allowTransparency===c.allowTransparency&&_.deviceCharWidth===c.deviceCharWidth&&_.deviceCharHeight===c.deviceCharHeight&&_.drawBoldTextInBrightColors===c.drawBoldTextInBrightColors&&_.minimumContrastRatio===c.minimumContrastRatio&&_.colors.foreground.rgba===c.colors.foreground.rgba&&_.colors.background.rgba===c.colors.background.rgba},r.is256Color=function(_){return(50331648&_)==16777216||(50331648&_)==33554432}},237:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.TEXT_BASELINE=r.DIM_OPACITY=r.INVERTED_DEFAULT_COLOR=void 0;const f=o(399);r.INVERTED_DEFAULT_COLOR=257,r.DIM_OPACITY=.5,r.TEXT_BASELINE=f.isFirefox||f.isLegacyEdge?"bottom":"ideographic"},457:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CursorBlinkStateManager=void 0,r.CursorBlinkStateManager=class{constructor(o,f){this._renderCallback=o,this._coreBrowserService=f,this.isCursorVisible=!0,this._coreBrowserService.isFocused&&this._restartInterval()}get isPaused(){return!(this._blinkStartTimeout||this._blinkInterval)}dispose(){this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(this._coreBrowserService.window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}restartBlinkAnimation(){this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._renderCallback(),this._animationFrame=void 0})))}_restartInterval(o=600){this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout=this._coreBrowserService.window.setTimeout(()=>{if(this._animationTimeRestarted){const f=600-(Date.now()-this._animationTimeRestarted);if(this._animationTimeRestarted=void 0,f>0)return void this._restartInterval(f)}this.isCursorVisible=!1,this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._renderCallback(),this._animationFrame=void 0}),this._blinkInterval=this._coreBrowserService.window.setInterval(()=>{if(this._animationTimeRestarted){const f=600-(Date.now()-this._animationTimeRestarted);return this._animationTimeRestarted=void 0,void this._restartInterval(f)}this.isCursorVisible=!this.isCursorVisible,this._animationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>{this._renderCallback(),this._animationFrame=void 0})},600)},o)}pause(){this.isCursorVisible=!0,this._blinkInterval&&(this._coreBrowserService.window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(this._coreBrowserService.window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(this._coreBrowserService.window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)}resume(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()}}},860:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.tryDrawCustomChar=r.powerlineDefinitions=r.boxDrawingDefinitions=r.blockElementDefinitions=void 0;const f=o(374);r.blockElementDefinitions={"▀":[{x:0,y:0,w:8,h:4}],"▁":[{x:0,y:7,w:8,h:1}],"▂":[{x:0,y:6,w:8,h:2}],"▃":[{x:0,y:5,w:8,h:3}],"▄":[{x:0,y:4,w:8,h:4}],"▅":[{x:0,y:3,w:8,h:5}],"▆":[{x:0,y:2,w:8,h:6}],"▇":[{x:0,y:1,w:8,h:7}],"█":[{x:0,y:0,w:8,h:8}],"▉":[{x:0,y:0,w:7,h:8}],"▊":[{x:0,y:0,w:6,h:8}],"▋":[{x:0,y:0,w:5,h:8}],"▌":[{x:0,y:0,w:4,h:8}],"▍":[{x:0,y:0,w:3,h:8}],"▎":[{x:0,y:0,w:2,h:8}],"▏":[{x:0,y:0,w:1,h:8}],"▐":[{x:4,y:0,w:4,h:8}],"▔":[{x:0,y:0,w:8,h:1}],"▕":[{x:7,y:0,w:1,h:8}],"▖":[{x:0,y:4,w:4,h:4}],"▗":[{x:4,y:4,w:4,h:4}],"▘":[{x:0,y:0,w:4,h:4}],"▙":[{x:0,y:0,w:4,h:8},{x:0,y:4,w:8,h:4}],"▚":[{x:0,y:0,w:4,h:4},{x:4,y:4,w:4,h:4}],"▛":[{x:0,y:0,w:4,h:8},{x:4,y:0,w:4,h:4}],"▜":[{x:0,y:0,w:8,h:4},{x:4,y:0,w:4,h:8}],"▝":[{x:4,y:0,w:4,h:4}],"▞":[{x:4,y:0,w:4,h:4},{x:0,y:4,w:4,h:4}],"▟":[{x:4,y:0,w:4,h:8},{x:0,y:4,w:8,h:4}],"🭰":[{x:1,y:0,w:1,h:8}],"🭱":[{x:2,y:0,w:1,h:8}],"🭲":[{x:3,y:0,w:1,h:8}],"🭳":[{x:4,y:0,w:1,h:8}],"🭴":[{x:5,y:0,w:1,h:8}],"🭵":[{x:6,y:0,w:1,h:8}],"🭶":[{x:0,y:1,w:8,h:1}],"🭷":[{x:0,y:2,w:8,h:1}],"🭸":[{x:0,y:3,w:8,h:1}],"🭹":[{x:0,y:4,w:8,h:1}],"🭺":[{x:0,y:5,w:8,h:1}],"🭻":[{x:0,y:6,w:8,h:1}],"🭼":[{x:0,y:0,w:1,h:8},{x:0,y:7,w:8,h:1}],"🭽":[{x:0,y:0,w:1,h:8},{x:0,y:0,w:8,h:1}],"🭾":[{x:7,y:0,w:1,h:8},{x:0,y:0,w:8,h:1}],"🭿":[{x:7,y:0,w:1,h:8},{x:0,y:7,w:8,h:1}],"🮀":[{x:0,y:0,w:8,h:1},{x:0,y:7,w:8,h:1}],"🮁":[{x:0,y:0,w:8,h:1},{x:0,y:2,w:8,h:1},{x:0,y:4,w:8,h:1},{x:0,y:7,w:8,h:1}],"🮂":[{x:0,y:0,w:8,h:2}],"🮃":[{x:0,y:0,w:8,h:3}],"🮄":[{x:0,y:0,w:8,h:5}],"🮅":[{x:0,y:0,w:8,h:6}],"🮆":[{x:0,y:0,w:8,h:7}],"🮇":[{x:6,y:0,w:2,h:8}],"🮈":[{x:5,y:0,w:3,h:8}],"🮉":[{x:3,y:0,w:5,h:8}],"🮊":[{x:2,y:0,w:6,h:8}],"🮋":[{x:1,y:0,w:7,h:8}],"🮕":[{x:0,y:0,w:2,h:2},{x:4,y:0,w:2,h:2},{x:2,y:2,w:2,h:2},{x:6,y:2,w:2,h:2},{x:0,y:4,w:2,h:2},{x:4,y:4,w:2,h:2},{x:2,y:6,w:2,h:2},{x:6,y:6,w:2,h:2}],"🮖":[{x:2,y:0,w:2,h:2},{x:6,y:0,w:2,h:2},{x:0,y:2,w:2,h:2},{x:4,y:2,w:2,h:2},{x:2,y:4,w:2,h:2},{x:6,y:4,w:2,h:2},{x:0,y:6,w:2,h:2},{x:4,y:6,w:2,h:2}],"🮗":[{x:0,y:2,w:8,h:2},{x:0,y:6,w:8,h:2}]};const _={"░":[[1,0,0,0],[0,0,0,0],[0,0,1,0],[0,0,0,0]],"▒":[[1,0],[0,0],[0,1],[0,0]],"▓":[[0,1],[1,1],[1,0],[1,1]]};r.boxDrawingDefinitions={"─":{1:"M0,.5 L1,.5"},"━":{3:"M0,.5 L1,.5"},"│":{1:"M.5,0 L.5,1"},"┃":{3:"M.5,0 L.5,1"},"┌":{1:"M0.5,1 L.5,.5 L1,.5"},"┏":{3:"M0.5,1 L.5,.5 L1,.5"},"┐":{1:"M0,.5 L.5,.5 L.5,1"},"┓":{3:"M0,.5 L.5,.5 L.5,1"},"└":{1:"M.5,0 L.5,.5 L1,.5"},"┗":{3:"M.5,0 L.5,.5 L1,.5"},"┘":{1:"M.5,0 L.5,.5 L0,.5"},"┛":{3:"M.5,0 L.5,.5 L0,.5"},"├":{1:"M.5,0 L.5,1 M.5,.5 L1,.5"},"┣":{3:"M.5,0 L.5,1 M.5,.5 L1,.5"},"┤":{1:"M.5,0 L.5,1 M.5,.5 L0,.5"},"┫":{3:"M.5,0 L.5,1 M.5,.5 L0,.5"},"┬":{1:"M0,.5 L1,.5 M.5,.5 L.5,1"},"┳":{3:"M0,.5 L1,.5 M.5,.5 L.5,1"},"┴":{1:"M0,.5 L1,.5 M.5,.5 L.5,0"},"┻":{3:"M0,.5 L1,.5 M.5,.5 L.5,0"},"┼":{1:"M0,.5 L1,.5 M.5,0 L.5,1"},"╋":{3:"M0,.5 L1,.5 M.5,0 L.5,1"},"╴":{1:"M.5,.5 L0,.5"},"╸":{3:"M.5,.5 L0,.5"},"╵":{1:"M.5,.5 L.5,0"},"╹":{3:"M.5,.5 L.5,0"},"╶":{1:"M.5,.5 L1,.5"},"╺":{3:"M.5,.5 L1,.5"},"╷":{1:"M.5,.5 L.5,1"},"╻":{3:"M.5,.5 L.5,1"},"═":{1:(g,a)=>`M0,${.5-a} L1,${.5-a} M0,${.5+a} L1,${.5+a}`},"║":{1:(g,a)=>`M${.5-g},0 L${.5-g},1 M${.5+g},0 L${.5+g},1`},"╒":{1:(g,a)=>`M.5,1 L.5,${.5-a} L1,${.5-a} M.5,${.5+a} L1,${.5+a}`},"╓":{1:(g,a)=>`M${.5-g},1 L${.5-g},.5 L1,.5 M${.5+g},.5 L${.5+g},1`},"╔":{1:(g,a)=>`M1,${.5-a} L${.5-g},${.5-a} L${.5-g},1 M1,${.5+a} L${.5+g},${.5+a} L${.5+g},1`},"╕":{1:(g,a)=>`M0,${.5-a} L.5,${.5-a} L.5,1 M0,${.5+a} L.5,${.5+a}`},"╖":{1:(g,a)=>`M${.5+g},1 L${.5+g},.5 L0,.5 M${.5-g},.5 L${.5-g},1`},"╗":{1:(g,a)=>`M0,${.5+a} L${.5-g},${.5+a} L${.5-g},1 M0,${.5-a} L${.5+g},${.5-a} L${.5+g},1`},"╘":{1:(g,a)=>`M.5,0 L.5,${.5+a} L1,${.5+a} M.5,${.5-a} L1,${.5-a}`},"╙":{1:(g,a)=>`M1,.5 L${.5-g},.5 L${.5-g},0 M${.5+g},.5 L${.5+g},0`},"╚":{1:(g,a)=>`M1,${.5-a} L${.5+g},${.5-a} L${.5+g},0 M1,${.5+a} L${.5-g},${.5+a} L${.5-g},0`},"╛":{1:(g,a)=>`M0,${.5+a} L.5,${.5+a} L.5,0 M0,${.5-a} L.5,${.5-a}`},"╜":{1:(g,a)=>`M0,.5 L${.5+g},.5 L${.5+g},0 M${.5-g},.5 L${.5-g},0`},"╝":{1:(g,a)=>`M0,${.5-a} L${.5-g},${.5-a} L${.5-g},0 M0,${.5+a} L${.5+g},${.5+a} L${.5+g},0`},"╞":{1:(g,a)=>`M.5,0 L.5,1 M.5,${.5-a} L1,${.5-a} M.5,${.5+a} L1,${.5+a}`},"╟":{1:(g,a)=>`M${.5-g},0 L${.5-g},1 M${.5+g},0 L${.5+g},1 M${.5+g},.5 L1,.5`},"╠":{1:(g,a)=>`M${.5-g},0 L${.5-g},1 M1,${.5+a} L${.5+g},${.5+a} L${.5+g},1 M1,${.5-a} L${.5+g},${.5-a} L${.5+g},0`},"╡":{1:(g,a)=>`M.5,0 L.5,1 M0,${.5-a} L.5,${.5-a} M0,${.5+a} L.5,${.5+a}`},"╢":{1:(g,a)=>`M0,.5 L${.5-g},.5 M${.5-g},0 L${.5-g},1 M${.5+g},0 L${.5+g},1`},"╣":{1:(g,a)=>`M${.5+g},0 L${.5+g},1 M0,${.5+a} L${.5-g},${.5+a} L${.5-g},1 M0,${.5-a} L${.5-g},${.5-a} L${.5-g},0`},"╤":{1:(g,a)=>`M0,${.5-a} L1,${.5-a} M0,${.5+a} L1,${.5+a} M.5,${.5+a} L.5,1`},"╥":{1:(g,a)=>`M0,.5 L1,.5 M${.5-g},.5 L${.5-g},1 M${.5+g},.5 L${.5+g},1`},"╦":{1:(g,a)=>`M0,${.5-a} L1,${.5-a} M0,${.5+a} L${.5-g},${.5+a} L${.5-g},1 M1,${.5+a} L${.5+g},${.5+a} L${.5+g},1`},"╧":{1:(g,a)=>`M.5,0 L.5,${.5-a} M0,${.5-a} L1,${.5-a} M0,${.5+a} L1,${.5+a}`},"╨":{1:(g,a)=>`M0,.5 L1,.5 M${.5-g},.5 L${.5-g},0 M${.5+g},.5 L${.5+g},0`},"╩":{1:(g,a)=>`M0,${.5+a} L1,${.5+a} M0,${.5-a} L${.5-g},${.5-a} L${.5-g},0 M1,${.5-a} L${.5+g},${.5-a} L${.5+g},0`},"╪":{1:(g,a)=>`M.5,0 L.5,1 M0,${.5-a} L1,${.5-a} M0,${.5+a} L1,${.5+a}`},"╫":{1:(g,a)=>`M0,.5 L1,.5 M${.5-g},0 L${.5-g},1 M${.5+g},0 L${.5+g},1`},"╬":{1:(g,a)=>`M0,${.5+a} L${.5-g},${.5+a} L${.5-g},1 M1,${.5+a} L${.5+g},${.5+a} L${.5+g},1 M0,${.5-a} L${.5-g},${.5-a} L${.5-g},0 M1,${.5-a} L${.5+g},${.5-a} L${.5+g},0`},"╱":{1:"M1,0 L0,1"},"╲":{1:"M0,0 L1,1"},"╳":{1:"M1,0 L0,1 M0,0 L1,1"},"╼":{1:"M.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"╽":{1:"M.5,.5 L.5,0",3:"M.5,.5 L.5,1"},"╾":{1:"M.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"╿":{1:"M.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"┍":{1:"M.5,.5 L.5,1",3:"M.5,.5 L1,.5"},"┎":{1:"M.5,.5 L1,.5",3:"M.5,.5 L.5,1"},"┑":{1:"M.5,.5 L.5,1",3:"M.5,.5 L0,.5"},"┒":{1:"M.5,.5 L0,.5",3:"M.5,.5 L.5,1"},"┕":{1:"M.5,.5 L.5,0",3:"M.5,.5 L1,.5"},"┖":{1:"M.5,.5 L1,.5",3:"M.5,.5 L.5,0"},"┙":{1:"M.5,.5 L.5,0",3:"M.5,.5 L0,.5"},"┚":{1:"M.5,.5 L0,.5",3:"M.5,.5 L.5,0"},"┝":{1:"M.5,0 L.5,1",3:"M.5,.5 L1,.5"},"┞":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,.5 L.5,0"},"┟":{1:"M.5,0 L.5,.5 L1,.5",3:"M.5,.5 L.5,1"},"┠":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,1"},"┡":{1:"M.5,.5 L.5,1",3:"M.5,0 L.5,.5 L1,.5"},"┢":{1:"M.5,.5 L.5,0",3:"M0.5,1 L.5,.5 L1,.5"},"┥":{1:"M.5,0 L.5,1",3:"M.5,.5 L0,.5"},"┦":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"┧":{1:"M.5,0 L.5,.5 L0,.5",3:"M.5,.5 L.5,1"},"┨":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,1"},"┩":{1:"M.5,.5 L.5,1",3:"M.5,0 L.5,.5 L0,.5"},"┪":{1:"M.5,.5 L.5,0",3:"M0,.5 L.5,.5 L.5,1"},"┭":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┮":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,.5 L1,.5"},"┯":{1:"M.5,.5 L.5,1",3:"M0,.5 L1,.5"},"┰":{1:"M0,.5 L1,.5",3:"M.5,.5 L.5,1"},"┱":{1:"M.5,.5 L1,.5",3:"M0,.5 L.5,.5 L.5,1"},"┲":{1:"M.5,.5 L0,.5",3:"M0.5,1 L.5,.5 L1,.5"},"┵":{1:"M.5,0 L.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┶":{1:"M.5,0 L.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"┷":{1:"M.5,.5 L.5,0",3:"M0,.5 L1,.5"},"┸":{1:"M0,.5 L1,.5",3:"M.5,.5 L.5,0"},"┹":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,.5 L0,.5"},"┺":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,.5 L1,.5"},"┽":{1:"M.5,0 L.5,1 M.5,.5 L1,.5",3:"M.5,.5 L0,.5"},"┾":{1:"M.5,0 L.5,1 M.5,.5 L0,.5",3:"M.5,.5 L1,.5"},"┿":{1:"M.5,0 L.5,1",3:"M0,.5 L1,.5"},"╀":{1:"M0,.5 L1,.5 M.5,.5 L.5,1",3:"M.5,.5 L.5,0"},"╁":{1:"M.5,.5 L.5,0 M0,.5 L1,.5",3:"M.5,.5 L.5,1"},"╂":{1:"M0,.5 L1,.5",3:"M.5,0 L.5,1"},"╃":{1:"M0.5,1 L.5,.5 L1,.5",3:"M.5,0 L.5,.5 L0,.5"},"╄":{1:"M0,.5 L.5,.5 L.5,1",3:"M.5,0 L.5,.5 L1,.5"},"╅":{1:"M.5,0 L.5,.5 L1,.5",3:"M0,.5 L.5,.5 L.5,1"},"╆":{1:"M.5,0 L.5,.5 L0,.5",3:"M0.5,1 L.5,.5 L1,.5"},"╇":{1:"M.5,.5 L.5,1",3:"M.5,.5 L.5,0 M0,.5 L1,.5"},"╈":{1:"M.5,.5 L.5,0",3:"M0,.5 L1,.5 M.5,.5 L.5,1"},"╉":{1:"M.5,.5 L1,.5",3:"M.5,0 L.5,1 M.5,.5 L0,.5"},"╊":{1:"M.5,.5 L0,.5",3:"M.5,0 L.5,1 M.5,.5 L1,.5"},"╌":{1:"M.1,.5 L.4,.5 M.6,.5 L.9,.5"},"╍":{3:"M.1,.5 L.4,.5 M.6,.5 L.9,.5"},"┄":{1:"M.0667,.5 L.2667,.5 M.4,.5 L.6,.5 M.7333,.5 L.9333,.5"},"┅":{3:"M.0667,.5 L.2667,.5 M.4,.5 L.6,.5 M.7333,.5 L.9333,.5"},"┈":{1:"M.05,.5 L.2,.5 M.3,.5 L.45,.5 M.55,.5 L.7,.5 M.8,.5 L.95,.5"},"┉":{3:"M.05,.5 L.2,.5 M.3,.5 L.45,.5 M.55,.5 L.7,.5 M.8,.5 L.95,.5"},"╎":{1:"M.5,.1 L.5,.4 M.5,.6 L.5,.9"},"╏":{3:"M.5,.1 L.5,.4 M.5,.6 L.5,.9"},"┆":{1:"M.5,.0667 L.5,.2667 M.5,.4 L.5,.6 M.5,.7333 L.5,.9333"},"┇":{3:"M.5,.0667 L.5,.2667 M.5,.4 L.5,.6 M.5,.7333 L.5,.9333"},"┊":{1:"M.5,.05 L.5,.2 M.5,.3 L.5,.45 L.5,.55 M.5,.7 L.5,.95"},"┋":{3:"M.5,.05 L.5,.2 M.5,.3 L.5,.45 L.5,.55 M.5,.7 L.5,.95"},"╭":{1:(g,a)=>`M.5,1 L.5,${.5+a/.15*.5} C.5,${.5+a/.15*.5},.5,.5,1,.5`},"╮":{1:(g,a)=>`M.5,1 L.5,${.5+a/.15*.5} C.5,${.5+a/.15*.5},.5,.5,0,.5`},"╯":{1:(g,a)=>`M.5,0 L.5,${.5-a/.15*.5} C.5,${.5-a/.15*.5},.5,.5,0,.5`},"╰":{1:(g,a)=>`M.5,0 L.5,${.5-a/.15*.5} C.5,${.5-a/.15*.5},.5,.5,1,.5`}},r.powerlineDefinitions={"":{d:"M0,0 L1,.5 L0,1",type:0,rightPadding:2},"":{d:"M-1,-.5 L1,.5 L-1,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M1,0 L0,.5 L1,1",type:0,leftPadding:2},"":{d:"M2,-.5 L0,.5 L2,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M0,0 L0,1 C0.552,1,1,0.776,1,.5 C1,0.224,0.552,0,0,0",type:0,rightPadding:1},"":{d:"M.2,1 C.422,1,.8,.826,.78,.5 C.8,.174,0.422,0,.2,0",type:1,rightPadding:1},"":{d:"M1,0 L1,1 C0.448,1,0,0.776,0,.5 C0,0.224,0.448,0,1,0",type:0,leftPadding:1},"":{d:"M.8,1 C0.578,1,0.2,.826,.22,.5 C0.2,0.174,0.578,0,0.8,0",type:1,leftPadding:1},"":{d:"M-.5,-.5 L1.5,1.5 L-.5,1.5",type:0},"":{d:"M-.5,-.5 L1.5,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M1.5,-.5 L-.5,1.5 L1.5,1.5",type:0},"":{d:"M1.5,-.5 L-.5,1.5 L-.5,-.5",type:0},"":{d:"M1.5,-.5 L-.5,1.5",type:1,leftPadding:1,rightPadding:1},"":{d:"M-.5,-.5 L1.5,1.5 L1.5,-.5",type:0}},r.powerlineDefinitions[""]=r.powerlineDefinitions[""],r.powerlineDefinitions[""]=r.powerlineDefinitions[""],r.tryDrawCustomChar=function(g,a,h,l,d,w,k,C){const L=r.blockElementDefinitions[a];if(L)return function(I,T,A,O,U,$){for(let V=0;V<T.length;V++){const H=T[V],S=U/8,M=$/8;I.fillRect(A+H.x*S,O+H.y*M,H.w*S,H.h*M)}}(g,L,h,l,d,w),!0;const x=_[a];if(x)return function(I,T,A,O,U,$){let V=c.get(T);V||(V=new Map,c.set(T,V));const H=I.fillStyle;if(typeof H!="string")throw new Error(`Unexpected fillStyle type "${H}"`);let S=V.get(H);if(!S){const M=T[0].length,B=T.length,F=I.canvas.ownerDocument.createElement("canvas");F.width=M,F.height=B;const G=(0,f.throwIfFalsy)(F.getContext("2d")),J=new ImageData(M,B);let se,te,z,P;if(H.startsWith("#"))se=parseInt(H.slice(1,3),16),te=parseInt(H.slice(3,5),16),z=parseInt(H.slice(5,7),16),P=H.length>7&&parseInt(H.slice(7,9),16)||1;else{if(!H.startsWith("rgba"))throw new Error(`Unexpected fillStyle color format "${H}" when drawing pattern glyph`);[se,te,z,P]=H.substring(5,H.length-1).split(",").map(Z=>parseFloat(Z))}for(let Z=0;Z<B;Z++)for(let K=0;K<M;K++)J.data[4*(Z*M+K)]=se,J.data[4*(Z*M+K)+1]=te,J.data[4*(Z*M+K)+2]=z,J.data[4*(Z*M+K)+3]=T[Z][K]*(255*P);G.putImageData(J,0,0),S=(0,f.throwIfFalsy)(I.createPattern(F,null)),V.set(H,S)}I.fillStyle=S,I.fillRect(A,O,U,$)}(g,x,h,l,d,w),!0;const E=r.boxDrawingDefinitions[a];if(E)return function(I,T,A,O,U,$,V){I.strokeStyle=I.fillStyle;for(const[H,S]of Object.entries(T)){let M;I.beginPath(),I.lineWidth=V*Number.parseInt(H),M=typeof S=="function"?S(.15,.15/$*U):S;for(const B of M.split(" ")){const F=B[0],G=y[F];if(!G){console.error(`Could not find drawing instructions for "${F}"`);continue}const J=B.substring(1).split(",");J[0]&&J[1]&&G(I,b(J,U,$,A,O,!0,V))}I.stroke(),I.closePath()}}(g,E,h,l,d,w,C),!0;const R=r.powerlineDefinitions[a];return!!R&&(function(I,T,A,O,U,$,V,H){const S=new Path2D;S.rect(A,O,U,$),I.clip(S),I.beginPath();const M=V/12;I.lineWidth=H*M;for(const B of T.d.split(" ")){const F=B[0],G=y[F];if(!G){console.error(`Could not find drawing instructions for "${F}"`);continue}const J=B.substring(1).split(",");J[0]&&J[1]&&G(I,b(J,U,$,A,O,!1,H,(T.leftPadding??0)*(M/2),(T.rightPadding??0)*(M/2)))}T.type===1?(I.strokeStyle=I.fillStyle,I.stroke()):I.fill(),I.closePath()}(g,R,h,l,d,w,k,C),!0)};const c=new Map;function m(g,a,h=0){return Math.max(Math.min(g,a),h)}const y={C:(g,a)=>g.bezierCurveTo(a[0],a[1],a[2],a[3],a[4],a[5]),L:(g,a)=>g.lineTo(a[0],a[1]),M:(g,a)=>g.moveTo(a[0],a[1])};function b(g,a,h,l,d,w,k,C=0,L=0){const x=g.map(E=>parseFloat(E)||parseInt(E));if(x.length<2)throw new Error("Too few arguments for instruction");for(let E=0;E<x.length;E+=2)x[E]*=a-C*k-L*k,w&&x[E]!==0&&(x[E]=m(Math.round(x[E]+.5)-.5,a,0)),x[E]+=l+C*k;for(let E=1;E<x.length;E+=2)x[E]*=h,w&&x[E]!==0&&(x[E]=m(Math.round(x[E]+.5)-.5,h,0)),x[E]+=d;return x}},56:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.observeDevicePixelDimensions=void 0;const f=o(859);r.observeDevicePixelDimensions=function(_,c,m){let y=new c.ResizeObserver(b=>{const g=b.find(l=>l.target===_);if(!g)return;if(!("devicePixelContentBoxSize"in g))return y==null||y.disconnect(),void(y=void 0);const a=g.devicePixelContentBoxSize[0].inlineSize,h=g.devicePixelContentBoxSize[0].blockSize;a>0&&h>0&&m(a,h)});try{y.observe(_,{box:["device-pixel-content-box"]})}catch{y.disconnect(),y=void 0}return(0,f.toDisposable)(()=>y==null?void 0:y.disconnect())}},374:(p,r)=>{function o(_){return 57508<=_&&_<=57558}function f(_){return _>=128512&&_<=128591||_>=127744&&_<=128511||_>=128640&&_<=128767||_>=9728&&_<=9983||_>=9984&&_<=10175||_>=65024&&_<=65039||_>=129280&&_<=129535||_>=127462&&_<=127487}Object.defineProperty(r,"__esModule",{value:!0}),r.computeNextVariantOffset=r.createRenderDimensions=r.treatGlyphAsBackgroundColor=r.allowRescaling=r.isEmoji=r.isRestrictedPowerlineGlyph=r.isPowerlineGlyph=r.throwIfFalsy=void 0,r.throwIfFalsy=function(_){if(!_)throw new Error("value must not be falsy");return _},r.isPowerlineGlyph=o,r.isRestrictedPowerlineGlyph=function(_){return 57520<=_&&_<=57527},r.isEmoji=f,r.allowRescaling=function(_,c,m,y){return c===1&&m>Math.ceil(1.5*y)&&_!==void 0&&_>255&&!f(_)&&!o(_)&&!function(b){return 57344<=b&&b<=63743}(_)},r.treatGlyphAsBackgroundColor=function(_){return o(_)||function(c){return 9472<=c&&c<=9631}(_)},r.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}}}},r.computeNextVariantOffset=function(_,c,m=0){return(_-(2*Math.round(c)-m))%(2*Math.round(c))}},296:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.createSelectionRenderModel=void 0;class o{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(_,c,m,y=!1){if(this.selectionStart=c,this.selectionEnd=m,!c||!m||c[0]===m[0]&&c[1]===m[1])return void this.clear();const b=_.buffers.active.ydisp,g=c[1]-b,a=m[1]-b,h=Math.max(g,0),l=Math.min(a,_.rows-1);h>=_.rows||l<0?this.clear():(this.hasSelection=!0,this.columnSelectMode=y,this.viewportStartRow=g,this.viewportEndRow=a,this.viewportCappedStartRow=h,this.viewportCappedEndRow=l,this.startCol=c[0],this.endCol=m[0])}isCellSelected(_,c,m){return!!this.hasSelection&&(m-=_.buffer.active.viewportY,this.columnSelectMode?this.startCol<=this.endCol?c>=this.startCol&&m>=this.viewportCappedStartRow&&c<this.endCol&&m<=this.viewportCappedEndRow:c<this.startCol&&m>=this.viewportCappedStartRow&&c>=this.endCol&&m<=this.viewportCappedEndRow:m>this.viewportStartRow&&m<this.viewportEndRow||this.viewportStartRow===this.viewportEndRow&&m===this.viewportStartRow&&c>=this.startCol&&c<this.endCol||this.viewportStartRow<this.viewportEndRow&&m===this.viewportEndRow&&c<this.endCol||this.viewportStartRow<this.viewportEndRow&&m===this.viewportStartRow&&c>=this.startCol)}}r.createSelectionRenderModel=function(){return new o}},509:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.TextureAtlas=void 0;const f=o(237),_=o(860),c=o(374),m=o(160),y=o(345),b=o(485),g=o(385),a=o(147),h=o(855),l={texturePage:0,texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},offset:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}};let d;class w{get pages(){return this._pages}constructor(E,R,I){this._document=E,this._config=R,this._unicodeService=I,this._didWarmUp=!1,this._cacheMap=new b.FourKeyMap,this._cacheMapCombined=new b.FourKeyMap,this._pages=[],this._activePages=[],this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new a.AttributeData,this._textureSize=512,this._onAddTextureAtlasCanvas=new y.EventEmitter,this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._onRemoveTextureAtlasCanvas=new y.EventEmitter,this.onRemoveTextureAtlasCanvas=this._onRemoveTextureAtlasCanvas.event,this._requestClearModel=!1,this._createNewPage(),this._tmpCanvas=L(E,4*this._config.deviceCellWidth+4,this._config.deviceCellHeight+4),this._tmpCtx=(0,c.throwIfFalsy)(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency,willReadFrequently:!0}))}dispose(){for(const E of this.pages)E.canvas.remove();this._onAddTextureAtlasCanvas.dispose()}warmUp(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)}_doWarmUp(){const E=new g.IdleTaskQueue;for(let R=33;R<126;R++)E.enqueue(()=>{if(!this._cacheMap.get(R,h.DEFAULT_COLOR,h.DEFAULT_COLOR,h.DEFAULT_EXT)){const I=this._drawToCache(R,h.DEFAULT_COLOR,h.DEFAULT_COLOR,h.DEFAULT_EXT);this._cacheMap.set(R,h.DEFAULT_COLOR,h.DEFAULT_COLOR,h.DEFAULT_EXT,I)}})}beginFrame(){return this._requestClearModel}clearTexture(){if(this._pages[0].currentRow.x!==0||this._pages[0].currentRow.y!==0){for(const E of this._pages)E.clear();this._cacheMap.clear(),this._cacheMapCombined.clear(),this._didWarmUp=!1}}_createNewPage(){if(w.maxAtlasPages&&this._pages.length>=Math.max(4,w.maxAtlasPages)){const R=this._pages.filter(V=>2*V.canvas.width<=(w.maxTextureSize||4096)).sort((V,H)=>H.canvas.width!==V.canvas.width?H.canvas.width-V.canvas.width:H.percentageUsed-V.percentageUsed);let I=-1,T=0;for(let V=0;V<R.length;V++)if(R[V].canvas.width!==T)I=V,T=R[V].canvas.width;else if(V-I==3)break;const A=R.slice(I,I+4),O=A.map(V=>V.glyphs[0].texturePage).sort((V,H)=>V>H?1:-1),U=this.pages.length-A.length,$=this._mergePages(A,U);$.version++;for(let V=O.length-1;V>=0;V--)this._deletePage(O[V]);this.pages.push($),this._requestClearModel=!0,this._onAddTextureAtlasCanvas.fire($.canvas)}const E=new k(this._document,this._textureSize);return this._pages.push(E),this._activePages.push(E),this._onAddTextureAtlasCanvas.fire(E.canvas),E}_mergePages(E,R){const I=2*E[0].canvas.width,T=new k(this._document,I,E);for(const[A,O]of E.entries()){const U=A*O.canvas.width%I,$=Math.floor(A/2)*O.canvas.height;T.ctx.drawImage(O.canvas,U,$);for(const H of O.glyphs)H.texturePage=R,H.sizeClipSpace.x=H.size.x/I,H.sizeClipSpace.y=H.size.y/I,H.texturePosition.x+=U,H.texturePosition.y+=$,H.texturePositionClipSpace.x=H.texturePosition.x/I,H.texturePositionClipSpace.y=H.texturePosition.y/I;this._onRemoveTextureAtlasCanvas.fire(O.canvas);const V=this._activePages.indexOf(O);V!==-1&&this._activePages.splice(V,1)}return T}_deletePage(E){this._pages.splice(E,1);for(let R=E;R<this._pages.length;R++){const I=this._pages[R];for(const T of I.glyphs)T.texturePage--;I.version++}}getRasterizedGlyphCombinedChar(E,R,I,T,A){return this._getFromCacheMap(this._cacheMapCombined,E,R,I,T,A)}getRasterizedGlyph(E,R,I,T,A){return this._getFromCacheMap(this._cacheMap,E,R,I,T,A)}_getFromCacheMap(E,R,I,T,A,O=!1){return d=E.get(R,I,T,A),d||(d=this._drawToCache(R,I,T,A,O),E.set(R,I,T,A,d)),d}_getColorFromAnsiIndex(E){if(E>=this._config.colors.ansi.length)throw new Error("No color found for idx "+E);return this._config.colors.ansi[E]}_getBackgroundColor(E,R,I,T){if(this._config.allowTransparency)return m.NULL_COLOR;let A;switch(E){case 16777216:case 33554432:A=this._getColorFromAnsiIndex(R);break;case 50331648:const O=a.AttributeData.toColorRGB(R);A=m.channels.toColor(O[0],O[1],O[2]);break;default:A=I?m.color.opaque(this._config.colors.foreground):this._config.colors.background}return A}_getForegroundColor(E,R,I,T,A,O,U,$,V,H){const S=this._getMinimumContrastColor(E,R,I,T,A,O,U,V,$,H);if(S)return S;let M;switch(A){case 16777216:case 33554432:this._config.drawBoldTextInBrightColors&&V&&O<8&&(O+=8),M=this._getColorFromAnsiIndex(O);break;case 50331648:const B=a.AttributeData.toColorRGB(O);M=m.channels.toColor(B[0],B[1],B[2]);break;default:M=U?this._config.colors.background:this._config.colors.foreground}return this._config.allowTransparency&&(M=m.color.opaque(M)),$&&(M=m.color.multiplyOpacity(M,f.DIM_OPACITY)),M}_resolveBackgroundRgba(E,R,I){switch(E){case 16777216:case 33554432:return this._getColorFromAnsiIndex(R).rgba;case 50331648:return R<<8;default:return I?this._config.colors.foreground.rgba:this._config.colors.background.rgba}}_resolveForegroundRgba(E,R,I,T){switch(E){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&T&&R<8&&(R+=8),this._getColorFromAnsiIndex(R).rgba;case 50331648:return R<<8;default:return I?this._config.colors.background.rgba:this._config.colors.foreground.rgba}}_getMinimumContrastColor(E,R,I,T,A,O,U,$,V,H){if(this._config.minimumContrastRatio===1||H)return;const S=this._getContrastCache(V),M=S.getColor(E,T);if(M!==void 0)return M||void 0;const B=this._resolveBackgroundRgba(R,I,U),F=this._resolveForegroundRgba(A,O,U,$),G=m.rgba.ensureContrastRatio(B,F,this._config.minimumContrastRatio/(V?2:1));if(!G)return void S.setColor(E,T,null);const J=m.channels.toColor(G>>24&255,G>>16&255,G>>8&255);return S.setColor(E,T,J),J}_getContrastCache(E){return E?this._config.colors.halfContrastCache:this._config.colors.contrastCache}_drawToCache(E,R,I,T,A=!1){const O=typeof E=="number"?String.fromCharCode(E):E,U=Math.min(this._config.deviceCellWidth*Math.max(O.length,2)+4,this._textureSize);this._tmpCanvas.width<U&&(this._tmpCanvas.width=U);const $=Math.min(this._config.deviceCellHeight+8,this._textureSize);if(this._tmpCanvas.height<$&&(this._tmpCanvas.height=$),this._tmpCtx.save(),this._workAttributeData.fg=I,this._workAttributeData.bg=R,this._workAttributeData.extended.ext=T,this._workAttributeData.isInvisible())return l;const V=!!this._workAttributeData.isBold(),H=!!this._workAttributeData.isInverse(),S=!!this._workAttributeData.isDim(),M=!!this._workAttributeData.isItalic(),B=!!this._workAttributeData.isUnderline(),F=!!this._workAttributeData.isStrikethrough(),G=!!this._workAttributeData.isOverline();let J=this._workAttributeData.getFgColor(),se=this._workAttributeData.getFgColorMode(),te=this._workAttributeData.getBgColor(),z=this._workAttributeData.getBgColorMode();if(H){const de=J;J=te,te=de;const q=se;se=z,z=q}const P=this._getBackgroundColor(z,te,H,S);this._tmpCtx.globalCompositeOperation="copy",this._tmpCtx.fillStyle=P.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation="source-over";const Z=V?this._config.fontWeightBold:this._config.fontWeight,K=M?"italic":"";this._tmpCtx.font=`${K} ${Z} ${this._config.fontSize*this._config.devicePixelRatio}px ${this._config.fontFamily}`,this._tmpCtx.textBaseline=f.TEXT_BASELINE;const ae=O.length===1&&(0,c.isPowerlineGlyph)(O.charCodeAt(0)),re=O.length===1&&(0,c.isRestrictedPowerlineGlyph)(O.charCodeAt(0)),Se=this._getForegroundColor(R,z,te,I,se,J,H,S,V,(0,c.treatGlyphAsBackgroundColor)(O.charCodeAt(0)));this._tmpCtx.fillStyle=Se.css;const we=re?0:4;let De=!1;this._config.customGlyphs!==!1&&(De=(0,_.tryDrawCustomChar)(this._tmpCtx,O,we,we,this._config.deviceCellWidth,this._config.deviceCellHeight,this._config.fontSize,this._config.devicePixelRatio));let Ae,pe=!ae;if(Ae=typeof E=="number"?this._unicodeService.wcwidth(E):this._unicodeService.getStringCellWidth(E),B){this._tmpCtx.save();const de=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/15)),q=de%2==1?.5:0;if(this._tmpCtx.lineWidth=de,this._workAttributeData.isUnderlineColorDefault())this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle;else if(this._workAttributeData.isUnderlineColorRGB())pe=!1,this._tmpCtx.strokeStyle=`rgb(${a.AttributeData.toColorRGB(this._workAttributeData.getUnderlineColor()).join(",")})`;else{pe=!1;let ye=this._workAttributeData.getUnderlineColor();this._config.drawBoldTextInBrightColors&&this._workAttributeData.isBold()&&ye<8&&(ye+=8),this._tmpCtx.strokeStyle=this._getColorFromAnsiIndex(ye).css}this._tmpCtx.beginPath();const ge=we,be=Math.ceil(we+this._config.deviceCharHeight)-q-(A?2*de:0),Oe=be+de,ie=be+2*de;let he=this._workAttributeData.getUnderlineVariantOffset();for(let ye=0;ye<Ae;ye++){this._tmpCtx.save();const Re=ge+ye*this._config.deviceCellWidth,Ee=ge+(ye+1)*this._config.deviceCellWidth,qe=Re+this._config.deviceCellWidth/2;switch(this._workAttributeData.extended.underlineStyle){case 2:this._tmpCtx.moveTo(Re,be),this._tmpCtx.lineTo(Ee,be),this._tmpCtx.moveTo(Re,ie),this._tmpCtx.lineTo(Ee,ie);break;case 3:const ot=de<=1?ie:Math.ceil(we+this._config.deviceCharHeight-de/2)-q,at=de<=1?be:Math.ceil(we+this._config.deviceCharHeight+de/2)-q,Ft=new Path2D;Ft.rect(Re,be,this._config.deviceCellWidth,ie-be),this._tmpCtx.clip(Ft),this._tmpCtx.moveTo(Re-this._config.deviceCellWidth/2,Oe),this._tmpCtx.bezierCurveTo(Re-this._config.deviceCellWidth/2,at,Re,at,Re,Oe),this._tmpCtx.bezierCurveTo(Re,ot,qe,ot,qe,Oe),this._tmpCtx.bezierCurveTo(qe,at,Ee,at,Ee,Oe),this._tmpCtx.bezierCurveTo(Ee,ot,Ee+this._config.deviceCellWidth/2,ot,Ee+this._config.deviceCellWidth/2,Oe);break;case 4:const St=he===0?0:he>=de?2*de-he:de-he;he>=de||St===0?(this._tmpCtx.setLineDash([Math.round(de),Math.round(de)]),this._tmpCtx.moveTo(Re+St,be),this._tmpCtx.lineTo(Ee,be)):(this._tmpCtx.setLineDash([Math.round(de),Math.round(de)]),this._tmpCtx.moveTo(Re,be),this._tmpCtx.lineTo(Re+St,be),this._tmpCtx.moveTo(Re+St+de,be),this._tmpCtx.lineTo(Ee,be)),he=(0,c.computeNextVariantOffset)(Ee-Re,de,he);break;case 5:const si=.6,Je=.3,Ye=Ee-Re,Ie=Math.floor(si*Ye),lt=Math.floor(Je*Ye),Ze=Ye-Ie-lt;this._tmpCtx.setLineDash([Ie,lt,Ze]),this._tmpCtx.moveTo(Re,be),this._tmpCtx.lineTo(Ee,be);break;default:this._tmpCtx.moveTo(Re,be),this._tmpCtx.lineTo(Ee,be)}this._tmpCtx.stroke(),this._tmpCtx.restore()}if(this._tmpCtx.restore(),!De&&this._config.fontSize>=12&&!this._config.allowTransparency&&O!==" "){this._tmpCtx.save(),this._tmpCtx.textBaseline="alphabetic";const ye=this._tmpCtx.measureText(O);if(this._tmpCtx.restore(),"actualBoundingBoxDescent"in ye&&ye.actualBoundingBoxDescent>0){this._tmpCtx.save();const Re=new Path2D;Re.rect(ge,be-Math.ceil(de/2),this._config.deviceCellWidth*Ae,ie-be+Math.ceil(de/2)),this._tmpCtx.clip(Re),this._tmpCtx.lineWidth=3*this._config.devicePixelRatio,this._tmpCtx.strokeStyle=P.css,this._tmpCtx.strokeText(O,we,we+this._config.deviceCharHeight),this._tmpCtx.restore()}}}if(G){const de=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/15)),q=de%2==1?.5:0;this._tmpCtx.lineWidth=de,this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle,this._tmpCtx.beginPath(),this._tmpCtx.moveTo(we,we+q),this._tmpCtx.lineTo(we+this._config.deviceCharWidth*Ae,we+q),this._tmpCtx.stroke()}if(De||this._tmpCtx.fillText(O,we,we+this._config.deviceCharHeight),O==="_"&&!this._config.allowTransparency){let de=C(this._tmpCtx.getImageData(we,we,this._config.deviceCellWidth,this._config.deviceCellHeight),P,Se,pe);if(de)for(let q=1;q<=5&&(this._tmpCtx.save(),this._tmpCtx.fillStyle=P.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.restore(),this._tmpCtx.fillText(O,we,we+this._config.deviceCharHeight-q),de=C(this._tmpCtx.getImageData(we,we,this._config.deviceCellWidth,this._config.deviceCellHeight),P,Se,pe),de);q++);}if(F){const de=Math.max(1,Math.floor(this._config.fontSize*this._config.devicePixelRatio/10)),q=this._tmpCtx.lineWidth%2==1?.5:0;this._tmpCtx.lineWidth=de,this._tmpCtx.strokeStyle=this._tmpCtx.fillStyle,this._tmpCtx.beginPath(),this._tmpCtx.moveTo(we,we+Math.floor(this._config.deviceCharHeight/2)-q),this._tmpCtx.lineTo(we+this._config.deviceCharWidth*Ae,we+Math.floor(this._config.deviceCharHeight/2)-q),this._tmpCtx.stroke()}this._tmpCtx.restore();const He=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);let Ve;if(Ve=this._config.allowTransparency?function(de){for(let q=0;q<de.data.length;q+=4)if(de.data[q+3]>0)return!1;return!0}(He):C(He,P,Se,pe),Ve)return l;const ce=this._findGlyphBoundingBox(He,this._workBoundingBox,U,re,De,we);let fe,Ce;for(;;){if(this._activePages.length===0){const de=this._createNewPage();fe=de,Ce=de.currentRow,Ce.height=ce.size.y;break}fe=this._activePages[this._activePages.length-1],Ce=fe.currentRow;for(const de of this._activePages)ce.size.y<=de.currentRow.height&&(fe=de,Ce=de.currentRow);for(let de=this._activePages.length-1;de>=0;de--)for(const q of this._activePages[de].fixedRows)q.height<=Ce.height&&ce.size.y<=q.height&&(fe=this._activePages[de],Ce=q);if(Ce.y+ce.size.y>=fe.canvas.height||Ce.height>ce.size.y+2){let de=!1;if(fe.currentRow.y+fe.currentRow.height+ce.size.y>=fe.canvas.height){let q;for(const ge of this._activePages)if(ge.currentRow.y+ge.currentRow.height+ce.size.y<ge.canvas.height){q=ge;break}if(q)fe=q;else if(w.maxAtlasPages&&this._pages.length>=w.maxAtlasPages&&Ce.y+ce.size.y<=fe.canvas.height&&Ce.height>=ce.size.y&&Ce.x+ce.size.x<=fe.canvas.width)de=!0;else{const ge=this._createNewPage();fe=ge,Ce=ge.currentRow,Ce.height=ce.size.y,de=!0}}de||(fe.currentRow.height>0&&fe.fixedRows.push(fe.currentRow),Ce={x:0,y:fe.currentRow.y+fe.currentRow.height,height:ce.size.y},fe.fixedRows.push(Ce),fe.currentRow={x:0,y:Ce.y+Ce.height,height:0})}if(Ce.x+ce.size.x<=fe.canvas.width)break;Ce===fe.currentRow?(Ce.x=0,Ce.y+=Ce.height,Ce.height=0):fe.fixedRows.splice(fe.fixedRows.indexOf(Ce),1)}return ce.texturePage=this._pages.indexOf(fe),ce.texturePosition.x=Ce.x,ce.texturePosition.y=Ce.y,ce.texturePositionClipSpace.x=Ce.x/fe.canvas.width,ce.texturePositionClipSpace.y=Ce.y/fe.canvas.height,ce.sizeClipSpace.x/=fe.canvas.width,ce.sizeClipSpace.y/=fe.canvas.height,Ce.height=Math.max(Ce.height,ce.size.y),Ce.x+=ce.size.x,fe.ctx.putImageData(He,ce.texturePosition.x-this._workBoundingBox.left,ce.texturePosition.y-this._workBoundingBox.top,this._workBoundingBox.left,this._workBoundingBox.top,ce.size.x,ce.size.y),fe.addGlyph(ce),fe.version++,ce}_findGlyphBoundingBox(E,R,I,T,A,O){R.top=0;const U=T?this._config.deviceCellHeight:this._tmpCanvas.height,$=T?this._config.deviceCellWidth:I;let V=!1;for(let H=0;H<U;H++){for(let S=0;S<$;S++){const M=H*this._tmpCanvas.width*4+4*S+3;if(E.data[M]!==0){R.top=H,V=!0;break}}if(V)break}R.left=0,V=!1;for(let H=0;H<O+$;H++){for(let S=0;S<U;S++){const M=S*this._tmpCanvas.width*4+4*H+3;if(E.data[M]!==0){R.left=H,V=!0;break}}if(V)break}R.right=$,V=!1;for(let H=O+$-1;H>=O;H--){for(let S=0;S<U;S++){const M=S*this._tmpCanvas.width*4+4*H+3;if(E.data[M]!==0){R.right=H,V=!0;break}}if(V)break}R.bottom=U,V=!1;for(let H=U-1;H>=0;H--){for(let S=0;S<$;S++){const M=H*this._tmpCanvas.width*4+4*S+3;if(E.data[M]!==0){R.bottom=H,V=!0;break}}if(V)break}return{texturePage:0,texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:R.right-R.left+1,y:R.bottom-R.top+1},sizeClipSpace:{x:R.right-R.left+1,y:R.bottom-R.top+1},offset:{x:-R.left+O+(T||A?Math.floor((this._config.deviceCellWidth-this._config.deviceCharWidth)/2):0),y:-R.top+O+(T||A?this._config.lineHeight===1?0:Math.round((this._config.deviceCellHeight-this._config.deviceCharHeight)/2):0)}}}}r.TextureAtlas=w;class k{get percentageUsed(){return this._usedPixels/(this.canvas.width*this.canvas.height)}get glyphs(){return this._glyphs}addGlyph(E){this._glyphs.push(E),this._usedPixels+=E.size.x*E.size.y}constructor(E,R,I){if(this._usedPixels=0,this._glyphs=[],this.version=0,this.currentRow={x:0,y:0,height:0},this.fixedRows=[],I)for(const T of I)this._glyphs.push(...T.glyphs),this._usedPixels+=T._usedPixels;this.canvas=L(E,R,R),this.ctx=(0,c.throwIfFalsy)(this.canvas.getContext("2d",{alpha:!0}))}clear(){this.ctx.clearRect(0,0,this.canvas.width,this.canvas.height),this.currentRow.x=0,this.currentRow.y=0,this.currentRow.height=0,this.fixedRows.length=0,this.version++}}function C(x,E,R,I){const T=E.rgba>>>24,A=E.rgba>>>16&255,O=E.rgba>>>8&255,U=R.rgba>>>24,$=R.rgba>>>16&255,V=R.rgba>>>8&255,H=Math.floor((Math.abs(T-U)+Math.abs(A-$)+Math.abs(O-V))/12);let S=!0;for(let M=0;M<x.data.length;M+=4)x.data[M]===T&&x.data[M+1]===A&&x.data[M+2]===O||I&&Math.abs(x.data[M]-T)+Math.abs(x.data[M+1]-A)+Math.abs(x.data[M+2]-O)<H?x.data[M+3]=0:S=!1;return S}function L(x,E,R){const I=x.createElement("canvas");return I.width=E,I.height=R,I}},160:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.contrastRatio=r.toPaddedHex=r.rgba=r.rgb=r.css=r.color=r.channels=r.NULL_COLOR=void 0;let o=0,f=0,_=0,c=0;var m,y,b,g,a;function h(d){const w=d.toString(16);return w.length<2?"0"+w:w}function l(d,w){return d<w?(w+.05)/(d+.05):(d+.05)/(w+.05)}r.NULL_COLOR={css:"#00000000",rgba:0},function(d){d.toCss=function(w,k,C,L){return L!==void 0?`#${h(w)}${h(k)}${h(C)}${h(L)}`:`#${h(w)}${h(k)}${h(C)}`},d.toRgba=function(w,k,C,L=255){return(w<<24|k<<16|C<<8|L)>>>0},d.toColor=function(w,k,C,L){return{css:d.toCss(w,k,C,L),rgba:d.toRgba(w,k,C,L)}}}(m||(r.channels=m={})),function(d){function w(k,C){return c=Math.round(255*C),[o,f,_]=a.toChannels(k.rgba),{css:m.toCss(o,f,_,c),rgba:m.toRgba(o,f,_,c)}}d.blend=function(k,C){if(c=(255&C.rgba)/255,c===1)return{css:C.css,rgba:C.rgba};const L=C.rgba>>24&255,x=C.rgba>>16&255,E=C.rgba>>8&255,R=k.rgba>>24&255,I=k.rgba>>16&255,T=k.rgba>>8&255;return o=R+Math.round((L-R)*c),f=I+Math.round((x-I)*c),_=T+Math.round((E-T)*c),{css:m.toCss(o,f,_),rgba:m.toRgba(o,f,_)}},d.isOpaque=function(k){return(255&k.rgba)==255},d.ensureContrastRatio=function(k,C,L){const x=a.ensureContrastRatio(k.rgba,C.rgba,L);if(x)return m.toColor(x>>24&255,x>>16&255,x>>8&255)},d.opaque=function(k){const C=(255|k.rgba)>>>0;return[o,f,_]=a.toChannels(C),{css:m.toCss(o,f,_),rgba:C}},d.opacity=w,d.multiplyOpacity=function(k,C){return c=255&k.rgba,w(k,c*C/255)},d.toColorRGB=function(k){return[k.rgba>>24&255,k.rgba>>16&255,k.rgba>>8&255]}}(y||(r.color=y={})),function(d){let w,k;try{const C=document.createElement("canvas");C.width=1,C.height=1;const L=C.getContext("2d",{willReadFrequently:!0});L&&(w=L,w.globalCompositeOperation="copy",k=w.createLinearGradient(0,0,1,1))}catch{}d.toColor=function(C){if(C.match(/#[\da-f]{3,8}/i))switch(C.length){case 4:return o=parseInt(C.slice(1,2).repeat(2),16),f=parseInt(C.slice(2,3).repeat(2),16),_=parseInt(C.slice(3,4).repeat(2),16),m.toColor(o,f,_);case 5:return o=parseInt(C.slice(1,2).repeat(2),16),f=parseInt(C.slice(2,3).repeat(2),16),_=parseInt(C.slice(3,4).repeat(2),16),c=parseInt(C.slice(4,5).repeat(2),16),m.toColor(o,f,_,c);case 7:return{css:C,rgba:(parseInt(C.slice(1),16)<<8|255)>>>0};case 9:return{css:C,rgba:parseInt(C.slice(1),16)>>>0}}const L=C.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 o=parseInt(L[1]),f=parseInt(L[2]),_=parseInt(L[3]),c=Math.round(255*(L[5]===void 0?1:parseFloat(L[5]))),m.toColor(o,f,_,c);if(!w||!k)throw new Error("css.toColor: Unsupported css format");if(w.fillStyle=k,w.fillStyle=C,typeof w.fillStyle!="string")throw new Error("css.toColor: Unsupported css format");if(w.fillRect(0,0,1,1),[o,f,_,c]=w.getImageData(0,0,1,1).data,c!==255)throw new Error("css.toColor: Unsupported css format");return{rgba:m.toRgba(o,f,_,c),css:C}}}(b||(r.css=b={})),function(d){function w(k,C,L){const x=k/255,E=C/255,R=L/255;return .2126*(x<=.03928?x/12.92:Math.pow((x+.055)/1.055,2.4))+.7152*(E<=.03928?E/12.92:Math.pow((E+.055)/1.055,2.4))+.0722*(R<=.03928?R/12.92:Math.pow((R+.055)/1.055,2.4))}d.relativeLuminance=function(k){return w(k>>16&255,k>>8&255,255&k)},d.relativeLuminance2=w}(g||(r.rgb=g={})),function(d){function w(C,L,x){const E=C>>24&255,R=C>>16&255,I=C>>8&255;let T=L>>24&255,A=L>>16&255,O=L>>8&255,U=l(g.relativeLuminance2(T,A,O),g.relativeLuminance2(E,R,I));for(;U<x&&(T>0||A>0||O>0);)T-=Math.max(0,Math.ceil(.1*T)),A-=Math.max(0,Math.ceil(.1*A)),O-=Math.max(0,Math.ceil(.1*O)),U=l(g.relativeLuminance2(T,A,O),g.relativeLuminance2(E,R,I));return(T<<24|A<<16|O<<8|255)>>>0}function k(C,L,x){const E=C>>24&255,R=C>>16&255,I=C>>8&255;let T=L>>24&255,A=L>>16&255,O=L>>8&255,U=l(g.relativeLuminance2(T,A,O),g.relativeLuminance2(E,R,I));for(;U<x&&(T<255||A<255||O<255);)T=Math.min(255,T+Math.ceil(.1*(255-T))),A=Math.min(255,A+Math.ceil(.1*(255-A))),O=Math.min(255,O+Math.ceil(.1*(255-O))),U=l(g.relativeLuminance2(T,A,O),g.relativeLuminance2(E,R,I));return(T<<24|A<<16|O<<8|255)>>>0}d.blend=function(C,L){if(c=(255&L)/255,c===1)return L;const x=L>>24&255,E=L>>16&255,R=L>>8&255,I=C>>24&255,T=C>>16&255,A=C>>8&255;return o=I+Math.round((x-I)*c),f=T+Math.round((E-T)*c),_=A+Math.round((R-A)*c),m.toRgba(o,f,_)},d.ensureContrastRatio=function(C,L,x){const E=g.relativeLuminance(C>>8),R=g.relativeLuminance(L>>8);if(l(E,R)<x){if(R<E){const A=w(C,L,x),O=l(E,g.relativeLuminance(A>>8));if(O<x){const U=k(C,L,x);return O>l(E,g.relativeLuminance(U>>8))?A:U}return A}const I=k(C,L,x),T=l(E,g.relativeLuminance(I>>8));if(T<x){const A=w(C,L,x);return T>l(E,g.relativeLuminance(A>>8))?I:A}return I}},d.reduceLuminance=w,d.increaseLuminance=k,d.toChannels=function(C){return[C>>24&255,C>>16&255,C>>8&255,255&C]}}(a||(r.rgba=a={})),r.toPaddedHex=h,r.contrastRatio=l},345:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.runAndSubscribe=r.forwardEvent=r.EventEmitter=void 0,r.EventEmitter=class{constructor(){this._listeners=[],this._disposed=!1}get event(){return this._event||(this._event=o=>(this._listeners.push(o),{dispose:()=>{if(!this._disposed){for(let f=0;f<this._listeners.length;f++)if(this._listeners[f]===o)return void this._listeners.splice(f,1)}}})),this._event}fire(o,f){const _=[];for(let c=0;c<this._listeners.length;c++)_.push(this._listeners[c]);for(let c=0;c<_.length;c++)_[c].call(void 0,o,f)}dispose(){this.clearListeners(),this._disposed=!0}clearListeners(){this._listeners&&(this._listeners.length=0)}},r.forwardEvent=function(o,f){return o(_=>f.fire(_))},r.runAndSubscribe=function(o,f){return f(void 0),o(_=>f(_))}},859:(p,r)=>{function o(f){for(const _ of f)_.dispose();f.length=0}Object.defineProperty(r,"__esModule",{value:!0}),r.getDisposeArrayDisposable=r.disposeArray=r.toDisposable=r.MutableDisposable=r.Disposable=void 0,r.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 _=this._disposables.indexOf(f);_!==-1&&this._disposables.splice(_,1)}},r.MutableDisposable=class{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(f){var _;this._isDisposed||f===this._value||((_=this._value)==null||_.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}},r.toDisposable=function(f){return{dispose:f}},r.disposeArray=o,r.getDisposeArrayDisposable=function(f){return{dispose:()=>o(f)}}},485:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.FourKeyMap=r.TwoKeyMap=void 0;class o{constructor(){this._data={}}set(_,c,m){this._data[_]||(this._data[_]={}),this._data[_][c]=m}get(_,c){return this._data[_]?this._data[_][c]:void 0}clear(){this._data={}}}r.TwoKeyMap=o,r.FourKeyMap=class{constructor(){this._data=new o}set(f,_,c,m,y){this._data.get(f,_)||this._data.set(f,_,new o),this._data.get(f,_).set(c,m,y)}get(f,_,c,m){var y;return(y=this._data.get(f,_))==null?void 0:y.get(c,m)}clear(){this._data.clear()}}},399:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.isChromeOS=r.isLinux=r.isWindows=r.isIphone=r.isIpad=r.isMac=r.getSafariVersion=r.isSafari=r.isLegacyEdge=r.isFirefox=r.isNode=void 0,r.isNode=typeof process<"u"&&"title"in process;const o=r.isNode?"node":navigator.userAgent,f=r.isNode?"node":navigator.platform;r.isFirefox=o.includes("Firefox"),r.isLegacyEdge=o.includes("Edge"),r.isSafari=/^((?!chrome|android).)*safari/i.test(o),r.getSafariVersion=function(){if(!r.isSafari)return 0;const _=o.match(/Version\/(\d+)/);return _===null||_.length<2?0:parseInt(_[1])},r.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(f),r.isIpad=f==="iPad",r.isIphone=f==="iPhone",r.isWindows=["Windows","Win16","Win32","WinCE"].includes(f),r.isLinux=f.indexOf("Linux")>=0,r.isChromeOS=/\bCrOS\b/.test(o)},385:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.DebouncedIdleTask=r.IdleTaskQueue=r.PriorityTaskQueue=void 0;const f=o(399);class _{constructor(){this._tasks=[],this._i=0}enqueue(y){this._tasks.push(y),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(y){this._idleCallback=void 0;let b=0,g=0,a=y.timeRemaining(),h=0;for(;this._i<this._tasks.length;){if(b=Date.now(),this._tasks[this._i]()||this._i++,b=Math.max(1,Date.now()-b),g=Math.max(b,g),h=y.timeRemaining(),1.5*g>h)return a-b<-20&&console.warn(`task queue exceeded allotted deadline by ${Math.abs(Math.round(a-b))}ms`),void this._start();a=h}this.clear()}}class c extends _{_requestCallback(y){return setTimeout(()=>y(this._createDeadline(16)))}_cancelCallback(y){clearTimeout(y)}_createDeadline(y){const b=Date.now()+y;return{timeRemaining:()=>Math.max(0,b-Date.now())}}}r.PriorityTaskQueue=c,r.IdleTaskQueue=!f.isNode&&"requestIdleCallback"in window?class extends _{_requestCallback(m){return requestIdleCallback(m)}_cancelCallback(m){cancelIdleCallback(m)}}:c,r.DebouncedIdleTask=class{constructor(){this._queue=new r.IdleTaskQueue}set(m){this._queue.clear(),this._queue.enqueue(m)}flush(){this._queue.flush()}}},147:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.ExtendedAttrs=r.AttributeData=void 0;class o{constructor(){this.fg=0,this.bg=0,this.extended=new f}static toColorRGB(c){return[c>>>16&255,c>>>8&255,255&c]}static fromColorRGB(c){return(255&c[0])<<16|(255&c[1])<<8|255&c[2]}clone(){const c=new o;return c.fg=this.fg,c.bg=this.bg,c.extended=this.extended.clone(),c}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}}r.AttributeData=o;class f{get ext(){return this._urlId?-469762049&this._ext|this.underlineStyle<<26:this._ext}set ext(c){this._ext=c}get underlineStyle(){return this._urlId?5:(469762048&this._ext)>>26}set underlineStyle(c){this._ext&=-469762049,this._ext|=c<<26&469762048}get underlineColor(){return 67108863&this._ext}set underlineColor(c){this._ext&=-67108864,this._ext|=67108863&c}get urlId(){return this._urlId}set urlId(c){this._urlId=c}get underlineVariantOffset(){const c=(3758096384&this._ext)>>29;return c<0?4294967288^c:c}set underlineVariantOffset(c){this._ext&=536870911,this._ext|=c<<29&3758096384}constructor(c=0,m=0){this._ext=0,this._urlId=0,this._ext=c,this._urlId=m}clone(){return new f(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}}r.ExtendedAttrs=f},782:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.CellData=void 0;const f=o(133),_=o(855),c=o(147);class m extends c.AttributeData{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new c.ExtendedAttrs,this.combinedData=""}static fromCharData(b){const g=new m;return g.setFromCharData(b),g}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(b){this.fg=b[_.CHAR_DATA_ATTR_INDEX],this.bg=0;let g=!1;if(b[_.CHAR_DATA_CHAR_INDEX].length>2)g=!0;else if(b[_.CHAR_DATA_CHAR_INDEX].length===2){const a=b[_.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=a&&a<=56319){const h=b[_.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=h&&h<=57343?this.content=1024*(a-55296)+h-56320+65536|b[_.CHAR_DATA_WIDTH_INDEX]<<22:g=!0}else g=!0}else this.content=b[_.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|b[_.CHAR_DATA_WIDTH_INDEX]<<22;g&&(this.combinedData=b[_.CHAR_DATA_CHAR_INDEX],this.content=2097152|b[_.CHAR_DATA_WIDTH_INDEX]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}}r.CellData=m},855:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.WHITESPACE_CELL_CODE=r.WHITESPACE_CELL_WIDTH=r.WHITESPACE_CELL_CHAR=r.NULL_CELL_CODE=r.NULL_CELL_WIDTH=r.NULL_CELL_CHAR=r.CHAR_DATA_CODE_INDEX=r.CHAR_DATA_WIDTH_INDEX=r.CHAR_DATA_CHAR_INDEX=r.CHAR_DATA_ATTR_INDEX=r.DEFAULT_EXT=r.DEFAULT_ATTR=r.DEFAULT_COLOR=void 0,r.DEFAULT_COLOR=0,r.DEFAULT_ATTR=256|r.DEFAULT_COLOR<<9,r.DEFAULT_EXT=0,r.CHAR_DATA_ATTR_INDEX=0,r.CHAR_DATA_CHAR_INDEX=1,r.CHAR_DATA_WIDTH_INDEX=2,r.CHAR_DATA_CODE_INDEX=3,r.NULL_CELL_CHAR="",r.NULL_CELL_WIDTH=1,r.NULL_CELL_CODE=0,r.WHITESPACE_CELL_CHAR=" ",r.WHITESPACE_CELL_WIDTH=1,r.WHITESPACE_CELL_CODE=32},133:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.Utf8ToUtf32=r.StringToUtf32=r.utf32ToString=r.stringFromCodePoint=void 0,r.stringFromCodePoint=function(o){return o>65535?(o-=65536,String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):String.fromCharCode(o)},r.utf32ToString=function(o,f=0,_=o.length){let c="";for(let m=f;m<_;++m){let y=o[m];y>65535?(y-=65536,c+=String.fromCharCode(55296+(y>>10))+String.fromCharCode(y%1024+56320)):c+=String.fromCharCode(y)}return c},r.StringToUtf32=class{constructor(){this._interim=0}clear(){this._interim=0}decode(o,f){const _=o.length;if(!_)return 0;let c=0,m=0;if(this._interim){const y=o.charCodeAt(m++);56320<=y&&y<=57343?f[c++]=1024*(this._interim-55296)+y-56320+65536:(f[c++]=this._interim,f[c++]=y),this._interim=0}for(let y=m;y<_;++y){const b=o.charCodeAt(y);if(55296<=b&&b<=56319){if(++y>=_)return this._interim=b,c;const g=o.charCodeAt(y);56320<=g&&g<=57343?f[c++]=1024*(b-55296)+g-56320+65536:(f[c++]=b,f[c++]=g)}else b!==65279&&(f[c++]=b)}return c}},r.Utf8ToUtf32=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(o,f){const _=o.length;if(!_)return 0;let c,m,y,b,g=0,a=0,h=0;if(this.interim[0]){let w=!1,k=this.interim[0];k&=(224&k)==192?31:(240&k)==224?15:7;let C,L=0;for(;(C=63&this.interim[++L])&&L<4;)k<<=6,k|=C;const x=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,E=x-L;for(;h<E;){if(h>=_)return 0;if(C=o[h++],(192&C)!=128){h--,w=!0;break}this.interim[L++]=C,k<<=6,k|=63&C}w||(x===2?k<128?h--:f[g++]=k:x===3?k<2048||k>=55296&&k<=57343||k===65279||(f[g++]=k):k<65536||k>1114111||(f[g++]=k)),this.interim.fill(0)}const l=_-4;let d=h;for(;d<_;){for(;!(!(d<l)||128&(c=o[d])||128&(m=o[d+1])||128&(y=o[d+2])||128&(b=o[d+3]));)f[g++]=c,f[g++]=m,f[g++]=y,f[g++]=b,d+=4;if(c=o[d++],c<128)f[g++]=c;else if((224&c)==192){if(d>=_)return this.interim[0]=c,g;if(m=o[d++],(192&m)!=128){d--;continue}if(a=(31&c)<<6|63&m,a<128){d--;continue}f[g++]=a}else if((240&c)==224){if(d>=_)return this.interim[0]=c,g;if(m=o[d++],(192&m)!=128){d--;continue}if(d>=_)return this.interim[0]=c,this.interim[1]=m,g;if(y=o[d++],(192&y)!=128){d--;continue}if(a=(15&c)<<12|(63&m)<<6|63&y,a<2048||a>=55296&&a<=57343||a===65279)continue;f[g++]=a}else if((248&c)==240){if(d>=_)return this.interim[0]=c,g;if(m=o[d++],(192&m)!=128){d--;continue}if(d>=_)return this.interim[0]=c,this.interim[1]=m,g;if(y=o[d++],(192&y)!=128){d--;continue}if(d>=_)return this.interim[0]=c,this.interim[1]=m,this.interim[2]=y,g;if(b=o[d++],(192&b)!=128){d--;continue}if(a=(7&c)<<18|(63&m)<<12|(63&y)<<6|63&b,a<65536||a>1114111)continue;f[g++]=a}}return g}}},776:function(p,r,o){var f=this&&this.__decorate||function(a,h,l,d){var w,k=arguments.length,C=k<3?h:d===null?d=Object.getOwnPropertyDescriptor(h,l):d;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(a,h,l,d);else for(var L=a.length-1;L>=0;L--)(w=a[L])&&(C=(k<3?w(C):k>3?w(h,l,C):w(h,l))||C);return k>3&&C&&Object.defineProperty(h,l,C),C},_=this&&this.__param||function(a,h){return function(l,d){h(l,d,a)}};Object.defineProperty(r,"__esModule",{value:!0}),r.traceCall=r.setTraceLogger=r.LogService=void 0;const c=o(859),m=o(97),y={trace:m.LogLevelEnum.TRACE,debug:m.LogLevelEnum.DEBUG,info:m.LogLevelEnum.INFO,warn:m.LogLevelEnum.WARN,error:m.LogLevelEnum.ERROR,off:m.LogLevelEnum.OFF};let b,g=r.LogService=class extends c.Disposable{get logLevel(){return this._logLevel}constructor(a){super(),this._optionsService=a,this._logLevel=m.LogLevelEnum.OFF,this._updateLogLevel(),this.register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel())),b=this}_updateLogLevel(){this._logLevel=y[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(a){for(let h=0;h<a.length;h++)typeof a[h]=="function"&&(a[h]=a[h]())}_log(a,h,l){this._evalLazyOptionalParams(l),a.call(console,(this._optionsService.options.logger?"":"xterm.js: ")+h,...l)}trace(a,...h){var l;this._logLevel<=m.LogLevelEnum.TRACE&&this._log(((l=this._optionsService.options.logger)==null?void 0:l.trace.bind(this._optionsService.options.logger))??console.log,a,h)}debug(a,...h){var l;this._logLevel<=m.LogLevelEnum.DEBUG&&this._log(((l=this._optionsService.options.logger)==null?void 0:l.debug.bind(this._optionsService.options.logger))??console.log,a,h)}info(a,...h){var l;this._logLevel<=m.LogLevelEnum.INFO&&this._log(((l=this._optionsService.options.logger)==null?void 0:l.info.bind(this._optionsService.options.logger))??console.info,a,h)}warn(a,...h){var l;this._logLevel<=m.LogLevelEnum.WARN&&this._log(((l=this._optionsService.options.logger)==null?void 0:l.warn.bind(this._optionsService.options.logger))??console.warn,a,h)}error(a,...h){var l;this._logLevel<=m.LogLevelEnum.ERROR&&this._log(((l=this._optionsService.options.logger)==null?void 0:l.error.bind(this._optionsService.options.logger))??console.error,a,h)}};r.LogService=g=f([_(0,m.IOptionsService)],g),r.setTraceLogger=function(a){b=a},r.traceCall=function(a,h,l){if(typeof l.value!="function")throw new Error("not supported");const d=l.value;l.value=function(...w){if(b.logLevel!==m.LogLevelEnum.TRACE)return d.apply(this,w);b.trace(`GlyphRenderer#${d.name}(${w.map(C=>JSON.stringify(C)).join(", ")})`);const k=d.apply(this,w);return b.trace(`GlyphRenderer#${d.name} return`,k),k}}},726:(p,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.createDecorator=r.getServiceDependencies=r.serviceRegistry=void 0;const o="di$target",f="di$dependencies";r.serviceRegistry=new Map,r.getServiceDependencies=function(_){return _[f]||[]},r.createDecorator=function(_){if(r.serviceRegistry.has(_))return r.serviceRegistry.get(_);const c=function(m,y,b){if(arguments.length!==3)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");(function(g,a,h){a[o]===a?a[f].push({id:g,index:h}):(a[f]=[{id:g,index:h}],a[o]=a)})(c,m,b)};return c.toString=()=>_,r.serviceRegistry.set(_,c),c}},97:(p,r,o)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.IDecorationService=r.IUnicodeService=r.IOscLinkService=r.IOptionsService=r.ILogService=r.LogLevelEnum=r.IInstantiationService=r.ICharsetService=r.ICoreService=r.ICoreMouseService=r.IBufferService=void 0;const f=o(726);var _;r.IBufferService=(0,f.createDecorator)("BufferService"),r.ICoreMouseService=(0,f.createDecorator)("CoreMouseService"),r.ICoreService=(0,f.createDecorator)("CoreService"),r.ICharsetService=(0,f.createDecorator)("CharsetService"),r.IInstantiationService=(0,f.createDecorator)("InstantiationService"),function(c){c[c.TRACE=0]="TRACE",c[c.DEBUG=1]="DEBUG",c[c.INFO=2]="INFO",c[c.WARN=3]="WARN",c[c.ERROR=4]="ERROR",c[c.OFF=5]="OFF"}(_||(r.LogLevelEnum=_={})),r.ILogService=(0,f.createDecorator)("LogService"),r.IOptionsService=(0,f.createDecorator)("OptionsService"),r.IOscLinkService=(0,f.createDecorator)("OscLinkService"),r.IUnicodeService=(0,f.createDecorator)("UnicodeService"),r.IDecorationService=(0,f.createDecorator)("DecorationService")}},s={};function n(p){var r=s[p];if(r!==void 0)return r.exports;var o=s[p]={exports:{}};return i[p].call(o.exports,o,o.exports,n),o.exports}var u={};return(()=>{var p=u;Object.defineProperty(p,"__esModule",{value:!0}),p.WebglAddon=void 0;const r=n(345),o=n(859),f=n(399),_=n(666),c=n(776);class m extends o.Disposable{constructor(b){if(f.isSafari&&(0,f.getSafariVersion)()<16){const g={antialias:!1,depth:!1,preserveDrawingBuffer:!0};if(!document.createElement("canvas").getContext("webgl2",g))throw new Error("Webgl2 is only supported on Safari 16 and above")}super(),this._preserveDrawingBuffer=b,this._onChangeTextureAtlas=this.register(new r.EventEmitter),this.onChangeTextureAtlas=this._onChangeTextureAtlas.event,this._onAddTextureAtlasCanvas=this.register(new r.EventEmitter),this.onAddTextureAtlasCanvas=this._onAddTextureAtlasCanvas.event,this._onRemoveTextureAtlasCanvas=this.register(new r.EventEmitter),this.onRemoveTextureAtlasCanvas=this._onRemoveTextureAtlasCanvas.event,this._onContextLoss=this.register(new r.EventEmitter),this.onContextLoss=this._onContextLoss.event}activate(b){const g=b._core;if(!b.element)return void this.register(g.onWillOpen(()=>this.activate(b)));this._terminal=b;const a=g.coreService,h=g.optionsService,l=g,d=l._renderService,w=l._characterJoinerService,k=l._charSizeService,C=l._coreBrowserService,L=l._decorationService,x=l._logService,E=l._themeService;(0,c.setTraceLogger)(x),this._renderer=this.register(new _.WebglRenderer(b,w,k,C,a,L,h,E,this._preserveDrawingBuffer)),this.register((0,r.forwardEvent)(this._renderer.onContextLoss,this._onContextLoss)),this.register((0,r.forwardEvent)(this._renderer.onChangeTextureAtlas,this._onChangeTextureAtlas)),this.register((0,r.forwardEvent)(this._renderer.onAddTextureAtlasCanvas,this._onAddTextureAtlasCanvas)),this.register((0,r.forwardEvent)(this._renderer.onRemoveTextureAtlasCanvas,this._onRemoveTextureAtlasCanvas)),d.setRenderer(this._renderer),this.register((0,o.toDisposable)(()=>{const R=this._terminal._core._renderService;R.setRenderer(this._terminal._core._createRenderer()),R.handleResize(b.cols,b.rows)}))}get textureAtlas(){var b;return(b=this._renderer)==null?void 0:b.textureAtlas}clearTextureAtlas(){var b;(b=this._renderer)==null||b.clearTextureAtlas()}}p.WebglAddon=m})(),u})())})(t_);var y1=t_.exports;function S1(e){return e.replace(/\r?\n/g,`\r
|
|
108
|
+
`)}function b1(e,t){let i=t,s=!1,n=!1,u=!1;const p=_=>{/\S/.test(_)&&(s=!0,i&&(n=!0)),i&&_.length&&(u=!0)},r=/\x1b\[([0-9;]*)m/g;let o=0,f=r.exec(e);for(;f;){p(e.slice(o,f.index)),o=r.lastIndex;const _=f[1]===""?[0]:f[1].split(";").map(Number);for(let c=0;c<_.length;c+=1){const m=_[c];if(m===0||m===49)i=!1;else if(m>=40&&m<=47||m>=100&&m<=107)i=!0;else if(m===38||m===48){const y=m===48;_[c+1]===5?(c+=2,y&&(i=!0)):_[c+1]===2&&(c+=4,y&&(i=!0))}}f=r.exec(e)}return p(e.slice(o)),{bgEnd:i,hasText:s,hasShadeText:n,hasShadeBlank:u}}function x1(e){const t=[];let i=!1,s=[],n=-1,u=!1;const p=()=>{n>=0&&u&&(t[n]+="\x1B[49m"),n=-1,u=!1},r=()=>{if(s.length){t.push("\x1B[0m");for(let o=1;o<s.length;o+=1)t.push("");s=[]}};for(const o of e){const f=b1(o,i);f.hasShadeText?(t.push(...s),s=[],t.push(o),n=t.length-1,u=f.bgEnd):!f.hasText&&(i||f.bgEnd||f.hasShadeBlank)?s.push(o):(p(),r(),t.push(o)),i=f.bgEnd}return p(),r(),t}function C1(e){const t=S1(e.replace(/\n$/,""));return x1(t.split(`\r
|
|
109
|
+
`)).join(`\r
|
|
110
|
+
`)}function k1(e,t,i=0){if(!e||!e.vis)return"\x1B[?25l";const s=i?Math.min(t|0,i|0):t|0,n=Math.max(1,s-Math.max(0,e.row|0)),u=Math.max(0,e.col|0)+1;return`\x1B[${n};${u}H\x1B[?25h`}function E1(e,{base:t=1e3,max:i=1e4,factor:s=2,jitter:n=.2,rng:u=Math.random}={}){if(e<=0)return 0;const p=Math.min(i,t*s**(e-1));return Math.round(p*(1+n*(u()*2-1)))}const L1=1e3;function R1(e){return e<8e3?L1:e<6e4?5e3:1e4}const T1=.95,D1=.015,A1=.1,M1=50;function N1(e,t,i=T1,s=D1){const n=e*t,u=e*i**(t/16);return{delta:n,v:u,done:Math.abs(u)<s}}function I1(e,t,i=A1,s=M1){return t<=s&&Math.abs(e)>=i}const P1={failCount:0,connected:!0};function Rl(e,t,{threshold:i=2}={}){switch(t){case"ok":case"reset":return{failCount:0,connected:!0};case"fail":{const s=e.failCount+1;return{failCount:s,connected:s<i}}default:return e}}function i_(e,t,i){var r,o;let s=t;for(;s>0&&((r=e.getLine(s))!=null&&r.isWrapped);)s--;let n="";const u=[];let p=s;do{const f=e.getLine(p);if(!f)break;for(let _=0;_<i;_++){const c=f.getCell(_);if(!c)continue;const m=c.getWidth();m!==0&&(n+=c.getChars()||" ",u.push({row:p,col:_,w:m}))}p++}while(p<e.length&&((o=e.getLine(p))!=null&&o.isWrapped));return{text:n,cells:u}}function O1(e){var r;const t=e.buffer.active,i=e.cols,s=t.baseY,n=s+e.rows,u=[];let p=s;for(;p>0&&((r=t.getLine(p))!=null&&r.isWrapped);)p--;for(;p<n;){if(!t.getLine(p)){p++;continue}const{text:o,cells:f}=i_(t,p,i);for(const{start:_,end:c}of Jg(o)){let m=_;for(;m<c;){const y=f[m].row;let b=m;for(;b<c&&f[b].row===y;)b++;const g=f[m].col,a=f[b-1],h=a.col+a.w;y>=s&&y<n&&u.push({y,x:g,width:h-g,path:o.slice(_,c)}),m=b}}p=f.length?f[f.length-1].row+1:p+1}return u}function B1(e,t){const i=e.buffer.active,s=e.cols,n=t-1;if(n<0||n>=i.length)return[];const{text:u,cells:p}=i_(i,n,s),r=[];for(const{start:o,end:f}of Jg(u)){const _=p[o],c=p[f-1];n<_.row||n>c.row||r.push({range:{start:{x:_.col+1,y:_.row+1},end:{x:c.col+c.w,y:c.row+1}},path:u.slice(o,f)})}return r}const j1=[{family:"JetBrainsMono Nerd Font",url:"/fonts/JetBrainsMonoNerdFontMono-Regular.woff2",probe:void 0},{family:"TW Unifont",url:"/fonts/TWUnifont.woff2",probe:"⏵",unicodeRange:"U+2190-21FF, U+2300-23FF, U+2400-243F, U+2500-257F, U+2580-259F, U+25A0-25FF, U+2600-26FF, U+2700-27BF, U+2800-28FF"}],F1=4,H1=1500,$1=e=>{for(const t of document.fonts)if(t.family.replace(/["']/g,"")===e)return t;return null},z1=async({family:e,url:t,probe:i,unicodeRange:s},n)=>{var u;for(let p=0;p<F1;p++){try{await document.fonts.load(`${n}px "${e}"`,i)}catch{}if(((u=$1(e))==null?void 0:u.status)==="loaded")return!0;try{const r=new FontFace(e,`url(${t}) format('woff2')`,s?{unicodeRange:s}:{});return await r.load(),document.fonts.add(r),!0}catch{}await new Promise(r=>setTimeout(r,H1*2**p))}return!1};let Tl=null;function U1(e=14){var t;return Tl||(Tl=typeof document<"u"&&((t=document.fonts)!=null&&t.load)?Promise.all(j1.map(i=>z1(i,e))):Promise.resolve([!1,!1])),Tl}const W1=20,V1=100,ko=5e3,K1=15,G1=N.forwardRef(function({pane:t,onAuthFail:i,onDocLinkTap:s},n){const u=N.useRef(null),p=N.useRef(null),r=N.useRef([]),o=N.useRef(s);o.current=s;const f=N.useRef(Mw()),_=N.useRef(null),[c,m]=N.useState(!1),[y,b]=N.useState(!0),g=N.useRef(!1),[a,h]=N.useState(null),[l,d]=N.useState(!1),w=N.useRef(null),[k,C]=N.useState(""),[L,x]=N.useState(!1),E=N.useRef(null),R=N.useRef(null),[I,T]=N.useState(""),[A,O]=N.useState(!1),U=N.useRef(null),$=N.useRef(null);N.useImperativeHandle(n,()=>({getSize:()=>{const S=p.current;return S?{cols:S.cols,rows:S.rows}:null},flash:()=>{const S=()=>{const M=p.current;M&&C(`${M.cols}×${M.rows} · ${M.options.fontSize}px`)};S(),x(!0),clearTimeout(E.current),clearInterval(R.current),R.current=setInterval(S,400),E.current=setTimeout(()=>{x(!1),clearInterval(R.current)},3e3)},getFontSize:()=>{const S=p.current;return S?{size:S.options.fontSize,auto:f.current==null}:null},setFontSize:S=>{var F;const M=p.current;if(!M)return null;const B=Math.max(8,Math.min(40,Math.round(S)));return M.options.fontSize=B,f.current=B,Xd(B),(F=U.current)==null||F.call(U),B},autoFont:()=>{var M;const S=p.current;S&&(S.options.fontSize=14,f.current=null,Nw(),(M=U.current)==null||M.call(U))},wake:()=>{var S;return(S=$.current)==null?void 0:S.call($)}}),[]),N.useEffect(()=>()=>{clearTimeout(E.current),clearInterval(R.current)},[]),N.useEffect(()=>{var It;const S=new w1.Terminal({disableStdin:!0,scrollback:ko+100,convertEol:!1,fontSize:f.current??14,fontFamily:"ui-monospace, 'SF Mono', SFMono-Regular, Menlo, Monaco, 'Cascadia Mono', 'Roboto Mono', 'Noto Sans Mono', 'DejaVu Sans Mono', 'Courier New', 'JetBrainsMono Nerd Font', 'TW Unifont', monospace",theme:{selectionBackground:"rgba(74,124,255,0.45)"},cursorInactiveStyle:"block"});S.open(u.current),p.current=S;const M=S.registerLinkProvider({provideLinks(oe,ve){if(!o.current){ve(void 0);return}const xe=B1(S,oe).map(({range:Q,path:j})=>({range:Q,text:j,decorations:{pointerCursor:!0,underline:!1},activate:Y=>{var le;return(le=o.current)==null?void 0:le.call(o,j,(Y==null?void 0:Y.clientX)??0,(Y==null?void 0:Y.clientY)??0)}}));ve(xe.length?xe:void 0)}});let B=null;const F=()=>{try{B=new y1.WebglAddon,B.onContextLoss(()=>B.dispose()),S.loadAddon(B)}catch{B=null}};F();const G=u.current.querySelector(".xterm-helper-textarea");G&&(G.readOnly=!0,G.tabIndex=-1,G.setAttribute("inputmode","none"),G.setAttribute("aria-hidden","true"));let J=null,se=!1,te=!1,z=!1,P=!1;const Z=()=>Math.min(ko,Math.max(24,S.rows+W1));let K=Z(),ae=null,re="",Se=null,we=0,De=null,Ae=Date.now();m(!1),O(!1);let pe=!1;const He=()=>{se||pe||(pe=!0,requestAnimationFrame(()=>{se||O(!0)}))};let Ve=P1;const ce=oe=>{Ve=oe,b(oe.connected)};U1(f.current??14).then(()=>{if(!(se||!B)){try{B.dispose()}catch{}F(),S.refresh(0,S.rows-1)}});const fe=()=>S.buffer.active,Ce=(oe="")=>{const ve=fe();T(P&&!q()?`历史模式 · 行 ${ve.viewportY}/${ve.baseY}${te?" · 拉取中":""}${oe}`:"")},de=()=>fe().viewportY>=fe().baseY,q=()=>fe().baseY-fe().viewportY<=K1,ge=()=>fe().viewportY<=3,be=()=>{!P||te||K>=ko||!ge()||(K=Math.min(K+V1,ko),Ce(" · 拉取↑"),Ai(K,!0))};let Oe=0;const ie=()=>{se||S.write(k1(Se,S.rows,we))},he=(oe=0)=>{if(se||!u.current||!S.rows)return;const ve=u.current.clientHeight,xe=u.current.querySelector(".xterm-screen"),Q=xe?xe.getBoundingClientRect().height:0;if(!ve||!Q)return;const j=Q/S.rows;if(f.current==null&&Oe&&oe<4){const le=Oe*j;if(le>ve+4){const Me=S.options.fontSize||14,Le=Math.max(6,Math.round(Me*(ve/le)));if(Le<Me){S.options.fontSize=Le,requestAnimationFrame(()=>he(oe+1));return}}}const Y=Math.max(1,Math.floor(ve/j));if(Y!==S.rows){S.write(`\x1B[?25l\x1B[${S.rows};1H`,()=>{se||(S.resize(S.cols,Y),S.scrollToBottom(),oe<4?requestAnimationFrame(()=>he(oe+1)):(ie(),He()))});return}ie(),He()},ye=()=>requestAnimationFrame(()=>he(0));U.current=ye;const Re=()=>ye();window.addEventListener("resize",Re),window.addEventListener("orientationchange",Re);let Ee=((It=u.current)==null?void 0:It.clientHeight)||0;const qe=typeof ResizeObserver<"u"?new ResizeObserver(()=>{var xe;const oe=((xe=u.current)==null?void 0:xe.clientHeight)||0;if(!oe)return;const ve=oe>Ee;Ee=oe,ve&&ye()}):null;qe&&u.current&&qe.observe(u.current);const ot=(oe,ve)=>{var Le;const xe=(Le=u.current)==null?void 0:Le.querySelector(".xterm-screen");if(!xe||!S.cols||!S.rows)return null;const Q=xe.getBoundingClientRect(),j=Q.width/S.cols,Y=Q.height/S.rows;if(!j||!Y)return null;const le=Math.max(0,Math.min(S.cols-1,Math.floor((oe-Q.left)/j))),Me=Math.max(0,Math.min(S.rows-1,Math.floor((ve-Q.top)/Y)));return{col:le,row:fe().viewportY+Me}};let at=null;const Ft=(oe,ve)=>{var le,Me;const xe=ot(oe,ve);if(!xe)return;const Q=((le=fe().getLine(xe.row))==null?void 0:le.translateToString(!1))??"";let j=xe.col,Y=xe.col;if(/\S/.test(Q[xe.col]||"")){for(;j>0&&/\S/.test(Q[j-1]);)j--;for(;Y<S.cols-1&&/\S/.test(Q[Y+1]);)Y++}at={col:j,row:xe.row},g.current=!0,h(null),clearTimeout(w.current),d(!0),S.select(j,xe.row,Y-j+1),(Me=navigator.vibrate)==null||Me.call(navigator,12)},St=(oe,ve)=>{const xe=ot(oe,ve);if(!xe||!at)return;const Q=S.cols,j=at.row*Q+at.col,Y=xe.row*Q+xe.col,le=Math.min(j,Y);S.select(le%Q,Math.floor(le/Q),Math.abs(Y-j)+1)},si=()=>{at=null,g.current=!1,h(null),clearTimeout(w.current),d(!1),S.clearSelection()},Je=u.current;let Ye=0,Ie=0,lt=0,Ze=0,Pe=!1,ui=0,bi=0,Nt=!1,Ht=null;const Hi=()=>{Ht&&(clearTimeout(Ht),Ht=null)},Ji=oe=>Math.hypot(oe[0].clientX-oe[1].clientX,oe[0].clientY-oe[1].clientY);let Xe=0,xt=0,dt=0,hi=0,di=0,Yt=null;const Di=()=>{Yt!=null&&(cancelAnimationFrame(Yt),Yt=null)};_.current=Di;const Ct=(oe,ve,xe)=>{if(!oe)return;let Q=xe,j=null;const Y=le=>{if(j==null){j=le,Yt=requestAnimationFrame(Y);return}const Me=le-j;j=le;const Le=N1(Q,Me);Q=Le.v;const Ue=oe[ve];oe[ve]=Ue+Le.delta;const rt=Math.abs(Le.delta)>=1&&oe[ve]===Ue;if(Le.done||rt){Yt=null;return}Yt=requestAnimationFrame(Y)};Yt=requestAnimationFrame(Y)},pt=oe=>{if(Ae=Date.now(),Hi(),Di(),g.current&&si(),Nt=!1,oe.touches.length===2){Pe=!0,Ze=-1,ui=Ji(oe.touches),bi=S.options.fontSize||14;return}if(Pe=!1,oe.touches.length!==1){Ze=-1;return}Ye=oe.touches[0].clientX,Ie=oe.touches[0].clientY,lt=Je.scrollLeft,Ze=0,Xe=Ye,xt=Ie,dt=oe.timeStamp,hi=0,di=0,Ht=setTimeout(()=>{Ht=null,Nt=!0,Ze=-1,Ft(Ye,Ie)},500)},$t=oe=>{if(Pe&&oe.touches.length===2){if(ui>0){const Q=Math.max(8,Math.min(40,Math.round(bi*(Ji(oe.touches)/ui))));Q!==(S.options.fontSize||14)&&(S.options.fontSize=Q,f.current=Q)}oe.preventDefault(),oe.stopPropagation();return}if(Nt&&oe.touches.length===1){St(oe.touches[0].clientX,oe.touches[0].clientY),oe.preventDefault(),oe.stopPropagation();return}if(oe.touches.length===1&&(Ce(),be()),oe.touches.length!==1)return;const ve=oe.touches[0].clientX-Ye,xe=oe.touches[0].clientY-Ie;if((Math.abs(ve)>6||Math.abs(xe)>6)&&Hi(),Ze===0){if(Math.abs(ve)<6&&Math.abs(xe)<6)return;Ze=Math.abs(ve)>Math.abs(xe)?1:-1}if(Ze===1){Je.scrollLeft=lt-ve;const Q=oe.touches[0].clientX,j=oe.timeStamp-dt;j>0&&(hi=(Xe-Q)/j),Xe=Q,dt=oe.timeStamp,oe.preventDefault(),oe.stopPropagation()}else{const Q=oe.touches[0].clientY,j=oe.timeStamp-dt;j>0&&(di=(xt-Q)/j),xt=Q,dt=oe.timeStamp}},Zi=oe=>{if(Hi(),Nt&&oe.touches.length===0){Nt=!1,clearTimeout(w.current),w.current=setTimeout(()=>d(!1),3500);const ve=S.getSelection();if(ve&&ve.trim()){const xe=oe.changedTouches[0],Q=Je.getBoundingClientRect(),j=Math.max(8,Math.min(Q.width-72,xe.clientX-Q.left)),Y=Math.max(8,xe.clientY-Q.top-46);h({x:j,y:Y})}else si();return}if(Pe&&oe.touches.length<2){Pe=!1,Xd(S.options.fontSize||14),ye();return}oe.touches.length===0&&I1(Ze===1?hi:di,oe.timeStamp-dt)&&(Ze===1?Ct(Je,"scrollLeft",hi):Ze===-1&&Ct(Je.querySelector(".xterm-viewport"),"scrollTop",di))};Je.addEventListener("touchstart",pt,{capture:!0,passive:!0}),Je.addEventListener("touchmove",$t,{capture:!0,passive:!1}),Je.addEventListener("touchend",Zi,{capture:!0,passive:!0});const hs=oe=>{for(const{deco:Q,marker:j}of r.current)Q.dispose(),j.dispose();if(r.current=[],!o.current)return;const ve=oe.buffer.active,xe=ve.baseY+ve.cursorY;for(const{y:Q,x:j,width:Y}of O1(oe)){const le=oe.registerMarker(Q-xe);if(!le)continue;const Me=oe.registerDecoration({marker:le,x:j,width:Y});if(!Me){le.dispose();continue}Me.onRender(Le=>{Le.classList.add("doc-deco")}),r.current.push({deco:Me,marker:le})}},Ai=async(oe,ve)=>{if(te||se)return;te=!0;const xe=ve?fe().length-fe().viewportY:0;try{const Q=await ry(t,oe,De);if(se)return;if(ce(Rl(Ve,"ok")),Q.unchanged){m(ve);return}De=Q.hash,Ae=Date.now();let j=!1;Q.width&&Q.width!==S.cols&&(S.resize(Q.width,S.rows),j=!0);const Y=Oe;Q.height&&(Oe=Q.height);const le=!P,Me=Q.cur?`${Q.cur.row},${Q.cur.col},${Q.cur.vis?1:0}`:"";if(!j&&!le&&Q.ansi===ae&&Me===re){m(ve);return}const Le=C1(Q.ansi);if(we=Le?Le.split(`
|
|
111
|
+
`).length:0,await new Promise(Ue=>S.write("\x1B[?25l\x1B[0m\x1B[2J\x1B[3J\x1B[H"+Le,Ue)),se)return;ae=Q.ansi,re=Me,Se=Q.cur,ve?S.scrollToLine(Math.max(0,fe().length-xe)):S.scrollToBottom(),P=!0;try{hs(S)}catch{}m(ve),ie(),(j||le||Oe!==Y)&&ye(),le&&setTimeout(He,400)}catch(Q){Q instanceof it?i==null||i():se||ce(Rl(Ve,"fail"))}finally{te=!1,z&&!se&&(z=!1,ne())}},$i=async()=>{if(!(te||se)&&!g.current){if(P&&!q()){m(!0);return}K=Z(),await Ai(K,!de())}};let Dt=0;async function W(oe){if(!se&&oe===Dt&&await $i(),se||document.hidden||oe!==Dt)return;const ve=Ve.failCount>0?E1(Ve.failCount):R1(Date.now()-Ae);J=setTimeout(()=>W(oe),ve)}const ne=()=>{Dt+=1,J&&(clearTimeout(J),J=null),W(Dt)};ne();const Ne=()=>{if(Ae=Date.now(),te){z=!0;return}ne()};$.current=Ne;const Ke=()=>{document.hidden?(Dt+=1,J&&(clearTimeout(J),J=null)):(ce(Rl(Ve,"reset")),K=Z(),Ae=Date.now(),ne())};document.addEventListener("visibilitychange",Ke);const vt=S.onScroll(()=>{if(!se){if(de()){m(!1),T("");return}m(!0),Ce(),be()}});return()=>{se=!0,U.current=null,$.current=null,_.current=null,Hi(),Di(),J&&clearTimeout(J),clearTimeout(w.current),document.removeEventListener("visibilitychange",Ke),window.removeEventListener("resize",Re),window.removeEventListener("orientationchange",Re),qe==null||qe.disconnect(),Je.removeEventListener("touchstart",pt,{capture:!0}),Je.removeEventListener("touchmove",$t,{capture:!0}),Je.removeEventListener("touchend",Zi,{capture:!0}),vt.dispose(),M.dispose();for(const{deco:oe,marker:ve}of r.current)oe.dispose(),ve.dispose();r.current=[],S.dispose(),p.current=null}},[t]);const V=()=>{var M,B,F,G;(M=_.current)==null||M.call(_);const S=(B=u.current)==null?void 0:B.querySelector(".xterm-viewport");S&&(S.scrollTop=S.scrollHeight),(F=p.current)==null||F.scrollToBottom(),m(!1),T(""),(G=$.current)==null||G.call($)},H=async()=>{const S=p.current,M=S==null?void 0:S.getSelection();if(M){let B=!1;if(navigator.clipboard&&window.isSecureContext)try{await navigator.clipboard.writeText(M),B=!0}catch{}if(!B){const F=document.createElement("textarea");F.value=M,F.style.cssText="position:fixed;top:0;left:0;opacity:0",document.body.appendChild(F),F.focus(),F.select();try{document.execCommand("copy")}catch{}document.body.removeChild(F)}}S==null||S.clearSelection(),g.current=!1,h(null),clearTimeout(w.current),d(!1)};return v.jsxs("div",{className:"terminal-wrap",children:[v.jsx("div",{ref:u,className:A?"terminal":"terminal terminal--loading"}),!y&&v.jsx("div",{className:"term-banner term-banner--err",children:"⚠ 连接断开,重连中…"}),L&&v.jsx("div",{className:"dbg",children:k}),y&&I&&v.jsx("div",{className:"term-banner term-banner--hist",children:I}),I&&v.jsx("button",{className:"new-output",onClick:V,children:"↓ 回到底部"}),l&&v.jsx("div",{className:"sel-hint",children:"按住拖动选择文字,松手后点「复制」"}),a&&v.jsx("button",{className:"copy-bubble",style:{left:a.x,top:a.y},onClick:H,children:"复制"})]})}),s_={active:!1,phase:null,pct:0,label:""};let $n=s_,wn=null;const Pc=new Set,Ju=()=>{for(const e of[...Pc])e()};function r_(e,t=""){wn=e,$n={active:!0,phase:"sending",pct:0,label:t},Ju()}function xa(e){$n={...$n,...e},Ju()}function Oc(){wn=null,$n=s_,Ju()}function q1(){wn==null||wn.abort()}const Y1=e=>(Pc.add(e),()=>Pc.delete(e)),X1=()=>$n;function J1(){return N.useSyncExternalStore(Y1,X1)}const Z1=[["esc","tab","tilde","slash","up","at","del"],["ctrl","shift","alt","left","down","right","enter"]],zn=["ctrl","shift","alt"],Bc={kbd:"⌨",esc:"Esc",up:"▲",tab:"Tab",ctrl:"Ctrl",shift:"Shift",del:"⌫",left:"◀",down:"▼",right:"▶",alt:"Alt",slash:"/",tilde:"~",at:"@",enter:"Enter"},Q1=new Set(["up","down","left","right","del"]),pf={esc:"Escape",tab:"Tab",del:"BSpace",enter:"Enter",up:"Up",down:"Down",left:"Left",right:"Right"},mf={slash:"/",tilde:"~",at:"@"};function eS(e){return e in pf?{kind:"key",name:pf[e]}:e in mf?{kind:"text",ch:mf[e]}:null}const jc="off",Zu="armed",Fc="locked",rs=e=>e===Zu||e===Fc,tS=e=>zn.some(t=>rs(e[t]));function Hc(e){const t={};for(const i of zn)t[i]=e[i]===Zu?jc:e[i]??jc;return t}function n_(e,t){if(!e||!tS(t))return e;const i=rs(t.ctrl),s=rs(t.shift),n=rs(t.alt);if(s&&e.kind==="key"){if(e.name==="Tab")return{kind:"key",name:"BTab"};if(["Up","Down","Left","Right"].includes(e.name))return{kind:"key",name:`S-${e.name}`}}return(i||n)&&e.kind==="text"&&/^[a-z0-9]$/i.test(e.ch)?{kind:"key",name:`${i?"C":"M"}-${e.ch.toLowerCase()}`}:e}const iS={up:"Up",down:"Down",left:"Left",right:"Right",enter:"Enter",ret:"Enter",return:"Enter",cr:"Enter",esc:"Escape",escape:"Escape",tab:"Tab",space:"Space",del:"BSpace",bs:"BSpace",bspace:"BSpace",backspace:"BSpace",home:"Home",end:"End",pgup:"PageUp",pageup:"PageUp",pgdn:"PageDown",pagedown:"PageDown"},sS={Escape:"Esc",BSpace:"⌫",Space:"Space",PageUp:"PgUp",PageDown:"PgDn"};function rS(e,t){const i=!!e.ctrl,s=!!e.shift,n=!!e.alt,u=(t||"").trim();if(!u)return null;const p=[];i&&p.push("Ctrl"),s&&p.push("Shift"),n&&p.push("Alt");const r=f=>[...p,f].join("+"),o=iS[u.toLowerCase()];return o?{name:o==="Tab"&&s&&!i&&!n?"BTab":(i?"C-":"")+(n?"M-":"")+(s?"S-":"")+o,label:r(sS[o]||o)}:u.length!==1||!i&&!n&&!s?null:i||n?{name:(i?"C-":"")+(n?"M-":"")+u.toLowerCase(),label:r(u.toUpperCase())}:{name:u.toUpperCase(),label:r(u.toUpperCase())}}function nS(e,{delay:t=400,interval:i=120}={}){let s=null,n=null;const u=()=>{s&&clearTimeout(s),n&&clearInterval(n),s=null,n=null};return{start:()=>{u(),e(),s=setTimeout(()=>{n=setInterval(e,i)},t)},stop:u}}const gf={up:"Up",down:"Down",left:"Left",right:"Right",tilde:"Tilde",slash:"Slash",at:"At",del:"Backspace"},o_=e=>{e.cancelable&&e.preventDefault()},oS=500;function aS({onKey:e,onText:t,mods:i,setMods:s,keyHeldRef:n}){const u=N.useRef(i);u.current=i;const p=o=>{const f=eS(o);if(!f)return;const _=zn.some(m=>rs(u.current[m])),c=_?n_(f,u.current):f;c.kind==="key"?e(c.name):t(c.ch),_&&s(Hc)},r=o=>zn.includes(o)?v.jsx(cS,{id:o,state:i[o],setMods:s},o):v.jsx(uS,{id:o,dispatch:p,keyHeldRef:n},o);return v.jsx("div",{className:"keybar-grid",children:Z1.flat().map(r)})}const lS=300;function cS({id:e,state:t,setMods:i}){const s=N.useRef(-1/0),n=p=>{const r=p.timeStamp||0;if(r-s.current<lS){s.current=-1/0,i(o=>({...o,[e]:Fc}));return}s.current=r,i(o=>({...o,[e]:rs(o[e])?jc:Zu}))},u=t===Fc?" locked":rs(t)?" armed":"";return v.jsx("button",{type:"button",className:`keybar-key keybar-mod${u}`,"data-key":e,"data-state":t,"aria-pressed":rs(t),"aria-label":Bc[e],onPointerDown:o_,onClick:n,children:Bc[e]})}function uS({id:e,dispatch:t,keyHeldRef:i}){const s=N.useRef(null),n=N.useRef(t);n.current=t;const u=N.useRef(null),p=y=>{i&&(i.current=y)},r=Bc[e];if(!Q1.has(e))return v.jsx("button",{type:"button",className:"keybar-key","data-key":e,"aria-label":gf[e]||r,onPointerDown:o_,onClick:()=>t(e),children:r});const o=()=>{const y=u.current;y!=null&&y.guard&&(clearTimeout(y.guard),y.guard=null)},f=y=>{y.cancelable&&y.preventDefault(),s.current||(s.current=nS(()=>n.current(e)));const b={x:y.clientX,y:y.clientY,held:!1,moved:!1,guard:null};b.guard=setTimeout(()=>{b.held=!0,b.guard=null,s.current.start()},oS),u.current=b,p(!0)},_=y=>{const b=u.current;!b||b.held||(Math.abs(y.clientX-b.x)>8||Math.abs(y.clientY-b.y)>8)&&(b.moved=!0,o(),p(!1))},c=()=>{const y=u.current;p(!1),y&&(o(),y.held?s.current.stop():y.moved||n.current(e),u.current=null)},m=()=>{var y;p(!1),o(),(y=u.current)!=null&&y.held&&s.current.stop(),u.current=null};return v.jsx("button",{type:"button",className:"keybar-key","data-key":e,"aria-label":gf[e]||r,onPointerDown:f,onPointerMove:_,onPointerUp:c,onPointerCancel:m,onPointerLeave:m,children:r})}const a_=e=>`hm_favs6_${e}`,l_="command",$c=e=>e?`command@${e}`:l_,hS={command:[],agent:[{kind:"key",text:"Escape",label:"Esc"},{kind:"key",text:"Tab",label:"Tab"},{kind:"key",text:"BSpace",label:"⌫"},{kind:"reply",text:"ok"},{kind:"reply",text:"go on"},{kind:"reply",text:"1"},{kind:"reply",text:"2"},{kind:"reply",text:"3"},{kind:"cmd",text:"/compact"},{kind:"cmd",text:"/clear"},{kind:"cmd",text:"/model"}]};function ni(e){try{const t=localStorage.getItem(a_(e));if(t)return JSON.parse(t)}catch{}return(hS[e]||[]).map(t=>({...t}))}function Ya(e,t){try{localStorage.setItem(a_(e),JSON.stringify(t))}catch{}return t}function zc(e,t){const i=ni(e);if(i.some(n=>n.text===t.text))return i;const s=t.kind==="key"?{kind:"key",text:t.text,label:t.label}:{kind:t.kind,text:t.text,enter:!!t.enter};return Ya(e,[...i,s])}function Uc(e,t){return Ya(e,ni(e).filter(i=>i.text!==t))}function dS(e,t,i){const s=ni(e),n=s.findIndex(p=>p.text===t);if(n<0||s.some((p,r)=>r!==n&&p.text===i.text))return s;const u=s.slice();return u[n]=i.kind==="key"?{kind:"key",text:i.text,label:i.label}:{kind:i.kind,text:i.text,enter:!!i.enter},Ya(e,u)}function fS(e,t,i){const s=ni(e),n=s.findIndex(r=>r.text===t),u=n+(i<0?-1:1);if(n<0||u<0||u>=s.length)return s;const p=s.slice();return[p[n],p[u]]=[p[u],p[n]],Ya(e,p)}const pS=e=>{var t;try{(t=navigator.clipboard)==null||t.writeText(e)}catch{}};function mS({open:e,mode:t,recent:i=[],onSend:s,onFill:n,onClose:u,onDelete:p,historyOnly:r=!1}){const[o,f]=N.useState(()=>ni(t)),_=N.useRef(null),[c,m]=N.useState(t);if(c!==t&&(m(t),f(ni(t))),!e)return null;const y=r?[]:o.filter(h=>h.kind==="reply"),b=r?[]:o.filter(h=>h.kind==="cmd"),g=()=>{var d;const h=(((d=_.current)==null?void 0:d.value)||"").trim();if(!h)return;const l=t==="agent"&&!h.startsWith("/")?"reply":"cmd";f(zc(t,{kind:l,text:h})),_.current&&(_.current.value="")},a=h=>f(Uc(t,h));return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"cmd-backdrop",onClick:u}),v.jsxs("div",{className:`cmd-panel${r?" history":""}`,role:"dialog","aria-label":D("fav.title"),children:[v.jsxs("div",{className:"cmd-head",children:[v.jsx("span",{className:"cmd-title",children:D(r?"dock.history":"fav.title")}),v.jsx("button",{className:"cmd-close",onClick:u,"aria-label":D("common.close"),children:v.jsx(Ar,{})})]}),v.jsxs("div",{className:"cmd-list",children:[r&&v.jsx("div",{className:"cmd-hint",children:D("history.scope")}),y.length>0&&v.jsx("div",{className:"fav-chips",children:y.map(h=>v.jsx("span",{className:"fav-chip",onClick:()=>s(h.text),onContextMenu:l=>{l.preventDefault(),a(h.text)},children:h.text},h.text))}),b.map(h=>v.jsxs("div",{className:"cmd-row",children:[v.jsx("span",{className:"cmd-text",onClick:()=>s(h.text),onDoubleClick:()=>n(h.text),children:h.text}),v.jsx("button",{className:"cmd-del",onClick:()=>a(h.text),"aria-label":D("common.delete"),children:v.jsx(Ar,{})})]},h.text)),i.map(h=>v.jsxs("div",{className:"cmd-row",children:[v.jsx("span",{className:"cmd-text",onClick:()=>s(h),onDoubleClick:()=>n(h),children:h}),v.jsx("button",{className:"cmd-copy",onClick:()=>pS(h),"aria-label":D("common.copy"),children:v.jsx(Ug,{})}),p&&v.jsx("button",{className:"cmd-del",onClick:()=>p(h),"aria-label":D("common.delete"),children:v.jsx(Ar,{})})]},`r:${h}`)),r&&i.length===0&&v.jsx("div",{className:"cmd-empty",children:D("history.empty")}),!r&&v.jsxs("div",{className:"fav-add",children:[v.jsx("input",{ref:_,className:"fav-add-input",placeholder:D("fav.addPlaceholder"),onKeyDown:h=>{h.key==="Enter"&&g()}}),v.jsx("button",{className:"fav-add-btn",onClick:g,children:D("fav.add")})]})]})]})]})}const Ca=[{key:"none",mods:{}},{key:"ctrl",label:"Ctrl",mods:{ctrl:!0}},{key:"shift",label:"Shift",mods:{shift:!0}},{key:"alt",label:"Alt",mods:{alt:!0}},{key:"ctrl-shift",label:"Ctrl+Shift",mods:{ctrl:!0,shift:!0}},{key:"ctrl-alt",label:"Ctrl+Alt",mods:{ctrl:!0,alt:!0}}],gS=e=>Ca.find(t=>t.key===e)||Ca[0],_S=[["Up","↑ Up"],["Down","↓ Down"],["Left","← Left"],["Right","→ Right"],["Tab","⇥ Tab"],["Enter","⏎ Enter"],["Escape","⎋ Esc"],["Space","␣ Space"],["BSpace","⌫ Backspace"],["Home","Home"],["End","End"],["PageUp","PgUp"],["PageDown","PgDn"]],vS=[..._S.map(([e,t])=>({value:e,label:t})),..."abcdefghijklmnopqrstuvwxyz".split("").map(e=>({value:e,label:e.toUpperCase()})),..."0123456789".split("").map(e=>({value:e,label:e}))];function wS(e){let t=e.text||"";if(t==="BTab")return{sticky:"shift",base:"Tab"};let i=!1,s=!1,n=!1;t.startsWith("C-")&&(i=!0,t=t.slice(2)),t.startsWith("M-")&&(s=!0,t=t.slice(2)),t.startsWith("S-")&&(n=!0,t=t.slice(2)),!i&&!s&&!n&&t.length===1&&t>="A"&&t<="Z"&&(n=!0);const u=Ca.find(p=>!!p.mods.ctrl===i&&!!p.mods.shift===n&&!!p.mods.alt===s);return{sticky:u?u.key:"none",base:t.length===1?t.toLowerCase():t}}function _f({value:e,options:t,onChange:i,placeholder:s}){const[n,u]=N.useState(!1),p=t.find(r=>r.value===e);return v.jsxs("div",{className:"cmd-dd",children:[v.jsxs("button",{type:"button",className:`cmd-dd-btn${n?" open":""}`,onClick:()=>u(r=>!r),"aria-haspopup":"listbox","aria-expanded":n,children:[v.jsx("span",{className:p?void 0:"cmd-dd-ph",children:p?p.label:s}),v.jsx(Ds,{})]}),n&&v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"cmd-dd-scrim",onClick:()=>u(!1)}),v.jsx("div",{className:"cmd-dd-menu",role:"listbox",children:t.map(r=>v.jsxs("button",{type:"button",role:"option","aria-selected":r.value===e,className:`cmd-dd-opt${r.value===e?" on":""}`,onClick:()=>{i(r.value),u(!1)},children:[v.jsx("span",{children:r.label}),r.value===e&&v.jsx(Hg,{})]},r.value))})]})]})}function yS({title:e,accent:t,items:i,showTitle:s=!0,onMove:n,onDel:u,onEdit:p}){return v.jsxs("div",{className:`cmd-esection ${t}`,children:[s&&v.jsx("div",{className:`cmd-section ${t}`,children:v.jsx("span",{className:"cmd-section-name",children:e})}),i.length===0&&v.jsx("div",{className:"cmd-empty",children:D("cmd.empty")}),i.map((r,o)=>v.jsxs("div",{className:"cmd-row",children:[v.jsxs("button",{type:"button",className:"cmd-text cmd-fav-text",onClick:()=>p(r),children:[r.kind==="key"&&r.label||r.text,r.kind!=="key"&&r.enter&&v.jsx("span",{className:"cmd-enter","aria-hidden":"true",children:"⏎"})]}),v.jsx("button",{className:"cmd-move up",disabled:o===0,onClick:()=>n(r.text,-1),"aria-label":D("cmd.moveUp"),children:v.jsx(Ds,{})}),v.jsx("button",{className:"cmd-move",disabled:o===i.length-1,onClick:()=>n(r.text,1),"aria-label":D("cmd.moveDown"),children:v.jsx(Ds,{})}),v.jsx("button",{className:"cmd-del",onClick:()=>u(r.text),"aria-label":D("common.delete"),children:v.jsx(Ar,{})})]},r.text))]})}function SS({scopes:e,cfg:t,edit:i,inset:s,onAdd:n,onUpdate:u,onClose:p}){const r=i&&i.fav.kind==="key"?wS(i.fav):null,[o,f]=N.useState(i&&i.fav.kind==="key"?"key":"msg"),[_,c]=N.useState(i?i.scope:e[0].key),[m,y]=N.useState(i?r?r.base:i.fav.text:""),[b,g]=N.useState(i&&i.fav.kind!=="key"?!!i.fav.enter:!1),[a,h]=N.useState(r?r.sticky:"none"),l=N.useRef(null),d=E=>{E!==o&&(f(E),y(""))},w=Ca.map(E=>({value:E.key,label:E.label??D("cmd.stickyNone")})),k=o==="key"?rS(gS(a).mods,m):null,C=e.some(E=>E.key===_)?_:e[0].key,L=o==="key"?!!k:!!m.trim(),x=()=>{var R;if(!L)return;const E=o==="key"?{kind:"key",text:k.name,label:k.label}:{kind:t.msgKind(m.trim()),text:m.trim(),enter:b};if(i){u(i.scope,i.fav.text,C,E);return}n(C,E),y(""),(R=l.current)==null||R.focus()};return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"cmd-backdrop cmd-add-backdrop",onClick:p}),v.jsxs("div",{className:"cmd-addcard",role:"dialog","aria-label":D(i?"cmd.editItem":"cmd.addTitle"),style:{transform:`translate(-50%, calc(-50% + ${s/2}px))`},children:[v.jsxs("div",{className:"cmd-addcard-head",children:[v.jsx("span",{className:"cmd-title",children:D(i?"cmd.editItem":"cmd.addTitle")}),v.jsx("button",{className:"cmd-close",onClick:p,"aria-label":D("common.close"),children:v.jsx(Ar,{})})]}),v.jsxs("div",{className:"cmd-modetabs",role:"tablist",children:[v.jsx("button",{type:"button",role:"tab","aria-selected":o==="msg",className:`cmd-modetab${o==="msg"?" on":""}`,onClick:()=>d("msg"),children:t.msgLabel}),v.jsx("button",{type:"button",role:"tab","aria-selected":o==="key",className:`cmd-modetab${o==="key"?" on":""}`,onClick:()=>d("key"),children:D("cmd.tabKey")})]}),e.length>1&&v.jsxs("div",{className:"cmd-field",children:[v.jsx("label",{className:"cmd-field-label",children:D("cmd.addTo")}),v.jsx("div",{className:"cmd-seg",role:"group",children:e.map(E=>v.jsx("button",{type:"button","aria-pressed":C===E.key,className:`cmd-seg-btn${E.accent==="win"?" win":""}${C===E.key?" on":""}`,onClick:()=>c(E.key),children:E.title},E.key))})]}),o==="key"?v.jsxs(v.Fragment,{children:[v.jsxs("div",{className:"cmd-field",children:[v.jsx("label",{className:"cmd-field-label",children:D("cmd.sticky")}),v.jsx(_f,{value:a,options:w,onChange:h})]}),v.jsxs("div",{className:"cmd-field",children:[v.jsx("label",{className:"cmd-field-label",children:D("cmd.baseKey")}),v.jsx(_f,{value:m,options:vS,onChange:y,placeholder:D("cmd.pickKey")}),k&&v.jsx("span",{className:"cmd-chord-preview",children:k.label})]})]}):v.jsxs(v.Fragment,{children:[v.jsxs("div",{className:"cmd-field",children:[v.jsx("label",{className:"cmd-field-label",children:t.msgLabel}),v.jsx("input",{ref:l,className:"cmd-add-input",value:m,placeholder:t.placeholder,autoCapitalize:"off",autoCorrect:"off",spellCheck:!1,onChange:E=>y(E.target.value),onKeyDown:E=>{E.key==="Enter"&&x()}})]}),t.hasEnter&&v.jsxs("label",{className:"cmd-toggle-row",children:[v.jsx("span",{children:D("cmd.withEnter")}),v.jsxs("span",{className:"cmd-switch",children:[v.jsx("input",{type:"checkbox",checked:b,onChange:E=>g(E.target.checked)}),v.jsx("span",{className:"cmd-switch-track","aria-hidden":"true"}),v.jsx("span",{className:"cmd-switch-knob","aria-hidden":"true"})]})]})]}),v.jsx("button",{type:"button",className:"cmd-submit",disabled:!L,onClick:x,children:D(i?"common.save":"fav.add")})]})]})}function bS(e,t){if(e==="chat")return{title:D("chat.editTitle"),scopes:[{key:"agent",title:D("chat.favs"),accent:"global"}],card:{msgLabel:D("chat.tabMsg"),placeholder:D("chat.addPlaceholder"),hasEnter:!1,msgKind:s=>s.startsWith("/")?"cmd":"reply"}};const i=t?$c(t):null;return{title:D("cmd.editTitle"),scopes:[{key:l_,title:D("cmd.global"),accent:"global"},...i?[{key:i,title:D("cmd.window"),accent:"win"}]:[]],card:{msgLabel:D("cmd.tabCmd"),placeholder:D("cmd.addPlaceholder"),hasEnter:!0,msgKind:()=>"cmd"}}}function vf({windowId:e,inset:t=0,variant:i="command",onClose:s}){const{title:n,scopes:u,card:p}=bS(i,e),[r,o]=N.useState(()=>Object.fromEntries(u.map(a=>[a.key,ni(a.key)]))),[f,_]=N.useState(null),c=()=>o(Object.fromEntries(u.map(a=>[a.key,ni(a.key)]))),m=(a,h,l)=>{fS(a,h,l),c()},y=(a,h)=>{Uc(a,h),c()},b=(a,h)=>{zc(a,h),c()},g=(a,h,l,d)=>{a===l?dS(a,h,d):(Uc(a,h),zc(l,d)),c(),_(null)};return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"cmd-backdrop",onClick:s}),v.jsxs("div",{className:"cmd-panel cmd-editor",role:"dialog","aria-label":n,children:[v.jsxs("div",{className:"cmd-head",children:[v.jsx("span",{className:"cmd-title",children:n}),v.jsx("button",{className:"cmd-add-open",onClick:()=>_({edit:null}),"aria-label":D("cmd.addTitle"),children:v.jsx(Fg,{})}),v.jsx("button",{className:"cmd-close",onClick:s,"aria-label":D("common.close"),children:v.jsx(Ar,{})})]}),v.jsx("div",{className:"cmd-list",children:u.map(a=>v.jsx(yS,{title:a.title,accent:a.accent,items:r[a.key]||[],showTitle:u.length>1,onMove:(h,l)=>m(a.key,h,l),onDel:h=>y(a.key,h),onEdit:h=>_({edit:{fav:h,scope:a.key}})},a.key))})]}),f&&v.jsx(SS,{scopes:u,cfg:p,edit:f.edit,inset:t,onAdd:b,onUpdate:g,onClose:()=>_(null)})]})}function c_({active:e,disabled:t,onToggle:i}){const s=N.useRef({x:0,y:0,moved:!1}),n=r=>{s.current={x:r.clientX,y:r.clientY,moved:!1}},u=r=>{const o=s.current;!o.moved&&Math.hypot(r.clientX-o.x,r.clientY-o.y)>10&&(o.moved=!0)},p=()=>{s.current.moved||i()};return v.jsx("button",{type:"button",className:`input-mic${e?" on":""}`,"aria-label":D(e?"mic.stop":"mic.start"),"aria-pressed":e,disabled:t,onPointerDown:n,onPointerMove:u,onPointerUp:p,children:v.jsx(Vy,{})})}const u_=["jpg","jpeg","png","gif","webp","svg","bmp","heic","heif","avif","ico","tiff","mp4","m4v","mov","webm","mkv","avi","wmv","flv","3gp","ogv","mpeg","mpg","txt","md","markdown","rst","log","csv","tsv","json","yaml","yml","toml","ini","conf","xml","html","htm","css","js","mjs","cjs","ts","tsx","jsx","py","rb","go","rs","java","c","h","cpp","sh","pdf","doc","docx","xls","xlsx","ppt","pptx","odt","ods","odp","rtf"],h_=u_.map(e=>`.${e}`).join(","),xS=new Set(u_);function CS(e){const t=/\.([A-Za-z0-9]+)$/.exec(e||"");return t?xS.has(t[1].toLowerCase()):!1}function d_(e){const i=(Array.isArray(e)?e:e&&typeof e.length=="number"?Array.from(e):[e]).filter(Boolean),s=[],n=[];for(const u of i)(CS(u.name)?s:n).push(u);return{allowed:s,rejected:n.map(u=>u.name)}}function kS(e,t){const i=t/16e3,s=Math.floor(e.length/i),n=new Int16Array(s);for(let u=0;u<s;u++){let p=e[Math.floor(u*i)];p>1?p=1:p<-1&&(p=-1),n[u]=p<0?p*32768:p*32767}return new Uint8Array(n.buffer)}function ES(e=1280){let t=new Uint8Array(0);return{push(i){const s=new Uint8Array(t.length+i.length);s.set(t),s.set(i,t.length);const n=[];let u=0;for(;s.length-u>=e;)n.push(s.slice(u,u+e)),u+=e;return t=s.slice(u),n},flush(){if(t.length===0)return null;const i=t;return t=new Uint8Array(0),i}}}function wf(e){let t="";for(let i=0;i<e.length;i++)t+=String.fromCharCode(e[i]);return btoa(t)}const LS="data:text/javascript;base64,Ly8gd2ViL3NyYy92b2ljZS9wY20td29ya2xldC5qcwovLyBNaW5pbWFsIEF1ZGlvV29ya2xldDogZm9yd2FyZCBlYWNoIHJlbmRlciBxdWFudHVtJ3MgbW9ubyBzYW1wbGVzIHRvIHRoZSBtYWluIHRocmVhZCwgd2hpY2ggZG9lcyB0aGUKLy8gKHVuaXQtdGVzdGVkKSBkb3duc2FtcGxlL2ZyYW1lL2VuY29kZS4gS2VwdCB0cml2aWFsIG9uIHB1cnBvc2Ug4oCUIHdvcmtsZXQgY29kZSBjYW4ndCBiZSB1bml0LXRlc3RlZC4KY2xhc3MgUGNtRm9yd2FyZGVyIGV4dGVuZHMgQXVkaW9Xb3JrbGV0UHJvY2Vzc29yIHsKICBwcm9jZXNzKGlucHV0cykgewogICAgY29uc3QgY2ggPSBpbnB1dHNbMF0gJiYgaW5wdXRzWzBdWzBdOwogICAgaWYgKGNoICYmIGNoLmxlbmd0aCkgdGhpcy5wb3J0LnBvc3RNZXNzYWdlKGNoLnNsaWNlKDApKTsgLy8gY29weTogdGhlIGJ1ZmZlciBpcyByZXVzZWQgYWZ0ZXIgcHJvY2VzcygpCiAgICByZXR1cm4gdHJ1ZTsKICB9Cn0KcmVnaXN0ZXJQcm9jZXNzb3IoJ3BjbS1mb3J3YXJkZXInLCBQY21Gb3J3YXJkZXIpOwo=";function RS({getUserMedia:e=i=>navigator.mediaDevices.getUserMedia(i),AudioCtor:t=window.AudioContext||window.webkitAudioContext}={}){let i=null,s=null,n=null,u=null;const p=ES(1280);async function r(f){s=await e({audio:{channelCount:1,echoCancellation:!0,noiseSuppression:!0}}),i=new t,await i.resume(),await i.audioWorklet.addModule(LS),u=i.createMediaStreamSource(s),n=new AudioWorkletNode(i,"pcm-forwarder"),n.port.onmessage=_=>{const c=kS(_.data,i.sampleRate);for(const m of p.push(c))f(wf(m))},u.connect(n),n.connect(i.destination)}async function o(){try{n&&(n.port.onmessage=null)}catch{}try{u&&u.disconnect(),n&&n.disconnect()}catch{}try{s&&s.getTracks().forEach(_=>_.stop())}catch{}try{i&&await i.close()}catch{}const f=p.flush();return i=s=n=u=null,f?wf(f):null}return{start:r,stop:o}}const TS={language:"zh_cn",domain:"iat",accent:"mandarin",vad_eos:1e4,dwa:"wpgs",ptt:1,nunum:1},Qu="audio/L16;rate=16000";function DS(e,t){return{common:{app_id:e},business:{...TS},data:{status:0,format:Qu,encoding:"raw",audio:t}}}function AS(e){return{data:{status:1,format:Qu,encoding:"raw",audio:e}}}function MS(){return{data:{status:2,format:Qu,encoding:"raw",audio:""}}}function yf(){return{sentences:new Map}}function NS(e,t){var u;const i=(u=t==null?void 0:t.data)==null?void 0:u.result;if(!i||!Array.isArray(i.ws))return e;const s=i.ws.map(p=>(p.cw||[]).map(r=>r.w).join("")).join(""),n=new Map(e.sentences);if(i.pgs==="rpl"&&Array.isArray(i.rg))for(let p=i.rg[0];p<=i.rg[1];p++)n.delete(p);return n.set(i.sn,s),{sentences:n}}function Sf(e){return[...e.sentences.keys()].sort((t,i)=>t-i).map(t=>e.sentences.get(t)).join("")}const IS=55e3,PS=4e3;function f_({onText:e,deps:t={}}){const i=t.signAsr||vy,s=t.WebSocketCtor||window.WebSocket,n=t.makeRecorder||(()=>RS()),[u,p]=N.useState("idle"),[r,o]=N.useState(""),f=N.useRef("idle"),_=N.useCallback(E=>{f.current=E,p(E)},[]),c=N.useRef(null),m=N.useRef(null),y=N.useRef(yf()),b=N.useRef(""),g=N.useRef(!1),a=N.useRef(null),h=N.useRef(null),l=N.useRef(null),d=N.useRef(e);d.current=e;const w=N.useCallback(()=>{clearTimeout(a.current),clearTimeout(h.current);try{c.current&&c.current.close()}catch{}c.current=null,m.current=null,g.current=!1},[]),k=N.useCallback(()=>{var E;f.current!=="idle"&&((E=d.current)==null||E.call(d,Sf(y.current)),o(""),_("idle"),w())},[w,_]),C=N.useCallback(E=>{const R=c.current;!R||R.readyState!==1||(R.send(JSON.stringify(g.current?AS(E):DS(b.current,E))),g.current=!0)},[]),L=N.useCallback(async()=>{if(f.current==="recording"){_("finalizing"),clearTimeout(a.current);try{const E=m.current?await m.current.stop():null;E&&C(E);const R=c.current;R&&R.readyState===1?(R.send(JSON.stringify(MS())),h.current=setTimeout(()=>k(),PS)):k()}catch{_("error"),w()}}},[C,w,_,k]);l.current=L;const x=N.useCallback(async()=>{if(!(f.current!=="idle"&&f.current!=="error")){_("requesting"),o(""),y.current=yf(),g.current=!1;try{const{url:E,appId:R}=await i();b.current=R;const I=new s(E);c.current=I,I.onmessage=A=>{var U;const O=JSON.parse(A.data);y.current=NS(y.current,O),o(Sf(y.current)),((U=O==null?void 0:O.data)==null?void 0:U.status)===2&&k()},I.onerror=()=>{_("error"),w()},I.onclose=()=>{(f.current==="recording"||f.current==="finalizing")&&k()};const T=n();m.current=T,await T.start(C),_("recording"),a.current=setTimeout(()=>{var A;(A=l.current)==null||A.call(l)},IS)}catch{_("error"),w()}}},[i,s,n,C,w,_,k]);return N.useEffect(()=>w,[w]),{state:u,partial:r,start:x,stop:L}}const p_="tw_asr";function OS(){try{const e=localStorage.getItem(p_);return e==null?null:e==="1"}catch{return null}}function m_(){const[e,t]=N.useState(OS);return N.useEffect(()=>{let i=!0;return Promise.resolve().then(Og).then(s=>{if(!i)return;const n=!!(s!=null&&s.asr);t(n);try{localStorage.setItem(p_,n?"1":"0")}catch{}}).catch(()=>{}),()=>{i=!1}},[]),e}function eh(e){N.useEffect(()=>{if(!e||!("wakeLock"in navigator))return;let t=null,i=!1;const s=async()=>{try{const u=await navigator.wakeLock.request("screen");if(i){try{u.release()}catch{}return}t=u}catch{}},n=()=>{document.visibilityState==="visible"&&!i&&s()};return s(),document.addEventListener("visibilitychange",n),()=>{i=!0,document.removeEventListener("visibilitychange",n);try{t&&t.release()}catch{}t=null}},[e])}function Ni(e,t){const i=N.useRef(t);i.current=t,N.useEffect(()=>{if(!e)return;window.history.pushState({overlay:!0},"");const s=()=>{var n;return(n=i.current)==null?void 0:n.call(i)};return window.addEventListener("popstate",s),()=>{var n;window.removeEventListener("popstate",s),(n=window.history.state)!=null&&n.overlay&&window.history.back()}},[e])}const lr={ESC:"Escape",Esc:"Escape",Tab:"Tab","⌫":"BSpace"},bf=e=>{e.cancelable&&e.preventDefault()},BS=e=>{var t,i;(i=(t=e.target).closest)!=null&&i.call(t,"input, textarea, [contenteditable]")||e.cancelable&&e.preventDefault()},xf=80,jS=e=>lr[e]?"esc":e.startsWith("/")?"cmd":"reply",FS=450;function Dl({className:e,onTap:t,onHold:i,children:s,...n}){const u=N.useRef({timer:null,long:!1,moved:!1,x:0,y:0}),p=_=>{_.cancelable&&_.preventDefault();const c=u.current;c.long=!1,c.moved=!1,c.x=_.clientX,c.y=_.clientY,i&&(c.timer=setTimeout(()=>{var m;c.long=!0,(m=navigator.vibrate)==null||m.call(navigator,12),i()},FS))},r=_=>{const c=u.current;c.moved||(Math.abs(_.clientX-c.x)>8||Math.abs(_.clientY-c.y)>8)&&(c.moved=!0,clearTimeout(c.timer))},o=()=>{const _=u.current;if(clearTimeout(_.timer),_.timer=null,_.moved){_.moved=!1;return}if(_.long){_.long=!1;return}t()},f=()=>{const _=u.current;clearTimeout(_.timer),_.timer=null,_.long=!1,_.moved=!1};return v.jsx("button",{type:"button",className:e,...n,onPointerDown:p,onPointerMove:r,onPointerUp:o,onPointerCancel:f,onPointerLeave:f,children:s})}function HS({pane:e,onAuthFail:t,onKey:i,onText:s,cwd:n=null,agent:u=null,windowId:p=null,recent:r=[],onSent:o,onRemoveRecent:f,inset:_=0},c){const[m,y]=N.useState(""),[b,g]=N.useState(!1),[a,h]=N.useState(!1),[l,d]=N.useState(!1),[w,k]=N.useState(()=>ni("agent")),[C,L]=N.useState(!1);N.useEffect(()=>{!l&&!C&&k(ni("agent"))},[l,C]);const[x,E]=N.useState(()=>ni("command")),[R,I]=N.useState(()=>p?ni($c(p)):[]),[T,A]=N.useState(!1);N.useEffect(()=>{T||(E(ni("command")),I(p?ni($c(p)):[]))},[T,p]);const[O,U]=N.useState({}),$=O[e]||(u?"agent":"command"),V=W=>U(ne=>({...ne,[e]:W})),[H,S]=N.useState({ctrl:"off",shift:"off",alt:"off"}),[M,B]=N.useState(!1),F=N.useRef(null),G=N.useRef(null),J=$==="command"?0:1,se=N.useRef(J);se.current=J;const te=N.useRef(V);te.current=V;const z=N.useRef(!1),P=N.useRef(!1),Z=()=>{var W;return((W=F.current)==null?void 0:W.clientWidth)||0},K=W=>{const ne=G.current;ne&&(ne.style.transition="none",ne.style.transform=`translate3d(${W}px, 0, 0)`)},ae=()=>{const W=G.current;!W||!W.style.transform||(W.style.transition="",W.style.transform="")};N.useLayoutEffect(()=>{z.current||ae()});const re=()=>{const W=F.current;if(!W)return;const ne=W.querySelector($==="command"?".dock-page.command":".dock-page.chat");ne&&(W.style.height=`${ne.offsetHeight}px`)};N.useLayoutEffect(()=>{$==="agent"&&Re(Ae.current),re()});const Se=N.useRef(re);Se.current=re,N.useEffect(()=>{const W=F.current;if(!W||typeof ResizeObserver>"u")return;const ne=new ResizeObserver(()=>{z.current||Se.current()});return W.querySelectorAll(".dock-page").forEach(Ne=>ne.observe(Ne)),()=>ne.disconnect()},[]),N.useEffect(()=>{if($!=="agent")return;const W=requestAnimationFrame(()=>{Re(Ae.current),re()});return()=>cancelAnimationFrame(W)},[$]),N.useEffect(()=>{var ne;if($==="agent")return;document.activeElement===Ae.current&&((ne=Ae.current)==null||ne.blur());const W=F.current;W&&(W.scrollLeft=0,W.scrollTop=0)},[$]),N.useEffect(()=>{const W=F.current;if(!W)return;let ne=null;const Ne=oe=>{var xe,Q;ae();const ve=((Q=(xe=oe.target)==null?void 0:xe.closest)==null?void 0:Q.call(xe,".quick-scroll"))||null;ne=oe.touches.length===1?{x:oe.touches[0].clientX,y:oe.touches[0].clientY,dx:0,decided:!1,horiz:!1,strip:ve}:null},Ke=oe=>{if(!ne||oe.touches.length!==1||P.current&&!ne.horiz)return;const ve=oe.touches[0].clientX-ne.x,xe=oe.touches[0].clientY-ne.y;if(!ne.decided){if(Math.abs(ve)<16&&Math.abs(xe)<16)return;if(ne.decided=!0,ne.horiz=Math.abs(ve)>Math.abs(xe)*1.4,ne.horiz&&ne.strip){const Y=ne.strip,le=se.current,Me=Y.scrollLeft<=0,Le=Y.scrollLeft>=Y.scrollWidth-Y.clientWidth-1,Ue=ve>0&&Me&&le===1,rt=ve<0&&Le&&le===0;Ue||rt||(ne.horiz=!1)}}if(!ne.horiz)return;oe.preventDefault(),z.current=!0,ne.dx=ve;const Q=Z()||1;let j=ve;se.current===0?j=Math.min(0,Math.max(-Q,j)):j=Math.max(0,Math.min(Q,j)),K(-se.current*Q+j)},vt=()=>{if(z.current=!1,!ne||!ne.horiz){ne=null,ae();return}const oe=se.current,ve=ne.dx;ne=null;let xe=oe;oe===0&&ve<-xf?xe=1:oe===1&&ve>xf&&(xe=0),ae(),xe!==oe&&te.current(xe===1?"agent":"command")},It=()=>{(W.scrollLeft||W.scrollTop)&&(W.scrollLeft=0,W.scrollTop=0)};return W.addEventListener("scroll",It,{passive:!0}),W.addEventListener("touchstart",Ne,{passive:!0}),W.addEventListener("touchmove",Ke,{passive:!1}),W.addEventListener("touchend",vt,{passive:!0}),W.addEventListener("touchcancel",vt,{passive:!0}),()=>{W.removeEventListener("scroll",It),W.removeEventListener("touchstart",Ne),W.removeEventListener("touchmove",Ke),W.removeEventListener("touchend",vt),W.removeEventListener("touchcancel",vt)}},[]),Ni(l,()=>d(!1));const[we,De]=N.useState(null),Ae=N.useRef(null),pe=N.useRef(null),He=N.useRef(null),Ve=N.useRef(null),ce=N.useRef({head:"",tail:""}),fe=N.useRef(null),Ce=N.useRef(!1),q=f_({onText:W=>{if(Ce.current){Ce.current=!1;return}const{head:ne,tail:Ne}=ce.current;y(ne+W+Ne),fe.current=ne.length+W.length}}),ge=m_(),be=q.state==="recording"||q.state==="finalizing";eh(be),N.useEffect(()=>()=>clearTimeout(Ve.current),[]),N.useEffect(()=>{if(q.state!=="recording"&&q.state!=="finalizing"||Ce.current)return;const{head:W,tail:ne}=ce.current;y(W+q.partial+ne),fe.current=W.length+q.partial.length},[q.partial,q.state]),N.useLayoutEffect(()=>{const W=Ae.current;if(!W)return;let ne=!1;if(fe.current!=null){const Ne=fe.current;if(fe.current=null,document.activeElement===W)try{W.setSelectionRange(Ne,Ne)}catch{}ne=Ne>=m.length}Re(W),ne&&(W.scrollTop=W.scrollHeight)},[m]);const Oe=()=>{if(be){q.stop();return}const W=Ae.current,ne=W?W.selectionStart:m.length;ce.current={head:m.slice(0,ne),tail:m.slice(ne)},q.start()},ie=40,he=N.useRef(null),ye=(W,ne)=>{const Ne=he.current;if(!Ne)return null;Ne.style.width=`${ne}px`,Ne.textContent=W;const Ke=document.createElement("span");return Ne.appendChild(Ke),{h:Ne.offsetHeight,endX:Ke.offsetLeft}},Re=W=>{if(!W)return;W.style.height="auto";const ne=ge?76:38,Ne=ge?86:48,Ke=W.parentElement.clientWidth-11,vt=W.value?ye(W.value,Ke-ne):null,It=vt?vt.h>ie:!1;g(It);const oe=It?ye(W.value,Ke):null;h(!!oe&&Ke-oe.endX<Ne),W.style.height=`${W.scrollHeight+2}px`},Ee=()=>{be&&(Ce.current=!0,q.stop())},qe=async()=>{if(e){Ee();try{await Wo(e,m,!0),o==null||o(m),y(""),requestAnimationFrame(()=>Re(Ae.current))}catch(W){W instanceof it&&(t==null||t())}}},ot=N.useRef(!1),at=W=>{const ne=W.value;if(W.value="",!ne)return;const Ne=zn.some(Ke=>rs(H[Ke]));if(Ne&&ne.length===1){const Ke=n_({kind:"text",ch:ne},H);if(Ke.kind==="key"){i(Ke.name),S(Hc);return}}s(ne),Ne&&S(Hc)},Ft=W=>{var ne;(ne=W.nativeEvent)!=null&&ne.isComposing||ot.current||at(W.target)},St=()=>{$==="command"&&(ot.current=!0)},si=W=>{$==="command"&&(ot.current=!1,at(W.target))},Je=W=>{var ne;if(!($!=="command"||(ne=W.nativeEvent)!=null&&ne.isComposing)){if(W.key==="Enter"&&!W.shiftKey){W.preventDefault(),i("Enter");return}W.key==="Backspace"&&(W.preventDefault(),i("BSpace"))}},Ye=()=>{const W=pe.current;W&&(document.activeElement===W?W.blur():W.focus())},Ie=W=>{y(W),d(!1),requestAnimationFrame(()=>{var ne;(ne=Ae.current)==null||ne.focus(),Re(Ae.current)})},lt=async W=>{if(e)try{await Wo(e,W,!0),o==null||o(W)}catch(ne){ne instanceof it&&(t==null||t())}},Ze=W=>Ie(W),Pe=W=>{if(lr[W]){i(lr[W]);return}lt(W)},ui=W=>{if(W.kind==="key"){i(W.text);return}Pe(W.text)},bi=W=>{if(W.kind==="key"){i(W.text);return}if(lr[W.text]){i(lr[W.text]);return}if(W.enter){lt(W.text);return}s(W.text)},Nt=W=>W.kind==="key"&&W.label||W.text,Ht=W=>W.kind==="key"||lr[W.text]||!W.enter?void 0:()=>s(W.text);N.useImperativeHandle(c,()=>({fill:Ie}),[]);const Hi=W=>{if(!W.length)return;let ne;if(W.length===1)ne=W[0];else{const Ne=W[0].slice(0,W[0].lastIndexOf("/")+1);ne=W.every(Ke=>Ke.startsWith(Ne))?`${Ne}{${W.map(Ke=>Ke.slice(Ne.length)).join(",")}}`:W.join(" ")}y(Ne=>Ne&&!/\s$/.test(Ne)?`${Ne} ${ne}`:Ne+ne),requestAnimationFrame(()=>{var Ne;(Ne=Ae.current)==null||Ne.focus(),Re(Ae.current)})},Ji=async W=>{const{allowed:ne,rejected:Ne}=d_(W);if(!ne.length){Ne.length&&(clearTimeout(Ve.current),De({label:D("dock.upload.rejected",{names:Ne.join("、")}),error:!0}),Ve.current=setTimeout(()=>De(null),3500));return}clearTimeout(Ve.current),De(null);const Ke=ne.length,vt=[],It=[],oe=new AbortController;r_(oe,D("dock.upload.progress",{name:ne[0].name,tag:Ke>1?`(1/${Ke})`:""}));try{for(let ve=0;ve<Ke&&!oe.signal.aborted;ve++){const xe=ne[ve],Q=Ke>1?`(${ve+1}/${Ke})`:"";xa({label:D("dock.upload.progress",{name:xe.name,tag:Q}),phase:"sending",pct:0});try{const j=await Bg(n||"",xe,(Y,le)=>xa({pct:Y,phase:le}),!0,{signal:oe.signal});j!=null&&j.path&&vt.push(j.path)}catch(j){if(j instanceof Sa)break;if(j instanceof it){t==null||t(),Oc(),De(null);return}It.push({name:xe.name,reason:(j==null?void 0:j.message)||D("api.uploadFailed")})}}}finally{Oc()}if(vt.length&&Hi(vt),It.length||Ne.length){const ve=It.map(xe=>`${xe.name}:${xe.reason}`);Ne.length&&ve.push(D("dock.upload.rejected",{names:Ne.join("、")})),De({label:ve.join(";"),error:!0}),Ve.current=setTimeout(()=>De(null),5e3)}else De(null)},Xe=async()=>{if(!(!e||!m)){Ee();try{await Wo(e,m,!1),o==null||o(m),y(""),requestAnimationFrame(()=>Re(Ae.current))}catch(W){W instanceof it&&(t==null||t())}}},xt=N.useRef(null),dt=N.useRef(!1),hi=N.useRef({x:0,y:0,moved:!1}),di=W=>{W.cancelable&&W.preventDefault(),dt.current=!1,hi.current={x:W.clientX,y:W.clientY,moved:!1},m&&(xt.current=setTimeout(()=>{var ne;dt.current=!0,(ne=navigator.vibrate)==null||ne.call(navigator,12),Xe()},450))},Yt=W=>{const ne=hi.current;ne.moved||Math.hypot(W.clientX-ne.x,W.clientY-ne.y)<=10||(ne.moved=!0,clearTimeout(xt.current),xt.current=null)},Di=()=>{if(clearTimeout(xt.current),xt.current=null,dt.current){dt.current=!1;return}hi.current.moved||qe()},Ct=()=>{clearTimeout(xt.current),xt.current=null,dt.current=!1},pt=N.useRef(null),$t=N.useRef({x:0,y:0,moved:!1}),Zi=W=>{if(!b)return null;for(const[ne,Ne]of[["send",".input-send"],["mic",".input-mic"]]){const Ke=W.currentTarget.querySelector(Ne);if(!Ke)continue;const vt=Ke.getBoundingClientRect();if(W.clientX>=vt.left&&W.clientX<=vt.right&&W.clientY>=vt.top&&W.clientY<=vt.bottom)return ne}return null},hs=W=>{const ne=Zi(W);ne&&(W.stopPropagation(),W.cancelable&&W.preventDefault(),pt.current=ne,ne==="send"?di(W):$t.current={x:W.clientX,y:W.clientY,moved:!1})},Ai=W=>{const ne=pt.current;if(!ne)return;if(ne==="send"){Yt(W);return}const Ne=$t.current;!Ne.moved&&Math.hypot(W.clientX-Ne.x,W.clientY-Ne.y)>10&&(Ne.moved=!0)},$i=()=>{const W=pt.current;if(pt.current=null,!!W){if(W==="send"){m?Di():Ct();return}!$t.current.moved&&q.state!=="requesting"&&Oe()}},Dt=()=>{const W=pt.current;pt.current=null,W==="send"&&Ct()};return v.jsxs("div",{className:"bottom-dock",children:[v.jsxs("div",{className:"dock-left",onPointerDown:BS,children:[v.jsxs("button",{type:"button",className:"dock-dots","aria-label":D("dock.mode.toggle"),onClick:()=>V($==="command"?"agent":"command"),children:[v.jsx("span",{className:"dock-mode-label",children:D($==="command"?"dock.mode.command":"dock.mode.chat")}),v.jsx("i",{className:`dock-dot${$==="command"?" on":""}`,"data-page":"command","aria-hidden":"true"}),v.jsx("i",{className:`dock-dot${$==="agent"?" on":""}`,"data-page":"agent","aria-hidden":"true"})]}),v.jsx("div",{className:"dock-pager",ref:F,children:v.jsxs("div",{className:`dock-track${J===1?" at-chat":""}`,ref:G,children:[v.jsxs("div",{className:`dock-page command${$==="command"?" on":""}`,children:[v.jsx("input",{ref:pe,className:"cmd-capture",type:"text",onInput:Ft,onKeyDown:Je,onCompositionStart:St,onCompositionEnd:si,onFocus:()=>B(!0),onBlur:()=>B(!1),enterKeyHint:"send","aria-label":D("dock.command.placeholder"),autoCapitalize:"off",autoCorrect:"off",autoComplete:"off",spellCheck:!1}),v.jsxs("div",{className:"quick-bar",children:[v.jsx("div",{className:"quick-fixed",children:v.jsxs("button",{type:"button",className:"quick-fix","aria-pressed":M,"aria-label":D(M?"dock.kbdHide":"dock.kbdShow"),onPointerDown:bf,onClick:Ye,children:[v.jsx(Yy,{down:M}),v.jsx("span",{children:D(M?"dock.kbdHide":"dock.kbdShow")})]})}),v.jsxs("div",{className:"quick-scroll",children:[x.map(W=>v.jsxs(Dl,{className:"quick-cmd quick-cmd-plain",onTap:()=>bi(W),onHold:Ht(W),children:[Nt(W),W.kind!=="key"&&W.enter&&v.jsx("span",{className:"qc-enter","aria-hidden":"true",children:"⏎"})]},`g:${W.text}`)),R.map(W=>v.jsxs(Dl,{className:"quick-cmd quick-cmd-win",onTap:()=>bi(W),onHold:Ht(W),children:[Nt(W),W.kind!=="key"&&W.enter&&v.jsx("span",{className:"qc-enter","aria-hidden":"true",children:"⏎"})]},`w:${W.text}`)),v.jsx("button",{type:"button",className:"quick-cmd quick-cmd-add","aria-label":D("cmd.editTitle"),onPointerDown:bf,onClick:()=>A(!0),children:v.jsx(Mc,{})})]})]}),v.jsx(aS,{onKey:i,onText:s,mods:H,setMods:S,keyHeldRef:P})]}),v.jsxs("div",{className:`dock-page chat${$==="agent"?" on":""}`,children:[we&&v.jsx("div",{className:"dock-upload error",children:v.jsx("span",{className:"dock-upload-label",children:we.label})}),v.jsxs("div",{className:"quick-bar",children:[v.jsx("div",{className:"quick-fixed",children:v.jsxs("button",{type:"button",className:"quick-fix","aria-label":D("dock.attach"),disabled:!!we&&!we.error,onClick:()=>{var W;return(W=He.current)==null?void 0:W.click()},children:[v.jsx(zg,{}),v.jsx("span",{children:D("dock.attach")})]})}),v.jsxs("div",{className:"quick-scroll",children:[w.map(W=>v.jsx(Dl,{className:`quick-cmd qc-${W.kind==="key"?"esc":jS(W.text)}`,onTap:()=>ui(W),onHold:W.kind==="key"?void 0:()=>Ie(W.text),children:Nt(W)},W.text)),v.jsx("button",{type:"button",className:"quick-cmd quick-cmd-add","aria-label":D("chat.editTitle"),onClick:()=>L(!0),children:v.jsx(Mc,{})})]})]}),v.jsx("input",{ref:He,className:"browse-file-input",type:"file",multiple:!0,accept:h_,onChange:W=>{Ji(W.target.files),W.target.value=""}}),v.jsxs("div",{className:`input-wrap${be?" recording":""}${b?" multi":""}${a?" crowd":""}`,onPointerDownCapture:hs,onPointerMoveCapture:Ai,onPointerUpCapture:$i,onPointerCancelCapture:Dt,children:[v.jsx("textarea",{ref:Ae,className:"input-text",rows:1,value:m,onPointerDown:W=>{be&&(Ee(),W.currentTarget.focus())},onChange:W=>{y(W.target.value),Re(W.target)},placeholder:D("dock.input.placeholder"),autoCapitalize:"off",autoCorrect:"off",spellCheck:!1}),v.jsx("div",{ref:he,className:"input-mirror","aria-hidden":"true"}),!m&&v.jsx("button",{type:"button",className:"input-history","aria-label":D("dock.history"),title:D("dock.history"),onClick:()=>d(W=>!W),children:v.jsx($g,{})}),ge&&v.jsx(c_,{active:be,disabled:q.state==="requesting",onToggle:Oe}),v.jsx("button",{type:"button",className:"input-send","aria-label":D("dock.send"),title:D("dock.send.hint"),disabled:!m,onPointerDown:di,onPointerMove:Yt,onPointerUp:Di,onPointerCancel:Ct,onPointerLeave:Ct,children:v.jsx(jg,{})})]})]})]})})]}),v.jsx(mS,{open:l,mode:$,recent:r,historyOnly:!0,onDelete:f,onSend:W=>{d(!1),Pe(W)},onFill:W=>{d(!1),Ze(W)},onClose:()=>d(!1)}),T&&v.jsx(vf,{windowId:p,inset:_,onClose:()=>A(!1)}),C&&v.jsx(vf,{variant:"chat",inset:_,onClose:()=>L(!1)})]})}const $S=N.forwardRef(HS);function zS({onSaved:e}){const[t,i]=N.useState(""),s=n=>{n.preventDefault();const u=t.trim();u&&(xw(u),e())};return v.jsxs("form",{className:"token-prompt",onSubmit:s,children:[v.jsx("h2",{children:D("token.title")}),v.jsx("input",{value:t,onChange:n=>i(n.target.value),placeholder:D("token.placeholder")}),v.jsx("button",{type:"submit",children:D("common.save")})]})}function th({open:e,title:t,actions:i=[],onClose:s}){const[n,u]=N.useState(null);if(N.useEffect(()=>{e||u(null)},[e]),!e)return null;const p=o=>{var f;if(!o.disabled){if(o.confirm&&n!==o.key){u(o.key);return}u(null),(f=o.onClick)==null||f.call(o)}},r=o=>v.jsx("button",{className:`sheet-action ${o.danger?"danger":""} ${n===o.key?"armed":""}`,disabled:o.disabled,onClick:()=>p(o),children:o.confirm&&n===o.key?o.confirmLabel||D("actionsheet.confirmAgain"):o.label},o.key);return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-backdrop",onClick:s}),v.jsxs("div",{className:"settings-card",role:"dialog","aria-label":t,"aria-modal":"true",children:[v.jsxs("div",{className:"settings-head",children:[v.jsx("span",{className:"settings-title",children:t}),v.jsx("button",{className:"settings-close",onClick:s,"aria-label":D("common.close"),children:"✕"})]}),v.jsxs("div",{className:"settings-section sheet-actions",children:[i.map((o,f)=>Array.isArray(o)?v.jsx("div",{className:"sheet-row",children:o.map(r)},`row-${f}`):r(o)),v.jsx("button",{className:"fontbtn sheet-cancel",onClick:s,children:D("common.cancel")})]})]})]})}const US=/\.(?:md|markdown|html|htm|txt|log|sh)$/i,Cf=300;function kf(e){const t=e.lastIndexOf("/");return t<0?{dir:"",frag:e}:{dir:e.slice(0,t+1),frag:e.slice(t+1)}}const WS=e=>e.replace(/\/+$/,"")||"/",Al=(e,t)=>e===t?"":e.startsWith(`${t}/`)?e.slice(t.length+1):e,Eo=(e,t,i)=>{let s=null;for(const n of t||[])(e===n||e!=null&&e.startsWith(`${n}/`))&&(!s||n.length>s.length)&&(s=n);return s||i},VS=e=>e==null?"":e<1024?`${e} B`:e<1024*1024?`${Math.round(e/1024)} KB`:`${(e/1024/1024).toFixed(1)} MB`;function g_({path:e,onNavigate:t,onOpenDoc:i,onJumpToCwd:s,pendingFile:n,onPendingConsumed:u,pickMode:p=!1,allowMkdir:r=!p,onPick:o}){const[f,_]=N.useState(""),[c,m]=N.useState(null),[y,b]=N.useState(!1),[g,a]=N.useState(""),[h,l]=N.useState(""),[d,w]=N.useState(""),[k,C]=N.useState(null),[L,x]=N.useState(!1),[E,R]=N.useState(!1),[I,T]=N.useState(""),[A,O]=N.useState(null),U=N.useRef(null),$=N.useRef(!1),V=N.useRef(null),H=N.useRef(null),S=N.useRef(null),M=async(q,{sync:ge=!1,notify:be=!1,fallbackHome:Oe=!1}={})=>{a("");try{const ie=await Pg(q??void 0);if($.current=ie.path,m(ie),ge){const he=Al(ie.path,Eo(ie.path,ie.roots,ie.home));_(he?`${he}/`:"")}be&&(t==null||t(ie.path),R(!1),T(""))}catch{if(Oe&&q!=null){M(null,{sync:!0});return}a(D("filebrowser.openDirFailed"))}};N.useEffect(()=>{e!==$.current&&M(e,{sync:!0,fallbackHome:p})},[e]),N.useEffect(()=>()=>{clearTimeout(V.current),clearTimeout(H.current)},[]),N.useEffect(()=>{if(!y)return;const q=ge=>{var be;(be=S.current)!=null&&be.contains(ge.target)||b(!1)};return document.addEventListener("pointerdown",q,!0),()=>document.removeEventListener("pointerdown",q,!0)},[y]);const B=q=>{l(q),clearTimeout(H.current),H.current=setTimeout(()=>l(""),2500)},F=q=>{const ge=c==null?void 0:c.home;if(!ge){_(q);return}const be=(c==null?void 0:c.roots)||[ge];let Oe=q;(Oe==="~"||Oe.startsWith("~/"))&&(Oe=ge+Oe.slice(1));let ie=Eo(c==null?void 0:c.path,be,ge);Oe.startsWith("/")&&(ie=Eo(Oe,be,ge),Oe=Oe===ie?"":Oe.startsWith(`${ie}/`)?Oe.slice(ie.length+1):Oe.replace(/^\/+/,"")),_(Oe);const he=WS(`${ie}/${kf(Oe).dir}`);he!==$.current&&(clearTimeout(V.current),V.current=setTimeout(()=>{he!==$.current&&M(he,{notify:!0})},250))},G=async q=>{const ge=js(c.path,q);try{await navigator.clipboard.writeText(ge),B(D("filebrowser.copiedPath",{abs:ge}))}catch{B(ge)}},J=q=>i(js(c.path,q)),se=q=>M(js(c.path,q),{sync:!0,notify:!0}),te=()=>(c==null?void 0:c.parent)&&M(c.parent,{sync:!0,notify:!0}),z=async()=>{const q=I.trim();if(!(!q||!c)){a("");try{await gy(c.path,q),await M(c.path,{}),R(!1),T("")}catch{a(D("filebrowser.mkdirFailed"))}}},P=async q=>{a(""),O({label:D("filebrowser.downloading",{name:q}),pct:0});try{await Ry(js(c.path,q),ge=>O({label:D("filebrowser.downloading",{name:q}),pct:ge})),w(q)}catch{a(D("filebrowser.downloadFailed"))}finally{O(null)}},Z=()=>{const q=k;C(null),q&&P(q)},K=c==null?void 0:c.home,ae=(c==null?void 0:c.roots)||(K?[K]:[]),re=Eo(c==null?void 0:c.path,ae,K),Se=q=>q===K?"~":/\/tmp$/.test(q)?"tmp":q.includes("/var/folders/")?"TMPDIR":q.split("/").filter(Boolean).pop()||"/",we=q=>{b(!1),q!==re&&M(q,{sync:!0,notify:!0})},De=(q,ge)=>!q||!ge||q===ge?!1:(q.startsWith(`${ge}/`)?q.slice(ge.length+1):q).split("/").some(Oe=>Oe.startsWith(".")),Ae=!!c&&c.path!==K&&!De(c.path,re),pe=async q=>{const{allowed:ge,rejected:be}=d_(q);if(!ge.length)return be.length&&a(D("filebrowser.uploadRejected",{names:be.join("、")})),be;x(!0),a("");const Oe=ge.length,ie=[],he=new AbortController;r_(he,D("filebrowser.uploading",{name:ge[0].name,tag:Oe>1?`(1/${Oe})`:""}));try{for(let ye=0;ye<Oe&&!he.signal.aborted;ye++){const Re=ge[ye],Ee=Oe>1?`(${ye+1}/${Oe})`:"";xa({label:D("filebrowser.uploading",{name:Re.name,tag:Ee}),phase:"sending",pct:0});try{await Bg(c.path,Re,(qe,ot)=>xa({pct:qe,phase:ot}),!1,{signal:he.signal})}catch(qe){if(qe instanceof Sa)break;ie.push({name:Re.name,reason:(qe==null?void 0:qe.message)||D("filebrowser.uploadFailed")})}}}finally{Oc()}return await M(c.path,{}),x(!1),ie.length?a(ie.map(ye=>`${ye.name}:${ye.reason}`).join(";")):be.length&&a(D("filebrowser.uploadRejected",{names:be.join("、")})),[...ie.map(ye=>ye.name),...be]},He=async()=>{n&&(await pe(n)).length===0&&(u==null||u())},Ve=q=>{if(p||q.key!=="Enter")return;const ge=f.trim();ge&&US.test(ge)&&(c!=null&&c.home)&&i(js(c.home,ge))},ce=kf(f).frag.toLowerCase(),fe=((c==null?void 0:c.entries)||[]).filter(q=>(!p||q.type==="dir")&&(!ce||q.name.toLowerCase().includes(ce))),Ce=fe.length>Cf?fe.slice(0,Cf):fe,de=fe.length-Ce.length;return v.jsxs("div",{className:"browse-view",children:[v.jsxs("div",{className:"browse-bar",children:[s&&v.jsx("button",{className:"browse-cwd","aria-label":D("filebrowser.sessionDir"),title:D("filebrowser.jumpToSessionDir"),onClick:s,children:v.jsx(jy,{})}),v.jsx("button",{className:"browse-up","aria-label":D("filebrowser.parentDir"),disabled:!(c!=null&&c.parent),onClick:te,children:v.jsx(jg,{})}),v.jsxs("div",{className:"browse-path",children:[ae.length>1?v.jsxs("div",{className:"dd browse-root-dd",ref:S,children:[v.jsxs("button",{type:"button",className:"browse-root","aria-haspopup":"listbox","aria-expanded":y,"aria-label":D("filebrowser.rootSelect"),onClick:()=>b(q=>!q),children:[v.jsxs("span",{children:[Se(re),"/"]}),v.jsx("span",{className:`dd-caret${y?" open":""}`,"aria-hidden":"true",children:"▾"})]}),y&&v.jsx("div",{className:"dd-menu",role:"listbox",children:ae.map(q=>v.jsxs("button",{type:"button",role:"option","aria-selected":q===re,title:q,className:`dd-option${q===re?" is-selected":""}`,onClick:()=>we(q),children:[v.jsxs("span",{className:"dd-option-label",children:[Se(q),"/"]}),q===re&&v.jsx("span",{className:"dd-check","aria-hidden":"true",children:"✓"})]},q))})]}):v.jsx("span",{className:"browse-home","aria-hidden":"true",children:"~/"}),v.jsx("input",{className:"browse-input",value:f,placeholder:D("filebrowser.pathPlaceholder"),autoCapitalize:"off",autoCorrect:"off",spellCheck:!1,onChange:q=>F(q.target.value),onKeyDown:Ve})]}),r&&v.jsx("button",{className:"browse-mkdir","aria-label":D("filebrowser.newFolder"),title:D("filebrowser.newFolder"),disabled:!c,onClick:()=>{R(q=>!q),T("")},children:v.jsx(Py,{})}),!p&&v.jsx("button",{className:"browse-upload","aria-label":D("filebrowser.uploadFile"),title:D(Ae?"filebrowser.uploadToCurrentDir":"filebrowser.enterSubdirToUpload"),disabled:!Ae||L,onClick:()=>{var q;return(q=U.current)==null?void 0:q.click()},children:v.jsx(zg,{})}),!p&&v.jsx("input",{ref:U,className:"browse-file-input",type:"file",multiple:!0,accept:h_,onChange:q=>{pe(Array.from(q.target.files||[])),q.target.value=""}})]}),E&&v.jsxs("div",{className:"browse-newfolder",children:[v.jsx("input",{className:"browse-newfolder-input",autoFocus:!0,value:I,placeholder:D("filebrowser.folderNamePlaceholder"),autoCapitalize:"off",autoCorrect:"off",spellCheck:!1,onChange:q=>T(q.target.value),onKeyDown:q=>{q.key==="Enter"&&z()}}),v.jsx("button",{className:"browse-newfolder-ok",onClick:z,children:D("filebrowser.createBtn")}),v.jsx("button",{className:"browse-newfolder-x","aria-label":D("common.cancel"),onClick:()=>{R(!1),T("")},children:"✕"})]}),!p&&n&&v.jsxs("div",{className:"browse-pending",children:[v.jsxs("span",{className:"browse-pending-text",children:[D("filebrowser.uploadPendingTo",{name:n.name}),!Ae&&v.jsx("em",{className:"browse-pending-hint",children:D("filebrowser.enterSubdirFirst")})]}),v.jsx("button",{className:"browse-pending-btn",disabled:!Ae||L,onClick:He,children:D("filebrowser.upload")})]}),g&&v.jsx("div",{className:"bind-error browse-err",children:g}),h&&v.jsx("div",{className:"browse-notice",children:h}),!p&&d&&v.jsxs("div",{className:"browse-saved",children:[v.jsx("span",{className:"browse-saved-text",children:D("filebrowser.savedToDownloads",{name:d})}),v.jsx("button",{className:"browse-saved-close","aria-label":D("common.close"),onClick:()=>w(""),children:"×"})]}),!p&&A&&v.jsxs("div",{className:"browse-progress",children:[v.jsxs("span",{className:"browse-progress-label",children:[A.label," ",Math.round(A.pct*100),"%"]}),v.jsx("span",{className:"browse-progress-track",children:v.jsx("span",{className:"browse-progress-fill",style:{width:`${Math.round(A.pct*100)}%`}})})]}),v.jsxs("div",{className:"browse-list",children:[Ce.length===0&&!g&&v.jsx("div",{className:"browse-empty",children:D("filebrowser.noMatches")}),Ce.map(q=>v.jsxs("div",{className:"browse-entry-row",children:[v.jsxs("button",{className:"browse-entry",onClick:()=>q.type==="dir"?se(q.name):q.type==="doc"||q.type==="image"?J(q.name):B(D("filebrowser.previewUnsupported")),children:[v.jsx("span",{className:"browse-entry-icon",children:q.type==="dir"?v.jsx(Hn,{}):q.type==="image"?v.jsx(By,{}):v.jsx(Oy,{})}),v.jsx("span",{className:"browse-entry-name",children:q.name}),q.type!=="dir"&&v.jsx("span",{className:"browse-entry-size",children:VS(q.size)})]}),q.type!=="dir"&&v.jsx("button",{className:"browse-copy","aria-label":D("filebrowser.copyAbsPath"),title:D("filebrowser.copyAbsPath"),onClick:()=>G(q.name),children:v.jsx(Ug,{})}),q.type!=="dir"&&v.jsx("button",{className:"browse-dl","aria-label":D("filebrowser.download"),onClick:()=>C(q.name),children:v.jsx($y,{})})]},q.name)),de>0&&v.jsx("div",{className:"browse-overflow",children:D("filebrowser.tooMany",{shown:Ce.length,total:fe.length})})]}),p&&c&&v.jsx("div",{className:"browse-pick-bar",children:v.jsx("button",{className:"browse-pick-confirm",onClick:()=>o==null?void 0:o(c.path),children:D("filebrowser.pickThisDir",{path:Al(c.path,c.home)?`~/${Al(c.path,c.home)}`:"~"})})}),v.jsx(th,{open:!!k,title:k?D("filebrowser.downloadConfirm",{name:k}):"",actions:[{key:"dl",label:D("filebrowser.download"),onClick:Z}],onClose:()=>C(null)})]})}const KS=()=>{};function Xn({open:e,seedCwd:t=null,hint:i=null,pane:s=null,allowMkdir:n=!1,onPick:u,onClose:p,inset:r=0}){const[o,f]=N.useState(t),_=N.useRef(!1);e&&!_.current?(_.current=!0,o!==t&&f(t)):!e&&_.current&&(_.current=!1);const c=s?async()=>{try{const{cwd:m}=await Js(s);m&&f(m)}catch{}}:null;return e?v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-backdrop dirpick-backdrop",onClick:p}),v.jsxs("div",{className:"settings-card dirpick-card",style:{transform:`translate(-50%, calc(-50% + ${r/2}px))`,"--kb-inset":`${r}px`},role:"dialog","aria-label":D("dirpicker.title"),"aria-modal":"true",children:[v.jsxs("div",{className:"settings-head",children:[v.jsx("span",{className:"settings-title",children:D("dirpicker.title")}),v.jsx("button",{className:"settings-close",onClick:p,"aria-label":D("common.close"),children:"✕"})]}),i&&v.jsx("div",{className:"dirpick-hint",children:i}),v.jsx(g_,{path:o,onNavigate:f,onOpenDoc:KS,onJumpToCwd:c,pickMode:!0,allowMkdir:n,onPick:u})]})]}):null}function GS({open:e,onClose:t,termRef:i,onColAdjust:s,onColRestore:n,onOpenChangelog:u,changelogUnread:p,updateInfo:r=null,activePreview:o=null,pane:f=null,lastPreviewDir:_=null,dynamicEnabled:c=!1,getColCount:m=null,onStartPreview:y,onStartDynamicPreview:b,onOpenPreview:g,onRenew:a,onStop:h}){var Ve;const[l,d]=N.useState(null),[w,k]=N.useState(null),[C,L]=N.useState(!1),[x,E]=N.useState(Yg()),[R,I]=N.useState(!1),[T,A]=N.useState(""),[O,U]=N.useState(!1),[$,V]=N.useState(null),[H,S]=N.useState("off"),[M,B]=N.useState(""),[F,G]=N.useState(!1),[J,se]=N.useState(""),[te,z]=N.useState(!1),P=Kg(o==null?void 0:o.expiresAt,!!o&&e);N.useEffect(()=>{G(!1),se("")},[o==null?void 0:o.name,e]);const Z=ce=>({"port not listening":D("settings.err_port_not_listening"),"bad port":D("settings.err_bad_port"),"dynamic disabled":D("settings.err_dynamic_disabled")})[ce]||ce||D("settings.err_start_failed"),K=async()=>{const ce=Number(M);if(ce){se(""),z(!0);try{await(b==null?void 0:b(ce)),t==null||t()}catch(fe){se(Z(fe==null?void 0:fe.message))}finally{z(!1)}}},ae=async()=>{let ce=_;if(!ce&&f)try{ce=(await Js(f)).cwd||null}catch{}V(ce),U(!0)};N.useEffect(()=>{var ce,fe;e&&(d(((fe=(ce=i.current)==null?void 0:ce.getFontSize)==null?void 0:fe.call(ce))??null),k((m==null?void 0:m())??null))},[e,i,m]);const re=async()=>{I(!0),A("");try{x?(await o1(),E(!1),A(D("settings.notify_disabled"))):(await n1(),E(!0),A(D("settings.notify_enabled")))}catch(ce){A(ce.message||D("settings.notify_failed"))}finally{I(!1)}};if(!e)return null;const Se=ce=>{var de,q,ge,be;const fe=(q=(de=i.current)==null?void 0:de.getFontSize)==null?void 0:q.call(de),Ce=(be=(ge=i.current)==null?void 0:ge.setFontSize)==null?void 0:be.call(ge,((fe==null?void 0:fe.size)??14)+ce);Ce!=null&&d({size:Ce,auto:!1})},we=()=>{var ce,fe;(fe=(ce=i.current)==null?void 0:ce.autoFont)==null||fe.call(ce),d({size:null,auto:!0})},De=l!=null&&l.auto?D("settings.font_auto"):l!=null&&l.size?`${l.size}px`:"—",Ae=w!=null?`${w} 列`:"—",pe=ce=>{s==null||s(ce),k((m==null?void 0:m())??null)},He=()=>{n==null||n(),k(null)};return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-backdrop",onClick:t}),v.jsxs("div",{className:"settings-card",role:"dialog","aria-label":D("settings.title"),"aria-modal":"true",children:[v.jsxs("div",{className:"settings-head",children:[v.jsx("span",{className:"settings-title",children:D("settings.title")}),v.jsx("button",{className:"settings-close",onClick:t,"aria-label":D("common.close"),children:"✕"})]}),v.jsx("div",{className:"settings-group",children:D("settings.group_global")}),v.jsxs("div",{className:"settings-section",children:[v.jsx("div",{className:"settings-label",children:D("settings.language")}),v.jsxs("div",{className:"lang-drop",children:[C&&v.jsx("div",{className:"lang-drop-backdrop",onClick:()=>L(!1)}),v.jsxs("button",{className:"lang-trigger",onClick:()=>L(ce=>!ce),children:[v.jsx("span",{children:(Ve=Wd.find(ce=>ce.code===Dc()))==null?void 0:Ve.label}),v.jsx("span",{className:"lang-chevron",children:C?"▴":"▾"})]}),C&&v.jsx("div",{className:"lang-menu",children:Wd.map(ce=>v.jsx("button",{className:`lang-option${ce.code===Dc()?" active":""}`,onClick:()=>Sw(ce.code),children:ce.label},ce.code))})]})]}),v.jsxs("div",{className:"settings-section",children:[v.jsx("div",{className:"settings-label",children:D("settings.font_size")}),v.jsxs("div",{className:"settings-btns",children:[v.jsx("button",{className:"fontbtn",onClick:()=>Se(-1),"aria-label":D("settings.font_decrease"),children:"A−"}),v.jsx("span",{className:"settings-value",children:De}),v.jsx("button",{className:"fontbtn",onClick:()=>Se(1),"aria-label":D("settings.font_increase"),children:"A+"}),v.jsx("button",{className:"fontbtn",onClick:we,title:D("settings.font_auto_title"),children:D("settings.font_auto")})]})]}),v.jsxs("div",{className:"settings-section",children:[v.jsx("div",{className:"settings-label",children:D("settings.version")}),v.jsxs("div",{className:"settings-btns",children:[v.jsx("span",{className:"settings-value",children:r!=null&&r.current?`v${r.current}`:"—"}),v.jsxs("button",{className:"fontbtn",onClick:u,children:[D("settings.view_changelog"),p&&v.jsx("span",{className:"settings-dot","aria-label":D("settings.has_update")})]})]}),(r==null?void 0:r.updateAvailable)&&v.jsxs("div",{className:"settings-update",children:[v.jsx("div",{className:"settings-update-title",children:D("settings.update_available",{v:r.latest})}),v.jsxs("div",{className:"settings-update-how",children:[D("settings.update_how")," ",v.jsx("code",{children:"handmux update"})]})]})]}),v.jsxs("div",{className:"settings-section",children:[v.jsx("div",{className:"settings-label",children:D("settings.push_notifications")}),qa()?v.jsxs(v.Fragment,{children:[v.jsxs("div",{className:"settings-btns",children:[v.jsx("button",{className:"fontbtn",onClick:re,disabled:R,"aria-pressed":x,children:D(x?"settings.notify_on":"settings.notify_enable")}),R&&v.jsx("span",{className:"spinner",role:"status","aria-label":D("settings.processing")}),!R&&T&&v.jsx("span",{className:"settings-note",children:T})]}),v.jsx("div",{className:"settings-hint",children:D("settings.push_hint")})]}):v.jsx("div",{className:"settings-value",style:{display:"block"},children:D("settings.push_unsupported")})]}),v.jsx("div",{className:"settings-group",children:D("settings.group_session")}),v.jsxs("div",{className:"settings-section",children:[v.jsx("div",{className:"settings-label",children:D("settings.screen_cols")}),v.jsxs("div",{className:"settings-btns cols-btns",children:[v.jsx("button",{className:"fontbtn col-step",onClick:()=>pe(-10),children:"−10"}),v.jsx("button",{className:"fontbtn col-step col-fine",onClick:()=>pe(-1),children:"−1"}),v.jsx("span",{className:"settings-value",children:Ae}),v.jsx("button",{className:"fontbtn col-step col-fine",onClick:()=>pe(1),children:"+1"}),v.jsx("button",{className:"fontbtn col-step",onClick:()=>pe(10),children:"+10"}),v.jsxs("button",{className:"fontbtn",onClick:He,children:["↺ ",D("settings.cols_restore")]})]})]}),v.jsxs("div",{className:"settings-section",children:[v.jsx("div",{className:"settings-label",children:D(c?"settings.preview_site":"settings.preview_static_site")}),o?v.jsxs("div",{className:"preview-active",children:[v.jsxs("div",{className:"preview-active-head",children:[v.jsxs("span",{className:"preview-running",children:[v.jsx("span",{className:"live-dot"}),o.kind==="dynamic"?D("settings.preview_running_dynamic"):D("settings.preview_running_static")]}),v.jsx("span",{className:"preview-remain-s",title:D("settings.preview_remain_title"),children:D("settings.preview_remain",{time:Vg(P)})})]}),v.jsxs("div",{className:"settings-btns",children:[v.jsx("button",{className:"fontbtn",onClick:()=>{g==null||g(),t==null||t()},children:D("common.open")}),v.jsx("button",{className:"fontbtn",onClick:()=>a==null?void 0:a(),children:D("settings.preview_renew")}),F?v.jsxs(v.Fragment,{children:[v.jsx("button",{className:"fontbtn preview-confirm-danger",onClick:()=>{G(!1),h==null||h()},children:D("settings.preview_confirm_stop")}),v.jsx("button",{className:"fontbtn",onClick:()=>G(!1),children:D("common.cancel")})]}):v.jsx("button",{className:"fontbtn",onClick:()=>G(!0),children:D("settings.preview_stop")})]}),v.jsxs("div",{className:"settings-hint",children:[D("settings.preview_name",{name:o.name}),o.kind==="dynamic"?D("settings.preview_port",{port:o.port}):o.dir?`(${o.dir})`:""]})]}):v.jsxs("div",{className:"preview-start",children:[v.jsxs("div",{className:"preview-seg",role:"tablist","aria-label":D("settings.preview_type"),children:[v.jsx("button",{role:"tab",className:H==="off"?"on":"","aria-selected":H==="off",onClick:()=>S("off"),children:D("settings.preview_off")}),v.jsx("button",{role:"tab",className:H==="static"?"on":"","aria-selected":H==="static",onClick:()=>S("static"),children:D("settings.preview_static")}),c&&v.jsx("button",{role:"tab",className:H==="dynamic"?"on":"","aria-selected":H==="dynamic",onClick:()=>{se(""),S("dynamic")},children:D("settings.preview_dynamic")})]}),H==="off"&&v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-hint",children:D(c?"settings.preview_off_hint_both":"settings.preview_off_hint")}),!c&&v.jsx("div",{className:"settings-hint preview-dynamic-disabled",children:D("settings.preview_dynamic_disabled")})]}),H==="static"&&v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-btns",children:v.jsx("button",{className:"fontbtn",onClick:ae,children:D("settings.preview_pick_dir")})}),v.jsx("div",{className:"settings-hint",children:D("settings.preview_static_hint")})]}),H==="dynamic"&&v.jsxs(v.Fragment,{children:[v.jsxs("div",{className:"settings-btns",children:[v.jsx("input",{className:"preview-port",type:"number",inputMode:"numeric",min:"1",max:"65535",placeholder:D("settings.preview_port_placeholder"),value:M,onChange:ce=>{B(ce.target.value),se("")},"aria-label":D("settings.preview_port_label")}),v.jsx("button",{className:"fontbtn",disabled:!M||te,onClick:K,children:D(te?"settings.preview_starting":"settings.preview_start")})]}),J?v.jsx("div",{className:"settings-hint settings-err",children:J}):v.jsx("div",{className:"settings-hint",children:D("settings.preview_dynamic_hint")})]})]})]})]}),v.jsx(Xn,{open:O,seedCwd:$,pane:f,hint:D("settings.dir_picker_hint"),onPick:ce=>{U(!1),y==null||y(ce),t==null||t()},onClose:()=>U(!1)})]})}function Ef(e){return e===300?D("usage.win5h"):e===10080?D("usage.winWeekly"):e===43200?D("usage.winMonthly"):e>0?D("usage.winGeneric",{h:Math.round(e/60)}):""}function ka(e,t){if(!e)return"";const i=e-Math.floor(t/1e3);if(i<=0)return D("usage.resetSoon");const s=Math.floor(i/86400),n=Math.floor(i%86400/3600),u=Math.floor(i%3600/60),p=s>0?`${s}d ${n}h`:n>0?`${n}h ${u}m`:`${u}m`;return D("usage.resetIn",{t:p})}function __({at:e,now:t}){if(!e)return null;const i=Math.max(0,Math.floor((t-e)/1e3)),s=i<60?D("usage.updatedNow"):i<3600?D("usage.updatedMin",{n:Math.floor(i/60)}):i<86400?D("usage.updatedHr",{n:Math.floor(i/3600)}):D("usage.updatedDay",{n:Math.floor(i/86400)});return v.jsx("div",{className:"usage-updated",children:s})}function xr(e,t,i){if(!e||!t)return null;const s=e-Math.floor(i/1e3);return Math.max(0,Math.min(100,(1-s/(t*60))*100))}function qS({pct:e,timePct:t}){const i=Math.max(0,Math.min(100,e??0)),s=i>=80?"hi":i>=50?"mid":"lo";return v.jsxs("div",{className:"usage-bar",children:[v.jsx("div",{className:`usage-bar-fill lvl-${s}`,style:{width:`${i}%`}}),t!=null&&v.jsx("div",{className:"usage-bar-time",style:{left:`${t}%`},title:D("usage.timeMark")})]})}function Cr({label:e,pct:t,reset:i,sub:s,timePct:n}){return v.jsxs("div",{className:"usage-row",children:[v.jsxs("div",{className:"usage-row-head",children:[v.jsxs("span",{className:"usage-row-label",children:[e,s&&v.jsxs("span",{className:"usage-row-sub",children:[" · ",s]})]}),v.jsxs("span",{className:"usage-row-pct",children:[Math.round(t),"%"]})]}),v.jsx(qS,{pct:t,timePct:n}),i&&v.jsx("div",{className:"usage-row-reset",children:i})]})}function YS({claude:e,now:t}){var i,s;return v.jsxs("section",{className:"usage-agent",children:[v.jsxs("div",{className:"usage-agent-head",children:[v.jsx(Yn,{agent:"claude"}),v.jsx("span",{children:"Claude Code"}),v.jsx(__,{at:e==null?void 0:e.updatedAt,now:t})]}),e?!((i=e.rateLimits)!=null&&i.fiveHour)&&!((s=e.rateLimits)!=null&&s.sevenDay)?v.jsx("div",{className:"usage-empty",children:D("usage.claudePending")}):v.jsxs(v.Fragment,{children:[e.rateLimits.fiveHour&&v.jsx(Cr,{label:D("usage.win5h"),pct:e.rateLimits.fiveHour.usedPercent,reset:ka(e.rateLimits.fiveHour.resetsAt,t),timePct:xr(e.rateLimits.fiveHour.resetsAt,300,t)}),e.rateLimits.sevenDay&&v.jsx(Cr,{label:D("usage.winWeekly"),pct:e.rateLimits.sevenDay.usedPercent,reset:ka(e.rateLimits.sevenDay.resetsAt,t),timePct:xr(e.rateLimits.sevenDay.resetsAt,10080,t)}),e.rateLimits.sevenDayOpus&&v.jsx(Cr,{label:D("usage.winWeekly"),sub:"Opus",pct:e.rateLimits.sevenDayOpus.usedPercent,timePct:xr(e.rateLimits.sevenDayOpus.resetsAt,10080,t)}),e.rateLimits.sevenDaySonnet&&v.jsx(Cr,{label:D("usage.winWeekly"),sub:"Sonnet",pct:e.rateLimits.sevenDaySonnet.usedPercent,timePct:xr(e.rateLimits.sevenDaySonnet.resetsAt,10080,t)})]}):v.jsxs("div",{className:"usage-empty",children:[v.jsx("div",{children:D("usage.claudeOff")}),v.jsx("code",{className:"usage-code",children:"handmux hooks install"})]})]})}function XS({codex:e,now:t}){const i=e==null?void 0:e.rateLimits;return v.jsxs("section",{className:"usage-agent",children:[v.jsxs("div",{className:"usage-agent-head",children:[v.jsx(Yn,{agent:"codex"}),v.jsx("span",{children:"Codex CLI"}),v.jsx(__,{at:e==null?void 0:e.updatedAt,now:t})]}),e?v.jsxs(v.Fragment,{children:[(i==null?void 0:i.primary)&&v.jsx(Cr,{label:Ef(i.primary.windowMinutes)||D("usage.winPrimary"),pct:i.primary.usedPercent,reset:ka(i.primary.resetsAt,t),timePct:xr(i.primary.resetsAt,i.primary.windowMinutes,t)}),(i==null?void 0:i.secondary)&&v.jsx(Cr,{label:Ef(i.secondary.windowMinutes)||D("usage.winSecondary"),pct:i.secondary.usedPercent,reset:ka(i.secondary.resetsAt,t),timePct:xr(i.secondary.resetsAt,i.secondary.windowMinutes,t)}),!(i!=null&&i.primary)&&!(i!=null&&i.secondary)&&v.jsx("div",{className:"usage-empty",children:D("usage.codexNoQuota")})]}):v.jsx("div",{className:"usage-empty",children:D("usage.codexOff")})]})}function JS({open:e,onClose:t,onAuthFail:i}){const[s,n]=N.useState(null),[u,p]=N.useState(""),[r,o]=N.useState(!1),f=Date.now();return N.useEffect(()=>{if(!e)return;let _=!1;return o(!0),p(""),sy().then(c=>{_||(n(c),o(!1))}).catch(c=>{_||(c instanceof it?i==null||i():p(D("usage.loadFailed")),o(!1))}),()=>{_=!0}},[e]),e?v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-backdrop",onClick:t}),v.jsxs("div",{className:"settings-card usage-card",role:"dialog","aria-label":D("usage.title"),"aria-modal":"true",children:[v.jsxs("div",{className:"settings-head",children:[v.jsx("span",{className:"settings-title",children:D("usage.title")}),v.jsx("span",{className:"usage-head-note",children:D("usage.activityNote")}),v.jsx("button",{className:"settings-close",onClick:t,"aria-label":D("common.close"),children:"✕"})]}),v.jsx("div",{className:"settings-section",children:r&&!s?v.jsx("div",{className:"usage-empty",children:D("common.loading")}):u?v.jsx("div",{className:"bind-error",children:u}):s?v.jsxs(v.Fragment,{children:[s.codex&&v.jsx(XS,{codex:s.codex,now:f}),v.jsx(YS,{claude:s.claude,now:f})]}):null})]})]}):null}function ZS({rows:e,top:t,open:i,onToggle:s,onClose:n,onSelectRow:u,onMarkAllRead:p,hooksStatus:r,onEnableHooks:o}){const f=[];for(const d of e){const w=f[f.length-1];w&&w.session===d.session?w.items.push(d):f.push({session:d.session,items:[d]})}const _=Date.now(),c=e.some(d=>d.view==="done"),m=e1(e),[y,b]=N.useState(!1),[g,a]=N.useState(!1),h=f.length===0&&r==="absent",l=async()=>{b(!0),a(!1);try{const d=await(o==null?void 0:o());(!d||d.status!=="installed")&&a(!0)}catch{a(!0)}finally{b(!1)}};return v.jsxs(v.Fragment,{children:[v.jsxs("button",{className:"topbar-icon inbox-btn",onClick:s,"aria-label":D("inbox.title"),title:D("inbox.title"),children:[v.jsx(Hy,{}),t&&v.jsx("span",{className:`inbox-dot ${t}`,"aria-hidden":"true"})]}),i&&v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"inbox-backdrop",onClick:n}),v.jsxs("div",{className:"inbox-panel",role:"dialog","aria-label":D("inbox.title"),children:[v.jsxs("div",{className:"inbox-head",children:[v.jsx("span",{children:D("inbox.title")}),v.jsxs("div",{className:"inbox-summary",children:[v.jsxs("span",{className:"inbox-chip working",children:[D("inbox.working")," ",m.working]}),v.jsxs("span",{className:"inbox-chip done",children:[D("inbox.done")," ",m.done]}),v.jsxs("span",{className:"inbox-chip needs",children:[D("inbox.needs")," ",m.needs]})]}),c&&v.jsx("button",{className:"inbox-readall",onClick:p,children:D("inbox.clearDone")})]}),f.length===0?h?v.jsxs("div",{className:"inbox-empty inbox-enable",children:[v.jsx("div",{className:"inbox-enable-title",children:D("inbox.enableTitle")}),v.jsx("div",{className:"inbox-enable-hint",children:D("inbox.enableHint")}),v.jsx("button",{className:"inbox-enable-btn",onClick:l,disabled:y,children:D(y?"inbox.enabling":"inbox.enableBtn")}),g&&v.jsx("div",{className:"inbox-enable-err",children:D("inbox.enableFailed")})]}):v.jsx("div",{className:"inbox-empty",children:D("inbox.empty")}):f.map(d=>v.jsxs("div",{className:"inbox-group",children:[v.jsx("div",{className:"inbox-group-title",children:d.session}),d.items.map(w=>v.jsxs("button",{className:"inbox-row",onClick:()=>u(w),children:[v.jsxs("div",{className:"inbox-row-head",children:[v.jsx("span",{className:`inbox-chip ${w.view}`,children:Zy[w.view]}),v.jsx(Yn,{agent:w.agent}),v.jsx("span",{className:"inbox-loc",children:w.windowName||w.window}),v.jsx("span",{className:"inbox-time",children:Gg(w.ts,_)})]}),w.msg&&v.jsx("div",{className:"inbox-msg",children:w.msg})]},w.pane))]},d.session))]})]})]})}function QS({open:e,orphan:t,onConfirm:i,onClose:s,inset:n=0}){const[u,p]=N.useState([]),[r,o]=N.useState("new"),[f,_]=N.useState(!0),[c,m]=N.useState(!1),[y,b]=N.useState("");if(N.useEffect(()=>{e&&(o("new"),_(Ow()),m(!1),b(""),br().then(a=>p(Array.isArray(a)?a:[])).catch(()=>p([])))},[e]),!e||!t)return null;const g=async()=>{if(c)return;m(!0),b(""),Bw(f);const a=r==="new"?{mode:"new"}:{mode:"window",session:r};try{await i({target:a,kill:f})}catch{m(!1),b(D("inbox.orphans.failed"))}};return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-backdrop",onClick:s}),v.jsxs("div",{className:"settings-card",style:{transform:`translate(-50%, calc(-50% + ${n/2}px))`},role:"dialog","aria-label":D("inbox.orphans.takeover"),"aria-modal":"true",children:[v.jsxs("div",{className:"settings-head",children:[v.jsx("span",{className:"settings-title",children:D("inbox.orphans.takeover")}),v.jsx("button",{className:"settings-close",onClick:s,"aria-label":D("common.close"),children:"✕"})]}),v.jsxs("div",{className:"settings-section",children:[v.jsxs("div",{className:"opt",children:[v.jsx("div",{className:"settings-label",children:t.cwdLabel||t.cwd}),t.snippet&&v.jsx("div",{className:"inbox-msg",children:t.snippet})]}),v.jsxs("div",{className:"opt",children:[v.jsx("div",{className:"settings-label",children:D("inbox.orphans.targetLabel")}),v.jsxs("div",{className:"orphan-targets",children:[v.jsx("button",{className:"fontbtn","aria-pressed":r==="new",onClick:()=>o("new"),children:D("inbox.orphans.targetNew")}),u.map(a=>v.jsx("button",{className:"fontbtn","aria-pressed":r===a.id,onClick:()=>o(a.id),children:a.name},a.id))]})]}),v.jsxs("div",{className:"opt",children:[v.jsx("div",{className:"settings-label",children:D("inbox.orphans.killTitle")}),v.jsxs("div",{className:"orphan-targets orphan-kill",children:[v.jsxs("button",{className:"fontbtn","aria-pressed":f,onClick:()=>_(!0),children:[D("inbox.orphans.killEnd"),v.jsx("span",{className:"orphan-reco",children:D("inbox.orphans.recommended")})]}),v.jsx("button",{className:"fontbtn","aria-pressed":!f,onClick:()=>_(!1),children:D("inbox.orphans.killKeep")})]}),v.jsx("div",{className:"orphan-help",children:D("inbox.orphans.killWhy")}),v.jsx("div",{className:"orphan-help",children:D("inbox.orphans.reopen")})]}),y&&v.jsx("div",{className:"bind-error",children:y}),v.jsxs("div",{className:"settings-btns bind-actions",children:[v.jsx("button",{className:"fontbtn",onClick:s,children:D("common.cancel")}),v.jsx("button",{className:"fontbtn bind-confirm",onClick:g,disabled:c,children:D(c?"inbox.orphans.working":"inbox.orphans.takeover")})]})]})]})]})}const Wc="tw_claude_hooks";function eb(){try{return localStorage.getItem(Wc)||null}catch{return null}}function tb(){const[e,t]=N.useState(eb);N.useEffect(()=>{let s=!0;return Promise.resolve().then(Og).then(n=>{if(!s)return;const u=(n==null?void 0:n.claudeHooks)||"installed";t(u);try{localStorage.setItem(Wc,u)}catch{}}).catch(()=>{}),()=>{s=!1}},[]);const i=N.useCallback(async()=>{const s=await yy();if(s!=null&&s.status){t(s.status);try{localStorage.setItem(Wc,s.status)}catch{}}return s},[]);return{status:e,enable:i}}function ib({value:e,options:t,onChange:i,ariaLabel:s}){const[n,u]=N.useState(!1),p=N.useRef(null),r=t.find(o=>o.value===e)||t[0];return N.useEffect(()=>{if(!n)return;const o=f=>{var _;(_=p.current)!=null&&_.contains(f.target)||u(!1)};return document.addEventListener("pointerdown",o,!0),()=>document.removeEventListener("pointerdown",o,!0)},[n]),v.jsxs("div",{className:"dd",ref:p,children:[v.jsxs("button",{type:"button",className:"field dd-trigger","aria-haspopup":"listbox","aria-expanded":n,"aria-label":s,onClick:()=>u(o=>!o),children:[v.jsx("span",{className:"dd-value",children:r==null?void 0:r.label}),v.jsx("span",{className:`dd-caret${n?" open":""}`,"aria-hidden":"true",children:"▾"})]}),n&&v.jsx("div",{className:"dd-menu",role:"listbox",children:t.map(o=>v.jsxs("button",{type:"button",role:"option","aria-selected":o.value===e,className:`dd-option${o.value===e?" is-selected":""}`,onClick:()=>{i==null||i(o.value),u(!1)},children:[v.jsx("span",{className:"dd-option-label",children:o.label}),o.value===e&&v.jsx("span",{className:"dd-check","aria-hidden":"true",children:"✓"})]},o.value||"__none__"))})]})}const v_=[{value:"",label:D("startup.preset_shell")},{value:"claude",label:D("startup.preset_claude")},{value:"claude --continue",label:D("startup.preset_claude_continue")},{value:"codex",label:D("startup.preset_codex")}],Vo="__custom__",sb=[...v_,{value:Vo,label:D("startup.custom")}];function w_({value:e="",onChange:t}){const i=v_.some(f=>f.value===e),[s,n]=N.useState(i?e:Vo),[u,p]=N.useState(i?"":e),r=f=>{n(f),t==null||t(f===Vo?u:f)},o=f=>{const _=f.target.value;p(_),t==null||t(_)};return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-label",children:D("startup.label")}),v.jsx(ib,{value:s,options:sb,onChange:r,ariaLabel:D("startup.aria")}),s===Vo&&v.jsx("input",{className:"bind-input startup-custom",value:u,placeholder:D("startup.custom_placeholder"),onChange:o,autoCapitalize:"off",autoCorrect:"off",spellCheck:!1})]})}const rb=/^[A-Za-z0-9-]{1,16}$/;function nb({open:e,onClose:t,onBound:i,bound:s,onAuthFail:n,inset:u=0}){const[p,r]=N.useState([]),[o,f]=N.useState(null),[_,c]=N.useState(""),[m,y]=N.useState(""),[b,g]=N.useState(!1),[a,h]=N.useState(null),[l,d]=N.useState(kg()),[w,k]=N.useState(!1),C=N.useRef(null);if(N.useEffect(()=>{e&&(f(null),c(""),y(""),g(!1),h(null),k(!1),br().then(R=>r(Array.isArray(R)?R:[])).catch(R=>{R instanceof it?n==null||n():y(D("bind.checkFailed"))}))},[e]),N.useEffect(()=>{o==="new"&&setTimeout(()=>{var R;return(R=C.current)==null?void 0:R.focus()},0)},[o]),!e)return null;const L=p.filter(R=>!s.includes(R.name)),x=async()=>{if(b||!o)return;if(o!=="new"){i(o);return}const R=_.trim();if(R){if(s.includes(R)||p.some(I=>I.name===R)){y(D("bind.alreadyExists"));return}if(!rb.test(R)){y(D("bind.invalidName"));return}g(!0),y(""),Eg(l);try{await uy(R,a||void 0,l||void 0),i(R)}catch(I){I instanceof it?n==null||n():y(D("bind.createFailed")),g(!1)}}},E=D(o==="new"?b?"bind.creating":"bind.createAndOpen":b?"bind.checking":"bind.bind");return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-backdrop",onClick:t}),v.jsxs("div",{className:"settings-card",style:{transform:`translate(-50%, calc(-50% + ${u/2}px))`},role:"dialog","aria-label":D("bind.title"),"aria-modal":"true",children:[v.jsxs("div",{className:"settings-head",children:[v.jsx("span",{className:"settings-title",children:D("bind.title")}),v.jsx("button",{className:"settings-close",onClick:t,"aria-label":D("common.close"),children:"✕"})]}),v.jsxs("div",{className:"settings-section",children:[v.jsxs("div",{className:"opt",children:[v.jsx("div",{className:"settings-label",children:D("bind.pickSession")}),v.jsxs("div",{className:"orphan-targets",children:[v.jsx("button",{className:"fontbtn","aria-pressed":o==="new",onClick:()=>{f("new"),y("")},children:D("bind.newSession")}),L.map(R=>v.jsx("button",{className:"fontbtn","aria-pressed":o===R.name,onClick:()=>{f(R.name),y("")},children:R.name},R.id||R.name))]})]}),o==="new"&&v.jsxs(v.Fragment,{children:[v.jsxs("div",{className:"opt",children:[v.jsx("div",{className:"settings-label",children:D("bind.sessionName")}),v.jsx("input",{ref:C,className:"bind-input",value:_,placeholder:D("bind.namePlaceholder"),onChange:R=>{c(R.target.value),y("")},onKeyDown:R=>{R.key==="Enter"&&x()}})]}),v.jsxs("div",{className:"opt",children:[v.jsx("div",{className:"settings-label",children:D("bind.startDir")}),v.jsxs("button",{type:"button",className:"field cwd-field",onClick:()=>k(!0),children:[v.jsx("span",{className:"cwd-path",children:a||D("bind.homeDirDefault")}),v.jsx("span",{className:"cwd-action",children:D("bind.choose")})]}),a&&v.jsx("button",{type:"button",className:"cwd-reset",onClick:()=>h(null),children:D("bind.reset")})]}),v.jsx("div",{className:"opt",children:v.jsx(w_,{value:l,onChange:d})})]}),m&&v.jsx("div",{className:"bind-error",children:m}),v.jsxs("div",{className:"settings-btns bind-actions",children:[v.jsx("button",{className:"fontbtn",onClick:t,children:D("common.cancel")}),v.jsx("button",{className:"fontbtn bind-confirm",onClick:x,disabled:b||!o,children:E})]})]})]}),v.jsx(Xn,{open:w,seedCwd:a,allowMkdir:!0,onPick:R=>{h(R),k(!1)},onClose:()=>k(!1),inset:u})]})}const ob=/^[A-Za-z0-9-]{1,16}$/;function ab({open:e,onClose:t,onCreate:i,paneId:s,inset:n=0}){const[u,p]=N.useState(""),[r,o]=N.useState(""),[f,_]=N.useState(!1),[c,m]=N.useState(null),[y,b]=N.useState(""),[g,a]=N.useState(kg()),[h,l]=N.useState(!1),d=N.useRef(null);if(N.useEffect(()=>{e&&(p(""),o(""),_(!1),m(null),b(""),l(!1),setTimeout(()=>{var k;return(k=d.current)==null?void 0:k.focus()},0),s&&Js(s).then(({cwd:k})=>b(k||"")).catch(()=>{}))},[e,s]),!e)return null;const w=async()=>{if(f)return;const k=u.trim();if(k&&!ob.test(k)){o(D("newwindow.name_rule"));return}_(!0),o(""),Eg(g);try{await i(k,c||void 0,g||void 0)}catch{_(!1)}};return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-backdrop",onClick:t}),v.jsxs("div",{className:"settings-card",style:{transform:`translate(-50%, calc(-50% + ${n/2}px))`},role:"dialog","aria-label":D("newwindow.title"),"aria-modal":"true",children:[v.jsxs("div",{className:"settings-head",children:[v.jsx("span",{className:"settings-title",children:D("newwindow.title")}),v.jsx("button",{className:"settings-close",onClick:t,"aria-label":D("common.close"),children:"✕"})]}),v.jsxs("div",{className:"settings-section",children:[v.jsxs("div",{className:"opt",children:[v.jsx("div",{className:"settings-label",children:D("newwindow.window_name")}),v.jsx("input",{ref:d,className:"bind-input",value:u,placeholder:D("newwindow.name_placeholder"),onChange:k=>{p(k.target.value),o("")},onKeyDown:k=>{k.key==="Enter"&&w()}}),r&&v.jsx("div",{className:"bind-error",children:r})]}),v.jsxs("div",{className:"opt",children:[v.jsx("div",{className:"settings-label",children:D("newwindow.start_dir")}),v.jsxs("button",{type:"button",className:"field cwd-field",onClick:()=>l(!0),children:[v.jsx("span",{className:"cwd-path",children:c||(y?D("newwindow.session_dir_named",{dir:y}):D("newwindow.session_dir_default"))}),v.jsx("span",{className:"cwd-action",children:D("newwindow.choose")})]}),c&&v.jsx("button",{type:"button",className:"cwd-reset",onClick:()=>m(null),children:D("newwindow.reset_to_session_dir")})]}),v.jsx("div",{className:"opt",children:v.jsx(w_,{value:g,onChange:a})}),v.jsxs("div",{className:"settings-btns bind-actions",children:[v.jsx("button",{className:"fontbtn",onClick:t,children:D("common.cancel")}),v.jsx("button",{className:"fontbtn bind-confirm",onClick:w,disabled:f,children:D(f?"newwindow.creating":"common.create")})]})]})]}),v.jsx(Xn,{open:h,seedCwd:c||y||null,pane:s,allowMkdir:!0,onPick:k=>{m(k),l(!1)},onClose:()=>l(!1),inset:n})]})}const lb=/^[A-Za-z0-9-]{1,16}$/;function cb({open:e,title:t,currentName:i="",onClose:s,onSubmit:n,inset:u=0}){const[p,r]=N.useState(i),[o,f]=N.useState(""),[_,c]=N.useState(!1),m=N.useRef(null);if(N.useEffect(()=>{e&&(r(i),f(""),c(!1),setTimeout(()=>{var b;return(b=m.current)==null?void 0:b.focus()},0))},[e,i]),!e)return null;const y=async()=>{if(_)return;const b=p.trim();if(!lb.test(b)){f(D("rename.name_rule"));return}c(!0),f("");try{await n(b)}catch(g){f((g==null?void 0:g.message)||D("rename.failed")),c(!1)}};return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"settings-backdrop",onClick:s}),v.jsxs("div",{className:"settings-card",style:{transform:`translate(-50%, calc(-50% + ${u/2}px))`},role:"dialog","aria-label":t,"aria-modal":"true",children:[v.jsxs("div",{className:"settings-head",children:[v.jsx("span",{className:"settings-title",children:t}),v.jsx("button",{className:"settings-close",onClick:s,"aria-label":D("common.close"),children:"✕"})]}),v.jsxs("div",{className:"settings-section",children:[v.jsx("div",{className:"settings-label",children:D("rename.new_name")}),v.jsx("input",{ref:m,className:"bind-input",value:p,placeholder:D("rename.name_placeholder"),onChange:b=>{r(b.target.value),f("")},onKeyDown:b=>{b.key==="Enter"&&y()}}),o&&v.jsx("div",{className:"bind-error",children:o}),v.jsxs("div",{className:"settings-btns bind-actions",children:[v.jsx("button",{className:"fontbtn",onClick:s,children:D("common.cancel")}),v.jsx("button",{className:"fontbtn bind-confirm",onClick:y,disabled:_,children:D(_?"rename.saving":"common.save")})]})]})]})]})}function ub({onOpenDoc:e}){const[t,i]=N.useState(()=>ya()),s=n=>{$w(n),i(ya())};return t.length===0?v.jsx("div",{className:"home-view",children:v.jsxs("div",{className:"home-empty",children:[D("home.empty"),v.jsx("span",{children:D("home.emptyHint")})]})}):v.jsx("div",{className:"home-view",children:t.map(n=>v.jsxs("div",{className:"home-recent-row",children:[v.jsxs("button",{className:"home-recent",onClick:()=>e(n.path),title:n.path,children:[v.jsx("span",{className:"home-name",children:n.name}),v.jsx("span",{className:"home-path",children:n.path})]}),v.jsx("button",{className:"home-x","aria-label":D("home.remove"),onClick:()=>s(n.path),children:"✕"})]},n.path))})}function ih(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let sr=ih();function y_(e){sr=e}const S_=/[&<>"']/,hb=new RegExp(S_.source,"g"),b_=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,db=new RegExp(b_.source,"g"),fb={"&":"&","<":"<",">":">",'"':""","'":"'"},Lf=e=>fb[e];function gi(e,t){if(t){if(S_.test(e))return e.replace(hb,Lf)}else if(b_.test(e))return e.replace(db,Lf);return e}const pb=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function mb(e){return e.replace(pb,(t,i)=>(i=i.toLowerCase(),i==="colon"?":":i.charAt(0)==="#"?i.charAt(1)==="x"?String.fromCharCode(parseInt(i.substring(2),16)):String.fromCharCode(+i.substring(1)):""))}const gb=/(^|[^\[])\^/g;function tt(e,t){let i=typeof e=="string"?e:e.source;t=t||"";const s={replace:(n,u)=>{let p=typeof u=="string"?u:u.source;return p=p.replace(gb,"$1"),i=i.replace(n,p),s},getRegex:()=>new RegExp(i,t)};return s}function Rf(e){try{e=encodeURI(e).replace(/%25/g,"%")}catch{return null}return e}const yn={exec:()=>null};function Tf(e,t){const i=e.replace(/\|/g,(u,p,r)=>{let o=!1,f=p;for(;--f>=0&&r[f]==="\\";)o=!o;return o?"|":" |"}),s=i.split(/ \|/);let n=0;if(s[0].trim()||s.shift(),s.length>0&&!s[s.length-1].trim()&&s.pop(),t)if(s.length>t)s.splice(t);else for(;s.length<t;)s.push("");for(;n<s.length;n++)s[n]=s[n].trim().replace(/\\\|/g,"|");return s}function Lo(e,t,i){const s=e.length;if(s===0)return"";let n=0;for(;n<s&&e.charAt(s-n-1)===t;)n++;return e.slice(0,s-n)}function _b(e,t){if(e.indexOf(t[1])===-1)return-1;let i=0;for(let s=0;s<e.length;s++)if(e[s]==="\\")s++;else if(e[s]===t[0])i++;else if(e[s]===t[1]&&(i--,i<0))return s;return-1}function Df(e,t,i,s){const n=t.href,u=t.title?gi(t.title):null,p=e[1].replace(/\\([\[\]])/g,"$1");if(e[0].charAt(0)!=="!"){s.state.inLink=!0;const r={type:"link",raw:i,href:n,title:u,text:p,tokens:s.inlineTokens(p)};return s.state.inLink=!1,r}return{type:"image",raw:i,href:n,title:u,text:gi(p)}}function vb(e,t){const i=e.match(/^(\s+)(?:```)/);if(i===null)return t;const s=i[1];return t.split(`
|
|
112
|
+
`).map(n=>{const u=n.match(/^\s+/);if(u===null)return n;const[p]=u;return p.length>=s.length?n.slice(s.length):n}).join(`
|
|
113
|
+
`)}class Ea{constructor(t){ct(this,"options");ct(this,"rules");ct(this,"lexer");this.options=t||sr}space(t){const i=this.rules.block.newline.exec(t);if(i&&i[0].length>0)return{type:"space",raw:i[0]}}code(t){const i=this.rules.block.code.exec(t);if(i){const s=i[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:i[0],codeBlockStyle:"indented",text:this.options.pedantic?s:Lo(s,`
|
|
114
|
+
`)}}}fences(t){const i=this.rules.block.fences.exec(t);if(i){const s=i[0],n=vb(s,i[3]||"");return{type:"code",raw:s,lang:i[2]?i[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):i[2],text:n}}}heading(t){const i=this.rules.block.heading.exec(t);if(i){let s=i[2].trim();if(/#$/.test(s)){const n=Lo(s,"#");(this.options.pedantic||!n||/ $/.test(n))&&(s=n.trim())}return{type:"heading",raw:i[0],depth:i[1].length,text:s,tokens:this.lexer.inline(s)}}}hr(t){const i=this.rules.block.hr.exec(t);if(i)return{type:"hr",raw:i[0]}}blockquote(t){const i=this.rules.block.blockquote.exec(t);if(i){let s=i[0].replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,`
|
|
115
|
+
$1`);s=Lo(s.replace(/^ *>[ \t]?/gm,""),`
|
|
116
|
+
`);const n=this.lexer.state.top;this.lexer.state.top=!0;const u=this.lexer.blockTokens(s);return this.lexer.state.top=n,{type:"blockquote",raw:i[0],tokens:u,text:s}}}list(t){let i=this.rules.block.list.exec(t);if(i){let s=i[1].trim();const n=s.length>1,u={type:"list",raw:"",ordered:n,start:n?+s.slice(0,-1):"",loose:!1,items:[]};s=n?`\\d{1,9}\\${s.slice(-1)}`:`\\${s}`,this.options.pedantic&&(s=n?s:"[*+-]");const p=new RegExp(`^( {0,3}${s})((?:[ ][^\\n]*)?(?:\\n|$))`);let r="",o="",f=!1;for(;t;){let _=!1;if(!(i=p.exec(t))||this.rules.block.hr.test(t))break;r=i[0],t=t.substring(r.length);let c=i[2].split(`
|
|
117
|
+
`,1)[0].replace(/^\t+/,h=>" ".repeat(3*h.length)),m=t.split(`
|
|
118
|
+
`,1)[0],y=0;this.options.pedantic?(y=2,o=c.trimStart()):(y=i[2].search(/[^ ]/),y=y>4?1:y,o=c.slice(y),y+=i[1].length);let b=!1;if(!c&&/^ *$/.test(m)&&(r+=m+`
|
|
119
|
+
`,t=t.substring(m.length+1),_=!0),!_){const h=new RegExp(`^ {0,${Math.min(3,y-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),l=new RegExp(`^ {0,${Math.min(3,y-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),d=new RegExp(`^ {0,${Math.min(3,y-1)}}(?:\`\`\`|~~~)`),w=new RegExp(`^ {0,${Math.min(3,y-1)}}#`);for(;t;){const k=t.split(`
|
|
120
|
+
`,1)[0];if(m=k,this.options.pedantic&&(m=m.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),d.test(m)||w.test(m)||h.test(m)||l.test(t))break;if(m.search(/[^ ]/)>=y||!m.trim())o+=`
|
|
121
|
+
`+m.slice(y);else{if(b||c.search(/[^ ]/)>=4||d.test(c)||w.test(c)||l.test(c))break;o+=`
|
|
122
|
+
`+m}!b&&!m.trim()&&(b=!0),r+=k+`
|
|
123
|
+
`,t=t.substring(k.length+1),c=m.slice(y)}}u.loose||(f?u.loose=!0:/\n *\n *$/.test(r)&&(f=!0));let g=null,a;this.options.gfm&&(g=/^\[[ xX]\] /.exec(o),g&&(a=g[0]!=="[ ] ",o=o.replace(/^\[[ xX]\] +/,""))),u.items.push({type:"list_item",raw:r,task:!!g,checked:a,loose:!1,text:o,tokens:[]}),u.raw+=r}u.items[u.items.length-1].raw=r.trimEnd(),u.items[u.items.length-1].text=o.trimEnd(),u.raw=u.raw.trimEnd();for(let _=0;_<u.items.length;_++)if(this.lexer.state.top=!1,u.items[_].tokens=this.lexer.blockTokens(u.items[_].text,[]),!u.loose){const c=u.items[_].tokens.filter(y=>y.type==="space"),m=c.length>0&&c.some(y=>/\n.*\n/.test(y.raw));u.loose=m}if(u.loose)for(let _=0;_<u.items.length;_++)u.items[_].loose=!0;return u}}html(t){const i=this.rules.block.html.exec(t);if(i)return{type:"html",block:!0,raw:i[0],pre:i[1]==="pre"||i[1]==="script"||i[1]==="style",text:i[0]}}def(t){const i=this.rules.block.def.exec(t);if(i){const s=i[1].toLowerCase().replace(/\s+/g," "),n=i[2]?i[2].replace(/^<(.*)>$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",u=i[3]?i[3].substring(1,i[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):i[3];return{type:"def",tag:s,raw:i[0],href:n,title:u}}}table(t){const i=this.rules.block.table.exec(t);if(!i||!/[:|]/.test(i[2]))return;const s=Tf(i[1]),n=i[2].replace(/^\||\| *$/g,"").split("|"),u=i[3]&&i[3].trim()?i[3].replace(/\n[ \t]*$/,"").split(`
|
|
124
|
+
`):[],p={type:"table",raw:i[0],header:[],align:[],rows:[]};if(s.length===n.length){for(const r of n)/^ *-+: *$/.test(r)?p.align.push("right"):/^ *:-+: *$/.test(r)?p.align.push("center"):/^ *:-+ *$/.test(r)?p.align.push("left"):p.align.push(null);for(const r of s)p.header.push({text:r,tokens:this.lexer.inline(r)});for(const r of u)p.rows.push(Tf(r,p.header.length).map(o=>({text:o,tokens:this.lexer.inline(o)})));return p}}lheading(t){const i=this.rules.block.lheading.exec(t);if(i)return{type:"heading",raw:i[0],depth:i[2].charAt(0)==="="?1:2,text:i[1],tokens:this.lexer.inline(i[1])}}paragraph(t){const i=this.rules.block.paragraph.exec(t);if(i){const s=i[1].charAt(i[1].length-1)===`
|
|
125
|
+
`?i[1].slice(0,-1):i[1];return{type:"paragraph",raw:i[0],text:s,tokens:this.lexer.inline(s)}}}text(t){const i=this.rules.block.text.exec(t);if(i)return{type:"text",raw:i[0],text:i[0],tokens:this.lexer.inline(i[0])}}escape(t){const i=this.rules.inline.escape.exec(t);if(i)return{type:"escape",raw:i[0],text:gi(i[1])}}tag(t){const i=this.rules.inline.tag.exec(t);if(i)return!this.lexer.state.inLink&&/^<a /i.test(i[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&/^<\/a>/i.test(i[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(i[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(i[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:i[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:i[0]}}link(t){const i=this.rules.inline.link.exec(t);if(i){const s=i[2].trim();if(!this.options.pedantic&&/^</.test(s)){if(!/>$/.test(s))return;const p=Lo(s.slice(0,-1),"\\");if((s.length-p.length)%2===0)return}else{const p=_b(i[2],"()");if(p>-1){const o=(i[0].indexOf("!")===0?5:4)+i[1].length+p;i[2]=i[2].substring(0,p),i[0]=i[0].substring(0,o).trim(),i[3]=""}}let n=i[2],u="";if(this.options.pedantic){const p=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(n);p&&(n=p[1],u=p[3])}else u=i[3]?i[3].slice(1,-1):"";return n=n.trim(),/^</.test(n)&&(this.options.pedantic&&!/>$/.test(s)?n=n.slice(1):n=n.slice(1,-1)),Df(i,{href:n&&n.replace(this.rules.inline.anyPunctuation,"$1"),title:u&&u.replace(this.rules.inline.anyPunctuation,"$1")},i[0],this.lexer)}}reflink(t,i){let s;if((s=this.rules.inline.reflink.exec(t))||(s=this.rules.inline.nolink.exec(t))){const n=(s[2]||s[1]).replace(/\s+/g," "),u=i[n.toLowerCase()];if(!u){const p=s[0].charAt(0);return{type:"text",raw:p,text:p}}return Df(s,u,s[0],this.lexer)}}emStrong(t,i,s=""){let n=this.rules.inline.emStrongLDelim.exec(t);if(!n||n[3]&&s.match(/[\p{L}\p{N}]/u))return;if(!(n[1]||n[2]||"")||!s||this.rules.inline.punctuation.exec(s)){const p=[...n[0]].length-1;let r,o,f=p,_=0;const c=n[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,i=i.slice(-1*t.length+p);(n=c.exec(i))!=null;){if(r=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!r)continue;if(o=[...r].length,n[3]||n[4]){f+=o;continue}else if((n[5]||n[6])&&p%3&&!((p+o)%3)){_+=o;continue}if(f-=o,f>0)continue;o=Math.min(o,o+f+_);const m=[...n[0]][0].length,y=t.slice(0,p+n.index+m+o);if(Math.min(p,o)%2){const g=y.slice(1,-1);return{type:"em",raw:y,text:g,tokens:this.lexer.inlineTokens(g)}}const b=y.slice(2,-2);return{type:"strong",raw:y,text:b,tokens:this.lexer.inlineTokens(b)}}}}codespan(t){const i=this.rules.inline.code.exec(t);if(i){let s=i[2].replace(/\n/g," ");const n=/[^ ]/.test(s),u=/^ /.test(s)&&/ $/.test(s);return n&&u&&(s=s.substring(1,s.length-1)),s=gi(s,!0),{type:"codespan",raw:i[0],text:s}}}br(t){const i=this.rules.inline.br.exec(t);if(i)return{type:"br",raw:i[0]}}del(t){const i=this.rules.inline.del.exec(t);if(i)return{type:"del",raw:i[0],text:i[2],tokens:this.lexer.inlineTokens(i[2])}}autolink(t){const i=this.rules.inline.autolink.exec(t);if(i){let s,n;return i[2]==="@"?(s=gi(i[1]),n="mailto:"+s):(s=gi(i[1]),n=s),{type:"link",raw:i[0],text:s,href:n,tokens:[{type:"text",raw:s,text:s}]}}}url(t){var s;let i;if(i=this.rules.inline.url.exec(t)){let n,u;if(i[2]==="@")n=gi(i[0]),u="mailto:"+n;else{let p;do p=i[0],i[0]=((s=this.rules.inline._backpedal.exec(i[0]))==null?void 0:s[0])??"";while(p!==i[0]);n=gi(i[0]),i[1]==="www."?u="http://"+i[0]:u=i[0]}return{type:"link",raw:i[0],text:n,href:u,tokens:[{type:"text",raw:n,text:n}]}}}inlineText(t){const i=this.rules.inline.text.exec(t);if(i){let s;return this.lexer.state.inRawBlock?s=i[0]:s=gi(i[0]),{type:"text",raw:i[0],text:s}}}}const wb=/^(?: *(?:\n|$))+/,yb=/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,Sb=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Jn=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,bb=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,x_=/(?:[*+-]|\d{1,9}[.)])/,C_=tt(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,x_).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),sh=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,xb=/^[^\n]+/,rh=/(?!\s*\])(?:\\.|[^\[\]\\])+/,Cb=tt(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",rh).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),kb=tt(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,x_).getRegex(),Xa="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",nh=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Eb=tt("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",nh).replace("tag",Xa).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),k_=tt(sh).replace("hr",Jn).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Xa).getRegex(),Lb=tt(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",k_).getRegex(),oh={blockquote:Lb,code:yb,def:Cb,fences:Sb,heading:bb,hr:Jn,html:Eb,lheading:C_,list:kb,newline:wb,paragraph:k_,table:yn,text:xb},Af=tt("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Jn).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Xa).getRegex(),Rb={...oh,table:Af,paragraph:tt(sh).replace("hr",Jn).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Af).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Xa).getRegex()},Tb={...oh,html:tt(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",nh).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:yn,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:tt(sh).replace("hr",Jn).replace("heading",` *#{1,6} *[^
|
|
126
|
+
]`).replace("lheading",C_).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},E_=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Db=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,L_=/^( {2,}|\\)\n(?!\s*$)/,Ab=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Zn="\\p{P}\\p{S}",Mb=tt(/^((?![*_])[\spunctuation])/,"u").replace(/punctuation/g,Zn).getRegex(),Nb=/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,Ib=tt(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Zn).getRegex(),Pb=tt("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Zn).getRegex(),Ob=tt("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Zn).getRegex(),Bb=tt(/\\([punct])/,"gu").replace(/punct/g,Zn).getRegex(),jb=tt(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Fb=tt(nh).replace("(?:-->|$)","-->").getRegex(),Hb=tt("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",Fb).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),La=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,$b=tt(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",La).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),R_=tt(/^!?\[(label)\]\[(ref)\]/).replace("label",La).replace("ref",rh).getRegex(),T_=tt(/^!?\[(ref)\](?:\[\])?/).replace("ref",rh).getRegex(),zb=tt("reflink|nolink(?!\\()","g").replace("reflink",R_).replace("nolink",T_).getRegex(),ah={_backpedal:yn,anyPunctuation:Bb,autolink:jb,blockSkip:Nb,br:L_,code:Db,del:yn,emStrongLDelim:Ib,emStrongRDelimAst:Pb,emStrongRDelimUnd:Ob,escape:E_,link:$b,nolink:T_,punctuation:Mb,reflink:R_,reflinkSearch:zb,tag:Hb,text:Ab,url:yn},Ub={...ah,link:tt(/^!?\[(label)\]\((.*?)\)/).replace("label",La).getRegex(),reflink:tt(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",La).getRegex()},Vc={...ah,escape:tt(E_).replace("])","~|])").getRegex(),url:tt(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},Wb={...Vc,br:tt(L_).replace("{2,}","*").getRegex(),text:tt(Vc.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Ro={normal:oh,gfm:Rb,pedantic:Tb},tn={normal:ah,gfm:Vc,breaks:Wb,pedantic:Ub};class Gi{constructor(t){ct(this,"tokens");ct(this,"options");ct(this,"state");ct(this,"tokenizer");ct(this,"inlineQueue");this.tokens=[],this.tokens.links=Object.create(null),this.options=t||sr,this.options.tokenizer=this.options.tokenizer||new Ea,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};const i={block:Ro.normal,inline:tn.normal};this.options.pedantic?(i.block=Ro.pedantic,i.inline=tn.pedantic):this.options.gfm&&(i.block=Ro.gfm,this.options.breaks?i.inline=tn.breaks:i.inline=tn.gfm),this.tokenizer.rules=i}static get rules(){return{block:Ro,inline:tn}}static lex(t,i){return new Gi(i).lex(t)}static lexInline(t,i){return new Gi(i).inlineTokens(t)}lex(t){t=t.replace(/\r\n|\r/g,`
|
|
127
|
+
`),this.blockTokens(t,this.tokens);for(let i=0;i<this.inlineQueue.length;i++){const s=this.inlineQueue[i];this.inlineTokens(s.src,s.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(t,i=[]){this.options.pedantic?t=t.replace(/\t/g," ").replace(/^ +$/gm,""):t=t.replace(/^( *)(\t+)/gm,(r,o,f)=>o+" ".repeat(f.length));let s,n,u,p;for(;t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(r=>(s=r.call({lexer:this},t,i))?(t=t.substring(s.raw.length),i.push(s),!0):!1))){if(s=this.tokenizer.space(t)){t=t.substring(s.raw.length),s.raw.length===1&&i.length>0?i[i.length-1].raw+=`
|
|
128
|
+
`:i.push(s);continue}if(s=this.tokenizer.code(t)){t=t.substring(s.raw.length),n=i[i.length-1],n&&(n.type==="paragraph"||n.type==="text")?(n.raw+=`
|
|
129
|
+
`+s.raw,n.text+=`
|
|
130
|
+
`+s.text,this.inlineQueue[this.inlineQueue.length-1].src=n.text):i.push(s);continue}if(s=this.tokenizer.fences(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.heading(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.hr(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.blockquote(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.list(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.html(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.def(t)){t=t.substring(s.raw.length),n=i[i.length-1],n&&(n.type==="paragraph"||n.type==="text")?(n.raw+=`
|
|
131
|
+
`+s.raw,n.text+=`
|
|
132
|
+
`+s.raw,this.inlineQueue[this.inlineQueue.length-1].src=n.text):this.tokens.links[s.tag]||(this.tokens.links[s.tag]={href:s.href,title:s.title});continue}if(s=this.tokenizer.table(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.lheading(t)){t=t.substring(s.raw.length),i.push(s);continue}if(u=t,this.options.extensions&&this.options.extensions.startBlock){let r=1/0;const o=t.slice(1);let f;this.options.extensions.startBlock.forEach(_=>{f=_.call({lexer:this},o),typeof f=="number"&&f>=0&&(r=Math.min(r,f))}),r<1/0&&r>=0&&(u=t.substring(0,r+1))}if(this.state.top&&(s=this.tokenizer.paragraph(u))){n=i[i.length-1],p&&n.type==="paragraph"?(n.raw+=`
|
|
133
|
+
`+s.raw,n.text+=`
|
|
134
|
+
`+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=n.text):i.push(s),p=u.length!==t.length,t=t.substring(s.raw.length);continue}if(s=this.tokenizer.text(t)){t=t.substring(s.raw.length),n=i[i.length-1],n&&n.type==="text"?(n.raw+=`
|
|
135
|
+
`+s.raw,n.text+=`
|
|
136
|
+
`+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=n.text):i.push(s);continue}if(t){const r="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(r);break}else throw new Error(r)}}return this.state.top=!0,i}inline(t,i=[]){return this.inlineQueue.push({src:t,tokens:i}),i}inlineTokens(t,i=[]){let s,n,u,p=t,r,o,f;if(this.tokens.links){const _=Object.keys(this.tokens.links);if(_.length>0)for(;(r=this.tokenizer.rules.inline.reflinkSearch.exec(p))!=null;)_.includes(r[0].slice(r[0].lastIndexOf("[")+1,-1))&&(p=p.slice(0,r.index)+"["+"a".repeat(r[0].length-2)+"]"+p.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(r=this.tokenizer.rules.inline.blockSkip.exec(p))!=null;)p=p.slice(0,r.index)+"["+"a".repeat(r[0].length-2)+"]"+p.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(r=this.tokenizer.rules.inline.anyPunctuation.exec(p))!=null;)p=p.slice(0,r.index)+"++"+p.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;t;)if(o||(f=""),o=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(_=>(s=_.call({lexer:this},t,i))?(t=t.substring(s.raw.length),i.push(s),!0):!1))){if(s=this.tokenizer.escape(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.tag(t)){t=t.substring(s.raw.length),n=i[i.length-1],n&&s.type==="text"&&n.type==="text"?(n.raw+=s.raw,n.text+=s.text):i.push(s);continue}if(s=this.tokenizer.link(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(s.raw.length),n=i[i.length-1],n&&s.type==="text"&&n.type==="text"?(n.raw+=s.raw,n.text+=s.text):i.push(s);continue}if(s=this.tokenizer.emStrong(t,p,f)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.codespan(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.br(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.del(t)){t=t.substring(s.raw.length),i.push(s);continue}if(s=this.tokenizer.autolink(t)){t=t.substring(s.raw.length),i.push(s);continue}if(!this.state.inLink&&(s=this.tokenizer.url(t))){t=t.substring(s.raw.length),i.push(s);continue}if(u=t,this.options.extensions&&this.options.extensions.startInline){let _=1/0;const c=t.slice(1);let m;this.options.extensions.startInline.forEach(y=>{m=y.call({lexer:this},c),typeof m=="number"&&m>=0&&(_=Math.min(_,m))}),_<1/0&&_>=0&&(u=t.substring(0,_+1))}if(s=this.tokenizer.inlineText(u)){t=t.substring(s.raw.length),s.raw.slice(-1)!=="_"&&(f=s.raw.slice(-1)),o=!0,n=i[i.length-1],n&&n.type==="text"?(n.raw+=s.raw,n.text+=s.text):i.push(s);continue}if(t){const _="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(_);break}else throw new Error(_)}}return i}}class Ra{constructor(t){ct(this,"options");this.options=t||sr}code(t,i,s){var u;const n=(u=(i||"").match(/^\S*/))==null?void 0:u[0];return t=t.replace(/\n$/,"")+`
|
|
137
|
+
`,n?'<pre><code class="language-'+gi(n)+'">'+(s?t:gi(t,!0))+`</code></pre>
|
|
138
|
+
`:"<pre><code>"+(s?t:gi(t,!0))+`</code></pre>
|
|
139
|
+
`}blockquote(t){return`<blockquote>
|
|
140
|
+
${t}</blockquote>
|
|
141
|
+
`}html(t,i){return t}heading(t,i,s){return`<h${i}>${t}</h${i}>
|
|
142
|
+
`}hr(){return`<hr>
|
|
143
|
+
`}list(t,i,s){const n=i?"ol":"ul",u=i&&s!==1?' start="'+s+'"':"";return"<"+n+u+`>
|
|
144
|
+
`+t+"</"+n+`>
|
|
145
|
+
`}listitem(t,i,s){return`<li>${t}</li>
|
|
146
|
+
`}checkbox(t){return"<input "+(t?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph(t){return`<p>${t}</p>
|
|
147
|
+
`}table(t,i){return i&&(i=`<tbody>${i}</tbody>`),`<table>
|
|
148
|
+
<thead>
|
|
149
|
+
`+t+`</thead>
|
|
150
|
+
`+i+`</table>
|
|
151
|
+
`}tablerow(t){return`<tr>
|
|
152
|
+
${t}</tr>
|
|
153
|
+
`}tablecell(t,i){const s=i.header?"th":"td";return(i.align?`<${s} align="${i.align}">`:`<${s}>`)+t+`</${s}>
|
|
154
|
+
`}strong(t){return`<strong>${t}</strong>`}em(t){return`<em>${t}</em>`}codespan(t){return`<code>${t}</code>`}br(){return"<br>"}del(t){return`<del>${t}</del>`}link(t,i,s){const n=Rf(t);if(n===null)return s;t=n;let u='<a href="'+t+'"';return i&&(u+=' title="'+i+'"'),u+=">"+s+"</a>",u}image(t,i,s){const n=Rf(t);if(n===null)return s;t=n;let u=`<img src="${t}" alt="${s}"`;return i&&(u+=` title="${i}"`),u+=">",u}text(t){return t}}class lh{strong(t){return t}em(t){return t}codespan(t){return t}del(t){return t}html(t){return t}text(t){return t}link(t,i,s){return""+s}image(t,i,s){return""+s}br(){return""}}class qi{constructor(t){ct(this,"options");ct(this,"renderer");ct(this,"textRenderer");this.options=t||sr,this.options.renderer=this.options.renderer||new Ra,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new lh}static parse(t,i){return new qi(i).parse(t)}static parseInline(t,i){return new qi(i).parseInline(t)}parse(t,i=!0){let s="";for(let n=0;n<t.length;n++){const u=t[n];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[u.type]){const p=u,r=this.options.extensions.renderers[p.type].call({parser:this},p);if(r!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(p.type)){s+=r||"";continue}}switch(u.type){case"space":continue;case"hr":{s+=this.renderer.hr();continue}case"heading":{const p=u;s+=this.renderer.heading(this.parseInline(p.tokens),p.depth,mb(this.parseInline(p.tokens,this.textRenderer)));continue}case"code":{const p=u;s+=this.renderer.code(p.text,p.lang,!!p.escaped);continue}case"table":{const p=u;let r="",o="";for(let _=0;_<p.header.length;_++)o+=this.renderer.tablecell(this.parseInline(p.header[_].tokens),{header:!0,align:p.align[_]});r+=this.renderer.tablerow(o);let f="";for(let _=0;_<p.rows.length;_++){const c=p.rows[_];o="";for(let m=0;m<c.length;m++)o+=this.renderer.tablecell(this.parseInline(c[m].tokens),{header:!1,align:p.align[m]});f+=this.renderer.tablerow(o)}s+=this.renderer.table(r,f);continue}case"blockquote":{const p=u,r=this.parse(p.tokens);s+=this.renderer.blockquote(r);continue}case"list":{const p=u,r=p.ordered,o=p.start,f=p.loose;let _="";for(let c=0;c<p.items.length;c++){const m=p.items[c],y=m.checked,b=m.task;let g="";if(m.task){const a=this.renderer.checkbox(!!y);f?m.tokens.length>0&&m.tokens[0].type==="paragraph"?(m.tokens[0].text=a+" "+m.tokens[0].text,m.tokens[0].tokens&&m.tokens[0].tokens.length>0&&m.tokens[0].tokens[0].type==="text"&&(m.tokens[0].tokens[0].text=a+" "+m.tokens[0].tokens[0].text)):m.tokens.unshift({type:"text",text:a+" "}):g+=a+" "}g+=this.parse(m.tokens,f),_+=this.renderer.listitem(g,b,!!y)}s+=this.renderer.list(_,r,o);continue}case"html":{const p=u;s+=this.renderer.html(p.text,p.block);continue}case"paragraph":{const p=u;s+=this.renderer.paragraph(this.parseInline(p.tokens));continue}case"text":{let p=u,r=p.tokens?this.parseInline(p.tokens):p.text;for(;n+1<t.length&&t[n+1].type==="text";)p=t[++n],r+=`
|
|
155
|
+
`+(p.tokens?this.parseInline(p.tokens):p.text);s+=i?this.renderer.paragraph(r):r;continue}default:{const p='Token with "'+u.type+'" type was not found.';if(this.options.silent)return console.error(p),"";throw new Error(p)}}}return s}parseInline(t,i){i=i||this.renderer;let s="";for(let n=0;n<t.length;n++){const u=t[n];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[u.type]){const p=this.options.extensions.renderers[u.type].call({parser:this},u);if(p!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(u.type)){s+=p||"";continue}}switch(u.type){case"escape":{const p=u;s+=i.text(p.text);break}case"html":{const p=u;s+=i.html(p.text);break}case"link":{const p=u;s+=i.link(p.href,p.title,this.parseInline(p.tokens,i));break}case"image":{const p=u;s+=i.image(p.href,p.title,p.text);break}case"strong":{const p=u;s+=i.strong(this.parseInline(p.tokens,i));break}case"em":{const p=u;s+=i.em(this.parseInline(p.tokens,i));break}case"codespan":{const p=u;s+=i.codespan(p.text);break}case"br":{s+=i.br();break}case"del":{const p=u;s+=i.del(this.parseInline(p.tokens,i));break}case"text":{const p=u;s+=i.text(p.text);break}default:{const p='Token with "'+u.type+'" type was not found.';if(this.options.silent)return console.error(p),"";throw new Error(p)}}}return s}}class Sn{constructor(t){ct(this,"options");this.options=t||sr}preprocess(t){return t}postprocess(t){return t}processAllTokens(t){return t}}ct(Sn,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens"]));var Qs,Kc,D_;class Vb{constructor(...t){Ih(this,Qs);ct(this,"defaults",ih());ct(this,"options",this.setOptions);ct(this,"parse",so(this,Qs,Kc).call(this,Gi.lex,qi.parse));ct(this,"parseInline",so(this,Qs,Kc).call(this,Gi.lexInline,qi.parseInline));ct(this,"Parser",qi);ct(this,"Renderer",Ra);ct(this,"TextRenderer",lh);ct(this,"Lexer",Gi);ct(this,"Tokenizer",Ea);ct(this,"Hooks",Sn);this.use(...t)}walkTokens(t,i){var n,u;let s=[];for(const p of t)switch(s=s.concat(i.call(this,p)),p.type){case"table":{const r=p;for(const o of r.header)s=s.concat(this.walkTokens(o.tokens,i));for(const o of r.rows)for(const f of o)s=s.concat(this.walkTokens(f.tokens,i));break}case"list":{const r=p;s=s.concat(this.walkTokens(r.items,i));break}default:{const r=p;(u=(n=this.defaults.extensions)==null?void 0:n.childTokens)!=null&&u[r.type]?this.defaults.extensions.childTokens[r.type].forEach(o=>{const f=r[o].flat(1/0);s=s.concat(this.walkTokens(f,i))}):r.tokens&&(s=s.concat(this.walkTokens(r.tokens,i)))}}return s}use(...t){const i=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(s=>{const n={...s};if(n.async=this.defaults.async||n.async||!1,s.extensions&&(s.extensions.forEach(u=>{if(!u.name)throw new Error("extension name required");if("renderer"in u){const p=i.renderers[u.name];p?i.renderers[u.name]=function(...r){let o=u.renderer.apply(this,r);return o===!1&&(o=p.apply(this,r)),o}:i.renderers[u.name]=u.renderer}if("tokenizer"in u){if(!u.level||u.level!=="block"&&u.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const p=i[u.level];p?p.unshift(u.tokenizer):i[u.level]=[u.tokenizer],u.start&&(u.level==="block"?i.startBlock?i.startBlock.push(u.start):i.startBlock=[u.start]:u.level==="inline"&&(i.startInline?i.startInline.push(u.start):i.startInline=[u.start]))}"childTokens"in u&&u.childTokens&&(i.childTokens[u.name]=u.childTokens)}),n.extensions=i),s.renderer){const u=this.defaults.renderer||new Ra(this.defaults);for(const p in s.renderer){if(!(p in u))throw new Error(`renderer '${p}' does not exist`);if(p==="options")continue;const r=p,o=s.renderer[r],f=u[r];u[r]=(..._)=>{let c=o.apply(u,_);return c===!1&&(c=f.apply(u,_)),c||""}}n.renderer=u}if(s.tokenizer){const u=this.defaults.tokenizer||new Ea(this.defaults);for(const p in s.tokenizer){if(!(p in u))throw new Error(`tokenizer '${p}' does not exist`);if(["options","rules","lexer"].includes(p))continue;const r=p,o=s.tokenizer[r],f=u[r];u[r]=(..._)=>{let c=o.apply(u,_);return c===!1&&(c=f.apply(u,_)),c}}n.tokenizer=u}if(s.hooks){const u=this.defaults.hooks||new Sn;for(const p in s.hooks){if(!(p in u))throw new Error(`hook '${p}' does not exist`);if(p==="options")continue;const r=p,o=s.hooks[r],f=u[r];Sn.passThroughHooks.has(p)?u[r]=_=>{if(this.defaults.async)return Promise.resolve(o.call(u,_)).then(m=>f.call(u,m));const c=o.call(u,_);return f.call(u,c)}:u[r]=(..._)=>{let c=o.apply(u,_);return c===!1&&(c=f.apply(u,_)),c}}n.hooks=u}if(s.walkTokens){const u=this.defaults.walkTokens,p=s.walkTokens;n.walkTokens=function(r){let o=[];return o.push(p.call(this,r)),u&&(o=o.concat(u.call(this,r))),o}}this.defaults={...this.defaults,...n}}),this}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,i){return Gi.lex(t,i??this.defaults)}parser(t,i){return qi.parse(t,i??this.defaults)}}Qs=new WeakSet,Kc=function(t,i){return(s,n)=>{const u={...n},p={...this.defaults,...u};this.defaults.async===!0&&u.async===!1&&(p.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),p.async=!0);const r=so(this,Qs,D_).call(this,!!p.silent,!!p.async);if(typeof s>"u"||s===null)return r(new Error("marked(): input parameter is undefined or null"));if(typeof s!="string")return r(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(s)+", string expected"));if(p.hooks&&(p.hooks.options=p),p.async)return Promise.resolve(p.hooks?p.hooks.preprocess(s):s).then(o=>t(o,p)).then(o=>p.hooks?p.hooks.processAllTokens(o):o).then(o=>p.walkTokens?Promise.all(this.walkTokens(o,p.walkTokens)).then(()=>o):o).then(o=>i(o,p)).then(o=>p.hooks?p.hooks.postprocess(o):o).catch(r);try{p.hooks&&(s=p.hooks.preprocess(s));let o=t(s,p);p.hooks&&(o=p.hooks.processAllTokens(o)),p.walkTokens&&this.walkTokens(o,p.walkTokens);let f=i(o,p);return p.hooks&&(f=p.hooks.postprocess(f)),f}catch(o){return r(o)}}},D_=function(t,i){return s=>{if(s.message+=`
|
|
156
|
+
Please report this to https://github.com/markedjs/marked.`,t){const n="<p>An error occurred:</p><pre>"+gi(s.message+"",!0)+"</pre>";return i?Promise.resolve(n):n}if(i)return Promise.reject(s);throw s}};const Zs=new Vb;function Qe(e,t){return Zs.parse(e,t)}Qe.options=Qe.setOptions=function(e){return Zs.setOptions(e),Qe.defaults=Zs.defaults,y_(Qe.defaults),Qe};Qe.getDefaults=ih;Qe.defaults=sr;Qe.use=function(...e){return Zs.use(...e),Qe.defaults=Zs.defaults,y_(Qe.defaults),Qe};Qe.walkTokens=function(e,t){return Zs.walkTokens(e,t)};Qe.parseInline=Zs.parseInline;Qe.Parser=qi;Qe.parser=qi.parse;Qe.Renderer=Ra;Qe.TextRenderer=lh;Qe.Lexer=Gi;Qe.lexer=Gi.lex;Qe.Tokenizer=Ea;Qe.Hooks=Sn;Qe.parse=Qe;Qe.options;Qe.setOptions;Qe.use;Qe.walkTokens;Qe.parseInline;qi.parse;Gi.lex;/*! @license DOMPurify 3.4.8 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.8/LICENSE */function Mf(e,t){(t==null||t>e.length)&&(t=e.length);for(var i=0,s=Array(t);i<t;i++)s[i]=e[i];return s}function Kb(e){if(Array.isArray(e))return e}function Gb(e,t){var i=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(i!=null){var s,n,u,p,r=[],o=!0,f=!1;try{if(u=(i=i.call(e)).next,t!==0)for(;!(o=(s=u.call(i)).done)&&(r.push(s.value),r.length!==t);o=!0);}catch(_){f=!0,n=_}finally{try{if(!o&&i.return!=null&&(p=i.return(),Object(p)!==p))return}finally{if(f)throw n}}return r}}function qb(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
157
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Yb(e,t){return Kb(e)||Gb(e,t)||Xb(e,t)||qb()}function Xb(e,t){if(e){if(typeof e=="string")return Mf(e,t);var i={}.toString.call(e).slice(8,-1);return i==="Object"&&e.constructor&&(i=e.constructor.name),i==="Map"||i==="Set"?Array.from(e):i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?Mf(e,t):void 0}}const A_=Object.entries,Nf=Object.setPrototypeOf,Jb=Object.isFrozen,Zb=Object.getPrototypeOf,Qb=Object.getOwnPropertyDescriptor;let ei=Object.freeze,Ti=Object.seal,cr=Object.create,M_=typeof Reflect<"u"&&Reflect,Gc=M_.apply,qc=M_.construct;ei||(ei=function(t){return t});Ti||(Ti=function(t){return t});Gc||(Gc=function(t,i){for(var s=arguments.length,n=new Array(s>2?s-2:0),u=2;u<s;u++)n[u-2]=arguments[u];return t.apply(i,n)});qc||(qc=function(t){for(var i=arguments.length,s=new Array(i>1?i-1:0),n=1;n<i;n++)s[n-1]=arguments[n];return new t(...s)});const Ps=Lt(Array.prototype.forEach),ex=Lt(Array.prototype.lastIndexOf),If=Lt(Array.prototype.pop),nr=Lt(Array.prototype.push),tx=Lt(Array.prototype.splice),Jt=Array.isArray,cn=Lt(String.prototype.toLowerCase),Ml=Lt(String.prototype.toString),Pf=Lt(String.prototype.match),or=Lt(String.prototype.replace),Of=Lt(String.prototype.indexOf),ix=Lt(String.prototype.trim),sx=Lt(Number.prototype.toString),rx=Lt(Boolean.prototype.toString),Bf=typeof BigInt>"u"?null:Lt(BigInt.prototype.toString),jf=typeof Symbol>"u"?null:Lt(Symbol.prototype.toString),wt=Lt(Object.prototype.hasOwnProperty),sn=Lt(Object.prototype.toString),Pt=Lt(RegExp.prototype.test),ar=nx(TypeError);function Lt(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var i=arguments.length,s=new Array(i>1?i-1:0),n=1;n<i;n++)s[n-1]=arguments[n];return Gc(e,t,s)}}function nx(e){return function(){for(var t=arguments.length,i=new Array(t),s=0;s<t;s++)i[s]=arguments[s];return qc(e,i)}}function Fe(e,t){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:cn;if(Nf&&Nf(e,null),!Jt(t))return e;let s=t.length;for(;s--;){let n=t[s];if(typeof n=="string"){const u=i(n);u!==n&&(Jb(t)||(t[s]=u),n=u)}e[n]=!0}return e}function ox(e){for(let t=0;t<e.length;t++)wt(e,t)||(e[t]=null);return e}function Vt(e){const t=cr(null);for(const s of A_(e)){var i=Yb(s,2);const n=i[0],u=i[1];wt(e,n)&&(Jt(u)?t[n]=ox(u):u&&typeof u=="object"&&u.constructor===Object?t[n]=Vt(u):t[n]=u)}return t}function ax(e){switch(typeof e){case"string":return e;case"number":return sx(e);case"boolean":return rx(e);case"bigint":return Bf?Bf(e):"0";case"symbol":return jf?jf(e):"Symbol()";case"undefined":return sn(e);case"function":case"object":{if(e===null)return sn(e);const t=e,i=Wi(t,"toString");if(typeof i=="function"){const s=i(t);return typeof s=="string"?s:sn(s)}return sn(e)}default:return sn(e)}}function Wi(e,t){for(;e!==null;){const s=Qb(e,t);if(s){if(s.get)return Lt(s.get);if(typeof s.value=="function")return Lt(s.value)}e=Zb(e)}function i(){return null}return i}function lx(e){try{return Pt(e,""),!0}catch{return!1}}const Ff=ei(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Nl=ei(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Il=ei(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),cx=ei(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Pl=ei(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),ux=ei(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Hf=ei(["#text"]),$f=ei(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),Ol=ei(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),zf=ei(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),To=ei(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),hx=Ti(/{{[\w\W]*|^[\w\W]*}}/g),dx=Ti(/<%[\w\W]*|^[\w\W]*%>/g),fx=Ti(/\${[\w\W]*/g),px=Ti(/^data-[\-\w.\u00B7-\uFFFF]+$/),mx=Ti(/^aria-[\-\w]+$/),Uf=Ti(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),gx=Ti(/^(?:\w+script|data):/i),_x=Ti(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),vx=Ti(/^html$/i),wx=Ti(/^[a-z][.\w]*(-[.\w]+)+$/i),Ui={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},yx=function(){return typeof window>"u"?null:window},Sx=function(t,i){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let s=null;const n="data-tt-policy-suffix";i&&i.hasAttribute(n)&&(s=i.getAttribute(n));const u="dompurify"+(s?"#"+s:"");try{return t.createPolicy(u,{createHTML(p){return p},createScriptURL(p){return p}})}catch{return console.warn("TrustedTypes policy "+u+" could not be created."),null}},Wf=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function N_(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:yx();const t=Q=>N_(Q);if(t.version="3.4.8",t.removed=[],!e||!e.document||e.document.nodeType!==Ui.document||!e.Element)return t.isSupported=!1,t;let i=e.document;const s=i,n=s.currentScript;e.DocumentFragment;const u=e.HTMLTemplateElement,p=e.Node,r=e.Element,o=e.NodeFilter,f=e.NamedNodeMap;f===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;const _=e.DOMParser,c=e.trustedTypes,m=r.prototype,y=Wi(m,"cloneNode"),b=Wi(m,"remove"),g=Wi(m,"nextSibling"),a=Wi(m,"childNodes"),h=Wi(m,"parentNode"),l=Wi(m,"shadowRoot"),d=Wi(m,"attributes"),w=p&&p.prototype?Wi(p.prototype,"nodeType"):null,k=p&&p.prototype?Wi(p.prototype,"nodeName"):null;if(typeof u=="function"){const Q=i.createElement("template");Q.content&&Q.content.ownerDocument&&(i=Q.content.ownerDocument)}let C,L="",x=0;const E=function(j){if(x>0)throw ar('The configured TRUSTED_TYPES_POLICY.createHTML must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose createHTML wraps DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.');x++;try{return C.createHTML(j)}finally{x--}},R=i,I=R.implementation,T=R.createNodeIterator,A=R.createDocumentFragment,O=R.getElementsByTagName,U=s.importNode;let $=Wf();t.isSupported=typeof A_=="function"&&typeof h=="function"&&I&&I.createHTMLDocument!==void 0;const V=hx,H=dx,S=fx,M=px,B=mx,F=gx,G=_x,J=wx;let se=Uf,te=null;const z=Fe({},[...Ff,...Nl,...Il,...Pl,...Hf]);let P=null;const Z=Fe({},[...$f,...Ol,...zf,...To]);let K=Object.seal(cr(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ae=null,re=null;const Se=Object.seal(cr(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let we=!0,De=!0,Ae=!1,pe=!0,He=!1,Ve=!0,ce=!1,fe=!1,Ce=!1,de=!1,q=!1,ge=!1,be=!0,Oe=!1;const ie="user-content-";let he=!0,ye=!1,Re={},Ee=null;const qe=Fe({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let ot=null;const at=Fe({},["audio","video","img","source","image","track"]);let Ft=null;const St=Fe({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),si="http://www.w3.org/1998/Math/MathML",Je="http://www.w3.org/2000/svg",Ye="http://www.w3.org/1999/xhtml";let Ie=Ye,lt=!1,Ze=null;const Pe=Fe({},[si,Je,Ye],Ml);let ui=Fe({},["mi","mo","mn","ms","mtext"]),bi=Fe({},["annotation-xml"]);const Nt=Fe({},["title","style","font","a","script"]);let Ht=null;const Hi=["application/xhtml+xml","text/html"],Ji="text/html";let Xe=null,xt=null;const dt=i.createElement("form"),hi=function(j){return j instanceof RegExp||j instanceof Function},di=function(){let j=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(xt&&xt===j)return;(!j||typeof j!="object")&&(j={}),j=Vt(j),Ht=Hi.indexOf(j.PARSER_MEDIA_TYPE)===-1?Ji:j.PARSER_MEDIA_TYPE,Xe=Ht==="application/xhtml+xml"?Ml:cn,te=wt(j,"ALLOWED_TAGS")&&Jt(j.ALLOWED_TAGS)?Fe({},j.ALLOWED_TAGS,Xe):z,P=wt(j,"ALLOWED_ATTR")&&Jt(j.ALLOWED_ATTR)?Fe({},j.ALLOWED_ATTR,Xe):Z,Ze=wt(j,"ALLOWED_NAMESPACES")&&Jt(j.ALLOWED_NAMESPACES)?Fe({},j.ALLOWED_NAMESPACES,Ml):Pe,Ft=wt(j,"ADD_URI_SAFE_ATTR")&&Jt(j.ADD_URI_SAFE_ATTR)?Fe(Vt(St),j.ADD_URI_SAFE_ATTR,Xe):St,ot=wt(j,"ADD_DATA_URI_TAGS")&&Jt(j.ADD_DATA_URI_TAGS)?Fe(Vt(at),j.ADD_DATA_URI_TAGS,Xe):at,Ee=wt(j,"FORBID_CONTENTS")&&Jt(j.FORBID_CONTENTS)?Fe({},j.FORBID_CONTENTS,Xe):qe,ae=wt(j,"FORBID_TAGS")&&Jt(j.FORBID_TAGS)?Fe({},j.FORBID_TAGS,Xe):Vt({}),re=wt(j,"FORBID_ATTR")&&Jt(j.FORBID_ATTR)?Fe({},j.FORBID_ATTR,Xe):Vt({}),Re=wt(j,"USE_PROFILES")?j.USE_PROFILES&&typeof j.USE_PROFILES=="object"?Vt(j.USE_PROFILES):j.USE_PROFILES:!1,we=j.ALLOW_ARIA_ATTR!==!1,De=j.ALLOW_DATA_ATTR!==!1,Ae=j.ALLOW_UNKNOWN_PROTOCOLS||!1,pe=j.ALLOW_SELF_CLOSE_IN_ATTR!==!1,He=j.SAFE_FOR_TEMPLATES||!1,Ve=j.SAFE_FOR_XML!==!1,ce=j.WHOLE_DOCUMENT||!1,de=j.RETURN_DOM||!1,q=j.RETURN_DOM_FRAGMENT||!1,ge=j.RETURN_TRUSTED_TYPE||!1,Ce=j.FORCE_BODY||!1,be=j.SANITIZE_DOM!==!1,Oe=j.SANITIZE_NAMED_PROPS||!1,he=j.KEEP_CONTENT!==!1,ye=j.IN_PLACE||!1,se=lx(j.ALLOWED_URI_REGEXP)?j.ALLOWED_URI_REGEXP:Uf,Ie=typeof j.NAMESPACE=="string"?j.NAMESPACE:Ye,ui=wt(j,"MATHML_TEXT_INTEGRATION_POINTS")&&j.MATHML_TEXT_INTEGRATION_POINTS&&typeof j.MATHML_TEXT_INTEGRATION_POINTS=="object"?Vt(j.MATHML_TEXT_INTEGRATION_POINTS):Fe({},["mi","mo","mn","ms","mtext"]),bi=wt(j,"HTML_INTEGRATION_POINTS")&&j.HTML_INTEGRATION_POINTS&&typeof j.HTML_INTEGRATION_POINTS=="object"?Vt(j.HTML_INTEGRATION_POINTS):Fe({},["annotation-xml"]);const Y=wt(j,"CUSTOM_ELEMENT_HANDLING")&&j.CUSTOM_ELEMENT_HANDLING&&typeof j.CUSTOM_ELEMENT_HANDLING=="object"?Vt(j.CUSTOM_ELEMENT_HANDLING):cr(null);if(K=cr(null),wt(Y,"tagNameCheck")&&hi(Y.tagNameCheck)&&(K.tagNameCheck=Y.tagNameCheck),wt(Y,"attributeNameCheck")&&hi(Y.attributeNameCheck)&&(K.attributeNameCheck=Y.attributeNameCheck),wt(Y,"allowCustomizedBuiltInElements")&&typeof Y.allowCustomizedBuiltInElements=="boolean"&&(K.allowCustomizedBuiltInElements=Y.allowCustomizedBuiltInElements),He&&(De=!1),q&&(de=!0),Re&&(te=Fe({},Hf),P=cr(null),Re.html===!0&&(Fe(te,Ff),Fe(P,$f)),Re.svg===!0&&(Fe(te,Nl),Fe(P,Ol),Fe(P,To)),Re.svgFilters===!0&&(Fe(te,Il),Fe(P,Ol),Fe(P,To)),Re.mathMl===!0&&(Fe(te,Pl),Fe(P,zf),Fe(P,To))),Se.tagCheck=null,Se.attributeCheck=null,wt(j,"ADD_TAGS")&&(typeof j.ADD_TAGS=="function"?Se.tagCheck=j.ADD_TAGS:Jt(j.ADD_TAGS)&&(te===z&&(te=Vt(te)),Fe(te,j.ADD_TAGS,Xe))),wt(j,"ADD_ATTR")&&(typeof j.ADD_ATTR=="function"?Se.attributeCheck=j.ADD_ATTR:Jt(j.ADD_ATTR)&&(P===Z&&(P=Vt(P)),Fe(P,j.ADD_ATTR,Xe))),wt(j,"ADD_URI_SAFE_ATTR")&&Jt(j.ADD_URI_SAFE_ATTR)&&Fe(Ft,j.ADD_URI_SAFE_ATTR,Xe),wt(j,"FORBID_CONTENTS")&&Jt(j.FORBID_CONTENTS)&&(Ee===qe&&(Ee=Vt(Ee)),Fe(Ee,j.FORBID_CONTENTS,Xe)),wt(j,"ADD_FORBID_CONTENTS")&&Jt(j.ADD_FORBID_CONTENTS)&&(Ee===qe&&(Ee=Vt(Ee)),Fe(Ee,j.ADD_FORBID_CONTENTS,Xe)),he&&(te["#text"]=!0),ce&&Fe(te,["html","head","body"]),te.table&&(Fe(te,["tbody"]),delete ae.tbody),j.TRUSTED_TYPES_POLICY){if(typeof j.TRUSTED_TYPES_POLICY.createHTML!="function")throw ar('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof j.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw ar('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const le=C;C=j.TRUSTED_TYPES_POLICY;try{L=E("")}catch(Me){throw C=le,Me}}else C===void 0&&j.TRUSTED_TYPES_POLICY!==null&&(C=Sx(c,n)),C&&typeof L=="string"&&(L=E(""));($.uponSanitizeElement.length>0||$.uponSanitizeAttribute.length>0)&&te===z&&(te=Vt(te)),$.uponSanitizeAttribute.length>0&&P===Z&&(P=Vt(P)),ei&&ei(j),xt=j},Yt=Fe({},[...Nl,...Il,...cx]),Di=Fe({},[...Pl,...ux]),Ct=function(j){let Y=h(j);(!Y||!Y.tagName)&&(Y={namespaceURI:Ie,tagName:"template"});const le=cn(j.tagName),Me=cn(Y.tagName);return Ze[j.namespaceURI]?j.namespaceURI===Je?Y.namespaceURI===Ye?le==="svg":Y.namespaceURI===si?le==="svg"&&(Me==="annotation-xml"||ui[Me]):!!Yt[le]:j.namespaceURI===si?Y.namespaceURI===Ye?le==="math":Y.namespaceURI===Je?le==="math"&&bi[Me]:!!Di[le]:j.namespaceURI===Ye?Y.namespaceURI===Je&&!bi[Me]||Y.namespaceURI===si&&!ui[Me]?!1:!Di[le]&&(Nt[le]||!Yt[le]):!!(Ht==="application/xhtml+xml"&&Ze[j.namespaceURI]):!1},pt=function(j){nr(t.removed,{element:j});try{h(j).removeChild(j)}catch{b(j)}},$t=function(j,Y){try{nr(t.removed,{attribute:Y.getAttributeNode(j),from:Y})}catch{nr(t.removed,{attribute:null,from:Y})}if(Y.removeAttribute(j),j==="is")if(de||q)try{pt(Y)}catch{}else try{Y.setAttribute(j,"")}catch{}},Zi=function(j){let Y=null,le=null;if(Ce)j="<remove></remove>"+j;else{const Ue=Pf(j,/^[\r\n\t ]+/);le=Ue&&Ue[0]}Ht==="application/xhtml+xml"&&Ie===Ye&&(j='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+j+"</body></html>");const Me=C?E(j):j;if(Ie===Ye)try{Y=new _().parseFromString(Me,Ht)}catch{}if(!Y||!Y.documentElement){Y=I.createDocument(Ie,"template",null);try{Y.documentElement.innerHTML=lt?L:Me}catch{}}const Le=Y.body||Y.documentElement;return j&&le&&Le.insertBefore(i.createTextNode(le),Le.childNodes[0]||null),Ie===Ye?O.call(Y,ce?"html":"body")[0]:ce?Y.documentElement:Le},hs=function(j){return T.call(j.ownerDocument||j,j,o.SHOW_ELEMENT|o.SHOW_COMMENT|o.SHOW_TEXT|o.SHOW_PROCESSING_INSTRUCTION|o.SHOW_CDATA_SECTION,null)},Ai=function(j){var Y,le;j.normalize();const Me=T.call(j.ownerDocument||j,j,o.SHOW_TEXT|o.SHOW_COMMENT|o.SHOW_CDATA_SECTION|o.SHOW_PROCESSING_INSTRUCTION,null);let Le=Me.nextNode();for(;Le;){let rt=Le.data;Ps([V,H,S],Xt=>{rt=or(rt,Xt," ")}),Le.data=rt,Le=Me.nextNode()}const Ue=(Y=(le=j.querySelectorAll)===null||le===void 0?void 0:le.call(j,"template"))!==null&&Y!==void 0?Y:[];Ps(Array.from(Ue),rt=>{Dt(rt.content)&&Ai(rt.content)})},$i=function(j){const Y=k?k(j):null;return typeof Y!="string"||Xe(Y)!=="form"?!1:typeof j.nodeName!="string"||typeof j.textContent!="string"||typeof j.removeChild!="function"||j.attributes!==d(j)||typeof j.removeAttribute!="function"||typeof j.setAttribute!="function"||typeof j.namespaceURI!="string"||typeof j.insertBefore!="function"||typeof j.hasChildNodes!="function"||j.nodeType!==w(j)||j.childNodes!==a(j)},Dt=function(j){if(!w||typeof j!="object"||j===null)return!1;try{return w(j)===Ui.documentFragment}catch{return!1}},W=function(j){if(!w||typeof j!="object"||j===null)return!1;try{return typeof w(j)=="number"}catch{return!1}};function ne(Q,j,Y){Ps(Q,le=>{le.call(t,j,Y,xt)})}const Ne=function(j){let Y=null;if(ne($.beforeSanitizeElements,j,null),$i(j))return pt(j),!0;const le=Xe(k?k(j):j.nodeName);if(ne($.uponSanitizeElement,j,{tagName:le,allowedTags:te}),Ve&&j.hasChildNodes()&&!W(j.firstElementChild)&&Pt(/<[/\w!]/g,j.innerHTML)&&Pt(/<[/\w!]/g,j.textContent)||Ve&&j.namespaceURI===Ye&&le==="style"&&W(j.firstElementChild)||j.nodeType===Ui.progressingInstruction||Ve&&j.nodeType===Ui.comment&&Pt(/<[/\w]/g,j.data))return pt(j),!0;if(ae[le]||!(Se.tagCheck instanceof Function&&Se.tagCheck(le))&&!te[le]){if(!ae[le]&&It(le)&&(K.tagNameCheck instanceof RegExp&&Pt(K.tagNameCheck,le)||K.tagNameCheck instanceof Function&&K.tagNameCheck(le)))return!1;if(he&&!Ee[le]){const Le=h(j),Ue=a(j);if(Ue&&Le){const rt=Ue.length;for(let Xt=rt-1;Xt>=0;--Xt){const fi=y(Ue[Xt],!0);Le.insertBefore(fi,g(j))}}}return pt(j),!0}return(w?w(j):j.nodeType)===Ui.element&&!Ct(j)||(le==="noscript"||le==="noembed"||le==="noframes")&&Pt(/<\/no(script|embed|frames)/i,j.innerHTML)?(pt(j),!0):(He&&j.nodeType===Ui.text&&(Y=j.textContent,Ps([V,H,S],Le=>{Y=or(Y,Le," ")}),j.textContent!==Y&&(nr(t.removed,{element:j.cloneNode()}),j.textContent=Y)),ne($.afterSanitizeElements,j,null),!1)},Ke=function(j,Y,le){if(re[Y]||be&&(Y==="id"||Y==="name")&&(le in i||le in dt))return!1;const Me=P[Y]||Se.attributeCheck instanceof Function&&Se.attributeCheck(Y,j);if(!(De&&!re[Y]&&Pt(M,Y))){if(!(we&&Pt(B,Y))){if(!Me||re[Y]){if(!(It(j)&&(K.tagNameCheck instanceof RegExp&&Pt(K.tagNameCheck,j)||K.tagNameCheck instanceof Function&&K.tagNameCheck(j))&&(K.attributeNameCheck instanceof RegExp&&Pt(K.attributeNameCheck,Y)||K.attributeNameCheck instanceof Function&&K.attributeNameCheck(Y,j))||Y==="is"&&K.allowCustomizedBuiltInElements&&(K.tagNameCheck instanceof RegExp&&Pt(K.tagNameCheck,le)||K.tagNameCheck instanceof Function&&K.tagNameCheck(le))))return!1}else if(!Ft[Y]){if(!Pt(se,or(le,G,""))){if(!((Y==="src"||Y==="xlink:href"||Y==="href")&&j!=="script"&&Of(le,"data:")===0&&ot[j])){if(!(Ae&&!Pt(F,or(le,G,"")))){if(le)return!1}}}}}}return!0},vt=Fe({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),It=function(j){return!vt[cn(j)]&&Pt(J,j)},oe=function(j){ne($.beforeSanitizeAttributes,j,null);const Y=j.attributes;if(!Y||$i(j))return;const le={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:P,forceKeepAttr:void 0};let Me=Y.length;for(;Me--;){const Le=Y[Me],Ue=Le.name,rt=Le.namespaceURI,Xt=Le.value,fi=Xe(Ue),zr=Xt;let kt=Ue==="value"?zr:ix(zr);if(le.attrName=fi,le.attrValue=kt,le.keepAttr=!0,le.forceKeepAttr=void 0,ne($.uponSanitizeAttribute,j,le),kt=le.attrValue,Oe&&(fi==="id"||fi==="name")&&Of(kt,ie)!==0&&($t(Ue,j),kt=ie+kt),Ve&&Pt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,kt)){$t(Ue,j);continue}if(fi==="attributename"&&Pf(kt,"href")){$t(Ue,j);continue}if(le.forceKeepAttr)continue;if(!le.keepAttr){$t(Ue,j);continue}if(!pe&&Pt(/\/>/i,kt)){$t(Ue,j);continue}He&&Ps([V,H,S],Qn=>{kt=or(kt,Qn," ")});const Ur=Xe(j.nodeName);if(!Ke(Ur,fi,kt)){$t(Ue,j);continue}if(C&&typeof c=="object"&&typeof c.getAttributeType=="function"&&!rt)switch(c.getAttributeType(Ur,fi)){case"TrustedHTML":{kt=E(kt);break}case"TrustedScriptURL":{kt=C.createScriptURL(kt);break}}if(kt!==zr)try{rt?j.setAttributeNS(rt,Ue,kt):j.setAttribute(Ue,kt),$i(j)?pt(j):If(t.removed)}catch{$t(Ue,j)}}ne($.afterSanitizeAttributes,j,null)},ve=function(j){let Y=null;const le=hs(j);for(ne($.beforeSanitizeShadowDOM,j,null);Y=le.nextNode();)if(ne($.uponSanitizeShadowNode,Y,null),Ne(Y),oe(Y),Dt(Y.content)&&ve(Y.content),(w?w(Y):Y.nodeType)===Ui.element){const Le=l?l(Y):Y.shadowRoot;Dt(Le)&&(xe(Le),ve(Le))}ne($.afterSanitizeShadowDOM,j,null)},xe=function(j){const Y=w?w(j):j.nodeType;if(Y===Ui.element){const Le=l?l(j):j.shadowRoot;Dt(Le)&&(xe(Le),ve(Le))}const le=a?a(j):j.childNodes;if(!le)return;const Me=[];Ps(le,Le=>{nr(Me,Le)});for(const Le of Me)xe(Le);if(Y===Ui.element){const Le=k?k(j):null;if(typeof Le=="string"&&Xe(Le)==="template"){const Ue=j.content;Dt(Ue)&&xe(Ue)}}};return t.sanitize=function(Q){let j=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Y=null,le=null,Me=null,Le=null;if(lt=!Q,lt&&(Q="<!-->"),typeof Q!="string"&&!W(Q)&&(Q=ax(Q),typeof Q!="string"))throw ar("dirty is not a string, aborting");if(!t.isSupported)return Q;if(fe||di(j),t.removed=[],typeof Q=="string"&&(ye=!1),ye){const Xt=k?k(Q):Q.nodeName;if(typeof Xt=="string"){const fi=Xe(Xt);if(!te[fi]||ae[fi])throw ar("root node is forbidden and cannot be sanitized in-place")}if($i(Q))throw ar("root node is clobbered and cannot be sanitized in-place");xe(Q)}else if(W(Q))Y=Zi("<!---->"),le=Y.ownerDocument.importNode(Q,!0),le.nodeType===Ui.element&&le.nodeName==="BODY"||le.nodeName==="HTML"?Y=le:Y.appendChild(le),xe(le);else{if(!de&&!He&&!ce&&Q.indexOf("<")===-1)return C&&ge?E(Q):Q;if(Y=Zi(Q),!Y)return de?null:ge?L:""}Y&&Ce&&pt(Y.firstChild);const Ue=hs(ye?Q:Y);for(;Me=Ue.nextNode();)Ne(Me),oe(Me),Dt(Me.content)&&ve(Me.content);if(ye)return He&&Ai(Q),Q;if(de){if(He&&Ai(Y),q)for(Le=A.call(Y.ownerDocument);Y.firstChild;)Le.appendChild(Y.firstChild);else Le=Y;return(P.shadowroot||P.shadowrootmode)&&(Le=U.call(s,Le,!0)),Le}let rt=ce?Y.outerHTML:Y.innerHTML;return ce&&te["!doctype"]&&Y.ownerDocument&&Y.ownerDocument.doctype&&Y.ownerDocument.doctype.name&&Pt(vx,Y.ownerDocument.doctype.name)&&(rt="<!DOCTYPE "+Y.ownerDocument.doctype.name+`>
|
|
158
|
+
`+rt),He&&Ps([V,H,S],Xt=>{rt=or(rt,Xt," ")}),C&&ge?E(rt):rt},t.setConfig=function(){let Q=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};di(Q),fe=!0},t.clearConfig=function(){xt=null,fe=!1},t.isValidAttribute=function(Q,j,Y){xt||di({});const le=Xe(Q),Me=Xe(j);return Ke(le,Me,Y)},t.addHook=function(Q,j){typeof j=="function"&&nr($[Q],j)},t.removeHook=function(Q,j){if(j!==void 0){const Y=ex($[Q],j);return Y===-1?void 0:tx($[Q],Y,1)[0]}return If($[Q])},t.removeHooks=function(Q){$[Q]=[]},t.removeAllHooks=function(){$=Wf()},t}var bx=N_();const xx=/[^\n]*?(?:[。!?…]+|[.!?]+(?=\s|$)|\n+|$)/gu,Cx=/[。!?…]$|[.!?]$/;function kx(e,t){for(let i=e.parentNode;i&&i!==t;i=i.parentNode){const s=i.nodeName;if(s==="PRE"||s==="SCRIPT"||s==="STYLE"||s==="CODE")return!0}return!1}function Ex(e){if(!e)return[];if(e.querySelector("span.tts-sent"))return Lx(e);const t=document.createTreeWalker(e,NodeFilter.SHOW_TEXT,{acceptNode:r=>r.nodeValue&&r.nodeValue.trim()&&!kx(r,e)?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT}),i=[];for(;t.nextNode();)i.push(t.currentNode);const s=[],n=[];let u=0;for(const r of i){const o=r.ownerDocument.createDocumentFragment();for(const f of r.nodeValue.matchAll(xx)){const _=f[0];if(_==="")continue;const c=r.ownerDocument.createElement("span");c.className="tts-sent",c.textContent=_,o.appendChild(c),(n[u]||(n[u]=[])).push(c),s[u]=(s[u]||"")+_,Cx.test(_)&&u++}r.parentNode.replaceChild(o,r)}const p=[];return s.forEach((r,o)=>{const f=(r||"").replace(/\s+/g," ").trim();if(!f)return;const _=p.length;p.push(f);for(const c of n[o]||[])c.dataset.tts=String(_)}),p}function Lx(e){const t=[];return e.querySelectorAll("span.tts-sent[data-tts]").forEach(i=>{const s=Number(i.dataset.tts);t[s]=(t[s]||"")+i.textContent}),t.map(i=>(i||"").replace(/\s+/g," ").trim())}const I_="tw_doc_rate",Ko=[1,1.25,1.5],Vf=()=>{const e=Number(localStorage.getItem(I_));return Ko.includes(e)?e:1};function Rx(){const e=typeof window<"u"&&window.speechSynthesis||null,[t,i]=N.useState({playing:!1,paused:!1,idx:-1}),[s,n]=N.useState(Vf),u=N.useRef({sentences:[],idx:-1,playing:!1,rate:Vf()});u.current.rate=s;const p=()=>((e==null?void 0:e.getVoices())||[]).find(y=>/^zh/i.test(y.lang))||null,r=y=>{const b=u.current;if(!e)return;if(y<0||y>=b.sentences.length){o();return}b.idx=y,i({playing:!0,paused:!1,idx:y});const g=new SpeechSynthesisUtterance(b.sentences[y]);g.rate=b.rate;const a=p();a?(g.voice=a,g.lang=a.lang):g.lang="zh-CN";const h=()=>{b.playing&&b.idx===y&&r(y+1)};g.onend=h,g.onerror=h,e.speak(g)},o=()=>{const y=u.current;y.playing=!1,y.idx=-1,e&&e.cancel(),i({playing:!1,paused:!1,idx:-1})},f=y=>{if(!e||!y||!y.length)return;e.cancel();const b=u.current;if(b.sentences=y,b.playing=!0,b.idx=-1,i({playing:!0,paused:!1,idx:-1}),e.getVoices().length){r(0);return}const g=()=>{e.removeEventListener("voiceschanged",g),b.playing&&b.idx===-1&&r(0)};e.addEventListener("voiceschanged",g),setTimeout(g,300)},_=()=>{e&&u.current.playing&&(e.pause(),i(y=>({...y,paused:!0})))},c=()=>{e&&u.current.playing&&(e.resume(),i(y=>({...y,paused:!1})))},m=()=>{const y=Ko[(Ko.indexOf(s)+1)%Ko.length]||1;localStorage.setItem(I_,String(y)),u.current.rate=y,n(y);const b=u.current;e&&b.playing&&b.idx>=0&&(e.cancel(),r(b.idx))};return N.useEffect(()=>()=>{u.current.playing=!1,e&&e.cancel()},[e]),{supported:!!e,playing:t.playing,paused:t.paused,idx:t.idx,rate:s,play:f,pause:_,resume:c,stop:o,cycleRate:m}}const Kf=6,Tx=500,Gf=10,Dx=300,qf=(e,t)=>Math.hypot(e.x-t.x,e.y-t.y);function Ax({url:e,name:t}){const[i,s]=N.useState({s:1,x:0,y:0}),[n,u]=N.useState(""),[p,r]=N.useState(!1),o=N.useRef(i);o.current=i;const f=N.useRef(null),_=N.useRef(null),c=N.useRef(null),m=N.useRef(new Map),y=N.useRef(null),b=N.useRef(null),g=N.useRef(null),a=N.useRef({moved:!1,lpFired:!1,pinched:!1}),h=N.useRef(0);if(!e)return v.jsx("div",{className:"doc-image-msg",children:D("imageviewer.loadFailed")});const l=(T,A,O)=>{const U=_.current,$=c.current;if(!U||!$)return{x:A,y:O};const V=Math.max(0,($.offsetWidth*T-U.clientWidth)/2),H=Math.max(0,($.offsetHeight*T-U.clientHeight)/2);return{x:Math.min(V,Math.max(-V,A)),y:Math.min(H,Math.max(-H,O))}},d=(T,A,O)=>{if(T=Math.min(Kf,Math.max(1,T)),T<=1){s({s:1,x:0,y:0});return}const U=l(T,A,O);s({s:T,x:U.x,y:U.y})},w=T=>d(o.current.s*T,o.current.x,o.current.y),k=()=>{g.current&&(clearTimeout(g.current),g.current=null)},C=T=>{u(T),f.current&&clearTimeout(f.current),f.current=setTimeout(()=>u(""),2500)},L=()=>{r(!1);const T=document.createElement("a");T.href=e,T.download=t||"image",document.body.appendChild(T),T.click(),T.remove(),C(D("imageviewer.saved"))},x=async()=>{var T;r(!1);try{const A=await(await fetch(e)).blob(),O=new File([A],t||"image",{type:Ga(t)||A.type||"application/octet-stream"});if((T=navigator.canShare)!=null&&T.call(navigator,{files:[O]})){await navigator.share({files:[O]});return}}catch{return}C(D("imageviewer.shareUnsupported"))},E=T=>{var O,U;(U=(O=T.currentTarget).setPointerCapture)==null||U.call(O,T.pointerId),m.current.set(T.pointerId,{x:T.clientX,y:T.clientY});const A=m.current.size;if(A===2){k(),a.current.pinched=!0;const[$,V]=[...m.current.values()];y.current={dist:qf($,V)||1,s:o.current.s}}else A===1&&(a.current.moved=!1,a.current.lpFired=!1,a.current.pinched=!1,b.current={x:T.clientX,y:T.clientY},k(),g.current=setTimeout(()=>{g.current=null,m.current.size===1&&!a.current.moved&&(a.current.lpFired=!0,r(!0))},Tx))},R=T=>{if(m.current.has(T.pointerId)){if(m.current.set(T.pointerId,{x:T.clientX,y:T.clientY}),m.current.size>=2&&y.current){const[A,O]=[...m.current.values()];d(y.current.s*(qf(A,O)/y.current.dist),o.current.x,o.current.y);return}if(b.current){const A=T.clientX-b.current.x,O=T.clientY-b.current.y;(Math.abs(A)>Gf||Math.abs(O)>Gf)&&(a.current.moved=!0,k()),o.current.s>1&&(b.current={x:T.clientX,y:T.clientY},d(o.current.s,o.current.x+A,o.current.y+O))}}},I=T=>{if(k(),m.current.delete(T.pointerId),m.current.size===1){y.current=null;const[A]=[...m.current.values()];b.current={x:A.x,y:A.y}}else if(m.current.size===0){if(!a.current.moved&&!a.current.lpFired&&!a.current.pinched){const O=T.timeStamp||0;O-h.current<Dx?(h.current=0,o.current.s>1?d(1,0,0):d(2,0,0)):h.current=O}y.current=null,b.current=null,a.current={moved:!1,lpFired:!1,pinched:!1}}};return v.jsxs("div",{ref:_,className:"doc-image-wrap",onPointerDown:E,onPointerMove:R,onPointerUp:I,onPointerCancel:I,onContextMenu:T=>T.preventDefault(),children:[v.jsx("img",{ref:c,className:"doc-image",src:e,alt:t,draggable:!1,style:{transform:`translate(${i.x}px, ${i.y}px) scale(${i.s})`}}),v.jsxs("div",{className:"doc-image-zoom",onPointerDown:T=>T.stopPropagation(),children:[v.jsx("button",{onClick:()=>w(1/1.5),disabled:i.s<=1,"aria-label":D("imageviewer.zoomOut"),children:"−"}),v.jsxs("span",{className:"doc-image-zoom-val","aria-hidden":"true",children:[Math.round(i.s*100),"%"]}),v.jsx("button",{onClick:()=>w(1.5),disabled:i.s>=Kf,"aria-label":D("imageviewer.zoomIn"),children:"+"})]}),n&&v.jsx("div",{className:"doc-image-note",role:"status",children:n}),v.jsx(th,{open:p,title:t||D("imageviewer.imageTitle"),actions:[{key:"save",label:D("imageviewer.saveImage"),onClick:L},{key:"share",label:D("imageviewer.shareImage"),onClick:x}],onClose:()=>r(!1)})]})}const Bl=cs.length-1;function Mx({type:e,name:t,content:i}){const[s,n]=N.useState(()=>Ww()),u=N.useRef(null),p=Rx();eh(p.playing&&!p.paused);const r=N.useMemo(()=>e==="markdown"?bx.sanitize(Qe.parse(i||"")):"",[e,i]);if(N.useEffect(()=>{p.stop()},[r]),N.useEffect(()=>{var y;const c=u.current;if(!c||(c.querySelectorAll(".tts-active").forEach(b=>b.classList.remove("tts-active")),p.idx<0))return;const m=c.querySelectorAll(`.tts-sent[data-tts="${p.idx}"]`);m.forEach(b=>b.classList.add("tts-active")),(y=m[0])==null||y.scrollIntoView({block:"center",behavior:"smooth"})},[p.idx]),e==="image")return v.jsx(Ax,{url:i,name:t});if(e==="html")return v.jsx("iframe",{className:"doc-iframe",sandbox:"allow-scripts",srcDoc:i||"",title:t});const o=c=>{const m=Math.min(Bl,Math.max(0,s+c));n(m),Vw(m)};if(e==="text")return v.jsxs("div",{className:"doc-md-wrap",children:[v.jsx("div",{className:"doc-zoom",children:v.jsxs("div",{className:"doc-fonts",children:[v.jsx("button",{className:"doc-zoom-btn",onClick:()=>o(-1),disabled:s<=0,"aria-label":D("doc.fontSmaller"),children:"A−"}),v.jsx("button",{className:"doc-zoom-btn",onClick:()=>o(1),disabled:s>=Bl,"aria-label":D("doc.fontLarger"),children:"A+"})]})}),v.jsx("pre",{className:"doc-text",style:{fontSize:`${cs[s]}px`},children:i||""})]});const f=()=>{if(p.playing){p.paused?p.resume():p.pause();return}const c=Ex(u.current);c.length&&p.play(c)},_=p.playing&&!p.paused;return v.jsxs("div",{className:"doc-md-wrap",children:[v.jsxs("div",{className:"doc-zoom",children:[p.supported&&v.jsxs("div",{className:"doc-tts",children:[v.jsx("button",{className:"doc-zoom-btn doc-zoom-icon",onClick:f,"aria-label":_?D("doc.pauseRead"):p.paused?D("doc.resumeRead"):D("doc.read"),children:_?v.jsx(Uy,{}):v.jsx(zy,{})}),v.jsx("button",{className:"doc-zoom-btn doc-zoom-icon",onClick:p.stop,disabled:!p.playing,"aria-label":D("doc.stopRead"),children:v.jsx(Wy,{})}),v.jsxs("button",{className:"doc-zoom-btn",onClick:p.cycleRate,"aria-label":D("doc.rate"),children:[p.rate,"×"]})]}),v.jsxs("div",{className:"doc-fonts",children:[v.jsx("button",{className:"doc-zoom-btn",onClick:()=>o(-1),disabled:s<=0,"aria-label":D("doc.fontSmaller"),children:"A−"}),v.jsx("button",{className:"doc-zoom-btn",onClick:()=>o(1),disabled:s>=Bl,"aria-label":D("doc.fontLarger"),children:"A+"})]})]}),v.jsx("div",{ref:u,className:"doc-md",style:{fontSize:`${cs[s]}px`},dangerouslySetInnerHTML:{__html:r}})]})}function Nx({open:e,pane:t,windowId:i,tabs:s,active:n,onActivate:u,onCloseTab:p,onMinimize:r,onOpenDoc:o,pendingShare:f,onPendingConsumed:_}){const c=s.find(A=>A.key===n)||s[0],[m,y]=N.useState("recent"),[b,g]=N.useState(null),a=c.type==="home",h=N.useRef(null),l=N.useRef(b);l.current=b;const d=N.useRef(n);d.current=n;const w=N.useRef(i);w.current=i;const k=N.useRef(r);k.current=r;const C=N.useRef(u);C.current=u;const L=N.useRef(n),x=N.useRef(0),E=N.useRef([]),R=()=>{window.history.pushState({fileOverlay:!0},""),x.current+=1},I=A=>{e&&A!==l.current&&(E.current.push({prev:l.current}),R()),g(A),Cl(i,A)};N.useEffect(()=>{const A=L.current;L.current=n,e&&A==="home"&&n!=="home"&&R()},[n,e]),N.useEffect(()=>{if(!e)return;E.current=[],x.current=0,R();const A=()=>{var O,U;if(x.current=Math.max(0,x.current-1),d.current!=="home"){const $=d.current,V=$.slice(0,$.lastIndexOf("/"))||"/";(O=C.current)==null||O.call(C,"home"),y("browse"),g(V),Cl(w.current,V);return}if(E.current.length){const{prev:$}=E.current.pop();g($),$&&Cl(w.current,$);return}(U=k.current)==null||U.call(k)};return window.addEventListener("popstate",A),()=>{window.removeEventListener("popstate",A),x.current>0&&(window.history.go(-x.current),x.current=0)}},[e]);const T=async()=>{try{const{cwd:A}=await Js(t);A&&g(A)}catch{}};return N.useEffect(()=>{f&&y("browse")},[f]),N.useEffect(()=>{if(!e){h.current=null;return}if(h.current===i)return;h.current=i,E.current=[],y("browse");let A=!1;return(async()=>{const O=Lw(i);let U=null;if(O)try{await Pg(O),U=O}catch{}if(!U&&t)try{const{cwd:$}=await Js(t);U=$}catch{}!A&&U&&g(U)})(),()=>{A=!0}},[e,i,t]),qn.createPortal(v.jsxs("div",{className:`file-sheet ${e?"open":""}`,"aria-hidden":!e,children:[v.jsxs("div",{className:"file-tabs",children:[v.jsx("div",{className:"file-tabs-scroll",children:s.map(A=>v.jsxs("div",{className:`file-tab ${A.key===n?"active":""}`,children:[v.jsx("button",{className:"file-tab-label",onClick:()=>u(A.key),children:A.key==="home"?v.jsxs(v.Fragment,{children:[v.jsx(Hn,{}),D("filemanager.files")]}):A.name}),A.key!=="home"&&v.jsx("button",{className:"file-tab-x","aria-label":D("filemanager.closeTab"),onClick:()=>p(A.key),children:"✕"})]},A.key))}),v.jsx("button",{className:"file-min","aria-label":D("filemanager.minimize"),title:D("filemanager.minimize"),onClick:r,children:v.jsx(Ds,{})})]}),v.jsx("div",{className:"file-body",children:a?v.jsxs("div",{className:"home-pane",children:[v.jsxs("div",{className:"file-seg",role:"tablist",children:[v.jsxs("button",{className:`file-seg-btn ${m==="recent"?"on":""}`,role:"tab","aria-selected":m==="recent",onClick:()=>y("recent"),children:[v.jsx($g,{}),D("filemanager.recent")]}),v.jsxs("button",{className:`file-seg-btn ${m==="browse"?"on":""}`,role:"tab","aria-selected":m==="browse",onClick:()=>y("browse"),children:[v.jsx(Hn,{}),D("filemanager.directory")]})]}),m==="recent"?v.jsx(ub,{onOpenDoc:o}):v.jsx(g_,{path:b,onNavigate:I,onOpenDoc:o,onJumpToCwd:t?T:null,pendingFile:f,onPendingConsumed:_})]}):v.jsx(Mx,{type:c.type,name:c.name,content:c.content})})]}),document.body)}function Ix(e){if(!e)return[];const t=[];let i=null,s=null;for(const n of e.split(`
|
|
159
|
+
`)){if(n.startsWith("diff --git")){const p=n.match(/ b\/(.*)$/);i={path:p?p[1]:n.slice(11),hunks:[]},t.push(i),s=null;continue}if(!i)continue;if(n.startsWith("@@")){s={header:n,lines:[]},i.hunks.push(s);continue}if(!s)continue;const u=n[0];u==="+"?s.lines.push({type:"add",text:n.slice(1)}):u==="-"?s.lines.push({type:"del",text:n.slice(1)}):u===" "&&s.lines.push({type:"ctx",text:n.slice(1)})}return t}const Px=e=>String(e||"").replace(/\/+$/,"").split("/").pop()||e;function Ta(e,t){const i=(e&&e!==" "?e:t)||"?";return i==="?"?"?":i}function Ox({open:e,pane:t,windowId:i,inset:s=0,onClose:n}){const u=N.useRef(!0);N.useEffect(()=>()=>{u.current=!1},[]);const[p,r]=N.useState([]),[o,f]=N.useState(null),[_,c]=N.useState([]),m=_.length?_[_.length-1]:null,[y,b]=N.useState(!1),[g,a]=N.useState(null),h=N.useRef(i);N.useEffect(()=>{h.current=i},[i]);const[l,d]=N.useState(null),[w,k]=N.useState(null),[C,L]=N.useState(null),[x,E]=N.useState(null),[R,I]=N.useState(20),[T,A]=N.useState(!1),[O,U]=N.useState({changes:!0,commits:!0}),[$,V]=N.useState(!1),H=N.useRef(null),[S,M]=N.useState(null),[B,F]=N.useState(null),[G,J]=N.useState(null),se=N.useRef(_);se.current=_;const te=N.useRef(y);te.current=y;const z=N.useRef(n);z.current=n;const P=N.useRef(0),Z=()=>{window.history.pushState({gitOverlay:!0},""),P.current+=1},K=ie=>{Z(),c(he=>[...he,ie])},ae=()=>{Z(),b(!0)};N.useEffect(()=>{if(!e)return;Z();const ie=()=>{var he;if(P.current=Math.max(0,P.current-1),te.current){b(!1);return}if(se.current.length){c(ye=>ye.slice(0,-1));return}(he=z.current)==null||he.call(z)};return window.addEventListener("popstate",ie),()=>{window.removeEventListener("popstate",ie),P.current>0&&(window.history.go(-P.current),P.current=0)}},[e]),N.useEffect(()=>{if(!e)return;let ie=!1;c([]),E(null),F(null),J(null);const he=Yu(i);return he.length?(r(he),f(ye=>ye&&he.includes(ye)?ye:he[0]),()=>{ie=!0}):(r([]),f(null),(async()=>{try{if(!t)return;const{cwd:ye}=await Js(t);if(!ye)return;const{repos:Re=[]}=await sf(ye);if(ie||!Re.length)return;const Ee=ef(i,Re.map(qe=>qe.path));if(ie)return;r(Ee),f(Ee[0]??null)}catch(ye){if(ie)return;(ye==null?void 0:ye.message)==="outside home"?J(D("git.outsideRoots")):F(D("git.errReadRepo"))}})(),()=>{ie=!0})},[e,t,i]),N.useEffect(()=>{if(!e||!t)return;let ie=!1;return Js(t).then(({cwd:he})=>{!ie&&he&&a(he)}).catch(()=>{}),()=>{ie=!0}},[e,t]),N.useEffect(()=>{if(!e||!o){d(null),k(null);return}let ie=!1;return d(null),k(null),L(null),E(null),I(20),F(null),J(null),(async()=>{try{const[he,ye]=await Promise.all([xy(o),ky(o)]);if(ie)return;d(he.changes??[]),k(ye.branches??[])}catch{ie||F(D("git.errLoad"))}})(),()=>{ie=!0}},[e,o]),N.useEffect(()=>{if(!e||!o){L(null);return}let ie=!1;return(async()=>{try{const{commits:he=[]}=await Cy(o,{ref:x||void 0,limit:R});ie||L(he)}catch{ie||L([])}finally{ie||A(!1)}})(),()=>{ie=!0}},[e,o,x,R]);const re=!o||!m?"":m.kind==="diff"?`${o}|diff|${m.path}|${m.commit||""}|${m.staged?1:0}`:`${o}|commit|${m.hash}`;N.useEffect(()=>{if(!e||!o||!m){M(null);return}let ie=!1;return F(null),M(null),(async()=>{try{let he;if(m.kind==="diff"){const{diff:ye,truncated:Re}=await Ey(o,{path:m.path,commit:m.commit,staged:m.staged});he={files:Ix(ye),truncated:Re}}else he=await Ly(o,m.hash);ie||M({key:re,payload:he})}catch{ie||F(D("git.errLoad"))}})(),()=>{ie=!0}},[e,re]);const Se=N.useCallback(()=>{window.history.back()},[]),we=ie=>{f(ie),c([]),E(null)},De=async ie=>{window.history.back(),J(null);try{const{repos:he=[]}=await sf(ie);if(!u.current)return;if(!he.length){J(D("git.noRepoInDir"));return}const ye=he.map(ot=>ot.path),Re=h.current,Ee=Re?ef(Re,ye):ye;r(ot=>{const at=[...ot];for(const Ft of Ee)at.includes(Ft)||at.push(Ft);return at});const qe=ye.find(ot=>!p.includes(ot))||ye[0];we(qe)}catch(he){if(!u.current)return;(he==null?void 0:he.message)==="outside home"?J(D("git.outsideRoots")):F(D("git.errReadDir"))}},Ae=ie=>{const he=ey(i,ie);r(he),o===ie&&(f(he[0]??null),c([]),E(null))},pe=(w||[]).find(ie=>ie.current)||null,He=ie=>{const he=ie===(pe==null?void 0:pe.name)?null:ie;he!==x&&(E(he),L(null),I(20))},Ve=ie=>U(he=>({...he,[ie]:!he[ie]})),ce=C!=null&&C.length>=R,fe=ie=>{if(!ce||T)return;const he=ie.currentTarget;he.scrollHeight-he.scrollTop-he.clientHeight<80&&(A(!0),I(ye=>ye+20))},Ce=x||(pe==null?void 0:pe.name)||null,de=!!x&&x!==(pe==null?void 0:pe.name),q=x?(w||[]).find(ie=>ie.name===x):pe,ge=S&&S.key===re?S.payload:null,be=!!m,Oe=(m==null?void 0:m.kind)==="commit"?D("git.commitDetail"):(m==null?void 0:m.kind)==="diff"?m.path||D("git.diff"):"";return qn.createPortal(v.jsxs("div",{className:`file-sheet git-sheet ${e?"open":""}`,"aria-hidden":!e,style:{"--kb-inset":`${s}px`},children:[v.jsxs("div",{className:"file-tabs git-head",children:[be?v.jsxs("div",{className:"git-drill-head",children:[v.jsx("button",{className:"git-back","aria-label":D("common.back"),title:D("common.back"),onClick:Se,children:"‹"}),v.jsxs("span",{className:"git-drill-title",children:[v.jsx(Wg,{}),v.jsx("span",{className:"git-title-text",children:Oe})]})]}):v.jsxs("div",{className:"git-tabs-scroll",children:[v.jsx("button",{className:"git-tab-add","aria-label":D("git.bindRepo"),title:D("git.bindRepo"),onClick:ae,children:"+"}),p.map(ie=>v.jsxs("div",{className:`git-tab ${ie===o?"active":""}`,children:[v.jsx("button",{className:"git-tab-label",onClick:()=>we(ie),children:Px(ie)}),v.jsx("button",{className:"git-tab-x","aria-label":D("common.close"),title:D("common.close"),onClick:()=>Ae(ie),children:"✕"})]},ie))]}),v.jsx("button",{className:"file-min","aria-label":D("git.collapse"),title:D("git.collapse"),onClick:()=>n==null?void 0:n(),children:v.jsx(Ds,{})})]}),!be&&o&&v.jsxs("div",{className:"git-branch-bar",children:[v.jsxs("span",{className:"git-branch-bar-name",children:[v.jsx("span",{className:"git-branch-glyph",children:"⎇"})," ",Ce||"—",!de&&Ce&&v.jsx("span",{className:"git-branch-cur-tag",children:D("git.currentBranch")}),q&&(q.ahead||q.behind)?v.jsxs("span",{className:"git-branch-bar-track",children:[q.ahead?v.jsxs("span",{className:"git-ahead",children:["↑",q.ahead]}):null,q.behind?v.jsxs("span",{className:"git-behind",children:["↓",q.behind]}):null]}):null]}),v.jsxs("div",{className:"git-branch-dd",children:[v.jsxs("button",{className:`git-branch-trigger ${de?"other":""}`,onClick:()=>V(ie=>!ie),"aria-haspopup":"listbox","aria-expanded":$,title:D("git.switchViewedBranch"),children:[v.jsx("span",{className:"git-branch-trigger-name",children:D("git.switchBranch")}),v.jsx("span",{className:"git-branch-caret",children:v.jsx(Ds,{})})]}),$&&v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"git-dd-backdrop",onClick:()=>V(!1)}),v.jsxs("div",{className:"git-dd-menu",role:"listbox",children:[(w||[]).length===0&&v.jsx("div",{className:"git-empty",children:D("git.noBranches")}),(w||[]).map(ie=>{const he=x?ie.name===x:ie.current;return v.jsxs("button",{role:"option","aria-selected":he,className:`git-dd-item ${ie.current?"current":""} ${he?"viewing":""}`,onClick:()=>{He(ie.name),V(!1)},children:[v.jsx("span",{className:"git-branch-dot",children:ie.current?"●":""}),v.jsx("span",{className:"git-row-path",children:ie.name}),ie.upstream&&v.jsxs("span",{className:"git-branch-up",children:[ie.upstream,ie.ahead?v.jsxs("span",{className:"git-ahead",children:[" ↑",ie.ahead]}):null,ie.behind?v.jsxs("span",{className:"git-behind",children:[" ↓",ie.behind]}):null]})]},ie.name)})]})]})]})]}),v.jsxs("div",{className:"git-body",children:[B&&v.jsx("div",{className:"git-error",children:B}),G&&!B&&!be&&v.jsx("div",{className:"git-notice",children:G}),!o&&!B&&!G&&v.jsx("div",{className:"git-empty",children:D("git.noRepoBound")}),be&&o&&!B&&v.jsx("div",{className:"git-scroll",children:ge?m.kind==="diff"?v.jsx(Hx,{data:ge}):v.jsx(Fx,{data:ge,onOpenFile:ie=>K({kind:"diff",path:ie,commit:m.hash})}):v.jsx("div",{className:"git-loading",children:D("common.loading")})}),!be&&o&&!B&&v.jsxs(v.Fragment,{children:[v.jsx(Yf,{variant:"top",title:D("git.changes"),count:l==null?void 0:l.length,expanded:O.changes,onToggle:()=>Ve("changes"),children:l==null?v.jsx("div",{className:"git-loading",children:D("common.loading")}):v.jsx(Bx,{data:{changes:l},onOpenFile:(ie,he)=>K({kind:"diff",path:ie,staged:he})})}),v.jsx(Yf,{variant:"mid",title:D("git.commits"),subtitle:de?Ce:null,expanded:O.commits,onToggle:()=>Ve("commits"),bodyRef:H,onScroll:fe,children:C==null?v.jsx("div",{className:"git-loading",children:D("common.loading")}):v.jsxs(v.Fragment,{children:[v.jsx(jx,{data:{commits:C},onOpen:ie=>K({kind:"commit",hash:ie})}),ce&&v.jsx("div",{className:"git-more",children:D(T?"common.loading":"git.pullToLoadMore")})]})})]})]}),v.jsx(Xn,{open:y,seedCwd:g,pane:t,inset:s,hint:D("git.pickerHint"),onPick:De,onClose:()=>window.history.back()})]}),document.body)}function Yf({variant:e,title:t,subtitle:i,count:s,expanded:n,onToggle:u,onScroll:p,bodyRef:r,children:o}){return v.jsxs("div",{className:`git-section git-section--${e} ${n?"open":""}`,children:[v.jsxs("button",{className:"git-section-head",onClick:u,"aria-expanded":n,children:[v.jsx("span",{className:"git-section-caret",children:v.jsx(Ds,{})}),v.jsx("span",{className:"git-section-title",children:t}),i&&v.jsx("span",{className:"git-section-sub",children:i}),s!=null&&v.jsx("span",{className:"git-section-count",children:s})]}),n&&v.jsx("div",{className:"git-section-body",ref:r,onScroll:p,children:o})]})}function Bx({data:e,onOpenFile:t}){const i=(e==null?void 0:e.changes)??[];return i.length?v.jsx("div",{className:"git-list",children:i.map((s,n)=>{const u=!!(s.x&&s.x!==" "&&s.x!=="?");return v.jsxs("button",{className:"git-row",onClick:()=>t(s.path,u),children:[v.jsx("span",{className:`git-badge git-badge-${Ta(s.x,s.y).toLowerCase().replace("?","q")}`,children:Ta(s.x,s.y)}),v.jsx("span",{className:"git-row-path",children:s.path})]},`${s.path}-${n}`)})}):v.jsx("div",{className:"git-empty",children:D("git.cleanTree")})}function jx({data:e,onOpen:t}){const i=(e==null?void 0:e.commits)??[];return i.length?v.jsx("div",{className:"git-list",children:i.map(s=>v.jsxs("button",{className:"git-row git-commit-row",onClick:()=>t(s.hash),children:[v.jsx("span",{className:"git-hash",children:s.short}),v.jsxs("span",{className:"git-commit-main",children:[v.jsx("span",{className:"git-row-path",children:s.subject}),v.jsxs("span",{className:"git-commit-meta",children:[s.author," · ",s.relDate]})]})]},s.hash))}):v.jsx("div",{className:"git-empty",children:D("git.noCommits")})}function Fx({data:e,onOpenFile:t}){if(!e)return null;const i=e.files??[];return v.jsxs("div",{className:"git-commit-detail",children:[e.message&&v.jsx("pre",{className:"git-commit-msg",children:e.message}),v.jsx("div",{className:"git-list",children:i.map((s,n)=>v.jsxs("button",{className:"git-row",onClick:()=>t(s.path),children:[v.jsx("span",{className:`git-badge git-badge-${Ta(s.x,s.y).toLowerCase().replace("?","q")}`,children:Ta(s.x,s.y)}),v.jsx("span",{className:"git-row-path",children:s.path})]},`${s.path}-${n}`))})]})}const Xf=cs.length-1;function Hx({data:e}){const[t,i]=N.useState(()=>Gw()),s=u=>{const p=Math.min(Xf,Math.max(0,t+u));i(p),qw(p)};if(!e)return null;const n=e.files??[];return n.length?v.jsxs("div",{className:"git-diff-wrap",style:{fontSize:`${cs[t]}px`},children:[v.jsxs("div",{className:"git-diff-zoom",children:[v.jsx("button",{className:"doc-zoom-btn",onClick:()=>s(-1),disabled:t<=0,"aria-label":D("git.fontSmaller"),children:"A−"}),v.jsx("button",{className:"doc-zoom-btn",onClick:()=>s(1),disabled:t>=Xf,"aria-label":D("git.fontLarger"),children:"A+"})]}),e.truncated&&v.jsx("div",{className:"git-diff-trunc",children:D("git.diffTruncated")}),n.map((u,p)=>v.jsxs("div",{className:"git-diff-file",children:[n.length>1&&v.jsx("div",{className:"git-diff-fname",children:u.path}),v.jsx("div",{className:"git-diff",children:u.hunks.map((r,o)=>v.jsxs("div",{className:"git-diff-hunk-block",children:[v.jsx("div",{className:"git-diff-line git-diff-hunk",children:r.header}),r.lines.map((f,_)=>v.jsxs("div",{className:`git-diff-line git-diff-${f.type}`,children:[f.type==="add"?"+":f.type==="del"?"-":" ",f.text]},_))]},o))})]},`${u.path}-${p}`))]}):v.jsx("div",{className:"git-empty",children:D("git.noDiff")})}function $x(){const e=J1();if(!e.active)return null;const t=e.phase==="sending",i=Math.round((e.pct||0)*100);return qn.createPortal(v.jsx("div",{className:"upload-overlay",role:"alertdialog","aria-modal":"true","aria-label":D("upload.title"),children:v.jsxs("div",{className:"upload-card",children:[e.label&&v.jsx("div",{className:"upload-card-label",children:e.label}),t?v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"upload-bar",children:v.jsx("div",{className:"upload-bar-fill",style:{width:`${i}%`}})}),v.jsxs("div",{className:"upload-card-sub",children:[i,"%"]})]}):v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"upload-spinner","aria-hidden":"true"}),v.jsx("div",{className:"upload-card-sub",children:D("upload.processing")})]}),v.jsx("button",{type:"button",className:"upload-cancel",onClick:q1,children:D("common.cancel")})]})}),document.body)}const Do=8,Jf=12;function zx({path:e,x:t,y:i,onOpen:s,onClose:n}){const u=e.split("/").filter(Boolean).pop()||e,p=N.useRef(null),[r,o]=N.useState(null);return N.useLayoutEffect(()=>{const f=p.current;if(!f)return;const _=f.offsetWidth,c=f.offsetHeight,m=window.innerWidth,y=window.innerHeight,b=Math.min(Math.max(t-_/2,Do),m-_-Do);let g=i+Jf;g+c>y-Do&&(g=Math.max(Do,i-Jf-c)),o({left:b,top:g})},[t,i,e]),v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"doclink-backdrop",onClick:n}),v.jsxs("div",{ref:p,className:"doclink-pop",style:r?{left:r.left,top:r.top}:{left:0,top:0,visibility:"hidden"},role:"dialog","aria-label":D("doclink.title"),children:[v.jsxs("div",{className:"doclink-name",children:[v.jsx(Hn,{}),u]}),v.jsx("div",{className:"doclink-path",children:e}),v.jsxs("div",{className:"doclink-actions",children:[v.jsx("button",{className:"doclink-cancel",onClick:n,children:D("common.cancel")}),v.jsx("button",{className:"doclink-open",onClick:()=>s(e),children:D("common.open")})]})]})]})}const Ux=()=>`${Date.now().toString(36)}${Math.random().toString(36).slice(2,6)}`;function Wx(e){const t=(e??"").trim();return t?{id:Ux(),text:t}:null}function Vx(e,t,i){const s=[...e];if(t<0||t>=s.length||i<0||i>=s.length||t===i)return s;const[n]=s.splice(t,1);return s.splice(i,0,n),s}function Kx({open:e,session:t,window:i,onClose:s,onSend:n,onCountChange:u}){const[p,r]=N.useState([]),[o,f]=N.useState(""),[_,c]=N.useState(null),[m,y]=N.useState(null),b=N.useRef(null),g=N.useRef({head:"",tail:""}),a=N.useRef(null),h=N.useRef(!1),l=N.useRef({active:!1}),d=S=>{Qd(t,i,S),r(S),u==null||u(S.length)},w=S=>{S&&(S.style.height="auto",S.style.height=`${S.scrollHeight+2}px`)};N.useEffect(()=>{if(!e)return;const S=Ng(t,i);r(S),u==null||u(S.length),f(""),c(null)},[e,t,i]);const C=f_({onText:S=>{if(h.current){h.current=!1;return}const{head:M,tail:B}=g.current;f(M+S+B),a.current=M.length+S.length}}),L=m_(),x=C.state==="recording"||C.state==="finalizing";eh(x),N.useEffect(()=>{if(C.state!=="recording"&&C.state!=="finalizing"||h.current)return;const{head:S,tail:M}=g.current;f(S+C.partial+M),a.current=S.length+C.partial.length},[C.partial,C.state]),N.useLayoutEffect(()=>{const S=b.current;if(!S||(w(S),a.current==null))return;const M=a.current;if(a.current=null,document.activeElement===S)try{S.setSelectionRange(M,M)}catch{}},[o]);const E=()=>{if(x){C.stop();return}const S=b.current,M=S?S.selectionStart:o.length;g.current={head:o.slice(0,M),tail:o.slice(M)},C.start()},R=()=>{x&&(h.current=!0,C.stop())},I=()=>{R();const S=o.trim();if(S){if(_)d(p.map(M=>M.id===_?{...M,text:S}:M));else{const M=Wx(S);M&&d([...p,M])}f(""),c(null)}},T=S=>{c(S.id),f(S.text),requestAnimationFrame(()=>{var M;return(M=b.current)==null?void 0:M.focus()})},A=()=>{c(null),f("")},O=S=>{d(p.filter(M=>M.id!==S)),S===_&&A()},U=(S,M)=>{var B,F;S.cancelable&&S.preventDefault(),(F=(B=S.currentTarget).setPointerCapture)==null||F.call(B,S.pointerId),l.current={active:!0,pointerId:S.pointerId,id:M},y(M)},$=S=>{var J;const M=l.current;if(!M.active||S.pointerId!==M.pointerId)return;const B=(J=S.currentTarget.closest(".idea-list"))==null?void 0:J.querySelectorAll("[data-idea]");if(!B||!B.length)return;const F=S.clientY;let G=B.length-1;for(let se=0;se<B.length;se++){const te=B[se].getBoundingClientRect();if(F<te.top+te.height/2){G=se;break}}r(se=>{const te=se.findIndex(z=>z.id===M.id);return te<0||te===G?se:Vx(se,te,G)})},V=S=>{const M=l.current;!M.active||S.pointerId!==M.pointerId||(l.current={active:!1},y(null),r(B=>(Qd(t,i,B),B)))};if(!e)return null;const H=_!=null;return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"cmd-backdrop",onClick:s}),v.jsxs("div",{className:"idea-panel",role:"dialog","aria-label":D("idea.title"),children:[v.jsxs("div",{className:"cmd-head",children:[v.jsxs("span",{className:"cmd-title",children:[D("idea.title"),i?` · ${i}`:"",p.length>0&&v.jsx("span",{className:"idea-head-count",children:p.length})]}),v.jsx("button",{className:"cmd-close",onClick:s,"aria-label":D("common.close"),children:"✕"})]}),v.jsxs("div",{className:`idea-compose${x?" recording":""}`,children:[v.jsx("textarea",{ref:b,className:"idea-input",rows:1,placeholder:D(H?"idea.editPlaceholder":"idea.addPlaceholder"),value:o,readOnly:x,onChange:S=>f(S.target.value)}),H&&v.jsx("button",{className:"idea-cancel",onClick:A,children:D("common.cancel")}),L&&v.jsx(c_,{active:x,disabled:C.state==="requesting",onToggle:E}),v.jsx("button",{className:"idea-act",onClick:I,disabled:!o.trim(),"aria-label":D(H?"common.save":"idea.add"),children:H?v.jsx(Hg,{}):v.jsx(Fg,{})})]}),v.jsx("div",{className:"idea-list",children:p.length===0?v.jsx("div",{className:"cmd-empty",children:D("idea.empty")}):p.map(S=>v.jsxs("div",{"data-idea":S.id,className:`idea-row${S.id===m?" dragging":""}${S.id===_?" editing":""}`,children:[v.jsx("button",{type:"button",className:"idea-handle","aria-label":D("idea.dragSort"),onPointerDown:M=>U(M,S.id),onPointerMove:$,onPointerUp:V,onPointerCancel:V,children:"≡"}),v.jsx("span",{className:"idea-text",onClick:()=>T(S),children:S.text}),v.jsx("button",{className:"idea-send",onClick:()=>n==null?void 0:n(S.text),"aria-label":D("idea.fillInput"),children:D("idea.send")}),v.jsx("button",{className:"idea-del",onClick:()=>O(S.id),"aria-label":D("common.delete"),children:"✕"})]},S.id))})]})]})}function Gx({open:e,onClose:t}){return e?v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"cmd-backdrop",onClick:t}),v.jsxs("div",{className:"changelog-panel",role:"dialog","aria-label":D("changelog.title"),children:[v.jsxs("div",{className:"cmd-head",children:[v.jsx("span",{className:"cmd-title",children:D("changelog.title")}),v.jsx("button",{className:"cmd-close",onClick:t,"aria-label":D("common.close"),children:"✕"})]}),v.jsx("div",{className:"changelog-list",children:Ig.map(i=>{const s=i.items[Dc()]||i.items.en||i.items.zh||[];return v.jsxs("div",{className:"rel",children:[v.jsx("div",{className:"rel-date",children:i.date}),v.jsx("ul",{className:"rel-items",children:s.map((n,u)=>v.jsx("li",{children:n},u))})]},i.v)})})]})]}):null}function qx(){const[e,t]=N.useState(0);return N.useEffect(()=>{const i=window.visualViewport;if(!i)return;const s=()=>{const n=window.innerHeight-i.height-i.offsetTop;t(Math.max(0,Math.round(n)))};return s(),i.addEventListener("resize",s),i.addEventListener("scroll",s),()=>{i.removeEventListener("resize",s),i.removeEventListener("scroll",s)}},[]),e}function Zf(e){history.replaceState(null,"",`#${encodeURIComponent(e)}`)}const Ao=e=>{try{return decodeURIComponent(e)}catch{return e}};function Qf(){const e=location.hash.replace(/^#/,""),t=e.match(/^\/s\/([^/]*)\/w\/([^/]*)\/p\/(.*)$/);return t?{session:Ao(t[1]),window:Ao(t[2]),pane:Ao(t[3])}:{session:Ao(e)||null,window:null,pane:null}}const Yx="tmw-share-v1",Xx="/__share__/";function Jx(e=typeof location<"u"?location.search:""){try{return new URLSearchParams(e).has("share")}catch{return!1}}function Zx(){if(typeof location>"u"||typeof history>"u")return;const e=new URL(location.href);e.searchParams.delete("share"),history.replaceState(null,"",e.pathname+e.search+e.hash)}async function Qx(){if(typeof caches>"u")return null;let e;try{e=await caches.open(Yx)}catch{return null}const t=await e.keys();if(!t.length)return null;const i=t[t.length-1],s=await e.match(i);if(await e.delete(i),!s)return null;const n=await s.blob();let u="shared";try{u=decodeURIComponent(new URL(i.url).pathname.slice(Xx.length))||"shared"}catch{}return new File([n],u,{type:n.type||s.headers.get("Content-Type")||""})}const rn=(e,t)=>t&&e.some(i=>i.id===t)?t:e[0].id;function eC(){var hh,dh,fh,ph,mh,gh,_h,vh,wh,yh,Sh,bh,xh,Ch,kh,Eh,Lh,Rh,Th,Dh,Ah,Mh;const[e,t]=N.useState(!ir()),[i,s]=N.useState(!1),[n,u]=N.useState(!1),[p,r]=N.useState(!1),[o,f]=N.useState(!1),[_,c]=N.useState(!1),[m,y]=N.useState(null),[b,g]=N.useState(null),[a,h]=N.useState(!1),[l,d]=N.useState(!1),[w,k]=N.useState(null),[C,L]=N.useState(null),[x,E]=N.useState(null),[R,I]=N.useState(null),T=d1(),[A,O]=N.useState(Xs),[U,$]=N.useState(va),[V,H]=N.useState([]),[S,M]=N.useState(null),[B,F]=N.useState([]),[G,J]=N.useState(null),[se,te]=N.useState(!1),[z,P]=N.useState(!1),[Z,K]=N.useState(!0),[ae,re]=N.useState({}),[Se,we]=N.useState([]),[De,Ae]=N.useState(null),[pe,He]=N.useState(!1),{status:Ve,enable:ce}=tb(),[fe,Ce]=N.useState(!1),[de,q]=N.useState(0),[ge,be]=N.useState(!1),[Oe,ie]=N.useState(Yw),[he,ye]=N.useState(null),[Re,Ee]=N.useState(Jw),[qe,ot]=N.useState(Gd),[at,Ft]=N.useState(Ew),St=N.useRef(null),si=N.useRef(null),Je=N.useRef(null),Ye=N.useRef(null),Ie=N.useCallback(()=>t(!0),[]),lt=N.useCallback(async()=>{try{const X=await Dy();F(X.previews||[]),J(X.domain??null),te(!!X.dynamicEnabled)}catch{}},[]);N.useEffect(()=>{lt()},[lt]),N.useEffect(()=>{e||wy().then(ye).catch(()=>{})},[e]);const Ze=S?My({session:(hh=S.session)==null?void 0:hh.name,windowName:(dh=S.window)==null?void 0:dh.name,windowId:(fh=S.window)==null?void 0:fh.id}):null,Pe=B.find(X=>X.name===Ze&&X.expiresAt>Date.now())||null,ui=(Pe==null?void 0:Pe.expiresAt)??null,bi=!!Pe;N.useEffect(()=>{bi||P(!1)},[bi]),N.useEffect(()=>{if(ui==null)return;const X=setTimeout(lt,Math.max(0,ui-Date.now())+500);return()=>clearTimeout(X)},[ui,lt]);const Nt=N.useCallback(()=>{n?(u(!1),requestAnimationFrame(()=>P(!0))):P(!0)},[n]),Ht=N.useCallback(async X=>{var ee;if(Ze)try{await kl(Ze,{dir:X}),Tw((ee=S==null?void 0:S.window)==null?void 0:ee.id,X),await lt(),Nt()}catch{}},[Ze,(ph=S==null?void 0:S.window)==null?void 0:ph.id,lt,Nt]),Hi=N.useCallback(async X=>{Ze&&(await kl(Ze,{port:X}),await lt(),Nt())},[Ze,lt,Nt]),Ji=N.useCallback(async()=>{if(Ze)try{await Ay(Ze),await lt()}catch{}},[Ze,lt]),Xe=N.useCallback(async()=>{if(!Pe)return;const X=Pe.kind==="dynamic"?{port:Pe.port}:{dir:Pe.dir};try{await kl(Pe.name,X),await lt()}catch{}},[Pe==null?void 0:Pe.name,Pe==null?void 0:Pe.kind,Pe==null?void 0:Pe.dir,Pe==null?void 0:Pe.port,lt]),xt=N.useCallback(()=>{Cw(),u(!1),f(!1),s(!1),M(null),K(!0),t(!0)},[]),dt=qx();Ni(z,()=>P(!1)),Ni(i,()=>s(!1)),Ni(pe,()=>He(!1)),Ni(p,()=>r(!1)),Ni(o,()=>f(!1)),Ni(_,()=>c(!1)),Ni(fe,()=>Ce(!1)),Ni(!!C,()=>L(null)),Ni(n||ge,()=>{ge?be(!1):u(!1)}),Ni(!!b||!!m,()=>{m?y(null):g(null)});const hi=N.useCallback(async X=>{var me,_e;const ee=S==null?void 0:S.paneId;if(ee)try{await ny(ee,[X]),(_e=(me=St.current)==null?void 0:me.wake)==null||_e.call(me)}catch(Te){Te instanceof it&&Ie()}},[S,Ie]),di=N.useCallback(async X=>{var me,_e;const ee=S==null?void 0:S.paneId;if(ee)try{await Wo(ee,X,!1),(_e=(me=St.current)==null?void 0:me.wake)==null||_e.call(me)}catch(Te){Te instanceof it&&Ie()}},[S,Ie]),Yt=N.useCallback(async X=>{var Te,Be,je,We,pi;const ee=(Te=S==null?void 0:S.window)==null?void 0:Te.id,me=Je.current??((je=(Be=St.current)==null?void 0:Be.getSize())==null?void 0:je.cols);if(!ee||!me)return;const _e=Math.max(20,Math.min(500,me+X));Je.current=_e,(pi=(We=St.current)==null?void 0:We.flash)==null||pi.call(We);try{Ye.current==null&&(Ye.current=await ly(ee).then(zt=>zt.layout||"").catch(()=>"")),S.panes&&S.panes.length>1?await ay(S.paneId,_e):await oy(ee,_e)}catch(zt){zt instanceof it&&Ie()}},[S,Ie]),Di=N.useCallback(async()=>{var me;const X=(me=S==null?void 0:S.window)==null?void 0:me.id;if(!X)return;const ee=Ye.current;Je.current=null,Ye.current=null;try{await cy(X,ee)}catch(_e){_e instanceof it&&Ie()}},[S,Ie]),Ct=N.useCallback(async(X,ee=null)=>{var je;const me=await Qr(X.id);if(!me.length)return!1;const _e=(ee==null?void 0:ee.window)&&me.find(We=>We.id===ee.window)||me.find(We=>We.id===rn(me,Aw(X.id))),Te=await Co(_e.id);if(!Te.length)return!1;const Be=ee!=null&&ee.pane&&Te.some(We=>We.id===ee.pane)?ee.pane:rn(Te,bo(_e.id));return M({session:X,windows:me,window:_e,panes:Te,paneId:Be}),Zr({sessionId:X.id,windowId:_e.id,paneId:Be}),Zf(X.name),Je.current=((je=Te.find(We=>We.id===Be))==null?void 0:je.width)??null,Ye.current=null,!0},[]),pt=N.useCallback(async X=>{var ee;try{const me=await Co(X.id);if(!me.length)return;const _e=rn(me,bo(X.id));M(Te=>Te&&{...Te,window:X,panes:me,paneId:_e}),Zr({sessionId:S.session.id,windowId:X.id,paneId:_e}),Je.current=((ee=me.find(Te=>Te.id===_e))==null?void 0:ee.width)??null,Ye.current=null}catch(me){me instanceof it&&Ie()}},[S,Ie]),$t=N.useCallback(async(X,ee,me)=>{var Be,je,We,pi;const _e=(Be=S==null?void 0:S.session)==null?void 0:Be.id,Te=S==null?void 0:S.paneId;if(!(!_e||!Te))try{const{id:zt}=await hy(_e,Te,X||void 0,ee,me),eo=await Qr(_e),to=eo.find(Is=>Is.id===zt)||eo[eo.length-1],io=await Co(to.id);if(!io.length)return;const Ja=rn(io,bo(to.id));M(Is=>Is&&{...Is,windows:eo,window:to,panes:io,paneId:Ja}),Zr({sessionId:_e,windowId:to.id,paneId:Ja}),Je.current=((je=io.find(Is=>Is.id===Ja))==null?void 0:je.width)??null,Ye.current=null,c(!1),(pi=(We=St.current)==null?void 0:We.wake)==null||pi.call(We)}catch(zt){if(zt instanceof it){Ie();return}throw zt}},[S,Ie]),Zi=N.useCallback(async X=>{var _e,Te;const ee=m;if(!ee)return;const me=(_e=S==null?void 0:S.session)==null?void 0:_e.id;if(ee.kind==="session"){try{await dy(ee.id,X)}catch(Be){throw Be instanceof it?(Ie(),Be):/\b409\b/.test(Be.message)?new Error(ee("app.nameExists")):new Error(ee("app.renameFailed"))}O(kw(ee.name,X)),en(),Zf(X),M(Be=>Be&&Be.session.id===ee.id?{...Be,session:{...Be.session,name:X}}:Be)}else{try{await fy(ee.id,X)}catch(je){throw je instanceof it?(Ie(),je):new Error(ee("app.renameFailed"))}Qw((Te=S==null?void 0:S.session)==null?void 0:Te.name,ee.name||ee.id,X);const Be=await Qr(me);M(je=>je&&{...je,windows:Be,window:Be.find(We=>We.id===je.window.id)||je.window})}y(null)},[m,S,Ie]),hs=N.useCallback(async()=>{var Be;const X=b,ee=S==null?void 0:S.session;if(!X||!ee)return;const me=ee.id,_e=S.windows.length<=1;try{await py(X.id)}catch(je){if(je instanceof it){Ie();return}window.alert(D("app.deleteFailed")),g(null);return}if(g(null),_e){O(Kd(ee.name)),en(),M(null);return}const Te=await Qr(me);if(X.id===S.window.id&&Te.length){const je=Te.find(zt=>zt.active)||Te[0],We=await Co(je.id);if(!We.length)return;const pi=rn(We,bo(je.id));M(zt=>zt&&{...zt,windows:Te,window:je,panes:We,paneId:pi}),Zr({sessionId:me,windowId:je.id,paneId:pi}),Je.current=((Be=We.find(zt=>zt.id===pi))==null?void 0:Be.width)??null,Ye.current=null}else M(je=>je&&{...je,windows:Te})},[b,S,Ie]),Ai=N.useCallback(async X=>{var Te;const ee=b,me=(Te=S==null?void 0:S.session)==null?void 0:Te.id;if(!ee||!me)return;const _e=Ll(S.windows,ee.id,X);if(_e)try{await my(ee.id,_e.id);const Be=await Qr(me);M(je=>je&&{...je,windows:Be,window:Be.find(We=>We.id===je.window.id)||je.window}),g(Be.find(je=>je.id===ee.id)||null)}catch(Be){if(Be instanceof it){Ie(),g(null);return}window.alert(D("app.moveFailed")),g(null)}},[b,S,Ie]),$i=Xu(()=>{S!=null&&S.session&&y({kind:"session",id:S.session.id,name:S.session.name})}),Dt=N.useCallback(async X=>{try{const ee=(await br()).find(me=>me.name===X);if(!ee){window.alert(D("app.sessionGone",{name:X}));return}await Ct(ee)&&s(!1)}catch(ee){ee instanceof it&&Ie()}},[Ct,Ie]),W=N.useCallback(async X=>{He(!1),ot(qd(X.pane,X.ts));try{const ee=(await br()).find(me=>me.name===X.session);if(!ee){window.alert(D("app.sessionGone",{name:X.session}));return}s(!1),await Ct(ee,{window:X.window,pane:X.pane})}catch(ee){ee instanceof it&&Ie()}},[Ct,Ie]),ne=N.useCallback(async({target:X,kill:ee})=>{const me=De,_e=await by({pid:me.pid,sessionId:me.sessionId,target:X,kill:ee});_e.name&&(O(Vd(_e.name)),en()),Ae(null),He(!1);try{_e.name&&(s(!1),await Ct({id:_e.session,name:_e.name},{window:_e.window,pane:_e.pane}))}catch(Te){Te instanceof it&&Ie()}try{we(await tf())}catch{}},[De,Ct,Ie]),Ne=N.useCallback(()=>{const X=lf(ae);Yd(X),Ft(X)},[ae]),Ke=N.useCallback(X=>{O(Vd(X)),en(),f(!1),Dt(X)},[Dt]),vt=N.useCallback(X=>{O(Kd(X)),en(),M(ee=>ee&&ee.session.name===X?null:ee)},[]),It=N.useCallback(X=>{M(ee=>ee&&(Zr({windowId:ee.window.id,paneId:X}),{...ee,paneId:X}))},[]),oe=(mh=S==null?void 0:S.session)==null?void 0:mh.name,ve=(gh=S==null?void 0:S.window)==null?void 0:gh.id;N.useEffect(()=>{H(oe&&ve?wa(oe,ve):[])},[oe,ve]);const xe=(_h=S==null?void 0:S.session)==null?void 0:_h.name,Q=((vh=S==null?void 0:S.window)==null?void 0:vh.name)||((wh=S==null?void 0:S.window)==null?void 0:wh.id);N.useEffect(()=>{q(xe&&Q?Ng(xe,Q).length:0)},[xe,Q]),N.useEffect(()=>{S!=null&&S.paneId&&a1(S.paneId)},[S==null?void 0:S.paneId]),N.useEffect(()=>{var me;const X=S==null?void 0:S.paneId;if(!X)return;const ee=(me=ae[X])==null?void 0:me.ts;ee!=null&&Gd()[X]!==ee&&ot(qd(X,ee))},[S==null?void 0:S.paneId,ae]),N.useEffect(()=>{if(!Jx())return;Zx();let X=!1;return(async()=>{const ee=await Qx();X||!ee||(k(ee),T.activate("home"),h(!0))})(),()=>{X=!0}},[]),N.useEffect(()=>{if(e||typeof navigator>"u"||!("serviceWorker"in navigator))return;const X=async({session:_e,window:Te,pane:Be})=>{if(_e)try{const We=(await br()).find(pi=>pi.name===_e);We&&(s(!1),await Ct(We,{window:Te,pane:Be}))}catch(je){je instanceof it&&Ie()}},ee=_e=>{const Te=_e.data;Te&&Te.type==="navigate"&&X(Te)},me=()=>{const _e=Qf();_e.session&&(_e.window||_e.pane)&&X(_e)};return navigator.serviceWorker.addEventListener("message",ee),window.addEventListener("hashchange",me),()=>{navigator.serviceWorker.removeEventListener("message",ee),window.removeEventListener("hashchange",me)}},[e,Ct,Ie]);const j=N.useCallback(X=>{var _e,Te,Be,je;(Te=(_e=St.current)==null?void 0:_e.wake)==null||Te.call(_e);const ee=(Be=S==null?void 0:S.session)==null?void 0:Be.name,me=(je=S==null?void 0:S.window)==null?void 0:je.id;ee&&me&&H(jw(ee,me,X))},[S]),Y=N.useCallback(X=>{$(va().includes(X)?Pw(X):Iw(X))},[]),le=N.useCallback(X=>{var _e,Te;const ee=(_e=S==null?void 0:S.session)==null?void 0:_e.name,me=(Te=S==null?void 0:S.window)==null?void 0:Te.id;ee&&me&&H(Fw(ee,me,X))},[S]),Me=((Sh=(yh=S==null?void 0:S.panes)==null?void 0:yh.find(X=>X.id===S.paneId))==null?void 0:Sh.cwd)||null,Le=async X=>{if(iy(X)){const me=X.split("/").pop()||X;if(T.tabs.some(Te=>Te.key===X)){T.openDoc(X,{type:"image",name:me}),h(!0);return}const _e=await Ty(X);T.openDoc(X,{type:"image",name:me,content:_e}),Jd({path:X,name:me,type:"image",ts:Date.now()}),h(!0);return}const ee=await _y(X);T.openDoc(X,{type:ee.type,name:ee.name,content:ee.content}),Jd({path:X,name:ee.name,type:ee.type,ts:Date.now()}),h(!0)},Ue=X=>{const ee=T.tabs.find(me=>me.key===X);(ee==null?void 0:ee.type)==="image"&&ee.content&&URL.revokeObjectURL(ee.content),T.closeTab(X)},rt=X=>{const ee=/-> (\d+)/.exec((X==null?void 0:X.message)||""),me=ee?Number(ee[1]):0;return D(me===404?"app.docNotFound":me===413?"app.docTooLarge":me===400?"app.docUnsupported":"app.docOpenFailed")},Xt=async X=>{if(Zg(X)){try{await Le(X)}catch(me){E(rt(me))}return}const ee=Zd(S==null?void 0:S.paneId)??Me;if(ee)try{await Le(js(ee,X));return}catch{}L({rawPath:X})},fi=async X=>{try{await Le(js(X,C.rawPath))}catch(ee){E(rt(ee));return}S!=null&&S.paneId&&zw(S.paneId,X),setTimeout(()=>L(null),0)},zr=(X,ee,me)=>I({path:X,x:ee,y:me}),kt=X=>{I(null),Xt(X)};if(N.useEffect(()=>{if(!x)return;const X=setTimeout(()=>E(null),4e3);return()=>clearTimeout(X)},[x]),N.useEffect(()=>{if(e)return;const X=Xs();if(!X.length){K(!1);return}let ee=!1;return(async()=>{try{const me=await br();if(ee||!me.length)return;const _e=me.filter(We=>X.includes(We.name));if(!_e.length)return;const Te=Qf();let Be=Te.session?_e.find(We=>We.name===Te.session):null;const je=Be?{window:Te.window,pane:Te.pane}:null;if(!Be){const We=Dw();We&&(Be=_e.find(pi=>pi.id===We))}Be||(Be=_e[0]),ee||await Ct(Be,je)}catch(me){me instanceof it&&t(!0)}finally{ee||K(!1)}})(),()=>{ee=!0}},[e,Ct]),N.useEffect(()=>{if(e)return;let X=!1,ee=null;const me=async()=>{if(!document.hidden)try{const Be=await Sy(A);X||re(Be||{})}catch{}},_e=()=>{me(),ee=setTimeout(_e,5e3)};_e();const Te=()=>{document.hidden||(clearTimeout(ee),_e())};return document.addEventListener("visibilitychange",Te),()=>{X=!0,clearTimeout(ee),document.removeEventListener("visibilitychange",Te)}},[e,A]),N.useEffect(()=>{if(at!=null)return;const X=lf(ae);X>0&&(Yd(X),Ft(X))},[ae,at]),N.useEffect(()=>{if(e)return;let X=!1,ee=null;const me=async()=>{if(!document.hidden)try{const Be=await tf();X||we(Array.isArray(Be)?Be:[])}catch{}},_e=()=>{me(),ee=setTimeout(_e,15e3)};_e();const Te=()=>{document.hidden||(clearTimeout(ee),_e())};return document.addEventListener("visibilitychange",Te),()=>{X=!0,clearTimeout(ee),document.removeEventListener("visibilitychange",Te)}},[e]),e)return v.jsx(zS,{onSaved:()=>{t(!1),K(!0)}});const Ur=Qy(ae,qe,at??1/0),Qn=t1(Ur),ch={};for(const X of Object.values(ae))X.window&&X.agent&&(ch[X.window]=X.agent);const uh=!!xo&&Oe!==xo,P_=!!(he!=null&&he.updateAvailable)&&he.latest!==Re,O_=uh||P_,B_=()=>{u(!0),he!=null&&he.latest&&(Zw(he.latest),Ee(he.latest))},j_=()=>{u(!1),be(!0),Xw(xo),ie(xo)};return v.jsxs("div",{className:"app",style:dt?{transform:`translateY(-${dt}px)`}:void 0,children:[v.jsxs("header",{className:"topbar",children:[v.jsx("button",{className:"hamburger",onClick:()=>s(!0),children:"☰"}),v.jsx("span",{className:"session-name",...$i,children:((bh=S==null?void 0:S.session)==null?void 0:bh.name)??"—"}),Pe&&v.jsx("button",{className:"topbar-icon preview-live",onClick:()=>P(!0),"aria-label":D("app.preview"),title:D("app.openPreview"),children:v.jsx(Nc,{})}),v.jsxs("button",{className:"topbar-icon",onClick:()=>Ce(!0),"aria-label":D("app.ideas"),title:D("app.ideas"),disabled:!S,children:[v.jsx(Fy,{}),de>0&&v.jsx("span",{className:"idea-badge",children:de})]}),v.jsx(ZS,{rows:Ur,top:Qn,open:pe,onToggle:()=>He(X=>!X),onClose:()=>He(!1),onSelectRow:W,onMarkAllRead:Ne,hooksStatus:Ve,onEnableHooks:ce}),v.jsx("button",{className:"topbar-icon",onClick:()=>r(!0),"aria-label":D("usage.title"),title:D("usage.title"),children:v.jsx(Ky,{})}),v.jsx("button",{className:"topbar-icon",onClick:()=>h(!0),"aria-label":D("app.files"),title:D("app.files"),children:v.jsx(Hn,{})}),v.jsx("button",{className:"topbar-icon",onClick:()=>d(!0),"aria-label":"Git",title:"Git",children:v.jsx(Wg,{})}),v.jsxs("button",{className:"topbar-icon",onClick:B_,"aria-label":D("app.settings"),title:D("app.settings"),children:[v.jsx(Mc,{}),O_&&v.jsx("span",{className:"topbar-dot","aria-hidden":"true"})]})]}),v.jsx(JS,{open:p,onClose:()=>r(!1),onAuthFail:Ie}),v.jsx(GS,{open:n,onClose:()=>u(!1),termRef:St,getColCount:()=>{var X,ee;return Je.current??((ee=(X=St.current)==null?void 0:X.getSize())==null?void 0:ee.cols)},onColAdjust:X=>Yt(X),onColRestore:Di,onOpenChangelog:j_,changelogUnread:uh,updateInfo:he,activePreview:Pe,pane:S==null?void 0:S.paneId,lastPreviewDir:Rw((xh=S==null?void 0:S.window)==null?void 0:xh.id),dynamicEnabled:se,onStartPreview:Ht,onStartDynamicPreview:Hi,onOpenPreview:Nt,onRenew:Xe,onStop:Ji}),v.jsx(Gx,{open:ge,onClose:()=>be(!1)}),v.jsx(f1,{open:i,currentSessionName:(Ch=S==null?void 0:S.session)==null?void 0:Ch.name,bound:A,onSelectSession:Dt,onUnbind:vt,onBind:()=>f(!0),onClose:()=>s(!1),onLogout:xt,orphans:Se,onTakeoverRequest:Ae}),v.jsx(nb,{open:o,bound:A,onBound:Ke,onClose:()=>f(!1),onAuthFail:Ie,inset:dt}),v.jsx(ab,{open:_,onClose:()=>c(!1),onCreate:$t,paneId:S==null?void 0:S.paneId,inset:dt}),v.jsx(cb,{open:!!m,title:(m==null?void 0:m.kind)==="session"?D("app.renameSession"):D("app.renameWindow"),currentName:(m==null?void 0:m.name)||"",onClose:()=>y(null),onSubmit:Zi,inset:dt}),v.jsx(QS,{open:!!De,orphan:De,onConfirm:ne,onClose:()=>Ae(null),inset:dt}),v.jsx(th,{open:!!b,title:b?b.name||b.id:"",onClose:()=>g(null),actions:b?[...S&&S.windows.length>1?[[{key:"move-left",label:D("app.moveLeft"),disabled:!Ll(S.windows,b.id,"left"),onClick:()=>Ai("left")},{key:"move-right",label:D("app.moveRight"),disabled:!Ll(S.windows,b.id,"right"),onClick:()=>Ai("right")}]]:[],{key:"rename",label:D("common.rename"),onClick:()=>{y({kind:"window",id:b.id,name:b.name||""}),g(null)}},{key:"delete",label:D("app.deleteWindow"),danger:!0,confirm:!0,confirmLabel:S&&S.windows.length<=1?D("app.deleteLastWindowConfirm"):D("app.deleteConfirm"),onClick:hs}]:[]}),v.jsx(Nx,{open:a,pane:S==null?void 0:S.paneId,windowId:(kh=S==null?void 0:S.window)==null?void 0:kh.id,tabs:T.tabs,active:T.active,onActivate:T.activate,onCloseTab:Ue,onMinimize:()=>h(!1),onOpenDoc:Xt,pendingShare:w,onPendingConsumed:()=>k(null)}),v.jsx(Ox,{open:l,pane:S==null?void 0:S.paneId,windowId:(Eh=S==null?void 0:S.window)==null?void 0:Eh.id,inset:dt,onClose:()=>d(!1)}),v.jsx($x,{}),v.jsx(Xy,{open:z&&!!Pe,name:Pe==null?void 0:Pe.name,kind:Pe==null?void 0:Pe.kind,domain:G,port:Pe==null?void 0:Pe.port,dir:Pe==null?void 0:Pe.dir,expiresAt:Pe==null?void 0:Pe.expiresAt,onRenew:Xe,onStop:Ji,onMinimize:()=>P(!1)}),x&&v.jsx("div",{className:"doc-toast",role:"alert",onClick:()=>E(null),children:x}),R&&v.jsx(zx,{path:R.path,x:R.x,y:R.y,onOpen:kt,onClose:()=>I(null)}),v.jsx(Kx,{open:fe,session:(Lh=S==null?void 0:S.session)==null?void 0:Lh.name,window:((Rh=S==null?void 0:S.window)==null?void 0:Rh.name)||((Th=S==null?void 0:S.window)==null?void 0:Th.id),onClose:()=>Ce(!1),onSend:X=>{var ee;(ee=si.current)==null||ee.fill(X),Ce(!1)},onCountChange:q}),v.jsx(Xn,{open:!!C,seedCwd:Zd(S==null?void 0:S.paneId)??Me??null,pane:(S==null?void 0:S.paneId)??null,hint:C?v.jsxs(v.Fragment,{children:[D("app.cannotLocate")," ",v.jsx("code",{children:C.rawPath}),D("app.pickItsDir")]}):null,onPick:fi,onClose:()=>L(null),inset:dt}),S?v.jsxs(v.Fragment,{children:[v.jsx(v1,{windows:S.windows,windowAgents:ch,currentAgent:(Dh=ae[S.paneId])==null?void 0:Dh.agent,currentWindowId:S.window.id,panes:S.panes,currentPaneId:S.paneId,onSelectWindow:pt,onSelectPane:It,onNewWindow:()=>c(!0),onManageWindow:X=>g(X),trackWindowId:b==null?void 0:b.id}),S.paneId&&v.jsx(G1,{ref:St,pane:S.paneId,onAuthFail:Ie,onDocLinkTap:zr},S.paneId),v.jsx($S,{ref:si,pane:S.paneId,onAuthFail:Ie,onKey:hi,onText:di,cwd:Me,agent:(Ah=ae[S.paneId])==null?void 0:Ah.agent,windowId:(Mh=S.window)==null?void 0:Mh.id,recent:V,favorites:U,onSent:j,onToggleFav:Y,onRemoveRecent:le,inset:dt})]}):Z?v.jsx("div",{className:"loading",children:D("common.loading")}):A.length===0?v.jsxs("button",{className:"empty-cta",onClick:()=>f(!0),children:[D("app.noBoundSession"),v.jsx("span",{children:D("app.tapToBind")})]}):v.jsx("div",{className:"loading",children:D("app.selectSessionHint")})]})}function tC(){typeof navigator>"u"||!("serviceWorker"in navigator)||window.addEventListener("load",()=>{navigator.serviceWorker.register("/sw.js").catch(()=>{})})}fg(document.getElementById("root")).render(v.jsx(eC,{}));tC();if(typeof window<"u"&&window.__hideBootSplash){const e=[...document.querySelectorAll('link[rel="stylesheet"]')].filter(i=>i.media==="print"),t=e.length?new Promise(i=>{let s=e.length;e.forEach(n=>n.addEventListener("load",()=>{--s||i()},{once:!0}))}):Promise.resolve();requestAnimationFrame(()=>requestAnimationFrame(()=>t.then(()=>window.__hideBootSplash())))}
|