|
|
globalThis&&globalThis.__awaiter;let jn=typeof document<"u"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0;function Qn(e,t){let n;return t.length===0?n=e:n=e.replace(/\{(\d+)\}/g,(s,r)=>{const i=r[0],o=t[i];let l=s;return typeof o=="string"?l=o:(typeof o=="number"||typeof o=="boolean"||o===void 0||o===null)&&(l=String(o)),l}),jn&&(n="["+n.replace(/[aouei]/g,"$&$&")+"]"),n}function Xn(e,t,...n){return Qn(t,n)}var lt;const Ee="en";let Ze=!1,Je=!1,Ge=!1,fn=!1,kt=!1,Ft=!1,dn=!1,He,je=Ee,Yn,Y;const V=typeof self=="object"?self:typeof global=="object"?global:{};let W;typeof V.vscode<"u"&&typeof V.vscode.process<"u"?W=V.vscode.process:typeof process<"u"&&(W=process);const Zn=typeof((lt=W==null?void 0:W.versions)===null||lt===void 0?void 0:lt.electron)=="string",Jn=Zn&&(W==null?void 0:W.type)==="renderer";if(typeof navigator=="object"&&!Jn)Y=navigator.userAgent,Ze=Y.indexOf("Windows")>=0,Je=Y.indexOf("Macintosh")>=0,Ft=(Y.indexOf("Macintosh")>=0||Y.indexOf("iPad")>=0||Y.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,Ge=Y.indexOf("Linux")>=0,dn=(Y==null?void 0:Y.indexOf("Mobi"))>=0,kt=!0,Xn({key:"ensureLoaderPluginIsLoaded",comment:["{Locked}"]},"_"),He=Ee,je=He;else if(typeof W=="object"){Ze=W.platform==="win32",Je=W.platform==="darwin",Ge=W.platform==="linux",Ge&&W.env.SNAP&&W.env.SNAP_REVISION,W.env.CI||W.env.BUILD_ARTIFACTSTAGINGDIRECTORY,He=Ee,je=Ee;const e=W.env.VSCODE_NLS_CONFIG;if(e)try{const t=JSON.parse(e),n=t.availableLanguages["*"];He=t.locale,je=n||Ee,Yn=t._translationsConfigFile}catch{}fn=!0}else console.error("Unable to resolve platform.");const Pe=Ze,Kn=Je,_i=Ge,pi=fn,es=kt,xi=kt&&typeof V.importScripts=="function",Li=Ft,wi=dn,ee=Y,vi=je,ts=typeof V.postMessage=="function"&&!V.importScripts,Si=(()=>{if(ts){const e=[];V.addEventListener("message",n=>{if(n.data&&n.data.vscodeScheduleAsyncWork)for(let s=0,r=e.length;s<r;s++){const i=e[s];if(i.id===n.data.vscodeScheduleAsyncWork){e.splice(s,1),i.callback();return}}});let t=0;return n=>{const s=++t;e.push({id:s,callback:n}),V.postMessage({vscodeScheduleAsyncWork:s},"*")}}return e=>setTimeout(e)})(),Ci=Je||Ft?2:Ze?1:3;let $t=!0,Gt=!1;function Ni(){if(!Gt){Gt=!0;const e=new Uint8Array(2);e[0]=1,e[1]=2,$t=new Uint16Array(e.buffer)[0]===512+1}return $t}const ns=!!(ee&&ee.indexOf("Chrome")>=0),Ai=!!(ee&&ee.indexOf("Firefox")>=0),yi=!!(!ns&&ee&&ee.indexOf("Safari")>=0),Mi=!!(ee&&ee.indexOf("Edg/")>=0);ee&&ee.indexOf("Android")>=0;var Ke;(function(e){function t(b){return b&&typeof b=="object"&&typeof b[Symbol.iterator]=="function"}e.is=t;const n=Object.freeze([]);function s(){return n}e.empty=s;function*r(b){yield b}e.single=r;function i(b){return t(b)?b:r(b)}e.wrap=i;function o(b){return b||n}e.from=o;function l(b){return!b||b[Symbol.iterator]().next().done===!0}e.isEmpty=l;function c(b){return b[Symbol.iterator]().next().value}e.first=c;function u(b,N){for(const w of b)if(N(w))return!0;return!1}e.some=u;function f(b,N){for(const w of b)if(N(w))return w}e.find=f;function*h(b,N){for(const w of b)N(w)&&(yield w)}e.filter=h;function*d(b,N){let w=0;for(const k of b)yield N(k,w++)}e.map=d;function*m(...b){for(const N of b)for(const w of N)yield w}e.concat=m;function g(b,N,w){let k=w;for(const E of b)k=N(k,E);return k}e.reduce=g;function*S(b,N,w=b.length){for(N<0&&(N+=b.length),w<0?w+=b.length:w>b.length&&(w=b.length);N<w;N++)yield b[N]}e.slice=S;function C(b,N=Number.POSITIVE_INFINITY){const w=[];if(N===0)return[w,b];const k=b[Symbol.iterator]();for(let E=0;E<N;E++){const G=k.next();if(G.done)return[w,e.empty()];w.push(G.value)}return[w,{[Symbol.iterator](){return k}}]}e.consume=C})(Ke||(Ke={}));class F{constructor(t){this.element=t,this.next=F.Undefined,this.prev=F.Undefined}}F.Undefined=new F(void 0);class Ie{constructor(){this._first=F.Undefined,this._last=F.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===F.Undefined}clear(){let t=this._first;for(;t!==F.Undefined;){const n=t.next;t.prev=F.Undefined,t.next=F.Undefined,t=n}this._first=F.Undefined,this._last=F.Undefined,this._size=0}unshi
`+t.stack):new Error(t.message+`
`+t.stack):t},0)}}emit(t){this.listeners.forEach(n=>{n(t)})}onUnexpectedError(t){this.unexpectedErrorHandler(t),this.emit(t)}onUnexpectedExternalError(t){this.unexpectedErrorHandler(t)}}const Ln=new Ls;function wn(e){vn(e)||Ln.onUnexpectedError(e)}function c0(e){vn(e)||Ln.onUnexpectedExternalError(e)}function Qt(e){if(e instanceof Error){const{name:t,message:n}=e,s=e.stacktrace||e.stack;return{$isError:!0,name:t,message:n,stack:s,noTelemetry:Ce.isErrorNoTelemetry(e)}}return e}const et="Canceled";function vn(e){return e instanceof ws?!0:e instanceof Error&&e.name===et&&e.message===et}class ws extends Error{constructor(){super(et),this.name=this.message}}function h0(){const e=new Error(et);return e.name=e.message,e}function f0(e){return e?new Error(`Illegal argument: ${e}`):new Error("Illegal argument")}function d0(e){return e?new Error(`Illegal state: ${e}`):new Error("Illegal state")}class m0 extends Error{constructor(t){super("NotSupported"),t&&(this.message=t)}}class Ce extends Error{constructor(t){super(t),this.name="CodeExpectedError"}static fromError(t){if(t instanceof Ce)return t;const n=new Ce;return n.message=t.message,n.stack=t.stack,n}static isErrorNoTelemetry(t){return t.name==="CodeExpectedError"}}class Pt extends Error{constructor(t){super(t||"An unexpected bug occurred."),Object.setPrototypeOf(this,Pt.prototype);debugger}}function Sn(e){const t=this;let n=!1,s;return function(){return n||(n=!0,s=e.apply(t,arguments)),s}}function g0(e){return e}function b0(e){return typeof e.dispose=="function"&&e.dispose.length===0}function It(e){if(Ke.is(e)){const t=[];for(const n of e)if(n)try{n.dispose()}catch(s){t.push(s)}if(t.length===1)throw t[0];if(t.length>1)throw new AggregateError(t,"Encountered errors while disposing of store");return Array.isArray(e)?[]:e}else if(e)return e.dispose(),e}function vs(...e){return Ve(()=>It(e))}function Ve(e){return{dispose:Sn(()=>{e()})}}class me{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{It(this._toDispose)}finally{this._toDispose.clear()}}add(t){if(!t)return t;if(t===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?me.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(t),t}}me.DISABLE_DISPOSED_WARNING=!1;class Ae{constructor(){this._store=new me,this._store}dispose(){this._store.dispose()}_register(t){if(t===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(t)}}Ae.None=Object.freeze({dispose(){}});class _0{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(t){var n;this._isDisposed||t===this._value||((n=this._value)===null||n===void 0||n.dispose(),this._value=t)}clear(){this.value=void 0}dispose(){var t;this._isDisposed=!0,(t=this._value)===null||t===void 0||t.dispose(),this._value=void 0}clearAndLeak(){const t=this._value;return this._value=void 0,t}}class p0{constructor(t){this._disposable=t,this._counter=1}acquire(){return this._counter++,this}release(){return--this._counter===0&&this._disposable.dispose(),this}}class Ss{constructor(){this.dispose=()=>{},this.unset=()=>{},this.isset=()=>!1}set(t){let n=t;return this.unset=()=>n=void 0,this.isset=()=>n!==void 0,this.dispose=()=>{n&&(n(),n=void 0)},this}}class x0{constructor(t){this.object=t}dispose(){}}class L0{constructor(){this._store=new Map,this._isDisposed=!1}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{It(this._store.values())}finally{this._store.clear()}}get(t){return this._store.get(t)}set(t,n,s=!1){var r;this._isDisposed&&console.warn(new Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),s||(r=this._store.get(t))===null||r===void 0||r.dispose(),this._store.set(t,n)}
`).slice(2).join(``))}}class ys{constructor(t,n,s){this.callback=t,this.callbackThis=n,this.stack=s,this.subscription=new Ss}invoke(t){this.callback.call(this.callbackThis,t)}}class z{constructor(t){var n,s,r,i,o;this._disposed=!1,this._options=t,this._leakageMon=!((n=this._options)===null||n===void 0)&&n.leakWarningThreshold?new As((r=(s=this._options)===null||s===void 0?void 0:s.leakWarningThreshold)!==null&&r!==void 0?r:Ns):void 0,this._perfMon=!((i=this._options)===null||i===void 0)&&i._profName?new Ne(this._options._profName):void 0,this._deliveryQueue=(o=this._options)===null||o===void 0?void 0:o.deliveryQueue}dispose(){var t,n,s,r;this._disposed||(this._disposed=!0,this._listeners&&this._listeners.clear(),(t=this._deliveryQueue)===null||t===void 0||t.clear(this),(s=(n=this._options)===null||n===void 0?void 0:n.onDidRemoveLastListener)===null||s===void 0||s.call(n),(r=this._leakageMon)===null||r===void 0||r.dispose())}get event(){return this._event||(this._event=(t,n,s)=>{var r,i,o;if(this._listeners||(this._listeners=new Ie),this._leakageMon&&this._listeners.size>this._leakageMon.threshold*3)return console.warn(`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far`),Ae.None;const l=this._listeners.isEmpty();l&&(!((r=this._options)===null||r===void 0)&&r.onWillAddFirstListener)&&this._options.onWillAddFirstListener(this);let c,u;this._leakageMon&&this._listeners.size>=Math.ceil(this._leakageMon.threshold*.2)&&(u=Bt.create(),c=this._leakageMon.check(u,this._listeners.size+1));const f=new ys(t,n,u),h=this._listeners.push(f);l&&(!((i=this._options)===null||i===void 0)&&i.onDidAddFirstListener)&&this._options.onDidAddFirstListener(this),!((o=this._options)===null||o===void 0)&&o.onDidAddListener&&this._options.onDidAddListener(this,t,n);const d=f.subscription.set(()=>{var m,g;c==null||c(),this._disposed||((g=(m=this._options)===null||m===void 0?void 0:m.onWillRemoveListener)===null||g===void 0||g.call(m,this),h(),this._options&&this._options.onDidRemoveLastListener&&(this._listeners&&!this._listeners.isEmpty()||this._options.onDidRemoveLastListener(this)))});return s instanceof me?s.add(d):Array.isArray(s)&&s.push(d),d}),this._event}fire(t){var n,s;if(this._listeners){this._deliveryQueue||(this._deliveryQueue=new Rs);for(const r of this._listeners)this._deliveryQueue.push(this,r,t);(n=this._perfMon)===null||n===void 0||n.start(this._deliveryQueue.size),this._deliveryQueue.deliver(),(s=this._perfMon)===null||s===void 0||s.stop()}}hasListeners(){return this._listeners?!this._listeners.isEmpty():!1}}class Ms{constructor(){this._queue=new Ie}get size(){return this._queue.size}push(t,n,s){this._queue.push(new Es(t,n,s))}clear(t){const n=new Ie;for(const s of this._queue)s.emitter!==t&&n.push(s);this._queue=n}deliver(){for(;this._queue.size>0;){const t=this._queue.shift();try{t.listener.invoke(t.event)}catch(n){wn(n)}}}}class Rs extends Ms{clear(t){this._queue.clear()}}class Es{constructor(t,n,s){this.emitter=t,this.listener=n,this.event=s}}class ks extends z{constructor(t){super(t),this._isPaused=0,this._eventQueue=new Ie,this._mergeFn=t==null?void 0:t.merge}pause(){this._isPaused++}resume(){if(this._isPaused!==0&&--this._isPaused===0)if(this._mergeFn){if(this._eventQueue.size>0){const t=Array.from(this._eventQueue);this._eventQueue.clear(),super.fire(this._mergeFn(t))}}else for(;!this._isPaused&&this._eventQueue.size!==0;)super.fire(this._eventQueue.shift())}fire(t){this._listeners&&(this._isPaused!==0?this._eventQueue.push(t):super.fire(t))}}class w0 extends ks{constructor(t){var n;super(t),this._delay=(n=t.delay)!==null&&n!==void 0?n:100}fire(t){this._handle||(this.pause(),this._handle=setTimeout(()=>{this._handle=void 0,this.resume()},this._delay)),super.fire(t)}}class v0 extends z{constructor(t){super(t),this._queuedEvents=[],this._mergeFn=t==null?void 0:t.merge}fire(t){this.hasListeners()&&(this._queuedEvents.push(t),this._queuedEvents.length===1&&queueMicrotask(()=>{this._mergeFn?super.fire(this._mergeFn(this._queuedEvents)):this._queuedEvents.forEach(n=>super.fire(n)),this._queuedEvents
`)>=0;let n=null;try{n=or(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:t,global:!0,unicode:!0})}catch{return null}if(!n)return null;let s=!this.isRegex&&!t;return s&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(s=this.matchCase),new Cr(n,this.wordSeparators?Gr(this.wordSeparators):null,s?this.searchString:null)}}function Qr(e){if(!e||e.length===0)return!1;for(let t=0,n=e.length;t<n;t++){const s=e.charCodeAt(t);if(s===10)return!0;if(s===92){if(t++,t>=n)break;const r=e.charCodeAt(t);if(r===110||r===114||r===87)return!0}}return!1}function Re(e,t,n){if(!n)return new At(e,null);const s=[];for(let r=0,i=t.length;r<i;r++)s[r]=t[r];return new At(e,s)}class Z1{constructor(t){const n=[];let s=0;for(let r=0,i=t.length;r<i;r++)t.charCodeAt(r)===10&&(n[s++]=r);this._lineFeedsOffsets=n}findLineFeedCountBeforeOffset(t){const n=this._lineFeedsOffsets;let s=0,r=n.length-1;if(r===-1||t<=n[0])return 0;for(;s<r;){const i=s+((r-s)/2>>0);n[i]>=t?r=i-1:n[i+1]>=t?(s=i,r=i):s=i+1}return s+1}}class Ca{static findMatches(t,n,s,r,i){const o=n.parseSearchRequest();return o?o.regex.multiline?this._doFindMatchesMultiline(t,s,new Fe(o.wordSeparators,o.regex),r,i):this._doFindMatchesLineByLine(t,s,o,r,i):[]}static _getMultilineMatchRange(t,n,s,r,i,o){let l,c=0;r?(c=r.findLineFeedCountBeforeOffset(i),l=n+i+c):l=n+i;let u;if(r){const m=r.findLineFeedCountBeforeOffset(i+o.length)-c;u=l+o.length+m}else u=l+o.length;const f=t.getPositionAt(l),h=t.getPositionAt(u);return new M(f.lineNumber,f.column,h.lineNumber,h.column)}static _doFindMatchesMultiline(t,n,s,r,i){const o=t.getOffsetAt(n.getStartPosition()),l=t.getValueInRange(n,1),c=t.getEOL()===`\r`?new Z1(l):null,u=[];let f=0,h;for(s.reset(0);h=s.next(l);)if(u[f++]=Re(this._getMultilineMatchRange(t,o,l,c,h.index,h[0]),h,r),f>=i)return u;return u}static _doFindMatchesLineByLine(t,n,s,r,i){const o=[];let l=0;if(n.startLineNumber===n.endLineNumber){const u=t.getLineContent(n.startLineNumber).substring(n.startColumn-1,n.endColumn-1);return l=this._findMatchesInLine(s,u,n.startLineNumber,n.startColumn-1,l,o,r,i),o}const c=t.getLineContent(n.startLineNumber).substring(n.startColumn-1);l=this._findMatchesInLine(s,c,n.startLineNumber,n.startColumn-1,l,o,r,i);for(let u=n.startLineNumber+1;u<n.endLineNumber&&l<i;u++)l=this._findMatchesInLine(s,t.getLineContent(u),u,0,l,o,r,i);if(l<i){const u=t.getLineContent(n.endLineNumber).substring(0,n.endColumn-1);l=this._findMatchesInLine(s,u,n.endLineNumber,0,l,o,r,i)}return o}static _findMatchesInLine(t,n,s,r,i,o,l,c){const u=t.wordSeparators;if(!l&&t.simpleSearch){const d=t.simpleSearch,m=d.length,g=n.length;let S=-m;for(;(S=n.indexOf(d,S+m))!==-1;)if((!u||qn(u,n,g,S,m))&&(o[i++]=new At(new M(s,S+1+r,s,S+1+m+r),null),i>=c))return i;return i}const f=new Fe(t.wordSeparators,t.regex);let h;f.reset(0);do if(h=f.next(n),h&&(o[i++]=Re(new M(s,h.index+1+r,s,h.index+1+h[0].length+r),h,l),i>=c))return i;while(h);return i}static findNextMatch(t,n,s,r){const i=n.parseSearchRequest();if(!i)return null;const o=new Fe(i.wordSeparators,i.regex);return i.regex.multiline?this._doFindNextMatchMultiline(t,s,o,r):this._doFindNextMatchLineByLine(t,s,o,r)}static _doFindNextMatchMultiline(t,n,s,r){const i=new U(n.lineNumber,1),o=t.getOffsetAt(i),l=t.getLineCount(),c=t.getValueInRange(new M(i.lineNumber,i.column,l,t.getLineMaxColumn(l)),1),u=t.getEOL()===`\r`?new Z1(c):null;s.reset(n.column-1);const f=s.next(c);return f?Re(this._getMultilineMatchRange(t,o,c,u,f.index,f[0]),f,r):n.lineNumber!==1||n.column!==1?this._doFindNextMatchMultiline(t,new U(1,1),s,r):null}static _doFindNextMatchLineByLine(t,n,s,r){const i=t.getLineCount(),o=n.lineNumber,l=t.getLineContent(o),c=this._findFirstMatchInLine(s,l,o,n.column,r);if(c)return c;for(let u=1;u<=i;u++){const f=(o+u-1)%i,h=t.getLineContent(f+1),d=this._findFirstMatchInLine(s,h,f+1,1,r);if(d)return d}return null}static _findFirstMatchInLine(t,n,s,r,i){t.reset(r-1);const o=t.next(n);return o?Re(new M(s,o.index+1,s,o.index+1+o[0].length),o,i):null}static findPreviousMatch(t,n,s,r){const i=n.parseSearchRequest();if(!i)return null;const o=new Fe(i.wordSeparators,i.regex);return i.regex.multiline?this._doFindPreviousMatchMultiline(t,s,o,r):this._doFindPreviousMatchLineByLine(t,s,o,r)}static _doFindPreviousMatchMultiline(t,n,s,r){const i=this._doFindMatchesMultiline(t,new M(1,1,n.lineNumber,n.column),s,r,10*jr);if(i.length>0)return i[i.length-1];const o=t.getLineCount();return n.lineNumber!==o||n.column!==t.getLineMaxColumn(o)?this._doFindPreviousMatchMultiline(t,new U(o,t.getLineMaxColumn(o)),s,r):null}static _doFindPreviousMatchLineByLine(t,n,s,r){const i=t.getLineCount(),o=n.lineNumber,l=t.getLineContent(o).substring(0,n.column-1),c=this._findLastMatchInLine(s,l,o,r);if(c)return c;for(let u=1;u<=i;u++){const f=(i+o-u-1)%i,h=t.getLineContent(f+1),d=this._findLastMatchInLine(s,h,f+1,r);if(d)return d}return null}static _findLastMatchInLine(t,n,s,r){let i=null,o;for(t.reset(0);o=t.next(n);)i=Re(new M(s,o.index+1,s,o.index+1+o[0].length),o,r);return i}}function Xr(e,t,n,s,r){if(s===0)return!0;const i=t.charCodeAt(s-1);if(e.get(i)!==0||i===13||i===10)return!0;if(r>0){const o=t.charCodeAt(s);if(e.get(o)!==0)return!0}return!1}function Yr(e,t,n,s,r){if(s+r===n)return!0;const i=t.charCodeAt(s+r);if(e.get(i)!==0||i===13||i===10)return!0;if(r>0){const o=t.charCodeAt(s+r-1);if(e.get(o)!==0)return!0}return!1}function qn(e,t,n,s,r){return Xr(e,t,n,s,r)&&Yr(e,t,n,s,r)}class Fe{constructor(t,n){this._wordSeparators=t,this._searchRegex=n,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(t){this._searchRegex.lastIndex=t,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(t){const n=t.length;let s;do{if(this._prevMatchStartIndex+this._prevMatchLength===n||(s=this._searchRegex.exec(t),!s))return null;const r=s.index,i=s[0].length;if(r===this._prevMatchStartIndex&&i===this._prevMatchLength){if(i===0){In(t,n,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=r,this._prevMatchLength=i,!this._wordSeparators||qn(this._wordSeparators,t,n,r,i))return s}while(s);return null}}class Zr{static computeUnicodeHighlights(t,n,s){const r=s?s.startLineNumber:1,i=s?s.endLineNumber:t.getLineCount(),o=new J1(n),l=o.getCandidateCodePoints();let c;l==="allNonBasicAscii"?c=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):c=new RegExp(`${Jr(Array.from(l))}`,"g");const u=new Fe(null,c),f=[];let h=!1,d,m=0,g=0,S=0;e:for(let C=r,b=i;C<=b;C++){const N=t.getLineContent(C),w=N.length;u.reset(0);do if(d=u.next(N),d){let k=d.index,E=d.index+d[0].length;if(k>0){const _=N.charCodeAt(k-1);Te(_)&&k--}if(E+1<w){const _=N.charCodeAt(E-1);Te(_)&&E++}const G=N.substring(k,E);let B=Dt(k+1,mn,N,0);B&&B.endColumn<=k+1&&(B=null);const L=o.shouldHighlightNonBasicASCII(G,B?B.word:null);if(L!==0){L===3?m++:L===2?g++:L===1?S++:Sr();const _=1e3;if(f.length>=_){h=!0;break e}f.push(new M(C,k+1,C,E+1))}}while(d)}return{ranges:f,hasMore:h,ambiguousCharacterCount:m,invisibleCharacterCount:g,nonBasicAsciiCharacterCount:S}}static computeUnicodeHighlightReason(t,n){const s=new J1(n);switch(s.shouldHighlightNonBasicASCII(t,null)){case 0:return null;case 2:return{kind:1};case 3:{const i=t.codePointAt(0),o=s.ambiguousCharacters.getPrimaryConfusable(i),l=X.getLocales().filter(c=>!X.getInstance(new Set([...n.allowedLocales,c])).isAmbiguous(i));return{kind:0,confusableWith:String.fromCodePoint(o),notAmbiguousInLoca
`||e===" "}class Mt{constructor(t,n,s){this.originalRange=t,this.modifiedRange=n,this.innerChanges=s}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}}class On{constructor(t,n){this.originalRange=t,this.modifiedRange=n}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}}class ne{constructor(t,n){this.startLineNumber=t,this.endLineNumberExclusive=n}get isEmpty(){return this.startLineNumber===this.endLineNumberExclusive}delta(t){return new ne(this.startLineNumber+t,this.endLineNumberExclusive+t)}get length(){return this.endLineNumberExclusive-this.startLineNumber}join(t){return new ne(Math.min(this.startLineNumber,t.startLineNumber),Math.max(this.endLineNumberExclusive,t.endLineNumberExclusive))}toString(){return`[${this.startLineNumber},${this.endLineNumberExclusive})`}}const Kr=3;class ei{computeDiff(t,n,s){var r;const o=new si(t,n,{maxComputationTime:s.maxComputationTimeMs,shouldIgnoreTrimWhitespace:s.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),l=[];let c=null;for(const u of o.changes){let f;u.originalEndLineNumber===0?f=new ne(u.originalStartLineNumber+1,u.originalStartLineNumber+1):f=new ne(u.originalStartLineNumber,u.originalEndLineNumber+1);let h;u.modifiedEndLineNumber===0?h=new ne(u.modifiedStartLineNumber+1,u.modifiedStartLineNumber+1):h=new ne(u.modifiedStartLineNumber,u.modifiedEndLineNumber+1);let d=new Mt(f,h,(r=u.charChanges)===null||r===void 0?void 0:r.map(m=>new On(new M(m.originalStartLineNumber,m.originalStartColumn,m.originalEndLineNumber,m.originalEndColumn),new M(m.modifiedStartLineNumber,m.modifiedStartColumn,m.modifiedEndLineNumber,m.modifiedEndColumn))));c&&(c.modifiedRange.endLineNumberExclusive===d.modifiedRange.startLineNumber||c.originalRange.endLineNumberExclusive===d.originalRange.startLineNumber)&&(d=new Mt(c.originalRange.join(d.originalRange),c.modifiedRange.join(d.modifiedRange),c.innerChanges&&d.innerChanges?c.innerChanges.concat(d.innerChanges):void 0),l.pop()),l.push(d),c=d}return qt(()=>Vn(l,(u,f)=>f.originalRange.startLineNumber-u.originalRange.endLineNumberExclusive===f.modifiedRange.startLineNumber-u.modifiedRange.endLineNumberExclusive&&u.originalRange.endLineNumberExclusive<f.originalRange.startLineNumber&&u.modifiedRange.endLineNumberExclusive<f.modifiedRange.startLineNumber)),{quitEarly:o.quitEarly,changes:l}}}function zn(e,t,n,s){return new ae(e,t,n).ComputeDiff(s)}let en=class{constructor(t){const n=[],s=[];for(let r=0,i=t.length;r<i;r++)n[r]=Rt(t[r],1),s[r]=Et(t[r],1);this.lines=t,this._startColumns=n,this._endColumns=s}getElements(){const t=[];for(let n=0,s=this.lines.length;n<s;n++)t[n]=this.lines[n].substring(this._startColumns[n]-1,this._endColumns[n]-1);return t}getStrictElement(t){return this.lines[t]}getStartLineNumber(t){return t+1}getEndLineNumber(t){return t+1}createCharSequence(t,n,s){const r=[],i=[],o=[];let l=0;for(let c=n;c<=s;c++){const u=this.lines[c],f=t?this._startColumns[c]:1,h=t?this._endColumns[c]:u.length+1;for(let d=f;d<h;d++)r[l]=u.charCodeAt(d-1),i[l]=c+1,o[l]=d,l++;!t&&c<s&&(r[l]=10,i[l]=c+1,o[l]=u.length+1,l++)}return new ti(r,i,o)}};class ti{constructor(t,n,s){this._charCodes=t,this._lineNumbers=n,this._columns=s}toString(){return"["+this._charCodes.map((t,n)=>(t===10?"\\n":String.fromCharCode(t))+`-(${this._lineNumbers[n]},${this._columns[n]})`).join(", ")+"]"}_assertIndex(t,n){if(t<0||t>=n.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(t){return t>0&&t===this._lineNumbers.length?this.getEndLineNumber(t-1):(this._assertIndex(t,this._lineNumbers),this._lineNumbers[t])}getEndLineNumber(t){return t===-1?this.getStartLineNumber(t+1):(this._assertIndex(t,this._lineNumbers),this._charCodes[t]===10?this._lineNumbers[t]+1:this._lineNumbers[t])}getStartColumn(t){return t>0&&t===this._columns.length?this.getEndColumn(t-1):(this._assertIndex(t,this._columns),this._columns[t])}getEndColumn(t){return t===-1?this.getStartColumn(t+1):(this._assertIndex(t,this._c
`.charCodeAt(0),r+=1)}}getElement(t){return this.elements[t]}get length(){return this.elements.length}getBoundaryScore(t){const n=cn(t>0?this.elements[t-1]:-1),s=cn(t<this.elements.length?this.elements[t]:-1);if(n===6&&s===7)return 0;let r=0;return n!==s&&(r+=10,s===1&&(r+=1)),r+=un(n),r+=un(s),r}translateOffset(t){let n=0,s=this.firstCharOnLineOffsets.length;for(;n<s;){const i=Math.floor((n+s)/2);this.firstCharOnLineOffsets[i]>t?s=i:n=i+1}const r=n===0?0:this.firstCharOnLineOffsets[n-1];return new U(n+1,t-r+1)}translateRange(t){return M.fromPositions(this.translateOffset(t.start),this.translateOffset(t.endExclusive))}}const mi={0:0,1:0,2:0,3:10,4:2,5:3,6:10,7:10};function un(e){return mi[e]}function cn(e){return e===10?7:e===13?6:gi(e)?5:e>=97&&e<=122?0:e>=65&&e<=90?1:e>=48&&e<=57?2:e===-1?3:4}function gi(e){return e===32||e===9}const hn={smart:new ei,experimental:new hi};var de=globalThis&&globalThis.__awaiter||function(e,t,n,s){function r(i){return i instanceof n?i:new n(function(o){o(i)})}return new(n||(n=Promise))(function(i,o){function l(f){try{u(s.next(f))}catch(h){o(h)}}function c(f){try{u(s.throw(f))}catch(h){o(h)}}function u(f){f.done?i(f.value):r(f.value).then(l,c)}u((s=s.apply(e,t||[])).next())})};class bi extends Tr{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(t){return this._lines[t-1]}getWordAtPosition(t,n){const s=Dt(t.column,is(n),this._lines[t.lineNumber-1],0);return s?new M(t.lineNumber,s.startColumn,t.lineNumber,s.endColumn):null}words(t){const n=this._lines,s=this._wordenize.bind(this);let r=0,i="",o=0,l=[];return{*[Symbol.iterator](){for(;;)if(o<l.length){const c=i.substring(l[o].start,l[o].end);o+=1,yield c}else if(r<n.length)i=n[r],l=s(i,t),o=0,r+=1;else break}}}getLineWords(t,n){const s=this._lines[t-1],r=this._wordenize(s,n),i=[];for(const o of r)i.push({word:s.substring(o.start,o.end),startColumn:o.start+1,endColumn:o.end+1});return i}_wordenize(t,n){const s=[];let r;for(n.lastIndex=0;(r=n.exec(t))&&r[0].length!==0;)s.push({start:r.index,end:r.index+r[0].length});return s}getValueInRange(t){if(t=this._validateRange(t),t.startLineNumber===t.endLineNumber)return this._lines[t.startLineNumber-1].substring(t.startColumn-1,t.endColumn-1);const n=this._eol,s=t.startLineNumber-1,r=t.endLineNumber-1,i=[];i.push(this._lines[s].substring(t.startColumn-1));for(let o=s+1;o<r;o++)i.push(this._lines[o]);return i.push(this._lines[r].substring(0,t.endColumn-1)),i.join(n)}offsetAt(t){return t=this._validatePosition(t),this._ensureLineStarts(),this._lineStarts.getPrefixSum(t.lineNumber-2)+(t.column-1)}positionAt(t){t=Math.floor(t),t=Math.max(0,t),this._ensureLineStarts();const n=this._lineStarts.getIndexOf(t),s=this._lines[n.index].length;return{lineNumber:1+n.index,column:1+Math.min(n.remainder,s)}}_validateRange(t){const n=this._validatePosition({lineNumber:t.startLineNumber,column:t.startColumn}),s=this._validatePosition({lineNumber:t.endLineNumber,column:t.endColumn});return n.lineNumber!==t.startLineNumber||n.column!==t.startColumn||s.lineNumber!==t.endLineNumber||s.column!==t.endColumn?{startLineNumber:n.lineNumber,startColumn:n.column,endLineNumber:s.lineNumber,endColumn:s.column}:t}_validatePosition(t){if(!U.isIPosition(t))throw new Error("bad position");let{lineNumber:n,column:s}=t,r=!1;if(n<1)n=1,s=1,r=!0;else if(n>this._lines.length)n=this._lines.length,s=this._lines[n-1].length+1,r=!0;else{const i=this._lines[n-1].length+1;s<1?(s=1,r=!0):s>i&&(s=i,r=!0)}return r?{lineNumber:n,column:s}:t}}class Se{constructor(t,n){this._host=t,this._models=Object.create(null),this._foreignModuleFactory=n,this._foreignModule=null}dispose(){this._models=Object.create(null)}_getModel(t){return this._models[t]}_getModels(){const t=[];return Object.keys(this._models).forEach(n=>t.push(this._models[n])),t}acceptNewModel(t){this._models[t.url]=new bi(ue.parse(t.url),t.lines,t.EOL,t.versionId)}acceptModelChanged(t,n){if(!this._models[t])return;this._models[t].onEvents(n)}acceptRemov
|