x){var M=x-D;D+=M,N+=M}if(N>L){var T=L-N;D+=T,N+=T}h[f++]=new B(k,D,S,N),i[r++]=new z(h)}for(var I=i[0].entries,O=[],A=0,R=1,P=i.length;Ra.modifiedStartLineNumber?h.N("diff.clipboard.copyDeletedLinesContent.label","Copy deleted lines"):h.N("diff.clipboard.copyDeletedLinesContent.single.label","Copy deleted line"),void 0,!0,(function(){return ue((0,r.Z)(l),void 0,void 0,S().mark((function e(){var t,n;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=new Q.e(a.originalStartLineNumber,1,a.originalEndLineNumber+1,1),n=a.originalModel.getValueInRange(t),e.next=4,this._clipboardService.writeText(n);case 4:case"end":return e.stop()}}),e,this)})))})));var v=0,m=void 0;a.originalEndLineNumber>a.modifiedStartLineNumber&&(m=new E.aU("diff.clipboard.copyDeletedLineContent",h.N("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",a.originalStartLineNumber),void 0,!0,(function(){return ue((0,r.Z)(l),void 0,void 0,S().mark((function e(){var t;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=a.originalModel.getLineContent(a.originalStartLineNumber+v),e.next=3,this._clipboardService.writeText(t);case 3:case"end":return e.stop()}}),e,this)})))})),g.push(m)),o.getOption(77)||g.push(new E.aU("diff.inline.revertChange",h.N("diff.inline.revertChange.label","Revert this change"),void 0,!0,(function(){return ue((0,r.Z)(l),void 0,void 0,S().mark((function e(){var t,n,i,r;return S().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=new Q.e(a.originalStartLineNumber,1,a.originalEndLineNumber,a.originalModel.getLineMaxColumn(a.originalEndLineNumber)),n=a.originalModel.getValueInRange(t),0===a.modifiedEndLineNumber?(i=o.getModel().getLineMaxColumn(a.modifiedStartLineNumber),o.executeEdits("diffEditor",[{range:new Q.e(a.modifiedStartLineNumber,i,a.modifiedStartLineNumber,i),text:p+n}])):(r=o.getModel().getLineMaxColumn(a.modifiedEndLineNumber),o.executeEdits("diffEditor",[{range:new Q.e(a.modifiedStartLineNumber,1,a.modifiedEndLineNumber,r),text:n}]));case 3:case"end":return e.stop()}}),e)})))})));var _=function(e,t){l._contextMenuService.showContextMenu({getAnchor:function(){return{x:e,y:t}},getActions:function(){return m&&(m.label=h.N("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",a.originalStartLineNumber+v)),g},autoSelectFirstItem:!0})};return l._register(f.addStandardDisposableListener(l._diffActions,"mousedown",(function(e){var t=f.getDomNodePagePosition(l._diffActions),n=t.top,i=t.height,r=Math.floor(d/3);e.preventDefault(),_(e.posx,n+i+r)}))),l._register(o.onMouseMove((function(e){8===e.target.type||5===e.target.type?e.target.detail.viewZoneId===l._viewZoneId?(l.visibility=!0,v=l._updateLightBulbPosition(l._marginDomNode,e.event.browserEvent.y,d)):l.visibility=!1:l.visibility=!1}))),l._register(o.onMouseDown((function(e){e.event.rightButton&&(8!==e.target.type&&5!==e.target.type||e.target.detail.viewZoneId===l._viewZoneId&&(e.event.preventDefault(),v=l._updateLightBulbPosition(l._marginDomNode,e.event.browserEvent.y,d),_(e.event.posx,e.event.posy+d)))}))),l}return(0,d.Z)(n,[{key:"visibility",get:function(){return this._visibility},set:function(e){this._visibility!==e&&(this._visibility=e,this._diffActions.style.visibility=e?"visible":"hidden")}},{key:"_updateLightBulbPosition",value:function(e,t,n){var i=t-f.getDomNodePagePosition(e).top,r=Math.floor(i/n),o=r*n;if(this._diffActions.style.top="".concat(o,"px"),this.diff.viewLineCounts)for(var a=0,s=0;s=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a},ve=function(e,t){return function(n,i){t(n,i,e)}},me=function(){function e(t,n){(0,c.Z)(this,e),this._contextMenuService=t,this._clipboardService=n,this._zones=[],this._inlineDiffMargins=[],this._zonesMap={},this._decorations=[]}return(0,d.Z)(e,[{key:"getForeignViewZones",value:function(e){var t=this;return e.filter((function(e){return!t._zonesMap[String(e.id)]}))}},{key:"clean",value:function(e){var t=this;this._zones.length>0&&e.changeViewZones((function(e){var n,i=(0,l.Z)(t._zones);try{for(i.s();!(n=i.n()).done;){var r=n.value;e.removeZone(r)}}catch(o){i.e(o)}finally{i.f()}})),this._zones=[],this._zonesMap={},this._decorations=e.deltaDecorations(this._decorations,[])}},{key:"apply",value:function(e,t,n,i){var r=this,o=i?b.ZF.capture(e):null;e.changeViewZones((function(t){var i,o=(0,l.Z)(r._zones);try{for(o.s();!(i=o.n()).done;){var a=i.value;t.removeZone(a)}}catch(p){o.e(p)}finally{o.f()}var s,u=(0,l.Z)(r._inlineDiffMargins);try{for(u.s();!(s=u.n()).done;){s.value.dispose()}}catch(p){u.e(p)}finally{u.f()}r._zones=[],r._zonesMap={},r._inlineDiffMargins=[];for(var c=0,d=n.zones.length;c1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealLine(e,t)}},{key:"revealLineInCenter",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealLineInCenter(e,t)}},{key:"revealLineInCenterIfOutsideViewport",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealLineInCenterIfOutsideViewport(e,t)}},{key:"revealLineNearTop",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealLineNearTop(e,t)}},{key:"revealPosition",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealPosition(e,t)}},{key:"revealPositionInCenter",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealPositionInCenter(e,t)}},{key:"revealPositionInCenterIfOutsideViewport",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealPositionInCenterIfOutsideViewport(e,t)}},{key:"revealPositionNearTop",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealPositionNearTop(e,t)}},{key:"getSelection",value:function(){return this._modifiedEditor.getSelection()}},{key:"getSelections",value:function(){return this._modifiedEditor.getSelections()}},{key:"setSelection",value:function(e){this._modifiedEditor.setSelection(e)}},{key:"setSelections",value:function(e){this._modifiedEditor.setSelections(e)}},{key:"revealLines",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;this._modifiedEditor.revealLines(e,t,n)}},{key:"revealLinesInCenter",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;this._modifiedEditor.revealLinesInCenter(e,t,n)}},{key:"revealLinesInCenterIfOutsideViewport",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;this._modifiedEditor.revealLinesInCenterIfOutsideViewport(e,t,n)}},{key:"revealLinesNearTop",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;this._modifiedEditor.revealLinesNearTop(e,t,n)}},{key:"revealRange",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];this._modifiedEditor.revealRange(e,t,n,i)}},{key:"revealRangeInCenter",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealRangeInCenter(e,t)}},{key:"revealRangeInCenterIfOutsideViewport",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealRangeInCenterIfOutsideViewport(e,t)}},{key:"revealRangeNearTop",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealRangeNearTop(e,t)}},{key:"revealRangeNearTopIfOutsideViewport",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealRangeNearTopIfOutsideViewport(e,t)}},{key:"revealRangeAtTop",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this._modifiedEditor.revealRangeAtTop(e,t)}},{key:"getSupportedActions",value:function(){return this._modifiedEditor.getSupportedActions()}},{key:"saveViewState",value:function(){return{original:this._originalEditor.saveViewState(),modified:this._modifiedEditor.saveViewState()}}},{key:"restoreViewState",value:function(e){if(e&&e.original&&e.modified){var t=e;this._originalEditor.restoreViewState(t.original),this._modifiedEditor.restoreViewState(t.modified)}}},{key:"layout",value:function(e){this._elementSizeObserver.observe(e)}},{key:"focus",value:function(){this._modifiedEditor.focus()}},{key:"hasTextFocus",value:function(){return this._originalEditor.hasTextFocus()||this._modifiedEditor.hasTextFocus()}},{key:"trigger",value:function(e,t,n){this._modifiedEditor.trigger(e,t,n)}},{key:"changeDecorations",value:function(e){return this._modifiedEditor.changeDecorations(e)}},{key:"_onDidContainerSizeChanged",value:function(){this._doLayout()}},{key:"_getReviewHeight",value:function(){return this._reviewPane.isVisible()?this._elementSizeObserver.getHeight():0}},{key:"_layoutOverviewRulers",value:function(){if(this._renderOverviewRuler&&this._originalOverviewRuler&&this._modifiedOverviewRuler){var e=this._elementSizeObserver.getHeight(),t=this._getReviewHeight(),i=n.ENTIRE_DIFF_OVERVIEW_WIDTH-2*n.ONE_OVERVIEW_WIDTH;this._modifiedEditor.getLayoutInfo()&&(this._originalOverviewRuler.setLayout({top:0,width:n.ONE_OVERVIEW_WIDTH,right:i+n.ONE_OVERVIEW_WIDTH,height:e-t}),this._modifiedOverviewRuler.setLayout({top:0,right:0,width:n.ONE_OVERVIEW_WIDTH,height:e-t}))}}},{key:"_onViewZonesChanged",value:function(){this._currentlyChangingViewZones||this._updateDecorationsRunner.schedule()}},{key:"_beginUpdateDecorationsSoon",value:function(){var e=this;-1!==this._beginUpdateDecorationsTimeout&&(window.clearTimeout(this._beginUpdateDecorationsTimeout),this._beginUpdateDecorationsTimeout=-1),this._beginUpdateDecorationsTimeout=window.setTimeout((function(){return e._beginUpdateDecorations()}),n.UPDATE_DIFF_DECORATIONS_DELAY)}},{key:"_beginUpdateDecorations",value:function(){var e=this;this._beginUpdateDecorationsTimeout=-1;var t=this._originalEditor.getModel(),i=this._modifiedEditor.getModel();if(t&&i){this._diffComputationToken++;var r=this._diffComputationToken;this._setState(1),this._editorWorkerService.canComputeDiff(t.uri,i.uri)?this._editorWorkerService.computeDiff(t.uri,i.uri,this._ignoreTrimWhitespace,this._maxComputationTime).then((function(n){r===e._diffComputationToken&&t===e._originalEditor.getModel()&&i===e._modifiedEditor.getModel()&&(e._setState(2),e._diffComputationResult=n,e._updateDecorationsRunner.schedule(),e._onDidUpdateDiff.fire())}),(function(n){r===e._diffComputationToken&&t===e._originalEditor.getModel()&&i===e._modifiedEditor.getModel()&&(e._setState(2),e._diffComputationResult=null,e._updateDecorationsRunner.schedule())})):n._equals(t.uri,this._lastOriginalWarning)&&n._equals(i.uri,this._lastModifiedWarning)||(this._lastOriginalWarning=t.uri,this._lastModifiedWarning=i.uri,this._notificationService.warn(h.N("diff.tooLarge","Cannot compare files because one file is too large.")))}}},{key:"_cleanViewZonesAndDecorations",value:function(){this._originalEditorState.clean(this._originalEditor),this._modifiedEditorState.clean(this._modifiedEditor)}},{key:"_updateDecorations",value:function(){if(this._originalEditor.getModel()&&this._modifiedEditor.getModel()){var e=this._diffComputationResult?this._diffComputationResult.changes:[],t=this._originalEditorState.getForeignViewZones(this._originalEditor.getWhitespaces()),n=this._modifiedEditorState.getForeignViewZones(this._modifiedEditor.getWhitespaces()),i=this._strategy.getEditorsDiffDecorations(e,this._ignoreTrimWhitespace,this._renderIndicators,t,n);try{this._currentlyChangingViewZones=!0,this._originalEditorState.apply(this._originalEditor,this._originalOverviewRuler,i.original,!1),this._modifiedEditorState.apply(this._modifiedEditor,this._modifiedOverviewRuler,i.modified,!0)}finally{this._currentlyChangingViewZones=!1}}}},{key:"_adjustOptionsForSubEditor",value:function(e){var t=Object.assign({},e);return t.inDiffEditor=!0,t.automaticLayout=!1,t.scrollbar=Object.assign({},t.scrollbar||{}),t.scrollbar.vertical="visible",t.folding=!1,t.codeLens=this._diffCodeLens,t.fixedOverflowWidgets=!0,t.minimap=Object.assign({},t.minimap||{}),t.minimap.enabled=!1,t}},{key:"_adjustOptionsForLeftHandSide",value:function(e){var t=this._adjustOptionsForSubEditor(e);return this._renderSideBySide?t.wordWrapOverride1=this._diffWordWrap:t.wordWrapOverride1="off",e.originalAriaLabel&&(t.ariaLabel=e.originalAriaLabel),t.readOnly=!this._originalIsEditable,t.extraEditorClassName="original-in-monaco-diff-editor",Object.assign(Object.assign({},t),{dimension:{height:0,width:0}})}},{key:"_adjustOptionsForRightHandSide",value:function(e){var t=this._adjustOptionsForSubEditor(e);return e.modifiedAriaLabel&&(t.ariaLabel=e.modifiedAriaLabel),t.wordWrapOverride1=this._diffWordWrap,t.revealHorizontalRightPadding=N.BH.revealHorizontalRightPadding.defaultValue+n.ENTIRE_DIFF_OVERVIEW_WIDTH,t.scrollbar.verticalHasArrows=!1,t.extraEditorClassName="modified-in-monaco-diff-editor",Object.assign(Object.assign({},t),{dimension:{height:0,width:0}})}},{key:"doLayout",value:function(){this._elementSizeObserver.observe(),this._doLayout()}},{key:"_doLayout",value:function(){var e=this._elementSizeObserver.getWidth(),t=this._elementSizeObserver.getHeight(),i=this._getReviewHeight(),r=this._strategy.layout();this._originalDomNode.style.width=r+"px",this._originalDomNode.style.left="0px",this._modifiedDomNode.style.width=e-r+"px",this._modifiedDomNode.style.left=r+"px",this._overviewDomElement.style.top="0px",this._overviewDomElement.style.height=t-i+"px",this._overviewDomElement.style.width=n.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",this._overviewDomElement.style.left=e-n.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",this._overviewViewportDomElement.setWidth(n.ENTIRE_DIFF_OVERVIEW_WIDTH),this._overviewViewportDomElement.setHeight(30),this._originalEditor.layout({width:r,height:t-i}),this._modifiedEditor.layout({width:e-r-(this._renderOverviewRuler?n.ENTIRE_DIFF_OVERVIEW_WIDTH:0),height:t-i}),(this._originalOverviewRuler||this._modifiedOverviewRuler)&&this._layoutOverviewRulers(),this._reviewPane.layout(t-i,e,i),this._layoutOverviewViewport()}},{key:"_layoutOverviewViewport",value:function(){var e=this._computeOverviewViewport();e?(this._overviewViewportDomElement.setTop(e.top),this._overviewViewportDomElement.setHeight(e.height)):(this._overviewViewportDomElement.setTop(0),this._overviewViewportDomElement.setHeight(0))}},{key:"_computeOverviewViewport",value:function(){var e=this._modifiedEditor.getLayoutInfo();if(!e)return null;var t=this._modifiedEditor.getScrollTop(),n=this._modifiedEditor.getScrollHeight(),i=Math.max(0,e.height),r=Math.max(0,i-0),o=n>0?r/n:0;return{height:Math.max(0,Math.floor(e.height*o)),top:Math.floor(t*o)}}},{key:"_createDataSource",value:function(){var e=this;return{getWidth:function(){return e._elementSizeObserver.getWidth()},getHeight:function(){return e._elementSizeObserver.getHeight()-e._getReviewHeight()},getOptions:function(){return{renderOverviewRuler:e._renderOverviewRuler}},getContainerDomNode:function(){return e._containerDomElement},relayoutEditors:function(){e._doLayout()},getOriginalEditor:function(){return e._originalEditor},getModifiedEditor:function(){return e._modifiedEditor}}}},{key:"_setStrategy",value:function(e){this._strategy&&this._strategy.dispose(),this._strategy=e,e.applyColors(this._themeService.getColorTheme()),this._diffComputationResult&&this._updateDecorations(),this._doLayout()}},{key:"_getLineChangeAtOrBeforeLineNumber",value:function(e,t){var n=this._diffComputationResult?this._diffComputationResult.changes:[];if(0===n.length||e=s?i=o+1:(i=o,r=o)}return n[i]}},{key:"_getEquivalentLineForOriginalLineNumber",value:function(e){var t=this._getLineChangeAtOrBeforeLineNumber(e,(function(e){return e.originalStartLineNumber}));if(!t)return e;var n=t.originalStartLineNumber+(t.originalEndLineNumber>0?-1:0),i=t.modifiedStartLineNumber+(t.modifiedEndLineNumber>0?-1:0),r=t.originalEndLineNumber>0?t.originalEndLineNumber-t.originalStartLineNumber+1:0,o=t.modifiedEndLineNumber>0?t.modifiedEndLineNumber-t.modifiedStartLineNumber+1:0,a=e-n;return a<=r?i+Math.min(a,o):i+o-r+a}},{key:"_getEquivalentLineForModifiedLineNumber",value:function(e){var t=this._getLineChangeAtOrBeforeLineNumber(e,(function(e){return e.modifiedStartLineNumber}));if(!t)return e;var n=t.originalStartLineNumber+(t.originalEndLineNumber>0?-1:0),i=t.modifiedStartLineNumber+(t.modifiedEndLineNumber>0?-1:0),r=t.originalEndLineNumber>0?t.originalEndLineNumber-t.originalStartLineNumber+1:0,o=t.modifiedEndLineNumber>0?t.modifiedEndLineNumber-t.modifiedStartLineNumber+1:0,a=e-i;return a<=o?n+Math.min(a,r):n+r-o+a}},{key:"getDiffLineInformationForOriginal",value:function(e){return this._diffComputationResult?{equivalentLineNumber:this._getEquivalentLineForOriginalLineNumber(e)}:null}},{key:"getDiffLineInformationForModified",value:function(e){return this._diffComputationResult?{equivalentLineNumber:this._getEquivalentLineForModifiedLineNumber(e)}:null}}],[{key:"_getClassName",value:function(e,t){var n="monaco-diff-editor monaco-editor-background ";return t&&(n+="side-by-side "),n+=(0,Z.m6)(e.type)}},{key:"_equals",value:function(e,t){return!e&&!t||!(!e||!t)&&e.toString()===t.toString()}}]),n}(_.JT);Ce.ONE_OVERVIEW_WIDTH=15,Ce.ENTIRE_DIFF_OVERVIEW_WIDTH=30,Ce.UPDATE_DIFF_DECORATIONS_DELAY=200,Ce=ge([ve(3,ce.p),ve(4,te.p),ve(5,R.i6),ve(6,re.TG),ve(7,w.$),ve(8,Z.XE),ve(9,ae.lT),ve(10,se.i),ve(11,he.e)],Ce);var ke=function(e){(0,s.Z)(n,e);var t=(0,u.Z)(n);function n(e){var i;return(0,c.Z)(this,n),(i=t.call(this))._dataSource=e,i._insertColor=null,i._removeColor=null,i}return(0,d.Z)(n,[{key:"applyColors",value:function(e){var t=(e.getColor(P.yp)||P.Cz).transparent(2),n=(e.getColor(P.P4)||P.ke).transparent(2),i=!t.equals(this._insertColor)||!n.equals(this._removeColor);return this._insertColor=t,this._removeColor=n,i}},{key:"getEditorsDiffDecorations",value:function(e,t,n,i,r){r=r.sort((function(e,t){return e.afterLineNumber-t.afterLineNumber})),i=i.sort((function(e,t){return e.afterLineNumber-t.afterLineNumber}));var o=this._getViewZones(e,i,r,n),a=this._getOriginalEditorDecorations(e,t,n),s=this._getModifiedEditorDecorations(e,t,n);return{original:{decorations:a.decorations,overviewZones:a.overviewZones,zones:o.original},modified:{decorations:s.decorations,overviewZones:s.overviewZones,zones:o.modified}}}}]),n}(_.JT),Se=function(){function e(t){(0,c.Z)(this,e),this._source=t,this._index=-1,this.current=null,this.advance()}return(0,d.Z)(e,[{key:"advance",value:function(){this._index++,this._index0){var n=e[e.length-1];if(n.afterLineNumber===t.afterLineNumber&&null===n.domNode)return void(n.heightInLines+=t.heightInLines)}e.push(t)},y=new Se(this._modifiedForeignVZ),b=new Se(this._originalForeignVZ),w=1,C=1,k=0,S=this._lineChanges.length;k<=S;k++){var x=k0?-1:0),p=x.modifiedStartLineNumber+(x.modifiedEndLineNumber>0?-1:0),h=x.originalEndLineNumber>0?e._getViewLineCount(this._originalEditor,x.originalStartLineNumber,x.originalEndLineNumber):0,d=x.modifiedEndLineNumber>0?e._getViewLineCount(this._modifiedEditor,x.modifiedStartLineNumber,x.modifiedEndLineNumber):0,g=Math.max(x.originalStartLineNumber,x.originalEndLineNumber),v=Math.max(x.modifiedStartLineNumber,x.modifiedEndLineNumber)):(g=f+=1e7+h,v=p+=1e7+d);var L=[],E=[];if(o){var D=void 0;D=x?x.originalEndLineNumber>0?x.originalStartLineNumber-w:x.modifiedStartLineNumber-C:a.getLineCount()-w;for(var N=0;NO&&E.push({afterLineNumber:T,heightInLines:I-O,domNode:null,marginDomNode:null})}x&&(w=(x.originalEndLineNumber>0?x.originalEndLineNumber:x.originalStartLineNumber)+1,C=(x.modifiedEndLineNumber>0?x.modifiedEndLineNumber:x.modifiedStartLineNumber)+1)}for(;y.current&&y.current.afterLineNumber<=v;){var A=void 0;A=y.current.afterLineNumber<=p?f-p+y.current.afterLineNumber:g;var R=null;x&&x.modifiedStartLineNumber<=y.current.afterLineNumber&&y.current.afterLineNumber<=x.modifiedEndLineNumber&&(R=this._createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion()),L.push({afterLineNumber:A,heightInLines:y.current.height/n,domNode:null,marginDomNode:R}),y.advance()}for(;b.current&&b.current.afterLineNumber<=g;){var P=void 0;P=b.current.afterLineNumber<=f?p-f+b.current.afterLineNumber:v,E.push({afterLineNumber:P,heightInLines:b.current.height/t,domNode:null}),b.advance()}if(null!==x&&Oe(x)){var Z=this._produceOriginalFromDiff(x,h,d);Z&&L.push(Z)}if(null!==x&&Ae(x)){var F=this._produceModifiedFromDiff(x,h,d);F&&E.push(F)}var j=0,H=0;for(L=L.sort(m),E=E.sort(m);j=z.heightInLines?(B.heightInLines-=z.heightInLines,H++):(z.heightInLines-=B.heightInLines,j++)}for(;j0&&void 0!==arguments[0]?arguments[0]:this._sashRatio,t=this._dataSource.getWidth()-(this._dataSource.getOptions().renderOverviewRuler?Ce.ENTIRE_DIFF_OVERVIEW_WIDTH:0),i=Math.floor((e||.5)*t),r=Math.floor(.5*t);return i=this._disableSash?r:i||r,t>2*n.MINIMUM_EDITOR_WIDTH?(it-n.MINIMUM_EDITOR_WIDTH&&(i=t-n.MINIMUM_EDITOR_WIDTH)):i=r,this._sashPosition!==i&&(this._sashPosition=i,this._sash.layout()),this._sashPosition}},{key:"_onSashDragStart",value:function(){this._startSashPosition=this._sashPosition}},{key:"_onSashDrag",value:function(e){var t=this._dataSource.getWidth()-(this._dataSource.getOptions().renderOverviewRuler?Ce.ENTIRE_DIFF_OVERVIEW_WIDTH:0),n=this.layout((this._startSashPosition+(e.currentX-e.startX))/t);this._sashRatio=n/t,this._dataSource.relayoutEditors()}},{key:"_onSashDragEnd",value:function(){this._sash.layout()}},{key:"_onSashReset",value:function(){this._sashRatio=.5,this._dataSource.relayoutEditors(),this._sash.layout()}},{key:"getVerticalSashTop",value:function(e){return 0}},{key:"getVerticalSashLeft",value:function(e){return this._sashPosition}},{key:"getVerticalSashHeight",value:function(e){return this._dataSource.getHeight()}},{key:"_getViewZones",value:function(e,t,n){var i=this._dataSource.getOriginalEditor(),r=this._dataSource.getModifiedEditor();return new Ne(e,t,n,i,r).getViewZones()}},{key:"_getOriginalEditorDecorations",value:function(e,t,n){var i,r=this._dataSource.getOriginalEditor(),o=String(this._removeColor),a={decorations:[],overviewZones:[]},s=r.getModel(),u=r._getViewModel(),c=(0,l.Z)(e);try{for(c.s();!(i=c.n()).done;){var d=i.value;if(Ae(d)){a.decorations.push({range:new Q.e(d.originalStartLineNumber,1,d.originalEndLineNumber,1073741824),options:n?Ee.lineDeleteWithSign:Ee.lineDelete}),Oe(d)&&d.charChanges||a.decorations.push(Le(d.originalStartLineNumber,1,d.originalEndLineNumber,1073741824,Ee.charDeleteWholeLine));var h=Pe(s,u,d.originalStartLineNumber,d.originalEndLineNumber);if(a.overviewZones.push(new ne.EY(h.startLineNumber,h.endLineNumber,o)),d.charChanges){var f,p=(0,l.Z)(d.charChanges);try{for(p.s();!(f=p.n()).done;){var g=f.value;if(Ae(g))if(t)for(var v=g.originalStartLineNumber;v<=g.originalEndLineNumber;v++){var m=void 0,_=void 0;m=v===g.originalStartLineNumber?g.originalStartColumn:s.getLineFirstNonWhitespaceColumn(v),_=v===g.originalEndLineNumber?g.originalEndColumn:s.getLineLastNonWhitespaceColumn(v),a.decorations.push(Le(v,m,v,_,Ee.charDelete))}else a.decorations.push(Le(g.originalStartLineNumber,g.originalStartColumn,g.originalEndLineNumber,g.originalEndColumn,Ee.charDelete))}}catch(y){p.e(y)}finally{p.f()}}}}}catch(y){c.e(y)}finally{c.f()}return a}},{key:"_getModifiedEditorDecorations",value:function(e,t,n){var i,r=this._dataSource.getModifiedEditor(),o=String(this._insertColor),a={decorations:[],overviewZones:[]},s=r.getModel(),u=r._getViewModel(),c=(0,l.Z)(e);try{for(c.s();!(i=c.n()).done;){var d=i.value;if(Oe(d)){a.decorations.push({range:new Q.e(d.modifiedStartLineNumber,1,d.modifiedEndLineNumber,1073741824),options:n?Ee.lineInsertWithSign:Ee.lineInsert}),Ae(d)&&d.charChanges||a.decorations.push(Le(d.modifiedStartLineNumber,1,d.modifiedEndLineNumber,1073741824,Ee.charInsertWholeLine));var h=Pe(s,u,d.modifiedStartLineNumber,d.modifiedEndLineNumber);if(a.overviewZones.push(new ne.EY(h.startLineNumber,h.endLineNumber,o)),d.charChanges){var f,p=(0,l.Z)(d.charChanges);try{for(p.s();!(f=p.n()).done;){var g=f.value;if(Oe(g))if(t)for(var v=g.modifiedStartLineNumber;v<=g.modifiedEndLineNumber;v++){var m=void 0,_=void 0;m=v===g.modifiedStartLineNumber?g.modifiedStartColumn:s.getLineFirstNonWhitespaceColumn(v),_=v===g.modifiedEndLineNumber?g.modifiedEndColumn:s.getLineLastNonWhitespaceColumn(v),a.decorations.push(Le(v,m,v,_,Ee.charInsert))}else a.decorations.push(Le(g.modifiedStartLineNumber,g.modifiedStartColumn,g.modifiedEndLineNumber,g.modifiedEndColumn,Ee.charInsert))}}catch(y){p.e(y)}finally{p.f()}}}}}catch(y){c.e(y)}finally{c.f()}return a}}]),n}(ke);De.MINIMUM_EDITOR_WIDTH=100;var Ne=function(e){(0,s.Z)(n,e);var t=(0,u.Z)(n);function n(e,i,r,o,a){return(0,c.Z)(this,n),t.call(this,e,i,r,o,a)}return(0,d.Z)(n,[{key:"_createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion",value:function(){return null}},{key:"_produceOriginalFromDiff",value:function(e,t,n){return n>t?{afterLineNumber:Math.max(e.originalStartLineNumber,e.originalEndLineNumber),heightInLines:n-t,domNode:null}:null}},{key:"_produceModifiedFromDiff",value:function(e,t,n){return t>n?{afterLineNumber:Math.max(e.modifiedStartLineNumber,e.modifiedEndLineNumber),heightInLines:t-n,domNode:null}:null}}]),n}(xe),Me=function(e){(0,s.Z)(n,e);var t=(0,u.Z)(n);function n(e,i){var r;return(0,c.Z)(this,n),(r=t.call(this,e))._decorationsLeft=e.getOriginalEditor().getLayoutInfo().decorationsLeft,r._register(e.getOriginalEditor().onDidLayoutChange((function(t){r._decorationsLeft!==t.decorationsLeft&&(r._decorationsLeft=t.decorationsLeft,e.relayoutEditors())}))),r}return(0,d.Z)(n,[{key:"setEnableSplitViewResizing",value:function(e){}},{key:"_getViewZones",value:function(e,t,n,i){var r=this._dataSource.getOriginalEditor(),o=this._dataSource.getModifiedEditor();return new Te(e,t,n,r,o,i).getViewZones()}},{key:"_getOriginalEditorDecorations",value:function(e,t,n){var i,r=String(this._removeColor),o={decorations:[],overviewZones:[]},a=this._dataSource.getOriginalEditor(),s=a.getModel(),u=a._getViewModel(),c=(0,l.Z)(e);try{for(c.s();!(i=c.n()).done;){var d=i.value;if(Ae(d)){o.decorations.push({range:new Q.e(d.originalStartLineNumber,1,d.originalEndLineNumber,1073741824),options:Ee.lineDeleteMargin});var h=Pe(s,u,d.originalStartLineNumber,d.originalEndLineNumber);o.overviewZones.push(new ne.EY(h.startLineNumber,h.endLineNumber,r))}}}catch(f){c.e(f)}finally{c.f()}return o}},{key:"_getModifiedEditorDecorations",value:function(e,t,n){var i,r=this._dataSource.getModifiedEditor(),o=String(this._insertColor),a={decorations:[],overviewZones:[]},s=r.getModel(),u=r._getViewModel(),c=(0,l.Z)(e);try{for(c.s();!(i=c.n()).done;){var d=i.value;if(Oe(d)){a.decorations.push({range:new Q.e(d.modifiedStartLineNumber,1,d.modifiedEndLineNumber,1073741824),options:n?Ee.lineInsertWithSign:Ee.lineInsert});var h=Pe(s,u,d.modifiedStartLineNumber,d.modifiedEndLineNumber);if(a.overviewZones.push(new ne.EY(h.startLineNumber,h.endLineNumber,o)),d.charChanges){var f,p=(0,l.Z)(d.charChanges);try{for(p.s();!(f=p.n()).done;){var g=f.value;if(Oe(g))if(t)for(var v=g.modifiedStartLineNumber;v<=g.modifiedEndLineNumber;v++){var m=void 0,_=void 0;m=v===g.modifiedStartLineNumber?g.modifiedStartColumn:s.getLineFirstNonWhitespaceColumn(v),_=v===g.modifiedEndLineNumber?g.modifiedEndColumn:s.getLineLastNonWhitespaceColumn(v),a.decorations.push(Le(v,m,v,_,Ee.charInsert))}else a.decorations.push(Le(g.modifiedStartLineNumber,g.modifiedStartColumn,g.modifiedEndLineNumber,g.modifiedEndColumn,Ee.charInsert))}}catch(y){p.e(y)}finally{p.f()}}else a.decorations.push(Le(d.modifiedStartLineNumber,1,d.modifiedEndLineNumber,1073741824,Ee.charInsertWholeLine))}}}catch(y){c.e(y)}finally{c.f()}return a}},{key:"layout",value:function(){return Math.max(5,this._decorationsLeft)}}]),n}(ke),Te=function(e){(0,s.Z)(n,e);var t=(0,u.Z)(n);function n(e,i,r,o,a,s){var u;return(0,c.Z)(this,n),(u=t.call(this,e,i,r,o,a))._originalModel=o.getModel(),u._renderIndicators=s,u._pendingLineChange=[],u._pendingViewZones=[],u._lineBreaksComputer=u._modifiedEditor._getViewModel().createLineBreaksComputer(),u}return(0,d.Z)(n,[{key:"getViewZones",value:function(){var e=(0,o.Z)((0,a.Z)(n.prototype),"getViewZones",this).call(this);return this._finalize(e),e}},{key:"_createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion",value:function(){var e=document.createElement("div");return e.className="inline-added-margin-view-zone",e}},{key:"_produceOriginalFromDiff",value:function(e,t,n){var i=document.createElement("div");return i.className="inline-added-margin-view-zone",{afterLineNumber:Math.max(e.originalStartLineNumber,e.originalEndLineNumber),heightInLines:n,domNode:document.createElement("div"),marginDomNode:i}}},{key:"_produceModifiedFromDiff",value:function(e,t,n){var i=document.createElement("div");i.className="view-lines line-delete ".concat(pe.S);var r=document.createElement("div");r.className="inline-deleted-margin-view-zone";for(var o={shouldNotShrink:!0,afterLineNumber:0===e.modifiedEndLineNumber?e.modifiedStartLineNumber:e.modifiedStartLineNumber-1,heightInLines:t,minWidthInPx:0,domNode:i,marginDomNode:r,diff:{originalStartLineNumber:e.originalStartLineNumber,originalEndLineNumber:e.originalEndLineNumber,modifiedStartLineNumber:e.modifiedStartLineNumber,modifiedEndLineNumber:e.modifiedEndLineNumber,originalModel:this._originalModel,viewLineCounts:null}},a=e.originalStartLineNumber;a<=e.originalEndLineNumber;a++)this._lineBreaksComputer.addRequest(this._originalModel.getLineContent(a),null);return this._pendingLineChange.push(e),this._pendingViewZones.push(o),o}},{key:"_finalize",value:function(e){for(var t=this._modifiedEditor.getOptions(),n=this._modifiedEditor.getModel().getOptions().tabSize,i=t.get(40),r=t.get(27),o=i.typicalHalfwidthCharacterWidth,a=t.get(90),s=this._originalModel.mightContainNonBasicASCII(),u=this._originalModel.mightContainRTL(),c=t.get(55),d=t.get(127).decorationsWidth,h=t.get(102),f=t.get(85),p=t.get(79),g=t.get(41),v=this._lineBreaksComputer.finalize(),m=0,_=0;_0,N=(0,X.l$)(1e4),M=0,T=0,I=null,O=b.originalStartLineNumber;O<=b.originalEndLineNumber;O++){var R=O-b.originalStartLineNumber,P=this._originalModel.getLineTokens(O),Z=P.getLineContent(),F=v[m++],j=ie.Kp.filter(S,O,1,Z.length+1);if(F){var H,B=0,z=(0,l.Z)(F.breakOffsets);try{for(z.s();!(H=z.n()).done;){var W=H.value,V=P.sliceAndInflate(B,W,0),Y=Z.substring(B,W);M=Math.max(M,this._renderOriginalLine(T++,Y,V,ie.Kp.extractWrapped(j,B,W),D,s,u,i,r,c,d,h,f,p,g,n,N,k)),B=W}}catch($){z.e($)}finally{z.f()}for(I||(I=[]);I.length');var _=A.wA.isBasicASCII(t,o),y=A.wA.containsRTL(t,_,a),b=(0,O.d1)(new O.IJ(s.isMonospace&&!u,s.canUseHalfwidthRightwardsArrow,t,!1,_,y,0,n,i,g,0,s.spaceWidth,s.middotWidth,s.wsmiddotWidth,d,h,f,p!==N.n0.OFF,null),v);if(v.appendASCIIString(""),this._renderIndicators){var w=document.createElement("div");w.className="delete-sign ".concat(Z.kS.asClassName(be)),w.setAttribute("style","position:absolute;top:".concat(e*l,"px;width:").concat(c,"px;height:").concat(l,"px;right:0;")),m.appendChild(w)}var C=b.characterMapping.getAbsoluteOffsets();return C.length>0?C[C.length-1]:0}}]),n}(xe);function Ie(e,t){return(0,N.NY)(e,t,["off","on","inherit"])}function Oe(e){return e.modifiedEndLineNumber>0}function Ae(e){return e.originalEndLineNumber>0}function Re(){var e=document.createElement("div");return e.className="diagonal-fill",e}function Pe(e,t,n,i){var r=e.getLineCount();return n=Math.min(r,Math.max(1,n)),i=Math.min(r,Math.max(1,i)),t.coordinatesConverter.convertModelRangeToViewRange(new Q.e(n,e.getLineMinColumn(n),i,e.getLineMaxColumn(i)))}(0,Z.Ic)((function(e,t){var n=e.getColor(P.yp);n&&(t.addRule(".monaco-editor .line-insert, .monaco-editor .char-insert { background-color: ".concat(n,"; }")),t.addRule(".monaco-diff-editor .line-insert, .monaco-diff-editor .char-insert { background-color: ".concat(n,"; }")),t.addRule(".monaco-editor .inline-added-margin-view-zone { background-color: ".concat(n,"; }")));var i=e.getColor(P.P4);i&&(t.addRule(".monaco-editor .line-delete, .monaco-editor .char-delete { background-color: ".concat(i,"; }")),t.addRule(".monaco-diff-editor .line-delete, .monaco-diff-editor .char-delete { background-color: ".concat(i,"; }")),t.addRule(".monaco-editor .inline-deleted-margin-view-zone { background-color: ".concat(i,"; }")));var r=e.getColor(P.XL);r&&t.addRule(".monaco-editor .line-insert, .monaco-editor .char-insert { border: 1px ".concat("hc"===e.type?"dashed":"solid"," ").concat(r,"; }"));var o=e.getColor(P.mH);o&&t.addRule(".monaco-editor .line-delete, .monaco-editor .char-delete { border: 1px ".concat("hc"===e.type?"dashed":"solid"," ").concat(o,"; }"));var a=e.getColor(P._w);a&&t.addRule(".monaco-diff-editor.side-by-side .editor.modified { box-shadow: -6px 0 5px -5px ".concat(a,"; }"));var s=e.getColor(P.LL);s&&t.addRule(".monaco-diff-editor.side-by-side .editor.modified { border-left: 1px solid ".concat(s,"; }"));var u=e.getColor(P.et);u&&t.addRule("\n\t\t\t.monaco-diff-editor .diffViewport {\n\t\t\t\tbackground: ".concat(u,";\n\t\t\t}\n\t\t"));var l=e.getColor(P.AB);l&&t.addRule("\n\t\t\t.monaco-diff-editor .diffViewport:hover {\n\t\t\t\tbackground: ".concat(l,";\n\t\t\t}\n\t\t"));var c=e.getColor(P.yn);c&&t.addRule("\n\t\t\t.monaco-diff-editor .diffViewport:active {\n\t\t\t\tbackground: ".concat(c,";\n\t\t\t}\n\t\t"));var d=e.getColor(P.L_);t.addRule("\n\t.monaco-editor .diagonal-fill {\n\t\tbackground-image: linear-gradient(\n\t\t\t-45deg,\n\t\t\t".concat(d," 12.5%,\n\t\t\t#0000 12.5%, #0000 50%,\n\t\t\t").concat(d," 50%, ").concat(d," 62.5%,\n\t\t\t#0000 62.5%, #0000 100%\n\t\t);\n\t\tbackground-size: 8px 8px;\n\t}\n\t"))}))},59180:function(e,t,n){"use strict";n.d(t,{F:function(){return g}});var i=n(15671),r=n(43144),o=n(11752),a=n(61120),s=n(60136),u=n(43668),l=n(96147),c=n(11732),d=n(81626),h=n(10405),f=n(67033),p={followsCaret:!0,ignoreCharChanges:!0,alwaysRevealFirst:!0},g=function(e){(0,s.Z)(n,e);var t=(0,u.Z)(n);function n(e){var r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(0,i.Z)(this,n),(r=t.call(this))._onDidUpdate=r._register(new c.Q5),r._editor=e,r._options=h.jB(o,p,!1),r.disposed=!1,r.nextIdx=-1,r.ranges=[],r.ignoreSelectionChange=!1,r.revealFirst=Boolean(r._options.alwaysRevealFirst),r._register(r._editor.onDidDispose((function(){return r.dispose()}))),r._register(r._editor.onDidUpdateDiff((function(){return r._onDiffUpdated()}))),r._options.followsCaret&&r._register(r._editor.getModifiedEditor().onDidChangeCursorPosition((function(e){r.ignoreSelectionChange||(r.nextIdx=-1)}))),r._options.alwaysRevealFirst&&r._register(r._editor.getModifiedEditor().onDidChangeModel((function(e){r.revealFirst=!0}))),r._init(),r}return(0,r.Z)(n,[{key:"_init",value:function(){this._editor.getLineChanges()}},{key:"_onDiffUpdated",value:function(){this._init(),this._compute(this._editor.getLineChanges()),this.revealFirst&&null!==this._editor.getLineChanges()&&(this.revealFirst=!1,this.nextIdx=-1,this.next(1))}},{key:"_compute",value:function(e){var t=this;this.ranges=[],e&&e.forEach((function(e){!t._options.ignoreCharChanges&&e.charChanges?e.charChanges.forEach((function(e){t.ranges.push({rhs:!0,range:new f.e(e.modifiedStartLineNumber,e.modifiedStartColumn,e.modifiedEndLineNumber,e.modifiedEndColumn)})})):t.ranges.push({rhs:!0,range:new f.e(e.modifiedStartLineNumber,1,e.modifiedStartLineNumber,1)})})),this.ranges.sort((function(e,t){return e.range.getStartPosition().isBeforeOrEqual(t.range.getStartPosition())?-1:t.range.getStartPosition().isBeforeOrEqual(e.range.getStartPosition())?1:0})),this._onDidUpdate.fire(this)}},{key:"_initIdx",value:function(e){var t=!1,n=this._editor.getPosition();if(n){for(var i=0,r=this.ranges.length;i=this.ranges.length&&(this.nextIdx=0)):(this.nextIdx-=1,this.nextIdx<0&&(this.nextIdx=this.ranges.length-1));var n=this.ranges[this.nextIdx];this.ignoreSelectionChange=!0;try{var i=n.range.getStartPosition();this._editor.setPosition(i),this._editor.revealPositionInCenter(i,t)}finally{this.ignoreSelectionChange=!1}}}},{key:"canNavigate",value:function(){return this.ranges&&this.ranges.length>0}},{key:"next",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this._move(!0,e)}},{key:"previous",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this._move(!1,e)}},{key:"dispose",value:function(){(0,o.Z)((0,a.Z)(n.prototype),"dispose",this).call(this),this.ranges=[],this.disposed=!0}}]),n}(d.JT)},97033:function(e,t,n){"use strict";n.d(t,{OY:function(){return s},Sj:function(){return u},T4:function(){return a},Uo:function(){return l},hP:function(){return c}});var i=n(15671),r=n(43144),o=n(74964),a=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];(0,i.Z)(this,e),this._range=t,this._text=n,this.insertsAutoWhitespace=r}return(0,r.Z)(e,[{key:"getEditOperations",value:function(e,t){t.addTrackedEditOperation(this._range,this._text)}},{key:"computeCursorState",value:function(e,t){var n=t.getInverseEditOperations()[0].range;return new o.Y(n.endLineNumber,n.endColumn,n.endLineNumber,n.endColumn)}}]),e}(),s=function(){function e(t,n){(0,i.Z)(this,e),this._range=t,this._text=n}return(0,r.Z)(e,[{key:"getEditOperations",value:function(e,t){t.addTrackedEditOperation(this._range,this._text)}},{key:"computeCursorState",value:function(e,t){var n=t.getInverseEditOperations()[0].range;return new o.Y(n.startLineNumber,n.startColumn,n.endLineNumber,n.endColumn)}}]),e}(),u=function(){function e(t,n){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];(0,i.Z)(this,e),this._range=t,this._text=n,this.insertsAutoWhitespace=r}return(0,r.Z)(e,[{key:"getEditOperations",value:function(e,t){t.addTrackedEditOperation(this._range,this._text)}},{key:"computeCursorState",value:function(e,t){var n=t.getInverseEditOperations()[0].range;return new o.Y(n.startLineNumber,n.startColumn,n.startLineNumber,n.startColumn)}}]),e}(),l=function(){function e(t,n,r,o){var a=arguments.length>4&&void 0!==arguments[4]&&arguments[4];(0,i.Z)(this,e),this._range=t,this._text=n,this._columnDeltaOffset=o,this._lineNumberDeltaOffset=r,this.insertsAutoWhitespace=a}return(0,r.Z)(e,[{key:"getEditOperations",value:function(e,t){t.addTrackedEditOperation(this._range,this._text)}},{key:"computeCursorState",value:function(e,t){var n=t.getInverseEditOperations()[0].range;return new o.Y(n.endLineNumber+this._lineNumberDeltaOffset,n.endColumn+this._columnDeltaOffset,n.endLineNumber+this._lineNumberDeltaOffset,n.endColumn+this._columnDeltaOffset)}}]),e}(),c=function(){function e(t,n,r){var o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];(0,i.Z)(this,e),this._range=t,this._text=n,this._initialSelection=r,this._forceMoveMarkers=o,this._selectionId=null}return(0,r.Z)(e,[{key:"getEditOperations",value:function(e,t){t.addTrackedEditOperation(this._range,this._text,this._forceMoveMarkers),this._selectionId=t.trackSelection(this._initialSelection)}},{key:"computeCursorState",value:function(e,t){return t.getTrackedSelection(this._selectionId)}}]),e}()},83:function(e,t,n){"use strict";n.d(t,{U:function(){return h}});var i=n(15671),r=n(43144),o=n(51747),a=n(16274),s=n(67033),u=n(74964),l=n(65262),c=Object.create(null);function d(e,t){if(t<=0)return"";c[e]||(c[e]=["",e]);for(var n=c[e],i=n.length;i<=t;i++)n[i]=n[i-1]+e;return n[t]}var h=function(){function e(t,n){(0,i.Z)(this,e),this._opts=n,this._selection=t,this._selectionId=null,this._useLastEditRangeForCursorEndPosition=!1,this._selectionStartColumnStaysPut=!1}return(0,r.Z)(e,[{key:"_addEditOperation",value:function(e,t,n){this._useLastEditRangeForCursorEndPosition?e.addTrackedEditOperation(t,n):e.addEditOperation(t,n)}},{key:"getEditOperations",value:function(t,n){var i=this._selection.startLineNumber,r=this._selection.endLineNumber;1===this._selection.endColumn&&i!==r&&(r-=1);var u=this._opts,c=u.tabSize,h=u.indentSize,f=u.insertSpaces,p=i===r;if(this._opts.useTabStops){this._selection.isEmpty()&&/^\s*$/.test(t.getLineContent(i))&&(this._useLastEditRangeForCursorEndPosition=!0);for(var g=0,v=0,m=i;m<=r;m++,g=v){v=0;var _=t.getLineContent(m),y=o.LC(_);if((!this._opts.isUnshift||0!==_.length&&0!==y)&&(p||this._opts.isUnshift||0!==_.length)){if(-1===y&&(y=_.length),m>1)if(a.io.visibleColumnFromColumn(_,y+1,c)%h!==0&&t.isCheapToTokenize(m-1)){var b=l.zu.getEnterAction(this._opts.autoIndent,t,new s.e(m-1,t.getLineMaxColumn(m-1),m-1,t.getLineMaxColumn(m-1)));if(b){if(v=g,b.appendText)for(var w=0,C=b.appendText.length;w1&&void 0!==arguments[1]?arguments[1]:null;(0,a.Z)(this,e),this.schema=void 0,this.id=t,this.name="_never_",this.defaultValue=void 0,this.deps=n}return(0,s.Z)(e,[{key:"validate",value:function(e){return this.defaultValue}}]),e}(),m=function(){function e(t,n,i,r){(0,a.Z)(this,e),this.id=t,this.name=n,this.defaultValue=i,this.schema=r}return(0,s.Z)(e,[{key:"validate",value:function(e){return"undefined"===typeof e?this.defaultValue:e}},{key:"compute",value:function(e,t,n){return n}}]),e}();function _(e,t){return"undefined"===typeof e?t:"false"!==e&&Boolean(e)}var y=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(e,i,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0;return(0,a.Z)(this,n),"undefined"!==typeof o&&(o.type="boolean",o.default=r),t.call(this,e,i,r,o)}return(0,s.Z)(n,[{key:"validate",value:function(e){return _(e,this.defaultValue)}}]),n}(m),b=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(e,i,r,o,s){var u,l=arguments.length>5&&void 0!==arguments[5]?arguments[5]:void 0;return(0,a.Z)(this,n),"undefined"!==typeof l&&(l.type="integer",l.default=r,l.minimum=o,l.maximum=s),(u=t.call(this,e,i,r,l)).minimum=o,u.maximum=s,u}return(0,s.Z)(n,[{key:"validate",value:function(e){return n.clampedInt(e,this.defaultValue,this.minimum,this.maximum)}}],[{key:"clampedInt",value:function(e,t,n,i){if("undefined"===typeof e)return t;var r=parseInt(e,10);return isNaN(r)?t:(r=Math.max(n,r),0|(r=Math.min(i,r)))}}]),n}(m),w=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(e,i,r,o,s){var u;return(0,a.Z)(this,n),"undefined"!==typeof s&&(s.type="number",s.default=r),(u=t.call(this,e,i,r,s)).validationFn=o,u}return(0,s.Z)(n,[{key:"validate",value:function(e){return this.validationFn(n.float(e,this.defaultValue))}}],[{key:"clamp",value:function(e,t,n){return en?n:e}},{key:"float",value:function(e,t){if("number"===typeof e)return e;if("undefined"===typeof e)return t;var n=parseFloat(e);return isNaN(n)?t:n}}]),n}(m),C=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(e,i,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0;return(0,a.Z)(this,n),"undefined"!==typeof o&&(o.type="string",o.default=r),t.call(this,e,i,r,o)}return(0,s.Z)(n,[{key:"validate",value:function(e){return n.string(e,this.defaultValue)}}],[{key:"string",value:function(e,t){return"string"!==typeof e?t:e}}]),n}(m);function k(e,t,n){return"string"!==typeof e||-1===n.indexOf(e)?t:e}var S=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(e,i,r,o){var s,u=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0;return(0,a.Z)(this,n),"undefined"!==typeof u&&(u.type="string",u.enum=o,u.default=r),(s=t.call(this,e,i,r,u))._allowedValues=o,s}return(0,s.Z)(n,[{key:"validate",value:function(e){return k(e,this.defaultValue,this._allowedValues)}}]),n}(m),x=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(e,i,r,o,s,u){var l,c=arguments.length>6&&void 0!==arguments[6]?arguments[6]:void 0;return(0,a.Z)(this,n),"undefined"!==typeof c&&(c.type="string",c.enum=s,c.default=o),(l=t.call(this,e,i,r,c))._allowedValues=s,l._convert=u,l}return(0,s.Z)(n,[{key:"validate",value:function(e){return"string"!==typeof e||-1===this._allowedValues.indexOf(e)?this.defaultValue:this._convert(e)}}]),n}(g);var L,E=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[u.N("accessibilitySupport.auto","The editor will use platform APIs to detect when a Screen Reader is attached."),u.N("accessibilitySupport.on","The editor will be permanently optimized for usage with a Screen Reader. Word wrapping will be disabled."),u.N("accessibilitySupport.off","The editor will never be optimized for usage with a Screen Reader.")],default:"auto",description:u.N("accessibilitySupport","Controls whether the editor should run in a mode where it is optimized for screen readers. Setting to on will disable word wrapping.")})}return(0,s.Z)(n,[{key:"validate",value:function(e){switch(e){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}},{key:"compute",value:function(e,t,n){return 0===n?e.accessibilitySupport:n}}]),n}(g),D=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){(0,a.Z)(this,n);var e={insertSpace:!0,ignoreEmptyLines:!0};return t.call(this,17,"comments",e,{"editor.comments.insertSpace":{type:"boolean",default:e.insertSpace,description:u.N("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:e.ignoreEmptyLines,description:u.N("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}return(0,s.Z)(n,[{key:"validate",value:function(e){if(!e||"object"!==typeof e)return this.defaultValue;var t=e;return{insertSpace:_(t.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:_(t.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}]),n}(g);!function(e){e[e.Line=1]="Line",e[e.Block=2]="Block",e[e.Underline=3]="Underline",e[e.LineThin=4]="LineThin",e[e.BlockOutline=5]="BlockOutline",e[e.UnderlineThin=6]="UnderlineThin"}(L||(L={}));var N=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,124,[62,31])}return(0,s.Z)(n,[{key:"compute",value:function(e,t,n){var i=["monaco-editor"];return t.get(31)&&i.push(t.get(31)),e.extraEditorClassName&&i.push(e.extraEditorClassName),"default"===t.get(62)?i.push("mouse-default"):"copy"===t.get(62)&&i.push("mouse-copy"),t.get(97)&&i.push("showUnused"),t.get(122)&&i.push("showDeprecated"),i.join(" ")}}]),n}(v),M=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,30,"emptySelectionClipboard",!0,{description:u.N("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}return(0,s.Z)(n,[{key:"compute",value:function(e,t,n){return n&&e.emptySelectionClipboard}}]),n}(y),T=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){(0,a.Z)(this,n);var e={cursorMoveOnType:!0,seedSearchStringFromSelection:!0,autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};return t.call(this,33,"find",e,{"editor.find.cursorMoveOnType":{type:"boolean",default:e.cursorMoveOnType,description:u.N("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"boolean",default:e.seedSearchStringFromSelection,description:u.N("find.seedSearchStringFromSelection","Controls whether the search string in the Find Widget is seeded from the editor selection.")},"editor.find.autoFindInSelection":{type:"string",enum:["never","always","multiline"],default:e.autoFindInSelection,enumDescriptions:[u.N("editor.find.autoFindInSelection.never","Never turn on Find in selection automatically (default)."),u.N("editor.find.autoFindInSelection.always","Always turn on Find in selection automatically."),u.N("editor.find.autoFindInSelection.multiline","Turn on Find in selection automatically when multiple lines of content are selected.")],description:u.N("find.autoFindInSelection","Controls the condition for turning on find in selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:e.globalFindClipboard,description:u.N("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:l.dz},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:e.addExtraSpaceOnTop,description:u.N("find.addExtraSpaceOnTop","Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.")},"editor.find.loop":{type:"boolean",default:e.loop,description:u.N("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}return(0,s.Z)(n,[{key:"validate",value:function(e){if(!e||"object"!==typeof e)return this.defaultValue;var t=e;return{cursorMoveOnType:_(t.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:_(t.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection),autoFindInSelection:"boolean"===typeof e.autoFindInSelection?e.autoFindInSelection?"always":"never":k(t.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:_(t.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:_(t.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:_(t.loop,this.defaultValue.loop)}}}]),n}(g),I=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,41,"fontLigatures",n.OFF,{anyOf:[{type:"boolean",description:u.N("fontLigatures","Enables/Disables font ligatures ('calt' and 'liga' font features). Change this to a string for fine-grained control of the 'font-feature-settings' CSS property.")},{type:"string",description:u.N("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:u.N("fontLigaturesGeneral","Configures font ligatures or font features. Can be either a boolean to enable/disable ligatures or a string for the value of the CSS 'font-feature-settings' property."),default:!1})}return(0,s.Z)(n,[{key:"validate",value:function(e){return"undefined"===typeof e?this.defaultValue:"string"===typeof e?"false"===e?n.OFF:"true"===e?n.ON:e:Boolean(e)?n.ON:n.OFF}}]),n}(g);I.OFF='"liga" off, "calt" off',I.ON='"liga" on, "calt" on';var O=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,40)}return(0,s.Z)(n,[{key:"compute",value:function(e,t,n){return e.fontInfo}}]),n}(v),A=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,42,"fontSize",ne.fontSize,{type:"number",minimum:6,maximum:100,default:ne.fontSize,description:u.N("fontSize","Controls the font size in pixels.")})}return(0,s.Z)(n,[{key:"validate",value:function(e){var t=w.float(e,this.defaultValue);return 0===t?ne.fontSize:w.clamp(t,6,100)}},{key:"compute",value:function(e,t,n){return e.fontInfo.fontSize}}]),n}(m),R=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,43,"fontWeight",ne.fontWeight,{anyOf:[{type:"number",minimum:n.MINIMUM_VALUE,maximum:n.MAXIMUM_VALUE,errorMessage:u.N("fontWeightErrorMessage",'Only "normal" and "bold" keywords or numbers between 1 and 1000 are allowed.')},{type:"string",pattern:"^(normal|bold|1000|[1-9][0-9]{0,2})$"},{enum:n.SUGGESTION_VALUES}],default:ne.fontWeight,description:u.N("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}return(0,s.Z)(n,[{key:"validate",value:function(e){return"normal"===e||"bold"===e?e:String(b.clampedInt(e,ne.fontWeight,n.MINIMUM_VALUE,n.MAXIMUM_VALUE))}}]),n}(g);R.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"],R.MINIMUM_VALUE=1,R.MAXIMUM_VALUE=1e3;var P=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){(0,a.Z)(this,n);var e={multiple:"peek",multipleDefinitions:"peek",multipleTypeDefinitions:"peek",multipleDeclarations:"peek",multipleImplementations:"peek",multipleReferences:"peek",alternativeDefinitionCommand:"editor.action.goToReferences",alternativeTypeDefinitionCommand:"editor.action.goToReferences",alternativeDeclarationCommand:"editor.action.goToReferences",alternativeImplementationCommand:"",alternativeReferenceCommand:""},i={type:"string",enum:["peek","gotoAndPeek","goto"],default:e.multiple,enumDescriptions:[u.N("editor.gotoLocation.multiple.peek","Show peek view of the results (default)"),u.N("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a peek view"),u.N("editor.gotoLocation.multiple.goto","Go to the primary result and enable peek-less navigation to others")]},r=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];return t.call(this,47,"gotoLocation",e,{"editor.gotoLocation.multiple":{deprecationMessage:u.N("editor.gotoLocation.multiple.deprecated","This setting is deprecated, please use separate settings like 'editor.editor.gotoLocation.multipleDefinitions' or 'editor.editor.gotoLocation.multipleImplementations' instead.")},"editor.gotoLocation.multipleDefinitions":Object.assign({description:u.N("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist.")},i),"editor.gotoLocation.multipleTypeDefinitions":Object.assign({description:u.N("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist.")},i),"editor.gotoLocation.multipleDeclarations":Object.assign({description:u.N("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist.")},i),"editor.gotoLocation.multipleImplementations":Object.assign({description:u.N("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist.")},i),"editor.gotoLocation.multipleReferences":Object.assign({description:u.N("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist.")},i),"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:e.alternativeDefinitionCommand,enum:r,description:u.N("alternativeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Definition' is the current location.")},"editor.gotoLocation.alternativeTypeDefinitionCommand":{type:"string",default:e.alternativeTypeDefinitionCommand,enum:r,description:u.N("alternativeTypeDefinitionCommand","Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.")},"editor.gotoLocation.alternativeDeclarationCommand":{type:"string",default:e.alternativeDeclarationCommand,enum:r,description:u.N("alternativeDeclarationCommand","Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.")},"editor.gotoLocation.alternativeImplementationCommand":{type:"string",default:e.alternativeImplementationCommand,enum:r,description:u.N("alternativeImplementationCommand","Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.")},"editor.gotoLocation.alternativeReferenceCommand":{type:"string",default:e.alternativeReferenceCommand,enum:r,description:u.N("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}return(0,s.Z)(n,[{key:"validate",value:function(e){var t,n,i,r,o;if(!e||"object"!==typeof e)return this.defaultValue;var a=e;return{multiple:k(a.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:null!==(t=a.multipleDefinitions)&&void 0!==t?t:k(a.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:null!==(n=a.multipleTypeDefinitions)&&void 0!==n?n:k(a.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:null!==(i=a.multipleDeclarations)&&void 0!==i?i:k(a.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:null!==(r=a.multipleImplementations)&&void 0!==r?r:k(a.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:null!==(o=a.multipleReferences)&&void 0!==o?o:k(a.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:C.string(a.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:C.string(a.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:C.string(a.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:C.string(a.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:C.string(a.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand)}}}]),n}(g),Z=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){(0,a.Z)(this,n);var e={enabled:!0,delay:300,sticky:!0};return t.call(this,50,"hover",e,{"editor.hover.enabled":{type:"boolean",default:e.enabled,description:u.N("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:e.delay,description:u.N("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:e.sticky,description:u.N("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")}})}return(0,s.Z)(n,[{key:"validate",value:function(e){if(!e||"object"!==typeof e)return this.defaultValue;var t=e;return{enabled:_(t.enabled,this.defaultValue.enabled),delay:b.clampedInt(t.delay,this.defaultValue.delay,0,1e4),sticky:_(t.sticky,this.defaultValue.sticky)}}}]),n}(g),F=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,127,[46,54,35,61,89,56,57,91,114,117,118,119,2])}return(0,s.Z)(n,[{key:"compute",value:function(e,t,i){return n.computeLayout(t,{memory:e.memory,outerWidth:e.outerWidth,outerHeight:e.outerHeight,isDominatedByLongLines:e.isDominatedByLongLines,lineHeight:e.fontInfo.lineHeight,viewLineCount:e.viewLineCount,lineNumbersDigitCount:e.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:e.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:e.fontInfo.maxDigitWidth,pixelRatio:e.pixelRatio})}}],[{key:"computeContainedMinimapLineCount",value:function(e){var t=e.height/e.lineHeight,n=e.scrollBeyondLastLine?t-1:0,i=(e.viewLineCount+n)/(e.pixelRatio*e.height);return{typicalViewportLineCount:t,extraLinesBeyondLastLine:n,desiredRatio:i,minimapLineCount:Math.floor(e.viewLineCount/i)}}},{key:"_computeMinimapLayout",value:function(e,t){var i=e.outerWidth,r=e.outerHeight,o=e.pixelRatio;if(!e.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(o*r),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:r};var a=t.stableMinimapLayoutInput,s=a&&e.outerHeight===a.outerHeight&&e.lineHeight===a.lineHeight&&e.typicalHalfwidthCharacterWidth===a.typicalHalfwidthCharacterWidth&&e.pixelRatio===a.pixelRatio&&e.scrollBeyondLastLine===a.scrollBeyondLastLine&&e.minimap.enabled===a.minimap.enabled&&e.minimap.side===a.minimap.side&&e.minimap.size===a.minimap.size&&e.minimap.showSlider===a.minimap.showSlider&&e.minimap.renderCharacters===a.minimap.renderCharacters&&e.minimap.maxColumn===a.minimap.maxColumn&&e.minimap.scale===a.minimap.scale&&e.verticalScrollbarWidth===a.verticalScrollbarWidth&&e.isViewportWrapping===a.isViewportWrapping,u=e.lineHeight,l=e.typicalHalfwidthCharacterWidth,c=e.scrollBeyondLastLine,h=e.minimap.renderCharacters,f=o>=2?Math.round(2*e.minimap.scale):e.minimap.scale,p=e.minimap.maxColumn,g=e.minimap.size,v=e.minimap.side,m=e.verticalScrollbarWidth,_=e.viewLineCount,y=e.remainingWidth,b=e.isViewportWrapping,w=h?2:3,C=Math.floor(o*r),k=C/o,S=!1,x=!1,L=w*f,E=f/o,D=1;if("fill"===g||"fit"===g){var N=n.computeContainedMinimapLineCount({viewLineCount:_,scrollBeyondLastLine:c,height:r,lineHeight:u,pixelRatio:o}),M=N.typicalViewportLineCount,T=N.extraLinesBeyondLastLine,I=N.desiredRatio;if(_/N.minimapLineCount>1)S=!0,x=!0,L=1,E=(f=1)/o;else{var O=!1,A=f+1;if("fit"===g){var R=Math.ceil((_+T)*L);b&&s&&y<=t.stableFitRemainingWidth?(O=!0,A=t.stableFitMaxMinimapScale):(O=R>C,b&&O?(t.stableMinimapLayoutInput=e,t.stableFitRemainingWidth=y):(t.stableMinimapLayoutInput=null,t.stableFitRemainingWidth=0))}if("fill"===g||O){S=!0;var P=f;L=Math.min(u*o,Math.max(1,Math.floor(1/I))),(f=Math.min(A,Math.max(1,Math.floor(L/w))))>P&&(D=Math.min(2,f/P)),E=f/o/D,C=Math.ceil(Math.max(M,_+T)*L),b&&O&&(t.stableFitMaxMinimapScale=f)}}}var Z=Math.floor(p*E),F=Math.min(Z,Math.max(0,Math.floor((y-m-2)*E/(l+E)))+d),j=Math.floor(o*F),H=j/o;return{renderMinimap:h?1:2,minimapLeft:"left"===v?0:i-F-m,minimapWidth:F,minimapHeightIsEditorHeight:S,minimapIsSampling:x,minimapScale:f,minimapLineHeight:L,minimapCanvasInnerWidth:j=Math.floor(j*D),minimapCanvasInnerHeight:C,minimapCanvasOuterWidth:H,minimapCanvasOuterHeight:k}}},{key:"computeLayout",value:function(e,t){var i,r=0|t.outerWidth,o=0|t.outerHeight,a=0|t.lineHeight,s=0|t.lineNumbersDigitCount,u=t.typicalHalfwidthCharacterWidth,l=t.maxDigitWidth,c=t.pixelRatio,d=t.viewLineCount,h=e.get(119),f="inherit"===h?e.get(118):h,g="inherit"===f?e.get(114):f,v=e.get(117),m=e.get(2),_=t.isDominatedByLongLines,y=e.get(46),w=0!==e.get(56).renderType,C=e.get(57),k=e.get(91),S=e.get(61),x=e.get(89),L=x.verticalScrollbarSize,E=x.verticalHasArrows,D=x.arrowSize,N=x.horizontalScrollbarSize,M=e.get(54),T=e.get(35);if("string"===typeof M&&/^\d+(\.\d+)?ch$/.test(M)){var I=parseFloat(M.substr(0,M.length-2));i=b.clampedInt(I*u,0,0,1e3)}else i=b.clampedInt(M,0,0,1e3);T&&(i+=16);var O=0;if(w){var A=Math.max(s,C);O=Math.round(A*l)}var R=0;y&&(R=a);var P=0,Z=P+R,F=Z+O,j=F+i,H=r-R-O-i,B=!1,z=!1,W=-1;2!==m&&("inherit"===f&&_?(B=!0,z=!0):"on"===g||"bounded"===g?z=!0:"wordWrapColumn"===g&&(W=v));var V=n._computeMinimapLayout({outerWidth:r,outerHeight:o,lineHeight:a,typicalHalfwidthCharacterWidth:u,pixelRatio:c,scrollBeyondLastLine:k,minimap:S,verticalScrollbarWidth:L,viewLineCount:d,remainingWidth:H,isViewportWrapping:z},t.memory||new p);0!==V.renderMinimap&&0===V.minimapLeft&&(P+=V.minimapWidth,Z+=V.minimapWidth,F+=V.minimapWidth,j+=V.minimapWidth);var Y=H-V.minimapWidth,U=Math.max(1,Math.floor((Y-L-2)/u)),K=E?D:0;return z&&(W=Math.max(1,U),"bounded"===g&&(W=Math.min(W,v))),{width:r,height:o,glyphMarginLeft:P,glyphMarginWidth:R,lineNumbersLeft:Z,lineNumbersWidth:O,decorationsLeft:F,decorationsWidth:i,contentLeft:j,contentWidth:Y,minimap:V,viewportColumn:U,isWordWrapMinified:B,isViewportWrapping:z,wrappingColumn:W,verticalScrollbarWidth:L,horizontalScrollbarHeight:N,overviewRuler:{top:K,width:L,height:o-2*K,right:0}}}}]),n}(v),j=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){(0,a.Z)(this,n);var e={enabled:!0};return t.call(this,53,"lightbulb",e,{"editor.lightbulb.enabled":{type:"boolean",default:e.enabled,description:u.N("codeActions","Enables the code action lightbulb in the editor.")}})}return(0,s.Z)(n,[{key:"validate",value:function(e){return e&&"object"===typeof e?{enabled:_(e.enabled,this.defaultValue.enabled)}:this.defaultValue}}]),n}(g),H=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){(0,a.Z)(this,n);var e={enabled:!0,fontSize:0,fontFamily:ne.fontFamily};return t.call(this,123,"inlineHints",e,{"editor.inlineHints.enabled":{type:"boolean",default:e.enabled,description:u.N("inlineHints.enable","Enables the inline hints in the editor.")},"editor.inlineHints.fontSize":{type:"number",default:e.fontSize,description:u.N("inlineHints.fontSize","Controls font size of inline hints in the editor. When set to `0`, the 90% of `#editor.fontSize#` is used.")},"editor.inlineHints.fontFamily":{type:"string",default:e.fontFamily,description:u.N("inlineHints.fontFamily","Controls font family of inline hints in the editor.")}})}return(0,s.Z)(n,[{key:"validate",value:function(e){if(!e||"object"!==typeof e)return this.defaultValue;var t=e;return{enabled:_(t.enabled,this.defaultValue.enabled),fontSize:b.clampedInt(t.fontSize,this.defaultValue.fontSize,0,100),fontFamily:C.string(t.fontFamily,this.defaultValue.fontFamily)}}}]),n}(g),B=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,55,"lineHeight",ne.lineHeight,0,150,{description:u.N("lineHeight","Controls the line height. Use 0 to compute the line height from the font size.")})}return(0,s.Z)(n,[{key:"compute",value:function(e,t,n){return e.fontInfo.lineHeight}}]),n}(b),z=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){(0,a.Z)(this,n);var e={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",renderCharacters:!0,maxColumn:120,scale:1};return t.call(this,61,"minimap",e,{"editor.minimap.enabled":{type:"boolean",default:e.enabled,description:u.N("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[u.N("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),u.N("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),u.N("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:e.size,description:u.N("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:e.side,description:u.N("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:e.showSlider,description:u.N("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:e.scale,minimum:1,maximum:3,enum:[1,2,3],description:u.N("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:e.renderCharacters,description:u.N("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:e.maxColumn,description:u.N("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")}})}return(0,s.Z)(n,[{key:"validate",value:function(e){if(!e||"object"!==typeof e)return this.defaultValue;var t=e;return{enabled:_(t.enabled,this.defaultValue.enabled),size:k(t.size,this.defaultValue.size,["proportional","fill","fit"]),side:k(t.side,this.defaultValue.side,["right","left"]),showSlider:k(t.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:_(t.renderCharacters,this.defaultValue.renderCharacters),scale:b.clampedInt(t.scale,1,1,3),maxColumn:b.clampedInt(t.maxColumn,this.defaultValue.maxColumn,1,1e4)}}}]),n}(g);var W=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,71,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:u.N("padding.top","Controls the amount of space between the top edge of the editor and the first line.")},"editor.padding.bottom":{type:"number",default:0,minimum:0,maximum:1e3,description:u.N("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}return(0,s.Z)(n,[{key:"validate",value:function(e){if(!e||"object"!==typeof e)return this.defaultValue;var t=e;return{top:b.clampedInt(t.top,0,0,1e3),bottom:b.clampedInt(t.bottom,0,0,1e3)}}}]),n}(g),V=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){(0,a.Z)(this,n);var e={enabled:!0,cycle:!1};return t.call(this,72,"parameterHints",e,{"editor.parameterHints.enabled":{type:"boolean",default:e.enabled,description:u.N("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:e.cycle,description:u.N("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}return(0,s.Z)(n,[{key:"validate",value:function(e){if(!e||"object"!==typeof e)return this.defaultValue;var t=e;return{enabled:_(t.enabled,this.defaultValue.enabled),cycle:_(t.cycle,this.defaultValue.cycle)}}}]),n}(g),Y=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,125)}return(0,s.Z)(n,[{key:"compute",value:function(e,t,n){return e.pixelRatio}}]),n}(v),U=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){var e;(0,a.Z)(this,n);var i={other:!0,comments:!1,strings:!1};return(e=t.call(this,75,"quickSuggestions",i,{anyOf:[{type:"boolean"},{type:"object",properties:{strings:{type:"boolean",default:i.strings,description:u.N("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{type:"boolean",default:i.comments,description:u.N("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{type:"boolean",default:i.other,description:u.N("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}}}],default:i,description:u.N("quickSuggestions","Controls whether suggestions should automatically show up while typing.")})).defaultValue=i,e}return(0,s.Z)(n,[{key:"validate",value:function(e){if("boolean"===typeof e)return e;if(e&&"object"===typeof e){var t=e,n={other:_(t.other,this.defaultValue.other),comments:_(t.comments,this.defaultValue.comments),strings:_(t.strings,this.defaultValue.strings)};return!!(n.other&&n.comments&&n.strings)||!!(n.other||n.comments||n.strings)&&n}return this.defaultValue}}]),n}(g),K=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,56,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[u.N("lineNumbers.off","Line numbers are not rendered."),u.N("lineNumbers.on","Line numbers are rendered as absolute number."),u.N("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),u.N("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:u.N("lineNumbers","Controls the display of line numbers.")})}return(0,s.Z)(n,[{key:"validate",value:function(e){var t=this.defaultValue.renderType,n=this.defaultValue.renderFn;return"undefined"!==typeof e&&("function"===typeof e?(t=4,n=e):t="interval"===e?3:"relative"===e?2:"on"===e?1:0),{renderType:t,renderFn:n}}}]),n}(g);function q(e){var t=e.get(84);return"editable"===t?e.get(77):"on"!==t}var G=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){(0,a.Z)(this,n);var e=[],i={type:"number",description:u.N("rulers.size","Number of monospace characters at which this editor ruler will render.")};return t.call(this,88,"rulers",e,{type:"array",items:{anyOf:[i,{type:["object"],properties:{column:i,color:{type:"string",description:u.N("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:e,description:u.N("rulers","Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.")})}return(0,s.Z)(n,[{key:"validate",value:function(e){if(Array.isArray(e)){var t,n=[],r=(0,i.Z)(e);try{for(r.s();!(t=r.n()).done;){var o=t.value;if("number"===typeof o)n.push({column:b.clampedInt(o,0,0,1e4),color:null});else if(o&&"object"===typeof o){var a=o;n.push({column:b.clampedInt(a.column,0,0,1e4),color:a.color})}}}catch(s){r.e(s)}finally{r.f()}return n.sort((function(e,t){return e.column-t.column})),n}return this.defaultValue}}]),n}(g);function $(e,t){if("string"!==typeof e)return t;switch(e){case"hidden":return 2;case"visible":return 3;default:return 1}}var Q=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,89,"scrollbar",{vertical:1,horizontal:1,arrowSize:11,useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,horizontalScrollbarSize:12,horizontalSliderSize:12,verticalScrollbarSize:14,verticalSliderSize:14,handleMouseWheel:!0,alwaysConsumeMouseWheel:!0,scrollByPage:!1})}return(0,s.Z)(n,[{key:"validate",value:function(e){if(!e||"object"!==typeof e)return this.defaultValue;var t=e,n=b.clampedInt(t.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),i=b.clampedInt(t.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:b.clampedInt(t.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:$(t.vertical,this.defaultValue.vertical),horizontal:$(t.horizontal,this.defaultValue.horizontal),useShadows:_(t.useShadows,this.defaultValue.useShadows),verticalHasArrows:_(t.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:_(t.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:_(t.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:_(t.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:n,horizontalSliderSize:b.clampedInt(t.horizontalSliderSize,n,0,1e3),verticalScrollbarSize:i,verticalSliderSize:b.clampedInt(t.verticalSliderSize,i,0,1e3),scrollByPage:_(t.scrollByPage,this.defaultValue.scrollByPage)}}}]),n}(g),X=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){(0,a.Z)(this,n);var e={insertMode:"insert",filterGraceful:!0,snippetsPreventQuickSuggestions:!0,localityBonus:!1,shareSuggestSelections:!1,showIcons:!0,showStatusBar:!1,showInlineDetails:!0,showMethods:!0,showFunctions:!0,showConstructors:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,showUsers:!0,showIssues:!0};return t.call(this,103,"suggest",e,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[u.N("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),u.N("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:e.insertMode,description:u.N("suggest.insertMode","Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.")},"editor.suggest.filterGraceful":{type:"boolean",default:e.filterGraceful,description:u.N("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:e.localityBonus,description:u.N("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:e.shareSuggestSelections,markdownDescription:u.N("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:e.snippetsPreventQuickSuggestions,description:u.N("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:e.showIcons,description:u.N("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:e.showStatusBar,description:u.N("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.showInlineDetails":{type:"boolean",default:e.showInlineDetails,description:u.N("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:u.N("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:u.N("deprecated","This setting is deprecated, please use separate settings like 'editor.suggest.showKeywords' or 'editor.suggest.showSnippets' instead.")},"editor.suggest.showMethods":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:u.N("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}return(0,s.Z)(n,[{key:"validate",value:function(e){if(!e||"object"!==typeof e)return this.defaultValue;var t=e;return{insertMode:k(t.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:_(t.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:_(t.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:_(t.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:_(t.shareSuggestSelections,this.defaultValue.shareSuggestSelections),showIcons:_(t.showIcons,this.defaultValue.showIcons),showStatusBar:_(t.showStatusBar,this.defaultValue.showStatusBar),showInlineDetails:_(t.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:_(t.showMethods,this.defaultValue.showMethods),showFunctions:_(t.showFunctions,this.defaultValue.showFunctions),showConstructors:_(t.showConstructors,this.defaultValue.showConstructors),showFields:_(t.showFields,this.defaultValue.showFields),showVariables:_(t.showVariables,this.defaultValue.showVariables),showClasses:_(t.showClasses,this.defaultValue.showClasses),showStructs:_(t.showStructs,this.defaultValue.showStructs),showInterfaces:_(t.showInterfaces,this.defaultValue.showInterfaces),showModules:_(t.showModules,this.defaultValue.showModules),showProperties:_(t.showProperties,this.defaultValue.showProperties),showEvents:_(t.showEvents,this.defaultValue.showEvents),showOperators:_(t.showOperators,this.defaultValue.showOperators),showUnits:_(t.showUnits,this.defaultValue.showUnits),showValues:_(t.showValues,this.defaultValue.showValues),showConstants:_(t.showConstants,this.defaultValue.showConstants),showEnums:_(t.showEnums,this.defaultValue.showEnums),showEnumMembers:_(t.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:_(t.showKeywords,this.defaultValue.showKeywords),showWords:_(t.showWords,this.defaultValue.showWords),showColors:_(t.showColors,this.defaultValue.showColors),showFiles:_(t.showFiles,this.defaultValue.showFiles),showReferences:_(t.showReferences,this.defaultValue.showReferences),showFolders:_(t.showFolders,this.defaultValue.showFolders),showTypeParameters:_(t.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:_(t.showSnippets,this.defaultValue.showSnippets),showUsers:_(t.showUsers,this.defaultValue.showUsers),showIssues:_(t.showIssues,this.defaultValue.showIssues)}}}]),n}(g),J=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,99,"smartSelect",{selectLeadingAndTrailingWhitespace:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:u.N("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"}})}return(0,s.Z)(n,[{key:"validate",value:function(e){return e&&"object"===typeof e?{selectLeadingAndTrailingWhitespace:_(e.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace)}:this.defaultValue}}]),n}(g),ee=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,126,[77])}return(0,s.Z)(n,[{key:"compute",value:function(e,t,n){return!!t.get(77)||e.tabFocusMode}}]),n}(v);var te=function(e){(0,r.Z)(n,e);var t=(0,o.Z)(n);function n(){return(0,a.Z)(this,n),t.call(this,128,[127])}return(0,s.Z)(n,[{key:"compute",value:function(e,t,n){var i=t.get(127);return{isDominatedByLongLines:e.isDominatedByLongLines,isWordWrapMinified:i.isWordWrapMinified,isViewportWrapping:i.isViewportWrapping,wrappingColumn:i.wrappingColumn}}}]),n}(v),ne={fontFamily:l.dz?"Menlo, Monaco, 'Courier New', monospace":l.IJ?"'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback'":"Consolas, 'Courier New', monospace",fontWeight:"normal",fontSize:l.dz?12:14,lineHeight:0,letterSpacing:0},ie={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0},re=[];function oe(e){return re[e.id]=e,e}var ae={acceptSuggestionOnCommitCharacter:oe(new y(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:u.N("acceptSuggestionOnCommitCharacter","Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.")})),acceptSuggestionOnEnter:oe(new S(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",u.N("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:u.N("acceptSuggestionOnEnter","Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.")})),accessibilitySupport:oe(new E),accessibilityPageSize:oe(new b(3,"accessibilityPageSize",10,1,1073741824,{description:u.N("accessibilityPageSize","Controls the number of lines in the editor that can be read out by a screen reader at once. When we detect a screen reader we automatically set the default to be 500. Warning: this has a performance implication for numbers larger than the default.")})),ariaLabel:oe(new C(4,"ariaLabel",u.N("editorViewAccessibleLabel","Editor content"))),autoClosingBrackets:oe(new S(5,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",u.N("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),u.N("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:u.N("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingDelete:oe(new S(6,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",u.N("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:u.N("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:oe(new S(7,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",u.N("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:u.N("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:oe(new S(8,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",u.N("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),u.N("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:u.N("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:oe(new x(9,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],(function(e){switch(e){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}),{enumDescriptions:[u.N("editor.autoIndent.none","The editor will not insert indentation automatically."),u.N("editor.autoIndent.keep","The editor will keep the current line's indentation."),u.N("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),u.N("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),u.N("editor.autoIndent.full","The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.")],description:u.N("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:oe(new y(10,"automaticLayout",!1)),autoSurround:oe(new S(11,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[u.N("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),u.N("editor.autoSurround.quotes","Surround with quotes but not brackets."),u.N("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:u.N("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),stickyTabStops:oe(new y(101,"stickyTabStops",!1,{description:u.N("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:oe(new y(12,"codeLens",!0,{description:u.N("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:oe(new C(13,"codeLensFontFamily","",{description:u.N("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:oe(new b(14,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,description:u.N("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to `0`, the 90% of `#editor.fontSize#` is used.")})),colorDecorators:oe(new y(15,"colorDecorators",!0,{description:u.N("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),columnSelection:oe(new y(16,"columnSelection",!1,{description:u.N("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:oe(new D),contextmenu:oe(new y(18,"contextmenu",!0)),copyWithSyntaxHighlighting:oe(new y(19,"copyWithSyntaxHighlighting",!0,{description:u.N("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:oe(new x(20,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],(function(e){switch(e){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}),{description:u.N("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:oe(new y(21,"cursorSmoothCaretAnimation",!1,{description:u.N("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:oe(new x(22,"cursorStyle",L.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],(function(e){switch(e){case"line":return L.Line;case"block":return L.Block;case"underline":return L.Underline;case"line-thin":return L.LineThin;case"block-outline":return L.BlockOutline;case"underline-thin":return L.UnderlineThin}}),{description:u.N("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:oe(new b(23,"cursorSurroundingLines",0,0,1073741824,{description:u.N("cursorSurroundingLines","Controls the minimal number of visible leading and trailing lines surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:oe(new S(24,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[u.N("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),u.N("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],description:u.N("cursorSurroundingLinesStyle","Controls when `cursorSurroundingLines` should be enforced.")})),cursorWidth:oe(new b(25,"cursorWidth",0,0,1073741824,{markdownDescription:u.N("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:oe(new y(26,"disableLayerHinting",!1)),disableMonospaceOptimizations:oe(new y(27,"disableMonospaceOptimizations",!1)),domReadOnly:oe(new y(28,"domReadOnly",!1)),dragAndDrop:oe(new y(29,"dragAndDrop",!0,{description:u.N("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:oe(new M),extraEditorClassName:oe(new C(31,"extraEditorClassName","")),fastScrollSensitivity:oe(new w(32,"fastScrollSensitivity",5,(function(e){return e<=0?5:e}),{markdownDescription:u.N("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:oe(new T),fixedOverflowWidgets:oe(new y(34,"fixedOverflowWidgets",!1)),folding:oe(new y(35,"folding",!0,{description:u.N("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:oe(new S(36,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[u.N("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),u.N("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:u.N("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:oe(new y(37,"foldingHighlight",!0,{description:u.N("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),unfoldOnClickAfterEndOfLine:oe(new y(38,"unfoldOnClickAfterEndOfLine",!1,{description:u.N("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:oe(new C(39,"fontFamily",ne.fontFamily,{description:u.N("fontFamily","Controls the font family.")})),fontInfo:oe(new O),fontLigatures2:oe(new I),fontSize:oe(new A),fontWeight:oe(new R),formatOnPaste:oe(new y(44,"formatOnPaste",!1,{description:u.N("formatOnPaste","Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.")})),formatOnType:oe(new y(45,"formatOnType",!1,{description:u.N("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:oe(new y(46,"glyphMargin",!0,{description:u.N("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:oe(new P),hideCursorInOverviewRuler:oe(new y(48,"hideCursorInOverviewRuler",!1,{description:u.N("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),highlightActiveIndentGuide:oe(new y(49,"highlightActiveIndentGuide",!0,{description:u.N("highlightActiveIndentGuide","Controls whether the editor should highlight the active indent guide.")})),hover:oe(new Z),inDiffEditor:oe(new y(51,"inDiffEditor",!1)),letterSpacing:oe(new w(52,"letterSpacing",ne.letterSpacing,(function(e){return w.clamp(e,-5,20)}),{description:u.N("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:oe(new j),lineDecorationsWidth:oe(new m(54,"lineDecorationsWidth",10)),lineHeight:oe(new B),lineNumbers:oe(new K),lineNumbersMinChars:oe(new b(57,"lineNumbersMinChars",5,1,300)),linkedEditing:oe(new y(58,"linkedEditing",!1,{description:u.N("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols, e.g. HTML tags, are updated while editing.")})),links:oe(new y(59,"links",!0,{description:u.N("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:oe(new S(60,"matchBrackets","always",["always","near","never"],{description:u.N("matchBrackets","Highlight matching brackets.")})),minimap:oe(new z),mouseStyle:oe(new S(62,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:oe(new w(63,"mouseWheelScrollSensitivity",1,(function(e){return 0===e?1:e}),{markdownDescription:u.N("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:oe(new y(64,"mouseWheelZoom",!1,{markdownDescription:u.N("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:oe(new y(65,"multiCursorMergeOverlapping",!0,{description:u.N("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:oe(new x(66,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],(function(e){return"ctrlCmd"===e?l.dz?"metaKey":"ctrlKey":"altKey"}),{markdownEnumDescriptions:[u.N("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),u.N("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:u.N({key:"multiCursorModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add multiple cursors with the mouse. The Go To Definition and Open Link mouse gestures will adapt such that they do not conflict with the multicursor modifier. [Read more](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).")})),multiCursorPaste:oe(new S(67,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[u.N("multiCursorPaste.spread","Each cursor pastes a single line of the text."),u.N("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:u.N("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),occurrencesHighlight:oe(new y(68,"occurrencesHighlight",!0,{description:u.N("occurrencesHighlight","Controls whether the editor should highlight semantic symbol occurrences.")})),overviewRulerBorder:oe(new y(69,"overviewRulerBorder",!0,{description:u.N("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:oe(new b(70,"overviewRulerLanes",3,0,3)),padding:oe(new W),parameterHints:oe(new V),peekWidgetDefaultFocus:oe(new S(73,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[u.N("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),u.N("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:u.N("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),definitionLinkOpensInPeek:oe(new y(74,"definitionLinkOpensInPeek",!1,{description:u.N("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:oe(new U),quickSuggestionsDelay:oe(new b(76,"quickSuggestionsDelay",10,0,1073741824,{description:u.N("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:oe(new y(77,"readOnly",!1)),renameOnType:oe(new y(78,"renameOnType",!1,{description:u.N("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:u.N("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:oe(new y(79,"renderControlCharacters",!1,{description:u.N("renderControlCharacters","Controls whether the editor should render control characters.")})),renderIndentGuides:oe(new y(80,"renderIndentGuides",!0,{description:u.N("renderIndentGuides","Controls whether the editor should render indent guides.")})),renderFinalNewline:oe(new y(81,"renderFinalNewline",!0,{description:u.N("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:oe(new S(82,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",u.N("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:u.N("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:oe(new y(83,"renderLineHighlightOnlyWhenFocus",!1,{description:u.N("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:oe(new S(84,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:oe(new S(85,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",u.N("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),u.N("renderWhitespace.selection","Render whitespace characters only on selected text."),u.N("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:u.N("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:oe(new b(86,"revealHorizontalRightPadding",30,0,1e3)),roundedSelection:oe(new y(87,"roundedSelection",!0,{description:u.N("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:oe(new G),scrollbar:oe(new Q),scrollBeyondLastColumn:oe(new b(90,"scrollBeyondLastColumn",5,0,1073741824,{description:u.N("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:oe(new y(91,"scrollBeyondLastLine",!0,{description:u.N("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:oe(new y(92,"scrollPredominantAxis",!0,{description:u.N("scrollPredominantAxis","Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.")})),selectionClipboard:oe(new y(93,"selectionClipboard",!0,{description:u.N("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:l.IJ})),selectionHighlight:oe(new y(94,"selectionHighlight",!0,{description:u.N("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:oe(new y(95,"selectOnLineNumbers",!0)),showFoldingControls:oe(new S(96,"showFoldingControls","mouseover",["always","mouseover"],{enumDescriptions:[u.N("showFoldingControls.always","Always show the folding controls."),u.N("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:u.N("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:oe(new y(97,"showUnused",!0,{description:u.N("showUnused","Controls fading out of unused code.")})),showDeprecated:oe(new y(122,"showDeprecated",!0,{description:u.N("showDeprecated","Controls strikethrough deprecated variables.")})),inlineHints:oe(new H),snippetSuggestions:oe(new S(98,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[u.N("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),u.N("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),u.N("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),u.N("snippetSuggestions.none","Do not show snippet suggestions.")],description:u.N("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:oe(new J),smoothScrolling:oe(new y(100,"smoothScrolling",!1,{description:u.N("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:oe(new b(102,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:oe(new X),suggestFontSize:oe(new b(104,"suggestFontSize",0,0,1e3,{markdownDescription:u.N("suggestFontSize","Font size for the suggest widget. When set to `0`, the value of `#editor.fontSize#` is used.")})),suggestLineHeight:oe(new b(105,"suggestLineHeight",0,0,1e3,{markdownDescription:u.N("suggestLineHeight","Line height for the suggest widget. When set to `0`, the value of `#editor.lineHeight#` is used. The minimum value is 8.")})),suggestOnTriggerCharacters:oe(new y(106,"suggestOnTriggerCharacters",!0,{description:u.N("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:oe(new S(107,"suggestSelection","recentlyUsed",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[u.N("suggestSelection.first","Always select the first suggestion."),u.N("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),u.N("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:u.N("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:oe(new S(108,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[u.N("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),u.N("tabCompletion.off","Disable tab completions."),u.N("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:u.N("tabCompletion","Enables tab completions.")})),tabIndex:oe(new b(109,"tabIndex",0,-1,1073741824)),unusualLineTerminators:oe(new S(110,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[u.N("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),u.N("unusualLineTerminators.off","Unusual line terminators are ignored."),u.N("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:u.N("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:oe(new y(111,"useShadowDOM",!0)),useTabStops:oe(new y(112,"useTabStops",!0,{description:u.N("useTabStops","Inserting and deleting whitespace follows tab stops.")})),wordSeparators:oe(new C(113,"wordSeparators",c.vu,{description:u.N("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:oe(new S(114,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[u.N("wordWrap.off","Lines will never wrap."),u.N("wordWrap.on","Lines will wrap at the viewport width."),u.N({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),u.N({key:"wordWrap.bounded",comment:["- viewport means the edge of the visible window size.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.")],description:u.N({key:"wordWrap",comment:["- 'off', 'on', 'wordWrapColumn' and 'bounded' refer to values the setting can take and should not be localized.","- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Controls how lines should wrap.")})),wordWrapBreakAfterCharacters:oe(new C(115,"wordWrapBreakAfterCharacters"," \t})]?|/&.,;\xa2\xb0\u2032\u2033\u2030\u2103\u3001\u3002\uff61\uff64\uffe0\uff0c\uff0e\uff1a\uff1b\uff1f\uff01\uff05\u30fb\uff65\u309d\u309e\u30fd\u30fe\u30fc\u30a1\u30a3\u30a5\u30a7\u30a9\u30c3\u30e3\u30e5\u30e7\u30ee\u30f5\u30f6\u3041\u3043\u3045\u3047\u3049\u3063\u3083\u3085\u3087\u308e\u3095\u3096\u31f0\u31f1\u31f2\u31f3\u31f4\u31f5\u31f6\u31f7\u31f8\u31f9\u31fa\u31fb\u31fc\u31fd\u31fe\u31ff\u3005\u303b\uff67\uff68\uff69\uff6a\uff6b\uff6c\uff6d\uff6e\uff6f\uff70\u201d\u3009\u300b\u300d\u300f\u3011\u3015\uff09\uff3d\uff5d\uff63")),wordWrapBreakBeforeCharacters:oe(new C(116,"wordWrapBreakBeforeCharacters","([{\u2018\u201c\u3008\u300a\u300c\u300e\u3010\u3014\uff08\uff3b\uff5b\uff62\xa3\xa5\uff04\uffe1\uffe5+\uff0b")),wordWrapColumn:oe(new b(117,"wordWrapColumn",80,1,1073741824,{markdownDescription:u.N({key:"wordWrapColumn",comment:["- `editor.wordWrap` refers to a different setting and should not be localized.","- 'wordWrapColumn' and 'bounded' refer to values the different setting can take and should not be localized."]},"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.")})),wordWrapOverride1:oe(new S(118,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:oe(new S(119,"wordWrapOverride2","inherit",["off","on","inherit"])),wrappingIndent:oe(new x(120,"wrappingIndent",1,"same",["none","same","indent","deepIndent"],(function(e){switch(e){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}}),{enumDescriptions:[u.N("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),u.N("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),u.N("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),u.N("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:u.N("wrappingIndent","Controls the indentation of wrapped lines.")})),wrappingStrategy:oe(new S(121,"wrappingStrategy","simple",["simple","advanced"],{enumDescriptions:[u.N("wrappingStrategy.simple","Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width."),u.N("wrappingStrategy.advanced","Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.")],description:u.N("wrappingStrategy","Controls the algorithm that computes wrapping points.")})),editorClassName:oe(new N),pixelRatio:oe(new Y),tabFocusMode:oe(new ee),layoutInfo:oe(new F),wrappingInfo:oe(new te)}},51164:function(e,t,n){"use strict";n.d(t,{C:function(){return a}});var i=n(15671),r=n(43144),o=n(11732),a=new(function(){function e(){(0,i.Z)(this,e),this._zoomLevel=0,this._onDidChangeZoomLevel=new o.Q5,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event}return(0,r.Z)(e,[{key:"getZoomLevel",value:function(){return this._zoomLevel}},{key:"setZoomLevel",value:function(e){e=Math.min(Math.max(-5,e),20),this._zoomLevel!==e&&(this._zoomLevel=e,this._onDidChangeZoomLevel.fire(this._zoomLevel))}}]),e}())},28702:function(e,t,n){"use strict";n.d(t,{E4:function(){return c},pR:function(){return h}});var i=n(60136),r=n(43668),o=n(15671),a=n(43144),s=n(30487),u=n(51164),l=s.dz?1.5:1.35,c=function(){function e(t){(0,o.Z)(this,e),this.zoomLevel=t.zoomLevel,this.pixelRatio=t.pixelRatio,this.fontFamily=String(t.fontFamily),this.fontWeight=String(t.fontWeight),this.fontSize=t.fontSize,this.fontFeatureSettings=t.fontFeatureSettings,this.lineHeight=0|t.lineHeight,this.letterSpacing=t.letterSpacing}return(0,a.Z)(e,[{key:"getId",value:function(){return this.zoomLevel+"-"+this.pixelRatio+"-"+this.fontFamily+"-"+this.fontWeight+"-"+this.fontSize+"-"+this.fontFeatureSettings+"-"+this.lineHeight+"-"+this.letterSpacing}},{key:"getMassagedFontFamily",value:function(){return/[,"']/.test(this.fontFamily)?this.fontFamily:/[+ ]/.test(this.fontFamily)?'"'.concat(this.fontFamily,'"'):this.fontFamily}}],[{key:"createFromValidatedSettings",value:function(t,n,i,r){var o=t.get(39),a=t.get(43),s=t.get(42),u=t.get(41),l=t.get(55),c=t.get(52);return e._create(o,a,s,u,l,c,n,i,r)}},{key:"_create",value:function(t,n,i,r,o,a,s,c,d){0===o?o=Math.round(l*i):o<8&&(o=8);var h=1+(d?0:.1*u.C.getZoomLevel());return new e({zoomLevel:s,pixelRatio:c,fontFamily:t,fontWeight:n,fontSize:i*=h,fontFeatureSettings:r,lineHeight:o*=h,letterSpacing:a})}}]),e}(),d=1,h=function(e){(0,i.Z)(n,e);var t=(0,r.Z)(n);function n(e,i){var r;return(0,o.Z)(this,n),(r=t.call(this,e)).version=d,r.isTrusted=i,r.isMonospace=e.isMonospace,r.typicalHalfwidthCharacterWidth=e.typicalHalfwidthCharacterWidth,r.typicalFullwidthCharacterWidth=e.typicalFullwidthCharacterWidth,r.canUseHalfwidthRightwardsArrow=e.canUseHalfwidthRightwardsArrow,r.spaceWidth=e.spaceWidth,r.middotWidth=e.middotWidth,r.wsmiddotWidth=e.wsmiddotWidth,r.maxDigitWidth=e.maxDigitWidth,r}return(0,a.Z)(n,[{key:"equals",value:function(e){return this.fontFamily===e.fontFamily&&this.fontWeight===e.fontWeight&&this.fontSize===e.fontSize&&this.fontFeatureSettings===e.fontFeatureSettings&&this.lineHeight===e.lineHeight&&this.letterSpacing===e.letterSpacing&&this.typicalHalfwidthCharacterWidth===e.typicalHalfwidthCharacterWidth&&this.typicalFullwidthCharacterWidth===e.typicalFullwidthCharacterWidth&&this.canUseHalfwidthRightwardsArrow===e.canUseHalfwidthRightwardsArrow&&this.spaceWidth===e.spaceWidth&&this.middotWidth===e.middotWidth&&this.wsmiddotWidth===e.wsmiddotWidth&&this.maxDigitWidth===e.maxDigitWidth}}]),n}(c)},86036:function(e,t,n){"use strict";n.d(t,{l:function(){return s}});var i=n(29439),r=n(15671),o=n(43144),a=n(16274),s=function(){function e(){(0,r.Z)(this,e)}return(0,o.Z)(e,null,[{key:"whitespaceVisibleColumn",value:function(e,t,n){for(var i=e.length,r=0,o=-1,s=-1,u=0;u=65536?2:1,9===l)a=e.nextRenderTabStop(a,i);else{for(var c=s.S6(l);u=65536?2:1,c=h}s.K7(l)||s.C8(l)?a+=2:a+=1}}return a}},{key:"visibleColumnFromColumn2",value:function(e,t,n){return this.visibleColumnFromColumn(t.getLineContent(n.lineNumber),n.column,e.tabSize)}},{key:"columnFromVisibleColumn",value:function(t,n,i){if(n<=0)return 1;for(var r=t.length,o=0,a=1,u=0;u=65536?2:1;var c=void 0;if(9===l)c=e.nextRenderTabStop(o,i);else{for(var d=s.S6(l);u=65536?2:1,d=f}c=s.K7(l)||s.C8(l)?o+2:o+1}var p=u+1;if(c>=n)return c-na?a:r}},{key:"nextRenderTabStop",value:function(e,t){return e+t-e%t}},{key:"nextIndentTabStop",value:function(e,t){return e+t-e%t}},{key:"prevRenderTabStop",value:function(e,t){return Math.max(0,e-1-(e-1)%t)}},{key:"prevIndentTabStop",value:function(e,t){return Math.max(0,e-1-(e-1)%t)}}]),e}();function S(e){return"'"===e||'"'===e||"`"===e}},39765:function(e,t,n){"use strict";n.d(t,{A:function(){return d}});var i=n(37762),r=n(15671),o=n(43144),a=n(51747),s=n(97033),u=n(16274),l=n(15432),c=n(67033),d=function(){function e(){(0,r.Z)(this,e)}return(0,o.Z)(e,null,[{key:"deleteRight",value:function(e,t,n,i){for(var r=[],o=3!==e,a=0,u=i.length;a=f.length+1)return!1;var p=f.charAt(h.column-2),g=r.get(p);if(!g)return!1;if((0,u.LN)(p)){if("never"===n)return!1}else if("never"===t)return!1;var v,m=f.charAt(h.column-1),_=!1,y=(0,i.Z)(g);try{for(y.s();!(v=y.n()).done;){var b=v.value;b.open===p&&b.close===m&&(_=!0)}}catch(x){y.e(x)}finally{y.f()}if(!_)return!1;if("auto"===e){for(var w=!1,C=0,k=s.length;C1){var m=n.getLineContent(v.lineNumber),_=a.LC(m),y=-1===_?m.length+1:_+1;if(v.column<=y){var b=u.io.visibleColumnFromColumn2(t,n,v),w=u.io.prevIndentTabStop(b,t.indentSize),C=u.io.columnFromVisibleColumn2(t,n,v.lineNumber,w);g=new c.e(v.lineNumber,C,v.lineNumber,v.column)}else g=new c.e(v.lineNumber,v.column-1,v.lineNumber,v.column)}else{var k=l.o.left(t,n,v.lineNumber,v.column);g=new c.e(k.lineNumber,k.column,v.lineNumber,v.column)}}g.isEmpty()?o[h]=null:(g.startLineNumber!==g.endLineNumber&&(d=!0),o[h]=new s.T4(g,""))}return[d,o]}},{key:"cut",value:function(e,t,n){for(var i=[],r=0,o=n.length;r1?(d=l.lineNumber-1,h=t.getLineMaxColumn(l.lineNumber-1),f=l.lineNumber,p=t.getLineMaxColumn(l.lineNumber)):(d=l.lineNumber,h=1,f=l.lineNumber,p=t.getLineMaxColumn(l.lineNumber));var g=new c.e(d,h,f,p);g.isEmpty()?i[r]=null:i[r]=new s.T4(g,"")}else i[r]=null;else i[r]=new s.T4(a,"")}return new u.Tp(0,i,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}]),e}()},55561:function(e,t,n){"use strict";n.d(t,{N:function(){return i},P:function(){return h}});var i,r=n(15671),o=n(43144),a=n(25941),s=n(16274),u=n(15432),l=n(86441),c=n(67297),d=n(67033),h=function(){function e(){(0,r.Z)(this,e)}return(0,o.Z)(e,null,[{key:"addCursorDown",value:function(e,t,n){for(var i=[],r=0,o=0,a=t.length;ou&&(l=u,h=e.model.getLineMaxColumn(l)),s.Vi.fromModelState(new s.rS(new d.e(o.lineNumber,1,l,h),0,new c.L(l,h),0))}var f=t.modelState.selectionStart.getStartPosition().lineNumber;if(o.lineNumberf){var p=e.getLineCount(),g=a.lineNumber+1,v=1;return g>p&&(g=p,v=e.getLineMaxColumn(g)),s.Vi.fromViewState(t.viewState.move(t.modelState.hasSelection(),g,v,0))}var m=t.modelState.selectionStart.getEndPosition();return s.Vi.fromModelState(t.modelState.move(t.modelState.hasSelection(),m.lineNumber,m.column,0))}},{key:"word",value:function(e,t,n,i){var r=e.model.validatePosition(i);return s.Vi.fromModelState(l.w.word(e.cursorConfig,e.model,t.modelState,n,r))}},{key:"cancelSelection",value:function(e,t){if(!t.modelState.hasSelection())return new s.Vi(t.modelState,t.viewState);var n=t.viewState.position.lineNumber,i=t.viewState.position.column;return s.Vi.fromViewState(new s.rS(new d.e(n,i,n,i),0,new c.L(n,i),0))}},{key:"moveTo",value:function(e,t,n,i,r){var o=e.model.validatePosition(i),a=r?e.coordinatesConverter.validateViewPosition(new c.L(r.lineNumber,r.column),o):e.coordinatesConverter.convertModelPositionToViewPosition(o);return s.Vi.fromViewState(t.viewState.move(n,a.lineNumber,a.column,0))}},{key:"simpleMove",value:function(e,t,n,i,r,o){switch(n){case 0:return 4===o?this._moveHalfLineLeft(e,t,i):this._moveLeft(e,t,i,r);case 1:return 4===o?this._moveHalfLineRight(e,t,i):this._moveRight(e,t,i,r);case 2:return 2===o?this._moveUpByViewLines(e,t,i,r):this._moveUpByModelLines(e,t,i,r);case 3:return 2===o?this._moveDownByViewLines(e,t,i,r):this._moveDownByModelLines(e,t,i,r);case 4:return 2===o?t.map((function(t){return s.Vi.fromViewState(u.o.moveToPrevBlankLine(e.cursorConfig,e,t.viewState,i))})):t.map((function(t){return s.Vi.fromModelState(u.o.moveToPrevBlankLine(e.cursorConfig,e.model,t.modelState,i))}));case 5:return 2===o?t.map((function(t){return s.Vi.fromViewState(u.o.moveToNextBlankLine(e.cursorConfig,e,t.viewState,i))})):t.map((function(t){return s.Vi.fromModelState(u.o.moveToNextBlankLine(e.cursorConfig,e.model,t.modelState,i))}));case 6:return this._moveToViewMinColumn(e,t,i);case 7:return this._moveToViewFirstNonWhitespaceColumn(e,t,i);case 8:return this._moveToViewCenterColumn(e,t,i);case 9:return this._moveToViewMaxColumn(e,t,i);case 10:return this._moveToViewLastNonWhitespaceColumn(e,t,i);default:return null}}},{key:"viewportMove",value:function(e,t,n,i,r){var o=e.getCompletelyVisibleViewRange(),a=e.coordinatesConverter.convertViewRangeToModelRange(o);switch(n){case 11:var s=this._firstLineNumberInRange(e.model,a,r),u=e.model.getLineFirstNonWhitespaceColumn(s);return[this._moveToModelPosition(e,t[0],i,s,u)];case 13:var l=this._lastLineNumberInRange(e.model,a,r),c=e.model.getLineFirstNonWhitespaceColumn(l);return[this._moveToModelPosition(e,t[0],i,l,c)];case 12:var d=Math.round((a.startLineNumber+a.endLineNumber)/2),h=e.model.getLineFirstNonWhitespaceColumn(d);return[this._moveToModelPosition(e,t[0],i,d,h)];case 14:for(var f=[],p=0,g=t.length;pn.endLineNumber-1&&(r=n.endLineNumber-1),r1,o=[],a=0,l=t.length;a1,o=[],a=0,l=t.length;ae.getLineMinColumn(t)?n-=u.HO(e.getLineContent(t),n-1):t>1&&(t-=1,n=e.getLineMaxColumn(t)),new a.L(t,n)}},{key:"leftPositionAtomicSoftTabs",value:function(e,t,n,i){var r=e.getLineMinColumn(t),o=e.getLineContent(t),s=l.l.atomicPosition(o,n-1,i,0);return-1===s||s+1