@arcgis/coding-components 4.33.0-next.113 → 4.33.0-next.118
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/arcgis-coding-components/{Y4E5KXRD.js → 3LQOKSAV.js} +2 -2
- package/dist/arcgis-coding-components/{FWOL7XJ6.js → 43TTYUY5.js} +2 -2
- package/dist/arcgis-coding-components/{D6OEFRDL.js → 5ZFPB6CX.js} +3 -3
- package/dist/arcgis-coding-components/6QOBTH3F.js +6 -0
- package/dist/arcgis-coding-components/{D36TSHA6.js → 7T7RUMAF.js} +2 -2
- package/dist/arcgis-coding-components/{ATAHSCXX.js → AT7KVIFU.js} +2 -2
- package/dist/arcgis-coding-components/{PXGPEHOG.js → AZAAQDZG.js} +2 -2
- package/dist/arcgis-coding-components/{M2ZSAVWR.js → BWBCNI5M.js} +2 -2
- package/dist/arcgis-coding-components/{QL4U72TD.js → C665OLOV.js} +2 -2
- package/dist/arcgis-coding-components/{WH6GI2EM.js → CEGCBXPE.js} +2 -2
- package/dist/arcgis-coding-components/{YNKF2ANW.js → CZ3WUWWX.js} +4 -4
- package/dist/arcgis-coding-components/{E2WOU6J3.js → DCIIAWLX.js} +2 -2
- package/dist/arcgis-coding-components/{EQ4NHEFS.js → F7RPYHEW.js} +2 -2
- package/dist/arcgis-coding-components/{HJPYOFS7.js → H5W2T56K.js} +2 -2
- package/dist/arcgis-coding-components/{X76AHYCV.js → HIVZFUI2.js} +2 -2
- package/dist/arcgis-coding-components/{J4GTJ52M.js → I2BQWID4.js} +1 -1
- package/dist/arcgis-coding-components/{XPL7LVJM.js → J264BPA3.js} +2 -2
- package/dist/arcgis-coding-components/{Y3M3OYZA.js → JCR4SVWX.js} +2 -2
- package/dist/arcgis-coding-components/{5FOBE57H.js → LRVB3KER.js} +2 -2
- package/dist/arcgis-coding-components/{637ZZ76I.js → M5K3LHDP.js} +2 -2
- package/dist/arcgis-coding-components/{HVJYQH5R.js → MNYSCM7W.js} +2 -2
- package/dist/arcgis-coding-components/{TRTQJARO.js → NUS5NEL5.js} +2 -2
- package/dist/arcgis-coding-components/{K26BVWRQ.js → NZELXR7C.js} +1 -1
- package/dist/arcgis-coding-components/{MXAWGLTP.js → PMBLXERA.js} +1 -1
- package/dist/arcgis-coding-components/{RW6UFJLL.js → RFXDLUCG.js} +2 -2
- package/dist/arcgis-coding-components/{2F4FMIF6.js → RTIEIFLC.js} +2 -2
- package/dist/arcgis-coding-components/{LQFN4O5K.js → S756BVFO.js} +2 -2
- package/dist/arcgis-coding-components/{63CSZC23.js → SL7ZCFUE.js} +2 -2
- package/dist/arcgis-coding-components/{A2JL4JJH.js → SOHYNVWW.js} +2 -2
- package/dist/arcgis-coding-components/{ONGZFPBL.js → TCVX7VNJ.js} +2 -2
- package/dist/arcgis-coding-components/{OOOBT45H.js → TQM6GSU6.js} +3 -3
- package/dist/arcgis-coding-components/{GTZSYHJ2.js → UA3GE7XQ.js} +2 -2
- package/dist/arcgis-coding-components/{WPNDAJJU.js → UXHMASDH.js} +1 -1
- package/dist/arcgis-coding-components/{3YH3AXDK.js → VL72QXC6.js} +2 -2
- package/dist/arcgis-coding-components/{PBLWGSJB.js → W67LIMM2.js} +2 -2
- package/dist/arcgis-coding-components/{RDH7LRSF.js → WFB2FKIX.js} +2 -2
- package/dist/arcgis-coding-components/{ULJLGJJH.js → XRUVGV66.js} +2 -2
- package/dist/arcgis-coding-components/{RGEYKZXT.js → Y4PCL636.js} +2 -2
- package/dist/arcgis-coding-components/{YLUIWR5O.js → YZFN5UJD.js} +2 -2
- package/dist/arcgis-coding-components/arcgis-coding-components.esm.js +2 -2
- package/dist/arcgis-coding-components/assets/code-editor/sql-expr.worker.js +67 -327
- package/dist/arcgis-coding-components/assets/code-editor/ts.worker.js +7 -7
- package/dist/chunks/arcade-defaults.js +1 -1
- package/dist/chunks/arcade-executor.js +1 -1
- package/dist/chunks/arcade-mode.js +1 -1
- package/dist/chunks/arcade-service-accessors.js +1 -1
- package/dist/chunks/fields.js +1 -1
- package/dist/chunks/language-defaults-base.js +1 -1
- package/dist/chunks/markdown.js +1 -1
- package/dist/chunks/monaco-importer.js +1 -1
- package/dist/chunks/runtime.js +1 -1
- package/dist/chunks/setup-monaco.js +1 -1
- package/dist/chunks/sql-expr-contribution.js +3 -23
- package/dist/chunks/sql-expr-defaults.js +1 -1
- package/dist/chunks/sql-expr-mode.js +1 -1
- package/dist/chunks/useT9n.js +1 -1
- package/dist/components/arcgis-arcade-coding-assistant/customElement.js +1 -1
- package/dist/components/arcgis-arcade-editor/customElement.js +1 -1
- package/dist/components/arcgis-arcade-results/customElement.js +1 -1
- package/dist/components/arcgis-arcade-suggestions/customElement.js +1 -1
- package/dist/components/arcgis-code-editor/customElement.js +1 -1
- package/dist/components/arcgis-editor-variables/customElement.js +1 -1
- package/dist/components/arcgis-language-api-panel/customElement.js +1 -1
- package/dist/components/arcgis-sql-expression-editor/customElement.js +1 -1
- package/dist/components/arcgis-sql-expression-fields/customElement.js +1 -1
- package/dist/docs/api.json +4 -12
- package/dist/docs/docs.json +3 -3
- package/dist/docs/vscode.html-custom-data.json +1 -9
- package/dist/docs/web-types.json +1 -1
- package/dist/index.js +1 -1
- package/dist/loader.js +1 -1
- package/package.json +7 -7
- package/dist/arcgis-coding-components/VVRY7PDT.js +0 -6
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*! All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
2
2
|
See https://js.arcgis.com/4.33/esri/copyright.txt for details.
|
|
3
|
-
v4.33.0-next.
|
|
4
|
-
import{a as c9,b as $,d as NK}from"./J4GTJ52M.js";function ws(n,e=0){return n[n.length-(1+e)]}function u9(n){if(n.length===0)throw new Error("Invalid tail call");return[n.slice(0,n.length-1),n[n.length-1]]}function xt(n,e,t=(i,o)=>i===o){if(n===e)return!0;if(!n||!e||n.length!==e.length)return!1;for(let i=0,o=n.length;i<o;i++)if(!t(n[i],e[i]))return!1;return!0}function f9(n,e){let t=n.length-1;e<t&&(n[e]=n[t]),n.pop()}function g9(n,e,t){return MK(n.length,i=>t(n[i],e))}function MK(n,e){let t=0,i=n-1;for(;t<=i;){let o=(t+i)/2|0,s=e(o);if(s<0)t=o+1;else if(s>0)i=o-1;else return o}return-(t+1)}function d9(n,e,t){if(n=n|0,n>=e.length)throw new TypeError("invalid index");let i=e[Math.floor(e.length*Math.random())],o=[],s=[],r=[];for(let a of e){let l=t(a,i);l<0?o.push(a):l>0?s.push(a):r.push(a)}return n<o.length?d9(n,o,t):n<o.length+r.length?r[0]:d9(n-(o.length+r.length),s,t)}function ioe(n,e){let t=[],i;for(let o of n.slice(0).sort(e))!i||e(i[0],o)!==0?(i=[o],t.push(i)):i.push(o);return t}function*Vf(n,e){let t,i;for(let o of n)i!==void 0&&e(i,o)?t.push(o):(t&&(yield t),t=[o]),i=o;t&&(yield t)}function w0(n,e){for(let t=0;t<=n.length;t++)e(t===0?void 0:n[t-1],t===n.length?void 0:n[t])}function m9(n,e){for(let t=0;t<n.length;t++)e(t===0?void 0:n[t-1],n[t],t+1===n.length?void 0:n[t+1])}function Hf(n){return n.filter(e=>!!e)}function U2(n){let e=0;for(let t=0;t<n.length;t++)n[t]&&(n[e]=n[t],e+=1);n.length=e}function p9(n){return!Array.isArray(n)||n.length===0}function Rh(n){return Array.isArray(n)&&n.length>0}function fr(n,e=t=>t){let t=new Set;return n.filter(i=>{let o=e(i);return t.has(o)?!1:(t.add(o),!0)})}function Uf(n,e){return n.length>0?n[0]:e}function Nn(n,e){let t=typeof e=="number"?n:0;typeof e=="number"?t=n:(t=0,e=n);let i=[];if(t<=e)for(let o=t;o<e;o++)i.push(o);else for(let o=t;o>e;o--)i.push(o);return i}function Xc(n,e,t){let i=n.slice(0,e),o=n.slice(e);return i.concat(t,o)}function C0(n,e){let t=n.indexOf(e);t>-1&&(n.splice(t,1),n.unshift(e))}function u_(n,e){let t=n.indexOf(e);t>-1&&(n.splice(t,1),n.push(e))}function f_(n,e){for(let t of e)n.push(t)}function _9(n){return Array.isArray(n)?n:[n]}function AK(n,e,t){let i=b9(n,e),o=n.length,s=t.length;n.length=o+s;for(let r=o-1;r>=i;r--)n[r+s]=n[r];for(let r=0;r<s;r++)n[r+i]=t[r]}function $2(n,e,t,i){let o=b9(n,e),s=n.splice(o,t);return s===void 0&&(s=[]),AK(n,o,i),s}function b9(n,e){return e<0?Math.max(e+n.length,0):Math.min(e,n.length)}function go(n,e){return(t,i)=>e(n(t),n(i))}function v9(...n){return(e,t)=>{for(let i of n){let o=i(e,t);if(!h_.isNeitherLessOrGreaterThan(o))return o}return h_.neitherLessOrGreaterThan}}function C9(n){return(e,t)=>-n(e,t)}var h_,Gr,w9,eo,Ql,h9,tt=$(()=>{(function(n){function e(s){return s<0}n.isLessThan=e;function t(s){return s<=0}n.isLessThanOrEqual=t;function i(s){return s>0}n.isGreaterThan=i;function o(s){return s===0}n.isNeitherLessOrGreaterThan=o,n.greaterThan=1,n.lessThan=-1,n.neitherLessOrGreaterThan=0})(h_||(h_={}));Gr=(n,e)=>n-e,w9=(n,e)=>Gr(n?1:0,e?1:0);eo=class{constructor(e){this.items=e,this.firstIdx=0,this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(e){let t=this.firstIdx;for(;t<this.items.length&&e(this.items[t]);)t++;let i=t===this.firstIdx?null:this.items.slice(this.firstIdx,t);return this.firstIdx=t,i}takeFromEndWhile(e){let t=this.lastIdx;for(;t>=0&&e(this.items[t]);)t--;let i=t===this.lastIdx?null:this.items.slice(t+1,this.lastIdx+1);return this.lastIdx=t,i}peek(){if(this.length!==0)return this.items[this.firstIdx]}dequeue(){let e=this.items[this.firstIdx];return this.firstIdx++,e}takeCount(e){let t=this.items.slice(this.firstIdx,this.firstIdx+e);return this.firstIdx+=e,t}},Ql=class n{static{this.empty=new n(e=>{})}constructor(e){this.iterate=e}toArray(){let e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(e){return new n(t=>this.iterate(i=>e(i)?t(i):!0))}map(e){return new n(t=>this.iterate(i=>t(e(i))))}findLast(e){let t;return this.iterate(i=>(e(i)&&(t=i),!0)),t}findLastMaxBy(e){let t,i=!0;return this.iterate(o=>((i||h_.isGreaterThan(e(o,t)))&&(i=!1,t=o),!0)),t}},h9=class n{constructor(e){this._indexMap=e}static createSortPermutation(e,t){let i=Array.from(e.keys()).sort((o,s)=>t(e[o],e[s]));return new n(i)}apply(e){return e.map((t,i)=>e[this._indexMap[i]])}inverse(){let e=this._indexMap.slice();for(let t=0;t<this._indexMap.length;t++)e[this._indexMap[t]]=t;return new n(e)}}});function fn(n){return typeof n=="string"}function Ci(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)&&!(n instanceof RegExp)&&!(n instanceof Date)}function y9(n){let e=Object.getPrototypeOf(Uint8Array);return typeof n=="object"&&n instanceof e}function Zr(n){return typeof n=="number"&&!isNaN(n)}function q2(n){return!!n&&typeof n[Symbol.iterator]=="function"}function y0(n){return n===!0||n===!1}function mo(n){return typeof n>"u"}function Xl(n){return!Vn(n)}function Vn(n){return mo(n)||n===null}function Cs(n,e){if(!n)throw new Error(e?`Unexpected type, expected '${e}'`:"Unexpected type")}function S0(n){if(Vn(n))throw new Error("Assertion Failed: argument is undefined or null");return n}function $f(n){return typeof n=="function"}function S9(n,e){let t=Math.min(n.length,e.length);for(let i=0;i<t;i++)RK(n[i],e[i])}function RK(n,e){if(fn(e)){if(typeof n!==e)throw new Error(`argument does not match constraint: typeof ${e}`)}else if($f(e)){try{if(n instanceof e)return}catch{}if(!Vn(n)&&n.constructor===e||e.length===1&&e.call(void 0,n)===!0)return;throw new Error("argument does not match one of these constraints: arg instanceof constraint, arg.constructor === constraint, nor constraint(arg) === true")}}var pi=$(()=>{});function Ha(n){if(!n||typeof n!="object"||n instanceof RegExp)return n;let e=Array.isArray(n)?[]:{};return Object.entries(n).forEach(([t,i])=>{e[t]=i&&typeof i=="object"?Ha(i):i}),e}function x9(n){if(!n||typeof n!="object")return n;let e=[n];for(;e.length>0;){let t=e.shift();Object.freeze(t);for(let i in t)if(L9.call(t,i)){let o=t[i];typeof o=="object"&&!Object.isFrozen(o)&&!y9(o)&&e.push(o)}}return n}function x0(n,e){return K2(n,e,new Set)}function K2(n,e,t){if(Vn(n))return n;let i=e(n);if(typeof i<"u")return i;if(Array.isArray(n)){let o=[];for(let s of n)o.push(K2(s,e,t));return o}if(Ci(n)){if(t.has(n))throw new Error("Cannot clone recursive data-structure");t.add(n);let o={};for(let s in n)L9.call(n,s)&&(o[s]=K2(n[s],e,t));return t.delete(n),o}return n}function PK(n,e,t=!0){return Ci(n)?(Ci(e)&&Object.keys(e).forEach(i=>{i in n?t&&(Ci(n[i])&&Ci(e[i])?PK(n[i],e[i],t):n[i]=e[i]):n[i]=e[i]}),n):e}function Gi(n,e){if(n===e)return!0;if(n==null||e===null||e===void 0||typeof n!=typeof e||typeof n!="object"||Array.isArray(n)!==Array.isArray(e))return!1;let t,i;if(Array.isArray(n)){if(n.length!==e.length)return!1;for(t=0;t<n.length;t++)if(!Gi(n[t],e[t]))return!1}else{let o=[];for(i in n)o.push(i);o.sort();let s=[];for(i in e)s.push(i);if(s.sort(),!Gi(o,s))return!1;for(t=0;t<o.length;t++)if(!Gi(n[o[t]],e[o[t]]))return!1}return!0}function OK(n){let e=[];for(;Object.prototype!==n;)e=e.concat(Object.getOwnPropertyNames(n)),n=Object.getPrototypeOf(n);return e}function g_(n){let e=[];for(let t of OK(n))typeof n[t]=="function"&&e.push(t);return e}function k9(n,e){let t=o=>function(){let s=Array.prototype.slice.call(arguments,0);return e(o,s)},i={};for(let o of n)i[o]=t(o);return i}var L9,ys=$(()=>{pi();L9=Object.prototype.hasOwnProperty});function m_(){return globalThis._VSCODE_NLS_MESSAGES}function Ph(){return globalThis._VSCODE_NLS_LANGUAGE}var j2=$(()=>{});function k0(n,e){let t;return e.length===0?t=n:t=n.replace(/\{(\d+)\}/g,(i,o)=>{let s=o[0],r=e[s],a=i;return typeof r=="string"?a=r:(typeof r=="number"||typeof r=="boolean"||r===void 0||r===null)&&(a=String(r)),a}),FK&&(t="\uFF3B"+t.replace(/[aouei]/g,"$&$&")+"\uFF3D"),t}function p(n,e,...t){return k0(typeof n=="number"?D9(n,e):e,t)}function D9(n,e){let t=m_()?.[n];if(typeof t!="string"){if(typeof e=="string")return e;throw new Error(`!!! NLS MISSING: ${n} !!!`)}return t}function roe(n,e,...t){let i;typeof n=="number"?i=D9(n,e):i=e;let o=k0(i,t);return{value:o,original:e===i?o:k0(e,t)}}var FK,ke=$(()=>{j2();j2();FK=Ph()==="pseudo"||typeof document<"u"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0});function P9(){if(!T9){T9=!0;let n=new Uint8Array(2);n[0]=1,n[1]=2,I9=new Uint16Array(n.buffer)[0]===513}return I9}var qf,__,b_,p_,BK,N9,Z2,WK,Y2,zK,M9,D0,E0,E9,VK,Jl,ec,Vs,A9,HK,G2,_i,De,oi,ed,$a,UK,R9,Ss,I0,Ua,loe,$K,T0,to,I9,T9,Q2,O9,F9,B9,W9,dt=$(()=>{ke();qf="en",__=!1,b_=!1,p_=!1,BK=!1,N9=!1,Z2=!1,WK=!1,Y2=!1,zK=!1,M9=!1,E0=qf,E9=qf,ec=globalThis;typeof ec.vscode<"u"&&typeof ec.vscode.process<"u"?Vs=ec.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(Vs=process);A9=typeof Vs?.versions?.electron=="string",HK=A9&&Vs?.type==="renderer";if(typeof Vs=="object"){__=Vs.platform==="win32",b_=Vs.platform==="darwin",p_=Vs.platform==="linux",BK=p_&&!!Vs.env.SNAP&&!!Vs.env.SNAP_REVISION,WK=A9,zK=!!Vs.env.CI||!!Vs.env.BUILD_ARTIFACTSTAGINGDIRECTORY,D0=qf,E0=qf;let n=Vs.env.VSCODE_NLS_CONFIG;if(n)try{let e=JSON.parse(n);D0=e.userLocale,E9=e.osLocale,E0=e.resolvedLanguage||qf,VK=e.languagePack?.translationsConfigFile}catch{}N9=!0}else typeof navigator=="object"&&!HK?(Jl=navigator.userAgent,__=Jl.indexOf("Windows")>=0,b_=Jl.indexOf("Macintosh")>=0,Y2=(Jl.indexOf("Macintosh")>=0||Jl.indexOf("iPad")>=0||Jl.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,p_=Jl.indexOf("Linux")>=0,M9=Jl?.indexOf("Mobi")>=0,Z2=!0,E0=Ph()||qf,D0=navigator.language.toLowerCase(),E9=D0):console.error("Unable to resolve platform.");G2=0;b_?G2=1:__?G2=3:p_&&(G2=2);_i=__,De=b_,oi=p_,ed=N9,$a=Z2,UK=Z2&&typeof ec.importScripts=="function",R9=UK?ec.origin:void 0,Ss=Y2,I0=M9,Ua=Jl,loe=E0,$K=typeof ec.postMessage=="function"&&!ec.importScripts,T0=(()=>{if($K){let n=[];ec.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let i=0,o=n.length;i<o;i++){let s=n[i];if(s.id===t.data.vscodeScheduleAsyncWork){n.splice(i,1),s.callback();return}}});let e=0;return t=>{let i=++e;n.push({id:i,callback:t}),ec.postMessage({vscodeScheduleAsyncWork:i},"*")}}return n=>setTimeout(n)})(),to=b_||Y2?2:__?1:3,I9=!0,T9=!1;Q2=!!(Ua&&Ua.indexOf("Chrome")>=0),O9=!!(Ua&&Ua.indexOf("Firefox")>=0),F9=!!(!Q2&&Ua&&Ua.indexOf("Safari")>=0),B9=!!(Ua&&Ua.indexOf("Edg/")>=0),W9=!!(Ua&&Ua.indexOf("Android")>=0)});var Zi,v_=$(()=>{Zi={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}}});var Qe,Hs=$(()=>{(function(n){function e(w){return w&&typeof w=="object"&&typeof w[Symbol.iterator]=="function"}n.is=e;let t=Object.freeze([]);function i(){return t}n.empty=i;function*o(w){yield w}n.single=o;function s(w){return e(w)?w:o(w)}n.wrap=s;function r(w){return w||t}n.from=r;function*a(w){for(let S=w.length-1;S>=0;S--)yield w[S]}n.reverse=a;function l(w){return!w||w[Symbol.iterator]().next().done===!0}n.isEmpty=l;function c(w){return w[Symbol.iterator]().next().value}n.first=c;function d(w,S){let L=0;for(let x of w)if(S(x,L++))return!0;return!1}n.some=d;function h(w,S){for(let L of w)if(S(L))return L}n.find=h;function*u(w,S){for(let L of w)S(L)&&(yield L)}n.filter=u;function*f(w,S){let L=0;for(let x of w)yield S(x,L++)}n.map=f;function*g(w,S){let L=0;for(let x of w)yield*S(x,L++)}n.flatMap=g;function*m(...w){for(let S of w)yield*S}n.concat=m;function _(w,S,L){let x=L;for(let D of w)x=S(x,D);return x}n.reduce=_;function*b(w,S,L=w.length){for(S<0&&(S+=w.length),L<0?L+=w.length:L>w.length&&(L=w.length);S<L;S++)yield w[S]}n.slice=b;function v(w,S=Number.POSITIVE_INFINITY){let L=[];if(S===0)return[L,w];let x=w[Symbol.iterator]();for(let D=0;D<S;D++){let E=x.next();if(E.done)return[L,n.empty()];L.push(E.value)}return[L,{[Symbol.iterator](){return x}}]}n.consume=v;async function C(w){let S=[];for await(let L of w)S.push(L);return Promise.resolve(S)}n.asyncToArray=C})(Qe||(Qe={}))});var Fi,yi,mr=$(()=>{Fi=class n{static{this.Undefined=new n(void 0)}constructor(e){this.element=e,this.next=n.Undefined,this.prev=n.Undefined}},yi=class{constructor(){this._first=Fi.Undefined,this._last=Fi.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Fi.Undefined}clear(){let e=this._first;for(;e!==Fi.Undefined;){let t=e.next;e.prev=Fi.Undefined,e.next=Fi.Undefined,e=t}this._first=Fi.Undefined,this._last=Fi.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){let i=new Fi(e);if(this._first===Fi.Undefined)this._first=i,this._last=i;else if(t){let s=this._last;this._last=i,i.prev=s,s.next=i}else{let s=this._first;this._first=i,i.next=s,s.prev=i}this._size+=1;let o=!1;return()=>{o||(o=!0,this._remove(i))}}shift(){if(this._first!==Fi.Undefined){let e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Fi.Undefined){let e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Fi.Undefined&&e.next!==Fi.Undefined){let t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===Fi.Undefined&&e.next===Fi.Undefined?(this._first=Fi.Undefined,this._last=Fi.Undefined):e.next===Fi.Undefined?(this._last=this._last.prev,this._last.next=Fi.Undefined):e.prev===Fi.Undefined&&(this._first=this._first.next,this._first.prev=Fi.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Fi.Undefined;)yield e.element,e=e.next}}});function qK(n=""){let e="(-?\\d*\\.\\d\\w*)|([^";for(let t of X2)n.indexOf(t)>=0||(e+="\\"+t);return e+="\\s]+)",new RegExp(e,"g")}function C_(n){let e=w_;if(n&&n instanceof RegExp)if(n.global)e=n;else{let t="g";n.ignoreCase&&(t+="i"),n.multiline&&(t+="m"),n.unicode&&(t+="u"),e=new RegExp(n.source,t)}return e.lastIndex=0,e}function td(n,e,t,i,o){if(e=C_(e),o||(o=Qe.first(z9)),t.length>o.maxLen){let c=n-o.maxLen/2;return c<0?c=0:i+=c,t=t.substring(c,n+o.maxLen/2),td(n,e,t,i,o)}let s=Date.now(),r=n-1-i,a=-1,l=null;for(let c=1;!(Date.now()-s>=o.timeBudget);c++){let d=r-o.windowSize*c;e.lastIndex=Math.max(0,d);let h=KK(e,t,r,a);if(!h&&l||(l=h,d<=0))break;a=d}if(l){let c={word:l[0],startColumn:i+1+l.index,endColumn:i+1+l.index+l[0].length};return e.lastIndex=0,c}return null}function KK(n,e,t,i){let o;for(;o=n.exec(e);){let s=o.index||0;if(s<=t&&n.lastIndex>=t)return o;if(i>0&&s>i)return null}return null}var X2,w_,z9,Kf=$(()=>{Hs();mr();X2="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";w_=qK();z9=new yi;z9.unshift({maxLen:1e3,windowSize:15,timeBudget:150})});function Ue(n){rd(n)||U9.onUnexpectedError(n)}function R0(n){rd(n)||U9.onUnexpectedExternalError(n)}function BT(n){if(n instanceof Error){let{name:e,message:t}=n,i=n.stacktrace||n.stack;return{$isError:!0,name:e,message:t,stack:i,noTelemetry:x_.isErrorNoTelemetry(n)}}return n}function rd(n){return n instanceof pr?!0:n instanceof Error&&n.name===M0&&n.message===M0}function $9(){let n=new Error(M0);return n.name=n.message,n}function ad(n){return n?new Error(`Illegal argument: ${n}`):new Error("Illegal argument")}function Qf(n){return n?new Error(`Illegal state: ${n}`):new Error("Illegal state")}var FT,U9,M0,pr,A0,x_,Ge,ht=$(()=>{FT=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?x_.isErrorNoTelemetry(e)?new x_(e.message+`
|
|
3
|
+
v4.33.0-next.118 */
|
|
4
|
+
import{a as c9,b as $,d as NK}from"./I2BQWID4.js";function ws(n,e=0){return n[n.length-(1+e)]}function u9(n){if(n.length===0)throw new Error("Invalid tail call");return[n.slice(0,n.length-1),n[n.length-1]]}function xt(n,e,t=(i,o)=>i===o){if(n===e)return!0;if(!n||!e||n.length!==e.length)return!1;for(let i=0,o=n.length;i<o;i++)if(!t(n[i],e[i]))return!1;return!0}function f9(n,e){let t=n.length-1;e<t&&(n[e]=n[t]),n.pop()}function g9(n,e,t){return MK(n.length,i=>t(n[i],e))}function MK(n,e){let t=0,i=n-1;for(;t<=i;){let o=(t+i)/2|0,s=e(o);if(s<0)t=o+1;else if(s>0)i=o-1;else return o}return-(t+1)}function d9(n,e,t){if(n=n|0,n>=e.length)throw new TypeError("invalid index");let i=e[Math.floor(e.length*Math.random())],o=[],s=[],r=[];for(let a of e){let l=t(a,i);l<0?o.push(a):l>0?s.push(a):r.push(a)}return n<o.length?d9(n,o,t):n<o.length+r.length?r[0]:d9(n-(o.length+r.length),s,t)}function ioe(n,e){let t=[],i;for(let o of n.slice(0).sort(e))!i||e(i[0],o)!==0?(i=[o],t.push(i)):i.push(o);return t}function*Vf(n,e){let t,i;for(let o of n)i!==void 0&&e(i,o)?t.push(o):(t&&(yield t),t=[o]),i=o;t&&(yield t)}function w0(n,e){for(let t=0;t<=n.length;t++)e(t===0?void 0:n[t-1],t===n.length?void 0:n[t])}function m9(n,e){for(let t=0;t<n.length;t++)e(t===0?void 0:n[t-1],n[t],t+1===n.length?void 0:n[t+1])}function Hf(n){return n.filter(e=>!!e)}function U2(n){let e=0;for(let t=0;t<n.length;t++)n[t]&&(n[e]=n[t],e+=1);n.length=e}function p9(n){return!Array.isArray(n)||n.length===0}function Rh(n){return Array.isArray(n)&&n.length>0}function fr(n,e=t=>t){let t=new Set;return n.filter(i=>{let o=e(i);return t.has(o)?!1:(t.add(o),!0)})}function Uf(n,e){return n.length>0?n[0]:e}function Nn(n,e){let t=typeof e=="number"?n:0;typeof e=="number"?t=n:(t=0,e=n);let i=[];if(t<=e)for(let o=t;o<e;o++)i.push(o);else for(let o=t;o>e;o--)i.push(o);return i}function Xc(n,e,t){let i=n.slice(0,e),o=n.slice(e);return i.concat(t,o)}function C0(n,e){let t=n.indexOf(e);t>-1&&(n.splice(t,1),n.unshift(e))}function u_(n,e){let t=n.indexOf(e);t>-1&&(n.splice(t,1),n.push(e))}function f_(n,e){for(let t of e)n.push(t)}function _9(n){return Array.isArray(n)?n:[n]}function AK(n,e,t){let i=b9(n,e),o=n.length,s=t.length;n.length=o+s;for(let r=o-1;r>=i;r--)n[r+s]=n[r];for(let r=0;r<s;r++)n[r+i]=t[r]}function $2(n,e,t,i){let o=b9(n,e),s=n.splice(o,t);return s===void 0&&(s=[]),AK(n,o,i),s}function b9(n,e){return e<0?Math.max(e+n.length,0):Math.min(e,n.length)}function go(n,e){return(t,i)=>e(n(t),n(i))}function v9(...n){return(e,t)=>{for(let i of n){let o=i(e,t);if(!h_.isNeitherLessOrGreaterThan(o))return o}return h_.neitherLessOrGreaterThan}}function C9(n){return(e,t)=>-n(e,t)}var h_,Gr,w9,eo,Ql,h9,tt=$(()=>{(function(n){function e(s){return s<0}n.isLessThan=e;function t(s){return s<=0}n.isLessThanOrEqual=t;function i(s){return s>0}n.isGreaterThan=i;function o(s){return s===0}n.isNeitherLessOrGreaterThan=o,n.greaterThan=1,n.lessThan=-1,n.neitherLessOrGreaterThan=0})(h_||(h_={}));Gr=(n,e)=>n-e,w9=(n,e)=>Gr(n?1:0,e?1:0);eo=class{constructor(e){this.items=e,this.firstIdx=0,this.lastIdx=this.items.length-1}get length(){return this.lastIdx-this.firstIdx+1}takeWhile(e){let t=this.firstIdx;for(;t<this.items.length&&e(this.items[t]);)t++;let i=t===this.firstIdx?null:this.items.slice(this.firstIdx,t);return this.firstIdx=t,i}takeFromEndWhile(e){let t=this.lastIdx;for(;t>=0&&e(this.items[t]);)t--;let i=t===this.lastIdx?null:this.items.slice(t+1,this.lastIdx+1);return this.lastIdx=t,i}peek(){if(this.length!==0)return this.items[this.firstIdx]}dequeue(){let e=this.items[this.firstIdx];return this.firstIdx++,e}takeCount(e){let t=this.items.slice(this.firstIdx,this.firstIdx+e);return this.firstIdx+=e,t}},Ql=class n{static{this.empty=new n(e=>{})}constructor(e){this.iterate=e}toArray(){let e=[];return this.iterate(t=>(e.push(t),!0)),e}filter(e){return new n(t=>this.iterate(i=>e(i)?t(i):!0))}map(e){return new n(t=>this.iterate(i=>t(e(i))))}findLast(e){let t;return this.iterate(i=>(e(i)&&(t=i),!0)),t}findLastMaxBy(e){let t,i=!0;return this.iterate(o=>((i||h_.isGreaterThan(e(o,t)))&&(i=!1,t=o),!0)),t}},h9=class n{constructor(e){this._indexMap=e}static createSortPermutation(e,t){let i=Array.from(e.keys()).sort((o,s)=>t(e[o],e[s]));return new n(i)}apply(e){return e.map((t,i)=>e[this._indexMap[i]])}inverse(){let e=this._indexMap.slice();for(let t=0;t<this._indexMap.length;t++)e[this._indexMap[t]]=t;return new n(e)}}});function fn(n){return typeof n=="string"}function Ci(n){return typeof n=="object"&&n!==null&&!Array.isArray(n)&&!(n instanceof RegExp)&&!(n instanceof Date)}function y9(n){let e=Object.getPrototypeOf(Uint8Array);return typeof n=="object"&&n instanceof e}function Zr(n){return typeof n=="number"&&!isNaN(n)}function q2(n){return!!n&&typeof n[Symbol.iterator]=="function"}function y0(n){return n===!0||n===!1}function mo(n){return typeof n>"u"}function Xl(n){return!Vn(n)}function Vn(n){return mo(n)||n===null}function Cs(n,e){if(!n)throw new Error(e?`Unexpected type, expected '${e}'`:"Unexpected type")}function S0(n){if(Vn(n))throw new Error("Assertion Failed: argument is undefined or null");return n}function $f(n){return typeof n=="function"}function S9(n,e){let t=Math.min(n.length,e.length);for(let i=0;i<t;i++)RK(n[i],e[i])}function RK(n,e){if(fn(e)){if(typeof n!==e)throw new Error(`argument does not match constraint: typeof ${e}`)}else if($f(e)){try{if(n instanceof e)return}catch{}if(!Vn(n)&&n.constructor===e||e.length===1&&e.call(void 0,n)===!0)return;throw new Error("argument does not match one of these constraints: arg instanceof constraint, arg.constructor === constraint, nor constraint(arg) === true")}}var pi=$(()=>{});function Ha(n){if(!n||typeof n!="object"||n instanceof RegExp)return n;let e=Array.isArray(n)?[]:{};return Object.entries(n).forEach(([t,i])=>{e[t]=i&&typeof i=="object"?Ha(i):i}),e}function x9(n){if(!n||typeof n!="object")return n;let e=[n];for(;e.length>0;){let t=e.shift();Object.freeze(t);for(let i in t)if(L9.call(t,i)){let o=t[i];typeof o=="object"&&!Object.isFrozen(o)&&!y9(o)&&e.push(o)}}return n}function x0(n,e){return K2(n,e,new Set)}function K2(n,e,t){if(Vn(n))return n;let i=e(n);if(typeof i<"u")return i;if(Array.isArray(n)){let o=[];for(let s of n)o.push(K2(s,e,t));return o}if(Ci(n)){if(t.has(n))throw new Error("Cannot clone recursive data-structure");t.add(n);let o={};for(let s in n)L9.call(n,s)&&(o[s]=K2(n[s],e,t));return t.delete(n),o}return n}function PK(n,e,t=!0){return Ci(n)?(Ci(e)&&Object.keys(e).forEach(i=>{i in n?t&&(Ci(n[i])&&Ci(e[i])?PK(n[i],e[i],t):n[i]=e[i]):n[i]=e[i]}),n):e}function Gi(n,e){if(n===e)return!0;if(n==null||e===null||e===void 0||typeof n!=typeof e||typeof n!="object"||Array.isArray(n)!==Array.isArray(e))return!1;let t,i;if(Array.isArray(n)){if(n.length!==e.length)return!1;for(t=0;t<n.length;t++)if(!Gi(n[t],e[t]))return!1}else{let o=[];for(i in n)o.push(i);o.sort();let s=[];for(i in e)s.push(i);if(s.sort(),!Gi(o,s))return!1;for(t=0;t<o.length;t++)if(!Gi(n[o[t]],e[o[t]]))return!1}return!0}function OK(n){let e=[];for(;Object.prototype!==n;)e=e.concat(Object.getOwnPropertyNames(n)),n=Object.getPrototypeOf(n);return e}function g_(n){let e=[];for(let t of OK(n))typeof n[t]=="function"&&e.push(t);return e}function k9(n,e){let t=o=>function(){let s=Array.prototype.slice.call(arguments,0);return e(o,s)},i={};for(let o of n)i[o]=t(o);return i}var L9,ys=$(()=>{pi();L9=Object.prototype.hasOwnProperty});function m_(){return globalThis._VSCODE_NLS_MESSAGES}function Ph(){return globalThis._VSCODE_NLS_LANGUAGE}var j2=$(()=>{});function k0(n,e){let t;return e.length===0?t=n:t=n.replace(/\{(\d+)\}/g,(i,o)=>{let s=o[0],r=e[s],a=i;return typeof r=="string"?a=r:(typeof r=="number"||typeof r=="boolean"||r===void 0||r===null)&&(a=String(r)),a}),FK&&(t="\uFF3B"+t.replace(/[aouei]/g,"$&$&")+"\uFF3D"),t}function p(n,e,...t){return k0(typeof n=="number"?D9(n,e):e,t)}function D9(n,e){let t=m_()?.[n];if(typeof t!="string"){if(typeof e=="string")return e;throw new Error(`!!! NLS MISSING: ${n} !!!`)}return t}function roe(n,e,...t){let i;typeof n=="number"?i=D9(n,e):i=e;let o=k0(i,t);return{value:o,original:e===i?o:k0(e,t)}}var FK,ke=$(()=>{j2();j2();FK=Ph()==="pseudo"||typeof document<"u"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0});function P9(){if(!T9){T9=!0;let n=new Uint8Array(2);n[0]=1,n[1]=2,I9=new Uint16Array(n.buffer)[0]===513}return I9}var qf,__,b_,p_,BK,N9,Z2,WK,Y2,zK,M9,D0,E0,E9,VK,Jl,ec,Vs,A9,HK,G2,_i,De,oi,ed,$a,UK,R9,Ss,I0,Ua,loe,$K,T0,to,I9,T9,Q2,O9,F9,B9,W9,dt=$(()=>{ke();qf="en",__=!1,b_=!1,p_=!1,BK=!1,N9=!1,Z2=!1,WK=!1,Y2=!1,zK=!1,M9=!1,E0=qf,E9=qf,ec=globalThis;typeof ec.vscode<"u"&&typeof ec.vscode.process<"u"?Vs=ec.vscode.process:typeof process<"u"&&typeof process?.versions?.node=="string"&&(Vs=process);A9=typeof Vs?.versions?.electron=="string",HK=A9&&Vs?.type==="renderer";if(typeof Vs=="object"){__=Vs.platform==="win32",b_=Vs.platform==="darwin",p_=Vs.platform==="linux",BK=p_&&!!Vs.env.SNAP&&!!Vs.env.SNAP_REVISION,WK=A9,zK=!!Vs.env.CI||!!Vs.env.BUILD_ARTIFACTSTAGINGDIRECTORY,D0=qf,E0=qf;let n=Vs.env.VSCODE_NLS_CONFIG;if(n)try{let e=JSON.parse(n);D0=e.userLocale,E9=e.osLocale,E0=e.resolvedLanguage||qf,VK=e.languagePack?.translationsConfigFile}catch{}N9=!0}else typeof navigator=="object"&&!HK?(Jl=navigator.userAgent,__=Jl.indexOf("Windows")>=0,b_=Jl.indexOf("Macintosh")>=0,Y2=(Jl.indexOf("Macintosh")>=0||Jl.indexOf("iPad")>=0||Jl.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,p_=Jl.indexOf("Linux")>=0,M9=Jl?.indexOf("Mobi")>=0,Z2=!0,E0=Ph()||qf,D0=navigator.language.toLowerCase(),E9=D0):console.error("Unable to resolve platform.");G2=0;b_?G2=1:__?G2=3:p_&&(G2=2);_i=__,De=b_,oi=p_,ed=N9,$a=Z2,UK=Z2&&typeof ec.importScripts=="function",R9=UK?ec.origin:void 0,Ss=Y2,I0=M9,Ua=Jl,loe=E0,$K=typeof ec.postMessage=="function"&&!ec.importScripts,T0=(()=>{if($K){let n=[];ec.addEventListener("message",t=>{if(t.data&&t.data.vscodeScheduleAsyncWork)for(let i=0,o=n.length;i<o;i++){let s=n[i];if(s.id===t.data.vscodeScheduleAsyncWork){n.splice(i,1),s.callback();return}}});let e=0;return t=>{let i=++e;n.push({id:i,callback:t}),ec.postMessage({vscodeScheduleAsyncWork:i},"*")}}return n=>setTimeout(n)})(),to=b_||Y2?2:__?1:3,I9=!0,T9=!1;Q2=!!(Ua&&Ua.indexOf("Chrome")>=0),O9=!!(Ua&&Ua.indexOf("Firefox")>=0),F9=!!(!Q2&&Ua&&Ua.indexOf("Safari")>=0),B9=!!(Ua&&Ua.indexOf("Edg/")>=0),W9=!!(Ua&&Ua.indexOf("Android")>=0)});var Zi,v_=$(()=>{Zi={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!0,independentColorPoolPerBracketType:!1}}});var Qe,Hs=$(()=>{(function(n){function e(w){return w&&typeof w=="object"&&typeof w[Symbol.iterator]=="function"}n.is=e;let t=Object.freeze([]);function i(){return t}n.empty=i;function*o(w){yield w}n.single=o;function s(w){return e(w)?w:o(w)}n.wrap=s;function r(w){return w||t}n.from=r;function*a(w){for(let S=w.length-1;S>=0;S--)yield w[S]}n.reverse=a;function l(w){return!w||w[Symbol.iterator]().next().done===!0}n.isEmpty=l;function c(w){return w[Symbol.iterator]().next().value}n.first=c;function d(w,S){let L=0;for(let x of w)if(S(x,L++))return!0;return!1}n.some=d;function h(w,S){for(let L of w)if(S(L))return L}n.find=h;function*u(w,S){for(let L of w)S(L)&&(yield L)}n.filter=u;function*f(w,S){let L=0;for(let x of w)yield S(x,L++)}n.map=f;function*g(w,S){let L=0;for(let x of w)yield*S(x,L++)}n.flatMap=g;function*m(...w){for(let S of w)yield*S}n.concat=m;function _(w,S,L){let x=L;for(let D of w)x=S(x,D);return x}n.reduce=_;function*b(w,S,L=w.length){for(S<0&&(S+=w.length),L<0?L+=w.length:L>w.length&&(L=w.length);S<L;S++)yield w[S]}n.slice=b;function v(w,S=Number.POSITIVE_INFINITY){let L=[];if(S===0)return[L,w];let x=w[Symbol.iterator]();for(let D=0;D<S;D++){let E=x.next();if(E.done)return[L,n.empty()];L.push(E.value)}return[L,{[Symbol.iterator](){return x}}]}n.consume=v;async function C(w){let S=[];for await(let L of w)S.push(L);return Promise.resolve(S)}n.asyncToArray=C})(Qe||(Qe={}))});var Fi,yi,mr=$(()=>{Fi=class n{static{this.Undefined=new n(void 0)}constructor(e){this.element=e,this.next=n.Undefined,this.prev=n.Undefined}},yi=class{constructor(){this._first=Fi.Undefined,this._last=Fi.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===Fi.Undefined}clear(){let e=this._first;for(;e!==Fi.Undefined;){let t=e.next;e.prev=Fi.Undefined,e.next=Fi.Undefined,e=t}this._first=Fi.Undefined,this._last=Fi.Undefined,this._size=0}unshift(e){return this._insert(e,!1)}push(e){return this._insert(e,!0)}_insert(e,t){let i=new Fi(e);if(this._first===Fi.Undefined)this._first=i,this._last=i;else if(t){let s=this._last;this._last=i,i.prev=s,s.next=i}else{let s=this._first;this._first=i,i.next=s,s.prev=i}this._size+=1;let o=!1;return()=>{o||(o=!0,this._remove(i))}}shift(){if(this._first!==Fi.Undefined){let e=this._first.element;return this._remove(this._first),e}}pop(){if(this._last!==Fi.Undefined){let e=this._last.element;return this._remove(this._last),e}}_remove(e){if(e.prev!==Fi.Undefined&&e.next!==Fi.Undefined){let t=e.prev;t.next=e.next,e.next.prev=t}else e.prev===Fi.Undefined&&e.next===Fi.Undefined?(this._first=Fi.Undefined,this._last=Fi.Undefined):e.next===Fi.Undefined?(this._last=this._last.prev,this._last.next=Fi.Undefined):e.prev===Fi.Undefined&&(this._first=this._first.next,this._first.prev=Fi.Undefined);this._size-=1}*[Symbol.iterator](){let e=this._first;for(;e!==Fi.Undefined;)yield e.element,e=e.next}}});function qK(n=""){let e="(-?\\d*\\.\\d\\w*)|([^";for(let t of X2)n.indexOf(t)>=0||(e+="\\"+t);return e+="\\s]+)",new RegExp(e,"g")}function C_(n){let e=w_;if(n&&n instanceof RegExp)if(n.global)e=n;else{let t="g";n.ignoreCase&&(t+="i"),n.multiline&&(t+="m"),n.unicode&&(t+="u"),e=new RegExp(n.source,t)}return e.lastIndex=0,e}function td(n,e,t,i,o){if(e=C_(e),o||(o=Qe.first(z9)),t.length>o.maxLen){let c=n-o.maxLen/2;return c<0?c=0:i+=c,t=t.substring(c,n+o.maxLen/2),td(n,e,t,i,o)}let s=Date.now(),r=n-1-i,a=-1,l=null;for(let c=1;!(Date.now()-s>=o.timeBudget);c++){let d=r-o.windowSize*c;e.lastIndex=Math.max(0,d);let h=KK(e,t,r,a);if(!h&&l||(l=h,d<=0))break;a=d}if(l){let c={word:l[0],startColumn:i+1+l.index,endColumn:i+1+l.index+l[0].length};return e.lastIndex=0,c}return null}function KK(n,e,t,i){let o;for(;o=n.exec(e);){let s=o.index||0;if(s<=t&&n.lastIndex>=t)return o;if(i>0&&s>i)return null}return null}var X2,w_,z9,Kf=$(()=>{Hs();mr();X2="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";w_=qK();z9=new yi;z9.unshift({maxLen:1e3,windowSize:15,timeBudget:150})});function Ue(n){rd(n)||U9.onUnexpectedError(n)}function R0(n){rd(n)||U9.onUnexpectedExternalError(n)}function BT(n){if(n instanceof Error){let{name:e,message:t}=n,i=n.stacktrace||n.stack;return{$isError:!0,name:e,message:t,stack:i,noTelemetry:x_.isErrorNoTelemetry(n)}}return n}function rd(n){return n instanceof pr?!0:n instanceof Error&&n.name===M0&&n.message===M0}function $9(){let n=new Error(M0);return n.name=n.message,n}function ad(n){return n?new Error(`Illegal argument: ${n}`):new Error("Illegal argument")}function Qf(n){return n?new Error(`Illegal state: ${n}`):new Error("Illegal state")}var FT,U9,M0,pr,A0,x_,Ge,ht=$(()=>{FT=class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?x_.isErrorNoTelemetry(e)?new x_(e.message+`
|
|
5
5
|
|
|
6
6
|
`+e.stack):new Error(e.message+`
|
|
7
7
|
|
|
@@ -29,7 +29,7 @@ Received: '{1}'.`,e,xd.getLexeme(t)),s=t.offset,r=xd.getLexeme(t);return this._p
|
|
|
29
29
|
|
|
30
30
|
`),this}appendMarkdown(e){return this.value+=e,this}appendCodeblock(e,t){return this.value+=`
|
|
31
31
|
${tQ(t,e)}
|
|
32
|
-
`,this}appendLink(e,t,i){return this.value+="[",this.value+=this._escape(t,"]"),this.value+="](",this.value+=this._escape(String(e),")"),i&&(this.value+=` "${this._escape(this._escape(i,'"'),")")}"`),this.value+=")",this}_escape(e,t){let i=new RegExp(Xo(t),"g");return e.replace(i,(o,s)=>e.charAt(s-1)!=="\\"?`\\${o}`:o)}}});function Zve(n,e){let t=e.lineNumber;if(!n.tokenization.isCheapToTokenize(t))return;n.tokenization.forceTokenization(t);let i=n.tokenization.getLineTokens(t),o=i.findTokenIndexAtOffset(e.column-1);return i.getStandardTokenType(o)}var di,AR,pa=$(()=>{Qg();di=class n{static{this.defaultTokenMetadata=(32768|2<<24)>>>0}static createEmpty(e,t){let i=n.defaultTokenMetadata,o=new Uint32Array(2);return o[0]=e.length,o[1]=i,new n(o,e,t)}static createFromTextAndMetadata(e,t){let i=0,o="",s=new Array;for(let{text:r,metadata:a}of e)s.push(i+r.length,a),i+=r.length,o+=r;return new n(new Uint32Array(s),o,t)}constructor(e,t,i){this._lineTokensBrand=void 0,this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t,this.languageIdCodec=i}equals(e){return e instanceof n?this.slicedEquals(e,0,this._tokensCount):!1}slicedEquals(e,t,i){if(this._text!==e._text||this._tokensCount!==e._tokensCount)return!1;let o=t<<1,s=o+(i<<1);for(let r=o;r<s;r++)if(this._tokens[r]!==e._tokens[r])return!1;return!0}getLineContent(){return this._text}getCount(){return this._tokensCount}getStartOffset(e){return e>0?this._tokens[e-1<<1]:0}getMetadata(e){return this._tokens[(e<<1)+1]}getLanguageId(e){let t=this._tokens[(e<<1)+1],i=ln.getLanguageId(t);return this.languageIdCodec.decodeLanguageId(i)}getStandardTokenType(e){let t=this._tokens[(e<<1)+1];return ln.getTokenType(t)}getForeground(e){let t=this._tokens[(e<<1)+1];return ln.getForeground(t)}getClassName(e){let t=this._tokens[(e<<1)+1];return ln.getClassNameFromMetadata(t)}getInlineStyle(e,t){let i=this._tokens[(e<<1)+1];return ln.getInlineStyleFromMetadata(i,t)}getPresentation(e){let t=this._tokens[(e<<1)+1];return ln.getPresentationFromMetadata(t)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return n.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,t,i){return new AR(this,e,t,i)}static convertToEndOffset(e,t){let o=(e.length>>>1)-1;for(let s=0;s<o;s++)e[s<<1]=e[s+1<<1];e[o<<1]=t}static findIndexInTokensArray(e,t){if(e.length<=2)return 0;let i=0,o=(e.length>>>1)-1;for(;i<o;){let s=i+Math.floor((o-i)/2),r=e[s<<1];if(r===t)return s+1;r<t?i=s+1:r>t&&(o=s)}return i}withInserted(e){if(e.length===0)return this;let t=0,i=0,o="",s=new Array,r=0;for(;;){let a=t<this._tokensCount?this._tokens[t<<1]:-1,l=i<e.length?e[i]:null;if(a!==-1&&(l===null||a<=l.offset)){o+=this._text.substring(r,a);let c=this._tokens[(t<<1)+1];s.push(o.length,c),t++,r=a}else if(l){if(l.offset>r){o+=this._text.substring(r,l.offset);let c=this._tokens[(t<<1)+1];s.push(o.length,c),r=l.offset}o+=l.text,s.push(o.length,l.tokenMetadata),i++}else break}return new n(new Uint32Array(s),o,this.languageIdCodec)}getTokenText(e){let t=this.getStartOffset(e),i=this.getEndOffset(e);return this._text.substring(t,i)}forEach(e){let t=this.getCount();for(let i=0;i<t;i++)e(i)}},AR=class n{constructor(e,t,i,o){this._source=e,this._startOffset=t,this._endOffset=i,this._deltaOffset=o,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this.languageIdCodec=e.languageIdCodec,this._tokensCount=0;for(let s=this._firstTokenIndex,r=e.getCount();s<r&&!(e.getStartOffset(s)>=i);s++)this._tokensCount++}getMetadata(e){return this._source.getMetadata(this._firstTokenIndex+e)}getLanguageId(e){return this._source.getLanguageId(this._firstTokenIndex+e)}getLineContent(){return this._source.getLineContent().substring(this._startOffset,this._endOffset)}equals(e){return e instanceof n?this._startOffset===e._startOffset&&this._endOffset===e._endOffset&&this._deltaOffset===e._deltaOffset&&this._source.slicedEquals(e._source,this._firstTokenIndex,this._tokensCount):!1}getCount(){return this._tokensCount}getStandardTokenType(e){return this._source.getStandardTokenType(this._firstTokenIndex+e)}getForeground(e){return this._source.getForeground(this._firstTokenIndex+e)}getEndOffset(e){let t=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,t)-this._startOffset+this._deltaOffset}getClassName(e){return this._source.getClassName(this._firstTokenIndex+e)}getInlineStyle(e,t){return this._source.getInlineStyle(this._firstTokenIndex+e,t)}getPresentation(e){return this._source.getPresentation(this._firstTokenIndex+e)}findTokenIndexAtOffset(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex}getTokenText(e){let t=this._firstTokenIndex+e,i=this._source.getStartOffset(t),o=this._source.getEndOffset(t),s=this._source.getTokenText(t);return i<this._startOffset&&(s=s.substring(this._startOffset-i)),o>this._endOffset&&(s=s.substring(0,s.length-(o-this._endOffset))),s}forEach(e){for(let t=0;t<this.getCount();t++)e(t)}}});function ex(n,e){return new gd([new na(0,"",n)],e)}function mm(n,e){let t=new Uint32Array(2);return t[0]=0,t[1]=(n<<0|0|0|32768|2<<24)>>>0,new oc(t,e===null?Jd:e)}var Jd,h1=$(()=>{vo();Jd=new class{clone(){return this}equals(n){return this===n}}});var wV,CV,yV,SV,xV,wx,LV,Cx,ZR=$(()=>{ke();(function(n){n.inspectTokensAction=p("inspectTokens","Developer: Inspect Tokens")})(wV||(wV={}));(function(n){n.gotoLineActionLabel=p("gotoLineActionLabel","Go to Line/Column...")})(CV||(CV={}));(function(n){n.helpQuickAccessActionLabel=p("helpQuickAccess","Show all Quick Access Providers")})(yV||(yV={}));(function(n){n.quickCommandActionLabel=p("quickCommandActionLabel","Command Palette"),n.quickCommandHelp=p("quickCommandActionHelp","Show And Run Commands")})(SV||(SV={}));(function(n){n.quickOutlineActionLabel=p("quickOutlineActionLabel","Go to Symbol..."),n.quickOutlineByCategoryActionLabel=p("quickOutlineByCategoryActionLabel","Go to Symbol by Category...")})(xV||(xV={}));(function(n){n.editorViewAccessibleLabel=p("editorViewAccessibleLabel","Editor content")})(wx||(wx={}));(function(n){n.toggleHighContrast=p("toggleHighContrast","Toggle High Contrast Theme")})(LV||(LV={}));(function(n){n.bulkEditServiceSummary=p("bulkEditServiceSummary","Made {0} edits in {1} files")})(Cx||(Cx={}))});function AV(n=ho){return(e,t)=>xt(e,t,n)}function ZCe(){return(n,e)=>n.equals(e)}function XR(n,e,t){if(t!==void 0){let i=n;return i==null||e===void 0||e===null?e===i:t(i,e)}else{let i=n;return(o,s)=>o==null||s===void 0||s===null?s===o:i(o,s)}}function MV(n,e){if(n===e)return!0;if(Array.isArray(n)&&Array.isArray(e)){if(n.length!==e.length)return!1;for(let t=0;t<n.length;t++)if(!MV(n[t],e[t]))return!1;return!0}if(n&&typeof n=="object"&&e&&typeof e=="object"&&Object.getPrototypeOf(n)===Object.prototype&&Object.getPrototypeOf(e)===Object.prototype){let t=n,i=e,o=Object.keys(t),s=Object.keys(i),r=new Set(s);if(o.length!==s.length)return!1;for(let a of o)if(!r.has(a)||!MV(t[a],i[a]))return!1;return!0}return!1}var ho,xm=$(()=>{tt();ho=(n,e)=>n===e});function YQ(n,e){let t=JR.get(n);if(t)return t;let i=QQ(n,e);if(i){let o=RV.get(i)??0;o++,RV.set(i,o);let s=o===1?i:`${i}#${o}`;return JR.set(n,s),s}}function QQ(n,e){let t=JR.get(n);if(t)return t;let i=e.owner?JQ(e.owner)+".":"",o,s=e.debugNameSource;if(s!==void 0)if(typeof s=="function"){if(o=s(),o!==void 0)return i+o}else return i+s;let r=e.referenceFn;if(r!==void 0&&(o=xx(r),o!==void 0))return i+o;if(e.owner!==void 0){let a=XQ(e.owner,n);if(a!==void 0)return i+a}}function XQ(n,e){for(let t in n)if(n[t]===e)return t}function JQ(n){let e=OV.get(n);if(e)return e;let t=eX(n),i=PV.get(t)??0;i++,PV.set(t,i);let o=i===1?t:`${t}#${i}`;return OV.set(n,o),o}function eX(n){let e=n.constructor;return e?e.name:"Object"}function xx(n){let e=n.toString(),i=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(e);return(i?i[1]:void 0)?.trim()}var Ai,RV,JR,PV,OV,Lm=$(()=>{Ai=class{constructor(e,t,i){this.owner=e,this.debugNameSource=t,this.referenceFn=i}getDebugName(e){return YQ(e,this)}},RV=new Map,JR=new WeakMap;PV=new Map,OV=new WeakMap});function BV(n){FV=n}function Rs(){return FV}function tX(n){let e=new Array,t=[],i="";function o(r){if("length"in r)for(let a of r)a&&o(a);else"text"in r?(i+=`%c${r.text}`,e.push(r.style),r.data&&t.push(...r.data)):"data"in r&&t.push(...r.data)}o(n);let s=[i,...e];return s.push(...t),s}function km(n){return _a(n,{color:"black"})}function C1(n){return _a(sX(`${n}: `,10),{color:"black",bold:!0})}function _a(n,e={color:"black"}){function t(o){return Object.entries(o).reduce((s,[r,a])=>`${s}${r}:${a};`,"")}let i={color:e.color};return e.strikeThrough&&(i["text-decoration"]="line-through"),e.bold&&(i["font-weight"]="bold"),{text:n,style:t(i)}}function y1(n,e){switch(typeof n){case"number":return""+n;case"string":return n.length+2<=e?`"${n}"`:`"${n.substr(0,e-7)}"+...`;case"boolean":return n?"true":"false";case"undefined":return"undefined";case"object":return n===null?"null":Array.isArray(n)?iX(n,e):nX(n,e);case"symbol":return n.toString();case"function":return`[[Function${n.name?" "+n.name:""}]]`;default:return""+n}}function iX(n,e){let t="[ ",i=!0;for(let o of n){if(i||(t+=", "),t.length-5>e){t+="...";break}i=!1,t+=`${y1(o,e-t.length)}`}return t+=" ]",t}function nX(n,e){let t="{ ",i=!0;for(let[o,s]of Object.entries(n)){if(i||(t+=", "),t.length-5>e){t+="...";break}i=!1,t+=`${o}: ${y1(s,e-t.length)}`}return t+=" }",t}function oX(n,e){let t="";for(let i=1;i<=e;i++)t+=n;return t}function sX(n,e){for(;n.length<e;)n+=" ";return n}var FV,Lx,Dm=$(()=>{Lx=class{constructor(){this.indentation=0,this.changedObservablesSets=new WeakMap}textToConsoleArgs(e){return tX([km(oX("| ",this.indentation)),e])}formatInfo(e){return e.hadValue?e.didChange?[km(" "),_a(y1(e.oldValue,70),{color:"red",strikeThrough:!0}),km(" "),_a(y1(e.newValue,60),{color:"green"})]:[km(" (unchanged)")]:[km(" "),_a(y1(e.newValue,60),{color:"green"}),km(" (initial)")]}handleObservableChanged(e,t){console.log(...this.textToConsoleArgs([C1("observable value changed"),_a(e.debugName,{color:"BlueViolet"}),...this.formatInfo(t)]))}formatChanges(e){if(e.size!==0)return _a(" (changed deps: "+[...e].map(t=>t.debugName).join(", ")+")",{color:"gray"})}handleDerivedCreated(e){let t=e.handleChange;this.changedObservablesSets.set(e,new Set),e.handleChange=(i,o)=>(this.changedObservablesSets.get(e).add(i),t.apply(e,[i,o]))}handleDerivedRecomputed(e,t){let i=this.changedObservablesSets.get(e);console.log(...this.textToConsoleArgs([C1("derived recomputed"),_a(e.debugName,{color:"BlueViolet"}),...this.formatInfo(t),this.formatChanges(i),{data:[{fn:e._debugNameData.referenceFn??e._computeFn}]}])),i.clear()}handleFromEventObservableTriggered(e,t){console.log(...this.textToConsoleArgs([C1("observable from event triggered"),_a(e.debugName,{color:"BlueViolet"}),...this.formatInfo(t),{data:[{fn:e._getValue}]}]))}handleAutorunCreated(e){let t=e.handleChange;this.changedObservablesSets.set(e,new Set),e.handleChange=(i,o)=>(this.changedObservablesSets.get(e).add(i),t.apply(e,[i,o]))}handleAutorunTriggered(e){let t=this.changedObservablesSets.get(e);console.log(...this.textToConsoleArgs([C1("autorun"),_a(e.debugName,{color:"BlueViolet"}),this.formatChanges(t),{data:[{fn:e._debugNameData.referenceFn??e._runFn}]}])),t.clear(),this.indentation++}handleAutorunFinished(e){this.indentation--}handleBeginTransaction(e){let t=e.getDebugName();t===void 0&&(t=""),console.log(...this.textToConsoleArgs([C1("transaction"),_a(t,{color:"BlueViolet"}),{data:[{fn:e._fn}]}])),this.indentation++}handleEndTransaction(){this.indentation--}}});function zV(n){WV=n}function HV(n){VV=n}function UV(n){e4=n}function Dt(n,e){let t=new vl(n,e);try{n(t)}finally{t.finish()}}function Au(n){if(kx)n(kx);else{let e=new vl(n,void 0);kx=e;try{n(e)}finally{e.finish(),kx=void 0}}}async function iye(n,e){let t=new vl(n,e);try{await n(t)}finally{t.finish()}}function Ru(n,e,t){n?e(n):Dt(e,t)}function Oe(n,e){let t;return typeof n=="string"?t=new Ai(void 0,n,void 0):t=new Ai(n,void 0,void 0),new Em(t,e,ho)}function x1(n,e){let t;return typeof n=="string"?t=new Ai(void 0,n,void 0):t=new Ai(n,void 0,void 0),new t4(t,e,ho)}var WV,VV,e4,S1,ba,kx,vl,Em,t4,wl=$(()=>{xm();Lm();Dm();S1=class{get TChange(){return null}reportChanges(){this.get()}read(e){return e?e.readObservable(this):this.get()}map(e,t){let i=t===void 0?void 0:e,o=t===void 0?e:t;return e4({owner:i,debugName:()=>{let s=xx(o);if(s!==void 0)return s;let a=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(o.toString());if(a)return`${this.debugName}.${a[2]}`;if(!i)return`${this.debugName} (mapped)`},debugReferenceFn:o},s=>o(this.read(s),s))}flatten(){return e4({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},e=>this.read(e).read(e))}recomputeInitiallyAndOnChange(e,t){return e.add(WV(this,t)),this}keepObserved(e){return e.add(VV(this)),this}},ba=class extends S1{constructor(){super(...arguments),this.observers=new Set}addObserver(e){let t=this.observers.size;this.observers.add(e),t===0&&this.onFirstObserverAdded()}removeObserver(e){this.observers.delete(e)&&this.observers.size===0&&this.onLastObserverRemoved()}onFirstObserverAdded(){}onLastObserverRemoved(){}};vl=class{constructor(e,t){this._fn=e,this._getDebugName=t,this.updatingObservers=[],Rs()?.handleBeginTransaction(this)}getDebugName(){return this._getDebugName?this._getDebugName():xx(this._fn)}updateObserver(e,t){this.updatingObservers.push({observer:e,observable:t}),e.beginUpdate(t)}finish(){let e=this.updatingObservers;for(let t=0;t<e.length;t++){let{observer:i,observable:o}=e[t];i.endUpdate(o)}this.updatingObservers=null,Rs()?.handleEndTransaction()}};Em=class extends ba{get debugName(){return this._debugNameData.getDebugName(this)??"ObservableValue"}constructor(e,t,i){super(),this._debugNameData=e,this._equalityComparator=i,this._value=t}get(){return this._value}set(e,t,i){if(i===void 0&&this._equalityComparator(this._value,e))return;let o;t||(t=o=new vl(()=>{},()=>`Setting ${this.debugName}`));try{let s=this._value;this._setValue(e),Rs()?.handleObservableChanged(this,{oldValue:s,newValue:e,change:i,didChange:!0,hadValue:!0});for(let r of this.observers)t.updateObserver(r,this),r.handleChange(this,i)}finally{o&&o.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}};t4=class extends Em{_setValue(e){this._value!==e&&(this._value&&this._value.dispose(),this._value=e)}dispose(){this._value?.dispose()}}});function Se(n,e){return e!==void 0?new wc(new Ai(n,void 0,e),e,void 0,void 0,void 0,ho):new wc(new Ai(void 0,void 0,n),n,void 0,void 0,void 0,ho)}function Im(n,e,t){return new i4(new Ai(n,void 0,e),e,void 0,void 0,void 0,ho,t)}function Cc(n,e){return new wc(new Ai(n.owner,n.debugName,n.debugReferenceFn),e,void 0,void 0,n.onLastObserverRemoved,n.equalsFn??ho)}function rX(n,e){return new wc(new Ai(n.owner,n.debugName,void 0),e,n.createEmptyChangeSummary,n.handleChange,void 0,n.equalityComparer??ho)}function ar(n,e){let t,i;e===void 0?(t=n,i=void 0):(i=n,t=e);let o=new Q;return new wc(new Ai(i,void 0,t),s=>(o.clear(),t(s,o)),void 0,void 0,()=>o.dispose(),ho)}function lr(n,e){let t,i;e===void 0?(t=n,i=void 0):(i=n,t=e);let o;return new wc(new Ai(i,void 0,t),s=>{o?o.clear():o=new Q;let r=t(s);return r&&o.add(r),r},void 0,void 0,()=>{o&&(o.dispose(),o=void 0)},ho)}var wc,i4,ih=$(()=>{la();xm();X();wl();Lm();Dm();UV(Cc);wc=class extends ba{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,o,s=void 0,r){super(),this._debugNameData=e,this._computeFn=t,this.createChangeSummary=i,this._handleChange=o,this._handleLastObserverRemoved=s,this._equalityComparator=r,this.state=0,this.value=void 0,this.updateCount=0,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=void 0,this.changeSummary=this.createChangeSummary?.(),Rs()?.handleDerivedCreated(this)}onLastObserverRemoved(){this.state=0,this.value=void 0;for(let e of this.dependencies)e.removeObserver(this);this.dependencies.clear(),this._handleLastObserverRemoved?.()}get(){if(this.observers.size===0){let e=this._computeFn(this,this.createChangeSummary?.());return this.onLastObserverRemoved(),e}else{do{if(this.state===1){for(let e of this.dependencies)if(e.reportChanges(),this.state===2)break}this.state===1&&(this.state=3),this._recomputeIfNeeded()}while(this.state!==3);return this.value}}_recomputeIfNeeded(){if(this.state===3)return;let e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e;let t=this.state!==0,i=this.value;this.state=3;let o=this.changeSummary;this.changeSummary=this.createChangeSummary?.();try{this.value=this._computeFn(this,o)}finally{for(let r of this.dependenciesToBeRemoved)r.removeObserver(this);this.dependenciesToBeRemoved.clear()}let s=t&&!this._equalityComparator(i,this.value);if(Rs()?.handleDerivedRecomputed(this,{oldValue:i,newValue:this.value,change:void 0,didChange:s,hadValue:t}),s)for(let r of this.observers)r.handleChange(this,void 0)}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(e){this.updateCount++;let t=this.updateCount===1;if(this.state===3&&(this.state=1,!t))for(let i of this.observers)i.handlePossibleChange(this);if(t)for(let i of this.observers)i.beginUpdate(this)}endUpdate(e){if(this.updateCount--,this.updateCount===0){let t=[...this.observers];for(let i of t)i.endUpdate(this)}kr(()=>this.updateCount>=0)}handlePossibleChange(e){if(this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){this.state=1;for(let t of this.observers)t.handlePossibleChange(this)}}handleChange(e,t){if(this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){let i=this._handleChange?this._handleChange({changedObservable:e,change:t,didChange:s=>s===e},this.changeSummary):!0,o=this.state===3;if(i&&(this.state===1||o)&&(this.state=2,o))for(let s of this.observers)s.handlePossibleChange(this)}}readObservable(e){e.addObserver(this);let t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}addObserver(e){let t=!this.observers.has(e)&&this.updateCount>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){let t=this.observers.has(e)&&this.updateCount>0;super.removeObserver(e),t&&e.endUpdate(this)}},i4=class extends wc{constructor(e,t,i,o,s=void 0,r,a){super(e,t,i,o,s,r),this.set=a}}});function qe(n){return new Tm(new Ai(void 0,void 0,n),n,void 0,void 0)}function nh(n,e){return new Tm(new Ai(n.owner,n.debugName,n.debugReferenceFn??e),e,void 0,void 0)}function yc(n,e){return new Tm(new Ai(n.owner,n.debugName,n.debugReferenceFn??e),e,n.createEmptyChangeSummary,n.handleChange)}function n4(n,e){let t=new Q,i=yc({owner:n.owner,debugName:n.debugName,debugReferenceFn:n.debugReferenceFn??e,createEmptyChangeSummary:n.createEmptyChangeSummary,handleChange:n.handleChange},(o,s)=>{t.clear(),e(o,s,t)});return ce(()=>{i.dispose(),t.dispose()})}function Ln(n){let e=new Q,t=nh({owner:void 0,debugName:void 0,debugReferenceFn:n},i=>{e.clear(),n(i,e)});return ce(()=>{t.dispose(),e.dispose()})}var Tm,o4=$(()=>{la();X();Lm();Dm();Tm=class{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,o){this._debugNameData=e,this._runFn=t,this.createChangeSummary=i,this._handleChange=o,this.state=2,this.updateCount=0,this.disposed=!1,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=this.createChangeSummary?.(),Rs()?.handleAutorunCreated(this),this._runIfNeeded(),zh(this)}dispose(){this.disposed=!0;for(let e of this.dependencies)e.removeObserver(this);this.dependencies.clear(),Vh(this)}_runIfNeeded(){if(this.state===3)return;let e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e,this.state=3;let t=this.disposed;try{if(!t){Rs()?.handleAutorunTriggered(this);let i=this.changeSummary;this.changeSummary=this.createChangeSummary?.(),this._runFn(this,i)}}finally{t||Rs()?.handleAutorunFinished(this);for(let i of this.dependenciesToBeRemoved)i.removeObserver(this);this.dependenciesToBeRemoved.clear()}}toString(){return`Autorun<${this.debugName}>`}beginUpdate(){this.state===3&&(this.state=1),this.updateCount++}endUpdate(){if(this.updateCount===1)do{if(this.state===1){this.state=3;for(let e of this.dependencies)if(e.reportChanges(),this.state===2)break}this._runIfNeeded()}while(this.state!==3);this.updateCount--,kr(()=>this.updateCount>=0)}handlePossibleChange(e){this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(this.state=1)}handleChange(e,t){this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(!this._handleChange||this._handleChange({changedObservable:e,change:t,didChange:o=>o===e},this.changeSummary))&&(this.state=2)}readObservable(e){if(this.disposed)return e.get();e.addObserver(this);let t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}};(function(n){n.Observer=Tm})(qe||(qe={}))});function oh(n){return new s4(n)}function St(...n){let e,t,i;return n.length===3?[e,t,i]=n:[t,i]=n,new Cl(new Ai(e,void 0,i),t,i,()=>Cl.globalTransaction,ho)}function $V(n,e,t){return new Cl(new Ai(n.owner,n.debugName,n.debugReferenceFn??t),e,t,()=>Cl.globalTransaction,n.equalsFn??ho)}function Gn(n,e){return new r4(n,e)}function Pu(n){return typeof n=="string"?new Dx(n):new Dx(void 0,n)}function qV(n){let e=new Ex(!1,void 0);return n.addObserver(e),ce(()=>{n.removeObserver(e)})}function sh(n,e){let t=new Ex(!0,e);return n.addObserver(t),e?e(n.get()):n.reportChanges(),ce(()=>{n.removeObserver(t)})}function KV(n,e){let t;return Cc({owner:n,debugReferenceFn:e},o=>(t=e(o,t),t))}function Sye(n,e,t,i){let o=new Ix(t,i);return Cc({debugReferenceFn:t,owner:n,onLastObserverRemoved:()=>{o.dispose(),o=new Ix(t)}},r=>(o.setItems(e.read(r)),o.getItems()))}function jV(n,e){return KV(n,(t,i)=>i??e(t))}var s4,Cl,r4,Dx,Ex,Ix,Tx=$(()=>{fe();X();wl();Lm();ih();Dm();xm();s4=class extends S1{constructor(e){super(),this.value=e}get debugName(){return this.toString()}get(){return this.value}addObserver(e){}removeObserver(e){}toString(){return`Const: ${this.value}`}};Cl=class extends ba{constructor(e,t,i,o,s){super(),this._debugNameData=e,this.event=t,this._getValue=i,this._getTransaction=o,this._equalityComparator=s,this.hasValue=!1,this.handleEvent=r=>{let a=this._getValue(r),l=this.value,c=!this.hasValue||!this._equalityComparator(l,a),d=!1;c&&(this.value=a,this.hasValue&&(d=!0,Ru(this._getTransaction(),h=>{Rs()?.handleFromEventObservableTriggered(this,{oldValue:l,newValue:a,change:void 0,didChange:c,hadValue:this.hasValue});for(let u of this.observers)h.updateObserver(u,this),u.handleChange(this,void 0)},()=>{let h=this.getDebugName();return"Event fired"+(h?`: ${h}`:"")})),this.hasValue=!0),d||Rs()?.handleFromEventObservableTriggered(this,{oldValue:l,newValue:a,change:void 0,didChange:c,hadValue:this.hasValue})}}getDebugName(){return this._debugNameData.getDebugName(this)}get debugName(){let e=this.getDebugName();return"From Event"+(e?`: ${e}`:"")}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0,this.hasValue=!1,this.value=void 0}get(){return this.subscription?(this.hasValue||this.handleEvent(void 0),this.value):this._getValue(void 0)}};(function(n){n.Observer=Cl;function e(t,i){let o=!1;Cl.globalTransaction===void 0&&(Cl.globalTransaction=t,o=!0);try{i()}finally{o&&(Cl.globalTransaction=void 0)}}n.batchEventsGlobally=e})(St||(St={}));r4=class extends ba{constructor(e,t){super(),this.debugName=e,this.event=t,this.handleEvent=()=>{Dt(i=>{for(let o of this.observers)i.updateObserver(o,this),o.handleChange(this,void 0)},()=>this.debugName)}}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0}get(){}};Dx=class extends ba{get debugName(){return new Ai(this._owner,this._debugName,void 0).getDebugName(this)??"Observable Signal"}toString(){return this.debugName}constructor(e,t){super(),this._debugName=e,this._owner=t}trigger(e,t){if(!e){Dt(i=>{this.trigger(i,t)},()=>`Trigger signal ${this.debugName}`);return}for(let i of this.observers)e.updateObserver(i,this),i.handleChange(this,t)}get(){}};HV(qV);zV(sh);Ex=class{constructor(e,t){this._forceRecompute=e,this._handleValue=t,this._counter=0}beginUpdate(e){this._counter++}endUpdate(e){this._counter--,this._counter===0&&this._forceRecompute&&(this._handleValue?this._handleValue(e.get()):e.reportChanges())}handlePossibleChange(e){}handleChange(e,t){}};Ix=class{constructor(e,t){this._map=e,this._keySelector=t,this._cache=new Map,this._items=[]}dispose(){this._cache.forEach(e=>e.store.dispose()),this._cache.clear()}setItems(e){let t=[],i=new Set(this._cache.keys());for(let o of e){let s=this._keySelector?this._keySelector(o):o,r=this._cache.get(s);if(r)i.delete(s);else{let a=new Q;r={out:this._map(o,a),store:a},this._cache.set(s,r)}t.push(r.out)}for(let o of i)this._cache.get(o).store.dispose(),this._cache.delete(o);this._items=t}getItems(){return this._items}}});function l4(n,e,t,i){return e||(e=o=>o!=null),new Promise((o,s)=>{let r=!0,a=!1,l=n.map(d=>({isFinished:e(d),error:t?t(d):!1,state:d})),c=qe(d=>{let{isFinished:h,error:u,state:f}=l.read(d);(h||u)&&(r?a=!0:c.dispose(),u?s(u===!0?f:u):o(f))});if(i){let d=i.onCancellationRequested(()=>{c.dispose(),d.dispose(),s(new pr)});if(i.isCancellationRequested){c.dispose(),d.dispose(),s(new pr);return}}r=!1,a&&c.dispose()})}var a4,L1,GV=$(()=>{o4();wl();ht();a4=class n{static fromFn(e){return new n(e())}constructor(e){this._value=Oe(this,void 0),this.promiseResult=this._value,this.promise=e.then(t=>(Dt(i=>{this._value.set(new L1(t,void 0),i)}),t),t=>{throw Dt(i=>{this._value.set(new L1(void 0,t),i)}),t})}},L1=class{constructor(e,t){this.data=e,this.error=t}}});var Nx,ZV=$(()=>{wl();Nx=class extends ba{get debugName(){return this._debugNameData.getDebugName(this)??"LazyObservableValue"}constructor(e,t,i){super(),this._debugNameData=e,this._equalityComparator=i,this._isUpToDate=!0,this._deltas=[],this._updateCounter=0,this._value=t}get(){return this._update(),this._value}_update(){if(!this._isUpToDate)if(this._isUpToDate=!0,this._deltas.length>0){for(let e of this.observers)for(let t of this._deltas)e.handleChange(this,t);this._deltas.length=0}else for(let e of this.observers)e.handleChange(this,void 0)}_beginUpdate(){if(this._updateCounter++,this._updateCounter===1)for(let e of this.observers)e.beginUpdate(this)}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){this._update();let e=[...this.observers];for(let t of e)t.endUpdate(this)}}addObserver(e){let t=!this.observers.has(e)&&this._updateCounter>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){let t=this.observers.has(e)&&this._updateCounter>0;super.removeObserver(e),t&&e.endUpdate(this)}set(e,t,i){if(i===void 0&&this._equalityComparator(this._value,e))return;let o;t||(t=o=new vl(()=>{},()=>`Setting ${this.debugName}`));try{if(this._isUpToDate=!1,this._setValue(e),i!==void 0&&this._deltas.push(i),t.updateObserver({beginUpdate:()=>this._beginUpdate(),endUpdate:()=>this._endUpdate(),handleChange:(s,r)=>{},handlePossibleChange:s=>{}},this),this._updateCounter>1)for(let s of this.observers)s.handlePossibleChange(this)}finally{o&&o.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}});function Nm(n,e){return n.lazy?new Nx(new Ai(n.owner,n.debugName,void 0),e,n.equalsFn??ho):new Em(new Ai(n.owner,n.debugName,void 0),e,n.equalsFn??ho)}var YV=$(()=>{xm();wl();Lm();ZV()});var aX,Ri=$(()=>{wl();ih();o4();Tx();GV();YV();Dm();aX=!1;aX&&BV(new Lx)});var xl,nL=$(()=>{Te();xl=pe("editorWorkerService")});var B4,W4,CDe,yDe,SDe,xDe,Hm,oL,sL,SH,rL,xH,aL,LH,xX,LX,Uu,kH,DH,EH,IH,TH,$u,NH,MH,AH,RH,PH,kX,LDe,OH,kDe,DDe,EDe,IDe,FH,BH,TDe,NDe,WH,MDe,ADe,RDe,DX,PDe,zH,VH,HH,lL,cL,dL,hL,uL,fL,UH,$H,qH,KH,jH,GH,ZH,YH,QH,XH,JH,eU,tU,ODe,FDe,Ca=$(()=>{ke();an();Uo();Ki();B4=T("editor.lineHighlightBackground",null,p("lineHighlight","Background color for the highlight of line at the cursor position.")),W4=T("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hcDark:"#f38518",hcLight:ct},p("lineHighlightBorderBox","Background color for the border around the line at the cursor position.")),CDe=T("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hcDark:null,hcLight:null},p("rangeHighlight","Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0),yDe=T("editor.rangeHighlightBorder",{dark:null,light:null,hcDark:Zt,hcLight:Zt},p("rangeHighlightBorder","Background color of the border around highlighted ranges.")),SDe=T("editor.symbolHighlightBackground",{dark:ma,light:ma,hcDark:null,hcLight:null},p("symbolHighlight","Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0),xDe=T("editor.symbolHighlightBorder",{dark:null,light:null,hcDark:Zt,hcLight:Zt},p("symbolHighlightBorder","Background color of the border around highlighted symbols.")),Hm=T("editorCursor.foreground",{dark:"#AEAFAD",light:K.black,hcDark:K.white,hcLight:"#0F4A85"},p("caret","Color of the editor cursor.")),oL=T("editorCursor.background",null,p("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),sL=T("editorMultiCursor.primary.foreground",Hm,p("editorMultiCursorPrimaryForeground","Color of the primary editor cursor when multiple cursors are present.")),SH=T("editorMultiCursor.primary.background",oL,p("editorMultiCursorPrimaryBackground","The background color of the primary editor cursor when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),rL=T("editorMultiCursor.secondary.foreground",Hm,p("editorMultiCursorSecondaryForeground","Color of secondary editor cursors when multiple cursors are present.")),xH=T("editorMultiCursor.secondary.background",oL,p("editorMultiCursorSecondaryBackground","The background color of secondary editor cursors when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),aL=T("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hcDark:"#e3e4e229",hcLight:"#CCCCCC"},p("editorWhitespaces","Color of whitespace characters in the editor.")),LH=T("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hcDark:K.white,hcLight:"#292929"},p("editorLineNumbers","Color of editor line numbers.")),xX=T("editorIndentGuide.background",aL,p("editorIndentGuides","Color of the editor indentation guides."),!1,p("deprecatedEditorIndentGuides","'editorIndentGuide.background' is deprecated. Use 'editorIndentGuide.background1' instead.")),LX=T("editorIndentGuide.activeBackground",aL,p("editorActiveIndentGuide","Color of the active editor indentation guides."),!1,p("deprecatedEditorActiveIndentGuide","'editorIndentGuide.activeBackground' is deprecated. Use 'editorIndentGuide.activeBackground1' instead.")),Uu=T("editorIndentGuide.background1",xX,p("editorIndentGuides1","Color of the editor indentation guides (1).")),kH=T("editorIndentGuide.background2","#00000000",p("editorIndentGuides2","Color of the editor indentation guides (2).")),DH=T("editorIndentGuide.background3","#00000000",p("editorIndentGuides3","Color of the editor indentation guides (3).")),EH=T("editorIndentGuide.background4","#00000000",p("editorIndentGuides4","Color of the editor indentation guides (4).")),IH=T("editorIndentGuide.background5","#00000000",p("editorIndentGuides5","Color of the editor indentation guides (5).")),TH=T("editorIndentGuide.background6","#00000000",p("editorIndentGuides6","Color of the editor indentation guides (6).")),$u=T("editorIndentGuide.activeBackground1",LX,p("editorActiveIndentGuide1","Color of the active editor indentation guides (1).")),NH=T("editorIndentGuide.activeBackground2","#00000000",p("editorActiveIndentGuide2","Color of the active editor indentation guides (2).")),MH=T("editorIndentGuide.activeBackground3","#00000000",p("editorActiveIndentGuide3","Color of the active editor indentation guides (3).")),AH=T("editorIndentGuide.activeBackground4","#00000000",p("editorActiveIndentGuide4","Color of the active editor indentation guides (4).")),RH=T("editorIndentGuide.activeBackground5","#00000000",p("editorActiveIndentGuide5","Color of the active editor indentation guides (5).")),PH=T("editorIndentGuide.activeBackground6","#00000000",p("editorActiveIndentGuide6","Color of the active editor indentation guides (6).")),kX=T("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hcDark:Zt,hcLight:Zt},p("editorActiveLineNumber","Color of editor active line number"),!1,p("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead.")),LDe=T("editorLineNumber.activeForeground",kX,p("editorActiveLineNumber","Color of editor active line number")),OH=T("editorLineNumber.dimmedForeground",null,p("editorDimmedLineNumber","Color of the final editor line when editor.renderFinalNewline is set to dimmed.")),kDe=T("editorRuler.foreground",{dark:"#5A5A5A",light:K.lightgrey,hcDark:K.white,hcLight:"#292929"},p("editorRuler","Color of the editor rulers.")),DDe=T("editorCodeLens.foreground",{dark:"#999999",light:"#919191",hcDark:"#999999",hcLight:"#292929"},p("editorCodeLensForeground","Foreground color of editor CodeLens")),EDe=T("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hcDark:"#0064001a",hcLight:"#0000"},p("editorBracketMatchBackground","Background color behind matching brackets")),IDe=T("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hcDark:ct,hcLight:ct},p("editorBracketMatchBorder","Color for matching brackets boxes")),FH=T("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hcDark:"#7f7f7f4d",hcLight:"#666666"},p("editorOverviewRulerBorder","Color of the overview ruler border.")),BH=T("editorOverviewRuler.background",null,p("editorOverviewRulerBackground","Background color of the editor overview ruler.")),TDe=T("editorGutter.background",Ms,p("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers.")),NDe=T("editorUnnecessaryCode.border",{dark:null,light:null,hcDark:K.fromHex("#fff").transparent(.8),hcLight:ct},p("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor.")),WH=T("editorUnnecessaryCode.opacity",{dark:K.fromHex("#000a"),light:K.fromHex("#0007"),hcDark:null,hcLight:null},p("unnecessaryCodeOpacity",`Opacity of unnecessary (unused) source code in the editor. For example, "#000000c0" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.`)),MDe=T("editorGhostText.border",{dark:null,light:null,hcDark:K.fromHex("#fff").transparent(.8),hcLight:K.fromHex("#292929").transparent(.8)},p("editorGhostTextBorder","Border color of ghost text in the editor.")),ADe=T("editorGhostText.foreground",{dark:K.fromHex("#ffffff56"),light:K.fromHex("#0007"),hcDark:null,hcLight:null},p("editorGhostTextForeground","Foreground color of the ghost text in the editor.")),RDe=T("editorGhostText.background",null,p("editorGhostTextBackground","Background color of the ghost text in the editor.")),DX=new K(new at(0,122,204,.6)),PDe=T("editorOverviewRuler.rangeHighlightForeground",DX,p("overviewRulerRangeHighlight","Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."),!0),zH=T("editorOverviewRuler.errorForeground",{dark:new K(new at(255,18,18,.7)),light:new K(new at(255,18,18,.7)),hcDark:new K(new at(255,50,50,1)),hcLight:"#B5200D"},p("overviewRuleError","Overview ruler marker color for errors.")),VH=T("editorOverviewRuler.warningForeground",{dark:Fr,light:Fr,hcDark:nm,hcLight:nm},p("overviewRuleWarning","Overview ruler marker color for warnings.")),HH=T("editorOverviewRuler.infoForeground",{dark:ga,light:ga,hcDark:om,hcLight:om},p("overviewRuleInfo","Overview ruler marker color for infos.")),lL=T("editorBracketHighlight.foreground1",{dark:"#FFD700",light:"#0431FAFF",hcDark:"#FFD700",hcLight:"#0431FAFF"},p("editorBracketHighlightForeground1","Foreground color of brackets (1). Requires enabling bracket pair colorization.")),cL=T("editorBracketHighlight.foreground2",{dark:"#DA70D6",light:"#319331FF",hcDark:"#DA70D6",hcLight:"#319331FF"},p("editorBracketHighlightForeground2","Foreground color of brackets (2). Requires enabling bracket pair colorization.")),dL=T("editorBracketHighlight.foreground3",{dark:"#179FFF",light:"#7B3814FF",hcDark:"#87CEFA",hcLight:"#7B3814FF"},p("editorBracketHighlightForeground3","Foreground color of brackets (3). Requires enabling bracket pair colorization.")),hL=T("editorBracketHighlight.foreground4","#00000000",p("editorBracketHighlightForeground4","Foreground color of brackets (4). Requires enabling bracket pair colorization.")),uL=T("editorBracketHighlight.foreground5","#00000000",p("editorBracketHighlightForeground5","Foreground color of brackets (5). Requires enabling bracket pair colorization.")),fL=T("editorBracketHighlight.foreground6","#00000000",p("editorBracketHighlightForeground6","Foreground color of brackets (6). Requires enabling bracket pair colorization.")),UH=T("editorBracketHighlight.unexpectedBracket.foreground",{dark:new K(new at(255,18,18,.8)),light:new K(new at(255,18,18,.8)),hcDark:"new Color(new RGBA(255, 50, 50, 1))",hcLight:"#B5200D"},p("editorBracketHighlightUnexpectedBracketForeground","Foreground color of unexpected brackets.")),$H=T("editorBracketPairGuide.background1","#00000000",p("editorBracketPairGuide.background1","Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.")),qH=T("editorBracketPairGuide.background2","#00000000",p("editorBracketPairGuide.background2","Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.")),KH=T("editorBracketPairGuide.background3","#00000000",p("editorBracketPairGuide.background3","Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.")),jH=T("editorBracketPairGuide.background4","#00000000",p("editorBracketPairGuide.background4","Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.")),GH=T("editorBracketPairGuide.background5","#00000000",p("editorBracketPairGuide.background5","Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.")),ZH=T("editorBracketPairGuide.background6","#00000000",p("editorBracketPairGuide.background6","Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.")),YH=T("editorBracketPairGuide.activeBackground1","#00000000",p("editorBracketPairGuide.activeBackground1","Background color of active bracket pair guides (1). Requires enabling bracket pair guides.")),QH=T("editorBracketPairGuide.activeBackground2","#00000000",p("editorBracketPairGuide.activeBackground2","Background color of active bracket pair guides (2). Requires enabling bracket pair guides.")),XH=T("editorBracketPairGuide.activeBackground3","#00000000",p("editorBracketPairGuide.activeBackground3","Background color of active bracket pair guides (3). Requires enabling bracket pair guides.")),JH=T("editorBracketPairGuide.activeBackground4","#00000000",p("editorBracketPairGuide.activeBackground4","Background color of active bracket pair guides (4). Requires enabling bracket pair guides.")),eU=T("editorBracketPairGuide.activeBackground5","#00000000",p("editorBracketPairGuide.activeBackground5","Background color of active bracket pair guides (5). Requires enabling bracket pair guides.")),tU=T("editorBracketPairGuide.activeBackground6","#00000000",p("editorBracketPairGuide.activeBackground6","Background color of active bracket pair guides (6). Requires enabling bracket pair guides.")),ODe=T("editorUnicodeHighlight.border",Fr,p("editorUnicodeHighlight.border","Border color used to highlight unicode characters.")),FDe=T("editorUnicodeHighlight.background",D6,p("editorUnicodeHighlight.background","Background color used to highlight unicode characters."));lo((n,e)=>{let t=n.getColor(Ms),i=n.getColor(B4),o=i&&!i.isTransparent()?i:t;o&&e.addRule(`.monaco-editor .inputarea.ime-input { background-color: ${o}; }`)})});var Yt,ya=$(()=>{$e();Yt=class n{static _nextVisibleColumn(e,t,i){return e===9?n.nextRenderTabStop(t,i):Us(e)||H_(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){let o=Math.min(t-1,e.length),s=e.substring(0,o),r=new Uh(s),a=0;for(;!r.eol();){let l=cg(s,o,r.offset);r.nextGraphemeLength(),a=this._nextVisibleColumn(l,a,i)}return a}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;let o=e.length,s=new Uh(e),r=0,a=1;for(;!s.eol();){let l=cg(e,o,s.offset);s.nextGraphemeLength();let c=this._nextVisibleColumn(l,r,i),d=s.offset+1;if(c>=t){let h=t-r;return c-t<h?d:a}r=c,a=d}return o+1}static nextRenderTabStop(e,t){return e+t-e%t}static nextIndentTabStop(e,t){return e+t-e%t}static prevRenderTabStop(e,t){return Math.max(0,e-1-(e-1)%t)}static prevIndentTabStop(e,t){return Math.max(0,e-1-(e-1)%t)}}});function IX(n,e,t){let i=0;for(let s=0;s<n.length;s++)n.charAt(s)===" "?i=Yt.nextIndentTabStop(i,e):i++;let o="";if(!t){let s=Math.floor(i/e);i=i%e;for(let r=0;r<s;r++)o+=" "}for(let s=0;s<i;s++)o+=" ";return o}function pL(n,e,t){let i=Li(n);return i===-1&&(i=n.length),IX(n.substring(0,i),e,t)+n.substring(i)}var V4=$(()=>{$e();ya()});var M1,H4,_L,sU=$(()=>{M1=class{constructor(e,t,i,o){this.range=e,this.nestingLevel=t,this.nestingLevelOfEqualBracketType=i,this.isInvalid=o}},H4=class{constructor(e,t,i,o,s,r){this.range=e,this.openingBracketRange=t,this.closingBracketRange=i,this.nestingLevel=o,this.nestingLevelOfEqualBracketType=s,this.bracketPairNode=r}get openingBracketInfo(){return this.bracketPairNode.openingBracket.bracketInfo}},_L=class extends H4{constructor(e,t,i,o,s,r,a){super(e,t,i,o,s,r),this.minVisibleColumnIndentation=a}}});function rU(n,e,t,i){return n!==t?hi(t-n,i):hi(0,i-e)}function Um(n){return n===0}function hi(n,e){return n*Ps+e}function Io(n){let e=n,t=Math.floor(e/Ps),i=e-t*Ps;return new sr(t,i)}function aU(n){return Math.floor(n/Ps)}function ui(n,e){let t=n+e;return e>=Ps&&(t=t-n%Ps),t}function lU(n,e){return n.reduce((t,i)=>ui(t,e(i)),kn)}function U4(n,e){return n===e}function qu(n,e){let t=n,i=e;if(i-t<=0)return kn;let s=Math.floor(t/Ps),r=Math.floor(i/Ps),a=i-r*Ps;if(s===r){let l=t-s*Ps;return hi(0,a-l)}else return hi(r-s,a)}function kc(n,e){return n<e}function ch(n,e){return n<=e}function $m(n,e){return n>=e}function dh(n){return hi(n.lineNumber-1,n.column-1)}function hh(n,e){let t=n,i=Math.floor(t/Ps),o=t-i*Ps,s=e,r=Math.floor(s/Ps),a=s-r*Ps;return new k(i+1,o+1,r+1,a+1)}function cU(n){let e=wr(n);return hi(e.length-1,e[e.length-1].length)}var kn,Ps,Dc=$(()=>{$e();Ee();Wg();kn=0;Ps=2**26});var Wr,bL,$4,A1=$(()=>{Ee();Dc();Wr=class n{static fromModelContentChanges(e){return e.map(i=>{let o=k.lift(i.range);return new n(dh(o.getStartPosition()),dh(o.getEndPosition()),cU(i.text))}).reverse()}constructor(e,t,i){this.startOffset=e,this.endOffset=t,this.newLength=i}toString(){return`[${Io(this.startOffset)}...${Io(this.endOffset)}) -> ${Io(this.newLength)}`}},bL=class{constructor(e){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=e.map(t=>$4.from(t))}getOffsetBeforeChange(e){return this.adjustNextEdit(e),this.translateCurToOld(e)}getDistanceToNextChange(e){this.adjustNextEdit(e);let t=this.edits[this.nextEditIdx],i=t?this.translateOldToCur(t.offsetObj):null;return i===null?null:qu(e,i)}translateOldToCur(e){return e.lineCount===this.deltaLineIdxInOld?hi(e.lineCount+this.deltaOldToNewLineCount,e.columnCount+this.deltaOldToNewColumnCount):hi(e.lineCount+this.deltaOldToNewLineCount,e.columnCount)}translateCurToOld(e){let t=Io(e);return t.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?hi(t.lineCount-this.deltaOldToNewLineCount,t.columnCount-this.deltaOldToNewColumnCount):hi(t.lineCount-this.deltaOldToNewLineCount,t.columnCount)}adjustNextEdit(e){for(;this.nextEditIdx<this.edits.length;){let t=this.edits[this.nextEditIdx],i=this.translateOldToCur(t.endOffsetAfterObj);if(ch(i,e)){this.nextEditIdx++;let o=Io(i),s=Io(this.translateOldToCur(t.endOffsetBeforeObj)),r=o.lineCount-s.lineCount;this.deltaOldToNewLineCount+=r;let a=this.deltaLineIdxInOld===t.endOffsetBeforeObj.lineCount?this.deltaOldToNewColumnCount:0,l=o.columnCount-s.columnCount;this.deltaOldToNewColumnCount=a+l,this.deltaLineIdxInOld=t.endOffsetBeforeObj.lineCount}else break}}},$4=class n{static from(e){return new n(e.startOffset,e.endOffset,e.newLength)}constructor(e,t,i){this.endOffsetBeforeObj=Io(t),this.endOffsetAfterObj=Io(ui(e,i)),this.offsetObj=Io(e)}}});var vL,Yn,q4,wL,qm=$(()=>{vL=[],Yn=class n{static{this.cache=new Array(129)}static create(e,t){if(e<=128&&t.length===0){let i=n.cache[e];return i||(i=new n(e,t),n.cache[e]=i),i}return new n(e,t)}static{this.empty=n.create(0,vL)}static getEmpty(){return this.empty}constructor(e,t){this.items=e,this.additionalItems=t}add(e,t){let i=t.getKey(e),o=i>>5;if(o===0){let r=1<<i|this.items;return r===this.items?this:n.create(r,this.additionalItems)}o--;let s=this.additionalItems.slice(0);for(;s.length<o;)s.push(0);return s[o]|=1<<(i&31),n.create(this.items,s)}merge(e){let t=this.items|e.items;if(this.additionalItems===vL&&e.additionalItems===vL)return t===this.items?this:t===e.items?e:n.create(t,vL);let i=[];for(let o=0;o<Math.max(this.additionalItems.length,e.additionalItems.length);o++){let s=this.additionalItems[o]||0,r=e.additionalItems[o]||0;i.push(s|r)}return n.create(t,i)}intersects(e){if(this.items&e.items)return!0;for(let t=0;t<Math.min(this.additionalItems.length,e.additionalItems.length);t++)if(this.additionalItems[t]&e.additionalItems[t])return!0;return!1}},q4={getKey(n){return n}},wL=class{constructor(){this.items=new Map}getKey(e){let t=this.items.get(e);return t===void 0&&(t=this.items.size,this.items.set(e,t)),t}}});var R1,P1,Os,O1,K4,CL,j4,TX,F1,Sa,B1,yL,W1=$(()=>{ht();ya();Dc();qm();R1=class{get length(){return this._length}constructor(e){this._length=e}},P1=class n extends R1{static create(e,t,i){let o=e.length;return t&&(o=ui(o,t.length)),i&&(o=ui(o,i.length)),new n(o,e,t,i,t?t.missingOpeningBracketIds:Yn.getEmpty())}get kind(){return 2}get listHeight(){return 0}get childrenLength(){return 3}getChild(e){switch(e){case 0:return this.openingBracket;case 1:return this.child;case 2:return this.closingBracket}throw new Error("Invalid child index")}get children(){let e=[];return e.push(this.openingBracket),this.child&&e.push(this.child),this.closingBracket&&e.push(this.closingBracket),e}constructor(e,t,i,o,s){super(e),this.openingBracket=t,this.child=i,this.closingBracket=o,this.missingOpeningBracketIds=s}canBeReused(e){return!(this.closingBracket===null||e.intersects(this.missingOpeningBracketIds))}deepClone(){return new n(this.length,this.openingBracket.deepClone(),this.child&&this.child.deepClone(),this.closingBracket&&this.closingBracket.deepClone(),this.missingOpeningBracketIds)}computeMinIndentation(e,t){return this.child?this.child.computeMinIndentation(ui(e,this.openingBracket.length),t):Number.MAX_SAFE_INTEGER}},Os=class extends R1{static create23(e,t,i,o=!1){let s=e.length,r=e.missingOpeningBracketIds;if(e.listHeight!==t.listHeight)throw new Error("Invalid list heights");if(s=ui(s,t.length),r=r.merge(t.missingOpeningBracketIds),i){if(e.listHeight!==i.listHeight)throw new Error("Invalid list heights");s=ui(s,i.length),r=r.merge(i.missingOpeningBracketIds)}return o?new K4(s,e.listHeight+1,e,t,i,r):new O1(s,e.listHeight+1,e,t,i,r)}static getEmpty(){return new j4(kn,0,[],Yn.getEmpty())}get kind(){return 4}get missingOpeningBracketIds(){return this._missingOpeningBracketIds}constructor(e,t,i){super(e),this.listHeight=t,this._missingOpeningBracketIds=i,this.cachedMinIndentation=-1}throwIfImmutable(){}makeLastElementMutable(){this.throwIfImmutable();let e=this.childrenLength;if(e===0)return;let t=this.getChild(e-1),i=t.kind===4?t.toMutable():t;return t!==i&&this.setChild(e-1,i),i}makeFirstElementMutable(){if(this.throwIfImmutable(),this.childrenLength===0)return;let t=this.getChild(0),i=t.kind===4?t.toMutable():t;return t!==i&&this.setChild(0,i),i}canBeReused(e){if(e.intersects(this.missingOpeningBracketIds)||this.childrenLength===0)return!1;let t=this;for(;t.kind===4;){let i=t.childrenLength;if(i===0)throw new Ge;t=t.getChild(i-1)}return t.canBeReused(e)}handleChildrenChanged(){this.throwIfImmutable();let e=this.childrenLength,t=this.getChild(0).length,i=this.getChild(0).missingOpeningBracketIds;for(let o=1;o<e;o++){let s=this.getChild(o);t=ui(t,s.length),i=i.merge(s.missingOpeningBracketIds)}this._length=t,this._missingOpeningBracketIds=i,this.cachedMinIndentation=-1}computeMinIndentation(e,t){if(this.cachedMinIndentation!==-1)return this.cachedMinIndentation;let i=Number.MAX_SAFE_INTEGER,o=e;for(let s=0;s<this.childrenLength;s++){let r=this.getChild(s);r&&(i=Math.min(i,r.computeMinIndentation(o,t)),o=ui(o,r.length))}return this.cachedMinIndentation=i,i}},O1=class n extends Os{get childrenLength(){return this._item3!==null?3:2}getChild(e){switch(e){case 0:return this._item1;case 1:return this._item2;case 2:return this._item3}throw new Error("Invalid child index")}setChild(e,t){switch(e){case 0:this._item1=t;return;case 1:this._item2=t;return;case 2:this._item3=t;return}throw new Error("Invalid child index")}get children(){return this._item3?[this._item1,this._item2,this._item3]:[this._item1,this._item2]}get item1(){return this._item1}get item2(){return this._item2}get item3(){return this._item3}constructor(e,t,i,o,s,r){super(e,t,r),this._item1=i,this._item2=o,this._item3=s}deepClone(){return new n(this.length,this.listHeight,this._item1.deepClone(),this._item2.deepClone(),this._item3?this._item3.deepClone():null,this.missingOpeningBracketIds)}appendChildOfSameHeight(e){if(this._item3)throw new Error("Cannot append to a full (2,3) tree node");this.throwIfImmutable(),this._item3=e,this.handleChildrenChanged()}unappendChild(){if(!this._item3)throw new Error("Cannot remove from a non-full (2,3) tree node");this.throwIfImmutable();let e=this._item3;return this._item3=null,this.handleChildrenChanged(),e}prependChildOfSameHeight(e){if(this._item3)throw new Error("Cannot prepend to a full (2,3) tree node");this.throwIfImmutable(),this._item3=this._item2,this._item2=this._item1,this._item1=e,this.handleChildrenChanged()}unprependChild(){if(!this._item3)throw new Error("Cannot remove from a non-full (2,3) tree node");this.throwIfImmutable();let e=this._item1;return this._item1=this._item2,this._item2=this._item3,this._item3=null,this.handleChildrenChanged(),e}toMutable(){return this}},K4=class extends O1{toMutable(){return new O1(this.length,this.listHeight,this.item1,this.item2,this.item3,this.missingOpeningBracketIds)}throwIfImmutable(){throw new Error("this instance is immutable")}},CL=class n extends Os{get childrenLength(){return this._children.length}getChild(e){return this._children[e]}setChild(e,t){this._children[e]=t}get children(){return this._children}constructor(e,t,i,o){super(e,t,o),this._children=i}deepClone(){let e=new Array(this._children.length);for(let t=0;t<this._children.length;t++)e[t]=this._children[t].deepClone();return new n(this.length,this.listHeight,e,this.missingOpeningBracketIds)}appendChildOfSameHeight(e){this.throwIfImmutable(),this._children.push(e),this.handleChildrenChanged()}unappendChild(){this.throwIfImmutable();let e=this._children.pop();return this.handleChildrenChanged(),e}prependChildOfSameHeight(e){this.throwIfImmutable(),this._children.unshift(e),this.handleChildrenChanged()}unprependChild(){this.throwIfImmutable();let e=this._children.shift();return this.handleChildrenChanged(),e}toMutable(){return this}},j4=class extends CL{toMutable(){return new CL(this.length,this.listHeight,[...this.children],this.missingOpeningBracketIds)}throwIfImmutable(){throw new Error("this instance is immutable")}},TX=[],F1=class extends R1{get listHeight(){return 0}get childrenLength(){return 0}getChild(e){return null}get children(){return TX}deepClone(){return this}},Sa=class extends F1{get kind(){return 0}get missingOpeningBracketIds(){return Yn.getEmpty()}canBeReused(e){return!0}computeMinIndentation(e,t){let i=Io(e),o=(i.columnCount===0?i.lineCount:i.lineCount+1)+1,s=aU(ui(e,this.length))+1,r=Number.MAX_SAFE_INTEGER;for(let a=o;a<=s;a++){let l=t.getLineFirstNonWhitespaceColumn(a),c=t.getLineContent(a);if(l===0)continue;let d=Yt.visibleColumnFromColumn(c,l,t.getOptions().tabSize);r=Math.min(r,d)}return r}},B1=class n extends F1{static create(e,t,i){return new n(e,t,i)}get kind(){return 1}get missingOpeningBracketIds(){return Yn.getEmpty()}constructor(e,t,i){super(e),this.bracketInfo=t,this.bracketIds=i}get text(){return this.bracketInfo.bracketText}get languageId(){return this.bracketInfo.languageId}canBeReused(e){return!1}computeMinIndentation(e,t){return Number.MAX_SAFE_INTEGER}},yL=class extends F1{get kind(){return 3}constructor(e,t){super(t),this.missingOpeningBracketIds=e}canBeReused(e){return!e.intersects(this.missingOpeningBracketIds)}computeMinIndentation(e,t){return Number.MAX_SAFE_INTEGER}}});var xa,SL,G4,xL,Z4=$(()=>{ht();Qg();W1();Dc();qm();xa=class{constructor(e,t,i,o,s){this.length=e,this.kind=t,this.bracketId=i,this.bracketIds=o,this.astNode=s}},SL=class{constructor(e,t){this.textModel=e,this.bracketTokens=t,this.reader=new G4(this.textModel,this.bracketTokens),this._offset=kn,this.didPeek=!1,this.peeked=null,this.textBufferLineCount=e.getLineCount(),this.textBufferLastLineLength=e.getLineLength(this.textBufferLineCount)}get offset(){return this._offset}get length(){return hi(this.textBufferLineCount-1,this.textBufferLastLineLength)}skip(e){this.didPeek=!1,this._offset=ui(this._offset,e);let t=Io(this._offset);this.reader.setPosition(t.lineCount,t.columnCount)}read(){let e;return this.peeked?(this.didPeek=!1,e=this.peeked):e=this.reader.read(),e&&(this._offset=ui(this._offset,e.length)),e}peek(){return this.didPeek||(this.peeked=this.reader.read(),this.didPeek=!0),this.peeked}},G4=class{constructor(e,t){this.textModel=e,this.bracketTokens=t,this.lineIdx=0,this.line=null,this.lineCharOffset=0,this.lineTokens=null,this.lineTokenOffset=0,this.peekedToken=null,this.textBufferLineCount=e.getLineCount(),this.textBufferLastLineLength=e.getLineLength(this.textBufferLineCount)}setPosition(e,t){e===this.lineIdx?(this.lineCharOffset=t,this.line!==null&&(this.lineTokenOffset=this.lineCharOffset===0?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset))):(this.lineIdx=e,this.lineCharOffset=t,this.line=null),this.peekedToken=null}read(){if(this.peekedToken){let s=this.peekedToken;return this.peekedToken=null,this.lineCharOffset+=s.length,s}if(this.lineIdx>this.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;this.line===null&&(this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=this.lineCharOffset===0?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));let e=this.lineIdx,t=this.lineCharOffset,i=0;for(;;){let s=this.lineTokens,r=s.getCount(),a=null;if(this.lineTokenOffset<r){let l=s.getMetadata(this.lineTokenOffset);for(;this.lineTokenOffset+1<r&&l===s.getMetadata(this.lineTokenOffset+1);)this.lineTokenOffset++;let c=ln.getTokenType(l)===0,d=ln.containsBalancedBrackets(l),h=s.getEndOffset(this.lineTokenOffset);if(d&&c&&this.lineCharOffset<h){let u=s.getLanguageId(this.lineTokenOffset),f=this.line.substring(this.lineCharOffset,h),g=this.bracketTokens.getSingleLanguageBracketTokens(u),m=g.regExpGlobal;if(m){m.lastIndex=0;let _=m.exec(f);_&&(a=g.getToken(_[0]),a&&(this.lineCharOffset+=_.index))}}if(i+=h-this.lineCharOffset,a)if(e!==this.lineIdx||t!==this.lineCharOffset){this.peekedToken=a;break}else return this.lineCharOffset+=a.length,a;else this.lineTokenOffset++,this.lineCharOffset=h}else if(this.lineIdx===this.textBufferLineCount-1||(this.lineIdx++,this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.lineTokenOffset=0,this.line=this.lineTokens.getLineContent(),this.lineCharOffset=0,i+=33,i>1e3))break;if(i>1500)break}let o=rU(e,t,this.lineIdx,this.lineCharOffset);return new xa(o,0,-1,Yn.getEmpty(),new Sa(o))}},xL=class{constructor(e,t){this.text=e,this._offset=kn,this.idx=0;let i=t.getRegExpStr(),o=i?new RegExp(i+`|
|
|
32
|
+
`,this}appendLink(e,t,i){return this.value+="[",this.value+=this._escape(t,"]"),this.value+="](",this.value+=this._escape(String(e),")"),i&&(this.value+=` "${this._escape(this._escape(i,'"'),")")}"`),this.value+=")",this}_escape(e,t){let i=new RegExp(Xo(t),"g");return e.replace(i,(o,s)=>e.charAt(s-1)!=="\\"?`\\${o}`:o)}}});function Zve(n,e){let t=e.lineNumber;if(!n.tokenization.isCheapToTokenize(t))return;n.tokenization.forceTokenization(t);let i=n.tokenization.getLineTokens(t),o=i.findTokenIndexAtOffset(e.column-1);return i.getStandardTokenType(o)}var di,AR,pa=$(()=>{Qg();di=class n{static{this.defaultTokenMetadata=(32768|2<<24)>>>0}static createEmpty(e,t){let i=n.defaultTokenMetadata,o=new Uint32Array(2);return o[0]=e.length,o[1]=i,new n(o,e,t)}static createFromTextAndMetadata(e,t){let i=0,o="",s=new Array;for(let{text:r,metadata:a}of e)s.push(i+r.length,a),i+=r.length,o+=r;return new n(new Uint32Array(s),o,t)}constructor(e,t,i){this._lineTokensBrand=void 0,this._tokens=e,this._tokensCount=this._tokens.length>>>1,this._text=t,this.languageIdCodec=i}equals(e){return e instanceof n?this.slicedEquals(e,0,this._tokensCount):!1}slicedEquals(e,t,i){if(this._text!==e._text||this._tokensCount!==e._tokensCount)return!1;let o=t<<1,s=o+(i<<1);for(let r=o;r<s;r++)if(this._tokens[r]!==e._tokens[r])return!1;return!0}getLineContent(){return this._text}getCount(){return this._tokensCount}getStartOffset(e){return e>0?this._tokens[e-1<<1]:0}getMetadata(e){return this._tokens[(e<<1)+1]}getLanguageId(e){let t=this._tokens[(e<<1)+1],i=ln.getLanguageId(t);return this.languageIdCodec.decodeLanguageId(i)}getStandardTokenType(e){let t=this._tokens[(e<<1)+1];return ln.getTokenType(t)}getForeground(e){let t=this._tokens[(e<<1)+1];return ln.getForeground(t)}getClassName(e){let t=this._tokens[(e<<1)+1];return ln.getClassNameFromMetadata(t)}getInlineStyle(e,t){let i=this._tokens[(e<<1)+1];return ln.getInlineStyleFromMetadata(i,t)}getPresentation(e){let t=this._tokens[(e<<1)+1];return ln.getPresentationFromMetadata(t)}getEndOffset(e){return this._tokens[e<<1]}findTokenIndexAtOffset(e){return n.findIndexInTokensArray(this._tokens,e)}inflate(){return this}sliceAndInflate(e,t,i){return new AR(this,e,t,i)}static convertToEndOffset(e,t){let o=(e.length>>>1)-1;for(let s=0;s<o;s++)e[s<<1]=e[s+1<<1];e[o<<1]=t}static findIndexInTokensArray(e,t){if(e.length<=2)return 0;let i=0,o=(e.length>>>1)-1;for(;i<o;){let s=i+Math.floor((o-i)/2),r=e[s<<1];if(r===t)return s+1;r<t?i=s+1:r>t&&(o=s)}return i}withInserted(e){if(e.length===0)return this;let t=0,i=0,o="",s=new Array,r=0;for(;;){let a=t<this._tokensCount?this._tokens[t<<1]:-1,l=i<e.length?e[i]:null;if(a!==-1&&(l===null||a<=l.offset)){o+=this._text.substring(r,a);let c=this._tokens[(t<<1)+1];s.push(o.length,c),t++,r=a}else if(l){if(l.offset>r){o+=this._text.substring(r,l.offset);let c=this._tokens[(t<<1)+1];s.push(o.length,c),r=l.offset}o+=l.text,s.push(o.length,l.tokenMetadata),i++}else break}return new n(new Uint32Array(s),o,this.languageIdCodec)}getTokenText(e){let t=this.getStartOffset(e),i=this.getEndOffset(e);return this._text.substring(t,i)}forEach(e){let t=this.getCount();for(let i=0;i<t;i++)e(i)}},AR=class n{constructor(e,t,i,o){this._source=e,this._startOffset=t,this._endOffset=i,this._deltaOffset=o,this._firstTokenIndex=e.findTokenIndexAtOffset(t),this.languageIdCodec=e.languageIdCodec,this._tokensCount=0;for(let s=this._firstTokenIndex,r=e.getCount();s<r&&!(e.getStartOffset(s)>=i);s++)this._tokensCount++}getMetadata(e){return this._source.getMetadata(this._firstTokenIndex+e)}getLanguageId(e){return this._source.getLanguageId(this._firstTokenIndex+e)}getLineContent(){return this._source.getLineContent().substring(this._startOffset,this._endOffset)}equals(e){return e instanceof n?this._startOffset===e._startOffset&&this._endOffset===e._endOffset&&this._deltaOffset===e._deltaOffset&&this._source.slicedEquals(e._source,this._firstTokenIndex,this._tokensCount):!1}getCount(){return this._tokensCount}getStandardTokenType(e){return this._source.getStandardTokenType(this._firstTokenIndex+e)}getForeground(e){return this._source.getForeground(this._firstTokenIndex+e)}getEndOffset(e){let t=this._source.getEndOffset(this._firstTokenIndex+e);return Math.min(this._endOffset,t)-this._startOffset+this._deltaOffset}getClassName(e){return this._source.getClassName(this._firstTokenIndex+e)}getInlineStyle(e,t){return this._source.getInlineStyle(this._firstTokenIndex+e,t)}getPresentation(e){return this._source.getPresentation(this._firstTokenIndex+e)}findTokenIndexAtOffset(e){return this._source.findTokenIndexAtOffset(e+this._startOffset-this._deltaOffset)-this._firstTokenIndex}getTokenText(e){let t=this._firstTokenIndex+e,i=this._source.getStartOffset(t),o=this._source.getEndOffset(t),s=this._source.getTokenText(t);return i<this._startOffset&&(s=s.substring(this._startOffset-i)),o>this._endOffset&&(s=s.substring(0,s.length-(o-this._endOffset))),s}forEach(e){for(let t=0;t<this.getCount();t++)e(t)}}});function ex(n,e){return new gd([new na(0,"",n)],e)}function mm(n,e){let t=new Uint32Array(2);return t[0]=0,t[1]=(n<<0|0|0|32768|2<<24)>>>0,new oc(t,e===null?Jd:e)}var Jd,h1=$(()=>{vo();Jd=new class{clone(){return this}equals(n){return this===n}}});var wV,CV,yV,SV,xV,wx,LV,Cx,ZR=$(()=>{ke();(function(n){n.inspectTokensAction=p("inspectTokens","Developer: Inspect Tokens")})(wV||(wV={}));(function(n){n.gotoLineActionLabel=p("gotoLineActionLabel","Go to Line/Column...")})(CV||(CV={}));(function(n){n.helpQuickAccessActionLabel=p("helpQuickAccess","Show all Quick Access Providers")})(yV||(yV={}));(function(n){n.quickCommandActionLabel=p("quickCommandActionLabel","Command Palette"),n.quickCommandHelp=p("quickCommandActionHelp","Show And Run Commands")})(SV||(SV={}));(function(n){n.quickOutlineActionLabel=p("quickOutlineActionLabel","Go to Symbol..."),n.quickOutlineByCategoryActionLabel=p("quickOutlineByCategoryActionLabel","Go to Symbol by Category...")})(xV||(xV={}));(function(n){n.editorViewAccessibleLabel=p("editorViewAccessibleLabel","Editor content")})(wx||(wx={}));(function(n){n.toggleHighContrast=p("toggleHighContrast","Toggle High Contrast Theme")})(LV||(LV={}));(function(n){n.bulkEditServiceSummary=p("bulkEditServiceSummary","Made {0} edits in {1} files")})(Cx||(Cx={}))});function AV(n=ho){return(e,t)=>xt(e,t,n)}function ZCe(){return(n,e)=>n.equals(e)}function XR(n,e,t){if(t!==void 0){let i=n;return i==null||e===void 0||e===null?e===i:t(i,e)}else{let i=n;return(o,s)=>o==null||s===void 0||s===null?s===o:i(o,s)}}function MV(n,e){if(n===e)return!0;if(Array.isArray(n)&&Array.isArray(e)){if(n.length!==e.length)return!1;for(let t=0;t<n.length;t++)if(!MV(n[t],e[t]))return!1;return!0}if(n&&typeof n=="object"&&e&&typeof e=="object"&&Object.getPrototypeOf(n)===Object.prototype&&Object.getPrototypeOf(e)===Object.prototype){let t=n,i=e,o=Object.keys(t),s=Object.keys(i),r=new Set(s);if(o.length!==s.length)return!1;for(let a of o)if(!r.has(a)||!MV(t[a],i[a]))return!1;return!0}return!1}var ho,xm=$(()=>{tt();ho=(n,e)=>n===e});function YQ(n,e){let t=JR.get(n);if(t)return t;let i=QQ(n,e);if(i){let o=RV.get(i)??0;o++,RV.set(i,o);let s=o===1?i:`${i}#${o}`;return JR.set(n,s),s}}function QQ(n,e){let t=JR.get(n);if(t)return t;let i=e.owner?JQ(e.owner)+".":"",o,s=e.debugNameSource;if(s!==void 0)if(typeof s=="function"){if(o=s(),o!==void 0)return i+o}else return i+s;let r=e.referenceFn;if(r!==void 0&&(o=xx(r),o!==void 0))return i+o;if(e.owner!==void 0){let a=XQ(e.owner,n);if(a!==void 0)return i+a}}function XQ(n,e){for(let t in n)if(n[t]===e)return t}function JQ(n){let e=OV.get(n);if(e)return e;let t=eX(n),i=PV.get(t)??0;i++,PV.set(t,i);let o=i===1?t:`${t}#${i}`;return OV.set(n,o),o}function eX(n){let e=n.constructor;return e?e.name:"Object"}function xx(n){let e=n.toString(),i=/\/\*\*\s*@description\s*([^*]*)\*\//.exec(e);return(i?i[1]:void 0)?.trim()}var Ai,RV,JR,PV,OV,Lm=$(()=>{Ai=class{constructor(e,t,i){this.owner=e,this.debugNameSource=t,this.referenceFn=i}getDebugName(e){return YQ(e,this)}},RV=new Map,JR=new WeakMap;PV=new Map,OV=new WeakMap});function BV(n){FV=n}function Rs(){return FV}function tX(n){let e=new Array,t=[],i="";function o(r){if("length"in r)for(let a of r)a&&o(a);else"text"in r?(i+=`%c${r.text}`,e.push(r.style),r.data&&t.push(...r.data)):"data"in r&&t.push(...r.data)}o(n);let s=[i,...e];return s.push(...t),s}function km(n){return _a(n,{color:"black"})}function C1(n){return _a(sX(`${n}: `,10),{color:"black",bold:!0})}function _a(n,e={color:"black"}){function t(o){return Object.entries(o).reduce((s,[r,a])=>`${s}${r}:${a};`,"")}let i={color:e.color};return e.strikeThrough&&(i["text-decoration"]="line-through"),e.bold&&(i["font-weight"]="bold"),{text:n,style:t(i)}}function y1(n,e){switch(typeof n){case"number":return""+n;case"string":return n.length+2<=e?`"${n}"`:`"${n.substr(0,e-7)}"+...`;case"boolean":return n?"true":"false";case"undefined":return"undefined";case"object":return n===null?"null":Array.isArray(n)?iX(n,e):nX(n,e);case"symbol":return n.toString();case"function":return`[[Function${n.name?" "+n.name:""}]]`;default:return""+n}}function iX(n,e){let t="[ ",i=!0;for(let o of n){if(i||(t+=", "),t.length-5>e){t+="...";break}i=!1,t+=`${y1(o,e-t.length)}`}return t+=" ]",t}function nX(n,e){let t="{ ",i=!0;for(let[o,s]of Object.entries(n)){if(i||(t+=", "),t.length-5>e){t+="...";break}i=!1,t+=`${o}: ${y1(s,e-t.length)}`}return t+=" }",t}function oX(n,e){let t="";for(let i=1;i<=e;i++)t+=n;return t}function sX(n,e){for(;n.length<e;)n+=" ";return n}var FV,Lx,Dm=$(()=>{Lx=class{constructor(){this.indentation=0,this.changedObservablesSets=new WeakMap}textToConsoleArgs(e){return tX([km(oX("| ",this.indentation)),e])}formatInfo(e){return e.hadValue?e.didChange?[km(" "),_a(y1(e.oldValue,70),{color:"red",strikeThrough:!0}),km(" "),_a(y1(e.newValue,60),{color:"green"})]:[km(" (unchanged)")]:[km(" "),_a(y1(e.newValue,60),{color:"green"}),km(" (initial)")]}handleObservableChanged(e,t){console.log(...this.textToConsoleArgs([C1("observable value changed"),_a(e.debugName,{color:"BlueViolet"}),...this.formatInfo(t)]))}formatChanges(e){if(e.size!==0)return _a(" (changed deps: "+[...e].map(t=>t.debugName).join(", ")+")",{color:"gray"})}handleDerivedCreated(e){let t=e.handleChange;this.changedObservablesSets.set(e,new Set),e.handleChange=(i,o)=>(this.changedObservablesSets.get(e).add(i),t.apply(e,[i,o]))}handleDerivedRecomputed(e,t){let i=this.changedObservablesSets.get(e);console.log(...this.textToConsoleArgs([C1("derived recomputed"),_a(e.debugName,{color:"BlueViolet"}),...this.formatInfo(t),this.formatChanges(i),{data:[{fn:e._debugNameData.referenceFn??e._computeFn}]}])),i.clear()}handleFromEventObservableTriggered(e,t){console.log(...this.textToConsoleArgs([C1("observable from event triggered"),_a(e.debugName,{color:"BlueViolet"}),...this.formatInfo(t),{data:[{fn:e._getValue}]}]))}handleAutorunCreated(e){let t=e.handleChange;this.changedObservablesSets.set(e,new Set),e.handleChange=(i,o)=>(this.changedObservablesSets.get(e).add(i),t.apply(e,[i,o]))}handleAutorunTriggered(e){let t=this.changedObservablesSets.get(e);console.log(...this.textToConsoleArgs([C1("autorun"),_a(e.debugName,{color:"BlueViolet"}),this.formatChanges(t),{data:[{fn:e._debugNameData.referenceFn??e._runFn}]}])),t.clear(),this.indentation++}handleAutorunFinished(e){this.indentation--}handleBeginTransaction(e){let t=e.getDebugName();t===void 0&&(t=""),console.log(...this.textToConsoleArgs([C1("transaction"),_a(t,{color:"BlueViolet"}),{data:[{fn:e._fn}]}])),this.indentation++}handleEndTransaction(){this.indentation--}}});function zV(n){WV=n}function HV(n){VV=n}function UV(n){e4=n}function Dt(n,e){let t=new vl(n,e);try{n(t)}finally{t.finish()}}function Au(n){if(kx)n(kx);else{let e=new vl(n,void 0);kx=e;try{n(e)}finally{e.finish(),kx=void 0}}}async function iye(n,e){let t=new vl(n,e);try{await n(t)}finally{t.finish()}}function Ru(n,e,t){n?e(n):Dt(e,t)}function Oe(n,e){let t;return typeof n=="string"?t=new Ai(void 0,n,void 0):t=new Ai(n,void 0,void 0),new Em(t,e,ho)}function x1(n,e){let t;return typeof n=="string"?t=new Ai(void 0,n,void 0):t=new Ai(n,void 0,void 0),new t4(t,e,ho)}var WV,VV,e4,S1,ba,kx,vl,Em,t4,wl=$(()=>{xm();Lm();Dm();S1=class{get TChange(){return null}reportChanges(){this.get()}read(e){return e?e.readObservable(this):this.get()}map(e,t){let i=t===void 0?void 0:e,o=t===void 0?e:t;return e4({owner:i,debugName:()=>{let s=xx(o);if(s!==void 0)return s;let a=/^\s*\(?\s*([a-zA-Z_$][a-zA-Z_$0-9]*)\s*\)?\s*=>\s*\1(?:\??)\.([a-zA-Z_$][a-zA-Z_$0-9]*)\s*$/.exec(o.toString());if(a)return`${this.debugName}.${a[2]}`;if(!i)return`${this.debugName} (mapped)`},debugReferenceFn:o},s=>o(this.read(s),s))}flatten(){return e4({owner:void 0,debugName:()=>`${this.debugName} (flattened)`},e=>this.read(e).read(e))}recomputeInitiallyAndOnChange(e,t){return e.add(WV(this,t)),this}keepObserved(e){return e.add(VV(this)),this}},ba=class extends S1{constructor(){super(...arguments),this.observers=new Set}addObserver(e){let t=this.observers.size;this.observers.add(e),t===0&&this.onFirstObserverAdded()}removeObserver(e){this.observers.delete(e)&&this.observers.size===0&&this.onLastObserverRemoved()}onFirstObserverAdded(){}onLastObserverRemoved(){}};vl=class{constructor(e,t){this._fn=e,this._getDebugName=t,this.updatingObservers=[],Rs()?.handleBeginTransaction(this)}getDebugName(){return this._getDebugName?this._getDebugName():xx(this._fn)}updateObserver(e,t){this.updatingObservers.push({observer:e,observable:t}),e.beginUpdate(t)}finish(){let e=this.updatingObservers;for(let t=0;t<e.length;t++){let{observer:i,observable:o}=e[t];i.endUpdate(o)}this.updatingObservers=null,Rs()?.handleEndTransaction()}};Em=class extends ba{get debugName(){return this._debugNameData.getDebugName(this)??"ObservableValue"}constructor(e,t,i){super(),this._debugNameData=e,this._equalityComparator=i,this._value=t}get(){return this._value}set(e,t,i){if(i===void 0&&this._equalityComparator(this._value,e))return;let o;t||(t=o=new vl(()=>{},()=>`Setting ${this.debugName}`));try{let s=this._value;this._setValue(e),Rs()?.handleObservableChanged(this,{oldValue:s,newValue:e,change:i,didChange:!0,hadValue:!0});for(let r of this.observers)t.updateObserver(r,this),r.handleChange(this,i)}finally{o&&o.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}};t4=class extends Em{_setValue(e){this._value!==e&&(this._value&&this._value.dispose(),this._value=e)}dispose(){this._value?.dispose()}}});function Se(n,e){return e!==void 0?new wc(new Ai(n,void 0,e),e,void 0,void 0,void 0,ho):new wc(new Ai(void 0,void 0,n),n,void 0,void 0,void 0,ho)}function Im(n,e,t){return new i4(new Ai(n,void 0,e),e,void 0,void 0,void 0,ho,t)}function Cc(n,e){return new wc(new Ai(n.owner,n.debugName,n.debugReferenceFn),e,void 0,void 0,n.onLastObserverRemoved,n.equalsFn??ho)}function rX(n,e){return new wc(new Ai(n.owner,n.debugName,void 0),e,n.createEmptyChangeSummary,n.handleChange,void 0,n.equalityComparer??ho)}function ar(n,e){let t,i;e===void 0?(t=n,i=void 0):(i=n,t=e);let o=new Q;return new wc(new Ai(i,void 0,t),s=>(o.clear(),t(s,o)),void 0,void 0,()=>o.dispose(),ho)}function lr(n,e){let t,i;e===void 0?(t=n,i=void 0):(i=n,t=e);let o;return new wc(new Ai(i,void 0,t),s=>{o?o.clear():o=new Q;let r=t(s);return r&&o.add(r),r},void 0,void 0,()=>{o&&(o.dispose(),o=void 0)},ho)}var wc,i4,ih=$(()=>{la();xm();X();wl();Lm();Dm();UV(Cc);wc=class extends ba{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,o,s=void 0,r){super(),this._debugNameData=e,this._computeFn=t,this.createChangeSummary=i,this._handleChange=o,this._handleLastObserverRemoved=s,this._equalityComparator=r,this.state=0,this.value=void 0,this.updateCount=0,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=void 0,this.changeSummary=this.createChangeSummary?.(),Rs()?.handleDerivedCreated(this)}onLastObserverRemoved(){this.state=0,this.value=void 0;for(let e of this.dependencies)e.removeObserver(this);this.dependencies.clear(),this._handleLastObserverRemoved?.()}get(){if(this.observers.size===0){let e=this._computeFn(this,this.createChangeSummary?.());return this.onLastObserverRemoved(),e}else{do{if(this.state===1){for(let e of this.dependencies)if(e.reportChanges(),this.state===2)break}this.state===1&&(this.state=3),this._recomputeIfNeeded()}while(this.state!==3);return this.value}}_recomputeIfNeeded(){if(this.state===3)return;let e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e;let t=this.state!==0,i=this.value;this.state=3;let o=this.changeSummary;this.changeSummary=this.createChangeSummary?.();try{this.value=this._computeFn(this,o)}finally{for(let r of this.dependenciesToBeRemoved)r.removeObserver(this);this.dependenciesToBeRemoved.clear()}let s=t&&!this._equalityComparator(i,this.value);if(Rs()?.handleDerivedRecomputed(this,{oldValue:i,newValue:this.value,change:void 0,didChange:s,hadValue:t}),s)for(let r of this.observers)r.handleChange(this,void 0)}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(e){this.updateCount++;let t=this.updateCount===1;if(this.state===3&&(this.state=1,!t))for(let i of this.observers)i.handlePossibleChange(this);if(t)for(let i of this.observers)i.beginUpdate(this)}endUpdate(e){if(this.updateCount--,this.updateCount===0){let t=[...this.observers];for(let i of t)i.endUpdate(this)}kr(()=>this.updateCount>=0)}handlePossibleChange(e){if(this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){this.state=1;for(let t of this.observers)t.handlePossibleChange(this)}}handleChange(e,t){if(this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)){let i=this._handleChange?this._handleChange({changedObservable:e,change:t,didChange:s=>s===e},this.changeSummary):!0,o=this.state===3;if(i&&(this.state===1||o)&&(this.state=2,o))for(let s of this.observers)s.handlePossibleChange(this)}}readObservable(e){e.addObserver(this);let t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}addObserver(e){let t=!this.observers.has(e)&&this.updateCount>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){let t=this.observers.has(e)&&this.updateCount>0;super.removeObserver(e),t&&e.endUpdate(this)}},i4=class extends wc{constructor(e,t,i,o,s=void 0,r,a){super(e,t,i,o,s,r),this.set=a}}});function qe(n){return new Tm(new Ai(void 0,void 0,n),n,void 0,void 0)}function nh(n,e){return new Tm(new Ai(n.owner,n.debugName,n.debugReferenceFn??e),e,void 0,void 0)}function yc(n,e){return new Tm(new Ai(n.owner,n.debugName,n.debugReferenceFn??e),e,n.createEmptyChangeSummary,n.handleChange)}function n4(n,e){let t=new Q,i=yc({owner:n.owner,debugName:n.debugName,debugReferenceFn:n.debugReferenceFn??e,createEmptyChangeSummary:n.createEmptyChangeSummary,handleChange:n.handleChange},(o,s)=>{t.clear(),e(o,s,t)});return ce(()=>{i.dispose(),t.dispose()})}function Ln(n){let e=new Q,t=nh({owner:void 0,debugName:void 0,debugReferenceFn:n},i=>{e.clear(),n(i,e)});return ce(()=>{t.dispose(),e.dispose()})}var Tm,o4=$(()=>{la();X();Lm();Dm();Tm=class{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(e,t,i,o){this._debugNameData=e,this._runFn=t,this.createChangeSummary=i,this._handleChange=o,this.state=2,this.updateCount=0,this.disposed=!1,this.dependencies=new Set,this.dependenciesToBeRemoved=new Set,this.changeSummary=this.createChangeSummary?.(),Rs()?.handleAutorunCreated(this),this._runIfNeeded(),zh(this)}dispose(){this.disposed=!0;for(let e of this.dependencies)e.removeObserver(this);this.dependencies.clear(),Vh(this)}_runIfNeeded(){if(this.state===3)return;let e=this.dependenciesToBeRemoved;this.dependenciesToBeRemoved=this.dependencies,this.dependencies=e,this.state=3;let t=this.disposed;try{if(!t){Rs()?.handleAutorunTriggered(this);let i=this.changeSummary;this.changeSummary=this.createChangeSummary?.(),this._runFn(this,i)}}finally{t||Rs()?.handleAutorunFinished(this);for(let i of this.dependenciesToBeRemoved)i.removeObserver(this);this.dependenciesToBeRemoved.clear()}}toString(){return`Autorun<${this.debugName}>`}beginUpdate(){this.state===3&&(this.state=1),this.updateCount++}endUpdate(){if(this.updateCount===1)do{if(this.state===1){this.state=3;for(let e of this.dependencies)if(e.reportChanges(),this.state===2)break}this._runIfNeeded()}while(this.state!==3);this.updateCount--,kr(()=>this.updateCount>=0)}handlePossibleChange(e){this.state===3&&this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(this.state=1)}handleChange(e,t){this.dependencies.has(e)&&!this.dependenciesToBeRemoved.has(e)&&(!this._handleChange||this._handleChange({changedObservable:e,change:t,didChange:o=>o===e},this.changeSummary))&&(this.state=2)}readObservable(e){if(this.disposed)return e.get();e.addObserver(this);let t=e.get();return this.dependencies.add(e),this.dependenciesToBeRemoved.delete(e),t}};(function(n){n.Observer=Tm})(qe||(qe={}))});function oh(n){return new s4(n)}function St(...n){let e,t,i;return n.length===3?[e,t,i]=n:[t,i]=n,new Cl(new Ai(e,void 0,i),t,i,()=>Cl.globalTransaction,ho)}function $V(n,e,t){return new Cl(new Ai(n.owner,n.debugName,n.debugReferenceFn??t),e,t,()=>Cl.globalTransaction,n.equalsFn??ho)}function Gn(n,e){return new r4(n,e)}function Pu(n){return typeof n=="string"?new Dx(n):new Dx(void 0,n)}function qV(n){let e=new Ex(!1,void 0);return n.addObserver(e),ce(()=>{n.removeObserver(e)})}function sh(n,e){let t=new Ex(!0,e);return n.addObserver(t),e?e(n.get()):n.reportChanges(),ce(()=>{n.removeObserver(t)})}function KV(n,e){let t;return Cc({owner:n,debugReferenceFn:e},o=>(t=e(o,t),t))}function Sye(n,e,t,i){let o=new Ix(t,i);return Cc({debugReferenceFn:t,owner:n,onLastObserverRemoved:()=>{o.dispose(),o=new Ix(t)}},r=>(o.setItems(e.read(r)),o.getItems()))}function jV(n,e){return KV(n,(t,i)=>i??e(t))}var s4,Cl,r4,Dx,Ex,Ix,Tx=$(()=>{fe();X();wl();Lm();ih();Dm();xm();s4=class extends S1{constructor(e){super(),this.value=e}get debugName(){return this.toString()}get(){return this.value}addObserver(e){}removeObserver(e){}toString(){return`Const: ${this.value}`}};Cl=class extends ba{constructor(e,t,i,o,s){super(),this._debugNameData=e,this.event=t,this._getValue=i,this._getTransaction=o,this._equalityComparator=s,this.hasValue=!1,this.handleEvent=r=>{let a=this._getValue(r),l=this.value,c=!this.hasValue||!this._equalityComparator(l,a),d=!1;c&&(this.value=a,this.hasValue&&(d=!0,Ru(this._getTransaction(),h=>{Rs()?.handleFromEventObservableTriggered(this,{oldValue:l,newValue:a,change:void 0,didChange:c,hadValue:this.hasValue});for(let u of this.observers)h.updateObserver(u,this),u.handleChange(this,void 0)},()=>{let h=this.getDebugName();return"Event fired"+(h?`: ${h}`:"")})),this.hasValue=!0),d||Rs()?.handleFromEventObservableTriggered(this,{oldValue:l,newValue:a,change:void 0,didChange:c,hadValue:this.hasValue})}}getDebugName(){return this._debugNameData.getDebugName(this)}get debugName(){let e=this.getDebugName();return"From Event"+(e?`: ${e}`:"")}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0,this.hasValue=!1,this.value=void 0}get(){return this.subscription?(this.hasValue||this.handleEvent(void 0),this.value):this._getValue(void 0)}};(function(n){n.Observer=Cl;function e(t,i){let o=!1;Cl.globalTransaction===void 0&&(Cl.globalTransaction=t,o=!0);try{i()}finally{o&&(Cl.globalTransaction=void 0)}}n.batchEventsGlobally=e})(St||(St={}));r4=class extends ba{constructor(e,t){super(),this.debugName=e,this.event=t,this.handleEvent=()=>{Dt(i=>{for(let o of this.observers)i.updateObserver(o,this),o.handleChange(this,void 0)},()=>this.debugName)}}onFirstObserverAdded(){this.subscription=this.event(this.handleEvent)}onLastObserverRemoved(){this.subscription.dispose(),this.subscription=void 0}get(){}};Dx=class extends ba{get debugName(){return new Ai(this._owner,this._debugName,void 0).getDebugName(this)??"Observable Signal"}toString(){return this.debugName}constructor(e,t){super(),this._debugName=e,this._owner=t}trigger(e,t){if(!e){Dt(i=>{this.trigger(i,t)},()=>`Trigger signal ${this.debugName}`);return}for(let i of this.observers)e.updateObserver(i,this),i.handleChange(this,t)}get(){}};HV(qV);zV(sh);Ex=class{constructor(e,t){this._forceRecompute=e,this._handleValue=t,this._counter=0}beginUpdate(e){this._counter++}endUpdate(e){this._counter--,this._counter===0&&this._forceRecompute&&(this._handleValue?this._handleValue(e.get()):e.reportChanges())}handlePossibleChange(e){}handleChange(e,t){}};Ix=class{constructor(e,t){this._map=e,this._keySelector=t,this._cache=new Map,this._items=[]}dispose(){this._cache.forEach(e=>e.store.dispose()),this._cache.clear()}setItems(e){let t=[],i=new Set(this._cache.keys());for(let o of e){let s=this._keySelector?this._keySelector(o):o,r=this._cache.get(s);if(r)i.delete(s);else{let a=new Q;r={out:this._map(o,a),store:a},this._cache.set(s,r)}t.push(r.out)}for(let o of i)this._cache.get(o).store.dispose(),this._cache.delete(o);this._items=t}getItems(){return this._items}}});function l4(n,e,t,i){return e||(e=o=>o!=null),new Promise((o,s)=>{let r=!0,a=!1,l=n.map(d=>({isFinished:e(d),error:t?t(d):!1,state:d})),c=qe(d=>{let{isFinished:h,error:u,state:f}=l.read(d);(h||u)&&(r?a=!0:c.dispose(),u?s(u===!0?f:u):o(f))});if(i){let d=i.onCancellationRequested(()=>{c.dispose(),d.dispose(),s(new pr)});if(i.isCancellationRequested){c.dispose(),d.dispose(),s(new pr);return}}r=!1,a&&c.dispose()})}var a4,L1,GV=$(()=>{o4();wl();ht();a4=class n{static fromFn(e){return new n(e())}constructor(e){this._value=Oe(this,void 0),this.promiseResult=this._value,this.promise=e.then(t=>(Dt(i=>{this._value.set(new L1(t,void 0),i)}),t),t=>{throw Dt(i=>{this._value.set(new L1(void 0,t),i)}),t})}},L1=class{constructor(e,t){this.data=e,this.error=t}}});var Nx,ZV=$(()=>{wl();Nx=class extends ba{get debugName(){return this._debugNameData.getDebugName(this)??"LazyObservableValue"}constructor(e,t,i){super(),this._debugNameData=e,this._equalityComparator=i,this._isUpToDate=!0,this._deltas=[],this._updateCounter=0,this._value=t}get(){return this._update(),this._value}_update(){if(!this._isUpToDate)if(this._isUpToDate=!0,this._deltas.length>0){for(let e of this.observers)for(let t of this._deltas)e.handleChange(this,t);this._deltas.length=0}else for(let e of this.observers)e.handleChange(this,void 0)}_beginUpdate(){if(this._updateCounter++,this._updateCounter===1)for(let e of this.observers)e.beginUpdate(this)}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){this._update();let e=[...this.observers];for(let t of e)t.endUpdate(this)}}addObserver(e){let t=!this.observers.has(e)&&this._updateCounter>0;super.addObserver(e),t&&e.beginUpdate(this)}removeObserver(e){let t=this.observers.has(e)&&this._updateCounter>0;super.removeObserver(e),t&&e.endUpdate(this)}set(e,t,i){if(i===void 0&&this._equalityComparator(this._value,e))return;let o;t||(t=o=new vl(()=>{},()=>`Setting ${this.debugName}`));try{if(this._isUpToDate=!1,this._setValue(e),i!==void 0&&this._deltas.push(i),t.updateObserver({beginUpdate:()=>this._beginUpdate(),endUpdate:()=>this._endUpdate(),handleChange:(s,r)=>{},handlePossibleChange:s=>{}},this),this._updateCounter>1)for(let s of this.observers)s.handlePossibleChange(this)}finally{o&&o.finish()}}toString(){return`${this.debugName}: ${this._value}`}_setValue(e){this._value=e}}});function Nm(n,e){return n.lazy?new Nx(new Ai(n.owner,n.debugName,void 0),e,n.equalsFn??ho):new Em(new Ai(n.owner,n.debugName,void 0),e,n.equalsFn??ho)}var YV=$(()=>{xm();wl();Lm();ZV()});var aX,Ri=$(()=>{wl();ih();o4();Tx();GV();YV();Dm();aX=!1;aX&&BV(new Lx)});var xl,nL=$(()=>{Te();xl=pe("editorWorkerService")});var B4,W4,CDe,yDe,SDe,xDe,Hm,oL,sL,SH,rL,xH,aL,LH,xX,LX,Uu,kH,DH,EH,IH,TH,$u,NH,MH,AH,RH,PH,kX,LDe,OH,kDe,DDe,EDe,IDe,FH,BH,TDe,NDe,WH,MDe,ADe,RDe,DX,PDe,zH,VH,HH,lL,cL,dL,hL,uL,fL,UH,$H,qH,KH,jH,GH,ZH,YH,QH,XH,JH,eU,tU,ODe,FDe,Ca=$(()=>{ke();an();Uo();Ki();B4=T("editor.lineHighlightBackground",null,p("lineHighlight","Background color for the highlight of line at the cursor position.")),W4=T("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hcDark:"#f38518",hcLight:ct},p("lineHighlightBorderBox","Background color for the border around the line at the cursor position.")),CDe=T("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hcDark:null,hcLight:null},p("rangeHighlight","Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0),yDe=T("editor.rangeHighlightBorder",{dark:null,light:null,hcDark:Zt,hcLight:Zt},p("rangeHighlightBorder","Background color of the border around highlighted ranges.")),SDe=T("editor.symbolHighlightBackground",{dark:ma,light:ma,hcDark:null,hcLight:null},p("symbolHighlight","Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0),xDe=T("editor.symbolHighlightBorder",{dark:null,light:null,hcDark:Zt,hcLight:Zt},p("symbolHighlightBorder","Background color of the border around highlighted symbols.")),Hm=T("editorCursor.foreground",{dark:"#AEAFAD",light:K.black,hcDark:K.white,hcLight:"#0F4A85"},p("caret","Color of the editor cursor.")),oL=T("editorCursor.background",null,p("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),sL=T("editorMultiCursor.primary.foreground",Hm,p("editorMultiCursorPrimaryForeground","Color of the primary editor cursor when multiple cursors are present.")),SH=T("editorMultiCursor.primary.background",oL,p("editorMultiCursorPrimaryBackground","The background color of the primary editor cursor when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),rL=T("editorMultiCursor.secondary.foreground",Hm,p("editorMultiCursorSecondaryForeground","Color of secondary editor cursors when multiple cursors are present.")),xH=T("editorMultiCursor.secondary.background",oL,p("editorMultiCursorSecondaryBackground","The background color of secondary editor cursors when multiple cursors are present. Allows customizing the color of a character overlapped by a block cursor.")),aL=T("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hcDark:"#e3e4e229",hcLight:"#CCCCCC"},p("editorWhitespaces","Color of whitespace characters in the editor.")),LH=T("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hcDark:K.white,hcLight:"#292929"},p("editorLineNumbers","Color of editor line numbers.")),xX=T("editorIndentGuide.background",aL,p("editorIndentGuides","Color of the editor indentation guides."),!1,p("deprecatedEditorIndentGuides","'editorIndentGuide.background' is deprecated. Use 'editorIndentGuide.background1' instead.")),LX=T("editorIndentGuide.activeBackground",aL,p("editorActiveIndentGuide","Color of the active editor indentation guides."),!1,p("deprecatedEditorActiveIndentGuide","'editorIndentGuide.activeBackground' is deprecated. Use 'editorIndentGuide.activeBackground1' instead.")),Uu=T("editorIndentGuide.background1",xX,p("editorIndentGuides1","Color of the editor indentation guides (1).")),kH=T("editorIndentGuide.background2","#00000000",p("editorIndentGuides2","Color of the editor indentation guides (2).")),DH=T("editorIndentGuide.background3","#00000000",p("editorIndentGuides3","Color of the editor indentation guides (3).")),EH=T("editorIndentGuide.background4","#00000000",p("editorIndentGuides4","Color of the editor indentation guides (4).")),IH=T("editorIndentGuide.background5","#00000000",p("editorIndentGuides5","Color of the editor indentation guides (5).")),TH=T("editorIndentGuide.background6","#00000000",p("editorIndentGuides6","Color of the editor indentation guides (6).")),$u=T("editorIndentGuide.activeBackground1",LX,p("editorActiveIndentGuide1","Color of the active editor indentation guides (1).")),NH=T("editorIndentGuide.activeBackground2","#00000000",p("editorActiveIndentGuide2","Color of the active editor indentation guides (2).")),MH=T("editorIndentGuide.activeBackground3","#00000000",p("editorActiveIndentGuide3","Color of the active editor indentation guides (3).")),AH=T("editorIndentGuide.activeBackground4","#00000000",p("editorActiveIndentGuide4","Color of the active editor indentation guides (4).")),RH=T("editorIndentGuide.activeBackground5","#00000000",p("editorActiveIndentGuide5","Color of the active editor indentation guides (5).")),PH=T("editorIndentGuide.activeBackground6","#00000000",p("editorActiveIndentGuide6","Color of the active editor indentation guides (6).")),kX=T("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hcDark:Zt,hcLight:Zt},p("editorActiveLineNumber","Color of editor active line number"),!1,p("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead.")),LDe=T("editorLineNumber.activeForeground",kX,p("editorActiveLineNumber","Color of editor active line number")),OH=T("editorLineNumber.dimmedForeground",null,p("editorDimmedLineNumber","Color of the final editor line when editor.renderFinalNewline is set to dimmed.")),kDe=T("editorRuler.foreground",{dark:"#5A5A5A",light:K.lightgrey,hcDark:K.white,hcLight:"#292929"},p("editorRuler","Color of the editor rulers.")),DDe=T("editorCodeLens.foreground",{dark:"#999999",light:"#919191",hcDark:"#999999",hcLight:"#292929"},p("editorCodeLensForeground","Foreground color of editor CodeLens")),EDe=T("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hcDark:"#0064001a",hcLight:"#0000"},p("editorBracketMatchBackground","Background color behind matching brackets")),IDe=T("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hcDark:ct,hcLight:ct},p("editorBracketMatchBorder","Color for matching brackets boxes")),FH=T("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hcDark:"#7f7f7f4d",hcLight:"#666666"},p("editorOverviewRulerBorder","Color of the overview ruler border.")),BH=T("editorOverviewRuler.background",null,p("editorOverviewRulerBackground","Background color of the editor overview ruler.")),TDe=T("editorGutter.background",Ms,p("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers.")),NDe=T("editorUnnecessaryCode.border",{dark:null,light:null,hcDark:K.fromHex("#fff").transparent(.8),hcLight:ct},p("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor.")),WH=T("editorUnnecessaryCode.opacity",{dark:K.fromHex("#000a"),light:K.fromHex("#0007"),hcDark:null,hcLight:null},p("unnecessaryCodeOpacity",`Opacity of unnecessary (unused) source code in the editor. For example, "#000000c0" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.`)),MDe=T("editorGhostText.border",{dark:null,light:null,hcDark:K.fromHex("#fff").transparent(.8),hcLight:K.fromHex("#292929").transparent(.8)},p("editorGhostTextBorder","Border color of ghost text in the editor.")),ADe=T("editorGhostText.foreground",{dark:K.fromHex("#ffffff56"),light:K.fromHex("#0007"),hcDark:null,hcLight:null},p("editorGhostTextForeground","Foreground color of the ghost text in the editor.")),RDe=T("editorGhostText.background",null,p("editorGhostTextBackground","Background color of the ghost text in the editor.")),DX=new K(new at(0,122,204,.6)),PDe=T("editorOverviewRuler.rangeHighlightForeground",DX,p("overviewRulerRangeHighlight","Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."),!0),zH=T("editorOverviewRuler.errorForeground",{dark:new K(new at(255,18,18,.7)),light:new K(new at(255,18,18,.7)),hcDark:new K(new at(255,50,50,1)),hcLight:"#B5200D"},p("overviewRuleError","Overview ruler marker color for errors.")),VH=T("editorOverviewRuler.warningForeground",{dark:Fr,light:Fr,hcDark:nm,hcLight:nm},p("overviewRuleWarning","Overview ruler marker color for warnings.")),HH=T("editorOverviewRuler.infoForeground",{dark:ga,light:ga,hcDark:om,hcLight:om},p("overviewRuleInfo","Overview ruler marker color for infos.")),lL=T("editorBracketHighlight.foreground1",{dark:"#FFD700",light:"#0431FAFF",hcDark:"#FFD700",hcLight:"#0431FAFF"},p("editorBracketHighlightForeground1","Foreground color of brackets (1). Requires enabling bracket pair colorization.")),cL=T("editorBracketHighlight.foreground2",{dark:"#DA70D6",light:"#319331FF",hcDark:"#DA70D6",hcLight:"#319331FF"},p("editorBracketHighlightForeground2","Foreground color of brackets (2). Requires enabling bracket pair colorization.")),dL=T("editorBracketHighlight.foreground3",{dark:"#179FFF",light:"#7B3814FF",hcDark:"#87CEFA",hcLight:"#7B3814FF"},p("editorBracketHighlightForeground3","Foreground color of brackets (3). Requires enabling bracket pair colorization.")),hL=T("editorBracketHighlight.foreground4","#00000000",p("editorBracketHighlightForeground4","Foreground color of brackets (4). Requires enabling bracket pair colorization.")),uL=T("editorBracketHighlight.foreground5","#00000000",p("editorBracketHighlightForeground5","Foreground color of brackets (5). Requires enabling bracket pair colorization.")),fL=T("editorBracketHighlight.foreground6","#00000000",p("editorBracketHighlightForeground6","Foreground color of brackets (6). Requires enabling bracket pair colorization.")),UH=T("editorBracketHighlight.unexpectedBracket.foreground",{dark:new K(new at(255,18,18,.8)),light:new K(new at(255,18,18,.8)),hcDark:"new Color(new RGBA(255, 50, 50, 1))",hcLight:"#B5200D"},p("editorBracketHighlightUnexpectedBracketForeground","Foreground color of unexpected brackets.")),$H=T("editorBracketPairGuide.background1","#00000000",p("editorBracketPairGuide.background1","Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.")),qH=T("editorBracketPairGuide.background2","#00000000",p("editorBracketPairGuide.background2","Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.")),KH=T("editorBracketPairGuide.background3","#00000000",p("editorBracketPairGuide.background3","Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.")),jH=T("editorBracketPairGuide.background4","#00000000",p("editorBracketPairGuide.background4","Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.")),GH=T("editorBracketPairGuide.background5","#00000000",p("editorBracketPairGuide.background5","Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.")),ZH=T("editorBracketPairGuide.background6","#00000000",p("editorBracketPairGuide.background6","Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.")),YH=T("editorBracketPairGuide.activeBackground1","#00000000",p("editorBracketPairGuide.activeBackground1","Background color of active bracket pair guides (1). Requires enabling bracket pair guides.")),QH=T("editorBracketPairGuide.activeBackground2","#00000000",p("editorBracketPairGuide.activeBackground2","Background color of active bracket pair guides (2). Requires enabling bracket pair guides.")),XH=T("editorBracketPairGuide.activeBackground3","#00000000",p("editorBracketPairGuide.activeBackground3","Background color of active bracket pair guides (3). Requires enabling bracket pair guides.")),JH=T("editorBracketPairGuide.activeBackground4","#00000000",p("editorBracketPairGuide.activeBackground4","Background color of active bracket pair guides (4). Requires enabling bracket pair guides.")),eU=T("editorBracketPairGuide.activeBackground5","#00000000",p("editorBracketPairGuide.activeBackground5","Background color of active bracket pair guides (5). Requires enabling bracket pair guides.")),tU=T("editorBracketPairGuide.activeBackground6","#00000000",p("editorBracketPairGuide.activeBackground6","Background color of active bracket pair guides (6). Requires enabling bracket pair guides.")),ODe=T("editorUnicodeHighlight.border",Fr,p("editorUnicodeHighlight.border","Border color used to highlight unicode characters.")),FDe=T("editorUnicodeHighlight.background",D6,p("editorUnicodeHighlight.background","Background color used to highlight unicode characters."));lo((n,e)=>{let t=n.getColor(Ms),i=n.getColor(B4),o=i&&!i.isTransparent()?i:t;o&&e.addRule(`.monaco-editor .inputarea.ime-input { background-color: ${o}; }`)})});var Yt,ya=$(()=>{$e();Yt=class n{static _nextVisibleColumn(e,t,i){return e===9?n.nextRenderTabStop(t,i):Us(e)||H_(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){let o=Math.min(t-1,e.length),s=e.substring(0,o),r=new Uh(s),a=0;for(;!r.eol();){let l=cg(s,o,r.offset);r.nextGraphemeLength(),a=this._nextVisibleColumn(l,a,i)}return a}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;let o=e.length,s=new Uh(e),r=0,a=1;for(;!s.eol();){let l=cg(e,o,s.offset);s.nextGraphemeLength();let c=this._nextVisibleColumn(l,r,i),d=s.offset+1;if(c>=t){let h=t-r;return c-t<h?d:a}r=c,a=d}return o+1}static nextRenderTabStop(e,t){return e+t-e%t}static nextIndentTabStop(e,t){return e+t-e%t}static prevRenderTabStop(e,t){return Math.max(0,e-1-(e-1)%t)}static prevIndentTabStop(e,t){return Math.max(0,e-1-(e-1)%t)}}});function IX(n,e,t){let i=0;for(let s=0;s<n.length;s++)n.charAt(s)===" "?i=Yt.nextIndentTabStop(i,e):i++;let o="";if(!t){let s=Math.floor(i/e);i=i%e;for(let r=0;r<s;r++)o+=" "}for(let s=0;s<i;s++)o+=" ";return o}function pL(n,e,t){let i=Li(n);return i===-1&&(i=n.length),IX(n.substring(0,i),e,t)+n.substring(i)}var V4=$(()=>{$e();ya()});var M1,H4,_L,sU=$(()=>{M1=class{constructor(e,t,i,o){this.range=e,this.nestingLevel=t,this.nestingLevelOfEqualBracketType=i,this.isInvalid=o}},H4=class{constructor(e,t,i,o,s,r){this.range=e,this.openingBracketRange=t,this.closingBracketRange=i,this.nestingLevel=o,this.nestingLevelOfEqualBracketType=s,this.bracketPairNode=r}get openingBracketInfo(){return this.bracketPairNode.openingBracket.bracketInfo}},_L=class extends H4{constructor(e,t,i,o,s,r,a){super(e,t,i,o,s,r),this.minVisibleColumnIndentation=a}}});function rU(n,e,t,i){return n!==t?hi(t-n,i):hi(0,i-e)}function Um(n){return n===0}function hi(n,e){return n*Ps+e}function Io(n){let e=n,t=Math.floor(e/Ps),i=e-t*Ps;return new sr(t,i)}function aU(n){return Math.floor(n/Ps)}function ui(n,e){let t=n+e;return e>=Ps&&(t=t-n%Ps),t}function lU(n,e){return n.reduce((t,i)=>ui(t,e(i)),kn)}function U4(n,e){return n===e}function qu(n,e){let t=n,i=e;if(i-t<=0)return kn;let s=Math.floor(t/Ps),r=Math.floor(i/Ps),a=i-r*Ps;if(s===r){let l=t-s*Ps;return hi(0,a-l)}else return hi(r-s,a)}function kc(n,e){return n<e}function ch(n,e){return n<=e}function $m(n,e){return n>=e}function dh(n){return hi(n.lineNumber-1,n.column-1)}function hh(n,e){let t=n,i=Math.floor(t/Ps),o=t-i*Ps,s=e,r=Math.floor(s/Ps),a=s-r*Ps;return new k(i+1,o+1,r+1,a+1)}function cU(n){let e=wr(n);return hi(e.length-1,e[e.length-1].length)}var kn,Ps,Dc=$(()=>{$e();Ee();Wg();kn=0;Ps=2**26});var Wr,bL,$4,A1=$(()=>{Ee();Dc();Wr=class n{static fromModelContentChanges(e){return e.map(i=>{let o=k.lift(i.range);return new n(dh(o.getStartPosition()),dh(o.getEndPosition()),cU(i.text))}).reverse()}constructor(e,t,i){this.startOffset=e,this.endOffset=t,this.newLength=i}toString(){return`[${Io(this.startOffset)}...${Io(this.endOffset)}) -> ${Io(this.newLength)}`}},bL=class{constructor(e){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=e.map(t=>$4.from(t))}getOffsetBeforeChange(e){return this.adjustNextEdit(e),this.translateCurToOld(e)}getDistanceToNextChange(e){this.adjustNextEdit(e);let t=this.edits[this.nextEditIdx],i=t?this.translateOldToCur(t.offsetObj):null;return i===null?null:qu(e,i)}translateOldToCur(e){return e.lineCount===this.deltaLineIdxInOld?hi(e.lineCount+this.deltaOldToNewLineCount,e.columnCount+this.deltaOldToNewColumnCount):hi(e.lineCount+this.deltaOldToNewLineCount,e.columnCount)}translateCurToOld(e){let t=Io(e);return t.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?hi(t.lineCount-this.deltaOldToNewLineCount,t.columnCount-this.deltaOldToNewColumnCount):hi(t.lineCount-this.deltaOldToNewLineCount,t.columnCount)}adjustNextEdit(e){for(;this.nextEditIdx<this.edits.length;){let t=this.edits[this.nextEditIdx],i=this.translateOldToCur(t.endOffsetAfterObj);if(ch(i,e)){this.nextEditIdx++;let o=Io(i),s=Io(this.translateOldToCur(t.endOffsetBeforeObj)),r=o.lineCount-s.lineCount;this.deltaOldToNewLineCount+=r;let a=this.deltaLineIdxInOld===t.endOffsetBeforeObj.lineCount?this.deltaOldToNewColumnCount:0,l=o.columnCount-s.columnCount;this.deltaOldToNewColumnCount=a+l,this.deltaLineIdxInOld=t.endOffsetBeforeObj.lineCount}else break}}},$4=class n{static from(e){return new n(e.startOffset,e.endOffset,e.newLength)}constructor(e,t,i){this.endOffsetBeforeObj=Io(t),this.endOffsetAfterObj=Io(ui(e,i)),this.offsetObj=Io(e)}}});var vL,Yn,q4,wL,qm=$(()=>{vL=[],Yn=class n{static{this.cache=new Array(129)}static create(e,t){if(e<=128&&t.length===0){let i=n.cache[e];return i||(i=new n(e,t),n.cache[e]=i),i}return new n(e,t)}static{this.empty=n.create(0,vL)}static getEmpty(){return this.empty}constructor(e,t){this.items=e,this.additionalItems=t}add(e,t){let i=t.getKey(e),o=i>>5;if(o===0){let r=1<<i|this.items;return r===this.items?this:n.create(r,this.additionalItems)}o--;let s=this.additionalItems.slice(0);for(;s.length<o;)s.push(0);return s[o]|=1<<(i&31),n.create(this.items,s)}merge(e){let t=this.items|e.items;if(this.additionalItems===vL&&e.additionalItems===vL)return t===this.items?this:t===e.items?e:n.create(t,vL);let i=[];for(let o=0;o<Math.max(this.additionalItems.length,e.additionalItems.length);o++){let s=this.additionalItems[o]||0,r=e.additionalItems[o]||0;i.push(s|r)}return n.create(t,i)}intersects(e){if((this.items&e.items)!==0)return!0;for(let t=0;t<Math.min(this.additionalItems.length,e.additionalItems.length);t++)if((this.additionalItems[t]&e.additionalItems[t])!==0)return!0;return!1}},q4={getKey(n){return n}},wL=class{constructor(){this.items=new Map}getKey(e){let t=this.items.get(e);return t===void 0&&(t=this.items.size,this.items.set(e,t)),t}}});var R1,P1,Os,O1,K4,CL,j4,TX,F1,Sa,B1,yL,W1=$(()=>{ht();ya();Dc();qm();R1=class{get length(){return this._length}constructor(e){this._length=e}},P1=class n extends R1{static create(e,t,i){let o=e.length;return t&&(o=ui(o,t.length)),i&&(o=ui(o,i.length)),new n(o,e,t,i,t?t.missingOpeningBracketIds:Yn.getEmpty())}get kind(){return 2}get listHeight(){return 0}get childrenLength(){return 3}getChild(e){switch(e){case 0:return this.openingBracket;case 1:return this.child;case 2:return this.closingBracket}throw new Error("Invalid child index")}get children(){let e=[];return e.push(this.openingBracket),this.child&&e.push(this.child),this.closingBracket&&e.push(this.closingBracket),e}constructor(e,t,i,o,s){super(e),this.openingBracket=t,this.child=i,this.closingBracket=o,this.missingOpeningBracketIds=s}canBeReused(e){return!(this.closingBracket===null||e.intersects(this.missingOpeningBracketIds))}deepClone(){return new n(this.length,this.openingBracket.deepClone(),this.child&&this.child.deepClone(),this.closingBracket&&this.closingBracket.deepClone(),this.missingOpeningBracketIds)}computeMinIndentation(e,t){return this.child?this.child.computeMinIndentation(ui(e,this.openingBracket.length),t):Number.MAX_SAFE_INTEGER}},Os=class extends R1{static create23(e,t,i,o=!1){let s=e.length,r=e.missingOpeningBracketIds;if(e.listHeight!==t.listHeight)throw new Error("Invalid list heights");if(s=ui(s,t.length),r=r.merge(t.missingOpeningBracketIds),i){if(e.listHeight!==i.listHeight)throw new Error("Invalid list heights");s=ui(s,i.length),r=r.merge(i.missingOpeningBracketIds)}return o?new K4(s,e.listHeight+1,e,t,i,r):new O1(s,e.listHeight+1,e,t,i,r)}static getEmpty(){return new j4(kn,0,[],Yn.getEmpty())}get kind(){return 4}get missingOpeningBracketIds(){return this._missingOpeningBracketIds}constructor(e,t,i){super(e),this.listHeight=t,this._missingOpeningBracketIds=i,this.cachedMinIndentation=-1}throwIfImmutable(){}makeLastElementMutable(){this.throwIfImmutable();let e=this.childrenLength;if(e===0)return;let t=this.getChild(e-1),i=t.kind===4?t.toMutable():t;return t!==i&&this.setChild(e-1,i),i}makeFirstElementMutable(){if(this.throwIfImmutable(),this.childrenLength===0)return;let t=this.getChild(0),i=t.kind===4?t.toMutable():t;return t!==i&&this.setChild(0,i),i}canBeReused(e){if(e.intersects(this.missingOpeningBracketIds)||this.childrenLength===0)return!1;let t=this;for(;t.kind===4;){let i=t.childrenLength;if(i===0)throw new Ge;t=t.getChild(i-1)}return t.canBeReused(e)}handleChildrenChanged(){this.throwIfImmutable();let e=this.childrenLength,t=this.getChild(0).length,i=this.getChild(0).missingOpeningBracketIds;for(let o=1;o<e;o++){let s=this.getChild(o);t=ui(t,s.length),i=i.merge(s.missingOpeningBracketIds)}this._length=t,this._missingOpeningBracketIds=i,this.cachedMinIndentation=-1}computeMinIndentation(e,t){if(this.cachedMinIndentation!==-1)return this.cachedMinIndentation;let i=Number.MAX_SAFE_INTEGER,o=e;for(let s=0;s<this.childrenLength;s++){let r=this.getChild(s);r&&(i=Math.min(i,r.computeMinIndentation(o,t)),o=ui(o,r.length))}return this.cachedMinIndentation=i,i}},O1=class n extends Os{get childrenLength(){return this._item3!==null?3:2}getChild(e){switch(e){case 0:return this._item1;case 1:return this._item2;case 2:return this._item3}throw new Error("Invalid child index")}setChild(e,t){switch(e){case 0:this._item1=t;return;case 1:this._item2=t;return;case 2:this._item3=t;return}throw new Error("Invalid child index")}get children(){return this._item3?[this._item1,this._item2,this._item3]:[this._item1,this._item2]}get item1(){return this._item1}get item2(){return this._item2}get item3(){return this._item3}constructor(e,t,i,o,s,r){super(e,t,r),this._item1=i,this._item2=o,this._item3=s}deepClone(){return new n(this.length,this.listHeight,this._item1.deepClone(),this._item2.deepClone(),this._item3?this._item3.deepClone():null,this.missingOpeningBracketIds)}appendChildOfSameHeight(e){if(this._item3)throw new Error("Cannot append to a full (2,3) tree node");this.throwIfImmutable(),this._item3=e,this.handleChildrenChanged()}unappendChild(){if(!this._item3)throw new Error("Cannot remove from a non-full (2,3) tree node");this.throwIfImmutable();let e=this._item3;return this._item3=null,this.handleChildrenChanged(),e}prependChildOfSameHeight(e){if(this._item3)throw new Error("Cannot prepend to a full (2,3) tree node");this.throwIfImmutable(),this._item3=this._item2,this._item2=this._item1,this._item1=e,this.handleChildrenChanged()}unprependChild(){if(!this._item3)throw new Error("Cannot remove from a non-full (2,3) tree node");this.throwIfImmutable();let e=this._item1;return this._item1=this._item2,this._item2=this._item3,this._item3=null,this.handleChildrenChanged(),e}toMutable(){return this}},K4=class extends O1{toMutable(){return new O1(this.length,this.listHeight,this.item1,this.item2,this.item3,this.missingOpeningBracketIds)}throwIfImmutable(){throw new Error("this instance is immutable")}},CL=class n extends Os{get childrenLength(){return this._children.length}getChild(e){return this._children[e]}setChild(e,t){this._children[e]=t}get children(){return this._children}constructor(e,t,i,o){super(e,t,o),this._children=i}deepClone(){let e=new Array(this._children.length);for(let t=0;t<this._children.length;t++)e[t]=this._children[t].deepClone();return new n(this.length,this.listHeight,e,this.missingOpeningBracketIds)}appendChildOfSameHeight(e){this.throwIfImmutable(),this._children.push(e),this.handleChildrenChanged()}unappendChild(){this.throwIfImmutable();let e=this._children.pop();return this.handleChildrenChanged(),e}prependChildOfSameHeight(e){this.throwIfImmutable(),this._children.unshift(e),this.handleChildrenChanged()}unprependChild(){this.throwIfImmutable();let e=this._children.shift();return this.handleChildrenChanged(),e}toMutable(){return this}},j4=class extends CL{toMutable(){return new CL(this.length,this.listHeight,[...this.children],this.missingOpeningBracketIds)}throwIfImmutable(){throw new Error("this instance is immutable")}},TX=[],F1=class extends R1{get listHeight(){return 0}get childrenLength(){return 0}getChild(e){return null}get children(){return TX}deepClone(){return this}},Sa=class extends F1{get kind(){return 0}get missingOpeningBracketIds(){return Yn.getEmpty()}canBeReused(e){return!0}computeMinIndentation(e,t){let i=Io(e),o=(i.columnCount===0?i.lineCount:i.lineCount+1)+1,s=aU(ui(e,this.length))+1,r=Number.MAX_SAFE_INTEGER;for(let a=o;a<=s;a++){let l=t.getLineFirstNonWhitespaceColumn(a),c=t.getLineContent(a);if(l===0)continue;let d=Yt.visibleColumnFromColumn(c,l,t.getOptions().tabSize);r=Math.min(r,d)}return r}},B1=class n extends F1{static create(e,t,i){return new n(e,t,i)}get kind(){return 1}get missingOpeningBracketIds(){return Yn.getEmpty()}constructor(e,t,i){super(e),this.bracketInfo=t,this.bracketIds=i}get text(){return this.bracketInfo.bracketText}get languageId(){return this.bracketInfo.languageId}canBeReused(e){return!1}computeMinIndentation(e,t){return Number.MAX_SAFE_INTEGER}},yL=class extends F1{get kind(){return 3}constructor(e,t){super(t),this.missingOpeningBracketIds=e}canBeReused(e){return!e.intersects(this.missingOpeningBracketIds)}computeMinIndentation(e,t){return Number.MAX_SAFE_INTEGER}}});var xa,SL,G4,xL,Z4=$(()=>{ht();Qg();W1();Dc();qm();xa=class{constructor(e,t,i,o,s){this.length=e,this.kind=t,this.bracketId=i,this.bracketIds=o,this.astNode=s}},SL=class{constructor(e,t){this.textModel=e,this.bracketTokens=t,this.reader=new G4(this.textModel,this.bracketTokens),this._offset=kn,this.didPeek=!1,this.peeked=null,this.textBufferLineCount=e.getLineCount(),this.textBufferLastLineLength=e.getLineLength(this.textBufferLineCount)}get offset(){return this._offset}get length(){return hi(this.textBufferLineCount-1,this.textBufferLastLineLength)}skip(e){this.didPeek=!1,this._offset=ui(this._offset,e);let t=Io(this._offset);this.reader.setPosition(t.lineCount,t.columnCount)}read(){let e;return this.peeked?(this.didPeek=!1,e=this.peeked):e=this.reader.read(),e&&(this._offset=ui(this._offset,e.length)),e}peek(){return this.didPeek||(this.peeked=this.reader.read(),this.didPeek=!0),this.peeked}},G4=class{constructor(e,t){this.textModel=e,this.bracketTokens=t,this.lineIdx=0,this.line=null,this.lineCharOffset=0,this.lineTokens=null,this.lineTokenOffset=0,this.peekedToken=null,this.textBufferLineCount=e.getLineCount(),this.textBufferLastLineLength=e.getLineLength(this.textBufferLineCount)}setPosition(e,t){e===this.lineIdx?(this.lineCharOffset=t,this.line!==null&&(this.lineTokenOffset=this.lineCharOffset===0?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset))):(this.lineIdx=e,this.lineCharOffset=t,this.line=null),this.peekedToken=null}read(){if(this.peekedToken){let s=this.peekedToken;return this.peekedToken=null,this.lineCharOffset+=s.length,s}if(this.lineIdx>this.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;this.line===null&&(this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=this.lineCharOffset===0?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));let e=this.lineIdx,t=this.lineCharOffset,i=0;for(;;){let s=this.lineTokens,r=s.getCount(),a=null;if(this.lineTokenOffset<r){let l=s.getMetadata(this.lineTokenOffset);for(;this.lineTokenOffset+1<r&&l===s.getMetadata(this.lineTokenOffset+1);)this.lineTokenOffset++;let c=ln.getTokenType(l)===0,d=ln.containsBalancedBrackets(l),h=s.getEndOffset(this.lineTokenOffset);if(d&&c&&this.lineCharOffset<h){let u=s.getLanguageId(this.lineTokenOffset),f=this.line.substring(this.lineCharOffset,h),g=this.bracketTokens.getSingleLanguageBracketTokens(u),m=g.regExpGlobal;if(m){m.lastIndex=0;let _=m.exec(f);_&&(a=g.getToken(_[0]),a&&(this.lineCharOffset+=_.index))}}if(i+=h-this.lineCharOffset,a)if(e!==this.lineIdx||t!==this.lineCharOffset){this.peekedToken=a;break}else return this.lineCharOffset+=a.length,a;else this.lineTokenOffset++,this.lineCharOffset=h}else if(this.lineIdx===this.textBufferLineCount-1||(this.lineIdx++,this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.lineTokenOffset=0,this.line=this.lineTokens.getLineContent(),this.lineCharOffset=0,i+=33,i>1e3))break;if(i>1500)break}let o=rU(e,t,this.lineIdx,this.lineCharOffset);return new xa(o,0,-1,Yn.getEmpty(),new Sa(o))}},xL=class{constructor(e,t){this.text=e,this._offset=kn,this.idx=0;let i=t.getRegExpStr(),o=i?new RegExp(i+`|
|
|
33
33
|
`,"gi"):null,s=[],r,a=0,l=0,c=0,d=0,h=[];for(let g=0;g<60;g++)h.push(new xa(hi(0,g),0,-1,Yn.getEmpty(),new Sa(hi(0,g))));let u=[];for(let g=0;g<60;g++)u.push(new xa(hi(1,g),0,-1,Yn.getEmpty(),new Sa(hi(1,g))));if(o)for(o.lastIndex=0;(r=o.exec(e))!==null;){let g=r.index,m=r[0];if(m===`
|
|
34
34
|
`)a++,l=g+1;else{if(c!==g){let _;if(d===a){let b=g-c;if(b<h.length)_=h[b];else{let v=hi(0,b);_=new xa(v,0,-1,Yn.getEmpty(),new Sa(v))}}else{let b=a-d,v=g-l;if(b===1&&v<u.length)_=u[v];else{let C=hi(b,v);_=new xa(C,0,-1,Yn.getEmpty(),new Sa(C))}}s.push(_)}s.push(t.getToken(m)),c=g+m.length,d=a}}let f=e.length;if(c!==f){let g=d===a?hi(0,f-c):hi(a-d,f-l);s.push(new xa(g,0,-1,Yn.getEmpty(),new Sa(g)))}this.length=hi(a,f-l),this.tokens=s}get offset(){return this._offset}read(){return this.tokens[this.idx++]||null}peek(){return this.tokens[this.idx]||null}skip(e){throw new A0}}});function NX(n){let e=Xo(n);return/^[\w ]+/.test(n)&&(e=`\\b${e}`),/[\w ]+$/.test(n)&&(e=`${e}\\b`),e}var Y4,LL,dU=$(()=>{$e();W1();Dc();qm();Z4();Y4=class n{static createFromLanguage(e,t){function i(s){return t.getKey(`${s.languageId}:::${s.bracketText}`)}let o=new Map;for(let s of e.bracketsNew.openingBrackets){let r=hi(0,s.bracketText.length),a=i(s),l=Yn.getEmpty().add(a,q4);o.set(s.bracketText,new xa(r,1,a,l,B1.create(r,s,l)))}for(let s of e.bracketsNew.closingBrackets){let r=hi(0,s.bracketText.length),a=Yn.getEmpty(),l=s.getOpeningBrackets();for(let c of l)a=a.add(i(c),q4);o.set(s.bracketText,new xa(r,2,i(l[0]),a,B1.create(r,s,a)))}return new n(o)}constructor(e){this.map=e,this.hasRegExp=!1,this._regExpGlobal=null}getRegExpStr(){if(this.isEmpty)return null;{let e=[...this.map.keys()];return e.sort(),e.reverse(),e.map(t=>NX(t)).join("|")}}get regExpGlobal(){if(!this.hasRegExp){let e=this.getRegExpStr();this._regExpGlobal=e?new RegExp(e,"gi"):null,this.hasRegExp=!0}return this._regExpGlobal}getToken(e){return this.map.get(e.toLowerCase())}findClosingTokenText(e){for(let[t,i]of this.map)if(i.kind===2&&i.bracketIds.intersects(e))return t}get isEmpty(){return this.map.size===0}};LL=class{constructor(e,t){this.denseKeyProvider=e,this.getLanguageConfiguration=t,this.languageIdToBracketTokens=new Map}didLanguageChange(e){return this.languageIdToBracketTokens.has(e)}getSingleLanguageBracketTokens(e){let t=this.languageIdToBracketTokens.get(e);return t||(t=Y4.createFromLanguage(this.getLanguageConfiguration(e),this.denseKeyProvider),this.languageIdToBracketTokens.set(e,t)),t}}});function uU(n){if(n.length===0)return null;if(n.length===1)return n[0];let e=0;function t(){if(e>=n.length)return null;let r=e,a=n[r].listHeight;for(e++;e<n.length&&n[e].listHeight===a;)e++;return e-r>=2?X4(r===0&&e===n.length?n:n.slice(r,e),!1):n[r]}let i=t(),o=t();if(!o)return i;for(let r=t();r;r=t())hU(i,o)<=hU(o,r)?(i=Q4(i,o),o=r):o=Q4(o,r);return Q4(i,o)}function X4(n,e=!1){if(n.length===0)return null;if(n.length===1)return n[0];let t=n.length;for(;t>3;){let i=t>>1;for(let o=0;o<i;o++){let s=o<<1;n[o]=Os.create23(n[s],n[s+1],s+3===t?n[s+2]:null,e)}t=i}return Os.create23(n[0],n[1],t>=3?n[2]:null,e)}function hU(n,e){return Math.abs(n.listHeight-e.listHeight)}function Q4(n,e){return n.listHeight===e.listHeight?Os.create23(n,e,null,!1):n.listHeight>e.listHeight?MX(n,e):AX(e,n)}function MX(n,e){n=n.toMutable();let t=n,i=[],o;for(;;){if(e.listHeight===t.listHeight){o=e;break}if(t.kind!==4)throw new Error("unexpected");i.push(t),t=t.makeLastElementMutable()}for(let s=i.length-1;s>=0;s--){let r=i[s];o?r.childrenLength>=3?o=Os.create23(r.unappendChild(),o,null,!1):(r.appendChildOfSameHeight(o),o=void 0):r.handleChildrenChanged()}return o?Os.create23(n,o,null,!1):n}function AX(n,e){n=n.toMutable();let t=n,i=[];for(;e.listHeight!==t.listHeight;){if(t.kind!==4)throw new Error("unexpected");i.push(t),t=t.makeFirstElementMutable()}let o=e;for(let s=i.length-1;s>=0;s--){let r=i[s];o?r.childrenLength>=3?o=Os.create23(o,r.unprependChild(),null,!1):(r.prependChildOfSameHeight(o),o=void 0):r.handleChildrenChanged()}return o?Os.create23(o,n,null,!1):n}var fU=$(()=>{W1()});function J4(n,e=-1){for(;;){if(e++,e>=n.childrenLength)return-1;if(n.getChild(e))return e}}function z1(n){return n.length>0?n[n.length-1]:void 0}var kL,gU=$(()=>{Dc();kL=class{constructor(e){this.lastOffset=kn,this.nextNodes=[e],this.offsets=[kn],this.idxs=[]}readLongestNodeAt(e,t){if(kc(e,this.lastOffset))throw new Error("Invalid offset");for(this.lastOffset=e;;){let i=z1(this.nextNodes);if(!i)return;let o=z1(this.offsets);if(kc(e,o))return;if(kc(o,e))if(ui(o,i.length)<=e)this.nextNodeAfterCurrent();else{let s=J4(i);s!==-1?(this.nextNodes.push(i.getChild(s)),this.offsets.push(o),this.idxs.push(s)):this.nextNodeAfterCurrent()}else{if(t(i))return this.nextNodeAfterCurrent(),i;{let s=J4(i);if(s===-1){this.nextNodeAfterCurrent();return}else this.nextNodes.push(i.getChild(s)),this.offsets.push(o),this.idxs.push(s)}}}}nextNodeAfterCurrent(){for(;;){let e=z1(this.offsets),t=z1(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),this.idxs.length===0)break;let i=z1(this.nextNodes),o=J4(i,this.idxs[this.idxs.length-1]);if(o!==-1){this.nextNodes.push(i.getChild(o)),this.offsets.push(ui(e,t.length)),this.idxs[this.idxs.length-1]=o;break}else this.idxs.pop()}}}});function tP(n,e,t,i){return new eP(n,e,t,i).parseDocument()}var eP,mU=$(()=>{W1();A1();qm();Dc();fU();gU();eP=class{constructor(e,t,i,o){if(this.tokenizer=e,this.createImmutableLists=o,this._itemsConstructed=0,this._itemsFromCache=0,i&&o)throw new Error("Not supported");this.oldNodeReader=i?new kL(i):void 0,this.positionMapper=new bL(t)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let e=this.parseList(Yn.getEmpty(),0);return e||(e=Os.getEmpty()),e}parseList(e,t){let i=[];for(;;){let s=this.tryReadChildFromCache(e);if(!s){let r=this.tokenizer.peek();if(!r||r.kind===2&&r.bracketIds.intersects(e))break;s=this.parseChild(e,t+1)}s.kind===4&&s.childrenLength===0||i.push(s)}return this.oldNodeReader?uU(i):X4(i,this.createImmutableLists)}tryReadChildFromCache(e){if(this.oldNodeReader){let t=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(t===null||!Um(t)){let i=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),o=>t!==null&&!kc(o.length,t)?!1:o.canBeReused(e));if(i)return this._itemsFromCache++,this.tokenizer.skip(i.length),i}}}parseChild(e,t){this._itemsConstructed++;let i=this.tokenizer.read();switch(i.kind){case 2:return new yL(i.bracketIds,i.length);case 0:return i.astNode;case 1:{if(t>300)return new Sa(i.length);let o=e.merge(i.bracketIds),s=this.parseList(o,t+1),r=this.tokenizer.peek();return r&&r.kind===2&&(r.bracketId===i.bracketId||r.bracketIds.intersects(i.bracketIds))?(this.tokenizer.read(),P1.create(i.astNode,s,r.astNode)):P1.create(i.astNode,s,null)}default:throw new Error("unexpected")}}}});function Km(n,e){if(n.length===0)return e;if(e.length===0)return n;let t=new eo(pU(n)),i=pU(e);i.push({modified:!1,lengthBefore:void 0,lengthAfter:void 0});let o=t.dequeue();function s(c){if(c===void 0){let h=t.takeWhile(u=>!0)||[];return o&&h.unshift(o),h}let d=[];for(;o&&!Um(c);){let[h,u]=o.splitAt(c);d.push(h),c=qu(h.lengthAfter,c),o=u??t.dequeue()}return Um(c)||d.push(new V1(!1,c,c)),d}let r=[];function a(c,d,h){if(r.length>0&&U4(r[r.length-1].endOffset,c)){let u=r[r.length-1];r[r.length-1]=new Wr(u.startOffset,d,ui(u.newLength,h))}else r.push({startOffset:c,endOffset:d,newLength:h})}let l=kn;for(let c of i){let d=s(c.lengthBefore);if(c.modified){let h=lU(d,f=>f.lengthBefore),u=ui(l,h);a(l,u,c.lengthAfter),l=u}else for(let h of d){let u=l;l=ui(l,h.lengthBefore),h.modified&&a(u,l,h.lengthAfter)}}return r}function pU(n){let e=[],t=kn;for(let i of n){let o=qu(t,i.startOffset);Um(o)||e.push(new V1(!1,o,o));let s=qu(i.startOffset,i.endOffset);e.push(new V1(!0,s,i.newLength)),t=i.endOffset}return e}var V1,iP=$(()=>{tt();A1();Dc();V1=class n{constructor(e,t,i){this.modified=e,this.lengthBefore=t,this.lengthAfter=i}splitAt(e){let t=qu(e,this.lengthAfter);return U4(t,kn)?[this,void 0]:this.modified?[new n(this.modified,this.lengthBefore,e),new n(this.modified,kn,t)]:[new n(this.modified,e,e),new n(this.modified,t,t)]}toString(){return`${this.modified?"M":"U"}:${Io(this.lengthBefore)} -> ${Io(this.lengthAfter)}`}}});function _U(n,e,t,i){if(n.kind===4||n.kind===2){let o=[];for(let s of n.children)t=ui(e,s.length),o.push({nodeOffsetStart:e,nodeOffsetEnd:t}),e=t;for(let s=o.length-1;s>=0;s--){let{nodeOffsetStart:r,nodeOffsetEnd:a}=o[s];if(kc(r,i)){let l=_U(n.children[s],r,a,i);if(l)return l}}return null}else{if(n.kind===3)return null;if(n.kind===1){let o=hh(e,t);return{bracketInfo:n.bracketInfo,range:o}}}return null}function bU(n,e,t,i){if(n.kind===4||n.kind===2){for(let o of n.children){if(t=ui(e,o.length),kc(i,t)){let s=bU(o,e,t,i);if(s)return s}e=t}return null}else{if(n.kind===3)return null;if(n.kind===1){let o=hh(e,t);return{bracketInfo:n.bracketInfo,range:o}}}return null}function nP(n,e,t,i,o,s,r,a,l,c,d=!1){if(r>200)return!0;e:for(;;)switch(n.kind){case 4:{let h=n.childrenLength;for(let u=0;u<h;u++){let f=n.getChild(u);if(f){if(t=ui(e,f.length),ch(e,o)&&$m(t,i)){if($m(t,o)){n=f;continue e}if(!nP(f,e,t,i,o,s,r,0,l,c))return!1}e=t}}return!0}case 2:{let h=!c||!n.closingBracket||n.closingBracket.bracketInfo.closesColorized(n.openingBracket.bracketInfo),u=0;if(l){let g=l.get(n.openingBracket.text);g===void 0&&(g=0),u=g,h&&(g++,l.set(n.openingBracket.text,g))}let f=n.childrenLength;for(let g=0;g<f;g++){let m=n.getChild(g);if(m){if(t=ui(e,m.length),ch(e,o)&&$m(t,i)){if($m(t,o)&&m.kind!==1){n=m,h?(r++,a=u+1):a=u;continue e}if((h||m.kind!==1||!n.closingBracket)&&!nP(m,e,t,i,o,s,h?r+1:r,h?u+1:u,l,c,!n.closingBracket))return!1}e=t}}return l?.set(n.openingBracket.text,u),!0}case 3:{let h=hh(e,t);return s(new M1(h,r-1,0,!0))}case 1:{let h=hh(e,t);return s(new M1(h,r-1,a-1,d))}case 0:return!0}}function sP(n,e,t,i,o,s,r,a){if(r>200)return!0;let l=!0;if(n.kind===2){let c=0;if(a){let u=a.get(n.openingBracket.text);u===void 0&&(u=0),c=u,u++,a.set(n.openingBracket.text,u)}let d=ui(e,n.openingBracket.length),h=-1;if(s.includeMinIndentation&&(h=n.computeMinIndentation(e,s.textModel)),l=s.push(new _L(hh(e,t),hh(e,d),n.closingBracket?hh(ui(d,n.child?.length||kn),t):void 0,r,c,n,h)),e=d,l&&n.child){let u=n.child;if(t=ui(e,u.length),ch(e,o)&&$m(t,i)&&(l=sP(u,e,t,i,o,s,r+1,a),!l))return!1}a?.set(n.openingBracket.text,c)}else{let c=e;for(let d of n.children){let h=c;if(c=ui(c,d.length),ch(h,o)&&ch(i,c)&&(l=sP(d,h,c,i,o,s,r,a),!l))return!1}}return l}var DL,oP,vU=$(()=>{fe();X();sU();A1();dU();Dc();mU();qm();Z4();tt();iP();DL=class extends R{didLanguageChange(e){return this.brackets.didLanguageChange(e)}constructor(e,t){if(super(),this.textModel=e,this.getLanguageConfiguration=t,this.didChangeEmitter=new M,this.denseKeyProvider=new wL,this.brackets=new LL(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],e.tokenization.hasTokens)e.tokenization.backgroundTokenizationState===2?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{let i=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),o=new xL(this.textModel.getValue(),i);this.initialAstWithoutTokens=tP(o,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(this.textModel.tokenization.backgroundTokenizationState===2){let e=this.initialAstWithoutTokens===void 0;this.initialAstWithoutTokens=void 0,e||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:e}){let t=e.map(i=>new Wr(hi(i.fromLineNumber-1,0),hi(i.toLineNumber,0),hi(i.toLineNumber-i.fromLineNumber+1,0)));this.handleEdits(t,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(e){let t=Wr.fromModelContentChanges(e.changes);this.handleEdits(t,!1)}handleEdits(e,t){let i=Km(this.queuedTextEdits,e);this.queuedTextEdits=i,this.initialAstWithoutTokens&&!t&&(this.queuedTextEditsForInitialAstWithoutTokens=Km(this.queuedTextEditsForInitialAstWithoutTokens,e))}flushQueue(){this.queuedTextEdits.length>0&&(this.astWithTokens=this.parseDocumentFromTextBuffer(this.queuedTextEdits,this.astWithTokens,!1),this.queuedTextEdits=[]),this.queuedTextEditsForInitialAstWithoutTokens.length>0&&(this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(this.queuedTextEditsForInitialAstWithoutTokens,this.initialAstWithoutTokens,!1)),this.queuedTextEditsForInitialAstWithoutTokens=[])}parseDocumentFromTextBuffer(e,t,i){let s=t,r=new SL(this.textModel,this.brackets);return tP(r,e,s,i)}getBracketsInRange(e,t){this.flushQueue();let i=hi(e.startLineNumber-1,e.startColumn-1),o=hi(e.endLineNumber-1,e.endColumn-1);return new Ql(s=>{let r=this.initialAstWithoutTokens||this.astWithTokens;nP(r,kn,r.length,i,o,s,0,0,new Map,t)})}getBracketPairsInRange(e,t){this.flushQueue();let i=dh(e.getStartPosition()),o=dh(e.getEndPosition());return new Ql(s=>{let r=this.initialAstWithoutTokens||this.astWithTokens,a=new oP(s,t,this.textModel);sP(r,kn,r.length,i,o,a,0,new Map)})}getFirstBracketAfter(e){this.flushQueue();let t=this.initialAstWithoutTokens||this.astWithTokens;return bU(t,kn,t.length,dh(e))}getFirstBracketBefore(e){this.flushQueue();let t=this.initialAstWithoutTokens||this.astWithTokens;return _U(t,kn,t.length,dh(e))}};oP=class{constructor(e,t,i){this.push=e,this.includeMinIndentation=t,this.textModel=i}}});function RX(n,e){return{object:n,dispose:()=>e?.dispose()}}function rP(n){if(typeof n>"u")return()=>!0;{let e=Date.now();return()=>Date.now()-e<=n}}function EL(n){return n instanceof Ec?null:n}var IL,Ec,wU=$(()=>{tt();fe();X();Ee();Mg();bb();vU();IL=class extends R{get canBuildAST(){return this.textModel.getValueLength()<=5e6}constructor(e,t){super(),this.textModel=e,this.languageConfigurationService=t,this.bracketPairsTree=this._register(new Hn),this.onDidChangeEmitter=new M,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(e){(!e.languageId||this.bracketPairsTree.value?.object.didLanguageChange(e.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(e){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(e){this.bracketPairsTree.value?.object.handleContentChanged(e)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(e){this.bracketPairsTree.value?.object.handleDidChangeTokens(e)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){let e=new Q;this.bracketPairsTree.value=RX(e.add(new DL(this.textModel,t=>this.languageConfigurationService.getLanguageConfiguration(t))),e),e.add(this.bracketPairsTree.value.object.onDidChange(t=>this.onDidChangeEmitter.fire(t))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!1)||Ql.empty}getBracketPairsInRangeWithMinIndentation(e){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(e,!0)||Ql.empty}getBracketsInRange(e,t=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(e,t)||Ql.empty}findMatchingBracketUp(e,t,i){let o=this.textModel.validatePosition(t),s=this.textModel.getLanguageIdAtPosition(o.lineNumber,o.column);if(this.canBuildAST){let r=this.languageConfigurationService.getLanguageConfiguration(s).bracketsNew.getClosingBracketInfo(e);if(!r)return null;let a=this.getBracketPairsInRange(k.fromPositions(t,t)).findLast(l=>r.closes(l.openingBracketInfo));return a?a.openingBracketRange:null}else{let r=e.toLowerCase(),a=this.languageConfigurationService.getLanguageConfiguration(s).brackets;if(!a)return null;let l=a.textIsBracket[r];return l?EL(this._findMatchingBracketUp(l,o,rP(i))):null}}matchBracket(e,t){if(this.canBuildAST){let i=this.getBracketPairsInRange(k.fromPositions(e,e)).filter(o=>o.closingBracketRange!==void 0&&(o.openingBracketRange.containsPosition(e)||o.closingBracketRange.containsPosition(e))).findLastMaxBy(go(o=>o.openingBracketRange.containsPosition(e)?o.openingBracketRange:o.closingBracketRange,k.compareRangesUsingStarts));return i?[i.openingBracketRange,i.closingBracketRange]:null}else{let i=rP(t);return this._matchBracket(this.textModel.validatePosition(e),i)}}_establishBracketSearchOffsets(e,t,i,o){let s=t.getCount(),r=t.getLanguageId(o),a=Math.max(0,e.column-1-i.maxBracketLength);for(let c=o-1;c>=0;c--){let d=t.getEndOffset(c);if(d<=a)break;if(Nr(t.getStandardTokenType(c))||t.getLanguageId(c)!==r){a=d;break}}let l=Math.min(t.getLineContent().length,e.column-1+i.maxBracketLength);for(let c=o+1;c<s;c++){let d=t.getStartOffset(c);if(d>=l)break;if(Nr(t.getStandardTokenType(c))||t.getLanguageId(c)!==r){l=d;break}}return{searchStartOffset:a,searchEndOffset:l}}_matchBracket(e,t){let i=e.lineNumber,o=this.textModel.tokenization.getLineTokens(i),s=this.textModel.getLineContent(i),r=o.findTokenIndexAtOffset(e.column-1);if(r<0)return null;let a=this.languageConfigurationService.getLanguageConfiguration(o.getLanguageId(r)).brackets;if(a&&!Nr(o.getStandardTokenType(r))){let{searchStartOffset:l,searchEndOffset:c}=this._establishBracketSearchOffsets(e,o,a,r),d=null;for(;;){let h=zo.findNextBracketInRange(a.forwardRegex,i,s,l,c);if(!h)break;if(h.startColumn<=e.column&&e.column<=h.endColumn){let u=s.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),f=this._matchFoundBracket(h,a.textIsBracket[u],a.textIsOpenBracket[u],t);if(f){if(f instanceof Ec)return null;d=f}}l=h.endColumn-1}if(d)return d}if(r>0&&o.getStartOffset(r)===e.column-1){let l=r-1,c=this.languageConfigurationService.getLanguageConfiguration(o.getLanguageId(l)).brackets;if(c&&!Nr(o.getStandardTokenType(l))){let{searchStartOffset:d,searchEndOffset:h}=this._establishBracketSearchOffsets(e,o,c,l),u=zo.findPrevBracketInRange(c.reversedRegex,i,s,d,h);if(u&&u.startColumn<=e.column&&e.column<=u.endColumn){let f=s.substring(u.startColumn-1,u.endColumn-1).toLowerCase(),g=this._matchFoundBracket(u,c.textIsBracket[f],c.textIsOpenBracket[f],t);if(g)return g instanceof Ec?null:g}}}return null}_matchFoundBracket(e,t,i,o){if(!t)return null;let s=i?this._findMatchingBracketDown(t,e.getEndPosition(),o):this._findMatchingBracketUp(t,e.getStartPosition(),o);return s?s instanceof Ec?s:[e,s]:null}_findMatchingBracketUp(e,t,i){let o=e.languageId,s=e.reversedRegex,r=-1,a=0,l=(c,d,h,u)=>{for(;;){if(i&&++a%100===0&&!i())return Ec.INSTANCE;let f=zo.findPrevBracketInRange(s,c,d,h,u);if(!f)break;let g=d.substring(f.startColumn-1,f.endColumn-1).toLowerCase();if(e.isOpen(g)?r++:e.isClose(g)&&r--,r===0)return f;u=f.startColumn-1}return null};for(let c=t.lineNumber;c>=1;c--){let d=this.textModel.tokenization.getLineTokens(c),h=d.getCount(),u=this.textModel.getLineContent(c),f=h-1,g=u.length,m=u.length;c===t.lineNumber&&(f=d.findTokenIndexAtOffset(t.column-1),g=t.column-1,m=t.column-1);let _=!0;for(;f>=0;f--){let b=d.getLanguageId(f)===o&&!Nr(d.getStandardTokenType(f));if(b)_?g=d.getStartOffset(f):(g=d.getStartOffset(f),m=d.getEndOffset(f));else if(_&&g!==m){let v=l(c,u,g,m);if(v)return v}_=b}if(_&&g!==m){let b=l(c,u,g,m);if(b)return b}}return null}_findMatchingBracketDown(e,t,i){let o=e.languageId,s=e.forwardRegex,r=1,a=0,l=(d,h,u,f)=>{for(;;){if(i&&++a%100===0&&!i())return Ec.INSTANCE;let g=zo.findNextBracketInRange(s,d,h,u,f);if(!g)break;let m=h.substring(g.startColumn-1,g.endColumn-1).toLowerCase();if(e.isOpen(m)?r++:e.isClose(m)&&r--,r===0)return g;u=g.endColumn-1}return null},c=this.textModel.getLineCount();for(let d=t.lineNumber;d<=c;d++){let h=this.textModel.tokenization.getLineTokens(d),u=h.getCount(),f=this.textModel.getLineContent(d),g=0,m=0,_=0;d===t.lineNumber&&(g=h.findTokenIndexAtOffset(t.column-1),m=t.column-1,_=t.column-1);let b=!0;for(;g<u;g++){let v=h.getLanguageId(g)===o&&!Nr(h.getStandardTokenType(g));if(v)b||(m=h.getStartOffset(g)),_=h.getEndOffset(g);else if(b&&m!==_){let C=l(d,f,m,_);if(C)return C}b=v}if(b&&m!==_){let v=l(d,f,m,_);if(v)return v}}return null}findPrevBracket(e){let t=this.textModel.validatePosition(e);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketBefore(t)||null;let i=null,o=null,s=null;for(let r=t.lineNumber;r>=1;r--){let a=this.textModel.tokenization.getLineTokens(r),l=a.getCount(),c=this.textModel.getLineContent(r),d=l-1,h=c.length,u=c.length;if(r===t.lineNumber){d=a.findTokenIndexAtOffset(t.column-1),h=t.column-1,u=t.column-1;let g=a.getLanguageId(d);i!==g&&(i=g,o=this.languageConfigurationService.getLanguageConfiguration(i).brackets,s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew)}let f=!0;for(;d>=0;d--){let g=a.getLanguageId(d);if(i!==g){if(o&&s&&f&&h!==u){let _=zo.findPrevBracketInRange(o.reversedRegex,r,c,h,u);if(_)return this._toFoundBracket(s,_);f=!1}i=g,o=this.languageConfigurationService.getLanguageConfiguration(i).brackets,s=this.languageConfigurationService.getLanguageConfiguration(i).bracketsNew}let m=!!o&&!Nr(a.getStandardTokenType(d));if(m)f?h=a.getStartOffset(d):(h=a.getStartOffset(d),u=a.getEndOffset(d));else if(s&&o&&f&&h!==u){let _=zo.findPrevBracketInRange(o.reversedRegex,r,c,h,u);if(_)return this._toFoundBracket(s,_)}f=m}if(s&&o&&f&&h!==u){let g=zo.findPrevBracketInRange(o.reversedRegex,r,c,h,u);if(g)return this._toFoundBracket(s,g)}}return null}findNextBracket(e){let t=this.textModel.validatePosition(e);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(t)||null;let i=this.textModel.getLineCount(),o=null,s=null,r=null;for(let a=t.lineNumber;a<=i;a++){let l=this.textModel.tokenization.getLineTokens(a),c=l.getCount(),d=this.textModel.getLineContent(a),h=0,u=0,f=0;if(a===t.lineNumber){h=l.findTokenIndexAtOffset(t.column-1),u=t.column-1,f=t.column-1;let m=l.getLanguageId(h);o!==m&&(o=m,s=this.languageConfigurationService.getLanguageConfiguration(o).brackets,r=this.languageConfigurationService.getLanguageConfiguration(o).bracketsNew)}let g=!0;for(;h<c;h++){let m=l.getLanguageId(h);if(o!==m){if(r&&s&&g&&u!==f){let b=zo.findNextBracketInRange(s.forwardRegex,a,d,u,f);if(b)return this._toFoundBracket(r,b);g=!1}o=m,s=this.languageConfigurationService.getLanguageConfiguration(o).brackets,r=this.languageConfigurationService.getLanguageConfiguration(o).bracketsNew}let _=!!s&&!Nr(l.getStandardTokenType(h));if(_)g||(u=l.getStartOffset(h)),f=l.getEndOffset(h);else if(r&&s&&g&&u!==f){let b=zo.findNextBracketInRange(s.forwardRegex,a,d,u,f);if(b)return this._toFoundBracket(r,b)}g=_}if(r&&s&&g&&u!==f){let m=zo.findNextBracketInRange(s.forwardRegex,a,d,u,f);if(m)return this._toFoundBracket(r,m)}}return null}findEnclosingBrackets(e,t){let i=this.textModel.validatePosition(e);if(this.canBuildAST){let f=k.fromPositions(i),g=this.getBracketPairsInRange(k.fromPositions(i,i)).findLast(m=>m.closingBracketRange!==void 0&&m.range.strictContainsRange(f));return g?[g.openingBracketRange,g.closingBracketRange]:null}let o=rP(t),s=this.textModel.getLineCount(),r=new Map,a=[],l=(f,g)=>{if(!r.has(f)){let m=[];for(let _=0,b=g?g.brackets.length:0;_<b;_++)m[_]=0;r.set(f,m)}a=r.get(f)},c=0,d=(f,g,m,_,b)=>{for(;;){if(o&&++c%100===0&&!o())return Ec.INSTANCE;let v=zo.findNextBracketInRange(f.forwardRegex,g,m,_,b);if(!v)break;let C=m.substring(v.startColumn-1,v.endColumn-1).toLowerCase(),w=f.textIsBracket[C];if(w&&(w.isOpen(C)?a[w.index]++:w.isClose(C)&&a[w.index]--,a[w.index]===-1))return this._matchFoundBracket(v,w,!1,o);_=v.endColumn-1}return null},h=null,u=null;for(let f=i.lineNumber;f<=s;f++){let g=this.textModel.tokenization.getLineTokens(f),m=g.getCount(),_=this.textModel.getLineContent(f),b=0,v=0,C=0;if(f===i.lineNumber){b=g.findTokenIndexAtOffset(i.column-1),v=i.column-1,C=i.column-1;let S=g.getLanguageId(b);h!==S&&(h=S,u=this.languageConfigurationService.getLanguageConfiguration(h).brackets,l(h,u))}let w=!0;for(;b<m;b++){let S=g.getLanguageId(b);if(h!==S){if(u&&w&&v!==C){let x=d(u,f,_,v,C);if(x)return EL(x);w=!1}h=S,u=this.languageConfigurationService.getLanguageConfiguration(h).brackets,l(h,u)}let L=!!u&&!Nr(g.getStandardTokenType(b));if(L)w||(v=g.getStartOffset(b)),C=g.getEndOffset(b);else if(u&&w&&v!==C){let x=d(u,f,_,v,C);if(x)return EL(x)}w=L}if(u&&w&&v!==C){let S=d(u,f,_,v,C);if(S)return EL(S)}}return null}_toFoundBracket(e,t){if(!t)return null;let i=this.textModel.getValueInRange(t);i=i.toLowerCase();let o=e.getBracketInfo(i);return o?{range:t,bracketInfo:o}:null}};Ec=class n{static{this.INSTANCE=new n}constructor(){this._searchCanceledBrand=void 0}}});var TL,NL,CU=$(()=>{fe();X();Ee();Ca();Ki();TL=class extends R{constructor(e){super(),this.textModel=e,this.colorProvider=new NL,this.onDidChangeEmitter=new M,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=e.getOptions().bracketPairColorizationOptions,this._register(e.bracketPairs.onDidChange(t=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(e){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(e,t,i,o){return o?[]:t===void 0?[]:this.colorizationOptions.enabled?this.textModel.bracketPairs.getBracketsInRange(e,!0).map(r=>({id:`bracket${r.range.toString()}-${r.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(r,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:r.range})).toArray():[]}getAllDecorations(e,t){return e===void 0?[]:this.colorizationOptions.enabled?this.getDecorationsInRange(new k(1,1,this.textModel.getLineCount(),1),e,t):[]}},NL=class{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(e,t){return e.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(t?e.nestingLevelOfEqualBracketType:e.nestingLevel)}getInlineClassNameOfLevel(e){return`bracket-highlighting-${e%30}`}};lo((n,e)=>{let t=[lL,cL,dL,hL,uL,fL],i=new NL;e.addRule(`.monaco-editor .${i.unexpectedClosingBracketClassName} { color: ${n.getColor(UH)}; }`);let o=t.map(s=>n.getColor(s)).filter(s=>!!s).filter(s=>!s.isTransparent());for(let s=0;s<30;s++){let r=o[s%o.length];e.addRule(`.monaco-editor .${i.getInlineClassNameOfLevel(s)} { color: ${r}; }`)}})});function ML(n){return n.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}function yU(n,e){return n===null||n.length===0?e:new aP(n,e).compress()}var Fs,aP,lP=$(()=>{_b();ru();Fs=class n{get oldLength(){return this.oldText.length}get oldEnd(){return this.oldPosition+this.oldText.length}get newLength(){return this.newText.length}get newEnd(){return this.newPosition+this.newText.length}constructor(e,t,i,o){this.oldPosition=e,this.oldText=t,this.newPosition=i,this.newText=o}toString(){return this.oldText.length===0?`(insert@${this.oldPosition} "${ML(this.newText)}")`:this.newText.length===0?`(delete@${this.oldPosition} "${ML(this.oldText)}")`:`(replace@${this.oldPosition} "${ML(this.oldText)}" with "${ML(this.newText)}")`}static _writeStringSize(e){return 4+2*e.length}static _writeString(e,t,i){let o=t.length;Xs(e,o,i),i+=4;for(let s=0;s<o;s++)z8(e,t.charCodeAt(s),i),i+=2;return i}static _readString(e,t){let i=Qs(e,t);return t+=4,H8(e,t,i)}writeSize(){return 8+n._writeStringSize(this.oldText)+n._writeStringSize(this.newText)}write(e,t){return Xs(e,this.oldPosition,t),t+=4,Xs(e,this.newPosition,t),t+=4,t=n._writeString(e,this.oldText,t),t=n._writeString(e,this.newText,t),t}static read(e,t,i){let o=Qs(e,t);t+=4;let s=Qs(e,t);t+=4;let r=n._readString(e,t);t+=n._writeStringSize(r);let a=n._readString(e,t);return t+=n._writeStringSize(a),i.push(new n(o,r,s,a)),t}};aP=class n{constructor(e,t){this._prevEdits=e,this._currEdits=t,this._result=[],this._resultLen=0,this._prevLen=this._prevEdits.length,this._prevDeltaOffset=0,this._currLen=this._currEdits.length,this._currDeltaOffset=0}compress(){let e=0,t=0,i=this._getPrev(e),o=this._getCurr(t);for(;e<this._prevLen||t<this._currLen;){if(i===null){this._acceptCurr(o),o=this._getCurr(++t);continue}if(o===null){this._acceptPrev(i),i=this._getPrev(++e);continue}if(o.oldEnd<=i.newPosition){this._acceptCurr(o),o=this._getCurr(++t);continue}if(i.newEnd<=o.oldPosition){this._acceptPrev(i),i=this._getPrev(++e);continue}if(o.oldPosition<i.newPosition){let[c,d]=n._splitCurr(o,i.newPosition-o.oldPosition);this._acceptCurr(c),o=d;continue}if(i.newPosition<o.oldPosition){let[c,d]=n._splitPrev(i,o.oldPosition-i.newPosition);this._acceptPrev(c),i=d;continue}let a,l;if(o.oldEnd===i.newEnd)a=i,l=o,i=this._getPrev(++e),o=this._getCurr(++t);else if(o.oldEnd<i.newEnd){let[c,d]=n._splitPrev(i,o.oldLength);a=c,l=o,i=d,o=this._getCurr(++t)}else{let[c,d]=n._splitCurr(o,i.newLength);a=i,l=c,i=this._getPrev(++e),o=d}this._result[this._resultLen++]=new Fs(a.oldPosition,a.oldText,l.newPosition,l.newText),this._prevDeltaOffset+=a.newLength-a.oldLength,this._currDeltaOffset+=l.newLength-l.oldLength}let s=n._merge(this._result);return n._removeNoOps(s)}_acceptCurr(e){this._result[this._resultLen++]=n._rebaseCurr(this._prevDeltaOffset,e),this._currDeltaOffset+=e.newLength-e.oldLength}_getCurr(e){return e<this._currLen?this._currEdits[e]:null}_acceptPrev(e){this._result[this._resultLen++]=n._rebasePrev(this._currDeltaOffset,e),this._prevDeltaOffset+=e.newLength-e.oldLength}_getPrev(e){return e<this._prevLen?this._prevEdits[e]:null}static _rebaseCurr(e,t){return new Fs(t.oldPosition-e,t.oldText,t.newPosition,t.newText)}static _rebasePrev(e,t){return new Fs(t.oldPosition,t.oldText,t.newPosition+e,t.newText)}static _splitPrev(e,t){let i=e.newText.substr(0,t),o=e.newText.substr(t);return[new Fs(e.oldPosition,e.oldText,e.newPosition,i),new Fs(e.oldEnd,"",e.newPosition+t,o)]}static _splitCurr(e,t){let i=e.oldText.substr(0,t),o=e.oldText.substr(t);return[new Fs(e.oldPosition,i,e.newPosition,e.newText),new Fs(e.oldPosition+t,o,e.newEnd,"")]}static _merge(e){if(e.length===0)return e;let t=[],i=0,o=e[0];for(let s=1;s<e.length;s++){let r=e[s];o.oldEnd===r.oldPosition?o=new Fs(o.oldPosition,o.oldText+r.oldText,o.newPosition,o.newText+r.newText):(t[i++]=o,o=r)}return t[i++]=o,t}static _removeNoOps(e){if(e.length===0)return e;let t=[],i=0;for(let o=0;o<e.length;o++){let s=e[o];s.oldText!==s.newText&&(t[i++]=s)}return t}}});function jm(n){return n.toString()}function dP(n){return n.getEOL()===`
|
|
35
35
|
`?0:1}function Ll(n){return n?n instanceof AL||n instanceof cP:!1}var cs,AL,cP,RL,hP=$(()=>{ke();ht();gn();Ui();lP();_b();Du();cs=class n{static create(e,t){let i=e.getAlternativeVersionId(),o=dP(e);return new n(i,i,o,o,t,t,[])}constructor(e,t,i,o,s,r,a){this.beforeVersionId=e,this.afterVersionId=t,this.beforeEOL=i,this.afterEOL=o,this.beforeCursorState=s,this.afterCursorState=r,this.changes=a}append(e,t,i,o,s){t.length>0&&(this.changes=yU(this.changes,t)),this.afterEOL=i,this.afterVersionId=o,this.afterCursorState=s}static _writeSelectionsSize(e){return 4+4*4*(e?e.length:0)}static _writeSelections(e,t,i){if(Xs(e,t?t.length:0,i),i+=4,t)for(let o of t)Xs(e,o.selectionStartLineNumber,i),i+=4,Xs(e,o.selectionStartColumn,i),i+=4,Xs(e,o.positionLineNumber,i),i+=4,Xs(e,o.positionColumn,i),i+=4;return i}static _readSelections(e,t,i){let o=Qs(e,t);t+=4;for(let s=0;s<o;s++){let r=Qs(e,t);t+=4;let a=Qs(e,t);t+=4;let l=Qs(e,t);t+=4;let c=Qs(e,t);t+=4,i.push(new ze(r,a,l,c))}return t}serialize(){let e=10+n._writeSelectionsSize(this.beforeCursorState)+n._writeSelectionsSize(this.afterCursorState)+4;for(let o of this.changes)e+=o.writeSize();let t=new Uint8Array(e),i=0;Xs(t,this.beforeVersionId,i),i+=4,Xs(t,this.afterVersionId,i),i+=4,gM(t,this.beforeEOL,i),i+=1,gM(t,this.afterEOL,i),i+=1,i=n._writeSelections(t,this.beforeCursorState,i),i=n._writeSelections(t,this.afterCursorState,i),Xs(t,this.changes.length,i),i+=4;for(let o of this.changes)i=o.write(t,i);return t.buffer}static deserialize(e){let t=new Uint8Array(e),i=0,o=Qs(t,i);i+=4;let s=Qs(t,i);i+=4;let r=fM(t,i);i+=1;let a=fM(t,i);i+=1;let l=[];i=n._readSelections(t,i,l);let c=[];i=n._readSelections(t,i,c);let d=Qs(t,i);i+=4;let h=[];for(let u=0;u<d;u++)i=Fs.read(t,i,h);return new n(o,s,r,a,l,c,h)}},AL=class{get type(){return 0}get resource(){return ye.isUri(this.model)?this.model:this.model.uri}constructor(e,t,i,o){this.label=e,this.code=t,this.model=i,this._data=cs.create(i,o)}toString(){return(this._data instanceof cs?this._data:cs.deserialize(this._data)).changes.map(t=>t.toString()).join(", ")}matchesResource(e){return(ye.isUri(this.model)?this.model:this.model.uri).toString()===e.toString()}setModel(e){this.model=e}canAppend(e){return this.model===e&&this._data instanceof cs}append(e,t,i,o,s){this._data instanceof cs&&this._data.append(e,t,i,o,s)}close(){this._data instanceof cs&&(this._data=this._data.serialize())}open(){this._data instanceof cs||(this._data=cs.deserialize(this._data))}undo(){if(ye.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof cs&&(this._data=this._data.serialize());let e=cs.deserialize(this._data);this.model._applyUndo(e.changes,e.beforeEOL,e.beforeVersionId,e.beforeCursorState)}redo(){if(ye.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof cs&&(this._data=this._data.serialize());let e=cs.deserialize(this._data);this.model._applyRedo(e.changes,e.afterEOL,e.afterVersionId,e.afterCursorState)}heapSize(){return this._data instanceof cs&&(this._data=this._data.serialize()),this._data.byteLength+168}},cP=class{get resources(){return this._editStackElementsArr.map(e=>e.resource)}constructor(e,t,i){this.label=e,this.code=t,this.type=1,this._isOpen=!0,this._editStackElementsArr=i.slice(0),this._editStackElementsMap=new Map;for(let o of this._editStackElementsArr){let s=jm(o.resource);this._editStackElementsMap.set(s,o)}this._delegate=null}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(e){let t=jm(e);return this._editStackElementsMap.has(t)}setModel(e){let t=jm(ye.isUri(e)?e:e.uri);this._editStackElementsMap.has(t)&&this._editStackElementsMap.get(t).setModel(e)}canAppend(e){if(!this._isOpen)return!1;let t=jm(e.uri);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).canAppend(e):!1}append(e,t,i,o,s){let r=jm(e.uri);this._editStackElementsMap.get(r).append(e,t,i,o,s)}close(){this._isOpen=!1}open(){}undo(){this._isOpen=!1;for(let e of this._editStackElementsArr)e.undo()}redo(){for(let e of this._editStackElementsArr)e.redo()}heapSize(e){let t=jm(e);return this._editStackElementsMap.has(t)?this._editStackElementsMap.get(t).heapSize():0}split(){return this._editStackElementsArr}toString(){let e=[];for(let t of this._editStackElementsArr)e.push(`${s1(t.resource)}: ${t}`);return`{${e.join(", ")}}`}};RL=class n{constructor(e,t){this._model=e,this._undoRedoService=t}pushStackElement(){let e=this._undoRedoService.getLastElement(this._model.uri);Ll(e)&&e.close()}popStackElement(){let e=this._undoRedoService.getLastElement(this._model.uri);Ll(e)&&e.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(e,t){let i=this._undoRedoService.getLastElement(this._model.uri);if(Ll(i)&&i.canAppend(this._model))return i;let o=new AL(p("edit","Typing"),"undoredo.textBufferEdit",this._model,e);return this._undoRedoService.pushElement(o,t),o}pushEOL(e){let t=this._getOrCreateEditStackElement(null,void 0);this._model.setEOL(e),t.append(this._model,[],dP(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(e,t,i,o){let s=this._getOrCreateEditStackElement(e,o),r=this._model.applyEdits(t,!0),a=n._computeCursorState(i,r),l=r.map((c,d)=>({index:d,textChange:c.textChange}));return l.sort((c,d)=>c.textChange.oldPosition===d.textChange.oldPosition?c.index-d.index:c.textChange.oldPosition-d.textChange.oldPosition),s.append(this._model,l.map(c=>c.textChange),dP(this._model),this._model.getAlternativeVersionId(),a),a}static _computeCursorState(e,t){try{return e?e(t):null}catch(i){return Ue(i),null}}}});var Gm,uP=$(()=>{X();Gm=class extends R{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw new Error("TextModelPart is disposed!")}}});function SU(n,e){let t=0,i=0,o=n.length;for(;i<o;){let s=n.charCodeAt(i);if(s===32)t++;else if(s===9)t=t-t%e+e;else break;i++}return i===o?-1:t}var xU=$(()=>{});var Ic,zr,Tc,PL=$(()=>{(function(n){n[n.Disabled=0]="Disabled",n[n.EnabledForActive=1]="EnabledForActive",n[n.Enabled=2]="Enabled"})(Ic||(Ic={}));zr=class{constructor(e,t,i,o,s,r){if(this.visibleColumn=e,this.column=t,this.className=i,this.horizontalLine=o,this.forWrappedLinesAfterColumn=s,this.forWrappedLinesBeforeOrAtColumn=r,e!==-1==(t!==-1))throw new Error}},Tc=class{constructor(e,t){this.top=e,this.endColumn=t}}});var OL,H1,fP=$(()=>{ol();$e();ya();Ee();uP();xU();PL();ht();OL=class extends Gm{constructor(e,t){super(),this.textModel=e,this.languageConfigurationService=t}getLanguageConfiguration(e){return this.languageConfigurationService.getLanguageConfiguration(e)}_computeIndentLevel(e){return SU(this.textModel.getLineContent(e+1),this.textModel.getOptions().tabSize)}getActiveIndentGuide(e,t,i){this.assertNotDisposed();let o=this.textModel.getLineCount();if(e<1||e>o)throw new Ge("Illegal value for lineNumber");let s=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,r=!!(s&&s.offSide),a=-2,l=-1,c=-2,d=-1,h=x=>{if(a!==-1&&(a===-2||a>x-1)){a=-1,l=-1;for(let D=x-2;D>=0;D--){let E=this._computeIndentLevel(D);if(E>=0){a=D,l=E;break}}}if(c===-2){c=-1,d=-1;for(let D=x;D<o;D++){let E=this._computeIndentLevel(D);if(E>=0){c=D,d=E;break}}}},u=-2,f=-1,g=-2,m=-1,_=x=>{if(u===-2){u=-1,f=-1;for(let D=x-2;D>=0;D--){let E=this._computeIndentLevel(D);if(E>=0){u=D,f=E;break}}}if(g!==-1&&(g===-2||g<x-1)){g=-1,m=-1;for(let D=x;D<o;D++){let E=this._computeIndentLevel(D);if(E>=0){g=D,m=E;break}}}},b=0,v=!0,C=0,w=!0,S=0,L=0;for(let x=0;v||w;x++){let D=e-x,E=e+x;x>1&&(D<1||D<t)&&(v=!1),x>1&&(E>o||E>i)&&(w=!1),x>5e4&&(v=!1,w=!1);let U=-1;if(v&&D>=1){let W=this._computeIndentLevel(D-1);W>=0?(c=D-1,d=W,U=Math.ceil(W/this.textModel.getOptions().indentSize)):(h(D),U=this._getIndentLevelForWhitespaceLine(r,l,d))}let F=-1;if(w&&E<=o){let W=this._computeIndentLevel(E-1);W>=0?(u=E-1,f=W,F=Math.ceil(W/this.textModel.getOptions().indentSize)):(_(E),F=this._getIndentLevelForWhitespaceLine(r,f,m))}if(x===0){L=U;continue}if(x===1){if(E<=o&&F>=0&&L+1===F){v=!1,b=E,C=E,S=F;continue}if(D>=1&&U>=0&&U-1===L){w=!1,b=D,C=D,S=U;continue}if(b=e,C=e,S=L,S===0)return{startLineNumber:b,endLineNumber:C,indent:S}}v&&(U>=S?b=D:v=!1),w&&(F>=S?C=E:w=!1)}return{startLineNumber:b,endLineNumber:C,indent:S}}getLinesBracketGuides(e,t,i,o){let s=[];for(let h=e;h<=t;h++)s.push([]);let r=!0,a=this.textModel.bracketPairs.getBracketPairsInRangeWithMinIndentation(new k(e,1,t,this.textModel.getLineMaxColumn(t))).toArray(),l;if(i&&a.length>0){let h=(e<=i.lineNumber&&i.lineNumber<=t?a:this.textModel.bracketPairs.getBracketPairsInRange(k.fromPositions(i)).toArray()).filter(u=>k.strictContainsPosition(u.range,i));l=mu(h,u=>r||u.range.startLineNumber!==u.range.endLineNumber)?.range}let c=this.textModel.getOptions().bracketPairColorizationOptions.independentColorPoolPerBracketType,d=new H1;for(let h of a){if(!h.closingBracketRange)continue;let u=l&&h.range.equalsRange(l);if(!u&&!o.includeInactive)continue;let f=d.getInlineClassName(h.nestingLevel,h.nestingLevelOfEqualBracketType,c)+(o.highlightActive&&u?" "+d.activeClassName:""),g=h.openingBracketRange.getStartPosition(),m=h.closingBracketRange.getStartPosition(),_=o.horizontalGuides===Ic.Enabled||o.horizontalGuides===Ic.EnabledForActive&&u;if(h.range.startLineNumber===h.range.endLineNumber){r&&_&&s[h.range.startLineNumber-e].push(new zr(-1,h.openingBracketRange.getEndPosition().column,f,new Tc(!1,m.column),-1,-1));continue}let b=this.getVisibleColumnFromPosition(m),v=this.getVisibleColumnFromPosition(h.openingBracketRange.getStartPosition()),C=Math.min(v,b,h.minVisibleColumnIndentation+1),w=!1;Li(this.textModel.getLineContent(h.closingBracketRange.startLineNumber))<h.closingBracketRange.startColumn-1&&(w=!0);let x=Math.max(g.lineNumber,e),D=Math.min(m.lineNumber,t),E=w?1:0;for(let U=x;U<D+E;U++)s[U-e].push(new zr(C,-1,f,null,U===g.lineNumber?g.column:-1,U===m.lineNumber?m.column:-1));_&&(g.lineNumber>=e&&v>C&&s[g.lineNumber-e].push(new zr(C,-1,f,new Tc(!1,g.column),-1,-1)),m.lineNumber<=t&&b>C&&s[m.lineNumber-e].push(new zr(C,-1,f,new Tc(!w,m.column),-1,-1)))}for(let h of s)h.sort((u,f)=>u.visibleColumn-f.visibleColumn);return s}getVisibleColumnFromPosition(e){return Yt.visibleColumnFromColumn(this.textModel.getLineContent(e.lineNumber),e.column,this.textModel.getOptions().tabSize)+1}getLinesIndentGuides(e,t){this.assertNotDisposed();let i=this.textModel.getLineCount();if(e<1||e>i)throw new Error("Illegal value for startLineNumber");if(t<1||t>i)throw new Error("Illegal value for endLineNumber");let o=this.textModel.getOptions(),s=this.getLanguageConfiguration(this.textModel.getLanguageId()).foldingRules,r=!!(s&&s.offSide),a=new Array(t-e+1),l=-2,c=-1,d=-2,h=-1;for(let u=e;u<=t;u++){let f=u-e,g=this._computeIndentLevel(u-1);if(g>=0){l=u-1,c=g,a[f]=Math.ceil(g/o.indentSize);continue}if(l===-2){l=-1,c=-1;for(let m=u-2;m>=0;m--){let _=this._computeIndentLevel(m);if(_>=0){l=m,c=_;break}}}if(d!==-1&&(d===-2||d<u-1)){d=-1,h=-1;for(let m=u;m<i;m++){let _=this._computeIndentLevel(m);if(_>=0){d=m,h=_;break}}}a[f]=this._getIndentLevelForWhitespaceLine(r,c,h)}return a}_getIndentLevelForWhitespaceLine(e,t,i){let o=this.textModel.getOptions();return t===-1||i===-1?0:t<i?1+Math.floor(t/o.indentSize):t===i||e?Math.ceil(i/o.indentSize):1+Math.floor(i/o.indentSize)}},H1=class{constructor(){this.activeClassName="indent-active"}getInlineClassName(e,t,i){return this.getInlineClassNameOfLevel(i?t:e)}getInlineClassNameOfLevel(e){return`bracket-indent-guide lvl-${e%30}`}}});function PX(n,e,t,i,o){o.spacesDiff=0,o.looksLikeAlignment=!1;let s;for(s=0;s<e&&s<i;s++){let u=n.charCodeAt(s),f=t.charCodeAt(s);if(u!==f)break}let r=0,a=0;for(let u=s;u<e;u++)n.charCodeAt(u)===32?r++:a++;let l=0,c=0;for(let u=s;u<i;u++)t.charCodeAt(u)===32?l++:c++;if(r>0&&a>0||l>0&&c>0)return;let d=Math.abs(a-c),h=Math.abs(r-l);if(d===0){o.spacesDiff=h,h>0&&0<=l-1&&l-1<n.length&&l<t.length&&t.charCodeAt(l)!==32&&n.charCodeAt(l-1)===32&&n.charCodeAt(n.length-1)===44&&(o.looksLikeAlignment=!0);return}if(h%d===0){o.spacesDiff=h/d;return}}function mP(n,e,t){let i=Math.min(n.getLineCount(),1e4),o=0,s=0,r="",a=0,l=[2,4,6,8,3,5,7],c=8,d=[0,0,0,0,0,0,0,0,0],h=new gP;for(let g=1;g<=i;g++){let m=n.getLineLength(g),_=n.getLineContent(g),b=m<=65536,v=!1,C=0,w=0,S=0;for(let x=0,D=m;x<D;x++){let E=b?_.charCodeAt(x):n.getLineCharCode(g,x);if(E===9)S++;else if(E===32)w++;else{v=!0,C=x;break}}if(!v||(S>0?o++:w>1&&s++,PX(r,a,_,C,h),h.looksLikeAlignment&&!(t&&e===h.spacesDiff)))continue;let L=h.spacesDiff;L<=c&&d[L]++,r=_,a=C}let u=t;o!==s&&(u=o<s);let f=e;if(u){let g=u?0:.1*i;l.forEach(m=>{let _=d[m];_>g&&(g=_,f=m)}),f===4&&d[4]>0&&d[2]>0&&d[2]>=d[4]/2&&(f=2)}return{insertSpaces:u,tabSize:f}}var gP,LU=$(()=>{gP=class{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}});function qo(n){return(n.metadata&1)>>>0}function qt(n,e){n.metadata=n.metadata&254|e<<0}function On(n){return(n.metadata&2)>>>1===1}function zt(n,e){n.metadata=n.metadata&253|(e?1:0)<<1}function MU(n){return(n.metadata&4)>>>2===1}function kU(n,e){n.metadata=n.metadata&251|(e?1:0)<<2}function AU(n){return(n.metadata&64)>>>6===1}function DU(n,e){n.metadata=n.metadata&191|(e?1:0)<<6}function OX(n){return(n.metadata&24)>>>3}function EU(n,e){n.metadata=n.metadata&231|e<<3}function FX(n){return(n.metadata&32)>>>5===1}function IU(n,e){n.metadata=n.metadata&223|(e?1:0)<<5}function BX(n){let e=n.root,t=0;for(;e!==Ye;){if(e.left!==Ye&&!On(e.left)){e=e.left;continue}if(e.right!==Ye&&!On(e.right)){t+=e.delta,e=e.right;continue}e.start=t+e.start,e.end=t+e.end,e.delta=0,Nc(e),zt(e,!0),zt(e.left,!1),zt(e.right,!1),e===e.parent.right&&(t-=e.parent.delta),e=e.parent}zt(n.root,!1)}function Zm(n,e,t,i){return n<t?!0:n>t||i===1?!1:i===2?!0:e}function WX(n,e,t,i,o){let s=OX(n),r=s===0||s===2,a=s===1||s===2,l=t-e,c=i,d=Math.min(l,c),h=n.start,u=!1,f=n.end,g=!1;e<=h&&f<=t&&FX(n)&&(n.start=e,u=!0,n.end=e,g=!0);{let _=o?1:l>0?2:0;!u&&Zm(h,r,e,_)&&(u=!0),!g&&Zm(f,a,e,_)&&(g=!0)}if(d>0&&!o){let _=l>c?2:0;!u&&Zm(h,r,e+d,_)&&(u=!0),!g&&Zm(f,a,e+d,_)&&(g=!0)}{let _=o?1:0;!u&&Zm(h,r,t,_)&&(n.start=e+c,u=!0),!g&&Zm(f,a,t,_)&&(n.end=e+c,g=!0)}let m=c-l;u||(n.start=Math.max(0,h+m)),g||(n.end=Math.max(0,f+m)),n.start>n.end&&(n.end=n.start)}function zX(n,e,t){let i=n.root,o=0,s=0,r=0,a=0,l=[],c=0;for(;i!==Ye;){if(On(i)){zt(i.left,!1),zt(i.right,!1),i===i.parent.right&&(o-=i.parent.delta),i=i.parent;continue}if(!On(i.left)){if(s=o+i.maxEnd,s<e){zt(i,!0);continue}if(i.left!==Ye){i=i.left;continue}}if(r=o+i.start,r>t){zt(i,!0);continue}if(a=o+i.end,a>=e&&(i.setCachedOffsets(r,a,0),l[c++]=i),zt(i,!0),i.right!==Ye&&!On(i.right)){o+=i.delta,i=i.right;continue}}return zt(n.root,!1),l}function VX(n,e,t,i){let o=n.root,s=0,r=0,a=0,l=i-(t-e);for(;o!==Ye;){if(On(o)){zt(o.left,!1),zt(o.right,!1),o===o.parent.right&&(s-=o.parent.delta),Nc(o),o=o.parent;continue}if(!On(o.left)){if(r=s+o.maxEnd,r<e){zt(o,!0);continue}if(o.left!==Ye){o=o.left;continue}}if(a=s+o.start,a>t){o.start+=l,o.end+=l,o.delta+=l,(o.delta<-1073741824||o.delta>1073741824)&&(n.requestNormalizeDelta=!0),zt(o,!0);continue}if(zt(o,!0),o.right!==Ye&&!On(o.right)){s+=o.delta,o=o.right;continue}}zt(n.root,!1)}function HX(n,e){let t=n.root,i=[],o=0;for(;t!==Ye;){if(On(t)){zt(t.left,!1),zt(t.right,!1),t=t.parent;continue}if(t.left!==Ye&&!On(t.left)){t=t.left;continue}if(t.ownerId===e&&(i[o++]=t),zt(t,!0),t.right!==Ye&&!On(t.right)){t=t.right;continue}}return zt(n.root,!1),i}function UX(n){let e=n.root,t=[],i=0;for(;e!==Ye;){if(On(e)){zt(e.left,!1),zt(e.right,!1),e=e.parent;continue}if(e.left!==Ye&&!On(e.left)){e=e.left;continue}if(e.right!==Ye&&!On(e.right)){e=e.right;continue}t[i++]=e,zt(e,!0)}return zt(n.root,!1),t}function $X(n,e,t,i,o){let s=n.root,r=0,a=0,l=0,c=[],d=0;for(;s!==Ye;){if(On(s)){zt(s.left,!1),zt(s.right,!1),s===s.parent.right&&(r-=s.parent.delta),s=s.parent;continue}if(s.left!==Ye&&!On(s.left)){s=s.left;continue}a=r+s.start,l=r+s.end,s.setCachedOffsets(a,l,i);let h=!0;if(e&&s.ownerId&&s.ownerId!==e&&(h=!1),t&&MU(s)&&(h=!1),o&&!AU(s)&&(h=!1),h&&(c[d++]=s),zt(s,!0),s.right!==Ye&&!On(s.right)){r+=s.delta,s=s.right;continue}}return zt(n.root,!1),c}function qX(n,e,t,i,o,s,r){let a=n.root,l=0,c=0,d=0,h=0,u=[],f=0;for(;a!==Ye;){if(On(a)){zt(a.left,!1),zt(a.right,!1),a===a.parent.right&&(l-=a.parent.delta),a=a.parent;continue}if(!On(a.left)){if(c=l+a.maxEnd,c<e){zt(a,!0);continue}if(a.left!==Ye){a=a.left;continue}}if(d=l+a.start,d>t){zt(a,!0);continue}if(h=l+a.end,h>=e){a.setCachedOffsets(d,h,s);let g=!0;i&&a.ownerId&&a.ownerId!==i&&(g=!1),o&&MU(a)&&(g=!1),r&&!AU(a)&&(g=!1),g&&(u[f++]=a)}if(zt(a,!0),a.right!==Ye&&!On(a.right)){l+=a.delta,a=a.right;continue}}return zt(n.root,!1),u}function TU(n,e){if(n.root===Ye)return e.parent=Ye,e.left=Ye,e.right=Ye,qt(e,0),n.root=e,n.root;KX(n,e),uh(e.parent);let t=e;for(;t!==n.root&&qo(t.parent)===1;)if(t.parent===t.parent.parent.left){let i=t.parent.parent.right;qo(i)===1?(qt(t.parent,0),qt(i,0),qt(t.parent.parent,1),t=t.parent.parent):(t===t.parent.right&&(t=t.parent,U1(n,t)),qt(t.parent,0),qt(t.parent.parent,1),$1(n,t.parent.parent))}else{let i=t.parent.parent.left;qo(i)===1?(qt(t.parent,0),qt(i,0),qt(t.parent.parent,1),t=t.parent.parent):(t===t.parent.left&&(t=t.parent,$1(n,t)),qt(t.parent,0),qt(t.parent.parent,1),U1(n,t.parent.parent))}return qt(n.root,0),e}function KX(n,e){let t=0,i=n.root,o=e.start,s=e.end;for(;;)if(GX(o,s,i.start+t,i.end+t)<0)if(i.left===Ye){e.start-=t,e.end-=t,e.maxEnd-=t,i.left=e;break}else i=i.left;else if(i.right===Ye){e.start-=t+i.delta,e.end-=t+i.delta,e.maxEnd-=t+i.delta,i.right=e;break}else t+=i.delta,i=i.right;e.parent=i,e.left=Ye,e.right=Ye,qt(e,1)}function NU(n,e){let t,i;if(e.left===Ye?(t=e.right,i=e,t.delta+=e.delta,(t.delta<-1073741824||t.delta>1073741824)&&(n.requestNormalizeDelta=!0),t.start+=e.delta,t.end+=e.delta):e.right===Ye?(t=e.left,i=e):(i=jX(e.right),t=i.right,t.start+=i.delta,t.end+=i.delta,t.delta+=i.delta,(t.delta<-1073741824||t.delta>1073741824)&&(n.requestNormalizeDelta=!0),i.start+=e.delta,i.end+=e.delta,i.delta=e.delta,(i.delta<-1073741824||i.delta>1073741824)&&(n.requestNormalizeDelta=!0)),i===n.root){n.root=t,qt(t,0),e.detach(),pP(),Nc(t),n.root.parent=Ye;return}let o=qo(i)===1;if(i===i.parent.left?i.parent.left=t:i.parent.right=t,i===e?t.parent=i.parent:(i.parent===e?t.parent=i:t.parent=i.parent,i.left=e.left,i.right=e.right,i.parent=e.parent,qt(i,qo(e)),e===n.root?n.root=i:e===e.parent.left?e.parent.left=i:e.parent.right=i,i.left!==Ye&&(i.left.parent=i),i.right!==Ye&&(i.right.parent=i)),e.detach(),o){uh(t.parent),i!==e&&(uh(i),uh(i.parent)),pP();return}uh(t),uh(t.parent),i!==e&&(uh(i),uh(i.parent));let s;for(;t!==n.root&&qo(t)===0;)t===t.parent.left?(s=t.parent.right,qo(s)===1&&(qt(s,0),qt(t.parent,1),U1(n,t.parent),s=t.parent.right),qo(s.left)===0&&qo(s.right)===0?(qt(s,1),t=t.parent):(qo(s.right)===0&&(qt(s.left,0),qt(s,1),$1(n,s),s=t.parent.right),qt(s,qo(t.parent)),qt(t.parent,0),qt(s.right,0),U1(n,t.parent),t=n.root)):(s=t.parent.left,qo(s)===1&&(qt(s,0),qt(t.parent,1),$1(n,t.parent),s=t.parent.left),qo(s.left)===0&&qo(s.right)===0?(qt(s,1),t=t.parent):(qo(s.left)===0&&(qt(s.right,0),qt(s,1),U1(n,s),s=t.parent.left),qt(s,qo(t.parent)),qt(t.parent,0),qt(s.left,0),$1(n,t.parent),t=n.root));qt(t,0),pP()}function jX(n){for(;n.left!==Ye;)n=n.left;return n}function pP(){Ye.parent=Ye,Ye.delta=0,Ye.start=0,Ye.end=0}function U1(n,e){let t=e.right;t.delta+=e.delta,(t.delta<-1073741824||t.delta>1073741824)&&(n.requestNormalizeDelta=!0),t.start+=e.delta,t.end+=e.delta,e.right=t.left,t.left!==Ye&&(t.left.parent=e),t.parent=e.parent,e.parent===Ye?n.root=t:e===e.parent.left?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t,Nc(e),Nc(t)}function $1(n,e){let t=e.left;e.delta-=t.delta,(e.delta<-1073741824||e.delta>1073741824)&&(n.requestNormalizeDelta=!0),e.start-=t.delta,e.end-=t.delta,e.left=t.right,t.right!==Ye&&(t.right.parent=e),t.parent=e.parent,e.parent===Ye?n.root=t:e===e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t,Nc(e),Nc(t)}function RU(n){let e=n.end;if(n.left!==Ye){let t=n.left.maxEnd;t>e&&(e=t)}if(n.right!==Ye){let t=n.right.maxEnd+n.delta;t>e&&(e=t)}return e}function Nc(n){n.maxEnd=RU(n)}function uh(n){for(;n!==Ye;){let e=RU(n);if(n.maxEnd===e)return;n.maxEnd=e,n=n.parent}}function GX(n,e,t,i){return n===t?e-i:n-t}var q1,Ye,Ym,PU=$(()=>{q1=class{constructor(e,t,i){this.metadata=0,this.parent=this,this.left=this,this.right=this,qt(this,1),this.start=t,this.end=i,this.delta=0,this.maxEnd=i,this.id=e,this.ownerId=0,this.options=null,kU(this,!1),DU(this,!1),EU(this,1),IU(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=null,zt(this,!1)}reset(e,t,i,o){this.start=t,this.end=i,this.maxEnd=i,this.cachedVersionId=e,this.cachedAbsoluteStart=t,this.cachedAbsoluteEnd=i,this.range=o}setOptions(e){this.options=e;let t=this.options.className;kU(this,t==="squiggly-error"||t==="squiggly-warning"||t==="squiggly-info"),DU(this,this.options.glyphMarginClassName!==null),EU(this,this.options.stickiness),IU(this,this.options.collapseOnReplaceEdit)}setCachedOffsets(e,t,i){this.cachedVersionId!==i&&(this.range=null),this.cachedVersionId=i,this.cachedAbsoluteStart=e,this.cachedAbsoluteEnd=t}detach(){this.parent=null,this.left=null,this.right=null}},Ye=new q1(null,0,0);Ye.parent=Ye;Ye.left=Ye;Ye.right=Ye;qt(Ye,0);Ym=class{constructor(){this.root=Ye,this.requestNormalizeDelta=!1}intervalSearch(e,t,i,o,s,r){return this.root===Ye?[]:qX(this,e,t,i,o,s,r)}search(e,t,i,o){return this.root===Ye?[]:$X(this,e,t,i,o)}collectNodesFromOwner(e){return HX(this,e)}collectNodesPostOrder(){return UX(this)}insert(e){TU(this,e),this._normalizeDeltaIfNecessary()}delete(e){NU(this,e),this._normalizeDeltaIfNecessary()}resolveNode(e,t){let i=e,o=0;for(;e!==this.root;)e===e.parent.right&&(o+=e.parent.delta),e=e.parent;let s=i.start+o,r=i.end+o;i.setCachedOffsets(s,r,t)}acceptReplace(e,t,i,o){let s=zX(this,e,e+t);for(let r=0,a=s.length;r<a;r++){let l=s[r];NU(this,l)}this._normalizeDeltaIfNecessary(),VX(this,e,e+t,i),this._normalizeDeltaIfNecessary();for(let r=0,a=s.length;r<a;r++){let l=s[r];l.start=l.cachedAbsoluteStart,l.end=l.cachedAbsoluteEnd,WX(l,e,e+t,i,o),l.maxEnd=l.end,TU(this,l)}this._normalizeDeltaIfNecessary()}_normalizeDeltaIfNecessary(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,BX(this))}}});function FL(n){for(;n.left!==Me;)n=n.left;return n}function bP(n){for(;n.right!==Me;)n=n.right;return n}function vP(n){return n===Me?0:n.size_left+n.piece.length+vP(n.right)}function wP(n){return n===Me?0:n.lf_left+n.piece.lineFeedCnt+wP(n.right)}function _P(){Me.parent=Me}function j1(n,e){let t=e.right;t.size_left+=e.size_left+(e.piece?e.piece.length:0),t.lf_left+=e.lf_left+(e.piece?e.piece.lineFeedCnt:0),e.right=t.left,t.left!==Me&&(t.left.parent=e),t.parent=e.parent,e.parent===Me?n.root=t:e.parent.left===e?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t}function G1(n,e){let t=e.left;e.left=t.right,t.right!==Me&&(t.right.parent=e),t.parent=e.parent,e.size_left-=t.size_left+(t.piece?t.piece.length:0),e.lf_left-=t.lf_left+(t.piece?t.piece.lineFeedCnt:0),e.parent===Me?n.root=t:e===e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t}function Z1(n,e){let t,i;if(e.left===Me?(i=e,t=i.right):e.right===Me?(i=e,t=i.left):(i=FL(e.right),t=i.right),i===n.root){n.root=t,t.color=0,e.detach(),_P(),n.root.parent=Me;return}let o=i.color===1;if(i===i.parent.left?i.parent.left=t:i.parent.right=t,i===e?(t.parent=i.parent,K1(n,t)):(i.parent===e?t.parent=i:t.parent=i.parent,K1(n,t),i.left=e.left,i.right=e.right,i.parent=e.parent,i.color=e.color,e===n.root?n.root=i:e===e.parent.left?e.parent.left=i:e.parent.right=i,i.left!==Me&&(i.left.parent=i),i.right!==Me&&(i.right.parent=i),i.size_left=e.size_left,i.lf_left=e.lf_left,K1(n,i)),e.detach(),t.parent.left===t){let r=vP(t),a=wP(t);if(r!==t.parent.size_left||a!==t.parent.lf_left){let l=r-t.parent.size_left,c=a-t.parent.lf_left;t.parent.size_left=r,t.parent.lf_left=a,kl(n,t.parent,l,c)}}if(K1(n,t.parent),o){_P();return}let s;for(;t!==n.root&&t.color===0;)t===t.parent.left?(s=t.parent.right,s.color===1&&(s.color=0,t.parent.color=1,j1(n,t.parent),s=t.parent.right),s.left.color===0&&s.right.color===0?(s.color=1,t=t.parent):(s.right.color===0&&(s.left.color=0,s.color=1,G1(n,s),s=t.parent.right),s.color=t.parent.color,t.parent.color=0,s.right.color=0,j1(n,t.parent),t=n.root)):(s=t.parent.left,s.color===1&&(s.color=0,t.parent.color=1,G1(n,t.parent),s=t.parent.left),s.left.color===0&&s.right.color===0?(s.color=1,t=t.parent):(s.left.color===0&&(s.right.color=0,s.color=1,j1(n,s),s=t.parent.left),s.color=t.parent.color,t.parent.color=0,s.left.color=0,G1(n,t.parent),t=n.root));t.color=0,_P()}function CP(n,e){for(K1(n,e);e!==n.root&&e.parent.color===1;)if(e.parent===e.parent.parent.left){let t=e.parent.parent.right;t.color===1?(e.parent.color=0,t.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.right&&(e=e.parent,j1(n,e)),e.parent.color=0,e.parent.parent.color=1,G1(n,e.parent.parent))}else{let t=e.parent.parent.left;t.color===1?(e.parent.color=0,t.color=0,e.parent.parent.color=1,e=e.parent.parent):(e===e.parent.left&&(e=e.parent,G1(n,e)),e.parent.color=0,e.parent.parent.color=1,j1(n,e.parent.parent))}n.root.color=0}function kl(n,e,t,i){for(;e!==n.root&&e!==Me;)e.parent.left===e&&(e.parent.size_left+=t,e.parent.lf_left+=i),e=e.parent}function K1(n,e){let t=0,i=0;if(e!==n.root){for(;e!==n.root&&e===e.parent.right;)e=e.parent;if(e!==n.root)for(e=e.parent,t=vP(e.left)-e.size_left,i=wP(e.left)-e.lf_left,e.size_left+=t,e.lf_left+=i;e!==n.root&&(t!==0||i!==0);)e.parent.left===e&&(e.parent.size_left+=t,e.parent.lf_left+=i),e=e.parent}}var Qm,Me,OU=$(()=>{Qm=class{constructor(e,t){this.piece=e,this.color=t,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==Me)return FL(this.right);let e=this;for(;e.parent!==Me&&e.parent.left!==e;)e=e.parent;return e.parent===Me?Me:e.parent}prev(){if(this.left!==Me)return bP(this.left);let e=this;for(;e.parent!==Me&&e.parent.right!==e;)e=e.parent;return e.parent===Me?Me:e.parent}detach(){this.parent=null,this.left=null,this.right=null}},Me=new Qm(null,0);Me.parent=Me;Me.left=Me;Me.right=Me;Me.color=0});function FU(n){let e;return n[n.length-1]<65536?e=new Uint16Array(n.length):e=new Uint32Array(n.length),e.set(n,0),e}function Dl(n,e=!0){let t=[0],i=1;for(let o=0,s=n.length;o<s;o++){let r=n.charCodeAt(o);r===13?o+1<s&&n.charCodeAt(o+1)===10?(t[i++]=o+2,o++):t[i++]=o+1:r===10&&(t[i++]=o+1)}return e?FU(t):t}function BU(n,e){n.length=0,n[0]=0;let t=1,i=0,o=0,s=0,r=!0;for(let l=0,c=e.length;l<c;l++){let d=e.charCodeAt(l);d===13?l+1<c&&e.charCodeAt(l+1)===10?(s++,n[t++]=l+2,l++):(i++,n[t++]=l+1):d===10?(o++,n[t++]=l+1):r&&d!==9&&(d<32||d>126)&&(r=!1)}let a=new yP(FU(n),i,o,s,r);return n.length=0,a}var Mc,yP,To,El,SP,xP,BL,LP=$(()=>{Ze();Ee();nr();OU();Ty();Mc=65535;yP=class{constructor(e,t,i,o,s){this.lineStarts=e,this.cr=t,this.lf=i,this.crlf=o,this.isBasicASCII=s}};To=class{constructor(e,t,i,o,s){this.bufferIndex=e,this.start=t,this.end=i,this.lineFeedCnt=o,this.length=s}},El=class{constructor(e,t){this.buffer=e,this.lineStarts=t}},SP=class{constructor(e,t){this._pieces=[],this._tree=e,this._BOM=t,this._index=0,e.root!==Me&&e.iterate(e.root,i=>(i!==Me&&this._pieces.push(i.piece),!0))}read(){return this._pieces.length===0?this._index===0?(this._index++,this._BOM):null:this._index>this._pieces.length-1?null:this._index===0?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}},xP=class{constructor(e){this._limit=e,this._cache=[]}get(e){for(let t=this._cache.length-1;t>=0;t--){let i=this._cache[t];if(i.nodeStartOffset<=e&&i.nodeStartOffset+i.node.piece.length>=e)return i}return null}get2(e){for(let t=this._cache.length-1;t>=0;t--){let i=this._cache[t];if(i.nodeStartLineNumber&&i.nodeStartLineNumber<e&&i.nodeStartLineNumber+i.node.piece.lineFeedCnt>=e)return i}return null}set(e){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(e)}validate(e){let t=!1,i=this._cache;for(let o=0;o<i.length;o++){let s=i[o];if(s.node.parent===null||s.nodeStartOffset>=e){i[o]=null,t=!0;continue}}if(t){let o=[];for(let s of i)s!==null&&o.push(s);this._cache=o}}},BL=class{constructor(e,t,i){this.create(e,t,i)}create(e,t,i){this._buffers=[new El("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=Me,this._lineCnt=1,this._length=0,this._EOL=t,this._EOLLength=t.length,this._EOLNormalized=i;let o=null;for(let s=0,r=e.length;s<r;s++)if(e[s].buffer.length>0){e[s].lineStarts||(e[s].lineStarts=Dl(e[s].buffer));let a=new To(s+1,{line:0,column:0},{line:e[s].lineStarts.length-1,column:e[s].buffer.length-e[s].lineStarts[e[s].lineStarts.length-1]},e[s].lineStarts.length-1,e[s].buffer.length);this._buffers.push(e[s]),o=this.rbInsertRight(o,a)}this._searchCache=new xP(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(e){let t=Mc,i=t-Math.floor(t/3),o=i*2,s="",r=0,a=[];if(this.iterate(this.root,l=>{let c=this.getNodeContent(l),d=c.length;if(r<=i||r+d<o)return s+=c,r+=d,!0;let h=s.replace(/\r\n|\r|\n/g,e);return a.push(new El(h,Dl(h))),s=c,r=d,!0}),r>0){let l=s.replace(/\r\n|\r|\n/g,e);a.push(new El(l,Dl(l)))}this.create(a,e,!0)}getEOL(){return this._EOL}setEOL(e){this._EOL=e,this._EOLLength=this._EOL.length,this.normalizeEOL(e)}createSnapshot(e){return new SP(this,e)}getOffsetAt(e,t){let i=0,o=this.root;for(;o!==Me;)if(o.left!==Me&&o.lf_left+1>=e)o=o.left;else if(o.lf_left+o.piece.lineFeedCnt+1>=e){i+=o.size_left;let s=this.getAccumulatedValue(o,e-o.lf_left-2);return i+=s+t-1}else e-=o.lf_left+o.piece.lineFeedCnt,i+=o.size_left+o.piece.length,o=o.right;return i}getPositionAt(e){e=Math.floor(e),e=Math.max(0,e);let t=this.root,i=0,o=e;for(;t!==Me;)if(t.size_left!==0&&t.size_left>=e)t=t.left;else if(t.size_left+t.piece.length>=e){let s=this.getIndexOf(t,e-t.size_left);if(i+=t.lf_left+s.index,s.index===0){let r=this.getOffsetAt(i+1,1),a=o-r;return new P(i+1,a+1)}return new P(i+1,s.remainder+1)}else if(e-=t.size_left+t.piece.length,i+=t.lf_left+t.piece.lineFeedCnt,t.right===Me){let s=this.getOffsetAt(i+1,1),r=o-e-s;return new P(i+1,r+1)}else t=t.right;return new P(1,1)}getValueInRange(e,t){if(e.startLineNumber===e.endLineNumber&&e.startColumn===e.endColumn)return"";let i=this.nodeAt2(e.startLineNumber,e.startColumn),o=this.nodeAt2(e.endLineNumber,e.endColumn),s=this.getValueInRange2(i,o);return t?t!==this._EOL||!this._EOLNormalized?s.replace(/\r\n|\r|\n/g,t):t===this.getEOL()&&this._EOLNormalized?s:s.replace(/\r\n|\r|\n/g,t):s}getValueInRange2(e,t){if(e.node===t.node){let a=e.node,l=this._buffers[a.piece.bufferIndex].buffer,c=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return l.substring(c+e.remainder,c+t.remainder)}let i=e.node,o=this._buffers[i.piece.bufferIndex].buffer,s=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start),r=o.substring(s+e.remainder,s+i.piece.length);for(i=i.next();i!==Me;){let a=this._buffers[i.piece.bufferIndex].buffer,l=this.offsetInBuffer(i.piece.bufferIndex,i.piece.start);if(i===t.node){r+=a.substring(l,l+t.remainder);break}else r+=a.substr(l,i.piece.length);i=i.next()}return r}getLinesContent(){let e=[],t=0,i="",o=!1;return this.iterate(this.root,s=>{if(s===Me)return!0;let r=s.piece,a=r.length;if(a===0)return!0;let l=this._buffers[r.bufferIndex].buffer,c=this._buffers[r.bufferIndex].lineStarts,d=r.start.line,h=r.end.line,u=c[d]+r.start.column;if(o&&(l.charCodeAt(u)===10&&(u++,a--),e[t++]=i,i="",o=!1,a===0))return!0;if(d===h)return!this._EOLNormalized&&l.charCodeAt(u+a-1)===13?(o=!0,i+=l.substr(u,a-1)):i+=l.substr(u,a),!0;i+=this._EOLNormalized?l.substring(u,Math.max(u,c[d+1]-this._EOLLength)):l.substring(u,c[d+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=i;for(let f=d+1;f<h;f++)i=this._EOLNormalized?l.substring(c[f],c[f+1]-this._EOLLength):l.substring(c[f],c[f+1]).replace(/(\r\n|\r|\n)$/,""),e[t++]=i;return!this._EOLNormalized&&l.charCodeAt(c[h]+r.end.column-1)===13?(o=!0,r.end.column===0?t--:i=l.substr(c[h],r.end.column-1)):i=l.substr(c[h],r.end.column),!0}),o&&(e[t++]=i,i=""),e[t++]=i,e}getLength(){return this._length}getLineCount(){return this._lineCnt}getLineContent(e){return this._lastVisitedLine.lineNumber===e?this._lastVisitedLine.value:(this._lastVisitedLine.lineNumber=e,e===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(e):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(e,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(e).replace(/(\r\n|\r|\n)$/,""),this._lastVisitedLine.value)}_getCharCode(e){if(e.remainder===e.node.piece.length){let t=e.node.next();if(!t)return 0;let i=this._buffers[t.piece.bufferIndex],o=this.offsetInBuffer(t.piece.bufferIndex,t.piece.start);return i.buffer.charCodeAt(o)}else{let t=this._buffers[e.node.piece.bufferIndex],o=this.offsetInBuffer(e.node.piece.bufferIndex,e.node.piece.start)+e.remainder;return t.buffer.charCodeAt(o)}}getLineCharCode(e,t){let i=this.nodeAt2(e,t+1);return this._getCharCode(i)}getLineLength(e){if(e===this.getLineCount()){let t=this.getOffsetAt(e,1);return this.getLength()-t}return this.getOffsetAt(e+1,1)-this.getOffsetAt(e,1)-this._EOLLength}findMatchesInNode(e,t,i,o,s,r,a,l,c,d,h){let u=this._buffers[e.piece.bufferIndex],f=this.offsetInBuffer(e.piece.bufferIndex,e.piece.start),g=this.offsetInBuffer(e.piece.bufferIndex,s),m=this.offsetInBuffer(e.piece.bufferIndex,r),_,b={line:0,column:0},v,C;t._wordSeparators?(v=u.buffer.substring(g,m),C=w=>w+g,t.reset(0)):(v=u.buffer,C=w=>w,t.reset(g));do if(_=t.next(v),_){if(C(_.index)>=m)return d;this.positionInBuffer(e,C(_.index)-f,b);let w=this.getLineFeedCnt(e.piece.bufferIndex,s,b),S=b.line===s.line?b.column-s.column+o:b.column+1,L=S+_[0].length;if(h[d++]=Nd(new k(i+w,S,i+w,L),_,l),C(_.index)+_[0].length>=m||d>=c)return d}while(_);return d}findMatchesLineByLine(e,t,i,o){let s=[],r=0,a=new nl(t.wordSeparators,t.regex),l=this.nodeAt2(e.startLineNumber,e.startColumn);if(l===null)return[];let c=this.nodeAt2(e.endLineNumber,e.endColumn);if(c===null)return[];let d=this.positionInBuffer(l.node,l.remainder),h=this.positionInBuffer(c.node,c.remainder);if(l.node===c.node)return this.findMatchesInNode(l.node,a,e.startLineNumber,e.startColumn,d,h,t,i,o,r,s),s;let u=e.startLineNumber,f=l.node;for(;f!==c.node;){let m=this.getLineFeedCnt(f.piece.bufferIndex,d,f.piece.end);if(m>=1){let b=this._buffers[f.piece.bufferIndex].lineStarts,v=this.offsetInBuffer(f.piece.bufferIndex,f.piece.start),C=b[d.line+m],w=u===e.startLineNumber?e.startColumn:1;if(r=this.findMatchesInNode(f,a,u,w,d,this.positionInBuffer(f,C-v),t,i,o,r,s),r>=o)return s;u+=m}let _=u===e.startLineNumber?e.startColumn-1:0;if(u===e.endLineNumber){let b=this.getLineContent(u).substring(_,e.endColumn-1);return r=this._findMatchesInLine(t,a,b,e.endLineNumber,_,r,s,i,o),s}if(r=this._findMatchesInLine(t,a,this.getLineContent(u).substr(_),u,_,r,s,i,o),r>=o)return s;u++,l=this.nodeAt2(u,1),f=l.node,d=this.positionInBuffer(l.node,l.remainder)}if(u===e.endLineNumber){let m=u===e.startLineNumber?e.startColumn-1:0,_=this.getLineContent(u).substring(m,e.endColumn-1);return r=this._findMatchesInLine(t,a,_,e.endLineNumber,m,r,s,i,o),s}let g=u===e.startLineNumber?e.startColumn:1;return r=this.findMatchesInNode(c.node,a,u,g,d,h,t,i,o,r,s),s}_findMatchesInLine(e,t,i,o,s,r,a,l,c){let d=e.wordSeparators;if(!l&&e.simpleSearch){let u=e.simpleSearch,f=u.length,g=i.length,m=-f;for(;(m=i.indexOf(u,m+f))!==-1;)if((!d||Iy(d,i,g,m,f))&&(a[r++]=new il(new k(o,m+1+s,o,m+1+f+s),null),r>=c))return r;return r}let h;t.reset(0);do if(h=t.next(i),h&&(a[r++]=Nd(new k(o,h.index+1+s,o,h.index+1+h[0].length+s),h,l),r>=c))return r;while(h);return r}insert(e,t,i=!1){if(this._EOLNormalized=this._EOLNormalized&&i,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==Me){let{node:o,remainder:s,nodeStartOffset:r}=this.nodeAt(e),a=o.piece,l=a.bufferIndex,c=this.positionInBuffer(o,s);if(o.piece.bufferIndex===0&&a.end.line===this._lastChangeBufferPos.line&&a.end.column===this._lastChangeBufferPos.column&&r+a.length===e&&t.length<Mc){this.appendToNode(o,t),this.computeBufferMetadata();return}if(r===e)this.insertContentToNodeLeft(t,o),this._searchCache.validate(e);else if(r+o.piece.length>e){let d=[],h=new To(a.bufferIndex,c,a.end,this.getLineFeedCnt(a.bufferIndex,c,a.end),this.offsetInBuffer(l,a.end)-this.offsetInBuffer(l,c));if(this.shouldCheckCRLF()&&this.endWithCR(t)&&this.nodeCharCodeAt(o,s)===10){let m={line:h.start.line+1,column:0};h=new To(h.bufferIndex,m,h.end,this.getLineFeedCnt(h.bufferIndex,m,h.end),h.length-1),t+=`
|
|
@@ -57,7 +57,7 @@ ${tQ(t,e)}
|
|
|
57
57
|
`)<0){let c=new mc(e,i,o,s).parseSearchRequest();if(!c)return null;let d=this.getLineCount(),h=new k(a.lineNumber,a.column,d,this.getLineMaxColumn(d)),u=this.findMatchesLineByLine(h,c,r,1);return gu.findNextMatch(this,new mc(e,i,o,s),a,r),u.length>0||(h=new k(1,1,a.lineNumber,this.getLineMaxColumn(a.lineNumber)),u=this.findMatchesLineByLine(h,c,r,1),u.length>0)?u[0]:null}return gu.findNextMatch(this,new mc(e,i,o,s),a,r)}findPreviousMatch(e,t,i,o,s,r){this._assertNotDisposed();let a=this.validatePosition(t);return gu.findPreviousMatch(this,new mc(e,i,o,s),a,r)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(e){if((this.getEOL()===`
|
|
58
58
|
`?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(e){return e instanceof Fg?e:new Fg(e.identifier||null,this.validateRange(e.range),e.text,e.forceMoveMarkers||!1,e.isAutoWhitespaceEdit||!1,e._isTracked||!1)}_validateEditOperations(e){let t=[];for(let i=0,o=e.length;i<o;i++)t[i]=this._validateEditOperation(e[i]);return t}pushEditOperations(e,t,i,o){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(e,this._validateEditOperations(t),i,o)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_pushEditOperations(e,t,i,o){if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){let s=t.map(a=>({range:this.validateRange(a.range),text:a.text})),r=!0;if(e)for(let a=0,l=e.length;a<l;a++){let c=e[a],d=!1;for(let h=0,u=s.length;h<u;h++){let f=s[h].range,g=f.startLineNumber>c.endLineNumber,m=c.startLineNumber>f.endLineNumber;if(!g&&!m){d=!0;break}}if(!d){r=!1;break}}if(r)for(let a=0,l=this._trimAutoWhitespaceLines.length;a<l;a++){let c=this._trimAutoWhitespaceLines[a],d=this.getLineMaxColumn(c),h=!0;for(let u=0,f=s.length;u<f;u++){let g=s[u].range,m=s[u].text;if(!(c<g.startLineNumber||c>g.endLineNumber)&&!(c===g.startLineNumber&&g.startColumn===d&&g.isEmpty()&&m&&m.length>0&&m.charAt(0)===`
|
|
59
59
|
`)&&!(c===g.startLineNumber&&g.startColumn===1&&g.isEmpty()&&m&&m.length>0&&m.charAt(m.length-1)===`
|
|
60
|
-
`)){h=!1;break}}if(h){let u=new k(c,1,c,d);t.push(new Fg(null,u,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(e,t,i,o)}_applyUndo(e,t,i,o){let s=e.map(r=>{let a=this.getPositionAt(r.newPosition),l=this.getPositionAt(r.newEnd);return{range:new k(a.lineNumber,a.column,l.lineNumber,l.column),text:r.oldText}});this._applyUndoRedoEdits(s,t,!0,!1,i,o)}_applyRedo(e,t,i,o){let s=e.map(r=>{let a=this.getPositionAt(r.oldPosition),l=this.getPositionAt(r.oldEnd);return{range:new k(a.lineNumber,a.column,l.lineNumber,l.column),text:r.newText}});this._applyUndoRedoEdits(s,t,!1,!0,i,o)}_applyUndoRedoEdits(e,t,i,o,s,r){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=i,this._isRedoing=o,this.applyEdits(e,!1),this.setEOL(t),this._overwriteAlternativeVersionId(s)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(r),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,t=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();let i=this._validateEditOperations(e);return this._doApplyEdits(i,t)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,t){let i=this._buffer.getLineCount(),o=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,t),s=this._buffer.getLineCount(),r=o.changes;if(this._trimAutoWhitespaceLines=o.trimAutoWhitespaceLineNumbers,r.length!==0){for(let c=0,d=r.length;c<d;c++){let h=r[c];this._decorationsTree.acceptReplace(h.rangeOffset,h.rangeLength,h.text.length,h.forceMoveMarkers)}let a=[];this._increaseVersionId();let l=i;for(let c=0,d=r.length;c<d;c++){let h=r[c],[u]=Pr(h.text);this._onDidChangeDecorations.fire();let f=h.range.startLineNumber,g=h.range.endLineNumber,m=g-f,_=u,b=Math.min(m,_),v=_-m,C=s-l-v+f,w=C,S=C+_,L=this._decorationsTree.getInjectedTextInInterval(this,this.getOffsetAt(new P(w,1)),this.getOffsetAt(new P(S,this.getLineMaxColumn(S))),0),x=ds.fromDecorations(L),D=new eo(x);for(let E=b;E>=0;E--){let U=f+E,F=C+E;D.takeFromEndWhile(ie=>ie.lineNumber>F);let W=D.takeFromEndWhile(ie=>ie.lineNumber===F);a.push(new ev(U,this.getLineContent(F),W))}if(b<m){let E=f+b;a.push(new XL(E+1,g))}if(b<_){let E=new eo(x),U=f+b,F=_-b,W=s-l-F+U+1,ie=[],z=[];for(let q=0;q<F;q++){let ne=W+q;z[q]=this.getLineContent(ne),E.takeWhile(ee=>ee.lineNumber<ne),ie[q]=E.takeWhile(ee=>ee.lineNumber===ne)}a.push(new JL(U+1,f+_,z,ie))}l+=v}this._emitContentChangedEvent(new ju(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:r,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return o.reverseEdits===null?void 0:o.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(e){if(e===null||e.size===0)return;let i=Array.from(e).map(o=>new ev(o,this.getLineContent(o),this._getInjectedTextInLine(o)));this._onDidChangeInjectedText.fire(new tp(i))}changeDecorations(e,t=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(e,t){let i={addDecoration:(s,r)=>this._deltaDecorationsImpl(e,[],[{range:s,options:r}])[0],changeDecoration:(s,r)=>{this._changeDecorationImpl(s,r)},changeDecorationOptions:(s,r)=>{this._changeDecorationOptionsImpl(s,QU(r))},removeDecoration:s=>{this._deltaDecorationsImpl(e,[s],[])},deltaDecorations:(s,r)=>s.length===0&&r.length===0?[]:this._deltaDecorationsImpl(e,s,r)},o=null;try{o=t(i)}catch(s){Ue(s)}return i.addDecoration=tv,i.changeDecoration=tv,i.changeDecorationOptions=tv,i.removeDecoration=tv,i.deltaDecorations=tv,o}deltaDecorations(e,t,i=0){if(this._assertNotDisposed(),e||(e=[]),e.length===0&&t.length===0)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),Ue(new Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(i,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(e){return this.getDecorationRange(e)}_setTrackedRange(e,t,i){let o=e?this._decorations[e]:null;if(!o)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:YU[i]}],!0)[0]:null;if(!t)return this._decorationsTree.delete(o),delete this._decorations[o.id],null;let s=this._validateRangeRelaxedNoAllocations(t),r=this._buffer.getOffsetAt(s.startLineNumber,s.startColumn),a=this._buffer.getOffsetAt(s.endLineNumber,s.endColumn);return this._decorationsTree.delete(o),o.reset(this.getVersionId(),r,a,s),o.setOptions(YU[i]),this._decorationsTree.insert(o),o.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;let t=this._decorationsTree.collectNodesFromOwner(e);for(let i=0,o=t.length;i<o;i++){let s=t[i];this._decorationsTree.delete(s),delete this._decorations[s.id]}}getDecorationOptions(e){let t=this._decorations[e];return t?t.options:null}getDecorationRange(e){let t=this._decorations[e];return t?this._decorationsTree.getNodeRange(this,t):null}getLineDecorations(e,t=0,i=!1){return e<1||e>this.getLineCount()?[]:this.getLinesDecorations(e,e,t,i)}getLinesDecorations(e,t,i=0,o=!1,s=!1){let r=this.getLineCount(),a=Math.min(r,Math.max(1,e)),l=Math.min(r,Math.max(1,t)),c=this.getLineMaxColumn(l),d=new k(a,1,l,c),h=this._getDecorationsInRange(d,i,o,s);return f_(h,this._decorationProvider.getDecorationsInRange(d,i,o)),h}getDecorationsInRange(e,t=0,i=!1,o=!1,s=!1){let r=this.validateRange(e),a=this._getDecorationsInRange(r,t,i,s);return f_(a,this._decorationProvider.getDecorationsInRange(r,t,i,o)),a}getOverviewRulerDecorations(e=0,t=!1){return this._decorationsTree.getAll(this,e,t,!0,!1)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(this,e)}_getInjectedTextInLine(e){let t=this._buffer.getOffsetAt(e,1),i=t+this._buffer.getLineLength(e),o=this._decorationsTree.getInjectedTextInInterval(this,t,i,0);return ds.fromDecorations(o).filter(s=>s.lineNumber===e)}getAllDecorations(e=0,t=!1){let i=this._decorationsTree.getAll(this,e,t,!1,!1);return i=i.concat(this._decorationProvider.getAllDecorations(e,t)),i}getAllMarginDecorations(e=0){return this._decorationsTree.getAll(this,e,!1,!1,!0)}_getDecorationsInRange(e,t,i,o){let s=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),r=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,s,r,t,i,o)}getRangeAt(e,t){return this._buffer.getRangeAt(e,t-e)}_changeDecorationImpl(e,t){let i=this._decorations[e];if(!i)return;if(i.options.after){let a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(i.options.before){let a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}let o=this._validateRangeRelaxedNoAllocations(t),s=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),r=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);this._decorationsTree.delete(i),i.reset(this.getVersionId(),s,r,o),this._decorationsTree.insert(i),this._onDidChangeDecorations.checkAffectedAndFire(i.options),i.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(o.endLineNumber),i.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(o.startLineNumber)}_changeDecorationOptionsImpl(e,t){let i=this._decorations[e];if(!i)return;let o=!!(i.options.overviewRuler&&i.options.overviewRuler.color),s=!!(t.overviewRuler&&t.overviewRuler.color);if(this._onDidChangeDecorations.checkAffectedAndFire(i.options),this._onDidChangeDecorations.checkAffectedAndFire(t),i.options.after||t.after){let l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.endLineNumber)}if(i.options.before||t.before){let l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.startLineNumber)}let r=o!==s,a=oJ(t)!==nk(i);r||a?(this._decorationsTree.delete(i),i.setOptions(t),this._decorationsTree.insert(i)):i.setOptions(t)}_deltaDecorationsImpl(e,t,i,o=!1){let s=this.getVersionId(),r=t.length,a=0,l=i.length,c=0;this._onDidChangeDecorations.beginDeferredEmit();try{let d=new Array(l);for(;a<r||c<l;){let h=null;if(a<r){do h=this._decorations[t[a++]];while(!h&&a<r);if(h){if(h.options.after){let u=this._decorationsTree.getNodeRange(this,h);this._onDidChangeDecorations.recordLineAffectedByInjectedText(u.endLineNumber)}if(h.options.before){let u=this._decorationsTree.getNodeRange(this,h);this._onDidChangeDecorations.recordLineAffectedByInjectedText(u.startLineNumber)}this._decorationsTree.delete(h),o||this._onDidChangeDecorations.checkAffectedAndFire(h.options)}}if(c<l){if(!h){let b=++this._lastDecorationId,v=`${this._instanceId};${b}`;h=new q1(v,0,0),this._decorations[v]=h}let u=i[c],f=this._validateRangeRelaxedNoAllocations(u.range),g=QU(u.options),m=this._buffer.getOffsetAt(f.startLineNumber,f.startColumn),_=this._buffer.getOffsetAt(f.endLineNumber,f.endColumn);h.ownerId=e,h.reset(s,m,_,f),h.setOptions(g),h.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.endLineNumber),h.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.startLineNumber),o||this._onDidChangeDecorations.checkAffectedAndFire(g),this._decorationsTree.insert(h),d[c]=h.id,c++}else h&&delete this._decorations[h.id]}return d}finally{this._onDidChangeDecorations.endDeferredEmit()}}getLanguageId(){return this.tokenization.getLanguageId()}setLanguage(e,t){typeof e=="string"?(this._languageSelectionListener.clear(),this._setLanguage(e,t)):(this._languageSelectionListener.value=e.onDidChange(()=>this._setLanguage(e.languageId,t)),this._setLanguage(e.languageId,t))}_setLanguage(e,t){this.tokenization.setLanguageId(e,t),this._languageService.requestRichLanguageFeatures(e)}getLanguageIdAtPosition(e,t){return this.tokenization.getLanguageIdAtPosition(e,t)}getWordAtPosition(e){return this._tokenizationTextModelPart.getWordAtPosition(e)}getWordUntilPosition(e){return this._tokenizationTextModelPart.getWordUntilPosition(e)}normalizePosition(e,t){return e}getLineIndentColumn(e){return nJ(this.getLineContent(e))+1}};ok=Gu=XX([tk(4,Kg),tk(5,jt),tk(6,ro),tk(7,Ie)],ok);sk=class{constructor(){this._decorationsTree0=new Ym,this._decorationsTree1=new Ym,this._injectedTextDecorationsTree=new Ym}ensureAllNodesHaveRanges(e){this.getAll(e,0,!1,!1,!1)}_ensureNodesHaveRanges(e,t){for(let i of t)i.range===null&&(i.range=e.getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd));return t}getAllInInterval(e,t,i,o,s,r){let a=e.getVersionId(),l=this._intervalSearch(t,i,o,s,a,r);return this._ensureNodesHaveRanges(e,l)}_intervalSearch(e,t,i,o,s,r){let a=this._decorationsTree0.intervalSearch(e,t,i,o,s,r),l=this._decorationsTree1.intervalSearch(e,t,i,o,s,r),c=this._injectedTextDecorationsTree.intervalSearch(e,t,i,o,s,r);return a.concat(l).concat(c)}getInjectedTextInInterval(e,t,i,o){let s=e.getVersionId(),r=this._injectedTextDecorationsTree.intervalSearch(t,i,o,!1,s,!1);return this._ensureNodesHaveRanges(e,r).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllInjectedText(e,t){let i=e.getVersionId(),o=this._injectedTextDecorationsTree.search(t,!1,i,!1);return this._ensureNodesHaveRanges(e,o).filter(s=>s.options.showIfCollapsed||!s.range.isEmpty())}getAll(e,t,i,o,s){let r=e.getVersionId(),a=this._search(t,i,o,r,s);return this._ensureNodesHaveRanges(e,a)}_search(e,t,i,o,s){if(i)return this._decorationsTree1.search(e,t,o,s);{let r=this._decorationsTree0.search(e,t,o,s),a=this._decorationsTree1.search(e,t,o,s),l=this._injectedTextDecorationsTree.search(e,t,o,s);return r.concat(a).concat(l)}}collectNodesFromOwner(e){let t=this._decorationsTree0.collectNodesFromOwner(e),i=this._decorationsTree1.collectNodesFromOwner(e),o=this._injectedTextDecorationsTree.collectNodesFromOwner(e);return t.concat(i).concat(o)}collectNodesPostOrder(){let e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder(),i=this._injectedTextDecorationsTree.collectNodesPostOrder();return e.concat(t).concat(i)}insert(e){nk(e)?this._injectedTextDecorationsTree.insert(e):PP(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){nk(e)?this._injectedTextDecorationsTree.delete(e):PP(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)}getNodeRange(e,t){let i=e.getVersionId();return t.cachedVersionId!==i&&this._resolveNode(t,i),t.range===null&&(t.range=e.getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range}_resolveNode(e,t){nk(e)?this._injectedTextDecorationsTree.resolveNode(e,t):PP(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)}acceptReplace(e,t,i,o){this._decorationsTree0.acceptReplace(e,t,i,o),this._decorationsTree1.acceptReplace(e,t,i,o),this._injectedTextDecorationsTree.acceptReplace(e,t,i,o)}};rk=class{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}},FP=class extends rk{constructor(e){super(e),this._resolvedColor=null,this.position=typeof e.position=="number"?e.position:Og.Center}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(e,t){if(typeof e=="string")return e;let i=e?t.getColor(e.id):null;return i?i.toString():""}},BP=class{constructor(e){this.position=e?.position??ir.Center,this.persistLane=e?.persistLane}},WP=class extends rk{constructor(e){super(e),this.position=e.position,this.sectionHeaderStyle=e.sectionHeaderStyle??null,this.sectionHeaderText=e.sectionHeaderText??null}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(e,t){return typeof e=="string"?K.fromHex(e):t.getColor(e.id)}},ak=class n{static from(e){return e instanceof n?e:new n(e)}constructor(e){this.content=e.content||"",this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}},zi=class n{static register(e){return new n(e)}static createDynamic(e){return new n(e)}constructor(e){this.description=e.description,this.blockClassName=e.blockClassName?Ml(e.blockClassName):null,this.blockDoesNotCollapse=e.blockDoesNotCollapse??null,this.blockIsAfterEnd=e.blockIsAfterEnd??null,this.blockPadding=e.blockPadding??null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?Ml(e.className):null,this.shouldFillLineOnLineBreak=e.shouldFillLineOnLineBreak??null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=e.lineNumberHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new FP(e.overviewRuler):null,this.minimap=e.minimap?new WP(e.minimap):null,this.glyphMargin=e.glyphMarginClassName?new BP(e.glyphMargin):null,this.glyphMarginClassName=e.glyphMarginClassName?Ml(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?Ml(e.linesDecorationsClassName):null,this.lineNumberClassName=e.lineNumberClassName?Ml(e.lineNumberClassName):null,this.linesDecorationsTooltip=e.linesDecorationsTooltip?D3(e.linesDecorationsTooltip):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?Ml(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?Ml(e.marginClassName):null,this.inlineClassName=e.inlineClassName?Ml(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?Ml(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?Ml(e.afterContentClassName):null,this.after=e.after?ak.from(e.after):null,this.before=e.before?ak.from(e.before):null,this.hideInCommentTokens=e.hideInCommentTokens??!1,this.hideInStringTokens=e.hideInStringTokens??!1}};zi.EMPTY=zi.register({description:"empty"});YU=[zi.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),zi.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),zi.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),zi.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];zP=class extends R{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new M),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,this._deferredCnt===0&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null)}recordLineAffectedByInjectedText(e){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}checkAffectedAndFire(e){this._affectsMinimap||=!!e.minimap?.position,this._affectsOverviewRuler||=!!e.overviewRuler?.color,this._affectsGlyphMargin||=!!e.glyphMarginClassName,this._affectsLineNumber||=!!e.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){this._deferredCnt===0?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines);let e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(e)}},VP=class extends R{constructor(){super(),this._fastEmitter=this._register(new M),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new M),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(e=null){if(this._deferredCnt--,this._deferredCnt===0&&this._deferredEvent!==null){this._deferredEvent.rawContentChangedEvent.resultingSelection=e;let t=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(t),this._slowEmitter.fire(t)}}fire(e){if(this._deferredCnt>0){this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e;return}this._fastEmitter.fire(e),this._slowEmitter.fire(e)}}});var jo,Sv=$(()=>{Te();jo=pe("themeService")});var wp,Q5=$(()=>{X();fe();me();wp=class extends R{constructor(e,t){super(),this._onDidChange=this._register(new M),this.onDidChange=this._onDidChange.event,this._referenceDomElement=e,this._width=-1,this._height=-1,this._resizeObserver=null,this.measureReferenceDomElement(!1,t)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this._width}getHeight(){return this._height}startObserving(){if(!this._resizeObserver&&this._referenceDomElement){let e=null,t=()=>{e?this.observe({width:e.width,height:e.height}):this.observe()},i=!1,o=!1,s=()=>{if(i&&!o)try{i=!1,o=!0,t()}finally{Xi(se(this._referenceDomElement),()=>{o=!1,s()})}};this._resizeObserver=new ResizeObserver(r=>{r&&r[0]&&r[0].contentRect?e={width:r[0].contentRect.width,height:r[0].contentRect.height}:e=null,i=!0,s()}),this._resizeObserver.observe(this._referenceDomElement)}}stopObserving(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null)}observe(e){this.measureReferenceDomElement(!0,e)}measureReferenceDomElement(e,t){let i=0,o=0;t?(i=t.width,o=t.height):this._referenceDomElement&&(i=this._referenceDomElement.clientWidth,o=this._referenceDomElement.clientHeight),i=Math.max(5,i),o=Math.max(5,o),(this._width!==i||this._height!==o)&&(this._width=i,this._height=o,e&&this._onDidChange.fire())}}});var de,jv=$(()=>{ke();li();(function(n){n.editorSimpleInput=new ge("editorSimpleInput",!1,!0),n.editorTextFocus=new ge("editorTextFocus",!1,p("editorTextFocus","Whether the editor text has focus (cursor is blinking)")),n.focus=new ge("editorFocus",!1,p("editorFocus","Whether the editor or an editor widget has focus (e.g. focus is in the find widget)")),n.textInputFocus=new ge("textInputFocus",!1,p("textInputFocus","Whether an editor or a rich text input has focus (cursor is blinking)")),n.readOnly=new ge("editorReadonly",!1,p("editorReadonly","Whether the editor is read-only")),n.inDiffEditor=new ge("inDiffEditor",!1,p("inDiffEditor","Whether the context is a diff editor")),n.isEmbeddedDiffEditor=new ge("isEmbeddedDiffEditor",!1,p("isEmbeddedDiffEditor","Whether the context is an embedded diff editor")),n.inMultiDiffEditor=new ge("inMultiDiffEditor",!1,p("inMultiDiffEditor","Whether the context is a multi diff editor")),n.multiDiffEditorAllCollapsed=new ge("multiDiffEditorAllCollapsed",void 0,p("multiDiffEditorAllCollapsed","Whether all files in multi diff editor are collapsed")),n.hasChanges=new ge("diffEditorHasChanges",!1,p("diffEditorHasChanges","Whether the diff editor has changes")),n.comparingMovedCode=new ge("comparingMovedCode",!1,p("comparingMovedCode","Whether a moved code block is selected for comparison")),n.accessibleDiffViewerVisible=new ge("accessibleDiffViewerVisible",!1,p("accessibleDiffViewerVisible","Whether the accessible diff viewer is visible")),n.diffEditorRenderSideBySideInlineBreakpointReached=new ge("diffEditorRenderSideBySideInlineBreakpointReached",!1,p("diffEditorRenderSideBySideInlineBreakpointReached","Whether the diff editor render side by side inline breakpoint is reached")),n.diffEditorInlineMode=new ge("diffEditorInlineMode",!1,p("diffEditorInlineMode","Whether inline mode is active")),n.diffEditorOriginalWritable=new ge("diffEditorOriginalWritable",!1,p("diffEditorOriginalWritable","Whether modified is writable in the diff editor")),n.diffEditorModifiedWritable=new ge("diffEditorModifiedWritable",!1,p("diffEditorModifiedWritable","Whether modified is writable in the diff editor")),n.diffEditorOriginalUri=new ge("diffEditorOriginalUri","",p("diffEditorOriginalUri","The uri of the original document")),n.diffEditorModifiedUri=new ge("diffEditorModifiedUri","",p("diffEditorModifiedUri","The uri of the modified document")),n.columnSelection=new ge("editorColumnSelection",!1,p("editorColumnSelection","Whether `editor.columnSelection` is enabled")),n.writable=n.readOnly.toNegated(),n.hasNonEmptySelection=new ge("editorHasSelection",!1,p("editorHasSelection","Whether the editor has text selected")),n.hasOnlyEmptySelection=n.hasNonEmptySelection.toNegated(),n.hasMultipleSelections=new ge("editorHasMultipleSelections",!1,p("editorHasMultipleSelections","Whether the editor has multiple selections")),n.hasSingleSelection=n.hasMultipleSelections.toNegated(),n.tabMovesFocus=new ge("editorTabMovesFocus",!1,p("editorTabMovesFocus","Whether `Tab` will move focus out of the editor")),n.tabDoesNotMoveFocus=n.tabMovesFocus.toNegated(),n.isInEmbeddedEditor=new ge("isInEmbeddedEditor",!1,!0),n.canUndo=new ge("canUndo",!1,!0),n.canRedo=new ge("canRedo",!1,!0),n.hoverVisible=new ge("editorHoverVisible",!1,p("editorHoverVisible","Whether the editor hover is visible")),n.hoverFocused=new ge("editorHoverFocused",!1,p("editorHoverFocused","Whether the editor hover is focused")),n.stickyScrollFocused=new ge("stickyScrollFocused",!1,p("stickyScrollFocused","Whether the sticky scroll is focused")),n.stickyScrollVisible=new ge("stickyScrollVisible",!1,p("stickyScrollVisible","Whether the sticky scroll is visible")),n.standaloneColorPickerVisible=new ge("standaloneColorPickerVisible",!1,p("standaloneColorPickerVisible","Whether the standalone color picker is visible")),n.standaloneColorPickerFocused=new ge("standaloneColorPickerFocused",!1,p("standaloneColorPickerFocused","Whether the standalone color picker is focused")),n.inCompositeEditor=new ge("inCompositeEditor",void 0,p("inCompositeEditor","Whether the editor is part of a larger editor (e.g. notebooks)")),n.notInCompositeEditor=n.inCompositeEditor.toNegated(),n.languageId=new ge("editorLangId","",p("editorLangId","The language identifier of the editor")),n.hasCompletionItemProvider=new ge("editorHasCompletionItemProvider",!1,p("editorHasCompletionItemProvider","Whether the editor has a completion item provider")),n.hasCodeActionsProvider=new ge("editorHasCodeActionsProvider",!1,p("editorHasCodeActionsProvider","Whether the editor has a code actions provider")),n.hasCodeLensProvider=new ge("editorHasCodeLensProvider",!1,p("editorHasCodeLensProvider","Whether the editor has a code lens provider")),n.hasDefinitionProvider=new ge("editorHasDefinitionProvider",!1,p("editorHasDefinitionProvider","Whether the editor has a definition provider")),n.hasDeclarationProvider=new ge("editorHasDeclarationProvider",!1,p("editorHasDeclarationProvider","Whether the editor has a declaration provider")),n.hasImplementationProvider=new ge("editorHasImplementationProvider",!1,p("editorHasImplementationProvider","Whether the editor has an implementation provider")),n.hasTypeDefinitionProvider=new ge("editorHasTypeDefinitionProvider",!1,p("editorHasTypeDefinitionProvider","Whether the editor has a type definition provider")),n.hasHoverProvider=new ge("editorHasHoverProvider",!1,p("editorHasHoverProvider","Whether the editor has a hover provider")),n.hasDocumentHighlightProvider=new ge("editorHasDocumentHighlightProvider",!1,p("editorHasDocumentHighlightProvider","Whether the editor has a document highlight provider")),n.hasDocumentSymbolProvider=new ge("editorHasDocumentSymbolProvider",!1,p("editorHasDocumentSymbolProvider","Whether the editor has a document symbol provider")),n.hasReferenceProvider=new ge("editorHasReferenceProvider",!1,p("editorHasReferenceProvider","Whether the editor has a reference provider")),n.hasRenameProvider=new ge("editorHasRenameProvider",!1,p("editorHasRenameProvider","Whether the editor has a rename provider")),n.hasSignatureHelpProvider=new ge("editorHasSignatureHelpProvider",!1,p("editorHasSignatureHelpProvider","Whether the editor has a signature help provider")),n.hasInlayHintsProvider=new ge("editorHasInlayHintsProvider",!1,p("editorHasInlayHintsProvider","Whether the editor has an inline hints provider")),n.hasDocumentFormattingProvider=new ge("editorHasDocumentFormattingProvider",!1,p("editorHasDocumentFormattingProvider","Whether the editor has a document formatting provider")),n.hasDocumentSelectionFormattingProvider=new ge("editorHasDocumentSelectionFormattingProvider",!1,p("editorHasDocumentSelectionFormattingProvider","Whether the editor has a document selection formatting provider")),n.hasMultipleDocumentFormattingProvider=new ge("editorHasMultipleDocumentFormattingProvider",!1,p("editorHasMultipleDocumentFormattingProvider","Whether the editor has multiple document formatting providers")),n.hasMultipleDocumentSelectionFormattingProvider=new ge("editorHasMultipleDocumentSelectionFormattingProvider",!1,p("editorHasMultipleDocumentSelectionFormattingProvider","Whether the editor has multiple document selection formatting providers"))})(de||(de={}))});function Zq(n,e,t,i){if(n.length===0)return e;if(e.length===0)return n;let o=[],s=0,r=0;for(;s<n.length&&r<e.length;){let a=n[s],l=e[r],c=t(a),d=t(l);c<d?(o.push(a),s++):c>d?(o.push(l),r++):(o.push(i(a,l)),s++,r++)}for(;s<n.length;)o.push(n[s]),s++;for(;r<e.length;)o.push(e[r]),r++;return o}function Zp(n,e){let t=new Q,i=n.createDecorationsCollection();return t.add(nh({debugName:()=>`Apply decorations from ${e.debugName}`},o=>{let s=e.read(o);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}function Af(n,e){return n.appendChild(e),ce(()=>{e.remove()})}function Yq(n,e){return n.prepend(e),ce(()=>{e.remove()})}function y7(n,e,t){let i=e.get(),o=i,s=i,r=Oe("animatedValue",i),a=-1,l=300,c;t.add(yc({createEmptyChangeSummary:()=>({animate:!1}),handleChange:(h,u)=>(h.didChange(e)&&(u.animate=u.animate||h.change),!0)},(h,u)=>{c!==void 0&&(n.cancelAnimationFrame(c),c=void 0),o=s,i=e.read(h),a=Date.now()-(u.animate?0:l),d()}));function d(){let h=Date.now()-a;s=Math.floor(Ate(h,o,i-o,l)),h<l?c=n.requestAnimationFrame(d):s=i,r.set(s,void 0)}return r}function Ate(n,e,t,i){return n===i?e+t:t*(-Math.pow(2,-10*n/i)+1)+e}function hr(n,e){return qe(t=>{for(let[i,o]of Object.entries(e))o&&typeof o=="object"&&"read"in o&&(o=o.read(t)),typeof o=="number"&&(o=`${o}px`),i=i.replace(/[A-Z]/g,s=>"-"+s.toLowerCase()),n.style[i]=o})}function Yp(n,e,t,i){let o=new Q,s=[];return o.add(Ln((r,a)=>{let l=e.read(r),c=new Map,d=new Map;t&&t(!0),n.changeViewZones(h=>{for(let u of s)h.removeZone(u),i?.delete(u);s.length=0;for(let u of l){let f=h.addZone(u);u.setZoneId&&u.setZoneId(f),s.push(f),i?.add(f),c.set(u,f)}}),t&&t(!1),a.add(yc({createEmptyChangeSummary(){return{zoneIds:[]}},handleChange(h,u){let f=d.get(h.changedObservable);return f!==void 0&&u.zoneIds.push(f),!0}},(h,u)=>{for(let f of l)f.onChange&&(d.set(f.onChange,c.get(f)),f.onChange.read(h));t&&t(!0),n.changeViewZones(f=>{for(let g of u.zoneIds)f.layoutZone(g)}),t&&t(!1)}))})),o.add({dispose(){t&&t(!0),n.changeViewZones(r=>{for(let a of s)r.removeZone(a)}),i?.clear(),t&&t(!1)}}),o}function S7(n,e){let t=mu(e,o=>o.original.startLineNumber<=n.lineNumber);if(!t)return k.fromPositions(n);if(t.original.endLineNumberExclusive<=n.lineNumber){let o=n.lineNumber-t.original.endLineNumberExclusive+t.modified.endLineNumberExclusive;return k.fromPositions(new P(o,n.column))}if(!t.innerChanges)return k.fromPositions(new P(t.modified.startLineNumber,1));let i=mu(t.innerChanges,o=>o.originalRange.getStartPosition().isBeforeOrEqual(n));if(!i){let o=n.lineNumber-t.original.startLineNumber+t.modified.startLineNumber;return k.fromPositions(new P(o,n.column))}if(i.originalRange.containsPosition(n))return i.modifiedRange;{let o=Rte(i.originalRange.getEndPosition(),n);return k.fromPositions(o.addToPosition(i.modifiedRange.getEndPosition()))}}function Rte(n,e){return n.lineNumber===e.lineNumber?new sr(0,e.column-n.column):new sr(e.lineNumber-n.lineNumber,e.column-1)}function Qq(n,e){let t;return n.filter(i=>{let o=e(i,t);return t=i,o})}var Gp,Nf,Kl,w7,Gq,Mf,e2,C7,Fa=$(()=>{ol();Qo();X();Ri();Q5();Ze();Ee();Wg();Gp=class extends R{get width(){return this._width}get height(){return this._height}get automaticLayout(){return this._automaticLayout}constructor(e,t){super(),this._automaticLayout=!1,this.elementSizeObserver=this._register(new wp(e,t)),this._width=Oe(this,this.elementSizeObserver.getWidth()),this._height=Oe(this,this.elementSizeObserver.getHeight()),this._register(this.elementSizeObserver.onDidChange(i=>Dt(o=>{this._width.set(this.elementSizeObserver.getWidth(),o),this._height.set(this.elementSizeObserver.getHeight(),o)})))}observe(e){this.elementSizeObserver.observe(e)}setAutomaticLayout(e){this._automaticLayout=e,e?this.elementSizeObserver.startObserving():this.elementSizeObserver.stopObserving()}};Nf=class extends R{constructor(e,t,i){super(),this._register(new w7(e,i)),this._register(hr(i,{height:t.actualHeight,top:t.actualTop}))}},Kl=class{get afterLineNumber(){return this._afterLineNumber.get()}constructor(e,t){this._afterLineNumber=e,this.heightInPx=t,this.domNode=document.createElement("div"),this._actualTop=Oe(this,void 0),this._actualHeight=Oe(this,void 0),this.actualTop=this._actualTop,this.actualHeight=this._actualHeight,this.showInHiddenAreas=!0,this.onChange=this._afterLineNumber,this.onDomNodeTop=i=>{this._actualTop.set(i,void 0)},this.onComputedHeight=i=>{this._actualHeight.set(i,void 0)}}},w7=class n{static{this._counter=0}constructor(e,t){this._editor=e,this._domElement=t,this._overlayWidgetId=`managedOverlayWidget-${n._counter++}`,this._overlayWidget={getId:()=>this._overlayWidgetId,getDomNode:()=>this._domElement,getPosition:()=>null},this._editor.addOverlayWidget(this._overlayWidget)}dispose(){this._editor.removeOverlayWidget(this._overlayWidget)}};Gq=class extends on{dispose(){super.dispose(!0)}};Mf=class{static create(e,t=void 0){return new e2(e,e,t)}static createWithDisposable(e,t,i=void 0){let o=new Q;return o.add(t),o.add(e),new e2(e,o,i)}},e2=class extends Mf{constructor(e,t,i){super(),this.object=e,this._disposable=t,this._debugOwner=i,this._refCount=1,this._isDisposed=!1,this._owners=[],i&&this._addOwner(i)}_addOwner(e){e&&this._owners.push(e)}createNewRef(e){return this._refCount++,e&&this._addOwner(e),new C7(this,e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._decreaseRefCount(this._debugOwner))}_decreaseRefCount(e){if(this._refCount--,this._refCount===0&&this._disposable.dispose(),e){let t=this._owners.indexOf(e);t!==-1&&this._owners.splice(t,1)}}},C7=class extends Mf{constructor(e,t){super(),this._base=e,this._debugOwner=t,this._isDisposed=!1}get object(){return this._base.object}createNewRef(e){return this._base.createNewRef(e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._base._decreaseRefCount(this._debugOwner))}}});function Ih(n){return Z7.get(n)}function jte(n,e){return n4({createEmptyChangeSummary:()=>({deltas:[],didChange:!1}),handleChange:(t,i)=>{if(t.didChange(n)){let o=t.change;o!==void 0&&i.deltas.push(o),i.didChange=!0}return!0}},(t,i)=>{let o=n.read(t);i.didChange&&e(o,i.deltas)})}function RXe(n,e){let t=new Q,i=jte(n,(o,s)=>{t.clear(),e(o,s,t)});return{dispose(){i.dispose(),t.dispose()}}}var Z7,b2=$(()=>{xm();X();Ri();wl();ih();gn();Z7=class n extends R{static{this._map=new Map}static get(e){let t=n._map.get(e);if(!t){t=new n(e),n._map.set(e,t);let i=e.onDidDispose(()=>{let o=n._map.get(e);o&&(n._map.delete(e),o.dispose(),i.dispose())})}return t}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&(this._currentTransaction=new vl(()=>{}))}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){let e=this._currentTransaction;this._currentTransaction=void 0,e.finish()}}constructor(e){super(),this.editor=e,this._updateCounter=0,this._currentTransaction=void 0,this._model=Oe(this,this.editor.getModel()),this.model=this._model,this.isReadonly=St(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(92)),this._versionId=Nm({owner:this,lazy:!0},this.editor.getModel()?.getVersionId()??null),this.versionId=this._versionId,this._selections=Nm({owner:this,equalsFn:XR(AV(ze.selectionsEqual)),lazy:!0},this.editor.getSelections()??null),this.selections=this._selections,this.isFocused=St(this,t=>{let i=this.editor.onDidFocusEditorWidget(t),o=this.editor.onDidBlurEditorWidget(t);return{dispose(){i.dispose(),o.dispose()}}},()=>this.editor.hasWidgetFocus()),this.value=Im(this,t=>(this.versionId.read(t),this.model.read(t)?.getValue()??""),(t,i)=>{let o=this.model.get();o!==null&&t!==o.getValue()&&o.setValue(t)}),this.valueIsEmpty=Se(this,t=>(this.versionId.read(t),this.editor.getModel()?.getValueLength()===0)),this.cursorSelection=Cc({owner:this,equalsFn:XR(ze.selectionsEqual)},t=>this.selections.read(t)?.[0]??null),this.onDidType=Pu(this),this.scrollTop=St(this.editor.onDidScrollChange,()=>this.editor.getScrollTop()),this.scrollLeft=St(this.editor.onDidScrollChange,()=>this.editor.getScrollLeft()),this.layoutInfo=St(this.editor.onDidLayoutChange,()=>this.editor.getLayoutInfo()),this.layoutInfoContentLeft=this.layoutInfo.map(t=>t.contentLeft),this.layoutInfoDecorationsLeft=this.layoutInfo.map(t=>t.decorationsLeft),this.contentWidth=St(this.editor.onDidContentSizeChange,()=>this.editor.getContentWidth()),this._overlayWidgetCounter=0,this._register(this.editor.onBeginUpdate(()=>this._beginUpdate())),this._register(this.editor.onEndUpdate(()=>this._endUpdate())),this._register(this.editor.onDidChangeModel(()=>{this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidType(t=>{this._beginUpdate();try{this._forceUpdate(),this.onDidType.trigger(this._currentTransaction,t)}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeModelContent(t=>{this._beginUpdate();try{this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeCursorSelection(t=>{this._beginUpdate();try{this._selections.set(this.editor.getSelections(),this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}}))}forceUpdate(e){this._beginUpdate();try{return this._forceUpdate(),e?e(this._currentTransaction):void 0}finally{this._endUpdate()}}_forceUpdate(){this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,void 0),this._selections.set(this.editor.getSelections(),this._currentTransaction,void 0)}finally{this._endUpdate()}}getOption(e){return St(this,t=>this.editor.onDidChangeConfiguration(i=>{i.hasChanged(e)&&t(void 0)}),()=>this.editor.getOption(e))}setDecorations(e){let t=new Q,i=this.editor.createDecorationsCollection();return t.add(nh({owner:this,debugName:()=>`Apply decorations from ${e.debugName}`},o=>{let s=e.read(o);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}createOverlayWidget(e){let t="observableOverlayWidget"+this._overlayWidgetCounter++,i={getDomNode:()=>e.domNode,getPosition:()=>e.position.get(),getId:()=>t,allowEditorOverflow:e.allowEditorOverflow,getMinContentWidthInPx:()=>e.minContentWidthInPx.get()};this.editor.addOverlayWidget(i);let o=qe(s=>{e.position.read(s),e.minContentWidthInPx.read(s),this.editor.layoutOverlayWidget(i)});return ce(()=>{o.dispose(),this.editor.removeOverlayWidget(i)})}}});var Gte,Zte,v2,w2,C2,y2,uK=$(()=>{me();xu();Mn();fm();X();Ri();ih();vn();pi();b2();Fa();ko();Ze();Ee();vo();ke();Te();Gte=function(n,e,t,i){var o=arguments.length,s=o<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,i);else for(var a=n.length-1;a>=0;a--)(r=n[a])&&(s=(o<3?r(s):o>3?r(e,t,s):r(e,t))||s);return o>3&&s&&Object.defineProperty(e,t,s),s},Zte=function(n,e){return function(t,i){e(t,i,n)}},w2=class extends R{static{v2=this}static{this._breadcrumbsSourceFactory=Oe(v2,()=>({dispose(){},getBreadcrumbItems(e,t){return[]}}))}static setBreadcrumbsSourceFactory(e){this._breadcrumbsSourceFactory.set(e,void 0)}get isUpdatingHiddenAreas(){return this._isUpdatingHiddenAreas}constructor(e,t,i,o){super(),this._editors=e,this._diffModel=t,this._options=i,this._instantiationService=o,this._modifiedOutlineSource=lr(this,l=>{let c=this._editors.modifiedModel.read(l),d=v2._breadcrumbsSourceFactory.read(l);return!c||!d?void 0:d(c,this._instantiationService)}),this._isUpdatingHiddenAreas=!1,this._register(this._editors.original.onDidChangeCursorPosition(l=>{if(l.reason===1)return;let c=this._diffModel.get();Dt(d=>{for(let h of this._editors.original.getSelections()||[])c?.ensureOriginalLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureOriginalLineIsVisible(h.getEndPosition().lineNumber,0,d)})})),this._register(this._editors.modified.onDidChangeCursorPosition(l=>{if(l.reason===1)return;let c=this._diffModel.get();Dt(d=>{for(let h of this._editors.modified.getSelections()||[])c?.ensureModifiedLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureModifiedLineIsVisible(h.getEndPosition().lineNumber,0,d)})}));let s=this._diffModel.map((l,c)=>{let d=l?.unchangedRegions.read(c)??[];return d.length===1&&d[0].modifiedLineNumber===1&&d[0].lineCount===this._editors.modifiedModel.read(c)?.getLineCount()?[]:d});this.viewZones=ar(this,(l,c)=>{let d=this._modifiedOutlineSource.read(l);if(!d)return{origViewZones:[],modViewZones:[]};let h=[],u=[],f=this._options.renderSideBySide.read(l),g=this._options.compactMode.read(l),m=s.read(l);for(let _=0;_<m.length;_++){let b=m[_];if(!b.shouldHideControls(l)&&!(g&&(_===0||_===m.length-1)))if(g){{let v=Se(this,w=>b.getHiddenOriginalRange(w).startLineNumber-1),C=new Kl(v,12);h.push(C),c.add(new C2(this._editors.original,C,b,!f))}{let v=Se(this,w=>b.getHiddenModifiedRange(w).startLineNumber-1),C=new Kl(v,12);u.push(C),c.add(new C2(this._editors.modified,C,b))}}else{{let v=Se(this,w=>b.getHiddenOriginalRange(w).startLineNumber-1),C=new Kl(v,24);h.push(C),c.add(new y2(this._editors.original,C,b,b.originalUnchangedRange,!f,d,w=>this._diffModel.get().ensureModifiedLineIsVisible(w,2,void 0),this._options))}{let v=Se(this,w=>b.getHiddenModifiedRange(w).startLineNumber-1),C=new Kl(v,24);u.push(C),c.add(new y2(this._editors.modified,C,b,b.modifiedUnchangedRange,!1,d,w=>this._diffModel.get().ensureModifiedLineIsVisible(w,2,void 0),this._options))}}}return{origViewZones:h,modViewZones:u}});let r={description:"unchanged lines",className:"diff-unchanged-lines",isWholeLine:!0},a={description:"Fold Unchanged",glyphMarginHoverMessage:new r1(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown(p("foldUnchanged","Fold Unchanged Region")),glyphMarginClassName:"fold-unchanged "+Re.asClassName(re.fold),zIndex:10001};this._register(Zp(this._editors.original,Se(this,l=>{let c=s.read(l),d=c.map(h=>({range:h.originalUnchangedRange.toInclusiveRange(),options:r}));for(let h of c)h.shouldHideControls(l)&&d.push({range:k.fromPositions(new P(h.originalLineNumber,1)),options:a});return d}))),this._register(Zp(this._editors.modified,Se(this,l=>{let c=s.read(l),d=c.map(h=>({range:h.modifiedUnchangedRange.toInclusiveRange(),options:r}));for(let h of c)h.shouldHideControls(l)&&d.push({range:ve.ofLength(h.modifiedLineNumber,1).toInclusiveRange(),options:a});return d}))),this._register(qe(l=>{let c=s.read(l);this._isUpdatingHiddenAreas=!0;try{this._editors.original.setHiddenAreas(c.map(d=>d.getHiddenOriginalRange(l).toInclusiveRange()).filter(Xl)),this._editors.modified.setHiddenAreas(c.map(d=>d.getHiddenModifiedRange(l).toInclusiveRange()).filter(Xl))}finally{this._isUpdatingHiddenAreas=!1}})),this._register(this._editors.modified.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){let c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;let h=d.unchangedRegions.get().find(u=>u.modifiedUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}})),this._register(this._editors.original.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){let c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;let h=d.unchangedRegions.get().find(u=>u.originalUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}}))}};w2=v2=Gte([Zte(3,Ie)],w2);C2=class extends Nf{constructor(e,t,i,o=!1){let s=Xe("div.diff-hidden-lines-widget");super(e,t,s.root),this._unchangedRegion=i,this._hide=o,this._nodes=Xe("div.diff-hidden-lines-compact",[Xe("div.line-left",[]),Xe("div.text@text",[]),Xe("div.line-right",[])]),s.root.appendChild(this._nodes.root),this._hide&&this._nodes.root.replaceChildren(),this._register(qe(r=>{if(!this._hide){let a=this._unchangedRegion.getHiddenModifiedRange(r).length,l=p("hiddenLines","{0} hidden lines",a);this._nodes.text.innerText=l}}))}},y2=class extends Nf{constructor(e,t,i,o,s,r,a,l){let c=Xe("div.diff-hidden-lines-widget");super(e,t,c.root),this._editor=e,this._unchangedRegion=i,this._unchangedRegionRange=o,this._hide=s,this._modifiedOutlineSource=r,this._revealModifiedHiddenLine=a,this._options=l,this._nodes=Xe("div.diff-hidden-lines",[Xe("div.top@top",{title:p("diff.hiddenLines.top","Click or drag to show more above")}),Xe("div.center@content",{style:{display:"flex"}},[Xe("div@first",{style:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:"0"}},[he("a",{title:p("showUnchangedRegion","Show Unchanged Region"),role:"button",onclick:()=>{this._unchangedRegion.showAll(void 0)}},...Br("$(unfold)"))]),Xe("div@others",{style:{display:"flex",justifyContent:"center",alignItems:"center"}})]),Xe("div.bottom@bottom",{title:p("diff.bottom","Click or drag to show more below"),role:"button"})]),c.root.appendChild(this._nodes.root),this._hide?Ti(this._nodes.first):this._register(hr(this._nodes.first,{width:Ih(this._editor).layoutInfoContentLeft})),this._register(qe(h=>{let u=this._unchangedRegion.visibleLineCountTop.read(h)+this._unchangedRegion.visibleLineCountBottom.read(h)===this._unchangedRegion.lineCount;this._nodes.bottom.classList.toggle("canMoveTop",!u),this._nodes.bottom.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0),this._nodes.top.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),this._nodes.top.classList.toggle("canMoveBottom",!u);let f=this._unchangedRegion.isDragged.read(h),g=this._editor.getDomNode();g&&(g.classList.toggle("draggingUnchangedRegion",!!f),f==="top"?(g.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),g.classList.toggle("canMoveBottom",!u)):f==="bottom"?(g.classList.toggle("canMoveTop",!u),g.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0)):(g.classList.toggle("canMoveTop",!1),g.classList.toggle("canMoveBottom",!1)))}));let d=this._editor;this._register(B(this._nodes.top,"mousedown",h=>{if(h.button!==0)return;this._nodes.top.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();let u=h.clientY,f=!1,g=this._unchangedRegion.visibleLineCountTop.get();this._unchangedRegion.isDragged.set("top",void 0);let m=se(this._nodes.top),_=B(m,"mousemove",v=>{let w=v.clientY-u;f=f||Math.abs(w)>2;let S=Math.round(w/d.getOption(67)),L=Math.max(0,Math.min(g+S,this._unchangedRegion.getMaxVisibleLineCountTop()));this._unchangedRegion.visibleLineCountTop.set(L,void 0)}),b=B(m,"mouseup",v=>{f||this._unchangedRegion.showMoreAbove(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0),this._nodes.top.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),this._unchangedRegion.isDragged.set(void 0,void 0),_.dispose(),b.dispose()})})),this._register(B(this._nodes.bottom,"mousedown",h=>{if(h.button!==0)return;this._nodes.bottom.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();let u=h.clientY,f=!1,g=this._unchangedRegion.visibleLineCountBottom.get();this._unchangedRegion.isDragged.set("bottom",void 0);let m=se(this._nodes.bottom),_=B(m,"mousemove",v=>{let w=v.clientY-u;f=f||Math.abs(w)>2;let S=Math.round(w/d.getOption(67)),L=Math.max(0,Math.min(g-S,this._unchangedRegion.getMaxVisibleLineCountBottom())),x=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.visibleLineCountBottom.set(L,void 0);let D=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(D-x))}),b=B(m,"mouseup",v=>{if(this._unchangedRegion.isDragged.set(void 0,void 0),!f){let C=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0);let w=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(w-C))}this._nodes.bottom.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),_.dispose(),b.dispose()})})),this._register(qe(h=>{let u=[];if(!this._hide){let f=i.getHiddenModifiedRange(h).length,g=p("hiddenLines","{0} hidden lines",f),m=he("span",{title:p("diff.hiddenLines.expandAll","Double click to unfold")},g);m.addEventListener("dblclick",v=>{v.button===0&&(v.preventDefault(),this._unchangedRegion.showAll(void 0))}),u.push(m);let _=this._unchangedRegion.getHiddenModifiedRange(h),b=this._modifiedOutlineSource.getBreadcrumbItems(_,h);if(b.length>0){u.push(he("span",void 0,"\xA0\xA0|\xA0\xA0"));for(let v=0;v<b.length;v++){let C=b[v],w=Y0.toIcon(C.kind),S=Xe("div.breadcrumb-item",{style:{display:"flex",alignItems:"center"}},[cm(w),"\xA0",C.name,...v===b.length-1?[]:[cm(re.chevronRight)]]).root;u.push(S),S.onclick=()=>{this._revealModifiedHiddenLine(C.startLineNumber)}}}}Ti(this._nodes.others,...u)}))}}});var r9,kK,F2,DK=$(()=>{kd();li();Qo();mr();Te();Ar();ke();r9=pe("IEditorCancelService"),kK=new ge("cancellableOperation",!1,p("cancellableOperation","Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));Je(r9,class{constructor(){this._tokens=new WeakMap}add(n,e){let t=this._tokens.get(n);t||(t=n.invokeWithinContext(o=>{let s=kK.bindTo(o.get(Ve)),r=new yi;return{key:s,tokens:r}}),this._tokens.set(n,t));let i;return t.key.set(!0),i=t.tokens.push(e),()=>{i&&(i(),t.key.set(!t.tokens.isEmpty()),i=void 0)}}cancel(n){let e=this._tokens.get(n);if(!e)return;let t=e.tokens.pop();t&&(t.cancel(),e.key.set(!e.tokens.isEmpty()))}},1);F2=class extends on{constructor(e,t){super(t),this.editor=e,this._unregister=e.invokeWithinContext(i=>i.get(r9).add(e,this))}dispose(){this._unregister(),super.dispose()}};Be(new class extends Xa{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:kK})}runEditorCommand(n,e){n.get(r9).cancel(e)}})});var EK,u0,f0,IK=$(()=>{$e();Ee();Qo();X();DK();EK=class n{constructor(e,t){if(this.flags=t,this.flags&1){let i=e.getModel();this.modelVersionId=i?$h("{0}#{1}",i.uri.toString(),i.getVersionId()):null}else this.modelVersionId=null;this.flags&4?this.position=e.getPosition():this.position=null,this.flags&2?this.selection=e.getSelection():this.selection=null,this.flags&8?(this.scrollLeft=e.getScrollLeft(),this.scrollTop=e.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}_equals(e){if(!(e instanceof n))return!1;let t=e;return!(this.modelVersionId!==t.modelVersionId||this.scrollLeft!==t.scrollLeft||this.scrollTop!==t.scrollTop||!this.position&&t.position||this.position&&!t.position||this.position&&t.position&&!this.position.equals(t.position)||!this.selection&&t.selection||this.selection&&!t.selection||this.selection&&t.selection&&!this.selection.equalsRange(t.selection))}validate(e){return this._equals(new n(e,this.flags))}},u0=class extends F2{constructor(e,t,i,o){super(e,o),this._listener=new Q,t&4&&this._listener.add(e.onDidChangeCursorPosition(s=>{(!i||!k.containsPosition(i,s.position))&&this.cancel()})),t&2&&this._listener.add(e.onDidChangeCursorSelection(s=>{(!i||!k.containsRange(i,s.selection))&&this.cancel()})),t&8&&this._listener.add(e.onDidScrollChange(s=>this.cancel())),t&1&&(this._listener.add(e.onDidChangeModel(s=>this.cancel())),this._listener.add(e.onDidChangeModelContent(s=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}},f0=class extends on{constructor(e,t){super(t),this._listener=e.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}});var toe={};NK(toe,{CancellationTokenSource:()=>zne,Emitter:()=>Vne,KeyCode:()=>Hne,KeyMod:()=>Une,MarkerSeverity:()=>Gne,MarkerTag:()=>Zne,Position:()=>$ne,Range:()=>qne,Selection:()=>Kne,SelectionDirection:()=>jne,Token:()=>Qne,Uri:()=>Yne,editor:()=>Xne,languages:()=>Jne});tt();ys();dt();v_();Kf();ke();var Xr=8,Zf=class{constructor(e){this._values=e}hasChanged(e){return this._values[e]}},y_=class{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}},At=class{constructor(e,t,i,o){this.id=e,this.name=t,this.defaultValue=i,this.schema=o}applyUpdate(e,t){return N0(e,t)}compute(e,t,i){return i}},id=class{constructor(e,t){this.newValue=e,this.didChange=t}};function N0(n,e){if(typeof n!="object"||typeof e!="object"||!n||!e)return new id(e,n!==e);if(Array.isArray(n)||Array.isArray(e)){let i=Array.isArray(n)&&Array.isArray(e)&&xt(n,e);return new id(e,!i)}let t=!1;for(let i in e)if(e.hasOwnProperty(i)){let o=N0(n[i],e[i]);o.didChange&&(n[i]=o.newValue,t=!0)}return new id(n,t)}var Fh=class{constructor(e){this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0}applyUpdate(e,t){return N0(e,t)}validate(e){return this.defaultValue}},nd=class{constructor(e,t,i,o){this.id=e,this.name=t,this.defaultValue=i,this.schema=o}applyUpdate(e,t){return N0(e,t)}validate(e){return typeof e>"u"?this.defaultValue:e}compute(e,t,i){return i}};function ue(n,e){return typeof n>"u"?e:n==="false"?!1:!!n}var rt=class extends nd{constructor(e,t,i,o=void 0){typeof o<"u"&&(o.type="boolean",o.default=i),super(e,t,i,o)}validate(e){return ue(e,this.defaultValue)}};function od(n,e,t,i){if(typeof n>"u")return e;let o=parseInt(n,10);return isNaN(o)?e:(o=Math.max(t,o),o=Math.min(i,o),o|0)}var It=class n extends nd{static clampedInt(e,t,i,o){return od(e,t,i,o)}constructor(e,t,i,o,s,r=void 0){typeof r<"u"&&(r.type="integer",r.default=i,r.minimum=o,r.maximum=s),super(e,t,i,r),this.minimum=o,this.maximum=s}validate(e){return n.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}};function H9(n,e,t,i){if(typeof n>"u")return e;let o=xs.float(n,e);return xs.clamp(o,t,i)}var xs=class n extends nd{static clamp(e,t,i){return e<t?t:e>i?i:e}static float(e,t){if(typeof e=="number")return e;if(typeof e>"u")return t;let i=parseFloat(e);return isNaN(i)?t:i}constructor(e,t,i,o,s){typeof s<"u"&&(s.type="number",s.default=i),super(e,t,i,s),this.validationFn=o}validate(e){return this.validationFn(n.float(e,this.defaultValue))}},io=class n extends nd{static string(e,t){return typeof e!="string"?t:e}constructor(e,t,i,o=void 0){typeof o<"u"&&(o.type="string",o.default=i),super(e,t,i,o)}validate(e){return n.string(e,this.defaultValue)}};function si(n,e,t,i){return typeof n!="string"?e:i&&n in i?i[n]:t.indexOf(n)===-1?e:n}var Jt=class extends nd{constructor(e,t,i,o,s=void 0){typeof s<"u"&&(s.type="string",s.enum=o,s.default=i),super(e,t,i,s),this._allowedValues=o}validate(e){return si(e,this.defaultValue,this._allowedValues)}},jf=class extends At{constructor(e,t,i,o,s,r,a=void 0){typeof a<"u"&&(a.type="string",a.enum=s,a.default=o),super(e,t,i,a),this._allowedValues=s,this._convert=r}validate(e){return typeof e!="string"?this.defaultValue:this._allowedValues.indexOf(e)===-1?this.defaultValue:this._convert(e)}};function jK(n){switch(n){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}var J2=class extends At{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[p("accessibilitySupport.auto","Use platform APIs to detect when a Screen Reader is attached."),p("accessibilitySupport.on","Optimize for usage with a Screen Reader."),p("accessibilitySupport.off","Assume a screen reader is not attached.")],default:"auto",tags:["accessibility"],description:p("accessibilitySupport","Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(e,t,i){return i===0?e.accessibilitySupport:i}},eT=class extends At{constructor(){let e={insertSpace:!0,ignoreEmptyLines:!0};super(23,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:p("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:p("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{insertSpace:ue(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:ue(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}};function GK(n){switch(n){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var Yi;(function(n){n[n.Line=1]="Line",n[n.Block=2]="Block",n[n.Underline=3]="Underline",n[n.LineThin=4]="LineThin",n[n.BlockOutline=5]="BlockOutline",n[n.UnderlineThin=6]="UnderlineThin"})(Yi||(Yi={}));function ZK(n){switch(n){case"line":return Yi.Line;case"block":return Yi.Block;case"underline":return Yi.Underline;case"line-thin":return Yi.LineThin;case"block-outline":return Yi.BlockOutline;case"underline-thin":return Yi.UnderlineThin}}var tT=class extends Fh{constructor(){super(143)}compute(e,t,i){let o=["monaco-editor"];return t.get(39)&&o.push(t.get(39)),e.extraEditorClassName&&o.push(e.extraEditorClassName),t.get(74)==="default"?o.push("mouse-default"):t.get(74)==="copy"&&o.push("mouse-copy"),t.get(112)&&o.push("showUnused"),t.get(141)&&o.push("showDeprecated"),o.join(" ")}},iT=class extends rt{constructor(){super(37,"emptySelectionClipboard",!0,{description:p("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(e,t,i){return i&&e.emptySelectionClipboard}},nT=class extends At{constructor(){let e={cursorMoveOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};super(41,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:p("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[p("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),p("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),p("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:p("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:e.autoFindInSelection,enumDescriptions:[p("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),p("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),p("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:p("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:p("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:De},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:p("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:e.loop,description:p("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{cursorMoveOnType:ue(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:typeof e.seedSearchStringFromSelection=="boolean"?e.seedSearchStringFromSelection?"always":"never":si(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof e.autoFindInSelection=="boolean"?e.autoFindInSelection?"always":"never":si(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:ue(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:ue(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:ue(t.loop,this.defaultValue.loop)}}},Qr=class n extends At{static{this.OFF='"liga" off, "calt" off'}static{this.ON='"liga" on, "calt" on'}constructor(){super(51,"fontLigatures",n.OFF,{anyOf:[{type:"boolean",description:p("fontLigatures","Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:p("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:p("fontLigaturesGeneral","Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"||e.length===0?n.OFF:e==="true"?n.ON:e:e?n.ON:n.OFF}},Yf=class n extends At{static{this.OFF="normal"}static{this.TRANSLATE="translate"}constructor(){super(54,"fontVariations",n.OFF,{anyOf:[{type:"boolean",description:p("fontVariations","Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.")},{type:"string",description:p("fontVariationSettings","Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.")}],description:p("fontVariationsGeneral","Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"?n.OFF:e==="true"?n.TRANSLATE:e:e?n.TRANSLATE:n.OFF}compute(e,t,i){return e.fontInfo.fontVariationSettings}},oT=class extends Fh{constructor(){super(50)}compute(e,t,i){return e.fontInfo}},sT=class extends nd{constructor(){super(52,"fontSize",po.fontSize,{type:"number",minimum:6,maximum:100,default:po.fontSize,description:p("fontSize","Controls the font size in pixels.")})}validate(e){let t=xs.float(e,this.defaultValue);return t===0?po.fontSize:xs.clamp(t,6,100)}compute(e,t,i){return e.fontInfo.fontSize}},rT=class n extends At{static{this.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"]}static{this.MINIMUM_VALUE=1}static{this.MAXIMUM_VALUE=1e3}constructor(){super(53,"fontWeight",po.fontWeight,{anyOf:[{type:"number",minimum:n.MINIMUM_VALUE,maximum:n.MAXIMUM_VALUE,errorMessage:p("fontWeightErrorMessage",'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:n.SUGGESTION_VALUES}],default:po.fontWeight,description:p("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return e==="normal"||e==="bold"?e:String(It.clampedInt(e,po.fontWeight,n.MINIMUM_VALUE,n.MAXIMUM_VALUE))}},aT=class extends At{constructor(){let e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",multipleTests:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:"",alternativeTestsCommand:""},t={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[p("editor.gotoLocation.multiple.peek","Show Peek view of the results (default)"),p("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a Peek view"),p("editor.gotoLocation.multiple.goto","Go to the primary result and enable Peek-less navigation to others")]},i=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(58,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:p("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":{description:p("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleTypeDefinitions":{description:p("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleDeclarations":{description:p("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleImplementations":{description:p("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleReferences":{description:p("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist."),...t},"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:e.alternativeDefinitionCommand,enum:i,description:p("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:e.alternativeTypeDefinitionCommand,enum:i,description:p("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:e.alternativeDeclarationCommand,enum:i,description:p("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:e.alternativeImplementationCommand,enum:i,description:p("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:e.alternativeReferenceCommand,enum:i,description:p("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{multiple:si(t.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:t.multipleDefinitions??si(t.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:t.multipleTypeDefinitions??si(t.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:t.multipleDeclarations??si(t.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:t.multipleImplementations??si(t.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:t.multipleReferences??si(t.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),multipleTests:t.multipleTests??si(t.multipleTests,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:io.string(t.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:io.string(t.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:io.string(t.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:io.string(t.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:io.string(t.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand),alternativeTestsCommand:io.string(t.alternativeTestsCommand,this.defaultValue.alternativeTestsCommand)}}},lT=class extends At{constructor(){let e={enabled:!0,delay:300,hidingDelay:300,sticky:!0,above:!0};super(60,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:p("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:p("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:p("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.hidingDelay":{type:"integer",minimum:0,default:e.hidingDelay,description:p("hover.hidingDelay","Controls the delay in milliseconds after which the hover is hidden. Requires `editor.hover.sticky` to be enabled.")},"editor.hover.above":{type:"boolean",default:e.above,description:p("hover.above","Prefer showing hovers above the line, if there's space.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),delay:It.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:ue(t.sticky,this.defaultValue.sticky),hidingDelay:It.clampedInt(t.hidingDelay,this.defaultValue.hidingDelay,0,6e5),above:ue(t.above,this.defaultValue.above)}}},S_=class n extends Fh{constructor(){super(146)}compute(e,t,i){return n.computeLayout(t,{memory:e.memory,outerWidth:e.outerWidth,outerHeight:e.outerHeight,isDominatedByLongLines:e.isDominatedByLongLines,lineHeight:e.fontInfo.lineHeight,viewLineCount:e.viewLineCount,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio,glyphMarginDecorationLaneCount:e.glyphMarginDecorationLaneCount})}static computeContainedMinimapLineCount(e){let t=e.height/e.lineHeight,i=Math.floor(e.paddingTop/e.lineHeight),o=Math.floor(e.paddingBottom/e.lineHeight);e.scrollBeyondLastLine&&(o=Math.max(o,t-1));let s=(i+e.viewLineCount+o)/(e.pixelRatio*e.height),r=Math.floor(e.viewLineCount/s);return{typicalViewportLineCount:t,extraLinesBeforeFirstLine:i,extraLinesBeyondLastLine:o,desiredRatio:s,minimapLineCount:r}}static _computeMinimapLayout(e,t){let i=e.outerWidth,o=e.outerHeight,s=e.pixelRatio;if(!e.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(s*o),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:o};let r=t.stableMinimapLayoutInput,a=r&&e.outerHeight===r.outerHeight&&e.lineHeight===r.lineHeight&&e.typicalHalfwidthCharacterWidth===r.typicalHalfwidthCharacterWidth&&e.pixelRatio===r.pixelRatio&&e.scrollBeyondLastLine===r.scrollBeyondLastLine&&e.paddingTop===r.paddingTop&&e.paddingBottom===r.paddingBottom&&e.minimap.enabled===r.minimap.enabled&&e.minimap.side===r.minimap.side&&e.minimap.size===r.minimap.size&&e.minimap.showSlider===r.minimap.showSlider&&e.minimap.renderCharacters===r.minimap.renderCharacters&&e.minimap.maxColumn===r.minimap.maxColumn&&e.minimap.scale===r.minimap.scale&&e.verticalScrollbarWidth===r.verticalScrollbarWidth&&e.isViewportWrapping===r.isViewportWrapping,l=e.lineHeight,c=e.typicalHalfwidthCharacterWidth,d=e.scrollBeyondLastLine,h=e.minimap.renderCharacters,u=s>=2?Math.round(e.minimap.scale*2):e.minimap.scale,f=e.minimap.maxColumn,g=e.minimap.size,m=e.minimap.side,_=e.verticalScrollbarWidth,b=e.viewLineCount,v=e.remainingWidth,C=e.isViewportWrapping,w=h?2:3,S=Math.floor(s*o),L=S/s,x=!1,D=!1,E=w*u,U=u/s,F=1;if(g==="fill"||g==="fit"){let{typicalViewportLineCount:ae,extraLinesBeforeFirstLine:J,extraLinesBeyondLastLine:be,desiredRatio:xe,minimapLineCount:mt}=n.computeContainedMinimapLineCount({viewLineCount:b,scrollBeyondLastLine:d,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,height:o,lineHeight:l,pixelRatio:s});if(b/mt>1)x=!0,D=!0,u=1,E=1,U=u/s;else{let mi=!1,pt=u+1;if(g==="fit"){let Pi=Math.ceil((J+b+be)*E);C&&a&&v<=t.stableFitRemainingWidth?(mi=!0,pt=t.stableFitMaxMinimapScale):mi=Pi>S}if(g==="fill"||mi){x=!0;let Pi=u;E=Math.min(l*s,Math.max(1,Math.floor(1/xe))),C&&a&&v<=t.stableFitRemainingWidth&&(pt=t.stableFitMaxMinimapScale),u=Math.min(pt,Math.max(1,Math.floor(E/w))),u>Pi&&(F=Math.min(2,u/Pi)),U=u/s/F,S=Math.ceil(Math.max(ae,J+b+be)*E),C?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=v,t.stableFitMaxMinimapScale=u):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0)}}}let W=Math.floor(f*U),ie=Math.min(W,Math.max(0,Math.floor((v-_-2)*U/(c+U)))+Xr),z=Math.floor(s*ie),q=z/s;z=Math.floor(z*F);let ne=h?1:2,ee=m==="left"?0:i-ie-_;return{renderMinimap:ne,minimapLeft:ee,minimapWidth:ie,minimapHeightIsEditorHeight:x,minimapIsSampling:D,minimapScale:u,minimapLineHeight:E,minimapCanvasInnerWidth:z,minimapCanvasInnerHeight:S,minimapCanvasOuterWidth:q,minimapCanvasOuterHeight:L}}static computeLayout(e,t){let i=t.outerWidth|0,o=t.outerHeight|0,s=t.lineHeight|0,r=t.lineNumbersDigitCount|0,a=t.typicalHalfwidthCharacterWidth,l=t.maxDigitWidth,c=t.pixelRatio,d=t.viewLineCount,h=e.get(138),u=h==="inherit"?e.get(137):h,f=u==="inherit"?e.get(133):u,g=e.get(136),m=t.isDominatedByLongLines,_=e.get(57),b=e.get(68).renderType!==0,v=e.get(69),C=e.get(106),w=e.get(84),S=e.get(73),L=e.get(104),x=L.verticalScrollbarSize,D=L.verticalHasArrows,E=L.arrowSize,U=L.horizontalScrollbarSize,F=e.get(43),W=e.get(111)!=="never",ie=e.get(66);F&&W&&(ie+=16);let z=0;if(b){let Oi=Math.max(r,v);z=Math.round(Oi*l)}let q=0;_&&(q=s*t.glyphMarginDecorationLaneCount);let ne=0,ee=ne+q,ae=ee+z,J=ae+ie,be=i-q-z-ie,xe=!1,mt=!1,bt=-1;u==="inherit"&&m?(xe=!0,mt=!0):f==="on"||f==="bounded"?mt=!0:f==="wordWrapColumn"&&(bt=g);let mi=n._computeMinimapLayout({outerWidth:i,outerHeight:o,lineHeight:s,typicalHalfwidthCharacterWidth:a,pixelRatio:c,scrollBeyondLastLine:C,paddingTop:w.top,paddingBottom:w.bottom,minimap:S,verticalScrollbarWidth:x,viewLineCount:d,remainingWidth:be,isViewportWrapping:mt},t.memory||new y_);mi.renderMinimap!==0&&mi.minimapLeft===0&&(ne+=mi.minimapWidth,ee+=mi.minimapWidth,ae+=mi.minimapWidth,J+=mi.minimapWidth);let pt=be-mi.minimapWidth,Pi=Math.max(1,Math.floor((pt-x-2)/a)),Ro=D?E:0;return mt&&(bt=Math.max(1,Pi),f==="bounded"&&(bt=Math.min(bt,g))),{width:i,height:o,glyphMarginLeft:ne,glyphMarginWidth:q,glyphMarginDecorationLaneCount:t.glyphMarginDecorationLaneCount,lineNumbersLeft:ee,lineNumbersWidth:z,decorationsLeft:ae,decorationsWidth:ie,contentLeft:J,contentWidth:pt,minimap:mi,viewportColumn:Pi,isWordWrapMinified:xe,isViewportWrapping:mt,wrappingColumn:bt,verticalScrollbarWidth:x,horizontalScrollbarHeight:U,overviewRuler:{top:Ro,width:x,height:o-2*Ro,right:0}}}},cT=class extends At{constructor(){super(140,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[p("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),p("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],type:"string",enum:["simple","advanced"],default:"simple",description:p("wrappingStrategy","Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(e){return si(e,"simple",["simple","advanced"])}compute(e,t,i){return t.get(2)===2?"advanced":i}},tc;(function(n){n.Off="off",n.OnCode="onCode",n.On="on"})(tc||(tc={}));var dT=class extends At{constructor(){let e={enabled:tc.OnCode};super(65,"lightbulb",e,{"editor.lightbulb.enabled":{type:"string",tags:["experimental"],enum:[tc.Off,tc.OnCode,tc.On],default:e.enabled,enumDescriptions:[p("editor.lightbulb.enabled.off","Disable the code action menu."),p("editor.lightbulb.enabled.onCode","Show the code action menu when the cursor is on lines with code."),p("editor.lightbulb.enabled.on","Show the code action menu when the cursor is on lines with code or on empty lines.")],description:p("enabled","Enables the Code Action lightbulb in the editor.")}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{enabled:si(e.enabled,this.defaultValue.enabled,[tc.Off,tc.OnCode,tc.On])}}},hT=class extends At{constructor(){let e={enabled:!0,maxLineCount:5,defaultModel:"outlineModel",scrollWithEditor:!0};super(116,"stickyScroll",e,{"editor.stickyScroll.enabled":{type:"boolean",default:e.enabled,description:p("editor.stickyScroll.enabled","Shows the nested current scopes during the scroll at the top of the editor."),tags:["experimental"]},"editor.stickyScroll.maxLineCount":{type:"number",default:e.maxLineCount,minimum:1,maximum:20,description:p("editor.stickyScroll.maxLineCount","Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:e.defaultModel,description:p("editor.stickyScroll.defaultModel","Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.")},"editor.stickyScroll.scrollWithEditor":{type:"boolean",default:e.scrollWithEditor,description:p("editor.stickyScroll.scrollWithEditor","Enable scrolling of Sticky Scroll with the editor's horizontal scrollbar.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),maxLineCount:It.clampedInt(t.maxLineCount,this.defaultValue.maxLineCount,1,20),defaultModel:si(t.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"]),scrollWithEditor:ue(t.scrollWithEditor,this.defaultValue.scrollWithEditor)}}},uT=class extends At{constructor(){let e={enabled:"on",fontSize:0,fontFamily:"",padding:!1};super(142,"inlayHints",e,{"editor.inlayHints.enabled":{type:"string",default:e.enabled,description:p("inlayHints.enable","Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[p("editor.inlayHints.on","Inlay hints are enabled"),p("editor.inlayHints.onUnlessPressed","Inlay hints are showing by default and hide when holding {0}",De?"Ctrl+Option":"Ctrl+Alt"),p("editor.inlayHints.offUnlessPressed","Inlay hints are hidden by default and show when holding {0}",De?"Ctrl+Option":"Ctrl+Alt"),p("editor.inlayHints.off","Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:e.fontSize,markdownDescription:p("inlayHints.fontSize","Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.","`#editor.fontSize#`","`5`")},"editor.inlayHints.fontFamily":{type:"string",default:e.fontFamily,markdownDescription:p("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the {0} is used.","`#editor.fontFamily#`")},"editor.inlayHints.padding":{type:"boolean",default:e.padding,description:p("inlayHints.padding","Enables the padding around the inlay hints in the editor.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return typeof t.enabled=="boolean"&&(t.enabled=t.enabled?"on":"off"),{enabled:si(t.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:It.clampedInt(t.fontSize,this.defaultValue.fontSize,0,100),fontFamily:io.string(t.fontFamily,this.defaultValue.fontFamily),padding:ue(t.padding,this.defaultValue.padding)}}},fT=class extends At{constructor(){super(66,"lineDecorationsWidth",10)}validate(e){return typeof e=="string"&&/^\d+(\.\d+)?ch$/.test(e)?-parseFloat(e.substring(0,e.length-2)):It.clampedInt(e,this.defaultValue,0,1e3)}compute(e,t,i){return i<0?It.clampedInt(-i*e.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):i}},gT=class extends xs{constructor(){super(67,"lineHeight",po.lineHeight,e=>xs.clamp(e,0,150),{markdownDescription:p("lineHeight",`Controls the line height.
|
|
60
|
+
`)){h=!1;break}}if(h){let u=new k(c,1,c,d);t.push(new Fg(null,u,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(e,t,i,o)}_applyUndo(e,t,i,o){let s=e.map(r=>{let a=this.getPositionAt(r.newPosition),l=this.getPositionAt(r.newEnd);return{range:new k(a.lineNumber,a.column,l.lineNumber,l.column),text:r.oldText}});this._applyUndoRedoEdits(s,t,!0,!1,i,o)}_applyRedo(e,t,i,o){let s=e.map(r=>{let a=this.getPositionAt(r.oldPosition),l=this.getPositionAt(r.oldEnd);return{range:new k(a.lineNumber,a.column,l.lineNumber,l.column),text:r.newText}});this._applyUndoRedoEdits(s,t,!1,!0,i,o)}_applyUndoRedoEdits(e,t,i,o,s,r){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=i,this._isRedoing=o,this.applyEdits(e,!1),this.setEOL(t),this._overwriteAlternativeVersionId(s)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(r),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,t=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();let i=this._validateEditOperations(e);return this._doApplyEdits(i,t)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,t){let i=this._buffer.getLineCount(),o=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,t),s=this._buffer.getLineCount(),r=o.changes;if(this._trimAutoWhitespaceLines=o.trimAutoWhitespaceLineNumbers,r.length!==0){for(let c=0,d=r.length;c<d;c++){let h=r[c];this._decorationsTree.acceptReplace(h.rangeOffset,h.rangeLength,h.text.length,h.forceMoveMarkers)}let a=[];this._increaseVersionId();let l=i;for(let c=0,d=r.length;c<d;c++){let h=r[c],[u]=Pr(h.text);this._onDidChangeDecorations.fire();let f=h.range.startLineNumber,g=h.range.endLineNumber,m=g-f,_=u,b=Math.min(m,_),v=_-m,C=s-l-v+f,w=C,S=C+_,L=this._decorationsTree.getInjectedTextInInterval(this,this.getOffsetAt(new P(w,1)),this.getOffsetAt(new P(S,this.getLineMaxColumn(S))),0),x=ds.fromDecorations(L),D=new eo(x);for(let E=b;E>=0;E--){let U=f+E,F=C+E;D.takeFromEndWhile(ie=>ie.lineNumber>F);let W=D.takeFromEndWhile(ie=>ie.lineNumber===F);a.push(new ev(U,this.getLineContent(F),W))}if(b<m){let E=f+b;a.push(new XL(E+1,g))}if(b<_){let E=new eo(x),U=f+b,F=_-b,W=s-l-F+U+1,ie=[],z=[];for(let q=0;q<F;q++){let ne=W+q;z[q]=this.getLineContent(ne),E.takeWhile(ee=>ee.lineNumber<ne),ie[q]=E.takeWhile(ee=>ee.lineNumber===ne)}a.push(new JL(U+1,f+_,z,ie))}l+=v}this._emitContentChangedEvent(new ju(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:r,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return o.reverseEdits===null?void 0:o.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(e){if(e===null||e.size===0)return;let i=Array.from(e).map(o=>new ev(o,this.getLineContent(o),this._getInjectedTextInLine(o)));this._onDidChangeInjectedText.fire(new tp(i))}changeDecorations(e,t=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(e,t){let i={addDecoration:(s,r)=>this._deltaDecorationsImpl(e,[],[{range:s,options:r}])[0],changeDecoration:(s,r)=>{this._changeDecorationImpl(s,r)},changeDecorationOptions:(s,r)=>{this._changeDecorationOptionsImpl(s,QU(r))},removeDecoration:s=>{this._deltaDecorationsImpl(e,[s],[])},deltaDecorations:(s,r)=>s.length===0&&r.length===0?[]:this._deltaDecorationsImpl(e,s,r)},o=null;try{o=t(i)}catch(s){Ue(s)}return i.addDecoration=tv,i.changeDecoration=tv,i.changeDecorationOptions=tv,i.removeDecoration=tv,i.deltaDecorations=tv,o}deltaDecorations(e,t,i=0){if(this._assertNotDisposed(),e||(e=[]),e.length===0&&t.length===0)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),Ue(new Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(i,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(e){return this.getDecorationRange(e)}_setTrackedRange(e,t,i){let o=e?this._decorations[e]:null;if(!o)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:YU[i]}],!0)[0]:null;if(!t)return this._decorationsTree.delete(o),delete this._decorations[o.id],null;let s=this._validateRangeRelaxedNoAllocations(t),r=this._buffer.getOffsetAt(s.startLineNumber,s.startColumn),a=this._buffer.getOffsetAt(s.endLineNumber,s.endColumn);return this._decorationsTree.delete(o),o.reset(this.getVersionId(),r,a,s),o.setOptions(YU[i]),this._decorationsTree.insert(o),o.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;let t=this._decorationsTree.collectNodesFromOwner(e);for(let i=0,o=t.length;i<o;i++){let s=t[i];this._decorationsTree.delete(s),delete this._decorations[s.id]}}getDecorationOptions(e){let t=this._decorations[e];return t?t.options:null}getDecorationRange(e){let t=this._decorations[e];return t?this._decorationsTree.getNodeRange(this,t):null}getLineDecorations(e,t=0,i=!1){return e<1||e>this.getLineCount()?[]:this.getLinesDecorations(e,e,t,i)}getLinesDecorations(e,t,i=0,o=!1,s=!1){let r=this.getLineCount(),a=Math.min(r,Math.max(1,e)),l=Math.min(r,Math.max(1,t)),c=this.getLineMaxColumn(l),d=new k(a,1,l,c),h=this._getDecorationsInRange(d,i,o,s);return f_(h,this._decorationProvider.getDecorationsInRange(d,i,o)),h}getDecorationsInRange(e,t=0,i=!1,o=!1,s=!1){let r=this.validateRange(e),a=this._getDecorationsInRange(r,t,i,s);return f_(a,this._decorationProvider.getDecorationsInRange(r,t,i,o)),a}getOverviewRulerDecorations(e=0,t=!1){return this._decorationsTree.getAll(this,e,t,!0,!1)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(this,e)}_getInjectedTextInLine(e){let t=this._buffer.getOffsetAt(e,1),i=t+this._buffer.getLineLength(e),o=this._decorationsTree.getInjectedTextInInterval(this,t,i,0);return ds.fromDecorations(o).filter(s=>s.lineNumber===e)}getAllDecorations(e=0,t=!1){let i=this._decorationsTree.getAll(this,e,t,!1,!1);return i=i.concat(this._decorationProvider.getAllDecorations(e,t)),i}getAllMarginDecorations(e=0){return this._decorationsTree.getAll(this,e,!1,!1,!0)}_getDecorationsInRange(e,t,i,o){let s=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),r=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,s,r,t,i,o)}getRangeAt(e,t){return this._buffer.getRangeAt(e,t-e)}_changeDecorationImpl(e,t){let i=this._decorations[e];if(!i)return;if(i.options.after){let a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(i.options.before){let a=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}let o=this._validateRangeRelaxedNoAllocations(t),s=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),r=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);this._decorationsTree.delete(i),i.reset(this.getVersionId(),s,r,o),this._decorationsTree.insert(i),this._onDidChangeDecorations.checkAffectedAndFire(i.options),i.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(o.endLineNumber),i.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(o.startLineNumber)}_changeDecorationOptionsImpl(e,t){let i=this._decorations[e];if(!i)return;let o=!!(i.options.overviewRuler&&i.options.overviewRuler.color),s=!!(t.overviewRuler&&t.overviewRuler.color);if(this._onDidChangeDecorations.checkAffectedAndFire(i.options),this._onDidChangeDecorations.checkAffectedAndFire(t),i.options.after||t.after){let l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.endLineNumber)}if(i.options.before||t.before){let l=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(l.startLineNumber)}let r=o!==s,a=oJ(t)!==nk(i);r||a?(this._decorationsTree.delete(i),i.setOptions(t),this._decorationsTree.insert(i)):i.setOptions(t)}_deltaDecorationsImpl(e,t,i,o=!1){let s=this.getVersionId(),r=t.length,a=0,l=i.length,c=0;this._onDidChangeDecorations.beginDeferredEmit();try{let d=new Array(l);for(;a<r||c<l;){let h=null;if(a<r){do h=this._decorations[t[a++]];while(!h&&a<r);if(h){if(h.options.after){let u=this._decorationsTree.getNodeRange(this,h);this._onDidChangeDecorations.recordLineAffectedByInjectedText(u.endLineNumber)}if(h.options.before){let u=this._decorationsTree.getNodeRange(this,h);this._onDidChangeDecorations.recordLineAffectedByInjectedText(u.startLineNumber)}this._decorationsTree.delete(h),o||this._onDidChangeDecorations.checkAffectedAndFire(h.options)}}if(c<l){if(!h){let b=++this._lastDecorationId,v=`${this._instanceId};${b}`;h=new q1(v,0,0),this._decorations[v]=h}let u=i[c],f=this._validateRangeRelaxedNoAllocations(u.range),g=QU(u.options),m=this._buffer.getOffsetAt(f.startLineNumber,f.startColumn),_=this._buffer.getOffsetAt(f.endLineNumber,f.endColumn);h.ownerId=e,h.reset(s,m,_,f),h.setOptions(g),h.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.endLineNumber),h.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.startLineNumber),o||this._onDidChangeDecorations.checkAffectedAndFire(g),this._decorationsTree.insert(h),d[c]=h.id,c++}else h&&delete this._decorations[h.id]}return d}finally{this._onDidChangeDecorations.endDeferredEmit()}}getLanguageId(){return this.tokenization.getLanguageId()}setLanguage(e,t){typeof e=="string"?(this._languageSelectionListener.clear(),this._setLanguage(e,t)):(this._languageSelectionListener.value=e.onDidChange(()=>this._setLanguage(e.languageId,t)),this._setLanguage(e.languageId,t))}_setLanguage(e,t){this.tokenization.setLanguageId(e,t),this._languageService.requestRichLanguageFeatures(e)}getLanguageIdAtPosition(e,t){return this.tokenization.getLanguageIdAtPosition(e,t)}getWordAtPosition(e){return this._tokenizationTextModelPart.getWordAtPosition(e)}getWordUntilPosition(e){return this._tokenizationTextModelPart.getWordUntilPosition(e)}normalizePosition(e,t){return e}getLineIndentColumn(e){return nJ(this.getLineContent(e))+1}};ok=Gu=XX([tk(4,Kg),tk(5,jt),tk(6,ro),tk(7,Ie)],ok);sk=class{constructor(){this._decorationsTree0=new Ym,this._decorationsTree1=new Ym,this._injectedTextDecorationsTree=new Ym}ensureAllNodesHaveRanges(e){this.getAll(e,0,!1,!1,!1)}_ensureNodesHaveRanges(e,t){for(let i of t)i.range===null&&(i.range=e.getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd));return t}getAllInInterval(e,t,i,o,s,r){let a=e.getVersionId(),l=this._intervalSearch(t,i,o,s,a,r);return this._ensureNodesHaveRanges(e,l)}_intervalSearch(e,t,i,o,s,r){let a=this._decorationsTree0.intervalSearch(e,t,i,o,s,r),l=this._decorationsTree1.intervalSearch(e,t,i,o,s,r),c=this._injectedTextDecorationsTree.intervalSearch(e,t,i,o,s,r);return a.concat(l).concat(c)}getInjectedTextInInterval(e,t,i,o){let s=e.getVersionId(),r=this._injectedTextDecorationsTree.intervalSearch(t,i,o,!1,s,!1);return this._ensureNodesHaveRanges(e,r).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllInjectedText(e,t){let i=e.getVersionId(),o=this._injectedTextDecorationsTree.search(t,!1,i,!1);return this._ensureNodesHaveRanges(e,o).filter(s=>s.options.showIfCollapsed||!s.range.isEmpty())}getAll(e,t,i,o,s){let r=e.getVersionId(),a=this._search(t,i,o,r,s);return this._ensureNodesHaveRanges(e,a)}_search(e,t,i,o,s){if(i)return this._decorationsTree1.search(e,t,o,s);{let r=this._decorationsTree0.search(e,t,o,s),a=this._decorationsTree1.search(e,t,o,s),l=this._injectedTextDecorationsTree.search(e,t,o,s);return r.concat(a).concat(l)}}collectNodesFromOwner(e){let t=this._decorationsTree0.collectNodesFromOwner(e),i=this._decorationsTree1.collectNodesFromOwner(e),o=this._injectedTextDecorationsTree.collectNodesFromOwner(e);return t.concat(i).concat(o)}collectNodesPostOrder(){let e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder(),i=this._injectedTextDecorationsTree.collectNodesPostOrder();return e.concat(t).concat(i)}insert(e){nk(e)?this._injectedTextDecorationsTree.insert(e):PP(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){nk(e)?this._injectedTextDecorationsTree.delete(e):PP(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)}getNodeRange(e,t){let i=e.getVersionId();return t.cachedVersionId!==i&&this._resolveNode(t,i),t.range===null&&(t.range=e.getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range}_resolveNode(e,t){nk(e)?this._injectedTextDecorationsTree.resolveNode(e,t):PP(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)}acceptReplace(e,t,i,o){this._decorationsTree0.acceptReplace(e,t,i,o),this._decorationsTree1.acceptReplace(e,t,i,o),this._injectedTextDecorationsTree.acceptReplace(e,t,i,o)}};rk=class{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}},FP=class extends rk{constructor(e){super(e),this._resolvedColor=null,this.position=typeof e.position=="number"?e.position:Og.Center}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(e,t){if(typeof e=="string")return e;let i=e?t.getColor(e.id):null;return i?i.toString():""}},BP=class{constructor(e){this.position=e?.position??ir.Center,this.persistLane=e?.persistLane}},WP=class extends rk{constructor(e){super(e),this.position=e.position,this.sectionHeaderStyle=e.sectionHeaderStyle??null,this.sectionHeaderText=e.sectionHeaderText??null}getColor(e){return this._resolvedColor||(e.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(e,t){return typeof e=="string"?K.fromHex(e):t.getColor(e.id)}},ak=class n{static from(e){return e instanceof n?e:new n(e)}constructor(e){this.content=e.content||"",this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}},zi=class n{static register(e){return new n(e)}static createDynamic(e){return new n(e)}constructor(e){this.description=e.description,this.blockClassName=e.blockClassName?Ml(e.blockClassName):null,this.blockDoesNotCollapse=e.blockDoesNotCollapse??null,this.blockIsAfterEnd=e.blockIsAfterEnd??null,this.blockPadding=e.blockPadding??null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?Ml(e.className):null,this.shouldFillLineOnLineBreak=e.shouldFillLineOnLineBreak??null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=e.lineNumberHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new FP(e.overviewRuler):null,this.minimap=e.minimap?new WP(e.minimap):null,this.glyphMargin=e.glyphMarginClassName?new BP(e.glyphMargin):null,this.glyphMarginClassName=e.glyphMarginClassName?Ml(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?Ml(e.linesDecorationsClassName):null,this.lineNumberClassName=e.lineNumberClassName?Ml(e.lineNumberClassName):null,this.linesDecorationsTooltip=e.linesDecorationsTooltip?D3(e.linesDecorationsTooltip):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?Ml(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?Ml(e.marginClassName):null,this.inlineClassName=e.inlineClassName?Ml(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?Ml(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?Ml(e.afterContentClassName):null,this.after=e.after?ak.from(e.after):null,this.before=e.before?ak.from(e.before):null,this.hideInCommentTokens=e.hideInCommentTokens??!1,this.hideInStringTokens=e.hideInStringTokens??!1}};zi.EMPTY=zi.register({description:"empty"});YU=[zi.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),zi.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),zi.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),zi.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];zP=class extends R{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new M),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._affectsLineNumber=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){this._deferredCnt--,this._deferredCnt===0&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null)}recordLineAffectedByInjectedText(e){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}checkAffectedAndFire(e){this._affectsMinimap||=!!e.minimap?.position,this._affectsOverviewRuler||=!!e.overviewRuler?.color,this._affectsGlyphMargin||=!!e.glyphMarginClassName,this._affectsLineNumber||=!!e.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){this._deferredCnt===0?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines);let e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler,affectsGlyphMargin:this._affectsGlyphMargin,affectsLineNumber:this._affectsLineNumber};this._shouldFireDeferred=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._affectsGlyphMargin=!1,this._actual.fire(e)}},VP=class extends R{constructor(){super(),this._fastEmitter=this._register(new M),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new M),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(e=null){if(this._deferredCnt--,this._deferredCnt===0&&this._deferredEvent!==null){this._deferredEvent.rawContentChangedEvent.resultingSelection=e;let t=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(t),this._slowEmitter.fire(t)}}fire(e){if(this._deferredCnt>0){this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e;return}this._fastEmitter.fire(e),this._slowEmitter.fire(e)}}});var jo,Sv=$(()=>{Te();jo=pe("themeService")});var wp,Q5=$(()=>{X();fe();me();wp=class extends R{constructor(e,t){super(),this._onDidChange=this._register(new M),this.onDidChange=this._onDidChange.event,this._referenceDomElement=e,this._width=-1,this._height=-1,this._resizeObserver=null,this.measureReferenceDomElement(!1,t)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this._width}getHeight(){return this._height}startObserving(){if(!this._resizeObserver&&this._referenceDomElement){let e=null,t=()=>{e?this.observe({width:e.width,height:e.height}):this.observe()},i=!1,o=!1,s=()=>{if(i&&!o)try{i=!1,o=!0,t()}finally{Xi(se(this._referenceDomElement),()=>{o=!1,s()})}};this._resizeObserver=new ResizeObserver(r=>{r&&r[0]&&r[0].contentRect?e={width:r[0].contentRect.width,height:r[0].contentRect.height}:e=null,i=!0,s()}),this._resizeObserver.observe(this._referenceDomElement)}}stopObserving(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null)}observe(e){this.measureReferenceDomElement(!0,e)}measureReferenceDomElement(e,t){let i=0,o=0;t?(i=t.width,o=t.height):this._referenceDomElement&&(i=this._referenceDomElement.clientWidth,o=this._referenceDomElement.clientHeight),i=Math.max(5,i),o=Math.max(5,o),(this._width!==i||this._height!==o)&&(this._width=i,this._height=o,e&&this._onDidChange.fire())}}});var de,jv=$(()=>{ke();li();(function(n){n.editorSimpleInput=new ge("editorSimpleInput",!1,!0),n.editorTextFocus=new ge("editorTextFocus",!1,p("editorTextFocus","Whether the editor text has focus (cursor is blinking)")),n.focus=new ge("editorFocus",!1,p("editorFocus","Whether the editor or an editor widget has focus (e.g. focus is in the find widget)")),n.textInputFocus=new ge("textInputFocus",!1,p("textInputFocus","Whether an editor or a rich text input has focus (cursor is blinking)")),n.readOnly=new ge("editorReadonly",!1,p("editorReadonly","Whether the editor is read-only")),n.inDiffEditor=new ge("inDiffEditor",!1,p("inDiffEditor","Whether the context is a diff editor")),n.isEmbeddedDiffEditor=new ge("isEmbeddedDiffEditor",!1,p("isEmbeddedDiffEditor","Whether the context is an embedded diff editor")),n.inMultiDiffEditor=new ge("inMultiDiffEditor",!1,p("inMultiDiffEditor","Whether the context is a multi diff editor")),n.multiDiffEditorAllCollapsed=new ge("multiDiffEditorAllCollapsed",void 0,p("multiDiffEditorAllCollapsed","Whether all files in multi diff editor are collapsed")),n.hasChanges=new ge("diffEditorHasChanges",!1,p("diffEditorHasChanges","Whether the diff editor has changes")),n.comparingMovedCode=new ge("comparingMovedCode",!1,p("comparingMovedCode","Whether a moved code block is selected for comparison")),n.accessibleDiffViewerVisible=new ge("accessibleDiffViewerVisible",!1,p("accessibleDiffViewerVisible","Whether the accessible diff viewer is visible")),n.diffEditorRenderSideBySideInlineBreakpointReached=new ge("diffEditorRenderSideBySideInlineBreakpointReached",!1,p("diffEditorRenderSideBySideInlineBreakpointReached","Whether the diff editor render side by side inline breakpoint is reached")),n.diffEditorInlineMode=new ge("diffEditorInlineMode",!1,p("diffEditorInlineMode","Whether inline mode is active")),n.diffEditorOriginalWritable=new ge("diffEditorOriginalWritable",!1,p("diffEditorOriginalWritable","Whether modified is writable in the diff editor")),n.diffEditorModifiedWritable=new ge("diffEditorModifiedWritable",!1,p("diffEditorModifiedWritable","Whether modified is writable in the diff editor")),n.diffEditorOriginalUri=new ge("diffEditorOriginalUri","",p("diffEditorOriginalUri","The uri of the original document")),n.diffEditorModifiedUri=new ge("diffEditorModifiedUri","",p("diffEditorModifiedUri","The uri of the modified document")),n.columnSelection=new ge("editorColumnSelection",!1,p("editorColumnSelection","Whether `editor.columnSelection` is enabled")),n.writable=n.readOnly.toNegated(),n.hasNonEmptySelection=new ge("editorHasSelection",!1,p("editorHasSelection","Whether the editor has text selected")),n.hasOnlyEmptySelection=n.hasNonEmptySelection.toNegated(),n.hasMultipleSelections=new ge("editorHasMultipleSelections",!1,p("editorHasMultipleSelections","Whether the editor has multiple selections")),n.hasSingleSelection=n.hasMultipleSelections.toNegated(),n.tabMovesFocus=new ge("editorTabMovesFocus",!1,p("editorTabMovesFocus","Whether `Tab` will move focus out of the editor")),n.tabDoesNotMoveFocus=n.tabMovesFocus.toNegated(),n.isInEmbeddedEditor=new ge("isInEmbeddedEditor",!1,!0),n.canUndo=new ge("canUndo",!1,!0),n.canRedo=new ge("canRedo",!1,!0),n.hoverVisible=new ge("editorHoverVisible",!1,p("editorHoverVisible","Whether the editor hover is visible")),n.hoverFocused=new ge("editorHoverFocused",!1,p("editorHoverFocused","Whether the editor hover is focused")),n.stickyScrollFocused=new ge("stickyScrollFocused",!1,p("stickyScrollFocused","Whether the sticky scroll is focused")),n.stickyScrollVisible=new ge("stickyScrollVisible",!1,p("stickyScrollVisible","Whether the sticky scroll is visible")),n.standaloneColorPickerVisible=new ge("standaloneColorPickerVisible",!1,p("standaloneColorPickerVisible","Whether the standalone color picker is visible")),n.standaloneColorPickerFocused=new ge("standaloneColorPickerFocused",!1,p("standaloneColorPickerFocused","Whether the standalone color picker is focused")),n.inCompositeEditor=new ge("inCompositeEditor",void 0,p("inCompositeEditor","Whether the editor is part of a larger editor (e.g. notebooks)")),n.notInCompositeEditor=n.inCompositeEditor.toNegated(),n.languageId=new ge("editorLangId","",p("editorLangId","The language identifier of the editor")),n.hasCompletionItemProvider=new ge("editorHasCompletionItemProvider",!1,p("editorHasCompletionItemProvider","Whether the editor has a completion item provider")),n.hasCodeActionsProvider=new ge("editorHasCodeActionsProvider",!1,p("editorHasCodeActionsProvider","Whether the editor has a code actions provider")),n.hasCodeLensProvider=new ge("editorHasCodeLensProvider",!1,p("editorHasCodeLensProvider","Whether the editor has a code lens provider")),n.hasDefinitionProvider=new ge("editorHasDefinitionProvider",!1,p("editorHasDefinitionProvider","Whether the editor has a definition provider")),n.hasDeclarationProvider=new ge("editorHasDeclarationProvider",!1,p("editorHasDeclarationProvider","Whether the editor has a declaration provider")),n.hasImplementationProvider=new ge("editorHasImplementationProvider",!1,p("editorHasImplementationProvider","Whether the editor has an implementation provider")),n.hasTypeDefinitionProvider=new ge("editorHasTypeDefinitionProvider",!1,p("editorHasTypeDefinitionProvider","Whether the editor has a type definition provider")),n.hasHoverProvider=new ge("editorHasHoverProvider",!1,p("editorHasHoverProvider","Whether the editor has a hover provider")),n.hasDocumentHighlightProvider=new ge("editorHasDocumentHighlightProvider",!1,p("editorHasDocumentHighlightProvider","Whether the editor has a document highlight provider")),n.hasDocumentSymbolProvider=new ge("editorHasDocumentSymbolProvider",!1,p("editorHasDocumentSymbolProvider","Whether the editor has a document symbol provider")),n.hasReferenceProvider=new ge("editorHasReferenceProvider",!1,p("editorHasReferenceProvider","Whether the editor has a reference provider")),n.hasRenameProvider=new ge("editorHasRenameProvider",!1,p("editorHasRenameProvider","Whether the editor has a rename provider")),n.hasSignatureHelpProvider=new ge("editorHasSignatureHelpProvider",!1,p("editorHasSignatureHelpProvider","Whether the editor has a signature help provider")),n.hasInlayHintsProvider=new ge("editorHasInlayHintsProvider",!1,p("editorHasInlayHintsProvider","Whether the editor has an inline hints provider")),n.hasDocumentFormattingProvider=new ge("editorHasDocumentFormattingProvider",!1,p("editorHasDocumentFormattingProvider","Whether the editor has a document formatting provider")),n.hasDocumentSelectionFormattingProvider=new ge("editorHasDocumentSelectionFormattingProvider",!1,p("editorHasDocumentSelectionFormattingProvider","Whether the editor has a document selection formatting provider")),n.hasMultipleDocumentFormattingProvider=new ge("editorHasMultipleDocumentFormattingProvider",!1,p("editorHasMultipleDocumentFormattingProvider","Whether the editor has multiple document formatting providers")),n.hasMultipleDocumentSelectionFormattingProvider=new ge("editorHasMultipleDocumentSelectionFormattingProvider",!1,p("editorHasMultipleDocumentSelectionFormattingProvider","Whether the editor has multiple document selection formatting providers"))})(de||(de={}))});function Zq(n,e,t,i){if(n.length===0)return e;if(e.length===0)return n;let o=[],s=0,r=0;for(;s<n.length&&r<e.length;){let a=n[s],l=e[r],c=t(a),d=t(l);c<d?(o.push(a),s++):c>d?(o.push(l),r++):(o.push(i(a,l)),s++,r++)}for(;s<n.length;)o.push(n[s]),s++;for(;r<e.length;)o.push(e[r]),r++;return o}function Zp(n,e){let t=new Q,i=n.createDecorationsCollection();return t.add(nh({debugName:()=>`Apply decorations from ${e.debugName}`},o=>{let s=e.read(o);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}function Af(n,e){return n.appendChild(e),ce(()=>{e.remove()})}function Yq(n,e){return n.prepend(e),ce(()=>{e.remove()})}function y7(n,e,t){let i=e.get(),o=i,s=i,r=Oe("animatedValue",i),a=-1,l=300,c;t.add(yc({createEmptyChangeSummary:()=>({animate:!1}),handleChange:(h,u)=>(h.didChange(e)&&(u.animate=u.animate||h.change),!0)},(h,u)=>{c!==void 0&&(n.cancelAnimationFrame(c),c=void 0),o=s,i=e.read(h),a=Date.now()-(u.animate?0:l),d()}));function d(){let h=Date.now()-a;s=Math.floor(Ate(h,o,i-o,l)),h<l?c=n.requestAnimationFrame(d):s=i,r.set(s,void 0)}return r}function Ate(n,e,t,i){return n===i?e+t:t*(-Math.pow(2,-10*n/i)+1)+e}function hr(n,e){return qe(t=>{for(let[i,o]of Object.entries(e))o&&typeof o=="object"&&"read"in o&&(o=o.read(t)),typeof o=="number"&&(o=`${o}px`),i=i.replace(/[A-Z]/g,s=>"-"+s.toLowerCase()),n.style[i]=o})}function Yp(n,e,t,i){let o=new Q,s=[];return o.add(Ln((r,a)=>{let l=e.read(r),c=new Map,d=new Map;t&&t(!0),n.changeViewZones(h=>{for(let u of s)h.removeZone(u),i?.delete(u);s.length=0;for(let u of l){let f=h.addZone(u);u.setZoneId&&u.setZoneId(f),s.push(f),i?.add(f),c.set(u,f)}}),t&&t(!1),a.add(yc({createEmptyChangeSummary(){return{zoneIds:[]}},handleChange(h,u){let f=d.get(h.changedObservable);return f!==void 0&&u.zoneIds.push(f),!0}},(h,u)=>{for(let f of l)f.onChange&&(d.set(f.onChange,c.get(f)),f.onChange.read(h));t&&t(!0),n.changeViewZones(f=>{for(let g of u.zoneIds)f.layoutZone(g)}),t&&t(!1)}))})),o.add({dispose(){t&&t(!0),n.changeViewZones(r=>{for(let a of s)r.removeZone(a)}),i?.clear(),t&&t(!1)}}),o}function S7(n,e){let t=mu(e,o=>o.original.startLineNumber<=n.lineNumber);if(!t)return k.fromPositions(n);if(t.original.endLineNumberExclusive<=n.lineNumber){let o=n.lineNumber-t.original.endLineNumberExclusive+t.modified.endLineNumberExclusive;return k.fromPositions(new P(o,n.column))}if(!t.innerChanges)return k.fromPositions(new P(t.modified.startLineNumber,1));let i=mu(t.innerChanges,o=>o.originalRange.getStartPosition().isBeforeOrEqual(n));if(!i){let o=n.lineNumber-t.original.startLineNumber+t.modified.startLineNumber;return k.fromPositions(new P(o,n.column))}if(i.originalRange.containsPosition(n))return i.modifiedRange;{let o=Rte(i.originalRange.getEndPosition(),n);return k.fromPositions(o.addToPosition(i.modifiedRange.getEndPosition()))}}function Rte(n,e){return n.lineNumber===e.lineNumber?new sr(0,e.column-n.column):new sr(e.lineNumber-n.lineNumber,e.column-1)}function Qq(n,e){let t;return n.filter(i=>{let o=e(i,t);return t=i,o})}var Gp,Nf,Kl,w7,Gq,Mf,e2,C7,Fa=$(()=>{ol();Qo();X();Ri();Q5();Ze();Ee();Wg();Gp=class extends R{get width(){return this._width}get height(){return this._height}get automaticLayout(){return this._automaticLayout}constructor(e,t){super(),this._automaticLayout=!1,this.elementSizeObserver=this._register(new wp(e,t)),this._width=Oe(this,this.elementSizeObserver.getWidth()),this._height=Oe(this,this.elementSizeObserver.getHeight()),this._register(this.elementSizeObserver.onDidChange(i=>Dt(o=>{this._width.set(this.elementSizeObserver.getWidth(),o),this._height.set(this.elementSizeObserver.getHeight(),o)})))}observe(e){this.elementSizeObserver.observe(e)}setAutomaticLayout(e){this._automaticLayout=e,e?this.elementSizeObserver.startObserving():this.elementSizeObserver.stopObserving()}};Nf=class extends R{constructor(e,t,i){super(),this._register(new w7(e,i)),this._register(hr(i,{height:t.actualHeight,top:t.actualTop}))}},Kl=class{get afterLineNumber(){return this._afterLineNumber.get()}constructor(e,t){this._afterLineNumber=e,this.heightInPx=t,this.domNode=document.createElement("div"),this._actualTop=Oe(this,void 0),this._actualHeight=Oe(this,void 0),this.actualTop=this._actualTop,this.actualHeight=this._actualHeight,this.showInHiddenAreas=!0,this.onChange=this._afterLineNumber,this.onDomNodeTop=i=>{this._actualTop.set(i,void 0)},this.onComputedHeight=i=>{this._actualHeight.set(i,void 0)}}},w7=class n{static{this._counter=0}constructor(e,t){this._editor=e,this._domElement=t,this._overlayWidgetId=`managedOverlayWidget-${n._counter++}`,this._overlayWidget={getId:()=>this._overlayWidgetId,getDomNode:()=>this._domElement,getPosition:()=>null},this._editor.addOverlayWidget(this._overlayWidget)}dispose(){this._editor.removeOverlayWidget(this._overlayWidget)}};Gq=class extends on{dispose(){super.dispose(!0)}};Mf=class{static create(e,t=void 0){return new e2(e,e,t)}static createWithDisposable(e,t,i=void 0){let o=new Q;return o.add(t),o.add(e),new e2(e,o,i)}},e2=class extends Mf{constructor(e,t,i){super(),this.object=e,this._disposable=t,this._debugOwner=i,this._refCount=1,this._isDisposed=!1,this._owners=[],i&&this._addOwner(i)}_addOwner(e){e&&this._owners.push(e)}createNewRef(e){return this._refCount++,e&&this._addOwner(e),new C7(this,e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._decreaseRefCount(this._debugOwner))}_decreaseRefCount(e){if(this._refCount--,this._refCount===0&&this._disposable.dispose(),e){let t=this._owners.indexOf(e);t!==-1&&this._owners.splice(t,1)}}},C7=class extends Mf{constructor(e,t){super(),this._base=e,this._debugOwner=t,this._isDisposed=!1}get object(){return this._base.object}createNewRef(e){return this._base.createNewRef(e)}dispose(){this._isDisposed||(this._isDisposed=!0,this._base._decreaseRefCount(this._debugOwner))}}});function Ih(n){return Z7.get(n)}function jte(n,e){return n4({createEmptyChangeSummary:()=>({deltas:[],didChange:!1}),handleChange:(t,i)=>{if(t.didChange(n)){let o=t.change;o!==void 0&&i.deltas.push(o),i.didChange=!0}return!0}},(t,i)=>{let o=n.read(t);i.didChange&&e(o,i.deltas)})}function RXe(n,e){let t=new Q,i=jte(n,(o,s)=>{t.clear(),e(o,s,t)});return{dispose(){i.dispose(),t.dispose()}}}var Z7,b2=$(()=>{xm();X();Ri();wl();ih();gn();Z7=class n extends R{static{this._map=new Map}static get(e){let t=n._map.get(e);if(!t){t=new n(e),n._map.set(e,t);let i=e.onDidDispose(()=>{let o=n._map.get(e);o&&(n._map.delete(e),o.dispose(),i.dispose())})}return t}_beginUpdate(){this._updateCounter++,this._updateCounter===1&&(this._currentTransaction=new vl(()=>{}))}_endUpdate(){if(this._updateCounter--,this._updateCounter===0){let e=this._currentTransaction;this._currentTransaction=void 0,e.finish()}}constructor(e){super(),this.editor=e,this._updateCounter=0,this._currentTransaction=void 0,this._model=Oe(this,this.editor.getModel()),this.model=this._model,this.isReadonly=St(this,this.editor.onDidChangeConfiguration,()=>this.editor.getOption(92)),this._versionId=Nm({owner:this,lazy:!0},this.editor.getModel()?.getVersionId()??null),this.versionId=this._versionId,this._selections=Nm({owner:this,equalsFn:XR(AV(ze.selectionsEqual)),lazy:!0},this.editor.getSelections()??null),this.selections=this._selections,this.isFocused=St(this,t=>{let i=this.editor.onDidFocusEditorWidget(t),o=this.editor.onDidBlurEditorWidget(t);return{dispose(){i.dispose(),o.dispose()}}},()=>this.editor.hasWidgetFocus()),this.value=Im(this,t=>(this.versionId.read(t),this.model.read(t)?.getValue()??""),(t,i)=>{let o=this.model.get();o!==null&&t!==o.getValue()&&o.setValue(t)}),this.valueIsEmpty=Se(this,t=>(this.versionId.read(t),this.editor.getModel()?.getValueLength()===0)),this.cursorSelection=Cc({owner:this,equalsFn:XR(ze.selectionsEqual)},t=>this.selections.read(t)?.[0]??null),this.onDidType=Pu(this),this.scrollTop=St(this.editor.onDidScrollChange,()=>this.editor.getScrollTop()),this.scrollLeft=St(this.editor.onDidScrollChange,()=>this.editor.getScrollLeft()),this.layoutInfo=St(this.editor.onDidLayoutChange,()=>this.editor.getLayoutInfo()),this.layoutInfoContentLeft=this.layoutInfo.map(t=>t.contentLeft),this.layoutInfoDecorationsLeft=this.layoutInfo.map(t=>t.decorationsLeft),this.contentWidth=St(this.editor.onDidContentSizeChange,()=>this.editor.getContentWidth()),this._overlayWidgetCounter=0,this._register(this.editor.onBeginUpdate(()=>this._beginUpdate())),this._register(this.editor.onEndUpdate(()=>this._endUpdate())),this._register(this.editor.onDidChangeModel(()=>{this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidType(t=>{this._beginUpdate();try{this._forceUpdate(),this.onDidType.trigger(this._currentTransaction,t)}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeModelContent(t=>{this._beginUpdate();try{this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}})),this._register(this.editor.onDidChangeCursorSelection(t=>{this._beginUpdate();try{this._selections.set(this.editor.getSelections(),this._currentTransaction,t),this._forceUpdate()}finally{this._endUpdate()}}))}forceUpdate(e){this._beginUpdate();try{return this._forceUpdate(),e?e(this._currentTransaction):void 0}finally{this._endUpdate()}}_forceUpdate(){this._beginUpdate();try{this._model.set(this.editor.getModel(),this._currentTransaction),this._versionId.set(this.editor.getModel()?.getVersionId()??null,this._currentTransaction,void 0),this._selections.set(this.editor.getSelections(),this._currentTransaction,void 0)}finally{this._endUpdate()}}getOption(e){return St(this,t=>this.editor.onDidChangeConfiguration(i=>{i.hasChanged(e)&&t(void 0)}),()=>this.editor.getOption(e))}setDecorations(e){let t=new Q,i=this.editor.createDecorationsCollection();return t.add(nh({owner:this,debugName:()=>`Apply decorations from ${e.debugName}`},o=>{let s=e.read(o);i.set(s)})),t.add({dispose:()=>{i.clear()}}),t}createOverlayWidget(e){let t="observableOverlayWidget"+this._overlayWidgetCounter++,i={getDomNode:()=>e.domNode,getPosition:()=>e.position.get(),getId:()=>t,allowEditorOverflow:e.allowEditorOverflow,getMinContentWidthInPx:()=>e.minContentWidthInPx.get()};this.editor.addOverlayWidget(i);let o=qe(s=>{e.position.read(s),e.minContentWidthInPx.read(s),this.editor.layoutOverlayWidget(i)});return ce(()=>{o.dispose(),this.editor.removeOverlayWidget(i)})}}});var Gte,Zte,v2,w2,C2,y2,uK=$(()=>{me();xu();Mn();fm();X();Ri();ih();vn();pi();b2();Fa();ko();Ze();Ee();vo();ke();Te();Gte=function(n,e,t,i){var o=arguments.length,s=o<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(n,e,t,i);else for(var a=n.length-1;a>=0;a--)(r=n[a])&&(s=(o<3?r(s):o>3?r(e,t,s):r(e,t))||s);return o>3&&s&&Object.defineProperty(e,t,s),s},Zte=function(n,e){return function(t,i){e(t,i,n)}},w2=class extends R{static{v2=this}static{this._breadcrumbsSourceFactory=Oe(v2,()=>({dispose(){},getBreadcrumbItems(e,t){return[]}}))}static setBreadcrumbsSourceFactory(e){this._breadcrumbsSourceFactory.set(e,void 0)}get isUpdatingHiddenAreas(){return this._isUpdatingHiddenAreas}constructor(e,t,i,o){super(),this._editors=e,this._diffModel=t,this._options=i,this._instantiationService=o,this._modifiedOutlineSource=lr(this,l=>{let c=this._editors.modifiedModel.read(l),d=v2._breadcrumbsSourceFactory.read(l);return!c||!d?void 0:d(c,this._instantiationService)}),this._isUpdatingHiddenAreas=!1,this._register(this._editors.original.onDidChangeCursorPosition(l=>{if(l.reason===1)return;let c=this._diffModel.get();Dt(d=>{for(let h of this._editors.original.getSelections()||[])c?.ensureOriginalLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureOriginalLineIsVisible(h.getEndPosition().lineNumber,0,d)})})),this._register(this._editors.modified.onDidChangeCursorPosition(l=>{if(l.reason===1)return;let c=this._diffModel.get();Dt(d=>{for(let h of this._editors.modified.getSelections()||[])c?.ensureModifiedLineIsVisible(h.getStartPosition().lineNumber,0,d),c?.ensureModifiedLineIsVisible(h.getEndPosition().lineNumber,0,d)})}));let s=this._diffModel.map((l,c)=>{let d=l?.unchangedRegions.read(c)??[];return d.length===1&&d[0].modifiedLineNumber===1&&d[0].lineCount===this._editors.modifiedModel.read(c)?.getLineCount()?[]:d});this.viewZones=ar(this,(l,c)=>{let d=this._modifiedOutlineSource.read(l);if(!d)return{origViewZones:[],modViewZones:[]};let h=[],u=[],f=this._options.renderSideBySide.read(l),g=this._options.compactMode.read(l),m=s.read(l);for(let _=0;_<m.length;_++){let b=m[_];if(!b.shouldHideControls(l)&&!(g&&(_===0||_===m.length-1)))if(g){{let v=Se(this,w=>b.getHiddenOriginalRange(w).startLineNumber-1),C=new Kl(v,12);h.push(C),c.add(new C2(this._editors.original,C,b,!f))}{let v=Se(this,w=>b.getHiddenModifiedRange(w).startLineNumber-1),C=new Kl(v,12);u.push(C),c.add(new C2(this._editors.modified,C,b))}}else{{let v=Se(this,w=>b.getHiddenOriginalRange(w).startLineNumber-1),C=new Kl(v,24);h.push(C),c.add(new y2(this._editors.original,C,b,b.originalUnchangedRange,!f,d,w=>this._diffModel.get().ensureModifiedLineIsVisible(w,2,void 0),this._options))}{let v=Se(this,w=>b.getHiddenModifiedRange(w).startLineNumber-1),C=new Kl(v,24);u.push(C),c.add(new y2(this._editors.modified,C,b,b.modifiedUnchangedRange,!1,d,w=>this._diffModel.get().ensureModifiedLineIsVisible(w,2,void 0),this._options))}}}return{origViewZones:h,modViewZones:u}});let r={description:"unchanged lines",className:"diff-unchanged-lines",isWholeLine:!0},a={description:"Fold Unchanged",glyphMarginHoverMessage:new r1(void 0,{isTrusted:!0,supportThemeIcons:!0}).appendMarkdown(p("foldUnchanged","Fold Unchanged Region")),glyphMarginClassName:"fold-unchanged "+Re.asClassName(re.fold),zIndex:10001};this._register(Zp(this._editors.original,Se(this,l=>{let c=s.read(l),d=c.map(h=>({range:h.originalUnchangedRange.toInclusiveRange(),options:r}));for(let h of c)h.shouldHideControls(l)&&d.push({range:k.fromPositions(new P(h.originalLineNumber,1)),options:a});return d}))),this._register(Zp(this._editors.modified,Se(this,l=>{let c=s.read(l),d=c.map(h=>({range:h.modifiedUnchangedRange.toInclusiveRange(),options:r}));for(let h of c)h.shouldHideControls(l)&&d.push({range:ve.ofLength(h.modifiedLineNumber,1).toInclusiveRange(),options:a});return d}))),this._register(qe(l=>{let c=s.read(l);this._isUpdatingHiddenAreas=!0;try{this._editors.original.setHiddenAreas(c.map(d=>d.getHiddenOriginalRange(l).toInclusiveRange()).filter(Xl)),this._editors.modified.setHiddenAreas(c.map(d=>d.getHiddenModifiedRange(l).toInclusiveRange()).filter(Xl))}finally{this._isUpdatingHiddenAreas=!1}})),this._register(this._editors.modified.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){let c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;let h=d.unchangedRegions.get().find(u=>u.modifiedUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}})),this._register(this._editors.original.onMouseUp(l=>{if(!l.event.rightButton&&l.target.position&&l.target.element?.className.includes("fold-unchanged")){let c=l.target.position.lineNumber,d=this._diffModel.get();if(!d)return;let h=d.unchangedRegions.get().find(u=>u.originalUnchangedRange.includes(c));if(!h)return;h.collapseAll(void 0),l.event.stopPropagation(),l.event.preventDefault()}}))}};w2=v2=Gte([Zte(3,Ie)],w2);C2=class extends Nf{constructor(e,t,i,o=!1){let s=Xe("div.diff-hidden-lines-widget");super(e,t,s.root),this._unchangedRegion=i,this._hide=o,this._nodes=Xe("div.diff-hidden-lines-compact",[Xe("div.line-left",[]),Xe("div.text@text",[]),Xe("div.line-right",[])]),s.root.appendChild(this._nodes.root),this._hide&&this._nodes.root.replaceChildren(),this._register(qe(r=>{if(!this._hide){let a=this._unchangedRegion.getHiddenModifiedRange(r).length,l=p("hiddenLines","{0} hidden lines",a);this._nodes.text.innerText=l}}))}},y2=class extends Nf{constructor(e,t,i,o,s,r,a,l){let c=Xe("div.diff-hidden-lines-widget");super(e,t,c.root),this._editor=e,this._unchangedRegion=i,this._unchangedRegionRange=o,this._hide=s,this._modifiedOutlineSource=r,this._revealModifiedHiddenLine=a,this._options=l,this._nodes=Xe("div.diff-hidden-lines",[Xe("div.top@top",{title:p("diff.hiddenLines.top","Click or drag to show more above")}),Xe("div.center@content",{style:{display:"flex"}},[Xe("div@first",{style:{display:"flex",justifyContent:"center",alignItems:"center",flexShrink:"0"}},[he("a",{title:p("showUnchangedRegion","Show Unchanged Region"),role:"button",onclick:()=>{this._unchangedRegion.showAll(void 0)}},...Br("$(unfold)"))]),Xe("div@others",{style:{display:"flex",justifyContent:"center",alignItems:"center"}})]),Xe("div.bottom@bottom",{title:p("diff.bottom","Click or drag to show more below"),role:"button"})]),c.root.appendChild(this._nodes.root),this._hide?Ti(this._nodes.first):this._register(hr(this._nodes.first,{width:Ih(this._editor).layoutInfoContentLeft})),this._register(qe(h=>{let u=this._unchangedRegion.visibleLineCountTop.read(h)+this._unchangedRegion.visibleLineCountBottom.read(h)===this._unchangedRegion.lineCount;this._nodes.bottom.classList.toggle("canMoveTop",!u),this._nodes.bottom.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0),this._nodes.top.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),this._nodes.top.classList.toggle("canMoveBottom",!u);let f=this._unchangedRegion.isDragged.read(h),g=this._editor.getDomNode();g&&(g.classList.toggle("draggingUnchangedRegion",!!f),f==="top"?(g.classList.toggle("canMoveTop",this._unchangedRegion.visibleLineCountTop.read(h)>0),g.classList.toggle("canMoveBottom",!u)):f==="bottom"?(g.classList.toggle("canMoveTop",!u),g.classList.toggle("canMoveBottom",this._unchangedRegion.visibleLineCountBottom.read(h)>0)):(g.classList.toggle("canMoveTop",!1),g.classList.toggle("canMoveBottom",!1)))}));let d=this._editor;this._register(B(this._nodes.top,"mousedown",h=>{if(h.button!==0)return;this._nodes.top.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();let u=h.clientY,f=!1,g=this._unchangedRegion.visibleLineCountTop.get();this._unchangedRegion.isDragged.set("top",void 0);let m=se(this._nodes.top),_=B(m,"mousemove",v=>{let w=v.clientY-u;f=f||Math.abs(w)>2;let S=Math.round(w/d.getOption(67)),L=Math.max(0,Math.min(g+S,this._unchangedRegion.getMaxVisibleLineCountTop()));this._unchangedRegion.visibleLineCountTop.set(L,void 0)}),b=B(m,"mouseup",v=>{f||this._unchangedRegion.showMoreAbove(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0),this._nodes.top.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),this._unchangedRegion.isDragged.set(void 0,void 0),_.dispose(),b.dispose()})})),this._register(B(this._nodes.bottom,"mousedown",h=>{if(h.button!==0)return;this._nodes.bottom.classList.toggle("dragging",!0),this._nodes.root.classList.toggle("dragging",!0),h.preventDefault();let u=h.clientY,f=!1,g=this._unchangedRegion.visibleLineCountBottom.get();this._unchangedRegion.isDragged.set("bottom",void 0);let m=se(this._nodes.bottom),_=B(m,"mousemove",v=>{let w=v.clientY-u;f=f||Math.abs(w)>2;let S=Math.round(w/d.getOption(67)),L=Math.max(0,Math.min(g-S,this._unchangedRegion.getMaxVisibleLineCountBottom())),x=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.visibleLineCountBottom.set(L,void 0);let D=this._unchangedRegionRange.endLineNumberExclusive>d.getModel().getLineCount()?d.getContentHeight():d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(D-x))}),b=B(m,"mouseup",v=>{if(this._unchangedRegion.isDragged.set(void 0,void 0),!f){let C=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);this._unchangedRegion.showMoreBelow(this._options.hideUnchangedRegionsRevealLineCount.get(),void 0);let w=d.getTopForLineNumber(this._unchangedRegionRange.endLineNumberExclusive);d.setScrollTop(d.getScrollTop()+(w-C))}this._nodes.bottom.classList.toggle("dragging",!1),this._nodes.root.classList.toggle("dragging",!1),_.dispose(),b.dispose()})})),this._register(qe(h=>{let u=[];if(!this._hide){let f=i.getHiddenModifiedRange(h).length,g=p("hiddenLines","{0} hidden lines",f),m=he("span",{title:p("diff.hiddenLines.expandAll","Double click to unfold")},g);m.addEventListener("dblclick",v=>{v.button===0&&(v.preventDefault(),this._unchangedRegion.showAll(void 0))}),u.push(m);let _=this._unchangedRegion.getHiddenModifiedRange(h),b=this._modifiedOutlineSource.getBreadcrumbItems(_,h);if(b.length>0){u.push(he("span",void 0,"\xA0\xA0|\xA0\xA0"));for(let v=0;v<b.length;v++){let C=b[v],w=Y0.toIcon(C.kind),S=Xe("div.breadcrumb-item",{style:{display:"flex",alignItems:"center"}},[cm(w),"\xA0",C.name,...v===b.length-1?[]:[cm(re.chevronRight)]]).root;u.push(S),S.onclick=()=>{this._revealModifiedHiddenLine(C.startLineNumber)}}}}Ti(this._nodes.others,...u)}))}}});var r9,kK,F2,DK=$(()=>{kd();li();Qo();mr();Te();Ar();ke();r9=pe("IEditorCancelService"),kK=new ge("cancellableOperation",!1,p("cancellableOperation","Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));Je(r9,class{constructor(){this._tokens=new WeakMap}add(n,e){let t=this._tokens.get(n);t||(t=n.invokeWithinContext(o=>{let s=kK.bindTo(o.get(Ve)),r=new yi;return{key:s,tokens:r}}),this._tokens.set(n,t));let i;return t.key.set(!0),i=t.tokens.push(e),()=>{i&&(i(),t.key.set(!t.tokens.isEmpty()),i=void 0)}}cancel(n){let e=this._tokens.get(n);if(!e)return;let t=e.tokens.pop();t&&(t.cancel(),e.key.set(!e.tokens.isEmpty()))}},1);F2=class extends on{constructor(e,t){super(t),this.editor=e,this._unregister=e.invokeWithinContext(i=>i.get(r9).add(e,this))}dispose(){this._unregister(),super.dispose()}};Be(new class extends Xa{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:kK})}runEditorCommand(n,e){n.get(r9).cancel(e)}})});var EK,u0,f0,IK=$(()=>{$e();Ee();Qo();X();DK();EK=class n{constructor(e,t){if(this.flags=t,(this.flags&1)!==0){let i=e.getModel();this.modelVersionId=i?$h("{0}#{1}",i.uri.toString(),i.getVersionId()):null}else this.modelVersionId=null;(this.flags&4)!==0?this.position=e.getPosition():this.position=null,(this.flags&2)!==0?this.selection=e.getSelection():this.selection=null,(this.flags&8)!==0?(this.scrollLeft=e.getScrollLeft(),this.scrollTop=e.getScrollTop()):(this.scrollLeft=-1,this.scrollTop=-1)}_equals(e){if(!(e instanceof n))return!1;let t=e;return!(this.modelVersionId!==t.modelVersionId||this.scrollLeft!==t.scrollLeft||this.scrollTop!==t.scrollTop||!this.position&&t.position||this.position&&!t.position||this.position&&t.position&&!this.position.equals(t.position)||!this.selection&&t.selection||this.selection&&!t.selection||this.selection&&t.selection&&!this.selection.equalsRange(t.selection))}validate(e){return this._equals(new n(e,this.flags))}},u0=class extends F2{constructor(e,t,i,o){super(e,o),this._listener=new Q,t&4&&this._listener.add(e.onDidChangeCursorPosition(s=>{(!i||!k.containsPosition(i,s.position))&&this.cancel()})),t&2&&this._listener.add(e.onDidChangeCursorSelection(s=>{(!i||!k.containsRange(i,s.selection))&&this.cancel()})),t&8&&this._listener.add(e.onDidScrollChange(s=>this.cancel())),t&1&&(this._listener.add(e.onDidChangeModel(s=>this.cancel())),this._listener.add(e.onDidChangeModelContent(s=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}},f0=class extends on{constructor(e,t){super(t),this._listener=e.onDidChangeContent(()=>this.cancel())}dispose(){this._listener.dispose(),super.dispose()}}});var toe={};NK(toe,{CancellationTokenSource:()=>zne,Emitter:()=>Vne,KeyCode:()=>Hne,KeyMod:()=>Une,MarkerSeverity:()=>Gne,MarkerTag:()=>Zne,Position:()=>$ne,Range:()=>qne,Selection:()=>Kne,SelectionDirection:()=>jne,Token:()=>Qne,Uri:()=>Yne,editor:()=>Xne,languages:()=>Jne});tt();ys();dt();v_();Kf();ke();var Xr=8,Zf=class{constructor(e){this._values=e}hasChanged(e){return this._values[e]}},y_=class{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}},At=class{constructor(e,t,i,o){this.id=e,this.name=t,this.defaultValue=i,this.schema=o}applyUpdate(e,t){return N0(e,t)}compute(e,t,i){return i}},id=class{constructor(e,t){this.newValue=e,this.didChange=t}};function N0(n,e){if(typeof n!="object"||typeof e!="object"||!n||!e)return new id(e,n!==e);if(Array.isArray(n)||Array.isArray(e)){let i=Array.isArray(n)&&Array.isArray(e)&&xt(n,e);return new id(e,!i)}let t=!1;for(let i in e)if(e.hasOwnProperty(i)){let o=N0(n[i],e[i]);o.didChange&&(n[i]=o.newValue,t=!0)}return new id(n,t)}var Fh=class{constructor(e){this.schema=void 0,this.id=e,this.name="_never_",this.defaultValue=void 0}applyUpdate(e,t){return N0(e,t)}validate(e){return this.defaultValue}},nd=class{constructor(e,t,i,o){this.id=e,this.name=t,this.defaultValue=i,this.schema=o}applyUpdate(e,t){return N0(e,t)}validate(e){return typeof e>"u"?this.defaultValue:e}compute(e,t,i){return i}};function ue(n,e){return typeof n>"u"?e:n==="false"?!1:!!n}var rt=class extends nd{constructor(e,t,i,o=void 0){typeof o<"u"&&(o.type="boolean",o.default=i),super(e,t,i,o)}validate(e){return ue(e,this.defaultValue)}};function od(n,e,t,i){if(typeof n>"u")return e;let o=parseInt(n,10);return isNaN(o)?e:(o=Math.max(t,o),o=Math.min(i,o),o|0)}var It=class n extends nd{static clampedInt(e,t,i,o){return od(e,t,i,o)}constructor(e,t,i,o,s,r=void 0){typeof r<"u"&&(r.type="integer",r.default=i,r.minimum=o,r.maximum=s),super(e,t,i,r),this.minimum=o,this.maximum=s}validate(e){return n.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}};function H9(n,e,t,i){if(typeof n>"u")return e;let o=xs.float(n,e);return xs.clamp(o,t,i)}var xs=class n extends nd{static clamp(e,t,i){return e<t?t:e>i?i:e}static float(e,t){if(typeof e=="number")return e;if(typeof e>"u")return t;let i=parseFloat(e);return isNaN(i)?t:i}constructor(e,t,i,o,s){typeof s<"u"&&(s.type="number",s.default=i),super(e,t,i,s),this.validationFn=o}validate(e){return this.validationFn(n.float(e,this.defaultValue))}},io=class n extends nd{static string(e,t){return typeof e!="string"?t:e}constructor(e,t,i,o=void 0){typeof o<"u"&&(o.type="string",o.default=i),super(e,t,i,o)}validate(e){return n.string(e,this.defaultValue)}};function si(n,e,t,i){return typeof n!="string"?e:i&&n in i?i[n]:t.indexOf(n)===-1?e:n}var Jt=class extends nd{constructor(e,t,i,o,s=void 0){typeof s<"u"&&(s.type="string",s.enum=o,s.default=i),super(e,t,i,s),this._allowedValues=o}validate(e){return si(e,this.defaultValue,this._allowedValues)}},jf=class extends At{constructor(e,t,i,o,s,r,a=void 0){typeof a<"u"&&(a.type="string",a.enum=s,a.default=o),super(e,t,i,a),this._allowedValues=s,this._convert=r}validate(e){return typeof e!="string"?this.defaultValue:this._allowedValues.indexOf(e)===-1?this.defaultValue:this._convert(e)}};function jK(n){switch(n){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}var J2=class extends At{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[p("accessibilitySupport.auto","Use platform APIs to detect when a Screen Reader is attached."),p("accessibilitySupport.on","Optimize for usage with a Screen Reader."),p("accessibilitySupport.off","Assume a screen reader is not attached.")],default:"auto",tags:["accessibility"],description:p("accessibilitySupport","Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(e,t,i){return i===0?e.accessibilitySupport:i}},eT=class extends At{constructor(){let e={insertSpace:!0,ignoreEmptyLines:!0};super(23,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:p("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:p("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{insertSpace:ue(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:ue(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}};function GK(n){switch(n){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var Yi;(function(n){n[n.Line=1]="Line",n[n.Block=2]="Block",n[n.Underline=3]="Underline",n[n.LineThin=4]="LineThin",n[n.BlockOutline=5]="BlockOutline",n[n.UnderlineThin=6]="UnderlineThin"})(Yi||(Yi={}));function ZK(n){switch(n){case"line":return Yi.Line;case"block":return Yi.Block;case"underline":return Yi.Underline;case"line-thin":return Yi.LineThin;case"block-outline":return Yi.BlockOutline;case"underline-thin":return Yi.UnderlineThin}}var tT=class extends Fh{constructor(){super(143)}compute(e,t,i){let o=["monaco-editor"];return t.get(39)&&o.push(t.get(39)),e.extraEditorClassName&&o.push(e.extraEditorClassName),t.get(74)==="default"?o.push("mouse-default"):t.get(74)==="copy"&&o.push("mouse-copy"),t.get(112)&&o.push("showUnused"),t.get(141)&&o.push("showDeprecated"),o.join(" ")}},iT=class extends rt{constructor(){super(37,"emptySelectionClipboard",!0,{description:p("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(e,t,i){return i&&e.emptySelectionClipboard}},nT=class extends At{constructor(){let e={cursorMoveOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};super(41,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:p("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:e.seedSearchStringFromSelection,enumDescriptions:[p("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),p("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),p("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:p("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:e.autoFindInSelection,enumDescriptions:[p("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),p("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),p("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:p("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:p("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:De},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:p("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:e.loop,description:p("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{cursorMoveOnType:ue(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:typeof e.seedSearchStringFromSelection=="boolean"?e.seedSearchStringFromSelection?"always":"never":si(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof e.autoFindInSelection=="boolean"?e.autoFindInSelection?"always":"never":si(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:ue(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:ue(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:ue(t.loop,this.defaultValue.loop)}}},Qr=class n extends At{static{this.OFF='"liga" off, "calt" off'}static{this.ON='"liga" on, "calt" on'}constructor(){super(51,"fontLigatures",n.OFF,{anyOf:[{type:"boolean",description:p("fontLigatures","Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:p("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:p("fontLigaturesGeneral","Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"||e.length===0?n.OFF:e==="true"?n.ON:e:e?n.ON:n.OFF}},Yf=class n extends At{static{this.OFF="normal"}static{this.TRANSLATE="translate"}constructor(){super(54,"fontVariations",n.OFF,{anyOf:[{type:"boolean",description:p("fontVariations","Enables/Disables the translation from font-weight to font-variation-settings. Change this to a string for fine-grained control of the 'font-variation-settings' CSS property.")},{type:"string",description:p("fontVariationSettings","Explicit 'font-variation-settings' CSS property. A boolean can be passed instead if one only needs to translate font-weight to font-variation-settings.")}],description:p("fontVariationsGeneral","Configures font variations. Can be either a boolean to enable/disable the translation from font-weight to font-variation-settings or a string for the value of the CSS 'font-variation-settings' property."),default:!1})}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e==="false"?n.OFF:e==="true"?n.TRANSLATE:e:e?n.TRANSLATE:n.OFF}compute(e,t,i){return e.fontInfo.fontVariationSettings}},oT=class extends Fh{constructor(){super(50)}compute(e,t,i){return e.fontInfo}},sT=class extends nd{constructor(){super(52,"fontSize",po.fontSize,{type:"number",minimum:6,maximum:100,default:po.fontSize,description:p("fontSize","Controls the font size in pixels.")})}validate(e){let t=xs.float(e,this.defaultValue);return t===0?po.fontSize:xs.clamp(t,6,100)}compute(e,t,i){return e.fontInfo.fontSize}},rT=class n extends At{static{this.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"]}static{this.MINIMUM_VALUE=1}static{this.MAXIMUM_VALUE=1e3}constructor(){super(53,"fontWeight",po.fontWeight,{anyOf:[{type:"number",minimum:n.MINIMUM_VALUE,maximum:n.MAXIMUM_VALUE,errorMessage:p("fontWeightErrorMessage",'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:n.SUGGESTION_VALUES}],default:po.fontWeight,description:p("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(e){return e==="normal"||e==="bold"?e:String(It.clampedInt(e,po.fontWeight,n.MINIMUM_VALUE,n.MAXIMUM_VALUE))}},aT=class extends At{constructor(){let e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",multipleTests:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:"",alternativeTestsCommand:""},t={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[p("editor.gotoLocation.multiple.peek","Show Peek view of the results (default)"),p("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a Peek view"),p("editor.gotoLocation.multiple.goto","Go to the primary result and enable Peek-less navigation to others")]},i=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(58,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:p("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":{description:p("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleTypeDefinitions":{description:p("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleDeclarations":{description:p("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleImplementations":{description:p("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist."),...t},"editor.gotoLocation.multipleReferences":{description:p("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist."),...t},"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:e.alternativeDefinitionCommand,enum:i,description:p("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:e.alternativeTypeDefinitionCommand,enum:i,description:p("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:e.alternativeDeclarationCommand,enum:i,description:p("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:e.alternativeImplementationCommand,enum:i,description:p("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:e.alternativeReferenceCommand,enum:i,description:p("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{multiple:si(t.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:t.multipleDefinitions??si(t.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:t.multipleTypeDefinitions??si(t.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:t.multipleDeclarations??si(t.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:t.multipleImplementations??si(t.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:t.multipleReferences??si(t.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),multipleTests:t.multipleTests??si(t.multipleTests,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:io.string(t.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:io.string(t.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:io.string(t.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:io.string(t.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:io.string(t.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand),alternativeTestsCommand:io.string(t.alternativeTestsCommand,this.defaultValue.alternativeTestsCommand)}}},lT=class extends At{constructor(){let e={enabled:!0,delay:300,hidingDelay:300,sticky:!0,above:!0};super(60,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:p("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,minimum:0,maximum:1e4,description:p("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:p("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.hidingDelay":{type:"integer",minimum:0,default:e.hidingDelay,description:p("hover.hidingDelay","Controls the delay in milliseconds after which the hover is hidden. Requires `editor.hover.sticky` to be enabled.")},"editor.hover.above":{type:"boolean",default:e.above,description:p("hover.above","Prefer showing hovers above the line, if there's space.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),delay:It.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:ue(t.sticky,this.defaultValue.sticky),hidingDelay:It.clampedInt(t.hidingDelay,this.defaultValue.hidingDelay,0,6e5),above:ue(t.above,this.defaultValue.above)}}},S_=class n extends Fh{constructor(){super(146)}compute(e,t,i){return n.computeLayout(t,{memory:e.memory,outerWidth:e.outerWidth,outerHeight:e.outerHeight,isDominatedByLongLines:e.isDominatedByLongLines,lineHeight:e.fontInfo.lineHeight,viewLineCount:e.viewLineCount,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio,glyphMarginDecorationLaneCount:e.glyphMarginDecorationLaneCount})}static computeContainedMinimapLineCount(e){let t=e.height/e.lineHeight,i=Math.floor(e.paddingTop/e.lineHeight),o=Math.floor(e.paddingBottom/e.lineHeight);e.scrollBeyondLastLine&&(o=Math.max(o,t-1));let s=(i+e.viewLineCount+o)/(e.pixelRatio*e.height),r=Math.floor(e.viewLineCount/s);return{typicalViewportLineCount:t,extraLinesBeforeFirstLine:i,extraLinesBeyondLastLine:o,desiredRatio:s,minimapLineCount:r}}static _computeMinimapLayout(e,t){let i=e.outerWidth,o=e.outerHeight,s=e.pixelRatio;if(!e.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(s*o),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:o};let r=t.stableMinimapLayoutInput,a=r&&e.outerHeight===r.outerHeight&&e.lineHeight===r.lineHeight&&e.typicalHalfwidthCharacterWidth===r.typicalHalfwidthCharacterWidth&&e.pixelRatio===r.pixelRatio&&e.scrollBeyondLastLine===r.scrollBeyondLastLine&&e.paddingTop===r.paddingTop&&e.paddingBottom===r.paddingBottom&&e.minimap.enabled===r.minimap.enabled&&e.minimap.side===r.minimap.side&&e.minimap.size===r.minimap.size&&e.minimap.showSlider===r.minimap.showSlider&&e.minimap.renderCharacters===r.minimap.renderCharacters&&e.minimap.maxColumn===r.minimap.maxColumn&&e.minimap.scale===r.minimap.scale&&e.verticalScrollbarWidth===r.verticalScrollbarWidth&&e.isViewportWrapping===r.isViewportWrapping,l=e.lineHeight,c=e.typicalHalfwidthCharacterWidth,d=e.scrollBeyondLastLine,h=e.minimap.renderCharacters,u=s>=2?Math.round(e.minimap.scale*2):e.minimap.scale,f=e.minimap.maxColumn,g=e.minimap.size,m=e.minimap.side,_=e.verticalScrollbarWidth,b=e.viewLineCount,v=e.remainingWidth,C=e.isViewportWrapping,w=h?2:3,S=Math.floor(s*o),L=S/s,x=!1,D=!1,E=w*u,U=u/s,F=1;if(g==="fill"||g==="fit"){let{typicalViewportLineCount:ae,extraLinesBeforeFirstLine:J,extraLinesBeyondLastLine:be,desiredRatio:xe,minimapLineCount:mt}=n.computeContainedMinimapLineCount({viewLineCount:b,scrollBeyondLastLine:d,paddingTop:e.paddingTop,paddingBottom:e.paddingBottom,height:o,lineHeight:l,pixelRatio:s});if(b/mt>1)x=!0,D=!0,u=1,E=1,U=u/s;else{let mi=!1,pt=u+1;if(g==="fit"){let Pi=Math.ceil((J+b+be)*E);C&&a&&v<=t.stableFitRemainingWidth?(mi=!0,pt=t.stableFitMaxMinimapScale):mi=Pi>S}if(g==="fill"||mi){x=!0;let Pi=u;E=Math.min(l*s,Math.max(1,Math.floor(1/xe))),C&&a&&v<=t.stableFitRemainingWidth&&(pt=t.stableFitMaxMinimapScale),u=Math.min(pt,Math.max(1,Math.floor(E/w))),u>Pi&&(F=Math.min(2,u/Pi)),U=u/s/F,S=Math.ceil(Math.max(ae,J+b+be)*E),C?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=v,t.stableFitMaxMinimapScale=u):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0)}}}let W=Math.floor(f*U),ie=Math.min(W,Math.max(0,Math.floor((v-_-2)*U/(c+U)))+Xr),z=Math.floor(s*ie),q=z/s;z=Math.floor(z*F);let ne=h?1:2,ee=m==="left"?0:i-ie-_;return{renderMinimap:ne,minimapLeft:ee,minimapWidth:ie,minimapHeightIsEditorHeight:x,minimapIsSampling:D,minimapScale:u,minimapLineHeight:E,minimapCanvasInnerWidth:z,minimapCanvasInnerHeight:S,minimapCanvasOuterWidth:q,minimapCanvasOuterHeight:L}}static computeLayout(e,t){let i=t.outerWidth|0,o=t.outerHeight|0,s=t.lineHeight|0,r=t.lineNumbersDigitCount|0,a=t.typicalHalfwidthCharacterWidth,l=t.maxDigitWidth,c=t.pixelRatio,d=t.viewLineCount,h=e.get(138),u=h==="inherit"?e.get(137):h,f=u==="inherit"?e.get(133):u,g=e.get(136),m=t.isDominatedByLongLines,_=e.get(57),b=e.get(68).renderType!==0,v=e.get(69),C=e.get(106),w=e.get(84),S=e.get(73),L=e.get(104),x=L.verticalScrollbarSize,D=L.verticalHasArrows,E=L.arrowSize,U=L.horizontalScrollbarSize,F=e.get(43),W=e.get(111)!=="never",ie=e.get(66);F&&W&&(ie+=16);let z=0;if(b){let Oi=Math.max(r,v);z=Math.round(Oi*l)}let q=0;_&&(q=s*t.glyphMarginDecorationLaneCount);let ne=0,ee=ne+q,ae=ee+z,J=ae+ie,be=i-q-z-ie,xe=!1,mt=!1,bt=-1;u==="inherit"&&m?(xe=!0,mt=!0):f==="on"||f==="bounded"?mt=!0:f==="wordWrapColumn"&&(bt=g);let mi=n._computeMinimapLayout({outerWidth:i,outerHeight:o,lineHeight:s,typicalHalfwidthCharacterWidth:a,pixelRatio:c,scrollBeyondLastLine:C,paddingTop:w.top,paddingBottom:w.bottom,minimap:S,verticalScrollbarWidth:x,viewLineCount:d,remainingWidth:be,isViewportWrapping:mt},t.memory||new y_);mi.renderMinimap!==0&&mi.minimapLeft===0&&(ne+=mi.minimapWidth,ee+=mi.minimapWidth,ae+=mi.minimapWidth,J+=mi.minimapWidth);let pt=be-mi.minimapWidth,Pi=Math.max(1,Math.floor((pt-x-2)/a)),Ro=D?E:0;return mt&&(bt=Math.max(1,Pi),f==="bounded"&&(bt=Math.min(bt,g))),{width:i,height:o,glyphMarginLeft:ne,glyphMarginWidth:q,glyphMarginDecorationLaneCount:t.glyphMarginDecorationLaneCount,lineNumbersLeft:ee,lineNumbersWidth:z,decorationsLeft:ae,decorationsWidth:ie,contentLeft:J,contentWidth:pt,minimap:mi,viewportColumn:Pi,isWordWrapMinified:xe,isViewportWrapping:mt,wrappingColumn:bt,verticalScrollbarWidth:x,horizontalScrollbarHeight:U,overviewRuler:{top:Ro,width:x,height:o-2*Ro,right:0}}}},cT=class extends At{constructor(){super(140,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[p("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),p("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],type:"string",enum:["simple","advanced"],default:"simple",description:p("wrappingStrategy","Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(e){return si(e,"simple",["simple","advanced"])}compute(e,t,i){return t.get(2)===2?"advanced":i}},tc;(function(n){n.Off="off",n.OnCode="onCode",n.On="on"})(tc||(tc={}));var dT=class extends At{constructor(){let e={enabled:tc.OnCode};super(65,"lightbulb",e,{"editor.lightbulb.enabled":{type:"string",tags:["experimental"],enum:[tc.Off,tc.OnCode,tc.On],default:e.enabled,enumDescriptions:[p("editor.lightbulb.enabled.off","Disable the code action menu."),p("editor.lightbulb.enabled.onCode","Show the code action menu when the cursor is on lines with code."),p("editor.lightbulb.enabled.on","Show the code action menu when the cursor is on lines with code or on empty lines.")],description:p("enabled","Enables the Code Action lightbulb in the editor.")}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{enabled:si(e.enabled,this.defaultValue.enabled,[tc.Off,tc.OnCode,tc.On])}}},hT=class extends At{constructor(){let e={enabled:!0,maxLineCount:5,defaultModel:"outlineModel",scrollWithEditor:!0};super(116,"stickyScroll",e,{"editor.stickyScroll.enabled":{type:"boolean",default:e.enabled,description:p("editor.stickyScroll.enabled","Shows the nested current scopes during the scroll at the top of the editor."),tags:["experimental"]},"editor.stickyScroll.maxLineCount":{type:"number",default:e.maxLineCount,minimum:1,maximum:20,description:p("editor.stickyScroll.maxLineCount","Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:e.defaultModel,description:p("editor.stickyScroll.defaultModel","Defines the model to use for determining which lines to stick. If the outline model does not exist, it will fall back on the folding provider model which falls back on the indentation model. This order is respected in all three cases.")},"editor.stickyScroll.scrollWithEditor":{type:"boolean",default:e.scrollWithEditor,description:p("editor.stickyScroll.scrollWithEditor","Enable scrolling of Sticky Scroll with the editor's horizontal scrollbar.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),maxLineCount:It.clampedInt(t.maxLineCount,this.defaultValue.maxLineCount,1,20),defaultModel:si(t.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"]),scrollWithEditor:ue(t.scrollWithEditor,this.defaultValue.scrollWithEditor)}}},uT=class extends At{constructor(){let e={enabled:"on",fontSize:0,fontFamily:"",padding:!1};super(142,"inlayHints",e,{"editor.inlayHints.enabled":{type:"string",default:e.enabled,description:p("inlayHints.enable","Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[p("editor.inlayHints.on","Inlay hints are enabled"),p("editor.inlayHints.onUnlessPressed","Inlay hints are showing by default and hide when holding {0}",De?"Ctrl+Option":"Ctrl+Alt"),p("editor.inlayHints.offUnlessPressed","Inlay hints are hidden by default and show when holding {0}",De?"Ctrl+Option":"Ctrl+Alt"),p("editor.inlayHints.off","Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:e.fontSize,markdownDescription:p("inlayHints.fontSize","Controls font size of inlay hints in the editor. As default the {0} is used when the configured value is less than {1} or greater than the editor font size.","`#editor.fontSize#`","`5`")},"editor.inlayHints.fontFamily":{type:"string",default:e.fontFamily,markdownDescription:p("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the {0} is used.","`#editor.fontFamily#`")},"editor.inlayHints.padding":{type:"boolean",default:e.padding,description:p("inlayHints.padding","Enables the padding around the inlay hints in the editor.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return typeof t.enabled=="boolean"&&(t.enabled=t.enabled?"on":"off"),{enabled:si(t.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:It.clampedInt(t.fontSize,this.defaultValue.fontSize,0,100),fontFamily:io.string(t.fontFamily,this.defaultValue.fontFamily),padding:ue(t.padding,this.defaultValue.padding)}}},fT=class extends At{constructor(){super(66,"lineDecorationsWidth",10)}validate(e){return typeof e=="string"&&/^\d+(\.\d+)?ch$/.test(e)?-parseFloat(e.substring(0,e.length-2)):It.clampedInt(e,this.defaultValue,0,1e3)}compute(e,t,i){return i<0?It.clampedInt(-i*e.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):i}},gT=class extends xs{constructor(){super(67,"lineHeight",po.lineHeight,e=>xs.clamp(e,0,150),{markdownDescription:p("lineHeight",`Controls the line height.
|
|
61
61
|
- Use 0 to automatically compute the line height from the font size.
|
|
62
62
|
- Values between 0 and 8 will be used as a multiplier with the font size.
|
|
63
63
|
- Values greater than or equal to 8 will be used as effective values.`)})}compute(e,t,i){return e.fontInfo.lineHeight}},mT=class extends At{constructor(){let e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:!1,renderCharacters:!0,maxColumn:120,scale:1,showRegionSectionHeaders:!0,showMarkSectionHeaders:!0,sectionHeaderFontSize:9,sectionHeaderLetterSpacing:1};super(73,"minimap",e,{"editor.minimap.enabled":{type:"boolean",default:e.enabled,description:p("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.autohide":{type:"boolean",default:e.autohide,description:p("minimap.autohide","Controls whether the minimap is hidden automatically.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[p("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),p("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),p("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:e.size,description:p("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:e.side,description:p("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:e.showSlider,description:p("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:e.scale,minimum:1,maximum:3,enum:[1,2,3],description:p("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:e.renderCharacters,description:p("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:e.maxColumn,description:p("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")},"editor.minimap.showRegionSectionHeaders":{type:"boolean",default:e.showRegionSectionHeaders,description:p("minimap.showRegionSectionHeaders","Controls whether named regions are shown as section headers in the minimap.")},"editor.minimap.showMarkSectionHeaders":{type:"boolean",default:e.showMarkSectionHeaders,description:p("minimap.showMarkSectionHeaders","Controls whether MARK: comments are shown as section headers in the minimap.")},"editor.minimap.sectionHeaderFontSize":{type:"number",default:e.sectionHeaderFontSize,description:p("minimap.sectionHeaderFontSize","Controls the font size of section headers in the minimap.")},"editor.minimap.sectionHeaderLetterSpacing":{type:"number",default:e.sectionHeaderLetterSpacing,description:p("minimap.sectionHeaderLetterSpacing","Controls the amount of space (in pixels) between characters of section header. This helps the readability of the header in small font sizes.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),autohide:ue(t.autohide,this.defaultValue.autohide),size:si(t.size,this.defaultValue.size,["proportional","fill","fit"]),side:si(t.side,this.defaultValue.side,["right","left"]),showSlider:si(t.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:ue(t.renderCharacters,this.defaultValue.renderCharacters),scale:It.clampedInt(t.scale,1,1,3),maxColumn:It.clampedInt(t.maxColumn,this.defaultValue.maxColumn,1,1e4),showRegionSectionHeaders:ue(t.showRegionSectionHeaders,this.defaultValue.showRegionSectionHeaders),showMarkSectionHeaders:ue(t.showMarkSectionHeaders,this.defaultValue.showMarkSectionHeaders),sectionHeaderFontSize:xs.clamp(t.sectionHeaderFontSize??this.defaultValue.sectionHeaderFontSize,4,32),sectionHeaderLetterSpacing:xs.clamp(t.sectionHeaderLetterSpacing??this.defaultValue.sectionHeaderLetterSpacing,0,5)}}};function YK(n){return n==="ctrlCmd"?De?"metaKey":"ctrlKey":"altKey"}var pT=class extends At{constructor(){super(84,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:p("padding.top","Controls the amount of space between the top edge of the editor and the first line.")},"editor.padding.bottom":{type:"number",default:0,minimum:0,maximum:1e3,description:p("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{top:It.clampedInt(t.top,0,0,1e3),bottom:It.clampedInt(t.bottom,0,0,1e3)}}},_T=class extends At{constructor(){let e={enabled:!0,cycle:!0};super(86,"parameterHints",e,{"editor.parameterHints.enabled":{type:"boolean",default:e.enabled,description:p("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:e.cycle,description:p("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),cycle:ue(t.cycle,this.defaultValue.cycle)}}},bT=class extends Fh{constructor(){super(144)}compute(e,t,i){return e.pixelRatio}},vT=class extends At{constructor(){super(88,"placeholder",void 0)}validate(e){return typeof e>"u"?this.defaultValue:typeof e=="string"?e:this.defaultValue}},wT=class extends At{constructor(){let e={other:"on",comments:"off",strings:"off"},t=[{type:"boolean"},{type:"string",enum:["on","inline","off"],enumDescriptions:[p("on","Quick suggestions show inside the suggest widget"),p("inline","Quick suggestions show as ghost text"),p("off","Quick suggestions are disabled")]}];super(90,"quickSuggestions",e,{type:"object",additionalProperties:!1,properties:{strings:{anyOf:t,default:e.strings,description:p("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{anyOf:t,default:e.comments,description:p("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{anyOf:t,default:e.other,description:p("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}},default:e,markdownDescription:p("quickSuggestions","Controls whether suggestions should automatically show up while typing. This can be controlled for typing in comments, strings, and other code. Quick suggestion can be configured to show as ghost text or with the suggest widget. Also be aware of the {0}-setting which controls if suggestions are triggered by special characters.","`#editor.suggestOnTriggerCharacters#`")}),this.defaultValue=e}validate(e){if(typeof e=="boolean"){let c=e?"on":"off";return{comments:c,strings:c,other:c}}if(!e||typeof e!="object")return this.defaultValue;let{other:t,comments:i,strings:o}=e,s=["on","inline","off"],r,a,l;return typeof t=="boolean"?r=t?"on":"off":r=si(t,this.defaultValue.other,s),typeof i=="boolean"?a=i?"on":"off":a=si(i,this.defaultValue.comments,s),typeof o=="boolean"?l=o?"on":"off":l=si(o,this.defaultValue.strings,s),{other:r,comments:a,strings:l}}},CT=class extends At{constructor(){super(68,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[p("lineNumbers.off","Line numbers are not rendered."),p("lineNumbers.on","Line numbers are rendered as absolute number."),p("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),p("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:p("lineNumbers","Controls the display of line numbers.")})}validate(e){let t=this.defaultValue.renderType,i=this.defaultValue.renderFn;return typeof e<"u"&&(typeof e=="function"?(t=4,i=e):e==="interval"?t=3:e==="relative"?t=2:e==="on"?t=1:t=0),{renderType:t,renderFn:i}}};function Bh(n){let e=n.get(99);return e==="editable"?n.get(92):e!=="on"}var yT=class extends At{constructor(){let e=[],t={type:"number",description:p("rulers.size","Number of monospace characters at which this editor ruler will render.")};super(103,"rulers",e,{type:"array",items:{anyOf:[t,{type:["object"],properties:{column:t,color:{type:"string",description:p("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:e,description:p("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})}validate(e){if(Array.isArray(e)){let t=[];for(let i of e)if(typeof i=="number")t.push({column:It.clampedInt(i,0,0,1e4),color:null});else if(i&&typeof i=="object"){let o=i;t.push({column:It.clampedInt(o.column,0,0,1e4),color:o.color})}return t.sort((i,o)=>i.column-o.column),t}return this.defaultValue}},ST=class extends At{constructor(){super(93,"readOnlyMessage",void 0)}validate(e){return!e||typeof e!="object"?this.defaultValue:e}};function V9(n,e){if(typeof n!="string")return e;switch(n){case"hidden":return 2;case"visible":return 3;default:return 1}}var xT=class extends At{constructor(){let e={vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:12,horizontalSliderSize:12,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0,scrollByPage:!1,ignoreHorizontalScrollbarInContentHeight:!1};super(104,"scrollbar",e,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[p("scrollbar.vertical.auto","The vertical scrollbar will be visible only when necessary."),p("scrollbar.vertical.visible","The vertical scrollbar will always be visible."),p("scrollbar.vertical.fit","The vertical scrollbar will always be hidden.")],default:"auto",description:p("scrollbar.vertical","Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[p("scrollbar.horizontal.auto","The horizontal scrollbar will be visible only when necessary."),p("scrollbar.horizontal.visible","The horizontal scrollbar will always be visible."),p("scrollbar.horizontal.fit","The horizontal scrollbar will always be hidden.")],default:"auto",description:p("scrollbar.horizontal","Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:e.verticalScrollbarSize,description:p("scrollbar.verticalScrollbarSize","The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:e.horizontalScrollbarSize,description:p("scrollbar.horizontalScrollbarSize","The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:e.scrollByPage,description:p("scrollbar.scrollByPage","Controls whether clicks scroll by page or jump to click position.")},"editor.scrollbar.ignoreHorizontalScrollbarInContentHeight":{type:"boolean",default:e.ignoreHorizontalScrollbarInContentHeight,description:p("scrollbar.ignoreHorizontalScrollbarInContentHeight","When set, the horizontal scrollbar will not increase the size of the editor's content.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e,i=It.clampedInt(t.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),o=It.clampedInt(t.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:It.clampedInt(t.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:V9(t.vertical,this.defaultValue.vertical),horizontal:V9(t.horizontal,this.defaultValue.horizontal),useShadows:ue(t.useShadows,this.defaultValue.useShadows),verticalHasArrows:ue(t.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:ue(t.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:ue(t.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:ue(t.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:i,horizontalSliderSize:It.clampedInt(t.horizontalSliderSize,i,0,1e3),verticalScrollbarSize:o,verticalSliderSize:It.clampedInt(t.verticalSliderSize,o,0,1e3),scrollByPage:ue(t.scrollByPage,this.defaultValue.scrollByPage),ignoreHorizontalScrollbarInContentHeight:ue(t.ignoreHorizontalScrollbarInContentHeight,this.defaultValue.ignoreHorizontalScrollbarInContentHeight)}}},Yr="inUntrustedWorkspace",Oh={allowedCharacters:"editor.unicodeHighlight.allowedCharacters",invisibleCharacters:"editor.unicodeHighlight.invisibleCharacters",nonBasicASCII:"editor.unicodeHighlight.nonBasicASCII",ambiguousCharacters:"editor.unicodeHighlight.ambiguousCharacters",includeComments:"editor.unicodeHighlight.includeComments",includeStrings:"editor.unicodeHighlight.includeStrings",allowedLocales:"editor.unicodeHighlight.allowedLocales"},LT=class extends At{constructor(){let e={nonBasicASCII:Yr,invisibleCharacters:!0,ambiguousCharacters:!0,includeComments:Yr,includeStrings:!0,allowedCharacters:{},allowedLocales:{_os:!0,_vscode:!0}};super(126,"unicodeHighlight",e,{[Oh.nonBasicASCII]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,Yr],default:e.nonBasicASCII,description:p("unicodeHighlight.nonBasicASCII","Controls whether all non-basic ASCII characters are highlighted. Only characters between U+0020 and U+007E, tab, line-feed and carriage-return are considered basic ASCII.")},[Oh.invisibleCharacters]:{restricted:!0,type:"boolean",default:e.invisibleCharacters,description:p("unicodeHighlight.invisibleCharacters","Controls whether characters that just reserve space or have no width at all are highlighted.")},[Oh.ambiguousCharacters]:{restricted:!0,type:"boolean",default:e.ambiguousCharacters,description:p("unicodeHighlight.ambiguousCharacters","Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.")},[Oh.includeComments]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,Yr],default:e.includeComments,description:p("unicodeHighlight.includeComments","Controls whether characters in comments should also be subject to Unicode highlighting.")},[Oh.includeStrings]:{restricted:!0,type:["boolean","string"],enum:[!0,!1,Yr],default:e.includeStrings,description:p("unicodeHighlight.includeStrings","Controls whether characters in strings should also be subject to Unicode highlighting.")},[Oh.allowedCharacters]:{restricted:!0,type:"object",default:e.allowedCharacters,description:p("unicodeHighlight.allowedCharacters","Defines allowed characters that are not being highlighted."),additionalProperties:{type:"boolean"}},[Oh.allowedLocales]:{restricted:!0,type:"object",additionalProperties:{type:"boolean"},default:e.allowedLocales,description:p("unicodeHighlight.allowedLocales","Unicode characters that are common in allowed locales are not being highlighted.")}})}applyUpdate(e,t){let i=!1;t.allowedCharacters&&e&&(Gi(e.allowedCharacters,t.allowedCharacters)||(e={...e,allowedCharacters:t.allowedCharacters},i=!0)),t.allowedLocales&&e&&(Gi(e.allowedLocales,t.allowedLocales)||(e={...e,allowedLocales:t.allowedLocales},i=!0));let o=super.applyUpdate(e,t);return i?new id(o.newValue,!0):o}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{nonBasicASCII:Gf(t.nonBasicASCII,Yr,[!0,!1,Yr]),invisibleCharacters:ue(t.invisibleCharacters,this.defaultValue.invisibleCharacters),ambiguousCharacters:ue(t.ambiguousCharacters,this.defaultValue.ambiguousCharacters),includeComments:Gf(t.includeComments,Yr,[!0,!1,Yr]),includeStrings:Gf(t.includeStrings,Yr,[!0,!1,Yr]),allowedCharacters:this.validateBooleanMap(e.allowedCharacters,this.defaultValue.allowedCharacters),allowedLocales:this.validateBooleanMap(e.allowedLocales,this.defaultValue.allowedLocales)}}validateBooleanMap(e,t){if(typeof e!="object"||!e)return t;let i={};for(let[o,s]of Object.entries(e))s===!0&&(i[o]=!0);return i}},kT=class extends At{constructor(){let e={enabled:!0,mode:"subwordSmart",showToolbar:"onHover",suppressSuggestions:!1,keepOnBlur:!1,fontFamily:"default"};super(62,"inlineSuggest",e,{"editor.inlineSuggest.enabled":{type:"boolean",default:e.enabled,description:p("inlineSuggest.enabled","Controls whether to automatically show inline suggestions in the editor.")},"editor.inlineSuggest.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover","never"],enumDescriptions:[p("inlineSuggest.showToolbar.always","Show the inline suggestion toolbar whenever an inline suggestion is shown."),p("inlineSuggest.showToolbar.onHover","Show the inline suggestion toolbar when hovering over an inline suggestion."),p("inlineSuggest.showToolbar.never","Never show the inline suggestion toolbar.")],description:p("inlineSuggest.showToolbar","Controls when to show the inline suggestion toolbar.")},"editor.inlineSuggest.suppressSuggestions":{type:"boolean",default:e.suppressSuggestions,description:p("inlineSuggest.suppressSuggestions","Controls how inline suggestions interact with the suggest widget. If enabled, the suggest widget is not shown automatically when inline suggestions are available.")},"editor.inlineSuggest.fontFamily":{type:"string",default:e.fontFamily,description:p("inlineSuggest.fontFamily","Controls the font family of the inline suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),mode:si(t.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"]),showToolbar:si(t.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),suppressSuggestions:ue(t.suppressSuggestions,this.defaultValue.suppressSuggestions),keepOnBlur:ue(t.keepOnBlur,this.defaultValue.keepOnBlur),fontFamily:io.string(t.fontFamily,this.defaultValue.fontFamily)}}},DT=class extends At{constructor(){let e={enabled:!1,showToolbar:"onHover",fontFamily:"default",keepOnBlur:!1};super(63,"experimentalInlineEdit",e,{"editor.experimentalInlineEdit.enabled":{type:"boolean",default:e.enabled,description:p("inlineEdit.enabled","Controls whether to show inline edits in the editor.")},"editor.experimentalInlineEdit.showToolbar":{type:"string",default:e.showToolbar,enum:["always","onHover","never"],enumDescriptions:[p("inlineEdit.showToolbar.always","Show the inline edit toolbar whenever an inline suggestion is shown."),p("inlineEdit.showToolbar.onHover","Show the inline edit toolbar when hovering over an inline suggestion."),p("inlineEdit.showToolbar.never","Never show the inline edit toolbar.")],description:p("inlineEdit.showToolbar","Controls when to show the inline edit toolbar.")},"editor.experimentalInlineEdit.fontFamily":{type:"string",default:e.fontFamily,description:p("inlineEdit.fontFamily","Controls the font family of the inline edit.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),showToolbar:si(t.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),fontFamily:io.string(t.fontFamily,this.defaultValue.fontFamily),keepOnBlur:ue(t.keepOnBlur,this.defaultValue.keepOnBlur)}}},ET=class extends At{constructor(){let e={enabled:Zi.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:Zi.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(15,"bracketPairColorization",e,{"editor.bracketPairColorization.enabled":{type:"boolean",default:e.enabled,markdownDescription:p("bracketPairColorization.enabled","Controls whether bracket pair colorization is enabled or not. Use {0} to override the bracket highlight colors.","`#workbench.colorCustomizations#`")},"editor.bracketPairColorization.independentColorPoolPerBracketType":{type:"boolean",default:e.independentColorPoolPerBracketType,description:p("bracketPairColorization.independentColorPoolPerBracketType","Controls whether each bracket type has its own independent color pool.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:ue(t.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}}},IT=class extends At{constructor(){let e={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(16,"guides",e,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[p("editor.guides.bracketPairs.true","Enables bracket pair guides."),p("editor.guides.bracketPairs.active","Enables bracket pair guides only for the active bracket pair."),p("editor.guides.bracketPairs.false","Disables bracket pair guides.")],default:e.bracketPairs,description:p("editor.guides.bracketPairs","Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[p("editor.guides.bracketPairsHorizontal.true","Enables horizontal guides as addition to vertical bracket pair guides."),p("editor.guides.bracketPairsHorizontal.active","Enables horizontal guides only for the active bracket pair."),p("editor.guides.bracketPairsHorizontal.false","Disables horizontal bracket pair guides.")],default:e.bracketPairsHorizontal,description:p("editor.guides.bracketPairsHorizontal","Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:e.highlightActiveBracketPair,description:p("editor.guides.highlightActiveBracketPair","Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:e.indentation,description:p("editor.guides.indentation","Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[!0,"always",!1],enumDescriptions:[p("editor.guides.highlightActiveIndentation.true","Highlights the active indent guide."),p("editor.guides.highlightActiveIndentation.always","Highlights the active indent guide even if bracket guides are highlighted."),p("editor.guides.highlightActiveIndentation.false","Do not highlight the active indent guide.")],default:e.highlightActiveIndentation,description:p("editor.guides.highlightActiveIndentation","Controls whether the editor should highlight the active indent guide.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{bracketPairs:Gf(t.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:Gf(t.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:ue(t.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:ue(t.indentation,this.defaultValue.indentation),highlightActiveIndentation:Gf(t.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[!0,!1,"always"])}}};function Gf(n,e,t){let i=t.indexOf(n);return i===-1?e:t[i]}var TT=class extends At{constructor(){let e={insertMode:"insert",filterGraceful:!0,snippetsPreventQuickSuggestions:!1,localityBonus:!1,shareSuggestSelections:!1,selectionMode:"always",showIcons:!0,showStatusBar:!1,preview:!1,previewMode:"subwordSmart",showInlineDetails:!0,showMethods:!0,showFunctions:!0,showConstructors:!0,showDeprecated:!0,matchOnWordStartOnly:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,showUsers:!0,showIssues:!0};super(119,"suggest",e,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[p("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),p("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:e.insertMode,description:p("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:e.filterGraceful,description:p("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:e.localityBonus,description:p("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:e.shareSuggestSelections,markdownDescription:p("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.selectionMode":{type:"string",enum:["always","never","whenTriggerCharacter","whenQuickSuggestion"],enumDescriptions:[p("suggest.insertMode.always","Always select a suggestion when automatically triggering IntelliSense."),p("suggest.insertMode.never","Never select a suggestion when automatically triggering IntelliSense."),p("suggest.insertMode.whenTriggerCharacter","Select a suggestion only when triggering IntelliSense from a trigger character."),p("suggest.insertMode.whenQuickSuggestion","Select a suggestion only when triggering IntelliSense as you type.")],default:e.selectionMode,markdownDescription:p("suggest.selectionMode","Controls whether a suggestion is selected when the widget shows. Note that this only applies to automatically triggered suggestions ({0} and {1}) and that a suggestion is always selected when explicitly invoked, e.g via `Ctrl+Space`.","`#editor.quickSuggestions#`","`#editor.suggestOnTriggerCharacters#`")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:e.snippetsPreventQuickSuggestions,description:p("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:e.showIcons,description:p("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:e.showStatusBar,description:p("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:e.preview,description:p("suggest.preview","Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:e.showInlineDetails,description:p("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget.")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:p("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:p("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showDeprecated","When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.matchOnWordStartOnly":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.matchOnWordStartOnly","When enabled IntelliSense filtering requires that the first character matches on a word start. For example, `c` on `Console` or `WebContext` but _not_ on `description`. When disabled IntelliSense will show more results but still sorts them by match quality.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:p("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{insertMode:si(t.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:ue(t.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:ue(t.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:ue(t.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:ue(t.shareSuggestSelections,this.defaultValue.shareSuggestSelections),selectionMode:si(t.selectionMode,this.defaultValue.selectionMode,["always","never","whenQuickSuggestion","whenTriggerCharacter"]),showIcons:ue(t.showIcons,this.defaultValue.showIcons),showStatusBar:ue(t.showStatusBar,this.defaultValue.showStatusBar),preview:ue(t.preview,this.defaultValue.preview),previewMode:si(t.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:ue(t.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:ue(t.showMethods,this.defaultValue.showMethods),showFunctions:ue(t.showFunctions,this.defaultValue.showFunctions),showConstructors:ue(t.showConstructors,this.defaultValue.showConstructors),showDeprecated:ue(t.showDeprecated,this.defaultValue.showDeprecated),matchOnWordStartOnly:ue(t.matchOnWordStartOnly,this.defaultValue.matchOnWordStartOnly),showFields:ue(t.showFields,this.defaultValue.showFields),showVariables:ue(t.showVariables,this.defaultValue.showVariables),showClasses:ue(t.showClasses,this.defaultValue.showClasses),showStructs:ue(t.showStructs,this.defaultValue.showStructs),showInterfaces:ue(t.showInterfaces,this.defaultValue.showInterfaces),showModules:ue(t.showModules,this.defaultValue.showModules),showProperties:ue(t.showProperties,this.defaultValue.showProperties),showEvents:ue(t.showEvents,this.defaultValue.showEvents),showOperators:ue(t.showOperators,this.defaultValue.showOperators),showUnits:ue(t.showUnits,this.defaultValue.showUnits),showValues:ue(t.showValues,this.defaultValue.showValues),showConstants:ue(t.showConstants,this.defaultValue.showConstants),showEnums:ue(t.showEnums,this.defaultValue.showEnums),showEnumMembers:ue(t.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:ue(t.showKeywords,this.defaultValue.showKeywords),showWords:ue(t.showWords,this.defaultValue.showWords),showColors:ue(t.showColors,this.defaultValue.showColors),showFiles:ue(t.showFiles,this.defaultValue.showFiles),showReferences:ue(t.showReferences,this.defaultValue.showReferences),showFolders:ue(t.showFolders,this.defaultValue.showFolders),showTypeParameters:ue(t.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:ue(t.showSnippets,this.defaultValue.showSnippets),showUsers:ue(t.showUsers,this.defaultValue.showUsers),showIssues:ue(t.showIssues,this.defaultValue.showIssues)}}},NT=class extends At{constructor(){super(114,"smartSelect",{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:p("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"},"editor.smartSelect.selectSubwords":{description:p("selectSubwords","Whether subwords (like 'foo' in 'fooBar' or 'foo_bar') should be selected."),default:!0,type:"boolean"}})}validate(e){return!e||typeof e!="object"?this.defaultValue:{selectLeadingAndTrailingWhitespace:ue(e.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace),selectSubwords:ue(e.selectSubwords,this.defaultValue.selectSubwords)}}},MT=class extends At{constructor(){let e=[];super(131,"wordSegmenterLocales",e,{anyOf:[{description:p("wordSegmenterLocales","Locales to be used for word segmentation when doing word related navigations or operations. Specify the BCP 47 language tag of the word you wish to recognize (e.g., ja, zh-CN, zh-Hant-TW, etc.)."),type:"string"},{description:p("wordSegmenterLocales","Locales to be used for word segmentation when doing word related navigations or operations. Specify the BCP 47 language tag of the word you wish to recognize (e.g., ja, zh-CN, zh-Hant-TW, etc.)."),type:"array",items:{type:"string"}}]})}validate(e){if(typeof e=="string"&&(e=[e]),Array.isArray(e)){let t=[];for(let i of e)if(typeof i=="string")try{Intl.Segmenter.supportedLocalesOf(i).length>0&&t.push(i)}catch{}return t}return this.defaultValue}},AT=class extends At{constructor(){super(139,"wrappingIndent",1,{"editor.wrappingIndent":{type:"string",enum:["none","same","indent","deepIndent"],enumDescriptions:[p("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),p("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),p("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),p("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:p("wrappingIndent","Controls the indentation of wrapped lines."),default:"same"}})}validate(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}return 1}compute(e,t,i){return t.get(2)===2?0:i}},RT=class extends Fh{constructor(){super(147)}compute(e,t,i){let o=t.get(146);return{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:o.isWordWrapMinified,isViewportWrapping:o.isViewportWrapping,wrappingColumn:o.wrappingColumn}}},PT=class extends At{constructor(){let e={enabled:!0,showDropSelector:"afterDrop"};super(36,"dropIntoEditor",e,{"editor.dropIntoEditor.enabled":{type:"boolean",default:e.enabled,markdownDescription:p("dropIntoEditor.enabled","Controls whether you can drag and drop a file into a text editor by holding down the `Shift` key (instead of opening the file in an editor).")},"editor.dropIntoEditor.showDropSelector":{type:"string",markdownDescription:p("dropIntoEditor.showDropSelector","Controls if a widget is shown when dropping files into the editor. This widget lets you control how the file is dropped."),enum:["afterDrop","never"],enumDescriptions:[p("dropIntoEditor.showDropSelector.afterDrop","Show the drop selector widget after a file is dropped into the editor."),p("dropIntoEditor.showDropSelector.never","Never show the drop selector widget. Instead the default drop provider is always used.")],default:"afterDrop"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),showDropSelector:si(t.showDropSelector,this.defaultValue.showDropSelector,["afterDrop","never"])}}},OT=class extends At{constructor(){let e={enabled:!0,showPasteSelector:"afterPaste"};super(85,"pasteAs",e,{"editor.pasteAs.enabled":{type:"boolean",default:e.enabled,markdownDescription:p("pasteAs.enabled","Controls whether you can paste content in different ways.")},"editor.pasteAs.showPasteSelector":{type:"string",markdownDescription:p("pasteAs.showPasteSelector","Controls if a widget is shown when pasting content in to the editor. This widget lets you control how the file is pasted."),enum:["afterPaste","never"],enumDescriptions:[p("pasteAs.showPasteSelector.afterPaste","Show the paste selector widget after content is pasted into the editor."),p("pasteAs.showPasteSelector.never","Never show the paste selector widget. Instead the default pasting behavior is always used.")],default:"afterPaste"}})}validate(e){if(!e||typeof e!="object")return this.defaultValue;let t=e;return{enabled:ue(t.enabled,this.defaultValue.enabled),showPasteSelector:si(t.showPasteSelector,this.defaultValue.showPasteSelector,["afterPaste","never"])}}},QK="Consolas, 'Courier New', monospace",XK="Menlo, Monaco, 'Courier New', monospace",JK="'Droid Sans Mono', 'monospace', monospace",po={fontFamily:De?XK:oi?JK:QK,fontWeight:"normal",fontSize:De?12:14,lineHeight:0,letterSpacing:0},sd=[];function Z(n){return sd[n.id]=n,n}var Jr={acceptSuggestionOnCommitCharacter:Z(new rt(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:p("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:Z(new Jt(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",p("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:p("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:Z(new J2),accessibilityPageSize:Z(new It(3,"accessibilityPageSize",10,1,1073741824,{description:p("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default."),tags:["accessibility"]})),ariaLabel:Z(new io(4,"ariaLabel",p("editorViewAccessibleLabel","Editor content"))),ariaRequired:Z(new rt(5,"ariaRequired",!1,void 0)),screenReaderAnnounceInlineSuggestion:Z(new rt(8,"screenReaderAnnounceInlineSuggestion",!0,{description:p("screenReaderAnnounceInlineSuggestion","Control whether inline suggestions are announced by a screen reader."),tags:["accessibility"]})),autoClosingBrackets:Z(new Jt(6,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",p("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),p("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:p("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingComments:Z(new Jt(7,"autoClosingComments","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",p("editor.autoClosingComments.languageDefined","Use language configurations to determine when to autoclose comments."),p("editor.autoClosingComments.beforeWhitespace","Autoclose comments only when the cursor is to the left of whitespace."),""],description:p("autoClosingComments","Controls whether the editor should automatically close comments after the user adds an opening comment.")})),autoClosingDelete:Z(new Jt(9,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",p("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:p("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:Z(new Jt(10,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",p("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:p("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:Z(new Jt(11,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",p("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),p("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:p("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:Z(new jf(12,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],jK,{enumDescriptions:[p("editor.autoIndent.none","The editor will not insert indentation automatically."),p("editor.autoIndent.keep","The editor will keep the current line's indentation."),p("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),p("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),p("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:p("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:Z(new rt(13,"automaticLayout",!1)),autoSurround:Z(new Jt(14,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[p("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),p("editor.autoSurround.quotes","Surround with quotes but not brackets."),p("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:p("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:Z(new ET),bracketPairGuides:Z(new IT),stickyTabStops:Z(new rt(117,"stickyTabStops",!1,{description:p("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:Z(new rt(17,"codeLens",!0,{description:p("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:Z(new io(18,"codeLensFontFamily","",{description:p("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:Z(new It(19,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:p("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.")})),colorDecorators:Z(new rt(20,"colorDecorators",!0,{description:p("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),colorDecoratorActivatedOn:Z(new Jt(149,"colorDecoratorsActivatedOn","clickAndHover",["clickAndHover","hover","click"],{enumDescriptions:[p("editor.colorDecoratorActivatedOn.clickAndHover","Make the color picker appear both on click and hover of the color decorator"),p("editor.colorDecoratorActivatedOn.hover","Make the color picker appear on hover of the color decorator"),p("editor.colorDecoratorActivatedOn.click","Make the color picker appear on click of the color decorator")],description:p("colorDecoratorActivatedOn","Controls the condition to make a color picker appear from a color decorator")})),colorDecoratorsLimit:Z(new It(21,"colorDecoratorsLimit",500,1,1e6,{markdownDescription:p("colorDecoratorsLimit","Controls the max number of color decorators that can be rendered in an editor at once.")})),columnSelection:Z(new rt(22,"columnSelection",!1,{description:p("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:Z(new eT),contextmenu:Z(new rt(24,"contextmenu",!0)),copyWithSyntaxHighlighting:Z(new rt(25,"copyWithSyntaxHighlighting",!0,{description:p("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:Z(new jf(26,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],GK,{description:p("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:Z(new Jt(27,"cursorSmoothCaretAnimation","off",["off","explicit","on"],{enumDescriptions:[p("cursorSmoothCaretAnimation.off","Smooth caret animation is disabled."),p("cursorSmoothCaretAnimation.explicit","Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture."),p("cursorSmoothCaretAnimation.on","Smooth caret animation is always enabled.")],description:p("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:Z(new jf(28,"cursorStyle",Yi.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],ZK,{description:p("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:Z(new It(29,"cursorSurroundingLines",0,0,1073741824,{description:p("cursorSurroundingLines","Controls the minimal number of visible leading lines (minimum 0) and trailing lines (minimum 1) surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:Z(new Jt(30,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[p("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),p("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],markdownDescription:p("cursorSurroundingLinesStyle","Controls when `#editor.cursorSurroundingLines#` should be enforced.")})),cursorWidth:Z(new It(31,"cursorWidth",0,0,1073741824,{markdownDescription:p("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:Z(new rt(32,"disableLayerHinting",!1)),disableMonospaceOptimizations:Z(new rt(33,"disableMonospaceOptimizations",!1)),domReadOnly:Z(new rt(34,"domReadOnly",!1)),dragAndDrop:Z(new rt(35,"dragAndDrop",!0,{description:p("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:Z(new iT),dropIntoEditor:Z(new PT),stickyScroll:Z(new hT),experimentalWhitespaceRendering:Z(new Jt(38,"experimentalWhitespaceRendering","svg",["svg","font","off"],{enumDescriptions:[p("experimentalWhitespaceRendering.svg","Use a new rendering method with svgs."),p("experimentalWhitespaceRendering.font","Use a new rendering method with font characters."),p("experimentalWhitespaceRendering.off","Use the stable rendering method.")],description:p("experimentalWhitespaceRendering","Controls whether whitespace is rendered with a new, experimental method.")})),extraEditorClassName:Z(new io(39,"extraEditorClassName","")),fastScrollSensitivity:Z(new xs(40,"fastScrollSensitivity",5,n=>n<=0?5:n,{markdownDescription:p("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:Z(new nT),fixedOverflowWidgets:Z(new rt(42,"fixedOverflowWidgets",!1)),folding:Z(new rt(43,"folding",!0,{description:p("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:Z(new Jt(44,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[p("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),p("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:p("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:Z(new rt(45,"foldingHighlight",!0,{description:p("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:Z(new rt(46,"foldingImportsByDefault",!1,{description:p("foldingImportsByDefault","Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:Z(new It(47,"foldingMaximumRegions",5e3,10,65e3,{description:p("foldingMaximumRegions","The maximum number of foldable regions. Increasing this value may result in the editor becoming less responsive when the current source has a large number of foldable regions.")})),unfoldOnClickAfterEndOfLine:Z(new rt(48,"unfoldOnClickAfterEndOfLine",!1,{description:p("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:Z(new io(49,"fontFamily",po.fontFamily,{description:p("fontFamily","Controls the font family.")})),fontInfo:Z(new oT),fontLigatures2:Z(new Qr),fontSize:Z(new sT),fontWeight:Z(new rT),fontVariations:Z(new Yf),formatOnPaste:Z(new rt(55,"formatOnPaste",!1,{description:p("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:Z(new rt(56,"formatOnType",!1,{description:p("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:Z(new rt(57,"glyphMargin",!0,{description:p("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:Z(new aT),hideCursorInOverviewRuler:Z(new rt(59,"hideCursorInOverviewRuler",!1,{description:p("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),hover:Z(new lT),inDiffEditor:Z(new rt(61,"inDiffEditor",!1)),letterSpacing:Z(new xs(64,"letterSpacing",po.letterSpacing,n=>xs.clamp(n,-5,20),{description:p("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:Z(new dT),lineDecorationsWidth:Z(new fT),lineHeight:Z(new gT),lineNumbers:Z(new CT),lineNumbersMinChars:Z(new It(69,"lineNumbersMinChars",5,1,300)),linkedEditing:Z(new rt(70,"linkedEditing",!1,{description:p("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.")})),links:Z(new rt(71,"links",!0,{description:p("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:Z(new Jt(72,"matchBrackets","always",["always","near","never"],{description:p("matchBrackets","Highlight matching brackets.")})),minimap:Z(new mT),mouseStyle:Z(new Jt(74,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:Z(new xs(75,"mouseWheelScrollSensitivity",1,n=>n===0?1:n,{markdownDescription:p("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:Z(new rt(76,"mouseWheelZoom",!1,{markdownDescription:De?p("mouseWheelZoom.mac","Zoom the font of the editor when using mouse wheel and holding `Cmd`."):p("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:Z(new rt(77,"multiCursorMergeOverlapping",!0,{description:p("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:Z(new jf(78,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],YK,{markdownEnumDescriptions:[p("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),p("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:p({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go to Definition and Open Link mouse gestures will adapt such that they do not conflict with the [multicursor modifier](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:Z(new Jt(79,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[p("multiCursorPaste.spread","Each cursor pastes a single line of the text."),p("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:p("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),multiCursorLimit:Z(new It(80,"multiCursorLimit",1e4,1,1e5,{markdownDescription:p("multiCursorLimit","Controls the max number of cursors that can be in an active editor at once.")})),occurrencesHighlight:Z(new Jt(81,"occurrencesHighlight","singleFile",["off","singleFile","multiFile"],{markdownEnumDescriptions:[p("occurrencesHighlight.off","Does not highlight occurrences."),p("occurrencesHighlight.singleFile","Highlights occurrences only in the current file."),p("occurrencesHighlight.multiFile","Experimental: Highlights occurrences across all valid open files.")],markdownDescription:p("occurrencesHighlight","Controls whether occurrences should be highlighted across open files.")})),overviewRulerBorder:Z(new rt(82,"overviewRulerBorder",!0,{description:p("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:Z(new It(83,"overviewRulerLanes",3,0,3)),padding:Z(new pT),pasteAs:Z(new OT),parameterHints:Z(new _T),peekWidgetDefaultFocus:Z(new Jt(87,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[p("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),p("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:p("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),placeholder:Z(new vT),definitionLinkOpensInPeek:Z(new rt(89,"definitionLinkOpensInPeek",!1,{description:p("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:Z(new wT),quickSuggestionsDelay:Z(new It(91,"quickSuggestionsDelay",10,0,1073741824,{description:p("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:Z(new rt(92,"readOnly",!1)),readOnlyMessage:Z(new ST),renameOnType:Z(new rt(94,"renameOnType",!1,{description:p("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:p("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:Z(new rt(95,"renderControlCharacters",!0,{description:p("renderControlCharacters","Controls whether the editor should render control characters."),restricted:!0})),renderFinalNewline:Z(new Jt(96,"renderFinalNewline",oi?"dimmed":"on",["off","on","dimmed"],{description:p("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:Z(new Jt(97,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",p("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:p("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:Z(new rt(98,"renderLineHighlightOnlyWhenFocus",!1,{description:p("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:Z(new Jt(99,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:Z(new Jt(100,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",p("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),p("renderWhitespace.selection","Render whitespace characters only on selected text."),p("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:p("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:Z(new It(101,"revealHorizontalRightPadding",15,0,1e3)),roundedSelection:Z(new rt(102,"roundedSelection",!0,{description:p("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:Z(new yT),scrollbar:Z(new xT),scrollBeyondLastColumn:Z(new It(105,"scrollBeyondLastColumn",4,0,1073741824,{description:p("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:Z(new rt(106,"scrollBeyondLastLine",!0,{description:p("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:Z(new rt(107,"scrollPredominantAxis",!0,{description:p("scrollPredominantAxis","Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.")})),selectionClipboard:Z(new rt(108,"selectionClipboard",!0,{description:p("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:oi})),selectionHighlight:Z(new rt(109,"selectionHighlight",!0,{description:p("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:Z(new rt(110,"selectOnLineNumbers",!0)),showFoldingControls:Z(new Jt(111,"showFoldingControls","mouseover",["always","never","mouseover"],{enumDescriptions:[p("showFoldingControls.always","Always show the folding controls."),p("showFoldingControls.never","Never show the folding controls and reduce the gutter size."),p("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:p("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:Z(new rt(112,"showUnused",!0,{description:p("showUnused","Controls fading out of unused code.")})),showDeprecated:Z(new rt(141,"showDeprecated",!0,{description:p("showDeprecated","Controls strikethrough deprecated variables.")})),inlayHints:Z(new uT),snippetSuggestions:Z(new Jt(113,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[p("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),p("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),p("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),p("snippetSuggestions.none","Do not show snippet suggestions.")],description:p("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:Z(new NT),smoothScrolling:Z(new rt(115,"smoothScrolling",!1,{description:p("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:Z(new It(118,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:Z(new TT),inlineSuggest:Z(new kT),inlineEdit:Z(new DT),inlineCompletionsAccessibilityVerbose:Z(new rt(150,"inlineCompletionsAccessibilityVerbose",!1,{description:p("inlineCompletionsAccessibilityVerbose","Controls whether the accessibility hint should be provided to screen reader users when an inline completion is shown.")})),suggestFontSize:Z(new It(120,"suggestFontSize",0,0,1e3,{markdownDescription:p("suggestFontSize","Font size for the suggest widget. When set to {0}, the value of {1} is used.","`0`","`#editor.fontSize#`")})),suggestLineHeight:Z(new It(121,"suggestLineHeight",0,0,1e3,{markdownDescription:p("suggestLineHeight","Line height for the suggest widget. When set to {0}, the value of {1} is used. The minimum value is 8.","`0`","`#editor.lineHeight#`")})),suggestOnTriggerCharacters:Z(new rt(122,"suggestOnTriggerCharacters",!0,{description:p("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:Z(new Jt(123,"suggestSelection","first",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[p("suggestSelection.first","Always select the first suggestion."),p("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),p("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:p("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:Z(new Jt(124,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[p("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),p("tabCompletion.off","Disable tab completions."),p("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:p("tabCompletion","Enables tab completions.")})),tabIndex:Z(new It(125,"tabIndex",0,-1,1073741824)),unicodeHighlight:Z(new LT),unusualLineTerminators:Z(new Jt(127,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[p("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),p("unusualLineTerminators.off","Unusual line terminators are ignored."),p("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:p("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:Z(new rt(128,"useShadowDOM",!0)),useTabStops:Z(new rt(129,"useTabStops",!0,{description:p("useTabStops","Spaces and tabs are inserted and deleted in alignment with tab stops.")})),wordBreak:Z(new Jt(130,"wordBreak","normal",["normal","keepAll"],{markdownEnumDescriptions:[p("wordBreak.normal","Use the default line break rule."),p("wordBreak.keepAll","Word breaks should not be used for Chinese/Japanese/Korean (CJK) text. Non-CJK text behavior is the same as for normal.")],description:p("wordBreak","Controls the word break rules used for Chinese/Japanese/Korean (CJK) text.")})),wordSegmenterLocales:Z(new MT),wordSeparators:Z(new io(132,"wordSeparators",X2,{description:p("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:Z(new Jt(133,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[p("wordWrap.off","Lines will never wrap."),p("wordWrap.on","Lines will wrap at the viewport width."),p({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),p({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:p({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:Z(new io(134,"wordWrapBreakAfterCharacters"," })]?|/&.,;\xA2\xB0\u2032\u2033\u2030\u2103\u3001\u3002\uFF61\uFF64\uFFE0\uFF0C\uFF0E\uFF1A\uFF1B\uFF1F\uFF01\uFF05\u30FB\uFF65\u309D\u309E\u30FD\u30FE\u30FC\u30A1\u30A3\u30A5\u30A7\u30A9\u30C3\u30E3\u30E5\u30E7\u30EE\u30F5\u30F6\u3041\u3043\u3045\u3047\u3049\u3063\u3083\u3085\u3087\u308E\u3095\u3096\u31F0\u31F1\u31F2\u31F3\u31F4\u31F5\u31F6\u31F7\u31F8\u31F9\u31FA\u31FB\u31FC\u31FD\u31FE\u31FF\u3005\u303B\uFF67\uFF68\uFF69\uFF6A\uFF6B\uFF6C\uFF6D\uFF6E\uFF6F\uFF70\u201D\u3009\u300B\u300D\u300F\u3011\u3015\uFF09\uFF3D\uFF5D\uFF63")),wordWrapBreakBeforeCharacters:Z(new io(135,"wordWrapBreakBeforeCharacters","([{\u2018\u201C\u3008\u300A\u300C\u300E\u3010\u3014\uFF08\uFF3B\uFF5B\uFF62\xA3\xA5\uFF04\uFFE1\uFFE5+\uFF0B")),wordWrapColumn:Z(new It(136,"wordWrapColumn",80,1,1073741824,{markdownDescription:p({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:Z(new Jt(137,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:Z(new Jt(138,"wordWrapOverride2","inherit",["off","on","inherit"])),editorClassName:Z(new tT),defaultColorDecorators:Z(new rt(148,"defaultColorDecorators",!1,{markdownDescription:p("defaultColorDecorators","Controls whether inline color decorations should be shown using the default document color provider")})),pixelRatio:Z(new bT),tabFocusMode:Z(new rt(145,"tabFocusMode",!1,{markdownDescription:p("tabFocusMode","Controls whether the editor receives tabs or defers them to the workbench for navigation.")})),layoutInfo:Z(new S_),wrappingInfo:Z(new RT),wrappingIndent:Z(new AT),wrappingStrategy:Z(new cT)};Qo();fe();E_();Ui();Ze();Ee();gn();vo();var J0;(function(n){n[n.Unknown=0]="Unknown",n[n.Disabled=1]="Disabled",n[n.Enabled=2]="Enabled"})(J0||(J0={}));var ew;(function(n){n[n.Invoke=1]="Invoke",n[n.Auto=2]="Auto"})(ew||(ew={}));var tw;(function(n){n[n.None=0]="None",n[n.KeepWhitespace=1]="KeepWhitespace",n[n.InsertAsSnippet=4]="InsertAsSnippet"})(tw||(tw={}));var iw;(function(n){n[n.Method=0]="Method",n[n.Function=1]="Function",n[n.Constructor=2]="Constructor",n[n.Field=3]="Field",n[n.Variable=4]="Variable",n[n.Class=5]="Class",n[n.Struct=6]="Struct",n[n.Interface=7]="Interface",n[n.Module=8]="Module",n[n.Property=9]="Property",n[n.Event=10]="Event",n[n.Operator=11]="Operator",n[n.Unit=12]="Unit",n[n.Value=13]="Value",n[n.Constant=14]="Constant",n[n.Enum=15]="Enum",n[n.EnumMember=16]="EnumMember",n[n.Keyword=17]="Keyword",n[n.Text=18]="Text",n[n.Color=19]="Color",n[n.File=20]="File",n[n.Reference=21]="Reference",n[n.Customcolor=22]="Customcolor",n[n.Folder=23]="Folder",n[n.TypeParameter=24]="TypeParameter",n[n.User=25]="User",n[n.Issue=26]="Issue",n[n.Snippet=27]="Snippet"})(iw||(iw={}));var nw;(function(n){n[n.Deprecated=1]="Deprecated"})(nw||(nw={}));var ow;(function(n){n[n.Invoke=0]="Invoke",n[n.TriggerCharacter=1]="TriggerCharacter",n[n.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"})(ow||(ow={}));var sw;(function(n){n[n.EXACT=0]="EXACT",n[n.ABOVE=1]="ABOVE",n[n.BELOW=2]="BELOW"})(sw||(sw={}));var rw;(function(n){n[n.NotSet=0]="NotSet",n[n.ContentFlush=1]="ContentFlush",n[n.RecoverFromMarkers=2]="RecoverFromMarkers",n[n.Explicit=3]="Explicit",n[n.Paste=4]="Paste",n[n.Undo=5]="Undo",n[n.Redo=6]="Redo"})(rw||(rw={}));var aw;(function(n){n[n.LF=1]="LF",n[n.CRLF=2]="CRLF"})(aw||(aw={}));var lw;(function(n){n[n.Text=0]="Text",n[n.Read=1]="Read",n[n.Write=2]="Write"})(lw||(lw={}));var cw;(function(n){n[n.None=0]="None",n[n.Keep=1]="Keep",n[n.Brackets=2]="Brackets",n[n.Advanced=3]="Advanced",n[n.Full=4]="Full"})(cw||(cw={}));var dw;(function(n){n[n.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",n[n.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",n[n.accessibilitySupport=2]="accessibilitySupport",n[n.accessibilityPageSize=3]="accessibilityPageSize",n[n.ariaLabel=4]="ariaLabel",n[n.ariaRequired=5]="ariaRequired",n[n.autoClosingBrackets=6]="autoClosingBrackets",n[n.autoClosingComments=7]="autoClosingComments",n[n.screenReaderAnnounceInlineSuggestion=8]="screenReaderAnnounceInlineSuggestion",n[n.autoClosingDelete=9]="autoClosingDelete",n[n.autoClosingOvertype=10]="autoClosingOvertype",n[n.autoClosingQuotes=11]="autoClosingQuotes",n[n.autoIndent=12]="autoIndent",n[n.automaticLayout=13]="automaticLayout",n[n.autoSurround=14]="autoSurround",n[n.bracketPairColorization=15]="bracketPairColorization",n[n.guides=16]="guides",n[n.codeLens=17]="codeLens",n[n.codeLensFontFamily=18]="codeLensFontFamily",n[n.codeLensFontSize=19]="codeLensFontSize",n[n.colorDecorators=20]="colorDecorators",n[n.colorDecoratorsLimit=21]="colorDecoratorsLimit",n[n.columnSelection=22]="columnSelection",n[n.comments=23]="comments",n[n.contextmenu=24]="contextmenu",n[n.copyWithSyntaxHighlighting=25]="copyWithSyntaxHighlighting",n[n.cursorBlinking=26]="cursorBlinking",n[n.cursorSmoothCaretAnimation=27]="cursorSmoothCaretAnimation",n[n.cursorStyle=28]="cursorStyle",n[n.cursorSurroundingLines=29]="cursorSurroundingLines",n[n.cursorSurroundingLinesStyle=30]="cursorSurroundingLinesStyle",n[n.cursorWidth=31]="cursorWidth",n[n.disableLayerHinting=32]="disableLayerHinting",n[n.disableMonospaceOptimizations=33]="disableMonospaceOptimizations",n[n.domReadOnly=34]="domReadOnly",n[n.dragAndDrop=35]="dragAndDrop",n[n.dropIntoEditor=36]="dropIntoEditor",n[n.emptySelectionClipboard=37]="emptySelectionClipboard",n[n.experimentalWhitespaceRendering=38]="experimentalWhitespaceRendering",n[n.extraEditorClassName=39]="extraEditorClassName",n[n.fastScrollSensitivity=40]="fastScrollSensitivity",n[n.find=41]="find",n[n.fixedOverflowWidgets=42]="fixedOverflowWidgets",n[n.folding=43]="folding",n[n.foldingStrategy=44]="foldingStrategy",n[n.foldingHighlight=45]="foldingHighlight",n[n.foldingImportsByDefault=46]="foldingImportsByDefault",n[n.foldingMaximumRegions=47]="foldingMaximumRegions",n[n.unfoldOnClickAfterEndOfLine=48]="unfoldOnClickAfterEndOfLine",n[n.fontFamily=49]="fontFamily",n[n.fontInfo=50]="fontInfo",n[n.fontLigatures=51]="fontLigatures",n[n.fontSize=52]="fontSize",n[n.fontWeight=53]="fontWeight",n[n.fontVariations=54]="fontVariations",n[n.formatOnPaste=55]="formatOnPaste",n[n.formatOnType=56]="formatOnType",n[n.glyphMargin=57]="glyphMargin",n[n.gotoLocation=58]="gotoLocation",n[n.hideCursorInOverviewRuler=59]="hideCursorInOverviewRuler",n[n.hover=60]="hover",n[n.inDiffEditor=61]="inDiffEditor",n[n.inlineSuggest=62]="inlineSuggest",n[n.inlineEdit=63]="inlineEdit",n[n.letterSpacing=64]="letterSpacing",n[n.lightbulb=65]="lightbulb",n[n.lineDecorationsWidth=66]="lineDecorationsWidth",n[n.lineHeight=67]="lineHeight",n[n.lineNumbers=68]="lineNumbers",n[n.lineNumbersMinChars=69]="lineNumbersMinChars",n[n.linkedEditing=70]="linkedEditing",n[n.links=71]="links",n[n.matchBrackets=72]="matchBrackets",n[n.minimap=73]="minimap",n[n.mouseStyle=74]="mouseStyle",n[n.mouseWheelScrollSensitivity=75]="mouseWheelScrollSensitivity",n[n.mouseWheelZoom=76]="mouseWheelZoom",n[n.multiCursorMergeOverlapping=77]="multiCursorMergeOverlapping",n[n.multiCursorModifier=78]="multiCursorModifier",n[n.multiCursorPaste=79]="multiCursorPaste",n[n.multiCursorLimit=80]="multiCursorLimit",n[n.occurrencesHighlight=81]="occurrencesHighlight",n[n.overviewRulerBorder=82]="overviewRulerBorder",n[n.overviewRulerLanes=83]="overviewRulerLanes",n[n.padding=84]="padding",n[n.pasteAs=85]="pasteAs",n[n.parameterHints=86]="parameterHints",n[n.peekWidgetDefaultFocus=87]="peekWidgetDefaultFocus",n[n.placeholder=88]="placeholder",n[n.definitionLinkOpensInPeek=89]="definitionLinkOpensInPeek",n[n.quickSuggestions=90]="quickSuggestions",n[n.quickSuggestionsDelay=91]="quickSuggestionsDelay",n[n.readOnly=92]="readOnly",n[n.readOnlyMessage=93]="readOnlyMessage",n[n.renameOnType=94]="renameOnType",n[n.renderControlCharacters=95]="renderControlCharacters",n[n.renderFinalNewline=96]="renderFinalNewline",n[n.renderLineHighlight=97]="renderLineHighlight",n[n.renderLineHighlightOnlyWhenFocus=98]="renderLineHighlightOnlyWhenFocus",n[n.renderValidationDecorations=99]="renderValidationDecorations",n[n.renderWhitespace=100]="renderWhitespace",n[n.revealHorizontalRightPadding=101]="revealHorizontalRightPadding",n[n.roundedSelection=102]="roundedSelection",n[n.rulers=103]="rulers",n[n.scrollbar=104]="scrollbar",n[n.scrollBeyondLastColumn=105]="scrollBeyondLastColumn",n[n.scrollBeyondLastLine=106]="scrollBeyondLastLine",n[n.scrollPredominantAxis=107]="scrollPredominantAxis",n[n.selectionClipboard=108]="selectionClipboard",n[n.selectionHighlight=109]="selectionHighlight",n[n.selectOnLineNumbers=110]="selectOnLineNumbers",n[n.showFoldingControls=111]="showFoldingControls",n[n.showUnused=112]="showUnused",n[n.snippetSuggestions=113]="snippetSuggestions",n[n.smartSelect=114]="smartSelect",n[n.smoothScrolling=115]="smoothScrolling",n[n.stickyScroll=116]="stickyScroll",n[n.stickyTabStops=117]="stickyTabStops",n[n.stopRenderingLineAfter=118]="stopRenderingLineAfter",n[n.suggest=119]="suggest",n[n.suggestFontSize=120]="suggestFontSize",n[n.suggestLineHeight=121]="suggestLineHeight",n[n.suggestOnTriggerCharacters=122]="suggestOnTriggerCharacters",n[n.suggestSelection=123]="suggestSelection",n[n.tabCompletion=124]="tabCompletion",n[n.tabIndex=125]="tabIndex",n[n.unicodeHighlighting=126]="unicodeHighlighting",n[n.unusualLineTerminators=127]="unusualLineTerminators",n[n.useShadowDOM=128]="useShadowDOM",n[n.useTabStops=129]="useTabStops",n[n.wordBreak=130]="wordBreak",n[n.wordSegmenterLocales=131]="wordSegmenterLocales",n[n.wordSeparators=132]="wordSeparators",n[n.wordWrap=133]="wordWrap",n[n.wordWrapBreakAfterCharacters=134]="wordWrapBreakAfterCharacters",n[n.wordWrapBreakBeforeCharacters=135]="wordWrapBreakBeforeCharacters",n[n.wordWrapColumn=136]="wordWrapColumn",n[n.wordWrapOverride1=137]="wordWrapOverride1",n[n.wordWrapOverride2=138]="wordWrapOverride2",n[n.wrappingIndent=139]="wrappingIndent",n[n.wrappingStrategy=140]="wrappingStrategy",n[n.showDeprecated=141]="showDeprecated",n[n.inlayHints=142]="inlayHints",n[n.editorClassName=143]="editorClassName",n[n.pixelRatio=144]="pixelRatio",n[n.tabFocusMode=145]="tabFocusMode",n[n.layoutInfo=146]="layoutInfo",n[n.wrappingInfo=147]="wrappingInfo",n[n.defaultColorDecorators=148]="defaultColorDecorators",n[n.colorDecoratorsActivatedOn=149]="colorDecoratorsActivatedOn",n[n.inlineCompletionsAccessibilityVerbose=150]="inlineCompletionsAccessibilityVerbose"})(dw||(dw={}));var hw;(function(n){n[n.TextDefined=0]="TextDefined",n[n.LF=1]="LF",n[n.CRLF=2]="CRLF"})(hw||(hw={}));var uw;(function(n){n[n.LF=0]="LF",n[n.CRLF=1]="CRLF"})(uw||(uw={}));var fw;(function(n){n[n.Left=1]="Left",n[n.Center=2]="Center",n[n.Right=3]="Right"})(fw||(fw={}));var gw;(function(n){n[n.Increase=0]="Increase",n[n.Decrease=1]="Decrease"})(gw||(gw={}));var mw;(function(n){n[n.None=0]="None",n[n.Indent=1]="Indent",n[n.IndentOutdent=2]="IndentOutdent",n[n.Outdent=3]="Outdent"})(mw||(mw={}));var pw;(function(n){n[n.Both=0]="Both",n[n.Right=1]="Right",n[n.Left=2]="Left",n[n.None=3]="None"})(pw||(pw={}));var _w;(function(n){n[n.Type=1]="Type",n[n.Parameter=2]="Parameter"})(_w||(_w={}));var bw;(function(n){n[n.Automatic=0]="Automatic",n[n.Explicit=1]="Explicit"})(bw||(bw={}));var vw;(function(n){n[n.Invoke=0]="Invoke",n[n.Automatic=1]="Automatic"})(vw||(vw={}));var ww;(function(n){n[n.DependsOnKbLayout=-1]="DependsOnKbLayout",n[n.Unknown=0]="Unknown",n[n.Backspace=1]="Backspace",n[n.Tab=2]="Tab",n[n.Enter=3]="Enter",n[n.Shift=4]="Shift",n[n.Ctrl=5]="Ctrl",n[n.Alt=6]="Alt",n[n.PauseBreak=7]="PauseBreak",n[n.CapsLock=8]="CapsLock",n[n.Escape=9]="Escape",n[n.Space=10]="Space",n[n.PageUp=11]="PageUp",n[n.PageDown=12]="PageDown",n[n.End=13]="End",n[n.Home=14]="Home",n[n.LeftArrow=15]="LeftArrow",n[n.UpArrow=16]="UpArrow",n[n.RightArrow=17]="RightArrow",n[n.DownArrow=18]="DownArrow",n[n.Insert=19]="Insert",n[n.Delete=20]="Delete",n[n.Digit0=21]="Digit0",n[n.Digit1=22]="Digit1",n[n.Digit2=23]="Digit2",n[n.Digit3=24]="Digit3",n[n.Digit4=25]="Digit4",n[n.Digit5=26]="Digit5",n[n.Digit6=27]="Digit6",n[n.Digit7=28]="Digit7",n[n.Digit8=29]="Digit8",n[n.Digit9=30]="Digit9",n[n.KeyA=31]="KeyA",n[n.KeyB=32]="KeyB",n[n.KeyC=33]="KeyC",n[n.KeyD=34]="KeyD",n[n.KeyE=35]="KeyE",n[n.KeyF=36]="KeyF",n[n.KeyG=37]="KeyG",n[n.KeyH=38]="KeyH",n[n.KeyI=39]="KeyI",n[n.KeyJ=40]="KeyJ",n[n.KeyK=41]="KeyK",n[n.KeyL=42]="KeyL",n[n.KeyM=43]="KeyM",n[n.KeyN=44]="KeyN",n[n.KeyO=45]="KeyO",n[n.KeyP=46]="KeyP",n[n.KeyQ=47]="KeyQ",n[n.KeyR=48]="KeyR",n[n.KeyS=49]="KeyS",n[n.KeyT=50]="KeyT",n[n.KeyU=51]="KeyU",n[n.KeyV=52]="KeyV",n[n.KeyW=53]="KeyW",n[n.KeyX=54]="KeyX",n[n.KeyY=55]="KeyY",n[n.KeyZ=56]="KeyZ",n[n.Meta=57]="Meta",n[n.ContextMenu=58]="ContextMenu",n[n.F1=59]="F1",n[n.F2=60]="F2",n[n.F3=61]="F3",n[n.F4=62]="F4",n[n.F5=63]="F5",n[n.F6=64]="F6",n[n.F7=65]="F7",n[n.F8=66]="F8",n[n.F9=67]="F9",n[n.F10=68]="F10",n[n.F11=69]="F11",n[n.F12=70]="F12",n[n.F13=71]="F13",n[n.F14=72]="F14",n[n.F15=73]="F15",n[n.F16=74]="F16",n[n.F17=75]="F17",n[n.F18=76]="F18",n[n.F19=77]="F19",n[n.F20=78]="F20",n[n.F21=79]="F21",n[n.F22=80]="F22",n[n.F23=81]="F23",n[n.F24=82]="F24",n[n.NumLock=83]="NumLock",n[n.ScrollLock=84]="ScrollLock",n[n.Semicolon=85]="Semicolon",n[n.Equal=86]="Equal",n[n.Comma=87]="Comma",n[n.Minus=88]="Minus",n[n.Period=89]="Period",n[n.Slash=90]="Slash",n[n.Backquote=91]="Backquote",n[n.BracketLeft=92]="BracketLeft",n[n.Backslash=93]="Backslash",n[n.BracketRight=94]="BracketRight",n[n.Quote=95]="Quote",n[n.OEM_8=96]="OEM_8",n[n.IntlBackslash=97]="IntlBackslash",n[n.Numpad0=98]="Numpad0",n[n.Numpad1=99]="Numpad1",n[n.Numpad2=100]="Numpad2",n[n.Numpad3=101]="Numpad3",n[n.Numpad4=102]="Numpad4",n[n.Numpad5=103]="Numpad5",n[n.Numpad6=104]="Numpad6",n[n.Numpad7=105]="Numpad7",n[n.Numpad8=106]="Numpad8",n[n.Numpad9=107]="Numpad9",n[n.NumpadMultiply=108]="NumpadMultiply",n[n.NumpadAdd=109]="NumpadAdd",n[n.NUMPAD_SEPARATOR=110]="NUMPAD_SEPARATOR",n[n.NumpadSubtract=111]="NumpadSubtract",n[n.NumpadDecimal=112]="NumpadDecimal",n[n.NumpadDivide=113]="NumpadDivide",n[n.KEY_IN_COMPOSITION=114]="KEY_IN_COMPOSITION",n[n.ABNT_C1=115]="ABNT_C1",n[n.ABNT_C2=116]="ABNT_C2",n[n.AudioVolumeMute=117]="AudioVolumeMute",n[n.AudioVolumeUp=118]="AudioVolumeUp",n[n.AudioVolumeDown=119]="AudioVolumeDown",n[n.BrowserSearch=120]="BrowserSearch",n[n.BrowserHome=121]="BrowserHome",n[n.BrowserBack=122]="BrowserBack",n[n.BrowserForward=123]="BrowserForward",n[n.MediaTrackNext=124]="MediaTrackNext",n[n.MediaTrackPrevious=125]="MediaTrackPrevious",n[n.MediaStop=126]="MediaStop",n[n.MediaPlayPause=127]="MediaPlayPause",n[n.LaunchMediaPlayer=128]="LaunchMediaPlayer",n[n.LaunchMail=129]="LaunchMail",n[n.LaunchApp2=130]="LaunchApp2",n[n.Clear=131]="Clear",n[n.MAX_VALUE=132]="MAX_VALUE"})(ww||(ww={}));var Cw;(function(n){n[n.Hint=1]="Hint",n[n.Info=2]="Info",n[n.Warning=4]="Warning",n[n.Error=8]="Error"})(Cw||(Cw={}));var yw;(function(n){n[n.Unnecessary=1]="Unnecessary",n[n.Deprecated=2]="Deprecated"})(yw||(yw={}));var Sw;(function(n){n[n.Inline=1]="Inline",n[n.Gutter=2]="Gutter"})(Sw||(Sw={}));var xw;(function(n){n[n.Normal=1]="Normal",n[n.Underlined=2]="Underlined"})(xw||(xw={}));var Lw;(function(n){n[n.UNKNOWN=0]="UNKNOWN",n[n.TEXTAREA=1]="TEXTAREA",n[n.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",n[n.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",n[n.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",n[n.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",n[n.CONTENT_TEXT=6]="CONTENT_TEXT",n[n.CONTENT_EMPTY=7]="CONTENT_EMPTY",n[n.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",n[n.CONTENT_WIDGET=9]="CONTENT_WIDGET",n[n.OVERVIEW_RULER=10]="OVERVIEW_RULER",n[n.SCROLLBAR=11]="SCROLLBAR",n[n.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",n[n.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"})(Lw||(Lw={}));var kw;(function(n){n[n.AIGenerated=1]="AIGenerated"})(kw||(kw={}));var Dw;(function(n){n[n.Invoke=0]="Invoke",n[n.Automatic=1]="Automatic"})(Dw||(Dw={}));var Ew;(function(n){n[n.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",n[n.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",n[n.TOP_CENTER=2]="TOP_CENTER"})(Ew||(Ew={}));var Iw;(function(n){n[n.Left=1]="Left",n[n.Center=2]="Center",n[n.Right=4]="Right",n[n.Full=7]="Full"})(Iw||(Iw={}));var Tw;(function(n){n[n.Word=0]="Word",n[n.Line=1]="Line",n[n.Suggest=2]="Suggest"})(Tw||(Tw={}));var Nw;(function(n){n[n.Left=0]="Left",n[n.Right=1]="Right",n[n.None=2]="None",n[n.LeftOfInjectedText=3]="LeftOfInjectedText",n[n.RightOfInjectedText=4]="RightOfInjectedText"})(Nw||(Nw={}));var Mw;(function(n){n[n.Off=0]="Off",n[n.On=1]="On",n[n.Relative=2]="Relative",n[n.Interval=3]="Interval",n[n.Custom=4]="Custom"})(Mw||(Mw={}));var Aw;(function(n){n[n.None=0]="None",n[n.Text=1]="Text",n[n.Blocks=2]="Blocks"})(Aw||(Aw={}));var Rw;(function(n){n[n.Smooth=0]="Smooth",n[n.Immediate=1]="Immediate"})(Rw||(Rw={}));var Pw;(function(n){n[n.Auto=1]="Auto",n[n.Hidden=2]="Hidden",n[n.Visible=3]="Visible"})(Pw||(Pw={}));var Ow;(function(n){n[n.LTR=0]="LTR",n[n.RTL=1]="RTL"})(Ow||(Ow={}));var Fw;(function(n){n.Off="off",n.OnCode="onCode",n.On="on"})(Fw||(Fw={}));var Bw;(function(n){n[n.Invoke=1]="Invoke",n[n.TriggerCharacter=2]="TriggerCharacter",n[n.ContentChange=3]="ContentChange"})(Bw||(Bw={}));var Ww;(function(n){n[n.File=0]="File",n[n.Module=1]="Module",n[n.Namespace=2]="Namespace",n[n.Package=3]="Package",n[n.Class=4]="Class",n[n.Method=5]="Method",n[n.Property=6]="Property",n[n.Field=7]="Field",n[n.Constructor=8]="Constructor",n[n.Enum=9]="Enum",n[n.Interface=10]="Interface",n[n.Function=11]="Function",n[n.Variable=12]="Variable",n[n.Constant=13]="Constant",n[n.String=14]="String",n[n.Number=15]="Number",n[n.Boolean=16]="Boolean",n[n.Array=17]="Array",n[n.Object=18]="Object",n[n.Key=19]="Key",n[n.Null=20]="Null",n[n.EnumMember=21]="EnumMember",n[n.Struct=22]="Struct",n[n.Event=23]="Event",n[n.Operator=24]="Operator",n[n.TypeParameter=25]="TypeParameter"})(Ww||(Ww={}));var zw;(function(n){n[n.Deprecated=1]="Deprecated"})(zw||(zw={}));var Vw;(function(n){n[n.Hidden=0]="Hidden",n[n.Blink=1]="Blink",n[n.Smooth=2]="Smooth",n[n.Phase=3]="Phase",n[n.Expand=4]="Expand",n[n.Solid=5]="Solid"})(Vw||(Vw={}));var Hw;(function(n){n[n.Line=1]="Line",n[n.Block=2]="Block",n[n.Underline=3]="Underline",n[n.LineThin=4]="LineThin",n[n.BlockOutline=5]="BlockOutline",n[n.UnderlineThin=6]="UnderlineThin"})(Hw||(Hw={}));var Uw;(function(n){n[n.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",n[n.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",n[n.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",n[n.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"})(Uw||(Uw={}));var $w;(function(n){n[n.None=0]="None",n[n.Same=1]="Same",n[n.Indent=2]="Indent",n[n.DeepIndent=3]="DeepIndent"})($w||($w={}));var iN=class{static{this.CtrlCmd=2048}static{this.Shift=1024}static{this.Alt=512}static{this.WinCtrl=256}static chord(e,t){return Y9(e,t)}};function qw(){return{editor:void 0,languages:void 0,CancellationTokenSource:on,Emitter:M,KeyCode:ww,KeyMod:iN,Position:P,Range:k,Selection:ze,SelectionDirection:Ow,MarkerSeverity:Cw,MarkerTag:yw,Uri:ye,Token:na}}wo();X();$e();Ui();me();me();fe();X();var zN=class extends R{constructor(e){super(),this._onDidChange=this._register(new M),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(e,!0),this._mediaQueryList=null,this._handleChange(e,!1)}_handleChange(e,t){this._mediaQueryList?.removeEventListener("change",this._listener),this._mediaQueryList=e.matchMedia(`(resolution: ${e.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),t&&this._onDidChange.fire()}},VN=class extends R{get value(){return this._value}constructor(e){super(),this._onDidChange=this._register(new M),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio(e);let t=this._register(new zN(e));this._register(t.onDidChange(()=>{this._value=this._getPixelRatio(e),this._onDidChange.fire(this._value)}))}_getPixelRatio(e){let t=document.createElement("canvas").getContext("2d"),i=e.devicePixelRatio||1,o=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return i/o}},HN=class{constructor(){this.mapWindowIdToPixelRatioMonitor=new Map}_getOrCreatePixelRatioMonitor(e){let t=vg(e),i=this.mapWindowIdToPixelRatioMonitor.get(t);return i||(i=cd(new VN(e)),this.mapWindowIdToPixelRatioMonitor.set(t,i),cd(j.once(t8)(({vscodeWindowId:o})=>{o===t&&(i?.dispose(),this.mapWindowIdToPixelRatioMonitor.delete(t))}))),i}getInstance(e){return this._getOrCreatePixelRatioMonitor(e)}},xg=new HN;fe();X();var ab=class{constructor(e){this.domNode=e,this._maxWidth="",this._width="",this._height="",this._top="",this._left="",this._bottom="",this._right="",this._paddingLeft="",this._fontFamily="",this._fontWeight="",this._fontSize="",this._fontStyle="",this._fontFeatureSettings="",this._fontVariationSettings="",this._textDecoration="",this._lineHeight="",this._letterSpacing="",this._className="",this._display="",this._position="",this._visibility="",this._color="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(e){let t=aa(e);this._maxWidth!==t&&(this._maxWidth=t,this.domNode.style.maxWidth=this._maxWidth)}setWidth(e){let t=aa(e);this._width!==t&&(this._width=t,this.domNode.style.width=this._width)}setHeight(e){let t=aa(e);this._height!==t&&(this._height=t,this.domNode.style.height=this._height)}setTop(e){let t=aa(e);this._top!==t&&(this._top=t,this.domNode.style.top=this._top)}setLeft(e){let t=aa(e);this._left!==t&&(this._left=t,this.domNode.style.left=this._left)}setBottom(e){let t=aa(e);this._bottom!==t&&(this._bottom=t,this.domNode.style.bottom=this._bottom)}setRight(e){let t=aa(e);this._right!==t&&(this._right=t,this.domNode.style.right=this._right)}setPaddingLeft(e){let t=aa(e);this._paddingLeft!==t&&(this._paddingLeft=t,this.domNode.style.paddingLeft=this._paddingLeft)}setFontFamily(e){this._fontFamily!==e&&(this._fontFamily=e,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(e){this._fontWeight!==e&&(this._fontWeight=e,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(e){let t=aa(e);this._fontSize!==t&&(this._fontSize=t,this.domNode.style.fontSize=this._fontSize)}setFontStyle(e){this._fontStyle!==e&&(this._fontStyle=e,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(e){this._fontFeatureSettings!==e&&(this._fontFeatureSettings=e,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(e){this._fontVariationSettings!==e&&(this._fontVariationSettings=e,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(e){this._textDecoration!==e&&(this._textDecoration=e,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(e){let t=aa(e);this._lineHeight!==t&&(this._lineHeight=t,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(e){let t=aa(e);this._letterSpacing!==t&&(this._letterSpacing=t,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(e){this._className!==e&&(this._className=e,this.domNode.className=this._className)}toggleClassName(e,t){this.domNode.classList.toggle(e,t),this._className=this.domNode.className}setDisplay(e){this._display!==e&&(this._display=e,this.domNode.style.display=this._display)}setPosition(e){this._position!==e&&(this._position=e,this.domNode.style.position=this._position)}setVisibility(e){this._visibility!==e&&(this._visibility=e,this.domNode.style.visibility=this._visibility)}setColor(e){this._color!==e&&(this._color=e,this.domNode.style.color=this._color)}setBackgroundColor(e){this._backgroundColor!==e&&(this._backgroundColor=e,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(e){this._layerHint!==e&&(this._layerHint=e,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(e){this._boxShadow!==e&&(this._boxShadow=e,this.domNode.style.boxShadow=e)}setContain(e){this._contain!==e&&(this._contain=e,this.domNode.style.contain=this._contain)}setAttribute(e,t){this.domNode.setAttribute(e,t)}removeAttribute(e){this.domNode.removeAttribute(e)}appendChild(e){this.domNode.appendChild(e.domNode)}removeChild(e){this.domNode.removeChild(e.domNode)}};function aa(n){return typeof n=="number"?`${n}px`:n}function Ne(n){return new ab(n)}function gi(n,e){n instanceof ab?(n.setFontFamily(e.getMassagedFontFamily()),n.setFontWeight(e.fontWeight),n.setFontSize(e.fontSize),n.setFontFeatureSettings(e.fontFeatureSettings),n.setFontVariationSettings(e.fontVariationSettings),n.setLineHeight(e.lineHeight),n.setLetterSpacing(e.letterSpacing)):(n.style.fontFamily=e.getMassagedFontFamily(),n.style.fontWeight=e.fontWeight,n.style.fontSize=e.fontSize+"px",n.style.fontFeatureSettings=e.fontFeatureSettings,n.style.fontVariationSettings=e.fontVariationSettings,n.style.lineHeight=e.lineHeight+"px",n.style.letterSpacing=e.letterSpacing+"px")}var MC=class{constructor(e,t){this.chr=e,this.type=t,this.width=0}fulfill(e){this.width=e}},UN=class n{constructor(e,t){this._bareFontInfo=e,this._requests=t,this._container=null,this._testElements=null}read(e){this._createDomElements(),e.document.body.appendChild(this._container),this._readFromDomElements(),this._container?.remove(),this._container=null,this._testElements=null}_createDomElements(){let e=document.createElement("div");e.style.position="absolute",e.style.top="-50000px",e.style.width="50000px";let t=document.createElement("div");gi(t,this._bareFontInfo),e.appendChild(t);let i=document.createElement("div");gi(i,this._bareFontInfo),i.style.fontWeight="bold",e.appendChild(i);let o=document.createElement("div");gi(o,this._bareFontInfo),o.style.fontStyle="italic",e.appendChild(o);let s=[];for(let r of this._requests){let a;r.type===0&&(a=t),r.type===2&&(a=i),r.type===1&&(a=o),a.appendChild(document.createElement("br"));let l=document.createElement("span");n._render(l,r),a.appendChild(l),s.push(l)}this._container=e,this._testElements=s}static _render(e,t){if(t.chr===" "){let i="\xA0";for(let o=0;o<8;o++)i+=i;e.innerText=i}else{let i=t.chr;for(let o=0;o<8;o++)i+=i;e.textContent=i}}_readFromDomElements(){for(let e=0,t=this._requests.length;e<t;e++){let i=this._requests[e],o=this._testElements[e];i.fulfill(o.offsetWidth/256)}}};function b8(n,e,t){new UN(e,t).read(n)}dt();fe();var Sr=new class{constructor(){this._zoomLevel=0,this._onDidChangeZoomLevel=new M,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event}getZoomLevel(){return this._zoomLevel}setZoomLevel(n){n=Math.min(Math.max(-5,n),20),this._zoomLevel!==n&&(this._zoomLevel=n,this._onDidChangeZoomLevel.fire(this._zoomLevel))}};var EG=De?1.5:1.35,$N=8,Yh=class n{static createFromValidatedSettings(e,t,i){let o=e.get(49),s=e.get(53),r=e.get(52),a=e.get(51),l=e.get(54),c=e.get(67),d=e.get(64);return n._create(o,s,r,a,l,c,d,t,i)}static _create(e,t,i,o,s,r,a,l,c){r===0?r=EG*i:r<$N&&(r=r*i),r=Math.round(r),r<$N&&(r=$N);let d=1+(c?0:Sr.getZoomLevel()*.1);return i*=d,r*=d,s===Yf.TRANSLATE&&(t==="normal"||t==="bold"?s=Yf.OFF:(s=`'wght' ${parseInt(t,10)}`,t="normal")),new n({pixelRatio:l,fontFamily:e,fontWeight:t,fontSize:i,fontFeatureSettings:o,fontVariationSettings:s,lineHeight:r,letterSpacing:a})}constructor(e){this._bareFontInfoBrand=void 0,this.pixelRatio=e.pixelRatio,this.fontFamily=String(e.fontFamily),this.fontWeight=String(e.fontWeight),this.fontSize=e.fontSize,this.fontFeatureSettings=e.fontFeatureSettings,this.fontVariationSettings=e.fontVariationSettings,this.lineHeight=e.lineHeight|0,this.letterSpacing=e.letterSpacing}getId(){return`${this.pixelRatio}-${this.fontFamily}-${this.fontWeight}-${this.fontSize}-${this.fontFeatureSettings}-${this.fontVariationSettings}-${this.lineHeight}-${this.letterSpacing}`}getMassagedFontFamily(){let e=po.fontFamily,t=n._wrapInQuotes(this.fontFamily);return e&&this.fontFamily!==e?`${t}, ${e}`:t}static _wrapInQuotes(e){return/[,"']/.test(e)?e:/[+ ]/.test(e)?`"${e}"`:e}},IG=2,Qh=class extends Yh{constructor(e,t){super(e),this._editorStylingBrand=void 0,this.version=IG,this.isTrusted=t,this.isMonospace=e.isMonospace,this.typicalHalfwidthCharacterWidth=e.typicalHalfwidthCharacterWidth,this.typicalFullwidthCharacterWidth=e.typicalFullwidthCharacterWidth,this.canUseHalfwidthRightwardsArrow=e.canUseHalfwidthRightwardsArrow,this.spaceWidth=e.spaceWidth,this.middotWidth=e.middotWidth,this.wsmiddotWidth=e.wsmiddotWidth,this.maxDigitWidth=e.maxDigitWidth}equals(e){return this.fontFamily===e.fontFamily&&this.fontWeight===e.fontWeight&&this.fontSize===e.fontSize&&this.fontFeatureSettings===e.fontFeatureSettings&&this.fontVariationSettings===e.fontVariationSettings&&this.lineHeight===e.lineHeight&&this.letterSpacing===e.letterSpacing&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.typicalFullwidthCharacterWidth===e.typicalFullwidthCharacterWidth&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.maxDigitWidth===e.maxDigitWidth}};var qN=class extends R{constructor(){super(...arguments),this._cache=new Map,this._evictUntrustedReadingsTimeout=-1,this._onDidChange=this._register(new M),this.onDidChange=this._onDidChange.event}dispose(){this._evictUntrustedReadingsTimeout!==-1&&(clearTimeout(this._evictUntrustedReadingsTimeout),this._evictUntrustedReadingsTimeout=-1),super.dispose()}clearAllFontInfos(){this._cache.clear(),this._onDidChange.fire()}_ensureCache(e){let t=vg(e),i=this._cache.get(t);return i||(i=new KN,this._cache.set(t,i)),i}_writeToCache(e,t,i){this._ensureCache(e).put(t,i),!i.isTrusted&&this._evictUntrustedReadingsTimeout===-1&&(this._evictUntrustedReadingsTimeout=e.setTimeout(()=>{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings(e)},5e3))}_evictUntrustedReadings(e){let t=this._ensureCache(e),i=t.getValues(),o=!1;for(let s of i)s.isTrusted||(o=!0,t.remove(s));o&&this._onDidChange.fire()}readFontInfo(e,t){let i=this._ensureCache(e);if(!i.has(t)){let o=this._actualReadFontInfo(e,t);(o.typicalHalfwidthCharacterWidth<=2||o.typicalFullwidthCharacterWidth<=2||o.spaceWidth<=2||o.maxDigitWidth<=2)&&(o=new Qh({pixelRatio:xg.getInstance(e).value,fontFamily:o.fontFamily,fontWeight:o.fontWeight,fontSize:o.fontSize,fontFeatureSettings:o.fontFeatureSettings,fontVariationSettings:o.fontVariationSettings,lineHeight:o.lineHeight,letterSpacing:o.letterSpacing,isMonospace:o.isMonospace,typicalHalfwidthCharacterWidth:Math.max(o.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(o.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:o.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(o.spaceWidth,5),middotWidth:Math.max(o.middotWidth,5),wsmiddotWidth:Math.max(o.wsmiddotWidth,5),maxDigitWidth:Math.max(o.maxDigitWidth,5)},!1)),this._writeToCache(e,t,o)}return i.get(t)}_createRequest(e,t,i,o){let s=new MC(e,t);return i.push(s),o?.push(s),s}_actualReadFontInfo(e,t){let i=[],o=[],s=this._createRequest("n",0,i,o),r=this._createRequest("\uFF4D",0,i,null),a=this._createRequest(" ",0,i,o),l=this._createRequest("0",0,i,o),c=this._createRequest("1",0,i,o),d=this._createRequest("2",0,i,o),h=this._createRequest("3",0,i,o),u=this._createRequest("4",0,i,o),f=this._createRequest("5",0,i,o),g=this._createRequest("6",0,i,o),m=this._createRequest("7",0,i,o),_=this._createRequest("8",0,i,o),b=this._createRequest("9",0,i,o),v=this._createRequest("\u2192",0,i,o),C=this._createRequest("\uFFEB",0,i,null),w=this._createRequest("\xB7",0,i,o),S=this._createRequest("\u2E31",0,i,null),L="|/-_ilm%";for(let F=0,W=L.length;F<W;F++)this._createRequest(L.charAt(F),0,i,o),this._createRequest(L.charAt(F),1,i,o),this._createRequest(L.charAt(F),2,i,o);b8(e,t,i);let x=Math.max(l.width,c.width,d.width,h.width,u.width,f.width,g.width,m.width,_.width,b.width),D=t.fontFeatureSettings===Qr.OFF,E=o[0].width;for(let F=1,W=o.length;D&&F<W;F++){let ie=E-o[F].width;if(ie<-.001||ie>.001){D=!1;break}}let U=!0;return D&&C.width!==E&&(U=!1),C.width>v.width&&(U=!1),new Qh({pixelRatio:xg.getInstance(e).value,fontFamily:t.fontFamily,fontWeight:t.fontWeight,fontSize:t.fontSize,fontFeatureSettings:t.fontFeatureSettings,fontVariationSettings:t.fontVariationSettings,lineHeight:t.lineHeight,letterSpacing:t.letterSpacing,isMonospace:D,typicalHalfwidthCharacterWidth:s.width,typicalFullwidthCharacterWidth:r.width,canUseHalfwidthRightwardsArrow:U,spaceWidth:a.width,middotWidth:w.width,wsmiddotWidth:S.width,maxDigitWidth:x},!0)}},KN=class{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(e){let t=e.getId();return!!this._values[t]}get(e){let t=e.getId();return this._values[t]}put(e,t){let i=e.getId();this._keys[i]=e,this._values[i]=t}remove(e){let t=e.getId();delete this._keys[t],delete this._values[t]}getValues(){return Object.keys(this._keys).map(e=>this._values[e])}},lb=new qN;kd();Lr();ys();Rt();X();ht();fe();X();Fo();dt();$e();var M8="default",GG="$initialize",A8=!1;function mb(n){$a&&(A8||(A8=!0,console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/microsoft/monaco-editor#faq")),console.warn(n.message))}var nM=class{constructor(e,t,i,o,s){this.vsWorker=e,this.req=t,this.channel=i,this.method=o,this.args=s,this.type=0}},ey=class{constructor(e,t,i,o){this.vsWorker=e,this.seq=t,this.res=i,this.err=o,this.type=1}},oM=class{constructor(e,t,i,o,s){this.vsWorker=e,this.req=t,this.channel=i,this.eventName=o,this.arg=s,this.type=2}},sM=class{constructor(e,t,i){this.vsWorker=e,this.req=t,this.event=i,this.type=3}},rM=class{constructor(e,t){this.vsWorker=e,this.req=t,this.type=4}},aM=class{constructor(e){this._workerId=-1,this._handler=e,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(e){this._workerId=e}sendMessage(e,t,i){let o=String(++this._lastSentReq);return new Promise((s,r)=>{this._pendingReplies[o]={resolve:s,reject:r},this._send(new nM(this._workerId,o,e,t,i))})}listen(e,t,i){let o=null,s=new M({onWillAddFirstListener:()=>{o=String(++this._lastSentReq),this._pendingEmitters.set(o,s),this._send(new oM(this._workerId,o,e,t,i))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(o),this._send(new rM(this._workerId,o)),o=null}});return s.event}handleMessage(e){!e||!e.vsWorker||this._workerId!==-1&&e.vsWorker!==this._workerId||this._handleMessage(e)}createProxyToRemoteChannel(e,t){let i={get:(o,s)=>(typeof s=="string"&&!o[s]&&(P8(s)?o[s]=r=>this.listen(e,s,r):R8(s)?o[s]=this.listen(e,s,void 0):s.charCodeAt(0)===36&&(o[s]=async(...r)=>(await t?.(),this.sendMessage(e,s,r)))),o[s])};return new Proxy(Object.create(null),i)}_handleMessage(e){switch(e.type){case 1:return this._handleReplyMessage(e);case 0:return this._handleRequestMessage(e);case 2:return this._handleSubscribeEventMessage(e);case 3:return this._handleEventMessage(e);case 4:return this._handleUnsubscribeEventMessage(e)}}_handleReplyMessage(e){if(!this._pendingReplies[e.seq]){console.warn("Got reply to unknown seq");return}let t=this._pendingReplies[e.seq];if(delete this._pendingReplies[e.seq],e.err){let i=e.err;e.err.$isError&&(i=new Error,i.name=e.err.name,i.message=e.err.message,i.stack=e.err.stack),t.reject(i);return}t.resolve(e.res)}_handleRequestMessage(e){let t=e.req;this._handler.handleMessage(e.channel,e.method,e.args).then(o=>{this._send(new ey(this._workerId,t,o,void 0))},o=>{o.detail instanceof Error&&(o.detail=BT(o.detail)),this._send(new ey(this._workerId,t,void 0,BT(o)))})}_handleSubscribeEventMessage(e){let t=e.req,i=this._handler.handleEvent(e.channel,e.eventName,e.arg)(o=>{this._send(new sM(this._workerId,t,o))});this._pendingEvents.set(t,i)}_handleEventMessage(e){if(!this._pendingEmitters.has(e.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(e.req).fire(e.event)}_handleUnsubscribeEventMessage(e){if(!this._pendingEvents.has(e.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(e.req).dispose(),this._pendingEvents.delete(e.req)}_send(e){let t=[];if(e.type===0)for(let i=0;i<e.args.length;i++)e.args[i]instanceof ArrayBuffer&&t.push(e.args[i]);else e.type===1&&e.res instanceof ArrayBuffer&&t.push(e.res);this._handler.sendMessage(e,t)}},ty=class extends R{constructor(e,t){super(),this._localChannels=new Map,this._worker=this._register(e.create({amdModuleId:"vs/base/common/worker/simpleWorker",esmModuleLocation:t.esmModuleLocation,label:t.label},s=>{this._protocol.handleMessage(s)},s=>{Ue(s)})),this._protocol=new aM({sendMessage:(s,r)=>{this._worker.postMessage(s,r)},handleMessage:(s,r,a)=>this._handleMessage(s,r,a),handleEvent:(s,r,a)=>this._handleEvent(s,r,a)}),this._protocol.setWorkerId(this._worker.getId());let i=null,o=globalThis.require;typeof o<"u"&&typeof o.getConfig=="function"?i=o.getConfig():typeof globalThis.requirejs<"u"&&(i=globalThis.requirejs.s.contexts._.config),this._onModuleLoaded=this._protocol.sendMessage(M8,GG,[this._worker.getId(),JSON.parse(JSON.stringify(i)),t.amdModuleId]),this.proxy=this._protocol.createProxyToRemoteChannel(M8,async()=>{await this._onModuleLoaded}),this._onModuleLoaded.catch(s=>{this._onError("Worker failed to load "+t.amdModuleId,s)})}_handleMessage(e,t,i){let o=this._localChannels.get(e);if(!o)return Promise.reject(new Error(`Missing channel ${e} on main thread`));if(typeof o[t]!="function")return Promise.reject(new Error(`Missing method ${t} on main thread channel ${e}`));try{return Promise.resolve(o[t].apply(o,i))}catch(s){return Promise.reject(s)}}_handleEvent(e,t,i){let o=this._localChannels.get(e);if(!o)throw new Error(`Missing channel ${e} on main thread`);if(P8(t)){let s=o[t].call(o,i);if(typeof s!="function")throw new Error(`Missing dynamic event ${t} on main thread channel ${e}.`);return s}if(R8(t)){let s=o[t];if(typeof s!="function")throw new Error(`Missing event ${t} on main thread channel ${e}.`);return s}throw new Error(`Malformed event name ${t}`)}setChannel(e,t){this._localChannels.set(e,t)}_onError(e,t){console.error(e),console.info(t)}};function R8(n){return n[0]==="o"&&n[1]==="n"&&Ka(n.charCodeAt(2))}function P8(n){return/^onDynamic/.test(n)&&Ka(n.charCodeAt(9))}ht();function Is(n,e){let t=globalThis.MonacoEnvironment;if(t?.createTrustedTypesPolicy)try{return t.createTrustedTypesPolicy(n,e)}catch(i){Ue(i);return}try{return globalThis.trustedTypes?.createPolicy(n,e)}catch(i){Ue(i);return}}ht();Fo();X();tt();ke();var ou=!0,Tg;typeof self=="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope"&&globalThis.workerttPolicy!==void 0?Tg=globalThis.workerttPolicy:Tg=Is("defaultWorkerFactory",{createScriptURL:n=>n});function ZG(n,e){let t=globalThis.MonacoEnvironment;if(t){if(typeof t.getWorker=="function")return t.getWorker("workerMain.js",e);if(typeof t.getWorkerUrl=="function"){let i=t.getWorkerUrl("workerMain.js",e);return new Worker(Tg?Tg.createScriptURL(i):i,{name:e,type:ou?"module":void 0})}}if(n){let i=YG(e,n.toString(!0)),o=new Worker(Tg?Tg.createScriptURL(i):i,{name:e,type:ou?"module":void 0});return ou?QG(o):o}throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function YG(n,e,t){let i=/^((http:)|(https:)|(file:)|(vscode-file:))/.test(e);if(!(i&&e.substring(0,globalThis.origin.length)!==globalThis.origin)){let s=e.lastIndexOf("?"),r=e.lastIndexOf("#",s),a=s>0?new URLSearchParams(e.substring(s+1,~r?r:void 0)):new URLSearchParams;_C.addSearchParam(a,!0,!0),a.toString()?e=`${e}?${a.toString()}#${n}`:e=`${e}#${n}`}!ou&&!i&&(e=new URL(e,globalThis.origin).toString());let o=new Blob([Hf([`/*${n}*/`,t?`globalThis.MonacoEnvironment = { baseUrl: '${t}' };`:void 0,`globalThis._VSCODE_NLS_MESSAGES = ${JSON.stringify(m_())};`,`globalThis._VSCODE_NLS_LANGUAGE = ${JSON.stringify(Ph())};`,`globalThis._VSCODE_FILE_ROOT = '${globalThis._VSCODE_FILE_ROOT}';`,"const ttPolicy = globalThis.trustedTypes?.createPolicy('defaultWorkerFactory', { createScriptURL: value => value });","globalThis.workerttPolicy = ttPolicy;",ou?`await import(ttPolicy?.createScriptURL('${e}') ?? '${e}');`:`importScripts(ttPolicy?.createScriptURL('${e}') ?? '${e}');`,ou?"globalThis.postMessage({ type: 'vscode-worker-ready' });":void 0,`/*${n}*/`]).join("")],{type:"application/javascript"});return URL.createObjectURL(o)}function QG(n){return new Promise((e,t)=>{n.onmessage=function(i){i.data.type==="vscode-worker-ready"&&(n.onmessage=null,e(n))},n.onerror=t})}function XG(n){return typeof n.then=="function"}var lM=class extends R{constructor(e,t,i,o,s,r){super(),this.id=i,this.label=o;let a=ZG(e,o);XG(a)?this.worker=a:this.worker=Promise.resolve(a),this.postMessage(t,[]),this.worker.then(l=>{l.onmessage=function(c){s(c.data)},l.onmessageerror=r,typeof l.addEventListener=="function"&&l.addEventListener("error",r)}),this._register(ce(()=>{this.worker?.then(l=>{l.onmessage=null,l.onmessageerror=null,l.removeEventListener("error",r),l.terminate()}),this.worker=null}))}getId(){return this.id}postMessage(e,t){this.worker?.then(i=>{try{i.postMessage(e,t)}catch(o){Ue(o),Ue(new Error(`FAILED to post message to '${this.label}'-worker`,{cause:o}))}})}},cM=class{constructor(e,t){this.amdModuleId=e,this.label=t,this.esmModuleLocation=ou?cc.asBrowserUri(`${e}.esm.js`):void 0}},dM=class n{static{this.LAST_WORKER_ID=0}constructor(){this._webWorkerFailedBeforeError=!1}create(e,t,i){let o=++n.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError)throw this._webWorkerFailedBeforeError;return new lM(e.esmModuleLocation,e.amdModuleId,o,e.label||"anonymous"+o,t,s=>{mb(s),this._webWorkerFailedBeforeError=s,i(s)})}};function O8(n,e){let t=typeof n=="string"?new cM(n,e):n;return new ty(new dM,t)}Ee();ha();var ua=class{constructor(e,t,i,o){this.originalStart=e,this.originalLength=t,this.modifiedStart=i,this.modifiedLength=o}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}};bg();var Cy=class{constructor(e){this.source=e}getElements(){let e=this.source,t=new Int32Array(e.length);for(let i=0,o=e.length;i<o;i++)t[i]=e.charCodeAt(i);return t}};function rB(n,e,t){return new du(new Cy(n),new Cy(e)).ComputeDiff(t).changes}var Ed=class{static Assert(e,t){if(!e)throw new Error(t)}},Id=class{static Copy(e,t,i,o,s){for(let r=0;r<s;r++)i[o+r]=e[t+r]}static Copy2(e,t,i,o,s){for(let r=0;r<s;r++)i[o+r]=e[t+r]}},yy=class{constructor(){this.m_changes=[],this.m_originalStart=1073741824,this.m_modifiedStart=1073741824,this.m_originalCount=0,this.m_modifiedCount=0}MarkNextChange(){(this.m_originalCount>0||this.m_modifiedCount>0)&&this.m_changes.push(new ua(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_originalCount++}AddModifiedElement(e,t){this.m_originalStart=Math.min(this.m_originalStart,e),this.m_modifiedStart=Math.min(this.m_modifiedStart,t),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}},du=class n{constructor(e,t,i=null){this.ContinueProcessingPredicate=i,this._originalSequence=e,this._modifiedSequence=t;let[o,s,r]=n._getElements(e),[a,l,c]=n._getElements(t);this._hasStrings=r&&c,this._originalStringElements=o,this._originalElementsOrHash=s,this._modifiedStringElements=a,this._modifiedElementsOrHash=l,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(e){return e.length>0&&typeof e[0]=="string"}static _getElements(e){let t=e.getElements();if(n._isStringArray(t)){let i=new Int32Array(t.length);for(let o=0,s=t.length;o<s;o++)i[o]=wC(t[o],0);return[t,i,!0]}return t instanceof Int32Array?[[],t,!1]:[[],new Int32Array(t),!1]}ElementsAreEqual(e,t){return this._originalElementsOrHash[e]!==this._modifiedElementsOrHash[t]?!1:this._hasStrings?this._originalStringElements[e]===this._modifiedStringElements[t]:!0}ElementsAreStrictEqual(e,t){if(!this.ElementsAreEqual(e,t))return!1;let i=n._getStrictElement(this._originalSequence,e),o=n._getStrictElement(this._modifiedSequence,t);return i===o}static _getStrictElement(e,t){return typeof e.getStrictElement=="function"?e.getStrictElement(t):null}OriginalElementsAreEqual(e,t){return this._originalElementsOrHash[e]!==this._originalElementsOrHash[t]?!1:this._hasStrings?this._originalStringElements[e]===this._originalStringElements[t]:!0}ModifiedElementsAreEqual(e,t){return this._modifiedElementsOrHash[e]!==this._modifiedElementsOrHash[t]?!1:this._hasStrings?this._modifiedStringElements[e]===this._modifiedStringElements[t]:!0}ComputeDiff(e){return this._ComputeDiff(0,this._originalElementsOrHash.length-1,0,this._modifiedElementsOrHash.length-1,e)}_ComputeDiff(e,t,i,o,s){let r=[!1],a=this.ComputeDiffRecursive(e,t,i,o,r);return s&&(a=this.PrettifyChanges(a)),{quitEarly:r[0],changes:a}}ComputeDiffRecursive(e,t,i,o,s){for(s[0]=!1;e<=t&&i<=o&&this.ElementsAreEqual(e,i);)e++,i++;for(;t>=e&&o>=i&&this.ElementsAreEqual(t,o);)t--,o--;if(e>t||i>o){let h;return i<=o?(Ed.Assert(e===t+1,"originalStart should only be one more than originalEnd"),h=[new ua(e,0,i,o-i+1)]):e<=t?(Ed.Assert(i===o+1,"modifiedStart should only be one more than modifiedEnd"),h=[new ua(e,t-e+1,i,0)]):(Ed.Assert(e===t+1,"originalStart should only be one more than originalEnd"),Ed.Assert(i===o+1,"modifiedStart should only be one more than modifiedEnd"),h=[]),h}let r=[0],a=[0],l=this.ComputeRecursionPoint(e,t,i,o,r,a,s),c=r[0],d=a[0];if(l!==null)return l;if(!s[0]){let h=this.ComputeDiffRecursive(e,c,i,d,s),u=[];return s[0]?u=[new ua(c+1,t-(c+1)+1,d+1,o-(d+1)+1)]:u=this.ComputeDiffRecursive(c+1,t,d+1,o,s),this.ConcatenateChanges(h,u)}return[new ua(e,t-e+1,i,o-i+1)]}WALKTRACE(e,t,i,o,s,r,a,l,c,d,h,u,f,g,m,_,b,v){let C=null,w=null,S=new yy,L=t,x=i,D=f[0]-_[0]-o,E=-1073741824,U=this.m_forwardHistory.length-1;do{let F=D+e;F===L||F<x&&c[F-1]<c[F+1]?(h=c[F+1],g=h-D-o,h<E&&S.MarkNextChange(),E=h,S.AddModifiedElement(h+1,g),D=F+1-e):(h=c[F-1]+1,g=h-D-o,h<E&&S.MarkNextChange(),E=h-1,S.AddOriginalElement(h,g+1),D=F-1-e),U>=0&&(c=this.m_forwardHistory[U],e=c[0],L=1,x=c.length-1)}while(--U>=-1);if(C=S.getReverseChanges(),v[0]){let F=f[0]+1,W=_[0]+1;if(C!==null&&C.length>0){let ie=C[C.length-1];F=Math.max(F,ie.getOriginalEnd()),W=Math.max(W,ie.getModifiedEnd())}w=[new ua(F,u-F+1,W,m-W+1)]}else{S=new yy,L=r,x=a,D=f[0]-_[0]-l,E=1073741824,U=b?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{let F=D+s;F===L||F<x&&d[F-1]>=d[F+1]?(h=d[F+1]-1,g=h-D-l,h>E&&S.MarkNextChange(),E=h+1,S.AddOriginalElement(h+1,g+1),D=F+1-s):(h=d[F-1],g=h-D-l,h>E&&S.MarkNextChange(),E=h,S.AddModifiedElement(h+1,g+1),D=F-1-s),U>=0&&(d=this.m_reverseHistory[U],s=d[0],L=1,x=d.length-1)}while(--U>=-1);w=S.getChanges()}return this.ConcatenateChanges(C,w)}ComputeRecursionPoint(e,t,i,o,s,r,a){let l=0,c=0,d=0,h=0,u=0,f=0;e--,i--,s[0]=0,r[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];let g=t-e+(o-i),m=g+1,_=new Int32Array(m),b=new Int32Array(m),v=o-i,C=t-e,w=e-i,S=t-o,x=(C-v)%2===0;_[v]=e,b[C]=t,a[0]=!1;for(let D=1;D<=g/2+1;D++){let E=0,U=0;d=this.ClipDiagonalBound(v-D,D,v,m),h=this.ClipDiagonalBound(v+D,D,v,m);for(let W=d;W<=h;W+=2){W===d||W<h&&_[W-1]<_[W+1]?l=_[W+1]:l=_[W-1]+1,c=l-(W-v)-w;let ie=l;for(;l<t&&c<o&&this.ElementsAreEqual(l+1,c+1);)l++,c++;if(_[W]=l,l+c>E+U&&(E=l,U=c),!x&&Math.abs(W-C)<=D-1&&l>=b[W])return s[0]=l,r[0]=c,ie<=b[W]&&D<=1448?this.WALKTRACE(v,d,h,w,C,u,f,S,_,b,l,t,s,c,o,r,x,a):null}let F=(E-e+(U-i)-D)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(E,F))return a[0]=!0,s[0]=E,r[0]=U,F>0&&D<=1448?this.WALKTRACE(v,d,h,w,C,u,f,S,_,b,l,t,s,c,o,r,x,a):(e++,i++,[new ua(e,t-e+1,i,o-i+1)]);u=this.ClipDiagonalBound(C-D,D,C,m),f=this.ClipDiagonalBound(C+D,D,C,m);for(let W=u;W<=f;W+=2){W===u||W<f&&b[W-1]>=b[W+1]?l=b[W+1]-1:l=b[W-1],c=l-(W-C)-S;let ie=l;for(;l>e&&c>i&&this.ElementsAreEqual(l,c);)l--,c--;if(b[W]=l,x&&Math.abs(W-v)<=D&&l<=_[W])return s[0]=l,r[0]=c,ie>=_[W]&&D<=1448?this.WALKTRACE(v,d,h,w,C,u,f,S,_,b,l,t,s,c,o,r,x,a):null}if(D<=1447){let W=new Int32Array(h-d+2);W[0]=v-d+1,Id.Copy2(_,d,W,1,h-d+1),this.m_forwardHistory.push(W),W=new Int32Array(f-u+2),W[0]=C-u+1,Id.Copy2(b,u,W,1,f-u+1),this.m_reverseHistory.push(W)}}return this.WALKTRACE(v,d,h,w,C,u,f,S,_,b,l,t,s,c,o,r,x,a)}PrettifyChanges(e){for(let t=0;t<e.length;t++){let i=e[t],o=t<e.length-1?e[t+1].originalStart:this._originalElementsOrHash.length,s=t<e.length-1?e[t+1].modifiedStart:this._modifiedElementsOrHash.length,r=i.originalLength>0,a=i.modifiedLength>0;for(;i.originalStart+i.originalLength<o&&i.modifiedStart+i.modifiedLength<s&&(!r||this.OriginalElementsAreEqual(i.originalStart,i.originalStart+i.originalLength))&&(!a||this.ModifiedElementsAreEqual(i.modifiedStart,i.modifiedStart+i.modifiedLength));){let c=this.ElementsAreStrictEqual(i.originalStart,i.modifiedStart);if(this.ElementsAreStrictEqual(i.originalStart+i.originalLength,i.modifiedStart+i.modifiedLength)&&!c)break;i.originalStart++,i.modifiedStart++}let l=[null];if(t<e.length-1&&this.ChangesOverlap(e[t],e[t+1],l)){e[t]=l[0],e.splice(t+1,1),t--;continue}}for(let t=e.length-1;t>=0;t--){let i=e[t],o=0,s=0;if(t>0){let h=e[t-1];o=h.originalStart+h.originalLength,s=h.modifiedStart+h.modifiedLength}let r=i.originalLength>0,a=i.modifiedLength>0,l=0,c=this._boundaryScore(i.originalStart,i.originalLength,i.modifiedStart,i.modifiedLength);for(let h=1;;h++){let u=i.originalStart-h,f=i.modifiedStart-h;if(u<o||f<s||r&&!this.OriginalElementsAreEqual(u,u+i.originalLength)||a&&!this.ModifiedElementsAreEqual(f,f+i.modifiedLength))break;let m=(u===o&&f===s?5:0)+this._boundaryScore(u,i.originalLength,f,i.modifiedLength);m>c&&(c=m,l=h)}i.originalStart-=l,i.modifiedStart-=l;let d=[null];if(t>0&&this.ChangesOverlap(e[t-1],e[t],d)){e[t-1]=d[0],e.splice(t,1),t++;continue}}if(this._hasStrings)for(let t=1,i=e.length;t<i;t++){let o=e[t-1],s=e[t],r=s.originalStart-o.originalStart-o.originalLength,a=o.originalStart,l=s.originalStart+s.originalLength,c=l-a,d=o.modifiedStart,h=s.modifiedStart+s.modifiedLength,u=h-d;if(r<5&&c<20&&u<20){let f=this._findBetterContiguousSequence(a,c,d,u,r);if(f){let[g,m]=f;(g!==o.originalStart+o.originalLength||m!==o.modifiedStart+o.modifiedLength)&&(o.originalLength=g-o.originalStart,o.modifiedLength=m-o.modifiedStart,s.originalStart=g+r,s.modifiedStart=m+r,s.originalLength=l-s.originalStart,s.modifiedLength=h-s.modifiedStart)}}}return e}_findBetterContiguousSequence(e,t,i,o,s){if(t<s||o<s)return null;let r=e+t-s+1,a=i+o-s+1,l=0,c=0,d=0;for(let h=e;h<r;h++)for(let u=i;u<a;u++){let f=this._contiguousSequenceScore(h,u,s);f>0&&f>l&&(l=f,c=h,d=u)}return l>0?[c,d]:null}_contiguousSequenceScore(e,t,i){let o=0;for(let s=0;s<i;s++){if(!this.ElementsAreEqual(e+s,t+s))return 0;o+=this._originalStringElements[e+s].length}return o}_OriginalIsBoundary(e){return e<=0||e>=this._originalElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._originalStringElements[e])}_OriginalRegionIsBoundary(e,t){if(this._OriginalIsBoundary(e)||this._OriginalIsBoundary(e-1))return!0;if(t>0){let i=e+t;if(this._OriginalIsBoundary(i-1)||this._OriginalIsBoundary(i))return!0}return!1}_ModifiedIsBoundary(e){return e<=0||e>=this._modifiedElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[e])}_ModifiedRegionIsBoundary(e,t){if(this._ModifiedIsBoundary(e)||this._ModifiedIsBoundary(e-1))return!0;if(t>0){let i=e+t;if(this._ModifiedIsBoundary(i-1)||this._ModifiedIsBoundary(i))return!0}return!1}_boundaryScore(e,t,i,o){let s=this._OriginalRegionIsBoundary(e,t)?1:0,r=this._ModifiedRegionIsBoundary(i,o)?1:0;return s+r}ConcatenateChanges(e,t){let i=[];if(e.length===0||t.length===0)return t.length>0?t:e;if(this.ChangesOverlap(e[e.length-1],t[0],i)){let o=new Array(e.length+t.length-1);return Id.Copy(e,0,o,0,e.length-1),o[e.length-1]=i[0],Id.Copy(t,1,o,e.length,t.length-1),o}else{let o=new Array(e.length+t.length);return Id.Copy(e,0,o,0,e.length),Id.Copy(t,0,o,e.length,t.length),o}}ChangesOverlap(e,t,i){if(Ed.Assert(e.originalStart<=t.originalStart,"Left change is not less than or equal to right change"),Ed.Assert(e.modifiedStart<=t.modifiedStart,"Left change is not less than or equal to right change"),e.originalStart+e.originalLength>=t.originalStart||e.modifiedStart+e.modifiedLength>=t.modifiedStart){let o=e.originalStart,s=e.originalLength,r=e.modifiedStart,a=e.modifiedLength;return e.originalStart+e.originalLength>=t.originalStart&&(s=t.originalStart+t.originalLength-e.originalStart),e.modifiedStart+e.modifiedLength>=t.modifiedStart&&(a=t.modifiedStart+t.modifiedLength-e.modifiedStart),i[0]=new ua(o,s,r,a),!0}else return i[0]=null,!1}ClipDiagonalBound(e,t,i,o){if(e>=0&&e<o)return e;let s=i,r=o-i-1,a=t%2===0;if(e<0){let l=s%2===0;return a===l?0:1}else{let l=r%2===0;return a===l?o-1:o-2}}};Ee();Sy();var zM=class{constructor(e,t,i){let o=new Uint8Array(e*t);for(let s=0,r=e*t;s<r;s++)o[s]=i;this._data=o,this.rows=e,this.cols=t}get(e,t){return this._data[e*this.cols+t]}set(e,t,i){this._data[e*this.cols+t]=i}},VM=class{constructor(e){let t=0,i=0;for(let s=0,r=e.length;s<r;s++){let[a,l,c]=e[s];l>t&&(t=l),a>i&&(i=a),c>i&&(i=c)}t++,i++;let o=new zM(i,t,0);for(let s=0,r=e.length;s<r;s++){let[a,l,c]=e[s];o.set(a,l,c)}this._states=o,this._maxCharCode=t}nextState(e,t){return t<0||t>=this._maxCharCode?0:this._states.get(e,t)}},WM=null;function _Z(){return WM===null&&(WM=new VM([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),WM}var xb=null;function bZ(){if(xb===null){xb=new gc(0);let n=` <>'"\u3001\u3002\uFF61\uFF64\uFF0C\uFF0E\uFF1A\uFF1B\u2018\u3008\u300C\u300E\u3014\uFF08\uFF3B\uFF5B\uFF62\uFF63\uFF5D\uFF3D\uFF09\u3015\u300F\u300D\u3009\u2019\uFF40\uFF5E\u2026`;for(let t=0;t<n.length;t++)xb.set(n.charCodeAt(t),1);let e=".,;:";for(let t=0;t<e.length;t++)xb.set(e.charCodeAt(t),2)}return xb}var HM=class n{static _createLink(e,t,i,o,s){let r=s-1;do{let a=t.charCodeAt(r);if(e.get(a)!==2)break;r--}while(r>o);if(o>0){let a=t.charCodeAt(o-1),l=t.charCodeAt(r);(a===40&&l===41||a===91&&l===93||a===123&&l===125)&&r--}return{range:{startLineNumber:i,startColumn:o+1,endLineNumber:i,endColumn:r+2},url:t.substring(o,r+1)}}static computeLinks(e,t=_Z()){let i=bZ(),o=[];for(let s=1,r=e.getLineCount();s<=r;s++){let a=e.getLineContent(s),l=a.length,c=0,d=0,h=0,u=1,f=!1,g=!1,m=!1,_=!1;for(;c<l;){let b=!1,v=a.charCodeAt(c);if(u===13){let C;switch(v){case 40:f=!0,C=0;break;case 41:C=f?0:1;break;case 91:m=!0,g=!0,C=0;break;case 93:m=!1,C=g?0:1;break;case 123:_=!0,C=0;break;case 125:C=_?0:1;break;case 39:case 34:case 96:h===v?C=1:h===39||h===34||h===96?C=0:C=1;break;case 42:C=h===42?1:0;break;case 124:C=h===124?1:0;break;case 32:C=m?0:1;break;default:C=i.get(v)}C===1&&(o.push(n._createLink(i,a,s,d,c)),b=!0)}else if(u===12){let C;v===91?(g=!0,C=0):C=i.get(v),C===1?b=!0:u=13}else u=t.nextState(u,v),u===0&&(b=!0);b&&(u=1,f=!1,g=!1,_=!1,d=c+1,h=v),c++}u===13&&o.push(n._createLink(i,a,s,d,l))}return o}};function lB(n){return!n||typeof n.getLineCount!="function"||typeof n.getLineContent!="function"?[]:HM.computeLinks(n)}var xy=class n{constructor(){this._defaultValueSet=[["true","false"],["True","False"],["Private","Public","Friend","ReadOnly","Partial","Protected","WriteOnly"],["public","protected","private"]]}static{this.INSTANCE=new n}navigateValueSet(e,t,i,o,s){if(e&&t){let r=this.doNavigateValueSet(t,s);if(r)return{range:e,value:r}}if(i&&o){let r=this.doNavigateValueSet(o,s);if(r)return{range:i,value:r}}return null}doNavigateValueSet(e,t){let i=this.numberReplace(e,t);return i!==null?i:this.textReplace(e,t)}numberReplace(e,t){let i=Math.pow(10,e.length-(e.lastIndexOf(".")+1)),o=Number(e),s=parseFloat(e);return!isNaN(o)&&!isNaN(s)&&o===s?o===0&&!t?null:(o=Math.floor(o*i),o+=t?i:-i,String(o/i)):null}textReplace(e,t){return this.valueSetsReplace(this._defaultValueSet,e,t)}valueSetsReplace(e,t,i){let o=null;for(let s=0,r=e.length;o===null&&s<r;s++)o=this.valueSetReplace(e[s],t,i);return o}valueSetReplace(e,t,i){let o=e.indexOf(t);return o>=0?(o+=i?1:-1,o<0?o=e.length-1:o%=e.length,e[o]):null}};var Lb=class n{static{this.CHANNEL_NAME="editorWorkerHost"}static getChannel(e){return e.getChannel(n.CHANNEL_NAME)}static setChannel(e,t){e.setChannel(n.CHANNEL_NAME,t)}};Jf();Ee();Ty();$e();la();Kf();var Ny=class{static computeUnicodeHighlights(e,t,i){let o=i?i.startLineNumber:1,s=i?i.endLineNumber:e.getLineCount(),r=new My(t),a=r.getCandidateCodePoints(),l;a==="allNonBasicAscii"?l=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):l=new RegExp(`${LZ(Array.from(a))}`,"g");let c=new nl(null,l),d=[],h=!1,u,f=0,g=0,m=0;e:for(let _=o,b=s;_<=b;_++){let v=e.getLineContent(_),C=v.length;c.reset(0);do if(u=c.next(v),u){let w=u.index,S=u.index+u[0].length;if(w>0){let E=v.charCodeAt(w-1);ri(E)&&w--}if(S+1<C){let E=v.charCodeAt(S-1);ri(E)&&S++}let L=v.substring(w,S),x=td(w+1,w_,v,0);x&&x.endColumn<=w+1&&(x=null);let D=r.shouldHighlightNonBasicASCII(L,x?x.word:null);if(D!==0){if(D===3?f++:D===2?g++:D===1?m++:Lg(D),d.length>=1e3){h=!0;break e}d.push(new k(_,w+1,_,S+1))}}while(u)}return{ranges:d,hasMore:h,ambiguousCharacterCount:f,invisibleCharacterCount:g,nonBasicAsciiCharacterCount:m}}static computeUnicodeHighlightReason(e,t){let i=new My(t);switch(i.shouldHighlightNonBasicASCII(e,null)){case 0:return null;case 2:return{kind:1};case 3:{let s=e.codePointAt(0),r=i.ambiguousCharacters.getPrimaryConfusable(s),a=sg.getLocales().filter(l=>!sg.getInstance(new Set([...t.allowedLocales,l])).isAmbiguous(s));return{kind:0,confusableWith:String.fromCodePoint(r),notAmbiguousInLocales:a}}case 1:return{kind:2}}}};function LZ(n,e){return`[${Xo(n.map(i=>String.fromCodePoint(i)).join(""))}]`}var My=class{constructor(e){this.options=e,this.allowedCodePoints=new Set(e.allowedCodePoints),this.ambiguousCharacters=sg.getInstance(new Set(e.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";let e=new Set;if(this.options.invisibleCharacters)for(let t of rg.codePoints)gB(String.fromCodePoint(t))||e.add(t);if(this.options.ambiguousCharacters)for(let t of this.ambiguousCharacters.getConfusableCodePoints())e.add(t);for(let t of this.allowedCodePoints)e.delete(t);return e}shouldHighlightNonBasicASCII(e,t){let i=e.codePointAt(0);if(this.allowedCodePoints.has(i))return 0;if(this.options.nonBasicASCII)return 1;let o=!1,s=!1;if(t)for(let r of t){let a=r.codePointAt(0),l=dg(r);o=o||l,!l&&!this.ambiguousCharacters.isAmbiguous(a)&&!rg.isInvisibleCharacter(a)&&(s=!0)}return!o&&s?0:this.options.invisibleCharacters&&!gB(e)&&rg.isInvisibleCharacter(i)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(i)?3:0}};function gB(n){return n===" "||n===`
|