@jetcrab/pi-desk 1.1.5 → 1.1.8-dev
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/README.zh-CN.md +4 -4
- package/docs/README.md +8 -0
- package/docs/doc_asset/client-overview.webp +0 -0
- package/docs/doc_asset/multi-window.webp +0 -0
- package/docs/{pi-desk/plugins.md → plugins.md} +108 -1
- package/package.json +2 -2
- package/src/client/l2_biz/project-preview/l2-project-preview-dialog.tsx +3 -0
- package/src/client/l2_biz/workbench/file-workspace/l2-file-workspace-view.tsx +8 -0
- package/src/client/l2_biz/workbench/hooks/l2-workbench-chat-viewport.ts +81 -7
- package/src/client/l2_biz/workbench/l2-workbench-chat-view.tsx +2 -1
- package/src/client/l3_modules/project-files/l3-project-document-git.ts +82 -0
- package/src/client/l3_modules/project-files/l3-project-document-view.tsx +102 -5
- package/src/client/l3_modules/project-files/l3-project-file-browser.tsx +2 -6
- package/src/client/l3_modules/project-files/l3-project-file-runtime.ts +83 -1
- package/src/client/l3_modules/project-files/l3-project-file-tabs.tsx +24 -2
- package/src/client/l3_modules/project-files/l3-project-git-model.ts +32 -0
- package/src/client/l4_foundation/ui/code/l4-code-diff.tsx +25 -5
- package/src/client/l4_foundation/ui/code/l4-code-line-changes.ts +49 -0
- package/src/client/l4_foundation/ui/code/l4-code-line-changes.worker.ts +10 -0
- package/src/client/l4_foundation/ui/code/l4-code-line-markers.module.css +60 -0
- package/src/client/l4_foundation/ui/code/l4-code-line-markers.ts +156 -0
- package/src/client/l4_foundation/ui/code/l4-code-preview.tsx +61 -5
- package/src/client/l4_foundation/ui/code/l4-monaco-lines-diff.d.ts +21 -0
- package/src/client/l4_foundation/ui/shadcn/hover-card.tsx +28 -2
- package/src/common/l3_modules/project-files/l3-project-files-locale-messages.ts +16 -0
- package/src/server/l4_foundation/pidesk/l4-pidesk-runtime.ts +1 -1
- package/temp/build/pi-desk/release/.next/BUILD_ID +1 -1
- package/temp/build/pi-desk/release/.next/build-manifest.json +3 -3
- package/temp/build/pi-desk/release/.next/prerender-manifest.json +3 -3
- package/temp/build/pi-desk/release/.next/react-loadable-manifest.json +5 -4
- package/temp/build/pi-desk/release/.next/required-server-files.js +3 -3
- package/temp/build/pi-desk/release/.next/required-server-files.json +3 -3
- package/temp/build/pi-desk/release/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error.html +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error.rsc +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_not-found/page.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/api/health/route.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/login/page.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/app/page.js +6 -6
- package/temp/build/pi-desk/release/.next/server/app/page_client-reference-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/chunks/20842.js +1 -0
- package/temp/build/pi-desk/release/.next/server/chunks/25406.js +1 -1
- package/temp/build/pi-desk/release/.next/server/chunks/{9248.js → 354.js} +1 -1
- package/temp/build/pi-desk/release/.next/server/chunks/35985.js +6 -6
- package/temp/build/pi-desk/release/.next/server/chunks/45671.js +1 -0
- package/temp/build/pi-desk/release/.next/server/chunks/47757.js +1 -1
- package/temp/build/pi-desk/release/.next/server/chunks/56284.js +62 -0
- package/temp/build/pi-desk/release/.next/server/chunks/73691.js +1 -0
- package/temp/build/pi-desk/release/.next/server/chunks/82499.js +2 -2
- package/temp/build/pi-desk/release/.next/server/chunks/94296.js +2 -2
- package/temp/build/pi-desk/release/.next/server/chunks/pi-desk-line-changes.js +1 -0
- package/temp/build/pi-desk/release/.next/server/middleware-build-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/temp/build/pi-desk/release/.next/server/pages/500.html +1 -1
- package/temp/build/pi-desk/release/.next/server/server-reference-manifest.json +1 -1
- package/temp/build/pi-desk/release/.next/server/webpack-runtime.js +1 -1
- package/temp/build/pi-desk/release/.next/static/chunks/28739.540a4f24a8eaa3fd.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/31087-333cae396a52f232.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/3814-35cfab0ce3aa7c41.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/38459.9a9b6f4f3ec3ff50.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/45992-a39a014497ec4dd1.js +13 -0
- package/temp/build/pi-desk/release/.next/static/chunks/53291.ab6ef49016107124.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/{54206.82a63ab971911eda.js → 54206.ffb8c581c6661ae2.js} +2 -2
- package/temp/build/pi-desk/release/.next/static/chunks/5598.f34dce2a9de0d0e3.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/70669.8b4231a8675499e0.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/95287.34b860abf26f64a5.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/layout-586f6f88483051a7.js +3 -0
- package/temp/build/pi-desk/release/.next/static/chunks/app/{page-c6c68b33156be10a.js → page-0f2cf68a4666420b.js} +4 -4
- package/temp/build/pi-desk/release/.next/static/chunks/pi-desk-line-changes.49f8d59c256621d6.js +1 -0
- package/temp/build/pi-desk/release/.next/static/chunks/webpack-26261285e181235a.js +1 -0
- package/temp/build/pi-desk/release/.next/static/css/{f6a76a493aae9ae3.css → adb1d4e48dd43c0a.css} +1 -1
- package/temp/build/pi-desk/release/.next/trace-build +1 -1
- package/docs/pi-desk/README.md +0 -47
- package/temp/build/pi-desk/release/.next/server/chunks/6656.js +0 -1
- package/temp/build/pi-desk/release/.next/server/chunks/89236.js +0 -62
- package/temp/build/pi-desk/release/.next/static/chunks/19991.02fcb7c8ca3b1fe4.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/26285.54b8bcbf7a198c84.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/52354-6461358c522130be.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/74132-876f256c7a6101af.js +0 -13
- package/temp/build/pi-desk/release/.next/static/chunks/79615.7d68b269d93fcb93.js +0 -1
- package/temp/build/pi-desk/release/.next/static/chunks/app/layout-4faf3a52d219296d.js +0 -3
- package/temp/build/pi-desk/release/.next/static/chunks/webpack-7bfbf627379fb4c1.js +0 -1
- /package/docs/{pi-desk/commands.md → commands.md} +0 -0
- /package/docs/{pi-desk/examples → examples}/local-application/browser/application.js +0 -0
- /package/docs/{pi-desk/examples → examples}/local-application/browser/entry.js +0 -0
- /package/docs/{pi-desk/examples → examples}/local-application/package.json +0 -0
- /package/docs/{pi-desk/examples → examples}/local-application/pi-desk.ts +0 -0
- /package/temp/build/pi-desk/release/.next/static/{1LdtGYUckBhYZy0R-6yG0 → -pemk30NXpiExEU5tjb1t}/_buildManifest.js +0 -0
- /package/temp/build/pi-desk/release/.next/static/{1LdtGYUckBhYZy0R-6yG0 → -pemk30NXpiExEU5tjb1t}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
exports.id=82499,exports.ids=[82499],exports.modules={1505:()=>{},1886:(a,b,c)=>{"use strict";c.d(b,{Fd:()=>i,aJ:()=>e});var d,e,f=c(81309),g=c(76631),h=c(29498);(d=e||(e={}))[d.PRESERVE=0]="PRESERVE",d[d.LAST=1]="LAST";let i={Quickaccess:"workbench.contributions.quickaccess"};class j{constructor(){this.providers=[],this.defaultProvider=void 0}registerQuickAccessProvider(a){return 0===a.prefix.length?this.defaultProvider=a:this.providers.push(a),this.providers.sort((a,b)=>b.prefix.length-a.prefix.length),(0,g.s)(()=>{this.providers.splice(this.providers.indexOf(a),1),this.defaultProvider===a&&(this.defaultProvider=void 0)})}getQuickAccessProviders(a){return(0,f.Yc)([this.defaultProvider,...this.providers]).filter(b=>!b.when||a.contextMatchesRules(b.when))}getQuickAccessProvider(a,b){return(a?this.providers.find(c=>a.startsWith(c.prefix)&&(!c.when||b.contextMatchesRules(c.when))):void 0)||this.defaultProvider}}h.O.add(i.Quickaccess,new j)},2097:(a,b,c)=>{"use strict";c.d(b,{Th:()=>q,z8:()=>r});var d=c(72816),e=c(66036),f=c(77509),g=c(54957),h=c(12428),i=c(15053),j=c(50498),k=c(28574);function l(a){return a.toString()}class m{static create(a,b){let c=a.getAlternativeVersionId(),d=p(a);return new m(c,c,d,d,b,b,[])}constructor(a,b,c,d,e,f,g){this.beforeVersionId=a,this.afterVersionId=b,this.beforeEOL=c,this.afterEOL=d,this.beforeCursorState=e,this.afterCursorState=f,this.changes=g}append(a,b,c,d,e){b.length>0&&(this.changes=(0,h.x)(this.changes,b)),this.afterEOL=c,this.afterVersionId=d,this.afterCursorState=e}static _writeSelectionsSize(a){return 4+16*(a?a.length:0)}static _writeSelections(a,b,c){if((0,i.Sw)(a,b?b.length:0,c),c+=4,b)for(let d of b)(0,i.Sw)(a,d.selectionStartLineNumber,c),c+=4,(0,i.Sw)(a,d.selectionStartColumn,c),c+=4,(0,i.Sw)(a,d.positionLineNumber,c),c+=4,(0,i.Sw)(a,d.positionColumn,c),c+=4;return c}static _readSelections(a,b,c){let d=(0,i.bb)(a,b);b+=4;for(let e=0;e<d;e++){let d=(0,i.bb)(a,b);b+=4;let e=(0,i.bb)(a,b);b+=4;let g=(0,i.bb)(a,b);b+=4;let h=(0,i.bb)(a,b);b+=4,c.push(new f.L(d,e,g,h))}return b}serialize(){let a=10+m._writeSelectionsSize(this.beforeCursorState)+m._writeSelectionsSize(this.afterCursorState)+4;for(let b of this.changes)a+=b.writeSize();let b=new Uint8Array(a),c=0;for(let a of((0,i.Sw)(b,this.beforeVersionId,c),c+=4,(0,i.Sw)(b,this.afterVersionId,c),c+=4,(0,i.Gs)(b,this.beforeEOL,c),c+=1,(0,i.Gs)(b,this.afterEOL,c),c+=1,c=m._writeSelections(b,this.beforeCursorState,c),c=m._writeSelections(b,this.afterCursorState,c),(0,i.Sw)(b,this.changes.length,c),c+=4,this.changes))c=a.write(b,c);return b.buffer}static deserialize(a){let b=new Uint8Array(a),c=0,d=(0,i.bb)(b,c);c+=4;let e=(0,i.bb)(b,c);c+=4;let f=(0,i.pJ)(b,c);c+=1;let g=(0,i.pJ)(b,c);c+=1;let j=[];c=m._readSelections(b,c,j);let k=[];c=m._readSelections(b,c,k);let l=(0,i.bb)(b,c);c+=4;let n=[];for(let a=0;a<l;a++)c=h.k.read(b,c,n);return new m(d,e,f,g,j,k,n)}}class n{get type(){return 0}get resource(){return g.r.isUri(this.model)?this.model:this.model.uri}constructor(a,b,c,d){this.label=a,this.code=b,this.model=c,this._data=m.create(c,d)}toString(){return(this._data instanceof m?this._data:m.deserialize(this._data)).changes.map(a=>a.toString()).join(", ")}matchesResource(a){return(g.r.isUri(this.model)?this.model:this.model.uri).toString()===a.toString()}setModel(a){this.model=a}canAppend(a){return this.model===a&&this._data instanceof m}append(a,b,c,d,e){this._data instanceof m&&this._data.append(a,b,c,d,e)}close(){this._data instanceof m&&(this._data=this._data.serialize())}open(){this._data instanceof m||(this._data=m.deserialize(this._data))}undo(){if(g.r.isUri(this.model))throw Error("Invalid SingleModelEditStackElement");this._data instanceof m&&(this._data=this._data.serialize());let a=m.deserialize(this._data);this.model._applyUndo(a.changes,a.beforeEOL,a.beforeVersionId,a.beforeCursorState)}redo(){if(g.r.isUri(this.model))throw Error("Invalid SingleModelEditStackElement");this._data instanceof m&&(this._data=this._data.serialize());let a=m.deserialize(this._data);this.model._applyRedo(a.changes,a.afterEOL,a.afterVersionId,a.afterCursorState)}heapSize(){return this._data instanceof m&&(this._data=this._data.serialize()),this._data.byteLength+168}}class o{get resources(){return this._editStackElementsArr.map(a=>a.resource)}constructor(a,b,c){for(const d of(this.label=a,this.code=b,this.type=1,this._isOpen=!0,this._editStackElementsArr=c.slice(0),this._editStackElementsMap=new Map,this._editStackElementsArr)){const a=l(d.resource);this._editStackElementsMap.set(a,d)}this._delegate=null}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(a){let b=l(a);return this._editStackElementsMap.has(b)}setModel(a){let b=l(g.r.isUri(a)?a:a.uri);this._editStackElementsMap.has(b)&&this._editStackElementsMap.get(b).setModel(a)}canAppend(a){if(!this._isOpen)return!1;let b=l(a.uri);return!!this._editStackElementsMap.has(b)&&this._editStackElementsMap.get(b).canAppend(a)}append(a,b,c,d,e){let f=l(a.uri);this._editStackElementsMap.get(f).append(a,b,c,d,e)}close(){this._isOpen=!1}open(){}undo(){for(let a of(this._isOpen=!1,this._editStackElementsArr))a.undo()}redo(){for(let a of this._editStackElementsArr)a.redo()}heapSize(a){let b=l(a);return this._editStackElementsMap.has(b)?this._editStackElementsMap.get(b).heapSize():0}split(){return this._editStackElementsArr}toString(){let a=[];for(let b of this._editStackElementsArr)a.push(`${(0,j.P8)(b.resource)}: ${b}`);return`{${a.join(", ")}}`}}function p(a){return+("\n"!==a.getEOL())}function q(a){return!!a&&(a instanceof n||a instanceof o)}class r{constructor(a,b){this._model=a,this._undoRedoService=b}pushStackElement(){let a=this._undoRedoService.getLastElement(this._model.uri);q(a)&&a.close()}popStackElement(){let a=this._undoRedoService.getLastElement(this._model.uri);q(a)&&a.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(a,b){let c=this._undoRedoService.getLastElement(this._model.uri);if(q(c)&&c.canAppend(this._model))return c;let e=new n((0,d.kg)(820,"Typing"),"undoredo.textBufferEdit",this._model,a);return this._undoRedoService.pushElement(e,b),e}pushEOL(a){let b=this._getOrCreateEditStackElement(null,void 0);this._model.setEOL(a),b.append(this._model,[],p(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(a,b,c,d,e=k.dg.unknown({name:"pushEditOperation"})){let f=this._getOrCreateEditStackElement(a,d),g=this._model.applyEdits(b,!0,e),h=r._computeCursorState(c,g),i=g.map((a,b)=>({index:b,textChange:a.textChange}));return i.sort((a,b)=>a.textChange.oldPosition===b.textChange.oldPosition?a.index-b.index:a.textChange.oldPosition-b.textChange.oldPosition),f.append(this._model,i.map(a=>a.textChange),p(this._model),this._model.getAlternativeVersionId(),h),h}static _computeCursorState(a,b){try{return a?a(b):null}catch(a){return(0,e.dz)(a),null}}}},2126:(a,b,c)=>{"use strict";var d,e;c.d(b,{N6:()=>d,TH:()=>f,pv:()=>g}),(e=d||(d={}))[e.Disabled=0]="Disabled",e[e.EnabledForActive=1]="EnabledForActive",e[e.Enabled=2]="Enabled";class f{constructor(a,b,c,d,e,f){if(this.visibleColumn=a,this.column=b,this.className=c,this.horizontalLine=d,this.forWrappedLinesAfterColumn=e,this.forWrappedLinesBeforeOrAtColumn=f,-1!==a==(-1!==b))throw Error()}}class g{constructor(a,b){this.top=a,this.endColumn=b}}},2245:(a,b,c)=>{"use strict";c.d(b,{w:()=>d});let d=(0,c(58254).u1)("editorWorkerService")},2804:()=>{},2938:(a,b,c)=>{"use strict";c.d(b,{h:()=>d});let d=Symbol("MicrotaskDelay")},3404:()=>{},3724:(a,b,c)=>{"use strict";c.d(b,{u:()=>d});let d=(0,c(58254).u1)("userInteractionService")},4655:()=>{},4872:(a,b,c)=>{"use strict";c.d(b,{cw:()=>i,jN:()=>h,nu:()=>g});var d=c(58254),e=c(54957),f=c(85214);let g=(0,d.u1)("IWorkspaceEditService");class h{constructor(a){this.metadata=a}static convert(a){return a.edits.map(a=>{if(i.is(a))return i.lift(a);if(j.is(a))return j.lift(a);throw Error("Unsupported edit")})}}class i extends h{static is(a){return a instanceof i||(0,f.Gv)(a)&&e.r.isUri(a.resource)&&(0,f.Gv)(a.textEdit)}static lift(a){return a instanceof i?a:new i(a.resource,a.textEdit,a.versionId,a.metadata)}constructor(a,b,c,d){super(d),this.resource=a,this.textEdit=b,this.versionId=c}}class j extends h{static is(a){return a instanceof j||(0,f.Gv)(a)&&(!!a.newResource||!!a.oldResource)}static lift(a){return a instanceof j?a:new j(a.oldResource,a.newResource,a.options,a.metadata)}constructor(a,b,c={},d){super(d),this.oldResource=a,this.newResource=b,this.options=c}}},5017:(a,b,c)=>{"use strict";c.d(b,{$B:()=>q,Dk:()=>s,IN:()=>u,RE:()=>w,XS:()=>x,cv:()=>n,ho:()=>r,ir:()=>m,m$:()=>t,mk:()=>p,oJ:()=>o,t8:()=>v});var d=c(37327),e=c(34183);c(48727);var f=c(11023),g=c(18896),h=c(91018),i=c(62957);c(40563);var j=c(58330),k=c(39014);c(26858);var l=c(55404);let m={keybindingLabelBackground:(0,d.Gu)(g.HD),keybindingLabelForeground:(0,d.Gu)(g.eU),keybindingLabelBorder:(0,d.Gu)(g.zU),keybindingLabelBottomBorder:(0,d.Gu)(g.Qf),keybindingLabelShadow:(0,d.Gu)(f.f9)},n={buttonForeground:(0,d.Gu)(g.G_),buttonSeparator:(0,d.Gu)(g.Q1),buttonBackground:(0,d.Gu)(g.XJ),buttonHoverBackground:(0,d.Gu)(g.T9),buttonSecondaryForeground:(0,d.Gu)(g.In),buttonSecondaryBackground:(0,d.Gu)(g.xO),buttonSecondaryHoverBackground:(0,d.Gu)(g.nZ),buttonSecondaryBorder:(0,d.Gu)(g.Tm),buttonBorder:(0,d.Gu)(g.r)},o={progressBarBackground:(0,d.Gu)(j.BT)},p={inputActiveOptionBorder:(0,d.Gu)(g.uN),inputActiveOptionForeground:(0,d.Gu)(g.$$),inputActiveOptionBackground:(0,d.Gu)(g.c1)};(0,d.Gu)(g.jO),(0,d.Gu)(g.Uk),(0,d.Gu)(g.Ip),(0,d.Gu)(g.kP),(0,d.Gu)(g.xW),(0,d.Gu)(g.ZB),(0,d.Gu)(g.jr);let q={checkboxBackground:(0,d.Gu)(g.Oc),checkboxBorder:(0,d.Gu)(g.C5),checkboxForeground:(0,d.Gu)(g.t0),checkboxDisabledBackground:(0,d.Gu)(g.Uv),checkboxDisabledForeground:(0,d.Gu)(g.hs)};(0,d.Gu)(f.Cg),(0,d.Gu)(f.Fi),(0,d.Gu)(f.f9),(0,d.Gu)(f.DS),(0,d.Gu)(f.tY),(0,d.Gu)(f.JP),(0,d.Gu)(f.bN),(0,d.Gu)(e.vw);let r={inputBackground:(0,d.Gu)(g.L4),inputForeground:(0,d.Gu)(g.cw),inputBorder:(0,d.Gu)(g.Zg),inputValidationInfoBorder:(0,d.Gu)(g.YS),inputValidationInfoBackground:(0,d.Gu)(g.I$),inputValidationInfoForeground:(0,d.Gu)(g.L9),inputValidationWarningBorder:(0,d.Gu)(g.C1),inputValidationWarningBackground:(0,d.Gu)(g.UL),inputValidationWarningForeground:(0,d.Gu)(g.T5),inputValidationErrorBorder:(0,d.Gu)(g.eY),inputValidationErrorBackground:(0,d.Gu)(g._$),inputValidationErrorForeground:(0,d.Gu)(g.h9)},s={listFilterWidgetBackground:(0,d.Gu)(h.pn),listFilterWidgetOutline:(0,d.Gu)(h.fi),listFilterWidgetNoMatchesOutline:(0,d.Gu)(h.P9),listFilterWidgetShadow:(0,d.Gu)(h.H8),inputBoxStyles:r,toggleStyles:p},t={badgeBackground:(0,d.Gu)(j.WM),badgeForeground:(0,d.Gu)(j.zR),badgeBorder:(0,d.Gu)(e.b1)};(0,d.Gu)(f.vV),(0,d.Gu)(f.mc),(0,d.Gu)(f.et),(0,d.Gu)(f.et),(0,d.Gu)(f.sA);let u={listBackground:void 0,listInactiveFocusForeground:void 0,listFocusBackground:(0,d.Gu)(h.VF),listFocusForeground:(0,d.Gu)(h.ef),listFocusOutline:(0,d.Gu)(h.p7),listActiveSelectionBackground:(0,d.Gu)(h.Rj),listActiveSelectionForeground:(0,d.Gu)(h.GV),listActiveSelectionIconForeground:(0,d.Gu)(h.fE),listFocusAndSelectionOutline:(0,d.Gu)(h.gt),listFocusAndSelectionBackground:(0,d.Gu)(h.Rj),listFocusAndSelectionForeground:(0,d.Gu)(h.GV),listInactiveSelectionBackground:(0,d.Gu)(h.uN),listInactiveSelectionIconForeground:(0,d.Gu)(h.C9),listInactiveSelectionForeground:(0,d.Gu)(h.f4),listInactiveFocusBackground:(0,d.Gu)(h.CQ),listInactiveFocusOutline:(0,d.Gu)(h.ij),listHoverBackground:(0,d.Gu)(h.lO),listHoverForeground:(0,d.Gu)(h.QR),listDropOverBackground:(0,d.Gu)(h.Yo),listDropBetweenBackground:(0,d.Gu)(h.yI),listSelectionOutline:(0,d.Gu)(e.bu),listHoverOutline:(0,d.Gu)(e.bu),treeIndentGuidesStroke:(0,d.Gu)(h.U4),treeInactiveIndentGuidesStroke:(0,d.Gu)(h.pf),treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:(0,d.Gu)(j.bX),tableColumnsBorder:(0,d.Gu)(h.k5),tableOddRowsBackgroundColor:(0,d.Gu)(h.sb)};function v(a){let b={...u};for(let c in a){let e=a[c];b[c]=void 0!==e?(0,d.Gu)(e):void 0}return b}let w={selectBackground:(0,d.Gu)(g.rv),selectListBackground:(0,d.Gu)(g.lW),selectForeground:(0,d.Gu)(g.yq),decoratorRightForeground:(0,d.Gu)(k.NB),selectBorder:(0,d.Gu)(g.Hc),focusBorder:(0,d.Gu)(e.tA),listFocusBackground:(0,d.Gu)(k.Al),listInactiveSelectionIconForeground:(0,d.Gu)(k.c7),listFocusForeground:(0,d.Gu)(k.nH),listFocusOutline:(0,d.HP)(e.bu,l.Q1.transparent.toString()),listHoverBackground:(0,d.Gu)(h.lO),listHoverForeground:(0,d.Gu)(h.QR),listHoverOutline:(0,d.Gu)(e.bu),selectListBorder:(0,d.Gu)(f.sI),listBackground:void 0,listActiveSelectionBackground:void 0,listActiveSelectionForeground:void 0,listActiveSelectionIconForeground:void 0,listFocusAndSelectionBackground:void 0,listDropOverBackground:void 0,listDropBetweenBackground:void 0,listInactiveSelectionBackground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusBackground:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listFocusAndSelectionForeground:void 0,listFocusAndSelectionOutline:void 0,listInactiveFocusForeground:void 0,tableColumnsBorder:void 0,tableOddRowsBackgroundColor:void 0,treeIndentGuidesStroke:void 0,treeInactiveIndentGuidesStroke:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},x={shadowColor:(0,d.Gu)(f.f9),borderColor:(0,d.HP)(i.g$,f.sI),foregroundColor:(0,d.Gu)(i.dd),backgroundColor:(0,d.Gu)(i.c6),selectionForegroundColor:(0,d.Gu)(h.QR),selectionBackgroundColor:(0,d.Gu)(h.lO),selectionBorderColor:(0,d.Gu)(i.SN),separatorColor:(0,d.Gu)(i.D7),scrollbarShadow:(0,d.Gu)(j.bX),scrollbarSliderBackground:(0,d.Gu)(j.gn),scrollbarSliderHoverBackground:(0,d.Gu)(j.cI),scrollbarSliderActiveBackground:(0,d.Gu)(j.mh)}},5355:(a,b,c)=>{"use strict";c.d(b,{J:()=>g,k:()=>f});var d=c(85214);let e=Object.create(null);function f(a,b){if((0,d.Kg)(b)){let c=e[b];if(void 0===c)throw Error(`${a} references an unknown codicon: ${b}`);b=c}return e[a]=b,{id:a}}function g(){return e}},5388:()=>{},5424:(a,b,c)=>{"use strict";c.d(b,{x:()=>d});let d=(0,c(58254).u1)("layoutService")},5436:(a,b,c)=>{"use strict";var d,e;c.d(b,{Fo:()=>m,VL:()=>q,YM:()=>d,m5:()=>p,uw:()=>j});class f{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(a,b){this._keyCodeToStr[a]=b,this._strToKeyCode[b.toLowerCase()]=a}keyCodeToStr(a){return this._keyCodeToStr[a]}strToKeyCode(a){return this._strToKeyCode[a.toLowerCase()]||0}}let g=new f,h=new f,i=new f,j=Array(230),k=Object.create(null),l=Object.create(null),m=[];for(let a=0;a<=193;a++)m[a]=-1;let n=[],o=[];for(let a of[[1,0,"None",0,"unknown",0,"VK_UNKNOWN","",""],[1,1,"Hyper",0,"",0,"","",""],[1,2,"Super",0,"",0,"","",""],[1,3,"Fn",0,"",0,"","",""],[1,4,"FnLock",0,"",0,"","",""],[1,5,"Suspend",0,"",0,"","",""],[1,6,"Resume",0,"",0,"","",""],[1,7,"Turbo",0,"",0,"","",""],[1,8,"Sleep",0,"",0,"VK_SLEEP","",""],[1,9,"WakeUp",0,"",0,"","",""],[0,10,"KeyA",31,"A",65,"VK_A","",""],[0,11,"KeyB",32,"B",66,"VK_B","",""],[0,12,"KeyC",33,"C",67,"VK_C","",""],[0,13,"KeyD",34,"D",68,"VK_D","",""],[0,14,"KeyE",35,"E",69,"VK_E","",""],[0,15,"KeyF",36,"F",70,"VK_F","",""],[0,16,"KeyG",37,"G",71,"VK_G","",""],[0,17,"KeyH",38,"H",72,"VK_H","",""],[0,18,"KeyI",39,"I",73,"VK_I","",""],[0,19,"KeyJ",40,"J",74,"VK_J","",""],[0,20,"KeyK",41,"K",75,"VK_K","",""],[0,21,"KeyL",42,"L",76,"VK_L","",""],[0,22,"KeyM",43,"M",77,"VK_M","",""],[0,23,"KeyN",44,"N",78,"VK_N","",""],[0,24,"KeyO",45,"O",79,"VK_O","",""],[0,25,"KeyP",46,"P",80,"VK_P","",""],[0,26,"KeyQ",47,"Q",81,"VK_Q","",""],[0,27,"KeyR",48,"R",82,"VK_R","",""],[0,28,"KeyS",49,"S",83,"VK_S","",""],[0,29,"KeyT",50,"T",84,"VK_T","",""],[0,30,"KeyU",51,"U",85,"VK_U","",""],[0,31,"KeyV",52,"V",86,"VK_V","",""],[0,32,"KeyW",53,"W",87,"VK_W","",""],[0,33,"KeyX",54,"X",88,"VK_X","",""],[0,34,"KeyY",55,"Y",89,"VK_Y","",""],[0,35,"KeyZ",56,"Z",90,"VK_Z","",""],[0,36,"Digit1",22,"1",49,"VK_1","",""],[0,37,"Digit2",23,"2",50,"VK_2","",""],[0,38,"Digit3",24,"3",51,"VK_3","",""],[0,39,"Digit4",25,"4",52,"VK_4","",""],[0,40,"Digit5",26,"5",53,"VK_5","",""],[0,41,"Digit6",27,"6",54,"VK_6","",""],[0,42,"Digit7",28,"7",55,"VK_7","",""],[0,43,"Digit8",29,"8",56,"VK_8","",""],[0,44,"Digit9",30,"9",57,"VK_9","",""],[0,45,"Digit0",21,"0",48,"VK_0","",""],[1,46,"Enter",3,"Enter",13,"VK_RETURN","",""],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE","",""],[1,48,"Backspace",1,"Backspace",8,"VK_BACK","",""],[1,49,"Tab",2,"Tab",9,"VK_TAB","",""],[1,50,"Space",10,"Space",32,"VK_SPACE","",""],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,"",0,"","",""],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL","",""],[1,64,"F1",59,"F1",112,"VK_F1","",""],[1,65,"F2",60,"F2",113,"VK_F2","",""],[1,66,"F3",61,"F3",114,"VK_F3","",""],[1,67,"F4",62,"F4",115,"VK_F4","",""],[1,68,"F5",63,"F5",116,"VK_F5","",""],[1,69,"F6",64,"F6",117,"VK_F6","",""],[1,70,"F7",65,"F7",118,"VK_F7","",""],[1,71,"F8",66,"F8",119,"VK_F8","",""],[1,72,"F9",67,"F9",120,"VK_F9","",""],[1,73,"F10",68,"F10",121,"VK_F10","",""],[1,74,"F11",69,"F11",122,"VK_F11","",""],[1,75,"F12",70,"F12",123,"VK_F12","",""],[1,76,"PrintScreen",0,"",0,"","",""],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL","",""],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE","",""],[1,79,"Insert",19,"Insert",45,"VK_INSERT","",""],[1,80,"Home",14,"Home",36,"VK_HOME","",""],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR","",""],[1,82,"Delete",20,"Del",46,"VK_DELETE","Delete",""],[1,83,"End",13,"End",35,"VK_END","",""],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT","",""],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",""],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",""],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",""],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",""],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK","",""],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE","",""],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY","",""],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT","",""],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD","",""],[1,94,"NumpadEnter",3,"",0,"","",""],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1","",""],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2","",""],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3","",""],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4","",""],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5","",""],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6","",""],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7","",""],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8","",""],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9","",""],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0","",""],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL","",""],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102","",""],[1,107,"ContextMenu",58,"ContextMenu",93,"","",""],[1,108,"Power",0,"",0,"","",""],[1,109,"NumpadEqual",0,"",0,"","",""],[1,110,"F13",71,"F13",124,"VK_F13","",""],[1,111,"F14",72,"F14",125,"VK_F14","",""],[1,112,"F15",73,"F15",126,"VK_F15","",""],[1,113,"F16",74,"F16",127,"VK_F16","",""],[1,114,"F17",75,"F17",128,"VK_F17","",""],[1,115,"F18",76,"F18",129,"VK_F18","",""],[1,116,"F19",77,"F19",130,"VK_F19","",""],[1,117,"F20",78,"F20",131,"VK_F20","",""],[1,118,"F21",79,"F21",132,"VK_F21","",""],[1,119,"F22",80,"F22",133,"VK_F22","",""],[1,120,"F23",81,"F23",134,"VK_F23","",""],[1,121,"F24",82,"F24",135,"VK_F24","",""],[1,122,"Open",0,"",0,"","",""],[1,123,"Help",0,"",0,"","",""],[1,124,"Select",0,"",0,"","",""],[1,125,"Again",0,"",0,"","",""],[1,126,"Undo",0,"",0,"","",""],[1,127,"Cut",0,"",0,"","",""],[1,128,"Copy",0,"",0,"","",""],[1,129,"Paste",0,"",0,"","",""],[1,130,"Find",0,"",0,"","",""],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE","",""],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP","",""],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN","",""],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR","",""],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1","",""],[1,136,"KanaMode",0,"",0,"","",""],[0,137,"IntlYen",0,"",0,"","",""],[1,138,"Convert",0,"",0,"","",""],[1,139,"NonConvert",0,"",0,"","",""],[1,140,"Lang1",0,"",0,"","",""],[1,141,"Lang2",0,"",0,"","",""],[1,142,"Lang3",0,"",0,"","",""],[1,143,"Lang4",0,"",0,"","",""],[1,144,"Lang5",0,"",0,"","",""],[1,145,"Abort",0,"",0,"","",""],[1,146,"Props",0,"",0,"","",""],[1,147,"NumpadParenLeft",0,"",0,"","",""],[1,148,"NumpadParenRight",0,"",0,"","",""],[1,149,"NumpadBackspace",0,"",0,"","",""],[1,150,"NumpadMemoryStore",0,"",0,"","",""],[1,151,"NumpadMemoryRecall",0,"",0,"","",""],[1,152,"NumpadMemoryClear",0,"",0,"","",""],[1,153,"NumpadMemoryAdd",0,"",0,"","",""],[1,154,"NumpadMemorySubtract",0,"",0,"","",""],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR","",""],[1,156,"NumpadClearEntry",0,"",0,"","",""],[1,0,"",5,"Ctrl",17,"VK_CONTROL","",""],[1,0,"",4,"Shift",16,"VK_SHIFT","",""],[1,0,"",6,"Alt",18,"VK_MENU","",""],[1,0,"",57,"Meta",91,"VK_COMMAND","",""],[1,157,"ControlLeft",5,"",0,"VK_LCONTROL","",""],[1,158,"ShiftLeft",4,"",0,"VK_LSHIFT","",""],[1,159,"AltLeft",6,"",0,"VK_LMENU","",""],[1,160,"MetaLeft",57,"",0,"VK_LWIN","",""],[1,161,"ControlRight",5,"",0,"VK_RCONTROL","",""],[1,162,"ShiftRight",4,"",0,"VK_RSHIFT","",""],[1,163,"AltRight",6,"",0,"VK_RMENU","",""],[1,164,"MetaRight",57,"",0,"VK_RWIN","",""],[1,165,"BrightnessUp",0,"",0,"","",""],[1,166,"BrightnessDown",0,"",0,"","",""],[1,167,"MediaPlay",0,"",0,"","",""],[1,168,"MediaRecord",0,"",0,"","",""],[1,169,"MediaFastForward",0,"",0,"","",""],[1,170,"MediaRewind",0,"",0,"","",""],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK","",""],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK","",""],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP","",""],[1,174,"Eject",0,"",0,"","",""],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE","",""],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT","",""],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL","",""],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2","",""],[1,179,"LaunchApp1",0,"",0,"VK_MEDIA_LAUNCH_APP1","",""],[1,180,"SelectTask",0,"",0,"","",""],[1,181,"LaunchScreenSaver",0,"",0,"","",""],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH","",""],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME","",""],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK","",""],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD","",""],[1,186,"BrowserStop",0,"",0,"VK_BROWSER_STOP","",""],[1,187,"BrowserRefresh",0,"",0,"VK_BROWSER_REFRESH","",""],[1,188,"BrowserFavorites",0,"",0,"VK_BROWSER_FAVORITES","",""],[1,189,"ZoomToggle",0,"",0,"","",""],[1,190,"MailReply",0,"",0,"","",""],[1,191,"MailForward",0,"",0,"","",""],[1,192,"MailSend",0,"",0,"","",""],[1,0,"",114,"KeyInComposition",229,"","",""],[1,0,"",116,"ABNT_C2",194,"VK_ABNT_C2","",""],[1,0,"",96,"OEM_8",223,"VK_OEM_8","",""],[1,0,"",0,"",0,"VK_KANA","",""],[1,0,"",0,"",0,"VK_HANGUL","",""],[1,0,"",0,"",0,"VK_JUNJA","",""],[1,0,"",0,"",0,"VK_FINAL","",""],[1,0,"",0,"",0,"VK_HANJA","",""],[1,0,"",0,"",0,"VK_KANJI","",""],[1,0,"",0,"",0,"VK_CONVERT","",""],[1,0,"",0,"",0,"VK_NONCONVERT","",""],[1,0,"",0,"",0,"VK_ACCEPT","",""],[1,0,"",0,"",0,"VK_MODECHANGE","",""],[1,0,"",0,"",0,"VK_SELECT","",""],[1,0,"",0,"",0,"VK_PRINT","",""],[1,0,"",0,"",0,"VK_EXECUTE","",""],[1,0,"",0,"",0,"VK_SNAPSHOT","",""],[1,0,"",0,"",0,"VK_HELP","",""],[1,0,"",0,"",0,"VK_APPS","",""],[1,0,"",0,"",0,"VK_PROCESSKEY","",""],[1,0,"",0,"",0,"VK_PACKET","",""],[1,0,"",0,"",0,"VK_DBE_SBCSCHAR","",""],[1,0,"",0,"",0,"VK_DBE_DBCSCHAR","",""],[1,0,"",0,"",0,"VK_ATTN","",""],[1,0,"",0,"",0,"VK_CRSEL","",""],[1,0,"",0,"",0,"VK_EXSEL","",""],[1,0,"",0,"",0,"VK_EREOF","",""],[1,0,"",0,"",0,"VK_PLAY","",""],[1,0,"",0,"",0,"VK_ZOOM","",""],[1,0,"",0,"",0,"VK_NONAME","",""],[1,0,"",0,"",0,"VK_PA1","",""],[1,0,"",0,"",0,"VK_OEM_CLEAR","",""]]){let[b,c,d,e,f,p,q,r,s]=a;if(!o[c]&&(o[c]=!0,k[d]=c,l[d.toLowerCase()]=c,b&&(m[c]=e)),!n[e]){if(n[e]=!0,!f)throw Error(`String representation missing for key code ${e} around scan code ${d}`);g.define(e,f),h.define(e,r||f),i.define(e,s||r||f)}p&&(j[p]=e)}function p(a,b){return(a|(65535&b)<<16>>>0)>>>0}function q(a){return 5===a||4===a||6===a||57===a}(e=d||(d={})).toString=function(a){return g.keyCodeToStr(a)},e.fromString=function(a){return g.strToKeyCode(a)},e.toUserSettingsUS=function(a){return h.keyCodeToStr(a)},e.toUserSettingsGeneral=function(a){return i.keyCodeToStr(a)},e.fromUserSettings=function(a){return h.strToKeyCode(a)||i.strToKeyCode(a)},e.toElectronAccelerator=function(a){if(a>=98&&a<=113)return null;switch(a){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right";case 20:return"Delete"}return g.keyCodeToStr(a)}},6015:(a,b,c)=>{"use strict";c.d(b,{TH:()=>g,Zn:()=>i,_1:()=>j,kb:()=>h});var d=c(30996);c(18216);var e=c(26529);function f(a){return 47===a||92===a}function g(a){return a.replace(/[\\/]/g,d.SA.sep)}function h(a){return -1===a.indexOf("/")&&(a=g(a)),/^[a-zA-Z]:(\/|$)/.test(a)&&(a="/"+a),a}function i(a,b=d.SA.sep){var c;if(!a)return"";let e=a.length,g=a.charCodeAt(0);if(f(g)){if(f(a.charCodeAt(1))&&!f(a.charCodeAt(2))){let c=3;for(;c<e&&!f(a.charCodeAt(c));c++);if(3!==c&&!f(a.charCodeAt(c+1))){for(c+=1;c<e;c++)if(f(a.charCodeAt(c)))return a.slice(0,c+1).replace(/[\\/]/g,b)}}return b}if(((c=g)>=65&&c<=90||c>=97&&c<=122)&&58===a.charCodeAt(1))if(f(a.charCodeAt(2)))return a.slice(0,2)+b;else return a.slice(0,2);let h=a.indexOf("://");if(-1!==h){for(h+=3;h<e;h++)if(f(a.charCodeAt(h)))return a.slice(0,h+1)}return""}function j(a,b,c,f=!1){let g=f?d.SA.sep:d.Vn;if(a===b)return!0;if(!a||!b||((a.indexOf("..")>=0||b.indexOf("..")>=0)&&(a=f?d.SA.normalize(a):(0,d.S8)(a),b=f?d.SA.normalize(b):(0,d.S8)(b)),b.length>a.length))return!1;if(c){if(!(0,e.ns)(a,b))return!1;if(b.length===a.length)return!0;let c=b.length;return b.charAt(b.length-1)===g&&c--,a.charAt(c)===g}return b.charAt(b.length-1)!==g&&(b+=g),0===a.indexOf(b)}},6205:()=>{},6963:(a,b,c)=>{"use strict";c.d(b,{l:()=>e});var d=c(87873);function e(a){return new f(a)}class f extends d.zV{constructor(a){super(),this.value=a}get debugName(){return this.toString()}get(){return this.value}addObserver(a){}removeObserver(a){}toString(){return`Const: ${this.value}`}}},7052:(a,b,c)=>{"use strict";c.d(b,{cB:()=>l});var d=c(43765),e=c(26529);class f{constructor(){this._value="",this._pos=0}reset(a){return this._value=a,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos<this._value.length-1}cmp(a){return a.charCodeAt(0)-this._value.charCodeAt(this._pos)}value(){return this._value[this._pos]}}class g{constructor(a=!0){this._caseSensitive=a}reset(a){return this._value=a,this._from=0,this._to=0,this.next()}hasNext(){return this._to<this._value.length}next(){this._from=this._to;let a=!0;for(;this._to<this._value.length;this._to++)if(46===this._value.charCodeAt(this._to))if(a)this._from++;else break;else a=!1;return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class h{constructor(a=!0,b=!0){this._splitOnBackslash=a,this._caseSensitive=b}reset(a){this._from=0,this._to=0,this._value=a,this._valueLen=a.length;for(let b=a.length-1;b>=0;b--,this._valueLen--){let a=this._value.charCodeAt(b);if(!(47===a||this._splitOnBackslash&&92===a))break}return this.next()}hasNext(){return this._to<this._valueLen}next(){this._from=this._to;let a=!0;for(;this._to<this._valueLen;this._to++){let b=this._value.charCodeAt(this._to);if(47===b||this._splitOnBackslash&&92===b)if(a)this._from++;else break;else a=!1}return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class i{constructor(a,b){this._ignorePathCasing=a,this._ignoreQueryAndFragment=b,this._states=[],this._stateIdx=0}reset(a){return this._value=a,this._states=[],this._value.scheme&&this._states.push(1),this._value.authority&&this._states.push(2),this._value.path&&(this._pathIterator=new h(!1,!this._ignorePathCasing(a)),this._pathIterator.reset(a.path),this._pathIterator.value()&&this._states.push(3)),!this._ignoreQueryAndFragment(a)&&(this._value.query&&this._states.push(4),this._value.fragment&&this._states.push(5)),this._stateIdx=0,this}next(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()?this._pathIterator.next():this._stateIdx+=1,this}hasNext(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()||this._stateIdx<this._states.length-1}cmp(a){if(1===this._states[this._stateIdx])return(0,e.W1)(a,this._value.scheme);if(2===this._states[this._stateIdx])return(0,e.W1)(a,this._value.authority);if(3===this._states[this._stateIdx])return this._pathIterator.cmp(a);if(4===this._states[this._stateIdx])return(0,e.UD)(a,this._value.query);if(5===this._states[this._stateIdx])return(0,e.UD)(a,this._value.fragment);throw Error()}value(){if(1===this._states[this._stateIdx])return this._value.scheme;if(2===this._states[this._stateIdx])return this._value.authority;if(3===this._states[this._stateIdx])return this._pathIterator.value();if(4===this._states[this._stateIdx])return this._value.query;if(5===this._states[this._stateIdx])return this._value.fragment;throw Error()}}class j{static{this.Val=Symbol("undefined_placeholder")}static wrap(a){return void 0===a?j.Val:a}static unwrap(a){return a===j.Val?void 0:a}}class k{constructor(){this.height=1,this.value=void 0,this.key=void 0,this.left=void 0,this.mid=void 0,this.right=void 0}rotateLeft(){let a=this.right;return this.right=a.left,a.left=this,this.updateHeight(),a.updateHeight(),a}rotateRight(){let a=this.left;return this.left=a.right,a.right=this,this.updateHeight(),a.updateHeight(),a}updateHeight(){this.height=1+Math.max(this.heightLeft,this.heightRight)}balanceFactor(){return this.heightRight-this.heightLeft}get heightLeft(){return this.left?.height??0}get heightRight(){return this.right?.height??0}}class l{static forUris(a=()=>!1,b=()=>!1){return new l(new i(a,b))}static forStrings(){return new l(new f)}static forConfigKeys(){return new l(new g)}constructor(a){this._iter=a}clear(){this._root=void 0}set(a,b){let c,d=this._iter.reset(a);this._root||(this._root=new k,this._root.segment=d.value());let e=[];for(c=this._root;;){let a=d.cmp(c.segment);if(a>0)c.left||(c.left=new k,c.left.segment=d.value()),e.push([-1,c]),c=c.left;else if(a<0)c.right||(c.right=new k,c.right.segment=d.value()),e.push([1,c]),c=c.right;else if(d.hasNext())d.next(),c.mid||(c.mid=new k,c.mid.segment=d.value()),e.push([0,c]),c=c.mid;else break}let f=j.unwrap(c.value);c.value=j.wrap(b),c.key=a;for(let a=e.length-1;a>=0;a--){let b=e[a][1];b.updateHeight();let c=b.balanceFactor();if(c<-1||c>1){let c=e[a][0],d=e[a+1][0];if(1===c&&1===d)e[a][1]=b.rotateLeft();else if(-1===c&&-1===d)e[a][1]=b.rotateRight();else if(1===c&&-1===d)b.right=e[a+1][1]=e[a+1][1].rotateRight(),e[a][1]=b.rotateLeft();else if(-1===c&&1===d)b.left=e[a+1][1]=e[a+1][1].rotateLeft(),e[a][1]=b.rotateRight();else throw Error();if(a>0)switch(e[a-1][0]){case -1:e[a-1][1].left=e[a][1];break;case 1:e[a-1][1].right=e[a][1];break;case 0:e[a-1][1].mid=e[a][1]}else this._root=e[0][1]}}return f}get(a){return j.unwrap(this._getNode(a)?.value)}_getNode(a){let b=this._iter.reset(a),c=this._root;for(;c;){let a=b.cmp(c.segment);if(a>0)c=c.left;else if(a<0)c=c.right;else if(b.hasNext())b.next(),c=c.mid;else break}return c}has(a){let b=this._getNode(a);return b?.value!==void 0||b?.mid!==void 0}delete(a){return this._delete(a,!1)}deleteSuperstr(a){return this._delete(a,!0)}_delete(a,b){let c=this._iter.reset(a),e=[],f=this._root;for(;f;){let a=c.cmp(f.segment);if(a>0)e.push([-1,f]),f=f.left;else if(a<0)e.push([1,f]),f=f.right;else if(c.hasNext())c.next(),e.push([0,f]),f=f.mid;else break}if(f){if(b?(f.left=void 0,f.mid=void 0,f.right=void 0,f.height=1):(f.key=void 0,f.value=void 0),!f.mid&&!f.value)if(f.left&&f.right){let a=[[1,f]],b=this._min(f.right,a);if(b.key){f.key=b.key,f.value=b.value,f.segment=b.segment;let c=b.right;if(a.length>1){let[b,e]=a[a.length-1];switch(b){case -1:e.left=c;break;case 0:(0,d.vA)(!1);case 1:(0,d.vA)(!1)}}else f.right=c;let g=this._balanceByStack(a);if(e.length>0){let[a,b]=e[e.length-1];switch(a){case -1:b.left=g;break;case 0:b.mid=g;break;case 1:b.right=g}}else this._root=g}}else{let a=f.left??f.right;if(e.length>0){let[b,c]=e[e.length-1];switch(b){case -1:c.left=a;break;case 0:c.mid=a;break;case 1:c.right=a}}else this._root=a}this._root=this._balanceByStack(e)??this._root}}_min(a,b){for(;a.left;)b.push([-1,a]),a=a.left;return a}_balanceByStack(a){for(let b=a.length-1;b>=0;b--){let c=a[b][1];c.updateHeight();let d=c.balanceFactor();if(d>1?(c.right.balanceFactor()>=0||(c.right=c.right.rotateRight()),a[b][1]=c.rotateLeft()):d<-1&&(0>=c.left.balanceFactor()||(c.left=c.left.rotateLeft()),a[b][1]=c.rotateRight()),!(b>0))return a[0][1];switch(a[b-1][0]){case -1:a[b-1][1].left=a[b][1];break;case 1:a[b-1][1].right=a[b][1];break;case 0:a[b-1][1].mid=a[b][1]}}}findSubstr(a){let b,c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),b=j.unwrap(d.value)||b,d=d.mid;else break}return d&&j.unwrap(d.value)||b}findSuperstr(a){return this._findSuperstrOrElement(a,!1)}_findSuperstrOrElement(a,b){let c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),d=d.mid;else if(d.mid)return this._entries(d.mid);else if(b)return j.unwrap(d.value);else break}}forEach(a){for(let[b,c]of this)a(c,b)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(a){let b=[];return this._dfsEntries(a,b),b[Symbol.iterator]()}_dfsEntries(a,b){a&&(a.left&&this._dfsEntries(a.left,b),void 0!==a.value&&b.push([a.key,j.unwrap(a.value)]),a.mid&&this._dfsEntries(a.mid,b),a.right&&this._dfsEntries(a.right,b))}}},7092:(a,b,c)=>{"use strict";c.d(b,{Mo:()=>i,ad:()=>e,gD:()=>h,iB:()=>g,kW:()=>f,pG:()=>d});let d=(0,c(58254).u1)("configurationService");function e(a,b){let c=Object.create(null);for(let d in a)f(c,d,a[d],b);return c}function f(a,b,c,d){let e=b.split("."),f=e.pop(),g=a;for(let a=0;a<e.length;a++){let c=e[a],f=g[c];switch(typeof f){case"undefined":f=g[c]=Object.create(null);break;case"object":if(null===f)return void d(`Ignoring ${b} as ${e.slice(0,a+1).join(".")} is null`);break;default:d(`Ignoring ${b} as ${e.slice(0,a+1).join(".")} is ${JSON.stringify(f)}`);return}g=f}if("object"==typeof g&&null!==g)try{g[f]=c}catch(a){d(`Ignoring ${b} as ${e.join(".")} is ${JSON.stringify(g)}`)}else d(`Ignoring ${b} as ${e.join(".")} is ${JSON.stringify(g)}`)}function g(a,b){!function a(b,c){if(!b)return;let d=c.shift();if(0===c.length)return void delete b[d];if(-1!==Object.keys(b).indexOf(d)){let e=b[d];"object"!=typeof e||null===e||Array.isArray(e)||(a(e,c),0===Object.keys(e).length&&delete b[d])}}(a,b.split("."))}function h(a,b,c){let d=function(a,b){let c=a;for(let a of b){if("object"!=typeof c||null===c)return;c=c[a]}return c}(a,b.split("."));return void 0===d?c:d}function i(a){return a.replace(/^\[/,"").replace(/]$/g,"").replace(/\]\[/g,", ")}},7145:()=>{},7164:(a,b,c)=>{"use strict";c.d(b,{Hw:()=>h,tu:()=>n,vp:()=>l});var d,e,f,g,h,i,j,k,l,m,n,o=c(72816);(g||(g={})).inspectTokensAction=(0,o.kg)(821,"Developer: Inspect Tokens"),(d=h||(h={})).gotoLineActionLabel=(0,o.kg)(822,"Go to Line/Column..."),d.gotoOffsetActionLabel=(0,o.kg)(823,"Go to Offset..."),(i||(i={})).helpQuickAccessActionLabel=(0,o.kg)(824,"Show all Quick Access Providers"),(e=j||(j={})).quickCommandActionLabel=(0,o.kg)(825,"Command Palette"),e.quickCommandHelp=(0,o.kg)(826,"Show And Run Commands"),(f=k||(k={})).quickOutlineActionLabel=(0,o.kg)(827,"Go to Symbol..."),f.quickOutlineByCategoryActionLabel=(0,o.kg)(828,"Go to Symbol by Category..."),(l||(l={})).editorViewAccessibleLabel=(0,o.kg)(829,"Editor content"),(m||(m={})).toggleHighContrast=(0,o.kg)(830,"Toggle High Contrast Theme"),(n||(n={})).bulkEditServiceSummary=(0,o.kg)(831,"Made {0} edits in {1} files")},7222:(a,b,c)=>{"use strict";c.d(b,{c:()=>l});var d=c(75082),e=c(15857),f=c(63040),g=c(8933),h=c(95091);c(36685);var i=c(72816),j=c(76631);let k=(0,i.kg)(1,"input");class l extends g.x{get onDidOptionChange(){return this._onDidOptionChange.event}get onKeyDown(){return this._onKeyDown.event}get onMouseDown(){return this._onMouseDown.event}get onCaseSensitiveKeyDown(){return this._onCaseSensitiveKeyDown.event}get onRegexKeyDown(){return this._onRegexKeyDown.event}constructor(a,b,c){super(),this.fixFocusOnOptionClickEnabled=!0,this.imeSessionInProgress=!1,this.additionalTogglesDisposables=this._register(new j.HE),this.additionalToggles=[],this._onDidOptionChange=this._register(new h.vl),this._onKeyDown=this._register(new h.vl),this._onMouseDown=this._register(new h.vl),this._onInput=this._register(new h.vl),this._onKeyUp=this._register(new h.vl),this._onCaseSensitiveKeyDown=this._register(new h.vl),this._onRegexKeyDown=this._register(new h.vl),this._lastHighlightFindOptions=0,this.placeholder=c.placeholder||"",this.validation=c.validation,this.label=c.label||k,this.showCommonFindToggles=!!c.showCommonFindToggles;const g=c.appendCaseSensitiveLabel||"",i=c.appendWholeWordsLabel||"",l=c.appendRegexLabel||"",m=!!c.flexibleHeight,n=!!c.flexibleWidth,o=c.flexibleMaxHeight;if(this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new f.m(this.domNode,b,{placeholder:this.placeholder||"",ariaLabel:this.label||"",validationOptions:{validation:this.validation},showHistoryHint:c.showHistoryHint,flexibleHeight:m,flexibleWidth:n,flexibleMaxHeight:o,inputBoxStyles:c.inputBoxStyles,history:c.history,actions:c.actions,actionViewItemProvider:c.actionViewItemProvider,hideHoverOnValueChange:c.hideHoverOnValueChange})),this.showCommonFindToggles){const a=c?.hoverLifecycleOptions||{groupId:"find-input"};this.regex=this._register(new e.Ix({appendTitle:l,isChecked:!1,hoverLifecycleOptions:a,...c.toggleStyles})),this._register(this.regex.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.regex.onKeyDown(a=>{this._onRegexKeyDown.fire(a)})),this.wholeWords=this._register(new e.nV({appendTitle:i,isChecked:!1,hoverLifecycleOptions:a,...c.toggleStyles})),this._register(this.wholeWords.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this.caseSensitive=this._register(new e.bc({appendTitle:g,isChecked:!1,hoverLifecycleOptions:a,...c.toggleStyles})),this._register(this.caseSensitive.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.caseSensitive.onKeyDown(a=>{this._onCaseSensitiveKeyDown.fire(a)})),this.onkeydown(this.domNode,a=>{if(a.equals(15)||a.equals(17)||a.equals(9)){let b=this.getToggleDomNodes(),c=b.indexOf(this.domNode.ownerDocument.activeElement);if(c>=0){let e=-1;a.equals(17)?e=(c+1)%b.length:a.equals(15)&&(e=0===c?b.length-1:c-1),a.equals(9)?(b[c].blur(),this.inputBox.focus()):e>=0&&b[e].focus(),d.fs.stop(a,!0)}}})}this.controls=document.createElement("div"),this.controls.className="controls",this.controls.style.display=this.showCommonFindToggles?"":"none",this.caseSensitive&&this.controls.append(this.caseSensitive.domNode),this.wholeWords&&this.controls.appendChild(this.wholeWords.domNode),this.regex&&this.controls.appendChild(this.regex.domNode),this.setAdditionalToggles(c?.additionalToggles),this.controls&&this.domNode.appendChild(this.controls),a?.appendChild(this.domNode),this._register((0,d.ko)(this.inputBox.inputElement,"compositionstart",a=>{this.imeSessionInProgress=!0})),this._register((0,d.ko)(this.inputBox.inputElement,"compositionend",a=>{this.imeSessionInProgress=!1,this._onInput.fire()})),this.onkeydown(this.inputBox.inputElement,a=>this._onKeyDown.fire(a)),this.onkeyup(this.inputBox.inputElement,a=>this._onKeyUp.fire(a)),this.oninput(this.inputBox.inputElement,a=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,a=>this._onMouseDown.fire(a))}get onDidChange(){return this.inputBox.onDidChange}layout(a){this.inputBox.layout(),this.updateInputBoxPadding(a.collapsedFindWidget)}enable(){for(let a of(this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.regex?.enable(),this.wholeWords?.enable(),this.caseSensitive?.enable(),this.additionalToggles))a.enable()}disable(){for(let a of(this.domNode.classList.add("disabled"),this.inputBox.disable(),this.regex?.disable(),this.wholeWords?.disable(),this.caseSensitive?.disable(),this.additionalToggles))a.disable()}setFocusInputOnOptionClick(a){this.fixFocusOnOptionClickEnabled=a}setEnabled(a){a?this.enable():this.disable()}setAdditionalToggles(a){for(let a of this.additionalToggles)a.domNode.remove();for(let b of(this.additionalToggles=[],this.additionalTogglesDisposables.value=new j.Cm,a??[]))this.additionalTogglesDisposables.value.add(b),this.controls.appendChild(b.domNode),this.additionalTogglesDisposables.value.add(b.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus()})),this.additionalToggles.push(b);this.additionalToggles.length>0&&(this.controls.style.display=""),this.updateInputBoxPadding()}getToggleDomNodes(){let a=[];for(let b of(this.caseSensitive&&a.push(this.caseSensitive.domNode),this.wholeWords&&a.push(this.wholeWords.domNode),this.regex&&a.push(this.regex.domNode),this.additionalToggles))a.push(b.domNode);return a}setActions(a,b){this.inputBox.setActions(a,b),this.updateInputBoxPadding()}updateInputBoxPadding(a=!1){let b=a?0:(this.caseSensitive?.width()??0)+(this.wholeWords?.width()??0)+(this.regex?.width()??0)+this.additionalToggles.reduce((a,b)=>a+b.width(),0);this.inputBox.paddingRight=b+this.inputBox.actionsWidth}getValue(){return this.inputBox.value}setValue(a){this.inputBox.value!==a&&(this.inputBox.value=a)}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getCaseSensitive(){return this.caseSensitive?.checked??!1}setCaseSensitive(a){this.caseSensitive&&(this.caseSensitive.checked=a)}getWholeWords(){return this.wholeWords?.checked??!1}setWholeWords(a){this.wholeWords&&(this.wholeWords.checked=a)}getRegex(){return this.regex?.checked??!1}setRegex(a){this.regex&&(this.regex.checked=a,this.validate())}focusOnCaseSensitive(){this.caseSensitive?.focus()}highlightFindOptions(){this.domNode.classList.remove("highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,this.domNode.classList.add("highlight-"+this._lastHighlightFindOptions)}validate(){this.inputBox.validate()}showMessage(a){this.inputBox.showMessage(a)}clearMessage(){this.inputBox.hideMessage()}}},7266:(a,b,c)=>{"use strict";c.d(b,{iE:()=>e,rW:()=>f});class d{constructor(a,b,c){this._colorZoneBrand=void 0,this.from=0|a,this.to=0|b,this.colorId=0|c}static compare(a,b){return a.colorId===b.colorId?a.from===b.from?a.to-b.to:a.from-b.from:a.colorId-b.colorId}}class e{constructor(a,b,c,d){this._overviewRulerZoneBrand=void 0,this.startLineNumber=a,this.endLineNumber=b,this.heightInLines=c,this.color=d,this._colorZone=null}static compare(a,b){if(a.color===b.color)return a.startLineNumber===b.startLineNumber?a.heightInLines===b.heightInLines?a.endLineNumber-b.endLineNumber:a.heightInLines-b.heightInLines:a.startLineNumber-b.startLineNumber;return a.color<b.color?-1:1}setColorZone(a){this._colorZone=a}getColorZones(){return this._colorZone}}class f{constructor(a){this._getVerticalOffsetForLine=a,this._zones=[],this._colorZonesInvalid=!1,this._lineHeight=0,this._domWidth=0,this._domHeight=0,this._outerHeight=0,this._pixelRatio=1,this._lastAssignedId=0,this._color2Id=Object.create(null),this._id2Color=[]}getId2Color(){return this._id2Color}setZones(a){this._zones=a,this._zones.sort(e.compare)}setLineHeight(a){return this._lineHeight!==a&&(this._lineHeight=a,this._colorZonesInvalid=!0,!0)}setPixelRatio(a){this._pixelRatio=a,this._colorZonesInvalid=!0}getDOMWidth(){return this._domWidth}getCanvasWidth(){return this._domWidth*this._pixelRatio}setDOMWidth(a){return this._domWidth!==a&&(this._domWidth=a,this._colorZonesInvalid=!0,!0)}getDOMHeight(){return this._domHeight}getCanvasHeight(){return this._domHeight*this._pixelRatio}setDOMHeight(a){return this._domHeight!==a&&(this._domHeight=a,this._colorZonesInvalid=!0,!0)}getOuterHeight(){return this._outerHeight}setOuterHeight(a){return this._outerHeight!==a&&(this._outerHeight=a,this._colorZonesInvalid=!0,!0)}resolveColorZones(){let a=this._colorZonesInvalid,b=Math.floor(this._lineHeight),c=Math.floor(this.getCanvasHeight()),e=c/Math.floor(this._outerHeight),f=Math.floor(4*this._pixelRatio/2),g=[];for(let h=0,i=this._zones.length;h<i;h++){let i=this._zones[h];if(!a){let a=i.getColorZones();if(a){g.push(a);continue}}let j=this._getVerticalOffsetForLine(i.startLineNumber),k=0===i.heightInLines?this._getVerticalOffsetForLine(i.endLineNumber)+b:j+i.heightInLines*b,l=Math.floor(e*j),m=Math.floor(e*k),n=Math.floor((l+m)/2),o=m-n;o<f&&(o=f),n-o<0&&(n=o),n+o>c&&(n=c-o);let p=i.color,q=this._color2Id[p];q||(q=++this._lastAssignedId,this._color2Id[p]=q,this._id2Color[q]=p);let r=new d(n-o,n+o,q);i.setColorZone(r),g.push(r)}return this._colorZonesInvalid=!1,g.sort(d.compare),g}}},7846:(a,b,c)=>{"use strict";c.d(b,{E$:()=>i,HP:()=>l,Ic:()=>p,Nw:()=>g,U0:()=>f,Wn:()=>d,bg:()=>j,dT:()=>o,mS:()=>k,uK:()=>e,vD:()=>h,vn:()=>m,zq:()=>n});class d{constructor(){this.changeType=1}}class e{static applyInjectedText(a,b){if(!b||0===b.length)return a;let c="",d=0;for(let e of b)c+=a.substring(d,e.column-1),d=e.column-1,c+=e.options.content;return c+a.substring(d)}static fromDecorations(a){let b=[];for(let c of a)c.options.before&&c.options.before.content.length>0&&b.push(new e(c.ownerId,c.range.startLineNumber,c.range.startColumn,c.options.before,0)),c.options.after&&c.options.after.content.length>0&&b.push(new e(c.ownerId,c.range.endLineNumber,c.range.endColumn,c.options.after,1));return b.sort((a,b)=>a.lineNumber===b.lineNumber?a.column===b.column?a.order-b.order:a.column-b.column:a.lineNumber-b.lineNumber),b}constructor(a,b,c,d,e){this.ownerId=a,this.lineNumber=b,this.column=c,this.options=d,this.order=e}}class f{constructor(a,b){this.changeType=2,this.lineNumber=a,this.lineNumberPostEdit=b}}class g{constructor(a,b,c,d){this.ownerId=a,this.decorationId=b,this.lineNumber=c,this.lineHeightMultiplier=d}}class h{constructor(a,b){this.ownerId=a,this.lineNumber=b}}class i{constructor(a,b,c){this.changeType=3,this.fromLineNumber=a,this.toLineNumber=b,this.lastUntouchedLinePostEdit=c}}class j{get toLineNumber(){return this.fromLineNumber+this.count-1}get toLineNumberPostEdit(){return this.fromLineNumberPostEdit+this.count-1}constructor(a,b,c){this.changeType=4,this.fromLineNumber=a,this.fromLineNumberPostEdit=b,this.count=c}}class k{constructor(){this.changeType=5}}class l{constructor(a,b,c,d){this.changes=a,this.versionId=b,this.isUndoing=c,this.isRedoing=d,this.resultingSelection=null}containsEvent(a){for(let b=0,c=this.changes.length;b<c;b++)if(this.changes[b].changeType===a)return!0;return!1}static merge(a,b){return new l([].concat(a.changes).concat(b.changes),b.versionId,a.isUndoing||b.isUndoing,a.isRedoing||b.isRedoing)}}class m{constructor(a){this.changes=a}}class n{constructor(a){this.changes=a}}class o{constructor(a){this.changes=a}}class p{constructor(a,b){this.rawContentChangedEvent=a,this.contentChangedEvent=b}merge(a){let b=l.merge(this.rawContentChangedEvent,a.rawContentChangedEvent),c=p._mergeChangeEvents(this.contentChangedEvent,a.contentChangedEvent);return new p(b,c)}static _mergeChangeEvents(a,b){let c=[].concat(a.changes).concat(b.changes),d=b.eol,e=b.versionId,f=a.isUndoing||b.isUndoing,g=a.isRedoing||b.isRedoing,h=a.isFlush||b.isFlush;return{changes:c,eol:d,isEolChange:a.isEolChange&&b.isEolChange,versionId:e,isUndoing:f,isRedoing:g,isFlush:h,detailedReasons:a.detailedReasons.concat(b.detailedReasons),detailedReasonsChangeLengths:a.detailedReasonsChangeLengths.concat(b.detailedReasonsChangeLengths)}}}},8058:()=>{},8253:(a,b,c)=>{"use strict";c.d(b,{As:()=>f,qg:()=>g});var d=c(15053),e=c(54957);function f(a){return JSON.stringify(a,h)}function g(a){let b=JSON.parse(a);return function a(b,c=0){if(!b||c>200)return b;if("object"==typeof b){switch(b.$mid){case 1:return e.r.revive(b);case 2:return new RegExp(b.source,b.flags);case 17:return new Date(b.source)}if(b instanceof d.MB||b instanceof Uint8Array)return b;if(Array.isArray(b))for(let d=0;d<b.length;++d)b[d]=a(b[d],c+1);else for(let d in b)Object.hasOwnProperty.call(b,d)&&(b[d]=a(b[d],c+1))}return b}(b)}function h(a,b){return b instanceof RegExp?{$mid:2,source:b.source,flags:b.flags}:b}},8933:(a,b,c)=>{"use strict";c.d(b,{x:()=>i});var d=c(75082),e=c(62677),f=c(46857),g=c(34793),h=c(76631);class i extends h.jG{onclick(a,b){this._register((0,d.ko)(a,d.Bx.CLICK,c=>b(new f.P((0,d.zk)(a),c))))}onmousedown(a,b){this._register((0,d.ko)(a,d.Bx.MOUSE_DOWN,c=>b(new f.P((0,d.zk)(a),c))))}onmouseover(a,b){this._register((0,d.ko)(a,d.Bx.MOUSE_OVER,c=>b(new f.P((0,d.zk)(a),c))))}onmouseleave(a,b){this._register((0,d.ko)(a,d.Bx.MOUSE_LEAVE,c=>b(new f.P((0,d.zk)(a),c))))}onkeydown(a,b){this._register((0,d.ko)(a,d.Bx.KEY_DOWN,a=>b(new e.Z(a))))}onkeyup(a,b){this._register((0,d.ko)(a,d.Bx.KEY_UP,a=>b(new e.Z(a))))}oninput(a,b){this._register((0,d.ko)(a,d.Bx.INPUT,b))}onblur(a,b){this._register((0,d.ko)(a,d.Bx.BLUR,b))}onfocus(a,b){this._register((0,d.ko)(a,d.Bx.FOCUS,b))}ignoreGesture(a){return g.q.ignoreTarget(a)}}},9634:(a,b,c)=>{"use strict";c.d(b,{i:()=>o,s:()=>p});var d=c(75082),e=c(14826),f=c(20522),g=c(66560),h=c(33040),i=c(63060),j=c(95091),k=c(76631);c(70401);var l=c(72816),m=c(89191);let n="--vscode-toolbar-action-min-width";class o extends k.jG{get onDidChangeDropdownVisibility(){return this._onDidChangeDropdownVisibility.event}constructor(a,b,c={orientation:0}){if(super(),this.container=a,this.submenuActionViewItems=[],this.hasSecondaryActions=!1,this._onDidChangeDropdownVisibility=this._register(new j._B),this.originalPrimaryActions=[],this.originalSecondaryActions=[],this.hiddenActions=[],this.disposables=this._register(new k.Cm),c.hoverDelegate=c.hoverDelegate??this._register((0,m.bW)()),this.options=c,this.toggleMenuAction=this._register(new p(()=>this.toggleMenuActionViewItem?.show(),c.toggleMenuTitle)),this.element=document.createElement("div"),this.element.className="monaco-toolbar",a.appendChild(this.element),this.actionBar=this._register(new e.E(this.element,{orientation:c.orientation,ariaLabel:c.ariaLabel,actionRunner:c.actionRunner,allowContextMenu:c.allowContextMenu,highlightToggledItems:c.highlightToggledItems,hoverDelegate:c.hoverDelegate,actionViewItemProvider:(a,d)=>{if(a.id===p.ID)return this.toggleMenuActionViewItem=new f.d(a,{getActions:()=>this.toggleMenuAction.menuActions},b,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:i.L.asClassNameArray(c.moreIcon??h.W.toolBarMore),anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,isMenu:!0,hoverDelegate:this.options.hoverDelegate}),this.toggleMenuActionViewItem.setActionContext(this.actionBar.context),this.disposables.add(this._onDidChangeDropdownVisibility.add(this.toggleMenuActionViewItem.onDidChangeVisibility)),this.toggleMenuActionViewItem;if(c.actionViewItemProvider){let b=c.actionViewItemProvider(a,d);if(b)return b}if(a instanceof g.YH){let c=new f.d(a,a.actions,b,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:a.class,anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,hoverDelegate:this.options.hoverDelegate});return c.setActionContext(this.actionBar.context),this.submenuActionViewItems.push(c),this.disposables.add(this._onDidChangeDropdownVisibility.add(c.onDidChangeVisibility)),c}}})),this.options.responsiveBehavior?.enabled){this.element.classList.toggle("responsive",!0),this.element.classList.toggle("responsive-all","all"===this.options.responsiveBehavior.kind),this.element.classList.toggle("responsive-last","last"===this.options.responsiveBehavior.kind),this.element.style.setProperty(n,`${this.getConfiguredActionMinWidth()}px`);const a=new ResizeObserver(()=>{this.updateActions(this.getAvailableWidth())});a.observe(this.options.responsiveBehavior?.observedElement??this.element),this._store.add((0,k.s)(()=>a.disconnect()))}}set actionRunner(a){this.actionBar.actionRunner=a}get actionRunner(){return this.actionBar.actionRunner}set context(a){for(let b of(this.actionBar.context=a,this.toggleMenuActionViewItem?.setActionContext(a),this.submenuActionViewItems))b.setActionContext(a)}getElement(){return this.element}getItemAction(a){return this.actionBar.getAction(a)}getItemWidth(a){return this.actionBar.getWidth(a)}getItemsLength(){return this.actionBar.length()}setActions(a,b){this.clear(),this.originalPrimaryActions=a?a.slice(0):[],this.originalSecondaryActions=b?b.slice(0):[];let c=a?a.slice(0):[];if(this.hasSecondaryActions=!!(b&&b.length>0),this.hasSecondaryActions&&b&&(this.toggleMenuAction.menuActions=b.slice(0),c.push(this.toggleMenuAction)),c.length>0&&this.options.trailingSeparator&&c.push(new g.wv),c.forEach(a=>{this.actionBar.push(a,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(a)})}),this.updateOverflowClassName(),this.applyResponsiveActionMinWidths(),this.options.responsiveBehavior?.enabled){if(this.hiddenActions.length=0,this.options.responsiveBehavior?.minItems!==void 0){let a=this.options.responsiveBehavior.minItems,b=this.originalPrimaryActions.slice(0,a).reduce((a,b)=>a+this.getActionMinWidth(b),0),c=0;(this.originalSecondaryActions.length>0||a<this.originalPrimaryActions.length)&&(c=24),this.container.style.minWidth=`${b+c}px`,this.element.style.minWidth=`${b+c}px`}else{let a=this.originalPrimaryActions.length>0?this.getActionMinWidth(this.originalPrimaryActions[0]):24;this.container.style.minWidth=`${a}px`,this.element.style.minWidth=`${a}px`}this.updateActions(this.getAvailableWidth())}}getKeybindingLabel(a){let b=this.options.getKeyBinding?.(a);return b?.getLabel()??void 0}getConfiguredActionMinWidth(a){return a?.id===p.ID?20:this.options.responsiveBehavior?.getActionMinWidth?.(a??this.toggleMenuAction)??this.options.responsiveBehavior?.actionMinWidth??20}getActionMinWidth(a){return this.getConfiguredActionMinWidth(a)+4}getAvailableWidth(){return this.options.responsiveBehavior?.getAvailableWidth?this.options.responsiveBehavior.getAvailableWidth():this.element.getBoundingClientRect().width}applyResponsiveActionMinWidths(){if(!this.options.responsiveBehavior?.enabled)return;if("last"===this.options.responsiveBehavior.kind){let a=this.actionBar.hasAction(this.toggleMenuAction)?this.actionBar.length()-2:this.actionBar.length()-1,b=a>=0?this.actionBar.getAction(a):void 0,c=`${this.getConfiguredActionMinWidth(b)}px`;this.element.style.getPropertyValue(n)!==c&&this.element.style.setProperty(n,c);return}let a=this.actionBar.getContainer().firstElementChild;if((0,d.sb)(a))for(let b=0;b<a.children.length;b++){let c=a.children.item(b);if(!(0,d.sb)(c))continue;let e=this.actionBar.getAction(b),f=`${this.getConfiguredActionMinWidth(e)}px`;c.style.minWidth!==f&&(c.style.minWidth=f)}}updateActions(a){if(this.actionBar.isEmpty())return;this.applyResponsiveActionMinWidths();let b=parseInt(this.element.style.minWidth);a=Math.max(a,Number.isNaN(b)?0:b);let c=a=>{if(this.options.responsiveBehavior?.kind==="last"){let b=this.actionBar.hasAction(this.toggleMenuAction),c=b?this.actionBar.length()-1:this.actionBar.length();if(0===c)return 24*!!b;let d=0;for(let a=0;a<c-1;a++)d+=this.actionBar.getWidth(a)+4;let e=this.actionBar.getAction(c-1);return d+=a?this.actionBar.getWidth(c-1):this.getActionMinWidth(e),d+=24*!!b}{let b=0;for(let c=0;c<this.actionBar.length();c++)b+=a?this.actionBar.getWidth(c):this.getActionMinWidth(this.actionBar.getAction(c));return b}},d=c(!1);if(d<=a&&0===this.hiddenActions.length)return;if(d>a){if(this.options.responsiveBehavior?.minItems!==void 0&&(this.actionBar.hasAction(this.toggleMenuAction)?this.actionBar.length()-1:this.actionBar.length())<=this.options.responsiveBehavior.minItems)return;for(;c(!1)>a&&this.actionBar.length()>0;){let a=this.originalPrimaryActions.length-this.hiddenActions.length-1;if(a<0)break;let b=this.originalPrimaryActions[a],c=Math.min(this.getActionMinWidth(b),this.getItemWidth(a));this.hiddenActions.unshift({action:b,size:c}),this.actionBar.pull(a),0===this.originalSecondaryActions.length&&1===this.hiddenActions.length&&(this.actionBar.push(this.toggleMenuAction,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(this.toggleMenuAction)}),this.updateOverflowClassName()),this.applyResponsiveActionMinWidths()}}else for(;this.hiddenActions.length>0;){let b=this.hiddenActions.shift();if(c(!0)+b.size>a){this.hiddenActions.unshift(b);break}this.actionBar.push(b.action,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(b.action),index:this.originalPrimaryActions.length-this.hiddenActions.length-1}),0===this.originalSecondaryActions.length&&0===this.hiddenActions.length&&(this.toggleMenuAction.menuActions=[],this.actionBar.pull(this.actionBar.length()-1),this.updateOverflowClassName()),this.applyResponsiveActionMinWidths()}let e=this.hiddenActions.map(a=>a.action);if(this.originalSecondaryActions.length>0||e.length>0){let a=this.originalSecondaryActions.slice(0);this.toggleMenuAction.menuActions=g.wv.join(e,a)}this.updateOverflowClassName(),this.applyResponsiveActionMinWidths()}updateOverflowClassName(){this.actionBar.domNode.classList.toggle("has-overflow",this.actionBar.hasAction(this.toggleMenuAction))}clear(){this.submenuActionViewItems=[],this.disposables.clear(),this.actionBar.clear()}dispose(){this.clear(),this.disposables.dispose(),this.element.remove(),super.dispose()}}class p extends g.rc{static{this.ID="toolbar.toggle.more"}constructor(a,b){b=b||(0,l.kg)(19,"More Actions..."),super(p.ID,b,void 0,!0),this._menuActions=[],this.toggleDropdownMenu=a}async run(){this.toggleDropdownMenu()}get menuActions(){return this._menuActions}set menuActions(a){this._menuActions=a}}},9761:()=>{},10619:(a,b,c)=>{"use strict";let d,e;c.d(b,{U:()=>q});var f,g,h=c(40427),i=c(17577),j=c(85169),k=c(59502),l=c(55241),m=c(58254),n=c(37788),o=c(77497),p=function(a,b){return function(c,d){b(c,d,a)}};let q=(0,m.u1)("ILanguageFeatureDebounceService");f=g||(g={}),d=new WeakMap,e=0,f.of=function(a){let b=d.get(a);return void 0===b&&(b=++e,d.set(a,b)),b};class r{constructor(a){this._default=a}get(a){return this._default}update(a,b){return this._default}default(){return this._default}}class s{constructor(a,b,c,d,e,f){this._logService=a,this._name=b,this._registry=c,this._default=d,this._min=e,this._max=f,this._cache=new i.qK(50,.7)}_key(a){return a.id+this._registry.all(a).reduce((a,b)=>(0,h.sN)(g.of(b),a),0)}get(a){let b=this._key(a),c=this._cache.get(b);return c?(0,j.qE)(c.value,this._min,this._max):this.default()}update(a,b){let c=this._key(a),d=this._cache.get(c);d||(d=new j.mu(6),this._cache.set(c,d));let e=(0,j.qE)(d.update(b),this._min,this._max);return(0,o.v$)(a.uri,"output")||this._logService.trace(`[DEBOUNCE: ${this._name}] for ${a.uri.toString()} is ${e}ms`),e}_overall(){let a=new j.Uq;for(let[,b]of this._cache)a.update(b.value);return a.value}default(){let a=0|this._overall()||this._default;return(0,j.qE)(a,this._min,this._max)}}let t=class{constructor(a,b){this._logService=a,this._data=new Map,this._isDev=b.isExtensionDevelopment||!b.isBuilt}for(a,b,c){let d=c?.min??50,e=c?.max??d**2,f=c?.key??void 0,h=`${g.of(a)},${d}${f?","+f:""}`,i=this._data.get(h);return i||(this._isDev?(this._logService.debug(`[DEBOUNCE: ${b}] is disabled in developed mode`),i=new r(1.5*d)):i=new s(this._logService,b,a,0|this._overallAverage()||1.5*d,d,e),this._data.set(h,i)),i}_overallAverage(){let a=new j.Uq;for(let b of this._data.values())a.update(b.default());return a.value}};t=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([p(0,n.rr),p(1,k.k)],t),(0,l.v)(q,t,1)},11023:(a,b,c)=>{"use strict";c.d(b,{$B:()=>N,By:()=>j,Cg:()=>k,DS:()=>P,EC:()=>B,EY:()=>I,Fi:()=>l,GN:()=>L,Gj:()=>K,Hn:()=>p,II:()=>s,JP:()=>ad,Qw:()=>x,Rb:()=>n,S5:()=>C,St:()=>q,Ub:()=>z,Yt:()=>i,ZE:()=>J,bN:()=>ae,et:()=>T,f3:()=>y,f9:()=>O,fA:()=>aa,i6:()=>t,ld:()=>M,mc:()=>R,oZ:()=>E,p8:()=>A,pO:()=>r,rm:()=>v,sA:()=>U,sI:()=>m,se:()=>u,t:()=>w,tY:()=>ac,vV:()=>S,wh:()=>o,z5:()=>ab});var d=c(72816),e=c(55404),f=c(37327),g=c(34183),h=c(58330);let i=(0,f.x1)("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:e.Q1.black,hcLight:e.Q1.white},(0,d.kg)(1865,"Editor background color.")),j=(0,f.x1)("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:e.Q1.white,hcLight:g.CU},(0,d.kg)(1866,"Editor default foreground color."));(0,f.x1)("editorStickyScroll.background",i,(0,d.kg)(1867,"Background color of sticky scroll in the editor")),(0,f.x1)("editorStickyScrollGutter.background",i,(0,d.kg)(1868,"Background color of the gutter part of sticky scroll in the editor")),(0,f.x1)("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:e.Q1.fromHex("#0F4A85").transparent(.1)},(0,d.kg)(1869,"Background color of sticky scroll on hover in the editor")),(0,f.x1)("editorStickyScroll.border",{dark:null,light:null,hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1870,"Border color of sticky scroll in the editor")),(0,f.x1)("editorStickyScroll.shadow",h.bX,(0,d.kg)(1871," Shadow color of sticky scroll in the editor"));let k=(0,f.x1)("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:e.Q1.white},(0,d.kg)(1872,"Background color of editor widgets, such as find/replace.")),l=(0,f.x1)("editorWidget.foreground",g.CU,(0,d.kg)(1873,"Foreground color of editor widgets, such as find/replace.")),m=(0,f.x1)("editorWidget.border",{dark:(0,f.JO)(l,.2),light:(0,f.JO)(l,.2),hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1874,"Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget."));(0,f.x1)("editorWidget.resizeBorder",null,(0,d.kg)(1875,"Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),(0,f.x1)("editorError.background",null,(0,d.kg)(1876,"Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let n=(0,f.x1)("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},(0,d.kg)(1877,"Foreground color of error squigglies in the editor."));(0,f.x1)("editorError.border",{dark:null,light:null,hcDark:e.Q1.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},(0,d.kg)(1878,"If set, color of double underlines for errors in the editor."));let o=(0,f.x1)("editorWarning.background",null,(0,d.kg)(1879,"Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),p=(0,f.x1)("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},(0,d.kg)(1880,"Foreground color of warning squigglies in the editor.")),q=(0,f.x1)("editorWarning.border",{dark:null,light:null,hcDark:e.Q1.fromHex("#FFCC00").transparent(.8),hcLight:e.Q1.fromHex("#FFCC00").transparent(.8)},(0,d.kg)(1881,"If set, color of double underlines for warnings in the editor."));(0,f.x1)("editorInfo.background",null,(0,d.kg)(1882,"Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let r=(0,f.x1)("editorInfo.foreground",{dark:"#59a4f9",light:"#0063d3",hcDark:"#59a4f9",hcLight:"#0063d3"},(0,d.kg)(1883,"Foreground color of info squigglies in the editor.")),s=(0,f.x1)("editorInfo.border",{dark:null,light:null,hcDark:e.Q1.fromHex("#59a4f9").transparent(.8),hcLight:"#292929"},(0,d.kg)(1884,"If set, color of double underlines for infos in the editor.")),t=(0,f.x1)("editorHint.foreground",{dark:e.Q1.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},(0,d.kg)(1885,"Foreground color of hint squigglies in the editor."));(0,f.x1)("editorHint.border",{dark:null,light:null,hcDark:e.Q1.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},(0,d.kg)(1886,"If set, color of double underlines for hints in the editor.")),(0,f.x1)("editorLink.activeForeground",{dark:"#4E94CE",light:e.Q1.blue,hcDark:e.Q1.cyan,hcLight:"#292929"},(0,d.kg)(1887,"Color of active links."));let u=(0,f.x1)("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},(0,d.kg)(1888,"Color of the editor selection.")),v=(0,f.x1)("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:e.Q1.white},(0,d.kg)(1889,"Color of the selected text for high contrast.")),w=(0,f.x1)("editor.inactiveSelectionBackground",{light:(0,f.JO)(u,.5),dark:(0,f.JO)(u,.5),hcDark:(0,f.JO)(u,.7),hcLight:(0,f.JO)(u,.5)},(0,d.kg)(1890,"Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),x=(0,f.x1)("editor.selectionHighlightBackground",{light:(0,f.oG)(u,i,.3,.6),dark:(0,f.oG)(u,i,.3,.6),hcDark:null,hcLight:null},(0,d.kg)(1891,"Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:g.bu,hcLight:g.bu},(0,d.kg)(1892,"Border color for regions with the same content as the selection.")),(0,f.x1)("editor.compositionBorder",{light:"#000000",dark:"#ffffff",hcLight:"#000000",hcDark:"#ffffff"},(0,d.kg)(1893,"The border color for an IME composition.")),(0,f.x1)("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},(0,d.kg)(1894,"Color of the current search match."));let y=(0,f.x1)("editor.findMatchForeground",null,(0,d.kg)(1895,"Text color of the current search match.")),z=(0,f.x1)("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},(0,d.kg)(1896,"Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),A=(0,f.x1)("editor.findMatchHighlightForeground",null,(0,d.kg)(1897,"Foreground color of the other search matches."),!0);(0,f.x1)("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},(0,d.kg)(1898,"Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),(0,f.x1)("editor.findMatchBorder",{light:null,dark:null,hcDark:g.bu,hcLight:g.bu},(0,d.kg)(1899,"Border color of the current search match."));let B=(0,f.x1)("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:g.bu,hcLight:g.bu},(0,d.kg)(1900,"Border color of the other search matches.")),C=(0,f.x1)("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:(0,f.JO)(g.bu,.4),hcLight:(0,f.JO)(g.bu,.4)},(0,d.kg)(1901,"Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},(0,d.kg)(1902,"Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);let D=(0,f.x1)("editorHoverWidget.background",k,(0,d.kg)(1903,"Background color of the editor hover."));(0,f.x1)("editorHoverWidget.foreground",l,(0,d.kg)(1904,"Foreground color of the editor hover."));let E=(0,f.x1)("editorHoverWidget.border",m,(0,d.kg)(1905,"Border color of the editor hover."));(0,f.x1)("editorHoverWidget.statusBarBackground",{dark:(0,f.a)(D,.2),light:(0,f.e$)(D,.05),hcDark:k,hcLight:k},(0,d.kg)(1906,"Background color of the editor hover status bar."));let F=(0,f.x1)("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:e.Q1.white,hcLight:e.Q1.black},(0,d.kg)(1907,"Foreground color of inline hints")),G=(0,f.x1)("editorInlayHint.background",{dark:(0,f.JO)(h.WM,.1),light:(0,f.JO)(h.WM,.1),hcDark:(0,f.JO)(e.Q1.white,.1),hcLight:(0,f.JO)(h.WM,.1)},(0,d.kg)(1908,"Background color of inline hints"));(0,f.x1)("editorInlayHint.typeForeground",F,(0,d.kg)(1909,"Foreground color of inline hints for types")),(0,f.x1)("editorInlayHint.typeBackground",G,(0,d.kg)(1910,"Background color of inline hints for types")),(0,f.x1)("editorInlayHint.parameterForeground",F,(0,d.kg)(1911,"Foreground color of inline hints for parameters")),(0,f.x1)("editorInlayHint.parameterBackground",G,(0,d.kg)(1912,"Background color of inline hints for parameters"));let H=(0,f.x1)("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},(0,d.kg)(1913,"The color used for the lightbulb actions icon."));(0,f.x1)("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},(0,d.kg)(1914,"The color used for the lightbulb auto fix actions icon.")),(0,f.x1)("editorLightBulbAi.foreground",H,(0,d.kg)(1915,"The color used for the lightbulb AI icon.")),(0,f.x1)("editor.snippetTabstopHighlightBackground",{dark:new e.Q1(new e.bU(124,124,124,.3)),light:new e.Q1(new e.bU(10,50,100,.2)),hcDark:new e.Q1(new e.bU(124,124,124,.3)),hcLight:new e.Q1(new e.bU(10,50,100,.2))},(0,d.kg)(1916,"Highlight background color of a snippet tabstop.")),(0,f.x1)("editor.snippetTabstopHighlightBorder",null,(0,d.kg)(1917,"Highlight border color of a snippet tabstop.")),(0,f.x1)("editor.snippetFinalTabstopHighlightBackground",null,(0,d.kg)(1918,"Highlight background color of the final tabstop of a snippet.")),(0,f.x1)("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new e.Q1(new e.bU(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},(0,d.kg)(1919,"Highlight border color of the final tabstop of a snippet."));let I=new e.Q1(new e.bU(155,185,85,.2)),J=new e.Q1(new e.bU(255,0,0,.2)),K=(0,f.x1)("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},(0,d.kg)(1920,"Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),L=(0,f.x1)("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},(0,d.kg)(1921,"Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("diffEditor.insertedLineBackground",{dark:I,light:I,hcDark:null,hcLight:null},(0,d.kg)(1922,"Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),(0,f.x1)("diffEditor.removedLineBackground",{dark:J,light:J,hcDark:null,hcLight:null},(0,d.kg)(1923,"Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),(0,f.x1)("diffEditorGutter.insertedLineBackground",null,(0,d.kg)(1924,"Background color for the margin where lines got inserted.")),(0,f.x1)("diffEditorGutter.removedLineBackground",null,(0,d.kg)(1925,"Background color for the margin where lines got removed."));let M=(0,f.x1)("diffEditorOverview.insertedForeground",null,(0,d.kg)(1926,"Diff overview ruler foreground for inserted content.")),N=(0,f.x1)("diffEditorOverview.removedForeground",null,(0,d.kg)(1927,"Diff overview ruler foreground for removed content."));(0,f.x1)("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},(0,d.kg)(1928,"Outline color for the text that got inserted.")),(0,f.x1)("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},(0,d.kg)(1929,"Outline color for text that got removed.")),(0,f.x1)("diffEditor.border",{dark:null,light:null,hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1930,"Border color between the two text editors.")),(0,f.x1)("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},(0,d.kg)(1931,"Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.")),(0,f.x1)("diffEditor.unchangedRegionBackground","sideBar.background",(0,d.kg)(1932,"The background color of unchanged blocks in the diff editor.")),(0,f.x1)("diffEditor.unchangedRegionForeground","foreground",(0,d.kg)(1933,"The foreground color of unchanged blocks in the diff editor.")),(0,f.x1)("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},(0,d.kg)(1934,"The background color of unchanged code in the diff editor."));let O=(0,f.x1)("widget.shadow",{dark:(0,f.JO)(e.Q1.black,.36),light:(0,f.JO)(e.Q1.black,.16),hcDark:null,hcLight:null},(0,d.kg)(1935,"Shadow color of widgets such as find/replace inside the editor.")),P=(0,f.x1)("widget.border",{dark:null,light:null,hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1936,"Border color of widgets such as find/replace inside the editor.")),Q=(0,f.x1)("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},(0,d.kg)(1937,"Toolbar background when hovering over actions using the mouse"));(0,f.x1)("toolbar.hoverOutline",{dark:null,light:null,hcDark:g.bu,hcLight:g.bu},(0,d.kg)(1938,"Toolbar outline when hovering over actions using the mouse")),(0,f.x1)("toolbar.activeBackground",{dark:(0,f.a)(Q,.1),light:(0,f.e$)(Q,.1),hcDark:null,hcLight:null},(0,d.kg)(1939,"Toolbar background when holding the mouse over actions"));let R=(0,f.x1)("breadcrumb.foreground",(0,f.JO)(g.CU,.8),(0,d.kg)(1940,"Color of focused breadcrumb items.")),S=(0,f.x1)("breadcrumb.background",i,(0,d.kg)(1941,"Background color of breadcrumb items.")),T=(0,f.x1)("breadcrumb.focusForeground",{light:(0,f.e$)(g.CU,.2),dark:(0,f.a)(g.CU,.1),hcDark:(0,f.a)(g.CU,.1),hcLight:(0,f.a)(g.CU,.1)},(0,d.kg)(1942,"Color of focused breadcrumb items.")),U=(0,f.x1)("breadcrumb.activeSelectionForeground",{light:(0,f.e$)(g.CU,.2),dark:(0,f.a)(g.CU,.1),hcDark:(0,f.a)(g.CU,.1),hcLight:(0,f.a)(g.CU,.1)},(0,d.kg)(1943,"Color of selected breadcrumb items."));(0,f.x1)("breadcrumbPicker.background",k,(0,d.kg)(1944,"Background color of breadcrumb item picker."));let V=e.Q1.fromHex("#40C8AE").transparent(.5),W=e.Q1.fromHex("#40A6FF").transparent(.5),X=e.Q1.fromHex("#606060").transparent(.4),Y=(0,f.x1)("merge.currentHeaderBackground",{dark:V,light:V,hcDark:null,hcLight:null},(0,d.kg)(1945,"Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("merge.currentContentBackground",(0,f.JO)(Y,.4),(0,d.kg)(1946,"Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let Z=(0,f.x1)("merge.incomingHeaderBackground",{dark:W,light:W,hcDark:null,hcLight:null},(0,d.kg)(1947,"Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("merge.incomingContentBackground",(0,f.JO)(Z,.4),(0,d.kg)(1948,"Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let $=(0,f.x1)("merge.commonHeaderBackground",{dark:X,light:X,hcDark:null,hcLight:null},(0,d.kg)(1949,"Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("merge.commonContentBackground",(0,f.JO)($,.4),(0,d.kg)(1950,"Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let _=(0,f.x1)("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},(0,d.kg)(1951,"Border color on headers and the splitter in inline merge-conflicts."));(0,f.x1)("editorOverviewRuler.currentContentForeground",{dark:(0,f.JO)(Y,1),light:(0,f.JO)(Y,1),hcDark:_,hcLight:_},(0,d.kg)(1952,"Current overview ruler foreground for inline merge-conflicts.")),(0,f.x1)("editorOverviewRuler.incomingContentForeground",{dark:(0,f.JO)(Z,1),light:(0,f.JO)(Z,1),hcDark:_,hcLight:_},(0,d.kg)(1953,"Incoming overview ruler foreground for inline merge-conflicts.")),(0,f.x1)("editorOverviewRuler.commonContentForeground",{dark:(0,f.JO)($,1),light:(0,f.JO)($,1),hcDark:_,hcLight:_},(0,d.kg)(1954,"Common ancestor overview ruler foreground for inline merge-conflicts."));let aa=(0,f.x1)("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},(0,d.kg)(1955,"Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0),ab=(0,f.x1)("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",(0,d.kg)(1956,"Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),ac=(0,f.x1)("problemsErrorIcon.foreground",n,(0,d.kg)(1957,"The color used for the problems error icon.")),ad=(0,f.x1)("problemsWarningIcon.foreground",p,(0,d.kg)(1958,"The color used for the problems warning icon.")),ae=(0,f.x1)("problemsInfoIcon.foreground",r,(0,d.kg)(1959,"The color used for the problems info icon."))},12017:(a,b,c)=>{"use strict";c.d(b,{AS:()=>h,gr:()=>l,iP:()=>k,iu:()=>g,q2:()=>j,tA:()=>i,ui:()=>m});var d=c(6812),e=c(61822),f=c(77509);class g{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class h{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){let c=this._range.getStartPosition(),f=this._range.getEndPosition(),g=f.lineNumber,h=n(a,f,this._text.length+(this._range.isEmpty()?0:-1));h.lineNumber>g&&(h=new d.y(g,a.getLineMaxColumn(g)));let i=e.Q.fromPositions(c,h);b.addTrackedEditOperation(i,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class i{constructor(a,b){this._range=a,this._text=b}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromRange(c,0)}}class j{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getStartPosition())}}class k{constructor(a,b,c,d,e=!1){this._range=a,this._text=b,this._columnDeltaOffset=d,this._lineNumberDeltaOffset=c,this.insertsAutoWhitespace=e}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition().delta(this._lineNumberDeltaOffset,this._columnDeltaOffset))}}class l{constructor(a){this._range=a}getEditOperations(a,b){let c=a.getValueInRange(this._range),f=this._range.getEndPosition(),g=f.lineNumber,h=n(a,f,c.length);h.lineNumber>g&&(h=new d.y(g,a.getLineMaxColumn(g)));let i=e.Q.fromPositions(f,h);b.addTrackedEditOperation(i,"")}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class m{constructor(a,b,c,d=!1){this._range=a,this._text=b,this._initialSelection=c,this._forceMoveMarkers=d,this._selectionId=null}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text,this._forceMoveMarkers),this._selectionId=b.trackSelection(this._initialSelection)}computeCursorState(a,b){return b.getTrackedSelection(this._selectionId)}}function n(a,b,c){if(c<0)throw Error("Unexpected negative delta");let e=a.getLineCount(),f=new d.y(e,a.getLineMaxColumn(e));for(let g=b.lineNumber;g<=e;g++)if(g===b.lineNumber){let e=c-a.getLineMaxColumn(b.lineNumber)+b.column;if(e<=0){f=new d.y(b.lineNumber,b.column+c);break}c=e}else{let b=c-a.getLineMaxColumn(g);if(b<=0){f=new d.y(g,c);break}c=b}return f}},12428:(a,b,c)=>{"use strict";c.d(b,{k:()=>g,x:()=>h});var d=c(15053),e=c(50411);function f(a){return a.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}class g{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(a,b,c,d){this.oldPosition=a,this.oldText=b,this.newPosition=c,this.newText=d}toString(){return 0===this.oldText.length?`(insert@${this.oldPosition} "${f(this.newText)}")`:0===this.newText.length?`(delete@${this.oldPosition} "${f(this.oldText)}")`:`(replace@${this.oldPosition} "${f(this.oldText)}" with "${f(this.newText)}")`}static _writeStringSize(a){return 4+2*a.length}static _writeString(a,b,c){let e=b.length;(0,d.Sw)(a,e,c),c+=4;for(let f=0;f<e;f++)(0,d.gN)(a,b.charCodeAt(f),c),c+=2;return c}static _readString(a,b){let c=(0,d.bb)(a,b);return b+=4,(0,e.Su)(a,b,c)}writeSize(){return 8+g._writeStringSize(this.oldText)+g._writeStringSize(this.newText)}write(a,b){return(0,d.Sw)(a,this.oldPosition,b),b+=4,(0,d.Sw)(a,this.newPosition,b),b+=4,b=g._writeString(a,this.oldText,b),b=g._writeString(a,this.newText,b)}static read(a,b,c){let e=(0,d.bb)(a,b);b+=4;let f=(0,d.bb)(a,b);b+=4;let h=g._readString(a,b);b+=g._writeStringSize(h);let i=g._readString(a,b);return b+=g._writeStringSize(i),c.push(new g(e,h,f,i)),b}}function h(a,b){return null===a||0===a.length?b:new i(a,b).compress()}class i{constructor(a,b){this._prevEdits=a,this._currEdits=b,this._result=[],this._resultLen=0,this._prevLen=this._prevEdits.length,this._prevDeltaOffset=0,this._currLen=this._currEdits.length,this._currDeltaOffset=0}compress(){let a=0,b=0,c=this._getPrev(a),d=this._getCurr(b);for(;a<this._prevLen||b<this._currLen;){let e,f;if(null===c){this._acceptCurr(d),d=this._getCurr(++b);continue}if(null===d){this._acceptPrev(c),c=this._getPrev(++a);continue}if(d.oldEnd<=c.newPosition){this._acceptCurr(d),d=this._getCurr(++b);continue}if(c.newEnd<=d.oldPosition){this._acceptPrev(c),c=this._getPrev(++a);continue}if(d.oldPosition<c.newPosition){let[a,b]=i._splitCurr(d,c.newPosition-d.oldPosition);this._acceptCurr(a),d=b;continue}if(c.newPosition<d.oldPosition){let[a,b]=i._splitPrev(c,d.oldPosition-c.newPosition);this._acceptPrev(a),c=b;continue}if(d.oldEnd===c.newEnd)e=c,f=d,c=this._getPrev(++a),d=this._getCurr(++b);else if(d.oldEnd<c.newEnd){let[a,g]=i._splitPrev(c,d.oldLength);e=a,f=d,c=g,d=this._getCurr(++b)}else{let[b,g]=i._splitCurr(d,c.newLength);e=c,f=b,c=this._getPrev(++a),d=g}this._result[this._resultLen++]=new g(e.oldPosition,e.oldText,f.newPosition,f.newText),this._prevDeltaOffset+=e.newLength-e.oldLength,this._currDeltaOffset+=f.newLength-f.oldLength}let e=i._merge(this._result);return i._removeNoOps(e)}_acceptCurr(a){this._result[this._resultLen++]=i._rebaseCurr(this._prevDeltaOffset,a),this._currDeltaOffset+=a.newLength-a.oldLength}_getCurr(a){return a<this._currLen?this._currEdits[a]:null}_acceptPrev(a){this._result[this._resultLen++]=i._rebasePrev(this._currDeltaOffset,a),this._prevDeltaOffset+=a.newLength-a.oldLength}_getPrev(a){return a<this._prevLen?this._prevEdits[a]:null}static _rebaseCurr(a,b){return new g(b.oldPosition-a,b.oldText,b.newPosition,b.newText)}static _rebasePrev(a,b){return new g(b.oldPosition,b.oldText,b.newPosition+a,b.newText)}static _splitPrev(a,b){let c=a.newText.substr(0,b),d=a.newText.substr(b);return[new g(a.oldPosition,a.oldText,a.newPosition,c),new g(a.oldEnd,"",a.newPosition+b,d)]}static _splitCurr(a,b){let c=a.oldText.substr(0,b),d=a.oldText.substr(b);return[new g(a.oldPosition,c,a.newPosition,a.newText),new g(a.oldPosition+b,d,a.newEnd,"")]}static _merge(a){if(0===a.length)return a;let b=[],c=0,d=a[0];for(let e=1;e<a.length;e++){let f=a[e];d.oldEnd===f.oldPosition?d=new g(d.oldPosition,d.oldText+f.oldText,d.newPosition,d.newText+f.newText):(b[c++]=d,d=f)}return b[c++]=d,b}static _removeNoOps(a){if(0===a.length)return a;let b=[],c=0;for(let d=0;d<a.length;d++){let e=a[d];e.oldText!==e.newText&&(b[c++]=e)}return b}}},12719:()=>{},12780:(a,b,c)=>{"use strict";c.d(b,{A:()=>h});var d,e,f,g=c(26529);(d=f||(f={}))[d.Ignore=0]="Ignore",d[d.Info=1]="Info",d[d.Warning=2]="Warning",d[d.Error=3]="Error",(e=f||(f={})).fromValue=function(a){return a?(0,g.Q_)("error",a)?e.Error:(0,g.Q_)("warning",a)||(0,g.Q_)("warn",a)?e.Warning:(0,g.Q_)("info",a)?e.Info:e.Ignore:e.Ignore},e.toString=function(a){switch(a){case e.Error:return"error";case e.Warning:return"warning";case e.Info:return"info";default:return"ignore"}};var h=f},13352:(a,b,c)=>{"use strict";c.d(b,{T:()=>d});let d=(0,c(58254).u1)("codeEditorService")},14016:(a,b,c)=>{"use strict";c.d(b,{M$:()=>j,Tf:()=>g,gI:()=>function a(b,c){if(void 0!==b){let d=b.match(/^\s*var\((.+)\)$/);if(d){let b=d[1].split(",",2);return 2===b.length&&(c=a(b[1].trim(),c)),`var(${b[0]}, ${c})`}return b}return c},mG:()=>i,r$:()=>f,s7:()=>h,yj:()=>e});var d=c(77497);function e(a){let b=a.replaceAll(/[^_\-a-z0-9]/gi,"");return b!==a&&console.warn(`CSS ident value ${a} modified to ${b} to be safe for CSS`),b}function f(a){return`'${a.replaceAll(/'/g,"\\000027")}'`}function g(a){return a?i`url('${CSS.escape(d.zl.uriToBrowserUri(a).toString(!0))}')`:"url('')"}function h(a,b=!1){let c=CSS.escape(a);return b||c===a||console.warn(`CSS class name ${a} modified to ${c} to be safe for CSS`),c}function i(a,...b){return a.reduce((a,c,d)=>a+c+(b[d]||""),"")}class j{constructor(){this._parts=[]}push(...a){this._parts.push(...a)}join(a="\n"){return this._parts.join(a)}}},14670:(a,b,c)=>{"use strict";c.d(b,{E:()=>m,eP:()=>l,y0:()=>k});var d,e=c(54265),f=c(78014);c(95091),c(76631);var g=c(55900),h=c(61811),i=c(87873),j=c(74864);function k(...a){let b,c,d,e;return 2===a.length?[c,d]=a:[b,c,d,e]=a,new m(new g.nA(b,void 0,d),c,d,()=>m.globalTransaction,f.nx,e??j.j.ofCaller())}function l(a,b,c,d=j.j.ofCaller()){return new m(new g.nA(a.owner,a.debugName,a.debugReferenceFn??c),b,c,()=>a.getTransaction?.()??m.globalTransaction,a.equalsFn??f.nx,d)}class m extends i.ZK{constructor(a,b,c,d,f,g){super(g),this._debugNameData=a,this.event=b,this._getValue=c,this._getTransaction=d,this._equalityComparator=f,this._hasValue=!1,this.handleEvent=a=>{let b=this._getValue(a),c=this._value,d=!this._hasValue||!this._equalityComparator(c,b),f=!1;d&&(this._value=b,this._hasValue&&(f=!0,(0,e.PO)(this._getTransaction(),a=>{for(let e of((0,h.t)()?.handleObservableUpdated(this,{oldValue:c,newValue:b,change:void 0,didChange:d,hadValue:this._hasValue}),this._observers))a.updateObserver(e,this),e.handleChange(this,void 0)},()=>{let a=this.getDebugName();return"Event fired"+(a?`: ${a}`:"")})),this._hasValue=!0),f||(0,h.t)()?.handleObservableUpdated(this,{oldValue:c,newValue:b,change:void 0,didChange:d,hadValue:this._hasValue})}}getDebugName(){return this._debugNameData.getDebugName(this)}get debugName(){let a=this.getDebugName();return"From Event"+(a?`: ${a}`:"")}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)}debugSetValue(a){this._value=a}debugGetState(){return{value:this._value,hasValue:this._hasValue}}}(d=k||(k={})).Observer=m,d.batchEventsGlobally=function(a,b){let c=!1;void 0===m.globalTransaction&&(m.globalTransaction=a,c=!0);try{b()}finally{c&&(m.globalTransaction=void 0)}}},14700:()=>{},14826:(a,b,c)=>{"use strict";c.d(b,{E:()=>l});var d=c(75082),e=c(62677),f=c(70288),g=c(89191),h=c(66560),i=c(95091),j=c(76631),k=c(85214);c(1505);class l extends j.jG{get viewItems(){return this._viewItems}get onDidBlur(){return this._onDidBlur.event}get onDidCancel(){return this._onDidCancel.event}get onDidRun(){return this._onDidRun.event}get onWillRun(){return this._onWillRun.event}constructor(a,b={}){let c,k;switch(super(),this._actionRunnerDisposables=this._register(new j.Cm),this.viewItemDisposables=this._register(new j.$w),this.triggerKeyDown=!1,this.focusable=!0,this._onDidBlur=this._register(new i.vl),this._onDidCancel=this._register(new i.vl({onWillAddFirstListener:()=>this.cancelHasListener=!0})),this.cancelHasListener=!1,this._onDidRun=this._register(new i.vl),this._onWillRun=this._register(new i.vl),this.options=b,this._context=b.context??null,this._orientation=this.options.orientation??0,this._triggerKeys={keyDown:this.options.triggerKeys?.keyDown??!1,keys:this.options.triggerKeys?.keys??[3,10]},this._hoverDelegate=b.hoverDelegate??this._register((0,g.bW)()),this.options.actionRunner?this._actionRunner=this.options.actionRunner:(this._actionRunner=new h.LN,this._actionRunnerDisposables.add(this._actionRunner)),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(a=>this._onDidRun.fire(a))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(a=>this._onWillRun.fire(a))),this._viewItems=[],this.focusedItem=void 0,this.domNode=document.createElement("div"),this.domNode.className="monaco-action-bar",this._orientation){case 0:c=[15],k=[17];break;case 1:c=[16],k=[18],this.domNode.className+=" vertical"}this._register((0,d.ko)(this.domNode,d.Bx.KEY_DOWN,a=>{let b=new e.Z(a),d=!0,g="number"==typeof this.focusedItem?this.viewItems[this.focusedItem]:void 0;c&&(b.equals(c[0])||b.equals(c[1]))?d=this.focusPrevious():k&&(b.equals(k[0])||b.equals(k[1]))?d=this.focusNext():b.equals(9)&&this.cancelHasListener?this._onDidCancel.fire():b.equals(14)?d=this.focusFirst():b.equals(13)?d=this.focusLast():b.equals(2)&&g instanceof f.EH&&g.trapsArrowNavigation?d=this.focusNext(void 0,!0):this.isTriggerKeyEvent(b)?this._triggerKeys.keyDown?this.doTrigger(b):this.triggerKeyDown=!0:d=!1,d&&(b.preventDefault(),b.stopPropagation())})),this._register((0,d.ko)(this.domNode,d.Bx.KEY_UP,a=>{let b=new e.Z(a);this.isTriggerKeyEvent(b)?(!this._triggerKeys.keyDown&&this.triggerKeyDown&&(this.triggerKeyDown=!1,this.doTrigger(b)),b.preventDefault(),b.stopPropagation()):(b.equals(2)||b.equals(1026)||b.equals(16)||b.equals(18)||b.equals(15)||b.equals(17))&&this.updateFocusedItem()})),this.focusTracker=this._register((0,d.w5)(this.domNode)),this._register(this.focusTracker.onDidBlur(()=>{(0,d.bq)()!==this.domNode&&(0,d.QX)((0,d.bq)(),this.domNode)||(this._onDidBlur.fire(),this.previouslyFocusedItem=this.focusedItem,this.focusedItem=void 0,this.triggerKeyDown=!1)})),this._register(this.focusTracker.onDidFocus(()=>this.updateFocusedItem())),this.actionsList=document.createElement("ul"),this.actionsList.className="actions-container",this.options.highlightToggledItems&&this.actionsList.classList.add("highlight-toggled"),this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"),this.options.ariaLabel&&this.actionsList.setAttribute("aria-label",this.options.ariaLabel),this.domNode.appendChild(this.actionsList),a.appendChild(this.domNode)}refreshRole(){this.length()>=1?this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"):this.actionsList.setAttribute("role","presentation")}setFocusable(a){if(this.focusable=a,this.focusable){let a=this.viewItems.find(a=>a instanceof f.EH&&a.isEnabled());a instanceof f.EH&&a.setFocusable(!0)}else this.viewItems.forEach(a=>{a instanceof f.EH&&a.setFocusable(!1)})}isTriggerKeyEvent(a){let b=!1;return this._triggerKeys.keys.forEach(c=>{b=b||a.equals(c)}),b}updateFocusedItem(){for(let a=0;a<this.actionsList.children.length;a++){let b=this.actionsList.children[a];if((0,d.QX)((0,d.bq)(),b)){this.focusedItem=a,this.viewItems[this.focusedItem]?.showHover?.();break}}}get context(){return this._context}set context(a){this._context=a,this.viewItems.forEach(b=>b.setActionContext(a))}get actionRunner(){return this._actionRunner}set actionRunner(a){this._actionRunner=a,this._actionRunnerDisposables.clear(),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(a=>this._onDidRun.fire(a))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(a=>this._onWillRun.fire(a))),this.viewItems.forEach(b=>b.actionRunner=a)}getContainer(){return this.domNode}hasAction(a){return -1!==this.viewItems.findIndex(b=>b.action.id===a.id)}getAction(a){if("number"==typeof a)return this.viewItems[a]?.action;if((0,d.sb)(a)){for(;a.parentElement!==this.actionsList;){if(!a.parentElement)return;a=a.parentElement}for(let b=0;b<this.actionsList.childNodes.length;b++)if(this.actionsList.childNodes[b]===a)return this.viewItems[b].action}}push(a,b={}){let c=Array.isArray(a)?a:[a],e=(0,k.Et)(b.index)?b.index:null;if(c.forEach(a=>{let c,g=document.createElement("li");g.className="action-item",g.setAttribute("role","presentation");let h={hoverDelegate:this._hoverDelegate,...b,isTabList:"tablist"===this.options.ariaRole};this.options.actionViewItemProvider&&(c=this.options.actionViewItemProvider(a,h)),c||(c=new f.Z4(this.context,a,h)),this.options.allowContextMenu||this.viewItemDisposables.set(c,(0,d.ko)(g,d.Bx.CONTEXT_MENU,a=>{d.fs.stop(a,!0)})),c.actionRunner=this._actionRunner,c.setActionContext(this.context),c.render(g),null===e||e<0||e>=this.actionsList.children.length?(this.actionsList.appendChild(g),this._viewItems.push(c)):(this.actionsList.insertBefore(g,this.actionsList.children[e]),this._viewItems.splice(e,0,c),e++)}),this.focusable){let a=!1;for(let b of this.viewItems)b instanceof f.EH&&(!a&&b.action.id!==h.wv.ID&&(b.isEnabled()||!this.options.focusOnlyEnabledItems)?(b.setFocusable(!0),a=!0):b.setFocusable(!1))}"number"==typeof this.focusedItem&&this.focus(this.focusedItem),this.refreshRole()}getWidth(a){return this.actionsList.children.item(a)?.clientWidth??0}pull(a){a>=0&&a<this.viewItems.length&&(this.actionsList.childNodes[a].remove(),this.viewItemDisposables.deleteAndDispose(this.viewItems[a]),(0,j.AS)(this._viewItems.splice(a,1)),this.refreshRole())}clear(){this.isEmpty()||(this._viewItems=(0,j.AS)(this._viewItems),this.viewItemDisposables.clearAndDisposeAll(),(0,d.w_)(this.actionsList),this.refreshRole())}length(){return this.viewItems.length}isEmpty(){return 0===this.viewItems.length}focus(a){let b,c=!1;if(void 0===a?c=!0:"number"==typeof a?b=a:"boolean"==typeof a&&(c=a),c&&void 0===this.focusedItem){let a=this.viewItems.findIndex(a=>a.isEnabled());this.focusedItem=-1===a?void 0:a,this.updateFocus(void 0,void 0,!0)}else void 0!==b&&(this.focusedItem=b),this.updateFocus(void 0,void 0,!0)}focusFirst(){return this.focusedItem=this.length()-1,this.focusNext(!0)}focusLast(){return this.focusedItem=0,this.focusPrevious(!0)}focusNext(a,b){let c;if(void 0===this.focusedItem)this.focusedItem=this.viewItems.length-1;else if(this.viewItems.length<=1)return!1;let d=this.focusedItem;do{if(!a&&this.options.preventLoopNavigation&&this.focusedItem+1>=this.viewItems.length)return this.focusedItem=d,!1;this.focusedItem=(this.focusedItem+1)%this.viewItems.length,c=this.viewItems[this.focusedItem]}while(this.focusedItem!==d&&(this.options.focusOnlyEnabledItems&&!c.isEnabled()||c.action.id===h.wv.ID));return this.updateFocus(void 0,void 0,b),!0}focusPrevious(a){let b;if(void 0===this.focusedItem)this.focusedItem=0;else if(this.viewItems.length<=1)return!1;let c=this.focusedItem;do{if(this.focusedItem=this.focusedItem-1,this.focusedItem<0){if(!a&&this.options.preventLoopNavigation)return this.focusedItem=c,!1;this.focusedItem=this.viewItems.length-1}b=this.viewItems[this.focusedItem]}while(this.focusedItem!==c&&(this.options.focusOnlyEnabledItems&&!b.isEnabled()||b.action.id===h.wv.ID));return this.updateFocus(!0),!0}updateFocus(a,b,c=!1){void 0===this.focusedItem&&this.actionsList.focus({preventScroll:b}),void 0!==this.previouslyFocusedItem&&this.previouslyFocusedItem!==this.focusedItem&&this.viewItems[this.previouslyFocusedItem]?.blur();let d=void 0!==this.focusedItem?this.viewItems[this.focusedItem]:void 0;if(d){let e=!0;(0,k.Tn)(d.focus)||(e=!1),this.options.focusOnlyEnabledItems&&(0,k.Tn)(d.isEnabled)&&!d.isEnabled()&&(e=!1),d.action.id===h.wv.ID&&(e=!1),e?(c||this.previouslyFocusedItem!==this.focusedItem)&&(d.focus(a),this.previouslyFocusedItem=this.focusedItem):(this.actionsList.focus({preventScroll:b}),this.previouslyFocusedItem=void 0),e&&d.showHover?.()}}doTrigger(a){if(void 0===this.focusedItem)return;let b=this.viewItems[this.focusedItem];if(b instanceof f.EH){let c=null===b._context||void 0===b._context?a:b._context;this.run(b._action,c)}}async run(a,b){await this._actionRunner.run(a,b)}dispose(){this._context=void 0,this._viewItems=(0,j.AS)(this._viewItems),this.getContainer().remove(),super.dispose()}}},14900:(a,b,c)=>{"use strict";c.d(b,{Nt:()=>e,Rh:()=>h});var d=c(72816);let e=(0,c(58254).u1)("accessibilitySignalService");class f{static register(a){return new f(a.fileName)}static{this.error=f.register({fileName:"error.mp3"})}static{this.warning=f.register({fileName:"warning.mp3"})}static{this.success=f.register({fileName:"success.mp3"})}static{this.foldedArea=f.register({fileName:"foldedAreas.mp3"})}static{this.break=f.register({fileName:"break.mp3"})}static{this.quickFixes=f.register({fileName:"quickFixes.mp3"})}static{this.taskCompleted=f.register({fileName:"taskCompleted.mp3"})}static{this.taskFailed=f.register({fileName:"taskFailed.mp3"})}static{this.terminalBell=f.register({fileName:"terminalBell.mp3"})}static{this.diffLineInserted=f.register({fileName:"diffLineInserted.mp3"})}static{this.diffLineDeleted=f.register({fileName:"diffLineDeleted.mp3"})}static{this.diffLineModified=f.register({fileName:"diffLineModified.mp3"})}static{this.requestSent=f.register({fileName:"requestSent.mp3"})}static{this.responseReceived1=f.register({fileName:"responseReceived1.mp3"})}static{this.responseReceived2=f.register({fileName:"responseReceived2.mp3"})}static{this.responseReceived3=f.register({fileName:"responseReceived3.mp3"})}static{this.responseReceived4=f.register({fileName:"responseReceived4.mp3"})}static{this.clear=f.register({fileName:"clear.mp3"})}static{this.save=f.register({fileName:"save.mp3"})}static{this.format=f.register({fileName:"format.mp3"})}static{this.voiceRecordingStarted=f.register({fileName:"voiceRecordingStarted.mp3"})}static{this.voiceRecordingStopped=f.register({fileName:"voiceRecordingStopped.mp3"})}static{this.progress=f.register({fileName:"progress.mp3"})}static{this.chatEditModifiedFile=f.register({fileName:"chatEditModifiedFile.mp3"})}static{this.editsKept=f.register({fileName:"editsKept.mp3"})}static{this.editsUndone=f.register({fileName:"editsUndone.mp3"})}static{this.nextEditSuggestion=f.register({fileName:"nextEditSuggestion.mp3"})}static{this.terminalCommandSucceeded=f.register({fileName:"terminalCommandSucceeded.mp3"})}static{this.chatUserActionRequired=f.register({fileName:"chatUserActionRequired.mp3"})}static{this.codeActionTriggered=f.register({fileName:"codeActionTriggered.mp3"})}static{this.codeActionApplied=f.register({fileName:"codeActionApplied.mp3"})}constructor(a){this.fileName=a}}class g{constructor(a){this.randomOneOf=a}}class h{constructor(a,b,c,d,e,f,g=!1){this.sound=a,this.name=b,this.legacySoundSettingsKey=c,this.settingsKey=d,this.legacyAnnouncementSettingsKey=e,this.announcementMessage=f,this.managesOwnEnablement=g}static{this._signals=new Set}static register(a){let b=new h(new g("randomOneOf"in a.sound?a.sound.randomOneOf:[a.sound]),a.name,a.legacySoundSettingsKey,a.settingsKey,a.legacyAnnouncementSettingsKey,a.announcementMessage,a.managesOwnEnablement);return h._signals.add(b),b}static{this.errorAtPosition=h.register({name:(0,d.kg)(1630,"Error at Position"),sound:f.error,announcementMessage:(0,d.kg)(1631,"Error"),settingsKey:"accessibility.signals.positionHasError",delaySettingsKey:"accessibility.signalOptions.delays.errorAtPosition"})}static{this.warningAtPosition=h.register({name:(0,d.kg)(1632,"Warning at Position"),sound:f.warning,announcementMessage:(0,d.kg)(1633,"Warning"),settingsKey:"accessibility.signals.positionHasWarning",delaySettingsKey:"accessibility.signalOptions.delays.warningAtPosition"})}static{this.errorOnLine=h.register({name:(0,d.kg)(1634,"Error on Line"),sound:f.error,legacySoundSettingsKey:"audioCues.lineHasError",legacyAnnouncementSettingsKey:"accessibility.alert.error",announcementMessage:(0,d.kg)(1635,"Error on Line"),settingsKey:"accessibility.signals.lineHasError"})}static{this.warningOnLine=h.register({name:(0,d.kg)(1636,"Warning on Line"),sound:f.warning,legacySoundSettingsKey:"audioCues.lineHasWarning",legacyAnnouncementSettingsKey:"accessibility.alert.warning",announcementMessage:(0,d.kg)(1637,"Warning on Line"),settingsKey:"accessibility.signals.lineHasWarning"})}static{this.foldedArea=h.register({name:(0,d.kg)(1638,"Folded Area on Line"),sound:f.foldedArea,legacySoundSettingsKey:"audioCues.lineHasFoldedArea",legacyAnnouncementSettingsKey:"accessibility.alert.foldedArea",announcementMessage:(0,d.kg)(1639,"Folded"),settingsKey:"accessibility.signals.lineHasFoldedArea"})}static{this.break=h.register({name:(0,d.kg)(1640,"Breakpoint on Line"),sound:f.break,legacySoundSettingsKey:"audioCues.lineHasBreakpoint",legacyAnnouncementSettingsKey:"accessibility.alert.breakpoint",announcementMessage:(0,d.kg)(1641,"Breakpoint"),settingsKey:"accessibility.signals.lineHasBreakpoint"})}static{this.inlineSuggestion=h.register({name:(0,d.kg)(1642,"Inline Suggestion on Line"),sound:f.quickFixes,legacySoundSettingsKey:"audioCues.lineHasInlineSuggestion",settingsKey:"accessibility.signals.lineHasInlineSuggestion"})}static{this.nextEditSuggestion=h.register({name:(0,d.kg)(1643,"Next Edit Suggestion on Line"),sound:f.nextEditSuggestion,legacySoundSettingsKey:"audioCues.nextEditSuggestion",settingsKey:"accessibility.signals.nextEditSuggestion",announcementMessage:(0,d.kg)(1644,"Next Edit Suggestion")})}static{this.terminalQuickFix=h.register({name:(0,d.kg)(1645,"Terminal Quick Fix"),sound:f.quickFixes,legacySoundSettingsKey:"audioCues.terminalQuickFix",legacyAnnouncementSettingsKey:"accessibility.alert.terminalQuickFix",announcementMessage:(0,d.kg)(1646,"Quick Fix"),settingsKey:"accessibility.signals.terminalQuickFix"})}static{this.onDebugBreak=h.register({name:(0,d.kg)(1647,"Debugger Stopped on Breakpoint"),sound:f.break,legacySoundSettingsKey:"audioCues.onDebugBreak",legacyAnnouncementSettingsKey:"accessibility.alert.onDebugBreak",announcementMessage:(0,d.kg)(1648,"Breakpoint"),settingsKey:"accessibility.signals.onDebugBreak"})}static{this.noInlayHints=h.register({name:(0,d.kg)(1649,"No Inlay Hints on Line"),sound:f.error,legacySoundSettingsKey:"audioCues.noInlayHints",legacyAnnouncementSettingsKey:"accessibility.alert.noInlayHints",announcementMessage:(0,d.kg)(1650,"No Inlay Hints"),settingsKey:"accessibility.signals.noInlayHints"})}static{this.taskCompleted=h.register({name:(0,d.kg)(1651,"Task Completed"),sound:f.taskCompleted,legacySoundSettingsKey:"audioCues.taskCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.taskCompleted",announcementMessage:(0,d.kg)(1652,"Task Completed"),settingsKey:"accessibility.signals.taskCompleted"})}static{this.taskFailed=h.register({name:(0,d.kg)(1653,"Task Failed"),sound:f.taskFailed,legacySoundSettingsKey:"audioCues.taskFailed",legacyAnnouncementSettingsKey:"accessibility.alert.taskFailed",announcementMessage:(0,d.kg)(1654,"Task Failed"),settingsKey:"accessibility.signals.taskFailed"})}static{this.terminalCommandFailed=h.register({name:(0,d.kg)(1655,"Terminal Command Failed"),sound:f.error,legacySoundSettingsKey:"audioCues.terminalCommandFailed",legacyAnnouncementSettingsKey:"accessibility.alert.terminalCommandFailed",announcementMessage:(0,d.kg)(1656,"Command Failed"),settingsKey:"accessibility.signals.terminalCommandFailed"})}static{this.terminalCommandSucceeded=h.register({name:(0,d.kg)(1657,"Terminal Command Succeeded"),sound:f.terminalCommandSucceeded,announcementMessage:(0,d.kg)(1658,"Command Succeeded"),settingsKey:"accessibility.signals.terminalCommandSucceeded"})}static{this.terminalBell=h.register({name:(0,d.kg)(1659,"Terminal Bell"),sound:f.terminalBell,legacySoundSettingsKey:"audioCues.terminalBell",legacyAnnouncementSettingsKey:"accessibility.alert.terminalBell",announcementMessage:(0,d.kg)(1660,"Terminal Bell"),settingsKey:"accessibility.signals.terminalBell"})}static{this.notebookCellCompleted=h.register({name:(0,d.kg)(1661,"Notebook Cell Completed"),sound:f.taskCompleted,legacySoundSettingsKey:"audioCues.notebookCellCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellCompleted",announcementMessage:(0,d.kg)(1662,"Notebook Cell Completed"),settingsKey:"accessibility.signals.notebookCellCompleted"})}static{this.notebookCellFailed=h.register({name:(0,d.kg)(1663,"Notebook Cell Failed"),sound:f.taskFailed,legacySoundSettingsKey:"audioCues.notebookCellFailed",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellFailed",announcementMessage:(0,d.kg)(1664,"Notebook Cell Failed"),settingsKey:"accessibility.signals.notebookCellFailed"})}static{this.diffLineInserted=h.register({name:(0,d.kg)(1665,"Diff Line Inserted"),sound:f.diffLineInserted,legacySoundSettingsKey:"audioCues.diffLineInserted",settingsKey:"accessibility.signals.diffLineInserted"})}static{this.diffLineDeleted=h.register({name:(0,d.kg)(1666,"Diff Line Deleted"),sound:f.diffLineDeleted,legacySoundSettingsKey:"audioCues.diffLineDeleted",settingsKey:"accessibility.signals.diffLineDeleted"})}static{this.diffLineModified=h.register({name:(0,d.kg)(1667,"Diff Line Modified"),sound:f.diffLineModified,legacySoundSettingsKey:"audioCues.diffLineModified",settingsKey:"accessibility.signals.diffLineModified"})}static{this.chatEditModifiedFile=h.register({name:(0,d.kg)(1668,"Chat Edit Modified File"),sound:f.chatEditModifiedFile,announcementMessage:(0,d.kg)(1669,"File Modified from Chat Edits"),settingsKey:"accessibility.signals.chatEditModifiedFile"})}static{this.chatRequestSent=h.register({name:(0,d.kg)(1670,"Chat Request Sent"),sound:f.requestSent,legacySoundSettingsKey:"audioCues.chatRequestSent",legacyAnnouncementSettingsKey:"accessibility.alert.chatRequestSent",announcementMessage:(0,d.kg)(1671,"Chat Request Sent"),settingsKey:"accessibility.signals.chatRequestSent"})}static{this.chatResponseReceived=h.register({name:(0,d.kg)(1672,"Chat Response Received"),legacySoundSettingsKey:"audioCues.chatResponseReceived",sound:{randomOneOf:[f.responseReceived1,f.responseReceived2,f.responseReceived3,f.responseReceived4]},settingsKey:"accessibility.signals.chatResponseReceived"})}static{this.codeActionTriggered=h.register({name:(0,d.kg)(1673,"Code Action Request Triggered"),sound:f.codeActionTriggered,legacySoundSettingsKey:"audioCues.codeActionRequestTriggered",legacyAnnouncementSettingsKey:"accessibility.alert.codeActionRequestTriggered",announcementMessage:(0,d.kg)(1674,"Code Action Request Triggered"),settingsKey:"accessibility.signals.codeActionTriggered"})}static{this.codeActionApplied=h.register({name:(0,d.kg)(1675,"Code Action Applied"),legacySoundSettingsKey:"audioCues.codeActionApplied",sound:f.codeActionApplied,settingsKey:"accessibility.signals.codeActionApplied"})}static{this.progress=h.register({name:(0,d.kg)(1676,"Progress"),sound:f.progress,legacySoundSettingsKey:"audioCues.chatResponsePending",legacyAnnouncementSettingsKey:"accessibility.alert.progress",announcementMessage:(0,d.kg)(1677,"Progress"),settingsKey:"accessibility.signals.progress"})}static{this.clear=h.register({name:(0,d.kg)(1678,"Clear"),sound:f.clear,legacySoundSettingsKey:"audioCues.clear",legacyAnnouncementSettingsKey:"accessibility.alert.clear",announcementMessage:(0,d.kg)(1679,"Clear"),settingsKey:"accessibility.signals.clear"})}static{this.save=h.register({name:(0,d.kg)(1680,"Save"),sound:f.save,legacySoundSettingsKey:"audioCues.save",legacyAnnouncementSettingsKey:"accessibility.alert.save",announcementMessage:(0,d.kg)(1681,"Save"),settingsKey:"accessibility.signals.save"})}static{this.format=h.register({name:(0,d.kg)(1682,"Format"),sound:f.format,legacySoundSettingsKey:"audioCues.format",legacyAnnouncementSettingsKey:"accessibility.alert.format",announcementMessage:(0,d.kg)(1683,"Format"),settingsKey:"accessibility.signals.format"})}static{this.voiceRecordingStarted=h.register({name:(0,d.kg)(1684,"Voice Recording Started"),sound:f.voiceRecordingStarted,legacySoundSettingsKey:"audioCues.voiceRecordingStarted",settingsKey:"accessibility.signals.voiceRecordingStarted"})}static{this.voiceRecordingStopped=h.register({name:(0,d.kg)(1685,"Voice Recording Stopped"),sound:f.voiceRecordingStopped,legacySoundSettingsKey:"audioCues.voiceRecordingStopped",settingsKey:"accessibility.signals.voiceRecordingStopped"})}static{this.editsKept=h.register({name:(0,d.kg)(1686,"Edits Kept"),sound:f.editsKept,announcementMessage:(0,d.kg)(1687,"Edits Kept"),settingsKey:"accessibility.signals.editsKept"})}static{this.editsUndone=h.register({name:(0,d.kg)(1688,"Undo Edits"),sound:f.editsUndone,announcementMessage:(0,d.kg)(1689,"Edits Undone"),settingsKey:"accessibility.signals.editsUndone"})}static{this.chatUserActionRequired=h.register({name:(0,d.kg)(1690,"Chat User Action Required"),sound:f.chatUserActionRequired,announcementMessage:(0,d.kg)(1691,"Chat User Action Required"),settingsKey:"accessibility.signals.chatUserActionRequired"})}}},14960:(a,b,c)=>{"use strict";c.d(b,{C:()=>l,a0:()=>m,dQ:()=>k,un:()=>j});var d=c(78014);c(95091);var e=c(76631),f=c(74864),g=c(55900),h=c(87873),i=c(64834);function j(a,b,c=f.j.ofCaller()){return void 0!==b?new i.w(new g.nA(a,void 0,b),b,void 0,void 0,d.nx,c):new i.w(new g.nA(void 0,void 0,a),a,void 0,void 0,d.nx,c)}function k(a,b,c,e=f.j.ofCaller()){return new i.P(new g.nA(a,void 0,b),b,void 0,void 0,d.nx,c,e)}function l(a,b,c=f.j.ofCaller()){return new i.w(new g.nA(a.owner,a.debugName,a.debugReferenceFn),b,void 0,a.onLastObserverRemoved,a.equalsFn??d.nx,c)}function m(a,b,c=f.j.ofCaller()){let h,j,k;return void 0===b?(h=a,j=void 0):(j=a,h=b),new i.w(new g.nA(j,void 0,h),a=>{k?k.clear():k=new e.Cm;let b=h(a);return b&&k.add(b),b},void 0,()=>{k&&(k.dispose(),k=void 0)},d.nx,c)}(0,h.N2)(l)},15053:(a,b,c)=>{"use strict";let d;c.d(b,{$l:()=>h,Gs:()=>m,MB:()=>g,Sw:()=>k,bb:()=>j,gN:()=>i,mU:()=>o,pJ:()=>l});var e=c(2525);let f="u">typeof Buffer;new e.d(()=>new Uint8Array(256));class g{static wrap(a){return f&&!Buffer.isBuffer(a)&&(a=Buffer.from(a.buffer,a.byteOffset,a.byteLength)),new g(a)}constructor(a){this.buffer=a,this.byteLength=this.buffer.byteLength}toString(){return f?this.buffer.toString():(d||(d=new TextDecoder(void 0,{ignoreBOM:!0})),d.decode(this.buffer))}}function h(a,b){return a[b+0]>>>0|a[b+1]<<8>>>0}function i(a,b,c){a[c+0]=255&b,b>>>=8,a[c+1]=255&b}function j(a,b){return 0x1000000*a[b]+65536*a[b+1]+256*a[b+2]+a[b+3]}function k(a,b,c){a[c+3]=b,b>>>=8,a[c+2]=b,b>>>=8,a[c+1]=b,b>>>=8,a[c]=b}function l(a,b){return a[b]}function m(a,b,c){a[c]=b}let n="0123456789abcdef";function o({buffer:a}){let b="";for(let c=0;c<a.length;c++){let d=a[c];b+=n[d>>>4],b+=n[15&d]}return b}},15287:(a,b,c)=>{"use strict";c.d(b,{D:()=>d});class d{static capture(a){if(0===a.getScrollTop()||a.hasPendingScrollAnimation())return new d(a.getScrollTop(),a.getContentHeight(),null,0,null);let b=null,c=0,e=a.getVisibleRanges();if(e.length>0){b=e[0].getStartPosition();let d=a.getTopForPosition(b.lineNumber,b.column);c=a.getScrollTop()-d}return new d(a.getScrollTop(),a.getContentHeight(),b,c,a.getPosition())}constructor(a,b,c,d,e){this._initialScrollTop=a,this._initialContentHeight=b,this._visiblePosition=c,this._visiblePositionScrollDelta=d,this._cursorPosition=e}restore(a){if((this._initialContentHeight!==a.getContentHeight()||this._initialScrollTop!==a.getScrollTop())&&this._visiblePosition){let b=a.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);a.setScrollTop(b+this._visiblePositionScrollDelta)}}restoreRelativeVerticalPositionOfCursor(a){if(this._initialContentHeight===a.getContentHeight()&&this._initialScrollTop===a.getScrollTop())return;let b=a.getPosition();if(!this._cursorPosition||!b)return;let c=a.getTopForLineNumber(b.lineNumber)-a.getTopForLineNumber(this._cursorPosition.lineNumber);a.setScrollTop(a.getScrollTop()+c,1)}}},15486:()=>{},15857:(a,b,c)=>{"use strict";c.d(b,{Ix:()=>l,bc:()=>j,nV:()=>k});var d=c(54588),e=c(33040),f=c(72816);let g=(0,f.kg)(2,"Match Case"),h=(0,f.kg)(3,"Match Whole Word"),i=(0,f.kg)(4,"Use Regular Expression");class j extends d.lM{constructor(a){super({icon:e.W.caseSensitive,title:g+a.appendTitle,isChecked:a.isChecked,hoverLifecycleOptions:a.hoverLifecycleOptions,inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}class k extends d.lM{constructor(a){super({icon:e.W.wholeWord,title:h+a.appendTitle,isChecked:a.isChecked,hoverLifecycleOptions:a.hoverLifecycleOptions,inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}class l extends d.lM{constructor(a){super({icon:e.W.regex,title:i+a.appendTitle,isChecked:a.isChecked,hoverLifecycleOptions:a.hoverLifecycleOptions,inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}},16202:(a,b,c)=>{"use strict";c.d(b,{JZ:()=>E,Cw:()=>I});var d=c(95091),e=c(76631),f=c(26529),g=c(57615),h=c(97195);class i{static{this.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES=";:.,=}])> \n "}static{this.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS="'\"`;:.,=}])> \n "}constructor(a){if(a.autoClosingPairs?this._autoClosingPairs=a.autoClosingPairs.map(a=>new h.i3(a)):a.brackets?this._autoClosingPairs=a.brackets.map(a=>new h.i3({open:a[0],close:a[1]})):this._autoClosingPairs=[],a.__electricCharacterSupport&&a.__electricCharacterSupport.docComment){const b=a.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new h.i3({open:b.open,close:b.close||""}))}this._autoCloseBeforeForQuotes="string"==typeof a.autoCloseBefore?a.autoCloseBefore:i.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES,this._autoCloseBeforeForBrackets="string"==typeof a.autoCloseBefore?a.autoCloseBefore:i.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS,this._surroundingPairs=a.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(a){return a?this._autoCloseBeforeForQuotes:this._autoCloseBeforeForBrackets}getSurroundingPairs(){return this._surroundingPairs}}var j=c(81309),k=c(99807),l=c(89665);class m{constructor(a){this._richEditBrackets=a}getElectricCharacters(){let a=[];if(this._richEditBrackets)for(let b of this._richEditBrackets.brackets)for(let c of b.close){let b=c.charAt(c.length-1);a.push(b)}return(0,j.dM)(a)}onElectricCharacter(a,b,c){if(!this._richEditBrackets||0===this._richEditBrackets.brackets.length)return null;let d=b.findTokenIndexAtOffset(c-1);if((0,k.Yo)(b.getStandardTokenType(d)))return null;let e=this._richEditBrackets.reversedRegex,f=b.getLineContent().substring(0,c-1)+a,g=l.Fu.findPrevBracketInRange(e,1,f,0,f.length);if(!g)return null;let h=f.substring(g.startColumn-1,g.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[h])return null;let i=b.getActualLineContentBefore(g.startColumn-1);return/^\s*$/.test(i)?{matchOpenBracket:h}:null}}function n(a){return a.global&&(a.lastIndex=0),!0}class o{constructor(a){this._indentationRules=a}shouldIncrease(a){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&n(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(a))}shouldDecrease(a){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&n(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(a))}shouldIndentNextLine(a){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&n(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(a))}shouldIgnore(a){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&n(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(a))}getIndentMetadata(a){let b=0;return this.shouldIncrease(a)&&(b+=1),this.shouldDecrease(a)&&(b+=2),this.shouldIndentNextLine(a)&&(b+=4),this.shouldIgnore(a)&&(b+=8),b}}var p=c(66036);class q{constructor(a){(a=a||{}).brackets=a.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],a.brackets.forEach(a=>{let b=q._createOpenBracketRegExp(a[0]),c=q._createCloseBracketRegExp(a[1]);b&&c&&this._brackets.push({open:a[0],openRegExp:b,close:a[1],closeRegExp:c})}),this._regExpRules=a.onEnterRules||[]}onEnter(a,b,c,d){if(a>=3)for(let a=0,e=this._regExpRules.length;a<e;a++){let e=this._regExpRules[a];if([{reg:e.beforeText,text:c},{reg:e.afterText,text:d},{reg:e.previousLineText,text:b}].every(a=>!a.reg||(a.reg.lastIndex=0,a.reg.test(a.text))))return e.action}if(a>=2&&c.length>0&&d.length>0)for(let a=0,b=this._brackets.length;a<b;a++){let b=this._brackets[a];if(b.openRegExp.test(c)&&b.closeRegExp.test(d))return{indentAction:h.l.IndentOutdent}}if(a>=2&&c.length>0){for(let a=0,b=this._brackets.length;a<b;a++)if(this._brackets[a].openRegExp.test(c))return{indentAction:h.l.Indent}}return null}static _createOpenBracketRegExp(a){let b=(0,f.bm)(a);return/\B/.test(b.charAt(0))||(b="\\b"+b),b+="\\s*$",q._safeRegExp(b)}static _createCloseBracketRegExp(a){let b=(0,f.bm)(a);return/\B/.test(b.charAt(b.length-1))||(b+="\\b"),b="^\\s*"+b,q._safeRegExp(b)}static _safeRegExp(a){try{return new RegExp(a)}catch(a){return(0,p.dz)(a),null}}}var r=c(58254),s=c(7092),t=c(81325),u=c(55241),v=c(86444),w=c(57773);class x{constructor(a,b){this.languageId=a;const c=b.brackets?y(b.brackets):[],d=new w.VV(a=>{let b=new Set;return{info:new A(this,a,b),closing:b}}),e=new w.VV(a=>{let b=new Set,c=new Set;return{info:new B(this,a,b,c),opening:b,openingColorized:c}});for(const[a,b]of c){const c=d.get(a),f=e.get(b);c.closing.add(f.info),f.opening.add(c.info)}for(const[a,f]of b.colorizedBracketPairs?y(b.colorizedBracketPairs):c.filter(a=>"<"!==a[0]||">"!==a[1])){const b=d.get(a),c=e.get(f);b.closing.add(c.info),c.openingColorized.add(b.info),c.opening.add(b.info)}this._openingBrackets=new Map([...d.cachedValues].map(([a,b])=>[a,b.info])),this._closingBrackets=new Map([...e.cachedValues].map(([a,b])=>[a,b.info]))}get openingBrackets(){return[...this._openingBrackets.values()]}get closingBrackets(){return[...this._closingBrackets.values()]}getOpeningBracketInfo(a){return this._openingBrackets.get(a)}getClosingBracketInfo(a){return this._closingBrackets.get(a)}getBracketInfo(a){return this.getOpeningBracketInfo(a)||this.getClosingBracketInfo(a)}getBracketRegExp(a){let b=Array.from([...this._openingBrackets.keys(),...this._closingBrackets.keys()]);return(0,l.xb)(b,a)}}function y(a){return a.filter(([a,b])=>""!==a&&""!==b)}class z{constructor(a,b){this.config=a,this.bracketText=b}get languageId(){return this.config.languageId}}class A extends z{constructor(a,b,c){super(a,b),this.openedBrackets=c,this.isOpeningBracket=!0}}class B extends z{constructor(a,b,c,d){super(a,b),this.openingBrackets=c,this.openingColorizedBrackets=d,this.isOpeningBracket=!1}closes(a){return a.config===this.config&&this.openingBrackets.has(a)}closesColorized(a){return a.config===this.config&&this.openingColorizedBrackets.has(a)}getOpeningBrackets(){return[...this.openingBrackets]}}var C=function(a,b){return function(c,d){b(c,d,a)}};class D{constructor(a){this.languageId=a}affects(a){return!this.languageId||this.languageId===a}}let E=(0,r.u1)("languageConfigurationService"),F=class extends e.jG{constructor(a,b){super(),this.configurationService=a,this.languageService=b,this._registry=this._register(new N),this.onDidChangeEmitter=this._register(new d.vl),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const c=new Set(Object.values(G));this._register(this.configurationService.onDidChangeConfiguration(a=>{let b=a.change.keys.some(a=>c.has(a)),d=a.change.overrides.filter(([a,b])=>b.some(a=>c.has(a))).map(([a])=>a);if(b)this.configurations.clear(),this.onDidChangeEmitter.fire(new D(void 0));else for(let a of d)this.languageService.isRegisteredLanguageId(a)&&(this.configurations.delete(a),this.onDidChangeEmitter.fire(new D(a)))})),this._register(this._registry.onDidChange(a=>{this.configurations.delete(a.languageId),this.onDidChangeEmitter.fire(new D(a.languageId))}))}register(a,b,c){return this._registry.register(a,b,c)}getLanguageConfiguration(a){let b=this.configurations.get(a);return b||(b=function(a,b,c,d){var e,f;let g,h,i=b.getLanguageConfiguration(a);if(!i){if(!d.isRegisteredLanguageId(a))return new O(a,{});i=new O(a,{})}let j=(e=i.languageId,g=(f=c).getValue(G.brackets,{overrideIdentifier:e}),h=f.getValue(G.colorizedBracketPairs,{overrideIdentifier:e}),{brackets:H(g),colorizedBracketPairs:H(h)}),k=K([i.underlyingConfig,j]);return new O(i.languageId,k)}(a,this._registry,this.configurationService,this.languageService),this.configurations.set(a,b)),b}};F=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([C(0,s.pG),C(1,t.L)],F);let G={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function H(a){if(Array.isArray(a))return a.map(a=>{if(Array.isArray(a)&&2===a.length)return[a[0],a[1]]}).filter(a=>!!a)}function I(a,b,c){let d=a.getLineContent(b),e=(0,f.UU)(d);return e.length>c-1&&(e=e.substring(0,c-1)),e}class J{constructor(a){this.languageId=a,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(a,b){let c=new L(a,b,++this._order);return this._entries.push(c),this._resolved=null,(0,e.lC)((0,e.s)(()=>{for(let a=0;a<this._entries.length;a++)if(this._entries[a]===c){this._entries.splice(a,1),this._resolved=null;break}}))}getResolvedConfiguration(){if(!this._resolved){let a=this._resolve();a&&(this._resolved=new O(this.languageId,a))}return this._resolved}_resolve(){return 0===this._entries.length?null:(this._entries.sort(L.cmp),K(this._entries.map(a=>a.configuration)))}}function K(a){let b={comments:void 0,brackets:void 0,wordPattern:void 0,indentationRules:void 0,onEnterRules:void 0,autoClosingPairs:void 0,surroundingPairs:void 0,autoCloseBefore:void 0,folding:void 0,colorizedBracketPairs:void 0,__electricCharacterSupport:void 0};for(let c of a)b={comments:c.comments||b.comments,brackets:c.brackets||b.brackets,wordPattern:c.wordPattern||b.wordPattern,indentationRules:c.indentationRules||b.indentationRules,onEnterRules:c.onEnterRules||b.onEnterRules,autoClosingPairs:c.autoClosingPairs||b.autoClosingPairs,surroundingPairs:c.surroundingPairs||b.surroundingPairs,autoCloseBefore:c.autoCloseBefore||b.autoCloseBefore,folding:c.folding||b.folding,colorizedBracketPairs:c.colorizedBracketPairs||b.colorizedBracketPairs,__electricCharacterSupport:c.__electricCharacterSupport||b.__electricCharacterSupport};return b}class L{constructor(a,b,c){this.configuration=a,this.priority=b,this.order=c}static cmp(a,b){return a.priority===b.priority?a.order-b.order:a.priority-b.priority}}class M{constructor(a){this.languageId=a}}class N extends e.jG{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new d.vl),this.onDidChange=this._onDidChange.event,this._register(this.register(v.vH,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:!0}},0))}register(a,b,c=0){let d=this._entries.get(a);d||(d=new J(a),this._entries.set(a,d));let f=d.register(b,c);return this._onDidChange.fire(new M(a)),(0,e.lC)((0,e.s)(()=>{f.dispose(),this._onDidChange.fire(new M(a))}))}getLanguageConfiguration(a){let b=this._entries.get(a);return b?.getResolvedConfiguration()||null}}class O{constructor(a,b){this.languageId=a,this.underlyingConfig=b,this._brackets=null,this._electricCharacter=null,this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new q(this.underlyingConfig):null,this.comments=O._handleComments(this.underlyingConfig),this.characterPair=new i(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||g.Ld,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new o(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new x(a,this.underlyingConfig)}getWordDefinition(){return(0,g.Io)(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new l.az(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new m(this.brackets)),this._electricCharacter}onEnter(a,b,c,d){return this._onEnterSupport?this._onEnterSupport.onEnter(a,b,c,d):null}getAutoClosingPairs(){return new h.GB(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(a){return this.characterPair.getAutoCloseBeforeSet(a)}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(a){let b=a.comments;if(!b)return null;let c={};if(b.lineComment&&("string"==typeof b.lineComment?c.lineCommentToken=b.lineComment:(c.lineCommentToken=b.lineComment.comment,c.lineCommentNoIndent=b.lineComment.noIndent)),b.blockComment){let[a,d]=b.blockComment;c.blockCommentStartToken=a,c.blockCommentEndToken=d}return c}}(0,u.v)(E,F,1)},16240:(a,b,c)=>{"use strict";c.d(b,{U:()=>f});var d=c(95091);class e{constructor(){this._inputMode="insert",this._onDidChangeInputMode=new d.vl,this.onDidChangeInputMode=this._onDidChangeInputMode.event}getInputMode(){return this._inputMode}}let f=new e},16794:(a,b,c)=>{"use strict";c.d(b,{b:()=>d});let d=(0,c(58254).u1)("keybindingService")},17577:(a,b,c)=>{"use strict";var d,e,f;c.d(b,{QO:()=>o,cO:()=>m,db:()=>n,fT:()=>h,qK:()=>l,rm:()=>i});class g{constructor(a,b){this.uri=a,this.value=b}}class h{static{this.defaultToKey=a=>a.toString()}constructor(a,b){if(this[d]="ResourceMap",a instanceof h)this.map=new Map(a.map),this.toKey=b??h.defaultToKey;else if(function(a){return Array.isArray(a)}(a))for(const[c,d]of(this.map=new Map,this.toKey=b??h.defaultToKey,a))this.set(c,d);else this.map=new Map,this.toKey=a??h.defaultToKey}set(a,b){return this.map.set(this.toKey(a),new g(a,b)),this}get(a){return this.map.get(this.toKey(a))?.value}has(a){return this.map.has(this.toKey(a))}get size(){return this.map.size}clear(){this.map.clear()}delete(a){return this.map.delete(this.toKey(a))}forEach(a,b){for(let[c,d]of(void 0!==b&&(a=a.bind(b)),this.map))a(d.value,d.uri,this)}*values(){for(let a of this.map.values())yield a.value}*keys(){for(let a of this.map.values())yield a.uri}*entries(){for(let a of this.map.values())yield[a.uri,a.value]}*[(d=Symbol.toStringTag,Symbol.iterator)](){for(let[,a]of this.map)yield[a.uri,a.value]}}class i{constructor(a,b){this[e]="ResourceSet",a&&"function"!=typeof a?(this._map=new h(b),a.forEach(this.add,this)):this._map=new h(a)}get size(){return this._map.size}add(a){return this._map.set(a,a),this}clear(){this._map.clear()}delete(a){return this._map.delete(a)}forEach(a,b){this._map.forEach((c,d)=>a.call(b,d,d,this))}has(a){return this._map.has(a)}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.keys()}[(e=Symbol.toStringTag,Symbol.iterator)](){return this.keys()}}class j{constructor(){this[f]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(a){return this._map.has(a)}get(a,b=0){let c=this._map.get(a);if(c)return 0!==b&&this.touch(c,b),c.value}set(a,b,c=0){let d=this._map.get(a);if(d)d.value=b,0!==c&&this.touch(d,c);else{switch(d={key:a,value:b,next:void 0,previous:void 0},c){case 0:case 2:default:this.addItemLast(d);break;case 1:this.addItemFirst(d)}this._map.set(a,d),this._size++}return this}delete(a){return!!this.remove(a)}remove(a){let b=this._map.get(a);if(b)return this._map.delete(a),this.removeItem(b),this._size--,b.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw Error("Invalid list");let a=this._head;return this._map.delete(a.key),this.removeItem(a),this._size--,a.value}forEach(a,b){let c=this._state,d=this._head;for(;d;){if(b?a.bind(b)(d.value,d.key,this):a(d.value,d.key,this),this._state!==c)throw Error("LinkedMap got modified during iteration.");d=d.next}}keys(){let a=this,b=this._state,c=this._head,d={[Symbol.iterator]:()=>d,[Symbol.dispose](){},next(){if(a._state!==b)throw Error("LinkedMap got modified during iteration.");if(!c)return{value:void 0,done:!0};{let a={value:c.key,done:!1};return c=c.next,a}}};return d}values(){let a=this,b=this._state,c=this._head,d={[Symbol.iterator]:()=>d,[Symbol.dispose](){},next(){if(a._state!==b)throw Error("LinkedMap got modified during iteration.");if(!c)return{value:void 0,done:!0};{let a={value:c.value,done:!1};return c=c.next,a}}};return d}entries(){let a=this,b=this._state,c=this._head,d={[Symbol.iterator]:()=>d,[Symbol.dispose](){},next(){if(a._state!==b)throw Error("LinkedMap got modified during iteration.");if(!c)return{value:void 0,done:!0};{let a={value:[c.key,c.value],done:!1};return c=c.next,a}}};return d}[(f=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(a){if(a>=this.size)return;if(0===a)return void this.clear();let b=this._head,c=this.size;for(;b&&c>a;)this._map.delete(b.key),b=b.next,c--;this._head=b,this._size=c,b&&(b.previous=void 0),this._state++}trimNew(a){if(a>=this.size)return;if(0===a)return void this.clear();let b=this._tail,c=this.size;for(;b&&c>a;)this._map.delete(b.key),b=b.previous,c--;this._tail=b,this._size=c,b&&(b.next=void 0),this._state++}addItemFirst(a){if(this._head||this._tail)if(this._head)a.next=this._head,this._head.previous=a;else throw Error("Invalid list");else this._tail=a;this._head=a,this._state++}addItemLast(a){if(this._head||this._tail)if(this._tail)a.previous=this._tail,this._tail.next=a;else throw Error("Invalid list");else this._head=a;this._tail=a,this._state++}removeItem(a){if(a===this._head&&a===this._tail)this._head=void 0,this._tail=void 0;else if(a===this._head){if(!a.next)throw Error("Invalid list");a.next.previous=void 0,this._head=a.next}else if(a===this._tail){if(!a.previous)throw Error("Invalid list");a.previous.next=void 0,this._tail=a.previous}else{let b=a.next,c=a.previous;if(!b||!c)throw Error("Invalid list");b.previous=c,c.next=b}a.next=void 0,a.previous=void 0,this._state++}touch(a,b){if(!this._head||!this._tail)throw Error("Invalid list");if(1===b||2===b){if(1===b){if(a===this._head)return;let b=a.next,c=a.previous;a===this._tail?(c.next=void 0,this._tail=c):(b.previous=c,c.next=b),a.previous=void 0,a.next=this._head,this._head.previous=a,this._head=a,this._state++}else if(2===b){if(a===this._tail)return;let b=a.next,c=a.previous;a===this._head?(b.previous=void 0,this._head=b):(b.previous=c,c.next=b),a.next=void 0,a.previous=this._tail,this._tail.next=a,this._tail=a,this._state++}}}toJSON(){let a=[];return this.forEach((b,c)=>{a.push([c,b])}),a}fromJSON(a){for(let[b,c]of(this.clear(),a))this.set(b,c)}}class k extends j{constructor(a,b=1){super(),this._limit=a,this._ratio=Math.min(Math.max(0,b),1)}get limit(){return this._limit}set limit(a){this._limit=a,this.checkTrim()}get(a,b=2){return super.get(a,b)}peek(a){return super.get(a,0)}set(a,b){return super.set(a,b,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class l extends k{constructor(a,b=1){super(a,b)}trim(a){this.trimOld(a)}set(a,b){return super.set(a,b),this.checkTrim(),this}}class m{constructor(a){if(this._m1=new Map,this._m2=new Map,a)for(const[b,c]of a)this.set(b,c)}clear(){this._m1.clear(),this._m2.clear()}set(a,b){this._m1.set(a,b),this._m2.set(b,a)}get(a){return this._m1.get(a)}getKey(a){return this._m2.get(a)}delete(a){let b=this._m1.get(a);return void 0!==b&&(this._m1.delete(a),this._m2.delete(b),!0)}keys(){return this._m1.keys()}values(){return this._m1.values()}}class n{constructor(){this.map=new Map}add(a,b){let c=this.map.get(a);c||(c=new Set,this.map.set(a,c)),c.add(b)}delete(a,b){let c=this.map.get(a);c&&(c.delete(b),0===c.size&&this.map.delete(a))}forEach(a,b){let c=this.map.get(a);c&&c.forEach(b)}}class o{constructor(){this._data=new Map}set(a,...b){let c=this._data;for(let a=0;a<b.length-1;a++){let d=c.get(b[a]);void 0===d&&(d=new Map,c.set(b[a],d)),c=d}c.set(b[b.length-1],a)}get(...a){let b=this._data;for(let c=0;c<a.length-1;c++){let d=b.get(a[c]);if(void 0===d)return;b=d}return b.get(a[a.length-1])}clear(){this._data.clear()}toString(){let a=(b,c)=>{let d="";for(let[e,f]of b)d+=`${" ".repeat(c)}${e}: `,f instanceof Map?d+="\n"+a(f,c+1):d+=`${f}
|
|
1
|
+
exports.id=82499,exports.ids=[45671,82499],exports.modules={1505:()=>{},1886:(a,b,c)=>{"use strict";c.d(b,{Fd:()=>i,aJ:()=>e});var d,e,f=c(81309),g=c(76631),h=c(29498);(d=e||(e={}))[d.PRESERVE=0]="PRESERVE",d[d.LAST=1]="LAST";let i={Quickaccess:"workbench.contributions.quickaccess"};class j{constructor(){this.providers=[],this.defaultProvider=void 0}registerQuickAccessProvider(a){return 0===a.prefix.length?this.defaultProvider=a:this.providers.push(a),this.providers.sort((a,b)=>b.prefix.length-a.prefix.length),(0,g.s)(()=>{this.providers.splice(this.providers.indexOf(a),1),this.defaultProvider===a&&(this.defaultProvider=void 0)})}getQuickAccessProviders(a){return(0,f.Yc)([this.defaultProvider,...this.providers]).filter(b=>!b.when||a.contextMatchesRules(b.when))}getQuickAccessProvider(a,b){return(a?this.providers.find(c=>a.startsWith(c.prefix)&&(!c.when||b.contextMatchesRules(c.when))):void 0)||this.defaultProvider}}h.O.add(i.Quickaccess,new j)},2097:(a,b,c)=>{"use strict";c.d(b,{Th:()=>q,z8:()=>r});var d=c(72816),e=c(66036),f=c(77509),g=c(54957),h=c(12428),i=c(15053),j=c(50498),k=c(28574);function l(a){return a.toString()}class m{static create(a,b){let c=a.getAlternativeVersionId(),d=p(a);return new m(c,c,d,d,b,b,[])}constructor(a,b,c,d,e,f,g){this.beforeVersionId=a,this.afterVersionId=b,this.beforeEOL=c,this.afterEOL=d,this.beforeCursorState=e,this.afterCursorState=f,this.changes=g}append(a,b,c,d,e){b.length>0&&(this.changes=(0,h.x)(this.changes,b)),this.afterEOL=c,this.afterVersionId=d,this.afterCursorState=e}static _writeSelectionsSize(a){return 4+16*(a?a.length:0)}static _writeSelections(a,b,c){if((0,i.Sw)(a,b?b.length:0,c),c+=4,b)for(let d of b)(0,i.Sw)(a,d.selectionStartLineNumber,c),c+=4,(0,i.Sw)(a,d.selectionStartColumn,c),c+=4,(0,i.Sw)(a,d.positionLineNumber,c),c+=4,(0,i.Sw)(a,d.positionColumn,c),c+=4;return c}static _readSelections(a,b,c){let d=(0,i.bb)(a,b);b+=4;for(let e=0;e<d;e++){let d=(0,i.bb)(a,b);b+=4;let e=(0,i.bb)(a,b);b+=4;let g=(0,i.bb)(a,b);b+=4;let h=(0,i.bb)(a,b);b+=4,c.push(new f.L(d,e,g,h))}return b}serialize(){let a=10+m._writeSelectionsSize(this.beforeCursorState)+m._writeSelectionsSize(this.afterCursorState)+4;for(let b of this.changes)a+=b.writeSize();let b=new Uint8Array(a),c=0;for(let a of((0,i.Sw)(b,this.beforeVersionId,c),c+=4,(0,i.Sw)(b,this.afterVersionId,c),c+=4,(0,i.Gs)(b,this.beforeEOL,c),c+=1,(0,i.Gs)(b,this.afterEOL,c),c+=1,c=m._writeSelections(b,this.beforeCursorState,c),c=m._writeSelections(b,this.afterCursorState,c),(0,i.Sw)(b,this.changes.length,c),c+=4,this.changes))c=a.write(b,c);return b.buffer}static deserialize(a){let b=new Uint8Array(a),c=0,d=(0,i.bb)(b,c);c+=4;let e=(0,i.bb)(b,c);c+=4;let f=(0,i.pJ)(b,c);c+=1;let g=(0,i.pJ)(b,c);c+=1;let j=[];c=m._readSelections(b,c,j);let k=[];c=m._readSelections(b,c,k);let l=(0,i.bb)(b,c);c+=4;let n=[];for(let a=0;a<l;a++)c=h.k.read(b,c,n);return new m(d,e,f,g,j,k,n)}}class n{get type(){return 0}get resource(){return g.r.isUri(this.model)?this.model:this.model.uri}constructor(a,b,c,d){this.label=a,this.code=b,this.model=c,this._data=m.create(c,d)}toString(){return(this._data instanceof m?this._data:m.deserialize(this._data)).changes.map(a=>a.toString()).join(", ")}matchesResource(a){return(g.r.isUri(this.model)?this.model:this.model.uri).toString()===a.toString()}setModel(a){this.model=a}canAppend(a){return this.model===a&&this._data instanceof m}append(a,b,c,d,e){this._data instanceof m&&this._data.append(a,b,c,d,e)}close(){this._data instanceof m&&(this._data=this._data.serialize())}open(){this._data instanceof m||(this._data=m.deserialize(this._data))}undo(){if(g.r.isUri(this.model))throw Error("Invalid SingleModelEditStackElement");this._data instanceof m&&(this._data=this._data.serialize());let a=m.deserialize(this._data);this.model._applyUndo(a.changes,a.beforeEOL,a.beforeVersionId,a.beforeCursorState)}redo(){if(g.r.isUri(this.model))throw Error("Invalid SingleModelEditStackElement");this._data instanceof m&&(this._data=this._data.serialize());let a=m.deserialize(this._data);this.model._applyRedo(a.changes,a.afterEOL,a.afterVersionId,a.afterCursorState)}heapSize(){return this._data instanceof m&&(this._data=this._data.serialize()),this._data.byteLength+168}}class o{get resources(){return this._editStackElementsArr.map(a=>a.resource)}constructor(a,b,c){for(const d of(this.label=a,this.code=b,this.type=1,this._isOpen=!0,this._editStackElementsArr=c.slice(0),this._editStackElementsMap=new Map,this._editStackElementsArr)){const a=l(d.resource);this._editStackElementsMap.set(a,d)}this._delegate=null}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(a){let b=l(a);return this._editStackElementsMap.has(b)}setModel(a){let b=l(g.r.isUri(a)?a:a.uri);this._editStackElementsMap.has(b)&&this._editStackElementsMap.get(b).setModel(a)}canAppend(a){if(!this._isOpen)return!1;let b=l(a.uri);return!!this._editStackElementsMap.has(b)&&this._editStackElementsMap.get(b).canAppend(a)}append(a,b,c,d,e){let f=l(a.uri);this._editStackElementsMap.get(f).append(a,b,c,d,e)}close(){this._isOpen=!1}open(){}undo(){for(let a of(this._isOpen=!1,this._editStackElementsArr))a.undo()}redo(){for(let a of this._editStackElementsArr)a.redo()}heapSize(a){let b=l(a);return this._editStackElementsMap.has(b)?this._editStackElementsMap.get(b).heapSize():0}split(){return this._editStackElementsArr}toString(){let a=[];for(let b of this._editStackElementsArr)a.push(`${(0,j.P8)(b.resource)}: ${b}`);return`{${a.join(", ")}}`}}function p(a){return+("\n"!==a.getEOL())}function q(a){return!!a&&(a instanceof n||a instanceof o)}class r{constructor(a,b){this._model=a,this._undoRedoService=b}pushStackElement(){let a=this._undoRedoService.getLastElement(this._model.uri);q(a)&&a.close()}popStackElement(){let a=this._undoRedoService.getLastElement(this._model.uri);q(a)&&a.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(a,b){let c=this._undoRedoService.getLastElement(this._model.uri);if(q(c)&&c.canAppend(this._model))return c;let e=new n((0,d.kg)(820,"Typing"),"undoredo.textBufferEdit",this._model,a);return this._undoRedoService.pushElement(e,b),e}pushEOL(a){let b=this._getOrCreateEditStackElement(null,void 0);this._model.setEOL(a),b.append(this._model,[],p(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(a,b,c,d,e=k.dg.unknown({name:"pushEditOperation"})){let f=this._getOrCreateEditStackElement(a,d),g=this._model.applyEdits(b,!0,e),h=r._computeCursorState(c,g),i=g.map((a,b)=>({index:b,textChange:a.textChange}));return i.sort((a,b)=>a.textChange.oldPosition===b.textChange.oldPosition?a.index-b.index:a.textChange.oldPosition-b.textChange.oldPosition),f.append(this._model,i.map(a=>a.textChange),p(this._model),this._model.getAlternativeVersionId(),h),h}static _computeCursorState(a,b){try{return a?a(b):null}catch(a){return(0,e.dz)(a),null}}}},2126:(a,b,c)=>{"use strict";var d,e;c.d(b,{N6:()=>d,TH:()=>f,pv:()=>g}),(e=d||(d={}))[e.Disabled=0]="Disabled",e[e.EnabledForActive=1]="EnabledForActive",e[e.Enabled=2]="Enabled";class f{constructor(a,b,c,d,e,f){if(this.visibleColumn=a,this.column=b,this.className=c,this.horizontalLine=d,this.forWrappedLinesAfterColumn=e,this.forWrappedLinesBeforeOrAtColumn=f,-1!==a==(-1!==b))throw Error()}}class g{constructor(a,b){this.top=a,this.endColumn=b}}},2245:(a,b,c)=>{"use strict";c.d(b,{w:()=>d});let d=(0,c(58254).u1)("editorWorkerService")},2804:()=>{},2938:(a,b,c)=>{"use strict";c.d(b,{h:()=>d});let d=Symbol("MicrotaskDelay")},3404:()=>{},3724:(a,b,c)=>{"use strict";c.d(b,{u:()=>d});let d=(0,c(58254).u1)("userInteractionService")},4655:()=>{},4872:(a,b,c)=>{"use strict";c.d(b,{cw:()=>i,jN:()=>h,nu:()=>g});var d=c(58254),e=c(54957),f=c(85214);let g=(0,d.u1)("IWorkspaceEditService");class h{constructor(a){this.metadata=a}static convert(a){return a.edits.map(a=>{if(i.is(a))return i.lift(a);if(j.is(a))return j.lift(a);throw Error("Unsupported edit")})}}class i extends h{static is(a){return a instanceof i||(0,f.Gv)(a)&&e.r.isUri(a.resource)&&(0,f.Gv)(a.textEdit)}static lift(a){return a instanceof i?a:new i(a.resource,a.textEdit,a.versionId,a.metadata)}constructor(a,b,c,d){super(d),this.resource=a,this.textEdit=b,this.versionId=c}}class j extends h{static is(a){return a instanceof j||(0,f.Gv)(a)&&(!!a.newResource||!!a.oldResource)}static lift(a){return a instanceof j?a:new j(a.oldResource,a.newResource,a.options,a.metadata)}constructor(a,b,c={},d){super(d),this.oldResource=a,this.newResource=b,this.options=c}}},5017:(a,b,c)=>{"use strict";c.d(b,{$B:()=>q,Dk:()=>s,IN:()=>u,RE:()=>w,XS:()=>x,cv:()=>n,ho:()=>r,ir:()=>m,m$:()=>t,mk:()=>p,oJ:()=>o,t8:()=>v});var d=c(37327),e=c(34183);c(48727);var f=c(11023),g=c(18896),h=c(91018),i=c(62957);c(40563);var j=c(58330),k=c(39014);c(26858);var l=c(55404);let m={keybindingLabelBackground:(0,d.Gu)(g.HD),keybindingLabelForeground:(0,d.Gu)(g.eU),keybindingLabelBorder:(0,d.Gu)(g.zU),keybindingLabelBottomBorder:(0,d.Gu)(g.Qf),keybindingLabelShadow:(0,d.Gu)(f.f9)},n={buttonForeground:(0,d.Gu)(g.G_),buttonSeparator:(0,d.Gu)(g.Q1),buttonBackground:(0,d.Gu)(g.XJ),buttonHoverBackground:(0,d.Gu)(g.T9),buttonSecondaryForeground:(0,d.Gu)(g.In),buttonSecondaryBackground:(0,d.Gu)(g.xO),buttonSecondaryHoverBackground:(0,d.Gu)(g.nZ),buttonSecondaryBorder:(0,d.Gu)(g.Tm),buttonBorder:(0,d.Gu)(g.r)},o={progressBarBackground:(0,d.Gu)(j.BT)},p={inputActiveOptionBorder:(0,d.Gu)(g.uN),inputActiveOptionForeground:(0,d.Gu)(g.$$),inputActiveOptionBackground:(0,d.Gu)(g.c1)};(0,d.Gu)(g.jO),(0,d.Gu)(g.Uk),(0,d.Gu)(g.Ip),(0,d.Gu)(g.kP),(0,d.Gu)(g.xW),(0,d.Gu)(g.ZB),(0,d.Gu)(g.jr);let q={checkboxBackground:(0,d.Gu)(g.Oc),checkboxBorder:(0,d.Gu)(g.C5),checkboxForeground:(0,d.Gu)(g.t0),checkboxDisabledBackground:(0,d.Gu)(g.Uv),checkboxDisabledForeground:(0,d.Gu)(g.hs)};(0,d.Gu)(f.Cg),(0,d.Gu)(f.Fi),(0,d.Gu)(f.f9),(0,d.Gu)(f.DS),(0,d.Gu)(f.tY),(0,d.Gu)(f.JP),(0,d.Gu)(f.bN),(0,d.Gu)(e.vw);let r={inputBackground:(0,d.Gu)(g.L4),inputForeground:(0,d.Gu)(g.cw),inputBorder:(0,d.Gu)(g.Zg),inputValidationInfoBorder:(0,d.Gu)(g.YS),inputValidationInfoBackground:(0,d.Gu)(g.I$),inputValidationInfoForeground:(0,d.Gu)(g.L9),inputValidationWarningBorder:(0,d.Gu)(g.C1),inputValidationWarningBackground:(0,d.Gu)(g.UL),inputValidationWarningForeground:(0,d.Gu)(g.T5),inputValidationErrorBorder:(0,d.Gu)(g.eY),inputValidationErrorBackground:(0,d.Gu)(g._$),inputValidationErrorForeground:(0,d.Gu)(g.h9)},s={listFilterWidgetBackground:(0,d.Gu)(h.pn),listFilterWidgetOutline:(0,d.Gu)(h.fi),listFilterWidgetNoMatchesOutline:(0,d.Gu)(h.P9),listFilterWidgetShadow:(0,d.Gu)(h.H8),inputBoxStyles:r,toggleStyles:p},t={badgeBackground:(0,d.Gu)(j.WM),badgeForeground:(0,d.Gu)(j.zR),badgeBorder:(0,d.Gu)(e.b1)};(0,d.Gu)(f.vV),(0,d.Gu)(f.mc),(0,d.Gu)(f.et),(0,d.Gu)(f.et),(0,d.Gu)(f.sA);let u={listBackground:void 0,listInactiveFocusForeground:void 0,listFocusBackground:(0,d.Gu)(h.VF),listFocusForeground:(0,d.Gu)(h.ef),listFocusOutline:(0,d.Gu)(h.p7),listActiveSelectionBackground:(0,d.Gu)(h.Rj),listActiveSelectionForeground:(0,d.Gu)(h.GV),listActiveSelectionIconForeground:(0,d.Gu)(h.fE),listFocusAndSelectionOutline:(0,d.Gu)(h.gt),listFocusAndSelectionBackground:(0,d.Gu)(h.Rj),listFocusAndSelectionForeground:(0,d.Gu)(h.GV),listInactiveSelectionBackground:(0,d.Gu)(h.uN),listInactiveSelectionIconForeground:(0,d.Gu)(h.C9),listInactiveSelectionForeground:(0,d.Gu)(h.f4),listInactiveFocusBackground:(0,d.Gu)(h.CQ),listInactiveFocusOutline:(0,d.Gu)(h.ij),listHoverBackground:(0,d.Gu)(h.lO),listHoverForeground:(0,d.Gu)(h.QR),listDropOverBackground:(0,d.Gu)(h.Yo),listDropBetweenBackground:(0,d.Gu)(h.yI),listSelectionOutline:(0,d.Gu)(e.bu),listHoverOutline:(0,d.Gu)(e.bu),treeIndentGuidesStroke:(0,d.Gu)(h.U4),treeInactiveIndentGuidesStroke:(0,d.Gu)(h.pf),treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:(0,d.Gu)(j.bX),tableColumnsBorder:(0,d.Gu)(h.k5),tableOddRowsBackgroundColor:(0,d.Gu)(h.sb)};function v(a){let b={...u};for(let c in a){let e=a[c];b[c]=void 0!==e?(0,d.Gu)(e):void 0}return b}let w={selectBackground:(0,d.Gu)(g.rv),selectListBackground:(0,d.Gu)(g.lW),selectForeground:(0,d.Gu)(g.yq),decoratorRightForeground:(0,d.Gu)(k.NB),selectBorder:(0,d.Gu)(g.Hc),focusBorder:(0,d.Gu)(e.tA),listFocusBackground:(0,d.Gu)(k.Al),listInactiveSelectionIconForeground:(0,d.Gu)(k.c7),listFocusForeground:(0,d.Gu)(k.nH),listFocusOutline:(0,d.HP)(e.bu,l.Q1.transparent.toString()),listHoverBackground:(0,d.Gu)(h.lO),listHoverForeground:(0,d.Gu)(h.QR),listHoverOutline:(0,d.Gu)(e.bu),selectListBorder:(0,d.Gu)(f.sI),listBackground:void 0,listActiveSelectionBackground:void 0,listActiveSelectionForeground:void 0,listActiveSelectionIconForeground:void 0,listFocusAndSelectionBackground:void 0,listDropOverBackground:void 0,listDropBetweenBackground:void 0,listInactiveSelectionBackground:void 0,listInactiveSelectionForeground:void 0,listInactiveFocusBackground:void 0,listInactiveFocusOutline:void 0,listSelectionOutline:void 0,listFocusAndSelectionForeground:void 0,listFocusAndSelectionOutline:void 0,listInactiveFocusForeground:void 0,tableColumnsBorder:void 0,tableOddRowsBackgroundColor:void 0,treeIndentGuidesStroke:void 0,treeInactiveIndentGuidesStroke:void 0,treeStickyScrollBackground:void 0,treeStickyScrollBorder:void 0,treeStickyScrollShadow:void 0},x={shadowColor:(0,d.Gu)(f.f9),borderColor:(0,d.HP)(i.g$,f.sI),foregroundColor:(0,d.Gu)(i.dd),backgroundColor:(0,d.Gu)(i.c6),selectionForegroundColor:(0,d.Gu)(h.QR),selectionBackgroundColor:(0,d.Gu)(h.lO),selectionBorderColor:(0,d.Gu)(i.SN),separatorColor:(0,d.Gu)(i.D7),scrollbarShadow:(0,d.Gu)(j.bX),scrollbarSliderBackground:(0,d.Gu)(j.gn),scrollbarSliderHoverBackground:(0,d.Gu)(j.cI),scrollbarSliderActiveBackground:(0,d.Gu)(j.mh)}},5355:(a,b,c)=>{"use strict";c.d(b,{J:()=>g,k:()=>f});var d=c(85214);let e=Object.create(null);function f(a,b){if((0,d.Kg)(b)){let c=e[b];if(void 0===c)throw Error(`${a} references an unknown codicon: ${b}`);b=c}return e[a]=b,{id:a}}function g(){return e}},5388:()=>{},5424:(a,b,c)=>{"use strict";c.d(b,{x:()=>d});let d=(0,c(58254).u1)("layoutService")},5436:(a,b,c)=>{"use strict";var d,e;c.d(b,{Fo:()=>m,VL:()=>q,YM:()=>d,m5:()=>p,uw:()=>j});class f{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(a,b){this._keyCodeToStr[a]=b,this._strToKeyCode[b.toLowerCase()]=a}keyCodeToStr(a){return this._keyCodeToStr[a]}strToKeyCode(a){return this._strToKeyCode[a.toLowerCase()]||0}}let g=new f,h=new f,i=new f,j=Array(230),k=Object.create(null),l=Object.create(null),m=[];for(let a=0;a<=193;a++)m[a]=-1;let n=[],o=[];for(let a of[[1,0,"None",0,"unknown",0,"VK_UNKNOWN","",""],[1,1,"Hyper",0,"",0,"","",""],[1,2,"Super",0,"",0,"","",""],[1,3,"Fn",0,"",0,"","",""],[1,4,"FnLock",0,"",0,"","",""],[1,5,"Suspend",0,"",0,"","",""],[1,6,"Resume",0,"",0,"","",""],[1,7,"Turbo",0,"",0,"","",""],[1,8,"Sleep",0,"",0,"VK_SLEEP","",""],[1,9,"WakeUp",0,"",0,"","",""],[0,10,"KeyA",31,"A",65,"VK_A","",""],[0,11,"KeyB",32,"B",66,"VK_B","",""],[0,12,"KeyC",33,"C",67,"VK_C","",""],[0,13,"KeyD",34,"D",68,"VK_D","",""],[0,14,"KeyE",35,"E",69,"VK_E","",""],[0,15,"KeyF",36,"F",70,"VK_F","",""],[0,16,"KeyG",37,"G",71,"VK_G","",""],[0,17,"KeyH",38,"H",72,"VK_H","",""],[0,18,"KeyI",39,"I",73,"VK_I","",""],[0,19,"KeyJ",40,"J",74,"VK_J","",""],[0,20,"KeyK",41,"K",75,"VK_K","",""],[0,21,"KeyL",42,"L",76,"VK_L","",""],[0,22,"KeyM",43,"M",77,"VK_M","",""],[0,23,"KeyN",44,"N",78,"VK_N","",""],[0,24,"KeyO",45,"O",79,"VK_O","",""],[0,25,"KeyP",46,"P",80,"VK_P","",""],[0,26,"KeyQ",47,"Q",81,"VK_Q","",""],[0,27,"KeyR",48,"R",82,"VK_R","",""],[0,28,"KeyS",49,"S",83,"VK_S","",""],[0,29,"KeyT",50,"T",84,"VK_T","",""],[0,30,"KeyU",51,"U",85,"VK_U","",""],[0,31,"KeyV",52,"V",86,"VK_V","",""],[0,32,"KeyW",53,"W",87,"VK_W","",""],[0,33,"KeyX",54,"X",88,"VK_X","",""],[0,34,"KeyY",55,"Y",89,"VK_Y","",""],[0,35,"KeyZ",56,"Z",90,"VK_Z","",""],[0,36,"Digit1",22,"1",49,"VK_1","",""],[0,37,"Digit2",23,"2",50,"VK_2","",""],[0,38,"Digit3",24,"3",51,"VK_3","",""],[0,39,"Digit4",25,"4",52,"VK_4","",""],[0,40,"Digit5",26,"5",53,"VK_5","",""],[0,41,"Digit6",27,"6",54,"VK_6","",""],[0,42,"Digit7",28,"7",55,"VK_7","",""],[0,43,"Digit8",29,"8",56,"VK_8","",""],[0,44,"Digit9",30,"9",57,"VK_9","",""],[0,45,"Digit0",21,"0",48,"VK_0","",""],[1,46,"Enter",3,"Enter",13,"VK_RETURN","",""],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE","",""],[1,48,"Backspace",1,"Backspace",8,"VK_BACK","",""],[1,49,"Tab",2,"Tab",9,"VK_TAB","",""],[1,50,"Space",10,"Space",32,"VK_SPACE","",""],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,"",0,"","",""],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL","",""],[1,64,"F1",59,"F1",112,"VK_F1","",""],[1,65,"F2",60,"F2",113,"VK_F2","",""],[1,66,"F3",61,"F3",114,"VK_F3","",""],[1,67,"F4",62,"F4",115,"VK_F4","",""],[1,68,"F5",63,"F5",116,"VK_F5","",""],[1,69,"F6",64,"F6",117,"VK_F6","",""],[1,70,"F7",65,"F7",118,"VK_F7","",""],[1,71,"F8",66,"F8",119,"VK_F8","",""],[1,72,"F9",67,"F9",120,"VK_F9","",""],[1,73,"F10",68,"F10",121,"VK_F10","",""],[1,74,"F11",69,"F11",122,"VK_F11","",""],[1,75,"F12",70,"F12",123,"VK_F12","",""],[1,76,"PrintScreen",0,"",0,"","",""],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL","",""],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE","",""],[1,79,"Insert",19,"Insert",45,"VK_INSERT","",""],[1,80,"Home",14,"Home",36,"VK_HOME","",""],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR","",""],[1,82,"Delete",20,"Del",46,"VK_DELETE","Delete",""],[1,83,"End",13,"End",35,"VK_END","",""],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT","",""],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",""],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",""],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",""],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",""],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK","",""],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE","",""],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY","",""],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT","",""],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD","",""],[1,94,"NumpadEnter",3,"",0,"","",""],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1","",""],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2","",""],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3","",""],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4","",""],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5","",""],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6","",""],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7","",""],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8","",""],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9","",""],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0","",""],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL","",""],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102","",""],[1,107,"ContextMenu",58,"ContextMenu",93,"","",""],[1,108,"Power",0,"",0,"","",""],[1,109,"NumpadEqual",0,"",0,"","",""],[1,110,"F13",71,"F13",124,"VK_F13","",""],[1,111,"F14",72,"F14",125,"VK_F14","",""],[1,112,"F15",73,"F15",126,"VK_F15","",""],[1,113,"F16",74,"F16",127,"VK_F16","",""],[1,114,"F17",75,"F17",128,"VK_F17","",""],[1,115,"F18",76,"F18",129,"VK_F18","",""],[1,116,"F19",77,"F19",130,"VK_F19","",""],[1,117,"F20",78,"F20",131,"VK_F20","",""],[1,118,"F21",79,"F21",132,"VK_F21","",""],[1,119,"F22",80,"F22",133,"VK_F22","",""],[1,120,"F23",81,"F23",134,"VK_F23","",""],[1,121,"F24",82,"F24",135,"VK_F24","",""],[1,122,"Open",0,"",0,"","",""],[1,123,"Help",0,"",0,"","",""],[1,124,"Select",0,"",0,"","",""],[1,125,"Again",0,"",0,"","",""],[1,126,"Undo",0,"",0,"","",""],[1,127,"Cut",0,"",0,"","",""],[1,128,"Copy",0,"",0,"","",""],[1,129,"Paste",0,"",0,"","",""],[1,130,"Find",0,"",0,"","",""],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE","",""],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP","",""],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN","",""],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR","",""],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1","",""],[1,136,"KanaMode",0,"",0,"","",""],[0,137,"IntlYen",0,"",0,"","",""],[1,138,"Convert",0,"",0,"","",""],[1,139,"NonConvert",0,"",0,"","",""],[1,140,"Lang1",0,"",0,"","",""],[1,141,"Lang2",0,"",0,"","",""],[1,142,"Lang3",0,"",0,"","",""],[1,143,"Lang4",0,"",0,"","",""],[1,144,"Lang5",0,"",0,"","",""],[1,145,"Abort",0,"",0,"","",""],[1,146,"Props",0,"",0,"","",""],[1,147,"NumpadParenLeft",0,"",0,"","",""],[1,148,"NumpadParenRight",0,"",0,"","",""],[1,149,"NumpadBackspace",0,"",0,"","",""],[1,150,"NumpadMemoryStore",0,"",0,"","",""],[1,151,"NumpadMemoryRecall",0,"",0,"","",""],[1,152,"NumpadMemoryClear",0,"",0,"","",""],[1,153,"NumpadMemoryAdd",0,"",0,"","",""],[1,154,"NumpadMemorySubtract",0,"",0,"","",""],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR","",""],[1,156,"NumpadClearEntry",0,"",0,"","",""],[1,0,"",5,"Ctrl",17,"VK_CONTROL","",""],[1,0,"",4,"Shift",16,"VK_SHIFT","",""],[1,0,"",6,"Alt",18,"VK_MENU","",""],[1,0,"",57,"Meta",91,"VK_COMMAND","",""],[1,157,"ControlLeft",5,"",0,"VK_LCONTROL","",""],[1,158,"ShiftLeft",4,"",0,"VK_LSHIFT","",""],[1,159,"AltLeft",6,"",0,"VK_LMENU","",""],[1,160,"MetaLeft",57,"",0,"VK_LWIN","",""],[1,161,"ControlRight",5,"",0,"VK_RCONTROL","",""],[1,162,"ShiftRight",4,"",0,"VK_RSHIFT","",""],[1,163,"AltRight",6,"",0,"VK_RMENU","",""],[1,164,"MetaRight",57,"",0,"VK_RWIN","",""],[1,165,"BrightnessUp",0,"",0,"","",""],[1,166,"BrightnessDown",0,"",0,"","",""],[1,167,"MediaPlay",0,"",0,"","",""],[1,168,"MediaRecord",0,"",0,"","",""],[1,169,"MediaFastForward",0,"",0,"","",""],[1,170,"MediaRewind",0,"",0,"","",""],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK","",""],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK","",""],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP","",""],[1,174,"Eject",0,"",0,"","",""],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE","",""],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT","",""],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL","",""],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2","",""],[1,179,"LaunchApp1",0,"",0,"VK_MEDIA_LAUNCH_APP1","",""],[1,180,"SelectTask",0,"",0,"","",""],[1,181,"LaunchScreenSaver",0,"",0,"","",""],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH","",""],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME","",""],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK","",""],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD","",""],[1,186,"BrowserStop",0,"",0,"VK_BROWSER_STOP","",""],[1,187,"BrowserRefresh",0,"",0,"VK_BROWSER_REFRESH","",""],[1,188,"BrowserFavorites",0,"",0,"VK_BROWSER_FAVORITES","",""],[1,189,"ZoomToggle",0,"",0,"","",""],[1,190,"MailReply",0,"",0,"","",""],[1,191,"MailForward",0,"",0,"","",""],[1,192,"MailSend",0,"",0,"","",""],[1,0,"",114,"KeyInComposition",229,"","",""],[1,0,"",116,"ABNT_C2",194,"VK_ABNT_C2","",""],[1,0,"",96,"OEM_8",223,"VK_OEM_8","",""],[1,0,"",0,"",0,"VK_KANA","",""],[1,0,"",0,"",0,"VK_HANGUL","",""],[1,0,"",0,"",0,"VK_JUNJA","",""],[1,0,"",0,"",0,"VK_FINAL","",""],[1,0,"",0,"",0,"VK_HANJA","",""],[1,0,"",0,"",0,"VK_KANJI","",""],[1,0,"",0,"",0,"VK_CONVERT","",""],[1,0,"",0,"",0,"VK_NONCONVERT","",""],[1,0,"",0,"",0,"VK_ACCEPT","",""],[1,0,"",0,"",0,"VK_MODECHANGE","",""],[1,0,"",0,"",0,"VK_SELECT","",""],[1,0,"",0,"",0,"VK_PRINT","",""],[1,0,"",0,"",0,"VK_EXECUTE","",""],[1,0,"",0,"",0,"VK_SNAPSHOT","",""],[1,0,"",0,"",0,"VK_HELP","",""],[1,0,"",0,"",0,"VK_APPS","",""],[1,0,"",0,"",0,"VK_PROCESSKEY","",""],[1,0,"",0,"",0,"VK_PACKET","",""],[1,0,"",0,"",0,"VK_DBE_SBCSCHAR","",""],[1,0,"",0,"",0,"VK_DBE_DBCSCHAR","",""],[1,0,"",0,"",0,"VK_ATTN","",""],[1,0,"",0,"",0,"VK_CRSEL","",""],[1,0,"",0,"",0,"VK_EXSEL","",""],[1,0,"",0,"",0,"VK_EREOF","",""],[1,0,"",0,"",0,"VK_PLAY","",""],[1,0,"",0,"",0,"VK_ZOOM","",""],[1,0,"",0,"",0,"VK_NONAME","",""],[1,0,"",0,"",0,"VK_PA1","",""],[1,0,"",0,"",0,"VK_OEM_CLEAR","",""]]){let[b,c,d,e,f,p,q,r,s]=a;if(!o[c]&&(o[c]=!0,k[d]=c,l[d.toLowerCase()]=c,b&&(m[c]=e)),!n[e]){if(n[e]=!0,!f)throw Error(`String representation missing for key code ${e} around scan code ${d}`);g.define(e,f),h.define(e,r||f),i.define(e,s||r||f)}p&&(j[p]=e)}function p(a,b){return(a|(65535&b)<<16>>>0)>>>0}function q(a){return 5===a||4===a||6===a||57===a}(e=d||(d={})).toString=function(a){return g.keyCodeToStr(a)},e.fromString=function(a){return g.strToKeyCode(a)},e.toUserSettingsUS=function(a){return h.keyCodeToStr(a)},e.toUserSettingsGeneral=function(a){return i.keyCodeToStr(a)},e.fromUserSettings=function(a){return h.strToKeyCode(a)||i.strToKeyCode(a)},e.toElectronAccelerator=function(a){if(a>=98&&a<=113)return null;switch(a){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right";case 20:return"Delete"}return g.keyCodeToStr(a)}},6015:(a,b,c)=>{"use strict";c.d(b,{TH:()=>g,Zn:()=>i,_1:()=>j,kb:()=>h});var d=c(30996);c(18216);var e=c(26529);function f(a){return 47===a||92===a}function g(a){return a.replace(/[\\/]/g,d.SA.sep)}function h(a){return -1===a.indexOf("/")&&(a=g(a)),/^[a-zA-Z]:(\/|$)/.test(a)&&(a="/"+a),a}function i(a,b=d.SA.sep){var c;if(!a)return"";let e=a.length,g=a.charCodeAt(0);if(f(g)){if(f(a.charCodeAt(1))&&!f(a.charCodeAt(2))){let c=3;for(;c<e&&!f(a.charCodeAt(c));c++);if(3!==c&&!f(a.charCodeAt(c+1))){for(c+=1;c<e;c++)if(f(a.charCodeAt(c)))return a.slice(0,c+1).replace(/[\\/]/g,b)}}return b}if(((c=g)>=65&&c<=90||c>=97&&c<=122)&&58===a.charCodeAt(1))if(f(a.charCodeAt(2)))return a.slice(0,2)+b;else return a.slice(0,2);let h=a.indexOf("://");if(-1!==h){for(h+=3;h<e;h++)if(f(a.charCodeAt(h)))return a.slice(0,h+1)}return""}function j(a,b,c,f=!1){let g=f?d.SA.sep:d.Vn;if(a===b)return!0;if(!a||!b||((a.indexOf("..")>=0||b.indexOf("..")>=0)&&(a=f?d.SA.normalize(a):(0,d.S8)(a),b=f?d.SA.normalize(b):(0,d.S8)(b)),b.length>a.length))return!1;if(c){if(!(0,e.ns)(a,b))return!1;if(b.length===a.length)return!0;let c=b.length;return b.charAt(b.length-1)===g&&c--,a.charAt(c)===g}return b.charAt(b.length-1)!==g&&(b+=g),0===a.indexOf(b)}},6205:()=>{},6963:(a,b,c)=>{"use strict";c.d(b,{l:()=>e});var d=c(87873);function e(a){return new f(a)}class f extends d.zV{constructor(a){super(),this.value=a}get debugName(){return this.toString()}get(){return this.value}addObserver(a){}removeObserver(a){}toString(){return`Const: ${this.value}`}}},7052:(a,b,c)=>{"use strict";c.d(b,{cB:()=>l});var d=c(43765),e=c(26529);class f{constructor(){this._value="",this._pos=0}reset(a){return this._value=a,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos<this._value.length-1}cmp(a){return a.charCodeAt(0)-this._value.charCodeAt(this._pos)}value(){return this._value[this._pos]}}class g{constructor(a=!0){this._caseSensitive=a}reset(a){return this._value=a,this._from=0,this._to=0,this.next()}hasNext(){return this._to<this._value.length}next(){this._from=this._to;let a=!0;for(;this._to<this._value.length;this._to++)if(46===this._value.charCodeAt(this._to))if(a)this._from++;else break;else a=!1;return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class h{constructor(a=!0,b=!0){this._splitOnBackslash=a,this._caseSensitive=b}reset(a){this._from=0,this._to=0,this._value=a,this._valueLen=a.length;for(let b=a.length-1;b>=0;b--,this._valueLen--){let a=this._value.charCodeAt(b);if(!(47===a||this._splitOnBackslash&&92===a))break}return this.next()}hasNext(){return this._to<this._valueLen}next(){this._from=this._to;let a=!0;for(;this._to<this._valueLen;this._to++){let b=this._value.charCodeAt(this._to);if(47===b||this._splitOnBackslash&&92===b)if(a)this._from++;else break;else a=!1}return this}cmp(a){return this._caseSensitive?(0,e.lF)(a,this._value,0,a.length,this._from,this._to):(0,e.zd)(a,this._value,0,a.length,this._from,this._to)}value(){return this._value.substring(this._from,this._to)}}class i{constructor(a,b){this._ignorePathCasing=a,this._ignoreQueryAndFragment=b,this._states=[],this._stateIdx=0}reset(a){return this._value=a,this._states=[],this._value.scheme&&this._states.push(1),this._value.authority&&this._states.push(2),this._value.path&&(this._pathIterator=new h(!1,!this._ignorePathCasing(a)),this._pathIterator.reset(a.path),this._pathIterator.value()&&this._states.push(3)),!this._ignoreQueryAndFragment(a)&&(this._value.query&&this._states.push(4),this._value.fragment&&this._states.push(5)),this._stateIdx=0,this}next(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()?this._pathIterator.next():this._stateIdx+=1,this}hasNext(){return 3===this._states[this._stateIdx]&&this._pathIterator.hasNext()||this._stateIdx<this._states.length-1}cmp(a){if(1===this._states[this._stateIdx])return(0,e.W1)(a,this._value.scheme);if(2===this._states[this._stateIdx])return(0,e.W1)(a,this._value.authority);if(3===this._states[this._stateIdx])return this._pathIterator.cmp(a);if(4===this._states[this._stateIdx])return(0,e.UD)(a,this._value.query);if(5===this._states[this._stateIdx])return(0,e.UD)(a,this._value.fragment);throw Error()}value(){if(1===this._states[this._stateIdx])return this._value.scheme;if(2===this._states[this._stateIdx])return this._value.authority;if(3===this._states[this._stateIdx])return this._pathIterator.value();if(4===this._states[this._stateIdx])return this._value.query;if(5===this._states[this._stateIdx])return this._value.fragment;throw Error()}}class j{static{this.Val=Symbol("undefined_placeholder")}static wrap(a){return void 0===a?j.Val:a}static unwrap(a){return a===j.Val?void 0:a}}class k{constructor(){this.height=1,this.value=void 0,this.key=void 0,this.left=void 0,this.mid=void 0,this.right=void 0}rotateLeft(){let a=this.right;return this.right=a.left,a.left=this,this.updateHeight(),a.updateHeight(),a}rotateRight(){let a=this.left;return this.left=a.right,a.right=this,this.updateHeight(),a.updateHeight(),a}updateHeight(){this.height=1+Math.max(this.heightLeft,this.heightRight)}balanceFactor(){return this.heightRight-this.heightLeft}get heightLeft(){return this.left?.height??0}get heightRight(){return this.right?.height??0}}class l{static forUris(a=()=>!1,b=()=>!1){return new l(new i(a,b))}static forStrings(){return new l(new f)}static forConfigKeys(){return new l(new g)}constructor(a){this._iter=a}clear(){this._root=void 0}set(a,b){let c,d=this._iter.reset(a);this._root||(this._root=new k,this._root.segment=d.value());let e=[];for(c=this._root;;){let a=d.cmp(c.segment);if(a>0)c.left||(c.left=new k,c.left.segment=d.value()),e.push([-1,c]),c=c.left;else if(a<0)c.right||(c.right=new k,c.right.segment=d.value()),e.push([1,c]),c=c.right;else if(d.hasNext())d.next(),c.mid||(c.mid=new k,c.mid.segment=d.value()),e.push([0,c]),c=c.mid;else break}let f=j.unwrap(c.value);c.value=j.wrap(b),c.key=a;for(let a=e.length-1;a>=0;a--){let b=e[a][1];b.updateHeight();let c=b.balanceFactor();if(c<-1||c>1){let c=e[a][0],d=e[a+1][0];if(1===c&&1===d)e[a][1]=b.rotateLeft();else if(-1===c&&-1===d)e[a][1]=b.rotateRight();else if(1===c&&-1===d)b.right=e[a+1][1]=e[a+1][1].rotateRight(),e[a][1]=b.rotateLeft();else if(-1===c&&1===d)b.left=e[a+1][1]=e[a+1][1].rotateLeft(),e[a][1]=b.rotateRight();else throw Error();if(a>0)switch(e[a-1][0]){case -1:e[a-1][1].left=e[a][1];break;case 1:e[a-1][1].right=e[a][1];break;case 0:e[a-1][1].mid=e[a][1]}else this._root=e[0][1]}}return f}get(a){return j.unwrap(this._getNode(a)?.value)}_getNode(a){let b=this._iter.reset(a),c=this._root;for(;c;){let a=b.cmp(c.segment);if(a>0)c=c.left;else if(a<0)c=c.right;else if(b.hasNext())b.next(),c=c.mid;else break}return c}has(a){let b=this._getNode(a);return b?.value!==void 0||b?.mid!==void 0}delete(a){return this._delete(a,!1)}deleteSuperstr(a){return this._delete(a,!0)}_delete(a,b){let c=this._iter.reset(a),e=[],f=this._root;for(;f;){let a=c.cmp(f.segment);if(a>0)e.push([-1,f]),f=f.left;else if(a<0)e.push([1,f]),f=f.right;else if(c.hasNext())c.next(),e.push([0,f]),f=f.mid;else break}if(f){if(b?(f.left=void 0,f.mid=void 0,f.right=void 0,f.height=1):(f.key=void 0,f.value=void 0),!f.mid&&!f.value)if(f.left&&f.right){let a=[[1,f]],b=this._min(f.right,a);if(b.key){f.key=b.key,f.value=b.value,f.segment=b.segment;let c=b.right;if(a.length>1){let[b,e]=a[a.length-1];switch(b){case -1:e.left=c;break;case 0:(0,d.vA)(!1);case 1:(0,d.vA)(!1)}}else f.right=c;let g=this._balanceByStack(a);if(e.length>0){let[a,b]=e[e.length-1];switch(a){case -1:b.left=g;break;case 0:b.mid=g;break;case 1:b.right=g}}else this._root=g}}else{let a=f.left??f.right;if(e.length>0){let[b,c]=e[e.length-1];switch(b){case -1:c.left=a;break;case 0:c.mid=a;break;case 1:c.right=a}}else this._root=a}this._root=this._balanceByStack(e)??this._root}}_min(a,b){for(;a.left;)b.push([-1,a]),a=a.left;return a}_balanceByStack(a){for(let b=a.length-1;b>=0;b--){let c=a[b][1];c.updateHeight();let d=c.balanceFactor();if(d>1?(c.right.balanceFactor()>=0||(c.right=c.right.rotateRight()),a[b][1]=c.rotateLeft()):d<-1&&(0>=c.left.balanceFactor()||(c.left=c.left.rotateLeft()),a[b][1]=c.rotateRight()),!(b>0))return a[0][1];switch(a[b-1][0]){case -1:a[b-1][1].left=a[b][1];break;case 1:a[b-1][1].right=a[b][1];break;case 0:a[b-1][1].mid=a[b][1]}}}findSubstr(a){let b,c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),b=j.unwrap(d.value)||b,d=d.mid;else break}return d&&j.unwrap(d.value)||b}findSuperstr(a){return this._findSuperstrOrElement(a,!1)}_findSuperstrOrElement(a,b){let c=this._iter.reset(a),d=this._root;for(;d;){let a=c.cmp(d.segment);if(a>0)d=d.left;else if(a<0)d=d.right;else if(c.hasNext())c.next(),d=d.mid;else if(d.mid)return this._entries(d.mid);else if(b)return j.unwrap(d.value);else break}}forEach(a){for(let[b,c]of this)a(c,b)}*[Symbol.iterator](){yield*this._entries(this._root)}_entries(a){let b=[];return this._dfsEntries(a,b),b[Symbol.iterator]()}_dfsEntries(a,b){a&&(a.left&&this._dfsEntries(a.left,b),void 0!==a.value&&b.push([a.key,j.unwrap(a.value)]),a.mid&&this._dfsEntries(a.mid,b),a.right&&this._dfsEntries(a.right,b))}}},7092:(a,b,c)=>{"use strict";c.d(b,{Mo:()=>i,ad:()=>e,gD:()=>h,iB:()=>g,kW:()=>f,pG:()=>d});let d=(0,c(58254).u1)("configurationService");function e(a,b){let c=Object.create(null);for(let d in a)f(c,d,a[d],b);return c}function f(a,b,c,d){let e=b.split("."),f=e.pop(),g=a;for(let a=0;a<e.length;a++){let c=e[a],f=g[c];switch(typeof f){case"undefined":f=g[c]=Object.create(null);break;case"object":if(null===f)return void d(`Ignoring ${b} as ${e.slice(0,a+1).join(".")} is null`);break;default:d(`Ignoring ${b} as ${e.slice(0,a+1).join(".")} is ${JSON.stringify(f)}`);return}g=f}if("object"==typeof g&&null!==g)try{g[f]=c}catch(a){d(`Ignoring ${b} as ${e.join(".")} is ${JSON.stringify(g)}`)}else d(`Ignoring ${b} as ${e.join(".")} is ${JSON.stringify(g)}`)}function g(a,b){!function a(b,c){if(!b)return;let d=c.shift();if(0===c.length)return void delete b[d];if(-1!==Object.keys(b).indexOf(d)){let e=b[d];"object"!=typeof e||null===e||Array.isArray(e)||(a(e,c),0===Object.keys(e).length&&delete b[d])}}(a,b.split("."))}function h(a,b,c){let d=function(a,b){let c=a;for(let a of b){if("object"!=typeof c||null===c)return;c=c[a]}return c}(a,b.split("."));return void 0===d?c:d}function i(a){return a.replace(/^\[/,"").replace(/]$/g,"").replace(/\]\[/g,", ")}},7145:()=>{},7164:(a,b,c)=>{"use strict";c.d(b,{Hw:()=>h,tu:()=>n,vp:()=>l});var d,e,f,g,h,i,j,k,l,m,n,o=c(72816);(g||(g={})).inspectTokensAction=(0,o.kg)(821,"Developer: Inspect Tokens"),(d=h||(h={})).gotoLineActionLabel=(0,o.kg)(822,"Go to Line/Column..."),d.gotoOffsetActionLabel=(0,o.kg)(823,"Go to Offset..."),(i||(i={})).helpQuickAccessActionLabel=(0,o.kg)(824,"Show all Quick Access Providers"),(e=j||(j={})).quickCommandActionLabel=(0,o.kg)(825,"Command Palette"),e.quickCommandHelp=(0,o.kg)(826,"Show And Run Commands"),(f=k||(k={})).quickOutlineActionLabel=(0,o.kg)(827,"Go to Symbol..."),f.quickOutlineByCategoryActionLabel=(0,o.kg)(828,"Go to Symbol by Category..."),(l||(l={})).editorViewAccessibleLabel=(0,o.kg)(829,"Editor content"),(m||(m={})).toggleHighContrast=(0,o.kg)(830,"Toggle High Contrast Theme"),(n||(n={})).bulkEditServiceSummary=(0,o.kg)(831,"Made {0} edits in {1} files")},7222:(a,b,c)=>{"use strict";c.d(b,{c:()=>l});var d=c(75082),e=c(15857),f=c(63040),g=c(8933),h=c(95091);c(36685);var i=c(72816),j=c(76631);let k=(0,i.kg)(1,"input");class l extends g.x{get onDidOptionChange(){return this._onDidOptionChange.event}get onKeyDown(){return this._onKeyDown.event}get onMouseDown(){return this._onMouseDown.event}get onCaseSensitiveKeyDown(){return this._onCaseSensitiveKeyDown.event}get onRegexKeyDown(){return this._onRegexKeyDown.event}constructor(a,b,c){super(),this.fixFocusOnOptionClickEnabled=!0,this.imeSessionInProgress=!1,this.additionalTogglesDisposables=this._register(new j.HE),this.additionalToggles=[],this._onDidOptionChange=this._register(new h.vl),this._onKeyDown=this._register(new h.vl),this._onMouseDown=this._register(new h.vl),this._onInput=this._register(new h.vl),this._onKeyUp=this._register(new h.vl),this._onCaseSensitiveKeyDown=this._register(new h.vl),this._onRegexKeyDown=this._register(new h.vl),this._lastHighlightFindOptions=0,this.placeholder=c.placeholder||"",this.validation=c.validation,this.label=c.label||k,this.showCommonFindToggles=!!c.showCommonFindToggles;const g=c.appendCaseSensitiveLabel||"",i=c.appendWholeWordsLabel||"",l=c.appendRegexLabel||"",m=!!c.flexibleHeight,n=!!c.flexibleWidth,o=c.flexibleMaxHeight;if(this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new f.m(this.domNode,b,{placeholder:this.placeholder||"",ariaLabel:this.label||"",validationOptions:{validation:this.validation},showHistoryHint:c.showHistoryHint,flexibleHeight:m,flexibleWidth:n,flexibleMaxHeight:o,inputBoxStyles:c.inputBoxStyles,history:c.history,actions:c.actions,actionViewItemProvider:c.actionViewItemProvider,hideHoverOnValueChange:c.hideHoverOnValueChange})),this.showCommonFindToggles){const a=c?.hoverLifecycleOptions||{groupId:"find-input"};this.regex=this._register(new e.Ix({appendTitle:l,isChecked:!1,hoverLifecycleOptions:a,...c.toggleStyles})),this._register(this.regex.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.regex.onKeyDown(a=>{this._onRegexKeyDown.fire(a)})),this.wholeWords=this._register(new e.nV({appendTitle:i,isChecked:!1,hoverLifecycleOptions:a,...c.toggleStyles})),this._register(this.wholeWords.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this.caseSensitive=this._register(new e.bc({appendTitle:g,isChecked:!1,hoverLifecycleOptions:a,...c.toggleStyles})),this._register(this.caseSensitive.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.caseSensitive.onKeyDown(a=>{this._onCaseSensitiveKeyDown.fire(a)})),this.onkeydown(this.domNode,a=>{if(a.equals(15)||a.equals(17)||a.equals(9)){let b=this.getToggleDomNodes(),c=b.indexOf(this.domNode.ownerDocument.activeElement);if(c>=0){let e=-1;a.equals(17)?e=(c+1)%b.length:a.equals(15)&&(e=0===c?b.length-1:c-1),a.equals(9)?(b[c].blur(),this.inputBox.focus()):e>=0&&b[e].focus(),d.fs.stop(a,!0)}}})}this.controls=document.createElement("div"),this.controls.className="controls",this.controls.style.display=this.showCommonFindToggles?"":"none",this.caseSensitive&&this.controls.append(this.caseSensitive.domNode),this.wholeWords&&this.controls.appendChild(this.wholeWords.domNode),this.regex&&this.controls.appendChild(this.regex.domNode),this.setAdditionalToggles(c?.additionalToggles),this.controls&&this.domNode.appendChild(this.controls),a?.appendChild(this.domNode),this._register((0,d.ko)(this.inputBox.inputElement,"compositionstart",a=>{this.imeSessionInProgress=!0})),this._register((0,d.ko)(this.inputBox.inputElement,"compositionend",a=>{this.imeSessionInProgress=!1,this._onInput.fire()})),this.onkeydown(this.inputBox.inputElement,a=>this._onKeyDown.fire(a)),this.onkeyup(this.inputBox.inputElement,a=>this._onKeyUp.fire(a)),this.oninput(this.inputBox.inputElement,a=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,a=>this._onMouseDown.fire(a))}get onDidChange(){return this.inputBox.onDidChange}layout(a){this.inputBox.layout(),this.updateInputBoxPadding(a.collapsedFindWidget)}enable(){for(let a of(this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.regex?.enable(),this.wholeWords?.enable(),this.caseSensitive?.enable(),this.additionalToggles))a.enable()}disable(){for(let a of(this.domNode.classList.add("disabled"),this.inputBox.disable(),this.regex?.disable(),this.wholeWords?.disable(),this.caseSensitive?.disable(),this.additionalToggles))a.disable()}setFocusInputOnOptionClick(a){this.fixFocusOnOptionClickEnabled=a}setEnabled(a){a?this.enable():this.disable()}setAdditionalToggles(a){for(let a of this.additionalToggles)a.domNode.remove();for(let b of(this.additionalToggles=[],this.additionalTogglesDisposables.value=new j.Cm,a??[]))this.additionalTogglesDisposables.value.add(b),this.controls.appendChild(b.domNode),this.additionalTogglesDisposables.value.add(b.onChange(a=>{this._onDidOptionChange.fire(a),!a&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus()})),this.additionalToggles.push(b);this.additionalToggles.length>0&&(this.controls.style.display=""),this.updateInputBoxPadding()}getToggleDomNodes(){let a=[];for(let b of(this.caseSensitive&&a.push(this.caseSensitive.domNode),this.wholeWords&&a.push(this.wholeWords.domNode),this.regex&&a.push(this.regex.domNode),this.additionalToggles))a.push(b.domNode);return a}setActions(a,b){this.inputBox.setActions(a,b),this.updateInputBoxPadding()}updateInputBoxPadding(a=!1){let b=a?0:(this.caseSensitive?.width()??0)+(this.wholeWords?.width()??0)+(this.regex?.width()??0)+this.additionalToggles.reduce((a,b)=>a+b.width(),0);this.inputBox.paddingRight=b+this.inputBox.actionsWidth}getValue(){return this.inputBox.value}setValue(a){this.inputBox.value!==a&&(this.inputBox.value=a)}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getCaseSensitive(){return this.caseSensitive?.checked??!1}setCaseSensitive(a){this.caseSensitive&&(this.caseSensitive.checked=a)}getWholeWords(){return this.wholeWords?.checked??!1}setWholeWords(a){this.wholeWords&&(this.wholeWords.checked=a)}getRegex(){return this.regex?.checked??!1}setRegex(a){this.regex&&(this.regex.checked=a,this.validate())}focusOnCaseSensitive(){this.caseSensitive?.focus()}highlightFindOptions(){this.domNode.classList.remove("highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,this.domNode.classList.add("highlight-"+this._lastHighlightFindOptions)}validate(){this.inputBox.validate()}showMessage(a){this.inputBox.showMessage(a)}clearMessage(){this.inputBox.hideMessage()}}},7266:(a,b,c)=>{"use strict";c.d(b,{iE:()=>e,rW:()=>f});class d{constructor(a,b,c){this._colorZoneBrand=void 0,this.from=0|a,this.to=0|b,this.colorId=0|c}static compare(a,b){return a.colorId===b.colorId?a.from===b.from?a.to-b.to:a.from-b.from:a.colorId-b.colorId}}class e{constructor(a,b,c,d){this._overviewRulerZoneBrand=void 0,this.startLineNumber=a,this.endLineNumber=b,this.heightInLines=c,this.color=d,this._colorZone=null}static compare(a,b){if(a.color===b.color)return a.startLineNumber===b.startLineNumber?a.heightInLines===b.heightInLines?a.endLineNumber-b.endLineNumber:a.heightInLines-b.heightInLines:a.startLineNumber-b.startLineNumber;return a.color<b.color?-1:1}setColorZone(a){this._colorZone=a}getColorZones(){return this._colorZone}}class f{constructor(a){this._getVerticalOffsetForLine=a,this._zones=[],this._colorZonesInvalid=!1,this._lineHeight=0,this._domWidth=0,this._domHeight=0,this._outerHeight=0,this._pixelRatio=1,this._lastAssignedId=0,this._color2Id=Object.create(null),this._id2Color=[]}getId2Color(){return this._id2Color}setZones(a){this._zones=a,this._zones.sort(e.compare)}setLineHeight(a){return this._lineHeight!==a&&(this._lineHeight=a,this._colorZonesInvalid=!0,!0)}setPixelRatio(a){this._pixelRatio=a,this._colorZonesInvalid=!0}getDOMWidth(){return this._domWidth}getCanvasWidth(){return this._domWidth*this._pixelRatio}setDOMWidth(a){return this._domWidth!==a&&(this._domWidth=a,this._colorZonesInvalid=!0,!0)}getDOMHeight(){return this._domHeight}getCanvasHeight(){return this._domHeight*this._pixelRatio}setDOMHeight(a){return this._domHeight!==a&&(this._domHeight=a,this._colorZonesInvalid=!0,!0)}getOuterHeight(){return this._outerHeight}setOuterHeight(a){return this._outerHeight!==a&&(this._outerHeight=a,this._colorZonesInvalid=!0,!0)}resolveColorZones(){let a=this._colorZonesInvalid,b=Math.floor(this._lineHeight),c=Math.floor(this.getCanvasHeight()),e=c/Math.floor(this._outerHeight),f=Math.floor(4*this._pixelRatio/2),g=[];for(let h=0,i=this._zones.length;h<i;h++){let i=this._zones[h];if(!a){let a=i.getColorZones();if(a){g.push(a);continue}}let j=this._getVerticalOffsetForLine(i.startLineNumber),k=0===i.heightInLines?this._getVerticalOffsetForLine(i.endLineNumber)+b:j+i.heightInLines*b,l=Math.floor(e*j),m=Math.floor(e*k),n=Math.floor((l+m)/2),o=m-n;o<f&&(o=f),n-o<0&&(n=o),n+o>c&&(n=c-o);let p=i.color,q=this._color2Id[p];q||(q=++this._lastAssignedId,this._color2Id[p]=q,this._id2Color[q]=p);let r=new d(n-o,n+o,q);i.setColorZone(r),g.push(r)}return this._colorZonesInvalid=!1,g.sort(d.compare),g}}},7846:(a,b,c)=>{"use strict";c.d(b,{E$:()=>i,HP:()=>l,Ic:()=>p,Nw:()=>g,U0:()=>f,Wn:()=>d,bg:()=>j,dT:()=>o,mS:()=>k,uK:()=>e,vD:()=>h,vn:()=>m,zq:()=>n});class d{constructor(){this.changeType=1}}class e{static applyInjectedText(a,b){if(!b||0===b.length)return a;let c="",d=0;for(let e of b)c+=a.substring(d,e.column-1),d=e.column-1,c+=e.options.content;return c+a.substring(d)}static fromDecorations(a){let b=[];for(let c of a)c.options.before&&c.options.before.content.length>0&&b.push(new e(c.ownerId,c.range.startLineNumber,c.range.startColumn,c.options.before,0)),c.options.after&&c.options.after.content.length>0&&b.push(new e(c.ownerId,c.range.endLineNumber,c.range.endColumn,c.options.after,1));return b.sort((a,b)=>a.lineNumber===b.lineNumber?a.column===b.column?a.order-b.order:a.column-b.column:a.lineNumber-b.lineNumber),b}constructor(a,b,c,d,e){this.ownerId=a,this.lineNumber=b,this.column=c,this.options=d,this.order=e}}class f{constructor(a,b){this.changeType=2,this.lineNumber=a,this.lineNumberPostEdit=b}}class g{constructor(a,b,c,d){this.ownerId=a,this.decorationId=b,this.lineNumber=c,this.lineHeightMultiplier=d}}class h{constructor(a,b){this.ownerId=a,this.lineNumber=b}}class i{constructor(a,b,c){this.changeType=3,this.fromLineNumber=a,this.toLineNumber=b,this.lastUntouchedLinePostEdit=c}}class j{get toLineNumber(){return this.fromLineNumber+this.count-1}get toLineNumberPostEdit(){return this.fromLineNumberPostEdit+this.count-1}constructor(a,b,c){this.changeType=4,this.fromLineNumber=a,this.fromLineNumberPostEdit=b,this.count=c}}class k{constructor(){this.changeType=5}}class l{constructor(a,b,c,d){this.changes=a,this.versionId=b,this.isUndoing=c,this.isRedoing=d,this.resultingSelection=null}containsEvent(a){for(let b=0,c=this.changes.length;b<c;b++)if(this.changes[b].changeType===a)return!0;return!1}static merge(a,b){return new l([].concat(a.changes).concat(b.changes),b.versionId,a.isUndoing||b.isUndoing,a.isRedoing||b.isRedoing)}}class m{constructor(a){this.changes=a}}class n{constructor(a){this.changes=a}}class o{constructor(a){this.changes=a}}class p{constructor(a,b){this.rawContentChangedEvent=a,this.contentChangedEvent=b}merge(a){let b=l.merge(this.rawContentChangedEvent,a.rawContentChangedEvent),c=p._mergeChangeEvents(this.contentChangedEvent,a.contentChangedEvent);return new p(b,c)}static _mergeChangeEvents(a,b){let c=[].concat(a.changes).concat(b.changes),d=b.eol,e=b.versionId,f=a.isUndoing||b.isUndoing,g=a.isRedoing||b.isRedoing,h=a.isFlush||b.isFlush;return{changes:c,eol:d,isEolChange:a.isEolChange&&b.isEolChange,versionId:e,isUndoing:f,isRedoing:g,isFlush:h,detailedReasons:a.detailedReasons.concat(b.detailedReasons),detailedReasonsChangeLengths:a.detailedReasonsChangeLengths.concat(b.detailedReasonsChangeLengths)}}}},8058:()=>{},8253:(a,b,c)=>{"use strict";c.d(b,{As:()=>f,qg:()=>g});var d=c(15053),e=c(54957);function f(a){return JSON.stringify(a,h)}function g(a){let b=JSON.parse(a);return function a(b,c=0){if(!b||c>200)return b;if("object"==typeof b){switch(b.$mid){case 1:return e.r.revive(b);case 2:return new RegExp(b.source,b.flags);case 17:return new Date(b.source)}if(b instanceof d.MB||b instanceof Uint8Array)return b;if(Array.isArray(b))for(let d=0;d<b.length;++d)b[d]=a(b[d],c+1);else for(let d in b)Object.hasOwnProperty.call(b,d)&&(b[d]=a(b[d],c+1))}return b}(b)}function h(a,b){return b instanceof RegExp?{$mid:2,source:b.source,flags:b.flags}:b}},8933:(a,b,c)=>{"use strict";c.d(b,{x:()=>i});var d=c(75082),e=c(62677),f=c(46857),g=c(34793),h=c(76631);class i extends h.jG{onclick(a,b){this._register((0,d.ko)(a,d.Bx.CLICK,c=>b(new f.P((0,d.zk)(a),c))))}onmousedown(a,b){this._register((0,d.ko)(a,d.Bx.MOUSE_DOWN,c=>b(new f.P((0,d.zk)(a),c))))}onmouseover(a,b){this._register((0,d.ko)(a,d.Bx.MOUSE_OVER,c=>b(new f.P((0,d.zk)(a),c))))}onmouseleave(a,b){this._register((0,d.ko)(a,d.Bx.MOUSE_LEAVE,c=>b(new f.P((0,d.zk)(a),c))))}onkeydown(a,b){this._register((0,d.ko)(a,d.Bx.KEY_DOWN,a=>b(new e.Z(a))))}onkeyup(a,b){this._register((0,d.ko)(a,d.Bx.KEY_UP,a=>b(new e.Z(a))))}oninput(a,b){this._register((0,d.ko)(a,d.Bx.INPUT,b))}onblur(a,b){this._register((0,d.ko)(a,d.Bx.BLUR,b))}onfocus(a,b){this._register((0,d.ko)(a,d.Bx.FOCUS,b))}ignoreGesture(a){return g.q.ignoreTarget(a)}}},9634:(a,b,c)=>{"use strict";c.d(b,{i:()=>o,s:()=>p});var d=c(75082),e=c(14826),f=c(20522),g=c(66560),h=c(33040),i=c(63060),j=c(95091),k=c(76631);c(70401);var l=c(72816),m=c(89191);let n="--vscode-toolbar-action-min-width";class o extends k.jG{get onDidChangeDropdownVisibility(){return this._onDidChangeDropdownVisibility.event}constructor(a,b,c={orientation:0}){if(super(),this.container=a,this.submenuActionViewItems=[],this.hasSecondaryActions=!1,this._onDidChangeDropdownVisibility=this._register(new j._B),this.originalPrimaryActions=[],this.originalSecondaryActions=[],this.hiddenActions=[],this.disposables=this._register(new k.Cm),c.hoverDelegate=c.hoverDelegate??this._register((0,m.bW)()),this.options=c,this.toggleMenuAction=this._register(new p(()=>this.toggleMenuActionViewItem?.show(),c.toggleMenuTitle)),this.element=document.createElement("div"),this.element.className="monaco-toolbar",a.appendChild(this.element),this.actionBar=this._register(new e.E(this.element,{orientation:c.orientation,ariaLabel:c.ariaLabel,actionRunner:c.actionRunner,allowContextMenu:c.allowContextMenu,highlightToggledItems:c.highlightToggledItems,hoverDelegate:c.hoverDelegate,actionViewItemProvider:(a,d)=>{if(a.id===p.ID)return this.toggleMenuActionViewItem=new f.d(a,{getActions:()=>this.toggleMenuAction.menuActions},b,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:i.L.asClassNameArray(c.moreIcon??h.W.toolBarMore),anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,isMenu:!0,hoverDelegate:this.options.hoverDelegate}),this.toggleMenuActionViewItem.setActionContext(this.actionBar.context),this.disposables.add(this._onDidChangeDropdownVisibility.add(this.toggleMenuActionViewItem.onDidChangeVisibility)),this.toggleMenuActionViewItem;if(c.actionViewItemProvider){let b=c.actionViewItemProvider(a,d);if(b)return b}if(a instanceof g.YH){let c=new f.d(a,a.actions,b,{actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,keybindingProvider:this.options.getKeyBinding,classNames:a.class,anchorAlignmentProvider:this.options.anchorAlignmentProvider,menuAsChild:!!this.options.renderDropdownAsChildElement,skipTelemetry:this.options.skipTelemetry,hoverDelegate:this.options.hoverDelegate});return c.setActionContext(this.actionBar.context),this.submenuActionViewItems.push(c),this.disposables.add(this._onDidChangeDropdownVisibility.add(c.onDidChangeVisibility)),c}}})),this.options.responsiveBehavior?.enabled){this.element.classList.toggle("responsive",!0),this.element.classList.toggle("responsive-all","all"===this.options.responsiveBehavior.kind),this.element.classList.toggle("responsive-last","last"===this.options.responsiveBehavior.kind),this.element.style.setProperty(n,`${this.getConfiguredActionMinWidth()}px`);const a=new ResizeObserver(()=>{this.updateActions(this.getAvailableWidth())});a.observe(this.options.responsiveBehavior?.observedElement??this.element),this._store.add((0,k.s)(()=>a.disconnect()))}}set actionRunner(a){this.actionBar.actionRunner=a}get actionRunner(){return this.actionBar.actionRunner}set context(a){for(let b of(this.actionBar.context=a,this.toggleMenuActionViewItem?.setActionContext(a),this.submenuActionViewItems))b.setActionContext(a)}getElement(){return this.element}getItemAction(a){return this.actionBar.getAction(a)}getItemWidth(a){return this.actionBar.getWidth(a)}getItemsLength(){return this.actionBar.length()}setActions(a,b){this.clear(),this.originalPrimaryActions=a?a.slice(0):[],this.originalSecondaryActions=b?b.slice(0):[];let c=a?a.slice(0):[];if(this.hasSecondaryActions=!!(b&&b.length>0),this.hasSecondaryActions&&b&&(this.toggleMenuAction.menuActions=b.slice(0),c.push(this.toggleMenuAction)),c.length>0&&this.options.trailingSeparator&&c.push(new g.wv),c.forEach(a=>{this.actionBar.push(a,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(a)})}),this.updateOverflowClassName(),this.applyResponsiveActionMinWidths(),this.options.responsiveBehavior?.enabled){if(this.hiddenActions.length=0,this.options.responsiveBehavior?.minItems!==void 0){let a=this.options.responsiveBehavior.minItems,b=this.originalPrimaryActions.slice(0,a).reduce((a,b)=>a+this.getActionMinWidth(b),0),c=0;(this.originalSecondaryActions.length>0||a<this.originalPrimaryActions.length)&&(c=24),this.container.style.minWidth=`${b+c}px`,this.element.style.minWidth=`${b+c}px`}else{let a=this.originalPrimaryActions.length>0?this.getActionMinWidth(this.originalPrimaryActions[0]):24;this.container.style.minWidth=`${a}px`,this.element.style.minWidth=`${a}px`}this.updateActions(this.getAvailableWidth())}}getKeybindingLabel(a){let b=this.options.getKeyBinding?.(a);return b?.getLabel()??void 0}getConfiguredActionMinWidth(a){return a?.id===p.ID?20:this.options.responsiveBehavior?.getActionMinWidth?.(a??this.toggleMenuAction)??this.options.responsiveBehavior?.actionMinWidth??20}getActionMinWidth(a){return this.getConfiguredActionMinWidth(a)+4}getAvailableWidth(){return this.options.responsiveBehavior?.getAvailableWidth?this.options.responsiveBehavior.getAvailableWidth():this.element.getBoundingClientRect().width}applyResponsiveActionMinWidths(){if(!this.options.responsiveBehavior?.enabled)return;if("last"===this.options.responsiveBehavior.kind){let a=this.actionBar.hasAction(this.toggleMenuAction)?this.actionBar.length()-2:this.actionBar.length()-1,b=a>=0?this.actionBar.getAction(a):void 0,c=`${this.getConfiguredActionMinWidth(b)}px`;this.element.style.getPropertyValue(n)!==c&&this.element.style.setProperty(n,c);return}let a=this.actionBar.getContainer().firstElementChild;if((0,d.sb)(a))for(let b=0;b<a.children.length;b++){let c=a.children.item(b);if(!(0,d.sb)(c))continue;let e=this.actionBar.getAction(b),f=`${this.getConfiguredActionMinWidth(e)}px`;c.style.minWidth!==f&&(c.style.minWidth=f)}}updateActions(a){if(this.actionBar.isEmpty())return;this.applyResponsiveActionMinWidths();let b=parseInt(this.element.style.minWidth);a=Math.max(a,Number.isNaN(b)?0:b);let c=a=>{if(this.options.responsiveBehavior?.kind==="last"){let b=this.actionBar.hasAction(this.toggleMenuAction),c=b?this.actionBar.length()-1:this.actionBar.length();if(0===c)return 24*!!b;let d=0;for(let a=0;a<c-1;a++)d+=this.actionBar.getWidth(a)+4;let e=this.actionBar.getAction(c-1);return d+=a?this.actionBar.getWidth(c-1):this.getActionMinWidth(e),d+=24*!!b}{let b=0;for(let c=0;c<this.actionBar.length();c++)b+=a?this.actionBar.getWidth(c):this.getActionMinWidth(this.actionBar.getAction(c));return b}},d=c(!1);if(d<=a&&0===this.hiddenActions.length)return;if(d>a){if(this.options.responsiveBehavior?.minItems!==void 0&&(this.actionBar.hasAction(this.toggleMenuAction)?this.actionBar.length()-1:this.actionBar.length())<=this.options.responsiveBehavior.minItems)return;for(;c(!1)>a&&this.actionBar.length()>0;){let a=this.originalPrimaryActions.length-this.hiddenActions.length-1;if(a<0)break;let b=this.originalPrimaryActions[a],c=Math.min(this.getActionMinWidth(b),this.getItemWidth(a));this.hiddenActions.unshift({action:b,size:c}),this.actionBar.pull(a),0===this.originalSecondaryActions.length&&1===this.hiddenActions.length&&(this.actionBar.push(this.toggleMenuAction,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(this.toggleMenuAction)}),this.updateOverflowClassName()),this.applyResponsiveActionMinWidths()}}else for(;this.hiddenActions.length>0;){let b=this.hiddenActions.shift();if(c(!0)+b.size>a){this.hiddenActions.unshift(b);break}this.actionBar.push(b.action,{icon:this.options.icon??!0,label:this.options.label??!1,keybinding:this.getKeybindingLabel(b.action),index:this.originalPrimaryActions.length-this.hiddenActions.length-1}),0===this.originalSecondaryActions.length&&0===this.hiddenActions.length&&(this.toggleMenuAction.menuActions=[],this.actionBar.pull(this.actionBar.length()-1),this.updateOverflowClassName()),this.applyResponsiveActionMinWidths()}let e=this.hiddenActions.map(a=>a.action);if(this.originalSecondaryActions.length>0||e.length>0){let a=this.originalSecondaryActions.slice(0);this.toggleMenuAction.menuActions=g.wv.join(e,a)}this.updateOverflowClassName(),this.applyResponsiveActionMinWidths()}updateOverflowClassName(){this.actionBar.domNode.classList.toggle("has-overflow",this.actionBar.hasAction(this.toggleMenuAction))}clear(){this.submenuActionViewItems=[],this.disposables.clear(),this.actionBar.clear()}dispose(){this.clear(),this.disposables.dispose(),this.element.remove(),super.dispose()}}class p extends g.rc{static{this.ID="toolbar.toggle.more"}constructor(a,b){b=b||(0,l.kg)(19,"More Actions..."),super(p.ID,b,void 0,!0),this._menuActions=[],this.toggleDropdownMenu=a}async run(){this.toggleDropdownMenu()}get menuActions(){return this._menuActions}set menuActions(a){this._menuActions=a}}},9761:()=>{},10619:(a,b,c)=>{"use strict";let d,e;c.d(b,{U:()=>q});var f,g,h=c(40427),i=c(17577),j=c(85169),k=c(59502),l=c(55241),m=c(58254),n=c(37788),o=c(77497),p=function(a,b){return function(c,d){b(c,d,a)}};let q=(0,m.u1)("ILanguageFeatureDebounceService");f=g||(g={}),d=new WeakMap,e=0,f.of=function(a){let b=d.get(a);return void 0===b&&(b=++e,d.set(a,b)),b};class r{constructor(a){this._default=a}get(a){return this._default}update(a,b){return this._default}default(){return this._default}}class s{constructor(a,b,c,d,e,f){this._logService=a,this._name=b,this._registry=c,this._default=d,this._min=e,this._max=f,this._cache=new i.qK(50,.7)}_key(a){return a.id+this._registry.all(a).reduce((a,b)=>(0,h.sN)(g.of(b),a),0)}get(a){let b=this._key(a),c=this._cache.get(b);return c?(0,j.qE)(c.value,this._min,this._max):this.default()}update(a,b){let c=this._key(a),d=this._cache.get(c);d||(d=new j.mu(6),this._cache.set(c,d));let e=(0,j.qE)(d.update(b),this._min,this._max);return(0,o.v$)(a.uri,"output")||this._logService.trace(`[DEBOUNCE: ${this._name}] for ${a.uri.toString()} is ${e}ms`),e}_overall(){let a=new j.Uq;for(let[,b]of this._cache)a.update(b.value);return a.value}default(){let a=0|this._overall()||this._default;return(0,j.qE)(a,this._min,this._max)}}let t=class{constructor(a,b){this._logService=a,this._data=new Map,this._isDev=b.isExtensionDevelopment||!b.isBuilt}for(a,b,c){let d=c?.min??50,e=c?.max??d**2,f=c?.key??void 0,h=`${g.of(a)},${d}${f?","+f:""}`,i=this._data.get(h);return i||(this._isDev?(this._logService.debug(`[DEBOUNCE: ${b}] is disabled in developed mode`),i=new r(1.5*d)):i=new s(this._logService,b,a,0|this._overallAverage()||1.5*d,d,e),this._data.set(h,i)),i}_overallAverage(){let a=new j.Uq;for(let b of this._data.values())a.update(b.default());return a.value}};t=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([p(0,n.rr),p(1,k.k)],t),(0,l.v)(q,t,1)},11023:(a,b,c)=>{"use strict";c.d(b,{$B:()=>N,By:()=>j,Cg:()=>k,DS:()=>P,EC:()=>B,EY:()=>I,Fi:()=>l,GN:()=>L,Gj:()=>K,Hn:()=>p,II:()=>s,JP:()=>ad,Qw:()=>x,Rb:()=>n,S5:()=>C,St:()=>q,Ub:()=>z,Yt:()=>i,ZE:()=>J,bN:()=>ae,et:()=>T,f3:()=>y,f9:()=>O,fA:()=>aa,i6:()=>t,ld:()=>M,mc:()=>R,oZ:()=>E,p8:()=>A,pO:()=>r,rm:()=>v,sA:()=>U,sI:()=>m,se:()=>u,t:()=>w,tY:()=>ac,vV:()=>S,wh:()=>o,z5:()=>ab});var d=c(72816),e=c(55404),f=c(37327),g=c(34183),h=c(58330);let i=(0,f.x1)("editor.background",{light:"#ffffff",dark:"#1E1E1E",hcDark:e.Q1.black,hcLight:e.Q1.white},(0,d.kg)(1865,"Editor background color.")),j=(0,f.x1)("editor.foreground",{light:"#333333",dark:"#BBBBBB",hcDark:e.Q1.white,hcLight:g.CU},(0,d.kg)(1866,"Editor default foreground color."));(0,f.x1)("editorStickyScroll.background",i,(0,d.kg)(1867,"Background color of sticky scroll in the editor")),(0,f.x1)("editorStickyScrollGutter.background",i,(0,d.kg)(1868,"Background color of the gutter part of sticky scroll in the editor")),(0,f.x1)("editorStickyScrollHover.background",{dark:"#2A2D2E",light:"#F0F0F0",hcDark:null,hcLight:e.Q1.fromHex("#0F4A85").transparent(.1)},(0,d.kg)(1869,"Background color of sticky scroll on hover in the editor")),(0,f.x1)("editorStickyScroll.border",{dark:null,light:null,hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1870,"Border color of sticky scroll in the editor")),(0,f.x1)("editorStickyScroll.shadow",h.bX,(0,d.kg)(1871," Shadow color of sticky scroll in the editor"));let k=(0,f.x1)("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hcDark:"#0C141F",hcLight:e.Q1.white},(0,d.kg)(1872,"Background color of editor widgets, such as find/replace.")),l=(0,f.x1)("editorWidget.foreground",g.CU,(0,d.kg)(1873,"Foreground color of editor widgets, such as find/replace.")),m=(0,f.x1)("editorWidget.border",{dark:(0,f.JO)(l,.2),light:(0,f.JO)(l,.2),hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1874,"Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget."));(0,f.x1)("editorWidget.resizeBorder",null,(0,d.kg)(1875,"Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),(0,f.x1)("editorError.background",null,(0,d.kg)(1876,"Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let n=(0,f.x1)("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hcDark:"#F48771",hcLight:"#B5200D"},(0,d.kg)(1877,"Foreground color of error squigglies in the editor."));(0,f.x1)("editorError.border",{dark:null,light:null,hcDark:e.Q1.fromHex("#E47777").transparent(.8),hcLight:"#B5200D"},(0,d.kg)(1878,"If set, color of double underlines for errors in the editor."));let o=(0,f.x1)("editorWarning.background",null,(0,d.kg)(1879,"Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),p=(0,f.x1)("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hcDark:"#FFD370",hcLight:"#895503"},(0,d.kg)(1880,"Foreground color of warning squigglies in the editor.")),q=(0,f.x1)("editorWarning.border",{dark:null,light:null,hcDark:e.Q1.fromHex("#FFCC00").transparent(.8),hcLight:e.Q1.fromHex("#FFCC00").transparent(.8)},(0,d.kg)(1881,"If set, color of double underlines for warnings in the editor."));(0,f.x1)("editorInfo.background",null,(0,d.kg)(1882,"Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0);let r=(0,f.x1)("editorInfo.foreground",{dark:"#59a4f9",light:"#0063d3",hcDark:"#59a4f9",hcLight:"#0063d3"},(0,d.kg)(1883,"Foreground color of info squigglies in the editor.")),s=(0,f.x1)("editorInfo.border",{dark:null,light:null,hcDark:e.Q1.fromHex("#59a4f9").transparent(.8),hcLight:"#292929"},(0,d.kg)(1884,"If set, color of double underlines for infos in the editor.")),t=(0,f.x1)("editorHint.foreground",{dark:e.Q1.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hcDark:null,hcLight:null},(0,d.kg)(1885,"Foreground color of hint squigglies in the editor."));(0,f.x1)("editorHint.border",{dark:null,light:null,hcDark:e.Q1.fromHex("#eeeeee").transparent(.8),hcLight:"#292929"},(0,d.kg)(1886,"If set, color of double underlines for hints in the editor.")),(0,f.x1)("editorLink.activeForeground",{dark:"#4E94CE",light:e.Q1.blue,hcDark:e.Q1.cyan,hcLight:"#292929"},(0,d.kg)(1887,"Color of active links."));let u=(0,f.x1)("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#f3f518",hcLight:"#0F4A85"},(0,d.kg)(1888,"Color of the editor selection.")),v=(0,f.x1)("editor.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:e.Q1.white},(0,d.kg)(1889,"Color of the selected text for high contrast.")),w=(0,f.x1)("editor.inactiveSelectionBackground",{light:(0,f.JO)(u,.5),dark:(0,f.JO)(u,.5),hcDark:(0,f.JO)(u,.7),hcLight:(0,f.JO)(u,.5)},(0,d.kg)(1890,"Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),x=(0,f.x1)("editor.selectionHighlightBackground",{light:(0,f.oG)(u,i,.3,.6),dark:(0,f.oG)(u,i,.3,.6),hcDark:null,hcLight:null},(0,d.kg)(1891,"Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("editor.selectionHighlightBorder",{light:null,dark:null,hcDark:g.bu,hcLight:g.bu},(0,d.kg)(1892,"Border color for regions with the same content as the selection.")),(0,f.x1)("editor.compositionBorder",{light:"#000000",dark:"#ffffff",hcLight:"#000000",hcDark:"#ffffff"},(0,d.kg)(1893,"The border color for an IME composition.")),(0,f.x1)("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hcDark:null,hcLight:null},(0,d.kg)(1894,"Color of the current search match."));let y=(0,f.x1)("editor.findMatchForeground",null,(0,d.kg)(1895,"Text color of the current search match.")),z=(0,f.x1)("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hcDark:null,hcLight:null},(0,d.kg)(1896,"Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),A=(0,f.x1)("editor.findMatchHighlightForeground",null,(0,d.kg)(1897,"Foreground color of the other search matches."),!0);(0,f.x1)("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hcDark:null,hcLight:null},(0,d.kg)(1898,"Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),(0,f.x1)("editor.findMatchBorder",{light:null,dark:null,hcDark:g.bu,hcLight:g.bu},(0,d.kg)(1899,"Border color of the current search match."));let B=(0,f.x1)("editor.findMatchHighlightBorder",{light:null,dark:null,hcDark:g.bu,hcLight:g.bu},(0,d.kg)(1900,"Border color of the other search matches.")),C=(0,f.x1)("editor.findRangeHighlightBorder",{dark:null,light:null,hcDark:(0,f.JO)(g.bu,.4),hcLight:(0,f.JO)(g.bu,.4)},(0,d.kg)(1901,"Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hcDark:"#ADD6FF26",hcLight:null},(0,d.kg)(1902,"Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0);let D=(0,f.x1)("editorHoverWidget.background",k,(0,d.kg)(1903,"Background color of the editor hover."));(0,f.x1)("editorHoverWidget.foreground",l,(0,d.kg)(1904,"Foreground color of the editor hover."));let E=(0,f.x1)("editorHoverWidget.border",m,(0,d.kg)(1905,"Border color of the editor hover."));(0,f.x1)("editorHoverWidget.statusBarBackground",{dark:(0,f.a)(D,.2),light:(0,f.e$)(D,.05),hcDark:k,hcLight:k},(0,d.kg)(1906,"Background color of the editor hover status bar."));let F=(0,f.x1)("editorInlayHint.foreground",{dark:"#969696",light:"#969696",hcDark:e.Q1.white,hcLight:e.Q1.black},(0,d.kg)(1907,"Foreground color of inline hints")),G=(0,f.x1)("editorInlayHint.background",{dark:(0,f.JO)(h.WM,.1),light:(0,f.JO)(h.WM,.1),hcDark:(0,f.JO)(e.Q1.white,.1),hcLight:(0,f.JO)(h.WM,.1)},(0,d.kg)(1908,"Background color of inline hints"));(0,f.x1)("editorInlayHint.typeForeground",F,(0,d.kg)(1909,"Foreground color of inline hints for types")),(0,f.x1)("editorInlayHint.typeBackground",G,(0,d.kg)(1910,"Background color of inline hints for types")),(0,f.x1)("editorInlayHint.parameterForeground",F,(0,d.kg)(1911,"Foreground color of inline hints for parameters")),(0,f.x1)("editorInlayHint.parameterBackground",G,(0,d.kg)(1912,"Background color of inline hints for parameters"));let H=(0,f.x1)("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hcDark:"#FFCC00",hcLight:"#007ACC"},(0,d.kg)(1913,"The color used for the lightbulb actions icon."));(0,f.x1)("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hcDark:"#75BEFF",hcLight:"#007ACC"},(0,d.kg)(1914,"The color used for the lightbulb auto fix actions icon.")),(0,f.x1)("editorLightBulbAi.foreground",H,(0,d.kg)(1915,"The color used for the lightbulb AI icon.")),(0,f.x1)("editor.snippetTabstopHighlightBackground",{dark:new e.Q1(new e.bU(124,124,124,.3)),light:new e.Q1(new e.bU(10,50,100,.2)),hcDark:new e.Q1(new e.bU(124,124,124,.3)),hcLight:new e.Q1(new e.bU(10,50,100,.2))},(0,d.kg)(1916,"Highlight background color of a snippet tabstop.")),(0,f.x1)("editor.snippetTabstopHighlightBorder",null,(0,d.kg)(1917,"Highlight border color of a snippet tabstop.")),(0,f.x1)("editor.snippetFinalTabstopHighlightBackground",null,(0,d.kg)(1918,"Highlight background color of the final tabstop of a snippet.")),(0,f.x1)("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new e.Q1(new e.bU(10,50,100,.5)),hcDark:"#525252",hcLight:"#292929"},(0,d.kg)(1919,"Highlight border color of the final tabstop of a snippet."));let I=new e.Q1(new e.bU(155,185,85,.2)),J=new e.Q1(new e.bU(255,0,0,.2)),K=(0,f.x1)("diffEditor.insertedTextBackground",{dark:"#9ccc2c33",light:"#9ccc2c40",hcDark:null,hcLight:null},(0,d.kg)(1920,"Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),L=(0,f.x1)("diffEditor.removedTextBackground",{dark:"#ff000033",light:"#ff000033",hcDark:null,hcLight:null},(0,d.kg)(1921,"Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("diffEditor.insertedLineBackground",{dark:I,light:I,hcDark:null,hcLight:null},(0,d.kg)(1922,"Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),(0,f.x1)("diffEditor.removedLineBackground",{dark:J,light:J,hcDark:null,hcLight:null},(0,d.kg)(1923,"Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),(0,f.x1)("diffEditorGutter.insertedLineBackground",null,(0,d.kg)(1924,"Background color for the margin where lines got inserted.")),(0,f.x1)("diffEditorGutter.removedLineBackground",null,(0,d.kg)(1925,"Background color for the margin where lines got removed."));let M=(0,f.x1)("diffEditorOverview.insertedForeground",null,(0,d.kg)(1926,"Diff overview ruler foreground for inserted content.")),N=(0,f.x1)("diffEditorOverview.removedForeground",null,(0,d.kg)(1927,"Diff overview ruler foreground for removed content."));(0,f.x1)("diffEditor.insertedTextBorder",{dark:null,light:null,hcDark:"#33ff2eff",hcLight:"#374E06"},(0,d.kg)(1928,"Outline color for the text that got inserted.")),(0,f.x1)("diffEditor.removedTextBorder",{dark:null,light:null,hcDark:"#FF008F",hcLight:"#AD0707"},(0,d.kg)(1929,"Outline color for text that got removed.")),(0,f.x1)("diffEditor.border",{dark:null,light:null,hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1930,"Border color between the two text editors.")),(0,f.x1)("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hcDark:null,hcLight:null},(0,d.kg)(1931,"Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.")),(0,f.x1)("diffEditor.unchangedRegionBackground","sideBar.background",(0,d.kg)(1932,"The background color of unchanged blocks in the diff editor.")),(0,f.x1)("diffEditor.unchangedRegionForeground","foreground",(0,d.kg)(1933,"The foreground color of unchanged blocks in the diff editor.")),(0,f.x1)("diffEditor.unchangedCodeBackground",{dark:"#74747429",light:"#b8b8b829",hcDark:null,hcLight:null},(0,d.kg)(1934,"The background color of unchanged code in the diff editor."));let O=(0,f.x1)("widget.shadow",{dark:(0,f.JO)(e.Q1.black,.36),light:(0,f.JO)(e.Q1.black,.16),hcDark:null,hcLight:null},(0,d.kg)(1935,"Shadow color of widgets such as find/replace inside the editor.")),P=(0,f.x1)("widget.border",{dark:null,light:null,hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1936,"Border color of widgets such as find/replace inside the editor.")),Q=(0,f.x1)("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hcDark:null,hcLight:null},(0,d.kg)(1937,"Toolbar background when hovering over actions using the mouse"));(0,f.x1)("toolbar.hoverOutline",{dark:null,light:null,hcDark:g.bu,hcLight:g.bu},(0,d.kg)(1938,"Toolbar outline when hovering over actions using the mouse")),(0,f.x1)("toolbar.activeBackground",{dark:(0,f.a)(Q,.1),light:(0,f.e$)(Q,.1),hcDark:null,hcLight:null},(0,d.kg)(1939,"Toolbar background when holding the mouse over actions"));let R=(0,f.x1)("breadcrumb.foreground",(0,f.JO)(g.CU,.8),(0,d.kg)(1940,"Color of focused breadcrumb items.")),S=(0,f.x1)("breadcrumb.background",i,(0,d.kg)(1941,"Background color of breadcrumb items.")),T=(0,f.x1)("breadcrumb.focusForeground",{light:(0,f.e$)(g.CU,.2),dark:(0,f.a)(g.CU,.1),hcDark:(0,f.a)(g.CU,.1),hcLight:(0,f.a)(g.CU,.1)},(0,d.kg)(1942,"Color of focused breadcrumb items.")),U=(0,f.x1)("breadcrumb.activeSelectionForeground",{light:(0,f.e$)(g.CU,.2),dark:(0,f.a)(g.CU,.1),hcDark:(0,f.a)(g.CU,.1),hcLight:(0,f.a)(g.CU,.1)},(0,d.kg)(1943,"Color of selected breadcrumb items."));(0,f.x1)("breadcrumbPicker.background",k,(0,d.kg)(1944,"Background color of breadcrumb item picker."));let V=e.Q1.fromHex("#40C8AE").transparent(.5),W=e.Q1.fromHex("#40A6FF").transparent(.5),X=e.Q1.fromHex("#606060").transparent(.4),Y=(0,f.x1)("merge.currentHeaderBackground",{dark:V,light:V,hcDark:null,hcLight:null},(0,d.kg)(1945,"Current header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("merge.currentContentBackground",(0,f.JO)(Y,.4),(0,d.kg)(1946,"Current content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let Z=(0,f.x1)("merge.incomingHeaderBackground",{dark:W,light:W,hcDark:null,hcLight:null},(0,d.kg)(1947,"Incoming header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("merge.incomingContentBackground",(0,f.JO)(Z,.4),(0,d.kg)(1948,"Incoming content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let $=(0,f.x1)("merge.commonHeaderBackground",{dark:X,light:X,hcDark:null,hcLight:null},(0,d.kg)(1949,"Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);(0,f.x1)("merge.commonContentBackground",(0,f.JO)($,.4),(0,d.kg)(1950,"Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations."),!0);let _=(0,f.x1)("merge.border",{dark:null,light:null,hcDark:"#C3DF6F",hcLight:"#007ACC"},(0,d.kg)(1951,"Border color on headers and the splitter in inline merge-conflicts."));(0,f.x1)("editorOverviewRuler.currentContentForeground",{dark:(0,f.JO)(Y,1),light:(0,f.JO)(Y,1),hcDark:_,hcLight:_},(0,d.kg)(1952,"Current overview ruler foreground for inline merge-conflicts.")),(0,f.x1)("editorOverviewRuler.incomingContentForeground",{dark:(0,f.JO)(Z,1),light:(0,f.JO)(Z,1),hcDark:_,hcLight:_},(0,d.kg)(1953,"Incoming overview ruler foreground for inline merge-conflicts.")),(0,f.x1)("editorOverviewRuler.commonContentForeground",{dark:(0,f.JO)($,1),light:(0,f.JO)($,1),hcDark:_,hcLight:_},(0,d.kg)(1954,"Common ancestor overview ruler foreground for inline merge-conflicts."));let aa=(0,f.x1)("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hcDark:"#AB5A00",hcLight:"#AB5A00"},(0,d.kg)(1955,"Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0),ab=(0,f.x1)("editorOverviewRuler.selectionHighlightForeground","#A0A0A0CC",(0,d.kg)(1956,"Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),ac=(0,f.x1)("problemsErrorIcon.foreground",n,(0,d.kg)(1957,"The color used for the problems error icon.")),ad=(0,f.x1)("problemsWarningIcon.foreground",p,(0,d.kg)(1958,"The color used for the problems warning icon.")),ae=(0,f.x1)("problemsInfoIcon.foreground",r,(0,d.kg)(1959,"The color used for the problems info icon."))},12017:(a,b,c)=>{"use strict";c.d(b,{AS:()=>h,gr:()=>l,iP:()=>k,iu:()=>g,q2:()=>j,tA:()=>i,ui:()=>m});var d=c(6812),e=c(61822),f=c(77509);class g{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class h{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){let c=this._range.getStartPosition(),f=this._range.getEndPosition(),g=f.lineNumber,h=n(a,f,this._text.length+(this._range.isEmpty()?0:-1));h.lineNumber>g&&(h=new d.y(g,a.getLineMaxColumn(g)));let i=e.Q.fromPositions(c,h);b.addTrackedEditOperation(i,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class i{constructor(a,b){this._range=a,this._text=b}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromRange(c,0)}}class j{constructor(a,b,c=!1){this._range=a,this._text=b,this.insertsAutoWhitespace=c}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getStartPosition())}}class k{constructor(a,b,c,d,e=!1){this._range=a,this._text=b,this._columnDeltaOffset=d,this._lineNumberDeltaOffset=c,this.insertsAutoWhitespace=e}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition().delta(this._lineNumberDeltaOffset,this._columnDeltaOffset))}}class l{constructor(a){this._range=a}getEditOperations(a,b){let c=a.getValueInRange(this._range),f=this._range.getEndPosition(),g=f.lineNumber,h=n(a,f,c.length);h.lineNumber>g&&(h=new d.y(g,a.getLineMaxColumn(g)));let i=e.Q.fromPositions(f,h);b.addTrackedEditOperation(i,"")}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return f.L.fromPositions(c.getEndPosition())}}class m{constructor(a,b,c,d=!1){this._range=a,this._text=b,this._initialSelection=c,this._forceMoveMarkers=d,this._selectionId=null}getEditOperations(a,b){b.addTrackedEditOperation(this._range,this._text,this._forceMoveMarkers),this._selectionId=b.trackSelection(this._initialSelection)}computeCursorState(a,b){return b.getTrackedSelection(this._selectionId)}}function n(a,b,c){if(c<0)throw Error("Unexpected negative delta");let e=a.getLineCount(),f=new d.y(e,a.getLineMaxColumn(e));for(let g=b.lineNumber;g<=e;g++)if(g===b.lineNumber){let e=c-a.getLineMaxColumn(b.lineNumber)+b.column;if(e<=0){f=new d.y(b.lineNumber,b.column+c);break}c=e}else{let b=c-a.getLineMaxColumn(g);if(b<=0){f=new d.y(g,c);break}c=b}return f}},12428:(a,b,c)=>{"use strict";c.d(b,{k:()=>g,x:()=>h});var d=c(15053),e=c(50411);function f(a){return a.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}class g{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(a,b,c,d){this.oldPosition=a,this.oldText=b,this.newPosition=c,this.newText=d}toString(){return 0===this.oldText.length?`(insert@${this.oldPosition} "${f(this.newText)}")`:0===this.newText.length?`(delete@${this.oldPosition} "${f(this.oldText)}")`:`(replace@${this.oldPosition} "${f(this.oldText)}" with "${f(this.newText)}")`}static _writeStringSize(a){return 4+2*a.length}static _writeString(a,b,c){let e=b.length;(0,d.Sw)(a,e,c),c+=4;for(let f=0;f<e;f++)(0,d.gN)(a,b.charCodeAt(f),c),c+=2;return c}static _readString(a,b){let c=(0,d.bb)(a,b);return b+=4,(0,e.Su)(a,b,c)}writeSize(){return 8+g._writeStringSize(this.oldText)+g._writeStringSize(this.newText)}write(a,b){return(0,d.Sw)(a,this.oldPosition,b),b+=4,(0,d.Sw)(a,this.newPosition,b),b+=4,b=g._writeString(a,this.oldText,b),b=g._writeString(a,this.newText,b)}static read(a,b,c){let e=(0,d.bb)(a,b);b+=4;let f=(0,d.bb)(a,b);b+=4;let h=g._readString(a,b);b+=g._writeStringSize(h);let i=g._readString(a,b);return b+=g._writeStringSize(i),c.push(new g(e,h,f,i)),b}}function h(a,b){return null===a||0===a.length?b:new i(a,b).compress()}class i{constructor(a,b){this._prevEdits=a,this._currEdits=b,this._result=[],this._resultLen=0,this._prevLen=this._prevEdits.length,this._prevDeltaOffset=0,this._currLen=this._currEdits.length,this._currDeltaOffset=0}compress(){let a=0,b=0,c=this._getPrev(a),d=this._getCurr(b);for(;a<this._prevLen||b<this._currLen;){let e,f;if(null===c){this._acceptCurr(d),d=this._getCurr(++b);continue}if(null===d){this._acceptPrev(c),c=this._getPrev(++a);continue}if(d.oldEnd<=c.newPosition){this._acceptCurr(d),d=this._getCurr(++b);continue}if(c.newEnd<=d.oldPosition){this._acceptPrev(c),c=this._getPrev(++a);continue}if(d.oldPosition<c.newPosition){let[a,b]=i._splitCurr(d,c.newPosition-d.oldPosition);this._acceptCurr(a),d=b;continue}if(c.newPosition<d.oldPosition){let[a,b]=i._splitPrev(c,d.oldPosition-c.newPosition);this._acceptPrev(a),c=b;continue}if(d.oldEnd===c.newEnd)e=c,f=d,c=this._getPrev(++a),d=this._getCurr(++b);else if(d.oldEnd<c.newEnd){let[a,g]=i._splitPrev(c,d.oldLength);e=a,f=d,c=g,d=this._getCurr(++b)}else{let[b,g]=i._splitCurr(d,c.newLength);e=c,f=b,c=this._getPrev(++a),d=g}this._result[this._resultLen++]=new g(e.oldPosition,e.oldText,f.newPosition,f.newText),this._prevDeltaOffset+=e.newLength-e.oldLength,this._currDeltaOffset+=f.newLength-f.oldLength}let e=i._merge(this._result);return i._removeNoOps(e)}_acceptCurr(a){this._result[this._resultLen++]=i._rebaseCurr(this._prevDeltaOffset,a),this._currDeltaOffset+=a.newLength-a.oldLength}_getCurr(a){return a<this._currLen?this._currEdits[a]:null}_acceptPrev(a){this._result[this._resultLen++]=i._rebasePrev(this._currDeltaOffset,a),this._prevDeltaOffset+=a.newLength-a.oldLength}_getPrev(a){return a<this._prevLen?this._prevEdits[a]:null}static _rebaseCurr(a,b){return new g(b.oldPosition-a,b.oldText,b.newPosition,b.newText)}static _rebasePrev(a,b){return new g(b.oldPosition,b.oldText,b.newPosition+a,b.newText)}static _splitPrev(a,b){let c=a.newText.substr(0,b),d=a.newText.substr(b);return[new g(a.oldPosition,a.oldText,a.newPosition,c),new g(a.oldEnd,"",a.newPosition+b,d)]}static _splitCurr(a,b){let c=a.oldText.substr(0,b),d=a.oldText.substr(b);return[new g(a.oldPosition,c,a.newPosition,a.newText),new g(a.oldPosition+b,d,a.newEnd,"")]}static _merge(a){if(0===a.length)return a;let b=[],c=0,d=a[0];for(let e=1;e<a.length;e++){let f=a[e];d.oldEnd===f.oldPosition?d=new g(d.oldPosition,d.oldText+f.oldText,d.newPosition,d.newText+f.newText):(b[c++]=d,d=f)}return b[c++]=d,b}static _removeNoOps(a){if(0===a.length)return a;let b=[],c=0;for(let d=0;d<a.length;d++){let e=a[d];e.oldText!==e.newText&&(b[c++]=e)}return b}}},12719:()=>{},12780:(a,b,c)=>{"use strict";c.d(b,{A:()=>h});var d,e,f,g=c(26529);(d=f||(f={}))[d.Ignore=0]="Ignore",d[d.Info=1]="Info",d[d.Warning=2]="Warning",d[d.Error=3]="Error",(e=f||(f={})).fromValue=function(a){return a?(0,g.Q_)("error",a)?e.Error:(0,g.Q_)("warning",a)||(0,g.Q_)("warn",a)?e.Warning:(0,g.Q_)("info",a)?e.Info:e.Ignore:e.Ignore},e.toString=function(a){switch(a){case e.Error:return"error";case e.Warning:return"warning";case e.Info:return"info";default:return"ignore"}};var h=f},13352:(a,b,c)=>{"use strict";c.d(b,{T:()=>d});let d=(0,c(58254).u1)("codeEditorService")},14016:(a,b,c)=>{"use strict";c.d(b,{M$:()=>j,Tf:()=>g,gI:()=>function a(b,c){if(void 0!==b){let d=b.match(/^\s*var\((.+)\)$/);if(d){let b=d[1].split(",",2);return 2===b.length&&(c=a(b[1].trim(),c)),`var(${b[0]}, ${c})`}return b}return c},mG:()=>i,r$:()=>f,s7:()=>h,yj:()=>e});var d=c(77497);function e(a){let b=a.replaceAll(/[^_\-a-z0-9]/gi,"");return b!==a&&console.warn(`CSS ident value ${a} modified to ${b} to be safe for CSS`),b}function f(a){return`'${a.replaceAll(/'/g,"\\000027")}'`}function g(a){return a?i`url('${CSS.escape(d.zl.uriToBrowserUri(a).toString(!0))}')`:"url('')"}function h(a,b=!1){let c=CSS.escape(a);return b||c===a||console.warn(`CSS class name ${a} modified to ${c} to be safe for CSS`),c}function i(a,...b){return a.reduce((a,c,d)=>a+c+(b[d]||""),"")}class j{constructor(){this._parts=[]}push(...a){this._parts.push(...a)}join(a="\n"){return this._parts.join(a)}}},14670:(a,b,c)=>{"use strict";c.d(b,{E:()=>m,eP:()=>l,y0:()=>k});var d,e=c(54265),f=c(78014);c(95091),c(76631);var g=c(55900),h=c(61811),i=c(87873),j=c(74864);function k(...a){let b,c,d,e;return 2===a.length?[c,d]=a:[b,c,d,e]=a,new m(new g.nA(b,void 0,d),c,d,()=>m.globalTransaction,f.nx,e??j.j.ofCaller())}function l(a,b,c,d=j.j.ofCaller()){return new m(new g.nA(a.owner,a.debugName,a.debugReferenceFn??c),b,c,()=>a.getTransaction?.()??m.globalTransaction,a.equalsFn??f.nx,d)}class m extends i.ZK{constructor(a,b,c,d,f,g){super(g),this._debugNameData=a,this.event=b,this._getValue=c,this._getTransaction=d,this._equalityComparator=f,this._hasValue=!1,this.handleEvent=a=>{let b=this._getValue(a),c=this._value,d=!this._hasValue||!this._equalityComparator(c,b),f=!1;d&&(this._value=b,this._hasValue&&(f=!0,(0,e.PO)(this._getTransaction(),a=>{for(let e of((0,h.t)()?.handleObservableUpdated(this,{oldValue:c,newValue:b,change:void 0,didChange:d,hadValue:this._hasValue}),this._observers))a.updateObserver(e,this),e.handleChange(this,void 0)},()=>{let a=this.getDebugName();return"Event fired"+(a?`: ${a}`:"")})),this._hasValue=!0),f||(0,h.t)()?.handleObservableUpdated(this,{oldValue:c,newValue:b,change:void 0,didChange:d,hadValue:this._hasValue})}}getDebugName(){return this._debugNameData.getDebugName(this)}get debugName(){let a=this.getDebugName();return"From Event"+(a?`: ${a}`:"")}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)}debugSetValue(a){this._value=a}debugGetState(){return{value:this._value,hasValue:this._hasValue}}}(d=k||(k={})).Observer=m,d.batchEventsGlobally=function(a,b){let c=!1;void 0===m.globalTransaction&&(m.globalTransaction=a,c=!0);try{b()}finally{c&&(m.globalTransaction=void 0)}}},14700:()=>{},14826:(a,b,c)=>{"use strict";c.d(b,{E:()=>l});var d=c(75082),e=c(62677),f=c(70288),g=c(89191),h=c(66560),i=c(95091),j=c(76631),k=c(85214);c(1505);class l extends j.jG{get viewItems(){return this._viewItems}get onDidBlur(){return this._onDidBlur.event}get onDidCancel(){return this._onDidCancel.event}get onDidRun(){return this._onDidRun.event}get onWillRun(){return this._onWillRun.event}constructor(a,b={}){let c,k;switch(super(),this._actionRunnerDisposables=this._register(new j.Cm),this.viewItemDisposables=this._register(new j.$w),this.triggerKeyDown=!1,this.focusable=!0,this._onDidBlur=this._register(new i.vl),this._onDidCancel=this._register(new i.vl({onWillAddFirstListener:()=>this.cancelHasListener=!0})),this.cancelHasListener=!1,this._onDidRun=this._register(new i.vl),this._onWillRun=this._register(new i.vl),this.options=b,this._context=b.context??null,this._orientation=this.options.orientation??0,this._triggerKeys={keyDown:this.options.triggerKeys?.keyDown??!1,keys:this.options.triggerKeys?.keys??[3,10]},this._hoverDelegate=b.hoverDelegate??this._register((0,g.bW)()),this.options.actionRunner?this._actionRunner=this.options.actionRunner:(this._actionRunner=new h.LN,this._actionRunnerDisposables.add(this._actionRunner)),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(a=>this._onDidRun.fire(a))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(a=>this._onWillRun.fire(a))),this._viewItems=[],this.focusedItem=void 0,this.domNode=document.createElement("div"),this.domNode.className="monaco-action-bar",this._orientation){case 0:c=[15],k=[17];break;case 1:c=[16],k=[18],this.domNode.className+=" vertical"}this._register((0,d.ko)(this.domNode,d.Bx.KEY_DOWN,a=>{let b=new e.Z(a),d=!0,g="number"==typeof this.focusedItem?this.viewItems[this.focusedItem]:void 0;c&&(b.equals(c[0])||b.equals(c[1]))?d=this.focusPrevious():k&&(b.equals(k[0])||b.equals(k[1]))?d=this.focusNext():b.equals(9)&&this.cancelHasListener?this._onDidCancel.fire():b.equals(14)?d=this.focusFirst():b.equals(13)?d=this.focusLast():b.equals(2)&&g instanceof f.EH&&g.trapsArrowNavigation?d=this.focusNext(void 0,!0):this.isTriggerKeyEvent(b)?this._triggerKeys.keyDown?this.doTrigger(b):this.triggerKeyDown=!0:d=!1,d&&(b.preventDefault(),b.stopPropagation())})),this._register((0,d.ko)(this.domNode,d.Bx.KEY_UP,a=>{let b=new e.Z(a);this.isTriggerKeyEvent(b)?(!this._triggerKeys.keyDown&&this.triggerKeyDown&&(this.triggerKeyDown=!1,this.doTrigger(b)),b.preventDefault(),b.stopPropagation()):(b.equals(2)||b.equals(1026)||b.equals(16)||b.equals(18)||b.equals(15)||b.equals(17))&&this.updateFocusedItem()})),this.focusTracker=this._register((0,d.w5)(this.domNode)),this._register(this.focusTracker.onDidBlur(()=>{(0,d.bq)()!==this.domNode&&(0,d.QX)((0,d.bq)(),this.domNode)||(this._onDidBlur.fire(),this.previouslyFocusedItem=this.focusedItem,this.focusedItem=void 0,this.triggerKeyDown=!1)})),this._register(this.focusTracker.onDidFocus(()=>this.updateFocusedItem())),this.actionsList=document.createElement("ul"),this.actionsList.className="actions-container",this.options.highlightToggledItems&&this.actionsList.classList.add("highlight-toggled"),this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"),this.options.ariaLabel&&this.actionsList.setAttribute("aria-label",this.options.ariaLabel),this.domNode.appendChild(this.actionsList),a.appendChild(this.domNode)}refreshRole(){this.length()>=1?this.actionsList.setAttribute("role",this.options.ariaRole||"toolbar"):this.actionsList.setAttribute("role","presentation")}setFocusable(a){if(this.focusable=a,this.focusable){let a=this.viewItems.find(a=>a instanceof f.EH&&a.isEnabled());a instanceof f.EH&&a.setFocusable(!0)}else this.viewItems.forEach(a=>{a instanceof f.EH&&a.setFocusable(!1)})}isTriggerKeyEvent(a){let b=!1;return this._triggerKeys.keys.forEach(c=>{b=b||a.equals(c)}),b}updateFocusedItem(){for(let a=0;a<this.actionsList.children.length;a++){let b=this.actionsList.children[a];if((0,d.QX)((0,d.bq)(),b)){this.focusedItem=a,this.viewItems[this.focusedItem]?.showHover?.();break}}}get context(){return this._context}set context(a){this._context=a,this.viewItems.forEach(b=>b.setActionContext(a))}get actionRunner(){return this._actionRunner}set actionRunner(a){this._actionRunner=a,this._actionRunnerDisposables.clear(),this._actionRunnerDisposables.add(this._actionRunner.onDidRun(a=>this._onDidRun.fire(a))),this._actionRunnerDisposables.add(this._actionRunner.onWillRun(a=>this._onWillRun.fire(a))),this.viewItems.forEach(b=>b.actionRunner=a)}getContainer(){return this.domNode}hasAction(a){return -1!==this.viewItems.findIndex(b=>b.action.id===a.id)}getAction(a){if("number"==typeof a)return this.viewItems[a]?.action;if((0,d.sb)(a)){for(;a.parentElement!==this.actionsList;){if(!a.parentElement)return;a=a.parentElement}for(let b=0;b<this.actionsList.childNodes.length;b++)if(this.actionsList.childNodes[b]===a)return this.viewItems[b].action}}push(a,b={}){let c=Array.isArray(a)?a:[a],e=(0,k.Et)(b.index)?b.index:null;if(c.forEach(a=>{let c,g=document.createElement("li");g.className="action-item",g.setAttribute("role","presentation");let h={hoverDelegate:this._hoverDelegate,...b,isTabList:"tablist"===this.options.ariaRole};this.options.actionViewItemProvider&&(c=this.options.actionViewItemProvider(a,h)),c||(c=new f.Z4(this.context,a,h)),this.options.allowContextMenu||this.viewItemDisposables.set(c,(0,d.ko)(g,d.Bx.CONTEXT_MENU,a=>{d.fs.stop(a,!0)})),c.actionRunner=this._actionRunner,c.setActionContext(this.context),c.render(g),null===e||e<0||e>=this.actionsList.children.length?(this.actionsList.appendChild(g),this._viewItems.push(c)):(this.actionsList.insertBefore(g,this.actionsList.children[e]),this._viewItems.splice(e,0,c),e++)}),this.focusable){let a=!1;for(let b of this.viewItems)b instanceof f.EH&&(!a&&b.action.id!==h.wv.ID&&(b.isEnabled()||!this.options.focusOnlyEnabledItems)?(b.setFocusable(!0),a=!0):b.setFocusable(!1))}"number"==typeof this.focusedItem&&this.focus(this.focusedItem),this.refreshRole()}getWidth(a){return this.actionsList.children.item(a)?.clientWidth??0}pull(a){a>=0&&a<this.viewItems.length&&(this.actionsList.childNodes[a].remove(),this.viewItemDisposables.deleteAndDispose(this.viewItems[a]),(0,j.AS)(this._viewItems.splice(a,1)),this.refreshRole())}clear(){this.isEmpty()||(this._viewItems=(0,j.AS)(this._viewItems),this.viewItemDisposables.clearAndDisposeAll(),(0,d.w_)(this.actionsList),this.refreshRole())}length(){return this.viewItems.length}isEmpty(){return 0===this.viewItems.length}focus(a){let b,c=!1;if(void 0===a?c=!0:"number"==typeof a?b=a:"boolean"==typeof a&&(c=a),c&&void 0===this.focusedItem){let a=this.viewItems.findIndex(a=>a.isEnabled());this.focusedItem=-1===a?void 0:a,this.updateFocus(void 0,void 0,!0)}else void 0!==b&&(this.focusedItem=b),this.updateFocus(void 0,void 0,!0)}focusFirst(){return this.focusedItem=this.length()-1,this.focusNext(!0)}focusLast(){return this.focusedItem=0,this.focusPrevious(!0)}focusNext(a,b){let c;if(void 0===this.focusedItem)this.focusedItem=this.viewItems.length-1;else if(this.viewItems.length<=1)return!1;let d=this.focusedItem;do{if(!a&&this.options.preventLoopNavigation&&this.focusedItem+1>=this.viewItems.length)return this.focusedItem=d,!1;this.focusedItem=(this.focusedItem+1)%this.viewItems.length,c=this.viewItems[this.focusedItem]}while(this.focusedItem!==d&&(this.options.focusOnlyEnabledItems&&!c.isEnabled()||c.action.id===h.wv.ID));return this.updateFocus(void 0,void 0,b),!0}focusPrevious(a){let b;if(void 0===this.focusedItem)this.focusedItem=0;else if(this.viewItems.length<=1)return!1;let c=this.focusedItem;do{if(this.focusedItem=this.focusedItem-1,this.focusedItem<0){if(!a&&this.options.preventLoopNavigation)return this.focusedItem=c,!1;this.focusedItem=this.viewItems.length-1}b=this.viewItems[this.focusedItem]}while(this.focusedItem!==c&&(this.options.focusOnlyEnabledItems&&!b.isEnabled()||b.action.id===h.wv.ID));return this.updateFocus(!0),!0}updateFocus(a,b,c=!1){void 0===this.focusedItem&&this.actionsList.focus({preventScroll:b}),void 0!==this.previouslyFocusedItem&&this.previouslyFocusedItem!==this.focusedItem&&this.viewItems[this.previouslyFocusedItem]?.blur();let d=void 0!==this.focusedItem?this.viewItems[this.focusedItem]:void 0;if(d){let e=!0;(0,k.Tn)(d.focus)||(e=!1),this.options.focusOnlyEnabledItems&&(0,k.Tn)(d.isEnabled)&&!d.isEnabled()&&(e=!1),d.action.id===h.wv.ID&&(e=!1),e?(c||this.previouslyFocusedItem!==this.focusedItem)&&(d.focus(a),this.previouslyFocusedItem=this.focusedItem):(this.actionsList.focus({preventScroll:b}),this.previouslyFocusedItem=void 0),e&&d.showHover?.()}}doTrigger(a){if(void 0===this.focusedItem)return;let b=this.viewItems[this.focusedItem];if(b instanceof f.EH){let c=null===b._context||void 0===b._context?a:b._context;this.run(b._action,c)}}async run(a,b){await this._actionRunner.run(a,b)}dispose(){this._context=void 0,this._viewItems=(0,j.AS)(this._viewItems),this.getContainer().remove(),super.dispose()}}},14900:(a,b,c)=>{"use strict";c.d(b,{Nt:()=>e,Rh:()=>h});var d=c(72816);let e=(0,c(58254).u1)("accessibilitySignalService");class f{static register(a){return new f(a.fileName)}static{this.error=f.register({fileName:"error.mp3"})}static{this.warning=f.register({fileName:"warning.mp3"})}static{this.success=f.register({fileName:"success.mp3"})}static{this.foldedArea=f.register({fileName:"foldedAreas.mp3"})}static{this.break=f.register({fileName:"break.mp3"})}static{this.quickFixes=f.register({fileName:"quickFixes.mp3"})}static{this.taskCompleted=f.register({fileName:"taskCompleted.mp3"})}static{this.taskFailed=f.register({fileName:"taskFailed.mp3"})}static{this.terminalBell=f.register({fileName:"terminalBell.mp3"})}static{this.diffLineInserted=f.register({fileName:"diffLineInserted.mp3"})}static{this.diffLineDeleted=f.register({fileName:"diffLineDeleted.mp3"})}static{this.diffLineModified=f.register({fileName:"diffLineModified.mp3"})}static{this.requestSent=f.register({fileName:"requestSent.mp3"})}static{this.responseReceived1=f.register({fileName:"responseReceived1.mp3"})}static{this.responseReceived2=f.register({fileName:"responseReceived2.mp3"})}static{this.responseReceived3=f.register({fileName:"responseReceived3.mp3"})}static{this.responseReceived4=f.register({fileName:"responseReceived4.mp3"})}static{this.clear=f.register({fileName:"clear.mp3"})}static{this.save=f.register({fileName:"save.mp3"})}static{this.format=f.register({fileName:"format.mp3"})}static{this.voiceRecordingStarted=f.register({fileName:"voiceRecordingStarted.mp3"})}static{this.voiceRecordingStopped=f.register({fileName:"voiceRecordingStopped.mp3"})}static{this.progress=f.register({fileName:"progress.mp3"})}static{this.chatEditModifiedFile=f.register({fileName:"chatEditModifiedFile.mp3"})}static{this.editsKept=f.register({fileName:"editsKept.mp3"})}static{this.editsUndone=f.register({fileName:"editsUndone.mp3"})}static{this.nextEditSuggestion=f.register({fileName:"nextEditSuggestion.mp3"})}static{this.terminalCommandSucceeded=f.register({fileName:"terminalCommandSucceeded.mp3"})}static{this.chatUserActionRequired=f.register({fileName:"chatUserActionRequired.mp3"})}static{this.codeActionTriggered=f.register({fileName:"codeActionTriggered.mp3"})}static{this.codeActionApplied=f.register({fileName:"codeActionApplied.mp3"})}constructor(a){this.fileName=a}}class g{constructor(a){this.randomOneOf=a}}class h{constructor(a,b,c,d,e,f,g=!1){this.sound=a,this.name=b,this.legacySoundSettingsKey=c,this.settingsKey=d,this.legacyAnnouncementSettingsKey=e,this.announcementMessage=f,this.managesOwnEnablement=g}static{this._signals=new Set}static register(a){let b=new h(new g("randomOneOf"in a.sound?a.sound.randomOneOf:[a.sound]),a.name,a.legacySoundSettingsKey,a.settingsKey,a.legacyAnnouncementSettingsKey,a.announcementMessage,a.managesOwnEnablement);return h._signals.add(b),b}static{this.errorAtPosition=h.register({name:(0,d.kg)(1630,"Error at Position"),sound:f.error,announcementMessage:(0,d.kg)(1631,"Error"),settingsKey:"accessibility.signals.positionHasError",delaySettingsKey:"accessibility.signalOptions.delays.errorAtPosition"})}static{this.warningAtPosition=h.register({name:(0,d.kg)(1632,"Warning at Position"),sound:f.warning,announcementMessage:(0,d.kg)(1633,"Warning"),settingsKey:"accessibility.signals.positionHasWarning",delaySettingsKey:"accessibility.signalOptions.delays.warningAtPosition"})}static{this.errorOnLine=h.register({name:(0,d.kg)(1634,"Error on Line"),sound:f.error,legacySoundSettingsKey:"audioCues.lineHasError",legacyAnnouncementSettingsKey:"accessibility.alert.error",announcementMessage:(0,d.kg)(1635,"Error on Line"),settingsKey:"accessibility.signals.lineHasError"})}static{this.warningOnLine=h.register({name:(0,d.kg)(1636,"Warning on Line"),sound:f.warning,legacySoundSettingsKey:"audioCues.lineHasWarning",legacyAnnouncementSettingsKey:"accessibility.alert.warning",announcementMessage:(0,d.kg)(1637,"Warning on Line"),settingsKey:"accessibility.signals.lineHasWarning"})}static{this.foldedArea=h.register({name:(0,d.kg)(1638,"Folded Area on Line"),sound:f.foldedArea,legacySoundSettingsKey:"audioCues.lineHasFoldedArea",legacyAnnouncementSettingsKey:"accessibility.alert.foldedArea",announcementMessage:(0,d.kg)(1639,"Folded"),settingsKey:"accessibility.signals.lineHasFoldedArea"})}static{this.break=h.register({name:(0,d.kg)(1640,"Breakpoint on Line"),sound:f.break,legacySoundSettingsKey:"audioCues.lineHasBreakpoint",legacyAnnouncementSettingsKey:"accessibility.alert.breakpoint",announcementMessage:(0,d.kg)(1641,"Breakpoint"),settingsKey:"accessibility.signals.lineHasBreakpoint"})}static{this.inlineSuggestion=h.register({name:(0,d.kg)(1642,"Inline Suggestion on Line"),sound:f.quickFixes,legacySoundSettingsKey:"audioCues.lineHasInlineSuggestion",settingsKey:"accessibility.signals.lineHasInlineSuggestion"})}static{this.nextEditSuggestion=h.register({name:(0,d.kg)(1643,"Next Edit Suggestion on Line"),sound:f.nextEditSuggestion,legacySoundSettingsKey:"audioCues.nextEditSuggestion",settingsKey:"accessibility.signals.nextEditSuggestion",announcementMessage:(0,d.kg)(1644,"Next Edit Suggestion")})}static{this.terminalQuickFix=h.register({name:(0,d.kg)(1645,"Terminal Quick Fix"),sound:f.quickFixes,legacySoundSettingsKey:"audioCues.terminalQuickFix",legacyAnnouncementSettingsKey:"accessibility.alert.terminalQuickFix",announcementMessage:(0,d.kg)(1646,"Quick Fix"),settingsKey:"accessibility.signals.terminalQuickFix"})}static{this.onDebugBreak=h.register({name:(0,d.kg)(1647,"Debugger Stopped on Breakpoint"),sound:f.break,legacySoundSettingsKey:"audioCues.onDebugBreak",legacyAnnouncementSettingsKey:"accessibility.alert.onDebugBreak",announcementMessage:(0,d.kg)(1648,"Breakpoint"),settingsKey:"accessibility.signals.onDebugBreak"})}static{this.noInlayHints=h.register({name:(0,d.kg)(1649,"No Inlay Hints on Line"),sound:f.error,legacySoundSettingsKey:"audioCues.noInlayHints",legacyAnnouncementSettingsKey:"accessibility.alert.noInlayHints",announcementMessage:(0,d.kg)(1650,"No Inlay Hints"),settingsKey:"accessibility.signals.noInlayHints"})}static{this.taskCompleted=h.register({name:(0,d.kg)(1651,"Task Completed"),sound:f.taskCompleted,legacySoundSettingsKey:"audioCues.taskCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.taskCompleted",announcementMessage:(0,d.kg)(1652,"Task Completed"),settingsKey:"accessibility.signals.taskCompleted"})}static{this.taskFailed=h.register({name:(0,d.kg)(1653,"Task Failed"),sound:f.taskFailed,legacySoundSettingsKey:"audioCues.taskFailed",legacyAnnouncementSettingsKey:"accessibility.alert.taskFailed",announcementMessage:(0,d.kg)(1654,"Task Failed"),settingsKey:"accessibility.signals.taskFailed"})}static{this.terminalCommandFailed=h.register({name:(0,d.kg)(1655,"Terminal Command Failed"),sound:f.error,legacySoundSettingsKey:"audioCues.terminalCommandFailed",legacyAnnouncementSettingsKey:"accessibility.alert.terminalCommandFailed",announcementMessage:(0,d.kg)(1656,"Command Failed"),settingsKey:"accessibility.signals.terminalCommandFailed"})}static{this.terminalCommandSucceeded=h.register({name:(0,d.kg)(1657,"Terminal Command Succeeded"),sound:f.terminalCommandSucceeded,announcementMessage:(0,d.kg)(1658,"Command Succeeded"),settingsKey:"accessibility.signals.terminalCommandSucceeded"})}static{this.terminalBell=h.register({name:(0,d.kg)(1659,"Terminal Bell"),sound:f.terminalBell,legacySoundSettingsKey:"audioCues.terminalBell",legacyAnnouncementSettingsKey:"accessibility.alert.terminalBell",announcementMessage:(0,d.kg)(1660,"Terminal Bell"),settingsKey:"accessibility.signals.terminalBell"})}static{this.notebookCellCompleted=h.register({name:(0,d.kg)(1661,"Notebook Cell Completed"),sound:f.taskCompleted,legacySoundSettingsKey:"audioCues.notebookCellCompleted",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellCompleted",announcementMessage:(0,d.kg)(1662,"Notebook Cell Completed"),settingsKey:"accessibility.signals.notebookCellCompleted"})}static{this.notebookCellFailed=h.register({name:(0,d.kg)(1663,"Notebook Cell Failed"),sound:f.taskFailed,legacySoundSettingsKey:"audioCues.notebookCellFailed",legacyAnnouncementSettingsKey:"accessibility.alert.notebookCellFailed",announcementMessage:(0,d.kg)(1664,"Notebook Cell Failed"),settingsKey:"accessibility.signals.notebookCellFailed"})}static{this.diffLineInserted=h.register({name:(0,d.kg)(1665,"Diff Line Inserted"),sound:f.diffLineInserted,legacySoundSettingsKey:"audioCues.diffLineInserted",settingsKey:"accessibility.signals.diffLineInserted"})}static{this.diffLineDeleted=h.register({name:(0,d.kg)(1666,"Diff Line Deleted"),sound:f.diffLineDeleted,legacySoundSettingsKey:"audioCues.diffLineDeleted",settingsKey:"accessibility.signals.diffLineDeleted"})}static{this.diffLineModified=h.register({name:(0,d.kg)(1667,"Diff Line Modified"),sound:f.diffLineModified,legacySoundSettingsKey:"audioCues.diffLineModified",settingsKey:"accessibility.signals.diffLineModified"})}static{this.chatEditModifiedFile=h.register({name:(0,d.kg)(1668,"Chat Edit Modified File"),sound:f.chatEditModifiedFile,announcementMessage:(0,d.kg)(1669,"File Modified from Chat Edits"),settingsKey:"accessibility.signals.chatEditModifiedFile"})}static{this.chatRequestSent=h.register({name:(0,d.kg)(1670,"Chat Request Sent"),sound:f.requestSent,legacySoundSettingsKey:"audioCues.chatRequestSent",legacyAnnouncementSettingsKey:"accessibility.alert.chatRequestSent",announcementMessage:(0,d.kg)(1671,"Chat Request Sent"),settingsKey:"accessibility.signals.chatRequestSent"})}static{this.chatResponseReceived=h.register({name:(0,d.kg)(1672,"Chat Response Received"),legacySoundSettingsKey:"audioCues.chatResponseReceived",sound:{randomOneOf:[f.responseReceived1,f.responseReceived2,f.responseReceived3,f.responseReceived4]},settingsKey:"accessibility.signals.chatResponseReceived"})}static{this.codeActionTriggered=h.register({name:(0,d.kg)(1673,"Code Action Request Triggered"),sound:f.codeActionTriggered,legacySoundSettingsKey:"audioCues.codeActionRequestTriggered",legacyAnnouncementSettingsKey:"accessibility.alert.codeActionRequestTriggered",announcementMessage:(0,d.kg)(1674,"Code Action Request Triggered"),settingsKey:"accessibility.signals.codeActionTriggered"})}static{this.codeActionApplied=h.register({name:(0,d.kg)(1675,"Code Action Applied"),legacySoundSettingsKey:"audioCues.codeActionApplied",sound:f.codeActionApplied,settingsKey:"accessibility.signals.codeActionApplied"})}static{this.progress=h.register({name:(0,d.kg)(1676,"Progress"),sound:f.progress,legacySoundSettingsKey:"audioCues.chatResponsePending",legacyAnnouncementSettingsKey:"accessibility.alert.progress",announcementMessage:(0,d.kg)(1677,"Progress"),settingsKey:"accessibility.signals.progress"})}static{this.clear=h.register({name:(0,d.kg)(1678,"Clear"),sound:f.clear,legacySoundSettingsKey:"audioCues.clear",legacyAnnouncementSettingsKey:"accessibility.alert.clear",announcementMessage:(0,d.kg)(1679,"Clear"),settingsKey:"accessibility.signals.clear"})}static{this.save=h.register({name:(0,d.kg)(1680,"Save"),sound:f.save,legacySoundSettingsKey:"audioCues.save",legacyAnnouncementSettingsKey:"accessibility.alert.save",announcementMessage:(0,d.kg)(1681,"Save"),settingsKey:"accessibility.signals.save"})}static{this.format=h.register({name:(0,d.kg)(1682,"Format"),sound:f.format,legacySoundSettingsKey:"audioCues.format",legacyAnnouncementSettingsKey:"accessibility.alert.format",announcementMessage:(0,d.kg)(1683,"Format"),settingsKey:"accessibility.signals.format"})}static{this.voiceRecordingStarted=h.register({name:(0,d.kg)(1684,"Voice Recording Started"),sound:f.voiceRecordingStarted,legacySoundSettingsKey:"audioCues.voiceRecordingStarted",settingsKey:"accessibility.signals.voiceRecordingStarted"})}static{this.voiceRecordingStopped=h.register({name:(0,d.kg)(1685,"Voice Recording Stopped"),sound:f.voiceRecordingStopped,legacySoundSettingsKey:"audioCues.voiceRecordingStopped",settingsKey:"accessibility.signals.voiceRecordingStopped"})}static{this.editsKept=h.register({name:(0,d.kg)(1686,"Edits Kept"),sound:f.editsKept,announcementMessage:(0,d.kg)(1687,"Edits Kept"),settingsKey:"accessibility.signals.editsKept"})}static{this.editsUndone=h.register({name:(0,d.kg)(1688,"Undo Edits"),sound:f.editsUndone,announcementMessage:(0,d.kg)(1689,"Edits Undone"),settingsKey:"accessibility.signals.editsUndone"})}static{this.chatUserActionRequired=h.register({name:(0,d.kg)(1690,"Chat User Action Required"),sound:f.chatUserActionRequired,announcementMessage:(0,d.kg)(1691,"Chat User Action Required"),settingsKey:"accessibility.signals.chatUserActionRequired"})}}},14960:(a,b,c)=>{"use strict";c.d(b,{C:()=>l,a0:()=>m,dQ:()=>k,un:()=>j});var d=c(78014);c(95091);var e=c(76631),f=c(74864),g=c(55900),h=c(87873),i=c(64834);function j(a,b,c=f.j.ofCaller()){return void 0!==b?new i.w(new g.nA(a,void 0,b),b,void 0,void 0,d.nx,c):new i.w(new g.nA(void 0,void 0,a),a,void 0,void 0,d.nx,c)}function k(a,b,c,e=f.j.ofCaller()){return new i.P(new g.nA(a,void 0,b),b,void 0,void 0,d.nx,c,e)}function l(a,b,c=f.j.ofCaller()){return new i.w(new g.nA(a.owner,a.debugName,a.debugReferenceFn),b,void 0,a.onLastObserverRemoved,a.equalsFn??d.nx,c)}function m(a,b,c=f.j.ofCaller()){let h,j,k;return void 0===b?(h=a,j=void 0):(j=a,h=b),new i.w(new g.nA(j,void 0,h),a=>{k?k.clear():k=new e.Cm;let b=h(a);return b&&k.add(b),b},void 0,()=>{k&&(k.dispose(),k=void 0)},d.nx,c)}(0,h.N2)(l)},15053:(a,b,c)=>{"use strict";let d;c.d(b,{$l:()=>h,Gs:()=>m,MB:()=>g,Sw:()=>k,bb:()=>j,gN:()=>i,mU:()=>o,pJ:()=>l});var e=c(2525);let f="u">typeof Buffer;new e.d(()=>new Uint8Array(256));class g{static wrap(a){return f&&!Buffer.isBuffer(a)&&(a=Buffer.from(a.buffer,a.byteOffset,a.byteLength)),new g(a)}constructor(a){this.buffer=a,this.byteLength=this.buffer.byteLength}toString(){return f?this.buffer.toString():(d||(d=new TextDecoder(void 0,{ignoreBOM:!0})),d.decode(this.buffer))}}function h(a,b){return a[b+0]>>>0|a[b+1]<<8>>>0}function i(a,b,c){a[c+0]=255&b,b>>>=8,a[c+1]=255&b}function j(a,b){return 0x1000000*a[b]+65536*a[b+1]+256*a[b+2]+a[b+3]}function k(a,b,c){a[c+3]=b,b>>>=8,a[c+2]=b,b>>>=8,a[c+1]=b,b>>>=8,a[c]=b}function l(a,b){return a[b]}function m(a,b,c){a[c]=b}let n="0123456789abcdef";function o({buffer:a}){let b="";for(let c=0;c<a.length;c++){let d=a[c];b+=n[d>>>4],b+=n[15&d]}return b}},15287:(a,b,c)=>{"use strict";c.d(b,{D:()=>d});class d{static capture(a){if(0===a.getScrollTop()||a.hasPendingScrollAnimation())return new d(a.getScrollTop(),a.getContentHeight(),null,0,null);let b=null,c=0,e=a.getVisibleRanges();if(e.length>0){b=e[0].getStartPosition();let d=a.getTopForPosition(b.lineNumber,b.column);c=a.getScrollTop()-d}return new d(a.getScrollTop(),a.getContentHeight(),b,c,a.getPosition())}constructor(a,b,c,d,e){this._initialScrollTop=a,this._initialContentHeight=b,this._visiblePosition=c,this._visiblePositionScrollDelta=d,this._cursorPosition=e}restore(a){if((this._initialContentHeight!==a.getContentHeight()||this._initialScrollTop!==a.getScrollTop())&&this._visiblePosition){let b=a.getTopForPosition(this._visiblePosition.lineNumber,this._visiblePosition.column);a.setScrollTop(b+this._visiblePositionScrollDelta)}}restoreRelativeVerticalPositionOfCursor(a){if(this._initialContentHeight===a.getContentHeight()&&this._initialScrollTop===a.getScrollTop())return;let b=a.getPosition();if(!this._cursorPosition||!b)return;let c=a.getTopForLineNumber(b.lineNumber)-a.getTopForLineNumber(this._cursorPosition.lineNumber);a.setScrollTop(a.getScrollTop()+c,1)}}},15486:()=>{},15857:(a,b,c)=>{"use strict";c.d(b,{Ix:()=>l,bc:()=>j,nV:()=>k});var d=c(54588),e=c(33040),f=c(72816);let g=(0,f.kg)(2,"Match Case"),h=(0,f.kg)(3,"Match Whole Word"),i=(0,f.kg)(4,"Use Regular Expression");class j extends d.lM{constructor(a){super({icon:e.W.caseSensitive,title:g+a.appendTitle,isChecked:a.isChecked,hoverLifecycleOptions:a.hoverLifecycleOptions,inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}class k extends d.lM{constructor(a){super({icon:e.W.wholeWord,title:h+a.appendTitle,isChecked:a.isChecked,hoverLifecycleOptions:a.hoverLifecycleOptions,inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}class l extends d.lM{constructor(a){super({icon:e.W.regex,title:i+a.appendTitle,isChecked:a.isChecked,hoverLifecycleOptions:a.hoverLifecycleOptions,inputActiveOptionBorder:a.inputActiveOptionBorder,inputActiveOptionForeground:a.inputActiveOptionForeground,inputActiveOptionBackground:a.inputActiveOptionBackground})}}},16202:(a,b,c)=>{"use strict";c.d(b,{JZ:()=>E,Cw:()=>I});var d=c(95091),e=c(76631),f=c(26529),g=c(57615),h=c(97195);class i{static{this.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES=";:.,=}])> \n "}static{this.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS="'\"`;:.,=}])> \n "}constructor(a){if(a.autoClosingPairs?this._autoClosingPairs=a.autoClosingPairs.map(a=>new h.i3(a)):a.brackets?this._autoClosingPairs=a.brackets.map(a=>new h.i3({open:a[0],close:a[1]})):this._autoClosingPairs=[],a.__electricCharacterSupport&&a.__electricCharacterSupport.docComment){const b=a.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new h.i3({open:b.open,close:b.close||""}))}this._autoCloseBeforeForQuotes="string"==typeof a.autoCloseBefore?a.autoCloseBefore:i.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_QUOTES,this._autoCloseBeforeForBrackets="string"==typeof a.autoCloseBefore?a.autoCloseBefore:i.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED_BRACKETS,this._surroundingPairs=a.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(a){return a?this._autoCloseBeforeForQuotes:this._autoCloseBeforeForBrackets}getSurroundingPairs(){return this._surroundingPairs}}var j=c(81309),k=c(99807),l=c(89665);class m{constructor(a){this._richEditBrackets=a}getElectricCharacters(){let a=[];if(this._richEditBrackets)for(let b of this._richEditBrackets.brackets)for(let c of b.close){let b=c.charAt(c.length-1);a.push(b)}return(0,j.dM)(a)}onElectricCharacter(a,b,c){if(!this._richEditBrackets||0===this._richEditBrackets.brackets.length)return null;let d=b.findTokenIndexAtOffset(c-1);if((0,k.Yo)(b.getStandardTokenType(d)))return null;let e=this._richEditBrackets.reversedRegex,f=b.getLineContent().substring(0,c-1)+a,g=l.Fu.findPrevBracketInRange(e,1,f,0,f.length);if(!g)return null;let h=f.substring(g.startColumn-1,g.endColumn-1).toLowerCase();if(this._richEditBrackets.textIsOpenBracket[h])return null;let i=b.getActualLineContentBefore(g.startColumn-1);return/^\s*$/.test(i)?{matchOpenBracket:h}:null}}function n(a){return a.global&&(a.lastIndex=0),!0}class o{constructor(a){this._indentationRules=a}shouldIncrease(a){return!!(this._indentationRules&&this._indentationRules.increaseIndentPattern&&n(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(a))}shouldDecrease(a){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&n(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(a))}shouldIndentNextLine(a){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&n(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(a))}shouldIgnore(a){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&n(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(a))}getIndentMetadata(a){let b=0;return this.shouldIncrease(a)&&(b+=1),this.shouldDecrease(a)&&(b+=2),this.shouldIndentNextLine(a)&&(b+=4),this.shouldIgnore(a)&&(b+=8),b}}var p=c(66036);class q{constructor(a){(a=a||{}).brackets=a.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],a.brackets.forEach(a=>{let b=q._createOpenBracketRegExp(a[0]),c=q._createCloseBracketRegExp(a[1]);b&&c&&this._brackets.push({open:a[0],openRegExp:b,close:a[1],closeRegExp:c})}),this._regExpRules=a.onEnterRules||[]}onEnter(a,b,c,d){if(a>=3)for(let a=0,e=this._regExpRules.length;a<e;a++){let e=this._regExpRules[a];if([{reg:e.beforeText,text:c},{reg:e.afterText,text:d},{reg:e.previousLineText,text:b}].every(a=>!a.reg||(a.reg.lastIndex=0,a.reg.test(a.text))))return e.action}if(a>=2&&c.length>0&&d.length>0)for(let a=0,b=this._brackets.length;a<b;a++){let b=this._brackets[a];if(b.openRegExp.test(c)&&b.closeRegExp.test(d))return{indentAction:h.l.IndentOutdent}}if(a>=2&&c.length>0){for(let a=0,b=this._brackets.length;a<b;a++)if(this._brackets[a].openRegExp.test(c))return{indentAction:h.l.Indent}}return null}static _createOpenBracketRegExp(a){let b=(0,f.bm)(a);return/\B/.test(b.charAt(0))||(b="\\b"+b),b+="\\s*$",q._safeRegExp(b)}static _createCloseBracketRegExp(a){let b=(0,f.bm)(a);return/\B/.test(b.charAt(b.length-1))||(b+="\\b"),b="^\\s*"+b,q._safeRegExp(b)}static _safeRegExp(a){try{return new RegExp(a)}catch(a){return(0,p.dz)(a),null}}}var r=c(58254),s=c(7092),t=c(81325),u=c(55241),v=c(86444),w=c(57773);class x{constructor(a,b){this.languageId=a;const c=b.brackets?y(b.brackets):[],d=new w.VV(a=>{let b=new Set;return{info:new A(this,a,b),closing:b}}),e=new w.VV(a=>{let b=new Set,c=new Set;return{info:new B(this,a,b,c),opening:b,openingColorized:c}});for(const[a,b]of c){const c=d.get(a),f=e.get(b);c.closing.add(f.info),f.opening.add(c.info)}for(const[a,f]of b.colorizedBracketPairs?y(b.colorizedBracketPairs):c.filter(a=>"<"!==a[0]||">"!==a[1])){const b=d.get(a),c=e.get(f);b.closing.add(c.info),c.openingColorized.add(b.info),c.opening.add(b.info)}this._openingBrackets=new Map([...d.cachedValues].map(([a,b])=>[a,b.info])),this._closingBrackets=new Map([...e.cachedValues].map(([a,b])=>[a,b.info]))}get openingBrackets(){return[...this._openingBrackets.values()]}get closingBrackets(){return[...this._closingBrackets.values()]}getOpeningBracketInfo(a){return this._openingBrackets.get(a)}getClosingBracketInfo(a){return this._closingBrackets.get(a)}getBracketInfo(a){return this.getOpeningBracketInfo(a)||this.getClosingBracketInfo(a)}getBracketRegExp(a){let b=Array.from([...this._openingBrackets.keys(),...this._closingBrackets.keys()]);return(0,l.xb)(b,a)}}function y(a){return a.filter(([a,b])=>""!==a&&""!==b)}class z{constructor(a,b){this.config=a,this.bracketText=b}get languageId(){return this.config.languageId}}class A extends z{constructor(a,b,c){super(a,b),this.openedBrackets=c,this.isOpeningBracket=!0}}class B extends z{constructor(a,b,c,d){super(a,b),this.openingBrackets=c,this.openingColorizedBrackets=d,this.isOpeningBracket=!1}closes(a){return a.config===this.config&&this.openingBrackets.has(a)}closesColorized(a){return a.config===this.config&&this.openingColorizedBrackets.has(a)}getOpeningBrackets(){return[...this.openingBrackets]}}var C=function(a,b){return function(c,d){b(c,d,a)}};class D{constructor(a){this.languageId=a}affects(a){return!this.languageId||this.languageId===a}}let E=(0,r.u1)("languageConfigurationService"),F=class extends e.jG{constructor(a,b){super(),this.configurationService=a,this.languageService=b,this._registry=this._register(new N),this.onDidChangeEmitter=this._register(new d.vl),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const c=new Set(Object.values(G));this._register(this.configurationService.onDidChangeConfiguration(a=>{let b=a.change.keys.some(a=>c.has(a)),d=a.change.overrides.filter(([a,b])=>b.some(a=>c.has(a))).map(([a])=>a);if(b)this.configurations.clear(),this.onDidChangeEmitter.fire(new D(void 0));else for(let a of d)this.languageService.isRegisteredLanguageId(a)&&(this.configurations.delete(a),this.onDidChangeEmitter.fire(new D(a)))})),this._register(this._registry.onDidChange(a=>{this.configurations.delete(a.languageId),this.onDidChangeEmitter.fire(new D(a.languageId))}))}register(a,b,c){return this._registry.register(a,b,c)}getLanguageConfiguration(a){let b=this.configurations.get(a);return b||(b=function(a,b,c,d){var e,f;let g,h,i=b.getLanguageConfiguration(a);if(!i){if(!d.isRegisteredLanguageId(a))return new O(a,{});i=new O(a,{})}let j=(e=i.languageId,g=(f=c).getValue(G.brackets,{overrideIdentifier:e}),h=f.getValue(G.colorizedBracketPairs,{overrideIdentifier:e}),{brackets:H(g),colorizedBracketPairs:H(h)}),k=K([i.underlyingConfig,j]);return new O(i.languageId,k)}(a,this._registry,this.configurationService,this.languageService),this.configurations.set(a,b)),b}};F=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([C(0,s.pG),C(1,t.L)],F);let G={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function H(a){if(Array.isArray(a))return a.map(a=>{if(Array.isArray(a)&&2===a.length)return[a[0],a[1]]}).filter(a=>!!a)}function I(a,b,c){let d=a.getLineContent(b),e=(0,f.UU)(d);return e.length>c-1&&(e=e.substring(0,c-1)),e}class J{constructor(a){this.languageId=a,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(a,b){let c=new L(a,b,++this._order);return this._entries.push(c),this._resolved=null,(0,e.lC)((0,e.s)(()=>{for(let a=0;a<this._entries.length;a++)if(this._entries[a]===c){this._entries.splice(a,1),this._resolved=null;break}}))}getResolvedConfiguration(){if(!this._resolved){let a=this._resolve();a&&(this._resolved=new O(this.languageId,a))}return this._resolved}_resolve(){return 0===this._entries.length?null:(this._entries.sort(L.cmp),K(this._entries.map(a=>a.configuration)))}}function K(a){let b={comments:void 0,brackets:void 0,wordPattern:void 0,indentationRules:void 0,onEnterRules:void 0,autoClosingPairs:void 0,surroundingPairs:void 0,autoCloseBefore:void 0,folding:void 0,colorizedBracketPairs:void 0,__electricCharacterSupport:void 0};for(let c of a)b={comments:c.comments||b.comments,brackets:c.brackets||b.brackets,wordPattern:c.wordPattern||b.wordPattern,indentationRules:c.indentationRules||b.indentationRules,onEnterRules:c.onEnterRules||b.onEnterRules,autoClosingPairs:c.autoClosingPairs||b.autoClosingPairs,surroundingPairs:c.surroundingPairs||b.surroundingPairs,autoCloseBefore:c.autoCloseBefore||b.autoCloseBefore,folding:c.folding||b.folding,colorizedBracketPairs:c.colorizedBracketPairs||b.colorizedBracketPairs,__electricCharacterSupport:c.__electricCharacterSupport||b.__electricCharacterSupport};return b}class L{constructor(a,b,c){this.configuration=a,this.priority=b,this.order=c}static cmp(a,b){return a.priority===b.priority?a.order-b.order:a.priority-b.priority}}class M{constructor(a){this.languageId=a}}class N extends e.jG{constructor(){super(),this._entries=new Map,this._onDidChange=this._register(new d.vl),this.onDidChange=this._onDidChange.event,this._register(this.register(v.vH,{brackets:[["(",")"],["[","]"],["{","}"]],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:"<",close:">"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:!0}},0))}register(a,b,c=0){let d=this._entries.get(a);d||(d=new J(a),this._entries.set(a,d));let f=d.register(b,c);return this._onDidChange.fire(new M(a)),(0,e.lC)((0,e.s)(()=>{f.dispose(),this._onDidChange.fire(new M(a))}))}getLanguageConfiguration(a){let b=this._entries.get(a);return b?.getResolvedConfiguration()||null}}class O{constructor(a,b){this.languageId=a,this.underlyingConfig=b,this._brackets=null,this._electricCharacter=null,this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new q(this.underlyingConfig):null,this.comments=O._handleComments(this.underlyingConfig),this.characterPair=new i(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||g.Ld,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new o(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{},this.bracketsNew=new x(a,this.underlyingConfig)}getWordDefinition(){return(0,g.Io)(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new l.az(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new m(this.brackets)),this._electricCharacter}onEnter(a,b,c,d){return this._onEnterSupport?this._onEnterSupport.onEnter(a,b,c,d):null}getAutoClosingPairs(){return new h.GB(this.characterPair.getAutoClosingPairs())}getAutoCloseBeforeSet(a){return this.characterPair.getAutoCloseBeforeSet(a)}getSurroundingPairs(){return this.characterPair.getSurroundingPairs()}static _handleComments(a){let b=a.comments;if(!b)return null;let c={};if(b.lineComment&&("string"==typeof b.lineComment?c.lineCommentToken=b.lineComment:(c.lineCommentToken=b.lineComment.comment,c.lineCommentNoIndent=b.lineComment.noIndent)),b.blockComment){let[a,d]=b.blockComment;c.blockCommentStartToken=a,c.blockCommentEndToken=d}return c}}(0,u.v)(E,F,1)},16240:(a,b,c)=>{"use strict";c.d(b,{U:()=>f});var d=c(95091);class e{constructor(){this._inputMode="insert",this._onDidChangeInputMode=new d.vl,this.onDidChangeInputMode=this._onDidChangeInputMode.event}getInputMode(){return this._inputMode}}let f=new e},16794:(a,b,c)=>{"use strict";c.d(b,{b:()=>d});let d=(0,c(58254).u1)("keybindingService")},17577:(a,b,c)=>{"use strict";var d,e,f;c.d(b,{QO:()=>o,cO:()=>m,db:()=>n,fT:()=>h,qK:()=>l,rm:()=>i});class g{constructor(a,b){this.uri=a,this.value=b}}class h{static{this.defaultToKey=a=>a.toString()}constructor(a,b){if(this[d]="ResourceMap",a instanceof h)this.map=new Map(a.map),this.toKey=b??h.defaultToKey;else if(function(a){return Array.isArray(a)}(a))for(const[c,d]of(this.map=new Map,this.toKey=b??h.defaultToKey,a))this.set(c,d);else this.map=new Map,this.toKey=a??h.defaultToKey}set(a,b){return this.map.set(this.toKey(a),new g(a,b)),this}get(a){return this.map.get(this.toKey(a))?.value}has(a){return this.map.has(this.toKey(a))}get size(){return this.map.size}clear(){this.map.clear()}delete(a){return this.map.delete(this.toKey(a))}forEach(a,b){for(let[c,d]of(void 0!==b&&(a=a.bind(b)),this.map))a(d.value,d.uri,this)}*values(){for(let a of this.map.values())yield a.value}*keys(){for(let a of this.map.values())yield a.uri}*entries(){for(let a of this.map.values())yield[a.uri,a.value]}*[(d=Symbol.toStringTag,Symbol.iterator)](){for(let[,a]of this.map)yield[a.uri,a.value]}}class i{constructor(a,b){this[e]="ResourceSet",a&&"function"!=typeof a?(this._map=new h(b),a.forEach(this.add,this)):this._map=new h(a)}get size(){return this._map.size}add(a){return this._map.set(a,a),this}clear(){this._map.clear()}delete(a){return this._map.delete(a)}forEach(a,b){this._map.forEach((c,d)=>a.call(b,d,d,this))}has(a){return this._map.has(a)}entries(){return this._map.entries()}keys(){return this._map.keys()}values(){return this._map.keys()}[(e=Symbol.toStringTag,Symbol.iterator)](){return this.keys()}}class j{constructor(){this[f]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(a){return this._map.has(a)}get(a,b=0){let c=this._map.get(a);if(c)return 0!==b&&this.touch(c,b),c.value}set(a,b,c=0){let d=this._map.get(a);if(d)d.value=b,0!==c&&this.touch(d,c);else{switch(d={key:a,value:b,next:void 0,previous:void 0},c){case 0:case 2:default:this.addItemLast(d);break;case 1:this.addItemFirst(d)}this._map.set(a,d),this._size++}return this}delete(a){return!!this.remove(a)}remove(a){let b=this._map.get(a);if(b)return this._map.delete(a),this.removeItem(b),this._size--,b.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw Error("Invalid list");let a=this._head;return this._map.delete(a.key),this.removeItem(a),this._size--,a.value}forEach(a,b){let c=this._state,d=this._head;for(;d;){if(b?a.bind(b)(d.value,d.key,this):a(d.value,d.key,this),this._state!==c)throw Error("LinkedMap got modified during iteration.");d=d.next}}keys(){let a=this,b=this._state,c=this._head,d={[Symbol.iterator]:()=>d,[Symbol.dispose](){},next(){if(a._state!==b)throw Error("LinkedMap got modified during iteration.");if(!c)return{value:void 0,done:!0};{let a={value:c.key,done:!1};return c=c.next,a}}};return d}values(){let a=this,b=this._state,c=this._head,d={[Symbol.iterator]:()=>d,[Symbol.dispose](){},next(){if(a._state!==b)throw Error("LinkedMap got modified during iteration.");if(!c)return{value:void 0,done:!0};{let a={value:c.value,done:!1};return c=c.next,a}}};return d}entries(){let a=this,b=this._state,c=this._head,d={[Symbol.iterator]:()=>d,[Symbol.dispose](){},next(){if(a._state!==b)throw Error("LinkedMap got modified during iteration.");if(!c)return{value:void 0,done:!0};{let a={value:[c.key,c.value],done:!1};return c=c.next,a}}};return d}[(f=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(a){if(a>=this.size)return;if(0===a)return void this.clear();let b=this._head,c=this.size;for(;b&&c>a;)this._map.delete(b.key),b=b.next,c--;this._head=b,this._size=c,b&&(b.previous=void 0),this._state++}trimNew(a){if(a>=this.size)return;if(0===a)return void this.clear();let b=this._tail,c=this.size;for(;b&&c>a;)this._map.delete(b.key),b=b.previous,c--;this._tail=b,this._size=c,b&&(b.next=void 0),this._state++}addItemFirst(a){if(this._head||this._tail)if(this._head)a.next=this._head,this._head.previous=a;else throw Error("Invalid list");else this._tail=a;this._head=a,this._state++}addItemLast(a){if(this._head||this._tail)if(this._tail)a.previous=this._tail,this._tail.next=a;else throw Error("Invalid list");else this._head=a;this._tail=a,this._state++}removeItem(a){if(a===this._head&&a===this._tail)this._head=void 0,this._tail=void 0;else if(a===this._head){if(!a.next)throw Error("Invalid list");a.next.previous=void 0,this._head=a.next}else if(a===this._tail){if(!a.previous)throw Error("Invalid list");a.previous.next=void 0,this._tail=a.previous}else{let b=a.next,c=a.previous;if(!b||!c)throw Error("Invalid list");b.previous=c,c.next=b}a.next=void 0,a.previous=void 0,this._state++}touch(a,b){if(!this._head||!this._tail)throw Error("Invalid list");if(1===b||2===b){if(1===b){if(a===this._head)return;let b=a.next,c=a.previous;a===this._tail?(c.next=void 0,this._tail=c):(b.previous=c,c.next=b),a.previous=void 0,a.next=this._head,this._head.previous=a,this._head=a,this._state++}else if(2===b){if(a===this._tail)return;let b=a.next,c=a.previous;a===this._head?(b.previous=void 0,this._head=b):(b.previous=c,c.next=b),a.next=void 0,a.previous=this._tail,this._tail.next=a,this._tail=a,this._state++}}}toJSON(){let a=[];return this.forEach((b,c)=>{a.push([c,b])}),a}fromJSON(a){for(let[b,c]of(this.clear(),a))this.set(b,c)}}class k extends j{constructor(a,b=1){super(),this._limit=a,this._ratio=Math.min(Math.max(0,b),1)}get limit(){return this._limit}set limit(a){this._limit=a,this.checkTrim()}get(a,b=2){return super.get(a,b)}peek(a){return super.get(a,0)}set(a,b){return super.set(a,b,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class l extends k{constructor(a,b=1){super(a,b)}trim(a){this.trimOld(a)}set(a,b){return super.set(a,b),this.checkTrim(),this}}class m{constructor(a){if(this._m1=new Map,this._m2=new Map,a)for(const[b,c]of a)this.set(b,c)}clear(){this._m1.clear(),this._m2.clear()}set(a,b){this._m1.set(a,b),this._m2.set(b,a)}get(a){return this._m1.get(a)}getKey(a){return this._m2.get(a)}delete(a){let b=this._m1.get(a);return void 0!==b&&(this._m1.delete(a),this._m2.delete(b),!0)}keys(){return this._m1.keys()}values(){return this._m1.values()}}class n{constructor(){this.map=new Map}add(a,b){let c=this.map.get(a);c||(c=new Set,this.map.set(a,c)),c.add(b)}delete(a,b){let c=this.map.get(a);c&&(c.delete(b),0===c.size&&this.map.delete(a))}forEach(a,b){let c=this.map.get(a);c&&c.forEach(b)}}class o{constructor(){this._data=new Map}set(a,...b){let c=this._data;for(let a=0;a<b.length-1;a++){let d=c.get(b[a]);void 0===d&&(d=new Map,c.set(b[a],d)),c=d}c.set(b[b.length-1],a)}get(...a){let b=this._data;for(let c=0;c<a.length-1;c++){let d=b.get(a[c]);if(void 0===d)return;b=d}return b.get(a[a.length-1])}clear(){this._data.clear()}toString(){let a=(b,c)=>{let d="";for(let[e,f]of b)d+=`${" ".repeat(c)}${e}: `,f instanceof Map?d+="\n"+a(f,c+1):d+=`${f}
|
|
2
2
|
`;return d};return a(this._data,0)}}},18216:(a,b,c)=>{"use strict";let d,e;c.d(b,{Fr:()=>y,H8:()=>H,HZ:()=>v,OS:()=>D,UP:()=>K,_p:()=>C,cm:()=>G,gm:()=>I,iD:()=>z,ib:()=>u,j9:()=>t,lg:()=>w,m0:()=>L,nr:()=>J,ti:()=>g,uF:()=>r,un:()=>x,zx:()=>s});var f=c(72816);let g="en",h=!1,i=!1,j=!1,k=!1,l=!1,m=!1,n=!1,o=globalThis;void 0!==o.vscode&&void 0!==o.vscode.process?e=o.vscode.process:"u">typeof process&&"string"==typeof process?.versions?.node&&(e=process);let p="string"==typeof e?.versions?.electron&&e?.type==="renderer";if("object"==typeof e){h="win32"===e.platform,i="darwin"===e.platform,(j="linux"===e.platform)&&e.env.SNAP&&e.env.SNAP_REVISION,e.env.CI||e.env.BUILD_ARTIFACTSTAGINGDIRECTORY||e.env.GITHUB_WORKSPACE;let a=e.env.VSCODE_NLS_CONFIG;if(a)try{let b=JSON.parse(a);b.userLocale,b.osLocale,b.resolvedLanguage,b.languagePack?.translationsConfigFile}catch(a){}k=!0}else"object"!=typeof navigator||p?console.error("Unable to resolve platform."):(h=(d=navigator.userAgent).indexOf("Windows")>=0,i=d.indexOf("Macintosh")>=0,m=(d.indexOf("Macintosh")>=0||d.indexOf("iPad")>=0||d.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0,j=d.indexOf("Linux")>=0,n=d?.indexOf("Mobi")>=0,l=!0,(0,f.i8)(),navigator.language.toLowerCase());let q=0;i?q=1:h?q=3:j&&(q=2);let r=h,s=i,t=j,u=k,v=l,w=l&&"function"==typeof o.importScripts?o.origin:void 0,x=m,y=n,z=q,A=d,B="function"==typeof o.postMessage&&!o.importScripts,C=(()=>{if(B){let a=[];o.addEventListener("message",b=>{if(b.data&&b.data.vscodeScheduleAsyncWork)for(let c=0,d=a.length;c<d;c++){let d=a[c];if(d.id===b.data.vscodeScheduleAsyncWork){a.splice(c,1),d.callback();return}}});let b=0;return c=>{let d=++b;a.push({id:d,callback:c}),o.postMessage({vscodeScheduleAsyncWork:d},"*")}}return a=>setTimeout(a)})(),D=i||m?2:h?1:3,E=!0,F=!1;function G(){if(!F){F=!0;let a=new Uint8Array(2);a[0]=1,a[1]=2,E=513===new Uint16Array(a.buffer)[0]}return E}let H=!!(A&&A.indexOf("Chrome")>=0),I=!!(A&&A.indexOf("Firefox")>=0),J=!!(!H&&A&&A.indexOf("Safari")>=0),K=!!(A&&A.indexOf("Edg/")>=0),L=!!(A&&A.indexOf("Android")>=0)},18530:(a,b,c)=>{"use strict";c.d(b,{A:()=>e});var d=c(26529);class e{static _nextVisibleColumn(a,b,c){return 9===a?e.nextRenderTabStop(b,c):(0,d.ne)(a)||(0,d.Ss)(a)?b+2:b+1}static visibleColumnFromColumn(a,b,c){let e=Math.min(b-1,a.length),f=a.substring(0,e),g=new d.km(f),h=0;for(;!g.eol();){let a=(0,d.Z5)(f,e,g.offset);g.nextGraphemeLength(),h=this._nextVisibleColumn(a,h,c)}return h}static columnFromVisibleColumn(a,b,c){if(b<=0)return 1;let e=a.length,f=new d.km(a),g=0,h=1;for(;!f.eol();){let i=(0,d.Z5)(a,e,f.offset);f.nextGraphemeLength();let j=this._nextVisibleColumn(i,g,c),k=f.offset+1;if(j>=b){let a=b-g;if(j-b<a)return k;return h}g=j,h=k}return e+1}static nextRenderTabStop(a,b){return a+b-a%b}static nextIndentTabStop(a,b){return e.nextRenderTabStop(a,b)}static prevRenderTabStop(a,b){return Math.max(0,a-1-(a-1)%b)}static prevIndentTabStop(a,b){return e.prevRenderTabStop(a,b)}}},18663:(a,b,c)=>{"use strict";c.d(b,{Yj:()=>i,s0:()=>j});var d=c(26529),e=c(91324),f=c(36036),g=c(45719);let h={getInitialState:()=>g.r3,tokenizeEncoded:(a,b,c)=>(0,g.Lh)(0,c)};async function i(a,b,c){if(!c)return k(b,a.languageIdCodec,h);let d=await f.dG.getOrCreate(c);return k(b,a.languageIdCodec,d||h)}function j(a,b,c,e,f,g,h){let i="<div>",j=0,k=0,l=!0;for(let m=0,n=b.getCount();m<n;m++){let n=b.getEndOffset(m),o="";for(;j<n&&j<f;j++){let b=a.charCodeAt(j),c=9===b;if(k+=(0,d.ne)(b)?2:+!c,j<e){if(c){let a=k%g;k+=0===a?g:g-a}continue}switch(b){case 9:{let a=k%g,b=0===a?g:g-a;k+=b;let c=b;for(;c>0;)h&&l?(o+=" ",l=!1):(o+=" ",l=!0),c--;break}case 60:o+="<",l=!1;break;case 62:o+=">",l=!1;break;case 38:o+="&",l=!1;break;case 0:o+="�",l=!1;break;case 65279:case 8232:case 8233:case 133:o+="�",l=!1;break;case 13:o+="​",l=!1;break;case 32:h&&l?(o+=" ",l=!1):(o+=" ",l=!0);break;default:o+=String.fromCharCode(b),l=!1}}if(!(n<=e)&&(i+=`<span style="${b.getInlineStyle(m,c)}">${o}</span>`,n>f||j>=f||e>=f))break}return i+"</div>"}function k(a,b,c){let f='<div class="monaco-tokenized-source">',g=(0,d.uz)(a),h=c.getInitialState();for(let a=0,i=g.length;a<i;a++){let i=g[a];a>0&&(f+="<br/>");let j=c.tokenizeEncoded(i,!0,h);e.f7.convertToEndOffset(j.tokens,i.length);let k=new e.f7(j.tokens,i,b).inflate(),l=0;for(let a=0,b=k.getCount();a<b;a++){let b=k.getClassName(a),c=k.getEndOffset(a);f+=`<span class="${b}">${(0,d.ih)(i.substring(l,c))}</span>`,l=c}h=j.endState}return f+"</div>"}},18889:()=>{},18896:(a,b,c)=>{"use strict";c.d(b,{$$:()=>p,C1:()=>v,C5:()=>V,G_:()=>D,HD:()=>Y,Hc:()=>C,I$:()=>q,In:()=>I,Ip:()=>O,L4:()=>j,L9:()=>r,Oc:()=>T,Q1:()=>E,Qf:()=>_,T5:()=>u,T9:()=>G,Tm:()=>K,UL:()=>t,Uk:()=>N,Uv:()=>W,XJ:()=>F,YS:()=>s,ZB:()=>R,Zg:()=>l,_$:()=>w,c1:()=>o,cw:()=>k,eU:()=>Z,eY:()=>y,h9:()=>x,hs:()=>X,jO:()=>M,jr:()=>S,kP:()=>P,lW:()=>A,nZ:()=>L,r:()=>H,rv:()=>z,t0:()=>U,uN:()=>m,xO:()=>J,xW:()=>Q,yq:()=>B,zU:()=>$});var d=c(72816),e=c(55404),f=c(37327),g=c(34183),h=c(11023),i=c(91018);let j=(0,f.x1)("input.background",{dark:"#3C3C3C",light:e.Q1.white,hcDark:e.Q1.black,hcLight:e.Q1.white},(0,d.kg)(1960,"Input box background.")),k=(0,f.x1)("input.foreground",g.CU,(0,d.kg)(1961,"Input box foreground.")),l=(0,f.x1)("input.border",{dark:null,light:null,hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1962,"Input box border.")),m=(0,f.x1)("inputOption.activeBorder",{dark:"#007ACC",light:"#007ACC",hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1963,"Border color of activated options in input fields.")),n=(0,f.x1)("inputOption.hoverBackground",{dark:"#5a5d5e80",light:"#b8b8b850",hcDark:null,hcLight:null},(0,d.kg)(1964,"Background color of activated options in input fields.")),o=(0,f.x1)("inputOption.activeBackground",{dark:(0,f.JO)(g.tA,.4),light:(0,f.JO)(g.tA,.2),hcDark:e.Q1.transparent,hcLight:e.Q1.transparent},(0,d.kg)(1965,"Background hover color of options in input fields.")),p=(0,f.x1)("inputOption.activeForeground",{dark:e.Q1.white,light:e.Q1.black,hcDark:g.CU,hcLight:g.CU},(0,d.kg)(1966,"Foreground color of activated options in input fields."));(0,f.x1)("input.placeholderForeground",{light:(0,f.JO)(g.CU,.5),dark:(0,f.JO)(g.CU,.5),hcDark:(0,f.JO)(g.CU,.7),hcLight:(0,f.JO)(g.CU,.7)},(0,d.kg)(1967,"Input box foreground color for placeholder text."));let q=(0,f.x1)("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hcDark:e.Q1.black,hcLight:e.Q1.white},(0,d.kg)(1968,"Input validation background color for information severity.")),r=(0,f.x1)("inputValidation.infoForeground",{dark:null,light:null,hcDark:null,hcLight:g.CU},(0,d.kg)(1969,"Input validation foreground color for information severity.")),s=(0,f.x1)("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1970,"Input validation border color for information severity.")),t=(0,f.x1)("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hcDark:e.Q1.black,hcLight:e.Q1.white},(0,d.kg)(1971,"Input validation background color for warning severity.")),u=(0,f.x1)("inputValidation.warningForeground",{dark:null,light:null,hcDark:null,hcLight:g.CU},(0,d.kg)(1972,"Input validation foreground color for warning severity.")),v=(0,f.x1)("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1973,"Input validation border color for warning severity.")),w=(0,f.x1)("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hcDark:e.Q1.black,hcLight:e.Q1.white},(0,d.kg)(1974,"Input validation background color for error severity.")),x=(0,f.x1)("inputValidation.errorForeground",{dark:null,light:null,hcDark:null,hcLight:g.CU},(0,d.kg)(1975,"Input validation foreground color for error severity.")),y=(0,f.x1)("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1976,"Input validation border color for error severity.")),z=(0,f.x1)("dropdown.background",{dark:"#3C3C3C",light:e.Q1.white,hcDark:e.Q1.black,hcLight:e.Q1.white},(0,d.kg)(1977,"Dropdown background.")),A=(0,f.x1)("dropdown.listBackground",{dark:null,light:null,hcDark:e.Q1.black,hcLight:e.Q1.white},(0,d.kg)(1978,"Dropdown list background.")),B=(0,f.x1)("dropdown.foreground",{dark:"#F0F0F0",light:g.CU,hcDark:e.Q1.white,hcLight:g.CU},(0,d.kg)(1979,"Dropdown foreground.")),C=(0,f.x1)("dropdown.border",{dark:z,light:"#CECECE",hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1980,"Dropdown border.")),D=(0,f.x1)("button.foreground",e.Q1.white,(0,d.kg)(1981,"Button foreground color.")),E=(0,f.x1)("button.separator",(0,f.JO)(D,.4),(0,d.kg)(1982,"Button separator color.")),F=(0,f.x1)("button.background",{dark:"#0E639C",light:"#007ACC",hcDark:e.Q1.black,hcLight:"#0F4A85"},(0,d.kg)(1983,"Button background color.")),G=(0,f.x1)("button.hoverBackground",{dark:(0,f.a)(F,.2),light:(0,f.e$)(F,.2),hcDark:F,hcLight:F},(0,d.kg)(1984,"Button background color when hovering.")),H=(0,f.x1)("button.border",g.b1,(0,d.kg)(1985,"Button border color.")),I=(0,f.x1)("button.secondaryForeground",{dark:g.CU,light:g.CU,hcDark:e.Q1.white,hcLight:g.CU},(0,d.kg)(1986,"Secondary button foreground color.")),J=(0,f.x1)("button.secondaryBackground",{dark:i.lO,light:i.lO,hcDark:null,hcLight:e.Q1.white},(0,d.kg)(1987,"Secondary button background color.")),K=(0,f.x1)("button.secondaryBorder",{dark:(0,f.JO)(g.CU,.15),light:(0,f.JO)(g.CU,.15),hcDark:g.b1,hcLight:g.b1},(0,d.kg)(1988,"Secondary button border color.")),L=(0,f.x1)("button.secondaryHoverBackground",{dark:(0,f.a)(i.lO,.2),light:(0,f.a)(i.lO,.2),hcDark:null,hcLight:null},(0,d.kg)(1989,"Secondary button background color when hovering.")),M=(0,f.x1)("radio.activeForeground",p,(0,d.kg)(1990,"Foreground color of active radio option.")),N=(0,f.x1)("radio.activeBackground",o,(0,d.kg)(1991,"Background color of active radio option.")),O=(0,f.x1)("radio.activeBorder",m,(0,d.kg)(1992,"Border color of the active radio option.")),P=(0,f.x1)("radio.inactiveForeground",null,(0,d.kg)(1993,"Foreground color of inactive radio option.")),Q=(0,f.x1)("radio.inactiveBackground",null,(0,d.kg)(1994,"Background color of inactive radio option.")),R=(0,f.x1)("radio.inactiveBorder",{light:(0,f.JO)(M,.2),dark:(0,f.JO)(M,.2),hcDark:(0,f.JO)(M,.4),hcLight:(0,f.JO)(M,.2)},(0,d.kg)(1995,"Border color of the inactive radio option.")),S=(0,f.x1)("radio.inactiveHoverBackground",n,(0,d.kg)(1996,"Background color of inactive active radio option when hovering.")),T=(0,f.x1)("checkbox.background",z,(0,d.kg)(1997,"Background color of checkbox widget."));(0,f.x1)("checkbox.selectBackground",h.Cg,(0,d.kg)(1998,"Background color of checkbox widget when the element it's in is selected."));let U=(0,f.x1)("checkbox.foreground",B,(0,d.kg)(1999,"Foreground color of checkbox widget.")),V=(0,f.x1)("checkbox.border",C,(0,d.kg)(2e3,"Border color of checkbox widget."));(0,f.x1)("checkbox.selectBorder",g.t4,(0,d.kg)(2001,"Border color of checkbox widget when the element it's in is selected."));let W=(0,f.x1)("checkbox.disabled.background",{op:7,color:T,with:U,ratio:.33},(0,d.kg)(2002,"Background of a disabled checkbox.")),X=(0,f.x1)("checkbox.disabled.foreground",{op:7,color:U,with:T,ratio:.33},(0,d.kg)(2003,"Foreground of a disabled checkbox.")),Y=(0,f.x1)("keybindingLabel.background",{dark:new e.Q1(new e.bU(128,128,128,.17)),light:new e.Q1(new e.bU(221,221,221,.4)),hcDark:e.Q1.transparent,hcLight:e.Q1.transparent},(0,d.kg)(2004,"Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),Z=(0,f.x1)("keybindingLabel.foreground",{dark:e.Q1.fromHex("#CCCCCC"),light:e.Q1.fromHex("#555555"),hcDark:e.Q1.white,hcLight:g.CU},(0,d.kg)(2005,"Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),$=(0,f.x1)("keybindingLabel.border",{dark:new e.Q1(new e.bU(51,51,51,.6)),light:new e.Q1(new e.bU(204,204,204,.4)),hcDark:new e.Q1(new e.bU(111,195,223)),hcLight:g.b1},(0,d.kg)(2006,"Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),_=(0,f.x1)("keybindingLabel.bottomBorder",{dark:new e.Q1(new e.bU(68,68,68,.6)),light:new e.Q1(new e.bU(187,187,187,.4)),hcDark:new e.Q1(new e.bU(111,195,223)),hcLight:g.CU},(0,d.kg)(2007,"Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut."))},19225:(a,b,c)=>{"use strict";c.d(b,{W5:()=>o,dr:()=>k,eV:()=>j,hB:()=>m,lt:()=>i,wC:()=>n});var d=c(26529),e=c(33641),f=c(6812),g=c(61822),h=c(94630);class i{constructor(a,b,c,d){this.searchString=a,this.isRegex=b,this.matchCase=c,this.wordSeparators=d}parseSearchRequest(){let a;if(""===this.searchString)return null;a=this.isRegex?j(this.searchString):this.searchString.indexOf("\n")>=0;let b=null;try{b=(0,d.OS)(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:a,global:!0,unicode:!0})}catch(a){return null}if(!b)return null;let c=!this.isRegex&&!a;return c&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(c=this.matchCase),new h.L5(b,this.wordSeparators?(0,e.i)(this.wordSeparators,[]):null,c?this.searchString:null)}}function j(a){if(!a||0===a.length)return!1;for(let b=0,c=a.length;b<c;b++){let d=a.charCodeAt(b);if(10===d)return!0;if(92===d){if(++b>=c)break;let d=a.charCodeAt(b);if(110===d||114===d||87===d)return!0}}return!1}function k(a,b,c){if(!c)return new h.Dg(a,null);let d=[];for(let a=0,c=b.length;a<c;a++)d[a]=b[a];return new h.Dg(a,d)}class l{constructor(a){const b=[];let c=0;for(let d=0,e=a.length;d<e;d++)10===a.charCodeAt(d)&&(b[c++]=d);this._lineFeedsOffsets=b}findLineFeedCountBeforeOffset(a){let b=this._lineFeedsOffsets,c=0,d=b.length-1;if(-1===d||a<=b[0])return 0;for(;c<d;){let e=c+((d-c)/2|0);b[e]>=a?d=e-1:b[e+1]>=a?(c=e,d=e):c=e+1}return c+1}}class m{static findMatches(a,b,c,d,e){let f=b.parseSearchRequest();return f?f.regex.multiline?this._doFindMatchesMultiline(a,c,new o(f.wordSeparators,f.regex),d,e):this._doFindMatchesLineByLine(a,c,f,d,e):[]}static _getMultilineMatchRange(a,b,c,d,e,f){let h,i,j=0;if(d?(j=d.findLineFeedCountBeforeOffset(e),h=b+e+j):h=b+e,d){let a=d.findLineFeedCountBeforeOffset(e+f.length)-j;i=h+f.length+a}else i=h+f.length;let k=a.getPositionAt(h),l=a.getPositionAt(i);return new g.Q(k.lineNumber,k.column,l.lineNumber,l.column)}static _doFindMatchesMultiline(a,b,c,d,e){let f,g=a.getOffsetAt(b.getStartPosition()),h=a.getValueInRange(b,1),i="\r\n"===a.getEOL()?new l(h):null,j=[],m=0;for(c.reset(0);(f=c.next(h))&&(j[m++]=k(this._getMultilineMatchRange(a,g,h,i,f.index,f[0]),f,d),!(m>=e)););return j}static _doFindMatchesLineByLine(a,b,c,d,e){let f=[],g=0;if(b.startLineNumber===b.endLineNumber){let h=a.getLineContent(b.startLineNumber).substring(b.startColumn-1,b.endColumn-1);return g=this._findMatchesInLine(c,h,b.startLineNumber,b.startColumn-1,g,f,d,e),f}let h=a.getLineContent(b.startLineNumber).substring(b.startColumn-1);g=this._findMatchesInLine(c,h,b.startLineNumber,b.startColumn-1,g,f,d,e);for(let h=b.startLineNumber+1;h<b.endLineNumber&&g<e;h++)g=this._findMatchesInLine(c,a.getLineContent(h),h,0,g,f,d,e);if(g<e){let h=a.getLineContent(b.endLineNumber).substring(0,b.endColumn-1);g=this._findMatchesInLine(c,h,b.endLineNumber,0,g,f,d,e)}return f}static _findMatchesInLine(a,b,c,d,e,f,i,j){let l,m=a.wordSeparators;if(!i&&a.simpleSearch){let i=a.simpleSearch,k=i.length,l=b.length,o=-k;for(;-1!==(o=b.indexOf(i,o+k))&&(!(!m||n(m,b,l,o,k))||(f[e++]=new h.Dg(new g.Q(c,o+1+d,c,o+1+k+d),null),!(e>=j))););return e}let p=new o(a.wordSeparators,a.regex);p.reset(0);do if((l=p.next(b))&&(f[e++]=k(new g.Q(c,l.index+1+d,c,l.index+1+l[0].length+d),l,i),e>=j))break;while(l);return e}static findNextMatch(a,b,c,d){let e=b.parseSearchRequest();if(!e)return null;let f=new o(e.wordSeparators,e.regex);return e.regex.multiline?this._doFindNextMatchMultiline(a,c,f,d):this._doFindNextMatchLineByLine(a,c,f,d)}static _doFindNextMatchMultiline(a,b,c,d){let e=new f.y(b.lineNumber,1),h=a.getOffsetAt(e),i=a.getLineCount(),j=a.getValueInRange(new g.Q(e.lineNumber,e.column,i,a.getLineMaxColumn(i)),1),m="\r\n"===a.getEOL()?new l(j):null;c.reset(b.column-1);let n=c.next(j);return n?k(this._getMultilineMatchRange(a,h,j,m,n.index,n[0]),n,d):1!==b.lineNumber||1!==b.column?this._doFindNextMatchMultiline(a,new f.y(1,1),c,d):null}static _doFindNextMatchLineByLine(a,b,c,d){let e=a.getLineCount(),f=b.lineNumber,g=a.getLineContent(f),h=this._findFirstMatchInLine(c,g,f,b.column,d);if(h)return h;for(let b=1;b<=e;b++){let g=(f+b-1)%e,h=a.getLineContent(g+1),i=this._findFirstMatchInLine(c,h,g+1,1,d);if(i)return i}return null}static _findFirstMatchInLine(a,b,c,d,e){a.reset(d-1);let f=a.next(b);return f?k(new g.Q(c,f.index+1,c,f.index+1+f[0].length),f,e):null}static findPreviousMatch(a,b,c,d){let e=b.parseSearchRequest();if(!e)return null;let f=new o(e.wordSeparators,e.regex);return e.regex.multiline?this._doFindPreviousMatchMultiline(a,c,f,d):this._doFindPreviousMatchLineByLine(a,c,f,d)}static _doFindPreviousMatchMultiline(a,b,c,d){let e=this._doFindMatchesMultiline(a,new g.Q(1,1,b.lineNumber,b.column),c,d,9990);if(e.length>0)return e[e.length-1];let h=a.getLineCount();return b.lineNumber!==h||b.column!==a.getLineMaxColumn(h)?this._doFindPreviousMatchMultiline(a,new f.y(h,a.getLineMaxColumn(h)),c,d):null}static _doFindPreviousMatchLineByLine(a,b,c,d){let e=a.getLineCount(),f=b.lineNumber,g=a.getLineContent(f).substring(0,b.column-1),h=this._findLastMatchInLine(c,g,f,d);if(h)return h;for(let b=1;b<=e;b++){let g=(e+f-b-1)%e,h=a.getLineContent(g+1),i=this._findLastMatchInLine(c,h,g+1,d);if(i)return i}return null}static _findLastMatchInLine(a,b,c,d){let e,f=null;for(a.reset(0);e=a.next(b);)f=k(new g.Q(c,e.index+1,c,e.index+1+e[0].length),e,d);return f}}function n(a,b,c,d,e){return function(a,b,c,d){if(0===c)return!0;let e=b.charCodeAt(c-1);if(0!==a.get(e)||13===e||10===e)return!0;if(d>0){let d=b.charCodeAt(c);if(0!==a.get(d))return!0}return!1}(a,b,d,e)&&function(a,b,c,d,e){if(d+e===c)return!0;let f=b.charCodeAt(d+e);if(0!==a.get(f)||13===f||10===f)return!0;if(e>0){let c=b.charCodeAt(d+e-1);if(0!==a.get(c))return!0}return!1}(a,b,c,d,e)}class o{constructor(a,b){this._wordSeparators=a,this._searchRegex=b,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(a){this._searchRegex.lastIndex=a,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(a){let b,c=a.length;do{if(this._prevMatchStartIndex+this._prevMatchLength===c||!(b=this._searchRegex.exec(a)))break;let e=b.index,f=b[0].length;if(e===this._prevMatchStartIndex&&f===this._prevMatchLength){if(0===f){(0,d.Z5)(a,c,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}break}if(this._prevMatchStartIndex=e,this._prevMatchLength=f,!this._wordSeparators||n(this._wordSeparators,a,c,e,f))return b}while(b);return null}}},20165:(a,b,c)=>{"use strict";c.d(b,{M:()=>g});var d=c(81309),e=c(72499),f=c(26346);function g(a,b){if(0===a.length)return b;if(0===b.length)return a;let c=new d.j3(i(a)),g=i(b);g.push({modified:!1,lengthBefore:void 0,lengthAfter:void 0});let j=c.dequeue(),k=[];function l(a,b,c){if(k.length>0&&(0,f.wP)(k[k.length-1].endOffset,a)){let a=k[k.length-1];k[k.length-1]=new e.c(a.startOffset,b,(0,f.QB)(a.newLength,c))}else k.push({startOffset:a,endOffset:b,newLength:c})}let m=f.Vp;for(let a of g){let b=function(a){if(void 0===a){let a=c.takeWhile(a=>!0)||[];return j&&a.unshift(j),a}let b=[];for(;j&&!(0,f.Vh)(a);){let[d,e]=j.splitAt(a);b.push(d),a=(0,f.MS)(d.lengthAfter,a),j=e??c.dequeue()}return(0,f.Vh)(a)||b.push(new h(!1,a,a)),b}(a.lengthBefore);if(a.modified){let c=(0,f.pW)(b,a=>a.lengthBefore),d=(0,f.QB)(m,c);l(m,d,a.lengthAfter),m=d}else for(let a of b){let b=m;m=(0,f.QB)(m,a.lengthBefore),a.modified&&l(b,m,a.lengthAfter)}}return k}class h{constructor(a,b,c){this.modified=a,this.lengthBefore=b,this.lengthAfter=c}splitAt(a){let b=(0,f.MS)(a,this.lengthAfter);return(0,f.wP)(b,f.Vp)?[this,void 0]:this.modified?[new h(this.modified,this.lengthBefore,a),new h(this.modified,f.Vp,b)]:[new h(this.modified,a,a),new h(this.modified,b,b)]}toString(){return`${this.modified?"M":"U"}:${(0,f.l4)(this.lengthBefore)} -> ${(0,f.l4)(this.lengthAfter)}`}}function i(a){let b=[],c=f.Vp;for(let d of a){let a=(0,f.MS)(c,d.startOffset);(0,f.Vh)(a)||b.push(new h(!1,a,a));let e=(0,f.MS)(d.startOffset,d.endOffset);b.push(new h(!0,e,d.newLength)),c=d.endOffset}return b}},20330:(a,b,c)=>{"use strict";c.d(b,{G5:()=>e,N8:()=>g});var d=c(58254);let e=(0,d.u1)("progressService");class f{static{this.None=Object.freeze({report(){}})}constructor(a){this.callback=a}report(a){this._value=a,this.callback(this._value)}}let g=(0,d.u1)("editorProgressService")},20522:(a,b,c)=>{"use strict";c.d(b,{d:()=>n});var d=c(95091),e=c(75082),f=c(70288),g=c(47339),h=c(89191);c(18889);var i=c(62677),j=c(34793),k=c(66560);class l extends k.LN{constructor(a,b){super(),this._onDidChangeVisibility=this._register(new d.vl),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this._element=(0,e.BC)(a,(0,e.$)(".monaco-dropdown")),this._label=(0,e.BC)(this._element,(0,e.$)(".dropdown-label"));let c=b.labelRenderer;for(const a of(c||(c=a=>(a.textContent=b.label||"",null)),[e.Bx.CLICK,e.Bx.MOUSE_DOWN,j.B.Tap]))this._register((0,e.ko)(this.element,a,a=>e.fs.stop(a,!0)));for(const a of[e.Bx.MOUSE_DOWN,j.B.Tap])this._register((0,e.ko)(this._label,a,a=>{(0,e.Er)(a)&&0!==a.button||(this.visible?this.hide():this.show())}));this._register((0,e.ko)(this._label,e.Bx.KEY_DOWN,a=>{let b=new i.Z(a);(b.equals(3)||b.equals(10))&&(e.fs.stop(a,!0),this.visible?this.hide():this.show())}));const f=c(this._label);f&&this._register(f),this._register(j.q.addTarget(this._label))}get element(){return this._element}show(){this.visible||(this.visible=!0,this._onDidChangeVisibility.fire(!0))}hide(){this.visible&&(this.visible=!1,this._onDidChangeVisibility.fire(!1))}dispose(){super.dispose(),this.hide(),this.boxContainer&&(this.boxContainer.remove(),this.boxContainer=void 0),this.contents&&(this.contents.remove(),this.contents=void 0),this._label&&(this._label.remove(),this._label=void 0)}}class m extends l{constructor(a,b){super(a,b),this._options=b,this._actions=[],this.actions=b.actions||[]}set menuOptions(a){this._menuOptions=a}get menuOptions(){return this._menuOptions}get actions(){return this._options.actionProvider?this._options.actionProvider.getActions():this._actions}set actions(a){this._actions=a}show(){super.show(),this.element.classList.add("active"),this._options.contextMenuProvider.showContextMenu({getAnchor:()=>this.element,getActions:()=>this.actions,getActionsContext:()=>this.menuOptions?this.menuOptions.context:null,getActionViewItem:(a,b)=>this.menuOptions&&this.menuOptions.actionViewItemProvider?this.menuOptions.actionViewItemProvider(a,b):void 0,getKeyBinding:a=>this.menuOptions&&this.menuOptions.getKeyBinding?this.menuOptions.getKeyBinding(a):void 0,getMenuClassName:()=>this._options.menuClassName||"",onHide:()=>this.onHide(),actionRunner:this.menuOptions?this.menuOptions.actionRunner:void 0,anchorAlignment:this.menuOptions?this.menuOptions.anchorAlignment:0,domForShadowRoot:this._options.menuAsChild?this.element:void 0,skipTelemetry:this._options.skipTelemetry})}hide(){super.hide()}onHide(){this.hide(),this.element.classList.remove("active")}}class n extends f.EH{get onDidChangeVisibility(){return this._onDidChangeVisibility.event}constructor(a,b,c,e=Object.create(null)){super(null,a,e),this.actionItem=null,this._onDidChangeVisibility=this._register(new d.vl),this.menuActionsOrProvider=b,this.contextMenuProvider=c,this.options=e,this.options.actionRunner&&(this.actionRunner=this.options.actionRunner)}render(a){this.actionItem=a;let b=a=>(this.element=(0,e.BC)(a,(0,e.$)("a.action-label")),this.setAriaLabelAttributes(this.element),this.renderLabel(this.element)),c=Array.isArray(this.menuActionsOrProvider),d={contextMenuProvider:this.contextMenuProvider,labelRenderer:b,menuAsChild:this.options.menuAsChild,actions:c?this.menuActionsOrProvider:void 0,actionProvider:c?void 0:this.menuActionsOrProvider,skipTelemetry:this.options.skipTelemetry};if(this.dropdownMenu=this._register(new m(a,d)),this._register(this.dropdownMenu.onDidChangeVisibility(a=>{this.element?.setAttribute("aria-expanded",`${a}`),this._onDidChangeVisibility.fire(a)})),this.dropdownMenu.menuOptions={actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,getKeyBinding:this.options.keybindingProvider,context:this._context},this.options.anchorAlignmentProvider){let a=this;this.dropdownMenu.menuOptions={...this.dropdownMenu.menuOptions,get anchorAlignment(){return a.options.anchorAlignmentProvider()}}}this.updateTooltip(),this.updateEnabled()}renderLabel(a){let b=[];return"string"==typeof this.options.classNames?b=this.options.classNames.split(/\s+/g).filter(a=>!!a):this.options.classNames&&(b=this.options.classNames),b.find(a=>"icon"===a)||b.push("codicon"),a.classList.add(...b),this._action.label&&this._register((0,g.i)().setupManagedHover(this.options.hoverDelegate??(0,h.nZ)("mouse"),a,this._action.label)),null}setAriaLabelAttributes(a){a.setAttribute("role","button"),a.setAttribute("aria-haspopup","true"),a.setAttribute("aria-expanded","false"),a.ariaLabel=this._action.label||""}getTooltip(){let a=null;return this.action.tooltip?a=this.action.tooltip:this.action.label&&(a=this.action.label),a??void 0}setActionContext(a){super.setActionContext(a),this.dropdownMenu&&(this.dropdownMenu.menuOptions?this.dropdownMenu.menuOptions.context=a:this.dropdownMenu.menuOptions={context:a})}show(){this.dropdownMenu?.show()}updateEnabled(){let a=!this.action.enabled;this.actionItem?.classList.toggle("disabled",a),this.element?.classList.toggle("disabled",a)}}},21062:()=>{},21398:(a,b,c)=>{"use strict";c.d(b,{Cr:()=>d,ew:()=>e});let d=(0,c(58254).u1)("openerService");function e(a){let b,c=/^L?(\d+)(?:,(\d+))?(-L?(\d+)(?:,(\d+))?)?/.exec(a.fragment);return c&&(b={startLineNumber:parseInt(c[1]),startColumn:c[2]?parseInt(c[2]):1,endLineNumber:c[4]?parseInt(c[4]):void 0,endColumn:c[4]?c[5]?parseInt(c[5]):1:void 0},a=a.with({fragment:""})),{selection:b,uri:a}}},21495:(a,b,c)=>{"use strict";c.d(b,{$C:()=>ai,BE:()=>aB,Bc:()=>M,O4:()=>D,Vs:()=>aj,hZ:()=>s,ls:()=>A,lw:()=>p,m9:()=>f,n0:()=>q,qB:()=>aD,wA:()=>y,xZ:()=>W,xq:()=>o,zM:()=>w});var d,e,f,g,h=c(81309),i=c(29943),j=c(18216),k=c(55385),l=c(85030),m=c(57615),n=c(72816);let o=8;class p{constructor(a){this._values=a}hasChanged(a){return this._values[a]}}class q{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}}class r{constructor(a,b,c,d){this.id=a,this.name=b,this.defaultValue=c,this.schema=d}applyUpdate(a,b){return t(a,b)}compute(a,b,c){return c}}class s{constructor(a,b){this.newValue=a,this.didChange=b}}function t(a,b){if("object"!=typeof a||"object"!=typeof b||!a||!b)return new s(b,a!==b);if(Array.isArray(a)||Array.isArray(b)){let c=Array.isArray(a)&&Array.isArray(b)&&(0,h.aI)(a,b);return new s(b,!c)}let c=!1;for(let d in b)if(b.hasOwnProperty(d)){let e=t(a[d],b[d]);e.didChange&&(a[d]=e.newValue,c=!0)}return new s(a,c)}class u{constructor(a,b){this.schema=void 0,this.id=a,this.name="_never_",this.defaultValue=b}applyUpdate(a,b){return t(a,b)}validate(a){return this.defaultValue}}class v{constructor(a,b,c,d){this.id=a,this.name=b,this.defaultValue=c,this.schema=d}applyUpdate(a,b){return t(a,b)}compute(a,b,c){return c}}function w(a,b){return void 0===a?b:"false"!==a&&!!a}class x extends v{constructor(a,b,c,d){void 0!==d&&(d.type="boolean",d.default=c),super(a,b,c,d)}validate(a){return w(a,this.defaultValue)}}function y(a,b,c,d){if("string"==typeof a&&(a=parseInt(a,10)),"number"!=typeof a||isNaN(a))return b;let e=a;return 0|(e=Math.min(d,e=Math.max(c,e)))}class z extends v{static clampedInt(a,b,c,d){return y(a,b,c,d)}constructor(a,b,c,d,e,f){void 0!==f&&(f.type="integer",f.default=c,f.minimum=d,f.maximum=e),super(a,b,c,f),this.minimum=d,this.maximum=e}validate(a){return z.clampedInt(a,this.defaultValue,this.minimum,this.maximum)}}function A(a,b,c,d){if(void 0===a)return b;let e=B.float(a,b);return B.clamp(e,c,d)}class B extends v{static clamp(a,b,c){return a<b?b:a>c?c:a}static float(a,b){return("string"==typeof a&&(a=parseFloat(a)),"number"!=typeof a||isNaN(a))?b:a}constructor(a,b,c,d,e,f,g){void 0!==e&&(e.type="number",e.default=c,e.minimum=f,e.maximum=g),super(a,b,c,e),this.validationFn=d,this.minimum=f,this.maximum=g}validate(a){return this.validationFn(B.float(a,this.defaultValue))}}class C extends v{static string(a,b){return"string"!=typeof a?b:a}constructor(a,b,c,d){void 0!==d&&(d.type="string",d.default=c),super(a,b,c,d)}validate(a){return C.string(a,this.defaultValue)}}function D(a,b,c,d){return"string"!=typeof a?b:d&&a in d?d[a]:-1===c.indexOf(a)?b:a}class E extends v{constructor(a,b,c,d,e){void 0!==e&&(e.type="string",e.enum=d.slice(0),e.default=c),super(a,b,c,e),this._allowedValues=d}validate(a){return D(a,this.defaultValue,this._allowedValues)}}class F extends r{constructor(a,b,c,d,e,f,g){void 0!==g&&(g.type="string",g.enum=e,g.default=d),super(a,b,c,g),this._allowedValues=e,this._convert=f}validate(a){return"string"!=typeof a||-1===this._allowedValues.indexOf(a)?this.defaultValue:this._convert(a)}}class G extends r{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[(0,n.kg)(220,"Use platform APIs to detect when a Screen Reader is attached."),(0,n.kg)(221,"Optimize for usage with a Screen Reader."),(0,n.kg)(222,"Assume a screen reader is not attached.")],default:"auto",tags:["accessibility"],description:(0,n.kg)(223,"Controls if the UI should run in a mode where it is optimized for screen readers.")})}validate(a){switch(a){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(a,b,c){return 0===c?a.accessibilitySupport:c}}class H extends r{constructor(){const a={insertSpace:!0,ignoreEmptyLines:!0};super(29,"comments",a,{"editor.comments.insertSpace":{type:"boolean",default:a.insertSpace,description:(0,n.kg)(224,"Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:a.ignoreEmptyLines,description:(0,n.kg)(225,"Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(a){return a&&"object"==typeof a?{insertSpace:w(a.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:w(a.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}:this.defaultValue}}function I(a){switch(a){case"line":return f.Line;case"block":return f.Block;case"underline":return f.Underline;case"line-thin":return f.LineThin;case"block-outline":return f.BlockOutline;case"underline-thin":return f.UnderlineThin}}(d=f||(f={}))[d.Line=1]="Line",d[d.Block=2]="Block",d[d.Underline=3]="Underline",d[d.LineThin=4]="LineThin",d[d.BlockOutline=5]="BlockOutline",d[d.UnderlineThin=6]="UnderlineThin";class J extends u{constructor(){super(162,"")}compute(a,b,c){let d=["monaco-editor"];return b.get(48)&&d.push(b.get(48)),a.extraEditorClassName&&d.push(a.extraEditorClassName),"default"===b.get(82)?d.push("mouse-default"):"copy"===b.get(82)&&d.push("mouse-copy"),b.get(127)&&d.push("showUnused"),b.get(157)&&d.push("showDeprecated"),d.join(" ")}}class K extends x{constructor(){super(45,"emptySelectionClipboard",!0,{description:(0,n.kg)(226,"Controls whether copying without a selection copies the current line.")})}compute(a,b,c){return c&&a.emptySelectionClipboard}}class L extends r{constructor(){const a={cursorMoveOnType:!0,findOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0,closeOnResult:!1,history:"workspace",replaceHistory:"workspace"};super(50,"find",a,{"editor.find.cursorMoveOnType":{type:"boolean",default:a.cursorMoveOnType,description:(0,n.kg)(227,"Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:a.seedSearchStringFromSelection,enumDescriptions:[(0,n.kg)(228,"Never seed search string from the editor selection."),(0,n.kg)(229,"Always seed search string from the editor selection, including word at cursor position."),(0,n.kg)(230,"Only seed search string from the editor selection.")],description:(0,n.kg)(231,"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:a.autoFindInSelection,enumDescriptions:[(0,n.kg)(232,"Never turn on Find in Selection automatically (default)."),(0,n.kg)(233,"Always turn on Find in Selection automatically."),(0,n.kg)(234,"Turn on Find in Selection automatically when multiple lines of content are selected.")],description:(0,n.kg)(235,"Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:a.globalFindClipboard,description:(0,n.kg)(236,"Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:j.zx},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:a.addExtraSpaceOnTop,description:(0,n.kg)(237,"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:a.loop,description:(0,n.kg)(238,"Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")},"editor.find.closeOnResult":{type:"boolean",default:a.closeOnResult,description:(0,n.kg)(239,"Controls whether the Find Widget closes after an explicit find navigation command lands on a result.")},"editor.find.history":{type:"string",enum:["never","workspace"],default:"workspace",enumDescriptions:[(0,n.kg)(240,"Do not store search history from the find widget."),(0,n.kg)(241,"Store search history across the active workspace")],description:(0,n.kg)(242,"Controls how the find widget history should be stored")},"editor.find.replaceHistory":{type:"string",enum:["never","workspace"],default:"workspace",enumDescriptions:[(0,n.kg)(243,"Do not store history from the replace widget."),(0,n.kg)(244,"Store replace history across the active workspace")],description:(0,n.kg)(245,"Controls how the replace widget history should be stored")},"editor.find.findOnType":{type:"boolean",default:a.findOnType,description:(0,n.kg)(246,"Controls whether the Find Widget should search as you type.")}})}validate(a){return a&&"object"==typeof a?{cursorMoveOnType:w(a.cursorMoveOnType,this.defaultValue.cursorMoveOnType),findOnType:w(a.findOnType,this.defaultValue.findOnType),seedSearchStringFromSelection:"boolean"==typeof a.seedSearchStringFromSelection?a.seedSearchStringFromSelection?"always":"never":D(a.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:"boolean"==typeof a.autoFindInSelection?a.autoFindInSelection?"always":"never":D(a.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:w(a.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:w(a.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:w(a.loop,this.defaultValue.loop),closeOnResult:w(a.closeOnResult,this.defaultValue.closeOnResult),history:D(a.history,this.defaultValue.history,["never","workspace"]),replaceHistory:D(a.replaceHistory,this.defaultValue.replaceHistory,["never","workspace"])}:this.defaultValue}}class M extends r{static{this.OFF='"liga" off, "calt" off'}static{this.ON='"liga" on, "calt" on'}constructor(){super(60,"fontLigatures",M.OFF,{anyOf:[{type:"boolean",description:(0,n.kg)(247,"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:(0,n.kg)(248,"Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:(0,n.kg)(249,"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(a){return void 0===a?this.defaultValue:"string"==typeof a?"false"===a||0===a.length?M.OFF:"true"===a?M.ON:a:a?M.ON:M.OFF}}class N extends r{static{this.OFF=k.qC}static{this.TRANSLATE=k.Jn}constructor(){super(63,"fontVariations",N.OFF,{anyOf:[{type:"boolean",description:(0,n.kg)(250,"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:(0,n.kg)(251,"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:(0,n.kg)(252,"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(a){return void 0===a?this.defaultValue:"string"==typeof a?"false"===a?N.OFF:"true"===a?N.TRANSLATE:a:a?N.TRANSLATE:N.OFF}compute(a,b,c){return a.fontInfo.fontVariationSettings}}class O extends u{constructor(){super(59,new k.YJ({pixelRatio:0,fontFamily:"",fontWeight:"",fontSize:0,fontFeatureSettings:"",fontVariationSettings:"",lineHeight:0,letterSpacing:0,isMonospace:!1,typicalHalfwidthCharacterWidth:0,typicalFullwidthCharacterWidth:0,canUseHalfwidthRightwardsArrow:!1,spaceWidth:0,middotWidth:0,wsmiddotWidth:0,maxDigitWidth:0},!1))}compute(a,b,c){return a.fontInfo}}class P extends u{constructor(){super(161,f.Line)}compute(a,b,c){return"overtype"===a.inputMode?b.get(92):b.get(34)}}class Q extends u{constructor(){super(170,!1)}compute(a,b){return a.editContextSupported&&b.get(44)}}class R extends u{constructor(){super(172,!1)}compute(a,b){return 2===a.accessibilitySupport?b.get(7):b.get(6)}}class S extends v{constructor(){super(61,"fontSize",k.jU.fontSize,{type:"number",minimum:6,maximum:100,default:k.jU.fontSize,description:(0,n.kg)(253,"Controls the font size in pixels.")})}validate(a){let b=B.float(a,this.defaultValue);return 0===b?k.jU.fontSize:B.clamp(b,6,100)}compute(a,b,c){return a.fontInfo.fontSize}}class T extends r{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(62,"fontWeight",k.jU.fontWeight,{anyOf:[{type:"number",minimum:T.MINIMUM_VALUE,maximum:T.MAXIMUM_VALUE,errorMessage:(0,n.kg)(254,'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:T.SUGGESTION_VALUES}],default:k.jU.fontWeight,description:(0,n.kg)(255,'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(a){return"normal"===a||"bold"===a?a:String(z.clampedInt(a,k.jU.fontWeight,T.MINIMUM_VALUE,T.MAXIMUM_VALUE))}}class U extends r{constructor(){const a={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:""},b={type:"string",enum:["peek","gotoAndPeek","goto"],default:a.multiple,enumDescriptions:[(0,n.kg)(256,"Show Peek view of the results (default)"),(0,n.kg)(257,"Go to the primary result and show a Peek view"),(0,n.kg)(258,"Go to the primary result and enable Peek-less navigation to others")]},c=["","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(67,"gotoLocation",a,{"editor.gotoLocation.multiple":{deprecationMessage:(0,n.kg)(259,"This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":{description:(0,n.kg)(260,"Controls the behavior the 'Go to Definition'-command when multiple target locations exist."),...b},"editor.gotoLocation.multipleTypeDefinitions":{description:(0,n.kg)(261,"Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist."),...b},"editor.gotoLocation.multipleDeclarations":{description:(0,n.kg)(262,"Controls the behavior the 'Go to Declaration'-command when multiple target locations exist."),...b},"editor.gotoLocation.multipleImplementations":{description:(0,n.kg)(263,"Controls the behavior the 'Go to Implementations'-command when multiple target locations exist."),...b},"editor.gotoLocation.multipleReferences":{description:(0,n.kg)(264,"Controls the behavior the 'Go to References'-command when multiple target locations exist."),...b},"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:a.alternativeDefinitionCommand,enum:c,description:(0,n.kg)(265,"Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:a.alternativeTypeDefinitionCommand,enum:c,description:(0,n.kg)(266,"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:a.alternativeDeclarationCommand,enum:c,description:(0,n.kg)(267,"Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:a.alternativeImplementationCommand,enum:c,description:(0,n.kg)(268,"Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:a.alternativeReferenceCommand,enum:c,description:(0,n.kg)(269,"Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(a){return a&&"object"==typeof a?{multiple:D(a.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:D(a.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:D(a.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:D(a.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:D(a.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:D(a.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),multipleTests:D(a.multipleTests,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:C.string(a.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:C.string(a.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:C.string(a.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:C.string(a.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:C.string(a.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand),alternativeTestsCommand:C.string(a.alternativeTestsCommand,this.defaultValue.alternativeTestsCommand)}:this.defaultValue}}class V extends r{constructor(){const a={enabled:"on",delay:300,hidingDelay:300,sticky:!0,above:!0,showLongLineWarning:!0};super(69,"hover",a,{"editor.hover.enabled":{type:"string",enum:["on","off","onKeyboardModifier"],default:a.enabled,markdownEnumDescriptions:[(0,n.kg)(270,"Hover is enabled."),(0,n.kg)(271,"Hover is disabled."),(0,n.kg)(272,"Hover is shown when holding `{0}` or `Alt` (the opposite modifier of `#editor.multiCursorModifier#`)",j.zx?"Command":"Control")],description:(0,n.kg)(273,"Controls whether the hover is shown."),keywords:["hint","info","tooltip"]},"editor.hover.delay":{type:"number",default:a.delay,minimum:0,maximum:1e4,description:(0,n.kg)(274,"Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:a.sticky,description:(0,n.kg)(275,"Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.hidingDelay":{type:"integer",minimum:0,default:a.hidingDelay,markdownDescription:(0,n.kg)(276,"Controls the delay in milliseconds after which the hover is hidden. Requires `#editor.hover.sticky#` to be enabled.")},"editor.hover.above":{type:"boolean",default:a.above,description:(0,n.kg)(277,"Prefer showing hovers above the line, if there's space.")},"editor.hover.showLongLineWarning":{type:"boolean",default:a.showLongLineWarning,description:(0,n.kg)(278,"Controls whether long line warning hovers are shown, such as when tokenization is skipped or rendering is paused.")}})}validate(a){return a&&"object"==typeof a?{enabled:D(a.enabled,this.defaultValue.enabled,["on","off","onKeyboardModifier"]),delay:z.clampedInt(a.delay,this.defaultValue.delay,0,1e4),sticky:w(a.sticky,this.defaultValue.sticky),hidingDelay:z.clampedInt(a.hidingDelay,this.defaultValue.hidingDelay,0,6e5),above:w(a.above,this.defaultValue.above),showLongLineWarning:w(a.showLongLineWarning,this.defaultValue.showLongLineWarning)}:this.defaultValue}}class W extends u{constructor(){super(165,{width:0,height:0,glyphMarginLeft:0,glyphMarginWidth:0,glyphMarginDecorationLaneCount:0,lineNumbersLeft:0,lineNumbersWidth:0,decorationsLeft:0,decorationsWidth:0,contentLeft:0,contentWidth:0,minimap:{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:0,minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:0},viewportColumn:0,isWordWrapMinified:!1,isViewportWrapping:!1,wrappingColumn:-1,verticalScrollbarWidth:0,horizontalScrollbarHeight:0,overviewRuler:{top:0,width:0,height:0,right:0}})}compute(a,b,c){return W.computeLayout(b,{memory:a.memory,outerWidth:a.outerWidth,outerHeight:a.outerHeight,isDominatedByLongLines:a.isDominatedByLongLines,lineHeight:a.fontInfo.lineHeight,viewLineCount:a.viewLineCount,lineNumbersDigitCount:a.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:a.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:a.fontInfo.maxDigitWidth,pixelRatio:a.pixelRatio,glyphMarginDecorationLaneCount:a.glyphMarginDecorationLaneCount})}static computeContainedMinimapLineCount(a){let b=a.height/a.lineHeight,c=Math.floor(a.paddingTop/a.lineHeight),d=Math.floor(a.paddingBottom/a.lineHeight);a.scrollBeyondLastLine&&(d=Math.max(d,b-1));let e=(c+a.viewLineCount+d)/(a.pixelRatio*a.height),f=Math.floor(a.viewLineCount/e);return{typicalViewportLineCount:b,extraLinesBeforeFirstLine:c,extraLinesBeyondLastLine:d,desiredRatio:e,minimapLineCount:f}}static _computeMinimapLayout(a,b){let c=a.outerWidth,d=a.outerHeight,e=a.pixelRatio;if(!a.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(e*d),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:d};let f=b.stableMinimapLayoutInput,g=f&&a.outerHeight===f.outerHeight&&a.lineHeight===f.lineHeight&&a.typicalHalfwidthCharacterWidth===f.typicalHalfwidthCharacterWidth&&a.pixelRatio===f.pixelRatio&&a.scrollBeyondLastLine===f.scrollBeyondLastLine&&a.paddingTop===f.paddingTop&&a.paddingBottom===f.paddingBottom&&a.minimap.enabled===f.minimap.enabled&&a.minimap.side===f.minimap.side&&a.minimap.size===f.minimap.size&&a.minimap.showSlider===f.minimap.showSlider&&a.minimap.renderCharacters===f.minimap.renderCharacters&&a.minimap.maxColumn===f.minimap.maxColumn&&a.minimap.scale===f.minimap.scale&&a.verticalScrollbarWidth===f.verticalScrollbarWidth&&a.isViewportWrapping===f.isViewportWrapping,h=a.lineHeight,i=a.typicalHalfwidthCharacterWidth,j=a.scrollBeyondLastLine,k=a.minimap.renderCharacters,l=e>=2?Math.round(2*a.minimap.scale):a.minimap.scale,m=a.minimap.maxColumn,n=a.minimap.size,p=a.minimap.side,q=a.verticalScrollbarWidth,r=a.viewLineCount,s=a.remainingWidth,t=a.isViewportWrapping,u=k?2:3,v=Math.floor(e*d),w=v/e,x=!1,y=!1,z=u*l,A=l/e,B=1;if("fill"===n||"fit"===n){let{typicalViewportLineCount:c,extraLinesBeforeFirstLine:f,extraLinesBeyondLastLine:i,desiredRatio:k,minimapLineCount:m}=W.computeContainedMinimapLineCount({viewLineCount:r,scrollBeyondLastLine:j,paddingTop:a.paddingTop,paddingBottom:a.paddingBottom,height:d,lineHeight:h,pixelRatio:e});if(r/m>1)x=!0,y=!0,z=1,A=(l=1)/e;else{let d=!1,j=l+1;if("fit"===n){let a=Math.ceil((f+r+i)*z);t&&g&&s<=b.stableFitRemainingWidth?(d=!0,j=b.stableFitMaxMinimapScale):d=a>v}if("fill"===n||d){x=!0;let d=l;z=Math.min(h*e,Math.max(1,Math.floor(1/k))),t&&g&&s<=b.stableFitRemainingWidth&&(j=b.stableFitMaxMinimapScale),(l=Math.min(j,Math.max(1,Math.floor(z/u))))>d&&(B=Math.min(2,l/d)),A=l/e/B,v=Math.ceil(Math.max(c,f+r+i)*z),t?(b.stableMinimapLayoutInput=a,b.stableFitRemainingWidth=s,b.stableFitMaxMinimapScale=l):(b.stableMinimapLayoutInput=null,b.stableFitRemainingWidth=0)}}}let C=Math.min(Math.floor(m*A),Math.max(0,Math.floor((s-q-2)*A/(i+A)))+o),D=Math.floor(e*C),E=D/e;return{renderMinimap:k?1:2,minimapLeft:"left"===p?0:c-C-q,minimapWidth:C,minimapHeightIsEditorHeight:x,minimapIsSampling:y,minimapScale:l,minimapLineHeight:z,minimapCanvasInnerWidth:D=Math.floor(D*B),minimapCanvasInnerHeight:v,minimapCanvasOuterWidth:E,minimapCanvasOuterHeight:w}}static computeLayout(a,b){let c=0|b.outerWidth,d=0|b.outerHeight,e=0|b.lineHeight,f=0|b.lineNumbersDigitCount,g=b.typicalHalfwidthCharacterWidth,h=b.maxDigitWidth,i=b.pixelRatio,j=b.viewLineCount,k=a.get(154),l="inherit"===k?a.get(153):k,m="inherit"===l?a.get(149):l,n=a.get(152),o=b.isDominatedByLongLines,p=a.get(66),r=0!==a.get(76).renderType,s=a.get(77),t=a.get(119),u=a.get(96),v=a.get(81),w=a.get(117),x=w.verticalScrollbarSize,y=w.verticalHasArrows,z=w.arrowSize,A=w.horizontalScrollbarSize,B=a.get(52),C="never"!==a.get(126),D=a.get(74);B&&C&&(D+=16);let E=0;r&&(E=Math.round(Math.max(f,s)*h));let F=0;p&&(F=e*b.glyphMarginDecorationLaneCount);let G=0,H=0+F,I=H+E,J=I+D,K=c-F-E-D,L=!1,M=!1,N=-1;2===a.get(2)&&"inherit"===l&&o?(L=!0,M=!0):"on"===m||"bounded"===m?M=!0:"wordWrapColumn"===m&&(N=n);let O=W._computeMinimapLayout({outerWidth:c,outerHeight:d,lineHeight:e,typicalHalfwidthCharacterWidth:g,pixelRatio:i,scrollBeyondLastLine:t,paddingTop:u.top,paddingBottom:u.bottom,minimap:v,verticalScrollbarWidth:x,viewLineCount:j,remainingWidth:K,isViewportWrapping:M},b.memory||new q);0!==O.renderMinimap&&0===O.minimapLeft&&(G+=O.minimapWidth,H+=O.minimapWidth,I+=O.minimapWidth,J+=O.minimapWidth);let P=K-O.minimapWidth,Q=Math.max(1,Math.floor((P-x-2)/g)),R=y?z:0;return M&&(N=Math.max(1,Q),"bounded"===m&&(N=Math.min(N,n))),{width:c,height:d,glyphMarginLeft:G,glyphMarginWidth:F,glyphMarginDecorationLaneCount:b.glyphMarginDecorationLaneCount,lineNumbersLeft:H,lineNumbersWidth:E,decorationsLeft:I,decorationsWidth:D,contentLeft:J,contentWidth:P,minimap:O,viewportColumn:Q,isWordWrapMinified:L,isViewportWrapping:M,wrappingColumn:N,verticalScrollbarWidth:x,horizontalScrollbarHeight:A,overviewRuler:{top:R,width:x,height:d-2*R,right:0}}}}class X extends r{constructor(){super(156,"wrappingStrategy","simple",{"editor.wrappingStrategy":{enumDescriptions:[(0,n.kg)(279,"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."),(0,n.kg)(280,"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:(0,n.kg)(281,"Controls the algorithm that computes wrapping points. Note that when in accessibility mode, advanced will be used for the best experience.")}})}validate(a){return D(a,"simple",["simple","advanced"])}compute(a,b,c){return 2===b.get(2)?"advanced":c}}(e=g||(g={})).Off="off",e.OnCode="onCode",e.On="on";class Y extends r{constructor(){const a={enabled:g.OnCode};super(73,"lightbulb",a,{"editor.lightbulb.enabled":{type:"string",enum:[g.Off,g.OnCode,g.On],default:a.enabled,enumDescriptions:[(0,n.kg)(282,"Disable the code action menu."),(0,n.kg)(283,"Show the code action menu when the cursor is on lines with code."),(0,n.kg)(284,"Show the code action menu when the cursor is on lines with code or on empty lines.")],description:(0,n.kg)(285,"Enables the Code Action lightbulb in the editor.")}})}validate(a){return a&&"object"==typeof a?{enabled:D(a.enabled,this.defaultValue.enabled,[g.Off,g.OnCode,g.On])}:this.defaultValue}}class Z extends r{constructor(){const a={enabled:!0,maxLineCount:5,defaultModel:"outlineModel",scrollWithEditor:!0};super(131,"stickyScroll",a,{"editor.stickyScroll.enabled":{type:"boolean",default:a.enabled,description:(0,n.kg)(286,"Shows the nested current scopes during the scroll at the top of the editor.")},"editor.stickyScroll.maxLineCount":{type:"number",default:a.maxLineCount,minimum:1,maximum:20,description:(0,n.kg)(287,"Defines the maximum number of sticky lines to show.")},"editor.stickyScroll.defaultModel":{type:"string",enum:["outlineModel","foldingProviderModel","indentationModel"],default:a.defaultModel,description:(0,n.kg)(288,"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:a.scrollWithEditor,description:(0,n.kg)(289,"Enable scrolling of Sticky Scroll with the editor's horizontal scrollbar.")}})}validate(a){return a&&"object"==typeof a?{enabled:w(a.enabled,this.defaultValue.enabled),maxLineCount:z.clampedInt(a.maxLineCount,this.defaultValue.maxLineCount,1,20),defaultModel:D(a.defaultModel,this.defaultValue.defaultModel,["outlineModel","foldingProviderModel","indentationModel"]),scrollWithEditor:w(a.scrollWithEditor,this.defaultValue.scrollWithEditor)}:this.defaultValue}}class $ extends r{constructor(){const a={enabled:"on",fontSize:0,fontFamily:"",padding:!1,maximumLength:43};super(159,"inlayHints",a,{"editor.inlayHints.enabled":{type:"string",default:a.enabled,description:(0,n.kg)(290,"Enables the inlay hints in the editor."),enum:["on","onUnlessPressed","offUnlessPressed","off"],markdownEnumDescriptions:[(0,n.kg)(291,"Inlay hints are enabled"),(0,n.kg)(292,"Inlay hints are showing by default and hide when holding {0}",j.zx?"Ctrl+Option":"Ctrl+Alt"),(0,n.kg)(293,"Inlay hints are hidden by default and show when holding {0}",j.zx?"Ctrl+Option":"Ctrl+Alt"),(0,n.kg)(294,"Inlay hints are disabled")]},"editor.inlayHints.fontSize":{type:"number",default:a.fontSize,markdownDescription:(0,n.kg)(295,"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:a.fontFamily,markdownDescription:(0,n.kg)(296,"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:a.padding,description:(0,n.kg)(297,"Enables the padding around the inlay hints in the editor.")},"editor.inlayHints.maximumLength":{type:"number",default:a.maximumLength,markdownDescription:(0,n.kg)(298,"Maximum overall length of inlay hints, for a single line, before they get truncated by the editor. Set to `0` to never truncate")}})}validate(a){return a&&"object"==typeof a?("boolean"==typeof a.enabled&&(a.enabled=a.enabled?"on":"off"),{enabled:D(a.enabled,this.defaultValue.enabled,["on","off","offUnlessPressed","onUnlessPressed"]),fontSize:z.clampedInt(a.fontSize,this.defaultValue.fontSize,0,100),fontFamily:C.string(a.fontFamily,this.defaultValue.fontFamily),padding:w(a.padding,this.defaultValue.padding),maximumLength:z.clampedInt(a.maximumLength,this.defaultValue.maximumLength,0,Number.MAX_SAFE_INTEGER)}):this.defaultValue}}class _ extends r{constructor(){super(74,"lineDecorationsWidth",10)}validate(a){return"string"==typeof a&&/^\d+(\.\d+)?ch$/.test(a)?-parseFloat(a.substring(0,a.length-2)):z.clampedInt(a,this.defaultValue,0,1e3)}compute(a,b,c){return c<0?z.clampedInt(-c*a.fontInfo.typicalHalfwidthCharacterWidth,this.defaultValue,0,1e3):c}}class aa extends B{constructor(){super(75,"lineHeight",k.jU.lineHeight,a=>B.clamp(a,0,150),{markdownDescription:(0,n.kg)(299,"Controls the line height. \n - Use 0 to automatically compute the line height from the font size.\n - Values between 0 and 8 will be used as a multiplier with the font size.\n - Values greater than or equal to 8 will be used as effective values.")},0,150)}compute(a,b,c){return a.fontInfo.lineHeight}}class ab extends r{constructor(){const a={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",autohide:"none",renderCharacters:!0,maxColumn:120,scale:1,showRegionSectionHeaders:!0,showMarkSectionHeaders:!0,markSectionHeaderRegex:"\\bMARK:\\s*(?<separator>-?)\\s*(?<label>.*)$",sectionHeaderFontSize:9,sectionHeaderLetterSpacing:1};super(81,"minimap",a,{"editor.minimap.enabled":{type:"boolean",default:a.enabled,description:(0,n.kg)(300,"Controls whether the minimap is shown.")},"editor.minimap.autohide":{type:"string",enum:["none","mouseover","scroll"],enumDescriptions:[(0,n.kg)(301,"The minimap is always shown."),(0,n.kg)(302,"The minimap is hidden when mouse is not over the minimap and shown when mouse is over the minimap."),(0,n.kg)(303,"The minimap is only shown when the editor is scrolled")],default:a.autohide,description:(0,n.kg)(304,"Controls whether the minimap is hidden automatically.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[(0,n.kg)(305,"The minimap has the same size as the editor contents (and might scroll)."),(0,n.kg)(306,"The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),(0,n.kg)(307,"The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:a.size,description:(0,n.kg)(308,"Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:a.side,description:(0,n.kg)(309,"Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:a.showSlider,description:(0,n.kg)(310,"Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:a.scale,minimum:1,maximum:3,enum:[1,2,3],description:(0,n.kg)(311,"Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:a.renderCharacters,description:(0,n.kg)(312,"Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:a.maxColumn,description:(0,n.kg)(313,"Limit the width of the minimap to render at most a certain number of columns.")},"editor.minimap.showRegionSectionHeaders":{type:"boolean",default:a.showRegionSectionHeaders,description:(0,n.kg)(314,"Controls whether named regions are shown as section headers in the minimap.")},"editor.minimap.showMarkSectionHeaders":{type:"boolean",default:a.showMarkSectionHeaders,description:(0,n.kg)(315,"Controls whether MARK: comments are shown as section headers in the minimap.")},"editor.minimap.markSectionHeaderRegex":{type:"string",default:a.markSectionHeaderRegex,description:(0,n.kg)(316,"Defines the regular expression used to find section headers in comments. The regex must contain a named match group `label` (written as `(?<label>.+)`) that encapsulates the section header, otherwise it will not work. Optionally you can include another match group named `separator`. Use \\n in the pattern to match multi-line headers.")},"editor.minimap.sectionHeaderFontSize":{type:"number",default:a.sectionHeaderFontSize,description:(0,n.kg)(317,"Controls the font size of section headers in the minimap.")},"editor.minimap.sectionHeaderLetterSpacing":{type:"number",default:a.sectionHeaderLetterSpacing,description:(0,n.kg)(318,"Controls the amount of space (in pixels) between characters of section header. This helps the readability of the header in small font sizes.")}})}validate(a){if(!a||"object"!=typeof a)return this.defaultValue;let b=this.defaultValue.markSectionHeaderRegex,c=a.markSectionHeaderRegex;if("string"==typeof c)try{RegExp(c,"d"),b=c}catch{}return{enabled:w(a.enabled,this.defaultValue.enabled),autohide:D(a.autohide,this.defaultValue.autohide,["none","mouseover","scroll"]),size:D(a.size,this.defaultValue.size,["proportional","fill","fit"]),side:D(a.side,this.defaultValue.side,["right","left"]),showSlider:D(a.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:w(a.renderCharacters,this.defaultValue.renderCharacters),scale:z.clampedInt(a.scale,1,1,3),maxColumn:z.clampedInt(a.maxColumn,this.defaultValue.maxColumn,1,1e4),showRegionSectionHeaders:w(a.showRegionSectionHeaders,this.defaultValue.showRegionSectionHeaders),showMarkSectionHeaders:w(a.showMarkSectionHeaders,this.defaultValue.showMarkSectionHeaders),markSectionHeaderRegex:b,sectionHeaderFontSize:B.clamp(B.float(a.sectionHeaderFontSize,this.defaultValue.sectionHeaderFontSize),4,32),sectionHeaderLetterSpacing:B.clamp(B.float(a.sectionHeaderLetterSpacing,this.defaultValue.sectionHeaderLetterSpacing),0,5)}}}class ac extends r{constructor(){super(96,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:(0,n.kg)(319,"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:(0,n.kg)(320,"Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(a){return a&&"object"==typeof a?{top:z.clampedInt(a.top,0,0,1e3),bottom:z.clampedInt(a.bottom,0,0,1e3)}:this.defaultValue}}class ad extends r{constructor(){const a={enabled:!0,cycle:!0};super(98,"parameterHints",a,{"editor.parameterHints.enabled":{type:"boolean",default:a.enabled,description:(0,n.kg)(321,"Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:a.cycle,description:(0,n.kg)(322,"Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(a){return a&&"object"==typeof a?{enabled:w(a.enabled,this.defaultValue.enabled),cycle:w(a.cycle,this.defaultValue.cycle)}:this.defaultValue}}class ae extends u{constructor(){super(163,1)}compute(a,b,c){return a.pixelRatio}}class af extends r{constructor(){super(100,"placeholder",void 0)}validate(a){return void 0===a?this.defaultValue:"string"==typeof a?a:this.defaultValue}}class ag extends r{constructor(){const a={other:"offWhenInlineCompletions",comments:"off",strings:"off"},b=[{type:"boolean"},{type:"string",enum:["on","inline","off","offWhenInlineCompletions"],enumDescriptions:[(0,n.kg)(323,"Quick suggestions show inside the suggest widget"),(0,n.kg)(324,"Quick suggestions show as ghost text"),(0,n.kg)(325,"Quick suggestions are disabled"),(0,n.kg)(326,"Quick suggestions are disabled when inline completions are showing")]}];super(102,"quickSuggestions",a,{anyOf:[{type:"boolean"},{type:"string",enum:["on","inline","off","offWhenInlineCompletions"],enumDescriptions:[(0,n.kg)(327,"Quick suggestions are enabled for all token types"),(0,n.kg)(328,"Quick suggestions show as ghost text for all token types"),(0,n.kg)(329,"Quick suggestions are disabled for all token types"),(0,n.kg)(330,"Quick suggestions are disabled for all token types when inline completions are showing")]},{type:"object",additionalProperties:!1,properties:{strings:{anyOf:b,default:a.strings,description:(0,n.kg)(331,"Enable quick suggestions inside strings.")},comments:{anyOf:b,default:a.comments,description:(0,n.kg)(332,"Enable quick suggestions inside comments.")},other:{anyOf:b,default:a.other,description:(0,n.kg)(333,"Enable quick suggestions outside of strings and comments.")}}}],default:a,markdownDescription:(0,n.kg)(334,"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#`"),experiment:{mode:"auto"}}),this.defaultValue=a}validate(a){let b;if("boolean"==typeof a){let b=a?"on":"off";return{comments:b,strings:b,other:b}}if("string"==typeof a){let b=D(a,this.defaultValue.other,["on","inline","off","offWhenInlineCompletions"]);return{comments:b,strings:b,other:b}}if(!a||"object"!=typeof a)return this.defaultValue;let{other:c,comments:d,strings:e}=a,f=["on","inline","off","offWhenInlineCompletions"];return b="boolean"==typeof c?c?"on":"off":D(c,this.defaultValue.other,f),{other:b,comments:"boolean"==typeof d?d?"on":"off":D(d,this.defaultValue.comments,f),strings:"boolean"==typeof e?e?"on":"off":D(e,this.defaultValue.strings,f)}}}class ah extends r{constructor(){super(76,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[(0,n.kg)(335,"Line numbers are not rendered."),(0,n.kg)(336,"Line numbers are rendered as absolute number."),(0,n.kg)(337,"Line numbers are rendered as distance in lines to cursor position."),(0,n.kg)(338,"Line numbers are rendered every 10 lines.")],default:"on",description:(0,n.kg)(339,"Controls the display of line numbers.")})}validate(a){let b=this.defaultValue.renderType,c=this.defaultValue.renderFn;return void 0!==a&&("function"==typeof a?(b=4,c=a):b="interval"===a?3:"relative"===a?2:+("on"===a)),{renderType:b,renderFn:c}}}function ai(a){let b=a.get(112);return"editable"===b?a.get(104):"on"!==b}function aj(a){return!a.get(172)}class ak extends r{constructor(){const a=[],b={type:"number",description:(0,n.kg)(340,"Number of monospace characters at which this editor ruler will render.")};super(116,"rulers",a,{type:"array",items:{anyOf:[b,{type:["object"],properties:{column:b,color:{type:"string",description:(0,n.kg)(341,"Color of this editor ruler."),format:"color-hex"}}}]},default:a,description:(0,n.kg)(342,"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(a){if(Array.isArray(a)){let b=[];for(let c of a)"number"==typeof c?b.push({column:z.clampedInt(c,0,0,1e4),color:null}):c&&"object"==typeof c&&b.push({column:z.clampedInt(c.column,0,0,1e4),color:c.color});return b.sort((a,b)=>a.column-b.column),b}return this.defaultValue}}class al extends r{constructor(){super(105,"readOnlyMessage",void 0)}validate(a){return a&&"object"==typeof a?a:this.defaultValue}}function am(a,b){if("string"!=typeof a)return b;switch(a){case"hidden":return 2;case"visible":return 3;default:return 1}}class an extends r{constructor(){const a={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(117,"scrollbar",a,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[(0,n.kg)(343,"The vertical scrollbar will be visible only when necessary."),(0,n.kg)(344,"The vertical scrollbar will always be visible."),(0,n.kg)(345,"The vertical scrollbar will always be hidden.")],default:"auto",description:(0,n.kg)(346,"Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[(0,n.kg)(347,"The horizontal scrollbar will be visible only when necessary."),(0,n.kg)(348,"The horizontal scrollbar will always be visible."),(0,n.kg)(349,"The horizontal scrollbar will always be hidden.")],default:"auto",description:(0,n.kg)(350,"Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:a.verticalScrollbarSize,description:(0,n.kg)(351,"The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:a.horizontalScrollbarSize,description:(0,n.kg)(352,"The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:a.scrollByPage,description:(0,n.kg)(353,"Controls whether clicks scroll by page or jump to click position.")},"editor.scrollbar.ignoreHorizontalScrollbarInContentHeight":{type:"boolean",default:a.ignoreHorizontalScrollbarInContentHeight,description:(0,n.kg)(354,"When set, the horizontal scrollbar will not increase the size of the editor's content.")}})}validate(a){if(!a||"object"!=typeof a)return this.defaultValue;let b=z.clampedInt(a.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),c=z.clampedInt(a.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:z.clampedInt(a.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:am(a.vertical,this.defaultValue.vertical),horizontal:am(a.horizontal,this.defaultValue.horizontal),useShadows:w(a.useShadows,this.defaultValue.useShadows),verticalHasArrows:w(a.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:w(a.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:w(a.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:w(a.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:b,horizontalSliderSize:z.clampedInt(a.horizontalSliderSize,b,0,1e3),verticalScrollbarSize:c,verticalSliderSize:z.clampedInt(a.verticalSliderSize,c,0,1e3),scrollByPage:w(a.scrollByPage,this.defaultValue.scrollByPage),ignoreHorizontalScrollbarInContentHeight:w(a.ignoreHorizontalScrollbarInContentHeight,this.defaultValue.ignoreHorizontalScrollbarInContentHeight)}}}let ao="inUntrustedWorkspace";class ap extends r{constructor(){const a={nonBasicASCII:ao,invisibleCharacters:!0,ambiguousCharacters:!0,includeComments:ao,includeStrings:!0,allowedCharacters:{},allowedLocales:{_os:!0,_vscode:!0}};super(142,"unicodeHighlight",a,{"editor.unicodeHighlight.nonBasicASCII":{restricted:!0,type:["boolean","string"],enum:[!0,!1,ao],default:a.nonBasicASCII,description:(0,n.kg)(355,"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.")},"editor.unicodeHighlight.invisibleCharacters":{restricted:!0,type:"boolean",default:a.invisibleCharacters,description:(0,n.kg)(356,"Controls whether characters that just reserve space or have no width at all are highlighted.")},"editor.unicodeHighlight.ambiguousCharacters":{restricted:!0,type:"boolean",default:a.ambiguousCharacters,description:(0,n.kg)(357,"Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.")},"editor.unicodeHighlight.includeComments":{restricted:!0,type:["boolean","string"],enum:[!0,!1,ao],default:a.includeComments,description:(0,n.kg)(358,"Controls whether characters in comments should also be subject to Unicode highlighting.")},"editor.unicodeHighlight.includeStrings":{restricted:!0,type:["boolean","string"],enum:[!0,!1,ao],default:a.includeStrings,description:(0,n.kg)(359,"Controls whether characters in strings should also be subject to Unicode highlighting.")},"editor.unicodeHighlight.allowedCharacters":{restricted:!0,type:"object",default:a.allowedCharacters,description:(0,n.kg)(360,"Defines allowed characters that are not being highlighted."),additionalProperties:{type:"boolean"}},"editor.unicodeHighlight.allowedLocales":{restricted:!0,type:"object",additionalProperties:{type:"boolean"},default:a.allowedLocales,description:(0,n.kg)(361,"Unicode characters that are common in allowed locales are not being highlighted.")}})}applyUpdate(a,b){let c=!1;b.allowedCharacters&&a&&!(0,i.aI)(a.allowedCharacters,b.allowedCharacters)&&(a={...a,allowedCharacters:b.allowedCharacters},c=!0),b.allowedLocales&&a&&!(0,i.aI)(a.allowedLocales,b.allowedLocales)&&(a={...a,allowedLocales:b.allowedLocales},c=!0);let d=super.applyUpdate(a,b);return c?new s(d.newValue,!0):d}validate(a){return a&&"object"==typeof a?{nonBasicASCII:at(a.nonBasicASCII,ao,[!0,!1,ao]),invisibleCharacters:w(a.invisibleCharacters,this.defaultValue.invisibleCharacters),ambiguousCharacters:w(a.ambiguousCharacters,this.defaultValue.ambiguousCharacters),includeComments:at(a.includeComments,ao,[!0,!1,ao]),includeStrings:at(a.includeStrings,ao,[!0,!1,ao]),allowedCharacters:this.validateBooleanMap(a.allowedCharacters,this.defaultValue.allowedCharacters),allowedLocales:this.validateBooleanMap(a.allowedLocales,this.defaultValue.allowedLocales)}:this.defaultValue}validateBooleanMap(a,b){if("object"!=typeof a||!a)return b;let c={};for(let[b,d]of Object.entries(a))!0===d&&(c[b]=!0);return c}}class aq extends r{constructor(){const a={enabled:!0,mode:"subwordSmart",showToolbar:"onHover",suppressSuggestions:!1,keepOnBlur:!1,fontFamily:"default",syntaxHighlightingEnabled:!0,minShowDelay:0,suppressInSnippetMode:!0,edits:{enabled:!0,showCollapsed:!1,renderSideBySide:"auto",allowCodeShifting:"always",showLongDistanceHint:!0},triggerCommandOnProviderChange:!1,experimental:{suppressInlineSuggestions:"",showOnSuggestConflict:"never",emptyResponseInformation:!0}};super(71,"inlineSuggest",a,{"editor.inlineSuggest.enabled":{type:"boolean",default:a.enabled,description:(0,n.kg)(362,"Controls whether to automatically show inline suggestions in the editor.")},"editor.inlineSuggest.showToolbar":{type:"string",default:a.showToolbar,enum:["always","onHover","never"],enumDescriptions:[(0,n.kg)(363,"Show the inline suggestion toolbar whenever an inline suggestion is shown."),(0,n.kg)(364,"Show the inline suggestion toolbar when hovering over an inline suggestion."),(0,n.kg)(365,"Never show the inline suggestion toolbar.")],description:(0,n.kg)(366,"Controls when to show the inline suggestion toolbar.")},"editor.inlineSuggest.syntaxHighlightingEnabled":{type:"boolean",default:a.syntaxHighlightingEnabled,description:(0,n.kg)(367,"Controls whether to show syntax highlighting for inline suggestions in the editor.")},"editor.inlineSuggest.suppressSuggestions":{type:"boolean",default:a.suppressSuggestions,description:(0,n.kg)(368,"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.suppressInSnippetMode":{type:"boolean",default:a.suppressInSnippetMode,description:(0,n.kg)(369,"Controls whether inline suggestions are suppressed when in snippet mode.")},"editor.inlineSuggest.minShowDelay":{type:"number",default:0,minimum:0,maximum:1e4,description:(0,n.kg)(370,"Controls the minimal delay in milliseconds after which inline suggestions are shown after typing.")},"editor.inlineSuggest.experimental.suppressInlineSuggestions":{type:"string",default:a.experimental.suppressInlineSuggestions,tags:["experimental"],description:(0,n.kg)(371,"Suppresses inline completions for specified extension IDs -- comma separated."),experiment:{mode:"auto"}},"editor.inlineSuggest.experimental.emptyResponseInformation":{type:"boolean",default:a.experimental.emptyResponseInformation,tags:["experimental"],description:(0,n.kg)(372,"Controls whether to send request information from the inline suggestion provider."),experiment:{mode:"auto"}},"editor.inlineSuggest.triggerCommandOnProviderChange":{type:"boolean",default:a.triggerCommandOnProviderChange,tags:["experimental"],description:(0,n.kg)(373,"Controls whether to trigger a command when the inline suggestion provider changes."),experiment:{mode:"auto"}},"editor.inlineSuggest.experimental.showOnSuggestConflict":{type:"string",default:a.experimental.showOnSuggestConflict,tags:["experimental"],enum:["always","never","whenSuggestListIsIncomplete"],description:(0,n.kg)(374,"Controls whether to show inline suggestions when there is a suggest conflict."),experiment:{mode:"auto"}},"editor.inlineSuggest.fontFamily":{type:"string",default:a.fontFamily,description:(0,n.kg)(375,"Controls the font family of the inline suggestions.")},"editor.inlineSuggest.edits.allowCodeShifting":{type:"string",default:a.edits.allowCodeShifting,description:(0,n.kg)(376,"Controls whether showing a suggestion will shift the code to make space for the suggestion inline."),enum:["always","horizontal","never"],tags:["nextEditSuggestions"]},"editor.inlineSuggest.edits.showLongDistanceHint":{type:"boolean",default:a.edits.showLongDistanceHint,description:(0,n.kg)(377,"Controls whether long distance inline suggestions are shown."),tags:["nextEditSuggestions","experimental"]},"editor.inlineSuggest.edits.renderSideBySide":{type:"string",default:a.edits.renderSideBySide,description:(0,n.kg)(378,"Controls whether larger suggestions can be shown side by side."),enum:["auto","never"],enumDescriptions:[(0,n.kg)(379,"Larger suggestions will show side by side if there is enough space, otherwise they will be shown below."),(0,n.kg)(380,"Larger suggestions are never shown side by side and will always be shown below.")],tags:["nextEditSuggestions"]},"editor.inlineSuggest.edits.showCollapsed":{type:"boolean",default:a.edits.showCollapsed,description:(0,n.kg)(381,"Controls whether the suggestion will show as collapsed until jumping to it."),tags:["nextEditSuggestions"]}})}validate(a){return a&&"object"==typeof a?{enabled:w(a.enabled,this.defaultValue.enabled),mode:D(a.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"]),showToolbar:D(a.showToolbar,this.defaultValue.showToolbar,["always","onHover","never"]),suppressSuggestions:w(a.suppressSuggestions,this.defaultValue.suppressSuggestions),keepOnBlur:w(a.keepOnBlur,this.defaultValue.keepOnBlur),fontFamily:C.string(a.fontFamily,this.defaultValue.fontFamily),syntaxHighlightingEnabled:w(a.syntaxHighlightingEnabled,this.defaultValue.syntaxHighlightingEnabled),minShowDelay:z.clampedInt(a.minShowDelay,0,0,1e4),suppressInSnippetMode:w(a.suppressInSnippetMode,this.defaultValue.suppressInSnippetMode),edits:this._validateEdits(a.edits),triggerCommandOnProviderChange:w(a.triggerCommandOnProviderChange,this.defaultValue.triggerCommandOnProviderChange),experimental:this._validateExperimental(a.experimental)}:this.defaultValue}_validateEdits(a){return a&&"object"==typeof a?{enabled:w(a.enabled,this.defaultValue.edits.enabled),showCollapsed:w(a.showCollapsed,this.defaultValue.edits.showCollapsed),allowCodeShifting:D(a.allowCodeShifting,this.defaultValue.edits.allowCodeShifting,["always","horizontal","never"]),showLongDistanceHint:w(a.showLongDistanceHint,this.defaultValue.edits.showLongDistanceHint),renderSideBySide:D(a.renderSideBySide,this.defaultValue.edits.renderSideBySide,["never","auto"])}:this.defaultValue.edits}_validateExperimental(a){return a&&"object"==typeof a?{suppressInlineSuggestions:C.string(a.suppressInlineSuggestions,this.defaultValue.experimental.suppressInlineSuggestions),showOnSuggestConflict:D(a.showOnSuggestConflict,this.defaultValue.experimental.showOnSuggestConflict,["always","never","whenSuggestListIsIncomplete"]),emptyResponseInformation:w(a.emptyResponseInformation,this.defaultValue.experimental.emptyResponseInformation)}:this.defaultValue.experimental}}class ar extends r{constructor(){const a={enabled:l.R.bracketPairColorizationOptions.enabled,independentColorPoolPerBracketType:l.R.bracketPairColorizationOptions.independentColorPoolPerBracketType};super(21,"bracketPairColorization",a,{"editor.bracketPairColorization.enabled":{type:"boolean",default:a.enabled,markdownDescription:(0,n.kg)(382,"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:a.independentColorPoolPerBracketType,description:(0,n.kg)(383,"Controls whether each bracket type has its own independent color pool.")}})}validate(a){return a&&"object"==typeof a?{enabled:w(a.enabled,this.defaultValue.enabled),independentColorPoolPerBracketType:w(a.independentColorPoolPerBracketType,this.defaultValue.independentColorPoolPerBracketType)}:this.defaultValue}}class as extends r{constructor(){const a={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(22,"guides",a,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[(0,n.kg)(384,"Enables bracket pair guides."),(0,n.kg)(385,"Enables bracket pair guides only for the active bracket pair."),(0,n.kg)(386,"Disables bracket pair guides.")],default:a.bracketPairs,description:(0,n.kg)(387,"Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[(0,n.kg)(388,"Enables horizontal guides as addition to vertical bracket pair guides."),(0,n.kg)(389,"Enables horizontal guides only for the active bracket pair."),(0,n.kg)(390,"Disables horizontal bracket pair guides.")],default:a.bracketPairsHorizontal,description:(0,n.kg)(391,"Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:a.highlightActiveBracketPair,description:(0,n.kg)(392,"Controls whether the editor should highlight the active bracket pair.")},"editor.guides.indentation":{type:"boolean",default:a.indentation,description:(0,n.kg)(393,"Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:["boolean","string"],enum:[!0,"always",!1],enumDescriptions:[(0,n.kg)(394,"Highlights the active indent guide."),(0,n.kg)(395,"Highlights the active indent guide even if bracket guides are highlighted."),(0,n.kg)(396,"Do not highlight the active indent guide.")],default:a.highlightActiveIndentation,description:(0,n.kg)(397,"Controls whether the editor should highlight the active indent guide.")}})}validate(a){return a&&"object"==typeof a?{bracketPairs:at(a.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:at(a.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:w(a.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:w(a.indentation,this.defaultValue.indentation),highlightActiveIndentation:at(a.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation,[!0,!1,"always"])}:this.defaultValue}}function at(a,b,c){let d=c.indexOf(a);return -1===d?b:c[d]}class au extends r{constructor(){const a={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(134,"suggest",a,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[(0,n.kg)(398,"Insert suggestion without overwriting text right of the cursor."),(0,n.kg)(399,"Insert suggestion and overwrite text right of the cursor.")],default:a.insertMode,description:(0,n.kg)(400,"Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:a.filterGraceful,description:(0,n.kg)(401,"Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:a.localityBonus,description:(0,n.kg)(402,"Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:a.shareSuggestSelections,markdownDescription:(0,n.kg)(403,"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:[(0,n.kg)(404,"Always select a suggestion when automatically triggering IntelliSense."),(0,n.kg)(405,"Never select a suggestion when automatically triggering IntelliSense."),(0,n.kg)(406,"Select a suggestion only when triggering IntelliSense from a trigger character."),(0,n.kg)(407,"Select a suggestion only when triggering IntelliSense as you type.")],default:a.selectionMode,markdownDescription:(0,n.kg)(408,"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:a.snippetsPreventQuickSuggestions,description:(0,n.kg)(409,"Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:a.showIcons,description:(0,n.kg)(410,"Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:a.showStatusBar,description:(0,n.kg)(411,"Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:a.preview,description:(0,n.kg)(412,"Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:a.showInlineDetails,description:(0,n.kg)(413,"Controls whether suggest details show inline with the label or only in the details widget.")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:(0,n.kg)(414,"This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:(0,n.kg)(415,"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:(0,n.kg)(416,"When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(417,"When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(418,"When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(419,"When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.matchOnWordStartOnly":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(420,"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:(0,n.kg)(421,"When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(422,"When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(423,"When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(424,"When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(425,"When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(426,"When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(427,"When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(428,"When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(429,"When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(430,"When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(431,"When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(432,"When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(433,"When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(434,"When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(435,"When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(436,"When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(437,"When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(438,"When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(439,"When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(440,"When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(441,"When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(442,"When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(443,"When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(444,"When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:(0,n.kg)(445,"When enabled IntelliSense shows `issues`-suggestions.")}})}validate(a){return a&&"object"==typeof a?{insertMode:D(a.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:w(a.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:w(a.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:w(a.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:w(a.shareSuggestSelections,this.defaultValue.shareSuggestSelections),selectionMode:D(a.selectionMode,this.defaultValue.selectionMode,["always","never","whenQuickSuggestion","whenTriggerCharacter"]),showIcons:w(a.showIcons,this.defaultValue.showIcons),showStatusBar:w(a.showStatusBar,this.defaultValue.showStatusBar),preview:w(a.preview,this.defaultValue.preview),previewMode:D(a.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:w(a.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:w(a.showMethods,this.defaultValue.showMethods),showFunctions:w(a.showFunctions,this.defaultValue.showFunctions),showConstructors:w(a.showConstructors,this.defaultValue.showConstructors),showDeprecated:w(a.showDeprecated,this.defaultValue.showDeprecated),matchOnWordStartOnly:w(a.matchOnWordStartOnly,this.defaultValue.matchOnWordStartOnly),showFields:w(a.showFields,this.defaultValue.showFields),showVariables:w(a.showVariables,this.defaultValue.showVariables),showClasses:w(a.showClasses,this.defaultValue.showClasses),showStructs:w(a.showStructs,this.defaultValue.showStructs),showInterfaces:w(a.showInterfaces,this.defaultValue.showInterfaces),showModules:w(a.showModules,this.defaultValue.showModules),showProperties:w(a.showProperties,this.defaultValue.showProperties),showEvents:w(a.showEvents,this.defaultValue.showEvents),showOperators:w(a.showOperators,this.defaultValue.showOperators),showUnits:w(a.showUnits,this.defaultValue.showUnits),showValues:w(a.showValues,this.defaultValue.showValues),showConstants:w(a.showConstants,this.defaultValue.showConstants),showEnums:w(a.showEnums,this.defaultValue.showEnums),showEnumMembers:w(a.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:w(a.showKeywords,this.defaultValue.showKeywords),showWords:w(a.showWords,this.defaultValue.showWords),showColors:w(a.showColors,this.defaultValue.showColors),showFiles:w(a.showFiles,this.defaultValue.showFiles),showReferences:w(a.showReferences,this.defaultValue.showReferences),showFolders:w(a.showFolders,this.defaultValue.showFolders),showTypeParameters:w(a.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:w(a.showSnippets,this.defaultValue.showSnippets),showUsers:w(a.showUsers,this.defaultValue.showUsers),showIssues:w(a.showIssues,this.defaultValue.showIssues)}:this.defaultValue}}class av extends r{constructor(){super(129,"smartSelect",{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:(0,n.kg)(446,"Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"},"editor.smartSelect.selectSubwords":{description:(0,n.kg)(447,"Whether subwords (like 'foo' in 'fooBar' or 'foo_bar') should be selected."),default:!0,type:"boolean"}})}validate(a){return a&&"object"==typeof a?{selectLeadingAndTrailingWhitespace:w(a.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace),selectSubwords:w(a.selectSubwords,this.defaultValue.selectSubwords)}:this.defaultValue}}class aw extends r{constructor(){const a=[];super(147,"wordSegmenterLocales",a,{anyOf:[{type:"string"},{type:"array",items:{type:"string"}}],description:(0,n.kg)(448,"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"},default:a})}validate(a){if("string"==typeof a&&(a=[a]),Array.isArray(a)){let b=[];for(let c of a)if("string"==typeof c)try{Intl.Segmenter.supportedLocalesOf(c).length>0&&b.push(c)}catch{}return b}return this.defaultValue}}class ax extends r{constructor(){super(155,"wrappingIndent",1,{"editor.wrappingIndent":{type:"string",enum:["none","same","indent","deepIndent"],enumDescriptions:[(0,n.kg)(449,"No indentation. Wrapped lines begin at column 1."),(0,n.kg)(450,"Wrapped lines get the same indentation as the parent."),(0,n.kg)(451,"Wrapped lines get +1 indentation toward the parent."),(0,n.kg)(452,"Wrapped lines get +2 indentation toward the parent.")],description:(0,n.kg)(453,"Controls the indentation of wrapped lines."),default:"same"}})}validate(a){switch(a){case"none":return 0;case"same":break;case"indent":return 2;case"deepIndent":return 3}return 1}compute(a,b,c){return 2===b.get(2)?0:c}}class ay extends u{constructor(){super(166,{isDominatedByLongLines:!1,isWordWrapMinified:!1,isViewportWrapping:!1,wrappingColumn:-1})}compute(a,b,c){let d=b.get(165);return{isDominatedByLongLines:a.isDominatedByLongLines,isWordWrapMinified:d.isWordWrapMinified,isViewportWrapping:d.isViewportWrapping,wrappingColumn:d.wrappingColumn}}}class az extends r{constructor(){const a={enabled:!0,showDropSelector:"afterDrop"};super(43,"dropIntoEditor",a,{"editor.dropIntoEditor.enabled":{type:"boolean",default:a.enabled,markdownDescription:(0,n.kg)(454,"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:(0,n.kg)(455,"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:[(0,n.kg)(456,"Show the drop selector widget after a file is dropped into the editor."),(0,n.kg)(457,"Never show the drop selector widget. Instead the default drop provider is always used.")],default:"afterDrop"}})}validate(a){return a&&"object"==typeof a?{enabled:w(a.enabled,this.defaultValue.enabled),showDropSelector:D(a.showDropSelector,this.defaultValue.showDropSelector,["afterDrop","never"])}:this.defaultValue}}class aA extends r{constructor(){const a={enabled:!0,showPasteSelector:"afterPaste"};super(97,"pasteAs",a,{"editor.pasteAs.enabled":{type:"boolean",default:a.enabled,markdownDescription:(0,n.kg)(458,"Controls whether you can paste content in different ways.")},"editor.pasteAs.showPasteSelector":{type:"string",markdownDescription:(0,n.kg)(459,"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:[(0,n.kg)(460,"Show the paste selector widget after content is pasted into the editor."),(0,n.kg)(461,"Never show the paste selector widget. Instead the default pasting behavior is always used.")],default:"afterPaste"}})}validate(a){return a&&"object"==typeof a?{enabled:w(a.enabled,this.defaultValue.enabled),showPasteSelector:D(a.showPasteSelector,this.defaultValue.showPasteSelector,["afterPaste","never"])}:this.defaultValue}}let aB=[];function aC(a){return aB[a.id]=a,a}let aD={acceptSuggestionOnCommitCharacter:aC(new x(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:(0,n.kg)(462,"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:aC(new E(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",(0,n.kg)(463,"Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:(0,n.kg)(464,"Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:aC(new G),accessibilityPageSize:aC(new z(3,"accessibilityPageSize",500,1,0x40000000,{description:(0,n.kg)(465,"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"]})),allowOverflow:aC(new x(4,"allowOverflow",!0)),allowVariableLineHeights:aC(new x(5,"allowVariableLineHeights",!0,{description:(0,n.kg)(466,"Controls whether to allow using variable line heights in the editor.")})),allowVariableFonts:aC(new x(6,"allowVariableFonts",!0,{description:(0,n.kg)(467,"Controls whether to allow using variable fonts in the editor.")})),allowVariableFontsInAccessibilityMode:aC(new x(7,"allowVariableFontsInAccessibilityMode",!1,{description:(0,n.kg)(468,"Controls whether to allow using variable fonts in the editor in the accessibility mode."),tags:["accessibility"]})),ariaLabel:aC(new C(8,"ariaLabel",(0,n.kg)(469,"Editor content"))),ariaRequired:aC(new x(9,"ariaRequired",!1,void 0)),screenReaderAnnounceInlineSuggestion:aC(new x(12,"screenReaderAnnounceInlineSuggestion",!0,{description:(0,n.kg)(470,"Control whether inline suggestions are announced by a screen reader."),tags:["accessibility"]})),autoClosingBrackets:aC(new E(10,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",(0,n.kg)(471,"Use language configurations to determine when to autoclose brackets."),(0,n.kg)(472,"Autoclose brackets only when the cursor is to the left of whitespace."),""],description:(0,n.kg)(473,"Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingComments:aC(new E(11,"autoClosingComments","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",(0,n.kg)(474,"Use language configurations to determine when to autoclose comments."),(0,n.kg)(475,"Autoclose comments only when the cursor is to the left of whitespace."),""],description:(0,n.kg)(476,"Controls whether the editor should automatically close comments after the user adds an opening comment.")})),autoClosingDelete:aC(new E(13,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",(0,n.kg)(477,"Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:(0,n.kg)(478,"Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:aC(new E(14,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",(0,n.kg)(479,"Type over closing quotes or brackets only if they were automatically inserted."),""],description:(0,n.kg)(480,"Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:aC(new E(15,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",(0,n.kg)(481,"Use language configurations to determine when to autoclose quotes."),(0,n.kg)(482,"Autoclose quotes only when the cursor is to the left of whitespace."),""],description:(0,n.kg)(483,"Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:aC(new F(16,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],function(a){switch(a){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}},{enumDescriptions:[(0,n.kg)(484,"The editor will not insert indentation automatically."),(0,n.kg)(485,"The editor will keep the current line's indentation."),(0,n.kg)(486,"The editor will keep the current line's indentation and honor language defined brackets."),(0,n.kg)(487,"The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),(0,n.kg)(488,"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:(0,n.kg)(489,"Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),autoIndentOnPaste:aC(new x(17,"autoIndentOnPaste",!1,{description:(0,n.kg)(490,"Controls whether the editor should automatically auto-indent the pasted content.")})),autoIndentOnPasteWithinString:aC(new x(18,"autoIndentOnPasteWithinString",!0,{description:(0,n.kg)(491,"Controls whether the editor should automatically auto-indent the pasted content when pasted within a string. This takes effect when autoIndentOnPaste is true.")})),automaticLayout:aC(new x(19,"automaticLayout",!1)),autoSurround:aC(new E(20,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[(0,n.kg)(492,"Use language configurations to determine when to automatically surround selections."),(0,n.kg)(493,"Surround with quotes but not brackets."),(0,n.kg)(494,"Surround with brackets but not quotes."),""],description:(0,n.kg)(495,"Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:aC(new ar),bracketPairGuides:aC(new as),stickyTabStops:aC(new x(132,"stickyTabStops",!1,{description:(0,n.kg)(496,"Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:aC(new x(23,"codeLens",!0,{description:(0,n.kg)(497,"Controls whether the editor shows CodeLens.")})),codeLensFontFamily:aC(new C(24,"codeLensFontFamily","",{description:(0,n.kg)(498,"Controls the font family for CodeLens.")})),codeLensFontSize:aC(new z(25,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:(0,n.kg)(499,"Controls the font size in pixels for CodeLens. When set to 0, 90% of `#editor.fontSize#` is used.")})),colorDecorators:aC(new x(26,"colorDecorators",!0,{description:(0,n.kg)(500,"Controls whether the editor should render the inline color decorators and color picker.")})),colorDecoratorActivatedOn:aC(new E(168,"colorDecoratorsActivatedOn","clickAndHover",["clickAndHover","hover","click"],{enumDescriptions:[(0,n.kg)(501,"Make the color picker appear both on click and hover of the color decorator"),(0,n.kg)(502,"Make the color picker appear on hover of the color decorator"),(0,n.kg)(503,"Make the color picker appear on click of the color decorator")],description:(0,n.kg)(504,"Controls the condition to make a color picker appear from a color decorator.")})),colorDecoratorsLimit:aC(new z(27,"colorDecoratorsLimit",500,1,1e6,{markdownDescription:(0,n.kg)(505,"Controls the max number of color decorators that can be rendered in an editor at once.")})),columnSelection:aC(new x(28,"columnSelection",!1,{description:(0,n.kg)(506,"Enable that the selection with the mouse and keys is doing column selection.")})),comments:aC(new H),contextmenu:aC(new x(30,"contextmenu",!0)),copyWithSyntaxHighlighting:aC(new x(31,"copyWithSyntaxHighlighting",!0,{description:(0,n.kg)(507,"Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:aC(new F(32,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],function(a){switch(a){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}},{description:(0,n.kg)(508,"Control the cursor animation style.")})),cursorSmoothCaretAnimation:aC(new E(33,"cursorSmoothCaretAnimation","off",["off","explicit","on"],{enumDescriptions:[(0,n.kg)(509,"Smooth caret animation is disabled."),(0,n.kg)(510,"Smooth caret animation is enabled only when the user moves the cursor with an explicit gesture."),(0,n.kg)(511,"Smooth caret animation is always enabled.")],description:(0,n.kg)(512,"Controls whether the smooth caret animation should be enabled.")})),cursorStyle:aC(new F(34,"cursorStyle",f.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],I,{description:(0,n.kg)(513,"Controls the cursor style in insert input mode.")})),overtypeCursorStyle:aC(new F(92,"overtypeCursorStyle",f.Block,"block",["line","block","underline","line-thin","block-outline","underline-thin"],I,{description:(0,n.kg)(514,"Controls the cursor style in overtype input mode.")})),cursorSurroundingLines:aC(new z(35,"cursorSurroundingLines",0,0,0x40000000,{description:(0,n.kg)(515,"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:aC(new E(36,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[(0,n.kg)(516,"`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),(0,n.kg)(517,"`cursorSurroundingLines` is enforced always.")],markdownDescription:(0,n.kg)(518,"Controls when `#editor.cursorSurroundingLines#` should be enforced.")})),cursorWidth:aC(new z(37,"cursorWidth",0,0,0x40000000,{markdownDescription:(0,n.kg)(519,"Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),cursorHeight:aC(new z(38,"cursorHeight",0,0,0x40000000,{markdownDescription:(0,n.kg)(520,"Controls the height of the cursor when `#editor.cursorStyle#` is set to `line`. Cursor's max height depends on line height.")})),disableLayerHinting:aC(new x(39,"disableLayerHinting",!1)),disableMonospaceOptimizations:aC(new x(40,"disableMonospaceOptimizations",!1)),domReadOnly:aC(new x(41,"domReadOnly",!1)),doubleClickSelectsBlock:aC(new x(173,"doubleClickSelectsBlock",!0,{description:(0,n.kg)(521,"Controls whether double-clicking next to a bracket or quote selects the content inside.")})),dragAndDrop:aC(new x(42,"dragAndDrop",!0,{description:(0,n.kg)(522,"Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:aC(new K),dropIntoEditor:aC(new az),editContext:aC(new x(44,"editContext",!0,{description:(0,n.kg)(523,"Sets whether the EditContext API should be used instead of the text area to power input in the editor."),included:j.H8||j.UP||j.ib})),renderRichScreenReaderContent:aC(new x(107,"renderRichScreenReaderContent",!1,{markdownDescription:(0,n.kg)(524,"Whether to render rich screen reader content when the `#editor.editContext#` setting is enabled.")})),stickyScroll:aC(new Z),experimentalGpuAcceleration:aC(new E(46,"experimentalGpuAcceleration","off",["off","on"],{tags:["experimental"],enumDescriptions:[(0,n.kg)(525,"Use regular DOM-based rendering."),(0,n.kg)(526,"Use GPU acceleration.")],description:(0,n.kg)(527,"Controls whether to use the experimental GPU acceleration to render the editor.")})),experimentalWhitespaceRendering:aC(new E(47,"experimentalWhitespaceRendering","svg",["svg","font","off"],{enumDescriptions:[(0,n.kg)(528,"Use a new rendering method with svgs."),(0,n.kg)(529,"Use a new rendering method with font characters."),(0,n.kg)(530,"Use the stable rendering method.")],description:(0,n.kg)(531,"Controls whether whitespace is rendered with a new, experimental method.")})),extraEditorClassName:aC(new C(48,"extraEditorClassName","")),fastScrollSensitivity:aC(new B(49,"fastScrollSensitivity",5,a=>a<=0?5:a,{markdownDescription:(0,n.kg)(532,"Scrolling speed multiplier when pressing `Alt`.")})),find:aC(new L),fixedOverflowWidgets:aC(new x(51,"fixedOverflowWidgets",!1)),folding:aC(new x(52,"folding",!0,{description:(0,n.kg)(533,"Controls whether the editor has code folding enabled.")})),foldingStrategy:aC(new E(53,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[(0,n.kg)(534,"Use a language-specific folding strategy if available, else the indentation-based one."),(0,n.kg)(535,"Use the indentation-based folding strategy.")],description:(0,n.kg)(536,"Controls the strategy for computing folding ranges.")})),foldingHighlight:aC(new x(54,"foldingHighlight",!0,{description:(0,n.kg)(537,"Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:aC(new x(55,"foldingImportsByDefault",!1,{description:(0,n.kg)(538,"Controls whether the editor automatically collapses import ranges.")})),foldingMaximumRegions:aC(new z(56,"foldingMaximumRegions",5e3,10,65e3,{description:(0,n.kg)(539,"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:aC(new x(57,"unfoldOnClickAfterEndOfLine",!1,{description:(0,n.kg)(540,"Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:aC(new C(58,"fontFamily",k.jU.fontFamily,{description:(0,n.kg)(541,"Controls the font family.")})),fontInfo:aC(new O),fontLigatures2:aC(new M),fontSize:aC(new S),fontWeight:aC(new T),fontVariations:aC(new N),formatOnPaste:aC(new x(64,"formatOnPaste",!1,{description:(0,n.kg)(542,"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:aC(new x(65,"formatOnType",!1,{description:(0,n.kg)(543,"Controls whether the editor should automatically format the line after typing.")})),glyphMargin:aC(new x(66,"glyphMargin",!0,{description:(0,n.kg)(544,"Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:aC(new U),hideCursorInOverviewRuler:aC(new x(68,"hideCursorInOverviewRuler",!1,{description:(0,n.kg)(545,"Controls whether the cursor should be hidden in the overview ruler.")})),hover:aC(new V),inDiffEditor:aC(new x(70,"inDiffEditor",!1)),inertialScroll:aC(new x(158,"inertialScroll",!1,{description:(0,n.kg)(546,"Make scrolling inertial - mostly useful with touchpad on linux.")})),letterSpacing:aC(new B(72,"letterSpacing",k.jU.letterSpacing,a=>B.clamp(a,-5,20),{description:(0,n.kg)(547,"Controls the letter spacing in pixels.")})),lightbulb:aC(new Y),lineDecorationsWidth:aC(new _),lineHeight:aC(new aa),lineNumbers:aC(new ah),lineNumbersMinChars:aC(new z(77,"lineNumbersMinChars",5,1,300)),linkedEditing:aC(new x(78,"linkedEditing",!1,{description:(0,n.kg)(548,"Controls whether the editor has linked editing enabled. Depending on the language, related symbols such as HTML tags, are updated while editing.")})),links:aC(new x(79,"links",!0,{description:(0,n.kg)(549,"Controls whether the editor should detect links and make them clickable.")})),matchBrackets:aC(new E(80,"matchBrackets","always",["always","near","never"],{description:(0,n.kg)(550,"Highlight matching brackets.")})),minimap:aC(new ab),mouseStyle:aC(new E(82,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:aC(new B(83,"mouseWheelScrollSensitivity",1,a=>0===a?1:a,{markdownDescription:(0,n.kg)(551,"A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:aC(new x(84,"mouseWheelZoom",!1,{markdownDescription:j.zx?(0,n.kg)(552,"Zoom the font of the editor when using mouse wheel and holding `Cmd`."):(0,n.kg)(553,"Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:aC(new x(85,"multiCursorMergeOverlapping",!0,{description:(0,n.kg)(554,"Merge multiple cursors when they are overlapping.")})),multiCursorModifier:aC(new F(86,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],function(a){return"ctrlCmd"===a?j.zx?"metaKey":"ctrlKey":"altKey"},{markdownEnumDescriptions:[(0,n.kg)(555,"Maps to `Control` on Windows and Linux and to `Command` on macOS."),(0,n.kg)(556,"Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:(0,n.kg)(557,"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).")})),mouseMiddleClickAction:aC(new E(87,"mouseMiddleClickAction","default",["default","openLink","ctrlLeftClick"],{description:(0,n.kg)(558,"Controls what happens when middle mouse button is clicked in the editor.")})),multiCursorPaste:aC(new E(88,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[(0,n.kg)(559,"Each cursor pastes a single line of the text."),(0,n.kg)(560,"Each cursor pastes the full text.")],markdownDescription:(0,n.kg)(561,"Controls pasting when the line count of the pasted text matches the cursor count.")})),multiCursorLimit:aC(new z(89,"multiCursorLimit",1e4,1,1e5,{markdownDescription:(0,n.kg)(562,"Controls the max number of cursors that can be in an active editor at once.")})),occurrencesHighlight:aC(new E(90,"occurrencesHighlight","singleFile",["off","singleFile","multiFile"],{markdownEnumDescriptions:[(0,n.kg)(563,"Does not highlight occurrences."),(0,n.kg)(564,"Highlights occurrences only in the current file."),(0,n.kg)(565,"Experimental: Highlights occurrences across all valid open files.")],markdownDescription:(0,n.kg)(566,"Controls whether occurrences should be highlighted across open files.")})),occurrencesHighlightDelay:aC(new z(91,"occurrencesHighlightDelay",0,0,2e3,{description:(0,n.kg)(567,"Controls the delay in milliseconds after which occurrences are highlighted."),tags:["preview"]})),overtypeOnPaste:aC(new x(93,"overtypeOnPaste",!0,{description:(0,n.kg)(568,"Controls whether pasting should overtype.")})),overviewRulerBorder:aC(new x(94,"overviewRulerBorder",!0,{description:(0,n.kg)(569,"Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:aC(new z(95,"overviewRulerLanes",3,0,3)),padding:aC(new ac),pasteAs:aC(new aA),parameterHints:aC(new ad),peekWidgetDefaultFocus:aC(new E(99,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[(0,n.kg)(570,"Focus the tree when opening peek"),(0,n.kg)(571,"Focus the editor when opening peek")],description:(0,n.kg)(572,"Controls whether to focus the inline editor or the tree in the peek widget.")})),placeholder:aC(new af),definitionLinkOpensInPeek:aC(new x(101,"definitionLinkOpensInPeek",!1,{description:(0,n.kg)(573,"Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:aC(new ag),quickSuggestionsDelay:aC(new z(103,"quickSuggestionsDelay",10,0,0x40000000,{description:(0,n.kg)(574,"Controls the delay in milliseconds after which quick suggestions will show up."),experiment:{mode:"auto"}})),readOnly:aC(new x(104,"readOnly",!1)),readOnlyMessage:aC(new al),renameOnType:aC(new x(106,"renameOnType",!1,{description:(0,n.kg)(575,"Controls whether the editor auto renames on type."),markdownDeprecationMessage:(0,n.kg)(576,"Deprecated, use `#editor.linkedEditing#` instead.")})),renderControlCharacters:aC(new x(108,"renderControlCharacters",!0,{description:(0,n.kg)(577,"Controls whether the editor should render control characters."),restricted:!0})),renderFinalNewline:aC(new E(109,"renderFinalNewline",j.j9?"dimmed":"on",["off","on","dimmed"],{description:(0,n.kg)(578,"Render last line number when the file ends with a newline.")})),renderLineHighlight:aC(new E(110,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",(0,n.kg)(579,"Highlights both the gutter and the current line.")],description:(0,n.kg)(580,"Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:aC(new x(111,"renderLineHighlightOnlyWhenFocus",!1,{description:(0,n.kg)(581,"Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:aC(new E(112,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:aC(new E(113,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",(0,n.kg)(582,"Render whitespace characters except for single spaces between words."),(0,n.kg)(583,"Render whitespace characters only on selected text."),(0,n.kg)(584,"Render only trailing whitespace characters."),""],description:(0,n.kg)(585,"Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:aC(new z(114,"revealHorizontalRightPadding",15,0,1e3)),roundedSelection:aC(new x(115,"roundedSelection",!0,{description:(0,n.kg)(586,"Controls whether selections should have rounded corners.")})),rulers:aC(new ak),scrollbar:aC(new an),scrollBeyondLastColumn:aC(new z(118,"scrollBeyondLastColumn",4,0,0x40000000,{description:(0,n.kg)(587,"Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:aC(new x(119,"scrollBeyondLastLine",!0,{description:(0,n.kg)(588,"Controls whether the editor will scroll beyond the last line.")})),scrollOnMiddleClick:aC(new x(171,"scrollOnMiddleClick",!1,{description:(0,n.kg)(589,"Controls whether the editor will scroll when the middle button is pressed.")})),scrollPredominantAxis:aC(new x(120,"scrollPredominantAxis",!0,{description:(0,n.kg)(590,"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:aC(new x(121,"selectionClipboard",!0,{description:(0,n.kg)(591,"Controls whether the Linux primary clipboard should be supported."),included:j.j9})),selectionHighlight:aC(new x(122,"selectionHighlight",!0,{description:(0,n.kg)(592,"Controls whether the editor should highlight matches similar to the selection.")})),selectionHighlightMaxLength:aC(new z(123,"selectionHighlightMaxLength",200,0,0x40000000,{description:(0,n.kg)(593,"Controls how many characters can be in the selection before similiar matches are not highlighted. Set to zero for unlimited.")})),selectionHighlightMultiline:aC(new x(124,"selectionHighlightMultiline",!1,{description:(0,n.kg)(594,"Controls whether the editor should highlight selection matches that span multiple lines.")})),selectOnLineNumbers:aC(new x(125,"selectOnLineNumbers",!0)),showFoldingControls:aC(new E(126,"showFoldingControls","mouseover",["always","never","mouseover"],{enumDescriptions:[(0,n.kg)(595,"Always show the folding controls."),(0,n.kg)(596,"Never show the folding controls and reduce the gutter size."),(0,n.kg)(597,"Only show the folding controls when the mouse is over the gutter.")],description:(0,n.kg)(598,"Controls when the folding controls on the gutter are shown.")})),showUnused:aC(new x(127,"showUnused",!0,{description:(0,n.kg)(599,"Controls fading out of unused code.")})),showDeprecated:aC(new x(157,"showDeprecated",!0,{description:(0,n.kg)(600,"Controls strikethrough deprecated variables.")})),inlayHints:aC(new $),snippetSuggestions:aC(new E(128,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[(0,n.kg)(601,"Show snippet suggestions on top of other suggestions."),(0,n.kg)(602,"Show snippet suggestions below other suggestions."),(0,n.kg)(603,"Show snippets suggestions with other suggestions."),(0,n.kg)(604,"Do not show snippet suggestions.")],description:(0,n.kg)(605,"Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:aC(new av),smoothScrolling:aC(new x(130,"smoothScrolling",!1,{description:(0,n.kg)(606,"Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:aC(new z(133,"stopRenderingLineAfter",1e4,-1,0x40000000)),suggest:aC(new au),inlineSuggest:aC(new aq),inlineCompletionsAccessibilityVerbose:aC(new x(169,"inlineCompletionsAccessibilityVerbose",!1,{description:(0,n.kg)(607,"Controls whether the accessibility hint should be provided to screen reader users when an inline completion is shown.")})),suggestFontSize:aC(new z(135,"suggestFontSize",0,0,1e3,{markdownDescription:(0,n.kg)(608,"Font size for the suggest widget. When set to {0}, the value of {1} is used.","`0`","`#editor.fontSize#`")})),suggestLineHeight:aC(new z(136,"suggestLineHeight",0,0,1e3,{markdownDescription:(0,n.kg)(609,"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:aC(new x(137,"suggestOnTriggerCharacters",!0,{description:(0,n.kg)(610,"Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:aC(new E(138,"suggestSelection","first",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[(0,n.kg)(611,"Always select the first suggestion."),(0,n.kg)(612,"Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),(0,n.kg)(613,"Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:(0,n.kg)(614,"Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:aC(new E(139,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[(0,n.kg)(615,"Tab complete will insert the best matching suggestion when pressing tab."),(0,n.kg)(616,"Disable tab completions."),(0,n.kg)(617,"Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:(0,n.kg)(618,"Enables tab completions.")})),tabIndex:aC(new z(140,"tabIndex",0,-1,0x40000000)),trimWhitespaceOnDelete:aC(new x(141,"trimWhitespaceOnDelete",!1,{description:(0,n.kg)(619,"Controls whether the editor will also delete the next line's indentation whitespace when deleting a newline.")})),unicodeHighlight:aC(new ap),unusualLineTerminators:aC(new E(143,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[(0,n.kg)(620,"Unusual line terminators are automatically removed."),(0,n.kg)(621,"Unusual line terminators are ignored."),(0,n.kg)(622,"Unusual line terminators prompt to be removed.")],description:(0,n.kg)(623,"Remove unusual line terminators that might cause problems.")})),useShadowDOM:aC(new x(144,"useShadowDOM",!0)),useTabStops:aC(new x(145,"useTabStops",!0,{description:(0,n.kg)(624,"Spaces and tabs are inserted and deleted in alignment with tab stops.")})),wordBreak:aC(new E(146,"wordBreak","normal",["normal","keepAll"],{markdownEnumDescriptions:[(0,n.kg)(625,"Use the default line break rule."),(0,n.kg)(626,"Word breaks should not be used for Chinese/Japanese/Korean (CJK) text. Non-CJK text behavior is the same as for normal.")],description:(0,n.kg)(627,"Controls the word break rules used for Chinese/Japanese/Korean (CJK) text.")})),wordSegmenterLocales:aC(new aw),wordSeparators:aC(new C(148,"wordSeparators",m.J3,{description:(0,n.kg)(628,"Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:aC(new E(149,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[(0,n.kg)(629,"Lines will never wrap."),(0,n.kg)(630,"Lines will wrap at the viewport width."),(0,n.kg)(631,"Lines will wrap at `#editor.wordWrapColumn#`."),(0,n.kg)(632,"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:(0,n.kg)(633,"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:aC(new C(150,"wordWrapBreakAfterCharacters"," })]?|/&.,;\xa2\xb0′″‰℃、。。、¢,.:;?!%・・ゝゞヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ァィゥェォャュョッー”〉》」』】〕)]}」")),wordWrapBreakBeforeCharacters:aC(new C(151,"wordWrapBreakBeforeCharacters","([{‘“〈《「『【〔([{「\xa3\xa5$£¥++")),wordWrapColumn:aC(new z(152,"wordWrapColumn",80,1,0x40000000,{markdownDescription:(0,n.kg)(634,"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:aC(new E(153,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:aC(new E(154,"wordWrapOverride2","inherit",["off","on","inherit"])),wrapOnEscapedLineFeeds:aC(new x(160,"wrapOnEscapedLineFeeds",!1,{markdownDescription:(0,n.kg)(635,'Controls whether literal `\\n` shall trigger a wordWrap when `#editor.wordWrap#` is enabled.\n\nFor example:\n```c\nchar* str="hello\\nworld"\n```\nwill be displayed as\n```c\nchar* str="hello\\n\n world"\n```')})),effectiveCursorStyle:aC(new P),editorClassName:aC(new J),defaultColorDecorators:aC(new E(167,"defaultColorDecorators","auto",["auto","always","never"],{enumDescriptions:[(0,n.kg)(636,"Show default color decorators only when no extension provides colors decorators."),(0,n.kg)(637,"Always show default color decorators."),(0,n.kg)(638,"Never show default color decorators.")],description:(0,n.kg)(639,"Controls whether inline color decorations should be shown using the default document color provider.")})),pixelRatio:aC(new ae),tabFocusMode:aC(new x(164,"tabFocusMode",!1,{markdownDescription:(0,n.kg)(640,"Controls whether the editor receives tabs or defers them to the workbench for navigation.")})),layoutInfo:aC(new W),wrappingInfo:aC(new ay),wrappingIndent:aC(new ax),wrappingStrategy:aC(new X),effectiveEditContextEnabled:aC(new Q),effectiveAllowVariableFonts:aC(new R)}},21762:(a,b,c)=>{"use strict";c.d(b,{Bs:()=>h,d:()=>e});var d=c(26529);class e{constructor(a,b,c,d){this.startColumn=a,this.endColumn=b,this.className=c,this.type=d,this._lineDecorationBrand=void 0}static _equals(a,b){return a.startColumn===b.startColumn&&a.endColumn===b.endColumn&&a.className===b.className&&a.type===b.type}static equalsArr(a,b){let c=a.length;if(c!==b.length)return!1;for(let d=0;d<c;d++)if(!e._equals(a[d],b[d]))return!1;return!0}static extractWrapped(a,b,c){if(0===a.length)return a;let d=b+1,f=c+1,g=c-b,h=[],i=0;for(let b of a)b.endColumn<=d||b.startColumn>=f||(h[i++]=new e(Math.max(1,b.startColumn-d+1),Math.min(g+1,b.endColumn-d+1),b.className,b.type));return h}static filter(a,b,c,d){if(0===a.length)return[];let f=[],g=0;for(let h=0,i=a.length;h<i;h++){let i=a[h],j=i.range;if(j.endLineNumber<b||j.startLineNumber>b||j.isEmpty()&&(0===i.type||3===i.type))continue;let k=j.startLineNumber===b?j.startColumn:c,l=j.endLineNumber===b?j.endColumn:d;f[g++]=new e(k,l,i.inlineClassName,i.type)}return f}static _typeCompare(a,b){let c=[2,0,1,3];return c[a]-c[b]}static compare(a,b){if(a.startColumn!==b.startColumn)return a.startColumn-b.startColumn;if(a.endColumn!==b.endColumn)return a.endColumn-b.endColumn;let c=e._typeCompare(a.type,b.type);return 0!==c?c:a.className!==b.className?a.className<b.className?-1:1:0}}class f{constructor(a,b,c,d){this.startOffset=a,this.endOffset=b,this.className=c,this.metadata=d}}class g{constructor(){this.stopOffsets=[],this.classNames=[],this.metadata=[],this.count=0}static _metadata(a){let b=0;for(let c=0,d=a.length;c<d;c++)b|=a[c];return b}consumeLowerThan(a,b,c){for(;this.count>0&&this.stopOffsets[0]<a;){let a=0;for(;a+1<this.count&&this.stopOffsets[a]===this.stopOffsets[a+1];)a++;c.push(new f(b,this.stopOffsets[a],this.classNames.join(" "),g._metadata(this.metadata))),b=this.stopOffsets[a]+1,this.stopOffsets.splice(0,a+1),this.classNames.splice(0,a+1),this.metadata.splice(0,a+1),this.count-=a+1}return this.count>0&&b<a&&(c.push(new f(b,a-1,this.classNames.join(" "),g._metadata(this.metadata))),b=a),b}insert(a,b,c){if(0===this.count||this.stopOffsets[this.count-1]<=a)this.stopOffsets.push(a),this.classNames.push(b),this.metadata.push(c);else for(let d=0;d<this.count;d++)if(this.stopOffsets[d]>=a){this.stopOffsets.splice(d,0,a),this.classNames.splice(d,0,b),this.metadata.splice(d,0,c);break}this.count++}}class h{static normalize(a,b){if(0===b.length)return[];let c=[],e=new g,f=0;for(let g=0,h=b.length;g<h;g++){let h=b[g],i=h.startColumn,j=h.endColumn,k=h.className,l=1===h.type?2:4*(2===h.type);if(i>1){let b=a.charCodeAt(i-2);(0,d.pc)(b)&&i--}if(j>1){let b=a.charCodeAt(j-2);(0,d.pc)(b)&&j--}let m=i-1,n=j-2;f=e.consumeLowerThan(m,f,c),0===e.count&&(f=m),e.insert(n,k,l)}return e.consumeLowerThan(0x40000000,f,c),c}}},22300:()=>{},22583:(a,b,c)=>{"use strict";c.d(b,{$:()=>s,D:()=>x});var d,e,f=c(70687),g=c(95091),h=c(76631),i=c(95606),j=c(80926),k=c(99187),l=c(66560),m=c(91088),n=c(81309),o=c(72816),p=c(16794),q=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},r=function(a,b){return function(c,d){b(c,d,a)}};let s=class extends h.jG{constructor(a,b,c){super(),this._commandService=a,this._keybindingService=b,this._hiddenStates=this._register(new t(c))}createMenu(a,b,c){return new w(a,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...c},this._commandService,this._keybindingService,b)}getMenuActions(a,b,c){let d=new w(a,this._hiddenStates,{emitEventsForSubmenuChanges:!1,eventDebounceDelay:50,...c},this._commandService,this._keybindingService,b),e=d.getActions(c);return d.dispose(),e}resetHiddenStates(a){this._hiddenStates.reset(a)}};s=q([r(0,j.d),r(1,p.b),r(2,m.CS)],s);let t=class{static{d=this}static{this._key="menu.hiddenCommands"}constructor(a){this._storageService=a,this._disposables=new h.Cm,this._onDidChange=new g.vl,this.onDidChange=this._onDidChange.event,this._ignoreChangeEvent=!1,this._hiddenByDefaultCache=new Map;try{const b=a.get(d._key,0,"{}");this._data=JSON.parse(b)}catch(a){this._data=Object.create(null)}this._disposables.add(a.onDidChangeValue(0,d._key,this._disposables)(()=>{if(!this._ignoreChangeEvent)try{let b=a.get(d._key,0,"{}");this._data=JSON.parse(b)}catch(a){console.log("FAILED to read storage after UPDATE",a)}this._onDidChange.fire()}))}dispose(){this._onDidChange.dispose(),this._disposables.dispose()}_isHiddenByDefault(a,b){return this._hiddenByDefaultCache.get(`${a.id}/${b}`)??!1}setDefaultState(a,b,c){this._hiddenByDefaultCache.set(`${a.id}/${b}`,c)}isHidden(a,b){let c=this._isHiddenByDefault(a,b),d=this._data[a.id]?.includes(b)??!1;return c?!d:d}updateHidden(a,b,c){this._isHiddenByDefault(a,b)&&(c=!c);let d=this._data[a.id];if(c)d?0>d.indexOf(b)&&d.push(b):this._data[a.id]=[b];else if(d){let c=d.indexOf(b);c>=0&&(0,n.UH)(d,c),0===d.length&&delete this._data[a.id]}this._persist()}reset(a){if(void 0===a)this._data=Object.create(null),this._persist();else{for(let{id:b}of a)this._data[b]&&delete this._data[b];this._persist()}}_persist(){try{this._ignoreChangeEvent=!0;let a=JSON.stringify(this._data);this._storageService.store(d._key,a,0,0)}finally{this._ignoreChangeEvent=!1}}};t=d=q([r(0,m.CS)],t);class u{constructor(a,b){this._id=a,this._collectContextKeysForSubmenus=b,this._menuGroups=[],this._allMenuIds=new Set,this._structureContextKeys=new Set,this._preconditionContextKeys=new Set,this._toggledContextKeys=new Set,this.refresh()}get allMenuIds(){return this._allMenuIds}get structureContextKeys(){return this._structureContextKeys}get preconditionContextKeys(){return this._preconditionContextKeys}get toggledContextKeys(){return this._toggledContextKeys}refresh(){let a;for(let b of(this._menuGroups.length=0,this._allMenuIds.clear(),this._structureContextKeys.clear(),this._preconditionContextKeys.clear(),this._toggledContextKeys.clear(),this._sort(i.ZG.getMenuItems(this._id)))){let c=b.group||"";a&&a[0]===c||(a=[c,[]],this._menuGroups.push(a)),a[1].push(b),this._collectContextKeysAndSubmenuIds(b)}this._allMenuIds.add(this._id)}_sort(a){return a}_collectContextKeysAndSubmenuIds(a){if(u._fillInKbExprKeys(a.when,this._structureContextKeys),(0,i.is)(a)){if(a.command.precondition&&u._fillInKbExprKeys(a.command.precondition,this._preconditionContextKeys),a.command.toggled){let b=a.command.toggled.condition||a.command.toggled;u._fillInKbExprKeys(b,this._toggledContextKeys)}}else this._collectContextKeysForSubmenus&&(i.ZG.getMenuItems(a.submenu).forEach(this._collectContextKeysAndSubmenuIds,this),this._allMenuIds.add(a.submenu))}static _fillInKbExprKeys(a,b){if(a)for(let c of a.keys())b.add(c)}}let v=e=class extends u{constructor(a,b,c,d,e,f){super(a,c),this._hiddenStates=b,this._commandService=d,this._keybindingService=e,this._contextKeyService=f,this.refresh()}createActionGroups(a){let b=[];for(let c of this._menuGroups){let d,[f,g]=c;for(let b of g)if(this._contextKeyService.contextMatchesRules(b.when)){let c=(0,i.is)(b);c&&this._hiddenStates.setDefaultState(this._id,b.command.id,!!b.isHiddenByDefault);let f=function(a,b,c){let d=(0,i.i1)(b)?b.submenu.id:b.id,e="string"==typeof b.title?b.title:b.title.value,f=(0,l.ih)({id:`hide/${a.id}/${d}`,label:(0,o.kg)(1703,"Hide '{0}'",e),run(){c.updateHidden(a,d,!0)}}),g=(0,l.ih)({id:`toggle/${a.id}/${d}`,label:e,get checked(){return!c.isHidden(a,d)},run(){c.updateHidden(a,d,!!this.checked)}});return{hide:f,toggle:g,get isHidden(){return!g.checked}}}(this._id,c?b.command:b,this._hiddenStates);if(c){let c=x(this._commandService,this._keybindingService,b.command.id,b.when);(d??=[]).push(new i.Xe(b.command,b.alt,a,f,c,this._contextKeyService,this._commandService))}else{let c=new e(b.submenu,this._hiddenStates,this._collectContextKeysForSubmenus,this._commandService,this._keybindingService,this._contextKeyService).createActionGroups(a),g=l.wv.join(...c.map(a=>a[1]));g.length>0&&(d??=[]).push(new i.nI(b,f,g))}}d&&d.length>0&&b.push([f,d])}return b}_sort(a){return a.sort(e._compareMenuItems)}static _compareMenuItems(a,b){let c=a.group,d=b.group;if(c!==d){if(!c)return 1;if(!d||"navigation"===c)return -1;if("navigation"===d)return 1;let a=c.localeCompare(d);if(0!==a)return a}let f=a.order||0,g=b.order||0;return f<g?-1:f>g?1:e._compareTitles((0,i.is)(a)?a.command.title:a.title,(0,i.is)(b)?b.command.title:b.title)}static _compareTitles(a,b){let c="string"==typeof a?a:a.original,d="string"==typeof b?b:b.original;return c.localeCompare(d)}};v=e=q([r(3,j.d),r(4,p.b),r(5,k.fN)],v);let w=class{constructor(a,b,c,d,e,j){this._disposables=new h.Cm,this._menuInfo=new v(a,b,c.emitEventsForSubmenuChanges,d,e,j);const k=new f.uC(()=>{this._menuInfo.refresh(),this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!0,isToggleChange:!0})},c.eventDebounceDelay);this._disposables.add(k),this._disposables.add(i.ZG.onDidChangeMenu(a=>{for(let b of this._menuInfo.allMenuIds)if(a.has(b)){k.schedule();break}}));const l=this._disposables.add(new h.Cm),m=a=>{let b=!1,c=!1,d=!1;for(let e of a)if(b=b||e.isStructuralChange,c=c||e.isEnablementChange,d=d||e.isToggleChange,b&&c&&d)break;return{menu:this,isStructuralChange:b,isEnablementChange:c,isToggleChange:d}},n=()=>{l.add(j.onDidChangeContext(a=>{let b=a.affectsSome(this._menuInfo.structureContextKeys),c=a.affectsSome(this._menuInfo.preconditionContextKeys),d=a.affectsSome(this._menuInfo.toggledContextKeys);(b||c||d)&&this._onDidChange.fire({menu:this,isStructuralChange:b,isEnablementChange:c,isToggleChange:d})})),l.add(b.onDidChange(a=>{this._onDidChange.fire({menu:this,isStructuralChange:!0,isEnablementChange:!1,isToggleChange:!1})}))};this._onDidChange=new g.uI({onWillAddFirstListener:n,onDidRemoveLastListener:l.clear.bind(l),delay:c.eventDebounceDelay,merge:m}),this.onDidChange=this._onDidChange.event}getActions(a){return this._menuInfo.createActionGroups(a)}dispose(){this._disposables.dispose(),this._onDidChange.dispose()}};function x(a,b,c,d,e=!0){return(0,l.ih)({id:`configureKeybinding/${c}`,label:(0,o.kg)(1704,"Configure Keybinding"),enabled:e,run(){let e=!b.lookupKeybinding(c)&&d?d.serialize():void 0;a.executeCommand("workbench.action.openGlobalKeybindings",`@command:${c}`+(e?` +when:${e}`:""))}})}w=q([r(3,j.d),r(4,p.b),r(5,k.fN)],w)},22913:(a,b,c)=>{"use strict";c.d(b,{I:()=>k});var d=c(26529),e=c(18530),f=c(6812),g=c(61822),h=c(71296),i=c(48580);class j{constructor(a,b,c){this._cursorPositionBrand=void 0,this.lineNumber=a,this.column=b,this.leftoverVisibleColumns=c}}class k{static leftPosition(a,b){if(b.column>a.getLineMinColumn(b.lineNumber))return b.delta(void 0,-(0,d.MV)(a.getLineContent(b.lineNumber),b.column-1));if(!(b.lineNumber>1))return b;{let c=b.lineNumber-1;return new f.y(c,a.getLineMaxColumn(c))}}static leftPositionAtomicSoftTabs(a,b,c){if(b.column<=a.getLineIndentColumn(b.lineNumber)){let d=a.getLineMinColumn(b.lineNumber),e=a.getLineContent(b.lineNumber),g=h.s.atomicPosition(e,b.column-1,c,0);if(-1!==g&&g+1>=d)return new f.y(b.lineNumber,g+1)}return this.leftPosition(a,b)}static left(a,b,c){let d=a.stickyTabStops?k.leftPositionAtomicSoftTabs(b,c,a.tabSize):k.leftPosition(b,c);return new j(d.lineNumber,d.column,0)}static moveLeft(a,b,c,d,e){let f,g;if(c.hasSelection()&&!d)f=c.selection.startLineNumber,g=c.selection.startColumn;else{let d=c.position.delta(void 0,-(e-1)),h=b.normalizePosition(k.clipPositionColumn(d,b),0),i=k.left(a,b,h);f=i.lineNumber,g=i.column}return c.move(d,f,g,0)}static clipPositionColumn(a,b){return new f.y(a.lineNumber,k.clipRange(a.column,b.getLineMinColumn(a.lineNumber),b.getLineMaxColumn(a.lineNumber)))}static clipRange(a,b,c){return a<b?b:a>c?c:a}static rightPosition(a,b,c){return c<a.getLineMaxColumn(b)?c+=(0,d.iy)(a.getLineContent(b),c-1):b<a.getLineCount()&&(b+=1,c=a.getLineMinColumn(b)),new f.y(b,c)}static rightPositionAtomicSoftTabs(a,b,c,d,e){if(c<a.getLineIndentColumn(b)){let e=a.getLineContent(b),g=h.s.atomicPosition(e,c-1,d,1);if(-1!==g)return new f.y(b,g+1)}return this.rightPosition(a,b,c)}static right(a,b,c){let d=a.stickyTabStops?k.rightPositionAtomicSoftTabs(b,c.lineNumber,c.column,a.tabSize,a.indentSize):k.rightPosition(b,c.lineNumber,c.column);return new j(d.lineNumber,d.column,0)}static moveRight(a,b,c,d,e){let f,g;if(c.hasSelection()&&!d)f=c.selection.endLineNumber,g=c.selection.endColumn;else{let d=c.position.delta(void 0,e-1),h=b.normalizePosition(k.clipPositionColumn(d,b),1),i=k.right(a,b,h);f=i.lineNumber,g=i.column}return c.move(d,f,g,0)}static vertical(a,b,c,d,g,h,i,k){let l=e.A.visibleColumnFromColumn(b.getLineContent(c),d,a.tabSize)+g,m=b.getLineCount(),n=1===c&&1===d,o=c===m&&d===b.getLineMaxColumn(c),p=h<c?n:o;if((c=h)<1?(c=1,d=i?b.getLineMinColumn(c):Math.min(b.getLineMaxColumn(c),d)):c>m?(c=m,d=i?b.getLineMaxColumn(c):Math.min(b.getLineMaxColumn(c),d)):d=a.columnFromVisibleColumn(b,c,l),g=p?0:l-e.A.visibleColumnFromColumn(b.getLineContent(c),d,a.tabSize),void 0!==k){let a=new f.y(c,d),e=b.normalizePosition(a,k);g+=d-e.column,c=e.lineNumber,d=e.column}return new j(c,d,g)}static down(a,b,c,d,e,f,g){return this.vertical(a,b,c,d,e,c+f,g,4)}static moveDown(a,b,c,d,e){let g,h,i;c.hasSelection()&&!d?(g=c.selection.endLineNumber,h=c.selection.endColumn):(g=c.position.lineNumber,h=c.position.column);let j=0;do if(i=k.down(a,b,g+j,h,c.leftoverVisibleColumns,e,!0),b.normalizePosition(new f.y(i.lineNumber,i.column),2).lineNumber>g)break;while(j++<10&&g+j<b.getLineCount());return c.move(d,i.lineNumber,i.column,i.leftoverVisibleColumns)}static translateDown(a,b,c){let d=c.selection,e=k.down(a,b,d.selectionStartLineNumber,d.selectionStartColumn,c.selectionStartLeftoverVisibleColumns,1,!1),h=k.down(a,b,d.positionLineNumber,d.positionColumn,c.leftoverVisibleColumns,1,!1);return new i.mG(new g.Q(e.lineNumber,e.column,e.lineNumber,e.column),0,e.leftoverVisibleColumns,new f.y(h.lineNumber,h.column),h.leftoverVisibleColumns)}static up(a,b,c,d,e,f,g){return this.vertical(a,b,c,d,e,c-f,g,3)}static moveUp(a,b,c,d,e){let f,g;c.hasSelection()&&!d?(f=c.selection.startLineNumber,g=c.selection.startColumn):(f=c.position.lineNumber,g=c.position.column);let h=k.up(a,b,f,g,c.leftoverVisibleColumns,e,!0);return c.move(d,h.lineNumber,h.column,h.leftoverVisibleColumns)}static translateUp(a,b,c){let d=c.selection,e=k.up(a,b,d.selectionStartLineNumber,d.selectionStartColumn,c.selectionStartLeftoverVisibleColumns,1,!1),h=k.up(a,b,d.positionLineNumber,d.positionColumn,c.leftoverVisibleColumns,1,!1);return new i.mG(new g.Q(e.lineNumber,e.column,e.lineNumber,e.column),0,e.leftoverVisibleColumns,new f.y(h.lineNumber,h.column),h.leftoverVisibleColumns)}static _isBlankLine(a,b){return 0===a.getLineFirstNonWhitespaceColumn(b)}static moveToPrevBlankLine(a,b,c,d){let e=c.position.lineNumber;for(;e>1&&this._isBlankLine(b,e);)e--;for(;e>1&&!this._isBlankLine(b,e);)e--;return c.move(d,e,b.getLineMinColumn(e),0)}static moveToNextBlankLine(a,b,c,d){let e=b.getLineCount(),f=c.position.lineNumber;for(;f<e&&this._isBlankLine(b,f);)f++;for(;f<e&&!this._isBlankLine(b,f);)f++;return c.move(d,f,b.getLineMinColumn(f),0)}static moveToBeginningOfLine(a,b,c,d){let e,f=c.position.lineNumber,g=b.getLineMinColumn(f),h=b.getLineFirstNonWhitespaceColumn(f)||g;return e=c.position.column===h?g:h,c.move(d,f,e,0)}static moveToEndOfLine(a,b,c,d,e){let f=c.position.lineNumber,g=b.getLineMaxColumn(f);return c.move(d,f,g,e?0x40000000-g:0)}static moveToBeginningOfBuffer(a,b,c,d){return c.move(d,1,1,0)}static moveToEndOfBuffer(a,b,c,d){let e=b.getLineCount(),f=b.getLineMaxColumn(e);return c.move(d,e,f,0)}}},23365:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(58254).u1)("markerDecorationsService")},23570:(a,b,c)=>{"use strict";c.d(b,{q:()=>d});let d={enableSplitViewResizing:!0,renderSideBySide:!0,renderMarginRevertIcon:!0,renderGutterMenu:!0,maxComputationTime:5e3,maxFileSize:50,ignoreTrimWhitespace:!0,renderIndicators:!0,originalEditable:!1,diffCodeLens:!1,renderOverviewRuler:!0,diffWordWrap:"inherit",diffAlgorithm:"advanced",accessibilityVerbose:!1,experimental:{showMoves:!1,showEmptyDecorations:!0,useTrueInlineView:!1},hideUnchangedRegions:{enabled:!1,contextLineCount:3,minimumLineCount:3,revealLineCount:20},isInEmbeddedEditor:!1,onlyShowAccessibleDiffViewer:!1,renderSideBySideInlineBreakpoint:900,useInlineViewWhenSpaceIsLimited:!0,compactMode:!1}},23975:(a,b,c)=>{"use strict";c.d(b,{TT:()=>am,cZ:()=>av,D$:()=>aw,pn:()=>ar});var d,e=c(77497),f=c(75082);function g(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}let h=Object.entries,i=Object.setPrototypeOf,j=Object.isFrozen,k=Object.getPrototypeOf,l=Object.getOwnPropertyDescriptor,m=Object.freeze,n=Object.seal,o=Object.create,p="u">typeof Reflect&&Reflect,q=p.apply,r=p.construct;m||(m=function(a){return a}),n||(n=function(a){return a}),q||(q=function(a,b){for(var c=arguments.length,d=Array(c>2?c-2:0),e=2;e<c;e++)d[e-2]=arguments[e];return a.apply(b,d)}),r||(r=function(a){for(var b=arguments.length,c=Array(b>1?b-1:0),d=1;d<b;d++)c[d-1]=arguments[d];return new a(...c)});let s=M(Array.prototype.forEach),t=M(Array.prototype.lastIndexOf),u=M(Array.prototype.pop),v=M(Array.prototype.push),w=M(Array.prototype.splice),x=Array.isArray,y=M(String.prototype.toLowerCase),z=M(String.prototype.toString),A=M(String.prototype.match),B=M(String.prototype.replace),C=M(String.prototype.indexOf),D=M(String.prototype.trim),E=M(Number.prototype.toString),F=M(Boolean.prototype.toString),G="u"<typeof BigInt?null:M(BigInt.prototype.toString),H="u"<typeof Symbol?null:M(Symbol.prototype.toString),I=M(Object.prototype.hasOwnProperty),J=M(Object.prototype.toString),K=M(RegExp.prototype.test),L=(d=TypeError,function(){for(var a=arguments.length,b=Array(a),c=0;c<a;c++)b[c]=arguments[c];return r(d,b)});function M(a){return function(b){b instanceof RegExp&&(b.lastIndex=0);for(var c=arguments.length,d=Array(c>1?c-1:0),e=1;e<c;e++)d[e-1]=arguments[e];return q(a,b,d)}}function N(a,b){let c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:y;if(i&&i(a,null),!x(b))return a;let d=b.length;for(;d--;){let e=b[d];if("string"==typeof e){let a=c(e);a!==e&&(j(b)||(b[d]=a),e=a)}a[e]=!0}return a}function O(a){let b=o(null);for(let d of h(a)){var c=function(a){if(Array.isArray(a))return a}(d)||function(a){var b=null==a?null:"u">typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(null!=b){var c,d,e,f,g=[],h=!0,i=!1;try{e=(b=b.call(a)).next,!1;for(;!(h=(c=e.call(b)).done)&&(g.push(c.value),2!==g.length);h=!0);}catch(a){i=!0,d=a}finally{try{if(!h&&null!=b.return&&(f=b.return(),Object(f)!==f))return}finally{if(i)throw d}}return g}}(d)||function(a){if(a){if("string"==typeof a)return g(a,2);var b=({}).toString.call(a).slice(8,-1);return"Object"===b&&a.constructor&&(b=a.constructor.name),"Map"===b||"Set"===b?Array.from(a):"Arguments"===b||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(b)?g(a,2):void 0}}(d)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}();let e=c[0],f=c[1];I(a,e)&&(x(f)?b[e]=function(a){for(let b=0;b<a.length;b++)I(a,b)||(a[b]=null);return a}(f):f&&"object"==typeof f&&f.constructor===Object?b[e]=O(f):b[e]=f)}return b}function P(a,b){for(;null!==a;){let c=l(a,b);if(c){if(c.get)return M(c.get);if("function"==typeof c.value)return M(c.value)}a=k(a)}return function(){return null}}let Q=m(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),R=m(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),S=m(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),T=m(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),U=m(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),V=m(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),W=m(["#text"]),X=m(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),Y=m(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Z=m(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),$=m(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),_=n(/{{[\w\W]*|^[\w\W]*}}/g),aa=n(/<%[\w\W]*|^[\w\W]*%>/g),ab=n(/\${[\w\W]*/g),ac=n(/^data-[\-\w.\u00B7-\uFFFF]+$/),ad=n(/^aria-[\-\w]+$/),ae=n(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),af=n(/^(?:\w+script|data):/i),ag=n(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),ah=n(/^html$/i),ai=n(/^[a-z][.\w]*(-[.\w]+)+$/i),aj=function(a,b){if("object"!=typeof a||"function"!=typeof a.createPolicy)return null;let c=null,d="data-tt-policy-suffix";b&&b.hasAttribute(d)&&(c=b.getAttribute(d));let e="dompurify"+(c?"#"+c:"");try{return a.createPolicy(e,{createHTML:a=>a,createScriptURL:a=>a})}catch(a){return console.warn("TrustedTypes policy "+e+" could not be created."),null}},ak=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};var al=function a(){let b,c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"u"<typeof window?null:window,d=b=>a(b);if(d.version="3.4.8",d.removed=[],!c||!c.document||9!==c.document.nodeType||!c.Element)return d.isSupported=!1,d;let e=c.document,f=e,g=f.currentScript;c.DocumentFragment;let i=c.HTMLTemplateElement,j=c.Node,k=c.Element,l=c.NodeFilter;void 0===c.NamedNodeMap&&(c.NamedNodeMap||c.MozNamedAttrMap),c.HTMLFormElement;let n=c.DOMParser,p=c.trustedTypes,q=k.prototype,r=P(q,"cloneNode"),M=P(q,"remove"),al=P(q,"nextSibling"),am=P(q,"childNodes"),an=P(q,"parentNode"),ao=P(q,"shadowRoot"),ap=P(q,"attributes"),aq=j&&j.prototype?P(j.prototype,"nodeType"):null,ar=j&&j.prototype?P(j.prototype,"nodeName"):null;if("function"==typeof i){let a=e.createElement("template");a.content&&a.content.ownerDocument&&(e=a.content.ownerDocument)}let as="",at=0,au=function(a){if(at>0)throw L('The configured TRUSTED_TYPES_POLICY.createHTML must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose createHTML wraps DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.');at++;try{return b.createHTML(a)}finally{at--}},av=e,aw=av.implementation,ax=av.createNodeIterator,ay=av.createDocumentFragment,az=av.getElementsByTagName,aA=f.importNode,aB=ak();d.isSupported="function"==typeof h&&"function"==typeof an&&aw&&void 0!==aw.createHTMLDocument;let aC=ae,aD=null,aE=N({},[...Q,...R,...S,...U,...W]),aF=null,aG=N({},[...X,...Y,...Z,...$]),aH=Object.seal(o(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),aI=null,aJ=null,aK=Object.seal(o(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),aL=!0,aM=!0,aN=!1,aO=!0,aP=!1,aQ=!0,aR=!1,aS=!1,aT=!1,aU=!1,aV=!1,aW=!1,aX=!0,aY=!1,aZ="user-content-",a$=!0,a_=!1,a0={},a1=null,a2=N({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),a3=null,a4=N({},["audio","video","img","source","image","track"]),a5=null,a6=N({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),a7="http://www.w3.org/1998/Math/MathML",a8="http://www.w3.org/2000/svg",a9="http://www.w3.org/1999/xhtml",ba=a9,bb=!1,bc=null,bd=N({},[a7,a8,a9],z),be=N({},["mi","mo","mn","ms","mtext"]),bf=N({},["annotation-xml"]),bg=N({},["title","style","font","a","script"]),bh=null,bi=["application/xhtml+xml","text/html"],bj=null,bk=null,bl=e.createElement("form"),bm=function(a){return a instanceof RegExp||a instanceof Function},bn=function(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(bk&&bk===a)return;a&&"object"==typeof a||(a={}),a=O(a),bj="application/xhtml+xml"===(bh=-1===bi.indexOf(a.PARSER_MEDIA_TYPE)?"text/html":a.PARSER_MEDIA_TYPE)?z:y,aD=I(a,"ALLOWED_TAGS")&&x(a.ALLOWED_TAGS)?N({},a.ALLOWED_TAGS,bj):aE,aF=I(a,"ALLOWED_ATTR")&&x(a.ALLOWED_ATTR)?N({},a.ALLOWED_ATTR,bj):aG,bc=I(a,"ALLOWED_NAMESPACES")&&x(a.ALLOWED_NAMESPACES)?N({},a.ALLOWED_NAMESPACES,z):bd,a5=I(a,"ADD_URI_SAFE_ATTR")&&x(a.ADD_URI_SAFE_ATTR)?N(O(a6),a.ADD_URI_SAFE_ATTR,bj):a6,a3=I(a,"ADD_DATA_URI_TAGS")&&x(a.ADD_DATA_URI_TAGS)?N(O(a4),a.ADD_DATA_URI_TAGS,bj):a4,a1=I(a,"FORBID_CONTENTS")&&x(a.FORBID_CONTENTS)?N({},a.FORBID_CONTENTS,bj):a2,aI=I(a,"FORBID_TAGS")&&x(a.FORBID_TAGS)?N({},a.FORBID_TAGS,bj):O({}),aJ=I(a,"FORBID_ATTR")&&x(a.FORBID_ATTR)?N({},a.FORBID_ATTR,bj):O({}),a0=!!I(a,"USE_PROFILES")&&(a.USE_PROFILES&&"object"==typeof a.USE_PROFILES?O(a.USE_PROFILES):a.USE_PROFILES),aL=!1!==a.ALLOW_ARIA_ATTR,aM=!1!==a.ALLOW_DATA_ATTR,aN=a.ALLOW_UNKNOWN_PROTOCOLS||!1,aO=!1!==a.ALLOW_SELF_CLOSE_IN_ATTR,aP=a.SAFE_FOR_TEMPLATES||!1,aQ=!1!==a.SAFE_FOR_XML,aR=a.WHOLE_DOCUMENT||!1,aU=a.RETURN_DOM||!1,aV=a.RETURN_DOM_FRAGMENT||!1,aW=a.RETURN_TRUSTED_TYPE||!1,aT=a.FORCE_BODY||!1,aX=!1!==a.SANITIZE_DOM,aY=a.SANITIZE_NAMED_PROPS||!1,a$=!1!==a.KEEP_CONTENT,a_=a.IN_PLACE||!1,aC=!function(a){try{return K(a,""),!0}catch(a){return!1}}(a.ALLOWED_URI_REGEXP)?ae:a.ALLOWED_URI_REGEXP,ba="string"==typeof a.NAMESPACE?a.NAMESPACE:a9,be=I(a,"MATHML_TEXT_INTEGRATION_POINTS")&&a.MATHML_TEXT_INTEGRATION_POINTS&&"object"==typeof a.MATHML_TEXT_INTEGRATION_POINTS?O(a.MATHML_TEXT_INTEGRATION_POINTS):N({},["mi","mo","mn","ms","mtext"]),bf=I(a,"HTML_INTEGRATION_POINTS")&&a.HTML_INTEGRATION_POINTS&&"object"==typeof a.HTML_INTEGRATION_POINTS?O(a.HTML_INTEGRATION_POINTS):N({},["annotation-xml"]);let c=I(a,"CUSTOM_ELEMENT_HANDLING")&&a.CUSTOM_ELEMENT_HANDLING&&"object"==typeof a.CUSTOM_ELEMENT_HANDLING?O(a.CUSTOM_ELEMENT_HANDLING):o(null);if(aH=o(null),I(c,"tagNameCheck")&&bm(c.tagNameCheck)&&(aH.tagNameCheck=c.tagNameCheck),I(c,"attributeNameCheck")&&bm(c.attributeNameCheck)&&(aH.attributeNameCheck=c.attributeNameCheck),I(c,"allowCustomizedBuiltInElements")&&"boolean"==typeof c.allowCustomizedBuiltInElements&&(aH.allowCustomizedBuiltInElements=c.allowCustomizedBuiltInElements),aP&&(aM=!1),aV&&(aU=!0),a0&&(aD=N({},W),aF=o(null),!0===a0.html&&(N(aD,Q),N(aF,X)),!0===a0.svg&&(N(aD,R),N(aF,Y),N(aF,$)),!0===a0.svgFilters&&(N(aD,S),N(aF,Y),N(aF,$)),!0===a0.mathMl&&(N(aD,U),N(aF,Z),N(aF,$))),aK.tagCheck=null,aK.attributeCheck=null,I(a,"ADD_TAGS")&&("function"==typeof a.ADD_TAGS?aK.tagCheck=a.ADD_TAGS:x(a.ADD_TAGS)&&(aD===aE&&(aD=O(aD)),N(aD,a.ADD_TAGS,bj))),I(a,"ADD_ATTR")&&("function"==typeof a.ADD_ATTR?aK.attributeCheck=a.ADD_ATTR:x(a.ADD_ATTR)&&(aF===aG&&(aF=O(aF)),N(aF,a.ADD_ATTR,bj))),I(a,"ADD_URI_SAFE_ATTR")&&x(a.ADD_URI_SAFE_ATTR)&&N(a5,a.ADD_URI_SAFE_ATTR,bj),I(a,"FORBID_CONTENTS")&&x(a.FORBID_CONTENTS)&&(a1===a2&&(a1=O(a1)),N(a1,a.FORBID_CONTENTS,bj)),I(a,"ADD_FORBID_CONTENTS")&&x(a.ADD_FORBID_CONTENTS)&&(a1===a2&&(a1=O(a1)),N(a1,a.ADD_FORBID_CONTENTS,bj)),a$&&(aD["#text"]=!0),aR&&N(aD,["html","head","body"]),aD.table&&(N(aD,["tbody"]),delete aI.tbody),a.TRUSTED_TYPES_POLICY){if("function"!=typeof a.TRUSTED_TYPES_POLICY.createHTML)throw L('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof a.TRUSTED_TYPES_POLICY.createScriptURL)throw L('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let c=b;b=a.TRUSTED_TYPES_POLICY;try{as=au("")}catch(a){throw b=c,a}}else void 0===b&&null!==a.TRUSTED_TYPES_POLICY&&(b=aj(p,g)),b&&"string"==typeof as&&(as=au(""));(aB.uponSanitizeElement.length>0||aB.uponSanitizeAttribute.length>0)&&aD===aE&&(aD=O(aD)),aB.uponSanitizeAttribute.length>0&&aF===aG&&(aF=O(aF)),m&&m(a),bk=a},bo=N({},[...R,...S,...T]),bp=N({},[...U,...V]),bq=function(a){let b=an(a);b&&b.tagName||(b={namespaceURI:ba,tagName:"template"});let c=y(a.tagName),d=y(b.tagName);return!!bc[a.namespaceURI]&&(a.namespaceURI===a8?b.namespaceURI===a9?"svg"===c:b.namespaceURI===a7?"svg"===c&&("annotation-xml"===d||be[d]):!!bo[c]:a.namespaceURI===a7?b.namespaceURI===a9?"math"===c:b.namespaceURI===a8?"math"===c&&bf[d]:!!bp[c]:a.namespaceURI===a9?(b.namespaceURI!==a8||!!bf[d])&&(b.namespaceURI!==a7||!!be[d])&&!bp[c]&&(bg[c]||!bo[c]):"application/xhtml+xml"===bh&&!!bc[a.namespaceURI])},br=function(a){v(d.removed,{element:a});try{an(a).removeChild(a)}catch(b){M(a)}},bs=function(a,b){try{v(d.removed,{attribute:b.getAttributeNode(a),from:b})}catch(a){v(d.removed,{attribute:null,from:b})}if(b.removeAttribute(a),"is"===a)if(aU||aV)try{br(b)}catch(a){}else try{b.setAttribute(a,"")}catch(a){}},bt=function(a){let c=null,d=null;if(aT)a="<remove></remove>"+a;else{let b=A(a,/^[\r\n\t ]+/);d=b&&b[0]}"application/xhtml+xml"===bh&&ba===a9&&(a='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+a+"</body></html>");let f=b?au(a):a;if(ba===a9)try{c=new n().parseFromString(f,bh)}catch(a){}if(!c||!c.documentElement){c=aw.createDocument(ba,"template",null);try{c.documentElement.innerHTML=bb?as:f}catch(a){}}let g=c.body||c.documentElement;return(a&&d&&g.insertBefore(e.createTextNode(d),g.childNodes[0]||null),ba===a9)?az.call(c,aR?"html":"body")[0]:aR?c.documentElement:g},bu=function(a){return ax.call(a.ownerDocument||a,a,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT|l.SHOW_PROCESSING_INSTRUCTION|l.SHOW_CDATA_SECTION,null)},bv=function(a){var b,c;a.normalize();let d=ax.call(a.ownerDocument||a,a,l.SHOW_TEXT|l.SHOW_COMMENT|l.SHOW_CDATA_SECTION|l.SHOW_PROCESSING_INSTRUCTION,null),e=d.nextNode();for(;e;){let a=e.data;s([_,aa,ab],b=>{a=B(a,b," ")}),e.data=a,e=d.nextNode()}s(Array.from(null!=(b=null==(c=a.querySelectorAll)?void 0:c.call(a,"template"))?b:[]),a=>{bx(a.content)&&bv(a.content)})},bw=function(a){let b=ar?ar(a):null;return"string"==typeof b&&"form"===bj(b)&&("string"!=typeof a.nodeName||"string"!=typeof a.textContent||"function"!=typeof a.removeChild||a.attributes!==ap(a)||"function"!=typeof a.removeAttribute||"function"!=typeof a.setAttribute||"string"!=typeof a.namespaceURI||"function"!=typeof a.insertBefore||"function"!=typeof a.hasChildNodes||a.nodeType!==aq(a)||a.childNodes!==am(a))},bx=function(a){if(!aq||"object"!=typeof a||null===a)return!1;try{return 11===aq(a)}catch(a){return!1}},by=function(a){if(!aq||"object"!=typeof a||null===a)return!1;try{return"number"==typeof aq(a)}catch(a){return!1}};function bz(a,b,c){s(a,a=>{a.call(d,b,c,bk)})}let bA=function(a){let b=null;if(bz(aB.beforeSanitizeElements,a,null),bw(a))return br(a),!0;let c=bj(ar?ar(a):a.nodeName);if(bz(aB.uponSanitizeElement,a,{tagName:c,allowedTags:aD}),aQ&&a.hasChildNodes()&&!by(a.firstElementChild)&&K(/<[/\w!]/g,a.innerHTML)&&K(/<[/\w!]/g,a.textContent)||aQ&&a.namespaceURI===a9&&"style"===c&&by(a.firstElementChild)||7===a.nodeType||aQ&&8===a.nodeType&&K(/<[/\w]/g,a.data))return br(a),!0;if(aI[c]||!(aK.tagCheck instanceof Function&&aK.tagCheck(c))&&!aD[c]){if(!aI[c]&&bD(c)&&(aH.tagNameCheck instanceof RegExp&&K(aH.tagNameCheck,c)||aH.tagNameCheck instanceof Function&&aH.tagNameCheck(c)))return!1;if(a$&&!a1[c]){let b=an(a),c=am(a);if(c&&b){let d=c.length;for(let e=d-1;e>=0;--e){let d=r(c[e],!0);b.insertBefore(d,al(a))}}}return br(a),!0}return(aq?aq(a):a.nodeType)===1&&!bq(a)||("noscript"===c||"noembed"===c||"noframes"===c)&&K(/<\/no(script|embed|frames)/i,a.innerHTML)?(br(a),!0):(aP&&3===a.nodeType&&(b=a.textContent,s([_,aa,ab],a=>{b=B(b,a," ")}),a.textContent!==b&&(v(d.removed,{element:a.cloneNode()}),a.textContent=b)),bz(aB.afterSanitizeElements,a,null),!1)},bB=function(a,b,c){if(aJ[b]||aX&&("id"===b||"name"===b)&&(c in e||c in bl))return!1;let d=aF[b]||aK.attributeCheck instanceof Function&&aK.attributeCheck(b,a);if(aM&&!aJ[b]&&K(ac,b));else if(aL&&K(ad,b));else if(!d||aJ[b]){if(!(bD(a)&&(aH.tagNameCheck instanceof RegExp&&K(aH.tagNameCheck,a)||aH.tagNameCheck instanceof Function&&aH.tagNameCheck(a))&&(aH.attributeNameCheck instanceof RegExp&&K(aH.attributeNameCheck,b)||aH.attributeNameCheck instanceof Function&&aH.attributeNameCheck(b,a))||"is"===b&&aH.allowCustomizedBuiltInElements&&(aH.tagNameCheck instanceof RegExp&&K(aH.tagNameCheck,c)||aH.tagNameCheck instanceof Function&&aH.tagNameCheck(c))))return!1}else if(a5[b]);else if(K(aC,B(c,ag,"")));else if(("src"===b||"xlink:href"===b||"href"===b)&&"script"!==a&&0===C(c,"data:")&&a3[a]);else if(aN&&!K(af,B(c,ag,"")));else if(c)return!1;return!0},bC=N({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),bD=function(a){return!bC[y(a)]&&K(ai,a)},bE=function(a){bz(aB.beforeSanitizeAttributes,a,null);let c=a.attributes;if(!c||bw(a))return;let e={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:aF,forceKeepAttr:void 0},f=c.length;for(;f--;){let g=c[f],h=g.name,i=g.namespaceURI,j=g.value,k=bj(h),l="value"===h?j:D(j);if(e.attrName=k,e.attrValue=l,e.keepAttr=!0,e.forceKeepAttr=void 0,bz(aB.uponSanitizeAttribute,a,e),l=e.attrValue,aY&&("id"===k||"name"===k)&&0!==C(l,aZ)&&(bs(h,a),l=aZ+l),aQ&&K(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,l)||"attributename"===k&&A(l,"href")){bs(h,a);continue}if(e.forceKeepAttr)continue;if(!e.keepAttr||!aO&&K(/\/>/i,l)){bs(h,a);continue}aP&&s([_,aa,ab],a=>{l=B(l,a," ")});let m=bj(a.nodeName);if(!bB(m,k,l)){bs(h,a);continue}if(b&&"object"==typeof p&&"function"==typeof p.getAttributeType)if(i);else switch(p.getAttributeType(m,k)){case"TrustedHTML":l=au(l);break;case"TrustedScriptURL":l=b.createScriptURL(l)}if(l!==j)try{i?a.setAttributeNS(i,h,l):a.setAttribute(h,l),bw(a)?br(a):u(d.removed)}catch(b){bs(h,a)}}bz(aB.afterSanitizeAttributes,a,null)},bF=function(a){let b=null,c=bu(a);for(bz(aB.beforeSanitizeShadowDOM,a,null);b=c.nextNode();)if(bz(aB.uponSanitizeShadowNode,b,null),bA(b),bE(b),bx(b.content)&&bF(b.content),(aq?aq(b):b.nodeType)===1){let a=ao?ao(b):b.shadowRoot;bx(a)&&(bG(a),bF(a))}bz(aB.afterSanitizeShadowDOM,a,null)},bG=function(a){let b=aq?aq(a):a.nodeType;if(1===b){let b=ao?ao(a):a.shadowRoot;bx(b)&&(bG(b),bF(b))}let c=am?am(a):a.childNodes;if(!c)return;let d=[];for(let a of(s(c,a=>{v(d,a)}),d))bG(a);if(1===b){let b=ar?ar(a):null;if("string"==typeof b&&"template"===bj(b)){let b=a.content;bx(b)&&bG(b)}}};return d.sanitize=function(a){let c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=null,g=null,h=null,i=null;if((bb=!a)&&(a="\x3c!--\x3e"),"string"!=typeof a&&!by(a)&&"string"!=typeof(a=function(a){switch(typeof a){case"string":return a;case"number":return E(a);case"boolean":return F(a);case"bigint":return G?G(a):"0";case"symbol":return H?H(a):"Symbol()";case"undefined":default:return J(a);case"function":case"object":{if(null===a)return J(a);let b=P(a,"toString");if("function"==typeof b){let c=b(a);return"string"==typeof c?c:J(c)}return J(a)}}}(a)))throw L("dirty is not a string, aborting");if(!d.isSupported)return a;if(aS||bn(c),d.removed=[],"string"==typeof a&&(a_=!1),a_){let b=ar?ar(a):a.nodeName;if("string"==typeof b){let a=bj(b);if(!aD[a]||aI[a])throw L("root node is forbidden and cannot be sanitized in-place")}if(bw(a))throw L("root node is clobbered and cannot be sanitized in-place");bG(a)}else if(by(a))1===(g=(e=bt("\x3c!----\x3e")).ownerDocument.importNode(a,!0)).nodeType&&"BODY"===g.nodeName||"HTML"===g.nodeName?e=g:e.appendChild(g),bG(g);else{if(!aU&&!aP&&!aR&&-1===a.indexOf("<"))return b&&aW?au(a):a;if(!(e=bt(a)))return aU?null:aW?as:""}e&&aT&&br(e.firstChild);let j=bu(a_?a:e);for(;h=j.nextNode();)bA(h),bE(h),bx(h.content)&&bF(h.content);if(a_)return aP&&bv(a),a;if(aU){if(aP&&bv(e),aV)for(i=ay.call(e.ownerDocument);e.firstChild;)i.appendChild(e.firstChild);else i=e;return(aF.shadowroot||aF.shadowrootmode)&&(i=aA.call(f,i,!0)),i}let k=aR?e.outerHTML:e.innerHTML;return aR&&aD["!doctype"]&&e.ownerDocument&&e.ownerDocument.doctype&&e.ownerDocument.doctype.name&&K(ah,e.ownerDocument.doctype.name)&&(k="<!DOCTYPE "+e.ownerDocument.doctype.name+">\n"+k),aP&&s([_,aa,ab],a=>{k=B(k,a," ")}),b&&aW?au(k):k},d.setConfig=function(){let a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};bn(a),aS=!0},d.clearConfig=function(){bk=null,aS=!1},d.isValidAttribute=function(a,b,c){return bk||bn({}),bB(bj(a),bj(b),c)},d.addHook=function(a,b){"function"==typeof b&&v(aB[a],b)},d.removeHook=function(a,b){if(void 0!==b){let c=t(aB[a],b);return -1===c?void 0:w(aB[a],c,1)[0]}return u(aB[a])},d.removeHooks=function(a){aB[a]=[]},d.removeAllHooks=function(){aB=ak()},d}();let am=Object.freeze(["a","abbr","b","bdo","blockquote","br","caption","cite","code","col","colgroup","dd","del","details","dfn","div","dl","dt","em","figcaption","figure","h1","h2","h3","h4","h5","h6","hr","i","img","ins","kbd","label","li","mark","ol","p","pre","q","rp","rt","ruby","s","samp","small","small","source","span","strike","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","time","tr","tt","u","ul","var","video","wbr"]),an=Object.freeze(["href","target","src","alt","title","for","name","role","tabindex","x-dispatch","required","checked","placeholder","type","start","width","height","align"]),ao="vscode-relative-path";function ap(a,b){if("*"===b.override)return!0;try{let c=new URL(a,ao+"://");if(b.override.includes(c.protocol.replace(/:$/,""))||b.allowRelativePaths&&c.protocol===ao+":"&&!a.trim().toLowerCase().startsWith(ao))return!0;return!1}catch(a){return!1}}let aq=Object.freeze({ALLOWED_TAGS:[...am],ALLOWED_ATTR:[...an],ALLOW_UNKNOWN_PROTOCOLS:!0});function ar(a,b){return as(a,b,"trusted")}function as(a,b,c){try{var d,f;let g={...aq};b?.allowedTags&&(b.allowedTags.override&&(g.ALLOWED_TAGS=[...b.allowedTags.override]),b.allowedTags.augment&&(g.ALLOWED_TAGS=[...g.ALLOWED_TAGS??[],...b.allowedTags.augment]));let h=[...an];b?.allowedAttributes&&(b.allowedAttributes.override&&(h=[...b.allowedAttributes.override]),b.allowedAttributes.augment&&(h=[...h,...b.allowedAttributes.augment])),h=h.map(a=>"string"==typeof a?a.toLowerCase():{attributeName:a.attributeName.toLowerCase(),shouldKeep:a.shouldKeep});let i=new Set(h.map(a=>"string"==typeof a?a:a.attributeName)),j=new Map;for(let a of h)"string"==typeof a?j.delete(a):j.set(a.attributeName,a);if(g.ALLOWED_ATTR=Array.from(i),d={override:b?.allowedLinkProtocols?.override??[e.ny.http,e.ny.https],allowRelativePaths:b?.allowRelativeLinkPaths??!1},f={override:b?.allowedMediaProtocols?.override??[e.ny.http,e.ny.https],allowRelativePaths:b?.allowRelativeMediaPaths??!1},al.addHook("afterSanitizeAttributes",a=>{for(let b of["href","src"])if(a.hasAttribute(b)){let c=a.getAttribute(b);"href"===b?c.startsWith("#")||ap(c,d)||a.removeAttribute(b):ap(c,f)||a.removeAttribute(b)}}),b?.replaceWithPlaintext&&al.addHook("uponSanitizeElement",au),j.size&&al.addHook("uponSanitizeAttribute",(a,b)=>{let c=j.get(b.attrName);if(c){let d=c.shouldKeep(a,b);"string"==typeof d?(b.keepAttr=!0,b.attrValue=d):b.keepAttr=d}else b.keepAttr=i.has(b.attrName)}),"dom"===c)return al.sanitize(a,{...g,RETURN_DOM_FRAGMENT:!0});return al.sanitize(a,{...g,RETURN_TRUSTED_TYPE:!0})}finally{al.removeAllHooks()}}let at=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],au=(a,b,c)=>{if(!b.allowedTags[b.tagName]&&"body"!==b.tagName){let b=av(a);b&&(a.nodeType===Node.COMMENT_NODE?a.parentElement?.insertBefore(b,a):a.parentElement?.replaceChild(b,a))}};function av(a){let b,c;if(!a.ownerDocument)return;if(a.nodeType===Node.COMMENT_NODE)b=`<!--${a.textContent}-->`;else{if(!(a instanceof Element))return;let d=a.tagName.toLowerCase(),e=at.includes(d),f=a.attributes.length?" "+Array.from(a.attributes).map(a=>`${a.name}="${a.value}"`).join(" "):"";b=`<${d}${f}>`,e||(c=`</${d}>`)}let d=document.createDocumentFragment(),e=a.ownerDocument.createTextNode(b);for(d.appendChild(e);a.firstChild;)d.appendChild(a.firstChild);let f=c?a.ownerDocument.createTextNode(c):void 0;return f&&d.appendChild(f),d}function aw(a,b,c){let d=as(b,c,"dom");(0,f.Ln)(a,d)}},24092:(a,b,c)=>{"use strict";c.d(b,{Yh:()=>i,QM:()=>h});var d,e,f,g,h,i,j=c(72816),k=c(47322),l=c(85214),m=c(67330),n=c(33402),o=c(13352),p=c(48580),q=c(6812),r=c(61822);class s{static columnSelect(a,b,c,d,e,f){let g=Math.abs(e-c)+1,h=c>e,i=d>f,j=d<f,k=[];for(let e=0;e<g;e++){let g=c+(h?-e:e),l=a.columnFromVisibleColumn(b,g,d),m=a.columnFromVisibleColumn(b,g,f),n=a.visibleColumnFromColumn(b,new q.y(g,l)),o=a.visibleColumnFromColumn(b,new q.y(g,m));if(!j||!(n>f)&&!(o<d))i&&(o>d||n<f)||k.push(new p.mG(new r.Q(g,l,g,l),0,0,new q.y(g,m),0))}if(0===k.length)for(let a=0;a<g;a++){let d=c+(h?-a:a),e=b.getLineMaxColumn(d);k.push(new p.mG(new r.Q(d,e,d,e),0,0,new q.y(d,e),0))}return{viewStates:k,reversed:h,fromLineNumber:c,fromVisualColumn:d,toLineNumber:e,toVisualColumn:f}}static columnSelectLeft(a,b,c){let d=c.toViewVisualColumn;return d>0&&d--,s.columnSelect(a,b,c.fromViewLineNumber,c.fromViewVisualColumn,c.toViewLineNumber,d)}static columnSelectRight(a,b,c){let d=0,e=Math.min(c.fromViewLineNumber,c.toViewLineNumber),f=Math.max(c.fromViewLineNumber,c.toViewLineNumber);for(let c=e;c<=f;c++){let e=b.getLineMaxColumn(c);d=Math.max(d,a.visibleColumnFromColumn(b,new q.y(c,e)))}let g=c.toViewVisualColumn;return g<d&&g++,this.columnSelect(a,b,c.fromViewLineNumber,c.fromViewVisualColumn,c.toViewLineNumber,g)}static columnSelectUp(a,b,c,d){let e=d?a.pageSize:1,f=Math.max(1,c.toViewLineNumber-e);return this.columnSelect(a,b,c.fromViewLineNumber,c.fromViewVisualColumn,f,c.toViewVisualColumn)}static columnSelectDown(a,b,c,d){let e=d?a.pageSize:1,f=Math.min(b.getLineCount(),c.toViewLineNumber+e);return this.columnSelect(a,b,c.fromViewLineNumber,c.fromViewVisualColumn,f,c.toViewVisualColumn)}}var t=c(45395),u=c(76817),v=c(72448),w=c(93427),x=c(99187),y=c(99998),z=c(75082),A=c(75444);class B extends n.DX{runEditorCommand(a,b,c){let d=b._getViewModel();d&&this.runCoreEditorCommand(d,c||{})}}(d=f||(f={})).metadata={description:"Scroll editor in the given direction",args:[{name:"Editor scroll argument object",description:"Property-value pairs that can be passed through this argument:\n * 'to': A mandatory direction value.\n ```\n 'up', 'down'\n ```\n * 'by': Unit to move. Default is computed based on 'to' value.\n ```\n 'line', 'wrappedLine', 'page', 'halfPage', 'editor'\n ```\n * 'value': Number of units to move. Default is '1'.\n * 'revealCursor': If 'true' reveals the cursor if it is outside view port.\n ",constraint:function(a){return!!(0,l.Gv)(a)&&!!(0,l.Kg)(a.to)&&(!!(0,l.b0)(a.by)||!!(0,l.Kg)(a.by))&&(!!(0,l.b0)(a.value)||!!(0,l.Et)(a.value))&&(!!(0,l.b0)(a.revealCursor)||!!(0,l.Lm)(a.revealCursor))},schema:{type:"object",required:["to"],properties:{to:{type:"string",enum:["up","down"]},by:{type:"string",enum:["line","wrappedLine","page","halfPage","editor"]},value:{type:"number",default:1},revealCursor:{type:"boolean"}}}}]},d.RawDirection={Up:"up",Right:"right",Down:"down",Left:"left"},d.RawUnit={Line:"line",WrappedLine:"wrappedLine",Page:"page",HalfPage:"halfPage",Editor:"editor",Column:"column"},d.parse=function(a){let b,c;switch(a.to){case d.RawDirection.Up:b=1;break;case d.RawDirection.Right:b=2;break;case d.RawDirection.Down:b=3;break;case d.RawDirection.Left:b=4;break;default:return null}switch(a.by){case d.RawUnit.Line:c=1;break;case d.RawUnit.WrappedLine:c=2;break;case d.RawUnit.Page:c=3;break;case d.RawUnit.HalfPage:c=4;break;case d.RawUnit.Editor:c=5;break;case d.RawUnit.Column:c=6;break;default:c=2}return{direction:b,unit:c,value:Math.floor(a.value||1),revealCursor:!!a.revealCursor,select:!!a.select}},(e=g||(g={})).metadata={description:"Reveal the given line at the given logical position",args:[{name:"Reveal line argument object",description:"Property-value pairs that can be passed through this argument:\n * 'lineNumber': A mandatory line number value.\n * 'at': Logical position at which line has to be revealed.\n ```\n 'top', 'center', 'bottom'\n ```\n ",constraint:function(a){return!!(0,l.Gv)(a)&&(!!(0,l.Et)(a.lineNumber)||!!(0,l.Kg)(a.lineNumber))&&(!!(0,l.b0)(a.at)||!!(0,l.Kg)(a.at))},schema:{type:"object",required:["lineNumber"],properties:{lineNumber:{type:["number","string"]},at:{type:"string",enum:["top","center","bottom"]}}}}]},e.RawAtArgument={Top:"top",Center:"center",Bottom:"bottom"};class C{constructor(a){a.addImplementation(1e4,"code-editor",(a,b)=>{let c=a.get(o.T).getFocusedCodeEditor();return!!(c&&c.hasTextFocus())&&this._runEditorCommand(a,c,b)}),a.addImplementation(1e3,"generic-dom-input-textarea",(a,b)=>{let c=(0,z.bq)();return!!(c&&(0,z.yD)(c))&&(this.runDOMCommand(c),!0)}),a.addImplementation(0,"generic-dom",(a,b)=>{let c=a.get(o.T).getActiveCodeEditor();return!!c&&(c.focus(),this._runEditorCommand(a,c,b))})}_runEditorCommand(a,b,c){let d=this.runEditorCommand(a,b,c);return!d||d}}!function(a){class b extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){!b.position||(a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.moveTo(a,a.getPrimaryCursorState(),this._inSelectionMode,b.position,b.viewPosition)])&&2!==b.revealType&&a.revealAllCursors(b.source,!0,!0))}}a.MoveTo=(0,n.E_)(new b({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),a.MoveToSelect=(0,n.E_)(new b({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class c extends B{runCoreEditorCommand(a,b){a.model.pushStackElement();let c=this._getColumnSelectResult(a,a.getPrimaryCursorState(),a.getCursorColumnSelectData(),b);null!==c&&(a.setCursorStates(b.source,3,c.viewStates.map(a=>p.MF.fromViewState(a))),a.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:c.fromLineNumber,fromViewVisualColumn:c.fromVisualColumn,toViewLineNumber:c.toLineNumber,toViewVisualColumn:c.toVisualColumn}),c.reversed?a.revealTopMostCursor(b.source):a.revealBottomMostCursor(b.source))}}a.ColumnSelect=(0,n.E_)(new class extends c{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(a,b,c,d){if(void 0===d.position||void 0===d.viewPosition||void 0===d.mouseColumn)return null;let e=a.model.validatePosition(d.position),f=a.coordinatesConverter.validateViewPosition(new q.y(d.viewPosition.lineNumber,d.viewPosition.column),e),g=d.doColumnSelect?c.fromViewLineNumber:f.lineNumber,h=d.doColumnSelect?c.fromViewVisualColumn:d.mouseColumn-1;return s.columnSelect(a.cursorConfig,a,g,h,f.lineNumber,d.mouseColumn-1)}}),a.CursorColumnSelectLeft=(0,n.E_)(new class extends c{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3599,linux:{primary:0}}})}_getColumnSelectResult(a,b,c,d){return s.columnSelectLeft(a.cursorConfig,a,c)}}),a.CursorColumnSelectRight=(0,n.E_)(new class extends c{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3601,linux:{primary:0}}})}_getColumnSelectResult(a,b,c,d){return s.columnSelectRight(a.cursorConfig,a,c)}});class d extends c{constructor(a){super(a),this._isPaged=a.isPaged}_getColumnSelectResult(a,b,c,d){return s.columnSelectUp(a.cursorConfig,a,c,this._isPaged)}}a.CursorColumnSelectUp=(0,n.E_)(new d({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3600,linux:{primary:0}}})),a.CursorColumnSelectPageUp=(0,n.E_)(new d({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3595,linux:{primary:0}}}));class e extends c{constructor(a){super(a),this._isPaged=a.isPaged}_getColumnSelectResult(a,b,c,d){return s.columnSelectDown(a.cursorConfig,a,c,this._isPaged)}}a.CursorColumnSelectDown=(0,n.E_)(new e({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3602,linux:{primary:0}}})),a.CursorColumnSelectPageDown=(0,n.E_)(new e({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3596,linux:{primary:0}}}));class h extends B{constructor(){super({id:"cursorMove",precondition:void 0,metadata:u.S.metadata})}runCoreEditorCommand(a,b){let c=u.S.parse(b);c&&this._runCursorMove(a,b.source,c)}_runCursorMove(a,b,c){let d=c.noHistory?"api":b;a.model.pushStackElement(),a.setCursorStates(d,3,h._move(a,a.getCursorStates(),c)),a.revealAllCursors(d,!0)}static _move(a,b,c){let d=c.select,e=c.value;switch(c.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return u.c.simpleMove(a,b,c.direction,d,e,c.unit);case 11:case 13:case 12:case 14:return u.c.viewportMove(a,b,c.direction,d,e);default:return null}}}a.CursorMoveImpl=h,a.CursorMove=(0,n.E_)(new h);class i extends B{constructor(a){super(a),this._staticArgs=a.args}runCoreEditorCommand(a,b){let c=this._staticArgs;-1===this._staticArgs.value&&(c={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:b.pageSize||a.cursorConfig.pageSize}),a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.simpleMove(a,a.getCursorStates(),c.direction,c.select,c.value,c.unit)),a.revealAllCursors(b.source,!0)}}a.CursorLeft=(0,n.E_)(new i({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:15,mac:{primary:15,secondary:[288]}}})),a.CursorLeftSelect=(0,n.E_)(new i({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1039}})),a.CursorRight=(0,n.E_)(new i({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:17,mac:{primary:17,secondary:[292]}}})),a.CursorRightSelect=(0,n.E_)(new i({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1041}})),a.CursorUp=(0,n.E_)(new i({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:16,mac:{primary:16,secondary:[302]}}})),a.CursorUpSelect=(0,n.E_)(new i({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1040,secondary:[3088],mac:{primary:1040},linux:{primary:1040}}})),a.CursorPageUp=(0,n.E_)(new i({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:11}})),a.CursorPageUpSelect=(0,n.E_)(new i({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1035}})),a.CursorDown=(0,n.E_)(new i({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:18,mac:{primary:18,secondary:[300]}}})),a.CursorDownSelect=(0,n.E_)(new i({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1042,secondary:[3090],mac:{primary:1042},linux:{primary:1042}}})),a.CursorPageDown=(0,n.E_)(new i({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:12}})),a.CursorPageDownSelect=(0,n.E_)(new i({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1036}})),a.CreateCursor=(0,n.E_)(new class extends B{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(a,b){let c;if(!b.position)return;c=b.wholeLine?u.c.line(a,a.getPrimaryCursorState(),!1,b.position,b.viewPosition):u.c.moveTo(a,a.getPrimaryCursorState(),!1,b.position,b.viewPosition);let d=a.getCursorStates();if(d.length>1){let e=c.modelState?c.modelState.position:null,f=c.viewState?c.viewState.position:null;for(let c=0,g=d.length;c<g;c++){let g=d[c];if((!e||g.modelState.selection.containsPosition(e))&&(!f||g.viewState.selection.containsPosition(f))){d.splice(c,1),a.model.pushStackElement(),a.setCursorStates(b.source,3,d);return}}}d.push(c),a.model.pushStackElement(),a.setCursorStates(b.source,3,d)}}),a.LastCursorMoveToSelect=(0,n.E_)(new class extends B{constructor(){super({id:"_lastCursorMoveToSelect",precondition:void 0})}runCoreEditorCommand(a,b){if(!b.position)return;let c=a.getLastAddedCursorIndex(),d=a.getCursorStates(),e=d.slice(0);e[c]=u.c.moveTo(a,d[c],!0,b.position,b.viewPosition),a.model.pushStackElement(),a.setCursorStates(b.source,3,e)}});class l extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToBeginningOfLine(a,a.getCursorStates(),this._inSelectionMode)),a.revealAllCursors(b.source,!0)}}a.CursorHome=(0,n.E_)(new l({inSelectionMode:!1,id:"cursorHome",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:14,mac:{primary:14,secondary:[2063]}}})),a.CursorHomeSelect=(0,n.E_)(new l({inSelectionMode:!0,id:"cursorHomeSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1038,mac:{primary:1038,secondary:[3087]}}}));class o extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,this._exec(a.getCursorStates())),a.revealAllCursors(b.source,!0)}_exec(a){let b=[];for(let c=0,d=a.length;c<d;c++){let d=a[c],e=d.modelState.position.lineNumber;b[c]=p.MF.fromModelState(d.modelState.move(this._inSelectionMode,e,1,0))}return b}}a.CursorLineStart=(0,n.E_)(new o({inSelectionMode:!1,id:"cursorLineStart",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:287}}})),a.CursorLineStartSelect=(0,n.E_)(new o({inSelectionMode:!0,id:"cursorLineStartSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:1311}}}));class t extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToEndOfLine(a,a.getCursorStates(),this._inSelectionMode,b.sticky||!1)),a.revealAllCursors(b.source,!0)}}a.CursorEnd=(0,n.E_)(new t({inSelectionMode:!1,id:"cursorEnd",precondition:void 0,kbOpts:{args:{sticky:!1},weight:0,kbExpr:w.R.textInputFocus,primary:13,mac:{primary:13,secondary:[2065]}},metadata:{description:"Go to End",args:[{name:"args",schema:{type:"object",properties:{sticky:{description:(0,j.kg)(70,"Stick to the end even when going to longer lines"),type:"boolean",default:!1}}}}]}})),a.CursorEndSelect=(0,n.E_)(new t({inSelectionMode:!0,id:"cursorEndSelect",precondition:void 0,kbOpts:{args:{sticky:!1},weight:0,kbExpr:w.R.textInputFocus,primary:1037,mac:{primary:1037,secondary:[3089]}},metadata:{description:"Select to End",args:[{name:"args",schema:{type:"object",properties:{sticky:{description:(0,j.kg)(71,"Stick to the end even when going to longer lines"),type:"boolean",default:!1}}}}]}}));class v extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,this._exec(a,a.getCursorStates())),a.revealAllCursors(b.source,!0)}_exec(a,b){let c=[];for(let d=0,e=b.length;d<e;d++){let e=b[d],f=e.modelState.position.lineNumber,g=a.model.getLineMaxColumn(f);c[d]=p.MF.fromModelState(e.modelState.move(this._inSelectionMode,f,g,0))}return c}}a.CursorLineEnd=(0,n.E_)(new v({inSelectionMode:!1,id:"cursorLineEnd",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:291}}})),a.CursorLineEndSelect=(0,n.E_)(new v({inSelectionMode:!0,id:"cursorLineEndSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:1315}}}));class x extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToBeginningOfBuffer(a,a.getCursorStates(),this._inSelectionMode)),a.revealAllCursors(b.source,!0)}}a.CursorTop=(0,n.E_)(new x({inSelectionMode:!1,id:"cursorTop",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2062,mac:{primary:2064}}})),a.CursorTopSelect=(0,n.E_)(new x({inSelectionMode:!0,id:"cursorTopSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3086,mac:{primary:3088}}}));class y extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,u.c.moveToEndOfBuffer(a,a.getCursorStates(),this._inSelectionMode)),a.revealAllCursors(b.source,!0)}}a.CursorBottom=(0,n.E_)(new y({inSelectionMode:!1,id:"cursorBottom",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2061,mac:{primary:2066}}})),a.CursorBottomSelect=(0,n.E_)(new y({inSelectionMode:!0,id:"cursorBottomSelect",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:3085,mac:{primary:3090}}}));class z extends B{constructor(){super({id:"editorScroll",precondition:void 0,metadata:f.metadata})}determineScrollMethod(a){return[6].includes(a.unit)&&[4,2].includes(a.direction)?this._runHorizontalEditorScroll.bind(this):[1,2,3,4,5].includes(a.unit)&&[1,3].includes(a.direction)?this._runVerticalEditorScroll.bind(this):null}runCoreEditorCommand(a,b){let c=f.parse(b);if(!c)return;let d=this.determineScrollMethod(c);d&&d(a,b.source,c)}_runVerticalEditorScroll(a,b,c){let d=this._computeDesiredScrollTop(a,c);if(c.revealCursor){let e=a.getCompletelyVisibleViewRangeAtScrollTop(d),f=a.getViewRangeWithCursorPadding(e);a.setCursorStates(b,3,[u.c.findPositionInViewportIfOutside(a,a.getPrimaryCursorState(),f,c.select)])}a.viewLayout.setScrollPosition({scrollTop:d},0)}_computeDesiredScrollTop(a,b){let c;if(1===b.unit){let c,d=a.viewLayout.getFutureViewport(),e=a.getCompletelyVisibleViewRangeAtScrollTop(d.top),f=a.coordinatesConverter.convertViewRangeToModelRange(e);c=1===b.direction?Math.max(1,f.startLineNumber-b.value):Math.min(a.model.getLineCount(),f.startLineNumber+b.value);let g=a.coordinatesConverter.convertModelPositionToViewPosition(new q.y(c,1));return a.viewLayout.getVerticalOffsetForLineNumber(g.lineNumber)}if(5===b.unit){let c=0;return 3===b.direction&&(c=a.model.getLineCount()-a.cursorConfig.pageSize),a.viewLayout.getVerticalOffsetForLineNumber(c)}c=3===b.unit?a.cursorConfig.pageSize*b.value:4===b.unit?Math.round(a.cursorConfig.pageSize/2)*b.value:b.value;let d=(1===b.direction?-1:1)*c;return a.viewLayout.getCurrentScrollTop()+d*a.cursorConfig.lineHeight}_runHorizontalEditorScroll(a,b,c){let d=this._computeDesiredScrollLeft(a,c);a.viewLayout.setScrollPosition({scrollLeft:d},0)}_computeDesiredScrollLeft(a,b){let c=(4===b.direction?-1:1)*b.value;return a.viewLayout.getCurrentScrollLeft()+c*a.cursorConfig.typicalHalfwidthCharacterWidth}}a.EditorScrollImpl=z,a.EditorScroll=(0,n.E_)(new z),a.ScrollLineUp=(0,n.E_)(new class extends B{constructor(){super({id:"scrollLineUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2064,mac:{primary:267}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Up,by:f.RawUnit.WrappedLine,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollPageUp=(0,n.E_)(new class extends B{constructor(){super({id:"scrollPageUp",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2059,win:{primary:523},linux:{primary:523}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Up,by:f.RawUnit.Page,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollEditorTop=(0,n.E_)(new class extends B{constructor(){super({id:"scrollEditorTop",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Up,by:f.RawUnit.Editor,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollLineDown=(0,n.E_)(new class extends B{constructor(){super({id:"scrollLineDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2066,mac:{primary:268}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Down,by:f.RawUnit.WrappedLine,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollPageDown=(0,n.E_)(new class extends B{constructor(){super({id:"scrollPageDown",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:2060,win:{primary:524},linux:{primary:524}}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Down,by:f.RawUnit.Page,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollEditorBottom=(0,n.E_)(new class extends B{constructor(){super({id:"scrollEditorBottom",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Down,by:f.RawUnit.Editor,value:1,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollLeft=(0,n.E_)(new class extends B{constructor(){super({id:"scrollLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Left,by:f.RawUnit.Column,value:2,revealCursor:!1,select:!1,source:c.source})}}),a.ScrollRight=(0,n.E_)(new class extends B{constructor(){super({id:"scrollRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus}})}runCoreEditorCommand(b,c){a.EditorScroll.runCoreEditorCommand(b,{to:f.RawDirection.Right,by:f.RawUnit.Column,value:2,revealCursor:!1,select:!1,source:c.source})}});class A extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){b.position&&(a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.word(a,a.getPrimaryCursorState(),this._inSelectionMode,b.position)]),2!==b.revealType&&a.revealAllCursors(b.source,!0,!0))}}a.WordSelect=(0,n.E_)(new A({inSelectionMode:!1,id:"_wordSelect",precondition:void 0})),a.WordSelectDrag=(0,n.E_)(new A({inSelectionMode:!0,id:"_wordSelectDrag",precondition:void 0})),a.LastCursorWordSelect=(0,n.E_)(new class extends B{constructor(){super({id:"lastCursorWordSelect",precondition:void 0})}runCoreEditorCommand(a,b){if(!b.position)return;let c=a.getLastAddedCursorIndex(),d=a.getCursorStates(),e=d.slice(0),f=d[c];e[c]=u.c.word(a,f,f.modelState.hasSelection(),b.position),a.model.pushStackElement(),a.setCursorStates(b.source,3,e)}});class D extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){b.position&&(a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.line(a,a.getPrimaryCursorState(),this._inSelectionMode,b.position,b.viewPosition)]),2!==b.revealType&&a.revealAllCursors(b.source,!1,!0))}}a.LineSelect=(0,n.E_)(new D({inSelectionMode:!1,id:"_lineSelect",precondition:void 0})),a.LineSelectDrag=(0,n.E_)(new D({inSelectionMode:!0,id:"_lineSelectDrag",precondition:void 0}));class E extends B{constructor(a){super(a),this._inSelectionMode=a.inSelectionMode}runCoreEditorCommand(a,b){if(!b.position)return;let c=a.getLastAddedCursorIndex(),d=a.getCursorStates(),e=d.slice(0);e[c]=u.c.line(a,d[c],this._inSelectionMode,b.position,b.viewPosition),a.model.pushStackElement(),a.setCursorStates(b.source,3,e)}}a.LastCursorLineSelect=(0,n.E_)(new E({inSelectionMode:!1,id:"lastCursorLineSelect",precondition:void 0})),a.LastCursorLineSelectDrag=(0,n.E_)(new E({inSelectionMode:!0,id:"lastCursorLineSelectDrag",precondition:void 0})),a.CancelSelection=(0,n.E_)(new class extends B{constructor(){super({id:"cancelSelection",precondition:w.R.hasNonEmptySelection,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:9,secondary:[1033]}})}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,[u.c.cancelSelection(a,a.getPrimaryCursorState())]),a.revealAllCursors(b.source,!0)}}),a.RemoveSecondaryCursors=(0,n.E_)(new class extends B{constructor(){super({id:"removeSecondaryCursors",precondition:w.R.hasMultipleSelections,kbOpts:{weight:1,kbExpr:w.R.textInputFocus,primary:9,secondary:[1033]}})}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates(b.source,3,[a.getPrimaryCursorState()]),a.revealAllCursors(b.source,!0),(0,m.h5)((0,j.kg)(72,"Removed secondary cursors"))}}),a.RevealLine=(0,n.E_)(new class extends B{constructor(){super({id:"revealLine",precondition:void 0,metadata:g.metadata})}runCoreEditorCommand(a,b){let c=b.lineNumber||0,d="number"==typeof c?c+1:parseInt(c)+1;d<1&&(d=1);let e=a.model.getLineCount();d>e&&(d=e);let f=new r.Q(d,1,d,a.model.getLineMaxColumn(d)),h=0;if(b.at)switch(b.at){case g.RawAtArgument.Top:h=3;break;case g.RawAtArgument.Center:h=1;break;case g.RawAtArgument.Bottom:h=4}let i=a.coordinatesConverter.convertModelRangeToViewRange(f);a.revealRange(b.source,!1,i,h,0)}}),a.SelectAll=new class extends C{constructor(){super(n.tc)}runDOMCommand(a){k.gm&&(a.focus(),a.select()),a.ownerDocument.execCommand("selectAll")}runEditorCommand(a,b,c){let d=b._getViewModel();d&&this.runCoreEditorCommand(d,c)}runCoreEditorCommand(a,b){a.model.pushStackElement(),a.setCursorStates("keyboard",3,[u.c.selectAll(a,a.getPrimaryCursorState())])}},a.SetSelection=(0,n.E_)(new class extends B{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(a,b){b.selection&&(a.model.pushStackElement(),a.setCursorStates(b.source,3,[p.MF.fromModelSelection(b.selection)]))}})}(h||(h={}));let D=x.M$.and(w.R.textInputFocus,w.R.columnSelection);function E(a,b){y.f.registerKeybindingRule({id:a,primary:b,when:D,weight:1})}function F(a){return a.register(),a}E(h.CursorColumnSelectLeft.id,1039),E(h.CursorColumnSelectRight.id,1041),E(h.CursorColumnSelectUp.id,1040),E(h.CursorColumnSelectPageUp.id,1035),E(h.CursorColumnSelectDown.id,1042),E(h.CursorColumnSelectPageDown.id,1036);var G=i||(i={});class H extends n.DX{runEditorCommand(a,b,c){let d=b._getViewModel();d&&this.runCoreEditingCommand(b,d,c||{})}}G.CoreEditingCommand=H,G.LineBreakInsert=(0,n.E_)(new class extends H{constructor(){super({id:"lineBreakInsert",precondition:w.R.writable,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:0,mac:{primary:301}}})}runCoreEditingCommand(a,b,c){a.pushUndoStop(),a.executeCommands(this.id,A.AO.lineBreakInsert(b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection)))}}),G.Outdent=(0,n.E_)(new class extends H{constructor(){super({id:"outdent",precondition:w.R.writable,kbOpts:{weight:0,kbExpr:x.M$.and(w.R.editorTextFocus,w.R.tabDoesNotMoveFocus),primary:1026}})}runCoreEditingCommand(a,b,c){a.pushUndoStop(),a.executeCommands(this.id,v.T.outdent(b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection))),a.pushUndoStop()}}),G.Tab=(0,n.E_)(new class extends H{constructor(){super({id:"tab",precondition:w.R.writable,kbOpts:{weight:0,kbExpr:x.M$.and(w.R.editorTextFocus,w.R.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(a,b,c){a.pushUndoStop(),a.executeCommands(this.id,v.T.tab(b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection))),a.pushUndoStop()}}),G.DeleteLeft=(0,n.E_)(new class extends H{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:1,secondary:[1025],mac:{primary:1,secondary:[1025,294,257]}}})}runCoreEditingCommand(a,b,c){let[d,e]=t.g.deleteLeft(b.getPrevEditOperationType(),b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection),b.getCursorAutoClosedCharacters());d&&a.pushUndoStop(),a.executeCommands(this.id,e),b.setPrevEditOperationType(2)}}),G.DeleteRight=(0,n.E_)(new class extends H{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:0,kbExpr:w.R.textInputFocus,primary:20,mac:{primary:20,secondary:[290,276]}}})}runCoreEditingCommand(a,b,c){let[d,e]=t.g.deleteRight(b.getPrevEditOperationType(),b.cursorConfig,b.model,b.getCursorStates().map(a=>a.modelState.selection));d&&a.pushUndoStop(),a.executeCommands(this.id,e),b.setPrevEditOperationType(3)}}),G.Undo=new class extends C{constructor(){super(n.aU)}runDOMCommand(a){a.ownerDocument.execCommand("undo")}runEditorCommand(a,b,c){if(b.hasModel()&&!0!==b.getOption(104))return b.getModel().undo()}},G.Redo=new class extends C{constructor(){super(n.ih)}runDOMCommand(a){a.ownerDocument.execCommand("redo")}runEditorCommand(a,b,c){if(b.hasModel()&&!0!==b.getOption(104))return b.getModel().redo()}};class I extends n.uB{constructor(a,b,c){super({id:a,precondition:void 0,metadata:c}),this._handlerId=b}runCommand(a,b){let c=a.get(o.T).getFocusedCodeEditor();c&&c.trigger("keyboard",this._handlerId,b)}}function J(a,b){F(new I("default:"+a,a)),F(new I(a,a,b))}J("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]}),J("replacePreviousChar"),J("compositionType"),J("compositionStart"),J("compositionEnd"),J("paste"),J("cut")},24137:(a,b,c)=>{"use strict";c.d(b,{A:()=>v});var d=c(72816),e=c(81309),f=c(95091),g=c(5436),h=c(76631),i=c(18216),j=c(14016),k=c(75082),l=c(42913),m=c(73298),n=c(62677),o=c(31299),p=c(47339),q=c(89191),r=c(89460);c(71880);let s=k.$,t="selectOption.entry.template";class u{get templateId(){return t}renderTemplate(a){let b=Object.create(null);return b.root=a,b.text=(0,k.BC)(a,s(".option-text")),b.detail=(0,k.BC)(a,s(".option-detail")),b.decoratorRight=(0,k.BC)(a,s(".option-decorator-right")),b}renderElement(a,b,c){let d=a.text,e=a.detail,f=a.decoratorRight,g=a.isDisabled;c.text.textContent=d,c.detail.textContent=e||"",c.decoratorRight.textContent=f||"",g?c.root.classList.add("option-disabled"):c.root.classList.remove("option-disabled"),a.isSeparator?(c.root.classList.add("option-separator"),c.root.classList.add("option-disabled")):c.root.classList.remove("option-separator")}disposeTemplate(a){}}class v extends h.jG{static{this.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN=32}static{this.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN=2}static{this.DEFAULT_MINIMUM_VISIBLE_OPTIONS=3}constructor(a,b,c,d,e){super(),this.options=[],this._currentSelection=0,this._hasDetails=!1,this._selectionDetailsDisposables=this._register(new h.Cm),this._skipLayout=!1,this._sticky=!1,this._isVisible=!1,this.styles=d,this.selectBoxOptions=e||Object.create(null),"number"!=typeof this.selectBoxOptions.minBottomMargin?this.selectBoxOptions.minBottomMargin=v.DEFAULT_DROPDOWN_MINIMUM_BOTTOM_MARGIN:this.selectBoxOptions.minBottomMargin<0&&(this.selectBoxOptions.minBottomMargin=0),this.selectElement=document.createElement("select"),this.selectElement.className="monaco-select-box","string"==typeof this.selectBoxOptions.ariaLabel&&this.selectElement.setAttribute("aria-label",this.selectBoxOptions.ariaLabel),"string"==typeof this.selectBoxOptions.ariaDescription&&this.selectElement.setAttribute("aria-description",this.selectBoxOptions.ariaDescription),this._onDidSelect=new f.vl,this._register(this._onDidSelect),this.registerListeners(),this.constructSelectDropDown(c),this.selected=b||0,a&&this.setOptions(a,b),this.initStyleSheet()}setTitle(a){!this._hover&&a?this._hover=this._register((0,p.i)().setupManagedHover((0,q.nZ)("mouse"),this.selectElement,a)):this._hover&&this._hover.update(a)}getHeight(){return 22}getTemplateId(){return t}constructSelectDropDown(a){this.contextViewProvider=a,this.selectDropDownContainer=(0,k.$)(".monaco-select-box-dropdown-container"),this.selectionDetailsPane=(0,k.BC)(this.selectDropDownContainer,s(".select-box-details-pane"));let b=(0,k.BC)(this.selectDropDownContainer,s(".select-box-dropdown-container-width-control")),c=(0,k.BC)(b,s(".width-control-div"));this.widthControlElement=document.createElement("span"),this.widthControlElement.className="option-text-width-control",(0,k.BC)(c,this.widthControlElement),this._dropDownPosition=0,this.styleElement=(0,l.li)(this.selectDropDownContainer),this.selectDropDownContainer.setAttribute("draggable","true"),this._register((0,k.ko)(this.selectDropDownContainer,k.Bx.DRAG_START,a=>{k.fs.stop(a,!0)}))}registerListeners(){let a;this._register((0,k.un)(this.selectElement,"change",a=>{this.selected=a.target.selectedIndex,this._onDidSelect.fire({index:a.target.selectedIndex,selected:a.target.value}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)})),this._register((0,k.ko)(this.selectElement,k.Bx.CLICK,a=>{k.fs.stop(a),this._isVisible?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register((0,k.ko)(this.selectElement,k.Bx.MOUSE_DOWN,a=>{k.fs.stop(a)})),this._register((0,k.ko)(this.selectElement,"touchstart",b=>{a=this._isVisible})),this._register((0,k.ko)(this.selectElement,"touchend",b=>{k.fs.stop(b),a?this.hideSelectDropDown(!0):this.showSelectDropDown()})),this._register((0,k.ko)(this.selectElement,k.Bx.KEY_DOWN,a=>{let b=new n.Z(a),c=!1;i.zx?(18===b.keyCode||16===b.keyCode||10===b.keyCode||3===b.keyCode)&&(c=!0):(18===b.keyCode&&b.altKey||16===b.keyCode&&b.altKey||10===b.keyCode||3===b.keyCode)&&(c=!0),c&&(this.showSelectDropDown(),k.fs.stop(a,!0))}))}get onDidSelect(){return this._onDidSelect.event}setOptions(a,b){(0,e.aI)(this.options,a)||(this.options=a,this.selectElement.options.length=0,this._hasDetails=!1,this._cachedMaxDetailsHeight=void 0,this.options.forEach((a,b)=>{this.selectElement.add(this.createOption(a.text,b,a.isDisabled)),"string"==typeof a.description&&(this._hasDetails=!0)})),void 0!==b&&(this.select(b),this._currentSelection=this.selected)}setOptionsList(){this.selectList?.splice(0,this.selectList.length,this.options)}select(a){a>=0&&a<this.options.length?this.selected=a:a>this.options.length-1?this.select(this.options.length-1):this.selected<0&&(this.selected=0),this.selectElement.selectedIndex=this.selected,this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)}focus(){this.selectElement&&(this.selectElement.tabIndex=0,this.selectElement.focus())}blur(){this.selectElement&&(this.selectElement.tabIndex=-1,this.selectElement.blur())}setFocusable(a){this.selectElement.tabIndex=a?0:-1}render(a){this.container=a,a.classList.add("select-container"),a.appendChild(this.selectElement),this.styleSelectElement()}initStyleSheet(){let a=[];this.styles.listFocusBackground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { background-color: ${this.styles.listFocusBackground} !important; }`),this.styles.listFocusForeground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { color: ${this.styles.listFocusForeground} !important; }`),this.styles.decoratorRightForeground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.focused) .option-decorator-right { color: ${this.styles.decoratorRightForeground}; }`),this.styles.selectBackground&&this.styles.selectBorder&&this.styles.selectBorder!==this.styles.selectBackground?(a.push(`.monaco-select-box-dropdown-container { border: 1px solid ${this.styles.selectBorder} } `),a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectBorder} } `),a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectBorder} } `)):this.styles.selectListBorder&&(a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-top { border-top: 1px solid ${this.styles.selectListBorder} } `),a.push(`.monaco-select-box-dropdown-container > .select-box-details-pane.border-bottom { border-bottom: 1px solid ${this.styles.selectListBorder} } `)),this.styles.listHoverForeground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { color: ${this.styles.listHoverForeground} !important; }`),this.styles.listHoverBackground&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { background-color: ${this.styles.listHoverBackground} !important; }`),this.styles.listFocusOutline&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.focused { outline: 1px solid ${this.styles.listFocusOutline} !important; outline-offset: -1px !important; }`),this.styles.listHoverOutline&&a.push(`.monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row:not(.option-disabled):not(.focused):hover { outline: 1px solid ${this.styles.listHoverOutline} !important; outline-offset: -1px !important; }`),a.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled.focused { background-color: transparent !important; color: inherit !important; outline: none !important; }"),a.push(".monaco-select-box-dropdown-container > .select-box-dropdown-list-container .monaco-list .monaco-list-row.option-disabled:hover { background-color: transparent !important; color: inherit !important; outline: none !important; }"),this.styleElement.textContent=a.join("\n")}styleSelectElement(){let a=this.styles.selectBackground??"",b=this.styles.selectForeground??"",c=this.styles.selectBorder??"";this.selectElement.style.backgroundColor=a,this.selectElement.style.color=b,this.selectElement.style.borderColor=c}styleList(){let a=this.styles.selectBackground??"",b=(0,j.gI)(this.styles.selectListBackground,a);this.selectDropDownContainer.style.backgroundColor=b,this.selectDropDownListContainer.style.backgroundColor=b,this.selectionDetailsPane.style.backgroundColor=b,this.selectList.style(this.styles)}createOption(a,b,c){let d=document.createElement("option");return d.value=a,d.text=a,d.disabled=!!c,d}showSelectDropDown(){this.selectionDetailsPane.textContent="",this.contextViewProvider&&!this._isVisible&&(this.createSelectList(this.selectDropDownContainer),this.setOptionsList(),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:a=>this.renderSelectDropDown(a,!0),layout:()=>{this.layoutSelectDropDown()},onHide:()=>{this.selectDropDownContainer.classList.remove("visible")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._isVisible=!0,this.hideSelectDropDown(!1),this.contextViewProvider.showContextView({getAnchor:()=>this.selectElement,render:a=>this.renderSelectDropDown(a),layout:()=>this.layoutSelectDropDown(),onHide:()=>{this.selectDropDownContainer.classList.remove("visible")},anchorPosition:this._dropDownPosition},this.selectBoxOptions.optionsAsChildren?this.container:void 0),this._currentSelection=this.selected,this._isVisible=!0,this.selectElement.setAttribute("aria-expanded","true"))}hideSelectDropDown(a){this.contextViewProvider&&this._isVisible&&(this._isVisible=!1,this.selectElement.setAttribute("aria-expanded","false"),a&&this.selectElement.focus(),this.contextViewProvider.hideContextView())}renderSelectDropDown(a,b){a.appendChild(this.selectDropDownContainer);let c=(0,k.zk)(this.selectElement).getComputedStyle(this.selectElement).fontSize;return c&&(this.selectDropDownContainer.style.fontSize=c),this.layoutSelectDropDown(b),{dispose:()=>{this.selectDropDownContainer.remove()}}}measureMaxDetailsHeight(){let a=0;return this.options.forEach((b,c)=>{this.updateDetail(c),this.selectionDetailsPane.offsetHeight>a&&(a=this.selectionDetailsPane.offsetHeight)}),a}layoutSelectDropDown(a){if(this._skipLayout||!this.selectList)return!1;{this.selectDropDownContainer.classList.add("visible");let b=(0,k.zk)(this.selectElement),c=(0,k.BK)(this.selectElement),d=b.innerHeight-c.top-c.height-(this.selectBoxOptions.minBottomMargin||0),e=c.top-v.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN,f=this.selectElement.offsetWidth,g=this.setWidthControlElement(this.widthControlElement),h=`${Math.max(g,Math.round(f))}px`;this.selectDropDownContainer.style.width=h,this.selectList.getHTMLElement().style.height="",this.selectList.layout();let i=this.selectList.contentHeight;this._hasDetails&&void 0===this._cachedMaxDetailsHeight&&(this._cachedMaxDetailsHeight=this.measureMaxDetailsHeight());let j=this._hasDetails?this._cachedMaxDetailsHeight:0,l=i+j,m=Math.floor((d-j)/this.getHeight()),n=Math.floor((e-j)/this.getHeight());if(a)return!(c.top+c.height>b.innerHeight-22)&&!(c.top<v.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN)&&(!(m<1)||!(n<1))&&(m<v.DEFAULT_MINIMUM_VISIBLE_OPTIONS&&n>m&&this.options.length>m?(this._dropDownPosition=1,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectionDetailsPane.classList.remove("border-top"),this.selectionDetailsPane.classList.add("border-bottom")):(this._dropDownPosition=0,this.selectDropDownListContainer.remove(),this.selectionDetailsPane.remove(),this.selectDropDownContainer.appendChild(this.selectDropDownListContainer),this.selectDropDownContainer.appendChild(this.selectionDetailsPane),this.selectionDetailsPane.classList.remove("border-bottom"),this.selectionDetailsPane.classList.add("border-top")),!0);if(c.top+c.height>b.innerHeight-22||c.top<v.DEFAULT_DROPDOWN_MINIMUM_TOP_MARGIN||0===this._dropDownPosition&&m<1||1===this._dropDownPosition&&n<1)return this.hideSelectDropDown(!0),!1;if(0===this._dropDownPosition){if(this._isVisible&&m+n<1)return this.hideSelectDropDown(!0),!1;l>d&&(i=m*this.getHeight())}else l>e&&(i=n*this.getHeight());return this.selectList.layout(i),this.selectList.domFocus(),this.selectList.length>0&&(this.selectList.setFocus([this.selected||0]),this.selectList.reveal(this.selectList.getFocus()[0]||0)),this._hasDetails?(this.selectList.getHTMLElement().style.height=`${i}px`,this.selectDropDownContainer.style.height=""):this.selectDropDownContainer.style.height=`${i}px`,this.updateDetail(this.selected),this.selectDropDownContainer.style.width=h,this.selectDropDownListContainer.setAttribute("tabindex","0"),!0}}setWidthControlElement(a){let b=0;if(a){let c=0,d=0;this.options.forEach((a,b)=>{let e=a.detail?a.detail.length:0,f=a.decoratorRight?a.decoratorRight.length:0,g=a.text.length+e+f;g>d&&(c=b,d=g)}),a.textContent=this.options[c].text+(this.options[c].decoratorRight?`${this.options[c].decoratorRight} `:""),b=(0,k.Tr)(a)}return b}createSelectList(a){if(this.selectList)return;this.selectDropDownListContainer=(0,k.BC)(a,s(".select-box-dropdown-list-container")),this.listRenderer=new u,this.selectList=this._register(new r.B8("SelectBoxCustom",this.selectDropDownListContainer,this,[this.listRenderer],{useShadows:!1,verticalScrollMode:3,keyboardSupport:!1,mouseSupport:!1,accessibilityProvider:{getAriaLabel:a=>{if(a.isSeparator)return(0,d.kg)(17,"separator");let b=a.text;return a.detail&&(b+=`. ${a.detail}`),a.decoratorRight&&(b+=`. ${a.decoratorRight}`),a.description&&(b+=`. ${a.description}`),b},getWidgetAriaLabel:()=>(0,d.kg)(18,"Select Box"),getRole:()=>i.zx?"":"option",getWidgetRole:()=>"listbox"}})),this.selectBoxOptions.ariaLabel&&(this.selectList.ariaLabel=this.selectBoxOptions.ariaLabel);let b=this._register(new m.f(this.selectDropDownListContainer,"keydown")),c=f.Jh.chain(b.event,a=>a.filter(()=>this.selectList.length>0).map(a=>new n.Z(a)));this._register(f.Jh.chain(c,a=>a.filter(a=>3===a.keyCode))(this.onEnter,this)),this._register(f.Jh.chain(c,a=>a.filter(a=>2===a.keyCode))(this.onEnter,this)),this._register(f.Jh.chain(c,a=>a.filter(a=>9===a.keyCode))(this.onEscape,this)),this._register(f.Jh.chain(c,a=>a.filter(a=>16===a.keyCode))(this.onUpArrow,this)),this._register(f.Jh.chain(c,a=>a.filter(a=>18===a.keyCode))(this.onDownArrow,this)),this._register(f.Jh.chain(c,a=>a.filter(a=>12===a.keyCode))(this.onPageDown,this)),this._register(f.Jh.chain(c,a=>a.filter(a=>11===a.keyCode))(this.onPageUp,this)),this._register(f.Jh.chain(c,a=>a.filter(a=>14===a.keyCode))(this.onHome,this)),this._register(f.Jh.chain(c,a=>a.filter(a=>13===a.keyCode))(this.onEnd,this)),this._register(f.Jh.chain(c,a=>a.filter(a=>a.keyCode>=21&&a.keyCode<=56||a.keyCode>=85&&a.keyCode<=113))(this.onCharacter,this)),this._register((0,k.ko)(this.selectList.getHTMLElement(),k.Bx.POINTER_UP,a=>this.onPointerUp(a))),this._register(this.selectList.onMouseOver(a=>void 0!==a.index&&!this.options[a.index]?.isDisabled&&this.selectList.setFocus([a.index]))),this._register(this.selectList.onDidChangeFocus(a=>this.onListFocus(a))),this._register((0,k.ko)(this.selectDropDownContainer,k.Bx.FOCUS_OUT,a=>{!this._isVisible||(0,k.QX)(a.relatedTarget,this.selectDropDownContainer)||this.onListBlur()})),this.selectList.getHTMLElement().setAttribute("aria-label",this.selectBoxOptions.ariaLabel||""),this.selectList.getHTMLElement().setAttribute("aria-expanded","true"),this.styleList()}onPointerUp(a){if(!this.selectList.length)return;k.fs.stop(a);let b=a.target;if(!b||b.classList.contains("slider"))return;let c=b.closest(".monaco-list-row");if(!c)return;let d=Number(c.getAttribute("data-index")),e=c.classList.contains("option-disabled");d>=0&&d<this.options.length&&!e&&(this.selected=d,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]),this.selected!==this._currentSelection&&(this._currentSelection=this.selected,this._onDidSelect.fire({index:this.selectElement.selectedIndex,selected:this.options[this.selected].text}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)),this.hideSelectDropDown(!0))}onListBlur(){this._sticky||(this.selected!==this._currentSelection&&this.select(this._currentSelection),this.hideSelectDropDown(!1))}renderDescriptionMarkdown(a,b){let c=a=>{for(let b=0;b<a.childNodes.length;b++){let d=a.childNodes.item(b);"img"===(d.tagName&&d.tagName.toLowerCase())?d.remove():c(d)}},d=(0,o.Gc)({value:a,supportThemeIcons:!0},{actionHandler:b});return d.element.classList.add("select-box-description-markdown"),c(d.element),d}onListFocus(a){this._isVisible&&this._hasDetails&&this.updateDetail(a.indexes[0])}updateDetail(a){this._selectionDetailsDisposables.clear(),this.selectionDetailsPane.textContent="";let b=this.options[a],c=b?.description??"",d=b?.descriptionIsMarkdown??!1;if(c){if(d){let a=b.descriptionMarkdownActionHandler,d=this._selectionDetailsDisposables.add(this.renderDescriptionMarkdown(c,a));this.selectionDetailsPane.appendChild(d.element)}else this.selectionDetailsPane.textContent=c;this.selectionDetailsPane.style.display="block"}else this.selectionDetailsPane.style.display="none";this._skipLayout=!0,this.contextViewProvider.layout(),this._skipLayout=!1}onEscape(a){k.fs.stop(a),this.select(this._currentSelection),this.hideSelectDropDown(!0)}onEnter(a){k.fs.stop(a),this.options[this.selected]?.isDisabled||this.selected!==this._currentSelection&&(this._currentSelection=this.selected,this._onDidSelect.fire({index:this.selectElement.selectedIndex,selected:this.options[this.selected].text}),this.options[this.selected]&&this.options[this.selected].text&&this.setTitle(this.options[this.selected].text)),this.hideSelectDropDown(!0)}onDownArrow(a){if(this.selected<this.options.length-1){k.fs.stop(a,!0);let b=this.selected+1;for(;b<this.options.length&&this.options[b].isDisabled;)b++;b>=this.options.length||(this.selected=b,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]))}}onUpArrow(a){if(this.selected>0){k.fs.stop(a,!0);let b=this.selected-1;for(;b>=0&&this.options[b].isDisabled;)b--;b<0||(this.selected=b,this.select(this.selected),this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selectList.getFocus()[0]))}}onPageUp(a){k.fs.stop(a),this.selectList.focusPreviousPage(),setTimeout(()=>{let a=this.selectList.getFocus()[0];for(;a>0&&this.options[a].isDisabled;)a--;this.options[a].isDisabled||(this.selected=a,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))},1)}onPageDown(a){k.fs.stop(a),this.selectList.focusNextPage(),setTimeout(()=>{let a=this.selectList.getFocus()[0];for(;a<this.options.length-1&&this.options[a].isDisabled;)a++;this.options[a].isDisabled||(this.selected=a,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))},1)}onHome(a){if(k.fs.stop(a),this.options.length<2)return;let b=0;for(;b<this.options.length-1&&this.options[b].isDisabled;)b++;this.options[b].isDisabled||(this.selected=b,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onEnd(a){if(k.fs.stop(a),this.options.length<2)return;let b=this.options.length-1;for(;b>0&&this.options[b].isDisabled;)b--;this.options[b].isDisabled||(this.selected=b,this.selectList.setFocus([this.selected]),this.selectList.reveal(this.selected),this.select(this.selected))}onCharacter(a){let b=g.YM.toString(a.keyCode),c=-1;for(let d=0;d<this.options.length-1;d++)if(c=(d+this.selected+1)%this.options.length,this.options[c].text.charAt(0).toUpperCase()===b&&!this.options[c].isDisabled){this.select(c),this.selectList.setFocus([c]),this.selectList.reveal(this.selectList.getFocus()[0]),k.fs.stop(a);break}}dispose(){this.hideSelectDropDown(!1),super.dispose()}}},24453:(a,b,c)=>{"use strict";c.d(b,{Np:()=>f,jA:()=>g,z9:()=>e});var d=c(49679);function e(a){return!!a&&"function"==typeof a.getEditorType&&a.getEditorType()===d._.ICodeEditor}function f(a){return!!a&&"function"==typeof a.getEditorType&&a.getEditorType()===d._.IDiffEditor}function g(a){return e(a)?a:f(a)?a.getModifiedEditor():a&&"object"==typeof a&&"function"==typeof a.onDidChangeActiveEditor&&e(a.activeCodeEditor)?a.activeCodeEditor:null}},24772:(a,b,c)=>{"use strict";c.d(b,{f:()=>d});class d{constructor(a,b,c,d,e,f,g){this.id=a,this.label=b,this.alias=c,this.metadata=d,this._precondition=e,this._run=f,this._contextKeyService=g}isSupported(){return this._contextKeyService.contextMatchesRules(this._precondition)}run(a){return this.isSupported()?this._run(a):Promise.resolve(void 0)}}},25076:(a,b,c)=>{"use strict";c.d(b,{_:()=>e});var d=c(76631);class e extends d.jG{constructor(){super(...arguments),this._isDisposed=!1}dispose(){super.dispose(),this._isDisposed=!0}assertNotDisposed(){if(this._isDisposed)throw Error("TextModelPart is disposed!")}}},26045:()=>{},26101:()=>{},26346:(a,b,c)=>{"use strict";c.d(b,{C7:()=>g,MS:()=>q,QB:()=>n,Qx:()=>v,VL:()=>u,Vh:()=>i,Vp:()=>h,eu:()=>l,l4:()=>k,o0:()=>t,pW:()=>o,qe:()=>j,rR:()=>w,sS:()=>m,vr:()=>s,wP:()=>p,zG:()=>r});var d=c(26529),e=c(61822),f=c(67992);function g(a,b,c,d){return a!==c?j(c-a,d):j(0,d-b)}let h=0;function i(a){return 0===a}function j(a,b){return 0x4000000*a+b}function k(a){let b=Math.floor(a/0x4000000);return new f.W(b,a-0x4000000*b)}function l(a){return Math.floor(a/0x4000000)}function m(a){return a}function n(a,b){let c=a+b;return b>=0x4000000&&(c-=a%0x4000000),c}function o(a,b){return a.reduce((a,c)=>n(a,b(c)),h)}function p(a,b){return a===b}function q(a,b){if(b-a<=0)return h;let c=Math.floor(a/0x4000000),d=Math.floor(b/0x4000000),e=b-0x4000000*d;return c===d?j(0,e-(a-0x4000000*c)):j(d-c,e)}function r(a,b){return a<b}function s(a,b){return a<=b}function t(a,b){return a>=b}function u(a){return j(a.lineNumber-1,a.column-1)}function v(a,b){let c=Math.floor(a/0x4000000),d=Math.floor(b/0x4000000);return new e.Q(c+1,a-0x4000000*c+1,d+1,b-0x4000000*d+1)}function w(a){let b=(0,d.uz)(a);return j(b.length-1,b[b.length-1].length)}},26529:(a,b,c)=>{"use strict";let d;c.d(b,{$X:()=>V,AV:()=>g,BO:()=>n,Bm:()=>o,DB:()=>z,Dp:()=>F,E_:()=>R,GP:()=>i,HG:()=>s,LJ:()=>J,LU:()=>Z,Lv:()=>A,MV:()=>P,NB:()=>m,OS:()=>p,Q_:()=>C,Qp:()=>G,S8:()=>ad,Ss:()=>X,UD:()=>v,UU:()=>t,Vi:()=>H,W1:()=>x,Wd:()=>ac,Wv:()=>B,Z5:()=>L,_J:()=>U,aC:()=>T,aI:()=>D,bm:()=>l,eY:()=>q,ih:()=>k,iy:()=>O,jy:()=>j,km:()=>N,lF:()=>w,lT:()=>u,m:()=>Q,ne:()=>W,ns:()=>E,pc:()=>I,r_:()=>Y,tk:()=>_,tl:()=>ae,uz:()=>r,y_:()=>af,zY:()=>$,z_:()=>K,zd:()=>y});var e=c(57773),f=c(2525);function g(a){return!a||"string"!=typeof a||0===a.trim().length}let h=/{(\d+)}/g;function i(a,...b){return 0===b.length?a:a.replace(h,function(a,c){let d=parseInt(c,10);return isNaN(d)||d<0||d>=b.length?a:b[d]})}function j(a){return a.replace(/[<>"'&]/g,a=>{switch(a){case"<":return"<";case">":return">";case'"':return""";case"'":return"'";case"&":return"&"}return a})}function k(a){return a.replace(/[<>&]/g,function(a){switch(a){case"<":return"<";case">":return">";case"&":return"&";default:return a}})}function l(a){return a.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function m(a,b){if(!a||!b)return a;let c=b.length,d=0;if(1===c){let c=b.charCodeAt(0);for(;d<a.length&&a.charCodeAt(d)===c;)d++}else for(;a.startsWith(b,d);)d+=c;return a.substring(d)}function n(a,b){if(!a||!b)return a;let c=b.length,d=a.length;if(1===c){let c=d,e=b.charCodeAt(0);for(;c>0&&a.charCodeAt(c-1)===e;)c--;return a.substring(0,c)}let e=d;for(;e>0&&a.endsWith(b,e);)e-=c;return a.substring(0,e)}function o(a){return a.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&").replace(/[\*]/g,".*")}function p(a,b,c={}){if(!a)throw Error("Cannot create regex from empty string");b||(a=l(a)),c.wholeWord&&(/\B/.test(a.charAt(0))||(a="\\b"+a),/\B/.test(a.charAt(a.length-1))||(a+="\\b"));let d="";return c.global&&(d+="g"),c.matchCase||(d+="i"),c.multiline&&(d+="m"),c.unicode&&(d+="u"),new RegExp(a,d)}function q(a){return"^"!==a.source&&"^$"!==a.source&&"$"!==a.source&&"^\\s*$"!==a.source&&!!(a.exec("")&&0===a.lastIndex)}function r(a){return a.split(/\r\n|\r|\n/)}function s(a){for(let b=0,c=a.length;b<c;b++){let c=a.charCodeAt(b);if(32!==c&&9!==c)return b}return -1}function t(a,b=0,c=a.length){for(let d=b;d<c;d++){let c=a.charCodeAt(d);if(32!==c&&9!==c)return a.substring(b,d)}return a.substring(b,c)}function u(a,b=a.length-1){for(let c=b;c>=0;c--){let b=a.charCodeAt(c);if(32!==b&&9!==b)return c}return -1}function v(a,b){return a<b?-1:+(a>b)}function w(a,b,c=0,d=a.length,e=0,f=b.length){for(;c<d&&e<f;c++,e++){let d=a.charCodeAt(c),f=b.charCodeAt(e);if(d<f)return -1;if(d>f)return 1}let g=d-c,h=f-e;return g<h?-1:+(g>h)}function x(a,b){return y(a,b,0,a.length,0,b.length)}function y(a,b,c=0,d=a.length,e=0,f=b.length){for(;c<d&&e<f;c++,e++){let g=a.charCodeAt(c),h=b.charCodeAt(e);if(g===h)continue;if(g>=128||h>=128)return w(a.toLowerCase(),b.toLowerCase(),c,d,e,f);A(g)&&(g-=32),A(h)&&(h-=32);let i=g-h;if(0!==i)return i}let g=d-c,h=f-e;return g<h?-1:+(g>h)}function z(a){return a>=48&&a<=57}function A(a){return a>=97&&a<=122}function B(a){return a>=65&&a<=90}function C(a,b){return a.length===b.length&&0===y(a,b)}function D(a,b,c){return a===b||void 0!==a&&void 0!==b&&C(a,b)}function E(a,b){let c=b.length;return c<=a.length&&0===y(a,b,0,c)}function F(a,b){let c=a.length,d=c-b.length;return d>=0&&0===y(a,b,d,c)}function G(a,b){let c,d=Math.min(a.length,b.length);for(c=0;c<d;c++)if(a.charCodeAt(c)!==b.charCodeAt(c))return c;return d}function H(a,b){let c,d=Math.min(a.length,b.length),e=a.length-1,f=b.length-1;for(c=0;c<d;c++)if(a.charCodeAt(e-c)!==b.charCodeAt(f-c))return c;return d}function I(a){return 55296<=a&&a<=56319}function J(a){return 56320<=a&&a<=57343}function K(a,b){return(a-55296<<10)+(b-56320)+65536}function L(a,b,c){let d=a.charCodeAt(c);if(I(d)&&c+1<b){let b=a.charCodeAt(c+1);if(J(b))return K(d,b)}return d}class M{get offset(){return this._offset}constructor(a,b=0){this._str=a,this._len=a.length,this._offset=b}setOffset(a){this._offset=a}prevCodePoint(){let a=function(a,b){let c=a.charCodeAt(b-1);if(J(c)&&b>1){let d=a.charCodeAt(b-2);if(I(d))return K(d,c)}return c}(this._str,this._offset);return this._offset-=a>=65536?2:1,a}nextCodePoint(){let a=L(this._str,this._len,this._offset);return this._offset+=a>=65536?2:1,a}eol(){return this._offset>=this._len}}class N{get offset(){return this._iterator.offset}constructor(a,b=0){this._iterator=new M(a,b)}nextGraphemeLength(){let a=ab.getInstance(),b=this._iterator,c=b.offset,d=a.getGraphemeBreakType(b.nextCodePoint());for(;!b.eol();){let c=b.offset,e=a.getGraphemeBreakType(b.nextCodePoint());if(aa(d,e)){b.setOffset(c);break}d=e}return b.offset-c}prevGraphemeLength(){let a=ab.getInstance(),b=this._iterator,c=b.offset,d=a.getGraphemeBreakType(b.prevCodePoint());for(;b.offset>0;){let c=b.offset,e=a.getGraphemeBreakType(b.prevCodePoint());if(aa(e,d)){b.setOffset(c);break}d=e}return c-b.offset}eol(){return this._iterator.eol()}}function O(a,b){return new N(a,b).nextGraphemeLength()}function P(a,b){return new N(a,b).prevGraphemeLength()}function Q(a,b){b>0&&J(a.charCodeAt(b))&&b--;let c=b+O(a,b);return[c-P(a,c),c]}function R(a){return d||(d=/(?:[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u0710\u0712-\u072F\u074D-\u07A5\u07B1-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u0858\u085E-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFD3D\uFD50-\uFDC7\uFDF0-\uFDFC\uFE70-\uFEFC]|\uD802[\uDC00-\uDD1B\uDD20-\uDE00\uDE10-\uDE35\uDE40-\uDEE4\uDEEB-\uDF35\uDF40-\uDFFF]|\uD803[\uDC00-\uDD23\uDE80-\uDEA9\uDEAD-\uDF45\uDF51-\uDF81\uDF86-\uDFF6]|\uD83A[\uDC00-\uDCCF\uDD00-\uDD43\uDD4B-\uDFFF]|\uD83B[\uDC00-\uDEBB])/),d.test(a)}let S=/^[\t\n\r\x20-\x7E]*$/;function T(a){return S.test(a)}let U=/[\u2028\u2029]/;function V(a){return U.test(a)}function W(a){return a>=11904&&a<=55215||a>=63744&&a<=64255||a>=65281&&a<=65374||a>=65504&&a<=65510}function X(a){return a>=127462&&a<=127487||8986===a||8987===a||9200===a||9203===a||a>=9728&&a<=10175||11088===a||11093===a||a>=127744&&a<=128591||a>=128640&&a<=128764||a>=128992&&a<=129008||a>=129280&&a<=129535||a>=129648&&a<=129782}let Y=String.fromCharCode(65279);function Z(a){return!!(a&&a.length>0&&65279===a.charCodeAt(0))}function $(a,b=!1){return!!a&&(b&&(a=a.replace(/\\./g,"")),a.toLowerCase()!==a)}function _(a){return(a%=52)<26?String.fromCharCode(97+a):String.fromCharCode(65+a-26)}function aa(a,b){return 0===a?5!==b&&7!==b:(2!==a||3!==b)&&(4===a||2===a||3===a||4===b||2===b||3===b||(8!==a||8!==b&&9!==b&&11!==b&&12!==b)&&(11!==a&&9!==a||9!==b&&10!==b)&&(12!==a&&10!==a||10!==b)&&5!==b&&13!==b&&7!==b&&1!==a&&(13!==a||14!==b)&&(6!==a||6!==b)&&!0)}class ab{static{this._INSTANCE=null}static getInstance(){return ab._INSTANCE||(ab._INSTANCE=new ab),ab._INSTANCE}constructor(){this._data=JSON.parse("[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]")}getGraphemeBreakType(a){if(a<32)return 10===a?3:13===a?2:4;if(a<127)return 0;let b=this._data,c=b.length/3,d=1;for(;d<=c;)if(a<b[3*d])d*=2;else{if(!(a>b[3*d+1]))return b[3*d+2];d=2*d+1}return 0}}function ac(a,b){if(0===a)return 0;let c=function(a,b){var c;let d=new M(b,a),e=d.prevCodePoint();for(;127995<=(c=e)&&c<=127999||65039===e||8419===e;){if(0===d.offset)return;e=d.prevCodePoint()}if(!X(e))return;let f=d.offset;return f>0&&8205===d.prevCodePoint()&&(f=d.offset),f}(a,b);if(void 0!==c)return c;let d=new M(b,a);return d.prevCodePoint(),d.offset}let ad="\xa0";class ae{static{this.ambiguousCharacterData=new f.d(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,1523,96,8242,96,1370,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,118002,50,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,118003,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,118004,52,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,118005,53,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,118006,54,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,118007,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,118008,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,118009,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,117974,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,117975,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71913,67,71922,67,65315,67,8557,67,8450,67,8493,67,117976,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,117977,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,117978,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,117979,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,117980,71,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,117981,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,117983,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,117984,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,118001,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,117982,108,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,117985,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,117986,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,117987,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,118000,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,117988,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,117989,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,117990,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,117991,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,117992,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,117993,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,117994,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,117995,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71910,87,71919,87,117996,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,117997,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,117998,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,71909,90,66293,90,65338,90,8484,90,8488,90,117999,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65283,35,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"cs":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"es":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"fr":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"it":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ja":[8211,45,8218,44,65281,33,8216,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65292,44,65297,49,65307,59],"ko":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"pt-BR":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"ru":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],"zh-hans":[160,32,65374,126,8218,44,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65297,49],"zh-hant":[8211,45,65374,126,8218,44,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89]}'))}static{this.cache=new e.o5(a=>{let b,c=a.split(",");function d(a){let b=new Map;for(let c=0;c<a.length;c+=2)b.set(a[c],a[c+1]);return b}let e=this.ambiguousCharacterData.value,f=c.filter(a=>!a.startsWith("_")&&Object.hasOwn(e,a));for(let a of(0===f.length&&(f=["_default"]),f))b=function(a,b){if(!a)return b;let c=new Map;for(let[d,e]of a)b.has(d)&&c.set(d,e);return c}(b,d(e[a]));return new ae(function(a,b){let c=new Map(a);for(let[a,d]of b)c.set(a,d);return c}(d(e._common),b))})}static getInstance(a){return ae.cache.get(Array.from(a).join(","))}static{this._locales=new f.d(()=>Object.keys(ae.ambiguousCharacterData.value).filter(a=>!a.startsWith("_")))}static getLocales(){return ae._locales.value}constructor(a){this.confusableDictionary=a}isAmbiguous(a){return this.confusableDictionary.has(a)}getPrimaryConfusable(a){return this.confusableDictionary.get(a)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}}class af{static getRawData(){return JSON.parse('{"_common":[11,12,13,127,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999],"cs":[173,8203,12288],"de":[173,8203,12288],"es":[8203,12288],"fr":[173,8203,12288],"it":[160,173,12288],"ja":[173],"ko":[173,12288],"pl":[173,8203,12288],"pt-BR":[173,8203,12288],"qps-ploc":[160,173,8203,12288],"ru":[173,12288],"tr":[160,173,8203,12288],"zh-hans":[160,173,8203,12288],"zh-hant":[173,12288]}')}static{this._data=void 0}static getData(){return this._data||(this._data=new Set([...Object.values(af.getRawData())].flat())),this._data}static isInvisibleCharacter(a){return af.getData().has(a)}static get codePoints(){return af.getData()}}},26858:(a,b,c)=>{"use strict";var d=c(72816),e=c(37327),f=c(34183),g=c(11023);(0,e.x1)("search.resultsInfoForeground",{light:f.CU,dark:(0,e.JO)(f.CU,.65),hcDark:f.CU,hcLight:f.CU},(0,d.kg)(2088,"Color of the text in the search viewlet's completion message.")),(0,e.x1)("searchEditor.findMatchBackground",{light:(0,e.JO)(g.Ub,.66),dark:(0,e.JO)(g.Ub,.66),hcDark:g.Ub,hcLight:g.Ub},(0,d.kg)(2089,"Color of the Search Editor query matches.")),(0,e.x1)("searchEditor.findMatchBorder",{light:(0,e.JO)(g.EC,.66),dark:(0,e.JO)(g.EC,.66),hcDark:g.EC,hcLight:g.EC},(0,d.kg)(2090,"Border color of the Search Editor query matches."))},27612:(a,b,c)=>{"use strict";function d(a,b){"number"!=typeof a.vscodeWindowId&&Object.defineProperty(a,"vscodeWindowId",{get:()=>b})}c.d(b,{G:()=>e,y:()=>d});let e=window},28289:()=>{},28500:(a,b,c)=>{"use strict";c.d(b,{F1:()=>g,uP:()=>k});var d=c(12744),e=c(40427);class f{constructor(a){this.source=a}getElements(){let a=this.source,b=new Int32Array(a.length);for(let c=0,d=a.length;c<d;c++)b[c]=a.charCodeAt(c);return b}}function g(a,b,c){return new k(new f(a),new f(b)).ComputeDiff(c).changes}class h{static Assert(a,b){if(!a)throw Error(b)}}class i{static Copy(a,b,c,d,e){for(let f=0;f<e;f++)c[d+f]=a[b+f]}static Copy2(a,b,c,d,e){for(let f=0;f<e;f++)c[d+f]=a[b+f]}}class j{constructor(){this.m_changes=[],this.m_originalStart=0x40000000,this.m_modifiedStart=0x40000000,this.m_originalCount=0,this.m_modifiedCount=0}MarkNextChange(){(this.m_originalCount>0||this.m_modifiedCount>0)&&this.m_changes.push(new d.y(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=0x40000000,this.m_modifiedStart=0x40000000}AddOriginalElement(a,b){this.m_originalStart=Math.min(this.m_originalStart,a),this.m_modifiedStart=Math.min(this.m_modifiedStart,b),this.m_originalCount++}AddModifiedElement(a,b){this.m_originalStart=Math.min(this.m_originalStart,a),this.m_modifiedStart=Math.min(this.m_modifiedStart,b),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}}class k{constructor(a,b,c=null){this.ContinueProcessingPredicate=c,this._originalSequence=a,this._modifiedSequence=b;const[d,e,f]=k._getElements(a),[g,h,i]=k._getElements(b);this._hasStrings=f&&i,this._originalStringElements=d,this._originalElementsOrHash=e,this._modifiedStringElements=g,this._modifiedElementsOrHash=h,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(a){return a.length>0&&"string"==typeof a[0]}static _getElements(a){let b=a.getElements();if(k._isStringArray(b)){let a=new Int32Array(b.length);for(let c=0,d=b.length;c<d;c++)a[c]=(0,e.e2)(b[c],0);return[b,a,!0]}return b instanceof Int32Array?[[],b,!1]:[[],new Int32Array(b),!1]}ElementsAreEqual(a,b){return this._originalElementsOrHash[a]===this._modifiedElementsOrHash[b]&&(!this._hasStrings||this._originalStringElements[a]===this._modifiedStringElements[b])}ElementsAreStrictEqual(a,b){return!!this.ElementsAreEqual(a,b)&&k._getStrictElement(this._originalSequence,a)===k._getStrictElement(this._modifiedSequence,b)}static _getStrictElement(a,b){return"function"==typeof a.getStrictElement?a.getStrictElement(b):null}OriginalElementsAreEqual(a,b){return this._originalElementsOrHash[a]===this._originalElementsOrHash[b]&&(!this._hasStrings||this._originalStringElements[a]===this._originalStringElements[b])}ModifiedElementsAreEqual(a,b){return this._modifiedElementsOrHash[a]===this._modifiedElementsOrHash[b]&&(!this._hasStrings||this._modifiedStringElements[a]===this._modifiedStringElements[b])}ComputeDiff(a){return this._ComputeDiff(0,this._originalElementsOrHash.length-1,0,this._modifiedElementsOrHash.length-1,a)}_ComputeDiff(a,b,c,d,e){let f=[!1],g=this.ComputeDiffRecursive(a,b,c,d,f);return e&&(g=this.PrettifyChanges(g)),{quitEarly:f[0],changes:g}}ComputeDiffRecursive(a,b,c,e,f){for(f[0]=!1;a<=b&&c<=e&&this.ElementsAreEqual(a,c);)a++,c++;for(;b>=a&&e>=c&&this.ElementsAreEqual(b,e);)b--,e--;if(a>b||c>e){let f;return c<=e?(h.Assert(a===b+1,"originalStart should only be one more than originalEnd"),f=[new d.y(a,0,c,e-c+1)]):a<=b?(h.Assert(c===e+1,"modifiedStart should only be one more than modifiedEnd"),f=[new d.y(a,b-a+1,c,0)]):(h.Assert(a===b+1,"originalStart should only be one more than originalEnd"),h.Assert(c===e+1,"modifiedStart should only be one more than modifiedEnd"),f=[]),f}let g=[0],i=[0],j=this.ComputeRecursionPoint(a,b,c,e,g,i,f),k=g[0],l=i[0];if(null!==j)return j;if(!f[0]){let g=this.ComputeDiffRecursive(a,k,c,l,f),h=[];return h=f[0]?[new d.y(k+1,b-(k+1)+1,l+1,e-(l+1)+1)]:this.ComputeDiffRecursive(k+1,b,l+1,e,f),this.ConcatenateChanges(g,h)}return[new d.y(a,b-a+1,c,e-c+1)]}WALKTRACE(a,b,c,e,f,g,h,i,k,l,m,n,o,p,q,r,s,t){let u=null,v=null,w=new j,x=b,y=c,z=o[0]-r[0]-e,A=-0x40000000,B=this.m_forwardHistory.length-1;do{let b=z+a;b===x||b<y&&k[b-1]<k[b+1]?(p=(m=k[b+1])-z-e,m<A&&w.MarkNextChange(),A=m,w.AddModifiedElement(m+1,p),z=b+1-a):(p=(m=k[b-1]+1)-z-e,m<A&&w.MarkNextChange(),A=m-1,w.AddOriginalElement(m,p+1),z=b-1-a),B>=0&&(a=(k=this.m_forwardHistory[B])[0],x=1,y=k.length-1)}while(--B>=-1);if(u=w.getReverseChanges(),t[0]){let a=o[0]+1,b=r[0]+1;if(null!==u&&u.length>0){let c=u[u.length-1];a=Math.max(a,c.getOriginalEnd()),b=Math.max(b,c.getModifiedEnd())}v=[new d.y(a,n-a+1,b,q-b+1)]}else{w=new j,x=g,y=h,z=o[0]-r[0]-i,A=0x40000000,B=s?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{let a=z+f;a===x||a<y&&l[a-1]>=l[a+1]?(p=(m=l[a+1]-1)-z-i,m>A&&w.MarkNextChange(),A=m+1,w.AddOriginalElement(m+1,p+1),z=a+1-f):(p=(m=l[a-1])-z-i,m>A&&w.MarkNextChange(),A=m,w.AddModifiedElement(m+1,p+1),z=a-1-f),B>=0&&(f=(l=this.m_reverseHistory[B])[0],x=1,y=l.length-1)}while(--B>=-1);v=w.getChanges()}return this.ConcatenateChanges(u,v)}ComputeRecursionPoint(a,b,c,e,f,g,h){let j=0,k=0,l=0,m=0,n=0,o=0;a--,c--,f[0]=0,g[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];let p=b-a+(e-c),q=p+1,r=new Int32Array(q),s=new Int32Array(q),t=e-c,u=b-a,v=a-c,w=b-e,x=(u-t)%2==0;r[t]=a,s[u]=b,h[0]=!1;for(let y=1;y<=p/2+1;y++){let p=0,z=0;l=this.ClipDiagonalBound(t-y,y,t,q),m=this.ClipDiagonalBound(t+y,y,t,q);for(let a=l;a<=m;a+=2){k=(j=a===l||a<m&&r[a-1]<r[a+1]?r[a+1]:r[a-1]+1)-(a-t)-v;let c=j;for(;j<b&&k<e&&this.ElementsAreEqual(j+1,k+1);)j++,k++;if(r[a]=j,j+k>p+z&&(p=j,z=k),!x&&Math.abs(a-u)<=y-1&&j>=s[a]){if(f[0]=j,g[0]=k,c<=s[a]&&y<=1448)return this.WALKTRACE(t,l,m,v,u,n,o,w,r,s,j,b,f,k,e,g,x,h);return null}}let A=(p-a+(z-c)-y)/2;if(null!==this.ContinueProcessingPredicate&&!this.ContinueProcessingPredicate(p,A)){if(h[0]=!0,f[0]=p,g[0]=z,!(A>0)||!(y<=1448))return a++,c++,[new d.y(a,b-a+1,c,e-c+1)];break}n=this.ClipDiagonalBound(u-y,y,u,q),o=this.ClipDiagonalBound(u+y,y,u,q);for(let d=n;d<=o;d+=2){k=(j=d===n||d<o&&s[d-1]>=s[d+1]?s[d+1]-1:s[d-1])-(d-u)-w;let i=j;for(;j>a&&k>c&&this.ElementsAreEqual(j,k);)j--,k--;if(s[d]=j,x&&Math.abs(d-t)<=y&&j<=r[d]){if(f[0]=j,g[0]=k,i>=r[d]&&y<=1448)return this.WALKTRACE(t,l,m,v,u,n,o,w,r,s,j,b,f,k,e,g,x,h);return null}}if(y<=1447){let a=new Int32Array(m-l+2);a[0]=t-l+1,i.Copy2(r,l,a,1,m-l+1),this.m_forwardHistory.push(a),(a=new Int32Array(o-n+2))[0]=u-n+1,i.Copy2(s,n,a,1,o-n+1),this.m_reverseHistory.push(a)}}return this.WALKTRACE(t,l,m,v,u,n,o,w,r,s,j,b,f,k,e,g,x,h)}PrettifyChanges(a){for(let b=0;b<a.length;b++){let c=a[b],d=b<a.length-1?a[b+1].originalStart:this._originalElementsOrHash.length,e=b<a.length-1?a[b+1].modifiedStart:this._modifiedElementsOrHash.length,f=c.originalLength>0,g=c.modifiedLength>0;for(;c.originalStart+c.originalLength<d&&c.modifiedStart+c.modifiedLength<e&&(!f||this.OriginalElementsAreEqual(c.originalStart,c.originalStart+c.originalLength))&&(!g||this.ModifiedElementsAreEqual(c.modifiedStart,c.modifiedStart+c.modifiedLength));){let a=this.ElementsAreStrictEqual(c.originalStart,c.modifiedStart);if(this.ElementsAreStrictEqual(c.originalStart+c.originalLength,c.modifiedStart+c.modifiedLength)&&!a)break;c.originalStart++,c.modifiedStart++}let h=[null];if(b<a.length-1&&this.ChangesOverlap(a[b],a[b+1],h)){a[b]=h[0],a.splice(b+1,1),b--;continue}}for(let b=a.length-1;b>=0;b--){let c=a[b],d=0,e=0;if(b>0){let c=a[b-1];d=c.originalStart+c.originalLength,e=c.modifiedStart+c.modifiedLength}let f=c.originalLength>0,g=c.modifiedLength>0,h=0,i=this._boundaryScore(c.originalStart,c.originalLength,c.modifiedStart,c.modifiedLength);for(let a=1;;a++){let b=c.originalStart-a,j=c.modifiedStart-a;if(b<d||j<e||f&&!this.OriginalElementsAreEqual(b,b+c.originalLength)||g&&!this.ModifiedElementsAreEqual(j,j+c.modifiedLength))break;let k=5*(b===d&&j===e)+this._boundaryScore(b,c.originalLength,j,c.modifiedLength);k>i&&(i=k,h=a)}c.originalStart-=h,c.modifiedStart-=h;let j=[null];if(b>0&&this.ChangesOverlap(a[b-1],a[b],j)){a[b-1]=j[0],a.splice(b,1),b++;continue}}if(this._hasStrings)for(let b=1,c=a.length;b<c;b++){let c=a[b-1],d=a[b],e=d.originalStart-c.originalStart-c.originalLength,f=c.originalStart,g=d.originalStart+d.originalLength,h=g-f,i=c.modifiedStart,j=d.modifiedStart+d.modifiedLength,k=j-i;if(e<5&&h<20&&k<20){let a=this._findBetterContiguousSequence(f,h,i,k,e);if(a){let[b,f]=a;(b!==c.originalStart+c.originalLength||f!==c.modifiedStart+c.modifiedLength)&&(c.originalLength=b-c.originalStart,c.modifiedLength=f-c.modifiedStart,d.originalStart=b+e,d.modifiedStart=f+e,d.originalLength=g-d.originalStart,d.modifiedLength=j-d.modifiedStart)}}}return a}_findBetterContiguousSequence(a,b,c,d,e){if(b<e||d<e)return null;let f=a+b-e+1,g=c+d-e+1,h=0,i=0,j=0;for(let b=a;b<f;b++)for(let a=c;a<g;a++){let c=this._contiguousSequenceScore(b,a,e);c>0&&c>h&&(h=c,i=b,j=a)}return h>0?[i,j]:null}_contiguousSequenceScore(a,b,c){let d=0;for(let e=0;e<c;e++){if(!this.ElementsAreEqual(a+e,b+e))return 0;d+=this._originalStringElements[a+e].length}return d}_OriginalIsBoundary(a){return a<=0||a>=this._originalElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._originalStringElements[a])}_OriginalRegionIsBoundary(a,b){if(this._OriginalIsBoundary(a)||this._OriginalIsBoundary(a-1))return!0;if(b>0){let c=a+b;if(this._OriginalIsBoundary(c-1)||this._OriginalIsBoundary(c))return!0}return!1}_ModifiedIsBoundary(a){return a<=0||a>=this._modifiedElementsOrHash.length-1||this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[a])}_ModifiedRegionIsBoundary(a,b){if(this._ModifiedIsBoundary(a)||this._ModifiedIsBoundary(a-1))return!0;if(b>0){let c=a+b;if(this._ModifiedIsBoundary(c-1)||this._ModifiedIsBoundary(c))return!0}return!1}_boundaryScore(a,b,c,d){return+!!this._OriginalRegionIsBoundary(a,b)+ +!!this._ModifiedRegionIsBoundary(c,d)}ConcatenateChanges(a,b){let c=[];if(0===a.length||0===b.length)return b.length>0?b:a;if(this.ChangesOverlap(a[a.length-1],b[0],c)){let d=Array(a.length+b.length-1);return i.Copy(a,0,d,0,a.length-1),d[a.length-1]=c[0],i.Copy(b,1,d,a.length,b.length-1),d}{let c=Array(a.length+b.length);return i.Copy(a,0,c,0,a.length),i.Copy(b,0,c,a.length,b.length),c}}ChangesOverlap(a,b,c){if(h.Assert(a.originalStart<=b.originalStart,"Left change is not less than or equal to right change"),h.Assert(a.modifiedStart<=b.modifiedStart,"Left change is not less than or equal to right change"),!(a.originalStart+a.originalLength>=b.originalStart)&&!(a.modifiedStart+a.modifiedLength>=b.modifiedStart))return c[0]=null,!1;{let e=a.originalStart,f=a.originalLength,g=a.modifiedStart,h=a.modifiedLength;return a.originalStart+a.originalLength>=b.originalStart&&(f=b.originalStart+b.originalLength-a.originalStart),a.modifiedStart+a.modifiedLength>=b.modifiedStart&&(h=b.modifiedStart+b.modifiedLength-a.modifiedStart),c[0]=new d.y(e,f,g,h),!0}}ClipDiagonalBound(a,b,c,d){if(a>=0&&a<d)return a;let e=b%2==0;return a<0?+(e!==(c%2==0)):e===((d-c-1)%2==0)?d-1:d-2}}},28516:(a,b,c)=>{"use strict";c.d(b,{M:()=>g});var d=c(95091),e=c(76631);class f extends e.jG{constructor(){super(...arguments),this._tabFocus=!1,this._onDidChangeTabFocus=this._register(new d.vl),this.onDidChangeTabFocus=this._onDidChangeTabFocus.event}getTabFocusMode(){return this._tabFocus}setTabFocusMode(a){this._tabFocus=a,this._onDidChangeTabFocus.fire(this._tabFocus)}}let g=new f},28524:(a,b,c)=>{"use strict";c.d(b,{h:()=>g,l:()=>f});var d=c(21495),e=c(55385);function f(a,b,c){let d=a.get(58),f=a.get(62),g=a.get(61),h=a.get(60),i=a.get(63),j=a.get(75),k=a.get(72);return e._8._create(d,f,g,h,i,j,k,b,c)}function g(a,b,c=!1){let f=d.qB.fontFamily.validate(a.fontFamily),h=d.qB.fontWeight.validate(a.fontWeight),i=d.qB.fontSize.validate(a.fontSize),j=d.qB.fontLigatures2.validate(a.fontLigatures),k=d.qB.fontVariations.validate(a.fontVariations),l=d.qB.lineHeight.validate(a.lineHeight),m=d.qB.letterSpacing.validate(a.letterSpacing);return e._8._create(f,h,i,j,k,l,m,b,c)}},28574:(a,b,c)=>{"use strict";c.d(b,{OL:()=>h,dg:()=>j,lw:()=>m});var d,e=c(35440),f=c(67992);let g=Symbol("TextModelEditSource");class h{constructor(a,b){this.metadata=a}toString(){return`${this.metadata.source}`}getType(){let a=this.metadata;switch(a.source){case"cursor":return a.kind;case"inlineCompletionAccept":return a.source+(a.$nes?":nes":"");case"unknown":return a.name||"unknown";default:return a.source}}toKey(a,b={}){return Object.entries(this.metadata).filter(([c,d])=>{let e=b[c];return void 0!==e?e:(c.match(/\$/g)||[]).length<=a&&null!=d&&""!==d}).map(([a,b])=>`${a}:${b}`).join("-")}}function i(a){return new h(a,g)}let j={unknown:a=>i({source:"unknown",name:a.name}),rename:(a,b)=>i({source:"rename",$$$oldName:a,$$$newName:b}),chatApplyEdits:a=>i({source:"Chat.applyEdits",$modelId:l(a.modelId),$extensionId:a.extensionId?.extensionId,$extensionVersion:a.extensionId?.version,$$languageId:a.languageId,$$sessionId:a.sessionId,$$requestId:a.requestId,$$mode:a.mode,$$codeBlockSuggestionId:a.codeBlockSuggestionId}),chatUndoEdits:()=>i({source:"Chat.undoEdits"}),chatReset:()=>i({source:"Chat.reset"}),inlineCompletionAccept:a=>i({source:"inlineCompletionAccept",$nes:a.nes,...k(a.providerId),$$correlationId:a.correlationId,$$requestUuid:a.requestUuid,$$languageId:a.languageId}),inlineCompletionPartialAccept:a=>i({source:"inlineCompletionPartialAccept",type:a.type,$nes:a.nes,...k(a.providerId),$$correlationId:a.correlationId,$$requestUuid:a.requestUuid,$$languageId:a.languageId}),inlineChatApplyEdit:a=>i({source:"inlineChat.applyEdits",$modelId:l(a.modelId),$extensionId:a.extensionId?.extensionId,$extensionVersion:a.extensionId?.version,$$sessionId:a.sessionId,$$requestId:a.requestId,$$languageId:a.languageId}),reloadFromDisk:()=>i({source:"reloadFromDisk"}),cursor:a=>i({source:"cursor",kind:a.kind,detailedSource:a.detailedSource}),setValue:()=>i({source:"setValue"}),eolChange:()=>i({source:"eolChange"}),applyEdits:()=>i({source:"applyEdits"}),snippet:()=>i({source:"snippet"}),suggest:a=>i({source:"suggest",...k(a.providerId)}),codeAction:a=>i({source:"codeAction",$kind:a.kind,...k(a.providerId)})};function k(a){return a?{$extensionId:a.extensionId,$extensionVersion:a.extensionVersion,$providerId:a.providerId}:{}}function l(a){if(void 0!==a)return a.replaceAll("/","|")}class m{static fromText(a){return new m(f.W.ofText(a).lineCount,0,a.length,0)}static tryCreate(a,b,c,d){if(void 0!==a&&void 0!==b&&void 0!==c&&void 0!==d)return new m(a,b,c,d)}constructor(a,b,c,d){this.linesAdded=a,this.linesRemoved=b,this.charsAdded=c,this.charsRemoved=d}}(d||(d={})).newId=function(a){return a?a("sgt"):(0,e.t)("sgt")}},28925:(a,b,c)=>{"use strict";c.d(b,{m:()=>d});class d{constructor(a,b,c,d,e,f){this._scrollbarSize=Math.round(b),this._oppositeScrollbarSize=Math.round(c),this._arrowSize=Math.round(a),this._visibleSize=d,this._scrollSize=e,this._scrollPosition=f,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new d(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(a){let b=Math.round(a);return this._visibleSize!==b&&(this._visibleSize=b,this._refreshComputedValues(),!0)}setScrollSize(a){let b=Math.round(a);return this._scrollSize!==b&&(this._scrollSize=b,this._refreshComputedValues(),!0)}setScrollPosition(a){let b=Math.round(a);return this._scrollPosition!==b&&(this._scrollPosition=b,this._refreshComputedValues(),!0)}setScrollbarSize(a){this._scrollbarSize=Math.round(a)}setOppositeScrollbarSize(a){this._oppositeScrollbarSize=Math.round(a)}static _computeValues(a,b,c,d,e){let f=Math.max(0,c-a),g=Math.max(0,f-2*b),h=d>0&&d>c;if(!h)return{computedAvailableSize:Math.round(f),computedIsNeeded:h,computedSliderSize:Math.round(g),computedSliderRatio:0,computedSliderPosition:0};let i=Math.round(Math.max(20,Math.floor(c*g/d))),j=(g-i)/(d-c);return{computedAvailableSize:Math.round(f),computedIsNeeded:h,computedSliderSize:Math.round(i),computedSliderRatio:j,computedSliderPosition:Math.round(e*j)}}_refreshComputedValues(){let a=d._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=a.computedAvailableSize,this._computedIsNeeded=a.computedIsNeeded,this._computedSliderSize=a.computedSliderSize,this._computedSliderRatio=a.computedSliderRatio,this._computedSliderPosition=a.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(a){return this._computedIsNeeded?Math.round((a-this._arrowSize-this._computedSliderSize/2)/this._computedSliderRatio):0}getDesiredScrollPositionFromOffsetPaged(a){if(!this._computedIsNeeded)return 0;let b=a-this._arrowSize,c=this._scrollPosition;return b<this._computedSliderPosition?c-=this._visibleSize:c+=this._visibleSize,c}getDesiredScrollPositionFromDelta(a){return this._computedIsNeeded?Math.round((this._computedSliderPosition+a)/this._computedSliderRatio):0}}},28952:(a,b,c)=>{"use strict";c.d(b,{M:()=>e});var d=c(61556);function e(a,b){a instanceof d.D?(a.setFontFamily(b.getMassagedFontFamily()),a.setFontWeight(b.fontWeight),a.setFontSize(b.fontSize),a.setFontFeatureSettings(b.fontFeatureSettings),a.setFontVariationSettings(b.fontVariationSettings),a.setLineHeight(b.lineHeight),a.setLetterSpacing(b.letterSpacing)):(a.style.fontFamily=b.getMassagedFontFamily(),a.style.fontWeight=b.fontWeight,a.style.fontSize=b.fontSize+"px",a.style.fontFeatureSettings=b.fontFeatureSettings,a.style.fontVariationSettings=b.fontVariationSettings,a.style.lineHeight=b.lineHeight+"px",a.style.letterSpacing=b.letterSpacing+"px")}},28985:()=>{},29462:(a,b,c)=>{"use strict";c.d(b,{gI:()=>p}),c(26529);var d=c(61822),e=c(92640),f=c(76631),g=c(33402),h=c(99187),i=c(14322),j=c(58254),k=c(55241),l=c(72816);let m=(0,j.u1)("IEditorCancelService"),n=new h.N1("cancellableOperation",!1,(0,l.kg)(978,"Whether the editor runs a cancellable operation, e.g. like 'Peek References'"));(0,k.v)(m,class{constructor(){this._tokens=new WeakMap}add(a,b){let c,d=this._tokens.get(a);return d||(d=a.invokeWithinContext(a=>({key:n.bindTo(a.get(h.fN)),tokens:new i.w})),this._tokens.set(a,d)),d.key.set(!0),c=d.tokens.push(b),()=>{c&&(c(),d.key.set(!d.tokens.isEmpty()),c=void 0)}}cancel(a){let b=this._tokens.get(a);if(!b)return;let c=b.tokens.pop();c&&(c.cancel(),b.key.set(!b.tokens.isEmpty()))}},1);class o extends e.Qi{constructor(a,b){super(b),this.editor=a,this._unregister=a.invokeWithinContext(b=>b.get(m).add(a,this))}dispose(){this._unregister(),super.dispose()}}(0,g.E_)(new class extends g.DX{constructor(){super({id:"editor.cancelOperation",kbOpts:{weight:100,primary:9},precondition:n})}runEditorCommand(a,b){a.get(m).cancel(b)}});class p extends o{constructor(a,b,c,e){super(a,e),this._listener=new f.Cm,4&b&&this._listener.add(a.onDidChangeCursorPosition(a=>{c&&d.Q.containsPosition(c,a.position)||this.cancel()})),2&b&&this._listener.add(a.onDidChangeCursorSelection(a=>{c&&d.Q.containsRange(c,a.selection)||this.cancel()})),8&b&&this._listener.add(a.onDidScrollChange(a=>this.cancel())),1&b&&(this._listener.add(a.onDidChangeModel(a=>this.cancel())),this._listener.add(a.onDidChangeModelContent(a=>this.cancel())))}dispose(){this._listener.dispose(),super.dispose()}}e.Qi},29498:(a,b,c)=>{"use strict";c.d(b,{O:()=>g});var d=c(43765),e=c(85214);class f{constructor(){this.data=new Map}add(a,b){(0,d.ok)((0,e.Kg)(a)),(0,d.ok)((0,e.Gv)(b)),(0,d.ok)(!this.data.has(a),"There is already an extension with this id"),this.data.set(a,b)}as(a){return this.data.get(a)||null}dispose(){this.data.forEach(a=>{(0,e.Tn)(a.dispose)&&a.dispose()}),this.data.clear()}}let g=new f},29943:(a,b,c)=>{"use strict";c.d(b,{Go:()=>function a(b){if(!b||"object"!=typeof b||b instanceof RegExp)return b;let c=Array.isArray(b)?[]:{};return Object.entries(b).forEach(([b,d])=>{c[b]=d&&"object"==typeof d?a(d):d}),c},PI:()=>g,aI:()=>function a(b,c){let d,e;if(b===c)return!0;if(null==b||null==c||typeof b!=typeof c||"object"!=typeof b||Array.isArray(b)!==Array.isArray(c))return!1;if(Array.isArray(b)){if(b.length!==c.length)return!1;for(d=0;d<b.length;d++)if(!a(b[d],c[d]))return!1}else{let f=[];for(e in b)f.push(e);f.sort();let g=[];for(e in c)g.push(e);if(g.sort(),!a(f,g))return!1;for(d=0;d<f.length;d++)if(!a(b[f[d]],c[f[d]]))return!1}return!0},ol:()=>e});var d=c(85214);function e(a){if(!a||"object"!=typeof a)return a;let b=[a];for(;b.length>0;){let a=b.shift();for(let c in Object.freeze(a),a)if(f.call(a,c)){let e=a[c];"object"!=typeof e||Object.isFrozen(e)||(0,d.iu)(e)||b.push(e)}}return a}let f=Object.prototype.hasOwnProperty;function g(a,b){return function a(b,c,e){if((0,d.z)(b))return b;let g=c(b);if(void 0!==g)return g;if(Array.isArray(b)){let d=[];for(let f of b)d.push(a(f,c,e));return d}if((0,d.Gv)(b)){if(e.has(b))throw Error("Cannot clone recursive data-structure");e.add(b);let d={};for(let g in b)f.call(b,g)&&(d[g]=a(b[g],c,e));return e.delete(b),d}return b}(a,b,new Set)}},29980:(a,b,c)=>{"use strict";c.d(b,{f:()=>f,j:()=>e});var d=c(99187);let e=(0,c(58254).u1)("accessibilityService"),f=new d.N1("accessibilityModeEnabled",!1)},30256:()=>{},30890:(a,b,c)=>{"use strict";let d;c.d(b,{A:()=>g});var e=c(93914);let f=globalThis.vscode;if(void 0!==f&&void 0!==f.context){let a=f.context.configuration();if(a)d=a.product;else throw Error("Sandbox: unable to resolve product configuration from preload script.")}else globalThis._VSCODE_PRODUCT_JSON&&globalThis._VSCODE_PACKAGE_JSON?(d=globalThis._VSCODE_PRODUCT_JSON,e._K.VSCODE_DEV&&Object.assign(d,{nameShort:`${d.nameShort} Dev`,nameLong:`${d.nameLong} Dev`,dataFolderName:`${d.dataFolderName}-dev`,serverDataFolderName:d.serverDataFolderName?`${d.serverDataFolderName}-dev`:void 0}),d.version||Object.assign(d,{version:globalThis._VSCODE_PACKAGE_JSON.version})):0===Object.keys(d={}).length&&Object.assign(d,{version:"1.104.0-dev",nameShort:"Code - OSS Dev",nameLong:"Code - OSS Dev",applicationName:"code-oss",dataFolderName:".vscode-oss",urlProtocol:"code-oss",reportIssueUrl:"https://github.com/microsoft/vscode/issues/new",licenseName:"MIT",licenseUrl:"https://github.com/microsoft/vscode/blob/main/LICENSE.txt",serverLicenseUrl:"https://github.com/microsoft/vscode/blob/main/LICENSE.txt",defaultChatAgent:{extensionId:"GitHub.copilot",chatExtensionId:"GitHub.copilot-chat",provider:{default:{id:"github",name:"GitHub"},enterprise:{id:"github-enterprise",name:"GitHub Enterprise"}},providerScopes:[]}});var g=d},30996:(a,b,c)=>{"use strict";c.d(b,{IN:()=>m,LC:()=>v,P8:()=>u,S8:()=>p,SA:()=>o,V8:()=>s,Vn:()=>w,fj:()=>q,hd:()=>r,pD:()=>t});var d=c(93914);class e extends Error{constructor(a,b,c){let d;"string"==typeof b&&0===b.indexOf("not ")?(d="must not be",b=b.replace(/^not /,"")):d="must be";const e=-1!==a.indexOf(".")?"property":"argument";let f=`The "${a}" ${e} ${d} of type ${b}`;super(f+=`. Received type ${typeof c}`),this.code="ERR_INVALID_ARG_TYPE"}}function f(a,b){if("string"!=typeof a)throw new e(b,"string",a)}let g="win32"===d.iD;function h(a){return 47===a||92===a}function i(a){return 47===a}function j(a){return a>=65&&a<=90||a>=97&&a<=122}function k(a,b,c,d){let e="",f=0,g=-1,h=0,i=0;for(let j=0;j<=a.length;++j){if(j<a.length)i=a.charCodeAt(j);else if(d(i))break;else i=47;if(d(i)){if(g===j-1||1===h);else if(2===h){if(e.length<2||2!==f||46!==e.charCodeAt(e.length-1)||46!==e.charCodeAt(e.length-2)){if(e.length>2){let a=e.lastIndexOf(c);-1===a?(e="",f=0):f=(e=e.slice(0,a)).length-1-e.lastIndexOf(c),g=j,h=0;continue}else if(0!==e.length){e="",f=0,g=j,h=0;continue}}b&&(e+=e.length>0?`${c}..`:"..",f=2)}else e.length>0?e+=`${c}${a.slice(g+1,j)}`:e=a.slice(g+1,j),f=j-g-1;g=j,h=0}else 46===i&&-1!==h?++h:h=-1}return e}function l(a,b){var c;if(null===b||"object"!=typeof b)throw new e("pathObject","Object",b);let d=b.dir||b.root,f=b.base||`${b.name||""}${(c=b.ext)?`${"."===c[0]?"":"."}${c}`:""}`;return d?d===b.root?`${d}${f}`:`${d}${a}${f}`:f}let m={resolve(...a){let b="",c="",e=!1;for(let g=a.length-1;g>=-1;g--){let i;if(g>=0){if(f(i=a[g],`paths[${g}]`),0===i.length)continue}else 0===b.length?i=(0,d.bJ)():(void 0===(i=d._K[`=${b}`]||(0,d.bJ)())||i.slice(0,2).toLowerCase()!==b.toLowerCase()&&92===i.charCodeAt(2))&&(i=`${b}\\`);let k=i.length,l=0,m="",n=!1,o=i.charCodeAt(0);if(1===k)h(o)&&(l=1,n=!0);else if(h(o))if(n=!0,h(i.charCodeAt(1))){let a=2,b=2;for(;a<k&&!h(i.charCodeAt(a));)a++;if(a<k&&a!==b){let c=i.slice(b,a);for(b=a;a<k&&h(i.charCodeAt(a));)a++;if(a<k&&a!==b){for(b=a;a<k&&!h(i.charCodeAt(a));)a++;(a===k||a!==b)&&(m=`\\\\${c}\\${i.slice(b,a)}`,l=a)}}}else l=1;else j(o)&&58===i.charCodeAt(1)&&(m=i.slice(0,2),l=2,k>2&&h(i.charCodeAt(2))&&(n=!0,l=3));if(m.length>0)if(b.length>0){if(m.toLowerCase()!==b.toLowerCase())continue}else b=m;if(e){if(b.length>0)break}else if(c=`${i.slice(l)}\\${c}`,e=n,n&&b.length>0)break}return c=k(c,!e,"\\",h),e?`${b}\\${c}`:`${b}${c}`||"."},normalize(a){let b;f(a,"path");let c=a.length;if(0===c)return".";let d=0,e=!1,g=a.charCodeAt(0);if(1===c)return i(g)?"\\":a;if(h(g))if(e=!0,h(a.charCodeAt(1))){let e=2,f=2;for(;e<c&&!h(a.charCodeAt(e));)e++;if(e<c&&e!==f){let g=a.slice(f,e);for(f=e;e<c&&h(a.charCodeAt(e));)e++;if(e<c&&e!==f){for(f=e;e<c&&!h(a.charCodeAt(e));)e++;if(e===c)return`\\\\${g}\\${a.slice(f)}\\`;e!==f&&(b=`\\\\${g}\\${a.slice(f,e)}`,d=e)}}}else d=1;else j(g)&&58===a.charCodeAt(1)&&(b=a.slice(0,2),d=2,c>2&&h(a.charCodeAt(2))&&(e=!0,d=3));let l=d<c?k(a.slice(d),!e,"\\",h):"";if(0!==l.length||e||(l="."),l.length>0&&h(a.charCodeAt(c-1))&&(l+="\\"),!e&&void 0===b&&a.includes(":")){if(l.length>=2&&j(l.charCodeAt(0))&&58===l.charCodeAt(1))return`.\\${l}`;let b=a.indexOf(":");do if(b===c-1||h(a.charCodeAt(b+1)))return`.\\${l}`;while(-1!==(b=a.indexOf(":",b+1)))}return void 0===b?e?`\\${l}`:l:e?`${b}\\${l}`:`${b}${l}`},isAbsolute(a){f(a,"path");let b=a.length;if(0===b)return!1;let c=a.charCodeAt(0);return h(c)||b>2&&j(c)&&58===a.charCodeAt(1)&&h(a.charCodeAt(2))},join(...a){let b,c;if(0===a.length)return".";for(let d=0;d<a.length;++d){let e=a[d];f(e,"path"),e.length>0&&(void 0===b?b=c=e:b+=`\\${e}`)}if(void 0===b)return".";let d=!0,e=0;if("string"==typeof c&&h(c.charCodeAt(0))){++e;let a=c.length;a>1&&h(c.charCodeAt(1))&&(++e,a>2&&(h(c.charCodeAt(2))?++e:d=!1))}if(d){for(;e<b.length&&h(b.charCodeAt(e));)e++;e>=2&&(b=`\\${b.slice(e)}`)}return m.normalize(b)},relative(a,b){if(f(a,"from"),f(b,"to"),a===b)return"";let c=m.resolve(a),d=m.resolve(b);if(c===d||(a=c.toLowerCase(),b=d.toLowerCase(),a===b))return"";if(c.length!==a.length||d.length!==b.length){let a,b=c.split("\\"),e=d.split("\\");""===b[b.length-1]&&b.pop(),""===e[e.length-1]&&e.pop();let f=b.length,g=e.length,h=f<g?f:g;for(a=0;a<h&&b[a].toLowerCase()===e[a].toLowerCase();a++);return 0===a?d:a===h?g>h?e.slice(a).join("\\"):f>h?"..\\".repeat(f-1-a)+"..":"":"..\\".repeat(f-a)+e.slice(a).join("\\")}let e=0;for(;e<a.length&&92===a.charCodeAt(e);)e++;let g=a.length;for(;g-1>e&&92===a.charCodeAt(g-1);)g--;let h=g-e,i=0;for(;i<b.length&&92===b.charCodeAt(i);)i++;let j=b.length;for(;j-1>i&&92===b.charCodeAt(j-1);)j--;let k=j-i,l=h<k?h:k,n=-1,o=0;for(;o<l;o++){let c=a.charCodeAt(e+o);if(c!==b.charCodeAt(i+o))break;92===c&&(n=o)}if(o!==l){if(-1===n)return d}else{if(k>l){if(92===b.charCodeAt(i+o))return d.slice(i+o+1);if(2===o)return d.slice(i+o)}h>l&&(92===a.charCodeAt(e+o)?n=o:2===o&&(n=3)),-1===n&&(n=0)}let p="";for(o=e+n+1;o<=g;++o)(o===g||92===a.charCodeAt(o))&&(p+=0===p.length?"..":"\\..");return(i+=n,p.length>0)?`${p}${d.slice(i,j)}`:(92===d.charCodeAt(i)&&++i,d.slice(i,j))},toNamespacedPath(a){if("string"!=typeof a||0===a.length)return a;let b=m.resolve(a);if(b.length<=2)return a;if(92===b.charCodeAt(0)){if(92===b.charCodeAt(1)){let a=b.charCodeAt(2);if(63!==a&&46!==a)return`\\\\?\\UNC\\${b.slice(2)}`}}else if(j(b.charCodeAt(0))&&58===b.charCodeAt(1)&&92===b.charCodeAt(2))return`\\\\?\\${b}`;return b},dirname(a){f(a,"path");let b=a.length;if(0===b)return".";let c=-1,d=0,e=a.charCodeAt(0);if(1===b)return h(e)?a:".";if(h(e)){if(c=d=1,h(a.charCodeAt(1))){let e=2,f=2;for(;e<b&&!h(a.charCodeAt(e));)e++;if(e<b&&e!==f){for(f=e;e<b&&h(a.charCodeAt(e));)e++;if(e<b&&e!==f){for(f=e;e<b&&!h(a.charCodeAt(e));)e++;if(e===b)return a;e!==f&&(c=d=e+1)}}}}else j(e)&&58===a.charCodeAt(1)&&(d=c=b>2&&h(a.charCodeAt(2))?3:2);let g=-1,i=!0;for(let c=b-1;c>=d;--c)if(h(a.charCodeAt(c))){if(!i){g=c;break}}else i=!1;if(-1===g){if(-1===c)return".";g=c}return a.slice(0,g)},basename(a,b){let c;void 0!==b&&f(b,"suffix"),f(a,"path");let d=0,e=-1,g=!0;if(a.length>=2&&j(a.charCodeAt(0))&&58===a.charCodeAt(1)&&(d=2),void 0!==b&&b.length>0&&b.length<=a.length){if(b===a)return"";let f=b.length-1,i=-1;for(c=a.length-1;c>=d;--c){let j=a.charCodeAt(c);if(h(j)){if(!g){d=c+1;break}}else -1===i&&(g=!1,i=c+1),f>=0&&(j===b.charCodeAt(f)?-1==--f&&(e=c):(f=-1,e=i))}return d===e?e=i:-1===e&&(e=a.length),a.slice(d,e)}for(c=a.length-1;c>=d;--c)if(h(a.charCodeAt(c))){if(!g){d=c+1;break}}else -1===e&&(g=!1,e=c+1);return -1===e?"":a.slice(d,e)},extname(a){f(a,"path");let b=0,c=-1,d=0,e=-1,g=!0,i=0;a.length>=2&&58===a.charCodeAt(1)&&j(a.charCodeAt(0))&&(b=d=2);for(let f=a.length-1;f>=b;--f){let b=a.charCodeAt(f);if(h(b)){if(!g){d=f+1;break}continue}-1===e&&(g=!1,e=f+1),46===b?-1===c?c=f:1!==i&&(i=1):-1!==c&&(i=-1)}return -1===c||-1===e||0===i||1===i&&c===e-1&&c===d+1?"":a.slice(c,e)},format:l.bind(null,"\\"),parse(a){f(a,"path");let b={root:"",dir:"",base:"",ext:"",name:""};if(0===a.length)return b;let c=a.length,d=0,e=a.charCodeAt(0);if(1===c)return h(e)?b.root=b.dir=a:b.base=b.name=a,b;if(h(e)){if(d=1,h(a.charCodeAt(1))){let b=2,e=2;for(;b<c&&!h(a.charCodeAt(b));)b++;if(b<c&&b!==e){for(e=b;b<c&&h(a.charCodeAt(b));)b++;if(b<c&&b!==e){for(e=b;b<c&&!h(a.charCodeAt(b));)b++;b===c?d=b:b!==e&&(d=b+1)}}}}else if(j(e)&&58===a.charCodeAt(1)){if(c<=2)return b.root=b.dir=a,b;if(d=2,h(a.charCodeAt(2))){if(3===c)return b.root=b.dir=a,b;d=3}}d>0&&(b.root=a.slice(0,d));let g=-1,i=d,k=-1,l=!0,m=a.length-1,n=0;for(;m>=d;--m){if(h(e=a.charCodeAt(m))){if(!l){i=m+1;break}continue}-1===k&&(l=!1,k=m+1),46===e?-1===g?g=m:1!==n&&(n=1):-1!==g&&(n=-1)}return -1!==k&&(-1===g||0===n||1===n&&g===k-1&&g===i+1?b.base=b.name=a.slice(i,k):(b.name=a.slice(i,g),b.base=a.slice(i,k),b.ext=a.slice(g,k))),i>0&&i!==d?b.dir=a.slice(0,i-1):b.dir=b.root,b},sep:"\\",delimiter:";",win32:null,posix:null},n=(()=>{if(g){let a=/\\/g;return()=>{let b=(0,d.bJ)().replace(a,"/");return b.slice(b.indexOf("/"))}}return()=>(0,d.bJ)()})(),o={resolve(...a){let b="",c=!1;for(let d=a.length-1;d>=0&&!c;d--){let e=a[d];f(e,`paths[${d}]`),0!==e.length&&(b=`${e}/${b}`,c=47===e.charCodeAt(0))}if(!c){let a=n();b=`${a}/${b}`,c=47===a.charCodeAt(0)}return(b=k(b,!c,"/",i),c)?`/${b}`:b.length>0?b:"."},normalize(a){if(f(a,"path"),0===a.length)return".";let b=47===a.charCodeAt(0),c=47===a.charCodeAt(a.length-1);return 0===(a=k(a,!b,"/",i)).length?b?"/":c?"./":".":(c&&(a+="/"),b?`/${a}`:a)},isAbsolute:a=>(f(a,"path"),a.length>0&&47===a.charCodeAt(0)),join(...a){if(0===a.length)return".";let b=[];for(let c=0;c<a.length;++c){let d=a[c];f(d,"path"),d.length>0&&b.push(d)}return 0===b.length?".":o.normalize(b.join("/"))},relative(a,b){if(f(a,"from"),f(b,"to"),a===b||(a=o.resolve(a),b=o.resolve(b),a===b))return"";let c=a.length,d=c-1,e=b.length-1,g=d<e?d:e,h=-1,i=0;for(;i<g;i++){let c=a.charCodeAt(1+i);if(c!==b.charCodeAt(1+i))break;47===c&&(h=i)}if(i===g)if(e>g){if(47===b.charCodeAt(1+i))return b.slice(1+i+1);if(0===i)return b.slice(1+i)}else d>g&&(47===a.charCodeAt(1+i)?h=i:0===i&&(h=0));let j="";for(i=1+h+1;i<=c;++i)(i===c||47===a.charCodeAt(i))&&(j+=0===j.length?"..":"/..");return`${j}${b.slice(1+h)}`},toNamespacedPath:a=>a,dirname(a){if(f(a,"path"),0===a.length)return".";let b=47===a.charCodeAt(0),c=-1,d=!0;for(let b=a.length-1;b>=1;--b)if(47===a.charCodeAt(b)){if(!d){c=b;break}}else d=!1;return -1===c?b?"/":".":b&&1===c?"//":a.slice(0,c)},basename(a,b){let c;void 0!==b&&f(b,"suffix"),f(a,"path");let d=0,e=-1,g=!0;if(void 0!==b&&b.length>0&&b.length<=a.length){if(b===a)return"";let f=b.length-1,h=-1;for(c=a.length-1;c>=0;--c){let i=a.charCodeAt(c);if(47===i){if(!g){d=c+1;break}}else -1===h&&(g=!1,h=c+1),f>=0&&(i===b.charCodeAt(f)?-1==--f&&(e=c):(f=-1,e=h))}return d===e?e=h:-1===e&&(e=a.length),a.slice(d,e)}for(c=a.length-1;c>=0;--c)if(47===a.charCodeAt(c)){if(!g){d=c+1;break}}else -1===e&&(g=!1,e=c+1);return -1===e?"":a.slice(d,e)},extname(a){f(a,"path");let b=-1,c=0,d=-1,e=!0,g=0;for(let f=a.length-1;f>=0;--f){let h=a[f];if("/"===h){if(!e){c=f+1;break}continue}-1===d&&(e=!1,d=f+1),"."===h?-1===b?b=f:1!==g&&(g=1):-1!==b&&(g=-1)}return -1===b||-1===d||0===g||1===g&&b===d-1&&b===c+1?"":a.slice(b,d)},format:l.bind(null,"/"),parse(a){let b;f(a,"path");let c={root:"",dir:"",base:"",ext:"",name:""};if(0===a.length)return c;let d=47===a.charCodeAt(0);d?(c.root="/",b=1):b=0;let e=-1,g=0,h=-1,i=!0,j=a.length-1,k=0;for(;j>=b;--j){let b=a.charCodeAt(j);if(47===b){if(!i){g=j+1;break}continue}-1===h&&(i=!1,h=j+1),46===b?-1===e?e=j:1!==k&&(k=1):-1!==e&&(k=-1)}if(-1!==h){let b=0===g&&d?1:g;-1===e||0===k||1===k&&e===h-1&&e===g+1?c.base=c.name=a.slice(b,h):(c.name=a.slice(b,e),c.base=a.slice(b,h),c.ext=a.slice(e,h))}return g>0?c.dir=a.slice(0,g-1):d&&(c.dir="/"),c},sep:"/",delimiter:":",win32:null,posix:null};o.win32=m.win32=m,o.posix=m.posix=o;let p=g?m.normalize:o.normalize,q=g?m.join:o.join,r=g?m.resolve:o.resolve,s=g?m.relative:o.relative,t=g?m.dirname:o.dirname,u=g?m.basename:o.basename,v=g?m.extname:o.extname,w=g?m.sep:o.sep},31299:(a,b,c)=>{"use strict";c.d(b,{Mh:()=>aL,Gc:()=>aD});var d=c(66036),e=c(54469),f=c(48409),g=c(98301),h=c(76631);function i(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let j=i(),k=/[&<>"']/,l=RegExp(k.source,"g"),m=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,n=RegExp(m.source,"g"),o={"&":"&","<":"<",">":">",'"':""","'":"'"},p=a=>o[a];function q(a,b){if(b){if(k.test(a))return a.replace(l,p)}else if(m.test(a))return a.replace(n,p);return a}let r=/(^|[^\[])\^/g;function s(a,b){let c="string"==typeof a?a:a.source;b=b||"";let d={replace:(a,b)=>{let e="string"==typeof b?b:b.source;return e=e.replace(r,"$1"),c=c.replace(a,e),d},getRegex:()=>new RegExp(c,b)};return d}function t(a){try{a=encodeURI(a).replace(/%25/g,"%")}catch{return null}return a}let u={exec:()=>null};function v(a,b){let c=a.replace(/\|/g,(a,b,c)=>{let d=!1,e=b;for(;--e>=0&&"\\"===c[e];)d=!d;return d?"|":" |"}).split(/ \|/),d=0;if(c[0].trim()||c.shift(),c.length>0&&!c[c.length-1].trim()&&c.pop(),b)if(c.length>b)c.splice(b);else for(;c.length<b;)c.push("");for(;d<c.length;d++)c[d]=c[d].trim().replace(/\\\|/g,"|");return c}function w(a,b,c){let d=a.length;if(0===d)return"";let e=0;for(;e<d;)if(a.charAt(d-e-1)===b)e++;else break;return a.slice(0,d-e)}function x(a,b,c,d){let e=b.href,f=b.title?q(b.title):null,g=a[1].replace(/\\([\[\]])/g,"$1");if("!"!==a[0].charAt(0)){d.state.inLink=!0;let a={type:"link",raw:c,href:e,title:f,text:g,tokens:d.inlineTokens(g)};return d.state.inLink=!1,a}return{type:"image",raw:c,href:e,title:f,text:q(g)}}class y{options;rules;lexer;constructor(a){this.options=a||j}space(a){let b=this.rules.block.newline.exec(a);if(b&&b[0].length>0)return{type:"space",raw:b[0]}}code(a){let b=this.rules.block.code.exec(a);if(b){let a=b[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:b[0],codeBlockStyle:"indented",text:this.options.pedantic?a:w(a,"\n")}}}fences(a){let b=this.rules.block.fences.exec(a);if(b){let a=b[0],c=function(a,b){let c=a.match(/^(\s+)(?:```)/);if(null===c)return b;let d=c[1];return b.split("\n").map(a=>{let b=a.match(/^\s+/);if(null===b)return a;let[c]=b;return c.length>=d.length?a.slice(d.length):a}).join("\n")}(a,b[3]||"");return{type:"code",raw:a,lang:b[2]?b[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):b[2],text:c}}}heading(a){let b=this.rules.block.heading.exec(a);if(b){let a=b[2].trim();if(/#$/.test(a)){let b=w(a,"#");this.options.pedantic?a=b.trim():(!b||/ $/.test(b))&&(a=b.trim())}return{type:"heading",raw:b[0],depth:b[1].length,text:a,tokens:this.lexer.inline(a)}}}hr(a){let b=this.rules.block.hr.exec(a);if(b)return{type:"hr",raw:w(b[0],"\n")}}blockquote(a){let b=this.rules.block.blockquote.exec(a);if(b){let a=w(b[0],"\n").split("\n"),c="",d="",e=[];for(;a.length>0;){let b,f=!1,g=[];for(b=0;b<a.length;b++)if(/^ {0,3}>/.test(a[b]))g.push(a[b]),f=!0;else if(f)break;else g.push(a[b]);a=a.slice(b);let h=g.join("\n"),i=h.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,"\n $1").replace(/^ {0,3}>[ \t]?/gm,"");c=c?`${c}
|
|
3
3
|
${h}`:h,d=d?`${d}
|
|
4
4
|
${i}`:i;let j=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(i,e,!0),this.lexer.state.top=j,0===a.length)break;let k=e[e.length-1];if(k?.type==="code")break;if(k?.type==="blockquote"){let b=k.raw+"\n"+a.join("\n"),f=this.blockquote(b);e[e.length-1]=f,c=c.substring(0,c.length-k.raw.length)+f.raw,d=d.substring(0,d.length-k.text.length)+f.text;break}if(k?.type==="list"){let b=k.raw+"\n"+a.join("\n"),f=this.list(b);e[e.length-1]=f,c=c.substring(0,c.length-k.raw.length)+f.raw,d=d.substring(0,d.length-k.raw.length)+f.raw,a=b.substring(e[e.length-1].raw.length).split("\n");continue}}return{type:"blockquote",raw:c,tokens:e,text:d}}}list(a){let b=this.rules.block.list.exec(a);if(b){let c=b[1].trim(),d=c.length>1,e={type:"list",raw:"",ordered:d,start:d?+c.slice(0,-1):"",loose:!1,items:[]};c=d?`\\d{1,9}\\${c.slice(-1)}`:`\\${c}`,this.options.pedantic&&(c=d?c:"[*+-]");let f=RegExp(`^( {0,3}${c})((?:[ ][^\\n]*)?(?:\\n|$))`),g=!1;for(;a;){let c,d=!1,h="",i="";if(!(b=f.exec(a))||this.rules.block.hr.test(a))break;h=b[0],a=a.substring(h.length);let j=b[2].split("\n",1)[0].replace(/^\t+/,a=>" ".repeat(3*a.length)),k=a.split("\n",1)[0],l=!j.trim(),m=0;if(this.options.pedantic?(m=2,i=j.trimStart()):l?m=b[1].length+1:(m=(m=b[2].search(/[^ ]/))>4?1:m,i=j.slice(m),m+=b[1].length),l&&/^ *$/.test(k)&&(h+=k+"\n",a=a.substring(k.length+1),d=!0),!d){let b=RegExp(`^ {0,${Math.min(3,m-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),c=RegExp(`^ {0,${Math.min(3,m-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),d=RegExp(`^ {0,${Math.min(3,m-1)}}(?:\`\`\`|~~~)`),e=RegExp(`^ {0,${Math.min(3,m-1)}}#`);for(;a;){let f=a.split("\n",1)[0];if(k=f,this.options.pedantic&&(k=k.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),d.test(k)||e.test(k)||b.test(k)||c.test(a))break;if(k.search(/[^ ]/)>=m||!k.trim())i+="\n"+k.slice(m);else{if(l||j.search(/[^ ]/)>=4||d.test(j)||e.test(j)||c.test(j))break;i+="\n"+k}l||k.trim()||(l=!0),h+=f+"\n",a=a.substring(f.length+1),j=k.slice(m)}}!e.loose&&(g?e.loose=!0:/\n *\n *$/.test(h)&&(g=!0));let n=null;this.options.gfm&&(n=/^\[[ xX]\] /.exec(i))&&(c="[ ] "!==n[0],i=i.replace(/^\[[ xX]\] +/,"")),e.items.push({type:"list_item",raw:h,task:!!n,checked:c,loose:!1,text:i,tokens:[]}),e.raw+=h}e.items[e.items.length-1].raw=e.items[e.items.length-1].raw.trimEnd(),e.items[e.items.length-1].text=e.items[e.items.length-1].text.trimEnd(),e.raw=e.raw.trimEnd();for(let a=0;a<e.items.length;a++)if(this.lexer.state.top=!1,e.items[a].tokens=this.lexer.blockTokens(e.items[a].text,[]),!e.loose){let b=e.items[a].tokens.filter(a=>"space"===a.type);e.loose=b.length>0&&b.some(a=>/\n.*\n/.test(a.raw))}if(e.loose)for(let a=0;a<e.items.length;a++)e.items[a].loose=!0;return e}}html(a){let b=this.rules.block.html.exec(a);if(b)return{type:"html",block:!0,raw:b[0],pre:"pre"===b[1]||"script"===b[1]||"style"===b[1],text:b[0]}}def(a){let b=this.rules.block.def.exec(a);if(b){let a=b[1].toLowerCase().replace(/\s+/g," "),c=b[2]?b[2].replace(/^<(.*)>$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",d=b[3]?b[3].substring(1,b[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):b[3];return{type:"def",tag:a,raw:b[0],href:c,title:d}}}table(a){let b=this.rules.block.table.exec(a);if(!b||!/[:|]/.test(b[2]))return;let c=v(b[1]),d=b[2].replace(/^\||\| *$/g,"").split("|"),e=b[3]&&b[3].trim()?b[3].replace(/\n[ \t]*$/,"").split("\n"):[],f={type:"table",raw:b[0],header:[],align:[],rows:[]};if(c.length===d.length){for(let a of d)/^ *-+: *$/.test(a)?f.align.push("right"):/^ *:-+: *$/.test(a)?f.align.push("center"):/^ *:-+ *$/.test(a)?f.align.push("left"):f.align.push(null);for(let a=0;a<c.length;a++)f.header.push({text:c[a],tokens:this.lexer.inline(c[a]),header:!0,align:f.align[a]});for(let a of e)f.rows.push(v(a,f.header.length).map((a,b)=>({text:a,tokens:this.lexer.inline(a),header:!1,align:f.align[b]})));return f}}lheading(a){let b=this.rules.block.lheading.exec(a);if(b)return{type:"heading",raw:b[0],depth:"="===b[2].charAt(0)?1:2,text:b[1],tokens:this.lexer.inline(b[1])}}paragraph(a){let b=this.rules.block.paragraph.exec(a);if(b){let a="\n"===b[1].charAt(b[1].length-1)?b[1].slice(0,-1):b[1];return{type:"paragraph",raw:b[0],text:a,tokens:this.lexer.inline(a)}}}text(a){let b=this.rules.block.text.exec(a);if(b)return{type:"text",raw:b[0],text:b[0],tokens:this.lexer.inline(b[0])}}escape(a){let b=this.rules.inline.escape.exec(a);if(b)return{type:"escape",raw:b[0],text:q(b[1])}}tag(a){let b=this.rules.inline.tag.exec(a);if(b)return!this.lexer.state.inLink&&/^<a /i.test(b[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&/^<\/a>/i.test(b[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(b[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(b[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:b[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:b[0]}}link(a){let b=this.rules.inline.link.exec(a);if(b){let a=b[2].trim();if(!this.options.pedantic&&/^</.test(a)){if(!/>$/.test(a))return;let b=w(a.slice(0,-1),"\\");if((a.length-b.length)%2==0)return}else{let a=function(a){if(-1===a.indexOf(")"))return -1;let b=0;for(let c=0;c<a.length;c++)if("\\"===a[c])c++;else if("("===a[c])b++;else if(")"===a[c]&&--b<0)return c;return -1}(b[2]);if(a>-1){let c=(0===b[0].indexOf("!")?5:4)+b[1].length+a;b[2]=b[2].substring(0,a),b[0]=b[0].substring(0,c).trim(),b[3]=""}}let c=b[2],d="";if(this.options.pedantic){let a=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(c);a&&(c=a[1],d=a[3])}else d=b[3]?b[3].slice(1,-1):"";return c=c.trim(),/^</.test(c)&&(c=this.options.pedantic&&!/>$/.test(a)?c.slice(1):c.slice(1,-1)),x(b,{href:c?c.replace(this.rules.inline.anyPunctuation,"$1"):c,title:d?d.replace(this.rules.inline.anyPunctuation,"$1"):d},b[0],this.lexer)}}reflink(a,b){let c;if((c=this.rules.inline.reflink.exec(a))||(c=this.rules.inline.nolink.exec(a))){let a=b[(c[2]||c[1]).replace(/\s+/g," ").toLowerCase()];if(!a){let a=c[0].charAt(0);return{type:"text",raw:a,text:a}}return x(c,a,c[0],this.lexer)}}emStrong(a,b,c=""){let d=this.rules.inline.emStrongLDelim.exec(a);if(!(!d||d[3]&&c.match(/[\p{L}\p{N}]/u))&&(!(d[1]||d[2])||!c||this.rules.inline.punctuation.exec(c))){let c=[...d[0]].length-1,e,f,g=c,h=0,i="*"===d[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(i.lastIndex=0,b=b.slice(-1*a.length+c);null!=(d=i.exec(b));){if(!(e=d[1]||d[2]||d[3]||d[4]||d[5]||d[6]))continue;if(f=[...e].length,d[3]||d[4]){g+=f;continue}if((d[5]||d[6])&&c%3&&!((c+f)%3)){h+=f;continue}if((g-=f)>0)continue;f=Math.min(f,f+g+h);let b=[...d[0]][0].length,i=a.slice(0,c+d.index+b+f);if(Math.min(c,f)%2){let a=i.slice(1,-1);return{type:"em",raw:i,text:a,tokens:this.lexer.inlineTokens(a)}}let j=i.slice(2,-2);return{type:"strong",raw:i,text:j,tokens:this.lexer.inlineTokens(j)}}}}codespan(a){let b=this.rules.inline.code.exec(a);if(b){let a=b[2].replace(/\n/g," "),c=/[^ ]/.test(a),d=/^ /.test(a)&&/ $/.test(a);return c&&d&&(a=a.substring(1,a.length-1)),a=q(a,!0),{type:"codespan",raw:b[0],text:a}}}br(a){let b=this.rules.inline.br.exec(a);if(b)return{type:"br",raw:b[0]}}del(a){let b=this.rules.inline.del.exec(a);if(b)return{type:"del",raw:b[0],text:b[2],tokens:this.lexer.inlineTokens(b[2])}}autolink(a){let b=this.rules.inline.autolink.exec(a);if(b){let a,c;return c="@"===b[2]?"mailto:"+(a=q(b[1])):a=q(b[1]),{type:"link",raw:b[0],text:a,href:c,tokens:[{type:"text",raw:a,text:a}]}}}url(a){let b;if(b=this.rules.inline.url.exec(a)){let a,c;if("@"===b[2])c="mailto:"+(a=q(b[0]));else{let d;do d=b[0],b[0]=this.rules.inline._backpedal.exec(b[0])?.[0]??"";while(d!==b[0]);a=q(b[0]),c="www."===b[1]?"http://"+b[0]:b[0]}return{type:"link",raw:b[0],text:a,href:c,tokens:[{type:"text",raw:a,text:a}]}}}inlineText(a){let b=this.rules.inline.text.exec(a);if(b){let a;return a=this.lexer.state.inRawBlock?b[0]:q(b[0]),{type:"text",raw:b[0],text:a}}}}let z=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,A=/(?:[*+-]|\d{1,9}[.)])/,B=s(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,A).replace(/blockCode/g,/ {4}/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),C=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,D=/(?!\s*\])(?:\\.|[^\[\]\\])+/,E=s(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label",D).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),F=s(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,A).getRegex(),G="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",H=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,I=s("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))","i").replace("comment",H).replace("tag",G).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),J=s(C).replace("hr",z).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",G).getRegex(),K={blockquote:s(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",J).getRegex(),code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,def:E,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:z,html:I,lheading:B,list:F,newline:/^(?: *(?:\n|$))+/,paragraph:J,table:u,text:/^[^\n]+/},L=s("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",z).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",G).getRegex(),M={...K,table:L,paragraph:s(C).replace("hr",z).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",L).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",G).getRegex()},N={...K,html:s("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",H).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:u,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:s(C).replace("hr",z).replace("heading"," *#{1,6} *[^\n]").replace("lheading",B).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},O=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,P=/^( {2,}|\\)\n(?!\s*$)/,Q="\\p{P}\\p{S}",R=s(/^((?![*_])[\spunctuation])/,"u").replace(/punctuation/g,Q).getRegex(),S=s(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,Q).getRegex(),T=s("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,Q).getRegex(),U=s("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,Q).getRegex(),V=s(/\\([punct])/,"gu").replace(/punct/g,Q).getRegex(),W=s(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),X=s(H).replace("(?:--\x3e|$)","--\x3e").getRegex(),Y=s("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",X).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Z=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,$=s(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Z).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),_=s(/^!?\[(label)\]\[(ref)\]/).replace("label",Z).replace("ref",D).getRegex(),aa=s(/^!?\[(ref)\](?:\[\])?/).replace("ref",D).getRegex(),ab=s("reflink|nolink(?!\\()","g").replace("reflink",_).replace("nolink",aa).getRegex(),ac={_backpedal:u,anyPunctuation:V,autolink:W,blockSkip:/\[[^[\]]*?\]\([^\(\)]*?\)|`[^`]*?`|<[^<>]*?>/g,br:P,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:u,emStrongLDelim:S,emStrongRDelimAst:T,emStrongRDelimUnd:U,escape:O,link:$,nolink:aa,punctuation:R,reflink:_,reflinkSearch:ab,tag:Y,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,url:u},ad={...ac,link:s(/^!?\[(label)\]\((.*?)\)/).replace("label",Z).getRegex(),reflink:s(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Z).getRegex()},ae={...ac,escape:s(O).replace("])","~|])").getRegex(),url:s(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},af={...ae,br:s(P).replace("{2,}","*").getRegex(),text:s(ae.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},ag={normal:K,gfm:M,pedantic:N},ah={normal:ac,gfm:ae,breaks:af,pedantic:ad};class ai{tokens;options;state;tokenizer;inlineQueue;constructor(a){this.tokens=[],this.tokens.links=Object.create(null),this.options=a||j,this.options.tokenizer=this.options.tokenizer||new y,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};const b={block:ag.normal,inline:ah.normal};this.options.pedantic?(b.block=ag.pedantic,b.inline=ah.pedantic):this.options.gfm&&(b.block=ag.gfm,this.options.breaks?b.inline=ah.breaks:b.inline=ah.gfm),this.tokenizer.rules=b}static get rules(){return{block:ag,inline:ah}}static lex(a,b){return new ai(b).lex(a)}static lexInline(a,b){return new ai(b).inlineTokens(a)}lex(a){a=a.replace(/\r\n|\r/g,"\n"),this.blockTokens(a,this.tokens);for(let a=0;a<this.inlineQueue.length;a++){let b=this.inlineQueue[a];this.inlineTokens(b.src,b.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(a,b=[],c=!1){let d,e,f;for(a=this.options.pedantic?a.replace(/\t/g," ").replace(/^ +$/gm,""):a.replace(/^( *)(\t+)/gm,(a,b,c)=>b+" ".repeat(c.length));a;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(c=>!!(d=c.call({lexer:this},a,b))&&(a=a.substring(d.raw.length),b.push(d),!0)))){if(d=this.tokenizer.space(a)){a=a.substring(d.raw.length),1===d.raw.length&&b.length>0?b[b.length-1].raw+="\n":b.push(d);continue}if(d=this.tokenizer.code(a)){a=a.substring(d.raw.length),(e=b[b.length-1])&&("paragraph"===e.type||"text"===e.type)?(e.raw+="\n"+d.raw,e.text+="\n"+d.text,this.inlineQueue[this.inlineQueue.length-1].src=e.text):b.push(d);continue}if((d=this.tokenizer.fences(a))||(d=this.tokenizer.heading(a))||(d=this.tokenizer.hr(a))||(d=this.tokenizer.blockquote(a))||(d=this.tokenizer.list(a))||(d=this.tokenizer.html(a))){a=a.substring(d.raw.length),b.push(d);continue}if(d=this.tokenizer.def(a)){a=a.substring(d.raw.length),(e=b[b.length-1])&&("paragraph"===e.type||"text"===e.type)?(e.raw+="\n"+d.raw,e.text+="\n"+d.raw,this.inlineQueue[this.inlineQueue.length-1].src=e.text):this.tokens.links[d.tag]||(this.tokens.links[d.tag]={href:d.href,title:d.title});continue}if((d=this.tokenizer.table(a))||(d=this.tokenizer.lheading(a))){a=a.substring(d.raw.length),b.push(d);continue}if(f=a,this.options.extensions&&this.options.extensions.startBlock){let b,c=1/0,d=a.slice(1);this.options.extensions.startBlock.forEach(a=>{"number"==typeof(b=a.call({lexer:this},d))&&b>=0&&(c=Math.min(c,b))}),c<1/0&&c>=0&&(f=a.substring(0,c+1))}if(this.state.top&&(d=this.tokenizer.paragraph(f))){e=b[b.length-1],c&&e?.type==="paragraph"?(e.raw+="\n"+d.raw,e.text+="\n"+d.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=e.text):b.push(d),c=f.length!==a.length,a=a.substring(d.raw.length);continue}if(d=this.tokenizer.text(a)){a=a.substring(d.raw.length),(e=b[b.length-1])&&"text"===e.type?(e.raw+="\n"+d.raw,e.text+="\n"+d.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=e.text):b.push(d);continue}if(a){let b="Infinite loop on byte: "+a.charCodeAt(0);if(this.options.silent){console.error(b);break}throw Error(b)}}return this.state.top=!0,b}inline(a,b=[]){return this.inlineQueue.push({src:a,tokens:b}),b}inlineTokens(a,b=[]){let c,d,e,f,g,h,i=a;if(this.tokens.links){let a=Object.keys(this.tokens.links);if(a.length>0)for(;null!=(f=this.tokenizer.rules.inline.reflinkSearch.exec(i));)a.includes(f[0].slice(f[0].lastIndexOf("[")+1,-1))&&(i=i.slice(0,f.index)+"["+"a".repeat(f[0].length-2)+"]"+i.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(f=this.tokenizer.rules.inline.blockSkip.exec(i));)i=i.slice(0,f.index)+"["+"a".repeat(f[0].length-2)+"]"+i.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(f=this.tokenizer.rules.inline.anyPunctuation.exec(i));)i=i.slice(0,f.index)+"++"+i.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;a;)if(g||(h=""),g=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(d=>!!(c=d.call({lexer:this},a,b))&&(a=a.substring(c.raw.length),b.push(c),!0)))){if(c=this.tokenizer.escape(a)){a=a.substring(c.raw.length),b.push(c);continue}if(c=this.tokenizer.tag(a)){a=a.substring(c.raw.length),(d=b[b.length-1])&&"text"===c.type&&"text"===d.type?(d.raw+=c.raw,d.text+=c.text):b.push(c);continue}if(c=this.tokenizer.link(a)){a=a.substring(c.raw.length),b.push(c);continue}if(c=this.tokenizer.reflink(a,this.tokens.links)){a=a.substring(c.raw.length),(d=b[b.length-1])&&"text"===c.type&&"text"===d.type?(d.raw+=c.raw,d.text+=c.text):b.push(c);continue}if((c=this.tokenizer.emStrong(a,i,h))||(c=this.tokenizer.codespan(a))||(c=this.tokenizer.br(a))||(c=this.tokenizer.del(a))||(c=this.tokenizer.autolink(a))||!this.state.inLink&&(c=this.tokenizer.url(a))){a=a.substring(c.raw.length),b.push(c);continue}if(e=a,this.options.extensions&&this.options.extensions.startInline){let b,c=1/0,d=a.slice(1);this.options.extensions.startInline.forEach(a=>{"number"==typeof(b=a.call({lexer:this},d))&&b>=0&&(c=Math.min(c,b))}),c<1/0&&c>=0&&(e=a.substring(0,c+1))}if(c=this.tokenizer.inlineText(e)){a=a.substring(c.raw.length),"_"!==c.raw.slice(-1)&&(h=c.raw.slice(-1)),g=!0,(d=b[b.length-1])&&"text"===d.type?(d.raw+=c.raw,d.text+=c.text):b.push(c);continue}if(a){let b="Infinite loop on byte: "+a.charCodeAt(0);if(this.options.silent){console.error(b);break}throw Error(b)}}return b}}class aj{options;parser;constructor(a){this.options=a||j}space(a){return""}code({text:a,lang:b,escaped:c}){let d=(b||"").match(/^\S*/)?.[0],e=a.replace(/\n$/,"")+"\n";return d?'<pre><code class="language-'+q(d)+'">'+(c?e:q(e,!0))+"</code></pre>\n":"<pre><code>"+(c?e:q(e,!0))+"</code></pre>\n"}blockquote({tokens:a}){let b=this.parser.parse(a);return`<blockquote>
|
|
@@ -451,7 +451,7 @@ ${a.toString()}`}}class dX{constructor(a=new dV.a,b=!1,c,d=!1){this._services=a,
|
|
|
451
451
|
}`),this.styleElement.textContent=b.join("\n"),this.list.style(a)}getSelectedElements(){return this.list.getSelectedElements()}getSelection(){return this.list.getSelection()}getFocus(){return this.list.getFocus()}dispose(){this.disposables.dispose()}}var ev=c(14016);c(57616),c(98233),c(24137),c(1505);var ew=c(7222);c(90753);var ex=c(94838),ey=c(54588);(o=H||(H={}))[o.Expanded=0]="Expanded",o[o.Collapsed=1]="Collapsed",o[o.PreserveOrExpanded=2]="PreserveOrExpanded",o[o.PreserveOrCollapsed=3]="PreserveOrCollapsed",(p=I||(I={}))[p.Unknown=0]="Unknown",p[p.Twistie=1]="Twistie",p[p.Element=2]="Element",p[p.Filter=3]="Filter";class ez extends Error{constructor(a,b){super(`TreeError [${a}] ${b}`)}}class eA{constructor(a){this.fn=a,this._map=new WeakMap}map(a){let b=this._map.get(a);return b||(b=this.fn(a),this._map.set(a,b)),b}}var eB=c(2938),eC=c(28500);function eD(a){return!!a&&void 0!==a.visibility}function eE(a){switch(a){case!0:return 1;case!1:return 0;default:return a}}function eF(a){return"collapsible"in a}class eG{constructor(a,b,c={}){this.user=a,this.rootRef=[],this.eventBufferer=new a$.at,this._onDidSpliceModel=new a$.vl,this.onDidSpliceModel=this._onDidSpliceModel.event,this._onDidSpliceRenderedNodes=new a$.vl,this.onDidSpliceRenderedNodes=this._onDidSpliceRenderedNodes.event,this._onDidChangeCollapseState=new a$.vl,this.onDidChangeCollapseState=this.eventBufferer.wrapEvent(this._onDidChangeCollapseState.event),this._onDidChangeRenderNodeCount=new a$.vl,this.onDidChangeRenderNodeCount=this.eventBufferer.wrapEvent(this._onDidChangeRenderNodeCount.event),this.refilterDelayer=new be.ve(eB.h),this.collapseByDefault=void 0!==c.collapseByDefault&&c.collapseByDefault,this.allowNonCollapsibleParents=c.allowNonCollapsibleParents??!1,this.filter=c.filter,this.autoExpandSingleChildren=void 0!==c.autoExpandSingleChildren&&c.autoExpandSingleChildren,this.root={parent:void 0,element:b,children:[],depth:0,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:!1,collapsed:!1,renderNodeCount:0,visibility:1,visible:!0,filterData:void 0}}splice(a,b,c=db.f.empty(),d={}){if(0===a.length)throw new ez(this.user,"Invalid tree location");d.diffIdentityProvider?this.spliceSmart(d.diffIdentityProvider,a,b,c,d):this.spliceSimple(a,b,c,d)}spliceSmart(a,b,c,d=db.f.empty(),e,f=e.diffDepth??0){let{parentNode:g}=this.getParentNodeWithListIndex(b);if(!g.lastDiffIds)return this.spliceSimple(b,c,d,e);let h=[...d],i=b[b.length-1],j=new eC.uP({getElements:()=>g.lastDiffIds},{getElements:()=>[...g.children.slice(0,i),...h,...g.children.slice(i+c)].map(b=>a.getId(b.element).toString())}).ComputeDiff(!1);if(j.quitEarly)return g.lastDiffIds=void 0,this.spliceSimple(b,c,h,e);let k=b.slice(0,-1),l=(b,c,d)=>{if(f>0)for(let g=0;g<d;g++)b--,c--,this.spliceSmart(a,[...k,b,0],Number.MAX_SAFE_INTEGER,h[c].children,e,f-1)},m=Math.min(g.children.length,i+c),n=h.length;for(let a of j.changes.sort((a,b)=>b.originalStart-a.originalStart))l(m,n,m-(a.originalStart+a.originalLength)),m=a.originalStart,n=a.modifiedStart-i,this.spliceSimple([...k,m],a.originalLength,db.f.slice(h,n,n+a.modifiedLength),e);l(m,n,m)}spliceSimple(a,b,c=db.f.empty(),{onDidCreateNode:d,onDidDeleteNode:e,diffIdentityProvider:f}){let{parentNode:g,listIndex:h,revealed:i,visible:j}=this.getParentNodeWithListIndex(a),k=[],l=db.f.map(c,a=>this.createTreeNode(a,g,+!!g.visible,i,k,d)),m=a[a.length-1],n=0;for(let a=m;a>=0&&a<g.children.length;a--){let b=g.children[a];if(b.visible){n=b.visibleChildIndex;break}}let o=[],p=0,q=0;for(let a of l)o.push(a),q+=a.renderNodeCount,a.visible&&(a.visibleChildIndex=n+p++);let r=(0,cL.V4)(g.children,m,b,o);f?g.lastDiffIds?(0,cL.V4)(g.lastDiffIds,m,b,o.map(a=>f.getId(a.element).toString())):g.lastDiffIds=g.children.map(a=>f.getId(a.element).toString()):g.lastDiffIds=void 0;let s=0;for(let a of r)a.visible&&s++;if(0!==s)for(let a=m+o.length;a<g.children.length;a++){let b=g.children[a];b.visible&&(b.visibleChildIndex-=s)}if(g.visibleChildrenCount+=p-s,r.length>0&&e){let a=b=>{e(b),b.children.forEach(a)};r.forEach(a)}if(i&&j){let a=r.reduce((a,b)=>a+(b.visible?b.renderNodeCount:0),0);this._updateAncestorsRenderNodeCount(g,q-a),this._onDidSpliceRenderedNodes.fire({start:h,deleteCount:a,elements:k})}this._onDidSpliceModel.fire({insertedNodes:o,deletedNodes:r});let t=g;for(;t;){if(2===t.visibility){this.refilterDelayer.trigger(()=>this.refilter());break}t=t.parent}}rerender(a){if(0===a.length)throw new ez(this.user,"Invalid tree location");let{node:b,listIndex:c,revealed:d}=this.getTreeNodeWithListIndex(a);b.visible&&d&&this._onDidSpliceRenderedNodes.fire({start:c,deleteCount:1,elements:[b]})}has(a){return this.hasTreeNode(a)}getListIndex(a){let{listIndex:b,visible:c,revealed:d}=this.getTreeNodeWithListIndex(a);return c&&d?b:-1}getListRenderCount(a){return this.getTreeNode(a).renderNodeCount}isCollapsible(a){return this.getTreeNode(a).collapsible}setCollapsible(a,b){let c=this.getTreeNode(a);void 0===b&&(b=!c.collapsible);let d={collapsible:b};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(a,d))}isCollapsed(a){return this.getTreeNode(a).collapsed}setCollapsed(a,b,c){let d=this.getTreeNode(a);void 0===b&&(b=!d.collapsed);let e={collapsed:b,recursive:c||!1};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(a,e))}_setCollapseState(a,b){let{node:c,listIndex:d,revealed:e}=this.getTreeNodeWithListIndex(a),f=this._setListNodeCollapseState(c,d,e,b);if(c!==this.root&&this.autoExpandSingleChildren&&f&&!eF(b)&&c.collapsible&&!c.collapsed&&!b.recursive){let d=-1;for(let a=0;a<c.children.length;a++)if(c.children[a].visible)if(d>-1){d=-1;break}else d=a;d>-1&&this._setCollapseState([...a,d],b)}return f}_setListNodeCollapseState(a,b,c,d){let e=this._setNodeCollapseState(a,d,!1);if(!c||!a.visible||!e)return e;let f=a.renderNodeCount,g=this.updateNodeAfterCollapseChange(a);return this._onDidSpliceRenderedNodes.fire({start:b+1,deleteCount:f-(-1!==b),elements:g.slice(1)}),e}_setNodeCollapseState(a,b,c){let d;if(a===this.root?d=!1:(eF(b)?(d=a.collapsible!==b.collapsible,a.collapsible=b.collapsible):a.collapsible?(d=a.collapsed!==b.collapsed,a.collapsed=b.collapsed):d=!1,d&&this._onDidChangeCollapseState.fire({node:a,deep:c})),!eF(b)&&b.recursive)for(let c of a.children)d=this._setNodeCollapseState(c,b,!0)||d;return d}expandTo(a){this.eventBufferer.bufferEvents(()=>{let b=this.getTreeNode(a);for(;b.parent;)b=b.parent,a=a.slice(0,a.length-1),b.collapsed&&this._setCollapseState(a,{collapsed:!1,recursive:!1})})}refilter(){let a=this.root.renderNodeCount,b=this.updateNodeAfterFilterChange(this.root);this._onDidSpliceRenderedNodes.fire({start:0,deleteCount:a,elements:b}),this.refilterDelayer.cancel()}createTreeNode(a,b,c,d,e,f){let g={parent:b,element:a.element,children:[],depth:b.depth+1,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:"boolean"==typeof a.collapsible?a.collapsible:void 0!==a.collapsed,collapsed:void 0===a.collapsed?this.collapseByDefault:a.collapsed,renderNodeCount:1,visibility:1,visible:!0,filterData:void 0},h=this._filterNode(g,c);g.visibility=h,d&&e.push(g);let i=a.children||db.f.empty(),j=d&&0!==h&&!g.collapsed,k=0,l=1;for(let a of i){let b=this.createTreeNode(a,g,h,j,e,f);g.children.push(b),l+=b.renderNodeCount,b.visible&&(b.visibleChildIndex=k++)}return this.allowNonCollapsibleParents||(g.collapsible=g.collapsible||g.children.length>0),g.visibleChildrenCount=k,g.visible=2===h?k>0:1===h,g.visible?g.collapsed||(g.renderNodeCount=l):(g.renderNodeCount=0,d&&e.pop()),f?.(g),g}updateNodeAfterCollapseChange(a){let b=a.renderNodeCount,c=[];return this._updateNodeAfterCollapseChange(a,c),this._updateAncestorsRenderNodeCount(a.parent,c.length-b),c}_updateNodeAfterCollapseChange(a,b){if(!1===a.visible)return 0;if(b.push(a),a.renderNodeCount=1,!a.collapsed)for(let c of a.children)a.renderNodeCount+=this._updateNodeAfterCollapseChange(c,b);return this._onDidChangeRenderNodeCount.fire(a),a.renderNodeCount}updateNodeAfterFilterChange(a){let b=a.renderNodeCount,c=[];return this._updateNodeAfterFilterChange(a,+!!a.visible,c),this._updateAncestorsRenderNodeCount(a.parent,c.length-b),c}_updateNodeAfterFilterChange(a,b,c,d=!0){let e;if(a!==this.root){if(0===(e=this._filterNode(a,b)))return a.visible=!1,a.renderNodeCount=0,!1;d&&c.push(a)}let f=c.length;a.renderNodeCount=+(a!==this.root);let g=!1;if(a.collapsed&&0===e)a.visibleChildrenCount=0;else{let b=0;for(let f of a.children)g=this._updateNodeAfterFilterChange(f,e,c,d&&!a.collapsed)||g,f.visible&&(f.visibleChildIndex=b++);a.visibleChildrenCount=b}return a!==this.root&&(a.visible=2===e?g:1===e,a.visibility=e),a.visible?a.collapsed||(a.renderNodeCount+=c.length-f):(a.renderNodeCount=0,d&&c.pop()),this._onDidChangeRenderNodeCount.fire(a),a.visible}_updateAncestorsRenderNodeCount(a,b){if(0!==b)for(;a;)a.renderNodeCount+=b,this._onDidChangeRenderNodeCount.fire(a),a=a.parent}_filterNode(a,b){let c=this.filter?this.filter.filter(a.element,b):1;return"boolean"==typeof c?(a.filterData=void 0,+!!c):eD(c)?(a.filterData=c.data,eE(c.visibility)):(a.filterData=void 0,eE(c))}hasTreeNode(a,b=this.root){if(!a||0===a.length)return!0;let[c,...d]=a;return!(c<0)&&!(c>b.children.length)&&this.hasTreeNode(d,b.children[c])}getTreeNode(a,b=this.root){if(!a||0===a.length)return b;let[c,...d]=a;if(c<0||c>b.children.length)throw new ez(this.user,"Invalid tree location");return this.getTreeNode(d,b.children[c])}getTreeNodeWithListIndex(a){if(0===a.length)return{node:this.root,listIndex:-1,revealed:!0,visible:!1};let{parentNode:b,listIndex:c,revealed:d,visible:e}=this.getParentNodeWithListIndex(a),f=a[a.length-1];if(f<0||f>b.children.length)throw new ez(this.user,"Invalid tree location");let g=b.children[f];return{node:g,listIndex:c,revealed:d,visible:e&&g.visible}}getParentNodeWithListIndex(a,b=this.root,c=0,d=!0,e=!0){let[f,...g]=a;if(f<0||f>b.children.length)throw new ez(this.user,"Invalid tree location");for(let a=0;a<f;a++)c+=b.children[a].renderNodeCount;return(d=d&&!b.collapsed,e=e&&b.visible,0===g.length)?{parentNode:b,listIndex:c,revealed:d,visible:e}:this.getParentNodeWithListIndex(g,b.children[f],c+1,d,e)}getNode(a=[]){return this.getTreeNode(a)}getNodeLocation(a){let b=[],c=a;for(;c.parent;)b.push(c.parent.children.indexOf(c)),c=c.parent;return b.reverse()}getParentNodeLocation(a){return 0===a.length?void 0:1===a.length?[]:(0,cL.RT)(a)[0]}getFirstElementChild(a){let b=this.getTreeNode(a);if(0!==b.children.length)return b.children[0].element}}var eH=c(53072);c(5388),c(94484);var eI=c(6963),eJ=c(93539);class eK extends ex.ur{constructor(a){super(a.elements.map(a=>a.element)),this.data=a}}function eL(a){return a instanceof ex.ur?new eK(a):a}class eM{constructor(a,b){this.modelProvider=a,this.dnd=b,this.autoExpandDisposable=_.jG.None,this.disposables=new _.Cm}getDragURI(a){return this.dnd.getDragURI(a.element)}getDragLabel(a,b){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(a.map(a=>a.element),b)}onDragStart(a,b){this.dnd.onDragStart?.(eL(a),b)}onDragOver(a,b,c,d,e,f=!0){let g=this.dnd.onDragOver(eL(a),b&&b.element,c,d,e),h=this.autoExpandNode!==b;if(h&&(this.autoExpandDisposable.dispose(),this.autoExpandNode=b),void 0===b)return g;if(h&&"boolean"!=typeof g&&g.autoExpand&&(this.autoExpandDisposable=(0,be.EQ)(()=>{let a=this.modelProvider(),c=a.getNodeLocation(b);a.isCollapsed(c)&&a.setCollapsed(c,!1),this.autoExpandNode=void 0},500,this.disposables)),"boolean"==typeof g||!g.accept||void 0===g.bubble||g.feedback)return f?g:{accept:"boolean"==typeof g?g:g.accept,effect:"boolean"==typeof g?void 0:g.effect,feedback:[c]};if(1===g.bubble){let c=this.modelProvider(),f=c.getNodeLocation(b),g=c.getParentNodeLocation(f),h=c.getNode(g),i=g&&c.getListIndex(g);return this.onDragOver(a,h,i,d,e,!1)}let i=this.modelProvider(),j=i.getNodeLocation(b),k=i.getListIndex(j),l=i.getListRenderCount(j);return{...g,feedback:(0,cL.y1)(k,k+l)}}drop(a,b,c,d,e){this.autoExpandDisposable.dispose(),this.autoExpandNode=void 0,this.dnd.drop(eL(a),b&&b.element,c,d,e)}onDragEnd(a){this.dnd.onDragEnd?.(a)}dispose(){this.disposables.dispose(),this.dnd.dispose()}}class eN{constructor(a){this.delegate=a}getHeight(a){return this.delegate.getHeight(a.element)}getTemplateId(a){return this.delegate.getTemplateId(a.element)}hasDynamicHeight(a){return!!this.delegate.hasDynamicHeight&&this.delegate.hasDynamicHeight(a.element)}setDynamicHeight(a,b){this.delegate.setDynamicHeight?.(a.element,b)}}(q=J||(J={})).None="none",q.OnHover="onHover",q.Always="always";class eO{get elements(){return this._elements}constructor(a,b=[]){this._elements=b,this.disposables=new _.Cm,this.onDidChange=a$.Jh.forEach(a,a=>this._elements=a,this.disposables)}dispose(){this.disposables.dispose()}}class eP{static{this.DefaultIndent=8}constructor(a,b,c,d,e,f={}){this.renderer=a,this.model=b,this.activeNodes=d,this.renderedIndentGuides=e,this.renderedElements=new Map,this.renderedNodes=new Map,this.indent=eP.DefaultIndent,this.defaultIndent=eP.DefaultIndent,this.hideTwistiesOfChildlessElements=!1,this.shouldRenderIndentGuides=!1,this.activeIndentNodes=new Set,this.indentGuidesDisposable=_.jG.None,this.disposables=new _.Cm,this.templateId=a.templateId,this.updateOptions(f),a$.Jh.map(c,a=>a.node)(this.onDidChangeNodeTwistieState,this,this.disposables),a.onDidChangeTwistieState?.(this.onDidChangeTwistieState,this,this.disposables)}updateOptions(a={}){if(void 0!==a.defaultIndent&&(this.defaultIndent=a.defaultIndent),void 0!==a.indent||void 0!==a.defaultIndent){let b=void 0!==a.indent?(0,el.qE)(a.indent,0,40):this.indent;if(b!==this.indent||void 0!==a.defaultIndent)for(let[a,c]of(this.indent=b,this.renderedNodes))c.indentSize=this.defaultIndent+(a.depth-1)*this.indent,this.renderTreeElement(a,c)}if(void 0!==a.renderIndentGuides){let b=a.renderIndentGuides!==J.None;if(b!==this.shouldRenderIndentGuides){for(let[a,c]of(this.shouldRenderIndentGuides=b,this.renderedNodes))this._renderIndentGuides(a,c);if(this.indentGuidesDisposable.dispose(),b){let a=new _.Cm;this.activeNodes.onDidChange(this._onDidChangeActiveNodes,this,a),this.indentGuidesDisposable=a,this._onDidChangeActiveNodes(this.activeNodes.elements)}}}void 0!==a.hideTwistiesOfChildlessElements&&(this.hideTwistiesOfChildlessElements=a.hideTwistiesOfChildlessElements),void 0!==a.twistieAdditionalCssClass&&(this.twistieAdditionalCssClass=a.twistieAdditionalCssClass)}renderTemplate(a){let b=(0,a_.BC)(a,(0,a_.$)(".monaco-tl-row")),c=(0,a_.BC)(b,(0,a_.$)(".monaco-tl-indent")),d=(0,a_.BC)(b,(0,a_.$)(".monaco-tl-twistie")),e=(0,a_.BC)(b,(0,a_.$)(".monaco-tl-contents")),f=this.renderer.renderTemplate(e);return{container:a,indent:c,twistie:d,indentGuidesDisposable:_.jG.None,indentSize:0,templateData:f}}renderElement(a,b,c,d){c.indentSize=this.defaultIndent+(a.depth-1)*this.indent,this.renderedNodes.set(a,c),this.renderedElements.set(a.element,a),this.renderTreeElement(a,c),this.renderer.renderElement(a,b,c.templateData,{...d,indent:c.indentSize})}disposeElement(a,b,c,d){c.indentGuidesDisposable.dispose(),this.renderer.disposeElement?.(a,b,c.templateData,{...d,indent:c.indentSize}),"number"==typeof d?.height&&(this.renderedNodes.delete(a),this.renderedElements.delete(a.element))}disposeTemplate(a){this.renderer.disposeTemplate(a.templateData)}onDidChangeTwistieState(a){let b=this.renderedElements.get(a);b&&this.onDidChangeNodeTwistieState(b)}onDidChangeNodeTwistieState(a){let b=this.renderedNodes.get(a);b&&(this._onDidChangeActiveNodes(this.activeNodes.elements),this.renderTreeElement(a,b))}renderTreeElement(a,b){b.twistie.className=b.twistie.classList.item(0),b.twistie.style.paddingLeft=`${b.indentSize}px`,b.indent.style.width=`${b.indentSize+this.indent-16}px`,a.collapsible?b.container.setAttribute("aria-expanded",String(!a.collapsed)):b.container.removeAttribute("aria-expanded"),b.twistie.classList.remove(...dz.L.asClassNameArray(dx.W.treeItemExpanded));let c=!1;if(this.renderer.renderTwistie&&(c=this.renderer.renderTwistie(a.element,b.twistie)),a.collapsible&&(!this.hideTwistiesOfChildlessElements||a.visibleChildrenCount>0)?(c||b.twistie.classList.add(...dz.L.asClassNameArray(dx.W.treeItemExpanded)),b.twistie.classList.add("collapsible"),b.twistie.classList.toggle("collapsed",a.collapsed)):b.twistie.classList.remove("collapsible","collapsed"),this.twistieAdditionalCssClass){let c=this.twistieAdditionalCssClass(a.element);c&&b.twistie.classList.add(c)}this._renderIndentGuides(a,b)}_renderIndentGuides(a,b){if((0,a_.w_)(b.indent),b.indentGuidesDisposable.dispose(),!this.shouldRenderIndentGuides)return;let c=new _.Cm;for(;;){let d=this.model.getNodeLocation(a),e=this.model.getParentNodeLocation(d);if(!e)break;let f=this.model.getNode(e),g=(0,a_.$)(".indent-guide",{style:`width: ${this.indent}px`});this.activeIndentNodes.has(f)&&g.classList.add("active"),0===b.indent.childElementCount?b.indent.appendChild(g):b.indent.insertBefore(g,b.indent.firstElementChild),this.renderedIndentGuides.add(f,g),c.add((0,_.s)(()=>this.renderedIndentGuides.delete(f,g))),a=f}b.indentGuidesDisposable=c}_onDidChangeActiveNodes(a){if(!this.shouldRenderIndentGuides)return;let b=new Set;a.forEach(a=>{let c=this.model.getNodeLocation(a);try{let d=this.model.getParentNodeLocation(c);a.collapsible&&a.children.length>0&&!a.collapsed?b.add(a):d&&b.add(this.model.getNode(d))}catch{}}),this.activeIndentNodes.forEach(a=>{b.has(a)||this.renderedIndentGuides.forEach(a,a=>a.classList.remove("active"))}),b.forEach(a=>{this.activeIndentNodes.has(a)||this.renderedIndentGuides.forEach(a,a=>a.classList.add("active"))}),this.activeIndentNodes=b}dispose(){this.renderedNodes.clear(),this.renderedElements.clear(),this.indentGuidesDisposable.dispose(),(0,_.AS)(this.disposables)}}class eQ{get totalCount(){return this._totalCount}get matchCount(){return this._matchCount}set findMatchType(a){this._findMatchType=a}get findMatchType(){return this._findMatchType}set findMode(a){this._findMode=a}get findMode(){return this._findMode}constructor(a,b,c){this._keyboardNavigationLabelProvider=a,this._filter=b,this._defaultFindVisibility=c,this._totalCount=0,this._matchCount=0,this._findMatchType=L.Fuzzy,this._findMode=K.Highlight,this._pattern="",this._lowercasePattern="",this.disposables=new _.Cm}filter(a,b){let c=1;if(this._filter){let d=this._filter.filter(a,b);if(0===(c="boolean"==typeof d?+!!d:eD(d)?eE(d.visibility):d))return!1}if(this._totalCount++,!this._pattern)return this._matchCount++,{data:eH.ne.Default,visibility:c};let d=this._keyboardNavigationLabelProvider.getKeyboardNavigationLabel(a),e=Array.isArray(d)?d:[d];for(let a of e){let b,d=a&&a.toString();if(void 0===d)return{data:eH.ne.Default,visibility:c};if(b=this._findMatchType===L.Contiguous?function(a,b){let c,d=b.toLowerCase().indexOf(a);if(d>-1){c=[Number.MAX_SAFE_INTEGER,0];for(let b=a.length;b>0;b--)c.push(d+b-1)}return c}(this._lowercasePattern,d.toLowerCase()):(0,eH.dt)(this._pattern,this._lowercasePattern,0,d,d.toLowerCase(),0,{firstMatchCanBeWeak:!0,boostFullMatch:!0}))return this._matchCount++,1===e.length?{data:b,visibility:c}:{data:{label:d,score:b},visibility:c}}return this._findMode!==K.Filter?{data:eH.ne.Default,visibility:c}:"number"==typeof this._defaultFindVisibility?this._defaultFindVisibility:this._defaultFindVisibility?this._defaultFindVisibility(a):2}reset(){this._totalCount=0,this._matchCount=0}dispose(){(0,_.AS)(this.disposables)}}class eR{constructor(a){this.stateMap=new Map(a.map(a=>[a.id,{...a}]))}get(a){let b=this.stateMap.get(a);if(void 0===b)throw Error(`No state found for toggle id ${a}`);return b.isChecked}set(a,b){let c=this.stateMap.get(a);if(void 0===c)throw Error(`No state found for toggle id ${a}`);return c.isChecked!==b&&(c.isChecked=b,!0)}}(r=K||(K={}))[r.Highlight=0]="Highlight",r[r.Filter=1]="Filter",(s=L||(L={}))[s.Fuzzy=0]="Fuzzy",s[s.Contiguous=1]="Contiguous",(t=M||(M={})).Mode="mode",t.MatchType="matchType";class eS{get pattern(){return this._pattern}get placeholder(){return this._placeholder}set placeholder(a){this._placeholder=a,this.widget?.setPlaceHolder(a)}constructor(a,b,c,d={}){this.tree=a,this.filter=b,this.contextViewProvider=c,this.options=d,this._pattern="",this._onDidChangePattern=new a$.vl,this._onDidChangeOpenState=new a$.vl,this.onDidChangeOpenState=this._onDidChangeOpenState.event,this.enabledDisposables=new _.Cm,this.disposables=new _.Cm,this.toggles=new eR(d.toggles??[]),this._placeholder=d.placeholder??(0,a3.kg)(22,"Type to search")}isOpened(){return!!this.widget}updateToggleState(a,b){this.toggles.set(a,b),this.widget?.setToggleState(a,b)}renderMessage(a,b){a?this.tree.options.showNotFoundMessage??!0?this.widget?.showMessage({type:2,content:b??(0,a3.kg)(23,"No results found.")}):this.widget?.showMessage({type:2}):this.widget?.clearMessage()}alertResults(a){a?(0,aN.xE)((0,a3.kg)(25,"{0} results",a)):(0,aN.xE)((0,a3.kg)(24,"No results"))}dispose(){this._history=void 0,this._onDidChangePattern.dispose(),this.enabledDisposables.dispose(),this.disposables.dispose()}}class eT extends eS{get mode(){return this.toggles.get(M.Mode)?K.Filter:K.Highlight}set mode(a){if(a===this.mode)return;let b=a===K.Filter;this.updateToggleState(M.Mode,b),this.placeholder=b?(0,a3.kg)(26,"Type to filter"):(0,a3.kg)(27,"Type to search"),this.filter.findMode=a,this.tree.refilter(),this.render(),this._onDidChangeMode.fire(a)}get matchType(){return this.toggles.get(M.MatchType)?L.Fuzzy:L.Contiguous}set matchType(a){a!==this.matchType&&(this.updateToggleState(M.MatchType,a===L.Fuzzy),this.filter.findMatchType=a,this.tree.refilter(),this.render(),this._onDidChangeMatchType.fire(a))}constructor(a,b,c,d={}){const e=d.defaultFindMode??K.Highlight,f=d.defaultFindMatchType??L.Fuzzy,g=[{id:M.Mode,icon:dx.W.listFilter,title:(0,a3.kg)(28,"Filter"),isChecked:e===K.Filter},{id:M.MatchType,icon:dx.W.searchFuzzy,title:(0,a3.kg)(29,"Fuzzy Match"),isChecked:f===L.Fuzzy}];b.findMatchType=f,b.findMode=e,super(a,b,c,{...d,toggles:g}),this.filter=b,this._onDidChangeMode=new a$.vl,this.onDidChangeMode=this._onDidChangeMode.event,this._onDidChangeMatchType=new a$.vl,this.onDidChangeMatchType=this._onDidChangeMatchType.event,this.disposables.add(this.tree.onDidChangeModel(()=>{this.isOpened()&&(0!==this.pattern.length&&this.tree.refilter(),this.render())})),this.disposables.add(this.tree.onWillRefilter(()=>this.filter.reset()))}updateOptions(a={}){void 0!==a.defaultFindMode&&(this.mode=a.defaultFindMode),void 0!==a.defaultFindMatchType&&(this.matchType=a.defaultFindMatchType)}shouldAllowFocus(a){return!this.isOpened()||!this.pattern||this.filter.totalCount>0&&this.filter.matchCount<=1||!eH.ne.isDefault(a.filterData)}render(){let a=0===this.filter.matchCount&&this.filter.totalCount>0&&this.pattern.length>0;this.renderMessage(a),this.pattern.length&&this.alertResults(this.filter.matchCount)}}function eU(a,b){return a.position===b.position&&eV(a,b)}function eV(a,b){return a.node.element===b.node.element&&a.startIndex===b.startIndex&&a.height===b.height&&a.endIndex===b.endIndex}class eW{constructor(a=[]){this.stickyNodes=a}get count(){return this.stickyNodes.length}equal(a){return(0,cL.aI)(this.stickyNodes,a.stickyNodes,eU)}contains(a){return this.stickyNodes.some(b=>b.node.element===a.element)}lastNodePartiallyVisible(){if(0===this.count)return!1;let a=this.stickyNodes[this.count-1];if(1===this.count)return 0!==a.position;let b=this.stickyNodes[this.count-2];return b.position+b.height!==a.position}animationStateChanged(a){if(!(0,cL.aI)(this.stickyNodes,a.stickyNodes,eV)||0===this.count)return!1;let b=this.stickyNodes[this.count-1],c=a.stickyNodes[a.count-1];return b.position!==c.position}}class eX{constrainStickyScrollNodes(a,b,c){for(let d=0;d<a.length;d++){let e=a[d];if(e.position+e.height>c||d>=b)return a.slice(0,d)}return a}}class eY extends _.jG{constructor(a,b,c,d,e,f={}){super(),this.tree=a,this.model=b,this.view=c,this.treeDelegate=e,this.maxWidgetViewRatio=.4;const g=this.validateStickySettings(f);this.stickyScrollMaxItemCount=g.stickyScrollMaxItemCount,this.stickyScrollDelegate=f.stickyScrollDelegate??new eX,this.paddingTop=f.paddingTop??0,this._widget=this._register(new eZ(c.getScrollableElement(),c,a,d,e,f.accessibilityProvider)),this.onDidChangeHasFocus=this._widget.onDidChangeHasFocus,this.onContextMenu=this._widget.onContextMenu,this._register(c.onDidScroll(()=>this.update())),this._register(c.onDidChangeContentHeight(()=>this.update())),this._register(a.onDidChangeCollapseState(()=>this.update())),this._register(b.onDidSpliceRenderedNodes(a=>{let b=this._widget.state;!b||(a.deleteCount>0&&b.stickyNodes.some(a=>!this.model.has(this.model.getNodeLocation(a.node)))?this.update():b.stickyNodes.some(c=>{let d=this.model.getListIndex(this.model.getNodeLocation(c.node));return d>=a.start&&d<a.start+a.deleteCount&&b.contains(c.node)})&&this._widget.rerender())})),this.update()}get height(){return this._widget.height}getNodeAtHeight(a){let b;if(!((b=0===a?this.view.firstVisibleIndex:this.view.indexAt(a+this.view.scrollTop))<0)&&!(b>=this.view.length))return this.view.element(b)}update(){let a=this.getNodeAtHeight(this.paddingTop);if(!a||this.tree.scrollTop<=this.paddingTop||0===this.view.renderHeight)return void this._widget.setState(void 0);let b=this.findStickyState(a);this._widget.setState(b)}findStickyState(a){let b=[],c=a,d=0,e=this.getNextStickyNode(c,void 0,d);for(;e&&(b.push(e),d+=e.height,!(b.length<=this.stickyScrollMaxItemCount)||(c=this.getNextVisibleNode(e)));)e=this.getNextStickyNode(c,e.node,d);let f=this.constrainStickyNodes(b);return f.length?new eW(f):void 0}getNextVisibleNode(a){return this.getNodeAtHeight(a.position+a.height)}getNextStickyNode(a,b,c){let d=this.getAncestorUnderPrevious(a,b);if(d){if(d===a&&(!this.nodeIsUncollapsedParent(a)||this.nodeTopAlignsWithStickyNodesBottom(a,c)))return;return this.createStickyScrollNode(d,c)}}nodeTopAlignsWithStickyNodesBottom(a,b){let c=this.getNodeIndex(a),d=this.view.getElementTop(c);return this.view.scrollTop===d-b}createStickyScrollNode(a,b){let c=this.treeDelegate.getHeight(a),{startIndex:d,endIndex:e}=this.getNodeRange(a);return{node:a,position:this.calculateStickyNodePosition(e,b,c),height:c,startIndex:d,endIndex:e}}getAncestorUnderPrevious(a,b){let c=a,d=this.getParentNode(c);for(;d;){if(d===b)return c;c=d,d=this.getParentNode(c)}if(void 0===b)return c}calculateStickyNodePosition(a,b,c){let d=this.view.getRelativeTop(a);if(null===d&&this.view.firstVisibleIndex===a&&a+1<this.view.length){let b=this.treeDelegate.getHeight(this.view.element(a)),c=this.view.getRelativeTop(a+1);d=c?c-b/this.view.renderHeight:null}if(null===d)return b;let e=this.view.element(a),f=this.treeDelegate.getHeight(e),g=d*this.view.renderHeight+f;return b+c>g&&b<=g?g-c:b}constrainStickyNodes(a){if(0===a.length)return[];let b=this.view.renderHeight*this.maxWidgetViewRatio,c=a[a.length-1];if(a.length<=this.stickyScrollMaxItemCount&&c.position+c.height<=b)return a;let d=this.stickyScrollDelegate.constrainStickyScrollNodes(a,this.stickyScrollMaxItemCount,b);if(!d.length)return[];let e=d[d.length-1];if(d.length>this.stickyScrollMaxItemCount||e.position+e.height>b)throw Error("stickyScrollDelegate violates constraints");return d}getParentNode(a){let b=this.model.getNodeLocation(a),c=this.model.getParentNodeLocation(b);return c?this.model.getNode(c):void 0}nodeIsUncollapsedParent(a){let b=this.model.getNodeLocation(a);return this.model.getListRenderCount(b)>1}getNodeIndex(a){let b=this.model.getNodeLocation(a);return this.model.getListIndex(b)}getNodeRange(a){let b=this.model.getNodeLocation(a),c=this.model.getListIndex(b);if(c<0)throw Error("Node not found in tree");return{startIndex:c,endIndex:c+this.model.getListRenderCount(b)-1}}nodePositionTopBelowWidget(a){let b=[],c=this.getParentNode(a);for(;c;)b.push(c),c=this.getParentNode(c);let d=0;for(let a=0;a<b.length&&a<this.stickyScrollMaxItemCount;a++)d+=this.treeDelegate.getHeight(b[a]);return d}domFocus(){this._widget.domFocus()}focusedLast(){return this._widget.focusedLast()}updateOptions(a={}){if(void 0!==a.paddingTop&&(this.paddingTop=a.paddingTop),void 0!==a.stickyScrollMaxItemCount){let b=this.validateStickySettings(a);this.stickyScrollMaxItemCount!==b.stickyScrollMaxItemCount&&(this.stickyScrollMaxItemCount=b.stickyScrollMaxItemCount,this.update())}}validateStickySettings(a){let b=7;return"number"==typeof a.stickyScrollMaxItemCount&&(b=Math.max(a.stickyScrollMaxItemCount,1)),{stickyScrollMaxItemCount:b}}}class eZ{get state(){return this._previousState}constructor(a,b,c,d,e,f){this.view=b,this.tree=c,this.treeRenderers=d,this.treeDelegate=e,this.accessibilityProvider=f,this._previousElements=[],this._previousStateDisposables=new _.Cm,this._rootDomNode=(0,a_.$)(".monaco-tree-sticky-container.empty"),a.appendChild(this._rootDomNode);const g=(0,a_.$)(".monaco-tree-sticky-container-shadow");this._rootDomNode.appendChild(g),this.stickyScrollFocus=new e$(this._rootDomNode,b),this.onDidChangeHasFocus=this.stickyScrollFocus.onDidChangeHasFocus,this.onContextMenu=this.stickyScrollFocus.onContextMenu}get height(){if(!this._previousState)return 0;let a=this._previousState.stickyNodes[this._previousState.count-1];return a.position+a.height}setState(a){let b=!!this._previousState&&this._previousState.count>0,c=!!a&&a.count>0;if(!b&&!c||b&&c&&this._previousState.equal(a))return;if(b!==c&&this.setVisible(c),!c){this._previousState=void 0,this._previousElements=[],this._previousStateDisposables.clear();return}let d=a.stickyNodes[a.count-1];this._previousState&&a.animationStateChanged(this._previousState)?this._previousElements[this._previousState.count-1].style.top=`${d.position}px`:this.renderState(a),this._previousState=a,this._rootDomNode.style.height=`${d.position+d.height}px`}renderState(a){this._previousStateDisposables.clear();let b=Array(a.count);for(let c=a.count-1;c>=0;c--){let d=a.stickyNodes[c],{element:e,disposable:f}=this.createElement(d,c,a.count);b[c]=e,this._rootDomNode.appendChild(e),this._previousStateDisposables.add(f)}this.stickyScrollFocus.updateElements(b,a),this._previousElements=b}rerender(){this._previousState&&this.renderState(this._previousState)}createElement(a,b,c){let d=a.startIndex,e=document.createElement("div");e.style.top=`${a.position}px`,!1!==this.tree.options.setRowHeight&&(e.style.height=`${a.height}px`),!1!==this.tree.options.setRowLineHeight&&(e.style.lineHeight=`${a.height}px`),e.classList.add("monaco-tree-sticky-row"),e.classList.add("monaco-list-row"),e.setAttribute("data-index",`${d}`),e.setAttribute("data-parity",d%2==0?"even":"odd"),e.setAttribute("id",this.view.getElementID(d));let f=this.setAccessibilityAttributes(e,a.node.element,b,c),g=this.treeDelegate.getTemplateId(a.node),h=this.treeRenderers.find(a=>a.templateId===g);if(!h)throw Error(`No renderer found for template id ${g}`);let i=a.node;i===this.tree.getNode(this.tree.getNodeLocation(a.node))&&(i=new Proxy(a.node,{}));let j=h.renderTemplate(e);h.renderElement(i,a.startIndex,j,{height:a.height});let k=(0,_.s)(()=>{f.dispose(),h.disposeElement(i,a.startIndex,j,{height:a.height}),h.disposeTemplate(j),e.remove()});return{element:e,disposable:k}}setAccessibilityAttributes(a,b,c,d){if(!this.accessibilityProvider)return _.jG.None;this.accessibilityProvider.getSetSize&&a.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(b,c,d))),this.accessibilityProvider.getPosInSet&&a.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(b,c))),this.accessibilityProvider.getRole&&a.setAttribute("role",this.accessibilityProvider.getRole(b)??"treeitem");let e=this.accessibilityProvider.getAriaLabel(b),f=e&&"string"!=typeof e?e:(0,eI.l)(e),g=(0,eJ.fm)(b=>{let c=b.readObservable(f);c?a.setAttribute("aria-label",c):a.removeAttribute("aria-label")});"string"==typeof e||e&&a.setAttribute("aria-label",e.get());let h=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(b);return"number"==typeof h&&a.setAttribute("aria-level",`${h}`),a.setAttribute("aria-selected",String(!1)),g}setVisible(a){this._rootDomNode.classList.toggle("empty",!a),a||this.stickyScrollFocus.updateElements([],void 0)}domFocus(){this.stickyScrollFocus.domFocus()}focusedLast(){return this.stickyScrollFocus.focusedLast()}dispose(){this.stickyScrollFocus.dispose(),this._previousStateDisposables.dispose(),this._rootDomNode.remove()}}class e$ extends _.jG{get domHasFocus(){return this._domHasFocus}set domHasFocus(a){a!==this._domHasFocus&&(this._onDidChangeHasFocus.fire(a),this._domHasFocus=a)}constructor(a,b){super(),this.container=a,this.view=b,this.focusedIndex=-1,this.elements=[],this._onDidChangeHasFocus=this._register(new a$.vl),this.onDidChangeHasFocus=this._onDidChangeHasFocus.event,this._onContextMenu=this._register(new a$.vl),this.onContextMenu=this._onContextMenu.event,this._domHasFocus=!1,this._register((0,a_.ko)(this.container,"focus",()=>this.onFocus())),this._register((0,a_.ko)(this.container,"blur",()=>this.onBlur())),this._register(this.view.onDidFocus(()=>this.toggleStickyScrollFocused(!1))),this._register(this.view.onKeyDown(a=>this.onKeyDown(a))),this._register(this.view.onMouseDown(a=>this.onMouseDown(a))),this._register(this.view.onContextMenu(a=>this.handleContextMenu(a)))}handleContextMenu(a){let b=a.browserEvent.target;if(!(0,ec.Es)(b)&&!(0,ec.xu)(b)){this.focusedLast()&&this.view.domFocus();return}if(!(0,a_.kx)(a.browserEvent)){if(!this.state)throw Error("Context menu should not be triggered when state is undefined");let b=this.state.stickyNodes.findIndex(b=>b.node.element===a.element?.element);if(-1===b)throw Error("Context menu should not be triggered when element is not in sticky scroll widget");this.container.focus(),this.setFocus(b);return}if(!this.state||this.focusedIndex<0)throw Error("Context menu key should not be triggered when focus is not in sticky scroll widget");let c=this.state.stickyNodes[this.focusedIndex].node.element,d=this.elements[this.focusedIndex];this._onContextMenu.fire({element:c,anchor:d,browserEvent:a.browserEvent,isStickyScroll:!0})}onKeyDown(a){if(this.domHasFocus&&this.state){if("ArrowUp"===a.key)this.setFocusedElement(Math.max(0,this.focusedIndex-1)),a.preventDefault(),a.stopPropagation();else if("ArrowDown"===a.key||"ArrowRight"===a.key){if(this.focusedIndex>=this.state.count-1){let a=this.state.stickyNodes[this.state.count-1].startIndex+1;this.view.domFocus(),this.view.setFocus([a]),this.scrollNodeUnderWidget(a,this.state)}else this.setFocusedElement(this.focusedIndex+1);a.preventDefault(),a.stopPropagation()}}}onMouseDown(a){let b=a.browserEvent.target;((0,ec.Es)(b)||(0,ec.xu)(b))&&(a.browserEvent.preventDefault(),a.browserEvent.stopPropagation())}updateElements(a,b){if(b&&0===b.count)throw Error("Sticky scroll state must be undefined when there are no sticky nodes");if(b&&b.count!==a.length)throw Error("Sticky scroll focus received illigel state");let c=this.focusedIndex;if(this.removeFocus(),this.elements=a,this.state=b,b){let a=(0,el.qE)(c,0,b.count-1);this.setFocus(a)}else this.domHasFocus&&this.view.domFocus();this.container.tabIndex=b?0:-1}setFocusedElement(a){let b=this.state;if(!b)throw Error("Cannot set focus when state is undefined");if(this.setFocus(a),!(a<b.count-1)&&b.lastNodePartiallyVisible()){let c=b.stickyNodes[a];this.scrollNodeUnderWidget(c.endIndex+1,b)}}scrollNodeUnderWidget(a,b){let c=b.stickyNodes[b.count-1],d=b.count>1?b.stickyNodes[b.count-2]:void 0,e=this.view.getElementTop(a),f=d?d.position+d.height+c.height:c.height;this.view.scrollTop=e-f}domFocus(){if(!this.state)throw Error("Cannot focus when state is undefined");this.container.focus()}focusedLast(){return!!this.state&&this.view.getHTMLElement().classList.contains("sticky-scroll-focused")}removeFocus(){-1!==this.focusedIndex&&(this.toggleElementFocus(this.elements[this.focusedIndex],!1),this.focusedIndex=-1)}setFocus(a){if(0>a)throw Error("addFocus() can not remove focus");if(!this.state&&a>=0)throw Error("Cannot set focus index when state is undefined");if(this.state&&a>=this.state.count)throw Error("Cannot set focus index to an index that does not exist");let b=this.focusedIndex;b>=0&&this.toggleElementFocus(this.elements[b],!1),a>=0&&this.toggleElementFocus(this.elements[a],!0),this.focusedIndex=a}toggleElementFocus(a,b){this.toggleElementActiveFocus(a,b&&this.domHasFocus),this.toggleElementPassiveFocus(a,b)}toggleCurrentElementActiveFocus(a){-1!==this.focusedIndex&&this.toggleElementActiveFocus(this.elements[this.focusedIndex],a)}toggleElementActiveFocus(a,b){a.classList.toggle("focused",b)}toggleElementPassiveFocus(a,b){a.classList.toggle("passive-focused",b)}toggleStickyScrollFocused(a){this.view.getHTMLElement().classList.toggle("sticky-scroll-focused",a)}onFocus(){if(!this.state||0===this.elements.length)throw Error("Cannot focus when state is undefined or elements are empty");this.domHasFocus=!0,this.toggleStickyScrollFocused(!0),this.toggleCurrentElementActiveFocus(!0),-1===this.focusedIndex&&this.setFocus(0)}onBlur(){this.domHasFocus=!1,this.toggleCurrentElementActiveFocus(!1)}dispose(){this.toggleStickyScrollFocused(!1),this._onDidChangeHasFocus.fire(!1),super.dispose()}}function e_(a){let b=I.Unknown;return(0,a_.XD)(a.browserEvent.target,"monaco-tl-twistie","monaco-tl-row")?b=I.Twistie:(0,a_.XD)(a.browserEvent.target,"monaco-tl-contents","monaco-tl-row")?b=I.Element:(0,a_.XD)(a.browserEvent.target,"monaco-tree-type-filter","monaco-list")&&(b=I.Filter),{browserEvent:a.browserEvent,element:a.element?a.element.element:null,target:b}}function e0(a){let b=(0,ec.Es)(a.browserEvent.target);return{element:a.element?a.element.element:null,browserEvent:a.browserEvent,anchor:a.anchor,isStickyScroll:b}}function e1(a,b){b(a),a.children.forEach(a=>e1(a,b))}class e2{get nodeSet(){return this._nodeSet||(this._nodeSet=this.createNodeSet()),this._nodeSet}constructor(a,b){this.getFirstViewElementWithTrait=a,this.identityProvider=b,this.nodes=[],this._onDidChange=new a$.vl,this.onDidChange=this._onDidChange.event}set(a,b){!b?.__forceEvent&&(0,cL.aI)(this.nodes,a)||this._set(a,!1,b)}_set(a,b,c){if(this.nodes=[...a],this.elements=void 0,this._nodeSet=void 0,!b){let a=this;this._onDidChange.fire({get elements(){return a.get()},browserEvent:c})}}get(){return this.elements||(this.elements=this.nodes.map(a=>a.element)),[...this.elements]}getNodes(){return this.nodes}has(a){return this.nodeSet.has(a)}onDidModelSplice({insertedNodes:a,deletedNodes:b}){if(!this.identityProvider){let a=this.createNodeSet(),c=b=>a.delete(b);b.forEach(a=>e1(a,c)),this.set([...a.values()]);return}let c=new Set,d=a=>c.add(this.identityProvider.getId(a.element).toString());b.forEach(a=>e1(a,d));let e=new Map,f=a=>e.set(this.identityProvider.getId(a.element).toString(),a);a.forEach(a=>e1(a,f));let g=[];for(let a of this.nodes){let b=this.identityProvider.getId(a.element).toString();if(c.has(b)){let a=e.get(b);a&&a.visible&&g.push(a)}else g.push(a)}if(this.nodes.length>0&&0===g.length){let a=this.getFirstViewElementWithTrait();a&&g.push(a)}this._set(g,!0)}createNodeSet(){let a=new Set;for(let b of this.nodes)a.add(b);return a}}class e3 extends ec.MH{constructor(a,b,c){super(a),this.tree=b,this.stickyScrollProvider=c}onViewPointer(a){if((0,ec.Bm)(a.browserEvent.target)||(0,a_.yD)(a.browserEvent.target)||(0,ec.bm)(a.browserEvent.target)||a.browserEvent.isHandledByList)return;let b=a.element;if(!b||this.isSelectionRangeChangeEvent(a)||this.isSelectionSingleChangeEvent(a))return super.onViewPointer(a);let c=a.browserEvent.target,d=c.classList.contains("monaco-tl-twistie")||c.classList.contains("monaco-icon-label")&&c.classList.contains("folder-icon")&&a.browserEvent.offsetX<16,e=(0,ec.xu)(a.browserEvent.target),f=!1;if(f=!!e||("function"==typeof this.tree.expandOnlyOnTwistieClick?this.tree.expandOnlyOnTwistieClick(b.element):!!this.tree.expandOnlyOnTwistieClick),e)this.handleStickyScrollMouseEvent(a,b);else if(f&&!d&&2!==a.browserEvent.detail||!this.tree.expandOnDoubleClick&&2===a.browserEvent.detail)return super.onViewPointer(a);if(b.collapsible&&(!e||d)){let c=this.tree.getNodeLocation(b),e=a.browserEvent.altKey;if(this.tree.setFocus([c]),this.tree.toggleCollapsed(c,e),d){a.browserEvent.isHandledByList=!0;return}}e||super.onViewPointer(a)}handleStickyScrollMouseEvent(a,b){if((0,ec.b$)(a.browserEvent.target)||(0,ec.W0)(a.browserEvent.target))return;let c=this.stickyScrollProvider();if(!c)throw Error("Sticky scroll controller not found");let d=this.list.indexOf(b),e=this.list.getElementTop(d),f=c.nodePositionTopBelowWidget(b);this.tree.scrollTop=e-f,this.list.domFocus(),this.list.setFocus([d]),this.list.setSelection([d])}onDoubleClick(a){a.browserEvent.target.classList.contains("monaco-tl-twistie")||!this.tree.expandOnDoubleClick||a.browserEvent.isHandledByList||super.onDoubleClick(a)}onMouseDown(a){let b=a.browserEvent.target;if(!(0,ec.Es)(b)&&!(0,ec.xu)(b))return void super.onMouseDown(a)}onContextMenu(a){let b=a.browserEvent.target;if(!(0,ec.Es)(b)&&!(0,ec.xu)(b))return void super.onContextMenu(a)}}class e4 extends ec.B8{constructor(a,b,c,d,e,f,g,h){super(a,b,c,d,h),this.focusTrait=e,this.selectionTrait=f,this.anchorTrait=g}createMouseController(a){return new e3(this,a.tree,a.stickyScrollProvider)}splice(a,b,c=[]){let d;if(super.splice(a,b,c),0===c.length)return;let e=[],f=[];c.forEach((b,c)=>{this.focusTrait.has(b)&&e.push(a+c),this.selectionTrait.has(b)&&f.push(a+c),this.anchorTrait.has(b)&&(d=a+c)}),e.length>0&&super.setFocus((0,cL.dM)([...super.getFocus(),...e])),f.length>0&&super.setSelection((0,cL.dM)([...super.getSelection(),...f])),"number"==typeof d&&super.setAnchor(d)}setFocus(a,b,c=!1){super.setFocus(a,b),c||this.focusTrait.set(a.map(a=>this.element(a)),b)}setSelection(a,b,c=!1){super.setSelection(a,b),c||this.selectionTrait.set(a.map(a=>this.element(a)),b)}setAnchor(a,b=!1){super.setAnchor(a),b||(void 0===a?this.anchorTrait.set([]):this.anchorTrait.set([this.element(a)]))}}class e5{get onDidScroll(){return this.view.onDidScroll}get onDidChangeFocus(){return this.eventBufferer.wrapEvent(this.focus.onDidChange)}get onDidChangeSelection(){return this.eventBufferer.wrapEvent(this.selection.onDidChange)}get onMouseDblClick(){return a$.Jh.filter(a$.Jh.map(this.view.onMouseDblClick,e_),a=>a.target!==I.Filter)}get onMouseOver(){return a$.Jh.map(this.view.onMouseOver,e_)}get onMouseOut(){return a$.Jh.map(this.view.onMouseOut,e_)}get onContextMenu(){return a$.Jh.any(a$.Jh.filter(a$.Jh.map(this.view.onContextMenu,e0),a=>!a.isStickyScroll),this.stickyScrollController?.onContextMenu??a$.Jh.None)}get onPointer(){return a$.Jh.map(this.view.onPointer,e_)}get onDidFocus(){return this.view.onDidFocus}get onDidChangeModel(){return a$.Jh.any(this.onDidChangeModelRelay.event,this.onDidSwapModel.event)}get onDidChangeCollapseState(){return this.onDidChangeCollapseStateRelay.event}get expandOnDoubleClick(){return void 0===this._options.expandOnDoubleClick||this._options.expandOnDoubleClick}get expandOnlyOnTwistieClick(){return void 0===this._options.expandOnlyOnTwistieClick||this._options.expandOnlyOnTwistieClick}get onDidDispose(){return this.view.onDidDispose}constructor(a,b,c,d,e={}){this._user=a,this._options=e,this.eventBufferer=new a$.at,this.onDidChangeFindOpenState=a$.Jh.None,this.onDidChangeStickyScrollFocused=a$.Jh.None,this.disposables=new _.Cm,this.onDidSwapModel=this.disposables.add(new a$.vl),this.onDidChangeModelRelay=this.disposables.add(new a$.Wj),this.onDidSpliceModelRelay=this.disposables.add(new a$.Wj),this.onDidChangeCollapseStateRelay=this.disposables.add(new a$.Wj),this.onDidChangeRenderNodeCountRelay=this.disposables.add(new a$.Wj),this.onDidChangeActiveNodesRelay=this.disposables.add(new a$.Wj),this._onWillRefilter=new a$.vl,this.onWillRefilter=this._onWillRefilter.event,this._onDidUpdateOptions=new a$.vl,this.modelDisposables=new _.Cm,e.keyboardNavigationLabelProvider&&(e.findWidgetEnabled??!0)&&(this.findFilter=new eQ(e.keyboardNavigationLabelProvider,e.filter,e.defaultFindVisibility),e={...e,filter:this.findFilter},this.disposables.add(this.findFilter)),this.model=this.createModel(a,e),this.treeDelegate=new eN(c);const f=this.disposables.add(new eO(this.onDidChangeActiveNodesRelay.event)),g=new b4.db;for(const a of(this.renderers=d.map(a=>new eP(a,this.model,this.onDidChangeCollapseStateRelay.event,f,g,e)),this.renderers))this.disposables.add(a);if(this.focus=new e2(()=>this.view.getFocusedElements()[0],e.identityProvider),this.selection=new e2(()=>this.view.getSelectedElements()[0],e.identityProvider),this.anchor=new e2(()=>this.view.getAnchorElement(),e.identityProvider),this.view=new e4(a,b,this.treeDelegate,this.renderers,this.focus,this.selection,this.anchor,{...function(a,b,c){return c&&{...c,identityProvider:c.identityProvider&&{getId:a=>c.identityProvider.getId(a.element),getGroupId:c.identityProvider.getGroupId?a=>c.identityProvider.getGroupId(a.element):void 0},dnd:c.dnd&&b.add(new eM(a,c.dnd)),multipleSelectionController:c.multipleSelectionController&&{isSelectionSingleChangeEvent:a=>c.multipleSelectionController.isSelectionSingleChangeEvent({...a,element:a.element}),isSelectionRangeChangeEvent:a=>c.multipleSelectionController.isSelectionRangeChangeEvent({...a,element:a.element})},accessibilityProvider:c.accessibilityProvider&&{...c.accessibilityProvider,getSetSize(b){let c=a(),d=c.getNodeLocation(b),e=c.getParentNodeLocation(d);return c.getNode(e).visibleChildrenCount},getPosInSet:a=>a.visibleChildIndex+1,isChecked:c.accessibilityProvider&&c.accessibilityProvider.isChecked?a=>c.accessibilityProvider.isChecked(a.element):void 0,getRole:c.accessibilityProvider&&c.accessibilityProvider.getRole?a=>c.accessibilityProvider.getRole(a.element):()=>"treeitem",getAriaLabel:a=>c.accessibilityProvider.getAriaLabel(a.element),getWidgetAriaLabel:()=>c.accessibilityProvider.getWidgetAriaLabel(),getWidgetRole:c.accessibilityProvider&&c.accessibilityProvider.getWidgetRole?()=>c.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:c.accessibilityProvider&&c.accessibilityProvider.getAriaLevel?a=>c.accessibilityProvider.getAriaLevel(a.element):a=>a.depth,getActiveDescendantId:c.accessibilityProvider.getActiveDescendantId&&(a=>c.accessibilityProvider.getActiveDescendantId(a.element))},keyboardNavigationLabelProvider:c.keyboardNavigationLabelProvider&&{...c.keyboardNavigationLabelProvider,getKeyboardNavigationLabel:a=>c.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(a.element)}}}(()=>this.model,this.disposables,e),tree:this,stickyScrollProvider:()=>this.stickyScrollController}),this.setupModel(this.model),!1!==e.keyboardSupport){const a=a$.Jh.chain(this.view.onKeyDown,a=>a.filter(a=>!(0,a_.yD)(a.target)).map(a=>new a1.Z(a)));a$.Jh.chain(a,a=>a.filter(a=>15===a.keyCode))(this.onLeftArrow,this,this.disposables),a$.Jh.chain(a,a=>a.filter(a=>17===a.keyCode))(this.onRightArrow,this,this.disposables),a$.Jh.chain(a,a=>a.filter(a=>10===a.keyCode))(this.onSpace,this,this.disposables)}if((e.findWidgetEnabled??!0)&&e.keyboardNavigationLabelProvider&&e.contextViewProvider){const a={styles:e.findWidgetStyles,defaultFindMode:e.defaultFindMode,defaultFindMatchType:e.defaultFindMatchType,showNotFoundMessage:e.showNotFoundMessage,findWidgetContainer:e.findWidgetContainer};this.findController=this.disposables.add(new eT(this,this.findFilter,e.contextViewProvider,a)),this.focusNavigationFilter=a=>this.findController.shouldAllowFocus(a),this.onDidChangeFindOpenState=this.findController.onDidChangeOpenState,this.onDidChangeFindMode=this.findController.onDidChangeMode,this.onDidChangeFindMatchType=this.findController.onDidChangeMatchType}else this.onDidChangeFindMode=a$.Jh.None,this.onDidChangeFindMatchType=a$.Jh.None;e.enableStickyScroll&&(this.stickyScrollController=new eY(this,this.model,this.view,this.renderers,this.treeDelegate,e),this.onDidChangeStickyScrollFocused=this.stickyScrollController.onDidChangeHasFocus),this.styleElement=(0,du.li)(this.view.getHTMLElement()),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===J.Always)}updateOptions(a={}){for(let b of(this._options={...this._options,...a},this.renderers))b.updateOptions(a);this.view.updateOptions(a),this.findController?.updateOptions(a),this.updateStickyScroll(a),this._onDidUpdateOptions.fire(this._options),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===J.Always)}get options(){return this._options}updateStickyScroll(a){!this.stickyScrollController&&this._options.enableStickyScroll?(this.stickyScrollController=new eY(this,this.model,this.view,this.renderers,this.treeDelegate,this._options),this.onDidChangeStickyScrollFocused=this.stickyScrollController.onDidChangeHasFocus):this.stickyScrollController&&!this._options.enableStickyScroll&&(this.onDidChangeStickyScrollFocused=a$.Jh.None,this.stickyScrollController.dispose(),this.stickyScrollController=void 0),this.stickyScrollController?.updateOptions(a)}getHTMLElement(){return this.view.getHTMLElement()}get onDidChangeContentHeight(){return this.view.onDidChangeContentHeight}get scrollTop(){return this.view.scrollTop}set scrollTop(a){this.view.scrollTop=a}get scrollHeight(){return this.view.scrollHeight}get renderHeight(){return this.view.renderHeight}get ariaLabel(){return this.view.ariaLabel}set ariaLabel(a){this.view.ariaLabel=a}domFocus(){this.stickyScrollController?.focusedLast()?this.stickyScrollController.domFocus():this.view.domFocus()}isDOMFocused(){return(0,a_.X7)(this.getHTMLElement())}layout(a,b){this.view.layout(a,b)}style(a){let b=`.${this.view.domId}`,c=[];a.treeIndentGuidesStroke&&(c.push(`.monaco-list${b}:hover .monaco-tl-indent > .indent-guide, .monaco-list${b}.always .monaco-tl-indent > .indent-guide { opacity: 1; border-color: ${a.treeInactiveIndentGuidesStroke}; }`),c.push(`.monaco-list${b} .monaco-tl-indent > .indent-guide.active { opacity: 1; border-color: ${a.treeIndentGuidesStroke}; }`));let d=a.treeStickyScrollBackground??a.listBackground;d&&(c.push(`.monaco-list${b} .monaco-scrollable-element .monaco-tree-sticky-container { background-color: ${d}; }`),c.push(`.monaco-list${b} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row { background-color: ${d}; }`)),a.treeStickyScrollBorder&&c.push(`.monaco-list${b} .monaco-scrollable-element .monaco-tree-sticky-container { border-bottom: 1px solid ${a.treeStickyScrollBorder}; }`),a.treeStickyScrollShadow&&c.push(`.monaco-list${b} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow { box-shadow: ${a.treeStickyScrollShadow} 0 6px 6px -6px inset; height: 3px; }`),a.listFocusForeground&&(c.push(`.monaco-list${b}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { color: ${a.listFocusForeground}; }`),c.push(`.monaco-list${b}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { color: inherit; }`));let e=(0,ev.gI)(a.listFocusAndSelectionOutline,(0,ev.gI)(a.listSelectionOutline,a.listFocusOutline??""));e&&(c.push(`.monaco-list${b}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused.selected { outline: 1px solid ${e}; outline-offset: -1px;}`),c.push(`.monaco-list${b}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused.selected { outline: inherit;}`)),a.listFocusOutline&&(c.push(`.monaco-list${b}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { outline: 1px solid ${a.listFocusOutline}; outline-offset: -1px; }`),c.push(`.monaco-list${b}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { outline: inherit; }`),c.push(`.context-menu-visible .monaco-list${b}.last-focused.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.passive-focused { outline: 1px solid ${a.listFocusOutline}; outline-offset: -1px; }`),c.push(`.context-menu-visible .monaco-list${b}.last-focused.sticky-scroll-focused .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`),c.push(`.context-menu-visible .monaco-list${b}.last-focused:not(.sticky-scroll-focused) .monaco-tree-sticky-container .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`)),this.styleElement.textContent=c.join("\n"),this.view.style(a)}getParentElement(a){let b=this.model.getParentNodeLocation(a);return this.model.getNode(b).element}getFirstElementChild(a){return this.model.getFirstElementChild(a)}getNode(a){return this.model.getNode(a)}getNodeLocation(a){return this.model.getNodeLocation(a)}collapse(a,b=!1){return this.model.setCollapsed(a,!0,b)}expand(a,b=!1){return this.model.setCollapsed(a,!1,b)}toggleCollapsed(a,b=!1){return this.model.setCollapsed(a,void 0,b)}isCollapsible(a){return this.model.isCollapsible(a)}setCollapsible(a,b){return this.model.setCollapsible(a,b)}isCollapsed(a){return this.model.isCollapsed(a)}refilter(){this._onWillRefilter.fire(void 0),this.model.refilter()}setSelection(a,b){this.eventBufferer.bufferEvents(()=>{let c=a.map(a=>this.model.getNode(a));this.selection.set(c,b);let d=a.map(a=>this.model.getListIndex(a)).filter(a=>a>-1);this.view.setSelection(d,b,!0)})}getSelection(){return this.selection.get()}setFocus(a,b){this.eventBufferer.bufferEvents(()=>{let c=a.map(a=>this.model.getNode(a));this.focus.set(c,b);let d=a.map(a=>this.model.getListIndex(a)).filter(a=>a>-1);this.view.setFocus(d,b,!0)})}focusNext(a=1,b=!1,c,d=(0,a_.kx)(c)&&c.altKey?void 0:this.focusNavigationFilter){this.view.focusNext(a,b,c,d)}focusPrevious(a=1,b=!1,c,d=(0,a_.kx)(c)&&c.altKey?void 0:this.focusNavigationFilter){this.view.focusPrevious(a,b,c,d)}focusNextPage(a,b=(0,a_.kx)(a)&&a.altKey?void 0:this.focusNavigationFilter){return this.view.focusNextPage(a,b)}focusPreviousPage(a,b=(0,a_.kx)(a)&&a.altKey?void 0:this.focusNavigationFilter){return this.view.focusPreviousPage(a,b,()=>this.stickyScrollController?.height??0)}focusLast(a,b=(0,a_.kx)(a)&&a.altKey?void 0:this.focusNavigationFilter){this.view.focusLast(a,b)}focusFirst(a,b=(0,a_.kx)(a)&&a.altKey?void 0:this.focusNavigationFilter){this.view.focusFirst(a,b)}getFocus(){return this.focus.get()}reveal(a,b){this.model.expandTo(a);let c=this.model.getListIndex(a);if(-1!==c)if(this.stickyScrollController){let d=this.stickyScrollController.nodePositionTopBelowWidget(this.getNode(a));this.view.reveal(c,b,d)}else this.view.reveal(c,b)}onLeftArrow(a){a.preventDefault(),a.stopPropagation();let b=this.view.getFocusedElements();if(0===b.length)return;let c=b[0],d=this.model.getNodeLocation(c);if(!this.model.setCollapsed(d,!0)){let a=this.model.getParentNodeLocation(d);if(!a)return;let b=this.model.getListIndex(a);this.view.reveal(b),this.view.setFocus([b])}}onRightArrow(a){a.preventDefault(),a.stopPropagation();let b=this.view.getFocusedElements();if(0===b.length)return;let c=b[0],d=this.model.getNodeLocation(c);if(!this.model.setCollapsed(d,!1)){if(!c.children.some(a=>a.visible))return;let[a]=this.view.getFocus(),b=a+1;this.view.reveal(b),this.view.setFocus([b])}}onSpace(a){a.preventDefault(),a.stopPropagation();let b=this.view.getFocusedElements();if(0===b.length)return;let c=b[0],d=this.model.getNodeLocation(c),e=a.browserEvent.altKey;this.model.setCollapsed(d,void 0,e)}setupModel(a){this.modelDisposables.clear(),this.modelDisposables.add(a.onDidSpliceRenderedNodes(({start:a,deleteCount:b,elements:c})=>this.view.splice(a,b,c)));let b=a$.Jh.forEach(a.onDidSpliceModel,a=>{this.eventBufferer.bufferEvents(()=>{this.focus.onDidModelSplice(a),this.selection.onDidModelSplice(a)})},this.modelDisposables);b(()=>null,null,this.modelDisposables);let c=this.modelDisposables.add(new a$.vl),d=this.modelDisposables.add(new be.ve(0));this.modelDisposables.add(a$.Jh.any(b,this.focus.onDidChange,this.selection.onDidChange)(()=>{d.trigger(()=>{let a=new Set;for(let b of this.focus.getNodes())a.add(b);for(let b of this.selection.getNodes())a.add(b);c.fire([...a.values()])})})),this.onDidChangeActiveNodesRelay.input=c.event,this.onDidChangeModelRelay.input=a$.Jh.signal(a.onDidSpliceModel),this.onDidChangeCollapseStateRelay.input=a.onDidChangeCollapseState,this.onDidChangeRenderNodeCountRelay.input=a.onDidChangeRenderNodeCount,this.onDidSpliceModelRelay.input=a.onDidSpliceModel,bc.zx&&this.modelDisposables.add(a.onDidChangeCollapseState(a=>{let{node:b,deep:c}=a;b.collapsible&&!c&&this.isDOMFocused()&&(0,aN.xE)(b.collapsed?(0,a3.kg)(30,"collapsed"):(0,a3.kg)(31,"expanded"))}))}dispose(){(0,_.AS)(this.disposables),this.stickyScrollController?.dispose(),this.view.dispose(),this.modelDisposables.dispose()}}class e6{constructor(a,b={}){this.user=a,this.rootRef=null,this.nodes=new Map,this.nodesByIdentity=new Map,this.model=new eG(a,null,b),this.onDidSpliceModel=this.model.onDidSpliceModel,this.onDidSpliceRenderedNodes=this.model.onDidSpliceRenderedNodes,this.onDidChangeCollapseState=this.model.onDidChangeCollapseState,this.onDidChangeRenderNodeCount=this.model.onDidChangeRenderNodeCount,b.sorter&&(this.sorter={compare:(a,c)=>b.sorter.compare(a.element,c.element)}),this.identityProvider=b.identityProvider}setChildren(a,b=db.f.empty(),c={}){let d=this.getElementLocation(a);this._setChildren(d,this.preserveCollapseState(b),c)}_setChildren(a,b=db.f.empty(),c){let d=new Set,e=new Set,f=a=>{if(null!==a.element){if(d.add(a.element),this.nodes.set(a.element,a),this.identityProvider){let b=this.identityProvider.getId(a.element).toString();e.add(b),this.nodesByIdentity.set(b,a)}c.onDidCreateNode?.(a)}},g=a=>{if(null!==a.element){if(d.has(a.element)||this.nodes.delete(a.element),this.identityProvider){let b=this.identityProvider.getId(a.element).toString();e.has(b)||this.nodesByIdentity.delete(b)}c.onDidDeleteNode?.(a)}};this.model.splice([...a,0],Number.MAX_VALUE,b,{...c,onDidCreateNode:f,onDidDeleteNode:g})}preserveCollapseState(a=db.f.empty()){return this.sorter&&(a=[...a].sort(this.sorter.compare.bind(this.sorter))),db.f.map(a,a=>{let b,c=this.nodes.get(a.element);if(!c&&this.identityProvider){let b=this.identityProvider.getId(a.element).toString();c=this.nodesByIdentity.get(b)}if(!c){let b;return b=void 0===a.collapsed?void 0:a.collapsed===H.Collapsed||a.collapsed===H.PreserveOrCollapsed||a.collapsed!==H.Expanded&&a.collapsed!==H.PreserveOrExpanded&&!!a.collapsed,{...a,children:this.preserveCollapseState(a.children),collapsed:b}}let d="boolean"==typeof a.collapsible?a.collapsible:c.collapsible;return b=void 0===a.collapsed||a.collapsed===H.PreserveOrCollapsed||a.collapsed===H.PreserveOrExpanded?c.collapsed:a.collapsed===H.Collapsed||a.collapsed!==H.Expanded&&!!a.collapsed,{...a,collapsible:d,collapsed:b,children:this.preserveCollapseState(a.children)}})}rerender(a){let b=this.getElementLocation(a);this.model.rerender(b)}resort(a=null,b=!0){if(!this.sorter)return;let c=this.getElementLocation(a),d=this.model.getNode(c);this._setChildren(c,this.resortChildren(d,b),{})}resortChildren(a,b,c=!0){let d=[...a.children];return(b||c)&&(d=d.sort(this.sorter.compare.bind(this.sorter))),db.f.map(d,a=>({element:a.element,collapsible:a.collapsible,collapsed:a.collapsed,children:this.resortChildren(a,b,!1)}))}getFirstElementChild(a=null){let b=this.getElementLocation(a);return this.model.getFirstElementChild(b)}has(a){return this.nodes.has(a)}getListIndex(a){let b=this.getElementLocation(a);return this.model.getListIndex(b)}getListRenderCount(a){let b=this.getElementLocation(a);return this.model.getListRenderCount(b)}isCollapsible(a){let b=this.getElementLocation(a);return this.model.isCollapsible(b)}setCollapsible(a,b){let c=this.getElementLocation(a);return this.model.setCollapsible(c,b)}isCollapsed(a){let b=this.getElementLocation(a);return this.model.isCollapsed(b)}setCollapsed(a,b,c){let d=this.getElementLocation(a);return this.model.setCollapsed(d,b,c)}expandTo(a){let b=this.getElementLocation(a);this.model.expandTo(b)}refilter(){this.model.refilter()}getNode(a=null){if(null===a)return this.model.getNode(this.model.rootRef);let b=this.nodes.get(a);if(!b)throw new ez(this.user,`Tree element not found: ${a}`);return b}getNodeLocation(a){return a.element}getParentNodeLocation(a){if(null===a)throw new ez(this.user,"Invalid getParentNodeLocation call");let b=this.nodes.get(a);if(!b)throw new ez(this.user,`Tree element not found: ${a}`);let c=this.model.getNodeLocation(b),d=this.model.getParentNodeLocation(c);return this.model.getNode(d).element}getElementLocation(a){if(null===a)return[];let b=this.nodes.get(a);if(!b)throw new ez(this.user,`Tree element not found: ${a}`);return this.model.getNodeLocation(b)}}function e7(a){return{element:{elements:[a.element],incompressible:a.incompressible||!1},children:db.f.map(db.f.from(a.children),e7),collapsible:a.collapsible,collapsed:a.collapsed}}function e8(a){let b,c,d=[a.element],e=a.incompressible||!1;for(;[c,b]=db.f.consume(db.f.from(a.children),2),1===c.length&&!c[0].incompressible;)a=c[0],d.push(a.element);return{element:{elements:d,incompressible:e},children:db.f.map(db.f.concat(c,b),e8),collapsible:a.collapsible,collapsed:a.collapsed}}function e9(a){return function a(b,c=0){let d;return(d=c<b.element.elements.length-1?[a(b,c+1)]:db.f.map(db.f.from(b.children),b=>a(b,0)),0===c&&b.element.incompressible)?{element:b.element.elements[c],children:d,incompressible:!0,collapsible:b.collapsible,collapsed:b.collapsed}:{element:b.element.elements[c],children:d,collapsible:b.collapsible,collapsed:b.collapsed}}(a,0)}class fa{get onDidSpliceRenderedNodes(){return this.model.onDidSpliceRenderedNodes}get onDidSpliceModel(){return this.model.onDidSpliceModel}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get onDidChangeRenderNodeCount(){return this.model.onDidChangeRenderNodeCount}constructor(a,b={}){this.user=a,this.rootRef=null,this.nodes=new Map,this.model=new e6(a,b),this.enabled=void 0===b.compressionEnabled||b.compressionEnabled,this.identityProvider=b.identityProvider}setChildren(a,b=db.f.empty(),c){let d,e=c.diffIdentityProvider&&{getId:a=>a.elements.map(a=>d.getId(a).toString()).join("\0"),getGroupId:(d=c.diffIdentityProvider).getGroupId?a=>d.getGroupId(a.elements[a.elements.length-1]):void 0};if(null===a){let a=db.f.map(b,this.enabled?e8:e7);this._setChildren(null,a,{diffIdentityProvider:e,diffDepth:1/0});return}let f=this.nodes.get(a);if(!f)throw new ez(this.user,"Unknown compressed tree node");let g=this.model.getNode(f),h=this.model.getParentNodeLocation(f),i=this.model.getNode(h),j=function a(b,c,d){return b.element===c?{...b,children:d}:{...b,children:db.f.map(db.f.from(b.children),b=>a(b,c,d))}}(e9(g),a,b),k=(this.enabled?e8:e7)(j),l=c.diffIdentityProvider?(a,b)=>c.diffIdentityProvider.getId(a)===c.diffIdentityProvider.getId(b):void 0;if((0,cL.aI)(k.element.elements,g.element.elements,l))return void this._setChildren(f,k.children||db.f.empty(),{diffIdentityProvider:e,diffDepth:1});let m=i.children.map(a=>a===g?k:a);this._setChildren(i.element,m,{diffIdentityProvider:e,diffDepth:g.depth-i.depth})}isCompressionEnabled(){return this.enabled}setCompressionEnabled(a){if(a===this.enabled)return;this.enabled=a;let b=this.model.getNode().children,c=db.f.map(b,e9),d=db.f.map(c,a?e8:e7);this._setChildren(null,d,{diffIdentityProvider:this.identityProvider,diffDepth:1/0})}_setChildren(a,b,c){let d=new Set,e=a=>{for(let b of a.element.elements)d.add(b),this.nodes.set(b,a.element)},f=a=>{for(let b of a.element.elements)d.has(b)||this.nodes.delete(b)};this.model.setChildren(a,b,{...c,onDidCreateNode:e,onDidDeleteNode:f})}has(a){return this.nodes.has(a)}getListIndex(a){let b=this.getCompressedNode(a);return this.model.getListIndex(b)}getListRenderCount(a){let b=this.getCompressedNode(a);return this.model.getListRenderCount(b)}getNode(a){if(void 0===a)return this.model.getNode();let b=this.getCompressedNode(a);return this.model.getNode(b)}getNodeLocation(a){let b=this.model.getNodeLocation(a);return null===b?null:b.elements[b.elements.length-1]}getParentNodeLocation(a){let b=this.getCompressedNode(a),c=this.model.getParentNodeLocation(b);return null===c?null:c.elements[c.elements.length-1]}getFirstElementChild(a){let b=this.getCompressedNode(a);return this.model.getFirstElementChild(b)}isCollapsible(a){let b=this.getCompressedNode(a);return this.model.isCollapsible(b)}setCollapsible(a,b){let c=this.getCompressedNode(a);return this.model.setCollapsible(c,b)}isCollapsed(a){let b=this.getCompressedNode(a);return this.model.isCollapsed(b)}setCollapsed(a,b,c){let d=this.getCompressedNode(a);return this.model.setCollapsed(d,b,c)}expandTo(a){let b=this.getCompressedNode(a);this.model.expandTo(b)}rerender(a){let b=this.getCompressedNode(a);this.model.rerender(b)}refilter(){this.model.refilter()}resort(a=null,b=!0){let c=this.getCompressedNode(a);this.model.resort(c,b)}getCompressedNode(a){if(null===a)return null;let b=this.nodes.get(a);if(!b)throw new ez(this.user,`Tree element not found: ${a}`);return b}}let fb=a=>a[a.length-1];class fc{get element(){return null===this.node.element?null:this.unwrapper(this.node.element)}get children(){return this.node.children.map(a=>new fc(this.unwrapper,a))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(a,b){this.unwrapper=a,this.node=b}}class fd{get onDidSpliceModel(){return a$.Jh.map(this.model.onDidSpliceModel,({insertedNodes:a,deletedNodes:b})=>({insertedNodes:a.map(a=>this.nodeMapper.map(a)),deletedNodes:b.map(a=>this.nodeMapper.map(a))}))}get onDidSpliceRenderedNodes(){return a$.Jh.map(this.model.onDidSpliceRenderedNodes,({start:a,deleteCount:b,elements:c})=>({start:a,deleteCount:b,elements:c.map(a=>this.nodeMapper.map(a))}))}get onDidChangeCollapseState(){return a$.Jh.map(this.model.onDidChangeCollapseState,({node:a,deep:b})=>({node:this.nodeMapper.map(a),deep:b}))}get onDidChangeRenderNodeCount(){return a$.Jh.map(this.model.onDidChangeRenderNodeCount,a=>this.nodeMapper.map(a))}constructor(a,b={}){this.rootRef=null,this.elementMapper=b.elementMapper||fb;const c=a=>this.elementMapper(a.elements);this.nodeMapper=new eA(a=>new fc(c,a)),this.model=new fa(a,function(a,b){return{...b,identityProvider:b.identityProvider&&{getId:c=>b.identityProvider.getId(a(c)),getGroupId:b.identityProvider.getGroupId?c=>b.identityProvider.getGroupId(a(c)):void 0},sorter:b.sorter&&{compare:(a,c)=>b.sorter.compare(a.elements[0],c.elements[0])},filter:b.filter&&{filter(a,c){let d=a.elements;for(let a=0;a<d.length-1;a++){let e=b.filter.filter(d[a],c);c=eE(eD(e)?e.visibility:e)}return b.filter.filter(d[d.length-1],c)}}}}(c,b))}setChildren(a,b=db.f.empty(),c={}){this.model.setChildren(a,b,c)}isCompressionEnabled(){return this.model.isCompressionEnabled()}setCompressionEnabled(a){this.model.setCompressionEnabled(a)}has(a){return this.model.has(a)}getListIndex(a){return this.model.getListIndex(a)}getListRenderCount(a){return this.model.getListRenderCount(a)}getNode(a){return this.nodeMapper.map(this.model.getNode(a))}getNodeLocation(a){return a.element}getParentNodeLocation(a){return this.model.getParentNodeLocation(a)}getFirstElementChild(a){let b=this.model.getFirstElementChild(a);return null==b?b:this.elementMapper(b.elements)}isCollapsible(a){return this.model.isCollapsible(a)}setCollapsible(a,b){return this.model.setCollapsible(a,b)}isCollapsed(a){return this.model.isCollapsed(a)}setCollapsed(a,b,c){return this.model.setCollapsed(a,b,c)}expandTo(a){return this.model.expandTo(a)}rerender(a){return this.model.rerender(a)}refilter(){return this.model.refilter()}resort(a=null,b=!0){return this.model.resort(a,b)}getCompressedTreeNode(a=null){return this.model.getNode(a)}}var fe=c(90605);class ff extends e5{get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}constructor(a,b,c,d,e={}){super(a,b,c,d,e),this.user=a}setChildren(a,b=db.f.empty(),c){this.model.setChildren(a,b,c)}rerender(a){void 0===a?this.view.rerender():this.model.rerender(a)}resort(a,b=!0){this.model.resort(a,b)}hasElement(a){return this.model.has(a)}createModel(a,b){return new e6(a,b)}}class fg{get compressedTreeNodeProvider(){return this._compressedTreeNodeProvider()}constructor(a,b,c){this._compressedTreeNodeProvider=a,this.stickyScrollDelegate=b,this.renderer=c,this.templateId=c.templateId,c.onDidChangeTwistieState&&(this.onDidChangeTwistieState=c.onDidChangeTwistieState)}renderTemplate(a){return{compressedTreeNode:void 0,data:this.renderer.renderTemplate(a)}}renderElement(a,b,c,d){let e=this.stickyScrollDelegate.getCompressedNode(a);e||(e=this.compressedTreeNodeProvider.getCompressedTreeNode(a.element)),1===e.element.elements.length?(c.compressedTreeNode=void 0,this.renderer.renderElement(a,b,c.data,d)):(c.compressedTreeNode=e,this.renderer.renderCompressedElements(e,b,c.data,d))}disposeElement(a,b,c,d){c.compressedTreeNode?this.renderer.disposeCompressedElements?.(c.compressedTreeNode,b,c.data,d):this.renderer.disposeElement?.(a,b,c.data,d)}disposeTemplate(a){this.renderer.disposeTemplate(a.data)}renderTwistie(a,b){return this.renderer.renderTwistie?.(a,b)??!1}}!function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);f>3&&g&&Object.defineProperty(b,c,g)}([fe.B],fg.prototype,"compressedTreeNodeProvider",null);class fh{constructor(a){this.modelProvider=a,this.compressedStickyNodes=new Map}getCompressedNode(a){return this.compressedStickyNodes.get(a)}constrainStickyScrollNodes(a,b,c){if(this.compressedStickyNodes.clear(),0===a.length)return[];for(let d=0;d<a.length;d++){let e=a[d],f=e.position+e.height;if(d+1<a.length&&f+a[d+1].height>c||d>=b-1&&b<a.length){let b=a.slice(0,d),c=a.slice(d);return[...b,this.compressStickyNodes(c)]}}return a}compressStickyNodes(a){if(0===a.length)throw Error("Can't compress empty sticky nodes");let b=this.modelProvider();if(!b.isCompressionEnabled())return a[0];let c=[];for(let d=0;d<a.length;d++){let e=a[d],f=b.getCompressedTreeNode(e.node.element);if(f.element){if(0!==d&&f.element.incompressible)break;c.push(...f.element.elements)}}if(c.length<2)return a[0];let d=a[a.length-1],e={...d.node,children:[],element:{elements:c,incompressible:!1}},f=new Proxy(a[0].node,{}),g={node:f,startIndex:a[0].startIndex,endIndex:d.endIndex,position:a[0].position,height:a[0].height};return this.compressedStickyNodes.set(f,e),g}}class fi extends ff{constructor(a,b,c,d,e={}){const f=()=>this,g=new fh(()=>this.model);super(a,b,c,d.map(a=>new fg(f,g,a)),{...function(a,b){return b&&{...b,keyboardNavigationLabelProvider:b.keyboardNavigationLabelProvider&&{getKeyboardNavigationLabel(c){let d;try{d=a().getCompressedTreeNode(c)}catch{return b.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(c)}return 1===d.element.elements.length?b.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(c):b.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(d.element.elements)}}}}(f,e),stickyScrollDelegate:g})}setChildren(a,b=db.f.empty(),c){this.model.setChildren(a,b,c)}createModel(a,b){return new fd(a,b)}updateOptions(a={}){super.updateOptions(a),void 0!==a.compressionEnabled&&this.model.setCompressionEnabled(a.compressionEnabled)}getCompressedTreeNode(a=null){return this.model.getCompressedTreeNode(a)}}function fj(a){return{...a,children:[],refreshPromise:void 0,stale:!0,slow:!1,forceExpanded:!1}}function fk(a,b){return!!b.parent&&(b.parent===a||fk(a,b.parent))}class fl{get element(){return this.node.element.element}get children(){return this.node.children.map(a=>new fl(a))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(a){this.node=a}}class fm{constructor(a,b,c){this.renderer=a,this.nodeMapper=b,this.onDidChangeTwistieState=c,this.renderedNodes=new Map,this.templateId=a.templateId}renderTemplate(a){return{templateData:this.renderer.renderTemplate(a)}}renderElement(a,b,c,d){this.renderer.renderElement(this.nodeMapper.map(a),b,c.templateData,d)}renderTwistie(a,b){return a.slow?(b.classList.add(...dz.L.asClassNameArray(dx.W.treeItemLoading)),!0):(b.classList.remove(...dz.L.asClassNameArray(dx.W.treeItemLoading)),!1)}disposeElement(a,b,c,d){this.renderer.disposeElement?.(this.nodeMapper.map(a),b,c.templateData,d)}disposeTemplate(a){this.renderer.disposeTemplate(a.templateData)}dispose(){this.renderedNodes.clear()}}function fn(a){return{browserEvent:a.browserEvent,elements:a.elements.map(a=>a.element)}}function fo(a){return{browserEvent:a.browserEvent,element:a.element&&a.element.element,target:a.target}}class fp extends ex.ur{constructor(a){super(a.elements.map(a=>a.element)),this.data=a}}function fq(a){return a instanceof ex.ur?new fp(a):a}class fr{constructor(a){this.dnd=a}getDragURI(a){return this.dnd.getDragURI(a.element)}getDragLabel(a,b){if(this.dnd.getDragLabel)return this.dnd.getDragLabel(a.map(a=>a.element),b)}onDragStart(a,b){this.dnd.onDragStart?.(fq(a),b)}onDragOver(a,b,c,d,e,f=!0){return this.dnd.onDragOver(fq(a),b&&b.element,c,d,e)}drop(a,b,c,d,e){this.dnd.drop(fq(a),b&&b.element,c,d,e)}onDragEnd(a){this.dnd.onDragEnd?.(a)}dispose(){this.dnd.dispose()}}class fs extends eQ{constructor(a,b,c){super(b,c),this.findProvider=a,this.isFindSessionActive=!1}filter(a,b){let c=super.filter(a,b);return this.isFindSessionActive&&this.findMode!==K.Highlight&&this.findProvider.isVisible?0===eE(eD(c)?c.visibility:c)?0:this.findProvider.isVisible(a)?c:0:c}}class ft extends eT{constructor(a,b,c,d,e){super(a,c,d,e),this.findProvider=b,this.filter=c,this.activeSession=!1,this.asyncWorkInProgress=!1,this.disposables.add((0,_.s)(async()=>{this.activeSession&&await this.findProvider.endSession?.()}))}render(){if(this.asyncWorkInProgress||!this.activeFindMetadata)return;let a=0===this.activeFindMetadata.matchCount&&this.pattern.length>0;this.renderMessage(a),this.pattern.length&&this.alertResults(this.activeFindMetadata.matchCount)}shouldAllowFocus(a){return this.shouldFocusWhenNavigating(a)}shouldFocusWhenNavigating(a){if(!this.activeSession||!this.activeFindMetadata)return!0;let b=a.element?.element;return!!(b&&this.activeFindMetadata.isMatch(b))||!eH.ne.isDefault(a.filterData)}}function fu(a){return a&&{...a,collapseByDefault:!0,identityProvider:a.identityProvider&&{getId:b=>a.identityProvider.getId(b.element),getGroupId:a.identityProvider.getGroupId?b=>a.identityProvider.getGroupId(b.element):void 0},dnd:a.dnd&&new fr(a.dnd),multipleSelectionController:a.multipleSelectionController&&{isSelectionSingleChangeEvent:b=>a.multipleSelectionController.isSelectionSingleChangeEvent({...b,element:b.element}),isSelectionRangeChangeEvent:b=>a.multipleSelectionController.isSelectionRangeChangeEvent({...b,element:b.element})},accessibilityProvider:a.accessibilityProvider&&{...a.accessibilityProvider,getPosInSet:void 0,getSetSize:void 0,getRole:a.accessibilityProvider.getRole?b=>a.accessibilityProvider.getRole(b.element):()=>"treeitem",isChecked:a.accessibilityProvider.isChecked?b=>!!a.accessibilityProvider?.isChecked(b.element):void 0,getAriaLabel:b=>a.accessibilityProvider.getAriaLabel(b.element),getWidgetAriaLabel:()=>a.accessibilityProvider.getWidgetAriaLabel(),getWidgetRole:a.accessibilityProvider.getWidgetRole?()=>a.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:a.accessibilityProvider.getAriaLevel&&(b=>a.accessibilityProvider.getAriaLevel(b.element)),getActiveDescendantId:a.accessibilityProvider.getActiveDescendantId&&(b=>a.accessibilityProvider.getActiveDescendantId(b.element))},filter:a.filter&&{filter:(b,c)=>a.filter.filter(b.element,c)},keyboardNavigationLabelProvider:a.keyboardNavigationLabelProvider&&{...a.keyboardNavigationLabelProvider,getKeyboardNavigationLabel:b=>a.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(b.element)},sorter:void 0,expandOnlyOnTwistieClick:void 0===a.expandOnlyOnTwistieClick?void 0:"function"!=typeof a.expandOnlyOnTwistieClick?a.expandOnlyOnTwistieClick:b=>a.expandOnlyOnTwistieClick(b.element),twistieAdditionalCssClass:void 0===a.twistieAdditionalCssClass?void 0:b=>a.twistieAdditionalCssClass(b.element),defaultFindVisibility:b=>b.hasChildren&&b.stale?1:"number"==typeof a.defaultFindVisibility?a.defaultFindVisibility:void 0===a.defaultFindVisibility?2:a.defaultFindVisibility(b.element),stickyScrollDelegate:a.stickyScrollDelegate}}function fv(a,b){b(a),a.children.forEach(a=>fv(a,b))}class fw{get onDidScroll(){return this.tree.onDidScroll}get onDidChangeFocus(){return a$.Jh.map(this.tree.onDidChangeFocus,fn)}get onDidChangeSelection(){return a$.Jh.map(this.tree.onDidChangeSelection,fn)}get onMouseDblClick(){return a$.Jh.map(this.tree.onMouseDblClick,fo)}get onPointer(){return a$.Jh.map(this.tree.onPointer,fo)}get onDidFocus(){return this.tree.onDidFocus}get onDidChangeModel(){return this.tree.onDidChangeModel}get onDidChangeCollapseState(){return this.tree.onDidChangeCollapseState}get onDidChangeStickyScrollFocused(){return this.tree.onDidChangeStickyScrollFocused}get onDidDispose(){return this.tree.onDidDispose}constructor(a,b,c,d,e,f={}){let g;this.user=a,this.dataSource=e,this.nodes=new Map,this.subTreeRefreshPromises=new Map,this.refreshPromises=new Map,this._onDidRender=new a$.vl,this._onDidChangeNodeSlowState=new a$.vl,this.nodeMapper=new eA(a=>new fl(a)),this.disposables=new _.Cm,this.identityProvider=f.identityProvider,this.autoExpandSingleChildren=void 0!==f.autoExpandSingleChildren&&f.autoExpandSingleChildren,this.sorter=f.sorter,this.getDefaultCollapseState=a=>f.collapseByDefault?f.collapseByDefault(a)?H.PreserveOrCollapsed:H.PreserveOrExpanded:void 0;let h=!1;if(f.findProvider&&(f.findWidgetEnabled??!0)&&f.keyboardNavigationLabelProvider&&f.contextViewProvider&&(h=!0,g=new fs(f.findProvider,f.keyboardNavigationLabelProvider,f.filter)),this.tree=this.createTree(a,b,c,d,{...f,findWidgetEnabled:!h,filter:g??f.filter}),this.root=fj({element:void 0,parent:null,hasChildren:!0,defaultCollapseState:void 0}),this.identityProvider&&(this.root={...this.root,id:null}),this.nodes.set(null,this.root),this.tree.onDidChangeCollapseState(this._onDidChangeCollapseState,this,this.disposables),h){const a={styles:f.findWidgetStyles,showNotFoundMessage:f.showNotFoundMessage,defaultFindMatchType:f.defaultFindMatchType,defaultFindMode:f.defaultFindMode};this.findController=this.disposables.add(new ft(this.tree,f.findProvider,g,this.tree.options.contextViewProvider,a)),this.focusNavigationFilter=a=>this.findController.shouldFocusWhenNavigating(a),this.onDidChangeFindOpenState=this.findController.onDidChangeOpenState,this.onDidChangeFindMode=this.findController.onDidChangeMode,this.onDidChangeFindMatchType=this.findController.onDidChangeMatchType}else this.onDidChangeFindOpenState=this.tree.onDidChangeFindOpenState,this.onDidChangeFindMode=this.tree.onDidChangeFindMode,this.onDidChangeFindMatchType=this.tree.onDidChangeFindMatchType}createTree(a,b,c,d,e){return new ff(a,b,new eN(c),d.map(a=>new fm(a,this.nodeMapper,this._onDidChangeNodeSlowState.event)),fu(e)||{})}updateOptions(a={}){this.findController&&(void 0!==a.defaultFindMode&&(this.findController.mode=a.defaultFindMode),void 0!==a.defaultFindMatchType&&(this.findController.matchType=a.defaultFindMatchType)),this.tree.updateOptions(a)}getHTMLElement(){return this.tree.getHTMLElement()}get scrollTop(){return this.tree.scrollTop}set scrollTop(a){this.tree.scrollTop=a}get scrollHeight(){return this.tree.scrollHeight}get renderHeight(){return this.tree.renderHeight}domFocus(){this.tree.domFocus()}layout(a,b){this.tree.layout(a,b)}style(a){this.tree.style(a)}getInput(){return this.root.element}async setInput(a,b){this.cancelAllRefreshPromises(),this.root.element=a;let c=b&&{viewState:b,focus:[],selection:[]};await this._updateChildren(a,!0,!1,c),c&&(this.tree.setFocus(c.focus),this.tree.setSelection(c.selection)),b&&"number"==typeof b.scrollTop&&(this.scrollTop=b.scrollTop)}cancelAllRefreshPromises(a=!1){this.refreshPromises.forEach(a=>a.cancel()),this.refreshPromises.clear(),a&&(this.subTreeRefreshPromises.forEach(a=>a.cancel()),this.subTreeRefreshPromises.clear())}async _updateChildren(a=this.root.element,b=!0,c=!1,d,e){if(void 0===this.root.element)throw new ez(this.user,"Tree input not set");this.root.refreshPromise&&(await this.root.refreshPromise,await a$.Jh.toPromise(this._onDidRender.event));let f=this.getDataNode(a);if(await this.refreshAndRenderNode(f,b,d,e),c)try{this.tree.rerender(f)}catch{}}rerender(a){if(void 0===a||a===this.root.element)return void this.tree.rerender();let b=this.getDataNode(a);this.tree.rerender(b)}getNode(a=this.root.element){let b=this.getDataNode(a),c=this.tree.getNode(b===this.root?null:b);return this.nodeMapper.map(c)}collapse(a,b=!1){let c=this.getDataNode(a);return this.tree.collapse(c===this.root?null:c,b)}async expand(a,b=!1){if(void 0===this.root.element)throw new ez(this.user,"Tree input not set");this.root.refreshPromise&&(await this.root.refreshPromise,await a$.Jh.toPromise(this._onDidRender.event));let c=this.getDataNode(a);if(this.tree.hasElement(c)&&!this.tree.isCollapsible(c)||(c.refreshPromise&&(await c.refreshPromise,await a$.Jh.toPromise(this._onDidRender.event)),c!==this.root&&!c.refreshPromise&&!this.tree.isCollapsed(c)))return!1;let d=this.tree.expand(c===this.root?null:c,b);return c.refreshPromise&&(await c.refreshPromise,await a$.Jh.toPromise(this._onDidRender.event)),d}setSelection(a,b){let c=a.map(a=>this.getDataNode(a));this.tree.setSelection(c,b)}getSelection(){return this.tree.getSelection().map(a=>a.element)}setFocus(a,b){let c=a.map(a=>this.getDataNode(a));this.tree.setFocus(c,b)}getFocus(){return this.tree.getFocus().map(a=>a.element)}reveal(a,b){this.tree.reveal(this.getDataNode(a),b)}getParentElement(a){let b=this.tree.getParentElement(this.getDataNode(a));return b&&b.element}getFirstElementChild(a=this.root.element){let b=this.getDataNode(a),c=this.tree.getFirstElementChild(b===this.root?null:b);return c&&c.element}getDataNode(a){let b=this.nodes.get(a===this.root.element?null:a);if(!b){let b=this.identityProvider?.getId(a).toString();throw new ez(this.user,`Data tree node not found${b?`: ${b}`:""}`)}return b}async refreshAndRenderNode(a,b,c,d){this.disposables.isDisposed||(await this.refreshNode(a,b,c),this.disposables.isDisposed||this.render(a,c,d))}async refreshNode(a,b,c){let d;if(this.subTreeRefreshPromises.forEach((e,f)=>{!d&&(f===a||fk(f,a)||fk(a,f))&&(d=e.then(()=>this.refreshNode(a,b,c)))}),d)return d;if(a!==this.root&&this.tree.getNode(a).collapsed){a.hasChildren=!!this.dataSource.hasChildren(a.element),a.stale=!0,this.setChildren(a,[],b,c);return}return this.doRefreshSubTree(a,b,c)}async doRefreshSubTree(a,b,c){let d=(0,be.SS)(async()=>{let d=await this.doRefreshNode(a,b,c);a.stale=!1,await be.HC.settled(d.map(a=>this.doRefreshSubTree(a,b,c)))});return a.refreshPromise=d,this.subTreeRefreshPromises.set(a,d),d.finally(()=>{a.refreshPromise=void 0,this.subTreeRefreshPromises.delete(a)}),d}async doRefreshNode(a,b,c){let d;if(a.hasChildren=!!this.dataSource.hasChildren(a.element),a.hasChildren){let b=this.doGetChildren(a);if((0,bf.xZ)(b))d=Promise.resolve(b);else{let c=(0,be.wR)(800);c.then(()=>{a.slow=!0,this._onDidChangeNodeSlowState.fire(a)},a=>null),d=b.finally(()=>c.cancel())}}else d=Promise.resolve(db.f.empty());try{let e=await d;return this.setChildren(a,e,b,c)}catch(b){if(a!==this.root&&this.tree.hasElement(a)&&this.tree.collapse(a),(0,bB.MB)(b))return[];throw b}finally{a.slow&&(a.slow=!1,this._onDidChangeNodeSlowState.fire(a))}}doGetChildren(a){let b=this.refreshPromises.get(a);if(b)return b;let c=this.dataSource.getChildren(a.element);return(0,bf.xZ)(c)?this.processChildren(c):(b=(0,be.SS)(async()=>this.processChildren(await c)),this.refreshPromises.set(a,b),b.finally(()=>{this.refreshPromises.delete(a)}))}_onDidChangeCollapseState({node:a,deep:b}){null!==a.element&&!a.collapsed&&a.element.stale&&(b?this.collapse(a.element.element):this.refreshAndRenderNode(a.element,!1).catch(bB.dz))}setChildren(a,b,c,d){let e=[...b];if(0===a.children.length&&0===e.length)return[];let f=new Map,g=new Map;for(let b of a.children)f.set(b.element,b),this.identityProvider&&g.set(b.id,{node:b,collapsed:this.tree.hasElement(b)&&this.tree.isCollapsed(b)});let h=[],i=e.map(b=>{let e=!!this.dataSource.hasChildren(b);if(!this.identityProvider){let c=fj({element:b,parent:a,hasChildren:e,defaultCollapseState:this.getDefaultCollapseState(b)});return e&&c.defaultCollapseState===H.PreserveOrExpanded&&h.push(c),c}let i=this.identityProvider.getId(b).toString(),j=g.get(i);if(j){let a=j.node;return f.delete(a.element),this.nodes.delete(a.element),this.nodes.set(b,a),a.element=b,a.hasChildren=e,c?j.collapsed?(a.children.forEach(a=>fv(a,a=>this.nodes.delete(a.element))),a.children.splice(0,a.children.length),a.stale=!0):h.push(a):e&&!j.collapsed&&h.push(a),a}let k=fj({element:b,parent:a,id:i,hasChildren:e,defaultCollapseState:this.getDefaultCollapseState(b)});return d&&d.viewState.focus&&d.viewState.focus.indexOf(i)>-1&&d.focus.push(k),d&&d.viewState.selection&&d.viewState.selection.indexOf(i)>-1&&d.selection.push(k),d&&d.viewState.expanded&&d.viewState.expanded.indexOf(i)>-1?h.push(k):e&&k.defaultCollapseState===H.PreserveOrExpanded&&h.push(k),k});for(let a of f.values())fv(a,a=>this.nodes.delete(a.element));for(let a of i)this.nodes.set(a.element,a);return(0,cL.V4)(a.children,0,a.children.length,i),a!==this.root&&this.autoExpandSingleChildren&&1===i.length&&0===h.length&&(i[0].forceExpanded=!0,h.push(i[0])),h}render(a,b,c){let d=a.children.map(a=>this.asTreeElement(a,b)),e=c&&{...c,diffIdentityProvider:c.diffIdentityProvider&&{getId:a=>c.diffIdentityProvider.getId(a.element),getGroupId:c.diffIdentityProvider.getGroupId?a=>c.diffIdentityProvider.getGroupId(a.element):void 0}};this.tree.setChildren(a===this.root?null:a,d,e),a!==this.root&&this.tree.setCollapsible(a,a.hasChildren),this._onDidRender.fire()}asTreeElement(a,b){let c;return a.stale?{element:a,collapsible:a.hasChildren,collapsed:!0}:(b&&b.viewState.expanded&&a.id&&b.viewState.expanded.indexOf(a.id)>-1?c=!1:a.forceExpanded?(c=!1,a.forceExpanded=!1):c=a.defaultCollapseState,{element:a,children:a.hasChildren?db.f.map(a.children,a=>this.asTreeElement(a,b)):[],collapsible:a.hasChildren,collapsed:c})}processChildren(a){return this.sorter&&(a=[...a].sort(this.sorter.compare.bind(this.sorter))),a}dispose(){this._onDidRender.dispose(),this._onDidChangeNodeSlowState.dispose(),this.disposables.dispose(),this.tree.dispose()}}class fx{get element(){return{elements:this.node.element.elements.map(a=>a.element),incompressible:this.node.element.incompressible}}get children(){return this.node.children.map(a=>new fx(a))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}constructor(a){this.node=a}}class fy{constructor(a,b,c,d){this.renderer=a,this.nodeMapper=b,this.compressibleNodeMapperProvider=c,this.onDidChangeTwistieState=d,this.renderedNodes=new Map,this.disposables=[],this.templateId=a.templateId}renderTemplate(a){return{templateData:this.renderer.renderTemplate(a)}}renderElement(a,b,c,d){this.renderer.renderElement(this.nodeMapper.map(a),b,c.templateData,d)}renderCompressedElements(a,b,c,d){this.renderer.renderCompressedElements(this.compressibleNodeMapperProvider().map(a),b,c.templateData,d)}renderTwistie(a,b){return a.slow?(b.classList.add(...dz.L.asClassNameArray(dx.W.treeItemLoading)),!0):(b.classList.remove(...dz.L.asClassNameArray(dx.W.treeItemLoading)),!1)}disposeElement(a,b,c,d){this.renderer.disposeElement?.(this.nodeMapper.map(a),b,c.templateData,d)}disposeCompressedElements(a,b,c,d){this.renderer.disposeCompressedElements?.(this.compressibleNodeMapperProvider().map(a),b,c.templateData,d)}disposeTemplate(a){this.renderer.disposeTemplate(a.templateData)}dispose(){this.renderedNodes.clear(),this.disposables=(0,_.AS)(this.disposables)}}class fz extends fw{constructor(a,b,c,d,e,f,g={}){super(a,b,c,e,f,g),this.compressionDelegate=d,this.compressibleNodeMapper=new eA(a=>new fx(a)),this.filter=g.filter}createTree(a,b,c,d,e){let f;return new fi(a,b,new eN(c),d.map(a=>new fy(a,this.nodeMapper,()=>this.compressibleNodeMapper,this._onDidChangeNodeSlowState.event)),(f=e&&fu(e))&&{...f,keyboardNavigationLabelProvider:f.keyboardNavigationLabelProvider&&{...f.keyboardNavigationLabelProvider,getCompressedNodeKeyboardNavigationLabel:a=>e.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(a.map(a=>a.element))},stickyScrollDelegate:f.stickyScrollDelegate}||{})}asTreeElement(a,b){return{incompressible:this.compressionDelegate.isIncompressible(a.element),...super.asTreeElement(a,b)}}render(a,b,c){if(!this.identityProvider)return super.render(a,b);let d=a=>this.identityProvider.getId(a).toString(),e=a=>{let b=new Set;for(let c of a){let a=this.tree.getCompressedTreeNode(c===this.root?null:c);if(a.element)for(let c of a.element.elements)b.add(d(c.element))}return b},f=e(this.tree.getSelection()),g=e(this.tree.getFocus());super.render(a,b,c);let h=this.getSelection(),i=!1,j=this.getFocus(),k=!1,l=a=>{let b=a.element;if(b)for(let a=0;a<b.elements.length;a++){let c=d(b.elements[a].element),e=b.elements[b.elements.length-1].element;f.has(c)&&-1===h.indexOf(e)&&(h.push(e),i=!0),g.has(c)&&-1===j.indexOf(e)&&(j.push(e),k=!0)}a.children.forEach(l)};l(this.tree.getCompressedTreeNode(a===this.root?null:a)),i&&this.setSelection(h),k&&this.setFocus(j)}processChildren(a){return this.filter&&(a=db.f.filter(a,a=>{var b;let c="boolean"==typeof(b=this.filter.filter(a,1))?+!!b:eD(b)?eE(b.visibility):eE(b);if(2===c)throw Error("Recursive tree visibility not supported in async data compressed trees");return 1===c})),super.processChildren(a)}}class fA extends e5{constructor(a,b,c,d,e,f={}){super(a,b,c,d,f),this.user=a,this.dataSource=e,this.identityProvider=f.identityProvider}createModel(a,b){return new e6(a,b)}}var fB=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},fC=function(a,b){return function(c,d){b(c,d,a)}};let fD=(0,aZ.u1)("listService");class fE{get lastFocusedList(){return this._lastFocusedWidget}constructor(){this.disposables=new _.Cm,this.lists=[],this._lastFocusedWidget=void 0}setLastFocusedList(a){a!==this._lastFocusedWidget&&(this._lastFocusedWidget?.getHTMLElement().classList.remove("last-focused"),this._lastFocusedWidget=a,this._lastFocusedWidget?.getHTMLElement().classList.add("last-focused"))}register(a,b){if(this.lists.some(b=>b.widget===a))throw Error("Cannot register the same widget multiple times");let c={widget:a,extraContextKeys:b};return this.lists.push(c),(0,a_.X7)(a.getHTMLElement())&&this.setLastFocusedList(a),(0,_.qE)(a.onDidFocus(()=>this.setLastFocusedList(a)),(0,_.s)(()=>this.lists.splice(this.lists.indexOf(c),1)),a.onDidDispose(()=>{this.lists=this.lists.filter(a=>a!==c),this._lastFocusedWidget===a&&this.setLastFocusedList(void 0)}))}dispose(){this.disposables.dispose()}}let fF=new bU.N1("listScrollAtBoundary","none");bU.M$.or(fF.isEqualTo("top"),fF.isEqualTo("both")),bU.M$.or(fF.isEqualTo("bottom"),fF.isEqualTo("both"));let fG=new bU.N1("listFocus",!0),fH=new bU.N1("treestickyScrollFocused",!1),fI=new bU.N1("listSupportsMultiselect",!0);bU.M$.and(fG,bU.M$.not(dd.aV),fH.negate());let fJ=new bU.N1("listHasSelectionOrFocus",!1),fK=new bU.N1("listDoubleSelection",!1),fL=new bU.N1("listMultiSelection",!1),fM=new bU.N1("listSelectionNavigation",!1),fN=new bU.N1("listSupportsFind",!0),fO=new bU.N1("treeElementCanCollapse",!1),fP=new bU.N1("treeElementHasParent",!1),fQ=new bU.N1("treeElementCanExpand",!1),fR=new bU.N1("treeElementHasChild",!1),fS=new bU.N1("treeFindOpen",!1),fT="listTypeNavigationMode",fU="listAutomaticKeyboardNavigation";function fV(a,b){let c=a.createScoped(b.getHTMLElement());return fG.bindTo(c),c}function fW(a,b){let c=fF.bindTo(a),d=()=>{let a=0===b.scrollTop,d=b.scrollHeight-b.renderHeight-b.scrollTop<1;a&&d?c.set("both"):a?c.set("top"):d?c.set("bottom"):c.set("none")};return d(),b.onDidScroll(d)}let fX="workbench.list.multiSelectModifier",fY="workbench.list.openMode",fZ="workbench.list.horizontalScrolling",f$="workbench.list.defaultFindMode",f_="workbench.list.typeNavigationMode",f0="workbench.list.keyboardNavigation",f1="workbench.list.scrollByPage",f2="workbench.list.defaultFindMatchType",f3="workbench.tree.indent",f4="workbench.tree.renderIndentGuides",f5="workbench.list.smoothScrolling",f6="workbench.list.mouseWheelScrollSensitivity",f7="workbench.list.fastScrollSensitivity",f8="workbench.tree.expandMode",f9="workbench.tree.enableStickyScroll",ga="workbench.tree.stickyScrollMaxItemCount";function gb(a){return"alt"===a.getValue(fX)}class gc extends _.jG{constructor(a){super(),this.configurationService=a,this.useAltAsMultipleSelectionModifier=gb(a),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(a=>{a.affectsConfiguration(fX)&&(this.useAltAsMultipleSelectionModifier=gb(this.configurationService))}))}isSelectionSingleChangeEvent(a){return this.useAltAsMultipleSelectionModifier?a.browserEvent.altKey:(0,ec.tX)(a)}isSelectionRangeChangeEvent(a){return(0,ec.mh)(a)}}function gd(a,b){var c;let d,e=a.get(aB.pG),f=a.get(a0.b),g=new _.Cm;return[{...b,keyboardNavigationDelegate:{mightProducePrintableCharacter:a=>f.mightProducePrintableCharacter(a)},smoothScrolling:!!e.getValue(f5),mouseWheelScrollSensitivity:e.getValue(f6),fastScrollSensitivity:e.getValue(f7),multipleSelectionController:b.multipleSelectionController??g.add(new gc(e)),keyboardNavigationEventFilter:(c=f,d=!1,a=>{if(a.toKeyCodeChord().isModifierKey())return!1;if(d)return d=!1,!1;let b=c.softDispatch(a,a.target);return 1===b.kind?(d=!0,!1):(d=!1,0===b.kind)}),scrollByPage:!!e.getValue(f1)},g]}let ge=class extends ec.B8{constructor(a,b,c,d,e,f,g,h,i){const j=void 0!==e.horizontalScrolling?e.horizontalScrolling:!!h.getValue(fZ),[k,l]=i.invokeFunction(gd,e);super(a,b,c,d,{keyboardSupport:!1,...k,horizontalScrolling:j}),this.disposables.add(l),this.contextKeyService=fV(f,this),this.disposables.add(fW(this.contextKeyService,this)),this.listSupportsMultiSelect=fI.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==e.multipleSelectionSupport),fM.bindTo(this.contextKeyService).set(!!e.selectionNavigation),this.listHasSelectionOrFocus=fJ.bindTo(this.contextKeyService),this.listDoubleSelection=fK.bindTo(this.contextKeyService),this.listMultiSelection=fL.bindTo(this.contextKeyService),this.horizontalScrolling=e.horizontalScrolling,this._useAltAsMultipleSelectionModifier=gb(h),this.disposables.add(this.contextKeyService),this.disposables.add(g.register(this)),this.updateStyles(e.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{let a=this.getSelection(),b=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(a.length>0||b.length>0),this.listMultiSelection.set(a.length>1),this.listDoubleSelection.set(2===a.length)})})),this.disposables.add(this.onDidChangeFocus(()=>{let a=this.getSelection(),b=this.getFocus();this.listHasSelectionOrFocus.set(a.length>0||b.length>0)})),this.disposables.add(h.onDidChangeConfiguration(a=>{a.affectsConfiguration(fX)&&(this._useAltAsMultipleSelectionModifier=gb(h));let b={};if(a.affectsConfiguration(fZ)&&void 0===this.horizontalScrolling){let a=!!h.getValue(fZ);b={...b,horizontalScrolling:a}}if(a.affectsConfiguration(f1)){let a=!!h.getValue(f1);b={...b,scrollByPage:a}}if(a.affectsConfiguration(f5)){let a=!!h.getValue(f5);b={...b,smoothScrolling:a}}if(a.affectsConfiguration(f6)){let a=h.getValue(f6);b={...b,mouseWheelScrollSensitivity:a}}if(a.affectsConfiguration(f7)){let a=h.getValue(f7);b={...b,fastScrollSensitivity:a}}Object.keys(b).length>0&&this.updateOptions(b)})),this.navigator=new gi(this,{configurationService:h,...e}),this.disposables.add(this.navigator)}updateOptions(a){super.updateOptions(a),void 0!==a.overrideStyles&&this.updateStyles(a.overrideStyles),void 0!==a.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!a.multipleSelectionSupport)}updateStyles(a){this.style(a?(0,dI.t8)(a):dI.IN)}};ge=fB([fC(5,bU.fN),fC(6,fD),fC(7,aB.pG),fC(8,aZ._Y)],ge);let gf=class extends ef{constructor(a,b,c,d,e,f,g,h,i){const j=void 0!==e.horizontalScrolling?e.horizontalScrolling:!!h.getValue(fZ),[k,l]=i.invokeFunction(gd,e);super(a,b,c,d,{keyboardSupport:!1,...k,horizontalScrolling:j}),this.disposables=new _.Cm,this.disposables.add(l),this.contextKeyService=fV(f,this),this.disposables.add(fW(this.contextKeyService,this.widget)),this.horizontalScrolling=e.horizontalScrolling,this.listSupportsMultiSelect=fI.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==e.multipleSelectionSupport),fM.bindTo(this.contextKeyService).set(!!e.selectionNavigation),this._useAltAsMultipleSelectionModifier=gb(h),this.disposables.add(this.contextKeyService),this.disposables.add(g.register(this)),this.updateStyles(e.overrideStyles),this.disposables.add(h.onDidChangeConfiguration(a=>{a.affectsConfiguration(fX)&&(this._useAltAsMultipleSelectionModifier=gb(h));let b={};if(a.affectsConfiguration(fZ)&&void 0===this.horizontalScrolling){let a=!!h.getValue(fZ);b={...b,horizontalScrolling:a}}if(a.affectsConfiguration(f1)){let a=!!h.getValue(f1);b={...b,scrollByPage:a}}if(a.affectsConfiguration(f5)){let a=!!h.getValue(f5);b={...b,smoothScrolling:a}}if(a.affectsConfiguration(f6)){let a=h.getValue(f6);b={...b,mouseWheelScrollSensitivity:a}}if(a.affectsConfiguration(f7)){let a=h.getValue(f7);b={...b,fastScrollSensitivity:a}}Object.keys(b).length>0&&this.updateOptions(b)})),this.navigator=new gi(this,{configurationService:h,...e}),this.disposables.add(this.navigator)}updateOptions(a){super.updateOptions(a),void 0!==a.overrideStyles&&this.updateStyles(a.overrideStyles),void 0!==a.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!a.multipleSelectionSupport)}updateStyles(a){this.style(a?(0,dI.t8)(a):dI.IN)}dispose(){this.disposables.dispose(),super.dispose()}};gf=fB([fC(5,bU.fN),fC(6,fD),fC(7,aB.pG),fC(8,aZ._Y)],gf);let gg=class extends eu{constructor(a,b,c,d,e,f,g,h,i,j){const k=void 0!==f.horizontalScrolling?f.horizontalScrolling:!!i.getValue(fZ),[l,m]=j.invokeFunction(gd,f);super(a,b,c,d,e,{keyboardSupport:!1,...l,horizontalScrolling:k}),this.disposables.add(m),this.contextKeyService=fV(g,this),this.disposables.add(fW(this.contextKeyService,this)),this.listSupportsMultiSelect=fI.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==f.multipleSelectionSupport),fM.bindTo(this.contextKeyService).set(!!f.selectionNavigation),this.listHasSelectionOrFocus=fJ.bindTo(this.contextKeyService),this.listDoubleSelection=fK.bindTo(this.contextKeyService),this.listMultiSelection=fL.bindTo(this.contextKeyService),this.horizontalScrolling=f.horizontalScrolling,this._useAltAsMultipleSelectionModifier=gb(i),this.disposables.add(this.contextKeyService),this.disposables.add(h.register(this)),this.updateStyles(f.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{let a=this.getSelection(),b=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(a.length>0||b.length>0),this.listMultiSelection.set(a.length>1),this.listDoubleSelection.set(2===a.length)})})),this.disposables.add(this.onDidChangeFocus(()=>{let a=this.getSelection(),b=this.getFocus();this.listHasSelectionOrFocus.set(a.length>0||b.length>0)})),this.disposables.add(i.onDidChangeConfiguration(a=>{a.affectsConfiguration(fX)&&(this._useAltAsMultipleSelectionModifier=gb(i));let b={};if(a.affectsConfiguration(fZ)&&void 0===this.horizontalScrolling){let a=!!i.getValue(fZ);b={...b,horizontalScrolling:a}}if(a.affectsConfiguration(f1)){let a=!!i.getValue(f1);b={...b,scrollByPage:a}}if(a.affectsConfiguration(f5)){let a=!!i.getValue(f5);b={...b,smoothScrolling:a}}if(a.affectsConfiguration(f6)){let a=i.getValue(f6);b={...b,mouseWheelScrollSensitivity:a}}if(a.affectsConfiguration(f7)){let a=i.getValue(f7);b={...b,fastScrollSensitivity:a}}Object.keys(b).length>0&&this.updateOptions(b)})),this.navigator=new gj(this,{configurationService:i,...f}),this.disposables.add(this.navigator)}updateOptions(a){super.updateOptions(a),void 0!==a.overrideStyles&&this.updateStyles(a.overrideStyles),void 0!==a.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!a.multipleSelectionSupport)}updateStyles(a){this.style(a?(0,dI.t8)(a):dI.IN)}dispose(){this.disposables.dispose(),super.dispose()}};gg=fB([fC(6,bU.fN),fC(7,fD),fC(8,aB.pG),fC(9,aZ._Y)],gg);class gh extends _.jG{constructor(a,b){super(),this.widget=a,this._onDidOpen=this._register(new a$.vl),this.onDidOpen=this._onDidOpen.event,this._register(a$.Jh.filter(this.widget.onDidChangeSelection,a=>(0,a_.kx)(a.browserEvent))(a=>this.onSelectionFromKeyboard(a))),this._register(this.widget.onPointer(a=>this.onPointer(a.element,a.browserEvent))),this._register(this.widget.onMouseDblClick(a=>this.onMouseDblClick(a.element,a.browserEvent))),"boolean"!=typeof b?.openOnSingleClick&&b?.configurationService?(this.openOnSingleClick=b?.configurationService.getValue(fY)!=="doubleClick",this._register(b?.configurationService.onDidChangeConfiguration(a=>{a.affectsConfiguration(fY)&&(this.openOnSingleClick=b?.configurationService.getValue(fY)!=="doubleClick")}))):this.openOnSingleClick=b?.openOnSingleClick??!0}onSelectionFromKeyboard(a){if(1!==a.elements.length)return;let b=a.browserEvent,c="boolean"!=typeof b.preserveFocus||b.preserveFocus,d="boolean"==typeof b.pinned?b.pinned:!c;this._open(this.getSelectedElement(),c,d,!1,a.browserEvent)}onPointer(a,b){if(!this.openOnSingleClick||2===b.detail)return;let c=1===b.button,d=b.ctrlKey||b.metaKey||b.altKey;this._open(a,!0,c,d,b)}onMouseDblClick(a,b){if(!b)return;let c=b.target;if(c.classList.contains("monaco-tl-twistie")||c.classList.contains("monaco-icon-label")&&c.classList.contains("folder-icon")&&b.offsetX<16)return;let d=b.ctrlKey||b.metaKey||b.altKey;this._open(a,!1,!0,d,b)}_open(a,b,c,d,e){a&&this._onDidOpen.fire({editorOptions:{preserveFocus:b,pinned:c,revealIfVisible:!0},sideBySide:d,element:a,browserEvent:e})}}class gi extends gh{constructor(a,b){super(a,b),this.widget=a}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class gj extends gh{constructor(a,b){super(a,b)}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class gk extends gh{constructor(a,b){super(a,b)}getSelectedElement(){return this.widget.getSelection()[0]??void 0}}let gl=class extends ff{get onDidOpen(){return this.internals.onDidOpen}constructor(a,b,c,d,e,f,g,h,i){const{options:j,getTypeNavigationMode:k,disposable:l}=f.invokeFunction(gs,e);super(a,b,c,d,j),this.disposables.add(l),this.internals=new gt(this,e,k,e.overrideStyles,g,h,i),this.disposables.add(this.internals)}updateOptions(a={}){super.updateOptions(a),a.overrideStyles&&this.internals.updateStyleOverrides(a.overrideStyles),this.internals.updateOptions(a)}};gl=fB([fC(5,aZ._Y),fC(6,bU.fN),fC(7,fD),fC(8,aB.pG)],gl);let gm=class extends fi{constructor(a,b,c,d,e,f,g,h,i){const{options:j,getTypeNavigationMode:k,disposable:l}=f.invokeFunction(gs,e);super(a,b,c,d,j),this.disposables.add(l),this.internals=new gt(this,e,k,e.overrideStyles,g,h,i),this.disposables.add(this.internals)}updateOptions(a={}){super.updateOptions(a),a.overrideStyles&&this.internals.updateStyleOverrides(a.overrideStyles),this.internals.updateOptions(a)}};gm=fB([fC(5,aZ._Y),fC(6,bU.fN),fC(7,fD),fC(8,aB.pG)],gm);let gn=class extends fA{constructor(a,b,c,d,e,f,g,h,i,j){const{options:k,getTypeNavigationMode:l,disposable:m}=g.invokeFunction(gs,f);super(a,b,c,d,e,k),this.disposables.add(m),this.internals=new gt(this,f,l,f.overrideStyles,h,i,j),this.disposables.add(this.internals)}updateOptions(a={}){super.updateOptions(a),void 0!==a.overrideStyles&&this.internals.updateStyleOverrides(a.overrideStyles),this.internals.updateOptions(a)}};gn=fB([fC(6,aZ._Y),fC(7,bU.fN),fC(8,fD),fC(9,aB.pG)],gn);let go=class extends fw{get onDidOpen(){return this.internals.onDidOpen}constructor(a,b,c,d,e,f,g,h,i,j){const{options:k,getTypeNavigationMode:l,disposable:m}=g.invokeFunction(gs,f);super(a,b,c,d,e,k),this.disposables.add(m),this.internals=new gt(this,f,l,f.overrideStyles,h,i,j),this.disposables.add(this.internals)}updateOptions(a={}){super.updateOptions(a),a.overrideStyles&&this.internals.updateStyleOverrides(a.overrideStyles),this.internals.updateOptions(a)}};go=fB([fC(6,aZ._Y),fC(7,bU.fN),fC(8,fD),fC(9,aB.pG)],go);let gp=class extends fz{constructor(a,b,c,d,e,f,g,h,i,j,k){const{options:l,getTypeNavigationMode:m,disposable:n}=h.invokeFunction(gs,g);super(a,b,c,d,e,f,l),this.disposables.add(n),this.internals=new gt(this,g,m,g.overrideStyles,i,j,k),this.disposables.add(this.internals)}updateOptions(a){super.updateOptions(a),this.internals.updateOptions(a)}};function gq(a){let b=a.getValue(f$);if("highlight"===b)return K.Highlight;if("filter"===b)return K.Filter;let c=a.getValue(f0);return"simple"===c||"highlight"===c?K.Highlight:"filter"===c?K.Filter:void 0}function gr(a){let b=a.getValue(f2);return"fuzzy"===b?L.Fuzzy:"contiguous"===b?L.Contiguous:void 0}function gs(a,b){let c=a.get(aB.pG),d=a.get(aY.l),e=a.get(bU.fN),f=a.get(aZ._Y),g=void 0!==b.horizontalScrolling?b.horizontalScrolling:!!c.getValue(fZ),[h,i]=f.invokeFunction(gd,b),j=b.paddingBottom,k=void 0!==b.renderIndentGuides?b.renderIndentGuides:c.getValue(f4);return{getTypeNavigationMode:()=>{let a=e.getContextKeyValue(fT);if("automatic"===a)return ec._C.Automatic;if("trigger"===a||!1===e.getContextKeyValue(fU))return ec._C.Trigger;let b=c.getValue(f_);return"automatic"===b?ec._C.Automatic:"trigger"===b?ec._C.Trigger:void 0},disposable:i,options:{keyboardSupport:!1,...h,indent:"number"==typeof c.getValue(f3)?c.getValue(f3):void 0,renderIndentGuides:k,smoothScrolling:!!c.getValue(f5),defaultFindMode:b.defaultFindMode??gq(c),defaultFindMatchType:b.defaultFindMatchType??gr(c),horizontalScrolling:g,scrollByPage:!!c.getValue(f1),paddingBottom:j,hideTwistiesOfChildlessElements:b.hideTwistiesOfChildlessElements,expandOnlyOnTwistieClick:b.expandOnlyOnTwistieClick??"doubleClick"===c.getValue(f8),contextViewProvider:d,findWidgetStyles:dI.Dk,enableStickyScroll:!!c.getValue(f9),stickyScrollMaxItemCount:Number(c.getValue(ga))}}}gp=fB([fC(7,aZ._Y),fC(8,bU.fN),fC(9,fD),fC(10,aB.pG)],gp);let gt=class{get onDidOpen(){return this.navigator.onDidOpen}constructor(a,b,c,d,e,f,g){this.tree=a,this.disposables=[],this.contextKeyService=fV(e,a),this.disposables.push(fW(this.contextKeyService,a)),this.listSupportsMultiSelect=fI.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==b.multipleSelectionSupport),fM.bindTo(this.contextKeyService).set(!!b.selectionNavigation),this.listSupportFindWidget=fN.bindTo(this.contextKeyService),this.listSupportFindWidget.set(b.findWidgetEnabled??!0),this.hasSelectionOrFocus=fJ.bindTo(this.contextKeyService),this.hasDoubleSelection=fK.bindTo(this.contextKeyService),this.hasMultiSelection=fL.bindTo(this.contextKeyService),this.treeElementCanCollapse=fO.bindTo(this.contextKeyService),this.treeElementHasParent=fP.bindTo(this.contextKeyService),this.treeElementCanExpand=fQ.bindTo(this.contextKeyService),this.treeElementHasChild=fR.bindTo(this.contextKeyService),this.treeFindOpen=fS.bindTo(this.contextKeyService),this.treeStickyScrollFocused=fH.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=gb(g),this.updateStyleOverrides(d);const h=()=>{let b=a.getFocus()[0];if(!b)return;let c=a.getNode(b);this.treeElementCanCollapse.set(c.collapsible&&!c.collapsed),this.treeElementHasParent.set(!!a.getParentElement(b)),this.treeElementCanExpand.set(c.collapsible&&c.collapsed),this.treeElementHasChild.set(!!a.getFirstElementChild(b))},i=new Set;i.add(fT),i.add(fU),this.disposables.push(this.contextKeyService,f.register(a),a.onDidChangeSelection(()=>{let b=a.getSelection(),c=a.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.hasSelectionOrFocus.set(b.length>0||c.length>0),this.hasMultiSelection.set(b.length>1),this.hasDoubleSelection.set(2===b.length)})}),a.onDidChangeFocus(()=>{let b=a.getSelection(),c=a.getFocus();this.hasSelectionOrFocus.set(b.length>0||c.length>0),h()}),a.onDidChangeCollapseState(h),a.onDidChangeModel(h),a.onDidChangeFindOpenState(a=>this.treeFindOpen.set(a)),a.onDidChangeStickyScrollFocused(a=>this.treeStickyScrollFocused.set(a)),g.onDidChangeConfiguration(d=>{let e={};if(d.affectsConfiguration(fX)&&(this._useAltAsMultipleSelectionModifier=gb(g)),d.affectsConfiguration(f3)){let a=g.getValue(f3);e={...e,indent:a}}if(d.affectsConfiguration(f4)&&void 0===b.renderIndentGuides){let a=g.getValue(f4);e={...e,renderIndentGuides:a}}if(d.affectsConfiguration(f5)){let a=!!g.getValue(f5);e={...e,smoothScrolling:a}}if(d.affectsConfiguration(f$)||d.affectsConfiguration(f0)){let a=gq(g);e={...e,defaultFindMode:a}}if(d.affectsConfiguration(f_)||d.affectsConfiguration(f0)){let a=c();e={...e,typeNavigationMode:a}}if(d.affectsConfiguration(f2)){let a=gr(g);e={...e,defaultFindMatchType:a}}if(d.affectsConfiguration(fZ)&&void 0===b.horizontalScrolling){let a=!!g.getValue(fZ);e={...e,horizontalScrolling:a}}if(d.affectsConfiguration(f1)){let a=!!g.getValue(f1);e={...e,scrollByPage:a}}if(d.affectsConfiguration(f8)&&void 0===b.expandOnlyOnTwistieClick&&(e={...e,expandOnlyOnTwistieClick:"doubleClick"===g.getValue(f8)}),d.affectsConfiguration(f9)){let a=g.getValue(f9);e={...e,enableStickyScroll:a}}if(d.affectsConfiguration(ga)){let a=Math.max(1,g.getValue(ga));e={...e,stickyScrollMaxItemCount:a}}if(d.affectsConfiguration(f6)){let a=g.getValue(f6);e={...e,mouseWheelScrollSensitivity:a}}if(d.affectsConfiguration(f7)){let a=g.getValue(f7);e={...e,fastScrollSensitivity:a}}Object.keys(e).length>0&&a.updateOptions(e)}),this.contextKeyService.onDidChangeContext(b=>{b.affectsSome(i)&&a.updateOptions({typeNavigationMode:c()})})),this.navigator=new gk(a,{configurationService:g,...b}),this.disposables.push(this.navigator)}updateOptions(a){void 0!==a.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!a.multipleSelectionSupport)}updateStyleOverrides(a){this.tree.style(a?(0,dI.t8)(a):dI.IN)}dispose(){this.disposables=(0,_.AS)(this.disposables)}};gt=fB([fC(4,bU.fN),fC(5,fD),fC(6,aB.pG)],gt),c3.O.as(c2.Fd.Configuration).registerConfiguration({id:"workbench",order:7,title:(0,a3.kg)(1768,"Workbench"),type:"object",properties:{[fX]:{type:"string",enum:["ctrlCmd","alt"],markdownEnumDescriptions:[(0,a3.kg)(1769,"Maps to `Control` on Windows and Linux and to `Command` on macOS."),(0,a3.kg)(1770,"Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:(0,a3.kg)(1771,"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.")},[fY]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:(0,a3.kg)(1772,"Controls how to open items in trees and lists using the mouse (if supported). Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[fZ]:{type:"boolean",default:!1,description:(0,a3.kg)(1773,"Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.")},[f1]:{type:"boolean",default:!1,description:(0,a3.kg)(1774,"Controls whether clicks in the scrollbar scroll page by page.")},[f3]:{type:"number",default:8,minimum:4,maximum:40,description:(0,a3.kg)(1775,"Controls tree indentation in pixels.")},[f4]:{type:"string",enum:["none","onHover","always"],default:"onHover",description:(0,a3.kg)(1776,"Controls whether the tree should render indent guides.")},[f5]:{type:"boolean",default:!1,description:(0,a3.kg)(1777,"Controls whether lists and trees have smooth scrolling.")},[f6]:{type:"number",default:1,markdownDescription:(0,a3.kg)(1778,"A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")},[f7]:{type:"number",default:5,markdownDescription:(0,a3.kg)(1779,"Scrolling speed multiplier when pressing `Alt`.")},[f$]:{type:"string",enum:["highlight","filter"],enumDescriptions:[(0,a3.kg)(1780,"Highlight elements when searching. Further up and down navigation will traverse only the highlighted elements."),(0,a3.kg)(1781,"Filter elements when searching.")],default:"highlight",description:(0,a3.kg)(1782,"Controls the default find mode for lists and trees in the workbench.")},[f0]:{type:"string",enum:["simple","highlight","filter"],enumDescriptions:[(0,a3.kg)(1783,"Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),(0,a3.kg)(1784,"Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),(0,a3.kg)(1785,"Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:(0,a3.kg)(1786,"Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter."),deprecated:!0,deprecationMessage:(0,a3.kg)(1787,"Please use 'workbench.list.defaultFindMode' and 'workbench.list.typeNavigationMode' instead.")},[f2]:{type:"string",enum:["fuzzy","contiguous"],enumDescriptions:[(0,a3.kg)(1788,"Use fuzzy matching when searching."),(0,a3.kg)(1789,"Use contiguous matching when searching.")],default:"fuzzy",description:(0,a3.kg)(1790,"Controls the type of matching used when searching lists and trees in the workbench.")},[f8]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:(0,a3.kg)(1791,"Controls how tree folders are expanded when clicking the folder names. Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[f9]:{type:"boolean",default:!0,description:(0,a3.kg)(1792,"Controls whether sticky scrolling is enabled in trees.")},[ga]:{type:"number",minimum:1,default:7,markdownDescription:(0,a3.kg)(1793,"Controls the number of sticky elements displayed in the tree when {0} is enabled.","`#workbench.tree.enableStickyScroll#`")},[f_]:{type:"string",enum:["automatic","trigger"],default:"automatic",markdownDescription:(0,a3.kg)(1794,"Controls how type navigation works in lists and trees in the workbench. When set to `trigger`, type navigation begins once the `list.triggerTypeNavigation` command is run.")}}});class gu extends _.jG{constructor(a,b=[]){super(),this.logger=new cv.Dk([a,...b]),this._register(a.onDidChangeLogLevel(a=>this.setLevel(a)))}get onDidChangeLogLevel(){return this.logger.onDidChangeLogLevel}setLevel(a){this.logger.setLevel(a)}getLevel(){return this.logger.getLevel()}trace(a,...b){this.logger.trace(a,...b)}debug(a,...b){this.logger.debug(a,...b)}info(a,...b){this.logger.info(a,...b)}warn(a,...b){this.logger.warn(a,...b)}error(a,...b){this.logger.error(a,...b)}}(u=N||(N={}))[u.Hint=1]="Hint",u[u.Info=2]="Info",u[u.Warning=4]="Warning",u[u.Error=8]="Error",(v=N||(N={})).compare=function(a,b){return b-a},(d=Object.create(null))[v.Error]=(0,a3.kg)(1795,"Error"),d[v.Warning]=(0,a3.kg)(1796,"Warning"),d[v.Info]=(0,a3.kg)(1797,"Info"),v.toString=function(a){return d[a]||""},(e=Object.create(null))[v.Error]=(0,a3.kg)(1798,"Errors"),e[v.Warning]=(0,a3.kg)(1799,"Warnings"),e[v.Info]=(0,a3.kg)(1800,"Infos"),v.toStringPlural=function(a){return e[a]||""},v.fromSeverity=function(a){switch(a){case bD.A.Error:return v.Error;case bD.A.Warning:return v.Warning;case bD.A.Info:return v.Info;case bD.A.Ignore:return v.Hint}},v.toSeverity=function(a){switch(a){case v.Error:return bD.A.Error;case v.Warning:return bD.A.Warning;case v.Info:return bD.A.Info;case v.Hint:return bD.A.Ignore}};var gv=O||(O={});function gw(a,b){let c=[""];return a.source?c.push(a.source.replace("\xa6","\\\xa6")):c.push(""),a.code?"string"==typeof a.code?c.push(a.code.replace("\xa6","\\\xa6")):c.push(a.code.value.replace("\xa6","\\\xa6")):c.push(""),void 0!==a.severity&&null!==a.severity?c.push(N.toString(a.severity)):c.push(""),a.message&&b?c.push(a.message.replace("\xa6","\\\xa6")):c.push(""),void 0!==a.startLineNumber&&null!==a.startLineNumber?c.push(a.startLineNumber.toString()):c.push(""),void 0!==a.startColumn&&null!==a.startColumn?c.push(a.startColumn.toString()):c.push(""),void 0!==a.endLineNumber&&null!==a.endLineNumber?c.push(a.endLineNumber.toString()):c.push(""),void 0!==a.endColumn&&null!==a.endColumn?c.push(a.endColumn.toString()):c.push(""),c.push(""),c.join("\xa6")}gv.makeKey=function(a){return gw(a,!0)},gv.makeKeyOptionalMessage=gw;let gx=(0,aZ.u1)("markerService"),gy=new Set([bC.ny.inMemory,bC.ny.vscodeSourceControl,bC.ny.walkThrough,bC.ny.walkThroughSnippet,bC.ny.vscodeChatCodeBlock,bC.ny.vscodeTerminal]);class gz{constructor(){this._byResource=new b4.fT,this._byOwner=new Map}set(a,b,c){let d=this._byResource.get(a);d||(d=new Map,this._byResource.set(a,d)),d.set(b,c);let e=this._byOwner.get(b);e||(e=new b4.fT,this._byOwner.set(b,e)),e.set(a,c)}get(a,b){let c=this._byResource.get(a);return c?.get(b)}delete(a,b){let c=!1,d=!1,e=this._byResource.get(a);e&&(c=e.delete(b));let f=this._byOwner.get(b);if(f&&(d=f.delete(a)),c!==d)throw Error("illegal state");return c&&d}values(a){return"string"==typeof a?this._byOwner.get(a)?.values()??db.f.empty():ab.r.isUri(a)?this._byResource.get(a)?.values()??db.f.empty():db.f.map(db.f.concat(...this._byOwner.values()),a=>a[1])}}class gA{constructor(a){this.errors=0,this.infos=0,this.warnings=0,this.unknowns=0,this._data=new b4.fT,this._service=a,this._subscription=a.onMarkerChanged(this._update,this)}dispose(){this._subscription.dispose()}_update(a){for(let b of a){let a=this._data.get(b);a&&this._substract(a);let c=this._resourceStats(b);this._add(c),this._data.set(b,c)}}_resourceStats(a){let b={errors:0,warnings:0,infos:0,unknowns:0};if(gy.has(a.scheme))return b;for(let{severity:c}of this._service.read({resource:a}))c===N.Error?b.errors+=1:c===N.Warning?b.warnings+=1:c===N.Info?b.infos+=1:b.unknowns+=1;return b}_substract(a){this.errors-=a.errors,this.warnings-=a.warnings,this.infos-=a.infos,this.unknowns-=a.unknowns}_add(a){this.errors+=a.errors,this.warnings+=a.warnings,this.infos+=a.infos,this.unknowns+=a.unknowns}}class gB{constructor(){this._onMarkerChanged=new a$.QT({merge:gB._merge}),this.onMarkerChanged=this._onMarkerChanged.event,this._data=new gz,this._stats=new gA(this),this._filteredResources=new b4.fT}dispose(){this._stats.dispose(),this._onMarkerChanged.dispose()}remove(a,b){for(let c of b||[])this.changeOne(a,c,[])}changeOne(a,b,c){if((0,cL.Ct)(c))this._data.delete(b,a)&&this._onMarkerChanged.fire([b]);else{let d=[];for(let e of c){let c=gB._toMarker(a,b,e);c&&d.push(c)}this._data.set(b,a,d),this._onMarkerChanged.fire([b])}}static _toMarker(a,b,c){let{code:d,severity:e,message:f,source:g,startLineNumber:h,startColumn:i,endLineNumber:j,endColumn:k,relatedInformation:l,modelVersionId:m,tags:n,origin:o}=c;if(f)return i=i>0?i:1,j=j>=(h=h>0?h:1)?j:h,k=k>0?k:i,{resource:b,owner:a,code:d,severity:e,message:f,source:g,startLineNumber:h,startColumn:i,endLineNumber:j,endColumn:k,relatedInformation:l,modelVersionId:m,tags:n,origin:o}}changeAll(a,b){let c=[],d=this._data.values(a);if(d)for(let b of d){let d=db.f.first(b);d&&(c.push(d.resource),this._data.delete(d.resource,a))}if((0,cL.EI)(b)){let d=new b4.fT;for(let{resource:e,marker:f}of b){let b=gB._toMarker(a,e,f);if(!b)continue;let g=d.get(e);g?g.push(b):(d.set(e,[b]),c.push(e))}for(let[b,c]of d)this._data.set(b,a,c)}c.length>0&&this._onMarkerChanged.fire(c)}_createFilteredMarker(a,b){let c=1===b.length?(0,a3.kg)(1801,'Problems are paused because: "{0}"',b[0]):(0,a3.kg)(1802,'Problems are paused because: "{0}" and {1} more',b[0],b.length-1);return{owner:"markersFilter",resource:a,severity:N.Info,message:c,startLineNumber:1,startColumn:1,endLineNumber:1,endColumn:1}}read(a=Object.create(null)){let{owner:b,resource:c,severities:d,take:e}=a;if((!e||e<0)&&(e=-1),b&&c){let f=a.ignoreResourceFilters?void 0:this._filteredResources.get(c);if(f?.length)return[this._createFilteredMarker(c,f)];let g=this._data.get(c,b);if(!g)return[];let h=[];for(let b of g){if(e>0&&h.length===e)break;let f=a.ignoreResourceFilters?void 0:this._filteredResources.get(c);f?.length?h.push(this._createFilteredMarker(c,f)):gB._accept(b,d)&&h.push(b)}return h}{let f=b||c?this._data.values(c??b):this._data.values(),g=[],h=new b4.rm;for(let b of f)for(let c of b){if(h.has(c.resource))continue;if(e>0&&g.length===e)break;let b=a.ignoreResourceFilters?void 0:this._filteredResources.get(c.resource);b?.length?(g.push(this._createFilteredMarker(c.resource,b)),h.add(c.resource)):gB._accept(c,d)&&g.push(c)}return g}}static _accept(a,b){return void 0===b||(b&a.severity)===a.severity}static _merge(a){let b=new b4.fT;for(let c of a)for(let a of c)b.set(a,!0);return Array.from(b.keys())}}var gC=c(21398),gD=c(20330),gE=c(3724),gF=c(14670),gG=c(87175);class gH{constructor(){this._modifierObservables=new WeakMap}readModifierKeyStatus(a,b){let c=a instanceof Window?a:(0,a_.zk)(a),d=this._modifierObservables.get(c);if(!d){let a=a_.Di.getInstance();d=(0,gF.y0)(this,a.event,()=>({ctrlKey:a.keyStatus.ctrlKey,shiftKey:a.keyStatus.shiftKey,altKey:a.keyStatus.altKey,metaKey:a.keyStatus.metaKey})),this._modifierObservables.set(c,d)}return d.read(b)}createFocusTracker(a,b){let c=b.add((0,a_.w5)(a)),d=(0,gG.FY)("isFocused",(a=>{if(a instanceof Window)return a.document.hasFocus();let b=a.getRootNode()instanceof ShadowRoot?a.getRootNode():null,c=b?b.activeElement:a.ownerDocument.activeElement;return a.contains(c)})(a));return b.add(c.onDidFocus(()=>d.set(!0,void 0))),b.add(c.onDidBlur(()=>d.set(!1,void 0))),d}createHoverTracker(a,b){let c=(0,gG.FY)("isHovered",!1),d=()=>c.set(!0,void 0),e=()=>c.set(!1,void 0);return a.addEventListener("mouseenter",d),a.addEventListener("mouseleave",e),b.add({dispose:()=>{a.removeEventListener("mouseenter",d),a.removeEventListener("mouseleave",e)}}),c}createDomFocusTracker(a){return(0,a_.w5)(a)}}(0,aQ.v)(gE.u,gH,1);var gI=c(96820),gJ=c(68862);let gK=(0,aZ.u1)("workspaceTrustManagementService");var gL=c(4872),gM=c(8253);(w=P||(P={}))[w.API=0]="API",w[w.USER=1]="USER";var gN=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},gO=function(a,b){return function(c,d){b(c,d,a)}};let gP=class{constructor(a){this._commandService=a}async open(a,b){if(!(0,bC.v$)(a,bC.ny.command))return!1;if(!b?.allowCommands||("string"==typeof a&&(a=ab.r.parse(a)),Array.isArray(b.allowCommands)&&!b.allowCommands.includes(a.path)))return!0;let c=[];try{c=(0,gM.qg)(decodeURIComponent(a.query))}catch{try{c=(0,gM.qg)(a.query)}catch{}}return Array.isArray(c)||(c=[c]),await this._commandService.executeCommand(a.path,...c),!0}};gP=gN([gO(0,c0.d)],gP);let gQ=class{constructor(a){this._editorService=a}async open(a,b){"string"==typeof a&&(a=ab.r.parse(a));let{selection:c,uri:d}=(0,gC.ew)(a);return(a=d).scheme===bC.ny.file&&(a=(0,cR.Fd)(a)),await this._editorService.openCodeEditor({resource:a,options:{selection:c,source:b?.fromUserGesture?P.USER:P.API,...b?.editorOptions}},this._editorService.getFocusedCodeEditor(),b?.openToSide),!0}};gQ=gN([gO(0,ae.T)],gQ);let gR=class{constructor(a,b){this._openers=new cH.w,this._validators=new cH.w,this._resolvers=new cH.w,this._resolvedUriTargets=new b4.fT(a=>a.with({path:null,fragment:null,query:null}).toString()),this._externalOpeners=new cH.w,this._defaultExternalOpener={openExternal:async a=>((0,bC.fV)(a,bC.ny.http,bC.ny.https)?(0,a_.jh)(a):$.G.location.href=a,!0)},this._openers.push({open:async(a,b)=>!!(b?.openExternal||(0,bC.fV)(a,bC.ny.mailto,bC.ny.http,bC.ny.https,bC.ny.vsls))&&(await this._doOpenExternal(a,b),!0)}),this._openers.push(new gP(b)),this._openers.push(new gQ(a))}registerOpener(a){return{dispose:this._openers.unshift(a)}}async open(a,b){let c="string"==typeof a?ab.r.parse(a):a;if(c.scheme===bC.ny.internal)return!1;if(!b?.skipValidation){let d=this._resolvedUriTargets.get(c)??a;for(let a of this._validators)if(!await a.shouldOpen(d,b))return!1}for(let c of this._openers)if(await c.open(a,b))return!0;return!1}async resolveExternalUri(a,b){for(let c of this._resolvers)try{let d=await c.resolveExternalUri(a,b);if(d)return this._resolvedUriTargets.has(d.resolved)||this._resolvedUriTargets.set(d.resolved,a),d}catch{}throw Error("Could not resolve external URI: "+a.toString())}async _doOpenExternal(a,b){let c,d,e="string"==typeof a?ab.r.parse(a):a;try{c=(await this.resolveExternalUri(e,b)).resolved}catch{c=e}if(d="string"==typeof a&&e.toString()===c.toString()?a:encodeURI(c.toString(!0)),b?.allowContributedOpeners){let a="string"==typeof b?.allowContributedOpeners?b?.allowContributedOpeners:void 0;for(let b of this._externalOpeners)if(await b.openExternal(d,{sourceUri:e,preferredOpenerId:a},bo.XO.None))return!0}return this._defaultExternalOpener.openExternal(d,{sourceUri:e},bo.XO.None)}dispose(){this._validators.clear()}};gR=gN([gO(0,ae.T),gO(1,c0.d)],gR);let gS=(0,aZ.u1)("renameSymbolTrackerService");class gT{constructor(){this._trackedWord=(0,gG.FY)(this,void 0),this.trackedWord=this._trackedWord,this._trackedWord.set(void 0,void 0)}}var gU=c(23570),gV=c(85030);let gW={...Object.freeze({id:"editor",order:5,type:"object",title:(0,a3.kg)(163,"Editor"),scope:6}),properties:{"editor.tabSize":{type:"number",default:gV.R.tabSize,minimum:1,maximum:100,markdownDescription:(0,a3.kg)(164,"The number of spaces a tab is equal to. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.indentSize":{anyOf:[{type:"string",enum:["tabSize"]},{type:"number",minimum:1}],default:"tabSize",markdownDescription:(0,a3.kg)(165,'The number of spaces used for indentation or `"tabSize"` to use the value from `#editor.tabSize#`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.')},"editor.insertSpaces":{type:"boolean",default:gV.R.insertSpaces,markdownDescription:(0,a3.kg)(166,"Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when {0} is on.","`#editor.detectIndentation#`")},"editor.detectIndentation":{type:"boolean",default:gV.R.detectIndentation,markdownDescription:(0,a3.kg)(167,"Controls whether {0} and {1} will be automatically detected when a file is opened based on the file contents.","`#editor.tabSize#`","`#editor.insertSpaces#`")},"editor.trimAutoWhitespace":{type:"boolean",default:gV.R.trimAutoWhitespace,description:(0,a3.kg)(168,"Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:gV.R.largeFileOptimizations,description:(0,a3.kg)(169,"Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{enum:["off","offWithInlineSuggestions","currentDocument","matchingDocuments","allDocuments"],default:"offWithInlineSuggestions",enumDescriptions:[(0,a3.kg)(170,"Turn off Word Based Suggestions."),(0,a3.kg)(171,"Turn off Word Based Suggestions when Inline Suggestions are present."),(0,a3.kg)(172,"Only suggest words from the active document."),(0,a3.kg)(173,"Suggest words from all open documents of the same language."),(0,a3.kg)(174,"Suggest words from all open documents.")],description:(0,a3.kg)(175,"Controls whether completions should be computed based on words in the document and from which documents they are computed."),experiment:{mode:"auto"}},"editor.semanticHighlighting.enabled":{enum:[!0,!1,"configuredByTheme"],enumDescriptions:[(0,a3.kg)(176,"Semantic highlighting enabled for all color themes."),(0,a3.kg)(177,"Semantic highlighting disabled for all color themes."),(0,a3.kg)(178,"Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.")],default:"configuredByTheme",description:(0,a3.kg)(179,"Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:(0,a3.kg)(180,"Keep peek editors open even when double-clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:(0,a3.kg)(181,"Lines above this length will not be tokenized for performance reasons")},"editor.experimental.asyncTokenization":{type:"boolean",default:!0,description:(0,a3.kg)(182,"Controls whether the tokenization should happen asynchronously on a web worker."),tags:["experimental"]},"editor.experimental.asyncTokenizationLogging":{type:"boolean",default:!1,description:(0,a3.kg)(183,"Controls whether async tokenization should be logged. For debugging only.")},"editor.experimental.asyncTokenizationVerification":{type:"boolean",default:!1,description:(0,a3.kg)(184,"Controls whether async tokenization should be verified against legacy background tokenization. Might slow down tokenization. For debugging only."),tags:["experimental"]},"editor.experimental.treeSitterTelemetry":{type:"boolean",default:!1,markdownDescription:(0,a3.kg)(185,"Controls whether tree sitter parsing should be turned on and telemetry collected. Setting `#editor.experimental.preferTreeSitter#` for specific languages will take precedence."),tags:["experimental"],experiment:{mode:"auto"}},"editor.experimental.preferTreeSitter.css":{type:"boolean",default:!1,markdownDescription:(0,a3.kg)(186,"Controls whether tree sitter parsing should be turned on for css. This will take precedence over `#editor.experimental.treeSitterTelemetry#` for css."),tags:["experimental"],experiment:{mode:"auto"}},"editor.experimental.preferTreeSitter.typescript":{type:"boolean",default:!1,markdownDescription:(0,a3.kg)(187,"Controls whether tree sitter parsing should be turned on for typescript. This will take precedence over `#editor.experimental.treeSitterTelemetry#` for typescript."),tags:["experimental"],experiment:{mode:"auto"}},"editor.experimental.preferTreeSitter.ini":{type:"boolean",default:!1,markdownDescription:(0,a3.kg)(188,"Controls whether tree sitter parsing should be turned on for ini. This will take precedence over `#editor.experimental.treeSitterTelemetry#` for ini."),tags:["experimental"],experiment:{mode:"auto"}},"editor.experimental.preferTreeSitter.regex":{type:"boolean",default:!1,markdownDescription:(0,a3.kg)(189,"Controls whether tree sitter parsing should be turned on for regex. This will take precedence over `#editor.experimental.treeSitterTelemetry#` for regex."),tags:["experimental"],experiment:{mode:"auto"}},"editor.language.brackets":{type:["array","null"],default:null,description:(0,a3.kg)(190,"Defines the bracket symbols that increase or decrease the indentation."),items:{type:"array",items:[{type:"string",description:(0,a3.kg)(191,"The opening bracket character or string sequence.")},{type:"string",description:(0,a3.kg)(192,"The closing bracket character or string sequence.")}]}},"editor.language.colorizedBracketPairs":{type:["array","null"],default:null,description:(0,a3.kg)(193,"Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled."),items:{type:"array",items:[{type:"string",description:(0,a3.kg)(194,"The opening bracket character or string sequence.")},{type:"string",description:(0,a3.kg)(195,"The closing bracket character or string sequence.")}]}},"diffEditor.maxComputationTime":{type:"number",default:gU.q.maxComputationTime,description:(0,a3.kg)(196,"Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.maxFileSize":{type:"number",default:gU.q.maxFileSize,description:(0,a3.kg)(197,"Maximum file size in MB for which to compute diffs. Use 0 for no limit.")},"diffEditor.renderSideBySide":{type:"boolean",default:gU.q.renderSideBySide,description:(0,a3.kg)(198,"Controls whether the diff editor shows the diff side by side or inline."),agentsWindow:{default:!0}},"diffEditor.renderSideBySideInlineBreakpoint":{type:"number",default:gU.q.renderSideBySideInlineBreakpoint,description:(0,a3.kg)(199,"If the diff editor width is smaller than this value, the inline view is used.")},"diffEditor.useInlineViewWhenSpaceIsLimited":{type:"boolean",default:gU.q.useInlineViewWhenSpaceIsLimited,description:(0,a3.kg)(200,"If enabled and the editor width is too small, the inline view is used."),agentsWindow:{default:!0}},"diffEditor.renderMarginRevertIcon":{type:"boolean",default:gU.q.renderMarginRevertIcon,description:(0,a3.kg)(201,"When enabled, the diff editor shows arrows in its glyph margin to revert changes."),agentsWindow:{default:!1}},"diffEditor.renderGutterMenu":{type:"boolean",default:gU.q.renderGutterMenu,description:(0,a3.kg)(202,"When enabled, the diff editor shows a special gutter for revert and stage actions."),agentsWindow:{default:!1}},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:gU.q.ignoreTrimWhitespace,description:(0,a3.kg)(203,"When enabled, the diff editor ignores changes in leading or trailing whitespace.")},"diffEditor.renderIndicators":{type:"boolean",default:gU.q.renderIndicators,description:(0,a3.kg)(204,"Controls whether the diff editor shows +/- indicators for added/removed changes."),agentsWindow:{default:!1}},"diffEditor.codeLens":{type:"boolean",default:gU.q.diffCodeLens,description:(0,a3.kg)(205,"Controls whether the editor shows CodeLens.")},"diffEditor.wordWrap":{type:"string",enum:["off","on","inherit"],default:gU.q.diffWordWrap,markdownEnumDescriptions:[(0,a3.kg)(206,"Lines will never wrap."),(0,a3.kg)(207,"Lines will wrap at the viewport width."),(0,a3.kg)(208,"Lines will wrap according to the {0} setting.","`#editor.wordWrap#`")]},"diffEditor.diffAlgorithm":{type:"string",enum:["legacy","advanced","advanced-external","advanced-wasm"],default:gU.q.diffAlgorithm,markdownEnumDescriptions:[(0,a3.kg)(209,"Uses the legacy diffing algorithm."),(0,a3.kg)(210,"Uses the advanced diffing algorithm."),(0,a3.kg)(211,"Uses the advanced diffing algorithm from the external `@vscode/diff` package (pure JavaScript)."),(0,a3.kg)(212,"Uses the advanced diffing algorithm from the external `@vscode/diff` package (WebAssembly).")]},"diffEditor.hideUnchangedRegions.enabled":{type:"boolean",default:gU.q.hideUnchangedRegions.enabled,markdownDescription:(0,a3.kg)(213,"Controls whether the diff editor shows unchanged regions."),agentsWindow:{default:!0}},"diffEditor.hideUnchangedRegions.revealLineCount":{type:"integer",default:gU.q.hideUnchangedRegions.revealLineCount,markdownDescription:(0,a3.kg)(214,"Controls how many lines are used for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.minimumLineCount":{type:"integer",default:gU.q.hideUnchangedRegions.minimumLineCount,markdownDescription:(0,a3.kg)(215,"Controls how many lines are used as a minimum for unchanged regions."),minimum:1},"diffEditor.hideUnchangedRegions.contextLineCount":{type:"integer",default:gU.q.hideUnchangedRegions.contextLineCount,markdownDescription:(0,a3.kg)(216,"Controls how many lines are used as context when comparing unchanged regions."),minimum:1},"diffEditor.experimental.showMoves":{type:"boolean",default:gU.q.experimental.showMoves,markdownDescription:(0,a3.kg)(217,"Controls whether the diff editor should show detected code moves.")},"diffEditor.experimental.showEmptyDecorations":{type:"boolean",default:gU.q.experimental.showEmptyDecorations,description:(0,a3.kg)(218,"Controls whether the diff editor shows empty decorations to see where characters got inserted or deleted.")},"diffEditor.experimental.useTrueInlineView":{type:"boolean",default:gU.q.experimental.useTrueInlineView,description:(0,a3.kg)(219,"If enabled and the editor uses the inline view, word changes are rendered inline.")}}};for(let a of Y.BE){let b=a.schema;if(void 0!==b)if(void 0!==b.type||void 0!==b.anyOf)gW.properties[`editor.${a.name}`]=b;else for(let a in b)Object.hasOwnProperty.call(b,a)&&(gW.properties[a]=b[a])}let gX=null;function gY(){return null===gX&&(gX=Object.create(null),Object.keys(gW.properties).forEach(a=>{gX[a]=!0})),gX}c3.O.as(c2.Fd.Configuration).registerConfiguration(gW);var gZ=c(41206),g$=c(6812);let g_=[];var g0=c(57667);let g1=[],g2=[],g3=[];function g4(a,b=!1){var c,d,e,f,g;let h;c=a,d=!1,e=b,h=(f=c,g=d,{id:f.id,mime:f.mime,filename:f.filename,extension:f.extension,filepattern:f.filepattern,firstline:f.firstline,userConfigured:g,filepatternParsed:f.filepattern?co(f.filepattern,{ignoreCase:!0}):void 0,filepatternOnPath:!!f.filepattern&&f.filepattern.indexOf(b5.SA.sep)>=0}),g1.push(h),h.userConfigured?g3.push(h):g2.push(h),e&&!h.userConfigured&&g1.forEach(a=>{a.mime!==h.mime&&!a.userConfigured&&(h.extension&&a.extension===h.extension&&console.warn(`Overwriting extension <<${h.extension}>> to now point to mime <<${h.mime}>>`),h.filename&&a.filename===h.filename&&console.warn(`Overwriting filename <<${h.filename}>> to now point to mime <<${h.mime}>>`),h.filepattern&&a.filepattern===h.filepattern&&console.warn(`Overwriting filepattern <<${h.filepattern}>> to now point to mime <<${h.mime}>>`),h.firstline&&a.firstline===h.firstline&&console.warn(`Overwriting firstline <<${h.firstline}>> to now point to mime <<${h.mime}>>`))})}function g5(a,b,c){let d,e,f;for(let g=c.length-1;g>=0;g--){let h=c[g];if((0,aa.aI)(b,h.filename)){d=h;break}if(h.filepattern&&(!e||h.filepattern.length>e.filepattern.length)){let c=h.filepatternOnPath?a:b;h.filepatternParsed?.(c)&&(e=h)}h.extension&&(!f||h.extension.length>f.extension.length)&&(0,aa.Dp)(b,h.extension)&&(f=h)}return d||e||f||void 0}let g6=Object.prototype.hasOwnProperty,g7="vs.editor.nullLanguage";class g8{constructor(){this._languageIdToLanguage=[],this._languageToLanguageId=new Map,this._register(g7,0),this._register(am.vH,1),this._nextLanguageId=2}_register(a,b){this._languageIdToLanguage[b]=a,this._languageToLanguageId.set(a,b)}register(a){if(this._languageToLanguageId.has(a))return;let b=this._nextLanguageId++;this._register(a,b)}encodeLanguageId(a){return this._languageToLanguageId.get(a)||0}decodeLanguageId(a){return this._languageIdToLanguage[a]||g7}}class g9 extends _.jG{static{this.instanceCount=0}constructor(a=!0,b=!1){super(),this._onDidChange=this._register(new a$.vl),this.onDidChange=this._onDidChange.event,g9.instanceCount++,this._warnOnOverwrite=b,this.languageIdCodec=new g8,this._dynamicLanguages=[],this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},a&&(this._initializeFromRegistry(),this._register(am.W6.onDidChangeLanguages(a=>{this._initializeFromRegistry()})))}dispose(){g9.instanceCount--,super.dispose()}_initializeFromRegistry(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},g1=g1.filter(a=>a.userConfigured),g2=[];let a=[].concat(am.W6.getLanguages()).concat(this._dynamicLanguages);this._registerLanguages(a)}_registerLanguages(a){for(let b of a)this._registerLanguage(b);this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach(a=>{let b=this._languages[a];b.name&&(this._nameMap[b.name]=b.identifier),b.aliases.forEach(a=>{this._lowercaseNameMap[a.toLowerCase()]=b.identifier}),b.mimetypes.forEach(a=>{this._mimeTypesMap[a]=b.identifier})}),c3.O.as(c2.Fd.Configuration).registerOverrideIdentifiers(this.getRegisteredLanguageIds()),this._onDidChange.fire()}_registerLanguage(a){let b,c=a.id;g6.call(this._languages,c)?b=this._languages[c]:(this.languageIdCodec.register(c),b={identifier:c,name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[],icons:[]},this._languages[c]=b),this._mergeLanguage(b,a)}_mergeLanguage(a,b){let c=b.id,d=null;if(Array.isArray(b.mimetypes)&&b.mimetypes.length>0&&(a.mimetypes.push(...b.mimetypes),d=b.mimetypes[0]),d||(d=`text/x-${c}`,a.mimetypes.push(d)),Array.isArray(b.extensions))for(let e of(b.configuration?a.extensions=b.extensions.concat(a.extensions):a.extensions=a.extensions.concat(b.extensions),b.extensions))g4({id:c,mime:d,extension:e},this._warnOnOverwrite);if(Array.isArray(b.filenames))for(let e of b.filenames)g4({id:c,mime:d,filename:e},this._warnOnOverwrite),a.filenames.push(e);if(Array.isArray(b.filenamePatterns))for(let a of b.filenamePatterns)g4({id:c,mime:d,filepattern:a},this._warnOnOverwrite);if("string"==typeof b.firstLine&&b.firstLine.length>0){let a=b.firstLine;"^"!==a.charAt(0)&&(a="^"+a);try{let b=new RegExp(a);(0,aa.eY)(b)||g4({id:c,mime:d,firstline:b},this._warnOnOverwrite)}catch(c){console.warn(`[${b.id}]: Invalid regular expression \`${a}\`: `,c)}}a.aliases.push(c);let e=null;if(void 0!==b.aliases&&Array.isArray(b.aliases)&&(e=0===b.aliases.length?[null]:b.aliases),null!==e)for(let b of e)b&&0!==b.length&&a.aliases.push(b);let f=null!==e&&e.length>0;if(f&&null===e[0]);else{let b=(f?e[0]:null)||c;(f||!a.name)&&(a.name=b)}b.configuration&&a.configurationFiles.push(b.configuration),b.icon&&a.icons.push(b.icon)}isRegisteredLanguageId(a){return!!a&&g6.call(this._languages,a)}getRegisteredLanguageIds(){return Object.keys(this._languages)}getLanguageIdByLanguageName(a){let b=a.toLowerCase();return g6.call(this._lowercaseNameMap,b)?this._lowercaseNameMap[b]:null}getLanguageIdByMimeType(a){return a&&g6.call(this._mimeTypesMap,a)?this._mimeTypesMap[a]:null}guessLanguageIdByFilepathOrFirstLine(a,b){return a||b?(function(a,b){let c;if(a)switch(a.scheme){case bC.ny.file:c=a.fsPath;break;case bC.ny.data:c=cR.B6.parseMetaData(a).get(cR.B6.META_DATA_LABEL);break;case bC.ny.vscodeNotebookCell:c=void 0;break;default:c=a.path}if(!c)return[{id:"unknown",mime:g0.K.unknown}];c=c.toLowerCase();let d=(0,b5.P8)(c),e=g5(c,d,g3);if(e)return[e,{id:am.vH,mime:g0.K.text}];let f=g5(c,d,g2);if(f)return[f,{id:am.vH,mime:g0.K.text}];if(b){let a=function(a){if((0,aa.LU)(a)&&(a=a.substring(1)),a.length>0)for(let b=g1.length-1;b>=0;b--){let c=g1[b];if(!c.firstline)continue;let d=a.match(c.firstline);if(d&&d.length>0)return c}}(b);if(a)return[a,{id:am.vH,mime:g0.K.text}]}return[{id:"unknown",mime:g0.K.unknown}]})(a,b).map(a=>a.id):[]}}class ha extends _.jG{static{this.instanceCount=0}constructor(a=!1){super(),this._onDidRequestBasicLanguageFeatures=this._register(new a$.vl),this.onDidRequestBasicLanguageFeatures=this._onDidRequestBasicLanguageFeatures.event,this._onDidRequestRichLanguageFeatures=this._register(new a$.vl),this.onDidRequestRichLanguageFeatures=this._onDidRequestRichLanguageFeatures.event,this._onDidChange=this._register(new a$.vl({leakWarningThreshold:200,leakWarningName:"LanguageService._onDidChange"})),this.onDidChange=this._onDidChange.event,this._requestedBasicLanguages=new Set,this._requestedRichLanguages=new Set,ha.instanceCount++,this._registry=this._register(new g9(!0,a)),this.languageIdCodec=this._registry.languageIdCodec,this._register(this._registry.onDidChange(()=>this._onDidChange.fire()))}dispose(){ha.instanceCount--,super.dispose()}isRegisteredLanguageId(a){return this._registry.isRegisteredLanguageId(a)}getLanguageIdByLanguageName(a){return this._registry.getLanguageIdByLanguageName(a)}getLanguageIdByMimeType(a){return this._registry.getLanguageIdByMimeType(a)}guessLanguageIdByFilepathOrFirstLine(a,b){return this._registry.guessLanguageIdByFilepathOrFirstLine(a,b).at(0)??null}createById(a){return new hb(this.onDidChange,()=>this._createAndGetLanguageIdentifier(a))}createByFilepathOrFirstLine(a,b){return new hb(this.onDidChange,()=>{let c=this.guessLanguageIdByFilepathOrFirstLine(a,b);return this._createAndGetLanguageIdentifier(c)})}_createAndGetLanguageIdentifier(a){return a&&this.isRegisteredLanguageId(a)||(a=am.vH),a}requestBasicLanguageFeatures(a){this._requestedBasicLanguages.has(a)||(this._requestedBasicLanguages.add(a),this._onDidRequestBasicLanguageFeatures.fire(a))}requestRichLanguageFeatures(a){this._requestedRichLanguages.has(a)||(this._requestedRichLanguages.add(a),this.requestBasicLanguageFeatures(a),ak.dG.getOrCreate(a),this._onDidRequestRichLanguageFeatures.fire(a))}}class hb{constructor(a,b){this._value=(0,gF.y0)(this,a,()=>b()),this.onDidChange=a$.Jh.fromObservable(this._value)}get languageId(){return this._value.get()}}var hc=c(23365),hd=c(39924),he=c(67298),hf=function(a,b){return function(c,d){b(c,d,a)}};let hg=class extends _.jG{constructor(a,b){super(),this._markerService=b,this._onDidChangeMarker=this._register(new a$.vl),this._suppressedRanges=new b4.fT,this._markerDecorations=new b4.fT,a.getModels().forEach(a=>this._onModelAdded(a)),this._register(a.onModelAdded(this._onModelAdded,this)),this._register(a.onModelRemoved(this._onModelRemoved,this)),this._register(this._markerService.onMarkerChanged(this._handleMarkerChange,this))}dispose(){super.dispose(),this._markerDecorations.forEach(a=>a.dispose()),this._markerDecorations.clear()}getMarker(a,b){let c=this._markerDecorations.get(a);return c&&c.getMarker(b)||null}_handleMarkerChange(a){a.forEach(a=>{let b=this._markerDecorations.get(a);b&&this._updateDecorations(b)})}_onModelAdded(a){let b=new hh(a);this._markerDecorations.set(a.uri,b),this._updateDecorations(b)}_onModelRemoved(a){let b=this._markerDecorations.get(a.uri);b&&(b.dispose(),this._markerDecorations.delete(a.uri)),(a.uri.scheme===bC.ny.inMemory||a.uri.scheme===bC.ny.internal||a.uri.scheme===bC.ny.vscode)&&this._markerService?.read({resource:a.uri}).map(a=>a.owner).forEach(b=>this._markerService.remove(b,[a.uri]))}_updateDecorations(a){let b=this._markerService.read({resource:a.model.uri,take:500}),c=this._suppressedRanges.get(a.model.uri);c&&(b=b.filter(a=>!db.f.some(c,b=>cw.Q.areIntersectingOrTouching(b,a)))),a.update(b)&&this._onDidChangeMarker.fire(a.model)}};hg=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([hf(0,ap.S),hf(1,gx)],hg);class hh extends _.jG{constructor(a){super(),this.model=a,this._map=new b4.cO,this._register((0,_.s)(()=>{this.model.deltaDecorations([...this._map.values()],[]),this._map.clear()}))}update(a){let{added:b,removed:c}=(0,he.Zv)(new Set(this._map.keys()),new Set(a));if(0===b.length&&0===c.length)return!1;let d=c.map(a=>this._map.get(a)),e=b.map(a=>({range:this._createDecorationRange(this.model,a),options:this._createDecorationOption(a)})),f=this.model.deltaDecorations(d,e);for(let a of c)this._map.delete(a);for(let a=0;a<f.length;a++)this._map.set(b[a],f[a]);return!0}getMarker(a){return this._map.getKey(a.id)}_createDecorationRange(a,b){let c=cw.Q.lift(b);if(b.severity!==N.Hint||this._hasMarkerTag(b,1)||this._hasMarkerTag(b,2)||(c=c.setEndPosition(c.startLineNumber,c.startColumn+2)),(c=a.validateRange(c)).isEmpty()){let b=a.getLineLastNonWhitespaceColumn(c.startLineNumber)||a.getLineMaxColumn(c.startLineNumber);if(1===b||c.endColumn>=b)return c;let d=a.getWordAtPosition(c.getStartPosition());d&&(c=new cw.Q(c.startLineNumber,d.startColumn,c.endLineNumber,d.endColumn))}else if(b.endColumn===Number.MAX_VALUE&&1===b.startColumn&&c.startLineNumber===c.endLineNumber){let d=a.getLineFirstNonWhitespaceColumn(b.startLineNumber);d<c.endColumn&&(c=new cw.Q(c.startLineNumber,d,c.endLineNumber,c.endColumn),b.startColumn=d)}return c}_createDecorationOption(a){let b,c,d,e,f;switch(a.severity){case N.Hint:b=this._hasMarkerTag(a,2)?void 0:this._hasMarkerTag(a,1)?"squiggly-unnecessary":"squiggly-hint",c=0;break;case N.Info:b="squiggly-info",e=(0,aR.Yf)(hd.AQ),c=10,d={color:(0,aR.Yf)(aV.Ko),position:1};break;case N.Warning:b="squiggly-warning",e=(0,aR.Yf)(hd.aZ),c=20,d={color:(0,aR.Yf)(aV.uM),position:1};break;case N.Error:default:b="squiggly-error",e=(0,aR.Yf)(hd.yI),c=30,d={color:(0,aR.Yf)(aV.yL),position:1}}return a.tags&&(-1!==a.tags.indexOf(1)&&(f="squiggly-inline-unnecessary"),-1!==a.tags.indexOf(2)&&(f="squiggly-inline-deprecated")),{description:"marker-decoration",stickiness:1,className:b,showIfCollapsed:!0,overviewRuler:{color:e,position:ao.A5.Right},minimap:d,zIndex:c,inlineClassName:f}}_hasMarkerTag(a,b){return!!a.tags&&a.tags.indexOf(b)>=0}}var hi=c(2097),hj=c(64103),hk=c(50179),hl=function(a,b){return function(c,d){b(c,d,a)}};function hm(a){return a.toString()}class hn{constructor(a,b,c){this.model=a,this._modelEventListeners=new _.Cm,this.model=a,this._modelEventListeners.add(a.onWillDispose(()=>b(a))),this._modelEventListeners.add(a.onDidChangeLanguage(b=>c(a,b)))}dispose(){this._modelEventListeners.dispose()}}let ho=bc.j9||bc.zx?1:2;class hp{constructor(a,b,c,d,e,f,g,h){this.uri=a,this.initialUndoRedoSnapshot=b,this.time=c,this.sharesUndoRedoStack=d,this.heapSize=e,this.sha1=f,this.versionId=g,this.alternativeVersionId=h}}let hq=class extends _.jG{static{Q=this}static{this.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK=0x1400000}constructor(a,b,c,d){super(),this._configurationService=a,this._resourcePropertiesService=b,this._undoRedoService=c,this._instantiationService=d,this._onModelAdded=this._register(new a$.vl),this.onModelAdded=this._onModelAdded.event,this._onModelRemoved=this._register(new a$.vl),this.onModelRemoved=this._onModelRemoved.event,this._onModelModeChanged=this._register(new a$.vl),this.onModelLanguageChanged=this._onModelModeChanged.event,this._modelCreationOptionsByLanguageAndResource=Object.create(null),this._models={},this._disposedModels=new Map,this._disposedModelsHeapSize=0,this._register(this._configurationService.onDidChangeConfiguration(a=>this._updateModelOptions(a))),this._updateModelOptions(void 0)}static _readModelOptions(a,b){let c=gV.R.tabSize;a.editor&&void 0!==a.editor.tabSize&&(c=(0,Y.wA)(a.editor.tabSize,gV.R.tabSize,1,100));let d="tabSize";a.editor&&void 0!==a.editor.indentSize&&"tabSize"!==a.editor.indentSize&&(d=(0,Y.wA)(a.editor.indentSize,"tabSize",1,100));let e=gV.R.insertSpaces;a.editor&&void 0!==a.editor.insertSpaces&&(e="false"!==a.editor.insertSpaces&&!!a.editor.insertSpaces);let f=ho,g=a.eol;"\r\n"===g?f=2:"\n"===g&&(f=1);let h=gV.R.trimAutoWhitespace;a.editor&&void 0!==a.editor.trimAutoWhitespace&&(h="false"!==a.editor.trimAutoWhitespace&&!!a.editor.trimAutoWhitespace);let i=gV.R.detectIndentation;a.editor&&void 0!==a.editor.detectIndentation&&(i="false"!==a.editor.detectIndentation&&!!a.editor.detectIndentation);let j=gV.R.largeFileOptimizations;a.editor&&void 0!==a.editor.largeFileOptimizations&&(j="false"!==a.editor.largeFileOptimizations&&!!a.editor.largeFileOptimizations);let k=gV.R.bracketPairColorizationOptions;if(a.editor?.bracketPairColorization&&"object"==typeof a.editor.bracketPairColorization){let b=a.editor.bracketPairColorization;k={enabled:!!b.enabled,independentColorPoolPerBracketType:!!b.independentColorPoolPerBracketType}}return{isForSimpleWidget:b,tabSize:c,indentSize:d,insertSpaces:e,detectIndentation:i,defaultEOL:f,trimAutoWhitespace:h,largeFileOptimizations:j,bracketPairColorizationOptions:k}}_getEOL(a,b){if(a)return this._resourcePropertiesService.getEOL(a,b);let c=this._configurationService.getValue("files.eol",{overrideIdentifier:b});return c&&"string"==typeof c&&"auto"!==c?c:3===bc.OS||2===bc.OS?"\n":"\r\n"}_shouldRestoreUndoStack(){let a=this._configurationService.getValue("files.restoreUndoStack");return"boolean"!=typeof a||a}getCreationOptions(a,b,c){let d="string"==typeof a?a:a.languageId,e=this._modelCreationOptionsByLanguageAndResource[d+b];if(!e){let a=this._configurationService.getValue("editor",{overrideIdentifier:d,resource:b}),f=this._getEOL(b,d);e=Q._readModelOptions({editor:a,eol:f},c),this._modelCreationOptionsByLanguageAndResource[d+b]=e}return e}_updateModelOptions(a){let b=this._modelCreationOptionsByLanguageAndResource;this._modelCreationOptionsByLanguageAndResource=Object.create(null);let c=Object.keys(this._models);for(let d=0,e=c.length;d<e;d++){let e=c[d],f=this._models[e],g=f.model.getLanguageId(),h=f.model.uri;if(a&&!a.affectsConfiguration("editor",{overrideIdentifier:g,resource:h})&&!a.affectsConfiguration("files.eol",{overrideIdentifier:g,resource:h}))continue;let i=b[g+h],j=this.getCreationOptions(g,h,f.model.isForSimpleWidget);Q._setModelOptionsForModel(f.model,j,i)}}static _setModelOptionsForModel(a,b,c){c&&c.defaultEOL!==b.defaultEOL&&1===a.getLineCount()&&a.setEOL(+(1!==b.defaultEOL)),c&&c.detectIndentation===b.detectIndentation&&c.insertSpaces===b.insertSpaces&&c.tabSize===b.tabSize&&c.indentSize===b.indentSize&&c.trimAutoWhitespace===b.trimAutoWhitespace&&(0,c1.aI)(c.bracketPairColorizationOptions,b.bracketPairColorizationOptions)||(b.detectIndentation?(a.detectIndentation(b.insertSpaces,b.tabSize),a.updateOptions({trimAutoWhitespace:b.trimAutoWhitespace,bracketColorizationOptions:b.bracketPairColorizationOptions})):a.updateOptions({insertSpaces:b.insertSpaces,tabSize:b.tabSize,indentSize:b.indentSize,trimAutoWhitespace:b.trimAutoWhitespace,bracketColorizationOptions:b.bracketPairColorizationOptions}))}_insertDisposedModel(a){this._disposedModels.set(hm(a.uri),a),this._disposedModelsHeapSize+=a.heapSize}_removeDisposedModel(a){let b=this._disposedModels.get(hm(a));return b&&(this._disposedModelsHeapSize-=b.heapSize),this._disposedModels.delete(hm(a)),b}_ensureDisposedModelsHeapSize(a){if(this._disposedModelsHeapSize>a){let b=[];for(this._disposedModels.forEach(a=>{a.sharesUndoRedoStack||b.push(a)}),b.sort((a,b)=>a.time-b.time);b.length>0&&this._disposedModelsHeapSize>a;){let a=b.shift();this._removeDisposedModel(a.uri),null!==a.initialUndoRedoSnapshot&&this._undoRedoService.restoreSnapshot(a.initialUndoRedoSnapshot)}}}_createModelData(a,b,c,d){let e=this.getCreationOptions(b,c,d),f=this._instantiationService.createInstance(hj.Bz,a,b,e,c);if(c&&this._disposedModels.has(hm(c))){let a=this._removeDisposedModel(c),b=this._undoRedoService.getElements(c),d=this._getSHA1Computer(),e=!!d.canComputeSHA1(f)&&d.computeSHA1(f)===a.sha1;if(e||a.sharesUndoRedoStack){for(let a of b.past)(0,hi.Th)(a)&&a.matchesResource(c)&&a.setModel(f);for(let a of b.future)(0,hi.Th)(a)&&a.matchesResource(c)&&a.setModel(f);this._undoRedoService.setElementsValidFlag(c,!0,a=>(0,hi.Th)(a)&&a.matchesResource(c)),e&&(f._overwriteVersionId(a.versionId),f._overwriteAlternativeVersionId(a.alternativeVersionId),f._overwriteInitialUndoRedoSnapshot(a.initialUndoRedoSnapshot))}else null!==a.initialUndoRedoSnapshot&&this._undoRedoService.restoreSnapshot(a.initialUndoRedoSnapshot)}let g=hm(f.uri);if(this._models[g])throw Error("ModelService: Cannot add model because it already exists!");let h=new hn(f,a=>this._onWillDispose(a),(a,b)=>this._onDidChangeLanguage(a,b));return this._models[g]=h,h}createModel(a,b,c,d=!1){let e;return e=b?this._createModelData(a,b,c,d):this._createModelData(a,am.vH,c,d),this._onModelAdded.fire(e.model),e.model}getModels(){let a=[],b=Object.keys(this._models);for(let c=0,d=b.length;c<d;c++){let d=b[c];a.push(this._models[d].model)}return a}getModel(a){let b=hm(a),c=this._models[b];return c?c.model:null}_schemaShouldMaintainUndoRedoElements(a){return a.scheme===bC.ny.file||a.scheme===bC.ny.vscodeRemote||a.scheme===bC.ny.vscodeUserData||a.scheme===bC.ny.vscodeNotebookCell||"fake-fs"===a.scheme}_onWillDispose(a){let b=hm(a.uri),c=this._models[b],d=this._undoRedoService.getUriComparisonKey(a.uri)!==a.uri.toString(),e=!1,f=0;if(d||this._shouldRestoreUndoStack()&&this._schemaShouldMaintainUndoRedoElements(a.uri)){let b=this._undoRedoService.getElements(a.uri);if(b.past.length>0||b.future.length>0){for(let c of b.past)(0,hi.Th)(c)&&c.matchesResource(a.uri)&&(e=!0,f+=c.heapSize(a.uri),c.setModel(a.uri));for(let c of b.future)(0,hi.Th)(c)&&c.matchesResource(a.uri)&&(e=!0,f+=c.heapSize(a.uri),c.setModel(a.uri))}}let g=Q.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK,h=this._getSHA1Computer();if(e)if(d||!(f>g)&&h.canComputeSHA1(a))this._ensureDisposedModelsHeapSize(g-f),this._undoRedoService.setElementsValidFlag(a.uri,!1,b=>(0,hi.Th)(b)&&b.matchesResource(a.uri)),this._insertDisposedModel(new hp(a.uri,c.model.getInitialUndoRedoSnapshot(),Date.now(),d,f,h.computeSHA1(a),a.getVersionId(),a.getAlternativeVersionId()));else{let a=c.model.getInitialUndoRedoSnapshot();null!==a&&this._undoRedoService.restoreSnapshot(a)}else if(!d){let a=c.model.getInitialUndoRedoSnapshot();null!==a&&this._undoRedoService.restoreSnapshot(a)}delete this._models[b],c.dispose(),delete this._modelCreationOptionsByLanguageAndResource[a.getLanguageId()+a.uri],this._onModelRemoved.fire(a)}_onDidChangeLanguage(a,b){let c=b.oldLanguage,d=a.getLanguageId(),e=this.getCreationOptions(c,a.uri,a.isForSimpleWidget),f=this.getCreationOptions(d,a.uri,a.isForSimpleWidget);Q._setModelOptionsForModel(a,f,e),this._onModelModeChanged.fire({model:a,oldLanguageId:c})}_getSHA1Computer(){return new hr}};hq=Q=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([hl(0,aB.pG),hl(1,hk.J),hl(2,bG.$D),hl(3,aZ._Y)],hq);class hr{static{this.MAX_MODEL_SIZE=0xa00000}canComputeSHA1(a){return a.getValueLength()<=hr.MAX_MODEL_SIZE}computeSHA1(a){let b,c=new cX.v7,d=a.createSnapshot();for(;b=d.read();)c.update(b);return c.digest()}}var hs=c(40981),ht=c(50661),hu=c(7164);let hv=(0,aZ.u1)("themeService");c(58841);var hw=c(1886),hx=function(a,b){return function(c,d){b(c,d,a)}};let hy=class extends _.jG{constructor(a,b,c){super(),this.quickInputService=a,this.instantiationService=b,this.contextKeyService=c,this.registry=c3.O.as(hw.Fd.Quickaccess),this.mapProviderToDescriptor=new Map,this.lastAcceptedPickerValues=new Map,this.visibleQuickAccess=void 0,this._register((0,_.s)(()=>{for(let a of this.mapProviderToDescriptor.values())(0,_.Xm)(a)&&a.dispose();this.visibleQuickAccess?.picker.dispose()}))}show(a="",b){this.doShowOrPick(a,!1,b)}doShowOrPick(a,b,c){let d,[e,f]=this.getOrInstantiateProvider(a,c?.enabledProviderPrefixes),g=this.visibleQuickAccess,h=g?.descriptor;if(g&&f&&h===f){a===f.prefix||c?.preserveValue||(g.picker.value=a),this.adjustValueSelection(g.picker,f,c);return}if(f&&!c?.preserveValue){let b;if(g&&h&&h!==f){let a=g.value.substr(h.prefix.length);a&&(b=`${f.prefix}${a}`)}if(!b){let a=e?.defaultFilterValue;a===hw.aJ.LAST?b=this.lastAcceptedPickerValues.get(f):"string"==typeof a&&(b=`${f.prefix}${a}`)}"string"==typeof b&&(a=b)}let i=g?.picker?.valueSelection,j=g?.picker?.value,k=new _.Cm,l=k.add(this.quickInputService.createQuickPick({useSeparators:!0}));l.value=a,this.adjustValueSelection(l,f,c),l.placeholder=c?.placeholder??f?.placeholder,l.quickNavigate=c?.quickNavigateConfiguration,l.hideInput=!!l.quickNavigate&&!g,("number"==typeof c?.itemActivation||c?.quickNavigateConfiguration)&&(l.itemActivation=c?.itemActivation??bV.C1.SECOND),l.contextKey=f?.contextKey,l.filterValue=a=>a.substring(f?f.prefix.length:0),b&&(d=new be.Zv,k.add(a$.Jh.once(l.onWillAccept)(a=>{a.veto(),l.hide()}))),k.add(this.registerPickerListeners(l,e,f,a,c));let m=k.add(new bo.Qi);if(e&&k.add(e.provide(l,m.token,c?.providerOptions)),a$.Jh.once(l.onDidHide)(()=>{0===l.selectedItems.length&&m.cancel(),k.dispose(),d?.complete(l.selectedItems.slice(0))}),l.show(),i&&j===a&&(l.valueSelection=i),b)return d?.p}adjustValueSelection(a,b,c){let d;d=c?.preserveValue?[a.value.length,a.value.length]:[b?.prefix.length??0,a.value.length],a.valueSelection=d}registerPickerListeners(a,b,c,d,e){let f=new _.Cm,g=this.visibleQuickAccess={picker:a,descriptor:c,value:d};return f.add((0,_.s)(()=>{g===this.visibleQuickAccess&&(this.visibleQuickAccess=void 0)})),f.add(a.onDidChangeValue(a=>{let[c]=this.getOrInstantiateProvider(a,e?.enabledProviderPrefixes);c!==b?this.show(a,{enabledProviderPrefixes:e?.enabledProviderPrefixes,preserveValue:!0,providerOptions:e?.providerOptions}):g.value=a})),c&&f.add(a.onDidAccept(()=>{this.lastAcceptedPickerValues.set(c,a.value)})),f}getOrInstantiateProvider(a,b){let c=this.registry.getQuickAccessProvider(a,this.contextKeyService);if(!c||b&&!b?.includes(c.prefix))return[void 0,void 0];let d=this.mapProviderToDescriptor.get(c);return d||(d=this.instantiationService.createInstance(c.ctor),this.mapProviderToDescriptor.set(c,d)),[d,c]}};hy=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([hx(0,bV.GK),hx(1,aZ._Y),hx(2,bU.fN)],hy),c(26101);var hz=c(34349),hA=c(98301);class hB{constructor(a){this.nodes=a}toString(){return this.nodes.map(a=>"string"==typeof a?a:a.label).join("")}}!function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);f>3&&g&&Object.defineProperty(b,c,g)}([fe.B],hB.prototype,"toString",null);let hC=/\[([^\]]+)\]\(((?:https?:\/\/|command:|file:)[^\)\s]+)(?: (["'])(.+?)(\3))?\)/gi,hD={},hE=new hA.n("quick-input-button-icon-");class hF{constructor(a,b,c,d,e,f,g){this.id=a,this.label=b,this.tooltip=c,this.enabled=e,this._checked=f,this._run=g,this.class=d}get checked(){return this._checked}set checked(a){this._checked=a,this._run()}run(){return this._checked=!this._checked,this._run()}}function hG(a,b,c){let d=a.iconClass||function(a){let b;if(!a)return;let c=a.dark.toString();return hD[c]?b=hD[c]:(b=hE.nextId(),(0,du.Wt)(`.${b}, .hc-light .${b}`,`background-image: ${(0,ev.Tf)(a.light||a.dark)}`),(0,du.Wt)(`.vs-dark .${b}, .hc-black .${b}`,`background-image: ${(0,ev.Tf)(a.dark)}`),hD[c]=b),b}(a.iconPath);a.alwaysVisible&&(d=d?`${d} always-visible`:"always-visible");let e=()=>(a.toggle&&(a.toggle.checked=!a.toggle.checked),c());return a.toggle?new hF(b,a.tooltip||"","",d,!0,a.toggle.checked,e):{id:b,label:"",tooltip:a.tooltip||"",class:d,enabled:!0,run:e}}function hH(a,b,c){let d=[],e=[];return a.forEach((a,f)=>{let g=hG(a,`${b}-${f}`,async()=>c(a));a.label&&(g.label=a.label),a.secondary?e.push(g):d.push(g)}),{primary:d,secondary:e}}var hI=function(a,b){return function(c,d){b(c,d,a)}};let hJ="inQuickInput",hK=new bU.N1(hJ,!1,(0,a3.kg)(1812,"Whether keyboard focus is inside the quick input control")),hL=bU.M$.has(hJ),hM=new bU.N1("quickInputAlignment","top",(0,a3.kg)(1813,"The alignment of the quick input")),hN="quickInputType",hO=new bU.N1(hN,void 0,(0,a3.kg)(1814,"The type of the currently visible quick input")),hP="cursorAtEndOfQuickInputBox",hQ=new bU.N1(hP,!1,(0,a3.kg)(1815,"Whether the cursor in the quick input is at the end of the input box")),hR=bU.M$.has(hP),hS={iconClass:dz.L.asClassName(dx.W.quickInputBack),tooltip:(0,a3.kg)(1816,"Back")};class hT extends _.jG{static{this.noPromptMessage=(0,a3.kg)(1817,"Press 'Enter' to confirm your input or 'Escape' to cancel")}constructor(a){super(),this.ui=a,this._visible=(0,gG.FY)("visible",!1),this._enabled=!0,this._busy=!1,this._ignoreFocusOut=!1,this._leftButtons=[],this._rightButtons=[],this._inlineButtons=[],this._inputButtons=[],this.buttonsUpdated=!1,this.noValidationMessage=hT.noPromptMessage,this._severity=bD.A.Ignore,this.onDidTriggerButtonEmitter=this._register(new a$.vl),this.onDidHideEmitter=this._register(new a$.vl),this.onWillHideEmitter=this._register(new a$.vl),this.onDisposeEmitter=this._register(new a$.vl),this.visibleDisposables=this._register(new _.Cm),this.onDidTriggerButton=this.onDidTriggerButtonEmitter.event,this.onDidHide=this.onDidHideEmitter.event}get visible(){return this._visible.get()}get title(){return this._title}set title(a){this._title=a,this.update()}get description(){return this._description}set description(a){this._description=a,this.update()}get step(){return this._steps}set step(a){this._steps=a,this.update()}get totalSteps(){return this._totalSteps}set totalSteps(a){this._totalSteps=a,this.update()}get enabled(){return this._enabled}set enabled(a){this._enabled=a,this.update()}get contextKey(){return this._contextKey}set contextKey(a){this._contextKey=a,this.update()}get busy(){return this._busy}set busy(a){this._busy=a,this.update()}get ignoreFocusOut(){return this._ignoreFocusOut}set ignoreFocusOut(a){let b=this._ignoreFocusOut!==a&&!bc.un;this._ignoreFocusOut=a&&!bc.un,b&&this.update()}get titleButtons(){return this._leftButtons.length?[...this._leftButtons,this._rightButtons]:this._rightButtons}get buttons(){return[...this._leftButtons,...this._rightButtons,...this._inlineButtons,...this._inputButtons]}set buttons(a){let b=[],c=[],d=[],e=[];for(let f of a)if(f===hS)b.push(f);else switch(f.location){case bV.dH.Inline:d.push(f);break;case bV.dH.Input:e.push(f);break;default:c.push(f)}this._leftButtons=b,this._rightButtons=c,this._inlineButtons=d,this._inputButtons=e,this.buttonsUpdated=!0,this.update()}get validationMessage(){return this._validationMessage}set validationMessage(a){this._validationMessage=a,this.update()}get severity(){return this._severity}set severity(a){this._severity=a,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.onDidTriggerButton(a=>{-1!==this.buttons.indexOf(a)&&this.onDidTriggerButtonEmitter.fire(a)})),this.ui.show(this),this._visible.set(!0,void 0),this._lastValidationMessage=void 0,this._lastSeverity=void 0,this.buttons.length&&(this.buttonsUpdated=!0),this.update())}hide(){this.visible&&this.ui.hide()}didHide(a=bV.kF.Other){this._visible.set(!1,void 0),this.visibleDisposables.clear(),this.onDidHideEmitter.fire({reason:a})}willHide(a=bV.kF.Other){this.onWillHideEmitter.fire({reason:a})}update(){if(!this.visible)return;let a=this.getTitle();a&&this.ui.title.textContent!==a?this.ui.title.textContent=a:a||" "===this.ui.title.innerHTML||(this.ui.title.innerText="\xa0");let b=this.getDescription();if(this.ui.description1.textContent!==b&&(this.ui.description1.textContent=b),this.ui.description2.textContent!==b&&(this.ui.description2.textContent=b),this.busy&&!this.busyDelay&&(this.busyDelay=new be.pc,this.busyDelay.setIfNotSet(()=>{this.visible&&(this.ui.progressBar.infinite(),this.ui.progressBar.getContainer().removeAttribute("aria-hidden"))},800)),!this.busy&&this.busyDelay&&(this.ui.progressBar.stop(),this.ui.progressBar.getContainer().setAttribute("aria-hidden","true"),this.busyDelay.cancel(),this.busyDelay=void 0),this.buttonsUpdated){this.buttonsUpdated=!1;let a=hH(this._leftButtons,"left-button",a=>this.onDidTriggerButtonEmitter.fire(a));this.ui.leftActionBar.setActions(a.primary,a.secondary);let b=hH(this._rightButtons,"right-button",a=>this.onDidTriggerButtonEmitter.fire(a));this.ui.rightActionBar.setActions(b.primary,b.secondary);let c=hH(this._inlineButtons,"inline-button",a=>this.onDidTriggerButtonEmitter.fire(a));this.ui.inlineActionBar.setActions(c.primary,c.secondary);let d=22*this._inputButtons.length;this.ui.countContainer.style.right=d>0?`${4+d}px`:"4px",this.ui.inputBox.actions=this._inputButtons.map((a,b)=>hG(a,`id-${b}`,async()=>this.onDidTriggerButtonEmitter.fire(a)))}this.ui.ignoreFocusOut=this.ignoreFocusOut,this.ui.setEnabled(this.enabled),this.ui.setContextKey(this.contextKey);let c=this.validationMessage||this.noValidationMessage;this._lastValidationMessage!==c&&(this._lastValidationMessage=c,(0,a_.Ln)(this.ui.message),c&&function(a,b,c){(0,a_.Ln)(b);let d=function(a){let b,c=[],d=0;for(;b=hC.exec(a);){b.index-d>0&&c.push(a.substring(d,b.index));let[,e,f,,g]=b;g?c.push({label:e,href:f,title:g}):c.push({label:e,href:f}),d=b.index+b[0].length}return d<a.length&&c.push(a.substring(d)),new hB(c)}(a),e=0;for(let a of d.nodes)if("string"==typeof a)b.append(...(0,hz.n)(a));else{let d=a.title;!d&&a.href.startsWith("command:")?d=(0,a3.kg)(1835,"Click to execute command '{0}'",a.href.substring(8)):d||(d=a.href);let f=(0,a_.$)("a",{href:a.href,title:d,tabIndex:e++},a.label);f.style.textDecoration="underline";let g=b=>{(0,a_.sd)(b)&&a_.fs.stop(b,!0),c.callback(a.href)},h=c.disposables.add(new ei.f(f,a_.Bx.CLICK)).event,i=c.disposables.add(new ei.f(f,a_.Bx.KEY_DOWN)).event,j=a$.Jh.chain(i,a=>a.filter(a=>{let b=new a1.Z(a);return b.equals(10)||b.equals(3)}));c.disposables.add(dt.q.addTarget(f));let k=c.disposables.add(new ei.f(f,dt.B.Tap)).event;a$.Jh.any(h,k,j)(g,null,c.disposables),b.appendChild(f)}}(c,this.ui.message,{callback:a=>{this.ui.linkOpenerDelegate(a)},disposables:this.visibleDisposables})),this._lastSeverity!==this.severity&&(this._lastSeverity=this.severity,this.showMessageDecoration(this.severity))}getTitle(){return this.title&&this.step?`${this.title} (${this.getSteps()})`:this.title?this.title:this.step?this.getSteps():""}getDescription(){return this.description||""}getSteps(){return this.step&&this.totalSteps?(0,a3.kg)(1818,"{0}/{1}",this.step,this.totalSteps):this.step?String(this.step):""}showMessageDecoration(a){if(this.ui.inputBox.showDecoration(a),a!==bD.A.Ignore){let b=this.ui.inputBox.stylesForType(a);this.ui.message.style.color=b.foreground?`${b.foreground}`:"",this.ui.message.style.backgroundColor=b.background?`${b.background}`:"",this.ui.message.style.border=b.border?`1px solid ${b.border}`:"",this.ui.message.style.marginBottom="-2px"}else this.ui.message.style.color="",this.ui.message.style.backgroundColor="",this.ui.message.style.border="",this.ui.message.style.marginBottom=""}dispose(){this.hide(),this.onDisposeEmitter.fire(),super.dispose()}}class hU extends hT{static{this.DEFAULT_ARIA_LABEL=(0,a3.kg)(1819,"Type to narrow down results.")}constructor(a){super(a),this._value="",this.onDidChangeValueEmitter=this._register(new a$.vl),this.onWillAcceptEmitter=this._register(new a$.vl),this.onDidAcceptEmitter=this._register(new a$.vl),this.onDidCustomEmitter=this._register(new a$.vl),this._items=[],this.itemsUpdated=!1,this._canSelectMany=!1,this._canAcceptInBackground=!1,this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._keepScrollPosition=!1,this._itemActivation=bV.C1.FIRST,this._activeItems=[],this.activeItemsUpdated=!1,this.activeItemsToConfirm=[],this.onDidChangeActiveEmitter=this._register(new a$.vl),this._selectedItems=[],this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=[],this.onDidChangeSelectionEmitter=this._register(new a$.vl),this.onDidTriggerItemButtonEmitter=this._register(new a$.vl),this.onDidTriggerSeparatorButtonEmitter=this._register(new a$.vl),this.valueSelectionUpdated=!0,this._ok="default",this._customButton=!1,this._customButtonSecondary=!1,this._focusEventBufferer=new a$.at,this.type="quickPick",this.filterValue=a=>a,this.onDidChangeValue=this.onDidChangeValueEmitter.event,this.onWillAccept=this.onWillAcceptEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event,this.onDidChangeActive=this.onDidChangeActiveEmitter.event,this.onDidChangeSelection=this.onDidChangeSelectionEmitter.event,this.onDidTriggerItemButton=this.onDidTriggerItemButtonEmitter.event,this.onDidTriggerSeparatorButton=this.onDidTriggerSeparatorButtonEmitter.event,this.noValidationMessage=void 0}get quickNavigate(){return this._quickNavigate}set quickNavigate(a){this._quickNavigate=a,this.update()}get value(){return this._value}set value(a){this.doSetValue(a)}doSetValue(a,b){this._value!==a&&(this._value=a,b||this.update(),this.visible&&this.ui.list.filter(this.filterValue(this._value))&&this.trySelectFirst(),this.onDidChangeValueEmitter.fire(this._value))}set ariaLabel(a){this._ariaLabel=a,this.update()}get ariaLabel(){return this._ariaLabel}get placeholder(){return this._placeholder}set placeholder(a){this._placeholder=a,this.update()}get prompt(){return this.noValidationMessage}set prompt(a){this.noValidationMessage=a,this.update()}get items(){return this._items}get scrollTop(){return this.ui.list.scrollTop}set scrollTop(a){this.ui.list.scrollTop=a}set items(a){this._items=a,this.itemsUpdated=!0,this.update()}get canSelectMany(){return this._canSelectMany}set canSelectMany(a){this._canSelectMany=a,this.update()}get canAcceptInBackground(){return this._canAcceptInBackground}set canAcceptInBackground(a){this._canAcceptInBackground=a}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(a){this._matchOnDescription=a,this.update()}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(a){this._matchOnDetail=a,this.update()}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(a){this._matchOnLabel=a,this.update()}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(a){this._matchOnLabelMode=a,this.update()}get sortByLabel(){return this._sortByLabel}set sortByLabel(a){this._sortByLabel=a,this.update()}get keepScrollPosition(){return this._keepScrollPosition}set keepScrollPosition(a){this._keepScrollPosition=a}get itemActivation(){return this._itemActivation}set itemActivation(a){this._itemActivation=a}get activeItems(){return this._activeItems}set activeItems(a){this._activeItems=a,this.activeItemsUpdated=!0,this.update()}get selectedItems(){return this._selectedItems}set selectedItems(a){this._selectedItems=a,this.selectedItemsUpdated=!0,this.update()}get keyMods(){return this._quickNavigate?bV.Ym:this.ui.keyMods}get valueSelection(){let a=this.ui.inputBox.getSelection();if(a)return[a.start,a.end]}set valueSelection(a){this._valueSelection=a,this.valueSelectionUpdated=!0,this.update()}get customButton(){return this._customButton}set customButton(a){this._customButton=a,this.update()}get customLabel(){return this._customButtonLabel}set customLabel(a){this._customButtonLabel=a,this.update()}get customHover(){return this._customButtonHover}set customHover(a){this._customButtonHover=a,this.update()}get customButtonSecondary(){return this._customButtonSecondary}set customButtonSecondary(a){this._customButtonSecondary=a??!1,this.update()}get ok(){return this._ok}set ok(a){this._ok=a,this.update()}get okLabel(){return this._okLabel??(0,a3.kg)(1820,"OK")}set okLabel(a){this._okLabel=a,this.update()}get hideInput(){return!!this._hideInput}set hideInput(a){this._hideInput=a,this.update()}trySelectFirst(){this.canSelectMany||this.ui.list.focus(bV.Fp.First)}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(a=>{this.doSetValue(a,!0)})),this.visibleDisposables.add(this.ui.onDidAccept(()=>{this.canSelectMany?this.ui.list.getCheckedElements().length||(this._selectedItems=[],this.onDidChangeSelectionEmitter.fire(this.selectedItems)):this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems)),this.handleAccept(!1)})),this.visibleDisposables.add(this.ui.onDidCustom(()=>{this.onDidCustomEmitter.fire()})),this.visibleDisposables.add(this._focusEventBufferer.wrapEvent(this.ui.list.onDidChangeFocus,(a,b)=>b)(a=>{this.activeItemsUpdated||this.activeItemsToConfirm!==this._activeItems&&(0,cL.aI)(a,this._activeItems,(a,b)=>a===b)||(this._activeItems=a,this.onDidChangeActiveEmitter.fire(a))})),this.visibleDisposables.add(this.ui.list.onDidChangeSelection(({items:a,event:b})=>{if(this.canSelectMany&&!a.some(a=>!1===a.pickable)){a.length&&this.ui.list.setSelectedElements([]);return}!(this.selectedItemsToConfirm!==this._selectedItems&&(0,cL.aI)(a,this._selectedItems,(a,b)=>a===b))&&(this._selectedItems=a,this.onDidChangeSelectionEmitter.fire(a),a.length&&this.handleAccept((0,a_.Er)(b)&&1===b.button))})),this.visibleDisposables.add(this.ui.list.onChangedCheckedElements(a=>{!this.canSelectMany||!this.visible||this.selectedItemsToConfirm!==this._selectedItems&&(0,cL.aI)(a,this._selectedItems,(a,b)=>a===b)||(this._selectedItems=a,this.onDidChangeSelectionEmitter.fire(a))})),this.visibleDisposables.add(this.ui.list.onButtonTriggered(a=>this.onDidTriggerItemButtonEmitter.fire(a))),this.visibleDisposables.add(this.ui.list.onSeparatorButtonTriggered(a=>this.onDidTriggerSeparatorButtonEmitter.fire(a))),this.visibleDisposables.add(this.registerQuickNavigation()),this.valueSelectionUpdated=!0),super.show()}handleAccept(a){let b=!1;this.onWillAcceptEmitter.fire({veto:()=>b=!0}),b||this.onDidAcceptEmitter.fire({inBackground:a})}registerQuickNavigation(){return(0,a_.ko)(this.ui.container,a_.Bx.KEY_UP,a=>{if(this.canSelectMany||!this._quickNavigate)return;let b=new a1.Z(a),c=b.keyCode;this._quickNavigate.keybindings.some(a=>{let d=a.getChords();return!(d.length>1)&&(d[0].shiftKey&&4===c?!b.ctrlKey&&!b.altKey&&!b.metaKey:!!d[0].altKey&&6===c||!!d[0].ctrlKey&&5===c||!!d[0].metaKey&&57===c)})&&(this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!1)),this._quickNavigate=void 0)})}update(){if(!this.visible)return;let a=this.keepScrollPosition?this.scrollTop:0,b=!!this.description,c={title:!!this.title||!!this.step||!!this.titleButtons.length,description:b,checkAll:this.canSelectMany&&!this._hideCheckAll,checkBox:this.canSelectMany,inputBox:!this._hideInput,progressBar:!this._hideInput||b,visibleCount:!0,count:this.canSelectMany&&!this._hideCountBadge,ok:"default"===this.ok?this.canSelectMany:this.ok,list:!0,message:!!this.validationMessage||!!this.prompt,customButton:this.customButton};this.ui.setVisibilities(c),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||"");let d=this.ariaLabel;!d&&c.inputBox&&(d=this.placeholder,this.title&&(d=d?`${d} - ${this.title}`:this.title),d||(d=hU.DEFAULT_ARIA_LABEL)),this.ui.list.ariaLabel!==d&&(this.ui.list.ariaLabel=d??null),this.ui.inputBox.ariaLabel!==d&&(this.ui.inputBox.ariaLabel=d??"input"),this.ui.list.matchOnDescription=this.matchOnDescription,this.ui.list.matchOnDetail=this.matchOnDetail,this.ui.list.matchOnLabel=this.matchOnLabel,this.ui.list.matchOnLabelMode=this.matchOnLabelMode,this.ui.list.sortByLabel=this.sortByLabel,this.itemsUpdated&&(this.itemsUpdated=!1,this._focusEventBufferer.bufferEvents(()=>{switch(this.ui.list.setElements(this.items),this.ui.list.shouldLoop=!this.canSelectMany,this.ui.list.filter(this.filterValue(this.ui.inputBox.value)),this._itemActivation){case bV.C1.NONE:this._itemActivation=bV.C1.FIRST;break;case bV.C1.SECOND:this.ui.list.focus(bV.Fp.Second),this._itemActivation=bV.C1.FIRST;break;case bV.C1.LAST:this.ui.list.focus(bV.Fp.Last),this._itemActivation=bV.C1.FIRST;break;default:this.trySelectFirst()}})),this.ui.container.classList.contains("show-checkboxes")!==!!this.canSelectMany&&(this.canSelectMany?this.ui.list.clearFocus():this.trySelectFirst()),this.activeItemsUpdated&&(this.activeItemsUpdated=!1,this.activeItemsToConfirm=this._activeItems,this.ui.list.setFocusedElements(this.activeItems),this.activeItemsToConfirm===this._activeItems&&(this.activeItemsToConfirm=null)),this.selectedItemsUpdated&&(this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=this._selectedItems,this.canSelectMany?this.ui.list.setCheckedElements(this.selectedItems):this.ui.list.setSelectedElements(this.selectedItems),this.selectedItemsToConfirm===this._selectedItems&&(this.selectedItemsToConfirm=null)),this.ui.ok.label=this.okLabel||"",this.ui.customButton.label=this.customLabel||"",this.ui.customButton.element.title=this.customHover||"",this.ui.customButton.secondary=this.customButtonSecondary||!1,!c.inputBox&&(this.ui.list.domFocus(),this.canSelectMany&&this.ui.list.focus(bV.Fp.First)),this.keepScrollPosition&&(this.scrollTop=a)}focus(a){this.ui.list.focus(a),this.canSelectMany&&this.ui.list.domFocus()}accept(a){(!a||this._canAcceptInBackground)&&(this.activeItems[0]&&!this._canSelectMany&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems)),this.handleAccept(a??!1))}}class hV extends hT{constructor(){super(...arguments),this._value="",this.valueSelectionUpdated=!0,this._password=!1,this.onDidValueChangeEmitter=this._register(new a$.vl),this.onDidAcceptEmitter=this._register(new a$.vl),this.type="inputBox",this.onDidChangeValue=this.onDidValueChangeEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event}get value(){return this._value}set value(a){this._value=a||"",this.update()}get valueSelection(){let a=this.ui.inputBox.getSelection();if(a)return[a.start,a.end]}set valueSelection(a){this._valueSelection=a,this.valueSelectionUpdated=!0,this.update()}get placeholder(){return this._placeholder}set placeholder(a){this._placeholder=a,this.update()}get ariaLabel(){return this._ariaLabel}set ariaLabel(a){this._ariaLabel=a,this.update()}get password(){return this._password}set password(a){this._password=a,this.update()}get prompt(){return this._prompt}set prompt(a){this._prompt=a,this.noValidationMessage=a?(0,a3.kg)(1821,"{0} (Press 'Enter' to confirm or 'Escape' to cancel)",a):hT.noPromptMessage,this.update()}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(a=>{a!==this.value&&(this._value=a,this.onDidValueChangeEmitter.fire(a))})),this.visibleDisposables.add(this.ui.onDidAccept(()=>this.onDidAcceptEmitter.fire())),this.valueSelectionUpdated=!0),super.show()}accept(){this.onDidAcceptEmitter.fire()}update(){if(!this.visible)return;this.ui.container.classList.remove("hidden-input");let a={title:!!this.title||!!this.step||!!this.titleButtons.length,description:!!this.description||!!this.step,inputBox:!0,message:!0,progressBar:!0};this.ui.setVisibilities(a),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||""),this.ui.inputBox.password!==this.password&&(this.ui.inputBox.password=this.password);let b=this.ariaLabel;!b&&a.inputBox&&(b=this.placeholder?this.title?`${this.placeholder} - ${this.title}`:this.placeholder:this.title?this.title:"input"),this.ui.inputBox.ariaLabel!==b&&(this.ui.inputBox.ariaLabel=b||"input")}}let hW=class extends aX.fO{constructor(a,b){super("mouse",void 0,a=>this.getOverrideOptions(a),a,b)}getOverrideOptions(a){return{persistence:{hideOnKeyDown:!1},appearance:{showHoverHint:((0,a_.sb)(a.content)?a.content.textContent??"":"string"==typeof a.content?a.content:a.content.value).includes("\n"),skipFadeInAnimation:!0}}}};hW=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([hI(0,aB.pG),hI(1,aX.TN)],hW);var hX=c(9634),hY=c(49128);c(41847);class hZ extends _.jG{constructor(a,b,c){super(),this.options=b,this.styles=c,this.count=0,this.hover=this._register(new _.HE),this.element=(0,a_.BC)(a,(0,a_.$)(".monaco-count-badge")),this._register((0,_.s)(()=>a.removeChild(this.element))),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0),this.updateHover()}setCount(a){this.count=a,this.render()}setTitleFormat(a){this.titleFormat=a,this.updateHover(),this.render()}updateHover(){""===this.titleFormat||this.hover.value?""===this.titleFormat&&this.hover.value&&(this.hover.value=void 0):this.hover.value=(0,eg.i)().setupDelayedHoverAtMouse(this.element,()=>({content:(0,aa.GP)(this.titleFormat,this.count),appearance:{compact:!0}}))}render(){this.element.textContent=(0,aa.GP)(this.countFormat,this.count),this.element.style.backgroundColor=this.styles.badgeBackground??"",this.element.style.color=this.styles.badgeForeground??"",this.styles.badgeBorder&&(this.element.style.border=`1px solid ${this.styles.badgeBorder}`)}}c(63405);let h$="done",h_="active",h0="infinite",h1="infinite-long-running",h2="discrete",h3=(0,a3.kg)(16,"Progress");class h4 extends _.jG{static{this.LONG_RUNNING_INFINITE_THRESHOLD=1e4}constructor(a,b){super(),this.progressSignal=this._register(new _.HE),this.workedVal=0,this.showDelayedScheduler=this._register(new be.uC(()=>(0,a_.WU)(this.element),0)),this.longRunningScheduler=this._register(new be.uC(()=>this.infiniteLongRunning(),h4.LONG_RUNNING_INFINITE_THRESHOLD)),this.create(a,b)}create(a,b){this.element=document.createElement("div"),this.element.classList.add("monaco-progress-container"),this.element.setAttribute("role","progressbar"),this.element.setAttribute("aria-valuemin","0"),this.element.setAttribute("aria-label",b?.ariaLabel&&b.ariaLabel.trim()?b.ariaLabel:h3),a.appendChild(this.element),this.bit=document.createElement("div"),this.bit.classList.add("progress-bit"),this.bit.style.backgroundColor=b?.progressBarBackground||"#0E70C0",this.element.appendChild(this.bit)}off(){this.bit.style.width="inherit",this.bit.style.opacity="1",this.element.classList.remove(h_,h0,h1,h2),this.workedVal=0,this.totalWork=void 0,this.longRunningScheduler.cancel(),this.progressSignal.clear()}stop(){return this.doDone(!1)}doDone(a){return this.element.classList.add(h$),this.element.classList.contains(h0)?(this.bit.style.opacity="0",a?setTimeout(()=>this.off(),200):this.off()):(this.bit.style.width="inherit",a?setTimeout(()=>this.off(),200):this.off()),this}infinite(){return this.bit.style.width="2%",this.bit.style.opacity="1",this.element.classList.remove(h2,h$,h1),this.element.classList.add(h_,h0),this.longRunningScheduler.schedule(),this}infiniteLongRunning(){this.element.classList.add(h1)}getContainer(){return this.element}}let h5=a_.$;class h6 extends _.jG{constructor(a,b,c){super(),this.parent=a,this._listFocusMode=!1,this.onDidChange=a=>this.findInput.onDidChange(a),this.container=(0,a_.BC)(this.parent,h5(".quick-input-box")),this.findInput=this._register(new ew.c(this.container,void 0,{label:"",inputBoxStyles:b,toggleStyles:c,actionViewItemProvider:(0,ey.Om)(c),hideHoverOnValueChange:!0}))}get onKeyDown(){return this.findInput.onKeyDown}get value(){return this.findInput.getValue()}set value(a){this.findInput.setValue(a)}select(a=null){this.findInput.inputBox.select(a)}getSelection(){return this.findInput.inputBox.getSelection()}isSelectionAtEnd(){return this.findInput.inputBox.isSelectionAtEnd()}get placeholder(){return this.findInput.inputBox.inputElement.getAttribute("placeholder")||""}set placeholder(a){this.findInput.inputBox.setPlaceHolder(a)}get password(){return"password"===this.findInput.inputBox.inputElement.type}set password(a){this.findInput.inputBox.inputElement.type=a?"password":"text"}set enabled(a){this.findInput.inputBox.inputElement.toggleAttribute("readonly",!a)}set toggles(a){this.findInput.setAdditionalToggles(a)}set actions(a){this.setActions(a)}setActions(a,b){this.findInput.setActions(a,b)}get ariaLabel(){return this.findInput.inputBox.inputElement.getAttribute("aria-label")||""}set ariaLabel(a){this.findInput.inputBox.inputElement.setAttribute("aria-label",a)}hasFocus(){return this.findInput.inputBox.hasFocus()}setAttribute(a,b){this.findInput.inputBox.inputElement.setAttribute(a,b)}removeAttribute(a){this.findInput.inputBox.inputElement.removeAttribute(a)}setListFocusMode(a){if(this._listFocusMode===a)return;this._listFocusMode=a;let b=this.findInput.inputBox.inputElement;a?(b.setAttribute("aria-haspopup","listbox"),b.setAttribute("aria-autocomplete","list")):(b.removeAttribute("aria-haspopup"),b.removeAttribute("aria-autocomplete"))}showDecoration(a){a===bD.A.Ignore?this.findInput.clearMessage():this.findInput.showMessage({type:a===bD.A.Info?1:a===bD.A.Warning?2:3,content:""})}stylesForType(a){return this.findInput.inputBox.stylesForType(a===bD.A.Info?1:a===bD.A.Warning?2:3)}setFocus(){this.findInput.focus()}layout(){this.findInput.inputBox.layout()}}c(9761);class h7 extends _.jG{constructor(a,b){super(),this.options=b,this.text="",this.title="",this.highlights=[],this.didEverRender=!1,this.domNode=(0,a_.BC)(a,(0,a_.$)("span.monaco-highlighted-label"))}get element(){return this.domNode}set(a,b=[],c="",d,e){a||(a=""),d&&(a=h7.escapeNewLines(a,b)),this.didEverRender&&this.text===a&&this.title===c&&(0,c1.aI)(this.highlights,b)||(this.text=a,this.title=c,this.highlights=b,this.render(e))}render(a){let b=[],c=0;for(let d of this.highlights){if(d.end===d.start)continue;if(c<d.start){let e=this.text.substring(c,d.start);a?b.push(...(0,hz.n)(e,!0)):b.push(e),c=d.start}let e=this.text.substring(c,d.end),f=(0,a_.$)("span.highlight",void 0,...a?(0,hz.n)(e,!0):[e]);d.extraClasses&&f.classList.add(...d.extraClasses),b.push(f),c=d.end}if(c<this.text.length){let d=this.text.substring(c);a?b.push(...(0,hz.n)(d,!0)):b.push(d)}if((0,a_.Ln)(this.domNode,...b),this.customHover||""===this.title)this.customHover&&this.customHover.update(this.title);else{let a=this.options?.hoverDelegate??(0,eh.nZ)("mouse");this.customHover=this._register((0,eg.i)().setupManagedHover(a,this.domNode,this.title))}this.didEverRender=!0}static escapeNewLines(a,b){let c=0,d=0;return a.replace(/\r\n|\r|\n/g,(a,e)=>{for(let f of(d="\r\n"===a?-1:0,e+=c,b))!(f.end<=e)&&(f.start>=e&&(f.start+=d),f.end>=e&&(f.end+=d));return c+=d,"⏎"})}}var h8=c(67786);class h9{constructor(a){this._element=a}get element(){return this._element}set textContent(a){this.disposed||a===this._textContent||(this._textContent=a,this._element.textContent=a)}set classNames(a){this.disposed||(0,c1.aI)(a,this._classNames)||(this._classNames=a,this._element.classList.value="",this._element.classList.add(...a))}set empty(a){this.disposed||a===this._empty||(this._empty=a,this._element.style.marginLeft=a?"0":"")}dispose(){this.disposed=!0}}class ia extends _.jG{constructor(a,b){super(),this.customHovers=new Map,this.creationOptions=b,this.domNode=this._register(new h9((0,a_.BC)(a,(0,a_.$)(".monaco-icon-label")))),this.labelContainer=(0,a_.BC)(this.domNode.element,(0,a_.$)(".monaco-icon-label-container")),this.nameContainer=(0,a_.BC)(this.labelContainer,(0,a_.$)("span.monaco-icon-name-container")),b?.supportHighlights||b?.supportIcons?this.nameNode=this._register(new ic(this.nameContainer,!!b.supportIcons)):this.nameNode=new ib(this.nameContainer),this.hoverDelegate=b?.hoverDelegate??(0,eh.nZ)("mouse")}get element(){return this.domNode.element}setLabel(a,b,c){let d=["monaco-icon-label"],e=["monaco-icon-label-container"],f="";c&&(c.extraClasses&&d.push(...c.extraClasses),c.bold&&d.push("bold"),c.italic&&d.push("italic"),c.strikethrough&&d.push("strikethrough"),c.disabledCommand&&e.push("disabled"),c.title&&("string"==typeof c.title?f+=c.title:f+=a));let g=this.domNode.element.querySelector(".monaco-icon-label-iconpath");if(c?.iconPath){let a;if(g&&(0,a_.sb)(g)?a=g:(a=(0,a_.$)(".monaco-icon-label-iconpath"),this.domNode.element.prepend(a)),dz.L.isThemeIcon(c.iconPath)){let b=dz.L.asClassName(c.iconPath);a.className=`monaco-icon-label-iconpath ${b}`,a.style.backgroundImage=""}else a.style.backgroundImage=(0,ev.Tf)(c?.iconPath);a.style.backgroundRepeat="no-repeat",a.style.backgroundPosition="center",a.style.backgroundSize="contain"}else g&&g.remove();if(this.domNode.classNames=d,this.domNode.element.setAttribute("aria-label",f),this.labelContainer.classList.value="",this.labelContainer.classList.add(...e),this.setupHover(c?.descriptionTitle?this.labelContainer:this.element,c?.title),this.nameNode.setLabel(a,c),b||this.descriptionNode){let a=this.getOrCreateDescriptionNode();if(a instanceof h7){let d=c?.supportIcons??this.creationOptions?.supportIcons;a.set(b||"",c?c.descriptionMatches:void 0,void 0,c?.labelEscapeNewLines,d),this.setupHover(a.element,c?.descriptionTitle)}else a.textContent=b&&c?.labelEscapeNewLines?h7.escapeNewLines(b,[]):b||"",this.setupHover(a.element,c?.descriptionTitle||""),a.empty=!b}(c?.suffix||this.suffixNode)&&(this.getOrCreateSuffixNode().textContent=c?.suffix??"")}setupHover(a,b){let c=this.customHovers.get(a);if(c&&(c.dispose(),this.customHovers.delete(a)),!b)return void a.removeAttribute("title");let d=a;if(this.creationOptions?.hoverTargetOverride){if(!(0,a_.QX)(a,this.creationOptions.hoverTargetOverride))throw Error("hoverTargetOverrride must be an ancestor of the htmlElement");d=this.creationOptions.hoverTargetOverride}let e=(0,eg.i)().setupManagedHover(this.hoverDelegate,d,b);e&&this.customHovers.set(a,e)}dispose(){for(let a of(super.dispose(),this.customHovers.values()))a.dispose();this.customHovers.clear()}getOrCreateSuffixNode(){if(!this.suffixNode){let a=this._register(new h9((0,a_.Pl)(this.nameContainer,(0,a_.$)("span.monaco-icon-suffix-container"))));this.suffixNode=this._register(new h9((0,a_.BC)(a.element,(0,a_.$)("span.label-suffix"))))}return this.suffixNode}getOrCreateDescriptionNode(){if(!this.descriptionNode){let a=this._register(new h9((0,a_.BC)(this.labelContainer,(0,a_.$)("span.monaco-icon-description-container"))));this.creationOptions?.supportDescriptionHighlights?this.descriptionNode=this._register(new h7((0,a_.BC)(a.element,(0,a_.$)("span.label-description")))):this.descriptionNode=this._register(new h9((0,a_.BC)(a.element,(0,a_.$)("span.label-description"))))}return this.descriptionNode}}class ib{constructor(a){this.container=a,this.label=void 0,this.singleLabel=void 0}setLabel(a,b){if(!(this.label===a&&(0,c1.aI)(this.options,b)))if(this.label=a,this.options=b,"string"==typeof a)this.singleLabel||(this.container.textContent="",this.container.classList.remove("multiple"),this.singleLabel=(0,a_.BC)(this.container,(0,a_.$)("a.label-name",{id:b?.domId}))),this.singleLabel.textContent=a;else{this.container.textContent="",this.container.classList.add("multiple"),this.singleLabel=void 0;for(let c=0;c<a.length;c++){let d=a[c],e=b?.domId&&`${b?.domId}_${c}`;(0,a_.BC)(this.container,(0,a_.$)("a.label-name",{id:e,"data-icon-label-count":a.length,"data-icon-label-index":c,role:"treeitem"},d)),c<a.length-1&&(0,a_.BC)(this.container,(0,a_.$)("span.label-separator",void 0,b?.separator||"/"))}}}}class ic extends _.jG{constructor(a,b){super(),this.container=a,this.supportIcons=b,this.label=void 0,this.singleLabel=void 0,this._labelDisposables=this._register(new _.Cm)}setLabel(a,b){if(this.label===a&&(0,c1.aI)(this.options,b))return;this.label=a,this.options=b;let c=b?.supportIcons??this.supportIcons;if("string"==typeof a)this.singleLabel||(this._labelDisposables.clear(),this.container.textContent="",this.container.classList.remove("multiple"),this.singleLabel=this._labelDisposables.add(new h7((0,a_.BC)(this.container,(0,a_.$)("a.label-name",{id:b?.domId}))))),this.singleLabel.set(a,b?.matches,void 0,b?.labelEscapeNewLines,c);else{this._labelDisposables.clear(),this.container.textContent="",this.container.classList.add("multiple"),this.singleLabel=void 0;let d=b?.separator||"/",e=function(a,b,c){if(!c)return;let d=0;return a.map(a=>{let e={start:d,end:d+a.length},f=c.map(a=>h8.Q.intersect(e,a)).filter(a=>!h8.Q.isEmpty(a)).map(({start:a,end:b})=>({start:a-d,end:b-d}));return d=e.end+b.length,f})}(a,d,b?.matches);for(let f=0;f<a.length;f++){let g=a[f],h=e?e[f]:void 0,i=b?.domId&&`${b?.domId}_${f}`,j=(0,a_.$)("a.label-name",{id:i,"data-icon-label-count":a.length,"data-icon-label-index":f,role:"treeitem"});this._labelDisposables.add(new h7((0,a_.BC)(this.container,j))).set(g,h,void 0,b?.labelEscapeNewLines,c),f<a.length-1&&(0,a_.BC)(j,(0,a_.$)("span.label-separator",void 0,d))}}}}var id=c(63018),ie=c(35527),ig=c(2525);let ih=new ig.d(()=>{let a=ie.x.Collator(void 0,{numeric:!0,sensitivity:"base"}).value;return{collator:a,collatorIsNumeric:a.resolvedOptions().numeric}});new ig.d(()=>({collator:ie.x.Collator(void 0,{numeric:!0}).value})),new ig.d(()=>({collator:ie.x.Collator(void 0,{numeric:!0,sensitivity:"accent"}).value}));var ii=c(98030),ij=c(59825),ik=c(54265),il=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},im=function(a,b){return function(c,d){b(c,d,a)}};let io=a_.$;class ip{constructor(a,b,c){this.index=a,this.hasCheckbox=b,this._hidden=!1,this._init=new ig.d(()=>{let a=c.label??"",b=(0,bs._k)(a).text.trim(),d=c.ariaLabel||[a,this.saneDescription,this.saneDetail].map(a=>(0,bs.R$)(a)).filter(a=>!!a).join(", ");return{saneLabel:a,saneSortLabel:b,saneAriaLabel:d}}),this._saneDescription=c.description,this._saneTooltip=c.tooltip}get saneLabel(){return this._init.value.saneLabel}get saneSortLabel(){return this._init.value.saneSortLabel}get saneAriaLabel(){return this._init.value.saneAriaLabel}get element(){return this._element}set element(a){this._element=a}get hidden(){return this._hidden}set hidden(a){this._hidden=a}get saneDescription(){return this._saneDescription}set saneDescription(a){this._saneDescription=a}get saneDetail(){return this._saneDetail}set saneDetail(a){this._saneDetail=a}get saneTooltip(){return this._saneTooltip}set saneTooltip(a){this._saneTooltip=a}get labelHighlights(){return this._labelHighlights}set labelHighlights(a){this._labelHighlights=a}get descriptionHighlights(){return this._descriptionHighlights}set descriptionHighlights(a){this._descriptionHighlights=a}get detailHighlights(){return this._detailHighlights}set detailHighlights(a){this._detailHighlights=a}}class iq extends ip{constructor(a,b,c,d,e,f,g){super(a,c,f),this.childIndex=b,this.fireButtonTriggered=d,this._onChecked=e,this.item=f,this._separator=g,this._checked=!1,this.onChecked=c?a$.Jh.map(a$.Jh.filter(this._onChecked.event,a=>a.element===this),a=>a.checked):a$.Jh.None,this._saneDetail=f.detail,this._labelHighlights=f.highlights?.label,this._descriptionHighlights=f.highlights?.description,this._detailHighlights=f.highlights?.detail}get separator(){return this._separator}set separator(a){this._separator=a}get checked(){return this._checked}set checked(a){a!==this._checked&&(this._checked=a,this._onChecked.fire({element:this,checked:a}))}get checkboxDisabled(){return!!this.item.disabled}}(x=T||(T={}))[x.NONE=0]="NONE",x[x.MOUSE_HOVER=1]="MOUSE_HOVER",x[x.ACTIVE_ITEM=2]="ACTIVE_ITEM";class ir extends ip{constructor(a,b,c){super(a,!1,c),this.fireSeparatorButtonTriggered=b,this.separator=c,this.children=[],this.focusInsideSeparator=T.NONE}}class is{getHeight(a){return a instanceof ir?30:a.saneDetail?44:22}getTemplateId(a){return a instanceof iq?iv.ID:iw.ID}}class it{getWidgetAriaLabel(){return(0,a3.kg)(1834,"Quick Input")}getAriaLabel(a){return a.separator?.label?`${a.saneAriaLabel}, ${a.separator.label}`:a.saneAriaLabel}getWidgetRole(){return"listbox"}getRole(a){return a.hasCheckbox?"checkbox":"option"}isChecked(a){if(a.hasCheckbox&&a instanceof iq)return{get value(){return a.checked},onDidChange:b=>a.onChecked(()=>b())}}}class iu extends _.jG{constructor(a,b,c){super(),this.hoverDelegate=a,this.toggleStyles=b,this.contextMenuService=c,this._onDidDisposeFocusedElement=this._register(new a$.vl),this.onDidDisposeFocusedElement=this._onDidDisposeFocusedElement.event}renderTemplate(a){let b=Object.create(null);b.toDisposeElement=new _.Cm,b.toDisposeTemplate=new _.Cm,b.entry=(0,a_.BC)(a,io(".quick-input-list-entry"));let c=(0,a_.BC)(b.entry,io("label.quick-input-list-label"));b.outerLabel=c,b.checkbox=b.toDisposeTemplate.add(new _.HE),b.toDisposeTemplate.add((0,a_.un)(c,a_.Bx.CLICK,a=>{if(b.checkbox.value&&!a.defaultPrevented&&b.checkbox.value.enabled){let a=!b.checkbox.value.checked;b.checkbox.value.checked=a,b.element.checked=a}}));let d=(0,a_.BC)(c,io(".quick-input-list-rows")),e=(0,a_.BC)(d,io(".quick-input-list-row")),f=(0,a_.BC)(d,io(".quick-input-list-row"));b.label=new ia(e,{supportHighlights:!0,supportDescriptionHighlights:!0,supportIcons:!0,hoverDelegate:this.hoverDelegate}),b.toDisposeTemplate.add(b.label),b.icon=(0,a_.Hs)(b.label.element,io(".quick-input-list-icon"));let g=(0,a_.BC)(e,io(".quick-input-list-entry-keybinding"));return b.keybinding=new id.x(g,bc.OS),b.toDisposeTemplate.add(b.keybinding),b.detail=new ia((0,a_.BC)(f,io(".quick-input-list-label-meta")),{supportHighlights:!0,supportIcons:!0,hoverDelegate:this.hoverDelegate}),b.toDisposeTemplate.add(b.detail),b.separator=(0,a_.BC)(b.entry,io(".quick-input-list-separator")),b.toolBar=new hX.i(b.entry,this.contextMenuService,{...this.hoverDelegate?{hoverDelegate:this.hoverDelegate}:void 0,actionViewItemProvider:(0,ey.Om)(this.toggleStyles),icon:!0,label:!1}),b.toolBar.getElement().classList.add("quick-input-list-entry-action-bar"),b.toDisposeTemplate.add(b.toolBar),b}disposeTemplate(a){a.toDisposeElement.dispose(),a.toDisposeTemplate.dispose()}disposeElement(a,b,c){(0,a_.nR)(c.entry)&&this._onDidDisposeFocusedElement.fire(),c.toDisposeElement.clear(),c.toolBar.setActions([])}}let iv=class extends iu{static{R=this}static{this.ID="quickpickitem"}constructor(a,b,c,d){super(a,b,c),this.themeService=d,this._itemsWithSeparatorsFrequency=new Map}get templateId(){return R.ID}ensureCheckbox(a,b){if(!a.hasCheckbox){b.checkbox.value?.domNode.remove(),b.checkbox.clear();return}let c=b.checkbox.value;c?c.setTitle(a.saneLabel):(c=new ey.Sc(a.saneLabel,a.checked,{...dI.$B,size:15}),b.checkbox.value=c,b.outerLabel.prepend(c.domNode),c.domNode.tabIndex=-1),a.checkboxDisabled?c.disable():c.enable(),c.checked=a.checked,b.toDisposeElement.add(a.onChecked(a=>c.checked=a)),b.toDisposeElement.add(c.onChange(()=>a.checked=c.checked))}renderElement(a,b,c){let d,e=a.element;c.element=e,e.element=c.entry??void 0;let f=e.item;e.element.classList.toggle("not-pickable",!1===e.item.pickable),this.ensureCheckbox(e,c);let{labelHighlights:g,descriptionHighlights:h,detailHighlights:i}=e;if(f.iconPath){let a=(0,ii.HD)(this.themeService.getColorTheme().type)?f.iconPath.dark:f.iconPath.light??f.iconPath.dark,b=ab.r.revive(a);c.icon.className="quick-input-list-icon",c.icon.style.backgroundImage=(0,ev.Tf)(b)}else c.icon.style.backgroundImage="",c.icon.className=f.iconClass?`quick-input-list-icon ${f.iconClass}`:"";!e.saneTooltip&&e.saneDescription&&(d={markdown:{value:(0,aa.ih)(e.saneDescription),supportThemeIcons:!0},markdownNotSupportedFallback:e.saneDescription});let j={matches:g||[],descriptionTitle:d,descriptionMatches:h||[],labelEscapeNewLines:!0};if(j.extraClasses=f.iconClasses,j.italic=f.italic,j.strikethrough=f.strikethrough,c.entry.classList.remove("quick-input-list-separator-as-item"),c.label.setLabel(e.saneLabel,e.saneDescription,j),c.keybinding.set(f.keybinding),e.saneDetail){let a;e.saneTooltip||(a={markdown:{value:(0,aa.ih)(e.saneDetail),supportThemeIcons:!0},markdownNotSupportedFallback:e.saneDetail}),c.detail.element.style.display="",c.detail.setLabel(e.saneDetail,void 0,{matches:i,title:a,labelEscapeNewLines:!0})}else c.detail.element.style.display="none";e.separator?.label?(c.separator.textContent=e.separator.label,c.separator.style.display="",this.addItemWithSeparator(e)):c.separator.style.display="none",c.entry.classList.toggle("quick-input-list-separator-border",!!e.separator&&0!==e.childIndex);let k=f.buttons;if(k&&k.length){let{primary:a,secondary:b}=hH(k,"quick-input-item",a=>e.fireButtonTriggered({button:a,item:e.item}));c.toolBar.setActions(a,b),c.entry.classList.add("has-actions")}else c.toolBar.setActions([]),c.entry.classList.remove("has-actions")}disposeElement(a,b,c){this.removeItemWithSeparator(a.element),super.disposeElement(a,b,c)}isItemWithSeparatorVisible(a){return this._itemsWithSeparatorsFrequency.has(a)}addItemWithSeparator(a){this._itemsWithSeparatorsFrequency.set(a,(this._itemsWithSeparatorsFrequency.get(a)||0)+1)}removeItemWithSeparator(a){let b=this._itemsWithSeparatorsFrequency.get(a)||0;b>1?this._itemsWithSeparatorsFrequency.set(a,b-1):this._itemsWithSeparatorsFrequency.delete(a)}};iv=R=il([im(2,aY.Z),im(3,aR.Gy)],iv);let iw=class extends iu{static{S=this}static{this.ID="quickpickseparator"}constructor(a,b,c){super(a,b,c),this._visibleSeparatorsFrequency=new Map}get templateId(){return S.ID}get visibleSeparators(){return[...this._visibleSeparatorsFrequency.keys()]}isSeparatorVisible(a){return this._visibleSeparatorsFrequency.has(a)}renderElement(a,b,c){let d,e=a.element;c.element=e,e.element=c.entry??void 0,e.element.classList.toggle("focus-inside",!!e.focusInsideSeparator);let f=e.separator,{labelHighlights:g,descriptionHighlights:h}=e;c.icon.style.backgroundImage="",c.icon.className="",!e.saneTooltip&&e.saneDescription&&(d={markdown:{value:(0,aa.ih)(e.saneDescription),supportThemeIcons:!0},markdownNotSupportedFallback:e.saneDescription});let i={matches:g||[],descriptionTitle:d,descriptionMatches:h||[],labelEscapeNewLines:!0};c.entry.classList.add("quick-input-list-separator-as-item"),c.label.setLabel(e.saneLabel,e.saneDescription,i),c.separator.style.display="none",c.entry.classList.add("quick-input-list-separator-border");let j=f.buttons;if(j&&j.length){let{primary:a,secondary:b}=hH(j,"quick-input-separator",a=>e.fireSeparatorButtonTriggered({button:a,separator:e.separator}));c.toolBar.setActions(a,b),c.entry.classList.add("has-actions")}else c.toolBar.setActions([]),c.entry.classList.remove("has-actions");this.addSeparator(e)}disposeElement(a,b,c){this.removeSeparator(a.element),this.isSeparatorVisible(a.element)||a.element.element?.classList.remove("focus-inside"),super.disposeElement(a,b,c)}addSeparator(a){this._visibleSeparatorsFrequency.set(a,(this._visibleSeparatorsFrequency.get(a)||0)+1)}removeSeparator(a){let b=this._visibleSeparatorsFrequency.get(a)||0;b>1?this._visibleSeparatorsFrequency.set(a,b-1):this._visibleSeparatorsFrequency.delete(a)}};iw=S=il([im(2,aY.Z)],iw);let ix=class extends _.jG{constructor(a,b,c,d,e,f,g){super(),this.parent=a,this.hoverDelegate=b,this.linkOpenerDelegate=c,this.styles=e,this.accessibilityService=g,this._onLeave=this._register(new a$.vl),this.onLeave=this._onLeave.event,this._visibleCountObservable=(0,gG.FY)("VisibleCount",0),this.onChangedVisibleCount=a$.Jh.fromObservable(this._visibleCountObservable,this._store),this._allVisibleCheckedObservable=(0,gG.FY)("AllVisibleChecked",!1),this.onChangedAllVisibleChecked=a$.Jh.fromObservable(this._allVisibleCheckedObservable,this._store),this._checkedCountObservable=(0,gG.FY)("CheckedCount",0),this.onChangedCheckedCount=a$.Jh.fromObservable(this._checkedCountObservable,this._store),this._checkedElementsObservable=(0,ij.Z)({equalsFn:cL.aI},[]),this.onChangedCheckedElements=a$.Jh.fromObservable(this._checkedElementsObservable,this._store),this._onButtonTriggered=this._register(new a$.vl),this.onButtonTriggered=this._onButtonTriggered.event,this._onSeparatorButtonTriggered=this._register(new a$.vl),this.onSeparatorButtonTriggered=this._onSeparatorButtonTriggered.event,this._elementChecked=this._register(new a$.vl),this._elementCheckedEventBufferer=new a$.at,this._hasCheckboxes=!1,this._inputElements=[],this._elementTree=[],this._itemElements=[],this._elementDisposable=this._register(new _.Cm),this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._matchOnLabelMode="fuzzy",this._sortByLabel=!0,this._shouldLoop=!0,this._container=(0,a_.BC)(this.parent,io(".quick-input-list")),this._separatorRenderer=this._register(f.createInstance(iw,b,this.styles.toggle)),this._itemRenderer=this._register(f.createInstance(iv,b,this.styles.toggle)),this._tree=this._register(f.createInstance(gl,"QuickInput",this._container,new is,[this._itemRenderer,this._separatorRenderer],{filter:{filter:a=>a.hidden?0:a instanceof ir?2:1},sorter:{compare:(a,b)=>{var c,d,e;let f,g;return this.sortByLabel&&this._lastQueryString?(c=a,d=b,e=this._lastQueryString.toLowerCase(),f=c.labelHighlights||[],g=d.labelHighlights||[],f.length&&!g.length?-1:!f.length&&g.length?1:0===f.length&&0===g.length?0:function(a,b,c){let d,e,f,g=a.toLowerCase(),h=b.toLowerCase(),i=function(a,b,c){let d=a.toLowerCase(),e=b.toLowerCase(),f=d.startsWith(c),g=e.startsWith(c);if(f!==g)return f?-1:1;if(f&&g){if(d.length<e.length)return -1;if(d.length>e.length)return 1}return 0}(a,b,c);if(i)return i;let j=g.endsWith(c);if(j!==h.endsWith(c))return j?-1:1;let k=(d=g||"",e=h||"",f=ih.value.collator.compare(d,e),ih.value.collatorIsNumeric&&0===f&&d!==e?d<e?-1:1:f);return 0!==k?k:g.localeCompare(h)}(c.saneSortLabel,d.saneSortLabel,e)):0}},accessibilityProvider:new it,setRowLineHeight:!1,multipleSelectionSupport:!1,hideTwistiesOfChildlessElements:!0,renderIndentGuides:J.None,findWidgetEnabled:!1,indent:0,horizontalScrolling:!1,allowNonCollapsibleParents:!0,alwaysConsumeMouseWheel:!0})),this._tree.getHTMLElement().id=d,this._register(this._itemRenderer.onDidDisposeFocusedElement(()=>this._tree.domFocus())),this._register(this._separatorRenderer.onDidDisposeFocusedElement(()=>this._tree.domFocus())),this._registerListeners()}get onDidChangeFocus(){return a$.Jh.map(this._tree.onDidChangeFocus,a=>a.elements.filter(a=>a instanceof iq).map(a=>a.item),this._store)}get onDidChangeSelection(){return a$.Jh.map(this._tree.onDidChangeSelection,a=>({items:a.elements.filter(a=>a instanceof iq).map(a=>a.item),event:a.browserEvent}),this._store)}get displayed(){return"none"!==this._container.style.display}set displayed(a){this._container.style.display=a?"":"none"}get scrollTop(){return this._tree.scrollTop}set scrollTop(a){this._tree.scrollTop=a}get ariaLabel(){return this._tree.ariaLabel}set ariaLabel(a){this._tree.ariaLabel=a??""}set enabled(a){this._tree.getHTMLElement().style.pointerEvents=a?"":"none"}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(a){this._matchOnDescription=a}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(a){this._matchOnDetail=a}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(a){this._matchOnLabel=a}get matchOnLabelMode(){return this._matchOnLabelMode}set matchOnLabelMode(a){this._matchOnLabelMode=a}get sortByLabel(){return this._sortByLabel}set sortByLabel(a){this._sortByLabel=a}get shouldLoop(){return this._shouldLoop}set shouldLoop(a){this._shouldLoop=a}_registerListeners(){this._registerOnContainerClick(),this._registerOnMouseMiddleClick(),this._registerOnTreeModelChanged(),this._registerOnElementChecked(),this._registerOnContextMenu(),this._registerHoverListeners(),this._registerSelectionChangeListener(),this._registerSeparatorActionShowingListeners()}_registerOnContainerClick(){this._register((0,a_.ko)(this._container,a_.Bx.CLICK,a=>{(a.x||a.y)&&this._onLeave.fire()}))}_registerOnMouseMiddleClick(){this._register((0,a_.ko)(this._container,a_.Bx.AUXCLICK,a=>{1===a.button&&this._onLeave.fire()}))}_registerOnTreeModelChanged(){this._register(this._tree.onDidChangeModel(()=>{let a=this._itemElements.filter(a=>!a.hidden).length;this._visibleCountObservable.set(a,void 0),this._hasCheckboxes&&this._updateCheckedObservables()}))}_registerOnElementChecked(){this._register(this._elementCheckedEventBufferer.wrapEvent(this._elementChecked.event,(a,b)=>b)(a=>this._updateCheckedObservables()))}_registerOnContextMenu(){this._register(this._tree.onContextMenu(a=>{a.element&&(a.browserEvent.preventDefault(),this._tree.setSelection([a.element]))}))}_registerHoverListeners(){let a=this._register(new be.Th("function"==typeof this.hoverDelegate.delay?this.hoverDelegate.delay():this.hoverDelegate.delay));this._register(this._tree.onMouseOver(async b=>{if((0,a_.nY)(b.browserEvent.target))return void a.cancel();if(!(!(0,a_.nY)(b.browserEvent.relatedTarget)&&(0,a_.QX)(b.browserEvent.relatedTarget,b.element?.element)))try{await a.trigger(async()=>{b.element instanceof iq&&this.showHover(b.element)})}catch(a){if(!(0,bB.MB)(a))throw a}})),this._register(this._tree.onMouseOut(b=>{(0,a_.QX)(b.browserEvent.relatedTarget,b.element?.element)||a.cancel()}))}_registerSeparatorActionShowingListeners(){this._register(this._tree.onDidChangeFocus(a=>{let b=a.elements[0]?this._tree.getParentElement(a.elements[0]):null;for(let a of this._separatorRenderer.visibleSeparators){let c=a===b;!!(a.focusInsideSeparator&T.ACTIVE_ITEM)!==c&&(c?a.focusInsideSeparator|=T.ACTIVE_ITEM:a.focusInsideSeparator&=~T.ACTIVE_ITEM,this._tree.rerender(a))}})),this._register(this._tree.onMouseOver(a=>{let b=a.element?this._tree.getParentElement(a.element):null;for(let a of this._separatorRenderer.visibleSeparators)a===b&&(a.focusInsideSeparator&T.MOUSE_HOVER||(a.focusInsideSeparator|=T.MOUSE_HOVER,this._tree.rerender(a)))})),this._register(this._tree.onMouseOut(a=>{let b=a.element?this._tree.getParentElement(a.element):null;for(let a of this._separatorRenderer.visibleSeparators)a===b&&a.focusInsideSeparator&T.MOUSE_HOVER&&(a.focusInsideSeparator&=~T.MOUSE_HOVER,this._tree.rerender(a))}))}_registerSelectionChangeListener(){this._register(this._tree.onDidChangeSelection(a=>{let b=a.elements.filter(a=>a instanceof iq);b.length!==a.elements.length&&(1===a.elements.length&&a.elements[0]instanceof ir&&(this._tree.setFocus([a.elements[0].children[0]]),this._tree.reveal(a.elements[0],0)),this._tree.setSelection(b))}))}setAllVisibleChecked(a){this._elementCheckedEventBufferer.bufferEvents(()=>{this._itemElements.forEach(b=>{b.hidden||b.checkboxDisabled||!1===b.item.pickable||(b.checked=a)})})}setElements(a){let b;this._elementDisposable.clear(),this._lastQueryString=void 0,this._inputElements=a,this._hasCheckboxes=this.parent.classList.contains("show-checkboxes"),this._itemElements=[],this._elementTree=a.reduce((c,d,e)=>{let f;if("separator"===d.type){if(!d.buttons)return c;f=b=new ir(e,a=>this._onSeparatorButtonTriggered.fire(a),d)}else{let g,h=e>0?a[e-1]:void 0;h&&"separator"===h.type&&!h.buttons&&(g=h);let i=new iq(e,b?.children?b.children.length:e,this._hasCheckboxes&&!1!==d.pickable,a=>this._onButtonTriggered.fire(a),this._elementChecked,d,g);if(this._itemElements.push(i),b)return b.children.push(i),c;f=i}return c.push(f),c},[]),this._setElementsToTree(this._elementTree),this.accessibilityService.isScreenReaderOptimized()&&(0,be.EQ)(()=>{let a=this._tree.getHTMLElement().querySelector(".monaco-list-row.focused"),b=a?.parentNode;if(a&&b){let c=a.nextSibling;a.remove(),b.insertBefore(a,c)}},0,this._elementDisposable)}setFocusedElements(a){let b=a.map(a=>this._itemElements.find(b=>b.item===a)).filter(a=>!!a).filter(a=>!a.hidden);if(this._tree.setFocus(b),a.length>0){let a=this._tree.getFocus()[0];a&&this._tree.reveal(a)}}getActiveDescendant(){return this._tree.getHTMLElement().getAttribute("aria-activedescendant")}setSelectedElements(a){let b=a.map(a=>this._itemElements.find(b=>b.item===a)).filter(a=>!!a);this._tree.setSelection(b)}getCheckedElements(){return this._itemElements.filter(a=>a.checked).map(a=>a.item)}setCheckedElements(a){this._elementCheckedEventBufferer.bufferEvents(()=>{let b=new Set;for(let c of a)b.add(c);for(let a of this._itemElements)a.checked=b.has(a.item)})}focus(a){if(this._itemElements.length)switch(a===bV.Fp.Second&&this._itemElements.length<2&&(a=bV.Fp.First),a){case bV.Fp.First:this._tree.scrollTop=0,this._tree.focusFirst(void 0,a=>a.element instanceof iq);break;case bV.Fp.Second:{this._tree.scrollTop=0;let a=!1;this._tree.focusFirst(void 0,b=>b.element instanceof iq&&(!!a||(a=!a,!1)));break}case bV.Fp.Last:this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast(void 0,a=>a.element instanceof iq);break;case bV.Fp.Next:{let a=this._tree.getFocus();this._tree.focusNext(void 0,this._shouldLoop,void 0,a=>a.element instanceof iq&&(this._tree.reveal(a.element),!0));let b=this._tree.getFocus();a.length&&a[0]===b[0]&&this._onLeave.fire();break}case bV.Fp.Previous:{let a=this._tree.getFocus();this._tree.focusPrevious(void 0,this._shouldLoop,void 0,a=>{if(!(a.element instanceof iq))return!1;let b=this._tree.getParentElement(a.element);return null===b||b.children[0]!==a.element?this._tree.reveal(a.element):this._tree.reveal(b),!0});let b=this._tree.getFocus();a.length&&a[0]===b[0]&&this._onLeave.fire();break}case bV.Fp.NextPage:this._tree.focusNextPage(void 0,a=>a.element instanceof iq&&(this._tree.reveal(a.element),!0));break;case bV.Fp.PreviousPage:this._tree.focusPreviousPage(void 0,a=>{if(!(a.element instanceof iq))return!1;let b=this._tree.getParentElement(a.element);return null===b||b.children[0]!==a.element?this._tree.reveal(a.element):this._tree.reveal(b),!0});break;case bV.Fp.NextSeparator:{let a=!1,b=this._tree.getFocus()[0];this._tree.focusNext(void 0,!0,void 0,b=>{if(a)return!0;if(b.element instanceof ir)a=!0,this._separatorRenderer.isSeparatorVisible(b.element)?this._tree.reveal(b.element.children[0]):this._tree.reveal(b.element,0);else if(b.element instanceof iq){if(b.element.separator)return this._itemRenderer.isItemWithSeparatorVisible(b.element)?this._tree.reveal(b.element):this._tree.reveal(b.element,0),!0;else if(b.element===this._elementTree[0])return this._tree.reveal(b.element,0),!0}return!1}),b===this._tree.getFocus()[0]&&(this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast(void 0,a=>a.element instanceof iq));break}case bV.Fp.PreviousSeparator:{let a,b=!!this._tree.getFocus()[0]?.separator;this._tree.focusPrevious(void 0,!0,void 0,c=>{if(c.element instanceof ir)b?a||(this._separatorRenderer.isSeparatorVisible(c.element)?this._tree.reveal(c.element):this._tree.reveal(c.element,0),a=c.element.children[0]):b=!0;else if(c.element instanceof iq&&!a){if(c.element.separator)this._itemRenderer.isItemWithSeparatorVisible(c.element)?this._tree.reveal(c.element):this._tree.reveal(c.element,0),a=c.element;else if(c.element===this._elementTree[0])return this._tree.reveal(c.element,0),!0}return!1}),a&&this._tree.setFocus([a])}}}clearFocus(){this._tree.setFocus([])}domFocus(){this._tree.domFocus()}layout(a){this._tree.getHTMLElement().style.maxHeight=a?`${44*Math.floor(a/44)+6}px`:"",this._tree.layout()}filter(a){if(this._lastQueryString=a,!(this._sortByLabel||this._matchOnLabel||this._matchOnDescription||this._matchOnDetail))return this._tree.layout(),!1;let b=a;if((a=a.trim())&&(this.matchOnLabel||this.matchOnDescription||this.matchOnDetail)){let c;this._itemElements.forEach(d=>{let e;e="fuzzy"===this.matchOnLabelMode?this.matchOnLabel?(0,bs.pz)(a,(0,bs._k)(d.saneLabel))??void 0:void 0:this.matchOnLabel?function(a,b){let{text:c,iconOffsets:d}=b;if(!d||0===d.length)return iy(a,c);let e=(0,aa.NB)(c," "),f=c.length-e.length,g=iy(a,e);if(g)for(let a of g){let b=d[a.start+f]+f;a.start+=b,a.end+=b}return g}(b,(0,bs._k)(d.saneLabel))??void 0:void 0;let f=this.matchOnDescription?(0,bs.pz)(a,(0,bs._k)(d.saneDescription||""))??void 0:void 0,g=this.matchOnDetail?(0,bs.pz)(a,(0,bs._k)(d.saneDetail||""))??void 0:void 0;if(e||f||g?(d.labelHighlights=e,d.descriptionHighlights=f,d.detailHighlights=g,d.hidden=!1):(d.labelHighlights=void 0,d.descriptionHighlights=void 0,d.detailHighlights=void 0,d.hidden=!d.item||!d.item.alwaysShow),d.item?d.separator=void 0:d.separator&&(d.hidden=!0),!this.sortByLabel){let a=d.index&&this._inputElements[d.index-1]||void 0;a?.type!=="separator"||a.buttons||(c=a),c&&!d.hidden&&(d.separator=c,c=void 0)}})}else this._itemElements.forEach(a=>{a.labelHighlights=void 0,a.descriptionHighlights=void 0,a.detailHighlights=void 0,a.hidden=!1;let b=a.index&&this._inputElements[a.index-1];a.item&&(a.separator=b&&"separator"===b.type&&!b.buttons?b:void 0)});return this._setElementsToTree(this._sortByLabel&&a?this._itemElements:this._elementTree),this._tree.layout(),!0}toggleCheckbox(){this._elementCheckedEventBufferer.bufferEvents(()=>{let a=this._tree.getFocus().filter(a=>a instanceof iq),b=this._allVisibleChecked(a);for(let c of a)c.checkboxDisabled||(c.checked=!b)})}style(a){this._tree.style(a)}toggleHover(){let a=this._tree.getFocus()[0];if(!a?.saneTooltip||!(a instanceof iq))return;if(this._lastHover&&!this._lastHover.isDisposed)return void this._lastHover.dispose();this.showHover(a);let b=new _.Cm;b.add(this._tree.onDidChangeFocus(a=>{a.elements[0]instanceof iq&&this.showHover(a.elements[0])})),this._lastHover&&b.add(this._lastHover),this._elementDisposable.add(b)}_setElementsToTree(a){let b=[];for(let c of a)c instanceof ir?b.push({element:c,collapsible:!1,collapsed:!1,children:c.children.map(a=>({element:a,collapsible:!1,collapsed:!1}))}):b.push({element:c,collapsible:!1,collapsed:!1});this._tree.setChildren(null,b)}_allVisibleChecked(a,b=!0){for(let c=0,d=a.length;c<d;c++){let d=a[c];if(!d.hidden&&!1!==d.item.pickable)if(!d.checked)return!1;else b=!0}return b}_updateCheckedObservables(){(0,ik.Rn)(a=>{this._allVisibleCheckedObservable.set(this._allVisibleChecked(this._itemElements,!1),a);let b=this._itemElements.filter(a=>a.checked).length;this._checkedCountObservable.set(b,a),this._checkedElementsObservable.set(this.getCheckedElements(),a)})}showHover(a){this._lastHover&&!this._lastHover.isDisposed&&(this.hoverDelegate.onDidHideHover?.(),this._lastHover?.dispose()),a.element&&a.saneTooltip&&(this._lastHover=this.hoverDelegate.showHover({content:a.saneTooltip,target:a.element,linkHandler:a=>{this.linkOpenerDelegate(a)},appearance:{showPointer:!0},container:this._container,position:{hoverPosition:1}},!1))}};function iy(a,b){let c=b.toLowerCase().indexOf(a.toLowerCase());return -1!==c?[{start:c,end:c+a.length}]:null}function iz(a,b={}){br.f.registerCommandAndKeybindingRule({weight:200,when:bU.M$.and(bU.M$.or(bU.M$.equals(hN,"quickPick"),bU.M$.equals(hN,"quickTree")),hL),metadata:{description:(0,a3.kg)(1823,"Used while in the context of the quick pick. If you change one keybinding for this command, you should change all of the other keybindings (modifier variants) of this command as well.")},...a,secondary:iB(a.primary,a.secondary??[],b)})}il([fe.B],ix.prototype,"onDidChangeFocus",null),il([fe.B],ix.prototype,"onDidChangeSelection",null),ix=il([im(5,aZ._Y),im(6,bd.j)],ix);let iA=bc.zx?256:2048;function iB(a,b,c={}){return c.withAltMod&&b.push(512+a),c.withCtrlMod&&(b.push(iA+a),c.withAltMod&&b.push(512+iA+a)),c.withShiftMod&&(b.push(1024+a),c.withAltMod&&b.push(1536+a),c.withCtrlMod&&(b.push(iA+1024+a),c.withAltMod&&b.push(512+iA+1024+a))),c.withCmdMod&&bc.zx&&(b.push(2048+a),c.withCtrlMod&&b.push(2304+a),c.withAltMod&&(b.push(2560+a),c.withCtrlMod&&b.push(2816+a))),b}function iC(a,b){return c=>{let d=c.get(bV.GK).currentQuickInput;if(d)return b&&d.quickNavigate?d.focus(b):d.focus(a)}}iz({id:"quickInput.pageNext",primary:12,handler:iC(bV.Fp.NextPage)},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0}),iz({id:"quickInput.pagePrevious",primary:11,handler:iC(bV.Fp.PreviousPage)},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0}),iz({id:"quickInput.first",primary:iA+14,handler:iC(bV.Fp.First)},{withAltMod:!0,withCmdMod:!0}),iz({id:"quickInput.last",primary:iA+13,handler:iC(bV.Fp.Last)},{withAltMod:!0,withCmdMod:!0}),iz({id:"quickInput.next",primary:18,handler:iC(bV.Fp.Next)},{withCtrlMod:!0}),iz({id:"quickInput.previous",primary:16,handler:iC(bV.Fp.Previous)},{withCtrlMod:!0});let iD=(0,a3.kg)(1824,"If we're in quick access mode, this will navigate to the next item. If we are not in quick access mode, this will navigate to the next separator."),iE=(0,a3.kg)(1825,"If we're in quick access mode, this will navigate to the previous item. If we are not in quick access mode, this will navigate to the previous separator.");bc.zx?(iz({id:"quickInput.nextSeparatorWithQuickAccessFallback",primary:2066,handler:iC(bV.Fp.NextSeparator,bV.Fp.Next),metadata:{description:iD}}),iz({id:"quickInput.nextSeparator",primary:2578,secondary:[2322],handler:iC(bV.Fp.NextSeparator)},{withCtrlMod:!0}),iz({id:"quickInput.previousSeparatorWithQuickAccessFallback",primary:2064,handler:iC(bV.Fp.PreviousSeparator,bV.Fp.Previous),metadata:{description:iE}}),iz({id:"quickInput.previousSeparator",primary:2576,secondary:[2320],handler:iC(bV.Fp.PreviousSeparator)},{withCtrlMod:!0})):(iz({id:"quickInput.nextSeparatorWithQuickAccessFallback",primary:530,handler:iC(bV.Fp.NextSeparator,bV.Fp.Next),metadata:{description:iD}}),iz({id:"quickInput.nextSeparator",primary:2578,handler:iC(bV.Fp.NextSeparator)}),iz({id:"quickInput.previousSeparatorWithQuickAccessFallback",primary:528,handler:iC(bV.Fp.PreviousSeparator,bV.Fp.Previous),metadata:{description:iE}}),iz({id:"quickInput.previousSeparator",primary:2576,handler:iC(bV.Fp.PreviousSeparator)})),br.f.registerCommandAndKeybindingRule({id:"quickInput.accept",primary:3,weight:200,when:bU.M$.and(bU.M$.notEquals(hN,"quickWidget"),hL,bU.M$.not("isComposing")),metadata:{description:(0,a3.kg)(1826,"Used while in the context of some quick input. If you change one keybinding for this command, you should change all of the other keybindings (modifier variants) of this command as well.")},handler:a=>{let b=a.get(bV.GK).currentQuickInput;b?.accept()},secondary:iB(3,[],{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0,withShiftMod:!0})}),iz({id:"quickInput.acceptInBackground",when:bU.M$.and(hL,bU.M$.equals(hN,"quickPick"),bU.M$.or(dd.J7.negate(),hR)),primary:17,weight:250,handler:a=>{let b=a.get(bV.GK).currentQuickInput;b?.accept(!0)}},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0}),function(a,b={}){br.f.registerCommandAndKeybindingRule({weight:200,when:hL,metadata:{description:(0,a3.kg)(1822,"Used while in the context of any kind of quick input. If you change one keybinding for this command, you should change all of the other keybindings (modifier variants) of this command as well.")},...a,secondary:iB(a.primary,a.secondary??[],b)})}({id:"quickInput.hide",primary:9,handler:a=>{let b=a.get(bV.GK).currentQuickInput;b?.hide()}},{withAltMod:!0,withCtrlMod:!0,withCmdMod:!0}),iz({id:"quickInput.toggleCheckbox",when:bU.M$.and(hL,bU.M$.or(bU.M$.equals(hN,"quickPick"),bU.M$.equals(hN,"quickTree")),dd.J7.negate()),primary:10,handler:a=>{a.get(bV.GK).toggle()}}),iz({id:"quickInput.toggleHover",primary:10|iA,handler:a=>{a.get(bV.GK).toggleHover()}});var iF=c(50702),iG=function(a,b){return function(c,d){b(c,d,a)}};let iH=a_.$;class iI extends _.jG{constructor(){super(...arguments),this._onDidChangeCheckboxState=this._register(new a$.vl),this.onDidChangeCheckboxState=this._onDidChangeCheckboxState.event}setCheckboxState(a,b){this._onDidChangeCheckboxState.fire({item:a,checked:b})}}let iJ=class extends _.jG{static{U=this}static{this.ID="quickInputTreeElement"}constructor(a,b,c,d,e,f,g){super(),this._hoverDelegate=a,this._buttonTriggeredEmitter=b,this.onCheckedEvent=c,this._checkboxStateHandler=d,this._toggleStyles=e,this._contextMenuService=f,this._themeService=g,this.templateId=U.ID,this._onDidDisposeFocusedElement=this._register(new a$.vl),this.onDidDisposeFocusedElement=this._onDidDisposeFocusedElement.event}renderTemplate(a){let b=new _.Cm,c=(0,a_.BC)(a,iH(".quick-input-tree-entry")),d=b.add(new ey.kk("",!1,{...dI.$B,size:15}));c.appendChild(d.domNode);let e=(0,a_.BC)(c,iH("label.quick-input-tree-label")),f=(0,a_.BC)(e,iH(".quick-input-tree-rows")),g=(0,a_.BC)(f,iH(".quick-input-tree-row")),h=(0,a_.Hs)(g,iH(".quick-input-tree-icon")),i=b.add(new ia(g,{supportHighlights:!0,supportDescriptionHighlights:!0,supportIcons:!0,hoverDelegate:this._hoverDelegate})),j=b.add(new hX.i(c,this._contextMenuService,{actionViewItemProvider:(0,ey.Om)(this._toggleStyles),hoverDelegate:this._hoverDelegate,icon:!0,label:!1}));return j.getElement().classList.add("quick-input-tree-entry-action-bar"),{toDisposeTemplate:b,entry:c,checkbox:d,icon:h,label:i,actionBar:j,toDisposeElement:new _.Cm}}renderElement(a,b,c,d){let e,f=c.toDisposeElement,g=a.element;if(!1===g.pickable)c.checkbox.domNode.style.display="none";else{let a=c.checkbox;a.domNode.style.display="",a.checked=g.checked??!1,f.add(a$.Jh.filter(this.onCheckedEvent,a=>a.item===g)(b=>a.checked=b.checked)),g.disabled&&a.disable(),f.add(a.onChange(b=>this._checkboxStateHandler.setCheckboxState(g,a.checked)))}if(g.iconPath){let a=(0,ii.HD)(this._themeService.getColorTheme().type)?g.iconPath.dark:g.iconPath.light??g.iconPath.dark,b=ab.r.revive(a);c.icon.className="quick-input-tree-icon",c.icon.style.backgroundImage=(0,ev.Tf)(b)}else c.icon.style.backgroundImage="",c.icon.className=g.iconClass?`quick-input-tree-icon ${g.iconClass}`:"";let{labelHighlights:h,descriptionHighlights:i}=a.filterData||{};g.description&&(e={markdown:{value:(0,aa.ih)(g.description),supportThemeIcons:!0},markdownNotSupportedFallback:g.description}),c.label.setLabel(g.label,g.description,{matches:h,descriptionMatches:i,extraClasses:g.iconClasses,italic:g.italic,strikethrough:g.strikethrough,labelEscapeNewLines:!0,descriptionTitle:e});let j=g.buttons;if(j&&j.length){let{primary:a,secondary:b}=hH(j,"quick-input-tree",a=>this._buttonTriggeredEmitter.fire({item:g,button:a}));c.actionBar.setActions(a,b),c.entry.classList.add("has-actions")}else c.actionBar.setActions([]),c.entry.classList.remove("has-actions")}disposeElement(a,b,c,d){(0,a_.nR)(c.entry)&&this._onDidDisposeFocusedElement.fire(),c.toDisposeElement.clear(),c.actionBar.setActions([])}disposeTemplate(a){a.toDisposeElement.dispose(),a.toDisposeTemplate.dispose()}};iJ=U=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([iG(5,aY.Z),iG(6,aR.Gy)],iJ);class iK{getHeight(a){return 22}getTemplateId(a){return iJ.ID}}function iL(a){let b=!1,c=!1,d=!1;for(let e of a){switch(e.element?.checked){case"mixed":d=!0;break;case!0:b=!0;break;default:c=!0}if(b&&c&&d)break}return c?d?"mixed":!!b&&"mixed":d?"mixed":b}class iM{constructor(a){this.onCheckedEvent=a}getWidgetAriaLabel(){return(0,a3.kg)(1836,"Quick Tree")}getAriaLabel(a){return a.ariaLabel||[a.label,a.description].map(a=>(0,bs.R$)(a)).filter(a=>!!a).join(", ")}getWidgetRole(){return"tree"}getRole(a){return"checkbox"}isChecked(a){return{get value(){return"mixed"===a.checked?"mixed":!!a.checked},onDidChange:b=>a$.Jh.filter(this.onCheckedEvent,b=>b.item===a)(a=>b())}}}class iN{constructor(){this.filterValue="",this.matchOnLabel=!0,this.matchOnDescription=!1}filter(a,b){if(!this.filterValue||!(this.matchOnLabel||this.matchOnDescription))return a.children?{visibility:2,data:{}}:{visibility:1,data:{}};let c=this.matchOnLabel?(0,bs.pz)(this.filterValue,(0,bs._k)(a.label))??void 0:void 0,d=this.matchOnDescription?(0,bs.pz)(this.filterValue,(0,bs._k)(a.description||""))??void 0:void 0;return{visibility:1===b||c||d?1:2*!!a.children,data:{labelHighlights:c,descriptionHighlights:d}}}}class iO extends _.jG{constructor(){super(...arguments),this._sortByLabel=!0}get sortByLabel(){return this._sortByLabel}set sortByLabel(a){this._sortByLabel=a}compare(a,b){if(!this._sortByLabel)return 0;if(a.label<b.label)return -1;if(a.label>b.label)return 1;if(a.description&&b.description){if(a.description<b.description)return -1;else if(a.description>b.description)return 1}else if(a.description)return -1;else if(b.description)return 1;return 0}}let iP=a_.$;class iQ{constructor(){this._elementIds=new WeakMap,this._counter=0}getId(a){let b=a.id;return void 0!==b||void 0!==(b=this._elementIds.get(a))||(b=`__generated_${this._counter++}`,this._elementIds.set(a,b)),b}}let iR=class extends _.jG{constructor(a,b,c,d){super(),this.instantiationService=d,this._onDidTriggerButton=this._register(new a$.vl),this._onDidChangeCheckboxState=this._register(new a$.vl),this.onDidChangeCheckboxState=this._onDidChangeCheckboxState.event,this._onDidCheckedLeafItemsChange=this._register(new a$.vl),this.onDidChangeCheckedLeafItems=this._onDidCheckedLeafItemsChange.event,this._onLeave=this._register(new a$.vl),this.onLeave=this._onLeave.event,this._onDidAccept=this._register(new a$.vl),this.onDidAccept=this._onDidAccept.event,this._container=(0,a_.BC)(a,iP(".quick-input-tree")),this._checkboxStateHandler=this._register(new iI),this._renderer=this._register(this.instantiationService.createInstance(iJ,b,this._onDidTriggerButton,this.onDidChangeCheckboxState,this._checkboxStateHandler,c.toggle)),this._filter=this.instantiationService.createInstance(iN),this._sorter=this._register(new iO),this._tree=this._register(this.instantiationService.createInstance(gl,"QuickInputTree",this._container,new iK,[this._renderer],{accessibilityProvider:new iM(this.onDidChangeCheckboxState),horizontalScrolling:!1,multipleSelectionSupport:!1,findWidgetEnabled:!1,alwaysConsumeMouseWheel:!0,hideTwistiesOfChildlessElements:!0,renderIndentGuides:J.None,expandOnDoubleClick:!0,expandOnlyOnTwistieClick:!0,disableExpandOnSpacebar:!0,sorter:this._sorter,filter:this._filter,identityProvider:new iQ})),this._register(this._renderer.onDidDisposeFocusedElement(()=>{this._tree.domFocus()})),this.registerCheckboxStateListeners(),this.registerOnDidChangeFocus()}get tree(){return this._tree}get displayed(){return"none"!==this._container.style.display}set displayed(a){this._container.style.display=a?"":"none"}get sortByLabel(){return this._sorter.sortByLabel}set sortByLabel(a){this._sorter.sortByLabel=a,this._tree.resort(null,!0)}getActiveDescendant(){return this._tree.getHTMLElement().getAttribute("aria-activedescendant")}filter(a){this._filter.filterValue=a,this._tree.refilter()}updateFilterOptions(a){void 0!==a.matchOnLabel&&(this._filter.matchOnLabel=a.matchOnLabel),void 0!==a.matchOnDescription&&(this._filter.matchOnDescription=a.matchOnDescription),this._tree.refilter()}setTreeData(a){let b=!1,c=a=>{let d;return a.children&&a.children.length>0&&(b=!0,d=a.children.map(a=>c(a)),a.checked=iL(d)),{element:a,children:d,collapsible:!!d,collapsed:a.collapsed?H.PreserveOrCollapsed:H.PreserveOrExpanded}},d=a.map(a=>c(a));this._tree.setChildren(null,d),this._container.classList.toggle("quick-input-tree-flat",!b)}layout(a){this._tree.getHTMLElement().style.maxHeight=a?`${44*Math.floor(a/44)+6}px`:"",this._tree.layout()}focus(a){switch(a){case bV.Fp.First:this._tree.scrollTop=0,this._tree.focusFirst();break;case bV.Fp.Second:{this._tree.scrollTop=0;let a=!1;this._tree.focusFirst(void 0,b=>!!a||(a=!a,!1));break}case bV.Fp.Last:this._tree.scrollTop=this._tree.scrollHeight,this._tree.focusLast();break;case bV.Fp.Next:{let a=this._tree.getFocus();this._tree.focusNext(void 0,!1,void 0,a=>(this._tree.reveal(a.element),!0));let b=this._tree.getFocus();a.length&&a[0]===b[0]&&this._onLeave.fire();break}case bV.Fp.Previous:{let a=this._tree.getFocus();this._tree.focusPrevious(void 0,!1,void 0,a=>(this._tree.reveal(a.element),!0));let b=this._tree.getFocus();a.length&&a[0]===b[0]&&this._onLeave.fire();break}case bV.Fp.NextPage:this._tree.focusNextPage(void 0,a=>(this._tree.reveal(a.element),!0));break;case bV.Fp.PreviousPage:this._tree.focusPreviousPage(void 0,a=>(this._tree.reveal(a.element),!0));break;case bV.Fp.NextSeparator:case bV.Fp.PreviousSeparator:return}}registerCheckboxStateListeners(){this._register(this._tree.onDidOpen(a=>{let b=a.element;if(!b||b.disabled)return;if(!1===b.pickable){this._tree.setFocus([b]),this._onDidAccept.fire();return}let c=a.browserEvent?.target;c&&c.classList.contains(ey.Sc.CLASS_NAME)||this.updateCheckboxState(b,!0===b.checked)})),this._register(this._checkboxStateHandler.onDidChangeCheckboxState(a=>{this.updateCheckboxState(a.item,!0===a.checked,!0),this._tree.setFocus([a.item]),this._tree.setSelection([a.item])}))}updateCheckboxState(a,b,c=!1){if((a.checked??!1)===b)return;a.checked=b,c||this._tree.rerender(a);let d=new Set,e=[...this._tree.getNode(a).children];for(;e.length;){let b=e.shift();b?.element&&!d.has(b.element)&&(d.add(b.element),(b.element.checked??!1)!==a.checked&&(b.element.checked=a.checked,this._tree.rerender(b.element)),e.push(...b.children))}let f=this._tree.getParentElement(a);for(;f;){let a=iL([...this._tree.getNode(f).children]);(f.checked??!1)!==a&&(f.checked=a,this._tree.rerender(f)),f=this._tree.getParentElement(f)}this._onDidChangeCheckboxState.fire({item:a,checked:a.checked??!1}),this._onDidCheckedLeafItemsChange.fire(this.getCheckedLeafItems())}registerOnDidChangeFocus(){this._register(this._tree.onDidChangeFocus(a=>{let b=this._tree.getFocus().findLast(a=>null!==a);this._tree.setSelection(b?[b]:[],a.browserEvent)}))}getCheckedLeafItems(){let a=new Set,b=[...this._tree.getNode().children],c=[];for(;b.length;){let d=b.shift();!(!d?.element||a.has(d.element))&&d.element.checked&&(a.add(d.element),b.push(...d.children),d.element.children||c.push(d.element))}return c}getActiveItems(){return this._tree.getFocus().filter(a=>null!==a)}toggleCheckbox(){for(let a of this.getActiveItems())!1===a.pickable||a.disabled||this.updateCheckboxState(a,!0!==a.checked)}checkAll(a){let b=new Set,c=[...this._tree.getNode().children],d=!1;for(;c.length;){let e=c.shift();!e?.element||b.has(e.element)||e.element.checked!==a&&(d=!0,e.element.checked=a,c.push(...e.children),b.add(e.element),this._tree.rerender(e.element),this._onDidChangeCheckboxState.fire({item:e.element,checked:e.element.checked}))}d&&this._onDidCheckedLeafItemsChange.fire(this.getCheckedLeafItems())}};iR=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(y=aZ._Y,function(a,b){y(a,b,3)})],iR);class iS extends hT{static{this.DEFAULT_ARIA_LABEL=(0,a3.kg)(1837,"Type to narrow down results.")}constructor(a){super(a),this.type="quickTree",this._value=(0,gG.FY)("value",""),this._ariaLabel=(0,gG.FY)("ariaLabel",void 0),this._placeholder=(0,gG.FY)("placeholder",void 0),this._matchOnDescription=(0,gG.FY)("matchOnDescription",!1),this._matchOnLabel=(0,gG.FY)("matchOnLabel",!0),this._sortByLabel=(0,gG.FY)("sortByLabel",!0),this._activeItems=(0,gG.FY)("activeItems",[]),this._itemTree=(0,gG.FY)("itemTree",[]),this._onDidChangeCheckedLeafItems=this._register(new a$.vl),this._onDidChangeCheckboxState=this._register(new a$.vl),this._onDidAcceptEmitter=this._register(new a$.vl),this.onDidAccept=a$.Jh.any(a.onDidAccept,this._onDidAcceptEmitter.event),this._registerAutoruns(),this._register(a.tree.onDidChangeCheckedLeafItems(a=>this._onDidChangeCheckedLeafItems.fire(a))),this._register(a.tree.onDidChangeCheckboxState(a=>this._onDidChangeCheckboxState.fire(a.item))),this._register(a.tree.tree.onDidChangeFocus(b=>{this._activeItems.set(a.tree.getActiveItems(),void 0)}))}get placeholder(){return this._placeholder.get()}set placeholder(a){this._placeholder.set(a,void 0)}show(){if(!this.visible){let a={title:!!this.title||!!this.step||!!this.titleButtons.length,description:!!this.description,checkAll:!0,checkBox:!0,inputBox:!0,progressBar:!0,visibleCount:!0,count:!0,ok:!0,list:!1,tree:!0,message:!!this.validationMessage,customButton:!1};this.ui.setVisibilities(a),this.visibleDisposables.add(this.ui.inputBox.onDidChange(a=>{this._value.set(a,void 0)})),this.visibleDisposables.add(this.ui.tree.onDidChangeCheckboxState(a=>{let b=iL([...this.ui.tree.tree.getNode().children]);this.ui.checkAll.checked!==b&&(this.ui.checkAll.checked=b)})),this.visibleDisposables.add(this.ui.checkAll.onChange(a=>{let b=this.ui.checkAll.checked;this.ui.tree.checkAll(b)})),this.visibleDisposables.add(this.ui.tree.onDidChangeCheckedLeafItems(a=>{this.ui.count.setCount(a.length)}))}super.show(),(0,bc._p)(()=>this.ui.count.setCount(this.ui.tree.getCheckedLeafItems().length));let a=iL([...this.ui.tree.tree.getNode().children]);this.ui.checkAll.checked!==a&&(this.ui.checkAll.checked=a)}update(){if(!this.visible)return;let a={title:!!this.title||!!this.step||!!this.titleButtons.length,description:!!this.description,checkAll:!0,checkBox:!0,inputBox:!0,progressBar:!0,visibleCount:!0,count:!0,ok:!0,tree:!0,message:!!this.validationMessage};this.ui.setVisibilities(a),super.update()}_registerAutoruns(){this.registerVisibleAutorun(a=>{let b=this._value.read(a);this.ui.inputBox.value=b,this.ui.tree.filter(b)}),this.registerVisibleAutorun(a=>{let b=this._ariaLabel.read(a);!b&&(b=this.placeholder||iS.DEFAULT_ARIA_LABEL,this.title&&(b+=` - ${this.title}`)),this.ui.list.ariaLabel!==b&&(this.ui.list.ariaLabel=b??null),this.ui.inputBox.ariaLabel!==b&&(this.ui.inputBox.ariaLabel=b??"input")}),this.registerVisibleAutorun(a=>{let b=this._placeholder.read(a);this.ui.inputBox.placeholder!==b&&(this.ui.inputBox.placeholder=b??"")}),this.registerVisibleAutorun(a=>{let b=this._matchOnLabel.read(a),c=this._matchOnDescription.read(a);this.ui.tree.updateFilterOptions({matchOnLabel:b,matchOnDescription:c})}),this.registerVisibleAutorun(a=>{let b=this._sortByLabel.read(a);this.ui.tree.sortByLabel=b}),this.registerVisibleAutorun(a=>{let b=this._itemTree.read(a);this.ui.tree.setTreeData(b)})}registerVisibleAutorun(a){this._register((0,eJ.fm)(b=>{this._visible.read(b)&&a(b)}))}focus(a){this.ui.tree.focus(a),this.ui.tree.tree.domFocus()}accept(a){this._onDidAcceptEmitter.fire()}}var iT=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},iU=function(a,b){return function(c,d){b(c,d,a)}};let iV=a_.$,iW="workbench.quickInput.viewState",iX=class extends _.jG{static{V=this}static{this.MAX_WIDTH=600}get currentQuickInput(){return this.controller??void 0}get container(){return this._container}constructor(a,b,c,d,e,f){super(),this.options=a,this.layoutService=b,this.instantiationService=c,this.storageService=e,this.contextMenuService=f,this.enabled=!0,this.onDidAcceptEmitter=this._register(new a$.vl),this.onDidCustomEmitter=this._register(new a$.vl),this.onDidTriggerButtonEmitter=this._register(new a$.vl),this.keyMods={ctrlCmd:!1,alt:!1,shift:!1},this.controller=null,this.onShowEmitter=this._register(new a$.vl),this.onShow=this.onShowEmitter.event,this.onHideEmitter=this._register(new a$.vl),this.onHide=this.onHideEmitter.event,this._alignment=(0,gG.FY)(this,"top"),this.alignment=this._alignment,this.inQuickInputContext=hK.bindTo(d),this.quickInputTypeContext=hO.bindTo(d),this.endOfQuickInputBoxContext=hQ.bindTo(d),this.idPrefix=a.idPrefix,this._container=a.container,this.styles=a.styles,this._register(a$.Jh.runAndSubscribe(a_.Iv,({window:a,disposables:b})=>this.registerKeyModsListeners(a,b),{window:$.G,disposables:this._store})),this._register((0,a_.q3)(a=>{this.ui&&(0,a_.zk)(this.ui.container)===a&&(this.reparentUI(this.layoutService.mainContainer),this.layout(this.layoutService.mainContainerDimension,this.layoutService.mainContainerOffset.quickPickTop))})),this.viewState=this.loadViewState()}registerKeyModsListeners(a,b){let c=a=>{this.keyMods.ctrlCmd=a.ctrlKey||a.metaKey,this.keyMods.alt=a.altKey,this.keyMods.shift=a.shiftKey};for(let d of[a_.Bx.KEY_DOWN,a_.Bx.KEY_UP,a_.Bx.MOUSE_DOWN])b.add((0,a_.ko)(a,d,c,!0))}getUI(a){if(this.ui)return a&&(0,a_.zk)(this._container)!==(0,a_.zk)(this.layoutService.activeContainer)&&(this.reparentUI(this.layoutService.activeContainer),this.layout(this.layoutService.activeContainerDimension,this.layoutService.activeContainerOffset.quickPickTop)),this.ui;let b=(0,a_.BC)(this._container,iV(".quick-input-widget.show-file-icons"));b.tabIndex=-1,b.style.display="none";let c=(0,du.li)(b),d=(0,a_.BC)(b,iV(".quick-input-titlebar")),e=this._register(new hX.i(d,this.contextMenuService,{hoverDelegate:this.options.hoverDelegate,actionViewItemProvider:(0,ey.Om)(this.styles.toggle),icon:!0,label:!1}));e.getElement().classList.add("quick-input-left-action-bar");let f=(0,a_.BC)(d,iV(".quick-input-title")),g=this._register(new hX.i(d,this.contextMenuService,{hoverDelegate:this.options.hoverDelegate,actionViewItemProvider:(0,ey.Om)(this.styles.toggle),icon:!0,label:!1}));g.getElement().classList.add("quick-input-right-action-bar");let h=(0,a_.BC)(b,iV(".quick-input-header")),i=this._register(new ey.kk((0,a3.kg)(1827,"Toggle all checkboxes"),!1,{...dI.$B,size:15}));(0,a_.BC)(h,i.domNode),this._register(i.onChange(()=>{let a=i.checked;B.setAllVisibleChecked(!0===a)})),this._register((0,a_.ko)(i.domNode,a_.Bx.CLICK,a=>{(a.x||a.y)&&m.setFocus()}));let j=(0,a_.BC)(h,iV(".quick-input-description")),k=(0,a_.BC)(h,iV(".quick-input-and-message")),l=(0,a_.BC)(k,iV(".quick-input-filter")),m=this._register(new h6(l,this.styles.inputBox,this.styles.toggle));m.setAttribute("aria-describedby",`${this.idPrefix}message`);let n=(0,a_.BC)(l,iV(".quick-input-visible-count"));n.setAttribute("aria-live","polite"),n.setAttribute("aria-atomic","true");let o=this._register(new hZ(n,{countFormat:(0,a3.kg)(1828,"{0} Results")},this.styles.countBadge)),p=(0,a_.BC)(l,iV(".quick-input-count"));p.setAttribute("aria-live","polite");let q=this._register(new hZ(p,{countFormat:(0,a3.kg)(1829,"{0} Selected")},this.styles.countBadge)),r=this._register(new hX.i(h,this.contextMenuService,{hoverDelegate:this.options.hoverDelegate,actionViewItemProvider:(0,ey.Om)(this.styles.toggle),icon:!0,label:!1}));r.getElement().classList.add("quick-input-inline-action-bar");let s=(0,a_.BC)(h,iV(".quick-input-action")),t=this._register(new hY.$(s,this.styles.button));t.label=(0,a3.kg)(1830,"OK"),this._register(t.onDidClick(a=>{this.onDidAcceptEmitter.fire()}));let u=(0,a_.BC)(h,iV(".quick-input-action")),v=this._register(new hY.$(u,{...this.styles.button,supportIcons:!0}));v.label=(0,a3.kg)(1831,"Custom"),this._register(v.onDidClick(a=>{this.onDidCustomEmitter.fire()}));let w=(0,a_.BC)(k,iV(`#${this.idPrefix}message.quick-input-message`)),x=this._register(new h4(b,this.styles.progressBar));x.getContainer().classList.add("quick-input-progress");let y=(0,a_.BC)(b,iV(".quick-input-html-widget"));y.tabIndex=-1;let z=(0,a_.BC)(b,iV(".quick-input-description")),A=this.idPrefix+"list",B=this._register(this.instantiationService.createInstance(ix,b,this.options.hoverDelegate,this.options.linkOpenerDelegate,A,this.styles));m.setAttribute("aria-controls",A),this._register(B.onDidChangeFocus(()=>{if(m.hasFocus()){let a=B.getActiveDescendant();a?(m.setAttribute("aria-activedescendant",a),m.setListFocusMode(!0)):(m.removeAttribute("aria-activedescendant"),m.setListFocusMode(!1))}})),this._register(B.onChangedAllVisibleChecked(a=>{i.checked=a})),this._register(B.onChangedVisibleCount(a=>{o.setCount(a)})),this._register(B.onChangedCheckedCount(a=>{(0,bc._p)(()=>q.setCount(a))})),this._register(B.onLeave(()=>{setTimeout(()=>{this.controller&&(m.setFocus(),this.controller instanceof hU&&this.controller.canSelectMany&&B.clearFocus())},0)}));let C=this._register(this.instantiationService.createInstance(iR,b,this.options.hoverDelegate,this.styles));this._register(C.tree.onDidChangeFocus(()=>{if(m.hasFocus()){let a=C.getActiveDescendant();a?(m.setAttribute("aria-activedescendant",a),m.setListFocusMode(!0)):(m.removeAttribute("aria-activedescendant"),m.setListFocusMode(!1))}})),this._register(C.onLeave(()=>{setTimeout(()=>{this.controller&&(m.setFocus(),C.tree.setFocus([]))},0)})),this._register(C.onDidAccept(()=>{this.onDidAcceptEmitter.fire()})),this._register(C.tree.onDidChangeContentHeight(()=>this.updateLayout()));let D=(0,a_.w5)(b);return this._register(D),this._register((0,a_.ko)(b,a_.Bx.FOCUS,a=>{let b=this.getUI();if((0,a_.QX)(a.relatedTarget,b.inputContainer)){let a=b.inputBox.isSelectionAtEnd();this.endOfQuickInputBoxContext.get()!==a&&this.endOfQuickInputBoxContext.set(a)}(0,a_.QX)(a.relatedTarget,b.container)||(this.inQuickInputContext.set(!0),this.previousFocusElement=(0,a_.sb)(a.relatedTarget)?a.relatedTarget:void 0)},!0)),this._register(D.onDidBlur(()=>{this.getUI().ignoreFocusOut||this.options.ignoreFocusOut()||this.hide(bV.kF.Blur),this.inQuickInputContext.set(!1),this.endOfQuickInputBoxContext.set(!1),this.previousFocusElement=void 0})),this._register(m.onKeyDown(a=>{let b=this.getUI().inputBox.isSelectionAtEnd();this.endOfQuickInputBoxContext.get()!==b&&this.endOfQuickInputBoxContext.set(b),(0,bq.VL)(a.keyCode)||(m.removeAttribute("aria-activedescendant"),m.setListFocusMode(!1))})),this._register((0,a_.ko)(b,a_.Bx.FOCUS,a=>{m.setFocus()})),this.dndController=this._register(this.instantiationService.createInstance(iY,this._container,b,[{node:d,includeChildren:!0,excludeNodes:[e.getElement(),g.getElement()]},{node:h,includeChildren:!1}],this.viewState)),this._register((0,eJ.fm)(a=>{let b=this.dndController?.dndViewState.read(a);b&&(void 0!==b.top&&void 0!==b.left?this.viewState={...this.viewState,top:b.top,left:b.left}:this.viewState=void 0,this.updateLayout(),b.done&&this.saveViewState(this.viewState))})),this._register((0,eJ.fm)(a=>{this._alignment.set(this.dndController.alignment.read(a),void 0)})),this.ui={container:b,styleSheet:c,leftActionBar:e,titleBar:d,title:f,description1:z,description2:j,widget:y,rightActionBar:g,inlineActionBar:r,checkAll:i,inputContainer:k,filterContainer:l,inputBox:m,visibleCountContainer:n,visibleCount:o,countContainer:p,count:q,okContainer:s,ok:t,message:w,customButtonContainer:u,customButton:v,list:B,tree:C,progressBar:x,onDidAccept:this.onDidAcceptEmitter.event,onDidCustom:this.onDidCustomEmitter.event,onDidTriggerButton:this.onDidTriggerButtonEmitter.event,ignoreFocusOut:!1,keyMods:this.keyMods,show:a=>this.show(a),hide:()=>this.hide(),setVisibilities:a=>this.setVisibilities(a),setEnabled:a=>this.setEnabled(a),setContextKey:a=>this.options.setContextKey(a),linkOpenerDelegate:a=>this.options.linkOpenerDelegate(a)},this.updateStyles(),this.ui}reparentUI(a){this.ui&&(this._container=a,(0,a_.BC)(this._container,this.ui.container),this.dndController?.reparentUI(this._container))}pick(a,b={},c=bo.XO.None){return new Promise((d,e)=>{let f,g=a=>{g=d,b.onKeyMods?.(h.keyMods),d(a)};if(c.isCancellationRequested)return void g(void 0);let h=this.createQuickPick({useSeparators:!0}),i=[h,h.onDidAccept(()=>{if(h.canSelectMany)g(h.selectedItems.slice()),h.hide();else{let a=h.activeItems[0];a&&(g(a),h.hide())}}),h.onDidChangeActive(a=>{let c=a[0];c&&b.onDidFocus&&b.onDidFocus(c)}),h.onDidChangeSelection(a=>{if(!h.canSelectMany){let b=a[0];b&&(g(b),h.hide())}}),h.onDidTriggerItemButton(a=>b.onDidTriggerItemButton&&b.onDidTriggerItemButton({...a,removeItem:()=>{let b=h.items.indexOf(a.item);if(-1!==b){let a=h.items.slice(),c=a.splice(b,1),d=h.activeItems.filter(a=>a!==c[0]),e=h.keepScrollPosition;h.keepScrollPosition=!0,h.items=a,d&&(h.activeItems=d),h.keepScrollPosition=e}}})),h.onDidTriggerSeparatorButton(a=>b.onDidTriggerSeparatorButton?.(a)),h.onDidChangeValue(a=>{f&&!a&&(1!==h.activeItems.length||h.activeItems[0]!==f)&&(h.activeItems=[f])}),c.onCancellationRequested(()=>{h.hide()}),h.onDidHide(()=>{(0,_.AS)(i),g(void 0)})];h.title=b.title,b.value&&(h.value=b.value),h.canSelectMany=!!b.canPickMany,h.placeholder=b.placeHolder,h.prompt=b.prompt,h.ignoreFocusOut=!!b.ignoreFocusLost,h.matchOnDescription=!!b.matchOnDescription,h.matchOnDetail=!!b.matchOnDetail,void 0!==b.sortByLabel&&(h.sortByLabel=b.sortByLabel),h.matchOnLabel=void 0===b.matchOnLabel||b.matchOnLabel,h.quickNavigate=b.quickNavigate,h.hideInput=!!b.hideInput,h.contextKey=b.contextKey,h.anchor=b.anchor,h.anchorPosition=b.anchorPosition,h.busy=!0,Promise.all([a,b.activeItem]).then(([a,b])=>{f=b,h.busy=!1,h.items=a,h.canSelectMany&&(h.selectedItems=a.filter(a=>"separator"!==a.type&&a.picked)),f&&(h.activeItems=[f])}),h.show(),Promise.resolve(a).then(void 0,a=>{e(a),h.hide()})})}setValidationOnInput(a,b){b&&(0,bf.Kg)(b)?(a.severity=bD.A.Error,a.validationMessage=b):b&&!(0,bf.Kg)(b)?(a.severity=b.severity,a.validationMessage=b.content):(a.severity=bD.A.Ignore,a.validationMessage=void 0)}input(a={},b=bo.XO.None){return new Promise(c=>{if(b.isCancellationRequested)return void c(void 0);let d=this.createInputBox(),e=a.validateInput||(()=>Promise.resolve(void 0)),f=a$.Jh.debounce(d.onDidChangeValue,(a,b)=>b,100),g=a.value||"",h=Promise.resolve(e(g)),i=[d,f(a=>{a!==g&&(h=Promise.resolve(e(a)),g=a),h.then(b=>{a===g&&this.setValidationOnInput(d,b)})}),d.onDidAccept(()=>{let a=d.value;a!==g&&(h=Promise.resolve(e(a)),g=a),h.then(b=>{b&&((0,bf.Kg)(b)||b.severity===bD.A.Error)?a===g&&this.setValidationOnInput(d,b):(c(a),d.hide())})}),b.onCancellationRequested(()=>{d.hide()}),d.onDidHide(()=>{(0,_.AS)(i),c(void 0)})];d.title=a.title,d.value=a.value||"",d.valueSelection=a.valueSelection,d.prompt=a.prompt,d.placeholder=a.placeHolder,d.password=!!a.password,d.ignoreFocusOut=!!a.ignoreFocusLost,d.show()})}createQuickPick(a={useSeparators:!1}){return new hU(this.getUI(!0))}createInputBox(){return new hV(this.getUI(!0))}show(a){let b=this.getUI(!0),c=this.controller;if(this.controller=a,c?.didHide(),(0,a_.sb)(a.anchor)){let b=(0,a_.zk)(a.anchor);(0,a_.zk)(this._container)!==b&&this.reparentUI(this.layoutService.getContainer(b))}this.setEnabled(!0),b.leftActionBar.setActions([]),b.title.textContent="",b.description1.textContent="",b.description2.textContent="",(0,a_.Ln)(b.widget),b.rightActionBar.setActions([]),b.inlineActionBar.setActions([]),b.checkAll.checked=!1,b.inputBox.placeholder="",b.inputBox.password=!1,b.inputBox.showDecoration(bD.A.Ignore),b.visibleCount.setCount(0),b.count.setCount(0),b.countContainer.style.right="4px",(0,a_.Ln)(b.message),b.progressBar.stop(),b.progressBar.getContainer().setAttribute("aria-hidden","true"),b.list.setElements([]),b.list.matchOnDescription=!1,b.list.matchOnDetail=!1,b.list.matchOnLabel=!0,b.list.sortByLabel=!0,b.tree.updateFilterOptions({matchOnDescription:!1,matchOnLabel:!0}),b.tree.sortByLabel=!0,b.ignoreFocusOut=!1,b.inputBox.toggles=void 0,b.inputBox.actions=void 0;let d=this.options.backKeybindingLabel();hS.tooltip=d?(0,a3.kg)(1832,"Back ({0})",d):(0,a3.kg)(1833,"Back"),b.container.style.display="",this.updateLayout(),this.dndController?.setEnabled(!a.anchor),this.dndController?.layoutContainer(),a.anchor?this._alignment.set("custom",void 0):this._alignment.set(this.dndController?.alignment.get()??"top",void 0),this.onShowEmitter.fire(),b.inputBox.setFocus(),this.quickInputTypeContext.set(a.type)}isVisible(){return!!this.ui&&"none"!==this.ui.container.style.display}setVisibilities(a){let b=this.getUI();b.title.style.display=a.title?"":"none",b.description1.style.display=a.description&&(a.inputBox||a.checkAll)?"":"none",b.description2.style.display=a.description&&!(a.inputBox||a.checkAll)?"":"none",b.checkAll.domNode.style.display=a.checkAll?"":"none",b.inputContainer.style.display=a.inputBox?"":"none",b.filterContainer.style.display=a.inputBox?"":"none",b.visibleCountContainer.style.display=a.visibleCount?"":"none",b.countContainer.style.display=a.count?"":"none",b.okContainer.style.display=a.ok?"":"none",b.customButtonContainer.style.display=a.customButton?"":"none",b.message.style.display=a.message?"":"none",b.progressBar.getContainer().style.display=a.progressBar?"":"none",b.list.displayed=!!a.list,b.tree.displayed=!!a.tree,b.container.classList.toggle("show-checkboxes",!!a.checkBox),b.container.classList.toggle("hidden-input",!a.inputBox&&!a.description),this.updateLayout()}setEnabled(a){if(a!==this.enabled){this.enabled=a;let b=this.getUI();for(let c=0;c<b.leftActionBar.getItemsLength();c++){let d=b.leftActionBar.getItemAction(c);d&&(d.enabled=a)}for(let c=0;c<b.rightActionBar.getItemsLength();c++){let d=b.rightActionBar.getItemAction(c);d&&(d.enabled=a)}a?b.checkAll.enable():b.checkAll.disable(),b.inputBox.enabled=a,b.ok.enabled=a,b.list.enabled=a}}hide(a){let b=this.controller;if(!b)return;b.willHide(a);let c=this.ui?.container,d=c&&!(0,a_.nR)(c);if(this.controller=null,this.onHideEmitter.fire(),c&&(c.style.display="none"),!d){let a=this.previousFocusElement;for(;a&&!a.offsetParent;)a=a.parentElement??void 0;a?.offsetParent?(a.focus(),this.previousFocusElement=void 0):this.options.returnFocus()}b.didHide(a)}toggle(){this.isVisible()&&(this.controller instanceof hU&&this.controller.canSelectMany?this.getUI().list.toggleCheckbox():this.controller instanceof iS&&this.getUI().tree.toggleCheckbox())}toggleHover(){this.isVisible()&&this.controller instanceof hU&&this.getUI().list.toggleHover()}layout(a,b){this.dimension=a,this.titleBarOffset=b,this.updateLayout()}updateLayout(){if(this.ui&&this.isVisible()){let a=this.ui.container.style,b=Math.min(.62*this.dimension.width,V.MAX_WIDTH);a.width=b+"px";let c=this.dimension&&.4*this.dimension.height;if(this.controller?.anchor){let d=this.controller.anchor,e=(0,a_.sb)(d)?(0,a_.zk)(d):(0,a_.fz)(),f=this.layoutService.getContainer(e).getBoundingClientRect(),g=(0,bl.KG)(d),h=1,i=.2,j=200;"overlay"===this.controller.anchorPosition?(b=g.width+12,i=.4,g={top:g.top-7,left:g.left-7,width:g.width,height:0},j=Math.min(400,f.bottom-g.top-48),h=0):b=380;let k=Math.floor(c=this.dimension?Math.min(this.dimension.height*i,j):j)+48,{top:l,left:m,right:n,bottom:o,anchorAlignment:p,anchorPosition:q}=(0,dA.$P)(f,{width:b,height:k},g,{anchorPosition:h});1===p?(a.right=`${n}px`,a.left="initial"):(a.left=`${m}px`,a.right="initial"),1===q?(a.bottom=`${o}px`,a.top="initial"):(a.top=`${l}px`,a.bottom="initial"),a.width=`${b}px`,a.height=""}else a.top=`${this.viewState?.top!==void 0?Math.round(this.dimension.height*this.viewState.top):this.titleBarOffset}px`,a.left=`${Math.round(this.dimension.width*(this.viewState?.left??.5)-b/2)}px`,a.right="",a.bottom="",a.height="";this.ui.inputBox.layout(),this.ui.list.layout(c),this.ui.tree.layout(c)}}applyStyles(a){this.styles=a,this.updateStyles()}updateStyles(){if(this.ui){let{quickInputTitleBackground:a,quickInputBackground:b,quickInputForeground:c,widgetBorder:d}=this.styles.widget;this.ui.titleBar.style.backgroundColor=a??"",this.ui.container.style.backgroundColor=b??"",this.ui.container.style.color=c??"",this.ui.container.style.border=d?`1px solid ${d}`:"",this.ui.list.style(this.styles.list),this.ui.tree.tree.style(this.styles.list);let e=[];this.styles.pickerGroup.pickerGroupBorder&&e.push(`.quick-input-list .quick-input-list-entry { border-top-color: ${this.styles.pickerGroup.pickerGroupBorder}; }`),this.styles.pickerGroup.pickerGroupForeground&&e.push(`.quick-input-list .quick-input-list-separator { color: ${this.styles.pickerGroup.pickerGroupForeground}; }`),this.styles.pickerGroup.pickerGroupForeground&&e.push(".quick-input-list .quick-input-list-separator-as-item { color: var(--vscode-descriptionForeground); }"),(this.styles.keybindingLabel.keybindingLabelBackground||this.styles.keybindingLabel.keybindingLabelBorder||this.styles.keybindingLabel.keybindingLabelBottomBorder||this.styles.keybindingLabel.keybindingLabelShadow||this.styles.keybindingLabel.keybindingLabelForeground)&&(e.push(".quick-input-list .monaco-keybinding > .monaco-keybinding-key {"),this.styles.keybindingLabel.keybindingLabelBackground&&e.push(`background-color: ${this.styles.keybindingLabel.keybindingLabelBackground};`),this.styles.keybindingLabel.keybindingLabelBorder&&e.push(`border-color: ${this.styles.keybindingLabel.keybindingLabelBorder};`),this.styles.keybindingLabel.keybindingLabelBottomBorder&&e.push(`border-bottom-color: ${this.styles.keybindingLabel.keybindingLabelBottomBorder};`),this.styles.keybindingLabel.keybindingLabelShadow&&e.push(`box-shadow: inset 0 -1px 0 ${this.styles.keybindingLabel.keybindingLabelShadow};`),this.styles.keybindingLabel.keybindingLabelForeground&&e.push(`color: ${this.styles.keybindingLabel.keybindingLabelForeground};`),e.push("}"));let f=e.join("\n");f!==this.ui.styleSheet.textContent&&(this.ui.styleSheet.textContent=f)}}loadViewState(){try{let a=JSON.parse(this.storageService.get(iW,-1,"{}"));if(void 0!==a.top||void 0!==a.left)return a}catch{}}saveViewState(a){this.layoutService.activeContainer===this.layoutService.mainContainer&&(void 0!==a?this.storageService.store(iW,JSON.stringify(a),-1,1):this.storageService.remove(iW,-1))}};iX=V=iT([iU(1,bm.x),iU(2,aZ._Y),iU(3,bU.fN),iU(4,bW.CS),iU(5,aY.Z)],iX);let iY=class extends _.jG{constructor(a,b,c,d,e,f,g){super(),this._container=a,this._quickInputContainer=b,this._quickInputDragAreas=c,this._layoutService=e,this.configurationService=g,this.dndViewState=(0,gG.FY)(this,void 0),this._enabled=!0,this._snapThreshold=20,this._snapLineHorizontalRatio=.25,this._alignment=(0,gG.FY)(this,"top"),this.alignment=this._alignment,this._quickInputAlignmentContext=hM.bindTo(f);const h="custom"===(0,iF.gO)(this.configurationService);this._controlsOnLeft=h&&1===bc.iD,this._controlsOnRight=h&&(3===bc.iD||2===bc.iD),this._registerLayoutListener(),this.registerMouseListeners(),this.dndViewState.set({...d,done:!0},void 0),d?.top!==void 0&&d?.left!==void 0&&this._setAlignmentState(void 0)}reparentUI(a){this._container=a}layoutContainer(a=this._layoutService.activeContainerDimension){if(!this._enabled)return;let b=this.dndViewState.get(),c=this._quickInputContainer.getBoundingClientRect();if(b?.top!==void 0&&b?.left!==void 0){let d=Math.round(100*b.left)/100,e=a.width,f=c.width;this._layout(b.top*a.height,d*e-f/2)}}setEnabled(a){this._enabled=a,this._quickInputContainer.classList.toggle("no-drag",!a)}_setAlignmentState(a){this._quickInputAlignmentContext.set(a),this._alignment.set(a??"custom",void 0)}_registerLayoutListener(){this._register(a$.Jh.filter(this._layoutService.onDidLayoutContainer,a=>a.container===this._container)(a=>this.layoutContainer(a.dimension)))}registerMouseListeners(){let a=this._quickInputContainer;this._register((0,a_.xb)(a,b=>{if(!this._enabled)return;let c=new ds.P((0,a_.zk)(a),b);if(2!==c.detail)return;let d=this._quickInputDragAreas.find(({node:a,includeChildren:b})=>b?(0,a_.QX)(c.target,a):c.target===a);!d||d.excludeNodes?.some(a=>(0,a_.QX)(c.target,a))||(this.dndViewState.set({top:void 0,left:void 0,done:!0},void 0),this._setAlignmentState("top"))})),this._register((0,a_._9)(a,a=>{if(!this._enabled)return;let b=(0,a_.zk)(this._layoutService.activeContainer),c=new ds.P(b,a),d=this._quickInputDragAreas.find(({node:a,includeChildren:b})=>b?(0,a_.QX)(c.target,a):c.target===a);if(!d||d.excludeNodes?.some(a=>(0,a_.QX)(c.target,a)))return;let e=this._quickInputContainer.getBoundingClientRect(),f=c.browserEvent.clientX-e.left,g=c.browserEvent.clientY-e.top,h=!1,i=(0,a_.J$)(b,a=>{new ds.P(b,a).preventDefault(),h||(h=!0),this._layout(a.clientY-g,a.clientX-f)}),j=(0,a_.xb)(b,a=>{if(h){let a=this.dndViewState.get();this.dndViewState.set({top:a?.top,left:a?.left,done:!0},void 0)}i.dispose(),j.dispose()})}))}_layout(a,b){let c=this._getTopSnapValue(),d=this._getCenterYSnapValue(),e=this._getCenterXSnapValue();(a=Math.max(0,Math.min(a,this._container.clientHeight-this._quickInputContainer.clientHeight)))<this._layoutService.activeContainerOffset.top&&(this._controlsOnLeft?b=Math.max(b,80/(0,cW.pR)((0,a_.fz)())):this._controlsOnRight&&(b=Math.min(b,this._container.clientWidth-this._quickInputContainer.clientWidth-140/(0,cW.pR)((0,a_.fz)()))));let f=Math.abs(a-c)<this._snapThreshold,g=Math.abs((a=f?c:a)-d)<this._snapThreshold,h=(a=g?d:a)/this._container.clientHeight,i=Math.abs((b=Math.max(0,Math.min(b,this._container.clientWidth-this._quickInputContainer.clientWidth)))-e)<this._snapThreshold;b=i?e:b;let j=this._container.clientWidth,k=this._quickInputContainer.clientWidth,l=b;if(this.dndViewState.set({top:h,left:(l+k/2)/j,done:!1},void 0),i){if(f)return void this._setAlignmentState("top");else if(g)return void this._setAlignmentState("center")}this._setAlignmentState(void 0)}_getTopSnapValue(){return this._layoutService.activeContainerOffset.quickPickTop}_getCenterYSnapValue(){return Math.round(this._container.clientHeight*this._snapLineHorizontalRatio)}_getCenterXSnapValue(){return Math.round(this._container.clientWidth/2)-Math.round(this._quickInputContainer.clientWidth/2)}};iY=iT([iU(4,bm.x),iU(5,bU.fN),iU(6,aB.pG)],iY);var iZ=function(a,b){return function(c,d){b(c,d,a)}};let i$=class extends aR.lR{get controller(){return this._controller||(this._controller=this._register(this.createController())),this._controller}get hasController(){return!!this._controller}get currentQuickInput(){return this.controller.currentQuickInput}get quickAccess(){return this._quickAccess||(this._quickAccess=this._register(this.instantiationService.createInstance(hy))),this._quickAccess}constructor(a,b,c,d,e){super(c),this.instantiationService=a,this.contextKeyService=b,this.layoutService=d,this.configurationService=e,this._alignment=(0,gG.FY)(this,"top"),this._onShow=this._register(new a$.vl),this._onHide=this._register(new a$.vl),this.contexts=new Map}createController(a=this.layoutService,b){let c={idPrefix:"quickInput_",container:a.activeContainer,ignoreFocusOut:()=>!1,backKeybindingLabel:()=>void 0,setContextKey:a=>this.setContextKey(a),linkOpenerDelegate:a=>{this.instantiationService.invokeFunction(b=>{b.get(gC.Cr).open(a,{allowCommands:!0,fromUserGesture:!0})})},returnFocus:()=>a.focus(),styles:this.computeStyles(),hoverDelegate:this._register(this.instantiationService.createInstance(hW))},d=this._register(this.instantiationService.createInstance(iX,{...c,...b}));return d.layout(a.activeContainerDimension,a.activeContainerOffset.quickPickTop),this._register(a.onDidLayoutActiveContainer(b=>{(0,a_.zk)(a.activeContainer)===(0,a_.zk)(d.container)&&d.layout(b,a.activeContainerOffset.quickPickTop)})),this._register(a.onDidChangeActiveContainer(()=>{d.isVisible()||d.layout(a.activeContainerDimension,a.activeContainerOffset.quickPickTop)})),this._register(d.onShow(()=>{this.resetContextKeys(),this._onShow.fire()})),this._register(d.onHide(()=>{this.resetContextKeys(),this._onHide.fire()})),this._register((0,eJ.fm)(a=>{this._alignment.set(d.alignment.read(a),void 0)})),d}setContextKey(a){let b;a&&((b=this.contexts.get(a))||(b=new bU.N1(a,!1).bindTo(this.contextKeyService),this.contexts.set(a,b))),b&&b.get()||(this.resetContextKeys(),b?.set(!0))}resetContextKeys(){this.contexts.forEach(a=>{a.get()&&a.reset()})}pick(a,b,c=bo.XO.None){return this.controller.pick(a,b,c)}input(a={},b=bo.XO.None){return this.controller.input(a,b)}createQuickPick(a={useSeparators:!1}){return this.controller.createQuickPick(a)}createInputBox(){return this.controller.createInputBox()}toggle(){this.controller.toggle()}toggleHover(){this.hasController&&this.controller.toggleHover()}updateStyles(){this.hasController&&this.controller.applyStyles(this.computeStyles())}computeStyles(){return{widget:{quickInputBackground:(0,aS.Gu)(aW.EL),quickInputForeground:(0,aS.Gu)(aW.HJ),quickInputTitleBackground:(0,aS.Gu)(aW.er),widgetBorder:(0,aS.Gu)(aU.DS),widgetShadow:(0,aS.Gu)(aU.f9)},inputBox:dI.ho,toggle:dI.mk,countBadge:dI.m$,button:dI.cv,progressBar:dI.oJ,keybindingLabel:dI.ir,list:(0,dI.t8)({listBackground:aW.EL,listFocusBackground:aW.Al,listFocusForeground:aW.nH,listInactiveFocusForeground:aW.nH,listInactiveSelectionIconForeground:aW.c7,listInactiveFocusBackground:aW.Al,listInactiveSelectionBackground:aW.Al,listInactiveSelectionForeground:aW.nH,listFocusOutline:aT.bu,listInactiveFocusOutline:aT.bu,treeStickyScrollBackground:aW.EL}),pickerGroup:{pickerGroupBorder:(0,aS.Gu)(aW.iw),pickerGroupForeground:(0,aS.Gu)(aW.NB)}}}};i$=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([iZ(0,aZ._Y),iZ(1,bU.fN),iZ(2,aR.Gy),iZ(3,bm.x),iZ(4,aB.pG)],i$);var i_=c(90178),i0=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},i1=function(a,b){return function(c,d){b(c,d,a)}};let i2=class extends i${constructor(a,b,c,d,e,f){super(b,c,d,new cP(a.getContainerDomNode(),e),f),this.host=void 0;const g=i4.get(a);if(g){const b=g.widget;this.host={_serviceBrand:void 0,get mainContainer(){return b.getDomNode()},getContainer:()=>b.getDomNode(),whenContainerStylesLoaded(){},get containers(){return[b.getDomNode()]},get activeContainer(){return b.getDomNode()},get mainContainerDimension(){return a.getLayoutInfo()},get activeContainerDimension(){return a.getLayoutInfo()},get onDidLayoutMainContainer(){return a.onDidLayoutChange},get onDidLayoutActiveContainer(){return a.onDidLayoutChange},get onDidLayoutContainer(){return a$.Jh.map(a.onDidLayoutChange,a=>({container:b.getDomNode(),dimension:a}))},get onDidChangeActiveContainer(){return a$.Jh.None},get onDidAddContainer(){return a$.Jh.None},get mainContainerOffset(){return{top:0,quickPickTop:0}},get activeContainerOffset(){return{top:0,quickPickTop:0}},focus:()=>a.focus()}}else this.host=void 0}createController(){return super.createController(this.host)}};i2=i0([i1(1,aZ._Y),i1(2,bU.fN),i1(3,aR.Gy),i1(4,ae.T),i1(5,aB.pG)],i2);let i3=class{get activeService(){let a=this.codeEditorService.getFocusedCodeEditor();if(!a)throw Error("Quick input service needs a focused editor to work.");let b=this.mapEditorToService.get(a);if(!b){let c=b=this.instantiationService.createInstance(i2,a);this.mapEditorToService.set(a,b),(0,i_.P)(a.onDidDispose)(()=>{c.dispose(),this.mapEditorToService.delete(a)})}return b}get currentQuickInput(){return this.activeService.currentQuickInput}get quickAccess(){return this.activeService.quickAccess}constructor(a,b){this.instantiationService=a,this.codeEditorService=b,this.mapEditorToService=new Map}pick(a,b,c=bo.XO.None){return this.activeService.pick(a,b,c)}input(a,b){return this.activeService.input(a,b)}createQuickPick(a={useSeparators:!1}){return this.activeService.createQuickPick(a)}createInputBox(){return this.activeService.createInputBox()}toggle(){return this.activeService.toggle()}toggleHover(){return this.activeService.toggleHover()}};i3=i0([i1(0,aZ._Y),i1(1,ae.T)],i3);class i4{static{this.ID="editor.controller.quickInput"}static get(a){return a.getContribution(i4.ID)}constructor(a){this.editor=a,this.widget=new i5(this.editor)}dispose(){this.widget.dispose()}}class i5{static{this.ID="editor.contrib.quickInputWidget"}constructor(a){this.codeEditor=a,this.domNode=document.createElement("div"),this.codeEditor.addOverlayWidget(this)}getId(){return i5.ID}getDomNode(){return this.domNode}getPosition(){return{preference:{top:0,left:0}}}dispose(){this.codeEditor.removeOverlayWidget(this)}}(0,ad.HW)(i4.ID,i4,4);var i6=c(37758);class i7{static{this._workerIdPool=0}createWorkerClient(a){var b;let c,d=++i7._workerIdPool;return c=a instanceof Worker||(b=a)&&"function"==typeof b.then?Promise.resolve(a):this._createWorker(a),new i6.KW(new i9(c,d))}_createWorker(a){var b;let c=this.getWorkerUrl(a),d=function(a,b,c){if(/^((http:)|(https:)|(file:))/.test(b)&&b.substring(0,globalThis.origin.length)!==globalThis.origin);else{let c=b.lastIndexOf("?"),d=b.lastIndexOf("#",c),e=c>0?new URLSearchParams(b.substring(c+1,~d?d:void 0)):new URLSearchParams;bC.SJ.addSearchParam(e,!0,!0),b=e.toString()?`${b}?${e.toString()}#${a}`:`${b}#${a}`}let d=new Blob([(0,cL.Yc)([`/*${a}*/`,`globalThis._VSCODE_NLS_MESSAGES = ${JSON.stringify((0,a3.Ec)())};`,`globalThis._VSCODE_NLS_LANGUAGE = ${JSON.stringify((0,a3.i8)())};`,`globalThis._VSCODE_FILE_ROOT = ${JSON.stringify(globalThis._VSCODE_FILE_ROOT)};`,"const ttPolicy = globalThis.trustedTypes?.createPolicy('defaultWorkerFactory', { createScriptURL: value => value });","globalThis.workerttPolicy = ttPolicy;",c?"try {":"",`await import(ttPolicy?.createScriptURL(${JSON.stringify(b)}) ?? ${JSON.stringify(b)});`,c?`} catch (err) { console.error(${JSON.stringify(c)}, err); throw err; }`:"","globalThis.postMessage({ type: 'vscode-worker-ready' });",`/*${a}*/`]).join("")],{type:"application/javascript"});return URL.createObjectURL(d)}(a.label,c,this._getWorkerLoadingFailedErrorMessage(a));return b=new Worker(i8?i8.createScriptURL(d):d,{name:a.label,type:"module"}),new Promise((a,c)=>{b.onmessage=function(c){"vscode-worker-ready"===c.data.type&&(b.onmessage=null,a(b))},b.onerror=c})}_getWorkerLoadingFailedErrorMessage(a){}getWorkerUrl(a){if(!a.esmModuleLocation)throw Error("Missing esmModuleLocation in WebWorkerDescriptor");return("function"==typeof a.esmModuleLocation?a.esmModuleLocation():a.esmModuleLocation).toString(!0)}}let i8=(f=globalThis,"object"==typeof self&&self.constructor&&"DedicatedWorkerGlobalScope"===self.constructor.name&&void 0!==f.workerttPolicy?f.workerttPolicy:(0,ar.H)("defaultWorkerFactory",{createScriptURL:a=>a}));class i9 extends _.jG{constructor(a,b){super(),this._onMessage=this._register(new a$.vl),this.onMessage=this._onMessage.event,this._onError=this._register(new a$.vl),this.onError=this._onError.event,this.id=b,this.worker=a,this.postMessage("-please-ignore-",[]);const c=a=>{this._onError.fire(a)};this.worker.then(a=>{a.onmessage=a=>{this._onMessage.fire(a.data)},a.onmessageerror=a=>{this._onError.fire(a)},"function"==typeof a.addEventListener&&a.addEventListener("error",c)}),this._register((0,_.s)(()=>{this.worker?.then(a=>{a.onmessage=null,a.onmessageerror=null,a.removeEventListener("error",c),a.terminate()}),this.worker=null}))}getId(){return this.id}postMessage(a,b){this.worker?.then(c=>{try{c.postMessage(a,b)}catch(a){(0,bB.dz)(a),(0,bB.dz)(Error("FAILED to post message to worker",{cause:a}))}})}}class ja extends i7{_createWorker(a){let b=(0,cW.HT)();if(b&&"function"==typeof b.getWorker){let c=b.getWorker("workerMain.js",a.label);if(void 0!==c)return Promise.resolve(c)}return super._createWorker(a)}_getWorkerLoadingFailedErrorMessage(a){return`Failed to load worker script for label: ${a.label}.
|
|
452
452
|
Ensure your bundler properly bundles modules referenced by "new URL('...?esm', import.meta.url)".`}getWorkerUrl(a){let b=(0,cW.HT)();if(b&&"function"==typeof b.getWorkerUrl){let c=b.getWorkerUrl("workerMain.js",a.label);if(void 0!==c)return new URL(c,document.baseURI).toString()}if(!a.esmModuleLocationBundler)throw Error(`You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker for the worker label: ${a.label}`);return("function"==typeof a.esmModuleLocationBundler?a.esmModuleLocationBundler():a.esmModuleLocationBundler).toString()}}var jb=c(70233),jc=c(70281);let jd={base:"vs",inherit:!1,rules:[{token:"",foreground:"000000",background:"fffffe"},{token:"invalid",foreground:"cd3131"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"001188"},{token:"variable.predefined",foreground:"4864AA"},{token:"constant",foreground:"dd0000"},{token:"comment",foreground:"008000"},{token:"number",foreground:"098658"},{token:"number.hex",foreground:"3030c0"},{token:"regexp",foreground:"800000"},{token:"annotation",foreground:"808080"},{token:"type",foreground:"008080"},{token:"delimiter",foreground:"000000"},{token:"delimiter.html",foreground:"383838"},{token:"delimiter.xml",foreground:"0000FF"},{token:"tag",foreground:"800000"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta.scss",foreground:"800000"},{token:"metatag",foreground:"e00000"},{token:"metatag.content.html",foreground:"FF0000"},{token:"metatag.html",foreground:"808080"},{token:"metatag.xml",foreground:"808080"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"863B00"},{token:"string.key.json",foreground:"A31515"},{token:"string.value.json",foreground:"0451A5"},{token:"attribute.name",foreground:"FF0000"},{token:"attribute.value",foreground:"0451A5"},{token:"attribute.value.number",foreground:"098658"},{token:"attribute.value.unit",foreground:"098658"},{token:"attribute.value.html",foreground:"0000FF"},{token:"attribute.value.xml",foreground:"0000FF"},{token:"string",foreground:"A31515"},{token:"string.html",foreground:"0000FF"},{token:"string.sql",foreground:"FF0000"},{token:"string.yaml",foreground:"0451A5"},{token:"keyword",foreground:"0000FF"},{token:"keyword.json",foreground:"0451A5"},{token:"keyword.flow",foreground:"AF00DB"},{token:"keyword.flow.scss",foreground:"0000FF"},{token:"operator.scss",foreground:"666666"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"666666"},{token:"predefined.sql",foreground:"C700C7"}],colors:{[aU.Yt]:"#FFFFFE",[aU.By]:"#000000",[aU.t]:"#E5EBF1",[hd.vV]:"#D3D3D3",[hd.H0]:"#939393",[aU.Qw]:"#ADD6FF4D"}},je={base:"vs-dark",inherit:!1,rules:[{token:"",foreground:"D4D4D4",background:"1E1E1E"},{token:"invalid",foreground:"f44747"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"74B0DF"},{token:"variable.predefined",foreground:"4864AA"},{token:"variable.parameter",foreground:"9CDCFE"},{token:"constant",foreground:"569CD6"},{token:"comment",foreground:"608B4E"},{token:"number",foreground:"B5CEA8"},{token:"number.hex",foreground:"5BB498"},{token:"regexp",foreground:"B46695"},{token:"annotation",foreground:"cc6666"},{token:"type",foreground:"3DC9B0"},{token:"delimiter",foreground:"DCDCDC"},{token:"delimiter.html",foreground:"808080"},{token:"delimiter.xml",foreground:"808080"},{token:"tag",foreground:"569CD6"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta.scss",foreground:"A79873"},{token:"meta.tag",foreground:"CE9178"},{token:"metatag",foreground:"DD6A6F"},{token:"metatag.content.html",foreground:"9CDCFE"},{token:"metatag.html",foreground:"569CD6"},{token:"metatag.xml",foreground:"569CD6"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"9CDCFE"},{token:"string.key.json",foreground:"9CDCFE"},{token:"string.value.json",foreground:"CE9178"},{token:"attribute.name",foreground:"9CDCFE"},{token:"attribute.value",foreground:"CE9178"},{token:"attribute.value.number.css",foreground:"B5CEA8"},{token:"attribute.value.unit.css",foreground:"B5CEA8"},{token:"attribute.value.hex.css",foreground:"D4D4D4"},{token:"string",foreground:"CE9178"},{token:"string.sql",foreground:"FF0000"},{token:"keyword",foreground:"569CD6"},{token:"keyword.flow",foreground:"C586C0"},{token:"keyword.json",foreground:"CE9178"},{token:"keyword.flow.scss",foreground:"569CD6"},{token:"operator.scss",foreground:"909090"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"909090"},{token:"predefined.sql",foreground:"FF00FF"}],colors:{[aU.Yt]:"#1E1E1E",[aU.By]:"#D4D4D4",[aU.t]:"#3A3D41",[hd.vV]:"#404040",[hd.H0]:"#707070",[aU.Qw]:"#ADD6FF26"}},jf={base:"hc-black",inherit:!1,rules:[{token:"",foreground:"FFFFFF",background:"000000"},{token:"invalid",foreground:"f44747"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"1AEBFF"},{token:"variable.parameter",foreground:"9CDCFE"},{token:"constant",foreground:"569CD6"},{token:"comment",foreground:"608B4E"},{token:"number",foreground:"FFFFFF"},{token:"regexp",foreground:"C0C0C0"},{token:"annotation",foreground:"569CD6"},{token:"type",foreground:"3DC9B0"},{token:"delimiter",foreground:"FFFF00"},{token:"delimiter.html",foreground:"FFFF00"},{token:"tag",foreground:"569CD6"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta",foreground:"D4D4D4"},{token:"meta.tag",foreground:"CE9178"},{token:"metatag",foreground:"569CD6"},{token:"metatag.content.html",foreground:"1AEBFF"},{token:"metatag.html",foreground:"569CD6"},{token:"metatag.xml",foreground:"569CD6"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"9CDCFE"},{token:"string.key",foreground:"9CDCFE"},{token:"string.value",foreground:"CE9178"},{token:"attribute.name",foreground:"569CD6"},{token:"attribute.value",foreground:"3FF23F"},{token:"string",foreground:"CE9178"},{token:"string.sql",foreground:"FF0000"},{token:"keyword",foreground:"569CD6"},{token:"keyword.flow",foreground:"C586C0"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"909090"},{token:"predefined.sql",foreground:"FF00FF"}],colors:{[aU.Yt]:"#000000",[aU.By]:"#FFFFFF",[hd.vV]:"#FFFFFF",[hd.H0]:"#FFFFFF"}},jg={base:"hc-light",inherit:!1,rules:[{token:"",foreground:"292929",background:"FFFFFF"},{token:"invalid",foreground:"B5200D"},{token:"emphasis",fontStyle:"italic"},{token:"strong",fontStyle:"bold"},{token:"variable",foreground:"264F70"},{token:"variable.predefined",foreground:"4864AA"},{token:"constant",foreground:"dd0000"},{token:"comment",foreground:"008000"},{token:"number",foreground:"098658"},{token:"number.hex",foreground:"3030c0"},{token:"regexp",foreground:"800000"},{token:"annotation",foreground:"808080"},{token:"type",foreground:"008080"},{token:"delimiter",foreground:"000000"},{token:"delimiter.html",foreground:"383838"},{token:"tag",foreground:"800000"},{token:"tag.id.pug",foreground:"4F76AC"},{token:"tag.class.pug",foreground:"4F76AC"},{token:"meta.scss",foreground:"800000"},{token:"metatag",foreground:"e00000"},{token:"metatag.content.html",foreground:"B5200D"},{token:"metatag.html",foreground:"808080"},{token:"metatag.xml",foreground:"808080"},{token:"metatag.php",fontStyle:"bold"},{token:"key",foreground:"863B00"},{token:"string.key.json",foreground:"A31515"},{token:"string.value.json",foreground:"0451A5"},{token:"attribute.name",foreground:"264F78"},{token:"attribute.value",foreground:"0451A5"},{token:"string",foreground:"A31515"},{token:"string.sql",foreground:"B5200D"},{token:"keyword",foreground:"0000FF"},{token:"keyword.flow",foreground:"AF00DB"},{token:"operator.sql",foreground:"778899"},{token:"operator.swift",foreground:"666666"},{token:"predefined.sql",foreground:"C700C7"}],colors:{[aU.Yt]:"#FFFFFF",[aU.By]:"#292929",[hd.vV]:"#292929",[hd.H0]:"#292929"}};var jh=c(32809);class ji{getIcon(a){let b=(0,jh.HT)(),c=a.defaults;for(;dz.L.isThemeIcon(c);){let a=b.getIcon(c.id);if(!a)return;c=a.defaults}return c}}let jj="vs-dark",jk="hc-black",jl="hc-light",jm=c3.O.as(aS.Fd.ColorContribution),jn=c3.O.as(aR.Fd.ThemingContribution);class jo{constructor(a,b){this.semanticHighlighting=!1,this.themeData=b;const c=b.base;a.length>0?(jp(a)?this.id=a:this.id=c+" "+a,this.themeName=a):(this.id=c,this.themeName=c),this.colors=null,this.defaultColors=Object.create(null),this._tokenTheme=null}get base(){return this.themeData.base}notifyBaseUpdated(){this.themeData.inherit&&(this.colors=null,this._tokenTheme=null)}getColors(){if(!this.colors){let a=new Map;for(let b in this.themeData.colors)a.set(b,ek.Q1.fromHex(this.themeData.colors[b]));if(this.themeData.inherit){let b=jq(this.themeData.base);for(let c in b.colors)a.has(c)||a.set(c,ek.Q1.fromHex(b.colors[c]))}this.colors=a}return this.colors}getColor(a,b){let c=this.getColors().get(a);return c||(!1!==b?this.getDefault(a):void 0)}getDefault(a){let b=this.defaultColors[a];return b||(b=jm.resolveDefaultColor(a,this),this.defaultColors[a]=b),b}defines(a){return this.getColors().has(a)}get type(){switch(this.base){case"vs":return ii.zM.LIGHT;case jk:return ii.zM.HIGH_CONTRAST_DARK;case jl:return ii.zM.HIGH_CONTRAST_LIGHT;default:return ii.zM.DARK}}get tokenTheme(){if(!this._tokenTheme){let a=[],b=[];if(this.themeData.inherit){let c=jq(this.themeData.base);a=c.rules,c.encodedTokensColors&&(b=c.encodedTokensColors)}let c=this.themeData.colors["editor.foreground"],d=this.themeData.colors["editor.background"];if(c||d){let b={token:""};c&&(b.foreground=c),d&&(b.background=d),a.push(b)}a=a.concat(this.themeData.rules),this.themeData.encodedTokensColors&&(b=this.themeData.encodedTokensColors),this._tokenTheme=jc.TQ.createFromRawTokenTheme(a,b)}return this._tokenTheme}getTokenStyleMetadata(a,b,c){let d=this.tokenTheme._match([a].concat(b).join(".")).metadata,e=jb.x.getForeground(d),f=jb.x.getFontStyle(d);return{foreground:e,italic:!!(1&f),bold:!!(2&f),underline:!!(4&f),strikethrough:!!(8&f)}}get tokenColorMap(){return[]}}function jp(a){return"vs"===a||a===jj||a===jk||a===jl}function jq(a){switch(a){case"vs":return jd;case jj:return je;case jk:return jf;case jl:return jg}}function jr(a){let b=jq(a);return new jo(a,b)}class js extends _.jG{constructor(){super(),this._onColorThemeChange=this._register(new a$.vl),this.onDidColorThemeChange=this._onColorThemeChange.event,this._onProductIconThemeChange=this._register(new a$.vl),this.onDidProductIconThemeChange=this._onProductIconThemeChange.event,this._environment=Object.create(null),this._builtInProductIconTheme=new ji,this._autoDetectHighContrast=!0,this._knownThemes=new Map,this._knownThemes.set("vs",jr("vs")),this._knownThemes.set(jj,jr(jj)),this._knownThemes.set(jk,jr(jk)),this._knownThemes.set(jl,jr(jl));const a=this._register(function(a){let b=new _.Cm,c=b.add(new a$.vl),d=(0,jh.HT)();return b.add(d.onDidChange(()=>c.fire())),a&&b.add(a.onDidProductIconThemeChange(()=>c.fire())),{dispose:()=>b.dispose(),onDidChange:c.event,getCSS(){let b=a?a.getProductIconTheme():new ji,c={},e=new ev.M$,f=new ev.M$;for(let a of d.getIcons()){let d=b.getIcon(a);if(!d)continue;let g=d.font,h=(0,ev.mG)`--vscode-icon-${(0,ev.s7)(a.id)}-font-family`,i=(0,ev.mG)`--vscode-icon-${(0,ev.s7)(a.id)}-content`;g?(c[g.id]=g.definition,f.push((0,ev.mG)`${h}: ${(0,ev.r$)(g.id)};`,(0,ev.mG)`${i}: ${(0,ev.r$)(d.fontCharacter)};`),e.push((0,ev.mG)`.codicon-${(0,ev.s7)(a.id)}:before { content: ${(0,ev.r$)(d.fontCharacter)}; font-family: ${(0,ev.r$)(g.id)}; }`)):(f.push((0,ev.mG)`${i}: ${(0,ev.r$)(d.fontCharacter)}; ${h}: 'codicon';`),e.push((0,ev.mG)`.codicon-${(0,ev.s7)(a.id)}:before { content: ${(0,ev.r$)(d.fontCharacter)}; }`))}for(let a in c){let b=c[a],d=b.weight?(0,ev.mG)`font-weight: ${(0,ev.yj)(b.weight)};`:(0,ev.mG)``,f=b.style?(0,ev.mG)`font-style: ${(0,ev.yj)(b.style)};`:(0,ev.mG)``,g=new ev.M$;for(let a of b.src)g.push((0,ev.mG)`${(0,ev.Tf)(a.location)} format(${(0,ev.r$)(a.format)})`);e.push((0,ev.mG)`@font-face { src: ${g.join(", ")}; font-family: ${(0,ev.r$)(a)};${d}${f} font-display: block; }`)}return e.push((0,ev.mG)`:root { ${f.join(" ")} }`),e.join("\n")}}}(this));this._codiconCSS=a.getCSS(),this._themeCSS="",this._allCSS=`${this._codiconCSS}
|
|
453
453
|
${this._themeCSS}`,this._globalStyleElement=null,this._styleElements=[],this._colorMapOverride=null,this.setTheme("vs"),this._onOSSchemeChanged(),this._register(a.onDidChange(()=>{this._codiconCSS=a.getCSS(),this._updateCSS()})),(0,cW.Dy)($.G,"(forced-colors: active)",()=>{this._onOSSchemeChanged()})}registerEditorContainer(a){return(0,a_.Cl)(a)?this._registerShadowDomContainer(a):this._registerRegularEditorContainer()}_registerRegularEditorContainer(){return this._globalStyleElement||(this._globalStyleElement=(0,du.li)(void 0,a=>{a.className="monaco-colors",a.textContent=this._allCSS}),this._styleElements.push(this._globalStyleElement)),_.jG.None}_registerShadowDomContainer(a){let b=(0,du.li)(a,a=>{a.className="monaco-colors",a.textContent=this._allCSS});return this._styleElements.push(b),{dispose:()=>{for(let a=0;a<this._styleElements.length;a++)if(this._styleElements[a]===b)return void this._styleElements.splice(a,1)}}}defineTheme(a,b){if(!/^[a-z0-9\-]+$/i.test(a))throw Error("Illegal theme name!");if(!jp(b.base)&&!jp(a))throw Error("Illegal theme base!");this._knownThemes.set(a,new jo(a,b)),jp(a)&&this._knownThemes.forEach(b=>{b.base===a&&b.notifyBaseUpdated()}),this._theme.themeName===a&&this.setTheme(a)}getColorTheme(){return this._theme}setColorMapOverride(a){this._colorMapOverride=a,this._updateThemeOrColorMap()}setTheme(a){let b;b=this._knownThemes.has(a)?this._knownThemes.get(a):this._knownThemes.get("vs"),this._updateActualTheme(b)}_updateActualTheme(a){a&&this._theme!==a&&(this._theme=a,this._updateThemeOrColorMap())}_onOSSchemeChanged(){if(this._autoDetectHighContrast){let a=$.G.matchMedia("(forced-colors: active)").matches;if(a!==(0,ii.Bb)(this._theme.type)){let b;b=(0,ii.HD)(this._theme.type)?a?jk:jj:a?jl:"vs",this._updateActualTheme(this._knownThemes.get(b))}}}setAutoDetectHighContrast(a){this._autoDetectHighContrast=a,this._onOSSchemeChanged()}_updateThemeOrColorMap(){let a=[],b={},c={addRule:c=>{b[c]||(a.push(c),b[c]=!0)}};jn.getThemingParticipants().forEach(a=>a(this._theme,c,this._environment));let d=[];for(let a of jm.getColors()){let b=this._theme.getColor(a.id,!0);b&&d.push(`${(0,aS.Bb)(a.id)}: ${b.toString()};`)}c.addRule(`.monaco-editor, .monaco-diff-editor, .monaco-component { ${d.join("\n")} }`);let e=this._colorMapOverride||this._theme.tokenTheme.getColorMap();c.addRule((0,jc.nh)(e)),c.addRule(".monaco-editor, .monaco-diff-editor, .monaco-component { forced-color-adjust: none; }"),this._themeCSS=a.join("\n"),this._updateCSS(),ak.dG.setColorMap(e),this._onColorThemeChange.fire(this._theme)}_updateCSS(){this._allCSS=`${this._codiconCSS}
|
|
454
|
-
${this._themeCSS}`,this._styleElements.forEach(a=>a.textContent=this._allCSS)}getFileIconTheme(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}}getProductIconTheme(){return this._builtInProductIconTheme}}class jt{getParserClass(){throw Error("not implemented in StandaloneTreeSitterLibraryService")}supportsLanguage(a,b){return!1}getLanguage(a,b,c){}getInjectionQueries(a,b){return null}getHighlightingQueries(a,b){return null}}var ju=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},jv=function(a,b){return function(c,d){b(c,d,a)}};class jw{constructor(a){this.disposed=!1,this.model=a,this._onWillDispose=new a$.vl}get textEditorModel(){return this.model}dispose(){this.disposed=!0,this._onWillDispose.fire()}}let jx=class{constructor(a){this.modelService=a}createModelReference(a){let b=this.modelService.getModel(a);return b?Promise.resolve(new _.BO(new jw(b))):Promise.reject(Error("Model not found"))}};jx=ju([jv(0,ap.S)],jx);class jy{static{this.NULL_PROGRESS_RUNNER={done:()=>{},total:()=>{},worked:()=>{}}}show(){return jy.NULL_PROGRESS_RUNNER}async showWhile(a,b){await a}}class jz{withProgress(a,b,c){return b({report:()=>{}})}}class jA{constructor(){this.isExtensionDevelopment=!1,this.isBuilt=!1}}class jB{async confirm(a){return{confirmed:this.doConfirm(a.message,a.detail),checkboxChecked:!1}}doConfirm(a,b){let c=a;return b&&(c=c+"\n\n"+b),$.G.confirm(c)}async prompt(a){let b;if(this.doConfirm(a.message,a.detail)){let c=[...a.buttons??[]];a.cancelButton&&"string"!=typeof a.cancelButton&&"boolean"!=typeof a.cancelButton&&c.push(a.cancelButton),b=await c[0]?.run({checkboxChecked:!1})}return{result:b}}async error(a,b){await this.prompt({type:bD.A.Error,message:a,detail:b})}}class jC{static{this.NO_OP=new bF.Kz}info(a){return this.notify({severity:bD.A.Info,message:a})}warn(a){return this.notify({severity:bD.A.Warning,message:a})}error(a){return this.notify({severity:bD.A.Error,message:a})}notify(a){switch(a.severity){case bD.A.Error:console.error(a.message);break;case bD.A.Warning:console.warn(a.message);break;default:console.log(a.message)}return jC.NO_OP}prompt(a,b,c,d){return jC.NO_OP}status(a,b){return{close:()=>{}}}}let jD=class{constructor(a){this._onWillExecuteCommand=new a$.vl,this._onDidExecuteCommand=new a$.vl,this.onDidExecuteCommand=this._onDidExecuteCommand.event,this._instantiationService=a}executeCommand(a,...b){let c=c0.w.getCommand(a);if(!c)return Promise.reject(Error(`command '${a}' not found`));try{this._onWillExecuteCommand.fire({commandId:a,args:b});let d=this._instantiationService.invokeFunction.apply(this._instantiationService,[c.handler,...b]);return this._onDidExecuteCommand.fire({commandId:a,args:b}),Promise.resolve(d)}catch(a){return Promise.reject(a)}}};jD=ju([jv(0,aZ._Y)],jD);let jE=class extends d4{constructor(a,b,c,d,e,f){super(a,b,c,d,e),this._cachedResolver=null,this._dynamicKeybindings=[],this._domNodeListeners=[];const g=a=>{let b=new _.Cm;b.add((0,a_.ko)(a,a_.Bx.KEY_DOWN,a=>{let b=new a1.Z(a);this._dispatch(b,b.target)&&(b.preventDefault(),b.stopPropagation())})),b.add((0,a_.ko)(a,a_.Bx.KEY_UP,a=>{let b=new a1.Z(a);this._singleModifierDispatch(b,b.target)&&b.preventDefault()})),this._domNodeListeners.push(new jF(a,b))},h=a=>{for(let b=0;b<this._domNodeListeners.length;b++){let c=this._domNodeListeners[b];c.domNode===a&&(this._domNodeListeners.splice(b,1),c.dispose())}},i=a=>{a.getOption(70)||g(a.getContainerDomNode())};this._register(f.onCodeEditorAdd(i)),this._register(f.onCodeEditorRemove(a=>{a.getOption(70)||h(a.getContainerDomNode())})),f.listCodeEditors().forEach(i);const j=a=>{g(a.getContainerDomNode())};this._register(f.onDiffEditorAdd(j)),this._register(f.onDiffEditorRemove(a=>{h(a.getContainerDomNode())})),f.listDiffEditors().forEach(j)}addDynamicKeybinding(a,b,c,d){return(0,_.qE)(c0.w.registerCommand(a,c),this.addDynamicKeybindings([{keybinding:b,command:a,when:d}]))}addDynamicKeybindings(a){let b=a.map(a=>({keybinding:(0,cQ.Zv)(a.keybinding,bc.OS),command:a.command??null,commandArgs:a.commandArgs,when:a.when,weight1:1e3,weight2:0,extensionId:null,isBuiltinExtension:!1}));return this._dynamicKeybindings=this._dynamicKeybindings.concat(b),this.updateResolver(),(0,_.s)(()=>{for(let a=0;a<this._dynamicKeybindings.length;a++)if(this._dynamicKeybindings[a]===b[0]){this._dynamicKeybindings.splice(a,b.length),this.updateResolver();return}})}updateResolver(){this._cachedResolver=null,this._onDidUpdateKeybindings.fire()}_getResolver(){if(!this._cachedResolver){let a=this._toNormalizedKeybindingItems(br.f.getDefaultKeybindings(),!0),b=this._toNormalizedKeybindingItems(this._dynamicKeybindings,!1);this._cachedResolver=new d0(a,b,a=>this._log(a))}return this._cachedResolver}_documentHasFocus(){return $.G.document.hasFocus()}_toNormalizedKeybindingItems(a,b){let c=[],d=0;for(let e of a){let a=e.when||void 0,f=e.keybinding;if(f)for(let g of ea.resolveKeybinding(f,bc.OS))c[d++]=new d6(g,e.command,e.commandArgs,a,b,null,!1);else c[d++]=new d6(void 0,e.command,e.commandArgs,a,b,null,!1)}return c}resolveKeyboardEvent(a){return new ea([new cQ.dG(a.ctrlKey,a.shiftKey,a.altKey,a.metaKey,a.keyCode)],bc.OS)}};jE=ju([jv(0,bU.fN),jv(1,c0.d),jv(2,bX.k),jv(3,bF.Ot),jv(4,cv.rr),jv(5,ae.T)],jE);class jF extends _.jG{constructor(a,b){super(),this.domNode=a,this._register(b)}}function jG(a){return!!a&&"object"==typeof a&&(!a.overrideIdentifier||"string"==typeof a.overrideIdentifier)&&(!a.resource||a.resource instanceof ab.r)}let jH=class{constructor(a){this.logService=a,this._onDidChangeConfiguration=new a$.vl,this.onDidChangeConfiguration=this._onDidChangeConfiguration.event;const b=new da(a);this._configuration=new c8(b.reload(),c5.createEmptyModel(a),c5.createEmptyModel(a),c5.createEmptyModel(a),c5.createEmptyModel(a),c5.createEmptyModel(a),new b4.fT,c5.createEmptyModel(a),new b4.fT,a),b.dispose()}getValue(a,b){let c="string"==typeof a?a:void 0,d=jG(a)?a:jG(b)?b:{};return this._configuration.getValue(c,d,void 0)}updateValues(a){let b={data:this._configuration.toData()},c=[];for(let b of a){let[a,d]=b;this.getValue(a)!==d&&(this._configuration.updateValue(a,d),c.push(a))}if(c.length>0){let a=new c9({keys:c,overrides:[]},b,this._configuration,void 0,this.logService);a.source=8,this._onDidChangeConfiguration.fire(a)}return Promise.resolve()}updateValue(a,b,c,d){return this.updateValues([[a,b]])}inspect(a,b={}){return this._configuration.inspect(a,b,void 0)}};jH=ju([jv(0,cv.rr)],jH);let jI=class extends _.jG{constructor(a,b,c){super(),this.configurationService=a,this.modelService=b,this.languageService=c,this._onDidChangeConfiguration=this._register(new a$.vl),this._register(this.configurationService.onDidChangeConfiguration(a=>{this._onDidChangeConfiguration.fire({affectedKeys:a.affectedKeys,affectsConfiguration:(b,c)=>a.affectsConfiguration(c)})}))}getValue(a,b,c){let d=g$.y.isIPosition(b)?b:null,e=d?"string"==typeof c?c:void 0:"string"==typeof b?b:void 0,f=a?this.getLanguage(a,d):void 0;return void 0===e?this.configurationService.getValue({resource:a,overrideIdentifier:f}):this.configurationService.getValue(e,{resource:a,overrideIdentifier:f})}getLanguage(a,b){let c=this.modelService.getModel(a);return c?b?c.getLanguageIdAtPosition(b.lineNumber,b.column):c.getLanguageId():this.languageService.guessLanguageIdByFilepathOrFirstLine(a)}};jI=ju([jv(0,aB.pG),jv(1,ap.S),jv(2,al.L)],jI);let jJ=class{constructor(a){this.configurationService=a}getEOL(a,b){let c=this.configurationService.getValue("files.eol",{overrideIdentifier:b,resource:a});return c&&"string"==typeof c&&"auto"!==c?c:bc.j9||bc.zx?"\n":"\r\n"}};jJ=ju([jv(0,aB.pG)],jJ);class jK{publicLog2(){}}class jL{static{this.SCHEME="inmemory"}constructor(){const a=ab.r.from({scheme:jL.SCHEME,authority:"model",path:"/"});this.workspace={id:gJ.cn,folders:[new gJ.mX({uri:a,name:"",index:0})]}}getWorkspace(){return this.workspace}getWorkspaceFolder(a){return a&&a.scheme===jL.SCHEME?this.workspace.folders[0]:null}}function jM(a,b,c){if(!b||!(a instanceof jH))return;let d=[];Object.keys(b).forEach(a=>{(gY()[`editor.${a}`]||0)&&d.push([`editor.${a}`,b[a]]),c&&(gY()[`diffEditor.${a}`]||0)&&d.push([`diffEditor.${a}`,b[a]])}),d.length>0&&a.updateValues(d)}let jN=class{constructor(a){this._modelService=a}hasPreviewHandler(){return!1}async apply(a,b){let c=Array.isArray(a)?a:gL.jN.convert(a),d=new Map;for(let a of c){if(!(a instanceof gL.cw))throw Error("bad edit - only text edits are supported");let b=this._modelService.getModel(a.resource);if(!b)throw Error("bad edit - model not found");if("number"==typeof a.versionId&&b.getVersionId()!==a.versionId)throw Error("bad state - model changed in the meantime");let c=d.get(b);c||(c=[],d.set(b,c)),c.push(gZ.k.replaceMove(cw.Q.lift(a.textEdit.range),a.textEdit.text))}let e=0,f=0;for(let[a,b]of d)a.pushStackElement(),a.pushEditOperations([],b,()=>[]),a.pushStackElement(),f+=1,e+=b.length;return{ariaSummary:(0,aa.GP)(hu.tu.bulkEditServiceSummary,e,f),isApplied:e>0}}};jN=ju([jv(0,ap.S)],jN);class jO{getUriLabel(a,b){return"file"===a.scheme?a.fsPath:a.path}getUriBasenameLabel(a){return(0,cR.P8)(a)}}let jP=class extends dN{constructor(a,b){super(a),this._codeEditorService=b}showContextView(a,b,c){if(!b){let a=this._codeEditorService.getFocusedCodeEditor()||this._codeEditorService.getActiveCodeEditor();a&&(b=a.getContainerDomNode())}return super.showContextView(a,b,c)}};jP=ju([jv(0,bm.x),jv(1,ae.T)],jP);class jQ{constructor(){this._neverEmitter=new a$.vl,this.onDidChangeTrust=this._neverEmitter.event}isWorkspaceTrusted(){return!0}}class jR extends ha{constructor(){super()}}class jS extends gu{constructor(){super(new cv.Cr)}}let jT=class extends dL{constructor(a,b,c,d,e,f){super(a,b,c,d,e,f),this.configure({blockMouse:!1})}};jT=ju([jv(0,bX.k),jv(1,bF.Ot),jv(2,aY.l),jv(3,a0.b),jv(4,bT.ez),jv(5,bU.fN)],jT);class jU{async playSignal(a,b){}}class jV{constructor(){this.onDidChangeDefaultAccount=a$.Jh.None}async getDefaultAccount(){return null}}(0,aQ.v)(gI.d,ja,0),(0,aQ.v)(cv.rr,jS,0),(0,aQ.v)(aB.pG,jH,0),(0,aQ.v)(hk.U,jI,0),(0,aQ.v)(hk.J,jJ,0),(0,aQ.v)(gJ.VR,jL,0),(0,aQ.v)(eb,jO,0),(0,aQ.v)(bX.k,jK,0),(0,aQ.v)(bE,jB,0),(0,aQ.v)(dR.k,jA,0),(0,aQ.v)(bF.Ot,jC,0),(0,aQ.v)(gx,gB,0),(0,aQ.v)(al.L,jR,0),(0,aQ.v)(hv,js,0),(0,aQ.v)(ap.S,hq,0),(0,aQ.v)(hc.A,hg,0),(0,aQ.v)(bU.fN,dn,0),(0,aQ.v)(gD.G5,jz,0),(0,aQ.v)(gD.N8,jy,0),(0,aQ.v)(bW.CS,bW.pc,0),(0,aQ.v)(gL.nu,jN,0),(0,aQ.v)(gK,jQ,0),(0,aQ.v)(hs.b,jx,0),(0,aQ.v)(bd.j,cT,0),(0,aQ.v)(fD,fE,0),(0,aQ.v)(c0.d,jD,0),(0,aQ.v)(a0.b,jE,0),(0,aQ.v)(bV.GK,i3,0),(0,aQ.v)(aY.l,jP,0),(0,aQ.v)(gC.Cr,gR,0),(0,aQ.v)(c_.h,c$,0),(0,aQ.v)(aY.Z,jT,0),(0,aQ.v)(bT.ez,cV.$,0),(0,aQ.v)(cU.Nt,jU,0),(0,aQ.v)(ht.t,jt,0),(0,aQ.v)(cv.xd,cv.DA,0),(0,aQ.v)(dO,dP,0),(0,aQ.v)(dQ,jV,0),(0,aQ.v)(gS,gT,0),(0,aQ.v)(gE.u,gH,0),function(a){let b=new dV.a;for(let[a,c]of(0,aQ.N)())b.set(a,c);let c=new dX(b,!0);b.set(aZ._Y,c),a.get=function(a){d||f({});let e=b.get(a);if(!e)throw Error("Missing service "+a);return e instanceof dS.d?c.invokeFunction(b=>b.get(a)):e};let d=!1,e=new a$.vl;function f(a){if(d)return c;for(let[a,c]of(d=!0,(0,aQ.N)()))b.get(a)||b.set(a,c);for(let c in a)if(a.hasOwnProperty(c)){let d=(0,aZ.u1)(c);b.get(d)instanceof dS.d&&b.set(d,a[c])}for(let a of g_.slice(0))try{c.createInstance(a)}catch(a){(0,bB.dz)(a)}return e.fire(),c}a.initialize=f,a.withServices=function(a){if(d)return a();let b=new _.Cm,c=b.add(e.event(()=>{c.dispose(),b.add(a())}));return b}}(W||(W={}));var jW=c(16202),jX=c(79116),jY=c(28524),jZ=c(18663),j$=c(28952),j_=c(24453);c(49852);var j0=function(a,b){return function(c,d){b(c,d,a)}};let j1=class{static{X=this}static{this._ttpTokenizer=(0,ar.H)("tokenizeToString",{createHTML:a=>a})}constructor(a,b){this._configurationService=a,this._languageService=b}async renderCodeBlock(a,b,c){let d,e=(0,j_.z9)(c.context)?c.context:void 0;a?d=this._languageService.getLanguageIdByLanguageName(a):e&&(d=e.getModel()?.getLanguageId()),d||(d=am.vH);let f=await (0,jZ.Yj)(this._languageService,b,d),g=X._ttpTokenizer?X._ttpTokenizer.createHTML(f)??f:f,h=document.createElement("span");h.innerHTML=g;let i=h.querySelector(".monaco-tokenized-source");return(0,a_.sb)(i)?((0,j$.M)(i,this.getFontInfo(e)),h):document.createElement("span")}getFontInfo(a){return a?a.getOption(59):(0,jY.h)({fontFamily:this._configurationService.getValue("editor").fontFamily},1)}};j1=X=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([j0(0,aB.pG),j0(1,al.L)],j1);var j2=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},j3=function(a,b){return function(c,d){b(c,d,a)}};let j4=0,j5=!1,j6=class extends aO.x{constructor(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){const p={...b};p.ariaLabel=p.ariaLabel||hu.vp.editorViewAccessibleLabel,super(a,p,{},c,d,e,f,i,j,k,l,m,o),h instanceof jE?this._standaloneKeybindingService=h:this._standaloneKeybindingService=null,function(a){if(!a){if(j5)return;j5=!0}(0,aN.vr)(a||$.G.document.body)}(p.ariaContainerElement),(0,eh.MW)((a,b)=>c.createInstance(aX.fO,a,{instantHover:b},{})),(0,eg.e)(g),n.setDefaultCodeBlockRenderer(c.createInstance(j1))}addCommand(a,b,c){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;let d="DYNAMIC_"+ ++j4,e=bU.M$.deserialize(c);return this._standaloneKeybindingService.addDynamicKeybinding(d,a,b,e),d}createContextKey(a,b){return this._contextKeyService.createKey(a,b)}addAction(a){if("string"!=typeof a.id||"string"!=typeof a.label||"function"!=typeof a.run)throw Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),_.jG.None;let b=a.id,c=a.label,d=bU.M$.and(bU.M$.equals("editorId",this.getId()),bU.M$.deserialize(a.precondition)),e=a.keybindings,f=bU.M$.and(d,bU.M$.deserialize(a.keybindingContext)),g=a.contextMenuGroupId||null,h=a.contextMenuOrder||0,i=(b,...c)=>Promise.resolve(a.run(this,...c)),j=new _.Cm,k=this.getId()+":"+b;if(j.add(c0.w.registerCommand(k,i)),g&&j.add(bT.ZG.appendMenuItem(bT.D8.EditorContext,{command:{id:k,title:c},when:d,group:g,order:h})),Array.isArray(e))for(let a of e)j.add(this._standaloneKeybindingService.addDynamicKeybinding(k,a,i,f));let l=new aP.f(k,c,c,void 0,d,(...b)=>Promise.resolve(a.run(this,...b)),this._contextKeyService);return this._actions.set(b,l),j.add((0,_.s)(()=>{this._actions.delete(b)})),j}_triggerCommand(a,b){if(this._codeEditorService instanceof cK)try{this._codeEditorService.setActiveCodeEditor(this),super._triggerCommand(a,b)}finally{this._codeEditorService.setActiveCodeEditor(null)}else super._triggerCommand(a,b)}};j6=j2([j3(2,aZ._Y),j3(3,ae.T),j3(4,c0.d),j3(5,bU.fN),j3(6,aX.TN),j3(7,a0.b),j3(8,aR.Gy),j3(9,bF.Ot),j3(10,bd.j),j3(11,jW.JZ),j3(12,ct.u),j3(13,ba.TN),j3(14,gE.u)],j6);let j7=class extends j6{constructor(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){let s;const t={...b};jM(k,t,!1);const u=i.registerEditorContainer(a);"string"==typeof t.theme&&i.setTheme(t.theme),void 0!==t.autoDetectHighContrast&&i.setAutoDetectHighContrast(!!t.autoDetectHighContrast);const v=t.model;if(delete t.model,super(a,t,c,d,e,f,g,h,i,j,l,o,p,q,r),this._configurationService=k,this._standaloneThemeService=i,this._register(u),void 0===v){const a=n.getLanguageIdByMimeType(t.language)||t.language||am.vH;s=j9(m,n,t.value||"",a,void 0),this._ownsModel=!0}else s=v,this._ownsModel=!1;if(this._attachModel(s),s){const a={oldModelUrl:null,newModelUrl:s.uri};this._onDidChangeModel.fire(a)}}updateOptions(a){jM(this._configurationService,a,!1),"string"==typeof a.theme&&this._standaloneThemeService.setTheme(a.theme),void 0!==a.autoDetectHighContrast&&this._standaloneThemeService.setAutoDetectHighContrast(!!a.autoDetectHighContrast),super.updateOptions(a)}_postDetachModelCleanup(a){super._postDetachModelCleanup(a),a&&this._ownsModel&&(a.dispose(),this._ownsModel=!1)}};j7=j2([j3(2,aZ._Y),j3(3,ae.T),j3(4,c0.d),j3(5,bU.fN),j3(6,aX.TN),j3(7,a0.b),j3(8,hv),j3(9,bF.Ot),j3(10,aB.pG),j3(11,bd.j),j3(12,ap.S),j3(13,al.L),j3(14,jW.JZ),j3(15,ct.u),j3(16,ba.TN),j3(17,gE.u)],j7);let j8=class extends jX.T{constructor(a,b,c,d,e,f,g,h,i,j,k,l){const m={...b};jM(h,m,!0);const n=f.registerEditorContainer(a);"string"==typeof m.theme&&f.setTheme(m.theme),void 0!==m.autoDetectHighContrast&&f.setAutoDetectHighContrast(!!m.autoDetectHighContrast),super(a,m,{},d,c,e,l,j),this._configurationService=h,this._standaloneThemeService=f,this._register(n)}updateOptions(a){jM(this._configurationService,a,!0),"string"==typeof a.theme&&this._standaloneThemeService.setTheme(a.theme),void 0!==a.autoDetectHighContrast&&this._standaloneThemeService.setAutoDetectHighContrast(!!a.autoDetectHighContrast),super.updateOptions(a)}_createInnerEditor(a,b,c){return a.createInstance(j6,b,c)}getOriginalEditor(){return super.getOriginalEditor()}getModifiedEditor(){return super.getModifiedEditor()}addCommand(a,b,c){return this.getModifiedEditor().addCommand(a,b,c)}createContextKey(a,b){return this.getModifiedEditor().createContextKey(a,b)}addAction(a){return this.getModifiedEditor().addAction(a)}};function j9(a,b,c,d,e){if(c=c||"",!d){let d=c.indexOf("\n"),f=c;return -1!==d&&(f=c.substring(0,d)),ka(a,c,b.createByFilepathOrFirstLine(e||null,f),e)}return ka(a,c,b.createById(d),e)}function ka(a,b,c,d){return a.createModel(b,c,d)}j8=j2([j3(2,aZ._Y),j3(3,bU.fN),j3(4,ae.T),j3(5,hv),j3(6,bF.Ot),j3(7,aB.pG),j3(8,aY.Z),j3(9,gD.N8),j3(10,c_.h),j3(11,cU.Nt)],j8);var kb=c(52132);(0,aS.x1)("multiDiffEditor.headerBackground",{dark:"#262626",light:"tab.inactiveBackground",hcDark:"tab.inactiveBackground",hcLight:"tab.inactiveBackground"},(0,a3.kg)(158,"The background color of the diff editor's header")),(0,aS.x1)("multiDiffEditor.background",aU.Yt,(0,a3.kg)(159,"The background color of the multi file diff editor")),(0,aS.x1)("multiDiffEditor.border",{dark:"sideBarSectionHeader.border",light:"#cccccc",hcDark:"sideBarSectionHeader.border",hcLight:"#cccccc"},(0,a3.kg)(160,"The border color of the multi file diff editor"));var kc=c(89676),kd=c(91291),ke=c(40002),kf=c(14960),kg=function(a,b){return function(c,d){b(c,d,a)}};class kh{constructor(a,b){this.viewModel=a,this.deltaScrollVertical=b}getId(){return this.viewModel}}let ki=class extends _.jG{constructor(a,b,c,d,e){super(),this._container=a,this._overflowWidgetsDomNode=b,this._workbenchUIElementFactory=c,this._instantiationService=d,this._viewModel=(0,gG.FY)(this,void 0),this._collapsed=(0,kf.un)(this,a=>this._viewModel.read(a)?.collapsed.read(a)),this._editorContentHeight=(0,gG.FY)(this,500),this.contentHeight=(0,kf.un)(this,a=>(this._collapsed.read(a)?0:this._editorContentHeight.read(a))+this._outerEditorHeight),this._modifiedContentWidth=(0,gG.FY)(this,0),this._modifiedWidth=(0,gG.FY)(this,0),this._originalContentWidth=(0,gG.FY)(this,0),this._originalWidth=(0,gG.FY)(this,0),this.maxScroll=(0,kf.un)(this,a=>{let b=this._modifiedContentWidth.read(a)-this._modifiedWidth.read(a),c=this._originalContentWidth.read(a)-this._originalWidth.read(a);return b>c?{maxScroll:b,width:this._modifiedWidth.read(a)}:{maxScroll:c,width:this._originalWidth.read(a)}}),this._elements=(0,a_.h)("div.multiDiffEntry",[(0,a_.h)("div.header@header",[(0,a_.h)("div.header-content",[(0,a_.h)("div.collapse-button@collapseButton"),(0,a_.h)("div.file-path",[(0,a_.h)("div.title.modified.show-file-icons@primaryPath",[]),(0,a_.h)("div.status.deleted@status",["R"]),(0,a_.h)("div.title.original.show-file-icons@secondaryPath",[])]),(0,a_.h)("div.actions@actions")])]),(0,a_.h)("div.editorParent",[(0,a_.h)("div.editorContainer@editor")])]),this.editor=this._register(this._instantiationService.createInstance(jX.T,this._elements.editor,{overflowWidgetsDomNode:this._overflowWidgetsDomNode,fixedOverflowWidgets:!0},{})),this.isModifedFocused=(0,kd.U)(this.editor.getModifiedEditor()).isFocused,this.isOriginalFocused=(0,kd.U)(this.editor.getOriginalEditor()).isFocused,this.isFocused=(0,kf.un)(this,a=>this.isModifedFocused.read(a)||this.isOriginalFocused.read(a)),this._resourceLabel=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.primaryPath)):void 0,this._resourceLabel2=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.secondaryPath)):void 0,this._dataStore=this._register(new _.Cm),this._headerHeight=40,this._lastScrollTop=-1,this._isSettingScrollTop=!1;const f=this._register(new hY.$(this._elements.collapseButton,{}));this._register((0,eJ.fm)(a=>{f.element.className="",f.icon=this._collapsed.read(a)?dx.W.chevronRight:dx.W.chevronDown})),this._register(f.onDidClick(()=>{this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0)})),this._workbenchUIElementFactory.headerClickToCollapse&&(this._elements.header.tabIndex=0,this._elements.header.setAttribute("role","button"),this._register((0,a_.ko)(this._elements.header,a_.Bx.CLICK,a=>{let b=a.target;!(b instanceof Element)||b.closest(".actions")||b.closest(".collapse-button")||this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0)})),this._register((0,a_.ko)(this._elements.header,a_.Bx.KEY_DOWN,a=>{if("Enter"===a.key||" "===a.key){let b=a.target;b instanceof Element&&(b.closest(".actions")||b.closest(".collapse-button"))||(a.preventDefault(),this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0))}}))),this._register((0,eJ.fm)(a=>{let b=this._collapsed.read(a);this._elements.editor.style.display=b?"none":"block",this._workbenchUIElementFactory.headerClickToCollapse&&this._elements.header.setAttribute("aria-expanded",String(!b))})),this._register(this.editor.getModifiedEditor().onDidLayoutChange(a=>{let b=this.editor.getModifiedEditor().getLayoutInfo().contentWidth;this._modifiedWidth.set(b,void 0)})),this._register(this.editor.getOriginalEditor().onDidLayoutChange(a=>{let b=this.editor.getOriginalEditor().getLayoutInfo().contentWidth;this._originalWidth.set(b,void 0)})),this._register(this.editor.onDidContentSizeChange(a=>{(0,ik.YY)(b=>{this._editorContentHeight.set(a.contentHeight,b),this._modifiedContentWidth.set(this.editor.getModifiedEditor().getContentWidth(),b),this._originalContentWidth.set(this.editor.getOriginalEditor().getContentWidth(),b)})})),this._register(this.editor.getOriginalEditor().onDidScrollChange(a=>{if(this._isSettingScrollTop||!a.scrollTopChanged||!this._data)return;let b=a.scrollTop-this._lastScrollTop;this._data.deltaScrollVertical(b)})),this._register((0,eJ.fm)(a=>{let b=this._viewModel.read(a)?.isActive.read(a);this._elements.root.classList.toggle("active",b)})),this._container.appendChild(this._elements.root),this._outerEditorHeight=this._headerHeight,this._contextKeyService=this._register(e.createScoped(this._elements.actions));const g=this._register(this._instantiationService.createChild(new dV.a([bU.fN,this._contextKeyService])));this._register(g.createInstance(kc.m,this._elements.actions,bT.D8.MultiDiffEditorFileToolbar,{actionRunner:this._register(new ke.I(()=>this._viewModel.get()?.modifiedUri??this._viewModel.get()?.originalUri)),menuOptions:{shouldForwardArgs:!0},toolbarOptions:{primaryGroup:a=>a.startsWith("navigation")},actionViewItemProvider:(a,b)=>(0,dr.rN)(g,a,b)}))}setScrollLeft(a){this._modifiedContentWidth.get()-this._modifiedWidth.get()>this._originalContentWidth.get()-this._originalWidth.get()?this.editor.getModifiedEditor().setScrollLeft(a):this.editor.getOriginalEditor().setScrollLeft(a)}setData(a){function b(a){return{...a,scrollBeyondLastLine:!1,hideUnchangedRegions:{enabled:!0},scrollbar:{vertical:"hidden",horizontal:"hidden",handleMouseWheel:!1,useShadows:!1},renderOverviewRuler:!1,fixedOverflowWidgets:!0,overviewRulerBorder:!1}}if(this._data=a,!a)return void(0,ik.YY)(a=>{this._viewModel.set(void 0,a),this.editor.setDiffModel(null,a),this._dataStore.clear()});let c=a.viewModel.documentDiffItem;if((0,ik.YY)(d=>{this._resourceLabel?.setUri(a.viewModel.modifiedUri??a.viewModel.originalUri,{strikethrough:void 0===a.viewModel.modifiedUri});let e=!1,f=!1,g=!1,h="";a.viewModel.modifiedUri&&a.viewModel.originalUri&&a.viewModel.modifiedUri.path!==a.viewModel.originalUri.path?(h="R",e=!0):a.viewModel.modifiedUri?a.viewModel.originalUri||(h="A",g=!0):(h="D",f=!0),this._elements.status.classList.toggle("renamed",e),this._elements.status.classList.toggle("deleted",f),this._elements.status.classList.toggle("added",g),this._elements.status.innerText=h,this._resourceLabel2?.setUri(e?a.viewModel.originalUri:void 0,{strikethrough:!0}),this._dataStore.clear(),this._viewModel.set(a.viewModel,d),this.editor.setDiffModel(a.viewModel.diffEditorViewModelRef,d),this.editor.updateOptions(b(c.options??{}))}),c.onOptionsDidChange&&this._dataStore.add(c.onOptionsDidChange(()=>{this.editor.updateOptions(b(c.options??{}))})),a.viewModel.isAlive.recomputeInitiallyAndOnChange(this._dataStore,a=>{a||this.setData(void 0)}),a.viewModel.documentDiffItem.contextKeys)for(let[b,c]of Object.entries(a.viewModel.documentDiffItem.contextKeys))this._contextKeyService.createKey(b,c)}render(a,b,c,d){this._elements.root.style.visibility="visible",this._elements.root.style.top=`${a.start}px`,this._elements.root.style.height=`${a.length}px`,this._elements.root.style.width=`${b}px`,this._elements.root.style.position="absolute";let e=a.length-this._headerHeight,f=Math.max(0,Math.min(d.start-a.start,e));this._elements.header.style.transform=`translateY(${f}px)`,(0,ik.YY)(c=>{this.editor.layout({width:b-16-2,height:a.length-this._outerEditorHeight})});try{this._isSettingScrollTop=!0,this._lastScrollTop=c,this.editor.getOriginalEditor().setScrollTop(c)}finally{this._isSettingScrollTop=!1}this._elements.header.classList.toggle("shadow",f>0||c>0),this._elements.header.classList.toggle("collapsed",f===e)}hide(){this._elements.root.style.top="-100000px",this._elements.root.style.visibility="hidden"}};ki=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([kg(3,aZ._Y),kg(4,bU.fN)],ki);var kj=c(88042),kk=c(39482),kl=c(77509),km=c(93427),kn=c(95415);class ko{constructor(a){this._create=a,this._unused=new Set,this._used=new Set,this._itemData=new Map}getUnusedObj(a){let b;if(0===this._unused.size)b=this._create(a),this._itemData.set(b,a);else{let c=[...this._unused.values()];b=c.find(b=>this._itemData.get(b).getId()===a.getId())??c[0],this._unused.delete(b),this._itemData.set(b,a),b.setData(a)}return this._used.add(b),{object:b,dispose:()=>{this._used.delete(b),this._unused.size>5?b.dispose():this._unused.add(b)}}}dispose(){for(let a of this._used)a.dispose();for(let a of this._unused)a.dispose();this._used.clear(),this._unused.clear()}}c(96837);var kp=function(a,b){return function(c,d){b(c,d,a)}};let kq=class extends _.jG{constructor(a,b,c,d,e,f){super(),this._element=a,this._dimension=b,this._viewModel=c,this._workbenchUIElementFactory=d,this._parentContextKeyService=e,this._parentInstantiationService=f,this._scrollableElements=(0,a_.h)("div.scrollContent",[(0,a_.h)("div@content",{style:{overflow:"hidden"}}),(0,a_.h)("div.monaco-editor@overflowWidgetsDomNode",{})]),this._scrollable=this._register(new em.yE({forceIntegerValues:!1,scheduleAtNextAnimationFrame:a=>(0,a_.PG)((0,a_.zk)(this._element),a),smoothScrollDuration:100})),this._scrollableElement=this._register(new a2.oO(this._scrollableElements.root,{vertical:1,horizontal:1,useShadows:!1},this._scrollable)),this._elements=(0,a_.h)("div.monaco-component.multiDiffEditor",{},[(0,a_.h)("div",{},[this._scrollableElement.getDomNode()]),(0,a_.h)("div.placeholder@placeholder",{},[(0,a_.h)("div")])]),this._sizeObserver=this._register(new kn.pN(this._element,void 0)),this._objectPool=this._register(new ko(a=>{let b=this._instantiationService.createInstance(ki,this._scrollableElements.content,this._scrollableElements.overflowWidgetsDomNode,this._workbenchUIElementFactory);return b.setData(a),b})),this.scrollTop=(0,gF.y0)(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollTop),this.scrollLeft=(0,gF.y0)(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollLeft),this._viewItemsInfo=(0,kf.un)(this,a=>{let b=this._viewModel.read(a);if(!b)return{items:[],getItem:a=>{throw new bB.D7}};let c=b.items.read(a),d=new Map;return{items:c.map(b=>{let c=a.store.add(new kr(b,this._objectPool,this.scrollLeft,a=>{this._scrollableElement.setScrollPosition({scrollTop:this._scrollableElement.getScrollPosition().scrollTop+a})})),e=this._lastDocStates?.[c.getKey()];return e&&(0,ik.Rn)(a=>{c.setViewState(e,a)}),d.set(b,c),c}),getItem:a=>d.get(a)}}),this._viewItems=this._viewItemsInfo.map(this,a=>a.items),this._spaceBetweenPx=0,this._totalHeight=this._viewItems.map(this,(a,b)=>a.reduce((a,c)=>a+c.contentHeight.read(b)+this._spaceBetweenPx,0)),this.activeControl=(0,kf.un)(this,a=>{let b=this._viewModel.read(a)?.activeDiffItem.read(a);if(!b)return;let c=this._viewItemsInfo.read(a).getItem(b);return c.template.read(a)?.editor}),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._element)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new dV.a([bU.fN,this._contextKeyService]))),this._contextKeyService.createKey(km.R.inMultiDiffEditor.key,!0),this._lastDocStates={},this._register((0,eJ.yC)((a,b)=>{let c=this._viewModel.read(a);if(c&&c.contextKeys)for(let[a,d]of Object.entries(c.contextKeys)){let c=this._contextKeyService.createKey(a,void 0);c.set(d),b.add((0,_.s)(()=>c.reset()))}}));const g=this._parentContextKeyService.createKey(km.R.multiDiffEditorAllCollapsed.key,!1);this._register((0,eJ.fm)(a=>{let b=this._viewModel.read(a);if(b){let c=b.items.read(a).every(b=>b.collapsed.read(a));g.set(c)}})),this._register((0,eJ.fm)(a=>{let b=this._dimension.read(a);this._sizeObserver.observe(b)}));const h=(0,kf.un)(a=>{if(this._viewItems.read(a).length>0)return;let b=this._viewModel.read(a);return!b||b.isLoading.read(a)?(0,a3.kg)(161,"Loading..."):(0,a3.kg)(162,"No Changed Files")});this._register((0,eJ.fm)(a=>{let b=h.read(a);this._elements.placeholder.innerText=b??"",this._elements.placeholder.classList.toggle("visible",!!b)})),this._scrollableElements.content.style.position="relative",this._register((0,eJ.fm)(a=>{let b=this._sizeObserver.height.read(a);this._scrollableElements.root.style.height=`${b}px`;let c=this._totalHeight.read(a);this._scrollableElements.content.style.height=`${c}px`;let d=this._sizeObserver.width.read(a),e=d,f=this._viewItems.read(a),g=(0,kj.Cn)(f,(0,cL.VE)(b=>b.maxScroll.read(a).maxScroll,cL.U9));g&&(e=d+g.maxScroll.read(a).maxScroll),this._scrollableElement.setScrollDimensions({width:d,height:b,scrollHeight:c,scrollWidth:e})})),a.replaceChildren(this._elements.root),this._register((0,_.s)(()=>{a.replaceChildren()})),this._register((0,eJ.fm)(a=>{let b=this._viewModel.read(a);if(b&&!b.isLoading.read(a)){if(0===b.items.read(a).length||b.activeDiffItem.read(a))return;this.goToNextChange()}})),this._register(this._register((0,eJ.fm)(a=>{(0,ik.YY)(b=>{this.render(a)})})))}reveal(a,b){var c,d;let e,f,g=this._viewItems.get(),h=g.findIndex(b=>b.viewModel.originalUri?.toString()===a.original?.toString()&&b.viewModel.modifiedUri?.toString()===a.modified?.toString());if(-1===h)throw new bB.D7("Resource not found in diff editor");let i=g[h];this._viewModel.get().activeDiffItem.setCache(i.viewModel,void 0);let j=0;for(let a=0;a<h;a++)j+=g[a].contentHeight.get()+this._spaceBetweenPx;this._scrollableElement.setScrollPosition({scrollTop:j});let k=i.template.get()?.editor,l="original"in a?k?.getOriginalEditor():k?.getModifiedEditor();l&&b?.range&&(l.revealRangeInCenter(b.range),c=l,d=b.range,e=c.getModel(),f=c.createDecorationsCollection([{range:d,options:{description:"symbol-navigate-action-highlight",className:"symbolHighlight"}}]),setTimeout(()=>{c.getModel()===e&&f.clear()},350))}goToNextChange(){this._navigateToChange("next")}_navigateToChange(a){let b=this._viewItems.get();if(0===b.length)return;let c=this._viewModel.get()?.activeDiffItem.get(),d=c?b.findIndex(a=>a.viewModel===c):-1;if(-1===d)return void this._goToFile(0,"first");let e=b[d];e.viewModel.collapsed.get()&&e.viewModel.collapsed.set(!1,void 0);let f=e.template.get()?.editor;if(f?.getDiffComputationResult()?.changes2?.length){let b=f.getModifiedEditor().getPosition()?.lineNumber||1,c=f.getDiffComputationResult().changes2;if("next"===a?c.some(a=>a.modified.startLineNumber>b):c.some(a=>a.modified.endLineNumberExclusive<=b))return void f.goToDiff(a)}let g=(d+("next"===a?1:-1)+b.length)%b.length;this._goToFile(g,"next"===a?"first":"last")}_goToFile(a,b){let c=this._viewItems.get()[a];c.viewModel.collapsed.get()&&c.viewModel.collapsed.set(!1,void 0),this.reveal({original:c.viewModel.originalUri,modified:c.viewModel.modifiedUri});let d=c.template.get()?.editor;if(d?.getDiffComputationResult()?.changes2?.length)if("first"===b)d.revealFirstDiff();else{let a=d.getDiffComputationResult().changes2.at(-1),b=d.getModifiedEditor();b.setPosition({lineNumber:a.modified.startLineNumber,column:1}),b.revealLineInCenter(a.modified.startLineNumber)}d?.focus()}render(a){let b=this.scrollTop.read(a),c=0,d=0,e=0,f=this._sizeObserver.height.read(a),g=kk.L.ofStartAndLength(b,f),h=this._sizeObserver.width.read(a);for(let i of this._viewItems.read(a)){let j=i.contentHeight.read(a),k=Math.min(j,f),l=kk.L.ofStartAndLength(d,k),m=kk.L.ofStartAndLength(e,j);if(m.isBefore(g))c-=j-k,i.hide();else if(m.isAfter(g))i.hide();else{let a=Math.max(0,Math.min(g.start-m.start,j-k));c-=a;let d=kk.L.ofStartAndLength(b+c,f);i.render(l,a,h,d)}d+=k+this._spaceBetweenPx,e+=j+this._spaceBetweenPx}this._scrollableElements.content.style.transform=`translateY(${-(b+c)}px)`}};kq=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([kp(4,bU.fN),kp(5,aZ._Y)],kq);class kr extends _.jG{constructor(a,b,c,d){super(),this.viewModel=a,this._objectPool=b,this._scrollLeft=c,this._deltaScrollVertical=d,this._templateRef=this._register((0,gG.X2)(this,void 0)),this.contentHeight=(0,kf.un)(this,a=>this._templateRef.read(a)?.object.contentHeight?.read(a)??this.viewModel.lastTemplateData.read(a).contentHeight),this.maxScroll=(0,kf.un)(this,a=>this._templateRef.read(a)?.object.maxScroll.read(a)??{maxScroll:0,scrollWidth:0}),this.template=(0,kf.un)(this,a=>this._templateRef.read(a)?.object),this._isHidden=(0,gG.FY)(this,!1),this._isFocused=(0,kf.un)(this,a=>this.template.read(a)?.isFocused.read(a)??!1),this.viewModel.setIsFocused(this._isFocused,void 0),this._register((0,eJ.fm)(a=>{let b=this._scrollLeft.read(a);this._templateRef.read(a)?.object.setScrollLeft(b)})),this._register((0,eJ.fm)(a=>{let b=this._templateRef.read(a);b&&this._isHidden.read(a)&&(b.object.isFocused.read(a)||this._clear())}))}dispose(){this._clear(),super.dispose()}toString(){return`VirtualViewItem(${this.viewModel.documentDiffItem.modified?.uri.toString()})`}getKey(){return this.viewModel.getKey()}setViewState(a,b){this.viewModel.collapsed.set(a.collapsed,b),this._updateTemplateData(b);let c=this.viewModel.lastTemplateData.get(),d=a.selections?.map(kl.L.liftSelection);this.viewModel.lastTemplateData.set({...c,selections:d},b);let e=this._templateRef.get();e&&d&&e.object.editor.setSelections(d)}_updateTemplateData(a){let b=this._templateRef.get();b&&this.viewModel.lastTemplateData.set({contentHeight:b.object.contentHeight.get(),selections:b.object.editor.getSelections()??void 0},a)}_clear(){let a=this._templateRef.get();a&&(0,ik.Rn)(b=>{this._updateTemplateData(b),a.object.hide(),this._templateRef.set(void 0,b)})}hide(){this._isHidden.set(!0,void 0)}render(a,b,c,d){this._isHidden.set(!1,void 0);let e=this._templateRef.get();if(!e){e=this._objectPool.getUnusedObj(new kh(this.viewModel,this._deltaScrollVertical)),this._templateRef.set(e,void 0);let a=this.viewModel.lastTemplateData.get().selections;a&&e.object.editor.setSelections(a)}e.object.render(a,c,b,d)}}var ks=c(34547);let kt=class extends _.jG{constructor(a,b,c){super(),this._element=a,this._workbenchUIElementFactory=b,this._instantiationService=c,this._dimension=(0,gG.FY)(this,void 0),this._viewModel=(0,gG.FY)(this,void 0),this._widgetImpl=(0,kf.un)(this,a=>a.store.add(this._instantiationService.createInstance((0,kb.b)(kq),this._element,this._dimension,this._viewModel,this._workbenchUIElementFactory))),this._register((0,ks.OI)(this._widgetImpl))}};function ku(a){let b=W.get(a0.b);return b instanceof jE?b.addDynamicKeybindings(a.map(a=>({keybinding:a.keybinding,command:a.command,commandArgs:a.commandArgs,when:bU.M$.deserialize(a.when)}))):(console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),_.jG.None)}kt=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(z=aZ._Y,function(a,b){z(a,b,2)})],kt);function kv(a,b){return"boolean"==typeof a?a:b}function kw(a,b){return"string"==typeof a?a:b}function kx(a,b=!1){b&&(a=a.map(function(a){return a.toLowerCase()}));let c=function(a){let b={};for(let c of a)b[c]=!0;return b}(a);return b?function(a){return void 0!==c[a.toLowerCase()]&&c.hasOwnProperty(a.toLowerCase())}:function(a){return void 0!==c[a]&&c.hasOwnProperty(a)}}function ky(a,b,c){let d;b=b.replace(/@@/g,"\x01");let e=0;do d=!1,b=b.replace(/@(\w+)/g,function(c,e){d=!0;let f="";if("string"==typeof a[e])f=a[e];else if(a[e]&&a[e]instanceof RegExp)f=a[e].source;else if(void 0===a[e])throw ay(a,"language definition does not contain attribute '"+e+"', used at: "+b);else throw ay(a,"attribute reference '"+e+"' must be a string, used at: "+b);return f?"(?:"+f+")":""}),e++;while(d&&e<5);b=b.replace(/\x01/g,"@");let f=(a.ignoreCase?"i":"")+(a.unicode?"u":"");if(c&&b.match(/\$[sS](\d\d?)/g)){let c=null,d=null;return e=>{let g;return d&&c===e?d:(c=e,d=new RegExp((g=null,b.replace(/\$[sS](\d\d?)/g,function(b,c){return(null===g&&(g=e.split(".")).unshift(e),c&&c<g.length)?(0,aa.bm)(aw(a,g[c])):""})),f))}}return new RegExp(b,f)}class kz{constructor(a){this.regex=RegExp(""),this.action={token:""},this.matchOnlyAtLineStart=!1,this.name="",this.name=a}setRegex(a,b){let c;if("string"==typeof b)c=b;else if(b instanceof RegExp)c=b.source;else throw ay(a,"rules must start with a match string or regular expression: "+this.name);this.matchOnlyAtLineStart=c.length>0&&"^"===c[0],this.name=this.name+": "+c,this.regex=ky(a,"^(?:"+(this.matchOnlyAtLineStart?c.substr(1):c)+")",!0)}setAction(a,b){this.action=function a(b,c,d){if(!d)return{token:""};if("string"==typeof d)return d;if(d.token||""===d.token)if("string"!=typeof d.token)throw ay(b,"a 'token' attribute must be of type string, in rule: "+c);else{let a={token:d.token};if(d.token.indexOf("$")>=0&&(a.tokenSubst=!0),"string"==typeof d.bracket)if("@open"===d.bracket)a.bracket=1;else if("@close"===d.bracket)a.bracket=-1;else throw ay(b,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+c);if(d.next)if("string"!=typeof d.next)throw ay(b,"the next state must be a string value in rule: "+c);else{let e=d.next;if(!/^(@pop|@push|@popall)$/.test(e)&&("@"===e[0]&&(e=e.substr(1)),0>e.indexOf("$")&&!function(a,b){let c=b;for(;c&&c.length>0;){if(a.stateNames[c])return!0;let b=c.lastIndexOf(".");c=b<0?null:c.substr(0,b)}return!1}(b,az(b,e,"",[],""))))throw ay(b,"the next state '"+d.next+"' is not defined in rule: "+c);a.next=e}return"number"==typeof d.goBack&&(a.goBack=d.goBack),"string"==typeof d.switchTo&&(a.switchTo=d.switchTo),"string"==typeof d.log&&(a.log=d.log),"string"==typeof d.nextEmbedded&&(a.nextEmbedded=d.nextEmbedded,b.usesEmbedded=!0),a}if(Array.isArray(d)){let e=[];for(let f=0,g=d.length;f<g;f++)e[f]=a(b,c,d[f]);return{group:e}}if(d.cases){let e=[],f=!1;for(let g in d.cases)if(d.cases.hasOwnProperty(g)){let h=a(b,c,d.cases[g]);"@default"===g||"@"===g||""===g?e.push({test:void 0,value:h,name:g}):"@eos"===g?e.push({test:function(a,b,c,d){return d},value:h,name:g}):e.push(function(a,b,c,d){let e,f=-1,g=c,h=c.match(/^\$(([sS]?)(\d\d?)|#)(.*)$/);h&&(h[3]&&(f=parseInt(h[3]),h[2]&&(f+=100)),g=h[4]);let i="~",j=g;if(g&&0!==g.length?/^\w*$/.test(j)?i="==":(h=g.match(/^(@|!@|~|!~|==|!=)(.*)$/))&&(i=h[1],j=h[2]):(i="!=",j=""),("~"===i||"!~"===i)&&/^(\w|\|)*$/.test(j)){let b=kx(j.split("|"),a.ignoreCase);e=function(a){return"~"===i?b(a):!b(a)}}else if("@"===i||"!@"===i){let c=a[j];if(!c)throw ay(a,"the @ match target '"+j+"' is not defined, in rule: "+b);if(!function(a,b){if(!b||!Array.isArray(b))return!1;for(let c of b)if(!a(c))return!1;return!0}(function(a){return"string"==typeof a},c))throw ay(a,"the @ match target '"+j+"' must be an array of strings, in rule: "+b);let d=kx(c,a.ignoreCase);e=function(a){return"@"===i?d(a):!d(a)}}else if("~"===i||"!~"===i)if(0>j.indexOf("$")){let b=ky(a,"^"+j+"$",!1);e=function(a){return"~"===i?b.test(a):!b.test(a)}}else e=function(b,c,d,e){return ky(a,"^"+az(a,j,c,d,e)+"$",!1).test(b)};else if(0>j.indexOf("$")){let b=aw(a,j);e=function(a){return"=="===i?a===b:a!==b}}else{let b=aw(a,j);e=function(c,d,e,f,g){let h=az(a,b,d,e,f);return"=="===i?c===h:c!==h}}return -1===f?{name:c,value:d,test:function(a,b,c,d){return e(a,a,b,c,d)}}:{name:c,value:d,test:function(a,b,c,d){let g=function(a,b,c,d){if(d<0)return a;if(d<b.length)return b[d];if(d>=100){d-=100;let a=c.split(".");if(a.unshift(c),d<a.length)return a[d]}return null}(a,b,c,f);return e(g||"",a,b,c,d)}}}(b,c,g,h)),f||(f=!(0,bf.Kg)(h)&&(h.hasEmbeddedEndInCases||["@pop","@popall"].includes(h.nextEmbedded||"")))}let g=b.defaultToken;return{hasEmbeddedEndInCases:f,test:function(a,b,c,d){for(let f of e)if(!f.test||f.test(a,b,c,d))return f.value;return g}}}else throw ay(b,"an action must be a string, an object with a 'token' or 'cases' attribute, or an array of actions; in rule: "+c)}(a,this.name,b)}resolveRegex(a){return this.regex instanceof RegExp?this.regex:this.regex(a)}}function kA(a,b){if(!b||"object"!=typeof b)throw Error("Monarch: expecting a language definition object");let c={languageId:a,includeLF:kv(b.includeLF,!1),noThrow:!1,maxStack:100,start:"string"==typeof b.start?b.start:null,ignoreCase:kv(b.ignoreCase,!1),unicode:kv(b.unicode,!1),tokenPostfix:kw(b.tokenPostfix,"."+a),defaultToken:kw(b.defaultToken,"source"),usesEmbedded:!1,stateNames:{},tokenizer:{},brackets:[]};if(b.languageId=a,b.includeLF=c.includeLF,b.ignoreCase=c.ignoreCase,b.unicode=c.unicode,b.noThrow=c.noThrow,b.usesEmbedded=c.usesEmbedded,b.stateNames=b.tokenizer,b.defaultToken=c.defaultToken,!b.tokenizer||"object"!=typeof b.tokenizer)throw ay(c,"a language definition must define the 'tokenizer' attribute as an object");for(let a in c.tokenizer=[],b.tokenizer)if(b.tokenizer.hasOwnProperty(a)){c.start||(c.start=a);let d=b.tokenizer[a];c.tokenizer[a]=[],function a(d,e,f){for(let g of f){let f=g.include;if(f){if("string"!=typeof f)throw ay(c,"an 'include' attribute must be a string at: "+d);if("@"===f[0]&&(f=f.substr(1)),!b.tokenizer[f])throw ay(c,"include target '"+f+"' is not defined at: "+d);a(d+"."+f,e,b.tokenizer[f])}else{let a=new kz(d);if(Array.isArray(g)&&g.length>=1&&g.length<=3)if(a.setRegex(b,g[0]),g.length>=3)if("string"==typeof g[1])a.setAction(b,{token:g[1],next:g[2]});else if("object"==typeof g[1]){let c=g[1];c.next=g[2],a.setAction(b,c)}else throw ay(c,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+d);else a.setAction(b,g[1]);else{if(!g.regex)throw ay(c,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+d);g.name&&"string"==typeof g.name&&(a.name=g.name),g.matchOnlyAtStart&&(a.matchOnlyAtLineStart=kv(g.matchOnlyAtLineStart,!1)),a.setRegex(b,g.regex),a.setAction(b,g.action)}e.push(a)}}}("tokenizer."+a,c.tokenizer[a],d)}if(c.usesEmbedded=b.usesEmbedded,b.brackets){if(!Array.isArray(b.brackets))throw ay(c,"the 'brackets' attribute must be defined as an array")}else b.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];let d=[];for(let a of b.brackets){let b=a;if(b&&Array.isArray(b)&&3===b.length&&(b={token:b[2],open:b[0],close:b[1]}),b.open===b.close)throw ay(c,"open and close brackets in a 'brackets' attribute must be different: "+b.open+"\n hint: use the 'bracket' attribute if matching on equal brackets is required.");if("string"==typeof b.open&&"string"==typeof b.token&&"string"==typeof b.close)d.push({token:b.token+c.tokenPostfix,open:aw(c,b.open),close:aw(c,b.close)});else throw ay(c,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return c.brackets=d,c.noThrow=!0,c}var kB=c(28574);class kC{constructor(a,b){this._languageId=a,this._actual=b}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(a,b,c){if("function"==typeof this._actual.tokenize)return kD.adaptTokenize(this._languageId,this._actual,a,c);throw Error("Not supported!")}tokenizeEncoded(a,b,c){let d=this._actual.tokenizeEncoded(a,c);return new ak.rY(d.tokens,[],d.endState)}}class kD{constructor(a,b,c,d){this._languageId=a,this._actual=b,this._languageService=c,this._standaloneThemeService=d}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(a,b){let c=[],d=0;for(let e=0,f=a.length;e<f;e++){let f=a[e],g=f.startIndex;0===e?g=0:g<d&&(g=d),c[e]=new ak.ou(g,f.scopes,b),d=g}return c}static adaptTokenize(a,b,c,d){let e,f=b.tokenize(c,d),g=kD._toClassicTokens(f.tokens,a);return e=f.endState.equals(d)?d:f.endState,new ak.$M(g,e)}tokenize(a,b,c){return kD.adaptTokenize(this._languageId,this._actual,a,c)}_toBinaryTokens(a,b){let c=a.encodeLanguageId(this._languageId),d=this._standaloneThemeService.getColorTheme().tokenTheme,e=[],f=0,g=0;for(let a=0,h=b.length;a<h;a++){let h=b[a],i=1024|d.match(c,h.scopes);if(f>0&&e[f-1]===i)continue;let j=h.startIndex;0===a?j=0:j<g&&(j=g),e[f++]=j,e[f++]=i,g=j}let h=new Uint32Array(f);for(let a=0;a<f;a++)h[a]=e[a];return h}tokenizeEncoded(a,b,c){let d,e=this._actual.tokenize(a,c),f=this._toBinaryTokens(this._languageService.languageIdCodec,e.tokens);return d=e.endState.equals(c)?c:e.endState,new ak.rY(f,[],d)}}function kE(a){return a&&"function"==typeof a.then}function kF(a,b){return"tokenizeEncoded"in b?new kC(a,b):new kD(a,b,W.get(al.L),W.get(hv))}function kG(a,b){let c=new ak.v_(async()=>{let c=await Promise.resolve(b.create());return c?"function"==typeof c.getInitialState?kF(a,c):new aJ(W.get(al.L),W.get(hv),a,kA(a,c),W.get(aB.pG)):null});return ak.dG.registerFactory(a,c)}c(29462);var kH=c(2245);class kI{constructor(a){this.value=a,this._lower=a.toLowerCase()}static toKey(a){return"string"==typeof a?a.toLowerCase():a._lower}}class kJ{constructor(a){if(this._set=new Set,a)for(const b of a)this.add(b)}add(a){this._set.add(kI.toKey(a))}has(a){return this._set.has(kI.toKey(a))}}class kK{static{this._selectors=new cH.w}static setFormatterSelector(a){return{dispose:kK._selectors.unshift(a)}}static async select(a,b,c,d){if(0===a.length)return;let e=db.f.first(kK._selectors);if(e)return await e(a,b,c,d)}}async function kL(a,b,c,d,e,f){for(let g of b.documentRangeFormattingEditProvider.ordered(c)){let b=await Promise.resolve(g.provideDocumentRangeFormattingEdits(c,d,e,f)).catch(bB.M_);if((0,cL.EI)(b))return await a.computeMoreMinimalEdits(c.uri,b)}}async function kM(a,b,c,d,e){for(let f of function(a,b,c){let d=[],e=new kJ;for(let b of a.ordered(c))d.push(b),b.extensionId&&e.add(b.extensionId);for(let a of b.ordered(c)){if(a.extensionId){if(e.has(a.extensionId))continue;e.add(a.extensionId)}d.push({displayName:a.displayName,extensionId:a.extensionId,provideDocumentFormattingEdits:(b,c,d)=>a.provideDocumentRangeFormattingEdits(b,b.getFullModelRange(),c,d)})}return d}(b.documentFormattingEditProvider,b.documentRangeFormattingEditProvider,c)){let b=await Promise.resolve(f.provideDocumentFormattingEdits(c,d,e)).catch(bB.M_);if((0,cL.EI)(b))return await a.computeMoreMinimalEdits(c.uri,b)}}function kN(a,b){let c;if(a&&"object"==typeof a&&"number"==typeof a.tabSize&&"boolean"==typeof a.insertSpaces)c=a;else{let a=b.object.textEditorModel.getOptions();c={tabSize:a.tabSize,insertSpaces:a.insertSpaces}}return c}c0.w.registerCommand("_executeFormatRangeProvider",async function(a,...b){let[c,d,e]=b;(0,bf.j)(ab.r.isUri(c)),(0,bf.j)(cw.Q.isIRange(d));let f=a.get(hs.b),g=a.get(kH.w),h=a.get(ct.u),i=await f.createModelReference(c);try{return kL(g,h,i.object.textEditorModel,cw.Q.lift(d),kN(e,i),bo.XO.None)}finally{i.dispose()}}),c0.w.registerCommand("_executeFormatDocumentProvider",async function(a,...b){let[c,d]=b;(0,bf.j)(ab.r.isUri(c));let e=a.get(hs.b),f=a.get(kH.w),g=a.get(ct.u),h=await e.createModelReference(c);try{return kM(f,g,h.object.textEditorModel,kN(d,h),bo.XO.None)}finally{h.dispose()}}),c0.w.registerCommand("_executeFormatOnTypeProvider",async function(a,...b){let[c,d,e,f]=b;(0,bf.j)(ab.r.isUri(c)),(0,bf.j)(g$.y.isIPosition(d)),(0,bf.j)("string"==typeof e);let g=a.get(hs.b),h=a.get(kH.w),i=a.get(ct.u),j=await g.createModelReference(c);try{var k,l,m,n;let a;return k=j.object.textEditorModel,l=g$.y.lift(d),m=kN(f,j),n=bo.XO.None,a=i.onTypeFormattingEditProvider.ordered(k),0===a.length||0>a[0].autoFormatTriggerCharacters.indexOf(e)?Promise.resolve(void 0):Promise.resolve(a[0].provideOnTypeFormattingEdits(k,l,e,m,n)).catch(bB.M_).then(a=>h.computeMoreMinimalEdits(k.uri,a))}finally{j.dispose()}}),Y.qB.wrappingIndent.defaultValue=0,Y.qB.glyphMargin.defaultValue=!1,Y.qB.autoIndent.defaultValue=3,Y.qB.overviewRulerLanes.defaultValue=2,kK.setFormatterSelector((a,b,c)=>Promise.resolve(a[0]));let kO=(0,Z.r)();kO.editor={create:function(a,b,c){return W.initialize(c||{}).createInstance(j7,a,b)},getEditors:function(){return W.get(ae.T).listCodeEditors()},getDiffEditors:function(){return W.get(ae.T).listDiffEditors()},onDidCreateEditor:function(a){return W.get(ae.T).onCodeEditorAdd(b=>{a(b)})},onDidCreateDiffEditor:function(a){return W.get(ae.T).onDiffEditorAdd(b=>{a(b)})},createDiffEditor:function(a,b,c){return W.initialize(c||{}).createInstance(j8,a,b)},addCommand:function(a){if("string"!=typeof a.id||"function"!=typeof a.run)throw Error("Invalid command descriptor, `id` and `run` are required properties!");return c0.w.registerCommand(a.id,a.run)},addEditorAction:function(a){if("string"!=typeof a.id||"string"!=typeof a.label||"function"!=typeof a.run)throw Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");let b=bU.M$.deserialize(a.precondition),c=new _.Cm;if(c.add(c0.w.registerCommand(a.id,(c,...d)=>ad.DX.runEditorCommand(c,d,b,(b,c,d)=>Promise.resolve(a.run(c,...d))))),a.contextMenuGroupId){let d={command:{id:a.id,title:a.label},when:b,group:a.contextMenuGroupId,order:a.contextMenuOrder||0};c.add(bT.ZG.appendMenuItem(bT.D8.EditorContext,d))}if(Array.isArray(a.keybindings)){let d=W.get(a0.b);if(d instanceof jE){let e=bU.M$.and(b,bU.M$.deserialize(a.keybindingContext));c.add(d.addDynamicKeybindings(a.keybindings.map(b=>({keybinding:b,command:a.id,when:e}))))}else console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService")}return c},addKeybindingRule:function(a){return ku([a])},addKeybindingRules:ku,createModel:function(a,b,c){let d=W.get(al.L),e=d.getLanguageIdByMimeType(b)||b;return j9(W.get(ap.S),d,a,e,c)},setModelLanguage:function(a,b){let c=W.get(al.L),d=c.getLanguageIdByMimeType(b)||b||am.vH;a.setLanguage(c.createById(d))},setModelMarkers:function(a,b,c){a&&W.get(gx).changeOne(b,a.uri,c)},getModelMarkers:function(a){return W.get(gx).read(a)},removeAllMarkers:function(a){W.get(gx).changeAll(a,[])},onDidChangeMarkers:function(a){return W.get(gx).onMarkerChanged(a)},getModels:function(){return W.get(ap.S).getModels()},getModel:function(a){return W.get(ap.S).getModel(a)},onDidCreateModel:function(a){return W.get(ap.S).onModelAdded(a)},onWillDisposeModel:function(a){return W.get(ap.S).onModelRemoved(a)},onDidChangeModelLanguage:function(a){return W.get(ap.S).onModelLanguageChanged(b=>{a({model:b.model,oldLanguage:b.oldLanguageId})})},createWebWorker:function(a){var b;return b=W.get(ap.S),new ag(b,W.get(gI.d),a)},colorizeElement:function(a,b){let c=W.get(al.L),d=W.get(hv);return aL.colorizeElement(d,c,a,b).then(()=>{d.registerEditorContainer(a)})},colorize:function(a,b,c){let d=W.get(al.L);return W.get(hv).registerEditorContainer($.G.document.body),aL.colorize(d,a,b,c)},colorizeModelLine:function(a,b,c=4){return W.get(hv).registerEditorContainer($.G.document.body),aL.colorizeModelLine(a,b,c)},tokenize:function(a,b){let c;ak.dG.getOrCreate(b);let d=(c=ak.dG.get(b))||{getInitialState:()=>an.r3,tokenize:(a,c,d)=>(0,an.$H)(b,d)},e=(0,aa.uz)(a),f=[],g=d.getInitialState();for(let a=0,b=e.length;a<b;a++){let b=e[a],c=d.tokenize(b,!0,g);f[a]=c.tokens,g=c.endState}return f},defineTheme:function(a,b){W.get(hv).defineTheme(a,b)},setTheme:function(a){W.get(hv).setTheme(a)},remeasureFonts:function(){ac.T.clearAllFontInfos()},registerCommand:function(a,b){return c0.w.registerCommand({id:a,handler:b})},registerLinkOpener:function(a){return W.get(gC.Cr).registerOpener({open:async b=>("string"==typeof b&&(b=ab.r.parse(b)),a.open(b))})},registerEditorOpener:function(a){return W.get(ae.T).registerCodeEditorOpenHandler(async(b,c,d)=>{let e;if(!c)return null;let f=b.options?.selection;return(f&&"number"==typeof f.endLineNumber&&"number"==typeof f.endColumn?e=f:f&&(e={lineNumber:f.startLineNumber,column:f.startColumn}),await a.openCodeEditor(c,b.resource,e))?c:null})},AccessibilitySupport:aq.Gn,ContentWidgetPositionPreference:aq.Qj,CursorChangeReason:aq.h5,DefaultEndOfLine:aq.of,EditorAutoIndentStrategy:aq.e0,EditorOption:aq.p2,EndOfLinePreference:aq.kf,EndOfLineSequence:aq.WU,MinimapPosition:aq.R3,MinimapSectionHeaderStyle:aq.VX,MouseTargetType:aq.hS,OverlayWidgetPositionPreference:aq.dE,OverviewRulerLane:aq.A5,GlyphMarginLane:aq.ZS,RenderLineNumbersType:aq.DO,RenderMinimap:aq.hW,ScrollbarVisibility:aq.XR,ScrollType:aq.ov,TextEditorCursorBlinkingStyle:aq.U7,TextEditorCursorStyle:aq.m9,TrackedRangeStickiness:aq.kK,WrappingIndent:aq.tJ,InjectedTextCursorStops:aq.VW,PositionAffinity:aq.Ic,ShowLightbulbIconMode:aq.jT,TextDirection:aq.z4,ConfigurationChangedEvent:Y.lw,BareFontInfo:ai._8,FontInfo:ai.YJ,TextModelResolvedOptions:ao.X2,FindMatch:ao.Dg,ApplyUpdateResult:Y.hZ,EditorZoom:ah.D,createMultiFileDiffEditor:function(a,b){let c=W.initialize(b||{});return new kt(a,{},c)},EditorType:aj._,EditorOptions:Y.qB},kO.languages={register:function(a){am.W6.registerLanguage(a)},getLanguages:function(){let a=[];return a.concat(am.W6.getLanguages())},onLanguage:function(a,b){return W.withServices(()=>{let c=W.get(al.L).onDidRequestRichLanguageFeatures(d=>{d===a&&(c.dispose(),b())});return c})},onLanguageEncountered:function(a,b){return W.withServices(()=>{let c=W.get(al.L).onDidRequestBasicLanguageFeatures(d=>{d===a&&(c.dispose(),b())});return c})},getEncodedLanguageId:function(a){return W.get(al.L).languageIdCodec.encodeLanguageId(a)},setLanguageConfiguration:function(a,b){if(!W.get(al.L).isRegisteredLanguageId(a))throw Error(`Cannot set configuration for unknown language ${a}`);return W.get(jW.JZ).register(a,b,100)},setColorMap:function(a){let b=W.get(hv);if(a){let c=[null];for(let b=1,d=a.length;b<d;b++)c[b]=ek.Q1.fromHex(a[b]);b.setColorMapOverride(c)}else b.setColorMapOverride(null)},registerTokensProviderFactory:kG,setTokensProvider:function(a,b){if(!W.get(al.L).isRegisteredLanguageId(a))throw Error(`Cannot set tokens provider for unknown language ${a}`);return kE(b)?kG(a,{create:()=>b}):ak.dG.register(a,kF(a,b))},setMonarchTokensProvider:function(a,b){return kE(b)?kG(a,{create:()=>b}):ak.dG.register(a,new aJ(W.get(al.L),W.get(hv),a,kA(a,b),W.get(aB.pG)))},registerReferenceProvider:function(a,b){return W.get(ct.u).referenceProvider.register(a,b)},registerRenameProvider:function(a,b){return W.get(ct.u).renameProvider.register(a,b)},registerNewSymbolNameProvider:function(a,b){return W.get(ct.u).newSymbolNamesProvider.register(a,b)},registerCompletionItemProvider:function(a,b){return W.get(ct.u).completionProvider.register(a,b)},registerSignatureHelpProvider:function(a,b){return W.get(ct.u).signatureHelpProvider.register(a,b)},registerHoverProvider:function(a,b){return W.get(ct.u).hoverProvider.register(a,{provideHover:async(a,c,d,e)=>{let f=a.getWordAtPosition(c);return Promise.resolve(b.provideHover(a,c,d,e)).then(a=>{if(a)return!a.range&&f&&(a.range=new cw.Q(c.lineNumber,f.startColumn,c.lineNumber,f.endColumn)),a.range||(a.range=new cw.Q(c.lineNumber,c.column,c.lineNumber,c.column)),a})}})},registerDocumentSymbolProvider:function(a,b){return W.get(ct.u).documentSymbolProvider.register(a,b)},registerDocumentHighlightProvider:function(a,b){return W.get(ct.u).documentHighlightProvider.register(a,b)},registerLinkedEditingRangeProvider:function(a,b){return W.get(ct.u).linkedEditingRangeProvider.register(a,b)},registerDefinitionProvider:function(a,b){return W.get(ct.u).definitionProvider.register(a,b)},registerImplementationProvider:function(a,b){return W.get(ct.u).implementationProvider.register(a,b)},registerTypeDefinitionProvider:function(a,b){return W.get(ct.u).typeDefinitionProvider.register(a,b)},registerCodeLensProvider:function(a,b){return W.get(ct.u).codeLensProvider.register(a,b)},registerCodeActionProvider:function(a,b,c){return W.get(ct.u).codeActionProvider.register(a,{providedCodeActionKinds:c?.providedCodeActionKinds,documentation:c?.documentation,provideCodeActions:(a,c,d,e)=>{let f=W.get(gx).read({resource:a.uri}).filter(a=>cw.Q.areIntersectingOrTouching(a,c));return b.provideCodeActions(a,c,{markers:f,only:d.only,trigger:d.trigger},e)},resolveCodeAction:b.resolveCodeAction})},registerDocumentFormattingEditProvider:function(a,b){return W.get(ct.u).documentFormattingEditProvider.register(a,b)},registerDocumentRangeFormattingEditProvider:function(a,b){return W.get(ct.u).documentRangeFormattingEditProvider.register(a,b)},registerOnTypeFormattingEditProvider:function(a,b){return W.get(ct.u).onTypeFormattingEditProvider.register(a,b)},registerLinkProvider:function(a,b){return W.get(ct.u).linkProvider.register(a,b)},registerColorProvider:function(a,b){return W.get(ct.u).colorProvider.register(a,b)},registerFoldingRangeProvider:function(a,b){return W.get(ct.u).foldingRangeProvider.register(a,b)},registerDeclarationProvider:function(a,b){return W.get(ct.u).declarationProvider.register(a,b)},registerSelectionRangeProvider:function(a,b){return W.get(ct.u).selectionRangeProvider.register(a,b)},registerDocumentSemanticTokensProvider:function(a,b){return W.get(ct.u).documentSemanticTokensProvider.register(a,b)},registerDocumentRangeSemanticTokensProvider:function(a,b){return W.get(ct.u).documentRangeSemanticTokensProvider.register(a,b)},registerInlineCompletionsProvider:function(a,b){return W.get(ct.u).inlineCompletionsProvider.register(a,b)},registerInlayHintsProvider:function(a,b){return W.get(ct.u).inlayHintsProvider.register(a,b)},DocumentHighlightKind:aq.Kb,CompletionItemKind:aq.Io,CompletionItemTag:aq.QP,CompletionItemInsertTextRule:aq._E,SymbolKind:aq.v0,SymbolTag:aq.H_,IndentAction:aq.l,CompletionTriggerKind:aq.t7,SignatureHelpTriggerKind:aq.WA,InlayHintKind:aq.r4,InlineCompletionTriggerKind:aq.qw,CodeActionTriggerType:aq.ok,NewSymbolNameTag:aq.OV,NewSymbolNameTriggerKind:aq.YT,PartialAcceptTriggerKind:aq.Ah,HoverVerbosityAction:aq.M$,InlineCompletionEndOfLifeReasonKind:aq.EI,InlineCompletionHintStyle:aq.KU,FoldingRangeKind:ak.lO,SelectedSuggestionInfo:ak.GE,EditDeltaInfo:kB.lw};let kP=kO.CancellationTokenSource,kQ=kO.Emitter,kR=kO.KeyCode,kS=kO.KeyMod,kT=kO.Position,kU=kO.Range,kV=kO.Selection,kW=kO.SelectionDirection,kX=kO.MarkerSeverity,kY=kO.MarkerTag,kZ=kO.Uri,k$=kO.Token,k_=kO.editor,k0=kO.languages,k1=(0,cW.HT)(),k2=globalThis;(k1?.globalAPI||"function"==typeof k2.define&&k2.define.amd)&&(k2.monaco=kO),void 0!==k2.require&&"function"==typeof k2.require.config&&k2.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-languageserver-textdocument","vscode-languageserver-textdocument/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]})},60548:(a,b,c)=>{"use strict";c.d(b,{Y:()=>h});var d=c(54265),e=c(55900),f=c(87873),g=c(74864);function h(a,b=g.j.ofCaller()){return"string"==typeof a?new i(a,void 0,b):new i(void 0,a,b)}class i extends f.ZK{get debugName(){return new e.nA(this._owner,this._debugName,void 0).getDebugName(this)??"Observable Signal"}toString(){return this.debugName}constructor(a,b,c){super(c),this._debugName=a,this._owner=b}trigger(a,b){if(!a)return void(0,d.Rn)(a=>{this.trigger(a,b)},()=>`Trigger signal ${this.debugName}`);for(let c of this._observers)a.updateObserver(c,this),c.handleChange(this,b)}get(){}}},61055:(a,b,c)=>{"use strict";c.d(b,{c:()=>j});var d=c(75082),e=c(95091),f=c(76631);class g extends f.jG{constructor(a){super(),this._onDidChange=this._register(new e.vl),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(a,!0),this._mediaQueryList=null,this._handleChange(a,!1),this._register((0,f.s)(()=>this._mediaQueryList?.removeEventListener("change",this._listener)))}_handleChange(a,b){this._mediaQueryList?.removeEventListener("change",this._listener),this._mediaQueryList=a.matchMedia(`(resolution: ${a.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),b&&this._onDidChange.fire()}}class h extends f.jG{get value(){return this._value}constructor(a){super(),this._onDidChange=this._register(new e.vl),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio(a);const b=this._register(new g(a));this._register(b.onDidChange(()=>{this._value=this._getPixelRatio(a),this._onDidChange.fire(this._value)}))}_getPixelRatio(a){let b=document.createElement("canvas").getContext("2d");return(a.devicePixelRatio||1)/(b?.webkitBackingStorePixelRatio||b?.mozBackingStorePixelRatio||b?.msBackingStorePixelRatio||b?.oBackingStorePixelRatio||b?.backingStorePixelRatio||1)}}class i{constructor(){this.mapWindowIdToPixelRatioMonitor=new Map}_getOrCreatePixelRatioMonitor(a){let b=(0,d.Q2)(a),c=this.mapWindowIdToPixelRatioMonitor.get(b);return c||(c=(0,f.lC)(new h(a)),this.mapWindowIdToPixelRatioMonitor.set(b,c),(0,f.lC)(e.Jh.once(d.Fv)(({vscodeWindowId:a})=>{a===b&&(c?.dispose(),this.mapWindowIdToPixelRatioMonitor.delete(b))}))),c}getInstance(a){return this._getOrCreatePixelRatioMonitor(a)}}let j=new i},61148:()=>{},61556:(a,b,c)=>{"use strict";c.d(b,{D:()=>d,Z:()=>f});class d{constructor(a){this.domNode=a,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=""}focus(){this.domNode.focus()}setMaxWidth(a){let b=e(a);this._maxWidth!==b&&(this._maxWidth=b,this.domNode.style.maxWidth=this._maxWidth)}setWidth(a){let b=e(a);this._width!==b&&(this._width=b,this.domNode.style.width=this._width)}setHeight(a){let b=e(a);this._height!==b&&(this._height=b,this.domNode.style.height=this._height)}setTop(a){let b=e(a);this._top!==b&&(this._top=b,this.domNode.style.top=this._top)}setLeft(a){let b=e(a);this._left!==b&&(this._left=b,this.domNode.style.left=this._left)}setBottom(a){let b=e(a);this._bottom!==b&&(this._bottom=b,this.domNode.style.bottom=this._bottom)}setRight(a){let b=e(a);this._right!==b&&(this._right=b,this.domNode.style.right=this._right)}setPaddingLeft(a){let b=e(a);this._paddingLeft!==b&&(this._paddingLeft=b,this.domNode.style.paddingLeft=this._paddingLeft)}setFontFamily(a){this._fontFamily!==a&&(this._fontFamily=a,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(a){this._fontWeight!==a&&(this._fontWeight=a,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(a){let b=e(a);this._fontSize!==b&&(this._fontSize=b,this.domNode.style.fontSize=this._fontSize)}setFontStyle(a){this._fontStyle!==a&&(this._fontStyle=a,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(a){this._fontFeatureSettings!==a&&(this._fontFeatureSettings=a,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(a){this._fontVariationSettings!==a&&(this._fontVariationSettings=a,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(a){this._textDecoration!==a&&(this._textDecoration=a,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(a){let b=e(a);this._lineHeight!==b&&(this._lineHeight=b,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(a){let b=e(a);this._letterSpacing!==b&&(this._letterSpacing=b,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(a){this._className!==a&&(this._className=a,this.domNode.className=this._className)}toggleClassName(a,b){this.domNode.classList.toggle(a,b),this._className=this.domNode.className}setDisplay(a){this._display!==a&&(this._display=a,this.domNode.style.display=this._display)}setPosition(a){this._position!==a&&(this._position=a,this.domNode.style.position=this._position)}setVisibility(a){this._visibility!==a&&(this._visibility=a,this.domNode.style.visibility=this._visibility)}setColor(a){this._color!==a&&(this._color=a,this.domNode.style.color=this._color)}setBackgroundColor(a){this._backgroundColor!==a&&(this._backgroundColor=a,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(a){this._layerHint!==a&&(this._layerHint=a,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(a){this._boxShadow!==a&&(this._boxShadow=a,this.domNode.style.boxShadow=a)}setContain(a){this._contain!==a&&(this._contain=a,this.domNode.style.contain=this._contain)}setAttribute(a,b){this.domNode.setAttribute(a,b)}removeAttribute(a){this.domNode.removeAttribute(a)}appendChild(a){this.domNode.appendChild(a.domNode)}removeChild(a){this.domNode.removeChild(a.domNode)}}function e(a){return"number"==typeof a?`${a}px`:a}function f(a){return new d(a)}},61714:(a,b,c)=>{"use strict";c.d(b,{u:()=>g});var d=c(76631),e=c(95091),f=c(75082);class g extends d.jG{constructor(a,b){super(),this._onDidChange=this._register(new e.vl),this.onDidChange=this._onDidChange.event,this._referenceDomElement=a,this._width=-1,this._height=-1,this._resizeObserver=null,this.measureReferenceDomElement(!1,b)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this._width}getHeight(){return this._height}startObserving(){if(!this._resizeObserver&&this._referenceDomElement){let a=null,b=()=>{a?this.observe({width:a.width,height:a.height}):this.observe()},c=!1,d=!1,e=()=>{if(c&&!d)try{c=!1,d=!0,b()}finally{(0,f.PG)((0,f.zk)(this._referenceDomElement),()=>{d=!1,e()})}};this._resizeObserver=new ResizeObserver(b=>{a=b&&b[0]&&b[0].contentRect?{width:b[0].contentRect.width,height:b[0].contentRect.height}:null,c=!0,e()}),this._resizeObserver.observe(this._referenceDomElement)}}stopObserving(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null)}observe(a){this.measureReferenceDomElement(!0,a)}measureReferenceDomElement(a,b){let c=0,d=0;b?(c=b.width,d=b.height):this._referenceDomElement&&(c=this._referenceDomElement.clientWidth,d=this._referenceDomElement.clientHeight),c=Math.max(5,c),d=Math.max(5,d),(this._width!==c||this._height!==d)&&(this._width=c,this._height=d,a&&this._onDidChange.fire())}}},61811:(a,b,c)=>{"use strict";let d;function e(a){d?d instanceof g?d.loggers.push(a):d=new g([d,a]):d=a}function f(){return d}c.d(b,{E:()=>e,t:()=>f});class g{constructor(a){this.loggers=a}handleObservableCreated(a,b){for(let c of this.loggers)c.handleObservableCreated(a,b)}handleOnListenerCountChanged(a,b){for(let c of this.loggers)c.handleOnListenerCountChanged(a,b)}handleObservableUpdated(a,b){for(let c of this.loggers)c.handleObservableUpdated(a,b)}handleAutorunCreated(a,b){for(let c of this.loggers)c.handleAutorunCreated(a,b)}handleAutorunDisposed(a){for(let b of this.loggers)b.handleAutorunDisposed(a)}handleAutorunDependencyChanged(a,b,c){for(let d of this.loggers)d.handleAutorunDependencyChanged(a,b,c)}handleAutorunStarted(a){for(let b of this.loggers)b.handleAutorunStarted(a)}handleAutorunFinished(a){for(let b of this.loggers)b.handleAutorunFinished(a)}handleDerivedDependencyChanged(a,b,c){for(let d of this.loggers)d.handleDerivedDependencyChanged(a,b,c)}handleDerivedCleared(a){for(let b of this.loggers)b.handleDerivedCleared(a)}handleBeginTransaction(a){for(let b of this.loggers)b.handleBeginTransaction(a)}handleEndTransaction(a){for(let b of this.loggers)b.handleEndTransaction(a)}}},62286:(a,b,c)=>{"use strict";function d(a){let b=0,c=0,d=0,e=0;for(let f=0,g=a.length;f<g;f++){let h=a.charCodeAt(f);13===h?(0===b&&(c=f),b++,f+1<g&&10===a.charCodeAt(f+1)?(e|=2,f++):e|=3,d=f+1):10===h&&(e|=1,0===b&&(c=f),b++,d=f+1)}return 0===b&&(c=a.length),[b,c,a.length-d,e]}c.d(b,{W:()=>d})},62677:(a,b,c)=>{"use strict";c.d(b,{Z:()=>j});var d=c(47322),e=c(5436),f=c(80046),g=c(18216);let h=g.zx?256:2048,i=g.zx?2048:256;class j{constructor(a){this._standardKeyboardEventBrand=!0,this.browserEvent=a,this.target=a.target,this.ctrlKey=a.ctrlKey,this.shiftKey=a.shiftKey,this.altKey=a.altKey,this.metaKey=a.metaKey,this.altGraphKey=a.getModifierState?.("AltGraph"),this.keyCode=function(a){if(a.charCode){let b=String.fromCharCode(a.charCode).toUpperCase();return e.YM.fromString(b)}let b=a.keyCode;if(3===b)return 7;if(d.gm)switch(b){case 59:return 85;case 60:if(g.j9)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(g.zx)return 57}else if(d.Tc){if(g.zx&&93===b)return 57;else if(!g.zx&&92===b)return 57}return e.uw[b]||0}(a),this.code=a.code,this.ctrlKey=this.ctrlKey||5===this.keyCode,this.altKey=this.altKey||6===this.keyCode,this.shiftKey=this.shiftKey||4===this.keyCode,this.metaKey=this.metaKey||57===this.keyCode,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(a){return this._asKeybinding===a}_computeKeybinding(){let a=0;(0,e.VL)(this.keyCode)||(a=this.keyCode);let b=0;return this.ctrlKey&&(b|=h),this.altKey&&(b|=512),this.shiftKey&&(b|=1024),this.metaKey&&(b|=i),b|=a}_computeKeyCodeChord(){let a=0;return(0,e.VL)(this.keyCode)||(a=this.keyCode),new f.dG(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,a)}}},62957:(a,b,c)=>{"use strict";c.d(b,{D7:()=>m,SN:()=>l,c6:()=>k,dd:()=>j,g$:()=>i});var d=c(72816),e=c(37327),f=c(34183),g=c(18896),h=c(91018);let i=(0,e.x1)("menu.border",{dark:null,light:null,hcDark:f.b1,hcLight:f.b1},(0,d.kg)(2044,"Border color of menus.")),j=(0,e.x1)("menu.foreground",g.yq,(0,d.kg)(2045,"Foreground color of menu items.")),k=(0,e.x1)("menu.background",g.rv,(0,d.kg)(2046,"Background color of menu items."));(0,e.x1)("menu.selectionForeground",h.GV,(0,d.kg)(2047,"Foreground color of the selected menu item in menus.")),(0,e.x1)("menu.selectionBackground",h.Rj,(0,d.kg)(2048,"Background color of the selected menu item in menus."));let l=(0,e.x1)("menu.selectionBorder",{dark:null,light:null,hcDark:f.bu,hcLight:f.bu},(0,d.kg)(2049,"Border color of the selected menu item in menus.")),m=(0,e.x1)("menu.separatorBackground",{dark:(0,e.JO)(f.CU,.2),light:(0,e.JO)(f.CU,.2),hcDark:f.b1,hcLight:f.b1},(0,d.kg)(2050,"Color of a separator menu item in menus."))},63018:(a,b,c)=>{"use strict";c.d(b,{x:()=>l});var d=c(75082),e=c(47339),f=c(89191),g=c(80172),h=c(76631),i=c(29943);c(28289);var j=c(72816);let k=d.$;class l extends h.jG{constructor(a,b,c){super(),this.os=b,this.keyElements=new Set,this.options=c||Object.create(null);const g=this.options.keybindingLabelForeground;this.domNode=(0,d.BC)(a,k(".monaco-keybinding")),g&&(this.domNode.style.color=g),this.hover=this._register((0,e.i)().setupManagedHover((0,f.nZ)("mouse"),this.domNode,"")),this.didEverRender=!1,a.appendChild(this.domNode)}set(a,b){this.didEverRender&&this.keybinding===a&&l.areSame(this.matches,b)||(this.keybinding=a,this.matches=b,this.render())}render(){if(this.clear(),this.keybinding){let a=this.keybinding.getChords();a[0]&&this.renderChord(this.domNode,a[0],this.matches?this.matches.firstPart:null);for(let b=1;b<a.length;b++)(0,d.BC)(this.domNode,k("span.monaco-keybinding-key-chord-separator",void 0," ")),this.renderChord(this.domNode,a[b],this.matches?this.matches.chordPart:null);let b=this.options.disableTitle?void 0:this.keybinding.getAriaLabel()||void 0;this.hover.update(b),this.domNode.setAttribute("aria-label",b||"")}else this.options&&this.options.renderUnboundKeybindings&&this.renderUnbound(this.domNode);this.didEverRender=!0}clear(){(0,d.w_)(this.domNode),this.keyElements.clear()}renderChord(a,b,c){let d=g.Of.modifierLabels[this.os];b.ctrlKey&&this.renderKey(a,d.ctrlKey,!!c?.ctrlKey,d.separator),b.shiftKey&&this.renderKey(a,d.shiftKey,!!c?.shiftKey,d.separator),b.altKey&&this.renderKey(a,d.altKey,!!c?.altKey,d.separator),b.metaKey&&this.renderKey(a,d.metaKey,!!c?.metaKey,d.separator);let e=b.keyLabel;e&&this.renderKey(a,e,!!c?.keyCode,"")}renderKey(a,b,c,e){(0,d.BC)(a,this.createKeyElement(b,c?".highlight":"")),e&&(0,d.BC)(a,k("span.monaco-keybinding-key-separator",void 0,e))}renderUnbound(a){(0,d.BC)(a,this.createKeyElement((0,j.kg)(15,"Unbound")))}createKeyElement(a,b=""){let c=k("span.monaco-keybinding-key"+b,void 0,a);return this.keyElements.add(c),this.options.keybindingLabelBackground&&(c.style.backgroundColor=this.options.keybindingLabelBackground),this.options.keybindingLabelBorder&&(c.style.borderColor=this.options.keybindingLabelBorder),this.options.keybindingLabelBottomBorder&&(c.style.borderBottomColor=this.options.keybindingLabelBottomBorder),this.options.keybindingLabelShadow&&(c.style.boxShadow=`inset 0 -1px 0 ${this.options.keybindingLabelShadow}`),c}static areSame(a,b){return a===b||!a&&!b||!!a&&!!b&&(0,i.aI)(a.firstPart,b.firstPart)&&(0,i.aI)(a.chordPart,b.chordPart)}}},63040:(a,b,c)=>{"use strict";c.d(b,{m:()=>v});var d=c(75082),e=c(14016),f=c(73298);class g{constructor(a){this.source=a,this.index=0}eos(){return this.index>=this.source.length}next(){let a=this.peek();return this.advance(),a}peek(){return this.source[this.index]}advance(){this.index++}}function h(a,b){switch(a){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;default:return 0}}var i=c(14826),j=c(67330),k=c(47339),l=c(72542),m=c(8933),n=c(95091);class o{constructor(a,b=0,c=a.length,d=b-1){this.items=a,this.start=b,this.end=c,this.index=d}current(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]}next(){return this.index=Math.min(this.index+1,this.end),this.current()}previous(){return this.index=Math.max(this.index-1,this.start-1),this.current()}first(){return this.index=this.start,this.current()}last(){return this.index=this.end-1,this.current()}}class p{constructor(a=new Set,b=10){this._history=a,this._limit=b,this._onChange(),this._history.onDidChange&&(this._disposable=this._history.onDidChange(()=>this._onChange()))}getHistory(){return this._elements}add(a){this._history.delete(a),this._history.add(a),this._onChange()}next(){return this._navigator.next()}previous(){return 0!==this._currentPosition()?this._navigator.previous():null}current(){return this._navigator.current()}first(){return this._navigator.first()}last(){return this._navigator.last()}isLast(){return this._currentPosition()>=this._elements.length-1}isNowhere(){return null===this._navigator.current()}has(a){return this._history.has(a)}_onChange(){this._reduceToLimit();let a=this._elements;this._navigator=new o(a,0,a.length,a.length)}_reduceToLimit(){let a=this._elements;if(a.length>this._limit){let b=a.slice(a.length-this._limit);this._history.replace?this._history.replace(b):this._history=new Set(b)}}_currentPosition(){let a=this._navigator.current();return a?this._elements.indexOf(a):-1}get _elements(){let a=[];return this._history.forEach(b=>a.push(b)),a}dispose(){this._disposable&&(this._disposable.dispose(),this._disposable=void 0)}}var q=c(29943);c(90753);var r=c(72816),s=c(76631);let t=d.$;class u extends m.x{get onDidChange(){return this._onDidChange.event}get onDidHeightChange(){return this._onDidHeightChange.event}constructor(a,b,c){super(),this.state="idle",this.maxHeight=1/0,this.hover=this._register(new s.HE),this._onDidChange=this._register(new n.vl),this._onDidHeightChange=this._register(new n.vl),this.contextViewProvider=b,this.options=c,this.message=null,this.placeholder=this.options.placeholder||"",this.tooltip=this.options.tooltip??(this.placeholder||""),this.ariaLabel=this.options.ariaLabel||"",this.options.validationOptions&&(this.validation=this.options.validationOptions.validation),this.element=(0,d.BC)(a,t(".monaco-inputbox.idle"));const e=this.options.flexibleHeight?"textarea":"input",g=(0,d.BC)(this.element,t(".ibwrapper"));if(this.input=(0,d.BC)(g,t(e+".input.empty")),this.input.setAttribute("autocorrect","off"),this.input.setAttribute("autocapitalize","off"),this.input.setAttribute("spellcheck","false"),this.onfocus(this.input,()=>this.element.classList.add("synthetic-focus")),this.onblur(this.input,()=>this.element.classList.remove("synthetic-focus")),this.options.flexibleHeight){this.maxHeight="number"==typeof this.options.flexibleMaxHeight?this.options.flexibleMaxHeight:1/0,this.mirror=(0,d.BC)(g,t("div.mirror")),this.mirror.innerText="\xa0",this.scrollableElement=new l.Se(this.element,{vertical:1}),this.options.flexibleWidth&&(this.input.setAttribute("wrap","off"),this.mirror.style.whiteSpace="pre",this.mirror.style.wordWrap="initial"),(0,d.BC)(a,this.scrollableElement.getDomNode()),this._register(this.scrollableElement),this._register(this.scrollableElement.onScroll(a=>this.input.scrollTop=a.scrollTop));const b=this._register(new f.f(a.ownerDocument,"selectionchange")),c=n.Jh.filter(b.event,()=>{let b=a.ownerDocument.getSelection();return b?.anchorNode===g});this._register(c(this.updateScrollDimensions,this)),this._register(this.onDidHeightChange(this.updateScrollDimensions,this))}else this.input.type=this.options.type||"text",this.input.setAttribute("wrap","off");this.ariaLabel&&this.input.setAttribute("aria-label",this.ariaLabel),this.placeholder&&!this.options.showPlaceholderOnFocus&&this.setPlaceHolder(this.placeholder),this.tooltip&&this.setTooltip(this.tooltip),this.oninput(this.input,()=>this.onValueChange()),this.onblur(this.input,()=>this.onBlur()),this.onfocus(this.input,()=>this.onFocus()),this._register(this.ignoreGesture(this.input)),setTimeout(()=>this.updateMirror(),0),this.options.actions&&(this.actionbar=this._register(new i.E(this.element,{actionViewItemProvider:this.options.actionViewItemProvider})),this.actionbar.push(this.options.actions,{icon:!0,label:!1})),this.applyStyles()}setActions(a,b){this.actionbar?(this.actionbar.clear(),a&&this.actionbar.push(a,{icon:!0,label:!1})):a&&(this.actionbar=this._register(new i.E(this.element,{actionViewItemProvider:b??this.options.actionViewItemProvider})),this.actionbar.push(a,{icon:!0,label:!1}))}get actionsWidth(){return this.actionbar?.getContainer().offsetWidth??0}onBlur(){this._hideMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder","")}onFocus(){this._showMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder",this.placeholder||"")}setPlaceHolder(a){this.placeholder=a,this.input.setAttribute("placeholder",a)}setTooltip(a){this.tooltip=a,this.hover.value||(this.hover.value=this._register((0,k.i)().setupDelayedHoverAtMouse(this.input,()=>({content:this.tooltip,appearance:{compact:!0}}))))}setAriaLabel(a){this.ariaLabel=a,a?this.input.setAttribute("aria-label",this.ariaLabel):this.input.removeAttribute("aria-label")}get inputElement(){return this.input}get value(){return this.input.value}set value(a){this.input.value!==a&&(this.input.value=a,this.onValueChange())}get height(){return"number"==typeof this.cachedHeight?this.cachedHeight:(0,d.OK)(this.element)}focus(){this.input.focus()}blur(){this.input.blur()}hasFocus(){return(0,d.X7)(this.input)}select(a=null){this.input.select(),a&&(this.input.setSelectionRange(a.start,a.end),a.end===this.input.value.length&&(this.input.scrollLeft=this.input.scrollWidth))}isSelectionAtEnd(){return this.input.selectionEnd===this.input.value.length&&this.input.selectionStart===this.input.selectionEnd}getSelection(){let a=this.input.selectionStart;if(null===a)return null;let b=this.input.selectionEnd??a;return{start:a,end:b}}enable(){this.input.removeAttribute("disabled")}disable(){this.blur(),this.input.disabled=!0,this._hideMessage()}set paddingRight(a){this.input.style.width=`calc(100% - ${a}px)`,this.mirror&&(this.mirror.style.paddingRight=a+"px")}updateScrollDimensions(){if("number"!=typeof this.cachedContentHeight||"number"!=typeof this.cachedHeight||!this.scrollableElement)return;let a=this.cachedContentHeight,b=this.cachedHeight,c=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:a,height:b}),this.scrollableElement.setScrollPosition({scrollTop:c})}showMessage(a,b){if("open"===this.state&&(0,q.aI)(this.message,a))return;this.message=a,this.element.classList.remove("idle"),this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add(this.classForType(a.type));let c=this.stylesForType(this.message.type);this.element.style.border=`1px solid ${(0,e.gI)(c.border,"transparent")}`,this.message.content&&(this.hasFocus()||b)&&this._showMessage()}hideMessage(){this.message=null,this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add("idle"),this._hideMessage(),this.applyStyles()}validate(){let a=null;return this.validation&&((a=this.validation(this.value))?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(a)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),a?.type}stylesForType(a){let b=this.options.inputBoxStyles;switch(a){case 1:return{border:b.inputValidationInfoBorder,background:b.inputValidationInfoBackground,foreground:b.inputValidationInfoForeground};case 2:return{border:b.inputValidationWarningBorder,background:b.inputValidationWarningBackground,foreground:b.inputValidationWarningForeground};default:return{border:b.inputValidationErrorBorder,background:b.inputValidationErrorBackground,foreground:b.inputValidationErrorForeground}}}classForType(a){switch(a){case 1:return"info";case 2:return"warning";default:return"error"}}_showMessage(){let a,b;if(!this.contextViewProvider||!this.message)return;let c=()=>a.style.width=(0,d.Tr)(this.element)+"px";this.contextViewProvider.showContextView({getAnchor:()=>this.element,anchorAlignment:1,render:b=>{var e,f,i;if(!this.message)return null;a=(0,d.BC)(b,t(".monaco-inputbox-container")),c();let j=t("span.monaco-inputbox-message");if(this.message.formatContent){let a;e=this.message.content,f=void 0,(a=j??document.createElement("div")).textContent="",function a(b,c,e,f){let g;if(2===c.type)g=document.createTextNode(c.content||"");else if(3===c.type)g=document.createElement("b");else if(4===c.type)g=document.createElement("i");else if(7===c.type&&f)g=document.createElement("code");else if(5===c.type&&e){let a=document.createElement("a");e.disposables.add((0,d.un)(a,"click",a=>{e.callback(String(c.index),a)})),g=a}else 8===c.type?g=document.createElement("br"):1===c.type&&(g=b);g&&b!==g&&b.appendChild(g),g&&Array.isArray(c.children)&&c.children.forEach(b=>{a(g,b,e,f)})}(a,function(a){let b={type:1,children:[]},c=0,d=b,e=[],f=new g(a);for(;!f.eos();){let a=f.next(),b="\\"===a&&0!==h(f.peek());if(b&&(a=f.next()),b||0===h(a)||a!==f.peek())if("\n"===a)2===d.type&&(d=e.pop()),d.children.push({type:8});else if(2!==d.type){let b={type:2,content:a};d.children.push(b),e.push(d),d=b}else d.content+=a;else{f.advance(),2===d.type&&(d=e.pop());let b=h(a);if(d.type===b||5===d.type&&6===b)d=e.pop();else{let a={type:b,children:[]};5===b&&(a.index=c,c++),d.children.push(a),e.push(d),d=a}}}return 2===d.type&&(d=e.pop()),b}(e),f?.actionHandler,f?.renderCodeSegments)}else i=this.message.content,(j??document.createElement("div")).textContent=i;j.classList.add(this.classForType(this.message.type));let k=this.stylesForType(this.message.type);return j.style.backgroundColor=k.background??"",j.style.color=k.foreground??"",j.style.border=k.border?`1px solid ${k.border}`:"",(0,d.BC)(a,j),null},onHide:()=>{this.state="closed"},layout:c}),b=3===this.message.type?(0,r.kg)(9,"Error: {0}",this.message.content):2===this.message.type?(0,r.kg)(10,"Warning: {0}",this.message.content):(0,r.kg)(11,"Info: {0}",this.message.content),(0,j.xE)(b),this.state="open"}_hideMessage(){this.contextViewProvider&&("open"===this.state&&this.contextViewProvider.hideContextView(),this.state="idle")}layoutMessage(){"open"===this.state&&this.contextViewProvider&&this.contextViewProvider.layout()}onValueChange(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),this.input.classList.toggle("empty",!this.value),"open"===this.state&&this.contextViewProvider&&this.contextViewProvider.layout(),this.options.hideHoverOnValueChange&&(0,k.i)().hideHover()}updateMirror(){if(!this.mirror)return;let a=this.value,b=10===a.charCodeAt(a.length-1)?" ":"";(a+b).replace(/\u000c/g,"")?this.mirror.textContent=a+b:this.mirror.innerText="\xa0",this.layout()}applyStyles(){let a=this.options.inputBoxStyles,b=a.inputBackground??"",c=a.inputForeground??"",d=a.inputBorder??"";this.element.style.backgroundColor=b,this.element.style.color=c,this.input.style.backgroundColor="inherit",this.input.style.color=c,this.element.style.border=`1px solid ${(0,e.gI)(d,"transparent")}`}layout(){if(!this.mirror)return void this.layoutMessage();let a=this.cachedContentHeight;this.cachedContentHeight=(0,d.OK)(this.mirror),a!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight)),this.layoutMessage()}insertAtCursor(a){let b=this.inputElement,c=b.selectionStart,d=b.selectionEnd,e=b.value;null!==c&&null!==d&&(this.value=e.substr(0,c)+a+e.substr(d),b.setSelectionRange(c+1,c+1),this.layout())}dispose(){this._hideMessage(),this.message=null,this.actionbar?.dispose(),super.dispose()}}class v extends u{constructor(a,b,c){const e=(0,r.kg)(12," or {0} for history","⇅"),f=(0,r.kg)(13," ({0} for history)","⇅");super(a,b,c),this._onDidFocus=this._register(new n.vl),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new n.vl),this.onDidBlur=this._onDidBlur.event,this.history=this._register(new p(c.history,100));const g=()=>{if(c.showHistoryHint&&c.showHistoryHint()&&!this.placeholder.endsWith(e)&&!this.placeholder.endsWith(f)&&this.history.getHistory().length){let a=this.placeholder.endsWith(")")?e:f,b=this.placeholder+a;c.showPlaceholderOnFocus&&!(0,d.X7)(this.input)?this.placeholder=b:this.setPlaceHolder(b)}};this.observer=new MutationObserver((a,b)=>{a.forEach(a=>{a.target.textContent||g()})}),this.observer.observe(this.input,{attributeFilter:["class"]}),this.onfocus(this.input,()=>g()),this.onblur(this.input,()=>{let a=a=>{if(!this.placeholder.endsWith(a))return!1;{let b=this.placeholder.slice(0,this.placeholder.length-a.length);return c.showPlaceholderOnFocus?this.placeholder=b:this.setPlaceHolder(b),!0}};a(f)||a(e)})}dispose(){super.dispose(),this.observer&&(this.observer.disconnect(),this.observer=void 0)}addToHistory(a){this.value&&(a||this.value!==this.getCurrentValue())&&this.history.add(this.value)}isAtLastInHistory(){return this.history.isLast()}isNowhereInHistory(){return this.history.isNowhere()}showNextValue(){this.history.has(this.value)||this.addToHistory();let a=this.getNextValue();a&&(a=a===this.value?this.getNextValue():a),this.value=a??"",(0,j.h5)(this.value?this.value:(0,r.kg)(14,"Cleared Input"))}showPreviousValue(){this.history.has(this.value)||this.addToHistory();let a=this.getPreviousValue();a&&(a=a===this.value?this.getPreviousValue():a),a&&(this.value=a,(0,j.h5)(this.value))}setPlaceHolder(a){super.setPlaceHolder(a),this.setTooltip(a)}onBlur(){super.onBlur(),this._onDidBlur.fire()}onFocus(){super.onFocus(),this._onDidFocus.fire()}getCurrentValue(){let a=this.history.current();return a||(a=this.history.last(),this.history.next()),a}getPreviousValue(){return this.history.previous()||this.history.first()}getNextValue(){return this.history.next()}}},63060:(a,b,c)=>{"use strict";c.d(b,{L:()=>e});var d,e,f=c(33040);(d||(d={})).isThemeColor=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id},function(a){a.iconNameSegment="[A-Za-z0-9]+",a.iconNameExpression="[A-Za-z0-9-]+",a.iconModifierExpression="~[A-Za-z]+",a.iconNameCharacter="[A-Za-z0-9~-]";let b=RegExp(`^(${a.iconNameExpression})(${a.iconModifierExpression})?$`);function c(a){let d=b.exec(a.id);if(!d)return c(f.W.error);let[,e,g]=d,h=["codicon","codicon-"+e];return g&&h.push("codicon-modifier-"+g.substring(1)),h}a.asClassNameArray=c,a.asClassName=function(a){return c(a).join(" ")},a.asCSSSelector=function(a){return"."+c(a).join(".")},a.isThemeIcon=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id&&(void 0===a.color||d.isThemeColor(a.color))};let e=RegExp(`^\\$\\((${a.iconNameExpression}(?:${a.iconModifierExpression})?)\\)$`);a.fromString=function(a){let b=e.exec(a);if(!b)return;let[,c]=b;return{id:c}},a.fromId=function(a){return{id:a}},a.modify=function(a,b){let c=a.id,d=c.lastIndexOf("~");return -1!==d&&(c=c.substring(0,d)),b&&(c=`${c}~${b}`),{id:c}},a.getModifier=function(a){let b=a.id.lastIndexOf("~");if(-1!==b)return a.id.substring(b+1)},a.isEqual=function(a,b){return a.id===b.id&&a.color?.id===b.color?.id},a.isFile=function(a){return a?.id===f.W.file.id},a.isFolder=function(a){return a?.id===f.W.folder.id}}(e||(e={}))},63405:()=>{},63838:()=>{},63914:(a,b,c)=>{"use strict";a.exports=c.p+"static/media/editorWebWorkerMain.aa8a11ab.js"},64103:(a,b,c)=>{"use strict";c.d(b,{kI:()=>cN,Bz:()=>cC,J8:()=>cD});var d,e,f,g,h=c(81309),i=c(67298),j=c(55404),k=c(66036),l=c(95091),m=c(76631),n=c(26529),o=c(54957),p=c(58254),q=c(98030),r=c(35590),s=c(62286),t=c(64687),u=c(85030),v=c(6812),w=c(61822),x=c(77509),y=c(81325),z=c(16202),A=c(94630),B=c(28574),C=c(7846),D=c(91324),E=c(99807),F=c(89665);class G{constructor(a,b,c,d){this.range=a,this.nestingLevel=b,this.nestingLevelOfEqualBracketType=c,this.isInvalid=d}}class H{constructor(a,b,c,d,e,f){this.range=a,this.openingBracketRange=b,this.closingBracketRange=c,this.nestingLevel=d,this.nestingLevelOfEqualBracketType=e,this.bracketPairNode=f}get openingBracketInfo(){return this.bracketPairNode.openingBracket.bracketInfo}}class I extends H{constructor(a,b,c,d,e,f,g){super(a,b,c,d,e,f),this.minVisibleColumnIndentation=g}}var J=c(72499),K=c(18530),L=c(26346);let M=[];class N{static{this.cache=Array(129)}static create(a,b){if(a<=128&&0===b.length){let c=N.cache[a];return c||(c=new N(a,b),N.cache[a]=c),c}return new N(a,b)}static{this.empty=N.create(0,M)}static getEmpty(){return this.empty}constructor(a,b){this.items=a,this.additionalItems=b}add(a,b){let c=b.getKey(a),d=c>>5;if(0===d){let a=1<<c|this.items;return a===this.items?this:N.create(a,this.additionalItems)}d--;let e=this.additionalItems.slice(0);for(;e.length<d;)e.push(0);return e[d]|=1<<(31&c),N.create(this.items,e)}merge(a){let b=this.items|a.items;if(this.additionalItems===M&&a.additionalItems===M)return b===this.items?this:b===a.items?a:N.create(b,M);let c=[];for(let b=0;b<Math.max(this.additionalItems.length,a.additionalItems.length);b++){let d=this.additionalItems[b]||0,e=a.additionalItems[b]||0;c.push(d|e)}return N.create(b,c)}intersects(a){if((this.items&a.items)!=0)return!0;for(let b=0;b<Math.min(this.additionalItems.length,a.additionalItems.length);b++)if((this.additionalItems[b]&a.additionalItems[b])!=0)return!0;return!1}}let O={getKey:a=>a};class P{constructor(){this.items=new Map}getKey(a){let b=this.items.get(a);return void 0===b&&(b=this.items.size,this.items.set(a,b)),b}}class Q{get length(){return this._length}constructor(a){this._length=a}}class R extends Q{static create(a,b,c){let d=a.length;return b&&(d=(0,L.QB)(d,b.length)),c&&(d=(0,L.QB)(d,c.length)),new R(d,a,b,c,b?b.missingOpeningBracketIds:N.getEmpty())}get kind(){return 2}get listHeight(){return 0}get childrenLength(){return 3}getChild(a){switch(a){case 0:return this.openingBracket;case 1:return this.child;case 2:return this.closingBracket}throw Error("Invalid child index")}get children(){let a=[];return a.push(this.openingBracket),this.child&&a.push(this.child),this.closingBracket&&a.push(this.closingBracket),a}constructor(a,b,c,d,e){super(a),this.openingBracket=b,this.child=c,this.closingBracket=d,this.missingOpeningBracketIds=e}canBeReused(a){return!(null===this.closingBracket||a.intersects(this.missingOpeningBracketIds))}deepClone(){return new R(this.length,this.openingBracket.deepClone(),this.child&&this.child.deepClone(),this.closingBracket&&this.closingBracket.deepClone(),this.missingOpeningBracketIds)}computeMinIndentation(a,b){return this.child?this.child.computeMinIndentation((0,L.QB)(a,this.openingBracket.length),b):Number.MAX_SAFE_INTEGER}}class S extends Q{static create23(a,b,c,d=!1){let e=a.length,f=a.missingOpeningBracketIds;if(a.listHeight!==b.listHeight)throw Error("Invalid list heights");if(e=(0,L.QB)(e,b.length),f=f.merge(b.missingOpeningBracketIds),c){if(a.listHeight!==c.listHeight)throw Error("Invalid list heights");e=(0,L.QB)(e,c.length),f=f.merge(c.missingOpeningBracketIds)}return d?new U(e,a.listHeight+1,a,b,c,f):new T(e,a.listHeight+1,a,b,c,f)}static getEmpty(){return new W(L.Vp,0,[],N.getEmpty())}get kind(){return 4}get missingOpeningBracketIds(){return this._missingOpeningBracketIds}constructor(a,b,c){super(a),this.listHeight=b,this._missingOpeningBracketIds=c,this.cachedMinIndentation=-1}throwIfImmutable(){}makeLastElementMutable(){this.throwIfImmutable();let a=this.childrenLength;if(0===a)return;let b=this.getChild(a-1),c=4===b.kind?b.toMutable():b;return b!==c&&this.setChild(a-1,c),c}makeFirstElementMutable(){if(this.throwIfImmutable(),0===this.childrenLength)return;let a=this.getChild(0),b=4===a.kind?a.toMutable():a;return a!==b&&this.setChild(0,b),b}canBeReused(a){if(a.intersects(this.missingOpeningBracketIds)||0===this.childrenLength)return!1;let b=this;for(;4===b.kind;){let a=b.childrenLength;if(0===a)throw new k.D7;b=b.getChild(a-1)}return b.canBeReused(a)}handleChildrenChanged(){this.throwIfImmutable();let a=this.childrenLength,b=this.getChild(0).length,c=this.getChild(0).missingOpeningBracketIds;for(let d=1;d<a;d++){let a=this.getChild(d);b=(0,L.QB)(b,a.length),c=c.merge(a.missingOpeningBracketIds)}this._length=b,this._missingOpeningBracketIds=c,this.cachedMinIndentation=-1}computeMinIndentation(a,b){if(-1!==this.cachedMinIndentation)return this.cachedMinIndentation;let c=Number.MAX_SAFE_INTEGER,d=a;for(let a=0;a<this.childrenLength;a++){let e=this.getChild(a);e&&(c=Math.min(c,e.computeMinIndentation(d,b)),d=(0,L.QB)(d,e.length))}return this.cachedMinIndentation=c,c}}class T extends S{get childrenLength(){return null!==this._item3?3:2}getChild(a){switch(a){case 0:return this._item1;case 1:return this._item2;case 2:return this._item3}throw Error("Invalid child index")}setChild(a,b){switch(a){case 0:this._item1=b;return;case 1:this._item2=b;return;case 2:this._item3=b;return}throw 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(a,b,c,d,e,f){super(a,b,f),this._item1=c,this._item2=d,this._item3=e}deepClone(){return new T(this.length,this.listHeight,this._item1.deepClone(),this._item2.deepClone(),this._item3?this._item3.deepClone():null,this.missingOpeningBracketIds)}appendChildOfSameHeight(a){if(this._item3)throw Error("Cannot append to a full (2,3) tree node");this.throwIfImmutable(),this._item3=a,this.handleChildrenChanged()}unappendChild(){if(!this._item3)throw Error("Cannot remove from a non-full (2,3) tree node");this.throwIfImmutable();let a=this._item3;return this._item3=null,this.handleChildrenChanged(),a}prependChildOfSameHeight(a){if(this._item3)throw Error("Cannot prepend to a full (2,3) tree node");this.throwIfImmutable(),this._item3=this._item2,this._item2=this._item1,this._item1=a,this.handleChildrenChanged()}unprependChild(){if(!this._item3)throw Error("Cannot remove from a non-full (2,3) tree node");this.throwIfImmutable();let a=this._item1;return this._item1=this._item2,this._item2=this._item3,this._item3=null,this.handleChildrenChanged(),a}toMutable(){return this}}class U extends T{toMutable(){return new T(this.length,this.listHeight,this.item1,this.item2,this.item3,this.missingOpeningBracketIds)}throwIfImmutable(){throw Error("this instance is immutable")}}class V extends S{get childrenLength(){return this._children.length}getChild(a){return this._children[a]}setChild(a,b){this._children[a]=b}get children(){return this._children}constructor(a,b,c,d){super(a,b,d),this._children=c}deepClone(){let a=Array(this._children.length);for(let b=0;b<this._children.length;b++)a[b]=this._children[b].deepClone();return new V(this.length,this.listHeight,a,this.missingOpeningBracketIds)}appendChildOfSameHeight(a){this.throwIfImmutable(),this._children.push(a),this.handleChildrenChanged()}unappendChild(){this.throwIfImmutable();let a=this._children.pop();return this.handleChildrenChanged(),a}prependChildOfSameHeight(a){this.throwIfImmutable(),this._children.unshift(a),this.handleChildrenChanged()}unprependChild(){this.throwIfImmutable();let a=this._children.shift();return this.handleChildrenChanged(),a}toMutable(){return this}}class W extends V{toMutable(){return new V(this.length,this.listHeight,[...this.children],this.missingOpeningBracketIds)}throwIfImmutable(){throw Error("this instance is immutable")}}let X=[];class Y extends Q{get listHeight(){return 0}get childrenLength(){return 0}getChild(a){return null}get children(){return X}deepClone(){return this}}class Z extends Y{get kind(){return 0}get missingOpeningBracketIds(){return N.getEmpty()}canBeReused(a){return!0}computeMinIndentation(a,b){let c=(0,L.l4)(a),d=(0===c.columnCount?c.lineCount:c.lineCount+1)+1,e=(0,L.eu)((0,L.QB)(a,this.length))+1,f=Number.MAX_SAFE_INTEGER;for(let a=d;a<=e;a++){let c=b.getLineFirstNonWhitespaceColumn(a),d=b.getLineContent(a);0!==c&&(f=Math.min(f,K.A.visibleColumnFromColumn(d,c,b.getOptions().tabSize)))}return f}}class $ extends Y{static create(a,b,c){return new $(a,b,c)}get kind(){return 1}get missingOpeningBracketIds(){return N.getEmpty()}constructor(a,b,c){super(a),this.bracketInfo=b,this.bracketIds=c}get text(){return this.bracketInfo.bracketText}get languageId(){return this.bracketInfo.languageId}canBeReused(a){return!1}computeMinIndentation(a,b){return Number.MAX_SAFE_INTEGER}}class _ extends Y{get kind(){return 3}constructor(a,b){super(b),this.missingOpeningBracketIds=a}canBeReused(a){return!a.intersects(this.missingOpeningBracketIds)}computeMinIndentation(a,b){return Number.MAX_SAFE_INTEGER}}var aa=c(70233);class ab{constructor(a,b,c,d,e){this.length=a,this.kind=b,this.bracketId=c,this.bracketIds=d,this.astNode=e}}class ac{constructor(a,b){this.textModel=a,this.bracketTokens=b,this.reader=new ad(this.textModel,this.bracketTokens),this._offset=L.Vp,this.didPeek=!1,this.peeked=null,this.textBufferLineCount=a.getLineCount(),this.textBufferLastLineLength=a.getLineLength(this.textBufferLineCount)}get offset(){return this._offset}get length(){return(0,L.qe)(this.textBufferLineCount-1,this.textBufferLastLineLength)}skip(a){this.didPeek=!1,this._offset=(0,L.QB)(this._offset,a);let b=(0,L.l4)(this._offset);this.reader.setPosition(b.lineCount,b.columnCount)}read(){let a;return this.peeked?(this.didPeek=!1,a=this.peeked):a=this.reader.read(),a&&(this._offset=(0,L.QB)(this._offset,a.length)),a}peek(){return this.didPeek||(this.peeked=this.reader.read(),this.didPeek=!0),this.peeked}}class ad{constructor(a,b){this.textModel=a,this.bracketTokens=b,this.lineIdx=0,this.line=null,this.lineCharOffset=0,this.lineTokens=null,this.lineTokenOffset=0,this.peekedToken=null,this.textBufferLineCount=a.getLineCount(),this.textBufferLastLineLength=a.getLineLength(this.textBufferLineCount)}setPosition(a,b){a===this.lineIdx?(this.lineCharOffset=b,null!==this.line&&(this.lineTokenOffset=0===this.lineCharOffset?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset))):(this.lineIdx=a,this.lineCharOffset=b,this.line=null),this.peekedToken=null}read(){if(this.peekedToken){let a=this.peekedToken;return this.peekedToken=null,this.lineCharOffset+=(0,L.sS)(a.length),a}if(this.lineIdx>this.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;null===this.line&&(this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=0===this.lineCharOffset?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));let a=this.lineIdx,b=this.lineCharOffset,c=0;for(;;){let d=this.lineTokens,e=d.getCount(),f=null;if(this.lineTokenOffset<e){let g=d.getMetadata(this.lineTokenOffset);for(;this.lineTokenOffset+1<e&&g===d.getMetadata(this.lineTokenOffset+1);)this.lineTokenOffset++;let h=0===aa.x.getTokenType(g),i=aa.x.containsBalancedBrackets(g),j=d.getEndOffset(this.lineTokenOffset);if(i&&h&&this.lineCharOffset<j){let a=d.getLanguageId(this.lineTokenOffset),b=this.line.substring(this.lineCharOffset,j),c=this.bracketTokens.getSingleLanguageBracketTokens(a),e=c.regExpGlobal;if(e){e.lastIndex=0;let a=e.exec(b);a&&(f=c.getToken(a[0]))&&(this.lineCharOffset+=a.index)}}if(c+=j-this.lineCharOffset,f)if(a===this.lineIdx&&b===this.lineCharOffset)return this.lineCharOffset+=(0,L.sS)(f.length),f;else{this.peekedToken=f;break}this.lineTokenOffset++,this.lineCharOffset=j}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,(c+=33)>1e3))break;if(c>1500)break}let d=(0,L.C7)(a,b,this.lineIdx,this.lineCharOffset);return new ab(d,0,-1,N.getEmpty(),new Z(d))}}class ae{constructor(a,b){let c;this.text=a,this._offset=L.Vp,this.idx=0;const d=b.getRegExpStr(),e=d?RegExp(d+"|\n","gi"):null,f=[];let g=0,h=0,i=0,j=0;const k=[];for(let a=0;a<60;a++)k.push(new ab((0,L.qe)(0,a),0,-1,N.getEmpty(),new Z((0,L.qe)(0,a))));const l=[];for(let a=0;a<60;a++)l.push(new ab((0,L.qe)(1,a),0,-1,N.getEmpty(),new Z((0,L.qe)(1,a))));if(e)for(e.lastIndex=0;null!==(c=e.exec(a));){const a=c.index,d=c[0];if("\n"===d)g++,h=a+1;else{if(i!==a){let b;if(j===g){const c=a-i;if(c<k.length)b=k[c];else{const a=(0,L.qe)(0,c);b=new ab(a,0,-1,N.getEmpty(),new Z(a))}}else{const c=g-j,d=a-h;if(1===c&&d<l.length)b=l[d];else{const a=(0,L.qe)(c,d);b=new ab(a,0,-1,N.getEmpty(),new Z(a))}}f.push(b)}f.push(b.getToken(d)),i=a+d.length,j=g}}const m=a.length;if(i!==m){const a=j===g?(0,L.qe)(0,m-i):(0,L.qe)(g-j,m-h);f.push(new ab(a,0,-1,N.getEmpty(),new Z(a)))}this.length=(0,L.qe)(g,m-h),this.tokens=f}get offset(){return this._offset}read(){return this.tokens[this.idx++]||null}peek(){return this.tokens[this.idx]||null}skip(a){throw new k.EM}}class af{static createFromLanguage(a,b){function c(a){return b.getKey(`${a.languageId}:::${a.bracketText}`)}let d=new Map;for(let b of a.bracketsNew.openingBrackets){let a=(0,L.qe)(0,b.bracketText.length),e=c(b),f=N.getEmpty().add(e,O);d.set(b.bracketText,new ab(a,1,e,f,$.create(a,b,f)))}for(let b of a.bracketsNew.closingBrackets){let a=(0,L.qe)(0,b.bracketText.length),e=N.getEmpty(),f=b.getOpeningBrackets();for(let a of f)e=e.add(c(a),O);d.set(b.bracketText,new ab(a,2,c(f[0]),e,$.create(a,b,e)))}return new af(d)}constructor(a){this.map=a,this.hasRegExp=!1,this._regExpGlobal=null}getRegExpStr(){if(this.isEmpty)return null;{let a=[...this.map.keys()];return a.sort(),a.reverse(),a.map(a=>{var b;let c;return b=a,c=(0,n.bm)(b),/^[\w ]+/.test(b)&&(c=`\\b${c}`),/[\w ]+$/.test(b)&&(c=`${c}\\b`),c}).join("|")}}get regExpGlobal(){if(!this.hasRegExp){let a=this.getRegExpStr();this._regExpGlobal=a?RegExp(a,"gi"):null,this.hasRegExp=!0}return this._regExpGlobal}getToken(a){return this.map.get(a.toLowerCase())}findClosingTokenText(a){for(let[b,c]of this.map)if(2===c.kind&&c.bracketIds.intersects(a))return b}get isEmpty(){return 0===this.map.size}}class ag{constructor(a,b){this.denseKeyProvider=a,this.getLanguageConfiguration=b,this.languageIdToBracketTokens=new Map}didLanguageChange(a){return this.languageIdToBracketTokens.has(a)}getSingleLanguageBracketTokens(a){let b=this.languageIdToBracketTokens.get(a);return b||(b=af.createFromLanguage(this.getLanguageConfiguration(a),this.denseKeyProvider),this.languageIdToBracketTokens.set(a,b)),b}}function ah(a,b=!1){if(0===a.length)return null;if(1===a.length)return a[0];let c=a.length;for(;c>3;){let d=c>>1;for(let e=0;e<d;e++){let d=e<<1;a[e]=S.create23(a[d],a[d+1],d+3===c?a[d+2]:null,b)}c=d}return S.create23(a[0],a[1],c>=3?a[2]:null,b)}function ai(a,b){return Math.abs(a.listHeight-b.listHeight)}function aj(a,b){return a.listHeight===b.listHeight?S.create23(a,b,null,!1):a.listHeight>b.listHeight?function(a,b){let c,d=a=a.toMutable(),e=[];for(;;){if(b.listHeight===d.listHeight){c=b;break}if(4!==d.kind)throw Error("unexpected");e.push(d),d=d.makeLastElementMutable()}for(let a=e.length-1;a>=0;a--){let b=e[a];c?b.childrenLength>=3?c=S.create23(b.unappendChild(),c,null,!1):(b.appendChildOfSameHeight(c),c=void 0):b.handleChildrenChanged()}return c?S.create23(a,c,null,!1):a}(a,b):function(a,b){let c=a=a.toMutable(),d=[];for(;b.listHeight!==c.listHeight;){if(4!==c.kind)throw Error("unexpected");d.push(c),c=c.makeFirstElementMutable()}let e=b;for(let a=d.length-1;a>=0;a--){let b=d[a];e?b.childrenLength>=3?e=S.create23(e,b.unprependChild(),null,!1):(b.prependChildOfSameHeight(e),e=void 0):b.handleChildrenChanged()}return e?S.create23(e,a,null,!1):a}(b,a)}class ak{constructor(a){this.lastOffset=L.Vp,this.nextNodes=[a],this.offsets=[L.Vp],this.idxs=[]}readLongestNodeAt(a,b){if((0,L.zG)(a,this.lastOffset))throw Error("Invalid offset");for(this.lastOffset=a;;){let c=am(this.nextNodes);if(!c)return;let d=am(this.offsets);if((0,L.zG)(a,d))return;if((0,L.zG)(d,a))if((0,L.QB)(d,c.length)<=a)this.nextNodeAfterCurrent();else{let a=al(c);-1!==a?(this.nextNodes.push(c.getChild(a)),this.offsets.push(d),this.idxs.push(a)):this.nextNodeAfterCurrent()}else{if(b(c))return this.nextNodeAfterCurrent(),c;let a=al(c);if(-1===a)return void this.nextNodeAfterCurrent();this.nextNodes.push(c.getChild(a)),this.offsets.push(d),this.idxs.push(a)}}}nextNodeAfterCurrent(){for(;;){let a=am(this.offsets),b=am(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),0===this.idxs.length)break;let c=am(this.nextNodes),d=al(c,this.idxs[this.idxs.length-1]);if(-1!==d){this.nextNodes.push(c.getChild(d)),this.offsets.push((0,L.QB)(a,b.length)),this.idxs[this.idxs.length-1]=d;break}this.idxs.pop()}}}function al(a,b=-1){for(;;){if(++b>=a.childrenLength)return -1;if(a.getChild(b))return b}}function am(a){return a.length>0?a[a.length-1]:void 0}function an(a,b,c,d){return new ao(a,b,c,d).parseDocument()}class ao{constructor(a,b,c,d){if(this.tokenizer=a,this.createImmutableLists=d,this._itemsConstructed=0,this._itemsFromCache=0,c&&d)throw Error("Not supported");this.oldNodeReader=c?new ak(c):void 0,this.positionMapper=new J.W(b)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let a=this.parseList(N.getEmpty(),0);return a||(a=S.getEmpty()),a}parseList(a,b){let c=[];for(;;){let d=this.tryReadChildFromCache(a);if(!d){let c=this.tokenizer.peek();if(!c||2===c.kind&&c.bracketIds.intersects(a))break;d=this.parseChild(a,b+1)}(4!==d.kind||0!==d.childrenLength)&&c.push(d)}return this.oldNodeReader?function(a){if(0===a.length)return null;if(1===a.length)return a[0];let b=0;function c(){if(b>=a.length)return null;let c=b,d=a[c].listHeight;for(b++;b<a.length&&a[b].listHeight===d;)b++;return b-c>=2?ah(0===c&&b===a.length?a:a.slice(c,b),!1):a[c]}let d=c(),e=c();if(!e)return d;for(let a=c();a;a=c())ai(d,e)<=ai(e,a)?(d=aj(d,e),e=a):e=aj(e,a);return aj(d,e)}(c):ah(c,this.createImmutableLists)}tryReadChildFromCache(a){if(this.oldNodeReader){let b=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(null===b||!(0,L.Vh)(b)){let c=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),c=>(null===b||!!(0,L.zG)(c.length,b))&&c.canBeReused(a));if(c)return this._itemsFromCache++,this.tokenizer.skip(c.length),c}}}parseChild(a,b){this._itemsConstructed++;let c=this.tokenizer.read();switch(c.kind){case 2:return new _(c.bracketIds,c.length);case 0:return c.astNode;case 1:{if(b>300)return new Z(c.length);let d=a.merge(c.bracketIds),e=this.parseList(d,b+1),f=this.tokenizer.peek();if(f&&2===f.kind&&(f.bracketId===c.bracketId||f.bracketIds.intersects(c.bracketIds)))return this.tokenizer.read(),R.create(c.astNode,e,f.astNode);return R.create(c.astNode,e,null)}default:throw Error("unexpected")}}}var ap=c(20165);class aq extends m.jG{didLanguageChange(a){return this.brackets.didLanguageChange(a)}constructor(a,b){if(super(),this.textModel=a,this.getLanguageConfiguration=b,this.didChangeEmitter=this._register(new l.vl),this.denseKeyProvider=new P,this.brackets=new ag(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],a.tokenization.hasTokens)2===a.tokenization.backgroundTokenizationState?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{const a=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),b=new ae(this.textModel.getValue(),a);this.initialAstWithoutTokens=an(b,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(2===this.textModel.tokenization.backgroundTokenizationState){let a=void 0===this.initialAstWithoutTokens;this.initialAstWithoutTokens=void 0,a||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:a}){let b=a.map(a=>new J.c((0,L.qe)(a.fromLineNumber-1,0),(0,L.qe)(a.toLineNumber,0),(0,L.qe)(a.toLineNumber-a.fromLineNumber+1,0)));this.handleEdits(b,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(a){let b=J.c.fromModelContentChanges(a.changes);this.handleEdits(b,!1)}handleEdits(a,b){let c=(0,ap.M)(this.queuedTextEdits,a);this.queuedTextEdits=c,this.initialAstWithoutTokens&&!b&&(this.queuedTextEditsForInitialAstWithoutTokens=(0,ap.M)(this.queuedTextEditsForInitialAstWithoutTokens,a))}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(a,b,c){return an(new ac(this.textModel,this.brackets),a,b,c)}getBracketsInRange(a,b){this.flushQueue();let c=(0,L.qe)(a.startLineNumber-1,a.startColumn-1),d=(0,L.qe)(a.endLineNumber-1,a.endColumn-1);return new h.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens;!function a(b,c,d,e,f,g,h,i,j,k,l=!1){if(h>200)return!0;a:for(;;)switch(b.kind){case 4:{let i=b.childrenLength;for(let l=0;l<i;l++){let i=b.getChild(l);if(i){if(d=(0,L.QB)(c,i.length),(0,L.vr)(c,f)&&(0,L.o0)(d,e)){if((0,L.o0)(d,f)){b=i;continue a}if(!a(i,c,d,e,f,g,h,0,j,k))return!1}c=d}}return!0}case 2:{let l=!k||!b.closingBracket||b.closingBracket.bracketInfo.closesColorized(b.openingBracket.bracketInfo),m=0;if(j){let a=j.get(b.openingBracket.text);void 0===a&&(a=0),m=a,l&&(a++,j.set(b.openingBracket.text,a))}let n=b.childrenLength;for(let o=0;o<n;o++){let n=b.getChild(o);if(n){if(d=(0,L.QB)(c,n.length),(0,L.vr)(c,f)&&(0,L.o0)(d,e)){if((0,L.o0)(d,f)&&1!==n.kind){b=n,l?(h++,i=m+1):i=m;continue a}if((l||1!==n.kind||!b.closingBracket)&&!a(n,c,d,e,f,g,l?h+1:h,l?m+1:m,j,k,!b.closingBracket))return!1}c=d}}return j?.set(b.openingBracket.text,m),!0}case 3:return g(new G((0,L.Qx)(c,d),h-1,0,!0));case 1:return g(new G((0,L.Qx)(c,d),h-1,i-1,l));case 0:return!0}}(e,L.Vp,e.length,c,d,a,0,0,new Map,b)})}getBracketPairsInRange(a,b){this.flushQueue();let c=(0,L.VL)(a.getStartPosition()),d=(0,L.VL)(a.getEndPosition());return new h.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens,f=new ar(a,b,this.textModel);!function a(b,c,d,e,f,g,h,i){if(h>200)return!0;let j=!0;if(2===b.kind){let k=0;if(i){let a=i.get(b.openingBracket.text);void 0===a&&(a=0),k=a,a++,i.set(b.openingBracket.text,a)}let l=(0,L.QB)(c,b.openingBracket.length),m=-1;if(g.includeMinIndentation&&(m=b.computeMinIndentation(c,g.textModel)),j=g.push(new I((0,L.Qx)(c,d),(0,L.Qx)(c,l),b.closingBracket?(0,L.Qx)((0,L.QB)(l,b.child?.length||L.Vp),d):void 0,h,k,b,m)),c=l,j&&b.child){let k=b.child;if(d=(0,L.QB)(c,k.length),(0,L.vr)(c,f)&&(0,L.o0)(d,e)&&!(j=a(k,c,d,e,f,g,h+1,i)))return!1}i?.set(b.openingBracket.text,k)}else{let d=c;for(let c of b.children){let b=d;if(d=(0,L.QB)(d,c.length),(0,L.vr)(b,f)&&(0,L.vr)(e,d)&&!(j=a(c,b,d,e,f,g,h,i)))return!1}}return j}(e,L.Vp,e.length,c,d,f,0,new Map)})}getFirstBracketAfter(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind)for(let f of b.children){if(d=(0,L.QB)(c,f.length),(0,L.zG)(e,d)){let b=a(f,c,d,e);if(b)return b}c=d}else if(3===b.kind);else if(1===b.kind){let a=(0,L.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,L.Vp,b.length,(0,L.VL)(a))}getFirstBracketBefore(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind){let f=[];for(let a of b.children)d=(0,L.QB)(c,a.length),f.push({nodeOffsetStart:c,nodeOffsetEnd:d}),c=d;for(let c=f.length-1;c>=0;c--){let{nodeOffsetStart:d,nodeOffsetEnd:g}=f[c];if((0,L.zG)(d,e)){let f=a(b.children[c],d,g,e);if(f)return f}}}else if(3===b.kind);else if(1===b.kind){let a=(0,L.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,L.Vp,b.length,(0,L.VL)(a))}}class ar{constructor(a,b,c){this.push=a,this.includeMinIndentation=b,this.textModel=c}}class as extends m.jG{get canBuildAST(){return 5e6>=this.textModel.getValueLength()}constructor(a,b){super(),this.textModel=a,this.languageConfigurationService=b,this.bracketPairsTree=this._register(new m.HE),this.onDidChangeEmitter=this._register(new l.vl),this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(a){(!a.languageId||this.bracketPairsTree.value?.object.didLanguageChange(a.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(a){this.bracketPairsTree.value?.object.handleContentChanged(a)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(a){this.bracketPairsTree.value?.object.handleDidChangeTokens(a)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){var a,b;let c=new m.Cm;this.bracketPairsTree.value=(a=c.add(new aq(this.textModel,a=>this.languageConfigurationService.getLanguageConfiguration(a))),b=c,{object:a,dispose:()=>b?.dispose()}),c.add(this.bracketPairsTree.value.object.onDidChange(a=>this.onDidChangeEmitter.fire(a))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!1)||h.c1.empty}getBracketPairsInRangeWithMinIndentation(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!0)||h.c1.empty}getBracketsInRange(a,b=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(a,b)||h.c1.empty}findMatchingBracketUp(a,b,c){let d=this.textModel.validatePosition(b),e=this.textModel.getLanguageIdAtPosition(d.lineNumber,d.column);if(this.canBuildAST){let c=this.languageConfigurationService.getLanguageConfiguration(e).bracketsNew.getClosingBracketInfo(a);if(!c)return null;let d=this.getBracketPairsInRange(w.Q.fromPositions(b,b)).findLast(a=>c.closes(a.openingBracketInfo));return d?d.openingBracketRange:null}{let b=a.toLowerCase(),f=this.languageConfigurationService.getLanguageConfiguration(e).brackets;if(!f)return null;let g=f.textIsBracket[b];return g?av(this._findMatchingBracketUp(g,d,at(c))):null}}matchBracket(a,b){if(this.canBuildAST){let b=this.getBracketPairsInRange(w.Q.fromPositions(a,a)).filter(b=>void 0!==b.closingBracketRange&&(b.openingBracketRange.containsPosition(a)||b.closingBracketRange.containsPosition(a))).findLastMaxBy((0,h.VE)(b=>b.openingBracketRange.containsPosition(a)?b.openingBracketRange:b.closingBracketRange,w.Q.compareRangesUsingStarts));return b?[b.openingBracketRange,b.closingBracketRange]:null}{let c=at(b);return this._matchBracket(this.textModel.validatePosition(a),c)}}_establishBracketSearchOffsets(a,b,c,d){let e=b.getCount(),f=b.getLanguageId(d),g=Math.max(0,a.column-1-c.maxBracketLength);for(let a=d-1;a>=0;a--){let c=b.getEndOffset(a);if(c<=g)break;if((0,E.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){g=c;break}}let h=Math.min(b.getLineContent().length,a.column-1+c.maxBracketLength);for(let a=d+1;a<e;a++){let c=b.getStartOffset(a);if(c>=h)break;if((0,E.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){h=c;break}}return{searchStartOffset:g,searchEndOffset:h}}_matchBracket(a,b){let c=a.lineNumber,d=this.textModel.tokenization.getLineTokens(c),e=this.textModel.getLineContent(c),f=d.findTokenIndexAtOffset(a.column-1);if(f<0)return null;let g=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(f)).brackets;if(g&&!(0,E.Yo)(d.getStandardTokenType(f))){let{searchStartOffset:h,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,g,f),j=null;for(;;){let d=F.Fu.findNextBracketInRange(g.forwardRegex,c,e,h,i);if(!d)break;if(d.startColumn<=a.column&&a.column<=d.endColumn){let a=e.substring(d.startColumn-1,d.endColumn-1).toLowerCase(),c=this._matchFoundBracket(d,g.textIsBracket[a],g.textIsOpenBracket[a],b);if(c){if(c instanceof au)return null;j=c}}h=d.endColumn-1}if(j)return j}if(f>0&&d.getStartOffset(f)===a.column-1){let g=f-1,h=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(g)).brackets;if(h&&!(0,E.Yo)(d.getStandardTokenType(g))){let{searchStartOffset:f,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,h,g),j=F.Fu.findPrevBracketInRange(h.reversedRegex,c,e,f,i);if(j&&j.startColumn<=a.column&&a.column<=j.endColumn){let a=e.substring(j.startColumn-1,j.endColumn-1).toLowerCase(),c=this._matchFoundBracket(j,h.textIsBracket[a],h.textIsOpenBracket[a],b);if(c)return c instanceof au?null:c}}}return null}_matchFoundBracket(a,b,c,d){if(!b)return null;let e=c?this._findMatchingBracketDown(b,a.getEndPosition(),d):this._findMatchingBracketUp(b,a.getStartPosition(),d);return e?e instanceof au?e:[a,e]:null}_findMatchingBracketUp(a,b,c){let d=a.languageId,e=a.reversedRegex,f=-1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return au.INSTANCE;let j=F.Fu.findPrevBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;i=j.startColumn-1}return null};for(let a=b.lineNumber;a>=1;a--){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=e-1,i=f.length,j=f.length;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g>=0;g--){let b=c.getLanguageId(g)===d&&!(0,E.Yo)(c.getStandardTokenType(g));if(b)k?i=c.getStartOffset(g):(i=c.getStartOffset(g),j=c.getEndOffset(g));else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}_findMatchingBracketDown(a,b,c){let d=a.languageId,e=a.forwardRegex,f=1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return au.INSTANCE;let j=F.Fu.findNextBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;h=j.endColumn-1}return null},i=this.textModel.getLineCount();for(let a=b.lineNumber;a<=i;a++){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=0,i=0,j=0;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g<e;g++){let b=c.getLanguageId(g)===d&&!(0,E.Yo)(c.getStandardTokenType(g));if(b)k||(i=c.getStartOffset(g)),j=c.getEndOffset(g);else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}findPrevBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketBefore(b)||null;let c=null,d=null,e=null;for(let a=b.lineNumber;a>=1;a--){let f=this.textModel.tokenization.getLineTokens(a),g=f.getCount(),h=this.textModel.getLineContent(a),i=g-1,j=h.length,k=h.length;if(a===b.lineNumber){i=f.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=f.getLanguageId(i);c!==a&&(c=a,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew)}let l=!0;for(;i>=0;i--){let b=f.getLanguageId(i);if(c!==b){if(d&&e&&l&&j!==k){let b=F.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b);l=!1}c=b,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew}let g=!!d&&!(0,E.Yo)(f.getStandardTokenType(i));if(g)l?j=f.getStartOffset(i):(j=f.getStartOffset(i),k=f.getEndOffset(i));else if(e&&d&&l&&j!==k){let b=F.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}l=g}if(e&&d&&l&&j!==k){let b=F.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}}return null}findNextBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(b)||null;let c=this.textModel.getLineCount(),d=null,e=null,f=null;for(let a=b.lineNumber;a<=c;a++){let c=this.textModel.tokenization.getLineTokens(a),g=c.getCount(),h=this.textModel.getLineContent(a),i=0,j=0,k=0;if(a===b.lineNumber){i=c.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=c.getLanguageId(i);d!==a&&(d=a,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew)}let l=!0;for(;i<g;i++){let b=c.getLanguageId(i);if(d!==b){if(f&&e&&l&&j!==k){let b=F.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b);l=!1}d=b,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew}let g=!!e&&!(0,E.Yo)(c.getStandardTokenType(i));if(g)l||(j=c.getStartOffset(i)),k=c.getEndOffset(i);else if(f&&e&&l&&j!==k){let b=F.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}l=g}if(f&&e&&l&&j!==k){let b=F.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}}return null}findEnclosingBrackets(a,b){let c=this.textModel.validatePosition(a);if(this.canBuildAST){let a=w.Q.fromPositions(c),b=this.getBracketPairsInRange(w.Q.fromPositions(c,c)).findLast(b=>void 0!==b.closingBracketRange&&b.range.strictContainsRange(a));return b?[b.openingBracketRange,b.closingBracketRange]:null}let d=at(b),e=this.textModel.getLineCount(),f=new Map,g=[],h=(a,b)=>{if(!f.has(a)){let c=[];for(let a=0,d=b?b.brackets.length:0;a<d;a++)c[a]=0;f.set(a,c)}g=f.get(a)},i=0,j=(a,b,c,e,f)=>{for(;;){if(d&&++i%100==0&&!d())return au.INSTANCE;let h=F.Fu.findNextBracketInRange(a.forwardRegex,b,c,e,f);if(!h)break;let j=c.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),k=a.textIsBracket[j];if(k&&(k.isOpen(j)?g[k.index]++:k.isClose(j)&&g[k.index]--,-1===g[k.index]))return this._matchFoundBracket(h,k,!1,d);e=h.endColumn-1}return null},k=null,l=null;for(let a=c.lineNumber;a<=e;a++){let b=this.textModel.tokenization.getLineTokens(a),d=b.getCount(),e=this.textModel.getLineContent(a),f=0,g=0,i=0;if(a===c.lineNumber){f=b.findTokenIndexAtOffset(c.column-1),g=c.column-1,i=c.column-1;let a=b.getLanguageId(f);k!==a&&(k=a,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l))}let m=!0;for(;f<d;f++){let c=b.getLanguageId(f);if(k!==c){if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return av(b);m=!1}k=c,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l)}let d=!!l&&!(0,E.Yo)(b.getStandardTokenType(f));if(d)m||(g=b.getStartOffset(f)),i=b.getEndOffset(f);else if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return av(b)}m=d}if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return av(b)}}return null}_toFoundBracket(a,b){if(!b)return null;let c=this.textModel.getValueInRange(b);c=c.toLowerCase();let d=a.getBracketInfo(c);return d?{range:b,bracketInfo:d}:null}}function at(a){if(void 0===a)return()=>!0;{let b=Date.now();return()=>Date.now()-b<=a}}class au{static{this.INSTANCE=new au}constructor(){this._searchCanceledBrand=void 0}}function av(a){return a instanceof au?null:a}var aw=c(39924),ax=c(46547);class ay extends m.jG{constructor(a){super(),this.textModel=a,this.colorProvider=new az,this.onDidChangeEmitter=this._register(new l.vl),this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=a.getOptions().bracketPairColorizationOptions,this._register(a.bracketPairs.onDidChange(a=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(a){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(a,b,c,d,e){return e||void 0===b||!this.colorizationOptions.enabled?[]:this.textModel.bracketPairs.getBracketsInRange(a,!0).map(a=>({id:`bracket${a.range.toString()}-${a.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(a,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:a.range})).toArray()}getAllDecorations(a,b,c){return void 0!==a&&this.colorizationOptions.enabled?this.getDecorationsInRange(new w.Q(1,1,this.textModel.getLineCount(),1),a,b,c):[]}}class az{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(a,b){return a.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(b?a.nestingLevelOfEqualBracketType:a.nestingLevel)}getInlineClassNameOfLevel(a){return`bracket-highlighting-${a%30}`}}(0,ax.zy)((a,b)=>{let c=[aw.sN,aw.lQ,aw.ss,aw.l5,aw.sH,aw.zp],d=new az;b.addRule(`.monaco-editor .${d.unexpectedClosingBracketClassName} { color: ${a.getColor(aw.s7)}; }`);let e=c.map(b=>a.getColor(b)).filter(a=>!!a).filter(a=>!a.isTransparent());for(let a=0;a<30;a++){let c=e[a%e.length];b.addRule(`.monaco-editor .${d.getInlineClassNameOfLevel(a)} { color: ${c}; }`)}});var aA=c(2097),aB=c(42491);class aC{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}function aD(a,b,c){let d=Math.min(a.getLineCount(),1e4),e=0,f=0,g="",h=0,i=[0,0,0,0,0,0,0,0,0],j=new aC;for(let k=1;k<=d;k++){let d=a.getLineLength(k),l=a.getLineContent(k),m=d<=65536,n=!1,o=0,p=0,q=0;for(let b=0;b<d;b++){let c=m?l.charCodeAt(b):a.getLineCharCode(k,b);if(9===c)q++;else if(32===c)p++;else{n=!0,o=b;break}}if(!n||(q>0?e++:p>1&&f++,!function(a,b,c,d,e){let f;for(e.spacesDiff=0,e.looksLikeAlignment=!1,f=0;f<b&&f<d&&a.charCodeAt(f)===c.charCodeAt(f);f++);let g=0,h=0;for(let c=f;c<b;c++)32===a.charCodeAt(c)?g++:h++;let i=0,j=0;for(let a=f;a<d;a++)32===c.charCodeAt(a)?i++:j++;if(g>0&&h>0||i>0&&j>0)return;let k=Math.abs(h-j),l=Math.abs(g-i);if(0===k){e.spacesDiff=l,l>0&&0<=i-1&&i-1<a.length&&i<c.length&&32!==c.charCodeAt(i)&&32===a.charCodeAt(i-1)&&44===a.charCodeAt(a.length-1)&&(e.looksLikeAlignment=!0);return}l%k==0&&(e.spacesDiff=l/k)}(g,h,l,o,j),j.looksLikeAlignment&&!(c&&b===j.spacesDiff)))continue;let r=j.spacesDiff;r<=8&&i[r]++,g=l,h=o}let k=c;e!==f&&(k=e<f);let l=b;if(k){let a=0;[2,4,6,8,3,5,7].forEach(b=>{let c=i[b];c>a&&(a=c,l=b)}),4===l&&i[4]>0&&i[2]>0&&i[2]>=2*i[4]/3&&(l=2)}return{insertSpaces:k,tabSize:l}}function aE(a){return(1&a.metadata)>>>0}function aF(a,b){a.metadata=254&a.metadata|b}function aG(a){return(2&a.metadata)>>>1==1}function aH(a,b){a.metadata=253&a.metadata|!!b<<1}function aI(a){return(4&a.metadata)>>>2==1}function aJ(a,b){a.metadata=251&a.metadata|!!b<<2}function aK(a){return(64&a.metadata)>>>6==1}function aL(a,b){a.metadata=191&a.metadata|!!b<<6}function aM(a){return(128&a.metadata)>>>7==1}function aN(a,b){a.metadata=127&a.metadata|!!b<<7}function aO(a,b){a.metadata=231&a.metadata|b<<3}function aP(a,b){a.metadata=223&a.metadata|!!b<<5}class aQ{constructor(a,b,c){this.metadata=0,this.parent=this,this.left=this,this.right=this,aF(this,1),this.start=b,this.end=c,this.delta=0,this.maxEnd=c,this.id=a,this.ownerId=0,this.options=null,aJ(this,!1),aL(this,!1),aO(this,1),aP(this,!1),aN(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=null,aH(this,!1)}reset(a,b,c,d){this.start=b,this.end=c,this.maxEnd=c,this.cachedVersionId=a,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=d}setOptions(a){this.options=a;let b=this.options.className;aJ(this,"squiggly-error"===b||"squiggly-warning"===b||"squiggly-info"===b),aL(this,null!==this.options.glyphMarginClassName),aO(this,this.options.stickiness),aP(this,this.options.collapseOnReplaceEdit),aN(this,this.options.affectsFont??!1)}setCachedOffsets(a,b,c){this.cachedVersionId!==c&&(this.range=null),this.cachedVersionId=c,this.cachedAbsoluteStart=a,this.cachedAbsoluteEnd=b}detach(){this.parent=null,this.left=null,this.right=null}}let aR=new aQ(null,0,0);aR.parent=aR,aR.left=aR,aR.right=aR,aF(aR,0);class aS{constructor(){this.root=aR,this.requestNormalizeDelta=!1}intervalSearch(a,b,c,d,e,f,g){return this.root===aR?[]:function(a,b,c,d,e,f,g,h){let i=a.root,j=0,k=0,l=0,m=[],n=0;for(;i!==aR;){if(aG(i)){aH(i.left,!1),aH(i.right,!1),i===i.parent.right&&(j-=i.parent.delta),i=i.parent;continue}if(!aG(i.left)){if(j+i.maxEnd<b){aH(i,!0);continue}if(i.left!==aR){i=i.left;continue}}if((k=j+i.start)>c){aH(i,!0);continue}if((l=j+i.end)>=b){i.setCachedOffsets(k,l,g);let a=!0;d&&i.ownerId&&i.ownerId!==d&&(a=!1),e&&aI(i)&&(a=!1),f&&aM(i)&&(a=!1),h&&!aK(i)&&(a=!1),a&&(m[n++]=i)}if(aH(i,!0),i.right!==aR&&!aG(i.right)){j+=i.delta,i=i.right;continue}}return aH(a.root,!1),m}(this,a,b,c,d,e,f,g)}search(a,b,c,d,e){return this.root===aR?[]:function(a,b,c,d,e,f){let g=a.root,h=0,i=0,j=0,k=[],l=0;for(;g!==aR;){if(aG(g)){aH(g.left,!1),aH(g.right,!1),g===g.parent.right&&(h-=g.parent.delta),g=g.parent;continue}if(g.left!==aR&&!aG(g.left)){g=g.left;continue}i=h+g.start,j=h+g.end,g.setCachedOffsets(i,j,e);let a=!0;if(b&&g.ownerId&&g.ownerId!==b&&(a=!1),c&&aI(g)&&(a=!1),d&&aM(g)&&(a=!1),f&&!aK(g)&&(a=!1),a&&(k[l++]=g),aH(g,!0),g.right!==aR&&!aG(g.right)){h+=g.delta,g=g.right;continue}}return aH(a.root,!1),k}(this,a,b,c,d,e)}collectNodesFromOwner(a){return function(a,b){let c=a.root,d=[],e=0;for(;c!==aR;){if(aG(c)){aH(c.left,!1),aH(c.right,!1),c=c.parent;continue}if(c.left!==aR&&!aG(c.left)){c=c.left;continue}if(c.ownerId===b&&(d[e++]=c),aH(c,!0),c.right!==aR&&!aG(c.right)){c=c.right;continue}}return aH(a.root,!1),d}(this,a)}collectNodesPostOrder(){return function(a){let b=a.root,c=[],d=0;for(;b!==aR;){if(aG(b)){aH(b.left,!1),aH(b.right,!1),b=b.parent;continue}if(b.left!==aR&&!aG(b.left)){b=b.left;continue}if(b.right!==aR&&!aG(b.right)){b=b.right;continue}c[d++]=b,aH(b,!0)}return aH(a.root,!1),c}(this)}insert(a){aU(this,a),this._normalizeDeltaIfNecessary()}delete(a){aV(this,a),this._normalizeDeltaIfNecessary()}resolveNode(a,b){let c=a,d=0;for(;a!==this.root;)a===a.parent.right&&(d+=a.parent.delta),a=a.parent;let e=c.start+d,f=c.end+d;c.setCachedOffsets(e,f,b)}acceptReplace(a,b,c,d){let e=function(a,b,c){let d=a.root,e=0,f=0,g=0,h=[],i=0;for(;d!==aR;){if(aG(d)){aH(d.left,!1),aH(d.right,!1),d===d.parent.right&&(e-=d.parent.delta),d=d.parent;continue}if(!aG(d.left)){if(e+d.maxEnd<b){aH(d,!0);continue}if(d.left!==aR){d=d.left;continue}}if((f=e+d.start)>c){aH(d,!0);continue}if((g=e+d.end)>=b&&(d.setCachedOffsets(f,g,0),h[i++]=d),aH(d,!0),d.right!==aR&&!aG(d.right)){e+=d.delta,d=d.right;continue}}return aH(a.root,!1),h}(this,a,a+b);for(let a=0,b=e.length;a<b;a++)aV(this,e[a]);this._normalizeDeltaIfNecessary(),function(a,b,c,d){let e=a.root,f=0,g=d-(c-b);for(;e!==aR;){if(aG(e)){aH(e.left,!1),aH(e.right,!1),e===e.parent.right&&(f-=e.parent.delta),a$(e),e=e.parent;continue}if(!aG(e.left)){if(f+e.maxEnd<b){aH(e,!0);continue}if(e.left!==aR){e=e.left;continue}}if(f+e.start>c){e.start+=g,e.end+=g,e.delta+=g,(e.delta<-0x40000000||e.delta>0x40000000)&&(a.requestNormalizeDelta=!0),aH(e,!0);continue}if(aH(e,!0),e.right!==aR&&!aG(e.right)){f+=e.delta,e=e.right;continue}}aH(a.root,!1)}(this,a,a+b,c),this._normalizeDeltaIfNecessary();for(let f=0,g=e.length;f<g;f++){let g=e[f];g.start=g.cachedAbsoluteStart,g.end=g.cachedAbsoluteEnd,function(a,b,c,d,e){let f=(24&a.metadata)>>>3,g=0===f||2===f,h=1===f||2===f,i=c-b,j=Math.min(i,d),k=a.start,l=!1,m=a.end,n=!1;b<=k&&m<=c&&(32&a.metadata)>>>5==1&&(a.start=b,l=!0,a.end=b,n=!0);{let a=e?1:2*(i>0);!l&&aT(k,g,b,a)&&(l=!0),!n&&aT(m,h,b,a)&&(n=!0)}if(j>0&&!e){let a=2*(i>d);!l&&aT(k,g,b+j,a)&&(l=!0),!n&&aT(m,h,b+j,a)&&(n=!0)}{let f=+!!e;!l&&aT(k,g,c,f)&&(a.start=b+d,l=!0),!n&&aT(m,h,c,f)&&(a.end=b+d,n=!0)}let o=d-i;l||(a.start=Math.max(0,k+o)),n||(a.end=Math.max(0,m+o)),a.start>a.end&&(a.end=a.start)}(g,a,a+b,c,d),g.maxEnd=g.end,aU(this,g)}this._normalizeDeltaIfNecessary()}_normalizeDeltaIfNecessary(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,function(a){let b=a.root,c=0;for(;b!==aR;){if(b.left!==aR&&!aG(b.left)){b=b.left;continue}if(b.right!==aR&&!aG(b.right)){c+=b.delta,b=b.right;continue}b.start=c+b.start,b.end=c+b.end,b.delta=0,a$(b),aH(b,!0),aH(b.left,!1),aH(b.right,!1),b===b.parent.right&&(c-=b.parent.delta),b=b.parent}aH(a.root,!1)}(this))}}function aT(a,b,c,d){return a<c||!(a>c)&&1!==d&&(2===d||b)}function aU(a,b){if(a.root===aR)return b.parent=aR,b.left=aR,b.right=aR,aF(b,0),a.root=b,a.root;(function(a,b){let c=0,d=a.root,e=b.start,f=b.end;for(;;){var g,h,i,j;if(0>(g=e,h=f,i=d.start+c,j=d.end+c,g===i?h-j:g-i))if(d.left===aR){b.start-=c,b.end-=c,b.maxEnd-=c,d.left=b;break}else d=d.left;else if(d.right===aR){b.start-=c+d.delta,b.end-=c+d.delta,b.maxEnd-=c+d.delta,d.right=b;break}else c+=d.delta,d=d.right}b.parent=d,b.left=aR,b.right=aR,aF(b,1)})(a,b),a_(b.parent);let c=b;for(;c!==a.root&&1===aE(c.parent);)if(c.parent===c.parent.parent.left){let b=c.parent.parent.right;1===aE(b)?(aF(c.parent,0),aF(b,0),aF(c.parent.parent,1),c=c.parent.parent):(c===c.parent.right&&aX(a,c=c.parent),aF(c.parent,0),aF(c.parent.parent,1),aY(a,c.parent.parent))}else{let b=c.parent.parent.left;1===aE(b)?(aF(c.parent,0),aF(b,0),aF(c.parent.parent,1),c=c.parent.parent):(c===c.parent.left&&aY(a,c=c.parent),aF(c.parent,0),aF(c.parent.parent,1),aX(a,c.parent.parent))}return aF(a.root,0),b}function aV(a,b){let c,d,e;if(b.left===aR?(c=b.right,d=b,c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta):b.right===aR?(c=b.left,d=b):(c=(d=function(a){for(;a.left!==aR;)a=a.left;return a}(b.right)).right,c.start+=d.delta,c.end+=d.delta,c.delta+=d.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),d.start+=b.delta,d.end+=b.delta,d.delta=b.delta,(d.delta<-0x40000000||d.delta>0x40000000)&&(a.requestNormalizeDelta=!0)),d===a.root){a.root=c,aF(c,0),b.detach(),aW(),a$(c),a.root.parent=aR;return}let f=1===aE(d);if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?c.parent=d.parent:(d.parent===b?c.parent=d:c.parent=d.parent,d.left=b.left,d.right=b.right,d.parent=b.parent,aF(d,aE(b)),b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==aR&&(d.left.parent=d),d.right!==aR&&(d.right.parent=d)),b.detach(),f){a_(c.parent),d!==b&&(a_(d),a_(d.parent)),aW();return}for(a_(c),a_(c.parent),d!==b&&(a_(d),a_(d.parent));c!==a.root&&0===aE(c);)c===c.parent.left?(1===aE(e=c.parent.right)&&(aF(e,0),aF(c.parent,1),aX(a,c.parent),e=c.parent.right),0===aE(e.left)&&0===aE(e.right)?(aF(e,1),c=c.parent):(0===aE(e.right)&&(aF(e.left,0),aF(e,1),aY(a,e),e=c.parent.right),aF(e,aE(c.parent)),aF(c.parent,0),aF(e.right,0),aX(a,c.parent),c=a.root)):(1===aE(e=c.parent.left)&&(aF(e,0),aF(c.parent,1),aY(a,c.parent),e=c.parent.left),0===aE(e.left)&&0===aE(e.right)?(aF(e,1),c=c.parent):(0===aE(e.left)&&(aF(e.right,0),aF(e,1),aX(a,e),e=c.parent.left),aF(e,aE(c.parent)),aF(c.parent,0),aF(e.left,0),aY(a,c.parent),c=a.root));aF(c,0),aW()}function aW(){aR.parent=aR,aR.delta=0,aR.start=0,aR.end=0}function aX(a,b){let c=b.right;c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta,b.right=c.left,c.left!==aR&&(c.left.parent=b),c.parent=b.parent,b.parent===aR?a.root=c:b===b.parent.left?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c,a$(b),a$(c)}function aY(a,b){let c=b.left;b.delta-=c.delta,(b.delta<-0x40000000||b.delta>0x40000000)&&(a.requestNormalizeDelta=!0),b.start-=c.delta,b.end-=c.delta,b.left=c.right,c.right!==aR&&(c.right.parent=b),c.parent=b.parent,b.parent===aR?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c,a$(b),a$(c)}function aZ(a){let b=a.end;if(a.left!==aR){let c=a.left.maxEnd;c>b&&(b=c)}if(a.right!==aR){let c=a.right.maxEnd+a.delta;c>b&&(b=c)}return b}function a$(a){a.maxEnd=aZ(a)}function a_(a){for(;a!==aR;){let b=aZ(a);if(a.maxEnd===b)return;a.maxEnd=b,a=a.parent}}class a0{constructor(a,b){this.piece=a,this.color=b,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==a1)return a2(this.right);let a=this;for(;a.parent!==a1&&a.parent.left!==a;)a=a.parent;return a.parent===a1?a1:a.parent}prev(){if(this.left!==a1)return a3(this.left);let a=this;for(;a.parent!==a1&&a.parent.right!==a;)a=a.parent;return a.parent===a1?a1:a.parent}detach(){this.parent=null,this.left=null,this.right=null}}let a1=new a0(null,0);function a2(a){for(;a.left!==a1;)a=a.left;return a}function a3(a){for(;a.right!==a1;)a=a.right;return a}function a4(a){return a===a1?0:a.size_left+a.piece.length+a4(a.right)}function a5(a){return a===a1?0:a.lf_left+a.piece.lineFeedCnt+a5(a.right)}function a6(){a1.parent=a1}function a7(a,b){let c=b.right;c.size_left+=b.size_left+(b.piece?b.piece.length:0),c.lf_left+=b.lf_left+(b.piece?b.piece.lineFeedCnt:0),b.right=c.left,c.left!==a1&&(c.left.parent=b),c.parent=b.parent,b.parent===a1?a.root=c:b.parent.left===b?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c}function a8(a,b){let c=b.left;b.left=c.right,c.right!==a1&&(c.right.parent=b),c.parent=b.parent,b.size_left-=c.size_left+(c.piece?c.piece.length:0),b.lf_left-=c.lf_left+(c.piece?c.piece.lineFeedCnt:0),b.parent===a1?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c}function a9(a,b){let c,d,e;if(c=b.left===a1?(d=b).right:b.right===a1?(d=b).left:(d=a2(b.right)).right,d===a.root){a.root=c,c.color=0,b.detach(),a6(),a.root.parent=a1;return}let f=1===d.color;if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?(c.parent=d.parent,bc(a,c)):(d.parent===b?c.parent=d:c.parent=d.parent,bc(a,c),d.left=b.left,d.right=b.right,d.parent=b.parent,d.color=b.color,b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==a1&&(d.left.parent=d),d.right!==a1&&(d.right.parent=d),d.size_left=b.size_left,d.lf_left=b.lf_left,bc(a,d)),b.detach(),c.parent.left===c){let b=a4(c),d=a5(c);if(b!==c.parent.size_left||d!==c.parent.lf_left){let e=b-c.parent.size_left,f=d-c.parent.lf_left;c.parent.size_left=b,c.parent.lf_left=d,bb(a,c.parent,e,f)}}if(bc(a,c.parent),f)return void a6();for(;c!==a.root&&0===c.color;)c===c.parent.left?(1===(e=c.parent.right).color&&(e.color=0,c.parent.color=1,a7(a,c.parent),e=c.parent.right),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.right.color&&(e.left.color=0,e.color=1,a8(a,e),e=c.parent.right),e.color=c.parent.color,c.parent.color=0,e.right.color=0,a7(a,c.parent),c=a.root)):(1===(e=c.parent.left).color&&(e.color=0,c.parent.color=1,a8(a,c.parent),e=c.parent.left),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.left.color&&(e.right.color=0,e.color=1,a7(a,e),e=c.parent.left),e.color=c.parent.color,c.parent.color=0,e.left.color=0,a8(a,c.parent),c=a.root));c.color=0,a6()}function ba(a,b){for(bc(a,b);b!==a.root&&1===b.parent.color;)if(b.parent===b.parent.parent.left){let c=b.parent.parent.right;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.right&&a7(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,a8(a,b.parent.parent))}else{let c=b.parent.parent.left;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.left&&a8(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,a7(a,b.parent.parent))}a.root.color=0}function bb(a,b,c,d){for(;b!==a.root&&b!==a1;)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}function bc(a,b){let c=0,d=0;if(b!==a.root){for(;b!==a.root&&b===b.parent.right;)b=b.parent;if(b!==a.root)for(c=a4((b=b.parent).left)-b.size_left,d=a5(b.left)-b.lf_left,b.size_left+=c,b.lf_left+=d;b!==a.root&&(0!==c||0!==d);)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}}a1.parent=a1,a1.left=a1,a1.right=a1,a1.color=0;var bd=c(19225);function be(a){let b;return(b=a[a.length-1]<65536?new Uint16Array(a.length):new Uint32Array(a.length)).set(a,0),b}class bf{constructor(a,b,c,d,e){this.lineStarts=a,this.cr=b,this.lf=c,this.crlf=d,this.isBasicASCII=e}}function bg(a,b=!0){let c=[0],d=1;for(let b=0,e=a.length;b<e;b++){let f=a.charCodeAt(b);13===f?b+1<e&&10===a.charCodeAt(b+1)?(c[d++]=b+2,b++):c[d++]=b+1:10===f&&(c[d++]=b+1)}return b?be(c):c}class bh{constructor(a,b,c,d,e){this.bufferIndex=a,this.start=b,this.end=c,this.lineFeedCnt=d,this.length=e}}class bi{constructor(a,b){this.buffer=a,this.lineStarts=b}}class bj{constructor(a,b){this._pieces=[],this._tree=a,this._BOM=b,this._index=0,a.root!==a1&&a.iterate(a.root,a=>(a!==a1&&this._pieces.push(a.piece),!0))}read(){if(0===this._pieces.length)if(0===this._index)return this._index++,this._BOM;else return null;return this._index>this._pieces.length-1?null:0===this._index?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class bk{constructor(a){this._limit=a,this._cache=[]}get(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartOffset<=a&&c.nodeStartOffset+c.node.piece.length>=a)return c}return null}get2(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartLineNumber&&c.nodeStartLineNumber<a&&c.nodeStartLineNumber+c.node.piece.lineFeedCnt>=a)return c}return null}set(a){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(a)}validate(a){let b=!1,c=this._cache;for(let d=0;d<c.length;d++){let e=c[d];if(null===e.node.parent||e.nodeStartOffset>=a){c[d]=null,b=!0;continue}}if(b){let a=[];for(let b of c)null!==b&&a.push(b);this._cache=a}}}class bl{constructor(a,b,c){this.create(a,b,c)}create(a,b,c){this._buffers=[new bi("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=a1,this._lineCnt=1,this._length=0,this._EOL=b,this._EOLLength=b.length,this._EOLNormalized=c;let d=null;for(let b=0,c=a.length;b<c;b++)if(a[b].buffer.length>0){a[b].lineStarts||(a[b].lineStarts=bg(a[b].buffer));let c=new bh(b+1,{line:0,column:0},{line:a[b].lineStarts.length-1,column:a[b].buffer.length-a[b].lineStarts[a[b].lineStarts.length-1]},a[b].lineStarts.length-1,a[b].buffer.length);this._buffers.push(a[b]),d=this.rbInsertRight(d,c)}this._searchCache=new bk(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(a){let b=65535-Math.floor(21845),c=2*b,d="",e=0,f=[];if(this.iterate(this.root,g=>{let h=this.getNodeContent(g),i=h.length;if(e<=b||e+i<c)return d+=h,e+=i,!0;let j=d.replace(/\r\n|\r|\n/g,a);return f.push(new bi(j,bg(j))),d=h,e=i,!0}),e>0){let b=d.replace(/\r\n|\r|\n/g,a);f.push(new bi(b,bg(b)))}this.create(f,a,!0)}getEOL(){return this._EOL}setEOL(a){this._EOL=a,this._EOLLength=this._EOL.length,this.normalizeEOL(a)}createSnapshot(a){return new bj(this,a)}getOffsetAt(a,b){let c=0,d=this.root;for(;d!==a1;)if(d.left!==a1&&d.lf_left+1>=a)d=d.left;else{if(d.lf_left+d.piece.lineFeedCnt+1>=a)return(c+=d.size_left)+(this.getAccumulatedValue(d,a-d.lf_left-2)+b-1);a-=d.lf_left+d.piece.lineFeedCnt,c+=d.size_left+d.piece.length,d=d.right}return c}getPositionAt(a){a=Math.max(0,a=Math.floor(a));let b=this.root,c=0,d=a;for(;b!==a1;)if(0!==b.size_left&&b.size_left>=a)b=b.left;else if(b.size_left+b.piece.length>=a){let e=this.getIndexOf(b,a-b.size_left);if(c+=b.lf_left+e.index,0===e.index){let a=d-this.getOffsetAt(c+1,1);return new v.y(c+1,a+1)}return new v.y(c+1,e.remainder+1)}else{if(a-=b.size_left+b.piece.length,c+=b.lf_left+b.piece.lineFeedCnt,b.right===a1){let b=this.getOffsetAt(c+1,1),e=d-a-b;return new v.y(c+1,e+1)}b=b.right}return new v.y(1,1)}getValueInRange(a,b){if(a.startLineNumber===a.endLineNumber&&a.startColumn===a.endColumn)return"";let c=this.nodeAt2(a.startLineNumber,a.startColumn),d=this.nodeAt2(a.endLineNumber,a.endColumn),e=this.getValueInRange2(c,d);return b?b===this._EOL&&this._EOLNormalized&&b===this.getEOL()&&this._EOLNormalized?e:e.replace(/\r\n|\r|\n/g,b):e}getValueInRange2(a,b){if(a.node===b.node){let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return d.substring(e+a.remainder,e+b.remainder)}let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start),f=d.substring(e+a.remainder,e+c.piece.length);for(c=c.next();c!==a1;){let a=this._buffers[c.piece.bufferIndex].buffer,d=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(c===b.node){f+=a.substring(d,d+b.remainder);break}f+=a.substr(d,c.piece.length),c=c.next()}return f}getLinesContent(){let a=[],b=0,c="",d=!1;return this.iterate(this.root,e=>{if(e===a1)return!0;let f=e.piece,g=f.length;if(0===g)return!0;let h=this._buffers[f.bufferIndex].buffer,i=this._buffers[f.bufferIndex].lineStarts,j=f.start.line,k=f.end.line,l=i[j]+f.start.column;if(d&&(10===h.charCodeAt(l)&&(l++,g--),a[b++]=c,c="",d=!1,0===g))return!0;if(j===k)return this._EOLNormalized||13!==h.charCodeAt(l+g-1)?c+=h.substr(l,g):(d=!0,c+=h.substr(l,g-1)),!0;c+=this._EOLNormalized?h.substring(l,Math.max(l,i[j+1]-this._EOLLength)):h.substring(l,i[j+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;for(let d=j+1;d<k;d++)c=this._EOLNormalized?h.substring(i[d],i[d+1]-this._EOLLength):h.substring(i[d],i[d+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;return this._EOLNormalized||13!==h.charCodeAt(i[k]+f.end.column-1)?c=h.substr(i[k],f.end.column):(d=!0,0===f.end.column?b--:c=h.substr(i[k],f.end.column-1)),!0}),d&&(a[b++]=c,c=""),a[b++]=c,a}getLength(){return this._length}getLineCount(){return this._lineCnt}getLineContent(a){return this._lastVisitedLine.lineNumber===a||(this._lastVisitedLine.lineNumber=a,a===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(a):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(a,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(a).replace(/(\r\n|\r|\n)$/,"")),this._lastVisitedLine.value}_getCharCode(a){if(a.remainder===a.node.piece.length){let b=a.node.next();if(!b)return 0;let c=this._buffers[b.piece.bufferIndex],d=this.offsetInBuffer(b.piece.bufferIndex,b.piece.start);return c.buffer.charCodeAt(d)}{let b=this._buffers[a.node.piece.bufferIndex],c=this.offsetInBuffer(a.node.piece.bufferIndex,a.node.piece.start)+a.remainder;return b.buffer.charCodeAt(c)}}getLineCharCode(a,b){let c=this.nodeAt2(a,b+1);return this._getCharCode(c)}getLineLength(a){if(a===this.getLineCount()){let b=this.getOffsetAt(a,1);return this.getLength()-b}return this.getOffsetAt(a+1,1)-this.getOffsetAt(a,1)-this._EOLLength}getNearestChunk(a){let b=this.nodeAt(a);if(b.remainder===b.node.piece.length){let a=b.node.next();if(!a||a===a1)return"";let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return c.buffer.substring(d,d+a.piece.length)}{let a=this._buffers[b.node.piece.bufferIndex],c=this.offsetInBuffer(b.node.piece.bufferIndex,b.node.piece.start),d=c+b.remainder,e=c+b.node.piece.length;return a.buffer.substring(d,e)}}findMatchesInNode(a,b,c,d,e,f,g,h,i,j,k){let l,m,n,o=this._buffers[a.piece.bufferIndex],p=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start),q=this.offsetInBuffer(a.piece.bufferIndex,e),r=this.offsetInBuffer(a.piece.bufferIndex,f),s={line:0,column:0};b._wordSeparators?(m=o.buffer.substring(q,r),n=a=>a+q,b.reset(0)):(m=o.buffer,n=a=>a,b.reset(q));do if(l=b.next(m)){if(n(l.index)>=r)return j;this.positionInBuffer(a,n(l.index)-p,s);let b=this.getLineFeedCnt(a.piece.bufferIndex,e,s),f=s.line===e.line?s.column-e.column+d:s.column+1,g=f+l[0].length;if(k[j++]=(0,bd.dr)(new w.Q(c+b,f,c+b,g),l,h),n(l.index)+l[0].length>=r)return j;if(j>=i)break}while(l);return j}findMatchesLineByLine(a,b,c,d){let e=[],f=0,g=new bd.W5(b.wordSeparators,b.regex),h=this.nodeAt2(a.startLineNumber,a.startColumn);if(null===h)return[];let i=this.nodeAt2(a.endLineNumber,a.endColumn);if(null===i)return[];let j=this.positionInBuffer(h.node,h.remainder),k=this.positionInBuffer(i.node,i.remainder);if(h.node===i.node)return this.findMatchesInNode(h.node,g,a.startLineNumber,a.startColumn,j,k,b,c,d,f,e),e;let l=a.startLineNumber,m=h.node;for(;m!==i.node;){let i=this.getLineFeedCnt(m.piece.bufferIndex,j,m.piece.end);if(i>=1){let h=this._buffers[m.piece.bufferIndex].lineStarts,k=this.offsetInBuffer(m.piece.bufferIndex,m.piece.start),n=h[j.line+i],o=l===a.startLineNumber?a.startColumn:1;if((f=this.findMatchesInNode(m,g,l,o,j,this.positionInBuffer(m,n-k),b,c,d,f,e))>=d)return e;l+=i}let k=l===a.startLineNumber?a.startColumn-1:0;if(l===a.endLineNumber){let h=this.getLineContent(l).substring(k,a.endColumn-1);return f=this._findMatchesInLine(b,g,h,a.endLineNumber,k,f,e,c,d),e}if((f=this._findMatchesInLine(b,g,this.getLineContent(l).substr(k),l,k,f,e,c,d))>=d)return e;l++,m=(h=this.nodeAt2(l,1)).node,j=this.positionInBuffer(h.node,h.remainder)}if(l===a.endLineNumber){let h=l===a.startLineNumber?a.startColumn-1:0,i=this.getLineContent(l).substring(h,a.endColumn-1);return f=this._findMatchesInLine(b,g,i,a.endLineNumber,h,f,e,c,d),e}let n=l===a.startLineNumber?a.startColumn:1;return f=this.findMatchesInNode(i.node,g,l,n,j,k,b,c,d,f,e),e}_findMatchesInLine(a,b,c,d,e,f,g,h,i){let j,k=a.wordSeparators;if(!h&&a.simpleSearch){let b=a.simpleSearch,h=b.length,j=c.length,l=-h;for(;-1!==(l=c.indexOf(b,l+h))&&(!(!k||(0,bd.wC)(k,c,j,l,h))||(g[f++]=new A.Dg(new w.Q(d,l+1+e,d,l+1+h+e),null),!(f>=i))););return f}b.reset(0);do if((j=b.next(c))&&(g[f++]=(0,bd.dr)(new w.Q(d,j.index+1+e,d,j.index+1+j[0].length+e),j,h),f>=i))break;while(j);return f}insert(a,b,c=!1){if(this._EOLNormalized=this._EOLNormalized&&c,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==a1){let{node:c,remainder:d,nodeStartOffset:e}=this.nodeAt(a),f=c.piece,g=f.bufferIndex,h=this.positionInBuffer(c,d);if(0===c.piece.bufferIndex&&f.end.line===this._lastChangeBufferPos.line&&f.end.column===this._lastChangeBufferPos.column&&e+f.length===a&&b.length<65535){this.appendToNode(c,b),this.computeBufferMetadata();return}if(e===a)this.insertContentToNodeLeft(b,c),this._searchCache.validate(a);else if(e+c.piece.length>a){let a=[],e=new bh(f.bufferIndex,h,f.end,this.getLineFeedCnt(f.bufferIndex,h,f.end),this.offsetInBuffer(g,f.end)-this.offsetInBuffer(g,h));if(this.shouldCheckCRLF()&&this.endWithCR(b)&&10===this.nodeCharCodeAt(c,d)){let a={line:e.start.line+1,column:0};e=new bh(e.bufferIndex,a,e.end,this.getLineFeedCnt(e.bufferIndex,a,e.end),e.length-1),b+="\n"}if(this.shouldCheckCRLF()&&this.startWithLF(b))if(13===this.nodeCharCodeAt(c,d-1)){let e=this.positionInBuffer(c,d-1);this.deleteNodeTail(c,e),b="\r"+b,0===c.piece.length&&a.push(c)}else this.deleteNodeTail(c,h);else this.deleteNodeTail(c,h);let i=this.createNewPieces(b);e.length>0&&this.rbInsertRight(c,e);let j=c;for(let a=0;a<i.length;a++)j=this.rbInsertRight(j,i[a]);this.deleteNodes(a)}else this.insertContentToNodeRight(b,c)}else{let a=this.createNewPieces(b),c=this.rbInsertLeft(null,a[0]);for(let b=1;b<a.length;b++)c=this.rbInsertRight(c,a[b])}this.computeBufferMetadata()}delete(a,b){if(this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",b<=0||this.root===a1)return;let c=this.nodeAt(a),d=this.nodeAt(a+b),e=c.node,f=d.node;if(e===f){let f=this.positionInBuffer(e,c.remainder),g=this.positionInBuffer(e,d.remainder);if(c.nodeStartOffset===a){if(b===e.piece.length){let a=e.next();a9(this,e),this.validateCRLFWithPrevNode(a),this.computeBufferMetadata();return}this.deleteNodeHead(e,g),this._searchCache.validate(a),this.validateCRLFWithPrevNode(e),this.computeBufferMetadata();return}if(c.nodeStartOffset+e.piece.length===a+b){this.deleteNodeTail(e,f),this.validateCRLFWithNextNode(e),this.computeBufferMetadata();return}this.shrinkNode(e,f,g),this.computeBufferMetadata();return}let g=[],h=this.positionInBuffer(e,c.remainder);this.deleteNodeTail(e,h),this._searchCache.validate(a),0===e.piece.length&&g.push(e);let i=this.positionInBuffer(f,d.remainder);this.deleteNodeHead(f,i),0===f.piece.length&&g.push(f);let j=e.next();for(let a=j;a!==a1&&a!==f;a=a.next())g.push(a);let k=0===e.piece.length?e.prev():e;this.deleteNodes(g),this.validateCRLFWithNextNode(k),this.computeBufferMetadata()}insertContentToNodeLeft(a,b){let c=[];if(this.shouldCheckCRLF()&&this.endWithCR(a)&&this.startWithLF(b)){let d=b.piece,e={line:d.start.line+1,column:0};b.piece=new bh(d.bufferIndex,e,d.end,this.getLineFeedCnt(d.bufferIndex,e,d.end),d.length-1),a+="\n",bb(this,b,-1,-1),0===b.piece.length&&c.push(b)}let d=this.createNewPieces(a),e=this.rbInsertLeft(b,d[d.length-1]);for(let a=d.length-2;a>=0;a--)e=this.rbInsertLeft(e,d[a]);this.validateCRLFWithPrevNode(e),this.deleteNodes(c)}insertContentToNodeRight(a,b){this.adjustCarriageReturnFromNext(a,b)&&(a+="\n");let c=this.createNewPieces(a),d=this.rbInsertRight(b,c[0]),e=d;for(let a=1;a<c.length;a++)e=this.rbInsertRight(e,c[a]);this.validateCRLFWithPrevNode(d)}positionInBuffer(a,b,c){let d=a.piece,e=a.piece.bufferIndex,f=this._buffers[e].lineStarts,g=f[d.start.line]+d.start.column+b,h=d.start.line,i=d.end.line,j=0,k=0,l=0;for(;h<=i&&(l=f[j=h+(i-h)/2|0],j!==i);)if(k=f[j+1],g<l)i=j-1;else if(g>=k)h=j+1;else break;return c?(c.line=j,c.column=g-l,null):{line:j,column:g-l}}getLineFeedCnt(a,b,c){if(0===c.column)return c.line-b.line;let d=this._buffers[a].lineStarts;if(c.line===d.length-1)return c.line-b.line;let e=d[c.line+1],f=d[c.line]+c.column;return e>f+1?c.line-b.line:13===this._buffers[a].buffer.charCodeAt(f-1)?c.line-b.line+1:c.line-b.line}offsetInBuffer(a,b){return this._buffers[a].lineStarts[b.line]+b.column}deleteNodes(a){for(let b=0;b<a.length;b++)a9(this,a[b])}createNewPieces(a){if(a.length>65535){let b=[];for(;a.length>65535;){let c,d=a.charCodeAt(65534);13===d||d>=55296&&d<=56319?(c=a.substring(0,65534),a=a.substring(65534)):(c=a.substring(0,65535),a=a.substring(65535));let e=bg(c);b.push(new bh(this._buffers.length,{line:0,column:0},{line:e.length-1,column:c.length-e[e.length-1]},e.length-1,c.length)),this._buffers.push(new bi(c,e))}let c=bg(a);return b.push(new bh(this._buffers.length,{line:0,column:0},{line:c.length-1,column:a.length-c[c.length-1]},c.length-1,a.length)),this._buffers.push(new bi(a,c)),b}let b=this._buffers[0].buffer.length,c=bg(a,!1),d=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===b&&0!==b&&this.startWithLF(a)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},d=this._lastChangeBufferPos;for(let a=0;a<c.length;a++)c[a]+=b+1;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+="_"+a,b+=1}else{if(0!==b)for(let a=0;a<c.length;a++)c[a]+=b;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+=a}let e=this._buffers[0].buffer.length,f=this._buffers[0].lineStarts.length-1,g=e-this._buffers[0].lineStarts[f],h={line:f,column:g},i=new bh(0,d,h,this.getLineFeedCnt(0,d,h),e-b);return this._lastChangeBufferPos=h,[i]}getLineRawContent(a,b=0){let c=this.root,d="",e=this._searchCache.get2(a);if(e){c=e.node;let f=this.getAccumulatedValue(c,a-e.nodeStartLineNumber-1),g=this._buffers[c.piece.bufferIndex].buffer,h=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(e.nodeStartLineNumber+c.piece.lineFeedCnt===a)d=g.substring(h+f,h+c.piece.length);else{let d=this.getAccumulatedValue(c,a-e.nodeStartLineNumber);return g.substring(h+f,h+d-b)}}else{let e=0,f=a;for(;c!==a1;)if(c.left!==a1&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let d=this.getAccumulatedValue(c,a-c.lf_left-2),g=this.getAccumulatedValue(c,a-c.lf_left-1),h=this._buffers[c.piece.bufferIndex].buffer,i=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return e+=c.size_left,this._searchCache.set({node:c,nodeStartOffset:e,nodeStartLineNumber:f-(a-1-c.lf_left)}),h.substring(i+d,i+g-b)}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let b=this.getAccumulatedValue(c,a-c.lf_left-2),e=this._buffers[c.piece.bufferIndex].buffer,f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d=e.substring(f+b,f+c.piece.length);break}else a-=c.lf_left+c.piece.lineFeedCnt,e+=c.size_left+c.piece.length,c=c.right}for(c=c.next();c!==a1;){let a=this._buffers[c.piece.bufferIndex].buffer;if(c.piece.lineFeedCnt>0){let e=this.getAccumulatedValue(c,0),f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substring(f,f+e-b);break}{let b=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substr(b,c.piece.length)}c=c.next()}return d}computeBufferMetadata(){let a=this.root,b=1,c=0;for(;a!==a1;)b+=a.lf_left+a.piece.lineFeedCnt,c+=a.size_left+a.piece.length,a=a.right;this._lineCnt=b,this._length=c,this._searchCache.validate(this._length)}getIndexOf(a,b){let c=a.piece,d=this.positionInBuffer(a,b),e=d.line-c.start.line;if(this.offsetInBuffer(c.bufferIndex,c.end)-this.offsetInBuffer(c.bufferIndex,c.start)===b){let b=this.getLineFeedCnt(a.piece.bufferIndex,c.start,d);if(b!==e)return{index:b,remainder:0}}return{index:e,remainder:d.column}}getAccumulatedValue(a,b){if(b<0)return 0;let c=a.piece,d=this._buffers[c.bufferIndex].lineStarts,e=c.start.line+b+1;return e>c.end.line?d[c.end.line]+c.end.column-d[c.start.line]-c.start.column:d[e]-d[c.start.line]-c.start.column}deleteNodeTail(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.end),f=this.offsetInBuffer(c.bufferIndex,b),g=this.getLineFeedCnt(c.bufferIndex,c.start,b),h=g-d,i=f-e,j=c.length+i;a.piece=new bh(c.bufferIndex,c.start,b,g,j),bb(this,a,i,h)}deleteNodeHead(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.start),f=this.getLineFeedCnt(c.bufferIndex,b,c.end),g=this.offsetInBuffer(c.bufferIndex,b),h=f-d,i=e-g,j=c.length+i;a.piece=new bh(c.bufferIndex,b,c.end,f,j),bb(this,a,i,h)}shrinkNode(a,b,c){let d=a.piece,e=d.start,f=d.end,g=d.length,h=d.lineFeedCnt,i=this.getLineFeedCnt(d.bufferIndex,d.start,b),j=this.offsetInBuffer(d.bufferIndex,b)-this.offsetInBuffer(d.bufferIndex,e);a.piece=new bh(d.bufferIndex,d.start,b,i,j),bb(this,a,j-g,i-h);let k=new bh(d.bufferIndex,c,f,this.getLineFeedCnt(d.bufferIndex,c,f),this.offsetInBuffer(d.bufferIndex,f)-this.offsetInBuffer(d.bufferIndex,c)),l=this.rbInsertRight(a,k);this.validateCRLFWithPrevNode(l)}appendToNode(a,b){this.adjustCarriageReturnFromNext(b,a)&&(b+="\n");let c=this.shouldCheckCRLF()&&this.startWithLF(b)&&this.endWithCR(a),d=this._buffers[0].buffer.length;this._buffers[0].buffer+=b;let e=bg(b,!1);for(let a=0;a<e.length;a++)e[a]+=d;if(c){let a=this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-2];this._buffers[0].lineStarts.pop(),this._lastChangeBufferPos={line:this._lastChangeBufferPos.line-1,column:d-a}}this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(e.slice(1));let f=this._buffers[0].lineStarts.length-1,g=this._buffers[0].buffer.length-this._buffers[0].lineStarts[f],h={line:f,column:g},i=a.piece.length+b.length,j=a.piece.lineFeedCnt,k=this.getLineFeedCnt(0,a.piece.start,h),l=k-j;a.piece=new bh(a.piece.bufferIndex,a.piece.start,h,k,i),this._lastChangeBufferPos=h,bb(this,a,b.length,l)}nodeAt(a){let b=this.root,c=this._searchCache.get(a);if(c)return{node:c.node,nodeStartOffset:c.nodeStartOffset,remainder:a-c.nodeStartOffset};let d=0;for(;b!==a1;)if(b.size_left>a)b=b.left;else if(b.size_left+b.piece.length>=a){d+=b.size_left;let c={node:b,remainder:a-b.size_left,nodeStartOffset:d};return this._searchCache.set(c),c}else a-=b.size_left+b.piece.length,d+=b.size_left+b.piece.length,b=b.right;return null}nodeAt2(a,b){let c=this.root,d=0;for(;c!==a1;)if(c.left!==a1&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2),f=this.getAccumulatedValue(c,a-c.lf_left-1);return d+=c.size_left,{node:c,remainder:Math.min(e+b-1,f),nodeStartOffset:d}}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2);if(e+b-1<=c.piece.length)return{node:c,remainder:e+b-1,nodeStartOffset:d};b-=c.piece.length-e;break}else a-=c.lf_left+c.piece.lineFeedCnt,d+=c.size_left+c.piece.length,c=c.right;for(c=c.next();c!==a1;){if(c.piece.lineFeedCnt>0){let a=this.getAccumulatedValue(c,0),d=this.offsetOfNode(c);return{node:c,remainder:Math.min(b-1,a),nodeStartOffset:d}}if(c.piece.length>=b-1){let a=this.offsetOfNode(c);return{node:c,remainder:b-1,nodeStartOffset:a}}b-=c.piece.length;c=c.next()}return null}nodeCharCodeAt(a,b){if(a.piece.lineFeedCnt<1)return -1;let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start)+b;return c.buffer.charCodeAt(d)}offsetOfNode(a){if(!a)return 0;let b=a.size_left;for(;a!==this.root;)a.parent.right===a&&(b+=a.parent.size_left+a.parent.piece.length),a=a.parent;return b}shouldCheckCRLF(){return!(this._EOLNormalized&&"\n"===this._EOL)}startWithLF(a){if("string"==typeof a)return 10===a.charCodeAt(0);if(a===a1||0===a.piece.lineFeedCnt)return!1;let b=a.piece,c=this._buffers[b.bufferIndex].lineStarts,d=b.start.line,e=c[d]+b.start.column;return d!==c.length-1&&!(c[d+1]>e+1)&&10===this._buffers[b.bufferIndex].buffer.charCodeAt(e)}endWithCR(a){return"string"==typeof a?13===a.charCodeAt(a.length-1):a!==a1&&0!==a.piece.lineFeedCnt&&13===this.nodeCharCodeAt(a,a.piece.length-1)}validateCRLFWithPrevNode(a){if(this.shouldCheckCRLF()&&this.startWithLF(a)){let b=a.prev();this.endWithCR(b)&&this.fixCRLF(b,a)}}validateCRLFWithNextNode(a){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let b=a.next();this.startWithLF(b)&&this.fixCRLF(a,b)}}fixCRLF(a,b){let c,d=[],e=this._buffers[a.piece.bufferIndex].lineStarts;c=0===a.piece.end.column?{line:a.piece.end.line-1,column:e[a.piece.end.line]-e[a.piece.end.line-1]-1}:{line:a.piece.end.line,column:a.piece.end.column-1};let f=a.piece.length-1,g=a.piece.lineFeedCnt-1;a.piece=new bh(a.piece.bufferIndex,a.piece.start,c,g,f),bb(this,a,-1,-1),0===a.piece.length&&d.push(a);let h={line:b.piece.start.line+1,column:0},i=b.piece.length-1,j=this.getLineFeedCnt(b.piece.bufferIndex,h,b.piece.end);b.piece=new bh(b.piece.bufferIndex,h,b.piece.end,j,i),bb(this,b,-1,-1),0===b.piece.length&&d.push(b);let k=this.createNewPieces("\r\n");this.rbInsertRight(a,k[0]);for(let a=0;a<d.length;a++)a9(this,d[a])}adjustCarriageReturnFromNext(a,b){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let c=b.next();if(this.startWithLF(c)){if(a+="\n",1===c.piece.length)a9(this,c);else{let a=c.piece,b={line:a.start.line+1,column:0},d=a.length-1,e=this.getLineFeedCnt(a.bufferIndex,b,a.end);c.piece=new bh(a.bufferIndex,b,a.end,e,d),bb(this,c,-1,-1)}return!0}}return!1}iterate(a,b){if(a===a1)return b(a1);let c=this.iterate(a.left,b);return c?b(a)&&this.iterate(a.right,b):c}getNodeContent(a){if(a===a1)return"";let b=this._buffers[a.piece.bufferIndex],c=a.piece,d=this.offsetInBuffer(c.bufferIndex,c.start),e=this.offsetInBuffer(c.bufferIndex,c.end);return b.buffer.substring(d,e)}getPieceContent(a){let b=this._buffers[a.bufferIndex],c=this.offsetInBuffer(a.bufferIndex,a.start),d=this.offsetInBuffer(a.bufferIndex,a.end);return b.buffer.substring(c,d)}rbInsertRight(a,b){let c=new a0(b,1);if(c.left=a1,c.right=a1,c.parent=a1,c.size_left=0,c.lf_left=0,this.root===a1)this.root=c,c.color=0;else if(a.right===a1)a.right=c,c.parent=a;else{let b=a2(a.right);b.left=c,c.parent=b}return ba(this,c),c}rbInsertLeft(a,b){let c=new a0(b,1);if(c.left=a1,c.right=a1,c.parent=a1,c.size_left=0,c.lf_left=0,this.root===a1)this.root=c,c.color=0;else if(a.left===a1)a.left=c,c.parent=a;else{let b=a3(a.left);b.right=c,c.parent=b}return ba(this,c),c}}var bm=c(12428);class bn extends m.jG{constructor(a,b,c,d,e,f,g){super(),this._onDidChangeContent=this._register(new l.vl),this._BOM=b,this._mightContainNonBasicASCII=!f,this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._pieceTree=new bl(a,c,g)}mightContainRTL(){return this._mightContainRTL}mightContainUnusualLineTerminators(){return this._mightContainUnusualLineTerminators}resetMightContainUnusualLineTerminators(){this._mightContainUnusualLineTerminators=!1}mightContainNonBasicASCII(){return this._mightContainNonBasicASCII}getBOM(){return this._BOM}getEOL(){return this._pieceTree.getEOL()}createSnapshot(a){return this._pieceTree.createSnapshot(a?this._BOM:"")}getOffsetAt(a,b){return this._pieceTree.getOffsetAt(a,b)}getPositionAt(a){return this._pieceTree.getPositionAt(a)}getRangeAt(a,b){let c=this.getPositionAt(a),d=this.getPositionAt(a+b);return new w.Q(c.lineNumber,c.column,d.lineNumber,d.column)}getValueInRange(a,b=0){if(a.isEmpty())return"";let c=this._getEndOfLine(b);return this._pieceTree.getValueInRange(a,c)}getValueLengthInRange(a,b=0){if(a.isEmpty())return 0;if(a.startLineNumber===a.endLineNumber)return a.endColumn-a.startColumn;let c=this.getOffsetAt(a.startLineNumber,a.startColumn),d=this.getOffsetAt(a.endLineNumber,a.endColumn),e=0,f=this._getEndOfLine(b),g=this.getEOL();return f.length!==g.length&&(e=(f.length-g.length)*(a.endLineNumber-a.startLineNumber)),d-c+e}getCharacterCountInRange(a,b=0){if(this._mightContainNonBasicASCII){let c=0,d=a.startLineNumber,e=a.endLineNumber;for(let b=d;b<=e;b++){let f=this.getLineContent(b),g=b===d?a.startColumn-1:0,h=b===e?a.endColumn-1:f.length;for(let a=g;a<h;a++)(0,n.pc)(f.charCodeAt(a))?(c+=1,a+=1):c+=1}return c+this._getEndOfLine(b).length*(e-d)}return this.getValueLengthInRange(a,b)}getNearestChunk(a){return this._pieceTree.getNearestChunk(a)}getLength(){return this._pieceTree.getLength()}getLineCount(){return this._pieceTree.getLineCount()}getLinesContent(){return this._pieceTree.getLinesContent()}getLineContent(a){return this._pieceTree.getLineContent(a)}getLineCharCode(a,b){return this._pieceTree.getLineCharCode(a,b)}getLineLength(a){return this._pieceTree.getLineLength(a)}getLineFirstNonWhitespaceColumn(a){let b=(0,n.HG)(this.getLineContent(a));return -1===b?0:b+1}getLineLastNonWhitespaceColumn(a){let b=(0,n.lT)(this.getLineContent(a));return -1===b?0:b+2}_getEndOfLine(a){switch(a){case 1:return"\n";case 2:return"\r\n";case 0:return this.getEOL();default:throw Error("Unknown EOL preference")}}setEOL(a){this._pieceTree.setEOL(a)}applyEdits(a,b,c){let d=this._mightContainRTL,e=this._mightContainUnusualLineTerminators,f=this._mightContainNonBasicASCII,g=!0,h=[];for(let b=0;b<a.length;b++){let c=a[b];g&&c._isTracked&&(g=!1);let i=c.range;if(c.text){let a=!0;f||(f=a=!(0,n.aC)(c.text)),!d&&a&&(d=(0,n.E_)(c.text)),!e&&a&&(e=(0,n.$X)(c.text))}let j="",k=0,l=0,m=0;if(c.text){let a;[k,l,m,a]=(0,s.W)(c.text);let b=this.getEOL(),d="\r\n"===b?2:1;j=0===a||a===d?c.text:c.text.replace(/\r\n|\r|\n/g,b)}h[b]={sortIndex:b,identifier:c.identifier||null,range:i,rangeOffset:this.getOffsetAt(i.startLineNumber,i.startColumn),rangeLength:this.getValueLengthInRange(i),text:j,eolCount:k,firstLineLength:l,lastLineLength:m,forceMoveMarkers:!!c.forceMoveMarkers,isAutoWhitespaceEdit:c.isAutoWhitespaceEdit||!1}}h.sort(bn._sortOpsAscending);let i=!1;for(let a=0,b=h.length-1;a<b;a++){let b=h[a].range.getEndPosition(),c=h[a+1].range.getStartPosition();if(c.isBeforeOrEqual(b)){if(c.isBefore(b))throw Error("Overlapping ranges are not allowed!");i=!0}}g&&(h=this._reduceOperations(h));let j=c||b?bn._getInverseEditRanges(h):[],k=[];if(b)for(let a=0;a<h.length;a++){let b=h[a],c=j[a];if(b.isAutoWhitespaceEdit&&b.range.isEmpty())for(let a=c.startLineNumber;a<=c.endLineNumber;a++){let d="";(a!==c.startLineNumber||(d=this.getLineContent(b.range.startLineNumber),-1===(0,n.HG)(d)))&&k.push({lineNumber:a,oldContent:d})}}let l=null;if(c){let a=0;l=[];for(let b=0;b<h.length;b++){let c=h[b],d=j[b],e=this.getValueInRange(c.range),f=c.rangeOffset+a;a+=c.text.length-e.length,l[b]={sortIndex:c.sortIndex,identifier:c.identifier,range:d,text:e,textChange:new bm.k(c.rangeOffset,e,f,c.text)}}i||l.sort((a,b)=>a.sortIndex-b.sortIndex)}this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._mightContainNonBasicASCII=f;let m=this._doApplyEdits(h),o=null;if(b&&k.length>0){k.sort((a,b)=>b.lineNumber-a.lineNumber),o=[];for(let a=0,b=k.length;a<b;a++){let b=k[a].lineNumber;if(a>0&&k[a-1].lineNumber===b)continue;let c=k[a].oldContent,d=this.getLineContent(b);0!==d.length&&d!==c&&-1===(0,n.HG)(d)&&o.push(b)}}return this._onDidChangeContent.fire(),new A.F4(l,m,o)}_reduceOperations(a){return a.length<1e3?a:[this._toSingleEditOperation(a)]}_toSingleEditOperation(a){let b=!1,c=a[0].range,d=a[a.length-1].range,e=new w.Q(c.startLineNumber,c.startColumn,d.endLineNumber,d.endColumn),f=c.startLineNumber,g=c.startColumn,h=[];for(let c=0,d=a.length;c<d;c++){let d=a[c],e=d.range;b=b||d.forceMoveMarkers,h.push(this.getValueInRange(new w.Q(f,g,e.startLineNumber,e.startColumn))),d.text.length>0&&h.push(d.text),f=e.endLineNumber,g=e.endColumn}let i=h.join(""),[j,k,l]=(0,s.W)(i);return{sortIndex:0,identifier:a[0].identifier,range:e,rangeOffset:this.getOffsetAt(e.startLineNumber,e.startColumn),rangeLength:this.getValueLengthInRange(e,0),text:i,eolCount:j,firstLineLength:k,lastLineLength:l,forceMoveMarkers:b,isAutoWhitespaceEdit:!1}}_doApplyEdits(a){a.sort(bn._sortOpsDescending);let b=[];for(let c=0;c<a.length;c++){let d=a[c],e=d.range.startLineNumber,f=d.range.startColumn,g=d.range.endLineNumber,h=d.range.endColumn;if(e===g&&f===h&&0===d.text.length)continue;d.text?(this._pieceTree.delete(d.rangeOffset,d.rangeLength),this._pieceTree.insert(d.rangeOffset,d.text,!0)):this._pieceTree.delete(d.rangeOffset,d.rangeLength);let i=new w.Q(e,f,g,h);b.push({range:i,rangeLength:d.rangeLength,text:d.text,rangeOffset:d.rangeOffset,forceMoveMarkers:d.forceMoveMarkers})}return b}findMatchesLineByLine(a,b,c,d){return this._pieceTree.findMatchesLineByLine(a,b,c,d)}static _getInverseEditRanges(a){let b=[],c=0,d=0,e=null;for(let f=0,g=a.length;f<g;f++){let g,h,i,j=a[f];if(e?e.range.endLineNumber===j.range.startLineNumber?(g=c,h=d+(j.range.startColumn-e.range.endColumn)):(g=c+(j.range.startLineNumber-e.range.endLineNumber),h=j.range.startColumn):(g=j.range.startLineNumber,h=j.range.startColumn),j.text.length>0){let a=j.eolCount+1;i=1===a?new w.Q(g,h,g,h+j.firstLineLength):new w.Q(g,h,g+a-1,j.lastLineLength+1)}else i=new w.Q(g,h,g,h);c=i.endLineNumber,d=i.endColumn,b.push(i),e=j}return b}static _sortOpsAscending(a,b){let c=w.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?a.sortIndex-b.sortIndex:c}static _sortOpsDescending(a,b){let c=w.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?b.sortIndex-a.sortIndex:-c}}class bo{constructor(a,b,c,d,e,f,g,h,i){this._chunks=a,this._bom=b,this._cr=c,this._lf=d,this._crlf=e,this._containsRTL=f,this._containsUnusualLineTerminators=g,this._isBasicASCII=h,this._normalizeEOL=i}_getEOL(a){let b=this._cr+this._lf+this._crlf,c=this._cr+this._crlf;return 0===b?1===a?"\n":"\r\n":c>b/2?"\r\n":"\n"}create(a){let b=this._getEOL(a),c=this._chunks;if(this._normalizeEOL&&("\r\n"===b&&(this._cr>0||this._lf>0)||"\n"===b&&(this._cr>0||this._crlf>0)))for(let a=0,d=c.length;a<d;a++){let d=c[a].buffer.replace(/\r\n|\r|\n/g,b),e=bg(d);c[a]=new bi(d,e)}let d=new bn(c,this._bom,b,this._containsRTL,this._containsUnusualLineTerminators,this._isBasicASCII,this._normalizeEOL);return{textBuffer:d,disposable:d}}}class bp{constructor(){this.chunks=[],this.BOM="",this._hasPreviousChar=!1,this._previousChar=0,this._tmpLineStarts=[],this.cr=0,this.lf=0,this.crlf=0,this.containsRTL=!1,this.containsUnusualLineTerminators=!1,this.isBasicASCII=!0}acceptChunk(a){if(0===a.length)return;0===this.chunks.length&&(0,n.LU)(a)&&(this.BOM=n.r_,a=a.substr(1));let b=a.charCodeAt(a.length-1);13===b||b>=55296&&b<=56319?(this._acceptChunk1(a.substr(0,a.length-1),!1),this._hasPreviousChar=!0):(this._acceptChunk1(a,!1),this._hasPreviousChar=!1),this._previousChar=b}_acceptChunk1(a,b){(b||0!==a.length)&&(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+a):this._acceptChunk2(a))}_acceptChunk2(a){let b=function(a,b){a.length=0,a[0]=0;let c=1,d=0,e=0,f=0,g=!0;for(let h=0,i=b.length;h<i;h++){let j=b.charCodeAt(h);13===j?h+1<i&&10===b.charCodeAt(h+1)?(f++,a[c++]=h+2,h++):(d++,a[c++]=h+1):10===j?(e++,a[c++]=h+1):g&&9!==j&&(j<32||j>126)&&(g=!1)}let h=new bf(be(a),d,e,f,g);return a.length=0,h}(this._tmpLineStarts,a);this.chunks.push(new bi(a,b.lineStarts)),this.cr+=b.cr,this.lf+=b.lf,this.crlf+=b.crlf,!b.isBasicASCII&&(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=(0,n.E_)(a)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=(0,n.$X)(a)))}finish(a=!0){return this._finish(),new bo(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,a)}_finish(){if(0===this.chunks.length&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;let a=this.chunks[this.chunks.length-1];a.buffer+=String.fromCharCode(this._previousChar);let b=bg(a.buffer);a.lineStarts=b,13===this._previousChar&&this.cr++}}}var bq=c(70687),br=c(1401);c(94484);var bs=c(78014),bt=c(60548),bu=c(59825),bv=c(14960);class bw{constructor(){this._onDidChangeVisibleRanges=new l.vl,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set,this._viewsChanged=(0,bt.Y)(this),this.visibleLineRanges=(0,bv.C)({owner:this,equalsFn:(0,bs.We)((0,bs.d)())},a=>(this._viewsChanged.read(a),br.M.joinMany([...this._views].map(b=>b.state.read(a)?.visibleLineRanges??[]))))}attachView(){let a=new by(b=>{this._onDidChangeVisibleRanges.fire({view:a,state:b})});return this._views.add(a),this._viewsChanged.trigger(void 0),a}detachView(a){this._views.delete(a),this._onDidChangeVisibleRanges.fire({view:a,state:void 0}),this._viewsChanged.trigger(void 0)}dispose(){this._onDidChangeVisibleRanges.dispose()}}class bx{constructor(a,b){this.visibleLineRanges=a,this.stabilized=b}equals(a){return this===a||!!(0,h.aI)(this.visibleLineRanges,a.visibleLineRanges,(a,b)=>a.equals(b))&&this.stabilized===a.stabilized}}class by{get state(){return this._state}constructor(a){this.handleStateChange=a,this._state=(0,bu.Z)({owner:this,equalsFn:(0,bs.jb)((a,b)=>a.equals(b))},void 0)}setVisibleLines(a,b){let c=new bx(a.map(a=>new br.M(a.startLineNumber,a.endLineNumber+1)),b);this._state.set(c,void 0,void 0),this.handleStateChange(c)}}class bz extends m.jG{get lineRanges(){return this._lineRanges}constructor(a){super(),this._refreshTokens=a,this.runner=this._register(new bq.uC(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){(0,h.aI)(this._computedLineRanges,this._lineRanges,(a,b)=>a.equals(b))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(a){this._lineRanges=a.visibleLineRanges,a.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class bA extends m.jG{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(a,b){super(),this._languageIdCodec=a,this._textModel=b,this._onDidChangeTokens=this._register(new l.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidChangeFontTokens=this._register(new l.vl),this.onDidChangeFontTokens=this._onDidChangeFontTokens.event}tokenizeIfCheap(a){this.isCheapToTokenize(a)&&this.forceTokenization(a)}}class bB{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c,d){this.ownerId=a,this.decorationId=b,this.lineNumber=c,this.lineHeight=d}}class bC{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c){this.ownerId=a,this.decorationId=b,this.lineNumber=c}}var bD=c(70281);class bE{constructor(a=[]){this._annotations=[],this._annotations=a}setAnnotations(a){for(let b of a.annotations){let a=this._getStartIndexOfIntersectingAnnotation(b.range.start),c=this._getEndIndexOfIntersectingAnnotation(b.range.endExclusive);void 0!==b.annotation?this._annotations.splice(a,c-a,{range:b.range,annotation:b.annotation}):this._annotations.splice(a,c-a)}}getAnnotationsIntersecting(a){let b=this._getStartIndexOfIntersectingAnnotation(a.start),c=this._getEndIndexOfIntersectingAnnotation(a.endExclusive);return this._annotations.slice(b,c)}_getStartIndexOfIntersectingAnnotation(a){let b,c=(0,h.Uw)(this._annotations.length,b=>this._annotations[b].range.start-a);if(c>=0){b=c;let d=this._annotations[b]?.range;d&&d.endExclusive===a&&b--}else{let d=this._annotations[-(c+2)]?.range;b=d&&a>=d.start&&a<d.endExclusive?-(c+2):-(c+1)}return b}_getEndIndexOfIntersectingAnnotation(a){let b,c=(0,h.Uw)(this._annotations.length,b=>this._annotations[b].range.endExclusive-a);if(c>=0){b=c+1;let d=this._annotations[b]?.range;d&&d.start===a&&b++}else{let d=this._annotations[-(c+1)]?.range;b=d&&a>=d.start&&a<=d.endExclusive?-c:-(c+1)}return b}applyEdit(a){let b=this._annotations.slice(),c=[],d=[],e=0;for(let f of a.replacements){for(;;){let a=b[0];if(!a)break;let g=a.range;if(g.endExclusive>=f.replaceRange.start)break;b.shift();let h={range:g.delta(e),annotation:a.annotation};h.range.isEmpty?d.push(h):c.push(h)}let a=[];for(;;){let c=b[0];if(!c||!c.range.intersectsOrTouches(f.replaceRange))break;b.shift(),a.push(c)}for(let c=a.length-1;c>=0;c--){let d=a[c],e=d.range,g=0===c&&f.replaceRange.endExclusive>e.start&&f.replaceRange.start<e.endExclusive,h=e.intersect(f.replaceRange).length,i=(e=e.deltaEnd(-h+(g?f.newText.length:0))).start-f.replaceRange.start;i>0&&(e=e.delta(-i)),!g&&i>=0&&(e=e.delta(f.newText.length)),e=e.delta(-(f.newText.length-f.replaceRange.length)),b.unshift({annotation:d.annotation,range:e})}e+=f.newText.length-f.replaceRange.length}for(;;){let a=b[0];if(!a)break;b.shift();let f={annotation:a.annotation,range:a.range.delta(e)};f.range.isEmpty?d.push(f):c.push(f)}return this._annotations=c,d}}class bF{static create(a){return new bF(a)}constructor(a){this._annotations=a}get annotations(){return this._annotations}}var bG=c(39482),bH=c(62755);class bI extends m.jG{static{this.DECORATION_COUNT=0}constructor(a,b){super(),this.textModel=a,this.tokenizationTextModelPart=b,this._onDidChangeLineHeight=this._register(new l.vl),this.onDidChangeLineHeight=this._onDidChangeLineHeight.event,this._onDidChangeFont=this._register(new l.vl),this.onDidChangeFont=this._onDidChangeFont.event,this._fontAnnotatedString=new bE,this._register(this.tokenizationTextModelPart.onDidChangeFontTokens(a=>{let b=new Set,c=[],d=new Set,e=new Set;for(let f of a.changes.annotations){let a,g=this.textModel.getPositionAt(f.range.start).lineNumber;if(void 0===f.annotation)a={range:f.range,annotation:void 0};else{let b=`tokenization-font-decoration-${bI.DECORATION_COUNT}`,c={fontToken:f.annotation,decorationId:b};a={range:f.range,annotation:c},bI.DECORATION_COUNT++,f.annotation.lineHeightMultiplier&&d.add(new bB(0,b,g,f.annotation.lineHeightMultiplier)),e.add(new bC(0,b,g))}if(c.push(a),!b.has(g)){let a=this.textModel.getOffsetAt(new v.y(g,1)),c=this.textModel.getOffsetAt(new v.y(g,this.textModel.getLineMaxColumn(g))),f=new bG.L(a,c);for(let a of this._fontAnnotatedString.getAnnotationsIntersecting(f)){let b=a.annotation.decorationId;d.add(new bB(0,b,g,null)),e.add(new bC(0,b,g))}b.add(g)}}this._fontAnnotatedString.setAnnotations(bF.create(c)),this._onDidChangeLineHeight.fire(d),this._onDidChangeFont.fire(e)}))}handleDidChangeContent(a){let b,c=((b=a.changes.map(a=>new bH.aQ(bG.L.ofStartAndLength(a.rangeOffset,a.rangeLength),a.text))).reverse(),new bH.c7(b)),d=this._fontAnnotatedString.applyEdit(c);if(0===d.length)return;let e=new Set,f=new Set;for(let a of d){let b=this.textModel.getPositionAt(a.range.start).lineNumber,c=a.annotation.decorationId;e.add(new bB(0,c,b,null)),f.add(new bC(0,c,b))}this._onDidChangeLineHeight.fire(e),this._onDidChangeFont.fire(f)}getDecorationsInRange(a,b,c,d,e){let f=this.textModel.getOffsetAt(a.getStartPosition()),g=this.textModel.getOffsetAt(a.getEndPosition()),h=this._fontAnnotatedString.getAnnotationsIntersecting(new bG.L(f,g)),i=[];for(let a of h){let b=a.annotation,c=!!(b.fontToken.fontFamily||b.fontToken.fontSizeMultiplier);if(!(c&&d)){let b=this.textModel.getPositionAt(a.range.start),d=this.textModel.getPositionAt(a.range.endExclusive),e=w.Q.fromPositions(b,d),f=a.annotation,g=(0,bD.eb)(f.fontToken.fontFamily??"",f.fontToken.fontSizeMultiplier??0),h=f.decorationId;i.push({id:h,options:{description:"FontOptionDecoration",inlineClassName:g,lineHeight:f.fontToken.lineHeightMultiplier,affectsFont:c},ownerId:0,range:e})}}return i}getAllDecorations(a,b){return this.getDecorationsInRange(new w.Q(1,1,this.textModel.getLineCount(),this.textModel.getLineMaxColumn(this.textModel.getLineCount())),a,b)}}var bJ=c(57615),bK=c(25076),bL=c(18216),bM=c(37788),bN=c(45186),bO=c(67992);function bP(a,b){let c=a.gotoParent(),d=b.gotoParent();if(c!==d)throw Error("Trees are out of sync");return c&&d}function bQ(a,b){do{if(a.currentNode.nextSibling)return function(a,b){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");return c&&d}(a,b);a.currentNode.parent&&bP(a,b)}while(a.currentNode.nextSibling||a.currentNode.parent);return!1}var bR=c(54265),bS=c(87175),bT=function(a,b){return function(c,d){b(c,d,a)}};let bU=class extends m.jG{constructor(a,b,c,d,e,f,g){super(),this.languageId=a,this._ranges=b,this._parser=c,this._parserClass=d,this.textModel=e,this._logService=f,this._telemetryService=g,this._tree=(0,bS.FY)(this,void 0),this.tree=this._tree,this._treeLastParsedVersion=(0,bS.FY)(this,-1),this.treeLastParsedVersion=this._treeLastParsedVersion,this._onDidChangeContentQueue=new bq.Pq,this._tree=(0,bS.FY)(this,void 0),this.tree=this._tree,this._register((0,m.s)(()=>{this._tree.get()?.delete(),this._lastFullyParsed?.delete(),this._lastFullyParsedWithEdits?.delete(),this._parser.delete()})),this.handleContentChange(void 0,this._ranges)}handleContentChange(a,b){let c=this.textModel.getVersionId(),d=[];b&&(d=this._setRanges(b)),a&&this._applyEdits(a.changes),this._onDidChangeContentQueue.clearPending(),this._onDidChangeContentQueue.schedule(async()=>{let a;if(this._store.isDisposed)return;let b=this._lastFullyParsed;this._lastFullyParsedWithEdits&&this._lastFullyParsed&&(a=this._findChangedNodes(this._lastFullyParsedWithEdits,this._lastFullyParsed));let e=await this._parseAndUpdateTree(c);if(e){let f;a?b&&a&&(f=this._findTreeChanges(e,a,d)):this._ranges&&(f=this._ranges.map(a=>({newRange:new w.Q(a.startPosition.row+1,a.startPosition.column+1,a.endPosition.row+1,a.endPosition.column+1),oldRangeLength:a.endIndex-a.startIndex,newRangeStartOffset:a.startIndex,newRangeEndOffset:a.endIndex}))),f||(f=[{newRange:this.textModel.getFullModelRange(),newRangeStartOffset:0,newRangeEndOffset:this.textModel.getValueLength()}]);let g=this._tree.get();(0,bR.Rn)(a=>{this._tree.set(e,a,{ranges:f,versionId:c}),this._treeLastParsedVersion.set(c,a)}),g?.delete()}})}_applyEdits(a){for(let b of a){let a=bO.W.ofRange(w.Q.lift(b.range)),c=bO.W.ofText(b.text),d=0===b.text.length?c:a.add(c),e={startIndex:b.rangeOffset,oldEndIndex:b.rangeOffset+b.rangeLength,newEndIndex:b.rangeOffset+b.text.length,startPosition:{row:b.range.startLineNumber-1,column:b.range.startColumn-1},oldEndPosition:{row:b.range.endLineNumber-1,column:b.range.endColumn-1},newEndPosition:{row:b.range.startLineNumber+d.lineCount-1,column:d.lineCount?d.columnCount:b.range.endColumn+d.columnCount}};this._tree.get()?.edit(e),this._lastFullyParsedWithEdits?.edit(e)}}_findChangedNodes(a,b){if(this._ranges&&this._ranges.every(b=>b.startPosition.row!==a.rootNode.startPosition.row)||0!==a.rootNode.startPosition.row)return[];let c=a.walk(),d=b.walk(),e=[],f=!0;do if(c.currentNode.hasChanges){let b=c.currentNode.children,g=[],h=b.filter((a,b)=>(!!a?.hasChanges||d.currentNode.children.length<=b)&&(g.push(b),!0));if(0===h.length||c.currentNode.hasError!==d.currentNode.hasError){for(;c.currentNode.parent&&f&&!c.currentNode.isNamed;)f=bP(c,d);let b=c.currentNode,g=function(a,b){let c=b.walk();c.resetTo(a);let d=a.currentNode;do if(c.currentNode.previousSibling&&c.currentNode.endIndex-c.currentNode.startIndex!=0)c.gotoPreviousSibling();else{for(;!c.currentNode.previousSibling&&c.currentNode.parent;)c.gotoParent();c.gotoPreviousSibling()}while(c.currentNode.endIndex>d.startIndex&&(c.currentNode.parent||c.currentNode.previousSibling)&&c.currentNode.id!==d.id);return c.currentNode.id!==d.id&&c.currentNode.endIndex<=d.startIndex?c.currentNode:void 0}(c,a)??b;e.push({startIndex:g.startIndex,endIndex:b.endIndex,startPosition:g.startPosition,endPosition:b.endPosition}),f=bQ(c,d)}else h.length>=1&&(f=function(a,b,c){let d=a.gotoFirstChild(),e=b.gotoFirstChild();if(d!==e)throw Error("Trees are out of sync");if(0===c)return d&&e;for(let d=1;d<=c;d++){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");if(!c||!d)return!1}return d&&e}(c,d,g[0]))}else f=bQ(c,d);while(f);return c.delete(),d.delete(),e}_findTreeChanges(a,b,c){let d=0,e=[];for(let f=0;f<b.length;f++){let g=b[f];if(e.length>0&&g.startIndex>=e[e.length-1].newRangeStartOffset&&g.endIndex<=e[e.length-1].newRangeEndOffset)continue;let h=a.walk(),i=()=>h.startIndex<g.startIndex&&h.endIndex>g.endIndex;for(;i();){let a=h.gotoFirstChild(),b=!1;for(;a;)if(i()&&h.currentNode.isNamed){b=!0;break}else a=h.gotoNextSibling();if(!b){h.gotoParent();break}if(0===h.currentNode.childCount)break}let j=h.currentNode.startPosition,k=h.currentNode.endPosition,l=h.currentNode.startIndex,m=h.currentNode.endIndex,n={newRange:new w.Q(j.row+1,j.column+1,k.row+1,k.column+1),newRangeStartOffset:l,newRangeEndOffset:m};d<c.length&&bV(c[d],{startIndex:l,endIndex:m})?(c[d].startIndex<n.newRangeStartOffset&&(n.newRange=n.newRange.setStartPosition(c[d].startPosition.row+1,c[d].startPosition.column+1),n.newRangeStartOffset=c[d].startIndex),c[d].endIndex>n.newRangeEndOffset&&(n.newRange=n.newRange.setEndPosition(c[d].endPosition.row+1,c[d].endPosition.column+1),n.newRangeEndOffset=c[d].endIndex),d++):d<c.length&&c[d].endIndex<n.newRangeStartOffset&&e.push({newRange:new w.Q(c[d].startPosition.row+1,c[d].startPosition.column+1,c[d].endPosition.row+1,c[d].endPosition.column+1),newRangeStartOffset:c[d].startIndex,newRangeEndOffset:c[d].endIndex}),e.length>0&&e[e.length-1].newRangeEndOffset>=n.newRangeStartOffset?(e[e.length-1].newRange=w.Q.fromPositions(e[e.length-1].newRange.getStartPosition(),n.newRange.getEndPosition()),e[e.length-1].newRangeEndOffset=n.newRangeEndOffset):e.push(n)}return this._constrainRanges(e)}_constrainRanges(a){if(!this._ranges)return a;let b=[],c=0,d=0;for(;c<a.length&&d<this._ranges.length;){let e=a[c],f=this._ranges[d];if(e.newRangeEndOffset<f.startIndex)c++;else if(e.newRangeStartOffset>f.endIndex)d++;else{let a=Math.max(e.newRangeStartOffset,f.startIndex),d=Math.min(e.newRangeEndOffset,f.endIndex),g=e.newRange.intersectRanges(new w.Q(f.startPosition.row+1,f.startPosition.column+1,f.endPosition.row+1,f.endPosition.column+1));b.push({newRange:g,newRangeEndOffset:d,newRangeStartOffset:a}),d<e.newRangeEndOffset?(e.newRange=w.Q.fromPositions(g.getEndPosition(),e.newRange.getEndPosition()),e.newRangeStartOffset=d+1):c++}}return b}async _parseAndUpdateTree(a){let b=await this._parse();if(b)return this._lastFullyParsed?.delete(),this._lastFullyParsed=b.copy(),this._lastFullyParsedWithEdits?.delete(),this._lastFullyParsedWithEdits=b.copy(),b;this._tree.get()||this._parser.reset()}_parse(){let a="fullParse";return this._tree.get()&&(a="incrementalParse"),this._parseAndYield(a)}async _parseAndYield(a){let b,c,d=0,e=0,f=this.textModel.getVersionId(),g=(b=performance.now(),function(a){let c=performance.now();return c-b>50&&(b=c,!0)});do{let a=performance.now();c=this._parser.parse((a,b)=>this._parseCallback(a),this._tree.get(),{progressCallback:g,includedRanges:this._ranges}),d+=performance.now()-a,e++,await new Promise(a=>(0,bL._p)(a))}while(!this._store.isDisposed&&!c&&f===this.textModel.getVersionId());return this._sendParseTimeTelemetry(a,d,e),c&&f===this.textModel.getVersionId()?c:void 0}_parseCallback(a){try{return this.textModel.getTextBuffer().getNearestChunk(a)}catch(a){this._logService.debug("Error getting chunk for tree-sitter parsing",a)}}_setRanges(a){let b=[];if(this._ranges)for(let e of a){let a=!1;for(let b=0;b<this._ranges.length;b++){var c,d;let f=this._ranges[b];if(c=f,d=e,c.startPosition.row===d.startPosition.row&&c.startPosition.column===d.startPosition.column&&c.endPosition.row===d.endPosition.row&&c.endPosition.column===d.endPosition.column&&c.startIndex===d.startIndex&&c.endIndex===d.endIndex||bV(f,e)){a=!0;break}}a||b.push(e)}else b.push(...a);return this._ranges=a,b}_sendParseTimeTelemetry(a,b,c){this._logService.debug(`Tree parsing (${a}) took ${b} ms and ${c} passes.`),"fullParse"===a?this._telemetryService.publicLog2("treeSitter.fullParse",{languageId:this.languageId,time:b,passes:c}):this._telemetryService.publicLog2("treeSitter.incrementalParse",{languageId:this.languageId,time:b,passes:c})}createParsedTreeSync(a){let b=new this._parserClass;b.setLanguage(this._parser.language);let c=b.parse(a);return b.delete(),c??void 0}};function bV(a,b){return a.startIndex<=b.startIndex&&a.endIndex>=b.startIndex||b.startIndex<=a.startIndex&&b.endIndex>=a.startIndex}bU=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bT(5,bM.rr),bT(6,bN.k)],bU);var bW=c(28672),bX=c(45719);class bY{constructor(a){this._default=a,this._store=[]}get(a){return a<this._store.length?this._store[a]:this._default}set(a,b){for(;a>=this._store.length;)this._store[this._store.length]=this._default;this._store[a]=b}replace(a,b,c){if(a>=this._store.length)return;if(0===b)return void this.insert(a,c);if(0===c)return void this.delete(a,b);let d=this._store.slice(0,a),e=this._store.slice(a+b),f=function(a,b){let c=[];for(let d=0;d<a;d++)c[d]=b;return c}(c,this._default);this._store=d.concat(f,e)}delete(a,b){0===b||a>=this._store.length||this._store.splice(a,b)}insert(a,b){if(0===b||a>=this._store.length)return;let c=[];for(let a=0;a<b;a++)c[a]=this._default;this._store=(0,h.nK)(this._store,a,c)}}class bZ{get startLineNumber(){return this._startLineNumber}get endLineNumber(){return this._startLineNumber+this._tokens.length-1}constructor(a,b){this._startLineNumber=a,this._tokens=b}getLineTokens(a){return this._tokens[a-this._startLineNumber]}appendLineTokens(a){this._tokens.push(a)}}class b${constructor(){this._tokens=[]}add(a,b){if(this._tokens.length>0){let c=this._tokens[this._tokens.length-1];if(c.endLineNumber+1===a)return void c.appendLineTokens(b)}this._tokens.push(new bZ(a,[b]))}finalize(){return this._tokens}}class b_{constructor(a,b){this.tokenizationSupport=b,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new b2(a)}getStartState(a){return this.store.getStartState(a,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class b0 extends b_{constructor(a,b,c,d){super(a,b),this._textModel=c,this._languageIdCodec=d}updateTokensUntilLine(a,b){let c=this._textModel.getLanguageId();for(;;){let d=this.getFirstInvalidLine();if(!d||d.lineNumber>b)break;let e=this._textModel.getLineContent(d.lineNumber),f=b5(this._languageIdCodec,c,this.tokenizationSupport,e,!0,d.startState);a.add(d.lineNumber,f.tokens),this.store.setEndState(d.lineNumber,f.endState)}}getTokenTypeIfInsertingCharacter(a,b){let c=this.getStartState(a.lineNumber);if(!c)return 0;let d=this._textModel.getLanguageId(),e=this._textModel.getLineContent(a.lineNumber),f=e.substring(0,a.column-1)+b+e.substring(a.column-1),g=b5(this._languageIdCodec,d,this.tokenizationSupport,f,!0,c),h=new D.f7(g.tokens,f,this._languageIdCodec);if(0===h.getCount())return 0;let i=h.findTokenIndexAtOffset(a.column-1);return h.getStandardTokenType(i)}tokenizeLinesAt(a,b){let c=this.getStartState(a);if(!c)return null;let d=this._textModel.getLanguageId(),e=[],f=c;for(let a of b){let b=b5(this._languageIdCodec,d,this.tokenizationSupport,a,!0,f);e.push(new D.f7(b.tokens,a,this._languageIdCodec)),f=b.endState}return e}hasAccurateTokensForLine(a){return a<this.store.getFirstInvalidEndStateLineNumberOrMax()}isCheapToTokenize(a){let b=this.store.getFirstInvalidEndStateLineNumberOrMax();return!!(a<b||a===b&&2048>this._textModel.getLineLength(a))}tokenizeHeuristically(a,b,c){if(c<=this.store.getFirstInvalidEndStateLineNumberOrMax())return{heuristicTokens:!1};if(b<=this.store.getFirstInvalidEndStateLineNumberOrMax())return this.updateTokensUntilLine(a,c),{heuristicTokens:!1};let d=this.guessStartState(b),e=this._textModel.getLanguageId();for(let f=b;f<=c;f++){let b=this._textModel.getLineContent(f),c=b5(this._languageIdCodec,e,this.tokenizationSupport,b,!0,d);a.add(f,c.tokens),d=c.endState}return{heuristicTokens:!0}}guessStartState(a){let{likelyRelevantLines:b,initialState:c}=b1(this._textModel,a,this);c||(c=this.tokenizationSupport.getInitialState());let d=this._textModel.getLanguageId(),e=c;for(let a of b)e=b5(this._languageIdCodec,d,this.tokenizationSupport,a,!1,e).endState;return e}}function b1(a,b,c){let d=a.getLineFirstNonWhitespaceColumn(b),e=[],f=null;for(let g=b-1;d>1&&g>=1;g--){let b=a.getLineFirstNonWhitespaceColumn(g);if(0!==b&&b<d&&(e.push(a.getLineContent(g)),d=b,f=c?.getStartState(g)))break}return e.reverse(),{likelyRelevantLines:e,initialState:f??void 0}}class b2{constructor(a){this.lineCount=a,this._tokenizationStateStore=new b3,this._invalidEndStatesLineNumbers=new b4,this._invalidEndStatesLineNumbers.addRange(new bG.L(1,a+1))}getEndState(a){return this._tokenizationStateStore.getEndState(a)}setEndState(a,b){if(!b)throw new k.D7("Cannot set null/undefined state");this._invalidEndStatesLineNumbers.delete(a);let c=this._tokenizationStateStore.setEndState(a,b);return c&&a<this.lineCount&&this._invalidEndStatesLineNumbers.addRange(new bG.L(a+1,a+2)),c}acceptChange(a,b){this.lineCount+=b-a.length,this._tokenizationStateStore.acceptChange(a,b),this._invalidEndStatesLineNumbers.addRangeAndResize(new bG.L(a.startLineNumber,a.endLineNumberExclusive),b)}acceptChanges(a){for(let b of a){let[a]=(0,s.W)(b.text);this.acceptChange(new br.M(b.range.startLineNumber,b.range.endLineNumber+1),a+1)}}invalidateEndStateRange(a){this._invalidEndStatesLineNumbers.addRange(new bG.L(a.startLineNumber,a.endLineNumberExclusive))}getFirstInvalidEndStateLineNumber(){return this._invalidEndStatesLineNumbers.min}getFirstInvalidEndStateLineNumberOrMax(){return this.getFirstInvalidEndStateLineNumber()||Number.MAX_SAFE_INTEGER}allStatesValid(){return null===this._invalidEndStatesLineNumbers.min}getStartState(a,b){return 1===a?b:this.getEndState(a-1)}getFirstInvalidLine(a){let b=this.getFirstInvalidEndStateLineNumber();if(null===b)return null;let c=this.getStartState(b,a);if(!c)throw new k.D7("Start state must be defined");return{lineNumber:b,startState:c}}}class b3{constructor(){this._lineEndStates=new bY(null)}getEndState(a){return this._lineEndStates.get(a)}setEndState(a,b){let c=this._lineEndStates.get(a);return!(c&&c.equals(b))&&(this._lineEndStates.set(a,b),!0)}acceptChange(a,b){let c=a.length;b>0&&c>0&&(c--,b--),this._lineEndStates.replace(a.startLineNumber,c,b)}}class b4{constructor(){this._ranges=[]}get min(){return 0===this._ranges.length?null:this._ranges[0].start}delete(a){let b=this._ranges.findIndex(b=>b.contains(a));if(-1!==b){let c=this._ranges[b];c.start===a?c.endExclusive===a+1?this._ranges.splice(b,1):this._ranges[b]=new bG.L(a+1,c.endExclusive):c.endExclusive===a+1?this._ranges[b]=new bG.L(c.start,a):this._ranges.splice(b,1,new bG.L(c.start,a),new bG.L(a+1,c.endExclusive))}}addRange(a){bG.L.addRange(a,this._ranges)}addRangeAndResize(a,b){let c=0;for(;!(c>=this._ranges.length||a.start<=this._ranges[c].endExclusive);)c++;let d=c;for(;!(d>=this._ranges.length||a.endExclusive<this._ranges[d].start);)d++;let e=b-a.length;for(let a=d;a<this._ranges.length;a++)this._ranges[a]=this._ranges[a].delta(e);if(c===d){let d=new bG.L(a.start,a.start+b);d.isEmpty||this._ranges.splice(c,0,d)}else{let b=Math.min(a.start,this._ranges[c].start),f=Math.max(a.endExclusive,this._ranges[d-1].endExclusive),g=new bG.L(b,f+e);g.isEmpty?this._ranges.splice(c,d-c):this._ranges.splice(c,d-c,g)}}toString(){return this._ranges.map(a=>a.toString()).join(" + ")}}function b5(a,b,c,d,e,f){let g=null;if(c)try{g=c.tokenizeEncoded(d,e,f.clone())}catch(a){(0,k.dz)(a)}return g||(g=(0,bX.Lh)(a.encodeLanguageId(b),f)),D.f7.convertToEndOffset(g.tokens,d.length),g}class b6{constructor(a,b){this._tokenizerWithStateStore=a,this._backgroundTokenStore=b,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){!this._isScheduled&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._isScheduled=!0,(0,bq.$6)(a=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(a)}))}_backgroundTokenizeWithDeadline(a){let b=Date.now()+a.timeRemaining(),c=()=>{!this._isDisposed&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._backgroundTokenizeForAtLeast1ms(),Date.now()<b?(0,bL._p)(c):this._beginBackgroundTokenization())};c()}_backgroundTokenizeForAtLeast1ms(){let a=this._tokenizerWithStateStore._textModel.getLineCount(),b=new b$,c=bW.W.create(!1);do if(c.elapsed()>1||this._tokenizeOneInvalidLine(b)>=a)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(b.finalize()),this.checkFinished()}_hasLinesToTokenize(){return!!this._tokenizerWithStateStore&&!this._tokenizerWithStateStore.store.allStatesValid()}_tokenizeOneInvalidLine(a){let b=this._tokenizerWithStateStore?.getFirstInvalidLine();return b?(this._tokenizerWithStateStore.updateTokensUntilLine(a,b.lineNumber),b.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){!this._isDisposed&&this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(a,b){this._tokenizerWithStateStore.store.invalidateEndStateRange(new br.M(a,b))}}class b7{get children(){return this._children}get length(){return this._length}constructor(a){this.height=a,this._children=[],this._length=0}static create(a,b){let c=new b7(a.height+1);return c.appendChild(a),c.appendChild(b),c}canAppendChild(){return this._children.length<3}appendChild(a){if(!this.canAppendChild())throw Error("Cannot insert more than 3 children in a ListNode");this._children.push(a),this._length+=a.length,this._updateParentLength(a.length),b8(a)||(a.parent=this)}_updateParentLength(a){let b=this.parent;for(;b;)b._length+=a,b=b.parent}unappendChild(){let a=this._children.pop();return this._length-=a.length,this._updateParentLength(-a.length),a}prependChild(a){if(this._children.length>=3)throw Error("Cannot prepend more than 3 children in a ListNode");this._children.unshift(a),this._length+=a.length,this._updateParentLength(a.length),b8(a)||(a.parent=this)}unprependChild(){let a=this._children.shift();return this._length-=a.length,this._updateParentLength(-a.length),a}lastChild(){return this._children[this._children.length-1]}dispose(){this._children.splice(0,this._children.length)}}function b8(a){return void 0!==a.token}function b9(a,b){let c,d=a,e=[];for(;;){if(b.height===d.height){c=b;break}if(b8(d))throw Error("unexpected");e.push(d),d=d.lastChild()}for(let a=e.length-1;a>=0;a--){let b=e[a];c&&(b.children.length>=3?c=b7.create(b.unappendChild(),c):(b.appendChild(c),c=void 0))}if(!c)return a;{let b=new b7(c.height+1);return b.appendChild(a),b.appendChild(c),b}}(d=e||(e={}))[d.None=0]="None",d[d.ViewportGuess=1]="ViewportGuess",d[d.EditGuess=2]="EditGuess",d[d.Accurate=3]="Accurate";class ca{constructor(a){this._textModel=a,this._root=this.createEmptyRoot()}createEmptyRoot(){return{length:this._textModel.getValueLength(),token:0,height:0,tokenQuality:e.None}}buildStore(a,b){this._root=this.createFromUpdates(a,b)}createFromUpdates(a,b){if(0===a.length)return this.createEmptyRoot();let c={length:a[0].length,token:a[0].token,height:0,tokenQuality:b};for(let d=1;d<a.length;d++)c=b9(c,{length:a[d].length,token:a[d].token,height:0,tokenQuality:b});return c}update(a,b,c){0!==b.length&&this.replace(a,b[0].startOffsetInclusive,b,c)}delete(a,b){this.replace(a,b,[],e.EditGuess)}replace(a,b,c,d){let e,f=b+a,g=[],h=[],i=[{node:this._root,offset:0}];for(;i.length>0;){let a=i.pop(),c=a.offset;if(c<b&&c+a.node.length<=b){b8(a.node)||(a.node.parent=void 0),g.push(a.node);continue}if(b8(a.node)&&c<b&&g.push({length:b-c,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality}),!(b<=c)||!(c+a.node.length<=f)){if(c>=f){b8(a.node)||(a.node.parent=void 0),h.push(a.node);continue}if(b8(a.node)&&c+a.node.length>f){h.push({length:c+a.node.length-f,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality});continue}if(!b8(a.node)){let b=c+a.node.length;for(let c=a.node.children.length-1;c>=0;c--)b-=a.node.children[c].length,i.push({node:a.node.children[c],offset:b})}}}let j=(e=c.length>0?g.concat(this.createFromUpdates(c,d),h):g.concat(h))[0];for(let a=1;a<e.length;a++){var k,l;k=j,l=e[a],j=k.height===l.height?b7.create(k,l):k.height>l.height?b9(k,l):function(a,b){let c=a,d=[];for(;b.height!==c.height;){if(b8(c))throw Error("unexpected");d.push(c),c=c.children[0]}let e=b;for(let a=d.length-1;a>=0;a--){let b=d[a];e&&(b.children.length>=3?e=b7.create(e,b.unprependChild()):(b.prependChild(e),e=void 0))}return e?b7.create(e,a):a}(l,k)}this._root=j??this.createEmptyRoot()}traverseInOrderInRange(a,b,c){let d=[{node:this._root,offset:0}];for(;d.length>0;){let{node:e,offset:f}=d.pop();if(!(f+e.length<=a)&&!(f>=b)){if(c(e,f))return;if(!b8(e)){let a=f+e.length;for(let b=e.children.length-1;b>=0;b--)a-=e.children[b].length,d.push({node:e.children[b],offset:a})}}}}getTokenAt(a){let b;return this.traverseInOrderInRange(a,this._root.length,(a,c)=>!!b8(a)&&(b={token:a.token,startOffsetInclusive:c,length:a.length},!0)),b}getTokensInRange(a,b){let c=[];return this.traverseInOrderInRange(a,b,(d,e)=>{if(b8(d)){let f=d.length,g=e;e<a&&e+d.length>b?(g=a,f=b-a):e<a?(f-=a-e,g=a):e+d.length>b&&(f-=e+d.length-b),c.push({token:d.token,startOffsetInclusive:g,length:f})}return!1}),c}markForRefresh(a,b){this.traverseInOrderInRange(a,b,a=>(b8(a)&&(a.tokenQuality=e.None),!1))}rangeHasTokens(a,b,c){let d=!0;return this.traverseInOrderInRange(a,b,a=>(b8(a)&&a.tokenQuality<c&&(d=!1),!1)),d}rangeNeedsRefresh(a,b){let c=!1;return this.traverseInOrderInRange(a,b,a=>(b8(a)&&a.tokenQuality!==e.Accurate&&(c=!0),!1)),c}getNeedsRefresh(){let a=[];return this.traverseInOrderInRange(0,this._textModel.getValueLength(),(b,c)=>(b8(b)&&b.tokenQuality!==e.Accurate&&(a.length>0&&a[a.length-1].endOffset===c?a[a.length-1].endOffset+=b.length:a.push({startOffset:c,endOffset:c+b.length})),!1)),a}dispose(){let a=[[this._root,!1]];for(;a.length>0;){let[b,c]=a.pop();if(b8(b));else if(c)b.dispose(),b.parent=void 0;else{a.push([b,!0]);for(let c=b.children.length-1;c>=0;c--)a.push([b.children[c],!1])}}this._root=void 0}}var cb=c(85214);let cc=(0,p.u1)("treeSitterThemeService");var cd=c(87350),ce=c(93539);let cf=class extends m.jG{get _textModel(){return this._tree.textModel}constructor(a,b,c,d,f){super(),this._tree=a,this._highlightingQueries=b,this._languageIdCodec=c,this._visibleLineRanges=d,this._treeSitterThemeService=f,this._onDidChangeTokens=this._register(new l.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidCompleteBackgroundTokenization=this._register(new l.vl),this.onDidChangeBackgroundTokenization=this._onDidCompleteBackgroundTokenization.event,this._encodedLanguageId=this._languageIdCodec.encodeLanguageId(this._tree.languageId),this._register((0,cd.lp)(this._treeSitterThemeService.onChange,()=>{this._updateTheme()})),this._tokenStore=this._register(new ca(this._textModel)),this._accurateVersion=this._textModel.getVersionId(),this._guessVersion=this._textModel.getVersionId(),this._tokenStore.buildStore(this._createEmptyTokens(),e.None),this._register((0,ce.fm)(a=>{let b=this._visibleLineRanges.read(a);this._parseAndTokenizeViewPort(b)})),this._register((0,ce.Y)({owner:this,changeTracker:function(a){return{createChangeSummary:a=>({changes:[]}),handleChange(b,c){for(let d in a)b.didChange(a[d])&&c.changes.push({key:d,change:b.change});return!0},beforeUpdate(b,c){for(let d in a){if("changes"===d)throw new k.D7('property name "changes" is reserved for change tracking');c[d]=a[d].read(b)}}}}({tree:this._tree.tree})},(a,b)=>{let c=b.changes.at(0)?.change;if(b.changes.length>1)throw new k.D7("The tree changed twice in one transaction. This is currently not supported and should not happen.");if(c){if(this.hasTokens())for(let a of c.ranges)this._markForRefresh(a.newRange);this.hasTokens()?this._handleTreeUpdate(c.ranges,c.versionId):this._firstTreeUpdate(c.versionId)}else b.tree&&this._firstTreeUpdate(this._tree.treeLastParsedVersion.read(a))}))}handleContentChanged(a){for(let b of(this._guessVersion=a.versionId,a.changes))if(b.text.length>b.rangeLength){let a,c=b.rangeOffset>0?b.rangeOffset-1:b.rangeOffset,d=this._tokenStore.getTokenAt(c);d?(a={startOffsetInclusive:d.startOffsetInclusive,length:d.length+b.text.length-b.rangeLength,token:d.token},this._tokenStore.markForRefresh(c,b.rangeOffset+(b.text.length>b.rangeLength?b.text.length:b.rangeLength))):a={startOffsetInclusive:c,length:b.text.length,token:0},this._tokenStore.update(d?.length??0,[a],e.EditGuess)}else if(b.text.length<b.rangeLength){let a=b.rangeLength-b.text.length;this._tokenStore.delete(a,b.rangeOffset)}}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this.getTokens(a);return new D.f7(c,b,this._languageIdCodec)}_createEmptyTokens(){let a=this._emptyToken(),b=this._textModel.getValueLength();return[this._emptyTokensForOffsetAndLength(0,b,a)]}_emptyToken(){return this._treeSitterThemeService.findMetadata([],this._encodedLanguageId,!1,void 0)}_emptyTokensForOffsetAndLength(a,b,c){return{token:c,length:a+b,startOffsetInclusive:0}}hasAccurateTokensForLine(a){return this.hasTokens(new w.Q(a,1,a,this._textModel.getLineMaxColumn(a)))}tokenizeLinesAt(a,b){let c=this._guessTokensForLinesContent(a,b),d=[];if(!c)return null;for(let a=0;a<c.length;a++)d.push(new D.f7(c[a],b[a],this._languageIdCodec));return d}_rangeHasTokens(a,b){return this._tokenStore.rangeHasTokens(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()),b)}hasTokens(a){return!a||this._guessVersion===this._accurateVersion||!this._tokenStore.rangeNeedsRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}getTokens(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=this._textModel.getOffsetAt({lineNumber:a,column:this._textModel.getLineLength(a)+1}),d=this._tokenStore.getTokensInRange(b,c),e=new Uint32Array(2*d.length);for(let a=0;a<d.length;a++)e[2*a]=d[a].startOffsetInclusive-b+d[a].length,e[2*a+1]=d[a].token;return e}getTokensInRange(a,b,c,d){let e=d?this._tokenizeCapturesWithMetadata(d,b,c):this._tokenize(a,b,c);if(e?.endOffsetsAndMetadata)return this._rangeTokensAsUpdates(b,e.endOffsetsAndMetadata)}_updateTokensInStore(a,b,c){for(let d of(this._accurateVersion=a,b)){let b,e=d.newTokens.length>0?d.newTokens[d.newTokens.length-1]:void 0;b=e&&this._guessVersion>=a?e.startOffsetInclusive+e.length-d.newTokens[0].startOffsetInclusive:d.oldRangeLength?d.oldRangeLength:0,this._tokenStore.update(b,d.newTokens,c)}}_markForRefresh(a){this._tokenStore.markForRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}_getNeedsRefresh(){let a=this._tokenStore.getNeedsRefresh();return a?a.map(a=>({range:w.Q.fromPositions(this._textModel.getPositionAt(a.startOffset),this._textModel.getPositionAt(a.endOffset)),startOffset:a.startOffset,endOffset:a.endOffset})):[]}_parseAndTokenizeViewPort(a){for(let b of a.map(a=>a.toInclusiveRange()).filter(cb.O9)){let a=this._textModel.getOffsetAt(b.getStartPosition()),c=this._textModel.getOffsetAt(b.getEndPosition()),d=this._textModel.getVersionId();if(this._rangeHasTokens(b,e.ViewportGuess))continue;let f=this._textModel.getValueInRange(b),g=this._forceParseAndTokenizeContent(b,a,c,f,!0);if(!g||this._rangeHasTokens(b,e.ViewportGuess)||0===g.length)continue;let h=g[g.length-1],i=h.startOffsetInclusive+h.length-g[0].startOffsetInclusive;this._updateTokensInStore(d,[{newTokens:g,oldRangeLength:i}],e.ViewportGuess),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:b.startLineNumber,toLineNumber:b.endLineNumber}]}})}}_guessTokensForLinesContent(a,b){if(0===b.length)return;let c=b.join(this._textModel.getEOL()),d=new w.Q(1,1,a+b.length,b[b.length-1].length+1),e=this._textModel.getOffsetAt({lineNumber:a,column:1}),f=this._forceParseAndTokenizeContent(d,e,e+c.length,c,!1);if(!f)return;let g=Array(b.length),h=0,i=0,j=0;for(let a=0;a<b.length;a++){let c=[],d=!1;for(let e=h;!d&&e<f.length;e++){let g=f[e],k=g.endOffset-j,l=i-j;if(k<=b[a].length)c.push({endOffset:k,metadata:g.metadata}),h++;else if(l<b[a].length){let e={endOffset:b[a].length,metadata:g.metadata};c.push(e),d=!0}else d=!0;i=g.endOffset}g[a]=this._endOffsetTokensToUint32Array(c),j+=b[a].length+this._textModel.getEOL().length}return g}_forceParseAndTokenizeContent(a,b,c,d,e){let f=b1(this._textModel,a.startLineNumber).likelyRelevantLines,g=f.join(this._textModel.getEOL()),h=this._tree.createParsedTreeSync(`${g}${d}`);if(!h)return;let i=new w.Q(1,1,a.endLineNumber-a.startLineNumber+1+f.length,a.endColumn),j=this.captureAtRange(i),k=this._tokenizeCapturesWithMetadata(j,g.length,c-b+g.length);if(h.delete(),k)if(e)return this._rangeTokensAsUpdates(b,k.endOffsetsAndMetadata,g.length);else return k.endOffsetsAndMetadata}_firstTreeUpdate(a){return this._setViewPortTokens(a)}_setViewPortTokens(a){let b=this._visibleLineRanges.get().map(a=>{let b=a.toInclusiveRange();if(!b)return;let c=this._textModel.getOffsetAt(b.getStartPosition()),d=this._textModel.getOffsetAt(b.getEndPosition());return{newRange:b,newRangeEndOffset:d,newRangeStartOffset:c}}).filter(cb.O9);return this._handleTreeUpdate(b,a)}_handleTreeUpdate(a,b){let c=[];for(let b=0;b<a.length;b++)if(a[b].newRange.endLineNumber-a[b].newRange.startLineNumber>1e3){let d=a[b].newRange.endLineNumber,e=a[b].newRange.startLineNumber,f=a[b].newRange.startColumn,g=e+1e3;do{let h=new v.y(e,f),i=g===a[b].newRange.endLineNumber?a[b].newRange.endColumn:this._textModel.getLineMaxColumn(g),j=new v.y(g,i),k=w.Q.fromPositions(h,j);c.push({range:k,startOffset:this._textModel.getOffsetAt(k.getStartPosition()),endOffset:this._textModel.getOffsetAt(k.getEndPosition())}),e=g+1,f=1,g<d&&g+1e3>d?g=d:g+=1e3}while(g<=d)}else if(0===b||c[b-1].endOffset<a[b].newRangeStartOffset)c.push({range:a[b].newRange,startOffset:a[b].newRangeStartOffset,endOffset:a[b].newRangeEndOffset});else if(c[b-1].endOffset<a[b].newRangeEndOffset){let d=this._textModel.getPositionAt(c[b-1].endOffset+1),e=new w.Q(d.lineNumber,d.column,a[b].newRange.endLineNumber,a[b].newRange.endColumn);c.push({range:e,startOffset:c[b-1].endOffset+1,endOffset:a[b].newRangeEndOffset})}let d=c.map(a=>this._getCaptures(a.range));return this._updateTreeForRanges(c,b,d).then(()=>{this._textModel.isDisposed()||this._tree.treeLastParsedVersion.get()!==this._textModel.getVersionId()||this._refreshNeedsRefresh(b)})}async _updateTreeForRanges(a,b,c){let d;for(let f=0;f<a.length&&(this._textModel.isDisposed()||b===this._textModel.getVersionId());f++){let g=c[f],h=a[f],i=this.getTokensInRange(h.range,h.startOffset,h.endOffset,g);d=i?{newTokens:i}:{newTokens:[]},this._updateTokensInStore(b,[d],e.Accurate),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:h.range.getStartPosition().lineNumber,toLineNumber:h.range.getEndPosition().lineNumber}]}}),await new Promise(a=>(0,bL._p)(a))}this._onDidCompleteBackgroundTokenization.fire()}_refreshNeedsRefresh(a){let b=this._getNeedsRefresh();if(0===b.length)return;let c=Array(b.length);for(let a=0;a<b.length;a++){let d=b[a];c[a]={newRange:d.range,newRangeStartOffset:d.startOffset,newRangeEndOffset:d.endOffset}}this._handleTreeUpdate(c,a)}_rangeTokensAsUpdates(a,b,c){let d=[],e=0;for(let f of b){let b;f.endOffset<=e||c&&f.endOffset<c||(b=c&&e<c?{startOffsetInclusive:a+c,length:f.endOffset-c,token:f.metadata}:{startOffsetInclusive:a+e,length:f.endOffset-e,token:f.metadata},d.push(b),e=f.endOffset)}return d}_updateTheme(){let a=this._textModel.getFullModelRange();this._markForRefresh(a),this._parseAndTokenizeViewPort(this._visibleLineRanges.get())}captureAtRange(a){let b=this._tree.tree.get();return b?this._highlightingQueries.captures(b.rootNode,{startPosition:{row:a.startLineNumber-1,column:a.startColumn-1},endPosition:{row:a.endLineNumber-1,column:a.endColumn-1}}).map(a=>({name:a.name,text:a.node.text,node:{startIndex:a.node.startIndex,endIndex:a.node.endIndex,startPosition:{lineNumber:a.node.startPosition.row+1,column:a.node.startPosition.column+1},endPosition:{lineNumber:a.node.endPosition.row+1,column:a.node.endPosition.column+1}},encodedLanguageId:this._encodedLanguageId})):[]}captureAtRangeWithInjections(a){let b=this.captureAtRange(a);for(let c=0;c<b.length;c++){let d=b[c],e=d.node.startPosition.lineNumber,f=d.node.endPosition.lineNumber,g=d.node.startPosition.column,h=d.node.endPosition.column,i=e>a.startLineNumber&&e<a.endLineNumber?e:a.startLineNumber,j=f>a.startLineNumber&&f<a.endLineNumber?f:a.endLineNumber,k=e===a.startLineNumber?g<a.startColumn?a.startColumn:g:e<a.startLineNumber?a.startColumn:g,l=f===a.endLineNumber?h>a.endColumn?a.endColumn:h:f>a.endLineNumber?a.endColumn:h,m=new w.Q(i,k,j,l),n=this._getInjectionCaptures(d,m);n&&n.length>0&&(b.splice(c+1,0,...n),c+=n.length)}return b}tokenizeEncoded(a){let b=this._tokenizeEncoded(a);if(!b)return;let c=this._rangeTokensAsUpdates(this._textModel.getOffsetAt({lineNumber:a,column:1}),b.result);b.versionId===this._textModel.getVersionId()&&this._updateTokensInStore(b.versionId,[{newTokens:c,oldRangeLength:this._textModel.getLineLength(a)}],e.Accurate)}_getCaptures(a){return this.captureAtRangeWithInjections(a)}_tokenize(a,b,c){let d=this._getCaptures(a),e=this._tokenizeCapturesWithMetadata(d,b,c);if(e)return{...e,versionId:this._tree.treeLastParsedVersion.get()}}_createTokensFromCaptures(a,b,c){let d=this._tree.tree.get(),e=bW.W.create(),f=c-b,g=this._languageIdCodec.encodeLanguageId(this._tree.languageId),h=cg[this._tree.languageId]||"source";if(0===a.length)return d?(e.stop(),{endOffsets:[{endOffset:f,scopes:[],encodedLanguageId:g}],captureTime:e.elapsed()}):void 0;let i=Array(a.length);i.fill({endOffset:0,scopes:[h],encodedLanguageId:g});let j=0,k=()=>{i.push({endOffset:0,scopes:[h],encodedLanguageId:g})},l=(a,b)=>a.name.includes("punctuation")&&a.text?Array.from(a.text.matchAll(ch)).map(a=>b+a.index):void 0,m=(a,b,c,d)=>{if(void 0!==d){let e=i[d].scopes,f=i[d].bracket;if((d>0?i[d-1].endOffset:0)!==b){let g;if(f&&f.length>0){g=[];let a=[];for(let d=0;d<f.length;d++){let e=f[d];e<b?g.push(e):e>c&&a.push(e)}0===g.length&&(g=void 0),f=0===a.length?void 0:a}i.splice(d,0,{endOffset:b,scopes:[...e],bracket:g,encodedLanguageId:a.encodedLanguageId}),d++,k(),j++}i.splice(d,0,{endOffset:c,scopes:[...e,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId}),i[j].bracket=f}else i[j]={endOffset:c,scopes:[h,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId};j++};for(let d=0;d<a.length;d++){let e,f=a[d],g=f.node.endIndex<c?f.node.endIndex<b?b:f.node.endIndex:c,n=f.node.startIndex<b?b:f.node.startIndex,o=g-b,p=g-n;e=d>0?i[j-1].endOffset:n-b-1;let q=o-p;if(e>=0&&e<q&&(i[j]={endOffset:q,scopes:[h],encodedLanguageId:this._encodedLanguageId},j++,k()),!(p<0))if(e>=o){let a=j-1,b=i[a].endOffset,c=a>=2?i[a-1].endOffset:0;do{if(c+p===b){if(c===q){i[a].scopes.push(f.name);let b=i[a].bracket;i[a].bracket=b&&b.length>0?b:l(f,q)}}else if(c<=q){m(f,q,o,a);break}c=--a>=1?i[a-1].endOffset:0,b=a>=0?i[a].endOffset:0}while(b>q)}else m(f,q,o)}i[j-1].endOffset<f&&f-i[j-1].endOffset>0&&(k(),i[j]={endOffset:f,scopes:i[j].scopes,encodedLanguageId:this._encodedLanguageId},j++);for(let a=0;a<i.length;a++)if(0===i[a].endOffset&&0!==a){i.splice(a,i.length-a);break}return{endOffsets:i,captureTime:e.elapsed()}}_getInjectionCaptures(a,b){return[]}_tokenizeCapturesWithMetadata(a,b,c){let d=bW.W.create(),e=this._createTokensFromCaptures(a,b,c);if(!e)return;let f=e.endOffsets;for(let a=0;a<f.length;a++){let b=f[a];b.metadata=this._treeSitterThemeService.findMetadata(b.scopes,b.encodedLanguageId,!!b.bracket&&b.bracket.length>0,void 0)}let g=d.elapsed();return{endOffsetsAndMetadata:f,captureTime:e.captureTime,metadataTime:g}}_tokenizeEncoded(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=a+1<=this._textModel.getLineCount()?this._textModel.getOffsetAt({lineNumber:a+1,column:1}):this._textModel.getValueLength(),d=c-b,e=this._tokenize(new w.Q(a,1,a,d+1),b,c);if(e)return{result:e.endOffsetsAndMetadata,captureTime:e.captureTime,metadataTime:e.metadataTime,versionId:e.versionId}}_endOffsetTokensToUint32Array(a){let b=new Uint32Array(2*a.length);for(let c=0;c<a.length;c++)b[2*c]=a[c].endOffset,b[2*c+1]=a[c].metadata;return b}};cf=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([function(a,b){cc(a,b,4)}],cf);let cg={css:"source.css",typescript:"source.ts",ini:"source.ini",regex:"source.regex"},ch=/[\{\}\[\]\<\>\(\)]/g;var ci=c(50661);c(74864);class cj{static resolved(a){return new cj(Promise.resolve(a))}constructor(a){this._value=(0,bS.FY)(this,void 0),this.promiseResult=this._value,this.promise=a.then(a=>((0,bR.Rn)(b=>{this._value.set(new ck(a,void 0),b)}),a),a=>{throw(0,bR.Rn)(b=>{this._value.set(new ck(void 0,a),b)}),a})}}class ck{constructor(a,b){this.data=a,this.error=b}getDataOrThrow(){if(this.error)throw this.error;return this.data}}var cl=function(a,b){return function(c,d){b(c,d,a)}};let cm=class extends bA{constructor(a,b,c,d,e,f){super(b,c),this._languageIdObs=a,this._treeSitterLibraryService=e,this._instantiationService=f,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new l.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event;const g=new cj(this._treeSitterLibraryService.getParserClass()),h=(0,bv.un)(this,a=>g.promiseResult?.read(a)?.getDataOrThrow());this._tree=(0,bv.un)(this,a=>{let b=h.read(a);if(!b)return;let c=this._languageIdObs.read(a),d=this._treeSitterLibraryService.getLanguage(c,!1,a);if(!d)return;let e=new b;if(a.store.add((0,m.s)(()=>{e.delete()})),e.setLanguage(d),void 0!==this._treeSitterLibraryService.getInjectionQueries(c,a))return a.store.add(this._instantiationService.createInstance(bU,c,void 0,e,b,this._textModel))}),this._tokenizationImpl=(0,bv.un)(this,a=>{let b=this._tree.read(a);if(!b)return;let c=this._treeSitterLibraryService.getHighlightingQueries(b.languageId,a);if(c)return a.store.add(this._instantiationService.createInstance(cf,b,c,this._languageIdCodec,d))}),this._register((0,ce.fm)(a=>{let b=this._tokenizationImpl.read(a);b&&(a.store.add(b.onDidChangeTokens(a=>{this._onDidChangeTokens.fire(a.changes)})),a.store.add(b.onDidChangeBackgroundTokenization(a=>{this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire()})))}))}getLineTokens(a){let b=this._tokenizationImpl.get();if(!b){let b=this._textModel.getLineContent(a);return D.f7.createEmpty(b,this._languageIdCodec)}return b.getLineTokens(a)}todo_resetTokenization(a=!0){a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}handleDidChangeAttached(){}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else{let b=this._tokenizationImpl.get();b?.handleContentChanged(a)}let b=this._tree.get();b?.handleContentChange(a)}forceTokenization(a){let b=this._tokenizationImpl.get();b&&(b.hasAccurateTokensForLine(a)||b.tokenizeEncoded(a))}hasAccurateTokensForLine(a){let b=this._tokenizationImpl.get();return!!b&&b.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!0}getTokenTypeIfInsertingCharacter(a,b,c){return 0}tokenizeLinesAt(a,b){let c=this._tokenizationImpl.get();return c?c.tokenizeLinesAt(a,b):null}get hasTokens(){let a=this._tokenizationImpl.get();return!!a&&a.hasTokens()}};cm=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([cl(4,ci.t),cl(5,p._Y)],cm);class cn{constructor(a){this._pieces=[],this._isComplete=!1,this._languageIdCodec=a}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return 0===this._pieces.length}set(a,b,c){if(this._pieces=a||[],this._isComplete=b,c)for(let a of this._pieces)a.reportIfInvalid(c)}setPartial(a,b){let c=a;if(b.length>0){let d=b[0].getRange(),e=b[b.length-1].getRange();if(!d||!e)return a;c=a.plusRange(d).plusRange(e)}let d=null;for(let a=0,b=this._pieces.length;a<b;a++){let e=this._pieces[a];if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};break}if(e.removeTokens(c),e.isEmpty()){this._pieces.splice(a,1),a--,b--;continue}if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};continue}let[f,g]=e.split(c);if(f.isEmpty()){d=d||{index:a};continue}g.isEmpty()||(this._pieces.splice(a,1,f,g),a++,b++,d=d||{index:a})}return d=d||{index:this._pieces.length},b.length>0&&(this._pieces=(0,h.nK)(this._pieces,d.index,b)),c}isComplete(){return this._isComplete}addSparseTokens(a,b){if(0===b.getTextLength())return b;let c=this._pieces;if(0===c.length)return b;let d=cn._findFirstPieceWithLine(c,a),e=c[d].getLineTokens(a);if(!e)return b;let f=b.getCount(),g=e.getCount(),h=0,i=[],j=0,k=0,l=(a,b)=>{a<=k||(k=a,i[j++]=a,i[j++]=b)};for(let a=0;a<g;a++){let c=Math.min(e.getStartCharacter(a),b.getTextLength()),d=Math.min(e.getEndCharacter(a),b.getTextLength()),g=e.getMetadata(a),i=((1&g?2048:0)|(2&g?4096:0)|(4&g?8192:0)|(8&g?16384:0)|(16&g?0xff8000:0)|(32&g?0xff000000:0))>>>0,j=~i>>>0;for(;h<f&&b.getEndOffset(h)<=c;)l(b.getEndOffset(h),b.getMetadata(h)),h++;for(h<f&&b.getStartOffset(h)<c&&l(c,b.getMetadata(h));h<f&&b.getEndOffset(h)<d;)l(b.getEndOffset(h),b.getMetadata(h)&j|g&i),h++;if(h<f)l(d,b.getMetadata(h)&j|g&i),b.getEndOffset(h)===d&&h++;else{let a=Math.min(Math.max(0,h-1),f-1);l(d,b.getMetadata(a)&j|g&i)}}for(;h<f;)l(b.getEndOffset(h),b.getMetadata(h)),h++;return new D.f7(new Uint32Array(i),b.getLineContent(),this._languageIdCodec)}static _findFirstPieceWithLine(a,b){let c=0,d=a.length-1;for(;c<d;){let e=c+Math.floor((d-c)/2);if(a[e].endLineNumber<b)c=e+1;else if(a[e].startLineNumber>b)d=e-1;else{for(;e>c&&a[e-1].startLineNumber<=b&&b<=a[e-1].endLineNumber;)e--;return e}}return c}acceptEdit(a,b,c,d,e){for(let f=0;f<this._pieces.length;f++){let g=this._pieces[f];g.acceptEdit(a,b,c,d,e),g.isEmpty()&&(this._pieces.splice(f,1),f--)}}}var co=c(36036);let cp=new Uint32Array(0).buffer;class cq{static deleteBeginning(a,b){return null===a||a===cp?a:cq.delete(a,0,b)}static deleteEnding(a,b){if(null===a||a===cp)return a;let c=cr(a),d=c[c.length-2];return cq.delete(a,b,d)}static delete(a,b,c){let d,e;if(null===a||a===cp||b===c)return a;let f=cr(a),g=f.length>>>1;if(0===b&&f[f.length-2]===c)return cp;let h=D.f7.findIndexInTokensArray(f,b),i=h>0?f[h-1<<1]:0;if(c<f[h<<1]){let d=c-b;for(let a=h;a<g;a++)f[a<<1]-=d;return a}i!==b?(f[h<<1]=b,d=h+1<<1,e=b):(d=h<<1,e=i);let j=c-b;for(let a=h+1;a<g;a++){let b=f[a<<1]-j;b>e&&(f[d++]=b,f[d++]=f[(a<<1)+1],e=b)}if(d===f.length)return a;let k=new Uint32Array(d);return k.set(f.subarray(0,d),0),k.buffer}static append(a,b){if(b===cp)return a;if(a===cp)return b;if(null===a)return a;if(null===b)return null;let c=cr(a),d=cr(b),e=d.length>>>1,f=new Uint32Array(c.length+d.length);f.set(c,0);let g=c.length,h=c[c.length-2];for(let a=0;a<e;a++)f[g++]=d[a<<1]+h,f[g++]=d[(a<<1)+1];return f.buffer}static insert(a,b,c){if(null===a||a===cp)return a;let d=cr(a),e=d.length>>>1,f=D.f7.findIndexInTokensArray(d,b);f>0&&d[f-1<<1]===b&&f--;for(let a=f;a<e;a++)d[a<<1]+=c;return a}}function cr(a){return a instanceof Uint32Array?a:new Uint32Array(a)}class cs{constructor(a){this._lineTokens=[],this._len=0,this._languageIdCodec=a}flush(){this._lineTokens=[],this._len=0}get hasTokens(){return this._lineTokens.length>0}getTokens(a,b,c){let d=null;if(b<this._len&&(d=this._lineTokens[b]),null!==d&&d!==cp)return new D.f7(cr(d),c,this._languageIdCodec);let e=new Uint32Array(2);return e[0]=c.length,e[1]=ct(this._languageIdCodec.encodeLanguageId(a)),new D.f7(e,c,this._languageIdCodec)}static _massageTokens(a,b,c){let d=c?cr(c):null;if(0===b){let b=!1;if(d&&d.length>1&&(b=aa.x.getLanguageId(d[1])!==a),!b)return cp}if(!d||0===d.length){let c=new Uint32Array(2);return c[0]=b,c[1]=ct(a),c.buffer}return(d[d.length-2]=b,0===d.byteOffset&&d.byteLength===d.buffer.byteLength)?d.buffer:d}_ensureLine(a){for(;a>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(a,b){0!==b&&(a+b>this._len&&(b=this._len-a),this._lineTokens.splice(a,b),this._len-=b)}_insertLines(a,b){if(0===b)return;let c=[];for(let a=0;a<b;a++)c[a]=null;this._lineTokens=(0,h.nK)(this._lineTokens,a,c),this._len+=b}setTokens(a,b,c,d,e){let f=cs._massageTokens(this._languageIdCodec.encodeLanguageId(a),c,d);this._ensureLine(b);let g=this._lineTokens[b];return this._lineTokens[b]=f,!!e&&!cs._equals(g,f)}static _equals(a,b){if(!a||!b)return!a&&!b;let c=cr(a),d=cr(b);if(c.length!==d.length)return!1;for(let a=0,b=c.length;a<b;a++)if(c[a]!==d[a])return!1;return!0}acceptEdit(a,b,c){this._acceptDeleteRange(a),this._acceptInsertText(new v.y(a.startLineNumber,a.startColumn),b,c)}_acceptDeleteRange(a){let b=a.startLineNumber-1;if(b>=this._len)return;if(a.startLineNumber===a.endLineNumber){if(a.startColumn===a.endColumn)return;this._lineTokens[b]=cq.delete(this._lineTokens[b],a.startColumn-1,a.endColumn-1);return}this._lineTokens[b]=cq.deleteEnding(this._lineTokens[b],a.startColumn-1);let c=a.endLineNumber-1,d=null;c<this._len&&(d=cq.deleteBeginning(this._lineTokens[c],a.endColumn-1)),this._lineTokens[b]=cq.append(this._lineTokens[b],d),this._deleteLines(a.startLineNumber,a.endLineNumber-a.startLineNumber)}_acceptInsertText(a,b,c){if(0===b&&0===c)return;let d=a.lineNumber-1;if(!(d>=this._len)){if(0===b){this._lineTokens[d]=cq.insert(this._lineTokens[d],a.column-1,c);return}this._lineTokens[d]=cq.deleteEnding(this._lineTokens[d],a.column-1),this._lineTokens[d]=cq.insert(this._lineTokens[d],a.column-1,c),this._insertLines(a.lineNumber,b)}}setMultilineTokens(a,b){if(0===a.length)return{changes:[]};let c=[];for(let d=0,e=a.length;d<e;d++){let e=a[d],f=0,g=0,h=!1;for(let a=e.startLineNumber;a<=e.endLineNumber;a++)h?(this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!1),g=a):this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!0)&&(h=!0,f=a,g=a);h&&c.push({fromLineNumber:f,toLineNumber:g})}return{changes:c}}}function ct(a){return(0x2008000|a|1024)>>>0}class cu extends bA{constructor(a,b,c,d){super(a,b),this.getLanguageId=c,this._tokenizer=null,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new l.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._defaultBackgroundTokenizer=null,this._backgroundTokenizer=this._register(new m.HE),this._tokens=new cs(this._languageIdCodec),this._debugBackgroundTokenizer=this._register(new m.HE),this._attachedViewStates=this._register(new m.$w),this._register(co.dG.onDidChange(a=>{let b=this.getLanguageId();-1!==a.changedLanguages.indexOf(b)&&this.todo_resetTokenization()})),this.todo_resetTokenization(),this._register(d.onDidChangeVisibleRanges(({view:a,state:b})=>{if(b){let c=this._attachedViewStates.get(a);c||(c=new bz(()=>this.refreshRanges(c.lineRanges)),this._attachedViewStates.set(a,c)),c.handleStateChange(b)}else this._attachedViewStates.deleteAndDispose(a)}))}todo_resetTokenization(a=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new b2(this._textModel.getLineCount())),a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});let[b,c]=(()=>{let a;if(this._textModel.isTooLargeForTokenization())return[null,null];let b=co.dG.get(this.getLanguageId());if(!b)return[null,null];try{a=b.getInitialState()}catch(a){return(0,k.dz)(a),[null,null]}return[b,a]})();if(b&&c?this._tokenizer=new b0(this._textModel.getLineCount(),b,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){let a={setTokens:a=>{this.setTokens(a)},setFontInfo:a=>{this.setFontInfo(a)},backgroundTokenizationFinished:()=>{2===this._backgroundTokenizationState||(this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire())},setEndState:(a,b)=>{if(!this._tokenizer)return;let c=this._tokenizer.store.getFirstInvalidEndStateLineNumber();null!==c&&a>=c&&this._tokenizer?.store.setEndState(a,b)}};b&&b.createBackgroundTokenizer&&!b.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,a)),this._backgroundTokenizer.value||this._textModel.isTooLargeForTokenization()||(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new b6(this._tokenizer,a),this._defaultBackgroundTokenizer.handleChanges()),b?.backgroundTokenizerShouldOnlyVerifyTokens&&b.createBackgroundTokenizer?(this._debugBackgroundTokens=new cs(this._languageIdCodec),this._debugBackgroundStates=new b2(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,{setTokens:a=>{this._debugBackgroundTokens?.setMultilineTokens(a,this._textModel)},setFontInfo:a=>{this.setFontInfo(a)},backgroundTokenizationFinished(){},setEndState:(a,b)=>{this._debugBackgroundStates?.setEndState(a,b)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else if(!a.isEolChange){for(let b of a.changes){let[a,c]=(0,s.W)(b.text);this._tokens.acceptEdit(b.range,a,c),this._debugBackgroundTokens?.acceptEdit(b.range,a,c)}this._debugBackgroundStates?.acceptChanges(a.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(a.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(a){let{changes:b}=this._tokens.setMultilineTokens(a,this._textModel);return b.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:b}),{changes:b}}setFontInfo(a){this._onDidChangeFontTokens.fire({changes:a})}refreshAllVisibleLineTokens(){let a=br.M.joinMany([...this._attachedViewStates].map(([a,b])=>b.lineRanges));this.refreshRanges(a)}refreshRanges(a){for(let b of a)this.refreshRange(b.startLineNumber,b.endLineNumberExclusive-1)}refreshRange(a,b){if(!this._tokenizer)return;a=Math.max(1,Math.min(this._textModel.getLineCount(),a)),b=Math.min(this._textModel.getLineCount(),b);let c=new b$,{heuristicTokens:d}=this._tokenizer.tokenizeHeuristically(c,a,b),e=this.setTokens(c.finalize());if(d)for(let a of e.changes)this._backgroundTokenizer.value?.requestTokens(a.fromLineNumber,a.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(a){let b=new b$;this._tokenizer?.updateTokensUntilLine(b,a),this.setTokens(b.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(a){return!this._tokenizer||this._tokenizer.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!this._tokenizer||this._tokenizer.isCheapToTokenize(a)}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this._tokens.getTokens(this._textModel.getLanguageId(),a-1,b);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>a&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>a){let d=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),a-1,b);!c.equals(d)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(a)}return c}getTokenTypeIfInsertingCharacter(a,b,c){if(!this._tokenizer)return 0;let d=this._textModel.validatePosition(new v.y(a,b));return this.forceTokenization(d.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(d,c)}tokenizeLinesAt(a,b){return this._tokenizer?(this.forceTokenization(a),this._tokenizer.tokenizeLinesAt(a,b)):null}get hasTokens(){return this._tokens.hasTokens}}var cv=function(a,b){return function(c,d){b(c,d,a)}};let cw=f=class extends bK._{constructor(a,b,c,d,e,f,g,h){super(),this._textModel=a,this._bracketPairsTextModelPart=b,this._languageId=c,this._attachedViews=d,this._languageService=e,this._languageConfigurationService=f,this._instantiationService=g,this._treeSitterLibraryService=h,this._onDidChangeFontTokens=this._register(new l.vl),this.onDidChangeFontTokens=this._onDidChangeFontTokens.event,this._languageIdObs=(0,bS.FY)(this,this._languageId),this._useTreeSitter=(0,bv.un)(this,a=>{let b=this._languageIdObs.read(a);return this._treeSitterLibraryService.supportsLanguage(b,a)}),this.tokens=(0,bv.un)(this,a=>{let b;return b=this._useTreeSitter.read(a)?a.store.add(this._instantiationService.createInstance(cm,this._languageIdObs,this._languageService.languageIdCodec,this._textModel,this._attachedViews.visibleLineRanges)):a.store.add(new cu(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews)),a.store.add(b.onDidChangeTokens(a=>{this._emitModelTokensChangedEvent(a)})),a.store.add(b.onDidChangeFontTokens(a=>{this._textModel._isDisposing()||this._onDidChangeFontTokens.fire(a)})),a.store.add(b.onDidChangeBackgroundTokenizationState(a=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()})),b});let i=!1;this.tokens.recomputeInitiallyAndOnChange(this._store,a=>{i&&a.todo_resetTokenization(),i=!0}),this._semanticTokens=new cn(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new l.vl),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new l.vl),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new l.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidChangeFontTokens=this._register(new l.vl),this.onDidChangeFontTokens=this._onDidChangeFontTokens.event}handleLanguageConfigurationServiceChange(a){a.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(a){if(a.isFlush)this._semanticTokens.flush();else if(!a.isEolChange)for(let b of a.changes){let[a,c,d]=(0,s.W)(b.text);this._semanticTokens.acceptEdit(b.range,a,c,d,b.text.length>0?b.text.charCodeAt(0):0)}this.tokens.get().handleDidChangeContent(a)}handleDidChangeAttached(){this.tokens.get().handleDidChangeAttached()}getLineTokens(a){this.validateLineNumber(a);let b=this.tokens.get().getLineTokens(a);return this._semanticTokens.addSparseTokens(a,b)}_emitModelTokensChangedEvent(a){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(a),this._onDidChangeTokens.fire(a))}validateLineNumber(a){if(a<1||a>this._textModel.getLineCount())throw new k.D7("Illegal value for lineNumber")}get hasTokens(){return this.tokens.get().hasTokens}resetTokenization(){this.tokens.get().todo_resetTokenization()}get backgroundTokenizationState(){return this.tokens.get().backgroundTokenizationState}forceTokenization(a){this.validateLineNumber(a),this.tokens.get().forceTokenization(a)}hasAccurateTokensForLine(a){return this.validateLineNumber(a),this.tokens.get().hasAccurateTokensForLine(a)}isCheapToTokenize(a){return this.validateLineNumber(a),this.tokens.get().isCheapToTokenize(a)}tokenizeIfCheap(a){this.validateLineNumber(a),this.tokens.get().tokenizeIfCheap(a)}getTokenTypeIfInsertingCharacter(a,b,c){return this.tokens.get().getTokenTypeIfInsertingCharacter(a,b,c)}tokenizeLinesAt(a,b){return this.tokens.get().tokenizeLinesAt(a,b)}setSemanticTokens(a,b){this._semanticTokens.set(a,b,this._textModel),this._emitModelTokensChangedEvent({semanticTokensApplied:null!==a,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(a,b){if(this.hasCompleteSemanticTokens())return;let c=this._textModel.validateRange(this._semanticTokens.setPartial(a,b));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:c.startLineNumber,toLineNumber:c.endLineNumber}]})}getWordAtPosition(a){this.assertNotDisposed();let b=this._textModel.validatePosition(a),c=this._textModel.getLineContent(b.lineNumber),d=this.getLineTokens(b.lineNumber),e=d.findTokenIndexAtOffset(b.column-1),[g,h]=f._findLanguageBoundaries(d,e),i=(0,bJ.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(e)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i;if(e>0&&g===b.column-1){let[g,h]=f._findLanguageBoundaries(d,e-1),i=(0,bJ.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(e-1)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i}return null}getLanguageConfiguration(a){return this._languageConfigurationService.getLanguageConfiguration(a)}static _findLanguageBoundaries(a,b){let c=a.getLanguageId(b),d=0;for(let e=b;e>=0&&a.getLanguageId(e)===c;e--)d=a.getStartOffset(e);let e=a.getLineContent().length;for(let d=b,f=a.getCount();d<f&&a.getLanguageId(d)===c;d++)e=a.getEndOffset(d);return[d,e]}getWordUntilPosition(a){let b=this.getWordAtPosition(a);return b?{word:b.word.substr(0,a.column-b.startColumn),startColumn:b.startColumn,endColumn:a.column}:{word:"",startColumn:a.column,endColumn:a.column}}getLanguageId(){return this._languageId}getLanguageIdAtPosition(a,b){let c=this._textModel.validatePosition(new v.y(a,b)),d=this.getLineTokens(c.lineNumber);return d.getLanguageId(d.findTokenIndexAtOffset(c.column-1))}setLanguageId(a,b="api"){if(this._languageId===a)return;let c={oldLanguage:this._languageId,newLanguage:a,source:b};this._languageId=a,this._languageIdObs.set(a,void 0),this._bracketPairsTextModelPart.handleDidChangeLanguage(c),this._onDidChangeLanguage.fire(c),this._onDidChangeLanguageConfiguration.fire({})}};cw=f=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([cv(4,y.L),cv(5,z.JZ),cv(6,p._Y),cv(7,ci.t)],cw);var cx=function(a,b){return function(c,d){b(c,d,a)}};function cy(a,b){let c;if("string"==typeof a){let b;(b=new bp).acceptChunk(a),c=b.finish()}else c=(0,A.nk)(a)?function(a){let b,c=new bp;for(;"string"==typeof(b=a.read());)c.acceptChunk(b);return c.finish()}(a):a;return c.create(b)}let cz=0;class cA{constructor(a){this._source=a,this._eos=!1}read(){if(this._eos)return null;let a=[],b=0,c=0;for(;;){let d=this._source.read();if(null===d){if(this._eos=!0,0===b)return null;return a.join("")}if(d.length>0&&(a[b++]=d,c+=d.length),c>=65536)return a.join("")}}}let cB=()=>{throw Error("Invalid change accessor")},cC=class extends m.jG{static{g=this}static{this._MODEL_SYNC_LIMIT=0x3200000}static{this.LARGE_FILE_SIZE_THRESHOLD=0x1400000}static{this.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5}static{this.LARGE_FILE_HEAP_OPERATION_THRESHOLD=0x10000000}static{this.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:u.R.tabSize,indentSize:u.R.indentSize,insertSpaces:u.R.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:u.R.trimAutoWhitespace,largeFileOptimizations:u.R.largeFileOptimizations,bracketPairColorizationOptions:u.R.bracketPairColorizationOptions}}static resolveOptions(a,b){if(b.detectIndentation){let c=aD(a,b.tabSize,b.insertSpaces);return new A.X2({tabSize:c.tabSize,indentSize:"tabSize",insertSpaces:c.insertSpaces,trimAutoWhitespace:b.trimAutoWhitespace,defaultEOL:b.defaultEOL,bracketPairColorizationOptions:b.bracketPairColorizationOptions})}return new A.X2(b)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}get onDidChangeOptions(){return this._onDidChangeOptions.event}get onDidChangeAttached(){return this._onDidChangeAttached.event}get onDidChangeLineHeight(){return this._onDidChangeLineHeight.event}get onDidChangeFont(){return this._onDidChangeFont.event}onDidChangeContent(a){return this._eventEmitter.event(b=>a(b.contentChangedEvent))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(a,b,c,d=null,e,f,h,i){super(),this._undoRedoService=e,this._languageService=f,this._languageConfigurationService=h,this.instantiationService=i,this._onWillDispose=this._register(new l.vl),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new cQ((a,b,c)=>this.handleBeforeFireDecorationsChangedEvent(a,b,c))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new l.vl),this._onDidChangeAttached=this._register(new l.vl),this._onDidChangeLineHeight=this._register(new l.vl),this._onDidChangeFont=this._register(new l.vl),this._eventEmitter=this._register(new cR),this._languageSelectionListener=this._register(new m.HE),this._deltaDecorationCallCnt=0,this._attachedViews=this._register(new bw),this._viewModels=new Set,cz++,this.id="$model"+cz,this.isForSimpleWidget=c.isForSimpleWidget,null==d?this._associatedResource=o.r.parse("inmemory://model/"+cz):this._associatedResource=d,this._attachedEditorCount=0;const{textBuffer:j,disposable:k}=cy(a,c.defaultEOL);this._buffer=j,this._bufferDisposable=k;const p=this._buffer.getLineCount(),q=this._buffer.getValueLengthInRange(new w.Q(1,1,p,this._buffer.getLineLength(p)+1),0);c.largeFileOptimizations?(this._isTooLargeForTokenization=q>g.LARGE_FILE_SIZE_THRESHOLD||p>g.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=q>g.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._options=g.resolveOptions(this._buffer,c);const r="string"==typeof b?b:b.languageId;"string"!=typeof b&&(this._languageSelectionListener.value=b.onDidChange(()=>this._setLanguage(b.languageId))),this._bracketPairs=this._register(new as(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new aB.P(this,this._languageConfigurationService)),this._decorationProvider=this._register(new ay(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(cw,this,this._bracketPairs,r,this._attachedViews),this._fontTokenDecorationsProvider=this._register(new bI(this,this._tokenizationTextModelPart)),this._isTooLargeForSyncing=q>g._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=(0,n.tk)(cz),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new cG,this._commandManager=new aA.z8(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._register(this._fontTokenDecorationsProvider.onDidChangeLineHeight(a=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._fireOnDidChangeLineHeight(a),this._onDidChangeDecorations.endDeferredEmit()})),this._register(this._fontTokenDecorationsProvider.onDidChangeFont(a=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._fireOnDidChangeFont(a),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(r),this._register(this._languageConfigurationService.onDidChange(a=>{this._bracketPairs.handleLanguageConfigurationServiceChange(a),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(a)}))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;let a=new bn([],"","\n",!1,!1,!0,!0);a.dispose(),this._buffer=a,this._bufferDisposable=m.jG.None}_assertNotDisposed(){if(this._isDisposed)throw new k.D7("Model is disposed!")}registerViewModel(a){this._viewModels.add(a)}unregisterViewModel(a){this._viewModels.delete(a)}getTextBuffer(){return this._assertNotDisposed(),this._buffer}_emitContentChangedEvent(a,b,c=null){if(this.__isDisposing)return;this._tokenizationTextModelPart.handleDidChangeContent(b),this._bracketPairs.handleDidChangeContent(b),this._fontTokenDecorationsProvider.handleDidChangeContent(b);let d=new C.Ic(a,b);c&&(d.rawContentChangedEvent.resultingSelection=c),this._onDidChangeContentOrInjectedText(d),this._eventEmitter.fire(d)}setValue(a,b=B.dg.setValue()){if(this._assertNotDisposed(),null==a)throw(0,k.Qg)();let{textBuffer:c,disposable:d}=cy(a,this._options.defaultEOL);this._setValueFromTextBuffer(c,d,b)}_createContentChanged2(a,b,c,d,e,f,g,h,i,j){return{changes:[{range:a,rangeOffset:b,rangeLength:c,text:e}],eol:this._buffer.getEOL(),isEolChange:i,versionId:this.getVersionId(),isUndoing:f,isRedoing:g,isFlush:h,detailedReasons:[j],detailedReasonsChangeLengths:[1]}}_setValueFromTextBuffer(a,b,c){this._assertNotDisposed();let d=this.getFullModelRange(),e=this.getValueLengthInRange(d),f=this.getLineCount(),g=this.getLineMaxColumn(f);this._buffer=a,this._bufferDisposable.dispose(),this._bufferDisposable=b,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new cG,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new C.HP([new C.Wn],this._versionId,!1,!1),this._createContentChanged2(new w.Q(1,1,f,g),0,e,new v.y(f,g),this.getValue(),!1,!1,!0,!1,c))}setEOL(a){this._assertNotDisposed();let b=1===a?"\r\n":"\n";if(this._buffer.getEOL()===b)return;let c=this.getFullModelRange(),d=this.getValueLengthInRange(c),e=this.getLineCount(),f=this.getLineMaxColumn(e);this._onBeforeEOLChange(),this._buffer.setEOL(b),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new C.HP([new C.mS],this._versionId,!1,!1),this._createContentChanged2(new w.Q(1,1,e,f),0,d,new v.y(e,f),this.getValue(),!1,!1,!1,!0,B.dg.eolChange()))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){let a=this.getVersionId(),b=this._decorationsTree.collectNodesPostOrder();for(let c=0,d=b.length;c<d;c++){let d=b[c],e=d.range,f=d.cachedAbsoluteStart-d.start,g=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),h=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);d.cachedAbsoluteStart=g,d.cachedAbsoluteEnd=h,d.cachedVersionId=a,d.start=g-f,d.end=h-f,a$(d)}}onBeforeAttached(){return this._attachedEditorCount++,1===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.attachView()}onBeforeDetached(a){this._attachedEditorCount--,0===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.detachView(a)}isAttachedToEditor(){return this._attachedEditorCount>0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let a=0,b=0,c=this._buffer.getLineCount();for(let d=1;d<=c;d++){let c=this._buffer.getLineLength(d);c>=1e4?b+=c:a+=c}return b>a}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(a){this._assertNotDisposed();let b=void 0!==a.tabSize?a.tabSize:this._options.tabSize,c=void 0!==a.indentSize?a.indentSize:this._options.originalIndentSize,d=void 0!==a.insertSpaces?a.insertSpaces:this._options.insertSpaces,e=void 0!==a.trimAutoWhitespace?a.trimAutoWhitespace:this._options.trimAutoWhitespace,f=void 0!==a.bracketColorizationOptions?a.bracketColorizationOptions:this._options.bracketPairColorizationOptions,g=new A.X2({tabSize:b,indentSize:c,insertSpaces:d,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:e,bracketPairColorizationOptions:f});if(this._options.equals(g))return;let h=this._options.createChangeEvent(g);this._options=g,this._bracketPairs.handleDidChangeOptions(h),this._decorationProvider.handleDidChangeOptions(h),this._onDidChangeOptions.fire(h)}detectIndentation(a,b){this._assertNotDisposed();let c=aD(this._buffer,b,a);this.updateOptions({insertSpaces:c.insertSpaces,tabSize:c.tabSize,indentSize:c.tabSize})}normalizeIndentation(a){return this._assertNotDisposed(),(0,t.P)(a,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(a=null){let b=this.findMatches(n._J.source,!1,!0,!1,null,!1,0x40000000);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(a,b.map(a=>({range:a.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(a){this._assertNotDisposed();let b=this._validatePosition(a.lineNumber,a.column,0);return this._buffer.getOffsetAt(b.lineNumber,b.column)}getPositionAt(a){this._assertNotDisposed();let b=Math.min(this._buffer.getLength(),Math.max(0,a));return this._buffer.getPositionAt(b)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(a){this._versionId=a}_overwriteAlternativeVersionId(a){this._alternativeVersionId=a}_overwriteInitialUndoRedoSnapshot(a){this._initialUndoRedoSnapshot=a}getValue(a,b=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new k.D7("Operation would exceed heap memory limits");let c=this.getFullModelRange(),d=this.getValueInRange(c,a);return b?this._buffer.getBOM()+d:d}createSnapshot(a=!1){return new cA(this._buffer.createSnapshot(a))}getValueLength(a,b=!1){this._assertNotDisposed();let c=this.getFullModelRange(),d=this.getValueLengthInRange(c,a);return b?this._buffer.getBOM().length+d:d}getValueInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(a),b)}getValueLengthInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(a),b)}getCharacterCountInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(a),b)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new k.D7("Illegal value for lineNumber");return this._buffer.getLineContent(a)}getLineLength(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new k.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new k.D7("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),+("\n"!==this._buffer.getEOL())}getLineMinColumn(a){return this._assertNotDisposed(),1}getLineMaxColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new k.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)+1}getLineFirstNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new k.D7("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(a)}getLineLastNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new k.D7("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(a)}_validateRangeRelaxedNoAllocations(a){let b=this._buffer.getLineCount(),c=a.startLineNumber,d=a.startColumn,e=Math.floor("number"!=typeof c||isNaN(c)?1:c),f=Math.floor("number"!=typeof d||isNaN(d)?1:d);if(e<1)e=1,f=1;else if(e>b)e=b,f=this.getLineMaxColumn(e);else if(f<=1)f=1;else{let a=this.getLineMaxColumn(e);f>=a&&(f=a)}let g=a.endLineNumber,h=a.endColumn,i=Math.floor("number"!=typeof g||isNaN(g)?1:g),j=Math.floor("number"!=typeof h||isNaN(h)?1:h);if(i<1)i=1,j=1;else if(i>b)i=b,j=this.getLineMaxColumn(i);else if(j<=1)j=1;else{let a=this.getLineMaxColumn(i);j>=a&&(j=a)}return c===e&&d===f&&g===i&&h===j&&a instanceof w.Q&&!(a instanceof x.L)?a:new w.Q(e,f,i,j)}_isValidPosition(a,b,c){if("number"!=typeof a||"number"!=typeof b||isNaN(a)||isNaN(b)||a<1||b<1||(0|a)!==a||(0|b)!==b||a>this._buffer.getLineCount())return!1;if(1===b)return!0;if(b>this.getLineMaxColumn(a))return!1;if(1===c){let c=this._buffer.getLineCharCode(a,b-2);if((0,n.pc)(c))return!1}return!0}_validatePosition(a,b,c){let d=Math.floor("number"!=typeof a||isNaN(a)?1:a),e=Math.floor("number"!=typeof b||isNaN(b)?1:b),f=this._buffer.getLineCount();if(d<1)return new v.y(1,1);if(d>f)return new v.y(f,this.getLineMaxColumn(f));if(e<=1)return new v.y(d,1);let g=this.getLineMaxColumn(d);if(e>=g)return new v.y(d,g);if(1===c){let a=this._buffer.getLineCharCode(d,e-2);if((0,n.pc)(a))return new v.y(d,e-1)}return new v.y(d,e)}validatePosition(a){return(this._assertNotDisposed(),a instanceof v.y&&this._isValidPosition(a.lineNumber,a.column,1))?a:this._validatePosition(a.lineNumber,a.column,1)}isValidRange(a){return this._isValidRange(a,1)}_isValidRange(a,b){let c=a.startLineNumber,d=a.startColumn,e=a.endLineNumber,f=a.endColumn;if(!this._isValidPosition(c,d,0)||!this._isValidPosition(e,f,0))return!1;if(1===b){let a=d>1?this._buffer.getLineCharCode(c,d-2):0,b=f>1&&f<=this._buffer.getLineLength(e)?this._buffer.getLineCharCode(e,f-2):0,g=(0,n.pc)(a),h=(0,n.pc)(b);return!g&&!h}return!0}validateRange(a){if(this._assertNotDisposed(),a instanceof w.Q&&!(a instanceof x.L)&&this._isValidRange(a,1))return a;let b=this._validatePosition(a.startLineNumber,a.startColumn,0),c=this._validatePosition(a.endLineNumber,a.endColumn,0),d=b.lineNumber,e=b.column,f=c.lineNumber,g=c.column;{let a=e>1?this._buffer.getLineCharCode(d,e-2):0,b=g>1&&g<=this._buffer.getLineLength(f)?this._buffer.getLineCharCode(f,g-2):0,c=(0,n.pc)(a),h=(0,n.pc)(b);return c||h?d===f&&e===g?new w.Q(d,e-1,f,g-1):c&&h?new w.Q(d,e-1,f,g+1):c?new w.Q(d,e-1,f,g):new w.Q(d,e,f,g+1):new w.Q(d,e,f,g)}}modifyPosition(a,b){this._assertNotDisposed();let c=this.getOffsetAt(a)+b;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,c)))}getFullModelRange(){this._assertNotDisposed();let a=this.getLineCount();return new w.Q(1,1,a,this.getLineMaxColumn(a))}findMatchesLineByLine(a,b,c,d){return this._buffer.findMatchesLineByLine(a,b,c,d)}findMatches(a,b,c,d,e,f,g=999){let h;this._assertNotDisposed();let i=null;null!==b&&"boolean"!=typeof b&&(Array.isArray(b)||(b=[b]),b.every(a=>w.Q.isIRange(a))&&(i=b.map(a=>this.validateRange(a)))),null===i&&(i=[this.getFullModelRange()]),i=i.sort((a,b)=>a.startLineNumber-b.startLineNumber||a.startColumn-b.startColumn);let j=[];if(j.push(i.reduce((a,b)=>w.Q.areIntersecting(a,b)?a.plusRange(b):(j.push(a),b))),!c&&0>a.indexOf("\n")){let b=new bd.lt(a,c,d,e).parseSearchRequest();if(!b)return[];h=a=>this.findMatchesLineByLine(a,b,f,g)}else h=b=>bd.hB.findMatches(this,new bd.lt(a,c,d,e),b,f,g);return j.map(h).reduce((a,b)=>a.concat(b),[])}findNextMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);if(!c&&0>a.indexOf("\n")){let b=new bd.lt(a,c,d,e).parseSearchRequest();if(!b)return null;let h=this.getLineCount(),i=new w.Q(g.lineNumber,g.column,h,this.getLineMaxColumn(h)),j=this.findMatchesLineByLine(i,b,f,1);return(bd.hB.findNextMatch(this,new bd.lt(a,c,d,e),g,f),j.length>0||(i=new w.Q(1,1,g.lineNumber,this.getLineMaxColumn(g.lineNumber)),(j=this.findMatchesLineByLine(i,b,f,1)).length>0))?j[0]:null}return bd.hB.findNextMatch(this,new bd.lt(a,c,d,e),g,f)}findPreviousMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);return bd.hB.findPreviousMatch(this,new bd.lt(a,c,d,e),g,f)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(a){if(+("\n"!==this.getEOL())!==a)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(a)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(a){if(a instanceof A.Wo)return a;let b=this.validateRange(a.range),c=a.text;if(c){let a=c.length>0&&13===c.charCodeAt(c.length-1);"\r\n"===this.getEOL()&&a&&b.endColumn===this.getLineMaxColumn(b.endLineNumber)&&(c=c.substring(0,c.length-1))}return new A.Wo(a.identifier||null,b,c,a.forceMoveMarkers||!1,a.isAutoWhitespaceEdit||!1,a._isTracked||!1)}_validateEditOperations(a){let b=[];for(let c=0,d=a.length;c<d;c++)b[c]=this._validateEditOperation(a[c]);return b}edit(a,b){this.pushEditOperations(null,a.replacements.map(a=>({range:a.range,text:a.text})),null)}pushEditOperations(a,b,c,d,e){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(a,this._validateEditOperations(b),c,d,e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_pushEditOperations(a,b,c,d,e){if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){let c=b.map(a=>({range:this.validateRange(a.range),text:a.text})),d=!0;if(a)for(let b=0,e=a.length;b<e;b++){let e=a[b],f=!1;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,d=b.startLineNumber>e.endLineNumber,g=e.startLineNumber>b.endLineNumber;if(!d&&!g){f=!0;break}}if(!f){d=!1;break}}if(d)for(let a=0,d=this._trimAutoWhitespaceLines.length;a<d;a++){let d=this._trimAutoWhitespaceLines[a],e=this.getLineMaxColumn(d),f=!0;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,g=c[a].text;if(!(d<b.startLineNumber||d>b.endLineNumber||d===b.startLineNumber&&b.startColumn===e&&b.isEmpty()&&g&&g.length>0&&"\n"===g.charAt(0))&&(!(d===b.startLineNumber&&1===b.startColumn&&b.isEmpty())||!g||!(g.length>0)||"\n"!==g.charAt(g.length-1))){f=!1;break}}if(f){let a=new w.Q(d,1,d,e);b.push(new A.Wo(null,a,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(a,b,c,d,e)}_applyUndo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.newPosition),c=this.getPositionAt(a.newEnd);return{range:new w.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.oldText}});this._applyUndoRedoEdits(e,b,!0,!1,c,d)}_applyRedo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.oldPosition),c=this.getPositionAt(a.oldEnd);return{range:new w.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.newText}});this._applyUndoRedoEdits(e,b,!1,!0,c,d)}_applyUndoRedoEdits(a,b,c,d,e,f){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=c,this._isRedoing=d;let g=this._validateEditOperations(a);this._doApplyEdits(g,!1,B.dg.applyEdits(),f),this.setEOL(b),this._overwriteAlternativeVersionId(e)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(f),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(a,b,c){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();let d=this._validateEditOperations(a);return this._doApplyEdits(d,b??!1,c??B.dg.applyEdits())}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(a,b,c,d=null){let e=this._buffer.getLineCount(),f=this._buffer.applyEdits(a,this._options.trimAutoWhitespace,b),g=this._buffer.getLineCount(),h=f.changes;if(this._trimAutoWhitespaceLines=f.trimAutoWhitespaceLineNumbers,0!==h.length){for(let a=0,b=h.length;a<b;a++){let b=h[a];this._decorationsTree.acceptReplace(b.rangeOffset,b.rangeLength,b.text.length,b.forceMoveMarkers)}let a=[];this._increaseVersionId();let b=e;for(let c=0,d=h.length;c<d;c++){let d=h[c],[e]=(0,s.W)(d.text);this._onDidChangeDecorations.fire();let f=d.range.startLineNumber,i=d.range.endLineNumber,j=i-f,k=Math.min(j,e),l=e-j,m=g-b-l+f;for(let b=k;b>=0;b--){let c=f+b,d=m+b;a.push(new C.U0(c,d))}if(k<j){let c=f+k,d=g-b-(e-j)+c;a.push(new C.E$(c+1,i,d))}if(k<e){let c=f+k,d=e-k,h=g-b-d+c+1;a.push(new C.bg(c+1,h,d))}b+=l}this._emitContentChangedEvent(new C.HP(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:h,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1,detailedReasons:[c],detailedReasonsChangeLengths:[h.length]},d)}return null===f.reverseEdits?void 0:f.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(a,b,c){if(a&&a.size>0){let b=Array.from(a).map(a=>new C.U0(a,a));this._onDidChangeContentOrInjectedText(new C.vn(b))}this._fireOnDidChangeLineHeight(b),this._fireOnDidChangeFont(c)}_fireOnDidChangeLineHeight(a){if(a&&a.size>0){let b=Array.from(a).map(a=>new C.Nw(a.ownerId,a.decorationId,a.lineNumber,a.lineHeight));this._onDidChangeLineHeight.fire(new C.zq(b))}}_fireOnDidChangeFont(a){if(a&&a.size>0){let b=Array.from(a).map(a=>new C.vD(a.ownerId,a.lineNumber));this._onDidChangeFont.fire(new C.dT(b))}}_onDidChangeContentOrInjectedText(a){for(let b of this._viewModels)try{b.onDidChangeContentOrInjectedText(a)}catch(a){(0,k.dz)(a)}for(let b of this._viewModels)try{b.emitContentChangeEvent(a)}catch(a){(0,k.dz)(a)}}changeDecorations(a,b=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(b,a)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(a,b){let c={addDecoration:(b,c)=>this._deltaDecorationsImpl(a,[],[{range:b,options:c}])[0],changeDecoration:(b,c)=>{this._changeDecorationImpl(a,b,c)},changeDecorationOptions:(b,c)=>{this._changeDecorationOptionsImpl(a,b,cP(c))},removeDecoration:b=>{this._deltaDecorationsImpl(a,[b],[])},deltaDecorations:(b,c)=>0===b.length&&0===c.length?[]:this._deltaDecorationsImpl(a,b,c)},d=null;try{d=b(c)}catch(a){(0,k.dz)(a)}return c.addDecoration=cB,c.changeDecoration=cB,c.changeDecorationOptions=cB,c.removeDecoration=cB,c.deltaDecorations=cB,d}deltaDecorations(a,b,c=0){if(this._assertNotDisposed(),a||(a=[]),0===a.length&&0===b.length)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),(0,k.dz)(Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(c,a,b)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(a){return this.getDecorationRange(a)}_setTrackedRange(a,b,c){let d=a?this._decorations[a]:null;if(!d)return b?this._deltaDecorationsImpl(0,[],[{range:b,options:cO[c]}],!0)[0]:null;if(!b)return this._decorationsTree.delete(d),delete this._decorations[d.id],null;let e=this._validateRangeRelaxedNoAllocations(b),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),d.setOptions(cO[c]),this._decorationsTree.insert(d),d.id}removeAllDecorationsWithOwnerId(a){if(this._isDisposed)return;let b=this._decorationsTree.collectNodesFromOwner(a);for(let a=0,c=b.length;a<c;a++){let c=b[a];this._decorationsTree.delete(c),delete this._decorations[c.id]}}getDecorationOptions(a){let b=this._decorations[a];return b?b.options:null}getDecorationRange(a){let b=this._decorations[a];return b?this._decorationsTree.getNodeRange(this,b):null}getLineDecorations(a,b=0,c=!1,d=!1){return a<1||a>this.getLineCount()?[]:this.getLinesDecorations(a,a,b,c,d)}getLinesDecorations(a,b,c=0,d=!1,e=!1,f=!1){let g=this.getLineCount(),i=Math.min(g,Math.max(1,a)),j=Math.min(g,Math.max(1,b)),k=this.getLineMaxColumn(j),l=new w.Q(i,1,j,k),m=this._getDecorationsInRange(l,c,d,e,f);return(0,h.E4)(m,this._decorationProvider.getDecorationsInRange(l,c,d,e)),(0,h.E4)(m,this._fontTokenDecorationsProvider.getDecorationsInRange(l,c,d,e)),m}getDecorationsInRange(a,b=0,c=!1,d=!1,e=!1,f=!1){let g=this.validateRange(a),i=this._getDecorationsInRange(g,b,c,d,f);return(0,h.E4)(i,this._decorationProvider.getDecorationsInRange(g,b,c,d,e)),(0,h.E4)(i,this._fontTokenDecorationsProvider.getDecorationsInRange(g,b,c,d,e)),i}getOverviewRulerDecorations(a=0,b=!1,c=!1){return this._decorationsTree.getAll(this,a,b,c,!0,!1)}getInjectedTextDecorations(a=0){return this._decorationsTree.getAllInjectedText(this,a)}getCustomLineHeightsDecorations(a=0){let b=this._decorationsTree.getAllCustomLineHeights(this,a);return(0,h.E4)(b,this._fontTokenDecorationsProvider.getAllDecorations(a)),b}getCustomLineHeightsDecorationsInRange(a,b=0){let c=this._decorationsTree.getCustomLineHeightsInInterval(this,this.getOffsetAt(a.getStartPosition()),this.getOffsetAt(a.getEndPosition()),b);return(0,h.E4)(c,this._fontTokenDecorationsProvider.getDecorationsInRange(a,b)),c}getLineInjectedText(a,b=0){let c=this._buffer.getOffsetAt(a,1),d=c+this._buffer.getLineLength(a),e=this._decorationsTree.getInjectedTextInInterval(this,c,d,b);return C.uK.fromDecorations(e).filter(b=>b.lineNumber===a)}getFontDecorationsInRange(a,b=0){let c=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),d=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getFontDecorationsInInterval(this,c,d,b)}getAllDecorations(a=0,b=!1,c=!1){let d=this._decorationsTree.getAll(this,a,b,c,!1,!1);return(d=d.concat(this._decorationProvider.getAllDecorations(a,b))).concat(this._fontTokenDecorationsProvider.getAllDecorations(a,b))}getAllMarginDecorations(a=0){return this._decorationsTree.getAll(this,a,!1,!1,!1,!0)}_getDecorationsInRange(a,b,c,d,e){let f=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),g=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getAllInInterval(this,f,g,b,c,d,e)}getRangeAt(a,b){return this._buffer.getRangeAt(a,b-a)}_changeDecorationImpl(a,b,c){let d=this._decorations[b];if(!d)return;if(d.options.after){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(d.options.before){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==d.options.lineHeight){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,c.startLineNumber,null)}if(d.options.affectsFont){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,c.startLineNumber)}let e=this._validateRangeRelaxedNoAllocations(c),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),this._decorationsTree.insert(d),this._onDidChangeDecorations.checkAffectedAndFire(d.options),d.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber),d.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber),null!==d.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,e.startLineNumber,d.options.lineHeight),d.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,e.startLineNumber)}_changeDecorationOptionsImpl(a,b,c){var d;let e=this._decorations[b];if(!e)return;let f=!!e.options.overviewRuler&&!!e.options.overviewRuler.color,g=!!c.overviewRuler&&!!c.overviewRuler.color;if(this._onDidChangeDecorations.checkAffectedAndFire(e.options),this._onDidChangeDecorations.checkAffectedAndFire(c),e.options.after||c.after){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(e.options.before||c.before){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==e.options.lineHeight||null!==c.lineHeight){let d=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,d.startLineNumber,c.lineHeight)}if(e.options.affectsFont||c.affectsFont){let c=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,b,c.startLineNumber)}let h=(!!(d=c).after||!!d.before)!==cF(e);f!==g||h?(this._decorationsTree.delete(e),e.setOptions(c),this._decorationsTree.insert(e)):e.setOptions(c)}_deltaDecorationsImpl(a,b,c,d=!1){let e=this.getVersionId(),f=b.length,g=0,h=c.length,i=0;this._onDidChangeDecorations.beginDeferredEmit();try{let j=Array(h);for(;g<f||i<h;){let k=null;if(g<f){let c;do c=b[g++],k=this._decorations[c];while(!k&&g<f);if(k){if(k.options.after){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(k.options.before){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==k.options.lineHeight){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,c,b.startLineNumber,null)}if(k.options.affectsFont){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,c,b.startLineNumber)}this._decorationsTree.delete(k),d||this._onDidChangeDecorations.checkAffectedAndFire(k.options)}}if(i<h){if(!k){let a=++this._lastDecorationId,b=`${this._instanceId};${a}`;k=new aQ(b,0,0),this._decorations[b]=k}let b=c[i],f=this._validateRangeRelaxedNoAllocations(b.range),g=cP(b.options),h=this._buffer.getOffsetAt(f.startLineNumber,f.startColumn),l=this._buffer.getOffsetAt(f.endLineNumber,f.endColumn);k.ownerId=a,k.reset(e,h,l,f),k.setOptions(g),k.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.endLineNumber),k.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.startLineNumber),null!==k.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,k.id,f.startLineNumber,k.options.lineHeight),k.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,k.id,f.startLineNumber),d||this._onDidChangeDecorations.checkAffectedAndFire(g),this._decorationsTree.insert(k),j[i]=k.id,i++}else k&&delete this._decorations[k.id]}return j}finally{this._onDidChangeDecorations.endDeferredEmit()}}getLanguageId(){return this.tokenization.getLanguageId()}setLanguage(a,b){"string"==typeof a?(this._languageSelectionListener.clear(),this._setLanguage(a,b)):(this._languageSelectionListener.value=a.onDidChange(()=>this._setLanguage(a.languageId,b)),this._setLanguage(a.languageId,b))}_setLanguage(a,b){this.tokenization.setLanguageId(a,b),this._languageService.requestRichLanguageFeatures(a)}getLanguageIdAtPosition(a,b){return this.tokenization.getLanguageIdAtPosition(a,b)}getWordAtPosition(a){return this._tokenizationTextModelPart.getWordAtPosition(a)}getWordUntilPosition(a){return this._tokenizationTextModelPart.getWordUntilPosition(a)}normalizePosition(a,b){return a}getLineIndentColumn(a){return function(a){let b=0;for(let c of a)if(" "===c||" "===c)b++;else break;return b}(this.getLineContent(a))+1}toString(){return`TextModel(${this.uri.toString()})`}};function cD(a,b,c){let d;if(c){let e=[];for(let a=0;a<c.length;a++){let d=c[a],f=b[a].tokens;f?f.forEach((c,f)=>{e.push({offset:d,text:c.substring(b[a].content),tokenMetadata:f.metadata})}):e.push({offset:d,text:b[a].content,tokenMetadata:D.f7.defaultTokenMetadata})}d=a.withInserted(e)}else d=a;return d}function cE(a){return!!a.options.overviewRuler&&!!a.options.overviewRuler.color}function cF(a){return!!a.options.after||!!a.options.before}cC=g=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([cx(4,r.$D),cx(5,y.L),cx(6,z.JZ),cx(7,p._Y)],cC);class cG{constructor(){this._decorationsTree0=new aS,this._decorationsTree1=new aS,this._injectedTextDecorationsTree=new aS}ensureAllNodesHaveRanges(a){this.getAll(a,0,!1,!1,!1,!1)}_ensureNodesHaveRanges(a,b){for(let c of b)null===c.range&&(c.range=a.getRangeAt(c.cachedAbsoluteStart,c.cachedAbsoluteEnd));return b}getAllInInterval(a,b,c,d,e,f,g){let h=a.getVersionId(),i=this._intervalSearch(b,c,d,e,f,h,g);return this._ensureNodesHaveRanges(a,i)}_intervalSearch(a,b,c,d,e,f,g){let h=this._decorationsTree0.intervalSearch(a,b,c,d,e,f,g),i=this._decorationsTree1.intervalSearch(a,b,c,d,e,f,g),j=this._injectedTextDecorationsTree.intervalSearch(a,b,c,d,e,f,g);return h.concat(i).concat(j)}getInjectedTextInInterval(a,b,c,d){let e=a.getVersionId(),f=this._injectedTextDecorationsTree.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getFontDecorationsInInterval(a,b,c,d){let e=a.getVersionId(),f=this._decorationsTree0.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.affectsFont)}getAllInjectedText(a,b){let c=a.getVersionId(),d=this._injectedTextDecorationsTree.search(b,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllCustomLineHeights(a,b){let c=a.getVersionId(),d=this._search(b,!1,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>"number"==typeof a.options.lineHeight)}getCustomLineHeightsInInterval(a,b,c,d){let e=a.getVersionId(),f=this._intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>"number"==typeof a.options.lineHeight)}getAll(a,b,c,d,e,f){let g=a.getVersionId(),h=this._search(b,c,d,e,g,f);return this._ensureNodesHaveRanges(a,h)}_search(a,b,c,d,e,f){if(d)return this._decorationsTree1.search(a,b,c,e,f);{let d=this._decorationsTree0.search(a,b,c,e,f),g=this._decorationsTree1.search(a,b,c,e,f),h=this._injectedTextDecorationsTree.search(a,b,c,e,f);return d.concat(g).concat(h)}}collectNodesFromOwner(a){let b=this._decorationsTree0.collectNodesFromOwner(a),c=this._decorationsTree1.collectNodesFromOwner(a),d=this._injectedTextDecorationsTree.collectNodesFromOwner(a);return b.concat(c).concat(d)}collectNodesPostOrder(){let a=this._decorationsTree0.collectNodesPostOrder(),b=this._decorationsTree1.collectNodesPostOrder(),c=this._injectedTextDecorationsTree.collectNodesPostOrder();return a.concat(b).concat(c)}insert(a){cF(a)?this._injectedTextDecorationsTree.insert(a):cE(a)?this._decorationsTree1.insert(a):this._decorationsTree0.insert(a)}delete(a){cF(a)?this._injectedTextDecorationsTree.delete(a):cE(a)?this._decorationsTree1.delete(a):this._decorationsTree0.delete(a)}getNodeRange(a,b){let c=a.getVersionId();return b.cachedVersionId!==c&&this._resolveNode(b,c),null===b.range&&(b.range=a.getRangeAt(b.cachedAbsoluteStart,b.cachedAbsoluteEnd)),b.range}_resolveNode(a,b){cF(a)?this._injectedTextDecorationsTree.resolveNode(a,b):cE(a)?this._decorationsTree1.resolveNode(a,b):this._decorationsTree0.resolveNode(a,b)}acceptReplace(a,b,c,d){this._decorationsTree0.acceptReplace(a,b,c,d),this._decorationsTree1.acceptReplace(a,b,c,d),this._injectedTextDecorationsTree.acceptReplace(a,b,c,d)}}function cH(a){return a.replace(/[^a-z0-9\-_]/gi," ")}class cI{constructor(a){this.color=a.color||"",this.darkColor=a.darkColor||""}}class cJ extends cI{constructor(a){super(a),this._resolvedColor=null,this.position="number"==typeof a.position?a.position:A.A5.Center}getColor(a){return this._resolvedColor||((0,q.HD)(a.type)&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(a,b){if("string"==typeof a)return a;let c=a?b.getColor(a.id):null;return c?c.toString():""}}class cK{constructor(a){this.position=a?.position??A.ZS.Center,this.persistLane=a?.persistLane}}class cL extends cI{constructor(a){super(a),this.position=a.position,this.sectionHeaderStyle=a.sectionHeaderStyle??null,this.sectionHeaderText=a.sectionHeaderText??null}getColor(a){return this._resolvedColor||((0,q.HD)(a.type)&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(a,b){return"string"==typeof a?j.Q1.fromHex(a):b.getColor(a.id)}}class cM{static from(a){return a instanceof cM?a:new cM(a)}constructor(a){this.content=a.content||"",this.tokens=a.tokens??null,this.inlineClassName=a.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=a.attachedData||null,this.cursorStops=a.cursorStops||null}}class cN{static register(a){return new cN(a)}static createDynamic(a){return new cN(a)}constructor(a){this.description=a.description,this.blockClassName=a.blockClassName?cH(a.blockClassName):null,this.blockDoesNotCollapse=a.blockDoesNotCollapse??null,this.blockIsAfterEnd=a.blockIsAfterEnd??null,this.blockPadding=a.blockPadding??null,this.stickiness=a.stickiness||0,this.zIndex=a.zIndex||0,this.className=a.className?cH(a.className):null,this.shouldFillLineOnLineBreak=a.shouldFillLineOnLineBreak??null,this.hoverMessage=a.hoverMessage||null,this.glyphMarginHoverMessage=a.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=a.lineNumberHoverMessage||null,this.isWholeLine=a.isWholeLine||!1,this.lineHeight=a.lineHeight?Math.min(a.lineHeight,300):null,this.fontSize=a.fontSize||null,this.affectsFont=!!a.fontSize||!!a.fontFamily||!!a.fontWeight||!!a.fontStyle,this.showIfCollapsed=a.showIfCollapsed||!1,this.collapseOnReplaceEdit=a.collapseOnReplaceEdit||!1,this.overviewRuler=a.overviewRuler?new cJ(a.overviewRuler):null,this.minimap=a.minimap?new cL(a.minimap):null,this.glyphMargin=a.glyphMarginClassName?new cK(a.glyphMargin):null,this.glyphMarginClassName=a.glyphMarginClassName?cH(a.glyphMarginClassName):null,this.linesDecorationsClassName=a.linesDecorationsClassName?cH(a.linesDecorationsClassName):null,this.lineNumberClassName=a.lineNumberClassName?cH(a.lineNumberClassName):null,this.linesDecorationsTooltip=a.linesDecorationsTooltip?(0,n.jy)(a.linesDecorationsTooltip):null,this.firstLineDecorationClassName=a.firstLineDecorationClassName?cH(a.firstLineDecorationClassName):null,this.marginClassName=a.marginClassName?cH(a.marginClassName):null,this.inlineClassName=a.inlineClassName?cH(a.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=a.beforeContentClassName?cH(a.beforeContentClassName):null,this.afterContentClassName=a.afterContentClassName?cH(a.afterContentClassName):null,this.after=a.after?cM.from(a.after):null,this.before=a.before?cM.from(a.before):null,this.hideInCommentTokens=a.hideInCommentTokens??!1,this.hideInStringTokens=a.hideInStringTokens??!1,this.textDirection=a.textDirection??null}}cN.EMPTY=cN.register({description:"empty"});let cO=[cN.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),cN.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),cN.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),cN.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function cP(a){return a instanceof cN?a:cN.createDynamic(a)}class cQ extends m.jG{constructor(a){super(),this.handleBeforeFire=a,this._actual=this._register(new l.vl),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._affectedLineHeights=null,this._affectedFontLines=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--,0===this._deferredCnt&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null,this._affectedLineHeights?.clear(),this._affectedLineHeights=null,this._affectedFontLines?.clear(),this._affectedFontLines=null)}recordLineAffectedByInjectedText(a){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(a)}recordLineAffectedByLineHeightChange(a,b,c,d){this._affectedLineHeights||(this._affectedLineHeights=new i.iD([],bB.toKey)),this._affectedLineHeights.add(new bB(a,b,c,d))}recordLineAffectedByFontChange(a,b,c){this._affectedFontLines||(this._affectedFontLines=new i.iD([],bC.toKey)),this._affectedFontLines.add(new bC(a,b,c))}checkAffectedAndFire(a){this._affectsMinimap||=!!a.minimap?.position,this._affectsOverviewRuler||=!!a.overviewRuler?.color,this._affectsGlyphMargin||=!!a.glyphMarginClassName,this._affectsLineNumber||=!!a.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){0===this._deferredCnt?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines,this._affectedLineHeights,this._affectedFontLines);let a={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(a)}}class cR extends m.jG{constructor(){super(),this._emitter=this._register(new l.vl),this.event=this._emitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(a=null){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){this._deferredEvent.rawContentChangedEvent.resultingSelection=a;let b=this._deferredEvent;this._deferredEvent=null,this._emitter.fire(b)}}fire(a){this._deferredCnt>0?this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(a):this._deferredEvent=a:this._emitter.fire(a)}}},64129:()=>{},64687:(a,b,c)=>{"use strict";c.d(b,{P:()=>f});var d=c(26529),e=c(18530);function f(a,b,c){let f=(0,d.HG)(a);return -1===f&&(f=a.length),function(a,b,c){let d=0;for(let c=0;c<a.length;c++)" "===a.charAt(c)?d=e.A.nextIndentTabStop(d,b):d++;let f="";if(!c){let a=Math.floor(d/b);d%=b;for(let b=0;b<a;b++)f+=" "}for(let a=0;a<d;a++)f+=" ";return f}(a.substring(0,f),b,c)+a.substring(f)}},64834:(a,b,c)=>{"use strict";c.d(b,{P:()=>j,w:()=>i});var d=c(87873),e=c(43765);c(78014);var f=c(66036);c(95091);var g=c(76631),h=c(61811);class i extends d.ZK{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(a,b,c,d,e,f){super(f),this._debugNameData=a,this._computeFn=b,this._changeTracker=c,this._handleLastObserverRemoved=d,this._equalityComparator=e,this._state=0,this._value=void 0,this._updateCount=0,this._dependencies=new Set,this._dependenciesToBeRemoved=new Set,this._changeSummary=void 0,this._isUpdating=!1,this._isComputing=!1,this._didReportChange=!1,this._isInBeforeUpdate=!1,this._isReaderValid=!1,this._store=void 0,this._delayedStore=void 0,this._removedObserverToCallEndUpdateOn=null,this._changeSummary=this._changeTracker?.createChangeSummary(void 0)}onLastObserverRemoved(){for(let a of(this._state=0,this._value=void 0,(0,h.t)()?.handleDerivedCleared(this),this._dependencies))a.removeObserver(this);this._dependencies.clear(),void 0!==this._store&&(this._store.dispose(),this._store=void 0),void 0!==this._delayedStore&&(this._delayedStore.dispose(),this._delayedStore=void 0),this._handleLastObserverRemoved?.()}get(){if(this._isComputing,0===this._observers.size){let a;try{let b;this._isReaderValid=!0,this._changeTracker&&(b=this._changeTracker.createChangeSummary(void 0),this._changeTracker.beforeUpdate?.(this,b)),a=this._computeFn(this,b)}finally{this._isReaderValid=!1}return this.onLastObserverRemoved(),a}do{if(1===this._state){for(let a of this._dependencies)if(a.reportChanges(),2===this._state)break}1===this._state&&(this._state=3),3!==this._state&&this._recompute()}while(3!==this._state);return this._value}_recompute(){let a=!1;this._isComputing=!0,this._didReportChange=!1;let b=this._dependenciesToBeRemoved;this._dependenciesToBeRemoved=this._dependencies,this._dependencies=b;try{let b=this._changeSummary;this._isReaderValid=!0,this._changeTracker&&(this._isInBeforeUpdate=!0,this._changeTracker.beforeUpdate?.(this,b),this._isInBeforeUpdate=!1,this._changeSummary=this._changeTracker?.createChangeSummary(b));let c=0!==this._state,d=this._value;this._state=3;let e=this._delayedStore;void 0!==e&&(this._delayedStore=void 0);try{void 0!==this._store&&(this._store.dispose(),this._store=void 0),this._value=this._computeFn(this,b)}finally{for(let a of(this._isReaderValid=!1,this._dependenciesToBeRemoved))a.removeObserver(this);this._dependenciesToBeRemoved.clear(),void 0!==e&&e.dispose()}a=this._didReportChange||c&&!this._equalityComparator(d,this._value),(0,h.t)()?.handleObservableUpdated(this,{oldValue:d,newValue:this._value,change:void 0,didChange:a,hadValue:c})}catch(a){(0,f.y4)(a)}if(this._isComputing=!1,!this._didReportChange&&a)for(let a of this._observers)a.handleChange(this,void 0);else this._didReportChange=!1}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(a){if(this._isUpdating)throw new f.D7("Cyclic deriveds are not supported yet!");this._updateCount++,this._isUpdating=!0;try{let a=1===this._updateCount;if(3===this._state&&(this._state=1,!a))for(let a of this._observers)a.handlePossibleChange(this);if(a)for(let a of this._observers)a.beginUpdate(this)}finally{this._isUpdating=!1}}endUpdate(a){if(this._updateCount--,0===this._updateCount){for(let a of[...this._observers])a.endUpdate(this);if(this._removedObserverToCallEndUpdateOn){let a=[...this._removedObserverToCallEndUpdateOn];for(let b of(this._removedObserverToCallEndUpdateOn=null,a))b.endUpdate(this)}}(0,e.Ft)(()=>this._updateCount>=0)}handlePossibleChange(a){if(3===this._state&&this._dependencies.has(a)&&!this._dependenciesToBeRemoved.has(a))for(let a of(this._state=1,this._observers))a.handlePossibleChange(this)}handleChange(a,b){if(this._dependencies.has(a)&&!this._dependenciesToBeRemoved.has(a)||this._isInBeforeUpdate){(0,h.t)()?.handleDerivedDependencyChanged(this,a,b);let c=!1;try{c=!this._changeTracker||this._changeTracker.handleChange({changedObservable:a,change:b,didChange:b=>b===a},this._changeSummary)}catch(a){(0,f.y4)(a)}let d=3===this._state;if(c&&(1===this._state||d)&&(this._state=2,d))for(let a of this._observers)a.handlePossibleChange(this)}}_ensureReaderValid(){if(!this._isReaderValid)throw new f.D7("The reader object cannot be used outside its compute function!")}readObservable(a){this._ensureReaderValid(),a.addObserver(this);let b=a.get();return this._dependencies.add(a),this._dependenciesToBeRemoved.delete(a),b}get store(){return this._ensureReaderValid(),void 0===this._store&&(this._store=new g.Cm),this._store}addObserver(a){let b=!this._observers.has(a)&&this._updateCount>0;super.addObserver(a),b&&!this._removedObserverToCallEndUpdateOn?.delete(a)&&a.beginUpdate(this)}removeObserver(a){this._observers.has(a)&&this._updateCount>0&&(this._removedObserverToCallEndUpdateOn||(this._removedObserverToCallEndUpdateOn=new Set),this._removedObserverToCallEndUpdateOn.add(a)),super.removeObserver(a)}debugGetState(){return{state:this._state,stateStr:function(a){switch(a){case 0:return"initial";case 1:return"dependenciesMightHaveChanged";case 2:return"stale";case 3:return"upToDate";default:return"<unknown>"}}(this._state),updateCount:this._updateCount,isComputing:this._isComputing,dependencies:this._dependencies,value:this._value}}debugSetValue(a){this._value=a}debugRecompute(){this.beginUpdate(this);try{this._isComputing?this._state=2:this._recompute()}finally{this.endUpdate(this)}}setValue(a,b,c){this._value=a;let d=this._observers;for(let a of(b.updateObserver(this,this),d))a.handleChange(this,c)}}class j extends i{constructor(a,b,c,d,e,f,g){super(a,b,c,d,e,g),this.set=f}}},64901:(a,b,c)=>{"use strict";c.d(b,{d:()=>d});class d{constructor(a,b=[],c=!1){this.ctor=a,this.staticArguments=b,this.supportsDelayedInstantiation=c}}},65666:(a,b,c)=>{"use strict";c.d(b,{$f:()=>h,MU:()=>i,Yb:()=>k,_t:()=>j,vn:()=>g});var d=c(26529),e=c(97195),f=c(72333);function g(a,b,c,h=!0,i){if(a<4)return null;let j=i.getLanguageConfiguration(b.tokenization.getLanguageId()).indentRulesSupport;if(!j)return null;let k=new f.no(b,j,i);if(c<=1)return{indentation:"",action:null};for(let a=c-1;a>0&&""===b.getLineContent(a);a--)if(1===a)return{indentation:"",action:null};let l=function(a,b,c){let d=a.tokenization.getLanguageIdAtPosition(b,0);if(b>1){let e,f=-1;for(e=b-1;e>=1;e--){if(a.tokenization.getLanguageIdAtPosition(e,0)!==d)return f;let b=a.getLineContent(e);if(c.shouldIgnore(e)||/^\s+$/.test(b)||""===b){f=e;continue}return e}}return -1}(b,c,k);if(l<0)return null;if(l<1)return{indentation:"",action:null};if(k.shouldIncrease(l)||k.shouldIndentNextLine(l)){let a=b.getLineContent(l);return{indentation:(0,d.UU)(a),action:e.l.Indent,line:l}}if(k.shouldDecrease(l)){let a=b.getLineContent(l);return{indentation:(0,d.UU)(a),action:null,line:l}}{if(1===l)return{indentation:(0,d.UU)(b.getLineContent(l)),action:null,line:l};let a=l-1,c=j.getIndentMetadata(b.getLineContent(a));if(!(3&c)&&4&c){let c=0;for(let b=a-1;b>0;b--)if(!k.shouldIndentNextLine(b)){c=b;break}return{indentation:(0,d.UU)(b.getLineContent(c+1)),action:null,line:c+1}}if(h)return{indentation:(0,d.UU)(b.getLineContent(l)),action:null,line:l};for(let a=l;a>0;a--)if(k.shouldIncrease(a))return{indentation:(0,d.UU)(b.getLineContent(a)),action:e.l.Indent,line:a};else if(k.shouldIndentNextLine(a)){let c=0;for(let b=a-1;b>0;b--)if(!k.shouldIndentNextLine(a)){c=b;break}return{indentation:(0,d.UU)(b.getLineContent(c+1)),action:null,line:c+1}}else if(k.shouldDecrease(a))return{indentation:(0,d.UU)(b.getLineContent(a)),action:null,line:a};return{indentation:(0,d.UU)(b.getLineContent(1)),action:null,line:1}}}function h(a,b,c,h,i,j){if(a<4)return null;let k=j.getLanguageConfiguration(c);if(!k)return null;let l=j.getLanguageConfiguration(c).indentRulesSupport;if(!l)return null;let m=new f.no(b,l,j),n=g(a,b,h,void 0,j);if(n){let c=n.line;if(void 0!==c){let f=!0;for(let a=c;a<h-1;a++)if(!/^\s*$/.test(b.getLineContent(a))){f=!1;break}if(f){let f=k.onEnter(a,"",b.getLineContent(c),"");if(f){let a=(0,d.UU)(b.getLineContent(c));return f.removeText&&(a=a.substring(0,a.length-f.removeText)),f.indentAction===e.l.Indent||f.indentAction===e.l.IndentOutdent?a=i.shiftIndent(a):f.indentAction===e.l.Outdent&&(a=i.unshiftIndent(a)),m.shouldDecrease(h)&&(a=i.unshiftIndent(a)),f.appendText&&(a+=f.appendText),(0,d.UU)(a)}}}if(m.shouldDecrease(h))if(n.action===e.l.Indent)return n.indentation;else return i.unshiftIndent(n.indentation);return n.action===e.l.Indent?i.shiftIndent(n.indentation):n.indentation}return null}function i(a,b,c,h,i){var j,k,l;if(a<4)return null;let m=b.getLanguageIdAtPosition(c.startLineNumber,c.startColumn),n=i.getLanguageConfiguration(m).indentRulesSupport;if(!n)return null;b.tokenization.forceTokenization(c.startLineNumber);let o=new f.V(b,i).getProcessedTokenContextAroundRange(c),p=o.afterRangeProcessedTokens,q=o.beforeRangeProcessedTokens,r=(0,d.UU)(q.getLineContent()),s=(j=b,k=c.startLineNumber,l=q,{tokenization:{getLineTokens:a=>a===k?l:j.tokenization.getLineTokens(a),getLanguageId:()=>j.getLanguageId(),getLanguageIdAtPosition:(a,b)=>j.getLanguageIdAtPosition(a,b)},getLineContent:a=>a===k?l.getLineContent():j.getLineContent(a)}),t=(0,f.WR)(b,c.getStartPosition()),u=b.getLineContent(c.startLineNumber),v=(0,d.UU)(u),w=g(a,s,c.startLineNumber+1,void 0,i);if(!w){let a=t?v:r;return{beforeEnter:a,afterEnter:a}}let x=t?v:w.indentation;return w.action===e.l.Indent&&(x=h.shiftIndent(x)),n.shouldDecrease(p.getLineContent())&&(x=h.unshiftIndent(x)),{beforeEnter:t?v:r,afterEnter:x}}function j(a,b,c,h,i,j){let k=a.autoIndent;if(k<4||(0,f.WR)(b,c.getStartPosition()))return null;let l=b.getLanguageIdAtPosition(c.startLineNumber,c.startColumn),m=j.getLanguageConfiguration(l).indentRulesSupport;if(!m)return null;let n=new f.V(b,j).getProcessedTokenContextAroundRange(c),o=n.beforeRangeProcessedTokens.getLineContent(),p=n.afterRangeProcessedTokens.getLineContent(),q=o+p,r=o+h+p;if(!m.shouldDecrease(q)&&m.shouldDecrease(r)){let a=g(k,b,c.startLineNumber,!1,j);if(!a)return null;let d=a.indentation;return a.action!==e.l.Indent&&(d=i.unshiftIndent(d)),d}let s=c.startLineNumber-1;if(s>0){let e=b.getLineContent(s);if(m.shouldIndentNextLine(e)&&m.shouldIncrease(r)){let e=g(k,b,c.startLineNumber,!1,j),f=e?.indentation;if(void 0!==f){let e=b.getLineContent(c.startLineNumber),g=(0,d.UU)(e),j=i.shiftIndent(f),k=/^\s*$/.test(q),l=a.autoClosingPairs.autoClosingPairsOpenByEnd.get(h),m=l&&l.length>0;if(j===g&&m&&k)return f}}}return null}function k(a,b,c){let d=c.getLanguageConfiguration(a.getLanguageId()).indentRulesSupport;return!d||b<1||b>a.getLineCount()?null:d.getIndentMetadata(a.getLineContent(b))}},66036:(a,b,c)=>{"use strict";c.d(b,{AL:()=>k,D7:()=>q,EM:()=>o,MB:()=>j,M_:()=>h,Qg:()=>m,aD:()=>l,cU:()=>function a(b){if(b instanceof Error){let{name:c,message:d,cause:e}=b;return{$isError:!0,name:c,message:d,stack:b.stacktrace||b.stack,noTelemetry:p.isErrorNoTelemetry(b),cause:e?a(e):void 0,code:b.code}}return b},dz:()=>g,iH:()=>n,y4:()=>f});class d{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(a){setTimeout(()=>{if(a.stack){if(p.isErrorNoTelemetry(a))throw new p(a.message+"\n\n"+a.stack);throw Error(a.message+"\n\n"+a.stack)}throw a},0)}}emit(a){this.listeners.forEach(b=>{b(a)})}onUnexpectedError(a){this.unexpectedErrorHandler(a),this.emit(a)}onUnexpectedExternalError(a){this.unexpectedErrorHandler(a)}}let e=new d;function f(a){e.onUnexpectedError(a)}function g(a){j(a)||e.onUnexpectedError(a)}function h(a){j(a)||e.onUnexpectedExternalError(a)}let i="Canceled";function j(a){return a instanceof k||a instanceof Error&&a.name===i&&a.message===i}class k extends Error{constructor(){super(i),this.name=this.message}}function l(){let a=Error(i);return a.name=a.message,a}function m(a){return a?Error(`Illegal argument: ${a}`):Error("Illegal argument")}function n(a){return a?Error(`Illegal state: ${a}`):Error("Illegal state")}class o extends Error{constructor(a){super("NotSupported"),a&&(this.message=a)}}class p extends Error{constructor(a){super(a),this.name="CodeExpectedError"}static fromError(a){if(a instanceof p)return a;let b=new p;return b.message=a.message,b.stack=a.stack,b}static isErrorNoTelemetry(a){return"CodeExpectedError"===a.name}}class q extends Error{constructor(a){super(a||"An unexpected bug occurred."),Object.setPrototypeOf(this,q.prototype)}}},66560:(a,b,c)=>{"use strict";c.d(b,{HJ:()=>k,LN:()=>h,YH:()=>j,ih:()=>l,rc:()=>g,wv:()=>i});var d=c(95091),e=c(76631),f=c(72816);class g extends e.jG{get onDidChange(){return this._onDidChange.event}constructor(a,b="",c="",e=!0,f){super(),this._onDidChange=this._register(new d.vl),this._enabled=!0,this._id=a,this._label=b,this._cssClass=c,this._enabled=e,this._actionCallback=f}get id(){return this._id}get label(){return this._label}set label(a){this._setLabel(a)}_setLabel(a){this._label!==a&&(this._label=a,this._onDidChange.fire({label:a}))}get tooltip(){return this._tooltip||""}set tooltip(a){this._setTooltip(a)}_setTooltip(a){this._tooltip!==a&&(this._tooltip=a,this._onDidChange.fire({tooltip:a}))}get class(){return this._cssClass}set class(a){this._setClass(a)}_setClass(a){this._cssClass!==a&&(this._cssClass=a,this._onDidChange.fire({class:a}))}get enabled(){return this._enabled}set enabled(a){this._setEnabled(a)}_setEnabled(a){this._enabled!==a&&(this._enabled=a,this._onDidChange.fire({enabled:a}))}get checked(){return this._checked}set checked(a){this._setChecked(a)}_setChecked(a){this._checked!==a&&(this._checked=a,this._onDidChange.fire({checked:a}))}async run(a,b){this._actionCallback&&await this._actionCallback(a)}}class h extends e.jG{constructor(){super(...arguments),this._onWillRun=this._register(new d.vl),this._onDidRun=this._register(new d.vl)}get onWillRun(){return this._onWillRun.event}get onDidRun(){return this._onDidRun.event}async run(a,b){let c;if(a.enabled){this._onWillRun.fire({action:a});try{await this.runAction(a,b)}catch(a){c=a}this._onDidRun.fire({action:a,error:c})}}async runAction(a,b){await a.run(b)}}class i{constructor(){this.id=i.ID,this.label="",this.tooltip="",this.class="separator",this.enabled=!1,this.checked=void 0}static join(...a){let b=[];for(let c of a)c.length&&(b=b.length?[...b,new i,...c]:c);return b}static clean(a){for(;a.length>0&&a[0].id===i.ID;)a.shift();for(;a.length>0&&a[a.length-1].id===i.ID;)a.pop();for(let b=a.length-2;b>=0;b--)a[b].id===i.ID&&a[b+1].id===i.ID&&a.splice(b+1,1);return a}static{this.ID="vs.actions.separator"}async run(){}}class j{get actions(){return this._actions}constructor(a,b,c,d){this.tooltip="",this.enabled=!0,this.checked=void 0,this.id=a,this.label=b,this.class=d,this._actions=c}async run(){}}class k extends g{static{this.ID="vs.actions.empty"}constructor(){super(k.ID,(0,f.kg)(32,"(empty)"),void 0,!1)}}function l(a){return{id:a.id,label:a.label,tooltip:a.tooltip??a.label,class:a.class,enabled:a.enabled??!0,checked:a.checked,run:async(...b)=>a.run(...b)}}},67298:(a,b,c)=>{"use strict";var d;function e(a,b){let c=[],d=[];for(let d of a)b.has(d)||c.push(d);for(let c of b)a.has(c)||d.push(c);return{removed:c,added:d}}function f(a,b){let c=new Set;for(let d of b)a.has(d)&&c.add(d);return c}c.d(b,{E$:()=>f,Zv:()=>e,iD:()=>g});class g{static{d=Symbol.toStringTag}constructor(a,b){for(const c of(this.toKey=b,this._map=new Map,this[d]="SetWithKey",a))this.add(c)}get size(){return this._map.size}add(a){let b=this.toKey(a);return this._map.set(b,a),this}delete(a){return this._map.delete(this.toKey(a))}has(a){return this._map.has(this.toKey(a))}*entries(){for(let a of this._map.values())yield[a,a]}keys(){return this.values()}*values(){for(let a of this._map.values())yield a}clear(){this._map.clear()}forEach(a,b){this._map.forEach(c=>a.call(b,c,c,this))}[Symbol.iterator](){return this.values()}}},67330:(a,b,c)=>{"use strict";let d,e,f,g,h;c.d(b,{h5:()=>l,vr:()=>j,xE:()=>k});var i=c(75082);function j(a){(d=document.createElement("div")).className="monaco-aria-container";let b=()=>{let a=document.createElement("div");return a.className="monaco-alert",a.setAttribute("role","alert"),a.setAttribute("aria-atomic","true"),d.appendChild(a),a};e=b(),f=b();let c=()=>{let a=document.createElement("div");return a.className="monaco-status",a.setAttribute("aria-live","polite"),a.setAttribute("aria-atomic","true"),d.appendChild(a),a};g=c(),h=c(),a.appendChild(d)}function k(a){d&&(e.textContent!==a?((0,i.w_)(f),m(e,a)):((0,i.w_)(e),m(f,a)))}function l(a){d&&(g.textContent!==a?((0,i.w_)(h),m(g,a)):((0,i.w_)(g),m(h,a)))}function m(a,b){(0,i.w_)(a),b.length>2e4&&(b=b.substr(0,2e4)),a.textContent=b,a.style.visibility="hidden",a.style.visibility="visible"}c(59849)},67421:()=>{},67786:(a,b,c)=>{"use strict";c.d(b,{Q:()=>d});var d,e=d||(d={});function f(a,b){if(a.start>=b.end||b.start>=a.end)return{start:0,end:0};let c=Math.max(a.start,b.start),d=Math.min(a.end,b.end);return d-c<=0?{start:0,end:0}:{start:c,end:d}}function g(a){return a.end-a.start<=0}e.intersect=f,e.isEmpty=g,e.intersects=function(a,b){return!g(f(a,b))},e.relativeComplement=function(a,b){let c=[],d={start:a.start,end:Math.min(b.start,a.end)},e={start:Math.max(b.end,a.start),end:a.end};return g(d)||c.push(d),g(e)||c.push(e),c}},67992:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(1401),e=c(6812),f=c(61822);class g{static{this.zero=new g(0,0)}static betweenPositions(a,b){return a.lineNumber===b.lineNumber?new g(0,b.column-a.column):new g(b.lineNumber-a.lineNumber,b.column-1)}static fromPosition(a){return new g(a.lineNumber-1,a.column-1)}static ofRange(a){return g.betweenPositions(a.getStartPosition(),a.getEndPosition())}static ofText(a){let b=0,c=0;for(let d of a)"\n"===d?(b++,c=0):c++;return new g(b,c)}constructor(a,b){this.lineCount=a,this.columnCount=b}isGreaterThanOrEqualTo(a){return this.lineCount!==a.lineCount?this.lineCount>a.lineCount:this.columnCount>=a.columnCount}add(a){return 0===a.lineCount?new g(this.lineCount,this.columnCount+a.columnCount):new g(this.lineCount+a.lineCount,a.columnCount)}createRange(a){return 0===this.lineCount?new f.Q(a.lineNumber,a.column,a.lineNumber,a.column+this.columnCount):new f.Q(a.lineNumber,a.column,a.lineNumber+this.lineCount,this.columnCount+1)}toRange(){return new f.Q(1,1,this.lineCount+1,this.columnCount+1)}toLineRange(){return d.M.ofLength(1,this.lineCount+1)}addToPosition(a){return 0===this.lineCount?new e.y(a.lineNumber,a.column+this.columnCount):new e.y(a.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}}},68862:(a,b,c)=>{"use strict";c.d(b,{VR:()=>e,cn:()=>g,ct:()=>h,mX:()=>f});var d=c(72816);c(30996),c(7052),c(54957);let e=(0,c(58254).u1)("contextService");class f{constructor(a,b){this.raw=b,this.uri=a.uri,this.index=a.index,this.name=a.name}toJSON(){return{uri:this.uri,name:this.name,index:this.index}}}(0,d.kg)(2119,"Code Workspace");let g="4064f6ec-cb38-4ad0-af64-ee6467e63c82";function h(a){return a.id===g}},69907:(a,b,c)=>{"use strict";c.d(b,{T:()=>o});var d=c(75082),e=c(61055),f=c(95091),g=c(76631),h=c(28952);class i{constructor(a,b){this.chr=a,this.type=b,this.width=0}fulfill(a){this.width=a}}class j{constructor(a,b){this._bareFontInfo=a,this._requests=b,this._container=null,this._testElements=null}read(a){this._createDomElements(),a.document.body.appendChild(this._container),this._readFromDomElements(),this._container?.remove(),this._container=null,this._testElements=null}_createDomElements(){let a=document.createElement("div");a.style.position="absolute",a.style.top="-50000px",a.style.width="50000px";let b=document.createElement("div");(0,h.M)(b,this._bareFontInfo),a.appendChild(b);let c=document.createElement("div");(0,h.M)(c,this._bareFontInfo),c.style.fontWeight="bold",a.appendChild(c);let d=document.createElement("div");(0,h.M)(d,this._bareFontInfo),d.style.fontStyle="italic",a.appendChild(d);let e=[];for(let a of this._requests){let f;0===a.type&&(f=b),2===a.type&&(f=c),1===a.type&&(f=d),f.appendChild(document.createElement("br"));let g=document.createElement("span");j._render(g,a),f.appendChild(g),e.push(g)}this._container=a,this._testElements=e}static _render(a,b){if(" "===b.chr){let b="\xa0";for(let a=0;a<8;a++)b+=b;a.innerText=b}else{let c=b.chr;for(let a=0;a<8;a++)c+=c;a.textContent=c}}_readFromDomElements(){for(let a=0,b=this._requests.length;a<b;a++){let b=this._requests[a],c=this._testElements[a];b.fulfill(c.offsetWidth/256)}}}var k=c(21495),l=c(55385);class m extends g.jG{constructor(){super(...arguments),this._cache=new Map,this._evictUntrustedReadingsTimeout=-1,this._onDidChange=this._register(new f.vl),this.onDidChange=this._onDidChange.event}dispose(){-1!==this._evictUntrustedReadingsTimeout&&(clearTimeout(this._evictUntrustedReadingsTimeout),this._evictUntrustedReadingsTimeout=-1),super.dispose()}clearAllFontInfos(){this._cache.clear(),this._onDidChange.fire()}_ensureCache(a){let b=(0,d.Q2)(a),c=this._cache.get(b);return c||(c=new n,this._cache.set(b,c)),c}_writeToCache(a,b,c){this._ensureCache(a).put(b,c),c.isTrusted||-1!==this._evictUntrustedReadingsTimeout||(this._evictUntrustedReadingsTimeout=a.setTimeout(()=>{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings(a)},5e3))}_evictUntrustedReadings(a){let b=this._ensureCache(a),c=b.getValues(),d=!1;for(let a of c)a.isTrusted||(d=!0,b.remove(a));d&&this._onDidChange.fire()}readFontInfo(a,b){let c=this._ensureCache(a);if(!c.has(b)){let c=this._actualReadFontInfo(a,b);(c.typicalHalfwidthCharacterWidth<=2||c.typicalFullwidthCharacterWidth<=2||c.spaceWidth<=2||c.maxDigitWidth<=2)&&(c=new l.YJ({pixelRatio:e.c.getInstance(a).value,fontFamily:c.fontFamily,fontWeight:c.fontWeight,fontSize:c.fontSize,fontFeatureSettings:c.fontFeatureSettings,fontVariationSettings:c.fontVariationSettings,lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,isMonospace:c.isMonospace,typicalHalfwidthCharacterWidth:Math.max(c.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(c.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:c.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(c.spaceWidth,5),middotWidth:Math.max(c.middotWidth,5),wsmiddotWidth:Math.max(c.wsmiddotWidth,5),maxDigitWidth:Math.max(c.maxDigitWidth,5)},!1)),this._writeToCache(a,b,c)}return c.get(b)}_createRequest(a,b,c,d){let e=new i(a,b);return c.push(e),d?.push(e),e}_actualReadFontInfo(a,b){let c=[],d=[],f=this._createRequest("n",0,c,d),g=this._createRequest("m",0,c,null),h=this._createRequest(" ",0,c,d),i=this._createRequest("0",0,c,d),m=this._createRequest("1",0,c,d),n=this._createRequest("2",0,c,d),o=this._createRequest("3",0,c,d),p=this._createRequest("4",0,c,d),q=this._createRequest("5",0,c,d),r=this._createRequest("6",0,c,d),s=this._createRequest("7",0,c,d),t=this._createRequest("8",0,c,d),u=this._createRequest("9",0,c,d),v=this._createRequest("→",0,c,d),w=this._createRequest("→",0,c,null),x=this._createRequest("\xb7",0,c,d),y=this._createRequest(String.fromCharCode(11825),0,c,null),z="|/-_ilm%";for(let a=0,b=z.length;a<b;a++)this._createRequest(z.charAt(a),0,c,d),this._createRequest(z.charAt(a),1,c,d),this._createRequest(z.charAt(a),2,c,d);new j(b,c).read(a);let A=Math.max(i.width,m.width,n.width,o.width,p.width,q.width,r.width,s.width,t.width,u.width),B=b.fontFeatureSettings===k.Bc.OFF,C=d[0].width;for(let a=1,b=d.length;B&&a<b;a++){let b=C-d[a].width;if(b<-.001||b>.001){B=!1;break}}let D=!0;return B&&w.width!==C&&(D=!1),w.width>v.width&&(D=!1),new l.YJ({pixelRatio:e.c.getInstance(a).value,fontFamily:b.fontFamily,fontWeight:b.fontWeight,fontSize:b.fontSize,fontFeatureSettings:b.fontFeatureSettings,fontVariationSettings:b.fontVariationSettings,lineHeight:b.lineHeight,letterSpacing:b.letterSpacing,isMonospace:B,typicalHalfwidthCharacterWidth:f.width,typicalFullwidthCharacterWidth:g.width,canUseHalfwidthRightwardsArrow:D,spaceWidth:h.width,middotWidth:x.width,wsmiddotWidth:y.width,maxDigitWidth:A},!0)}}class n{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(a){let b=a.getId();return!!this._values[b]}get(a){let b=a.getId();return this._values[b]}put(a,b){let c=a.getId();this._keys[c]=a,this._values[c]=b}remove(a){let b=a.getId();delete this._keys[b],delete this._values[b]}getValues(){return Object.keys(this._keys).map(a=>this._values[a])}}let o=new m},70233:(a,b,c)=>{"use strict";c.d(b,{x:()=>d});class d{static getLanguageId(a){return(255&a)>>>0}static getTokenType(a){return(768&a)>>>8}static containsBalancedBrackets(a){return(1024&a)!=0}static getFontStyle(a){return(30720&a)>>>11}static getForeground(a){return(0xff8000&a)>>>15}static getBackground(a){return(0xff000000&a)>>>24}static getClassNameFromMetadata(a){let b="mtk"+this.getForeground(a),c=this.getFontStyle(a);return 1&c&&(b+=" mtki"),2&c&&(b+=" mtkb"),4&c&&(b+=" mtku"),8&c&&(b+=" mtks"),b}static getInlineStyleFromMetadata(a,b){let c=this.getForeground(a),d=this.getFontStyle(a),e=`color: ${b[c]};`;1&d&&(e+="font-style: italic;"),2&d&&(e+="font-weight: bold;");let f="";return 4&d&&(f+=" underline"),8&d&&(f+=" line-through"),f&&(e+=`text-decoration:${f};`),e}static getPresentationFromMetadata(a){let b=this.getForeground(a),c=this.getFontStyle(a);return{foreground:b,italic:!!(1&c),bold:!!(2&c),underline:!!(4&c),strikethrough:!!(8&c)}}}},70281:(a,b,c)=>{"use strict";c.d(b,{TQ:()=>h,eb:()=>m,nh:()=>l});var d=c(55404);class e{constructor(a,b,c,d,e){this._parsedThemeRuleBrand=void 0,this.token=a,this.index=b,this.fontStyle=c,this.foreground=d,this.background=e}}let f=/^#?([0-9A-Fa-f]{6})([0-9A-Fa-f]{2})?$/;class g{constructor(){this._lastColorId=0,this._id2color=[],this._color2id=new Map}getId(a){if(null===a)return 0;let b=a.match(f);if(!b)throw Error("Illegal value for token color: "+a);a=b[1].toUpperCase();let c=this._color2id.get(a);return c||(c=++this._lastColorId,this._color2id.set(a,c),this._id2color[c]=d.Q1.fromHex("#"+a)),c}getColorMap(){return this._id2color.slice(0)}}class h{static createFromRawTokenTheme(a,b){return this.createFromParsedTokenTheme(function(a){if(!a||!Array.isArray(a))return[];let b=[],c=0;for(let d=0,f=a.length;d<f;d++){let f=a[d],g=-1;if("string"==typeof f.fontStyle){g=0;let a=f.fontStyle.split(" ");for(let b=0,c=a.length;b<c;b++)switch(a[b]){case"italic":g|=1;break;case"bold":g|=2;break;case"underline":g|=4;break;case"strikethrough":g|=8}}let h=null;"string"==typeof f.foreground&&(h=f.foreground);let i=null;"string"==typeof f.background&&(i=f.background),b[c++]=new e(f.token||"",d,g,h,i)}return b}(a),b)}static createFromParsedTokenTheme(a,b){return function(a,b){a.sort((a,b)=>{var c,d;let e=(c=a.token,c<(d=b.token)?-1:+(c>d));return 0!==e?e:a.index-b.index});let c=0,d="000000",e="ffffff";for(;a.length>=1&&""===a[0].token;){let b=a.shift();-1!==b.fontStyle&&(c=b.fontStyle),null!==b.foreground&&(d=b.foreground),null!==b.background&&(e=b.background)}let f=new g;for(let a of b)f.getId(a);let i=new k(new j(c,f.getId(d),f.getId(e)));for(let b=0,c=a.length;b<c;b++){let c=a[b];i.insert(c.token,c.fontStyle,f.getId(c.foreground),f.getId(c.background))}return new h(f,i)}(a,b)}constructor(a,b){this._colorMap=a,this._root=b,this._cache=new Map}getColorMap(){return this._colorMap.getColorMap()}_match(a){return this._root.match(a)}match(a,b){let c=this._cache.get(b);if(void 0===c){let a=this._match(b),d=function(a){let b=a.match(i);if(!b)return 0;switch(b[1]){case"comment":return 1;case"string":return 2;case"regex":case"regexp":return 3}throw Error("Unexpected match for standard token type!")}(b);c=(a.metadata|d<<8)>>>0,this._cache.set(b,c)}return(a|c)>>>0}}let i=/\b(comment|string|regex|regexp)\b/;class j{constructor(a,b,c){this._themeTrieElementRuleBrand=void 0,this._fontStyle=a,this._foreground=b,this._background=c,this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}clone(){return new j(this._fontStyle,this._foreground,this._background)}acceptOverwrite(a,b,c){-1!==a&&(this._fontStyle=a),0!==b&&(this._foreground=b),0!==c&&(this._background=c),this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}}class k{constructor(a){this._themeTrieElementBrand=void 0,this._mainRule=a,this._children=new Map}match(a){let b,c;if(""===a)return this._mainRule;let d=a.indexOf(".");-1===d?(b=a,c=""):(b=a.substring(0,d),c=a.substring(d+1));let e=this._children.get(b);return void 0!==e?e.match(c):this._mainRule}insert(a,b,c,d){let e,f;if(""===a)return void this._mainRule.acceptOverwrite(b,c,d);let g=a.indexOf(".");-1===g?(e=a,f=""):(e=a.substring(0,g),f=a.substring(g+1));let h=this._children.get(e);void 0===h&&(h=new k(this._mainRule.clone()),this._children.set(e,h)),h.insert(f,b,c,d)}}function l(a){let b=[];for(let c=1,d=a.length;c<d;c++){let d=a[c];b[c]=`.mtk${c} { color: ${d}; }`}return b.push(".mtki { font-style: italic; }"),b.push(".mtkb { font-weight: bold; }"),b.push(".mtku { text-decoration: underline; text-underline-position: under; }"),b.push(".mtks { text-decoration: line-through; }"),b.push(".mtks.mtku { text-decoration: underline line-through; text-underline-position: under; }"),b.join("\n")}function m(a,b){let c,d=(c=a.toLowerCase().trim())?n(c):"default";return n(`font-decoration-${d}-${b}`)}function n(a){return a.replace(/[^a-z0-9_-]/gi,"-")}},70288:(a,b,c)=>{"use strict";c.d(b,{EH:()=>p,XF:()=>r,Z4:()=>q});var d=c(47322),e=c(57616),f=c(75082),g=c(34793),h=c(89191),i=c(94199),j=c(66560),k=c(76631),l=c(18216),m=c(85214);c(1505);var n=c(72816),o=c(47339);class p extends k.jG{get action(){return this._action}constructor(a,b,c={}){super(),this.options=c,this._context=a||this,this._action=b,b instanceof j.rc&&this._register(b.onDidChange(a=>{this.element&&this.handleActionChangeEvent(a)}))}handleActionChangeEvent(a){void 0!==a.enabled&&this.updateEnabled(),void 0!==a.checked&&this.updateChecked(),void 0!==a.class&&this.updateClass(),void 0!==a.label&&(this.updateLabel(),this.updateTooltip()),void 0!==a.tooltip&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new j.LN)),this._actionRunner}set actionRunner(a){this._actionRunner=a}isEnabled(){return this._action.enabled}setActionContext(a){this._context=a}render(a){let b=this.element=a;this._register(g.q.addTarget(a));let c=this.options&&this.options.draggable;c&&(a.draggable=!0,d.gm&&this._register((0,f.ko)(a,f.Bx.DRAG_START,a=>a.dataTransfer?.setData(e.t.TEXT,this._action.label)))),this._register((0,f.ko)(b,g.B.Tap,a=>this.onClick(a,!0))),this._register((0,f.ko)(b,f.Bx.MOUSE_DOWN,a=>{c||f.fs.stop(a,!0),this._action.enabled&&0===a.button&&b.classList.add("active")})),l.zx&&this._register((0,f.ko)(b,f.Bx.CONTEXT_MENU,a=>{0===a.button&&!0===a.ctrlKey&&this.onClick(a)})),this._register((0,f.ko)(b,f.Bx.CLICK,a=>{f.fs.stop(a,!0),this.options&&this.options.isMenu||this.onClick(a)})),this._register((0,f.ko)(b,f.Bx.DBLCLICK,a=>{f.fs.stop(a,!0)})),[f.Bx.MOUSE_UP,f.Bx.MOUSE_OUT].forEach(a=>{this._register((0,f.ko)(b,a,a=>{f.fs.stop(a),b.classList.remove("active")}))})}onClick(a,b=!1){f.fs.stop(a,!0);let c=(0,m.z)(this._context)?this.options?.useEventAsContext?a:{preserveFocus:b}:this._context;this.actionRunner.run(this._action,c)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(a){this.element&&(this.element.tabIndex=a?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}getClass(){return this.action.class}getTooltip(){return this.action.tooltip}getHoverContents(){return this.getTooltip()}updateTooltip(){if(!this.element)return;let a=this.getHoverContents()??"";if(this.updateAriaLabel(),this.customHover||""===a)this.customHover&&this.customHover.update(a);else{let b=this.options.hoverDelegate??(0,h.nZ)("element");this.customHover=this._store.add((0,o.i)().setupManagedHover(b,this.element,a))}}updateAriaLabel(){if(this.element){let a=this.getTooltip()??"";this.element.setAttribute("aria-label",a)}}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),this._context=void 0,super.dispose()}}class q extends p{constructor(a,b,c){super(a,b,c={...c,icon:void 0!==c.icon&&c.icon,label:void 0===c.label||c.label}),this.options=c,this.cssClass=""}render(a){super.render(a),(0,m.j)(this.element);let b=document.createElement("a");if(b.classList.add("action-label"),b.setAttribute("role",this.getDefaultAriaRole()),this.label=b,this.element.appendChild(b),this.options.label&&this.options.keybinding&&!this.options.keybindingNotRenderedWithLabel){let a=document.createElement("span");a.classList.add("keybinding"),a.textContent=this.options.keybinding,this.element.appendChild(a)}this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}getDefaultAriaRole(){return this._action.id===j.wv.ID?"presentation":this.options.isMenu?"menuitem":this.options.isTabList?"tab":"button"}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(a){this.label&&(this.label.tabIndex=a?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.action.label)}getTooltip(){let a=null;return this.action.tooltip?a=this.action.tooltip:this.action.label&&(a=this.action.label,this.options.keybinding&&(a=(0,n.kg)(0,"{0} ({1})",a,this.options.keybinding))),a??void 0}updateClass(){this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.action.id===j.wv.ID&&this.action.class?this.label?.classList.add(this.action.class):this.options.icon?(this.cssClass=this.getClass(),this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):this.label?.classList.remove("codicon")}updateEnabled(){this.action.enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),this.element?.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),this.element?.classList.add("disabled"))}updateAriaLabel(){if(this.label){let a=this.getTooltip()??"";this.label.setAttribute("aria-label",a)}}updateChecked(){this.label&&(void 0!==this.action.checked?(this.label.classList.toggle("checked",this.action.checked),this.options.isTabList?this.label.setAttribute("aria-selected",this.action.checked?"true":"false"):(this.label.setAttribute("aria-pressed",this.action.checked?"true":"false"),this.label.setAttribute("role","button"))):(this.label.classList.remove("checked"),this.label.removeAttribute(this.options.isTabList?"aria-selected":"aria-pressed"),this.label.setAttribute("role",this.getDefaultAriaRole())))}}class r extends p{constructor(a,b,c,d,e,f,g){super(a,b),this.selectBox=new i.a(c,d,e,f,g),this.selectBox.setFocusable(!1),this._register(this.selectBox),this.registerListeners()}select(a){this.selectBox.select(a)}registerListeners(){this._register(this.selectBox.onDidSelect(a=>this.runAction(a.selected,a.index)))}runAction(a,b){this.actionRunner.run(this._action,this.getActionContext(a,b))}getActionContext(a,b){return a}setFocusable(a){this.selectBox.setFocusable(a)}focus(){this.selectBox?.focus()}blur(){this.selectBox?.blur()}render(a){this.selectBox.render(a)}}},70401:()=>{},70687:(a,b,c)=>{"use strict";let d,e,f;c.d(b,{$6:()=>d,A0:()=>A,EQ:()=>v,F6:()=>B,HC:()=>h,PK:()=>p,Pq:()=>w,Qg:()=>n,SS:()=>o,Th:()=>u,VK:()=>r,Zv:()=>C,b7:()=>e,nY:()=>q,pc:()=>x,uC:()=>z,vb:()=>y,ve:()=>t,wR:()=>function a(b,c){return c?new Promise((a,d)=>{let e=setTimeout(()=>{f.dispose(),a()},b),f=c.onCancellationRequested(()=>{clearTimeout(e),f.dispose(),d(new j.AL)})}):o(c=>a(b,c))}});var g,h,i=c(92640),j=c(66036),k=c(76631),l=c(18216),m=c(2938);function n(a){return!!a&&"function"==typeof a.then}function o(a){let b=new i.Qi,c=a(b.token),d=!1,e=new Promise((a,e)=>{let f=b.token.onCancellationRequested(()=>{d=!0,f.dispose(),e(new j.AL)});Promise.resolve(c).then(c=>{f.dispose(),b.dispose(),d?(0,k.Xm)(c)&&c.dispose():a(c)},a=>{f.dispose(),b.dispose(),e(a)})});return new class{cancel(){b.cancel(),b.dispose()}then(a,b){return e.then(a,b)}catch(a){return this.then(void 0,a)}finally(a){return e.finally(a)}}}function p(a,b,c){return new Promise((d,e)=>{let f=b.onCancellationRequested(()=>{f.dispose(),d(c)});a.then(d,e).finally(()=>f.dispose())})}function q(a,b){return new Promise((c,d)=>{let e=b.onCancellationRequested(()=>{e.dispose(),d(new j.AL)});a.then(c,d).finally(()=>e.dispose())})}function r(a){if(!(0,j.MB)(a))return Promise.reject(a)}class s{constructor(){this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null,this.cancellationTokenSource=new i.Qi}queue(a){if(this.cancellationTokenSource.token.isCancellationRequested)return Promise.reject(Error("Throttler is disposed"));if(this.activePromise){if(this.queuedPromiseFactory=a,!this.queuedPromise){let a=()=>{if(this.queuedPromise=null,this.cancellationTokenSource.token.isCancellationRequested)return;let a=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,a};this.queuedPromise=new Promise(b=>{this.activePromise.then(a,a).then(b)})}return new Promise((a,b)=>{this.queuedPromise.then(a,b)})}return this.activePromise=a(this.cancellationTokenSource.token),new Promise((a,b)=>{this.activePromise.then(b=>{this.activePromise=null,a(b)},a=>{this.activePromise=null,b(a)})})}dispose(){this.cancellationTokenSource.cancel()}}class t{constructor(a){this.defaultDelay=a,this.deferred=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(a,b=this.defaultDelay){let c,d,e;this.task=a,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((a,b)=>{this.doResolve=a,this.doReject=b}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){let a=this.task;return this.task=null,a()}}));let f=()=>{this.deferred=null,this.doResolve?.(null)};return this.deferred=b===m.h?(c=!0,queueMicrotask(()=>{c&&(c=!1,f())}),{isTriggered:()=>c,dispose:()=>{c=!1}}):(d=!0,e=setTimeout(()=>{d=!1,f()},b),{isTriggered:()=>d,dispose:()=>{clearTimeout(e),d=!1}}),this.completionPromise}isTriggered(){return!!this.deferred?.isTriggered()}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject?.(new j.AL),this.completionPromise=null)}cancelTimeout(){this.deferred?.dispose(),this.deferred=null}dispose(){this.cancel()}}class u{constructor(a){this.delayer=new t(a),this.throttler=new s}trigger(a,b){return this.delayer.trigger(()=>this.throttler.queue(a),b)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose(),this.throttler.dispose()}}function v(a,b=0,c){let d=setTimeout(()=>{a(),c&&e.dispose()},b),e=(0,k.s)(()=>{clearTimeout(d),c?.delete(e)});return c?.add(e),e}class w{constructor(){this._runningTask=void 0,this._pendingTasks=[]}schedule(a){let b=new C;return this._pendingTasks.push({task:a,deferred:b,setUndefinedWhenCleared:!1}),this._runIfNotRunning(),b.p}_runIfNotRunning(){void 0===this._runningTask&&this._processQueue()}async _processQueue(){if(0===this._pendingTasks.length)return;let a=this._pendingTasks.shift();if(a){if(this._runningTask)throw new j.D7;this._runningTask=a.task;try{let b=await a.task();a.deferred.complete(b)}catch(b){a.deferred.error(b)}finally{this._runningTask=void 0,this._processQueue()}}}clearPending(){let a=this._pendingTasks;for(let b of(this._pendingTasks=[],a))b.setUndefinedWhenCleared?b.deferred.complete(void 0):b.deferred.error(new j.AL)}}class x{constructor(a,b){this._isDisposed=!1,this._token=void 0,"function"==typeof a&&"number"==typeof b&&this.setIfNotSet(a,b)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){void 0!==this._token&&(clearTimeout(this._token),this._token=void 0)}cancelAndSet(a,b){if(this._isDisposed)throw new j.D7("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=void 0,a()},b)}setIfNotSet(a,b){if(this._isDisposed)throw new j.D7("Calling 'setIfNotSet' on a disposed TimeoutTimer");void 0===this._token&&(this._token=setTimeout(()=>{this._token=void 0,a()},b))}}class y{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(a,b,c=globalThis){if(this.isDisposed)throw new j.D7("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let d=c.setInterval(()=>{a()},b);this.disposable=(0,k.s)(()=>{c.clearInterval(d),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}}class z{constructor(a,b){this.timeoutToken=void 0,this.runner=a,this.timeout=b,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=void 0)}schedule(a=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,a)}get delay(){return this.timeout}set delay(a){this.timeout=a}isScheduled(){return void 0!==this.timeoutToken}onTimeout(){this.timeoutToken=void 0,this.runner&&this.doRun()}doRun(){this.runner?.()}}e="function"!=typeof(f=globalThis).requestIdleCallback||"function"!=typeof f.cancelIdleCallback?(a,b,c)=>{(0,l._p)(()=>{if(d)return;let a=Date.now()+15;b(Object.freeze({didTimeout:!0,timeRemaining:()=>Math.max(0,a-Date.now())}))});let d=!1;return{dispose(){d||(d=!0)}}}:(a,b,c)=>{let d=a.requestIdleCallback(b,"number"==typeof c?{timeout:c}:void 0),e=!1;return{dispose(){e||(e=!0,a.cancelIdleCallback(d))}}},d=(a,b)=>e(globalThis,a,b);class A{constructor(a,b){this._didRun=!1,this._executor=()=>{try{this._value=b()}catch(a){this._error=a}finally{this._didRun=!0}},this._handle=e(a,()=>this._executor())}dispose(){this._handle.dispose()}get value(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value}get isInitialized(){return this._didRun}}class B extends A{constructor(a){super(globalThis,a)}}class C{get isRejected(){return this.outcome?.outcome===1}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise((a,b)=>{this.completeCallback=a,this.errorCallback=b})}complete(a){return this.isSettled?Promise.resolve():new Promise(b=>{this.completeCallback(a),this.outcome={outcome:0,value:a},b()})}error(a){return this.isSettled?Promise.resolve():new Promise(b=>{this.errorCallback(a),this.outcome={outcome:1,value:a},b()})}cancel(){return this.error(new j.AL)}}(g=h||(h={})).settled=async function(a){let b,c=await Promise.all(a.map(a=>a.then(a=>a,a=>{b||(b=a)})));if(void 0!==b)throw b;return c},g.withAsyncBody=function(a){return new Promise(async(b,c)=>{try{await a(b,c)}catch(a){c(a)}})};class D{constructor(){this._unsatisfiedConsumers=[],this._unconsumedValues=[]}get hasFinalValue(){return!!this._finalValue}produce(a){if(this._ensureNoFinalValue(),this._unsatisfiedConsumers.length>0){let b=this._unsatisfiedConsumers.shift();this._resolveOrRejectDeferred(b,a)}else this._unconsumedValues.push(a)}produceFinal(a){for(let b of(this._ensureNoFinalValue(),this._finalValue=a,this._unsatisfiedConsumers))this._resolveOrRejectDeferred(b,a);this._unsatisfiedConsumers.length=0}_ensureNoFinalValue(){if(this._finalValue)throw new j.D7("ProducerConsumer: cannot produce after final value has been set")}_resolveOrRejectDeferred(a,b){b.ok?a.complete(b.value):a.error(b.error)}consume(){if(this._unconsumedValues.length>0||this._finalValue){let a=this._unconsumedValues.length>0?this._unconsumedValues.shift():this._finalValue;return a.ok?Promise.resolve(a.value):Promise.reject(a.error)}{let a=new C;return this._unsatisfiedConsumers.push(a),a.p}}}class E{constructor(a,b){this._onReturn=b,this._producerConsumer=new D,this._iterator={next:()=>this._producerConsumer.consume(),return:()=>(this._onReturn?.(),Promise.resolve({done:!0,value:void 0})),throw:async a=>(this._finishError(a),{done:!0,value:void 0})},queueMicrotask(async()=>{let b=a({emitOne:a=>this._producerConsumer.produce({ok:!0,value:{done:!1,value:a}}),emitMany:a=>{for(let b of a)this._producerConsumer.produce({ok:!0,value:{done:!1,value:b}})},reject:a=>this._finishError(a)});if(!this._producerConsumer.hasFinalValue)try{await b,this._finishOk()}catch(a){this._finishError(a)}})}static fromArray(a){return new E(b=>{b.emitMany(a)})}static fromPromise(a){return new E(async b=>{b.emitMany(await a)})}static fromPromisesResolveOrder(a){return new E(async b=>{await Promise.all(a.map(async a=>b.emitOne(await a)))})}static merge(a){return new E(async b=>{await Promise.all(a.map(async a=>{for await(let c of a)b.emitOne(c)}))})}static{this.EMPTY=E.fromArray([])}static map(a,b){return new E(async c=>{for await(let d of a)c.emitOne(b(d))})}static tee(a){let b,c,d=new C,e=async()=>{if(b&&c)try{for await(let d of a)b.emitOne(d),c.emitOne(d)}catch(a){b.reject(a),c.reject(a)}finally{d.complete()}};return[new E(async a=>(b=a,e(),d.p)),new E(async a=>(c=a,e(),d.p))]}map(a){return E.map(this,a)}static coalesce(a){return E.filter(a,a=>!!a)}coalesce(){return E.coalesce(this)}static filter(a,b){return new E(async c=>{for await(let d of a)b(d)&&c.emitOne(d)})}filter(a){return E.filter(this,a)}_finishOk(){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!0,value:{done:!0,value:void 0}})}_finishError(a){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!1,error:a})}[Symbol.asyncIterator](){return this._iterator}}},71296:(a,b,c)=>{"use strict";c.d(b,{s:()=>e});var d=c(18530);class e{static whitespaceVisibleColumn(a,b,c){let e=a.length,f=0,g=-1,h=-1;for(let i=0;i<e;i++){if(i===b)return[g,h,f];switch(f%c==0&&(g=i,h=f),a.charCodeAt(i)){case 32:f+=1;break;case 9:f=d.A.nextRenderTabStop(f,c);break;default:return[-1,-1,-1]}}return b===e?[g,h,f]:[-1,-1,-1]}static atomicPosition(a,b,c,f){let g,h=a.length,[i,j,k]=e.whitespaceVisibleColumn(a,b,c);if(-1===k)return -1;switch(f){case 0:g=!0;break;case 1:g=!1;break;case 2:if(k%c==0)return b;g=k%c<=c/2}if(g){if(-1===i)return -1;let b=j;for(let e=i;e<h;++e){if(b===j+c)return i;switch(a.charCodeAt(e)){case 32:b+=1;break;case 9:b=d.A.nextRenderTabStop(b,c);break;default:return -1}}return b===j+c?i:-1}let l=d.A.nextRenderTabStop(k,c),m=k;for(let e=b;e<h;e++){if(m===l)return e;switch(a.charCodeAt(e)){case 32:m+=1;break;case 9:m=d.A.nextRenderTabStop(m,c);break;default:return -1}}return m===l?h:-1}}},71880:()=>{},72333:(a,b,c)=>{"use strict";c.d(b,{V:()=>h,WR:()=>j,no:()=>g});var d=c(26529),e=c(99807),f=c(91324);class g{constructor(a,b,c){this._indentRulesSupport=b,this._indentationLineProcessor=new i(a,c)}shouldIncrease(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIncrease(c)}shouldDecrease(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldDecrease(c)}shouldIgnore(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIgnore(c)}shouldIndentNextLine(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIndentNextLine(c)}}class h{constructor(a,b){this.model=a,this.indentationLineProcessor=new i(a,b)}getProcessedTokenContextAroundRange(a){let b=this._getProcessedTokensBeforeRange(a);return{beforeRangeProcessedTokens:b,afterRangeProcessedTokens:this._getProcessedTokensAfterRange(a),previousLineProcessedTokens:this._getProcessedPreviousLineTokens(a)}}_getProcessedTokensBeforeRange(a){let b;this.model.tokenization.forceTokenization(a.startLineNumber);let c=this.model.tokenization.getLineTokens(a.startLineNumber),d=(0,e.BQ)(c,a.startColumn-1);if(j(this.model,a.getStartPosition())){let e=a.startColumn-1-d.firstCharOffset,f=d.firstCharOffset;b=c.sliceAndInflate(f,f+e,0)}else{let d=a.startColumn-1;b=c.sliceAndInflate(0,d,0)}return this.indentationLineProcessor.getProcessedTokens(b)}_getProcessedTokensAfterRange(a){let b=a.isEmpty()?a.getStartPosition():a.getEndPosition();this.model.tokenization.forceTokenization(b.lineNumber);let c=this.model.tokenization.getLineTokens(b.lineNumber),d=(0,e.BQ)(c,b.column-1),f=b.column-1-d.firstCharOffset,g=d.firstCharOffset+f,h=d.firstCharOffset+d.getLineLength(),i=c.sliceAndInflate(g,h,0);return this.indentationLineProcessor.getProcessedTokens(i)}_getProcessedPreviousLineTokens(a){let b=a=>{this.model.tokenization.forceTokenization(a);let b=this.model.tokenization.getLineTokens(a),c=this.model.getLineMaxColumn(a)-1;return(0,e.BQ)(b,c)};this.model.tokenization.forceTokenization(a.startLineNumber);let c=this.model.tokenization.getLineTokens(a.startLineNumber),d=(0,e.BQ)(c,a.startColumn-1),g=f.f7.createEmpty("",d.languageIdCodec),h=a.startLineNumber-1;if(0===h||0!==d.firstCharOffset)return g;let i=b(h);if(d.languageId!==i.languageId)return g;let j=i.toIViewLineTokens();return this.indentationLineProcessor.getProcessedTokens(j)}}class i{constructor(a,b){this.model=a,this.languageConfigurationService=b}getProcessedLine(a,b){var c;let e;this.model.tokenization.forceTokenization?.(a);let f=this.model.tokenization.getLineTokens(a),g=this.getProcessedTokens(f).getLineContent();return void 0!==b&&(c=g,e=(0,d.UU)(c),g=b+c.substring(e.length)),g}getProcessedTokens(a){let b=a.getLanguageId(0),c=this.languageConfigurationService.getLanguageConfiguration(b).bracketsNew.getBracketRegExp({global:!0}),d=[];return a.forEach(b=>{let e=a.getStandardTokenType(b),f=a.getTokenText(b);(2===e||3===e||1===e)&&(f=f.replace(c,""));let g=a.getMetadata(b);d.push({text:f,metadata:g})}),f.f7.createFromTextAndMetadata(d,a.languageIdCodec)}}function j(a,b){a.tokenization.forceTokenization(b.lineNumber);let c=a.tokenization.getLineTokens(b.lineNumber),d=(0,e.BQ)(c,b.column-1),f=0===d.firstCharOffset,g=c.getLanguageId(0)===d.languageId;return!f&&!g}},72448:(a,b,c)=>{"use strict";c.d(b,{T:()=>h,v:()=>i});var d=c(75842),e=c(41577),f=c(48580),g=c(75444);class h{static indent(a,b,c){if(null===b||null===c)return[];let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static outdent(a,b,c){let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!0,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static paste(a,b,c,d,e,f){return g.Dr.getEdits(a,b,c,d,e,f)}static tab(a,b,c){return g.h0.getCommands(a,b,c)}static compositionType(a,b,c,d,e,f,h,i){return g.YA.getEdits(a,b,c,d,e,f,h,i)}static compositionEndWithInterceptors(a,b,c,d,h,i){if(!d)return null;let j=null;for(let a of d)if(null===j)j=a.insertedText;else if(j!==a.insertedText)return null;if(!j||1!==j.length)return g.Tl.getEdits(b,d);let k=j,l=!1;for(let a of d)if(0!==a.deletedText.length){l=!0;break}if(l){if(!(0,g.ey)(b,k)||!b.surroundingPairs.hasOwnProperty(k))return null;let a=(0,f.vG)(k);for(let b of d)if(0!==b.deletedSelectionStart||b.deletedSelectionEnd!==b.deletedText.length||/^[ \t]+$/.test(b.deletedText)||a&&(0,f.vG)(b.deletedText))return null;let c=[];for(let a of h){if(!a.isEmpty())return null;c.push(a.getPosition())}if(c.length!==d.length)return null;let i=[];for(let a=0,f=c.length;a<f;a++)i.push(new e.y(c[a],d[a].deletedText,b.surroundingPairs[k]));return new f.vY(4,i,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}let m=g.K4.getEdits(b,c,h,i,k);if(void 0!==m)return m;let n=g.oi.getEdits(b,c,h,k,!0,!1);return void 0!==n?n:g.Tl.getEdits(b,d)}static typeWithInterceptors(a,b,c,d,e,f,h){let i=g.AO.getEdits(c,d,e,h,a);if(void 0!==i)return i;let j=g.dU.getEdits(c,d,e,h,a);if(void 0!==j)return j;let k=g.sx.getEdits(b,c,d,e,f,h);if(void 0!==k)return k;let l=g.oi.getEdits(c,d,e,h,!1,a);if(void 0!==l)return l;let m=g.is.getEdits(c,d,e,h,a);if(void 0!==m)return m;let n=g.kr.getEdits(b,c,d,e,h,a);return void 0!==n?n:g.Ls.getEdits(c,b,e,h,a)}static typeWithoutInterceptors(a,b,c,d,e){return g.UN.getEdits(a,d,e)}}class i{constructor(a,b,c,d,e,f,g){this.deletedText=a,this.deletedSelectionStart=b,this.deletedSelectionEnd=c,this.insertedText=d,this.insertedSelectionStart=e,this.insertedSelectionEnd=f,this.insertedTextRange=g}}},72499:(a,b,c)=>{"use strict";c.d(b,{W:()=>g,c:()=>f});var d=c(61822),e=c(26346);class f{static fromModelContentChanges(a){return a.map(a=>{let b=d.Q.lift(a.range);return new f((0,e.VL)(b.getStartPosition()),(0,e.VL)(b.getEndPosition()),(0,e.rR)(a.text))}).reverse()}constructor(a,b,c){this.startOffset=a,this.endOffset=b,this.newLength=c}toString(){return`[${(0,e.l4)(this.startOffset)}...${(0,e.l4)(this.endOffset)}) -> ${(0,e.l4)(this.newLength)}`}}class g{constructor(a){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=a.map(a=>h.from(a))}getOffsetBeforeChange(a){return this.adjustNextEdit(a),this.translateCurToOld(a)}getDistanceToNextChange(a){this.adjustNextEdit(a);let b=this.edits[this.nextEditIdx],c=b?this.translateOldToCur(b.offsetObj):null;return null===c?null:(0,e.MS)(a,c)}translateOldToCur(a){return a.lineCount===this.deltaLineIdxInOld?(0,e.qe)(a.lineCount+this.deltaOldToNewLineCount,a.columnCount+this.deltaOldToNewColumnCount):(0,e.qe)(a.lineCount+this.deltaOldToNewLineCount,a.columnCount)}translateCurToOld(a){let b=(0,e.l4)(a);return b.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?(0,e.qe)(b.lineCount-this.deltaOldToNewLineCount,b.columnCount-this.deltaOldToNewColumnCount):(0,e.qe)(b.lineCount-this.deltaOldToNewLineCount,b.columnCount)}adjustNextEdit(a){for(;this.nextEditIdx<this.edits.length;){let b=this.edits[this.nextEditIdx],c=this.translateOldToCur(b.endOffsetAfterObj);if((0,e.vr)(c,a)){this.nextEditIdx++;let a=(0,e.l4)(c),d=(0,e.l4)(this.translateOldToCur(b.endOffsetBeforeObj)),f=a.lineCount-d.lineCount;this.deltaOldToNewLineCount+=f;let g=this.deltaLineIdxInOld===b.endOffsetBeforeObj.lineCount?this.deltaOldToNewColumnCount:0,h=a.columnCount-d.columnCount;this.deltaOldToNewColumnCount=g+h,this.deltaLineIdxInOld=b.endOffsetBeforeObj.lineCount}else break}}}class h{static from(a){return new h(a.startOffset,a.endOffset,a.newLength)}constructor(a,b,c){this.endOffsetBeforeObj=(0,e.l4)(b),this.endOffsetAfterObj=(0,e.l4)((0,e.QB)(a,c)),this.offsetObj=(0,e.l4)(a)}}},72520:()=>{},72542:(a,b,c)=>{"use strict";c.d(b,{MU:()=>B,QC:()=>x,Se:()=>z,oO:()=>A});var d=c(47322),e=c(75082),f=c(61556),g=c(46857),h=c(97085),i=c(8933),j=c(70687),k=c(63060);class l extends i.x{constructor(a){super(),this._onActivate=a.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=a.bgWidth+"px",this.bgDomNode.style.height=a.bgHeight+"px",void 0!==a.top&&(this.bgDomNode.style.top="0px"),void 0!==a.left&&(this.bgDomNode.style.left="0px"),void 0!==a.bottom&&(this.bgDomNode.style.bottom="0px"),void 0!==a.right&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=a.className,this.domNode.classList.add(...k.L.asClassNameArray(a.icon)),this.domNode.style.position="absolute",this.domNode.style.width="11px",this.domNode.style.height="11px",void 0!==a.top&&(this.domNode.style.top=a.top+"px"),void 0!==a.left&&(this.domNode.style.left=a.left+"px"),void 0!==a.bottom&&(this.domNode.style.bottom=a.bottom+"px"),void 0!==a.right&&(this.domNode.style.right=a.right+"px"),this._pointerMoveMonitor=this._register(new h._),this._register((0,e.un)(this.bgDomNode,e.Bx.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._register((0,e.un)(this.domNode,e.Bx.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._pointerdownRepeatTimer=this._register(new e.Be),this._pointerdownScheduleRepeatTimer=this._register(new j.pc)}_arrowPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,(0,e.zk)(a))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(b,200),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),a.preventDefault()}}var m=c(76631);class n extends m.jG{constructor(a,b,c){super(),this._visibility=a,this._visibleClassName=b,this._invisibleClassName=c,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new j.pc)}setVisibility(a){this._visibility!==a&&(this._visibility=a,this._updateShouldBeVisible())}setShouldBeVisible(a){this._rawShouldBeVisible=a,this._updateShouldBeVisible()}_applyVisibilitySetting(){return 2!==this._visibility&&(3===this._visibility||this._rawShouldBeVisible)}_updateShouldBeVisible(){let a=this._applyVisibilitySetting();this._shouldBeVisible!==a&&(this._shouldBeVisible=a,this.ensureVisibility())}setIsNeeded(a){this._isNeeded!==a&&(this._isNeeded=a,this.ensureVisibility())}setDomNode(a){this._domNode=a,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){this._isNeeded?this._shouldBeVisible?this._reveal():this._hide(!0):this._hide(!1)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(a){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(a?" fade":"")))}}var o=c(18216);class p extends i.x{constructor(a){super(),this._lazyRender=a.lazyRender,this._host=a.host,this._scrollable=a.scrollable,this._scrollByPage=a.scrollByPage,this._scrollbarState=a.scrollbarState,this._visibilityController=this._register(new n(a.visibility,"visible scrollbar "+a.extraScrollbarClassName,"invisible scrollbar "+a.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new h._),this._shouldRender=!0,this.domNode=(0,f.Z)(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register((0,e.ko)(this.domNode.domNode,e.Bx.POINTER_DOWN,a=>this._domNodePointerDown(a)))}_createArrow(a){let b=this._register(new l(a));this.domNode.domNode.appendChild(b.bgDomNode),this.domNode.domNode.appendChild(b.domNode)}_createSlider(a,b,c,d){this.slider=(0,f.Z)(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(a),this.slider.setLeft(b),"number"==typeof c&&this.slider.setWidth(c),"number"==typeof d&&this.slider.setHeight(d),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register((0,e.ko)(this.slider.domNode,e.Bx.POINTER_DOWN,a=>{0===a.button&&(a.preventDefault(),this._sliderPointerDown(a))})),this.onclick(this.slider.domNode,a=>{a.leftButton&&a.stopPropagation()})}_onElementSize(a){return this._scrollbarState.setVisibleSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(a){return this._scrollbarState.setScrollSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(a){return this._scrollbarState.setScrollPosition(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(a){a.target===this.domNode.domNode&&this._onPointerDown(a)}delegatePointerDown(a){let b=this.domNode.domNode.getClientRects()[0].top,c=b+this._scrollbarState.getSliderPosition(),d=b+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),e=this._sliderPointerPosition(a);c<=e&&e<=d?0===a.button&&(a.preventDefault(),this._sliderPointerDown(a)):this._onPointerDown(a)}_onPointerDown(a){let b,c;if(a.target===this.domNode.domNode&&"number"==typeof a.offsetX&&"number"==typeof a.offsetY)b=a.offsetX,c=a.offsetY;else{let d=(0,e.BK)(this.domNode.domNode);b=a.pageX-d.left,c=a.pageY-d.top}let d="mouse"===a.pointerType,f=0===a.button;if(f||!d){let a=this._pointerDownRelativePosition(b,c);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(a):this._scrollbarState.getDesiredScrollPositionFromOffset(a))}f&&(a.preventDefault(),this._sliderPointerDown(a))}_sliderPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=this._sliderPointerPosition(a),c=this._sliderOrthogonalPointerPosition(a),d=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{let e=Math.abs(this._sliderOrthogonalPointerPosition(a)-c);if(o.uF&&e>140)return void this._setDesiredScrollPositionNow(d.getScrollPosition());let f=this._sliderPointerPosition(a);this._setDesiredScrollPositionNow(d.getDesiredScrollPositionFromDelta(f-b))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(a){let b={};this.writeScrollPosition(b,a),this._scrollable.setScrollPositionNow(b)}updateScrollbarSize(a){this._updateScrollbarSize(a),this._scrollbarState.setScrollbarSize(a),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}var q=c(28925),r=c(33040);class s extends p{constructor(a,b,c){const d=a.getScrollDimensions(),e=a.getCurrentScrollPosition();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new q.m(b.horizontalHasArrows?b.arrowSize:0,2===b.horizontal?0:b.horizontalScrollbarSize,2===b.vertical?0:b.verticalScrollbarSize,d.width,d.scrollWidth,e.scrollLeft),visibility:b.horizontal,extraScrollbarClassName:"horizontal",scrollable:a,scrollByPage:b.scrollByPage}),b.horizontalHasArrows){const a=(b.arrowSize-11)/2,c=(b.horizontalScrollbarSize-11)/2;this._createArrow({className:"scra",icon:r.W.scrollbarButtonLeft,top:c,left:a,bottom:void 0,right:void 0,bgWidth:b.arrowSize,bgHeight:b.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,1,0))}),this._createArrow({className:"scra",icon:r.W.scrollbarButtonRight,top:c,left:void 0,bottom:void 0,right:a,bgWidth:b.arrowSize,bgHeight:b.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,-1,0))})}this._createSlider(Math.floor((b.horizontalScrollbarSize-b.horizontalSliderSize)/2),0,void 0,b.horizontalSliderSize)}_updateSlider(a,b){this.slider.setWidth(a),this.slider.setLeft(b)}_renderDomNode(a,b){this.domNode.setWidth(a),this.domNode.setHeight(b),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(a.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return a}_sliderPointerPosition(a){return a.pageX}_sliderOrthogonalPointerPosition(a){return a.pageY}_updateScrollbarSize(a){this.slider.setHeight(a)}writeScrollPosition(a,b){a.scrollLeft=b}updateOptions(a){this.updateScrollbarSize(2===a.horizontal?0:a.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._visibilityController.setVisibility(a.horizontal),this._scrollByPage=a.scrollByPage}}class t extends p{constructor(a,b,c){const d=a.getScrollDimensions(),e=a.getCurrentScrollPosition();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new q.m(b.verticalHasArrows?b.arrowSize:0,2===b.vertical?0:b.verticalScrollbarSize,0,d.height,d.scrollHeight,e.scrollTop),visibility:b.vertical,extraScrollbarClassName:"vertical",scrollable:a,scrollByPage:b.scrollByPage}),b.verticalHasArrows){const a=(b.arrowSize-11)/2,c=(b.verticalScrollbarSize-11)/2;this._createArrow({className:"scra",icon:r.W.scrollbarButtonUp,top:a,left:c,bottom:void 0,right:void 0,bgWidth:b.verticalScrollbarSize,bgHeight:b.arrowSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,0,1))}),this._createArrow({className:"scra",icon:r.W.scrollbarButtonDown,top:void 0,left:c,bottom:a,right:void 0,bgWidth:b.verticalScrollbarSize,bgHeight:b.arrowSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,0,-1))})}this._createSlider(0,Math.floor((b.verticalScrollbarSize-b.verticalSliderSize)/2),b.verticalSliderSize,void 0)}_updateSlider(a,b){this.slider.setHeight(a),this.slider.setTop(b)}_renderDomNode(a,b){this.domNode.setWidth(b),this.domNode.setHeight(a),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(a.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return b}_sliderPointerPosition(a){return a.pageY}_sliderOrthogonalPointerPosition(a){return a.pageX}_updateScrollbarSize(a){this.slider.setWidth(a)}writeScrollPosition(a,b){a.scrollTop=b}updateOptions(a){this.updateScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(a.vertical),this._scrollByPage=a.scrollByPage}}var u=c(95091),v=c(38750);c(64129);class w{constructor(a,b,c){this.timestamp=a,this.deltaX=b,this.deltaY=c,this.score=0}}class x{static{this.INSTANCE=new x}constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(-1===this._front&&-1===this._rear)return!1;let a=1,b=0,c=1,d=this._rear;for(;;){let e=d===this._front?a:Math.pow(2,-c);if(a-=e,b+=this._memory[d].score*e,d===this._front)break;d=(this._capacity+d-1)%this._capacity,c++}return b<=.5}acceptStandardWheelEvent(a){if(d.H8){let b=(0,e.zk)(a.browserEvent),c=(0,d.pR)(b);this.accept(Date.now(),a.deltaX*c,a.deltaY*c)}else this.accept(Date.now(),a.deltaX,a.deltaY)}accept(a,b,c){let d=null,e=new w(a,b,c);-1===this._front&&-1===this._rear?(this._memory[0]=e,this._front=0,this._rear=0):(d=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=e),e.score=this._computeScore(e,d)}_computeScore(a,b){if(Math.abs(a.deltaX)>0&&Math.abs(a.deltaY)>0)return 1;let c=.5;if(this._isAlmostInt(a.deltaX)&&this._isAlmostInt(a.deltaY)||(c+=.25),b){let d=Math.abs(a.deltaX),e=Math.abs(a.deltaY),f=Math.abs(b.deltaX),g=Math.abs(b.deltaY),h=Math.max(Math.min(d,f),1),i=Math.max(Math.min(e,g),1),j=Math.max(e,g);Math.max(d,f)%h==0&&j%i==0&&(c-=.5)}return Math.min(Math.max(c,0),1)}_isAlmostInt(a){return Math.abs(Math.round(a)-a)<.01+100*Number.EPSILON}}class y extends i.x{get onScroll(){return this._onScroll.event}get options(){return this._options}constructor(a,b,c){super(),this._inertialTimeout=null,this._inertialSpeed={X:0,Y:0},this._onScroll=this._register(new u.vl),this._onWillScroll=this._register(new u.vl),a.style.overflow="hidden",this._options=function(a){let b={lazyRender:void 0!==a.lazyRender&&a.lazyRender,className:void 0!==a.className?a.className:"",useShadows:void 0===a.useShadows||a.useShadows,handleMouseWheel:void 0===a.handleMouseWheel||a.handleMouseWheel,flipAxes:void 0!==a.flipAxes&&a.flipAxes,consumeMouseWheelIfScrollbarIsNeeded:void 0!==a.consumeMouseWheelIfScrollbarIsNeeded&&a.consumeMouseWheelIfScrollbarIsNeeded,alwaysConsumeMouseWheel:void 0!==a.alwaysConsumeMouseWheel&&a.alwaysConsumeMouseWheel,scrollYToX:void 0!==a.scrollYToX&&a.scrollYToX,mouseWheelScrollSensitivity:void 0!==a.mouseWheelScrollSensitivity?a.mouseWheelScrollSensitivity:1,fastScrollSensitivity:void 0!==a.fastScrollSensitivity?a.fastScrollSensitivity:5,scrollPredominantAxis:void 0===a.scrollPredominantAxis||a.scrollPredominantAxis,mouseWheelSmoothScroll:void 0===a.mouseWheelSmoothScroll||a.mouseWheelSmoothScroll,inertialScroll:void 0!==a.inertialScroll&&a.inertialScroll,arrowSize:void 0!==a.arrowSize?a.arrowSize:11,listenOnDomNode:void 0!==a.listenOnDomNode?a.listenOnDomNode:null,horizontal:void 0!==a.horizontal?a.horizontal:1,horizontalScrollbarSize:void 0!==a.horizontalScrollbarSize?a.horizontalScrollbarSize:10,horizontalSliderSize:void 0!==a.horizontalSliderSize?a.horizontalSliderSize:0,horizontalHasArrows:void 0!==a.horizontalHasArrows&&a.horizontalHasArrows,vertical:void 0!==a.vertical?a.vertical:1,verticalScrollbarSize:void 0!==a.verticalScrollbarSize?a.verticalScrollbarSize:10,verticalHasArrows:void 0!==a.verticalHasArrows&&a.verticalHasArrows,verticalSliderSize:void 0!==a.verticalSliderSize?a.verticalSliderSize:0,scrollByPage:void 0!==a.scrollByPage&&a.scrollByPage};return b.horizontalSliderSize=void 0!==a.horizontalSliderSize?a.horizontalSliderSize:b.horizontalScrollbarSize,b.verticalSliderSize=void 0!==a.verticalSliderSize?a.verticalSliderSize:b.verticalScrollbarSize,o.zx&&(b.className+=" mac"),b}(b),this._scrollable=c,this._register(this._scrollable.onScroll(a=>{this._onWillScroll.fire(a),this._onDidScroll(a),this._onScroll.fire(a)}));const d={onMouseWheel:a=>this._onMouseWheel(a),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new t(this._scrollable,this._options,d)),this._horizontalScrollbar=this._register(new s(this._scrollable,this._options,d)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(a),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=(0,f.Z)(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=(0,f.Z)(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=(0,f.Z)(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,a=>this._onMouseOver(a)),this.onmouseleave(this._listenOnDomNode,a=>this._onMouseLeave(a)),this._hideTimeout=this._register(new j.pc),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=(0,m.AS)(this._mouseWheelToDispose),this._inertialTimeout&&(this._inertialTimeout.dispose(),this._inertialTimeout=null),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(a){this._verticalScrollbar.delegatePointerDown(a)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(a){this._scrollable.setScrollDimensions(a,!1)}updateClassName(a){this._options.className=a,o.zx&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(a){void 0!==a.handleMouseWheel&&(this._options.handleMouseWheel=a.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),void 0!==a.mouseWheelScrollSensitivity&&(this._options.mouseWheelScrollSensitivity=a.mouseWheelScrollSensitivity),void 0!==a.fastScrollSensitivity&&(this._options.fastScrollSensitivity=a.fastScrollSensitivity),void 0!==a.scrollPredominantAxis&&(this._options.scrollPredominantAxis=a.scrollPredominantAxis),void 0!==a.horizontal&&(this._options.horizontal=a.horizontal),void 0!==a.vertical&&(this._options.vertical=a.vertical),void 0!==a.horizontalScrollbarSize&&(this._options.horizontalScrollbarSize=a.horizontalScrollbarSize),void 0!==a.verticalScrollbarSize&&(this._options.verticalScrollbarSize=a.verticalScrollbarSize),void 0!==a.scrollByPage&&(this._options.scrollByPage=a.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}delegateScrollFromMouseWheelEvent(a){this._onMouseWheel(new g.$(a))}async _periodicSync(){let a=!1;(0!==this._inertialSpeed.X||0!==this._inertialSpeed.Y)&&(this._scrollable.setScrollPositionNow({scrollTop:this._scrollable.getCurrentScrollPosition().scrollTop-100*this._inertialSpeed.Y,scrollLeft:this._scrollable.getCurrentScrollPosition().scrollLeft-100*this._inertialSpeed.X}),this._inertialSpeed.X*=.9,this._inertialSpeed.Y*=.9,.01>Math.abs(this._inertialSpeed.X)&&(this._inertialSpeed.X=0),.01>Math.abs(this._inertialSpeed.Y)&&(this._inertialSpeed.Y=0),a=0!==this._inertialSpeed.X||0!==this._inertialSpeed.Y),a?(this._inertialTimeout||(this._inertialTimeout=new j.pc),this._inertialTimeout.cancelAndSet(()=>this._periodicSync(),1e3/60)):(this._inertialTimeout?.dispose(),this._inertialTimeout=null)}_setListeningToMouseWheel(a){if(this._mouseWheelToDispose.length>0!==a&&(this._mouseWheelToDispose=(0,m.AS)(this._mouseWheelToDispose),a)){let a=a=>{this._onMouseWheel(new g.$(a))};this._mouseWheelToDispose.push((0,e.ko)(this._listenOnDomNode,e.Bx.MOUSE_WHEEL,a,{passive:!1}))}}_onMouseWheel(a){if(a.browserEvent?.defaultPrevented)return;let b=x.INSTANCE;b.acceptStandardWheelEvent(a);let c=!1;if(a.deltaY||a.deltaX){let d=a.deltaY*this._options.mouseWheelScrollSensitivity,e=a.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&e+d===0?e=d=0:Math.abs(d)>=Math.abs(e)?e=0:d=0),this._options.flipAxes&&([d,e]=[e,d]);let f=!o.zx&&a.browserEvent&&a.browserEvent.shiftKey;(this._options.scrollYToX||f)&&!e&&(e=d,d=0),a.browserEvent&&a.browserEvent.altKey&&(e*=this._options.fastScrollSensitivity,d*=this._options.fastScrollSensitivity);let g=this._scrollable.getFutureScrollPosition(),h={};if(d){let a=50*d,b=g.scrollTop-(a<0?Math.floor(a):Math.ceil(a));this._verticalScrollbar.writeScrollPosition(h,b)}if(e){let a=50*e,b=g.scrollLeft-(a<0?Math.floor(a):Math.ceil(a));this._horizontalScrollbar.writeScrollPosition(h,b)}if(h=this._scrollable.validateScrollPosition(h),this._options.inertialScroll&&(e||d)&&!b.isPhysicalMouseWheel()){let a=!1;0===this._inertialSpeed.X&&0===this._inertialSpeed.Y&&(a=!0),this._inertialSpeed.Y=(d<0?-1:1)*Math.abs(d)**1.02,this._inertialSpeed.X=(e<0?-1:1)*Math.abs(e)**1.02,a&&this._periodicSync()}(g.scrollLeft!==h.scrollLeft||g.scrollTop!==h.scrollTop)&&(this._options.mouseWheelSmoothScroll&&b.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(h):this._scrollable.setScrollPositionNow(h),c=!0)}let d=c;!d&&this._options.alwaysConsumeMouseWheel&&(d=!0),!d&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(d=!0),d&&(a.preventDefault(),a.stopPropagation())}_onDidScroll(a){this._shouldRender=this._horizontalScrollbar.onDidScroll(a)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(a)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let a=this._scrollable.getCurrentScrollPosition(),b=a.scrollTop>0,c=a.scrollLeft>0,d=c?" left":"",e=b?" top":"";this._leftShadowDomNode.setClassName(`shadow${d}`),this._topShadowDomNode.setClassName(`shadow${e}`),this._topLeftShadowDomNode.setClassName(`shadow${c||b?" top-left-corner":""}${e}${d}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(a){this._mouseIsOver=!1,this._hide()}_onMouseOver(a){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){this._mouseIsOver||this._isDragging||(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){this._mouseIsOver||this._isDragging||this._hideTimeout.cancelAndSet(()=>this._hide(),500)}}class z extends y{constructor(a,b){(b=b||{}).mouseWheelSmoothScroll=!1;const c=new v.yE({forceIntegerValues:!0,smoothScrollDuration:0,scheduleAtNextAnimationFrame:b=>(0,e.PG)((0,e.zk)(a),b)});super(a,b,c),this._register(c)}setScrollPosition(a){this._scrollable.setScrollPositionNow(a)}}class A extends y{constructor(a,b,c){super(a,b,c)}setScrollPosition(a){a.reuseAnimation?this._scrollable.setScrollPositionSmooth(a,a.reuseAnimation):this._scrollable.setScrollPositionNow(a)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class B extends y{constructor(a,b){(b=b||{}).mouseWheelSmoothScroll=!1;const c=new v.yE({forceIntegerValues:!1,smoothScrollDuration:0,scheduleAtNextAnimationFrame:b=>(0,e.PG)((0,e.zk)(a),b)});super(a,b,c),this._register(c),this._element=a,this._register(this.onScroll(a=>{a.scrollTopChanged&&(this._element.scrollTop=a.scrollTop),a.scrollLeftChanged&&(this._element.scrollLeft=a.scrollLeft)})),this.scanDomNode()}setScrollPosition(a){this._scrollable.setScrollPositionNow(a)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}},72663:(a,b,c)=>{"use strict";c.d(b,{Z:()=>f,l:()=>e});var d=c(58254);let e=(0,d.u1)("contextViewService"),f=(0,d.u1)("contextMenuService")},72816:(a,b,c)=>{"use strict";function d(){return globalThis._VSCODE_NLS_MESSAGES}function e(){return globalThis._VSCODE_NLS_LANGUAGE}c.d(b,{Ec:()=>d,aS:()=>j,i8:()=>e,kg:()=>h});let f="pseudo"===e()||"u">typeof document&&document.location&&"string"==typeof document.location.hash&&document.location.hash.indexOf("pseudo=true")>=0;function g(a,b){let c;return c=0===b.length?a:a.replace(/\{(\d+)\}/g,(a,c)=>{let d=b[c[0]],e=a;return"string"==typeof d?e=d:("number"==typeof d||"boolean"==typeof d||null==d)&&(e=String(d)),e}),f&&(c="["+c.replace(/[aouei]/g,"$&$&")+"]"),c}function h(a,b,...c){return"number"==typeof a?g(i(a,b),c):g(b,c)}function i(a,b){let c=d()?.[a];if("string"!=typeof c){if("string"==typeof b)return b;throw Error(`!!! NLS MISSING: ${a} !!!`)}return c}function j(a,b,...c){let d,e=g(d="number"==typeof a?i(a,b):b,c);return{value:e,original:b===d?e:g(b,c)}}},73298:(a,b,c)=>{"use strict";c.d(b,{f:()=>e});var d=c(95091);class e{get event(){return this.emitter.event}constructor(a,b,c){const e=a=>this.emitter.fire(a);this.emitter=new d.vl({onWillAddFirstListener:()=>a.addEventListener(b,e,c),onDidRemoveLastListener:()=>a.removeEventListener(b,e,c)})}dispose(){this.emitter.dispose()}}},73515:()=>{},74864:(a,b,c)=>{"use strict";var d,e;let f;c.d(b,{j:()=>d}),e=d||(d={}),f=!1,e.enable=function(){f=!0},e.ofCaller=function(){if(!f)return;let a=Error,b=a.stackTraceLimit;a.stackTraceLimit=3;let c=Error().stack;return a.stackTraceLimit=b,g.fromStack(c,2)};class g{static fromStack(a,b){let c=function(a){let b=a.match(/\((.*):(\d+):(\d+)\)/);if(b)return{fileName:b[1],line:parseInt(b[2]),column:parseInt(b[3]),id:a};let c=a.match(/at ([^\(\)]*):(\d+):(\d+)/);if(c)return{fileName:c[1],line:parseInt(c[2]),column:parseInt(c[3]),id:a}}(a.split("\n")[b+1]);return c?new g(c.fileName,c.line,c.column,c.id):void 0}constructor(a,b,c,d){this.fileName=a,this.line=b,this.column=c,this.id=d}}},74893:(a,b,c)=>{"use strict";c.d(b,{Z:()=>K,B:()=>G});var d,e=c(70687),f=c(76631),g=c(37758);class h{constructor(a){this.esmModuleLocation=a.esmModuleLocation,this.esmModuleLocationBundler=a.esmModuleLocationBundler,this.label=a.label}}var i=c(96820),j=c(61822),k=c(16202),l=c(40275),m=c(99817),n=c(50179),o=c(81309),p=c(37788),q=c(28672),r=c(66036),s=c(99851),t=c(27962),u=c(31526),v=c(1401),w=c(27612),x=c(75082),y=c(52559),z=c(14903),A=c(77497),B=c(30890),C=c(85214),D=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},E=function(a,b){return function(c,d){b(c,d,a)}};function F(a,b){let c=a.getModel(b);return!(!c||c.isTooLargeForSyncing())}let G=class extends f.jG{static{d=this}static{this.workerDescriptor=new h({esmModuleLocation:()=>A.zl.asBrowserUri("vs/editor/common/services/editorWebWorkerMain.js"),esmModuleLocationBundler:()=>new c.U(c(63914)),label:"editorWorkerService"})}constructor(a,b,c,e,f,g){super(),this._languageConfigurationService=e,this._webWorkerService=g,this._modelService=a,this._workerManager=this._register(new I(d.workerDescriptor,this._modelService,this._webWorkerService)),this._logService=c,this._register(f.linkProvider.register({language:"*",hasAccessToAllModels:!0},{provideLinks:async(a,b)=>{if(!F(this._modelService,a.uri))return Promise.resolve({links:[]});let c=await this._workerWithResources([a.uri]),d=await c.$computeLinks(a.uri.toString());return d&&{links:d}}})),this._register(f.completionProvider.register("*",new H(this._workerManager,b,this._modelService,this._languageConfigurationService,this._logService,f)))}canComputeUnicodeHighlights(a){return F(this._modelService,a)}async computedUnicodeHighlights(a,b,c){return(await this._workerWithResources([a])).$computeUnicodeHighlights(a.toString(),b,c)}async computeDiff(a,b,c,d){let e=await this._workerWithResources([a,b],!0),f=await e.$computeDiff(a.toString(),b.toString(),c,d);if(!f)return null;return{identical:f.identical,quitEarly:f.quitEarly,changes:g(f.changes),moves:f.moves.map(a=>new t.t(new u.WL(new v.M(a[0],a[1]),new v.M(a[2],a[3])),g(a[4])))};function g(a){return a.map(a=>new u.wm(new v.M(a[0],a[1]),new v.M(a[2],a[3]),a[4]?.map(a=>new u.q6(new j.Q(a[0],a[1],a[2],a[3]),new j.Q(a[4],a[5],a[6],a[7])))))}}async computeMoreMinimalEdits(a,b,c=!1){if(!(0,o.EI)(b))return Promise.resolve(void 0);{if(!F(this._modelService,a))return Promise.resolve(b);let d=q.W.create(),f=this._workerWithResources([a]).then(d=>d.$computeMoreMinimalEdits(a.toString(),b,c));return f.finally(()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",a.toString(!0),d.elapsed())),Promise.race([f,(0,e.wR)(1e3).then(()=>b)])}}canNavigateValueSet(a){return F(this._modelService,a)}async navigateValueSet(a,b,c){let d=this._modelService.getModel(a);if(!d)return null;let e=this._languageConfigurationService.getLanguageConfiguration(d.getLanguageId()).getWordDefinition(),f=e.source,g=e.flags;return(await this._workerWithResources([a])).$navigateValueSet(a.toString(),b,c,f,g)}canComputeWordRanges(a){return F(this._modelService,a)}async computeWordRanges(a,b){let c=this._modelService.getModel(a);if(!c)return Promise.resolve(null);let d=this._languageConfigurationService.getLanguageConfiguration(c.getLanguageId()).getWordDefinition(),e=d.source,f=d.flags;return(await this._workerWithResources([a])).$computeWordRanges(a.toString(),b,e,f)}async findSectionHeaders(a,b){return(await this._workerWithResources([a])).$findSectionHeaders(a.toString(),b)}async computeDefaultDocumentColors(a){return(await this._workerWithResources([a])).$computeDefaultDocumentColors(a.toString())}async _workerWithResources(a,b=!1){let c=await this._workerManager.withWorker();return await c.workerWithSyncedResources(a,b)}};G=d=D([E(0,m.S),E(1,n.U),E(2,p.rr),E(3,k.JZ),E(4,s.u),E(5,i.d)],G);class H{constructor(a,b,c,d,e,f){this.languageConfigurationService=d,this.logService=e,this.languageFeaturesService=f,this._debugDisplayName="wordbasedCompletions",this._workerManager=a,this._configurationService=b,this._modelService=c}async provideCompletionItems(a,b){let c=this._configurationService.getValue(a.uri,b,"editor");if("off"===c.wordBasedSuggestions||"offWithInlineSuggestions"===c.wordBasedSuggestions&&this.languageFeaturesService.inlineCompletionsProvider.has(a)&&function(a,b,c="*"){let d=B.A.defaultChatAgent?.completionsEnablementSetting;return!!d&&function(a,b="*"){return!!(0,C.Gv)(a)&&(void 0!==a[b]?!!a[b]:!!a["*"])}(a.getValue(b,d),c)}(this._configurationService,a.uri,a.getLanguageId()))return;let d=[];if("currentDocument"===c.wordBasedSuggestions)F(this._modelService,a.uri)&&d.push(a.uri);else for(let b of this._modelService.getModels())F(this._modelService,b.uri)&&(b===a?d.unshift(b.uri):("allDocuments"===c.wordBasedSuggestions||b.getLanguageId()===a.getLanguageId())&&d.push(b.uri));if(0===d.length)return;let e=this.languageConfigurationService.getLanguageConfiguration(a.getLanguageId()).getWordDefinition(),f=a.getWordAtPosition(b),g=f?new j.Q(b.lineNumber,f.startColumn,b.lineNumber,f.endColumn):j.Q.fromPositions(b),h=g.setEndPosition(b.lineNumber,b.column);this.logService.trace("[WordBasedCompletionItemProvider]",`word: "${f?.word||""}", wordDef: "${e}", replace: [${g.toString()}], insert: [${h.toString()}]`);let i=await this._workerManager.withWorker(),k=await i.textualSuggest(d,f?.word,e);if(k)return{duration:k.duration,suggestions:k.words.map(a=>({kind:18,label:a,insertText:a,range:{insert:h,replace:g}}))}}}let I=class extends f.jG{constructor(a,b,c){super(),this._workerDescriptor=a,this._modelService=b,this._webWorkerService=c,this._editorWorkerClient=null,this._lastWorkerUsedTime=new Date().getTime(),this._register(new x.Be).cancelAndSet(()=>this._checkStopIdleWorker(),Math.round(15e4),w.G),this._register(this._modelService.onModelRemoved(a=>this._checkStopEmptyWorker()))}dispose(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),super.dispose()}_checkStopEmptyWorker(){this._editorWorkerClient&&0===this._modelService.getModels().length&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}_checkStopIdleWorker(){!this._editorWorkerClient||new Date().getTime()-this._lastWorkerUsedTime>3e5&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}withWorker(){return this._lastWorkerUsedTime=new Date().getTime(),this._editorWorkerClient||(this._editorWorkerClient=new K(this._workerDescriptor,!1,this._modelService,this._webWorkerService)),Promise.resolve(this._editorWorkerClient)}};I=D([E(1,m.S),E(2,i.d)],I);class J{constructor(a){this._instance=a,this.proxy=this._instance}dispose(){this._instance.dispose()}setChannel(a,b){throw Error("Not supported")}}let K=class extends f.jG{constructor(a,b,c,d){super(),this._workerDescriptorOrWorker=a,this._disposed=!1,this._modelService=c,this._webWorkerService=d,this._keepIdleModels=b,this._worker=null,this._modelManager=null}fhr(a,b){throw Error("Not implemented!")}_getOrCreateWorker(){if(!this._worker)try{this._worker=this._register(this._webWorkerService.createWorkerClient(this._workerDescriptorOrWorker)),z.M.setChannel(this._worker,this._createEditorWorkerHost())}catch(a){(0,g.IR)(a),this._worker=this._createFallbackLocalWorker()}return this._worker}async _getProxy(){try{let a=this._getOrCreateWorker().proxy;return await a.$ping(),a}catch(a){return(0,g.IR)(a),this._worker=this._createFallbackLocalWorker(),this._worker.proxy}}_createFallbackLocalWorker(){return new J(new l.Q(null))}_createEditorWorkerHost(){return{$fhr:(a,b)=>this.fhr(a,b)}}_getOrCreateModelManager(a){return this._modelManager||(this._modelManager=this._register(new y.RK(a,this._modelService,this._keepIdleModels))),this._modelManager}async workerWithSyncedResources(a,b=!1){if(this._disposed)return Promise.reject((0,r.aD)());let c=await this._getProxy();return this._getOrCreateModelManager(c).ensureSyncedResources(a,b),c}async textualSuggest(a,b,c){let d=await this.workerWithSyncedResources(a),e=c.source,f=c.flags;return d.$textualSuggest(a.map(a=>a.toString()),b,e,f)}dispose(){super.dispose(),this._disposed=!0}};K=D([E(2,m.S),E(3,i.d)],K)},75082:(a,b,c)=>{"use strict";let d,e,f,g,h,i,j,k,l,m,n;c.d(b,{$:()=>aL,BC:()=>aG,BK:()=>ac,Be:()=>X,Bx:()=>ay,Cl:()=>al,Di:()=>aS,Er:()=>aw,FK:()=>as,Fv:()=>N,H4:()=>ag,Hs:()=>aH,Iv:()=>L,J$:()=>U,L9:()=>Z,Ln:()=>aI,OK:()=>ah,Oq:()=>d,PG:()=>e,Pl:()=>aF,Q2:()=>J,QX:()=>ai,Tr:()=>ae,U3:()=>W,WU:()=>aN,X7:()=>ao,XD:()=>aj,YE:()=>G,ZF:()=>K,_9:()=>T,a:()=>aq,bo:()=>aM,bq:()=>an,cL:()=>ab,fg:()=>aa,fs:()=>aA,fz:()=>ar,h:()=>aV,i0:()=>aR,jD:()=>aO,jG:()=>am,jh:()=>aQ,ko:()=>R,kx:()=>ax,mU:()=>ad,nR:()=>ap,nY:()=>au,pN:()=>aT,q3:()=>M,sb:()=>at,sd:()=>az,sl:()=>H,tG:()=>$,un:()=>S,vT:()=>aP,w5:()=>aE,w_:()=>P,wk:()=>aC,xZ:()=>av,xb:()=>V,y6:()=>af,yD:()=>aX,zK:()=>aB,zk:()=>F}),c(47322);var o,p,q,r=c(39870),s=c(62677),t=c(46857),u=c(70687),v=c(66036),w=c(95091),x=c(76631),y=c(77497),z=c(18216),A=c(40427),B=c(27612);c(94484);var C=c(14960),D=c(34547),E=c(87175);let{getWindow:F,getDocument:G,getWindows:H,getWindowsCount:I,getWindowId:J,getWindowById:K,onDidRegisterWindow:L,onWillUnregisterWindow:M,onDidUnregisterWindow:N}=(f=new Map,(0,B.y)(B.G,1),g={window:B.G,disposables:new x.Cm},f.set(B.G.vscodeWindowId,g),h=new w.vl,i=new w.vl,j=new w.vl,{onDidRegisterWindow:h.event,onWillUnregisterWindow:j.event,onDidUnregisterWindow:i.event,registerWindow(a){if(f.has(a.vscodeWindowId))return x.jG.None;let b=new x.Cm,c={window:a,disposables:b.add(new x.Cm)};return f.set(a.vscodeWindowId,c),b.add((0,x.s)(()=>{f.delete(a.vscodeWindowId),i.fire(a)})),b.add(R(a,ay.BEFORE_UNLOAD,()=>{j.fire(a)})),h.fire(c),b},getWindows:()=>f.values(),getWindowsCount:()=>f.size,getWindowId:a=>a.vscodeWindowId,hasWindow:a=>f.has(a),getWindowById:function(a,b){return("number"==typeof a?f.get(a):void 0)??(b?g:void 0)},getWindow:a=>a?.ownerDocument?.defaultView?a.ownerDocument.defaultView.window:a?.view?a.view.window:B.G,getDocument:a=>F(a).document}),O=new Set;function P(a){for(;a.firstChild;)a.firstChild.remove()}class Q{constructor(a,b,c,d){this._node=a,this._type=b,this._handler=c,this._options=d||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}}function R(a,b,c,d){return new Q(a,b,c,d)}let S=function(a,b,c,d){var e;let f=c;return"click"===b||"mousedown"===b||"contextmenu"===b?(e=F(a),f=function(a){return c(new t.P(e,a))}):("keydown"===b||"keypress"===b||"keyup"===b)&&(f=function(a){return c(new s.Z(a))}),R(a,b,f,d)};function T(a,b,c){return R(a,z.un&&r.e.pointerEvents?ay.POINTER_DOWN:ay.MOUSE_DOWN,b,c)}function U(a,b,c){return R(a,z.un&&r.e.pointerEvents?ay.POINTER_MOVE:ay.MOUSE_MOVE,b,c)}function V(a,b,c){return R(a,z.un&&r.e.pointerEvents?ay.POINTER_UP:ay.MOUSE_UP,b,c)}function W(a,b,c){return(0,u.b7)(a,b,c)}u.A0;class X extends u.vb{constructor(a){super(),this.defaultTarget=a&&F(a)}cancelAndSet(a,b,c){return super.cancelAndSet(a,b,c??this.defaultTarget)}}class Y{constructor(a,b=0){this._runner=a,this.priority=b,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(a){(0,v.dz)(a)}}static sort(a,b){return b.priority-a.priority}}function Z(a){return F(a).getComputedStyle(a,null)}function $(a,b,c){let d=F(a),e=d.document;if(a!==e.body)return new aa(a.clientWidth,a.clientHeight);if(z.un&&d?.visualViewport)return new aa(d.visualViewport.width,d.visualViewport.height);if(d?.innerWidth&&d.innerHeight)return new aa(d.innerWidth,d.innerHeight);if(e.body&&e.body.clientWidth&&e.body.clientHeight)return new aa(e.body.clientWidth,e.body.clientHeight);if(e.documentElement&&e.documentElement.clientWidth&&e.documentElement.clientHeight)return new aa(e.documentElement.clientWidth,e.documentElement.clientHeight);throw Error("Unable to figure out browser width and height")}k=new Map,l=new Map,m=new Map,n=new Map,e=(a,b,c=0)=>{let d=J(a),e=new Y(b,c),f=k.get(d);return f||(f=[],k.set(d,f)),f.push(e),m.get(d)||(m.set(d,!0),a.requestAnimationFrame(()=>(a=>{m.set(a,!1);let b=k.get(a)??[];for(l.set(a,b),k.set(a,[]),n.set(a,!0);b.length>0;)b.sort(Y.sort),b.shift().execute();n.set(a,!1)})(d))),e},d=(a,b,c)=>{let d=J(a);if(!n.get(d))return e(a,b,c);{let a=new Y(b,c),e=l.get(d);return e||(e=[],l.set(d,e)),e.push(a),a}};class _{static convertToPixels(a,b){return parseFloat(b)||0}static getDimension(a,b){let c=Z(a),d=c?c.getPropertyValue(b):"0";return _.convertToPixels(a,d)}static getBorderLeftWidth(a){return _.getDimension(a,"border-left-width")}static getBorderRightWidth(a){return _.getDimension(a,"border-right-width")}static getBorderTopWidth(a){return _.getDimension(a,"border-top-width")}static getBorderBottomWidth(a){return _.getDimension(a,"border-bottom-width")}static getPaddingLeft(a){return _.getDimension(a,"padding-left")}static getPaddingRight(a){return _.getDimension(a,"padding-right")}static getPaddingTop(a){return _.getDimension(a,"padding-top")}static getPaddingBottom(a){return _.getDimension(a,"padding-bottom")}static getMarginLeft(a){return _.getDimension(a,"margin-left")}static getMarginTop(a){return _.getDimension(a,"margin-top")}static getMarginRight(a){return _.getDimension(a,"margin-right")}static getMarginBottom(a){return _.getDimension(a,"margin-bottom")}}class aa{static{this.None=new aa(0,0)}constructor(a,b){this.width=a,this.height=b}with(a=this.width,b=this.height){return a!==this.width||b!==this.height?new aa(a,b):this}static is(a){return"object"==typeof a&&"number"==typeof a.height&&"number"==typeof a.width}static lift(a){return a instanceof aa?a:new aa(a.width,a.height)}static equals(a,b){return a===b||!!a&&!!b&&a.width===b.width&&a.height===b.height}}function ab(a){let b=a.offsetParent,c=a.offsetTop,d=a.offsetLeft;for(;null!==(a=a.parentNode)&&a!==a.ownerDocument.body&&a!==a.ownerDocument.documentElement;){c-=a.scrollTop;let e=ak(a)?null:Z(a);e&&(d-="rtl"!==e.direction?a.scrollLeft:-a.scrollLeft),a===b&&(d+=_.getBorderLeftWidth(a),c+=_.getBorderTopWidth(a),c+=a.offsetTop,d+=a.offsetLeft,b=a.offsetParent)}return{left:d,top:c}}function ac(a){let b=a.getBoundingClientRect(),c=F(a);return{left:b.left+c.scrollX,top:b.top+c.scrollY,width:b.width,height:b.height}}function ad(a){let b=a,c=1;do{let a=Z(b).zoom;null!=a&&"1"!==a&&(c*=a),b=b.parentElement}while(null!==b&&b!==b.ownerDocument.documentElement);return c}function ae(a){let b=_.getMarginLeft(a)+_.getMarginRight(a);return a.offsetWidth+b}function af(a){let b=_.getBorderLeftWidth(a)+_.getBorderRightWidth(a),c=_.getPaddingLeft(a)+_.getPaddingRight(a);return a.offsetWidth-b-c}function ag(a){let b=_.getBorderTopWidth(a)+_.getBorderBottomWidth(a),c=_.getPaddingTop(a)+_.getPaddingBottom(a);return a.offsetHeight-b-c}function ah(a){let b=_.getMarginTop(a)+_.getMarginBottom(a);return a.offsetHeight+b}function ai(a,b){return!!b?.contains(a)}function aj(a,b,c){return!!function(a,b,c){for(;a&&a.nodeType===a.ELEMENT_NODE;){if(a.classList.contains(b))return a;if(c){if("string"==typeof c){if(a.classList.contains(c))break}else if(a===c)break}a=a.parentNode}return null}(a,b,c)}function ak(a){return a&&!!a.host&&!!a.mode}function al(a){return!!am(a)}function am(a){for(;a.parentNode;){if(a===a.ownerDocument?.body)return null;a=a.parentNode}return ak(a)?a:null}function an(){let a=aq().activeElement;for(;a?.shadowRoot;)a=a.shadowRoot.activeElement;return a}function ao(a){return an()===a}function ap(a){return ai(an(),a)}function aq(){if(1>=I())return B.G.document;let a=Array.from(H()).map(({window:a})=>a.document).find(a=>a.hasFocus());if(a)return a;let b=function(){for(let a of O){let b=a();if(b.hasFocus&&b.window)return b.window}}();return b?b.document:B.G.document}function ar(){let a=aq();return a.defaultView?.window??B.G}let as=new class{constructor(){this.mutationObservers=new Map}observe(a,b,c){let d=this.mutationObservers.get(a);d||(d=new Map,this.mutationObservers.set(a,d));let e=(0,A.tW)(c),f=d.get(e);if(f)f.users+=1;else{let g=new w.vl,h=new MutationObserver(a=>g.fire(a));h.observe(a,c);let i=f={users:1,observer:h,onDidMutate:g.event};b.add((0,x.s)(()=>{i.users-=1,0===i.users&&(g.dispose(),h.disconnect(),d?.delete(e),d?.size===0&&this.mutationObservers.delete(a))})),d.set(e,f)}return f.onDidMutate}};function at(a){return a instanceof HTMLElement||a instanceof F(a).HTMLElement}function au(a){return a instanceof HTMLAnchorElement||a instanceof F(a).HTMLAnchorElement}function av(a){return a instanceof SVGElement||a instanceof F(a).SVGElement}function aw(a){return a instanceof MouseEvent||a instanceof F(a).MouseEvent}function ax(a){return a instanceof KeyboardEvent||a instanceof F(a).KeyboardEvent}let ay={CLICK:"click",AUXCLICK:"auxclick",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",POINTER_LEAVE:"pointerleave",CONTEXT_MENU:"contextmenu",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",RESIZE:"resize",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend"};function az(a){return!!(a&&"function"==typeof a.preventDefault&&"function"==typeof a.stopPropagation)}let aA={stop:(a,b)=>(a.preventDefault(),b&&a.stopPropagation(),a)};function aB(a){let b=[];for(let c=0;a&&a.nodeType===a.ELEMENT_NODE;c++)b[c]=a.scrollTop,a=a.parentNode;return b}function aC(a,b){for(let c=0;a&&a.nodeType===a.ELEMENT_NODE;c++)a.scrollTop!==b[c]&&(a.scrollTop=b[c]),a=a.parentNode}class aD extends x.jG{get onDidFocus(){return this._onDidFocus.event}get onDidBlur(){return this._onDidBlur.event}static hasFocusWithin(a){if(!at(a))return ai(a.document.activeElement,a.document);{let b=am(a);return ai(b?b.activeElement:a.ownerDocument.activeElement,a)}}constructor(a){super(),this._onDidFocus=this._register(new w.vl),this._onDidBlur=this._register(new w.vl);let b=aD.hasFocusWithin(a),c=!1;const d=()=>{c=!1,b||(b=!0,this._onDidFocus.fire())},e=()=>{b&&(c=!0,(at(a)?F(a):a).setTimeout(()=>{c&&(c=!1,b=!1,this._onDidBlur.fire())},0))};this._refreshStateHandler=()=>{aD.hasFocusWithin(a)!==b&&(b?e():d())},this._register(R(a,ay.FOCUS,d,!0)),this._register(R(a,ay.BLUR,e,!0)),at(a)&&(this._register(R(a,ay.FOCUS_IN,()=>this._refreshStateHandler())),this._register(R(a,ay.FOCUS_OUT,()=>this._refreshStateHandler())))}}function aE(a){return new aD(a)}function aF(a,b){return a.after(b),b}function aG(a,...b){if(a.append(...b),1===b.length&&"string"!=typeof b[0])return b[0]}function aH(a,b){return a.insertBefore(b,a.firstChild),b}function aI(a,...b){a.textContent="",aG(a,...b)}let aJ=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;function aK(a,b,c,...d){let e,f=aJ.exec(b);if(!f)throw Error("Bad use of emmet");let g=f[1]||"div";return e=a!==p.HTML?document.createElementNS(a,g):document.createElement(g),f[3]&&(e.id=f[3]),f[4]&&(e.className=f[4].replace(/\./g," ").trim()),c&&Object.entries(c).forEach(([a,b])=>{void 0!==b&&(/^on\w+$/.test(a)?e[a]=b:"selected"===a?b&&e.setAttribute(a,"true"):e.setAttribute(a,b))}),e.append(...d),e}function aL(a,b,...c){return aK(p.HTML,a,b,...c)}function aM(a,...b){a?aN(...b):aO(...b)}function aN(...a){for(let b of a)b.style.display="",b.removeAttribute("aria-hidden")}function aO(...a){for(let b of a)b.style.display="none",b.setAttribute("aria-hidden","true")}function aP(a,b){return Math.max(1,Math.floor(a.devicePixelRatio*b))/a.devicePixelRatio}function aQ(a){B.G.open(a,"_blank","noopener")}function aR(a,b){let c=()=>{b(),d=e(a,c)},d=e(a,c);return(0,x.s)(()=>d.dispose())}(o=p||(p={})).HTML="http://www.w3.org/1999/xhtml",o.SVG="http://www.w3.org/2000/svg",aL.SVG=function(a,b,...c){return aK(p.SVG,a,b,...c)},y.Ez.setPreferredWebSchema(/^https:/.test(B.G.location.href)?"https":"http");class aS extends w.vl{constructor(){super(),this._subscriptions=new x.Cm,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(w.Jh.runAndSubscribe(L,({window:a,disposables:b})=>this.registerListeners(a,b),{window:B.G,disposables:this._subscriptions}))}registerListeners(a,b){b.add(R(a,"keydown",a=>{if(a.defaultPrevented)return;let b=new s.Z(a);if(6!==b.keyCode||!a.repeat){if(a.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(a.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(a.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(a.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else{if(6===b.keyCode)return;this._keyStatus.lastKeyPressed=void 0}this._keyStatus.altKey=a.altKey,this._keyStatus.ctrlKey=a.ctrlKey,this._keyStatus.metaKey=a.metaKey,this._keyStatus.shiftKey=a.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=a,this.fire(this._keyStatus))}},!0)),b.add(R(a,"keyup",a=>{!a.defaultPrevented&&(!a.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!a.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!a.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!a.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=a.altKey,this._keyStatus.ctrlKey=a.ctrlKey,this._keyStatus.metaKey=a.metaKey,this._keyStatus.shiftKey=a.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=a,this.fire(this._keyStatus)))},!0)),b.add(R(a.document.body,"mousedown",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),b.add(R(a.document.body,"mouseup",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),b.add(R(a.document.body,"mousemove",a=>{a.buttons&&(this._keyStatus.lastKeyPressed=void 0)},!0)),b.add(R(a,"blur",()=>{this.resetKeyStatus()}))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return aS.instance||(aS.instance=new aS),aS.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}class aT extends x.jG{constructor(a,b){super(),this.element=a,this.callbacks=b,this.counter=0,this.dragStartTime=0,this.registerListeners()}registerListeners(){this.callbacks.onDragStart&&this._register(R(this.element,ay.DRAG_START,a=>{this.callbacks.onDragStart?.(a)})),this.callbacks.onDrag&&this._register(R(this.element,ay.DRAG,a=>{this.callbacks.onDrag?.(a)})),this._register(R(this.element,ay.DRAG_ENTER,a=>{this.counter++,this.dragStartTime=a.timeStamp,this.callbacks.onDragEnter?.(a)})),this._register(R(this.element,ay.DRAG_OVER,a=>{a.preventDefault(),this.callbacks.onDragOver?.(a,a.timeStamp-this.dragStartTime)})),this._register(R(this.element,ay.DRAG_LEAVE,a=>{this.counter--,0===this.counter&&(this.dragStartTime=0,this.callbacks.onDragLeave?.(a))})),this._register(R(this.element,ay.DRAG_END,a=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDragEnd?.(a)})),this._register(R(this.element,ay.DROP,a=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDrop?.(a)}))}}let aU=/(?<tag>[\w\-]+)?(?:#(?<id>[\w\-]+))?(?<class>(?:\.(?:[\w\-]+))*)(?:@(?<name>(?:[\w\_])+))?/;function aV(a,...b){let c,d;Array.isArray(b[0])?(c={},d=b[0]):(c=b[0]||{},d=b[1]);let e=aU.exec(a);if(!e||!e.groups)throw Error("Bad use of h");let f=e.groups.tag||"div",g=document.createElement(f);e.groups.id&&(g.id=e.groups.id);let h=[];if(e.groups.class)for(let a of e.groups.class.split("."))""!==a&&h.push(a);if(void 0!==c.className)for(let a of c.className.split("."))""!==a&&h.push(a);h.length>0&&(g.className=h.join(" "));let i={};if(e.groups.name&&(i[e.groups.name]=g),d)for(let a of d)at(a)?g.appendChild(a):"string"==typeof a?g.append(a):"root"in a&&(Object.assign(i,a),g.appendChild(a.root));for(let[a,b]of Object.entries(c))if("className"===a)continue;else if("style"===a)for(let[a,c]of Object.entries(b))g.style.setProperty(aW(a),"number"==typeof c?c+"px":""+c);else"tabIndex"===a?g.tabIndex=b:g.setAttribute(aW(a),b.toString());return i.root=g,i}function aW(a){return a.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function aX(a){return"input"===a.tagName.toLowerCase()||"textarea"===a.tagName.toLowerCase()||at(a)&&!!a.editContext}var aY=q||(q={});function aZ(a){return(b,c,d)=>{let e=c.class;delete c.class;let f=c.ref;delete c.ref;let g=c.obsRef;return delete c.obsRef,new a4(b,f,g,a,e,c,d)}}function a$(a,b){let c=aZ(b);return(b,d)=>c(a,b,d)}aY.div=a$("div"),aY.elem=aZ(void 0),aY.svg=a$("svg","http://www.w3.org/2000/svg"),aY.svgElem=aZ("http://www.w3.org/2000/svg"),aY.ref=function(){let a,b=function(b){a=b};return Object.defineProperty(b,"element",{get(){if(!a)throw new v.D7("Make sure the ref is set before accessing the element. Maybe wrong initialization order?");return a}}),b};class a_{constructor(a,b,c,d,e,f,g){for(const[g,h]of(this._deriveds=[],this._isHovered=void 0,this._didMouseMoveDuringHover=void 0,this._element=d?document.createElementNS(d,a):document.createElement(a),b&&b(this._element),c&&this._deriveds.push((0,C.un)(a=>{c(this),a.store.add({dispose:()=>{c(null)}})})),e&&(!function a(b){return!!(0,D.AT)(b)||!!Array.isArray(b)&&b.some(b=>a(b))}(e)?a0(this._element,a1(e,void 0)):this._deriveds.push((0,C.un)(this,a=>{a0(this._element,a1(e,a))}))),Object.entries(f)))if("style"===g)for(const[a,b]of Object.entries(h)){const c=aW(a);(0,D.AT)(b)?this._deriveds.push((0,C.C)({owner:this,debugName:()=>`set.style.${c}`},a=>{this._element.style.setProperty(c,a2(b.read(a)))})):this._element.style.setProperty(c,a2(b))}else"tabIndex"===g?(0,D.AT)(h)?this._deriveds.push((0,C.un)(this,a=>{this._element.tabIndex=h.read(a)})):this._element.tabIndex=h:g.startsWith("on")?this._element[g]=h:(0,D.AT)(h)?this._deriveds.push((0,C.C)({owner:this,debugName:()=>`set.${g}`},a=>{a5(this._element,g,h.read(a))})):a5(this._element,g,h);if(g){const a=(0,C.un)(this,a=>{this._element.replaceChildren(...function a(b,c){return(0,D.AT)(c)?a(b,c.read(b)):Array.isArray(c)?c.flatMap(c=>a(b,c)):c instanceof a_?(b&&c.readEffect(b),[c._element]):c?[c]:[]}(a,g))});this._deriveds.push(a),!function a(b){return!!(0,D.AT)(b)||!!Array.isArray(b)&&b.some(b=>a(b))}(g)&&a.get()}}readEffect(a){for(let b of this._deriveds)b.read(a)}keepUpdated(a){return(0,C.un)(a=>{this.readEffect(a)}).recomputeInitiallyAndOnChange(a),this}toDisposableLiveElement(){let a=new x.Cm;return this.keepUpdated(a),new a3(this._element,a)}get isHovered(){if(!this._isHovered){let a=(0,E.FY)("hovered",!1);this._element.addEventListener("mouseenter",b=>a.set(!0,void 0)),this._element.addEventListener("mouseleave",b=>a.set(!1,void 0)),this._isHovered=a}return this._isHovered}get didMouseMoveDuringHover(){if(!this._didMouseMoveDuringHover){let a=!1,b=(0,E.FY)("didMouseMoveDuringHover",!1);this._element.addEventListener("mouseenter",b=>{a=!0}),this._element.addEventListener("mousemove",c=>{a&&b.set(!0,void 0)}),this._element.addEventListener("mouseleave",c=>{a=!1,b.set(!1,void 0)}),this._didMouseMoveDuringHover=b}return this._didMouseMoveDuringHover}}function a0(a,b){av(a)?a.setAttribute("class",b):a.className=b}function a1(a,b){let c="";return!function a(b,c,d){if((0,D.AT)(b))return void d(b.read(c));if(Array.isArray(b)){for(let e of b)a(e,c,d);return}d(b)}(a,b,a=>{a&&(0===c.length?c=a:c+=" "+a)}),c}function a2(a){return"number"==typeof a?a+"px":a}class a3{constructor(a,b){this.element=a,this._disposable=b}dispose(){this._disposable.dispose()}}class a4 extends a_{get element(){return this._element}}function a5(a,b,c){null==c?a.removeAttribute(aW(b)):a.setAttribute(aW(b),String(c))}class a6 extends HTMLElement{disconnectedCallback(){this.onDidDisconnect?.()}connectedCallback(){this.onDidConnect?.()}}customElements.get("connection-observer")||customElements.define("connection-observer",a6)},75444:(a,b,c)=>{"use strict";c.d(b,{AO:()=>z,Dr:()=>A,Hs:()=>E,K4:()=>t,Ls:()=>y,Tl:()=>v,UN:()=>C,YA:()=>B,dU:()=>r,ey:()=>P,h0:()=>D,is:()=>w,kr:()=>x,oi:()=>u,sx:()=>s});var d=c(66036),e=c(26529),f=c(12017),g=c(75842),h=c(41577),i=c(48580),j=c(33641),k=c(61822),l=c(6812),m=c(97195),n=c(16202),o=c(99807),p=c(65666),q=c(39383);class r{static getEdits(a,b,c,d,e){if(!e&&this._isAutoIndentType(a,b,c)){let e=[];for(let f of c){let c=this._findActualIndentationForSelection(a,b,f,d);if(null===c)return;e.push({selection:f,indentation:c})}let f=u.getAutoClosingPairClose(a,b,c,d,!1);return this._getIndentationAndAutoClosingPairEdits(a,b,e,d,f)}}static _isAutoIndentType(a,b,c){if(a.autoIndent<4)return!1;for(let a=0,d=c.length;a<d;a++)if(!b.tokenization.isCheapToTokenize(c[a].getEndPosition().lineNumber))return!1;return!0}static _findActualIndentationForSelection(a,b,c,d){let e=(0,p._t)(a,b,c,d,{shiftIndent:b=>N(a,b),unshiftIndent:b=>O(a,b)},a.languageConfigurationService);if(null===e)return null;let f=(0,n.Cw)(b,c.startLineNumber,c.startColumn);return e===a.normalizeIndentation(f)?null:e}static _getIndentationAndAutoClosingPairEdits(a,b,c,d,e){let f=c.map(({selection:c,indentation:f})=>{if(null!==e)return new G(this._getEditFromIndentationAndSelection(a,b,f,c,d,!1),c,d,e);{let e=this._getEditFromIndentationAndSelection(a,b,f,c,d,!0);return M(e.range,e.text,!1)}});return new i.vY(4,f,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static _getEditFromIndentationAndSelection(a,b,c,d,e,f=!0){let g=d.startLineNumber,h=b.getLineFirstNonWhitespaceColumn(g),i=a.normalizeIndentation(c);return 0!==h&&(i+=b.getLineContent(g).substring(h-1,d.startColumn-1)),i+=f?e:"",{range:new k.Q(g,1,d.endLineNumber,d.endColumn),text:i}}}class s{static getEdits(a,b,c,d,e,f){if(L(b,c,d,e,f))return this._runAutoClosingOvertype(a,d,f)}static _runAutoClosingOvertype(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++){let e=b[a].getPosition(),g=new k.Q(e.lineNumber,e.column,e.lineNumber,e.column+1);d[a]=new f.iu(g,c)}return new i.vY(4,d,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}}class t{static getEdits(a,b,c,d,e){if(L(a,b,c,d,e)){let a=c.map(a=>new f.iu(new k.Q(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new i.vY(4,a,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class u{static getEdits(a,b,c,d,e,f){if(!f){let f=this.getAutoClosingPairClose(a,b,c,d,e);if(null!==f)return this._runAutoClosingOpenCharType(c,d,e,f)}}static _runAutoClosingOpenCharType(a,b,c,d){let e=[];for(let f=0,g=a.length;f<g;f++){let g=a[f];e[f]=new F(g,b,!c,d)}return new i.vY(4,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static getAutoClosingPairClose(a,b,c,d,e){let f,g;for(let a of c)if(!a.isEmpty())return null;let h=c.map(a=>{let b=a.getPosition();return e?{lineNumber:b.lineNumber,beforeColumn:b.column-d.length,afterColumn:b.column}:{lineNumber:b.lineNumber,beforeColumn:b.column,afterColumn:b.column}}),k=this._findAutoClosingPairOpen(a,b,h.map(a=>new l.y(a.lineNumber,a.beforeColumn)),d);if(!k||((0,i.vG)(d)?(f=a.autoClosingQuotes,g=a.shouldAutoCloseBefore.quote):a.blockCommentStartToken&&k.open.includes(a.blockCommentStartToken)?(f=a.autoClosingComments,g=a.shouldAutoCloseBefore.comment):(f=a.autoClosingBrackets,g=a.shouldAutoCloseBefore.bracket),"never"===f))return null;let m=this._findContainedAutoClosingPair(a,k),n=m?m.close:"",p=!0;for(let c of h){let{lineNumber:e,beforeColumn:h,afterColumn:i}=c,l=b.getLineContent(e),m=l.substring(0,h-1),q=l.substring(i-1);if(q.startsWith(n)||(p=!1),q.length>0){let b=q.charAt(0);if(!this._isBeforeClosingBrace(a,q)&&!g(b))return null}if(1===k.open.length&&("'"===d||'"'===d)&&"always"!==f){let b=(0,j.i)(a.wordSeparators,[]);if(m.length>0){let a=m.charCodeAt(m.length-1);if(0===b.get(a))return null}}if(!b.tokenization.isCheapToTokenize(e))return null;b.tokenization.forceTokenization(e);let r=b.tokenization.getLineTokens(e),s=(0,o.BQ)(r,h-1);if(!k.shouldAutoClose(s,h-s.firstCharOffset))return null;let t=k.findNeutralCharacter();if(t){let a=b.tokenization.getTokenTypeIfInsertingCharacter(e,h,t);if(!k.isOK(a))return null}}return p?k.close.substring(0,k.close.length-n.length):k.close}static _findContainedAutoClosingPair(a,b){if(b.open.length<=1)return null;let c=b.close.charAt(b.close.length-1),d=a.autoClosingPairs.autoClosingPairsCloseByEnd.get(c)||[],e=null;for(let a of d)a.open!==b.open&&b.open.includes(a.open)&&b.close.endsWith(a.close)&&(!e||a.open.length>e.open.length)&&(e=a);return e}static _findAutoClosingPairOpen(a,b,c,d){let e=a.autoClosingPairs.autoClosingPairsOpenByEnd.get(d);if(!e)return null;let f=null;for(let a of e)if(null===f||a.open.length>f.open.length){let e=!0;for(let f of c)if(b.getValueInRange(new k.Q(f.lineNumber,f.column-a.open.length+1,f.lineNumber,f.column))+d!==a.open){e=!1;break}e&&(f=a)}return f}static _isBeforeClosingBrace(a,b){let c=b.charAt(0),d=a.autoClosingPairs.autoClosingPairsOpenByStart.get(c)||[],e=a.autoClosingPairs.autoClosingPairsCloseByStart.get(c)||[],f=d.some(a=>b.startsWith(a.open)),g=e.some(a=>b.startsWith(a.close));return!f&&g}}class v{static getEdits(a,b){if("overtype"!==a.inputMode)return null;let c=b.map(a=>new f.gr(a.insertedTextRange));return new i.vY(4,c,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}class w{static getEdits(a,b,c,d,e){if(!e&&this._isSurroundSelectionType(a,b,c,d))return this._runSurroundSelectionType(a,c,d)}static _runSurroundSelectionType(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=a.surroundingPairs[c];d[e]=new h.i(f,c,g)}return new i.vY(0,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _isSurroundSelectionType(a,b,c,d){if(!P(a,d)||!a.surroundingPairs.hasOwnProperty(d))return!1;let e=(0,i.vG)(d);for(let a of c){if(a.isEmpty())return!1;let c=!0;for(let d=a.startLineNumber;d<=a.endLineNumber;d++){let e=b.getLineContent(d),f=d===a.startLineNumber?a.startColumn-1:0,g=d===a.endLineNumber?a.endColumn-1:e.length,h=e.substring(f,g);if(/[^ \t]/.test(h)){c=!1;break}}if(c)return!1;if(e&&a.startLineNumber===a.endLineNumber&&a.startColumn+1===a.endColumn){let c=b.getValueInRange(a);if((0,i.vG)(c))return!1}}return!0}}class x{static getEdits(a,b,c,d,e,f){if(!f&&this._isTypeInterceptorElectricChar(b,c,d)){let f=this._typeInterceptorElectricChar(a,b,c,d[0],e);if(f)return f}}static _isTypeInterceptorElectricChar(a,b,c){return!!(1===c.length&&b.tokenization.isCheapToTokenize(c[0].getEndPosition().lineNumber))}static _typeInterceptorElectricChar(a,b,c,g,h){let j;if(!b.electricChars.hasOwnProperty(h)||!g.isEmpty())return null;let l=g.getPosition();c.tokenization.forceTokenization(l.lineNumber);let m=c.tokenization.getLineTokens(l.lineNumber);try{j=b.onElectricCharacter(h,m,l.column)}catch(a){return(0,d.dz)(a),null}if(!j)return null;if(j.matchOpenBracket){let d=(m.getLineContent()+h).lastIndexOf(j.matchOpenBracket)+1,g=c.bracketPairs.findMatchingBracketUp(j.matchOpenBracket,{lineNumber:l.lineNumber,column:d},500);if(g){if(g.startLineNumber===l.lineNumber)return null;let d=c.getLineContent(g.startLineNumber),j=(0,e.UU)(d),m=b.normalizeIndentation(j),n=c.getLineContent(l.lineNumber),o=c.getLineFirstNonWhitespaceColumn(l.lineNumber)||l.column,p=m+n.substring(o-1,l.column-1)+h,q=new k.Q(l.lineNumber,1,l.lineNumber,l.column),r=new f.iu(q,p);return new i.vY(H(p,a),[r],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!0})}}return null}}class y{static getEdits(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h="overtype"!==a.inputMode||e?f.iu:f.AS;g[b]=new h(c[b],d)}let h=H(d,b);return new i.vY(h,g,{shouldPushStackElementBefore:I(b,h),shouldPushStackElementAfter:!1})}}class z{static getEdits(a,b,c,d,e){if(!e&&"\n"===d){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!1,c[e]);return new i.vY(4,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}static _enter(a,b,c,d){if(0===a.autoIndent)return M(d,"\n",c);if(!b.tokenization.isCheapToTokenize(d.getStartPosition().lineNumber)||1===a.autoIndent){let f=b.getLineContent(d.startLineNumber),g=(0,e.UU)(f).substring(0,d.startColumn-1);return M(d,"\n"+a.normalizeIndentation(g),c)}let g=(0,q.h)(a.autoIndent,b,d,a.languageConfigurationService);if(g){if(g.indentAction===m.l.None)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.Indent)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.IndentOutdent){let b=a.normalizeIndentation(g.indentation),e=a.normalizeIndentation(g.indentation+g.appendText),h="\n"+e+"\n"+b;return c?new f.q2(d,h,!0):new f.iP(d,h,-1,e.length-b.length,!0)}else if(g.indentAction===m.l.Outdent){let b=O(a,g.indentation);return M(d,"\n"+a.normalizeIndentation(b+g.appendText),c)}}let h=b.getLineContent(d.startLineNumber),i=(0,e.UU)(h).substring(0,d.startColumn-1);if(a.autoIndent>=4){let g=(0,p.MU)(a.autoIndent,b,d,{unshiftIndent:b=>O(a,b),shiftIndent:b=>N(a,b),normalizeIndentation:b=>a.normalizeIndentation(b)},a.languageConfigurationService);if(g){let h=a.visibleColumnFromColumn(b,d.getEndPosition()),i=d.endColumn,j=b.getLineContent(d.endLineNumber),k=(0,e.HG)(j);if(d=k>=0?d.setEndPosition(d.endLineNumber,Math.max(d.endColumn,k+1)):d.setEndPosition(d.endLineNumber,b.getLineMaxColumn(d.endLineNumber)),c)return new f.q2(d,"\n"+a.normalizeIndentation(g.afterEnter),!0);{let b=0;return i<=k+1&&(a.insertSpaces||(h=Math.ceil(h/a.indentSize)),b=Math.min(h+1-a.normalizeIndentation(g.afterEnter).length-1,0)),new f.iP(d,"\n"+a.normalizeIndentation(g.afterEnter),0,b,!0)}}}return M(d,"\n"+a.normalizeIndentation(i),c)}static lineInsertBefore(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,g=c.length;e<g;e++){let g=c[e].positionLineNumber;if(1===g)d[e]=new f.q2(new k.Q(1,1,1,1),"\n");else{g--;let c=b.getLineMaxColumn(g);d[e]=this._enter(a,b,!1,new k.Q(g,c,g,c))}}return d}static lineInsertAfter(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,f=c.length;e<f;e++){let f=c[e].positionLineNumber,g=b.getLineMaxColumn(f);d[e]=this._enter(a,b,!1,new k.Q(f,g,f,g))}return d}static lineBreakInsert(a,b,c){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!0,c[e]);return d}}class A{static getEdits(a,b,c,d,e,f){let g=this._distributePasteToCursors(a,c,d,e,f);return g?(c=c.sort(k.Q.compareRangesUsingStarts),this._distributedPaste(a,b,c,g)):this._simplePaste(a,b,c,d,e)}static _distributePasteToCursors(a,b,c,d,f){if(1===b.length)return null;if(f&&f.length===b.length)return f;if(d)return null;if("spread"===a.multiCursorPaste){10===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1)),13===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1));let a=(0,e.uz)(c);if(a.length===b.length)return a}return null}static _distributedPaste(a,b,c,d){let e=[];for(let b=0,g=c.length;b<g;b++){let g=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;e[b]=new g(c[b],d[b])}return new i.vY(0,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _simplePaste(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h=c[b],i=h.getPosition();if(e&&!h.isEmpty()&&(e=!1),e&&d.indexOf("\n")!==d.length-1&&(e=!1),e){let a=new k.Q(i.lineNumber,1,i.lineNumber,1);g[b]=new f.ui(a,d,h,!0)}else{let c=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;g[b]=new c(h,d)}}return new i.vY(0,g,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class B{static getEdits(a,b,c,d,e,f,g,h){let j=d.map(a=>this._compositionType(c,a,e,f,g,h));return new i.vY(4,j,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}static _compositionType(a,b,c,d,e,g){if(!b.isEmpty())return null;let h=b.getPosition(),i=Math.max(1,h.column-d),j=Math.min(a.getLineMaxColumn(h.lineNumber),h.column+e),l=new k.Q(h.lineNumber,i,h.lineNumber,j);return new f.iP(l,c,0,g)}}class C{static getEdits(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++)d[a]=new f.iu(b[a],c);let e=H(c,a);return new i.vY(e,d,{shouldPushStackElementBefore:I(a,e),shouldPushStackElementAfter:!1})}}class D{static getCommands(a,b,c){let d=[];for(let e=0,h=c.length;e<h;e++){let h=c[e];if(h.isEmpty()){let c=b.getLineContent(h.startLineNumber);if(/^\s*$/.test(c)&&b.tokenization.isCheapToTokenize(h.startLineNumber)){let g=this._goodIndentForLine(a,b,h.startLineNumber);g=g||" ";let i=a.normalizeIndentation(g);if(!c.startsWith(i)){d[e]=new f.iu(new k.Q(h.startLineNumber,1,h.startLineNumber,c.length+1),i,!0);continue}}d[e]=this._replaceJumpToNextIndent(a,b,h,!0)}else{if(h.startLineNumber===h.endLineNumber){let c=b.getLineMaxColumn(h.startLineNumber);if(1!==h.startColumn||h.endColumn!==c){d[e]=this._replaceJumpToNextIndent(a,b,h,!1);continue}}d[e]=new g.Y(h,{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService)}}return d}static _goodIndentForLine(a,b,c){let d=null,f="",g=(0,p.vn)(a.autoIndent,b,c,!1,a.languageConfigurationService);if(g)d=g.action,f=g.indentation;else if(c>1){let d;for(d=c-1;d>=1;d--){let a=b.getLineContent(d);if((0,e.lT)(a)>=0)break}if(d<1)return null;let g=b.getLineMaxColumn(d),h=(0,q.h)(a.autoIndent,b,new k.Q(d,g,d,g),a.languageConfigurationService);h&&(f=h.indentation+h.appendText)}return(d&&(d===m.l.Indent&&(f=N(a,f)),d===m.l.Outdent&&(f=O(a,f)),f=a.normalizeIndentation(f)),f)?f:null}static _replaceJumpToNextIndent(a,b,c,d){let e="",g=c.getStartPosition();if(a.insertSpaces){let c=a.visibleColumnFromColumn(b,g),d=a.indentSize,f=d-c%d;for(let a=0;a<f;a++)e+=" "}else e=" ";return new f.iu(c,e,d)}}class E extends f.iP{constructor(a,b,c,d,e,f){super(a,b,c,d),this._openCharacter=e,this._closeCharacter=f,this.closeCharacterRange=null,this.enclosingRange=null}_computeCursorStateWithRange(a,b,c){return this.closeCharacterRange=new k.Q(b.startLineNumber,b.endColumn-this._closeCharacter.length,b.endLineNumber,b.endColumn),this.enclosingRange=new k.Q(b.startLineNumber,b.endColumn-this._openCharacter.length-this._closeCharacter.length,b.endLineNumber,b.endColumn),super.computeCursorState(a,c)}}class F extends E{constructor(a,b,c,d){super(a,(c?b:"")+d,0,-d.length,b,d)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return this._computeCursorStateWithRange(a,c,b)}}class G extends E{constructor(a,b,c,d){const e=c+d;super(b,e,0,c.length,c,d),this._autoIndentationEdit=a,this._autoClosingEdit={range:b,text:e}}getEditOperations(a,b){b.addTrackedEditOperation(this._autoIndentationEdit.range,this._autoIndentationEdit.text),b.addTrackedEditOperation(this._autoClosingEdit.range,this._autoClosingEdit.text)}computeCursorState(a,b){let c=b.getInverseEditOperations();if(2!==c.length)throw Error("There should be two inverse edit operations!");let d=c[0].range,e=c[1].range,f=d.plusRange(e);return this._computeCursorStateWithRange(a,f,b)}}function H(a,b){return" "===a?5===b||6===b?6:5:4}function I(a,b){return!(!K(a)||K(b))||5!==a&&J(a)!==J(b)}function J(a){return 6===a||5===a?"space":a}function K(a){return 4===a||5===a||6===a}function L(a,b,c,d,e){if("never"===a.autoClosingOvertype||!a.autoClosingPairs.autoClosingPairsCloseSingleChar.has(e))return!1;for(let f=0,g=c.length;f<g;f++){let g=c[f];if(!g.isEmpty())return!1;let h=g.getPosition(),j=b.getLineContent(h.lineNumber);if(j.charAt(h.column-1)!==e)return!1;let k=(0,i.vG)(e);if(92===(h.column>2?j.charCodeAt(h.column-2):0)&&k)return!1;if("auto"===a.autoClosingOvertype){let a=!1;for(let b=0,c=d.length;b<c;b++){let c=d[b];if(h.lineNumber===c.startLineNumber&&h.column===c.startColumn){a=!0;break}}if(!a)return!1}}return!0}function M(a,b,c){return c?new f.q2(a,b,!0):new f.iu(a,b,!0)}function N(a,b,c){return c=c||1,g.Y.shiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function O(a,b,c){return c=c||1,g.Y.unshiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function P(a,b){return(0,i.vG)(b)?"quotes"===a.autoSurround||"languageDefined"===a.autoSurround:"brackets"===a.autoSurround||"languageDefined"===a.autoSurround}},75842:(a,b,c)=>{"use strict";c.d(b,{Y:()=>n});var d,e,f=c(26529),g=c(18530),h=c(61822),i=c(77509),j=c(39383),k=c(16202);let l=Object.create(null);function m(a,b){if(b<=0)return"";l[a]||(l[a]=["",a]);let c=l[a];for(let d=c.length;d<=b;d++)c[d]=c[d-1]+a;return c[b]}let n=e=class{static unshiftIndent(a,b,c,d,e){let f=g.A.visibleColumnFromColumn(a,b,c);if(e){let a=m(" ",d);return m(a,g.A.prevIndentTabStop(f,d)/d)}return m(" ",g.A.prevRenderTabStop(f,c)/c)}static shiftIndent(a,b,c,d,e){let f=g.A.visibleColumnFromColumn(a,b,c);if(e){let a=m(" ",d);return m(a,g.A.nextIndentTabStop(f,d)/d)}return m(" ",g.A.nextRenderTabStop(f,c)/c)}constructor(a,b,c){this._languageConfigurationService=c,this._opts=b,this._selection=a,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(a,b,c){this._useLastEditRangeForCursorEndPosition?a.addTrackedEditOperation(b,c):a.addEditOperation(b,c)}getEditOperations(a,b){let c=this._selection.startLineNumber,d=this._selection.endLineNumber;1===this._selection.endColumn&&c!==d&&(d-=1);let{tabSize:i,indentSize:k,insertSpaces:l}=this._opts,n=c===d;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(a.getLineContent(c))&&(this._useLastEditRangeForCursorEndPosition=!0);let m=0,o=0;for(let p=c;p<=d;p++,m=o){let d;o=0;let q=a.getLineContent(p),r=(0,f.HG)(q);if((!this._opts.isUnshift||0!==q.length&&0!==r)&&(n||this._opts.isUnshift||0!==q.length)){if(-1===r&&(r=q.length),p>1&&g.A.visibleColumnFromColumn(q,r+1,i)%k!=0&&a.tokenization.isCheapToTokenize(p-1)){let b=(0,j.h)(this._opts.autoIndent,a,new h.Q(p-1,a.getLineMaxColumn(p-1),p-1,a.getLineMaxColumn(p-1)),this._languageConfigurationService);if(b){if(o=m,b.appendText)for(let a=0,c=b.appendText.length;a<c&&o<k;a++)if(32===b.appendText.charCodeAt(a))o++;else break;b.removeText&&(o=Math.max(0,o-b.removeText));for(let a=0;a<o&&0!==r&&32===q.charCodeAt(r-1);a++)r--}}(!this._opts.isUnshift||0!==r)&&(d=this._opts.isUnshift?e.unshiftIndent(q,r+1,i,k,l):e.shiftIndent(q,r+1,i,k,l),this._addEditOperation(b,new h.Q(p,1,p,r+1),d),p!==c||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=this._selection.startColumn<=r+1))}}}else{!this._opts.isUnshift&&this._selection.isEmpty()&&0===a.getLineLength(c)&&(this._useLastEditRangeForCursorEndPosition=!0);let e=l?m(" ",k):" ";for(let g=c;g<=d;g++){let d=a.getLineContent(g),i=(0,f.HG)(d);if((!this._opts.isUnshift||0!==d.length&&0!==i)&&(n||this._opts.isUnshift||0!==d.length)&&(-1===i&&(i=d.length),!this._opts.isUnshift||0!==i))if(this._opts.isUnshift){i=Math.min(i,k);for(let a=0;a<i;a++)if(9===d.charCodeAt(a)){i=a+1;break}this._addEditOperation(b,new h.Q(g,1,g,i+1),"")}else this._addEditOperation(b,new h.Q(g,1,g,1),e),g!==c||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=1===this._selection.startColumn)}}this._selectionId=b.trackSelection(this._selection)}computeCursorState(a,b){if(this._useLastEditRangeForCursorEndPosition){let a=b.getInverseEditOperations()[0];return new i.L(a.range.endLineNumber,a.range.endColumn,a.range.endLineNumber,a.range.endColumn)}let c=b.getTrackedSelection(this._selectionId);if(this._selectionStartColumnStaysPut){let a=this._selection.startColumn;return c.startColumn<=a?c:0===c.getDirection()?new i.L(c.startLineNumber,a,c.endLineNumber,c.endColumn):new i.L(c.endLineNumber,c.endColumn,c.startLineNumber,a)}return c}};n=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=k.JZ,function(a,b){d(a,b,2)})],n)},76293:()=>{},76631:(a,b,c)=>{"use strict";c.d(b,{$w:()=>o,AS:()=>g,BO:()=>n,Cm:()=>k,HE:()=>m,Xm:()=>f,jG:()=>l,lC:()=>e,qE:()=>h,s:()=>j});var d=c(47309);function e(a){return a}function f(a){return"object"==typeof a&&null!==a&&"function"==typeof a.dispose&&0===a.dispose.length}function g(a){if(d.f.is(a)){let b=[];for(let c of a)if(c)try{c.dispose()}catch(a){b.push(a)}if(1===b.length)throw b[0];if(b.length>1)throw AggregateError(b,"Encountered errors while disposing of store");return Array.isArray(a)?[]:a}if(a)return a.dispose(),a}function h(...a){return j(()=>g(a))}class i{constructor(a){this._isDisposed=!1,this._fn=a}dispose(){if(!this._isDisposed){if(!this._fn)throw Error("Unbound disposable context: Need to use an arrow function to preserve the value of this");this._isDisposed=!0,this._fn()}}}function j(a){return new i(a)}class k{static{this.DISABLE_DISPOSED_WARNING=!1}constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{g(this._toDispose)}finally{this._toDispose.clear()}}add(a){if(!a||a===l.None)return a;if(a===this)throw Error("Cannot register a disposable on itself!");return this._isDisposed?k.DISABLE_DISPOSED_WARNING||console.warn(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(a),a}delete(a){if(a){if(a===this)throw Error("Cannot dispose a disposable on itself!");this._toDispose.delete(a),a.dispose()}}}class l{static{this.None=Object.freeze({dispose(){}})}constructor(){this._store=new k,this._store}dispose(){this._store.dispose()}_register(a){if(a===this)throw Error("Cannot register a disposable on itself!");return this._store.add(a)}}class m{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(a){this._isDisposed||a===this._value||(this._value?.dispose(),this._value=a)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}}class n{constructor(a){this.object=a}dispose(){}}class o{constructor(a=new Map){this._isDisposed=!1,this._store=a}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{g(this._store.values())}finally{this._store.clear()}}get(a){return this._store.get(a)}set(a,b,c=!1){this._isDisposed&&console.warn(Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),c||this._store.get(a)?.dispose(),this._store.set(a,b)}deleteAndDispose(a){this._store.get(a)?.dispose(),this._store.delete(a)}keys(){return this._store.keys()}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}}},76817:(a,b,c)=>{"use strict";c.d(b,{S:()=>e,c:()=>m});var d,e,f=c(85214),g=c(48580),h=c(22913),i=c(82064),j=c(6812),k=c(61822),l=c(94630);class m{static addCursorDown(a,b,c){let d=[],e=0;for(let f=0,i=b.length;f<i;f++){let i=b[f];d[e++]=new g.MF(i.modelState,i.viewState),c?d[e++]=g.MF.fromModelState(h.I.translateDown(a.cursorConfig,a.model,i.modelState)):d[e++]=g.MF.fromViewState(h.I.translateDown(a.cursorConfig,a,i.viewState))}return d}static addCursorUp(a,b,c){let d=[],e=0;for(let f=0,i=b.length;f<i;f++){let i=b[f];d[e++]=new g.MF(i.modelState,i.viewState),c?d[e++]=g.MF.fromModelState(h.I.translateUp(a.cursorConfig,a.model,i.modelState)):d[e++]=g.MF.fromViewState(h.I.translateUp(a.cursorConfig,a,i.viewState))}return d}static moveToBeginningOfLine(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=this._moveToLineStart(a,f,c)}return d}static _moveToLineStart(a,b,c){let d=b.viewState.position.column,e=b.modelState.position.column,f=b.viewState.position.lineNumber,g=a.getLineFirstNonWhitespaceColumn(f);return d!==e&&d!==g?this._moveToLineStartByView(a,b,c):this._moveToLineStartByModel(a,b,c)}static _moveToLineStartByView(a,b,c){return g.MF.fromViewState(h.I.moveToBeginningOfLine(a.cursorConfig,a,b.viewState,c))}static _moveToLineStartByModel(a,b,c){return g.MF.fromModelState(h.I.moveToBeginningOfLine(a.cursorConfig,a.model,b.modelState,c))}static moveToEndOfLine(a,b,c,d){let e=[];for(let f=0,g=b.length;f<g;f++){let g=b[f];e[f]=this._moveToLineEnd(a,g,c,d)}return e}static _moveToLineEnd(a,b,c,d){let e=b.viewState.position,f=a.getLineMaxColumn(e.lineNumber),g=e.column===f,h=b.modelState.position,i=a.model.getLineMaxColumn(h.lineNumber),j=f-e.column==i-h.column;return g||j?this._moveToLineEndByModel(a,b,c,d):this._moveToLineEndByView(a,b,c,d)}static _moveToLineEndByView(a,b,c,d){return g.MF.fromViewState(h.I.moveToEndOfLine(a.cursorConfig,a,b.viewState,c,d))}static _moveToLineEndByModel(a,b,c,d){return g.MF.fromModelState(h.I.moveToEndOfLine(a.cursorConfig,a.model,b.modelState,c,d))}static expandLineSelection(a,b){let c=[];for(let d=0,e=b.length;d<e;d++){let e,f=b[d],h=f.modelState.selection.startLineNumber,i=a.model.getLineCount(),l=f.modelState.selection.endLineNumber;l===i?e=a.model.getLineMaxColumn(i):(l++,e=1),c[d]=g.MF.fromModelState(new g.mG(new k.Q(h,1,h,1),0,0,new j.y(l,e),0))}return c}static moveToBeginningOfBuffer(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=g.MF.fromModelState(h.I.moveToBeginningOfBuffer(a.cursorConfig,a.model,f.modelState,c))}return d}static moveToEndOfBuffer(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=g.MF.fromModelState(h.I.moveToEndOfBuffer(a.cursorConfig,a.model,f.modelState,c))}return d}static selectAll(a,b){let c=a.model.getLineCount(),d=a.model.getLineMaxColumn(c);return g.MF.fromModelState(new g.mG(new k.Q(1,1,1,1),0,0,new j.y(c,d),0))}static line(a,b,c,d,e){let f=a.model.validatePosition(d),h=e?a.coordinatesConverter.validateViewPosition(new j.y(e.lineNumber,e.column),f):a.coordinatesConverter.convertModelPositionToViewPosition(f);if(!c){let b=a.model.getLineCount(),c=f.lineNumber+1,d=1;return c>b&&(c=b,d=a.model.getLineMaxColumn(c)),g.MF.fromModelState(new g.mG(new k.Q(f.lineNumber,1,c,d),2,0,new j.y(c,d),0))}let i=b.modelState.selectionStart.getStartPosition().lineNumber;if(f.lineNumber<i)return g.MF.fromViewState(b.viewState.move(!0,h.lineNumber,1,0));if(f.lineNumber>i){let c=a.getLineCount(),d=h.lineNumber+1,e=1;return d>c&&(d=c,e=a.getLineMaxColumn(d)),g.MF.fromViewState(b.viewState.move(!0,d,e,0))}{let a=b.modelState.selectionStart.getEndPosition();return g.MF.fromModelState(b.modelState.move(!0,a.lineNumber,a.column,0))}}static word(a,b,c,d){let e=a.model.validatePosition(d);return g.MF.fromModelState(i.z.word(a.cursorConfig,a.model,b.modelState,c,e))}static cancelSelection(a,b){if(!b.modelState.hasSelection())return new g.MF(b.modelState,b.viewState);let c=b.viewState.position.lineNumber,d=b.viewState.position.column;return g.MF.fromViewState(new g.mG(new k.Q(c,d,c,d),0,0,new j.y(c,d),0))}static moveTo(a,b,c,d,e){if(c){if(1===b.modelState.selectionStartKind)return this.word(a,b,c,d);if(2===b.modelState.selectionStartKind)return this.line(a,b,c,d,e)}let f=a.model.validatePosition(d),h=e?a.coordinatesConverter.validateViewPosition(new j.y(e.lineNumber,e.column),f):a.coordinatesConverter.convertModelPositionToViewPosition(f);return g.MF.fromViewState(b.viewState.move(c,h.lineNumber,h.column,0))}static simpleMove(a,b,c,d,e,f){switch(c){case 0:if(4===f)return this._moveHalfLineLeft(a,b,d);return this._moveLeft(a,b,d,e);case 1:if(4===f)return this._moveHalfLineRight(a,b,d);return this._moveRight(a,b,d,e);case 2:if(2===f)return this._moveUpByViewLines(a,b,d,e);if(5===f)return this._moveUpByFoldedLines(a,b,d,e);return this._moveUpByModelLines(a,b,d,e);case 3:if(2===f)return this._moveDownByViewLines(a,b,d,e);if(5===f)return this._moveDownByFoldedLines(a,b,d,e);return this._moveDownByModelLines(a,b,d,e);case 4:if(2===f)return b.map(b=>g.MF.fromViewState(h.I.moveToPrevBlankLine(a.cursorConfig,a,b.viewState,d)));return b.map(b=>g.MF.fromModelState(h.I.moveToPrevBlankLine(a.cursorConfig,a.model,b.modelState,d)));case 5:if(2===f)return b.map(b=>g.MF.fromViewState(h.I.moveToNextBlankLine(a.cursorConfig,a,b.viewState,d)));return b.map(b=>g.MF.fromModelState(h.I.moveToNextBlankLine(a.cursorConfig,a.model,b.modelState,d)));case 6:return this._moveToViewMinColumn(a,b,d);case 7:return this._moveToViewFirstNonWhitespaceColumn(a,b,d);case 8:return this._moveToViewCenterColumn(a,b,d);case 9:return this._moveToViewMaxColumn(a,b,d);case 10:return this._moveToViewLastNonWhitespaceColumn(a,b,d);default:return null}}static viewportMove(a,b,c,d,e){let f=a.getCompletelyVisibleViewRange(),g=a.coordinatesConverter.convertViewRangeToModelRange(f);switch(c){case 11:{let c=this._firstLineNumberInRange(a.model,g,e),f=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,f)]}case 13:{let c=this._lastLineNumberInRange(a.model,g,e),f=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,f)]}case 12:{let c=Math.round((g.startLineNumber+g.endLineNumber)/2),e=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,e)]}case 14:{let c=[];for(let e=0,g=b.length;e<g;e++){let g=b[e];c[e]=this.findPositionInViewportIfOutside(a,g,f,d)}return c}default:return null}}static findPositionInViewportIfOutside(a,b,c,d){let e=b.viewState.position.lineNumber;if(c.startLineNumber<=e&&e<=c.endLineNumber-1)return new g.MF(b.modelState,b.viewState);{let f;f=e>c.endLineNumber-1?c.endLineNumber-1:e<c.startLineNumber?c.startLineNumber:e;let i=h.I.vertical(a.cursorConfig,a,e,b.viewState.position.column,b.viewState.leftoverVisibleColumns,f,!1);return g.MF.fromViewState(b.viewState.move(d,i.lineNumber,i.column,i.leftoverVisibleColumns))}}static _firstLineNumberInRange(a,b,c){let d=b.startLineNumber;return b.startColumn!==a.getLineMinColumn(d)&&d++,Math.min(b.endLineNumber,d+c-1)}static _lastLineNumberInRange(a,b,c){let d=b.startLineNumber;return b.startColumn!==a.getLineMinColumn(d)&&d++,Math.max(d,b.endLineNumber-c+1)}static _moveLeft(a,b,c,d){return b.map(b=>{let e=a.getTextDirection(b.viewState.position.lineNumber)===l.z4.RTL;return g.MF.fromViewState(e?h.I.moveRight(a.cursorConfig,a,b.viewState,c,d):h.I.moveLeft(a.cursorConfig,a,b.viewState,c,d))})}static _moveHalfLineLeft(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],i=f.viewState.position.lineNumber,j=Math.round(a.getLineLength(i)/2);d[e]=g.MF.fromViewState(h.I.moveLeft(a.cursorConfig,a,f.viewState,c,j))}return d}static _moveRight(a,b,c,d){return b.map(b=>{let e=a.getTextDirection(b.viewState.position.lineNumber)===l.z4.RTL;return g.MF.fromViewState(e?h.I.moveLeft(a.cursorConfig,a,b.viewState,c,d):h.I.moveRight(a.cursorConfig,a,b.viewState,c,d))})}static _moveHalfLineRight(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],i=f.viewState.position.lineNumber,j=Math.round(a.getLineLength(i)/2);d[e]=g.MF.fromViewState(h.I.moveRight(a.cursorConfig,a,f.viewState,c,j))}return d}static _moveDownByViewLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromViewState(h.I.moveDown(a.cursorConfig,a,i.viewState,c,d))}return e}static _moveDownByModelLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromModelState(h.I.moveDown(a.cursorConfig,a.model,i.modelState,c,d))}return e}static _moveUpByViewLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromViewState(h.I.moveUp(a.cursorConfig,a,i.viewState,c,d))}return e}static _moveUpByModelLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromModelState(h.I.moveUp(a.cursorConfig,a.model,i.modelState,c,d))}return e}static _moveDownByFoldedLines(a,b,c,d){let e=a.model,f=e.getLineCount(),i=a.getHiddenAreas();return b.map(b=>{let j=b.modelState.hasSelection()&&!c?b.modelState.selection.endLineNumber:b.modelState.position.lineNumber,k=m._targetFoldedDown(j,d,i,f)-j;return 0===k?g.MF.fromModelState(b.modelState):g.MF.fromModelState(h.I.moveDown(a.cursorConfig,e,b.modelState,c,k))})}static _moveUpByFoldedLines(a,b,c,d){let e=a.model,f=a.getHiddenAreas();return b.map(b=>{let i=b.modelState.hasSelection()&&!c?b.modelState.selection.startLineNumber:b.modelState.position.lineNumber,j=m._targetFoldedUp(i,d,f),k=i-j;return 0===k?g.MF.fromModelState(b.modelState):g.MF.fromModelState(h.I.moveUp(a.cursorConfig,e,b.modelState,c,k))})}static _targetFoldedDown(a,b,c,d){let e=a,f=0;for(;f<c.length&&c[f].endLineNumber<e+1;)f++;for(let a=0;a<b;a++){if(e>=d)return d;let a=e+1;for(;f<c.length&&c[f].endLineNumber<a;)f++;if(f<c.length&&c[f].startLineNumber<=a&&(a=c[f].endLineNumber+1),a>d)break;e=a}return e}static _targetFoldedUp(a,b,c){let d=a,e=c.length-1;for(;e>=0&&c[e].startLineNumber>d-1;)e--;for(let a=0;a<b;a++){if(d<=1)return 1;let a=d-1;for(;e>=0&&c[e].startLineNumber>a;)e--;if(e>=0&&c[e].endLineNumber>=a&&(a=c[e].startLineNumber-1),a<1)break;d=a}return d}static _moveToViewPosition(a,b,c,d,e){return g.MF.fromViewState(b.viewState.move(c,d,e,0))}static _moveToModelPosition(a,b,c,d,e){return g.MF.fromModelState(b.modelState.move(c,d,e,0))}static _moveToViewMinColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineMinColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewFirstNonWhitespaceColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineFirstNonWhitespaceColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewCenterColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=Math.round((a.getLineMaxColumn(g)+a.getLineMinColumn(g))/2);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewMaxColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineMaxColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewLastNonWhitespaceColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineLastNonWhitespaceColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}}(d=e||(e={})).metadata={description:"Move cursor to a logical position in the view",args:[{name:"Cursor move argument object",description:`Property-value pairs that can be passed through this argument:
|
|
454
|
+
${this._themeCSS}`,this._styleElements.forEach(a=>a.textContent=this._allCSS)}getFileIconTheme(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}}getProductIconTheme(){return this._builtInProductIconTheme}}class jt{getParserClass(){throw Error("not implemented in StandaloneTreeSitterLibraryService")}supportsLanguage(a,b){return!1}getLanguage(a,b,c){}getInjectionQueries(a,b){return null}getHighlightingQueries(a,b){return null}}var ju=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},jv=function(a,b){return function(c,d){b(c,d,a)}};class jw{constructor(a){this.disposed=!1,this.model=a,this._onWillDispose=new a$.vl}get textEditorModel(){return this.model}dispose(){this.disposed=!0,this._onWillDispose.fire()}}let jx=class{constructor(a){this.modelService=a}createModelReference(a){let b=this.modelService.getModel(a);return b?Promise.resolve(new _.BO(new jw(b))):Promise.reject(Error("Model not found"))}};jx=ju([jv(0,ap.S)],jx);class jy{static{this.NULL_PROGRESS_RUNNER={done:()=>{},total:()=>{},worked:()=>{}}}show(){return jy.NULL_PROGRESS_RUNNER}async showWhile(a,b){await a}}class jz{withProgress(a,b,c){return b({report:()=>{}})}}class jA{constructor(){this.isExtensionDevelopment=!1,this.isBuilt=!1}}class jB{async confirm(a){return{confirmed:this.doConfirm(a.message,a.detail),checkboxChecked:!1}}doConfirm(a,b){let c=a;return b&&(c=c+"\n\n"+b),$.G.confirm(c)}async prompt(a){let b;if(this.doConfirm(a.message,a.detail)){let c=[...a.buttons??[]];a.cancelButton&&"string"!=typeof a.cancelButton&&"boolean"!=typeof a.cancelButton&&c.push(a.cancelButton),b=await c[0]?.run({checkboxChecked:!1})}return{result:b}}async error(a,b){await this.prompt({type:bD.A.Error,message:a,detail:b})}}class jC{static{this.NO_OP=new bF.Kz}info(a){return this.notify({severity:bD.A.Info,message:a})}warn(a){return this.notify({severity:bD.A.Warning,message:a})}error(a){return this.notify({severity:bD.A.Error,message:a})}notify(a){switch(a.severity){case bD.A.Error:console.error(a.message);break;case bD.A.Warning:console.warn(a.message);break;default:console.log(a.message)}return jC.NO_OP}prompt(a,b,c,d){return jC.NO_OP}status(a,b){return{close:()=>{}}}}let jD=class{constructor(a){this._onWillExecuteCommand=new a$.vl,this._onDidExecuteCommand=new a$.vl,this.onDidExecuteCommand=this._onDidExecuteCommand.event,this._instantiationService=a}executeCommand(a,...b){let c=c0.w.getCommand(a);if(!c)return Promise.reject(Error(`command '${a}' not found`));try{this._onWillExecuteCommand.fire({commandId:a,args:b});let d=this._instantiationService.invokeFunction.apply(this._instantiationService,[c.handler,...b]);return this._onDidExecuteCommand.fire({commandId:a,args:b}),Promise.resolve(d)}catch(a){return Promise.reject(a)}}};jD=ju([jv(0,aZ._Y)],jD);let jE=class extends d4{constructor(a,b,c,d,e,f){super(a,b,c,d,e),this._cachedResolver=null,this._dynamicKeybindings=[],this._domNodeListeners=[];const g=a=>{let b=new _.Cm;b.add((0,a_.ko)(a,a_.Bx.KEY_DOWN,a=>{let b=new a1.Z(a);this._dispatch(b,b.target)&&(b.preventDefault(),b.stopPropagation())})),b.add((0,a_.ko)(a,a_.Bx.KEY_UP,a=>{let b=new a1.Z(a);this._singleModifierDispatch(b,b.target)&&b.preventDefault()})),this._domNodeListeners.push(new jF(a,b))},h=a=>{for(let b=0;b<this._domNodeListeners.length;b++){let c=this._domNodeListeners[b];c.domNode===a&&(this._domNodeListeners.splice(b,1),c.dispose())}},i=a=>{a.getOption(70)||g(a.getContainerDomNode())};this._register(f.onCodeEditorAdd(i)),this._register(f.onCodeEditorRemove(a=>{a.getOption(70)||h(a.getContainerDomNode())})),f.listCodeEditors().forEach(i);const j=a=>{g(a.getContainerDomNode())};this._register(f.onDiffEditorAdd(j)),this._register(f.onDiffEditorRemove(a=>{h(a.getContainerDomNode())})),f.listDiffEditors().forEach(j)}addDynamicKeybinding(a,b,c,d){return(0,_.qE)(c0.w.registerCommand(a,c),this.addDynamicKeybindings([{keybinding:b,command:a,when:d}]))}addDynamicKeybindings(a){let b=a.map(a=>({keybinding:(0,cQ.Zv)(a.keybinding,bc.OS),command:a.command??null,commandArgs:a.commandArgs,when:a.when,weight1:1e3,weight2:0,extensionId:null,isBuiltinExtension:!1}));return this._dynamicKeybindings=this._dynamicKeybindings.concat(b),this.updateResolver(),(0,_.s)(()=>{for(let a=0;a<this._dynamicKeybindings.length;a++)if(this._dynamicKeybindings[a]===b[0]){this._dynamicKeybindings.splice(a,b.length),this.updateResolver();return}})}updateResolver(){this._cachedResolver=null,this._onDidUpdateKeybindings.fire()}_getResolver(){if(!this._cachedResolver){let a=this._toNormalizedKeybindingItems(br.f.getDefaultKeybindings(),!0),b=this._toNormalizedKeybindingItems(this._dynamicKeybindings,!1);this._cachedResolver=new d0(a,b,a=>this._log(a))}return this._cachedResolver}_documentHasFocus(){return $.G.document.hasFocus()}_toNormalizedKeybindingItems(a,b){let c=[],d=0;for(let e of a){let a=e.when||void 0,f=e.keybinding;if(f)for(let g of ea.resolveKeybinding(f,bc.OS))c[d++]=new d6(g,e.command,e.commandArgs,a,b,null,!1);else c[d++]=new d6(void 0,e.command,e.commandArgs,a,b,null,!1)}return c}resolveKeyboardEvent(a){return new ea([new cQ.dG(a.ctrlKey,a.shiftKey,a.altKey,a.metaKey,a.keyCode)],bc.OS)}};jE=ju([jv(0,bU.fN),jv(1,c0.d),jv(2,bX.k),jv(3,bF.Ot),jv(4,cv.rr),jv(5,ae.T)],jE);class jF extends _.jG{constructor(a,b){super(),this.domNode=a,this._register(b)}}function jG(a){return!!a&&"object"==typeof a&&(!a.overrideIdentifier||"string"==typeof a.overrideIdentifier)&&(!a.resource||a.resource instanceof ab.r)}let jH=class{constructor(a){this.logService=a,this._onDidChangeConfiguration=new a$.vl,this.onDidChangeConfiguration=this._onDidChangeConfiguration.event;const b=new da(a);this._configuration=new c8(b.reload(),c5.createEmptyModel(a),c5.createEmptyModel(a),c5.createEmptyModel(a),c5.createEmptyModel(a),c5.createEmptyModel(a),new b4.fT,c5.createEmptyModel(a),new b4.fT,a),b.dispose()}getValue(a,b){let c="string"==typeof a?a:void 0,d=jG(a)?a:jG(b)?b:{};return this._configuration.getValue(c,d,void 0)}updateValues(a){let b={data:this._configuration.toData()},c=[];for(let b of a){let[a,d]=b;this.getValue(a)!==d&&(this._configuration.updateValue(a,d),c.push(a))}if(c.length>0){let a=new c9({keys:c,overrides:[]},b,this._configuration,void 0,this.logService);a.source=8,this._onDidChangeConfiguration.fire(a)}return Promise.resolve()}updateValue(a,b,c,d){return this.updateValues([[a,b]])}inspect(a,b={}){return this._configuration.inspect(a,b,void 0)}};jH=ju([jv(0,cv.rr)],jH);let jI=class extends _.jG{constructor(a,b,c){super(),this.configurationService=a,this.modelService=b,this.languageService=c,this._onDidChangeConfiguration=this._register(new a$.vl),this._register(this.configurationService.onDidChangeConfiguration(a=>{this._onDidChangeConfiguration.fire({affectedKeys:a.affectedKeys,affectsConfiguration:(b,c)=>a.affectsConfiguration(c)})}))}getValue(a,b,c){let d=g$.y.isIPosition(b)?b:null,e=d?"string"==typeof c?c:void 0:"string"==typeof b?b:void 0,f=a?this.getLanguage(a,d):void 0;return void 0===e?this.configurationService.getValue({resource:a,overrideIdentifier:f}):this.configurationService.getValue(e,{resource:a,overrideIdentifier:f})}getLanguage(a,b){let c=this.modelService.getModel(a);return c?b?c.getLanguageIdAtPosition(b.lineNumber,b.column):c.getLanguageId():this.languageService.guessLanguageIdByFilepathOrFirstLine(a)}};jI=ju([jv(0,aB.pG),jv(1,ap.S),jv(2,al.L)],jI);let jJ=class{constructor(a){this.configurationService=a}getEOL(a,b){let c=this.configurationService.getValue("files.eol",{overrideIdentifier:b,resource:a});return c&&"string"==typeof c&&"auto"!==c?c:bc.j9||bc.zx?"\n":"\r\n"}};jJ=ju([jv(0,aB.pG)],jJ);class jK{publicLog2(){}}class jL{static{this.SCHEME="inmemory"}constructor(){const a=ab.r.from({scheme:jL.SCHEME,authority:"model",path:"/"});this.workspace={id:gJ.cn,folders:[new gJ.mX({uri:a,name:"",index:0})]}}getWorkspace(){return this.workspace}getWorkspaceFolder(a){return a&&a.scheme===jL.SCHEME?this.workspace.folders[0]:null}}function jM(a,b,c){if(!b||!(a instanceof jH))return;let d=[];Object.keys(b).forEach(a=>{(gY()[`editor.${a}`]||0)&&d.push([`editor.${a}`,b[a]]),c&&(gY()[`diffEditor.${a}`]||0)&&d.push([`diffEditor.${a}`,b[a]])}),d.length>0&&a.updateValues(d)}let jN=class{constructor(a){this._modelService=a}hasPreviewHandler(){return!1}async apply(a,b){let c=Array.isArray(a)?a:gL.jN.convert(a),d=new Map;for(let a of c){if(!(a instanceof gL.cw))throw Error("bad edit - only text edits are supported");let b=this._modelService.getModel(a.resource);if(!b)throw Error("bad edit - model not found");if("number"==typeof a.versionId&&b.getVersionId()!==a.versionId)throw Error("bad state - model changed in the meantime");let c=d.get(b);c||(c=[],d.set(b,c)),c.push(gZ.k.replaceMove(cw.Q.lift(a.textEdit.range),a.textEdit.text))}let e=0,f=0;for(let[a,b]of d)a.pushStackElement(),a.pushEditOperations([],b,()=>[]),a.pushStackElement(),f+=1,e+=b.length;return{ariaSummary:(0,aa.GP)(hu.tu.bulkEditServiceSummary,e,f),isApplied:e>0}}};jN=ju([jv(0,ap.S)],jN);class jO{getUriLabel(a,b){return"file"===a.scheme?a.fsPath:a.path}getUriBasenameLabel(a){return(0,cR.P8)(a)}}let jP=class extends dN{constructor(a,b){super(a),this._codeEditorService=b}showContextView(a,b,c){if(!b){let a=this._codeEditorService.getFocusedCodeEditor()||this._codeEditorService.getActiveCodeEditor();a&&(b=a.getContainerDomNode())}return super.showContextView(a,b,c)}};jP=ju([jv(0,bm.x),jv(1,ae.T)],jP);class jQ{constructor(){this._neverEmitter=new a$.vl,this.onDidChangeTrust=this._neverEmitter.event}isWorkspaceTrusted(){return!0}}class jR extends ha{constructor(){super()}}class jS extends gu{constructor(){super(new cv.Cr)}}let jT=class extends dL{constructor(a,b,c,d,e,f){super(a,b,c,d,e,f),this.configure({blockMouse:!1})}};jT=ju([jv(0,bX.k),jv(1,bF.Ot),jv(2,aY.l),jv(3,a0.b),jv(4,bT.ez),jv(5,bU.fN)],jT);class jU{async playSignal(a,b){}}class jV{constructor(){this.onDidChangeDefaultAccount=a$.Jh.None}async getDefaultAccount(){return null}}(0,aQ.v)(gI.d,ja,0),(0,aQ.v)(cv.rr,jS,0),(0,aQ.v)(aB.pG,jH,0),(0,aQ.v)(hk.U,jI,0),(0,aQ.v)(hk.J,jJ,0),(0,aQ.v)(gJ.VR,jL,0),(0,aQ.v)(eb,jO,0),(0,aQ.v)(bX.k,jK,0),(0,aQ.v)(bE,jB,0),(0,aQ.v)(dR.k,jA,0),(0,aQ.v)(bF.Ot,jC,0),(0,aQ.v)(gx,gB,0),(0,aQ.v)(al.L,jR,0),(0,aQ.v)(hv,js,0),(0,aQ.v)(ap.S,hq,0),(0,aQ.v)(hc.A,hg,0),(0,aQ.v)(bU.fN,dn,0),(0,aQ.v)(gD.G5,jz,0),(0,aQ.v)(gD.N8,jy,0),(0,aQ.v)(bW.CS,bW.pc,0),(0,aQ.v)(gL.nu,jN,0),(0,aQ.v)(gK,jQ,0),(0,aQ.v)(hs.b,jx,0),(0,aQ.v)(bd.j,cT,0),(0,aQ.v)(fD,fE,0),(0,aQ.v)(c0.d,jD,0),(0,aQ.v)(a0.b,jE,0),(0,aQ.v)(bV.GK,i3,0),(0,aQ.v)(aY.l,jP,0),(0,aQ.v)(gC.Cr,gR,0),(0,aQ.v)(c_.h,c$,0),(0,aQ.v)(aY.Z,jT,0),(0,aQ.v)(bT.ez,cV.$,0),(0,aQ.v)(cU.Nt,jU,0),(0,aQ.v)(ht.t,jt,0),(0,aQ.v)(cv.xd,cv.DA,0),(0,aQ.v)(dO,dP,0),(0,aQ.v)(dQ,jV,0),(0,aQ.v)(gS,gT,0),(0,aQ.v)(gE.u,gH,0),function(a){let b=new dV.a;for(let[a,c]of(0,aQ.N)())b.set(a,c);let c=new dX(b,!0);b.set(aZ._Y,c),a.get=function(a){d||f({});let e=b.get(a);if(!e)throw Error("Missing service "+a);return e instanceof dS.d?c.invokeFunction(b=>b.get(a)):e};let d=!1,e=new a$.vl;function f(a){if(d)return c;for(let[a,c]of(d=!0,(0,aQ.N)()))b.get(a)||b.set(a,c);for(let c in a)if(a.hasOwnProperty(c)){let d=(0,aZ.u1)(c);b.get(d)instanceof dS.d&&b.set(d,a[c])}for(let a of g_.slice(0))try{c.createInstance(a)}catch(a){(0,bB.dz)(a)}return e.fire(),c}a.initialize=f,a.withServices=function(a){if(d)return a();let b=new _.Cm,c=b.add(e.event(()=>{c.dispose(),b.add(a())}));return b}}(W||(W={}));var jW=c(16202),jX=c(79116),jY=c(28524),jZ=c(18663),j$=c(28952),j_=c(24453);c(49852);var j0=function(a,b){return function(c,d){b(c,d,a)}};let j1=class{static{X=this}static{this._ttpTokenizer=(0,ar.H)("tokenizeToString",{createHTML:a=>a})}constructor(a,b){this._configurationService=a,this._languageService=b}async renderCodeBlock(a,b,c){let d,e=(0,j_.z9)(c.context)?c.context:void 0;a?d=this._languageService.getLanguageIdByLanguageName(a):e&&(d=e.getModel()?.getLanguageId()),d||(d=am.vH);let f=await (0,jZ.Yj)(this._languageService,b,d),g=X._ttpTokenizer?X._ttpTokenizer.createHTML(f)??f:f,h=document.createElement("span");h.innerHTML=g;let i=h.querySelector(".monaco-tokenized-source");return(0,a_.sb)(i)?((0,j$.M)(i,this.getFontInfo(e)),h):document.createElement("span")}getFontInfo(a){return a?a.getOption(59):(0,jY.h)({fontFamily:this._configurationService.getValue("editor").fontFamily},1)}};j1=X=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([j0(0,aB.pG),j0(1,al.L)],j1);var j2=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},j3=function(a,b){return function(c,d){b(c,d,a)}};let j4=0,j5=!1,j6=class extends aO.x{constructor(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){const p={...b};p.ariaLabel=p.ariaLabel||hu.vp.editorViewAccessibleLabel,super(a,p,{},c,d,e,f,i,j,k,l,m,o),h instanceof jE?this._standaloneKeybindingService=h:this._standaloneKeybindingService=null,function(a){if(!a){if(j5)return;j5=!0}(0,aN.vr)(a||$.G.document.body)}(p.ariaContainerElement),(0,eh.MW)((a,b)=>c.createInstance(aX.fO,a,{instantHover:b},{})),(0,eg.e)(g),n.setDefaultCodeBlockRenderer(c.createInstance(j1))}addCommand(a,b,c){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;let d="DYNAMIC_"+ ++j4,e=bU.M$.deserialize(c);return this._standaloneKeybindingService.addDynamicKeybinding(d,a,b,e),d}createContextKey(a,b){return this._contextKeyService.createKey(a,b)}addAction(a){if("string"!=typeof a.id||"string"!=typeof a.label||"function"!=typeof a.run)throw Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),_.jG.None;let b=a.id,c=a.label,d=bU.M$.and(bU.M$.equals("editorId",this.getId()),bU.M$.deserialize(a.precondition)),e=a.keybindings,f=bU.M$.and(d,bU.M$.deserialize(a.keybindingContext)),g=a.contextMenuGroupId||null,h=a.contextMenuOrder||0,i=(b,...c)=>Promise.resolve(a.run(this,...c)),j=new _.Cm,k=this.getId()+":"+b;if(j.add(c0.w.registerCommand(k,i)),g&&j.add(bT.ZG.appendMenuItem(bT.D8.EditorContext,{command:{id:k,title:c},when:d,group:g,order:h})),Array.isArray(e))for(let a of e)j.add(this._standaloneKeybindingService.addDynamicKeybinding(k,a,i,f));let l=new aP.f(k,c,c,void 0,d,(...b)=>Promise.resolve(a.run(this,...b)),this._contextKeyService);return this._actions.set(b,l),j.add((0,_.s)(()=>{this._actions.delete(b)})),j}_triggerCommand(a,b){if(this._codeEditorService instanceof cK)try{this._codeEditorService.setActiveCodeEditor(this),super._triggerCommand(a,b)}finally{this._codeEditorService.setActiveCodeEditor(null)}else super._triggerCommand(a,b)}};j6=j2([j3(2,aZ._Y),j3(3,ae.T),j3(4,c0.d),j3(5,bU.fN),j3(6,aX.TN),j3(7,a0.b),j3(8,aR.Gy),j3(9,bF.Ot),j3(10,bd.j),j3(11,jW.JZ),j3(12,ct.u),j3(13,ba.TN),j3(14,gE.u)],j6);let j7=class extends j6{constructor(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){let s;const t={...b};jM(k,t,!1);const u=i.registerEditorContainer(a);"string"==typeof t.theme&&i.setTheme(t.theme),void 0!==t.autoDetectHighContrast&&i.setAutoDetectHighContrast(!!t.autoDetectHighContrast);const v=t.model;if(delete t.model,super(a,t,c,d,e,f,g,h,i,j,l,o,p,q,r),this._configurationService=k,this._standaloneThemeService=i,this._register(u),void 0===v){const a=n.getLanguageIdByMimeType(t.language)||t.language||am.vH;s=j9(m,n,t.value||"",a,void 0),this._ownsModel=!0}else s=v,this._ownsModel=!1;if(this._attachModel(s),s){const a={oldModelUrl:null,newModelUrl:s.uri};this._onDidChangeModel.fire(a)}}updateOptions(a){jM(this._configurationService,a,!1),"string"==typeof a.theme&&this._standaloneThemeService.setTheme(a.theme),void 0!==a.autoDetectHighContrast&&this._standaloneThemeService.setAutoDetectHighContrast(!!a.autoDetectHighContrast),super.updateOptions(a)}_postDetachModelCleanup(a){super._postDetachModelCleanup(a),a&&this._ownsModel&&(a.dispose(),this._ownsModel=!1)}};j7=j2([j3(2,aZ._Y),j3(3,ae.T),j3(4,c0.d),j3(5,bU.fN),j3(6,aX.TN),j3(7,a0.b),j3(8,hv),j3(9,bF.Ot),j3(10,aB.pG),j3(11,bd.j),j3(12,ap.S),j3(13,al.L),j3(14,jW.JZ),j3(15,ct.u),j3(16,ba.TN),j3(17,gE.u)],j7);let j8=class extends jX.T{constructor(a,b,c,d,e,f,g,h,i,j,k,l){const m={...b};jM(h,m,!0);const n=f.registerEditorContainer(a);"string"==typeof m.theme&&f.setTheme(m.theme),void 0!==m.autoDetectHighContrast&&f.setAutoDetectHighContrast(!!m.autoDetectHighContrast),super(a,m,{},d,c,e,l,j),this._configurationService=h,this._standaloneThemeService=f,this._register(n)}updateOptions(a){jM(this._configurationService,a,!0),"string"==typeof a.theme&&this._standaloneThemeService.setTheme(a.theme),void 0!==a.autoDetectHighContrast&&this._standaloneThemeService.setAutoDetectHighContrast(!!a.autoDetectHighContrast),super.updateOptions(a)}_createInnerEditor(a,b,c){return a.createInstance(j6,b,c)}getOriginalEditor(){return super.getOriginalEditor()}getModifiedEditor(){return super.getModifiedEditor()}addCommand(a,b,c){return this.getModifiedEditor().addCommand(a,b,c)}createContextKey(a,b){return this.getModifiedEditor().createContextKey(a,b)}addAction(a){return this.getModifiedEditor().addAction(a)}};function j9(a,b,c,d,e){if(c=c||"",!d){let d=c.indexOf("\n"),f=c;return -1!==d&&(f=c.substring(0,d)),ka(a,c,b.createByFilepathOrFirstLine(e||null,f),e)}return ka(a,c,b.createById(d),e)}function ka(a,b,c,d){return a.createModel(b,c,d)}j8=j2([j3(2,aZ._Y),j3(3,bU.fN),j3(4,ae.T),j3(5,hv),j3(6,bF.Ot),j3(7,aB.pG),j3(8,aY.Z),j3(9,gD.N8),j3(10,c_.h),j3(11,cU.Nt)],j8);var kb=c(52132);(0,aS.x1)("multiDiffEditor.headerBackground",{dark:"#262626",light:"tab.inactiveBackground",hcDark:"tab.inactiveBackground",hcLight:"tab.inactiveBackground"},(0,a3.kg)(158,"The background color of the diff editor's header")),(0,aS.x1)("multiDiffEditor.background",aU.Yt,(0,a3.kg)(159,"The background color of the multi file diff editor")),(0,aS.x1)("multiDiffEditor.border",{dark:"sideBarSectionHeader.border",light:"#cccccc",hcDark:"sideBarSectionHeader.border",hcLight:"#cccccc"},(0,a3.kg)(160,"The border color of the multi file diff editor"));var kc=c(89676),kd=c(91291),ke=c(40002),kf=c(14960),kg=function(a,b){return function(c,d){b(c,d,a)}};class kh{constructor(a,b){this.viewModel=a,this.deltaScrollVertical=b}getId(){return this.viewModel}}let ki=class extends _.jG{constructor(a,b,c,d,e){super(),this._container=a,this._overflowWidgetsDomNode=b,this._workbenchUIElementFactory=c,this._instantiationService=d,this._viewModel=(0,gG.FY)(this,void 0),this._collapsed=(0,kf.un)(this,a=>this._viewModel.read(a)?.collapsed.read(a)),this._editorContentHeight=(0,gG.FY)(this,500),this.contentHeight=(0,kf.un)(this,a=>(this._collapsed.read(a)?0:this._editorContentHeight.read(a))+this._outerEditorHeight),this._modifiedContentWidth=(0,gG.FY)(this,0),this._modifiedWidth=(0,gG.FY)(this,0),this._originalContentWidth=(0,gG.FY)(this,0),this._originalWidth=(0,gG.FY)(this,0),this.maxScroll=(0,kf.un)(this,a=>{let b=this._modifiedContentWidth.read(a)-this._modifiedWidth.read(a),c=this._originalContentWidth.read(a)-this._originalWidth.read(a);return b>c?{maxScroll:b,width:this._modifiedWidth.read(a)}:{maxScroll:c,width:this._originalWidth.read(a)}}),this._elements=(0,a_.h)("div.multiDiffEntry",[(0,a_.h)("div.header@header",[(0,a_.h)("div.header-content",[(0,a_.h)("div.collapse-button@collapseButton"),(0,a_.h)("div.file-path",[(0,a_.h)("div.title.modified.show-file-icons@primaryPath",[]),(0,a_.h)("div.status.deleted@status",["R"]),(0,a_.h)("div.title.original.show-file-icons@secondaryPath",[])]),(0,a_.h)("div.actions@actions")])]),(0,a_.h)("div.editorParent",[(0,a_.h)("div.editorContainer@editor")])]),this.editor=this._register(this._instantiationService.createInstance(jX.T,this._elements.editor,{overflowWidgetsDomNode:this._overflowWidgetsDomNode,fixedOverflowWidgets:!0},{})),this.isModifedFocused=(0,kd.U)(this.editor.getModifiedEditor()).isFocused,this.isOriginalFocused=(0,kd.U)(this.editor.getOriginalEditor()).isFocused,this.isFocused=(0,kf.un)(this,a=>this.isModifedFocused.read(a)||this.isOriginalFocused.read(a)),this._resourceLabel=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.primaryPath)):void 0,this._resourceLabel2=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.secondaryPath)):void 0,this._dataStore=this._register(new _.Cm),this._headerHeight=40,this._lastScrollTop=-1,this._isSettingScrollTop=!1;const f=this._register(new hY.$(this._elements.collapseButton,{}));this._register((0,eJ.fm)(a=>{f.element.className="",f.icon=this._collapsed.read(a)?dx.W.chevronRight:dx.W.chevronDown})),this._register(f.onDidClick(()=>{this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0)})),this._workbenchUIElementFactory.headerClickToCollapse&&(this._elements.header.tabIndex=0,this._elements.header.setAttribute("role","button"),this._register((0,a_.ko)(this._elements.header,a_.Bx.CLICK,a=>{let b=a.target;!(b instanceof Element)||b.closest(".actions")||b.closest(".collapse-button")||this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0)})),this._register((0,a_.ko)(this._elements.header,a_.Bx.KEY_DOWN,a=>{if("Enter"===a.key||" "===a.key){let b=a.target;b instanceof Element&&(b.closest(".actions")||b.closest(".collapse-button"))||(a.preventDefault(),this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0))}}))),this._register((0,eJ.fm)(a=>{let b=this._collapsed.read(a);this._elements.editor.style.display=b?"none":"block",this._workbenchUIElementFactory.headerClickToCollapse&&this._elements.header.setAttribute("aria-expanded",String(!b))})),this._register(this.editor.getModifiedEditor().onDidLayoutChange(a=>{let b=this.editor.getModifiedEditor().getLayoutInfo().contentWidth;this._modifiedWidth.set(b,void 0)})),this._register(this.editor.getOriginalEditor().onDidLayoutChange(a=>{let b=this.editor.getOriginalEditor().getLayoutInfo().contentWidth;this._originalWidth.set(b,void 0)})),this._register(this.editor.onDidContentSizeChange(a=>{(0,ik.YY)(b=>{this._editorContentHeight.set(a.contentHeight,b),this._modifiedContentWidth.set(this.editor.getModifiedEditor().getContentWidth(),b),this._originalContentWidth.set(this.editor.getOriginalEditor().getContentWidth(),b)})})),this._register(this.editor.getOriginalEditor().onDidScrollChange(a=>{if(this._isSettingScrollTop||!a.scrollTopChanged||!this._data)return;let b=a.scrollTop-this._lastScrollTop;this._data.deltaScrollVertical(b)})),this._register((0,eJ.fm)(a=>{let b=this._viewModel.read(a)?.isActive.read(a);this._elements.root.classList.toggle("active",b)})),this._container.appendChild(this._elements.root),this._outerEditorHeight=this._headerHeight,this._contextKeyService=this._register(e.createScoped(this._elements.actions));const g=this._register(this._instantiationService.createChild(new dV.a([bU.fN,this._contextKeyService])));this._register(g.createInstance(kc.m,this._elements.actions,bT.D8.MultiDiffEditorFileToolbar,{actionRunner:this._register(new ke.I(()=>this._viewModel.get()?.modifiedUri??this._viewModel.get()?.originalUri)),menuOptions:{shouldForwardArgs:!0},toolbarOptions:{primaryGroup:a=>a.startsWith("navigation")},actionViewItemProvider:(a,b)=>(0,dr.rN)(g,a,b)}))}setScrollLeft(a){this._modifiedContentWidth.get()-this._modifiedWidth.get()>this._originalContentWidth.get()-this._originalWidth.get()?this.editor.getModifiedEditor().setScrollLeft(a):this.editor.getOriginalEditor().setScrollLeft(a)}setData(a){function b(a){return{...a,scrollBeyondLastLine:!1,hideUnchangedRegions:{enabled:!0},scrollbar:{vertical:"hidden",horizontal:"hidden",handleMouseWheel:!1,useShadows:!1},renderOverviewRuler:!1,fixedOverflowWidgets:!0,overviewRulerBorder:!1}}if(this._data=a,!a)return void(0,ik.YY)(a=>{this._viewModel.set(void 0,a),this.editor.setDiffModel(null,a),this._dataStore.clear()});let c=a.viewModel.documentDiffItem;if((0,ik.YY)(d=>{this._resourceLabel?.setUri(a.viewModel.modifiedUri??a.viewModel.originalUri,{strikethrough:void 0===a.viewModel.modifiedUri});let e=!1,f=!1,g=!1,h="";a.viewModel.modifiedUri&&a.viewModel.originalUri&&a.viewModel.modifiedUri.path!==a.viewModel.originalUri.path?(h="R",e=!0):a.viewModel.modifiedUri?a.viewModel.originalUri||(h="A",g=!0):(h="D",f=!0),this._elements.status.classList.toggle("renamed",e),this._elements.status.classList.toggle("deleted",f),this._elements.status.classList.toggle("added",g),this._elements.status.innerText=h,this._resourceLabel2?.setUri(e?a.viewModel.originalUri:void 0,{strikethrough:!0}),this._dataStore.clear(),this._viewModel.set(a.viewModel,d),this.editor.setDiffModel(a.viewModel.diffEditorViewModelRef,d),this.editor.updateOptions(b(c.options??{}))}),c.onOptionsDidChange&&this._dataStore.add(c.onOptionsDidChange(()=>{this.editor.updateOptions(b(c.options??{}))})),a.viewModel.isAlive.recomputeInitiallyAndOnChange(this._dataStore,a=>{a||this.setData(void 0)}),a.viewModel.documentDiffItem.contextKeys)for(let[b,c]of Object.entries(a.viewModel.documentDiffItem.contextKeys))this._contextKeyService.createKey(b,c)}render(a,b,c,d){this._elements.root.style.visibility="visible",this._elements.root.style.top=`${a.start}px`,this._elements.root.style.height=`${a.length}px`,this._elements.root.style.width=`${b}px`,this._elements.root.style.position="absolute";let e=a.length-this._headerHeight,f=Math.max(0,Math.min(d.start-a.start,e));this._elements.header.style.transform=`translateY(${f}px)`,(0,ik.YY)(c=>{this.editor.layout({width:b-16-2,height:a.length-this._outerEditorHeight})});try{this._isSettingScrollTop=!0,this._lastScrollTop=c,this.editor.getOriginalEditor().setScrollTop(c)}finally{this._isSettingScrollTop=!1}this._elements.header.classList.toggle("shadow",f>0||c>0),this._elements.header.classList.toggle("collapsed",f===e)}hide(){this._elements.root.style.top="-100000px",this._elements.root.style.visibility="hidden"}};ki=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([kg(3,aZ._Y),kg(4,bU.fN)],ki);var kj=c(88042),kk=c(39482),kl=c(77509),km=c(93427),kn=c(95415);class ko{constructor(a){this._create=a,this._unused=new Set,this._used=new Set,this._itemData=new Map}getUnusedObj(a){let b;if(0===this._unused.size)b=this._create(a),this._itemData.set(b,a);else{let c=[...this._unused.values()];b=c.find(b=>this._itemData.get(b).getId()===a.getId())??c[0],this._unused.delete(b),this._itemData.set(b,a),b.setData(a)}return this._used.add(b),{object:b,dispose:()=>{this._used.delete(b),this._unused.size>5?b.dispose():this._unused.add(b)}}}dispose(){for(let a of this._used)a.dispose();for(let a of this._unused)a.dispose();this._used.clear(),this._unused.clear()}}c(96837);var kp=function(a,b){return function(c,d){b(c,d,a)}};let kq=class extends _.jG{constructor(a,b,c,d,e,f){super(),this._element=a,this._dimension=b,this._viewModel=c,this._workbenchUIElementFactory=d,this._parentContextKeyService=e,this._parentInstantiationService=f,this._scrollableElements=(0,a_.h)("div.scrollContent",[(0,a_.h)("div@content",{style:{overflow:"hidden"}}),(0,a_.h)("div.monaco-editor@overflowWidgetsDomNode",{})]),this._scrollable=this._register(new em.yE({forceIntegerValues:!1,scheduleAtNextAnimationFrame:a=>(0,a_.PG)((0,a_.zk)(this._element),a),smoothScrollDuration:100})),this._scrollableElement=this._register(new a2.oO(this._scrollableElements.root,{vertical:1,horizontal:1,useShadows:!1},this._scrollable)),this._elements=(0,a_.h)("div.monaco-component.multiDiffEditor",{},[(0,a_.h)("div",{},[this._scrollableElement.getDomNode()]),(0,a_.h)("div.placeholder@placeholder",{},[(0,a_.h)("div")])]),this._sizeObserver=this._register(new kn.pN(this._element,void 0)),this._objectPool=this._register(new ko(a=>{let b=this._instantiationService.createInstance(ki,this._scrollableElements.content,this._scrollableElements.overflowWidgetsDomNode,this._workbenchUIElementFactory);return b.setData(a),b})),this.scrollTop=(0,gF.y0)(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollTop),this.scrollLeft=(0,gF.y0)(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollLeft),this._viewItemsInfo=(0,kf.un)(this,a=>{let b=this._viewModel.read(a);if(!b)return{items:[],getItem:a=>{throw new bB.D7}};let c=b.items.read(a),d=new Map;return{items:c.map(b=>{let c=a.store.add(new kr(b,this._objectPool,this.scrollLeft,a=>{this._scrollableElement.setScrollPosition({scrollTop:this._scrollableElement.getScrollPosition().scrollTop+a})})),e=this._lastDocStates?.[c.getKey()];return e&&(0,ik.Rn)(a=>{c.setViewState(e,a)}),d.set(b,c),c}),getItem:a=>d.get(a)}}),this._viewItems=this._viewItemsInfo.map(this,a=>a.items),this._spaceBetweenPx=0,this._totalHeight=this._viewItems.map(this,(a,b)=>a.reduce((a,c)=>a+c.contentHeight.read(b)+this._spaceBetweenPx,0)),this.activeControl=(0,kf.un)(this,a=>{let b=this._viewModel.read(a)?.activeDiffItem.read(a);if(!b)return;let c=this._viewItemsInfo.read(a).getItem(b);return c.template.read(a)?.editor}),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._element)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new dV.a([bU.fN,this._contextKeyService]))),this._contextKeyService.createKey(km.R.inMultiDiffEditor.key,!0),this._lastDocStates={},this._register((0,eJ.yC)((a,b)=>{let c=this._viewModel.read(a);if(c&&c.contextKeys)for(let[a,d]of Object.entries(c.contextKeys)){let c=this._contextKeyService.createKey(a,void 0);c.set(d),b.add((0,_.s)(()=>c.reset()))}}));const g=this._parentContextKeyService.createKey(km.R.multiDiffEditorAllCollapsed.key,!1);this._register((0,eJ.fm)(a=>{let b=this._viewModel.read(a);if(b){let c=b.items.read(a).every(b=>b.collapsed.read(a));g.set(c)}})),this._register((0,eJ.fm)(a=>{let b=this._dimension.read(a);this._sizeObserver.observe(b)}));const h=(0,kf.un)(a=>{if(this._viewItems.read(a).length>0)return;let b=this._viewModel.read(a);return!b||b.isLoading.read(a)?(0,a3.kg)(161,"Loading..."):(0,a3.kg)(162,"No Changed Files")});this._register((0,eJ.fm)(a=>{let b=h.read(a);this._elements.placeholder.innerText=b??"",this._elements.placeholder.classList.toggle("visible",!!b)})),this._scrollableElements.content.style.position="relative",this._register((0,eJ.fm)(a=>{let b=this._sizeObserver.height.read(a);this._scrollableElements.root.style.height=`${b}px`;let c=this._totalHeight.read(a);this._scrollableElements.content.style.height=`${c}px`;let d=this._sizeObserver.width.read(a),e=d,f=this._viewItems.read(a),g=(0,kj.Cn)(f,(0,cL.VE)(b=>b.maxScroll.read(a).maxScroll,cL.U9));g&&(e=d+g.maxScroll.read(a).maxScroll),this._scrollableElement.setScrollDimensions({width:d,height:b,scrollHeight:c,scrollWidth:e})})),a.replaceChildren(this._elements.root),this._register((0,_.s)(()=>{a.replaceChildren()})),this._register((0,eJ.fm)(a=>{let b=this._viewModel.read(a);if(b&&!b.isLoading.read(a)){if(0===b.items.read(a).length||b.activeDiffItem.read(a))return;this.goToNextChange()}})),this._register(this._register((0,eJ.fm)(a=>{(0,ik.YY)(b=>{this.render(a)})})))}reveal(a,b){var c,d;let e,f,g=this._viewItems.get(),h=g.findIndex(b=>b.viewModel.originalUri?.toString()===a.original?.toString()&&b.viewModel.modifiedUri?.toString()===a.modified?.toString());if(-1===h)throw new bB.D7("Resource not found in diff editor");let i=g[h];this._viewModel.get().activeDiffItem.setCache(i.viewModel,void 0);let j=0;for(let a=0;a<h;a++)j+=g[a].contentHeight.get()+this._spaceBetweenPx;this._scrollableElement.setScrollPosition({scrollTop:j});let k=i.template.get()?.editor,l="original"in a?k?.getOriginalEditor():k?.getModifiedEditor();l&&b?.range&&(l.revealRangeInCenter(b.range),c=l,d=b.range,e=c.getModel(),f=c.createDecorationsCollection([{range:d,options:{description:"symbol-navigate-action-highlight",className:"symbolHighlight"}}]),setTimeout(()=>{c.getModel()===e&&f.clear()},350))}goToNextChange(){this._navigateToChange("next")}_navigateToChange(a){let b=this._viewItems.get();if(0===b.length)return;let c=this._viewModel.get()?.activeDiffItem.get(),d=c?b.findIndex(a=>a.viewModel===c):-1;if(-1===d)return void this._goToFile(0,"first");let e=b[d];e.viewModel.collapsed.get()&&e.viewModel.collapsed.set(!1,void 0);let f=e.template.get()?.editor;if(f?.getDiffComputationResult()?.changes2?.length){let b=f.getModifiedEditor().getPosition()?.lineNumber||1,c=f.getDiffComputationResult().changes2;if("next"===a?c.some(a=>a.modified.startLineNumber>b):c.some(a=>a.modified.endLineNumberExclusive<=b))return void f.goToDiff(a)}let g=(d+("next"===a?1:-1)+b.length)%b.length;this._goToFile(g,"next"===a?"first":"last")}_goToFile(a,b){let c=this._viewItems.get()[a];c.viewModel.collapsed.get()&&c.viewModel.collapsed.set(!1,void 0),this.reveal({original:c.viewModel.originalUri,modified:c.viewModel.modifiedUri});let d=c.template.get()?.editor;if(d?.getDiffComputationResult()?.changes2?.length)if("first"===b)d.revealFirstDiff();else{let a=d.getDiffComputationResult().changes2.at(-1),b=d.getModifiedEditor();b.setPosition({lineNumber:a.modified.startLineNumber,column:1}),b.revealLineInCenter(a.modified.startLineNumber)}d?.focus()}render(a){let b=this.scrollTop.read(a),c=0,d=0,e=0,f=this._sizeObserver.height.read(a),g=kk.L.ofStartAndLength(b,f),h=this._sizeObserver.width.read(a);for(let i of this._viewItems.read(a)){let j=i.contentHeight.read(a),k=Math.min(j,f),l=kk.L.ofStartAndLength(d,k),m=kk.L.ofStartAndLength(e,j);if(m.isBefore(g))c-=j-k,i.hide();else if(m.isAfter(g))i.hide();else{let a=Math.max(0,Math.min(g.start-m.start,j-k));c-=a;let d=kk.L.ofStartAndLength(b+c,f);i.render(l,a,h,d)}d+=k+this._spaceBetweenPx,e+=j+this._spaceBetweenPx}this._scrollableElements.content.style.transform=`translateY(${-(b+c)}px)`}};kq=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([kp(4,bU.fN),kp(5,aZ._Y)],kq);class kr extends _.jG{constructor(a,b,c,d){super(),this.viewModel=a,this._objectPool=b,this._scrollLeft=c,this._deltaScrollVertical=d,this._templateRef=this._register((0,gG.X2)(this,void 0)),this.contentHeight=(0,kf.un)(this,a=>this._templateRef.read(a)?.object.contentHeight?.read(a)??this.viewModel.lastTemplateData.read(a).contentHeight),this.maxScroll=(0,kf.un)(this,a=>this._templateRef.read(a)?.object.maxScroll.read(a)??{maxScroll:0,scrollWidth:0}),this.template=(0,kf.un)(this,a=>this._templateRef.read(a)?.object),this._isHidden=(0,gG.FY)(this,!1),this._isFocused=(0,kf.un)(this,a=>this.template.read(a)?.isFocused.read(a)??!1),this.viewModel.setIsFocused(this._isFocused,void 0),this._register((0,eJ.fm)(a=>{let b=this._scrollLeft.read(a);this._templateRef.read(a)?.object.setScrollLeft(b)})),this._register((0,eJ.fm)(a=>{let b=this._templateRef.read(a);b&&this._isHidden.read(a)&&(b.object.isFocused.read(a)||this._clear())}))}dispose(){this._clear(),super.dispose()}toString(){return`VirtualViewItem(${this.viewModel.documentDiffItem.modified?.uri.toString()})`}getKey(){return this.viewModel.getKey()}setViewState(a,b){this.viewModel.collapsed.set(a.collapsed,b),this._updateTemplateData(b);let c=this.viewModel.lastTemplateData.get(),d=a.selections?.map(kl.L.liftSelection);this.viewModel.lastTemplateData.set({...c,selections:d},b);let e=this._templateRef.get();e&&d&&e.object.editor.setSelections(d)}_updateTemplateData(a){let b=this._templateRef.get();b&&this.viewModel.lastTemplateData.set({contentHeight:b.object.contentHeight.get(),selections:b.object.editor.getSelections()??void 0},a)}_clear(){let a=this._templateRef.get();a&&(0,ik.Rn)(b=>{this._updateTemplateData(b),a.object.hide(),this._templateRef.set(void 0,b)})}hide(){this._isHidden.set(!0,void 0)}render(a,b,c,d){this._isHidden.set(!1,void 0);let e=this._templateRef.get();if(!e){e=this._objectPool.getUnusedObj(new kh(this.viewModel,this._deltaScrollVertical)),this._templateRef.set(e,void 0);let a=this.viewModel.lastTemplateData.get().selections;a&&e.object.editor.setSelections(a)}e.object.render(a,c,b,d)}}var ks=c(34547);let kt=class extends _.jG{constructor(a,b,c){super(),this._element=a,this._workbenchUIElementFactory=b,this._instantiationService=c,this._dimension=(0,gG.FY)(this,void 0),this._viewModel=(0,gG.FY)(this,void 0),this._widgetImpl=(0,kf.un)(this,a=>a.store.add(this._instantiationService.createInstance((0,kb.b)(kq),this._element,this._dimension,this._viewModel,this._workbenchUIElementFactory))),this._register((0,ks.OI)(this._widgetImpl))}};function ku(a){let b=W.get(a0.b);return b instanceof jE?b.addDynamicKeybindings(a.map(a=>({keybinding:a.keybinding,command:a.command,commandArgs:a.commandArgs,when:bU.M$.deserialize(a.when)}))):(console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),_.jG.None)}kt=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(z=aZ._Y,function(a,b){z(a,b,2)})],kt);function kv(a,b){return"boolean"==typeof a?a:b}function kw(a,b){return"string"==typeof a?a:b}function kx(a,b=!1){b&&(a=a.map(function(a){return a.toLowerCase()}));let c=function(a){let b={};for(let c of a)b[c]=!0;return b}(a);return b?function(a){return void 0!==c[a.toLowerCase()]&&c.hasOwnProperty(a.toLowerCase())}:function(a){return void 0!==c[a]&&c.hasOwnProperty(a)}}function ky(a,b,c){let d;b=b.replace(/@@/g,"\x01");let e=0;do d=!1,b=b.replace(/@(\w+)/g,function(c,e){d=!0;let f="";if("string"==typeof a[e])f=a[e];else if(a[e]&&a[e]instanceof RegExp)f=a[e].source;else if(void 0===a[e])throw ay(a,"language definition does not contain attribute '"+e+"', used at: "+b);else throw ay(a,"attribute reference '"+e+"' must be a string, used at: "+b);return f?"(?:"+f+")":""}),e++;while(d&&e<5);b=b.replace(/\x01/g,"@");let f=(a.ignoreCase?"i":"")+(a.unicode?"u":"");if(c&&b.match(/\$[sS](\d\d?)/g)){let c=null,d=null;return e=>{let g;return d&&c===e?d:(c=e,d=new RegExp((g=null,b.replace(/\$[sS](\d\d?)/g,function(b,c){return(null===g&&(g=e.split(".")).unshift(e),c&&c<g.length)?(0,aa.bm)(aw(a,g[c])):""})),f))}}return new RegExp(b,f)}class kz{constructor(a){this.regex=RegExp(""),this.action={token:""},this.matchOnlyAtLineStart=!1,this.name="",this.name=a}setRegex(a,b){let c;if("string"==typeof b)c=b;else if(b instanceof RegExp)c=b.source;else throw ay(a,"rules must start with a match string or regular expression: "+this.name);this.matchOnlyAtLineStart=c.length>0&&"^"===c[0],this.name=this.name+": "+c,this.regex=ky(a,"^(?:"+(this.matchOnlyAtLineStart?c.substr(1):c)+")",!0)}setAction(a,b){this.action=function a(b,c,d){if(!d)return{token:""};if("string"==typeof d)return d;if(d.token||""===d.token)if("string"!=typeof d.token)throw ay(b,"a 'token' attribute must be of type string, in rule: "+c);else{let a={token:d.token};if(d.token.indexOf("$")>=0&&(a.tokenSubst=!0),"string"==typeof d.bracket)if("@open"===d.bracket)a.bracket=1;else if("@close"===d.bracket)a.bracket=-1;else throw ay(b,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+c);if(d.next)if("string"!=typeof d.next)throw ay(b,"the next state must be a string value in rule: "+c);else{let e=d.next;if(!/^(@pop|@push|@popall)$/.test(e)&&("@"===e[0]&&(e=e.substr(1)),0>e.indexOf("$")&&!function(a,b){let c=b;for(;c&&c.length>0;){if(a.stateNames[c])return!0;let b=c.lastIndexOf(".");c=b<0?null:c.substr(0,b)}return!1}(b,az(b,e,"",[],""))))throw ay(b,"the next state '"+d.next+"' is not defined in rule: "+c);a.next=e}return"number"==typeof d.goBack&&(a.goBack=d.goBack),"string"==typeof d.switchTo&&(a.switchTo=d.switchTo),"string"==typeof d.log&&(a.log=d.log),"string"==typeof d.nextEmbedded&&(a.nextEmbedded=d.nextEmbedded,b.usesEmbedded=!0),a}if(Array.isArray(d)){let e=[];for(let f=0,g=d.length;f<g;f++)e[f]=a(b,c,d[f]);return{group:e}}if(d.cases){let e=[],f=!1;for(let g in d.cases)if(d.cases.hasOwnProperty(g)){let h=a(b,c,d.cases[g]);"@default"===g||"@"===g||""===g?e.push({test:void 0,value:h,name:g}):"@eos"===g?e.push({test:function(a,b,c,d){return d},value:h,name:g}):e.push(function(a,b,c,d){let e,f=-1,g=c,h=c.match(/^\$(([sS]?)(\d\d?)|#)(.*)$/);h&&(h[3]&&(f=parseInt(h[3]),h[2]&&(f+=100)),g=h[4]);let i="~",j=g;if(g&&0!==g.length?/^\w*$/.test(j)?i="==":(h=g.match(/^(@|!@|~|!~|==|!=)(.*)$/))&&(i=h[1],j=h[2]):(i="!=",j=""),("~"===i||"!~"===i)&&/^(\w|\|)*$/.test(j)){let b=kx(j.split("|"),a.ignoreCase);e=function(a){return"~"===i?b(a):!b(a)}}else if("@"===i||"!@"===i){let c=a[j];if(!c)throw ay(a,"the @ match target '"+j+"' is not defined, in rule: "+b);if(!function(a,b){if(!b||!Array.isArray(b))return!1;for(let c of b)if(!a(c))return!1;return!0}(function(a){return"string"==typeof a},c))throw ay(a,"the @ match target '"+j+"' must be an array of strings, in rule: "+b);let d=kx(c,a.ignoreCase);e=function(a){return"@"===i?d(a):!d(a)}}else if("~"===i||"!~"===i)if(0>j.indexOf("$")){let b=ky(a,"^"+j+"$",!1);e=function(a){return"~"===i?b.test(a):!b.test(a)}}else e=function(b,c,d,e){return ky(a,"^"+az(a,j,c,d,e)+"$",!1).test(b)};else if(0>j.indexOf("$")){let b=aw(a,j);e=function(a){return"=="===i?a===b:a!==b}}else{let b=aw(a,j);e=function(c,d,e,f,g){let h=az(a,b,d,e,f);return"=="===i?c===h:c!==h}}return -1===f?{name:c,value:d,test:function(a,b,c,d){return e(a,a,b,c,d)}}:{name:c,value:d,test:function(a,b,c,d){let g=function(a,b,c,d){if(d<0)return a;if(d<b.length)return b[d];if(d>=100){d-=100;let a=c.split(".");if(a.unshift(c),d<a.length)return a[d]}return null}(a,b,c,f);return e(g||"",a,b,c,d)}}}(b,c,g,h)),f||(f=!(0,bf.Kg)(h)&&(h.hasEmbeddedEndInCases||["@pop","@popall"].includes(h.nextEmbedded||"")))}let g=b.defaultToken;return{hasEmbeddedEndInCases:f,test:function(a,b,c,d){for(let f of e)if(!f.test||f.test(a,b,c,d))return f.value;return g}}}else throw ay(b,"an action must be a string, an object with a 'token' or 'cases' attribute, or an array of actions; in rule: "+c)}(a,this.name,b)}resolveRegex(a){return this.regex instanceof RegExp?this.regex:this.regex(a)}}function kA(a,b){if(!b||"object"!=typeof b)throw Error("Monarch: expecting a language definition object");let c={languageId:a,includeLF:kv(b.includeLF,!1),noThrow:!1,maxStack:100,start:"string"==typeof b.start?b.start:null,ignoreCase:kv(b.ignoreCase,!1),unicode:kv(b.unicode,!1),tokenPostfix:kw(b.tokenPostfix,"."+a),defaultToken:kw(b.defaultToken,"source"),usesEmbedded:!1,stateNames:{},tokenizer:{},brackets:[]};if(b.languageId=a,b.includeLF=c.includeLF,b.ignoreCase=c.ignoreCase,b.unicode=c.unicode,b.noThrow=c.noThrow,b.usesEmbedded=c.usesEmbedded,b.stateNames=b.tokenizer,b.defaultToken=c.defaultToken,!b.tokenizer||"object"!=typeof b.tokenizer)throw ay(c,"a language definition must define the 'tokenizer' attribute as an object");for(let a in c.tokenizer=[],b.tokenizer)if(b.tokenizer.hasOwnProperty(a)){c.start||(c.start=a);let d=b.tokenizer[a];c.tokenizer[a]=[],function a(d,e,f){for(let g of f){let f=g.include;if(f){if("string"!=typeof f)throw ay(c,"an 'include' attribute must be a string at: "+d);if("@"===f[0]&&(f=f.substr(1)),!b.tokenizer[f])throw ay(c,"include target '"+f+"' is not defined at: "+d);a(d+"."+f,e,b.tokenizer[f])}else{let a=new kz(d);if(Array.isArray(g)&&g.length>=1&&g.length<=3)if(a.setRegex(b,g[0]),g.length>=3)if("string"==typeof g[1])a.setAction(b,{token:g[1],next:g[2]});else if("object"==typeof g[1]){let c=g[1];c.next=g[2],a.setAction(b,c)}else throw ay(c,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+d);else a.setAction(b,g[1]);else{if(!g.regex)throw ay(c,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+d);g.name&&"string"==typeof g.name&&(a.name=g.name),g.matchOnlyAtStart&&(a.matchOnlyAtLineStart=kv(g.matchOnlyAtLineStart,!1)),a.setRegex(b,g.regex),a.setAction(b,g.action)}e.push(a)}}}("tokenizer."+a,c.tokenizer[a],d)}if(c.usesEmbedded=b.usesEmbedded,b.brackets){if(!Array.isArray(b.brackets))throw ay(c,"the 'brackets' attribute must be defined as an array")}else b.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];let d=[];for(let a of b.brackets){let b=a;if(b&&Array.isArray(b)&&3===b.length&&(b={token:b[2],open:b[0],close:b[1]}),b.open===b.close)throw ay(c,"open and close brackets in a 'brackets' attribute must be different: "+b.open+"\n hint: use the 'bracket' attribute if matching on equal brackets is required.");if("string"==typeof b.open&&"string"==typeof b.token&&"string"==typeof b.close)d.push({token:b.token+c.tokenPostfix,open:aw(c,b.open),close:aw(c,b.close)});else throw ay(c,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return c.brackets=d,c.noThrow=!0,c}var kB=c(28574);class kC{constructor(a,b){this._languageId=a,this._actual=b}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(a,b,c){if("function"==typeof this._actual.tokenize)return kD.adaptTokenize(this._languageId,this._actual,a,c);throw Error("Not supported!")}tokenizeEncoded(a,b,c){let d=this._actual.tokenizeEncoded(a,c);return new ak.rY(d.tokens,[],d.endState)}}class kD{constructor(a,b,c,d){this._languageId=a,this._actual=b,this._languageService=c,this._standaloneThemeService=d}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(a,b){let c=[],d=0;for(let e=0,f=a.length;e<f;e++){let f=a[e],g=f.startIndex;0===e?g=0:g<d&&(g=d),c[e]=new ak.ou(g,f.scopes,b),d=g}return c}static adaptTokenize(a,b,c,d){let e,f=b.tokenize(c,d),g=kD._toClassicTokens(f.tokens,a);return e=f.endState.equals(d)?d:f.endState,new ak.$M(g,e)}tokenize(a,b,c){return kD.adaptTokenize(this._languageId,this._actual,a,c)}_toBinaryTokens(a,b){let c=a.encodeLanguageId(this._languageId),d=this._standaloneThemeService.getColorTheme().tokenTheme,e=[],f=0,g=0;for(let a=0,h=b.length;a<h;a++){let h=b[a],i=1024|d.match(c,h.scopes);if(f>0&&e[f-1]===i)continue;let j=h.startIndex;0===a?j=0:j<g&&(j=g),e[f++]=j,e[f++]=i,g=j}let h=new Uint32Array(f);for(let a=0;a<f;a++)h[a]=e[a];return h}tokenizeEncoded(a,b,c){let d,e=this._actual.tokenize(a,c),f=this._toBinaryTokens(this._languageService.languageIdCodec,e.tokens);return d=e.endState.equals(c)?c:e.endState,new ak.rY(f,[],d)}}function kE(a){return a&&"function"==typeof a.then}function kF(a,b){return"tokenizeEncoded"in b?new kC(a,b):new kD(a,b,W.get(al.L),W.get(hv))}function kG(a,b){let c=new ak.v_(async()=>{let c=await Promise.resolve(b.create());return c?"function"==typeof c.getInitialState?kF(a,c):new aJ(W.get(al.L),W.get(hv),a,kA(a,c),W.get(aB.pG)):null});return ak.dG.registerFactory(a,c)}c(29462);var kH=c(2245);class kI{constructor(a){this.value=a,this._lower=a.toLowerCase()}static toKey(a){return"string"==typeof a?a.toLowerCase():a._lower}}class kJ{constructor(a){if(this._set=new Set,a)for(const b of a)this.add(b)}add(a){this._set.add(kI.toKey(a))}has(a){return this._set.has(kI.toKey(a))}}class kK{static{this._selectors=new cH.w}static setFormatterSelector(a){return{dispose:kK._selectors.unshift(a)}}static async select(a,b,c,d){if(0===a.length)return;let e=db.f.first(kK._selectors);if(e)return await e(a,b,c,d)}}async function kL(a,b,c,d,e,f){for(let g of b.documentRangeFormattingEditProvider.ordered(c)){let b=await Promise.resolve(g.provideDocumentRangeFormattingEdits(c,d,e,f)).catch(bB.M_);if((0,cL.EI)(b))return await a.computeMoreMinimalEdits(c.uri,b)}}async function kM(a,b,c,d,e){for(let f of function(a,b,c){let d=[],e=new kJ;for(let b of a.ordered(c))d.push(b),b.extensionId&&e.add(b.extensionId);for(let a of b.ordered(c)){if(a.extensionId){if(e.has(a.extensionId))continue;e.add(a.extensionId)}d.push({displayName:a.displayName,extensionId:a.extensionId,provideDocumentFormattingEdits:(b,c,d)=>a.provideDocumentRangeFormattingEdits(b,b.getFullModelRange(),c,d)})}return d}(b.documentFormattingEditProvider,b.documentRangeFormattingEditProvider,c)){let b=await Promise.resolve(f.provideDocumentFormattingEdits(c,d,e)).catch(bB.M_);if((0,cL.EI)(b))return await a.computeMoreMinimalEdits(c.uri,b)}}function kN(a,b){let c;if(a&&"object"==typeof a&&"number"==typeof a.tabSize&&"boolean"==typeof a.insertSpaces)c=a;else{let a=b.object.textEditorModel.getOptions();c={tabSize:a.tabSize,insertSpaces:a.insertSpaces}}return c}c0.w.registerCommand("_executeFormatRangeProvider",async function(a,...b){let[c,d,e]=b;(0,bf.j)(ab.r.isUri(c)),(0,bf.j)(cw.Q.isIRange(d));let f=a.get(hs.b),g=a.get(kH.w),h=a.get(ct.u),i=await f.createModelReference(c);try{return kL(g,h,i.object.textEditorModel,cw.Q.lift(d),kN(e,i),bo.XO.None)}finally{i.dispose()}}),c0.w.registerCommand("_executeFormatDocumentProvider",async function(a,...b){let[c,d]=b;(0,bf.j)(ab.r.isUri(c));let e=a.get(hs.b),f=a.get(kH.w),g=a.get(ct.u),h=await e.createModelReference(c);try{return kM(f,g,h.object.textEditorModel,kN(d,h),bo.XO.None)}finally{h.dispose()}}),c0.w.registerCommand("_executeFormatOnTypeProvider",async function(a,...b){let[c,d,e,f]=b;(0,bf.j)(ab.r.isUri(c)),(0,bf.j)(g$.y.isIPosition(d)),(0,bf.j)("string"==typeof e);let g=a.get(hs.b),h=a.get(kH.w),i=a.get(ct.u),j=await g.createModelReference(c);try{var k,l,m,n;let a;return k=j.object.textEditorModel,l=g$.y.lift(d),m=kN(f,j),n=bo.XO.None,a=i.onTypeFormattingEditProvider.ordered(k),0===a.length||0>a[0].autoFormatTriggerCharacters.indexOf(e)?Promise.resolve(void 0):Promise.resolve(a[0].provideOnTypeFormattingEdits(k,l,e,m,n)).catch(bB.M_).then(a=>h.computeMoreMinimalEdits(k.uri,a))}finally{j.dispose()}}),Y.qB.wrappingIndent.defaultValue=0,Y.qB.glyphMargin.defaultValue=!1,Y.qB.autoIndent.defaultValue=3,Y.qB.overviewRulerLanes.defaultValue=2,kK.setFormatterSelector((a,b,c)=>Promise.resolve(a[0]));let kO=(0,Z.r)();kO.editor={create:function(a,b,c){return W.initialize(c||{}).createInstance(j7,a,b)},getEditors:function(){return W.get(ae.T).listCodeEditors()},getDiffEditors:function(){return W.get(ae.T).listDiffEditors()},onDidCreateEditor:function(a){return W.get(ae.T).onCodeEditorAdd(b=>{a(b)})},onDidCreateDiffEditor:function(a){return W.get(ae.T).onDiffEditorAdd(b=>{a(b)})},createDiffEditor:function(a,b,c){return W.initialize(c||{}).createInstance(j8,a,b)},addCommand:function(a){if("string"!=typeof a.id||"function"!=typeof a.run)throw Error("Invalid command descriptor, `id` and `run` are required properties!");return c0.w.registerCommand(a.id,a.run)},addEditorAction:function(a){if("string"!=typeof a.id||"string"!=typeof a.label||"function"!=typeof a.run)throw Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");let b=bU.M$.deserialize(a.precondition),c=new _.Cm;if(c.add(c0.w.registerCommand(a.id,(c,...d)=>ad.DX.runEditorCommand(c,d,b,(b,c,d)=>Promise.resolve(a.run(c,...d))))),a.contextMenuGroupId){let d={command:{id:a.id,title:a.label},when:b,group:a.contextMenuGroupId,order:a.contextMenuOrder||0};c.add(bT.ZG.appendMenuItem(bT.D8.EditorContext,d))}if(Array.isArray(a.keybindings)){let d=W.get(a0.b);if(d instanceof jE){let e=bU.M$.and(b,bU.M$.deserialize(a.keybindingContext));c.add(d.addDynamicKeybindings(a.keybindings.map(b=>({keybinding:b,command:a.id,when:e}))))}else console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService")}return c},addKeybindingRule:function(a){return ku([a])},addKeybindingRules:ku,createModel:function(a,b,c){let d=W.get(al.L),e=d.getLanguageIdByMimeType(b)||b;return j9(W.get(ap.S),d,a,e,c)},setModelLanguage:function(a,b){let c=W.get(al.L),d=c.getLanguageIdByMimeType(b)||b||am.vH;a.setLanguage(c.createById(d))},setModelMarkers:function(a,b,c){a&&W.get(gx).changeOne(b,a.uri,c)},getModelMarkers:function(a){return W.get(gx).read(a)},removeAllMarkers:function(a){W.get(gx).changeAll(a,[])},onDidChangeMarkers:function(a){return W.get(gx).onMarkerChanged(a)},getModels:function(){return W.get(ap.S).getModels()},getModel:function(a){return W.get(ap.S).getModel(a)},onDidCreateModel:function(a){return W.get(ap.S).onModelAdded(a)},onWillDisposeModel:function(a){return W.get(ap.S).onModelRemoved(a)},onDidChangeModelLanguage:function(a){return W.get(ap.S).onModelLanguageChanged(b=>{a({model:b.model,oldLanguage:b.oldLanguageId})})},createWebWorker:function(a){var b;return b=W.get(ap.S),new ag(b,W.get(gI.d),a)},colorizeElement:function(a,b){let c=W.get(al.L),d=W.get(hv);return aL.colorizeElement(d,c,a,b).then(()=>{d.registerEditorContainer(a)})},colorize:function(a,b,c){let d=W.get(al.L);return W.get(hv).registerEditorContainer($.G.document.body),aL.colorize(d,a,b,c)},colorizeModelLine:function(a,b,c=4){return W.get(hv).registerEditorContainer($.G.document.body),aL.colorizeModelLine(a,b,c)},tokenize:function(a,b){let c;ak.dG.getOrCreate(b);let d=(c=ak.dG.get(b))||{getInitialState:()=>an.r3,tokenize:(a,c,d)=>(0,an.$H)(b,d)},e=(0,aa.uz)(a),f=[],g=d.getInitialState();for(let a=0,b=e.length;a<b;a++){let b=e[a],c=d.tokenize(b,!0,g);f[a]=c.tokens,g=c.endState}return f},defineTheme:function(a,b){W.get(hv).defineTheme(a,b)},setTheme:function(a){W.get(hv).setTheme(a)},remeasureFonts:function(){ac.T.clearAllFontInfos()},registerCommand:function(a,b){return c0.w.registerCommand({id:a,handler:b})},registerLinkOpener:function(a){return W.get(gC.Cr).registerOpener({open:async b=>("string"==typeof b&&(b=ab.r.parse(b)),a.open(b))})},registerEditorOpener:function(a){return W.get(ae.T).registerCodeEditorOpenHandler(async(b,c,d)=>{let e;if(!c)return null;let f=b.options?.selection;return(f&&"number"==typeof f.endLineNumber&&"number"==typeof f.endColumn?e=f:f&&(e={lineNumber:f.startLineNumber,column:f.startColumn}),await a.openCodeEditor(c,b.resource,e))?c:null})},AccessibilitySupport:aq.Gn,ContentWidgetPositionPreference:aq.Qj,CursorChangeReason:aq.h5,DefaultEndOfLine:aq.of,EditorAutoIndentStrategy:aq.e0,EditorOption:aq.p2,EndOfLinePreference:aq.kf,EndOfLineSequence:aq.WU,MinimapPosition:aq.R3,MinimapSectionHeaderStyle:aq.VX,MouseTargetType:aq.hS,OverlayWidgetPositionPreference:aq.dE,OverviewRulerLane:aq.A5,GlyphMarginLane:aq.ZS,RenderLineNumbersType:aq.DO,RenderMinimap:aq.hW,ScrollbarVisibility:aq.XR,ScrollType:aq.ov,TextEditorCursorBlinkingStyle:aq.U7,TextEditorCursorStyle:aq.m9,TrackedRangeStickiness:aq.kK,WrappingIndent:aq.tJ,InjectedTextCursorStops:aq.VW,PositionAffinity:aq.Ic,ShowLightbulbIconMode:aq.jT,TextDirection:aq.z4,ConfigurationChangedEvent:Y.lw,BareFontInfo:ai._8,FontInfo:ai.YJ,TextModelResolvedOptions:ao.X2,FindMatch:ao.Dg,ApplyUpdateResult:Y.hZ,EditorZoom:ah.D,createMultiFileDiffEditor:function(a,b){let c=W.initialize(b||{});return new kt(a,{},c)},EditorType:aj._,EditorOptions:Y.qB},kO.languages={register:function(a){am.W6.registerLanguage(a)},getLanguages:function(){let a=[];return a.concat(am.W6.getLanguages())},onLanguage:function(a,b){return W.withServices(()=>{let c=W.get(al.L).onDidRequestRichLanguageFeatures(d=>{d===a&&(c.dispose(),b())});return c})},onLanguageEncountered:function(a,b){return W.withServices(()=>{let c=W.get(al.L).onDidRequestBasicLanguageFeatures(d=>{d===a&&(c.dispose(),b())});return c})},getEncodedLanguageId:function(a){return W.get(al.L).languageIdCodec.encodeLanguageId(a)},setLanguageConfiguration:function(a,b){if(!W.get(al.L).isRegisteredLanguageId(a))throw Error(`Cannot set configuration for unknown language ${a}`);return W.get(jW.JZ).register(a,b,100)},setColorMap:function(a){let b=W.get(hv);if(a){let c=[null];for(let b=1,d=a.length;b<d;b++)c[b]=ek.Q1.fromHex(a[b]);b.setColorMapOverride(c)}else b.setColorMapOverride(null)},registerTokensProviderFactory:kG,setTokensProvider:function(a,b){if(!W.get(al.L).isRegisteredLanguageId(a))throw Error(`Cannot set tokens provider for unknown language ${a}`);return kE(b)?kG(a,{create:()=>b}):ak.dG.register(a,kF(a,b))},setMonarchTokensProvider:function(a,b){return kE(b)?kG(a,{create:()=>b}):ak.dG.register(a,new aJ(W.get(al.L),W.get(hv),a,kA(a,b),W.get(aB.pG)))},registerReferenceProvider:function(a,b){return W.get(ct.u).referenceProvider.register(a,b)},registerRenameProvider:function(a,b){return W.get(ct.u).renameProvider.register(a,b)},registerNewSymbolNameProvider:function(a,b){return W.get(ct.u).newSymbolNamesProvider.register(a,b)},registerCompletionItemProvider:function(a,b){return W.get(ct.u).completionProvider.register(a,b)},registerSignatureHelpProvider:function(a,b){return W.get(ct.u).signatureHelpProvider.register(a,b)},registerHoverProvider:function(a,b){return W.get(ct.u).hoverProvider.register(a,{provideHover:async(a,c,d,e)=>{let f=a.getWordAtPosition(c);return Promise.resolve(b.provideHover(a,c,d,e)).then(a=>{if(a)return!a.range&&f&&(a.range=new cw.Q(c.lineNumber,f.startColumn,c.lineNumber,f.endColumn)),a.range||(a.range=new cw.Q(c.lineNumber,c.column,c.lineNumber,c.column)),a})}})},registerDocumentSymbolProvider:function(a,b){return W.get(ct.u).documentSymbolProvider.register(a,b)},registerDocumentHighlightProvider:function(a,b){return W.get(ct.u).documentHighlightProvider.register(a,b)},registerLinkedEditingRangeProvider:function(a,b){return W.get(ct.u).linkedEditingRangeProvider.register(a,b)},registerDefinitionProvider:function(a,b){return W.get(ct.u).definitionProvider.register(a,b)},registerImplementationProvider:function(a,b){return W.get(ct.u).implementationProvider.register(a,b)},registerTypeDefinitionProvider:function(a,b){return W.get(ct.u).typeDefinitionProvider.register(a,b)},registerCodeLensProvider:function(a,b){return W.get(ct.u).codeLensProvider.register(a,b)},registerCodeActionProvider:function(a,b,c){return W.get(ct.u).codeActionProvider.register(a,{providedCodeActionKinds:c?.providedCodeActionKinds,documentation:c?.documentation,provideCodeActions:(a,c,d,e)=>{let f=W.get(gx).read({resource:a.uri}).filter(a=>cw.Q.areIntersectingOrTouching(a,c));return b.provideCodeActions(a,c,{markers:f,only:d.only,trigger:d.trigger},e)},resolveCodeAction:b.resolveCodeAction})},registerDocumentFormattingEditProvider:function(a,b){return W.get(ct.u).documentFormattingEditProvider.register(a,b)},registerDocumentRangeFormattingEditProvider:function(a,b){return W.get(ct.u).documentRangeFormattingEditProvider.register(a,b)},registerOnTypeFormattingEditProvider:function(a,b){return W.get(ct.u).onTypeFormattingEditProvider.register(a,b)},registerLinkProvider:function(a,b){return W.get(ct.u).linkProvider.register(a,b)},registerColorProvider:function(a,b){return W.get(ct.u).colorProvider.register(a,b)},registerFoldingRangeProvider:function(a,b){return W.get(ct.u).foldingRangeProvider.register(a,b)},registerDeclarationProvider:function(a,b){return W.get(ct.u).declarationProvider.register(a,b)},registerSelectionRangeProvider:function(a,b){return W.get(ct.u).selectionRangeProvider.register(a,b)},registerDocumentSemanticTokensProvider:function(a,b){return W.get(ct.u).documentSemanticTokensProvider.register(a,b)},registerDocumentRangeSemanticTokensProvider:function(a,b){return W.get(ct.u).documentRangeSemanticTokensProvider.register(a,b)},registerInlineCompletionsProvider:function(a,b){return W.get(ct.u).inlineCompletionsProvider.register(a,b)},registerInlayHintsProvider:function(a,b){return W.get(ct.u).inlayHintsProvider.register(a,b)},DocumentHighlightKind:aq.Kb,CompletionItemKind:aq.Io,CompletionItemTag:aq.QP,CompletionItemInsertTextRule:aq._E,SymbolKind:aq.v0,SymbolTag:aq.H_,IndentAction:aq.l,CompletionTriggerKind:aq.t7,SignatureHelpTriggerKind:aq.WA,InlayHintKind:aq.r4,InlineCompletionTriggerKind:aq.qw,CodeActionTriggerType:aq.ok,NewSymbolNameTag:aq.OV,NewSymbolNameTriggerKind:aq.YT,PartialAcceptTriggerKind:aq.Ah,HoverVerbosityAction:aq.M$,InlineCompletionEndOfLifeReasonKind:aq.EI,InlineCompletionHintStyle:aq.KU,FoldingRangeKind:ak.lO,SelectedSuggestionInfo:ak.GE,EditDeltaInfo:kB.lw};let kP=kO.CancellationTokenSource,kQ=kO.Emitter,kR=kO.KeyCode,kS=kO.KeyMod,kT=kO.Position,kU=kO.Range,kV=kO.Selection,kW=kO.SelectionDirection,kX=kO.MarkerSeverity,kY=kO.MarkerTag,kZ=kO.Uri,k$=kO.Token,k_=kO.editor,k0=kO.languages,k1=(0,cW.HT)(),k2=globalThis;(k1?.globalAPI||"function"==typeof k2.define&&k2.define.amd)&&(k2.monaco=kO),void 0!==k2.require&&"function"==typeof k2.require.config&&k2.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-languageserver-textdocument","vscode-languageserver-textdocument/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]})},60548:(a,b,c)=>{"use strict";c.d(b,{Y:()=>h});var d=c(54265),e=c(55900),f=c(87873),g=c(74864);function h(a,b=g.j.ofCaller()){return"string"==typeof a?new i(a,void 0,b):new i(void 0,a,b)}class i extends f.ZK{get debugName(){return new e.nA(this._owner,this._debugName,void 0).getDebugName(this)??"Observable Signal"}toString(){return this.debugName}constructor(a,b,c){super(c),this._debugName=a,this._owner=b}trigger(a,b){if(!a)return void(0,d.Rn)(a=>{this.trigger(a,b)},()=>`Trigger signal ${this.debugName}`);for(let c of this._observers)a.updateObserver(c,this),c.handleChange(this,b)}get(){}}},61055:(a,b,c)=>{"use strict";c.d(b,{c:()=>j});var d=c(75082),e=c(95091),f=c(76631);class g extends f.jG{constructor(a){super(),this._onDidChange=this._register(new e.vl),this.onDidChange=this._onDidChange.event,this._listener=()=>this._handleChange(a,!0),this._mediaQueryList=null,this._handleChange(a,!1),this._register((0,f.s)(()=>this._mediaQueryList?.removeEventListener("change",this._listener)))}_handleChange(a,b){this._mediaQueryList?.removeEventListener("change",this._listener),this._mediaQueryList=a.matchMedia(`(resolution: ${a.devicePixelRatio}dppx)`),this._mediaQueryList.addEventListener("change",this._listener),b&&this._onDidChange.fire()}}class h extends f.jG{get value(){return this._value}constructor(a){super(),this._onDidChange=this._register(new e.vl),this.onDidChange=this._onDidChange.event,this._value=this._getPixelRatio(a);const b=this._register(new g(a));this._register(b.onDidChange(()=>{this._value=this._getPixelRatio(a),this._onDidChange.fire(this._value)}))}_getPixelRatio(a){let b=document.createElement("canvas").getContext("2d");return(a.devicePixelRatio||1)/(b?.webkitBackingStorePixelRatio||b?.mozBackingStorePixelRatio||b?.msBackingStorePixelRatio||b?.oBackingStorePixelRatio||b?.backingStorePixelRatio||1)}}class i{constructor(){this.mapWindowIdToPixelRatioMonitor=new Map}_getOrCreatePixelRatioMonitor(a){let b=(0,d.Q2)(a),c=this.mapWindowIdToPixelRatioMonitor.get(b);return c||(c=(0,f.lC)(new h(a)),this.mapWindowIdToPixelRatioMonitor.set(b,c),(0,f.lC)(e.Jh.once(d.Fv)(({vscodeWindowId:a})=>{a===b&&(c?.dispose(),this.mapWindowIdToPixelRatioMonitor.delete(b))}))),c}getInstance(a){return this._getOrCreatePixelRatioMonitor(a)}}let j=new i},61148:()=>{},61556:(a,b,c)=>{"use strict";c.d(b,{D:()=>d,Z:()=>f});class d{constructor(a){this.domNode=a,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=""}focus(){this.domNode.focus()}setMaxWidth(a){let b=e(a);this._maxWidth!==b&&(this._maxWidth=b,this.domNode.style.maxWidth=this._maxWidth)}setWidth(a){let b=e(a);this._width!==b&&(this._width=b,this.domNode.style.width=this._width)}setHeight(a){let b=e(a);this._height!==b&&(this._height=b,this.domNode.style.height=this._height)}setTop(a){let b=e(a);this._top!==b&&(this._top=b,this.domNode.style.top=this._top)}setLeft(a){let b=e(a);this._left!==b&&(this._left=b,this.domNode.style.left=this._left)}setBottom(a){let b=e(a);this._bottom!==b&&(this._bottom=b,this.domNode.style.bottom=this._bottom)}setRight(a){let b=e(a);this._right!==b&&(this._right=b,this.domNode.style.right=this._right)}setPaddingLeft(a){let b=e(a);this._paddingLeft!==b&&(this._paddingLeft=b,this.domNode.style.paddingLeft=this._paddingLeft)}setFontFamily(a){this._fontFamily!==a&&(this._fontFamily=a,this.domNode.style.fontFamily=this._fontFamily)}setFontWeight(a){this._fontWeight!==a&&(this._fontWeight=a,this.domNode.style.fontWeight=this._fontWeight)}setFontSize(a){let b=e(a);this._fontSize!==b&&(this._fontSize=b,this.domNode.style.fontSize=this._fontSize)}setFontStyle(a){this._fontStyle!==a&&(this._fontStyle=a,this.domNode.style.fontStyle=this._fontStyle)}setFontFeatureSettings(a){this._fontFeatureSettings!==a&&(this._fontFeatureSettings=a,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings)}setFontVariationSettings(a){this._fontVariationSettings!==a&&(this._fontVariationSettings=a,this.domNode.style.fontVariationSettings=this._fontVariationSettings)}setTextDecoration(a){this._textDecoration!==a&&(this._textDecoration=a,this.domNode.style.textDecoration=this._textDecoration)}setLineHeight(a){let b=e(a);this._lineHeight!==b&&(this._lineHeight=b,this.domNode.style.lineHeight=this._lineHeight)}setLetterSpacing(a){let b=e(a);this._letterSpacing!==b&&(this._letterSpacing=b,this.domNode.style.letterSpacing=this._letterSpacing)}setClassName(a){this._className!==a&&(this._className=a,this.domNode.className=this._className)}toggleClassName(a,b){this.domNode.classList.toggle(a,b),this._className=this.domNode.className}setDisplay(a){this._display!==a&&(this._display=a,this.domNode.style.display=this._display)}setPosition(a){this._position!==a&&(this._position=a,this.domNode.style.position=this._position)}setVisibility(a){this._visibility!==a&&(this._visibility=a,this.domNode.style.visibility=this._visibility)}setColor(a){this._color!==a&&(this._color=a,this.domNode.style.color=this._color)}setBackgroundColor(a){this._backgroundColor!==a&&(this._backgroundColor=a,this.domNode.style.backgroundColor=this._backgroundColor)}setLayerHinting(a){this._layerHint!==a&&(this._layerHint=a,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":"")}setBoxShadow(a){this._boxShadow!==a&&(this._boxShadow=a,this.domNode.style.boxShadow=a)}setContain(a){this._contain!==a&&(this._contain=a,this.domNode.style.contain=this._contain)}setAttribute(a,b){this.domNode.setAttribute(a,b)}removeAttribute(a){this.domNode.removeAttribute(a)}appendChild(a){this.domNode.appendChild(a.domNode)}removeChild(a){this.domNode.removeChild(a.domNode)}}function e(a){return"number"==typeof a?`${a}px`:a}function f(a){return new d(a)}},61714:(a,b,c)=>{"use strict";c.d(b,{u:()=>g});var d=c(76631),e=c(95091),f=c(75082);class g extends d.jG{constructor(a,b){super(),this._onDidChange=this._register(new e.vl),this.onDidChange=this._onDidChange.event,this._referenceDomElement=a,this._width=-1,this._height=-1,this._resizeObserver=null,this.measureReferenceDomElement(!1,b)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this._width}getHeight(){return this._height}startObserving(){if(!this._resizeObserver&&this._referenceDomElement){let a=null,b=()=>{a?this.observe({width:a.width,height:a.height}):this.observe()},c=!1,d=!1,e=()=>{if(c&&!d)try{c=!1,d=!0,b()}finally{(0,f.PG)((0,f.zk)(this._referenceDomElement),()=>{d=!1,e()})}};this._resizeObserver=new ResizeObserver(b=>{a=b&&b[0]&&b[0].contentRect?{width:b[0].contentRect.width,height:b[0].contentRect.height}:null,c=!0,e()}),this._resizeObserver.observe(this._referenceDomElement)}}stopObserving(){this._resizeObserver&&(this._resizeObserver.disconnect(),this._resizeObserver=null)}observe(a){this.measureReferenceDomElement(!0,a)}measureReferenceDomElement(a,b){let c=0,d=0;b?(c=b.width,d=b.height):this._referenceDomElement&&(c=this._referenceDomElement.clientWidth,d=this._referenceDomElement.clientHeight),c=Math.max(5,c),d=Math.max(5,d),(this._width!==c||this._height!==d)&&(this._width=c,this._height=d,a&&this._onDidChange.fire())}}},61811:(a,b,c)=>{"use strict";let d;function e(a){d?d instanceof g?d.loggers.push(a):d=new g([d,a]):d=a}function f(){return d}c.d(b,{E:()=>e,t:()=>f});class g{constructor(a){this.loggers=a}handleObservableCreated(a,b){for(let c of this.loggers)c.handleObservableCreated(a,b)}handleOnListenerCountChanged(a,b){for(let c of this.loggers)c.handleOnListenerCountChanged(a,b)}handleObservableUpdated(a,b){for(let c of this.loggers)c.handleObservableUpdated(a,b)}handleAutorunCreated(a,b){for(let c of this.loggers)c.handleAutorunCreated(a,b)}handleAutorunDisposed(a){for(let b of this.loggers)b.handleAutorunDisposed(a)}handleAutorunDependencyChanged(a,b,c){for(let d of this.loggers)d.handleAutorunDependencyChanged(a,b,c)}handleAutorunStarted(a){for(let b of this.loggers)b.handleAutorunStarted(a)}handleAutorunFinished(a){for(let b of this.loggers)b.handleAutorunFinished(a)}handleDerivedDependencyChanged(a,b,c){for(let d of this.loggers)d.handleDerivedDependencyChanged(a,b,c)}handleDerivedCleared(a){for(let b of this.loggers)b.handleDerivedCleared(a)}handleBeginTransaction(a){for(let b of this.loggers)b.handleBeginTransaction(a)}handleEndTransaction(a){for(let b of this.loggers)b.handleEndTransaction(a)}}},62286:(a,b,c)=>{"use strict";function d(a){let b=0,c=0,d=0,e=0;for(let f=0,g=a.length;f<g;f++){let h=a.charCodeAt(f);13===h?(0===b&&(c=f),b++,f+1<g&&10===a.charCodeAt(f+1)?(e|=2,f++):e|=3,d=f+1):10===h&&(e|=1,0===b&&(c=f),b++,d=f+1)}return 0===b&&(c=a.length),[b,c,a.length-d,e]}c.d(b,{W:()=>d})},62677:(a,b,c)=>{"use strict";c.d(b,{Z:()=>j});var d=c(47322),e=c(5436),f=c(80046),g=c(18216);let h=g.zx?256:2048,i=g.zx?2048:256;class j{constructor(a){this._standardKeyboardEventBrand=!0,this.browserEvent=a,this.target=a.target,this.ctrlKey=a.ctrlKey,this.shiftKey=a.shiftKey,this.altKey=a.altKey,this.metaKey=a.metaKey,this.altGraphKey=a.getModifierState?.("AltGraph"),this.keyCode=function(a){if(a.charCode){let b=String.fromCharCode(a.charCode).toUpperCase();return e.YM.fromString(b)}let b=a.keyCode;if(3===b)return 7;if(d.gm)switch(b){case 59:return 85;case 60:if(g.j9)return 97;break;case 61:return 86;case 107:return 109;case 109:return 111;case 173:return 88;case 224:if(g.zx)return 57}else if(d.Tc){if(g.zx&&93===b)return 57;else if(!g.zx&&92===b)return 57}return e.uw[b]||0}(a),this.code=a.code,this.ctrlKey=this.ctrlKey||5===this.keyCode,this.altKey=this.altKey||6===this.keyCode,this.shiftKey=this.shiftKey||4===this.keyCode,this.metaKey=this.metaKey||57===this.keyCode,this._asKeybinding=this._computeKeybinding(),this._asKeyCodeChord=this._computeKeyCodeChord()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeyCodeChord(){return this._asKeyCodeChord}equals(a){return this._asKeybinding===a}_computeKeybinding(){let a=0;(0,e.VL)(this.keyCode)||(a=this.keyCode);let b=0;return this.ctrlKey&&(b|=h),this.altKey&&(b|=512),this.shiftKey&&(b|=1024),this.metaKey&&(b|=i),b|=a}_computeKeyCodeChord(){let a=0;return(0,e.VL)(this.keyCode)||(a=this.keyCode),new f.dG(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,a)}}},62957:(a,b,c)=>{"use strict";c.d(b,{D7:()=>m,SN:()=>l,c6:()=>k,dd:()=>j,g$:()=>i});var d=c(72816),e=c(37327),f=c(34183),g=c(18896),h=c(91018);let i=(0,e.x1)("menu.border",{dark:null,light:null,hcDark:f.b1,hcLight:f.b1},(0,d.kg)(2044,"Border color of menus.")),j=(0,e.x1)("menu.foreground",g.yq,(0,d.kg)(2045,"Foreground color of menu items.")),k=(0,e.x1)("menu.background",g.rv,(0,d.kg)(2046,"Background color of menu items."));(0,e.x1)("menu.selectionForeground",h.GV,(0,d.kg)(2047,"Foreground color of the selected menu item in menus.")),(0,e.x1)("menu.selectionBackground",h.Rj,(0,d.kg)(2048,"Background color of the selected menu item in menus."));let l=(0,e.x1)("menu.selectionBorder",{dark:null,light:null,hcDark:f.bu,hcLight:f.bu},(0,d.kg)(2049,"Border color of the selected menu item in menus.")),m=(0,e.x1)("menu.separatorBackground",{dark:(0,e.JO)(f.CU,.2),light:(0,e.JO)(f.CU,.2),hcDark:f.b1,hcLight:f.b1},(0,d.kg)(2050,"Color of a separator menu item in menus."))},63018:(a,b,c)=>{"use strict";c.d(b,{x:()=>l});var d=c(75082),e=c(47339),f=c(89191),g=c(80172),h=c(76631),i=c(29943);c(28289);var j=c(72816);let k=d.$;class l extends h.jG{constructor(a,b,c){super(),this.os=b,this.keyElements=new Set,this.options=c||Object.create(null);const g=this.options.keybindingLabelForeground;this.domNode=(0,d.BC)(a,k(".monaco-keybinding")),g&&(this.domNode.style.color=g),this.hover=this._register((0,e.i)().setupManagedHover((0,f.nZ)("mouse"),this.domNode,"")),this.didEverRender=!1,a.appendChild(this.domNode)}set(a,b){this.didEverRender&&this.keybinding===a&&l.areSame(this.matches,b)||(this.keybinding=a,this.matches=b,this.render())}render(){if(this.clear(),this.keybinding){let a=this.keybinding.getChords();a[0]&&this.renderChord(this.domNode,a[0],this.matches?this.matches.firstPart:null);for(let b=1;b<a.length;b++)(0,d.BC)(this.domNode,k("span.monaco-keybinding-key-chord-separator",void 0," ")),this.renderChord(this.domNode,a[b],this.matches?this.matches.chordPart:null);let b=this.options.disableTitle?void 0:this.keybinding.getAriaLabel()||void 0;this.hover.update(b),this.domNode.setAttribute("aria-label",b||"")}else this.options&&this.options.renderUnboundKeybindings&&this.renderUnbound(this.domNode);this.didEverRender=!0}clear(){(0,d.w_)(this.domNode),this.keyElements.clear()}renderChord(a,b,c){let d=g.Of.modifierLabels[this.os];b.ctrlKey&&this.renderKey(a,d.ctrlKey,!!c?.ctrlKey,d.separator),b.shiftKey&&this.renderKey(a,d.shiftKey,!!c?.shiftKey,d.separator),b.altKey&&this.renderKey(a,d.altKey,!!c?.altKey,d.separator),b.metaKey&&this.renderKey(a,d.metaKey,!!c?.metaKey,d.separator);let e=b.keyLabel;e&&this.renderKey(a,e,!!c?.keyCode,"")}renderKey(a,b,c,e){(0,d.BC)(a,this.createKeyElement(b,c?".highlight":"")),e&&(0,d.BC)(a,k("span.monaco-keybinding-key-separator",void 0,e))}renderUnbound(a){(0,d.BC)(a,this.createKeyElement((0,j.kg)(15,"Unbound")))}createKeyElement(a,b=""){let c=k("span.monaco-keybinding-key"+b,void 0,a);return this.keyElements.add(c),this.options.keybindingLabelBackground&&(c.style.backgroundColor=this.options.keybindingLabelBackground),this.options.keybindingLabelBorder&&(c.style.borderColor=this.options.keybindingLabelBorder),this.options.keybindingLabelBottomBorder&&(c.style.borderBottomColor=this.options.keybindingLabelBottomBorder),this.options.keybindingLabelShadow&&(c.style.boxShadow=`inset 0 -1px 0 ${this.options.keybindingLabelShadow}`),c}static areSame(a,b){return a===b||!a&&!b||!!a&&!!b&&(0,i.aI)(a.firstPart,b.firstPart)&&(0,i.aI)(a.chordPart,b.chordPart)}}},63040:(a,b,c)=>{"use strict";c.d(b,{m:()=>v});var d=c(75082),e=c(14016),f=c(73298);class g{constructor(a){this.source=a,this.index=0}eos(){return this.index>=this.source.length}next(){let a=this.peek();return this.advance(),a}peek(){return this.source[this.index]}advance(){this.index++}}function h(a,b){switch(a){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;default:return 0}}var i=c(14826),j=c(67330),k=c(47339),l=c(72542),m=c(8933),n=c(95091);class o{constructor(a,b=0,c=a.length,d=b-1){this.items=a,this.start=b,this.end=c,this.index=d}current(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]}next(){return this.index=Math.min(this.index+1,this.end),this.current()}previous(){return this.index=Math.max(this.index-1,this.start-1),this.current()}first(){return this.index=this.start,this.current()}last(){return this.index=this.end-1,this.current()}}class p{constructor(a=new Set,b=10){this._history=a,this._limit=b,this._onChange(),this._history.onDidChange&&(this._disposable=this._history.onDidChange(()=>this._onChange()))}getHistory(){return this._elements}add(a){this._history.delete(a),this._history.add(a),this._onChange()}next(){return this._navigator.next()}previous(){return 0!==this._currentPosition()?this._navigator.previous():null}current(){return this._navigator.current()}first(){return this._navigator.first()}last(){return this._navigator.last()}isLast(){return this._currentPosition()>=this._elements.length-1}isNowhere(){return null===this._navigator.current()}has(a){return this._history.has(a)}_onChange(){this._reduceToLimit();let a=this._elements;this._navigator=new o(a,0,a.length,a.length)}_reduceToLimit(){let a=this._elements;if(a.length>this._limit){let b=a.slice(a.length-this._limit);this._history.replace?this._history.replace(b):this._history=new Set(b)}}_currentPosition(){let a=this._navigator.current();return a?this._elements.indexOf(a):-1}get _elements(){let a=[];return this._history.forEach(b=>a.push(b)),a}dispose(){this._disposable&&(this._disposable.dispose(),this._disposable=void 0)}}var q=c(29943);c(90753);var r=c(72816),s=c(76631);let t=d.$;class u extends m.x{get onDidChange(){return this._onDidChange.event}get onDidHeightChange(){return this._onDidHeightChange.event}constructor(a,b,c){super(),this.state="idle",this.maxHeight=1/0,this.hover=this._register(new s.HE),this._onDidChange=this._register(new n.vl),this._onDidHeightChange=this._register(new n.vl),this.contextViewProvider=b,this.options=c,this.message=null,this.placeholder=this.options.placeholder||"",this.tooltip=this.options.tooltip??(this.placeholder||""),this.ariaLabel=this.options.ariaLabel||"",this.options.validationOptions&&(this.validation=this.options.validationOptions.validation),this.element=(0,d.BC)(a,t(".monaco-inputbox.idle"));const e=this.options.flexibleHeight?"textarea":"input",g=(0,d.BC)(this.element,t(".ibwrapper"));if(this.input=(0,d.BC)(g,t(e+".input.empty")),this.input.setAttribute("autocorrect","off"),this.input.setAttribute("autocapitalize","off"),this.input.setAttribute("spellcheck","false"),this.onfocus(this.input,()=>this.element.classList.add("synthetic-focus")),this.onblur(this.input,()=>this.element.classList.remove("synthetic-focus")),this.options.flexibleHeight){this.maxHeight="number"==typeof this.options.flexibleMaxHeight?this.options.flexibleMaxHeight:1/0,this.mirror=(0,d.BC)(g,t("div.mirror")),this.mirror.innerText="\xa0",this.scrollableElement=new l.Se(this.element,{vertical:1}),this.options.flexibleWidth&&(this.input.setAttribute("wrap","off"),this.mirror.style.whiteSpace="pre",this.mirror.style.wordWrap="initial"),(0,d.BC)(a,this.scrollableElement.getDomNode()),this._register(this.scrollableElement),this._register(this.scrollableElement.onScroll(a=>this.input.scrollTop=a.scrollTop));const b=this._register(new f.f(a.ownerDocument,"selectionchange")),c=n.Jh.filter(b.event,()=>{let b=a.ownerDocument.getSelection();return b?.anchorNode===g});this._register(c(this.updateScrollDimensions,this)),this._register(this.onDidHeightChange(this.updateScrollDimensions,this))}else this.input.type=this.options.type||"text",this.input.setAttribute("wrap","off");this.ariaLabel&&this.input.setAttribute("aria-label",this.ariaLabel),this.placeholder&&!this.options.showPlaceholderOnFocus&&this.setPlaceHolder(this.placeholder),this.tooltip&&this.setTooltip(this.tooltip),this.oninput(this.input,()=>this.onValueChange()),this.onblur(this.input,()=>this.onBlur()),this.onfocus(this.input,()=>this.onFocus()),this._register(this.ignoreGesture(this.input)),setTimeout(()=>this.updateMirror(),0),this.options.actions&&(this.actionbar=this._register(new i.E(this.element,{actionViewItemProvider:this.options.actionViewItemProvider})),this.actionbar.push(this.options.actions,{icon:!0,label:!1})),this.applyStyles()}setActions(a,b){this.actionbar?(this.actionbar.clear(),a&&this.actionbar.push(a,{icon:!0,label:!1})):a&&(this.actionbar=this._register(new i.E(this.element,{actionViewItemProvider:b??this.options.actionViewItemProvider})),this.actionbar.push(a,{icon:!0,label:!1}))}get actionsWidth(){return this.actionbar?.getContainer().offsetWidth??0}onBlur(){this._hideMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder","")}onFocus(){this._showMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder",this.placeholder||"")}setPlaceHolder(a){this.placeholder=a,this.input.setAttribute("placeholder",a)}setTooltip(a){this.tooltip=a,this.hover.value||(this.hover.value=this._register((0,k.i)().setupDelayedHoverAtMouse(this.input,()=>({content:this.tooltip,appearance:{compact:!0}}))))}setAriaLabel(a){this.ariaLabel=a,a?this.input.setAttribute("aria-label",this.ariaLabel):this.input.removeAttribute("aria-label")}get inputElement(){return this.input}get value(){return this.input.value}set value(a){this.input.value!==a&&(this.input.value=a,this.onValueChange())}get height(){return"number"==typeof this.cachedHeight?this.cachedHeight:(0,d.OK)(this.element)}focus(){this.input.focus()}blur(){this.input.blur()}hasFocus(){return(0,d.X7)(this.input)}select(a=null){this.input.select(),a&&(this.input.setSelectionRange(a.start,a.end),a.end===this.input.value.length&&(this.input.scrollLeft=this.input.scrollWidth))}isSelectionAtEnd(){return this.input.selectionEnd===this.input.value.length&&this.input.selectionStart===this.input.selectionEnd}getSelection(){let a=this.input.selectionStart;if(null===a)return null;let b=this.input.selectionEnd??a;return{start:a,end:b}}enable(){this.input.removeAttribute("disabled")}disable(){this.blur(),this.input.disabled=!0,this._hideMessage()}set paddingRight(a){this.input.style.width=`calc(100% - ${a}px)`,this.mirror&&(this.mirror.style.paddingRight=a+"px")}updateScrollDimensions(){if("number"!=typeof this.cachedContentHeight||"number"!=typeof this.cachedHeight||!this.scrollableElement)return;let a=this.cachedContentHeight,b=this.cachedHeight,c=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:a,height:b}),this.scrollableElement.setScrollPosition({scrollTop:c})}showMessage(a,b){if("open"===this.state&&(0,q.aI)(this.message,a))return;this.message=a,this.element.classList.remove("idle"),this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add(this.classForType(a.type));let c=this.stylesForType(this.message.type);this.element.style.border=`1px solid ${(0,e.gI)(c.border,"transparent")}`,this.message.content&&(this.hasFocus()||b)&&this._showMessage()}hideMessage(){this.message=null,this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add("idle"),this._hideMessage(),this.applyStyles()}validate(){let a=null;return this.validation&&((a=this.validation(this.value))?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(a)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),a?.type}stylesForType(a){let b=this.options.inputBoxStyles;switch(a){case 1:return{border:b.inputValidationInfoBorder,background:b.inputValidationInfoBackground,foreground:b.inputValidationInfoForeground};case 2:return{border:b.inputValidationWarningBorder,background:b.inputValidationWarningBackground,foreground:b.inputValidationWarningForeground};default:return{border:b.inputValidationErrorBorder,background:b.inputValidationErrorBackground,foreground:b.inputValidationErrorForeground}}}classForType(a){switch(a){case 1:return"info";case 2:return"warning";default:return"error"}}_showMessage(){let a,b;if(!this.contextViewProvider||!this.message)return;let c=()=>a.style.width=(0,d.Tr)(this.element)+"px";this.contextViewProvider.showContextView({getAnchor:()=>this.element,anchorAlignment:1,render:b=>{var e,f,i;if(!this.message)return null;a=(0,d.BC)(b,t(".monaco-inputbox-container")),c();let j=t("span.monaco-inputbox-message");if(this.message.formatContent){let a;e=this.message.content,f=void 0,(a=j??document.createElement("div")).textContent="",function a(b,c,e,f){let g;if(2===c.type)g=document.createTextNode(c.content||"");else if(3===c.type)g=document.createElement("b");else if(4===c.type)g=document.createElement("i");else if(7===c.type&&f)g=document.createElement("code");else if(5===c.type&&e){let a=document.createElement("a");e.disposables.add((0,d.un)(a,"click",a=>{e.callback(String(c.index),a)})),g=a}else 8===c.type?g=document.createElement("br"):1===c.type&&(g=b);g&&b!==g&&b.appendChild(g),g&&Array.isArray(c.children)&&c.children.forEach(b=>{a(g,b,e,f)})}(a,function(a){let b={type:1,children:[]},c=0,d=b,e=[],f=new g(a);for(;!f.eos();){let a=f.next(),b="\\"===a&&0!==h(f.peek());if(b&&(a=f.next()),b||0===h(a)||a!==f.peek())if("\n"===a)2===d.type&&(d=e.pop()),d.children.push({type:8});else if(2!==d.type){let b={type:2,content:a};d.children.push(b),e.push(d),d=b}else d.content+=a;else{f.advance(),2===d.type&&(d=e.pop());let b=h(a);if(d.type===b||5===d.type&&6===b)d=e.pop();else{let a={type:b,children:[]};5===b&&(a.index=c,c++),d.children.push(a),e.push(d),d=a}}}return 2===d.type&&(d=e.pop()),b}(e),f?.actionHandler,f?.renderCodeSegments)}else i=this.message.content,(j??document.createElement("div")).textContent=i;j.classList.add(this.classForType(this.message.type));let k=this.stylesForType(this.message.type);return j.style.backgroundColor=k.background??"",j.style.color=k.foreground??"",j.style.border=k.border?`1px solid ${k.border}`:"",(0,d.BC)(a,j),null},onHide:()=>{this.state="closed"},layout:c}),b=3===this.message.type?(0,r.kg)(9,"Error: {0}",this.message.content):2===this.message.type?(0,r.kg)(10,"Warning: {0}",this.message.content):(0,r.kg)(11,"Info: {0}",this.message.content),(0,j.xE)(b),this.state="open"}_hideMessage(){this.contextViewProvider&&("open"===this.state&&this.contextViewProvider.hideContextView(),this.state="idle")}layoutMessage(){"open"===this.state&&this.contextViewProvider&&this.contextViewProvider.layout()}onValueChange(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),this.input.classList.toggle("empty",!this.value),"open"===this.state&&this.contextViewProvider&&this.contextViewProvider.layout(),this.options.hideHoverOnValueChange&&(0,k.i)().hideHover()}updateMirror(){if(!this.mirror)return;let a=this.value,b=10===a.charCodeAt(a.length-1)?" ":"";(a+b).replace(/\u000c/g,"")?this.mirror.textContent=a+b:this.mirror.innerText="\xa0",this.layout()}applyStyles(){let a=this.options.inputBoxStyles,b=a.inputBackground??"",c=a.inputForeground??"",d=a.inputBorder??"";this.element.style.backgroundColor=b,this.element.style.color=c,this.input.style.backgroundColor="inherit",this.input.style.color=c,this.element.style.border=`1px solid ${(0,e.gI)(d,"transparent")}`}layout(){if(!this.mirror)return void this.layoutMessage();let a=this.cachedContentHeight;this.cachedContentHeight=(0,d.OK)(this.mirror),a!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight)),this.layoutMessage()}insertAtCursor(a){let b=this.inputElement,c=b.selectionStart,d=b.selectionEnd,e=b.value;null!==c&&null!==d&&(this.value=e.substr(0,c)+a+e.substr(d),b.setSelectionRange(c+1,c+1),this.layout())}dispose(){this._hideMessage(),this.message=null,this.actionbar?.dispose(),super.dispose()}}class v extends u{constructor(a,b,c){const e=(0,r.kg)(12," or {0} for history","⇅"),f=(0,r.kg)(13," ({0} for history)","⇅");super(a,b,c),this._onDidFocus=this._register(new n.vl),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new n.vl),this.onDidBlur=this._onDidBlur.event,this.history=this._register(new p(c.history,100));const g=()=>{if(c.showHistoryHint&&c.showHistoryHint()&&!this.placeholder.endsWith(e)&&!this.placeholder.endsWith(f)&&this.history.getHistory().length){let a=this.placeholder.endsWith(")")?e:f,b=this.placeholder+a;c.showPlaceholderOnFocus&&!(0,d.X7)(this.input)?this.placeholder=b:this.setPlaceHolder(b)}};this.observer=new MutationObserver((a,b)=>{a.forEach(a=>{a.target.textContent||g()})}),this.observer.observe(this.input,{attributeFilter:["class"]}),this.onfocus(this.input,()=>g()),this.onblur(this.input,()=>{let a=a=>{if(!this.placeholder.endsWith(a))return!1;{let b=this.placeholder.slice(0,this.placeholder.length-a.length);return c.showPlaceholderOnFocus?this.placeholder=b:this.setPlaceHolder(b),!0}};a(f)||a(e)})}dispose(){super.dispose(),this.observer&&(this.observer.disconnect(),this.observer=void 0)}addToHistory(a){this.value&&(a||this.value!==this.getCurrentValue())&&this.history.add(this.value)}isAtLastInHistory(){return this.history.isLast()}isNowhereInHistory(){return this.history.isNowhere()}showNextValue(){this.history.has(this.value)||this.addToHistory();let a=this.getNextValue();a&&(a=a===this.value?this.getNextValue():a),this.value=a??"",(0,j.h5)(this.value?this.value:(0,r.kg)(14,"Cleared Input"))}showPreviousValue(){this.history.has(this.value)||this.addToHistory();let a=this.getPreviousValue();a&&(a=a===this.value?this.getPreviousValue():a),a&&(this.value=a,(0,j.h5)(this.value))}setPlaceHolder(a){super.setPlaceHolder(a),this.setTooltip(a)}onBlur(){super.onBlur(),this._onDidBlur.fire()}onFocus(){super.onFocus(),this._onDidFocus.fire()}getCurrentValue(){let a=this.history.current();return a||(a=this.history.last(),this.history.next()),a}getPreviousValue(){return this.history.previous()||this.history.first()}getNextValue(){return this.history.next()}}},63060:(a,b,c)=>{"use strict";c.d(b,{L:()=>e});var d,e,f=c(33040);(d||(d={})).isThemeColor=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id},function(a){a.iconNameSegment="[A-Za-z0-9]+",a.iconNameExpression="[A-Za-z0-9-]+",a.iconModifierExpression="~[A-Za-z]+",a.iconNameCharacter="[A-Za-z0-9~-]";let b=RegExp(`^(${a.iconNameExpression})(${a.iconModifierExpression})?$`);function c(a){let d=b.exec(a.id);if(!d)return c(f.W.error);let[,e,g]=d,h=["codicon","codicon-"+e];return g&&h.push("codicon-modifier-"+g.substring(1)),h}a.asClassNameArray=c,a.asClassName=function(a){return c(a).join(" ")},a.asCSSSelector=function(a){return"."+c(a).join(".")},a.isThemeIcon=function(a){return!!a&&"object"==typeof a&&"string"==typeof a.id&&(void 0===a.color||d.isThemeColor(a.color))};let e=RegExp(`^\\$\\((${a.iconNameExpression}(?:${a.iconModifierExpression})?)\\)$`);a.fromString=function(a){let b=e.exec(a);if(!b)return;let[,c]=b;return{id:c}},a.fromId=function(a){return{id:a}},a.modify=function(a,b){let c=a.id,d=c.lastIndexOf("~");return -1!==d&&(c=c.substring(0,d)),b&&(c=`${c}~${b}`),{id:c}},a.getModifier=function(a){let b=a.id.lastIndexOf("~");if(-1!==b)return a.id.substring(b+1)},a.isEqual=function(a,b){return a.id===b.id&&a.color?.id===b.color?.id},a.isFile=function(a){return a?.id===f.W.file.id},a.isFolder=function(a){return a?.id===f.W.folder.id}}(e||(e={}))},63405:()=>{},63838:()=>{},63914:(a,b,c)=>{"use strict";a.exports=c.p+"static/media/editorWebWorkerMain.aa8a11ab.js"},64103:(a,b,c)=>{"use strict";c.d(b,{kI:()=>cN,Bz:()=>cC,J8:()=>cD});var d,e,f,g,h=c(81309),i=c(67298),j=c(55404),k=c(66036),l=c(95091),m=c(76631),n=c(26529),o=c(54957),p=c(58254),q=c(98030),r=c(35590),s=c(62286),t=c(64687),u=c(85030),v=c(6812),w=c(61822),x=c(77509),y=c(81325),z=c(16202),A=c(94630),B=c(28574),C=c(7846),D=c(91324),E=c(99807),F=c(89665);class G{constructor(a,b,c,d){this.range=a,this.nestingLevel=b,this.nestingLevelOfEqualBracketType=c,this.isInvalid=d}}class H{constructor(a,b,c,d,e,f){this.range=a,this.openingBracketRange=b,this.closingBracketRange=c,this.nestingLevel=d,this.nestingLevelOfEqualBracketType=e,this.bracketPairNode=f}get openingBracketInfo(){return this.bracketPairNode.openingBracket.bracketInfo}}class I extends H{constructor(a,b,c,d,e,f,g){super(a,b,c,d,e,f),this.minVisibleColumnIndentation=g}}var J=c(72499),K=c(18530),L=c(26346);let M=[];class N{static{this.cache=Array(129)}static create(a,b){if(a<=128&&0===b.length){let c=N.cache[a];return c||(c=new N(a,b),N.cache[a]=c),c}return new N(a,b)}static{this.empty=N.create(0,M)}static getEmpty(){return this.empty}constructor(a,b){this.items=a,this.additionalItems=b}add(a,b){let c=b.getKey(a),d=c>>5;if(0===d){let a=1<<c|this.items;return a===this.items?this:N.create(a,this.additionalItems)}d--;let e=this.additionalItems.slice(0);for(;e.length<d;)e.push(0);return e[d]|=1<<(31&c),N.create(this.items,e)}merge(a){let b=this.items|a.items;if(this.additionalItems===M&&a.additionalItems===M)return b===this.items?this:b===a.items?a:N.create(b,M);let c=[];for(let b=0;b<Math.max(this.additionalItems.length,a.additionalItems.length);b++){let d=this.additionalItems[b]||0,e=a.additionalItems[b]||0;c.push(d|e)}return N.create(b,c)}intersects(a){if((this.items&a.items)!=0)return!0;for(let b=0;b<Math.min(this.additionalItems.length,a.additionalItems.length);b++)if((this.additionalItems[b]&a.additionalItems[b])!=0)return!0;return!1}}let O={getKey:a=>a};class P{constructor(){this.items=new Map}getKey(a){let b=this.items.get(a);return void 0===b&&(b=this.items.size,this.items.set(a,b)),b}}class Q{get length(){return this._length}constructor(a){this._length=a}}class R extends Q{static create(a,b,c){let d=a.length;return b&&(d=(0,L.QB)(d,b.length)),c&&(d=(0,L.QB)(d,c.length)),new R(d,a,b,c,b?b.missingOpeningBracketIds:N.getEmpty())}get kind(){return 2}get listHeight(){return 0}get childrenLength(){return 3}getChild(a){switch(a){case 0:return this.openingBracket;case 1:return this.child;case 2:return this.closingBracket}throw Error("Invalid child index")}get children(){let a=[];return a.push(this.openingBracket),this.child&&a.push(this.child),this.closingBracket&&a.push(this.closingBracket),a}constructor(a,b,c,d,e){super(a),this.openingBracket=b,this.child=c,this.closingBracket=d,this.missingOpeningBracketIds=e}canBeReused(a){return!(null===this.closingBracket||a.intersects(this.missingOpeningBracketIds))}deepClone(){return new R(this.length,this.openingBracket.deepClone(),this.child&&this.child.deepClone(),this.closingBracket&&this.closingBracket.deepClone(),this.missingOpeningBracketIds)}computeMinIndentation(a,b){return this.child?this.child.computeMinIndentation((0,L.QB)(a,this.openingBracket.length),b):Number.MAX_SAFE_INTEGER}}class S extends Q{static create23(a,b,c,d=!1){let e=a.length,f=a.missingOpeningBracketIds;if(a.listHeight!==b.listHeight)throw Error("Invalid list heights");if(e=(0,L.QB)(e,b.length),f=f.merge(b.missingOpeningBracketIds),c){if(a.listHeight!==c.listHeight)throw Error("Invalid list heights");e=(0,L.QB)(e,c.length),f=f.merge(c.missingOpeningBracketIds)}return d?new U(e,a.listHeight+1,a,b,c,f):new T(e,a.listHeight+1,a,b,c,f)}static getEmpty(){return new W(L.Vp,0,[],N.getEmpty())}get kind(){return 4}get missingOpeningBracketIds(){return this._missingOpeningBracketIds}constructor(a,b,c){super(a),this.listHeight=b,this._missingOpeningBracketIds=c,this.cachedMinIndentation=-1}throwIfImmutable(){}makeLastElementMutable(){this.throwIfImmutable();let a=this.childrenLength;if(0===a)return;let b=this.getChild(a-1),c=4===b.kind?b.toMutable():b;return b!==c&&this.setChild(a-1,c),c}makeFirstElementMutable(){if(this.throwIfImmutable(),0===this.childrenLength)return;let a=this.getChild(0),b=4===a.kind?a.toMutable():a;return a!==b&&this.setChild(0,b),b}canBeReused(a){if(a.intersects(this.missingOpeningBracketIds)||0===this.childrenLength)return!1;let b=this;for(;4===b.kind;){let a=b.childrenLength;if(0===a)throw new k.D7;b=b.getChild(a-1)}return b.canBeReused(a)}handleChildrenChanged(){this.throwIfImmutable();let a=this.childrenLength,b=this.getChild(0).length,c=this.getChild(0).missingOpeningBracketIds;for(let d=1;d<a;d++){let a=this.getChild(d);b=(0,L.QB)(b,a.length),c=c.merge(a.missingOpeningBracketIds)}this._length=b,this._missingOpeningBracketIds=c,this.cachedMinIndentation=-1}computeMinIndentation(a,b){if(-1!==this.cachedMinIndentation)return this.cachedMinIndentation;let c=Number.MAX_SAFE_INTEGER,d=a;for(let a=0;a<this.childrenLength;a++){let e=this.getChild(a);e&&(c=Math.min(c,e.computeMinIndentation(d,b)),d=(0,L.QB)(d,e.length))}return this.cachedMinIndentation=c,c}}class T extends S{get childrenLength(){return null!==this._item3?3:2}getChild(a){switch(a){case 0:return this._item1;case 1:return this._item2;case 2:return this._item3}throw Error("Invalid child index")}setChild(a,b){switch(a){case 0:this._item1=b;return;case 1:this._item2=b;return;case 2:this._item3=b;return}throw 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(a,b,c,d,e,f){super(a,b,f),this._item1=c,this._item2=d,this._item3=e}deepClone(){return new T(this.length,this.listHeight,this._item1.deepClone(),this._item2.deepClone(),this._item3?this._item3.deepClone():null,this.missingOpeningBracketIds)}appendChildOfSameHeight(a){if(this._item3)throw Error("Cannot append to a full (2,3) tree node");this.throwIfImmutable(),this._item3=a,this.handleChildrenChanged()}unappendChild(){if(!this._item3)throw Error("Cannot remove from a non-full (2,3) tree node");this.throwIfImmutable();let a=this._item3;return this._item3=null,this.handleChildrenChanged(),a}prependChildOfSameHeight(a){if(this._item3)throw Error("Cannot prepend to a full (2,3) tree node");this.throwIfImmutable(),this._item3=this._item2,this._item2=this._item1,this._item1=a,this.handleChildrenChanged()}unprependChild(){if(!this._item3)throw Error("Cannot remove from a non-full (2,3) tree node");this.throwIfImmutable();let a=this._item1;return this._item1=this._item2,this._item2=this._item3,this._item3=null,this.handleChildrenChanged(),a}toMutable(){return this}}class U extends T{toMutable(){return new T(this.length,this.listHeight,this.item1,this.item2,this.item3,this.missingOpeningBracketIds)}throwIfImmutable(){throw Error("this instance is immutable")}}class V extends S{get childrenLength(){return this._children.length}getChild(a){return this._children[a]}setChild(a,b){this._children[a]=b}get children(){return this._children}constructor(a,b,c,d){super(a,b,d),this._children=c}deepClone(){let a=Array(this._children.length);for(let b=0;b<this._children.length;b++)a[b]=this._children[b].deepClone();return new V(this.length,this.listHeight,a,this.missingOpeningBracketIds)}appendChildOfSameHeight(a){this.throwIfImmutable(),this._children.push(a),this.handleChildrenChanged()}unappendChild(){this.throwIfImmutable();let a=this._children.pop();return this.handleChildrenChanged(),a}prependChildOfSameHeight(a){this.throwIfImmutable(),this._children.unshift(a),this.handleChildrenChanged()}unprependChild(){this.throwIfImmutable();let a=this._children.shift();return this.handleChildrenChanged(),a}toMutable(){return this}}class W extends V{toMutable(){return new V(this.length,this.listHeight,[...this.children],this.missingOpeningBracketIds)}throwIfImmutable(){throw Error("this instance is immutable")}}let X=[];class Y extends Q{get listHeight(){return 0}get childrenLength(){return 0}getChild(a){return null}get children(){return X}deepClone(){return this}}class Z extends Y{get kind(){return 0}get missingOpeningBracketIds(){return N.getEmpty()}canBeReused(a){return!0}computeMinIndentation(a,b){let c=(0,L.l4)(a),d=(0===c.columnCount?c.lineCount:c.lineCount+1)+1,e=(0,L.eu)((0,L.QB)(a,this.length))+1,f=Number.MAX_SAFE_INTEGER;for(let a=d;a<=e;a++){let c=b.getLineFirstNonWhitespaceColumn(a),d=b.getLineContent(a);0!==c&&(f=Math.min(f,K.A.visibleColumnFromColumn(d,c,b.getOptions().tabSize)))}return f}}class $ extends Y{static create(a,b,c){return new $(a,b,c)}get kind(){return 1}get missingOpeningBracketIds(){return N.getEmpty()}constructor(a,b,c){super(a),this.bracketInfo=b,this.bracketIds=c}get text(){return this.bracketInfo.bracketText}get languageId(){return this.bracketInfo.languageId}canBeReused(a){return!1}computeMinIndentation(a,b){return Number.MAX_SAFE_INTEGER}}class _ extends Y{get kind(){return 3}constructor(a,b){super(b),this.missingOpeningBracketIds=a}canBeReused(a){return!a.intersects(this.missingOpeningBracketIds)}computeMinIndentation(a,b){return Number.MAX_SAFE_INTEGER}}var aa=c(70233);class ab{constructor(a,b,c,d,e){this.length=a,this.kind=b,this.bracketId=c,this.bracketIds=d,this.astNode=e}}class ac{constructor(a,b){this.textModel=a,this.bracketTokens=b,this.reader=new ad(this.textModel,this.bracketTokens),this._offset=L.Vp,this.didPeek=!1,this.peeked=null,this.textBufferLineCount=a.getLineCount(),this.textBufferLastLineLength=a.getLineLength(this.textBufferLineCount)}get offset(){return this._offset}get length(){return(0,L.qe)(this.textBufferLineCount-1,this.textBufferLastLineLength)}skip(a){this.didPeek=!1,this._offset=(0,L.QB)(this._offset,a);let b=(0,L.l4)(this._offset);this.reader.setPosition(b.lineCount,b.columnCount)}read(){let a;return this.peeked?(this.didPeek=!1,a=this.peeked):a=this.reader.read(),a&&(this._offset=(0,L.QB)(this._offset,a.length)),a}peek(){return this.didPeek||(this.peeked=this.reader.read(),this.didPeek=!0),this.peeked}}class ad{constructor(a,b){this.textModel=a,this.bracketTokens=b,this.lineIdx=0,this.line=null,this.lineCharOffset=0,this.lineTokens=null,this.lineTokenOffset=0,this.peekedToken=null,this.textBufferLineCount=a.getLineCount(),this.textBufferLastLineLength=a.getLineLength(this.textBufferLineCount)}setPosition(a,b){a===this.lineIdx?(this.lineCharOffset=b,null!==this.line&&(this.lineTokenOffset=0===this.lineCharOffset?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset))):(this.lineIdx=a,this.lineCharOffset=b,this.line=null),this.peekedToken=null}read(){if(this.peekedToken){let a=this.peekedToken;return this.peekedToken=null,this.lineCharOffset+=(0,L.sS)(a.length),a}if(this.lineIdx>this.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;null===this.line&&(this.lineTokens=this.textModel.tokenization.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=0===this.lineCharOffset?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));let a=this.lineIdx,b=this.lineCharOffset,c=0;for(;;){let d=this.lineTokens,e=d.getCount(),f=null;if(this.lineTokenOffset<e){let g=d.getMetadata(this.lineTokenOffset);for(;this.lineTokenOffset+1<e&&g===d.getMetadata(this.lineTokenOffset+1);)this.lineTokenOffset++;let h=0===aa.x.getTokenType(g),i=aa.x.containsBalancedBrackets(g),j=d.getEndOffset(this.lineTokenOffset);if(i&&h&&this.lineCharOffset<j){let a=d.getLanguageId(this.lineTokenOffset),b=this.line.substring(this.lineCharOffset,j),c=this.bracketTokens.getSingleLanguageBracketTokens(a),e=c.regExpGlobal;if(e){e.lastIndex=0;let a=e.exec(b);a&&(f=c.getToken(a[0]))&&(this.lineCharOffset+=a.index)}}if(c+=j-this.lineCharOffset,f)if(a===this.lineIdx&&b===this.lineCharOffset)return this.lineCharOffset+=(0,L.sS)(f.length),f;else{this.peekedToken=f;break}this.lineTokenOffset++,this.lineCharOffset=j}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,(c+=33)>1e3))break;if(c>1500)break}let d=(0,L.C7)(a,b,this.lineIdx,this.lineCharOffset);return new ab(d,0,-1,N.getEmpty(),new Z(d))}}class ae{constructor(a,b){let c;this.text=a,this._offset=L.Vp,this.idx=0;const d=b.getRegExpStr(),e=d?RegExp(d+"|\n","gi"):null,f=[];let g=0,h=0,i=0,j=0;const k=[];for(let a=0;a<60;a++)k.push(new ab((0,L.qe)(0,a),0,-1,N.getEmpty(),new Z((0,L.qe)(0,a))));const l=[];for(let a=0;a<60;a++)l.push(new ab((0,L.qe)(1,a),0,-1,N.getEmpty(),new Z((0,L.qe)(1,a))));if(e)for(e.lastIndex=0;null!==(c=e.exec(a));){const a=c.index,d=c[0];if("\n"===d)g++,h=a+1;else{if(i!==a){let b;if(j===g){const c=a-i;if(c<k.length)b=k[c];else{const a=(0,L.qe)(0,c);b=new ab(a,0,-1,N.getEmpty(),new Z(a))}}else{const c=g-j,d=a-h;if(1===c&&d<l.length)b=l[d];else{const a=(0,L.qe)(c,d);b=new ab(a,0,-1,N.getEmpty(),new Z(a))}}f.push(b)}f.push(b.getToken(d)),i=a+d.length,j=g}}const m=a.length;if(i!==m){const a=j===g?(0,L.qe)(0,m-i):(0,L.qe)(g-j,m-h);f.push(new ab(a,0,-1,N.getEmpty(),new Z(a)))}this.length=(0,L.qe)(g,m-h),this.tokens=f}get offset(){return this._offset}read(){return this.tokens[this.idx++]||null}peek(){return this.tokens[this.idx]||null}skip(a){throw new k.EM}}class af{static createFromLanguage(a,b){function c(a){return b.getKey(`${a.languageId}:::${a.bracketText}`)}let d=new Map;for(let b of a.bracketsNew.openingBrackets){let a=(0,L.qe)(0,b.bracketText.length),e=c(b),f=N.getEmpty().add(e,O);d.set(b.bracketText,new ab(a,1,e,f,$.create(a,b,f)))}for(let b of a.bracketsNew.closingBrackets){let a=(0,L.qe)(0,b.bracketText.length),e=N.getEmpty(),f=b.getOpeningBrackets();for(let a of f)e=e.add(c(a),O);d.set(b.bracketText,new ab(a,2,c(f[0]),e,$.create(a,b,e)))}return new af(d)}constructor(a){this.map=a,this.hasRegExp=!1,this._regExpGlobal=null}getRegExpStr(){if(this.isEmpty)return null;{let a=[...this.map.keys()];return a.sort(),a.reverse(),a.map(a=>{var b;let c;return b=a,c=(0,n.bm)(b),/^[\w ]+/.test(b)&&(c=`\\b${c}`),/[\w ]+$/.test(b)&&(c=`${c}\\b`),c}).join("|")}}get regExpGlobal(){if(!this.hasRegExp){let a=this.getRegExpStr();this._regExpGlobal=a?RegExp(a,"gi"):null,this.hasRegExp=!0}return this._regExpGlobal}getToken(a){return this.map.get(a.toLowerCase())}findClosingTokenText(a){for(let[b,c]of this.map)if(2===c.kind&&c.bracketIds.intersects(a))return b}get isEmpty(){return 0===this.map.size}}class ag{constructor(a,b){this.denseKeyProvider=a,this.getLanguageConfiguration=b,this.languageIdToBracketTokens=new Map}didLanguageChange(a){return this.languageIdToBracketTokens.has(a)}getSingleLanguageBracketTokens(a){let b=this.languageIdToBracketTokens.get(a);return b||(b=af.createFromLanguage(this.getLanguageConfiguration(a),this.denseKeyProvider),this.languageIdToBracketTokens.set(a,b)),b}}function ah(a,b=!1){if(0===a.length)return null;if(1===a.length)return a[0];let c=a.length;for(;c>3;){let d=c>>1;for(let e=0;e<d;e++){let d=e<<1;a[e]=S.create23(a[d],a[d+1],d+3===c?a[d+2]:null,b)}c=d}return S.create23(a[0],a[1],c>=3?a[2]:null,b)}function ai(a,b){return Math.abs(a.listHeight-b.listHeight)}function aj(a,b){return a.listHeight===b.listHeight?S.create23(a,b,null,!1):a.listHeight>b.listHeight?function(a,b){let c,d=a=a.toMutable(),e=[];for(;;){if(b.listHeight===d.listHeight){c=b;break}if(4!==d.kind)throw Error("unexpected");e.push(d),d=d.makeLastElementMutable()}for(let a=e.length-1;a>=0;a--){let b=e[a];c?b.childrenLength>=3?c=S.create23(b.unappendChild(),c,null,!1):(b.appendChildOfSameHeight(c),c=void 0):b.handleChildrenChanged()}return c?S.create23(a,c,null,!1):a}(a,b):function(a,b){let c=a=a.toMutable(),d=[];for(;b.listHeight!==c.listHeight;){if(4!==c.kind)throw Error("unexpected");d.push(c),c=c.makeFirstElementMutable()}let e=b;for(let a=d.length-1;a>=0;a--){let b=d[a];e?b.childrenLength>=3?e=S.create23(e,b.unprependChild(),null,!1):(b.prependChildOfSameHeight(e),e=void 0):b.handleChildrenChanged()}return e?S.create23(e,a,null,!1):a}(b,a)}class ak{constructor(a){this.lastOffset=L.Vp,this.nextNodes=[a],this.offsets=[L.Vp],this.idxs=[]}readLongestNodeAt(a,b){if((0,L.zG)(a,this.lastOffset))throw Error("Invalid offset");for(this.lastOffset=a;;){let c=am(this.nextNodes);if(!c)return;let d=am(this.offsets);if((0,L.zG)(a,d))return;if((0,L.zG)(d,a))if((0,L.QB)(d,c.length)<=a)this.nextNodeAfterCurrent();else{let a=al(c);-1!==a?(this.nextNodes.push(c.getChild(a)),this.offsets.push(d),this.idxs.push(a)):this.nextNodeAfterCurrent()}else{if(b(c))return this.nextNodeAfterCurrent(),c;let a=al(c);if(-1===a)return void this.nextNodeAfterCurrent();this.nextNodes.push(c.getChild(a)),this.offsets.push(d),this.idxs.push(a)}}}nextNodeAfterCurrent(){for(;;){let a=am(this.offsets),b=am(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),0===this.idxs.length)break;let c=am(this.nextNodes),d=al(c,this.idxs[this.idxs.length-1]);if(-1!==d){this.nextNodes.push(c.getChild(d)),this.offsets.push((0,L.QB)(a,b.length)),this.idxs[this.idxs.length-1]=d;break}this.idxs.pop()}}}function al(a,b=-1){for(;;){if(++b>=a.childrenLength)return -1;if(a.getChild(b))return b}}function am(a){return a.length>0?a[a.length-1]:void 0}function an(a,b,c,d){return new ao(a,b,c,d).parseDocument()}class ao{constructor(a,b,c,d){if(this.tokenizer=a,this.createImmutableLists=d,this._itemsConstructed=0,this._itemsFromCache=0,c&&d)throw Error("Not supported");this.oldNodeReader=c?new ak(c):void 0,this.positionMapper=new J.W(b)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let a=this.parseList(N.getEmpty(),0);return a||(a=S.getEmpty()),a}parseList(a,b){let c=[];for(;;){let d=this.tryReadChildFromCache(a);if(!d){let c=this.tokenizer.peek();if(!c||2===c.kind&&c.bracketIds.intersects(a))break;d=this.parseChild(a,b+1)}(4!==d.kind||0!==d.childrenLength)&&c.push(d)}return this.oldNodeReader?function(a){if(0===a.length)return null;if(1===a.length)return a[0];let b=0;function c(){if(b>=a.length)return null;let c=b,d=a[c].listHeight;for(b++;b<a.length&&a[b].listHeight===d;)b++;return b-c>=2?ah(0===c&&b===a.length?a:a.slice(c,b),!1):a[c]}let d=c(),e=c();if(!e)return d;for(let a=c();a;a=c())ai(d,e)<=ai(e,a)?(d=aj(d,e),e=a):e=aj(e,a);return aj(d,e)}(c):ah(c,this.createImmutableLists)}tryReadChildFromCache(a){if(this.oldNodeReader){let b=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(null===b||!(0,L.Vh)(b)){let c=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),c=>(null===b||!!(0,L.zG)(c.length,b))&&c.canBeReused(a));if(c)return this._itemsFromCache++,this.tokenizer.skip(c.length),c}}}parseChild(a,b){this._itemsConstructed++;let c=this.tokenizer.read();switch(c.kind){case 2:return new _(c.bracketIds,c.length);case 0:return c.astNode;case 1:{if(b>300)return new Z(c.length);let d=a.merge(c.bracketIds),e=this.parseList(d,b+1),f=this.tokenizer.peek();if(f&&2===f.kind&&(f.bracketId===c.bracketId||f.bracketIds.intersects(c.bracketIds)))return this.tokenizer.read(),R.create(c.astNode,e,f.astNode);return R.create(c.astNode,e,null)}default:throw Error("unexpected")}}}var ap=c(20165);class aq extends m.jG{didLanguageChange(a){return this.brackets.didLanguageChange(a)}constructor(a,b){if(super(),this.textModel=a,this.getLanguageConfiguration=b,this.didChangeEmitter=this._register(new l.vl),this.denseKeyProvider=new P,this.brackets=new ag(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this.queuedTextEditsForInitialAstWithoutTokens=[],this.queuedTextEdits=[],a.tokenization.hasTokens)2===a.tokenization.backgroundTokenizationState?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens);else{const a=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),b=new ae(this.textModel.getValue(),a);this.initialAstWithoutTokens=an(b,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}}handleDidChangeBackgroundTokenizationState(){if(2===this.textModel.tokenization.backgroundTokenizationState){let a=void 0===this.initialAstWithoutTokens;this.initialAstWithoutTokens=void 0,a||this.didChangeEmitter.fire()}}handleDidChangeTokens({ranges:a}){let b=a.map(a=>new J.c((0,L.qe)(a.fromLineNumber-1,0),(0,L.qe)(a.toLineNumber,0),(0,L.qe)(a.toLineNumber-a.fromLineNumber+1,0)));this.handleEdits(b,!0),this.initialAstWithoutTokens||this.didChangeEmitter.fire()}handleContentChanged(a){let b=J.c.fromModelContentChanges(a.changes);this.handleEdits(b,!1)}handleEdits(a,b){let c=(0,ap.M)(this.queuedTextEdits,a);this.queuedTextEdits=c,this.initialAstWithoutTokens&&!b&&(this.queuedTextEditsForInitialAstWithoutTokens=(0,ap.M)(this.queuedTextEditsForInitialAstWithoutTokens,a))}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(a,b,c){return an(new ac(this.textModel,this.brackets),a,b,c)}getBracketsInRange(a,b){this.flushQueue();let c=(0,L.qe)(a.startLineNumber-1,a.startColumn-1),d=(0,L.qe)(a.endLineNumber-1,a.endColumn-1);return new h.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens;!function a(b,c,d,e,f,g,h,i,j,k,l=!1){if(h>200)return!0;a:for(;;)switch(b.kind){case 4:{let i=b.childrenLength;for(let l=0;l<i;l++){let i=b.getChild(l);if(i){if(d=(0,L.QB)(c,i.length),(0,L.vr)(c,f)&&(0,L.o0)(d,e)){if((0,L.o0)(d,f)){b=i;continue a}if(!a(i,c,d,e,f,g,h,0,j,k))return!1}c=d}}return!0}case 2:{let l=!k||!b.closingBracket||b.closingBracket.bracketInfo.closesColorized(b.openingBracket.bracketInfo),m=0;if(j){let a=j.get(b.openingBracket.text);void 0===a&&(a=0),m=a,l&&(a++,j.set(b.openingBracket.text,a))}let n=b.childrenLength;for(let o=0;o<n;o++){let n=b.getChild(o);if(n){if(d=(0,L.QB)(c,n.length),(0,L.vr)(c,f)&&(0,L.o0)(d,e)){if((0,L.o0)(d,f)&&1!==n.kind){b=n,l?(h++,i=m+1):i=m;continue a}if((l||1!==n.kind||!b.closingBracket)&&!a(n,c,d,e,f,g,l?h+1:h,l?m+1:m,j,k,!b.closingBracket))return!1}c=d}}return j?.set(b.openingBracket.text,m),!0}case 3:return g(new G((0,L.Qx)(c,d),h-1,0,!0));case 1:return g(new G((0,L.Qx)(c,d),h-1,i-1,l));case 0:return!0}}(e,L.Vp,e.length,c,d,a,0,0,new Map,b)})}getBracketPairsInRange(a,b){this.flushQueue();let c=(0,L.VL)(a.getStartPosition()),d=(0,L.VL)(a.getEndPosition());return new h.c1(a=>{let e=this.initialAstWithoutTokens||this.astWithTokens,f=new ar(a,b,this.textModel);!function a(b,c,d,e,f,g,h,i){if(h>200)return!0;let j=!0;if(2===b.kind){let k=0;if(i){let a=i.get(b.openingBracket.text);void 0===a&&(a=0),k=a,a++,i.set(b.openingBracket.text,a)}let l=(0,L.QB)(c,b.openingBracket.length),m=-1;if(g.includeMinIndentation&&(m=b.computeMinIndentation(c,g.textModel)),j=g.push(new I((0,L.Qx)(c,d),(0,L.Qx)(c,l),b.closingBracket?(0,L.Qx)((0,L.QB)(l,b.child?.length||L.Vp),d):void 0,h,k,b,m)),c=l,j&&b.child){let k=b.child;if(d=(0,L.QB)(c,k.length),(0,L.vr)(c,f)&&(0,L.o0)(d,e)&&!(j=a(k,c,d,e,f,g,h+1,i)))return!1}i?.set(b.openingBracket.text,k)}else{let d=c;for(let c of b.children){let b=d;if(d=(0,L.QB)(d,c.length),(0,L.vr)(b,f)&&(0,L.vr)(e,d)&&!(j=a(c,b,d,e,f,g,h,i)))return!1}}return j}(e,L.Vp,e.length,c,d,f,0,new Map)})}getFirstBracketAfter(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind)for(let f of b.children){if(d=(0,L.QB)(c,f.length),(0,L.zG)(e,d)){let b=a(f,c,d,e);if(b)return b}c=d}else if(3===b.kind);else if(1===b.kind){let a=(0,L.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,L.Vp,b.length,(0,L.VL)(a))}getFirstBracketBefore(a){this.flushQueue();let b=this.initialAstWithoutTokens||this.astWithTokens;return function a(b,c,d,e){if(4===b.kind||2===b.kind){let f=[];for(let a of b.children)d=(0,L.QB)(c,a.length),f.push({nodeOffsetStart:c,nodeOffsetEnd:d}),c=d;for(let c=f.length-1;c>=0;c--){let{nodeOffsetStart:d,nodeOffsetEnd:g}=f[c];if((0,L.zG)(d,e)){let f=a(b.children[c],d,g,e);if(f)return f}}}else if(3===b.kind);else if(1===b.kind){let a=(0,L.Qx)(c,d);return{bracketInfo:b.bracketInfo,range:a}}return null}(b,L.Vp,b.length,(0,L.VL)(a))}}class ar{constructor(a,b,c){this.push=a,this.includeMinIndentation=b,this.textModel=c}}class as extends m.jG{get canBuildAST(){return 5e6>=this.textModel.getValueLength()}constructor(a,b){super(),this.textModel=a,this.languageConfigurationService=b,this.bracketPairsTree=this._register(new m.HE),this.onDidChangeEmitter=this._register(new l.vl),this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1}handleLanguageConfigurationServiceChange(a){(!a.languageId||this.bracketPairsTree.value?.object.didLanguageChange(a.languageId))&&(this.bracketPairsTree.clear(),this.updateBracketPairsTree())}handleDidChangeOptions(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeLanguage(a){this.bracketPairsTree.clear(),this.updateBracketPairsTree()}handleDidChangeContent(a){this.bracketPairsTree.value?.object.handleContentChanged(a)}handleDidChangeBackgroundTokenizationState(){this.bracketPairsTree.value?.object.handleDidChangeBackgroundTokenizationState()}handleDidChangeTokens(a){this.bracketPairsTree.value?.object.handleDidChangeTokens(a)}updateBracketPairsTree(){if(this.bracketsRequested&&this.canBuildAST){if(!this.bracketPairsTree.value){var a,b;let c=new m.Cm;this.bracketPairsTree.value=(a=c.add(new aq(this.textModel,a=>this.languageConfigurationService.getLanguageConfiguration(a))),b=c,{object:a,dispose:()=>b?.dispose()}),c.add(this.bracketPairsTree.value.object.onDidChange(a=>this.onDidChangeEmitter.fire(a))),this.onDidChangeEmitter.fire()}}else this.bracketPairsTree.value&&(this.bracketPairsTree.clear(),this.onDidChangeEmitter.fire())}getBracketPairsInRange(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!1)||h.c1.empty}getBracketPairsInRangeWithMinIndentation(a){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketPairsInRange(a,!0)||h.c1.empty}getBracketsInRange(a,b=!1){return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getBracketsInRange(a,b)||h.c1.empty}findMatchingBracketUp(a,b,c){let d=this.textModel.validatePosition(b),e=this.textModel.getLanguageIdAtPosition(d.lineNumber,d.column);if(this.canBuildAST){let c=this.languageConfigurationService.getLanguageConfiguration(e).bracketsNew.getClosingBracketInfo(a);if(!c)return null;let d=this.getBracketPairsInRange(w.Q.fromPositions(b,b)).findLast(a=>c.closes(a.openingBracketInfo));return d?d.openingBracketRange:null}{let b=a.toLowerCase(),f=this.languageConfigurationService.getLanguageConfiguration(e).brackets;if(!f)return null;let g=f.textIsBracket[b];return g?av(this._findMatchingBracketUp(g,d,at(c))):null}}matchBracket(a,b){if(this.canBuildAST){let b=this.getBracketPairsInRange(w.Q.fromPositions(a,a)).filter(b=>void 0!==b.closingBracketRange&&(b.openingBracketRange.containsPosition(a)||b.closingBracketRange.containsPosition(a))).findLastMaxBy((0,h.VE)(b=>b.openingBracketRange.containsPosition(a)?b.openingBracketRange:b.closingBracketRange,w.Q.compareRangesUsingStarts));return b?[b.openingBracketRange,b.closingBracketRange]:null}{let c=at(b);return this._matchBracket(this.textModel.validatePosition(a),c)}}_establishBracketSearchOffsets(a,b,c,d){let e=b.getCount(),f=b.getLanguageId(d),g=Math.max(0,a.column-1-c.maxBracketLength);for(let a=d-1;a>=0;a--){let c=b.getEndOffset(a);if(c<=g)break;if((0,E.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){g=c;break}}let h=Math.min(b.getLineContent().length,a.column-1+c.maxBracketLength);for(let a=d+1;a<e;a++){let c=b.getStartOffset(a);if(c>=h)break;if((0,E.Yo)(b.getStandardTokenType(a))||b.getLanguageId(a)!==f){h=c;break}}return{searchStartOffset:g,searchEndOffset:h}}_matchBracket(a,b){let c=a.lineNumber,d=this.textModel.tokenization.getLineTokens(c),e=this.textModel.getLineContent(c),f=d.findTokenIndexAtOffset(a.column-1);if(f<0)return null;let g=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(f)).brackets;if(g&&!(0,E.Yo)(d.getStandardTokenType(f))){let{searchStartOffset:h,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,g,f),j=null;for(;;){let d=F.Fu.findNextBracketInRange(g.forwardRegex,c,e,h,i);if(!d)break;if(d.startColumn<=a.column&&a.column<=d.endColumn){let a=e.substring(d.startColumn-1,d.endColumn-1).toLowerCase(),c=this._matchFoundBracket(d,g.textIsBracket[a],g.textIsOpenBracket[a],b);if(c){if(c instanceof au)return null;j=c}}h=d.endColumn-1}if(j)return j}if(f>0&&d.getStartOffset(f)===a.column-1){let g=f-1,h=this.languageConfigurationService.getLanguageConfiguration(d.getLanguageId(g)).brackets;if(h&&!(0,E.Yo)(d.getStandardTokenType(g))){let{searchStartOffset:f,searchEndOffset:i}=this._establishBracketSearchOffsets(a,d,h,g),j=F.Fu.findPrevBracketInRange(h.reversedRegex,c,e,f,i);if(j&&j.startColumn<=a.column&&a.column<=j.endColumn){let a=e.substring(j.startColumn-1,j.endColumn-1).toLowerCase(),c=this._matchFoundBracket(j,h.textIsBracket[a],h.textIsOpenBracket[a],b);if(c)return c instanceof au?null:c}}}return null}_matchFoundBracket(a,b,c,d){if(!b)return null;let e=c?this._findMatchingBracketDown(b,a.getEndPosition(),d):this._findMatchingBracketUp(b,a.getStartPosition(),d);return e?e instanceof au?e:[a,e]:null}_findMatchingBracketUp(a,b,c){let d=a.languageId,e=a.reversedRegex,f=-1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return au.INSTANCE;let j=F.Fu.findPrevBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;i=j.startColumn-1}return null};for(let a=b.lineNumber;a>=1;a--){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=e-1,i=f.length,j=f.length;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g>=0;g--){let b=c.getLanguageId(g)===d&&!(0,E.Yo)(c.getStandardTokenType(g));if(b)k?i=c.getStartOffset(g):(i=c.getStartOffset(g),j=c.getEndOffset(g));else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}_findMatchingBracketDown(a,b,c){let d=a.languageId,e=a.forwardRegex,f=1,g=0,h=(b,d,h,i)=>{for(;;){if(c&&++g%100==0&&!c())return au.INSTANCE;let j=F.Fu.findNextBracketInRange(e,b,d,h,i);if(!j)break;let k=d.substring(j.startColumn-1,j.endColumn-1).toLowerCase();if(a.isOpen(k)?f++:a.isClose(k)&&f--,0===f)return j;h=j.endColumn-1}return null},i=this.textModel.getLineCount();for(let a=b.lineNumber;a<=i;a++){let c=this.textModel.tokenization.getLineTokens(a),e=c.getCount(),f=this.textModel.getLineContent(a),g=0,i=0,j=0;a===b.lineNumber&&(g=c.findTokenIndexAtOffset(b.column-1),i=b.column-1,j=b.column-1);let k=!0;for(;g<e;g++){let b=c.getLanguageId(g)===d&&!(0,E.Yo)(c.getStandardTokenType(g));if(b)k||(i=c.getStartOffset(g)),j=c.getEndOffset(g);else if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}k=b}if(k&&i!==j){let b=h(a,f,i,j);if(b)return b}}return null}findPrevBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketBefore(b)||null;let c=null,d=null,e=null;for(let a=b.lineNumber;a>=1;a--){let f=this.textModel.tokenization.getLineTokens(a),g=f.getCount(),h=this.textModel.getLineContent(a),i=g-1,j=h.length,k=h.length;if(a===b.lineNumber){i=f.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=f.getLanguageId(i);c!==a&&(c=a,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew)}let l=!0;for(;i>=0;i--){let b=f.getLanguageId(i);if(c!==b){if(d&&e&&l&&j!==k){let b=F.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b);l=!1}c=b,d=this.languageConfigurationService.getLanguageConfiguration(c).brackets,e=this.languageConfigurationService.getLanguageConfiguration(c).bracketsNew}let g=!!d&&!(0,E.Yo)(f.getStandardTokenType(i));if(g)l?j=f.getStartOffset(i):(j=f.getStartOffset(i),k=f.getEndOffset(i));else if(e&&d&&l&&j!==k){let b=F.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}l=g}if(e&&d&&l&&j!==k){let b=F.Fu.findPrevBracketInRange(d.reversedRegex,a,h,j,k);if(b)return this._toFoundBracket(e,b)}}return null}findNextBracket(a){let b=this.textModel.validatePosition(a);if(this.canBuildAST)return this.bracketsRequested=!0,this.updateBracketPairsTree(),this.bracketPairsTree.value?.object.getFirstBracketAfter(b)||null;let c=this.textModel.getLineCount(),d=null,e=null,f=null;for(let a=b.lineNumber;a<=c;a++){let c=this.textModel.tokenization.getLineTokens(a),g=c.getCount(),h=this.textModel.getLineContent(a),i=0,j=0,k=0;if(a===b.lineNumber){i=c.findTokenIndexAtOffset(b.column-1),j=b.column-1,k=b.column-1;let a=c.getLanguageId(i);d!==a&&(d=a,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew)}let l=!0;for(;i<g;i++){let b=c.getLanguageId(i);if(d!==b){if(f&&e&&l&&j!==k){let b=F.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b);l=!1}d=b,e=this.languageConfigurationService.getLanguageConfiguration(d).brackets,f=this.languageConfigurationService.getLanguageConfiguration(d).bracketsNew}let g=!!e&&!(0,E.Yo)(c.getStandardTokenType(i));if(g)l||(j=c.getStartOffset(i)),k=c.getEndOffset(i);else if(f&&e&&l&&j!==k){let b=F.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}l=g}if(f&&e&&l&&j!==k){let b=F.Fu.findNextBracketInRange(e.forwardRegex,a,h,j,k);if(b)return this._toFoundBracket(f,b)}}return null}findEnclosingBrackets(a,b){let c=this.textModel.validatePosition(a);if(this.canBuildAST){let a=w.Q.fromPositions(c),b=this.getBracketPairsInRange(w.Q.fromPositions(c,c)).findLast(b=>void 0!==b.closingBracketRange&&b.range.strictContainsRange(a));return b?[b.openingBracketRange,b.closingBracketRange]:null}let d=at(b),e=this.textModel.getLineCount(),f=new Map,g=[],h=(a,b)=>{if(!f.has(a)){let c=[];for(let a=0,d=b?b.brackets.length:0;a<d;a++)c[a]=0;f.set(a,c)}g=f.get(a)},i=0,j=(a,b,c,e,f)=>{for(;;){if(d&&++i%100==0&&!d())return au.INSTANCE;let h=F.Fu.findNextBracketInRange(a.forwardRegex,b,c,e,f);if(!h)break;let j=c.substring(h.startColumn-1,h.endColumn-1).toLowerCase(),k=a.textIsBracket[j];if(k&&(k.isOpen(j)?g[k.index]++:k.isClose(j)&&g[k.index]--,-1===g[k.index]))return this._matchFoundBracket(h,k,!1,d);e=h.endColumn-1}return null},k=null,l=null;for(let a=c.lineNumber;a<=e;a++){let b=this.textModel.tokenization.getLineTokens(a),d=b.getCount(),e=this.textModel.getLineContent(a),f=0,g=0,i=0;if(a===c.lineNumber){f=b.findTokenIndexAtOffset(c.column-1),g=c.column-1,i=c.column-1;let a=b.getLanguageId(f);k!==a&&(k=a,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l))}let m=!0;for(;f<d;f++){let c=b.getLanguageId(f);if(k!==c){if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return av(b);m=!1}k=c,l=this.languageConfigurationService.getLanguageConfiguration(k).brackets,h(k,l)}let d=!!l&&!(0,E.Yo)(b.getStandardTokenType(f));if(d)m||(g=b.getStartOffset(f)),i=b.getEndOffset(f);else if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return av(b)}m=d}if(l&&m&&g!==i){let b=j(l,a,e,g,i);if(b)return av(b)}}return null}_toFoundBracket(a,b){if(!b)return null;let c=this.textModel.getValueInRange(b);c=c.toLowerCase();let d=a.getBracketInfo(c);return d?{range:b,bracketInfo:d}:null}}function at(a){if(void 0===a)return()=>!0;{let b=Date.now();return()=>Date.now()-b<=a}}class au{static{this.INSTANCE=new au}constructor(){this._searchCanceledBrand=void 0}}function av(a){return a instanceof au?null:a}var aw=c(39924),ax=c(46547);class ay extends m.jG{constructor(a){super(),this.textModel=a,this.colorProvider=new az,this.onDidChangeEmitter=this._register(new l.vl),this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=a.getOptions().bracketPairColorizationOptions,this._register(a.bracketPairs.onDidChange(a=>{this.onDidChangeEmitter.fire()}))}handleDidChangeOptions(a){this.colorizationOptions=this.textModel.getOptions().bracketPairColorizationOptions}getDecorationsInRange(a,b,c,d,e){return e||void 0===b||!this.colorizationOptions.enabled?[]:this.textModel.bracketPairs.getBracketsInRange(a,!0).map(a=>({id:`bracket${a.range.toString()}-${a.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(a,this.colorizationOptions.independentColorPoolPerBracketType)},ownerId:0,range:a.range})).toArray()}getAllDecorations(a,b,c){return void 0!==a&&this.colorizationOptions.enabled?this.getDecorationsInRange(new w.Q(1,1,this.textModel.getLineCount(),1),a,b,c):[]}}class az{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(a,b){return a.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(b?a.nestingLevelOfEqualBracketType:a.nestingLevel)}getInlineClassNameOfLevel(a){return`bracket-highlighting-${a%30}`}}(0,ax.zy)((a,b)=>{let c=[aw.sN,aw.lQ,aw.ss,aw.l5,aw.sH,aw.zp],d=new az;b.addRule(`.monaco-editor .${d.unexpectedClosingBracketClassName} { color: ${a.getColor(aw.s7)}; }`);let e=c.map(b=>a.getColor(b)).filter(a=>!!a).filter(a=>!a.isTransparent());for(let a=0;a<30;a++){let c=e[a%e.length];b.addRule(`.monaco-editor .${d.getInlineClassNameOfLevel(a)} { color: ${c}; }`)}});var aA=c(2097),aB=c(42491);class aC{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}function aD(a,b,c){let d=Math.min(a.getLineCount(),1e4),e=0,f=0,g="",h=0,i=[0,0,0,0,0,0,0,0,0],j=new aC;for(let k=1;k<=d;k++){let d=a.getLineLength(k),l=a.getLineContent(k),m=d<=65536,n=!1,o=0,p=0,q=0;for(let b=0;b<d;b++){let c=m?l.charCodeAt(b):a.getLineCharCode(k,b);if(9===c)q++;else if(32===c)p++;else{n=!0,o=b;break}}if(!n||(q>0?e++:p>1&&f++,!function(a,b,c,d,e){let f;for(e.spacesDiff=0,e.looksLikeAlignment=!1,f=0;f<b&&f<d&&a.charCodeAt(f)===c.charCodeAt(f);f++);let g=0,h=0;for(let c=f;c<b;c++)32===a.charCodeAt(c)?g++:h++;let i=0,j=0;for(let a=f;a<d;a++)32===c.charCodeAt(a)?i++:j++;if(g>0&&h>0||i>0&&j>0)return;let k=Math.abs(h-j),l=Math.abs(g-i);if(0===k){e.spacesDiff=l,l>0&&0<=i-1&&i-1<a.length&&i<c.length&&32!==c.charCodeAt(i)&&32===a.charCodeAt(i-1)&&44===a.charCodeAt(a.length-1)&&(e.looksLikeAlignment=!0);return}l%k==0&&(e.spacesDiff=l/k)}(g,h,l,o,j),j.looksLikeAlignment&&!(c&&b===j.spacesDiff)))continue;let r=j.spacesDiff;r<=8&&i[r]++,g=l,h=o}let k=c;e!==f&&(k=e<f);let l=b;if(k){let a=0;[2,4,6,8,3,5,7].forEach(b=>{let c=i[b];c>a&&(a=c,l=b)}),4===l&&i[4]>0&&i[2]>0&&i[2]>=2*i[4]/3&&(l=2)}return{insertSpaces:k,tabSize:l}}function aE(a){return(1&a.metadata)>>>0}function aF(a,b){a.metadata=254&a.metadata|b}function aG(a){return(2&a.metadata)>>>1==1}function aH(a,b){a.metadata=253&a.metadata|!!b<<1}function aI(a){return(4&a.metadata)>>>2==1}function aJ(a,b){a.metadata=251&a.metadata|!!b<<2}function aK(a){return(64&a.metadata)>>>6==1}function aL(a,b){a.metadata=191&a.metadata|!!b<<6}function aM(a){return(128&a.metadata)>>>7==1}function aN(a,b){a.metadata=127&a.metadata|!!b<<7}function aO(a,b){a.metadata=231&a.metadata|b<<3}function aP(a,b){a.metadata=223&a.metadata|!!b<<5}class aQ{constructor(a,b,c){this.metadata=0,this.parent=this,this.left=this,this.right=this,aF(this,1),this.start=b,this.end=c,this.delta=0,this.maxEnd=c,this.id=a,this.ownerId=0,this.options=null,aJ(this,!1),aL(this,!1),aO(this,1),aP(this,!1),aN(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=null,aH(this,!1)}reset(a,b,c,d){this.start=b,this.end=c,this.maxEnd=c,this.cachedVersionId=a,this.cachedAbsoluteStart=b,this.cachedAbsoluteEnd=c,this.range=d}setOptions(a){this.options=a;let b=this.options.className;aJ(this,"squiggly-error"===b||"squiggly-warning"===b||"squiggly-info"===b),aL(this,null!==this.options.glyphMarginClassName),aO(this,this.options.stickiness),aP(this,this.options.collapseOnReplaceEdit),aN(this,this.options.affectsFont??!1)}setCachedOffsets(a,b,c){this.cachedVersionId!==c&&(this.range=null),this.cachedVersionId=c,this.cachedAbsoluteStart=a,this.cachedAbsoluteEnd=b}detach(){this.parent=null,this.left=null,this.right=null}}let aR=new aQ(null,0,0);aR.parent=aR,aR.left=aR,aR.right=aR,aF(aR,0);class aS{constructor(){this.root=aR,this.requestNormalizeDelta=!1}intervalSearch(a,b,c,d,e,f,g){return this.root===aR?[]:function(a,b,c,d,e,f,g,h){let i=a.root,j=0,k=0,l=0,m=[],n=0;for(;i!==aR;){if(aG(i)){aH(i.left,!1),aH(i.right,!1),i===i.parent.right&&(j-=i.parent.delta),i=i.parent;continue}if(!aG(i.left)){if(j+i.maxEnd<b){aH(i,!0);continue}if(i.left!==aR){i=i.left;continue}}if((k=j+i.start)>c){aH(i,!0);continue}if((l=j+i.end)>=b){i.setCachedOffsets(k,l,g);let a=!0;d&&i.ownerId&&i.ownerId!==d&&(a=!1),e&&aI(i)&&(a=!1),f&&aM(i)&&(a=!1),h&&!aK(i)&&(a=!1),a&&(m[n++]=i)}if(aH(i,!0),i.right!==aR&&!aG(i.right)){j+=i.delta,i=i.right;continue}}return aH(a.root,!1),m}(this,a,b,c,d,e,f,g)}search(a,b,c,d,e){return this.root===aR?[]:function(a,b,c,d,e,f){let g=a.root,h=0,i=0,j=0,k=[],l=0;for(;g!==aR;){if(aG(g)){aH(g.left,!1),aH(g.right,!1),g===g.parent.right&&(h-=g.parent.delta),g=g.parent;continue}if(g.left!==aR&&!aG(g.left)){g=g.left;continue}i=h+g.start,j=h+g.end,g.setCachedOffsets(i,j,e);let a=!0;if(b&&g.ownerId&&g.ownerId!==b&&(a=!1),c&&aI(g)&&(a=!1),d&&aM(g)&&(a=!1),f&&!aK(g)&&(a=!1),a&&(k[l++]=g),aH(g,!0),g.right!==aR&&!aG(g.right)){h+=g.delta,g=g.right;continue}}return aH(a.root,!1),k}(this,a,b,c,d,e)}collectNodesFromOwner(a){return function(a,b){let c=a.root,d=[],e=0;for(;c!==aR;){if(aG(c)){aH(c.left,!1),aH(c.right,!1),c=c.parent;continue}if(c.left!==aR&&!aG(c.left)){c=c.left;continue}if(c.ownerId===b&&(d[e++]=c),aH(c,!0),c.right!==aR&&!aG(c.right)){c=c.right;continue}}return aH(a.root,!1),d}(this,a)}collectNodesPostOrder(){return function(a){let b=a.root,c=[],d=0;for(;b!==aR;){if(aG(b)){aH(b.left,!1),aH(b.right,!1),b=b.parent;continue}if(b.left!==aR&&!aG(b.left)){b=b.left;continue}if(b.right!==aR&&!aG(b.right)){b=b.right;continue}c[d++]=b,aH(b,!0)}return aH(a.root,!1),c}(this)}insert(a){aU(this,a),this._normalizeDeltaIfNecessary()}delete(a){aV(this,a),this._normalizeDeltaIfNecessary()}resolveNode(a,b){let c=a,d=0;for(;a!==this.root;)a===a.parent.right&&(d+=a.parent.delta),a=a.parent;let e=c.start+d,f=c.end+d;c.setCachedOffsets(e,f,b)}acceptReplace(a,b,c,d){let e=function(a,b,c){let d=a.root,e=0,f=0,g=0,h=[],i=0;for(;d!==aR;){if(aG(d)){aH(d.left,!1),aH(d.right,!1),d===d.parent.right&&(e-=d.parent.delta),d=d.parent;continue}if(!aG(d.left)){if(e+d.maxEnd<b){aH(d,!0);continue}if(d.left!==aR){d=d.left;continue}}if((f=e+d.start)>c){aH(d,!0);continue}if((g=e+d.end)>=b&&(d.setCachedOffsets(f,g,0),h[i++]=d),aH(d,!0),d.right!==aR&&!aG(d.right)){e+=d.delta,d=d.right;continue}}return aH(a.root,!1),h}(this,a,a+b);for(let a=0,b=e.length;a<b;a++)aV(this,e[a]);this._normalizeDeltaIfNecessary(),function(a,b,c,d){let e=a.root,f=0,g=d-(c-b);for(;e!==aR;){if(aG(e)){aH(e.left,!1),aH(e.right,!1),e===e.parent.right&&(f-=e.parent.delta),a$(e),e=e.parent;continue}if(!aG(e.left)){if(f+e.maxEnd<b){aH(e,!0);continue}if(e.left!==aR){e=e.left;continue}}if(f+e.start>c){e.start+=g,e.end+=g,e.delta+=g,(e.delta<-0x40000000||e.delta>0x40000000)&&(a.requestNormalizeDelta=!0),aH(e,!0);continue}if(aH(e,!0),e.right!==aR&&!aG(e.right)){f+=e.delta,e=e.right;continue}}aH(a.root,!1)}(this,a,a+b,c),this._normalizeDeltaIfNecessary();for(let f=0,g=e.length;f<g;f++){let g=e[f];g.start=g.cachedAbsoluteStart,g.end=g.cachedAbsoluteEnd,function(a,b,c,d,e){let f=(24&a.metadata)>>>3,g=0===f||2===f,h=1===f||2===f,i=c-b,j=Math.min(i,d),k=a.start,l=!1,m=a.end,n=!1;b<=k&&m<=c&&(32&a.metadata)>>>5==1&&(a.start=b,l=!0,a.end=b,n=!0);{let a=e?1:2*(i>0);!l&&aT(k,g,b,a)&&(l=!0),!n&&aT(m,h,b,a)&&(n=!0)}if(j>0&&!e){let a=2*(i>d);!l&&aT(k,g,b+j,a)&&(l=!0),!n&&aT(m,h,b+j,a)&&(n=!0)}{let f=+!!e;!l&&aT(k,g,c,f)&&(a.start=b+d,l=!0),!n&&aT(m,h,c,f)&&(a.end=b+d,n=!0)}let o=d-i;l||(a.start=Math.max(0,k+o)),n||(a.end=Math.max(0,m+o)),a.start>a.end&&(a.end=a.start)}(g,a,a+b,c,d),g.maxEnd=g.end,aU(this,g)}this._normalizeDeltaIfNecessary()}_normalizeDeltaIfNecessary(){this.requestNormalizeDelta&&(this.requestNormalizeDelta=!1,function(a){let b=a.root,c=0;for(;b!==aR;){if(b.left!==aR&&!aG(b.left)){b=b.left;continue}if(b.right!==aR&&!aG(b.right)){c+=b.delta,b=b.right;continue}b.start=c+b.start,b.end=c+b.end,b.delta=0,a$(b),aH(b,!0),aH(b.left,!1),aH(b.right,!1),b===b.parent.right&&(c-=b.parent.delta),b=b.parent}aH(a.root,!1)}(this))}}function aT(a,b,c,d){return a<c||!(a>c)&&1!==d&&(2===d||b)}function aU(a,b){if(a.root===aR)return b.parent=aR,b.left=aR,b.right=aR,aF(b,0),a.root=b,a.root;(function(a,b){let c=0,d=a.root,e=b.start,f=b.end;for(;;){var g,h,i,j;if(0>(g=e,h=f,i=d.start+c,j=d.end+c,g===i?h-j:g-i))if(d.left===aR){b.start-=c,b.end-=c,b.maxEnd-=c,d.left=b;break}else d=d.left;else if(d.right===aR){b.start-=c+d.delta,b.end-=c+d.delta,b.maxEnd-=c+d.delta,d.right=b;break}else c+=d.delta,d=d.right}b.parent=d,b.left=aR,b.right=aR,aF(b,1)})(a,b),a_(b.parent);let c=b;for(;c!==a.root&&1===aE(c.parent);)if(c.parent===c.parent.parent.left){let b=c.parent.parent.right;1===aE(b)?(aF(c.parent,0),aF(b,0),aF(c.parent.parent,1),c=c.parent.parent):(c===c.parent.right&&aX(a,c=c.parent),aF(c.parent,0),aF(c.parent.parent,1),aY(a,c.parent.parent))}else{let b=c.parent.parent.left;1===aE(b)?(aF(c.parent,0),aF(b,0),aF(c.parent.parent,1),c=c.parent.parent):(c===c.parent.left&&aY(a,c=c.parent),aF(c.parent,0),aF(c.parent.parent,1),aX(a,c.parent.parent))}return aF(a.root,0),b}function aV(a,b){let c,d,e;if(b.left===aR?(c=b.right,d=b,c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta):b.right===aR?(c=b.left,d=b):(c=(d=function(a){for(;a.left!==aR;)a=a.left;return a}(b.right)).right,c.start+=d.delta,c.end+=d.delta,c.delta+=d.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),d.start+=b.delta,d.end+=b.delta,d.delta=b.delta,(d.delta<-0x40000000||d.delta>0x40000000)&&(a.requestNormalizeDelta=!0)),d===a.root){a.root=c,aF(c,0),b.detach(),aW(),a$(c),a.root.parent=aR;return}let f=1===aE(d);if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?c.parent=d.parent:(d.parent===b?c.parent=d:c.parent=d.parent,d.left=b.left,d.right=b.right,d.parent=b.parent,aF(d,aE(b)),b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==aR&&(d.left.parent=d),d.right!==aR&&(d.right.parent=d)),b.detach(),f){a_(c.parent),d!==b&&(a_(d),a_(d.parent)),aW();return}for(a_(c),a_(c.parent),d!==b&&(a_(d),a_(d.parent));c!==a.root&&0===aE(c);)c===c.parent.left?(1===aE(e=c.parent.right)&&(aF(e,0),aF(c.parent,1),aX(a,c.parent),e=c.parent.right),0===aE(e.left)&&0===aE(e.right)?(aF(e,1),c=c.parent):(0===aE(e.right)&&(aF(e.left,0),aF(e,1),aY(a,e),e=c.parent.right),aF(e,aE(c.parent)),aF(c.parent,0),aF(e.right,0),aX(a,c.parent),c=a.root)):(1===aE(e=c.parent.left)&&(aF(e,0),aF(c.parent,1),aY(a,c.parent),e=c.parent.left),0===aE(e.left)&&0===aE(e.right)?(aF(e,1),c=c.parent):(0===aE(e.left)&&(aF(e.right,0),aF(e,1),aX(a,e),e=c.parent.left),aF(e,aE(c.parent)),aF(c.parent,0),aF(e.left,0),aY(a,c.parent),c=a.root));aF(c,0),aW()}function aW(){aR.parent=aR,aR.delta=0,aR.start=0,aR.end=0}function aX(a,b){let c=b.right;c.delta+=b.delta,(c.delta<-0x40000000||c.delta>0x40000000)&&(a.requestNormalizeDelta=!0),c.start+=b.delta,c.end+=b.delta,b.right=c.left,c.left!==aR&&(c.left.parent=b),c.parent=b.parent,b.parent===aR?a.root=c:b===b.parent.left?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c,a$(b),a$(c)}function aY(a,b){let c=b.left;b.delta-=c.delta,(b.delta<-0x40000000||b.delta>0x40000000)&&(a.requestNormalizeDelta=!0),b.start-=c.delta,b.end-=c.delta,b.left=c.right,c.right!==aR&&(c.right.parent=b),c.parent=b.parent,b.parent===aR?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c,a$(b),a$(c)}function aZ(a){let b=a.end;if(a.left!==aR){let c=a.left.maxEnd;c>b&&(b=c)}if(a.right!==aR){let c=a.right.maxEnd+a.delta;c>b&&(b=c)}return b}function a$(a){a.maxEnd=aZ(a)}function a_(a){for(;a!==aR;){let b=aZ(a);if(a.maxEnd===b)return;a.maxEnd=b,a=a.parent}}class a0{constructor(a,b){this.piece=a,this.color=b,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==a1)return a2(this.right);let a=this;for(;a.parent!==a1&&a.parent.left!==a;)a=a.parent;return a.parent===a1?a1:a.parent}prev(){if(this.left!==a1)return a3(this.left);let a=this;for(;a.parent!==a1&&a.parent.right!==a;)a=a.parent;return a.parent===a1?a1:a.parent}detach(){this.parent=null,this.left=null,this.right=null}}let a1=new a0(null,0);function a2(a){for(;a.left!==a1;)a=a.left;return a}function a3(a){for(;a.right!==a1;)a=a.right;return a}function a4(a){return a===a1?0:a.size_left+a.piece.length+a4(a.right)}function a5(a){return a===a1?0:a.lf_left+a.piece.lineFeedCnt+a5(a.right)}function a6(){a1.parent=a1}function a7(a,b){let c=b.right;c.size_left+=b.size_left+(b.piece?b.piece.length:0),c.lf_left+=b.lf_left+(b.piece?b.piece.lineFeedCnt:0),b.right=c.left,c.left!==a1&&(c.left.parent=b),c.parent=b.parent,b.parent===a1?a.root=c:b.parent.left===b?b.parent.left=c:b.parent.right=c,c.left=b,b.parent=c}function a8(a,b){let c=b.left;b.left=c.right,c.right!==a1&&(c.right.parent=b),c.parent=b.parent,b.size_left-=c.size_left+(c.piece?c.piece.length:0),b.lf_left-=c.lf_left+(c.piece?c.piece.lineFeedCnt:0),b.parent===a1?a.root=c:b===b.parent.right?b.parent.right=c:b.parent.left=c,c.right=b,b.parent=c}function a9(a,b){let c,d,e;if(c=b.left===a1?(d=b).right:b.right===a1?(d=b).left:(d=a2(b.right)).right,d===a.root){a.root=c,c.color=0,b.detach(),a6(),a.root.parent=a1;return}let f=1===d.color;if(d===d.parent.left?d.parent.left=c:d.parent.right=c,d===b?(c.parent=d.parent,bc(a,c)):(d.parent===b?c.parent=d:c.parent=d.parent,bc(a,c),d.left=b.left,d.right=b.right,d.parent=b.parent,d.color=b.color,b===a.root?a.root=d:b===b.parent.left?b.parent.left=d:b.parent.right=d,d.left!==a1&&(d.left.parent=d),d.right!==a1&&(d.right.parent=d),d.size_left=b.size_left,d.lf_left=b.lf_left,bc(a,d)),b.detach(),c.parent.left===c){let b=a4(c),d=a5(c);if(b!==c.parent.size_left||d!==c.parent.lf_left){let e=b-c.parent.size_left,f=d-c.parent.lf_left;c.parent.size_left=b,c.parent.lf_left=d,bb(a,c.parent,e,f)}}if(bc(a,c.parent),f)return void a6();for(;c!==a.root&&0===c.color;)c===c.parent.left?(1===(e=c.parent.right).color&&(e.color=0,c.parent.color=1,a7(a,c.parent),e=c.parent.right),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.right.color&&(e.left.color=0,e.color=1,a8(a,e),e=c.parent.right),e.color=c.parent.color,c.parent.color=0,e.right.color=0,a7(a,c.parent),c=a.root)):(1===(e=c.parent.left).color&&(e.color=0,c.parent.color=1,a8(a,c.parent),e=c.parent.left),0===e.left.color&&0===e.right.color?(e.color=1,c=c.parent):(0===e.left.color&&(e.right.color=0,e.color=1,a7(a,e),e=c.parent.left),e.color=c.parent.color,c.parent.color=0,e.left.color=0,a8(a,c.parent),c=a.root));c.color=0,a6()}function ba(a,b){for(bc(a,b);b!==a.root&&1===b.parent.color;)if(b.parent===b.parent.parent.left){let c=b.parent.parent.right;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.right&&a7(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,a8(a,b.parent.parent))}else{let c=b.parent.parent.left;1===c.color?(b.parent.color=0,c.color=0,b.parent.parent.color=1,b=b.parent.parent):(b===b.parent.left&&a8(a,b=b.parent),b.parent.color=0,b.parent.parent.color=1,a7(a,b.parent.parent))}a.root.color=0}function bb(a,b,c,d){for(;b!==a.root&&b!==a1;)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}function bc(a,b){let c=0,d=0;if(b!==a.root){for(;b!==a.root&&b===b.parent.right;)b=b.parent;if(b!==a.root)for(c=a4((b=b.parent).left)-b.size_left,d=a5(b.left)-b.lf_left,b.size_left+=c,b.lf_left+=d;b!==a.root&&(0!==c||0!==d);)b.parent.left===b&&(b.parent.size_left+=c,b.parent.lf_left+=d),b=b.parent}}a1.parent=a1,a1.left=a1,a1.right=a1,a1.color=0;var bd=c(19225);function be(a){let b;return(b=a[a.length-1]<65536?new Uint16Array(a.length):new Uint32Array(a.length)).set(a,0),b}class bf{constructor(a,b,c,d,e){this.lineStarts=a,this.cr=b,this.lf=c,this.crlf=d,this.isBasicASCII=e}}function bg(a,b=!0){let c=[0],d=1;for(let b=0,e=a.length;b<e;b++){let f=a.charCodeAt(b);13===f?b+1<e&&10===a.charCodeAt(b+1)?(c[d++]=b+2,b++):c[d++]=b+1:10===f&&(c[d++]=b+1)}return b?be(c):c}class bh{constructor(a,b,c,d,e){this.bufferIndex=a,this.start=b,this.end=c,this.lineFeedCnt=d,this.length=e}}class bi{constructor(a,b){this.buffer=a,this.lineStarts=b}}class bj{constructor(a,b){this._pieces=[],this._tree=a,this._BOM=b,this._index=0,a.root!==a1&&a.iterate(a.root,a=>(a!==a1&&this._pieces.push(a.piece),!0))}read(){if(0===this._pieces.length)if(0===this._index)return this._index++,this._BOM;else return null;return this._index>this._pieces.length-1?null:0===this._index?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class bk{constructor(a){this._limit=a,this._cache=[]}get(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartOffset<=a&&c.nodeStartOffset+c.node.piece.length>=a)return c}return null}get2(a){for(let b=this._cache.length-1;b>=0;b--){let c=this._cache[b];if(c.nodeStartLineNumber&&c.nodeStartLineNumber<a&&c.nodeStartLineNumber+c.node.piece.lineFeedCnt>=a)return c}return null}set(a){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(a)}validate(a){let b=!1,c=this._cache;for(let d=0;d<c.length;d++){let e=c[d];if(null===e.node.parent||e.nodeStartOffset>=a){c[d]=null,b=!0;continue}}if(b){let a=[];for(let b of c)null!==b&&a.push(b);this._cache=a}}}class bl{constructor(a,b,c){this.create(a,b,c)}create(a,b,c){this._buffers=[new bi("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=a1,this._lineCnt=1,this._length=0,this._EOL=b,this._EOLLength=b.length,this._EOLNormalized=c;let d=null;for(let b=0,c=a.length;b<c;b++)if(a[b].buffer.length>0){a[b].lineStarts||(a[b].lineStarts=bg(a[b].buffer));let c=new bh(b+1,{line:0,column:0},{line:a[b].lineStarts.length-1,column:a[b].buffer.length-a[b].lineStarts[a[b].lineStarts.length-1]},a[b].lineStarts.length-1,a[b].buffer.length);this._buffers.push(a[b]),d=this.rbInsertRight(d,c)}this._searchCache=new bk(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(a){let b=65535-Math.floor(21845),c=2*b,d="",e=0,f=[];if(this.iterate(this.root,g=>{let h=this.getNodeContent(g),i=h.length;if(e<=b||e+i<c)return d+=h,e+=i,!0;let j=d.replace(/\r\n|\r|\n/g,a);return f.push(new bi(j,bg(j))),d=h,e=i,!0}),e>0){let b=d.replace(/\r\n|\r|\n/g,a);f.push(new bi(b,bg(b)))}this.create(f,a,!0)}getEOL(){return this._EOL}setEOL(a){this._EOL=a,this._EOLLength=this._EOL.length,this.normalizeEOL(a)}createSnapshot(a){return new bj(this,a)}getOffsetAt(a,b){let c=0,d=this.root;for(;d!==a1;)if(d.left!==a1&&d.lf_left+1>=a)d=d.left;else{if(d.lf_left+d.piece.lineFeedCnt+1>=a)return(c+=d.size_left)+(this.getAccumulatedValue(d,a-d.lf_left-2)+b-1);a-=d.lf_left+d.piece.lineFeedCnt,c+=d.size_left+d.piece.length,d=d.right}return c}getPositionAt(a){a=Math.max(0,a=Math.floor(a));let b=this.root,c=0,d=a;for(;b!==a1;)if(0!==b.size_left&&b.size_left>=a)b=b.left;else if(b.size_left+b.piece.length>=a){let e=this.getIndexOf(b,a-b.size_left);if(c+=b.lf_left+e.index,0===e.index){let a=d-this.getOffsetAt(c+1,1);return new v.y(c+1,a+1)}return new v.y(c+1,e.remainder+1)}else{if(a-=b.size_left+b.piece.length,c+=b.lf_left+b.piece.lineFeedCnt,b.right===a1){let b=this.getOffsetAt(c+1,1),e=d-a-b;return new v.y(c+1,e+1)}b=b.right}return new v.y(1,1)}getValueInRange(a,b){if(a.startLineNumber===a.endLineNumber&&a.startColumn===a.endColumn)return"";let c=this.nodeAt2(a.startLineNumber,a.startColumn),d=this.nodeAt2(a.endLineNumber,a.endColumn),e=this.getValueInRange2(c,d);return b?b===this._EOL&&this._EOLNormalized&&b===this.getEOL()&&this._EOLNormalized?e:e.replace(/\r\n|\r|\n/g,b):e}getValueInRange2(a,b){if(a.node===b.node){let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return d.substring(e+a.remainder,e+b.remainder)}let c=a.node,d=this._buffers[c.piece.bufferIndex].buffer,e=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start),f=d.substring(e+a.remainder,e+c.piece.length);for(c=c.next();c!==a1;){let a=this._buffers[c.piece.bufferIndex].buffer,d=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(c===b.node){f+=a.substring(d,d+b.remainder);break}f+=a.substr(d,c.piece.length),c=c.next()}return f}getLinesContent(){let a=[],b=0,c="",d=!1;return this.iterate(this.root,e=>{if(e===a1)return!0;let f=e.piece,g=f.length;if(0===g)return!0;let h=this._buffers[f.bufferIndex].buffer,i=this._buffers[f.bufferIndex].lineStarts,j=f.start.line,k=f.end.line,l=i[j]+f.start.column;if(d&&(10===h.charCodeAt(l)&&(l++,g--),a[b++]=c,c="",d=!1,0===g))return!0;if(j===k)return this._EOLNormalized||13!==h.charCodeAt(l+g-1)?c+=h.substr(l,g):(d=!0,c+=h.substr(l,g-1)),!0;c+=this._EOLNormalized?h.substring(l,Math.max(l,i[j+1]-this._EOLLength)):h.substring(l,i[j+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;for(let d=j+1;d<k;d++)c=this._EOLNormalized?h.substring(i[d],i[d+1]-this._EOLLength):h.substring(i[d],i[d+1]).replace(/(\r\n|\r|\n)$/,""),a[b++]=c;return this._EOLNormalized||13!==h.charCodeAt(i[k]+f.end.column-1)?c=h.substr(i[k],f.end.column):(d=!0,0===f.end.column?b--:c=h.substr(i[k],f.end.column-1)),!0}),d&&(a[b++]=c,c=""),a[b++]=c,a}getLength(){return this._length}getLineCount(){return this._lineCnt}getLineContent(a){return this._lastVisitedLine.lineNumber===a||(this._lastVisitedLine.lineNumber=a,a===this._lineCnt?this._lastVisitedLine.value=this.getLineRawContent(a):this._EOLNormalized?this._lastVisitedLine.value=this.getLineRawContent(a,this._EOLLength):this._lastVisitedLine.value=this.getLineRawContent(a).replace(/(\r\n|\r|\n)$/,"")),this._lastVisitedLine.value}_getCharCode(a){if(a.remainder===a.node.piece.length){let b=a.node.next();if(!b)return 0;let c=this._buffers[b.piece.bufferIndex],d=this.offsetInBuffer(b.piece.bufferIndex,b.piece.start);return c.buffer.charCodeAt(d)}{let b=this._buffers[a.node.piece.bufferIndex],c=this.offsetInBuffer(a.node.piece.bufferIndex,a.node.piece.start)+a.remainder;return b.buffer.charCodeAt(c)}}getLineCharCode(a,b){let c=this.nodeAt2(a,b+1);return this._getCharCode(c)}getLineLength(a){if(a===this.getLineCount()){let b=this.getOffsetAt(a,1);return this.getLength()-b}return this.getOffsetAt(a+1,1)-this.getOffsetAt(a,1)-this._EOLLength}getNearestChunk(a){let b=this.nodeAt(a);if(b.remainder===b.node.piece.length){let a=b.node.next();if(!a||a===a1)return"";let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start);return c.buffer.substring(d,d+a.piece.length)}{let a=this._buffers[b.node.piece.bufferIndex],c=this.offsetInBuffer(b.node.piece.bufferIndex,b.node.piece.start),d=c+b.remainder,e=c+b.node.piece.length;return a.buffer.substring(d,e)}}findMatchesInNode(a,b,c,d,e,f,g,h,i,j,k){let l,m,n,o=this._buffers[a.piece.bufferIndex],p=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start),q=this.offsetInBuffer(a.piece.bufferIndex,e),r=this.offsetInBuffer(a.piece.bufferIndex,f),s={line:0,column:0};b._wordSeparators?(m=o.buffer.substring(q,r),n=a=>a+q,b.reset(0)):(m=o.buffer,n=a=>a,b.reset(q));do if(l=b.next(m)){if(n(l.index)>=r)return j;this.positionInBuffer(a,n(l.index)-p,s);let b=this.getLineFeedCnt(a.piece.bufferIndex,e,s),f=s.line===e.line?s.column-e.column+d:s.column+1,g=f+l[0].length;if(k[j++]=(0,bd.dr)(new w.Q(c+b,f,c+b,g),l,h),n(l.index)+l[0].length>=r)return j;if(j>=i)break}while(l);return j}findMatchesLineByLine(a,b,c,d){let e=[],f=0,g=new bd.W5(b.wordSeparators,b.regex),h=this.nodeAt2(a.startLineNumber,a.startColumn);if(null===h)return[];let i=this.nodeAt2(a.endLineNumber,a.endColumn);if(null===i)return[];let j=this.positionInBuffer(h.node,h.remainder),k=this.positionInBuffer(i.node,i.remainder);if(h.node===i.node)return this.findMatchesInNode(h.node,g,a.startLineNumber,a.startColumn,j,k,b,c,d,f,e),e;let l=a.startLineNumber,m=h.node;for(;m!==i.node;){let i=this.getLineFeedCnt(m.piece.bufferIndex,j,m.piece.end);if(i>=1){let h=this._buffers[m.piece.bufferIndex].lineStarts,k=this.offsetInBuffer(m.piece.bufferIndex,m.piece.start),n=h[j.line+i],o=l===a.startLineNumber?a.startColumn:1;if((f=this.findMatchesInNode(m,g,l,o,j,this.positionInBuffer(m,n-k),b,c,d,f,e))>=d)return e;l+=i}let k=l===a.startLineNumber?a.startColumn-1:0;if(l===a.endLineNumber){let h=this.getLineContent(l).substring(k,a.endColumn-1);return f=this._findMatchesInLine(b,g,h,a.endLineNumber,k,f,e,c,d),e}if((f=this._findMatchesInLine(b,g,this.getLineContent(l).substr(k),l,k,f,e,c,d))>=d)return e;l++,m=(h=this.nodeAt2(l,1)).node,j=this.positionInBuffer(h.node,h.remainder)}if(l===a.endLineNumber){let h=l===a.startLineNumber?a.startColumn-1:0,i=this.getLineContent(l).substring(h,a.endColumn-1);return f=this._findMatchesInLine(b,g,i,a.endLineNumber,h,f,e,c,d),e}let n=l===a.startLineNumber?a.startColumn:1;return f=this.findMatchesInNode(i.node,g,l,n,j,k,b,c,d,f,e),e}_findMatchesInLine(a,b,c,d,e,f,g,h,i){let j,k=a.wordSeparators;if(!h&&a.simpleSearch){let b=a.simpleSearch,h=b.length,j=c.length,l=-h;for(;-1!==(l=c.indexOf(b,l+h))&&(!(!k||(0,bd.wC)(k,c,j,l,h))||(g[f++]=new A.Dg(new w.Q(d,l+1+e,d,l+1+h+e),null),!(f>=i))););return f}b.reset(0);do if((j=b.next(c))&&(g[f++]=(0,bd.dr)(new w.Q(d,j.index+1+e,d,j.index+1+j[0].length+e),j,h),f>=i))break;while(j);return f}insert(a,b,c=!1){if(this._EOLNormalized=this._EOLNormalized&&c,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==a1){let{node:c,remainder:d,nodeStartOffset:e}=this.nodeAt(a),f=c.piece,g=f.bufferIndex,h=this.positionInBuffer(c,d);if(0===c.piece.bufferIndex&&f.end.line===this._lastChangeBufferPos.line&&f.end.column===this._lastChangeBufferPos.column&&e+f.length===a&&b.length<65535){this.appendToNode(c,b),this.computeBufferMetadata();return}if(e===a)this.insertContentToNodeLeft(b,c),this._searchCache.validate(a);else if(e+c.piece.length>a){let a=[],e=new bh(f.bufferIndex,h,f.end,this.getLineFeedCnt(f.bufferIndex,h,f.end),this.offsetInBuffer(g,f.end)-this.offsetInBuffer(g,h));if(this.shouldCheckCRLF()&&this.endWithCR(b)&&10===this.nodeCharCodeAt(c,d)){let a={line:e.start.line+1,column:0};e=new bh(e.bufferIndex,a,e.end,this.getLineFeedCnt(e.bufferIndex,a,e.end),e.length-1),b+="\n"}if(this.shouldCheckCRLF()&&this.startWithLF(b))if(13===this.nodeCharCodeAt(c,d-1)){let e=this.positionInBuffer(c,d-1);this.deleteNodeTail(c,e),b="\r"+b,0===c.piece.length&&a.push(c)}else this.deleteNodeTail(c,h);else this.deleteNodeTail(c,h);let i=this.createNewPieces(b);e.length>0&&this.rbInsertRight(c,e);let j=c;for(let a=0;a<i.length;a++)j=this.rbInsertRight(j,i[a]);this.deleteNodes(a)}else this.insertContentToNodeRight(b,c)}else{let a=this.createNewPieces(b),c=this.rbInsertLeft(null,a[0]);for(let b=1;b<a.length;b++)c=this.rbInsertRight(c,a[b])}this.computeBufferMetadata()}delete(a,b){if(this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",b<=0||this.root===a1)return;let c=this.nodeAt(a),d=this.nodeAt(a+b),e=c.node,f=d.node;if(e===f){let f=this.positionInBuffer(e,c.remainder),g=this.positionInBuffer(e,d.remainder);if(c.nodeStartOffset===a){if(b===e.piece.length){let a=e.next();a9(this,e),this.validateCRLFWithPrevNode(a),this.computeBufferMetadata();return}this.deleteNodeHead(e,g),this._searchCache.validate(a),this.validateCRLFWithPrevNode(e),this.computeBufferMetadata();return}if(c.nodeStartOffset+e.piece.length===a+b){this.deleteNodeTail(e,f),this.validateCRLFWithNextNode(e),this.computeBufferMetadata();return}this.shrinkNode(e,f,g),this.computeBufferMetadata();return}let g=[],h=this.positionInBuffer(e,c.remainder);this.deleteNodeTail(e,h),this._searchCache.validate(a),0===e.piece.length&&g.push(e);let i=this.positionInBuffer(f,d.remainder);this.deleteNodeHead(f,i),0===f.piece.length&&g.push(f);let j=e.next();for(let a=j;a!==a1&&a!==f;a=a.next())g.push(a);let k=0===e.piece.length?e.prev():e;this.deleteNodes(g),this.validateCRLFWithNextNode(k),this.computeBufferMetadata()}insertContentToNodeLeft(a,b){let c=[];if(this.shouldCheckCRLF()&&this.endWithCR(a)&&this.startWithLF(b)){let d=b.piece,e={line:d.start.line+1,column:0};b.piece=new bh(d.bufferIndex,e,d.end,this.getLineFeedCnt(d.bufferIndex,e,d.end),d.length-1),a+="\n",bb(this,b,-1,-1),0===b.piece.length&&c.push(b)}let d=this.createNewPieces(a),e=this.rbInsertLeft(b,d[d.length-1]);for(let a=d.length-2;a>=0;a--)e=this.rbInsertLeft(e,d[a]);this.validateCRLFWithPrevNode(e),this.deleteNodes(c)}insertContentToNodeRight(a,b){this.adjustCarriageReturnFromNext(a,b)&&(a+="\n");let c=this.createNewPieces(a),d=this.rbInsertRight(b,c[0]),e=d;for(let a=1;a<c.length;a++)e=this.rbInsertRight(e,c[a]);this.validateCRLFWithPrevNode(d)}positionInBuffer(a,b,c){let d=a.piece,e=a.piece.bufferIndex,f=this._buffers[e].lineStarts,g=f[d.start.line]+d.start.column+b,h=d.start.line,i=d.end.line,j=0,k=0,l=0;for(;h<=i&&(l=f[j=h+(i-h)/2|0],j!==i);)if(k=f[j+1],g<l)i=j-1;else if(g>=k)h=j+1;else break;return c?(c.line=j,c.column=g-l,null):{line:j,column:g-l}}getLineFeedCnt(a,b,c){if(0===c.column)return c.line-b.line;let d=this._buffers[a].lineStarts;if(c.line===d.length-1)return c.line-b.line;let e=d[c.line+1],f=d[c.line]+c.column;return e>f+1?c.line-b.line:13===this._buffers[a].buffer.charCodeAt(f-1)?c.line-b.line+1:c.line-b.line}offsetInBuffer(a,b){return this._buffers[a].lineStarts[b.line]+b.column}deleteNodes(a){for(let b=0;b<a.length;b++)a9(this,a[b])}createNewPieces(a){if(a.length>65535){let b=[];for(;a.length>65535;){let c,d=a.charCodeAt(65534);13===d||d>=55296&&d<=56319?(c=a.substring(0,65534),a=a.substring(65534)):(c=a.substring(0,65535),a=a.substring(65535));let e=bg(c);b.push(new bh(this._buffers.length,{line:0,column:0},{line:e.length-1,column:c.length-e[e.length-1]},e.length-1,c.length)),this._buffers.push(new bi(c,e))}let c=bg(a);return b.push(new bh(this._buffers.length,{line:0,column:0},{line:c.length-1,column:a.length-c[c.length-1]},c.length-1,a.length)),this._buffers.push(new bi(a,c)),b}let b=this._buffers[0].buffer.length,c=bg(a,!1),d=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===b&&0!==b&&this.startWithLF(a)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},d=this._lastChangeBufferPos;for(let a=0;a<c.length;a++)c[a]+=b+1;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+="_"+a,b+=1}else{if(0!==b)for(let a=0;a<c.length;a++)c[a]+=b;this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(c.slice(1)),this._buffers[0].buffer+=a}let e=this._buffers[0].buffer.length,f=this._buffers[0].lineStarts.length-1,g=e-this._buffers[0].lineStarts[f],h={line:f,column:g},i=new bh(0,d,h,this.getLineFeedCnt(0,d,h),e-b);return this._lastChangeBufferPos=h,[i]}getLineRawContent(a,b=0){let c=this.root,d="",e=this._searchCache.get2(a);if(e){c=e.node;let f=this.getAccumulatedValue(c,a-e.nodeStartLineNumber-1),g=this._buffers[c.piece.bufferIndex].buffer,h=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);if(e.nodeStartLineNumber+c.piece.lineFeedCnt===a)d=g.substring(h+f,h+c.piece.length);else{let d=this.getAccumulatedValue(c,a-e.nodeStartLineNumber);return g.substring(h+f,h+d-b)}}else{let e=0,f=a;for(;c!==a1;)if(c.left!==a1&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let d=this.getAccumulatedValue(c,a-c.lf_left-2),g=this.getAccumulatedValue(c,a-c.lf_left-1),h=this._buffers[c.piece.bufferIndex].buffer,i=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);return e+=c.size_left,this._searchCache.set({node:c,nodeStartOffset:e,nodeStartLineNumber:f-(a-1-c.lf_left)}),h.substring(i+d,i+g-b)}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let b=this.getAccumulatedValue(c,a-c.lf_left-2),e=this._buffers[c.piece.bufferIndex].buffer,f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d=e.substring(f+b,f+c.piece.length);break}else a-=c.lf_left+c.piece.lineFeedCnt,e+=c.size_left+c.piece.length,c=c.right}for(c=c.next();c!==a1;){let a=this._buffers[c.piece.bufferIndex].buffer;if(c.piece.lineFeedCnt>0){let e=this.getAccumulatedValue(c,0),f=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substring(f,f+e-b);break}{let b=this.offsetInBuffer(c.piece.bufferIndex,c.piece.start);d+=a.substr(b,c.piece.length)}c=c.next()}return d}computeBufferMetadata(){let a=this.root,b=1,c=0;for(;a!==a1;)b+=a.lf_left+a.piece.lineFeedCnt,c+=a.size_left+a.piece.length,a=a.right;this._lineCnt=b,this._length=c,this._searchCache.validate(this._length)}getIndexOf(a,b){let c=a.piece,d=this.positionInBuffer(a,b),e=d.line-c.start.line;if(this.offsetInBuffer(c.bufferIndex,c.end)-this.offsetInBuffer(c.bufferIndex,c.start)===b){let b=this.getLineFeedCnt(a.piece.bufferIndex,c.start,d);if(b!==e)return{index:b,remainder:0}}return{index:e,remainder:d.column}}getAccumulatedValue(a,b){if(b<0)return 0;let c=a.piece,d=this._buffers[c.bufferIndex].lineStarts,e=c.start.line+b+1;return e>c.end.line?d[c.end.line]+c.end.column-d[c.start.line]-c.start.column:d[e]-d[c.start.line]-c.start.column}deleteNodeTail(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.end),f=this.offsetInBuffer(c.bufferIndex,b),g=this.getLineFeedCnt(c.bufferIndex,c.start,b),h=g-d,i=f-e,j=c.length+i;a.piece=new bh(c.bufferIndex,c.start,b,g,j),bb(this,a,i,h)}deleteNodeHead(a,b){let c=a.piece,d=c.lineFeedCnt,e=this.offsetInBuffer(c.bufferIndex,c.start),f=this.getLineFeedCnt(c.bufferIndex,b,c.end),g=this.offsetInBuffer(c.bufferIndex,b),h=f-d,i=e-g,j=c.length+i;a.piece=new bh(c.bufferIndex,b,c.end,f,j),bb(this,a,i,h)}shrinkNode(a,b,c){let d=a.piece,e=d.start,f=d.end,g=d.length,h=d.lineFeedCnt,i=this.getLineFeedCnt(d.bufferIndex,d.start,b),j=this.offsetInBuffer(d.bufferIndex,b)-this.offsetInBuffer(d.bufferIndex,e);a.piece=new bh(d.bufferIndex,d.start,b,i,j),bb(this,a,j-g,i-h);let k=new bh(d.bufferIndex,c,f,this.getLineFeedCnt(d.bufferIndex,c,f),this.offsetInBuffer(d.bufferIndex,f)-this.offsetInBuffer(d.bufferIndex,c)),l=this.rbInsertRight(a,k);this.validateCRLFWithPrevNode(l)}appendToNode(a,b){this.adjustCarriageReturnFromNext(b,a)&&(b+="\n");let c=this.shouldCheckCRLF()&&this.startWithLF(b)&&this.endWithCR(a),d=this._buffers[0].buffer.length;this._buffers[0].buffer+=b;let e=bg(b,!1);for(let a=0;a<e.length;a++)e[a]+=d;if(c){let a=this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-2];this._buffers[0].lineStarts.pop(),this._lastChangeBufferPos={line:this._lastChangeBufferPos.line-1,column:d-a}}this._buffers[0].lineStarts=this._buffers[0].lineStarts.concat(e.slice(1));let f=this._buffers[0].lineStarts.length-1,g=this._buffers[0].buffer.length-this._buffers[0].lineStarts[f],h={line:f,column:g},i=a.piece.length+b.length,j=a.piece.lineFeedCnt,k=this.getLineFeedCnt(0,a.piece.start,h),l=k-j;a.piece=new bh(a.piece.bufferIndex,a.piece.start,h,k,i),this._lastChangeBufferPos=h,bb(this,a,b.length,l)}nodeAt(a){let b=this.root,c=this._searchCache.get(a);if(c)return{node:c.node,nodeStartOffset:c.nodeStartOffset,remainder:a-c.nodeStartOffset};let d=0;for(;b!==a1;)if(b.size_left>a)b=b.left;else if(b.size_left+b.piece.length>=a){d+=b.size_left;let c={node:b,remainder:a-b.size_left,nodeStartOffset:d};return this._searchCache.set(c),c}else a-=b.size_left+b.piece.length,d+=b.size_left+b.piece.length,b=b.right;return null}nodeAt2(a,b){let c=this.root,d=0;for(;c!==a1;)if(c.left!==a1&&c.lf_left>=a-1)c=c.left;else if(c.lf_left+c.piece.lineFeedCnt>a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2),f=this.getAccumulatedValue(c,a-c.lf_left-1);return d+=c.size_left,{node:c,remainder:Math.min(e+b-1,f),nodeStartOffset:d}}else if(c.lf_left+c.piece.lineFeedCnt===a-1){let e=this.getAccumulatedValue(c,a-c.lf_left-2);if(e+b-1<=c.piece.length)return{node:c,remainder:e+b-1,nodeStartOffset:d};b-=c.piece.length-e;break}else a-=c.lf_left+c.piece.lineFeedCnt,d+=c.size_left+c.piece.length,c=c.right;for(c=c.next();c!==a1;){if(c.piece.lineFeedCnt>0){let a=this.getAccumulatedValue(c,0),d=this.offsetOfNode(c);return{node:c,remainder:Math.min(b-1,a),nodeStartOffset:d}}if(c.piece.length>=b-1){let a=this.offsetOfNode(c);return{node:c,remainder:b-1,nodeStartOffset:a}}b-=c.piece.length;c=c.next()}return null}nodeCharCodeAt(a,b){if(a.piece.lineFeedCnt<1)return -1;let c=this._buffers[a.piece.bufferIndex],d=this.offsetInBuffer(a.piece.bufferIndex,a.piece.start)+b;return c.buffer.charCodeAt(d)}offsetOfNode(a){if(!a)return 0;let b=a.size_left;for(;a!==this.root;)a.parent.right===a&&(b+=a.parent.size_left+a.parent.piece.length),a=a.parent;return b}shouldCheckCRLF(){return!(this._EOLNormalized&&"\n"===this._EOL)}startWithLF(a){if("string"==typeof a)return 10===a.charCodeAt(0);if(a===a1||0===a.piece.lineFeedCnt)return!1;let b=a.piece,c=this._buffers[b.bufferIndex].lineStarts,d=b.start.line,e=c[d]+b.start.column;return d!==c.length-1&&!(c[d+1]>e+1)&&10===this._buffers[b.bufferIndex].buffer.charCodeAt(e)}endWithCR(a){return"string"==typeof a?13===a.charCodeAt(a.length-1):a!==a1&&0!==a.piece.lineFeedCnt&&13===this.nodeCharCodeAt(a,a.piece.length-1)}validateCRLFWithPrevNode(a){if(this.shouldCheckCRLF()&&this.startWithLF(a)){let b=a.prev();this.endWithCR(b)&&this.fixCRLF(b,a)}}validateCRLFWithNextNode(a){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let b=a.next();this.startWithLF(b)&&this.fixCRLF(a,b)}}fixCRLF(a,b){let c,d=[],e=this._buffers[a.piece.bufferIndex].lineStarts;c=0===a.piece.end.column?{line:a.piece.end.line-1,column:e[a.piece.end.line]-e[a.piece.end.line-1]-1}:{line:a.piece.end.line,column:a.piece.end.column-1};let f=a.piece.length-1,g=a.piece.lineFeedCnt-1;a.piece=new bh(a.piece.bufferIndex,a.piece.start,c,g,f),bb(this,a,-1,-1),0===a.piece.length&&d.push(a);let h={line:b.piece.start.line+1,column:0},i=b.piece.length-1,j=this.getLineFeedCnt(b.piece.bufferIndex,h,b.piece.end);b.piece=new bh(b.piece.bufferIndex,h,b.piece.end,j,i),bb(this,b,-1,-1),0===b.piece.length&&d.push(b);let k=this.createNewPieces("\r\n");this.rbInsertRight(a,k[0]);for(let a=0;a<d.length;a++)a9(this,d[a])}adjustCarriageReturnFromNext(a,b){if(this.shouldCheckCRLF()&&this.endWithCR(a)){let c=b.next();if(this.startWithLF(c)){if(a+="\n",1===c.piece.length)a9(this,c);else{let a=c.piece,b={line:a.start.line+1,column:0},d=a.length-1,e=this.getLineFeedCnt(a.bufferIndex,b,a.end);c.piece=new bh(a.bufferIndex,b,a.end,e,d),bb(this,c,-1,-1)}return!0}}return!1}iterate(a,b){if(a===a1)return b(a1);let c=this.iterate(a.left,b);return c?b(a)&&this.iterate(a.right,b):c}getNodeContent(a){if(a===a1)return"";let b=this._buffers[a.piece.bufferIndex],c=a.piece,d=this.offsetInBuffer(c.bufferIndex,c.start),e=this.offsetInBuffer(c.bufferIndex,c.end);return b.buffer.substring(d,e)}getPieceContent(a){let b=this._buffers[a.bufferIndex],c=this.offsetInBuffer(a.bufferIndex,a.start),d=this.offsetInBuffer(a.bufferIndex,a.end);return b.buffer.substring(c,d)}rbInsertRight(a,b){let c=new a0(b,1);if(c.left=a1,c.right=a1,c.parent=a1,c.size_left=0,c.lf_left=0,this.root===a1)this.root=c,c.color=0;else if(a.right===a1)a.right=c,c.parent=a;else{let b=a2(a.right);b.left=c,c.parent=b}return ba(this,c),c}rbInsertLeft(a,b){let c=new a0(b,1);if(c.left=a1,c.right=a1,c.parent=a1,c.size_left=0,c.lf_left=0,this.root===a1)this.root=c,c.color=0;else if(a.left===a1)a.left=c,c.parent=a;else{let b=a3(a.left);b.right=c,c.parent=b}return ba(this,c),c}}var bm=c(12428);class bn extends m.jG{constructor(a,b,c,d,e,f,g){super(),this._onDidChangeContent=this._register(new l.vl),this._BOM=b,this._mightContainNonBasicASCII=!f,this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._pieceTree=new bl(a,c,g)}mightContainRTL(){return this._mightContainRTL}mightContainUnusualLineTerminators(){return this._mightContainUnusualLineTerminators}resetMightContainUnusualLineTerminators(){this._mightContainUnusualLineTerminators=!1}mightContainNonBasicASCII(){return this._mightContainNonBasicASCII}getBOM(){return this._BOM}getEOL(){return this._pieceTree.getEOL()}createSnapshot(a){return this._pieceTree.createSnapshot(a?this._BOM:"")}getOffsetAt(a,b){return this._pieceTree.getOffsetAt(a,b)}getPositionAt(a){return this._pieceTree.getPositionAt(a)}getRangeAt(a,b){let c=this.getPositionAt(a),d=this.getPositionAt(a+b);return new w.Q(c.lineNumber,c.column,d.lineNumber,d.column)}getValueInRange(a,b=0){if(a.isEmpty())return"";let c=this._getEndOfLine(b);return this._pieceTree.getValueInRange(a,c)}getValueLengthInRange(a,b=0){if(a.isEmpty())return 0;if(a.startLineNumber===a.endLineNumber)return a.endColumn-a.startColumn;let c=this.getOffsetAt(a.startLineNumber,a.startColumn),d=this.getOffsetAt(a.endLineNumber,a.endColumn),e=0,f=this._getEndOfLine(b),g=this.getEOL();return f.length!==g.length&&(e=(f.length-g.length)*(a.endLineNumber-a.startLineNumber)),d-c+e}getCharacterCountInRange(a,b=0){if(this._mightContainNonBasicASCII){let c=0,d=a.startLineNumber,e=a.endLineNumber;for(let b=d;b<=e;b++){let f=this.getLineContent(b),g=b===d?a.startColumn-1:0,h=b===e?a.endColumn-1:f.length;for(let a=g;a<h;a++)(0,n.pc)(f.charCodeAt(a))?(c+=1,a+=1):c+=1}return c+this._getEndOfLine(b).length*(e-d)}return this.getValueLengthInRange(a,b)}getNearestChunk(a){return this._pieceTree.getNearestChunk(a)}getLength(){return this._pieceTree.getLength()}getLineCount(){return this._pieceTree.getLineCount()}getLinesContent(){return this._pieceTree.getLinesContent()}getLineContent(a){return this._pieceTree.getLineContent(a)}getLineCharCode(a,b){return this._pieceTree.getLineCharCode(a,b)}getLineLength(a){return this._pieceTree.getLineLength(a)}getLineFirstNonWhitespaceColumn(a){let b=(0,n.HG)(this.getLineContent(a));return -1===b?0:b+1}getLineLastNonWhitespaceColumn(a){let b=(0,n.lT)(this.getLineContent(a));return -1===b?0:b+2}_getEndOfLine(a){switch(a){case 1:return"\n";case 2:return"\r\n";case 0:return this.getEOL();default:throw Error("Unknown EOL preference")}}setEOL(a){this._pieceTree.setEOL(a)}applyEdits(a,b,c){let d=this._mightContainRTL,e=this._mightContainUnusualLineTerminators,f=this._mightContainNonBasicASCII,g=!0,h=[];for(let b=0;b<a.length;b++){let c=a[b];g&&c._isTracked&&(g=!1);let i=c.range;if(c.text){let a=!0;f||(f=a=!(0,n.aC)(c.text)),!d&&a&&(d=(0,n.E_)(c.text)),!e&&a&&(e=(0,n.$X)(c.text))}let j="",k=0,l=0,m=0;if(c.text){let a;[k,l,m,a]=(0,s.W)(c.text);let b=this.getEOL(),d="\r\n"===b?2:1;j=0===a||a===d?c.text:c.text.replace(/\r\n|\r|\n/g,b)}h[b]={sortIndex:b,identifier:c.identifier||null,range:i,rangeOffset:this.getOffsetAt(i.startLineNumber,i.startColumn),rangeLength:this.getValueLengthInRange(i),text:j,eolCount:k,firstLineLength:l,lastLineLength:m,forceMoveMarkers:!!c.forceMoveMarkers,isAutoWhitespaceEdit:c.isAutoWhitespaceEdit||!1}}h.sort(bn._sortOpsAscending);let i=!1;for(let a=0,b=h.length-1;a<b;a++){let b=h[a].range.getEndPosition(),c=h[a+1].range.getStartPosition();if(c.isBeforeOrEqual(b)){if(c.isBefore(b))throw Error("Overlapping ranges are not allowed!");i=!0}}g&&(h=this._reduceOperations(h));let j=c||b?bn._getInverseEditRanges(h):[],k=[];if(b)for(let a=0;a<h.length;a++){let b=h[a],c=j[a];if(b.isAutoWhitespaceEdit&&b.range.isEmpty())for(let a=c.startLineNumber;a<=c.endLineNumber;a++){let d="";(a!==c.startLineNumber||(d=this.getLineContent(b.range.startLineNumber),-1===(0,n.HG)(d)))&&k.push({lineNumber:a,oldContent:d})}}let l=null;if(c){let a=0;l=[];for(let b=0;b<h.length;b++){let c=h[b],d=j[b],e=this.getValueInRange(c.range),f=c.rangeOffset+a;a+=c.text.length-e.length,l[b]={sortIndex:c.sortIndex,identifier:c.identifier,range:d,text:e,textChange:new bm.k(c.rangeOffset,e,f,c.text)}}i||l.sort((a,b)=>a.sortIndex-b.sortIndex)}this._mightContainRTL=d,this._mightContainUnusualLineTerminators=e,this._mightContainNonBasicASCII=f;let m=this._doApplyEdits(h),o=null;if(b&&k.length>0){k.sort((a,b)=>b.lineNumber-a.lineNumber),o=[];for(let a=0,b=k.length;a<b;a++){let b=k[a].lineNumber;if(a>0&&k[a-1].lineNumber===b)continue;let c=k[a].oldContent,d=this.getLineContent(b);0!==d.length&&d!==c&&-1===(0,n.HG)(d)&&o.push(b)}}return this._onDidChangeContent.fire(),new A.F4(l,m,o)}_reduceOperations(a){return a.length<1e3?a:[this._toSingleEditOperation(a)]}_toSingleEditOperation(a){let b=!1,c=a[0].range,d=a[a.length-1].range,e=new w.Q(c.startLineNumber,c.startColumn,d.endLineNumber,d.endColumn),f=c.startLineNumber,g=c.startColumn,h=[];for(let c=0,d=a.length;c<d;c++){let d=a[c],e=d.range;b=b||d.forceMoveMarkers,h.push(this.getValueInRange(new w.Q(f,g,e.startLineNumber,e.startColumn))),d.text.length>0&&h.push(d.text),f=e.endLineNumber,g=e.endColumn}let i=h.join(""),[j,k,l]=(0,s.W)(i);return{sortIndex:0,identifier:a[0].identifier,range:e,rangeOffset:this.getOffsetAt(e.startLineNumber,e.startColumn),rangeLength:this.getValueLengthInRange(e,0),text:i,eolCount:j,firstLineLength:k,lastLineLength:l,forceMoveMarkers:b,isAutoWhitespaceEdit:!1}}_doApplyEdits(a){a.sort(bn._sortOpsDescending);let b=[];for(let c=0;c<a.length;c++){let d=a[c],e=d.range.startLineNumber,f=d.range.startColumn,g=d.range.endLineNumber,h=d.range.endColumn;if(e===g&&f===h&&0===d.text.length)continue;d.text?(this._pieceTree.delete(d.rangeOffset,d.rangeLength),this._pieceTree.insert(d.rangeOffset,d.text,!0)):this._pieceTree.delete(d.rangeOffset,d.rangeLength);let i=new w.Q(e,f,g,h);b.push({range:i,rangeLength:d.rangeLength,text:d.text,rangeOffset:d.rangeOffset,forceMoveMarkers:d.forceMoveMarkers})}return b}findMatchesLineByLine(a,b,c,d){return this._pieceTree.findMatchesLineByLine(a,b,c,d)}static _getInverseEditRanges(a){let b=[],c=0,d=0,e=null;for(let f=0,g=a.length;f<g;f++){let g,h,i,j=a[f];if(e?e.range.endLineNumber===j.range.startLineNumber?(g=c,h=d+(j.range.startColumn-e.range.endColumn)):(g=c+(j.range.startLineNumber-e.range.endLineNumber),h=j.range.startColumn):(g=j.range.startLineNumber,h=j.range.startColumn),j.text.length>0){let a=j.eolCount+1;i=1===a?new w.Q(g,h,g,h+j.firstLineLength):new w.Q(g,h,g+a-1,j.lastLineLength+1)}else i=new w.Q(g,h,g,h);c=i.endLineNumber,d=i.endColumn,b.push(i),e=j}return b}static _sortOpsAscending(a,b){let c=w.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?a.sortIndex-b.sortIndex:c}static _sortOpsDescending(a,b){let c=w.Q.compareRangesUsingEnds(a.range,b.range);return 0===c?b.sortIndex-a.sortIndex:-c}}class bo{constructor(a,b,c,d,e,f,g,h,i){this._chunks=a,this._bom=b,this._cr=c,this._lf=d,this._crlf=e,this._containsRTL=f,this._containsUnusualLineTerminators=g,this._isBasicASCII=h,this._normalizeEOL=i}_getEOL(a){let b=this._cr+this._lf+this._crlf,c=this._cr+this._crlf;return 0===b?1===a?"\n":"\r\n":c>b/2?"\r\n":"\n"}create(a){let b=this._getEOL(a),c=this._chunks;if(this._normalizeEOL&&("\r\n"===b&&(this._cr>0||this._lf>0)||"\n"===b&&(this._cr>0||this._crlf>0)))for(let a=0,d=c.length;a<d;a++){let d=c[a].buffer.replace(/\r\n|\r|\n/g,b),e=bg(d);c[a]=new bi(d,e)}let d=new bn(c,this._bom,b,this._containsRTL,this._containsUnusualLineTerminators,this._isBasicASCII,this._normalizeEOL);return{textBuffer:d,disposable:d}}}class bp{constructor(){this.chunks=[],this.BOM="",this._hasPreviousChar=!1,this._previousChar=0,this._tmpLineStarts=[],this.cr=0,this.lf=0,this.crlf=0,this.containsRTL=!1,this.containsUnusualLineTerminators=!1,this.isBasicASCII=!0}acceptChunk(a){if(0===a.length)return;0===this.chunks.length&&(0,n.LU)(a)&&(this.BOM=n.r_,a=a.substr(1));let b=a.charCodeAt(a.length-1);13===b||b>=55296&&b<=56319?(this._acceptChunk1(a.substr(0,a.length-1),!1),this._hasPreviousChar=!0):(this._acceptChunk1(a,!1),this._hasPreviousChar=!1),this._previousChar=b}_acceptChunk1(a,b){(b||0!==a.length)&&(this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+a):this._acceptChunk2(a))}_acceptChunk2(a){let b=function(a,b){a.length=0,a[0]=0;let c=1,d=0,e=0,f=0,g=!0;for(let h=0,i=b.length;h<i;h++){let j=b.charCodeAt(h);13===j?h+1<i&&10===b.charCodeAt(h+1)?(f++,a[c++]=h+2,h++):(d++,a[c++]=h+1):10===j?(e++,a[c++]=h+1):g&&9!==j&&(j<32||j>126)&&(g=!1)}let h=new bf(be(a),d,e,f,g);return a.length=0,h}(this._tmpLineStarts,a);this.chunks.push(new bi(a,b.lineStarts)),this.cr+=b.cr,this.lf+=b.lf,this.crlf+=b.crlf,!b.isBasicASCII&&(this.isBasicASCII=!1,this.containsRTL||(this.containsRTL=(0,n.E_)(a)),this.containsUnusualLineTerminators||(this.containsUnusualLineTerminators=(0,n.$X)(a)))}finish(a=!0){return this._finish(),new bo(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,a)}_finish(){if(0===this.chunks.length&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;let a=this.chunks[this.chunks.length-1];a.buffer+=String.fromCharCode(this._previousChar);let b=bg(a.buffer);a.lineStarts=b,13===this._previousChar&&this.cr++}}}var bq=c(70687),br=c(1401);c(94484);var bs=c(78014),bt=c(60548),bu=c(59825),bv=c(14960);class bw{constructor(){this._onDidChangeVisibleRanges=new l.vl,this.onDidChangeVisibleRanges=this._onDidChangeVisibleRanges.event,this._views=new Set,this._viewsChanged=(0,bt.Y)(this),this.visibleLineRanges=(0,bv.C)({owner:this,equalsFn:(0,bs.We)((0,bs.d)())},a=>(this._viewsChanged.read(a),br.M.joinMany([...this._views].map(b=>b.state.read(a)?.visibleLineRanges??[]))))}attachView(){let a=new by(b=>{this._onDidChangeVisibleRanges.fire({view:a,state:b})});return this._views.add(a),this._viewsChanged.trigger(void 0),a}detachView(a){this._views.delete(a),this._onDidChangeVisibleRanges.fire({view:a,state:void 0}),this._viewsChanged.trigger(void 0)}dispose(){this._onDidChangeVisibleRanges.dispose()}}class bx{constructor(a,b){this.visibleLineRanges=a,this.stabilized=b}equals(a){return this===a||!!(0,h.aI)(this.visibleLineRanges,a.visibleLineRanges,(a,b)=>a.equals(b))&&this.stabilized===a.stabilized}}class by{get state(){return this._state}constructor(a){this.handleStateChange=a,this._state=(0,bu.Z)({owner:this,equalsFn:(0,bs.jb)((a,b)=>a.equals(b))},void 0)}setVisibleLines(a,b){let c=new bx(a.map(a=>new br.M(a.startLineNumber,a.endLineNumber+1)),b);this._state.set(c,void 0,void 0),this.handleStateChange(c)}}class bz extends m.jG{get lineRanges(){return this._lineRanges}constructor(a){super(),this._refreshTokens=a,this.runner=this._register(new bq.uC(()=>this.update(),50)),this._computedLineRanges=[],this._lineRanges=[]}update(){(0,h.aI)(this._computedLineRanges,this._lineRanges,(a,b)=>a.equals(b))||(this._computedLineRanges=this._lineRanges,this._refreshTokens())}handleStateChange(a){this._lineRanges=a.visibleLineRanges,a.stabilized?(this.runner.cancel(),this.update()):this.runner.schedule()}}class bA extends m.jG{get backgroundTokenizationState(){return this._backgroundTokenizationState}constructor(a,b){super(),this._languageIdCodec=a,this._textModel=b,this._onDidChangeTokens=this._register(new l.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidChangeFontTokens=this._register(new l.vl),this.onDidChangeFontTokens=this._onDidChangeFontTokens.event}tokenizeIfCheap(a){this.isCheapToTokenize(a)&&this.forceTokenization(a)}}class bB{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c,d){this.ownerId=a,this.decorationId=b,this.lineNumber=c,this.lineHeight=d}}class bC{static toKey(a){return`${a.ownerId};${a.decorationId};${a.lineNumber}`}constructor(a,b,c){this.ownerId=a,this.decorationId=b,this.lineNumber=c}}var bD=c(70281);class bE{constructor(a=[]){this._annotations=[],this._annotations=a}setAnnotations(a){for(let b of a.annotations){let a=this._getStartIndexOfIntersectingAnnotation(b.range.start),c=this._getEndIndexOfIntersectingAnnotation(b.range.endExclusive);void 0!==b.annotation?this._annotations.splice(a,c-a,{range:b.range,annotation:b.annotation}):this._annotations.splice(a,c-a)}}getAnnotationsIntersecting(a){let b=this._getStartIndexOfIntersectingAnnotation(a.start),c=this._getEndIndexOfIntersectingAnnotation(a.endExclusive);return this._annotations.slice(b,c)}_getStartIndexOfIntersectingAnnotation(a){let b,c=(0,h.Uw)(this._annotations.length,b=>this._annotations[b].range.start-a);if(c>=0){b=c;let d=this._annotations[b]?.range;d&&d.endExclusive===a&&b--}else{let d=this._annotations[-(c+2)]?.range;b=d&&a>=d.start&&a<d.endExclusive?-(c+2):-(c+1)}return b}_getEndIndexOfIntersectingAnnotation(a){let b,c=(0,h.Uw)(this._annotations.length,b=>this._annotations[b].range.endExclusive-a);if(c>=0){b=c+1;let d=this._annotations[b]?.range;d&&d.start===a&&b++}else{let d=this._annotations[-(c+1)]?.range;b=d&&a>=d.start&&a<=d.endExclusive?-c:-(c+1)}return b}applyEdit(a){let b=this._annotations.slice(),c=[],d=[],e=0;for(let f of a.replacements){for(;;){let a=b[0];if(!a)break;let g=a.range;if(g.endExclusive>=f.replaceRange.start)break;b.shift();let h={range:g.delta(e),annotation:a.annotation};h.range.isEmpty?d.push(h):c.push(h)}let a=[];for(;;){let c=b[0];if(!c||!c.range.intersectsOrTouches(f.replaceRange))break;b.shift(),a.push(c)}for(let c=a.length-1;c>=0;c--){let d=a[c],e=d.range,g=0===c&&f.replaceRange.endExclusive>e.start&&f.replaceRange.start<e.endExclusive,h=e.intersect(f.replaceRange).length,i=(e=e.deltaEnd(-h+(g?f.newText.length:0))).start-f.replaceRange.start;i>0&&(e=e.delta(-i)),!g&&i>=0&&(e=e.delta(f.newText.length)),e=e.delta(-(f.newText.length-f.replaceRange.length)),b.unshift({annotation:d.annotation,range:e})}e+=f.newText.length-f.replaceRange.length}for(;;){let a=b[0];if(!a)break;b.shift();let f={annotation:a.annotation,range:a.range.delta(e)};f.range.isEmpty?d.push(f):c.push(f)}return this._annotations=c,d}}class bF{static create(a){return new bF(a)}constructor(a){this._annotations=a}get annotations(){return this._annotations}}var bG=c(39482),bH=c(62755);class bI extends m.jG{static{this.DECORATION_COUNT=0}constructor(a,b){super(),this.textModel=a,this.tokenizationTextModelPart=b,this._onDidChangeLineHeight=this._register(new l.vl),this.onDidChangeLineHeight=this._onDidChangeLineHeight.event,this._onDidChangeFont=this._register(new l.vl),this.onDidChangeFont=this._onDidChangeFont.event,this._fontAnnotatedString=new bE,this._register(this.tokenizationTextModelPart.onDidChangeFontTokens(a=>{let b=new Set,c=[],d=new Set,e=new Set;for(let f of a.changes.annotations){let a,g=this.textModel.getPositionAt(f.range.start).lineNumber;if(void 0===f.annotation)a={range:f.range,annotation:void 0};else{let b=`tokenization-font-decoration-${bI.DECORATION_COUNT}`,c={fontToken:f.annotation,decorationId:b};a={range:f.range,annotation:c},bI.DECORATION_COUNT++,f.annotation.lineHeightMultiplier&&d.add(new bB(0,b,g,f.annotation.lineHeightMultiplier)),e.add(new bC(0,b,g))}if(c.push(a),!b.has(g)){let a=this.textModel.getOffsetAt(new v.y(g,1)),c=this.textModel.getOffsetAt(new v.y(g,this.textModel.getLineMaxColumn(g))),f=new bG.L(a,c);for(let a of this._fontAnnotatedString.getAnnotationsIntersecting(f)){let b=a.annotation.decorationId;d.add(new bB(0,b,g,null)),e.add(new bC(0,b,g))}b.add(g)}}this._fontAnnotatedString.setAnnotations(bF.create(c)),this._onDidChangeLineHeight.fire(d),this._onDidChangeFont.fire(e)}))}handleDidChangeContent(a){let b,c=((b=a.changes.map(a=>new bH.aQ(bG.L.ofStartAndLength(a.rangeOffset,a.rangeLength),a.text))).reverse(),new bH.c7(b)),d=this._fontAnnotatedString.applyEdit(c);if(0===d.length)return;let e=new Set,f=new Set;for(let a of d){let b=this.textModel.getPositionAt(a.range.start).lineNumber,c=a.annotation.decorationId;e.add(new bB(0,c,b,null)),f.add(new bC(0,c,b))}this._onDidChangeLineHeight.fire(e),this._onDidChangeFont.fire(f)}getDecorationsInRange(a,b,c,d,e){let f=this.textModel.getOffsetAt(a.getStartPosition()),g=this.textModel.getOffsetAt(a.getEndPosition()),h=this._fontAnnotatedString.getAnnotationsIntersecting(new bG.L(f,g)),i=[];for(let a of h){let b=a.annotation,c=!!(b.fontToken.fontFamily||b.fontToken.fontSizeMultiplier);if(!(c&&d)){let b=this.textModel.getPositionAt(a.range.start),d=this.textModel.getPositionAt(a.range.endExclusive),e=w.Q.fromPositions(b,d),f=a.annotation,g=(0,bD.eb)(f.fontToken.fontFamily??"",f.fontToken.fontSizeMultiplier??0),h=f.decorationId;i.push({id:h,options:{description:"FontOptionDecoration",inlineClassName:g,lineHeight:f.fontToken.lineHeightMultiplier,affectsFont:c},ownerId:0,range:e})}}return i}getAllDecorations(a,b){return this.getDecorationsInRange(new w.Q(1,1,this.textModel.getLineCount(),this.textModel.getLineMaxColumn(this.textModel.getLineCount())),a,b)}}var bJ=c(57615),bK=c(25076),bL=c(18216),bM=c(37788),bN=c(45186),bO=c(67992);function bP(a,b){let c=a.gotoParent(),d=b.gotoParent();if(c!==d)throw Error("Trees are out of sync");return c&&d}function bQ(a,b){do{if(a.currentNode.nextSibling)return function(a,b){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");return c&&d}(a,b);a.currentNode.parent&&bP(a,b)}while(a.currentNode.nextSibling||a.currentNode.parent);return!1}var bR=c(54265),bS=c(87175),bT=function(a,b){return function(c,d){b(c,d,a)}};let bU=class extends m.jG{constructor(a,b,c,d,e,f,g){super(),this.languageId=a,this._ranges=b,this._parser=c,this._parserClass=d,this.textModel=e,this._logService=f,this._telemetryService=g,this._tree=(0,bS.FY)(this,void 0),this.tree=this._tree,this._treeLastParsedVersion=(0,bS.FY)(this,-1),this.treeLastParsedVersion=this._treeLastParsedVersion,this._onDidChangeContentQueue=new bq.Pq,this._tree=(0,bS.FY)(this,void 0),this.tree=this._tree,this._register((0,m.s)(()=>{this._tree.get()?.delete(),this._lastFullyParsed?.delete(),this._lastFullyParsedWithEdits?.delete(),this._parser.delete()})),this.handleContentChange(void 0,this._ranges)}handleContentChange(a,b){let c=this.textModel.getVersionId(),d=[];b&&(d=this._setRanges(b)),a&&this._applyEdits(a.changes),this._onDidChangeContentQueue.clearPending(),this._onDidChangeContentQueue.schedule(async()=>{let a;if(this._store.isDisposed)return;let b=this._lastFullyParsed;this._lastFullyParsedWithEdits&&this._lastFullyParsed&&(a=this._findChangedNodes(this._lastFullyParsedWithEdits,this._lastFullyParsed));let e=await this._parseAndUpdateTree(c);if(e){let f;a?b&&a&&(f=this._findTreeChanges(e,a,d)):this._ranges&&(f=this._ranges.map(a=>({newRange:new w.Q(a.startPosition.row+1,a.startPosition.column+1,a.endPosition.row+1,a.endPosition.column+1),oldRangeLength:a.endIndex-a.startIndex,newRangeStartOffset:a.startIndex,newRangeEndOffset:a.endIndex}))),f||(f=[{newRange:this.textModel.getFullModelRange(),newRangeStartOffset:0,newRangeEndOffset:this.textModel.getValueLength()}]);let g=this._tree.get();(0,bR.Rn)(a=>{this._tree.set(e,a,{ranges:f,versionId:c}),this._treeLastParsedVersion.set(c,a)}),g?.delete()}})}_applyEdits(a){for(let b of a){let a=bO.W.ofRange(w.Q.lift(b.range)),c=bO.W.ofText(b.text),d=0===b.text.length?c:a.add(c),e={startIndex:b.rangeOffset,oldEndIndex:b.rangeOffset+b.rangeLength,newEndIndex:b.rangeOffset+b.text.length,startPosition:{row:b.range.startLineNumber-1,column:b.range.startColumn-1},oldEndPosition:{row:b.range.endLineNumber-1,column:b.range.endColumn-1},newEndPosition:{row:b.range.startLineNumber+d.lineCount-1,column:d.lineCount?d.columnCount:b.range.endColumn+d.columnCount}};this._tree.get()?.edit(e),this._lastFullyParsedWithEdits?.edit(e)}}_findChangedNodes(a,b){if(this._ranges&&this._ranges.every(b=>b.startPosition.row!==a.rootNode.startPosition.row)||0!==a.rootNode.startPosition.row)return[];let c=a.walk(),d=b.walk(),e=[],f=!0;do if(c.currentNode.hasChanges){let b=c.currentNode.children,g=[],h=b.filter((a,b)=>(!!a?.hasChanges||d.currentNode.children.length<=b)&&(g.push(b),!0));if(0===h.length||c.currentNode.hasError!==d.currentNode.hasError){for(;c.currentNode.parent&&f&&!c.currentNode.isNamed;)f=bP(c,d);let b=c.currentNode,g=function(a,b){let c=b.walk();c.resetTo(a);let d=a.currentNode;do if(c.currentNode.previousSibling&&c.currentNode.endIndex-c.currentNode.startIndex!=0)c.gotoPreviousSibling();else{for(;!c.currentNode.previousSibling&&c.currentNode.parent;)c.gotoParent();c.gotoPreviousSibling()}while(c.currentNode.endIndex>d.startIndex&&(c.currentNode.parent||c.currentNode.previousSibling)&&c.currentNode.id!==d.id);return c.currentNode.id!==d.id&&c.currentNode.endIndex<=d.startIndex?c.currentNode:void 0}(c,a)??b;e.push({startIndex:g.startIndex,endIndex:b.endIndex,startPosition:g.startPosition,endPosition:b.endPosition}),f=bQ(c,d)}else h.length>=1&&(f=function(a,b,c){let d=a.gotoFirstChild(),e=b.gotoFirstChild();if(d!==e)throw Error("Trees are out of sync");if(0===c)return d&&e;for(let d=1;d<=c;d++){let c=a.gotoNextSibling(),d=b.gotoNextSibling();if(c!==d)throw Error("Trees are out of sync");if(!c||!d)return!1}return d&&e}(c,d,g[0]))}else f=bQ(c,d);while(f);return c.delete(),d.delete(),e}_findTreeChanges(a,b,c){let d=0,e=[];for(let f=0;f<b.length;f++){let g=b[f];if(e.length>0&&g.startIndex>=e[e.length-1].newRangeStartOffset&&g.endIndex<=e[e.length-1].newRangeEndOffset)continue;let h=a.walk(),i=()=>h.startIndex<g.startIndex&&h.endIndex>g.endIndex;for(;i();){let a=h.gotoFirstChild(),b=!1;for(;a;)if(i()&&h.currentNode.isNamed){b=!0;break}else a=h.gotoNextSibling();if(!b){h.gotoParent();break}if(0===h.currentNode.childCount)break}let j=h.currentNode.startPosition,k=h.currentNode.endPosition,l=h.currentNode.startIndex,m=h.currentNode.endIndex,n={newRange:new w.Q(j.row+1,j.column+1,k.row+1,k.column+1),newRangeStartOffset:l,newRangeEndOffset:m};d<c.length&&bV(c[d],{startIndex:l,endIndex:m})?(c[d].startIndex<n.newRangeStartOffset&&(n.newRange=n.newRange.setStartPosition(c[d].startPosition.row+1,c[d].startPosition.column+1),n.newRangeStartOffset=c[d].startIndex),c[d].endIndex>n.newRangeEndOffset&&(n.newRange=n.newRange.setEndPosition(c[d].endPosition.row+1,c[d].endPosition.column+1),n.newRangeEndOffset=c[d].endIndex),d++):d<c.length&&c[d].endIndex<n.newRangeStartOffset&&e.push({newRange:new w.Q(c[d].startPosition.row+1,c[d].startPosition.column+1,c[d].endPosition.row+1,c[d].endPosition.column+1),newRangeStartOffset:c[d].startIndex,newRangeEndOffset:c[d].endIndex}),e.length>0&&e[e.length-1].newRangeEndOffset>=n.newRangeStartOffset?(e[e.length-1].newRange=w.Q.fromPositions(e[e.length-1].newRange.getStartPosition(),n.newRange.getEndPosition()),e[e.length-1].newRangeEndOffset=n.newRangeEndOffset):e.push(n)}return this._constrainRanges(e)}_constrainRanges(a){if(!this._ranges)return a;let b=[],c=0,d=0;for(;c<a.length&&d<this._ranges.length;){let e=a[c],f=this._ranges[d];if(e.newRangeEndOffset<f.startIndex)c++;else if(e.newRangeStartOffset>f.endIndex)d++;else{let a=Math.max(e.newRangeStartOffset,f.startIndex),d=Math.min(e.newRangeEndOffset,f.endIndex),g=e.newRange.intersectRanges(new w.Q(f.startPosition.row+1,f.startPosition.column+1,f.endPosition.row+1,f.endPosition.column+1));b.push({newRange:g,newRangeEndOffset:d,newRangeStartOffset:a}),d<e.newRangeEndOffset?(e.newRange=w.Q.fromPositions(g.getEndPosition(),e.newRange.getEndPosition()),e.newRangeStartOffset=d+1):c++}}return b}async _parseAndUpdateTree(a){let b=await this._parse();if(b)return this._lastFullyParsed?.delete(),this._lastFullyParsed=b.copy(),this._lastFullyParsedWithEdits?.delete(),this._lastFullyParsedWithEdits=b.copy(),b;this._tree.get()||this._parser.reset()}_parse(){let a="fullParse";return this._tree.get()&&(a="incrementalParse"),this._parseAndYield(a)}async _parseAndYield(a){let b,c,d=0,e=0,f=this.textModel.getVersionId(),g=(b=performance.now(),function(a){let c=performance.now();return c-b>50&&(b=c,!0)});do{let a=performance.now();c=this._parser.parse((a,b)=>this._parseCallback(a),this._tree.get(),{progressCallback:g,includedRanges:this._ranges}),d+=performance.now()-a,e++,await new Promise(a=>(0,bL._p)(a))}while(!this._store.isDisposed&&!c&&f===this.textModel.getVersionId());return this._sendParseTimeTelemetry(a,d,e),c&&f===this.textModel.getVersionId()?c:void 0}_parseCallback(a){try{return this.textModel.getTextBuffer().getNearestChunk(a)}catch(a){this._logService.debug("Error getting chunk for tree-sitter parsing",a)}}_setRanges(a){let b=[];if(this._ranges)for(let e of a){let a=!1;for(let b=0;b<this._ranges.length;b++){var c,d;let f=this._ranges[b];if(c=f,d=e,c.startPosition.row===d.startPosition.row&&c.startPosition.column===d.startPosition.column&&c.endPosition.row===d.endPosition.row&&c.endPosition.column===d.endPosition.column&&c.startIndex===d.startIndex&&c.endIndex===d.endIndex||bV(f,e)){a=!0;break}}a||b.push(e)}else b.push(...a);return this._ranges=a,b}_sendParseTimeTelemetry(a,b,c){this._logService.debug(`Tree parsing (${a}) took ${b} ms and ${c} passes.`),"fullParse"===a?this._telemetryService.publicLog2("treeSitter.fullParse",{languageId:this.languageId,time:b,passes:c}):this._telemetryService.publicLog2("treeSitter.incrementalParse",{languageId:this.languageId,time:b,passes:c})}createParsedTreeSync(a){let b=new this._parserClass;b.setLanguage(this._parser.language);let c=b.parse(a);return b.delete(),c??void 0}};function bV(a,b){return a.startIndex<=b.startIndex&&a.endIndex>=b.startIndex||b.startIndex<=a.startIndex&&b.endIndex>=a.startIndex}bU=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([bT(5,bM.rr),bT(6,bN.k)],bU);var bW=c(28672),bX=c(45719);class bY{constructor(a){this._default=a,this._store=[]}get(a){return a<this._store.length?this._store[a]:this._default}set(a,b){for(;a>=this._store.length;)this._store[this._store.length]=this._default;this._store[a]=b}replace(a,b,c){if(a>=this._store.length)return;if(0===b)return void this.insert(a,c);if(0===c)return void this.delete(a,b);let d=this._store.slice(0,a),e=this._store.slice(a+b),f=function(a,b){let c=[];for(let d=0;d<a;d++)c[d]=b;return c}(c,this._default);this._store=d.concat(f,e)}delete(a,b){0===b||a>=this._store.length||this._store.splice(a,b)}insert(a,b){if(0===b||a>=this._store.length)return;let c=[];for(let a=0;a<b;a++)c[a]=this._default;this._store=(0,h.nK)(this._store,a,c)}}class bZ{get startLineNumber(){return this._startLineNumber}get endLineNumber(){return this._startLineNumber+this._tokens.length-1}constructor(a,b){this._startLineNumber=a,this._tokens=b}getLineTokens(a){return this._tokens[a-this._startLineNumber]}appendLineTokens(a){this._tokens.push(a)}}class b${constructor(){this._tokens=[]}add(a,b){if(this._tokens.length>0){let c=this._tokens[this._tokens.length-1];if(c.endLineNumber+1===a)return void c.appendLineTokens(b)}this._tokens.push(new bZ(a,[b]))}finalize(){return this._tokens}}class b_{constructor(a,b){this.tokenizationSupport=b,this.initialState=this.tokenizationSupport.getInitialState(),this.store=new b2(a)}getStartState(a){return this.store.getStartState(a,this.initialState)}getFirstInvalidLine(){return this.store.getFirstInvalidLine(this.initialState)}}class b0 extends b_{constructor(a,b,c,d){super(a,b),this._textModel=c,this._languageIdCodec=d}updateTokensUntilLine(a,b){let c=this._textModel.getLanguageId();for(;;){let d=this.getFirstInvalidLine();if(!d||d.lineNumber>b)break;let e=this._textModel.getLineContent(d.lineNumber),f=b5(this._languageIdCodec,c,this.tokenizationSupport,e,!0,d.startState);a.add(d.lineNumber,f.tokens),this.store.setEndState(d.lineNumber,f.endState)}}getTokenTypeIfInsertingCharacter(a,b){let c=this.getStartState(a.lineNumber);if(!c)return 0;let d=this._textModel.getLanguageId(),e=this._textModel.getLineContent(a.lineNumber),f=e.substring(0,a.column-1)+b+e.substring(a.column-1),g=b5(this._languageIdCodec,d,this.tokenizationSupport,f,!0,c),h=new D.f7(g.tokens,f,this._languageIdCodec);if(0===h.getCount())return 0;let i=h.findTokenIndexAtOffset(a.column-1);return h.getStandardTokenType(i)}tokenizeLinesAt(a,b){let c=this.getStartState(a);if(!c)return null;let d=this._textModel.getLanguageId(),e=[],f=c;for(let a of b){let b=b5(this._languageIdCodec,d,this.tokenizationSupport,a,!0,f);e.push(new D.f7(b.tokens,a,this._languageIdCodec)),f=b.endState}return e}hasAccurateTokensForLine(a){return a<this.store.getFirstInvalidEndStateLineNumberOrMax()}isCheapToTokenize(a){let b=this.store.getFirstInvalidEndStateLineNumberOrMax();return!!(a<b||a===b&&2048>this._textModel.getLineLength(a))}tokenizeHeuristically(a,b,c){if(c<=this.store.getFirstInvalidEndStateLineNumberOrMax())return{heuristicTokens:!1};if(b<=this.store.getFirstInvalidEndStateLineNumberOrMax())return this.updateTokensUntilLine(a,c),{heuristicTokens:!1};let d=this.guessStartState(b),e=this._textModel.getLanguageId();for(let f=b;f<=c;f++){let b=this._textModel.getLineContent(f),c=b5(this._languageIdCodec,e,this.tokenizationSupport,b,!0,d);a.add(f,c.tokens),d=c.endState}return{heuristicTokens:!0}}guessStartState(a){let{likelyRelevantLines:b,initialState:c}=b1(this._textModel,a,this);c||(c=this.tokenizationSupport.getInitialState());let d=this._textModel.getLanguageId(),e=c;for(let a of b)e=b5(this._languageIdCodec,d,this.tokenizationSupport,a,!1,e).endState;return e}}function b1(a,b,c){let d=a.getLineFirstNonWhitespaceColumn(b),e=[],f=null;for(let g=b-1;d>1&&g>=1;g--){let b=a.getLineFirstNonWhitespaceColumn(g);if(0!==b&&b<d&&(e.push(a.getLineContent(g)),d=b,f=c?.getStartState(g)))break}return e.reverse(),{likelyRelevantLines:e,initialState:f??void 0}}class b2{constructor(a){this.lineCount=a,this._tokenizationStateStore=new b3,this._invalidEndStatesLineNumbers=new b4,this._invalidEndStatesLineNumbers.addRange(new bG.L(1,a+1))}getEndState(a){return this._tokenizationStateStore.getEndState(a)}setEndState(a,b){if(!b)throw new k.D7("Cannot set null/undefined state");this._invalidEndStatesLineNumbers.delete(a);let c=this._tokenizationStateStore.setEndState(a,b);return c&&a<this.lineCount&&this._invalidEndStatesLineNumbers.addRange(new bG.L(a+1,a+2)),c}acceptChange(a,b){this.lineCount+=b-a.length,this._tokenizationStateStore.acceptChange(a,b),this._invalidEndStatesLineNumbers.addRangeAndResize(new bG.L(a.startLineNumber,a.endLineNumberExclusive),b)}acceptChanges(a){for(let b of a){let[a]=(0,s.W)(b.text);this.acceptChange(new br.M(b.range.startLineNumber,b.range.endLineNumber+1),a+1)}}invalidateEndStateRange(a){this._invalidEndStatesLineNumbers.addRange(new bG.L(a.startLineNumber,a.endLineNumberExclusive))}getFirstInvalidEndStateLineNumber(){return this._invalidEndStatesLineNumbers.min}getFirstInvalidEndStateLineNumberOrMax(){return this.getFirstInvalidEndStateLineNumber()||Number.MAX_SAFE_INTEGER}allStatesValid(){return null===this._invalidEndStatesLineNumbers.min}getStartState(a,b){return 1===a?b:this.getEndState(a-1)}getFirstInvalidLine(a){let b=this.getFirstInvalidEndStateLineNumber();if(null===b)return null;let c=this.getStartState(b,a);if(!c)throw new k.D7("Start state must be defined");return{lineNumber:b,startState:c}}}class b3{constructor(){this._lineEndStates=new bY(null)}getEndState(a){return this._lineEndStates.get(a)}setEndState(a,b){let c=this._lineEndStates.get(a);return!(c&&c.equals(b))&&(this._lineEndStates.set(a,b),!0)}acceptChange(a,b){let c=a.length;b>0&&c>0&&(c--,b--),this._lineEndStates.replace(a.startLineNumber,c,b)}}class b4{constructor(){this._ranges=[]}get min(){return 0===this._ranges.length?null:this._ranges[0].start}delete(a){let b=this._ranges.findIndex(b=>b.contains(a));if(-1!==b){let c=this._ranges[b];c.start===a?c.endExclusive===a+1?this._ranges.splice(b,1):this._ranges[b]=new bG.L(a+1,c.endExclusive):c.endExclusive===a+1?this._ranges[b]=new bG.L(c.start,a):this._ranges.splice(b,1,new bG.L(c.start,a),new bG.L(a+1,c.endExclusive))}}addRange(a){bG.L.addRange(a,this._ranges)}addRangeAndResize(a,b){let c=0;for(;!(c>=this._ranges.length||a.start<=this._ranges[c].endExclusive);)c++;let d=c;for(;!(d>=this._ranges.length||a.endExclusive<this._ranges[d].start);)d++;let e=b-a.length;for(let a=d;a<this._ranges.length;a++)this._ranges[a]=this._ranges[a].delta(e);if(c===d){let d=new bG.L(a.start,a.start+b);d.isEmpty||this._ranges.splice(c,0,d)}else{let b=Math.min(a.start,this._ranges[c].start),f=Math.max(a.endExclusive,this._ranges[d-1].endExclusive),g=new bG.L(b,f+e);g.isEmpty?this._ranges.splice(c,d-c):this._ranges.splice(c,d-c,g)}}toString(){return this._ranges.map(a=>a.toString()).join(" + ")}}function b5(a,b,c,d,e,f){let g=null;if(c)try{g=c.tokenizeEncoded(d,e,f.clone())}catch(a){(0,k.dz)(a)}return g||(g=(0,bX.Lh)(a.encodeLanguageId(b),f)),D.f7.convertToEndOffset(g.tokens,d.length),g}class b6{constructor(a,b){this._tokenizerWithStateStore=a,this._backgroundTokenStore=b,this._isDisposed=!1,this._isScheduled=!1}dispose(){this._isDisposed=!0}handleChanges(){this._beginBackgroundTokenization()}_beginBackgroundTokenization(){!this._isScheduled&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._isScheduled=!0,(0,bq.$6)(a=>{this._isScheduled=!1,this._backgroundTokenizeWithDeadline(a)}))}_backgroundTokenizeWithDeadline(a){let b=Date.now()+a.timeRemaining(),c=()=>{!this._isDisposed&&this._tokenizerWithStateStore._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&(this._backgroundTokenizeForAtLeast1ms(),Date.now()<b?(0,bL._p)(c):this._beginBackgroundTokenization())};c()}_backgroundTokenizeForAtLeast1ms(){let a=this._tokenizerWithStateStore._textModel.getLineCount(),b=new b$,c=bW.W.create(!1);do if(c.elapsed()>1||this._tokenizeOneInvalidLine(b)>=a)break;while(this._hasLinesToTokenize());this._backgroundTokenStore.setTokens(b.finalize()),this.checkFinished()}_hasLinesToTokenize(){return!!this._tokenizerWithStateStore&&!this._tokenizerWithStateStore.store.allStatesValid()}_tokenizeOneInvalidLine(a){let b=this._tokenizerWithStateStore?.getFirstInvalidLine();return b?(this._tokenizerWithStateStore.updateTokensUntilLine(a,b.lineNumber),b.lineNumber):this._tokenizerWithStateStore._textModel.getLineCount()+1}checkFinished(){!this._isDisposed&&this._tokenizerWithStateStore.store.allStatesValid()&&this._backgroundTokenStore.backgroundTokenizationFinished()}requestTokens(a,b){this._tokenizerWithStateStore.store.invalidateEndStateRange(new br.M(a,b))}}class b7{get children(){return this._children}get length(){return this._length}constructor(a){this.height=a,this._children=[],this._length=0}static create(a,b){let c=new b7(a.height+1);return c.appendChild(a),c.appendChild(b),c}canAppendChild(){return this._children.length<3}appendChild(a){if(!this.canAppendChild())throw Error("Cannot insert more than 3 children in a ListNode");this._children.push(a),this._length+=a.length,this._updateParentLength(a.length),b8(a)||(a.parent=this)}_updateParentLength(a){let b=this.parent;for(;b;)b._length+=a,b=b.parent}unappendChild(){let a=this._children.pop();return this._length-=a.length,this._updateParentLength(-a.length),a}prependChild(a){if(this._children.length>=3)throw Error("Cannot prepend more than 3 children in a ListNode");this._children.unshift(a),this._length+=a.length,this._updateParentLength(a.length),b8(a)||(a.parent=this)}unprependChild(){let a=this._children.shift();return this._length-=a.length,this._updateParentLength(-a.length),a}lastChild(){return this._children[this._children.length-1]}dispose(){this._children.splice(0,this._children.length)}}function b8(a){return void 0!==a.token}function b9(a,b){let c,d=a,e=[];for(;;){if(b.height===d.height){c=b;break}if(b8(d))throw Error("unexpected");e.push(d),d=d.lastChild()}for(let a=e.length-1;a>=0;a--){let b=e[a];c&&(b.children.length>=3?c=b7.create(b.unappendChild(),c):(b.appendChild(c),c=void 0))}if(!c)return a;{let b=new b7(c.height+1);return b.appendChild(a),b.appendChild(c),b}}(d=e||(e={}))[d.None=0]="None",d[d.ViewportGuess=1]="ViewportGuess",d[d.EditGuess=2]="EditGuess",d[d.Accurate=3]="Accurate";class ca{constructor(a){this._textModel=a,this._root=this.createEmptyRoot()}createEmptyRoot(){return{length:this._textModel.getValueLength(),token:0,height:0,tokenQuality:e.None}}buildStore(a,b){this._root=this.createFromUpdates(a,b)}createFromUpdates(a,b){if(0===a.length)return this.createEmptyRoot();let c={length:a[0].length,token:a[0].token,height:0,tokenQuality:b};for(let d=1;d<a.length;d++)c=b9(c,{length:a[d].length,token:a[d].token,height:0,tokenQuality:b});return c}update(a,b,c){0!==b.length&&this.replace(a,b[0].startOffsetInclusive,b,c)}delete(a,b){this.replace(a,b,[],e.EditGuess)}replace(a,b,c,d){let e,f=b+a,g=[],h=[],i=[{node:this._root,offset:0}];for(;i.length>0;){let a=i.pop(),c=a.offset;if(c<b&&c+a.node.length<=b){b8(a.node)||(a.node.parent=void 0),g.push(a.node);continue}if(b8(a.node)&&c<b&&g.push({length:b-c,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality}),!(b<=c)||!(c+a.node.length<=f)){if(c>=f){b8(a.node)||(a.node.parent=void 0),h.push(a.node);continue}if(b8(a.node)&&c+a.node.length>f){h.push({length:c+a.node.length-f,token:a.node.token,height:0,tokenQuality:a.node.tokenQuality});continue}if(!b8(a.node)){let b=c+a.node.length;for(let c=a.node.children.length-1;c>=0;c--)b-=a.node.children[c].length,i.push({node:a.node.children[c],offset:b})}}}let j=(e=c.length>0?g.concat(this.createFromUpdates(c,d),h):g.concat(h))[0];for(let a=1;a<e.length;a++){var k,l;k=j,l=e[a],j=k.height===l.height?b7.create(k,l):k.height>l.height?b9(k,l):function(a,b){let c=a,d=[];for(;b.height!==c.height;){if(b8(c))throw Error("unexpected");d.push(c),c=c.children[0]}let e=b;for(let a=d.length-1;a>=0;a--){let b=d[a];e&&(b.children.length>=3?e=b7.create(e,b.unprependChild()):(b.prependChild(e),e=void 0))}return e?b7.create(e,a):a}(l,k)}this._root=j??this.createEmptyRoot()}traverseInOrderInRange(a,b,c){let d=[{node:this._root,offset:0}];for(;d.length>0;){let{node:e,offset:f}=d.pop();if(!(f+e.length<=a)&&!(f>=b)){if(c(e,f))return;if(!b8(e)){let a=f+e.length;for(let b=e.children.length-1;b>=0;b--)a-=e.children[b].length,d.push({node:e.children[b],offset:a})}}}}getTokenAt(a){let b;return this.traverseInOrderInRange(a,this._root.length,(a,c)=>!!b8(a)&&(b={token:a.token,startOffsetInclusive:c,length:a.length},!0)),b}getTokensInRange(a,b){let c=[];return this.traverseInOrderInRange(a,b,(d,e)=>{if(b8(d)){let f=d.length,g=e;e<a&&e+d.length>b?(g=a,f=b-a):e<a?(f-=a-e,g=a):e+d.length>b&&(f-=e+d.length-b),c.push({token:d.token,startOffsetInclusive:g,length:f})}return!1}),c}markForRefresh(a,b){this.traverseInOrderInRange(a,b,a=>(b8(a)&&(a.tokenQuality=e.None),!1))}rangeHasTokens(a,b,c){let d=!0;return this.traverseInOrderInRange(a,b,a=>(b8(a)&&a.tokenQuality<c&&(d=!1),!1)),d}rangeNeedsRefresh(a,b){let c=!1;return this.traverseInOrderInRange(a,b,a=>(b8(a)&&a.tokenQuality!==e.Accurate&&(c=!0),!1)),c}getNeedsRefresh(){let a=[];return this.traverseInOrderInRange(0,this._textModel.getValueLength(),(b,c)=>(b8(b)&&b.tokenQuality!==e.Accurate&&(a.length>0&&a[a.length-1].endOffset===c?a[a.length-1].endOffset+=b.length:a.push({startOffset:c,endOffset:c+b.length})),!1)),a}dispose(){let a=[[this._root,!1]];for(;a.length>0;){let[b,c]=a.pop();if(b8(b));else if(c)b.dispose(),b.parent=void 0;else{a.push([b,!0]);for(let c=b.children.length-1;c>=0;c--)a.push([b.children[c],!1])}}this._root=void 0}}var cb=c(85214);let cc=(0,p.u1)("treeSitterThemeService");var cd=c(87350),ce=c(93539);let cf=class extends m.jG{get _textModel(){return this._tree.textModel}constructor(a,b,c,d,f){super(),this._tree=a,this._highlightingQueries=b,this._languageIdCodec=c,this._visibleLineRanges=d,this._treeSitterThemeService=f,this._onDidChangeTokens=this._register(new l.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidCompleteBackgroundTokenization=this._register(new l.vl),this.onDidChangeBackgroundTokenization=this._onDidCompleteBackgroundTokenization.event,this._encodedLanguageId=this._languageIdCodec.encodeLanguageId(this._tree.languageId),this._register((0,cd.lp)(this._treeSitterThemeService.onChange,()=>{this._updateTheme()})),this._tokenStore=this._register(new ca(this._textModel)),this._accurateVersion=this._textModel.getVersionId(),this._guessVersion=this._textModel.getVersionId(),this._tokenStore.buildStore(this._createEmptyTokens(),e.None),this._register((0,ce.fm)(a=>{let b=this._visibleLineRanges.read(a);this._parseAndTokenizeViewPort(b)})),this._register((0,ce.Y)({owner:this,changeTracker:function(a){return{createChangeSummary:a=>({changes:[]}),handleChange(b,c){for(let d in a)b.didChange(a[d])&&c.changes.push({key:d,change:b.change});return!0},beforeUpdate(b,c){for(let d in a){if("changes"===d)throw new k.D7('property name "changes" is reserved for change tracking');c[d]=a[d].read(b)}}}}({tree:this._tree.tree})},(a,b)=>{let c=b.changes.at(0)?.change;if(b.changes.length>1)throw new k.D7("The tree changed twice in one transaction. This is currently not supported and should not happen.");if(c){if(this.hasTokens())for(let a of c.ranges)this._markForRefresh(a.newRange);this.hasTokens()?this._handleTreeUpdate(c.ranges,c.versionId):this._firstTreeUpdate(c.versionId)}else b.tree&&this._firstTreeUpdate(this._tree.treeLastParsedVersion.read(a))}))}handleContentChanged(a){for(let b of(this._guessVersion=a.versionId,a.changes))if(b.text.length>b.rangeLength){let a,c=b.rangeOffset>0?b.rangeOffset-1:b.rangeOffset,d=this._tokenStore.getTokenAt(c);d?(a={startOffsetInclusive:d.startOffsetInclusive,length:d.length+b.text.length-b.rangeLength,token:d.token},this._tokenStore.markForRefresh(c,b.rangeOffset+(b.text.length>b.rangeLength?b.text.length:b.rangeLength))):a={startOffsetInclusive:c,length:b.text.length,token:0},this._tokenStore.update(d?.length??0,[a],e.EditGuess)}else if(b.text.length<b.rangeLength){let a=b.rangeLength-b.text.length;this._tokenStore.delete(a,b.rangeOffset)}}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this.getTokens(a);return new D.f7(c,b,this._languageIdCodec)}_createEmptyTokens(){let a=this._emptyToken(),b=this._textModel.getValueLength();return[this._emptyTokensForOffsetAndLength(0,b,a)]}_emptyToken(){return this._treeSitterThemeService.findMetadata([],this._encodedLanguageId,!1,void 0)}_emptyTokensForOffsetAndLength(a,b,c){return{token:c,length:a+b,startOffsetInclusive:0}}hasAccurateTokensForLine(a){return this.hasTokens(new w.Q(a,1,a,this._textModel.getLineMaxColumn(a)))}tokenizeLinesAt(a,b){let c=this._guessTokensForLinesContent(a,b),d=[];if(!c)return null;for(let a=0;a<c.length;a++)d.push(new D.f7(c[a],b[a],this._languageIdCodec));return d}_rangeHasTokens(a,b){return this._tokenStore.rangeHasTokens(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()),b)}hasTokens(a){return!a||this._guessVersion===this._accurateVersion||!this._tokenStore.rangeNeedsRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}getTokens(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=this._textModel.getOffsetAt({lineNumber:a,column:this._textModel.getLineLength(a)+1}),d=this._tokenStore.getTokensInRange(b,c),e=new Uint32Array(2*d.length);for(let a=0;a<d.length;a++)e[2*a]=d[a].startOffsetInclusive-b+d[a].length,e[2*a+1]=d[a].token;return e}getTokensInRange(a,b,c,d){let e=d?this._tokenizeCapturesWithMetadata(d,b,c):this._tokenize(a,b,c);if(e?.endOffsetsAndMetadata)return this._rangeTokensAsUpdates(b,e.endOffsetsAndMetadata)}_updateTokensInStore(a,b,c){for(let d of(this._accurateVersion=a,b)){let b,e=d.newTokens.length>0?d.newTokens[d.newTokens.length-1]:void 0;b=e&&this._guessVersion>=a?e.startOffsetInclusive+e.length-d.newTokens[0].startOffsetInclusive:d.oldRangeLength?d.oldRangeLength:0,this._tokenStore.update(b,d.newTokens,c)}}_markForRefresh(a){this._tokenStore.markForRefresh(this._textModel.getOffsetAt(a.getStartPosition()),this._textModel.getOffsetAt(a.getEndPosition()))}_getNeedsRefresh(){let a=this._tokenStore.getNeedsRefresh();return a?a.map(a=>({range:w.Q.fromPositions(this._textModel.getPositionAt(a.startOffset),this._textModel.getPositionAt(a.endOffset)),startOffset:a.startOffset,endOffset:a.endOffset})):[]}_parseAndTokenizeViewPort(a){for(let b of a.map(a=>a.toInclusiveRange()).filter(cb.O9)){let a=this._textModel.getOffsetAt(b.getStartPosition()),c=this._textModel.getOffsetAt(b.getEndPosition()),d=this._textModel.getVersionId();if(this._rangeHasTokens(b,e.ViewportGuess))continue;let f=this._textModel.getValueInRange(b),g=this._forceParseAndTokenizeContent(b,a,c,f,!0);if(!g||this._rangeHasTokens(b,e.ViewportGuess)||0===g.length)continue;let h=g[g.length-1],i=h.startOffsetInclusive+h.length-g[0].startOffsetInclusive;this._updateTokensInStore(d,[{newTokens:g,oldRangeLength:i}],e.ViewportGuess),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:b.startLineNumber,toLineNumber:b.endLineNumber}]}})}}_guessTokensForLinesContent(a,b){if(0===b.length)return;let c=b.join(this._textModel.getEOL()),d=new w.Q(1,1,a+b.length,b[b.length-1].length+1),e=this._textModel.getOffsetAt({lineNumber:a,column:1}),f=this._forceParseAndTokenizeContent(d,e,e+c.length,c,!1);if(!f)return;let g=Array(b.length),h=0,i=0,j=0;for(let a=0;a<b.length;a++){let c=[],d=!1;for(let e=h;!d&&e<f.length;e++){let g=f[e],k=g.endOffset-j,l=i-j;if(k<=b[a].length)c.push({endOffset:k,metadata:g.metadata}),h++;else if(l<b[a].length){let e={endOffset:b[a].length,metadata:g.metadata};c.push(e),d=!0}else d=!0;i=g.endOffset}g[a]=this._endOffsetTokensToUint32Array(c),j+=b[a].length+this._textModel.getEOL().length}return g}_forceParseAndTokenizeContent(a,b,c,d,e){let f=b1(this._textModel,a.startLineNumber).likelyRelevantLines,g=f.join(this._textModel.getEOL()),h=this._tree.createParsedTreeSync(`${g}${d}`);if(!h)return;let i=new w.Q(1,1,a.endLineNumber-a.startLineNumber+1+f.length,a.endColumn),j=this.captureAtRange(i),k=this._tokenizeCapturesWithMetadata(j,g.length,c-b+g.length);if(h.delete(),k)if(e)return this._rangeTokensAsUpdates(b,k.endOffsetsAndMetadata,g.length);else return k.endOffsetsAndMetadata}_firstTreeUpdate(a){return this._setViewPortTokens(a)}_setViewPortTokens(a){let b=this._visibleLineRanges.get().map(a=>{let b=a.toInclusiveRange();if(!b)return;let c=this._textModel.getOffsetAt(b.getStartPosition()),d=this._textModel.getOffsetAt(b.getEndPosition());return{newRange:b,newRangeEndOffset:d,newRangeStartOffset:c}}).filter(cb.O9);return this._handleTreeUpdate(b,a)}_handleTreeUpdate(a,b){let c=[];for(let b=0;b<a.length;b++)if(a[b].newRange.endLineNumber-a[b].newRange.startLineNumber>1e3){let d=a[b].newRange.endLineNumber,e=a[b].newRange.startLineNumber,f=a[b].newRange.startColumn,g=e+1e3;do{let h=new v.y(e,f),i=g===a[b].newRange.endLineNumber?a[b].newRange.endColumn:this._textModel.getLineMaxColumn(g),j=new v.y(g,i),k=w.Q.fromPositions(h,j);c.push({range:k,startOffset:this._textModel.getOffsetAt(k.getStartPosition()),endOffset:this._textModel.getOffsetAt(k.getEndPosition())}),e=g+1,f=1,g<d&&g+1e3>d?g=d:g+=1e3}while(g<=d)}else if(0===b||c[b-1].endOffset<a[b].newRangeStartOffset)c.push({range:a[b].newRange,startOffset:a[b].newRangeStartOffset,endOffset:a[b].newRangeEndOffset});else if(c[b-1].endOffset<a[b].newRangeEndOffset){let d=this._textModel.getPositionAt(c[b-1].endOffset+1),e=new w.Q(d.lineNumber,d.column,a[b].newRange.endLineNumber,a[b].newRange.endColumn);c.push({range:e,startOffset:c[b-1].endOffset+1,endOffset:a[b].newRangeEndOffset})}let d=c.map(a=>this._getCaptures(a.range));return this._updateTreeForRanges(c,b,d).then(()=>{this._textModel.isDisposed()||this._tree.treeLastParsedVersion.get()!==this._textModel.getVersionId()||this._refreshNeedsRefresh(b)})}async _updateTreeForRanges(a,b,c){let d;for(let f=0;f<a.length&&(this._textModel.isDisposed()||b===this._textModel.getVersionId());f++){let g=c[f],h=a[f],i=this.getTokensInRange(h.range,h.startOffset,h.endOffset,g);d=i?{newTokens:i}:{newTokens:[]},this._updateTokensInStore(b,[d],e.Accurate),this._onDidChangeTokens.fire({changes:{semanticTokensApplied:!1,ranges:[{fromLineNumber:h.range.getStartPosition().lineNumber,toLineNumber:h.range.getEndPosition().lineNumber}]}}),await new Promise(a=>(0,bL._p)(a))}this._onDidCompleteBackgroundTokenization.fire()}_refreshNeedsRefresh(a){let b=this._getNeedsRefresh();if(0===b.length)return;let c=Array(b.length);for(let a=0;a<b.length;a++){let d=b[a];c[a]={newRange:d.range,newRangeStartOffset:d.startOffset,newRangeEndOffset:d.endOffset}}this._handleTreeUpdate(c,a)}_rangeTokensAsUpdates(a,b,c){let d=[],e=0;for(let f of b){let b;f.endOffset<=e||c&&f.endOffset<c||(b=c&&e<c?{startOffsetInclusive:a+c,length:f.endOffset-c,token:f.metadata}:{startOffsetInclusive:a+e,length:f.endOffset-e,token:f.metadata},d.push(b),e=f.endOffset)}return d}_updateTheme(){let a=this._textModel.getFullModelRange();this._markForRefresh(a),this._parseAndTokenizeViewPort(this._visibleLineRanges.get())}captureAtRange(a){let b=this._tree.tree.get();return b?this._highlightingQueries.captures(b.rootNode,{startPosition:{row:a.startLineNumber-1,column:a.startColumn-1},endPosition:{row:a.endLineNumber-1,column:a.endColumn-1}}).map(a=>({name:a.name,text:a.node.text,node:{startIndex:a.node.startIndex,endIndex:a.node.endIndex,startPosition:{lineNumber:a.node.startPosition.row+1,column:a.node.startPosition.column+1},endPosition:{lineNumber:a.node.endPosition.row+1,column:a.node.endPosition.column+1}},encodedLanguageId:this._encodedLanguageId})):[]}captureAtRangeWithInjections(a){let b=this.captureAtRange(a);for(let c=0;c<b.length;c++){let d=b[c],e=d.node.startPosition.lineNumber,f=d.node.endPosition.lineNumber,g=d.node.startPosition.column,h=d.node.endPosition.column,i=e>a.startLineNumber&&e<a.endLineNumber?e:a.startLineNumber,j=f>a.startLineNumber&&f<a.endLineNumber?f:a.endLineNumber,k=e===a.startLineNumber?g<a.startColumn?a.startColumn:g:e<a.startLineNumber?a.startColumn:g,l=f===a.endLineNumber?h>a.endColumn?a.endColumn:h:f>a.endLineNumber?a.endColumn:h,m=new w.Q(i,k,j,l),n=this._getInjectionCaptures(d,m);n&&n.length>0&&(b.splice(c+1,0,...n),c+=n.length)}return b}tokenizeEncoded(a){let b=this._tokenizeEncoded(a);if(!b)return;let c=this._rangeTokensAsUpdates(this._textModel.getOffsetAt({lineNumber:a,column:1}),b.result);b.versionId===this._textModel.getVersionId()&&this._updateTokensInStore(b.versionId,[{newTokens:c,oldRangeLength:this._textModel.getLineLength(a)}],e.Accurate)}_getCaptures(a){return this.captureAtRangeWithInjections(a)}_tokenize(a,b,c){let d=this._getCaptures(a),e=this._tokenizeCapturesWithMetadata(d,b,c);if(e)return{...e,versionId:this._tree.treeLastParsedVersion.get()}}_createTokensFromCaptures(a,b,c){let d=this._tree.tree.get(),e=bW.W.create(),f=c-b,g=this._languageIdCodec.encodeLanguageId(this._tree.languageId),h=cg[this._tree.languageId]||"source";if(0===a.length)return d?(e.stop(),{endOffsets:[{endOffset:f,scopes:[],encodedLanguageId:g}],captureTime:e.elapsed()}):void 0;let i=Array(a.length);i.fill({endOffset:0,scopes:[h],encodedLanguageId:g});let j=0,k=()=>{i.push({endOffset:0,scopes:[h],encodedLanguageId:g})},l=(a,b)=>a.name.includes("punctuation")&&a.text?Array.from(a.text.matchAll(ch)).map(a=>b+a.index):void 0,m=(a,b,c,d)=>{if(void 0!==d){let e=i[d].scopes,f=i[d].bracket;if((d>0?i[d-1].endOffset:0)!==b){let g;if(f&&f.length>0){g=[];let a=[];for(let d=0;d<f.length;d++){let e=f[d];e<b?g.push(e):e>c&&a.push(e)}0===g.length&&(g=void 0),f=0===a.length?void 0:a}i.splice(d,0,{endOffset:b,scopes:[...e],bracket:g,encodedLanguageId:a.encodedLanguageId}),d++,k(),j++}i.splice(d,0,{endOffset:c,scopes:[...e,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId}),i[j].bracket=f}else i[j]={endOffset:c,scopes:[h,a.name],bracket:l(a,b),encodedLanguageId:a.encodedLanguageId};j++};for(let d=0;d<a.length;d++){let e,f=a[d],g=f.node.endIndex<c?f.node.endIndex<b?b:f.node.endIndex:c,n=f.node.startIndex<b?b:f.node.startIndex,o=g-b,p=g-n;e=d>0?i[j-1].endOffset:n-b-1;let q=o-p;if(e>=0&&e<q&&(i[j]={endOffset:q,scopes:[h],encodedLanguageId:this._encodedLanguageId},j++,k()),!(p<0))if(e>=o){let a=j-1,b=i[a].endOffset,c=a>=2?i[a-1].endOffset:0;do{if(c+p===b){if(c===q){i[a].scopes.push(f.name);let b=i[a].bracket;i[a].bracket=b&&b.length>0?b:l(f,q)}}else if(c<=q){m(f,q,o,a);break}c=--a>=1?i[a-1].endOffset:0,b=a>=0?i[a].endOffset:0}while(b>q)}else m(f,q,o)}i[j-1].endOffset<f&&f-i[j-1].endOffset>0&&(k(),i[j]={endOffset:f,scopes:i[j].scopes,encodedLanguageId:this._encodedLanguageId},j++);for(let a=0;a<i.length;a++)if(0===i[a].endOffset&&0!==a){i.splice(a,i.length-a);break}return{endOffsets:i,captureTime:e.elapsed()}}_getInjectionCaptures(a,b){return[]}_tokenizeCapturesWithMetadata(a,b,c){let d=bW.W.create(),e=this._createTokensFromCaptures(a,b,c);if(!e)return;let f=e.endOffsets;for(let a=0;a<f.length;a++){let b=f[a];b.metadata=this._treeSitterThemeService.findMetadata(b.scopes,b.encodedLanguageId,!!b.bracket&&b.bracket.length>0,void 0)}let g=d.elapsed();return{endOffsetsAndMetadata:f,captureTime:e.captureTime,metadataTime:g}}_tokenizeEncoded(a){let b=this._textModel.getOffsetAt({lineNumber:a,column:1}),c=a+1<=this._textModel.getLineCount()?this._textModel.getOffsetAt({lineNumber:a+1,column:1}):this._textModel.getValueLength(),d=c-b,e=this._tokenize(new w.Q(a,1,a,d+1),b,c);if(e)return{result:e.endOffsetsAndMetadata,captureTime:e.captureTime,metadataTime:e.metadataTime,versionId:e.versionId}}_endOffsetTokensToUint32Array(a){let b=new Uint32Array(2*a.length);for(let c=0;c<a.length;c++)b[2*c]=a[c].endOffset,b[2*c+1]=a[c].metadata;return b}};cf=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([function(a,b){cc(a,b,4)}],cf);let cg={css:"source.css",typescript:"source.ts",ini:"source.ini",regex:"source.regex"},ch=/[\{\}\[\]\<\>\(\)]/g;var ci=c(50661);c(74864);class cj{static resolved(a){return new cj(Promise.resolve(a))}constructor(a){this._value=(0,bS.FY)(this,void 0),this.promiseResult=this._value,this.promise=a.then(a=>((0,bR.Rn)(b=>{this._value.set(new ck(a,void 0),b)}),a),a=>{throw(0,bR.Rn)(b=>{this._value.set(new ck(void 0,a),b)}),a})}}class ck{constructor(a,b){this.data=a,this.error=b}getDataOrThrow(){if(this.error)throw this.error;return this.data}}var cl=function(a,b){return function(c,d){b(c,d,a)}};let cm=class extends bA{constructor(a,b,c,d,e,f){super(b,c),this._languageIdObs=a,this._treeSitterLibraryService=e,this._instantiationService=f,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new l.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event;const g=new cj(this._treeSitterLibraryService.getParserClass()),h=(0,bv.un)(this,a=>g.promiseResult?.read(a)?.getDataOrThrow());this._tree=(0,bv.un)(this,a=>{let b=h.read(a);if(!b)return;let c=this._languageIdObs.read(a),d=this._treeSitterLibraryService.getLanguage(c,!1,a);if(!d)return;let e=new b;if(a.store.add((0,m.s)(()=>{e.delete()})),e.setLanguage(d),void 0!==this._treeSitterLibraryService.getInjectionQueries(c,a))return a.store.add(this._instantiationService.createInstance(bU,c,void 0,e,b,this._textModel))}),this._tokenizationImpl=(0,bv.un)(this,a=>{let b=this._tree.read(a);if(!b)return;let c=this._treeSitterLibraryService.getHighlightingQueries(b.languageId,a);if(c)return a.store.add(this._instantiationService.createInstance(cf,b,c,this._languageIdCodec,d))}),this._register((0,ce.fm)(a=>{let b=this._tokenizationImpl.read(a);b&&(a.store.add(b.onDidChangeTokens(a=>{this._onDidChangeTokens.fire(a.changes)})),a.store.add(b.onDidChangeBackgroundTokenization(a=>{this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire()})))}))}getLineTokens(a){let b=this._tokenizationImpl.get();if(!b){let b=this._textModel.getLineContent(a);return D.f7.createEmpty(b,this._languageIdCodec)}return b.getLineTokens(a)}todo_resetTokenization(a=!0){a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}handleDidChangeAttached(){}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else{let b=this._tokenizationImpl.get();b?.handleContentChanged(a)}let b=this._tree.get();b?.handleContentChange(a)}forceTokenization(a){let b=this._tokenizationImpl.get();b&&(b.hasAccurateTokensForLine(a)||b.tokenizeEncoded(a))}hasAccurateTokensForLine(a){let b=this._tokenizationImpl.get();return!!b&&b.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!0}getTokenTypeIfInsertingCharacter(a,b,c){return 0}tokenizeLinesAt(a,b){let c=this._tokenizationImpl.get();return c?c.tokenizeLinesAt(a,b):null}get hasTokens(){let a=this._tokenizationImpl.get();return!!a&&a.hasTokens()}};cm=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([cl(4,ci.t),cl(5,p._Y)],cm);class cn{constructor(a){this._pieces=[],this._isComplete=!1,this._languageIdCodec=a}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return 0===this._pieces.length}set(a,b,c){if(this._pieces=a||[],this._isComplete=b,c)for(let a of this._pieces)a.reportIfInvalid(c)}setPartial(a,b){let c=a;if(b.length>0){let d=b[0].getRange(),e=b[b.length-1].getRange();if(!d||!e)return a;c=a.plusRange(d).plusRange(e)}let d=null;for(let a=0,b=this._pieces.length;a<b;a++){let e=this._pieces[a];if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};break}if(e.removeTokens(c),e.isEmpty()){this._pieces.splice(a,1),a--,b--;continue}if(e.endLineNumber<c.startLineNumber)continue;if(e.startLineNumber>c.endLineNumber){d=d||{index:a};continue}let[f,g]=e.split(c);if(f.isEmpty()){d=d||{index:a};continue}g.isEmpty()||(this._pieces.splice(a,1,f,g),a++,b++,d=d||{index:a})}return d=d||{index:this._pieces.length},b.length>0&&(this._pieces=(0,h.nK)(this._pieces,d.index,b)),c}isComplete(){return this._isComplete}addSparseTokens(a,b){if(0===b.getTextLength())return b;let c=this._pieces;if(0===c.length)return b;let d=cn._findFirstPieceWithLine(c,a),e=c[d].getLineTokens(a);if(!e)return b;let f=b.getCount(),g=e.getCount(),h=0,i=[],j=0,k=0,l=(a,b)=>{a<=k||(k=a,i[j++]=a,i[j++]=b)};for(let a=0;a<g;a++){let c=Math.min(e.getStartCharacter(a),b.getTextLength()),d=Math.min(e.getEndCharacter(a),b.getTextLength()),g=e.getMetadata(a),i=((1&g?2048:0)|(2&g?4096:0)|(4&g?8192:0)|(8&g?16384:0)|(16&g?0xff8000:0)|(32&g?0xff000000:0))>>>0,j=~i>>>0;for(;h<f&&b.getEndOffset(h)<=c;)l(b.getEndOffset(h),b.getMetadata(h)),h++;for(h<f&&b.getStartOffset(h)<c&&l(c,b.getMetadata(h));h<f&&b.getEndOffset(h)<d;)l(b.getEndOffset(h),b.getMetadata(h)&j|g&i),h++;if(h<f)l(d,b.getMetadata(h)&j|g&i),b.getEndOffset(h)===d&&h++;else{let a=Math.min(Math.max(0,h-1),f-1);l(d,b.getMetadata(a)&j|g&i)}}for(;h<f;)l(b.getEndOffset(h),b.getMetadata(h)),h++;return new D.f7(new Uint32Array(i),b.getLineContent(),this._languageIdCodec)}static _findFirstPieceWithLine(a,b){let c=0,d=a.length-1;for(;c<d;){let e=c+Math.floor((d-c)/2);if(a[e].endLineNumber<b)c=e+1;else if(a[e].startLineNumber>b)d=e-1;else{for(;e>c&&a[e-1].startLineNumber<=b&&b<=a[e-1].endLineNumber;)e--;return e}}return c}acceptEdit(a,b,c,d,e){for(let f=0;f<this._pieces.length;f++){let g=this._pieces[f];g.acceptEdit(a,b,c,d,e),g.isEmpty()&&(this._pieces.splice(f,1),f--)}}}var co=c(36036);let cp=new Uint32Array(0).buffer;class cq{static deleteBeginning(a,b){return null===a||a===cp?a:cq.delete(a,0,b)}static deleteEnding(a,b){if(null===a||a===cp)return a;let c=cr(a),d=c[c.length-2];return cq.delete(a,b,d)}static delete(a,b,c){let d,e;if(null===a||a===cp||b===c)return a;let f=cr(a),g=f.length>>>1;if(0===b&&f[f.length-2]===c)return cp;let h=D.f7.findIndexInTokensArray(f,b),i=h>0?f[h-1<<1]:0;if(c<f[h<<1]){let d=c-b;for(let a=h;a<g;a++)f[a<<1]-=d;return a}i!==b?(f[h<<1]=b,d=h+1<<1,e=b):(d=h<<1,e=i);let j=c-b;for(let a=h+1;a<g;a++){let b=f[a<<1]-j;b>e&&(f[d++]=b,f[d++]=f[(a<<1)+1],e=b)}if(d===f.length)return a;let k=new Uint32Array(d);return k.set(f.subarray(0,d),0),k.buffer}static append(a,b){if(b===cp)return a;if(a===cp)return b;if(null===a)return a;if(null===b)return null;let c=cr(a),d=cr(b),e=d.length>>>1,f=new Uint32Array(c.length+d.length);f.set(c,0);let g=c.length,h=c[c.length-2];for(let a=0;a<e;a++)f[g++]=d[a<<1]+h,f[g++]=d[(a<<1)+1];return f.buffer}static insert(a,b,c){if(null===a||a===cp)return a;let d=cr(a),e=d.length>>>1,f=D.f7.findIndexInTokensArray(d,b);f>0&&d[f-1<<1]===b&&f--;for(let a=f;a<e;a++)d[a<<1]+=c;return a}}function cr(a){return a instanceof Uint32Array?a:new Uint32Array(a)}class cs{constructor(a){this._lineTokens=[],this._len=0,this._languageIdCodec=a}flush(){this._lineTokens=[],this._len=0}get hasTokens(){return this._lineTokens.length>0}getTokens(a,b,c){let d=null;if(b<this._len&&(d=this._lineTokens[b]),null!==d&&d!==cp)return new D.f7(cr(d),c,this._languageIdCodec);let e=new Uint32Array(2);return e[0]=c.length,e[1]=ct(this._languageIdCodec.encodeLanguageId(a)),new D.f7(e,c,this._languageIdCodec)}static _massageTokens(a,b,c){let d=c?cr(c):null;if(0===b){let b=!1;if(d&&d.length>1&&(b=aa.x.getLanguageId(d[1])!==a),!b)return cp}if(!d||0===d.length){let c=new Uint32Array(2);return c[0]=b,c[1]=ct(a),c.buffer}return(d[d.length-2]=b,0===d.byteOffset&&d.byteLength===d.buffer.byteLength)?d.buffer:d}_ensureLine(a){for(;a>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(a,b){0!==b&&(a+b>this._len&&(b=this._len-a),this._lineTokens.splice(a,b),this._len-=b)}_insertLines(a,b){if(0===b)return;let c=[];for(let a=0;a<b;a++)c[a]=null;this._lineTokens=(0,h.nK)(this._lineTokens,a,c),this._len+=b}setTokens(a,b,c,d,e){let f=cs._massageTokens(this._languageIdCodec.encodeLanguageId(a),c,d);this._ensureLine(b);let g=this._lineTokens[b];return this._lineTokens[b]=f,!!e&&!cs._equals(g,f)}static _equals(a,b){if(!a||!b)return!a&&!b;let c=cr(a),d=cr(b);if(c.length!==d.length)return!1;for(let a=0,b=c.length;a<b;a++)if(c[a]!==d[a])return!1;return!0}acceptEdit(a,b,c){this._acceptDeleteRange(a),this._acceptInsertText(new v.y(a.startLineNumber,a.startColumn),b,c)}_acceptDeleteRange(a){let b=a.startLineNumber-1;if(b>=this._len)return;if(a.startLineNumber===a.endLineNumber){if(a.startColumn===a.endColumn)return;this._lineTokens[b]=cq.delete(this._lineTokens[b],a.startColumn-1,a.endColumn-1);return}this._lineTokens[b]=cq.deleteEnding(this._lineTokens[b],a.startColumn-1);let c=a.endLineNumber-1,d=null;c<this._len&&(d=cq.deleteBeginning(this._lineTokens[c],a.endColumn-1)),this._lineTokens[b]=cq.append(this._lineTokens[b],d),this._deleteLines(a.startLineNumber,a.endLineNumber-a.startLineNumber)}_acceptInsertText(a,b,c){if(0===b&&0===c)return;let d=a.lineNumber-1;if(!(d>=this._len)){if(0===b){this._lineTokens[d]=cq.insert(this._lineTokens[d],a.column-1,c);return}this._lineTokens[d]=cq.deleteEnding(this._lineTokens[d],a.column-1),this._lineTokens[d]=cq.insert(this._lineTokens[d],a.column-1,c),this._insertLines(a.lineNumber,b)}}setMultilineTokens(a,b){if(0===a.length)return{changes:[]};let c=[];for(let d=0,e=a.length;d<e;d++){let e=a[d],f=0,g=0,h=!1;for(let a=e.startLineNumber;a<=e.endLineNumber;a++)h?(this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!1),g=a):this.setTokens(b.getLanguageId(),a-1,b.getLineLength(a),e.getLineTokens(a),!0)&&(h=!0,f=a,g=a);h&&c.push({fromLineNumber:f,toLineNumber:g})}return{changes:c}}}function ct(a){return(0x2008000|a|1024)>>>0}class cu extends bA{constructor(a,b,c,d){super(a,b),this.getLanguageId=c,this._tokenizer=null,this._backgroundTokenizationState=1,this._onDidChangeBackgroundTokenizationState=this._register(new l.vl),this.onDidChangeBackgroundTokenizationState=this._onDidChangeBackgroundTokenizationState.event,this._defaultBackgroundTokenizer=null,this._backgroundTokenizer=this._register(new m.HE),this._tokens=new cs(this._languageIdCodec),this._debugBackgroundTokenizer=this._register(new m.HE),this._attachedViewStates=this._register(new m.$w),this._register(co.dG.onDidChange(a=>{let b=this.getLanguageId();-1!==a.changedLanguages.indexOf(b)&&this.todo_resetTokenization()})),this.todo_resetTokenization(),this._register(d.onDidChangeVisibleRanges(({view:a,state:b})=>{if(b){let c=this._attachedViewStates.get(a);c||(c=new bz(()=>this.refreshRanges(c.lineRanges)),this._attachedViewStates.set(a,c)),c.handleStateChange(b)}else this._attachedViewStates.deleteAndDispose(a)}))}todo_resetTokenization(a=!0){this._tokens.flush(),this._debugBackgroundTokens?.flush(),this._debugBackgroundStates&&(this._debugBackgroundStates=new b2(this._textModel.getLineCount())),a&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]});let[b,c]=(()=>{let a;if(this._textModel.isTooLargeForTokenization())return[null,null];let b=co.dG.get(this.getLanguageId());if(!b)return[null,null];try{a=b.getInitialState()}catch(a){return(0,k.dz)(a),[null,null]}return[b,a]})();if(b&&c?this._tokenizer=new b0(this._textModel.getLineCount(),b,this._textModel,this._languageIdCodec):this._tokenizer=null,this._backgroundTokenizer.clear(),this._defaultBackgroundTokenizer=null,this._tokenizer){let a={setTokens:a=>{this.setTokens(a)},setFontInfo:a=>{this.setFontInfo(a)},backgroundTokenizationFinished:()=>{2===this._backgroundTokenizationState||(this._backgroundTokenizationState=2,this._onDidChangeBackgroundTokenizationState.fire())},setEndState:(a,b)=>{if(!this._tokenizer)return;let c=this._tokenizer.store.getFirstInvalidEndStateLineNumber();null!==c&&a>=c&&this._tokenizer?.store.setEndState(a,b)}};b&&b.createBackgroundTokenizer&&!b.backgroundTokenizerShouldOnlyVerifyTokens&&(this._backgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,a)),this._backgroundTokenizer.value||this._textModel.isTooLargeForTokenization()||(this._backgroundTokenizer.value=this._defaultBackgroundTokenizer=new b6(this._tokenizer,a),this._defaultBackgroundTokenizer.handleChanges()),b?.backgroundTokenizerShouldOnlyVerifyTokens&&b.createBackgroundTokenizer?(this._debugBackgroundTokens=new cs(this._languageIdCodec),this._debugBackgroundStates=new b2(this._textModel.getLineCount()),this._debugBackgroundTokenizer.clear(),this._debugBackgroundTokenizer.value=b.createBackgroundTokenizer(this._textModel,{setTokens:a=>{this._debugBackgroundTokens?.setMultilineTokens(a,this._textModel)},setFontInfo:a=>{this.setFontInfo(a)},backgroundTokenizationFinished(){},setEndState:(a,b)=>{this._debugBackgroundStates?.setEndState(a,b)}})):(this._debugBackgroundTokens=void 0,this._debugBackgroundStates=void 0,this._debugBackgroundTokenizer.value=void 0)}this.refreshAllVisibleLineTokens()}handleDidChangeAttached(){this._defaultBackgroundTokenizer?.handleChanges()}handleDidChangeContent(a){if(a.isFlush)this.todo_resetTokenization(!1);else if(!a.isEolChange){for(let b of a.changes){let[a,c]=(0,s.W)(b.text);this._tokens.acceptEdit(b.range,a,c),this._debugBackgroundTokens?.acceptEdit(b.range,a,c)}this._debugBackgroundStates?.acceptChanges(a.changes),this._tokenizer&&this._tokenizer.store.acceptChanges(a.changes),this._defaultBackgroundTokenizer?.handleChanges()}}setTokens(a){let{changes:b}=this._tokens.setMultilineTokens(a,this._textModel);return b.length>0&&this._onDidChangeTokens.fire({semanticTokensApplied:!1,ranges:b}),{changes:b}}setFontInfo(a){this._onDidChangeFontTokens.fire({changes:a})}refreshAllVisibleLineTokens(){let a=br.M.joinMany([...this._attachedViewStates].map(([a,b])=>b.lineRanges));this.refreshRanges(a)}refreshRanges(a){for(let b of a)this.refreshRange(b.startLineNumber,b.endLineNumberExclusive-1)}refreshRange(a,b){if(!this._tokenizer)return;a=Math.max(1,Math.min(this._textModel.getLineCount(),a)),b=Math.min(this._textModel.getLineCount(),b);let c=new b$,{heuristicTokens:d}=this._tokenizer.tokenizeHeuristically(c,a,b),e=this.setTokens(c.finalize());if(d)for(let a of e.changes)this._backgroundTokenizer.value?.requestTokens(a.fromLineNumber,a.toLineNumber+1);this._defaultBackgroundTokenizer?.checkFinished()}forceTokenization(a){let b=new b$;this._tokenizer?.updateTokensUntilLine(b,a),this.setTokens(b.finalize()),this._defaultBackgroundTokenizer?.checkFinished()}hasAccurateTokensForLine(a){return!this._tokenizer||this._tokenizer.hasAccurateTokensForLine(a)}isCheapToTokenize(a){return!this._tokenizer||this._tokenizer.isCheapToTokenize(a)}getLineTokens(a){let b=this._textModel.getLineContent(a),c=this._tokens.getTokens(this._textModel.getLanguageId(),a-1,b);if(this._debugBackgroundTokens&&this._debugBackgroundStates&&this._tokenizer&&this._debugBackgroundStates.getFirstInvalidEndStateLineNumberOrMax()>a&&this._tokenizer.store.getFirstInvalidEndStateLineNumberOrMax()>a){let d=this._debugBackgroundTokens.getTokens(this._textModel.getLanguageId(),a-1,b);!c.equals(d)&&this._debugBackgroundTokenizer.value?.reportMismatchingTokens&&this._debugBackgroundTokenizer.value.reportMismatchingTokens(a)}return c}getTokenTypeIfInsertingCharacter(a,b,c){if(!this._tokenizer)return 0;let d=this._textModel.validatePosition(new v.y(a,b));return this.forceTokenization(d.lineNumber),this._tokenizer.getTokenTypeIfInsertingCharacter(d,c)}tokenizeLinesAt(a,b){return this._tokenizer?(this.forceTokenization(a),this._tokenizer.tokenizeLinesAt(a,b)):null}get hasTokens(){return this._tokens.hasTokens}}var cv=function(a,b){return function(c,d){b(c,d,a)}};let cw=f=class extends bK._{constructor(a,b,c,d,e,f,g,h){super(),this._textModel=a,this._bracketPairsTextModelPart=b,this._languageId=c,this._attachedViews=d,this._languageService=e,this._languageConfigurationService=f,this._instantiationService=g,this._treeSitterLibraryService=h,this._onDidChangeFontTokens=this._register(new l.vl),this.onDidChangeFontTokens=this._onDidChangeFontTokens.event,this._languageIdObs=(0,bS.FY)(this,this._languageId),this._useTreeSitter=(0,bv.un)(this,a=>{let b=this._languageIdObs.read(a);return this._treeSitterLibraryService.supportsLanguage(b,a)}),this.tokens=(0,bv.un)(this,a=>{let b;return b=this._useTreeSitter.read(a)?a.store.add(this._instantiationService.createInstance(cm,this._languageIdObs,this._languageService.languageIdCodec,this._textModel,this._attachedViews.visibleLineRanges)):a.store.add(new cu(this._languageService.languageIdCodec,this._textModel,()=>this._languageId,this._attachedViews)),a.store.add(b.onDidChangeTokens(a=>{this._emitModelTokensChangedEvent(a)})),a.store.add(b.onDidChangeFontTokens(a=>{this._textModel._isDisposing()||this._onDidChangeFontTokens.fire(a)})),a.store.add(b.onDidChangeBackgroundTokenizationState(a=>{this._bracketPairsTextModelPart.handleDidChangeBackgroundTokenizationState()})),b});let i=!1;this.tokens.recomputeInitiallyAndOnChange(this._store,a=>{i&&a.todo_resetTokenization(),i=!0}),this._semanticTokens=new cn(this._languageService.languageIdCodec),this._onDidChangeLanguage=this._register(new l.vl),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new l.vl),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new l.vl),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidChangeFontTokens=this._register(new l.vl),this.onDidChangeFontTokens=this._onDidChangeFontTokens.event}handleLanguageConfigurationServiceChange(a){a.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}handleDidChangeContent(a){if(a.isFlush)this._semanticTokens.flush();else if(!a.isEolChange)for(let b of a.changes){let[a,c,d]=(0,s.W)(b.text);this._semanticTokens.acceptEdit(b.range,a,c,d,b.text.length>0?b.text.charCodeAt(0):0)}this.tokens.get().handleDidChangeContent(a)}handleDidChangeAttached(){this.tokens.get().handleDidChangeAttached()}getLineTokens(a){this.validateLineNumber(a);let b=this.tokens.get().getLineTokens(a);return this._semanticTokens.addSparseTokens(a,b)}_emitModelTokensChangedEvent(a){this._textModel._isDisposing()||(this._bracketPairsTextModelPart.handleDidChangeTokens(a),this._onDidChangeTokens.fire(a))}validateLineNumber(a){if(a<1||a>this._textModel.getLineCount())throw new k.D7("Illegal value for lineNumber")}get hasTokens(){return this.tokens.get().hasTokens}resetTokenization(){this.tokens.get().todo_resetTokenization()}get backgroundTokenizationState(){return this.tokens.get().backgroundTokenizationState}forceTokenization(a){this.validateLineNumber(a),this.tokens.get().forceTokenization(a)}hasAccurateTokensForLine(a){return this.validateLineNumber(a),this.tokens.get().hasAccurateTokensForLine(a)}isCheapToTokenize(a){return this.validateLineNumber(a),this.tokens.get().isCheapToTokenize(a)}tokenizeIfCheap(a){this.validateLineNumber(a),this.tokens.get().tokenizeIfCheap(a)}getTokenTypeIfInsertingCharacter(a,b,c){return this.tokens.get().getTokenTypeIfInsertingCharacter(a,b,c)}tokenizeLinesAt(a,b){return this.tokens.get().tokenizeLinesAt(a,b)}setSemanticTokens(a,b){this._semanticTokens.set(a,b,this._textModel),this._emitModelTokensChangedEvent({semanticTokensApplied:null!==a,ranges:[{fromLineNumber:1,toLineNumber:this._textModel.getLineCount()}]})}hasCompleteSemanticTokens(){return this._semanticTokens.isComplete()}hasSomeSemanticTokens(){return!this._semanticTokens.isEmpty()}setPartialSemanticTokens(a,b){if(this.hasCompleteSemanticTokens())return;let c=this._textModel.validateRange(this._semanticTokens.setPartial(a,b));this._emitModelTokensChangedEvent({semanticTokensApplied:!0,ranges:[{fromLineNumber:c.startLineNumber,toLineNumber:c.endLineNumber}]})}getWordAtPosition(a){this.assertNotDisposed();let b=this._textModel.validatePosition(a),c=this._textModel.getLineContent(b.lineNumber),d=this.getLineTokens(b.lineNumber),e=d.findTokenIndexAtOffset(b.column-1),[g,h]=f._findLanguageBoundaries(d,e),i=(0,bJ.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(e)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i;if(e>0&&g===b.column-1){let[g,h]=f._findLanguageBoundaries(d,e-1),i=(0,bJ.Th)(b.column,this.getLanguageConfiguration(d.getLanguageId(e-1)).getWordDefinition(),c.substring(g,h),g);if(i&&i.startColumn<=a.column&&a.column<=i.endColumn)return i}return null}getLanguageConfiguration(a){return this._languageConfigurationService.getLanguageConfiguration(a)}static _findLanguageBoundaries(a,b){let c=a.getLanguageId(b),d=0;for(let e=b;e>=0&&a.getLanguageId(e)===c;e--)d=a.getStartOffset(e);let e=a.getLineContent().length;for(let d=b,f=a.getCount();d<f&&a.getLanguageId(d)===c;d++)e=a.getEndOffset(d);return[d,e]}getWordUntilPosition(a){let b=this.getWordAtPosition(a);return b?{word:b.word.substr(0,a.column-b.startColumn),startColumn:b.startColumn,endColumn:a.column}:{word:"",startColumn:a.column,endColumn:a.column}}getLanguageId(){return this._languageId}getLanguageIdAtPosition(a,b){let c=this._textModel.validatePosition(new v.y(a,b)),d=this.getLineTokens(c.lineNumber);return d.getLanguageId(d.findTokenIndexAtOffset(c.column-1))}setLanguageId(a,b="api"){if(this._languageId===a)return;let c={oldLanguage:this._languageId,newLanguage:a,source:b};this._languageId=a,this._languageIdObs.set(a,void 0),this._bracketPairsTextModelPart.handleDidChangeLanguage(c),this._onDidChangeLanguage.fire(c),this._onDidChangeLanguageConfiguration.fire({})}};cw=f=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([cv(4,y.L),cv(5,z.JZ),cv(6,p._Y),cv(7,ci.t)],cw);var cx=function(a,b){return function(c,d){b(c,d,a)}};function cy(a,b){let c;if("string"==typeof a){let b;(b=new bp).acceptChunk(a),c=b.finish()}else c=(0,A.nk)(a)?function(a){let b,c=new bp;for(;"string"==typeof(b=a.read());)c.acceptChunk(b);return c.finish()}(a):a;return c.create(b)}let cz=0;class cA{constructor(a){this._source=a,this._eos=!1}read(){if(this._eos)return null;let a=[],b=0,c=0;for(;;){let d=this._source.read();if(null===d){if(this._eos=!0,0===b)return null;return a.join("")}if(d.length>0&&(a[b++]=d,c+=d.length),c>=65536)return a.join("")}}}let cB=()=>{throw Error("Invalid change accessor")},cC=class extends m.jG{static{g=this}static{this._MODEL_SYNC_LIMIT=0x3200000}static{this.LARGE_FILE_SIZE_THRESHOLD=0x1400000}static{this.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5}static{this.LARGE_FILE_HEAP_OPERATION_THRESHOLD=0x10000000}static{this.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:u.R.tabSize,indentSize:u.R.indentSize,insertSpaces:u.R.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:u.R.trimAutoWhitespace,largeFileOptimizations:u.R.largeFileOptimizations,bracketPairColorizationOptions:u.R.bracketPairColorizationOptions}}static resolveOptions(a,b){if(b.detectIndentation){let c=aD(a,b.tabSize,b.insertSpaces);return new A.X2({tabSize:c.tabSize,indentSize:"tabSize",insertSpaces:c.insertSpaces,trimAutoWhitespace:b.trimAutoWhitespace,defaultEOL:b.defaultEOL,bracketPairColorizationOptions:b.bracketPairColorizationOptions})}return new A.X2(b)}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}get onDidChangeOptions(){return this._onDidChangeOptions.event}get onDidChangeAttached(){return this._onDidChangeAttached.event}get onDidChangeLineHeight(){return this._onDidChangeLineHeight.event}get onDidChangeFont(){return this._onDidChangeFont.event}onDidChangeContent(a){return this._eventEmitter.event(b=>a(b.contentChangedEvent))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}constructor(a,b,c,d=null,e,f,h,i){super(),this._undoRedoService=e,this._languageService=f,this._languageConfigurationService=h,this.instantiationService=i,this._onWillDispose=this._register(new l.vl),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new cQ((a,b,c)=>this.handleBeforeFireDecorationsChangedEvent(a,b,c))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new l.vl),this._onDidChangeAttached=this._register(new l.vl),this._onDidChangeLineHeight=this._register(new l.vl),this._onDidChangeFont=this._register(new l.vl),this._eventEmitter=this._register(new cR),this._languageSelectionListener=this._register(new m.HE),this._deltaDecorationCallCnt=0,this._attachedViews=this._register(new bw),this._viewModels=new Set,cz++,this.id="$model"+cz,this.isForSimpleWidget=c.isForSimpleWidget,null==d?this._associatedResource=o.r.parse("inmemory://model/"+cz):this._associatedResource=d,this._attachedEditorCount=0;const{textBuffer:j,disposable:k}=cy(a,c.defaultEOL);this._buffer=j,this._bufferDisposable=k;const p=this._buffer.getLineCount(),q=this._buffer.getValueLengthInRange(new w.Q(1,1,p,this._buffer.getLineLength(p)+1),0);c.largeFileOptimizations?(this._isTooLargeForTokenization=q>g.LARGE_FILE_SIZE_THRESHOLD||p>g.LARGE_FILE_LINE_COUNT_THRESHOLD,this._isTooLargeForHeapOperation=q>g.LARGE_FILE_HEAP_OPERATION_THRESHOLD):(this._isTooLargeForTokenization=!1,this._isTooLargeForHeapOperation=!1),this._options=g.resolveOptions(this._buffer,c);const r="string"==typeof b?b:b.languageId;"string"!=typeof b&&(this._languageSelectionListener.value=b.onDidChange(()=>this._setLanguage(b.languageId))),this._bracketPairs=this._register(new as(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new aB.P(this,this._languageConfigurationService)),this._decorationProvider=this._register(new ay(this)),this._tokenizationTextModelPart=this.instantiationService.createInstance(cw,this,this._bracketPairs,r,this._attachedViews),this._fontTokenDecorationsProvider=this._register(new bI(this,this._tokenizationTextModelPart)),this._isTooLargeForSyncing=q>g._MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=(0,n.tk)(cz),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new cG,this._commandManager=new aA.z8(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()})),this._register(this._fontTokenDecorationsProvider.onDidChangeLineHeight(a=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._fireOnDidChangeLineHeight(a),this._onDidChangeDecorations.endDeferredEmit()})),this._register(this._fontTokenDecorationsProvider.onDidChangeFont(a=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._fireOnDidChangeFont(a),this._onDidChangeDecorations.endDeferredEmit()})),this._languageService.requestRichLanguageFeatures(r),this._register(this._languageConfigurationService.onDidChange(a=>{this._bracketPairs.handleLanguageConfigurationServiceChange(a),this._tokenizationTextModelPart.handleLanguageConfigurationServiceChange(a)}))}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;let a=new bn([],"","\n",!1,!1,!0,!0);a.dispose(),this._buffer=a,this._bufferDisposable=m.jG.None}_assertNotDisposed(){if(this._isDisposed)throw new k.D7("Model is disposed!")}registerViewModel(a){this._viewModels.add(a)}unregisterViewModel(a){this._viewModels.delete(a)}getTextBuffer(){return this._assertNotDisposed(),this._buffer}_emitContentChangedEvent(a,b,c=null){if(this.__isDisposing)return;this._tokenizationTextModelPart.handleDidChangeContent(b),this._bracketPairs.handleDidChangeContent(b),this._fontTokenDecorationsProvider.handleDidChangeContent(b);let d=new C.Ic(a,b);c&&(d.rawContentChangedEvent.resultingSelection=c),this._onDidChangeContentOrInjectedText(d),this._eventEmitter.fire(d)}setValue(a,b=B.dg.setValue()){if(this._assertNotDisposed(),null==a)throw(0,k.Qg)();let{textBuffer:c,disposable:d}=cy(a,this._options.defaultEOL);this._setValueFromTextBuffer(c,d,b)}_createContentChanged2(a,b,c,d,e,f,g,h,i,j){return{changes:[{range:a,rangeOffset:b,rangeLength:c,text:e}],eol:this._buffer.getEOL(),isEolChange:i,versionId:this.getVersionId(),isUndoing:f,isRedoing:g,isFlush:h,detailedReasons:[j],detailedReasonsChangeLengths:[1]}}_setValueFromTextBuffer(a,b,c){this._assertNotDisposed();let d=this.getFullModelRange(),e=this.getValueLengthInRange(d),f=this.getLineCount(),g=this.getLineMaxColumn(f);this._buffer=a,this._bufferDisposable.dispose(),this._bufferDisposable=b,this._increaseVersionId(),this._decorations=Object.create(null),this._decorationsTree=new cG,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new C.HP([new C.Wn],this._versionId,!1,!1),this._createContentChanged2(new w.Q(1,1,f,g),0,e,new v.y(f,g),this.getValue(),!1,!1,!0,!1,c))}setEOL(a){this._assertNotDisposed();let b=1===a?"\r\n":"\n";if(this._buffer.getEOL()===b)return;let c=this.getFullModelRange(),d=this.getValueLengthInRange(c),e=this.getLineCount(),f=this.getLineMaxColumn(e);this._onBeforeEOLChange(),this._buffer.setEOL(b),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new C.HP([new C.mS],this._versionId,!1,!1),this._createContentChanged2(new w.Q(1,1,e,f),0,d,new v.y(e,f),this.getValue(),!1,!1,!1,!0,B.dg.eolChange()))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){let a=this.getVersionId(),b=this._decorationsTree.collectNodesPostOrder();for(let c=0,d=b.length;c<d;c++){let d=b[c],e=d.range,f=d.cachedAbsoluteStart-d.start,g=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),h=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);d.cachedAbsoluteStart=g,d.cachedAbsoluteEnd=h,d.cachedVersionId=a,d.start=g-f,d.end=h-f,a$(d)}}onBeforeAttached(){return this._attachedEditorCount++,1===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.attachView()}onBeforeDetached(a){this._attachedEditorCount--,0===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0)),this._attachedViews.detachView(a)}isAttachedToEditor(){return this._attachedEditorCount>0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isTooLargeForHeapOperation(){return this._isTooLargeForHeapOperation}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let a=0,b=0,c=this._buffer.getLineCount();for(let d=1;d<=c;d++){let c=this._buffer.getLineLength(d);c>=1e4?b+=c:a+=c}return b>a}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(a){this._assertNotDisposed();let b=void 0!==a.tabSize?a.tabSize:this._options.tabSize,c=void 0!==a.indentSize?a.indentSize:this._options.originalIndentSize,d=void 0!==a.insertSpaces?a.insertSpaces:this._options.insertSpaces,e=void 0!==a.trimAutoWhitespace?a.trimAutoWhitespace:this._options.trimAutoWhitespace,f=void 0!==a.bracketColorizationOptions?a.bracketColorizationOptions:this._options.bracketPairColorizationOptions,g=new A.X2({tabSize:b,indentSize:c,insertSpaces:d,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:e,bracketPairColorizationOptions:f});if(this._options.equals(g))return;let h=this._options.createChangeEvent(g);this._options=g,this._bracketPairs.handleDidChangeOptions(h),this._decorationProvider.handleDidChangeOptions(h),this._onDidChangeOptions.fire(h)}detectIndentation(a,b){this._assertNotDisposed();let c=aD(this._buffer,b,a);this.updateOptions({insertSpaces:c.insertSpaces,tabSize:c.tabSize,indentSize:c.tabSize})}normalizeIndentation(a){return this._assertNotDisposed(),(0,t.P)(a,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(a=null){let b=this.findMatches(n._J.source,!1,!0,!1,null,!1,0x40000000);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(a,b.map(a=>({range:a.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(a){this._assertNotDisposed();let b=this._validatePosition(a.lineNumber,a.column,0);return this._buffer.getOffsetAt(b.lineNumber,b.column)}getPositionAt(a){this._assertNotDisposed();let b=Math.min(this._buffer.getLength(),Math.max(0,a));return this._buffer.getPositionAt(b)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(a){this._versionId=a}_overwriteAlternativeVersionId(a){this._alternativeVersionId=a}_overwriteInitialUndoRedoSnapshot(a){this._initialUndoRedoSnapshot=a}getValue(a,b=!1){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new k.D7("Operation would exceed heap memory limits");let c=this.getFullModelRange(),d=this.getValueInRange(c,a);return b?this._buffer.getBOM()+d:d}createSnapshot(a=!1){return new cA(this._buffer.createSnapshot(a))}getValueLength(a,b=!1){this._assertNotDisposed();let c=this.getFullModelRange(),d=this.getValueLengthInRange(c,a);return b?this._buffer.getBOM().length+d:d}getValueInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(a),b)}getValueLengthInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(a),b)}getCharacterCountInRange(a,b=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(a),b)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new k.D7("Illegal value for lineNumber");return this._buffer.getLineContent(a)}getLineLength(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new k.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)}getLinesContent(){if(this._assertNotDisposed(),this.isTooLargeForHeapOperation())throw new k.D7("Operation would exceed heap memory limits");return this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),+("\n"!==this._buffer.getEOL())}getLineMinColumn(a){return this._assertNotDisposed(),1}getLineMaxColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new k.D7("Illegal value for lineNumber");return this._buffer.getLineLength(a)+1}getLineFirstNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new k.D7("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(a)}getLineLastNonWhitespaceColumn(a){if(this._assertNotDisposed(),a<1||a>this.getLineCount())throw new k.D7("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(a)}_validateRangeRelaxedNoAllocations(a){let b=this._buffer.getLineCount(),c=a.startLineNumber,d=a.startColumn,e=Math.floor("number"!=typeof c||isNaN(c)?1:c),f=Math.floor("number"!=typeof d||isNaN(d)?1:d);if(e<1)e=1,f=1;else if(e>b)e=b,f=this.getLineMaxColumn(e);else if(f<=1)f=1;else{let a=this.getLineMaxColumn(e);f>=a&&(f=a)}let g=a.endLineNumber,h=a.endColumn,i=Math.floor("number"!=typeof g||isNaN(g)?1:g),j=Math.floor("number"!=typeof h||isNaN(h)?1:h);if(i<1)i=1,j=1;else if(i>b)i=b,j=this.getLineMaxColumn(i);else if(j<=1)j=1;else{let a=this.getLineMaxColumn(i);j>=a&&(j=a)}return c===e&&d===f&&g===i&&h===j&&a instanceof w.Q&&!(a instanceof x.L)?a:new w.Q(e,f,i,j)}_isValidPosition(a,b,c){if("number"!=typeof a||"number"!=typeof b||isNaN(a)||isNaN(b)||a<1||b<1||(0|a)!==a||(0|b)!==b||a>this._buffer.getLineCount())return!1;if(1===b)return!0;if(b>this.getLineMaxColumn(a))return!1;if(1===c){let c=this._buffer.getLineCharCode(a,b-2);if((0,n.pc)(c))return!1}return!0}_validatePosition(a,b,c){let d=Math.floor("number"!=typeof a||isNaN(a)?1:a),e=Math.floor("number"!=typeof b||isNaN(b)?1:b),f=this._buffer.getLineCount();if(d<1)return new v.y(1,1);if(d>f)return new v.y(f,this.getLineMaxColumn(f));if(e<=1)return new v.y(d,1);let g=this.getLineMaxColumn(d);if(e>=g)return new v.y(d,g);if(1===c){let a=this._buffer.getLineCharCode(d,e-2);if((0,n.pc)(a))return new v.y(d,e-1)}return new v.y(d,e)}validatePosition(a){return(this._assertNotDisposed(),a instanceof v.y&&this._isValidPosition(a.lineNumber,a.column,1))?a:this._validatePosition(a.lineNumber,a.column,1)}isValidRange(a){return this._isValidRange(a,1)}_isValidRange(a,b){let c=a.startLineNumber,d=a.startColumn,e=a.endLineNumber,f=a.endColumn;if(!this._isValidPosition(c,d,0)||!this._isValidPosition(e,f,0))return!1;if(1===b){let a=d>1?this._buffer.getLineCharCode(c,d-2):0,b=f>1&&f<=this._buffer.getLineLength(e)?this._buffer.getLineCharCode(e,f-2):0,g=(0,n.pc)(a),h=(0,n.pc)(b);return!g&&!h}return!0}validateRange(a){if(this._assertNotDisposed(),a instanceof w.Q&&!(a instanceof x.L)&&this._isValidRange(a,1))return a;let b=this._validatePosition(a.startLineNumber,a.startColumn,0),c=this._validatePosition(a.endLineNumber,a.endColumn,0),d=b.lineNumber,e=b.column,f=c.lineNumber,g=c.column;{let a=e>1?this._buffer.getLineCharCode(d,e-2):0,b=g>1&&g<=this._buffer.getLineLength(f)?this._buffer.getLineCharCode(f,g-2):0,c=(0,n.pc)(a),h=(0,n.pc)(b);return c||h?d===f&&e===g?new w.Q(d,e-1,f,g-1):c&&h?new w.Q(d,e-1,f,g+1):c?new w.Q(d,e-1,f,g):new w.Q(d,e,f,g+1):new w.Q(d,e,f,g)}}modifyPosition(a,b){this._assertNotDisposed();let c=this.getOffsetAt(a)+b;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,c)))}getFullModelRange(){this._assertNotDisposed();let a=this.getLineCount();return new w.Q(1,1,a,this.getLineMaxColumn(a))}findMatchesLineByLine(a,b,c,d){return this._buffer.findMatchesLineByLine(a,b,c,d)}findMatches(a,b,c,d,e,f,g=999){let h;this._assertNotDisposed();let i=null;null!==b&&"boolean"!=typeof b&&(Array.isArray(b)||(b=[b]),b.every(a=>w.Q.isIRange(a))&&(i=b.map(a=>this.validateRange(a)))),null===i&&(i=[this.getFullModelRange()]),i=i.sort((a,b)=>a.startLineNumber-b.startLineNumber||a.startColumn-b.startColumn);let j=[];if(j.push(i.reduce((a,b)=>w.Q.areIntersecting(a,b)?a.plusRange(b):(j.push(a),b))),!c&&0>a.indexOf("\n")){let b=new bd.lt(a,c,d,e).parseSearchRequest();if(!b)return[];h=a=>this.findMatchesLineByLine(a,b,f,g)}else h=b=>bd.hB.findMatches(this,new bd.lt(a,c,d,e),b,f,g);return j.map(h).reduce((a,b)=>a.concat(b),[])}findNextMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);if(!c&&0>a.indexOf("\n")){let b=new bd.lt(a,c,d,e).parseSearchRequest();if(!b)return null;let h=this.getLineCount(),i=new w.Q(g.lineNumber,g.column,h,this.getLineMaxColumn(h)),j=this.findMatchesLineByLine(i,b,f,1);return(bd.hB.findNextMatch(this,new bd.lt(a,c,d,e),g,f),j.length>0||(i=new w.Q(1,1,g.lineNumber,this.getLineMaxColumn(g.lineNumber)),(j=this.findMatchesLineByLine(i,b,f,1)).length>0))?j[0]:null}return bd.hB.findNextMatch(this,new bd.lt(a,c,d,e),g,f)}findPreviousMatch(a,b,c,d,e,f){this._assertNotDisposed();let g=this.validatePosition(b);return bd.hB.findPreviousMatch(this,new bd.lt(a,c,d,e),g,f)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(a){if(+("\n"!==this.getEOL())!==a)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(a)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(a){if(a instanceof A.Wo)return a;let b=this.validateRange(a.range),c=a.text;if(c){let a=c.length>0&&13===c.charCodeAt(c.length-1);"\r\n"===this.getEOL()&&a&&b.endColumn===this.getLineMaxColumn(b.endLineNumber)&&(c=c.substring(0,c.length-1))}return new A.Wo(a.identifier||null,b,c,a.forceMoveMarkers||!1,a.isAutoWhitespaceEdit||!1,a._isTracked||!1)}_validateEditOperations(a){let b=[];for(let c=0,d=a.length;c<d;c++)b[c]=this._validateEditOperation(a[c]);return b}edit(a,b){this.pushEditOperations(null,a.replacements.map(a=>({range:a.range,text:a.text})),null)}pushEditOperations(a,b,c,d,e){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(a,this._validateEditOperations(b),c,d,e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_pushEditOperations(a,b,c,d,e){if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){let c=b.map(a=>({range:this.validateRange(a.range),text:a.text})),d=!0;if(a)for(let b=0,e=a.length;b<e;b++){let e=a[b],f=!1;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,d=b.startLineNumber>e.endLineNumber,g=e.startLineNumber>b.endLineNumber;if(!d&&!g){f=!0;break}}if(!f){d=!1;break}}if(d)for(let a=0,d=this._trimAutoWhitespaceLines.length;a<d;a++){let d=this._trimAutoWhitespaceLines[a],e=this.getLineMaxColumn(d),f=!0;for(let a=0,b=c.length;a<b;a++){let b=c[a].range,g=c[a].text;if(!(d<b.startLineNumber||d>b.endLineNumber||d===b.startLineNumber&&b.startColumn===e&&b.isEmpty()&&g&&g.length>0&&"\n"===g.charAt(0))&&(!(d===b.startLineNumber&&1===b.startColumn&&b.isEmpty())||!g||!(g.length>0)||"\n"!==g.charAt(g.length-1))){f=!1;break}}if(f){let a=new w.Q(d,1,d,e);b.push(new A.Wo(null,a,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(a,b,c,d,e)}_applyUndo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.newPosition),c=this.getPositionAt(a.newEnd);return{range:new w.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.oldText}});this._applyUndoRedoEdits(e,b,!0,!1,c,d)}_applyRedo(a,b,c,d){let e=a.map(a=>{let b=this.getPositionAt(a.oldPosition),c=this.getPositionAt(a.oldEnd);return{range:new w.Q(b.lineNumber,b.column,c.lineNumber,c.column),text:a.newText}});this._applyUndoRedoEdits(e,b,!1,!0,c,d)}_applyUndoRedoEdits(a,b,c,d,e,f){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=c,this._isRedoing=d;let g=this._validateEditOperations(a);this._doApplyEdits(g,!1,B.dg.applyEdits(),f),this.setEOL(b),this._overwriteAlternativeVersionId(e)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(f),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(a,b,c){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();let d=this._validateEditOperations(a);return this._doApplyEdits(d,b??!1,c??B.dg.applyEdits())}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(a,b,c,d=null){let e=this._buffer.getLineCount(),f=this._buffer.applyEdits(a,this._options.trimAutoWhitespace,b),g=this._buffer.getLineCount(),h=f.changes;if(this._trimAutoWhitespaceLines=f.trimAutoWhitespaceLineNumbers,0!==h.length){for(let a=0,b=h.length;a<b;a++){let b=h[a];this._decorationsTree.acceptReplace(b.rangeOffset,b.rangeLength,b.text.length,b.forceMoveMarkers)}let a=[];this._increaseVersionId();let b=e;for(let c=0,d=h.length;c<d;c++){let d=h[c],[e]=(0,s.W)(d.text);this._onDidChangeDecorations.fire();let f=d.range.startLineNumber,i=d.range.endLineNumber,j=i-f,k=Math.min(j,e),l=e-j,m=g-b-l+f;for(let b=k;b>=0;b--){let c=f+b,d=m+b;a.push(new C.U0(c,d))}if(k<j){let c=f+k,d=g-b-(e-j)+c;a.push(new C.E$(c+1,i,d))}if(k<e){let c=f+k,d=e-k,h=g-b-d+c+1;a.push(new C.bg(c+1,h,d))}b+=l}this._emitContentChangedEvent(new C.HP(a,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:h,eol:this._buffer.getEOL(),isEolChange:!1,versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1,detailedReasons:[c],detailedReasonsChangeLengths:[h.length]},d)}return null===f.reverseEdits?void 0:f.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(a,b,c){if(a&&a.size>0){let b=Array.from(a).map(a=>new C.U0(a,a));this._onDidChangeContentOrInjectedText(new C.vn(b))}this._fireOnDidChangeLineHeight(b),this._fireOnDidChangeFont(c)}_fireOnDidChangeLineHeight(a){if(a&&a.size>0){let b=Array.from(a).map(a=>new C.Nw(a.ownerId,a.decorationId,a.lineNumber,a.lineHeight));this._onDidChangeLineHeight.fire(new C.zq(b))}}_fireOnDidChangeFont(a){if(a&&a.size>0){let b=Array.from(a).map(a=>new C.vD(a.ownerId,a.lineNumber));this._onDidChangeFont.fire(new C.dT(b))}}_onDidChangeContentOrInjectedText(a){for(let b of this._viewModels)try{b.onDidChangeContentOrInjectedText(a)}catch(a){(0,k.dz)(a)}for(let b of this._viewModels)try{b.emitContentChangeEvent(a)}catch(a){(0,k.dz)(a)}}changeDecorations(a,b=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(b,a)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(a,b){let c={addDecoration:(b,c)=>this._deltaDecorationsImpl(a,[],[{range:b,options:c}])[0],changeDecoration:(b,c)=>{this._changeDecorationImpl(a,b,c)},changeDecorationOptions:(b,c)=>{this._changeDecorationOptionsImpl(a,b,cP(c))},removeDecoration:b=>{this._deltaDecorationsImpl(a,[b],[])},deltaDecorations:(b,c)=>0===b.length&&0===c.length?[]:this._deltaDecorationsImpl(a,b,c)},d=null;try{d=b(c)}catch(a){(0,k.dz)(a)}return c.addDecoration=cB,c.changeDecoration=cB,c.changeDecorationOptions=cB,c.removeDecoration=cB,c.deltaDecorations=cB,d}deltaDecorations(a,b,c=0){if(this._assertNotDisposed(),a||(a=[]),0===a.length&&0===b.length)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),(0,k.dz)(Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(c,a,b)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(a){return this.getDecorationRange(a)}_setTrackedRange(a,b,c){let d=a?this._decorations[a]:null;if(!d)return b?this._deltaDecorationsImpl(0,[],[{range:b,options:cO[c]}],!0)[0]:null;if(!b)return this._decorationsTree.delete(d),delete this._decorations[d.id],null;let e=this._validateRangeRelaxedNoAllocations(b),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),d.setOptions(cO[c]),this._decorationsTree.insert(d),d.id}removeAllDecorationsWithOwnerId(a){if(this._isDisposed)return;let b=this._decorationsTree.collectNodesFromOwner(a);for(let a=0,c=b.length;a<c;a++){let c=b[a];this._decorationsTree.delete(c),delete this._decorations[c.id]}}getDecorationOptions(a){let b=this._decorations[a];return b?b.options:null}getDecorationRange(a){let b=this._decorations[a];return b?this._decorationsTree.getNodeRange(this,b):null}getLineDecorations(a,b=0,c=!1,d=!1){return a<1||a>this.getLineCount()?[]:this.getLinesDecorations(a,a,b,c,d)}getLinesDecorations(a,b,c=0,d=!1,e=!1,f=!1){let g=this.getLineCount(),i=Math.min(g,Math.max(1,a)),j=Math.min(g,Math.max(1,b)),k=this.getLineMaxColumn(j),l=new w.Q(i,1,j,k),m=this._getDecorationsInRange(l,c,d,e,f);return(0,h.E4)(m,this._decorationProvider.getDecorationsInRange(l,c,d,e)),(0,h.E4)(m,this._fontTokenDecorationsProvider.getDecorationsInRange(l,c,d,e)),m}getDecorationsInRange(a,b=0,c=!1,d=!1,e=!1,f=!1){let g=this.validateRange(a),i=this._getDecorationsInRange(g,b,c,d,f);return(0,h.E4)(i,this._decorationProvider.getDecorationsInRange(g,b,c,d,e)),(0,h.E4)(i,this._fontTokenDecorationsProvider.getDecorationsInRange(g,b,c,d,e)),i}getOverviewRulerDecorations(a=0,b=!1,c=!1){return this._decorationsTree.getAll(this,a,b,c,!0,!1)}getInjectedTextDecorations(a=0){return this._decorationsTree.getAllInjectedText(this,a)}getCustomLineHeightsDecorations(a=0){let b=this._decorationsTree.getAllCustomLineHeights(this,a);return(0,h.E4)(b,this._fontTokenDecorationsProvider.getAllDecorations(a)),b}getCustomLineHeightsDecorationsInRange(a,b=0){let c=this._decorationsTree.getCustomLineHeightsInInterval(this,this.getOffsetAt(a.getStartPosition()),this.getOffsetAt(a.getEndPosition()),b);return(0,h.E4)(c,this._fontTokenDecorationsProvider.getDecorationsInRange(a,b)),c}getLineInjectedText(a,b=0){let c=this._buffer.getOffsetAt(a,1),d=c+this._buffer.getLineLength(a),e=this._decorationsTree.getInjectedTextInInterval(this,c,d,b);return C.uK.fromDecorations(e).filter(b=>b.lineNumber===a)}getFontDecorationsInRange(a,b=0){let c=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),d=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getFontDecorationsInInterval(this,c,d,b)}getAllDecorations(a=0,b=!1,c=!1){let d=this._decorationsTree.getAll(this,a,b,c,!1,!1);return(d=d.concat(this._decorationProvider.getAllDecorations(a,b))).concat(this._fontTokenDecorationsProvider.getAllDecorations(a,b))}getAllMarginDecorations(a=0){return this._decorationsTree.getAll(this,a,!1,!1,!1,!0)}_getDecorationsInRange(a,b,c,d,e){let f=this._buffer.getOffsetAt(a.startLineNumber,a.startColumn),g=this._buffer.getOffsetAt(a.endLineNumber,a.endColumn);return this._decorationsTree.getAllInInterval(this,f,g,b,c,d,e)}getRangeAt(a,b){return this._buffer.getRangeAt(a,b-a)}_changeDecorationImpl(a,b,c){let d=this._decorations[b];if(!d)return;if(d.options.after){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(d.options.before){let a=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==d.options.lineHeight){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,c.startLineNumber,null)}if(d.options.affectsFont){let c=this.getDecorationRange(b);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,c.startLineNumber)}let e=this._validateRangeRelaxedNoAllocations(c),f=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),g=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);this._decorationsTree.delete(d),d.reset(this.getVersionId(),f,g,e),this._decorationsTree.insert(d),this._onDidChangeDecorations.checkAffectedAndFire(d.options),d.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber),d.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber),null!==d.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,e.startLineNumber,d.options.lineHeight),d.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,d.id,e.startLineNumber)}_changeDecorationOptionsImpl(a,b,c){var d;let e=this._decorations[b];if(!e)return;let f=!!e.options.overviewRuler&&!!e.options.overviewRuler.color,g=!!c.overviewRuler&&!!c.overviewRuler.color;if(this._onDidChangeDecorations.checkAffectedAndFire(e.options),this._onDidChangeDecorations.checkAffectedAndFire(c),e.options.after||c.after){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(e.options.before||c.before){let a=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==e.options.lineHeight||null!==c.lineHeight){let d=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,b,d.startLineNumber,c.lineHeight)}if(e.options.affectsFont||c.affectsFont){let c=this._decorationsTree.getNodeRange(this,e);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,b,c.startLineNumber)}let h=(!!(d=c).after||!!d.before)!==cF(e);f!==g||h?(this._decorationsTree.delete(e),e.setOptions(c),this._decorationsTree.insert(e)):e.setOptions(c)}_deltaDecorationsImpl(a,b,c,d=!1){let e=this.getVersionId(),f=b.length,g=0,h=c.length,i=0;this._onDidChangeDecorations.beginDeferredEmit();try{let j=Array(h);for(;g<f||i<h;){let k=null;if(g<f){let c;do c=b[g++],k=this._decorations[c];while(!k&&g<f);if(k){if(k.options.after){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.endLineNumber)}if(k.options.before){let a=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByInjectedText(a.startLineNumber)}if(null!==k.options.lineHeight){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,c,b.startLineNumber,null)}if(k.options.affectsFont){let b=this._decorationsTree.getNodeRange(this,k);this._onDidChangeDecorations.recordLineAffectedByFontChange(a,c,b.startLineNumber)}this._decorationsTree.delete(k),d||this._onDidChangeDecorations.checkAffectedAndFire(k.options)}}if(i<h){if(!k){let a=++this._lastDecorationId,b=`${this._instanceId};${a}`;k=new aQ(b,0,0),this._decorations[b]=k}let b=c[i],f=this._validateRangeRelaxedNoAllocations(b.range),g=cP(b.options),h=this._buffer.getOffsetAt(f.startLineNumber,f.startColumn),l=this._buffer.getOffsetAt(f.endLineNumber,f.endColumn);k.ownerId=a,k.reset(e,h,l,f),k.setOptions(g),k.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.endLineNumber),k.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(f.startLineNumber),null!==k.options.lineHeight&&this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(a,k.id,f.startLineNumber,k.options.lineHeight),k.options.affectsFont&&this._onDidChangeDecorations.recordLineAffectedByFontChange(a,k.id,f.startLineNumber),d||this._onDidChangeDecorations.checkAffectedAndFire(g),this._decorationsTree.insert(k),j[i]=k.id,i++}else k&&delete this._decorations[k.id]}return j}finally{this._onDidChangeDecorations.endDeferredEmit()}}getLanguageId(){return this.tokenization.getLanguageId()}setLanguage(a,b){"string"==typeof a?(this._languageSelectionListener.clear(),this._setLanguage(a,b)):(this._languageSelectionListener.value=a.onDidChange(()=>this._setLanguage(a.languageId,b)),this._setLanguage(a.languageId,b))}_setLanguage(a,b){this.tokenization.setLanguageId(a,b),this._languageService.requestRichLanguageFeatures(a)}getLanguageIdAtPosition(a,b){return this.tokenization.getLanguageIdAtPosition(a,b)}getWordAtPosition(a){return this._tokenizationTextModelPart.getWordAtPosition(a)}getWordUntilPosition(a){return this._tokenizationTextModelPart.getWordUntilPosition(a)}normalizePosition(a,b){return a}getLineIndentColumn(a){return function(a){let b=0;for(let c of a)if(" "===c||" "===c)b++;else break;return b}(this.getLineContent(a))+1}toString(){return`TextModel(${this.uri.toString()})`}};function cD(a,b,c){let d;if(c){let e=[];for(let a=0;a<c.length;a++){let d=c[a],f=b[a].tokens;f?f.forEach((c,f)=>{e.push({offset:d,text:c.substring(b[a].content),tokenMetadata:f.metadata})}):e.push({offset:d,text:b[a].content,tokenMetadata:D.f7.defaultTokenMetadata})}d=a.withInserted(e)}else d=a;return d}function cE(a){return!!a.options.overviewRuler&&!!a.options.overviewRuler.color}function cF(a){return!!a.options.after||!!a.options.before}cC=g=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([cx(4,r.$D),cx(5,y.L),cx(6,z.JZ),cx(7,p._Y)],cC);class cG{constructor(){this._decorationsTree0=new aS,this._decorationsTree1=new aS,this._injectedTextDecorationsTree=new aS}ensureAllNodesHaveRanges(a){this.getAll(a,0,!1,!1,!1,!1)}_ensureNodesHaveRanges(a,b){for(let c of b)null===c.range&&(c.range=a.getRangeAt(c.cachedAbsoluteStart,c.cachedAbsoluteEnd));return b}getAllInInterval(a,b,c,d,e,f,g){let h=a.getVersionId(),i=this._intervalSearch(b,c,d,e,f,h,g);return this._ensureNodesHaveRanges(a,i)}_intervalSearch(a,b,c,d,e,f,g){let h=this._decorationsTree0.intervalSearch(a,b,c,d,e,f,g),i=this._decorationsTree1.intervalSearch(a,b,c,d,e,f,g),j=this._injectedTextDecorationsTree.intervalSearch(a,b,c,d,e,f,g);return h.concat(i).concat(j)}getInjectedTextInInterval(a,b,c,d){let e=a.getVersionId(),f=this._injectedTextDecorationsTree.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getFontDecorationsInInterval(a,b,c,d){let e=a.getVersionId(),f=this._decorationsTree0.intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>a.options.affectsFont)}getAllInjectedText(a,b){let c=a.getVersionId(),d=this._injectedTextDecorationsTree.search(b,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>a.options.showIfCollapsed||!a.range.isEmpty())}getAllCustomLineHeights(a,b){let c=a.getVersionId(),d=this._search(b,!1,!1,!1,c,!1);return this._ensureNodesHaveRanges(a,d).filter(a=>"number"==typeof a.options.lineHeight)}getCustomLineHeightsInInterval(a,b,c,d){let e=a.getVersionId(),f=this._intervalSearch(b,c,d,!1,!1,e,!1);return this._ensureNodesHaveRanges(a,f).filter(a=>"number"==typeof a.options.lineHeight)}getAll(a,b,c,d,e,f){let g=a.getVersionId(),h=this._search(b,c,d,e,g,f);return this._ensureNodesHaveRanges(a,h)}_search(a,b,c,d,e,f){if(d)return this._decorationsTree1.search(a,b,c,e,f);{let d=this._decorationsTree0.search(a,b,c,e,f),g=this._decorationsTree1.search(a,b,c,e,f),h=this._injectedTextDecorationsTree.search(a,b,c,e,f);return d.concat(g).concat(h)}}collectNodesFromOwner(a){let b=this._decorationsTree0.collectNodesFromOwner(a),c=this._decorationsTree1.collectNodesFromOwner(a),d=this._injectedTextDecorationsTree.collectNodesFromOwner(a);return b.concat(c).concat(d)}collectNodesPostOrder(){let a=this._decorationsTree0.collectNodesPostOrder(),b=this._decorationsTree1.collectNodesPostOrder(),c=this._injectedTextDecorationsTree.collectNodesPostOrder();return a.concat(b).concat(c)}insert(a){cF(a)?this._injectedTextDecorationsTree.insert(a):cE(a)?this._decorationsTree1.insert(a):this._decorationsTree0.insert(a)}delete(a){cF(a)?this._injectedTextDecorationsTree.delete(a):cE(a)?this._decorationsTree1.delete(a):this._decorationsTree0.delete(a)}getNodeRange(a,b){let c=a.getVersionId();return b.cachedVersionId!==c&&this._resolveNode(b,c),null===b.range&&(b.range=a.getRangeAt(b.cachedAbsoluteStart,b.cachedAbsoluteEnd)),b.range}_resolveNode(a,b){cF(a)?this._injectedTextDecorationsTree.resolveNode(a,b):cE(a)?this._decorationsTree1.resolveNode(a,b):this._decorationsTree0.resolveNode(a,b)}acceptReplace(a,b,c,d){this._decorationsTree0.acceptReplace(a,b,c,d),this._decorationsTree1.acceptReplace(a,b,c,d),this._injectedTextDecorationsTree.acceptReplace(a,b,c,d)}}function cH(a){return a.replace(/[^a-z0-9\-_]/gi," ")}class cI{constructor(a){this.color=a.color||"",this.darkColor=a.darkColor||""}}class cJ extends cI{constructor(a){super(a),this._resolvedColor=null,this.position="number"==typeof a.position?a.position:A.A5.Center}getColor(a){return this._resolvedColor||((0,q.HD)(a.type)&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(a,b){if("string"==typeof a)return a;let c=a?b.getColor(a.id):null;return c?c.toString():""}}class cK{constructor(a){this.position=a?.position??A.ZS.Center,this.persistLane=a?.persistLane}}class cL extends cI{constructor(a){super(a),this.position=a.position,this.sectionHeaderStyle=a.sectionHeaderStyle??null,this.sectionHeaderText=a.sectionHeaderText??null}getColor(a){return this._resolvedColor||((0,q.HD)(a.type)&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,a):this._resolvedColor=this._resolveColor(this.color,a)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(a,b){return"string"==typeof a?j.Q1.fromHex(a):b.getColor(a.id)}}class cM{static from(a){return a instanceof cM?a:new cM(a)}constructor(a){this.content=a.content||"",this.tokens=a.tokens??null,this.inlineClassName=a.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=a.attachedData||null,this.cursorStops=a.cursorStops||null}}class cN{static register(a){return new cN(a)}static createDynamic(a){return new cN(a)}constructor(a){this.description=a.description,this.blockClassName=a.blockClassName?cH(a.blockClassName):null,this.blockDoesNotCollapse=a.blockDoesNotCollapse??null,this.blockIsAfterEnd=a.blockIsAfterEnd??null,this.blockPadding=a.blockPadding??null,this.stickiness=a.stickiness||0,this.zIndex=a.zIndex||0,this.className=a.className?cH(a.className):null,this.shouldFillLineOnLineBreak=a.shouldFillLineOnLineBreak??null,this.hoverMessage=a.hoverMessage||null,this.glyphMarginHoverMessage=a.glyphMarginHoverMessage||null,this.lineNumberHoverMessage=a.lineNumberHoverMessage||null,this.isWholeLine=a.isWholeLine||!1,this.lineHeight=a.lineHeight?Math.min(a.lineHeight,300):null,this.fontSize=a.fontSize||null,this.affectsFont=!!a.fontSize||!!a.fontFamily||!!a.fontWeight||!!a.fontStyle,this.showIfCollapsed=a.showIfCollapsed||!1,this.collapseOnReplaceEdit=a.collapseOnReplaceEdit||!1,this.overviewRuler=a.overviewRuler?new cJ(a.overviewRuler):null,this.minimap=a.minimap?new cL(a.minimap):null,this.glyphMargin=a.glyphMarginClassName?new cK(a.glyphMargin):null,this.glyphMarginClassName=a.glyphMarginClassName?cH(a.glyphMarginClassName):null,this.linesDecorationsClassName=a.linesDecorationsClassName?cH(a.linesDecorationsClassName):null,this.lineNumberClassName=a.lineNumberClassName?cH(a.lineNumberClassName):null,this.linesDecorationsTooltip=a.linesDecorationsTooltip?(0,n.jy)(a.linesDecorationsTooltip):null,this.firstLineDecorationClassName=a.firstLineDecorationClassName?cH(a.firstLineDecorationClassName):null,this.marginClassName=a.marginClassName?cH(a.marginClassName):null,this.inlineClassName=a.inlineClassName?cH(a.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=a.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=a.beforeContentClassName?cH(a.beforeContentClassName):null,this.afterContentClassName=a.afterContentClassName?cH(a.afterContentClassName):null,this.after=a.after?cM.from(a.after):null,this.before=a.before?cM.from(a.before):null,this.hideInCommentTokens=a.hideInCommentTokens??!1,this.hideInStringTokens=a.hideInStringTokens??!1,this.textDirection=a.textDirection??null}}cN.EMPTY=cN.register({description:"empty"});let cO=[cN.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),cN.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),cN.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),cN.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function cP(a){return a instanceof cN?a:cN.createDynamic(a)}class cQ extends m.jG{constructor(a){super(),this.handleBeforeFire=a,this._actual=this._register(new l.vl),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._affectedLineHeights=null,this._affectedFontLines=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--,0===this._deferredCnt&&(this._shouldFireDeferred&&this.doFire(),this._affectedInjectedTextLines?.clear(),this._affectedInjectedTextLines=null,this._affectedLineHeights?.clear(),this._affectedLineHeights=null,this._affectedFontLines?.clear(),this._affectedFontLines=null)}recordLineAffectedByInjectedText(a){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(a)}recordLineAffectedByLineHeightChange(a,b,c,d){this._affectedLineHeights||(this._affectedLineHeights=new i.iD([],bB.toKey)),this._affectedLineHeights.add(new bB(a,b,c,d))}recordLineAffectedByFontChange(a,b,c){this._affectedFontLines||(this._affectedFontLines=new i.iD([],bC.toKey)),this._affectedFontLines.add(new bC(a,b,c))}checkAffectedAndFire(a){this._affectsMinimap||=!!a.minimap?.position,this._affectsOverviewRuler||=!!a.overviewRuler?.color,this._affectsGlyphMargin||=!!a.glyphMarginClassName,this._affectsLineNumber||=!!a.lineNumberClassName,this.tryFire()}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._affectsGlyphMargin=!0,this.tryFire()}tryFire(){0===this._deferredCnt?this.doFire():this._shouldFireDeferred=!0}doFire(){this.handleBeforeFire(this._affectedInjectedTextLines,this._affectedLineHeights,this._affectedFontLines);let a={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(a)}}class cR extends m.jG{constructor(){super(),this._emitter=this._register(new l.vl),this.event=this._emitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(a=null){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){this._deferredEvent.rawContentChangedEvent.resultingSelection=a;let b=this._deferredEvent;this._deferredEvent=null,this._emitter.fire(b)}}fire(a){this._deferredCnt>0?this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(a):this._deferredEvent=a:this._emitter.fire(a)}}},64129:()=>{},64687:(a,b,c)=>{"use strict";c.d(b,{P:()=>f});var d=c(26529),e=c(18530);function f(a,b,c){let f=(0,d.HG)(a);return -1===f&&(f=a.length),function(a,b,c){let d=0;for(let c=0;c<a.length;c++)" "===a.charAt(c)?d=e.A.nextIndentTabStop(d,b):d++;let f="";if(!c){let a=Math.floor(d/b);d%=b;for(let b=0;b<a;b++)f+=" "}for(let a=0;a<d;a++)f+=" ";return f}(a.substring(0,f),b,c)+a.substring(f)}},64834:(a,b,c)=>{"use strict";c.d(b,{P:()=>j,w:()=>i});var d=c(87873),e=c(43765);c(78014);var f=c(66036);c(95091);var g=c(76631),h=c(61811);class i extends d.ZK{get debugName(){return this._debugNameData.getDebugName(this)??"(anonymous)"}constructor(a,b,c,d,e,f){super(f),this._debugNameData=a,this._computeFn=b,this._changeTracker=c,this._handleLastObserverRemoved=d,this._equalityComparator=e,this._state=0,this._value=void 0,this._updateCount=0,this._dependencies=new Set,this._dependenciesToBeRemoved=new Set,this._changeSummary=void 0,this._isUpdating=!1,this._isComputing=!1,this._didReportChange=!1,this._isInBeforeUpdate=!1,this._isReaderValid=!1,this._store=void 0,this._delayedStore=void 0,this._removedObserverToCallEndUpdateOn=null,this._changeSummary=this._changeTracker?.createChangeSummary(void 0)}onLastObserverRemoved(){for(let a of(this._state=0,this._value=void 0,(0,h.t)()?.handleDerivedCleared(this),this._dependencies))a.removeObserver(this);this._dependencies.clear(),void 0!==this._store&&(this._store.dispose(),this._store=void 0),void 0!==this._delayedStore&&(this._delayedStore.dispose(),this._delayedStore=void 0),this._handleLastObserverRemoved?.()}get(){if(this._isComputing,0===this._observers.size){let a;try{let b;this._isReaderValid=!0,this._changeTracker&&(b=this._changeTracker.createChangeSummary(void 0),this._changeTracker.beforeUpdate?.(this,b)),a=this._computeFn(this,b)}finally{this._isReaderValid=!1}return this.onLastObserverRemoved(),a}do{if(1===this._state){for(let a of this._dependencies)if(a.reportChanges(),2===this._state)break}1===this._state&&(this._state=3),3!==this._state&&this._recompute()}while(3!==this._state);return this._value}_recompute(){let a=!1;this._isComputing=!0,this._didReportChange=!1;let b=this._dependenciesToBeRemoved;this._dependenciesToBeRemoved=this._dependencies,this._dependencies=b;try{let b=this._changeSummary;this._isReaderValid=!0,this._changeTracker&&(this._isInBeforeUpdate=!0,this._changeTracker.beforeUpdate?.(this,b),this._isInBeforeUpdate=!1,this._changeSummary=this._changeTracker?.createChangeSummary(b));let c=0!==this._state,d=this._value;this._state=3;let e=this._delayedStore;void 0!==e&&(this._delayedStore=void 0);try{void 0!==this._store&&(this._store.dispose(),this._store=void 0),this._value=this._computeFn(this,b)}finally{for(let a of(this._isReaderValid=!1,this._dependenciesToBeRemoved))a.removeObserver(this);this._dependenciesToBeRemoved.clear(),void 0!==e&&e.dispose()}a=this._didReportChange||c&&!this._equalityComparator(d,this._value),(0,h.t)()?.handleObservableUpdated(this,{oldValue:d,newValue:this._value,change:void 0,didChange:a,hadValue:c})}catch(a){(0,f.y4)(a)}if(this._isComputing=!1,!this._didReportChange&&a)for(let a of this._observers)a.handleChange(this,void 0);else this._didReportChange=!1}toString(){return`LazyDerived<${this.debugName}>`}beginUpdate(a){if(this._isUpdating)throw new f.D7("Cyclic deriveds are not supported yet!");this._updateCount++,this._isUpdating=!0;try{let a=1===this._updateCount;if(3===this._state&&(this._state=1,!a))for(let a of this._observers)a.handlePossibleChange(this);if(a)for(let a of this._observers)a.beginUpdate(this)}finally{this._isUpdating=!1}}endUpdate(a){if(this._updateCount--,0===this._updateCount){for(let a of[...this._observers])a.endUpdate(this);if(this._removedObserverToCallEndUpdateOn){let a=[...this._removedObserverToCallEndUpdateOn];for(let b of(this._removedObserverToCallEndUpdateOn=null,a))b.endUpdate(this)}}(0,e.Ft)(()=>this._updateCount>=0)}handlePossibleChange(a){if(3===this._state&&this._dependencies.has(a)&&!this._dependenciesToBeRemoved.has(a))for(let a of(this._state=1,this._observers))a.handlePossibleChange(this)}handleChange(a,b){if(this._dependencies.has(a)&&!this._dependenciesToBeRemoved.has(a)||this._isInBeforeUpdate){(0,h.t)()?.handleDerivedDependencyChanged(this,a,b);let c=!1;try{c=!this._changeTracker||this._changeTracker.handleChange({changedObservable:a,change:b,didChange:b=>b===a},this._changeSummary)}catch(a){(0,f.y4)(a)}let d=3===this._state;if(c&&(1===this._state||d)&&(this._state=2,d))for(let a of this._observers)a.handlePossibleChange(this)}}_ensureReaderValid(){if(!this._isReaderValid)throw new f.D7("The reader object cannot be used outside its compute function!")}readObservable(a){this._ensureReaderValid(),a.addObserver(this);let b=a.get();return this._dependencies.add(a),this._dependenciesToBeRemoved.delete(a),b}get store(){return this._ensureReaderValid(),void 0===this._store&&(this._store=new g.Cm),this._store}addObserver(a){let b=!this._observers.has(a)&&this._updateCount>0;super.addObserver(a),b&&!this._removedObserverToCallEndUpdateOn?.delete(a)&&a.beginUpdate(this)}removeObserver(a){this._observers.has(a)&&this._updateCount>0&&(this._removedObserverToCallEndUpdateOn||(this._removedObserverToCallEndUpdateOn=new Set),this._removedObserverToCallEndUpdateOn.add(a)),super.removeObserver(a)}debugGetState(){return{state:this._state,stateStr:function(a){switch(a){case 0:return"initial";case 1:return"dependenciesMightHaveChanged";case 2:return"stale";case 3:return"upToDate";default:return"<unknown>"}}(this._state),updateCount:this._updateCount,isComputing:this._isComputing,dependencies:this._dependencies,value:this._value}}debugSetValue(a){this._value=a}debugRecompute(){this.beginUpdate(this);try{this._isComputing?this._state=2:this._recompute()}finally{this.endUpdate(this)}}setValue(a,b,c){this._value=a;let d=this._observers;for(let a of(b.updateObserver(this,this),d))a.handleChange(this,c)}}class j extends i{constructor(a,b,c,d,e,f,g){super(a,b,c,d,e,g),this.set=f}}},64901:(a,b,c)=>{"use strict";c.d(b,{d:()=>d});class d{constructor(a,b=[],c=!1){this.ctor=a,this.staticArguments=b,this.supportsDelayedInstantiation=c}}},65666:(a,b,c)=>{"use strict";c.d(b,{$f:()=>h,MU:()=>i,Yb:()=>k,_t:()=>j,vn:()=>g});var d=c(26529),e=c(97195),f=c(72333);function g(a,b,c,h=!0,i){if(a<4)return null;let j=i.getLanguageConfiguration(b.tokenization.getLanguageId()).indentRulesSupport;if(!j)return null;let k=new f.no(b,j,i);if(c<=1)return{indentation:"",action:null};for(let a=c-1;a>0&&""===b.getLineContent(a);a--)if(1===a)return{indentation:"",action:null};let l=function(a,b,c){let d=a.tokenization.getLanguageIdAtPosition(b,0);if(b>1){let e,f=-1;for(e=b-1;e>=1;e--){if(a.tokenization.getLanguageIdAtPosition(e,0)!==d)return f;let b=a.getLineContent(e);if(c.shouldIgnore(e)||/^\s+$/.test(b)||""===b){f=e;continue}return e}}return -1}(b,c,k);if(l<0)return null;if(l<1)return{indentation:"",action:null};if(k.shouldIncrease(l)||k.shouldIndentNextLine(l)){let a=b.getLineContent(l);return{indentation:(0,d.UU)(a),action:e.l.Indent,line:l}}if(k.shouldDecrease(l)){let a=b.getLineContent(l);return{indentation:(0,d.UU)(a),action:null,line:l}}{if(1===l)return{indentation:(0,d.UU)(b.getLineContent(l)),action:null,line:l};let a=l-1,c=j.getIndentMetadata(b.getLineContent(a));if(!(3&c)&&4&c){let c=0;for(let b=a-1;b>0;b--)if(!k.shouldIndentNextLine(b)){c=b;break}return{indentation:(0,d.UU)(b.getLineContent(c+1)),action:null,line:c+1}}if(h)return{indentation:(0,d.UU)(b.getLineContent(l)),action:null,line:l};for(let a=l;a>0;a--)if(k.shouldIncrease(a))return{indentation:(0,d.UU)(b.getLineContent(a)),action:e.l.Indent,line:a};else if(k.shouldIndentNextLine(a)){let c=0;for(let b=a-1;b>0;b--)if(!k.shouldIndentNextLine(a)){c=b;break}return{indentation:(0,d.UU)(b.getLineContent(c+1)),action:null,line:c+1}}else if(k.shouldDecrease(a))return{indentation:(0,d.UU)(b.getLineContent(a)),action:null,line:a};return{indentation:(0,d.UU)(b.getLineContent(1)),action:null,line:1}}}function h(a,b,c,h,i,j){if(a<4)return null;let k=j.getLanguageConfiguration(c);if(!k)return null;let l=j.getLanguageConfiguration(c).indentRulesSupport;if(!l)return null;let m=new f.no(b,l,j),n=g(a,b,h,void 0,j);if(n){let c=n.line;if(void 0!==c){let f=!0;for(let a=c;a<h-1;a++)if(!/^\s*$/.test(b.getLineContent(a))){f=!1;break}if(f){let f=k.onEnter(a,"",b.getLineContent(c),"");if(f){let a=(0,d.UU)(b.getLineContent(c));return f.removeText&&(a=a.substring(0,a.length-f.removeText)),f.indentAction===e.l.Indent||f.indentAction===e.l.IndentOutdent?a=i.shiftIndent(a):f.indentAction===e.l.Outdent&&(a=i.unshiftIndent(a)),m.shouldDecrease(h)&&(a=i.unshiftIndent(a)),f.appendText&&(a+=f.appendText),(0,d.UU)(a)}}}if(m.shouldDecrease(h))if(n.action===e.l.Indent)return n.indentation;else return i.unshiftIndent(n.indentation);return n.action===e.l.Indent?i.shiftIndent(n.indentation):n.indentation}return null}function i(a,b,c,h,i){var j,k,l;if(a<4)return null;let m=b.getLanguageIdAtPosition(c.startLineNumber,c.startColumn),n=i.getLanguageConfiguration(m).indentRulesSupport;if(!n)return null;b.tokenization.forceTokenization(c.startLineNumber);let o=new f.V(b,i).getProcessedTokenContextAroundRange(c),p=o.afterRangeProcessedTokens,q=o.beforeRangeProcessedTokens,r=(0,d.UU)(q.getLineContent()),s=(j=b,k=c.startLineNumber,l=q,{tokenization:{getLineTokens:a=>a===k?l:j.tokenization.getLineTokens(a),getLanguageId:()=>j.getLanguageId(),getLanguageIdAtPosition:(a,b)=>j.getLanguageIdAtPosition(a,b)},getLineContent:a=>a===k?l.getLineContent():j.getLineContent(a)}),t=(0,f.WR)(b,c.getStartPosition()),u=b.getLineContent(c.startLineNumber),v=(0,d.UU)(u),w=g(a,s,c.startLineNumber+1,void 0,i);if(!w){let a=t?v:r;return{beforeEnter:a,afterEnter:a}}let x=t?v:w.indentation;return w.action===e.l.Indent&&(x=h.shiftIndent(x)),n.shouldDecrease(p.getLineContent())&&(x=h.unshiftIndent(x)),{beforeEnter:t?v:r,afterEnter:x}}function j(a,b,c,h,i,j){let k=a.autoIndent;if(k<4||(0,f.WR)(b,c.getStartPosition()))return null;let l=b.getLanguageIdAtPosition(c.startLineNumber,c.startColumn),m=j.getLanguageConfiguration(l).indentRulesSupport;if(!m)return null;let n=new f.V(b,j).getProcessedTokenContextAroundRange(c),o=n.beforeRangeProcessedTokens.getLineContent(),p=n.afterRangeProcessedTokens.getLineContent(),q=o+p,r=o+h+p;if(!m.shouldDecrease(q)&&m.shouldDecrease(r)){let a=g(k,b,c.startLineNumber,!1,j);if(!a)return null;let d=a.indentation;return a.action!==e.l.Indent&&(d=i.unshiftIndent(d)),d}let s=c.startLineNumber-1;if(s>0){let e=b.getLineContent(s);if(m.shouldIndentNextLine(e)&&m.shouldIncrease(r)){let e=g(k,b,c.startLineNumber,!1,j),f=e?.indentation;if(void 0!==f){let e=b.getLineContent(c.startLineNumber),g=(0,d.UU)(e),j=i.shiftIndent(f),k=/^\s*$/.test(q),l=a.autoClosingPairs.autoClosingPairsOpenByEnd.get(h),m=l&&l.length>0;if(j===g&&m&&k)return f}}}return null}function k(a,b,c){let d=c.getLanguageConfiguration(a.getLanguageId()).indentRulesSupport;return!d||b<1||b>a.getLineCount()?null:d.getIndentMetadata(a.getLineContent(b))}},66036:(a,b,c)=>{"use strict";c.d(b,{AL:()=>k,D7:()=>q,EM:()=>o,MB:()=>j,M_:()=>h,Qg:()=>m,aD:()=>l,cU:()=>function a(b){if(b instanceof Error){let{name:c,message:d,cause:e}=b;return{$isError:!0,name:c,message:d,stack:b.stacktrace||b.stack,noTelemetry:p.isErrorNoTelemetry(b),cause:e?a(e):void 0,code:b.code}}return b},dz:()=>g,iH:()=>n,y4:()=>f});class d{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(a){setTimeout(()=>{if(a.stack){if(p.isErrorNoTelemetry(a))throw new p(a.message+"\n\n"+a.stack);throw Error(a.message+"\n\n"+a.stack)}throw a},0)}}emit(a){this.listeners.forEach(b=>{b(a)})}onUnexpectedError(a){this.unexpectedErrorHandler(a),this.emit(a)}onUnexpectedExternalError(a){this.unexpectedErrorHandler(a)}}let e=new d;function f(a){e.onUnexpectedError(a)}function g(a){j(a)||e.onUnexpectedError(a)}function h(a){j(a)||e.onUnexpectedExternalError(a)}let i="Canceled";function j(a){return a instanceof k||a instanceof Error&&a.name===i&&a.message===i}class k extends Error{constructor(){super(i),this.name=this.message}}function l(){let a=Error(i);return a.name=a.message,a}function m(a){return a?Error(`Illegal argument: ${a}`):Error("Illegal argument")}function n(a){return a?Error(`Illegal state: ${a}`):Error("Illegal state")}class o extends Error{constructor(a){super("NotSupported"),a&&(this.message=a)}}class p extends Error{constructor(a){super(a),this.name="CodeExpectedError"}static fromError(a){if(a instanceof p)return a;let b=new p;return b.message=a.message,b.stack=a.stack,b}static isErrorNoTelemetry(a){return"CodeExpectedError"===a.name}}class q extends Error{constructor(a){super(a||"An unexpected bug occurred."),Object.setPrototypeOf(this,q.prototype)}}},66560:(a,b,c)=>{"use strict";c.d(b,{HJ:()=>k,LN:()=>h,YH:()=>j,ih:()=>l,rc:()=>g,wv:()=>i});var d=c(95091),e=c(76631),f=c(72816);class g extends e.jG{get onDidChange(){return this._onDidChange.event}constructor(a,b="",c="",e=!0,f){super(),this._onDidChange=this._register(new d.vl),this._enabled=!0,this._id=a,this._label=b,this._cssClass=c,this._enabled=e,this._actionCallback=f}get id(){return this._id}get label(){return this._label}set label(a){this._setLabel(a)}_setLabel(a){this._label!==a&&(this._label=a,this._onDidChange.fire({label:a}))}get tooltip(){return this._tooltip||""}set tooltip(a){this._setTooltip(a)}_setTooltip(a){this._tooltip!==a&&(this._tooltip=a,this._onDidChange.fire({tooltip:a}))}get class(){return this._cssClass}set class(a){this._setClass(a)}_setClass(a){this._cssClass!==a&&(this._cssClass=a,this._onDidChange.fire({class:a}))}get enabled(){return this._enabled}set enabled(a){this._setEnabled(a)}_setEnabled(a){this._enabled!==a&&(this._enabled=a,this._onDidChange.fire({enabled:a}))}get checked(){return this._checked}set checked(a){this._setChecked(a)}_setChecked(a){this._checked!==a&&(this._checked=a,this._onDidChange.fire({checked:a}))}async run(a,b){this._actionCallback&&await this._actionCallback(a)}}class h extends e.jG{constructor(){super(...arguments),this._onWillRun=this._register(new d.vl),this._onDidRun=this._register(new d.vl)}get onWillRun(){return this._onWillRun.event}get onDidRun(){return this._onDidRun.event}async run(a,b){let c;if(a.enabled){this._onWillRun.fire({action:a});try{await this.runAction(a,b)}catch(a){c=a}this._onDidRun.fire({action:a,error:c})}}async runAction(a,b){await a.run(b)}}class i{constructor(){this.id=i.ID,this.label="",this.tooltip="",this.class="separator",this.enabled=!1,this.checked=void 0}static join(...a){let b=[];for(let c of a)c.length&&(b=b.length?[...b,new i,...c]:c);return b}static clean(a){for(;a.length>0&&a[0].id===i.ID;)a.shift();for(;a.length>0&&a[a.length-1].id===i.ID;)a.pop();for(let b=a.length-2;b>=0;b--)a[b].id===i.ID&&a[b+1].id===i.ID&&a.splice(b+1,1);return a}static{this.ID="vs.actions.separator"}async run(){}}class j{get actions(){return this._actions}constructor(a,b,c,d){this.tooltip="",this.enabled=!0,this.checked=void 0,this.id=a,this.label=b,this.class=d,this._actions=c}async run(){}}class k extends g{static{this.ID="vs.actions.empty"}constructor(){super(k.ID,(0,f.kg)(32,"(empty)"),void 0,!1)}}function l(a){return{id:a.id,label:a.label,tooltip:a.tooltip??a.label,class:a.class,enabled:a.enabled??!0,checked:a.checked,run:async(...b)=>a.run(...b)}}},67298:(a,b,c)=>{"use strict";var d;function e(a,b){let c=[],d=[];for(let d of a)b.has(d)||c.push(d);for(let c of b)a.has(c)||d.push(c);return{removed:c,added:d}}function f(a,b){let c=new Set;for(let d of b)a.has(d)&&c.add(d);return c}c.d(b,{E$:()=>f,Zv:()=>e,iD:()=>g});class g{static{d=Symbol.toStringTag}constructor(a,b){for(const c of(this.toKey=b,this._map=new Map,this[d]="SetWithKey",a))this.add(c)}get size(){return this._map.size}add(a){let b=this.toKey(a);return this._map.set(b,a),this}delete(a){return this._map.delete(this.toKey(a))}has(a){return this._map.has(this.toKey(a))}*entries(){for(let a of this._map.values())yield[a,a]}keys(){return this.values()}*values(){for(let a of this._map.values())yield a}clear(){this._map.clear()}forEach(a,b){this._map.forEach(c=>a.call(b,c,c,this))}[Symbol.iterator](){return this.values()}}},67330:(a,b,c)=>{"use strict";let d,e,f,g,h;c.d(b,{h5:()=>l,vr:()=>j,xE:()=>k});var i=c(75082);function j(a){(d=document.createElement("div")).className="monaco-aria-container";let b=()=>{let a=document.createElement("div");return a.className="monaco-alert",a.setAttribute("role","alert"),a.setAttribute("aria-atomic","true"),d.appendChild(a),a};e=b(),f=b();let c=()=>{let a=document.createElement("div");return a.className="monaco-status",a.setAttribute("aria-live","polite"),a.setAttribute("aria-atomic","true"),d.appendChild(a),a};g=c(),h=c(),a.appendChild(d)}function k(a){d&&(e.textContent!==a?((0,i.w_)(f),m(e,a)):((0,i.w_)(e),m(f,a)))}function l(a){d&&(g.textContent!==a?((0,i.w_)(h),m(g,a)):((0,i.w_)(g),m(h,a)))}function m(a,b){(0,i.w_)(a),b.length>2e4&&(b=b.substr(0,2e4)),a.textContent=b,a.style.visibility="hidden",a.style.visibility="visible"}c(59849)},67421:()=>{},67786:(a,b,c)=>{"use strict";c.d(b,{Q:()=>d});var d,e=d||(d={});function f(a,b){if(a.start>=b.end||b.start>=a.end)return{start:0,end:0};let c=Math.max(a.start,b.start),d=Math.min(a.end,b.end);return d-c<=0?{start:0,end:0}:{start:c,end:d}}function g(a){return a.end-a.start<=0}e.intersect=f,e.isEmpty=g,e.intersects=function(a,b){return!g(f(a,b))},e.relativeComplement=function(a,b){let c=[],d={start:a.start,end:Math.min(b.start,a.end)},e={start:Math.max(b.end,a.start),end:a.end};return g(d)||c.push(d),g(e)||c.push(e),c}},67992:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(1401),e=c(6812),f=c(61822);class g{static{this.zero=new g(0,0)}static betweenPositions(a,b){return a.lineNumber===b.lineNumber?new g(0,b.column-a.column):new g(b.lineNumber-a.lineNumber,b.column-1)}static fromPosition(a){return new g(a.lineNumber-1,a.column-1)}static ofRange(a){return g.betweenPositions(a.getStartPosition(),a.getEndPosition())}static ofText(a){let b=0,c=0;for(let d of a)"\n"===d?(b++,c=0):c++;return new g(b,c)}constructor(a,b){this.lineCount=a,this.columnCount=b}isGreaterThanOrEqualTo(a){return this.lineCount!==a.lineCount?this.lineCount>a.lineCount:this.columnCount>=a.columnCount}add(a){return 0===a.lineCount?new g(this.lineCount,this.columnCount+a.columnCount):new g(this.lineCount+a.lineCount,a.columnCount)}createRange(a){return 0===this.lineCount?new f.Q(a.lineNumber,a.column,a.lineNumber,a.column+this.columnCount):new f.Q(a.lineNumber,a.column,a.lineNumber+this.lineCount,this.columnCount+1)}toRange(){return new f.Q(1,1,this.lineCount+1,this.columnCount+1)}toLineRange(){return d.M.ofLength(1,this.lineCount+1)}addToPosition(a){return 0===this.lineCount?new e.y(a.lineNumber,a.column+this.columnCount):new e.y(a.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}}},68862:(a,b,c)=>{"use strict";c.d(b,{VR:()=>e,cn:()=>g,ct:()=>h,mX:()=>f});var d=c(72816);c(30996),c(7052),c(54957);let e=(0,c(58254).u1)("contextService");class f{constructor(a,b){this.raw=b,this.uri=a.uri,this.index=a.index,this.name=a.name}toJSON(){return{uri:this.uri,name:this.name,index:this.index}}}(0,d.kg)(2119,"Code Workspace");let g="4064f6ec-cb38-4ad0-af64-ee6467e63c82";function h(a){return a.id===g}},69907:(a,b,c)=>{"use strict";c.d(b,{T:()=>o});var d=c(75082),e=c(61055),f=c(95091),g=c(76631),h=c(28952);class i{constructor(a,b){this.chr=a,this.type=b,this.width=0}fulfill(a){this.width=a}}class j{constructor(a,b){this._bareFontInfo=a,this._requests=b,this._container=null,this._testElements=null}read(a){this._createDomElements(),a.document.body.appendChild(this._container),this._readFromDomElements(),this._container?.remove(),this._container=null,this._testElements=null}_createDomElements(){let a=document.createElement("div");a.style.position="absolute",a.style.top="-50000px",a.style.width="50000px";let b=document.createElement("div");(0,h.M)(b,this._bareFontInfo),a.appendChild(b);let c=document.createElement("div");(0,h.M)(c,this._bareFontInfo),c.style.fontWeight="bold",a.appendChild(c);let d=document.createElement("div");(0,h.M)(d,this._bareFontInfo),d.style.fontStyle="italic",a.appendChild(d);let e=[];for(let a of this._requests){let f;0===a.type&&(f=b),2===a.type&&(f=c),1===a.type&&(f=d),f.appendChild(document.createElement("br"));let g=document.createElement("span");j._render(g,a),f.appendChild(g),e.push(g)}this._container=a,this._testElements=e}static _render(a,b){if(" "===b.chr){let b="\xa0";for(let a=0;a<8;a++)b+=b;a.innerText=b}else{let c=b.chr;for(let a=0;a<8;a++)c+=c;a.textContent=c}}_readFromDomElements(){for(let a=0,b=this._requests.length;a<b;a++){let b=this._requests[a],c=this._testElements[a];b.fulfill(c.offsetWidth/256)}}}var k=c(21495),l=c(55385);class m extends g.jG{constructor(){super(...arguments),this._cache=new Map,this._evictUntrustedReadingsTimeout=-1,this._onDidChange=this._register(new f.vl),this.onDidChange=this._onDidChange.event}dispose(){-1!==this._evictUntrustedReadingsTimeout&&(clearTimeout(this._evictUntrustedReadingsTimeout),this._evictUntrustedReadingsTimeout=-1),super.dispose()}clearAllFontInfos(){this._cache.clear(),this._onDidChange.fire()}_ensureCache(a){let b=(0,d.Q2)(a),c=this._cache.get(b);return c||(c=new n,this._cache.set(b,c)),c}_writeToCache(a,b,c){this._ensureCache(a).put(b,c),c.isTrusted||-1!==this._evictUntrustedReadingsTimeout||(this._evictUntrustedReadingsTimeout=a.setTimeout(()=>{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings(a)},5e3))}_evictUntrustedReadings(a){let b=this._ensureCache(a),c=b.getValues(),d=!1;for(let a of c)a.isTrusted||(d=!0,b.remove(a));d&&this._onDidChange.fire()}readFontInfo(a,b){let c=this._ensureCache(a);if(!c.has(b)){let c=this._actualReadFontInfo(a,b);(c.typicalHalfwidthCharacterWidth<=2||c.typicalFullwidthCharacterWidth<=2||c.spaceWidth<=2||c.maxDigitWidth<=2)&&(c=new l.YJ({pixelRatio:e.c.getInstance(a).value,fontFamily:c.fontFamily,fontWeight:c.fontWeight,fontSize:c.fontSize,fontFeatureSettings:c.fontFeatureSettings,fontVariationSettings:c.fontVariationSettings,lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,isMonospace:c.isMonospace,typicalHalfwidthCharacterWidth:Math.max(c.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(c.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:c.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(c.spaceWidth,5),middotWidth:Math.max(c.middotWidth,5),wsmiddotWidth:Math.max(c.wsmiddotWidth,5),maxDigitWidth:Math.max(c.maxDigitWidth,5)},!1)),this._writeToCache(a,b,c)}return c.get(b)}_createRequest(a,b,c,d){let e=new i(a,b);return c.push(e),d?.push(e),e}_actualReadFontInfo(a,b){let c=[],d=[],f=this._createRequest("n",0,c,d),g=this._createRequest("m",0,c,null),h=this._createRequest(" ",0,c,d),i=this._createRequest("0",0,c,d),m=this._createRequest("1",0,c,d),n=this._createRequest("2",0,c,d),o=this._createRequest("3",0,c,d),p=this._createRequest("4",0,c,d),q=this._createRequest("5",0,c,d),r=this._createRequest("6",0,c,d),s=this._createRequest("7",0,c,d),t=this._createRequest("8",0,c,d),u=this._createRequest("9",0,c,d),v=this._createRequest("→",0,c,d),w=this._createRequest("→",0,c,null),x=this._createRequest("\xb7",0,c,d),y=this._createRequest(String.fromCharCode(11825),0,c,null),z="|/-_ilm%";for(let a=0,b=z.length;a<b;a++)this._createRequest(z.charAt(a),0,c,d),this._createRequest(z.charAt(a),1,c,d),this._createRequest(z.charAt(a),2,c,d);new j(b,c).read(a);let A=Math.max(i.width,m.width,n.width,o.width,p.width,q.width,r.width,s.width,t.width,u.width),B=b.fontFeatureSettings===k.Bc.OFF,C=d[0].width;for(let a=1,b=d.length;B&&a<b;a++){let b=C-d[a].width;if(b<-.001||b>.001){B=!1;break}}let D=!0;return B&&w.width!==C&&(D=!1),w.width>v.width&&(D=!1),new l.YJ({pixelRatio:e.c.getInstance(a).value,fontFamily:b.fontFamily,fontWeight:b.fontWeight,fontSize:b.fontSize,fontFeatureSettings:b.fontFeatureSettings,fontVariationSettings:b.fontVariationSettings,lineHeight:b.lineHeight,letterSpacing:b.letterSpacing,isMonospace:B,typicalHalfwidthCharacterWidth:f.width,typicalFullwidthCharacterWidth:g.width,canUseHalfwidthRightwardsArrow:D,spaceWidth:h.width,middotWidth:x.width,wsmiddotWidth:y.width,maxDigitWidth:A},!0)}}class n{constructor(){this._keys=Object.create(null),this._values=Object.create(null)}has(a){let b=a.getId();return!!this._values[b]}get(a){let b=a.getId();return this._values[b]}put(a,b){let c=a.getId();this._keys[c]=a,this._values[c]=b}remove(a){let b=a.getId();delete this._keys[b],delete this._values[b]}getValues(){return Object.keys(this._keys).map(a=>this._values[a])}}let o=new m},70233:(a,b,c)=>{"use strict";c.d(b,{x:()=>d});class d{static getLanguageId(a){return(255&a)>>>0}static getTokenType(a){return(768&a)>>>8}static containsBalancedBrackets(a){return(1024&a)!=0}static getFontStyle(a){return(30720&a)>>>11}static getForeground(a){return(0xff8000&a)>>>15}static getBackground(a){return(0xff000000&a)>>>24}static getClassNameFromMetadata(a){let b="mtk"+this.getForeground(a),c=this.getFontStyle(a);return 1&c&&(b+=" mtki"),2&c&&(b+=" mtkb"),4&c&&(b+=" mtku"),8&c&&(b+=" mtks"),b}static getInlineStyleFromMetadata(a,b){let c=this.getForeground(a),d=this.getFontStyle(a),e=`color: ${b[c]};`;1&d&&(e+="font-style: italic;"),2&d&&(e+="font-weight: bold;");let f="";return 4&d&&(f+=" underline"),8&d&&(f+=" line-through"),f&&(e+=`text-decoration:${f};`),e}static getPresentationFromMetadata(a){let b=this.getForeground(a),c=this.getFontStyle(a);return{foreground:b,italic:!!(1&c),bold:!!(2&c),underline:!!(4&c),strikethrough:!!(8&c)}}}},70281:(a,b,c)=>{"use strict";c.d(b,{TQ:()=>h,eb:()=>m,nh:()=>l});var d=c(55404);class e{constructor(a,b,c,d,e){this._parsedThemeRuleBrand=void 0,this.token=a,this.index=b,this.fontStyle=c,this.foreground=d,this.background=e}}let f=/^#?([0-9A-Fa-f]{6})([0-9A-Fa-f]{2})?$/;class g{constructor(){this._lastColorId=0,this._id2color=[],this._color2id=new Map}getId(a){if(null===a)return 0;let b=a.match(f);if(!b)throw Error("Illegal value for token color: "+a);a=b[1].toUpperCase();let c=this._color2id.get(a);return c||(c=++this._lastColorId,this._color2id.set(a,c),this._id2color[c]=d.Q1.fromHex("#"+a)),c}getColorMap(){return this._id2color.slice(0)}}class h{static createFromRawTokenTheme(a,b){return this.createFromParsedTokenTheme(function(a){if(!a||!Array.isArray(a))return[];let b=[],c=0;for(let d=0,f=a.length;d<f;d++){let f=a[d],g=-1;if("string"==typeof f.fontStyle){g=0;let a=f.fontStyle.split(" ");for(let b=0,c=a.length;b<c;b++)switch(a[b]){case"italic":g|=1;break;case"bold":g|=2;break;case"underline":g|=4;break;case"strikethrough":g|=8}}let h=null;"string"==typeof f.foreground&&(h=f.foreground);let i=null;"string"==typeof f.background&&(i=f.background),b[c++]=new e(f.token||"",d,g,h,i)}return b}(a),b)}static createFromParsedTokenTheme(a,b){return function(a,b){a.sort((a,b)=>{var c,d;let e=(c=a.token,c<(d=b.token)?-1:+(c>d));return 0!==e?e:a.index-b.index});let c=0,d="000000",e="ffffff";for(;a.length>=1&&""===a[0].token;){let b=a.shift();-1!==b.fontStyle&&(c=b.fontStyle),null!==b.foreground&&(d=b.foreground),null!==b.background&&(e=b.background)}let f=new g;for(let a of b)f.getId(a);let i=new k(new j(c,f.getId(d),f.getId(e)));for(let b=0,c=a.length;b<c;b++){let c=a[b];i.insert(c.token,c.fontStyle,f.getId(c.foreground),f.getId(c.background))}return new h(f,i)}(a,b)}constructor(a,b){this._colorMap=a,this._root=b,this._cache=new Map}getColorMap(){return this._colorMap.getColorMap()}_match(a){return this._root.match(a)}match(a,b){let c=this._cache.get(b);if(void 0===c){let a=this._match(b),d=function(a){let b=a.match(i);if(!b)return 0;switch(b[1]){case"comment":return 1;case"string":return 2;case"regex":case"regexp":return 3}throw Error("Unexpected match for standard token type!")}(b);c=(a.metadata|d<<8)>>>0,this._cache.set(b,c)}return(a|c)>>>0}}let i=/\b(comment|string|regex|regexp)\b/;class j{constructor(a,b,c){this._themeTrieElementRuleBrand=void 0,this._fontStyle=a,this._foreground=b,this._background=c,this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}clone(){return new j(this._fontStyle,this._foreground,this._background)}acceptOverwrite(a,b,c){-1!==a&&(this._fontStyle=a),0!==b&&(this._foreground=b),0!==c&&(this._background=c),this.metadata=(this._fontStyle<<11|this._foreground<<15|this._background<<24)>>>0}}class k{constructor(a){this._themeTrieElementBrand=void 0,this._mainRule=a,this._children=new Map}match(a){let b,c;if(""===a)return this._mainRule;let d=a.indexOf(".");-1===d?(b=a,c=""):(b=a.substring(0,d),c=a.substring(d+1));let e=this._children.get(b);return void 0!==e?e.match(c):this._mainRule}insert(a,b,c,d){let e,f;if(""===a)return void this._mainRule.acceptOverwrite(b,c,d);let g=a.indexOf(".");-1===g?(e=a,f=""):(e=a.substring(0,g),f=a.substring(g+1));let h=this._children.get(e);void 0===h&&(h=new k(this._mainRule.clone()),this._children.set(e,h)),h.insert(f,b,c,d)}}function l(a){let b=[];for(let c=1,d=a.length;c<d;c++){let d=a[c];b[c]=`.mtk${c} { color: ${d}; }`}return b.push(".mtki { font-style: italic; }"),b.push(".mtkb { font-weight: bold; }"),b.push(".mtku { text-decoration: underline; text-underline-position: under; }"),b.push(".mtks { text-decoration: line-through; }"),b.push(".mtks.mtku { text-decoration: underline line-through; text-underline-position: under; }"),b.join("\n")}function m(a,b){let c,d=(c=a.toLowerCase().trim())?n(c):"default";return n(`font-decoration-${d}-${b}`)}function n(a){return a.replace(/[^a-z0-9_-]/gi,"-")}},70288:(a,b,c)=>{"use strict";c.d(b,{EH:()=>p,XF:()=>r,Z4:()=>q});var d=c(47322),e=c(57616),f=c(75082),g=c(34793),h=c(89191),i=c(94199),j=c(66560),k=c(76631),l=c(18216),m=c(85214);c(1505);var n=c(72816),o=c(47339);class p extends k.jG{get action(){return this._action}constructor(a,b,c={}){super(),this.options=c,this._context=a||this,this._action=b,b instanceof j.rc&&this._register(b.onDidChange(a=>{this.element&&this.handleActionChangeEvent(a)}))}handleActionChangeEvent(a){void 0!==a.enabled&&this.updateEnabled(),void 0!==a.checked&&this.updateChecked(),void 0!==a.class&&this.updateClass(),void 0!==a.label&&(this.updateLabel(),this.updateTooltip()),void 0!==a.tooltip&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new j.LN)),this._actionRunner}set actionRunner(a){this._actionRunner=a}isEnabled(){return this._action.enabled}setActionContext(a){this._context=a}render(a){let b=this.element=a;this._register(g.q.addTarget(a));let c=this.options&&this.options.draggable;c&&(a.draggable=!0,d.gm&&this._register((0,f.ko)(a,f.Bx.DRAG_START,a=>a.dataTransfer?.setData(e.t.TEXT,this._action.label)))),this._register((0,f.ko)(b,g.B.Tap,a=>this.onClick(a,!0))),this._register((0,f.ko)(b,f.Bx.MOUSE_DOWN,a=>{c||f.fs.stop(a,!0),this._action.enabled&&0===a.button&&b.classList.add("active")})),l.zx&&this._register((0,f.ko)(b,f.Bx.CONTEXT_MENU,a=>{0===a.button&&!0===a.ctrlKey&&this.onClick(a)})),this._register((0,f.ko)(b,f.Bx.CLICK,a=>{f.fs.stop(a,!0),this.options&&this.options.isMenu||this.onClick(a)})),this._register((0,f.ko)(b,f.Bx.DBLCLICK,a=>{f.fs.stop(a,!0)})),[f.Bx.MOUSE_UP,f.Bx.MOUSE_OUT].forEach(a=>{this._register((0,f.ko)(b,a,a=>{f.fs.stop(a),b.classList.remove("active")}))})}onClick(a,b=!1){f.fs.stop(a,!0);let c=(0,m.z)(this._context)?this.options?.useEventAsContext?a:{preserveFocus:b}:this._context;this.actionRunner.run(this._action,c)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(a){this.element&&(this.element.tabIndex=a?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}getClass(){return this.action.class}getTooltip(){return this.action.tooltip}getHoverContents(){return this.getTooltip()}updateTooltip(){if(!this.element)return;let a=this.getHoverContents()??"";if(this.updateAriaLabel(),this.customHover||""===a)this.customHover&&this.customHover.update(a);else{let b=this.options.hoverDelegate??(0,h.nZ)("element");this.customHover=this._store.add((0,o.i)().setupManagedHover(b,this.element,a))}}updateAriaLabel(){if(this.element){let a=this.getTooltip()??"";this.element.setAttribute("aria-label",a)}}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),this._context=void 0,super.dispose()}}class q extends p{constructor(a,b,c){super(a,b,c={...c,icon:void 0!==c.icon&&c.icon,label:void 0===c.label||c.label}),this.options=c,this.cssClass=""}render(a){super.render(a),(0,m.j)(this.element);let b=document.createElement("a");if(b.classList.add("action-label"),b.setAttribute("role",this.getDefaultAriaRole()),this.label=b,this.element.appendChild(b),this.options.label&&this.options.keybinding&&!this.options.keybindingNotRenderedWithLabel){let a=document.createElement("span");a.classList.add("keybinding"),a.textContent=this.options.keybinding,this.element.appendChild(a)}this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}getDefaultAriaRole(){return this._action.id===j.wv.ID?"presentation":this.options.isMenu?"menuitem":this.options.isTabList?"tab":"button"}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(a){this.label&&(this.label.tabIndex=a?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.action.label)}getTooltip(){let a=null;return this.action.tooltip?a=this.action.tooltip:this.action.label&&(a=this.action.label,this.options.keybinding&&(a=(0,n.kg)(0,"{0} ({1})",a,this.options.keybinding))),a??void 0}updateClass(){this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.action.id===j.wv.ID&&this.action.class?this.label?.classList.add(this.action.class):this.options.icon?(this.cssClass=this.getClass(),this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):this.label?.classList.remove("codicon")}updateEnabled(){this.action.enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),this.element?.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),this.element?.classList.add("disabled"))}updateAriaLabel(){if(this.label){let a=this.getTooltip()??"";this.label.setAttribute("aria-label",a)}}updateChecked(){this.label&&(void 0!==this.action.checked?(this.label.classList.toggle("checked",this.action.checked),this.options.isTabList?this.label.setAttribute("aria-selected",this.action.checked?"true":"false"):(this.label.setAttribute("aria-pressed",this.action.checked?"true":"false"),this.label.setAttribute("role","button"))):(this.label.classList.remove("checked"),this.label.removeAttribute(this.options.isTabList?"aria-selected":"aria-pressed"),this.label.setAttribute("role",this.getDefaultAriaRole())))}}class r extends p{constructor(a,b,c,d,e,f,g){super(a,b),this.selectBox=new i.a(c,d,e,f,g),this.selectBox.setFocusable(!1),this._register(this.selectBox),this.registerListeners()}select(a){this.selectBox.select(a)}registerListeners(){this._register(this.selectBox.onDidSelect(a=>this.runAction(a.selected,a.index)))}runAction(a,b){this.actionRunner.run(this._action,this.getActionContext(a,b))}getActionContext(a,b){return a}setFocusable(a){this.selectBox.setFocusable(a)}focus(){this.selectBox?.focus()}blur(){this.selectBox?.blur()}render(a){this.selectBox.render(a)}}},70401:()=>{},70687:(a,b,c)=>{"use strict";let d,e,f;c.d(b,{$6:()=>d,A0:()=>A,EQ:()=>v,F6:()=>B,HC:()=>h,PK:()=>p,Pq:()=>w,Qg:()=>n,SS:()=>o,Th:()=>u,VK:()=>r,Zv:()=>C,b7:()=>e,nY:()=>q,pc:()=>x,uC:()=>z,vb:()=>y,ve:()=>t,wR:()=>function a(b,c){return c?new Promise((a,d)=>{let e=setTimeout(()=>{f.dispose(),a()},b),f=c.onCancellationRequested(()=>{clearTimeout(e),f.dispose(),d(new j.AL)})}):o(c=>a(b,c))}});var g,h,i=c(92640),j=c(66036),k=c(76631),l=c(18216),m=c(2938);function n(a){return!!a&&"function"==typeof a.then}function o(a){let b=new i.Qi,c=a(b.token),d=!1,e=new Promise((a,e)=>{let f=b.token.onCancellationRequested(()=>{d=!0,f.dispose(),e(new j.AL)});Promise.resolve(c).then(c=>{f.dispose(),b.dispose(),d?(0,k.Xm)(c)&&c.dispose():a(c)},a=>{f.dispose(),b.dispose(),e(a)})});return new class{cancel(){b.cancel(),b.dispose()}then(a,b){return e.then(a,b)}catch(a){return this.then(void 0,a)}finally(a){return e.finally(a)}}}function p(a,b,c){return new Promise((d,e)=>{let f=b.onCancellationRequested(()=>{f.dispose(),d(c)});a.then(d,e).finally(()=>f.dispose())})}function q(a,b){return new Promise((c,d)=>{let e=b.onCancellationRequested(()=>{e.dispose(),d(new j.AL)});a.then(c,d).finally(()=>e.dispose())})}function r(a){if(!(0,j.MB)(a))return Promise.reject(a)}class s{constructor(){this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null,this.cancellationTokenSource=new i.Qi}queue(a){if(this.cancellationTokenSource.token.isCancellationRequested)return Promise.reject(Error("Throttler is disposed"));if(this.activePromise){if(this.queuedPromiseFactory=a,!this.queuedPromise){let a=()=>{if(this.queuedPromise=null,this.cancellationTokenSource.token.isCancellationRequested)return;let a=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,a};this.queuedPromise=new Promise(b=>{this.activePromise.then(a,a).then(b)})}return new Promise((a,b)=>{this.queuedPromise.then(a,b)})}return this.activePromise=a(this.cancellationTokenSource.token),new Promise((a,b)=>{this.activePromise.then(b=>{this.activePromise=null,a(b)},a=>{this.activePromise=null,b(a)})})}dispose(){this.cancellationTokenSource.cancel()}}class t{constructor(a){this.defaultDelay=a,this.deferred=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(a,b=this.defaultDelay){let c,d,e;this.task=a,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((a,b)=>{this.doResolve=a,this.doReject=b}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){let a=this.task;return this.task=null,a()}}));let f=()=>{this.deferred=null,this.doResolve?.(null)};return this.deferred=b===m.h?(c=!0,queueMicrotask(()=>{c&&(c=!1,f())}),{isTriggered:()=>c,dispose:()=>{c=!1}}):(d=!0,e=setTimeout(()=>{d=!1,f()},b),{isTriggered:()=>d,dispose:()=>{clearTimeout(e),d=!1}}),this.completionPromise}isTriggered(){return!!this.deferred?.isTriggered()}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject?.(new j.AL),this.completionPromise=null)}cancelTimeout(){this.deferred?.dispose(),this.deferred=null}dispose(){this.cancel()}}class u{constructor(a){this.delayer=new t(a),this.throttler=new s}trigger(a,b){return this.delayer.trigger(()=>this.throttler.queue(a),b)}cancel(){this.delayer.cancel()}dispose(){this.delayer.dispose(),this.throttler.dispose()}}function v(a,b=0,c){let d=setTimeout(()=>{a(),c&&e.dispose()},b),e=(0,k.s)(()=>{clearTimeout(d),c?.delete(e)});return c?.add(e),e}class w{constructor(){this._runningTask=void 0,this._pendingTasks=[]}schedule(a){let b=new C;return this._pendingTasks.push({task:a,deferred:b,setUndefinedWhenCleared:!1}),this._runIfNotRunning(),b.p}_runIfNotRunning(){void 0===this._runningTask&&this._processQueue()}async _processQueue(){if(0===this._pendingTasks.length)return;let a=this._pendingTasks.shift();if(a){if(this._runningTask)throw new j.D7;this._runningTask=a.task;try{let b=await a.task();a.deferred.complete(b)}catch(b){a.deferred.error(b)}finally{this._runningTask=void 0,this._processQueue()}}}clearPending(){let a=this._pendingTasks;for(let b of(this._pendingTasks=[],a))b.setUndefinedWhenCleared?b.deferred.complete(void 0):b.deferred.error(new j.AL)}}class x{constructor(a,b){this._isDisposed=!1,this._token=void 0,"function"==typeof a&&"number"==typeof b&&this.setIfNotSet(a,b)}dispose(){this.cancel(),this._isDisposed=!0}cancel(){void 0!==this._token&&(clearTimeout(this._token),this._token=void 0)}cancelAndSet(a,b){if(this._isDisposed)throw new j.D7("Calling 'cancelAndSet' on a disposed TimeoutTimer");this.cancel(),this._token=setTimeout(()=>{this._token=void 0,a()},b)}setIfNotSet(a,b){if(this._isDisposed)throw new j.D7("Calling 'setIfNotSet' on a disposed TimeoutTimer");void 0===this._token&&(this._token=setTimeout(()=>{this._token=void 0,a()},b))}}class y{constructor(){this.disposable=void 0,this.isDisposed=!1}cancel(){this.disposable?.dispose(),this.disposable=void 0}cancelAndSet(a,b,c=globalThis){if(this.isDisposed)throw new j.D7("Calling 'cancelAndSet' on a disposed IntervalTimer");this.cancel();let d=c.setInterval(()=>{a()},b);this.disposable=(0,k.s)(()=>{c.clearInterval(d),this.disposable=void 0})}dispose(){this.cancel(),this.isDisposed=!0}}class z{constructor(a,b){this.timeoutToken=void 0,this.runner=a,this.timeout=b,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=void 0)}schedule(a=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,a)}get delay(){return this.timeout}set delay(a){this.timeout=a}isScheduled(){return void 0!==this.timeoutToken}onTimeout(){this.timeoutToken=void 0,this.runner&&this.doRun()}doRun(){this.runner?.()}}e="function"!=typeof(f=globalThis).requestIdleCallback||"function"!=typeof f.cancelIdleCallback?(a,b,c)=>{(0,l._p)(()=>{if(d)return;let a=Date.now()+15;b(Object.freeze({didTimeout:!0,timeRemaining:()=>Math.max(0,a-Date.now())}))});let d=!1;return{dispose(){d||(d=!0)}}}:(a,b,c)=>{let d=a.requestIdleCallback(b,"number"==typeof c?{timeout:c}:void 0),e=!1;return{dispose(){e||(e=!0,a.cancelIdleCallback(d))}}},d=(a,b)=>e(globalThis,a,b);class A{constructor(a,b){this._didRun=!1,this._executor=()=>{try{this._value=b()}catch(a){this._error=a}finally{this._didRun=!0}},this._handle=e(a,()=>this._executor())}dispose(){this._handle.dispose()}get value(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value}get isInitialized(){return this._didRun}}class B extends A{constructor(a){super(globalThis,a)}}class C{get isRejected(){return this.outcome?.outcome===1}get isSettled(){return!!this.outcome}constructor(){this.p=new Promise((a,b)=>{this.completeCallback=a,this.errorCallback=b})}complete(a){return this.isSettled?Promise.resolve():new Promise(b=>{this.completeCallback(a),this.outcome={outcome:0,value:a},b()})}error(a){return this.isSettled?Promise.resolve():new Promise(b=>{this.errorCallback(a),this.outcome={outcome:1,value:a},b()})}cancel(){return this.error(new j.AL)}}(g=h||(h={})).settled=async function(a){let b,c=await Promise.all(a.map(a=>a.then(a=>a,a=>{b||(b=a)})));if(void 0!==b)throw b;return c},g.withAsyncBody=function(a){return new Promise(async(b,c)=>{try{await a(b,c)}catch(a){c(a)}})};class D{constructor(){this._unsatisfiedConsumers=[],this._unconsumedValues=[]}get hasFinalValue(){return!!this._finalValue}produce(a){if(this._ensureNoFinalValue(),this._unsatisfiedConsumers.length>0){let b=this._unsatisfiedConsumers.shift();this._resolveOrRejectDeferred(b,a)}else this._unconsumedValues.push(a)}produceFinal(a){for(let b of(this._ensureNoFinalValue(),this._finalValue=a,this._unsatisfiedConsumers))this._resolveOrRejectDeferred(b,a);this._unsatisfiedConsumers.length=0}_ensureNoFinalValue(){if(this._finalValue)throw new j.D7("ProducerConsumer: cannot produce after final value has been set")}_resolveOrRejectDeferred(a,b){b.ok?a.complete(b.value):a.error(b.error)}consume(){if(this._unconsumedValues.length>0||this._finalValue){let a=this._unconsumedValues.length>0?this._unconsumedValues.shift():this._finalValue;return a.ok?Promise.resolve(a.value):Promise.reject(a.error)}{let a=new C;return this._unsatisfiedConsumers.push(a),a.p}}}class E{constructor(a,b){this._onReturn=b,this._producerConsumer=new D,this._iterator={next:()=>this._producerConsumer.consume(),return:()=>(this._onReturn?.(),Promise.resolve({done:!0,value:void 0})),throw:async a=>(this._finishError(a),{done:!0,value:void 0})},queueMicrotask(async()=>{let b=a({emitOne:a=>this._producerConsumer.produce({ok:!0,value:{done:!1,value:a}}),emitMany:a=>{for(let b of a)this._producerConsumer.produce({ok:!0,value:{done:!1,value:b}})},reject:a=>this._finishError(a)});if(!this._producerConsumer.hasFinalValue)try{await b,this._finishOk()}catch(a){this._finishError(a)}})}static fromArray(a){return new E(b=>{b.emitMany(a)})}static fromPromise(a){return new E(async b=>{b.emitMany(await a)})}static fromPromisesResolveOrder(a){return new E(async b=>{await Promise.all(a.map(async a=>b.emitOne(await a)))})}static merge(a){return new E(async b=>{await Promise.all(a.map(async a=>{for await(let c of a)b.emitOne(c)}))})}static{this.EMPTY=E.fromArray([])}static map(a,b){return new E(async c=>{for await(let d of a)c.emitOne(b(d))})}static tee(a){let b,c,d=new C,e=async()=>{if(b&&c)try{for await(let d of a)b.emitOne(d),c.emitOne(d)}catch(a){b.reject(a),c.reject(a)}finally{d.complete()}};return[new E(async a=>(b=a,e(),d.p)),new E(async a=>(c=a,e(),d.p))]}map(a){return E.map(this,a)}static coalesce(a){return E.filter(a,a=>!!a)}coalesce(){return E.coalesce(this)}static filter(a,b){return new E(async c=>{for await(let d of a)b(d)&&c.emitOne(d)})}filter(a){return E.filter(this,a)}_finishOk(){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!0,value:{done:!0,value:void 0}})}_finishError(a){this._producerConsumer.hasFinalValue||this._producerConsumer.produceFinal({ok:!1,error:a})}[Symbol.asyncIterator](){return this._iterator}}},71296:(a,b,c)=>{"use strict";c.d(b,{s:()=>e});var d=c(18530);class e{static whitespaceVisibleColumn(a,b,c){let e=a.length,f=0,g=-1,h=-1;for(let i=0;i<e;i++){if(i===b)return[g,h,f];switch(f%c==0&&(g=i,h=f),a.charCodeAt(i)){case 32:f+=1;break;case 9:f=d.A.nextRenderTabStop(f,c);break;default:return[-1,-1,-1]}}return b===e?[g,h,f]:[-1,-1,-1]}static atomicPosition(a,b,c,f){let g,h=a.length,[i,j,k]=e.whitespaceVisibleColumn(a,b,c);if(-1===k)return -1;switch(f){case 0:g=!0;break;case 1:g=!1;break;case 2:if(k%c==0)return b;g=k%c<=c/2}if(g){if(-1===i)return -1;let b=j;for(let e=i;e<h;++e){if(b===j+c)return i;switch(a.charCodeAt(e)){case 32:b+=1;break;case 9:b=d.A.nextRenderTabStop(b,c);break;default:return -1}}return b===j+c?i:-1}let l=d.A.nextRenderTabStop(k,c),m=k;for(let e=b;e<h;e++){if(m===l)return e;switch(a.charCodeAt(e)){case 32:m+=1;break;case 9:m=d.A.nextRenderTabStop(m,c);break;default:return -1}}return m===l?h:-1}}},71880:()=>{},72333:(a,b,c)=>{"use strict";c.d(b,{V:()=>h,WR:()=>j,no:()=>g});var d=c(26529),e=c(99807),f=c(91324);class g{constructor(a,b,c){this._indentRulesSupport=b,this._indentationLineProcessor=new i(a,c)}shouldIncrease(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIncrease(c)}shouldDecrease(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldDecrease(c)}shouldIgnore(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIgnore(c)}shouldIndentNextLine(a,b){let c=this._indentationLineProcessor.getProcessedLine(a,b);return this._indentRulesSupport.shouldIndentNextLine(c)}}class h{constructor(a,b){this.model=a,this.indentationLineProcessor=new i(a,b)}getProcessedTokenContextAroundRange(a){let b=this._getProcessedTokensBeforeRange(a);return{beforeRangeProcessedTokens:b,afterRangeProcessedTokens:this._getProcessedTokensAfterRange(a),previousLineProcessedTokens:this._getProcessedPreviousLineTokens(a)}}_getProcessedTokensBeforeRange(a){let b;this.model.tokenization.forceTokenization(a.startLineNumber);let c=this.model.tokenization.getLineTokens(a.startLineNumber),d=(0,e.BQ)(c,a.startColumn-1);if(j(this.model,a.getStartPosition())){let e=a.startColumn-1-d.firstCharOffset,f=d.firstCharOffset;b=c.sliceAndInflate(f,f+e,0)}else{let d=a.startColumn-1;b=c.sliceAndInflate(0,d,0)}return this.indentationLineProcessor.getProcessedTokens(b)}_getProcessedTokensAfterRange(a){let b=a.isEmpty()?a.getStartPosition():a.getEndPosition();this.model.tokenization.forceTokenization(b.lineNumber);let c=this.model.tokenization.getLineTokens(b.lineNumber),d=(0,e.BQ)(c,b.column-1),f=b.column-1-d.firstCharOffset,g=d.firstCharOffset+f,h=d.firstCharOffset+d.getLineLength(),i=c.sliceAndInflate(g,h,0);return this.indentationLineProcessor.getProcessedTokens(i)}_getProcessedPreviousLineTokens(a){let b=a=>{this.model.tokenization.forceTokenization(a);let b=this.model.tokenization.getLineTokens(a),c=this.model.getLineMaxColumn(a)-1;return(0,e.BQ)(b,c)};this.model.tokenization.forceTokenization(a.startLineNumber);let c=this.model.tokenization.getLineTokens(a.startLineNumber),d=(0,e.BQ)(c,a.startColumn-1),g=f.f7.createEmpty("",d.languageIdCodec),h=a.startLineNumber-1;if(0===h||0!==d.firstCharOffset)return g;let i=b(h);if(d.languageId!==i.languageId)return g;let j=i.toIViewLineTokens();return this.indentationLineProcessor.getProcessedTokens(j)}}class i{constructor(a,b){this.model=a,this.languageConfigurationService=b}getProcessedLine(a,b){var c;let e;this.model.tokenization.forceTokenization?.(a);let f=this.model.tokenization.getLineTokens(a),g=this.getProcessedTokens(f).getLineContent();return void 0!==b&&(c=g,e=(0,d.UU)(c),g=b+c.substring(e.length)),g}getProcessedTokens(a){let b=a.getLanguageId(0),c=this.languageConfigurationService.getLanguageConfiguration(b).bracketsNew.getBracketRegExp({global:!0}),d=[];return a.forEach(b=>{let e=a.getStandardTokenType(b),f=a.getTokenText(b);(2===e||3===e||1===e)&&(f=f.replace(c,""));let g=a.getMetadata(b);d.push({text:f,metadata:g})}),f.f7.createFromTextAndMetadata(d,a.languageIdCodec)}}function j(a,b){a.tokenization.forceTokenization(b.lineNumber);let c=a.tokenization.getLineTokens(b.lineNumber),d=(0,e.BQ)(c,b.column-1),f=0===d.firstCharOffset,g=c.getLanguageId(0)===d.languageId;return!f&&!g}},72448:(a,b,c)=>{"use strict";c.d(b,{T:()=>h,v:()=>i});var d=c(75842),e=c(41577),f=c(48580),g=c(75444);class h{static indent(a,b,c){if(null===b||null===c)return[];let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static outdent(a,b,c){let e=[];for(let b=0,f=c.length;b<f;b++)e[b]=new d.Y(c[b],{isUnshift:!0,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService);return e}static paste(a,b,c,d,e,f){return g.Dr.getEdits(a,b,c,d,e,f)}static tab(a,b,c){return g.h0.getCommands(a,b,c)}static compositionType(a,b,c,d,e,f,h,i){return g.YA.getEdits(a,b,c,d,e,f,h,i)}static compositionEndWithInterceptors(a,b,c,d,h,i){if(!d)return null;let j=null;for(let a of d)if(null===j)j=a.insertedText;else if(j!==a.insertedText)return null;if(!j||1!==j.length)return g.Tl.getEdits(b,d);let k=j,l=!1;for(let a of d)if(0!==a.deletedText.length){l=!0;break}if(l){if(!(0,g.ey)(b,k)||!b.surroundingPairs.hasOwnProperty(k))return null;let a=(0,f.vG)(k);for(let b of d)if(0!==b.deletedSelectionStart||b.deletedSelectionEnd!==b.deletedText.length||/^[ \t]+$/.test(b.deletedText)||a&&(0,f.vG)(b.deletedText))return null;let c=[];for(let a of h){if(!a.isEmpty())return null;c.push(a.getPosition())}if(c.length!==d.length)return null;let i=[];for(let a=0,f=c.length;a<f;a++)i.push(new e.y(c[a],d[a].deletedText,b.surroundingPairs[k]));return new f.vY(4,i,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}let m=g.K4.getEdits(b,c,h,i,k);if(void 0!==m)return m;let n=g.oi.getEdits(b,c,h,k,!0,!1);return void 0!==n?n:g.Tl.getEdits(b,d)}static typeWithInterceptors(a,b,c,d,e,f,h){let i=g.AO.getEdits(c,d,e,h,a);if(void 0!==i)return i;let j=g.dU.getEdits(c,d,e,h,a);if(void 0!==j)return j;let k=g.sx.getEdits(b,c,d,e,f,h);if(void 0!==k)return k;let l=g.oi.getEdits(c,d,e,h,!1,a);if(void 0!==l)return l;let m=g.is.getEdits(c,d,e,h,a);if(void 0!==m)return m;let n=g.kr.getEdits(b,c,d,e,h,a);return void 0!==n?n:g.Ls.getEdits(c,b,e,h,a)}static typeWithoutInterceptors(a,b,c,d,e){return g.UN.getEdits(a,d,e)}}class i{constructor(a,b,c,d,e,f,g){this.deletedText=a,this.deletedSelectionStart=b,this.deletedSelectionEnd=c,this.insertedText=d,this.insertedSelectionStart=e,this.insertedSelectionEnd=f,this.insertedTextRange=g}}},72499:(a,b,c)=>{"use strict";c.d(b,{W:()=>g,c:()=>f});var d=c(61822),e=c(26346);class f{static fromModelContentChanges(a){return a.map(a=>{let b=d.Q.lift(a.range);return new f((0,e.VL)(b.getStartPosition()),(0,e.VL)(b.getEndPosition()),(0,e.rR)(a.text))}).reverse()}constructor(a,b,c){this.startOffset=a,this.endOffset=b,this.newLength=c}toString(){return`[${(0,e.l4)(this.startOffset)}...${(0,e.l4)(this.endOffset)}) -> ${(0,e.l4)(this.newLength)}`}}class g{constructor(a){this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=a.map(a=>h.from(a))}getOffsetBeforeChange(a){return this.adjustNextEdit(a),this.translateCurToOld(a)}getDistanceToNextChange(a){this.adjustNextEdit(a);let b=this.edits[this.nextEditIdx],c=b?this.translateOldToCur(b.offsetObj):null;return null===c?null:(0,e.MS)(a,c)}translateOldToCur(a){return a.lineCount===this.deltaLineIdxInOld?(0,e.qe)(a.lineCount+this.deltaOldToNewLineCount,a.columnCount+this.deltaOldToNewColumnCount):(0,e.qe)(a.lineCount+this.deltaOldToNewLineCount,a.columnCount)}translateCurToOld(a){let b=(0,e.l4)(a);return b.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?(0,e.qe)(b.lineCount-this.deltaOldToNewLineCount,b.columnCount-this.deltaOldToNewColumnCount):(0,e.qe)(b.lineCount-this.deltaOldToNewLineCount,b.columnCount)}adjustNextEdit(a){for(;this.nextEditIdx<this.edits.length;){let b=this.edits[this.nextEditIdx],c=this.translateOldToCur(b.endOffsetAfterObj);if((0,e.vr)(c,a)){this.nextEditIdx++;let a=(0,e.l4)(c),d=(0,e.l4)(this.translateOldToCur(b.endOffsetBeforeObj)),f=a.lineCount-d.lineCount;this.deltaOldToNewLineCount+=f;let g=this.deltaLineIdxInOld===b.endOffsetBeforeObj.lineCount?this.deltaOldToNewColumnCount:0,h=a.columnCount-d.columnCount;this.deltaOldToNewColumnCount=g+h,this.deltaLineIdxInOld=b.endOffsetBeforeObj.lineCount}else break}}}class h{static from(a){return new h(a.startOffset,a.endOffset,a.newLength)}constructor(a,b,c){this.endOffsetBeforeObj=(0,e.l4)(b),this.endOffsetAfterObj=(0,e.l4)((0,e.QB)(a,c)),this.offsetObj=(0,e.l4)(a)}}},72520:()=>{},72542:(a,b,c)=>{"use strict";c.d(b,{MU:()=>B,QC:()=>x,Se:()=>z,oO:()=>A});var d=c(47322),e=c(75082),f=c(61556),g=c(46857),h=c(97085),i=c(8933),j=c(70687),k=c(63060);class l extends i.x{constructor(a){super(),this._onActivate=a.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=a.bgWidth+"px",this.bgDomNode.style.height=a.bgHeight+"px",void 0!==a.top&&(this.bgDomNode.style.top="0px"),void 0!==a.left&&(this.bgDomNode.style.left="0px"),void 0!==a.bottom&&(this.bgDomNode.style.bottom="0px"),void 0!==a.right&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=a.className,this.domNode.classList.add(...k.L.asClassNameArray(a.icon)),this.domNode.style.position="absolute",this.domNode.style.width="11px",this.domNode.style.height="11px",void 0!==a.top&&(this.domNode.style.top=a.top+"px"),void 0!==a.left&&(this.domNode.style.left=a.left+"px"),void 0!==a.bottom&&(this.domNode.style.bottom=a.bottom+"px"),void 0!==a.right&&(this.domNode.style.right=a.right+"px"),this._pointerMoveMonitor=this._register(new h._),this._register((0,e.un)(this.bgDomNode,e.Bx.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._register((0,e.un)(this.domNode,e.Bx.POINTER_DOWN,a=>this._arrowPointerDown(a))),this._pointerdownRepeatTimer=this._register(new e.Be),this._pointerdownScheduleRepeatTimer=this._register(new j.pc)}_arrowPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=()=>{this._pointerdownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24,(0,e.zk)(a))};this._onActivate(),this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancelAndSet(b,200),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{},()=>{this._pointerdownRepeatTimer.cancel(),this._pointerdownScheduleRepeatTimer.cancel()}),a.preventDefault()}}var m=c(76631);class n extends m.jG{constructor(a,b,c){super(),this._visibility=a,this._visibleClassName=b,this._invisibleClassName=c,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new j.pc)}setVisibility(a){this._visibility!==a&&(this._visibility=a,this._updateShouldBeVisible())}setShouldBeVisible(a){this._rawShouldBeVisible=a,this._updateShouldBeVisible()}_applyVisibilitySetting(){return 2!==this._visibility&&(3===this._visibility||this._rawShouldBeVisible)}_updateShouldBeVisible(){let a=this._applyVisibilitySetting();this._shouldBeVisible!==a&&(this._shouldBeVisible=a,this.ensureVisibility())}setIsNeeded(a){this._isNeeded!==a&&(this._isNeeded=a,this.ensureVisibility())}setDomNode(a){this._domNode=a,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){this._isNeeded?this._shouldBeVisible?this._reveal():this._hide(!0):this._hide(!1)}_reveal(){this._isVisible||(this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode?.setClassName(this._visibleClassName)},0))}_hide(a){this._revealTimer.cancel(),this._isVisible&&(this._isVisible=!1,this._domNode?.setClassName(this._invisibleClassName+(a?" fade":"")))}}var o=c(18216);class p extends i.x{constructor(a){super(),this._lazyRender=a.lazyRender,this._host=a.host,this._scrollable=a.scrollable,this._scrollByPage=a.scrollByPage,this._scrollbarState=a.scrollbarState,this._visibilityController=this._register(new n(a.visibility,"visible scrollbar "+a.extraScrollbarClassName,"invisible scrollbar "+a.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._pointerMoveMonitor=this._register(new h._),this._shouldRender=!0,this.domNode=(0,f.Z)(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this._register((0,e.ko)(this.domNode.domNode,e.Bx.POINTER_DOWN,a=>this._domNodePointerDown(a)))}_createArrow(a){let b=this._register(new l(a));this.domNode.domNode.appendChild(b.bgDomNode),this.domNode.domNode.appendChild(b.domNode)}_createSlider(a,b,c,d){this.slider=(0,f.Z)(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(a),this.slider.setLeft(b),"number"==typeof c&&this.slider.setWidth(c),"number"==typeof d&&this.slider.setHeight(d),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this._register((0,e.ko)(this.slider.domNode,e.Bx.POINTER_DOWN,a=>{0===a.button&&(a.preventDefault(),this._sliderPointerDown(a))})),this.onclick(this.slider.domNode,a=>{a.leftButton&&a.stopPropagation()})}_onElementSize(a){return this._scrollbarState.setVisibleSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(a){return this._scrollbarState.setScrollSize(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(a){return this._scrollbarState.setScrollPosition(a)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){this._shouldRender&&(this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition()))}_domNodePointerDown(a){a.target===this.domNode.domNode&&this._onPointerDown(a)}delegatePointerDown(a){let b=this.domNode.domNode.getClientRects()[0].top,c=b+this._scrollbarState.getSliderPosition(),d=b+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),e=this._sliderPointerPosition(a);c<=e&&e<=d?0===a.button&&(a.preventDefault(),this._sliderPointerDown(a)):this._onPointerDown(a)}_onPointerDown(a){let b,c;if(a.target===this.domNode.domNode&&"number"==typeof a.offsetX&&"number"==typeof a.offsetY)b=a.offsetX,c=a.offsetY;else{let d=(0,e.BK)(this.domNode.domNode);b=a.pageX-d.left,c=a.pageY-d.top}let d="mouse"===a.pointerType,f=0===a.button;if(f||!d){let a=this._pointerDownRelativePosition(b,c);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(a):this._scrollbarState.getDesiredScrollPositionFromOffset(a))}f&&(a.preventDefault(),this._sliderPointerDown(a))}_sliderPointerDown(a){if(!a.target||!(a.target instanceof Element))return;let b=this._sliderPointerPosition(a),c=this._sliderOrthogonalPointerPosition(a),d=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._pointerMoveMonitor.startMonitoring(a.target,a.pointerId,a.buttons,a=>{let e=Math.abs(this._sliderOrthogonalPointerPosition(a)-c);if(o.uF&&e>140)return void this._setDesiredScrollPositionNow(d.getScrollPosition());let f=this._sliderPointerPosition(a);this._setDesiredScrollPositionNow(d.getDesiredScrollPositionFromDelta(f-b))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd()}),this._host.onDragStart()}_setDesiredScrollPositionNow(a){let b={};this.writeScrollPosition(b,a),this._scrollable.setScrollPositionNow(b)}updateScrollbarSize(a){this._updateScrollbarSize(a),this._scrollbarState.setScrollbarSize(a),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}var q=c(28925),r=c(33040);class s extends p{constructor(a,b,c){const d=a.getScrollDimensions(),e=a.getCurrentScrollPosition();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new q.m(b.horizontalHasArrows?b.arrowSize:0,2===b.horizontal?0:b.horizontalScrollbarSize,2===b.vertical?0:b.verticalScrollbarSize,d.width,d.scrollWidth,e.scrollLeft),visibility:b.horizontal,extraScrollbarClassName:"horizontal",scrollable:a,scrollByPage:b.scrollByPage}),b.horizontalHasArrows){const a=(b.arrowSize-11)/2,c=(b.horizontalScrollbarSize-11)/2;this._createArrow({className:"scra",icon:r.W.scrollbarButtonLeft,top:c,left:a,bottom:void 0,right:void 0,bgWidth:b.arrowSize,bgHeight:b.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,1,0))}),this._createArrow({className:"scra",icon:r.W.scrollbarButtonRight,top:c,left:void 0,bottom:void 0,right:a,bgWidth:b.arrowSize,bgHeight:b.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,-1,0))})}this._createSlider(Math.floor((b.horizontalScrollbarSize-b.horizontalSliderSize)/2),0,void 0,b.horizontalSliderSize)}_updateSlider(a,b){this.slider.setWidth(a),this.slider.setLeft(b)}_renderDomNode(a,b){this.domNode.setWidth(a),this.domNode.setHeight(b),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(a.width)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return a}_sliderPointerPosition(a){return a.pageX}_sliderOrthogonalPointerPosition(a){return a.pageY}_updateScrollbarSize(a){this.slider.setHeight(a)}writeScrollPosition(a,b){a.scrollLeft=b}updateOptions(a){this.updateScrollbarSize(2===a.horizontal?0:a.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._visibilityController.setVisibility(a.horizontal),this._scrollByPage=a.scrollByPage}}class t extends p{constructor(a,b,c){const d=a.getScrollDimensions(),e=a.getCurrentScrollPosition();if(super({lazyRender:b.lazyRender,host:c,scrollbarState:new q.m(b.verticalHasArrows?b.arrowSize:0,2===b.vertical?0:b.verticalScrollbarSize,0,d.height,d.scrollHeight,e.scrollTop),visibility:b.vertical,extraScrollbarClassName:"vertical",scrollable:a,scrollByPage:b.scrollByPage}),b.verticalHasArrows){const a=(b.arrowSize-11)/2,c=(b.verticalScrollbarSize-11)/2;this._createArrow({className:"scra",icon:r.W.scrollbarButtonUp,top:a,left:c,bottom:void 0,right:void 0,bgWidth:b.verticalScrollbarSize,bgHeight:b.arrowSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,0,1))}),this._createArrow({className:"scra",icon:r.W.scrollbarButtonDown,top:void 0,left:c,bottom:a,right:void 0,bgWidth:b.verticalScrollbarSize,bgHeight:b.arrowSize,onActivate:()=>this._host.onMouseWheel(new g.$(null,0,-1))})}this._createSlider(0,Math.floor((b.verticalScrollbarSize-b.verticalSliderSize)/2),b.verticalSliderSize,void 0)}_updateSlider(a,b){this.slider.setHeight(a),this.slider.setTop(b)}_renderDomNode(a,b){this.domNode.setWidth(b),this.domNode.setHeight(a),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(a){return this._shouldRender=this._onElementScrollSize(a.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(a.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(a.height)||this._shouldRender,this._shouldRender}_pointerDownRelativePosition(a,b){return b}_sliderPointerPosition(a){return a.pageY}_sliderOrthogonalPointerPosition(a){return a.pageX}_updateScrollbarSize(a){this.slider.setWidth(a)}writeScrollPosition(a,b){a.scrollTop=b}updateOptions(a){this.updateScrollbarSize(2===a.vertical?0:a.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(a.vertical),this._scrollByPage=a.scrollByPage}}var u=c(95091),v=c(38750);c(64129);class w{constructor(a,b,c){this.timestamp=a,this.deltaX=b,this.deltaY=c,this.score=0}}class x{static{this.INSTANCE=new x}constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(-1===this._front&&-1===this._rear)return!1;let a=1,b=0,c=1,d=this._rear;for(;;){let e=d===this._front?a:Math.pow(2,-c);if(a-=e,b+=this._memory[d].score*e,d===this._front)break;d=(this._capacity+d-1)%this._capacity,c++}return b<=.5}acceptStandardWheelEvent(a){if(d.H8){let b=(0,e.zk)(a.browserEvent),c=(0,d.pR)(b);this.accept(Date.now(),a.deltaX*c,a.deltaY*c)}else this.accept(Date.now(),a.deltaX,a.deltaY)}accept(a,b,c){let d=null,e=new w(a,b,c);-1===this._front&&-1===this._rear?(this._memory[0]=e,this._front=0,this._rear=0):(d=this._memory[this._rear],this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=e),e.score=this._computeScore(e,d)}_computeScore(a,b){if(Math.abs(a.deltaX)>0&&Math.abs(a.deltaY)>0)return 1;let c=.5;if(this._isAlmostInt(a.deltaX)&&this._isAlmostInt(a.deltaY)||(c+=.25),b){let d=Math.abs(a.deltaX),e=Math.abs(a.deltaY),f=Math.abs(b.deltaX),g=Math.abs(b.deltaY),h=Math.max(Math.min(d,f),1),i=Math.max(Math.min(e,g),1),j=Math.max(e,g);Math.max(d,f)%h==0&&j%i==0&&(c-=.5)}return Math.min(Math.max(c,0),1)}_isAlmostInt(a){return Math.abs(Math.round(a)-a)<.01+100*Number.EPSILON}}class y extends i.x{get onScroll(){return this._onScroll.event}get options(){return this._options}constructor(a,b,c){super(),this._inertialTimeout=null,this._inertialSpeed={X:0,Y:0},this._onScroll=this._register(new u.vl),this._onWillScroll=this._register(new u.vl),a.style.overflow="hidden",this._options=function(a){let b={lazyRender:void 0!==a.lazyRender&&a.lazyRender,className:void 0!==a.className?a.className:"",useShadows:void 0===a.useShadows||a.useShadows,handleMouseWheel:void 0===a.handleMouseWheel||a.handleMouseWheel,flipAxes:void 0!==a.flipAxes&&a.flipAxes,consumeMouseWheelIfScrollbarIsNeeded:void 0!==a.consumeMouseWheelIfScrollbarIsNeeded&&a.consumeMouseWheelIfScrollbarIsNeeded,alwaysConsumeMouseWheel:void 0!==a.alwaysConsumeMouseWheel&&a.alwaysConsumeMouseWheel,scrollYToX:void 0!==a.scrollYToX&&a.scrollYToX,mouseWheelScrollSensitivity:void 0!==a.mouseWheelScrollSensitivity?a.mouseWheelScrollSensitivity:1,fastScrollSensitivity:void 0!==a.fastScrollSensitivity?a.fastScrollSensitivity:5,scrollPredominantAxis:void 0===a.scrollPredominantAxis||a.scrollPredominantAxis,mouseWheelSmoothScroll:void 0===a.mouseWheelSmoothScroll||a.mouseWheelSmoothScroll,inertialScroll:void 0!==a.inertialScroll&&a.inertialScroll,arrowSize:void 0!==a.arrowSize?a.arrowSize:11,listenOnDomNode:void 0!==a.listenOnDomNode?a.listenOnDomNode:null,horizontal:void 0!==a.horizontal?a.horizontal:1,horizontalScrollbarSize:void 0!==a.horizontalScrollbarSize?a.horizontalScrollbarSize:10,horizontalSliderSize:void 0!==a.horizontalSliderSize?a.horizontalSliderSize:0,horizontalHasArrows:void 0!==a.horizontalHasArrows&&a.horizontalHasArrows,vertical:void 0!==a.vertical?a.vertical:1,verticalScrollbarSize:void 0!==a.verticalScrollbarSize?a.verticalScrollbarSize:10,verticalHasArrows:void 0!==a.verticalHasArrows&&a.verticalHasArrows,verticalSliderSize:void 0!==a.verticalSliderSize?a.verticalSliderSize:0,scrollByPage:void 0!==a.scrollByPage&&a.scrollByPage};return b.horizontalSliderSize=void 0!==a.horizontalSliderSize?a.horizontalSliderSize:b.horizontalScrollbarSize,b.verticalSliderSize=void 0!==a.verticalSliderSize?a.verticalSliderSize:b.verticalScrollbarSize,o.zx&&(b.className+=" mac"),b}(b),this._scrollable=c,this._register(this._scrollable.onScroll(a=>{this._onWillScroll.fire(a),this._onDidScroll(a),this._onScroll.fire(a)}));const d={onMouseWheel:a=>this._onMouseWheel(a),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new t(this._scrollable,this._options,d)),this._horizontalScrollbar=this._register(new s(this._scrollable,this._options,d)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(a),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=(0,f.Z)(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=(0,f.Z)(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=(0,f.Z)(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,a=>this._onMouseOver(a)),this.onmouseleave(this._listenOnDomNode,a=>this._onMouseLeave(a)),this._hideTimeout=this._register(new j.pc),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=(0,m.AS)(this._mouseWheelToDispose),this._inertialTimeout&&(this._inertialTimeout.dispose(),this._inertialTimeout=null),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarPointerDown(a){this._verticalScrollbar.delegatePointerDown(a)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(a){this._scrollable.setScrollDimensions(a,!1)}updateClassName(a){this._options.className=a,o.zx&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(a){void 0!==a.handleMouseWheel&&(this._options.handleMouseWheel=a.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),void 0!==a.mouseWheelScrollSensitivity&&(this._options.mouseWheelScrollSensitivity=a.mouseWheelScrollSensitivity),void 0!==a.fastScrollSensitivity&&(this._options.fastScrollSensitivity=a.fastScrollSensitivity),void 0!==a.scrollPredominantAxis&&(this._options.scrollPredominantAxis=a.scrollPredominantAxis),void 0!==a.horizontal&&(this._options.horizontal=a.horizontal),void 0!==a.vertical&&(this._options.vertical=a.vertical),void 0!==a.horizontalScrollbarSize&&(this._options.horizontalScrollbarSize=a.horizontalScrollbarSize),void 0!==a.verticalScrollbarSize&&(this._options.verticalScrollbarSize=a.verticalScrollbarSize),void 0!==a.scrollByPage&&(this._options.scrollByPage=a.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}delegateScrollFromMouseWheelEvent(a){this._onMouseWheel(new g.$(a))}async _periodicSync(){let a=!1;(0!==this._inertialSpeed.X||0!==this._inertialSpeed.Y)&&(this._scrollable.setScrollPositionNow({scrollTop:this._scrollable.getCurrentScrollPosition().scrollTop-100*this._inertialSpeed.Y,scrollLeft:this._scrollable.getCurrentScrollPosition().scrollLeft-100*this._inertialSpeed.X}),this._inertialSpeed.X*=.9,this._inertialSpeed.Y*=.9,.01>Math.abs(this._inertialSpeed.X)&&(this._inertialSpeed.X=0),.01>Math.abs(this._inertialSpeed.Y)&&(this._inertialSpeed.Y=0),a=0!==this._inertialSpeed.X||0!==this._inertialSpeed.Y),a?(this._inertialTimeout||(this._inertialTimeout=new j.pc),this._inertialTimeout.cancelAndSet(()=>this._periodicSync(),1e3/60)):(this._inertialTimeout?.dispose(),this._inertialTimeout=null)}_setListeningToMouseWheel(a){if(this._mouseWheelToDispose.length>0!==a&&(this._mouseWheelToDispose=(0,m.AS)(this._mouseWheelToDispose),a)){let a=a=>{this._onMouseWheel(new g.$(a))};this._mouseWheelToDispose.push((0,e.ko)(this._listenOnDomNode,e.Bx.MOUSE_WHEEL,a,{passive:!1}))}}_onMouseWheel(a){if(a.browserEvent?.defaultPrevented)return;let b=x.INSTANCE;b.acceptStandardWheelEvent(a);let c=!1;if(a.deltaY||a.deltaX){let d=a.deltaY*this._options.mouseWheelScrollSensitivity,e=a.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(this._options.scrollYToX&&e+d===0?e=d=0:Math.abs(d)>=Math.abs(e)?e=0:d=0),this._options.flipAxes&&([d,e]=[e,d]);let f=!o.zx&&a.browserEvent&&a.browserEvent.shiftKey;(this._options.scrollYToX||f)&&!e&&(e=d,d=0),a.browserEvent&&a.browserEvent.altKey&&(e*=this._options.fastScrollSensitivity,d*=this._options.fastScrollSensitivity);let g=this._scrollable.getFutureScrollPosition(),h={};if(d){let a=50*d,b=g.scrollTop-(a<0?Math.floor(a):Math.ceil(a));this._verticalScrollbar.writeScrollPosition(h,b)}if(e){let a=50*e,b=g.scrollLeft-(a<0?Math.floor(a):Math.ceil(a));this._horizontalScrollbar.writeScrollPosition(h,b)}if(h=this._scrollable.validateScrollPosition(h),this._options.inertialScroll&&(e||d)&&!b.isPhysicalMouseWheel()){let a=!1;0===this._inertialSpeed.X&&0===this._inertialSpeed.Y&&(a=!0),this._inertialSpeed.Y=(d<0?-1:1)*Math.abs(d)**1.02,this._inertialSpeed.X=(e<0?-1:1)*Math.abs(e)**1.02,a&&this._periodicSync()}(g.scrollLeft!==h.scrollLeft||g.scrollTop!==h.scrollTop)&&(this._options.mouseWheelSmoothScroll&&b.isPhysicalMouseWheel()?this._scrollable.setScrollPositionSmooth(h):this._scrollable.setScrollPositionNow(h),c=!0)}let d=c;!d&&this._options.alwaysConsumeMouseWheel&&(d=!0),!d&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(d=!0),d&&(a.preventDefault(),a.stopPropagation())}_onDidScroll(a){this._shouldRender=this._horizontalScrollbar.onDidScroll(a)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(a)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(this._shouldRender&&(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows)){let a=this._scrollable.getCurrentScrollPosition(),b=a.scrollTop>0,c=a.scrollLeft>0,d=c?" left":"",e=b?" top":"";this._leftShadowDomNode.setClassName(`shadow${d}`),this._topShadowDomNode.setClassName(`shadow${e}`),this._topLeftShadowDomNode.setClassName(`shadow${c||b?" top-left-corner":""}${e}${d}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseLeave(a){this._mouseIsOver=!1,this._hide()}_onMouseOver(a){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){this._mouseIsOver||this._isDragging||(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){this._mouseIsOver||this._isDragging||this._hideTimeout.cancelAndSet(()=>this._hide(),500)}}class z extends y{constructor(a,b){(b=b||{}).mouseWheelSmoothScroll=!1;const c=new v.yE({forceIntegerValues:!0,smoothScrollDuration:0,scheduleAtNextAnimationFrame:b=>(0,e.PG)((0,e.zk)(a),b)});super(a,b,c),this._register(c)}setScrollPosition(a){this._scrollable.setScrollPositionNow(a)}}class A extends y{constructor(a,b,c){super(a,b,c)}setScrollPosition(a){a.reuseAnimation?this._scrollable.setScrollPositionSmooth(a,a.reuseAnimation):this._scrollable.setScrollPositionNow(a)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class B extends y{constructor(a,b){(b=b||{}).mouseWheelSmoothScroll=!1;const c=new v.yE({forceIntegerValues:!1,smoothScrollDuration:0,scheduleAtNextAnimationFrame:b=>(0,e.PG)((0,e.zk)(a),b)});super(a,b,c),this._register(c),this._element=a,this._register(this.onScroll(a=>{a.scrollTopChanged&&(this._element.scrollTop=a.scrollTop),a.scrollLeftChanged&&(this._element.scrollLeft=a.scrollLeft)})),this.scanDomNode()}setScrollPosition(a){this._scrollable.setScrollPositionNow(a)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}},72663:(a,b,c)=>{"use strict";c.d(b,{Z:()=>f,l:()=>e});var d=c(58254);let e=(0,d.u1)("contextViewService"),f=(0,d.u1)("contextMenuService")},72816:(a,b,c)=>{"use strict";function d(){return globalThis._VSCODE_NLS_MESSAGES}function e(){return globalThis._VSCODE_NLS_LANGUAGE}c.d(b,{Ec:()=>d,aS:()=>j,i8:()=>e,kg:()=>h});let f="pseudo"===e()||"u">typeof document&&document.location&&"string"==typeof document.location.hash&&document.location.hash.indexOf("pseudo=true")>=0;function g(a,b){let c;return c=0===b.length?a:a.replace(/\{(\d+)\}/g,(a,c)=>{let d=b[c[0]],e=a;return"string"==typeof d?e=d:("number"==typeof d||"boolean"==typeof d||null==d)&&(e=String(d)),e}),f&&(c="["+c.replace(/[aouei]/g,"$&$&")+"]"),c}function h(a,b,...c){return"number"==typeof a?g(i(a,b),c):g(b,c)}function i(a,b){let c=d()?.[a];if("string"!=typeof c){if("string"==typeof b)return b;throw Error(`!!! NLS MISSING: ${a} !!!`)}return c}function j(a,b,...c){let d,e=g(d="number"==typeof a?i(a,b):b,c);return{value:e,original:b===d?e:g(b,c)}}},73298:(a,b,c)=>{"use strict";c.d(b,{f:()=>e});var d=c(95091);class e{get event(){return this.emitter.event}constructor(a,b,c){const e=a=>this.emitter.fire(a);this.emitter=new d.vl({onWillAddFirstListener:()=>a.addEventListener(b,e,c),onDidRemoveLastListener:()=>a.removeEventListener(b,e,c)})}dispose(){this.emitter.dispose()}}},73515:()=>{},74864:(a,b,c)=>{"use strict";var d,e;let f;c.d(b,{j:()=>d}),e=d||(d={}),f=!1,e.enable=function(){f=!0},e.ofCaller=function(){if(!f)return;let a=Error,b=a.stackTraceLimit;a.stackTraceLimit=3;let c=Error().stack;return a.stackTraceLimit=b,g.fromStack(c,2)};class g{static fromStack(a,b){let c=function(a){let b=a.match(/\((.*):(\d+):(\d+)\)/);if(b)return{fileName:b[1],line:parseInt(b[2]),column:parseInt(b[3]),id:a};let c=a.match(/at ([^\(\)]*):(\d+):(\d+)/);if(c)return{fileName:c[1],line:parseInt(c[2]),column:parseInt(c[3]),id:a}}(a.split("\n")[b+1]);return c?new g(c.fileName,c.line,c.column,c.id):void 0}constructor(a,b,c,d){this.fileName=a,this.line=b,this.column=c,this.id=d}}},74893:(a,b,c)=>{"use strict";c.d(b,{Z:()=>K,B:()=>G});var d,e=c(70687),f=c(76631),g=c(37758);class h{constructor(a){this.esmModuleLocation=a.esmModuleLocation,this.esmModuleLocationBundler=a.esmModuleLocationBundler,this.label=a.label}}var i=c(96820),j=c(61822),k=c(16202),l=c(13101),m=c(99817),n=c(50179),o=c(81309),p=c(37788),q=c(28672),r=c(66036),s=c(99851),t=c(27962),u=c(31526),v=c(1401),w=c(27612),x=c(75082),y=c(52559),z=c(14903),A=c(77497),B=c(30890),C=c(85214),D=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g},E=function(a,b){return function(c,d){b(c,d,a)}};function F(a,b){let c=a.getModel(b);return!(!c||c.isTooLargeForSyncing())}let G=class extends f.jG{static{d=this}static{this.workerDescriptor=new h({esmModuleLocation:()=>A.zl.asBrowserUri("vs/editor/common/services/editorWebWorkerMain.js"),esmModuleLocationBundler:()=>new c.U(c(63914)),label:"editorWorkerService"})}constructor(a,b,c,e,f,g){super(),this._languageConfigurationService=e,this._webWorkerService=g,this._modelService=a,this._workerManager=this._register(new I(d.workerDescriptor,this._modelService,this._webWorkerService)),this._logService=c,this._register(f.linkProvider.register({language:"*",hasAccessToAllModels:!0},{provideLinks:async(a,b)=>{if(!F(this._modelService,a.uri))return Promise.resolve({links:[]});let c=await this._workerWithResources([a.uri]),d=await c.$computeLinks(a.uri.toString());return d&&{links:d}}})),this._register(f.completionProvider.register("*",new H(this._workerManager,b,this._modelService,this._languageConfigurationService,this._logService,f)))}canComputeUnicodeHighlights(a){return F(this._modelService,a)}async computedUnicodeHighlights(a,b,c){return(await this._workerWithResources([a])).$computeUnicodeHighlights(a.toString(),b,c)}async computeDiff(a,b,c,d){let e=await this._workerWithResources([a,b],!0),f=await e.$computeDiff(a.toString(),b.toString(),c,d);if(!f)return null;return{identical:f.identical,quitEarly:f.quitEarly,changes:g(f.changes),moves:f.moves.map(a=>new t.t(new u.WL(new v.M(a[0],a[1]),new v.M(a[2],a[3])),g(a[4])))};function g(a){return a.map(a=>new u.wm(new v.M(a[0],a[1]),new v.M(a[2],a[3]),a[4]?.map(a=>new u.q6(new j.Q(a[0],a[1],a[2],a[3]),new j.Q(a[4],a[5],a[6],a[7])))))}}async computeMoreMinimalEdits(a,b,c=!1){if(!(0,o.EI)(b))return Promise.resolve(void 0);{if(!F(this._modelService,a))return Promise.resolve(b);let d=q.W.create(),f=this._workerWithResources([a]).then(d=>d.$computeMoreMinimalEdits(a.toString(),b,c));return f.finally(()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",a.toString(!0),d.elapsed())),Promise.race([f,(0,e.wR)(1e3).then(()=>b)])}}canNavigateValueSet(a){return F(this._modelService,a)}async navigateValueSet(a,b,c){let d=this._modelService.getModel(a);if(!d)return null;let e=this._languageConfigurationService.getLanguageConfiguration(d.getLanguageId()).getWordDefinition(),f=e.source,g=e.flags;return(await this._workerWithResources([a])).$navigateValueSet(a.toString(),b,c,f,g)}canComputeWordRanges(a){return F(this._modelService,a)}async computeWordRanges(a,b){let c=this._modelService.getModel(a);if(!c)return Promise.resolve(null);let d=this._languageConfigurationService.getLanguageConfiguration(c.getLanguageId()).getWordDefinition(),e=d.source,f=d.flags;return(await this._workerWithResources([a])).$computeWordRanges(a.toString(),b,e,f)}async findSectionHeaders(a,b){return(await this._workerWithResources([a])).$findSectionHeaders(a.toString(),b)}async computeDefaultDocumentColors(a){return(await this._workerWithResources([a])).$computeDefaultDocumentColors(a.toString())}async _workerWithResources(a,b=!1){let c=await this._workerManager.withWorker();return await c.workerWithSyncedResources(a,b)}};G=d=D([E(0,m.S),E(1,n.U),E(2,p.rr),E(3,k.JZ),E(4,s.u),E(5,i.d)],G);class H{constructor(a,b,c,d,e,f){this.languageConfigurationService=d,this.logService=e,this.languageFeaturesService=f,this._debugDisplayName="wordbasedCompletions",this._workerManager=a,this._configurationService=b,this._modelService=c}async provideCompletionItems(a,b){let c=this._configurationService.getValue(a.uri,b,"editor");if("off"===c.wordBasedSuggestions||"offWithInlineSuggestions"===c.wordBasedSuggestions&&this.languageFeaturesService.inlineCompletionsProvider.has(a)&&function(a,b,c="*"){let d=B.A.defaultChatAgent?.completionsEnablementSetting;return!!d&&function(a,b="*"){return!!(0,C.Gv)(a)&&(void 0!==a[b]?!!a[b]:!!a["*"])}(a.getValue(b,d),c)}(this._configurationService,a.uri,a.getLanguageId()))return;let d=[];if("currentDocument"===c.wordBasedSuggestions)F(this._modelService,a.uri)&&d.push(a.uri);else for(let b of this._modelService.getModels())F(this._modelService,b.uri)&&(b===a?d.unshift(b.uri):("allDocuments"===c.wordBasedSuggestions||b.getLanguageId()===a.getLanguageId())&&d.push(b.uri));if(0===d.length)return;let e=this.languageConfigurationService.getLanguageConfiguration(a.getLanguageId()).getWordDefinition(),f=a.getWordAtPosition(b),g=f?new j.Q(b.lineNumber,f.startColumn,b.lineNumber,f.endColumn):j.Q.fromPositions(b),h=g.setEndPosition(b.lineNumber,b.column);this.logService.trace("[WordBasedCompletionItemProvider]",`word: "${f?.word||""}", wordDef: "${e}", replace: [${g.toString()}], insert: [${h.toString()}]`);let i=await this._workerManager.withWorker(),k=await i.textualSuggest(d,f?.word,e);if(k)return{duration:k.duration,suggestions:k.words.map(a=>({kind:18,label:a,insertText:a,range:{insert:h,replace:g}}))}}}let I=class extends f.jG{constructor(a,b,c){super(),this._workerDescriptor=a,this._modelService=b,this._webWorkerService=c,this._editorWorkerClient=null,this._lastWorkerUsedTime=new Date().getTime(),this._register(new x.Be).cancelAndSet(()=>this._checkStopIdleWorker(),Math.round(15e4),w.G),this._register(this._modelService.onModelRemoved(a=>this._checkStopEmptyWorker()))}dispose(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),super.dispose()}_checkStopEmptyWorker(){this._editorWorkerClient&&0===this._modelService.getModels().length&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}_checkStopIdleWorker(){!this._editorWorkerClient||new Date().getTime()-this._lastWorkerUsedTime>3e5&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}withWorker(){return this._lastWorkerUsedTime=new Date().getTime(),this._editorWorkerClient||(this._editorWorkerClient=new K(this._workerDescriptor,!1,this._modelService,this._webWorkerService)),Promise.resolve(this._editorWorkerClient)}};I=D([E(1,m.S),E(2,i.d)],I);class J{constructor(a){this._instance=a,this.proxy=this._instance}dispose(){this._instance.dispose()}setChannel(a,b){throw Error("Not supported")}}let K=class extends f.jG{constructor(a,b,c,d){super(),this._workerDescriptorOrWorker=a,this._disposed=!1,this._modelService=c,this._webWorkerService=d,this._keepIdleModels=b,this._worker=null,this._modelManager=null}fhr(a,b){throw Error("Not implemented!")}_getOrCreateWorker(){if(!this._worker)try{this._worker=this._register(this._webWorkerService.createWorkerClient(this._workerDescriptorOrWorker)),z.M.setChannel(this._worker,this._createEditorWorkerHost())}catch(a){(0,g.IR)(a),this._worker=this._createFallbackLocalWorker()}return this._worker}async _getProxy(){try{let a=this._getOrCreateWorker().proxy;return await a.$ping(),a}catch(a){return(0,g.IR)(a),this._worker=this._createFallbackLocalWorker(),this._worker.proxy}}_createFallbackLocalWorker(){return new J(new l.Q(null))}_createEditorWorkerHost(){return{$fhr:(a,b)=>this.fhr(a,b)}}_getOrCreateModelManager(a){return this._modelManager||(this._modelManager=this._register(new y.RK(a,this._modelService,this._keepIdleModels))),this._modelManager}async workerWithSyncedResources(a,b=!1){if(this._disposed)return Promise.reject((0,r.aD)());let c=await this._getProxy();return this._getOrCreateModelManager(c).ensureSyncedResources(a,b),c}async textualSuggest(a,b,c){let d=await this.workerWithSyncedResources(a),e=c.source,f=c.flags;return d.$textualSuggest(a.map(a=>a.toString()),b,e,f)}dispose(){super.dispose(),this._disposed=!0}};K=D([E(2,m.S),E(3,i.d)],K)},75082:(a,b,c)=>{"use strict";let d,e,f,g,h,i,j,k,l,m,n;c.d(b,{$:()=>aL,BC:()=>aG,BK:()=>ac,Be:()=>X,Bx:()=>ay,Cl:()=>al,Di:()=>aS,Er:()=>aw,FK:()=>as,Fv:()=>N,H4:()=>ag,Hs:()=>aH,Iv:()=>L,J$:()=>U,L9:()=>Z,Ln:()=>aI,OK:()=>ah,Oq:()=>d,PG:()=>e,Pl:()=>aF,Q2:()=>J,QX:()=>ai,Tr:()=>ae,U3:()=>W,WU:()=>aN,X7:()=>ao,XD:()=>aj,YE:()=>G,ZF:()=>K,_9:()=>T,a:()=>aq,bo:()=>aM,bq:()=>an,cL:()=>ab,fg:()=>aa,fs:()=>aA,fz:()=>ar,h:()=>aV,i0:()=>aR,jD:()=>aO,jG:()=>am,jh:()=>aQ,ko:()=>R,kx:()=>ax,mU:()=>ad,nR:()=>ap,nY:()=>au,pN:()=>aT,q3:()=>M,sb:()=>at,sd:()=>az,sl:()=>H,tG:()=>$,un:()=>S,vT:()=>aP,w5:()=>aE,w_:()=>P,wk:()=>aC,xZ:()=>av,xb:()=>V,y6:()=>af,yD:()=>aX,zK:()=>aB,zk:()=>F}),c(47322);var o,p,q,r=c(39870),s=c(62677),t=c(46857),u=c(70687),v=c(66036),w=c(95091),x=c(76631),y=c(77497),z=c(18216),A=c(40427),B=c(27612);c(94484);var C=c(14960),D=c(34547),E=c(87175);let{getWindow:F,getDocument:G,getWindows:H,getWindowsCount:I,getWindowId:J,getWindowById:K,onDidRegisterWindow:L,onWillUnregisterWindow:M,onDidUnregisterWindow:N}=(f=new Map,(0,B.y)(B.G,1),g={window:B.G,disposables:new x.Cm},f.set(B.G.vscodeWindowId,g),h=new w.vl,i=new w.vl,j=new w.vl,{onDidRegisterWindow:h.event,onWillUnregisterWindow:j.event,onDidUnregisterWindow:i.event,registerWindow(a){if(f.has(a.vscodeWindowId))return x.jG.None;let b=new x.Cm,c={window:a,disposables:b.add(new x.Cm)};return f.set(a.vscodeWindowId,c),b.add((0,x.s)(()=>{f.delete(a.vscodeWindowId),i.fire(a)})),b.add(R(a,ay.BEFORE_UNLOAD,()=>{j.fire(a)})),h.fire(c),b},getWindows:()=>f.values(),getWindowsCount:()=>f.size,getWindowId:a=>a.vscodeWindowId,hasWindow:a=>f.has(a),getWindowById:function(a,b){return("number"==typeof a?f.get(a):void 0)??(b?g:void 0)},getWindow:a=>a?.ownerDocument?.defaultView?a.ownerDocument.defaultView.window:a?.view?a.view.window:B.G,getDocument:a=>F(a).document}),O=new Set;function P(a){for(;a.firstChild;)a.firstChild.remove()}class Q{constructor(a,b,c,d){this._node=a,this._type=b,this._handler=c,this._options=d||!1,this._node.addEventListener(this._type,this._handler,this._options)}dispose(){this._handler&&(this._node.removeEventListener(this._type,this._handler,this._options),this._node=null,this._handler=null)}}function R(a,b,c,d){return new Q(a,b,c,d)}let S=function(a,b,c,d){var e;let f=c;return"click"===b||"mousedown"===b||"contextmenu"===b?(e=F(a),f=function(a){return c(new t.P(e,a))}):("keydown"===b||"keypress"===b||"keyup"===b)&&(f=function(a){return c(new s.Z(a))}),R(a,b,f,d)};function T(a,b,c){return R(a,z.un&&r.e.pointerEvents?ay.POINTER_DOWN:ay.MOUSE_DOWN,b,c)}function U(a,b,c){return R(a,z.un&&r.e.pointerEvents?ay.POINTER_MOVE:ay.MOUSE_MOVE,b,c)}function V(a,b,c){return R(a,z.un&&r.e.pointerEvents?ay.POINTER_UP:ay.MOUSE_UP,b,c)}function W(a,b,c){return(0,u.b7)(a,b,c)}u.A0;class X extends u.vb{constructor(a){super(),this.defaultTarget=a&&F(a)}cancelAndSet(a,b,c){return super.cancelAndSet(a,b,c??this.defaultTarget)}}class Y{constructor(a,b=0){this._runner=a,this.priority=b,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(!this._canceled)try{this._runner()}catch(a){(0,v.dz)(a)}}static sort(a,b){return b.priority-a.priority}}function Z(a){return F(a).getComputedStyle(a,null)}function $(a,b,c){let d=F(a),e=d.document;if(a!==e.body)return new aa(a.clientWidth,a.clientHeight);if(z.un&&d?.visualViewport)return new aa(d.visualViewport.width,d.visualViewport.height);if(d?.innerWidth&&d.innerHeight)return new aa(d.innerWidth,d.innerHeight);if(e.body&&e.body.clientWidth&&e.body.clientHeight)return new aa(e.body.clientWidth,e.body.clientHeight);if(e.documentElement&&e.documentElement.clientWidth&&e.documentElement.clientHeight)return new aa(e.documentElement.clientWidth,e.documentElement.clientHeight);throw Error("Unable to figure out browser width and height")}k=new Map,l=new Map,m=new Map,n=new Map,e=(a,b,c=0)=>{let d=J(a),e=new Y(b,c),f=k.get(d);return f||(f=[],k.set(d,f)),f.push(e),m.get(d)||(m.set(d,!0),a.requestAnimationFrame(()=>(a=>{m.set(a,!1);let b=k.get(a)??[];for(l.set(a,b),k.set(a,[]),n.set(a,!0);b.length>0;)b.sort(Y.sort),b.shift().execute();n.set(a,!1)})(d))),e},d=(a,b,c)=>{let d=J(a);if(!n.get(d))return e(a,b,c);{let a=new Y(b,c),e=l.get(d);return e||(e=[],l.set(d,e)),e.push(a),a}};class _{static convertToPixels(a,b){return parseFloat(b)||0}static getDimension(a,b){let c=Z(a),d=c?c.getPropertyValue(b):"0";return _.convertToPixels(a,d)}static getBorderLeftWidth(a){return _.getDimension(a,"border-left-width")}static getBorderRightWidth(a){return _.getDimension(a,"border-right-width")}static getBorderTopWidth(a){return _.getDimension(a,"border-top-width")}static getBorderBottomWidth(a){return _.getDimension(a,"border-bottom-width")}static getPaddingLeft(a){return _.getDimension(a,"padding-left")}static getPaddingRight(a){return _.getDimension(a,"padding-right")}static getPaddingTop(a){return _.getDimension(a,"padding-top")}static getPaddingBottom(a){return _.getDimension(a,"padding-bottom")}static getMarginLeft(a){return _.getDimension(a,"margin-left")}static getMarginTop(a){return _.getDimension(a,"margin-top")}static getMarginRight(a){return _.getDimension(a,"margin-right")}static getMarginBottom(a){return _.getDimension(a,"margin-bottom")}}class aa{static{this.None=new aa(0,0)}constructor(a,b){this.width=a,this.height=b}with(a=this.width,b=this.height){return a!==this.width||b!==this.height?new aa(a,b):this}static is(a){return"object"==typeof a&&"number"==typeof a.height&&"number"==typeof a.width}static lift(a){return a instanceof aa?a:new aa(a.width,a.height)}static equals(a,b){return a===b||!!a&&!!b&&a.width===b.width&&a.height===b.height}}function ab(a){let b=a.offsetParent,c=a.offsetTop,d=a.offsetLeft;for(;null!==(a=a.parentNode)&&a!==a.ownerDocument.body&&a!==a.ownerDocument.documentElement;){c-=a.scrollTop;let e=ak(a)?null:Z(a);e&&(d-="rtl"!==e.direction?a.scrollLeft:-a.scrollLeft),a===b&&(d+=_.getBorderLeftWidth(a),c+=_.getBorderTopWidth(a),c+=a.offsetTop,d+=a.offsetLeft,b=a.offsetParent)}return{left:d,top:c}}function ac(a){let b=a.getBoundingClientRect(),c=F(a);return{left:b.left+c.scrollX,top:b.top+c.scrollY,width:b.width,height:b.height}}function ad(a){let b=a,c=1;do{let a=Z(b).zoom;null!=a&&"1"!==a&&(c*=a),b=b.parentElement}while(null!==b&&b!==b.ownerDocument.documentElement);return c}function ae(a){let b=_.getMarginLeft(a)+_.getMarginRight(a);return a.offsetWidth+b}function af(a){let b=_.getBorderLeftWidth(a)+_.getBorderRightWidth(a),c=_.getPaddingLeft(a)+_.getPaddingRight(a);return a.offsetWidth-b-c}function ag(a){let b=_.getBorderTopWidth(a)+_.getBorderBottomWidth(a),c=_.getPaddingTop(a)+_.getPaddingBottom(a);return a.offsetHeight-b-c}function ah(a){let b=_.getMarginTop(a)+_.getMarginBottom(a);return a.offsetHeight+b}function ai(a,b){return!!b?.contains(a)}function aj(a,b,c){return!!function(a,b,c){for(;a&&a.nodeType===a.ELEMENT_NODE;){if(a.classList.contains(b))return a;if(c){if("string"==typeof c){if(a.classList.contains(c))break}else if(a===c)break}a=a.parentNode}return null}(a,b,c)}function ak(a){return a&&!!a.host&&!!a.mode}function al(a){return!!am(a)}function am(a){for(;a.parentNode;){if(a===a.ownerDocument?.body)return null;a=a.parentNode}return ak(a)?a:null}function an(){let a=aq().activeElement;for(;a?.shadowRoot;)a=a.shadowRoot.activeElement;return a}function ao(a){return an()===a}function ap(a){return ai(an(),a)}function aq(){if(1>=I())return B.G.document;let a=Array.from(H()).map(({window:a})=>a.document).find(a=>a.hasFocus());if(a)return a;let b=function(){for(let a of O){let b=a();if(b.hasFocus&&b.window)return b.window}}();return b?b.document:B.G.document}function ar(){let a=aq();return a.defaultView?.window??B.G}let as=new class{constructor(){this.mutationObservers=new Map}observe(a,b,c){let d=this.mutationObservers.get(a);d||(d=new Map,this.mutationObservers.set(a,d));let e=(0,A.tW)(c),f=d.get(e);if(f)f.users+=1;else{let g=new w.vl,h=new MutationObserver(a=>g.fire(a));h.observe(a,c);let i=f={users:1,observer:h,onDidMutate:g.event};b.add((0,x.s)(()=>{i.users-=1,0===i.users&&(g.dispose(),h.disconnect(),d?.delete(e),d?.size===0&&this.mutationObservers.delete(a))})),d.set(e,f)}return f.onDidMutate}};function at(a){return a instanceof HTMLElement||a instanceof F(a).HTMLElement}function au(a){return a instanceof HTMLAnchorElement||a instanceof F(a).HTMLAnchorElement}function av(a){return a instanceof SVGElement||a instanceof F(a).SVGElement}function aw(a){return a instanceof MouseEvent||a instanceof F(a).MouseEvent}function ax(a){return a instanceof KeyboardEvent||a instanceof F(a).KeyboardEvent}let ay={CLICK:"click",AUXCLICK:"auxclick",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",POINTER_LEAVE:"pointerleave",CONTEXT_MENU:"contextmenu",KEY_DOWN:"keydown",KEY_UP:"keyup",BEFORE_UNLOAD:"beforeunload",RESIZE:"resize",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend"};function az(a){return!!(a&&"function"==typeof a.preventDefault&&"function"==typeof a.stopPropagation)}let aA={stop:(a,b)=>(a.preventDefault(),b&&a.stopPropagation(),a)};function aB(a){let b=[];for(let c=0;a&&a.nodeType===a.ELEMENT_NODE;c++)b[c]=a.scrollTop,a=a.parentNode;return b}function aC(a,b){for(let c=0;a&&a.nodeType===a.ELEMENT_NODE;c++)a.scrollTop!==b[c]&&(a.scrollTop=b[c]),a=a.parentNode}class aD extends x.jG{get onDidFocus(){return this._onDidFocus.event}get onDidBlur(){return this._onDidBlur.event}static hasFocusWithin(a){if(!at(a))return ai(a.document.activeElement,a.document);{let b=am(a);return ai(b?b.activeElement:a.ownerDocument.activeElement,a)}}constructor(a){super(),this._onDidFocus=this._register(new w.vl),this._onDidBlur=this._register(new w.vl);let b=aD.hasFocusWithin(a),c=!1;const d=()=>{c=!1,b||(b=!0,this._onDidFocus.fire())},e=()=>{b&&(c=!0,(at(a)?F(a):a).setTimeout(()=>{c&&(c=!1,b=!1,this._onDidBlur.fire())},0))};this._refreshStateHandler=()=>{aD.hasFocusWithin(a)!==b&&(b?e():d())},this._register(R(a,ay.FOCUS,d,!0)),this._register(R(a,ay.BLUR,e,!0)),at(a)&&(this._register(R(a,ay.FOCUS_IN,()=>this._refreshStateHandler())),this._register(R(a,ay.FOCUS_OUT,()=>this._refreshStateHandler())))}}function aE(a){return new aD(a)}function aF(a,b){return a.after(b),b}function aG(a,...b){if(a.append(...b),1===b.length&&"string"!=typeof b[0])return b[0]}function aH(a,b){return a.insertBefore(b,a.firstChild),b}function aI(a,...b){a.textContent="",aG(a,...b)}let aJ=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;function aK(a,b,c,...d){let e,f=aJ.exec(b);if(!f)throw Error("Bad use of emmet");let g=f[1]||"div";return e=a!==p.HTML?document.createElementNS(a,g):document.createElement(g),f[3]&&(e.id=f[3]),f[4]&&(e.className=f[4].replace(/\./g," ").trim()),c&&Object.entries(c).forEach(([a,b])=>{void 0!==b&&(/^on\w+$/.test(a)?e[a]=b:"selected"===a?b&&e.setAttribute(a,"true"):e.setAttribute(a,b))}),e.append(...d),e}function aL(a,b,...c){return aK(p.HTML,a,b,...c)}function aM(a,...b){a?aN(...b):aO(...b)}function aN(...a){for(let b of a)b.style.display="",b.removeAttribute("aria-hidden")}function aO(...a){for(let b of a)b.style.display="none",b.setAttribute("aria-hidden","true")}function aP(a,b){return Math.max(1,Math.floor(a.devicePixelRatio*b))/a.devicePixelRatio}function aQ(a){B.G.open(a,"_blank","noopener")}function aR(a,b){let c=()=>{b(),d=e(a,c)},d=e(a,c);return(0,x.s)(()=>d.dispose())}(o=p||(p={})).HTML="http://www.w3.org/1999/xhtml",o.SVG="http://www.w3.org/2000/svg",aL.SVG=function(a,b,...c){return aK(p.SVG,a,b,...c)},y.Ez.setPreferredWebSchema(/^https:/.test(B.G.location.href)?"https":"http");class aS extends w.vl{constructor(){super(),this._subscriptions=new x.Cm,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(w.Jh.runAndSubscribe(L,({window:a,disposables:b})=>this.registerListeners(a,b),{window:B.G,disposables:this._subscriptions}))}registerListeners(a,b){b.add(R(a,"keydown",a=>{if(a.defaultPrevented)return;let b=new s.Z(a);if(6!==b.keyCode||!a.repeat){if(a.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(a.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(a.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(a.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else{if(6===b.keyCode)return;this._keyStatus.lastKeyPressed=void 0}this._keyStatus.altKey=a.altKey,this._keyStatus.ctrlKey=a.ctrlKey,this._keyStatus.metaKey=a.metaKey,this._keyStatus.shiftKey=a.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=a,this.fire(this._keyStatus))}},!0)),b.add(R(a,"keyup",a=>{!a.defaultPrevented&&(!a.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!a.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!a.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!a.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=a.altKey,this._keyStatus.ctrlKey=a.ctrlKey,this._keyStatus.metaKey=a.metaKey,this._keyStatus.shiftKey=a.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=a,this.fire(this._keyStatus)))},!0)),b.add(R(a.document.body,"mousedown",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),b.add(R(a.document.body,"mouseup",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),b.add(R(a.document.body,"mousemove",a=>{a.buttons&&(this._keyStatus.lastKeyPressed=void 0)},!0)),b.add(R(a,"blur",()=>{this.resetKeyStatus()}))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return aS.instance||(aS.instance=new aS),aS.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}class aT extends x.jG{constructor(a,b){super(),this.element=a,this.callbacks=b,this.counter=0,this.dragStartTime=0,this.registerListeners()}registerListeners(){this.callbacks.onDragStart&&this._register(R(this.element,ay.DRAG_START,a=>{this.callbacks.onDragStart?.(a)})),this.callbacks.onDrag&&this._register(R(this.element,ay.DRAG,a=>{this.callbacks.onDrag?.(a)})),this._register(R(this.element,ay.DRAG_ENTER,a=>{this.counter++,this.dragStartTime=a.timeStamp,this.callbacks.onDragEnter?.(a)})),this._register(R(this.element,ay.DRAG_OVER,a=>{a.preventDefault(),this.callbacks.onDragOver?.(a,a.timeStamp-this.dragStartTime)})),this._register(R(this.element,ay.DRAG_LEAVE,a=>{this.counter--,0===this.counter&&(this.dragStartTime=0,this.callbacks.onDragLeave?.(a))})),this._register(R(this.element,ay.DRAG_END,a=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDragEnd?.(a)})),this._register(R(this.element,ay.DROP,a=>{this.counter=0,this.dragStartTime=0,this.callbacks.onDrop?.(a)}))}}let aU=/(?<tag>[\w\-]+)?(?:#(?<id>[\w\-]+))?(?<class>(?:\.(?:[\w\-]+))*)(?:@(?<name>(?:[\w\_])+))?/;function aV(a,...b){let c,d;Array.isArray(b[0])?(c={},d=b[0]):(c=b[0]||{},d=b[1]);let e=aU.exec(a);if(!e||!e.groups)throw Error("Bad use of h");let f=e.groups.tag||"div",g=document.createElement(f);e.groups.id&&(g.id=e.groups.id);let h=[];if(e.groups.class)for(let a of e.groups.class.split("."))""!==a&&h.push(a);if(void 0!==c.className)for(let a of c.className.split("."))""!==a&&h.push(a);h.length>0&&(g.className=h.join(" "));let i={};if(e.groups.name&&(i[e.groups.name]=g),d)for(let a of d)at(a)?g.appendChild(a):"string"==typeof a?g.append(a):"root"in a&&(Object.assign(i,a),g.appendChild(a.root));for(let[a,b]of Object.entries(c))if("className"===a)continue;else if("style"===a)for(let[a,c]of Object.entries(b))g.style.setProperty(aW(a),"number"==typeof c?c+"px":""+c);else"tabIndex"===a?g.tabIndex=b:g.setAttribute(aW(a),b.toString());return i.root=g,i}function aW(a){return a.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function aX(a){return"input"===a.tagName.toLowerCase()||"textarea"===a.tagName.toLowerCase()||at(a)&&!!a.editContext}var aY=q||(q={});function aZ(a){return(b,c,d)=>{let e=c.class;delete c.class;let f=c.ref;delete c.ref;let g=c.obsRef;return delete c.obsRef,new a4(b,f,g,a,e,c,d)}}function a$(a,b){let c=aZ(b);return(b,d)=>c(a,b,d)}aY.div=a$("div"),aY.elem=aZ(void 0),aY.svg=a$("svg","http://www.w3.org/2000/svg"),aY.svgElem=aZ("http://www.w3.org/2000/svg"),aY.ref=function(){let a,b=function(b){a=b};return Object.defineProperty(b,"element",{get(){if(!a)throw new v.D7("Make sure the ref is set before accessing the element. Maybe wrong initialization order?");return a}}),b};class a_{constructor(a,b,c,d,e,f,g){for(const[g,h]of(this._deriveds=[],this._isHovered=void 0,this._didMouseMoveDuringHover=void 0,this._element=d?document.createElementNS(d,a):document.createElement(a),b&&b(this._element),c&&this._deriveds.push((0,C.un)(a=>{c(this),a.store.add({dispose:()=>{c(null)}})})),e&&(!function a(b){return!!(0,D.AT)(b)||!!Array.isArray(b)&&b.some(b=>a(b))}(e)?a0(this._element,a1(e,void 0)):this._deriveds.push((0,C.un)(this,a=>{a0(this._element,a1(e,a))}))),Object.entries(f)))if("style"===g)for(const[a,b]of Object.entries(h)){const c=aW(a);(0,D.AT)(b)?this._deriveds.push((0,C.C)({owner:this,debugName:()=>`set.style.${c}`},a=>{this._element.style.setProperty(c,a2(b.read(a)))})):this._element.style.setProperty(c,a2(b))}else"tabIndex"===g?(0,D.AT)(h)?this._deriveds.push((0,C.un)(this,a=>{this._element.tabIndex=h.read(a)})):this._element.tabIndex=h:g.startsWith("on")?this._element[g]=h:(0,D.AT)(h)?this._deriveds.push((0,C.C)({owner:this,debugName:()=>`set.${g}`},a=>{a5(this._element,g,h.read(a))})):a5(this._element,g,h);if(g){const a=(0,C.un)(this,a=>{this._element.replaceChildren(...function a(b,c){return(0,D.AT)(c)?a(b,c.read(b)):Array.isArray(c)?c.flatMap(c=>a(b,c)):c instanceof a_?(b&&c.readEffect(b),[c._element]):c?[c]:[]}(a,g))});this._deriveds.push(a),!function a(b){return!!(0,D.AT)(b)||!!Array.isArray(b)&&b.some(b=>a(b))}(g)&&a.get()}}readEffect(a){for(let b of this._deriveds)b.read(a)}keepUpdated(a){return(0,C.un)(a=>{this.readEffect(a)}).recomputeInitiallyAndOnChange(a),this}toDisposableLiveElement(){let a=new x.Cm;return this.keepUpdated(a),new a3(this._element,a)}get isHovered(){if(!this._isHovered){let a=(0,E.FY)("hovered",!1);this._element.addEventListener("mouseenter",b=>a.set(!0,void 0)),this._element.addEventListener("mouseleave",b=>a.set(!1,void 0)),this._isHovered=a}return this._isHovered}get didMouseMoveDuringHover(){if(!this._didMouseMoveDuringHover){let a=!1,b=(0,E.FY)("didMouseMoveDuringHover",!1);this._element.addEventListener("mouseenter",b=>{a=!0}),this._element.addEventListener("mousemove",c=>{a&&b.set(!0,void 0)}),this._element.addEventListener("mouseleave",c=>{a=!1,b.set(!1,void 0)}),this._didMouseMoveDuringHover=b}return this._didMouseMoveDuringHover}}function a0(a,b){av(a)?a.setAttribute("class",b):a.className=b}function a1(a,b){let c="";return!function a(b,c,d){if((0,D.AT)(b))return void d(b.read(c));if(Array.isArray(b)){for(let e of b)a(e,c,d);return}d(b)}(a,b,a=>{a&&(0===c.length?c=a:c+=" "+a)}),c}function a2(a){return"number"==typeof a?a+"px":a}class a3{constructor(a,b){this.element=a,this._disposable=b}dispose(){this._disposable.dispose()}}class a4 extends a_{get element(){return this._element}}function a5(a,b,c){null==c?a.removeAttribute(aW(b)):a.setAttribute(aW(b),String(c))}class a6 extends HTMLElement{disconnectedCallback(){this.onDidDisconnect?.()}connectedCallback(){this.onDidConnect?.()}}customElements.get("connection-observer")||customElements.define("connection-observer",a6)},75444:(a,b,c)=>{"use strict";c.d(b,{AO:()=>z,Dr:()=>A,Hs:()=>E,K4:()=>t,Ls:()=>y,Tl:()=>v,UN:()=>C,YA:()=>B,dU:()=>r,ey:()=>P,h0:()=>D,is:()=>w,kr:()=>x,oi:()=>u,sx:()=>s});var d=c(66036),e=c(26529),f=c(12017),g=c(75842),h=c(41577),i=c(48580),j=c(33641),k=c(61822),l=c(6812),m=c(97195),n=c(16202),o=c(99807),p=c(65666),q=c(39383);class r{static getEdits(a,b,c,d,e){if(!e&&this._isAutoIndentType(a,b,c)){let e=[];for(let f of c){let c=this._findActualIndentationForSelection(a,b,f,d);if(null===c)return;e.push({selection:f,indentation:c})}let f=u.getAutoClosingPairClose(a,b,c,d,!1);return this._getIndentationAndAutoClosingPairEdits(a,b,e,d,f)}}static _isAutoIndentType(a,b,c){if(a.autoIndent<4)return!1;for(let a=0,d=c.length;a<d;a++)if(!b.tokenization.isCheapToTokenize(c[a].getEndPosition().lineNumber))return!1;return!0}static _findActualIndentationForSelection(a,b,c,d){let e=(0,p._t)(a,b,c,d,{shiftIndent:b=>N(a,b),unshiftIndent:b=>O(a,b)},a.languageConfigurationService);if(null===e)return null;let f=(0,n.Cw)(b,c.startLineNumber,c.startColumn);return e===a.normalizeIndentation(f)?null:e}static _getIndentationAndAutoClosingPairEdits(a,b,c,d,e){let f=c.map(({selection:c,indentation:f})=>{if(null!==e)return new G(this._getEditFromIndentationAndSelection(a,b,f,c,d,!1),c,d,e);{let e=this._getEditFromIndentationAndSelection(a,b,f,c,d,!0);return M(e.range,e.text,!1)}});return new i.vY(4,f,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static _getEditFromIndentationAndSelection(a,b,c,d,e,f=!0){let g=d.startLineNumber,h=b.getLineFirstNonWhitespaceColumn(g),i=a.normalizeIndentation(c);return 0!==h&&(i+=b.getLineContent(g).substring(h-1,d.startColumn-1)),i+=f?e:"",{range:new k.Q(g,1,d.endLineNumber,d.endColumn),text:i}}}class s{static getEdits(a,b,c,d,e,f){if(L(b,c,d,e,f))return this._runAutoClosingOvertype(a,d,f)}static _runAutoClosingOvertype(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++){let e=b[a].getPosition(),g=new k.Q(e.lineNumber,e.column,e.lineNumber,e.column+1);d[a]=new f.iu(g,c)}return new i.vY(4,d,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}}class t{static getEdits(a,b,c,d,e){if(L(a,b,c,d,e)){let a=c.map(a=>new f.iu(new k.Q(a.positionLineNumber,a.positionColumn,a.positionLineNumber,a.positionColumn+1),"",!1));return new i.vY(4,a,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}}class u{static getEdits(a,b,c,d,e,f){if(!f){let f=this.getAutoClosingPairClose(a,b,c,d,e);if(null!==f)return this._runAutoClosingOpenCharType(c,d,e,f)}}static _runAutoClosingOpenCharType(a,b,c,d){let e=[];for(let f=0,g=a.length;f<g;f++){let g=a[f];e[f]=new F(g,b,!c,d)}return new i.vY(4,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}static getAutoClosingPairClose(a,b,c,d,e){let f,g;for(let a of c)if(!a.isEmpty())return null;let h=c.map(a=>{let b=a.getPosition();return e?{lineNumber:b.lineNumber,beforeColumn:b.column-d.length,afterColumn:b.column}:{lineNumber:b.lineNumber,beforeColumn:b.column,afterColumn:b.column}}),k=this._findAutoClosingPairOpen(a,b,h.map(a=>new l.y(a.lineNumber,a.beforeColumn)),d);if(!k||((0,i.vG)(d)?(f=a.autoClosingQuotes,g=a.shouldAutoCloseBefore.quote):a.blockCommentStartToken&&k.open.includes(a.blockCommentStartToken)?(f=a.autoClosingComments,g=a.shouldAutoCloseBefore.comment):(f=a.autoClosingBrackets,g=a.shouldAutoCloseBefore.bracket),"never"===f))return null;let m=this._findContainedAutoClosingPair(a,k),n=m?m.close:"",p=!0;for(let c of h){let{lineNumber:e,beforeColumn:h,afterColumn:i}=c,l=b.getLineContent(e),m=l.substring(0,h-1),q=l.substring(i-1);if(q.startsWith(n)||(p=!1),q.length>0){let b=q.charAt(0);if(!this._isBeforeClosingBrace(a,q)&&!g(b))return null}if(1===k.open.length&&("'"===d||'"'===d)&&"always"!==f){let b=(0,j.i)(a.wordSeparators,[]);if(m.length>0){let a=m.charCodeAt(m.length-1);if(0===b.get(a))return null}}if(!b.tokenization.isCheapToTokenize(e))return null;b.tokenization.forceTokenization(e);let r=b.tokenization.getLineTokens(e),s=(0,o.BQ)(r,h-1);if(!k.shouldAutoClose(s,h-s.firstCharOffset))return null;let t=k.findNeutralCharacter();if(t){let a=b.tokenization.getTokenTypeIfInsertingCharacter(e,h,t);if(!k.isOK(a))return null}}return p?k.close.substring(0,k.close.length-n.length):k.close}static _findContainedAutoClosingPair(a,b){if(b.open.length<=1)return null;let c=b.close.charAt(b.close.length-1),d=a.autoClosingPairs.autoClosingPairsCloseByEnd.get(c)||[],e=null;for(let a of d)a.open!==b.open&&b.open.includes(a.open)&&b.close.endsWith(a.close)&&(!e||a.open.length>e.open.length)&&(e=a);return e}static _findAutoClosingPairOpen(a,b,c,d){let e=a.autoClosingPairs.autoClosingPairsOpenByEnd.get(d);if(!e)return null;let f=null;for(let a of e)if(null===f||a.open.length>f.open.length){let e=!0;for(let f of c)if(b.getValueInRange(new k.Q(f.lineNumber,f.column-a.open.length+1,f.lineNumber,f.column))+d!==a.open){e=!1;break}e&&(f=a)}return f}static _isBeforeClosingBrace(a,b){let c=b.charAt(0),d=a.autoClosingPairs.autoClosingPairsOpenByStart.get(c)||[],e=a.autoClosingPairs.autoClosingPairsCloseByStart.get(c)||[],f=d.some(a=>b.startsWith(a.open)),g=e.some(a=>b.startsWith(a.close));return!f&&g}}class v{static getEdits(a,b){if("overtype"!==a.inputMode)return null;let c=b.map(a=>new f.gr(a.insertedTextRange));return new i.vY(4,c,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}class w{static getEdits(a,b,c,d,e){if(!e&&this._isSurroundSelectionType(a,b,c,d))return this._runSurroundSelectionType(a,c,d)}static _runSurroundSelectionType(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=a.surroundingPairs[c];d[e]=new h.i(f,c,g)}return new i.vY(0,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _isSurroundSelectionType(a,b,c,d){if(!P(a,d)||!a.surroundingPairs.hasOwnProperty(d))return!1;let e=(0,i.vG)(d);for(let a of c){if(a.isEmpty())return!1;let c=!0;for(let d=a.startLineNumber;d<=a.endLineNumber;d++){let e=b.getLineContent(d),f=d===a.startLineNumber?a.startColumn-1:0,g=d===a.endLineNumber?a.endColumn-1:e.length,h=e.substring(f,g);if(/[^ \t]/.test(h)){c=!1;break}}if(c)return!1;if(e&&a.startLineNumber===a.endLineNumber&&a.startColumn+1===a.endColumn){let c=b.getValueInRange(a);if((0,i.vG)(c))return!1}}return!0}}class x{static getEdits(a,b,c,d,e,f){if(!f&&this._isTypeInterceptorElectricChar(b,c,d)){let f=this._typeInterceptorElectricChar(a,b,c,d[0],e);if(f)return f}}static _isTypeInterceptorElectricChar(a,b,c){return!!(1===c.length&&b.tokenization.isCheapToTokenize(c[0].getEndPosition().lineNumber))}static _typeInterceptorElectricChar(a,b,c,g,h){let j;if(!b.electricChars.hasOwnProperty(h)||!g.isEmpty())return null;let l=g.getPosition();c.tokenization.forceTokenization(l.lineNumber);let m=c.tokenization.getLineTokens(l.lineNumber);try{j=b.onElectricCharacter(h,m,l.column)}catch(a){return(0,d.dz)(a),null}if(!j)return null;if(j.matchOpenBracket){let d=(m.getLineContent()+h).lastIndexOf(j.matchOpenBracket)+1,g=c.bracketPairs.findMatchingBracketUp(j.matchOpenBracket,{lineNumber:l.lineNumber,column:d},500);if(g){if(g.startLineNumber===l.lineNumber)return null;let d=c.getLineContent(g.startLineNumber),j=(0,e.UU)(d),m=b.normalizeIndentation(j),n=c.getLineContent(l.lineNumber),o=c.getLineFirstNonWhitespaceColumn(l.lineNumber)||l.column,p=m+n.substring(o-1,l.column-1)+h,q=new k.Q(l.lineNumber,1,l.lineNumber,l.column),r=new f.iu(q,p);return new i.vY(H(p,a),[r],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!0})}}return null}}class y{static getEdits(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h="overtype"!==a.inputMode||e?f.iu:f.AS;g[b]=new h(c[b],d)}let h=H(d,b);return new i.vY(h,g,{shouldPushStackElementBefore:I(b,h),shouldPushStackElementAfter:!1})}}class z{static getEdits(a,b,c,d,e){if(!e&&"\n"===d){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!1,c[e]);return new i.vY(4,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}}static _enter(a,b,c,d){if(0===a.autoIndent)return M(d,"\n",c);if(!b.tokenization.isCheapToTokenize(d.getStartPosition().lineNumber)||1===a.autoIndent){let f=b.getLineContent(d.startLineNumber),g=(0,e.UU)(f).substring(0,d.startColumn-1);return M(d,"\n"+a.normalizeIndentation(g),c)}let g=(0,q.h)(a.autoIndent,b,d,a.languageConfigurationService);if(g){if(g.indentAction===m.l.None)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.Indent)return M(d,"\n"+a.normalizeIndentation(g.indentation+g.appendText),c);else if(g.indentAction===m.l.IndentOutdent){let b=a.normalizeIndentation(g.indentation),e=a.normalizeIndentation(g.indentation+g.appendText),h="\n"+e+"\n"+b;return c?new f.q2(d,h,!0):new f.iP(d,h,-1,e.length-b.length,!0)}else if(g.indentAction===m.l.Outdent){let b=O(a,g.indentation);return M(d,"\n"+a.normalizeIndentation(b+g.appendText),c)}}let h=b.getLineContent(d.startLineNumber),i=(0,e.UU)(h).substring(0,d.startColumn-1);if(a.autoIndent>=4){let g=(0,p.MU)(a.autoIndent,b,d,{unshiftIndent:b=>O(a,b),shiftIndent:b=>N(a,b),normalizeIndentation:b=>a.normalizeIndentation(b)},a.languageConfigurationService);if(g){let h=a.visibleColumnFromColumn(b,d.getEndPosition()),i=d.endColumn,j=b.getLineContent(d.endLineNumber),k=(0,e.HG)(j);if(d=k>=0?d.setEndPosition(d.endLineNumber,Math.max(d.endColumn,k+1)):d.setEndPosition(d.endLineNumber,b.getLineMaxColumn(d.endLineNumber)),c)return new f.q2(d,"\n"+a.normalizeIndentation(g.afterEnter),!0);{let b=0;return i<=k+1&&(a.insertSpaces||(h=Math.ceil(h/a.indentSize)),b=Math.min(h+1-a.normalizeIndentation(g.afterEnter).length-1,0)),new f.iP(d,"\n"+a.normalizeIndentation(g.afterEnter),0,b,!0)}}}return M(d,"\n"+a.normalizeIndentation(i),c)}static lineInsertBefore(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,g=c.length;e<g;e++){let g=c[e].positionLineNumber;if(1===g)d[e]=new f.q2(new k.Q(1,1,1,1),"\n");else{g--;let c=b.getLineMaxColumn(g);d[e]=this._enter(a,b,!1,new k.Q(g,c,g,c))}}return d}static lineInsertAfter(a,b,c){if(null===b||null===c)return[];let d=[];for(let e=0,f=c.length;e<f;e++){let f=c[e].positionLineNumber,g=b.getLineMaxColumn(f);d[e]=this._enter(a,b,!1,new k.Q(f,g,f,g))}return d}static lineBreakInsert(a,b,c){let d=[];for(let e=0,f=c.length;e<f;e++)d[e]=this._enter(a,b,!0,c[e]);return d}}class A{static getEdits(a,b,c,d,e,f){let g=this._distributePasteToCursors(a,c,d,e,f);return g?(c=c.sort(k.Q.compareRangesUsingStarts),this._distributedPaste(a,b,c,g)):this._simplePaste(a,b,c,d,e)}static _distributePasteToCursors(a,b,c,d,f){if(1===b.length)return null;if(f&&f.length===b.length)return f;if(d)return null;if("spread"===a.multiCursorPaste){10===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1)),13===c.charCodeAt(c.length-1)&&(c=c.substring(0,c.length-1));let a=(0,e.uz)(c);if(a.length===b.length)return a}return null}static _distributedPaste(a,b,c,d){let e=[];for(let b=0,g=c.length;b<g;b++){let g=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;e[b]=new g(c[b],d[b])}return new i.vY(0,e,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}static _simplePaste(a,b,c,d,e){let g=[];for(let b=0,h=c.length;b<h;b++){let h=c[b],i=h.getPosition();if(e&&!h.isEmpty()&&(e=!1),e&&d.indexOf("\n")!==d.length-1&&(e=!1),e){let a=new k.Q(i.lineNumber,1,i.lineNumber,1);g[b]=new f.ui(a,d,h,!0)}else{let c=a.overtypeOnPaste&&"overtype"===a.inputMode?f.AS:f.iu;g[b]=new c(h,d)}}return new i.vY(0,g,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}class B{static getEdits(a,b,c,d,e,f,g,h){let j=d.map(a=>this._compositionType(c,a,e,f,g,h));return new i.vY(4,j,{shouldPushStackElementBefore:I(a,4),shouldPushStackElementAfter:!1})}static _compositionType(a,b,c,d,e,g){if(!b.isEmpty())return null;let h=b.getPosition(),i=Math.max(1,h.column-d),j=Math.min(a.getLineMaxColumn(h.lineNumber),h.column+e),l=new k.Q(h.lineNumber,i,h.lineNumber,j);return new f.iP(l,c,0,g)}}class C{static getEdits(a,b,c){let d=[];for(let a=0,e=b.length;a<e;a++)d[a]=new f.iu(b[a],c);let e=H(c,a);return new i.vY(e,d,{shouldPushStackElementBefore:I(a,e),shouldPushStackElementAfter:!1})}}class D{static getCommands(a,b,c){let d=[];for(let e=0,h=c.length;e<h;e++){let h=c[e];if(h.isEmpty()){let c=b.getLineContent(h.startLineNumber);if(/^\s*$/.test(c)&&b.tokenization.isCheapToTokenize(h.startLineNumber)){let g=this._goodIndentForLine(a,b,h.startLineNumber);g=g||" ";let i=a.normalizeIndentation(g);if(!c.startsWith(i)){d[e]=new f.iu(new k.Q(h.startLineNumber,1,h.startLineNumber,c.length+1),i,!0);continue}}d[e]=this._replaceJumpToNextIndent(a,b,h,!0)}else{if(h.startLineNumber===h.endLineNumber){let c=b.getLineMaxColumn(h.startLineNumber);if(1!==h.startColumn||h.endColumn!==c){d[e]=this._replaceJumpToNextIndent(a,b,h,!1);continue}}d[e]=new g.Y(h,{isUnshift:!1,tabSize:a.tabSize,indentSize:a.indentSize,insertSpaces:a.insertSpaces,useTabStops:a.useTabStops,autoIndent:a.autoIndent},a.languageConfigurationService)}}return d}static _goodIndentForLine(a,b,c){let d=null,f="",g=(0,p.vn)(a.autoIndent,b,c,!1,a.languageConfigurationService);if(g)d=g.action,f=g.indentation;else if(c>1){let d;for(d=c-1;d>=1;d--){let a=b.getLineContent(d);if((0,e.lT)(a)>=0)break}if(d<1)return null;let g=b.getLineMaxColumn(d),h=(0,q.h)(a.autoIndent,b,new k.Q(d,g,d,g),a.languageConfigurationService);h&&(f=h.indentation+h.appendText)}return(d&&(d===m.l.Indent&&(f=N(a,f)),d===m.l.Outdent&&(f=O(a,f)),f=a.normalizeIndentation(f)),f)?f:null}static _replaceJumpToNextIndent(a,b,c,d){let e="",g=c.getStartPosition();if(a.insertSpaces){let c=a.visibleColumnFromColumn(b,g),d=a.indentSize,f=d-c%d;for(let a=0;a<f;a++)e+=" "}else e=" ";return new f.iu(c,e,d)}}class E extends f.iP{constructor(a,b,c,d,e,f){super(a,b,c,d),this._openCharacter=e,this._closeCharacter=f,this.closeCharacterRange=null,this.enclosingRange=null}_computeCursorStateWithRange(a,b,c){return this.closeCharacterRange=new k.Q(b.startLineNumber,b.endColumn-this._closeCharacter.length,b.endLineNumber,b.endColumn),this.enclosingRange=new k.Q(b.startLineNumber,b.endColumn-this._openCharacter.length-this._closeCharacter.length,b.endLineNumber,b.endColumn),super.computeCursorState(a,c)}}class F extends E{constructor(a,b,c,d){super(a,(c?b:"")+d,0,-d.length,b,d)}computeCursorState(a,b){let c=b.getInverseEditOperations()[0].range;return this._computeCursorStateWithRange(a,c,b)}}class G extends E{constructor(a,b,c,d){const e=c+d;super(b,e,0,c.length,c,d),this._autoIndentationEdit=a,this._autoClosingEdit={range:b,text:e}}getEditOperations(a,b){b.addTrackedEditOperation(this._autoIndentationEdit.range,this._autoIndentationEdit.text),b.addTrackedEditOperation(this._autoClosingEdit.range,this._autoClosingEdit.text)}computeCursorState(a,b){let c=b.getInverseEditOperations();if(2!==c.length)throw Error("There should be two inverse edit operations!");let d=c[0].range,e=c[1].range,f=d.plusRange(e);return this._computeCursorStateWithRange(a,f,b)}}function H(a,b){return" "===a?5===b||6===b?6:5:4}function I(a,b){return!(!K(a)||K(b))||5!==a&&J(a)!==J(b)}function J(a){return 6===a||5===a?"space":a}function K(a){return 4===a||5===a||6===a}function L(a,b,c,d,e){if("never"===a.autoClosingOvertype||!a.autoClosingPairs.autoClosingPairsCloseSingleChar.has(e))return!1;for(let f=0,g=c.length;f<g;f++){let g=c[f];if(!g.isEmpty())return!1;let h=g.getPosition(),j=b.getLineContent(h.lineNumber);if(j.charAt(h.column-1)!==e)return!1;let k=(0,i.vG)(e);if(92===(h.column>2?j.charCodeAt(h.column-2):0)&&k)return!1;if("auto"===a.autoClosingOvertype){let a=!1;for(let b=0,c=d.length;b<c;b++){let c=d[b];if(h.lineNumber===c.startLineNumber&&h.column===c.startColumn){a=!0;break}}if(!a)return!1}}return!0}function M(a,b,c){return c?new f.q2(a,b,!0):new f.iu(a,b,!0)}function N(a,b,c){return c=c||1,g.Y.shiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function O(a,b,c){return c=c||1,g.Y.unshiftIndent(b,b.length+c,a.tabSize,a.indentSize,a.insertSpaces)}function P(a,b){return(0,i.vG)(b)?"quotes"===a.autoSurround||"languageDefined"===a.autoSurround:"brackets"===a.autoSurround||"languageDefined"===a.autoSurround}},75842:(a,b,c)=>{"use strict";c.d(b,{Y:()=>n});var d,e,f=c(26529),g=c(18530),h=c(61822),i=c(77509),j=c(39383),k=c(16202);let l=Object.create(null);function m(a,b){if(b<=0)return"";l[a]||(l[a]=["",a]);let c=l[a];for(let d=c.length;d<=b;d++)c[d]=c[d-1]+a;return c[b]}let n=e=class{static unshiftIndent(a,b,c,d,e){let f=g.A.visibleColumnFromColumn(a,b,c);if(e){let a=m(" ",d);return m(a,g.A.prevIndentTabStop(f,d)/d)}return m(" ",g.A.prevRenderTabStop(f,c)/c)}static shiftIndent(a,b,c,d,e){let f=g.A.visibleColumnFromColumn(a,b,c);if(e){let a=m(" ",d);return m(a,g.A.nextIndentTabStop(f,d)/d)}return m(" ",g.A.nextRenderTabStop(f,c)/c)}constructor(a,b,c){this._languageConfigurationService=c,this._opts=b,this._selection=a,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}_addEditOperation(a,b,c){this._useLastEditRangeForCursorEndPosition?a.addTrackedEditOperation(b,c):a.addEditOperation(b,c)}getEditOperations(a,b){let c=this._selection.startLineNumber,d=this._selection.endLineNumber;1===this._selection.endColumn&&c!==d&&(d-=1);let{tabSize:i,indentSize:k,insertSpaces:l}=this._opts,n=c===d;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(a.getLineContent(c))&&(this._useLastEditRangeForCursorEndPosition=!0);let m=0,o=0;for(let p=c;p<=d;p++,m=o){let d;o=0;let q=a.getLineContent(p),r=(0,f.HG)(q);if((!this._opts.isUnshift||0!==q.length&&0!==r)&&(n||this._opts.isUnshift||0!==q.length)){if(-1===r&&(r=q.length),p>1&&g.A.visibleColumnFromColumn(q,r+1,i)%k!=0&&a.tokenization.isCheapToTokenize(p-1)){let b=(0,j.h)(this._opts.autoIndent,a,new h.Q(p-1,a.getLineMaxColumn(p-1),p-1,a.getLineMaxColumn(p-1)),this._languageConfigurationService);if(b){if(o=m,b.appendText)for(let a=0,c=b.appendText.length;a<c&&o<k;a++)if(32===b.appendText.charCodeAt(a))o++;else break;b.removeText&&(o=Math.max(0,o-b.removeText));for(let a=0;a<o&&0!==r&&32===q.charCodeAt(r-1);a++)r--}}(!this._opts.isUnshift||0!==r)&&(d=this._opts.isUnshift?e.unshiftIndent(q,r+1,i,k,l):e.shiftIndent(q,r+1,i,k,l),this._addEditOperation(b,new h.Q(p,1,p,r+1),d),p!==c||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=this._selection.startColumn<=r+1))}}}else{!this._opts.isUnshift&&this._selection.isEmpty()&&0===a.getLineLength(c)&&(this._useLastEditRangeForCursorEndPosition=!0);let e=l?m(" ",k):" ";for(let g=c;g<=d;g++){let d=a.getLineContent(g),i=(0,f.HG)(d);if((!this._opts.isUnshift||0!==d.length&&0!==i)&&(n||this._opts.isUnshift||0!==d.length)&&(-1===i&&(i=d.length),!this._opts.isUnshift||0!==i))if(this._opts.isUnshift){i=Math.min(i,k);for(let a=0;a<i;a++)if(9===d.charCodeAt(a)){i=a+1;break}this._addEditOperation(b,new h.Q(g,1,g,i+1),"")}else this._addEditOperation(b,new h.Q(g,1,g,1),e),g!==c||this._selection.isEmpty()||(this._selectionStartColumnStaysPut=1===this._selection.startColumn)}}this._selectionId=b.trackSelection(this._selection)}computeCursorState(a,b){if(this._useLastEditRangeForCursorEndPosition){let a=b.getInverseEditOperations()[0];return new i.L(a.range.endLineNumber,a.range.endColumn,a.range.endLineNumber,a.range.endColumn)}let c=b.getTrackedSelection(this._selectionId);if(this._selectionStartColumnStaysPut){let a=this._selection.startColumn;return c.startColumn<=a?c:0===c.getDirection()?new i.L(c.startLineNumber,a,c.endLineNumber,c.endColumn):new i.L(c.endLineNumber,c.endColumn,c.startLineNumber,a)}return c}};n=e=function(a,b,c,d){var e,f=arguments.length,g=f<3?b:null===d?d=Object.getOwnPropertyDescriptor(b,c):d;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)g=Reflect.decorate(a,b,c,d);else for(var h=a.length-1;h>=0;h--)(e=a[h])&&(g=(f<3?e(g):f>3?e(b,c,g):e(b,c))||g);return f>3&&g&&Object.defineProperty(b,c,g),g}([(d=k.JZ,function(a,b){d(a,b,2)})],n)},76293:()=>{},76631:(a,b,c)=>{"use strict";c.d(b,{$w:()=>o,AS:()=>g,BO:()=>n,Cm:()=>k,HE:()=>m,Xm:()=>f,jG:()=>l,lC:()=>e,qE:()=>h,s:()=>j});var d=c(47309);function e(a){return a}function f(a){return"object"==typeof a&&null!==a&&"function"==typeof a.dispose&&0===a.dispose.length}function g(a){if(d.f.is(a)){let b=[];for(let c of a)if(c)try{c.dispose()}catch(a){b.push(a)}if(1===b.length)throw b[0];if(b.length>1)throw AggregateError(b,"Encountered errors while disposing of store");return Array.isArray(a)?[]:a}if(a)return a.dispose(),a}function h(...a){return j(()=>g(a))}class i{constructor(a){this._isDisposed=!1,this._fn=a}dispose(){if(!this._isDisposed){if(!this._fn)throw Error("Unbound disposable context: Need to use an arrow function to preserve the value of this");this._isDisposed=!0,this._fn()}}}function j(a){return new i(a)}class k{static{this.DISABLE_DISPOSED_WARNING=!1}constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(0!==this._toDispose.size)try{g(this._toDispose)}finally{this._toDispose.clear()}}add(a){if(!a||a===l.None)return a;if(a===this)throw Error("Cannot register a disposable on itself!");return this._isDisposed?k.DISABLE_DISPOSED_WARNING||console.warn(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(a),a}delete(a){if(a){if(a===this)throw Error("Cannot dispose a disposable on itself!");this._toDispose.delete(a),a.dispose()}}}class l{static{this.None=Object.freeze({dispose(){}})}constructor(){this._store=new k,this._store}dispose(){this._store.dispose()}_register(a){if(a===this)throw Error("Cannot register a disposable on itself!");return this._store.add(a)}}class m{constructor(){this._isDisposed=!1}get value(){return this._isDisposed?void 0:this._value}set value(a){this._isDisposed||a===this._value||(this._value?.dispose(),this._value=a)}clear(){this.value=void 0}dispose(){this._isDisposed=!0,this._value?.dispose(),this._value=void 0}}class n{constructor(a){this.object=a}dispose(){}}class o{constructor(a=new Map){this._isDisposed=!1,this._store=a}dispose(){this._isDisposed=!0,this.clearAndDisposeAll()}clearAndDisposeAll(){if(this._store.size)try{g(this._store.values())}finally{this._store.clear()}}get(a){return this._store.get(a)}set(a,b,c=!1){this._isDisposed&&console.warn(Error("Trying to add a disposable to a DisposableMap that has already been disposed of. The added object will be leaked!").stack),c||this._store.get(a)?.dispose(),this._store.set(a,b)}deleteAndDispose(a){this._store.get(a)?.dispose(),this._store.delete(a)}keys(){return this._store.keys()}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}}},76817:(a,b,c)=>{"use strict";c.d(b,{S:()=>e,c:()=>m});var d,e,f=c(85214),g=c(48580),h=c(22913),i=c(82064),j=c(6812),k=c(61822),l=c(94630);class m{static addCursorDown(a,b,c){let d=[],e=0;for(let f=0,i=b.length;f<i;f++){let i=b[f];d[e++]=new g.MF(i.modelState,i.viewState),c?d[e++]=g.MF.fromModelState(h.I.translateDown(a.cursorConfig,a.model,i.modelState)):d[e++]=g.MF.fromViewState(h.I.translateDown(a.cursorConfig,a,i.viewState))}return d}static addCursorUp(a,b,c){let d=[],e=0;for(let f=0,i=b.length;f<i;f++){let i=b[f];d[e++]=new g.MF(i.modelState,i.viewState),c?d[e++]=g.MF.fromModelState(h.I.translateUp(a.cursorConfig,a.model,i.modelState)):d[e++]=g.MF.fromViewState(h.I.translateUp(a.cursorConfig,a,i.viewState))}return d}static moveToBeginningOfLine(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=this._moveToLineStart(a,f,c)}return d}static _moveToLineStart(a,b,c){let d=b.viewState.position.column,e=b.modelState.position.column,f=b.viewState.position.lineNumber,g=a.getLineFirstNonWhitespaceColumn(f);return d!==e&&d!==g?this._moveToLineStartByView(a,b,c):this._moveToLineStartByModel(a,b,c)}static _moveToLineStartByView(a,b,c){return g.MF.fromViewState(h.I.moveToBeginningOfLine(a.cursorConfig,a,b.viewState,c))}static _moveToLineStartByModel(a,b,c){return g.MF.fromModelState(h.I.moveToBeginningOfLine(a.cursorConfig,a.model,b.modelState,c))}static moveToEndOfLine(a,b,c,d){let e=[];for(let f=0,g=b.length;f<g;f++){let g=b[f];e[f]=this._moveToLineEnd(a,g,c,d)}return e}static _moveToLineEnd(a,b,c,d){let e=b.viewState.position,f=a.getLineMaxColumn(e.lineNumber),g=e.column===f,h=b.modelState.position,i=a.model.getLineMaxColumn(h.lineNumber),j=f-e.column==i-h.column;return g||j?this._moveToLineEndByModel(a,b,c,d):this._moveToLineEndByView(a,b,c,d)}static _moveToLineEndByView(a,b,c,d){return g.MF.fromViewState(h.I.moveToEndOfLine(a.cursorConfig,a,b.viewState,c,d))}static _moveToLineEndByModel(a,b,c,d){return g.MF.fromModelState(h.I.moveToEndOfLine(a.cursorConfig,a.model,b.modelState,c,d))}static expandLineSelection(a,b){let c=[];for(let d=0,e=b.length;d<e;d++){let e,f=b[d],h=f.modelState.selection.startLineNumber,i=a.model.getLineCount(),l=f.modelState.selection.endLineNumber;l===i?e=a.model.getLineMaxColumn(i):(l++,e=1),c[d]=g.MF.fromModelState(new g.mG(new k.Q(h,1,h,1),0,0,new j.y(l,e),0))}return c}static moveToBeginningOfBuffer(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=g.MF.fromModelState(h.I.moveToBeginningOfBuffer(a.cursorConfig,a.model,f.modelState,c))}return d}static moveToEndOfBuffer(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e];d[e]=g.MF.fromModelState(h.I.moveToEndOfBuffer(a.cursorConfig,a.model,f.modelState,c))}return d}static selectAll(a,b){let c=a.model.getLineCount(),d=a.model.getLineMaxColumn(c);return g.MF.fromModelState(new g.mG(new k.Q(1,1,1,1),0,0,new j.y(c,d),0))}static line(a,b,c,d,e){let f=a.model.validatePosition(d),h=e?a.coordinatesConverter.validateViewPosition(new j.y(e.lineNumber,e.column),f):a.coordinatesConverter.convertModelPositionToViewPosition(f);if(!c){let b=a.model.getLineCount(),c=f.lineNumber+1,d=1;return c>b&&(c=b,d=a.model.getLineMaxColumn(c)),g.MF.fromModelState(new g.mG(new k.Q(f.lineNumber,1,c,d),2,0,new j.y(c,d),0))}let i=b.modelState.selectionStart.getStartPosition().lineNumber;if(f.lineNumber<i)return g.MF.fromViewState(b.viewState.move(!0,h.lineNumber,1,0));if(f.lineNumber>i){let c=a.getLineCount(),d=h.lineNumber+1,e=1;return d>c&&(d=c,e=a.getLineMaxColumn(d)),g.MF.fromViewState(b.viewState.move(!0,d,e,0))}{let a=b.modelState.selectionStart.getEndPosition();return g.MF.fromModelState(b.modelState.move(!0,a.lineNumber,a.column,0))}}static word(a,b,c,d){let e=a.model.validatePosition(d);return g.MF.fromModelState(i.z.word(a.cursorConfig,a.model,b.modelState,c,e))}static cancelSelection(a,b){if(!b.modelState.hasSelection())return new g.MF(b.modelState,b.viewState);let c=b.viewState.position.lineNumber,d=b.viewState.position.column;return g.MF.fromViewState(new g.mG(new k.Q(c,d,c,d),0,0,new j.y(c,d),0))}static moveTo(a,b,c,d,e){if(c){if(1===b.modelState.selectionStartKind)return this.word(a,b,c,d);if(2===b.modelState.selectionStartKind)return this.line(a,b,c,d,e)}let f=a.model.validatePosition(d),h=e?a.coordinatesConverter.validateViewPosition(new j.y(e.lineNumber,e.column),f):a.coordinatesConverter.convertModelPositionToViewPosition(f);return g.MF.fromViewState(b.viewState.move(c,h.lineNumber,h.column,0))}static simpleMove(a,b,c,d,e,f){switch(c){case 0:if(4===f)return this._moveHalfLineLeft(a,b,d);return this._moveLeft(a,b,d,e);case 1:if(4===f)return this._moveHalfLineRight(a,b,d);return this._moveRight(a,b,d,e);case 2:if(2===f)return this._moveUpByViewLines(a,b,d,e);if(5===f)return this._moveUpByFoldedLines(a,b,d,e);return this._moveUpByModelLines(a,b,d,e);case 3:if(2===f)return this._moveDownByViewLines(a,b,d,e);if(5===f)return this._moveDownByFoldedLines(a,b,d,e);return this._moveDownByModelLines(a,b,d,e);case 4:if(2===f)return b.map(b=>g.MF.fromViewState(h.I.moveToPrevBlankLine(a.cursorConfig,a,b.viewState,d)));return b.map(b=>g.MF.fromModelState(h.I.moveToPrevBlankLine(a.cursorConfig,a.model,b.modelState,d)));case 5:if(2===f)return b.map(b=>g.MF.fromViewState(h.I.moveToNextBlankLine(a.cursorConfig,a,b.viewState,d)));return b.map(b=>g.MF.fromModelState(h.I.moveToNextBlankLine(a.cursorConfig,a.model,b.modelState,d)));case 6:return this._moveToViewMinColumn(a,b,d);case 7:return this._moveToViewFirstNonWhitespaceColumn(a,b,d);case 8:return this._moveToViewCenterColumn(a,b,d);case 9:return this._moveToViewMaxColumn(a,b,d);case 10:return this._moveToViewLastNonWhitespaceColumn(a,b,d);default:return null}}static viewportMove(a,b,c,d,e){let f=a.getCompletelyVisibleViewRange(),g=a.coordinatesConverter.convertViewRangeToModelRange(f);switch(c){case 11:{let c=this._firstLineNumberInRange(a.model,g,e),f=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,f)]}case 13:{let c=this._lastLineNumberInRange(a.model,g,e),f=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,f)]}case 12:{let c=Math.round((g.startLineNumber+g.endLineNumber)/2),e=a.model.getLineFirstNonWhitespaceColumn(c);return[this._moveToModelPosition(a,b[0],d,c,e)]}case 14:{let c=[];for(let e=0,g=b.length;e<g;e++){let g=b[e];c[e]=this.findPositionInViewportIfOutside(a,g,f,d)}return c}default:return null}}static findPositionInViewportIfOutside(a,b,c,d){let e=b.viewState.position.lineNumber;if(c.startLineNumber<=e&&e<=c.endLineNumber-1)return new g.MF(b.modelState,b.viewState);{let f;f=e>c.endLineNumber-1?c.endLineNumber-1:e<c.startLineNumber?c.startLineNumber:e;let i=h.I.vertical(a.cursorConfig,a,e,b.viewState.position.column,b.viewState.leftoverVisibleColumns,f,!1);return g.MF.fromViewState(b.viewState.move(d,i.lineNumber,i.column,i.leftoverVisibleColumns))}}static _firstLineNumberInRange(a,b,c){let d=b.startLineNumber;return b.startColumn!==a.getLineMinColumn(d)&&d++,Math.min(b.endLineNumber,d+c-1)}static _lastLineNumberInRange(a,b,c){let d=b.startLineNumber;return b.startColumn!==a.getLineMinColumn(d)&&d++,Math.max(d,b.endLineNumber-c+1)}static _moveLeft(a,b,c,d){return b.map(b=>{let e=a.getTextDirection(b.viewState.position.lineNumber)===l.z4.RTL;return g.MF.fromViewState(e?h.I.moveRight(a.cursorConfig,a,b.viewState,c,d):h.I.moveLeft(a.cursorConfig,a,b.viewState,c,d))})}static _moveHalfLineLeft(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],i=f.viewState.position.lineNumber,j=Math.round(a.getLineLength(i)/2);d[e]=g.MF.fromViewState(h.I.moveLeft(a.cursorConfig,a,f.viewState,c,j))}return d}static _moveRight(a,b,c,d){return b.map(b=>{let e=a.getTextDirection(b.viewState.position.lineNumber)===l.z4.RTL;return g.MF.fromViewState(e?h.I.moveLeft(a.cursorConfig,a,b.viewState,c,d):h.I.moveRight(a.cursorConfig,a,b.viewState,c,d))})}static _moveHalfLineRight(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],i=f.viewState.position.lineNumber,j=Math.round(a.getLineLength(i)/2);d[e]=g.MF.fromViewState(h.I.moveRight(a.cursorConfig,a,f.viewState,c,j))}return d}static _moveDownByViewLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromViewState(h.I.moveDown(a.cursorConfig,a,i.viewState,c,d))}return e}static _moveDownByModelLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromModelState(h.I.moveDown(a.cursorConfig,a.model,i.modelState,c,d))}return e}static _moveUpByViewLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromViewState(h.I.moveUp(a.cursorConfig,a,i.viewState,c,d))}return e}static _moveUpByModelLines(a,b,c,d){let e=[];for(let f=0,i=b.length;f<i;f++){let i=b[f];e[f]=g.MF.fromModelState(h.I.moveUp(a.cursorConfig,a.model,i.modelState,c,d))}return e}static _moveDownByFoldedLines(a,b,c,d){let e=a.model,f=e.getLineCount(),i=a.getHiddenAreas();return b.map(b=>{let j=b.modelState.hasSelection()&&!c?b.modelState.selection.endLineNumber:b.modelState.position.lineNumber,k=m._targetFoldedDown(j,d,i,f)-j;return 0===k?g.MF.fromModelState(b.modelState):g.MF.fromModelState(h.I.moveDown(a.cursorConfig,e,b.modelState,c,k))})}static _moveUpByFoldedLines(a,b,c,d){let e=a.model,f=a.getHiddenAreas();return b.map(b=>{let i=b.modelState.hasSelection()&&!c?b.modelState.selection.startLineNumber:b.modelState.position.lineNumber,j=m._targetFoldedUp(i,d,f),k=i-j;return 0===k?g.MF.fromModelState(b.modelState):g.MF.fromModelState(h.I.moveUp(a.cursorConfig,e,b.modelState,c,k))})}static _targetFoldedDown(a,b,c,d){let e=a,f=0;for(;f<c.length&&c[f].endLineNumber<e+1;)f++;for(let a=0;a<b;a++){if(e>=d)return d;let a=e+1;for(;f<c.length&&c[f].endLineNumber<a;)f++;if(f<c.length&&c[f].startLineNumber<=a&&(a=c[f].endLineNumber+1),a>d)break;e=a}return e}static _targetFoldedUp(a,b,c){let d=a,e=c.length-1;for(;e>=0&&c[e].startLineNumber>d-1;)e--;for(let a=0;a<b;a++){if(d<=1)return 1;let a=d-1;for(;e>=0&&c[e].startLineNumber>a;)e--;if(e>=0&&c[e].endLineNumber>=a&&(a=c[e].startLineNumber-1),a<1)break;d=a}return d}static _moveToViewPosition(a,b,c,d,e){return g.MF.fromViewState(b.viewState.move(c,d,e,0))}static _moveToModelPosition(a,b,c,d,e){return g.MF.fromModelState(b.modelState.move(c,d,e,0))}static _moveToViewMinColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineMinColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewFirstNonWhitespaceColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineFirstNonWhitespaceColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewCenterColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=Math.round((a.getLineMaxColumn(g)+a.getLineMinColumn(g))/2);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewMaxColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineMaxColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}static _moveToViewLastNonWhitespaceColumn(a,b,c){let d=[];for(let e=0,f=b.length;e<f;e++){let f=b[e],g=f.viewState.position.lineNumber,h=a.getLineLastNonWhitespaceColumn(g);d[e]=this._moveToViewPosition(a,f,c,g,h)}return d}}(d=e||(e={})).metadata={description:"Move cursor to a logical position in the view",args:[{name:"Cursor move argument object",description:`Property-value pairs that can be passed through this argument:
|
|
455
455
|
* 'to': A mandatory logical position value providing where to move the cursor.
|
|
456
456
|
\`\`\`
|
|
457
457
|
'left', 'right', 'up', 'down', 'prevBlankLine', 'nextBlankLine',
|