@rsdoctor/client 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.html +1 -1
- package/dist/resource/js/monaco-1.cbaae4ad.js +5 -0
- package/dist/resource/js/{monaco-1.6a6d9fbd.js.LICENSE.txt → monaco-1.cbaae4ad.js.LICENSE.txt} +319 -340
- package/dist/resource/js/{monaco-13.dd2ff536.js → monaco-12.e2a3ecd4.js} +2 -2
- package/dist/resource/js/{monaco-14.2fef89fc.js → monaco-13.cc63a6b1.js} +2 -2
- package/dist/resource/js/{monaco-14.2fef89fc.js.LICENSE.txt → monaco-13.cc63a6b1.js.LICENSE.txt} +171 -163
- package/dist/resource/js/{monaco-12.6dc645fd.js → monaco-14.88babdfb.js} +3 -3
- package/dist/resource/js/{monaco-12.6dc645fd.js.LICENSE.txt → monaco-14.88babdfb.js.LICENSE.txt} +226 -214
- package/dist/resource/js/monaco-2.5e6b3e6c.js +25 -0
- package/dist/resource/js/{monaco-7.8e6e32f9.js.LICENSE.txt → monaco-2.5e6b3e6c.js.LICENSE.txt} +308 -332
- package/dist/resource/js/{monaco-2.89e3d3e1.js → monaco-3.993fc057.js} +2 -2
- package/dist/resource/js/{monaco-3.ae0e86c1.js → monaco-4.73c5efca.js} +2 -2
- package/dist/resource/js/{monaco-5.521603f3.js → monaco-5.91d0f99a.js} +4 -4
- package/dist/resource/js/{monaco-5.521603f3.js.LICENSE.txt → monaco-5.91d0f99a.js.LICENSE.txt} +174 -156
- package/dist/resource/js/monaco-7.e19e48d5.js +2 -0
- package/dist/resource/js/{monaco-4.afbf6d73.js.LICENSE.txt → monaco-7.e19e48d5.js.LICENSE.txt} +314 -321
- package/dist/resource/js/{monaco-8.e8d2f2de.js → monaco-8.48f5e877.js} +3 -3
- package/dist/resource/js/{monaco-8.e8d2f2de.js.LICENSE.txt → monaco-8.48f5e877.js.LICENSE.txt} +192 -204
- package/dist/resource/js/monaco-9.eb8aef3e.js +71 -0
- package/dist/resource/js/{monaco-9.d66d09e1.js.LICENSE.txt → monaco-9.eb8aef3e.js.LICENSE.txt} +364 -338
- package/package.json +3 -3
- package/dist/resource/js/monaco-1.6a6d9fbd.js +0 -5
- package/dist/resource/js/monaco-4.afbf6d73.js +0 -2
- package/dist/resource/js/monaco-7.8e6e32f9.js +0 -25
- package/dist/resource/js/monaco-9.d66d09e1.js +0 -71
- /package/dist/resource/css/{monaco-13.86c79c6e.css → monaco-12.86c79c6e.css} +0 -0
- /package/dist/resource/css/{monaco-14.f69f0e8c.css → monaco-13.f69f0e8c.css} +0 -0
- /package/dist/resource/css/{monaco-12.d38f1964.css → monaco-14.d38f1964.css} +0 -0
- /package/dist/resource/css/{monaco-7.681f0305.css → monaco-2.681f0305.css} +0 -0
- /package/dist/resource/css/{monaco-2.bc87f9b2.css → monaco-3.bc87f9b2.css} +0 -0
- /package/dist/resource/css/{monaco-3.37d5626c.css → monaco-4.37d5626c.css} +0 -0
- /package/dist/resource/css/{monaco-4.b782cd98.css → monaco-7.b782cd98.css} +0 -0
- /package/dist/resource/js/{monaco-13.dd2ff536.js.LICENSE.txt → monaco-12.e2a3ecd4.js.LICENSE.txt} +0 -0
- /package/dist/resource/js/{monaco-2.89e3d3e1.js.LICENSE.txt → monaco-3.993fc057.js.LICENSE.txt} +0 -0
- /package/dist/resource/js/{monaco-3.ae0e86c1.js.LICENSE.txt → monaco-4.73c5efca.js.LICENSE.txt} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/*! For license information please see monaco-5.
|
|
2
|
-
(self.webpackChunk_rsdoctor_client=self.webpackChunk_rsdoctor_client||[]).push([["242"],{852897:function(e,t,i){"use strict";i.r(t),i.d(t,{Sizing:function(){return r},SplitView:function(){return S}});var n,o,s,r,a=i("409737"),l=i("274664"),d=i("842401"),h=i("603868"),c=i("835271"),u=i("916904"),g=i("919527"),m=i("868308"),p=i("212868"),f=i("744138");i("484799");let _={separatorBorder:c.Color.transparent};class v{constructor(e,t,i,n){this.container=e,this.view=t,this.disposable=n,this._cachedVisibleSize=void 0,"number"==typeof i?(this._size=i,this._cachedVisibleSize=void 0,e.classList.add("visible")):(this._size=0,this._cachedVisibleSize=i.cachedVisibleSize)}set size(e){this._size=e}get size(){return this._size}get visible(){return void 0===this._cachedVisibleSize}setVisible(e,t){var i,n;e!==this.visible&&(e?(this.size=(0,m.clamp)(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize="number"==typeof t?t:this.size,this.size=0),this.container.classList.toggle("visible",e),null===(n=(i=this.view).setVisible)||void 0===n||n.call(i,e))}get minimumSize(){return this.visible?this.view.minimumSize:0}get viewMinimumSize(){return this.view.minimumSize}get maximumSize(){return this.visible?this.view.maximumSize:0}get viewMaximumSize(){return this.view.maximumSize}get priority(){return this.view.priority}get snap(){return!!this.view.snap}set enabled(e){this.container.style.pointerEvents=e?"":"none"}layout(e,t){this.layoutContainer(e),this.view.layout(this.size,e,t)}dispose(){return this.disposable.dispose(),this.view}}class C extends v{layoutContainer(e){this.container.style.top=`${e}px`,this.container.style.height=`${this.size}px`}}class b extends v{layoutContainer(e){this.container.style.left=`${e}px`,this.container.style.width=`${this.size}px`}}(n=s||(s={}))[n.Idle=0]="Idle",n[n.Busy=1]="Busy",(o=r||(r={})).Distribute={type:"distribute"},o.Split=function(e){return{type:"split",index:e}},o.Invisible=function(e){return{type:"invisible",cachedVisibleSize:e}};class S extends g.Disposable{constructor(e,t={}){var i,n,o,r,l;super(),this.size=0,this.contentSize=0,this.proportions=void 0,this.viewItems=[],this.sashItems=[],this.state=s.Idle,this._onDidSashChange=this._register(new u.Emitter),this._onDidSashReset=this._register(new u.Emitter),this._startSnappingEnabled=!0,this._endSnappingEnabled=!0,this.onDidSashChange=this._onDidSashChange.event,this.onDidSashReset=this._onDidSashReset.event,this.orientation=null!==(i=t.orientation)&&void 0!==i?i:0,this.inverseAltBehavior=null!==(n=t.inverseAltBehavior)&&void 0!==n&&n,this.proportionalLayout=null===(o=t.proportionalLayout)||void 0===o||o,this.getSashOrthogonalSize=t.getSashOrthogonalSize,this.el=document.createElement("div"),this.el.classList.add("monaco-split-view2"),this.el.classList.add(0===this.orientation?"vertical":"horizontal"),e.appendChild(this.el),this.sashContainer=(0,a.append)(this.el,(0,a.$)(".sash-container")),this.viewContainer=(0,a.$)(".split-view-container"),this.scrollable=new p.Scrollable({forceIntegerValues:!0,smoothScrollDuration:125,scheduleAtNextAnimationFrame:a.scheduleAtNextAnimationFrame}),this.scrollableElement=this._register(new d.SmoothScrollableElement(this.viewContainer,{vertical:0===this.orientation?null!==(r=t.scrollbarVisibility)&&void 0!==r?r:1:2,horizontal:1===this.orientation?null!==(l=t.scrollbarVisibility)&&void 0!==l?l:1:2},this.scrollable)),this.onDidScroll=this.scrollableElement.onScroll,this._register(this.onDidScroll(e=>{this.viewContainer.scrollTop=e.scrollTop,this.viewContainer.scrollLeft=e.scrollLeft})),(0,a.append)(this.el,this.scrollableElement.getDomNode()),this.style(t.styles||_),t.descriptor&&(this.size=t.descriptor.size,t.descriptor.views.forEach((e,t)=>{let i=f.isUndefined(e.visible)||e.visible?e.size:{type:"invisible",cachedVisibleSize:e.size},n=e.view;this.doAddView(n,i,t,!0)}),this.contentSize=this.viewItems.reduce((e,t)=>e+t.size,0),this.saveProportions())}get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}get startSnappingEnabled(){return this._startSnappingEnabled}get endSnappingEnabled(){return this._endSnappingEnabled}set orthogonalStartSash(e){for(let t of this.sashItems)t.sash.orthogonalStartSash=e;this._orthogonalStartSash=e}set orthogonalEndSash(e){for(let t of this.sashItems)t.sash.orthogonalEndSash=e;this._orthogonalEndSash=e}set startSnappingEnabled(e){this._startSnappingEnabled!==e&&(this._startSnappingEnabled=e,this.updateSashEnablement())}set endSnappingEnabled(e){this._endSnappingEnabled!==e&&(this._endSnappingEnabled=e,this.updateSashEnablement())}style(e){e.separatorBorder.isTransparent()?(this.el.classList.remove("separator-border"),this.el.style.removeProperty("--separator-border")):(this.el.classList.add("separator-border"),this.el.style.setProperty("--separator-border",e.separatorBorder.toString()))}addView(e,t,i=this.viewItems.length,n){this.doAddView(e,t,i,n)}layout(e,t){let i=Math.max(this.size,this.contentSize);if(this.size=e,this.layoutContext=t,this.proportions)for(let t=0;t<this.viewItems.length;t++){let i=this.viewItems[t];i.size=(0,m.clamp)(Math.round(this.proportions[t]*e),i.minimumSize,i.maximumSize)}else{let t=(0,h.range)(this.viewItems.length),n=t.filter(e=>1===this.viewItems[e].priority),o=t.filter(e=>2===this.viewItems[e].priority);this.resize(this.viewItems.length-1,e-i,void 0,n,o)}this.distributeEmptySpace(),this.layoutViews()}saveProportions(){this.proportionalLayout&&this.contentSize>0&&(this.proportions=this.viewItems.map(e=>e.size/this.contentSize))}onSashStart({sash:e,start:t,alt:i}){for(let e of this.viewItems)e.enabled=!1;let n=this.sashItems.findIndex(t=>t.sash===e),o=(0,g.combinedDisposable)((0,a.addDisposableListener)(document.body,"keydown",e=>s(this.sashDragState.current,e.altKey)),(0,a.addDisposableListener)(document.body,"keyup",()=>s(this.sashDragState.current,!1))),s=(e,t)=>{let i,s;let r=this.viewItems.map(e=>e.size),a=Number.NEGATIVE_INFINITY,l=Number.POSITIVE_INFINITY;if(this.inverseAltBehavior&&(t=!t),t){if(n===this.sashItems.length-1){let e=this.viewItems[n];a=(e.minimumSize-e.size)/2,l=(e.maximumSize-e.size)/2}else{let e=this.viewItems[n+1];a=(e.size-e.maximumSize)/2,l=(e.size-e.minimumSize)/2}}if(!t){let e=(0,h.range)(n,-1),t=(0,h.range)(n+1,this.viewItems.length),o=e.reduce((e,t)=>e+(this.viewItems[t].minimumSize-r[t]),0),a=e.reduce((e,t)=>e+(this.viewItems[t].viewMaximumSize-r[t]),0),l=0===t.length?Number.POSITIVE_INFINITY:t.reduce((e,t)=>e+(r[t]-this.viewItems[t].minimumSize),0),d=Math.max(o,0===t.length?Number.NEGATIVE_INFINITY:t.reduce((e,t)=>e+(r[t]-this.viewItems[t].viewMaximumSize),0)),c=Math.min(l,a),u=this.findFirstSnapIndex(e),g=this.findFirstSnapIndex(t);if("number"==typeof u){let e=this.viewItems[u],t=Math.floor(e.viewMinimumSize/2);i={index:u,limitDelta:e.visible?d-t:d+t,size:e.size}}if("number"==typeof g){let e=this.viewItems[g],t=Math.floor(e.viewMinimumSize/2);s={index:g,limitDelta:e.visible?c+t:c-t,size:e.size}}}this.sashDragState={start:e,current:e,index:n,sizes:r,minDelta:a,maxDelta:l,alt:t,snapBefore:i,snapAfter:s,disposable:o}};s(t,i)}onSashChange({current:e}){let{index:t,start:i,sizes:n,alt:o,minDelta:s,maxDelta:r,snapBefore:a,snapAfter:l}=this.sashDragState;this.sashDragState.current=e;let d=this.resize(t,e-i,n,void 0,void 0,s,r,a,l);if(o){let e=t===this.sashItems.length-1,i=this.viewItems.map(e=>e.size),n=e?t:t+1,o=this.viewItems[n],s=o.size-o.maximumSize,r=o.size-o.minimumSize;this.resize(e?t-1:t+1,-d,i,void 0,void 0,s,r)}this.distributeEmptySpace(),this.layoutViews()}onSashEnd(e){for(let t of(this._onDidSashChange.fire(e),this.sashDragState.disposable.dispose(),this.saveProportions(),this.viewItems))t.enabled=!0}onViewChange(e,t){let i=this.viewItems.indexOf(e);!(i<0)&&!(i>=this.viewItems.length)&&(t="number"==typeof t?t:e.size,t=(0,m.clamp)(t,e.minimumSize,e.maximumSize),this.inverseAltBehavior&&i>0?(this.resize(i-1,Math.floor((e.size-t)/2)),this.distributeEmptySpace(),this.layoutViews()):(e.size=t,this.relayout([i],void 0)))}resizeView(e,t){if(this.state!==s.Idle)throw Error("Cant modify splitview");if(this.state=s.Busy,e<0||e>=this.viewItems.length)return;let i=(0,h.range)(this.viewItems.length).filter(t=>t!==e),n=[...i.filter(e=>1===this.viewItems[e].priority),e],o=i.filter(e=>2===this.viewItems[e].priority),r=this.viewItems[e];t=Math.round(t),t=(0,m.clamp)(t,r.minimumSize,Math.min(r.maximumSize,this.size)),r.size=t,this.relayout(n,o),this.state=s.Idle}distributeViewSizes(){let e=[],t=0;for(let i of this.viewItems)i.maximumSize-i.minimumSize>0&&(e.push(i),t+=i.size);let i=Math.floor(t/e.length);for(let t of e)t.size=(0,m.clamp)(i,t.minimumSize,t.maximumSize);let n=(0,h.range)(this.viewItems.length),o=n.filter(e=>1===this.viewItems[e].priority),s=n.filter(e=>2===this.viewItems[e].priority);this.relayout(o,s)}getViewSize(e){return e<0||e>=this.viewItems.length?-1:this.viewItems[e].size}doAddView(e,t,i=this.viewItems.length,n){let o,r;if(this.state!==s.Idle)throw Error("Cant modify splitview");this.state=s.Busy;let d=(0,a.$)(".split-view-view");i===this.viewItems.length?this.viewContainer.appendChild(d):this.viewContainer.insertBefore(d,this.viewContainer.children.item(i));let c=e.onDidChange(e=>this.onViewChange(f,e)),m=(0,g.toDisposable)(()=>this.viewContainer.removeChild(d)),p=(0,g.combinedDisposable)(c,m);o="number"==typeof t?t:"split"===t.type?this.getViewSize(t.index)/2:"invisible"===t.type?{cachedVisibleSize:t.cachedVisibleSize}:e.minimumSize;let f=0===this.orientation?new C(d,e,o,p):new b(d,e,o,p);if(this.viewItems.splice(i,0,f),this.viewItems.length>1){let e={orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash},t=0===this.orientation?new l.Sash(this.sashContainer,{getHorizontalSashTop:e=>this.getSashPosition(e),getHorizontalSashWidth:this.getSashOrthogonalSize},Object.assign(Object.assign({},e),{orientation:1})):new l.Sash(this.sashContainer,{getVerticalSashLeft:e=>this.getSashPosition(e),getVerticalSashHeight:this.getSashOrthogonalSize},Object.assign(Object.assign({},e),{orientation:0})),n=0===this.orientation?e=>({sash:t,start:e.startY,current:e.currentY,alt:e.altKey}):e=>({sash:t,start:e.startX,current:e.currentX,alt:e.altKey}),o=u.Event.map(t.onDidStart,n)(this.onSashStart,this),s=u.Event.map(t.onDidChange,n)(this.onSashChange,this),r=u.Event.map(t.onDidEnd,()=>this.sashItems.findIndex(e=>e.sash===t))(this.onSashEnd,this),a=t.onDidReset(()=>{let e=this.sashItems.findIndex(e=>e.sash===t),i=(0,h.range)(e,-1),n=(0,h.range)(e+1,this.viewItems.length),o=this.findFirstSnapIndex(i),s=this.findFirstSnapIndex(n);if("number"!=typeof o||!!this.viewItems[o].visible)("number"!=typeof s||this.viewItems[s].visible)&&this._onDidSashReset.fire(e)}),d=(0,g.combinedDisposable)(o,s,r,a,t);this.sashItems.splice(i-1,0,{sash:t,disposable:d})}d.appendChild(e.element),"number"!=typeof t&&"split"===t.type&&(r=[t.index]),!n&&this.relayout([i],r),this.state=s.Idle,!n&&"number"!=typeof t&&"distribute"===t.type&&this.distributeViewSizes()}relayout(e,t){let i=this.viewItems.reduce((e,t)=>e+t.size,0);this.resize(this.viewItems.length-1,this.size-i,void 0,e,t),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()}resize(e,t,i=this.viewItems.map(e=>e.size),n,o,s=Number.NEGATIVE_INFINITY,r=Number.POSITIVE_INFINITY,a,l){if(e<0||e>=this.viewItems.length)return 0;let d=(0,h.range)(e,-1),c=(0,h.range)(e+1,this.viewItems.length);if(o)for(let e of o)(0,h.pushToStart)(d,e),(0,h.pushToStart)(c,e);if(n)for(let e of n)(0,h.pushToEnd)(d,e),(0,h.pushToEnd)(c,e);let u=d.map(e=>this.viewItems[e]),g=d.map(e=>i[e]),p=c.map(e=>this.viewItems[e]),f=c.map(e=>i[e]),_=d.reduce((e,t)=>e+(this.viewItems[t].minimumSize-i[t]),0),v=d.reduce((e,t)=>e+(this.viewItems[t].maximumSize-i[t]),0),C=0===c.length?Number.POSITIVE_INFINITY:c.reduce((e,t)=>e+(i[t]-this.viewItems[t].minimumSize),0),b=Math.max(_,0===c.length?Number.NEGATIVE_INFINITY:c.reduce((e,t)=>e+(i[t]-this.viewItems[t].maximumSize),0),s),S=Math.min(C,v,r),w=!1;if(a){let e=this.viewItems[a.index],i=t>=a.limitDelta;w=i!==e.visible,e.setVisible(i,a.size)}if(!w&&l){let e=this.viewItems[l.index],i=t<l.limitDelta;w=i!==e.visible,e.setVisible(i,l.size)}if(w)return this.resize(e,t,i,n,o,s,r);t=(0,m.clamp)(t,b,S);for(let e=0,i=t;e<u.length;e++){let t=u[e],n=(0,m.clamp)(g[e]+i,t.minimumSize,t.maximumSize);i-=n-g[e],t.size=n}for(let e=0,i=t;e<p.length;e++){let t=p[e],n=(0,m.clamp)(f[e]-i,t.minimumSize,t.maximumSize);i+=n-f[e],t.size=n}return t}distributeEmptySpace(e){let t=this.viewItems.reduce((e,t)=>e+t.size,0),i=this.size-t,n=(0,h.range)(this.viewItems.length-1,-1),o=n.filter(e=>1===this.viewItems[e].priority);for(let e of n.filter(e=>2===this.viewItems[e].priority))(0,h.pushToStart)(n,e);for(let e of o)(0,h.pushToEnd)(n,e);"number"==typeof e&&(0,h.pushToEnd)(n,e);for(let e=0;0!==i&&e<n.length;e++){let t=this.viewItems[n[e]],o=(0,m.clamp)(t.size+i,t.minimumSize,t.maximumSize);i-=o-t.size,t.size=o}}layoutViews(){this.contentSize=this.viewItems.reduce((e,t)=>e+t.size,0);let e=0;for(let t of this.viewItems)t.layout(e,this.layoutContext),e+=t.size;this.sashItems.forEach(e=>e.sash.layout()),this.updateSashEnablement(),this.updateScrollableElement()}updateScrollableElement(){0===this.orientation?this.scrollableElement.setScrollDimensions({height:this.size,scrollHeight:this.contentSize}):this.scrollableElement.setScrollDimensions({width:this.size,scrollWidth:this.contentSize})}updateSashEnablement(){let e=!1,t=this.viewItems.map(t=>e=t.size-t.minimumSize>0||e);e=!1;let i=this.viewItems.map(t=>e=t.maximumSize-t.size>0||e),n=[...this.viewItems].reverse();e=!1;let o=n.map(t=>e=t.size-t.minimumSize>0||e).reverse();e=!1;let s=n.map(t=>e=t.maximumSize-t.size>0||e).reverse(),r=0;for(let e=0;e<this.sashItems.length;e++){let{sash:n}=this.sashItems[e];r+=this.viewItems[e].size;let a=!(t[e]&&s[e+1]),l=!(i[e]&&o[e+1]);if(a&&l){let i=(0,h.range)(e,-1),s=(0,h.range)(e+1,this.viewItems.length),a=this.findFirstSnapIndex(i),l=this.findFirstSnapIndex(s),d="number"==typeof a&&!this.viewItems[a].visible,c="number"==typeof l&&!this.viewItems[l].visible;d&&o[e]&&(r>0||this.startSnappingEnabled)?n.state=1:c&&t[e]&&(r<this.contentSize||this.endSnappingEnabled)?n.state=2:n.state=0}else a&&!l?n.state=1:!a&&l?n.state=2:n.state=3}}getSashPosition(e){let t=0;for(let i=0;i<this.sashItems.length;i++)if(t+=this.viewItems[i].size,this.sashItems[i].sash===e)return t;return 0}findFirstSnapIndex(e){for(let t of e){let e=this.viewItems[t];if(e.visible&&e.snap)return t}for(let t of e){let e=this.viewItems[t];if(e.visible&&e.maximumSize-e.minimumSize>0)break;if(!e.visible&&e.snap)return t}}dispose(){super.dispose(),(0,g.dispose)(this.viewItems),this.viewItems=[],this.sashItems.forEach(e=>e.disposable.dispose()),this.sashItems=[]}}},756144:function(e,t,i){"use strict";i.r(t),(0,i("354606").registerLanguage)({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:()=>Promise.all([i.e("670"),i.e("624"),i.e("889"),i.e("786"),i.e("531"),i.e("242"),i.e("159"),i.e("86"),i.e("790"),i.e("387"),i.e("488"),i.e("25"),i.e("297"),i.e("606"),i.e("310")]).then(i.bind(i,"605693"))})},86003:function(e,t,i){"use strict";i.r(t),(0,i("354606").registerLanguage)({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:()=>Promise.all([i.e("670"),i.e("624"),i.e("889"),i.e("786"),i.e("531"),i.e("242"),i.e("159"),i.e("86"),i.e("790"),i.e("387"),i.e("488"),i.e("25"),i.e("297"),i.e("606"),i.e("310")]).then(i.bind(i,"373196"))})},675393:function(e,t,i){"use strict";i.r(t),i.d(t,{conf:function(){return n},language:function(){return o}});var n={wordPattern:/(#?-?\d*\.\d\w*%?)|([@#!.:]?[\w-?]+%?)|[@#!.]/g,comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},o={defaultToken:"",tokenPostfix:".less",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",identifierPlus:"-?-?([a-zA-Z:.]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-:.]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@nestedJSBegin"},["[ \\t\\r\\n]+",""],{include:"@comments"},{include:"@keyword"},{include:"@strings"},{include:"@numbers"},["[*_]?[a-zA-Z\\-\\s]+(?=:.*(;|(\\\\$)))","attribute.name","@attribute"],["url(\\-prefix)?\\(",{token:"tag",next:"@urldeclaration"}],["[{}()\\[\\]]","@brackets"],["[,:;]","delimiter"],["#@identifierPlus","tag.id"],["&","tag"],["\\.@identifierPlus(?=\\()","tag.class","@attribute"],["\\.@identifierPlus","tag.class"],["@identifierPlus","tag"],{include:"@operators"},["@(@identifier(?=[:,\\)]))","variable","@attribute"],["@(@identifier)","variable"],["@","key","@atRules"]],nestedJSBegin:[["``","delimiter.backtick"],["`",{token:"delimiter.backtick",next:"@nestedJSEnd",nextEmbedded:"text/javascript"}]],nestedJSEnd:[["`",{token:"delimiter.backtick",next:"@pop",nextEmbedded:"@pop"}]],operators:[["[<>=\\+\\-\\*\\/\\^\\|\\~]","operator"]],keyword:[["(@[\\s]*import|![\\s]*important|true|false|when|iscolor|isnumber|isstring|iskeyword|isurl|ispixel|ispercentage|isem|hue|saturation|lightness|alpha|lighten|darken|saturate|desaturate|fadein|fadeout|fade|spin|mix|round|ceil|floor|percentage)\\b","keyword"]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"tag",next:"@pop"}]],attribute:[{include:"@nestedJSBegin"},{include:"@comments"},{include:"@strings"},{include:"@numbers"},{include:"@keyword"},["[a-zA-Z\\-]+(?=\\()","attribute.value","@attribute"],[">","operator","@pop"],["@identifier","attribute.value"],{include:"@operators"},["@(@identifier)","variable"],["[)\\}]","@brackets","@pop"],["[{}()\\[\\]>]","@brackets"],["[;]","delimiter","@pop"],["[,=:]","delimiter"],["\\s",""],[".","attribute.value"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],numbers:[["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"attribute.value.number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","attribute.value.hex"]],units:[["(em|ex|ch|rem|fr|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","attribute.value.unit","@pop"]],strings:[['~?"',{token:"string.delimiter",next:"@stringsEndDoubleQuote"}],["~?'",{token:"string.delimiter",next:"@stringsEndQuote"}]],stringsEndDoubleQuote:[['\\\\"',"string"],['"',{token:"string.delimiter",next:"@popall"}],[".","string"]],stringsEndQuote:[["\\\\'","string"],["'",{token:"string.delimiter",next:"@popall"}],[".","string"]],atRules:[{include:"@comments"},{include:"@strings"},["[()]","delimiter"],["[\\{;]","delimiter","@pop"],[".","key"]]}}},231090:function(e,t,i){"use strict";i.r(t),(0,i("354606").registerLanguage)({id:"lexon",extensions:[".lex"],aliases:["Lexon"],loader:()=>Promise.all([i.e("670"),i.e("624"),i.e("889"),i.e("786"),i.e("531"),i.e("242"),i.e("159"),i.e("86"),i.e("790"),i.e("387"),i.e("488"),i.e("25"),i.e("297"),i.e("606"),i.e("310")]).then(i.bind(i,"434354"))})},742855:function(e,t,i){"use strict";i.r(t),(0,i("354606").registerLanguage)({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:()=>Promise.all([i.e("670"),i.e("624"),i.e("889"),i.e("786"),i.e("531"),i.e("242"),i.e("159"),i.e("86"),i.e("790"),i.e("387"),i.e("488"),i.e("25"),i.e("297"),i.e("606"),i.e("310")]).then(i.bind(i,"877362"))})},340092:function(e,t,i){"use strict";i.r(t),i.d(t,{conf:function(){return n},language:function(){return o}});var n={comments:{lineComment:"'"},brackets:[["(",")"],["[","]"],["If","EndIf"],["While","EndWhile"],["For","EndFor"],["Sub","EndSub"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]}]},o={defaultToken:"",tokenPostfix:".sb",ignoreCase:!0,brackets:[{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"keyword.tag-if",open:"If",close:"EndIf"},{token:"keyword.tag-while",open:"While",close:"EndWhile"},{token:"keyword.tag-for",open:"For",close:"EndFor"},{token:"keyword.tag-sub",open:"Sub",close:"EndSub"}],keywords:["Else","ElseIf","EndFor","EndIf","EndSub","EndWhile","For","Goto","If","Step","Sub","Then","To","While"],tagwords:["If","Sub","While","For"],operators:[">","<","<>","<=",">=","And","Or","+","-","*","/","="],identifier:/[a-zA-Z_][\w]*/,symbols:/[=><:+\-*\/%\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/(@identifier)(?=[.])/,"type"],[/@identifier/,{cases:{"@keywords":{token:"keyword.$0"},"@operators":"operator","@default":"variable.name"}}],[/([.])(@identifier)/,{cases:{$2:["delimiter","type.member"],"@default":""}}],[/\d*\.\d+/,"number.float"],[/\d+/,"number"],[/[()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":"delimiter"}}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"]],whitespace:[[/[ \t\r\n]+/,""],[/(\').*$/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"C?/,"string","@pop"]]}}},232337:function(e,t,i){"use strict";i.r(t),(0,i("354606").registerLanguage)({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:()=>Promise.all([i.e("670"),i.e("624"),i.e("889"),i.e("786"),i.e("531"),i.e("242"),i.e("159"),i.e("86"),i.e("790"),i.e("387"),i.e("488"),i.e("25"),i.e("297"),i.e("606"),i.e("310")]).then(i.bind(i,"301545"))})},312954:function(e,t,i){"use strict";i.r(t),i.d(t,{conf:function(){return n},language:function(){return o}});var n={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"'",close:"'",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"}]},o={defaultToken:"",tokenPostfix:".rq",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["add","as","asc","ask","base","by","clear","construct","copy","create","data","delete","desc","describe","distinct","drop","false","filter","from","graph","group","having","in","insert","limit","load","minus","move","named","not","offset","optional","order","prefix","reduced","select","service","silent","to","true","undef","union","using","values","where","with"],builtinFunctions:["a","abs","avg","bind","bnode","bound","ceil","coalesce","concat","contains","count","datatype","day","encode_for_uri","exists","floor","group_concat","hours","if","iri","isblank","isiri","isliteral","isnumeric","isuri","lang","langmatches","lcase","max","md5","min","minutes","month","now","rand","regex","replace","round","sameterm","sample","seconds","sha1","sha256","sha384","sha512","str","strafter","strbefore","strdt","strends","strlang","strlen","strstarts","struuid","substr","sum","timezone","tz","ucase","uri","uuid","year"],ignoreCase:!0,tokenizer:{root:[[/<[^\s\u00a0>]*>?/,"tag"],{include:"@strings"},[/#.*/,"comment"],[/[{}()\[\]]/,"@brackets"],[/[;,.]/,"delimiter"],[/[_\w\d]+:(\.(?=[\w_\-\\%])|[:\w_-]|\\[-\\_~.!$&'()*+,;=/?#@%]|%[a-f\d][a-f\d])*/,"tag"],[/:(\.(?=[\w_\-\\%])|[:\w_-]|\\[-\\_~.!$&'()*+,;=/?#@%]|%[a-f\d][a-f\d])+/,"tag"],[/[$?]?[_\w\d]+/,{cases:{"@keywords":{token:"keyword"},"@builtinFunctions":{token:"predefined.sql"},"@default":"identifier"}}],[/\^\^/,"operator.sql"],[/\^[*+\-<>=&|^\/!?]*/,"operator.sql"],[/[*+\-<>=&|\/!?]/,"operator.sql"],[/@[a-z\d\-]*/,"metatag.html"],[/\s+/,"white"]],strings:[[/'([^'\\]|\\.)*$/,"string.invalid"],[/'$/,"string.sql","@pop"],[/'/,"string.sql","@stringBody"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"$/,"string.sql","@pop"],[/"/,"string.sql","@dblStringBody"]],stringBody:[[/[^\\']+/,"string.sql"],[/\\./,"string.escape"],[/'/,"string.sql","@pop"]],dblStringBody:[[/[^\\"]+/,"string.sql"],[/\\./,"string.escape"],[/"/,"string.sql","@pop"]]}}},982711:function(e,t,i){"use strict";i.r(t),i.d(t,{ViewContentWidgets:function(){return a}});var n=i("409737"),o=i("670758"),s=i("71956");class r{constructor(e,t){this._coordinateBrand=void 0,this.top=e,this.left=t}}class a extends s.ViewPart{constructor(e,t){super(e),this._viewDomNode=t,this._widgets={},this.domNode=(0,o.createFastDomNode)(document.createElement("div")),s.PartFingerprints.write(this.domNode,1),this.domNode.setClassName("contentWidgets"),this.domNode.setPosition("absolute"),this.domNode.setTop(0),this.overflowingContentWidgetsDomNode=(0,o.createFastDomNode)(document.createElement("div")),s.PartFingerprints.write(this.overflowingContentWidgetsDomNode,2),this.overflowingContentWidgetsDomNode.setClassName("overflowingContentWidgets")}dispose(){super.dispose(),this._widgets={}}onConfigurationChanged(e){for(let t of Object.keys(this._widgets))this._widgets[t].onConfigurationChanged(e);return!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLineMappingChanged(e){for(let t of Object.keys(this._widgets))this._widgets[t].onLineMappingChanged(e);return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return!0}onZonesChanged(e){return!0}addWidget(e){let t=new l(this._context,this._viewDomNode,e);this._widgets[t.id]=t,t.allowEditorOverflow?this.overflowingContentWidgetsDomNode.appendChild(t.domNode):this.domNode.appendChild(t.domNode),this.setShouldRender()}setWidgetPosition(e,t,i,n){this._widgets[e.getId()].setPosition(t,i,n),this.setShouldRender()}removeWidget(e){let t=e.getId();if(this._widgets.hasOwnProperty(t)){let e=this._widgets[t];delete this._widgets[t];let i=e.domNode.domNode;i.parentNode.removeChild(i),i.removeAttribute("monaco-visible-content-widget"),this.setShouldRender()}}shouldSuppressMouseDownOnWidget(e){return!!this._widgets.hasOwnProperty(e)&&this._widgets[e].suppressMouseDown}onBeforeRender(e){for(let t of Object.keys(this._widgets))this._widgets[t].onBeforeRender(e)}prepareRender(e){for(let t of Object.keys(this._widgets))this._widgets[t].prepareRender(e)}render(e){for(let t of Object.keys(this._widgets))this._widgets[t].render(e)}}class l{constructor(e,t,i){this._context=e,this._viewDomNode=t,this._actual=i,this.domNode=(0,o.createFastDomNode)(this._actual.getDomNode()),this.id=this._actual.getId(),this.allowEditorOverflow=this._actual.allowEditorOverflow||!1,this.suppressMouseDown=this._actual.suppressMouseDown||!1;let n=this._context.configuration.options,s=n.get(133);this._fixedOverflowWidgets=n.get(38),this._contentWidth=s.contentWidth,this._contentLeft=s.contentLeft,this._lineHeight=n.get(61),this._range=null,this._viewRange=null,this._affinity=null,this._preference=[],this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1,this._maxWidth=this._getMaxWidth(),this._isVisible=!1,this._renderData=null,this.domNode.setPosition(this._fixedOverflowWidgets&&this.allowEditorOverflow?"fixed":"absolute"),this.domNode.setDisplay("none"),this.domNode.setVisibility("hidden"),this.domNode.setAttribute("widgetId",this.id),this.domNode.setMaxWidth(this._maxWidth)}onConfigurationChanged(e){let t=this._context.configuration.options;if(this._lineHeight=t.get(61),e.hasChanged(133)){let e=t.get(133);this._contentLeft=e.contentLeft,this._contentWidth=e.contentWidth,this._maxWidth=this._getMaxWidth()}}onLineMappingChanged(e){this._setPosition(this._range,this._affinity)}_setPosition(e,t){var i;if(this._range=e,this._viewRange=null,this._affinity=t,this._range){let e=this._context.viewModel.model.validateRange(this._range);(this._context.viewModel.coordinatesConverter.modelPositionIsVisible(e.getStartPosition())||this._context.viewModel.coordinatesConverter.modelPositionIsVisible(e.getEndPosition()))&&(this._viewRange=this._context.viewModel.coordinatesConverter.convertModelRangeToViewRange(e,null!==(i=this._affinity)&&void 0!==i?i:void 0))}}_getMaxWidth(){return this.allowEditorOverflow?window.innerWidth||document.documentElement.offsetWidth||document.body.offsetWidth:this._contentWidth}setPosition(e,t,i){this._setPosition(e,i),this._preference=t,this._viewRange&&this._preference&&this._preference.length>0?this.domNode.setDisplay("block"):this.domNode.setDisplay("none"),this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1}_layoutBoxInViewport(e,t,i,n,o){let s=e.top,r=t.top+this._lineHeight,a=o.viewportHeight-r,l=e.left,d=t.left;return l+i>o.scrollLeft+o.viewportWidth&&(l=o.scrollLeft+o.viewportWidth-i),d+i>o.scrollLeft+o.viewportWidth&&(d=o.scrollLeft+o.viewportWidth-i),l<o.scrollLeft&&(l=o.scrollLeft),d<o.scrollLeft&&(d=o.scrollLeft),{fitsAbove:s>=n,aboveTop:s-n,aboveLeft:l,fitsBelow:a>=n,belowTop:r,belowLeft:d}}_layoutHorizontalSegmentInPage(e,t,i,o){let s=Math.max(0,t.left-o),r=Math.min(t.left+t.width+o,e.width),a=t.left+i-n.StandardWindow.scrollX;if(a+o>r){let e=a-(r-o);a-=e,i-=e}if(a<s){let e=a-s;a-=e,i-=e}return[i,a]}_layoutBoxInPage(e,t,i,o,s){let r=e.top-o,a=t.top+this._lineHeight,l=n.getDomNodePagePosition(this._viewDomNode.domNode),d=l.top+r-n.StandardWindow.scrollY,h=l.top+a-n.StandardWindow.scrollY,c=n.getClientArea(document.body),[u,g]=this._layoutHorizontalSegmentInPage(c,l,e.left-s.scrollLeft+this._contentLeft,i),[m,p]=this._layoutHorizontalSegmentInPage(c,l,t.left-s.scrollLeft+this._contentLeft,i),f=d>=22,_=h+o<=c.height-22;return this._fixedOverflowWidgets?{fitsAbove:f,aboveTop:Math.max(d,22),aboveLeft:g,fitsBelow:_,belowTop:h,belowLeft:p}:{fitsAbove:f,aboveTop:r,aboveLeft:u,fitsBelow:_,belowTop:a,belowLeft:m}}_prepareRenderWidgetAtExactPositionOverflowing(e){return new r(e.top,e.left+this._contentLeft)}_getTopAndBottomLeft(e){if(!this._viewRange)return[null,null];let t=e.linesVisibleRangesForRange(this._viewRange,!1);if(!t||0===t.length)return[null,null];let i=t[0],n=t[0];for(let e of t)e.lineNumber<i.lineNumber&&(i=e),e.lineNumber>n.lineNumber&&(n=e);let o=1073741824;for(let e of i.ranges)e.left<o&&(o=e.left);let s=1073741824;for(let e of n.ranges)e.left<s&&(s=e.left);let a=new r(e.getVerticalOffsetForLineNumber(i.lineNumber)-e.scrollTop,o);return[a,new r(e.getVerticalOffsetForLineNumber(n.lineNumber)-e.scrollTop,s)]}_prepareRenderWidget(e){let t;if(!this._preference||0===this._preference.length)return null;let[i,n]=this._getTopAndBottomLeft(e);if(!i||!n)return null;if(-1===this._cachedDomNodeOffsetWidth||-1===this._cachedDomNodeOffsetHeight){let e=null;if("function"==typeof this._actual.beforeRender&&(e=d(this._actual.beforeRender,this._actual)),e)this._cachedDomNodeOffsetWidth=e.width,this._cachedDomNodeOffsetHeight=e.height;else{let e=this.domNode.domNode.getBoundingClientRect();this._cachedDomNodeOffsetWidth=Math.round(e.width),this._cachedDomNodeOffsetHeight=Math.round(e.height)}}t=this.allowEditorOverflow?this._layoutBoxInPage(i,n,this._cachedDomNodeOffsetWidth,this._cachedDomNodeOffsetHeight,e):this._layoutBoxInViewport(i,n,this._cachedDomNodeOffsetWidth,this._cachedDomNodeOffsetHeight,e);for(let e=1;e<=2;e++)for(let n of this._preference)if(1===n){if(!t)return null;if(2===e||t.fitsAbove)return{coordinate:new r(t.aboveTop,t.aboveLeft),position:1}}else if(2===n){if(!t)return null;if(2===e||t.fitsBelow)return{coordinate:new r(t.belowTop,t.belowLeft),position:2}}else{if(this.allowEditorOverflow)return{coordinate:this._prepareRenderWidgetAtExactPositionOverflowing(i),position:0};return{coordinate:i,position:0}}return null}onBeforeRender(e){if(!!this._viewRange&&!!this._preference)!(this._viewRange.endLineNumber<e.startLineNumber)&&!(this._viewRange.startLineNumber>e.endLineNumber)&&this.domNode.setMaxWidth(this._maxWidth)}prepareRender(e){this._renderData=this._prepareRenderWidget(e)}render(e){if(!this._renderData){this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this.domNode.setVisibility("hidden")),"function"==typeof this._actual.afterRender&&d(this._actual.afterRender,this._actual,null);return}this.allowEditorOverflow?this.domNode.setTop(this._renderData.coordinate.top):this.domNode.setTop(this._renderData.coordinate.top+e.scrollTop-e.bigNumbersDelta),this.domNode.setLeft(this._renderData.coordinate.left),!this._isVisible&&(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0),"function"==typeof this._actual.afterRender&&d(this._actual.afterRender,this._actual,this._renderData.position)}}function d(e,t,...i){try{return e.call(t,...i)}catch(e){return null}}},611699:function(e,t,i){"use strict";i.r(t),i.d(t,{IndentGuidesOverlay:function(){return c}}),i("722239");var n=i("707202"),o=i("126939"),s=i("439703"),r=i("457938"),a=i("603868"),l=i("744138"),d=i("2349"),h=i("927924");class c extends n.DynamicViewOverlay{constructor(e){super(),this._context=e,this._primaryPosition=null;let t=this._context.configuration.options,i=t.get(134),n=t.get(46);this._lineHeight=t.get(61),this._spaceWidth=n.spaceWidth,this._maxIndentLeft=-1===i.wrappingColumn?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(13),this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){let t=this._context.configuration.options,i=t.get(134),n=t.get(46);return this._lineHeight=t.get(61),this._spaceWidth=n.spaceWidth,this._maxIndentLeft=-1===i.wrappingColumn?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(13),!0}onCursorStateChanged(e){var t;let i=e.selections[0].getPosition();return(null===(t=this._primaryPosition)||void 0===t?!void 0:!t.equals(i))&&(this._primaryPosition=i,!0)}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}onLanguageConfigurationChanged(e){return!0}prepareRender(e){var t,i,n,o;if(!this._bracketPairGuideOptions.indentation&&!1===this._bracketPairGuideOptions.bracketPairs){this._renderResult=null;return}let s=e.visibleRange.startLineNumber,a=e.visibleRange.endLineNumber,l=e.scrollWidth,d=this._lineHeight,h=this._primaryPosition,c=this.getGuidesByLine(s,a,h),u=[];for(let h=s;h<=a;h++){let a=h-s,g=c[a],m="",p=null!==(i=null===(t=e.visibleRangeForPosition(new r.Position(h,1)))||void 0===t?void 0:t.left)&&void 0!==i?i:0;for(let t of g){let i=-1===t.column?p+(t.visibleColumn-1)*this._spaceWidth:e.visibleRangeForPosition(new r.Position(h,t.column)).left;if(i>l||this._maxIndentLeft>0&&i>this._maxIndentLeft)break;let s=t.horizontalLine?t.horizontalLine.top?"horizontal-top":"horizontal-bottom":"vertical",a=t.horizontalLine?(null!==(o=null===(n=e.visibleRangeForPosition(new r.Position(h,t.horizontalLine.endColumn)))||void 0===n?void 0:n.left)&&void 0!==o?o:i+this._spaceWidth)-i:this._spaceWidth;m+=`<div class="core-guide ${t.className} ${s}" style="left:${i}px;height:${d}px;width:${a}px"></div>`}u[a]=m}this._renderResult=u}getGuidesByLine(e,t,i){let n=!1!==this._bracketPairGuideOptions.bracketPairs?this._context.viewModel.getBracketGuidesInRangeByLine(e,t,i,{highlightActive:this._bracketPairGuideOptions.highlightActiveBracketPair,horizontalGuides:!0===this._bracketPairGuideOptions.bracketPairsHorizontal?h.HorizontalGuidesState.Enabled:"active"===this._bracketPairGuideOptions.bracketPairsHorizontal?h.HorizontalGuidesState.EnabledForActive:h.HorizontalGuidesState.Disabled,includeInactive:!0===this._bracketPairGuideOptions.bracketPairs}):null,o=this._bracketPairGuideOptions.indentation?this._context.viewModel.getLinesIndentGuides(e,t):null,s=0,r=0,l=0;if(!1!==this._bracketPairGuideOptions.highlightActiveIndentation&&i){let n=this._context.viewModel.getActiveIndentGuide(i.lineNumber,e,t);s=n.startLineNumber,r=n.endLineNumber,l=n.indent}let{indentSize:d}=this._context.viewModel.model.getOptions(),c=[];for(let i=e;i<=t;i++){let t=[];c.push(t);let u=n?n[i-e]:[],g=new a.ArrayQueue(u),m=o?o[i-e]:[];for(let e=1;e<=m;e++){let n=(e-1)*d+1,o=("always"===this._bracketPairGuideOptions.highlightActiveIndentation||0===u.length)&&s<=i&&i<=r&&e===l;t.push(...g.takeWhile(e=>e.visibleColumn<n)||[]);let a=g.peek();(!a||a.visibleColumn!==n||a.horizontalLine)&&t.push(new h.IndentGuide(n,-1,o?"core-guide-indent-active":"core-guide-indent",null,-1,-1))}t.push(...g.takeWhile(e=>!0)||[])}return c}render(e,t){if(!this._renderResult)return"";let i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}function u(e){if(!(e&&e.isTransparent()))return e}(0,s.registerThemingParticipant)((e,t)=>{let i=e.getColor(o.editorIndentGuides);i&&t.addRule(`.monaco-editor .lines-content .core-guide-indent { box-shadow: 1px 0 0 0 ${i} inset; }`);let n=e.getColor(o.editorActiveIndentGuides)||i;n&&t.addRule(`.monaco-editor .lines-content .core-guide-indent-active { box-shadow: 1px 0 0 0 ${n} inset; }`);let s=[{bracketColor:o.editorBracketHighlightingForeground1,guideColor:o.editorBracketPairGuideBackground1,guideColorActive:o.editorBracketPairGuideActiveBackground1},{bracketColor:o.editorBracketHighlightingForeground2,guideColor:o.editorBracketPairGuideBackground2,guideColorActive:o.editorBracketPairGuideActiveBackground2},{bracketColor:o.editorBracketHighlightingForeground3,guideColor:o.editorBracketPairGuideBackground3,guideColorActive:o.editorBracketPairGuideActiveBackground3},{bracketColor:o.editorBracketHighlightingForeground4,guideColor:o.editorBracketPairGuideBackground4,guideColorActive:o.editorBracketPairGuideActiveBackground4},{bracketColor:o.editorBracketHighlightingForeground5,guideColor:o.editorBracketPairGuideBackground5,guideColorActive:o.editorBracketPairGuideActiveBackground5},{bracketColor:o.editorBracketHighlightingForeground6,guideColor:o.editorBracketPairGuideBackground6,guideColorActive:o.editorBracketPairGuideActiveBackground6}],r=new d.BracketPairGuidesClassNames,a=s.map(t=>{var i,n;let o=e.getColor(t.bracketColor),s=e.getColor(t.guideColor),r=e.getColor(t.guideColorActive),a=u(null!==(i=u(s))&&void 0!==i?i:null==o?void 0:o.transparent(.3)),l=u(null!==(n=u(r))&&void 0!==n?n:o);if(a&&l)return{guideColor:a,guideColorActive:l}}).filter(l.isDefined);if(a.length>0){for(let e=0;e<30;e++){let i=a[e%a.length];t.addRule(`.monaco-editor .${r.getInlineClassNameOfLevel(e).replace(/ /g,".")} { --guide-color: ${i.guideColor}; --guide-color-active: ${i.guideColorActive}; }`)}t.addRule(".monaco-editor .vertical { box-shadow: 1px 0 0 0 var(--guide-color) inset; }"),t.addRule(".monaco-editor .horizontal-top { border-top: 1px solid var(--guide-color); }"),t.addRule(".monaco-editor .horizontal-bottom { border-bottom: 1px solid var(--guide-color); }"),t.addRule(`.monaco-editor .vertical.${r.activeClassName} { box-shadow: 1px 0 0 0 var(--guide-color-active) inset; }`),t.addRule(`.monaco-editor .horizontal-top.${r.activeClassName} { border-top: 1px solid var(--guide-color-active); }`),t.addRule(`.monaco-editor .horizontal-bottom.${r.activeClassName} { border-bottom: 1px solid var(--guide-color-active); }`)}})},177386:function(e,t,i){"use strict";i.r(t),i.d(t,{CodeEditorWidget:function(){return K}}),i("19812"),i("105088");var n=i("708339"),o=i("409737"),s=i("161111"),r=i("916904"),a=i("919527"),l=i("24342"),d=i("752567"),h=i("159923"),c=i("583368"),u=i("620730"),g=i("291140"),m=i("416637"),p=i("361209"),f=i("394798"),_=i("457938"),v=i("761045"),C=i("861065"),b=i("292118"),S=i("193478"),w=i("976617"),D=i("599599"),y=i("126939"),L=i("897085"),I=i("776620"),E=i("326896"),x=i("549436"),N=i("706301"),M=i("384193"),T=i("297669"),O=i("439703"),k=i("138204"),P=i("744138"),R=i("122559"),A=i("231882"),z=i("812315"),F=i("962785"),V=i("953120"),W=i("678540"),H=function(e,t){return function(i,n){t(i,n,e)}};let B=0;class j{constructor(e,t,i,n,o){this.model=e,this.viewModel=t,this.view=i,this.hasRealView=n,this.listenersToRemove=o}dispose(){(0,a.dispose)(this.listenersToRemove),this.model.onBeforeDetached(),this.hasRealView&&this.view.dispose(),this.viewModel.dispose()}}let K=class e extends a.Disposable{constructor(e,t,i,n,a,l,d,c,u,g,m,p){let f;super(),this.languageConfigurationService=m,this._deliveryQueue=new r.EventDeliveryQueue,this._onDidDispose=this._register(new r.Emitter),this.onDidDispose=this._onDidDispose.event,this._onDidChangeModelContent=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelContent=this._onDidChangeModelContent.event,this._onDidChangeModelLanguage=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguage=this._onDidChangeModelLanguage.event,this._onDidChangeModelLanguageConfiguration=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguageConfiguration=this._onDidChangeModelLanguageConfiguration.event,this._onDidChangeModelOptions=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelOptions=this._onDidChangeModelOptions.event,this._onDidChangeModelDecorations=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelDecorations=this._onDidChangeModelDecorations.event,this._onDidChangeModelTokens=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelTokens=this._onDidChangeModelTokens.event,this._onDidChangeConfiguration=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._onDidChangeModel=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModel=this._onDidChangeModel.event,this._onDidChangeCursorPosition=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorPosition=this._onDidChangeCursorPosition.event,this._onDidChangeCursorSelection=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorSelection=this._onDidChangeCursorSelection.event,this._onDidAttemptReadOnlyEdit=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidAttemptReadOnlyEdit=this._onDidAttemptReadOnlyEdit.event,this._onDidLayoutChange=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidLayoutChange=this._onDidLayoutChange.event,this._editorTextFocus=this._register(new U({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorText=this._editorTextFocus.onDidChangeToTrue,this.onDidBlurEditorText=this._editorTextFocus.onDidChangeToFalse,this._editorWidgetFocus=this._register(new U({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorWidget=this._editorWidgetFocus.onDidChangeToTrue,this.onDidBlurEditorWidget=this._editorWidgetFocus.onDidChangeToFalse,this._onWillType=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onWillType=this._onWillType.event,this._onDidType=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidType=this._onDidType.event,this._onDidCompositionStart=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidCompositionStart=this._onDidCompositionStart.event,this._onDidCompositionEnd=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidCompositionEnd=this._onDidCompositionEnd.event,this._onDidPaste=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidPaste=this._onDidPaste.event,this._onMouseUp=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseUp=this._onMouseUp.event,this._onMouseDown=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseDown=this._onMouseDown.event,this._onMouseDrag=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseDrag=this._onMouseDrag.event,this._onMouseDrop=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseDrop=this._onMouseDrop.event,this._onMouseDropCanceled=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseDropCanceled=this._onMouseDropCanceled.event,this._onDropIntoEditor=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDropIntoEditor=this._onDropIntoEditor.event,this._onContextMenu=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onContextMenu=this._onContextMenu.event,this._onMouseMove=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseMove=this._onMouseMove.event,this._onMouseLeave=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseLeave=this._onMouseLeave.event,this._onMouseWheel=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseWheel=this._onMouseWheel.event,this._onKeyUp=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onKeyUp=this._onKeyUp.event,this._onKeyDown=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onKeyDown=this._onKeyDown.event,this._onDidContentSizeChange=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._onDidScrollChange=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidScrollChange=this._onDidScrollChange.event,this._onDidChangeViewZones=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeViewZones=this._onDidChangeViewZones.event,this._onDidChangeHiddenAreas=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeHiddenAreas=this._onDidChangeHiddenAreas.event,this._bannerDomNode=null,this._dropIntoEditorDecorations=this.createDecorationsCollection();let _=Object.assign({},t);for(let t of(this._domElement=e,this._overflowWidgetsDomNode=_.overflowWidgetsDomNode,delete _.overflowWidgetsDomNode,this._id=++B,this._decorationTypeKeysToIds={},this._decorationTypeSubtypes={},this._telemetryData=i.telemetryData,this._configuration=this._register(this._createConfiguration(i.isSimpleWidget||!1,_,g)),this._register(this._configuration.onDidChange(e=>{this._onDidChangeConfiguration.fire(e);let t=this._configuration.options;if(e.hasChanged(133)){let e=t.get(133);this._onDidLayoutChange.fire(e)}})),this._contextKeyService=this._register(d.createScoped(this._domElement)),this._notificationService=u,this._codeEditorService=a,this._commandService=l,this._themeService=c,this._register(new $(this,this._contextKeyService)),this._register(new Q(this,this._contextKeyService,p)),this._instantiationService=n.createChild(new M.ServiceCollection([x.IContextKeyService,this._contextKeyService])),this._modelData=null,this._contributions={},this._actions={},this._focusTracker=new G(e),this._register(this._focusTracker.onChange(()=>{this._editorWidgetFocus.setValue(this._focusTracker.hasFocus())})),this._contentWidgets={},this._overlayWidgets={},f=Array.isArray(i.contributions)?i.contributions:h.EditorExtensionsRegistry.getEditorContributions())){if(this._contributions[t.id]){(0,s.onUnexpectedError)(Error(`Cannot have two contributions with the same id ${t.id}`));continue}try{let e=this._instantiationService.createInstance(t.ctor,this);this._contributions[t.id]=e}catch(e){(0,s.onUnexpectedError)(e)}}h.EditorExtensionsRegistry.getEditorActions().forEach(e=>{if(this._actions[e.id]){(0,s.onUnexpectedError)(Error(`Cannot have two actions with the same id ${e.id}`));return}let t=new b.InternalEditorAction(e.id,e.label,e.alias,(0,P.withNullAsUndefined)(e.precondition),()=>this._instantiationService.invokeFunction(t=>Promise.resolve(e.runEditorCommand(t,this,null))),this._contextKeyService);this._actions[t.id]=t});let v=()=>!this._configuration.options.get(83)&&this._configuration.options.get(32).enabled;this._register(new o.DragAndDropObserver(this._domElement,{onDragEnter:()=>void 0,onDragOver:e=>{if(!v())return;let t=this.getTargetAtClientPoint(e.clientX,e.clientY);(null==t?void 0:t.position)&&this.showDropIndicatorAt(t.position)},onDrop:e=>{var t,i,n,o;return t=this,i=void 0,n=void 0,o=function*(){if(!v())return;if(this.removeDropIndicator(),!e.dataTransfer)return;let t=this.getTargetAtClientPoint(e.clientX,e.clientY);(null==t?void 0:t.position)&&this._onDropIntoEditor.fire({position:t.position,event:e})},new(n||(n=Promise))(function(e,s){function r(e){try{l(o.next(e))}catch(e){s(e)}}function a(e){try{l(o.throw(e))}catch(e){s(e)}}function l(t){var i;t.done?e(t.value):((i=t.value)instanceof n?i:new n(function(e){e(i)})).then(r,a)}l((o=o.apply(t,i||[])).next())})},onDragLeave:()=>{this.removeDropIndicator()},onDragEnd:()=>{this.removeDropIndicator()}})),this._codeEditorService.addCodeEditor(this)}get isSimpleWidget(){return this._configuration.isSimpleWidget}_createConfiguration(e,t,i){return new d.EditorConfiguration(e,t,this._domElement,i)}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return S.EditorType.ICodeEditor}dispose(){this._codeEditorService.removeCodeEditor(this),this._focusTracker.dispose();let e=Object.keys(this._contributions);for(let t=0,i=e.length;t<i;t++){let i=e[t];this._contributions[i].dispose()}this._contributions={},this._actions={},this._contentWidgets={},this._overlayWidgets={},this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),super.dispose()}invokeWithinContext(e){return this._instantiationService.invokeFunction(e)}updateOptions(e){this._configuration.updateOptions(e||{})}getOptions(){return this._configuration.options}getOption(e){return this._configuration.options.get(e)}getRawOptions(){return this._configuration.getRawOptions()}getOverflowWidgetsDomNode(){return this._overflowWidgetsDomNode}getConfiguredWordAtPosition(e){return this._modelData?z.WordOperations.getWordAtPosition(this._modelData.model,this._configuration.options.get(119),e):null}getValue(e=null){if(!this._modelData)return"";let t=!!e&&!!e.preserveBOM,i=0;return e&&e.lineEnding&&"\n"===e.lineEnding?i=1:e&&e.lineEnding&&"\r\n"===e.lineEnding&&(i=2),this._modelData.model.getValue(i,t)}setValue(e){this._modelData&&this._modelData.model.setValue(e)}getModel(){return this._modelData?this._modelData.model:null}setModel(e=null){if(null===this._modelData&&null===e||this._modelData&&this._modelData.model===e)return;let t=this.hasTextFocus(),i=this._detachModel();this._attachModel(e),t&&this.hasModel()&&this.focus();let n={oldModelUrl:i?i.uri:null,newModelUrl:e?e.uri:null};this._removeDecorationTypes(),this._onDidChangeModel.fire(n),this._postDetachModelCleanup(i)}_removeDecorationTypes(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(let e in this._decorationTypeSubtypes){let t=this._decorationTypeSubtypes[e];for(let i in t)this._removeDecorationType(e+"-"+i)}this._decorationTypeSubtypes={}}}getVisibleRanges(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]}getVisibleRangesPlusViewportAboveBelow(){return this._modelData?this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow():[]}getWhitespaces(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]}static _getVerticalOffsetAfterPosition(e,t,i,n){let o=e.model.validatePosition({lineNumber:t,column:i}),s=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(o);return e.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(s.lineNumber,n)}getTopForLineNumber(t,i=!1){return this._modelData?e._getVerticalOffsetForPosition(this._modelData,t,1,i):-1}getTopForPosition(t,i){return this._modelData?e._getVerticalOffsetForPosition(this._modelData,t,i,!1):-1}static _getVerticalOffsetForPosition(e,t,i,n=!1){let o=e.model.validatePosition({lineNumber:t,column:i}),s=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(o);return e.viewModel.viewLayout.getVerticalOffsetForLineNumber(s.lineNumber,n)}getBottomForLineNumber(t,i=!1){return this._modelData?e._getVerticalOffsetAfterPosition(this._modelData,t,1,i):-1}setHiddenAreas(e){var t;null===(t=this._modelData)||void 0===t||t.viewModel.setHiddenAreas(e.map(e=>v.Range.lift(e)))}getVisibleColumnFromPosition(e){if(!this._modelData)return e.column;let t=this._modelData.model.validatePosition(e),i=this._modelData.model.getOptions().tabSize;return f.CursorColumns.visibleColumnFromColumn(this._modelData.model.getLineContent(t.lineNumber),t.column,i)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(e,t="api"){if(this._modelData){if(!_.Position.isIPosition(e))throw Error("Invalid arguments");this._modelData.viewModel.setSelections(t,[{selectionStartLineNumber:e.lineNumber,selectionStartColumn:e.column,positionLineNumber:e.lineNumber,positionColumn:e.column}])}}_sendRevealRange(e,t,i,n){if(!this._modelData)return;if(!v.Range.isIRange(e))throw Error("Invalid arguments");let o=this._modelData.model.validateRange(e),s=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(o);this._modelData.viewModel.revealRange("api",i,s,t,n)}revealLine(e,t=0){this._revealLine(e,0,t)}revealLineInCenter(e,t=0){this._revealLine(e,1,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._revealLine(e,2,t)}revealLineNearTop(e,t=0){this._revealLine(e,5,t)}_revealLine(e,t,i){if("number"!=typeof e)throw Error("Invalid arguments");this._sendRevealRange(new v.Range(e,1,e,1),t,!1,i)}revealPosition(e,t=0){this._revealPosition(e,0,!0,t)}revealPositionInCenter(e,t=0){this._revealPosition(e,1,!0,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._revealPosition(e,2,!0,t)}revealPositionNearTop(e,t=0){this._revealPosition(e,5,!0,t)}_revealPosition(e,t,i,n){if(!_.Position.isIPosition(e))throw Error("Invalid arguments");this._sendRevealRange(new v.Range(e.lineNumber,e.column,e.lineNumber,e.column),t,i,n)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(e,t="api"){let i=C.Selection.isISelection(e),n=v.Range.isIRange(e);if(!i&&!n)throw Error("Invalid arguments");if(i)this._setSelectionImpl(e,t);else if(n){let i={selectionStartLineNumber:e.startLineNumber,selectionStartColumn:e.startColumn,positionLineNumber:e.endLineNumber,positionColumn:e.endColumn};this._setSelectionImpl(i,t)}}_setSelectionImpl(e,t){if(!this._modelData)return;let i=new C.Selection(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn);this._modelData.viewModel.setSelections(t,[i])}revealLines(e,t,i=0){this._revealLines(e,t,0,i)}revealLinesInCenter(e,t,i=0){this._revealLines(e,t,1,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._revealLines(e,t,2,i)}revealLinesNearTop(e,t,i=0){this._revealLines(e,t,5,i)}_revealLines(e,t,i,n){if("number"!=typeof e||"number"!=typeof t)throw Error("Invalid arguments");this._sendRevealRange(new v.Range(e,1,t,1),i,!1,n)}revealRange(e,t=0,i=!1,n=!0){this._revealRange(e,i?1:0,n,t)}revealRangeInCenter(e,t=0){this._revealRange(e,1,!0,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._revealRange(e,2,!0,t)}revealRangeNearTop(e,t=0){this._revealRange(e,5,!0,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._revealRange(e,6,!0,t)}revealRangeAtTop(e,t=0){this._revealRange(e,3,!0,t)}_revealRange(e,t,i,n){if(!v.Range.isIRange(e))throw Error("Invalid arguments");this._sendRevealRange(v.Range.lift(e),t,i,n)}setSelections(e,t="api",i=0){if(this._modelData){if(!e||0===e.length)throw Error("Invalid arguments");for(let t=0,i=e.length;t<i;t++)if(!C.Selection.isISelection(e[t]))throw Error("Invalid arguments");this._modelData.viewModel.setSelections(t,e,i)}}getContentWidth(){return this._modelData?this._modelData.viewModel.viewLayout.getContentWidth():-1}getScrollWidth(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollWidth():-1}getScrollLeft(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollLeft():-1}getContentHeight(){return this._modelData?this._modelData.viewModel.viewLayout.getContentHeight():-1}getScrollHeight(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollHeight():-1}getScrollTop(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollTop():-1}setScrollLeft(e,t=1){if(this._modelData){if("number"!=typeof e)throw Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPosition({scrollLeft:e},t)}}setScrollTop(e,t=1){if(this._modelData){if("number"!=typeof e)throw Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPosition({scrollTop:e},t)}}setScrollPosition(e,t=1){this._modelData&&this._modelData.viewModel.viewLayout.setScrollPosition(e,t)}saveViewState(){if(!this._modelData)return null;let e={};for(let t of Object.keys(this._contributions)){let i=this._contributions[t];"function"==typeof i.saveViewState&&(e[t]=i.saveViewState())}let t=this._modelData.viewModel.saveCursorState();return{cursorState:t,viewState:this._modelData.viewModel.saveState(),contributionsState:e}}restoreViewState(e){if(!!this._modelData&&!!this._modelData.hasRealView){if(e&&e.cursorState&&e.viewState){let t=e.cursorState;Array.isArray(t)?t.length>0&&this._modelData.viewModel.restoreCursorState(t):this._modelData.viewModel.restoreCursorState([t]);let i=e.contributionsState||{},n=Object.keys(this._contributions);for(let e=0,t=n.length;e<t;e++){let t=n[e],o=this._contributions[t];"function"==typeof o.restoreViewState&&o.restoreViewState(i[t])}let o=this._modelData.viewModel.reduceRestoreState(e.viewState);this._modelData.view.restoreState(o)}}}getContribution(e){return this._contributions[e]||null}getActions(){let e=[],t=Object.keys(this._actions);for(let i=0,n=t.length;i<n;i++){let n=t[i];e.push(this._actions[n])}return e}getSupportedActions(){let e=this.getActions();return e=e.filter(e=>e.isSupported())}getAction(e){return this._actions[e]||null}trigger(e,t,i){switch(i=i||{},t){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(e);return;case"type":{let t=i;this._type(e,t.text||"");return}case"replacePreviousChar":{let t=i;this._compositionType(e,t.text||"",t.replaceCharCnt||0,0,0);return}case"compositionType":{let t=i;this._compositionType(e,t.text||"",t.replacePrevCharCnt||0,t.replaceNextCharCnt||0,t.positionDelta||0);return}case"paste":{let t=i;this._paste(e,t.text||"",t.pasteOnNewLine||!1,t.multicursorText||null,t.mode||null);return}case"cut":this._cut(e);return}let n=this.getAction(t);if(n){Promise.resolve(n.run()).then(void 0,s.onUnexpectedError);return}if(!!this._modelData)!this._triggerEditorCommand(e,t,i)&&this._triggerCommand(t,i)}_triggerCommand(e,t){this._commandService.executeCommand(e,t)}_startComposition(){this._modelData&&(this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire())}_endComposition(e){this._modelData&&(this._modelData.viewModel.endComposition(e),this._onDidCompositionEnd.fire())}_type(e,t){this._modelData&&0!==t.length&&("keyboard"===e&&this._onWillType.fire(t),this._modelData.viewModel.type(t,e),"keyboard"===e&&this._onDidType.fire(t))}_compositionType(e,t,i,n,o){this._modelData&&this._modelData.viewModel.compositionType(t,i,n,o,e)}_paste(e,t,i,n,o){if(!this._modelData||0===t.length)return;let s=this._modelData.viewModel,r=s.getSelection().getStartPosition();s.paste(t,i,n,e);let a=s.getSelection().getStartPosition();"keyboard"===e&&this._onDidPaste.fire({range:new v.Range(r.lineNumber,r.column,a.lineNumber,a.column),languageId:o})}_cut(e){this._modelData&&this._modelData.viewModel.cut(e)}_triggerEditorCommand(e,t,i){let n=h.EditorExtensionsRegistry.getEditorCommand(t);return!!n&&((i=i||{}).source=e,this._instantiationService.invokeFunction(e=>{Promise.resolve(n.runEditorCommand(e,this,i)).then(void 0,s.onUnexpectedError)}),!0)}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return!(!this._modelData||this._configuration.options.get(83))&&(this._modelData.model.pushStackElement(),!0)}popUndoStop(){return!(!this._modelData||this._configuration.options.get(83))&&(this._modelData.model.popStackElement(),!0)}executeEdits(e,t,i){let n;return!(!this._modelData||this._configuration.options.get(83))&&(n=i?Array.isArray(i)?()=>i:i:()=>null,this._modelData.viewModel.executeEdits(e,t,n),!0)}executeCommand(e,t){this._modelData&&this._modelData.viewModel.executeCommand(t,e)}executeCommands(e,t){this._modelData&&this._modelData.viewModel.executeCommands(t,e)}createDecorationsCollection(e){return new q(this,e)}changeDecorations(e){return this._modelData?this._modelData.model.changeDecorations(e,this._id):null}getLineDecorations(e){return this._modelData?this._modelData.model.getLineDecorations(e,this._id,(0,m.filterValidationDecorations)(this._configuration.options)):null}getDecorationsInRange(e){return this._modelData?this._modelData.model.getDecorationsInRange(e,this._id,(0,m.filterValidationDecorations)(this._configuration.options)):null}deltaDecorations(e,t){return this._modelData?0===e.length&&0===t.length?e:this._modelData.model.deltaDecorations(e,t,this._id):[]}removeDecorations(e){this._modelData&&0!==e.length&&this._modelData.model.changeDecorations(t=>{t.deltaDecorations(e,[])})}removeDecorationsByType(e){let t=this._decorationTypeKeysToIds[e];t&&this.deltaDecorations(t,[]),this._decorationTypeKeysToIds.hasOwnProperty(e)&&delete this._decorationTypeKeysToIds[e],this._decorationTypeSubtypes.hasOwnProperty(e)&&delete this._decorationTypeSubtypes[e]}getLayoutInfo(){return this._configuration.options.get(133)}createOverviewRuler(e){return this._modelData&&this._modelData.hasRealView?this._modelData.view.createOverviewRuler(e):null}getContainerDomNode(){return this._domElement}getDomNode(){return this._modelData&&this._modelData.hasRealView?this._modelData.view.domNode.domNode:null}delegateVerticalScrollbarPointerDown(e){this._modelData&&this._modelData.hasRealView&&this._modelData.view.delegateVerticalScrollbarPointerDown(e)}layout(e){this._configuration.observeContainer(e),this.render()}focus(){this._modelData&&this._modelData.hasRealView&&this._modelData.view.focus()}hasTextFocus(){return!!this._modelData&&!!this._modelData.hasRealView&&this._modelData.view.isFocused()}hasWidgetFocus(){return this._focusTracker&&this._focusTracker.hasFocus()}addContentWidget(e){let t={widget:e,position:e.getPosition()};this._contentWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a content widget with the same id."),this._contentWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(t)}layoutContentWidget(e){let t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){let i=this._contentWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(i)}}removeContentWidget(e){let t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){let e=this._contentWidgets[t];delete this._contentWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(e)}}addOverlayWidget(e){let t={widget:e,position:e.getPosition()};this._overlayWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(t)}layoutOverlayWidget(e){let t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){let i=this._overlayWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(i)}}removeOverlayWidget(e){let t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){let e=this._overlayWidgets[t];delete this._overlayWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(e)}}changeViewZones(e){this._modelData&&this._modelData.hasRealView&&this._modelData.view.change(e)}getTargetAtClientPoint(e,t){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getTargetAtClientPoint(e,t):null}getScrolledVisiblePosition(t){if(!this._modelData||!this._modelData.hasRealView)return null;let i=this._modelData.model.validatePosition(t),n=this._configuration.options,o=n.get(133),s=e._getVerticalOffsetForPosition(this._modelData,i.lineNumber,i.column)-this.getScrollTop();return{top:s,left:this._modelData.view.getOffsetForColumn(i.lineNumber,i.column)+o.glyphMarginWidth+o.lineNumbersWidth+o.decorationsWidth-this.getScrollLeft(),height:n.get(61)}}getOffsetForColumn(e,t){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getOffsetForColumn(e,t):-1}render(e=!1){this._modelData&&this._modelData.hasRealView&&this._modelData.view.render(!0,e)}setAriaOptions(e){this._modelData&&this._modelData.hasRealView&&this._modelData.view.setAriaOptions(e)}applyFontInfo(e){(0,V.applyFontInfo)(e,this._configuration.options.get(46))}setBanner(e,t){this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._domElement.removeChild(this._bannerDomNode),this._bannerDomNode=e,this._configuration.setReservedHeight(e?t:0),this._bannerDomNode&&this._domElement.prepend(this._bannerDomNode)}_attachModel(e){if(!e){this._modelData=null;return}let t=[];this._domElement.setAttribute("data-mode-id",e.getLanguageId()),this._configuration.setIsDominatedByLongLines(e.isDominatedByLongLines()),this._configuration.setModelLineCount(e.getLineCount()),e.onBeforeAttached();let i=new I.ViewModel(this._id,this._configuration,e,A.DOMLineBreaksComputerFactory.create(),R.MonospaceLineBreaksComputerFactory.create(this._configuration.options),e=>o.scheduleAtNextAnimationFrame(e),this.languageConfigurationService,this._themeService);t.push(e.onWillDispose(()=>this.setModel(null))),t.push(i.onEvent(t=>{switch(t.kind){case 0:this._onDidContentSizeChange.fire(t);break;case 1:this._editorTextFocus.setValue(t.hasFocus);break;case 2:this._onDidScrollChange.fire(t);break;case 3:this._onDidChangeViewZones.fire();break;case 4:this._onDidChangeHiddenAreas.fire();break;case 5:this._onDidAttemptReadOnlyEdit.fire();break;case 6:{t.reachedMaxCursorCount&&this._notificationService.warn(n.localize("cursors.maximum","The number of cursors has been limited to {0}.",p.CursorsController.MAX_CURSOR_COUNT));let e=[];for(let i=0,n=t.selections.length;i<n;i++)e[i]=t.selections[i].getPosition();let i={position:e[0],secondaryPositions:e.slice(1),reason:t.reason,source:t.source};this._onDidChangeCursorPosition.fire(i);let o={selection:t.selections[0],secondarySelections:t.selections.slice(1),modelVersionId:t.modelVersionId,oldSelections:t.oldSelections,oldModelVersionId:t.oldModelVersionId,source:t.source,reason:t.reason};this._onDidChangeCursorSelection.fire(o);break}case 7:this._onDidChangeModelDecorations.fire(t.event);break;case 8:this._domElement.setAttribute("data-mode-id",e.getLanguageId()),this._onDidChangeModelLanguage.fire(t.event);break;case 9:this._onDidChangeModelLanguageConfiguration.fire(t.event);break;case 10:this._onDidChangeModelContent.fire(t.event);break;case 11:this._onDidChangeModelOptions.fire(t.event);break;case 12:this._onDidChangeModelTokens.fire(t.event)}}));let[s,r]=this._createView(i);if(r){this._domElement.appendChild(s.domNode.domNode);let t=Object.keys(this._contentWidgets);for(let e=0,i=t.length;e<i;e++){let i=t[e];s.addContentWidget(this._contentWidgets[i])}t=Object.keys(this._overlayWidgets);for(let e=0,i=t.length;e<i;e++){let i=t[e];s.addOverlayWidget(this._overlayWidgets[i])}s.render(!1,!0),s.domNode.domNode.setAttribute("data-uri",e.uri.toString())}this._modelData=new j(e,i,s,r,t)}_createView(e){let t;t=this.isSimpleWidget?{paste:(e,t,i,n)=>{this._paste("keyboard",e,t,i,n)},type:e=>{this._type("keyboard",e)},compositionType:(e,t,i,n)=>{this._compositionType("keyboard",e,t,i,n)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:{paste:(e,t,i,n)=>{this._commandService.executeCommand("paste",{text:e,pasteOnNewLine:t,multicursorText:i,mode:n})},type:e=>{this._commandService.executeCommand("type",{text:e})},compositionType:(e,t,i,n)=>{i||n?this._commandService.executeCommand("compositionType",{text:e,replacePrevCharCnt:t,replaceNextCharCnt:i,positionDelta:n}):this._commandService.executeCommand("replacePreviousChar",{text:e,replaceCharCnt:t})},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};let i=new g.ViewUserInputEvents(e.coordinatesConverter);return i.onKeyDown=e=>this._onKeyDown.fire(e),i.onKeyUp=e=>this._onKeyUp.fire(e),i.onContextMenu=e=>this._onContextMenu.fire(e),i.onMouseMove=e=>this._onMouseMove.fire(e),i.onMouseLeave=e=>this._onMouseLeave.fire(e),i.onMouseDown=e=>this._onMouseDown.fire(e),i.onMouseUp=e=>this._onMouseUp.fire(e),i.onMouseDrag=e=>this._onMouseDrag.fire(e),i.onMouseDrop=e=>this._onMouseDrop.fire(e),i.onMouseDropCanceled=e=>this._onMouseDropCanceled.fire(e),i.onMouseWheel=e=>this._onMouseWheel.fire(e),[new u.View(t,this._configuration,this._themeService.getColorTheme(),e,i,this._overflowWidgetsDomNode),!0]}_postDetachModelCleanup(e){null==e||e.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(!this._modelData)return null;let e=this._modelData.model,t=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),t&&this._domElement.contains(t)&&this._domElement.removeChild(t),this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._domElement.removeChild(this._bannerDomNode),e}_removeDecorationType(e){this._codeEditorService.removeDecorationType(e)}hasModel(){return null!==this._modelData}showDropIndicatorAt(t){let i=[{range:new v.Range(t.lineNumber,t.column,t.lineNumber,t.column),options:e.dropIntoEditorDecorationOptions}];this._dropIntoEditorDecorations.set(i),this.revealPosition(t,1)}removeDropIndicator(){this._dropIntoEditorDecorations.clear()}};K.dropIntoEditorDecorationOptions=D.ModelDecorationOptions.register({description:"workbench-dnd-target",className:"dnd-target"}),K=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([H(3,N.IInstantiationService),H(4,c.ICodeEditorService),H(5,E.ICommandService),H(6,x.IContextKeyService),H(7,O.IThemeService),H(8,T.INotificationService),H(9,k.IAccessibilityService),H(10,F.ILanguageConfigurationService),H(11,W.ILanguageFeaturesService)],K);class U extends a.Disposable{constructor(e){super(),this._emitterOptions=e,this._onDidChangeToTrue=this._register(new r.Emitter(this._emitterOptions)),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new r.Emitter(this._emitterOptions)),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(e){let t=e?2:1;this._value!==t&&(this._value=t,2===this._value?this._onDidChangeToTrue.fire():1===this._value&&this._onDidChangeToFalse.fire())}}class $ extends a.Disposable{constructor(e,t){super(),this._editor=e,t.createKey("editorId",e.getId()),this._editorSimpleInput=w.EditorContextKeys.editorSimpleInput.bindTo(t),this._editorFocus=w.EditorContextKeys.focus.bindTo(t),this._textInputFocus=w.EditorContextKeys.textInputFocus.bindTo(t),this._editorTextFocus=w.EditorContextKeys.editorTextFocus.bindTo(t),this._editorTabMovesFocus=w.EditorContextKeys.tabMovesFocus.bindTo(t),this._editorReadonly=w.EditorContextKeys.readOnly.bindTo(t),this._inDiffEditor=w.EditorContextKeys.inDiffEditor.bindTo(t),this._editorColumnSelection=w.EditorContextKeys.columnSelection.bindTo(t),this._hasMultipleSelections=w.EditorContextKeys.hasMultipleSelections.bindTo(t),this._hasNonEmptySelection=w.EditorContextKeys.hasNonEmptySelection.bindTo(t),this._canUndo=w.EditorContextKeys.canUndo.bindTo(t),this._canRedo=w.EditorContextKeys.canRedo.bindTo(t),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromConfig())),this._register(this._editor.onDidChangeCursorSelection(()=>this._updateFromSelection())),this._register(this._editor.onDidFocusEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidFocusEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidChangeModel(()=>this._updateFromModel())),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromModel())),this._updateFromConfig(),this._updateFromSelection(),this._updateFromFocus(),this._updateFromModel(),this._editorSimpleInput.set(this._editor.isSimpleWidget)}_updateFromConfig(){let e=this._editor.getOptions();this._editorTabMovesFocus.set(e.get(132)),this._editorReadonly.set(e.get(83)),this._inDiffEditor.set(e.get(56)),this._editorColumnSelection.set(e.get(18))}_updateFromSelection(){let e=this._editor.getSelections();e?(this._hasMultipleSelections.set(e.length>1),this._hasNonEmptySelection.set(e.some(e=>!e.isEmpty()))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())}_updateFromFocus(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())}_updateFromModel(){let e=this._editor.getModel();this._canUndo.set(!!(e&&e.canUndo())),this._canRedo.set(!!(e&&e.canRedo()))}}class Q extends a.Disposable{constructor(e,t,i){super(),this._editor=e,this._contextKeyService=t,this._languageFeaturesService=i,this._langId=w.EditorContextKeys.languageId.bindTo(t),this._hasCompletionItemProvider=w.EditorContextKeys.hasCompletionItemProvider.bindTo(t),this._hasCodeActionsProvider=w.EditorContextKeys.hasCodeActionsProvider.bindTo(t),this._hasCodeLensProvider=w.EditorContextKeys.hasCodeLensProvider.bindTo(t),this._hasDefinitionProvider=w.EditorContextKeys.hasDefinitionProvider.bindTo(t),this._hasDeclarationProvider=w.EditorContextKeys.hasDeclarationProvider.bindTo(t),this._hasImplementationProvider=w.EditorContextKeys.hasImplementationProvider.bindTo(t),this._hasTypeDefinitionProvider=w.EditorContextKeys.hasTypeDefinitionProvider.bindTo(t),this._hasHoverProvider=w.EditorContextKeys.hasHoverProvider.bindTo(t),this._hasDocumentHighlightProvider=w.EditorContextKeys.hasDocumentHighlightProvider.bindTo(t),this._hasDocumentSymbolProvider=w.EditorContextKeys.hasDocumentSymbolProvider.bindTo(t),this._hasReferenceProvider=w.EditorContextKeys.hasReferenceProvider.bindTo(t),this._hasRenameProvider=w.EditorContextKeys.hasRenameProvider.bindTo(t),this._hasSignatureHelpProvider=w.EditorContextKeys.hasSignatureHelpProvider.bindTo(t),this._hasInlayHintsProvider=w.EditorContextKeys.hasInlayHintsProvider.bindTo(t),this._hasDocumentFormattingProvider=w.EditorContextKeys.hasDocumentFormattingProvider.bindTo(t),this._hasDocumentSelectionFormattingProvider=w.EditorContextKeys.hasDocumentSelectionFormattingProvider.bindTo(t),this._hasMultipleDocumentFormattingProvider=w.EditorContextKeys.hasMultipleDocumentFormattingProvider.bindTo(t),this._hasMultipleDocumentSelectionFormattingProvider=w.EditorContextKeys.hasMultipleDocumentSelectionFormattingProvider.bindTo(t),this._isInWalkThrough=w.EditorContextKeys.isInWalkThroughSnippet.bindTo(t);let n=()=>this._update();this._register(e.onDidChangeModel(n)),this._register(e.onDidChangeModelLanguage(n)),this._register(i.completionProvider.onDidChange(n)),this._register(i.codeActionProvider.onDidChange(n)),this._register(i.codeLensProvider.onDidChange(n)),this._register(i.definitionProvider.onDidChange(n)),this._register(i.declarationProvider.onDidChange(n)),this._register(i.implementationProvider.onDidChange(n)),this._register(i.typeDefinitionProvider.onDidChange(n)),this._register(i.hoverProvider.onDidChange(n)),this._register(i.documentHighlightProvider.onDidChange(n)),this._register(i.documentSymbolProvider.onDidChange(n)),this._register(i.referenceProvider.onDidChange(n)),this._register(i.renameProvider.onDidChange(n)),this._register(i.documentFormattingEditProvider.onDidChange(n)),this._register(i.documentRangeFormattingEditProvider.onDidChange(n)),this._register(i.signatureHelpProvider.onDidChange(n)),this._register(i.inlayHintsProvider.onDidChange(n)),n()}dispose(){super.dispose()}reset(){this._contextKeyService.bufferChangeEvents(()=>{this._langId.reset(),this._hasCompletionItemProvider.reset(),this._hasCodeActionsProvider.reset(),this._hasCodeLensProvider.reset(),this._hasDefinitionProvider.reset(),this._hasDeclarationProvider.reset(),this._hasImplementationProvider.reset(),this._hasTypeDefinitionProvider.reset(),this._hasHoverProvider.reset(),this._hasDocumentHighlightProvider.reset(),this._hasDocumentSymbolProvider.reset(),this._hasReferenceProvider.reset(),this._hasRenameProvider.reset(),this._hasDocumentFormattingProvider.reset(),this._hasDocumentSelectionFormattingProvider.reset(),this._hasSignatureHelpProvider.reset(),this._isInWalkThrough.reset()})}_update(){let e=this._editor.getModel();if(!e){this.reset();return}this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(e.getLanguageId()),this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(e)),this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(e)),this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(e)),this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(e)),this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(e)),this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(e)),this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(e)),this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(e)),this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(e)),this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(e)),this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(e)),this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(e)),this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(e)),this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(e)),this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(e)||this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(e).length+this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._isInWalkThrough.set(e.uri.scheme===l.Schemas.walkThroughSnippet)})}}class G extends a.Disposable{constructor(e){super(),this._onChange=this._register(new r.Emitter),this.onChange=this._onChange.event,this._hasFocus=!1,this._domFocusTracker=this._register(o.trackFocus(e)),this._register(this._domFocusTracker.onDidFocus(()=>{this._hasFocus=!0,this._onChange.fire(void 0)})),this._register(this._domFocusTracker.onDidBlur(()=>{this._hasFocus=!1,this._onChange.fire(void 0)}))}hasFocus(){return this._hasFocus}}class q{constructor(e,t){this._editor=e,this._decorationIds=[],this._isChangingDecorations=!1,Array.isArray(t)&&t.length>0&&this.set(t)}get length(){return this._decorationIds.length}onDidChange(e,t,i){return this._editor.onDidChangeModelDecorations(i=>{!this._isChangingDecorations&&e.call(t,i)},i)}getRange(e){return!this._editor.hasModel()||e>=this._decorationIds.length?null:this._editor.getModel().getDecorationRange(this._decorationIds[e])}getRanges(){if(!this._editor.hasModel())return[];let e=this._editor.getModel(),t=[];for(let i of this._decorationIds){let n=e.getDecorationRange(i);n&&t.push(n)}return t}has(e){return this._decorationIds.includes(e.id)}clear(){0!==this._decorationIds.length&&this.set([])}set(e){try{this._isChangingDecorations=!0,this._editor.changeDecorations(t=>{this._decorationIds=t.deltaDecorations(this._decorationIds,e)})}finally{this._isChangingDecorations=!1}}}let Y=encodeURIComponent("<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 3' enable-background='new 0 0 6 3' height='3' width='6'><g fill='"),Z=encodeURIComponent("'><polygon points='5.5,0 2.5,3 1.1,3 4.1,0'/><polygon points='4,0 6,2 6,0.6 5.4,0'/><polygon points='0,2 1,3 2.4,3 0,0.6'/></g></svg>");function X(e){return Y+encodeURIComponent(e.toString())+Z}let J=encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" height="3" width="12"><g fill="'),ee=encodeURIComponent('"><circle cx="1" cy="1" r="1"/><circle cx="5" cy="1" r="1"/><circle cx="9" cy="1" r="1"/></g></svg>');(0,O.registerThemingParticipant)((e,t)=>{let i=e.getColor(L.editorErrorBorder);i&&t.addRule(`.monaco-editor .squiggly-error { border-bottom: 4px double ${i}; }`);let n=e.getColor(L.editorErrorForeground);n&&t.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${X(n)}") repeat-x bottom left; }`);let o=e.getColor(L.editorErrorBackground);o&&t.addRule(`.monaco-editor .squiggly-error::before { display: block; content: ''; width: 100%; height: 100%; background: ${o}; }`);let s=e.getColor(L.editorWarningBorder);s&&t.addRule(`.monaco-editor .squiggly-warning { border-bottom: 4px double ${s}; }`);let r=e.getColor(L.editorWarningForeground);r&&t.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${X(r)}") repeat-x bottom left; }`);let a=e.getColor(L.editorWarningBackground);a&&t.addRule(`.monaco-editor .squiggly-warning::before { display: block; content: ''; width: 100%; height: 100%; background: ${a}; }`);let l=e.getColor(L.editorInfoBorder);l&&t.addRule(`.monaco-editor .squiggly-info { border-bottom: 4px double ${l}; }`);let d=e.getColor(L.editorInfoForeground);d&&t.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${X(d)}") repeat-x bottom left; }`);let h=e.getColor(L.editorInfoBackground);h&&t.addRule(`.monaco-editor .squiggly-info::before { display: block; content: ''; width: 100%; height: 100%; background: ${h}; }`);let c=e.getColor(L.editorHintBorder);c&&t.addRule(`.monaco-editor .squiggly-hint { border-bottom: 2px dotted ${c}; }`);let u=e.getColor(L.editorHintForeground);if(u)t.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${J+encodeURIComponent(u.toString())+ee}") no-repeat bottom left; }`);let g=e.getColor(y.editorUnnecessaryCodeOpacity);g&&t.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${g.rgba.a}; }`);let m=e.getColor(y.editorUnnecessaryCodeBorder);m&&t.addRule(`.monaco-editor.showUnused .squiggly-unnecessary { border-bottom: 2px dashed ${m}; }`);let p=e.getColor(L.editorForeground)||"inherit";t.addRule(`.monaco-editor.showDeprecated .squiggly-inline-deprecated { text-decoration: line-through; text-decoration-color: ${p}}`)})},253891:function(e,t,i){"use strict";i.r(t),i.d(t,{editorConfigurationBaseNode:function(){return d},isDiffEditorConfigurationKey:function(){return m},isEditorConfigurationKey:function(){return g}});var n,o=i("416637"),s=i("255062"),r=i("708339"),a=i("691125"),l=i("112721");let d=Object.freeze({id:"editor",order:5,type:"object",title:r.localize("editorConfigurationTitle","Editor"),scope:5}),h=Object.assign(Object.assign({},d),{properties:{"editor.tabSize":{type:"number",default:s.EDITOR_MODEL_DEFAULTS.tabSize,minimum:1,markdownDescription:r.localize("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.insertSpaces":{type:"boolean",default:s.EDITOR_MODEL_DEFAULTS.insertSpaces,markdownDescription:r.localize("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.detectIndentation":{type:"boolean",default:s.EDITOR_MODEL_DEFAULTS.detectIndentation,markdownDescription:r.localize("detectIndentation","Controls whether `#editor.tabSize#` and `#editor.insertSpaces#` will be automatically detected when a file is opened based on the file contents.")},"editor.trimAutoWhitespace":{type:"boolean",default:s.EDITOR_MODEL_DEFAULTS.trimAutoWhitespace,description:r.localize("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:s.EDITOR_MODEL_DEFAULTS.largeFileOptimizations,description:r.localize("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{type:"boolean",default:!0,description:r.localize("wordBasedSuggestions","Controls whether completions should be computed based on words in the document.")},"editor.wordBasedSuggestionsMode":{enum:["currentDocument","matchingDocuments","allDocuments"],default:"matchingDocuments",enumDescriptions:[r.localize("wordBasedSuggestionsMode.currentDocument","Only suggest words from the active document."),r.localize("wordBasedSuggestionsMode.matchingDocuments","Suggest words from all open documents of the same language."),r.localize("wordBasedSuggestionsMode.allDocuments","Suggest words from all open documents.")],description:r.localize("wordBasedSuggestionsMode","Controls from which documents word based completions are computed.")},"editor.semanticHighlighting.enabled":{enum:[!0,!1,"configuredByTheme"],enumDescriptions:[r.localize("semanticHighlighting.true","Semantic highlighting enabled for all color themes."),r.localize("semanticHighlighting.false","Semantic highlighting disabled for all color themes."),r.localize("semanticHighlighting.configuredByTheme","Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.")],default:"configuredByTheme",description:r.localize("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:r.localize("stablePeek","Keep peek editors open even when double clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:r.localize("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"editor.language.brackets":{type:["array","null"],default:null,description:r.localize("schema.brackets","Defines the bracket symbols that increase or decrease the indentation."),items:{type:"array",items:[{type:"string",description:r.localize("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:r.localize("schema.closeBracket","The closing bracket character or string sequence.")}]}},"editor.language.colorizedBracketPairs":{type:["array","null"],default:null,description:r.localize("schema.colorizedBracketPairs","Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled."),items:{type:"array",items:[{type:"string",description:r.localize("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:r.localize("schema.closeBracket","The closing bracket character or string sequence.")}]}},"diffEditor.maxComputationTime":{type:"number",default:5e3,description:r.localize("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.maxFileSize":{type:"number",default:50,description:r.localize("maxFileSize","Maximum file size in MB for which to compute diffs. Use 0 for no limit.")},"diffEditor.renderSideBySide":{type:"boolean",default:!0,description:r.localize("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.renderMarginRevertIcon":{type:"boolean",default:!0,description:r.localize("renderMarginRevertIcon","When enabled, the diff editor shows arrows in its glyph margin to revert changes.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:!0,description:r.localize("ignoreTrimWhitespace","When enabled, the diff editor ignores changes in leading or trailing whitespace.")},"diffEditor.renderIndicators":{type:"boolean",default:!0,description:r.localize("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")},"diffEditor.codeLens":{type:"boolean",default:!1,description:r.localize("codeLens","Controls whether the editor shows CodeLens.")},"diffEditor.wordWrap":{type:"string",enum:["off","on","inherit"],default:"inherit",markdownEnumDescriptions:[r.localize("wordWrap.off","Lines will never wrap."),r.localize("wordWrap.on","Lines will wrap at the viewport width."),r.localize("wordWrap.inherit","Lines will wrap according to the `#editor.wordWrap#` setting.")]}}});for(let e of o.editorOptionsRegistry){let t=e.schema;if(void 0!==t){;if(void 0!==(n=t).type||void 0!==n.anyOf)h.properties[`editor.${e.name}`]=t;else for(let e in t)Object.hasOwnProperty.call(t,e)&&(h.properties[e]=t[e])}}let c=null;function u(){return null===c&&(c=Object.create(null),Object.keys(h.properties).forEach(e=>{c[e]=!0})),c}function g(e){return u()[`editor.${e}`]||!1}function m(e){return u()[`diffEditor.${e}`]||!1}l.Registry.as(a.Extensions.Configuration).registerConfiguration(h)},394798:function(e,t,i){"use strict";i.r(t),i.d(t,{CursorColumns:function(){return o}});var n=i("266763");class o{static _nextVisibleColumn(e,t,i){return 9===e?o.nextRenderTabStop(t,i):n.isFullWidthCharacter(e)||n.isEmojiImprecise(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){let o=Math.min(t-1,e.length),s=e.substring(0,o),r=new n.GraphemeIterator(s),a=0;for(;!r.eol();){let e=n.getNextCodePoint(s,o,r.offset);r.nextGraphemeLength(),a=this._nextVisibleColumn(e,a,i)}return a}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;let o=e.length,s=new n.GraphemeIterator(e),r=0,a=1;for(;!s.eol();){let l=n.getNextCodePoint(e,o,s.offset);s.nextGraphemeLength();let d=this._nextVisibleColumn(l,r,i),h=s.offset+1;if(d>=t){let e=t-r;if(d-t<e)return h;return a}r=d,a=h}return o+1}static nextRenderTabStop(e,t){return e+t-e%t}static nextIndentTabStop(e,t){return e+t-e%t}static prevRenderTabStop(e,t){return Math.max(0,e-1-(e-1)%t)}static prevIndentTabStop(e,t){return Math.max(0,e-1-(e-1)%t)}}},404309:function(e,t,i){"use strict";i.r(t),i.d(t,{CursorMove:function(){return o},CursorMoveCommands:function(){return c}});var n,o,s=i("744138"),r=i("607910"),a=i("377287"),l=i("812315"),d=i("457938"),h=i("761045");class c{static addCursorDown(e,t,i){let n=[],o=0;for(let s=0,l=t.length;s<l;s++){let l=t[s];n[o++]=new r.CursorState(l.modelState,l.viewState),i?n[o++]=r.CursorState.fromModelState(a.MoveOperations.translateDown(e.cursorConfig,e.model,l.modelState)):n[o++]=r.CursorState.fromViewState(a.MoveOperations.translateDown(e.cursorConfig,e,l.viewState))}return n}static addCursorUp(e,t,i){let n=[],o=0;for(let s=0,l=t.length;s<l;s++){let l=t[s];n[o++]=new r.CursorState(l.modelState,l.viewState),i?n[o++]=r.CursorState.fromModelState(a.MoveOperations.translateUp(e.cursorConfig,e.model,l.modelState)):n[o++]=r.CursorState.fromViewState(a.MoveOperations.translateUp(e.cursorConfig,e,l.viewState))}return n}static moveToBeginningOfLine(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o];n[o]=this._moveToLineStart(e,s,i)}return n}static _moveToLineStart(e,t,i){let n=t.viewState.position.column,o=t.modelState.position.column,s=t.viewState.position.lineNumber,r=e.getLineFirstNonWhitespaceColumn(s);return n!==o&&n!==r?this._moveToLineStartByView(e,t,i):this._moveToLineStartByModel(e,t,i)}static _moveToLineStartByView(e,t,i){return r.CursorState.fromViewState(a.MoveOperations.moveToBeginningOfLine(e.cursorConfig,e,t.viewState,i))}static _moveToLineStartByModel(e,t,i){return r.CursorState.fromModelState(a.MoveOperations.moveToBeginningOfLine(e.cursorConfig,e.model,t.modelState,i))}static moveToEndOfLine(e,t,i,n){let o=[];for(let s=0,r=t.length;s<r;s++){let r=t[s];o[s]=this._moveToLineEnd(e,r,i,n)}return o}static _moveToLineEnd(e,t,i,n){let o=t.viewState.position,s=e.getLineMaxColumn(o.lineNumber),r=o.column===s,a=t.modelState.position,l=e.model.getLineMaxColumn(a.lineNumber),d=s-o.column==l-a.column;return r||d?this._moveToLineEndByModel(e,t,i,n):this._moveToLineEndByView(e,t,i,n)}static _moveToLineEndByView(e,t,i,n){return r.CursorState.fromViewState(a.MoveOperations.moveToEndOfLine(e.cursorConfig,e,t.viewState,i,n))}static _moveToLineEndByModel(e,t,i,n){return r.CursorState.fromModelState(a.MoveOperations.moveToEndOfLine(e.cursorConfig,e.model,t.modelState,i,n))}static expandLineSelection(e,t){let i=[];for(let n=0,o=t.length;n<o;n++){let o;let s=t[n],a=s.modelState.selection.startLineNumber,l=e.model.getLineCount(),c=s.modelState.selection.endLineNumber;c===l?o=e.model.getLineMaxColumn(l):(c++,o=1),i[n]=r.CursorState.fromModelState(new r.SingleCursorState(new h.Range(a,1,a,1),0,new d.Position(c,o),0))}return i}static moveToBeginningOfBuffer(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o];n[o]=r.CursorState.fromModelState(a.MoveOperations.moveToBeginningOfBuffer(e.cursorConfig,e.model,s.modelState,i))}return n}static moveToEndOfBuffer(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o];n[o]=r.CursorState.fromModelState(a.MoveOperations.moveToEndOfBuffer(e.cursorConfig,e.model,s.modelState,i))}return n}static selectAll(e,t){let i=e.model.getLineCount(),n=e.model.getLineMaxColumn(i);return r.CursorState.fromModelState(new r.SingleCursorState(new h.Range(1,1,1,1),0,new d.Position(i,n),0))}static line(e,t,i,n,o){let s=e.model.validatePosition(n),a=o?e.coordinatesConverter.validateViewPosition(new d.Position(o.lineNumber,o.column),s):e.coordinatesConverter.convertModelPositionToViewPosition(s);if(!i||!t.modelState.hasSelection()){let t=e.model.getLineCount(),i=s.lineNumber+1,n=1;return i>t&&(i=t,n=e.model.getLineMaxColumn(i)),r.CursorState.fromModelState(new r.SingleCursorState(new h.Range(s.lineNumber,1,i,n),0,new d.Position(i,n),0))}let l=t.modelState.selectionStart.getStartPosition().lineNumber;if(s.lineNumber<l)return r.CursorState.fromViewState(t.viewState.move(t.modelState.hasSelection(),a.lineNumber,1,0));if(s.lineNumber>l){let i=e.getLineCount(),n=a.lineNumber+1,o=1;return n>i&&(n=i,o=e.getLineMaxColumn(n)),r.CursorState.fromViewState(t.viewState.move(t.modelState.hasSelection(),n,o,0))}{let e=t.modelState.selectionStart.getEndPosition();return r.CursorState.fromModelState(t.modelState.move(t.modelState.hasSelection(),e.lineNumber,e.column,0))}}static word(e,t,i,n){let o=e.model.validatePosition(n);return r.CursorState.fromModelState(l.WordOperations.word(e.cursorConfig,e.model,t.modelState,i,o))}static cancelSelection(e,t){if(!t.modelState.hasSelection())return new r.CursorState(t.modelState,t.viewState);let i=t.viewState.position.lineNumber,n=t.viewState.position.column;return r.CursorState.fromViewState(new r.SingleCursorState(new h.Range(i,n,i,n),0,new d.Position(i,n),0))}static moveTo(e,t,i,n,o){let s=e.model.validatePosition(n),a=o?e.coordinatesConverter.validateViewPosition(new d.Position(o.lineNumber,o.column),s):e.coordinatesConverter.convertModelPositionToViewPosition(s);return r.CursorState.fromViewState(t.viewState.move(i,a.lineNumber,a.column,0))}static simpleMove(e,t,i,n,o,s){switch(i){case 0:if(4===s)return this._moveHalfLineLeft(e,t,n);return this._moveLeft(e,t,n,o);case 1:if(4===s)return this._moveHalfLineRight(e,t,n);return this._moveRight(e,t,n,o);case 2:if(2===s)return this._moveUpByViewLines(e,t,n,o);return this._moveUpByModelLines(e,t,n,o);case 3:if(2===s)return this._moveDownByViewLines(e,t,n,o);return this._moveDownByModelLines(e,t,n,o);case 4:if(2===s)return t.map(t=>r.CursorState.fromViewState(a.MoveOperations.moveToPrevBlankLine(e.cursorConfig,e,t.viewState,n)));return t.map(t=>r.CursorState.fromModelState(a.MoveOperations.moveToPrevBlankLine(e.cursorConfig,e.model,t.modelState,n)));case 5:if(2===s)return t.map(t=>r.CursorState.fromViewState(a.MoveOperations.moveToNextBlankLine(e.cursorConfig,e,t.viewState,n)));return t.map(t=>r.CursorState.fromModelState(a.MoveOperations.moveToNextBlankLine(e.cursorConfig,e.model,t.modelState,n)));case 6:return this._moveToViewMinColumn(e,t,n);case 7:return this._moveToViewFirstNonWhitespaceColumn(e,t,n);case 8:return this._moveToViewCenterColumn(e,t,n);case 9:return this._moveToViewMaxColumn(e,t,n);case 10:return this._moveToViewLastNonWhitespaceColumn(e,t,n);default:return null}}static viewportMove(e,t,i,n,o){let s=e.getCompletelyVisibleViewRange(),r=e.coordinatesConverter.convertViewRangeToModelRange(s);switch(i){case 11:{let i=this._firstLineNumberInRange(e.model,r,o),s=e.model.getLineFirstNonWhitespaceColumn(i);return[this._moveToModelPosition(e,t[0],n,i,s)]}case 13:{let i=this._lastLineNumberInRange(e.model,r,o),s=e.model.getLineFirstNonWhitespaceColumn(i);return[this._moveToModelPosition(e,t[0],n,i,s)]}case 12:{let i=Math.round((r.startLineNumber+r.endLineNumber)/2),o=e.model.getLineFirstNonWhitespaceColumn(i);return[this._moveToModelPosition(e,t[0],n,i,o)]}case 14:{let i=[];for(let o=0,r=t.length;o<r;o++){let r=t[o];i[o]=this.findPositionInViewportIfOutside(e,r,s,n)}return i}default:return null}}static findPositionInViewportIfOutside(e,t,i,n){let o=t.viewState.position.lineNumber;if(i.startLineNumber<=o&&o<=i.endLineNumber-1)return new r.CursorState(t.modelState,t.viewState);{let s;s=o>i.endLineNumber-1?i.endLineNumber-1:o<i.startLineNumber?i.startLineNumber:o;let l=a.MoveOperations.vertical(e.cursorConfig,e,o,t.viewState.position.column,t.viewState.leftoverVisibleColumns,s,!1);return r.CursorState.fromViewState(t.viewState.move(n,l.lineNumber,l.column,l.leftoverVisibleColumns))}}static _firstLineNumberInRange(e,t,i){let n=t.startLineNumber;return t.startColumn!==e.getLineMinColumn(n)&&n++,Math.min(t.endLineNumber,n+i-1)}static _lastLineNumberInRange(e,t,i){let n=t.startLineNumber;return t.startColumn!==e.getLineMinColumn(n)&&n++,Math.max(n,t.endLineNumber-i+1)}static _moveLeft(e,t,i,n){return t.map(t=>r.CursorState.fromViewState(a.MoveOperations.moveLeft(e.cursorConfig,e,t.viewState,i,n)))}static _moveHalfLineLeft(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],l=s.viewState.position.lineNumber,d=Math.round(e.getLineContent(l).length/2);n[o]=r.CursorState.fromViewState(a.MoveOperations.moveLeft(e.cursorConfig,e,s.viewState,i,d))}return n}static _moveRight(e,t,i,n){return t.map(t=>r.CursorState.fromViewState(a.MoveOperations.moveRight(e.cursorConfig,e,t.viewState,i,n)))}static _moveHalfLineRight(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],l=s.viewState.position.lineNumber,d=Math.round(e.getLineContent(l).length/2);n[o]=r.CursorState.fromViewState(a.MoveOperations.moveRight(e.cursorConfig,e,s.viewState,i,d))}return n}static _moveDownByViewLines(e,t,i,n){let o=[];for(let s=0,l=t.length;s<l;s++){let l=t[s];o[s]=r.CursorState.fromViewState(a.MoveOperations.moveDown(e.cursorConfig,e,l.viewState,i,n))}return o}static _moveDownByModelLines(e,t,i,n){let o=[];for(let s=0,l=t.length;s<l;s++){let l=t[s];o[s]=r.CursorState.fromModelState(a.MoveOperations.moveDown(e.cursorConfig,e.model,l.modelState,i,n))}return o}static _moveUpByViewLines(e,t,i,n){let o=[];for(let s=0,l=t.length;s<l;s++){let l=t[s];o[s]=r.CursorState.fromViewState(a.MoveOperations.moveUp(e.cursorConfig,e,l.viewState,i,n))}return o}static _moveUpByModelLines(e,t,i,n){let o=[];for(let s=0,l=t.length;s<l;s++){let l=t[s];o[s]=r.CursorState.fromModelState(a.MoveOperations.moveUp(e.cursorConfig,e.model,l.modelState,i,n))}return o}static _moveToViewPosition(e,t,i,n,o){return r.CursorState.fromViewState(t.viewState.move(i,n,o,0))}static _moveToModelPosition(e,t,i,n,o){return r.CursorState.fromModelState(t.modelState.move(i,n,o,0))}static _moveToViewMinColumn(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],r=s.viewState.position.lineNumber,a=e.getLineMinColumn(r);n[o]=this._moveToViewPosition(e,s,i,r,a)}return n}static _moveToViewFirstNonWhitespaceColumn(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],r=s.viewState.position.lineNumber,a=e.getLineFirstNonWhitespaceColumn(r);n[o]=this._moveToViewPosition(e,s,i,r,a)}return n}static _moveToViewCenterColumn(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],r=s.viewState.position.lineNumber,a=Math.round((e.getLineMaxColumn(r)+e.getLineMinColumn(r))/2);n[o]=this._moveToViewPosition(e,s,i,r,a)}return n}static _moveToViewMaxColumn(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],r=s.viewState.position.lineNumber,a=e.getLineMaxColumn(r);n[o]=this._moveToViewPosition(e,s,i,r,a)}return n}static _moveToViewLastNonWhitespaceColumn(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],r=s.viewState.position.lineNumber,a=e.getLineLastNonWhitespaceColumn(r);n[o]=this._moveToViewPosition(e,s,i,r,a)}return n}}(n=o||(o={})).description={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:
|
|
1
|
+
/*! For license information please see monaco-5.91d0f99a.js.LICENSE.txt */
|
|
2
|
+
(self.webpackChunk_rsdoctor_client=self.webpackChunk_rsdoctor_client||[]).push([["242"],{852897:function(e,t,i){"use strict";i.r(t),i.d(t,{Sizing:function(){return r},SplitView:function(){return S}});var n,o,s,r,a=i("409737"),l=i("274664"),d=i("842401"),h=i("603868"),c=i("835271"),u=i("916904"),g=i("919527"),m=i("868308"),p=i("212868"),f=i("744138");i("484799");let _={separatorBorder:c.Color.transparent};class v{constructor(e,t,i,n){this.container=e,this.view=t,this.disposable=n,this._cachedVisibleSize=void 0,"number"==typeof i?(this._size=i,this._cachedVisibleSize=void 0,e.classList.add("visible")):(this._size=0,this._cachedVisibleSize=i.cachedVisibleSize)}set size(e){this._size=e}get size(){return this._size}get visible(){return void 0===this._cachedVisibleSize}setVisible(e,t){var i,n;e!==this.visible&&(e?(this.size=(0,m.clamp)(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize="number"==typeof t?t:this.size,this.size=0),this.container.classList.toggle("visible",e),null===(n=(i=this.view).setVisible)||void 0===n||n.call(i,e))}get minimumSize(){return this.visible?this.view.minimumSize:0}get viewMinimumSize(){return this.view.minimumSize}get maximumSize(){return this.visible?this.view.maximumSize:0}get viewMaximumSize(){return this.view.maximumSize}get priority(){return this.view.priority}get snap(){return!!this.view.snap}set enabled(e){this.container.style.pointerEvents=e?"":"none"}layout(e,t){this.layoutContainer(e),this.view.layout(this.size,e,t)}dispose(){return this.disposable.dispose(),this.view}}class C extends v{layoutContainer(e){this.container.style.top=`${e}px`,this.container.style.height=`${this.size}px`}}class b extends v{layoutContainer(e){this.container.style.left=`${e}px`,this.container.style.width=`${this.size}px`}}(n=s||(s={}))[n.Idle=0]="Idle",n[n.Busy=1]="Busy",(o=r||(r={})).Distribute={type:"distribute"},o.Split=function(e){return{type:"split",index:e}},o.Invisible=function(e){return{type:"invisible",cachedVisibleSize:e}};class S extends g.Disposable{constructor(e,t={}){var i,n,o,r,l;super(),this.size=0,this.contentSize=0,this.proportions=void 0,this.viewItems=[],this.sashItems=[],this.state=s.Idle,this._onDidSashChange=this._register(new u.Emitter),this._onDidSashReset=this._register(new u.Emitter),this._startSnappingEnabled=!0,this._endSnappingEnabled=!0,this.onDidSashChange=this._onDidSashChange.event,this.onDidSashReset=this._onDidSashReset.event,this.orientation=null!==(i=t.orientation)&&void 0!==i?i:0,this.inverseAltBehavior=null!==(n=t.inverseAltBehavior)&&void 0!==n&&n,this.proportionalLayout=null===(o=t.proportionalLayout)||void 0===o||o,this.getSashOrthogonalSize=t.getSashOrthogonalSize,this.el=document.createElement("div"),this.el.classList.add("monaco-split-view2"),this.el.classList.add(0===this.orientation?"vertical":"horizontal"),e.appendChild(this.el),this.sashContainer=(0,a.append)(this.el,(0,a.$)(".sash-container")),this.viewContainer=(0,a.$)(".split-view-container"),this.scrollable=new p.Scrollable({forceIntegerValues:!0,smoothScrollDuration:125,scheduleAtNextAnimationFrame:a.scheduleAtNextAnimationFrame}),this.scrollableElement=this._register(new d.SmoothScrollableElement(this.viewContainer,{vertical:0===this.orientation?null!==(r=t.scrollbarVisibility)&&void 0!==r?r:1:2,horizontal:1===this.orientation?null!==(l=t.scrollbarVisibility)&&void 0!==l?l:1:2},this.scrollable)),this.onDidScroll=this.scrollableElement.onScroll,this._register(this.onDidScroll(e=>{this.viewContainer.scrollTop=e.scrollTop,this.viewContainer.scrollLeft=e.scrollLeft})),(0,a.append)(this.el,this.scrollableElement.getDomNode()),this.style(t.styles||_),t.descriptor&&(this.size=t.descriptor.size,t.descriptor.views.forEach((e,t)=>{let i=f.isUndefined(e.visible)||e.visible?e.size:{type:"invisible",cachedVisibleSize:e.size},n=e.view;this.doAddView(n,i,t,!0)}),this.contentSize=this.viewItems.reduce((e,t)=>e+t.size,0),this.saveProportions())}get orthogonalStartSash(){return this._orthogonalStartSash}get orthogonalEndSash(){return this._orthogonalEndSash}get startSnappingEnabled(){return this._startSnappingEnabled}get endSnappingEnabled(){return this._endSnappingEnabled}set orthogonalStartSash(e){for(let t of this.sashItems)t.sash.orthogonalStartSash=e;this._orthogonalStartSash=e}set orthogonalEndSash(e){for(let t of this.sashItems)t.sash.orthogonalEndSash=e;this._orthogonalEndSash=e}set startSnappingEnabled(e){this._startSnappingEnabled!==e&&(this._startSnappingEnabled=e,this.updateSashEnablement())}set endSnappingEnabled(e){this._endSnappingEnabled!==e&&(this._endSnappingEnabled=e,this.updateSashEnablement())}style(e){e.separatorBorder.isTransparent()?(this.el.classList.remove("separator-border"),this.el.style.removeProperty("--separator-border")):(this.el.classList.add("separator-border"),this.el.style.setProperty("--separator-border",e.separatorBorder.toString()))}addView(e,t,i=this.viewItems.length,n){this.doAddView(e,t,i,n)}layout(e,t){let i=Math.max(this.size,this.contentSize);if(this.size=e,this.layoutContext=t,this.proportions)for(let t=0;t<this.viewItems.length;t++){let i=this.viewItems[t];i.size=(0,m.clamp)(Math.round(this.proportions[t]*e),i.minimumSize,i.maximumSize)}else{let t=(0,h.range)(this.viewItems.length),n=t.filter(e=>1===this.viewItems[e].priority),o=t.filter(e=>2===this.viewItems[e].priority);this.resize(this.viewItems.length-1,e-i,void 0,n,o)}this.distributeEmptySpace(),this.layoutViews()}saveProportions(){this.proportionalLayout&&this.contentSize>0&&(this.proportions=this.viewItems.map(e=>e.size/this.contentSize))}onSashStart({sash:e,start:t,alt:i}){for(let e of this.viewItems)e.enabled=!1;let n=this.sashItems.findIndex(t=>t.sash===e),o=(0,g.combinedDisposable)((0,a.addDisposableListener)(document.body,"keydown",e=>s(this.sashDragState.current,e.altKey)),(0,a.addDisposableListener)(document.body,"keyup",()=>s(this.sashDragState.current,!1))),s=(e,t)=>{let i,s;let r=this.viewItems.map(e=>e.size),a=Number.NEGATIVE_INFINITY,l=Number.POSITIVE_INFINITY;if(this.inverseAltBehavior&&(t=!t),t){if(n===this.sashItems.length-1){let e=this.viewItems[n];a=(e.minimumSize-e.size)/2,l=(e.maximumSize-e.size)/2}else{let e=this.viewItems[n+1];a=(e.size-e.maximumSize)/2,l=(e.size-e.minimumSize)/2}}if(!t){let e=(0,h.range)(n,-1),t=(0,h.range)(n+1,this.viewItems.length),o=e.reduce((e,t)=>e+(this.viewItems[t].minimumSize-r[t]),0),a=e.reduce((e,t)=>e+(this.viewItems[t].viewMaximumSize-r[t]),0),l=0===t.length?Number.POSITIVE_INFINITY:t.reduce((e,t)=>e+(r[t]-this.viewItems[t].minimumSize),0),d=Math.max(o,0===t.length?Number.NEGATIVE_INFINITY:t.reduce((e,t)=>e+(r[t]-this.viewItems[t].viewMaximumSize),0)),c=Math.min(l,a),u=this.findFirstSnapIndex(e),g=this.findFirstSnapIndex(t);if("number"==typeof u){let e=this.viewItems[u],t=Math.floor(e.viewMinimumSize/2);i={index:u,limitDelta:e.visible?d-t:d+t,size:e.size}}if("number"==typeof g){let e=this.viewItems[g],t=Math.floor(e.viewMinimumSize/2);s={index:g,limitDelta:e.visible?c+t:c-t,size:e.size}}}this.sashDragState={start:e,current:e,index:n,sizes:r,minDelta:a,maxDelta:l,alt:t,snapBefore:i,snapAfter:s,disposable:o}};s(t,i)}onSashChange({current:e}){let{index:t,start:i,sizes:n,alt:o,minDelta:s,maxDelta:r,snapBefore:a,snapAfter:l}=this.sashDragState;this.sashDragState.current=e;let d=this.resize(t,e-i,n,void 0,void 0,s,r,a,l);if(o){let e=t===this.sashItems.length-1,i=this.viewItems.map(e=>e.size),n=e?t:t+1,o=this.viewItems[n],s=o.size-o.maximumSize,r=o.size-o.minimumSize;this.resize(e?t-1:t+1,-d,i,void 0,void 0,s,r)}this.distributeEmptySpace(),this.layoutViews()}onSashEnd(e){for(let t of(this._onDidSashChange.fire(e),this.sashDragState.disposable.dispose(),this.saveProportions(),this.viewItems))t.enabled=!0}onViewChange(e,t){let i=this.viewItems.indexOf(e);!(i<0)&&!(i>=this.viewItems.length)&&(t="number"==typeof t?t:e.size,t=(0,m.clamp)(t,e.minimumSize,e.maximumSize),this.inverseAltBehavior&&i>0?(this.resize(i-1,Math.floor((e.size-t)/2)),this.distributeEmptySpace(),this.layoutViews()):(e.size=t,this.relayout([i],void 0)))}resizeView(e,t){if(this.state!==s.Idle)throw Error("Cant modify splitview");if(this.state=s.Busy,e<0||e>=this.viewItems.length)return;let i=(0,h.range)(this.viewItems.length).filter(t=>t!==e),n=[...i.filter(e=>1===this.viewItems[e].priority),e],o=i.filter(e=>2===this.viewItems[e].priority),r=this.viewItems[e];t=Math.round(t),t=(0,m.clamp)(t,r.minimumSize,Math.min(r.maximumSize,this.size)),r.size=t,this.relayout(n,o),this.state=s.Idle}distributeViewSizes(){let e=[],t=0;for(let i of this.viewItems)i.maximumSize-i.minimumSize>0&&(e.push(i),t+=i.size);let i=Math.floor(t/e.length);for(let t of e)t.size=(0,m.clamp)(i,t.minimumSize,t.maximumSize);let n=(0,h.range)(this.viewItems.length),o=n.filter(e=>1===this.viewItems[e].priority),s=n.filter(e=>2===this.viewItems[e].priority);this.relayout(o,s)}getViewSize(e){return e<0||e>=this.viewItems.length?-1:this.viewItems[e].size}doAddView(e,t,i=this.viewItems.length,n){let o,r;if(this.state!==s.Idle)throw Error("Cant modify splitview");this.state=s.Busy;let d=(0,a.$)(".split-view-view");i===this.viewItems.length?this.viewContainer.appendChild(d):this.viewContainer.insertBefore(d,this.viewContainer.children.item(i));let c=e.onDidChange(e=>this.onViewChange(f,e)),m=(0,g.toDisposable)(()=>this.viewContainer.removeChild(d)),p=(0,g.combinedDisposable)(c,m);o="number"==typeof t?t:"split"===t.type?this.getViewSize(t.index)/2:"invisible"===t.type?{cachedVisibleSize:t.cachedVisibleSize}:e.minimumSize;let f=0===this.orientation?new C(d,e,o,p):new b(d,e,o,p);if(this.viewItems.splice(i,0,f),this.viewItems.length>1){let e={orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash},t=0===this.orientation?new l.Sash(this.sashContainer,{getHorizontalSashTop:e=>this.getSashPosition(e),getHorizontalSashWidth:this.getSashOrthogonalSize},Object.assign(Object.assign({},e),{orientation:1})):new l.Sash(this.sashContainer,{getVerticalSashLeft:e=>this.getSashPosition(e),getVerticalSashHeight:this.getSashOrthogonalSize},Object.assign(Object.assign({},e),{orientation:0})),n=0===this.orientation?e=>({sash:t,start:e.startY,current:e.currentY,alt:e.altKey}):e=>({sash:t,start:e.startX,current:e.currentX,alt:e.altKey}),o=u.Event.map(t.onDidStart,n)(this.onSashStart,this),s=u.Event.map(t.onDidChange,n)(this.onSashChange,this),r=u.Event.map(t.onDidEnd,()=>this.sashItems.findIndex(e=>e.sash===t))(this.onSashEnd,this),a=t.onDidReset(()=>{let e=this.sashItems.findIndex(e=>e.sash===t),i=(0,h.range)(e,-1),n=(0,h.range)(e+1,this.viewItems.length),o=this.findFirstSnapIndex(i),s=this.findFirstSnapIndex(n);if("number"!=typeof o||!!this.viewItems[o].visible)("number"!=typeof s||this.viewItems[s].visible)&&this._onDidSashReset.fire(e)}),d=(0,g.combinedDisposable)(o,s,r,a,t);this.sashItems.splice(i-1,0,{sash:t,disposable:d})}d.appendChild(e.element),"number"!=typeof t&&"split"===t.type&&(r=[t.index]),!n&&this.relayout([i],r),this.state=s.Idle,!n&&"number"!=typeof t&&"distribute"===t.type&&this.distributeViewSizes()}relayout(e,t){let i=this.viewItems.reduce((e,t)=>e+t.size,0);this.resize(this.viewItems.length-1,this.size-i,void 0,e,t),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()}resize(e,t,i=this.viewItems.map(e=>e.size),n,o,s=Number.NEGATIVE_INFINITY,r=Number.POSITIVE_INFINITY,a,l){if(e<0||e>=this.viewItems.length)return 0;let d=(0,h.range)(e,-1),c=(0,h.range)(e+1,this.viewItems.length);if(o)for(let e of o)(0,h.pushToStart)(d,e),(0,h.pushToStart)(c,e);if(n)for(let e of n)(0,h.pushToEnd)(d,e),(0,h.pushToEnd)(c,e);let u=d.map(e=>this.viewItems[e]),g=d.map(e=>i[e]),p=c.map(e=>this.viewItems[e]),f=c.map(e=>i[e]),_=d.reduce((e,t)=>e+(this.viewItems[t].minimumSize-i[t]),0),v=d.reduce((e,t)=>e+(this.viewItems[t].maximumSize-i[t]),0),C=0===c.length?Number.POSITIVE_INFINITY:c.reduce((e,t)=>e+(i[t]-this.viewItems[t].minimumSize),0),b=Math.max(_,0===c.length?Number.NEGATIVE_INFINITY:c.reduce((e,t)=>e+(i[t]-this.viewItems[t].maximumSize),0),s),S=Math.min(C,v,r),w=!1;if(a){let e=this.viewItems[a.index],i=t>=a.limitDelta;w=i!==e.visible,e.setVisible(i,a.size)}if(!w&&l){let e=this.viewItems[l.index],i=t<l.limitDelta;w=i!==e.visible,e.setVisible(i,l.size)}if(w)return this.resize(e,t,i,n,o,s,r);t=(0,m.clamp)(t,b,S);for(let e=0,i=t;e<u.length;e++){let t=u[e],n=(0,m.clamp)(g[e]+i,t.minimumSize,t.maximumSize);i-=n-g[e],t.size=n}for(let e=0,i=t;e<p.length;e++){let t=p[e],n=(0,m.clamp)(f[e]-i,t.minimumSize,t.maximumSize);i+=n-f[e],t.size=n}return t}distributeEmptySpace(e){let t=this.viewItems.reduce((e,t)=>e+t.size,0),i=this.size-t,n=(0,h.range)(this.viewItems.length-1,-1),o=n.filter(e=>1===this.viewItems[e].priority);for(let e of n.filter(e=>2===this.viewItems[e].priority))(0,h.pushToStart)(n,e);for(let e of o)(0,h.pushToEnd)(n,e);"number"==typeof e&&(0,h.pushToEnd)(n,e);for(let e=0;0!==i&&e<n.length;e++){let t=this.viewItems[n[e]],o=(0,m.clamp)(t.size+i,t.minimumSize,t.maximumSize);i-=o-t.size,t.size=o}}layoutViews(){this.contentSize=this.viewItems.reduce((e,t)=>e+t.size,0);let e=0;for(let t of this.viewItems)t.layout(e,this.layoutContext),e+=t.size;this.sashItems.forEach(e=>e.sash.layout()),this.updateSashEnablement(),this.updateScrollableElement()}updateScrollableElement(){0===this.orientation?this.scrollableElement.setScrollDimensions({height:this.size,scrollHeight:this.contentSize}):this.scrollableElement.setScrollDimensions({width:this.size,scrollWidth:this.contentSize})}updateSashEnablement(){let e=!1,t=this.viewItems.map(t=>e=t.size-t.minimumSize>0||e);e=!1;let i=this.viewItems.map(t=>e=t.maximumSize-t.size>0||e),n=[...this.viewItems].reverse();e=!1;let o=n.map(t=>e=t.size-t.minimumSize>0||e).reverse();e=!1;let s=n.map(t=>e=t.maximumSize-t.size>0||e).reverse(),r=0;for(let e=0;e<this.sashItems.length;e++){let{sash:n}=this.sashItems[e];r+=this.viewItems[e].size;let a=!(t[e]&&s[e+1]),l=!(i[e]&&o[e+1]);if(a&&l){let i=(0,h.range)(e,-1),s=(0,h.range)(e+1,this.viewItems.length),a=this.findFirstSnapIndex(i),l=this.findFirstSnapIndex(s),d="number"==typeof a&&!this.viewItems[a].visible,c="number"==typeof l&&!this.viewItems[l].visible;d&&o[e]&&(r>0||this.startSnappingEnabled)?n.state=1:c&&t[e]&&(r<this.contentSize||this.endSnappingEnabled)?n.state=2:n.state=0}else a&&!l?n.state=1:!a&&l?n.state=2:n.state=3}}getSashPosition(e){let t=0;for(let i=0;i<this.sashItems.length;i++)if(t+=this.viewItems[i].size,this.sashItems[i].sash===e)return t;return 0}findFirstSnapIndex(e){for(let t of e){let e=this.viewItems[t];if(e.visible&&e.snap)return t}for(let t of e){let e=this.viewItems[t];if(e.visible&&e.maximumSize-e.minimumSize>0)break;if(!e.visible&&e.snap)return t}}dispose(){super.dispose(),(0,g.dispose)(this.viewItems),this.viewItems=[],this.sashItems.forEach(e=>e.disposable.dispose()),this.sashItems=[]}}},756144:function(e,t,i){"use strict";i.r(t),(0,i("354606").registerLanguage)({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:()=>Promise.all([i.e("670"),i.e("624"),i.e("889"),i.e("786"),i.e("531"),i.e("242"),i.e("159"),i.e("86"),i.e("790"),i.e("387"),i.e("488"),i.e("25"),i.e("297"),i.e("606"),i.e("310")]).then(i.bind(i,"605693"))})},86003:function(e,t,i){"use strict";i.r(t),(0,i("354606").registerLanguage)({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:()=>Promise.all([i.e("670"),i.e("624"),i.e("889"),i.e("786"),i.e("531"),i.e("242"),i.e("159"),i.e("86"),i.e("790"),i.e("387"),i.e("488"),i.e("25"),i.e("297"),i.e("606"),i.e("310")]).then(i.bind(i,"373196"))})},675393:function(e,t,i){"use strict";i.r(t),i.d(t,{conf:function(){return n},language:function(){return o}});var n={wordPattern:/(#?-?\d*\.\d\w*%?)|([@#!.:]?[\w-?]+%?)|[@#!.]/g,comments:{blockComment:["/*","*/"],lineComment:"//"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:'"',close:'"',notIn:["string","comment"]},{open:"'",close:"'",notIn:["string","comment"]}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{markers:{start:RegExp("^\\s*\\/\\*\\s*#region\\b\\s*(.*?)\\s*\\*\\/"),end:RegExp("^\\s*\\/\\*\\s*#endregion\\b.*\\*\\/")}}},o={defaultToken:"",tokenPostfix:".less",identifier:"-?-?([a-zA-Z]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",identifierPlus:"-?-?([a-zA-Z:.]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))([\\w\\-:.]|(\\\\(([0-9a-fA-F]{1,6}\\s?)|[^[0-9a-fA-F])))*",brackets:[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.bracket"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}],tokenizer:{root:[{include:"@nestedJSBegin"},["[ \\t\\r\\n]+",""],{include:"@comments"},{include:"@keyword"},{include:"@strings"},{include:"@numbers"},["[*_]?[a-zA-Z\\-\\s]+(?=:.*(;|(\\\\$)))","attribute.name","@attribute"],["url(\\-prefix)?\\(",{token:"tag",next:"@urldeclaration"}],["[{}()\\[\\]]","@brackets"],["[,:;]","delimiter"],["#@identifierPlus","tag.id"],["&","tag"],["\\.@identifierPlus(?=\\()","tag.class","@attribute"],["\\.@identifierPlus","tag.class"],["@identifierPlus","tag"],{include:"@operators"},["@(@identifier(?=[:,\\)]))","variable","@attribute"],["@(@identifier)","variable"],["@","key","@atRules"]],nestedJSBegin:[["``","delimiter.backtick"],["`",{token:"delimiter.backtick",next:"@nestedJSEnd",nextEmbedded:"text/javascript"}]],nestedJSEnd:[["`",{token:"delimiter.backtick",next:"@pop",nextEmbedded:"@pop"}]],operators:[["[<>=\\+\\-\\*\\/\\^\\|\\~]","operator"]],keyword:[["(@[\\s]*import|![\\s]*important|true|false|when|iscolor|isnumber|isstring|iskeyword|isurl|ispixel|ispercentage|isem|hue|saturation|lightness|alpha|lighten|darken|saturate|desaturate|fadein|fadeout|fade|spin|mix|round|ceil|floor|percentage)\\b","keyword"]],urldeclaration:[{include:"@strings"},["[^)\r\n]+","string"],["\\)",{token:"tag",next:"@pop"}]],attribute:[{include:"@nestedJSBegin"},{include:"@comments"},{include:"@strings"},{include:"@numbers"},{include:"@keyword"},["[a-zA-Z\\-]+(?=\\()","attribute.value","@attribute"],[">","operator","@pop"],["@identifier","attribute.value"],{include:"@operators"},["@(@identifier)","variable"],["[)\\}]","@brackets","@pop"],["[{}()\\[\\]>]","@brackets"],["[;]","delimiter","@pop"],["[,=:]","delimiter"],["\\s",""],[".","attribute.value"]],comments:[["\\/\\*","comment","@comment"],["\\/\\/+.*","comment"]],comment:[["\\*\\/","comment","@pop"],[".","comment"]],numbers:[["(\\d*\\.)?\\d+([eE][\\-+]?\\d+)?",{token:"attribute.value.number",next:"@units"}],["#[0-9a-fA-F_]+(?!\\w)","attribute.value.hex"]],units:[["(em|ex|ch|rem|fr|vmin|vmax|vw|vh|vm|cm|mm|in|px|pt|pc|deg|grad|rad|turn|s|ms|Hz|kHz|%)?","attribute.value.unit","@pop"]],strings:[['~?"',{token:"string.delimiter",next:"@stringsEndDoubleQuote"}],["~?'",{token:"string.delimiter",next:"@stringsEndQuote"}]],stringsEndDoubleQuote:[['\\\\"',"string"],['"',{token:"string.delimiter",next:"@popall"}],[".","string"]],stringsEndQuote:[["\\\\'","string"],["'",{token:"string.delimiter",next:"@popall"}],[".","string"]],atRules:[{include:"@comments"},{include:"@strings"},["[()]","delimiter"],["[\\{;]","delimiter","@pop"],[".","key"]]}}},231090:function(e,t,i){"use strict";i.r(t),(0,i("354606").registerLanguage)({id:"lexon",extensions:[".lex"],aliases:["Lexon"],loader:()=>Promise.all([i.e("670"),i.e("624"),i.e("889"),i.e("786"),i.e("531"),i.e("242"),i.e("159"),i.e("86"),i.e("790"),i.e("387"),i.e("488"),i.e("25"),i.e("297"),i.e("606"),i.e("310")]).then(i.bind(i,"434354"))})},742855:function(e,t,i){"use strict";i.r(t),(0,i("354606").registerLanguage)({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:()=>Promise.all([i.e("670"),i.e("624"),i.e("889"),i.e("786"),i.e("531"),i.e("242"),i.e("159"),i.e("86"),i.e("790"),i.e("387"),i.e("488"),i.e("25"),i.e("297"),i.e("606"),i.e("310")]).then(i.bind(i,"877362"))})},340092:function(e,t,i){"use strict";i.r(t),i.d(t,{conf:function(){return n},language:function(){return o}});var n={comments:{lineComment:"'"},brackets:[["(",")"],["[","]"],["If","EndIf"],["While","EndWhile"],["For","EndFor"],["Sub","EndSub"]],autoClosingPairs:[{open:'"',close:'"',notIn:["string","comment"]},{open:"(",close:")",notIn:["string","comment"]},{open:"[",close:"]",notIn:["string","comment"]}]},o={defaultToken:"",tokenPostfix:".sb",ignoreCase:!0,brackets:[{token:"delimiter.array",open:"[",close:"]"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"keyword.tag-if",open:"If",close:"EndIf"},{token:"keyword.tag-while",open:"While",close:"EndWhile"},{token:"keyword.tag-for",open:"For",close:"EndFor"},{token:"keyword.tag-sub",open:"Sub",close:"EndSub"}],keywords:["Else","ElseIf","EndFor","EndIf","EndSub","EndWhile","For","Goto","If","Step","Sub","Then","To","While"],tagwords:["If","Sub","While","For"],operators:[">","<","<>","<=",">=","And","Or","+","-","*","/","="],identifier:/[a-zA-Z_][\w]*/,symbols:/[=><:+\-*\/%\.,]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,tokenizer:{root:[{include:"@whitespace"},[/(@identifier)(?=[.])/,"type"],[/@identifier/,{cases:{"@keywords":{token:"keyword.$0"},"@operators":"operator","@default":"variable.name"}}],[/([.])(@identifier)/,{cases:{$2:["delimiter","type.member"],"@default":""}}],[/\d*\.\d+/,"number.float"],[/\d+/,"number"],[/[()\[\]]/,"@brackets"],[/@symbols/,{cases:{"@operators":"operator","@default":"delimiter"}}],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string"]],whitespace:[[/[ \t\r\n]+/,""],[/(\').*$/,"comment"]],string:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"C?/,"string","@pop"]]}}},232337:function(e,t,i){"use strict";i.r(t),(0,i("354606").registerLanguage)({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:()=>Promise.all([i.e("670"),i.e("624"),i.e("889"),i.e("786"),i.e("531"),i.e("242"),i.e("159"),i.e("86"),i.e("790"),i.e("387"),i.e("488"),i.e("25"),i.e("297"),i.e("606"),i.e("310")]).then(i.bind(i,"301545"))})},312954:function(e,t,i){"use strict";i.r(t),i.d(t,{conf:function(){return n},language:function(){return o}});var n={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"'",close:"'",notIn:["string"]},{open:'"',close:'"',notIn:["string"]},{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"}]},o={defaultToken:"",tokenPostfix:".rq",brackets:[{token:"delimiter.curly",open:"{",close:"}"},{token:"delimiter.parenthesis",open:"(",close:")"},{token:"delimiter.square",open:"[",close:"]"},{token:"delimiter.angle",open:"<",close:">"}],keywords:["add","as","asc","ask","base","by","clear","construct","copy","create","data","delete","desc","describe","distinct","drop","false","filter","from","graph","group","having","in","insert","limit","load","minus","move","named","not","offset","optional","order","prefix","reduced","select","service","silent","to","true","undef","union","using","values","where","with"],builtinFunctions:["a","abs","avg","bind","bnode","bound","ceil","coalesce","concat","contains","count","datatype","day","encode_for_uri","exists","floor","group_concat","hours","if","iri","isblank","isiri","isliteral","isnumeric","isuri","lang","langmatches","lcase","max","md5","min","minutes","month","now","rand","regex","replace","round","sameterm","sample","seconds","sha1","sha256","sha384","sha512","str","strafter","strbefore","strdt","strends","strlang","strlen","strstarts","struuid","substr","sum","timezone","tz","ucase","uri","uuid","year"],ignoreCase:!0,tokenizer:{root:[[/<[^\s\u00a0>]*>?/,"tag"],{include:"@strings"},[/#.*/,"comment"],[/[{}()\[\]]/,"@brackets"],[/[;,.]/,"delimiter"],[/[_\w\d]+:(\.(?=[\w_\-\\%])|[:\w_-]|\\[-\\_~.!$&'()*+,;=/?#@%]|%[a-f\d][a-f\d])*/,"tag"],[/:(\.(?=[\w_\-\\%])|[:\w_-]|\\[-\\_~.!$&'()*+,;=/?#@%]|%[a-f\d][a-f\d])+/,"tag"],[/[$?]?[_\w\d]+/,{cases:{"@keywords":{token:"keyword"},"@builtinFunctions":{token:"predefined.sql"},"@default":"identifier"}}],[/\^\^/,"operator.sql"],[/\^[*+\-<>=&|^\/!?]*/,"operator.sql"],[/[*+\-<>=&|\/!?]/,"operator.sql"],[/@[a-z\d\-]*/,"metatag.html"],[/\s+/,"white"]],strings:[[/'([^'\\]|\\.)*$/,"string.invalid"],[/'$/,"string.sql","@pop"],[/'/,"string.sql","@stringBody"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/"$/,"string.sql","@pop"],[/"/,"string.sql","@dblStringBody"]],stringBody:[[/[^\\']+/,"string.sql"],[/\\./,"string.escape"],[/'/,"string.sql","@pop"]],dblStringBody:[[/[^\\"]+/,"string.sql"],[/\\./,"string.escape"],[/"/,"string.sql","@pop"]]}}},982711:function(e,t,i){"use strict";i.r(t),i.d(t,{ViewContentWidgets:function(){return a}});var n=i("409737"),o=i("670758"),s=i("71956");class r{constructor(e,t){this._coordinateBrand=void 0,this.top=e,this.left=t}}class a extends s.ViewPart{constructor(e,t){super(e),this._viewDomNode=t,this._widgets={},this.domNode=(0,o.createFastDomNode)(document.createElement("div")),s.PartFingerprints.write(this.domNode,1),this.domNode.setClassName("contentWidgets"),this.domNode.setPosition("absolute"),this.domNode.setTop(0),this.overflowingContentWidgetsDomNode=(0,o.createFastDomNode)(document.createElement("div")),s.PartFingerprints.write(this.overflowingContentWidgetsDomNode,2),this.overflowingContentWidgetsDomNode.setClassName("overflowingContentWidgets")}dispose(){super.dispose(),this._widgets={}}onConfigurationChanged(e){for(let t of Object.keys(this._widgets))this._widgets[t].onConfigurationChanged(e);return!0}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLineMappingChanged(e){for(let t of Object.keys(this._widgets))this._widgets[t].onLineMappingChanged(e);return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return!0}onZonesChanged(e){return!0}addWidget(e){let t=new l(this._context,this._viewDomNode,e);this._widgets[t.id]=t,t.allowEditorOverflow?this.overflowingContentWidgetsDomNode.appendChild(t.domNode):this.domNode.appendChild(t.domNode),this.setShouldRender()}setWidgetPosition(e,t,i,n){this._widgets[e.getId()].setPosition(t,i,n),this.setShouldRender()}removeWidget(e){let t=e.getId();if(this._widgets.hasOwnProperty(t)){let e=this._widgets[t];delete this._widgets[t];let i=e.domNode.domNode;i.parentNode.removeChild(i),i.removeAttribute("monaco-visible-content-widget"),this.setShouldRender()}}shouldSuppressMouseDownOnWidget(e){return!!this._widgets.hasOwnProperty(e)&&this._widgets[e].suppressMouseDown}onBeforeRender(e){for(let t of Object.keys(this._widgets))this._widgets[t].onBeforeRender(e)}prepareRender(e){for(let t of Object.keys(this._widgets))this._widgets[t].prepareRender(e)}render(e){for(let t of Object.keys(this._widgets))this._widgets[t].render(e)}}class l{constructor(e,t,i){this._context=e,this._viewDomNode=t,this._actual=i,this.domNode=(0,o.createFastDomNode)(this._actual.getDomNode()),this.id=this._actual.getId(),this.allowEditorOverflow=this._actual.allowEditorOverflow||!1,this.suppressMouseDown=this._actual.suppressMouseDown||!1;let n=this._context.configuration.options,s=n.get(133);this._fixedOverflowWidgets=n.get(38),this._contentWidth=s.contentWidth,this._contentLeft=s.contentLeft,this._lineHeight=n.get(61),this._range=null,this._viewRange=null,this._affinity=null,this._preference=[],this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1,this._maxWidth=this._getMaxWidth(),this._isVisible=!1,this._renderData=null,this.domNode.setPosition(this._fixedOverflowWidgets&&this.allowEditorOverflow?"fixed":"absolute"),this.domNode.setDisplay("none"),this.domNode.setVisibility("hidden"),this.domNode.setAttribute("widgetId",this.id),this.domNode.setMaxWidth(this._maxWidth)}onConfigurationChanged(e){let t=this._context.configuration.options;if(this._lineHeight=t.get(61),e.hasChanged(133)){let e=t.get(133);this._contentLeft=e.contentLeft,this._contentWidth=e.contentWidth,this._maxWidth=this._getMaxWidth()}}onLineMappingChanged(e){this._setPosition(this._range,this._affinity)}_setPosition(e,t){var i;if(this._range=e,this._viewRange=null,this._affinity=t,this._range){let e=this._context.viewModel.model.validateRange(this._range);(this._context.viewModel.coordinatesConverter.modelPositionIsVisible(e.getStartPosition())||this._context.viewModel.coordinatesConverter.modelPositionIsVisible(e.getEndPosition()))&&(this._viewRange=this._context.viewModel.coordinatesConverter.convertModelRangeToViewRange(e,null!==(i=this._affinity)&&void 0!==i?i:void 0))}}_getMaxWidth(){return this.allowEditorOverflow?window.innerWidth||document.documentElement.offsetWidth||document.body.offsetWidth:this._contentWidth}setPosition(e,t,i){this._setPosition(e,i),this._preference=t,this._viewRange&&this._preference&&this._preference.length>0?this.domNode.setDisplay("block"):this.domNode.setDisplay("none"),this._cachedDomNodeOffsetWidth=-1,this._cachedDomNodeOffsetHeight=-1}_layoutBoxInViewport(e,t,i,n,o){let s=e.top,r=t.top+this._lineHeight,a=o.viewportHeight-r,l=e.left,d=t.left;return l+i>o.scrollLeft+o.viewportWidth&&(l=o.scrollLeft+o.viewportWidth-i),d+i>o.scrollLeft+o.viewportWidth&&(d=o.scrollLeft+o.viewportWidth-i),l<o.scrollLeft&&(l=o.scrollLeft),d<o.scrollLeft&&(d=o.scrollLeft),{fitsAbove:s>=n,aboveTop:s-n,aboveLeft:l,fitsBelow:a>=n,belowTop:r,belowLeft:d}}_layoutHorizontalSegmentInPage(e,t,i,o){let s=Math.max(0,t.left-o),r=Math.min(t.left+t.width+o,e.width),a=t.left+i-n.StandardWindow.scrollX;if(a+o>r){let e=a-(r-o);a-=e,i-=e}if(a<s){let e=a-s;a-=e,i-=e}return[i,a]}_layoutBoxInPage(e,t,i,o,s){let r=e.top-o,a=t.top+this._lineHeight,l=n.getDomNodePagePosition(this._viewDomNode.domNode),d=l.top+r-n.StandardWindow.scrollY,h=l.top+a-n.StandardWindow.scrollY,c=n.getClientArea(document.body),[u,g]=this._layoutHorizontalSegmentInPage(c,l,e.left-s.scrollLeft+this._contentLeft,i),[m,p]=this._layoutHorizontalSegmentInPage(c,l,t.left-s.scrollLeft+this._contentLeft,i),f=d>=22,_=h+o<=c.height-22;return this._fixedOverflowWidgets?{fitsAbove:f,aboveTop:Math.max(d,22),aboveLeft:g,fitsBelow:_,belowTop:h,belowLeft:p}:{fitsAbove:f,aboveTop:r,aboveLeft:u,fitsBelow:_,belowTop:a,belowLeft:m}}_prepareRenderWidgetAtExactPositionOverflowing(e){return new r(e.top,e.left+this._contentLeft)}_getTopAndBottomLeft(e){if(!this._viewRange)return[null,null];let t=e.linesVisibleRangesForRange(this._viewRange,!1);if(!t||0===t.length)return[null,null];let i=t[0],n=t[0];for(let e of t)e.lineNumber<i.lineNumber&&(i=e),e.lineNumber>n.lineNumber&&(n=e);let o=1073741824;for(let e of i.ranges)e.left<o&&(o=e.left);let s=1073741824;for(let e of n.ranges)e.left<s&&(s=e.left);let a=new r(e.getVerticalOffsetForLineNumber(i.lineNumber)-e.scrollTop,o);return[a,new r(e.getVerticalOffsetForLineNumber(n.lineNumber)-e.scrollTop,s)]}_prepareRenderWidget(e){let t;if(!this._preference||0===this._preference.length)return null;let[i,n]=this._getTopAndBottomLeft(e);if(!i||!n)return null;if(-1===this._cachedDomNodeOffsetWidth||-1===this._cachedDomNodeOffsetHeight){let e=null;if("function"==typeof this._actual.beforeRender&&(e=d(this._actual.beforeRender,this._actual)),e)this._cachedDomNodeOffsetWidth=e.width,this._cachedDomNodeOffsetHeight=e.height;else{let e=this.domNode.domNode.getBoundingClientRect();this._cachedDomNodeOffsetWidth=Math.round(e.width),this._cachedDomNodeOffsetHeight=Math.round(e.height)}}t=this.allowEditorOverflow?this._layoutBoxInPage(i,n,this._cachedDomNodeOffsetWidth,this._cachedDomNodeOffsetHeight,e):this._layoutBoxInViewport(i,n,this._cachedDomNodeOffsetWidth,this._cachedDomNodeOffsetHeight,e);for(let e=1;e<=2;e++)for(let n of this._preference)if(1===n){if(!t)return null;if(2===e||t.fitsAbove)return{coordinate:new r(t.aboveTop,t.aboveLeft),position:1}}else if(2===n){if(!t)return null;if(2===e||t.fitsBelow)return{coordinate:new r(t.belowTop,t.belowLeft),position:2}}else{if(this.allowEditorOverflow)return{coordinate:this._prepareRenderWidgetAtExactPositionOverflowing(i),position:0};return{coordinate:i,position:0}}return null}onBeforeRender(e){if(!!this._viewRange&&!!this._preference)!(this._viewRange.endLineNumber<e.startLineNumber)&&!(this._viewRange.startLineNumber>e.endLineNumber)&&this.domNode.setMaxWidth(this._maxWidth)}prepareRender(e){this._renderData=this._prepareRenderWidget(e)}render(e){if(!this._renderData){this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this.domNode.setVisibility("hidden")),"function"==typeof this._actual.afterRender&&d(this._actual.afterRender,this._actual,null);return}this.allowEditorOverflow?this.domNode.setTop(this._renderData.coordinate.top):this.domNode.setTop(this._renderData.coordinate.top+e.scrollTop-e.bigNumbersDelta),this.domNode.setLeft(this._renderData.coordinate.left),!this._isVisible&&(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0),"function"==typeof this._actual.afterRender&&d(this._actual.afterRender,this._actual,this._renderData.position)}}function d(e,t,...i){try{return e.call(t,...i)}catch(e){return null}}},611699:function(e,t,i){"use strict";i.r(t),i.d(t,{IndentGuidesOverlay:function(){return c}}),i("722239");var n=i("707202"),o=i("126939"),s=i("439703"),r=i("457938"),a=i("603868"),l=i("744138"),d=i("2349"),h=i("927924");class c extends n.DynamicViewOverlay{constructor(e){super(),this._context=e,this._primaryPosition=null;let t=this._context.configuration.options,i=t.get(134),n=t.get(46);this._lineHeight=t.get(61),this._spaceWidth=n.spaceWidth,this._maxIndentLeft=-1===i.wrappingColumn?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(13),this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(e){let t=this._context.configuration.options,i=t.get(134),n=t.get(46);return this._lineHeight=t.get(61),this._spaceWidth=n.spaceWidth,this._maxIndentLeft=-1===i.wrappingColumn?-1:i.wrappingColumn*n.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=t.get(13),!0}onCursorStateChanged(e){var t;let i=e.selections[0].getPosition();return(null===(t=this._primaryPosition)||void 0===t?!void 0:!t.equals(i))&&(this._primaryPosition=i,!0)}onDecorationsChanged(e){return!0}onFlushed(e){return!0}onLinesChanged(e){return!0}onLinesDeleted(e){return!0}onLinesInserted(e){return!0}onScrollChanged(e){return e.scrollTopChanged}onZonesChanged(e){return!0}onLanguageConfigurationChanged(e){return!0}prepareRender(e){var t,i,n,o;if(!this._bracketPairGuideOptions.indentation&&!1===this._bracketPairGuideOptions.bracketPairs){this._renderResult=null;return}let s=e.visibleRange.startLineNumber,a=e.visibleRange.endLineNumber,l=e.scrollWidth,d=this._lineHeight,h=this._primaryPosition,c=this.getGuidesByLine(s,a,h),u=[];for(let h=s;h<=a;h++){let a=h-s,g=c[a],m="",p=null!==(i=null===(t=e.visibleRangeForPosition(new r.Position(h,1)))||void 0===t?void 0:t.left)&&void 0!==i?i:0;for(let t of g){let i=-1===t.column?p+(t.visibleColumn-1)*this._spaceWidth:e.visibleRangeForPosition(new r.Position(h,t.column)).left;if(i>l||this._maxIndentLeft>0&&i>this._maxIndentLeft)break;let s=t.horizontalLine?t.horizontalLine.top?"horizontal-top":"horizontal-bottom":"vertical",a=t.horizontalLine?(null!==(o=null===(n=e.visibleRangeForPosition(new r.Position(h,t.horizontalLine.endColumn)))||void 0===n?void 0:n.left)&&void 0!==o?o:i+this._spaceWidth)-i:this._spaceWidth;m+=`<div class="core-guide ${t.className} ${s}" style="left:${i}px;height:${d}px;width:${a}px"></div>`}u[a]=m}this._renderResult=u}getGuidesByLine(e,t,i){let n=!1!==this._bracketPairGuideOptions.bracketPairs?this._context.viewModel.getBracketGuidesInRangeByLine(e,t,i,{highlightActive:this._bracketPairGuideOptions.highlightActiveBracketPair,horizontalGuides:!0===this._bracketPairGuideOptions.bracketPairsHorizontal?h.HorizontalGuidesState.Enabled:"active"===this._bracketPairGuideOptions.bracketPairsHorizontal?h.HorizontalGuidesState.EnabledForActive:h.HorizontalGuidesState.Disabled,includeInactive:!0===this._bracketPairGuideOptions.bracketPairs}):null,o=this._bracketPairGuideOptions.indentation?this._context.viewModel.getLinesIndentGuides(e,t):null,s=0,r=0,l=0;if(!1!==this._bracketPairGuideOptions.highlightActiveIndentation&&i){let n=this._context.viewModel.getActiveIndentGuide(i.lineNumber,e,t);s=n.startLineNumber,r=n.endLineNumber,l=n.indent}let{indentSize:d}=this._context.viewModel.model.getOptions(),c=[];for(let i=e;i<=t;i++){let t=[];c.push(t);let u=n?n[i-e]:[],g=new a.ArrayQueue(u),m=o?o[i-e]:[];for(let e=1;e<=m;e++){let n=(e-1)*d+1,o=("always"===this._bracketPairGuideOptions.highlightActiveIndentation||0===u.length)&&s<=i&&i<=r&&e===l;t.push(...g.takeWhile(e=>e.visibleColumn<n)||[]);let a=g.peek();(!a||a.visibleColumn!==n||a.horizontalLine)&&t.push(new h.IndentGuide(n,-1,o?"core-guide-indent-active":"core-guide-indent",null,-1,-1))}t.push(...g.takeWhile(e=>!0)||[])}return c}render(e,t){if(!this._renderResult)return"";let i=t-e;return i<0||i>=this._renderResult.length?"":this._renderResult[i]}}function u(e){if(!(e&&e.isTransparent()))return e}(0,s.registerThemingParticipant)((e,t)=>{let i=e.getColor(o.editorIndentGuides);i&&t.addRule(`.monaco-editor .lines-content .core-guide-indent { box-shadow: 1px 0 0 0 ${i} inset; }`);let n=e.getColor(o.editorActiveIndentGuides)||i;n&&t.addRule(`.monaco-editor .lines-content .core-guide-indent-active { box-shadow: 1px 0 0 0 ${n} inset; }`);let s=[{bracketColor:o.editorBracketHighlightingForeground1,guideColor:o.editorBracketPairGuideBackground1,guideColorActive:o.editorBracketPairGuideActiveBackground1},{bracketColor:o.editorBracketHighlightingForeground2,guideColor:o.editorBracketPairGuideBackground2,guideColorActive:o.editorBracketPairGuideActiveBackground2},{bracketColor:o.editorBracketHighlightingForeground3,guideColor:o.editorBracketPairGuideBackground3,guideColorActive:o.editorBracketPairGuideActiveBackground3},{bracketColor:o.editorBracketHighlightingForeground4,guideColor:o.editorBracketPairGuideBackground4,guideColorActive:o.editorBracketPairGuideActiveBackground4},{bracketColor:o.editorBracketHighlightingForeground5,guideColor:o.editorBracketPairGuideBackground5,guideColorActive:o.editorBracketPairGuideActiveBackground5},{bracketColor:o.editorBracketHighlightingForeground6,guideColor:o.editorBracketPairGuideBackground6,guideColorActive:o.editorBracketPairGuideActiveBackground6}],r=new d.BracketPairGuidesClassNames,a=s.map(t=>{var i,n;let o=e.getColor(t.bracketColor),s=e.getColor(t.guideColor),r=e.getColor(t.guideColorActive),a=u(null!==(i=u(s))&&void 0!==i?i:null==o?void 0:o.transparent(.3)),l=u(null!==(n=u(r))&&void 0!==n?n:o);if(a&&l)return{guideColor:a,guideColorActive:l}}).filter(l.isDefined);if(a.length>0){for(let e=0;e<30;e++){let i=a[e%a.length];t.addRule(`.monaco-editor .${r.getInlineClassNameOfLevel(e).replace(/ /g,".")} { --guide-color: ${i.guideColor}; --guide-color-active: ${i.guideColorActive}; }`)}t.addRule(".monaco-editor .vertical { box-shadow: 1px 0 0 0 var(--guide-color) inset; }"),t.addRule(".monaco-editor .horizontal-top { border-top: 1px solid var(--guide-color); }"),t.addRule(".monaco-editor .horizontal-bottom { border-bottom: 1px solid var(--guide-color); }"),t.addRule(`.monaco-editor .vertical.${r.activeClassName} { box-shadow: 1px 0 0 0 var(--guide-color-active) inset; }`),t.addRule(`.monaco-editor .horizontal-top.${r.activeClassName} { border-top: 1px solid var(--guide-color-active); }`),t.addRule(`.monaco-editor .horizontal-bottom.${r.activeClassName} { border-bottom: 1px solid var(--guide-color-active); }`)}})},177386:function(e,t,i){"use strict";i.r(t),i.d(t,{CodeEditorWidget:function(){return K}}),i("19812"),i("105088");var n=i("708339"),o=i("409737"),s=i("161111"),r=i("916904"),a=i("919527"),l=i("24342"),d=i("752567"),h=i("159923"),c=i("583368"),u=i("620730"),g=i("291140"),m=i("416637"),p=i("361209"),f=i("394798"),_=i("457938"),v=i("761045"),C=i("861065"),b=i("292118"),S=i("193478"),w=i("976617"),D=i("599599"),y=i("126939"),L=i("897085"),I=i("776620"),E=i("326896"),x=i("549436"),N=i("706301"),M=i("384193"),T=i("297669"),O=i("439703"),k=i("138204"),R=i("744138"),P=i("122559"),A=i("231882"),z=i("812315"),F=i("962785"),V=i("953120"),W=i("678540"),H=function(e,t){return function(i,n){t(i,n,e)}};let B=0;class j{constructor(e,t,i,n,o){this.model=e,this.viewModel=t,this.view=i,this.hasRealView=n,this.listenersToRemove=o}dispose(){(0,a.dispose)(this.listenersToRemove),this.model.onBeforeDetached(),this.hasRealView&&this.view.dispose(),this.viewModel.dispose()}}let K=class e extends a.Disposable{constructor(e,t,i,n,a,l,d,c,u,g,m,p){let f;super(),this.languageConfigurationService=m,this._deliveryQueue=new r.EventDeliveryQueue,this._onDidDispose=this._register(new r.Emitter),this.onDidDispose=this._onDidDispose.event,this._onDidChangeModelContent=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelContent=this._onDidChangeModelContent.event,this._onDidChangeModelLanguage=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguage=this._onDidChangeModelLanguage.event,this._onDidChangeModelLanguageConfiguration=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelLanguageConfiguration=this._onDidChangeModelLanguageConfiguration.event,this._onDidChangeModelOptions=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelOptions=this._onDidChangeModelOptions.event,this._onDidChangeModelDecorations=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelDecorations=this._onDidChangeModelDecorations.event,this._onDidChangeModelTokens=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModelTokens=this._onDidChangeModelTokens.event,this._onDidChangeConfiguration=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._onDidChangeModel=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeModel=this._onDidChangeModel.event,this._onDidChangeCursorPosition=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorPosition=this._onDidChangeCursorPosition.event,this._onDidChangeCursorSelection=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeCursorSelection=this._onDidChangeCursorSelection.event,this._onDidAttemptReadOnlyEdit=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidAttemptReadOnlyEdit=this._onDidAttemptReadOnlyEdit.event,this._onDidLayoutChange=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidLayoutChange=this._onDidLayoutChange.event,this._editorTextFocus=this._register(new U({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorText=this._editorTextFocus.onDidChangeToTrue,this.onDidBlurEditorText=this._editorTextFocus.onDidChangeToFalse,this._editorWidgetFocus=this._register(new U({deliveryQueue:this._deliveryQueue})),this.onDidFocusEditorWidget=this._editorWidgetFocus.onDidChangeToTrue,this.onDidBlurEditorWidget=this._editorWidgetFocus.onDidChangeToFalse,this._onWillType=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onWillType=this._onWillType.event,this._onDidType=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidType=this._onDidType.event,this._onDidCompositionStart=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidCompositionStart=this._onDidCompositionStart.event,this._onDidCompositionEnd=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidCompositionEnd=this._onDidCompositionEnd.event,this._onDidPaste=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidPaste=this._onDidPaste.event,this._onMouseUp=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseUp=this._onMouseUp.event,this._onMouseDown=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseDown=this._onMouseDown.event,this._onMouseDrag=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseDrag=this._onMouseDrag.event,this._onMouseDrop=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseDrop=this._onMouseDrop.event,this._onMouseDropCanceled=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseDropCanceled=this._onMouseDropCanceled.event,this._onDropIntoEditor=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDropIntoEditor=this._onDropIntoEditor.event,this._onContextMenu=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onContextMenu=this._onContextMenu.event,this._onMouseMove=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseMove=this._onMouseMove.event,this._onMouseLeave=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseLeave=this._onMouseLeave.event,this._onMouseWheel=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onMouseWheel=this._onMouseWheel.event,this._onKeyUp=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onKeyUp=this._onKeyUp.event,this._onKeyDown=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onKeyDown=this._onKeyDown.event,this._onDidContentSizeChange=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._onDidScrollChange=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidScrollChange=this._onDidScrollChange.event,this._onDidChangeViewZones=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeViewZones=this._onDidChangeViewZones.event,this._onDidChangeHiddenAreas=this._register(new r.Emitter({deliveryQueue:this._deliveryQueue})),this.onDidChangeHiddenAreas=this._onDidChangeHiddenAreas.event,this._bannerDomNode=null,this._dropIntoEditorDecorations=this.createDecorationsCollection();let _=Object.assign({},t);for(let t of(this._domElement=e,this._overflowWidgetsDomNode=_.overflowWidgetsDomNode,delete _.overflowWidgetsDomNode,this._id=++B,this._decorationTypeKeysToIds={},this._decorationTypeSubtypes={},this._telemetryData=i.telemetryData,this._configuration=this._register(this._createConfiguration(i.isSimpleWidget||!1,_,g)),this._register(this._configuration.onDidChange(e=>{this._onDidChangeConfiguration.fire(e);let t=this._configuration.options;if(e.hasChanged(133)){let e=t.get(133);this._onDidLayoutChange.fire(e)}})),this._contextKeyService=this._register(d.createScoped(this._domElement)),this._notificationService=u,this._codeEditorService=a,this._commandService=l,this._themeService=c,this._register(new $(this,this._contextKeyService)),this._register(new Q(this,this._contextKeyService,p)),this._instantiationService=n.createChild(new M.ServiceCollection([x.IContextKeyService,this._contextKeyService])),this._modelData=null,this._contributions={},this._actions={},this._focusTracker=new q(e),this._register(this._focusTracker.onChange(()=>{this._editorWidgetFocus.setValue(this._focusTracker.hasFocus())})),this._contentWidgets={},this._overlayWidgets={},f=Array.isArray(i.contributions)?i.contributions:h.EditorExtensionsRegistry.getEditorContributions())){if(this._contributions[t.id]){(0,s.onUnexpectedError)(Error(`Cannot have two contributions with the same id ${t.id}`));continue}try{let e=this._instantiationService.createInstance(t.ctor,this);this._contributions[t.id]=e}catch(e){(0,s.onUnexpectedError)(e)}}h.EditorExtensionsRegistry.getEditorActions().forEach(e=>{if(this._actions[e.id]){(0,s.onUnexpectedError)(Error(`Cannot have two actions with the same id ${e.id}`));return}let t=new b.InternalEditorAction(e.id,e.label,e.alias,(0,R.withNullAsUndefined)(e.precondition),()=>this._instantiationService.invokeFunction(t=>Promise.resolve(e.runEditorCommand(t,this,null))),this._contextKeyService);this._actions[t.id]=t});let v=()=>!this._configuration.options.get(83)&&this._configuration.options.get(32).enabled;this._register(new o.DragAndDropObserver(this._domElement,{onDragEnter:()=>void 0,onDragOver:e=>{if(!v())return;let t=this.getTargetAtClientPoint(e.clientX,e.clientY);(null==t?void 0:t.position)&&this.showDropIndicatorAt(t.position)},onDrop:e=>{var t,i,n,o;return t=this,i=void 0,n=void 0,o=function*(){if(!v())return;if(this.removeDropIndicator(),!e.dataTransfer)return;let t=this.getTargetAtClientPoint(e.clientX,e.clientY);(null==t?void 0:t.position)&&this._onDropIntoEditor.fire({position:t.position,event:e})},new(n||(n=Promise))(function(e,s){function r(e){try{l(o.next(e))}catch(e){s(e)}}function a(e){try{l(o.throw(e))}catch(e){s(e)}}function l(t){var i;t.done?e(t.value):((i=t.value)instanceof n?i:new n(function(e){e(i)})).then(r,a)}l((o=o.apply(t,i||[])).next())})},onDragLeave:()=>{this.removeDropIndicator()},onDragEnd:()=>{this.removeDropIndicator()}})),this._codeEditorService.addCodeEditor(this)}get isSimpleWidget(){return this._configuration.isSimpleWidget}_createConfiguration(e,t,i){return new d.EditorConfiguration(e,t,this._domElement,i)}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return S.EditorType.ICodeEditor}dispose(){this._codeEditorService.removeCodeEditor(this),this._focusTracker.dispose();let e=Object.keys(this._contributions);for(let t=0,i=e.length;t<i;t++){let i=e[t];this._contributions[i].dispose()}this._contributions={},this._actions={},this._contentWidgets={},this._overlayWidgets={},this._removeDecorationTypes(),this._postDetachModelCleanup(this._detachModel()),this._onDidDispose.fire(),super.dispose()}invokeWithinContext(e){return this._instantiationService.invokeFunction(e)}updateOptions(e){this._configuration.updateOptions(e||{})}getOptions(){return this._configuration.options}getOption(e){return this._configuration.options.get(e)}getRawOptions(){return this._configuration.getRawOptions()}getOverflowWidgetsDomNode(){return this._overflowWidgetsDomNode}getConfiguredWordAtPosition(e){return this._modelData?z.WordOperations.getWordAtPosition(this._modelData.model,this._configuration.options.get(119),e):null}getValue(e=null){if(!this._modelData)return"";let t=!!e&&!!e.preserveBOM,i=0;return e&&e.lineEnding&&"\n"===e.lineEnding?i=1:e&&e.lineEnding&&"\r\n"===e.lineEnding&&(i=2),this._modelData.model.getValue(i,t)}setValue(e){this._modelData&&this._modelData.model.setValue(e)}getModel(){return this._modelData?this._modelData.model:null}setModel(e=null){if(null===this._modelData&&null===e||this._modelData&&this._modelData.model===e)return;let t=this.hasTextFocus(),i=this._detachModel();this._attachModel(e),t&&this.hasModel()&&this.focus();let n={oldModelUrl:i?i.uri:null,newModelUrl:e?e.uri:null};this._removeDecorationTypes(),this._onDidChangeModel.fire(n),this._postDetachModelCleanup(i)}_removeDecorationTypes(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(let e in this._decorationTypeSubtypes){let t=this._decorationTypeSubtypes[e];for(let i in t)this._removeDecorationType(e+"-"+i)}this._decorationTypeSubtypes={}}}getVisibleRanges(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]}getVisibleRangesPlusViewportAboveBelow(){return this._modelData?this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow():[]}getWhitespaces(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]}static _getVerticalOffsetAfterPosition(e,t,i,n){let o=e.model.validatePosition({lineNumber:t,column:i}),s=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(o);return e.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(s.lineNumber,n)}getTopForLineNumber(t,i=!1){return this._modelData?e._getVerticalOffsetForPosition(this._modelData,t,1,i):-1}getTopForPosition(t,i){return this._modelData?e._getVerticalOffsetForPosition(this._modelData,t,i,!1):-1}static _getVerticalOffsetForPosition(e,t,i,n=!1){let o=e.model.validatePosition({lineNumber:t,column:i}),s=e.viewModel.coordinatesConverter.convertModelPositionToViewPosition(o);return e.viewModel.viewLayout.getVerticalOffsetForLineNumber(s.lineNumber,n)}getBottomForLineNumber(t,i=!1){return this._modelData?e._getVerticalOffsetAfterPosition(this._modelData,t,1,i):-1}setHiddenAreas(e){var t;null===(t=this._modelData)||void 0===t||t.viewModel.setHiddenAreas(e.map(e=>v.Range.lift(e)))}getVisibleColumnFromPosition(e){if(!this._modelData)return e.column;let t=this._modelData.model.validatePosition(e),i=this._modelData.model.getOptions().tabSize;return f.CursorColumns.visibleColumnFromColumn(this._modelData.model.getLineContent(t.lineNumber),t.column,i)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(e,t="api"){if(this._modelData){if(!_.Position.isIPosition(e))throw Error("Invalid arguments");this._modelData.viewModel.setSelections(t,[{selectionStartLineNumber:e.lineNumber,selectionStartColumn:e.column,positionLineNumber:e.lineNumber,positionColumn:e.column}])}}_sendRevealRange(e,t,i,n){if(!this._modelData)return;if(!v.Range.isIRange(e))throw Error("Invalid arguments");let o=this._modelData.model.validateRange(e),s=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(o);this._modelData.viewModel.revealRange("api",i,s,t,n)}revealLine(e,t=0){this._revealLine(e,0,t)}revealLineInCenter(e,t=0){this._revealLine(e,1,t)}revealLineInCenterIfOutsideViewport(e,t=0){this._revealLine(e,2,t)}revealLineNearTop(e,t=0){this._revealLine(e,5,t)}_revealLine(e,t,i){if("number"!=typeof e)throw Error("Invalid arguments");this._sendRevealRange(new v.Range(e,1,e,1),t,!1,i)}revealPosition(e,t=0){this._revealPosition(e,0,!0,t)}revealPositionInCenter(e,t=0){this._revealPosition(e,1,!0,t)}revealPositionInCenterIfOutsideViewport(e,t=0){this._revealPosition(e,2,!0,t)}revealPositionNearTop(e,t=0){this._revealPosition(e,5,!0,t)}_revealPosition(e,t,i,n){if(!_.Position.isIPosition(e))throw Error("Invalid arguments");this._sendRevealRange(new v.Range(e.lineNumber,e.column,e.lineNumber,e.column),t,i,n)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(e,t="api"){let i=C.Selection.isISelection(e),n=v.Range.isIRange(e);if(!i&&!n)throw Error("Invalid arguments");if(i)this._setSelectionImpl(e,t);else if(n){let i={selectionStartLineNumber:e.startLineNumber,selectionStartColumn:e.startColumn,positionLineNumber:e.endLineNumber,positionColumn:e.endColumn};this._setSelectionImpl(i,t)}}_setSelectionImpl(e,t){if(!this._modelData)return;let i=new C.Selection(e.selectionStartLineNumber,e.selectionStartColumn,e.positionLineNumber,e.positionColumn);this._modelData.viewModel.setSelections(t,[i])}revealLines(e,t,i=0){this._revealLines(e,t,0,i)}revealLinesInCenter(e,t,i=0){this._revealLines(e,t,1,i)}revealLinesInCenterIfOutsideViewport(e,t,i=0){this._revealLines(e,t,2,i)}revealLinesNearTop(e,t,i=0){this._revealLines(e,t,5,i)}_revealLines(e,t,i,n){if("number"!=typeof e||"number"!=typeof t)throw Error("Invalid arguments");this._sendRevealRange(new v.Range(e,1,t,1),i,!1,n)}revealRange(e,t=0,i=!1,n=!0){this._revealRange(e,i?1:0,n,t)}revealRangeInCenter(e,t=0){this._revealRange(e,1,!0,t)}revealRangeInCenterIfOutsideViewport(e,t=0){this._revealRange(e,2,!0,t)}revealRangeNearTop(e,t=0){this._revealRange(e,5,!0,t)}revealRangeNearTopIfOutsideViewport(e,t=0){this._revealRange(e,6,!0,t)}revealRangeAtTop(e,t=0){this._revealRange(e,3,!0,t)}_revealRange(e,t,i,n){if(!v.Range.isIRange(e))throw Error("Invalid arguments");this._sendRevealRange(v.Range.lift(e),t,i,n)}setSelections(e,t="api",i=0){if(this._modelData){if(!e||0===e.length)throw Error("Invalid arguments");for(let t=0,i=e.length;t<i;t++)if(!C.Selection.isISelection(e[t]))throw Error("Invalid arguments");this._modelData.viewModel.setSelections(t,e,i)}}getContentWidth(){return this._modelData?this._modelData.viewModel.viewLayout.getContentWidth():-1}getScrollWidth(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollWidth():-1}getScrollLeft(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollLeft():-1}getContentHeight(){return this._modelData?this._modelData.viewModel.viewLayout.getContentHeight():-1}getScrollHeight(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollHeight():-1}getScrollTop(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollTop():-1}setScrollLeft(e,t=1){if(this._modelData){if("number"!=typeof e)throw Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPosition({scrollLeft:e},t)}}setScrollTop(e,t=1){if(this._modelData){if("number"!=typeof e)throw Error("Invalid arguments");this._modelData.viewModel.viewLayout.setScrollPosition({scrollTop:e},t)}}setScrollPosition(e,t=1){this._modelData&&this._modelData.viewModel.viewLayout.setScrollPosition(e,t)}saveViewState(){if(!this._modelData)return null;let e={};for(let t of Object.keys(this._contributions)){let i=this._contributions[t];"function"==typeof i.saveViewState&&(e[t]=i.saveViewState())}let t=this._modelData.viewModel.saveCursorState();return{cursorState:t,viewState:this._modelData.viewModel.saveState(),contributionsState:e}}restoreViewState(e){if(!!this._modelData&&!!this._modelData.hasRealView){if(e&&e.cursorState&&e.viewState){let t=e.cursorState;Array.isArray(t)?t.length>0&&this._modelData.viewModel.restoreCursorState(t):this._modelData.viewModel.restoreCursorState([t]);let i=e.contributionsState||{},n=Object.keys(this._contributions);for(let e=0,t=n.length;e<t;e++){let t=n[e],o=this._contributions[t];"function"==typeof o.restoreViewState&&o.restoreViewState(i[t])}let o=this._modelData.viewModel.reduceRestoreState(e.viewState);this._modelData.view.restoreState(o)}}}getContribution(e){return this._contributions[e]||null}getActions(){let e=[],t=Object.keys(this._actions);for(let i=0,n=t.length;i<n;i++){let n=t[i];e.push(this._actions[n])}return e}getSupportedActions(){let e=this.getActions();return e=e.filter(e=>e.isSupported())}getAction(e){return this._actions[e]||null}trigger(e,t,i){switch(i=i||{},t){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(e);return;case"type":{let t=i;this._type(e,t.text||"");return}case"replacePreviousChar":{let t=i;this._compositionType(e,t.text||"",t.replaceCharCnt||0,0,0);return}case"compositionType":{let t=i;this._compositionType(e,t.text||"",t.replacePrevCharCnt||0,t.replaceNextCharCnt||0,t.positionDelta||0);return}case"paste":{let t=i;this._paste(e,t.text||"",t.pasteOnNewLine||!1,t.multicursorText||null,t.mode||null);return}case"cut":this._cut(e);return}let n=this.getAction(t);if(n){Promise.resolve(n.run()).then(void 0,s.onUnexpectedError);return}if(!!this._modelData)!this._triggerEditorCommand(e,t,i)&&this._triggerCommand(t,i)}_triggerCommand(e,t){this._commandService.executeCommand(e,t)}_startComposition(){this._modelData&&(this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire())}_endComposition(e){this._modelData&&(this._modelData.viewModel.endComposition(e),this._onDidCompositionEnd.fire())}_type(e,t){this._modelData&&0!==t.length&&("keyboard"===e&&this._onWillType.fire(t),this._modelData.viewModel.type(t,e),"keyboard"===e&&this._onDidType.fire(t))}_compositionType(e,t,i,n,o){this._modelData&&this._modelData.viewModel.compositionType(t,i,n,o,e)}_paste(e,t,i,n,o){if(!this._modelData||0===t.length)return;let s=this._modelData.viewModel,r=s.getSelection().getStartPosition();s.paste(t,i,n,e);let a=s.getSelection().getStartPosition();"keyboard"===e&&this._onDidPaste.fire({range:new v.Range(r.lineNumber,r.column,a.lineNumber,a.column),languageId:o})}_cut(e){this._modelData&&this._modelData.viewModel.cut(e)}_triggerEditorCommand(e,t,i){let n=h.EditorExtensionsRegistry.getEditorCommand(t);return!!n&&((i=i||{}).source=e,this._instantiationService.invokeFunction(e=>{Promise.resolve(n.runEditorCommand(e,this,i)).then(void 0,s.onUnexpectedError)}),!0)}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return!(!this._modelData||this._configuration.options.get(83))&&(this._modelData.model.pushStackElement(),!0)}popUndoStop(){return!(!this._modelData||this._configuration.options.get(83))&&(this._modelData.model.popStackElement(),!0)}executeEdits(e,t,i){let n;return!(!this._modelData||this._configuration.options.get(83))&&(n=i?Array.isArray(i)?()=>i:i:()=>null,this._modelData.viewModel.executeEdits(e,t,n),!0)}executeCommand(e,t){this._modelData&&this._modelData.viewModel.executeCommand(t,e)}executeCommands(e,t){this._modelData&&this._modelData.viewModel.executeCommands(t,e)}createDecorationsCollection(e){return new G(this,e)}changeDecorations(e){return this._modelData?this._modelData.model.changeDecorations(e,this._id):null}getLineDecorations(e){return this._modelData?this._modelData.model.getLineDecorations(e,this._id,(0,m.filterValidationDecorations)(this._configuration.options)):null}getDecorationsInRange(e){return this._modelData?this._modelData.model.getDecorationsInRange(e,this._id,(0,m.filterValidationDecorations)(this._configuration.options)):null}deltaDecorations(e,t){return this._modelData?0===e.length&&0===t.length?e:this._modelData.model.deltaDecorations(e,t,this._id):[]}removeDecorations(e){this._modelData&&0!==e.length&&this._modelData.model.changeDecorations(t=>{t.deltaDecorations(e,[])})}removeDecorationsByType(e){let t=this._decorationTypeKeysToIds[e];t&&this.deltaDecorations(t,[]),this._decorationTypeKeysToIds.hasOwnProperty(e)&&delete this._decorationTypeKeysToIds[e],this._decorationTypeSubtypes.hasOwnProperty(e)&&delete this._decorationTypeSubtypes[e]}getLayoutInfo(){return this._configuration.options.get(133)}createOverviewRuler(e){return this._modelData&&this._modelData.hasRealView?this._modelData.view.createOverviewRuler(e):null}getContainerDomNode(){return this._domElement}getDomNode(){return this._modelData&&this._modelData.hasRealView?this._modelData.view.domNode.domNode:null}delegateVerticalScrollbarPointerDown(e){this._modelData&&this._modelData.hasRealView&&this._modelData.view.delegateVerticalScrollbarPointerDown(e)}layout(e){this._configuration.observeContainer(e),this.render()}focus(){this._modelData&&this._modelData.hasRealView&&this._modelData.view.focus()}hasTextFocus(){return!!this._modelData&&!!this._modelData.hasRealView&&this._modelData.view.isFocused()}hasWidgetFocus(){return this._focusTracker&&this._focusTracker.hasFocus()}addContentWidget(e){let t={widget:e,position:e.getPosition()};this._contentWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting a content widget with the same id."),this._contentWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(t)}layoutContentWidget(e){let t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){let i=this._contentWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(i)}}removeContentWidget(e){let t=e.getId();if(this._contentWidgets.hasOwnProperty(t)){let e=this._contentWidgets[t];delete this._contentWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(e)}}addOverlayWidget(e){let t={widget:e,position:e.getPosition()};this._overlayWidgets.hasOwnProperty(e.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[e.getId()]=t,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(t)}layoutOverlayWidget(e){let t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){let i=this._overlayWidgets[t];i.position=e.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(i)}}removeOverlayWidget(e){let t=e.getId();if(this._overlayWidgets.hasOwnProperty(t)){let e=this._overlayWidgets[t];delete this._overlayWidgets[t],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(e)}}changeViewZones(e){this._modelData&&this._modelData.hasRealView&&this._modelData.view.change(e)}getTargetAtClientPoint(e,t){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getTargetAtClientPoint(e,t):null}getScrolledVisiblePosition(t){if(!this._modelData||!this._modelData.hasRealView)return null;let i=this._modelData.model.validatePosition(t),n=this._configuration.options,o=n.get(133),s=e._getVerticalOffsetForPosition(this._modelData,i.lineNumber,i.column)-this.getScrollTop();return{top:s,left:this._modelData.view.getOffsetForColumn(i.lineNumber,i.column)+o.glyphMarginWidth+o.lineNumbersWidth+o.decorationsWidth-this.getScrollLeft(),height:n.get(61)}}getOffsetForColumn(e,t){return this._modelData&&this._modelData.hasRealView?this._modelData.view.getOffsetForColumn(e,t):-1}render(e=!1){this._modelData&&this._modelData.hasRealView&&this._modelData.view.render(!0,e)}setAriaOptions(e){this._modelData&&this._modelData.hasRealView&&this._modelData.view.setAriaOptions(e)}applyFontInfo(e){(0,V.applyFontInfo)(e,this._configuration.options.get(46))}setBanner(e,t){this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._domElement.removeChild(this._bannerDomNode),this._bannerDomNode=e,this._configuration.setReservedHeight(e?t:0),this._bannerDomNode&&this._domElement.prepend(this._bannerDomNode)}_attachModel(e){if(!e){this._modelData=null;return}let t=[];this._domElement.setAttribute("data-mode-id",e.getLanguageId()),this._configuration.setIsDominatedByLongLines(e.isDominatedByLongLines()),this._configuration.setModelLineCount(e.getLineCount()),e.onBeforeAttached();let i=new I.ViewModel(this._id,this._configuration,e,A.DOMLineBreaksComputerFactory.create(),P.MonospaceLineBreaksComputerFactory.create(this._configuration.options),e=>o.scheduleAtNextAnimationFrame(e),this.languageConfigurationService,this._themeService);t.push(e.onWillDispose(()=>this.setModel(null))),t.push(i.onEvent(t=>{switch(t.kind){case 0:this._onDidContentSizeChange.fire(t);break;case 1:this._editorTextFocus.setValue(t.hasFocus);break;case 2:this._onDidScrollChange.fire(t);break;case 3:this._onDidChangeViewZones.fire();break;case 4:this._onDidChangeHiddenAreas.fire();break;case 5:this._onDidAttemptReadOnlyEdit.fire();break;case 6:{t.reachedMaxCursorCount&&this._notificationService.warn(n.localize("cursors.maximum","The number of cursors has been limited to {0}.",p.CursorsController.MAX_CURSOR_COUNT));let e=[];for(let i=0,n=t.selections.length;i<n;i++)e[i]=t.selections[i].getPosition();let i={position:e[0],secondaryPositions:e.slice(1),reason:t.reason,source:t.source};this._onDidChangeCursorPosition.fire(i);let o={selection:t.selections[0],secondarySelections:t.selections.slice(1),modelVersionId:t.modelVersionId,oldSelections:t.oldSelections,oldModelVersionId:t.oldModelVersionId,source:t.source,reason:t.reason};this._onDidChangeCursorSelection.fire(o);break}case 7:this._onDidChangeModelDecorations.fire(t.event);break;case 8:this._domElement.setAttribute("data-mode-id",e.getLanguageId()),this._onDidChangeModelLanguage.fire(t.event);break;case 9:this._onDidChangeModelLanguageConfiguration.fire(t.event);break;case 10:this._onDidChangeModelContent.fire(t.event);break;case 11:this._onDidChangeModelOptions.fire(t.event);break;case 12:this._onDidChangeModelTokens.fire(t.event)}}));let[s,r]=this._createView(i);if(r){this._domElement.appendChild(s.domNode.domNode);let t=Object.keys(this._contentWidgets);for(let e=0,i=t.length;e<i;e++){let i=t[e];s.addContentWidget(this._contentWidgets[i])}t=Object.keys(this._overlayWidgets);for(let e=0,i=t.length;e<i;e++){let i=t[e];s.addOverlayWidget(this._overlayWidgets[i])}s.render(!1,!0),s.domNode.domNode.setAttribute("data-uri",e.uri.toString())}this._modelData=new j(e,i,s,r,t)}_createView(e){let t;t=this.isSimpleWidget?{paste:(e,t,i,n)=>{this._paste("keyboard",e,t,i,n)},type:e=>{this._type("keyboard",e)},compositionType:(e,t,i,n)=>{this._compositionType("keyboard",e,t,i,n)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:{paste:(e,t,i,n)=>{this._commandService.executeCommand("paste",{text:e,pasteOnNewLine:t,multicursorText:i,mode:n})},type:e=>{this._commandService.executeCommand("type",{text:e})},compositionType:(e,t,i,n)=>{i||n?this._commandService.executeCommand("compositionType",{text:e,replacePrevCharCnt:t,replaceNextCharCnt:i,positionDelta:n}):this._commandService.executeCommand("replacePreviousChar",{text:e,replaceCharCnt:t})},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};let i=new g.ViewUserInputEvents(e.coordinatesConverter);return i.onKeyDown=e=>this._onKeyDown.fire(e),i.onKeyUp=e=>this._onKeyUp.fire(e),i.onContextMenu=e=>this._onContextMenu.fire(e),i.onMouseMove=e=>this._onMouseMove.fire(e),i.onMouseLeave=e=>this._onMouseLeave.fire(e),i.onMouseDown=e=>this._onMouseDown.fire(e),i.onMouseUp=e=>this._onMouseUp.fire(e),i.onMouseDrag=e=>this._onMouseDrag.fire(e),i.onMouseDrop=e=>this._onMouseDrop.fire(e),i.onMouseDropCanceled=e=>this._onMouseDropCanceled.fire(e),i.onMouseWheel=e=>this._onMouseWheel.fire(e),[new u.View(t,this._configuration,this._themeService.getColorTheme(),e,i,this._overflowWidgetsDomNode),!0]}_postDetachModelCleanup(e){null==e||e.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(!this._modelData)return null;let e=this._modelData.model,t=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),t&&this._domElement.contains(t)&&this._domElement.removeChild(t),this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._domElement.removeChild(this._bannerDomNode),e}_removeDecorationType(e){this._codeEditorService.removeDecorationType(e)}hasModel(){return null!==this._modelData}showDropIndicatorAt(t){let i=[{range:new v.Range(t.lineNumber,t.column,t.lineNumber,t.column),options:e.dropIntoEditorDecorationOptions}];this._dropIntoEditorDecorations.set(i),this.revealPosition(t,1)}removeDropIndicator(){this._dropIntoEditorDecorations.clear()}};K.dropIntoEditorDecorationOptions=D.ModelDecorationOptions.register({description:"workbench-dnd-target",className:"dnd-target"}),K=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([H(3,N.IInstantiationService),H(4,c.ICodeEditorService),H(5,E.ICommandService),H(6,x.IContextKeyService),H(7,O.IThemeService),H(8,T.INotificationService),H(9,k.IAccessibilityService),H(10,F.ILanguageConfigurationService),H(11,W.ILanguageFeaturesService)],K);class U extends a.Disposable{constructor(e){super(),this._emitterOptions=e,this._onDidChangeToTrue=this._register(new r.Emitter(this._emitterOptions)),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new r.Emitter(this._emitterOptions)),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(e){let t=e?2:1;this._value!==t&&(this._value=t,2===this._value?this._onDidChangeToTrue.fire():1===this._value&&this._onDidChangeToFalse.fire())}}class $ extends a.Disposable{constructor(e,t){super(),this._editor=e,t.createKey("editorId",e.getId()),this._editorSimpleInput=w.EditorContextKeys.editorSimpleInput.bindTo(t),this._editorFocus=w.EditorContextKeys.focus.bindTo(t),this._textInputFocus=w.EditorContextKeys.textInputFocus.bindTo(t),this._editorTextFocus=w.EditorContextKeys.editorTextFocus.bindTo(t),this._editorTabMovesFocus=w.EditorContextKeys.tabMovesFocus.bindTo(t),this._editorReadonly=w.EditorContextKeys.readOnly.bindTo(t),this._inDiffEditor=w.EditorContextKeys.inDiffEditor.bindTo(t),this._editorColumnSelection=w.EditorContextKeys.columnSelection.bindTo(t),this._hasMultipleSelections=w.EditorContextKeys.hasMultipleSelections.bindTo(t),this._hasNonEmptySelection=w.EditorContextKeys.hasNonEmptySelection.bindTo(t),this._canUndo=w.EditorContextKeys.canUndo.bindTo(t),this._canRedo=w.EditorContextKeys.canRedo.bindTo(t),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromConfig())),this._register(this._editor.onDidChangeCursorSelection(()=>this._updateFromSelection())),this._register(this._editor.onDidFocusEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidFocusEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidChangeModel(()=>this._updateFromModel())),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromModel())),this._updateFromConfig(),this._updateFromSelection(),this._updateFromFocus(),this._updateFromModel(),this._editorSimpleInput.set(this._editor.isSimpleWidget)}_updateFromConfig(){let e=this._editor.getOptions();this._editorTabMovesFocus.set(e.get(132)),this._editorReadonly.set(e.get(83)),this._inDiffEditor.set(e.get(56)),this._editorColumnSelection.set(e.get(18))}_updateFromSelection(){let e=this._editor.getSelections();e?(this._hasMultipleSelections.set(e.length>1),this._hasNonEmptySelection.set(e.some(e=>!e.isEmpty()))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())}_updateFromFocus(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())}_updateFromModel(){let e=this._editor.getModel();this._canUndo.set(!!(e&&e.canUndo())),this._canRedo.set(!!(e&&e.canRedo()))}}class Q extends a.Disposable{constructor(e,t,i){super(),this._editor=e,this._contextKeyService=t,this._languageFeaturesService=i,this._langId=w.EditorContextKeys.languageId.bindTo(t),this._hasCompletionItemProvider=w.EditorContextKeys.hasCompletionItemProvider.bindTo(t),this._hasCodeActionsProvider=w.EditorContextKeys.hasCodeActionsProvider.bindTo(t),this._hasCodeLensProvider=w.EditorContextKeys.hasCodeLensProvider.bindTo(t),this._hasDefinitionProvider=w.EditorContextKeys.hasDefinitionProvider.bindTo(t),this._hasDeclarationProvider=w.EditorContextKeys.hasDeclarationProvider.bindTo(t),this._hasImplementationProvider=w.EditorContextKeys.hasImplementationProvider.bindTo(t),this._hasTypeDefinitionProvider=w.EditorContextKeys.hasTypeDefinitionProvider.bindTo(t),this._hasHoverProvider=w.EditorContextKeys.hasHoverProvider.bindTo(t),this._hasDocumentHighlightProvider=w.EditorContextKeys.hasDocumentHighlightProvider.bindTo(t),this._hasDocumentSymbolProvider=w.EditorContextKeys.hasDocumentSymbolProvider.bindTo(t),this._hasReferenceProvider=w.EditorContextKeys.hasReferenceProvider.bindTo(t),this._hasRenameProvider=w.EditorContextKeys.hasRenameProvider.bindTo(t),this._hasSignatureHelpProvider=w.EditorContextKeys.hasSignatureHelpProvider.bindTo(t),this._hasInlayHintsProvider=w.EditorContextKeys.hasInlayHintsProvider.bindTo(t),this._hasDocumentFormattingProvider=w.EditorContextKeys.hasDocumentFormattingProvider.bindTo(t),this._hasDocumentSelectionFormattingProvider=w.EditorContextKeys.hasDocumentSelectionFormattingProvider.bindTo(t),this._hasMultipleDocumentFormattingProvider=w.EditorContextKeys.hasMultipleDocumentFormattingProvider.bindTo(t),this._hasMultipleDocumentSelectionFormattingProvider=w.EditorContextKeys.hasMultipleDocumentSelectionFormattingProvider.bindTo(t),this._isInWalkThrough=w.EditorContextKeys.isInWalkThroughSnippet.bindTo(t);let n=()=>this._update();this._register(e.onDidChangeModel(n)),this._register(e.onDidChangeModelLanguage(n)),this._register(i.completionProvider.onDidChange(n)),this._register(i.codeActionProvider.onDidChange(n)),this._register(i.codeLensProvider.onDidChange(n)),this._register(i.definitionProvider.onDidChange(n)),this._register(i.declarationProvider.onDidChange(n)),this._register(i.implementationProvider.onDidChange(n)),this._register(i.typeDefinitionProvider.onDidChange(n)),this._register(i.hoverProvider.onDidChange(n)),this._register(i.documentHighlightProvider.onDidChange(n)),this._register(i.documentSymbolProvider.onDidChange(n)),this._register(i.referenceProvider.onDidChange(n)),this._register(i.renameProvider.onDidChange(n)),this._register(i.documentFormattingEditProvider.onDidChange(n)),this._register(i.documentRangeFormattingEditProvider.onDidChange(n)),this._register(i.signatureHelpProvider.onDidChange(n)),this._register(i.inlayHintsProvider.onDidChange(n)),n()}dispose(){super.dispose()}reset(){this._contextKeyService.bufferChangeEvents(()=>{this._langId.reset(),this._hasCompletionItemProvider.reset(),this._hasCodeActionsProvider.reset(),this._hasCodeLensProvider.reset(),this._hasDefinitionProvider.reset(),this._hasDeclarationProvider.reset(),this._hasImplementationProvider.reset(),this._hasTypeDefinitionProvider.reset(),this._hasHoverProvider.reset(),this._hasDocumentHighlightProvider.reset(),this._hasDocumentSymbolProvider.reset(),this._hasReferenceProvider.reset(),this._hasRenameProvider.reset(),this._hasDocumentFormattingProvider.reset(),this._hasDocumentSelectionFormattingProvider.reset(),this._hasSignatureHelpProvider.reset(),this._isInWalkThrough.reset()})}_update(){let e=this._editor.getModel();if(!e){this.reset();return}this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(e.getLanguageId()),this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(e)),this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(e)),this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(e)),this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(e)),this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(e)),this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(e)),this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(e)),this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(e)),this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(e)),this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(e)),this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(e)),this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(e)),this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(e)),this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(e)),this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(e)||this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(e)),this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(e).length+this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(e).length>1),this._isInWalkThrough.set(e.uri.scheme===l.Schemas.walkThroughSnippet)})}}class q extends a.Disposable{constructor(e){super(),this._onChange=this._register(new r.Emitter),this.onChange=this._onChange.event,this._hasFocus=!1,this._domFocusTracker=this._register(o.trackFocus(e)),this._register(this._domFocusTracker.onDidFocus(()=>{this._hasFocus=!0,this._onChange.fire(void 0)})),this._register(this._domFocusTracker.onDidBlur(()=>{this._hasFocus=!1,this._onChange.fire(void 0)}))}hasFocus(){return this._hasFocus}}class G{constructor(e,t){this._editor=e,this._decorationIds=[],this._isChangingDecorations=!1,Array.isArray(t)&&t.length>0&&this.set(t)}get length(){return this._decorationIds.length}onDidChange(e,t,i){return this._editor.onDidChangeModelDecorations(i=>{!this._isChangingDecorations&&e.call(t,i)},i)}getRange(e){return!this._editor.hasModel()||e>=this._decorationIds.length?null:this._editor.getModel().getDecorationRange(this._decorationIds[e])}getRanges(){if(!this._editor.hasModel())return[];let e=this._editor.getModel(),t=[];for(let i of this._decorationIds){let n=e.getDecorationRange(i);n&&t.push(n)}return t}has(e){return this._decorationIds.includes(e.id)}clear(){0!==this._decorationIds.length&&this.set([])}set(e){try{this._isChangingDecorations=!0,this._editor.changeDecorations(t=>{this._decorationIds=t.deltaDecorations(this._decorationIds,e)})}finally{this._isChangingDecorations=!1}}}let Y=encodeURIComponent("<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 3' enable-background='new 0 0 6 3' height='3' width='6'><g fill='"),Z=encodeURIComponent("'><polygon points='5.5,0 2.5,3 1.1,3 4.1,0'/><polygon points='4,0 6,2 6,0.6 5.4,0'/><polygon points='0,2 1,3 2.4,3 0,0.6'/></g></svg>");function X(e){return Y+encodeURIComponent(e.toString())+Z}let J=encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" height="3" width="12"><g fill="'),ee=encodeURIComponent('"><circle cx="1" cy="1" r="1"/><circle cx="5" cy="1" r="1"/><circle cx="9" cy="1" r="1"/></g></svg>');(0,O.registerThemingParticipant)((e,t)=>{let i=e.getColor(L.editorErrorBorder);i&&t.addRule(`.monaco-editor .squiggly-error { border-bottom: 4px double ${i}; }`);let n=e.getColor(L.editorErrorForeground);n&&t.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${X(n)}") repeat-x bottom left; }`);let o=e.getColor(L.editorErrorBackground);o&&t.addRule(`.monaco-editor .squiggly-error::before { display: block; content: ''; width: 100%; height: 100%; background: ${o}; }`);let s=e.getColor(L.editorWarningBorder);s&&t.addRule(`.monaco-editor .squiggly-warning { border-bottom: 4px double ${s}; }`);let r=e.getColor(L.editorWarningForeground);r&&t.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${X(r)}") repeat-x bottom left; }`);let a=e.getColor(L.editorWarningBackground);a&&t.addRule(`.monaco-editor .squiggly-warning::before { display: block; content: ''; width: 100%; height: 100%; background: ${a}; }`);let l=e.getColor(L.editorInfoBorder);l&&t.addRule(`.monaco-editor .squiggly-info { border-bottom: 4px double ${l}; }`);let d=e.getColor(L.editorInfoForeground);d&&t.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${X(d)}") repeat-x bottom left; }`);let h=e.getColor(L.editorInfoBackground);h&&t.addRule(`.monaco-editor .squiggly-info::before { display: block; content: ''; width: 100%; height: 100%; background: ${h}; }`);let c=e.getColor(L.editorHintBorder);c&&t.addRule(`.monaco-editor .squiggly-hint { border-bottom: 2px dotted ${c}; }`);let u=e.getColor(L.editorHintForeground);if(u)t.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${J+encodeURIComponent(u.toString())+ee}") no-repeat bottom left; }`);let g=e.getColor(y.editorUnnecessaryCodeOpacity);g&&t.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${g.rgba.a}; }`);let m=e.getColor(y.editorUnnecessaryCodeBorder);m&&t.addRule(`.monaco-editor.showUnused .squiggly-unnecessary { border-bottom: 2px dashed ${m}; }`);let p=e.getColor(L.editorForeground)||"inherit";t.addRule(`.monaco-editor.showDeprecated .squiggly-inline-deprecated { text-decoration: line-through; text-decoration-color: ${p}}`)})},253891:function(e,t,i){"use strict";i.r(t),i.d(t,{editorConfigurationBaseNode:function(){return d},isDiffEditorConfigurationKey:function(){return m},isEditorConfigurationKey:function(){return g}});var n,o=i("416637"),s=i("255062"),r=i("708339"),a=i("691125"),l=i("112721");let d=Object.freeze({id:"editor",order:5,type:"object",title:r.localize("editorConfigurationTitle","Editor"),scope:5}),h=Object.assign(Object.assign({},d),{properties:{"editor.tabSize":{type:"number",default:s.EDITOR_MODEL_DEFAULTS.tabSize,minimum:1,markdownDescription:r.localize("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.insertSpaces":{type:"boolean",default:s.EDITOR_MODEL_DEFAULTS.insertSpaces,markdownDescription:r.localize("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.detectIndentation":{type:"boolean",default:s.EDITOR_MODEL_DEFAULTS.detectIndentation,markdownDescription:r.localize("detectIndentation","Controls whether `#editor.tabSize#` and `#editor.insertSpaces#` will be automatically detected when a file is opened based on the file contents.")},"editor.trimAutoWhitespace":{type:"boolean",default:s.EDITOR_MODEL_DEFAULTS.trimAutoWhitespace,description:r.localize("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:s.EDITOR_MODEL_DEFAULTS.largeFileOptimizations,description:r.localize("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{type:"boolean",default:!0,description:r.localize("wordBasedSuggestions","Controls whether completions should be computed based on words in the document.")},"editor.wordBasedSuggestionsMode":{enum:["currentDocument","matchingDocuments","allDocuments"],default:"matchingDocuments",enumDescriptions:[r.localize("wordBasedSuggestionsMode.currentDocument","Only suggest words from the active document."),r.localize("wordBasedSuggestionsMode.matchingDocuments","Suggest words from all open documents of the same language."),r.localize("wordBasedSuggestionsMode.allDocuments","Suggest words from all open documents.")],description:r.localize("wordBasedSuggestionsMode","Controls from which documents word based completions are computed.")},"editor.semanticHighlighting.enabled":{enum:[!0,!1,"configuredByTheme"],enumDescriptions:[r.localize("semanticHighlighting.true","Semantic highlighting enabled for all color themes."),r.localize("semanticHighlighting.false","Semantic highlighting disabled for all color themes."),r.localize("semanticHighlighting.configuredByTheme","Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.")],default:"configuredByTheme",description:r.localize("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:r.localize("stablePeek","Keep peek editors open even when double clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:r.localize("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"editor.language.brackets":{type:["array","null"],default:null,description:r.localize("schema.brackets","Defines the bracket symbols that increase or decrease the indentation."),items:{type:"array",items:[{type:"string",description:r.localize("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:r.localize("schema.closeBracket","The closing bracket character or string sequence.")}]}},"editor.language.colorizedBracketPairs":{type:["array","null"],default:null,description:r.localize("schema.colorizedBracketPairs","Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled."),items:{type:"array",items:[{type:"string",description:r.localize("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:r.localize("schema.closeBracket","The closing bracket character or string sequence.")}]}},"diffEditor.maxComputationTime":{type:"number",default:5e3,description:r.localize("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.maxFileSize":{type:"number",default:50,description:r.localize("maxFileSize","Maximum file size in MB for which to compute diffs. Use 0 for no limit.")},"diffEditor.renderSideBySide":{type:"boolean",default:!0,description:r.localize("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.renderMarginRevertIcon":{type:"boolean",default:!0,description:r.localize("renderMarginRevertIcon","When enabled, the diff editor shows arrows in its glyph margin to revert changes.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:!0,description:r.localize("ignoreTrimWhitespace","When enabled, the diff editor ignores changes in leading or trailing whitespace.")},"diffEditor.renderIndicators":{type:"boolean",default:!0,description:r.localize("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")},"diffEditor.codeLens":{type:"boolean",default:!1,description:r.localize("codeLens","Controls whether the editor shows CodeLens.")},"diffEditor.wordWrap":{type:"string",enum:["off","on","inherit"],default:"inherit",markdownEnumDescriptions:[r.localize("wordWrap.off","Lines will never wrap."),r.localize("wordWrap.on","Lines will wrap at the viewport width."),r.localize("wordWrap.inherit","Lines will wrap according to the `#editor.wordWrap#` setting.")]}}});for(let e of o.editorOptionsRegistry){let t=e.schema;if(void 0!==t){;if(void 0!==(n=t).type||void 0!==n.anyOf)h.properties[`editor.${e.name}`]=t;else for(let e in t)Object.hasOwnProperty.call(t,e)&&(h.properties[e]=t[e])}}let c=null;function u(){return null===c&&(c=Object.create(null),Object.keys(h.properties).forEach(e=>{c[e]=!0})),c}function g(e){return u()[`editor.${e}`]||!1}function m(e){return u()[`diffEditor.${e}`]||!1}l.Registry.as(a.Extensions.Configuration).registerConfiguration(h)},394798:function(e,t,i){"use strict";i.r(t),i.d(t,{CursorColumns:function(){return o}});var n=i("266763");class o{static _nextVisibleColumn(e,t,i){return 9===e?o.nextRenderTabStop(t,i):n.isFullWidthCharacter(e)||n.isEmojiImprecise(e)?t+2:t+1}static visibleColumnFromColumn(e,t,i){let o=Math.min(t-1,e.length),s=e.substring(0,o),r=new n.GraphemeIterator(s),a=0;for(;!r.eol();){let e=n.getNextCodePoint(s,o,r.offset);r.nextGraphemeLength(),a=this._nextVisibleColumn(e,a,i)}return a}static columnFromVisibleColumn(e,t,i){if(t<=0)return 1;let o=e.length,s=new n.GraphemeIterator(e),r=0,a=1;for(;!s.eol();){let l=n.getNextCodePoint(e,o,s.offset);s.nextGraphemeLength();let d=this._nextVisibleColumn(l,r,i),h=s.offset+1;if(d>=t){let e=t-r;if(d-t<e)return h;return a}r=d,a=h}return o+1}static nextRenderTabStop(e,t){return e+t-e%t}static nextIndentTabStop(e,t){return e+t-e%t}static prevRenderTabStop(e,t){return Math.max(0,e-1-(e-1)%t)}static prevIndentTabStop(e,t){return Math.max(0,e-1-(e-1)%t)}}},404309:function(e,t,i){"use strict";i.r(t),i.d(t,{CursorMove:function(){return o},CursorMoveCommands:function(){return c}});var n,o,s=i("744138"),r=i("607910"),a=i("377287"),l=i("812315"),d=i("457938"),h=i("761045");class c{static addCursorDown(e,t,i){let n=[],o=0;for(let s=0,l=t.length;s<l;s++){let l=t[s];n[o++]=new r.CursorState(l.modelState,l.viewState),i?n[o++]=r.CursorState.fromModelState(a.MoveOperations.translateDown(e.cursorConfig,e.model,l.modelState)):n[o++]=r.CursorState.fromViewState(a.MoveOperations.translateDown(e.cursorConfig,e,l.viewState))}return n}static addCursorUp(e,t,i){let n=[],o=0;for(let s=0,l=t.length;s<l;s++){let l=t[s];n[o++]=new r.CursorState(l.modelState,l.viewState),i?n[o++]=r.CursorState.fromModelState(a.MoveOperations.translateUp(e.cursorConfig,e.model,l.modelState)):n[o++]=r.CursorState.fromViewState(a.MoveOperations.translateUp(e.cursorConfig,e,l.viewState))}return n}static moveToBeginningOfLine(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o];n[o]=this._moveToLineStart(e,s,i)}return n}static _moveToLineStart(e,t,i){let n=t.viewState.position.column,o=t.modelState.position.column,s=t.viewState.position.lineNumber,r=e.getLineFirstNonWhitespaceColumn(s);return n!==o&&n!==r?this._moveToLineStartByView(e,t,i):this._moveToLineStartByModel(e,t,i)}static _moveToLineStartByView(e,t,i){return r.CursorState.fromViewState(a.MoveOperations.moveToBeginningOfLine(e.cursorConfig,e,t.viewState,i))}static _moveToLineStartByModel(e,t,i){return r.CursorState.fromModelState(a.MoveOperations.moveToBeginningOfLine(e.cursorConfig,e.model,t.modelState,i))}static moveToEndOfLine(e,t,i,n){let o=[];for(let s=0,r=t.length;s<r;s++){let r=t[s];o[s]=this._moveToLineEnd(e,r,i,n)}return o}static _moveToLineEnd(e,t,i,n){let o=t.viewState.position,s=e.getLineMaxColumn(o.lineNumber),r=o.column===s,a=t.modelState.position,l=e.model.getLineMaxColumn(a.lineNumber),d=s-o.column==l-a.column;return r||d?this._moveToLineEndByModel(e,t,i,n):this._moveToLineEndByView(e,t,i,n)}static _moveToLineEndByView(e,t,i,n){return r.CursorState.fromViewState(a.MoveOperations.moveToEndOfLine(e.cursorConfig,e,t.viewState,i,n))}static _moveToLineEndByModel(e,t,i,n){return r.CursorState.fromModelState(a.MoveOperations.moveToEndOfLine(e.cursorConfig,e.model,t.modelState,i,n))}static expandLineSelection(e,t){let i=[];for(let n=0,o=t.length;n<o;n++){let o;let s=t[n],a=s.modelState.selection.startLineNumber,l=e.model.getLineCount(),c=s.modelState.selection.endLineNumber;c===l?o=e.model.getLineMaxColumn(l):(c++,o=1),i[n]=r.CursorState.fromModelState(new r.SingleCursorState(new h.Range(a,1,a,1),0,new d.Position(c,o),0))}return i}static moveToBeginningOfBuffer(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o];n[o]=r.CursorState.fromModelState(a.MoveOperations.moveToBeginningOfBuffer(e.cursorConfig,e.model,s.modelState,i))}return n}static moveToEndOfBuffer(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o];n[o]=r.CursorState.fromModelState(a.MoveOperations.moveToEndOfBuffer(e.cursorConfig,e.model,s.modelState,i))}return n}static selectAll(e,t){let i=e.model.getLineCount(),n=e.model.getLineMaxColumn(i);return r.CursorState.fromModelState(new r.SingleCursorState(new h.Range(1,1,1,1),0,new d.Position(i,n),0))}static line(e,t,i,n,o){let s=e.model.validatePosition(n),a=o?e.coordinatesConverter.validateViewPosition(new d.Position(o.lineNumber,o.column),s):e.coordinatesConverter.convertModelPositionToViewPosition(s);if(!i||!t.modelState.hasSelection()){let t=e.model.getLineCount(),i=s.lineNumber+1,n=1;return i>t&&(i=t,n=e.model.getLineMaxColumn(i)),r.CursorState.fromModelState(new r.SingleCursorState(new h.Range(s.lineNumber,1,i,n),0,new d.Position(i,n),0))}let l=t.modelState.selectionStart.getStartPosition().lineNumber;if(s.lineNumber<l)return r.CursorState.fromViewState(t.viewState.move(t.modelState.hasSelection(),a.lineNumber,1,0));if(s.lineNumber>l){let i=e.getLineCount(),n=a.lineNumber+1,o=1;return n>i&&(n=i,o=e.getLineMaxColumn(n)),r.CursorState.fromViewState(t.viewState.move(t.modelState.hasSelection(),n,o,0))}{let e=t.modelState.selectionStart.getEndPosition();return r.CursorState.fromModelState(t.modelState.move(t.modelState.hasSelection(),e.lineNumber,e.column,0))}}static word(e,t,i,n){let o=e.model.validatePosition(n);return r.CursorState.fromModelState(l.WordOperations.word(e.cursorConfig,e.model,t.modelState,i,o))}static cancelSelection(e,t){if(!t.modelState.hasSelection())return new r.CursorState(t.modelState,t.viewState);let i=t.viewState.position.lineNumber,n=t.viewState.position.column;return r.CursorState.fromViewState(new r.SingleCursorState(new h.Range(i,n,i,n),0,new d.Position(i,n),0))}static moveTo(e,t,i,n,o){let s=e.model.validatePosition(n),a=o?e.coordinatesConverter.validateViewPosition(new d.Position(o.lineNumber,o.column),s):e.coordinatesConverter.convertModelPositionToViewPosition(s);return r.CursorState.fromViewState(t.viewState.move(i,a.lineNumber,a.column,0))}static simpleMove(e,t,i,n,o,s){switch(i){case 0:if(4===s)return this._moveHalfLineLeft(e,t,n);return this._moveLeft(e,t,n,o);case 1:if(4===s)return this._moveHalfLineRight(e,t,n);return this._moveRight(e,t,n,o);case 2:if(2===s)return this._moveUpByViewLines(e,t,n,o);return this._moveUpByModelLines(e,t,n,o);case 3:if(2===s)return this._moveDownByViewLines(e,t,n,o);return this._moveDownByModelLines(e,t,n,o);case 4:if(2===s)return t.map(t=>r.CursorState.fromViewState(a.MoveOperations.moveToPrevBlankLine(e.cursorConfig,e,t.viewState,n)));return t.map(t=>r.CursorState.fromModelState(a.MoveOperations.moveToPrevBlankLine(e.cursorConfig,e.model,t.modelState,n)));case 5:if(2===s)return t.map(t=>r.CursorState.fromViewState(a.MoveOperations.moveToNextBlankLine(e.cursorConfig,e,t.viewState,n)));return t.map(t=>r.CursorState.fromModelState(a.MoveOperations.moveToNextBlankLine(e.cursorConfig,e.model,t.modelState,n)));case 6:return this._moveToViewMinColumn(e,t,n);case 7:return this._moveToViewFirstNonWhitespaceColumn(e,t,n);case 8:return this._moveToViewCenterColumn(e,t,n);case 9:return this._moveToViewMaxColumn(e,t,n);case 10:return this._moveToViewLastNonWhitespaceColumn(e,t,n);default:return null}}static viewportMove(e,t,i,n,o){let s=e.getCompletelyVisibleViewRange(),r=e.coordinatesConverter.convertViewRangeToModelRange(s);switch(i){case 11:{let i=this._firstLineNumberInRange(e.model,r,o),s=e.model.getLineFirstNonWhitespaceColumn(i);return[this._moveToModelPosition(e,t[0],n,i,s)]}case 13:{let i=this._lastLineNumberInRange(e.model,r,o),s=e.model.getLineFirstNonWhitespaceColumn(i);return[this._moveToModelPosition(e,t[0],n,i,s)]}case 12:{let i=Math.round((r.startLineNumber+r.endLineNumber)/2),o=e.model.getLineFirstNonWhitespaceColumn(i);return[this._moveToModelPosition(e,t[0],n,i,o)]}case 14:{let i=[];for(let o=0,r=t.length;o<r;o++){let r=t[o];i[o]=this.findPositionInViewportIfOutside(e,r,s,n)}return i}default:return null}}static findPositionInViewportIfOutside(e,t,i,n){let o=t.viewState.position.lineNumber;if(i.startLineNumber<=o&&o<=i.endLineNumber-1)return new r.CursorState(t.modelState,t.viewState);{let s;s=o>i.endLineNumber-1?i.endLineNumber-1:o<i.startLineNumber?i.startLineNumber:o;let l=a.MoveOperations.vertical(e.cursorConfig,e,o,t.viewState.position.column,t.viewState.leftoverVisibleColumns,s,!1);return r.CursorState.fromViewState(t.viewState.move(n,l.lineNumber,l.column,l.leftoverVisibleColumns))}}static _firstLineNumberInRange(e,t,i){let n=t.startLineNumber;return t.startColumn!==e.getLineMinColumn(n)&&n++,Math.min(t.endLineNumber,n+i-1)}static _lastLineNumberInRange(e,t,i){let n=t.startLineNumber;return t.startColumn!==e.getLineMinColumn(n)&&n++,Math.max(n,t.endLineNumber-i+1)}static _moveLeft(e,t,i,n){return t.map(t=>r.CursorState.fromViewState(a.MoveOperations.moveLeft(e.cursorConfig,e,t.viewState,i,n)))}static _moveHalfLineLeft(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],l=s.viewState.position.lineNumber,d=Math.round(e.getLineContent(l).length/2);n[o]=r.CursorState.fromViewState(a.MoveOperations.moveLeft(e.cursorConfig,e,s.viewState,i,d))}return n}static _moveRight(e,t,i,n){return t.map(t=>r.CursorState.fromViewState(a.MoveOperations.moveRight(e.cursorConfig,e,t.viewState,i,n)))}static _moveHalfLineRight(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],l=s.viewState.position.lineNumber,d=Math.round(e.getLineContent(l).length/2);n[o]=r.CursorState.fromViewState(a.MoveOperations.moveRight(e.cursorConfig,e,s.viewState,i,d))}return n}static _moveDownByViewLines(e,t,i,n){let o=[];for(let s=0,l=t.length;s<l;s++){let l=t[s];o[s]=r.CursorState.fromViewState(a.MoveOperations.moveDown(e.cursorConfig,e,l.viewState,i,n))}return o}static _moveDownByModelLines(e,t,i,n){let o=[];for(let s=0,l=t.length;s<l;s++){let l=t[s];o[s]=r.CursorState.fromModelState(a.MoveOperations.moveDown(e.cursorConfig,e.model,l.modelState,i,n))}return o}static _moveUpByViewLines(e,t,i,n){let o=[];for(let s=0,l=t.length;s<l;s++){let l=t[s];o[s]=r.CursorState.fromViewState(a.MoveOperations.moveUp(e.cursorConfig,e,l.viewState,i,n))}return o}static _moveUpByModelLines(e,t,i,n){let o=[];for(let s=0,l=t.length;s<l;s++){let l=t[s];o[s]=r.CursorState.fromModelState(a.MoveOperations.moveUp(e.cursorConfig,e.model,l.modelState,i,n))}return o}static _moveToViewPosition(e,t,i,n,o){return r.CursorState.fromViewState(t.viewState.move(i,n,o,0))}static _moveToModelPosition(e,t,i,n,o){return r.CursorState.fromModelState(t.modelState.move(i,n,o,0))}static _moveToViewMinColumn(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],r=s.viewState.position.lineNumber,a=e.getLineMinColumn(r);n[o]=this._moveToViewPosition(e,s,i,r,a)}return n}static _moveToViewFirstNonWhitespaceColumn(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],r=s.viewState.position.lineNumber,a=e.getLineFirstNonWhitespaceColumn(r);n[o]=this._moveToViewPosition(e,s,i,r,a)}return n}static _moveToViewCenterColumn(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],r=s.viewState.position.lineNumber,a=Math.round((e.getLineMaxColumn(r)+e.getLineMinColumn(r))/2);n[o]=this._moveToViewPosition(e,s,i,r,a)}return n}static _moveToViewMaxColumn(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],r=s.viewState.position.lineNumber,a=e.getLineMaxColumn(r);n[o]=this._moveToViewPosition(e,s,i,r,a)}return n}static _moveToViewLastNonWhitespaceColumn(e,t,i){let n=[];for(let o=0,s=t.length;o<s;o++){let s=t[o],r=s.viewState.position.lineNumber,a=e.getLineLastNonWhitespaceColumn(r);n[o]=this._moveToViewPosition(e,s,i,r,a)}return n}}(n=o||(o={})).description={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:
|
|
3
3
|
* 'to': A mandatory logical position value providing where to move the cursor.
|
|
4
4
|
\`\`\`
|
|
5
5
|
'left', 'right', 'up', 'down', 'prevBlankLine', 'nextBlankLine',
|
|
@@ -13,10 +13,10 @@
|
|
|
13
13
|
\`\`\`
|
|
14
14
|
* 'value': Number of units to move. Default is '1'.
|
|
15
15
|
* 'select': If 'true' makes the selection. Default is 'false'.
|
|
16
|
-
`,constraint:function(e){return!!s.isObject(e)&&(!!(s.isString(e.to)&&(s.isUndefined(e.select)||s.isBoolean(e.select))&&(s.isUndefined(e.by)||s.isString(e.by))&&(s.isUndefined(e.value)||s.isNumber(e.value)))||!1)},schema:{type:"object",required:["to"],properties:{to:{type:"string",enum:["left","right","up","down","prevBlankLine","nextBlankLine","wrappedLineStart","wrappedLineEnd","wrappedLineColumnCenter","wrappedLineFirstNonWhitespaceCharacter","wrappedLineLastNonWhitespaceCharacter","viewPortTop","viewPortCenter","viewPortBottom","viewPortIfOutside"]},by:{type:"string",enum:["line","wrappedLine","character","halfLine"]},value:{type:"number",default:1},select:{type:"boolean",default:!1}}}}]},n.RawDirection={Left:"left",Right:"right",Up:"up",Down:"down",PrevBlankLine:"prevBlankLine",NextBlankLine:"nextBlankLine",WrappedLineStart:"wrappedLineStart",WrappedLineFirstNonWhitespaceCharacter:"wrappedLineFirstNonWhitespaceCharacter",WrappedLineColumnCenter:"wrappedLineColumnCenter",WrappedLineEnd:"wrappedLineEnd",WrappedLineLastNonWhitespaceCharacter:"wrappedLineLastNonWhitespaceCharacter",ViewPortTop:"viewPortTop",ViewPortCenter:"viewPortCenter",ViewPortBottom:"viewPortBottom",ViewPortIfOutside:"viewPortIfOutside"},n.RawUnit={Line:"line",WrappedLine:"wrappedLine",Character:"character",HalfLine:"halfLine"},n.parse=function(e){let t;if(!e.to)return null;switch(e.to){case n.RawDirection.Left:t=0;break;case n.RawDirection.Right:t=1;break;case n.RawDirection.Up:t=2;break;case n.RawDirection.Down:t=3;break;case n.RawDirection.PrevBlankLine:t=4;break;case n.RawDirection.NextBlankLine:t=5;break;case n.RawDirection.WrappedLineStart:t=6;break;case n.RawDirection.WrappedLineFirstNonWhitespaceCharacter:t=7;break;case n.RawDirection.WrappedLineColumnCenter:t=8;break;case n.RawDirection.WrappedLineEnd:t=9;break;case n.RawDirection.WrappedLineLastNonWhitespaceCharacter:t=10;break;case n.RawDirection.ViewPortTop:t=11;break;case n.RawDirection.ViewPortBottom:t=13;break;case n.RawDirection.ViewPortCenter:t=12;break;case n.RawDirection.ViewPortIfOutside:t=14;break;default:return null}let i=0;switch(e.by){case n.RawUnit.Line:i=1;break;case n.RawUnit.WrappedLine:i=2;break;case n.RawUnit.Character:i=3;break;case n.RawUnit.HalfLine:i=4}return{direction:t,unit:i,select:!!e.select,value:e.value||1}}},599599:function(e,t,i){"use strict";i.r(t),i.d(t,{ModelDecorationInjectedTextOptions:function(){return K},ModelDecorationOptions:function(){return U},TextModel:function(){return A}});var n=i("603868"),o=i("835271"),s=i("161111"),r=i("916904"),a=i("919527"),l=i("266763"),d=i("938505"),h=i("311211"),c=i("165972"),u=i("457938"),g=i("761045"),m=i("861065"),p=i("255062"),f=i("810870"),_=i("962785"),v=i("63681"),C=i("426148"),b=i("276345"),S=i("674459"),w=i("2349"),D=i("191137"),y=i("869723"),L=i("881695"),I=i("917318"),E=i("783968"),x=i("662521"),N=i("486043"),M=i("852365"),T=function(e,t){return function(i,n){t(i,n,e)}};function O(e,t){let i;return(i="string"==typeof e?function(e){let t=new I.PieceTreeTextBufferBuilder;return t.acceptChunk(e),t.finish()}(e):v.isITextSnapshot(e)?function(e){let t;let i=new I.PieceTreeTextBufferBuilder;for(;"string"==typeof(t=e.read());)i.acceptChunk(t);return i.finish()}(e):e).create(t)}let k=0;class P{constructor(e){this._source=e,this._eos=!1}read(){if(this._eos)return null;let e=[],t=0,i=0;for(;;){let n=this._source.read();if(null===n){if(this._eos=!0,0===t)return null;return e.join("")}if(n.length>0&&(e[t++]=n,i+=n.length),i>=65536)return e.join("")}}}let R=()=>{throw Error("Invalid change accessor")},A=class e extends a.Disposable{constructor(t,i,n,o=null,s,a,h){super(),this._undoRedoService=s,this._languageService=a,this._languageConfigurationService=h,this._onWillDispose=this._register(new r.Emitter),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new G(e=>this.handleBeforeFireDecorationsChangedEvent(e))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new r.Emitter),this.onDidChangeOptions=this._onDidChangeOptions.event,this._onDidChangeAttached=this._register(new r.Emitter),this.onDidChangeAttached=this._onDidChangeAttached.event,this._onDidChangeInjectedText=this._register(new r.Emitter),this._eventEmitter=this._register(new q),this._deltaDecorationCallCnt=0,k++,this.id="$model"+k,this.isForSimpleWidget=n.isForSimpleWidget,null==o?this._associatedResource=d.URI.parse("inmemory://model/"+k):this._associatedResource=o,this._attachedEditorCount=0;let{textBuffer:c,disposable:u}=O(t,n.defaultEOL);this._buffer=c,this._bufferDisposable=u,this._options=e.resolveOptions(this._buffer,n),this._bracketPairs=this._register(new C.BracketPairsTextModelPart(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new w.GuidesTextModelPart(this,this._languageConfigurationService)),this._decorationProvider=this._register(new b.ColorizedBracketPairsDecorationProvider(this)),this._tokenizationTextModelPart=new x.TokenizationTextModelPart(this._languageService,this._languageConfigurationService,this,this._bracketPairs,i);let m=this._buffer.getLineCount(),p=this._buffer.getValueLengthInRange(new g.Range(1,1,m,this._buffer.getLineLength(m)+1),0);n.largeFileOptimizations?this._isTooLargeForTokenization=p>e.LARGE_FILE_SIZE_THRESHOLD||m>e.LARGE_FILE_LINE_COUNT_THRESHOLD:this._isTooLargeForTokenization=!1,this._isTooLargeForSyncing=p>e.MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=l.singleLetterHash(k),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new V,this._commandManager=new S.EditStack(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()}))}static resolveOptions(e,t){if(t.detectIndentation){let i=(0,D.guessIndentation)(e,t.tabSize,t.insertSpaces);return new v.TextModelResolvedOptions({tabSize:i.tabSize,indentSize:i.tabSize,insertSpaces:i.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}return new v.TextModelResolvedOptions({tabSize:t.tabSize,indentSize:t.indentSize,insertSpaces:t.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}onDidChangeContent(e){return this._eventEmitter.slowEvent(t=>e(t.contentChangedEvent))}onDidChangeContentOrInjectedText(e){return(0,a.combinedDisposable)(this._eventEmitter.fastEvent(t=>e(t)),this._onDidChangeInjectedText.event(t=>e(t)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;let e=new L.PieceTreeTextBuffer([],"","\n",!1,!1,!0,!0);e.dispose(),this._buffer=e,this._bufferDisposable=a.Disposable.None}_assertNotDisposed(){if(this._isDisposed)throw Error("Model is disposed!")}_emitContentChangedEvent(e,t){!this.__isDisposing&&(this._tokenizationTextModelPart.handleDidChangeContent(t),this._bracketPairs.handleDidChangeContent(t),this._eventEmitter.fire(new N.InternalModelContentChangeEvent(e,t)))}setValue(e){if(this._assertNotDisposed(),null===e)return;let{textBuffer:t,disposable:i}=O(e,this._options.defaultEOL);this._setValueFromTextBuffer(t,i)}_createContentChanged2(e,t,i,n,o,s,r){return{changes:[{range:e,rangeOffset:t,rangeLength:i,text:n}],eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:o,isRedoing:s,isFlush:r}}_setValueFromTextBuffer(e,t){this._assertNotDisposed();let i=this.getFullModelRange(),n=this.getValueLengthInRange(i),o=this.getLineCount(),s=this.getLineMaxColumn(o);this._buffer=e,this._bufferDisposable.dispose(),this._bufferDisposable=t,this._increaseVersionId(),this._tokenizationTextModelPart.flush(),this._decorations=Object.create(null),this._decorationsTree=new V,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new N.ModelRawContentChangedEvent([new N.ModelRawFlush],this._versionId,!1,!1),this._createContentChanged2(new g.Range(1,1,o,s),0,n,this.getValue(),!1,!1,!0))}setEOL(e){this._assertNotDisposed();let t=1===e?"\r\n":"\n";if(this._buffer.getEOL()===t)return;let i=this.getFullModelRange(),n=this.getValueLengthInRange(i),o=this.getLineCount(),s=this.getLineMaxColumn(o);this._onBeforeEOLChange(),this._buffer.setEOL(t),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new N.ModelRawContentChangedEvent([new N.ModelRawEOLChanged],this._versionId,!1,!1),this._createContentChanged2(new g.Range(1,1,o,s),0,n,this.getValue(),!1,!1,!1))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){let e=this.getVersionId(),t=this._decorationsTree.collectNodesPostOrder();for(let i=0,n=t.length;i<n;i++){let n=t[i],o=n.range,s=n.cachedAbsoluteStart-n.start,r=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),a=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);n.cachedAbsoluteStart=r,n.cachedAbsoluteEnd=a,n.cachedVersionId=e,n.start=r-s,n.end=a-s,(0,y.recomputeMaxEnd)(n)}}onBeforeAttached(){this._attachedEditorCount++,1===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0))}onBeforeDetached(){this._attachedEditorCount--,0===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0))}isAttachedToEditor(){return this._attachedEditorCount>0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let e=0,t=0,i=this._buffer.getLineCount();for(let n=1;n<=i;n++){let i=this._buffer.getLineLength(n);i>=1e4?t+=i:e+=i}return t>e}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(e){this._assertNotDisposed();let t=void 0!==e.tabSize?e.tabSize:this._options.tabSize,i=void 0!==e.indentSize?e.indentSize:this._options.indentSize,n=void 0!==e.insertSpaces?e.insertSpaces:this._options.insertSpaces,o=void 0!==e.trimAutoWhitespace?e.trimAutoWhitespace:this._options.trimAutoWhitespace,s=void 0!==e.bracketColorizationOptions?e.bracketColorizationOptions:this._options.bracketPairColorizationOptions,r=new v.TextModelResolvedOptions({tabSize:t,indentSize:i,insertSpaces:n,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:o,bracketPairColorizationOptions:s});if(this._options.equals(r))return;let a=this._options.createChangeEvent(r);this._options=r,this._bracketPairs.handleDidChangeOptions(a),this._decorationProvider.handleDidChangeOptions(a),this._onDidChangeOptions.fire(a)}detectIndentation(e,t){this._assertNotDisposed();let i=(0,D.guessIndentation)(this._buffer,t,e);this.updateOptions({insertSpaces:i.insertSpaces,tabSize:i.tabSize,indentSize:i.tabSize})}normalizeIndentation(e){return this._assertNotDisposed(),(0,c.normalizeIndentation)(e,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(e=null){let t=this.findMatches(l.UNUSUAL_LINE_TERMINATORS.source,!1,!0,!1,null,!1,1073741824);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(e,t.map(e=>({range:e.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(e){this._assertNotDisposed();let t=this._validatePosition(e.lineNumber,e.column,0);return this._buffer.getOffsetAt(t.lineNumber,t.column)}getPositionAt(e){this._assertNotDisposed();let t=Math.min(this._buffer.getLength(),Math.max(0,e));return this._buffer.getPositionAt(t)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(e){this._versionId=e}_overwriteAlternativeVersionId(e){this._alternativeVersionId=e}_overwriteInitialUndoRedoSnapshot(e){this._initialUndoRedoSnapshot=e}getValue(e,t=!1){this._assertNotDisposed();let i=this.getFullModelRange(),n=this.getValueInRange(i,e);return t?this._buffer.getBOM()+n:n}createSnapshot(e=!1){return new P(this._buffer.createSnapshot(e))}getValueLength(e,t=!1){this._assertNotDisposed();let i=this.getFullModelRange(),n=this.getValueLengthInRange(i,e);return t?this._buffer.getBOM().length+n:n}getValueInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(e),t)}getValueLengthInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(e),t)}getCharacterCountInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(e),t)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw Error("Illegal value for lineNumber");return this._buffer.getLineContent(e)}getLineLength(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw Error("Illegal value for lineNumber");return this._buffer.getLineLength(e)}getLinesContent(){return this._assertNotDisposed(),this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),"\n"===this._buffer.getEOL()?0:1}getLineMinColumn(e){return this._assertNotDisposed(),1}getLineMaxColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw Error("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1}getLineFirstNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw Error("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)}getLineLastNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw Error("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)}_validateRangeRelaxedNoAllocations(e){let t=this._buffer.getLineCount(),i=e.startLineNumber,n=e.startColumn,o=Math.floor("number"!=typeof i||isNaN(i)?1:i),s=Math.floor("number"!=typeof n||isNaN(n)?1:n);if(o<1)o=1,s=1;else if(o>t)o=t,s=this.getLineMaxColumn(o);else if(s<=1)s=1;else{let e=this.getLineMaxColumn(o);s>=e&&(s=e)}let r=e.endLineNumber,a=e.endColumn,l=Math.floor("number"!=typeof r||isNaN(r)?1:r),d=Math.floor("number"!=typeof a||isNaN(a)?1:a);if(l<1)l=1,d=1;else if(l>t)l=t,d=this.getLineMaxColumn(l);else if(d<=1)d=1;else{let e=this.getLineMaxColumn(l);d>=e&&(d=e)}return i===o&&n===s&&r===l&&a===d&&e instanceof g.Range&&!(e instanceof m.Selection)?e:new g.Range(o,s,l,d)}_isValidPosition(e,t,i){if("number"!=typeof e||"number"!=typeof t||isNaN(e)||isNaN(t)||e<1||t<1||(0|e)!==e||(0|t)!==t||e>this._buffer.getLineCount())return!1;if(1===t)return!0;if(t>this.getLineMaxColumn(e))return!1;if(1===i){let i=this._buffer.getLineCharCode(e,t-2);if(l.isHighSurrogate(i))return!1}return!0}_validatePosition(e,t,i){let n=Math.floor("number"!=typeof e||isNaN(e)?1:e),o=Math.floor("number"!=typeof t||isNaN(t)?1:t),s=this._buffer.getLineCount();if(n<1)return new u.Position(1,1);if(n>s)return new u.Position(s,this.getLineMaxColumn(s));if(o<=1)return new u.Position(n,1);let r=this.getLineMaxColumn(n);if(o>=r)return new u.Position(n,r);if(1===i){let e=this._buffer.getLineCharCode(n,o-2);if(l.isHighSurrogate(e))return new u.Position(n,o-1)}return new u.Position(n,o)}validatePosition(e){return(this._assertNotDisposed(),e instanceof u.Position&&this._isValidPosition(e.lineNumber,e.column,1))?e:this._validatePosition(e.lineNumber,e.column,1)}_isValidRange(e,t){let i=e.startLineNumber,n=e.startColumn,o=e.endLineNumber,s=e.endColumn;if(!this._isValidPosition(i,n,0)||!this._isValidPosition(o,s,0))return!1;if(1===t){let e=n>1?this._buffer.getLineCharCode(i,n-2):0,t=s>1&&s<=this._buffer.getLineLength(o)?this._buffer.getLineCharCode(o,s-2):0,r=l.isHighSurrogate(e),a=l.isHighSurrogate(t);return!r&&!a&&!0}return!0}validateRange(e){if(this._assertNotDisposed(),e instanceof g.Range&&!(e instanceof m.Selection)&&this._isValidRange(e,1))return e;let t=this._validatePosition(e.startLineNumber,e.startColumn,0),i=this._validatePosition(e.endLineNumber,e.endColumn,0),n=t.lineNumber,o=t.column,s=i.lineNumber,r=i.column;{let e=o>1?this._buffer.getLineCharCode(n,o-2):0,t=r>1&&r<=this._buffer.getLineLength(s)?this._buffer.getLineCharCode(s,r-2):0,i=l.isHighSurrogate(e),a=l.isHighSurrogate(t);return i||a?n===s&&o===r?new g.Range(n,o-1,s,r-1):i&&a?new g.Range(n,o-1,s,r+1):i?new g.Range(n,o-1,s,r):new g.Range(n,o,s,r+1):new g.Range(n,o,s,r)}}modifyPosition(e,t){this._assertNotDisposed();let i=this.getOffsetAt(e)+t;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,i)))}getFullModelRange(){this._assertNotDisposed();let e=this.getLineCount();return new g.Range(1,1,e,this.getLineMaxColumn(e))}findMatchesLineByLine(e,t,i,n){return this._buffer.findMatchesLineByLine(e,t,i,n)}findMatches(e,t,i,n,o,s,r=999){let a;this._assertNotDisposed();let l=null;null!==t&&(!Array.isArray(t)&&(t=[t]),t.every(e=>g.Range.isIRange(e))&&(l=t.map(e=>this.validateRange(e)))),null===l&&(l=[this.getFullModelRange()]),l=l.sort((e,t)=>e.startLineNumber-t.startLineNumber||e.startColumn-t.startColumn);let d=[];if(d.push(l.reduce((e,t)=>g.Range.areIntersecting(e,t)?e.plusRange(t):(d.push(e),t))),!i&&0>e.indexOf("\n")){let t=new E.SearchParams(e,i,n,o).parseSearchRequest();if(!t)return[];a=e=>this.findMatchesLineByLine(e,t,s,r)}else a=t=>E.TextModelSearch.findMatches(this,new E.SearchParams(e,i,n,o),t,s,r);return d.map(a).reduce((e,t)=>e.concat(t),[])}findNextMatch(e,t,i,n,o,s){this._assertNotDisposed();let r=this.validatePosition(t);if(!i&&0>e.indexOf("\n")){let t=new E.SearchParams(e,i,n,o).parseSearchRequest();if(!t)return null;let a=this.getLineCount(),l=new g.Range(r.lineNumber,r.column,a,this.getLineMaxColumn(a)),d=this.findMatchesLineByLine(l,t,s,1);return(E.TextModelSearch.findNextMatch(this,new E.SearchParams(e,i,n,o),r,s),d.length>0)?d[0]:(l=new g.Range(1,1,r.lineNumber,this.getLineMaxColumn(r.lineNumber)),(d=this.findMatchesLineByLine(l,t,s,1)).length>0)?d[0]:null}return E.TextModelSearch.findNextMatch(this,new E.SearchParams(e,i,n,o),r,s)}findPreviousMatch(e,t,i,n,o,s){this._assertNotDisposed();let r=this.validatePosition(t);return E.TextModelSearch.findPreviousMatch(this,new E.SearchParams(e,i,n,o),r,s)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(e){if(("\n"===this.getEOL()?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(e){return e instanceof v.ValidAnnotatedEditOperation?e:new v.ValidAnnotatedEditOperation(e.identifier||null,this.validateRange(e.range),e.text,e.forceMoveMarkers||!1,e.isAutoWhitespaceEdit||!1,e._isTracked||!1)}_validateEditOperations(e){let t=[];for(let i=0,n=e.length;i<n;i++)t[i]=this._validateEditOperation(e[i]);return t}pushEditOperations(e,t,i){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(e,this._validateEditOperations(t),i)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_pushEditOperations(e,t,i){if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){let i=t.map(e=>({range:this.validateRange(e.range),text:e.text})),n=!0;if(e)for(let t=0,o=e.length;t<o;t++){let o=e[t],s=!1;for(let e=0,t=i.length;e<t;e++){let t=i[e].range,n=t.startLineNumber>o.endLineNumber,r=o.startLineNumber>t.endLineNumber;if(!n&&!r){s=!0;break}}if(!s){n=!1;break}}if(n)for(let e=0,n=this._trimAutoWhitespaceLines.length;e<n;e++){let n=this._trimAutoWhitespaceLines[e],o=this.getLineMaxColumn(n),s=!0;for(let e=0,t=i.length;e<t;e++){let t=i[e].range,r=i[e].text;if(!(n<t.startLineNumber||n>t.endLineNumber||n===t.startLineNumber&&t.startColumn===o&&t.isEmpty()&&r&&r.length>0&&"\n"===r.charAt(0))){if(!(n===t.startLineNumber&&1===t.startColumn&&t.isEmpty())||!r||!(r.length>0)||"\n"!==r.charAt(r.length-1)){s=!1;break}}}if(s){let e=new g.Range(n,1,n,o);t.push(new v.ValidAnnotatedEditOperation(null,e,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(e,t,i)}_applyUndo(e,t,i,n){let o=e.map(e=>{let t=this.getPositionAt(e.newPosition),i=this.getPositionAt(e.newEnd);return{range:new g.Range(t.lineNumber,t.column,i.lineNumber,i.column),text:e.oldText}});this._applyUndoRedoEdits(o,t,!0,!1,i,n)}_applyRedo(e,t,i,n){let o=e.map(e=>{let t=this.getPositionAt(e.oldPosition),i=this.getPositionAt(e.oldEnd);return{range:new g.Range(t.lineNumber,t.column,i.lineNumber,i.column),text:e.newText}});this._applyUndoRedoEdits(o,t,!1,!0,i,n)}_applyUndoRedoEdits(e,t,i,n,o,s){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=i,this._isRedoing=n,this.applyEdits(e,!1),this.setEOL(t),this._overwriteAlternativeVersionId(o)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(s),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,t=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();let i=this._validateEditOperations(e);return this._doApplyEdits(i,t)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,t){let i=this._buffer.getLineCount(),o=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,t),s=this._buffer.getLineCount(),r=o.changes;if(this._trimAutoWhitespaceLines=o.trimAutoWhitespaceLineNumbers,0!==r.length){for(let e=0,t=r.length;e<t;e++){let t=r[e],[i,n,o]=(0,h.countEOL)(t.text);this._tokenizationTextModelPart.acceptEdit(t.range,t.text,i,n,o),this._decorationsTree.acceptReplace(t.rangeOffset,t.rangeLength,t.text.length,t.forceMoveMarkers)}let e=[];this._increaseVersionId();let t=i;for(let i=0,o=r.length;i<o;i++){let o=r[i],[a]=(0,h.countEOL)(o.text);this._onDidChangeDecorations.fire();let l=o.range.startLineNumber,d=o.range.endLineNumber,c=d-l,g=Math.min(c,a),m=a-c,p=s-t-m+l,f=p+a,_=this._decorationsTree.getInjectedTextInInterval(this,this.getOffsetAt(new u.Position(p,1)),this.getOffsetAt(new u.Position(f,this.getLineMaxColumn(f))),0),v=N.LineInjectedText.fromDecorations(_),C=new n.ArrayQueue(v);for(let t=g;t>=0;t--){let i=l+t,n=p+t;C.takeFromEndWhile(e=>e.lineNumber>n);let o=C.takeFromEndWhile(e=>e.lineNumber===n);e.push(new N.ModelRawLineChanged(i,this.getLineContent(n),o))}if(g<c){let t=l+g;e.push(new N.ModelRawLinesDeleted(t+1,d))}if(g<a){let i=new n.ArrayQueue(v),o=l+g,r=a-g,d=s-t-r+o+1,h=[],c=[];for(let e=0;e<r;e++){let t=d+e;c[e]=this.getLineContent(t),i.takeWhile(e=>e.lineNumber<t),h[e]=i.takeWhile(e=>e.lineNumber===t)}e.push(new N.ModelRawLinesInserted(o+1,l+a,c,h))}t+=m}this._emitContentChangedEvent(new N.ModelRawContentChangedEvent(e,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:r,eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return null===o.reverseEdits?void 0:o.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(e){if(null===e||0===e.size)return;let t=Array.from(e).map(e=>new N.ModelRawLineChanged(e,this.getLineContent(e),this._getInjectedTextInLine(e)));this._onDidChangeInjectedText.fire(new N.ModelInjectedTextChangedEvent(t))}changeDecorations(e,t=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(e,t){let i={addDecoration:(t,i)=>this._deltaDecorationsImpl(e,[],[{range:t,options:i}])[0],changeDecoration:(e,t)=>{this._changeDecorationImpl(e,t)},changeDecorationOptions:(e,t)=>{this._changeDecorationOptionsImpl(e,Q(t))},removeDecoration:t=>{this._deltaDecorationsImpl(e,[t],[])},deltaDecorations:(t,i)=>0===t.length&&0===i.length?[]:this._deltaDecorationsImpl(e,t,i)},n=null;try{n=t(i)}catch(e){(0,s.onUnexpectedError)(e)}return i.addDecoration=R,i.changeDecoration=R,i.changeDecorationOptions=R,i.removeDecoration=R,i.deltaDecorations=R,n}deltaDecorations(e,t,i=0){if(this._assertNotDisposed(),!e&&(e=[]),0===e.length&&0===t.length)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),(0,s.onUnexpectedError)(Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(i,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(e){return this.getDecorationRange(e)}_setTrackedRange(e,t,i){let n=e?this._decorations[e]:null;if(!n)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:$[i]}])[0]:null;if(!t)return this._decorationsTree.delete(n),delete this._decorations[n.id],null;let o=this._validateRangeRelaxedNoAllocations(t),s=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),r=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);return this._decorationsTree.delete(n),n.reset(this.getVersionId(),s,r,o),n.setOptions($[i]),this._decorationsTree.insert(n),n.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;let t=this._decorationsTree.collectNodesFromOwner(e);for(let e=0,i=t.length;e<i;e++){let i=t[e];this._decorationsTree.delete(i),delete this._decorations[i.id]}}getDecorationOptions(e){let t=this._decorations[e];return t?t.options:null}getDecorationRange(e){let t=this._decorations[e];return t?this._decorationsTree.getNodeRange(this,t):null}getLineDecorations(e,t=0,i=!1){return e<1||e>this.getLineCount()?[]:this.getLinesDecorations(e,e,t,i)}getLinesDecorations(e,t,i=0,o=!1){let s=this.getLineCount(),r=Math.min(s,Math.max(1,t)),a=this.getLineMaxColumn(r),l=new g.Range(Math.min(s,Math.max(1,e)),1,r,a),d=this._getDecorationsInRange(l,i,o);return(0,n.pushMany)(d,this._decorationProvider.getDecorationsInRange(l,i,o)),d}getDecorationsInRange(e,t=0,i=!1){let o=this.validateRange(e),s=this._getDecorationsInRange(o,t,i);return(0,n.pushMany)(s,this._decorationProvider.getDecorationsInRange(o,t,i)),s}getOverviewRulerDecorations(e=0,t=!1){return this._decorationsTree.getAll(this,e,t,!0)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(this,e)}_getInjectedTextInLine(e){let t=this._buffer.getOffsetAt(e,1),i=t+this._buffer.getLineLength(e),n=this._decorationsTree.getInjectedTextInInterval(this,t,i,0);return N.LineInjectedText.fromDecorations(n).filter(t=>t.lineNumber===e)}getAllDecorations(e=0,t=!1){let i=this._decorationsTree.getAll(this,e,t,!1);return i=i.concat(this._decorationProvider.getAllDecorations(e,t))}_getDecorationsInRange(e,t,i){let n=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),o=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,n,o,t,i)}getRangeAt(e,t){return this._buffer.getRangeAt(e,t-e)}_changeDecorationImpl(e,t){let i=this._decorations[e];if(!i)return;if(i.options.after){let t=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(t.endLineNumber)}if(i.options.before){let t=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(t.startLineNumber)}let n=this._validateRangeRelaxedNoAllocations(t),o=this._buffer.getOffsetAt(n.startLineNumber,n.startColumn),s=this._buffer.getOffsetAt(n.endLineNumber,n.endColumn);this._decorationsTree.delete(i),i.reset(this.getVersionId(),o,s,n),this._decorationsTree.insert(i),this._onDidChangeDecorations.checkAffectedAndFire(i.options),i.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.endLineNumber),i.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.startLineNumber)}_changeDecorationOptionsImpl(e,t){let i=this._decorations[e];if(!i)return;let n=!!i.options.overviewRuler&&!!i.options.overviewRuler.color,o=!!t.overviewRuler&&!!t.overviewRuler.color;if(this._onDidChangeDecorations.checkAffectedAndFire(i.options),this._onDidChangeDecorations.checkAffectedAndFire(t),i.options.after||t.after){let e=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber)}if(i.options.before||t.before){let e=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber)}n!==o?(this._decorationsTree.delete(i),i.setOptions(t),this._decorationsTree.insert(i)):i.setOptions(t)}_deltaDecorationsImpl(e,t,i){let n=this.getVersionId(),o=t.length,s=0,r=i.length,a=0,l=Array(r);for(;s<o||a<r;){let d=null;if(s<o){do d=this._decorations[t[s++]];while(!d&&s<o);if(d){if(d.options.after){let e=this._decorationsTree.getNodeRange(this,d);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber)}if(d.options.before){let e=this._decorationsTree.getNodeRange(this,d);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber)}this._decorationsTree.delete(d),this._onDidChangeDecorations.checkAffectedAndFire(d.options)}}if(a<r){if(!d){let e=++this._lastDecorationId,t=`${this._instanceId};${e}`;d=new y.IntervalNode(t,0,0),this._decorations[t]=d}let t=i[a],o=this._validateRangeRelaxedNoAllocations(t.range),s=Q(t.options),r=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),h=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);d.ownerId=e,d.reset(n,r,h,o),d.setOptions(s),d.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(o.endLineNumber),d.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(o.startLineNumber),this._onDidChangeDecorations.checkAffectedAndFire(s),this._decorationsTree.insert(d),l[a]=d.id,a++}else d&&delete this._decorations[d.id]}return l}getLanguageId(){return this.tokenization.getLanguageId()}setMode(e){this.tokenization.setLanguageId(e)}getLanguageIdAtPosition(e,t){return this.tokenization.getLanguageIdAtPosition(e,t)}getWordAtPosition(e){return this._tokenizationTextModelPart.getWordAtPosition(e)}getWordUntilPosition(e){return this._tokenizationTextModelPart.getWordUntilPosition(e)}normalizePosition(e,t){return e}getLineIndentColumn(e){return function(e){let t=0;for(let i of e)if(" "===i||" "===i)t++;else break;return t}(this.getLineContent(e))+1}};A.MODEL_SYNC_LIMIT=52428800,A.LARGE_FILE_SIZE_THRESHOLD=20971520,A.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5,A.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:p.EDITOR_MODEL_DEFAULTS.tabSize,indentSize:p.EDITOR_MODEL_DEFAULTS.indentSize,insertSpaces:p.EDITOR_MODEL_DEFAULTS.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:p.EDITOR_MODEL_DEFAULTS.trimAutoWhitespace,largeFileOptimizations:p.EDITOR_MODEL_DEFAULTS.largeFileOptimizations,bracketPairColorizationOptions:p.EDITOR_MODEL_DEFAULTS.bracketPairColorizationOptions},A=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([T(4,M.IUndoRedoService),T(5,f.ILanguageService),T(6,_.ILanguageConfigurationService)],A);function z(e){return!!e.options.overviewRuler&&!!e.options.overviewRuler.color}function F(e){return!!e.options.after||!!e.options.before}class V{constructor(){this._decorationsTree0=new y.IntervalTree,this._decorationsTree1=new y.IntervalTree,this._injectedTextDecorationsTree=new y.IntervalTree}ensureAllNodesHaveRanges(e){this.getAll(e,0,!1,!1)}_ensureNodesHaveRanges(e,t){for(let i of t)null===i.range&&(i.range=e.getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd));return t}getAllInInterval(e,t,i,n,o){let s=e.getVersionId(),r=this._intervalSearch(t,i,n,o,s);return this._ensureNodesHaveRanges(e,r)}_intervalSearch(e,t,i,n,o){let s=this._decorationsTree0.intervalSearch(e,t,i,n,o),r=this._decorationsTree1.intervalSearch(e,t,i,n,o),a=this._injectedTextDecorationsTree.intervalSearch(e,t,i,n,o);return s.concat(r).concat(a)}getInjectedTextInInterval(e,t,i,n){let o=e.getVersionId(),s=this._injectedTextDecorationsTree.intervalSearch(t,i,n,!1,o);return this._ensureNodesHaveRanges(e,s).filter(e=>e.options.showIfCollapsed||!e.range.isEmpty())}getAllInjectedText(e,t){let i=e.getVersionId(),n=this._injectedTextDecorationsTree.search(t,!1,i);return this._ensureNodesHaveRanges(e,n).filter(e=>e.options.showIfCollapsed||!e.range.isEmpty())}getAll(e,t,i,n){let o=e.getVersionId(),s=this._search(t,i,n,o);return this._ensureNodesHaveRanges(e,s)}_search(e,t,i,n){if(i)return this._decorationsTree1.search(e,t,n);{let i=this._decorationsTree0.search(e,t,n),o=this._decorationsTree1.search(e,t,n),s=this._injectedTextDecorationsTree.search(e,t,n);return i.concat(o).concat(s)}}collectNodesFromOwner(e){let t=this._decorationsTree0.collectNodesFromOwner(e),i=this._decorationsTree1.collectNodesFromOwner(e),n=this._injectedTextDecorationsTree.collectNodesFromOwner(e);return t.concat(i).concat(n)}collectNodesPostOrder(){let e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder(),i=this._injectedTextDecorationsTree.collectNodesPostOrder();return e.concat(t).concat(i)}insert(e){F(e)?this._injectedTextDecorationsTree.insert(e):z(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){F(e)?this._injectedTextDecorationsTree.delete(e):z(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)}getNodeRange(e,t){let i=e.getVersionId();return t.cachedVersionId!==i&&this._resolveNode(t,i),null===t.range&&(t.range=e.getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range}_resolveNode(e,t){F(e)?this._injectedTextDecorationsTree.resolveNode(e,t):z(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)}acceptReplace(e,t,i,n){this._decorationsTree0.acceptReplace(e,t,i,n),this._decorationsTree1.acceptReplace(e,t,i,n),this._injectedTextDecorationsTree.acceptReplace(e,t,i,n)}}function W(e){return e.replace(/[^a-z0-9\-_]/gi," ")}class H{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}}class B extends H{constructor(e){super(e),this._resolvedColor=null,this.position="number"==typeof e.position?e.position:v.OverviewRulerLane.Center}getColor(e){return!this._resolvedColor&&("light"!==e.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(e,t){if("string"==typeof e)return e;let i=e?t.getColor(e.id):null;return i?i.toString():""}}class j extends H{constructor(e){super(e),this.position=e.position}getColor(e){return!this._resolvedColor&&("light"!==e.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(e,t){return"string"==typeof e?o.Color.fromHex(e):t.getColor(e.id)}}class K{constructor(e){this.content=e.content||"",this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}static from(e){return e instanceof K?e:new K(e)}}class U{constructor(e){var t,i;this.description=e.description,this.blockClassName=e.blockClassName?W(e.blockClassName):null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?W(e.className):null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new B(e.overviewRuler):null,this.minimap=e.minimap?new j(e.minimap):null,this.glyphMarginClassName=e.glyphMarginClassName?W(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?W(e.linesDecorationsClassName):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?W(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?W(e.marginClassName):null,this.inlineClassName=e.inlineClassName?W(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?W(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?W(e.afterContentClassName):null,this.after=e.after?K.from(e.after):null,this.before=e.before?K.from(e.before):null,this.hideInCommentTokens=null!==(t=e.hideInCommentTokens)&&void 0!==t&&t,this.hideInStringTokens=null!==(i=e.hideInStringTokens)&&void 0!==i&&i}static register(e){return new U(e)}static createDynamic(e){return new U(e)}}U.EMPTY=U.register({description:"empty"});let $=[U.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),U.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),U.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),U.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function Q(e){return e instanceof U?e:U.createDynamic(e)}class G extends a.Disposable{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new r.Emitter),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFire=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){var e;if(this._deferredCnt--,0===this._deferredCnt){if(this._shouldFire){this.handleBeforeFire(this._affectedInjectedTextLines);let e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler};this._shouldFire=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._actual.fire(e)}null===(e=this._affectedInjectedTextLines)||void 0===e||e.clear(),this._affectedInjectedTextLines=null}}recordLineAffectedByInjectedText(e){!this._affectedInjectedTextLines&&(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}checkAffectedAndFire(e){!this._affectsMinimap&&(this._affectsMinimap=!!e.minimap&&!!e.minimap.position),!this._affectsOverviewRuler&&(this._affectsOverviewRuler=!!e.overviewRuler&&!!e.overviewRuler.color),this._shouldFire=!0}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._shouldFire=!0}}class q extends a.Disposable{constructor(){super(),this._fastEmitter=this._register(new r.Emitter),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new r.Emitter),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(e=null){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){this._deferredEvent.rawContentChangedEvent.resultingSelection=e;let t=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(t),this._slowEmitter.fire(t)}}fire(e){if(this._deferredCnt>0){this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e;return}this._fastEmitter.fire(e),this._slowEmitter.fire(e)}}},468530:function(e,t,i){"use strict";i.r(t),i.d(t,{EditorSimpleWorker:function(){return C}});var n=i("160012"),o=i("207875"),s=i("938505"),r=i("457938"),a=i("761045"),l=i("343349"),d=i("380859"),h=i("180553"),c=i("815984"),u=i("72942"),g=i("121401"),m=i("744138"),p=i("130039"),f=i("732288"),_=function(e,t,i,n){return new(i||(i=Promise))(function(o,s){function r(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?o(e.value):((t=e.value)instanceof i?t:new i(function(e){e(t)})).then(r,a)}l((n=n.apply(e,t||[])).next())})};class v extends d.MirrorTextModel{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(e){return this._lines[e-1]}getWordAtPosition(e,t){let i=(0,h.getWordAtText)(e.column,(0,h.ensureValidWordDefinition)(t),this._lines[e.lineNumber-1],0);return i?new a.Range(e.lineNumber,i.startColumn,e.lineNumber,i.endColumn):null}words(e){let t=this._lines,i=this._wordenize.bind(this),n=0,o="",s=0,r=[];return{*[Symbol.iterator](){for(;;)if(s<r.length){let e=o.substring(r[s].start,r[s].end);s+=1,yield e}else if(n<t.length)r=i(o=t[n],e),s=0,n+=1;else break}}}getLineWords(e,t){let i=this._lines[e-1],n=this._wordenize(i,t),o=[];for(let e of n)o.push({word:i.substring(e.start,e.end),startColumn:e.start+1,endColumn:e.end+1});return o}_wordenize(e,t){let i;let n=[];for(t.lastIndex=0;(i=t.exec(e))&&0!==i[0].length;){;n.push({start:i.index,end:i.index+i[0].length})}return n}getValueInRange(e){if((e=this._validateRange(e)).startLineNumber===e.endLineNumber)return this._lines[e.startLineNumber-1].substring(e.startColumn-1,e.endColumn-1);let t=this._eol,i=e.startLineNumber-1,n=e.endLineNumber-1,o=[];o.push(this._lines[i].substring(e.startColumn-1));for(let e=i+1;e<n;e++)o.push(this._lines[e]);return o.push(this._lines[n].substring(0,e.endColumn-1)),o.join(t)}offsetAt(e){return e=this._validatePosition(e),this._ensureLineStarts(),this._lineStarts.getPrefixSum(e.lineNumber-2)+(e.column-1)}positionAt(e){e=Math.max(0,e=Math.floor(e)),this._ensureLineStarts();let t=this._lineStarts.getIndexOf(e),i=this._lines[t.index].length;return{lineNumber:1+t.index,column:1+Math.min(t.remainder,i)}}_validateRange(e){let t=this._validatePosition({lineNumber:e.startLineNumber,column:e.startColumn}),i=this._validatePosition({lineNumber:e.endLineNumber,column:e.endColumn});return t.lineNumber!==e.startLineNumber||t.column!==e.startColumn||i.lineNumber!==e.endLineNumber||i.column!==e.endColumn?{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:i.lineNumber,endColumn:i.column}:e}_validatePosition(e){if(!r.Position.isIPosition(e))throw Error("bad position");let{lineNumber:t,column:i}=e,n=!1;if(t<1)t=1,i=1,n=!0;else if(t>this._lines.length)t=this._lines.length,i=this._lines[t-1].length+1,n=!0;else{let e=this._lines[t-1].length+1;i<1?(i=1,n=!0):i>e&&(i=e,n=!0)}return n?{lineNumber:t,column:i}:e}}class C{constructor(e,t){this._host=e,this._models=Object.create(null),this._foreignModuleFactory=t,this._foreignModule=null}dispose(){this._models=Object.create(null)}_getModel(e){return this._models[e]}_getModels(){let e=[];return Object.keys(this._models).forEach(t=>e.push(this._models[t])),e}acceptNewModel(e){this._models[e.url]=new v(s.URI.parse(e.url),e.lines,e.EOL,e.versionId)}acceptModelChanged(e,t){if(!!this._models[e])this._models[e].onEvents(t)}acceptRemovedModel(e){this._models[e]&&delete this._models[e]}computeUnicodeHighlights(e,t,i){return _(this,void 0,void 0,function*(){let n=this._getModel(e);return n?f.UnicodeTextModelHighlighter.computeUnicodeHighlights(n,t,i):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}})}computeDiff(e,t,i,n){return _(this,void 0,void 0,function*(){let o=this._getModel(e),s=this._getModel(t);return o&&s?C.computeDiff(o,s,i,n):null})}static computeDiff(e,t,i,n){let o=e.getLinesContent(),s=t.getLinesContent(),r=new l.DiffComputer(o,s,{shouldComputeCharChanges:!0,shouldPostProcessCharChanges:!0,shouldIgnoreTrimWhitespace:i,shouldMakePrettyDiff:!0,maxComputationTime:n}).computeDiff(),a=!(r.changes.length>0)&&this._modelsAreIdentical(e,t);return{quitEarly:r.quitEarly,identical:a,changes:r.changes}}static _modelsAreIdentical(e,t){let i=e.getLineCount();if(i!==t.getLineCount())return!1;for(let n=1;n<=i;n++){let i=e.getLineContent(n);if(i!==t.getLineContent(n))return!1}return!0}computeMoreMinimalEdits(e,t){return _(this,void 0,void 0,function*(){let i,o=this._getModel(e);if(!o)return t;let s=[];for(let{range:e,text:r,eol:l}of t=t.slice(0).sort((e,t)=>{if(e.range&&t.range)return a.Range.compareRangesUsingStarts(e.range,t.range);let i=e.range?0:1;return i-(t.range?0:1)})){if("number"==typeof l&&(i=l),a.Range.isEmpty(e)&&!r)continue;let t=o.getValueInRange(e);if(t===(r=r.replace(/\r\n|\n|\r/g,o.eol)))continue;if(Math.max(r.length,t.length)>C._diffLimit){s.push({range:e,text:r});continue}let d=(0,n.stringDiff)(t,r,!1),h=o.offsetAt(a.Range.lift(e).getStartPosition());for(let e of d){let t=o.positionAt(h+e.originalStart),i=o.positionAt(h+e.originalStart+e.originalLength),n={text:r.substr(e.modifiedStart,e.modifiedLength),range:{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:i.lineNumber,endColumn:i.column}};o.getValueInRange(n.range)!==n.text&&s.push(n)}}return"number"==typeof i&&s.push({eol:i,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),s})}computeLinks(e){return _(this,void 0,void 0,function*(){let t=this._getModel(e);return t?(0,c.computeLinks)(t):null})}textualSuggest(e,t,i,n){return _(this,void 0,void 0,function*(){let o=new p.StopWatch(!0),s=new RegExp(i,n),r=new Set;e:for(let i of e){let e=this._getModel(i);if(e){for(let i of e.words(s))if(i!==t&&isNaN(Number(i))&&(r.add(i),r.size>C._suggestionsLimit))break e}}return{words:Array.from(r),duration:o.elapsed()}})}computeWordRanges(e,t,i,n){return _(this,void 0,void 0,function*(){let o=this._getModel(e);if(!o)return Object.create(null);let s=new RegExp(i,n),r=Object.create(null);for(let e=t.startLineNumber;e<t.endLineNumber;e++)for(let t of o.getLineWords(e,s)){if(!isNaN(Number(t.word)))continue;let i=r[t.word];!i&&(i=[],r[t.word]=i),i.push({startLineNumber:e,startColumn:t.startColumn,endLineNumber:e,endColumn:t.endColumn})}return r})}navigateValueSet(e,t,i,n,o){return _(this,void 0,void 0,function*(){let s=this._getModel(e);if(!s)return null;let r=new RegExp(n,o);t.startColumn===t.endColumn&&(t={startLineNumber:t.startLineNumber,startColumn:t.startColumn,endLineNumber:t.endLineNumber,endColumn:t.endColumn+1});let a=s.getValueInRange(t),l=s.getWordAtPosition({lineNumber:t.startLineNumber,column:t.startColumn},r);if(!l)return null;let d=s.getValueInRange(l);return u.BasicInplaceReplace.INSTANCE.navigateValueSet(t,a,l,d,i)})}loadForeignModule(e,t,i){let n=m.createProxyObject(i,(e,t)=>this._host.fhr(e,t));return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory({host:n,getMirrorModels:()=>this._getModels()},t),Promise.resolve(m.getAllMethodNames(this._foreignModule))):Promise.reject(Error("Unexpected usage"))}fmr(e,t){if(!this._foreignModule||"function"!=typeof this._foreignModule[e])return Promise.reject(Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(e){return Promise.reject(e)}}}C._diffLimit=1e5,C._suggestionsLimit=1e4,"function"==typeof importScripts&&(o.globals.monaco=(0,g.createMonacoBaseAPI)())},397319:function(e,t,i){"use strict";i.r(t),i.d(t,{getIconClasses:function(){return l}});var n=i("24342"),o=i("437454"),s=i("595394"),r=i("612416");let a=/(?:\/|^)(?:([^\/]+)\/)?([^\/]+)$/;function l(e,t,i,l){let h=l===r.FileKind.ROOT_FOLDER?["rootfolder-icon"]:l===r.FileKind.FOLDER?["folder-icon"]:["file-icon"];if(i){let c;if(i.scheme===n.Schemas.data)c=o.DataUri.parseMetaData(i).get(o.DataUri.META_DATA_LABEL);else{let e=i.path.match(a);e?(c=d(e[2].toLowerCase()),e[1]&&h.push(`${d(e[1].toLowerCase())}-name-dir-icon`)):c=d(i.authority.toLowerCase())}if(l===r.FileKind.FOLDER)h.push(`${c}-name-folder-icon`);else{if(c){if(h.push(`${c}-name-file-icon`),h.push("name-file-icon"),c.length<=255){let e=c.split(".");for(let t=1;t<e.length;t++)h.push(`${e.slice(t).join(".")}-ext-file-icon`)}h.push("ext-file-icon")}let r=function(e,t,i){if(!i)return null;let r=null;if(i.scheme===n.Schemas.data){let e=o.DataUri.parseMetaData(i).get(o.DataUri.META_DATA_MIME);e&&(r=t.getLanguageIdByMimeType(e))}else{let t=e.getModel(i);t&&(r=t.getLanguageId())}return r&&r!==s.PLAINTEXT_LANGUAGE_ID?r:t.guessLanguageIdByFilepathOrFirstLine(i)}(e,t,i);r&&h.push(`${d(r)}-lang-file-icon`)}}return h}function d(e){return e.replace(/[\11\12\14\15\40]/g,"/")}},542454:function(e,t,i){"use strict";i.r(t),i.d(t,{ViewLayout:function(){return c}});var n=i("916904"),o=i("919527"),s=i("212868"),r=i("832432"),a=i("838643"),l=i("614322");class d{constructor(e,t,i,n){(e|=0)<0&&(e=0),(t|=0)<0&&(t=0),(i|=0)<0&&(i=0),(n|=0)<0&&(n=0),this.width=e,this.contentWidth=t,this.scrollWidth=Math.max(e,t),this.height=i,this.contentHeight=n,this.scrollHeight=Math.max(i,n)}equals(e){return this.width===e.width&&this.contentWidth===e.contentWidth&&this.height===e.height&&this.contentHeight===e.contentHeight}}class h extends o.Disposable{constructor(e,t){super(),this._onDidContentSizeChange=this._register(new n.Emitter),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._dimensions=new d(0,0,0,0),this._scrollable=this._register(new s.Scrollable({forceIntegerValues:!0,smoothScrollDuration:e,scheduleAtNextAnimationFrame:t})),this.onDidScroll=this._scrollable.onScroll}getScrollable(){return this._scrollable}setSmoothScrollDuration(e){this._scrollable.setSmoothScrollDuration(e)}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}getScrollDimensions(){return this._dimensions}setScrollDimensions(e){if(this._dimensions.equals(e))return;let t=this._dimensions;this._dimensions=e,this._scrollable.setScrollDimensions({width:e.width,scrollWidth:e.scrollWidth,height:e.height,scrollHeight:e.scrollHeight},!0);let i=t.contentWidth!==e.contentWidth,n=t.contentHeight!==e.contentHeight;(i||n)&&this._onDidContentSizeChange.fire(new l.ContentSizeChangedEvent(t.contentWidth,t.contentHeight,e.contentWidth,e.contentHeight))}getFutureScrollPosition(){return this._scrollable.getFutureScrollPosition()}getCurrentScrollPosition(){return this._scrollable.getCurrentScrollPosition()}setScrollPositionNow(e){this._scrollable.setScrollPositionNow(e)}setScrollPositionSmooth(e){this._scrollable.setScrollPositionSmooth(e)}}class c extends o.Disposable{constructor(e,t,i){super(),this._configuration=e;let n=this._configuration.options,o=n.get(133),s=n.get(77);this._linesLayout=new r.LinesLayout(t,n.get(61),s.top,s.bottom),this._scrollable=this._register(new h(0,i)),this._configureSmoothScrollDuration(),this._scrollable.setScrollDimensions(new d(o.contentWidth,0,o.height,0)),this.onDidScroll=this._scrollable.onDidScroll,this.onDidContentSizeChange=this._scrollable.onDidContentSizeChange,this._updateHeight()}dispose(){super.dispose()}getScrollable(){return this._scrollable.getScrollable()}onHeightMaybeChanged(){this._updateHeight()}_configureSmoothScrollDuration(){this._scrollable.setSmoothScrollDuration(this._configuration.options.get(105)?125:0)}onConfigurationChanged(e){let t=this._configuration.options;if(e.hasChanged(61)&&this._linesLayout.setLineHeight(t.get(61)),e.hasChanged(77)){let e=t.get(77);this._linesLayout.setPadding(e.top,e.bottom)}if(e.hasChanged(133)){let e=t.get(133),i=e.contentWidth,n=e.height,o=this._scrollable.getScrollDimensions(),s=o.contentWidth;this._scrollable.setScrollDimensions(new d(i,o.contentWidth,n,this._getContentHeight(i,n,s)))}else this._updateHeight();e.hasChanged(105)&&this._configureSmoothScrollDuration()}onFlushed(e){this._linesLayout.onFlushed(e)}onLinesDeleted(e,t){this._linesLayout.onLinesDeleted(e,t)}onLinesInserted(e,t){this._linesLayout.onLinesInserted(e,t)}_getHorizontalScrollbarHeight(e,t){let i=this._configuration.options.get(94);return 2===i.horizontal||e>=t?0:i.horizontalScrollbarSize}_getContentHeight(e,t,i){let n=this._configuration.options,o=this._linesLayout.getLinesTotalHeight();return n.get(96)?o+=Math.max(0,t-n.get(61)-n.get(77).bottom):o+=this._getHorizontalScrollbarHeight(e,i),o}_updateHeight(){let e=this._scrollable.getScrollDimensions(),t=e.width,i=e.height,n=e.contentWidth;this._scrollable.setScrollDimensions(new d(t,e.contentWidth,i,this._getContentHeight(t,i,n)))}getCurrentViewport(){let e=this._scrollable.getScrollDimensions(),t=this._scrollable.getCurrentScrollPosition();return new a.Viewport(t.scrollTop,t.scrollLeft,e.width,e.height)}getFutureViewport(){let e=this._scrollable.getScrollDimensions(),t=this._scrollable.getFutureScrollPosition();return new a.Viewport(t.scrollTop,t.scrollLeft,e.width,e.height)}_computeContentWidth(e){let t=this._configuration.options,i=t.get(134),n=t.get(46),o=t.get(133);if(i.isViewportWrapping){let i=t.get(67);return e>o.contentWidth+n.typicalHalfwidthCharacterWidth&&i.enabled&&"right"===i.side?e+o.verticalScrollbarWidth:e}{let i=t.get(95)*n.typicalHalfwidthCharacterWidth,s=this._linesLayout.getWhitespaceMinWidth();return Math.max(e+i+o.verticalScrollbarWidth,s)}}setMaxLineWidth(e){let t=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new d(t.width,this._computeContentWidth(e),t.height,t.contentHeight)),this._updateHeight()}saveState(){let e=this._scrollable.getFutureScrollPosition(),t=e.scrollTop,i=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(t);return{scrollTop:t,scrollTopWithoutViewZones:t-this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(i),scrollLeft:e.scrollLeft}}changeWhitespace(e){let t=this._linesLayout.changeWhitespace(e);return t&&this.onHeightMaybeChanged(),t}getVerticalOffsetForLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetForLineNumber(e,t)}getVerticalOffsetAfterLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetAfterLineNumber(e,t)}isAfterLines(e){return this._linesLayout.isAfterLines(e)}isInTopPadding(e){return this._linesLayout.isInTopPadding(e)}isInBottomPadding(e){return this._linesLayout.isInBottomPadding(e)}getLineNumberAtVerticalOffset(e){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(e)}getWhitespaceAtVerticalOffset(e){return this._linesLayout.getWhitespaceAtVerticalOffset(e)}getLinesViewportData(){let e=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(e.top,e.top+e.height)}getLinesViewportDataAtScrollTop(e){let t=this._scrollable.getScrollDimensions();return e+t.height>t.scrollHeight&&(e=t.scrollHeight-t.height),e<0&&(e=0),this._linesLayout.getLinesViewportData(e,e+t.height)}getWhitespaceViewportData(){let e=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(e.top,e.top+e.height)}getWhitespaces(){return this._linesLayout.getWhitespaces()}getContentWidth(){return this._scrollable.getScrollDimensions().contentWidth}getScrollWidth(){return this._scrollable.getScrollDimensions().scrollWidth}getContentHeight(){return this._scrollable.getScrollDimensions().contentHeight}getScrollHeight(){return this._scrollable.getScrollDimensions().scrollHeight}getCurrentScrollLeft(){return this._scrollable.getCurrentScrollPosition().scrollLeft}getCurrentScrollTop(){return this._scrollable.getCurrentScrollPosition().scrollTop}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}setScrollPosition(e,t){1===t?this._scrollable.setScrollPositionNow(e):this._scrollable.setScrollPositionSmooth(e)}deltaScrollNow(e,t){let i=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:i.scrollLeft+e,scrollTop:i.scrollTop+t})}}},874819:function(e,t,i){"use strict";i.r(t),i.d(t,{BlockCommentCommand:function(){return a}});var n=i("188398"),o=i("457938"),s=i("761045"),r=i("861065");class a{constructor(e,t,i){this.languageConfigurationService=i,this._selection=e,this._insertSpace=t,this._usedEndToken=null}static _haystackHasNeedleAtOffset(e,t,i){if(i<0)return!1;let n=t.length;if(i+n>e.length)return!1;for(let o=0;o<n;o++){let n=e.charCodeAt(i+o),s=t.charCodeAt(o);if(n!==s&&(!(n>=65)||!(n<=90)||n+32!==s)){if(!(s>=65)||!(s<=90)||s+32!==n)return!1}}return!0}_createOperationsForBlockComment(e,t,i,n,o,r){let l;let d=e.startLineNumber,h=e.startColumn,c=e.endLineNumber,u=e.endColumn,g=o.getLineContent(d),m=o.getLineContent(c),p=g.lastIndexOf(t,h-1+t.length),f=m.indexOf(i,u-1-i.length);if(-1!==p&&-1!==f){if(d===c)g.substring(p+t.length,f).indexOf(i)>=0&&(p=-1,f=-1);else{let e=g.substring(p+t.length),n=m.substring(0,f);(e.indexOf(i)>=0||n.indexOf(i)>=0)&&(p=-1,f=-1)}}for(let o of(-1!==p&&-1!==f?(n&&p+t.length<g.length&&32===g.charCodeAt(p+t.length)&&(t+=" "),n&&f>0&&32===m.charCodeAt(f-1)&&(i=" "+i,f-=1),l=a._createRemoveBlockCommentOperations(new s.Range(d,p+t.length+1,c,f+1),t,i)):(l=a._createAddBlockCommentOperations(e,t,i,this._insertSpace),this._usedEndToken=1===l.length?i:null),l))r.addTrackedEditOperation(o.range,o.text)}static _createRemoveBlockCommentOperations(e,t,i){let o=[];return s.Range.isEmpty(e)?o.push(n.EditOperation.delete(new s.Range(e.startLineNumber,e.startColumn-t.length,e.endLineNumber,e.endColumn+i.length))):(o.push(n.EditOperation.delete(new s.Range(e.startLineNumber,e.startColumn-t.length,e.startLineNumber,e.startColumn))),o.push(n.EditOperation.delete(new s.Range(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn+i.length)))),o}static _createAddBlockCommentOperations(e,t,i,r){let a=[];return s.Range.isEmpty(e)?a.push(n.EditOperation.replace(new s.Range(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),t+" "+i)):(a.push(n.EditOperation.insert(new o.Position(e.startLineNumber,e.startColumn),t+(r?" ":""))),a.push(n.EditOperation.insert(new o.Position(e.endLineNumber,e.endColumn),(r?" ":"")+i))),a}getEditOperations(e,t){let i=this._selection.startLineNumber,n=this._selection.startColumn;e.tokenization.tokenizeIfCheap(i);let o=e.getLanguageIdAtPosition(i,n),s=this.languageConfigurationService.getLanguageConfiguration(o).comments;s&&s.blockCommentStartToken&&s.blockCommentEndToken&&this._createOperationsForBlockComment(this._selection,s.blockCommentStartToken,s.blockCommentEndToken,this._insertSpace,e,t)}computeCursorState(e,t){let i=t.getInverseEditOperations();if(2===i.length){let e=i[0],t=i[1];return new r.Selection(e.range.endLineNumber,e.range.endColumn,t.range.startLineNumber,t.range.startColumn)}{let e=i[0].range,t=this._usedEndToken?-this._usedEndToken.length-1:0;return new r.Selection(e.endLineNumber,e.endColumn+t,e.endLineNumber,e.endColumn+t)}}}},729114:function(e,t,i){"use strict";i.r(t),i.d(t,{LineCommentCommand:function(){return d}});var n=i("266763"),o=i("188398"),s=i("457938"),r=i("761045"),a=i("861065"),l=i("874819");class d{constructor(e,t,i,n,o,s,r){this.languageConfigurationService=e,this._selection=t,this._tabSize=i,this._type=n,this._insertSpace=o,this._selectionId=null,this._deltaColumn=0,this._moveEndPositionDown=!1,this._ignoreEmptyLines=s,this._ignoreFirstLine=r||!1}static _gatherPreflightCommentStrings(e,t,i,n){e.tokenization.tokenizeIfCheap(t);let o=e.getLanguageIdAtPosition(t,1),s=n.getLanguageConfiguration(o).comments,r=s?s.lineCommentToken:null;if(!r)return null;let a=[];for(let e=0,n=i-t+1;e<n;e++)a[e]={ignore:!1,commentStr:r,commentStrOffset:0,commentStrLength:r.length};return a}static _analyzeLines(e,t,i,o,s,r,a,d){let h,c=!0;h=0===e||1!==e&&!0;for(let d=0,u=o.length;d<u;d++){let u=o[d],g=s+d;if(g===s&&a){u.ignore=!0;continue}let m=i.getLineContent(g),p=n.firstNonWhitespaceIndex(m);if(-1===p){u.ignore=r,u.commentStrOffset=m.length;continue}if(c=!1,u.ignore=!1,u.commentStrOffset=p,h&&!l.BlockCommentCommand._haystackHasNeedleAtOffset(m,u.commentStr,p)&&(0===e?h=!1:1===e||(u.ignore=!0)),h&&t){let e=p+u.commentStrLength;e<m.length&&32===m.charCodeAt(e)&&(u.commentStrLength+=1)}}if(0===e&&c){h=!1;for(let e=0,t=o.length;e<t;e++)o[e].ignore=!1}return{supported:!0,shouldRemoveComments:h,lines:o}}static _gatherPreflightData(e,t,i,n,o,s,r,a){let l=d._gatherPreflightCommentStrings(i,n,o,a);return null===l?{supported:!1}:d._analyzeLines(e,t,i,l,n,s,r,a)}_executeLineComments(e,t,i,n){let o;i.shouldRemoveComments?o=d._createRemoveLineCommentsOperations(i.lines,n.startLineNumber):(d._normalizeInsertionPoint(e,i.lines,n.startLineNumber,this._tabSize),o=this._createAddLineCommentsOperations(i.lines,n.startLineNumber));let a=new s.Position(n.positionLineNumber,n.positionColumn);for(let i=0,n=o.length;i<n;i++)t.addEditOperation(o[i].range,o[i].text),r.Range.isEmpty(o[i].range)&&r.Range.getStartPosition(o[i].range).equals(a)&&e.getLineContent(a.lineNumber).length+1===a.column&&(this._deltaColumn=(o[i].text||"").length);this._selectionId=t.trackSelection(n)}_attemptRemoveBlockComment(e,t,i,n){let o=t.startLineNumber,s=t.endLineNumber,a=n.length+Math.max(e.getLineFirstNonWhitespaceColumn(t.startLineNumber),t.startColumn),d=e.getLineContent(o).lastIndexOf(i,a-1),h=e.getLineContent(s).indexOf(n,t.endColumn-1-i.length);return(-1!==d&&-1===h&&(h=e.getLineContent(o).indexOf(n,d+i.length),s=o),-1===d&&-1!==h&&(d=e.getLineContent(s).lastIndexOf(i,h),o=s),t.isEmpty()&&(-1===d||-1===h)&&-1!==(d=e.getLineContent(o).indexOf(i))&&(h=e.getLineContent(o).indexOf(n,d+i.length)),-1!==d&&32===e.getLineContent(o).charCodeAt(d+i.length)&&(i+=" "),-1!==h&&32===e.getLineContent(s).charCodeAt(h-1)&&(n=" "+n,h-=1),-1!==d&&-1!==h)?l.BlockCommentCommand._createRemoveBlockCommentOperations(new r.Range(o,d+i.length+1,s,h+1),i,n):null}_executeBlockComment(e,t,i){e.tokenization.tokenizeIfCheap(i.startLineNumber);let o=e.getLanguageIdAtPosition(i.startLineNumber,1),s=this.languageConfigurationService.getLanguageConfiguration(o).comments;if(!s||!s.blockCommentStartToken||!s.blockCommentEndToken)return;let a=s.blockCommentStartToken,d=s.blockCommentEndToken,h=this._attemptRemoveBlockComment(e,i,a,d);if(!h){if(i.isEmpty()){let t=e.getLineContent(i.startLineNumber),o=n.firstNonWhitespaceIndex(t);-1===o&&(o=t.length),h=l.BlockCommentCommand._createAddBlockCommentOperations(new r.Range(i.startLineNumber,o+1,i.startLineNumber,t.length+1),a,d,this._insertSpace)}else h=l.BlockCommentCommand._createAddBlockCommentOperations(new r.Range(i.startLineNumber,e.getLineFirstNonWhitespaceColumn(i.startLineNumber),i.endLineNumber,e.getLineMaxColumn(i.endLineNumber)),a,d,this._insertSpace);1===h.length&&(this._deltaColumn=a.length+1)}for(let e of(this._selectionId=t.trackSelection(i),h))t.addEditOperation(e.range,e.text)}getEditOperations(e,t){let i=this._selection;if(this._moveEndPositionDown=!1,i.startLineNumber===i.endLineNumber&&this._ignoreFirstLine){t.addEditOperation(new r.Range(i.startLineNumber,e.getLineMaxColumn(i.startLineNumber),i.startLineNumber+1,1),i.startLineNumber===e.getLineCount()?"":"\n"),this._selectionId=t.trackSelection(i);return}i.startLineNumber<i.endLineNumber&&1===i.endColumn&&(this._moveEndPositionDown=!0,i=i.setEndPosition(i.endLineNumber-1,e.getLineMaxColumn(i.endLineNumber-1)));let n=d._gatherPreflightData(this._type,this._insertSpace,e,i.startLineNumber,i.endLineNumber,this._ignoreEmptyLines,this._ignoreFirstLine,this.languageConfigurationService);return n.supported?this._executeLineComments(e,t,n,i):this._executeBlockComment(e,t,i)}computeCursorState(e,t){let i=t.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(i=i.setEndPosition(i.endLineNumber+1,1)),new a.Selection(i.selectionStartLineNumber,i.selectionStartColumn+this._deltaColumn,i.positionLineNumber,i.positionColumn+this._deltaColumn)}static _createRemoveLineCommentsOperations(e,t){let i=[];for(let n=0,s=e.length;n<s;n++){let s=e[n];!s.ignore&&i.push(o.EditOperation.delete(new r.Range(t+n,s.commentStrOffset+1,t+n,s.commentStrOffset+s.commentStrLength+1)))}return i}_createAddLineCommentsOperations(e,t){let i=[],n=this._insertSpace?" ":"";for(let r=0,a=e.length;r<a;r++){let a=e[r];!a.ignore&&i.push(o.EditOperation.insert(new s.Position(t+r,a.commentStrOffset+1),a.commentStr+n))}return i}static nextVisibleColumn(e,t,i,n){return i?e+(t-e%t):e+n}static _normalizeInsertionPoint(e,t,i,n){let o,s,r=1073741824;for(let o=0,s=t.length;o<s;o++){if(t[o].ignore)continue;let s=e.getLineContent(i+o),a=0;for(let e=0,i=t[o].commentStrOffset;a<r&&e<i;e++)a=d.nextVisibleColumn(a,n,9===s.charCodeAt(e),1);a<r&&(r=a)}r=Math.floor(r/n)*n;for(let a=0,l=t.length;a<l;a++){if(t[a].ignore)continue;let l=e.getLineContent(i+a),h=0;for(o=0,s=t[a].commentStrOffset;h<r&&o<s;o++)h=d.nextVisibleColumn(h,n,9===l.charCodeAt(o),1);h>r?t[a].commentStrOffset=o-1:t[a].commentStrOffset=o}}}},879906:function(e,t,i){"use strict";i.r(t),i.d(t,{MoveLinesCommand:function(){return m}});var n,o,s=i("266763"),r=i("739379"),a=i("761045"),l=i("861065"),d=i("49286"),h=i("962785"),c=i("78261"),u=i("545477"),g=i("79125");let m=class{constructor(e,t,i,n){this._languageConfigurationService=n,this._selection=e,this._isMovingDown=t,this._autoIndent=i,this._selectionId=null,this._moveEndLineSelectionShrink=!1}getEditOperations(e,t){let i=e.getLineCount();if(this._isMovingDown&&this._selection.endLineNumber===i||!this._isMovingDown&&1===this._selection.startLineNumber){this._selectionId=t.trackSelection(this._selection);return}this._moveEndPositionDown=!1;let n=this._selection;n.startLineNumber<n.endLineNumber&&1===n.endColumn&&(this._moveEndPositionDown=!0,n=n.setEndPosition(n.endLineNumber-1,e.getLineMaxColumn(n.endLineNumber-1)));let{tabSize:o,indentSize:r,insertSpaces:d}=e.getOptions(),h=this.buildIndentConverter(o,r,d),g={tokenization:{getLineTokens:t=>e.tokenization.getLineTokens(t),getLanguageId:()=>e.getLanguageId(),getLanguageIdAtPosition:(t,i)=>e.getLanguageIdAtPosition(t,i)},getLineContent:null};if(n.startLineNumber===n.endLineNumber&&1===e.getLineMaxColumn(n.startLineNumber)){let i=n.startLineNumber,o=this._isMovingDown?i+1:i-1;1===e.getLineMaxColumn(o)?t.addEditOperation(new a.Range(1,1,1,1),null):(t.addEditOperation(new a.Range(i,1,i,1),e.getLineContent(o)),t.addEditOperation(new a.Range(o,1,o,e.getLineMaxColumn(o)),null)),n=new l.Selection(o,1,o,1)}else{let i,r;if(this._isMovingDown){i=n.endLineNumber+1,r=e.getLineContent(i),t.addEditOperation(new a.Range(i-1,e.getLineMaxColumn(i-1),i,e.getLineMaxColumn(i)),null);let l=r;if(this.shouldAutoIndent(e,n)){let m=this.matchEnterRule(e,h,o,i,n.startLineNumber-1);if(null!==m){let t=s.getLeadingWhitespace(e.getLineContent(i)),n=m+c.getSpaceCnt(t,o);l=c.generateIndent(n,o,d)+this.trimLeft(r)}else{g.getLineContent=t=>t===n.startLineNumber?e.getLineContent(i):e.getLineContent(t);let t=(0,u.getGoodIndentForLine)(this._autoIndent,g,e.getLanguageIdAtPosition(i,1),n.startLineNumber,h,this._languageConfigurationService);if(null!==t){let n=s.getLeadingWhitespace(e.getLineContent(i)),a=c.getSpaceCnt(t,o);a!==c.getSpaceCnt(n,o)&&(l=c.generateIndent(a,o,d)+this.trimLeft(r))}}t.addEditOperation(new a.Range(n.startLineNumber,1,n.startLineNumber,1),l+"\n");let p=this.matchEnterRuleMovingDown(e,h,o,n.startLineNumber,i,l);if(null!==p)0!==p&&this.getIndentEditsOfMovingBlock(e,t,n,o,d,p);else{g.getLineContent=t=>t===n.startLineNumber?l:t>=n.startLineNumber+1&&t<=n.endLineNumber+1?e.getLineContent(t-1):e.getLineContent(t);let r=(0,u.getGoodIndentForLine)(this._autoIndent,g,e.getLanguageIdAtPosition(i,1),n.startLineNumber+1,h,this._languageConfigurationService);if(null!==r){let i=s.getLeadingWhitespace(e.getLineContent(n.startLineNumber)),a=c.getSpaceCnt(r,o),l=c.getSpaceCnt(i,o);a!==l&&this.getIndentEditsOfMovingBlock(e,t,n,o,d,a-l)}}}else t.addEditOperation(new a.Range(n.startLineNumber,1,n.startLineNumber,1),l+"\n")}else if(i=n.startLineNumber-1,r=e.getLineContent(i),t.addEditOperation(new a.Range(i,1,i+1,1),null),t.addEditOperation(new a.Range(n.endLineNumber,e.getLineMaxColumn(n.endLineNumber),n.endLineNumber,e.getLineMaxColumn(n.endLineNumber)),"\n"+r),this.shouldAutoIndent(e,n)){g.getLineContent=t=>t===i?e.getLineContent(n.startLineNumber):e.getLineContent(t);let r=this.matchEnterRule(e,h,o,n.startLineNumber,n.startLineNumber-2);if(null!==r)0!==r&&this.getIndentEditsOfMovingBlock(e,t,n,o,d,r);else{let r=(0,u.getGoodIndentForLine)(this._autoIndent,g,e.getLanguageIdAtPosition(n.startLineNumber,1),i,h,this._languageConfigurationService);if(null!==r){let i=s.getLeadingWhitespace(e.getLineContent(n.startLineNumber)),a=c.getSpaceCnt(r,o),l=c.getSpaceCnt(i,o);a!==l&&this.getIndentEditsOfMovingBlock(e,t,n,o,d,a-l)}}}}this._selectionId=t.trackSelection(n)}buildIndentConverter(e,t,i){return{shiftIndent:n=>r.ShiftCommand.shiftIndent(n,n.length+1,e,t,i),unshiftIndent:n=>r.ShiftCommand.unshiftIndent(n,n.length+1,e,t,i)}}parseEnterResult(e,t,i,n,o){if(o){let r=o.indentation;o.indentAction===d.IndentAction.None?r=o.indentation+o.appendText:o.indentAction===d.IndentAction.Indent?r=o.indentation+o.appendText:o.indentAction===d.IndentAction.IndentOutdent?r=o.indentation:o.indentAction===d.IndentAction.Outdent&&(r=t.unshiftIndent(o.indentation)+o.appendText);let a=e.getLineContent(n);if(this.trimLeft(a).indexOf(this.trimLeft(r))>=0){let o=s.getLeadingWhitespace(e.getLineContent(n)),a=s.getLeadingWhitespace(r),l=(0,u.getIndentMetadata)(e,n,this._languageConfigurationService);null!==l&&2&l&&(a=t.unshiftIndent(a));let d=c.getSpaceCnt(a,i);return d-c.getSpaceCnt(o,i)}}return null}matchEnterRuleMovingDown(e,t,i,n,o,r){if(s.lastNonWhitespaceIndex(r)>=0){let s=e.getLineMaxColumn(o),r=(0,g.getEnterAction)(this._autoIndent,e,new a.Range(o,s,o,s),this._languageConfigurationService);return this.parseEnterResult(e,t,i,n,r)}{let o=n-1;for(;o>=1;){let t=e.getLineContent(o);if(s.lastNonWhitespaceIndex(t)>=0)break;o--}if(o<1||n>e.getLineCount())return null;let r=e.getLineMaxColumn(o),l=(0,g.getEnterAction)(this._autoIndent,e,new a.Range(o,r,o,r),this._languageConfigurationService);return this.parseEnterResult(e,t,i,n,l)}}matchEnterRule(e,t,i,n,o,r){let l=o;for(;l>=1;){let t;if(t=l===o&&void 0!==r?r:e.getLineContent(l),s.lastNonWhitespaceIndex(t)>=0)break;l--}if(l<1||n>e.getLineCount())return null;let d=e.getLineMaxColumn(l),h=(0,g.getEnterAction)(this._autoIndent,e,new a.Range(l,d,l,d),this._languageConfigurationService);return this.parseEnterResult(e,t,i,n,h)}trimLeft(e){return e.replace(/^\s+/,"")}shouldAutoIndent(e,t){if(this._autoIndent<4||!e.tokenization.isCheapToTokenize(t.startLineNumber))return!1;let i=e.getLanguageIdAtPosition(t.startLineNumber,1);return i===e.getLanguageIdAtPosition(t.endLineNumber,1)&&null!==this._languageConfigurationService.getLanguageConfiguration(i).indentRulesSupport&&!0}getIndentEditsOfMovingBlock(e,t,i,n,o,r){for(let l=i.startLineNumber;l<=i.endLineNumber;l++){let d=e.getLineContent(l),h=s.getLeadingWhitespace(d),u=c.getSpaceCnt(h,n)+r,g=c.generateIndent(u,n,o);g!==h&&(t.addEditOperation(new a.Range(l,1,l,h.length+1),g),l===i.endLineNumber&&i.endColumn<=h.length+1&&""===g&&(this._moveEndLineSelectionShrink=!0))}}computeCursorState(e,t){let i=t.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(i=i.setEndPosition(i.endLineNumber+1,1)),this._moveEndLineSelectionShrink&&i.startLineNumber<i.endLineNumber&&(i=i.setEndPosition(i.endLineNumber,2)),i}};m=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([(n=3,o=h.ILanguageConfigurationService,function(e,t){o(e,t,3)})],m)},256886:function(e,t,i){"use strict";i.r(t),i.d(t,{SuggestDetailsOverlay:function(){return _},SuggestDetailsWidget:function(){return f},canExpandCompletionItem:function(){return p}});var n,o,s=i("409737"),r=i("842401"),a=i("871628"),l=i("916904"),d=i("670691"),h=i("919527"),c=i("377403"),u=i("259725"),g=i("708339"),m=i("706301");function p(e){return!!e&&!!(e.completion.documentation||e.completion.detail&&e.completion.detail!==e.completion.label)}let f=class{constructor(e,t){this._editor=e,this._onDidClose=new l.Emitter,this.onDidClose=this._onDidClose.event,this._onDidChangeContents=new l.Emitter,this.onDidChangeContents=this._onDidChangeContents.event,this._disposables=new h.DisposableStore,this._renderDisposeable=new h.DisposableStore,this._borderWidth=1,this._size=new s.Dimension(330,0),this.domNode=s.$(".suggest-details"),this.domNode.classList.add("no-docs"),this._markdownRenderer=t.createInstance(c.MarkdownRenderer,{editor:e}),this._body=s.$(".body"),this._scrollbar=new r.DomScrollableElement(this._body,{alwaysConsumeMouseWheel:!0}),s.append(this.domNode,this._scrollbar.getDomNode()),this._disposables.add(this._scrollbar),this._header=s.append(this._body,s.$(".header")),this._close=s.append(this._header,s.$("span"+a.Codicon.close.cssSelector)),this._close.title=g.localize("details.close","Close"),this._type=s.append(this._header,s.$("p.type")),this._docs=s.append(this._body,s.$("p.docs")),this._configureFont(),this._disposables.add(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(46)&&this._configureFont()}))}dispose(){this._disposables.dispose(),this._renderDisposeable.dispose()}_configureFont(){let e=this._editor.getOptions(),t=e.get(46),i=t.getMassagedFontFamily(),n=e.get(109)||t.fontSize,o=e.get(110)||t.lineHeight,s=t.fontWeight,r=`${n}px`,a=`${o}px`;this.domNode.style.fontSize=r,this.domNode.style.lineHeight=`${o/n}`,this.domNode.style.fontWeight=s,this.domNode.style.fontFeatureSettings=t.fontFeatureSettings,this._type.style.fontFamily=i,this._close.style.height=a,this._close.style.width=a}getLayoutInfo(){let e=this._editor.getOption(110)||this._editor.getOption(46).lineHeight,t=this._borderWidth;return{lineHeight:e,borderWidth:t,borderHeight:2*t,verticalPadding:22,horizontalPadding:14}}renderLoading(){this._type.textContent=g.localize("loading","Loading..."),this._docs.textContent="",this.domNode.classList.remove("no-docs","no-type"),this.layout(this.size.width,2*this.getLayoutInfo().lineHeight),this._onDidChangeContents.fire(this)}renderItem(e,t){var i,n;this._renderDisposeable.clear();let{detail:o,documentation:r}=e.completion;if(t){let t="";t+=`score: ${e.score[0]}
|
|
16
|
+
`,constraint:function(e){return!!s.isObject(e)&&(!!(s.isString(e.to)&&(s.isUndefined(e.select)||s.isBoolean(e.select))&&(s.isUndefined(e.by)||s.isString(e.by))&&(s.isUndefined(e.value)||s.isNumber(e.value)))||!1)},schema:{type:"object",required:["to"],properties:{to:{type:"string",enum:["left","right","up","down","prevBlankLine","nextBlankLine","wrappedLineStart","wrappedLineEnd","wrappedLineColumnCenter","wrappedLineFirstNonWhitespaceCharacter","wrappedLineLastNonWhitespaceCharacter","viewPortTop","viewPortCenter","viewPortBottom","viewPortIfOutside"]},by:{type:"string",enum:["line","wrappedLine","character","halfLine"]},value:{type:"number",default:1},select:{type:"boolean",default:!1}}}}]},n.RawDirection={Left:"left",Right:"right",Up:"up",Down:"down",PrevBlankLine:"prevBlankLine",NextBlankLine:"nextBlankLine",WrappedLineStart:"wrappedLineStart",WrappedLineFirstNonWhitespaceCharacter:"wrappedLineFirstNonWhitespaceCharacter",WrappedLineColumnCenter:"wrappedLineColumnCenter",WrappedLineEnd:"wrappedLineEnd",WrappedLineLastNonWhitespaceCharacter:"wrappedLineLastNonWhitespaceCharacter",ViewPortTop:"viewPortTop",ViewPortCenter:"viewPortCenter",ViewPortBottom:"viewPortBottom",ViewPortIfOutside:"viewPortIfOutside"},n.RawUnit={Line:"line",WrappedLine:"wrappedLine",Character:"character",HalfLine:"halfLine"},n.parse=function(e){let t;if(!e.to)return null;switch(e.to){case n.RawDirection.Left:t=0;break;case n.RawDirection.Right:t=1;break;case n.RawDirection.Up:t=2;break;case n.RawDirection.Down:t=3;break;case n.RawDirection.PrevBlankLine:t=4;break;case n.RawDirection.NextBlankLine:t=5;break;case n.RawDirection.WrappedLineStart:t=6;break;case n.RawDirection.WrappedLineFirstNonWhitespaceCharacter:t=7;break;case n.RawDirection.WrappedLineColumnCenter:t=8;break;case n.RawDirection.WrappedLineEnd:t=9;break;case n.RawDirection.WrappedLineLastNonWhitespaceCharacter:t=10;break;case n.RawDirection.ViewPortTop:t=11;break;case n.RawDirection.ViewPortBottom:t=13;break;case n.RawDirection.ViewPortCenter:t=12;break;case n.RawDirection.ViewPortIfOutside:t=14;break;default:return null}let i=0;switch(e.by){case n.RawUnit.Line:i=1;break;case n.RawUnit.WrappedLine:i=2;break;case n.RawUnit.Character:i=3;break;case n.RawUnit.HalfLine:i=4}return{direction:t,unit:i,select:!!e.select,value:e.value||1}}},599599:function(e,t,i){"use strict";i.r(t),i.d(t,{ModelDecorationInjectedTextOptions:function(){return K},ModelDecorationOptions:function(){return U},TextModel:function(){return A}});var n=i("603868"),o=i("835271"),s=i("161111"),r=i("916904"),a=i("919527"),l=i("266763"),d=i("938505"),h=i("311211"),c=i("165972"),u=i("457938"),g=i("761045"),m=i("861065"),p=i("255062"),f=i("810870"),_=i("962785"),v=i("63681"),C=i("426148"),b=i("276345"),S=i("674459"),w=i("2349"),D=i("191137"),y=i("869723"),L=i("881695"),I=i("917318"),E=i("783968"),x=i("662521"),N=i("486043"),M=i("852365"),T=function(e,t){return function(i,n){t(i,n,e)}};function O(e,t){let i;return(i="string"==typeof e?function(e){let t=new I.PieceTreeTextBufferBuilder;return t.acceptChunk(e),t.finish()}(e):v.isITextSnapshot(e)?function(e){let t;let i=new I.PieceTreeTextBufferBuilder;for(;"string"==typeof(t=e.read());)i.acceptChunk(t);return i.finish()}(e):e).create(t)}let k=0;class R{constructor(e){this._source=e,this._eos=!1}read(){if(this._eos)return null;let e=[],t=0,i=0;for(;;){let n=this._source.read();if(null===n){if(this._eos=!0,0===t)return null;return e.join("")}if(n.length>0&&(e[t++]=n,i+=n.length),i>=65536)return e.join("")}}}let P=()=>{throw Error("Invalid change accessor")},A=class e extends a.Disposable{constructor(t,i,n,o=null,s,a,h){super(),this._undoRedoService=s,this._languageService=a,this._languageConfigurationService=h,this._onWillDispose=this._register(new r.Emitter),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new q(e=>this.handleBeforeFireDecorationsChangedEvent(e))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeOptions=this._register(new r.Emitter),this.onDidChangeOptions=this._onDidChangeOptions.event,this._onDidChangeAttached=this._register(new r.Emitter),this.onDidChangeAttached=this._onDidChangeAttached.event,this._onDidChangeInjectedText=this._register(new r.Emitter),this._eventEmitter=this._register(new G),this._deltaDecorationCallCnt=0,k++,this.id="$model"+k,this.isForSimpleWidget=n.isForSimpleWidget,null==o?this._associatedResource=d.URI.parse("inmemory://model/"+k):this._associatedResource=o,this._attachedEditorCount=0;let{textBuffer:c,disposable:u}=O(t,n.defaultEOL);this._buffer=c,this._bufferDisposable=u,this._options=e.resolveOptions(this._buffer,n),this._bracketPairs=this._register(new C.BracketPairsTextModelPart(this,this._languageConfigurationService)),this._guidesTextModelPart=this._register(new w.GuidesTextModelPart(this,this._languageConfigurationService)),this._decorationProvider=this._register(new b.ColorizedBracketPairsDecorationProvider(this)),this._tokenizationTextModelPart=new x.TokenizationTextModelPart(this._languageService,this._languageConfigurationService,this,this._bracketPairs,i);let m=this._buffer.getLineCount(),p=this._buffer.getValueLengthInRange(new g.Range(1,1,m,this._buffer.getLineLength(m)+1),0);n.largeFileOptimizations?this._isTooLargeForTokenization=p>e.LARGE_FILE_SIZE_THRESHOLD||m>e.LARGE_FILE_LINE_COUNT_THRESHOLD:this._isTooLargeForTokenization=!1,this._isTooLargeForSyncing=p>e.MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this.__isDisposing=!1,this._instanceId=l.singleLetterHash(k),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new V,this._commandManager=new S.EditStack(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()}))}static resolveOptions(e,t){if(t.detectIndentation){let i=(0,D.guessIndentation)(e,t.tabSize,t.insertSpaces);return new v.TextModelResolvedOptions({tabSize:i.tabSize,indentSize:i.tabSize,insertSpaces:i.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}return new v.TextModelResolvedOptions({tabSize:t.tabSize,indentSize:t.indentSize,insertSpaces:t.insertSpaces,trimAutoWhitespace:t.trimAutoWhitespace,defaultEOL:t.defaultEOL,bracketPairColorizationOptions:t.bracketPairColorizationOptions})}get onDidChangeLanguage(){return this._tokenizationTextModelPart.onDidChangeLanguage}get onDidChangeLanguageConfiguration(){return this._tokenizationTextModelPart.onDidChangeLanguageConfiguration}get onDidChangeTokens(){return this._tokenizationTextModelPart.onDidChangeTokens}onDidChangeContent(e){return this._eventEmitter.slowEvent(t=>e(t.contentChangedEvent))}onDidChangeContentOrInjectedText(e){return(0,a.combinedDisposable)(this._eventEmitter.fastEvent(t=>e(t)),this._onDidChangeInjectedText.event(t=>e(t)))}_isDisposing(){return this.__isDisposing}get tokenization(){return this._tokenizationTextModelPart}get bracketPairs(){return this._bracketPairs}get guides(){return this._guidesTextModelPart}dispose(){this.__isDisposing=!0,this._onWillDispose.fire(),this._tokenizationTextModelPart.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this.__isDisposing=!1;let e=new L.PieceTreeTextBuffer([],"","\n",!1,!1,!0,!0);e.dispose(),this._buffer=e,this._bufferDisposable=a.Disposable.None}_assertNotDisposed(){if(this._isDisposed)throw Error("Model is disposed!")}_emitContentChangedEvent(e,t){!this.__isDisposing&&(this._tokenizationTextModelPart.handleDidChangeContent(t),this._bracketPairs.handleDidChangeContent(t),this._eventEmitter.fire(new N.InternalModelContentChangeEvent(e,t)))}setValue(e){if(this._assertNotDisposed(),null===e)return;let{textBuffer:t,disposable:i}=O(e,this._options.defaultEOL);this._setValueFromTextBuffer(t,i)}_createContentChanged2(e,t,i,n,o,s,r){return{changes:[{range:e,rangeOffset:t,rangeLength:i,text:n}],eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:o,isRedoing:s,isFlush:r}}_setValueFromTextBuffer(e,t){this._assertNotDisposed();let i=this.getFullModelRange(),n=this.getValueLengthInRange(i),o=this.getLineCount(),s=this.getLineMaxColumn(o);this._buffer=e,this._bufferDisposable.dispose(),this._bufferDisposable=t,this._increaseVersionId(),this._tokenizationTextModelPart.flush(),this._decorations=Object.create(null),this._decorationsTree=new V,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new N.ModelRawContentChangedEvent([new N.ModelRawFlush],this._versionId,!1,!1),this._createContentChanged2(new g.Range(1,1,o,s),0,n,this.getValue(),!1,!1,!0))}setEOL(e){this._assertNotDisposed();let t=1===e?"\r\n":"\n";if(this._buffer.getEOL()===t)return;let i=this.getFullModelRange(),n=this.getValueLengthInRange(i),o=this.getLineCount(),s=this.getLineMaxColumn(o);this._onBeforeEOLChange(),this._buffer.setEOL(t),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new N.ModelRawContentChangedEvent([new N.ModelRawEOLChanged],this._versionId,!1,!1),this._createContentChanged2(new g.Range(1,1,o,s),0,n,this.getValue(),!1,!1,!1))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){let e=this.getVersionId(),t=this._decorationsTree.collectNodesPostOrder();for(let i=0,n=t.length;i<n;i++){let n=t[i],o=n.range,s=n.cachedAbsoluteStart-n.start,r=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),a=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);n.cachedAbsoluteStart=r,n.cachedAbsoluteEnd=a,n.cachedVersionId=e,n.start=r-s,n.end=a-s,(0,y.recomputeMaxEnd)(n)}}onBeforeAttached(){this._attachedEditorCount++,1===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0))}onBeforeDetached(){this._attachedEditorCount--,0===this._attachedEditorCount&&(this._tokenizationTextModelPart.handleDidChangeAttached(),this._onDidChangeAttached.fire(void 0))}isAttachedToEditor(){return this._attachedEditorCount>0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let e=0,t=0,i=this._buffer.getLineCount();for(let n=1;n<=i;n++){let i=this._buffer.getLineLength(n);i>=1e4?t+=i:e+=i}return t>e}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(e){this._assertNotDisposed();let t=void 0!==e.tabSize?e.tabSize:this._options.tabSize,i=void 0!==e.indentSize?e.indentSize:this._options.indentSize,n=void 0!==e.insertSpaces?e.insertSpaces:this._options.insertSpaces,o=void 0!==e.trimAutoWhitespace?e.trimAutoWhitespace:this._options.trimAutoWhitespace,s=void 0!==e.bracketColorizationOptions?e.bracketColorizationOptions:this._options.bracketPairColorizationOptions,r=new v.TextModelResolvedOptions({tabSize:t,indentSize:i,insertSpaces:n,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:o,bracketPairColorizationOptions:s});if(this._options.equals(r))return;let a=this._options.createChangeEvent(r);this._options=r,this._bracketPairs.handleDidChangeOptions(a),this._decorationProvider.handleDidChangeOptions(a),this._onDidChangeOptions.fire(a)}detectIndentation(e,t){this._assertNotDisposed();let i=(0,D.guessIndentation)(this._buffer,t,e);this.updateOptions({insertSpaces:i.insertSpaces,tabSize:i.tabSize,indentSize:i.tabSize})}normalizeIndentation(e){return this._assertNotDisposed(),(0,c.normalizeIndentation)(e,this._options.indentSize,this._options.insertSpaces)}getVersionId(){return this._assertNotDisposed(),this._versionId}mightContainRTL(){return this._buffer.mightContainRTL()}mightContainUnusualLineTerminators(){return this._buffer.mightContainUnusualLineTerminators()}removeUnusualLineTerminators(e=null){let t=this.findMatches(l.UNUSUAL_LINE_TERMINATORS.source,!1,!0,!1,null,!1,1073741824);this._buffer.resetMightContainUnusualLineTerminators(),this.pushEditOperations(e,t.map(e=>({range:e.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(e){this._assertNotDisposed();let t=this._validatePosition(e.lineNumber,e.column,0);return this._buffer.getOffsetAt(t.lineNumber,t.column)}getPositionAt(e){this._assertNotDisposed();let t=Math.min(this._buffer.getLength(),Math.max(0,e));return this._buffer.getPositionAt(t)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(e){this._versionId=e}_overwriteAlternativeVersionId(e){this._alternativeVersionId=e}_overwriteInitialUndoRedoSnapshot(e){this._initialUndoRedoSnapshot=e}getValue(e,t=!1){this._assertNotDisposed();let i=this.getFullModelRange(),n=this.getValueInRange(i,e);return t?this._buffer.getBOM()+n:n}createSnapshot(e=!1){return new R(this._buffer.createSnapshot(e))}getValueLength(e,t=!1){this._assertNotDisposed();let i=this.getFullModelRange(),n=this.getValueLengthInRange(i,e);return t?this._buffer.getBOM().length+n:n}getValueInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(e),t)}getValueLengthInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(e),t)}getCharacterCountInRange(e,t=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(e),t)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw Error("Illegal value for lineNumber");return this._buffer.getLineContent(e)}getLineLength(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw Error("Illegal value for lineNumber");return this._buffer.getLineLength(e)}getLinesContent(){return this._assertNotDisposed(),this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),"\n"===this._buffer.getEOL()?0:1}getLineMinColumn(e){return this._assertNotDisposed(),1}getLineMaxColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw Error("Illegal value for lineNumber");return this._buffer.getLineLength(e)+1}getLineFirstNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw Error("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(e)}getLineLastNonWhitespaceColumn(e){if(this._assertNotDisposed(),e<1||e>this.getLineCount())throw Error("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(e)}_validateRangeRelaxedNoAllocations(e){let t=this._buffer.getLineCount(),i=e.startLineNumber,n=e.startColumn,o=Math.floor("number"!=typeof i||isNaN(i)?1:i),s=Math.floor("number"!=typeof n||isNaN(n)?1:n);if(o<1)o=1,s=1;else if(o>t)o=t,s=this.getLineMaxColumn(o);else if(s<=1)s=1;else{let e=this.getLineMaxColumn(o);s>=e&&(s=e)}let r=e.endLineNumber,a=e.endColumn,l=Math.floor("number"!=typeof r||isNaN(r)?1:r),d=Math.floor("number"!=typeof a||isNaN(a)?1:a);if(l<1)l=1,d=1;else if(l>t)l=t,d=this.getLineMaxColumn(l);else if(d<=1)d=1;else{let e=this.getLineMaxColumn(l);d>=e&&(d=e)}return i===o&&n===s&&r===l&&a===d&&e instanceof g.Range&&!(e instanceof m.Selection)?e:new g.Range(o,s,l,d)}_isValidPosition(e,t,i){if("number"!=typeof e||"number"!=typeof t||isNaN(e)||isNaN(t)||e<1||t<1||(0|e)!==e||(0|t)!==t||e>this._buffer.getLineCount())return!1;if(1===t)return!0;if(t>this.getLineMaxColumn(e))return!1;if(1===i){let i=this._buffer.getLineCharCode(e,t-2);if(l.isHighSurrogate(i))return!1}return!0}_validatePosition(e,t,i){let n=Math.floor("number"!=typeof e||isNaN(e)?1:e),o=Math.floor("number"!=typeof t||isNaN(t)?1:t),s=this._buffer.getLineCount();if(n<1)return new u.Position(1,1);if(n>s)return new u.Position(s,this.getLineMaxColumn(s));if(o<=1)return new u.Position(n,1);let r=this.getLineMaxColumn(n);if(o>=r)return new u.Position(n,r);if(1===i){let e=this._buffer.getLineCharCode(n,o-2);if(l.isHighSurrogate(e))return new u.Position(n,o-1)}return new u.Position(n,o)}validatePosition(e){return(this._assertNotDisposed(),e instanceof u.Position&&this._isValidPosition(e.lineNumber,e.column,1))?e:this._validatePosition(e.lineNumber,e.column,1)}_isValidRange(e,t){let i=e.startLineNumber,n=e.startColumn,o=e.endLineNumber,s=e.endColumn;if(!this._isValidPosition(i,n,0)||!this._isValidPosition(o,s,0))return!1;if(1===t){let e=n>1?this._buffer.getLineCharCode(i,n-2):0,t=s>1&&s<=this._buffer.getLineLength(o)?this._buffer.getLineCharCode(o,s-2):0,r=l.isHighSurrogate(e),a=l.isHighSurrogate(t);return!r&&!a&&!0}return!0}validateRange(e){if(this._assertNotDisposed(),e instanceof g.Range&&!(e instanceof m.Selection)&&this._isValidRange(e,1))return e;let t=this._validatePosition(e.startLineNumber,e.startColumn,0),i=this._validatePosition(e.endLineNumber,e.endColumn,0),n=t.lineNumber,o=t.column,s=i.lineNumber,r=i.column;{let e=o>1?this._buffer.getLineCharCode(n,o-2):0,t=r>1&&r<=this._buffer.getLineLength(s)?this._buffer.getLineCharCode(s,r-2):0,i=l.isHighSurrogate(e),a=l.isHighSurrogate(t);return i||a?n===s&&o===r?new g.Range(n,o-1,s,r-1):i&&a?new g.Range(n,o-1,s,r+1):i?new g.Range(n,o-1,s,r):new g.Range(n,o,s,r+1):new g.Range(n,o,s,r)}}modifyPosition(e,t){this._assertNotDisposed();let i=this.getOffsetAt(e)+t;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,i)))}getFullModelRange(){this._assertNotDisposed();let e=this.getLineCount();return new g.Range(1,1,e,this.getLineMaxColumn(e))}findMatchesLineByLine(e,t,i,n){return this._buffer.findMatchesLineByLine(e,t,i,n)}findMatches(e,t,i,n,o,s,r=999){let a;this._assertNotDisposed();let l=null;null!==t&&(!Array.isArray(t)&&(t=[t]),t.every(e=>g.Range.isIRange(e))&&(l=t.map(e=>this.validateRange(e)))),null===l&&(l=[this.getFullModelRange()]),l=l.sort((e,t)=>e.startLineNumber-t.startLineNumber||e.startColumn-t.startColumn);let d=[];if(d.push(l.reduce((e,t)=>g.Range.areIntersecting(e,t)?e.plusRange(t):(d.push(e),t))),!i&&0>e.indexOf("\n")){let t=new E.SearchParams(e,i,n,o).parseSearchRequest();if(!t)return[];a=e=>this.findMatchesLineByLine(e,t,s,r)}else a=t=>E.TextModelSearch.findMatches(this,new E.SearchParams(e,i,n,o),t,s,r);return d.map(a).reduce((e,t)=>e.concat(t),[])}findNextMatch(e,t,i,n,o,s){this._assertNotDisposed();let r=this.validatePosition(t);if(!i&&0>e.indexOf("\n")){let t=new E.SearchParams(e,i,n,o).parseSearchRequest();if(!t)return null;let a=this.getLineCount(),l=new g.Range(r.lineNumber,r.column,a,this.getLineMaxColumn(a)),d=this.findMatchesLineByLine(l,t,s,1);return(E.TextModelSearch.findNextMatch(this,new E.SearchParams(e,i,n,o),r,s),d.length>0)?d[0]:(l=new g.Range(1,1,r.lineNumber,this.getLineMaxColumn(r.lineNumber)),(d=this.findMatchesLineByLine(l,t,s,1)).length>0)?d[0]:null}return E.TextModelSearch.findNextMatch(this,new E.SearchParams(e,i,n,o),r,s)}findPreviousMatch(e,t,i,n,o,s){this._assertNotDisposed();let r=this.validatePosition(t);return E.TextModelSearch.findPreviousMatch(this,new E.SearchParams(e,i,n,o),r,s)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(e){if(("\n"===this.getEOL()?0:1)!==e)try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(e)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(e){return e instanceof v.ValidAnnotatedEditOperation?e:new v.ValidAnnotatedEditOperation(e.identifier||null,this.validateRange(e.range),e.text,e.forceMoveMarkers||!1,e.isAutoWhitespaceEdit||!1,e._isTracked||!1)}_validateEditOperations(e){let t=[];for(let i=0,n=e.length;i<n;i++)t[i]=this._validateEditOperation(e[i]);return t}pushEditOperations(e,t,i){try{return this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._pushEditOperations(e,this._validateEditOperations(t),i)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_pushEditOperations(e,t,i){if(this._options.trimAutoWhitespace&&this._trimAutoWhitespaceLines){let i=t.map(e=>({range:this.validateRange(e.range),text:e.text})),n=!0;if(e)for(let t=0,o=e.length;t<o;t++){let o=e[t],s=!1;for(let e=0,t=i.length;e<t;e++){let t=i[e].range,n=t.startLineNumber>o.endLineNumber,r=o.startLineNumber>t.endLineNumber;if(!n&&!r){s=!0;break}}if(!s){n=!1;break}}if(n)for(let e=0,n=this._trimAutoWhitespaceLines.length;e<n;e++){let n=this._trimAutoWhitespaceLines[e],o=this.getLineMaxColumn(n),s=!0;for(let e=0,t=i.length;e<t;e++){let t=i[e].range,r=i[e].text;if(!(n<t.startLineNumber||n>t.endLineNumber||n===t.startLineNumber&&t.startColumn===o&&t.isEmpty()&&r&&r.length>0&&"\n"===r.charAt(0))){if(!(n===t.startLineNumber&&1===t.startColumn&&t.isEmpty())||!r||!(r.length>0)||"\n"!==r.charAt(r.length-1)){s=!1;break}}}if(s){let e=new g.Range(n,1,n,o);t.push(new v.ValidAnnotatedEditOperation(null,e,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return null===this._initialUndoRedoSnapshot&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(e,t,i)}_applyUndo(e,t,i,n){let o=e.map(e=>{let t=this.getPositionAt(e.newPosition),i=this.getPositionAt(e.newEnd);return{range:new g.Range(t.lineNumber,t.column,i.lineNumber,i.column),text:e.oldText}});this._applyUndoRedoEdits(o,t,!0,!1,i,n)}_applyRedo(e,t,i,n){let o=e.map(e=>{let t=this.getPositionAt(e.oldPosition),i=this.getPositionAt(e.oldEnd);return{range:new g.Range(t.lineNumber,t.column,i.lineNumber,i.column),text:e.newText}});this._applyUndoRedoEdits(o,t,!1,!0,i,n)}_applyUndoRedoEdits(e,t,i,n,o,s){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=i,this._isRedoing=n,this.applyEdits(e,!1),this.setEOL(t),this._overwriteAlternativeVersionId(o)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(s),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(e,t=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();let i=this._validateEditOperations(e);return this._doApplyEdits(i,t)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(e,t){let i=this._buffer.getLineCount(),o=this._buffer.applyEdits(e,this._options.trimAutoWhitespace,t),s=this._buffer.getLineCount(),r=o.changes;if(this._trimAutoWhitespaceLines=o.trimAutoWhitespaceLineNumbers,0!==r.length){for(let e=0,t=r.length;e<t;e++){let t=r[e],[i,n,o]=(0,h.countEOL)(t.text);this._tokenizationTextModelPart.acceptEdit(t.range,t.text,i,n,o),this._decorationsTree.acceptReplace(t.rangeOffset,t.rangeLength,t.text.length,t.forceMoveMarkers)}let e=[];this._increaseVersionId();let t=i;for(let i=0,o=r.length;i<o;i++){let o=r[i],[a]=(0,h.countEOL)(o.text);this._onDidChangeDecorations.fire();let l=o.range.startLineNumber,d=o.range.endLineNumber,c=d-l,g=Math.min(c,a),m=a-c,p=s-t-m+l,f=p+a,_=this._decorationsTree.getInjectedTextInInterval(this,this.getOffsetAt(new u.Position(p,1)),this.getOffsetAt(new u.Position(f,this.getLineMaxColumn(f))),0),v=N.LineInjectedText.fromDecorations(_),C=new n.ArrayQueue(v);for(let t=g;t>=0;t--){let i=l+t,n=p+t;C.takeFromEndWhile(e=>e.lineNumber>n);let o=C.takeFromEndWhile(e=>e.lineNumber===n);e.push(new N.ModelRawLineChanged(i,this.getLineContent(n),o))}if(g<c){let t=l+g;e.push(new N.ModelRawLinesDeleted(t+1,d))}if(g<a){let i=new n.ArrayQueue(v),o=l+g,r=a-g,d=s-t-r+o+1,h=[],c=[];for(let e=0;e<r;e++){let t=d+e;c[e]=this.getLineContent(t),i.takeWhile(e=>e.lineNumber<t),h[e]=i.takeWhile(e=>e.lineNumber===t)}e.push(new N.ModelRawLinesInserted(o+1,l+a,c,h))}t+=m}this._emitContentChangedEvent(new N.ModelRawContentChangedEvent(e,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:r,eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return null===o.reverseEdits?void 0:o.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(e){if(null===e||0===e.size)return;let t=Array.from(e).map(e=>new N.ModelRawLineChanged(e,this.getLineContent(e),this._getInjectedTextInLine(e)));this._onDidChangeInjectedText.fire(new N.ModelInjectedTextChangedEvent(t))}changeDecorations(e,t=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(t,e)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(e,t){let i={addDecoration:(t,i)=>this._deltaDecorationsImpl(e,[],[{range:t,options:i}])[0],changeDecoration:(e,t)=>{this._changeDecorationImpl(e,t)},changeDecorationOptions:(e,t)=>{this._changeDecorationOptionsImpl(e,Q(t))},removeDecoration:t=>{this._deltaDecorationsImpl(e,[t],[])},deltaDecorations:(t,i)=>0===t.length&&0===i.length?[]:this._deltaDecorationsImpl(e,t,i)},n=null;try{n=t(i)}catch(e){(0,s.onUnexpectedError)(e)}return i.addDecoration=P,i.changeDecoration=P,i.changeDecorationOptions=P,i.removeDecoration=P,i.deltaDecorations=P,n}deltaDecorations(e,t,i=0){if(this._assertNotDisposed(),!e&&(e=[]),0===e.length&&0===t.length)return[];try{return this._deltaDecorationCallCnt++,this._deltaDecorationCallCnt>1&&(console.warn("Invoking deltaDecorations recursively could lead to leaking decorations."),(0,s.onUnexpectedError)(Error("Invoking deltaDecorations recursively could lead to leaking decorations."))),this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(i,e,t)}finally{this._onDidChangeDecorations.endDeferredEmit(),this._deltaDecorationCallCnt--}}_getTrackedRange(e){return this.getDecorationRange(e)}_setTrackedRange(e,t,i){let n=e?this._decorations[e]:null;if(!n)return t?this._deltaDecorationsImpl(0,[],[{range:t,options:$[i]}])[0]:null;if(!t)return this._decorationsTree.delete(n),delete this._decorations[n.id],null;let o=this._validateRangeRelaxedNoAllocations(t),s=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),r=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);return this._decorationsTree.delete(n),n.reset(this.getVersionId(),s,r,o),n.setOptions($[i]),this._decorationsTree.insert(n),n.id}removeAllDecorationsWithOwnerId(e){if(this._isDisposed)return;let t=this._decorationsTree.collectNodesFromOwner(e);for(let e=0,i=t.length;e<i;e++){let i=t[e];this._decorationsTree.delete(i),delete this._decorations[i.id]}}getDecorationOptions(e){let t=this._decorations[e];return t?t.options:null}getDecorationRange(e){let t=this._decorations[e];return t?this._decorationsTree.getNodeRange(this,t):null}getLineDecorations(e,t=0,i=!1){return e<1||e>this.getLineCount()?[]:this.getLinesDecorations(e,e,t,i)}getLinesDecorations(e,t,i=0,o=!1){let s=this.getLineCount(),r=Math.min(s,Math.max(1,t)),a=this.getLineMaxColumn(r),l=new g.Range(Math.min(s,Math.max(1,e)),1,r,a),d=this._getDecorationsInRange(l,i,o);return(0,n.pushMany)(d,this._decorationProvider.getDecorationsInRange(l,i,o)),d}getDecorationsInRange(e,t=0,i=!1){let o=this.validateRange(e),s=this._getDecorationsInRange(o,t,i);return(0,n.pushMany)(s,this._decorationProvider.getDecorationsInRange(o,t,i)),s}getOverviewRulerDecorations(e=0,t=!1){return this._decorationsTree.getAll(this,e,t,!0)}getInjectedTextDecorations(e=0){return this._decorationsTree.getAllInjectedText(this,e)}_getInjectedTextInLine(e){let t=this._buffer.getOffsetAt(e,1),i=t+this._buffer.getLineLength(e),n=this._decorationsTree.getInjectedTextInInterval(this,t,i,0);return N.LineInjectedText.fromDecorations(n).filter(t=>t.lineNumber===e)}getAllDecorations(e=0,t=!1){let i=this._decorationsTree.getAll(this,e,t,!1);return i=i.concat(this._decorationProvider.getAllDecorations(e,t))}_getDecorationsInRange(e,t,i){let n=this._buffer.getOffsetAt(e.startLineNumber,e.startColumn),o=this._buffer.getOffsetAt(e.endLineNumber,e.endColumn);return this._decorationsTree.getAllInInterval(this,n,o,t,i)}getRangeAt(e,t){return this._buffer.getRangeAt(e,t-e)}_changeDecorationImpl(e,t){let i=this._decorations[e];if(!i)return;if(i.options.after){let t=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(t.endLineNumber)}if(i.options.before){let t=this.getDecorationRange(e);this._onDidChangeDecorations.recordLineAffectedByInjectedText(t.startLineNumber)}let n=this._validateRangeRelaxedNoAllocations(t),o=this._buffer.getOffsetAt(n.startLineNumber,n.startColumn),s=this._buffer.getOffsetAt(n.endLineNumber,n.endColumn);this._decorationsTree.delete(i),i.reset(this.getVersionId(),o,s,n),this._decorationsTree.insert(i),this._onDidChangeDecorations.checkAffectedAndFire(i.options),i.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.endLineNumber),i.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(n.startLineNumber)}_changeDecorationOptionsImpl(e,t){let i=this._decorations[e];if(!i)return;let n=!!i.options.overviewRuler&&!!i.options.overviewRuler.color,o=!!t.overviewRuler&&!!t.overviewRuler.color;if(this._onDidChangeDecorations.checkAffectedAndFire(i.options),this._onDidChangeDecorations.checkAffectedAndFire(t),i.options.after||t.after){let e=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber)}if(i.options.before||t.before){let e=this._decorationsTree.getNodeRange(this,i);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber)}n!==o?(this._decorationsTree.delete(i),i.setOptions(t),this._decorationsTree.insert(i)):i.setOptions(t)}_deltaDecorationsImpl(e,t,i){let n=this.getVersionId(),o=t.length,s=0,r=i.length,a=0,l=Array(r);for(;s<o||a<r;){let d=null;if(s<o){do d=this._decorations[t[s++]];while(!d&&s<o);if(d){if(d.options.after){let e=this._decorationsTree.getNodeRange(this,d);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.endLineNumber)}if(d.options.before){let e=this._decorationsTree.getNodeRange(this,d);this._onDidChangeDecorations.recordLineAffectedByInjectedText(e.startLineNumber)}this._decorationsTree.delete(d),this._onDidChangeDecorations.checkAffectedAndFire(d.options)}}if(a<r){if(!d){let e=++this._lastDecorationId,t=`${this._instanceId};${e}`;d=new y.IntervalNode(t,0,0),this._decorations[t]=d}let t=i[a],o=this._validateRangeRelaxedNoAllocations(t.range),s=Q(t.options),r=this._buffer.getOffsetAt(o.startLineNumber,o.startColumn),h=this._buffer.getOffsetAt(o.endLineNumber,o.endColumn);d.ownerId=e,d.reset(n,r,h,o),d.setOptions(s),d.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(o.endLineNumber),d.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(o.startLineNumber),this._onDidChangeDecorations.checkAffectedAndFire(s),this._decorationsTree.insert(d),l[a]=d.id,a++}else d&&delete this._decorations[d.id]}return l}getLanguageId(){return this.tokenization.getLanguageId()}setMode(e){this.tokenization.setLanguageId(e)}getLanguageIdAtPosition(e,t){return this.tokenization.getLanguageIdAtPosition(e,t)}getWordAtPosition(e){return this._tokenizationTextModelPart.getWordAtPosition(e)}getWordUntilPosition(e){return this._tokenizationTextModelPart.getWordUntilPosition(e)}normalizePosition(e,t){return e}getLineIndentColumn(e){return function(e){let t=0;for(let i of e)if(" "===i||" "===i)t++;else break;return t}(this.getLineContent(e))+1}};A.MODEL_SYNC_LIMIT=52428800,A.LARGE_FILE_SIZE_THRESHOLD=20971520,A.LARGE_FILE_LINE_COUNT_THRESHOLD=3e5,A.DEFAULT_CREATION_OPTIONS={isForSimpleWidget:!1,tabSize:p.EDITOR_MODEL_DEFAULTS.tabSize,indentSize:p.EDITOR_MODEL_DEFAULTS.indentSize,insertSpaces:p.EDITOR_MODEL_DEFAULTS.insertSpaces,detectIndentation:!1,defaultEOL:1,trimAutoWhitespace:p.EDITOR_MODEL_DEFAULTS.trimAutoWhitespace,largeFileOptimizations:p.EDITOR_MODEL_DEFAULTS.largeFileOptimizations,bracketPairColorizationOptions:p.EDITOR_MODEL_DEFAULTS.bracketPairColorizationOptions},A=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([T(4,M.IUndoRedoService),T(5,f.ILanguageService),T(6,_.ILanguageConfigurationService)],A);function z(e){return!!e.options.overviewRuler&&!!e.options.overviewRuler.color}function F(e){return!!e.options.after||!!e.options.before}class V{constructor(){this._decorationsTree0=new y.IntervalTree,this._decorationsTree1=new y.IntervalTree,this._injectedTextDecorationsTree=new y.IntervalTree}ensureAllNodesHaveRanges(e){this.getAll(e,0,!1,!1)}_ensureNodesHaveRanges(e,t){for(let i of t)null===i.range&&(i.range=e.getRangeAt(i.cachedAbsoluteStart,i.cachedAbsoluteEnd));return t}getAllInInterval(e,t,i,n,o){let s=e.getVersionId(),r=this._intervalSearch(t,i,n,o,s);return this._ensureNodesHaveRanges(e,r)}_intervalSearch(e,t,i,n,o){let s=this._decorationsTree0.intervalSearch(e,t,i,n,o),r=this._decorationsTree1.intervalSearch(e,t,i,n,o),a=this._injectedTextDecorationsTree.intervalSearch(e,t,i,n,o);return s.concat(r).concat(a)}getInjectedTextInInterval(e,t,i,n){let o=e.getVersionId(),s=this._injectedTextDecorationsTree.intervalSearch(t,i,n,!1,o);return this._ensureNodesHaveRanges(e,s).filter(e=>e.options.showIfCollapsed||!e.range.isEmpty())}getAllInjectedText(e,t){let i=e.getVersionId(),n=this._injectedTextDecorationsTree.search(t,!1,i);return this._ensureNodesHaveRanges(e,n).filter(e=>e.options.showIfCollapsed||!e.range.isEmpty())}getAll(e,t,i,n){let o=e.getVersionId(),s=this._search(t,i,n,o);return this._ensureNodesHaveRanges(e,s)}_search(e,t,i,n){if(i)return this._decorationsTree1.search(e,t,n);{let i=this._decorationsTree0.search(e,t,n),o=this._decorationsTree1.search(e,t,n),s=this._injectedTextDecorationsTree.search(e,t,n);return i.concat(o).concat(s)}}collectNodesFromOwner(e){let t=this._decorationsTree0.collectNodesFromOwner(e),i=this._decorationsTree1.collectNodesFromOwner(e),n=this._injectedTextDecorationsTree.collectNodesFromOwner(e);return t.concat(i).concat(n)}collectNodesPostOrder(){let e=this._decorationsTree0.collectNodesPostOrder(),t=this._decorationsTree1.collectNodesPostOrder(),i=this._injectedTextDecorationsTree.collectNodesPostOrder();return e.concat(t).concat(i)}insert(e){F(e)?this._injectedTextDecorationsTree.insert(e):z(e)?this._decorationsTree1.insert(e):this._decorationsTree0.insert(e)}delete(e){F(e)?this._injectedTextDecorationsTree.delete(e):z(e)?this._decorationsTree1.delete(e):this._decorationsTree0.delete(e)}getNodeRange(e,t){let i=e.getVersionId();return t.cachedVersionId!==i&&this._resolveNode(t,i),null===t.range&&(t.range=e.getRangeAt(t.cachedAbsoluteStart,t.cachedAbsoluteEnd)),t.range}_resolveNode(e,t){F(e)?this._injectedTextDecorationsTree.resolveNode(e,t):z(e)?this._decorationsTree1.resolveNode(e,t):this._decorationsTree0.resolveNode(e,t)}acceptReplace(e,t,i,n){this._decorationsTree0.acceptReplace(e,t,i,n),this._decorationsTree1.acceptReplace(e,t,i,n),this._injectedTextDecorationsTree.acceptReplace(e,t,i,n)}}function W(e){return e.replace(/[^a-z0-9\-_]/gi," ")}class H{constructor(e){this.color=e.color||"",this.darkColor=e.darkColor||""}}class B extends H{constructor(e){super(e),this._resolvedColor=null,this.position="number"==typeof e.position?e.position:v.OverviewRulerLane.Center}getColor(e){return!this._resolvedColor&&("light"!==e.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(e,t){if("string"==typeof e)return e;let i=e?t.getColor(e.id):null;return i?i.toString():""}}class j extends H{constructor(e){super(e),this.position=e.position}getColor(e){return!this._resolvedColor&&("light"!==e.type&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,e):this._resolvedColor=this._resolveColor(this.color,e)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(e,t){return"string"==typeof e?o.Color.fromHex(e):t.getColor(e.id)}}class K{constructor(e){this.content=e.content||"",this.inlineClassName=e.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.attachedData=e.attachedData||null,this.cursorStops=e.cursorStops||null}static from(e){return e instanceof K?e:new K(e)}}class U{constructor(e){var t,i;this.description=e.description,this.blockClassName=e.blockClassName?W(e.blockClassName):null,this.stickiness=e.stickiness||0,this.zIndex=e.zIndex||0,this.className=e.className?W(e.className):null,this.hoverMessage=e.hoverMessage||null,this.glyphMarginHoverMessage=e.glyphMarginHoverMessage||null,this.isWholeLine=e.isWholeLine||!1,this.showIfCollapsed=e.showIfCollapsed||!1,this.collapseOnReplaceEdit=e.collapseOnReplaceEdit||!1,this.overviewRuler=e.overviewRuler?new B(e.overviewRuler):null,this.minimap=e.minimap?new j(e.minimap):null,this.glyphMarginClassName=e.glyphMarginClassName?W(e.glyphMarginClassName):null,this.linesDecorationsClassName=e.linesDecorationsClassName?W(e.linesDecorationsClassName):null,this.firstLineDecorationClassName=e.firstLineDecorationClassName?W(e.firstLineDecorationClassName):null,this.marginClassName=e.marginClassName?W(e.marginClassName):null,this.inlineClassName=e.inlineClassName?W(e.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=e.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=e.beforeContentClassName?W(e.beforeContentClassName):null,this.afterContentClassName=e.afterContentClassName?W(e.afterContentClassName):null,this.after=e.after?K.from(e.after):null,this.before=e.before?K.from(e.before):null,this.hideInCommentTokens=null!==(t=e.hideInCommentTokens)&&void 0!==t&&t,this.hideInStringTokens=null!==(i=e.hideInStringTokens)&&void 0!==i&&i}static register(e){return new U(e)}static createDynamic(e){return new U(e)}}U.EMPTY=U.register({description:"empty"});let $=[U.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),U.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),U.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),U.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function Q(e){return e instanceof U?e:U.createDynamic(e)}class q extends a.Disposable{constructor(e){super(),this.handleBeforeFire=e,this._actual=this._register(new r.Emitter),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFire=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){var e;if(this._deferredCnt--,0===this._deferredCnt){if(this._shouldFire){this.handleBeforeFire(this._affectedInjectedTextLines);let e={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler};this._shouldFire=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._actual.fire(e)}null===(e=this._affectedInjectedTextLines)||void 0===e||e.clear(),this._affectedInjectedTextLines=null}}recordLineAffectedByInjectedText(e){!this._affectedInjectedTextLines&&(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(e)}checkAffectedAndFire(e){!this._affectsMinimap&&(this._affectsMinimap=!!e.minimap&&!!e.minimap.position),!this._affectsOverviewRuler&&(this._affectsOverviewRuler=!!e.overviewRuler&&!!e.overviewRuler.color),this._shouldFire=!0}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._shouldFire=!0}}class G extends a.Disposable{constructor(){super(),this._fastEmitter=this._register(new r.Emitter),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new r.Emitter),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(e=null){if(this._deferredCnt--,0===this._deferredCnt&&null!==this._deferredEvent){this._deferredEvent.rawContentChangedEvent.resultingSelection=e;let t=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(t),this._slowEmitter.fire(t)}}fire(e){if(this._deferredCnt>0){this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(e):this._deferredEvent=e;return}this._fastEmitter.fire(e),this._slowEmitter.fire(e)}}},468530:function(e,t,i){"use strict";i.r(t),i.d(t,{EditorSimpleWorker:function(){return C}});var n=i("160012"),o=i("207875"),s=i("938505"),r=i("457938"),a=i("761045"),l=i("343349"),d=i("380859"),h=i("180553"),c=i("815984"),u=i("72942"),g=i("121401"),m=i("744138"),p=i("130039"),f=i("732288"),_=function(e,t,i,n){return new(i||(i=Promise))(function(o,s){function r(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?o(e.value):((t=e.value)instanceof i?t:new i(function(e){e(t)})).then(r,a)}l((n=n.apply(e,t||[])).next())})};class v extends d.MirrorTextModel{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(e){return this._lines[e-1]}getWordAtPosition(e,t){let i=(0,h.getWordAtText)(e.column,(0,h.ensureValidWordDefinition)(t),this._lines[e.lineNumber-1],0);return i?new a.Range(e.lineNumber,i.startColumn,e.lineNumber,i.endColumn):null}words(e){let t=this._lines,i=this._wordenize.bind(this),n=0,o="",s=0,r=[];return{*[Symbol.iterator](){for(;;)if(s<r.length){let e=o.substring(r[s].start,r[s].end);s+=1,yield e}else if(n<t.length)r=i(o=t[n],e),s=0,n+=1;else break}}}getLineWords(e,t){let i=this._lines[e-1],n=this._wordenize(i,t),o=[];for(let e of n)o.push({word:i.substring(e.start,e.end),startColumn:e.start+1,endColumn:e.end+1});return o}_wordenize(e,t){let i;let n=[];for(t.lastIndex=0;(i=t.exec(e))&&0!==i[0].length;){;n.push({start:i.index,end:i.index+i[0].length})}return n}getValueInRange(e){if((e=this._validateRange(e)).startLineNumber===e.endLineNumber)return this._lines[e.startLineNumber-1].substring(e.startColumn-1,e.endColumn-1);let t=this._eol,i=e.startLineNumber-1,n=e.endLineNumber-1,o=[];o.push(this._lines[i].substring(e.startColumn-1));for(let e=i+1;e<n;e++)o.push(this._lines[e]);return o.push(this._lines[n].substring(0,e.endColumn-1)),o.join(t)}offsetAt(e){return e=this._validatePosition(e),this._ensureLineStarts(),this._lineStarts.getPrefixSum(e.lineNumber-2)+(e.column-1)}positionAt(e){e=Math.max(0,e=Math.floor(e)),this._ensureLineStarts();let t=this._lineStarts.getIndexOf(e),i=this._lines[t.index].length;return{lineNumber:1+t.index,column:1+Math.min(t.remainder,i)}}_validateRange(e){let t=this._validatePosition({lineNumber:e.startLineNumber,column:e.startColumn}),i=this._validatePosition({lineNumber:e.endLineNumber,column:e.endColumn});return t.lineNumber!==e.startLineNumber||t.column!==e.startColumn||i.lineNumber!==e.endLineNumber||i.column!==e.endColumn?{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:i.lineNumber,endColumn:i.column}:e}_validatePosition(e){if(!r.Position.isIPosition(e))throw Error("bad position");let{lineNumber:t,column:i}=e,n=!1;if(t<1)t=1,i=1,n=!0;else if(t>this._lines.length)t=this._lines.length,i=this._lines[t-1].length+1,n=!0;else{let e=this._lines[t-1].length+1;i<1?(i=1,n=!0):i>e&&(i=e,n=!0)}return n?{lineNumber:t,column:i}:e}}class C{constructor(e,t){this._host=e,this._models=Object.create(null),this._foreignModuleFactory=t,this._foreignModule=null}dispose(){this._models=Object.create(null)}_getModel(e){return this._models[e]}_getModels(){let e=[];return Object.keys(this._models).forEach(t=>e.push(this._models[t])),e}acceptNewModel(e){this._models[e.url]=new v(s.URI.parse(e.url),e.lines,e.EOL,e.versionId)}acceptModelChanged(e,t){if(!!this._models[e])this._models[e].onEvents(t)}acceptRemovedModel(e){this._models[e]&&delete this._models[e]}computeUnicodeHighlights(e,t,i){return _(this,void 0,void 0,function*(){let n=this._getModel(e);return n?f.UnicodeTextModelHighlighter.computeUnicodeHighlights(n,t,i):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}})}computeDiff(e,t,i,n){return _(this,void 0,void 0,function*(){let o=this._getModel(e),s=this._getModel(t);return o&&s?C.computeDiff(o,s,i,n):null})}static computeDiff(e,t,i,n){let o=e.getLinesContent(),s=t.getLinesContent(),r=new l.DiffComputer(o,s,{shouldComputeCharChanges:!0,shouldPostProcessCharChanges:!0,shouldIgnoreTrimWhitespace:i,shouldMakePrettyDiff:!0,maxComputationTime:n}).computeDiff(),a=!(r.changes.length>0)&&this._modelsAreIdentical(e,t);return{quitEarly:r.quitEarly,identical:a,changes:r.changes}}static _modelsAreIdentical(e,t){let i=e.getLineCount();if(i!==t.getLineCount())return!1;for(let n=1;n<=i;n++){let i=e.getLineContent(n);if(i!==t.getLineContent(n))return!1}return!0}computeMoreMinimalEdits(e,t){return _(this,void 0,void 0,function*(){let i,o=this._getModel(e);if(!o)return t;let s=[];for(let{range:e,text:r,eol:l}of t=t.slice(0).sort((e,t)=>{if(e.range&&t.range)return a.Range.compareRangesUsingStarts(e.range,t.range);let i=e.range?0:1;return i-(t.range?0:1)})){if("number"==typeof l&&(i=l),a.Range.isEmpty(e)&&!r)continue;let t=o.getValueInRange(e);if(t===(r=r.replace(/\r\n|\n|\r/g,o.eol)))continue;if(Math.max(r.length,t.length)>C._diffLimit){s.push({range:e,text:r});continue}let d=(0,n.stringDiff)(t,r,!1),h=o.offsetAt(a.Range.lift(e).getStartPosition());for(let e of d){let t=o.positionAt(h+e.originalStart),i=o.positionAt(h+e.originalStart+e.originalLength),n={text:r.substr(e.modifiedStart,e.modifiedLength),range:{startLineNumber:t.lineNumber,startColumn:t.column,endLineNumber:i.lineNumber,endColumn:i.column}};o.getValueInRange(n.range)!==n.text&&s.push(n)}}return"number"==typeof i&&s.push({eol:i,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),s})}computeLinks(e){return _(this,void 0,void 0,function*(){let t=this._getModel(e);return t?(0,c.computeLinks)(t):null})}textualSuggest(e,t,i,n){return _(this,void 0,void 0,function*(){let o=new p.StopWatch(!0),s=new RegExp(i,n),r=new Set;e:for(let i of e){let e=this._getModel(i);if(e){for(let i of e.words(s))if(i!==t&&isNaN(Number(i))&&(r.add(i),r.size>C._suggestionsLimit))break e}}return{words:Array.from(r),duration:o.elapsed()}})}computeWordRanges(e,t,i,n){return _(this,void 0,void 0,function*(){let o=this._getModel(e);if(!o)return Object.create(null);let s=new RegExp(i,n),r=Object.create(null);for(let e=t.startLineNumber;e<t.endLineNumber;e++)for(let t of o.getLineWords(e,s)){if(!isNaN(Number(t.word)))continue;let i=r[t.word];!i&&(i=[],r[t.word]=i),i.push({startLineNumber:e,startColumn:t.startColumn,endLineNumber:e,endColumn:t.endColumn})}return r})}navigateValueSet(e,t,i,n,o){return _(this,void 0,void 0,function*(){let s=this._getModel(e);if(!s)return null;let r=new RegExp(n,o);t.startColumn===t.endColumn&&(t={startLineNumber:t.startLineNumber,startColumn:t.startColumn,endLineNumber:t.endLineNumber,endColumn:t.endColumn+1});let a=s.getValueInRange(t),l=s.getWordAtPosition({lineNumber:t.startLineNumber,column:t.startColumn},r);if(!l)return null;let d=s.getValueInRange(l);return u.BasicInplaceReplace.INSTANCE.navigateValueSet(t,a,l,d,i)})}loadForeignModule(e,t,i){let n=m.createProxyObject(i,(e,t)=>this._host.fhr(e,t));return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory({host:n,getMirrorModels:()=>this._getModels()},t),Promise.resolve(m.getAllMethodNames(this._foreignModule))):Promise.reject(Error("Unexpected usage"))}fmr(e,t){if(!this._foreignModule||"function"!=typeof this._foreignModule[e])return Promise.reject(Error("Missing requestHandler or method: "+e));try{return Promise.resolve(this._foreignModule[e].apply(this._foreignModule,t))}catch(e){return Promise.reject(e)}}}C._diffLimit=1e5,C._suggestionsLimit=1e4,"function"==typeof importScripts&&(o.globals.monaco=(0,g.createMonacoBaseAPI)())},542454:function(e,t,i){"use strict";i.r(t),i.d(t,{ViewLayout:function(){return c}});var n=i("916904"),o=i("919527"),s=i("212868"),r=i("832432"),a=i("838643"),l=i("614322");class d{constructor(e,t,i,n){(e|=0)<0&&(e=0),(t|=0)<0&&(t=0),(i|=0)<0&&(i=0),(n|=0)<0&&(n=0),this.width=e,this.contentWidth=t,this.scrollWidth=Math.max(e,t),this.height=i,this.contentHeight=n,this.scrollHeight=Math.max(i,n)}equals(e){return this.width===e.width&&this.contentWidth===e.contentWidth&&this.height===e.height&&this.contentHeight===e.contentHeight}}class h extends o.Disposable{constructor(e,t){super(),this._onDidContentSizeChange=this._register(new n.Emitter),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._dimensions=new d(0,0,0,0),this._scrollable=this._register(new s.Scrollable({forceIntegerValues:!0,smoothScrollDuration:e,scheduleAtNextAnimationFrame:t})),this.onDidScroll=this._scrollable.onScroll}getScrollable(){return this._scrollable}setSmoothScrollDuration(e){this._scrollable.setSmoothScrollDuration(e)}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}getScrollDimensions(){return this._dimensions}setScrollDimensions(e){if(this._dimensions.equals(e))return;let t=this._dimensions;this._dimensions=e,this._scrollable.setScrollDimensions({width:e.width,scrollWidth:e.scrollWidth,height:e.height,scrollHeight:e.scrollHeight},!0);let i=t.contentWidth!==e.contentWidth,n=t.contentHeight!==e.contentHeight;(i||n)&&this._onDidContentSizeChange.fire(new l.ContentSizeChangedEvent(t.contentWidth,t.contentHeight,e.contentWidth,e.contentHeight))}getFutureScrollPosition(){return this._scrollable.getFutureScrollPosition()}getCurrentScrollPosition(){return this._scrollable.getCurrentScrollPosition()}setScrollPositionNow(e){this._scrollable.setScrollPositionNow(e)}setScrollPositionSmooth(e){this._scrollable.setScrollPositionSmooth(e)}}class c extends o.Disposable{constructor(e,t,i){super(),this._configuration=e;let n=this._configuration.options,o=n.get(133),s=n.get(77);this._linesLayout=new r.LinesLayout(t,n.get(61),s.top,s.bottom),this._scrollable=this._register(new h(0,i)),this._configureSmoothScrollDuration(),this._scrollable.setScrollDimensions(new d(o.contentWidth,0,o.height,0)),this.onDidScroll=this._scrollable.onDidScroll,this.onDidContentSizeChange=this._scrollable.onDidContentSizeChange,this._updateHeight()}dispose(){super.dispose()}getScrollable(){return this._scrollable.getScrollable()}onHeightMaybeChanged(){this._updateHeight()}_configureSmoothScrollDuration(){this._scrollable.setSmoothScrollDuration(this._configuration.options.get(105)?125:0)}onConfigurationChanged(e){let t=this._configuration.options;if(e.hasChanged(61)&&this._linesLayout.setLineHeight(t.get(61)),e.hasChanged(77)){let e=t.get(77);this._linesLayout.setPadding(e.top,e.bottom)}if(e.hasChanged(133)){let e=t.get(133),i=e.contentWidth,n=e.height,o=this._scrollable.getScrollDimensions(),s=o.contentWidth;this._scrollable.setScrollDimensions(new d(i,o.contentWidth,n,this._getContentHeight(i,n,s)))}else this._updateHeight();e.hasChanged(105)&&this._configureSmoothScrollDuration()}onFlushed(e){this._linesLayout.onFlushed(e)}onLinesDeleted(e,t){this._linesLayout.onLinesDeleted(e,t)}onLinesInserted(e,t){this._linesLayout.onLinesInserted(e,t)}_getHorizontalScrollbarHeight(e,t){let i=this._configuration.options.get(94);return 2===i.horizontal||e>=t?0:i.horizontalScrollbarSize}_getContentHeight(e,t,i){let n=this._configuration.options,o=this._linesLayout.getLinesTotalHeight();return n.get(96)?o+=Math.max(0,t-n.get(61)-n.get(77).bottom):o+=this._getHorizontalScrollbarHeight(e,i),o}_updateHeight(){let e=this._scrollable.getScrollDimensions(),t=e.width,i=e.height,n=e.contentWidth;this._scrollable.setScrollDimensions(new d(t,e.contentWidth,i,this._getContentHeight(t,i,n)))}getCurrentViewport(){let e=this._scrollable.getScrollDimensions(),t=this._scrollable.getCurrentScrollPosition();return new a.Viewport(t.scrollTop,t.scrollLeft,e.width,e.height)}getFutureViewport(){let e=this._scrollable.getScrollDimensions(),t=this._scrollable.getFutureScrollPosition();return new a.Viewport(t.scrollTop,t.scrollLeft,e.width,e.height)}_computeContentWidth(e){let t=this._configuration.options,i=t.get(134),n=t.get(46),o=t.get(133);if(i.isViewportWrapping){let i=t.get(67);return e>o.contentWidth+n.typicalHalfwidthCharacterWidth&&i.enabled&&"right"===i.side?e+o.verticalScrollbarWidth:e}{let i=t.get(95)*n.typicalHalfwidthCharacterWidth,s=this._linesLayout.getWhitespaceMinWidth();return Math.max(e+i+o.verticalScrollbarWidth,s)}}setMaxLineWidth(e){let t=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new d(t.width,this._computeContentWidth(e),t.height,t.contentHeight)),this._updateHeight()}saveState(){let e=this._scrollable.getFutureScrollPosition(),t=e.scrollTop,i=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(t);return{scrollTop:t,scrollTopWithoutViewZones:t-this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(i),scrollLeft:e.scrollLeft}}changeWhitespace(e){let t=this._linesLayout.changeWhitespace(e);return t&&this.onHeightMaybeChanged(),t}getVerticalOffsetForLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetForLineNumber(e,t)}getVerticalOffsetAfterLineNumber(e,t=!1){return this._linesLayout.getVerticalOffsetAfterLineNumber(e,t)}isAfterLines(e){return this._linesLayout.isAfterLines(e)}isInTopPadding(e){return this._linesLayout.isInTopPadding(e)}isInBottomPadding(e){return this._linesLayout.isInBottomPadding(e)}getLineNumberAtVerticalOffset(e){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(e)}getWhitespaceAtVerticalOffset(e){return this._linesLayout.getWhitespaceAtVerticalOffset(e)}getLinesViewportData(){let e=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(e.top,e.top+e.height)}getLinesViewportDataAtScrollTop(e){let t=this._scrollable.getScrollDimensions();return e+t.height>t.scrollHeight&&(e=t.scrollHeight-t.height),e<0&&(e=0),this._linesLayout.getLinesViewportData(e,e+t.height)}getWhitespaceViewportData(){let e=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(e.top,e.top+e.height)}getWhitespaces(){return this._linesLayout.getWhitespaces()}getContentWidth(){return this._scrollable.getScrollDimensions().contentWidth}getScrollWidth(){return this._scrollable.getScrollDimensions().scrollWidth}getContentHeight(){return this._scrollable.getScrollDimensions().contentHeight}getScrollHeight(){return this._scrollable.getScrollDimensions().scrollHeight}getCurrentScrollLeft(){return this._scrollable.getCurrentScrollPosition().scrollLeft}getCurrentScrollTop(){return this._scrollable.getCurrentScrollPosition().scrollTop}validateScrollPosition(e){return this._scrollable.validateScrollPosition(e)}setScrollPosition(e,t){1===t?this._scrollable.setScrollPositionNow(e):this._scrollable.setScrollPositionSmooth(e)}deltaScrollNow(e,t){let i=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:i.scrollLeft+e,scrollTop:i.scrollTop+t})}}},874819:function(e,t,i){"use strict";i.r(t),i.d(t,{BlockCommentCommand:function(){return a}});var n=i("188398"),o=i("457938"),s=i("761045"),r=i("861065");class a{constructor(e,t,i){this.languageConfigurationService=i,this._selection=e,this._insertSpace=t,this._usedEndToken=null}static _haystackHasNeedleAtOffset(e,t,i){if(i<0)return!1;let n=t.length;if(i+n>e.length)return!1;for(let o=0;o<n;o++){let n=e.charCodeAt(i+o),s=t.charCodeAt(o);if(n!==s&&(!(n>=65)||!(n<=90)||n+32!==s)){if(!(s>=65)||!(s<=90)||s+32!==n)return!1}}return!0}_createOperationsForBlockComment(e,t,i,n,o,r){let l;let d=e.startLineNumber,h=e.startColumn,c=e.endLineNumber,u=e.endColumn,g=o.getLineContent(d),m=o.getLineContent(c),p=g.lastIndexOf(t,h-1+t.length),f=m.indexOf(i,u-1-i.length);if(-1!==p&&-1!==f){if(d===c)g.substring(p+t.length,f).indexOf(i)>=0&&(p=-1,f=-1);else{let e=g.substring(p+t.length),n=m.substring(0,f);(e.indexOf(i)>=0||n.indexOf(i)>=0)&&(p=-1,f=-1)}}for(let o of(-1!==p&&-1!==f?(n&&p+t.length<g.length&&32===g.charCodeAt(p+t.length)&&(t+=" "),n&&f>0&&32===m.charCodeAt(f-1)&&(i=" "+i,f-=1),l=a._createRemoveBlockCommentOperations(new s.Range(d,p+t.length+1,c,f+1),t,i)):(l=a._createAddBlockCommentOperations(e,t,i,this._insertSpace),this._usedEndToken=1===l.length?i:null),l))r.addTrackedEditOperation(o.range,o.text)}static _createRemoveBlockCommentOperations(e,t,i){let o=[];return s.Range.isEmpty(e)?o.push(n.EditOperation.delete(new s.Range(e.startLineNumber,e.startColumn-t.length,e.endLineNumber,e.endColumn+i.length))):(o.push(n.EditOperation.delete(new s.Range(e.startLineNumber,e.startColumn-t.length,e.startLineNumber,e.startColumn))),o.push(n.EditOperation.delete(new s.Range(e.endLineNumber,e.endColumn,e.endLineNumber,e.endColumn+i.length)))),o}static _createAddBlockCommentOperations(e,t,i,r){let a=[];return s.Range.isEmpty(e)?a.push(n.EditOperation.replace(new s.Range(e.startLineNumber,e.startColumn,e.endLineNumber,e.endColumn),t+" "+i)):(a.push(n.EditOperation.insert(new o.Position(e.startLineNumber,e.startColumn),t+(r?" ":""))),a.push(n.EditOperation.insert(new o.Position(e.endLineNumber,e.endColumn),(r?" ":"")+i))),a}getEditOperations(e,t){let i=this._selection.startLineNumber,n=this._selection.startColumn;e.tokenization.tokenizeIfCheap(i);let o=e.getLanguageIdAtPosition(i,n),s=this.languageConfigurationService.getLanguageConfiguration(o).comments;s&&s.blockCommentStartToken&&s.blockCommentEndToken&&this._createOperationsForBlockComment(this._selection,s.blockCommentStartToken,s.blockCommentEndToken,this._insertSpace,e,t)}computeCursorState(e,t){let i=t.getInverseEditOperations();if(2===i.length){let e=i[0],t=i[1];return new r.Selection(e.range.endLineNumber,e.range.endColumn,t.range.startLineNumber,t.range.startColumn)}{let e=i[0].range,t=this._usedEndToken?-this._usedEndToken.length-1:0;return new r.Selection(e.endLineNumber,e.endColumn+t,e.endLineNumber,e.endColumn+t)}}}},729114:function(e,t,i){"use strict";i.r(t),i.d(t,{LineCommentCommand:function(){return d}});var n=i("266763"),o=i("188398"),s=i("457938"),r=i("761045"),a=i("861065"),l=i("874819");class d{constructor(e,t,i,n,o,s,r){this.languageConfigurationService=e,this._selection=t,this._tabSize=i,this._type=n,this._insertSpace=o,this._selectionId=null,this._deltaColumn=0,this._moveEndPositionDown=!1,this._ignoreEmptyLines=s,this._ignoreFirstLine=r||!1}static _gatherPreflightCommentStrings(e,t,i,n){e.tokenization.tokenizeIfCheap(t);let o=e.getLanguageIdAtPosition(t,1),s=n.getLanguageConfiguration(o).comments,r=s?s.lineCommentToken:null;if(!r)return null;let a=[];for(let e=0,n=i-t+1;e<n;e++)a[e]={ignore:!1,commentStr:r,commentStrOffset:0,commentStrLength:r.length};return a}static _analyzeLines(e,t,i,o,s,r,a,d){let h,c=!0;h=0===e||1!==e&&!0;for(let d=0,u=o.length;d<u;d++){let u=o[d],g=s+d;if(g===s&&a){u.ignore=!0;continue}let m=i.getLineContent(g),p=n.firstNonWhitespaceIndex(m);if(-1===p){u.ignore=r,u.commentStrOffset=m.length;continue}if(c=!1,u.ignore=!1,u.commentStrOffset=p,h&&!l.BlockCommentCommand._haystackHasNeedleAtOffset(m,u.commentStr,p)&&(0===e?h=!1:1===e||(u.ignore=!0)),h&&t){let e=p+u.commentStrLength;e<m.length&&32===m.charCodeAt(e)&&(u.commentStrLength+=1)}}if(0===e&&c){h=!1;for(let e=0,t=o.length;e<t;e++)o[e].ignore=!1}return{supported:!0,shouldRemoveComments:h,lines:o}}static _gatherPreflightData(e,t,i,n,o,s,r,a){let l=d._gatherPreflightCommentStrings(i,n,o,a);return null===l?{supported:!1}:d._analyzeLines(e,t,i,l,n,s,r,a)}_executeLineComments(e,t,i,n){let o;i.shouldRemoveComments?o=d._createRemoveLineCommentsOperations(i.lines,n.startLineNumber):(d._normalizeInsertionPoint(e,i.lines,n.startLineNumber,this._tabSize),o=this._createAddLineCommentsOperations(i.lines,n.startLineNumber));let a=new s.Position(n.positionLineNumber,n.positionColumn);for(let i=0,n=o.length;i<n;i++)t.addEditOperation(o[i].range,o[i].text),r.Range.isEmpty(o[i].range)&&r.Range.getStartPosition(o[i].range).equals(a)&&e.getLineContent(a.lineNumber).length+1===a.column&&(this._deltaColumn=(o[i].text||"").length);this._selectionId=t.trackSelection(n)}_attemptRemoveBlockComment(e,t,i,n){let o=t.startLineNumber,s=t.endLineNumber,a=n.length+Math.max(e.getLineFirstNonWhitespaceColumn(t.startLineNumber),t.startColumn),d=e.getLineContent(o).lastIndexOf(i,a-1),h=e.getLineContent(s).indexOf(n,t.endColumn-1-i.length);return(-1!==d&&-1===h&&(h=e.getLineContent(o).indexOf(n,d+i.length),s=o),-1===d&&-1!==h&&(d=e.getLineContent(s).lastIndexOf(i,h),o=s),t.isEmpty()&&(-1===d||-1===h)&&-1!==(d=e.getLineContent(o).indexOf(i))&&(h=e.getLineContent(o).indexOf(n,d+i.length)),-1!==d&&32===e.getLineContent(o).charCodeAt(d+i.length)&&(i+=" "),-1!==h&&32===e.getLineContent(s).charCodeAt(h-1)&&(n=" "+n,h-=1),-1!==d&&-1!==h)?l.BlockCommentCommand._createRemoveBlockCommentOperations(new r.Range(o,d+i.length+1,s,h+1),i,n):null}_executeBlockComment(e,t,i){e.tokenization.tokenizeIfCheap(i.startLineNumber);let o=e.getLanguageIdAtPosition(i.startLineNumber,1),s=this.languageConfigurationService.getLanguageConfiguration(o).comments;if(!s||!s.blockCommentStartToken||!s.blockCommentEndToken)return;let a=s.blockCommentStartToken,d=s.blockCommentEndToken,h=this._attemptRemoveBlockComment(e,i,a,d);if(!h){if(i.isEmpty()){let t=e.getLineContent(i.startLineNumber),o=n.firstNonWhitespaceIndex(t);-1===o&&(o=t.length),h=l.BlockCommentCommand._createAddBlockCommentOperations(new r.Range(i.startLineNumber,o+1,i.startLineNumber,t.length+1),a,d,this._insertSpace)}else h=l.BlockCommentCommand._createAddBlockCommentOperations(new r.Range(i.startLineNumber,e.getLineFirstNonWhitespaceColumn(i.startLineNumber),i.endLineNumber,e.getLineMaxColumn(i.endLineNumber)),a,d,this._insertSpace);1===h.length&&(this._deltaColumn=a.length+1)}for(let e of(this._selectionId=t.trackSelection(i),h))t.addEditOperation(e.range,e.text)}getEditOperations(e,t){let i=this._selection;if(this._moveEndPositionDown=!1,i.startLineNumber===i.endLineNumber&&this._ignoreFirstLine){t.addEditOperation(new r.Range(i.startLineNumber,e.getLineMaxColumn(i.startLineNumber),i.startLineNumber+1,1),i.startLineNumber===e.getLineCount()?"":"\n"),this._selectionId=t.trackSelection(i);return}i.startLineNumber<i.endLineNumber&&1===i.endColumn&&(this._moveEndPositionDown=!0,i=i.setEndPosition(i.endLineNumber-1,e.getLineMaxColumn(i.endLineNumber-1)));let n=d._gatherPreflightData(this._type,this._insertSpace,e,i.startLineNumber,i.endLineNumber,this._ignoreEmptyLines,this._ignoreFirstLine,this.languageConfigurationService);return n.supported?this._executeLineComments(e,t,n,i):this._executeBlockComment(e,t,i)}computeCursorState(e,t){let i=t.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(i=i.setEndPosition(i.endLineNumber+1,1)),new a.Selection(i.selectionStartLineNumber,i.selectionStartColumn+this._deltaColumn,i.positionLineNumber,i.positionColumn+this._deltaColumn)}static _createRemoveLineCommentsOperations(e,t){let i=[];for(let n=0,s=e.length;n<s;n++){let s=e[n];!s.ignore&&i.push(o.EditOperation.delete(new r.Range(t+n,s.commentStrOffset+1,t+n,s.commentStrOffset+s.commentStrLength+1)))}return i}_createAddLineCommentsOperations(e,t){let i=[],n=this._insertSpace?" ":"";for(let r=0,a=e.length;r<a;r++){let a=e[r];!a.ignore&&i.push(o.EditOperation.insert(new s.Position(t+r,a.commentStrOffset+1),a.commentStr+n))}return i}static nextVisibleColumn(e,t,i,n){return i?e+(t-e%t):e+n}static _normalizeInsertionPoint(e,t,i,n){let o,s,r=1073741824;for(let o=0,s=t.length;o<s;o++){if(t[o].ignore)continue;let s=e.getLineContent(i+o),a=0;for(let e=0,i=t[o].commentStrOffset;a<r&&e<i;e++)a=d.nextVisibleColumn(a,n,9===s.charCodeAt(e),1);a<r&&(r=a)}r=Math.floor(r/n)*n;for(let a=0,l=t.length;a<l;a++){if(t[a].ignore)continue;let l=e.getLineContent(i+a),h=0;for(o=0,s=t[a].commentStrOffset;h<r&&o<s;o++)h=d.nextVisibleColumn(h,n,9===l.charCodeAt(o),1);h>r?t[a].commentStrOffset=o-1:t[a].commentStrOffset=o}}}},184498:function(e,t,i){"use strict";i.r(t);var n,o,s=i("467518"),r=i("161111"),a=i("120084"),l=i("159923"),d=i("761045"),h=i("861065"),c=i("976617"),u=i("599599"),g=i("73835"),m=i("126939"),p=i("708339"),f=i("439703"),_=i("815822");let v=class e{constructor(e,t){this.editor=e,this.editorWorkerService=t,this.decorations=this.editor.createDecorationsCollection()}static get(t){return t.getContribution(e.ID)}dispose(){}run(t,i){this.currentRequest&&this.currentRequest.cancel();let n=this.editor.getSelection(),o=this.editor.getModel();if(!o||!n)return;let l=n;if(l.startLineNumber!==l.endLineNumber)return;let c=new a.EditorState(this.editor,5),u=o.uri;return this.editorWorkerService.canNavigateValueSet(u)?(this.currentRequest=(0,s.createCancelablePromise)(e=>this.editorWorkerService.navigateValueSet(u,l,i)),this.currentRequest.then(i=>{if(!i||!i.range||!i.value||!c.validate(this.editor))return;let n=d.Range.lift(i.range),o=i.range,a=i.value.length-(l.endColumn-l.startColumn);o={startLineNumber:o.startLineNumber,startColumn:o.startColumn,endLineNumber:o.endLineNumber,endColumn:o.startColumn+i.value.length},a>1&&(l=new h.Selection(l.startLineNumber,l.startColumn,l.endLineNumber,l.endColumn+a-1));let u=new _.InPlaceReplaceCommand(n,l,i.value);this.editor.pushUndoStop(),this.editor.executeCommand(t,u),this.editor.pushUndoStop(),this.decorations.set([{range:o,options:e.DECORATION}]),this.decorationRemover&&this.decorationRemover.cancel(),this.decorationRemover=(0,s.timeout)(350),this.decorationRemover.then(()=>this.decorations.clear()).catch(r.onUnexpectedError)}).catch(r.onUnexpectedError)):Promise.resolve(void 0)}};v.ID="editor.contrib.inPlaceReplaceController",v.DECORATION=u.ModelDecorationOptions.register({description:"in-place-replace",className:"valueSetReplacement"}),v=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([(n=1,o=g.IEditorWorkerService,function(e,t){o(e,t,1)})],v);class C extends l.EditorAction{constructor(){super({id:"editor.action.inPlaceReplace.up",label:p.localize("InPlaceReplaceAction.previous.label","Replace with Previous Value"),alias:"Replace with Previous Value",precondition:c.EditorContextKeys.writable,kbOpts:{kbExpr:c.EditorContextKeys.editorTextFocus,primary:3154,weight:100}})}run(e,t){let i=v.get(t);return i?i.run(this.id,!0):Promise.resolve(void 0)}}class b extends l.EditorAction{constructor(){super({id:"editor.action.inPlaceReplace.down",label:p.localize("InPlaceReplaceAction.next.label","Replace with Next Value"),alias:"Replace with Next Value",precondition:c.EditorContextKeys.writable,kbOpts:{kbExpr:c.EditorContextKeys.editorTextFocus,primary:3156,weight:100}})}run(e,t){let i=v.get(t);return i?i.run(this.id,!1):Promise.resolve(void 0)}}(0,l.registerEditorContribution)(v.ID,v),(0,l.registerEditorAction)(C),(0,l.registerEditorAction)(b),(0,f.registerThemingParticipant)((e,t)=>{let i=e.getColor(m.editorBracketMatchBorder);i&&t.addRule(`.monaco-editor.vs .valueSetReplacement { outline: solid 2px ${i}; }`)})},879906:function(e,t,i){"use strict";i.r(t),i.d(t,{MoveLinesCommand:function(){return m}});var n,o,s=i("266763"),r=i("739379"),a=i("761045"),l=i("861065"),d=i("49286"),h=i("962785"),c=i("78261"),u=i("545477"),g=i("79125");let m=class{constructor(e,t,i,n){this._languageConfigurationService=n,this._selection=e,this._isMovingDown=t,this._autoIndent=i,this._selectionId=null,this._moveEndLineSelectionShrink=!1}getEditOperations(e,t){let i=e.getLineCount();if(this._isMovingDown&&this._selection.endLineNumber===i||!this._isMovingDown&&1===this._selection.startLineNumber){this._selectionId=t.trackSelection(this._selection);return}this._moveEndPositionDown=!1;let n=this._selection;n.startLineNumber<n.endLineNumber&&1===n.endColumn&&(this._moveEndPositionDown=!0,n=n.setEndPosition(n.endLineNumber-1,e.getLineMaxColumn(n.endLineNumber-1)));let{tabSize:o,indentSize:r,insertSpaces:d}=e.getOptions(),h=this.buildIndentConverter(o,r,d),g={tokenization:{getLineTokens:t=>e.tokenization.getLineTokens(t),getLanguageId:()=>e.getLanguageId(),getLanguageIdAtPosition:(t,i)=>e.getLanguageIdAtPosition(t,i)},getLineContent:null};if(n.startLineNumber===n.endLineNumber&&1===e.getLineMaxColumn(n.startLineNumber)){let i=n.startLineNumber,o=this._isMovingDown?i+1:i-1;1===e.getLineMaxColumn(o)?t.addEditOperation(new a.Range(1,1,1,1),null):(t.addEditOperation(new a.Range(i,1,i,1),e.getLineContent(o)),t.addEditOperation(new a.Range(o,1,o,e.getLineMaxColumn(o)),null)),n=new l.Selection(o,1,o,1)}else{let i,r;if(this._isMovingDown){i=n.endLineNumber+1,r=e.getLineContent(i),t.addEditOperation(new a.Range(i-1,e.getLineMaxColumn(i-1),i,e.getLineMaxColumn(i)),null);let l=r;if(this.shouldAutoIndent(e,n)){let m=this.matchEnterRule(e,h,o,i,n.startLineNumber-1);if(null!==m){let t=s.getLeadingWhitespace(e.getLineContent(i)),n=m+c.getSpaceCnt(t,o);l=c.generateIndent(n,o,d)+this.trimLeft(r)}else{g.getLineContent=t=>t===n.startLineNumber?e.getLineContent(i):e.getLineContent(t);let t=(0,u.getGoodIndentForLine)(this._autoIndent,g,e.getLanguageIdAtPosition(i,1),n.startLineNumber,h,this._languageConfigurationService);if(null!==t){let n=s.getLeadingWhitespace(e.getLineContent(i)),a=c.getSpaceCnt(t,o);a!==c.getSpaceCnt(n,o)&&(l=c.generateIndent(a,o,d)+this.trimLeft(r))}}t.addEditOperation(new a.Range(n.startLineNumber,1,n.startLineNumber,1),l+"\n");let p=this.matchEnterRuleMovingDown(e,h,o,n.startLineNumber,i,l);if(null!==p)0!==p&&this.getIndentEditsOfMovingBlock(e,t,n,o,d,p);else{g.getLineContent=t=>t===n.startLineNumber?l:t>=n.startLineNumber+1&&t<=n.endLineNumber+1?e.getLineContent(t-1):e.getLineContent(t);let r=(0,u.getGoodIndentForLine)(this._autoIndent,g,e.getLanguageIdAtPosition(i,1),n.startLineNumber+1,h,this._languageConfigurationService);if(null!==r){let i=s.getLeadingWhitespace(e.getLineContent(n.startLineNumber)),a=c.getSpaceCnt(r,o),l=c.getSpaceCnt(i,o);a!==l&&this.getIndentEditsOfMovingBlock(e,t,n,o,d,a-l)}}}else t.addEditOperation(new a.Range(n.startLineNumber,1,n.startLineNumber,1),l+"\n")}else if(i=n.startLineNumber-1,r=e.getLineContent(i),t.addEditOperation(new a.Range(i,1,i+1,1),null),t.addEditOperation(new a.Range(n.endLineNumber,e.getLineMaxColumn(n.endLineNumber),n.endLineNumber,e.getLineMaxColumn(n.endLineNumber)),"\n"+r),this.shouldAutoIndent(e,n)){g.getLineContent=t=>t===i?e.getLineContent(n.startLineNumber):e.getLineContent(t);let r=this.matchEnterRule(e,h,o,n.startLineNumber,n.startLineNumber-2);if(null!==r)0!==r&&this.getIndentEditsOfMovingBlock(e,t,n,o,d,r);else{let r=(0,u.getGoodIndentForLine)(this._autoIndent,g,e.getLanguageIdAtPosition(n.startLineNumber,1),i,h,this._languageConfigurationService);if(null!==r){let i=s.getLeadingWhitespace(e.getLineContent(n.startLineNumber)),a=c.getSpaceCnt(r,o),l=c.getSpaceCnt(i,o);a!==l&&this.getIndentEditsOfMovingBlock(e,t,n,o,d,a-l)}}}}this._selectionId=t.trackSelection(n)}buildIndentConverter(e,t,i){return{shiftIndent:n=>r.ShiftCommand.shiftIndent(n,n.length+1,e,t,i),unshiftIndent:n=>r.ShiftCommand.unshiftIndent(n,n.length+1,e,t,i)}}parseEnterResult(e,t,i,n,o){if(o){let r=o.indentation;o.indentAction===d.IndentAction.None?r=o.indentation+o.appendText:o.indentAction===d.IndentAction.Indent?r=o.indentation+o.appendText:o.indentAction===d.IndentAction.IndentOutdent?r=o.indentation:o.indentAction===d.IndentAction.Outdent&&(r=t.unshiftIndent(o.indentation)+o.appendText);let a=e.getLineContent(n);if(this.trimLeft(a).indexOf(this.trimLeft(r))>=0){let o=s.getLeadingWhitespace(e.getLineContent(n)),a=s.getLeadingWhitespace(r),l=(0,u.getIndentMetadata)(e,n,this._languageConfigurationService);null!==l&&2&l&&(a=t.unshiftIndent(a));let d=c.getSpaceCnt(a,i);return d-c.getSpaceCnt(o,i)}}return null}matchEnterRuleMovingDown(e,t,i,n,o,r){if(s.lastNonWhitespaceIndex(r)>=0){let s=e.getLineMaxColumn(o),r=(0,g.getEnterAction)(this._autoIndent,e,new a.Range(o,s,o,s),this._languageConfigurationService);return this.parseEnterResult(e,t,i,n,r)}{let o=n-1;for(;o>=1;){let t=e.getLineContent(o);if(s.lastNonWhitespaceIndex(t)>=0)break;o--}if(o<1||n>e.getLineCount())return null;let r=e.getLineMaxColumn(o),l=(0,g.getEnterAction)(this._autoIndent,e,new a.Range(o,r,o,r),this._languageConfigurationService);return this.parseEnterResult(e,t,i,n,l)}}matchEnterRule(e,t,i,n,o,r){let l=o;for(;l>=1;){let t;if(t=l===o&&void 0!==r?r:e.getLineContent(l),s.lastNonWhitespaceIndex(t)>=0)break;l--}if(l<1||n>e.getLineCount())return null;let d=e.getLineMaxColumn(l),h=(0,g.getEnterAction)(this._autoIndent,e,new a.Range(l,d,l,d),this._languageConfigurationService);return this.parseEnterResult(e,t,i,n,h)}trimLeft(e){return e.replace(/^\s+/,"")}shouldAutoIndent(e,t){if(this._autoIndent<4||!e.tokenization.isCheapToTokenize(t.startLineNumber))return!1;let i=e.getLanguageIdAtPosition(t.startLineNumber,1);return i===e.getLanguageIdAtPosition(t.endLineNumber,1)&&null!==this._languageConfigurationService.getLanguageConfiguration(i).indentRulesSupport&&!0}getIndentEditsOfMovingBlock(e,t,i,n,o,r){for(let l=i.startLineNumber;l<=i.endLineNumber;l++){let d=e.getLineContent(l),h=s.getLeadingWhitespace(d),u=c.getSpaceCnt(h,n)+r,g=c.generateIndent(u,n,o);g!==h&&(t.addEditOperation(new a.Range(l,1,l,h.length+1),g),l===i.endLineNumber&&i.endColumn<=h.length+1&&""===g&&(this._moveEndLineSelectionShrink=!0))}}computeCursorState(e,t){let i=t.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(i=i.setEndPosition(i.endLineNumber+1,1)),this._moveEndLineSelectionShrink&&i.startLineNumber<i.endLineNumber&&(i=i.setEndPosition(i.endLineNumber,2)),i}};m=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([(n=3,o=h.ILanguageConfigurationService,function(e,t){o(e,t,3)})],m)},256886:function(e,t,i){"use strict";i.r(t),i.d(t,{SuggestDetailsOverlay:function(){return _},SuggestDetailsWidget:function(){return f},canExpandCompletionItem:function(){return p}});var n,o,s=i("409737"),r=i("842401"),a=i("871628"),l=i("916904"),d=i("670691"),h=i("919527"),c=i("377403"),u=i("259725"),g=i("708339"),m=i("706301");function p(e){return!!e&&!!(e.completion.documentation||e.completion.detail&&e.completion.detail!==e.completion.label)}let f=class{constructor(e,t){this._editor=e,this._onDidClose=new l.Emitter,this.onDidClose=this._onDidClose.event,this._onDidChangeContents=new l.Emitter,this.onDidChangeContents=this._onDidChangeContents.event,this._disposables=new h.DisposableStore,this._renderDisposeable=new h.DisposableStore,this._borderWidth=1,this._size=new s.Dimension(330,0),this.domNode=s.$(".suggest-details"),this.domNode.classList.add("no-docs"),this._markdownRenderer=t.createInstance(c.MarkdownRenderer,{editor:e}),this._body=s.$(".body"),this._scrollbar=new r.DomScrollableElement(this._body,{alwaysConsumeMouseWheel:!0}),s.append(this.domNode,this._scrollbar.getDomNode()),this._disposables.add(this._scrollbar),this._header=s.append(this._body,s.$(".header")),this._close=s.append(this._header,s.$("span"+a.Codicon.close.cssSelector)),this._close.title=g.localize("details.close","Close"),this._type=s.append(this._header,s.$("p.type")),this._docs=s.append(this._body,s.$("p.docs")),this._configureFont(),this._disposables.add(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(46)&&this._configureFont()}))}dispose(){this._disposables.dispose(),this._renderDisposeable.dispose()}_configureFont(){let e=this._editor.getOptions(),t=e.get(46),i=t.getMassagedFontFamily(),n=e.get(109)||t.fontSize,o=e.get(110)||t.lineHeight,s=t.fontWeight,r=`${n}px`,a=`${o}px`;this.domNode.style.fontSize=r,this.domNode.style.lineHeight=`${o/n}`,this.domNode.style.fontWeight=s,this.domNode.style.fontFeatureSettings=t.fontFeatureSettings,this._type.style.fontFamily=i,this._close.style.height=a,this._close.style.width=a}getLayoutInfo(){let e=this._editor.getOption(110)||this._editor.getOption(46).lineHeight,t=this._borderWidth;return{lineHeight:e,borderWidth:t,borderHeight:2*t,verticalPadding:22,horizontalPadding:14}}renderLoading(){this._type.textContent=g.localize("loading","Loading..."),this._docs.textContent="",this.domNode.classList.remove("no-docs","no-type"),this.layout(this.size.width,2*this.getLayoutInfo().lineHeight),this._onDidChangeContents.fire(this)}renderItem(e,t){var i,n;this._renderDisposeable.clear();let{detail:o,documentation:r}=e.completion;if(t){let t="";t+=`score: ${e.score[0]}
|
|
17
17
|
prefix: ${null!==(i=e.word)&&void 0!==i?i:"(no prefix)"}
|
|
18
18
|
word: ${e.completion.filterText?e.completion.filterText+" (filterText)":e.textLabel}
|
|
19
19
|
distance: ${e.distance} (localityBonus-setting)
|
|
20
20
|
index: ${e.idx}, based on ${e.completion.sortText&&`sortText: "${e.completion.sortText}"`||"label"}
|
|
21
21
|
commit_chars: ${null===(n=e.completion.commitCharacters)||void 0===n?void 0:n.join("")}
|
|
22
|
-
`,r=new d.MarkdownString().appendCodeblock("empty",t),o=`Provider: ${e.provider._debugDisplayName}`}if(!t&&!p(e)){this.clearContents();return}if(this.domNode.classList.remove("no-docs","no-type"),o){let e=o.length>1e5?`${o.substr(0,1e5)}\u{2026}`:o;this._type.textContent=e,this._type.title=e,s.show(this._type),this._type.classList.toggle("auto-wrap",!/\r?\n^\s+/gmi.test(e))}else s.clearNode(this._type),this._type.title="",s.hide(this._type),this.domNode.classList.add("no-type");if(s.clearNode(this._docs),"string"==typeof r)this._docs.classList.remove("markdown-docs"),this._docs.textContent=r;else if(r){this._docs.classList.add("markdown-docs"),s.clearNode(this._docs);let e=this._markdownRenderer.render(r);this._docs.appendChild(e.element),this._renderDisposeable.add(e),this._renderDisposeable.add(this._markdownRenderer.onDidRenderAsync(()=>{this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}))}this.domNode.style.userSelect="text",this.domNode.tabIndex=-1,this._close.onmousedown=e=>{e.preventDefault(),e.stopPropagation()},this._close.onclick=e=>{e.preventDefault(),e.stopPropagation(),this._onDidClose.fire()},this._body.scrollTop=0,this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}clearContents(){this.domNode.classList.add("no-docs"),this._type.textContent="",this._docs.textContent=""}get size(){return this._size}layout(e,t){let i=new s.Dimension(e,t);!s.Dimension.equals(i,this._size)&&(this._size=i,s.size(this.domNode,e,t)),this._scrollbar.scanDomNode()}scrollDown(e=8){this._body.scrollTop+=e}scrollUp(e=8){this._body.scrollTop-=e}scrollTop(){this._body.scrollTop=0}scrollBottom(){this._body.scrollTop=this._body.scrollHeight}pageDown(){this.scrollDown(80)}pageUp(){this.scrollUp(80)}set borderWidth(e){this._borderWidth=e}get borderWidth(){return this._borderWidth}};f=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([(n=1,o=m.IInstantiationService,function(e,t){o(e,t,1)})],f);class _{constructor(e,t){let i,n;this.widget=e,this._editor=t,this._disposables=new h.DisposableStore,this._added=!1,this._preferAlignAtTop=!0,this._resizable=new u.ResizableHTMLElement,this._resizable.domNode.classList.add("suggest-details-container"),this._resizable.domNode.appendChild(e.domNode),this._resizable.enableSashes(!1,!0,!0,!1);let o=0,s=0;this._disposables.add(this._resizable.onDidWillResize(()=>{i=this._topLeft,n=this._resizable.size})),this._disposables.add(this._resizable.onDidResize(e=>{if(i&&n){this.widget.layout(e.dimension.width,e.dimension.height);let t=!1;e.west&&(s=n.width-e.dimension.width,t=!0),e.north&&(o=n.height-e.dimension.height,t=!0),t&&this._applyTopLeft({top:i.top+o,left:i.left+s})}e.done&&(i=void 0,n=void 0,o=0,s=0,this._userSize=e.dimension)})),this._disposables.add(this.widget.onDidChangeContents(()=>{var e;this._anchorBox&&this._placeAtAnchor(this._anchorBox,null!==(e=this._userSize)&&void 0!==e?e:this.widget.size,this._preferAlignAtTop)}))}dispose(){this._resizable.dispose(),this._disposables.dispose(),this.hide()}getId(){return"suggest.details"}getDomNode(){return this._resizable.domNode}getPosition(){return null}show(){!this._added&&(this._editor.addOverlayWidget(this),this.getDomNode().style.position="fixed",this._added=!0)}hide(e=!1){this._resizable.clearSashHoverState(),this._added&&(this._editor.removeOverlayWidget(this),this._added=!1,this._anchorBox=void 0,this._topLeft=void 0),e&&(this._userSize=void 0,this.widget.clearContents())}placeAtAnchor(e,t){var i;let n=e.getBoundingClientRect();this._anchorBox=n,this._preferAlignAtTop=t,this._placeAtAnchor(this._anchorBox,null!==(i=this._userSize)&&void 0!==i?i:this.widget.size,t)}_placeAtAnchor(e,t,i){var n;let o,r;let a=s.getClientArea(document.body),l=this.widget.getLayoutInfo(),d=new s.Dimension(220,2*l.lineHeight),h=e.top,c=function(){let i=a.width-(e.left+e.width+l.borderWidth+l.horizontalPadding),n=-l.borderWidth+e.left+e.width,o=new s.Dimension(i,a.height-e.top-l.borderHeight-l.verticalPadding),r=o.with(void 0,e.top+e.height-l.borderHeight-l.verticalPadding);return{top:h,left:n,fit:i-t.width,maxSizeTop:o,maxSizeBottom:r,minSize:d.with(Math.min(i,d.width))}}(),u=function(){let i=e.left-l.borderWidth-l.horizontalPadding,n=Math.max(l.horizontalPadding,e.left-t.width-l.borderWidth),o=new s.Dimension(i,a.height-e.top-l.borderHeight-l.verticalPadding),r=o.with(void 0,e.top+e.height-l.borderHeight-l.verticalPadding);return{top:h,left:n,fit:i-t.width,maxSizeTop:o,maxSizeBottom:r,minSize:d.with(Math.min(i,d.width))}}(),g=[c,u,function(){let i=e.left,n=-l.borderWidth+e.top+e.height,o=new s.Dimension(e.width-l.borderHeight,a.height-e.top-e.height-l.verticalPadding);return{top:n,left:i,fit:o.height-t.height,maxSizeBottom:o,maxSizeTop:o,minSize:d.with(o.width)}}()],m=null!==(n=g.find(e=>e.fit>=0))&&void 0!==n?n:g.sort((e,t)=>t.fit-e.fit)[0],p=e.top+e.height-l.borderHeight,f=t.height,_=Math.max(m.maxSizeTop.height,m.maxSizeBottom.height);f>_&&(f=_),i?f<=m.maxSizeTop.height?(o=!0,r=m.maxSizeTop):(o=!1,r=m.maxSizeBottom):f<=m.maxSizeBottom.height?(o=!1,r=m.maxSizeBottom):(o=!0,r=m.maxSizeTop),this._applyTopLeft({left:m.left,top:o?m.top:p-f}),this.getDomNode().style.position="fixed",this._resizable.enableSashes(!o,m===c,o,m!==c),this._resizable.minSize=m.minSize,this._resizable.maxSize=r,this._resizable.layout(f,Math.min(r.width,t.width)),this.widget.layout(this._resizable.size.width,this._resizable.size.height)}_applyTopLeft(e){this._topLeft=e,this.getDomNode().style.left=`${this._topLeft.left}px`,this.getDomNode().style.top=`${this._topLeft.top}px`}}},123638:function(e,t,i){"use strict";i.r(t);var n=i("467518"),o=i("871628"),s=i("670691"),r=i("919527"),a=i("207875"),l=i("266763");i("122731");var d=i("159923"),h=i("416637"),c=i("599599"),u=i("732288"),g=i("73835"),m=i("810870"),p=i("863636"),f=i("88936"),_=i("443048"),v=i("153142"),C=i("708339"),b=i("753861"),S=i("706301"),w=i("180204"),D=i("479895"),y=i("338842"),L=i("662153"),I=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r},E=function(e,t){return function(i,n){t(i,n,e)}},x=function(e,t,i,n){return new(i||(i=Promise))(function(o,s){function r(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?o(e.value):((t=e.value)instanceof i?t:new i(function(e){e(t)})).then(r,a)}l((n=n.apply(e,t||[])).next())})};let N=(0,y.registerIcon)("extensions-warning-message",o.Codicon.warning,C.localize("warningIcon","Icon shown with a warning message in the extensions editor.")),M=class extends r.Disposable{constructor(e,t,i,n){super(),this._editor=e,this._editorWorkerService=t,this._workspaceTrustService=i,this._highlighter=null,this._bannerClosed=!1,this._updateState=e=>{if(e&&e.hasMore){let t;if(this._bannerClosed)return;let i=Math.max(e.ambiguousCharacterCount,e.nonBasicAsciiCharacterCount,e.invisibleCharacterCount);if(e.nonBasicAsciiCharacterCount>=i)t={message:C.localize("unicodeHighlighting.thisDocumentHasManyNonBasicAsciiUnicodeCharacters","This document contains many non-basic ASCII unicode characters"),command:new B};else if(e.ambiguousCharacterCount>=i)t={message:C.localize("unicodeHighlighting.thisDocumentHasManyAmbiguousUnicodeCharacters","This document contains many ambiguous unicode characters"),command:new W};else if(e.invisibleCharacterCount>=i)t={message:C.localize("unicodeHighlighting.thisDocumentHasManyInvisibleUnicodeCharacters","This document contains many invisible unicode characters"),command:new H};else throw Error("Unreachable");this._bannerController.show({id:"unicodeHighlightBanner",message:t.message,icon:N,actions:[{label:t.command.shortLabel,href:`command:${t.command.id}`}],onClose:()=>{this._bannerClosed=!0}})}else this._bannerController.hide()},this._bannerController=this._register(n.createInstance(v.BannerController,e)),this._register(this._editor.onDidChangeModel(()=>{this._bannerClosed=!1,this._updateHighlighter()})),this._options=e.getOption(115),this._register(i.onDidChangeTrust(e=>{this._updateHighlighter()})),this._register(e.onDidChangeConfiguration(t=>{t.hasChanged(115)&&(this._options=e.getOption(115),this._updateHighlighter())})),this._updateHighlighter()}dispose(){this._highlighter&&(this._highlighter.dispose(),this._highlighter=null),super.dispose()}_updateHighlighter(){if(this._updateState(null),this._highlighter&&(this._highlighter.dispose(),this._highlighter=null),!this._editor.hasModel())return;let e=function(e,t){return{nonBasicASCII:t.nonBasicASCII===h.inUntrustedWorkspace?!e:t.nonBasicASCII,ambiguousCharacters:t.ambiguousCharacters,invisibleCharacters:t.invisibleCharacters,includeComments:t.includeComments===h.inUntrustedWorkspace?!e:t.includeComments,includeStrings:t.includeStrings===h.inUntrustedWorkspace?!e:t.includeStrings,allowedCharacters:t.allowedCharacters,allowedLocales:t.allowedLocales}}(this._workspaceTrustService.isWorkspaceTrusted(),this._options);if([e.nonBasicASCII,e.ambiguousCharacters,e.invisibleCharacters].every(e=>!1===e))return;let t={nonBasicASCII:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments,includeStrings:e.includeStrings,allowedCodePoints:Object.keys(e.allowedCharacters).map(e=>e.codePointAt(0)),allowedLocales:Object.keys(e.allowedLocales).map(e=>"_os"===e?new Intl.NumberFormat().resolvedOptions().locale:"_vscode"===e?a.language:e)};this._editorWorkerService.canComputeUnicodeHighlights(this._editor.getModel().uri)?this._highlighter=new T(this._editor,t,this._updateState,this._editorWorkerService):this._highlighter=new O(this._editor,t,this._updateState)}getDecorationInfo(e){return this._highlighter?this._highlighter.getDecorationInfo(e):null}};M.ID="editor.contrib.unicodeHighlighter",M=I([E(1,g.IEditorWorkerService),E(2,L.IWorkspaceTrustManagementService),E(3,S.IInstantiationService)],M);let T=class extends r.Disposable{constructor(e,t,i,o){super(),this._editor=e,this._options=t,this._updateState=i,this._editorWorkerService=o,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new n.RunOnceScheduler(()=>this._update(),250)),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}let e=this._model.getVersionId();this._editorWorkerService.computedUnicodeHighlights(this._model.uri,this._options).then(t=>{if(this._model.isDisposed()||this._model.getVersionId()!==e)return;this._updateState(t);let i=[];if(!t.hasMore)for(let e of t.ranges)i.push({range:e,options:z.instance.getDecorationFromOptions(this._options)});this._decorations.set(i)})}getDecorationInfo(e){if(!this._decorations.has(e))return null;let t=this._editor.getModel();return(0,p.isModelDecorationVisible)(t,e)?{reason:A(t.getValueInRange(e.range),this._options),inComment:(0,p.isModelDecorationInComment)(t,e),inString:(0,p.isModelDecorationInString)(t,e)}:null}};T=I([E(3,g.IEditorWorkerService)],T);class O extends r.Disposable{constructor(e,t,i){super(),this._editor=e,this._options=t,this._updateState=i,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new n.RunOnceScheduler(()=>this._update(),250)),this._register(this._editor.onDidLayoutChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidScrollChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeHiddenAreas(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}let e=this._editor.getVisibleRanges(),t=[],i={ranges:[],ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0,hasMore:!1};for(let t of e){let e=u.UnicodeTextModelHighlighter.computeUnicodeHighlights(this._model,this._options,t);for(let t of e.ranges)i.ranges.push(t);i.ambiguousCharacterCount+=i.ambiguousCharacterCount,i.invisibleCharacterCount+=i.invisibleCharacterCount,i.nonBasicAsciiCharacterCount+=i.nonBasicAsciiCharacterCount,i.hasMore=i.hasMore||e.hasMore}if(!i.hasMore)for(let e of i.ranges)t.push({range:e,options:z.instance.getDecorationFromOptions(this._options)});this._updateState(i),this._decorations.set(t)}getDecorationInfo(e){if(!this._decorations.has(e))return null;let t=this._editor.getModel(),i=t.getValueInRange(e.range);return(0,p.isModelDecorationVisible)(t,e)?{reason:A(i,this._options),inComment:(0,p.isModelDecorationInComment)(t,e),inString:(0,p.isModelDecorationInString)(t,e)}:null}}let k=class{constructor(e,t,i){this._editor=e,this._languageService=t,this._openerService=i,this.hoverOrdinal=4}computeSync(e,t){if(!this._editor.hasModel()||1!==e.type)return[];let i=this._editor.getModel(),n=this._editor.getContribution(M.ID);if(!n)return[];let o=[],r=300;for(let e of t){let t;let a=n.getDecorationInfo(e);if(!a)continue;let l=i.getValueInRange(e.range).codePointAt(0),d=R(l);switch(a.reason.kind){case 0:t=C.localize("unicodeHighlight.characterIsAmbiguous","The character {0} could be confused with the character {1}, which is more common in source code.",d,R(a.reason.confusableWith.codePointAt(0)));break;case 1:t=C.localize("unicodeHighlight.characterIsInvisible","The character {0} is invisible.",d);break;case 2:t=C.localize("unicodeHighlight.characterIsNonBasicAscii","The character {0} is not a basic ASCII character.",d)}let h={codePoint:l,reason:a.reason,inComment:a.inComment,inString:a.inString},c=C.localize("unicodeHighlight.adjustSettings","Adjust settings"),u=`command:${j.ID}?${encodeURIComponent(JSON.stringify(h))}`,g=new s.MarkdownString("",!0).appendMarkdown(t).appendText(" ").appendLink(u,c);o.push(new _.MarkdownHover(this,e.range,[g],r++))}return o}renderHoverParts(e,t){return(0,_.renderMarkdownHovers)(e,t,this._editor,this._languageService,this._openerService)}};function P(e){return`U+${e.toString(16).padStart(4,"0")}`}function R(e){let t=`\`${P(e)}\``;return!l.InvisibleCharacters.isInvisibleCharacter(e)&&(t+=` "${function(e){return 96===e?"`` ` ``":"`"+String.fromCodePoint(e)+"`"}(e)}"`),t}k=I([E(1,m.ILanguageService),E(2,w.IOpenerService)],k);function A(e,t){return u.UnicodeTextModelHighlighter.computeUnicodeHighlightReason(e,t)}class z{constructor(){this.map=new Map}getDecorationFromOptions(e){return this.getDecoration(!e.includeComments,!e.includeStrings)}getDecoration(e,t){let i=`${e}${t}`,n=this.map.get(i);return!n&&(n=c.ModelDecorationOptions.createDynamic({description:"unicode-highlight",stickiness:1,className:"unicode-highlight",showIfCollapsed:!0,overviewRuler:null,minimap:null,hideInCommentTokens:e,hideInStringTokens:t}),this.map.set(i,n)),n}}z.instance=new z;class F extends d.EditorAction{constructor(){super({id:W.ID,label:C.localize("action.unicodeHighlight.disableHighlightingInComments","Disable highlighting of characters in comments"),alias:"Disable highlighting of characters in comments",precondition:void 0}),this.shortLabel=C.localize("unicodeHighlight.disableHighlightingInComments.shortLabel","Disable Highlight In Comments")}run(e,t,i){return x(this,void 0,void 0,function*(){let t=null==e?void 0:e.get(b.IConfigurationService);t&&this.runAction(t)})}runAction(e){return x(this,void 0,void 0,function*(){yield e.updateValue(h.unicodeHighlightConfigKeys.includeComments,!1,2)})}}class V extends d.EditorAction{constructor(){super({id:W.ID,label:C.localize("action.unicodeHighlight.disableHighlightingInStrings","Disable highlighting of characters in strings"),alias:"Disable highlighting of characters in strings",precondition:void 0}),this.shortLabel=C.localize("unicodeHighlight.disableHighlightingInStrings.shortLabel","Disable Highlight In Strings")}run(e,t,i){return x(this,void 0,void 0,function*(){let t=null==e?void 0:e.get(b.IConfigurationService);t&&this.runAction(t)})}runAction(e){return x(this,void 0,void 0,function*(){yield e.updateValue(h.unicodeHighlightConfigKeys.includeStrings,!1,2)})}}class W extends d.EditorAction{constructor(){super({id:W.ID,label:C.localize("action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters","Disable highlighting of ambiguous characters"),alias:"Disable highlighting of ambiguous characters",precondition:void 0}),this.shortLabel=C.localize("unicodeHighlight.disableHighlightingOfAmbiguousCharacters.shortLabel","Disable Ambiguous Highlight")}run(e,t,i){return x(this,void 0,void 0,function*(){let t=null==e?void 0:e.get(b.IConfigurationService);t&&this.runAction(t)})}runAction(e){return x(this,void 0,void 0,function*(){yield e.updateValue(h.unicodeHighlightConfigKeys.ambiguousCharacters,!1,2)})}}W.ID="editor.action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters";class H extends d.EditorAction{constructor(){super({id:H.ID,label:C.localize("action.unicodeHighlight.disableHighlightingOfInvisibleCharacters","Disable highlighting of invisible characters"),alias:"Disable highlighting of invisible characters",precondition:void 0}),this.shortLabel=C.localize("unicodeHighlight.disableHighlightingOfInvisibleCharacters.shortLabel","Disable Invisible Highlight")}run(e,t,i){return x(this,void 0,void 0,function*(){let t=null==e?void 0:e.get(b.IConfigurationService);t&&this.runAction(t)})}runAction(e){return x(this,void 0,void 0,function*(){yield e.updateValue(h.unicodeHighlightConfigKeys.invisibleCharacters,!1,2)})}}H.ID="editor.action.unicodeHighlight.disableHighlightingOfInvisibleCharacters";class B extends d.EditorAction{constructor(){super({id:B.ID,label:C.localize("action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters","Disable highlighting of non basic ASCII characters"),alias:"Disable highlighting of non basic ASCII characters",precondition:void 0}),this.shortLabel=C.localize("unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters.shortLabel","Disable Non ASCII Highlight")}run(e,t,i){return x(this,void 0,void 0,function*(){let t=null==e?void 0:e.get(b.IConfigurationService);t&&this.runAction(t)})}runAction(e){return x(this,void 0,void 0,function*(){yield e.updateValue(h.unicodeHighlightConfigKeys.nonBasicASCII,!1,2)})}}B.ID="editor.action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters";class j extends d.EditorAction{constructor(){super({id:j.ID,label:C.localize("action.unicodeHighlight.showExcludeOptions","Show Exclude Options"),alias:"Show Exclude Options",precondition:void 0})}run(e,t,i){return x(this,void 0,void 0,function*(){var t;let{codePoint:n,reason:o,inString:s,inComment:r}=i,a=String.fromCodePoint(n),d=e.get(D.IQuickInputService),c=e.get(b.IConfigurationService),u=[];if(0===o.kind)for(let e of o.notAmbiguousInLocales)u.push({label:C.localize("unicodeHighlight.allowCommonCharactersInLanguage",'Allow unicode characters that are more common in the language "{0}".',e),run:()=>x(this,void 0,void 0,function*(){(function(e,t){var i;x(this,void 0,void 0,function*(){let n;let o=null===(i=e.inspect(h.unicodeHighlightConfigKeys.allowedLocales).user)||void 0===i?void 0:i.value;for(let e of(n="object"==typeof o&&o?Object.assign({},o):{},t))n[e]=!0;yield e.updateValue(h.unicodeHighlightConfigKeys.allowedLocales,n,2)})})(c,[e])})});if(u.push({label:(t=n,l.InvisibleCharacters.isInvisibleCharacter(t)?C.localize("unicodeHighlight.excludeInvisibleCharFromBeingHighlighted","Exclude {0} (invisible character) from being highlighted",P(t)):C.localize("unicodeHighlight.excludeCharFromBeingHighlighted","Exclude {0} from being highlighted",`${P(t)} "${a}"`)),run:()=>(function(e,t){return x(this,void 0,void 0,function*(){let i;let n=e.getValue(h.unicodeHighlightConfigKeys.allowedCharacters);for(let e of(i="object"==typeof n&&n?n:{},t))i[String.fromCodePoint(e)]=!0;yield e.updateValue(h.unicodeHighlightConfigKeys.allowedCharacters,i,2)})})(c,[n])}),r){let e=new F;u.push({label:e.label,run:()=>x(this,void 0,void 0,function*(){return e.runAction(c)})})}else if(s){let e=new V;u.push({label:e.label,run:()=>x(this,void 0,void 0,function*(){return e.runAction(c)})})}if(0===o.kind){let e=new W;u.push({label:e.label,run:()=>x(this,void 0,void 0,function*(){return e.runAction(c)})})}else if(1===o.kind){let e=new H;u.push({label:e.label,run:()=>x(this,void 0,void 0,function*(){return e.runAction(c)})})}else if(2===o.kind){let e=new B;u.push({label:e.label,run:()=>x(this,void 0,void 0,function*(){return e.runAction(c)})})}else(function(e){throw Error(`Unexpected value: ${e}`)})(o);let g=yield d.pick(u,{title:C.localize("unicodeHighlight.configureUnicodeHighlightOptions","Configure Unicode Highlight Options")});g&&(yield g.run())})}}j.ID="editor.action.unicodeHighlight.showExcludeOptions";(0,d.registerEditorAction)(W),(0,d.registerEditorAction)(H),(0,d.registerEditorAction)(B),(0,d.registerEditorAction)(j),(0,d.registerEditorContribution)(M.ID,M),f.HoverParticipantRegistry.register(k)},5117:function(e,t,i){"use strict";i.r(t);var n=i("467518"),o=i("919527"),s=i("159923"),r=i("779169"),a=i("357233"),l=i("314098"),d=i("141666"),h=i("753861"),c=i("439703"),u=i("200144"),g=i("130039"),m=i("678540"),p=function(e,t){return function(i,n){t(i,n,e)}};let f=class extends o.Disposable{constructor(e,t,i,o,s,r){super(),this._modelService=t,this._themeService=i,this._configurationService=o,this._editor=e,this._provider=r.documentRangeSemanticTokensProvider,this._debounceInformation=s.for(this._provider,"DocumentRangeSemanticTokens",{min:100,max:500}),this._tokenizeViewport=this._register(new n.RunOnceScheduler(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[];let a=()=>{this._editor.hasModel()&&this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))};this._register(this._editor.onDidScrollChange(()=>{a()})),this._register(this._editor.onDidChangeModel(()=>{this._cancelAll(),a()})),this._register(this._editor.onDidChangeModelContent(e=>{this._cancelAll(),a()})),this._register(this._provider.onDidChange(()=>{this._cancelAll(),a()})),this._register(this._configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(l.SEMANTIC_HIGHLIGHTING_SETTING_ID)&&(this._cancelAll(),a())})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),a()}))}_cancelAll(){for(let e of this._outstandingRequests)e.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(e){for(let t=0,i=this._outstandingRequests.length;t<i;t++)if(this._outstandingRequests[t]===e){this._outstandingRequests.splice(t,1);return}}_tokenizeViewportNow(){if(!this._editor.hasModel())return;let e=this._editor.getModel();if(e.tokenization.hasCompleteSemanticTokens())return;if(!(0,l.isSemanticColoringEnabled)(e,this._themeService,this._configurationService)||!(0,r.hasDocumentRangeSemanticTokensProvider)(this._provider,e)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}let t=this._editor.getVisibleRangesPlusViewportAboveBelow();this._outstandingRequests=this._outstandingRequests.concat(t.map(t=>this._requestRange(e,t)))}_requestRange(e,t){let i=e.getVersionId(),o=(0,n.createCancelablePromise)(i=>Promise.resolve((0,r.getDocumentRangeSemanticTokens)(this._provider,e,t,i))),s=new g.StopWatch(!1);return o.then(n=>{if(this._debounceInformation.update(e,s.elapsed()),!n||!n.tokens||e.isDisposed()||e.getVersionId()!==i)return;let{provider:o,tokens:r}=n,a=this._modelService.getSemanticTokensProviderStyling(o);e.tokenization.setPartialSemanticTokens(t,(0,d.toMultilineTokens2)(r,a,e.getLanguageId()))}).then(()=>this._removeOutstandingRequest(o),()=>this._removeOutstandingRequest(o)),o}};f.ID="editor.contrib.viewportSemanticTokens",f=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([p(1,a.IModelService),p(2,c.IThemeService),p(3,h.IConfigurationService),p(4,u.ILanguageFeatureDebounceService),p(5,m.ILanguageFeaturesService)],f),(0,s.registerEditorContribution)(f.ID,f)},92512:function(e,t,i){"use strict";i.r(t),i.d(t,{ContextMenuHandler:function(){return h}});var n=i("409737"),o=i("919219"),s=i("392924"),r=i("431453"),a=i("161111"),l=i("919527"),d=i("117882");class h{constructor(e,t,i,n,o){this.contextViewService=e,this.telemetryService=t,this.notificationService=i,this.keybindingService=n,this.themeService=o,this.focusToReturn=null,this.block=null,this.options={blockMouse:!0}}configure(e){this.options=e}showContextMenu(e){let t;let i=e.getActions();if(!i.length)return;this.focusToReturn=document.activeElement;let a=(0,n.isHTMLElement)(e.domForShadowRoot)?e.domForShadowRoot:void 0;this.contextViewService.showContextView({getAnchor:()=>e.getAnchor(),canRelayout:!1,anchorAlignment:e.anchorAlignment,anchorAxisAlignment:e.anchorAxisAlignment,render:a=>{let h=e.getMenuClassName?e.getMenuClassName():"";h&&(a.className+=" "+h),this.options.blockMouse&&(this.block=a.appendChild((0,n.$)(".context-view-block")),this.block.style.position="fixed",this.block.style.cursor="initial",this.block.style.left="0",this.block.style.top="0",this.block.style.width="100%",this.block.style.height="100%",this.block.style.zIndex="-1",(0,n.addDisposableListener)(this.block,n.EventType.MOUSE_DOWN,e=>e.stopPropagation()));let c=new l.DisposableStore,u=e.actionRunner||new r.ActionRunner;return u.onBeforeRun(this.onActionRun,this,c),u.onDidRun(this.onDidActionRun,this,c),t=new s.Menu(a,i,{actionViewItemProvider:e.getActionViewItem,context:e.getActionsContext?e.getActionsContext():null,actionRunner:u,getKeyBinding:e.getKeyBinding?e.getKeyBinding:e=>this.keybindingService.lookupKeybinding(e.id)}),c.add((0,d.attachMenuStyler)(t,this.themeService)),t.onDidCancel(()=>this.contextViewService.hideContextView(!0),null,c),t.onDidBlur(()=>this.contextViewService.hideContextView(!0),null,c),c.add((0,n.addDisposableListener)(window,n.EventType.BLUR,()=>this.contextViewService.hideContextView(!0))),c.add((0,n.addDisposableListener)(window,n.EventType.MOUSE_DOWN,e=>{if(e.defaultPrevented)return;let t=new o.StandardMouseEvent(e),i=t.target;if(!t.rightButton){for(;i;){if(i===a)return;i=i.parentElement}this.contextViewService.hideContextView(!0)}})),(0,l.combinedDisposable)(c,t)},focus:()=>{null==t||t.focus(!!e.autoSelectFirstItem)},onHide:t=>{var i;null===(i=e.onHide)||void 0===i||i.call(e,!!t),this.block&&(this.block.remove(),this.block=null),this.focusToReturn&&this.focusToReturn.focus()}},a,!!a)}onActionRun(e){this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1),this.focusToReturn&&this.focusToReturn.focus()}onDidActionRun(e){e.error&&!(0,a.isCancellationError)(e.error)&&this.notificationService.error(e.error)}}},382997:function(e,t,i){"use strict";i.r(t),i.d(t,{IListService:function(){return I},ListService:function(){return E},WorkbenchAsyncDataTree:function(){return em},WorkbenchList:function(){return eo},WorkbenchListFocusContextKey:function(){return M},WorkbenchTreeElementCanCollapse:function(){return A},WorkbenchTreeElementCanExpand:function(){return F}});var n=i("409737"),o=i("211102"),s=i("849482"),r=i("769552"),a=i("855498"),l=i("321311"),d=i("785976"),h=i("879730"),c=i("916904"),u=i("919527"),g=i("708339"),m=i("753861"),p=i("691125"),f=i("549436"),_=i("16081"),v=i("158935"),C=i("706301"),b=i("534752"),S=i("112721"),w=i("117882"),D=i("439703"),y=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r},L=function(e,t){return function(i,n){t(i,n,e)}};let I=(0,C.createDecorator)("listService"),E=class{constructor(e){this._themeService=e,this.disposables=new u.DisposableStore,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}get lastFocusedList(){return this._lastFocusedWidget}setLastFocusedList(e){var t,i;e!==this._lastFocusedWidget&&(null===(t=this._lastFocusedWidget)||void 0===t||t.getHTMLElement().classList.remove("last-focused"),this._lastFocusedWidget=e,null===(i=this._lastFocusedWidget)||void 0===i||i.getHTMLElement().classList.add("last-focused"))}register(e,t){if(!this._hasCreatedStyleController){this._hasCreatedStyleController=!0;let e=new s.DefaultStyleController((0,n.createStyleSheet)(),"");this.disposables.add((0,w.attachListStyler)(e,this._themeService))}if(this.lists.some(t=>t.widget===e))throw Error("Cannot register the same widget multiple times");let i={widget:e,extraContextKeys:t};return this.lists.push(i),e.getHTMLElement()===document.activeElement&&this.setLastFocusedList(e),(0,u.combinedDisposable)(e.onDidFocus(()=>this.setLastFocusedList(e)),(0,u.toDisposable)(()=>this.lists.splice(this.lists.indexOf(i),1)),e.onDidDispose(()=>{this.lists=this.lists.filter(e=>e!==i),this._lastFocusedWidget===e&&this.setLastFocusedList(void 0)}))}dispose(){this.disposables.dispose()}};E=y([L(0,D.IThemeService)],E);let x=new f.RawContextKey("listFocus",!0),N=new f.RawContextKey("listSupportsMultiselect",!0),M=f.ContextKeyExpr.and(x,f.ContextKeyExpr.not(_.InputFocusedContextKey)),T=new f.RawContextKey("listHasSelectionOrFocus",!1),O=new f.RawContextKey("listDoubleSelection",!1),k=new f.RawContextKey("listMultiSelection",!1),P=new f.RawContextKey("listSelectionNavigation",!1),R=new f.RawContextKey("listSupportsFind",!0),A=new f.RawContextKey("treeElementCanCollapse",!1),z=new f.RawContextKey("treeElementHasParent",!1),F=new f.RawContextKey("treeElementCanExpand",!1),V=new f.RawContextKey("treeElementHasChild",!1),W=new f.RawContextKey("treeFindOpen",!1),H="listTypeNavigationMode",B="listAutomaticKeyboardNavigation";function j(e,t){let i=e.createScoped(t.getHTMLElement());return x.bindTo(i),i}let K="workbench.list.multiSelectModifier",U="workbench.list.openMode",$="workbench.list.horizontalScrolling",Q="workbench.list.defaultFindMode",G="workbench.list.keyboardNavigation",q="workbench.tree.indent",Y="workbench.tree.renderIndentGuides",Z="workbench.list.smoothScrolling",X="workbench.list.mouseWheelScrollSensitivity",J="workbench.list.fastScrollSensitivity",ee="workbench.tree.expandMode";function et(e){return"alt"===e.getValue(K)}class ei extends u.Disposable{constructor(e){super(),this.configurationService=e,this.useAltAsMultipleSelectionModifier=et(e),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(K)&&(this.useAltAsMultipleSelectionModifier=et(this.configurationService))}))}isSelectionSingleChangeEvent(e){return this.useAltAsMultipleSelectionModifier?e.browserEvent.altKey:(0,s.isSelectionSingleChangeEvent)(e)}isSelectionRangeChangeEvent(e){return(0,s.isSelectionRangeChangeEvent)(e)}}function en(e,t){var i;let n=e.get(m.IConfigurationService),o=e.get(b.IKeybindingService),s=new u.DisposableStore;return[Object.assign(Object.assign({},t),{keyboardNavigationDelegate:{mightProducePrintableCharacter:e=>o.mightProducePrintableCharacter(e)},smoothScrolling:!!n.getValue(Z),mouseWheelScrollSensitivity:n.getValue(X),fastScrollSensitivity:n.getValue(J),multipleSelectionController:null!==(i=t.multipleSelectionController)&&void 0!==i?i:s.add(new ei(n)),keyboardNavigationEventFilter:function(e){let t=!1;return i=>{if(i.toKeybinding().isModifierKey())return!1;if(t)return t=!1,!1;let n=e.softDispatch(i,i.target);return(null==n?void 0:n.enterChord)?(t=!0,!1):(t=!1,!n)}}(o)}),s]}let eo=class extends s.List{constructor(e,t,i,n,o,s,r,a,l,d){let h=void 0!==o.horizontalScrolling?o.horizontalScrolling:!!l.getValue($),[c,u]=d.invokeFunction(en,o);super(e,t,i,n,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},(0,w.computeStyles)(a.getColorTheme(),w.defaultListStyles)),c),{horizontalScrolling:h})),this.disposables.add(u),this.contextKeyService=j(s,this),this.themeService=a,this.listSupportsMultiSelect=N.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==o.multipleSelectionSupport),P.bindTo(this.contextKeyService).set(!!o.selectionNavigation),this.listHasSelectionOrFocus=T.bindTo(this.contextKeyService),this.listDoubleSelection=O.bindTo(this.contextKeyService),this.listMultiSelection=k.bindTo(this.contextKeyService),this.horizontalScrolling=o.horizontalScrolling,this._useAltAsMultipleSelectionModifier=et(l),this.disposables.add(this.contextKeyService),this.disposables.add(r.register(this)),o.overrideStyles&&this.updateStyles(o.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{let e=this.getSelection(),t=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(e.length>0||t.length>0),this.listMultiSelection.set(e.length>1),this.listDoubleSelection.set(2===e.length)})})),this.disposables.add(this.onDidChangeFocus(()=>{let e=this.getSelection(),t=this.getFocus();this.listHasSelectionOrFocus.set(e.length>0||t.length>0)})),this.disposables.add(l.onDidChangeConfiguration(e=>{e.affectsConfiguration(K)&&(this._useAltAsMultipleSelectionModifier=et(l));let t={};if(e.affectsConfiguration($)&&void 0===this.horizontalScrolling){let e=!!l.getValue($);t=Object.assign(Object.assign({},t),{horizontalScrolling:e})}if(e.affectsConfiguration(Z)){let e=!!l.getValue(Z);t=Object.assign(Object.assign({},t),{smoothScrolling:e})}if(e.affectsConfiguration(X)){let e=l.getValue(X);t=Object.assign(Object.assign({},t),{mouseWheelScrollSensitivity:e})}if(e.affectsConfiguration(J)){let e=l.getValue(J);t=Object.assign(Object.assign({},t),{fastScrollSensitivity:e})}Object.keys(t).length>0&&this.updateOptions(t)})),this.navigator=new el(this,Object.assign({configurationService:l},o)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles&&this.updateStyles(e.overrideStyles),void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){var t;null===(t=this._styler)||void 0===t||t.dispose(),this._styler=(0,w.attachListStyler)(this,this.themeService,e)}dispose(){var e;null===(e=this._styler)||void 0===e||e.dispose(),super.dispose()}};eo=y([L(5,f.IContextKeyService),L(6,I),L(7,D.IThemeService),L(8,m.IConfigurationService),L(9,C.IInstantiationService)],eo);let es=class extends o.PagedList{constructor(e,t,i,n,o,s,r,a,l,d){let h=void 0!==o.horizontalScrolling?o.horizontalScrolling:!!l.getValue($),[c,g]=d.invokeFunction(en,o);super(e,t,i,n,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},(0,w.computeStyles)(a.getColorTheme(),w.defaultListStyles)),c),{horizontalScrolling:h})),this.disposables=new u.DisposableStore,this.disposables.add(g),this.contextKeyService=j(s,this),this.themeService=a,this.horizontalScrolling=o.horizontalScrolling,this.listSupportsMultiSelect=N.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==o.multipleSelectionSupport),P.bindTo(this.contextKeyService).set(!!o.selectionNavigation),this._useAltAsMultipleSelectionModifier=et(l),this.disposables.add(this.contextKeyService),this.disposables.add(r.register(this)),o.overrideStyles&&this.updateStyles(o.overrideStyles),o.overrideStyles&&this.disposables.add((0,w.attachListStyler)(this,a,o.overrideStyles)),this.disposables.add(l.onDidChangeConfiguration(e=>{e.affectsConfiguration(K)&&(this._useAltAsMultipleSelectionModifier=et(l));let t={};if(e.affectsConfiguration($)&&void 0===this.horizontalScrolling){let e=!!l.getValue($);t=Object.assign(Object.assign({},t),{horizontalScrolling:e})}if(e.affectsConfiguration(Z)){let e=!!l.getValue(Z);t=Object.assign(Object.assign({},t),{smoothScrolling:e})}if(e.affectsConfiguration(X)){let e=l.getValue(X);t=Object.assign(Object.assign({},t),{mouseWheelScrollSensitivity:e})}if(e.affectsConfiguration(J)){let e=l.getValue(J);t=Object.assign(Object.assign({},t),{fastScrollSensitivity:e})}Object.keys(t).length>0&&this.updateOptions(t)})),this.navigator=new el(this,Object.assign({configurationService:l},o)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles&&this.updateStyles(e.overrideStyles),void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){var t;null===(t=this._styler)||void 0===t||t.dispose(),this._styler=(0,w.attachListStyler)(this,this.themeService,e)}dispose(){var e;null===(e=this._styler)||void 0===e||e.dispose(),this.disposables.dispose(),super.dispose()}};es=y([L(5,f.IContextKeyService),L(6,I),L(7,D.IThemeService),L(8,m.IConfigurationService),L(9,C.IInstantiationService)],es);let er=class extends r.Table{constructor(e,t,i,n,o,s,r,a,l,d,h){let c=void 0!==s.horizontalScrolling?s.horizontalScrolling:!!d.getValue($),[u,g]=h.invokeFunction(en,s);super(e,t,i,n,o,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},(0,w.computeStyles)(l.getColorTheme(),w.defaultListStyles)),u),{horizontalScrolling:c})),this.disposables.add(g),this.contextKeyService=j(r,this),this.themeService=l,this.listSupportsMultiSelect=N.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==s.multipleSelectionSupport),P.bindTo(this.contextKeyService).set(!!s.selectionNavigation),this.listHasSelectionOrFocus=T.bindTo(this.contextKeyService),this.listDoubleSelection=O.bindTo(this.contextKeyService),this.listMultiSelection=k.bindTo(this.contextKeyService),this.horizontalScrolling=s.horizontalScrolling,this._useAltAsMultipleSelectionModifier=et(d),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),s.overrideStyles&&this.updateStyles(s.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{let e=this.getSelection(),t=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(e.length>0||t.length>0),this.listMultiSelection.set(e.length>1),this.listDoubleSelection.set(2===e.length)})})),this.disposables.add(this.onDidChangeFocus(()=>{let e=this.getSelection(),t=this.getFocus();this.listHasSelectionOrFocus.set(e.length>0||t.length>0)})),this.disposables.add(d.onDidChangeConfiguration(e=>{e.affectsConfiguration(K)&&(this._useAltAsMultipleSelectionModifier=et(d));let t={};if(e.affectsConfiguration($)&&void 0===this.horizontalScrolling){let e=!!d.getValue($);t=Object.assign(Object.assign({},t),{horizontalScrolling:e})}if(e.affectsConfiguration(Z)){let e=!!d.getValue(Z);t=Object.assign(Object.assign({},t),{smoothScrolling:e})}if(e.affectsConfiguration(X)){let e=d.getValue(X);t=Object.assign(Object.assign({},t),{mouseWheelScrollSensitivity:e})}if(e.affectsConfiguration(J)){let e=d.getValue(J);t=Object.assign(Object.assign({},t),{fastScrollSensitivity:e})}Object.keys(t).length>0&&this.updateOptions(t)})),this.navigator=new ed(this,Object.assign({configurationService:d},s)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles&&this.updateStyles(e.overrideStyles),void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){var t;null===(t=this._styler)||void 0===t||t.dispose(),this._styler=(0,w.attachListStyler)(this,this.themeService,e)}dispose(){var e;null===(e=this._styler)||void 0===e||e.dispose(),this.disposables.dispose(),super.dispose()}};er=y([L(6,f.IContextKeyService),L(7,I),L(8,D.IThemeService),L(9,m.IConfigurationService),L(10,C.IInstantiationService)],er);class ea extends u.Disposable{constructor(e,t){var i;super(),this.widget=e,this._onDidOpen=this._register(new c.Emitter),this.onDidOpen=this._onDidOpen.event,this._register(c.Event.filter(this.widget.onDidChangeSelection,e=>e.browserEvent instanceof KeyboardEvent)(e=>this.onSelectionFromKeyboard(e))),this._register(this.widget.onPointer(e=>this.onPointer(e.element,e.browserEvent))),this._register(this.widget.onMouseDblClick(e=>this.onMouseDblClick(e.element,e.browserEvent))),"boolean"!=typeof(null==t?void 0:t.openOnSingleClick)&&(null==t?void 0:t.configurationService)?(this.openOnSingleClick=(null==t?void 0:t.configurationService.getValue(U))!=="doubleClick",this._register(null==t?void 0:t.configurationService.onDidChangeConfiguration(()=>{this.openOnSingleClick=(null==t?void 0:t.configurationService.getValue(U))!=="doubleClick"}))):this.openOnSingleClick=null===(i=null==t?void 0:t.openOnSingleClick)||void 0===i||i}onSelectionFromKeyboard(e){if(1!==e.elements.length)return;let t=e.browserEvent,i="boolean"!=typeof t.preserveFocus||t.preserveFocus,n="boolean"==typeof t.pinned?t.pinned:!i;this._open(this.getSelectedElement(),i,n,!1,e.browserEvent)}onPointer(e,t){if(!this.openOnSingleClick||2===t.detail)return;let i=1===t.button,n=t.ctrlKey||t.metaKey||t.altKey;this._open(e,!0,i,n,t)}onMouseDblClick(e,t){if(!t)return;let i=t.target;if(i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&t.offsetX<16)return;let n=t.ctrlKey||t.metaKey||t.altKey;this._open(e,!1,!0,n,t)}_open(e,t,i,n,o){e&&this._onDidOpen.fire({editorOptions:{preserveFocus:t,pinned:i,revealIfVisible:!0},sideBySide:n,element:e,browserEvent:o})}}class el extends ea{constructor(e,t){super(e,t),this.widget=e}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class ed extends ea{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class eh extends ea{constructor(e,t){super(e,t)}getSelectedElement(){var e;return null!==(e=this.widget.getSelection()[0])&&void 0!==e?e:void 0}}let ec=class extends h.ObjectTree{constructor(e,t,i,n,o,s,r,a,l,d){let{options:h,getTypeNavigationMode:c,disposable:u}=s.invokeFunction(e_,o);super(e,t,i,n,h),this.disposables.add(u),this.internals=new ev(this,o,c,o.overrideStyles,r,a,l,d),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};ec=y([L(5,C.IInstantiationService),L(6,f.IContextKeyService),L(7,I),L(8,D.IThemeService),L(9,m.IConfigurationService)],ec);let eu=class extends h.CompressibleObjectTree{constructor(e,t,i,n,o,s,r,a,l,d){let{options:h,getTypeNavigationMode:c,disposable:u}=s.invokeFunction(e_,o);super(e,t,i,n,h),this.disposables.add(u),this.internals=new ev(this,o,c,o.overrideStyles,r,a,l,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};eu=y([L(5,C.IInstantiationService),L(6,f.IContextKeyService),L(7,I),L(8,D.IThemeService),L(9,m.IConfigurationService)],eu);let eg=class extends d.DataTree{constructor(e,t,i,n,o,s,r,a,l,d,h){let{options:c,getTypeNavigationMode:u,disposable:g}=r.invokeFunction(e_,s);super(e,t,i,n,o,c),this.disposables.add(g),this.internals=new ev(this,s,u,s.overrideStyles,a,l,d,h),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};eg=y([L(6,C.IInstantiationService),L(7,f.IContextKeyService),L(8,I),L(9,D.IThemeService),L(10,m.IConfigurationService)],eg);let em=class extends l.AsyncDataTree{constructor(e,t,i,n,o,s,r,a,l,d,h){let{options:c,getTypeNavigationMode:u,disposable:g}=r.invokeFunction(e_,s);super(e,t,i,n,o,c),this.disposables.add(g),this.internals=new ev(this,s,u,s.overrideStyles,a,l,d,h),this.disposables.add(this.internals)}get onDidOpen(){return this.internals.onDidOpen}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};em=y([L(6,C.IInstantiationService),L(7,f.IContextKeyService),L(8,I),L(9,D.IThemeService),L(10,m.IConfigurationService)],em);let ep=class extends l.CompressibleAsyncDataTree{constructor(e,t,i,n,o,s,r,a,l,d,h,c){let{options:u,getTypeNavigationMode:g,disposable:m}=a.invokeFunction(e_,r);super(e,t,i,n,o,s,u),this.disposables.add(m),this.internals=new ev(this,r,g,r.overrideStyles,l,d,h,c),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};function ef(e){let t=e.getValue(Q);if("highlight"===t)return a.TreeFindMode.Highlight;if("filter"===t)return a.TreeFindMode.Filter;let i=e.getValue(G);return"simple"===i||"highlight"===i?a.TreeFindMode.Highlight:"filter"===i?a.TreeFindMode.Filter:void 0}function e_(e,t){var i;let n=e.get(m.IConfigurationService),o=e.get(v.IContextViewService),r=e.get(f.IContextKeyService),a=e.get(C.IInstantiationService),l=void 0!==t.horizontalScrolling?t.horizontalScrolling:!!n.getValue($),[d,h]=a.invokeFunction(en,t),c=t.additionalScrollHeight;return{getTypeNavigationMode:()=>{let e=r.getContextKeyValue(H);return"automatic"===e?s.TypeNavigationMode.Automatic:"trigger"===e?s.TypeNavigationMode.Trigger:!1===r.getContextKeyValue(B)?s.TypeNavigationMode.Trigger:void 0},disposable:h,options:Object.assign(Object.assign({keyboardSupport:!1},d),{indent:"number"==typeof n.getValue(q)?n.getValue(q):void 0,renderIndentGuides:n.getValue(Y),smoothScrolling:!!n.getValue(Z),defaultFindMode:ef(n),horizontalScrolling:l,additionalScrollHeight:c,hideTwistiesOfChildlessElements:t.hideTwistiesOfChildlessElements,expandOnlyOnTwistieClick:null!==(i=t.expandOnlyOnTwistieClick)&&void 0!==i?i:"doubleClick"===n.getValue(ee),contextViewProvider:o})}}ep=y([L(7,C.IInstantiationService),L(8,f.IContextKeyService),L(9,I),L(10,D.IThemeService),L(11,m.IConfigurationService)],ep);let ev=class{constructor(e,t,i,n,o,s,r,a){var l;this.tree=e,this.themeService=r,this.disposables=[],this.contextKeyService=j(o,e),this.listSupportsMultiSelect=N.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==t.multipleSelectionSupport),P.bindTo(this.contextKeyService).set(!!t.selectionNavigation),this.listSupportFindWidget=R.bindTo(this.contextKeyService),this.listSupportFindWidget.set(null===(l=t.findWidgetEnabled)||void 0===l||l),this.hasSelectionOrFocus=T.bindTo(this.contextKeyService),this.hasDoubleSelection=O.bindTo(this.contextKeyService),this.hasMultiSelection=k.bindTo(this.contextKeyService),this.treeElementCanCollapse=A.bindTo(this.contextKeyService),this.treeElementHasParent=z.bindTo(this.contextKeyService),this.treeElementCanExpand=F.bindTo(this.contextKeyService),this.treeElementHasChild=V.bindTo(this.contextKeyService),this.treeFindOpen=W.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=et(a),this.updateStyleOverrides(n);let d=()=>{let t=e.getFocus()[0];if(!t)return;let i=e.getNode(t);this.treeElementCanCollapse.set(i.collapsible&&!i.collapsed),this.treeElementHasParent.set(!!e.getParentElement(t)),this.treeElementCanExpand.set(i.collapsible&&i.collapsed),this.treeElementHasChild.set(!!e.getFirstElementChild(t))},h=new Set;h.add(H),h.add(B),this.disposables.push(this.contextKeyService,s.register(e),e.onDidChangeSelection(()=>{let t=e.getSelection(),i=e.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.hasSelectionOrFocus.set(t.length>0||i.length>0),this.hasMultiSelection.set(t.length>1),this.hasDoubleSelection.set(2===t.length)})}),e.onDidChangeFocus(()=>{let t=e.getSelection(),i=e.getFocus();this.hasSelectionOrFocus.set(t.length>0||i.length>0),d()}),e.onDidChangeCollapseState(d),e.onDidChangeModel(d),e.onDidChangeFindOpenState(e=>this.treeFindOpen.set(e)),a.onDidChangeConfiguration(i=>{let n={};if(i.affectsConfiguration(K)&&(this._useAltAsMultipleSelectionModifier=et(a)),i.affectsConfiguration(q)){let e=a.getValue(q);n=Object.assign(Object.assign({},n),{indent:e})}if(i.affectsConfiguration(Y)){let e=a.getValue(Y);n=Object.assign(Object.assign({},n),{renderIndentGuides:e})}if(i.affectsConfiguration(Z)){let e=!!a.getValue(Z);n=Object.assign(Object.assign({},n),{smoothScrolling:e})}if((i.affectsConfiguration(Q)||i.affectsConfiguration(G))&&e.updateOptions({defaultFindMode:ef(a)}),i.affectsConfiguration($)&&void 0===t.horizontalScrolling){let e=!!a.getValue($);n=Object.assign(Object.assign({},n),{horizontalScrolling:e})}if(i.affectsConfiguration(ee)&&void 0===t.expandOnlyOnTwistieClick&&(n=Object.assign(Object.assign({},n),{expandOnlyOnTwistieClick:"doubleClick"===a.getValue(ee)})),i.affectsConfiguration(X)){let e=a.getValue(X);n=Object.assign(Object.assign({},n),{mouseWheelScrollSensitivity:e})}if(i.affectsConfiguration(J)){let e=a.getValue(J);n=Object.assign(Object.assign({},n),{fastScrollSensitivity:e})}Object.keys(n).length>0&&e.updateOptions(n)}),this.contextKeyService.onDidChangeContext(t=>{t.affectsSome(h)&&e.updateOptions({typeNavigationMode:i()})})),this.navigator=new eh(e,Object.assign({configurationService:a},t)),this.disposables.push(this.navigator)}get onDidOpen(){return this.navigator.onDidOpen}updateOptions(e){void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyleOverrides(e){(0,u.dispose)(this.styler),this.styler=e?(0,w.attachListStyler)(this.tree,this.themeService,e):u.Disposable.None}dispose(){this.disposables=(0,u.dispose)(this.disposables),(0,u.dispose)(this.styler),this.styler=void 0}};ev=y([L(4,f.IContextKeyService),L(5,I),L(6,D.IThemeService),L(7,m.IConfigurationService)],ev),S.Registry.as(p.Extensions.Configuration).registerConfiguration({id:"workbench",order:7,title:(0,g.localize)("workbenchConfigurationTitle","Workbench"),type:"object",properties:{[K]:{type:"string",enum:["ctrlCmd","alt"],markdownEnumDescriptions:[(0,g.localize)("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),(0,g.localize)("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:(0,g.localize)({key:"multiSelectModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add 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.")},[U]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:(0,g.localize)({key:"openModeModifier",comment:["`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized."]},"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.")},[$]:{type:"boolean",default:!1,description:(0,g.localize)("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.")},[q]:{type:"number",default:8,minimum:4,maximum:40,description:(0,g.localize)("tree indent setting","Controls tree indentation in pixels.")},[Y]:{type:"string",enum:["none","onHover","always"],default:"onHover",description:(0,g.localize)("render tree indent guides","Controls whether the tree should render indent guides.")},[Z]:{type:"boolean",default:!1,description:(0,g.localize)("list smoothScrolling setting","Controls whether lists and trees have smooth scrolling.")},[X]:{type:"number",default:1,markdownDescription:(0,g.localize)("Mouse Wheel Scroll Sensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")},[J]:{type:"number",default:5,description:(0,g.localize)("Fast Scroll Sensitivity","Scrolling speed multiplier when pressing `Alt`.")},[Q]:{type:"string",enum:["highlight","filter"],enumDescriptions:[(0,g.localize)("defaultFindModeSettingKey.highlight","Highlight elements when searching. Further up and down navigation will traverse only the highlighted elements."),(0,g.localize)("defaultFindModeSettingKey.filter","Filter elements when searching.")],default:"highlight",description:(0,g.localize)("defaultFindModeSettingKey","Controls the default find mode for lists and trees in the workbench.")},[G]:{type:"string",enum:["simple","highlight","filter"],enumDescriptions:[(0,g.localize)("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),(0,g.localize)("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),(0,g.localize)("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:(0,g.localize)("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter."),deprecated:!0,deprecationMessage:(0,g.localize)("keyboardNavigationSettingKeyDeprecated","Please use 'workbench.list.defaultFindMode' instead.")},[ee]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:(0,g.localize)("expand mode","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.")}}})},411249:function(e){},719703:function(e){}}]);
|
|
22
|
+
`,r=new d.MarkdownString().appendCodeblock("empty",t),o=`Provider: ${e.provider._debugDisplayName}`}if(!t&&!p(e)){this.clearContents();return}if(this.domNode.classList.remove("no-docs","no-type"),o){let e=o.length>1e5?`${o.substr(0,1e5)}\u{2026}`:o;this._type.textContent=e,this._type.title=e,s.show(this._type),this._type.classList.toggle("auto-wrap",!/\r?\n^\s+/gmi.test(e))}else s.clearNode(this._type),this._type.title="",s.hide(this._type),this.domNode.classList.add("no-type");if(s.clearNode(this._docs),"string"==typeof r)this._docs.classList.remove("markdown-docs"),this._docs.textContent=r;else if(r){this._docs.classList.add("markdown-docs"),s.clearNode(this._docs);let e=this._markdownRenderer.render(r);this._docs.appendChild(e.element),this._renderDisposeable.add(e),this._renderDisposeable.add(this._markdownRenderer.onDidRenderAsync(()=>{this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}))}this.domNode.style.userSelect="text",this.domNode.tabIndex=-1,this._close.onmousedown=e=>{e.preventDefault(),e.stopPropagation()},this._close.onclick=e=>{e.preventDefault(),e.stopPropagation(),this._onDidClose.fire()},this._body.scrollTop=0,this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}clearContents(){this.domNode.classList.add("no-docs"),this._type.textContent="",this._docs.textContent=""}get size(){return this._size}layout(e,t){let i=new s.Dimension(e,t);!s.Dimension.equals(i,this._size)&&(this._size=i,s.size(this.domNode,e,t)),this._scrollbar.scanDomNode()}scrollDown(e=8){this._body.scrollTop+=e}scrollUp(e=8){this._body.scrollTop-=e}scrollTop(){this._body.scrollTop=0}scrollBottom(){this._body.scrollTop=this._body.scrollHeight}pageDown(){this.scrollDown(80)}pageUp(){this.scrollUp(80)}set borderWidth(e){this._borderWidth=e}get borderWidth(){return this._borderWidth}};f=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([(n=1,o=m.IInstantiationService,function(e,t){o(e,t,1)})],f);class _{constructor(e,t){let i,n;this.widget=e,this._editor=t,this._disposables=new h.DisposableStore,this._added=!1,this._preferAlignAtTop=!0,this._resizable=new u.ResizableHTMLElement,this._resizable.domNode.classList.add("suggest-details-container"),this._resizable.domNode.appendChild(e.domNode),this._resizable.enableSashes(!1,!0,!0,!1);let o=0,s=0;this._disposables.add(this._resizable.onDidWillResize(()=>{i=this._topLeft,n=this._resizable.size})),this._disposables.add(this._resizable.onDidResize(e=>{if(i&&n){this.widget.layout(e.dimension.width,e.dimension.height);let t=!1;e.west&&(s=n.width-e.dimension.width,t=!0),e.north&&(o=n.height-e.dimension.height,t=!0),t&&this._applyTopLeft({top:i.top+o,left:i.left+s})}e.done&&(i=void 0,n=void 0,o=0,s=0,this._userSize=e.dimension)})),this._disposables.add(this.widget.onDidChangeContents(()=>{var e;this._anchorBox&&this._placeAtAnchor(this._anchorBox,null!==(e=this._userSize)&&void 0!==e?e:this.widget.size,this._preferAlignAtTop)}))}dispose(){this._resizable.dispose(),this._disposables.dispose(),this.hide()}getId(){return"suggest.details"}getDomNode(){return this._resizable.domNode}getPosition(){return null}show(){!this._added&&(this._editor.addOverlayWidget(this),this.getDomNode().style.position="fixed",this._added=!0)}hide(e=!1){this._resizable.clearSashHoverState(),this._added&&(this._editor.removeOverlayWidget(this),this._added=!1,this._anchorBox=void 0,this._topLeft=void 0),e&&(this._userSize=void 0,this.widget.clearContents())}placeAtAnchor(e,t){var i;let n=e.getBoundingClientRect();this._anchorBox=n,this._preferAlignAtTop=t,this._placeAtAnchor(this._anchorBox,null!==(i=this._userSize)&&void 0!==i?i:this.widget.size,t)}_placeAtAnchor(e,t,i){var n;let o,r;let a=s.getClientArea(document.body),l=this.widget.getLayoutInfo(),d=new s.Dimension(220,2*l.lineHeight),h=e.top,c=function(){let i=a.width-(e.left+e.width+l.borderWidth+l.horizontalPadding),n=-l.borderWidth+e.left+e.width,o=new s.Dimension(i,a.height-e.top-l.borderHeight-l.verticalPadding),r=o.with(void 0,e.top+e.height-l.borderHeight-l.verticalPadding);return{top:h,left:n,fit:i-t.width,maxSizeTop:o,maxSizeBottom:r,minSize:d.with(Math.min(i,d.width))}}(),u=function(){let i=e.left-l.borderWidth-l.horizontalPadding,n=Math.max(l.horizontalPadding,e.left-t.width-l.borderWidth),o=new s.Dimension(i,a.height-e.top-l.borderHeight-l.verticalPadding),r=o.with(void 0,e.top+e.height-l.borderHeight-l.verticalPadding);return{top:h,left:n,fit:i-t.width,maxSizeTop:o,maxSizeBottom:r,minSize:d.with(Math.min(i,d.width))}}(),g=[c,u,function(){let i=e.left,n=-l.borderWidth+e.top+e.height,o=new s.Dimension(e.width-l.borderHeight,a.height-e.top-e.height-l.verticalPadding);return{top:n,left:i,fit:o.height-t.height,maxSizeBottom:o,maxSizeTop:o,minSize:d.with(o.width)}}()],m=null!==(n=g.find(e=>e.fit>=0))&&void 0!==n?n:g.sort((e,t)=>t.fit-e.fit)[0],p=e.top+e.height-l.borderHeight,f=t.height,_=Math.max(m.maxSizeTop.height,m.maxSizeBottom.height);f>_&&(f=_),i?f<=m.maxSizeTop.height?(o=!0,r=m.maxSizeTop):(o=!1,r=m.maxSizeBottom):f<=m.maxSizeBottom.height?(o=!1,r=m.maxSizeBottom):(o=!0,r=m.maxSizeTop),this._applyTopLeft({left:m.left,top:o?m.top:p-f}),this.getDomNode().style.position="fixed",this._resizable.enableSashes(!o,m===c,o,m!==c),this._resizable.minSize=m.minSize,this._resizable.maxSize=r,this._resizable.layout(f,Math.min(r.width,t.width)),this.widget.layout(this._resizable.size.width,this._resizable.size.height)}_applyTopLeft(e){this._topLeft=e,this.getDomNode().style.left=`${this._topLeft.left}px`,this.getDomNode().style.top=`${this._topLeft.top}px`}}},123638:function(e,t,i){"use strict";i.r(t);var n=i("467518"),o=i("871628"),s=i("670691"),r=i("919527"),a=i("207875"),l=i("266763");i("122731");var d=i("159923"),h=i("416637"),c=i("599599"),u=i("732288"),g=i("73835"),m=i("810870"),p=i("863636"),f=i("88936"),_=i("443048"),v=i("153142"),C=i("708339"),b=i("753861"),S=i("706301"),w=i("180204"),D=i("479895"),y=i("338842"),L=i("662153"),I=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r},E=function(e,t){return function(i,n){t(i,n,e)}},x=function(e,t,i,n){return new(i||(i=Promise))(function(o,s){function r(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){var t;e.done?o(e.value):((t=e.value)instanceof i?t:new i(function(e){e(t)})).then(r,a)}l((n=n.apply(e,t||[])).next())})};let N=(0,y.registerIcon)("extensions-warning-message",o.Codicon.warning,C.localize("warningIcon","Icon shown with a warning message in the extensions editor.")),M=class extends r.Disposable{constructor(e,t,i,n){super(),this._editor=e,this._editorWorkerService=t,this._workspaceTrustService=i,this._highlighter=null,this._bannerClosed=!1,this._updateState=e=>{if(e&&e.hasMore){let t;if(this._bannerClosed)return;let i=Math.max(e.ambiguousCharacterCount,e.nonBasicAsciiCharacterCount,e.invisibleCharacterCount);if(e.nonBasicAsciiCharacterCount>=i)t={message:C.localize("unicodeHighlighting.thisDocumentHasManyNonBasicAsciiUnicodeCharacters","This document contains many non-basic ASCII unicode characters"),command:new B};else if(e.ambiguousCharacterCount>=i)t={message:C.localize("unicodeHighlighting.thisDocumentHasManyAmbiguousUnicodeCharacters","This document contains many ambiguous unicode characters"),command:new W};else if(e.invisibleCharacterCount>=i)t={message:C.localize("unicodeHighlighting.thisDocumentHasManyInvisibleUnicodeCharacters","This document contains many invisible unicode characters"),command:new H};else throw Error("Unreachable");this._bannerController.show({id:"unicodeHighlightBanner",message:t.message,icon:N,actions:[{label:t.command.shortLabel,href:`command:${t.command.id}`}],onClose:()=>{this._bannerClosed=!0}})}else this._bannerController.hide()},this._bannerController=this._register(n.createInstance(v.BannerController,e)),this._register(this._editor.onDidChangeModel(()=>{this._bannerClosed=!1,this._updateHighlighter()})),this._options=e.getOption(115),this._register(i.onDidChangeTrust(e=>{this._updateHighlighter()})),this._register(e.onDidChangeConfiguration(t=>{t.hasChanged(115)&&(this._options=e.getOption(115),this._updateHighlighter())})),this._updateHighlighter()}dispose(){this._highlighter&&(this._highlighter.dispose(),this._highlighter=null),super.dispose()}_updateHighlighter(){if(this._updateState(null),this._highlighter&&(this._highlighter.dispose(),this._highlighter=null),!this._editor.hasModel())return;let e=function(e,t){return{nonBasicASCII:t.nonBasicASCII===h.inUntrustedWorkspace?!e:t.nonBasicASCII,ambiguousCharacters:t.ambiguousCharacters,invisibleCharacters:t.invisibleCharacters,includeComments:t.includeComments===h.inUntrustedWorkspace?!e:t.includeComments,includeStrings:t.includeStrings===h.inUntrustedWorkspace?!e:t.includeStrings,allowedCharacters:t.allowedCharacters,allowedLocales:t.allowedLocales}}(this._workspaceTrustService.isWorkspaceTrusted(),this._options);if([e.nonBasicASCII,e.ambiguousCharacters,e.invisibleCharacters].every(e=>!1===e))return;let t={nonBasicASCII:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments,includeStrings:e.includeStrings,allowedCodePoints:Object.keys(e.allowedCharacters).map(e=>e.codePointAt(0)),allowedLocales:Object.keys(e.allowedLocales).map(e=>"_os"===e?new Intl.NumberFormat().resolvedOptions().locale:"_vscode"===e?a.language:e)};this._editorWorkerService.canComputeUnicodeHighlights(this._editor.getModel().uri)?this._highlighter=new T(this._editor,t,this._updateState,this._editorWorkerService):this._highlighter=new O(this._editor,t,this._updateState)}getDecorationInfo(e){return this._highlighter?this._highlighter.getDecorationInfo(e):null}};M.ID="editor.contrib.unicodeHighlighter",M=I([E(1,g.IEditorWorkerService),E(2,L.IWorkspaceTrustManagementService),E(3,S.IInstantiationService)],M);let T=class extends r.Disposable{constructor(e,t,i,o){super(),this._editor=e,this._options=t,this._updateState=i,this._editorWorkerService=o,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new n.RunOnceScheduler(()=>this._update(),250)),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}let e=this._model.getVersionId();this._editorWorkerService.computedUnicodeHighlights(this._model.uri,this._options).then(t=>{if(this._model.isDisposed()||this._model.getVersionId()!==e)return;this._updateState(t);let i=[];if(!t.hasMore)for(let e of t.ranges)i.push({range:e,options:z.instance.getDecorationFromOptions(this._options)});this._decorations.set(i)})}getDecorationInfo(e){if(!this._decorations.has(e))return null;let t=this._editor.getModel();return(0,p.isModelDecorationVisible)(t,e)?{reason:A(t.getValueInRange(e.range),this._options),inComment:(0,p.isModelDecorationInComment)(t,e),inString:(0,p.isModelDecorationInString)(t,e)}:null}};T=I([E(3,g.IEditorWorkerService)],T);class O extends r.Disposable{constructor(e,t,i){super(),this._editor=e,this._options=t,this._updateState=i,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new n.RunOnceScheduler(()=>this._update(),250)),this._register(this._editor.onDidLayoutChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidScrollChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeHiddenAreas(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}let e=this._editor.getVisibleRanges(),t=[],i={ranges:[],ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0,hasMore:!1};for(let t of e){let e=u.UnicodeTextModelHighlighter.computeUnicodeHighlights(this._model,this._options,t);for(let t of e.ranges)i.ranges.push(t);i.ambiguousCharacterCount+=i.ambiguousCharacterCount,i.invisibleCharacterCount+=i.invisibleCharacterCount,i.nonBasicAsciiCharacterCount+=i.nonBasicAsciiCharacterCount,i.hasMore=i.hasMore||e.hasMore}if(!i.hasMore)for(let e of i.ranges)t.push({range:e,options:z.instance.getDecorationFromOptions(this._options)});this._updateState(i),this._decorations.set(t)}getDecorationInfo(e){if(!this._decorations.has(e))return null;let t=this._editor.getModel(),i=t.getValueInRange(e.range);return(0,p.isModelDecorationVisible)(t,e)?{reason:A(i,this._options),inComment:(0,p.isModelDecorationInComment)(t,e),inString:(0,p.isModelDecorationInString)(t,e)}:null}}let k=class{constructor(e,t,i){this._editor=e,this._languageService=t,this._openerService=i,this.hoverOrdinal=4}computeSync(e,t){if(!this._editor.hasModel()||1!==e.type)return[];let i=this._editor.getModel(),n=this._editor.getContribution(M.ID);if(!n)return[];let o=[],r=300;for(let e of t){let t;let a=n.getDecorationInfo(e);if(!a)continue;let l=i.getValueInRange(e.range).codePointAt(0),d=P(l);switch(a.reason.kind){case 0:t=C.localize("unicodeHighlight.characterIsAmbiguous","The character {0} could be confused with the character {1}, which is more common in source code.",d,P(a.reason.confusableWith.codePointAt(0)));break;case 1:t=C.localize("unicodeHighlight.characterIsInvisible","The character {0} is invisible.",d);break;case 2:t=C.localize("unicodeHighlight.characterIsNonBasicAscii","The character {0} is not a basic ASCII character.",d)}let h={codePoint:l,reason:a.reason,inComment:a.inComment,inString:a.inString},c=C.localize("unicodeHighlight.adjustSettings","Adjust settings"),u=`command:${j.ID}?${encodeURIComponent(JSON.stringify(h))}`,g=new s.MarkdownString("",!0).appendMarkdown(t).appendText(" ").appendLink(u,c);o.push(new _.MarkdownHover(this,e.range,[g],r++))}return o}renderHoverParts(e,t){return(0,_.renderMarkdownHovers)(e,t,this._editor,this._languageService,this._openerService)}};function R(e){return`U+${e.toString(16).padStart(4,"0")}`}function P(e){let t=`\`${R(e)}\``;return!l.InvisibleCharacters.isInvisibleCharacter(e)&&(t+=` "${function(e){return 96===e?"`` ` ``":"`"+String.fromCodePoint(e)+"`"}(e)}"`),t}k=I([E(1,m.ILanguageService),E(2,w.IOpenerService)],k);function A(e,t){return u.UnicodeTextModelHighlighter.computeUnicodeHighlightReason(e,t)}class z{constructor(){this.map=new Map}getDecorationFromOptions(e){return this.getDecoration(!e.includeComments,!e.includeStrings)}getDecoration(e,t){let i=`${e}${t}`,n=this.map.get(i);return!n&&(n=c.ModelDecorationOptions.createDynamic({description:"unicode-highlight",stickiness:1,className:"unicode-highlight",showIfCollapsed:!0,overviewRuler:null,minimap:null,hideInCommentTokens:e,hideInStringTokens:t}),this.map.set(i,n)),n}}z.instance=new z;class F extends d.EditorAction{constructor(){super({id:W.ID,label:C.localize("action.unicodeHighlight.disableHighlightingInComments","Disable highlighting of characters in comments"),alias:"Disable highlighting of characters in comments",precondition:void 0}),this.shortLabel=C.localize("unicodeHighlight.disableHighlightingInComments.shortLabel","Disable Highlight In Comments")}run(e,t,i){return x(this,void 0,void 0,function*(){let t=null==e?void 0:e.get(b.IConfigurationService);t&&this.runAction(t)})}runAction(e){return x(this,void 0,void 0,function*(){yield e.updateValue(h.unicodeHighlightConfigKeys.includeComments,!1,2)})}}class V extends d.EditorAction{constructor(){super({id:W.ID,label:C.localize("action.unicodeHighlight.disableHighlightingInStrings","Disable highlighting of characters in strings"),alias:"Disable highlighting of characters in strings",precondition:void 0}),this.shortLabel=C.localize("unicodeHighlight.disableHighlightingInStrings.shortLabel","Disable Highlight In Strings")}run(e,t,i){return x(this,void 0,void 0,function*(){let t=null==e?void 0:e.get(b.IConfigurationService);t&&this.runAction(t)})}runAction(e){return x(this,void 0,void 0,function*(){yield e.updateValue(h.unicodeHighlightConfigKeys.includeStrings,!1,2)})}}class W extends d.EditorAction{constructor(){super({id:W.ID,label:C.localize("action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters","Disable highlighting of ambiguous characters"),alias:"Disable highlighting of ambiguous characters",precondition:void 0}),this.shortLabel=C.localize("unicodeHighlight.disableHighlightingOfAmbiguousCharacters.shortLabel","Disable Ambiguous Highlight")}run(e,t,i){return x(this,void 0,void 0,function*(){let t=null==e?void 0:e.get(b.IConfigurationService);t&&this.runAction(t)})}runAction(e){return x(this,void 0,void 0,function*(){yield e.updateValue(h.unicodeHighlightConfigKeys.ambiguousCharacters,!1,2)})}}W.ID="editor.action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters";class H extends d.EditorAction{constructor(){super({id:H.ID,label:C.localize("action.unicodeHighlight.disableHighlightingOfInvisibleCharacters","Disable highlighting of invisible characters"),alias:"Disable highlighting of invisible characters",precondition:void 0}),this.shortLabel=C.localize("unicodeHighlight.disableHighlightingOfInvisibleCharacters.shortLabel","Disable Invisible Highlight")}run(e,t,i){return x(this,void 0,void 0,function*(){let t=null==e?void 0:e.get(b.IConfigurationService);t&&this.runAction(t)})}runAction(e){return x(this,void 0,void 0,function*(){yield e.updateValue(h.unicodeHighlightConfigKeys.invisibleCharacters,!1,2)})}}H.ID="editor.action.unicodeHighlight.disableHighlightingOfInvisibleCharacters";class B extends d.EditorAction{constructor(){super({id:B.ID,label:C.localize("action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters","Disable highlighting of non basic ASCII characters"),alias:"Disable highlighting of non basic ASCII characters",precondition:void 0}),this.shortLabel=C.localize("unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters.shortLabel","Disable Non ASCII Highlight")}run(e,t,i){return x(this,void 0,void 0,function*(){let t=null==e?void 0:e.get(b.IConfigurationService);t&&this.runAction(t)})}runAction(e){return x(this,void 0,void 0,function*(){yield e.updateValue(h.unicodeHighlightConfigKeys.nonBasicASCII,!1,2)})}}B.ID="editor.action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters";class j extends d.EditorAction{constructor(){super({id:j.ID,label:C.localize("action.unicodeHighlight.showExcludeOptions","Show Exclude Options"),alias:"Show Exclude Options",precondition:void 0})}run(e,t,i){return x(this,void 0,void 0,function*(){var t;let{codePoint:n,reason:o,inString:s,inComment:r}=i,a=String.fromCodePoint(n),d=e.get(D.IQuickInputService),c=e.get(b.IConfigurationService),u=[];if(0===o.kind)for(let e of o.notAmbiguousInLocales)u.push({label:C.localize("unicodeHighlight.allowCommonCharactersInLanguage",'Allow unicode characters that are more common in the language "{0}".',e),run:()=>x(this,void 0,void 0,function*(){(function(e,t){var i;x(this,void 0,void 0,function*(){let n;let o=null===(i=e.inspect(h.unicodeHighlightConfigKeys.allowedLocales).user)||void 0===i?void 0:i.value;for(let e of(n="object"==typeof o&&o?Object.assign({},o):{},t))n[e]=!0;yield e.updateValue(h.unicodeHighlightConfigKeys.allowedLocales,n,2)})})(c,[e])})});if(u.push({label:(t=n,l.InvisibleCharacters.isInvisibleCharacter(t)?C.localize("unicodeHighlight.excludeInvisibleCharFromBeingHighlighted","Exclude {0} (invisible character) from being highlighted",R(t)):C.localize("unicodeHighlight.excludeCharFromBeingHighlighted","Exclude {0} from being highlighted",`${R(t)} "${a}"`)),run:()=>(function(e,t){return x(this,void 0,void 0,function*(){let i;let n=e.getValue(h.unicodeHighlightConfigKeys.allowedCharacters);for(let e of(i="object"==typeof n&&n?n:{},t))i[String.fromCodePoint(e)]=!0;yield e.updateValue(h.unicodeHighlightConfigKeys.allowedCharacters,i,2)})})(c,[n])}),r){let e=new F;u.push({label:e.label,run:()=>x(this,void 0,void 0,function*(){return e.runAction(c)})})}else if(s){let e=new V;u.push({label:e.label,run:()=>x(this,void 0,void 0,function*(){return e.runAction(c)})})}if(0===o.kind){let e=new W;u.push({label:e.label,run:()=>x(this,void 0,void 0,function*(){return e.runAction(c)})})}else if(1===o.kind){let e=new H;u.push({label:e.label,run:()=>x(this,void 0,void 0,function*(){return e.runAction(c)})})}else if(2===o.kind){let e=new B;u.push({label:e.label,run:()=>x(this,void 0,void 0,function*(){return e.runAction(c)})})}else(function(e){throw Error(`Unexpected value: ${e}`)})(o);let g=yield d.pick(u,{title:C.localize("unicodeHighlight.configureUnicodeHighlightOptions","Configure Unicode Highlight Options")});g&&(yield g.run())})}}j.ID="editor.action.unicodeHighlight.showExcludeOptions";(0,d.registerEditorAction)(W),(0,d.registerEditorAction)(H),(0,d.registerEditorAction)(B),(0,d.registerEditorAction)(j),(0,d.registerEditorContribution)(M.ID,M),f.HoverParticipantRegistry.register(k)},5117:function(e,t,i){"use strict";i.r(t);var n=i("467518"),o=i("919527"),s=i("159923"),r=i("779169"),a=i("357233"),l=i("314098"),d=i("141666"),h=i("753861"),c=i("439703"),u=i("200144"),g=i("130039"),m=i("678540"),p=function(e,t){return function(i,n){t(i,n,e)}};let f=class extends o.Disposable{constructor(e,t,i,o,s,r){super(),this._modelService=t,this._themeService=i,this._configurationService=o,this._editor=e,this._provider=r.documentRangeSemanticTokensProvider,this._debounceInformation=s.for(this._provider,"DocumentRangeSemanticTokens",{min:100,max:500}),this._tokenizeViewport=this._register(new n.RunOnceScheduler(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[];let a=()=>{this._editor.hasModel()&&this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))};this._register(this._editor.onDidScrollChange(()=>{a()})),this._register(this._editor.onDidChangeModel(()=>{this._cancelAll(),a()})),this._register(this._editor.onDidChangeModelContent(e=>{this._cancelAll(),a()})),this._register(this._provider.onDidChange(()=>{this._cancelAll(),a()})),this._register(this._configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(l.SEMANTIC_HIGHLIGHTING_SETTING_ID)&&(this._cancelAll(),a())})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),a()}))}_cancelAll(){for(let e of this._outstandingRequests)e.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(e){for(let t=0,i=this._outstandingRequests.length;t<i;t++)if(this._outstandingRequests[t]===e){this._outstandingRequests.splice(t,1);return}}_tokenizeViewportNow(){if(!this._editor.hasModel())return;let e=this._editor.getModel();if(e.tokenization.hasCompleteSemanticTokens())return;if(!(0,l.isSemanticColoringEnabled)(e,this._themeService,this._configurationService)||!(0,r.hasDocumentRangeSemanticTokensProvider)(this._provider,e)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}let t=this._editor.getVisibleRangesPlusViewportAboveBelow();this._outstandingRequests=this._outstandingRequests.concat(t.map(t=>this._requestRange(e,t)))}_requestRange(e,t){let i=e.getVersionId(),o=(0,n.createCancelablePromise)(i=>Promise.resolve((0,r.getDocumentRangeSemanticTokens)(this._provider,e,t,i))),s=new g.StopWatch(!1);return o.then(n=>{if(this._debounceInformation.update(e,s.elapsed()),!n||!n.tokens||e.isDisposed()||e.getVersionId()!==i)return;let{provider:o,tokens:r}=n,a=this._modelService.getSemanticTokensProviderStyling(o);e.tokenization.setPartialSemanticTokens(t,(0,d.toMultilineTokens2)(r,a,e.getLanguageId()))}).then(()=>this._removeOutstandingRequest(o),()=>this._removeOutstandingRequest(o)),o}};f.ID="editor.contrib.viewportSemanticTokens",f=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}([p(1,a.IModelService),p(2,c.IThemeService),p(3,h.IConfigurationService),p(4,u.ILanguageFeatureDebounceService),p(5,m.ILanguageFeaturesService)],f),(0,s.registerEditorContribution)(f.ID,f)},92512:function(e,t,i){"use strict";i.r(t),i.d(t,{ContextMenuHandler:function(){return h}});var n=i("409737"),o=i("919219"),s=i("392924"),r=i("431453"),a=i("161111"),l=i("919527"),d=i("117882");class h{constructor(e,t,i,n,o){this.contextViewService=e,this.telemetryService=t,this.notificationService=i,this.keybindingService=n,this.themeService=o,this.focusToReturn=null,this.block=null,this.options={blockMouse:!0}}configure(e){this.options=e}showContextMenu(e){let t;let i=e.getActions();if(!i.length)return;this.focusToReturn=document.activeElement;let a=(0,n.isHTMLElement)(e.domForShadowRoot)?e.domForShadowRoot:void 0;this.contextViewService.showContextView({getAnchor:()=>e.getAnchor(),canRelayout:!1,anchorAlignment:e.anchorAlignment,anchorAxisAlignment:e.anchorAxisAlignment,render:a=>{let h=e.getMenuClassName?e.getMenuClassName():"";h&&(a.className+=" "+h),this.options.blockMouse&&(this.block=a.appendChild((0,n.$)(".context-view-block")),this.block.style.position="fixed",this.block.style.cursor="initial",this.block.style.left="0",this.block.style.top="0",this.block.style.width="100%",this.block.style.height="100%",this.block.style.zIndex="-1",(0,n.addDisposableListener)(this.block,n.EventType.MOUSE_DOWN,e=>e.stopPropagation()));let c=new l.DisposableStore,u=e.actionRunner||new r.ActionRunner;return u.onBeforeRun(this.onActionRun,this,c),u.onDidRun(this.onDidActionRun,this,c),t=new s.Menu(a,i,{actionViewItemProvider:e.getActionViewItem,context:e.getActionsContext?e.getActionsContext():null,actionRunner:u,getKeyBinding:e.getKeyBinding?e.getKeyBinding:e=>this.keybindingService.lookupKeybinding(e.id)}),c.add((0,d.attachMenuStyler)(t,this.themeService)),t.onDidCancel(()=>this.contextViewService.hideContextView(!0),null,c),t.onDidBlur(()=>this.contextViewService.hideContextView(!0),null,c),c.add((0,n.addDisposableListener)(window,n.EventType.BLUR,()=>this.contextViewService.hideContextView(!0))),c.add((0,n.addDisposableListener)(window,n.EventType.MOUSE_DOWN,e=>{if(e.defaultPrevented)return;let t=new o.StandardMouseEvent(e),i=t.target;if(!t.rightButton){for(;i;){if(i===a)return;i=i.parentElement}this.contextViewService.hideContextView(!0)}})),(0,l.combinedDisposable)(c,t)},focus:()=>{null==t||t.focus(!!e.autoSelectFirstItem)},onHide:t=>{var i;null===(i=e.onHide)||void 0===i||i.call(e,!!t),this.block&&(this.block.remove(),this.block=null),this.focusToReturn&&this.focusToReturn.focus()}},a,!!a)}onActionRun(e){this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1),this.focusToReturn&&this.focusToReturn.focus()}onDidActionRun(e){e.error&&!(0,a.isCancellationError)(e.error)&&this.notificationService.error(e.error)}}},382997:function(e,t,i){"use strict";i.r(t),i.d(t,{IListService:function(){return I},ListService:function(){return E},WorkbenchAsyncDataTree:function(){return em},WorkbenchList:function(){return eo},WorkbenchListFocusContextKey:function(){return M},WorkbenchTreeElementCanCollapse:function(){return A},WorkbenchTreeElementCanExpand:function(){return F}});var n=i("409737"),o=i("211102"),s=i("849482"),r=i("769552"),a=i("855498"),l=i("321311"),d=i("785976"),h=i("879730"),c=i("916904"),u=i("919527"),g=i("708339"),m=i("753861"),p=i("691125"),f=i("549436"),_=i("16081"),v=i("158935"),C=i("706301"),b=i("534752"),S=i("112721"),w=i("117882"),D=i("439703"),y=function(e,t,i,n){var o,s=arguments.length,r=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,i,n);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(r=(s<3?o(r):s>3?o(t,i,r):o(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r},L=function(e,t){return function(i,n){t(i,n,e)}};let I=(0,C.createDecorator)("listService"),E=class{constructor(e){this._themeService=e,this.disposables=new u.DisposableStore,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}get lastFocusedList(){return this._lastFocusedWidget}setLastFocusedList(e){var t,i;e!==this._lastFocusedWidget&&(null===(t=this._lastFocusedWidget)||void 0===t||t.getHTMLElement().classList.remove("last-focused"),this._lastFocusedWidget=e,null===(i=this._lastFocusedWidget)||void 0===i||i.getHTMLElement().classList.add("last-focused"))}register(e,t){if(!this._hasCreatedStyleController){this._hasCreatedStyleController=!0;let e=new s.DefaultStyleController((0,n.createStyleSheet)(),"");this.disposables.add((0,w.attachListStyler)(e,this._themeService))}if(this.lists.some(t=>t.widget===e))throw Error("Cannot register the same widget multiple times");let i={widget:e,extraContextKeys:t};return this.lists.push(i),e.getHTMLElement()===document.activeElement&&this.setLastFocusedList(e),(0,u.combinedDisposable)(e.onDidFocus(()=>this.setLastFocusedList(e)),(0,u.toDisposable)(()=>this.lists.splice(this.lists.indexOf(i),1)),e.onDidDispose(()=>{this.lists=this.lists.filter(e=>e!==i),this._lastFocusedWidget===e&&this.setLastFocusedList(void 0)}))}dispose(){this.disposables.dispose()}};E=y([L(0,D.IThemeService)],E);let x=new f.RawContextKey("listFocus",!0),N=new f.RawContextKey("listSupportsMultiselect",!0),M=f.ContextKeyExpr.and(x,f.ContextKeyExpr.not(_.InputFocusedContextKey)),T=new f.RawContextKey("listHasSelectionOrFocus",!1),O=new f.RawContextKey("listDoubleSelection",!1),k=new f.RawContextKey("listMultiSelection",!1),R=new f.RawContextKey("listSelectionNavigation",!1),P=new f.RawContextKey("listSupportsFind",!0),A=new f.RawContextKey("treeElementCanCollapse",!1),z=new f.RawContextKey("treeElementHasParent",!1),F=new f.RawContextKey("treeElementCanExpand",!1),V=new f.RawContextKey("treeElementHasChild",!1),W=new f.RawContextKey("treeFindOpen",!1),H="listTypeNavigationMode",B="listAutomaticKeyboardNavigation";function j(e,t){let i=e.createScoped(t.getHTMLElement());return x.bindTo(i),i}let K="workbench.list.multiSelectModifier",U="workbench.list.openMode",$="workbench.list.horizontalScrolling",Q="workbench.list.defaultFindMode",q="workbench.list.keyboardNavigation",G="workbench.tree.indent",Y="workbench.tree.renderIndentGuides",Z="workbench.list.smoothScrolling",X="workbench.list.mouseWheelScrollSensitivity",J="workbench.list.fastScrollSensitivity",ee="workbench.tree.expandMode";function et(e){return"alt"===e.getValue(K)}class ei extends u.Disposable{constructor(e){super(),this.configurationService=e,this.useAltAsMultipleSelectionModifier=et(e),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(K)&&(this.useAltAsMultipleSelectionModifier=et(this.configurationService))}))}isSelectionSingleChangeEvent(e){return this.useAltAsMultipleSelectionModifier?e.browserEvent.altKey:(0,s.isSelectionSingleChangeEvent)(e)}isSelectionRangeChangeEvent(e){return(0,s.isSelectionRangeChangeEvent)(e)}}function en(e,t){var i;let n=e.get(m.IConfigurationService),o=e.get(b.IKeybindingService),s=new u.DisposableStore;return[Object.assign(Object.assign({},t),{keyboardNavigationDelegate:{mightProducePrintableCharacter:e=>o.mightProducePrintableCharacter(e)},smoothScrolling:!!n.getValue(Z),mouseWheelScrollSensitivity:n.getValue(X),fastScrollSensitivity:n.getValue(J),multipleSelectionController:null!==(i=t.multipleSelectionController)&&void 0!==i?i:s.add(new ei(n)),keyboardNavigationEventFilter:function(e){let t=!1;return i=>{if(i.toKeybinding().isModifierKey())return!1;if(t)return t=!1,!1;let n=e.softDispatch(i,i.target);return(null==n?void 0:n.enterChord)?(t=!0,!1):(t=!1,!n)}}(o)}),s]}let eo=class extends s.List{constructor(e,t,i,n,o,s,r,a,l,d){let h=void 0!==o.horizontalScrolling?o.horizontalScrolling:!!l.getValue($),[c,u]=d.invokeFunction(en,o);super(e,t,i,n,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},(0,w.computeStyles)(a.getColorTheme(),w.defaultListStyles)),c),{horizontalScrolling:h})),this.disposables.add(u),this.contextKeyService=j(s,this),this.themeService=a,this.listSupportsMultiSelect=N.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==o.multipleSelectionSupport),R.bindTo(this.contextKeyService).set(!!o.selectionNavigation),this.listHasSelectionOrFocus=T.bindTo(this.contextKeyService),this.listDoubleSelection=O.bindTo(this.contextKeyService),this.listMultiSelection=k.bindTo(this.contextKeyService),this.horizontalScrolling=o.horizontalScrolling,this._useAltAsMultipleSelectionModifier=et(l),this.disposables.add(this.contextKeyService),this.disposables.add(r.register(this)),o.overrideStyles&&this.updateStyles(o.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{let e=this.getSelection(),t=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(e.length>0||t.length>0),this.listMultiSelection.set(e.length>1),this.listDoubleSelection.set(2===e.length)})})),this.disposables.add(this.onDidChangeFocus(()=>{let e=this.getSelection(),t=this.getFocus();this.listHasSelectionOrFocus.set(e.length>0||t.length>0)})),this.disposables.add(l.onDidChangeConfiguration(e=>{e.affectsConfiguration(K)&&(this._useAltAsMultipleSelectionModifier=et(l));let t={};if(e.affectsConfiguration($)&&void 0===this.horizontalScrolling){let e=!!l.getValue($);t=Object.assign(Object.assign({},t),{horizontalScrolling:e})}if(e.affectsConfiguration(Z)){let e=!!l.getValue(Z);t=Object.assign(Object.assign({},t),{smoothScrolling:e})}if(e.affectsConfiguration(X)){let e=l.getValue(X);t=Object.assign(Object.assign({},t),{mouseWheelScrollSensitivity:e})}if(e.affectsConfiguration(J)){let e=l.getValue(J);t=Object.assign(Object.assign({},t),{fastScrollSensitivity:e})}Object.keys(t).length>0&&this.updateOptions(t)})),this.navigator=new el(this,Object.assign({configurationService:l},o)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles&&this.updateStyles(e.overrideStyles),void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){var t;null===(t=this._styler)||void 0===t||t.dispose(),this._styler=(0,w.attachListStyler)(this,this.themeService,e)}dispose(){var e;null===(e=this._styler)||void 0===e||e.dispose(),super.dispose()}};eo=y([L(5,f.IContextKeyService),L(6,I),L(7,D.IThemeService),L(8,m.IConfigurationService),L(9,C.IInstantiationService)],eo);let es=class extends o.PagedList{constructor(e,t,i,n,o,s,r,a,l,d){let h=void 0!==o.horizontalScrolling?o.horizontalScrolling:!!l.getValue($),[c,g]=d.invokeFunction(en,o);super(e,t,i,n,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},(0,w.computeStyles)(a.getColorTheme(),w.defaultListStyles)),c),{horizontalScrolling:h})),this.disposables=new u.DisposableStore,this.disposables.add(g),this.contextKeyService=j(s,this),this.themeService=a,this.horizontalScrolling=o.horizontalScrolling,this.listSupportsMultiSelect=N.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==o.multipleSelectionSupport),R.bindTo(this.contextKeyService).set(!!o.selectionNavigation),this._useAltAsMultipleSelectionModifier=et(l),this.disposables.add(this.contextKeyService),this.disposables.add(r.register(this)),o.overrideStyles&&this.updateStyles(o.overrideStyles),o.overrideStyles&&this.disposables.add((0,w.attachListStyler)(this,a,o.overrideStyles)),this.disposables.add(l.onDidChangeConfiguration(e=>{e.affectsConfiguration(K)&&(this._useAltAsMultipleSelectionModifier=et(l));let t={};if(e.affectsConfiguration($)&&void 0===this.horizontalScrolling){let e=!!l.getValue($);t=Object.assign(Object.assign({},t),{horizontalScrolling:e})}if(e.affectsConfiguration(Z)){let e=!!l.getValue(Z);t=Object.assign(Object.assign({},t),{smoothScrolling:e})}if(e.affectsConfiguration(X)){let e=l.getValue(X);t=Object.assign(Object.assign({},t),{mouseWheelScrollSensitivity:e})}if(e.affectsConfiguration(J)){let e=l.getValue(J);t=Object.assign(Object.assign({},t),{fastScrollSensitivity:e})}Object.keys(t).length>0&&this.updateOptions(t)})),this.navigator=new el(this,Object.assign({configurationService:l},o)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles&&this.updateStyles(e.overrideStyles),void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){var t;null===(t=this._styler)||void 0===t||t.dispose(),this._styler=(0,w.attachListStyler)(this,this.themeService,e)}dispose(){var e;null===(e=this._styler)||void 0===e||e.dispose(),this.disposables.dispose(),super.dispose()}};es=y([L(5,f.IContextKeyService),L(6,I),L(7,D.IThemeService),L(8,m.IConfigurationService),L(9,C.IInstantiationService)],es);let er=class extends r.Table{constructor(e,t,i,n,o,s,r,a,l,d,h){let c=void 0!==s.horizontalScrolling?s.horizontalScrolling:!!d.getValue($),[u,g]=h.invokeFunction(en,s);super(e,t,i,n,o,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},(0,w.computeStyles)(l.getColorTheme(),w.defaultListStyles)),u),{horizontalScrolling:c})),this.disposables.add(g),this.contextKeyService=j(r,this),this.themeService=l,this.listSupportsMultiSelect=N.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==s.multipleSelectionSupport),R.bindTo(this.contextKeyService).set(!!s.selectionNavigation),this.listHasSelectionOrFocus=T.bindTo(this.contextKeyService),this.listDoubleSelection=O.bindTo(this.contextKeyService),this.listMultiSelection=k.bindTo(this.contextKeyService),this.horizontalScrolling=s.horizontalScrolling,this._useAltAsMultipleSelectionModifier=et(d),this.disposables.add(this.contextKeyService),this.disposables.add(a.register(this)),s.overrideStyles&&this.updateStyles(s.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{let e=this.getSelection(),t=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(e.length>0||t.length>0),this.listMultiSelection.set(e.length>1),this.listDoubleSelection.set(2===e.length)})})),this.disposables.add(this.onDidChangeFocus(()=>{let e=this.getSelection(),t=this.getFocus();this.listHasSelectionOrFocus.set(e.length>0||t.length>0)})),this.disposables.add(d.onDidChangeConfiguration(e=>{e.affectsConfiguration(K)&&(this._useAltAsMultipleSelectionModifier=et(d));let t={};if(e.affectsConfiguration($)&&void 0===this.horizontalScrolling){let e=!!d.getValue($);t=Object.assign(Object.assign({},t),{horizontalScrolling:e})}if(e.affectsConfiguration(Z)){let e=!!d.getValue(Z);t=Object.assign(Object.assign({},t),{smoothScrolling:e})}if(e.affectsConfiguration(X)){let e=d.getValue(X);t=Object.assign(Object.assign({},t),{mouseWheelScrollSensitivity:e})}if(e.affectsConfiguration(J)){let e=d.getValue(J);t=Object.assign(Object.assign({},t),{fastScrollSensitivity:e})}Object.keys(t).length>0&&this.updateOptions(t)})),this.navigator=new ed(this,Object.assign({configurationService:d},s)),this.disposables.add(this.navigator)}updateOptions(e){super.updateOptions(e),e.overrideStyles&&this.updateStyles(e.overrideStyles),void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyles(e){var t;null===(t=this._styler)||void 0===t||t.dispose(),this._styler=(0,w.attachListStyler)(this,this.themeService,e)}dispose(){var e;null===(e=this._styler)||void 0===e||e.dispose(),this.disposables.dispose(),super.dispose()}};er=y([L(6,f.IContextKeyService),L(7,I),L(8,D.IThemeService),L(9,m.IConfigurationService),L(10,C.IInstantiationService)],er);class ea extends u.Disposable{constructor(e,t){var i;super(),this.widget=e,this._onDidOpen=this._register(new c.Emitter),this.onDidOpen=this._onDidOpen.event,this._register(c.Event.filter(this.widget.onDidChangeSelection,e=>e.browserEvent instanceof KeyboardEvent)(e=>this.onSelectionFromKeyboard(e))),this._register(this.widget.onPointer(e=>this.onPointer(e.element,e.browserEvent))),this._register(this.widget.onMouseDblClick(e=>this.onMouseDblClick(e.element,e.browserEvent))),"boolean"!=typeof(null==t?void 0:t.openOnSingleClick)&&(null==t?void 0:t.configurationService)?(this.openOnSingleClick=(null==t?void 0:t.configurationService.getValue(U))!=="doubleClick",this._register(null==t?void 0:t.configurationService.onDidChangeConfiguration(()=>{this.openOnSingleClick=(null==t?void 0:t.configurationService.getValue(U))!=="doubleClick"}))):this.openOnSingleClick=null===(i=null==t?void 0:t.openOnSingleClick)||void 0===i||i}onSelectionFromKeyboard(e){if(1!==e.elements.length)return;let t=e.browserEvent,i="boolean"!=typeof t.preserveFocus||t.preserveFocus,n="boolean"==typeof t.pinned?t.pinned:!i;this._open(this.getSelectedElement(),i,n,!1,e.browserEvent)}onPointer(e,t){if(!this.openOnSingleClick||2===t.detail)return;let i=1===t.button,n=t.ctrlKey||t.metaKey||t.altKey;this._open(e,!0,i,n,t)}onMouseDblClick(e,t){if(!t)return;let i=t.target;if(i.classList.contains("monaco-tl-twistie")||i.classList.contains("monaco-icon-label")&&i.classList.contains("folder-icon")&&t.offsetX<16)return;let n=t.ctrlKey||t.metaKey||t.altKey;this._open(e,!1,!0,n,t)}_open(e,t,i,n,o){e&&this._onDidOpen.fire({editorOptions:{preserveFocus:t,pinned:i,revealIfVisible:!0},sideBySide:n,element:e,browserEvent:o})}}class el extends ea{constructor(e,t){super(e,t),this.widget=e}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class ed extends ea{constructor(e,t){super(e,t)}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class eh extends ea{constructor(e,t){super(e,t)}getSelectedElement(){var e;return null!==(e=this.widget.getSelection()[0])&&void 0!==e?e:void 0}}let ec=class extends h.ObjectTree{constructor(e,t,i,n,o,s,r,a,l,d){let{options:h,getTypeNavigationMode:c,disposable:u}=s.invokeFunction(e_,o);super(e,t,i,n,h),this.disposables.add(u),this.internals=new ev(this,o,c,o.overrideStyles,r,a,l,d),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};ec=y([L(5,C.IInstantiationService),L(6,f.IContextKeyService),L(7,I),L(8,D.IThemeService),L(9,m.IConfigurationService)],ec);let eu=class extends h.CompressibleObjectTree{constructor(e,t,i,n,o,s,r,a,l,d){let{options:h,getTypeNavigationMode:c,disposable:u}=s.invokeFunction(e_,o);super(e,t,i,n,h),this.disposables.add(u),this.internals=new ev(this,o,c,o.overrideStyles,r,a,l,d),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};eu=y([L(5,C.IInstantiationService),L(6,f.IContextKeyService),L(7,I),L(8,D.IThemeService),L(9,m.IConfigurationService)],eu);let eg=class extends d.DataTree{constructor(e,t,i,n,o,s,r,a,l,d,h){let{options:c,getTypeNavigationMode:u,disposable:g}=r.invokeFunction(e_,s);super(e,t,i,n,o,c),this.disposables.add(g),this.internals=new ev(this,s,u,s.overrideStyles,a,l,d,h),this.disposables.add(this.internals)}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};eg=y([L(6,C.IInstantiationService),L(7,f.IContextKeyService),L(8,I),L(9,D.IThemeService),L(10,m.IConfigurationService)],eg);let em=class extends l.AsyncDataTree{constructor(e,t,i,n,o,s,r,a,l,d,h){let{options:c,getTypeNavigationMode:u,disposable:g}=r.invokeFunction(e_,s);super(e,t,i,n,o,c),this.disposables.add(g),this.internals=new ev(this,s,u,s.overrideStyles,a,l,d,h),this.disposables.add(this.internals)}get onDidOpen(){return this.internals.onDidOpen}updateOptions(e={}){super.updateOptions(e),e.overrideStyles&&this.internals.updateStyleOverrides(e.overrideStyles),this.internals.updateOptions(e)}};em=y([L(6,C.IInstantiationService),L(7,f.IContextKeyService),L(8,I),L(9,D.IThemeService),L(10,m.IConfigurationService)],em);let ep=class extends l.CompressibleAsyncDataTree{constructor(e,t,i,n,o,s,r,a,l,d,h,c){let{options:u,getTypeNavigationMode:g,disposable:m}=a.invokeFunction(e_,r);super(e,t,i,n,o,s,u),this.disposables.add(m),this.internals=new ev(this,r,g,r.overrideStyles,l,d,h,c),this.disposables.add(this.internals)}updateOptions(e){super.updateOptions(e),this.internals.updateOptions(e)}};function ef(e){let t=e.getValue(Q);if("highlight"===t)return a.TreeFindMode.Highlight;if("filter"===t)return a.TreeFindMode.Filter;let i=e.getValue(q);return"simple"===i||"highlight"===i?a.TreeFindMode.Highlight:"filter"===i?a.TreeFindMode.Filter:void 0}function e_(e,t){var i;let n=e.get(m.IConfigurationService),o=e.get(v.IContextViewService),r=e.get(f.IContextKeyService),a=e.get(C.IInstantiationService),l=void 0!==t.horizontalScrolling?t.horizontalScrolling:!!n.getValue($),[d,h]=a.invokeFunction(en,t),c=t.additionalScrollHeight;return{getTypeNavigationMode:()=>{let e=r.getContextKeyValue(H);return"automatic"===e?s.TypeNavigationMode.Automatic:"trigger"===e?s.TypeNavigationMode.Trigger:!1===r.getContextKeyValue(B)?s.TypeNavigationMode.Trigger:void 0},disposable:h,options:Object.assign(Object.assign({keyboardSupport:!1},d),{indent:"number"==typeof n.getValue(G)?n.getValue(G):void 0,renderIndentGuides:n.getValue(Y),smoothScrolling:!!n.getValue(Z),defaultFindMode:ef(n),horizontalScrolling:l,additionalScrollHeight:c,hideTwistiesOfChildlessElements:t.hideTwistiesOfChildlessElements,expandOnlyOnTwistieClick:null!==(i=t.expandOnlyOnTwistieClick)&&void 0!==i?i:"doubleClick"===n.getValue(ee),contextViewProvider:o})}}ep=y([L(7,C.IInstantiationService),L(8,f.IContextKeyService),L(9,I),L(10,D.IThemeService),L(11,m.IConfigurationService)],ep);let ev=class{constructor(e,t,i,n,o,s,r,a){var l;this.tree=e,this.themeService=r,this.disposables=[],this.contextKeyService=j(o,e),this.listSupportsMultiSelect=N.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(!1!==t.multipleSelectionSupport),R.bindTo(this.contextKeyService).set(!!t.selectionNavigation),this.listSupportFindWidget=P.bindTo(this.contextKeyService),this.listSupportFindWidget.set(null===(l=t.findWidgetEnabled)||void 0===l||l),this.hasSelectionOrFocus=T.bindTo(this.contextKeyService),this.hasDoubleSelection=O.bindTo(this.contextKeyService),this.hasMultiSelection=k.bindTo(this.contextKeyService),this.treeElementCanCollapse=A.bindTo(this.contextKeyService),this.treeElementHasParent=z.bindTo(this.contextKeyService),this.treeElementCanExpand=F.bindTo(this.contextKeyService),this.treeElementHasChild=V.bindTo(this.contextKeyService),this.treeFindOpen=W.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=et(a),this.updateStyleOverrides(n);let d=()=>{let t=e.getFocus()[0];if(!t)return;let i=e.getNode(t);this.treeElementCanCollapse.set(i.collapsible&&!i.collapsed),this.treeElementHasParent.set(!!e.getParentElement(t)),this.treeElementCanExpand.set(i.collapsible&&i.collapsed),this.treeElementHasChild.set(!!e.getFirstElementChild(t))},h=new Set;h.add(H),h.add(B),this.disposables.push(this.contextKeyService,s.register(e),e.onDidChangeSelection(()=>{let t=e.getSelection(),i=e.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.hasSelectionOrFocus.set(t.length>0||i.length>0),this.hasMultiSelection.set(t.length>1),this.hasDoubleSelection.set(2===t.length)})}),e.onDidChangeFocus(()=>{let t=e.getSelection(),i=e.getFocus();this.hasSelectionOrFocus.set(t.length>0||i.length>0),d()}),e.onDidChangeCollapseState(d),e.onDidChangeModel(d),e.onDidChangeFindOpenState(e=>this.treeFindOpen.set(e)),a.onDidChangeConfiguration(i=>{let n={};if(i.affectsConfiguration(K)&&(this._useAltAsMultipleSelectionModifier=et(a)),i.affectsConfiguration(G)){let e=a.getValue(G);n=Object.assign(Object.assign({},n),{indent:e})}if(i.affectsConfiguration(Y)){let e=a.getValue(Y);n=Object.assign(Object.assign({},n),{renderIndentGuides:e})}if(i.affectsConfiguration(Z)){let e=!!a.getValue(Z);n=Object.assign(Object.assign({},n),{smoothScrolling:e})}if((i.affectsConfiguration(Q)||i.affectsConfiguration(q))&&e.updateOptions({defaultFindMode:ef(a)}),i.affectsConfiguration($)&&void 0===t.horizontalScrolling){let e=!!a.getValue($);n=Object.assign(Object.assign({},n),{horizontalScrolling:e})}if(i.affectsConfiguration(ee)&&void 0===t.expandOnlyOnTwistieClick&&(n=Object.assign(Object.assign({},n),{expandOnlyOnTwistieClick:"doubleClick"===a.getValue(ee)})),i.affectsConfiguration(X)){let e=a.getValue(X);n=Object.assign(Object.assign({},n),{mouseWheelScrollSensitivity:e})}if(i.affectsConfiguration(J)){let e=a.getValue(J);n=Object.assign(Object.assign({},n),{fastScrollSensitivity:e})}Object.keys(n).length>0&&e.updateOptions(n)}),this.contextKeyService.onDidChangeContext(t=>{t.affectsSome(h)&&e.updateOptions({typeNavigationMode:i()})})),this.navigator=new eh(e,Object.assign({configurationService:a},t)),this.disposables.push(this.navigator)}get onDidOpen(){return this.navigator.onDidOpen}updateOptions(e){void 0!==e.multipleSelectionSupport&&this.listSupportsMultiSelect.set(!!e.multipleSelectionSupport)}updateStyleOverrides(e){(0,u.dispose)(this.styler),this.styler=e?(0,w.attachListStyler)(this.tree,this.themeService,e):u.Disposable.None}dispose(){this.disposables=(0,u.dispose)(this.disposables),(0,u.dispose)(this.styler),this.styler=void 0}};ev=y([L(4,f.IContextKeyService),L(5,I),L(6,D.IThemeService),L(7,m.IConfigurationService)],ev),S.Registry.as(p.Extensions.Configuration).registerConfiguration({id:"workbench",order:7,title:(0,g.localize)("workbenchConfigurationTitle","Workbench"),type:"object",properties:{[K]:{type:"string",enum:["ctrlCmd","alt"],markdownEnumDescriptions:[(0,g.localize)("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),(0,g.localize)("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:(0,g.localize)({key:"multiSelectModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add 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.")},[U]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:(0,g.localize)({key:"openModeModifier",comment:["`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized."]},"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.")},[$]:{type:"boolean",default:!1,description:(0,g.localize)("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.")},[G]:{type:"number",default:8,minimum:4,maximum:40,description:(0,g.localize)("tree indent setting","Controls tree indentation in pixels.")},[Y]:{type:"string",enum:["none","onHover","always"],default:"onHover",description:(0,g.localize)("render tree indent guides","Controls whether the tree should render indent guides.")},[Z]:{type:"boolean",default:!1,description:(0,g.localize)("list smoothScrolling setting","Controls whether lists and trees have smooth scrolling.")},[X]:{type:"number",default:1,markdownDescription:(0,g.localize)("Mouse Wheel Scroll Sensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")},[J]:{type:"number",default:5,description:(0,g.localize)("Fast Scroll Sensitivity","Scrolling speed multiplier when pressing `Alt`.")},[Q]:{type:"string",enum:["highlight","filter"],enumDescriptions:[(0,g.localize)("defaultFindModeSettingKey.highlight","Highlight elements when searching. Further up and down navigation will traverse only the highlighted elements."),(0,g.localize)("defaultFindModeSettingKey.filter","Filter elements when searching.")],default:"highlight",description:(0,g.localize)("defaultFindModeSettingKey","Controls the default find mode for lists and trees in the workbench.")},[q]:{type:"string",enum:["simple","highlight","filter"],enumDescriptions:[(0,g.localize)("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),(0,g.localize)("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),(0,g.localize)("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:(0,g.localize)("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter."),deprecated:!0,deprecationMessage:(0,g.localize)("keyboardNavigationSettingKeyDeprecated","Please use 'workbench.list.defaultFindMode' instead.")},[ee]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:(0,g.localize)("expand mode","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.")}}})},411249:function(e){},719703:function(e){}}]);
|