diff --git a/module/action/lang/zh-cn.php b/module/action/lang/zh-cn.php index aef2398b8c..d8e9d6da98 100755 --- a/module/action/lang/zh-cn.php +++ b/module/action/lang/zh-cn.php @@ -298,7 +298,7 @@ $lang->action->desc->uninstall = '$date, 由 $actoraction->desc->start = '$date, 由 $actor 启动。' . "\n"; $lang->action->desc->stop = '$date, 由 $actor 关闭。' . "\n"; $lang->action->desc->editname = '$date, 由 $actor 修改了名称,从 $oldName 修改为 $newName 。' . "\n"; -$lang->action->desc->upgrade = '$date, 由 $actor 升级,从 $oldVersion 升级为 $newVersion 。' . "\n"; +$lang->action->desc->upgrade = '$date, 由 $actor 升级,从 $oldVersion 升级为 $newVersion 。' . "\n"; $lang->action->desc->backup = '$date, 由 $actor 备份。' . "\n"; $lang->action->desc->adjustmemory = '$date, 由 $actor 调整内存到 $newMemory 。' . "\n"; $lang->action->desc->enableldap = '$date, 由 $actor 启用了LDAP。' . "\n"; diff --git a/module/mr/ui/diff.html.php b/module/mr/ui/diff.html.php index d9e617f751..02dfd01b34 100644 --- a/module/mr/ui/diff.html.php +++ b/module/mr/ui/diff.html.php @@ -144,7 +144,7 @@ panel set::onClickItem(jsRaw('window.treeClick')), ) ), - a(set::className('iframe'), setData('size', '1000px'), setData('toggle', 'modal'), set::id('linkObject')) + a(set::className('iframe'), setData('size', '1200px'), setData('toggle', 'modal'), set::id('linkObject')) ) ); diff --git a/module/repo/css/ajaxgeteditorcontent.ui.css b/module/repo/css/ajaxgeteditorcontent.ui.css index 026d50f5a9..5aa4509a63 100644 --- a/module/repo/css/ajaxgeteditorcontent.ui.css +++ b/module/repo/css/ajaxgeteditorcontent.ui.css @@ -42,4 +42,5 @@ .repoCode .view-line-icon.add-bug {left: 5px;} .repoCode .view-line-icon.add-bug .icon {font-weight: bold;} .repoCode .view-line-icon .bug-count {vertical-align: middle; padding-left: 5px;} -.repoCode #bugForm {margin: 0; padding: 10px 20px 10px 0;} \ No newline at end of file +.repoCode #bugForm {margin: 0; padding: 10px 20px 10px 0;} +#bugContainer .panel-heading {padding-bottom: 0;} \ No newline at end of file diff --git a/module/repo/ui/diffeditor.html.php b/module/repo/ui/diffeditor.html.php index 2d1dcf7653..9f34c58059 100644 --- a/module/repo/ui/diffeditor.html.php +++ b/module/repo/ui/diffeditor.html.php @@ -92,4 +92,4 @@ sidebar ) ); -a(set::className('iframe'), setData('size', '1000px'), setData('toggle', 'modal'), set::id('linkObject')); +a(set::className('iframe'), setData('size', '1200px'), setData('toggle', 'modal'), set::id('linkObject')); diff --git a/module/repo/ui/monaco.html.php b/module/repo/ui/monaco.html.php index 757338d985..94f78c1f0b 100644 --- a/module/repo/ui/monaco.html.php +++ b/module/repo/ui/monaco.html.php @@ -107,4 +107,4 @@ sidebar ) ); -a(set::className('iframe'), setData('size', '1000px'), setData('toggle', 'modal'), set::id('linkObject')); +a(set::className('iframe'), setData('size', '1200px'), setData('toggle', 'modal'), set::id('linkObject')); diff --git a/module/search/ui/savequery.html.php b/module/search/ui/savequery.html.php index c30a989216..675294a336 100644 --- a/module/search/ui/savequery.html.php +++ b/module/search/ui/savequery.html.php @@ -8,7 +8,7 @@ form set::method('post'), div ( - setClass('flex flex-row justify-between'), + setClass('flex flex-row justify-between align-items mt-6'), input ( set::id('title'), diff --git a/www/js/monaco-editor/min/vs/editor/editor.main.js b/www/js/monaco-editor/min/vs/editor/editor.main.js index af4bd9763b..78cfafb7d1 100644 --- a/www/js/monaco-editor/min/vs/editor/editor.main.js +++ b/www/js/monaco-editor/min/vs/editor/editor.main.js @@ -699,7 +699,6 @@ ${this._themeCSS}`,this._styleElements.forEach(m=>m.textContent=this._allCSS)}ge `?G=1:z&&z.lineEnding&&z.lineEnding===`\r `&&(G=2),this._modelData.model.getValue(G,J)}setValue(z){!this._modelData||this._modelData.model.setValue(z)}getModel(){return this._modelData?this._modelData.model:null}setModel(z=null){const J=z;if(this._modelData===null&&J===null||this._modelData&&this._modelData.model===J)return;const G=this.hasTextFocus(),U=this._detachModel();this._attachModel(J),G&&this.hasModel()&&this.focus();const j={oldModelUrl:U?U.uri:null,newModelUrl:J?J.uri:null};this._removeDecorationTypes(),this._onDidChangeModel.fire(j),this._postDetachModelCleanup(U)}_removeDecorationTypes(){if(this._decorationTypeKeysToIds={},this._decorationTypeSubtypes){for(const z in this._decorationTypeSubtypes){const J=this._decorationTypeSubtypes[z];for(const G in J)this._removeDecorationType(z+"-"+G)}this._decorationTypeSubtypes={}}}getVisibleRanges(){return this._modelData?this._modelData.viewModel.getVisibleRanges():[]}getVisibleRangesPlusViewportAboveBelow(){return this._modelData?this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow():[]}getWhitespaces(){return this._modelData?this._modelData.viewModel.viewLayout.getWhitespaces():[]}static _getVerticalOffsetAfterPosition(z,J,G,U){const j=z.model.validatePosition({lineNumber:J,column:G}),ce=z.viewModel.coordinatesConverter.convertModelPositionToViewPosition(j);return z.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(ce.lineNumber,U)}getTopForLineNumber(z,J=!1){return this._modelData?Tt._getVerticalOffsetForPosition(this._modelData,z,1,J):-1}getTopForPosition(z,J){return this._modelData?Tt._getVerticalOffsetForPosition(this._modelData,z,J,!1):-1}static _getVerticalOffsetForPosition(z,J,G,U=!1){const j=z.model.validatePosition({lineNumber:J,column:G}),ce=z.viewModel.coordinatesConverter.convertModelPositionToViewPosition(j);return z.viewModel.viewLayout.getVerticalOffsetForLineNumber(ce.lineNumber,U)}getBottomForLineNumber(z,J=!1){return this._modelData?Tt._getVerticalOffsetAfterPosition(this._modelData,z,1,J):-1}setHiddenAreas(z){var J;(J=this._modelData)===null||J===void 0||J.viewModel.setHiddenAreas(z.map(G=>a.Range.lift(G)))}getVisibleColumnFromPosition(z){if(!this._modelData)return z.column;const J=this._modelData.model.validatePosition(z),G=this._modelData.model.getOptions().tabSize;return d.CursorColumns.visibleColumnFromColumn(this._modelData.model.getLineContent(J.lineNumber),J.column,G)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(z,J="api"){if(!!this._modelData){if(!l.Position.isIPosition(z))throw new Error("Invalid arguments");this._modelData.viewModel.setSelections(J,[{selectionStartLineNumber:z.lineNumber,selectionStartColumn:z.column,positionLineNumber:z.lineNumber,positionColumn:z.column}])}}_sendRevealRange(z,J,G,U){if(!this._modelData)return;if(!a.Range.isIRange(z))throw new Error("Invalid arguments");const j=this._modelData.model.validateRange(z),ce=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(j);this._modelData.viewModel.revealRange("api",G,ce,J,U)}revealLine(z,J=0){this._revealLine(z,0,J)}revealLineInCenter(z,J=0){this._revealLine(z,1,J)}revealLineInCenterIfOutsideViewport(z,J=0){this._revealLine(z,2,J)}revealLineNearTop(z,J=0){this._revealLine(z,5,J)}_revealLine(z,J,G){if(typeof z!="number")throw new Error("Invalid arguments");this._sendRevealRange(new a.Range(z,1,z,1),J,!1,G)}revealPosition(z,J=0){this._revealPosition(z,0,!0,J)}revealPositionInCenter(z,J=0){this._revealPosition(z,1,!0,J)}revealPositionInCenterIfOutsideViewport(z,J=0){this._revealPosition(z,2,!0,J)}revealPositionNearTop(z,J=0){this._revealPosition(z,5,!0,J)}_revealPosition(z,J,G,U){if(!l.Position.isIPosition(z))throw new Error("Invalid arguments");this._sendRevealRange(new a.Range(z.lineNumber,z.column,z.lineNumber,z.column),J,G,U)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(z,J="api"){const G=r.Selection.isISelection(z),U=a.Range.isIRange(z);if(!G&&!U)throw new Error("Invalid arguments");if(G)this._setSelectionImpl(z,J);else if(U){const j={selectionStartLineNumber:z.startLineNumber,selectionStartColumn:z.startColumn,positionLineNumber:z.endLineNumber,positionColumn:z.endColumn};this._setSelectionImpl(j,J)}}_setSelectionImpl(z,J){if(!this._modelData)return;const G=new r.Selection(z.selectionStartLineNumber,z.selectionStartColumn,z.positionLineNumber,z.positionColumn);this._modelData.viewModel.setSelections(J,[G])}revealLines(z,J,G=0){this._revealLines(z,J,0,G)}revealLinesInCenter(z,J,G=0){this._revealLines(z,J,1,G)}revealLinesInCenterIfOutsideViewport(z,J,G=0){this._revealLines(z,J,2,G)}revealLinesNearTop(z,J,G=0){this._revealLines(z,J,5,G)}_revealLines(z,J,G,U){if(typeof z!="number"||typeof J!="number")throw new Error("Invalid arguments");this._sendRevealRange(new a.Range(z,1,J,1),G,!1,U)}revealRange(z,J=0,G=!1,U=!0){this._revealRange(z,G?1:0,U,J)}revealRangeInCenter(z,J=0){this._revealRange(z,1,!0,J)}revealRangeInCenterIfOutsideViewport(z,J=0){this._revealRange(z,2,!0,J)}revealRangeNearTop(z,J=0){this._revealRange(z,5,!0,J)}revealRangeNearTopIfOutsideViewport(z,J=0){this._revealRange(z,6,!0,J)}revealRangeAtTop(z,J=0){this._revealRange(z,3,!0,J)}_revealRange(z,J,G,U){if(!a.Range.isIRange(z))throw new Error("Invalid arguments");this._sendRevealRange(a.Range.lift(z),J,G,U)}setSelections(z,J="api",G=0){if(!!this._modelData){if(!z||z.length===0)throw new Error("Invalid arguments");for(let U=0,j=z.length;U0&&this._modelData.viewModel.restoreCursorState(G):this._modelData.viewModel.restoreCursorState([G]);const U=J.contributionsState||{},j=Object.keys(this._contributions);for(let se=0,he=j.length;seJ.isSupported()),z}getAction(z){return this._actions[z]||null}trigger(z,J,G){switch(G=G||{},J){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(z);return;case"type":{const j=G;this._type(z,j.text||"");return}case"replacePreviousChar":{const j=G;this._compositionType(z,j.text||"",j.replaceCharCnt||0,0,0);return}case"compositionType":{const j=G;this._compositionType(z,j.text||"",j.replacePrevCharCnt||0,j.replaceNextCharCnt||0,j.positionDelta||0);return}case"paste":{const j=G;this._paste(z,j.text||"",j.pasteOnNewLine||!1,j.multicursorText||null,j.mode||null);return}case"cut":this._cut(z);return}const U=this.getAction(J);if(U){Promise.resolve(U.run()).then(void 0,k.onUnexpectedError);return}!this._modelData||this._triggerEditorCommand(z,J,G)||this._triggerCommand(J,G)}_triggerCommand(z,J){this._commandService.executeCommand(z,J)}_startComposition(){!this._modelData||(this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire())}_endComposition(z){!this._modelData||(this._modelData.viewModel.endComposition(z),this._onDidCompositionEnd.fire())}_type(z,J){!this._modelData||J.length===0||(z==="keyboard"&&this._onWillType.fire(J),this._modelData.viewModel.type(J,z),z==="keyboard"&&this._onDidType.fire(J))}_compositionType(z,J,G,U,j){!this._modelData||this._modelData.viewModel.compositionType(J,G,U,j,z)}_paste(z,J,G,U,j){if(!this._modelData||J.length===0)return;const ce=this._modelData.viewModel,se=ce.getSelection().getStartPosition();ce.paste(J,G,U,z);const he=ce.getSelection().getStartPosition();z==="keyboard"&&this._onDidPaste.fire({range:new a.Range(se.lineNumber,se.column,he.lineNumber,he.column),languageId:j})}_cut(z){!this._modelData||this._modelData.viewModel.cut(z)}_triggerEditorCommand(z,J,G){const U=u.EditorExtensionsRegistry.getEditorCommand(J);return U?(G=G||{},G.source=z,this._instantiationService.invokeFunction(j=>{Promise.resolve(U.runEditorCommand(j,this,G)).then(void 0,k.onUnexpectedError)}),!0):!1}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return!this._modelData||this._configuration.options.get(83)?!1:(this._modelData.model.pushStackElement(),!0)}popUndoStop(){return!this._modelData||this._configuration.options.get(83)?!1:(this._modelData.model.popStackElement(),!0)}executeEdits(z,J,G){if(!this._modelData||this._configuration.options.get(83))return!1;let U;return G?Array.isArray(G)?U=()=>G:U=G:U=()=>null,this._modelData.viewModel.executeEdits(z,J,U),!0}executeCommand(z,J){!this._modelData||this._modelData.viewModel.executeCommand(J,z)}executeCommands(z,J){!this._modelData||this._modelData.viewModel.executeCommands(J,z)}createDecorationsCollection(z){return new Y(this,z)}changeDecorations(z){return this._modelData?this._modelData.model.changeDecorations(z,this._id):null}getLineDecorations(z){return this._modelData?this._modelData.model.getLineDecorations(z,this._id,(0,t.filterValidationDecorations)(this._configuration.options)):null}getDecorationsInRange(z){return this._modelData?this._modelData.model.getDecorationsInRange(z,this._id,(0,t.filterValidationDecorations)(this._configuration.options)):null}deltaDecorations(z,J){return this._modelData?z.length===0&&J.length===0?z:this._modelData.model.deltaDecorations(z,J,this._id):[]}removeDecorations(z){!this._modelData||z.length===0||this._modelData.model.changeDecorations(J=>{J.deltaDecorations(z,[])})}removeDecorationsByType(z){const J=this._decorationTypeKeysToIds[z];J&&this.deltaDecorations(J,[]),this._decorationTypeKeysToIds.hasOwnProperty(z)&&delete this._decorationTypeKeysToIds[z],this._decorationTypeSubtypes.hasOwnProperty(z)&&delete this._decorationTypeSubtypes[z]}getLayoutInfo(){return this._configuration.options.get(133)}createOverviewRuler(z){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.createOverviewRuler(z)}getContainerDomNode(){return this._domElement}getDomNode(){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.domNode.domNode}delegateVerticalScrollbarPointerDown(z){!this._modelData||!this._modelData.hasRealView||this._modelData.view.delegateVerticalScrollbarPointerDown(z)}layout(z){this._configuration.observeContainer(z),this.render()}focus(){!this._modelData||!this._modelData.hasRealView||this._modelData.view.focus()}hasTextFocus(){return!this._modelData||!this._modelData.hasRealView?!1:this._modelData.view.isFocused()}hasWidgetFocus(){return this._focusTracker&&this._focusTracker.hasFocus()}addContentWidget(z){const J={widget:z,position:z.getPosition()};this._contentWidgets.hasOwnProperty(z.getId())&&console.warn("Overwriting a content widget with the same id."),this._contentWidgets[z.getId()]=J,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(J)}layoutContentWidget(z){const J=z.getId();if(this._contentWidgets.hasOwnProperty(J)){const G=this._contentWidgets[J];G.position=z.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(G)}}removeContentWidget(z){const J=z.getId();if(this._contentWidgets.hasOwnProperty(J)){const G=this._contentWidgets[J];delete this._contentWidgets[J],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(G)}}addOverlayWidget(z){const J={widget:z,position:z.getPosition()};this._overlayWidgets.hasOwnProperty(z.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[z.getId()]=J,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(J)}layoutOverlayWidget(z){const J=z.getId();if(this._overlayWidgets.hasOwnProperty(J)){const G=this._overlayWidgets[J];G.position=z.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(G)}}removeOverlayWidget(z){const J=z.getId();if(this._overlayWidgets.hasOwnProperty(J)){const G=this._overlayWidgets[J];delete this._overlayWidgets[J],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(G)}}changeViewZones(z){!this._modelData||!this._modelData.hasRealView||this._modelData.view.change(z)}getTargetAtClientPoint(z,J){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.getTargetAtClientPoint(z,J)}getScrolledVisiblePosition(z){if(!this._modelData||!this._modelData.hasRealView)return null;const J=this._modelData.model.validatePosition(z),G=this._configuration.options,U=G.get(133),j=Tt._getVerticalOffsetForPosition(this._modelData,J.lineNumber,J.column)-this.getScrollTop(),ce=this._modelData.view.getOffsetForColumn(J.lineNumber,J.column)+U.glyphMarginWidth+U.lineNumbersWidth+U.decorationsWidth-this.getScrollLeft();return{top:j,left:ce,height:G.get(61)}}getOffsetForColumn(z,J){return!this._modelData||!this._modelData.hasRealView?-1:this._modelData.view.getOffsetForColumn(z,J)}render(z=!1){!this._modelData||!this._modelData.hasRealView||this._modelData.view.render(!0,z)}setAriaOptions(z){!this._modelData||!this._modelData.hasRealView||this._modelData.view.setAriaOptions(z)}applyFontInfo(z){(0,W.applyFontInfo)(z,this._configuration.options.get(46))}setBanner(z,J){this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._domElement.removeChild(this._bannerDomNode),this._bannerDomNode=z,this._configuration.setReservedHeight(z?J:0),this._bannerDomNode&&this._domElement.prepend(this._bannerDomNode)}_attachModel(z){if(!z){this._modelData=null;return}const J=[];this._domElement.setAttribute("data-mode-id",z.getLanguageId()),this._configuration.setIsDominatedByLongLines(z.isDominatedByLongLines()),this._configuration.setModelLineCount(z.getLineCount()),z.onBeforeAttached();const G=new h.ViewModel(this._id,this._configuration,z,M.DOMLineBreaksComputerFactory.create(),D.MonospaceLineBreaksComputerFactory.create(this._configuration.options),ce=>C.scheduleAtNextAnimationFrame(ce),this.languageConfigurationService,this._themeService);J.push(z.onWillDispose(()=>this.setModel(null))),J.push(G.onEvent(ce=>{switch(ce.kind){case 0:this._onDidContentSizeChange.fire(ce);break;case 1:this._editorTextFocus.setValue(ce.hasFocus);break;case 2:this._onDidScrollChange.fire(ce);break;case 3:this._onDidChangeViewZones.fire();break;case 4:this._onDidChangeHiddenAreas.fire();break;case 5:this._onDidAttemptReadOnlyEdit.fire();break;case 6:{ce.reachedMaxCursorCount&&this._notificationService.warn(w.localize(0,null,s.CursorsController.MAX_CURSOR_COUNT));const se=[];for(let Ce=0,Le=ce.selections.length;Ce{this._paste("keyboard",j,ce,se,he)},type:j=>{this._type("keyboard",j)},compositionType:(j,ce,se,he)=>{this._compositionType("keyboard",j,ce,se,he)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:J={paste:(j,ce,se,he)=>{const me={text:j,pasteOnNewLine:ce,multicursorText:se,mode:he};this._commandService.executeCommand("paste",me)},type:j=>{const ce={text:j};this._commandService.executeCommand("type",ce)},compositionType:(j,ce,se,he)=>{if(se||he){const me={text:j,replacePrevCharCnt:ce,replaceNextCharCnt:se,positionDelta:he};this._commandService.executeCommand("compositionType",me)}else{const me={text:j,replaceCharCnt:ce};this._commandService.executeCommand("replacePreviousChar",me)}},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};const G=new i.ViewUserInputEvents(z.coordinatesConverter);return G.onKeyDown=j=>this._onKeyDown.fire(j),G.onKeyUp=j=>this._onKeyUp.fire(j),G.onContextMenu=j=>this._onContextMenu.fire(j),G.onMouseMove=j=>this._onMouseMove.fire(j),G.onMouseLeave=j=>this._onMouseLeave.fire(j),G.onMouseDown=j=>this._onMouseDown.fire(j),G.onMouseUp=j=>this._onMouseUp.fire(j),G.onMouseDrag=j=>this._onMouseDrag.fire(j),G.onMouseDrop=j=>this._onMouseDrop.fire(j),G.onMouseDropCanceled=j=>this._onMouseDropCanceled.fire(j),G.onMouseWheel=j=>this._onMouseWheel.fire(j),[new n.View(J,this._configuration,this._themeService.getColorTheme(),z,G,this._overflowWidgetsDomNode),!0]}_postDetachModelCleanup(z){z==null||z.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(!this._modelData)return null;const z=this._modelData.model,J=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),J&&this._domElement.contains(J)&&this._domElement.removeChild(J),this._bannerDomNode&&this._domElement.contains(this._bannerDomNode)&&this._domElement.removeChild(this._bannerDomNode),z}_removeDecorationType(z){this._codeEditorService.removeDecorationType(z)}hasModel(){return this._modelData!==null}showDropIndicatorAt(z){const J=[{range:new a.Range(z.lineNumber,z.column,z.lineNumber,z.column),options:Tt.dropIntoEditorDecorationOptions}];this._dropIntoEditorDecorations.set(J),this.revealPosition(z,1)}removeDropIndicator(){this._dropIntoEditorDecorations.clear()}};ee.dropIntoEditorDecorationOptions=p.ModelDecorationOptions.register({description:"workbench-dnd-target",className:"dnd-target"}),ee=ke([fe(3,E.IInstantiationService),fe(4,g.ICodeEditorService),fe(5,S.ICommandService),fe(6,y.IContextKeyService),fe(7,R.IThemeService),fe(8,T.INotificationService),fe(9,F.IAccessibilityService),fe(10,B.ILanguageConfigurationService),fe(11,V.ILanguageFeaturesService)],ee),e.CodeEditorWidget=ee;class H extends L.Disposable{constructor(z){super();this._emitterOptions=z,this._onDidChangeToTrue=this._register(new I.Emitter(this._emitterOptions)),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new I.Emitter(this._emitterOptions)),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(z){const J=z?2:1;this._value!==J&&(this._value=J,this._value===2?this._onDidChangeToTrue.fire():this._value===1&&this._onDidChangeToFalse.fire())}}e.BooleanEventEmitter=H;class q extends L.Disposable{constructor(z,J){super();this._editor=z,J.createKey("editorId",z.getId()),this._editorSimpleInput=f.EditorContextKeys.editorSimpleInput.bindTo(J),this._editorFocus=f.EditorContextKeys.focus.bindTo(J),this._textInputFocus=f.EditorContextKeys.textInputFocus.bindTo(J),this._editorTextFocus=f.EditorContextKeys.editorTextFocus.bindTo(J),this._editorTabMovesFocus=f.EditorContextKeys.tabMovesFocus.bindTo(J),this._editorReadonly=f.EditorContextKeys.readOnly.bindTo(J),this._inDiffEditor=f.EditorContextKeys.inDiffEditor.bindTo(J),this._editorColumnSelection=f.EditorContextKeys.columnSelection.bindTo(J),this._hasMultipleSelections=f.EditorContextKeys.hasMultipleSelections.bindTo(J),this._hasNonEmptySelection=f.EditorContextKeys.hasNonEmptySelection.bindTo(J),this._canUndo=f.EditorContextKeys.canUndo.bindTo(J),this._canRedo=f.EditorContextKeys.canRedo.bindTo(J),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromConfig())),this._register(this._editor.onDidChangeCursorSelection(()=>this._updateFromSelection())),this._register(this._editor.onDidFocusEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorWidget(()=>this._updateFromFocus())),this._register(this._editor.onDidFocusEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidBlurEditorText(()=>this._updateFromFocus())),this._register(this._editor.onDidChangeModel(()=>this._updateFromModel())),this._register(this._editor.onDidChangeConfiguration(()=>this._updateFromModel())),this._updateFromConfig(),this._updateFromSelection(),this._updateFromFocus(),this._updateFromModel(),this._editorSimpleInput.set(this._editor.isSimpleWidget)}_updateFromConfig(){const z=this._editor.getOptions();this._editorTabMovesFocus.set(z.get(132)),this._editorReadonly.set(z.get(83)),this._inDiffEditor.set(z.get(56)),this._editorColumnSelection.set(z.get(18))}_updateFromSelection(){const z=this._editor.getSelections();z?(this._hasMultipleSelections.set(z.length>1),this._hasNonEmptySelection.set(z.some(J=>!J.isEmpty()))):(this._hasMultipleSelections.reset(),this._hasNonEmptySelection.reset())}_updateFromFocus(){this._editorFocus.set(this._editor.hasWidgetFocus()&&!this._editor.isSimpleWidget),this._editorTextFocus.set(this._editor.hasTextFocus()&&!this._editor.isSimpleWidget),this._textInputFocus.set(this._editor.hasTextFocus())}_updateFromModel(){const z=this._editor.getModel();this._canUndo.set(Boolean(z&&z.canUndo())),this._canRedo.set(Boolean(z&&z.canRedo()))}}class Z extends L.Disposable{constructor(z,J,G){super();this._editor=z,this._contextKeyService=J,this._languageFeaturesService=G,this._langId=f.EditorContextKeys.languageId.bindTo(J),this._hasCompletionItemProvider=f.EditorContextKeys.hasCompletionItemProvider.bindTo(J),this._hasCodeActionsProvider=f.EditorContextKeys.hasCodeActionsProvider.bindTo(J),this._hasCodeLensProvider=f.EditorContextKeys.hasCodeLensProvider.bindTo(J),this._hasDefinitionProvider=f.EditorContextKeys.hasDefinitionProvider.bindTo(J),this._hasDeclarationProvider=f.EditorContextKeys.hasDeclarationProvider.bindTo(J),this._hasImplementationProvider=f.EditorContextKeys.hasImplementationProvider.bindTo(J),this._hasTypeDefinitionProvider=f.EditorContextKeys.hasTypeDefinitionProvider.bindTo(J),this._hasHoverProvider=f.EditorContextKeys.hasHoverProvider.bindTo(J),this._hasDocumentHighlightProvider=f.EditorContextKeys.hasDocumentHighlightProvider.bindTo(J),this._hasDocumentSymbolProvider=f.EditorContextKeys.hasDocumentSymbolProvider.bindTo(J),this._hasReferenceProvider=f.EditorContextKeys.hasReferenceProvider.bindTo(J),this._hasRenameProvider=f.EditorContextKeys.hasRenameProvider.bindTo(J),this._hasSignatureHelpProvider=f.EditorContextKeys.hasSignatureHelpProvider.bindTo(J),this._hasInlayHintsProvider=f.EditorContextKeys.hasInlayHintsProvider.bindTo(J),this._hasDocumentFormattingProvider=f.EditorContextKeys.hasDocumentFormattingProvider.bindTo(J),this._hasDocumentSelectionFormattingProvider=f.EditorContextKeys.hasDocumentSelectionFormattingProvider.bindTo(J),this._hasMultipleDocumentFormattingProvider=f.EditorContextKeys.hasMultipleDocumentFormattingProvider.bindTo(J),this._hasMultipleDocumentSelectionFormattingProvider=f.EditorContextKeys.hasMultipleDocumentSelectionFormattingProvider.bindTo(J),this._isInWalkThrough=f.EditorContextKeys.isInWalkThroughSnippet.bindTo(J);const U=()=>this._update();this._register(z.onDidChangeModel(U)),this._register(z.onDidChangeModelLanguage(U)),this._register(G.completionProvider.onDidChange(U)),this._register(G.codeActionProvider.onDidChange(U)),this._register(G.codeLensProvider.onDidChange(U)),this._register(G.definitionProvider.onDidChange(U)),this._register(G.declarationProvider.onDidChange(U)),this._register(G.implementationProvider.onDidChange(U)),this._register(G.typeDefinitionProvider.onDidChange(U)),this._register(G.hoverProvider.onDidChange(U)),this._register(G.documentHighlightProvider.onDidChange(U)),this._register(G.documentSymbolProvider.onDidChange(U)),this._register(G.referenceProvider.onDidChange(U)),this._register(G.renameProvider.onDidChange(U)),this._register(G.documentFormattingEditProvider.onDidChange(U)),this._register(G.documentRangeFormattingEditProvider.onDidChange(U)),this._register(G.signatureHelpProvider.onDidChange(U)),this._register(G.inlayHintsProvider.onDidChange(U)),U()}dispose(){super.dispose()}reset(){this._contextKeyService.bufferChangeEvents(()=>{this._langId.reset(),this._hasCompletionItemProvider.reset(),this._hasCodeActionsProvider.reset(),this._hasCodeLensProvider.reset(),this._hasDefinitionProvider.reset(),this._hasDeclarationProvider.reset(),this._hasImplementationProvider.reset(),this._hasTypeDefinitionProvider.reset(),this._hasHoverProvider.reset(),this._hasDocumentHighlightProvider.reset(),this._hasDocumentSymbolProvider.reset(),this._hasReferenceProvider.reset(),this._hasRenameProvider.reset(),this._hasDocumentFormattingProvider.reset(),this._hasDocumentSelectionFormattingProvider.reset(),this._hasSignatureHelpProvider.reset(),this._isInWalkThrough.reset()})}_update(){const z=this._editor.getModel();if(!z){this.reset();return}this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(z.getLanguageId()),this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(z)),this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(z)),this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(z)),this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(z)),this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(z)),this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(z)),this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(z)),this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(z)),this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(z)),this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(z)),this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(z)),this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(z)),this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(z)),this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(z)),this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(z)||this._languageFeaturesService.documentRangeFormattingEditProvider.has(z)),this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(z)),this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(z).length+this._languageFeaturesService.documentRangeFormattingEditProvider.all(z).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(z).length>1),this._isInWalkThrough.set(z.uri.scheme===b.Schemas.walkThroughSnippet)})}}e.EditorModeContext=Z;class ie extends L.Disposable{constructor(z){super();this._onChange=this._register(new I.Emitter),this.onChange=this._onChange.event,this._hasFocus=!1,this._domFocusTracker=this._register(C.trackFocus(z)),this._register(this._domFocusTracker.onDidFocus(()=>{this._hasFocus=!0,this._onChange.fire(void 0)})),this._register(this._domFocusTracker.onDidBlur(()=>{this._hasFocus=!1,this._onChange.fire(void 0)}))}hasFocus(){return this._hasFocus}}class Y{constructor(z,J){this._editor=z,this._decorationIds=[],this._isChangingDecorations=!1,Array.isArray(J)&&J.length>0&&this.set(J)}get length(){return this._decorationIds.length}onDidChange(z,J,G){return this._editor.onDidChangeModelDecorations(U=>{this._isChangingDecorations||z.call(J,U)},G)}getRange(z){return!this._editor.hasModel()||z>=this._decorationIds.length?null:this._editor.getModel().getDecorationRange(this._decorationIds[z])}getRanges(){if(!this._editor.hasModel())return[];const z=this._editor.getModel(),J=[];for(const G of this._decorationIds){const U=z.getDecorationRange(G);U&&J.push(U)}return J}has(z){return this._decorationIds.includes(z.id)}clear(){this._decorationIds.length!==0&&this.set([])}set(z){try{this._isChangingDecorations=!0,this._editor.changeDecorations(J=>{this._decorationIds=J.deltaDecorations(this._decorationIds,z)})}finally{this._isChangingDecorations=!1}}}const te=encodeURIComponent("");function x(ne){return te+encodeURIComponent(ne.toString())+de}const oe=encodeURIComponent('');function K(ne){return oe+encodeURIComponent(ne.toString())+Q}(0,R.registerThemingParticipant)((ne,z)=>{const J=ne.getColor(m.editorErrorBorder);J&&z.addRule(`.monaco-editor .squiggly-error { border-bottom: 4px double ${J}; }`);const G=ne.getColor(m.editorErrorForeground);G&&z.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${x(G)}") repeat-x bottom left; }`);const U=ne.getColor(m.editorErrorBackground);U&&z.addRule(`.monaco-editor .squiggly-error::before { display: block; content: ''; width: 100%; height: 100%; background: ${U}; }`);const j=ne.getColor(m.editorWarningBorder);j&&z.addRule(`.monaco-editor .squiggly-warning { border-bottom: 4px double ${j}; }`);const ce=ne.getColor(m.editorWarningForeground);ce&&z.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${x(ce)}") repeat-x bottom left; }`);const se=ne.getColor(m.editorWarningBackground);se&&z.addRule(`.monaco-editor .squiggly-warning::before { display: block; content: ''; width: 100%; height: 100%; background: ${se}; }`);const he=ne.getColor(m.editorInfoBorder);he&&z.addRule(`.monaco-editor .squiggly-info { border-bottom: 4px double ${he}; }`);const me=ne.getColor(m.editorInfoForeground);me&&z.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${x(me)}") repeat-x bottom left; }`);const Ce=ne.getColor(m.editorInfoBackground);Ce&&z.addRule(`.monaco-editor .squiggly-info::before { display: block; content: ''; width: 100%; height: 100%; background: ${Ce}; }`);const Le=ne.getColor(m.editorHintBorder);Le&&z.addRule(`.monaco-editor .squiggly-hint { border-bottom: 2px dotted ${Le}; }`);const Ee=ne.getColor(m.editorHintForeground);Ee&&z.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${K(Ee)}") no-repeat bottom left; }`);const De=ne.getColor(_.editorUnnecessaryCodeOpacity);De&&z.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${De.rgba.a}; }`);const Ae=ne.getColor(_.editorUnnecessaryCodeBorder);Ae&&z.addRule(`.monaco-editor.showUnused .squiggly-unnecessary { border-bottom: 2px dashed ${Ae}; }`);const pe=ne.getColor(m.editorForeground)||"inherit";z.addRule(`.monaco-editor.showDeprecated .squiggly-inline-deprecated { text-decoration: line-through; text-decoration-color: ${pe}}`)})}),define(re[311],ae([1,0,526,7,177,33,135,10,6,2,65,152,29,173,731,36,11,3,91,154,35,92,245,130,114,74,16,9,167,38,25,15,78,529,93,12,14,71,267,27,150,80,56,368]),function($,e,w,C,k,I,L,b,v,u,g,n,i,t,s,d,l,a,r,o,c,f,p,_,m,h,S,y,E,N,T,R,F,O,D,M,P,B,W,V,A,X,ee){"use strict";var H;Object.defineProperty(e,"__esModule",{value:!0}),e.DiffEditorWidget=void 0;class q{constructor(ue,le){this._contextMenuService=ue,this._clipboardService=le,this._zones=[],this._inlineDiffMargins=[],this._zonesMap={},this._decorations=[]}getForeignViewZones(ue){return ue.filter(le=>!this._zonesMap[String(le.id)])}clean(ue){this._zones.length>0&&ue.changeViewZones(le=>{for(const ge of this._zones)le.removeZone(ge)}),this._zones=[],this._zonesMap={},ue.changeDecorations(le=>{this._decorations=le.deltaDecorations(this._decorations,[])})}apply(ue,le,ge,_e){const we=_e?n.StableEditorScrollState.capture(ue):null;ue.changeViewZones(Ie=>{var Me;for(const Oe of this._zones)Ie.removeZone(Oe);for(const Oe of this._inlineDiffMargins)Oe.dispose();this._zones=[],this._zonesMap={},this._inlineDiffMargins=[];for(let Oe=0,be=ge.zones.length;Oe{this._decorations=Ie.deltaDecorations(this._decorations,ge.decorations)}),le==null||le.setZones(ge.overviewZones)}}let Z=0;const ie=(0,X.registerIcon)("diff-insert",V.Codicon.add,w.localize(0,null)),Y=(0,X.registerIcon)("diff-remove",V.Codicon.remove,w.localize(1,null)),te=(H=window.trustedTypes)===null||H===void 0?void 0:H.createPolicy("diffEditorWidget",{createHTML:pe=>pe});let de=class at extends u.Disposable{constructor(ue,le,ge,_e,we,Ie,Me,Oe,be,ve,ye,Re){super();this._editorProgressService=Re,this._onDidDispose=this._register(new v.Emitter),this.onDidDispose=this._onDidDispose.event,this._onDidUpdateDiff=this._register(new v.Emitter),this.onDidUpdateDiff=this._onDidUpdateDiff.event,this._onDidContentSizeChange=this._register(new v.Emitter),this._lastOriginalWarning=null,this._lastModifiedWarning=null,this._editorWorkerService=we,this._codeEditorService=Oe,this._contextKeyService=this._register(Ie.createScoped(ue)),this._instantiationService=Me.createChild(new E.ServiceCollection([S.IContextKeyService,this._contextKeyService])),this._contextKeyService.createKey("isInDiffEditor",!0),this._themeService=be,this._notificationService=ve,this._id=++Z,this._state=0,this._updatingDiffProgress=null,this._domElement=ue,le=le||{},this._options=De(le,{enableSplitViewResizing:!0,renderSideBySide:!0,renderMarginRevertIcon:!0,maxComputationTime:5e3,maxFileSize:50,ignoreTrimWhitespace:!0,renderIndicators:!0,originalEditable:!1,diffCodeLens:!1,renderOverviewRuler:!0,diffWordWrap:"inherit"}),typeof le.isInEmbeddedEditor!="undefined"?this._contextKeyService.createKey("isInEmbeddedDiffEditor",le.isInEmbeddedEditor):this._contextKeyService.createKey("isInEmbeddedDiffEditor",!1),this._updateDecorationsRunner=this._register(new b.RunOnceScheduler(()=>this._updateDecorations(),0)),this._containerDomElement=document.createElement("div"),this._containerDomElement.className=at._getClassName(this._themeService.getColorTheme(),this._options.renderSideBySide),this._containerDomElement.style.position="relative",this._containerDomElement.style.height="100%",this._domElement.appendChild(this._containerDomElement),this._overviewViewportDomElement=(0,I.createFastDomNode)(document.createElement("div")),this._overviewViewportDomElement.setClassName("diffViewport"),this._overviewViewportDomElement.setPosition("absolute"),this._overviewDomElement=document.createElement("div"),this._overviewDomElement.className="diffOverview",this._overviewDomElement.style.position="absolute",this._overviewDomElement.appendChild(this._overviewViewportDomElement.domNode),this._register(C.addStandardDisposableListener(this._overviewDomElement,C.EventType.POINTER_DOWN,Be=>{this._modifiedEditor.delegateVerticalScrollbarPointerDown(Be)})),this._options.renderOverviewRuler&&this._containerDomElement.appendChild(this._overviewDomElement),this._originalDomNode=document.createElement("div"),this._originalDomNode.className="editor original",this._originalDomNode.style.position="absolute",this._originalDomNode.style.height="100%",this._containerDomElement.appendChild(this._originalDomNode),this._modifiedDomNode=document.createElement("div"),this._modifiedDomNode.className="editor modified",this._modifiedDomNode.style.position="absolute",this._modifiedDomNode.style.height="100%",this._containerDomElement.appendChild(this._modifiedDomNode),this._beginUpdateDecorationsTimeout=-1,this._currentlyChangingViewZones=!1,this._diffComputationToken=0,this._originalEditorState=new q(ye,_e),this._modifiedEditorState=new q(ye,_e),this._isVisible=!0,this._isHandlingScrollEvent=!1,this._elementSizeObserver=this._register(new W.ElementSizeObserver(this._containerDomElement,le.dimension)),this._register(this._elementSizeObserver.onDidChange(()=>this._onDidContainerSizeChanged())),le.automaticLayout&&this._elementSizeObserver.startObserving(),this._diffComputationResult=null,this._originalEditor=this._createLeftHandSideEditor(le,ge.originalEditor||{}),this._modifiedEditor=this._createRightHandSideEditor(le,ge.modifiedEditor||{}),this._originalOverviewRuler=null,this._modifiedOverviewRuler=null,this._reviewPane=Me.createInstance(s.DiffReview,this),this._containerDomElement.appendChild(this._reviewPane.domNode.domNode),this._containerDomElement.appendChild(this._reviewPane.shadow.domNode),this._containerDomElement.appendChild(this._reviewPane.actionBarContainer.domNode),this._options.renderSideBySide?this._setStrategy(new z(this._createDataSource(),this._options.enableSplitViewResizing)):this._setStrategy(new G(this._createDataSource(),this._options.enableSplitViewResizing)),this._register(be.onDidColorThemeChange(Be=>{this._strategy&&this._strategy.applyColors(Be)&&this._updateDecorationsRunner.schedule(),this._containerDomElement.className=at._getClassName(this._themeService.getColorTheme(),this._options.renderSideBySide)}));const Te=M.EditorExtensionsRegistry.getDiffEditorContributions();for(const Be of Te)try{this._register(Me.createInstance(Be.ctor,this))}catch(xe){(0,P.onUnexpectedError)(xe)}this._codeEditorService.addDiffEditor(this)}_setState(ue){this._state!==ue&&(this._state=ue,this._updatingDiffProgress&&(this._updatingDiffProgress.done(),this._updatingDiffProgress=null),this._state===1&&(this._updatingDiffProgress=this._editorProgressService.show(!0,1e3)))}diffReviewNext(){this._reviewPane.next()}diffReviewPrev(){this._reviewPane.prev()}static _getClassName(ue,le){let ge="monaco-diff-editor monaco-editor-background ";return le&&(ge+="side-by-side "),ge+=(0,R.getThemeTypeSelector)(ue.type),ge}_disposeOverviewRulers(){this._originalOverviewRuler&&(this._overviewDomElement.removeChild(this._originalOverviewRuler.getDomNode()),this._originalOverviewRuler.dispose(),this._originalOverviewRuler=null),this._modifiedOverviewRuler&&(this._overviewDomElement.removeChild(this._modifiedOverviewRuler.getDomNode()),this._modifiedOverviewRuler.dispose(),this._modifiedOverviewRuler=null)}_createOverviewRulers(){!this._options.renderOverviewRuler||(k.ok(!this._originalOverviewRuler&&!this._modifiedOverviewRuler),this._originalEditor.hasModel()&&(this._originalOverviewRuler=this._originalEditor.createOverviewRuler("original diffOverviewRuler"),this._overviewDomElement.appendChild(this._originalOverviewRuler.getDomNode())),this._modifiedEditor.hasModel()&&(this._modifiedOverviewRuler=this._modifiedEditor.createOverviewRuler("modified diffOverviewRuler"),this._overviewDomElement.appendChild(this._modifiedOverviewRuler.getDomNode())),this._layoutOverviewRulers())}_createLeftHandSideEditor(ue,le){const ge=this._createInnerEditor(this._instantiationService,this._originalDomNode,this._adjustOptionsForLeftHandSide(ue),le);this._register(ge.onDidScrollChange(we=>{this._isHandlingScrollEvent||!we.scrollTopChanged&&!we.scrollLeftChanged&&!we.scrollHeightChanged||(this._isHandlingScrollEvent=!0,this._modifiedEditor.setScrollPosition({scrollLeft:we.scrollLeft,scrollTop:we.scrollTop}),this._isHandlingScrollEvent=!1,this._layoutOverviewViewport())})),this._register(ge.onDidChangeViewZones(()=>{this._onViewZonesChanged()})),this._register(ge.onDidChangeConfiguration(we=>{!ge.getModel()||(we.hasChanged(46)&&this._updateDecorationsRunner.schedule(),we.hasChanged(134)&&(this._updateDecorationsRunner.cancel(),this._updateDecorations()))})),this._register(ge.onDidChangeHiddenAreas(()=>{this._updateDecorationsRunner.cancel(),this._updateDecorations()})),this._register(ge.onDidChangeModelContent(()=>{this._isVisible&&this._beginUpdateDecorationsSoon()}));const _e=this._contextKeyService.createKey("isInDiffLeftEditor",ge.hasWidgetFocus());return this._register(ge.onDidFocusEditorWidget(()=>_e.set(!0))),this._register(ge.onDidBlurEditorWidget(()=>_e.set(!1))),this._register(ge.onDidContentSizeChange(we=>{const Ie=this._originalEditor.getContentWidth()+this._modifiedEditor.getContentWidth()+at.ONE_OVERVIEW_WIDTH,Me=Math.max(this._modifiedEditor.getContentHeight(),this._originalEditor.getContentHeight());this._onDidContentSizeChange.fire({contentHeight:Me,contentWidth:Ie,contentHeightChanged:we.contentHeightChanged,contentWidthChanged:we.contentWidthChanged})})),ge}_createRightHandSideEditor(ue,le){const ge=this._createInnerEditor(this._instantiationService,this._modifiedDomNode,this._adjustOptionsForRightHandSide(ue),le);this._register(ge.onDidScrollChange(we=>{this._isHandlingScrollEvent||!we.scrollTopChanged&&!we.scrollLeftChanged&&!we.scrollHeightChanged||(this._isHandlingScrollEvent=!0,this._originalEditor.setScrollPosition({scrollLeft:we.scrollLeft,scrollTop:we.scrollTop}),this._isHandlingScrollEvent=!1,this._layoutOverviewViewport())})),this._register(ge.onDidChangeViewZones(()=>{this._onViewZonesChanged()})),this._register(ge.onDidChangeConfiguration(we=>{!ge.getModel()||(we.hasChanged(46)&&this._updateDecorationsRunner.schedule(),we.hasChanged(134)&&(this._updateDecorationsRunner.cancel(),this._updateDecorations()))})),this._register(ge.onDidChangeHiddenAreas(()=>{this._updateDecorationsRunner.cancel(),this._updateDecorations()})),this._register(ge.onDidChangeModelContent(()=>{this._isVisible&&this._beginUpdateDecorationsSoon()})),this._register(ge.onDidChangeModelOptions(we=>{we.tabSize&&this._updateDecorationsRunner.schedule()}));const _e=this._contextKeyService.createKey("isInDiffRightEditor",ge.hasWidgetFocus());return this._register(ge.onDidFocusEditorWidget(()=>_e.set(!0))),this._register(ge.onDidBlurEditorWidget(()=>_e.set(!1))),this._register(ge.onDidContentSizeChange(we=>{const Ie=this._originalEditor.getContentWidth()+this._modifiedEditor.getContentWidth()+at.ONE_OVERVIEW_WIDTH,Me=Math.max(this._modifiedEditor.getContentHeight(),this._originalEditor.getContentHeight());this._onDidContentSizeChange.fire({contentHeight:Me,contentWidth:Ie,contentHeightChanged:we.contentHeightChanged,contentWidthChanged:we.contentWidthChanged})})),this._register(ge.onMouseDown(we=>{var Ie,Me;if(!we.event.rightButton&&we.target.position&&((Ie=we.target.element)===null||Ie===void 0?void 0:Ie.className.includes("arrow-revert-change"))){const Oe=we.target.position.lineNumber,be=(Me=this._diffComputationResult)===null||Me===void 0?void 0:Me.changes.find(ve=>ve.modifiedStartLineNumber===Oe-1||ve.modifiedStartLineNumber===Oe);be&&this.revertChange(be),we.event.stopPropagation(),this._updateDecorations();return}})),ge}revertChange(ue){const le=this._modifiedEditor,ge=this._originalEditor.getModel(),_e=this._modifiedEditor.getModel();if(!ge||!_e||!le)return;const we=ue.originalEndLineNumber>0?new a.Range(ue.originalStartLineNumber,1,ue.originalEndLineNumber,ge.getLineMaxColumn(ue.originalEndLineNumber)):null,Ie=we?ge.getValueInRange(we):null,Me=ue.modifiedEndLineNumber>0?new a.Range(ue.modifiedStartLineNumber,1,ue.modifiedEndLineNumber,_e.getLineMaxColumn(ue.modifiedEndLineNumber)):null,Oe=_e.getEOL();if(ue.originalEndLineNumber===0&&Me){let be=Me;ue.modifiedStartLineNumber>1?be=Me.setStartPosition(ue.modifiedStartLineNumber-1,_e.getLineMaxColumn(ue.modifiedStartLineNumber-1)):ue.modifiedEndLineNumber<_e.getLineCount()&&(be=Me.setEndPosition(ue.modifiedEndLineNumber+1,1)),le.executeEdits("diffEditor",[{range:be,text:""}])}else if(ue.modifiedEndLineNumber===0&&Ie!==null){const be=ue.modifiedStartLineNumber<_e.getLineCount()?new l.Position(ue.modifiedStartLineNumber+1,1):new l.Position(ue.modifiedStartLineNumber,_e.getLineMaxColumn(ue.modifiedStartLineNumber));le.executeEdits("diffEditor",[{range:a.Range.fromPositions(be,be),text:ue.modifiedStartLineNumber<_e.getLineCount()?Ie+Oe:Oe+Ie}])}else Me&&Ie!==null&&le.executeEdits("diffEditor",[{range:Me,text:Ie}])}_createInnerEditor(ue,le,ge,_e){return ue.createInstance(t.CodeEditorWidget,le,ge,_e)}dispose(){this._codeEditorService.removeDiffEditor(this),this._beginUpdateDecorationsTimeout!==-1&&(window.clearTimeout(this._beginUpdateDecorationsTimeout),this._beginUpdateDecorationsTimeout=-1),this._cleanViewZonesAndDecorations(),this._originalOverviewRuler&&(this._overviewDomElement.removeChild(this._originalOverviewRuler.getDomNode()),this._originalOverviewRuler.dispose()),this._modifiedOverviewRuler&&(this._overviewDomElement.removeChild(this._modifiedOverviewRuler.getDomNode()),this._modifiedOverviewRuler.dispose()),this._overviewDomElement.removeChild(this._overviewViewportDomElement.domNode),this._options.renderOverviewRuler&&this._containerDomElement.removeChild(this._overviewDomElement),this._containerDomElement.removeChild(this._originalDomNode),this._originalEditor.dispose(),this._containerDomElement.removeChild(this._modifiedDomNode),this._modifiedEditor.dispose(),this._strategy.dispose(),this._containerDomElement.removeChild(this._reviewPane.domNode.domNode),this._containerDomElement.removeChild(this._reviewPane.shadow.domNode),this._containerDomElement.removeChild(this._reviewPane.actionBarContainer.domNode),this._reviewPane.dispose(),this._domElement.removeChild(this._containerDomElement),this._onDidDispose.fire(),super.dispose()}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return o.EditorType.IDiffEditor}getLineChanges(){return this._diffComputationResult?this._diffComputationResult.changes:null}getOriginalEditor(){return this._originalEditor}getModifiedEditor(){return this._modifiedEditor}updateOptions(ue){const le=De(ue,this._options),ge=Ae(this._options,le);this._options=le;const _e=ge.ignoreTrimWhitespace||ge.renderIndicators||ge.renderMarginRevertIcon,we=this._isVisible&&(ge.maxComputationTime||ge.maxFileSize);_e?this._beginUpdateDecorations():we&&this._beginUpdateDecorationsSoon(),this._modifiedEditor.updateOptions(this._adjustOptionsForRightHandSide(ue)),this._originalEditor.updateOptions(this._adjustOptionsForLeftHandSide(ue)),this._strategy.setEnableSplitViewResizing(this._options.enableSplitViewResizing),ge.renderSideBySide&&(this._options.renderSideBySide?this._setStrategy(new z(this._createDataSource(),this._options.enableSplitViewResizing)):this._setStrategy(new G(this._createDataSource(),this._options.enableSplitViewResizing)),this._containerDomElement.className=at._getClassName(this._themeService.getColorTheme(),this._options.renderSideBySide)),ge.renderOverviewRuler&&(this._options.renderOverviewRuler?this._containerDomElement.appendChild(this._overviewDomElement):this._containerDomElement.removeChild(this._overviewDomElement))}getModel(){return{original:this._originalEditor.getModel(),modified:this._modifiedEditor.getModel()}}setModel(ue){if(ue&&(!ue.original||!ue.modified))throw new Error(ue.original?"DiffEditorWidget.setModel: Modified model is null":"DiffEditorWidget.setModel: Original model is null");this._cleanViewZonesAndDecorations(),this._disposeOverviewRulers(),this._originalEditor.setModel(ue?ue.original:null),this._modifiedEditor.setModel(ue?ue.modified:null),this._updateDecorationsRunner.cancel(),ue&&(this._originalEditor.setScrollTop(0),this._modifiedEditor.setScrollTop(0)),this._diffComputationResult=null,this._diffComputationToken++,this._setState(0),ue&&(this._createOverviewRulers(),this._beginUpdateDecorations()),this._layoutOverviewViewport()}getContainerDomNode(){return this._domElement}getVisibleColumnFromPosition(ue){return this._modifiedEditor.getVisibleColumnFromPosition(ue)}getPosition(){return this._modifiedEditor.getPosition()}setPosition(ue,le="api"){this._modifiedEditor.setPosition(ue,le)}revealLine(ue,le=0){this._modifiedEditor.revealLine(ue,le)}revealLineInCenter(ue,le=0){this._modifiedEditor.revealLineInCenter(ue,le)}revealLineInCenterIfOutsideViewport(ue,le=0){this._modifiedEditor.revealLineInCenterIfOutsideViewport(ue,le)}revealLineNearTop(ue,le=0){this._modifiedEditor.revealLineNearTop(ue,le)}revealPosition(ue,le=0){this._modifiedEditor.revealPosition(ue,le)}revealPositionInCenter(ue,le=0){this._modifiedEditor.revealPositionInCenter(ue,le)}revealPositionInCenterIfOutsideViewport(ue,le=0){this._modifiedEditor.revealPositionInCenterIfOutsideViewport(ue,le)}revealPositionNearTop(ue,le=0){this._modifiedEditor.revealPositionNearTop(ue,le)}getSelection(){return this._modifiedEditor.getSelection()}getSelections(){return this._modifiedEditor.getSelections()}setSelection(ue,le="api"){this._modifiedEditor.setSelection(ue,le)}setSelections(ue,le="api"){this._modifiedEditor.setSelections(ue,le)}revealLines(ue,le,ge=0){this._modifiedEditor.revealLines(ue,le,ge)}revealLinesInCenter(ue,le,ge=0){this._modifiedEditor.revealLinesInCenter(ue,le,ge)}revealLinesInCenterIfOutsideViewport(ue,le,ge=0){this._modifiedEditor.revealLinesInCenterIfOutsideViewport(ue,le,ge)}revealLinesNearTop(ue,le,ge=0){this._modifiedEditor.revealLinesNearTop(ue,le,ge)}revealRange(ue,le=0,ge=!1,_e=!0){this._modifiedEditor.revealRange(ue,le,ge,_e)}revealRangeInCenter(ue,le=0){this._modifiedEditor.revealRangeInCenter(ue,le)}revealRangeInCenterIfOutsideViewport(ue,le=0){this._modifiedEditor.revealRangeInCenterIfOutsideViewport(ue,le)}revealRangeNearTop(ue,le=0){this._modifiedEditor.revealRangeNearTop(ue,le)}revealRangeNearTopIfOutsideViewport(ue,le=0){this._modifiedEditor.revealRangeNearTopIfOutsideViewport(ue,le)}revealRangeAtTop(ue,le=0){this._modifiedEditor.revealRangeAtTop(ue,le)}getSupportedActions(){return this._modifiedEditor.getSupportedActions()}saveViewState(){const ue=this._originalEditor.saveViewState(),le=this._modifiedEditor.saveViewState();return{original:ue,modified:le}}restoreViewState(ue){if(ue&&ue.original&&ue.modified){const le=ue;this._originalEditor.restoreViewState(le.original),this._modifiedEditor.restoreViewState(le.modified)}}layout(ue){this._elementSizeObserver.observe(ue)}focus(){this._modifiedEditor.focus()}hasTextFocus(){return this._originalEditor.hasTextFocus()||this._modifiedEditor.hasTextFocus()}trigger(ue,le,ge){this._modifiedEditor.trigger(ue,le,ge)}createDecorationsCollection(ue){return this._modifiedEditor.createDecorationsCollection(ue)}changeDecorations(ue){return this._modifiedEditor.changeDecorations(ue)}_onDidContainerSizeChanged(){this._doLayout()}_getReviewHeight(){return this._reviewPane.isVisible()?this._elementSizeObserver.getHeight():0}_layoutOverviewRulers(){if(!this._options.renderOverviewRuler||!this._originalOverviewRuler||!this._modifiedOverviewRuler)return;const ue=this._elementSizeObserver.getHeight(),le=this._getReviewHeight(),ge=at.ENTIRE_DIFF_OVERVIEW_WIDTH-2*at.ONE_OVERVIEW_WIDTH;this._modifiedEditor.getLayoutInfo()&&(this._originalOverviewRuler.setLayout({top:0,width:at.ONE_OVERVIEW_WIDTH,right:ge+at.ONE_OVERVIEW_WIDTH,height:ue-le}),this._modifiedOverviewRuler.setLayout({top:0,right:0,width:at.ONE_OVERVIEW_WIDTH,height:ue-le}))}_onViewZonesChanged(){this._currentlyChangingViewZones||this._updateDecorationsRunner.schedule()}_beginUpdateDecorationsSoon(){this._beginUpdateDecorationsTimeout!==-1&&(window.clearTimeout(this._beginUpdateDecorationsTimeout),this._beginUpdateDecorationsTimeout=-1),this._beginUpdateDecorationsTimeout=window.setTimeout(()=>this._beginUpdateDecorations(),at.UPDATE_DIFF_DECORATIONS_DELAY)}static _equals(ue,le){return!ue&&!le?!0:!ue||!le?!1:ue.toString()===le.toString()}_beginUpdateDecorations(){this._beginUpdateDecorationsTimeout=-1;const ue=this._originalEditor.getModel(),le=this._modifiedEditor.getModel();if(!ue||!le)return;this._diffComputationToken++;const ge=this._diffComputationToken,_e=this._options.maxFileSize*1024*1024,we=Ie=>{const Me=Ie.getValueLength();return _e===0||Me<=_e};if(!we(ue)||!we(le)){(!at._equals(ue.uri,this._lastOriginalWarning)||!at._equals(le.uri,this._lastModifiedWarning))&&(this._lastOriginalWarning=ue.uri,this._lastModifiedWarning=le.uri,this._notificationService.warn(w.localize(2,null)));return}this._setState(1),this._editorWorkerService.computeDiff(ue.uri,le.uri,this._options.ignoreTrimWhitespace,this._options.maxComputationTime).then(Ie=>{ge===this._diffComputationToken&&ue===this._originalEditor.getModel()&&le===this._modifiedEditor.getModel()&&(this._setState(2),this._diffComputationResult=Ie,this._updateDecorationsRunner.schedule(),this._onDidUpdateDiff.fire())},Ie=>{ge===this._diffComputationToken&&ue===this._originalEditor.getModel()&&le===this._modifiedEditor.getModel()&&(this._setState(2),this._diffComputationResult=null,this._updateDecorationsRunner.schedule())})}_cleanViewZonesAndDecorations(){this._originalEditorState.clean(this._originalEditor),this._modifiedEditorState.clean(this._modifiedEditor)}_updateDecorations(){if(!this._originalEditor.getModel()||!this._modifiedEditor.getModel())return;const ue=this._diffComputationResult?this._diffComputationResult.changes:[],le=this._originalEditorState.getForeignViewZones(this._originalEditor.getWhitespaces()),ge=this._modifiedEditorState.getForeignViewZones(this._modifiedEditor.getWhitespaces()),_e=this._strategy.getEditorsDiffDecorations(ue,this._options.ignoreTrimWhitespace,this._options.renderIndicators,this._options.renderMarginRevertIcon,le,ge);try{this._currentlyChangingViewZones=!0,this._originalEditorState.apply(this._originalEditor,this._originalOverviewRuler,_e.original,!1),this._modifiedEditorState.apply(this._modifiedEditor,this._modifiedOverviewRuler,_e.modified,!0)}finally{this._currentlyChangingViewZones=!1}}_adjustOptionsForSubEditor(ue){const le=Object.assign({},ue);return le.inDiffEditor=!0,le.automaticLayout=!1,le.scrollbar=Object.assign({},le.scrollbar||{}),le.scrollbar.vertical="visible",le.folding=!1,le.codeLens=this._options.diffCodeLens,le.fixedOverflowWidgets=!0,le.minimap=Object.assign({},le.minimap||{}),le.minimap.enabled=!1,le}_adjustOptionsForLeftHandSide(ue){const le=this._adjustOptionsForSubEditor(ue);return this._options.renderSideBySide?le.wordWrapOverride1=this._options.diffWordWrap:(le.wordWrapOverride1="off",le.wordWrapOverride2="off"),ue.originalAriaLabel&&(le.ariaLabel=ue.originalAriaLabel),le.readOnly=!this._options.originalEditable,le.dropIntoEditor={enabled:!le.readOnly},le.extraEditorClassName="original-in-monaco-diff-editor",Object.assign(Object.assign({},le),{dimension:{height:0,width:0}})}_adjustOptionsForRightHandSide(ue){const le=this._adjustOptionsForSubEditor(ue);return ue.modifiedAriaLabel&&(le.ariaLabel=ue.modifiedAriaLabel),le.wordWrapOverride1=this._options.diffWordWrap,le.revealHorizontalRightPadding=d.EditorOptions.revealHorizontalRightPadding.defaultValue+at.ENTIRE_DIFF_OVERVIEW_WIDTH,le.scrollbar.verticalHasArrows=!1,le.extraEditorClassName="modified-in-monaco-diff-editor",Object.assign(Object.assign({},le),{dimension:{height:0,width:0}})}doLayout(){this._elementSizeObserver.observe(),this._doLayout()}_doLayout(){const ue=this._elementSizeObserver.getWidth(),le=this._elementSizeObserver.getHeight(),ge=this._getReviewHeight(),_e=this._strategy.layout();this._originalDomNode.style.width=_e+"px",this._originalDomNode.style.left="0px",this._modifiedDomNode.style.width=ue-_e+"px",this._modifiedDomNode.style.left=_e+"px",this._overviewDomElement.style.top="0px",this._overviewDomElement.style.height=le-ge+"px",this._overviewDomElement.style.width=at.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",this._overviewDomElement.style.left=ue-at.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",this._overviewViewportDomElement.setWidth(at.ENTIRE_DIFF_OVERVIEW_WIDTH),this._overviewViewportDomElement.setHeight(30),this._originalEditor.layout({width:_e,height:le-ge}),this._modifiedEditor.layout({width:ue-_e-(this._options.renderOverviewRuler?at.ENTIRE_DIFF_OVERVIEW_WIDTH:0),height:le-ge}),(this._originalOverviewRuler||this._modifiedOverviewRuler)&&this._layoutOverviewRulers(),this._reviewPane.layout(le-ge,ue,ge),this._layoutOverviewViewport()}_layoutOverviewViewport(){const ue=this._computeOverviewViewport();ue?(this._overviewViewportDomElement.setTop(ue.top),this._overviewViewportDomElement.setHeight(ue.height)):(this._overviewViewportDomElement.setTop(0),this._overviewViewportDomElement.setHeight(0))}_computeOverviewViewport(){const ue=this._modifiedEditor.getLayoutInfo();if(!ue)return null;const le=this._modifiedEditor.getScrollTop(),ge=this._modifiedEditor.getScrollHeight(),_e=Math.max(0,ue.height),we=Math.max(0,_e-2*0),Ie=ge>0?we/ge:0,Me=Math.max(0,Math.floor(ue.height*Ie)),Oe=Math.floor(le*Ie);return{height:Me,top:Oe}}_createDataSource(){return{getWidth:()=>this._elementSizeObserver.getWidth(),getHeight:()=>this._elementSizeObserver.getHeight()-this._getReviewHeight(),getOptions:()=>({renderOverviewRuler:this._options.renderOverviewRuler}),getContainerDomNode:()=>this._containerDomElement,relayoutEditors:()=>{this._doLayout()},getOriginalEditor:()=>this._originalEditor,getModifiedEditor:()=>this._modifiedEditor}}_setStrategy(ue){this._strategy&&this._strategy.dispose(),this._strategy=ue,ue.applyColors(this._themeService.getColorTheme()),this._diffComputationResult&&this._updateDecorations(),this._doLayout()}_getLineChangeAtOrBeforeLineNumber(ue,le){const ge=this._diffComputationResult?this._diffComputationResult.changes:[];if(ge.length===0||ue=Oe?_e=Ie+1:(_e=Ie,we=Ie)}return ge[_e]}_getEquivalentLineForOriginalLineNumber(ue){const le=this._getLineChangeAtOrBeforeLineNumber(ue,Oe=>Oe.originalStartLineNumber);if(!le)return ue;const ge=le.originalStartLineNumber+(le.originalEndLineNumber>0?-1:0),_e=le.modifiedStartLineNumber+(le.modifiedEndLineNumber>0?-1:0),we=le.originalEndLineNumber>0?le.originalEndLineNumber-le.originalStartLineNumber+1:0,Ie=le.modifiedEndLineNumber>0?le.modifiedEndLineNumber-le.modifiedStartLineNumber+1:0,Me=ue-ge;return Me<=we?_e+Math.min(Me,Ie):_e+Ie-we+Me}_getEquivalentLineForModifiedLineNumber(ue){const le=this._getLineChangeAtOrBeforeLineNumber(ue,Oe=>Oe.modifiedStartLineNumber);if(!le)return ue;const ge=le.originalStartLineNumber+(le.originalEndLineNumber>0?-1:0),_e=le.modifiedStartLineNumber+(le.modifiedEndLineNumber>0?-1:0),we=le.originalEndLineNumber>0?le.originalEndLineNumber-le.originalStartLineNumber+1:0,Ie=le.modifiedEndLineNumber>0?le.modifiedEndLineNumber-le.modifiedStartLineNumber+1:0,Me=ue-_e;return Me<=Ie?ge+Math.min(Me,we):ge+we-Ie+Me}getDiffLineInformationForOriginal(ue){return this._diffComputationResult?{equivalentLineNumber:this._getEquivalentLineForOriginalLineNumber(ue)}:null}getDiffLineInformationForModified(ue){return this._diffComputationResult?{equivalentLineNumber:this._getEquivalentLineForModifiedLineNumber(ue)}:null}};de.ONE_OVERVIEW_WIDTH=15,de.ENTIRE_DIFF_OVERVIEW_WIDTH=30,de.UPDATE_DIFF_DECORATIONS_DELAY=200,de=ke([fe(3,D.IClipboardService),fe(4,f.IEditorWorkerService),fe(5,S.IContextKeyService),fe(6,y.IInstantiationService),fe(7,i.ICodeEditorService),fe(8,R.IThemeService),fe(9,N.INotificationService),fe(10,F.IContextMenuService),fe(11,B.IEditorProgressService)],de),e.DiffEditorWidget=de;class x extends u.Disposable{constructor(ue){super();this._dataSource=ue,this._insertColor=null,this._removeColor=null}applyColors(ue){const le=ue.getColor(T.diffOverviewRulerInserted)||(ue.getColor(T.diffInserted)||T.defaultInsertColor).transparent(2),ge=ue.getColor(T.diffOverviewRulerRemoved)||(ue.getColor(T.diffRemoved)||T.defaultRemoveColor).transparent(2),_e=!le.equals(this._insertColor)||!ge.equals(this._removeColor);return this._insertColor=le,this._removeColor=ge,_e}getEditorsDiffDecorations(ue,le,ge,_e,we,Ie){Ie=Ie.sort((ve,ye)=>ve.afterLineNumber-ye.afterLineNumber),we=we.sort((ve,ye)=>ve.afterLineNumber-ye.afterLineNumber);const Me=this._getViewZones(ue,we,Ie,ge),Oe=this._getOriginalEditorDecorations(Me,ue,le,ge),be=this._getModifiedEditorDecorations(Me,ue,le,ge,_e);return{original:{decorations:Oe.decorations,overviewZones:Oe.overviewZones,zones:Me.original},modified:{decorations:be.decorations,overviewZones:be.overviewZones,zones:Me.modified}}}}class oe{constructor(ue){this._source=ue,this._index=-1,this.current=null,this.advance()}advance(){this._index++,this._indexFe.afterLineNumber-He.afterLineNumber,Ze=(Fe,He)=>{if(He.domNode===null&&Fe.length>0){const Ve=Fe[Fe.length-1];if(Ve.afterLineNumber===He.afterLineNumber&&Ve.domNode===null){Ve.heightInLines+=He.heightInLines;return}}Fe.push(He)},nt=new oe(this._modifiedForeignVZ),ot=new oe(this._originalForeignVZ);let ze=1,Ne=1;for(let Fe=0,He=this._lineChanges.length;Fe<=He;Fe++){const Ve=Fe0?-1:0),Te=Ve.modifiedStartLineNumber+(Ve.modifiedEndLineNumber>0?-1:0),ye=Ve.originalEndLineNumber>0?Q._getViewLineCount(this._originalEditor,Ve.originalStartLineNumber,Ve.originalEndLineNumber):0,ve=Ve.modifiedEndLineNumber>0?Q._getViewLineCount(this._modifiedEditor,Ve.modifiedStartLineNumber,Ve.modifiedEndLineNumber):0,Be=Math.max(Ve.originalStartLineNumber,Ve.originalEndLineNumber),xe=Math.max(Ve.modifiedStartLineNumber,Ve.modifiedEndLineNumber)):(Re+=1e7+ye,Te+=1e7+ve,Be=Re,xe=Te);let et=[],Qe=[];if(we){let $e;Ve?Ve.originalEndLineNumber>0?$e=Ve.originalStartLineNumber-ze:$e=Ve.modifiedStartLineNumber-Ne:$e=Ie.getLineCount()-ze+1;for(let Ke=0;Ke<$e;Ke++){const Pe=ze+Ke,We=Ne+Ke,Ue=Me.getModelLineViewLineCount(Pe),je=Oe.getModelLineViewLineCount(We);Ueje&&Qe.push({afterLineNumber:We,heightInLines:Ue-je,domNode:null,marginDomNode:null})}Ve&&(ze=(Ve.originalEndLineNumber>0?Ve.originalEndLineNumber:Ve.originalStartLineNumber)+1,Ne=(Ve.modifiedEndLineNumber>0?Ve.modifiedEndLineNumber:Ve.modifiedStartLineNumber)+1)}for(;nt.current&&nt.current.afterLineNumber<=xe;){let $e;nt.current.afterLineNumber<=Te?$e=Re-Te+nt.current.afterLineNumber:$e=Be;let Ke=null;Ve&&Ve.modifiedStartLineNumber<=nt.current.afterLineNumber&&nt.current.afterLineNumber<=Ve.modifiedEndLineNumber&&(Ke=this._createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion()),et.push({afterLineNumber:$e,heightInLines:nt.current.height/le,domNode:null,marginDomNode:Ke}),nt.advance()}for(;ot.current&&ot.current.afterLineNumber<=Be;){let $e;ot.current.afterLineNumber<=Re?$e=Te-Re+ot.current.afterLineNumber:$e=xe,Qe.push({afterLineNumber:$e,heightInLines:ot.current.height/ue,domNode:null}),ot.advance()}if(Ve!==null&&ce(Ve)){const $e=this._produceOriginalFromDiff(Ve,ye,ve);$e&&et.push($e)}if(Ve!==null&&se(Ve)){const $e=this._produceModifiedFromDiff(Ve,ye,ve);$e&&Qe.push($e)}let Ye=0,tt=0;for(et=et.sort(qe),Qe=Qe.sort(qe);Ye=Ke.heightInLines?($e.heightInLines-=Ke.heightInLines,tt++):(Ke.heightInLines-=$e.heightInLines,Ye++)}for(;Ye(le.domNode||(le.domNode=Ce()),le))}}function K(pe,ue,le,ge,_e){return{range:new a.Range(pe,ue,le,ge),options:_e}}const ne={arrowRevertChange:c.ModelDecorationOptions.register({description:"diff-editor-arrow-revert-change",glyphMarginClassName:"arrow-revert-change "+R.ThemeIcon.asClassName(V.Codicon.arrowRight)}),charDelete:c.ModelDecorationOptions.register({description:"diff-editor-char-delete",className:"char-delete"}),charDeleteWholeLine:c.ModelDecorationOptions.register({description:"diff-editor-char-delete-whole-line",className:"char-delete",isWholeLine:!0}),charInsert:c.ModelDecorationOptions.register({description:"diff-editor-char-insert",className:"char-insert"}),charInsertWholeLine:c.ModelDecorationOptions.register({description:"diff-editor-char-insert-whole-line",className:"char-insert",isWholeLine:!0}),lineInsert:c.ModelDecorationOptions.register({description:"diff-editor-line-insert",className:"line-insert",marginClassName:"gutter-insert",isWholeLine:!0}),lineInsertWithSign:c.ModelDecorationOptions.register({description:"diff-editor-line-insert-with-sign",className:"line-insert",linesDecorationsClassName:"insert-sign "+R.ThemeIcon.asClassName(ie),marginClassName:"gutter-insert",isWholeLine:!0}),lineDelete:c.ModelDecorationOptions.register({description:"diff-editor-line-delete",className:"line-delete",marginClassName:"gutter-delete",isWholeLine:!0}),lineDeleteWithSign:c.ModelDecorationOptions.register({description:"diff-editor-line-delete-with-sign",className:"line-delete",linesDecorationsClassName:"delete-sign "+R.ThemeIcon.asClassName(Y),marginClassName:"gutter-delete",isWholeLine:!0}),lineDeleteMargin:c.ModelDecorationOptions.register({description:"diff-editor-line-delete-margin",marginClassName:"gutter-delete"})};class z extends x{constructor(ue,le){super(ue);this._disableSash=le===!1,this._sashRatio=null,this._sashPosition=null,this._startSashPosition=null,this._sash=this._register(new L.Sash(this._dataSource.getContainerDomNode(),this,{orientation:0})),this._disableSash&&(this._sash.state=0),this._sash.onDidStart(()=>this._onSashDragStart()),this._sash.onDidChange(ge=>this._onSashDrag(ge)),this._sash.onDidEnd(()=>this._onSashDragEnd()),this._sash.onDidReset(()=>this._onSashReset())}setEnableSplitViewResizing(ue){const le=ue===!1;this._disableSash!==le&&(this._disableSash=le,this._sash.state=this._disableSash?0:3)}layout(ue=this._sashRatio){const ge=this._dataSource.getWidth()-(this._dataSource.getOptions().renderOverviewRuler?de.ENTIRE_DIFF_OVERVIEW_WIDTH:0);let _e=Math.floor((ue||.5)*ge);const we=Math.floor(.5*ge);return _e=this._disableSash?we:_e||we,ge>z.MINIMUM_EDITOR_WIDTH*2?(_ege-z.MINIMUM_EDITOR_WIDTH&&(_e=ge-z.MINIMUM_EDITOR_WIDTH)):_e=we,this._sashPosition!==_e&&(this._sashPosition=_e),this._sash.layout(),this._sashPosition}_onSashDragStart(){this._startSashPosition=this._sashPosition}_onSashDrag(ue){const ge=this._dataSource.getWidth()-(this._dataSource.getOptions().renderOverviewRuler?de.ENTIRE_DIFF_OVERVIEW_WIDTH:0),_e=this.layout((this._startSashPosition+(ue.currentX-ue.startX))/ge);this._sashRatio=_e/ge,this._dataSource.relayoutEditors()}_onSashDragEnd(){this._sash.layout()}_onSashReset(){this._sashRatio=.5,this._dataSource.relayoutEditors(),this._sash.layout()}getVerticalSashTop(ue){return 0}getVerticalSashLeft(ue){return this._sashPosition}getVerticalSashHeight(ue){return this._dataSource.getHeight()}_getViewZones(ue,le,ge){const _e=this._dataSource.getOriginalEditor(),we=this._dataSource.getModifiedEditor();return new J(ue,le,ge,_e,we).getViewZones()}_getOriginalEditorDecorations(ue,le,ge,_e){const we=this._dataSource.getOriginalEditor(),Ie=String(this._removeColor),Me={decorations:[],overviewZones:[]},Oe=we.getModel(),be=we._getViewModel();for(const ve of le)if(se(ve)){Me.decorations.push({range:new a.Range(ve.originalStartLineNumber,1,ve.originalEndLineNumber,1073741824),options:_e?ne.lineDeleteWithSign:ne.lineDelete}),(!ce(ve)||!ve.charChanges)&&Me.decorations.push(K(ve.originalStartLineNumber,1,ve.originalEndLineNumber,1073741824,ne.charDeleteWholeLine));const ye=Ee(Oe,be,ve.originalStartLineNumber,ve.originalEndLineNumber);if(Me.overviewZones.push(new p.OverviewRulerZone(ye.startLineNumber,ye.endLineNumber,0,Ie)),ve.charChanges){for(const Re of ve.charChanges)if(me(Re))if(ge)for(let Te=Re.originalStartLineNumber;Te<=Re.originalEndLineNumber;Te++){let Be,xe;Te===Re.originalStartLineNumber?Be=Re.originalStartColumn:Be=Oe.getLineFirstNonWhitespaceColumn(Te),Te===Re.originalEndLineNumber?xe=Re.originalEndColumn:xe=Oe.getLineLastNonWhitespaceColumn(Te),Me.decorations.push(K(Te,Be,Te,xe,ne.charDelete))}else Me.decorations.push(K(Re.originalStartLineNumber,Re.originalStartColumn,Re.originalEndLineNumber,Re.originalEndColumn,ne.charDelete))}}return Me}_getModifiedEditorDecorations(ue,le,ge,_e,we){const Ie=this._dataSource.getModifiedEditor(),Me=String(this._insertColor),Oe={decorations:[],overviewZones:[]},be=Ie.getModel(),ve=Ie._getViewModel();for(const ye of le){if(we)if(ye.modifiedEndLineNumber>0)Oe.decorations.push({range:new a.Range(ye.modifiedStartLineNumber,1,ye.modifiedStartLineNumber,1),options:ne.arrowRevertChange});else{const Re=ue.modified.find(Te=>Te.afterLineNumber===ye.modifiedStartLineNumber);Re&&(Re.marginDomNode=Le())}if(ce(ye)){Oe.decorations.push({range:new a.Range(ye.modifiedStartLineNumber,1,ye.modifiedEndLineNumber,1073741824),options:_e?ne.lineInsertWithSign:ne.lineInsert}),(!se(ye)||!ye.charChanges)&&Oe.decorations.push(K(ye.modifiedStartLineNumber,1,ye.modifiedEndLineNumber,1073741824,ne.charInsertWholeLine));const Re=Ee(be,ve,ye.modifiedStartLineNumber,ye.modifiedEndLineNumber);if(Oe.overviewZones.push(new p.OverviewRulerZone(Re.startLineNumber,Re.endLineNumber,0,Me)),ye.charChanges){for(const Te of ye.charChanges)if(he(Te))if(ge)for(let Be=Te.modifiedStartLineNumber;Be<=Te.modifiedEndLineNumber;Be++){let xe,qe;Be===Te.modifiedStartLineNumber?xe=Te.modifiedStartColumn:xe=be.getLineFirstNonWhitespaceColumn(Be),Be===Te.modifiedEndLineNumber?qe=Te.modifiedEndColumn:qe=be.getLineLastNonWhitespaceColumn(Be),Oe.decorations.push(K(Be,xe,Be,qe,ne.charInsert))}else Oe.decorations.push(K(Te.modifiedStartLineNumber,Te.modifiedStartColumn,Te.modifiedEndLineNumber,Te.modifiedEndColumn,ne.charInsert))}}}return Oe}}z.MINIMUM_EDITOR_WIDTH=100;class J extends Q{constructor(ue,le,ge,_e,we){super(ue,le,ge,_e,we)}_createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion(){return null}_produceOriginalFromDiff(ue,le,ge){return ge>le?{afterLineNumber:Math.max(ue.originalStartLineNumber,ue.originalEndLineNumber),heightInLines:ge-le,domNode:null}:null}_produceModifiedFromDiff(ue,le,ge){return le>ge?{afterLineNumber:Math.max(ue.modifiedStartLineNumber,ue.modifiedEndLineNumber),heightInLines:le-ge,domNode:null}:null}}class G extends x{constructor(ue,le){super(ue);this._decorationsLeft=ue.getOriginalEditor().getLayoutInfo().decorationsLeft,this._register(ue.getOriginalEditor().onDidLayoutChange(ge=>{this._decorationsLeft!==ge.decorationsLeft&&(this._decorationsLeft=ge.decorationsLeft,ue.relayoutEditors())}))}setEnableSplitViewResizing(ue){}_getViewZones(ue,le,ge,_e){const we=this._dataSource.getOriginalEditor(),Ie=this._dataSource.getModifiedEditor();return new U(ue,le,ge,we,Ie,_e).getViewZones()}_getOriginalEditorDecorations(ue,le,ge,_e){const we=String(this._removeColor),Ie={decorations:[],overviewZones:[]},Me=this._dataSource.getOriginalEditor(),Oe=Me.getModel(),be=Me._getViewModel();let ve=0;for(const ye of le)if(se(ye)){for(Ie.decorations.push({range:new a.Range(ye.originalStartLineNumber,1,ye.originalEndLineNumber,1073741824),options:ne.lineDeleteMargin});ve=ye.originalStartLineNumber)break;ve++}let Re=0;if(ve0,Qe=(0,r.createStringBuilder)(1e4);let Ye=0,tt=0,$e=null;for(let We=ze.originalStartLineNumber;We<=ze.originalEndLineNumber;We++){const Ue=We-ze.originalStartLineNumber,je=this._originalModel.tokenization.getLineTokens(We),it=je.getLineContent(),Ge=Ze[nt++],Xe=_.LineDecoration.filter(Ve,We,1,it.length+1);if(Ge){let st=0;for(const ct of Ge.breakOffsets){const ht=je.sliceAndInflate(st,ct,0),dt=it.substring(st,ct);Ye=Math.max(Ye,this._renderOriginalLine(tt++,dt,ht,_.LineDecoration.extractWrapped(Xe,st,ct),et,Oe,be,_e,we,ve,Re,Te,Be,xe,qe,ge,Qe,He)),st=ct}for($e||($e=[]);$e.lengthot.afterLineNumber-ze.afterLineNumber)}_renderOriginalLine(ue,le,ge,_e,we,Ie,Me,Oe,be,ve,ye,Re,Te,Be,xe,qe,Ze,nt){Ze.appendASCIIString('
');const ot=h.ViewLineRenderingData.isBasicASCII(le,Ie),ze=h.ViewLineRenderingData.containsRTL(le,ot,Me),Ne=(0,m.renderViewLine)(new m.RenderLineInput(Oe.isMonospace&&!be,Oe.canUseHalfwidthRightwardsArrow,le,!1,ot,ze,0,ge,_e,qe,0,Oe.spaceWidth,Oe.middotWidth,Oe.wsmiddotWidth,Re,Te,Be,xe!==d.EditorFontLigatures.OFF,null),Ze);if(Ze.appendASCIIString("
"),this._renderIndicators){const Fe=document.createElement("div");Fe.className=`delete-sign ${R.ThemeIcon.asClassName(Y)}`,Fe.setAttribute("style",`position:absolute;top:${ue*ve}px;width:${ye}px;height:${ve}px;right:0;`),nt.appendChild(Fe)}return Ne.characterMapping.getHorizontalOffset(Ne.characterMapping.length)}}function j(pe,ue){return(0,d.stringSet)(pe,ue,["off","on","inherit"])}function ce(pe){return pe.modifiedEndLineNumber>0}function se(pe){return pe.originalEndLineNumber>0}function he(pe){return pe.modifiedStartLineNumber===pe.modifiedEndLineNumber?pe.modifiedEndColumn-pe.modifiedStartColumn>0:pe.modifiedEndLineNumber-pe.modifiedStartLineNumber>0}function me(pe){return pe.originalStartLineNumber===pe.originalEndLineNumber?pe.originalEndColumn-pe.originalStartColumn>0:pe.originalEndLineNumber-pe.originalStartLineNumber>0}function Ce(){const pe=document.createElement("div");return pe.className="diagonal-fill",pe}function Le(){const pe=document.createElement("div");return pe.className="arrow-revert-change "+R.ThemeIcon.asClassName(V.Codicon.arrowRight),C.$("div",{},pe)}function Ee(pe,ue,le,ge){const _e=pe.getLineCount();return le=Math.min(_e,Math.max(1,le)),ge=Math.min(_e,Math.max(1,ge)),ue.coordinatesConverter.convertModelRangeToViewRange(new a.Range(le,pe.getLineMinColumn(le),ge,pe.getLineMaxColumn(ge)))}function De(pe,ue){return{enableSplitViewResizing:(0,d.boolean)(pe.enableSplitViewResizing,ue.enableSplitViewResizing),renderSideBySide:(0,d.boolean)(pe.renderSideBySide,ue.renderSideBySide),renderMarginRevertIcon:(0,d.boolean)(pe.renderMarginRevertIcon,ue.renderMarginRevertIcon),maxComputationTime:(0,d.clampedInt)(pe.maxComputationTime,ue.maxComputationTime,0,1073741824),maxFileSize:(0,d.clampedInt)(pe.maxFileSize,ue.maxFileSize,0,1073741824),ignoreTrimWhitespace:(0,d.boolean)(pe.ignoreTrimWhitespace,ue.ignoreTrimWhitespace),renderIndicators:(0,d.boolean)(pe.renderIndicators,ue.renderIndicators),originalEditable:(0,d.boolean)(pe.originalEditable,ue.originalEditable),diffCodeLens:(0,d.boolean)(pe.diffCodeLens,ue.diffCodeLens),renderOverviewRuler:(0,d.boolean)(pe.renderOverviewRuler,ue.renderOverviewRuler),diffWordWrap:j(pe.diffWordWrap,ue.diffWordWrap)}}function Ae(pe,ue){return{enableSplitViewResizing:pe.enableSplitViewResizing!==ue.enableSplitViewResizing,renderSideBySide:pe.renderSideBySide!==ue.renderSideBySide,renderMarginRevertIcon:pe.renderMarginRevertIcon!==ue.renderMarginRevertIcon,maxComputationTime:pe.maxComputationTime!==ue.maxComputationTime,maxFileSize:pe.maxFileSize!==ue.maxFileSize,ignoreTrimWhitespace:pe.ignoreTrimWhitespace!==ue.ignoreTrimWhitespace,renderIndicators:pe.renderIndicators!==ue.renderIndicators,originalEditable:pe.originalEditable!==ue.originalEditable,diffCodeLens:pe.diffCodeLens!==ue.diffCodeLens,renderOverviewRuler:pe.renderOverviewRuler!==ue.renderOverviewRuler,diffWordWrap:pe.diffWordWrap!==ue.diffWordWrap}}(0,R.registerThemingParticipant)((pe,ue)=>{const le=pe.getColor(T.diffInserted);le&&ue.addRule(`.monaco-editor .char-insert, .monaco-diff-editor .char-insert { background-color: ${le}; }`);const ge=pe.getColor(T.diffInsertedLine)||le;ge&&ue.addRule(`.monaco-editor .line-insert, .monaco-diff-editor .line-insert { background-color: ${ge}; }`);const _e=pe.getColor(T.diffInsertedLineGutter)||ge;_e&&(ue.addRule(`.monaco-editor .inline-added-margin-view-zone { background-color: ${_e}; }`),ue.addRule(`.monaco-editor .gutter-insert, .monaco-diff-editor .gutter-insert { background-color: ${_e}; }`));const we=pe.getColor(T.diffRemoved);we&&ue.addRule(`.monaco-editor .char-delete, .monaco-diff-editor .char-delete { background-color: ${we}; }`);const Ie=pe.getColor(T.diffRemovedLine)||we;Ie&&ue.addRule(`.monaco-editor .line-delete, .monaco-diff-editor .line-delete { background-color: ${Ie}; }`);const Me=pe.getColor(T.diffRemovedLineGutter)||Ie;Me&&(ue.addRule(`.monaco-editor .inline-deleted-margin-view-zone { background-color: ${Me}; }`),ue.addRule(`.monaco-editor .gutter-delete, .monaco-diff-editor .gutter-delete { background-color: ${Me}; }`));const Oe=pe.getColor(T.diffInsertedOutline);Oe&&ue.addRule(`.monaco-editor .line-insert, .monaco-editor .char-insert { border: 1px ${(0,ee.isHighContrast)(pe.type)?"dashed":"solid"} ${Oe}; }`);const be=pe.getColor(T.diffRemovedOutline);be&&ue.addRule(`.monaco-editor .line-delete, .monaco-editor .char-delete { border: 1px ${(0,ee.isHighContrast)(pe.type)?"dashed":"solid"} ${be}; }`);const ve=pe.getColor(T.scrollbarShadow);ve&&ue.addRule(`.monaco-diff-editor.side-by-side .editor.modified { box-shadow: -6px 0 5px -5px ${ve}; }`);const ye=pe.getColor(T.diffBorder);ye&&ue.addRule(`.monaco-diff-editor.side-by-side .editor.modified { border-left: 1px solid ${ye}; }`);const Re=pe.getColor(T.scrollbarSliderBackground);Re&&ue.addRule(` .monaco-diff-editor .diffViewport { - background: ${Re}; } `);const Te=pe.getColor(T.scrollbarSliderHoverBackground);Te&&ue.addRule(` .monaco-diff-editor .diffViewport:hover {