(window.webpackJsonp=window.webpackJsonp||[]).push([[29],{"+3Gp":function(ft,w,e){"use strict";e.d(w,"a",function(){return I}),e.d(w,"b",function(){return O});var h=e("MNsG"),P=e("Yr1X");const L=h.f?1.5:1.35,A=8;class I{constructor(S){this._bareFontInfoBrand=void 0,this.zoomLevel=S.zoomLevel,this.pixelRatio=S.pixelRatio,this.fontFamily=String(S.fontFamily),this.fontWeight=String(S.fontWeight),this.fontSize=S.fontSize,this.fontFeatureSettings=S.fontFeatureSettings,this.lineHeight=S.lineHeight|0,this.letterSpacing=S.letterSpacing}static createFromValidatedSettings(S,f,u,d){const E=S.get(42),p=S.get(46),n=S.get(45),b=S.get(44),m=S.get(58),c=S.get(55);return I._create(E,p,n,b,m,c,f,u,d)}static _create(S,f,u,d,E,p,n,b,m){E===0?E=L*u:Econsole.error(`Conflict in default settings: ${m}`))}return E}},"+Fos":function(ft,w,e){"use strict";e.d(w,"a",function(){return O});var h=e("Ll0s"),P=e("cGHE"),L=e("aokT"),A=e("N0LK"),I=e("cIqD");class k{constructor(S,f,u){this._cursorPositionBrand=void 0,this.lineNumber=S,this.column=f,this.leftoverVisibleColumns=u}}class O{static leftPosition(S,f){if(f.column>S.getLineMinColumn(f.lineNumber))return f.delta(void 0,-A.L(S.getLineContent(f.lineNumber),f.column-1));if(f.lineNumber>1){const u=f.lineNumber-1;return new P.a(u,S.getLineMaxColumn(u))}else return f}static leftPositionAtomicSoftTabs(S,f,u){if(f.column<=S.getLineIndentColumn(f.lineNumber)){const d=S.getLineMinColumn(f.lineNumber),E=S.getLineContent(f.lineNumber),p=I.a.atomicPosition(E,f.column-1,u,0);if(p!==-1&&p+1>=d)return new P.a(f.lineNumber,p+1)}return this.leftPosition(S,f)}static left(S,f,u){const d=S.stickyTabStops?O.leftPositionAtomicSoftTabs(f,u,S.tabSize):O.leftPosition(f,u);return new k(d.lineNumber,d.column,0)}static moveLeft(S,f,u,d,E){let p,n;if(u.hasSelection()&&!d)p=u.selection.startLineNumber,n=u.selection.startColumn;else{const b=u.position.delta(void 0,-(E-1)),m=f.normalizePosition(O.clipPositionColumn(b,f),0),c=O.left(S,f,m);p=c.lineNumber,n=c.column}return u.move(d,p,n,0)}static clipPositionColumn(S,f){return new P.a(S.lineNumber,O.clipRange(S.column,f.getLineMinColumn(S.lineNumber),f.getLineMaxColumn(S.lineNumber)))}static clipRange(S,f,u){return Su?u:S}static rightPosition(S,f,u){return um?(u=m,n?d=f.getLineMaxColumn(u):d=Math.min(f.getLineMaxColumn(u),d)):d=h.a.columnFromVisibleColumn2(S,f,u,b),g?E=0:E=b-h.a.visibleColumnFromColumn(f.getLineContent(u),d,S.tabSize),new k(u,d,E)}static down(S,f,u,d,E,p,n){return this.vertical(S,f,u,d,E,u+p,n)}static moveDown(S,f,u,d,E){let p,n;u.hasSelection()&&!d?(p=u.selection.endLineNumber,n=u.selection.endColumn):(p=u.position.lineNumber,n=u.position.column);let b=O.down(S,f,p,n,u.leftoverVisibleColumns,E,!0);return u.move(d,b.lineNumber,b.column,b.leftoverVisibleColumns)}static translateDown(S,f,u){let d=u.selection,E=O.down(S,f,d.selectionStartLineNumber,d.selectionStartColumn,u.selectionStartLeftoverVisibleColumns,1,!1),p=O.down(S,f,d.positionLineNumber,d.positionColumn,u.leftoverVisibleColumns,1,!1);return new h.f(new L.a(E.lineNumber,E.column,E.lineNumber,E.column),E.leftoverVisibleColumns,new P.a(p.lineNumber,p.column),p.leftoverVisibleColumns)}static up(S,f,u,d,E,p,n){return this.vertical(S,f,u,d,E,u-p,n)}static moveUp(S,f,u,d,E){let p,n;u.hasSelection()&&!d?(p=u.selection.startLineNumber,n=u.selection.startColumn):(p=u.position.lineNumber,n=u.position.column);let b=O.up(S,f,p,n,u.leftoverVisibleColumns,E,!0);return u.move(d,b.lineNumber,b.column,b.leftoverVisibleColumns)}static translateUp(S,f,u){let d=u.selection,E=O.up(S,f,d.selectionStartLineNumber,d.selectionStartColumn,u.selectionStartLeftoverVisibleColumns,1,!1),p=O.up(S,f,d.positionLineNumber,d.positionColumn,u.leftoverVisibleColumns,1,!1);return new h.f(new L.a(E.lineNumber,E.column,E.lineNumber,E.column),E.leftoverVisibleColumns,new P.a(p.lineNumber,p.column),p.leftoverVisibleColumns)}static _isBlankLine(S,f){return S.getLineFirstNonWhitespaceColumn(f)===0}static moveToPrevBlankLine(S,f,u,d){let E=u.position.lineNumber;for(;E>1&&this._isBlankLine(f,E);)E--;for(;E>1&&!this._isBlankLine(f,E);)E--;return u.move(d,E,f.getLineMinColumn(E),0)}static moveToNextBlankLine(S,f,u,d){const E=f.getLineCount();let p=u.position.lineNumber;for(;pthis.selection.endLineNumber){this.targetSelection=new O.a(this.targetPosition.lineNumber-this.selection.endLineNumber+this.selection.startLineNumber,this.targetPosition.column,this.targetPosition.lineNumber,this.selection.startLineNumber===this.selection.endLineNumber?this.targetPosition.column+this.selection.endColumn-this.selection.startColumn:this.selection.endColumn);return}if(this.targetPosition.lineNumberthis._onEditorMouseDown(p))),this._register(this._editor.onMouseUp(p=>this._onEditorMouseUp(p))),this._register(this._editor.onMouseDrag(p=>this._onEditorMouseDrag(p))),this._register(this._editor.onMouseDrop(p=>this._onEditorMouseDrop(p))),this._register(this._editor.onMouseDropCanceled(()=>this._onEditorMouseDropCanceled())),this._register(this._editor.onKeyDown(p=>this.onEditorKeyDown(p))),this._register(this._editor.onKeyUp(p=>this.onEditorKeyUp(p))),this._register(this._editor.onDidBlurEditorWidget(()=>this.onEditorBlur())),this._register(this._editor.onDidBlurEditorText(()=>this.onEditorBlur())),this._dndDecorationIds=[],this._mouseDown=!1,this._modifierPressed=!1,this._dragSelection=null}onEditorBlur(){this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1,this._modifierPressed=!1}onEditorKeyDown(E){if(!this._editor.getOption(31)||this._editor.getOption(18))return;u(E)&&(this._modifierPressed=!0),this._mouseDown&&u(E)&&this._editor.updateOptions({mouseStyle:"copy"})}onEditorKeyUp(E){if(!this._editor.getOption(31)||this._editor.getOption(18))return;u(E)&&(this._modifierPressed=!1),this._mouseDown&&E.keyCode===d.TRIGGER_KEY_VALUE&&this._editor.updateOptions({mouseStyle:"default"})}_onEditorMouseDown(E){this._mouseDown=!0}_onEditorMouseUp(E){this._mouseDown=!1,this._editor.updateOptions({mouseStyle:"text"})}_onEditorMouseDrag(E){let p=E.target;if(this._dragSelection===null){const n=this._editor.getSelections()||[];let b=n.filter(m=>p.position&&m.containsPosition(p.position));if(b.length===1)this._dragSelection=b[0];else return}u(E.event)?this._editor.updateOptions({mouseStyle:"copy"}):this._editor.updateOptions({mouseStyle:"default"}),p.position&&(this._dragSelection.containsPosition(p.position)?this._removeDecoration():this.showAt(p.position))}_onEditorMouseDropCanceled(){this._editor.updateOptions({mouseStyle:"text"}),this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1}_onEditorMouseDrop(E){if(E.target&&(this._hitContent(E.target)||this._hitMargin(E.target))&&E.target.position){let p=new I.a(E.target.position.lineNumber,E.target.position.column);if(this._dragSelection===null){let n=null;if(E.event.shiftKey){let b=this._editor.getSelection();if(b){const{selectionStartLineNumber:m,selectionStartColumn:c}=b;n=[new O.a(m,c,p.lineNumber,p.column)]}}else n=(this._editor.getSelections()||[]).map(b=>b.containsPosition(p)?new O.a(p.lineNumber,p.column,p.lineNumber,p.column):b);this._editor.setSelections(n||[],"mouse",3)}else(!this._dragSelection.containsPosition(p)||(u(E.event)||this._modifierPressed)&&(this._dragSelection.getEndPosition().equals(p)||this._dragSelection.getStartPosition().equals(p)))&&(this._editor.pushUndoStop(),this._editor.executeCommand(d.ID,new f(this._dragSelection,p,u(E.event)||this._modifierPressed)),this._editor.pushUndoStop())}this._editor.updateOptions({mouseStyle:"text"}),this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1}showAt(E){let p=[{range:new k.a(E.lineNumber,E.column,E.lineNumber,E.column),options:d._DECORATION_OPTIONS}];this._dndDecorationIds=this._editor.deltaDecorations(this._dndDecorationIds,p),this._editor.revealPosition(E,1)}_removeDecoration(){this._dndDecorationIds=this._editor.deltaDecorations(this._dndDecorationIds,[])}_hitContent(E){return E.type===6||E.type===7}_hitMargin(E){return E.type===2||E.type===3||E.type===4}dispose(){this._removeDecoration(),this._dragSelection=null,this._mouseDown=!1,this._modifierPressed=!1,super.dispose()}}d.ID="editor.contrib.dragAndDrop",d.TRIGGER_KEY_VALUE=P.f?6:5,d._DECORATION_OPTIONS=S.b.register({description:"dnd-target",className:"dnd-target"}),Object(A.l)(d.ID,d)},"/UlZ":function(ft,w,e){"use strict";e.d(w,"h",function(){return A}),e.d(w,"b",function(){return I}),e.d(w,"j",function(){return k}),e.d(w,"a",function(){return O}),e.d(w,"k",function(){return d}),e.d(w,"l",function(){return p}),e.d(w,"o",function(){return c}),e.d(w,"i",function(){return j}),e.d(w,"e",function(){return Y}),e.d(w,"f",function(){return q}),e.d(w,"n",function(){return oe}),e.d(w,"c",function(){return wt}),e.d(w,"d",function(){return Pt}),e.d(w,"m",function(){return no}),e.d(w,"g",function(){return lt});var h=e("3/fG"),P=e("MNsG"),L=e("0JNc");const A=8;class I{constructor(le){this._values=le}hasChanged(le){return this._values[le]}}class k{constructor(){this._values=[]}_read(le){return this._values[le]}get(le){return this._values[le]}_write(le,Pe){this._values[le]=Pe}}class O{constructor(){this.stableMinimapLayoutInput=null,this.stableFitMaxMinimapScale=0,this.stableFitRemainingWidth=0}}class S{constructor(le,Pe,it,Dt){this.id=le,this.name=Pe,this.defaultValue=it,this.schema=Dt}compute(le,Pe,it){return it}}class f{constructor(le,Pe=null){this.schema=void 0,this.id=le,this.name="_never_",this.defaultValue=void 0,this.deps=Pe}validate(le){return this.defaultValue}}class u{constructor(le,Pe,it,Dt){this.id=le,this.name=Pe,this.defaultValue=it,this.schema=Dt}validate(le){return typeof le=="undefined"?this.defaultValue:le}compute(le,Pe,it){return it}}function d(le,Pe){return typeof le=="undefined"?Pe:le==="false"?!1:Boolean(le)}class E extends u{constructor(le,Pe,it,Dt=void 0){typeof Dt!="undefined"&&(Dt.type="boolean",Dt.default=it),super(le,Pe,it,Dt)}validate(le){return d(le,this.defaultValue)}}function p(le,Pe,it,Dt){if(typeof le=="undefined")return Pe;let kt=parseInt(le,10);return isNaN(kt)?Pe:(kt=Math.max(it,kt),kt=Math.min(Dt,kt),kt|0)}class n extends u{constructor(le,Pe,it,Dt,kt,eo=void 0){typeof eo!="undefined"&&(eo.type="integer",eo.default=it,eo.minimum=Dt,eo.maximum=kt),super(le,Pe,it,eo),this.minimum=Dt,this.maximum=kt}static clampedInt(le,Pe,it,Dt){return p(le,Pe,it,Dt)}validate(le){return n.clampedInt(le,this.defaultValue,this.minimum,this.maximum)}}class b extends u{constructor(le,Pe,it,Dt,kt){typeof kt!="undefined"&&(kt.type="number",kt.default=it),super(le,Pe,it,kt),this.validationFn=Dt}static clamp(le,Pe,it){return leit?it:le}static float(le,Pe){if(typeof le=="number")return le;if(typeof le=="undefined")return Pe;const it=parseFloat(le);return isNaN(it)?Pe:it}validate(le){return this.validationFn(b.float(le,this.defaultValue))}}class m extends u{static string(le,Pe){return typeof le!="string"?Pe:le}constructor(le,Pe,it,Dt=void 0){typeof Dt!="undefined"&&(Dt.type="string",Dt.default=it),super(le,Pe,it,Dt)}validate(le){return m.string(le,this.defaultValue)}}function c(le,Pe,it){return typeof le!="string"||it.indexOf(le)===-1?Pe:le}class l extends u{constructor(le,Pe,it,Dt,kt=void 0){typeof kt!="undefined"&&(kt.type="string",kt.enum=Dt,kt.default=it),super(le,Pe,it,kt),this._allowedValues=Dt}validate(le){return c(le,this.defaultValue,this._allowedValues)}}class g extends S{constructor(le,Pe,it,Dt,kt,eo,bo=void 0){typeof bo!="undefined"&&(bo.type="string",bo.enum=kt,bo.default=Dt),super(le,Pe,it,bo),this._allowedValues=kt,this._convert=eo}validate(le){return typeof le!="string"?this.defaultValue:this._allowedValues.indexOf(le)===-1?this.defaultValue:this._convert(le)}}function y(le){switch(le){case"none":return 0;case"keep":return 1;case"brackets":return 2;case"advanced":return 3;case"full":return 4}}class C extends S{constructor(){super(2,"accessibilitySupport",0,{type:"string",enum:["auto","on","off"],enumDescriptions:[h.a("accessibilitySupport.auto","The editor will use platform APIs to detect when a Screen Reader is attached."),h.a("accessibilitySupport.on","The editor will be permanently optimized for usage with a Screen Reader. Word wrapping will be disabled."),h.a("accessibilitySupport.off","The editor will never be optimized for usage with a Screen Reader.")],default:"auto",description:h.a("accessibilitySupport","Controls whether the editor should run in a mode where it is optimized for screen readers. Setting to on will disable word wrapping.")})}validate(le){switch(le){case"auto":return 0;case"off":return 1;case"on":return 2}return this.defaultValue}compute(le,Pe,it){return it===0?le.accessibilitySupport:it}}class v extends S{constructor(){const le={insertSpace:!0,ignoreEmptyLines:!0};super(19,"comments",le,{"editor.comments.insertSpace":{type:"boolean",default:le.insertSpace,description:h.a("comments.insertSpace","Controls whether a space character is inserted when commenting.")},"editor.comments.ignoreEmptyLines":{type:"boolean",default:le.ignoreEmptyLines,description:h.a("comments.ignoreEmptyLines","Controls if empty lines should be ignored with toggle, add or remove actions for line comments.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{insertSpace:d(Pe.insertSpace,this.defaultValue.insertSpace),ignoreEmptyLines:d(Pe.ignoreEmptyLines,this.defaultValue.ignoreEmptyLines)}}}function D(le){switch(le){case"blink":return 1;case"smooth":return 2;case"phase":return 3;case"expand":return 4;case"solid":return 5}}var j;(function(le){le[le.Line=1]="Line",le[le.Block=2]="Block",le[le.Underline=3]="Underline",le[le.LineThin=4]="LineThin",le[le.BlockOutline=5]="BlockOutline",le[le.UnderlineThin=6]="UnderlineThin"})(j||(j={}));function V(le){switch(le){case"line":return j.Line;case"block":return j.Block;case"underline":return j.Underline;case"line-thin":return j.LineThin;case"block-outline":return j.BlockOutline;case"underline-thin":return j.UnderlineThin}}class G extends f{constructor(){super(126,[65,33])}compute(le,Pe,it){const Dt=["monaco-editor"];return Pe.get(33)&&Dt.push(Pe.get(33)),le.extraEditorClassName&&Dt.push(le.extraEditorClassName),Pe.get(65)==="default"?Dt.push("mouse-default"):Pe.get(65)==="copy"&&Dt.push("mouse-copy"),Pe.get(99)&&Dt.push("showUnused"),Pe.get(124)&&Dt.push("showDeprecated"),Dt.join(" ")}}class B extends E{constructor(){super(32,"emptySelectionClipboard",!0,{description:h.a("emptySelectionClipboard","Controls whether copying without a selection copies the current line.")})}compute(le,Pe,it){return it&&le.emptySelectionClipboard}}class z extends S{constructor(){const le={cursorMoveOnType:!0,seedSearchStringFromSelection:"always",autoFindInSelection:"never",globalFindClipboard:!1,addExtraSpaceOnTop:!0,loop:!0};super(35,"find",le,{"editor.find.cursorMoveOnType":{type:"boolean",default:le.cursorMoveOnType,description:h.a("find.cursorMoveOnType","Controls whether the cursor should jump to find matches while typing.")},"editor.find.seedSearchStringFromSelection":{type:"string",enum:["never","always","selection"],default:le.seedSearchStringFromSelection,enumDescriptions:[h.a("editor.find.seedSearchStringFromSelection.never","Never seed search string from the editor selection."),h.a("editor.find.seedSearchStringFromSelection.always","Always seed search string from the editor selection, including word at cursor position."),h.a("editor.find.seedSearchStringFromSelection.selection","Only seed search string from the editor selection.")],description:h.a("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:le.autoFindInSelection,enumDescriptions:[h.a("editor.find.autoFindInSelection.never","Never turn on Find in Selection automatically (default)."),h.a("editor.find.autoFindInSelection.always","Always turn on Find in Selection automatically."),h.a("editor.find.autoFindInSelection.multiline","Turn on Find in Selection automatically when multiple lines of content are selected.")],description:h.a("find.autoFindInSelection","Controls the condition for turning on Find in Selection automatically.")},"editor.find.globalFindClipboard":{type:"boolean",default:le.globalFindClipboard,description:h.a("find.globalFindClipboard","Controls whether the Find Widget should read or modify the shared find clipboard on macOS."),included:P.f},"editor.find.addExtraSpaceOnTop":{type:"boolean",default:le.addExtraSpaceOnTop,description:h.a("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:le.loop,description:h.a("find.loop","Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{cursorMoveOnType:d(Pe.cursorMoveOnType,this.defaultValue.cursorMoveOnType),seedSearchStringFromSelection:typeof le.seedSearchStringFromSelection=="boolean"?le.seedSearchStringFromSelection?"always":"never":c(Pe.seedSearchStringFromSelection,this.defaultValue.seedSearchStringFromSelection,["never","always","selection"]),autoFindInSelection:typeof le.autoFindInSelection=="boolean"?le.autoFindInSelection?"always":"never":c(Pe.autoFindInSelection,this.defaultValue.autoFindInSelection,["never","always","multiline"]),globalFindClipboard:d(Pe.globalFindClipboard,this.defaultValue.globalFindClipboard),addExtraSpaceOnTop:d(Pe.addExtraSpaceOnTop,this.defaultValue.addExtraSpaceOnTop),loop:d(Pe.loop,this.defaultValue.loop)}}}class Y extends S{constructor(){super(44,"fontLigatures",Y.OFF,{anyOf:[{type:"boolean",description:h.a("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:h.a("fontFeatureSettings","Explicit 'font-feature-settings' CSS property. A boolean can be passed instead if one only needs to turn on/off ligatures.")}],description:h.a("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})}validate(le){return typeof le=="undefined"?this.defaultValue:typeof le=="string"?le==="false"?Y.OFF:le==="true"?Y.ON:le:Boolean(le)?Y.ON:Y.OFF}}Y.OFF='"liga" off, "calt" off',Y.ON='"liga" on, "calt" on';class K extends f{constructor(){super(43)}compute(le,Pe,it){return le.fontInfo}}class Q extends u{constructor(){super(45,"fontSize",wt.fontSize,{type:"number",minimum:6,maximum:100,default:wt.fontSize,description:h.a("fontSize","Controls the font size in pixels.")})}validate(le){let Pe=b.float(le,this.defaultValue);return Pe===0?wt.fontSize:b.clamp(Pe,6,100)}compute(le,Pe,it){return le.fontInfo.fontSize}}class ee extends S{constructor(){super(46,"fontWeight",wt.fontWeight,{anyOf:[{type:"number",minimum:ee.MINIMUM_VALUE,maximum:ee.MAXIMUM_VALUE,errorMessage:h.a("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:ee.SUGGESTION_VALUES}],default:wt.fontWeight,description:h.a("fontWeight",'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.')})}validate(le){return le==="normal"||le==="bold"?le:String(n.clampedInt(le,wt.fontWeight,ee.MINIMUM_VALUE,ee.MAXIMUM_VALUE))}}ee.SUGGESTION_VALUES=["normal","bold","100","200","300","400","500","600","700","800","900"],ee.MINIMUM_VALUE=1,ee.MAXIMUM_VALUE=1e3;class Se extends S{constructor(){const le={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:""},Pe={type:"string",enum:["peek","gotoAndPeek","goto"],default:le.multiple,enumDescriptions:[h.a("editor.gotoLocation.multiple.peek","Show peek view of the results (default)"),h.a("editor.gotoLocation.multiple.gotoAndPeek","Go to the primary result and show a peek view"),h.a("editor.gotoLocation.multiple.goto","Go to the primary result and enable peek-less navigation to others")]},it=["","editor.action.referenceSearch.trigger","editor.action.goToReferences","editor.action.peekImplementation","editor.action.goToImplementation","editor.action.peekTypeDefinition","editor.action.goToTypeDefinition","editor.action.peekDeclaration","editor.action.revealDeclaration","editor.action.peekDefinition","editor.action.revealDefinitionAside","editor.action.revealDefinition"];super(50,"gotoLocation",le,{"editor.gotoLocation.multiple":{deprecationMessage:h.a("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:h.a("editor.editor.gotoLocation.multipleDefinitions","Controls the behavior the 'Go to Definition'-command when multiple target locations exist.")},Pe),"editor.gotoLocation.multipleTypeDefinitions":Object.assign({description:h.a("editor.editor.gotoLocation.multipleTypeDefinitions","Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist.")},Pe),"editor.gotoLocation.multipleDeclarations":Object.assign({description:h.a("editor.editor.gotoLocation.multipleDeclarations","Controls the behavior the 'Go to Declaration'-command when multiple target locations exist.")},Pe),"editor.gotoLocation.multipleImplementations":Object.assign({description:h.a("editor.editor.gotoLocation.multipleImplemenattions","Controls the behavior the 'Go to Implementations'-command when multiple target locations exist.")},Pe),"editor.gotoLocation.multipleReferences":Object.assign({description:h.a("editor.editor.gotoLocation.multipleReferences","Controls the behavior the 'Go to References'-command when multiple target locations exist.")},Pe),"editor.gotoLocation.alternativeDefinitionCommand":{type:"string",default:le.alternativeDefinitionCommand,enum:it,description:h.a("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:le.alternativeTypeDefinitionCommand,enum:it,description:h.a("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:le.alternativeDeclarationCommand,enum:it,description:h.a("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:le.alternativeImplementationCommand,enum:it,description:h.a("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:le.alternativeReferenceCommand,enum:it,description:h.a("alternativeReferenceCommand","Alternative command id that is being executed when the result of 'Go to Reference' is the current location.")}})}validate(le){var Pe,it,Dt,kt,eo;if(!le||typeof le!="object")return this.defaultValue;const bo=le;return{multiple:c(bo.multiple,this.defaultValue.multiple,["peek","gotoAndPeek","goto"]),multipleDefinitions:(Pe=bo.multipleDefinitions)!==null&&Pe!==void 0?Pe:c(bo.multipleDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleTypeDefinitions:(it=bo.multipleTypeDefinitions)!==null&&it!==void 0?it:c(bo.multipleTypeDefinitions,"peek",["peek","gotoAndPeek","goto"]),multipleDeclarations:(Dt=bo.multipleDeclarations)!==null&&Dt!==void 0?Dt:c(bo.multipleDeclarations,"peek",["peek","gotoAndPeek","goto"]),multipleImplementations:(kt=bo.multipleImplementations)!==null&&kt!==void 0?kt:c(bo.multipleImplementations,"peek",["peek","gotoAndPeek","goto"]),multipleReferences:(eo=bo.multipleReferences)!==null&&eo!==void 0?eo:c(bo.multipleReferences,"peek",["peek","gotoAndPeek","goto"]),alternativeDefinitionCommand:m.string(bo.alternativeDefinitionCommand,this.defaultValue.alternativeDefinitionCommand),alternativeTypeDefinitionCommand:m.string(bo.alternativeTypeDefinitionCommand,this.defaultValue.alternativeTypeDefinitionCommand),alternativeDeclarationCommand:m.string(bo.alternativeDeclarationCommand,this.defaultValue.alternativeDeclarationCommand),alternativeImplementationCommand:m.string(bo.alternativeImplementationCommand,this.defaultValue.alternativeImplementationCommand),alternativeReferenceCommand:m.string(bo.alternativeReferenceCommand,this.defaultValue.alternativeReferenceCommand)}}}class fe extends S{constructor(){const le={enabled:!0,delay:300,sticky:!0,above:!0};super(52,"hover",le,{"editor.hover.enabled":{type:"boolean",default:le.enabled,description:h.a("hover.enabled","Controls whether the hover is shown.")},"editor.hover.delay":{type:"number",default:le.delay,description:h.a("hover.delay","Controls the delay in milliseconds after which the hover is shown.")},"editor.hover.sticky":{type:"boolean",default:le.sticky,description:h.a("hover.sticky","Controls whether the hover should remain visible when mouse is moved over it.")},"editor.hover.above":{type:"boolean",default:le.above,description:h.a("hover.above","Prefer showing hovers above the line, if there's space.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{enabled:d(Pe.enabled,this.defaultValue.enabled),delay:n.clampedInt(Pe.delay,this.defaultValue.delay,0,1e4),sticky:d(Pe.sticky,this.defaultValue.sticky),above:d(Pe.above,this.defaultValue.above)}}}class q extends f{constructor(){super(129,[49,57,37,64,91,59,60,93,116,119,120,121,2])}compute(le,Pe,it){return q.computeLayout(Pe,{memory:le.memory,outerWidth:le.outerWidth,outerHeight:le.outerHeight,isDominatedByLongLines:le.isDominatedByLongLines,lineHeight:le.fontInfo.lineHeight,viewLineCount:le.viewLineCount,lineNumbersDigitCount:le.lineNumbersDigitCount,typicalHalfwidthCharacterWidth:le.fontInfo.typicalHalfwidthCharacterWidth,maxDigitWidth:le.fontInfo.maxDigitWidth,pixelRatio:le.pixelRatio})}static computeContainedMinimapLineCount(le){const Pe=le.height/le.lineHeight,it=le.scrollBeyondLastLine?Pe-1:0,Dt=(le.viewLineCount+it)/(le.pixelRatio*le.height),kt=Math.floor(le.viewLineCount/Dt);return{typicalViewportLineCount:Pe,extraLinesBeyondLastLine:it,desiredRatio:Dt,minimapLineCount:kt}}static _computeMinimapLayout(le,Pe){const it=le.outerWidth,Dt=le.outerHeight,kt=le.pixelRatio;if(!le.minimap.enabled)return{renderMinimap:0,minimapLeft:0,minimapWidth:0,minimapHeightIsEditorHeight:!1,minimapIsSampling:!1,minimapScale:1,minimapLineHeight:1,minimapCanvasInnerWidth:0,minimapCanvasInnerHeight:Math.floor(kt*Dt),minimapCanvasOuterWidth:0,minimapCanvasOuterHeight:Dt};const eo=Pe.stableMinimapLayoutInput,bo=eo&&le.outerHeight===eo.outerHeight&&le.lineHeight===eo.lineHeight&&le.typicalHalfwidthCharacterWidth===eo.typicalHalfwidthCharacterWidth&&le.pixelRatio===eo.pixelRatio&&le.scrollBeyondLastLine===eo.scrollBeyondLastLine&&le.minimap.enabled===eo.minimap.enabled&&le.minimap.side===eo.minimap.side&&le.minimap.size===eo.minimap.size&&le.minimap.showSlider===eo.minimap.showSlider&&le.minimap.renderCharacters===eo.minimap.renderCharacters&&le.minimap.maxColumn===eo.minimap.maxColumn&&le.minimap.scale===eo.minimap.scale&&le.verticalScrollbarWidth===eo.verticalScrollbarWidth&&le.isViewportWrapping===eo.isViewportWrapping,ao=le.lineHeight,So=le.typicalHalfwidthCharacterWidth,Lo=le.scrollBeyondLastLine,xo=le.minimap.renderCharacters;let _o=kt>=2?Math.round(le.minimap.scale*2):le.minimap.scale;const to=le.minimap.maxColumn,Wt=le.minimap.size,Ge=le.minimap.side,mt=le.verticalScrollbarWidth,Gt=le.viewLineCount,qe=le.remainingWidth,tt=le.isViewportWrapping,gt=xo?2:3;let $e=Math.floor(kt*Dt);const je=$e/kt;let Ue=!1,Ye=!1,Mt=gt*_o,Bt=_o/kt,$t=1;if(Wt==="fill"||Wt==="fit"){const{typicalViewportLineCount:he,extraLinesBeyondLastLine:Me,desiredRatio:ue,minimapLineCount:ae}=q.computeContainedMinimapLineCount({viewLineCount:Gt,scrollBeyondLastLine:Lo,height:Dt,lineHeight:ao,pixelRatio:kt}),Re=Gt/ae;if(Re>1)Ue=!0,Ye=!0,_o=1,Mt=1,Bt=_o/kt;else{let Qe=!1,et=_o+1;if(Wt==="fit"){const bt=Math.ceil((Gt+Me)*Mt);tt&&bo&&qe<=Pe.stableFitRemainingWidth?(Qe=!0,et=Pe.stableFitMaxMinimapScale):Qe=bt>$e}if(Wt==="fill"||Qe){Ue=!0;const bt=_o;Mt=Math.min(ao*kt,Math.max(1,Math.floor(1/ue))),tt&&bo&&qe<=Pe.stableFitRemainingWidth&&(et=Pe.stableFitMaxMinimapScale),_o=Math.min(et,Math.max(1,Math.floor(Mt/gt))),_o>bt&&($t=Math.min(2,_o/bt)),Bt=_o/kt/$t,$e=Math.ceil(Math.max(he,Gt+Me)*Mt),tt?(Pe.stableMinimapLayoutInput=le,Pe.stableFitRemainingWidth=qe,Pe.stableFitMaxMinimapScale=_o):(Pe.stableMinimapLayoutInput=null,Pe.stableFitRemainingWidth=0)}}}const uo=Math.floor(to*Bt),Zt=Math.min(uo,Math.max(0,Math.floor((qe-mt-2)*Bt/(So+Bt)))+A);let zt=Math.floor(kt*Zt);const ut=zt/kt;zt=Math.floor(zt*$t);const Ct=xo?1:2,We=Ge==="left"?0:it-Zt-mt;return{renderMinimap:Ct,minimapLeft:We,minimapWidth:Zt,minimapHeightIsEditorHeight:Ue,minimapIsSampling:Ye,minimapScale:_o,minimapLineHeight:Mt,minimapCanvasInnerWidth:zt,minimapCanvasInnerHeight:$e,minimapCanvasOuterWidth:ut,minimapCanvasOuterHeight:je}}static computeLayout(le,Pe){const it=Pe.outerWidth|0,Dt=Pe.outerHeight|0,kt=Pe.lineHeight|0,eo=Pe.lineNumbersDigitCount|0,bo=Pe.typicalHalfwidthCharacterWidth,ao=Pe.maxDigitWidth,So=Pe.pixelRatio,Lo=Pe.viewLineCount,xo=le.get(121),_o=xo==="inherit"?le.get(120):xo,to=_o==="inherit"?le.get(116):_o,Wt=le.get(119),Ge=le.get(2),mt=Pe.isDominatedByLongLines,Gt=le.get(49),qe=le.get(59).renderType!==0,tt=le.get(60),gt=le.get(93),$e=le.get(64),je=le.get(91),Ue=je.verticalScrollbarSize,Ye=je.verticalHasArrows,Mt=je.arrowSize,Bt=je.horizontalScrollbarSize,$t=le.get(57),uo=le.get(37);let Zt;if(typeof $t=="string"&&/^\d+(\.\d+)?ch$/.test($t)){const Ft=parseFloat($t.substr(0,$t.length-2));Zt=n.clampedInt(Ft*bo,0,0,1e3)}else Zt=n.clampedInt($t,0,0,1e3);uo&&(Zt+=16);let zt=0;if(qe){const Ft=Math.max(eo,tt);zt=Math.round(Ft*ao)}let ut=0;Gt&&(ut=kt);let Ct=0,We=Ct+ut,he=We+zt,Me=he+Zt;const ue=it-ut-zt-Zt;let ae=!1,Re=!1,Qe=-1;Ge!==2&&(_o==="inherit"&&mt?(ae=!0,Re=!0):to==="on"||to==="bounded"?Re=!0:to==="wordWrapColumn"&&(Qe=Wt));const et=q._computeMinimapLayout({outerWidth:it,outerHeight:Dt,lineHeight:kt,typicalHalfwidthCharacterWidth:bo,pixelRatio:So,scrollBeyondLastLine:gt,minimap:$e,verticalScrollbarWidth:Ue,viewLineCount:Lo,remainingWidth:ue,isViewportWrapping:Re},Pe.memory||new O);et.renderMinimap!==0&&et.minimapLeft===0&&(Ct+=et.minimapWidth,We+=et.minimapWidth,he+=et.minimapWidth,Me+=et.minimapWidth);const bt=ue-et.minimapWidth,Lt=Math.max(1,Math.floor((bt-Ue-2)/bo)),Ot=Ye?Mt:0;return Re&&(Qe=Math.max(1,Lt),to==="bounded"&&(Qe=Math.min(Qe,Wt))),{width:it,height:Dt,glyphMarginLeft:Ct,glyphMarginWidth:ut,lineNumbersLeft:We,lineNumbersWidth:zt,decorationsLeft:he,decorationsWidth:Zt,contentLeft:Me,contentWidth:bt,minimap:et,viewportColumn:Lt,isWordWrapMinified:ae,isViewportWrapping:Re,wrappingColumn:Qe,verticalScrollbarWidth:Ue,horizontalScrollbarHeight:Bt,overviewRuler:{top:Ot,width:Ue,height:Dt-2*Ot,right:0}}}}class te extends S{constructor(){const le={enabled:!0};super(56,"lightbulb",le,{"editor.lightbulb.enabled":{type:"boolean",default:le.enabled,description:h.a("codeActions","Enables the code action lightbulb in the editor.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{enabled:d(Pe.enabled,this.defaultValue.enabled)}}}class U extends S{constructor(){const le={enabled:!0,fontSize:0,fontFamily:""};super(125,"inlayHints",le,{"editor.inlayHints.enabled":{type:"boolean",default:le.enabled,description:h.a("inlayHints.enable","Enables the inlay hints in the editor.")},"editor.inlayHints.fontSize":{type:"number",default:le.fontSize,markdownDescription:h.a("inlayHints.fontSize","Controls font size of inlay hints in the editor. A default of 90% of `#editor.fontSize#` is used when the configured value is less than `5` or greater than the editor font size.")},"editor.inlayHints.fontFamily":{type:"string",default:le.fontFamily,markdownDescription:h.a("inlayHints.fontFamily","Controls font family of inlay hints in the editor. When set to empty, the `#editor.fontFamily#` is used.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{enabled:d(Pe.enabled,this.defaultValue.enabled),fontSize:n.clampedInt(Pe.fontSize,this.defaultValue.fontSize,0,100),fontFamily:m.string(Pe.fontFamily,this.defaultValue.fontFamily)}}}class H extends b{constructor(){super(58,"lineHeight",wt.lineHeight,le=>b.clamp(le,0,150),{markdownDescription:h.a("lineHeight",`Controls the line height. - Use 0 to automatically compute the line height from the font size. - Values between 0 and 8 will be used as a multiplier with the font size. - Values greater than or equal to 8 will be used as effective values.`)})}compute(le,Pe,it){return le.fontInfo.lineHeight}}class W extends S{constructor(){const le={enabled:!0,size:"proportional",side:"right",showSlider:"mouseover",renderCharacters:!0,maxColumn:120,scale:1};super(64,"minimap",le,{"editor.minimap.enabled":{type:"boolean",default:le.enabled,description:h.a("minimap.enabled","Controls whether the minimap is shown.")},"editor.minimap.size":{type:"string",enum:["proportional","fill","fit"],enumDescriptions:[h.a("minimap.size.proportional","The minimap has the same size as the editor contents (and might scroll)."),h.a("minimap.size.fill","The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling)."),h.a("minimap.size.fit","The minimap will shrink as necessary to never be larger than the editor (no scrolling).")],default:le.size,description:h.a("minimap.size","Controls the size of the minimap.")},"editor.minimap.side":{type:"string",enum:["left","right"],default:le.side,description:h.a("minimap.side","Controls the side where to render the minimap.")},"editor.minimap.showSlider":{type:"string",enum:["always","mouseover"],default:le.showSlider,description:h.a("minimap.showSlider","Controls when the minimap slider is shown.")},"editor.minimap.scale":{type:"number",default:le.scale,minimum:1,maximum:3,enum:[1,2,3],description:h.a("minimap.scale","Scale of content drawn in the minimap: 1, 2 or 3.")},"editor.minimap.renderCharacters":{type:"boolean",default:le.renderCharacters,description:h.a("minimap.renderCharacters","Render the actual characters on a line as opposed to color blocks.")},"editor.minimap.maxColumn":{type:"number",default:le.maxColumn,description:h.a("minimap.maxColumn","Limit the width of the minimap to render at most a certain number of columns.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{enabled:d(Pe.enabled,this.defaultValue.enabled),size:c(Pe.size,this.defaultValue.size,["proportional","fill","fit"]),side:c(Pe.side,this.defaultValue.side,["right","left"]),showSlider:c(Pe.showSlider,this.defaultValue.showSlider,["always","mouseover"]),renderCharacters:d(Pe.renderCharacters,this.defaultValue.renderCharacters),scale:n.clampedInt(Pe.scale,1,1,3),maxColumn:n.clampedInt(Pe.maxColumn,this.defaultValue.maxColumn,1,1e4)}}}function ne(le){return le==="ctrlCmd"?P.f?"metaKey":"ctrlKey":"altKey"}class Ce extends S{constructor(){super(74,"padding",{top:0,bottom:0},{"editor.padding.top":{type:"number",default:0,minimum:0,maximum:1e3,description:h.a("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:h.a("padding.bottom","Controls the amount of space between the bottom edge of the editor and the last line.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{top:n.clampedInt(Pe.top,0,0,1e3),bottom:n.clampedInt(Pe.bottom,0,0,1e3)}}}class Le extends S{constructor(){const le={enabled:!0,cycle:!1};super(75,"parameterHints",le,{"editor.parameterHints.enabled":{type:"boolean",default:le.enabled,description:h.a("parameterHints.enabled","Enables a pop-up that shows parameter documentation and type information as you type.")},"editor.parameterHints.cycle":{type:"boolean",default:le.cycle,description:h.a("parameterHints.cycle","Controls whether the parameter hints menu cycles or closes when reaching the end of the list.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{enabled:d(Pe.enabled,this.defaultValue.enabled),cycle:d(Pe.cycle,this.defaultValue.cycle)}}}class ce extends f{constructor(){super(127)}compute(le,Pe,it){return le.pixelRatio}}class me extends S{constructor(){const le={other:!0,comments:!1,strings:!1};super(78,"quickSuggestions",le,{anyOf:[{type:"boolean"},{type:"object",properties:{strings:{type:"boolean",default:le.strings,description:h.a("quickSuggestions.strings","Enable quick suggestions inside strings.")},comments:{type:"boolean",default:le.comments,description:h.a("quickSuggestions.comments","Enable quick suggestions inside comments.")},other:{type:"boolean",default:le.other,description:h.a("quickSuggestions.other","Enable quick suggestions outside of strings and comments.")}}}],default:le,description:h.a("quickSuggestions","Controls whether suggestions should automatically show up while typing.")});this.defaultValue=le}validate(le){if(typeof le=="boolean")return le;if(le&&typeof le=="object"){const Pe=le,it={other:d(Pe.other,this.defaultValue.other),comments:d(Pe.comments,this.defaultValue.comments),strings:d(Pe.strings,this.defaultValue.strings)};return it.other&&it.comments&&it.strings?!0:!it.other&&!it.comments&&!it.strings?!1:it}return this.defaultValue}}class Oe extends S{constructor(){super(59,"lineNumbers",{renderType:1,renderFn:null},{type:"string",enum:["off","on","relative","interval"],enumDescriptions:[h.a("lineNumbers.off","Line numbers are not rendered."),h.a("lineNumbers.on","Line numbers are rendered as absolute number."),h.a("lineNumbers.relative","Line numbers are rendered as distance in lines to cursor position."),h.a("lineNumbers.interval","Line numbers are rendered every 10 lines.")],default:"on",description:h.a("lineNumbers","Controls the display of line numbers.")})}validate(le){let Pe=this.defaultValue.renderType,it=this.defaultValue.renderFn;return typeof le!="undefined"&&(typeof le=="function"?(Pe=4,it=le):le==="interval"?Pe=3:le==="relative"?Pe=2:le==="on"?Pe=1:Pe=0),{renderType:Pe,renderFn:it}}}function oe(le){const Pe=le.get(86);return Pe==="editable"?le.get(80):!(Pe==="on")}class De extends S{constructor(){const le=[],Pe={type:"number",description:h.a("rulers.size","Number of monospace characters at which this editor ruler will render.")};super(90,"rulers",le,{type:"array",items:{anyOf:[Pe,{type:["object"],properties:{column:Pe,color:{type:"string",description:h.a("rulers.color","Color of this editor ruler."),format:"color-hex"}}}]},default:le,description:h.a("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.")})}validate(le){if(Array.isArray(le)){let Pe=[];for(let it of le)if(typeof it=="number")Pe.push({column:n.clampedInt(it,0,0,1e4),color:null});else if(it&&typeof it=="object"){const Dt=it;Pe.push({column:n.clampedInt(Dt.column,0,0,1e4),color:Dt.color})}return Pe.sort((it,Dt)=>it.column-Dt.column),Pe}return this.defaultValue}}function Ne(le,Pe){if(typeof le!="string")return Pe;switch(le){case"hidden":return 2;case"visible":return 3;default:return 1}}class ve extends S{constructor(){const le={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};super(91,"scrollbar",le,{"editor.scrollbar.vertical":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[h.a("scrollbar.vertical.auto","The vertical scrollbar will be visible only when necessary."),h.a("scrollbar.vertical.visible","The vertical scrollbar will always be visible."),h.a("scrollbar.vertical.fit","The vertical scrollbar will always be hidden.")],default:"auto",description:h.a("scrollbar.vertical","Controls the visibility of the vertical scrollbar.")},"editor.scrollbar.horizontal":{type:"string",enum:["auto","visible","hidden"],enumDescriptions:[h.a("scrollbar.horizontal.auto","The horizontal scrollbar will be visible only when necessary."),h.a("scrollbar.horizontal.visible","The horizontal scrollbar will always be visible."),h.a("scrollbar.horizontal.fit","The horizontal scrollbar will always be hidden.")],default:"auto",description:h.a("scrollbar.horizontal","Controls the visibility of the horizontal scrollbar.")},"editor.scrollbar.verticalScrollbarSize":{type:"number",default:le.verticalScrollbarSize,description:h.a("scrollbar.verticalScrollbarSize","The width of the vertical scrollbar.")},"editor.scrollbar.horizontalScrollbarSize":{type:"number",default:le.horizontalScrollbarSize,description:h.a("scrollbar.horizontalScrollbarSize","The height of the horizontal scrollbar.")},"editor.scrollbar.scrollByPage":{type:"boolean",default:le.scrollByPage,description:h.a("scrollbar.scrollByPage","Controls whether clicks scroll by page or jump to click position.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le,it=n.clampedInt(Pe.horizontalScrollbarSize,this.defaultValue.horizontalScrollbarSize,0,1e3),Dt=n.clampedInt(Pe.verticalScrollbarSize,this.defaultValue.verticalScrollbarSize,0,1e3);return{arrowSize:n.clampedInt(Pe.arrowSize,this.defaultValue.arrowSize,0,1e3),vertical:Ne(Pe.vertical,this.defaultValue.vertical),horizontal:Ne(Pe.horizontal,this.defaultValue.horizontal),useShadows:d(Pe.useShadows,this.defaultValue.useShadows),verticalHasArrows:d(Pe.verticalHasArrows,this.defaultValue.verticalHasArrows),horizontalHasArrows:d(Pe.horizontalHasArrows,this.defaultValue.horizontalHasArrows),handleMouseWheel:d(Pe.handleMouseWheel,this.defaultValue.handleMouseWheel),alwaysConsumeMouseWheel:d(Pe.alwaysConsumeMouseWheel,this.defaultValue.alwaysConsumeMouseWheel),horizontalScrollbarSize:it,horizontalSliderSize:n.clampedInt(Pe.horizontalSliderSize,it,0,1e3),verticalScrollbarSize:Dt,verticalSliderSize:n.clampedInt(Pe.verticalSliderSize,Dt,0,1e3),scrollByPage:d(Pe.scrollByPage,this.defaultValue.scrollByPage)}}}class re extends S{constructor(){const le={enabled:!0,mode:"subwordSmart"};super(54,"inlineSuggest",le,{"editor.inlineSuggest.enabled":{type:"boolean",default:le.enabled,description:h.a("inlineSuggest.enabled","Controls whether to automatically show inline suggestions in the editor.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{enabled:d(Pe.enabled,this.defaultValue.enabled),mode:c(Pe.mode,this.defaultValue.mode,["prefix","subword","subwordSmart"])}}}class we extends S{constructor(){const le={enabled:Pt.bracketPairColorizationOptions.enabled};super(12,"bracketPairColorization",le,{"editor.bracketPairColorization.enabled":{type:"boolean",default:le.enabled,description:h.a("bracketPairColorization.enabled","Controls whether bracket pair colorization is enabled or not. Use 'workbench.colorCustomizations' to override the bracket highlight colors.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{enabled:d(Pe.enabled,this.defaultValue.enabled)}}}class Ie extends S{constructor(){const le={bracketPairs:!1,bracketPairsHorizontal:"active",highlightActiveBracketPair:!0,indentation:!0,highlightActiveIndentation:!0};super(13,"guides",le,{"editor.guides.bracketPairs":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[h.a("editor.guides.bracketPairs.true","Enables bracket pair guides."),h.a("editor.guides.bracketPairs.active","Enables bracket pair guides only for the active bracket pair."),h.a("editor.guides.bracketPairs.false","Disables bracket pair guides.")],default:le.bracketPairs,description:h.a("editor.guides.bracketPairs","Controls whether bracket pair guides are enabled or not.")},"editor.guides.bracketPairsHorizontal":{type:["boolean","string"],enum:[!0,"active",!1],enumDescriptions:[h.a("editor.guides.bracketPairsHorizontal.true","Enables horizontal guides as addition to vertical bracket pair guides."),h.a("editor.guides.bracketPairsHorizontal.active","Enables horizontal guides only for the active bracket pair."),h.a("editor.guides.bracketPairsHorizontal.false","Disables horizontal bracket pair guides.")],default:le.bracketPairsHorizontal,description:h.a("editor.guides.bracketPairsHorizontal","Controls whether horizontal bracket pair guides are enabled or not.")},"editor.guides.highlightActiveBracketPair":{type:"boolean",default:le.highlightActiveBracketPair,description:h.a("editor.guides.highlightActiveBracketPair","Controls whether bracket pair guides are enabled or not.")},"editor.guides.indentation":{type:"boolean",default:le.indentation,description:h.a("editor.guides.indentation","Controls whether the editor should render indent guides.")},"editor.guides.highlightActiveIndentation":{type:"boolean",default:le.highlightActiveIndentation,description:h.a("editor.guides.highlightActiveIndentation","Controls whether the editor should highlight the active indent guide.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{bracketPairs:ge(Pe.bracketPairs,this.defaultValue.bracketPairs,[!0,!1,"active"]),bracketPairsHorizontal:ge(Pe.bracketPairsHorizontal,this.defaultValue.bracketPairsHorizontal,[!0,!1,"active"]),highlightActiveBracketPair:d(Pe.highlightActiveBracketPair,this.defaultValue.highlightActiveBracketPair),indentation:d(Pe.indentation,this.defaultValue.indentation),highlightActiveIndentation:d(Pe.highlightActiveIndentation,this.defaultValue.highlightActiveIndentation)}}}function ge(le,Pe,it){const Dt=it.indexOf(le);return Dt===-1?Pe:it[Dt]}class ye extends S{constructor(){const le={insertMode:"insert",filterGraceful:!0,snippetsPreventQuickSuggestions:!0,localityBonus:!1,shareSuggestSelections:!1,showIcons:!0,showStatusBar:!1,preview:!1,previewMode:"subwordSmart",showInlineDetails:!0,showMethods:!0,showFunctions:!0,showConstructors:!0,showDeprecated:!0,showFields:!0,showVariables:!0,showClasses:!0,showStructs:!0,showInterfaces:!0,showModules:!0,showProperties:!0,showEvents:!0,showOperators:!0,showUnits:!0,showValues:!0,showConstants:!0,showEnums:!0,showEnumMembers:!0,showKeywords:!0,showWords:!0,showColors:!0,showFiles:!0,showReferences:!0,showFolders:!0,showTypeParameters:!0,showSnippets:!0,showUsers:!0,showIssues:!0};super(105,"suggest",le,{"editor.suggest.insertMode":{type:"string",enum:["insert","replace"],enumDescriptions:[h.a("suggest.insertMode.insert","Insert suggestion without overwriting text right of the cursor."),h.a("suggest.insertMode.replace","Insert suggestion and overwrite text right of the cursor.")],default:le.insertMode,description:h.a("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:le.filterGraceful,description:h.a("suggest.filterGraceful","Controls whether filtering and sorting suggestions accounts for small typos.")},"editor.suggest.localityBonus":{type:"boolean",default:le.localityBonus,description:h.a("suggest.localityBonus","Controls whether sorting favors words that appear close to the cursor.")},"editor.suggest.shareSuggestSelections":{type:"boolean",default:le.shareSuggestSelections,markdownDescription:h.a("suggest.shareSuggestSelections","Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).")},"editor.suggest.snippetsPreventQuickSuggestions":{type:"boolean",default:le.snippetsPreventQuickSuggestions,description:h.a("suggest.snippetsPreventQuickSuggestions","Controls whether an active snippet prevents quick suggestions.")},"editor.suggest.showIcons":{type:"boolean",default:le.showIcons,description:h.a("suggest.showIcons","Controls whether to show or hide icons in suggestions.")},"editor.suggest.showStatusBar":{type:"boolean",default:le.showStatusBar,description:h.a("suggest.showStatusBar","Controls the visibility of the status bar at the bottom of the suggest widget.")},"editor.suggest.preview":{type:"boolean",default:le.preview,description:h.a("suggest.preview","Controls whether to preview the suggestion outcome in the editor.")},"editor.suggest.showInlineDetails":{type:"boolean",default:le.showInlineDetails,description:h.a("suggest.showInlineDetails","Controls whether suggest details show inline with the label or only in the details widget")},"editor.suggest.maxVisibleSuggestions":{type:"number",deprecationMessage:h.a("suggest.maxVisibleSuggestions.dep","This setting is deprecated. The suggest widget can now be resized.")},"editor.suggest.filteredTypes":{type:"object",deprecationMessage:h.a("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:h.a("editor.suggest.showMethods","When enabled IntelliSense shows `method`-suggestions.")},"editor.suggest.showFunctions":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showFunctions","When enabled IntelliSense shows `function`-suggestions.")},"editor.suggest.showConstructors":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showConstructors","When enabled IntelliSense shows `constructor`-suggestions.")},"editor.suggest.showDeprecated":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showDeprecated","When enabled IntelliSense shows `deprecated`-suggestions.")},"editor.suggest.showFields":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showFields","When enabled IntelliSense shows `field`-suggestions.")},"editor.suggest.showVariables":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showVariables","When enabled IntelliSense shows `variable`-suggestions.")},"editor.suggest.showClasses":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showClasss","When enabled IntelliSense shows `class`-suggestions.")},"editor.suggest.showStructs":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showStructs","When enabled IntelliSense shows `struct`-suggestions.")},"editor.suggest.showInterfaces":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showInterfaces","When enabled IntelliSense shows `interface`-suggestions.")},"editor.suggest.showModules":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showModules","When enabled IntelliSense shows `module`-suggestions.")},"editor.suggest.showProperties":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showPropertys","When enabled IntelliSense shows `property`-suggestions.")},"editor.suggest.showEvents":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showEvents","When enabled IntelliSense shows `event`-suggestions.")},"editor.suggest.showOperators":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showOperators","When enabled IntelliSense shows `operator`-suggestions.")},"editor.suggest.showUnits":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showUnits","When enabled IntelliSense shows `unit`-suggestions.")},"editor.suggest.showValues":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showValues","When enabled IntelliSense shows `value`-suggestions.")},"editor.suggest.showConstants":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showConstants","When enabled IntelliSense shows `constant`-suggestions.")},"editor.suggest.showEnums":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showEnums","When enabled IntelliSense shows `enum`-suggestions.")},"editor.suggest.showEnumMembers":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showEnumMembers","When enabled IntelliSense shows `enumMember`-suggestions.")},"editor.suggest.showKeywords":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showKeywords","When enabled IntelliSense shows `keyword`-suggestions.")},"editor.suggest.showWords":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showTexts","When enabled IntelliSense shows `text`-suggestions.")},"editor.suggest.showColors":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showColors","When enabled IntelliSense shows `color`-suggestions.")},"editor.suggest.showFiles":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showFiles","When enabled IntelliSense shows `file`-suggestions.")},"editor.suggest.showReferences":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showReferences","When enabled IntelliSense shows `reference`-suggestions.")},"editor.suggest.showCustomcolors":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showCustomcolors","When enabled IntelliSense shows `customcolor`-suggestions.")},"editor.suggest.showFolders":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showFolders","When enabled IntelliSense shows `folder`-suggestions.")},"editor.suggest.showTypeParameters":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showTypeParameters","When enabled IntelliSense shows `typeParameter`-suggestions.")},"editor.suggest.showSnippets":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showSnippets","When enabled IntelliSense shows `snippet`-suggestions.")},"editor.suggest.showUsers":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showUsers","When enabled IntelliSense shows `user`-suggestions.")},"editor.suggest.showIssues":{type:"boolean",default:!0,markdownDescription:h.a("editor.suggest.showIssues","When enabled IntelliSense shows `issues`-suggestions.")}})}validate(le){if(!le||typeof le!="object")return this.defaultValue;const Pe=le;return{insertMode:c(Pe.insertMode,this.defaultValue.insertMode,["insert","replace"]),filterGraceful:d(Pe.filterGraceful,this.defaultValue.filterGraceful),snippetsPreventQuickSuggestions:d(Pe.snippetsPreventQuickSuggestions,this.defaultValue.filterGraceful),localityBonus:d(Pe.localityBonus,this.defaultValue.localityBonus),shareSuggestSelections:d(Pe.shareSuggestSelections,this.defaultValue.shareSuggestSelections),showIcons:d(Pe.showIcons,this.defaultValue.showIcons),showStatusBar:d(Pe.showStatusBar,this.defaultValue.showStatusBar),preview:d(Pe.preview,this.defaultValue.preview),previewMode:c(Pe.previewMode,this.defaultValue.previewMode,["prefix","subword","subwordSmart"]),showInlineDetails:d(Pe.showInlineDetails,this.defaultValue.showInlineDetails),showMethods:d(Pe.showMethods,this.defaultValue.showMethods),showFunctions:d(Pe.showFunctions,this.defaultValue.showFunctions),showConstructors:d(Pe.showConstructors,this.defaultValue.showConstructors),showDeprecated:d(Pe.showDeprecated,this.defaultValue.showDeprecated),showFields:d(Pe.showFields,this.defaultValue.showFields),showVariables:d(Pe.showVariables,this.defaultValue.showVariables),showClasses:d(Pe.showClasses,this.defaultValue.showClasses),showStructs:d(Pe.showStructs,this.defaultValue.showStructs),showInterfaces:d(Pe.showInterfaces,this.defaultValue.showInterfaces),showModules:d(Pe.showModules,this.defaultValue.showModules),showProperties:d(Pe.showProperties,this.defaultValue.showProperties),showEvents:d(Pe.showEvents,this.defaultValue.showEvents),showOperators:d(Pe.showOperators,this.defaultValue.showOperators),showUnits:d(Pe.showUnits,this.defaultValue.showUnits),showValues:d(Pe.showValues,this.defaultValue.showValues),showConstants:d(Pe.showConstants,this.defaultValue.showConstants),showEnums:d(Pe.showEnums,this.defaultValue.showEnums),showEnumMembers:d(Pe.showEnumMembers,this.defaultValue.showEnumMembers),showKeywords:d(Pe.showKeywords,this.defaultValue.showKeywords),showWords:d(Pe.showWords,this.defaultValue.showWords),showColors:d(Pe.showColors,this.defaultValue.showColors),showFiles:d(Pe.showFiles,this.defaultValue.showFiles),showReferences:d(Pe.showReferences,this.defaultValue.showReferences),showFolders:d(Pe.showFolders,this.defaultValue.showFolders),showTypeParameters:d(Pe.showTypeParameters,this.defaultValue.showTypeParameters),showSnippets:d(Pe.showSnippets,this.defaultValue.showSnippets),showUsers:d(Pe.showUsers,this.defaultValue.showUsers),showIssues:d(Pe.showIssues,this.defaultValue.showIssues)}}}class ze extends S{constructor(){super(101,"smartSelect",{selectLeadingAndTrailingWhitespace:!0},{"editor.smartSelect.selectLeadingAndTrailingWhitespace":{description:h.a("selectLeadingAndTrailingWhitespace","Whether leading and trailing whitespace should always be selected."),default:!0,type:"boolean"}})}validate(le){return!le||typeof le!="object"?this.defaultValue:{selectLeadingAndTrailingWhitespace:d(le.selectLeadingAndTrailingWhitespace,this.defaultValue.selectLeadingAndTrailingWhitespace)}}}class xe extends f{constructor(){super(128,[80])}compute(le,Pe,it){const Dt=Pe.get(80);return Dt?!0:le.tabFocusMode}}function Te(le){switch(le){case"none":return 0;case"same":return 1;case"indent":return 2;case"deepIndent":return 3}}class He extends f{constructor(){super(130,[129])}compute(le,Pe,it){const Dt=Pe.get(129);return{isDominatedByLongLines:le.isDominatedByLongLines,isWordWrapMinified:Dt.isWordWrapMinified,isViewportWrapping:Dt.isViewportWrapping,wrappingColumn:Dt.wrappingColumn}}}const st="Consolas, 'Courier New', monospace",nt="Menlo, Monaco, 'Courier New', monospace",rt="'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback'",wt={fontFamily:P.f?nt:P.d?rt:st,fontWeight:"normal",fontSize:P.f?12:14,lineHeight:0,letterSpacing:0},Pt={tabSize:4,indentSize:4,insertSpaces:!0,detectIndentation:!0,trimAutoWhitespace:!0,largeFileOptimizations:!0,bracketPairColorizationOptions:{enabled:!1}},no=[];function ht(le){return no[le.id]=le,le}const lt={acceptSuggestionOnCommitCharacter:ht(new E(0,"acceptSuggestionOnCommitCharacter",!0,{markdownDescription:h.a("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:ht(new l(1,"acceptSuggestionOnEnter","on",["on","smart","off"],{markdownEnumDescriptions:["",h.a("acceptSuggestionOnEnterSmart","Only accept a suggestion with `Enter` when it makes a textual change."),""],markdownDescription:h.a("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:ht(new C),accessibilityPageSize:ht(new n(3,"accessibilityPageSize",10,1,1073741824,{description:h.a("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:ht(new m(4,"ariaLabel",h.a("editorViewAccessibleLabel","Editor content"))),autoClosingBrackets:ht(new l(5,"autoClosingBrackets","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",h.a("editor.autoClosingBrackets.languageDefined","Use language configurations to determine when to autoclose brackets."),h.a("editor.autoClosingBrackets.beforeWhitespace","Autoclose brackets only when the cursor is to the left of whitespace."),""],description:h.a("autoClosingBrackets","Controls whether the editor should automatically close brackets after the user adds an opening bracket.")})),autoClosingDelete:ht(new l(6,"autoClosingDelete","auto",["always","auto","never"],{enumDescriptions:["",h.a("editor.autoClosingDelete.auto","Remove adjacent closing quotes or brackets only if they were automatically inserted."),""],description:h.a("autoClosingDelete","Controls whether the editor should remove adjacent closing quotes or brackets when deleting.")})),autoClosingOvertype:ht(new l(7,"autoClosingOvertype","auto",["always","auto","never"],{enumDescriptions:["",h.a("editor.autoClosingOvertype.auto","Type over closing quotes or brackets only if they were automatically inserted."),""],description:h.a("autoClosingOvertype","Controls whether the editor should type over closing quotes or brackets.")})),autoClosingQuotes:ht(new l(8,"autoClosingQuotes","languageDefined",["always","languageDefined","beforeWhitespace","never"],{enumDescriptions:["",h.a("editor.autoClosingQuotes.languageDefined","Use language configurations to determine when to autoclose quotes."),h.a("editor.autoClosingQuotes.beforeWhitespace","Autoclose quotes only when the cursor is to the left of whitespace."),""],description:h.a("autoClosingQuotes","Controls whether the editor should automatically close quotes after the user adds an opening quote.")})),autoIndent:ht(new g(9,"autoIndent",4,"full",["none","keep","brackets","advanced","full"],y,{enumDescriptions:[h.a("editor.autoIndent.none","The editor will not insert indentation automatically."),h.a("editor.autoIndent.keep","The editor will keep the current line's indentation."),h.a("editor.autoIndent.brackets","The editor will keep the current line's indentation and honor language defined brackets."),h.a("editor.autoIndent.advanced","The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages."),h.a("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:h.a("autoIndent","Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.")})),automaticLayout:ht(new E(10,"automaticLayout",!1)),autoSurround:ht(new l(11,"autoSurround","languageDefined",["languageDefined","quotes","brackets","never"],{enumDescriptions:[h.a("editor.autoSurround.languageDefined","Use language configurations to determine when to automatically surround selections."),h.a("editor.autoSurround.quotes","Surround with quotes but not brackets."),h.a("editor.autoSurround.brackets","Surround with brackets but not quotes."),""],description:h.a("autoSurround","Controls whether the editor should automatically surround selections when typing quotes or brackets.")})),bracketPairColorization:ht(new we),bracketPairGuides:ht(new Ie),stickyTabStops:ht(new E(103,"stickyTabStops",!1,{description:h.a("stickyTabStops","Emulate selection behavior of tab characters when using spaces for indentation. Selection will stick to tab stops.")})),codeLens:ht(new E(14,"codeLens",!0,{description:h.a("codeLens","Controls whether the editor shows CodeLens.")})),codeLensFontFamily:ht(new m(15,"codeLensFontFamily","",{description:h.a("codeLensFontFamily","Controls the font family for CodeLens.")})),codeLensFontSize:ht(new n(16,"codeLensFontSize",0,0,100,{type:"number",default:0,minimum:0,maximum:100,markdownDescription:h.a("codeLensFontSize","Controls the font size in pixels for CodeLens. When set to `0`, the 90% of `#editor.fontSize#` is used.")})),colorDecorators:ht(new E(17,"colorDecorators",!0,{description:h.a("colorDecorators","Controls whether the editor should render the inline color decorators and color picker.")})),columnSelection:ht(new E(18,"columnSelection",!1,{description:h.a("columnSelection","Enable that the selection with the mouse and keys is doing column selection.")})),comments:ht(new v),contextmenu:ht(new E(20,"contextmenu",!0)),copyWithSyntaxHighlighting:ht(new E(21,"copyWithSyntaxHighlighting",!0,{description:h.a("copyWithSyntaxHighlighting","Controls whether syntax highlighting should be copied into the clipboard.")})),cursorBlinking:ht(new g(22,"cursorBlinking",1,"blink",["blink","smooth","phase","expand","solid"],D,{description:h.a("cursorBlinking","Control the cursor animation style.")})),cursorSmoothCaretAnimation:ht(new E(23,"cursorSmoothCaretAnimation",!1,{description:h.a("cursorSmoothCaretAnimation","Controls whether the smooth caret animation should be enabled.")})),cursorStyle:ht(new g(24,"cursorStyle",j.Line,"line",["line","block","underline","line-thin","block-outline","underline-thin"],V,{description:h.a("cursorStyle","Controls the cursor style.")})),cursorSurroundingLines:ht(new n(25,"cursorSurroundingLines",0,0,1073741824,{description:h.a("cursorSurroundingLines","Controls the minimal number of visible leading and trailing lines surrounding the cursor. Known as 'scrollOff' or 'scrollOffset' in some other editors.")})),cursorSurroundingLinesStyle:ht(new l(26,"cursorSurroundingLinesStyle","default",["default","all"],{enumDescriptions:[h.a("cursorSurroundingLinesStyle.default","`cursorSurroundingLines` is enforced only when triggered via the keyboard or API."),h.a("cursorSurroundingLinesStyle.all","`cursorSurroundingLines` is enforced always.")],description:h.a("cursorSurroundingLinesStyle","Controls when `cursorSurroundingLines` should be enforced.")})),cursorWidth:ht(new n(27,"cursorWidth",0,0,1073741824,{markdownDescription:h.a("cursorWidth","Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.")})),disableLayerHinting:ht(new E(28,"disableLayerHinting",!1)),disableMonospaceOptimizations:ht(new E(29,"disableMonospaceOptimizations",!1)),domReadOnly:ht(new E(30,"domReadOnly",!1)),dragAndDrop:ht(new E(31,"dragAndDrop",!0,{description:h.a("dragAndDrop","Controls whether the editor should allow moving selections via drag and drop.")})),emptySelectionClipboard:ht(new B),extraEditorClassName:ht(new m(33,"extraEditorClassName","")),fastScrollSensitivity:ht(new b(34,"fastScrollSensitivity",5,le=>le<=0?5:le,{markdownDescription:h.a("fastScrollSensitivity","Scrolling speed multiplier when pressing `Alt`.")})),find:ht(new z),fixedOverflowWidgets:ht(new E(36,"fixedOverflowWidgets",!1)),folding:ht(new E(37,"folding",!0,{description:h.a("folding","Controls whether the editor has code folding enabled.")})),foldingStrategy:ht(new l(38,"foldingStrategy","auto",["auto","indentation"],{enumDescriptions:[h.a("foldingStrategy.auto","Use a language-specific folding strategy if available, else the indentation-based one."),h.a("foldingStrategy.indentation","Use the indentation-based folding strategy.")],description:h.a("foldingStrategy","Controls the strategy for computing folding ranges.")})),foldingHighlight:ht(new E(39,"foldingHighlight",!0,{description:h.a("foldingHighlight","Controls whether the editor should highlight folded ranges.")})),foldingImportsByDefault:ht(new E(40,"foldingImportsByDefault",!1,{description:h.a("foldingImportsByDefault","Controls whether the editor automatically collapses import ranges.")})),unfoldOnClickAfterEndOfLine:ht(new E(41,"unfoldOnClickAfterEndOfLine",!1,{description:h.a("unfoldOnClickAfterEndOfLine","Controls whether clicking on the empty content after a folded line will unfold the line.")})),fontFamily:ht(new m(42,"fontFamily",wt.fontFamily,{description:h.a("fontFamily","Controls the font family.")})),fontInfo:ht(new K),fontLigatures2:ht(new Y),fontSize:ht(new Q),fontWeight:ht(new ee),formatOnPaste:ht(new E(47,"formatOnPaste",!1,{description:h.a("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:ht(new E(48,"formatOnType",!1,{description:h.a("formatOnType","Controls whether the editor should automatically format the line after typing.")})),glyphMargin:ht(new E(49,"glyphMargin",!0,{description:h.a("glyphMargin","Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.")})),gotoLocation:ht(new Se),hideCursorInOverviewRuler:ht(new E(51,"hideCursorInOverviewRuler",!1,{description:h.a("hideCursorInOverviewRuler","Controls whether the cursor should be hidden in the overview ruler.")})),hover:ht(new fe),inDiffEditor:ht(new E(53,"inDiffEditor",!1)),letterSpacing:ht(new b(55,"letterSpacing",wt.letterSpacing,le=>b.clamp(le,-5,20),{description:h.a("letterSpacing","Controls the letter spacing in pixels.")})),lightbulb:ht(new te),lineDecorationsWidth:ht(new u(57,"lineDecorationsWidth",10)),lineHeight:ht(new H),lineNumbers:ht(new Oe),lineNumbersMinChars:ht(new n(60,"lineNumbersMinChars",5,1,300)),linkedEditing:ht(new E(61,"linkedEditing",!1,{description:h.a("linkedEditing","Controls whether the editor has linked editing enabled. Depending on the language, related symbols, e.g. HTML tags, are updated while editing.")})),links:ht(new E(62,"links",!0,{description:h.a("links","Controls whether the editor should detect links and make them clickable.")})),matchBrackets:ht(new l(63,"matchBrackets","always",["always","near","never"],{description:h.a("matchBrackets","Highlight matching brackets.")})),minimap:ht(new W),mouseStyle:ht(new l(65,"mouseStyle","text",["text","default","copy"])),mouseWheelScrollSensitivity:ht(new b(66,"mouseWheelScrollSensitivity",1,le=>le===0?1:le,{markdownDescription:h.a("mouseWheelScrollSensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")})),mouseWheelZoom:ht(new E(67,"mouseWheelZoom",!1,{markdownDescription:h.a("mouseWheelZoom","Zoom the font of the editor when using mouse wheel and holding `Ctrl`.")})),multiCursorMergeOverlapping:ht(new E(68,"multiCursorMergeOverlapping",!0,{description:h.a("multiCursorMergeOverlapping","Merge multiple cursors when they are overlapping.")})),multiCursorModifier:ht(new g(69,"multiCursorModifier","altKey","alt",["ctrlCmd","alt"],ne,{markdownEnumDescriptions:[h.a("multiCursorModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),h.a("multiCursorModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],markdownDescription:h.a({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:ht(new l(70,"multiCursorPaste","spread",["spread","full"],{markdownEnumDescriptions:[h.a("multiCursorPaste.spread","Each cursor pastes a single line of the text."),h.a("multiCursorPaste.full","Each cursor pastes the full text.")],markdownDescription:h.a("multiCursorPaste","Controls pasting when the line count of the pasted text matches the cursor count.")})),occurrencesHighlight:ht(new E(71,"occurrencesHighlight",!0,{description:h.a("occurrencesHighlight","Controls whether the editor should highlight semantic symbol occurrences.")})),overviewRulerBorder:ht(new E(72,"overviewRulerBorder",!0,{description:h.a("overviewRulerBorder","Controls whether a border should be drawn around the overview ruler.")})),overviewRulerLanes:ht(new n(73,"overviewRulerLanes",3,0,3)),padding:ht(new Ce),parameterHints:ht(new Le),peekWidgetDefaultFocus:ht(new l(76,"peekWidgetDefaultFocus","tree",["tree","editor"],{enumDescriptions:[h.a("peekWidgetDefaultFocus.tree","Focus the tree when opening peek"),h.a("peekWidgetDefaultFocus.editor","Focus the editor when opening peek")],description:h.a("peekWidgetDefaultFocus","Controls whether to focus the inline editor or the tree in the peek widget.")})),definitionLinkOpensInPeek:ht(new E(77,"definitionLinkOpensInPeek",!1,{description:h.a("definitionLinkOpensInPeek","Controls whether the Go to Definition mouse gesture always opens the peek widget.")})),quickSuggestions:ht(new me),quickSuggestionsDelay:ht(new n(79,"quickSuggestionsDelay",10,0,1073741824,{description:h.a("quickSuggestionsDelay","Controls the delay in milliseconds after which quick suggestions will show up.")})),readOnly:ht(new E(80,"readOnly",!1)),renameOnType:ht(new E(81,"renameOnType",!1,{description:h.a("renameOnType","Controls whether the editor auto renames on type."),markdownDeprecationMessage:h.a("renameOnTypeDeprecate","Deprecated, use `editor.linkedEditing` instead.")})),renderControlCharacters:ht(new E(82,"renderControlCharacters",!0,{description:h.a("renderControlCharacters","Controls whether the editor should render control characters."),restricted:!0})),renderFinalNewline:ht(new E(83,"renderFinalNewline",!0,{description:h.a("renderFinalNewline","Render last line number when the file ends with a newline.")})),renderLineHighlight:ht(new l(84,"renderLineHighlight","line",["none","gutter","line","all"],{enumDescriptions:["","","",h.a("renderLineHighlight.all","Highlights both the gutter and the current line.")],description:h.a("renderLineHighlight","Controls how the editor should render the current line highlight.")})),renderLineHighlightOnlyWhenFocus:ht(new E(85,"renderLineHighlightOnlyWhenFocus",!1,{description:h.a("renderLineHighlightOnlyWhenFocus","Controls if the editor should render the current line highlight only when the editor is focused.")})),renderValidationDecorations:ht(new l(86,"renderValidationDecorations","editable",["editable","on","off"])),renderWhitespace:ht(new l(87,"renderWhitespace","selection",["none","boundary","selection","trailing","all"],{enumDescriptions:["",h.a("renderWhitespace.boundary","Render whitespace characters except for single spaces between words."),h.a("renderWhitespace.selection","Render whitespace characters only on selected text."),h.a("renderWhitespace.trailing","Render only trailing whitespace characters."),""],description:h.a("renderWhitespace","Controls how the editor should render whitespace characters.")})),revealHorizontalRightPadding:ht(new n(88,"revealHorizontalRightPadding",30,0,1e3)),roundedSelection:ht(new E(89,"roundedSelection",!0,{description:h.a("roundedSelection","Controls whether selections should have rounded corners.")})),rulers:ht(new De),scrollbar:ht(new ve),scrollBeyondLastColumn:ht(new n(92,"scrollBeyondLastColumn",5,0,1073741824,{description:h.a("scrollBeyondLastColumn","Controls the number of extra characters beyond which the editor will scroll horizontally.")})),scrollBeyondLastLine:ht(new E(93,"scrollBeyondLastLine",!0,{description:h.a("scrollBeyondLastLine","Controls whether the editor will scroll beyond the last line.")})),scrollPredominantAxis:ht(new E(94,"scrollPredominantAxis",!0,{description:h.a("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:ht(new E(95,"selectionClipboard",!0,{description:h.a("selectionClipboard","Controls whether the Linux primary clipboard should be supported."),included:P.d})),selectionHighlight:ht(new E(96,"selectionHighlight",!0,{description:h.a("selectionHighlight","Controls whether the editor should highlight matches similar to the selection.")})),selectOnLineNumbers:ht(new E(97,"selectOnLineNumbers",!0)),showFoldingControls:ht(new l(98,"showFoldingControls","mouseover",["always","mouseover"],{enumDescriptions:[h.a("showFoldingControls.always","Always show the folding controls."),h.a("showFoldingControls.mouseover","Only show the folding controls when the mouse is over the gutter.")],description:h.a("showFoldingControls","Controls when the folding controls on the gutter are shown.")})),showUnused:ht(new E(99,"showUnused",!0,{description:h.a("showUnused","Controls fading out of unused code.")})),showDeprecated:ht(new E(124,"showDeprecated",!0,{description:h.a("showDeprecated","Controls strikethrough deprecated variables.")})),inlayHints:ht(new U),snippetSuggestions:ht(new l(100,"snippetSuggestions","inline",["top","bottom","inline","none"],{enumDescriptions:[h.a("snippetSuggestions.top","Show snippet suggestions on top of other suggestions."),h.a("snippetSuggestions.bottom","Show snippet suggestions below other suggestions."),h.a("snippetSuggestions.inline","Show snippets suggestions with other suggestions."),h.a("snippetSuggestions.none","Do not show snippet suggestions.")],description:h.a("snippetSuggestions","Controls whether snippets are shown with other suggestions and how they are sorted.")})),smartSelect:ht(new ze),smoothScrolling:ht(new E(102,"smoothScrolling",!1,{description:h.a("smoothScrolling","Controls whether the editor will scroll using an animation.")})),stopRenderingLineAfter:ht(new n(104,"stopRenderingLineAfter",1e4,-1,1073741824)),suggest:ht(new ye),inlineSuggest:ht(new re),suggestFontSize:ht(new n(106,"suggestFontSize",0,0,1e3,{markdownDescription:h.a("suggestFontSize","Font size for the suggest widget. When set to `0`, the value of `#editor.fontSize#` is used.")})),suggestLineHeight:ht(new n(107,"suggestLineHeight",0,0,1e3,{markdownDescription:h.a("suggestLineHeight","Line height for the suggest widget. When set to `0`, the value of `#editor.lineHeight#` is used. The minimum value is 8.")})),suggestOnTriggerCharacters:ht(new E(108,"suggestOnTriggerCharacters",!0,{description:h.a("suggestOnTriggerCharacters","Controls whether suggestions should automatically show up when typing trigger characters.")})),suggestSelection:ht(new l(109,"suggestSelection","recentlyUsed",["first","recentlyUsed","recentlyUsedByPrefix"],{markdownEnumDescriptions:[h.a("suggestSelection.first","Always select the first suggestion."),h.a("suggestSelection.recentlyUsed","Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently."),h.a("suggestSelection.recentlyUsedByPrefix","Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.")],description:h.a("suggestSelection","Controls how suggestions are pre-selected when showing the suggest list.")})),tabCompletion:ht(new l(110,"tabCompletion","off",["on","off","onlySnippets"],{enumDescriptions:[h.a("tabCompletion.on","Tab complete will insert the best matching suggestion when pressing tab."),h.a("tabCompletion.off","Disable tab completions."),h.a("tabCompletion.onlySnippets","Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.")],description:h.a("tabCompletion","Enables tab completions.")})),tabIndex:ht(new n(111,"tabIndex",0,-1,1073741824)),unusualLineTerminators:ht(new l(112,"unusualLineTerminators","prompt",["auto","off","prompt"],{enumDescriptions:[h.a("unusualLineTerminators.auto","Unusual line terminators are automatically removed."),h.a("unusualLineTerminators.off","Unusual line terminators are ignored."),h.a("unusualLineTerminators.prompt","Unusual line terminators prompt to be removed.")],description:h.a("unusualLineTerminators","Remove unusual line terminators that might cause problems.")})),useShadowDOM:ht(new E(113,"useShadowDOM",!0)),useTabStops:ht(new E(114,"useTabStops",!0,{description:h.a("useTabStops","Inserting and deleting whitespace follows tab stops.")})),wordSeparators:ht(new m(115,"wordSeparators",L.b,{description:h.a("wordSeparators","Characters that will be used as word separators when doing word related navigations or operations.")})),wordWrap:ht(new l(116,"wordWrap","off",["off","on","wordWrapColumn","bounded"],{markdownEnumDescriptions:[h.a("wordWrap.off","Lines will never wrap."),h.a("wordWrap.on","Lines will wrap at the viewport width."),h.a({key:"wordWrap.wordWrapColumn",comment:["- `editor.wordWrapColumn` refers to a different setting and should not be localized."]},"Lines will wrap at `#editor.wordWrapColumn#`."),h.a({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:h.a({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:ht(new m(117,"wordWrapBreakAfterCharacters"," })]?|/&.,;\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:ht(new m(118,"wordWrapBreakBeforeCharacters","([{\u2018\u201C\u3008\u300A\u300C\u300E\u3010\u3014\uFF08\uFF3B\uFF5B\uFF62\xA3\xA5\uFF04\uFFE1\uFFE5+\uFF0B")),wordWrapColumn:ht(new n(119,"wordWrapColumn",80,1,1073741824,{markdownDescription:h.a({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:ht(new l(120,"wordWrapOverride1","inherit",["off","on","inherit"])),wordWrapOverride2:ht(new l(121,"wordWrapOverride2","inherit",["off","on","inherit"])),wrappingIndent:ht(new g(122,"wrappingIndent",1,"same",["none","same","indent","deepIndent"],Te,{enumDescriptions:[h.a("wrappingIndent.none","No indentation. Wrapped lines begin at column 1."),h.a("wrappingIndent.same","Wrapped lines get the same indentation as the parent."),h.a("wrappingIndent.indent","Wrapped lines get +1 indentation toward the parent."),h.a("wrappingIndent.deepIndent","Wrapped lines get +2 indentation toward the parent.")],description:h.a("wrappingIndent","Controls the indentation of wrapped lines.")})),wrappingStrategy:ht(new l(123,"wrappingStrategy","simple",["simple","advanced"],{enumDescriptions:[h.a("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."),h.a("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:h.a("wrappingStrategy","Controls the algorithm that computes wrapping points.")})),editorClassName:ht(new G),pixelRatio:ht(new ce),tabFocusMode:ht(new xe),layoutInfo:ht(new q),wrappingInfo:ht(new He)}},"/cAr":function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"msdax",extensions:[".dax",".msdax"],aliases:["DAX","MSDAX"],loader:function(){return e.e(354).then(e.bind(null,"8m5U"))}})},"/kV6":function(ft,w,e){"use strict";e.d(w,"a",function(){return I}),e.d(w,"b",function(){return u}),e.d(w,"d",function(){return E}),e.d(w,"c",function(){return p});class h{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(n,b){this._keyCodeToStr[n]=b,this._strToKeyCode[b.toLowerCase()]=n}keyCodeToStr(n){return this._keyCodeToStr[n]}strToKeyCode(n){return this._strToKeyCode[n.toLowerCase()]||0}}const P=new h,L=new h,A=new h,I=new Array(230),k={},O=[],S=Object.create(null),f=Object.create(null),u=[],d=[];for(let n=0;n<=193;n++)u[n]=-1;for(let n=0;n<=126;n++)d[n]=-1;(function(){const n="",b=[[0,1,0,"None",0,"unknown",0,"VK_UNKNOWN",n,n],[0,1,1,"Hyper",0,n,0,n,n,n],[0,1,2,"Super",0,n,0,n,n,n],[0,1,3,"Fn",0,n,0,n,n,n],[0,1,4,"FnLock",0,n,0,n,n,n],[0,1,5,"Suspend",0,n,0,n,n,n],[0,1,6,"Resume",0,n,0,n,n,n],[0,1,7,"Turbo",0,n,0,n,n,n],[0,1,8,"Sleep",0,n,0,"VK_SLEEP",n,n],[0,1,9,"WakeUp",0,n,0,n,n,n],[31,0,10,"KeyA",31,"A",65,"VK_A",n,n],[32,0,11,"KeyB",32,"B",66,"VK_B",n,n],[33,0,12,"KeyC",33,"C",67,"VK_C",n,n],[34,0,13,"KeyD",34,"D",68,"VK_D",n,n],[35,0,14,"KeyE",35,"E",69,"VK_E",n,n],[36,0,15,"KeyF",36,"F",70,"VK_F",n,n],[37,0,16,"KeyG",37,"G",71,"VK_G",n,n],[38,0,17,"KeyH",38,"H",72,"VK_H",n,n],[39,0,18,"KeyI",39,"I",73,"VK_I",n,n],[40,0,19,"KeyJ",40,"J",74,"VK_J",n,n],[41,0,20,"KeyK",41,"K",75,"VK_K",n,n],[42,0,21,"KeyL",42,"L",76,"VK_L",n,n],[43,0,22,"KeyM",43,"M",77,"VK_M",n,n],[44,0,23,"KeyN",44,"N",78,"VK_N",n,n],[45,0,24,"KeyO",45,"O",79,"VK_O",n,n],[46,0,25,"KeyP",46,"P",80,"VK_P",n,n],[47,0,26,"KeyQ",47,"Q",81,"VK_Q",n,n],[48,0,27,"KeyR",48,"R",82,"VK_R",n,n],[49,0,28,"KeyS",49,"S",83,"VK_S",n,n],[50,0,29,"KeyT",50,"T",84,"VK_T",n,n],[51,0,30,"KeyU",51,"U",85,"VK_U",n,n],[52,0,31,"KeyV",52,"V",86,"VK_V",n,n],[53,0,32,"KeyW",53,"W",87,"VK_W",n,n],[54,0,33,"KeyX",54,"X",88,"VK_X",n,n],[55,0,34,"KeyY",55,"Y",89,"VK_Y",n,n],[56,0,35,"KeyZ",56,"Z",90,"VK_Z",n,n],[22,0,36,"Digit1",22,"1",49,"VK_1",n,n],[23,0,37,"Digit2",23,"2",50,"VK_2",n,n],[24,0,38,"Digit3",24,"3",51,"VK_3",n,n],[25,0,39,"Digit4",25,"4",52,"VK_4",n,n],[26,0,40,"Digit5",26,"5",53,"VK_5",n,n],[27,0,41,"Digit6",27,"6",54,"VK_6",n,n],[28,0,42,"Digit7",28,"7",55,"VK_7",n,n],[29,0,43,"Digit8",29,"8",56,"VK_8",n,n],[30,0,44,"Digit9",30,"9",57,"VK_9",n,n],[21,0,45,"Digit0",21,"0",48,"VK_0",n,n],[3,1,46,"Enter",3,"Enter",13,"VK_RETURN",n,n],[9,1,47,"Escape",9,"Escape",27,"VK_ESCAPE",n,n],[1,1,48,"Backspace",1,"Backspace",8,"VK_BACK",n,n],[2,1,49,"Tab",2,"Tab",9,"VK_TAB",n,n],[10,1,50,"Space",10,"Space",32,"VK_SPACE",n,n],[83,0,51,"Minus",83,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[81,0,52,"Equal",81,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[87,0,53,"BracketLeft",87,"[",219,"VK_OEM_4","[","OEM_4"],[89,0,54,"BracketRight",89,"]",221,"VK_OEM_6","]","OEM_6"],[88,0,55,"Backslash",88,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,0,56,"IntlHash",0,n,0,n,n,n],[80,0,57,"Semicolon",80,";",186,"VK_OEM_1",";","OEM_1"],[90,0,58,"Quote",90,"'",222,"VK_OEM_7","'","OEM_7"],[86,0,59,"Backquote",86,"`",192,"VK_OEM_3","`","OEM_3"],[82,0,60,"Comma",82,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[84,0,61,"Period",84,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[85,0,62,"Slash",85,"/",191,"VK_OEM_2","/","OEM_2"],[8,1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL",n,n],[59,1,64,"F1",59,"F1",112,"VK_F1",n,n],[60,1,65,"F2",60,"F2",113,"VK_F2",n,n],[61,1,66,"F3",61,"F3",114,"VK_F3",n,n],[62,1,67,"F4",62,"F4",115,"VK_F4",n,n],[63,1,68,"F5",63,"F5",116,"VK_F5",n,n],[64,1,69,"F6",64,"F6",117,"VK_F6",n,n],[65,1,70,"F7",65,"F7",118,"VK_F7",n,n],[66,1,71,"F8",66,"F8",119,"VK_F8",n,n],[67,1,72,"F9",67,"F9",120,"VK_F9",n,n],[68,1,73,"F10",68,"F10",121,"VK_F10",n,n],[69,1,74,"F11",69,"F11",122,"VK_F11",n,n],[70,1,75,"F12",70,"F12",123,"VK_F12",n,n],[0,1,76,"PrintScreen",0,n,0,n,n,n],[79,1,77,"ScrollLock",79,"ScrollLock",145,"VK_SCROLL",n,n],[7,1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE",n,n],[19,1,79,"Insert",19,"Insert",45,"VK_INSERT",n,n],[14,1,80,"Home",14,"Home",36,"VK_HOME",n,n],[11,1,81,"PageUp",11,"PageUp",33,"VK_PRIOR",n,n],[20,1,82,"Delete",20,"Delete",46,"VK_DELETE",n,n],[13,1,83,"End",13,"End",35,"VK_END",n,n],[12,1,84,"PageDown",12,"PageDown",34,"VK_NEXT",n,n],[17,1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",n],[15,1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",n],[18,1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",n],[16,1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",n],[78,1,89,"NumLock",78,"NumLock",144,"VK_NUMLOCK",n,n],[108,1,90,"NumpadDivide",108,"NumPad_Divide",111,"VK_DIVIDE",n,n],[103,1,91,"NumpadMultiply",103,"NumPad_Multiply",106,"VK_MULTIPLY",n,n],[106,1,92,"NumpadSubtract",106,"NumPad_Subtract",109,"VK_SUBTRACT",n,n],[104,1,93,"NumpadAdd",104,"NumPad_Add",107,"VK_ADD",n,n],[3,1,94,"NumpadEnter",3,n,0,n,n,n],[94,1,95,"Numpad1",94,"NumPad1",97,"VK_NUMPAD1",n,n],[95,1,96,"Numpad2",95,"NumPad2",98,"VK_NUMPAD2",n,n],[96,1,97,"Numpad3",96,"NumPad3",99,"VK_NUMPAD3",n,n],[97,1,98,"Numpad4",97,"NumPad4",100,"VK_NUMPAD4",n,n],[98,1,99,"Numpad5",98,"NumPad5",101,"VK_NUMPAD5",n,n],[99,1,100,"Numpad6",99,"NumPad6",102,"VK_NUMPAD6",n,n],[100,1,101,"Numpad7",100,"NumPad7",103,"VK_NUMPAD7",n,n],[101,1,102,"Numpad8",101,"NumPad8",104,"VK_NUMPAD8",n,n],[102,1,103,"Numpad9",102,"NumPad9",105,"VK_NUMPAD9",n,n],[93,1,104,"Numpad0",93,"NumPad0",96,"VK_NUMPAD0",n,n],[107,1,105,"NumpadDecimal",107,"NumPad_Decimal",110,"VK_DECIMAL",n,n],[92,0,106,"IntlBackslash",92,"OEM_102",226,"VK_OEM_102",n,n],[58,1,107,"ContextMenu",58,"ContextMenu",93,n,n,n],[0,1,108,"Power",0,n,0,n,n,n],[0,1,109,"NumpadEqual",0,n,0,n,n,n],[71,1,110,"F13",71,"F13",124,"VK_F13",n,n],[72,1,111,"F14",72,"F14",125,"VK_F14",n,n],[73,1,112,"F15",73,"F15",126,"VK_F15",n,n],[74,1,113,"F16",74,"F16",127,"VK_F16",n,n],[75,1,114,"F17",75,"F17",128,"VK_F17",n,n],[76,1,115,"F18",76,"F18",129,"VK_F18",n,n],[77,1,116,"F19",77,"F19",130,"VK_F19",n,n],[0,1,117,"F20",0,n,0,"VK_F20",n,n],[0,1,118,"F21",0,n,0,"VK_F21",n,n],[0,1,119,"F22",0,n,0,"VK_F22",n,n],[0,1,120,"F23",0,n,0,"VK_F23",n,n],[0,1,121,"F24",0,n,0,"VK_F24",n,n],[0,1,122,"Open",0,n,0,n,n,n],[0,1,123,"Help",0,n,0,n,n,n],[0,1,124,"Select",0,n,0,n,n,n],[0,1,125,"Again",0,n,0,n,n,n],[0,1,126,"Undo",0,n,0,n,n,n],[0,1,127,"Cut",0,n,0,n,n,n],[0,1,128,"Copy",0,n,0,n,n,n],[0,1,129,"Paste",0,n,0,n,n,n],[0,1,130,"Find",0,n,0,n,n,n],[0,1,131,"AudioVolumeMute",112,"AudioVolumeMute",173,"VK_VOLUME_MUTE",n,n],[0,1,132,"AudioVolumeUp",113,"AudioVolumeUp",175,"VK_VOLUME_UP",n,n],[0,1,133,"AudioVolumeDown",114,"AudioVolumeDown",174,"VK_VOLUME_DOWN",n,n],[105,1,134,"NumpadComma",105,"NumPad_Separator",108,"VK_SEPARATOR",n,n],[110,0,135,"IntlRo",110,"ABNT_C1",193,"VK_ABNT_C1",n,n],[0,1,136,"KanaMode",0,n,0,n,n,n],[0,0,137,"IntlYen",0,n,0,n,n,n],[0,1,138,"Convert",0,n,0,n,n,n],[0,1,139,"NonConvert",0,n,0,n,n,n],[0,1,140,"Lang1",0,n,0,n,n,n],[0,1,141,"Lang2",0,n,0,n,n,n],[0,1,142,"Lang3",0,n,0,n,n,n],[0,1,143,"Lang4",0,n,0,n,n,n],[0,1,144,"Lang5",0,n,0,n,n,n],[0,1,145,"Abort",0,n,0,n,n,n],[0,1,146,"Props",0,n,0,n,n,n],[0,1,147,"NumpadParenLeft",0,n,0,n,n,n],[0,1,148,"NumpadParenRight",0,n,0,n,n,n],[0,1,149,"NumpadBackspace",0,n,0,n,n,n],[0,1,150,"NumpadMemoryStore",0,n,0,n,n,n],[0,1,151,"NumpadMemoryRecall",0,n,0,n,n,n],[0,1,152,"NumpadMemoryClear",0,n,0,n,n,n],[0,1,153,"NumpadMemoryAdd",0,n,0,n,n,n],[0,1,154,"NumpadMemorySubtract",0,n,0,n,n,n],[0,1,155,"NumpadClear",0,n,0,n,n,n],[0,1,156,"NumpadClearEntry",0,n,0,n,n,n],[5,1,0,n,5,"Ctrl",17,"VK_CONTROL",n,n],[4,1,0,n,4,"Shift",16,"VK_SHIFT",n,n],[6,1,0,n,6,"Alt",18,"VK_MENU",n,n],[57,1,0,n,57,"Meta",0,"VK_COMMAND",n,n],[5,1,157,"ControlLeft",5,n,0,"VK_LCONTROL",n,n],[4,1,158,"ShiftLeft",4,n,0,"VK_LSHIFT",n,n],[6,1,159,"AltLeft",6,n,0,"VK_LMENU",n,n],[57,1,160,"MetaLeft",57,n,0,"VK_LWIN",n,n],[5,1,161,"ControlRight",5,n,0,"VK_RCONTROL",n,n],[4,1,162,"ShiftRight",4,n,0,"VK_RSHIFT",n,n],[6,1,163,"AltRight",6,n,0,"VK_RMENU",n,n],[57,1,164,"MetaRight",57,n,0,"VK_RWIN",n,n],[0,1,165,"BrightnessUp",0,n,0,n,n,n],[0,1,166,"BrightnessDown",0,n,0,n,n,n],[0,1,167,"MediaPlay",0,n,0,n,n,n],[0,1,168,"MediaRecord",0,n,0,n,n,n],[0,1,169,"MediaFastForward",0,n,0,n,n,n],[0,1,170,"MediaRewind",0,n,0,n,n,n],[114,1,171,"MediaTrackNext",119,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK",n,n],[115,1,172,"MediaTrackPrevious",120,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK",n,n],[116,1,173,"MediaStop",121,"MediaStop",178,"VK_MEDIA_STOP",n,n],[0,1,174,"Eject",0,n,0,n,n,n],[117,1,175,"MediaPlayPause",122,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE",n,n],[0,1,176,"MediaSelect",123,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT",n,n],[0,1,177,"LaunchMail",124,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL",n,n],[0,1,178,"LaunchApp2",125,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2",n,n],[0,1,179,"LaunchApp1",0,n,0,"VK_MEDIA_LAUNCH_APP1",n,n],[0,1,180,"SelectTask",0,n,0,n,n,n],[0,1,181,"LaunchScreenSaver",0,n,0,n,n,n],[0,1,182,"BrowserSearch",115,"BrowserSearch",170,"VK_BROWSER_SEARCH",n,n],[0,1,183,"BrowserHome",116,"BrowserHome",172,"VK_BROWSER_HOME",n,n],[112,1,184,"BrowserBack",117,"BrowserBack",166,"VK_BROWSER_BACK",n,n],[113,1,185,"BrowserForward",118,"BrowserForward",167,"VK_BROWSER_FORWARD",n,n],[0,1,186,"BrowserStop",0,n,0,"VK_BROWSER_STOP",n,n],[0,1,187,"BrowserRefresh",0,n,0,"VK_BROWSER_REFRESH",n,n],[0,1,188,"BrowserFavorites",0,n,0,"VK_BROWSER_FAVORITES",n,n],[0,1,189,"ZoomToggle",0,n,0,n,n,n],[0,1,190,"MailReply",0,n,0,n,n,n],[0,1,191,"MailForward",0,n,0,n,n,n],[0,1,192,"MailSend",0,n,0,n,n,n],[109,1,0,n,109,"KeyInComposition",229,n,n,n],[111,1,0,n,111,"ABNT_C2",194,"VK_ABNT_C2",n,n],[91,1,0,n,91,"OEM_8",223,"VK_OEM_8",n,n],[0,1,0,n,0,n,0,"VK_CLEAR",n,n],[0,1,0,n,0,n,0,"VK_KANA",n,n],[0,1,0,n,0,n,0,"VK_HANGUL",n,n],[0,1,0,n,0,n,0,"VK_JUNJA",n,n],[0,1,0,n,0,n,0,"VK_FINAL",n,n],[0,1,0,n,0,n,0,"VK_HANJA",n,n],[0,1,0,n,0,n,0,"VK_KANJI",n,n],[0,1,0,n,0,n,0,"VK_CONVERT",n,n],[0,1,0,n,0,n,0,"VK_NONCONVERT",n,n],[0,1,0,n,0,n,0,"VK_ACCEPT",n,n],[0,1,0,n,0,n,0,"VK_MODECHANGE",n,n],[0,1,0,n,0,n,0,"VK_SELECT",n,n],[0,1,0,n,0,n,0,"VK_PRINT",n,n],[0,1,0,n,0,n,0,"VK_EXECUTE",n,n],[0,1,0,n,0,n,0,"VK_SNAPSHOT",n,n],[0,1,0,n,0,n,0,"VK_HELP",n,n],[0,1,0,n,0,n,0,"VK_APPS",n,n],[0,1,0,n,0,n,0,"VK_PROCESSKEY",n,n],[0,1,0,n,0,n,0,"VK_PACKET",n,n],[0,1,0,n,0,n,0,"VK_DBE_SBCSCHAR",n,n],[0,1,0,n,0,n,0,"VK_DBE_DBCSCHAR",n,n],[0,1,0,n,0,n,0,"VK_ATTN",n,n],[0,1,0,n,0,n,0,"VK_CRSEL",n,n],[0,1,0,n,0,n,0,"VK_EXSEL",n,n],[0,1,0,n,0,n,0,"VK_EREOF",n,n],[0,1,0,n,0,n,0,"VK_PLAY",n,n],[0,1,0,n,0,n,0,"VK_ZOOM",n,n],[0,1,0,n,0,n,0,"VK_NONAME",n,n],[0,1,0,n,0,n,0,"VK_PA1",n,n],[0,1,0,n,0,n,0,"VK_OEM_CLEAR",n,n]];let m=[],c=[];for(const l of b){const[g,y,C,v,D,j,V,G,B,z]=l;if(c[C]||(c[C]=!0,O[C]=v,S[v]=C,f[v.toLowerCase()]=C,y&&(u[C]=D,D!==0&&D!==3&&D!==5&&D!==4&&D!==6&&D!==57&&(d[D]=C))),!m[D]){if(m[D]=!0,!j)throw new Error(`String representation missing for key code ${D} around scan code ${v}`);P.define(D,j),L.define(D,B||j),A.define(D,z||B||j)}V&&(I[V]=D),G&&(k[G]=D)}d[3]=46})();var E;(function(n){function b(C){return P.keyCodeToStr(C)}n.toString=b;function m(C){return P.strToKeyCode(C)}n.fromString=m;function c(C){return L.keyCodeToStr(C)}n.toUserSettingsUS=c;function l(C){return A.keyCodeToStr(C)}n.toUserSettingsGeneral=l;function g(C){return L.strToKeyCode(C)||A.strToKeyCode(C)}n.fromUserSettings=g;function y(C){if(C>=93&&C<=108)return null;switch(C){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return P.keyCodeToStr(C)}n.toElectronAccelerator=y})(E||(E={}));function p(n,b){const m=(b&65535)<<16>>>0;return(n|m)>>>0}},"/oaI":function(ft,w,e){},"0+8E":function(ft,w,e){"use strict";e.d(w,"b",function(){return c}),e.d(w,"a",function(){return l});var h=e("EffR"),P=e("4y0V"),L=e("Md8J"),A=e("WqXY"),I=e("OBOq"),k=e("GJhM"),O=e("G300"),S=e("zrhQ"),f=e("MI8n");class u{constructor(g,y=0,C=g.length,v=y-1){this.items=g,this.start=y,this.end=C,this.index=v}current(){return this.index===this.start-1||this.index===this.end?null:this.items[this.index]}next(){return this.index=Math.min(this.index+1,this.end),this.current()}previous(){return this.index=Math.max(this.index-1,this.start-1),this.current()}first(){return this.index=this.start,this.current()}last(){return this.index=this.end-1,this.current()}}class d{constructor(g=[],y=10){this._initialize(g),this._limit=y,this._onChange()}getHistory(){return this._elements}add(g){this._history.delete(g),this._history.add(g),this._onChange()}next(){return this._currentPosition()!==this._elements.length-1?this._navigator.next():null}previous(){return this._currentPosition()!==0?this._navigator.previous():null}current(){return this._navigator.current()}first(){return this._navigator.first()}last(){return this._navigator.last()}has(g){return this._history.has(g)}_onChange(){this._reduceToLimit();const g=this._elements;this._navigator=new u(g,0,g.length,g.length)}_reduceToLimit(){const g=this._elements;g.length>this._limit&&this._initialize(g.slice(g.length-this._limit))}_currentPosition(){const g=this._navigator.current();return g?this._elements.indexOf(g):-1}_initialize(g){this._history=new Set;for(const y of g)this._history.add(y)}get _elements(){const g=[];return this._history.forEach(y=>g.push(y)),g}}var E=e("qj0h"),p=e("i/Rh"),n=e("3/fG");const b=h.a,m={inputBackground:S.a.fromHex("#3C3C3C"),inputForeground:S.a.fromHex("#CCCCCC"),inputValidationInfoBorder:S.a.fromHex("#55AAFF"),inputValidationInfoBackground:S.a.fromHex("#063B49"),inputValidationWarningBorder:S.a.fromHex("#B89500"),inputValidationWarningBackground:S.a.fromHex("#352A05"),inputValidationErrorBorder:S.a.fromHex("#BE1100"),inputValidationErrorBackground:S.a.fromHex("#5A1D1D")};class c extends O.a{constructor(g,y,C){var v;super();this.state="idle",this.maxHeight=Number.POSITIVE_INFINITY,this._onDidChange=this._register(new f.b),this.onDidChange=this._onDidChange.event,this._onDidHeightChange=this._register(new f.b),this.onDidHeightChange=this._onDidHeightChange.event,this.contextViewProvider=y,this.options=C||Object.create(null),Object(E.f)(this.options,m,!1),this.message=null,this.placeholder=this.options.placeholder||"",this.tooltip=(v=this.options.tooltip)!==null&&v!==void 0?v:this.placeholder||"",this.ariaLabel=this.options.ariaLabel||"",this.inputBackground=this.options.inputBackground,this.inputForeground=this.options.inputForeground,this.inputBorder=this.options.inputBorder,this.inputValidationInfoBorder=this.options.inputValidationInfoBorder,this.inputValidationInfoBackground=this.options.inputValidationInfoBackground,this.inputValidationInfoForeground=this.options.inputValidationInfoForeground,this.inputValidationWarningBorder=this.options.inputValidationWarningBorder,this.inputValidationWarningBackground=this.options.inputValidationWarningBackground,this.inputValidationWarningForeground=this.options.inputValidationWarningForeground,this.inputValidationErrorBorder=this.options.inputValidationErrorBorder,this.inputValidationErrorBackground=this.options.inputValidationErrorBackground,this.inputValidationErrorForeground=this.options.inputValidationErrorForeground,this.options.validationOptions&&(this.validation=this.options.validationOptions.validation),this.element=h.q(g,b(".monaco-inputbox.idle"));let D=this.options.flexibleHeight?"textarea":"input",j=h.q(this.element,b(".ibwrapper"));if(this.input=h.q(j,b(D+".input.empty")),this.input.setAttribute("autocorrect","off"),this.input.setAttribute("autocapitalize","off"),this.input.setAttribute("spellcheck","false"),this.onfocus(this.input,()=>this.element.classList.add("synthetic-focus")),this.onblur(this.input,()=>this.element.classList.remove("synthetic-focus")),this.options.flexibleHeight){this.maxHeight=typeof this.options.flexibleMaxHeight=="number"?this.options.flexibleMaxHeight:Number.POSITIVE_INFINITY,this.mirror=h.q(j,b("div.mirror")),this.mirror.innerText="\xA0",this.scrollableElement=new k.b(this.element,{vertical:1}),this.options.flexibleWidth&&(this.input.setAttribute("wrap","off"),this.mirror.style.whiteSpace="pre",this.mirror.style.wordWrap="initial"),h.q(g,this.scrollableElement.getDomNode()),this._register(this.scrollableElement),this._register(this.scrollableElement.onScroll(B=>this.input.scrollTop=B.scrollTop));const V=this._register(new P.a(document,"selectionchange")),G=f.c.filter(V.event,()=>{const B=document.getSelection();return(B==null?void 0:B.anchorNode)===j});this._register(G(this.updateScrollDimensions,this)),this._register(this.onDidHeightChange(this.updateScrollDimensions,this))}else this.input.type=this.options.type||"text",this.input.setAttribute("wrap","off");this.ariaLabel&&this.input.setAttribute("aria-label",this.ariaLabel),this.placeholder&&!this.options.showPlaceholderOnFocus&&this.setPlaceHolder(this.placeholder),this.tooltip&&this.setTooltip(this.tooltip),this.oninput(this.input,()=>this.onValueChange()),this.onblur(this.input,()=>this.onBlur()),this.onfocus(this.input,()=>this.onFocus()),this.ignoreGesture(this.input),setTimeout(()=>this.updateMirror(),0),this.options.actions&&(this.actionbar=this._register(new A.a(this.element)),this.actionbar.push(this.options.actions,{icon:!0,label:!1})),this.applyStyles()}onBlur(){this._hideMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder","")}onFocus(){this._showMessage(),this.options.showPlaceholderOnFocus&&this.input.setAttribute("placeholder",this.placeholder||"")}setPlaceHolder(g){this.placeholder=g,this.input.setAttribute("placeholder",g)}setTooltip(g){this.tooltip=g,this.input.title=g}setAriaLabel(g){this.ariaLabel=g,g?this.input.setAttribute("aria-label",this.ariaLabel):this.input.removeAttribute("aria-label")}getAriaLabel(){return this.ariaLabel}get inputElement(){return this.input}get value(){return this.input.value}set value(g){this.input.value!==g&&(this.input.value=g,this.onValueChange())}get height(){return typeof this.cachedHeight=="number"?this.cachedHeight:h.H(this.element)}focus(){this.input.focus()}blur(){this.input.blur()}hasFocus(){return document.activeElement===this.input}select(g=null){this.input.select(),g&&(this.input.setSelectionRange(g.start,g.end),g.end===this.input.value.length&&(this.input.scrollLeft=this.input.scrollWidth))}isSelectionAtEnd(){return this.input.selectionEnd===this.input.value.length&&this.input.selectionStart===this.input.selectionEnd}enable(){this.input.removeAttribute("disabled")}disable(){this.blur(),this.input.disabled=!0,this._hideMessage()}get width(){return h.I(this.input)}set width(g){if(this.options.flexibleHeight&&this.options.flexibleWidth){let y=0;if(this.mirror){const C=parseFloat(this.mirror.style.paddingLeft||"")||0,v=parseFloat(this.mirror.style.paddingRight||"")||0;y=C+v}this.input.style.width=g-y+"px"}else this.input.style.width=g+"px";this.mirror&&(this.mirror.style.width=g+"px")}set paddingRight(g){this.options.flexibleHeight&&this.options.flexibleWidth?this.input.style.width=`calc(100% - ${g}px)`:this.input.style.paddingRight=g+"px",this.mirror&&(this.mirror.style.paddingRight=g+"px")}updateScrollDimensions(){if(typeof this.cachedContentHeight!="number"||typeof this.cachedHeight!="number"||!this.scrollableElement)return;const g=this.cachedContentHeight,y=this.cachedHeight,C=this.input.scrollTop;this.scrollableElement.setScrollDimensions({scrollHeight:g,height:y}),this.scrollableElement.setScrollPosition({scrollTop:C})}showMessage(g,y){this.message=g,this.element.classList.remove("idle"),this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add(this.classForType(g.type));const C=this.stylesForType(this.message.type);this.element.style.border=C.border?`1px solid ${C.border}`:"",(this.hasFocus()||y)&&this._showMessage()}hideMessage(){this.message=null,this.element.classList.remove("info"),this.element.classList.remove("warning"),this.element.classList.remove("error"),this.element.classList.add("idle"),this._hideMessage(),this.applyStyles()}validate(){let g=null;return this.validation&&(g=this.validation(this.value),g?(this.inputElement.setAttribute("aria-invalid","true"),this.showMessage(g)):this.inputElement.hasAttribute("aria-invalid")&&(this.inputElement.removeAttribute("aria-invalid"),this.hideMessage())),g==null?void 0:g.type}stylesForType(g){switch(g){case 1:return{border:this.inputValidationInfoBorder,background:this.inputValidationInfoBackground,foreground:this.inputValidationInfoForeground};case 2:return{border:this.inputValidationWarningBorder,background:this.inputValidationWarningBackground,foreground:this.inputValidationWarningForeground};default:return{border:this.inputValidationErrorBorder,background:this.inputValidationErrorBackground,foreground:this.inputValidationErrorForeground}}}classForType(g){switch(g){case 1:return"info";case 2:return"warning";default:return"error"}}_showMessage(){if(!this.contextViewProvider||!this.message)return;let g,y=()=>g.style.width=h.I(this.element)+"px";this.contextViewProvider.showContextView({getAnchor:()=>this.element,anchorAlignment:1,render:v=>{if(!this.message)return null;g=h.q(v,b(".monaco-inputbox-container")),y();const D={inline:!0,className:"monaco-inputbox-message"},j=this.message.formatContent?Object(L.b)(this.message.content,D):Object(L.c)(this.message.content,D);j.classList.add(this.classForType(this.message.type));const V=this.stylesForType(this.message.type);return j.style.backgroundColor=V.background?V.background.toString():"",j.style.color=V.foreground?V.foreground.toString():"",j.style.border=V.border?`1px solid ${V.border}`:"",h.q(g,j),null},onHide:()=>{this.state="closed"},layout:y});let C;this.message.type===3?C=n.a("alertErrorMessage","Error: {0}",this.message.content):this.message.type===2?C=n.a("alertWarningMessage","Warning: {0}",this.message.content):C=n.a("alertInfoMessage","Info: {0}",this.message.content),I.a(C),this.state="open"}_hideMessage(){if(!this.contextViewProvider)return;this.state==="open"&&this.contextViewProvider.hideContextView(),this.state="idle"}onValueChange(){this._onDidChange.fire(this.value),this.validate(),this.updateMirror(),this.input.classList.toggle("empty",!this.value),this.state==="open"&&this.contextViewProvider&&this.contextViewProvider.layout()}updateMirror(){if(!this.mirror)return;const g=this.value,y=g.charCodeAt(g.length-1),C=y===10?" ":"",v=(g+C).replace(/\u000c/g,"");v?this.mirror.textContent=g+C:this.mirror.innerText="\xA0",this.layout()}style(g){this.inputBackground=g.inputBackground,this.inputForeground=g.inputForeground,this.inputBorder=g.inputBorder,this.inputValidationInfoBackground=g.inputValidationInfoBackground,this.inputValidationInfoForeground=g.inputValidationInfoForeground,this.inputValidationInfoBorder=g.inputValidationInfoBorder,this.inputValidationWarningBackground=g.inputValidationWarningBackground,this.inputValidationWarningForeground=g.inputValidationWarningForeground,this.inputValidationWarningBorder=g.inputValidationWarningBorder,this.inputValidationErrorBackground=g.inputValidationErrorBackground,this.inputValidationErrorForeground=g.inputValidationErrorForeground,this.inputValidationErrorBorder=g.inputValidationErrorBorder,this.applyStyles()}applyStyles(){const g=this.inputBackground?this.inputBackground.toString():"",y=this.inputForeground?this.inputForeground.toString():"",C=this.inputBorder?this.inputBorder.toString():"";this.element.style.backgroundColor=g,this.element.style.color=y,this.input.style.backgroundColor="inherit",this.input.style.color=y,this.element.style.borderWidth=C?"1px":"",this.element.style.borderStyle=C?"solid":"",this.element.style.borderColor=C}layout(){if(!this.mirror)return;const g=this.cachedContentHeight;this.cachedContentHeight=h.H(this.mirror),g!==this.cachedContentHeight&&(this.cachedHeight=Math.min(this.cachedContentHeight,this.maxHeight),this.input.style.height=this.cachedHeight+"px",this._onDidHeightChange.fire(this.cachedContentHeight))}insertAtCursor(g){const y=this.inputElement,C=y.selectionStart,v=y.selectionEnd,D=y.value;C!==null&&v!==null&&(this.value=D.substr(0,C)+g+D.substr(v),y.setSelectionRange(C+1,C+1),this.layout())}dispose(){this._hideMessage(),this.message=null,this.actionbar&&this.actionbar.dispose(),super.dispose()}}class l extends c{constructor(g,y,C){const v=n.a({key:"history.inputbox.hint",comment:["Text will be prefixed with \u21C5 plus a single space, then used as a hint where input field keeps history"]},"for history"),D=` or \u21C5 ${v}`,j=` (\u21C5 ${v})`;super(g,y,C);this.history=new d(C.history,100);const V=()=>{if(C.showHistoryHint&&C.showHistoryHint()&&!this.placeholder.endsWith(D)&&!this.placeholder.endsWith(j)&&this.history.getHistory().length){const G=this.placeholder.endsWith(")")?D:j,B=this.placeholder+G;C.showPlaceholderOnFocus&&document.activeElement!==this.input?this.placeholder=B:this.setPlaceHolder(B)}};this.observer=new MutationObserver((G,B)=>{G.forEach(z=>{z.target.textContent||V()})}),this.observer.observe(this.input,{attributeFilter:["class"]}),this.onfocus(this.input,()=>V()),this.onblur(this.input,()=>{const G=B=>{if(this.placeholder.endsWith(B)){const z=this.placeholder.slice(0,this.placeholder.length-B.length);return C.showPlaceholderOnFocus?this.placeholder=z:this.setPlaceHolder(z),!0}else return!1};G(j)||G(D)})}dispose(){super.dispose(),this.observer&&(this.observer.disconnect(),this.observer=void 0)}addToHistory(){this.value&&this.value!==this.getCurrentValue()&&this.history.add(this.value)}showNextValue(){this.history.has(this.value)||this.addToHistory();let g=this.getNextValue();g&&(g=g===this.value?this.getNextValue():g),g&&(this.value=g,I.c(this.value))}showPreviousValue(){this.history.has(this.value)||this.addToHistory();let g=this.getPreviousValue();g&&(g=g===this.value?this.getPreviousValue():g),g&&(this.value=g,I.c(this.value))}getCurrentValue(){let g=this.history.current();return g||(g=this.history.last(),this.history.next()),g}getPreviousValue(){return this.history.previous()||this.history.first()}getNextValue(){return this.history.next()||this.history.last()}}},"0/Sa":function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("aokT");class P{static insert(L,A){return{range:new h.a(L.lineNumber,L.column,L.lineNumber,L.column),text:A,forceMoveMarkers:!0}}static delete(L){return{range:L,text:null}}static replace(L,A){return{range:L,text:A}}static replaceMove(L,A){return{range:L,text:A,forceMoveMarkers:!0}}}},"03kh":function(ft,w,e){"use strict";e.d(w,"a",function(){return E});var h=e("qj0h"),P=e("Vxe3"),L=e("nB0o"),A=e("nnTU"),I=e("T8No"),k=e("Cg/j"),O=e("sM1p"),S=e("t9D7"),f=e("R3nR"),u=function(p,n,b,m){var c=arguments.length,l=c<3?n:m===null?m=Object.getOwnPropertyDescriptor(n,b):m,g;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")l=Reflect.decorate(p,n,b,m);else for(var y=p.length-1;y>=0;y--)(g=p[y])&&(l=(c<3?g(l):c>3?g(n,b,l):g(n,b))||l);return c>3&&l&&Object.defineProperty(n,b,l),l},d=function(p,n){return function(b,m){n(b,m,p)}};let E=class extends L.a{constructor(n,b,m,c,l,g,y,C,v,D){super(n,Object.assign(Object.assign({},m.getRawOptions()),{overflowWidgetsDomNode:m.getOverflowWidgetsDomNode()}),{},c,l,g,y,C,v,D);this._parentEditor=m,this._overwriteOptions=b,super.updateOptions(this._overwriteOptions),this._register(m.onDidChangeConfiguration(j=>this._onParentConfigurationChanged(j)))}getParentEditor(){return this._parentEditor}_onParentConfigurationChanged(n){super.updateOptions(this._parentEditor.getRawOptions()),super.updateOptions(this._overwriteOptions)}updateOptions(n){h.f(this._overwriteOptions,n,!0),super.updateOptions(this._overwriteOptions)}};E=u([d(3,k.a),d(4,P.a),d(5,A.b),d(6,I.b),d(7,S.b),d(8,O.a),d(9,f.b)],E)},"09fa":function(ft,w,e){"use strict";e.d(w,"b",function(){return A}),e.d(w,"c",function(){return I}),e.d(w,"a",function(){return S}),e.d(w,"d",function(){return f});var h=e("MI8n"),P=e("pmY6"),L=e("Cg/j");const A=Object(L.c)("logService");var I;(function(u){u[u.Trace=0]="Trace",u[u.Debug=1]="Debug",u[u.Info=2]="Info",u[u.Warning=3]="Warning",u[u.Error=4]="Error",u[u.Critical=5]="Critical",u[u.Off=6]="Off"})(I||(I={}));const k=I.Info;class O extends P.a{constructor(){super(...arguments);this.level=k,this._onDidChangeLogLevel=this._register(new h.b)}setLevel(u){this.level!==u&&(this.level=u,this._onDidChangeLogLevel.fire(this.level))}getLevel(){return this.level}}class S extends O{constructor(u=k){super();this.setLevel(u)}trace(u,...d){this.getLevel()<=I.Trace&&console.log("%cTRACE","color: #888",u,...d)}debug(u,...d){this.getLevel()<=I.Debug&&console.log("%cDEBUG","background: #eee; color: #888",u,...d)}info(u,...d){this.getLevel()<=I.Info&&console.log("%c INFO","color: #33f",u,...d)}error(u,...d){this.getLevel()<=I.Error&&console.log("%c ERR","color: #f33",u,...d)}dispose(){}}class f extends P.a{constructor(u){super();this.logger=u,this._register(u)}getLevel(){return this.logger.getLevel()}trace(u,...d){this.logger.trace(u,...d)}debug(u,...d){this.logger.debug(u,...d)}info(u,...d){this.logger.info(u,...d)}error(u,...d){this.logger.error(u,...d)}}},"0JNc":function(ft,w,e){"use strict";e.d(w,"b",function(){return h}),e.d(w,"a",function(){return L}),e.d(w,"c",function(){return A}),e.d(w,"d",function(){return k});const h="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";function P(S=""){let f="(-?\\d*\\.\\d\\w*)|([^";for(const u of h){if(S.indexOf(u)>=0)continue;f+="\\"+u}return f+="\\s]+)",new RegExp(f,"g")}const L=P();function A(S){let f=L;if(S&&S instanceof RegExp)if(S.global)f=S;else{let u="g";S.ignoreCase&&(u+="i"),S.multiline&&(u+="m"),S.unicode&&(u+="u"),f=new RegExp(S.source,u)}return f.lastIndex=0,f}const I={maxLen:1e3,windowSize:15,timeBudget:150};function k(S,f,u,d,E=I){if(u.length>E.maxLen){let c=S-E.maxLen/2;return c<0?c=0:d+=c,u=u.substring(c,S+E.maxLen/2),k(S,f,u,d,E)}const p=Date.now(),n=S-1-d;let b=-1,m=null;for(let c=1;!(Date.now()-p>=E.timeBudget);c++){const l=n-E.windowSize*c;f.lastIndex=Math.max(0,l);const g=O(f,u,n,b);if(!g&&m)break;if(m=g,l<=0)break;b=l}if(m){let c={word:m[0],startColumn:d+1+m.index,endColumn:d+1+m.index+m[0].length};return f.lastIndex=0,c}return null}function O(S,f,u,d){let E;for(;E=S.exec(f);){const p=E.index||0;if(p<=u&&S.lastIndex>=u)return E;if(d>0&&p>d)return null}return null}},"0Lb2":function(ft,w,e){"use strict";e.d(w,"a",function(){return O});var h=e("FWmy"),P=e("MI8n"),L=e("pmY6"),A=e("qj0h"),I=e("aokT");const k={followsCaret:!0,ignoreCharChanges:!0,alwaysRevealFirst:!0};class O extends L.a{constructor(S,f={}){super();this._onDidUpdate=this._register(new P.b),this._editor=S,this._options=A.f(f,k,!1),this.disposed=!1,this.nextIdx=-1,this.ranges=[],this.ignoreSelectionChange=!1,this.revealFirst=Boolean(this._options.alwaysRevealFirst),this._register(this._editor.onDidDispose(()=>this.dispose())),this._register(this._editor.onDidUpdateDiff(()=>this._onDiffUpdated())),this._options.followsCaret&&this._register(this._editor.getModifiedEditor().onDidChangeCursorPosition(u=>{if(this.ignoreSelectionChange)return;this.nextIdx=-1})),this._options.alwaysRevealFirst&&this._register(this._editor.getModifiedEditor().onDidChangeModel(u=>{this.revealFirst=!0})),this._init()}_init(){let S=this._editor.getLineChanges();if(!S)return}_onDiffUpdated(){this._init(),this._compute(this._editor.getLineChanges()),this.revealFirst&&(this._editor.getLineChanges()!==null&&(this.revealFirst=!1,this.nextIdx=-1,this.next(1)))}_compute(S){this.ranges=[],S&&S.forEach(f=>{!this._options.ignoreCharChanges&&f.charChanges?f.charChanges.forEach(u=>{this.ranges.push({rhs:!0,range:new I.a(u.modifiedStartLineNumber,u.modifiedStartColumn,u.modifiedEndLineNumber,u.modifiedEndColumn)})}):f.modifiedEndLineNumber===0?this.ranges.push({rhs:!0,range:new I.a(f.modifiedStartLineNumber,1,f.modifiedStartLineNumber+1,1)}):this.ranges.push({rhs:!0,range:new I.a(f.modifiedStartLineNumber,1,f.modifiedEndLineNumber+1,1)})}),this.ranges.sort((f,u)=>I.a.compareRangesUsingStarts(f.range,u.range)),this._onDidUpdate.fire(this)}_initIdx(S){let f=!1,u=this._editor.getPosition();if(!u){this.nextIdx=0;return}for(let d=0,E=this.ranges.length;d=this.ranges.length&&(this.nextIdx=0)):(this.nextIdx-=1,this.nextIdx<0&&(this.nextIdx=this.ranges.length-1));let u=this.ranges[this.nextIdx];this.ignoreSelectionChange=!0;try{let d=u.range.getStartPosition();this._editor.setPosition(d),this._editor.revealRangeInCenter(u.range,f)}finally{this.ignoreSelectionChange=!1}}canNavigate(){return this.ranges&&this.ranges.length>0}next(S=0){this._move(!0,S)}previous(S=0){this._move(!1,S)}dispose(){super.dispose(),this.ranges=[],this.disposed=!0}}},"0af2":function(ft,w,e){"use strict";e.d(w,"a",function(){return Q}),e.d(w,"b",function(){return ee}),e.d(w,"c",function(){return Se});var h=e("MI8n"),P=e("pmY6"),L=e("MNsG"),A=e("/cxE"),I=e("/UlZ"),k=e("tX9W"),O=e("twdY"),S=e("MqQJ"),f=e("WBhO"),u=e("e0rL"),d=e("+7oY"),E=e("X+cX"),p=e("JQT/"),n=e("t9D7"),b=e("09fa"),m=e("OAO6"),c=e("7afs"),l=e("oFSf"),g=e("tYmi"),y=e("JS/N"),C=e("dM5B"),v=e("qj0h"),D=e("cMvZ"),j=function(H,W,ne,Ce){var Le=arguments.length,ce=Le<3?W:Ce===null?Ce=Object.getOwnPropertyDescriptor(W,ne):Ce,me;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ce=Reflect.decorate(H,W,ne,Ce);else for(var Oe=H.length-1;Oe>=0;Oe--)(me=H[Oe])&&(ce=(Le<3?me(ce):Le>3?me(W,ne,ce):me(W,ne))||ce);return Le>3&&ce&&Object.defineProperty(W,ne,ce),ce},V=function(H,W){return function(ne,Ce){W(ne,Ce,H)}};function G(H){return H.toString()}function B(H){const W=new c.a,ne=H.createSnapshot();let Ce;for(;Ce=ne.read();)W.update(Ce);return W.digest()}class z{constructor(H,W,ne){this._modelEventListeners=new P.b,this.model=H,this._languageSelection=null,this._languageSelectionListener=null,this._modelEventListeners.add(H.onWillDispose(()=>W(H))),this._modelEventListeners.add(H.onDidChangeLanguage(Ce=>ne(H,Ce)))}_disposeLanguageSelection(){this._languageSelectionListener&&(this._languageSelectionListener.dispose(),this._languageSelectionListener=null)}dispose(){this._modelEventListeners.dispose(),this._disposeLanguageSelection()}setLanguage(H){this._disposeLanguageSelection(),this._languageSelection=H,this._languageSelectionListener=this._languageSelection.onDidChange(()=>this.model.setMode(H.languageId)),this.model.setMode(H.languageId)}}const Y=L.d||L.f?1:2;class K{constructor(H,W,ne,Ce,Le,ce,me,Oe){this.uri=H,this.initialUndoRedoSnapshot=W,this.time=ne,this.sharesUndoRedoStack=Ce,this.heapSize=Le,this.sha1=ce,this.versionId=me,this.alternativeVersionId=Oe}}let Q=class H extends P.a{constructor(W,ne,Ce,Le,ce,me,Oe){super();this._configurationService=W,this._resourcePropertiesService=ne,this._themeService=Ce,this._logService=Le,this._undoRedoService=ce,this._modeService=me,this._languageConfigurationService=Oe,this._onModelAdded=this._register(new h.b),this.onModelAdded=this._onModelAdded.event,this._onModelRemoved=this._register(new h.b),this.onModelRemoved=this._onModelRemoved.event,this._onModelModeChanged=this._register(new h.b),this.onModelModeChanged=this._onModelModeChanged.event,this._modelCreationOptionsByLanguageAndResource=Object.create(null),this._models={},this._disposedModels=new Map,this._disposedModelsHeapSize=0,this._semanticStyling=this._register(new q(this._themeService,this._modeService,this._logService)),this._register(this._configurationService.onDidChangeConfiguration(()=>this._updateModelOptions())),this._updateModelOptions(),this._register(new fe(this,this._themeService,this._configurationService,this._semanticStyling))}static _readModelOptions(W,ne){var Ce;let Le=I.d.tabSize;if(W.editor&&typeof W.editor.tabSize!="undefined"){const we=parseInt(W.editor.tabSize,10);isNaN(we)||(Le=we),Le<1&&(Le=1)}let ce=Le;if(W.editor&&typeof W.editor.indentSize!="undefined"&&W.editor.indentSize!=="tabSize"){const we=parseInt(W.editor.indentSize,10);isNaN(we)||(ce=we),ce<1&&(ce=1)}let me=I.d.insertSpaces;W.editor&&typeof W.editor.insertSpaces!="undefined"&&(me=W.editor.insertSpaces==="false"?!1:Boolean(W.editor.insertSpaces));let Oe=Y;const oe=W.eol;oe===`\r `?Oe=2:oe===` `&&(Oe=1);let De=I.d.trimAutoWhitespace;W.editor&&typeof W.editor.trimAutoWhitespace!="undefined"&&(De=W.editor.trimAutoWhitespace==="false"?!1:Boolean(W.editor.trimAutoWhitespace));let Ne=I.d.detectIndentation;W.editor&&typeof W.editor.detectIndentation!="undefined"&&(Ne=W.editor.detectIndentation==="false"?!1:Boolean(W.editor.detectIndentation));let ve=I.d.largeFileOptimizations;W.editor&&typeof W.editor.largeFileOptimizations!="undefined"&&(ve=W.editor.largeFileOptimizations==="false"?!1:Boolean(W.editor.largeFileOptimizations));let re=I.d.bracketPairColorizationOptions;return((Ce=W.editor)===null||Ce===void 0?void 0:Ce.bracketPairColorization)&&typeof W.editor.bracketPairColorization=="object"&&(re={enabled:!!W.editor.bracketPairColorization.enabled}),{isForSimpleWidget:ne,tabSize:Le,indentSize:ce,insertSpaces:me,detectIndentation:Ne,defaultEOL:Oe,trimAutoWhitespace:De,largeFileOptimizations:ve,bracketPairColorizationOptions:re}}_getEOL(W,ne){if(W)return this._resourcePropertiesService.getEOL(W,ne);const Ce=this._configurationService.getValue("files.eol",{overrideIdentifier:ne});return Ce&&typeof Ce=="string"&&Ce!=="auto"?Ce:L.a===3||L.a===2?` `:`\r `}_shouldRestoreUndoStack(){const W=this._configurationService.getValue("files.restoreUndoStack");return typeof W=="boolean"?W:!0}getCreationOptions(W,ne,Ce){let Le=this._modelCreationOptionsByLanguageAndResource[W+ne];if(!Le){const ce=this._configurationService.getValue("editor",{overrideIdentifier:W,resource:ne}),me=this._getEOL(ne,W);Le=H._readModelOptions({editor:ce,eol:me},Ce),this._modelCreationOptionsByLanguageAndResource[W+ne]=Le}return Le}_updateModelOptions(){const W=this._modelCreationOptionsByLanguageAndResource;this._modelCreationOptionsByLanguageAndResource=Object.create(null);const ne=Object.keys(this._models);for(let Ce=0,Le=ne.length;CeW){const ne=[];for(this._disposedModels.forEach(Ce=>{Ce.sharesUndoRedoStack||ne.push(Ce)}),ne.sort((Ce,Le)=>Ce.time-Le.time);ne.length>0&&this._disposedModelsHeapSize>W;){const Ce=ne.shift();this._removeDisposedModel(Ce.uri),Ce.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(Ce.initialUndoRedoSnapshot)}}}_createModelData(W,ne,Ce,Le){const ce=this.getCreationOptions(ne,Ce,Le),me=new k.c(W,ce,ne,Ce,this._undoRedoService,this._modeService,this._languageConfigurationService);if(Ce&&this._disposedModels.has(G(Ce))){const De=this._removeDisposedModel(Ce),Ne=this._undoRedoService.getElements(Ce),ve=B(me)===De.sha1;if(ve||De.sharesUndoRedoStack){for(const re of Ne.past)Object(l.b)(re)&&re.matchesResource(Ce)&&re.setModel(me);for(const re of Ne.future)Object(l.b)(re)&&re.matchesResource(Ce)&&re.setModel(me);this._undoRedoService.setElementsValidFlag(Ce,!0,re=>Object(l.b)(re)&&re.matchesResource(Ce)),ve&&(me._overwriteVersionId(De.versionId),me._overwriteAlternativeVersionId(De.alternativeVersionId),me._overwriteInitialUndoRedoSnapshot(De.initialUndoRedoSnapshot))}else De.initialUndoRedoSnapshot!==null&&this._undoRedoService.restoreSnapshot(De.initialUndoRedoSnapshot)}const Oe=G(me.uri);if(this._models[Oe])throw new Error("ModelService: Cannot add model because it already exists!");const oe=new z(me,De=>this._onWillDispose(De),(De,Ne)=>this._onDidChangeLanguage(De,Ne));return this._models[Oe]=oe,oe}createModel(W,ne,Ce,Le=!1){let ce;return ne?(ce=this._createModelData(W,ne.languageId,Ce,Le),this.setMode(ce.model,ne)):ce=this._createModelData(W,S.b,Ce,Le),this._onModelAdded.fire(ce.model),ce.model}setMode(W,ne){if(!ne)return;const Ce=this._models[G(W.uri)];if(!Ce)return;Ce.setLanguage(ne)}getModels(){const W=[],ne=Object.keys(this._models);for(let Ce=0,Le=ne.length;Ce0||oe.future.length>0){for(const De of oe.past)Object(l.b)(De)&&De.matchesResource(W.uri)&&(ce=!0,me+=De.heapSize(W.uri),De.setModel(W.uri));for(const De of oe.future)Object(l.b)(De)&&De.matchesResource(W.uri)&&(ce=!0,me+=De.heapSize(W.uri),De.setModel(W.uri))}}const Oe=H.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK;if(ce)if(!Le&&me>Oe){const oe=Ce.model.getInitialUndoRedoSnapshot();oe!==null&&this._undoRedoService.restoreSnapshot(oe)}else this._ensureDisposedModelsHeapSize(Oe-me),this._undoRedoService.setElementsValidFlag(W.uri,!1,oe=>Object(l.b)(oe)&&oe.matchesResource(W.uri)),this._insertDisposedModel(new K(W.uri,Ce.model.getInitialUndoRedoSnapshot(),Date.now(),Le,me,B(W),W.getVersionId(),W.getAlternativeVersionId()));else if(!Le){const oe=Ce.model.getInitialUndoRedoSnapshot();oe!==null&&this._undoRedoService.restoreSnapshot(oe)}delete this._models[ne],Ce.dispose(),delete this._modelCreationOptionsByLanguageAndResource[W.getLanguageId()+W.uri],this._onModelRemoved.fire(W)}_onDidChangeLanguage(W,ne){const Ce=ne.oldLanguage,Le=W.getLanguageId(),ce=this.getCreationOptions(Ce,W.uri,W.isForSimpleWidget),me=this.getCreationOptions(Le,W.uri,W.isForSimpleWidget);H._setModelOptionsForModel(W,me,ce),this._onModelModeChanged.fire({model:W,oldModeId:Ce})}};Q.MAX_MEMORY_FOR_CLOSED_FILES_UNDO_STACK=20*1024*1024,Q=j([V(0,d.a),V(1,u.b),V(2,n.b),V(3,b.b),V(4,m.a),V(5,f.a),V(6,D.a)],Q);const ee="editor.semanticHighlighting";function Se(H,W,ne){var Ce;const Le=(Ce=ne.getValue(ee,{overrideIdentifier:H.getLanguageId(),resource:H.uri}))===null||Ce===void 0?void 0:Ce.enabled;return typeof Le=="boolean"?Le:W.getColorTheme().semanticHighlighting}class fe extends P.a{constructor(H,W,ne,Ce){super();this._watchers=Object.create(null),this._semanticStyling=Ce;const Le=Oe=>{this._watchers[Oe.uri.toString()]=new U(Oe,W,this._semanticStyling)},ce=(Oe,oe)=>{oe.dispose(),delete this._watchers[Oe.uri.toString()]},me=()=>{for(let Oe of H.getModels()){const oe=this._watchers[Oe.uri.toString()];Se(Oe,W,ne)?oe||Le(Oe):oe&&ce(Oe,oe)}};this._register(H.onModelAdded(Oe=>{Se(Oe,W,ne)&&Le(Oe)})),this._register(H.onModelRemoved(Oe=>{const oe=this._watchers[Oe.uri.toString()];oe&&ce(Oe,oe)})),this._register(ne.onDidChangeConfiguration(Oe=>{Oe.affectsConfiguration(ee)&&me()})),this._register(W.onDidColorThemeChange(me))}}class q extends P.a{constructor(H,W,ne){super();this._themeService=H,this._modeService=W,this._logService=ne,this._caches=new WeakMap,this._register(this._themeService.onDidColorThemeChange(()=>{this._caches=new WeakMap}))}get(H){return this._caches.has(H)||this._caches.set(H,new y.a(H.getLegend(),this._themeService,this._modeService,this._logService)),this._caches.get(H)}}class te{constructor(H,W,ne){this.provider=H,this.resultId=W,this.data=ne}dispose(){this.provider.releaseDocumentSemanticTokens(this.resultId)}}class U extends P.a{constructor(H,W,ne){super();this._isDisposed=!1,this._model=H,this._semanticStyling=ne,this._fetchDocumentSemanticTokens=this._register(new E.e(()=>this._fetchDocumentSemanticTokensNow(),U.FETCH_DOCUMENT_SEMANTIC_TOKENS_DELAY)),this._currentDocumentResponse=null,this._currentDocumentRequestCancellationTokenSource=null,this._documentProvidersChangeListeners=[],this._register(this._model.onDidChangeContent(()=>{this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule()})),this._register(this._model.onDidChangeLanguage(()=>{this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._currentDocumentRequestCancellationTokenSource&&(this._currentDocumentRequestCancellationTokenSource.cancel(),this._currentDocumentRequestCancellationTokenSource=null),this._setDocumentSemanticTokens(null,null,null,[]),this._fetchDocumentSemanticTokens.schedule(0)}));const Ce=()=>{Object(P.f)(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[];for(const Le of O.l.all(H))typeof Le.onDidChange=="function"&&this._documentProvidersChangeListeners.push(Le.onDidChange(()=>this._fetchDocumentSemanticTokens.schedule(0)))};Ce(),this._register(O.l.onDidChange(()=>{Ce(),this._fetchDocumentSemanticTokens.schedule()})),this._register(W.onDidColorThemeChange(Le=>{this._setDocumentSemanticTokens(null,null,null,[]),this._fetchDocumentSemanticTokens.schedule()})),this._fetchDocumentSemanticTokens.schedule(0)}dispose(){this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._currentDocumentRequestCancellationTokenSource&&(this._currentDocumentRequestCancellationTokenSource.cancel(),this._currentDocumentRequestCancellationTokenSource=null),this._setDocumentSemanticTokens(null,null,null,[]),this._isDisposed=!0,super.dispose()}_fetchDocumentSemanticTokensNow(){if(this._currentDocumentRequestCancellationTokenSource)return;if(!Object(C.d)(this._model)){this._currentDocumentResponse&&this._model.setSemanticTokens(null,!1);return}const H=new p.b,W=this._currentDocumentResponse?this._currentDocumentResponse.provider:null,ne=this._currentDocumentResponse&&this._currentDocumentResponse.resultId||null,Ce=Object(C.b)(this._model,W,ne,H.token);this._currentDocumentRequestCancellationTokenSource=H;const Le=[],ce=this._model.onDidChangeContent(me=>{Le.push(me)});Ce.then(me=>{if(this._currentDocumentRequestCancellationTokenSource=null,ce.dispose(),!me)this._setDocumentSemanticTokens(null,null,null,Le);else{const{provider:Oe,tokens:oe}=me,De=this._semanticStyling.get(Oe);this._setDocumentSemanticTokens(Oe,oe||null,De,Le)}},me=>{const Oe=me&&(A.e(me)||typeof me.message=="string"&&me.message.indexOf("busy")!==-1);Oe||A.f(me),this._currentDocumentRequestCancellationTokenSource=null,ce.dispose(),Le.length>0&&(this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule())})}static _copy(H,W,ne,Ce,Le){for(let ce=0;ce{Ce.length>0&&!this._fetchDocumentSemanticTokens.isScheduled()&&this._fetchDocumentSemanticTokens.schedule()};if(this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._isDisposed){H&&W&&H.releaseDocumentSemanticTokens(W.resultId);return}if(!H||!ne){this._model.setSemanticTokens(null,!1);return}if(!W){this._model.setSemanticTokens(null,!0),ce();return}if(Object(C.f)(W)){if(!Le){this._model.setSemanticTokens(null,!0);return}if(W.edits.length===0)W={resultId:W.resultId,data:Le.data};else{let me=0;for(const ve of W.edits)me+=(ve.data?ve.data.length:0)-ve.deleteCount;const Oe=Le.data,oe=new Uint32Array(Oe.length+me);let De=Oe.length,Ne=oe.length;for(let ve=W.edits.length-1;ve>=0;ve--){const re=W.edits[ve],we=De-(re.start+re.deleteCount);we>0&&(U._copy(Oe,De-we,oe,Ne-we,we),Ne-=we),re.data&&(U._copy(re.data,0,oe,Ne-re.data.length,re.data.length),Ne-=re.data.length),De=re.start}De>0&&U._copy(Oe,0,oe,0,De),W={resultId:W.resultId,data:oe}}}if(Object(C.e)(W)){this._currentDocumentResponse=new te(H,W.resultId,W.data);const me=Object(y.b)(W,ne,this._model.getLanguageId());if(Ce.length>0)for(const Oe of Ce)for(const oe of me)for(const De of Oe.changes)oe.applyEdit(De.range,De.text);this._model.setSemanticTokens(me,!0)}else this._model.setSemanticTokens(null,!0);ce()}}U.FETCH_DOCUMENT_SEMANTIC_TOKENS_DELAY=300},"0oIH":function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"graphql",extensions:[".graphql",".gql"],aliases:["GraphQL","graphql","gql"],mimetypes:["application/graphql"],loader:function(){return e.e(339).then(e.bind(null,"Eg73"))}})},"10Fh":function(ft,w,e){"use strict";e.r(w),e.d(w,"provideSelectionRanges",function(){return v});var h=e("6OMU"),P=e("JQT/"),L=e("/cxE"),A=e("sswD"),I=e("cGHE"),k=e("aokT"),O=e("gCVg"),S=e("wQH0"),f=e("twdY"),u=e("Z7SF"),d=e("N0LK");class E{provideSelectionRanges(D,j){const V=[];for(const G of j){const B=[];V.push(B),this._addInWordRanges(B,D,G),this._addWordRanges(B,D,G),this._addWhitespaceLine(B,D,G),B.push({range:D.getFullModelRange()})}return V}_addInWordRanges(D,j,V){const G=j.getWordAtPosition(V);if(!G)return;let{word:B,startColumn:z}=G,Y=V.column-z,K=Y,Q=Y,ee=0;for(;K>=0;K--){let Se=B.charCodeAt(K);if(K!==Y&&(Se===95||Se===45))break;if(Object(d.G)(Se)&&Object(d.H)(ee))break;ee=Se}for(K+=1;Q0&&j.getLineFirstNonWhitespaceColumn(V.lineNumber)===0&&j.getLineLastNonWhitespaceColumn(V.lineNumber)===0&&D.push({range:new k.a(V.lineNumber,1,V.lineNumber,j.getLineMaxColumn(V.lineNumber))})}}var p=e("3/fG"),n=e("fjLI"),b=e("nnTU"),m=function(D,j,V,G){function B(z){return z instanceof V?z:new V(function(Y){Y(z)})}return new(V||(V=Promise))(function(z,Y){function K(Se){try{ee(G.next(Se))}catch(fe){Y(fe)}}function Q(Se){try{ee(G.throw(Se))}catch(fe){Y(fe)}}function ee(Se){Se.done?z(Se.value):B(Se.value).then(K,Q)}ee((G=G.apply(D,j||[])).next())})};class c{constructor(D,j){this.index=D,this.ranges=j}mov(D){let j=this.index+(D?1:-1);if(j<0||j>=this.ranges.length)return this;const V=new c(j,this.ranges);return V.ranges[j].equalsRange(this.ranges[this.index])?V.mov(D):V}}class l{constructor(D){this._editor=D,this._ignoreSelection=!1}static get(D){return D.getContribution(l.ID)}dispose(){var D;(D=this._selectionListener)===null||D===void 0||D.dispose()}run(D){return m(this,void 0,void 0,function*(){if(!this._editor.hasModel())return;const j=this._editor.getSelections(),V=this._editor.getModel();if(!f.A.has(V))return;if(this._state||(yield v(V,j.map(B=>B.getPosition()),this._editor.getOption(101),P.a.None).then(B=>{var z;if(!h.n(B)||B.length!==j.length)return;if(!this._editor.hasModel()||!h.g(this._editor.getSelections(),j,(Y,K)=>Y.equalsSelection(K)))return;for(let Y=0;YK.containsPosition(j[Y].getStartPosition())&&K.containsPosition(j[Y].getEndPosition())),B[Y].unshift(j[Y]);this._state=B.map(Y=>new c(0,Y)),(z=this._selectionListener)===null||z===void 0||z.dispose(),this._selectionListener=this._editor.onDidChangeCursorPosition(()=>{var Y;this._ignoreSelection||((Y=this._selectionListener)===null||Y===void 0||Y.dispose(),this._state=void 0)})})),!this._state)return;this._state=this._state.map(B=>B.mov(D));const G=this._state.map(B=>O.a.fromPositions(B.ranges[B.index].getStartPosition(),B.ranges[B.index].getEndPosition()));this._ignoreSelection=!0;try{this._editor.setSelections(G)}finally{this._ignoreSelection=!1}})}}l.ID="editor.contrib.smartSelectController";class g extends A.b{constructor(D,j){super(j);this._forward=D}run(D,j){return m(this,void 0,void 0,function*(){let V=l.get(j);V&&(yield V.run(this._forward))})}}class y extends g{constructor(){super(!0,{id:"editor.action.smartSelect.expand",label:p.a("smartSelect.expand","Expand Selection"),alias:"Expand Selection",precondition:void 0,kbOpts:{kbExpr:S.a.editorTextFocus,primary:1024|512|17,mac:{primary:2048|256|1024|17,secondary:[256|1024|17]},weight:100},menuOpts:{menuId:n.b.MenubarSelectionMenu,group:"1_basic",title:p.a({key:"miSmartSelectGrow",comment:["&& denotes a mnemonic"]},"&&Expand Selection"),order:2}})}}b.a.registerCommandAlias("editor.action.smartSelect.grow","editor.action.smartSelect.expand");class C extends g{constructor(){super(!1,{id:"editor.action.smartSelect.shrink",label:p.a("smartSelect.shrink","Shrink Selection"),alias:"Shrink Selection",precondition:void 0,kbOpts:{kbExpr:S.a.editorTextFocus,primary:1024|512|15,mac:{primary:2048|256|1024|15,secondary:[256|1024|15]},weight:100},menuOpts:{menuId:n.b.MenubarSelectionMenu,group:"1_basic",title:p.a({key:"miSmartSelectShrink",comment:["&& denotes a mnemonic"]},"&&Shrink Selection"),order:3}})}}Object(A.l)(l.ID,l),Object(A.j)(y),Object(A.j)(C),f.A.register("*",new E);function v(D,j,V,G){return m(this,void 0,void 0,function*(){const B=f.A.all(D);B.length===1&&B.unshift(new u.a);let z=[],Y=[];for(const K of B)z.push(Promise.resolve(K.provideSelectionRanges(D,j,G)).then(Q=>{if(h.n(Q)&&Q.length===j.length)for(let ee=0;ee{if(K.length===0)return[];K.sort((fe,q)=>I.a.isBefore(fe.getStartPosition(),q.getStartPosition())?1:I.a.isBefore(q.getStartPosition(),fe.getStartPosition())||I.a.isBefore(fe.getEndPosition(),q.getEndPosition())?-1:I.a.isBefore(q.getEndPosition(),fe.getEndPosition())?1:0);let Q=[],ee;for(const fe of K)(!ee||k.a.containsRange(fe,ee)&&!k.a.equalsRange(fe,ee))&&(Q.push(fe),ee=fe);if(!V.selectLeadingAndTrailingWhitespace)return Q;let Se=[Q[0]];for(let fe=1;fe=0;n--){let b=u.charCodeAt(n),m=d.get(b);if(m===0){if(p===2)return this._createWord(u,p,m,n+1,this._findEndOfWord(u,d,p,n+1));p=1}else if(m===2){if(p===1)return this._createWord(u,p,m,n+1,this._findEndOfWord(u,d,p,n+1));p=2}else if(m===1&&p!==0)return this._createWord(u,p,m,n+1,this._findEndOfWord(u,d,p,n+1))}return p!==0?this._createWord(u,p,1,0,this._findEndOfWord(u,d,p,0)):null}static _findEndOfWord(u,d,E,p){let n=u.length;for(let b=p;b=0;n--){let b=u.charCodeAt(n),m=d.get(b);if(m===1)return n+1;if(E===1&&m===2)return n+1;if(E===2&&m===0)return n+1}return 0}static moveWordLeft(u,d,E,p){let n=E.lineNumber,b=E.column;b===1&&(n>1&&(n=n-1,b=d.getLineMaxColumn(n)));let m=O._findPreviousWordOnLine(u,d,new I.a(n,b));if(p===0)return new I.a(n,m?m.start+1:1);if(p===1)return m&&m.wordType===2&&m.end-m.start===1&&m.nextCharClass===0&&(m=O._findPreviousWordOnLine(u,d,new I.a(n,m.start+1))),new I.a(n,m?m.start+1:1);if(p===3){for(;m&&m.wordType===2;)m=O._findPreviousWordOnLine(u,d,new I.a(n,m.start+1));return new I.a(n,m?m.start+1:1)}return m&&b<=m.end+1&&(m=O._findPreviousWordOnLine(u,d,new I.a(n,m.start+1))),new I.a(n,m?m.end+1:1)}static _moveWordPartLeft(u,d){const E=d.lineNumber,p=u.getLineMaxColumn(E);if(d.column===1)return E>1?new I.a(E-1,u.getLineMaxColumn(E-1)):d;const n=u.getLineContent(E);for(let b=d.column-1;b>1;b--){const m=n.charCodeAt(b-2),c=n.charCodeAt(b-1);if(m===95&&c!==95)return new I.a(E,b);if(h.G(m)&&h.H(c))return new I.a(E,b);if(h.H(m)&&h.H(c)&&b+1=c.start+1&&(c=O._findNextWordOnLine(u,d,new I.a(n,c.end+1))),c?b=c.start+1:b=d.getLineMaxColumn(n);return new I.a(n,b)}static _moveWordPartRight(u,d){const E=d.lineNumber,p=u.getLineMaxColumn(E);if(d.column===p)return E1?l=1:(c--,l=p.getLineMaxColumn(c)):(g&&l<=g.end+1&&(g=O._findPreviousWordOnLine(E,p,new I.a(c,g.start+1))),g?l=g.end+1:l>1?l=1:(c--,l=p.getLineMaxColumn(c))),new k.a(c,l,m.lineNumber,m.column)}static deleteInsideWord(u,d,E){if(!E.isEmpty())return E;const p=new I.a(E.positionLineNumber,E.positionColumn);let n=this._deleteInsideWordWhitespace(d,p);return n||this._deleteInsideWordDetermineDeleteRange(u,d,p)}static _charAtIsWhitespace(u,d){const E=u.charCodeAt(d);return E===32||E===9}static _deleteInsideWordWhitespace(u,d){const E=u.getLineContent(d.lineNumber),p=E.length;if(p===0)return null;let n=Math.max(d.column-2,0);if(!this._charAtIsWhitespace(E,n))return null;let b=Math.min(d.column-1,p-1);if(!this._charAtIsWhitespace(E,b))return null;for(;n>0&&this._charAtIsWhitespace(E,n-1);)n--;for(;b+11?new k.a(E.lineNumber-1,d.getLineMaxColumn(E.lineNumber-1),E.lineNumber,1):E.lineNumbery.start+1<=E.column&&E.column<=y.end+1,m=(y,C)=>(y=Math.min(y,E.column),C=Math.max(C,E.column),new k.a(E.lineNumber,y,E.lineNumber,C)),c=y=>{let C=y.start+1,v=y.end+1,D=!1;for(;v-11&&this._charAtIsWhitespace(p,C-2);)C--;return m(C,v)},l=O._findPreviousWordOnLine(u,d,E);if(l&&b(l))return c(l);const g=O._findNextWordOnLine(u,d,E);return g&&b(g)?c(g):l&&g?m(l.end+1,g.start+1):l?m(l.start+1,l.end+1):g?m(g.start+1,g.end+1):m(1,n+1)}static _deleteWordPartLeft(u,d){if(!d.isEmpty())return d;const E=d.getPosition(),p=O._moveWordPartLeft(u,E);return new k.a(E.lineNumber,E.column,p.lineNumber,p.column)}static _findFirstNonWhitespaceChar(u,d){let E=u.length;for(let p=d;p=C.start+1&&(C=O._findNextWordOnLine(E,p,new I.a(c,C.end+1))),C?l=C.start+1:lBoolean(d))}},"1YUG":function(ft,w,e){"use strict";e.r(w),e.d(w,"CoreEditorCommand",function(){return l}),e.d(w,"EditorScroll_",function(){return g}),e.d(w,"RevealLine_",function(){return y}),e.d(w,"CoreNavigationCommands",function(){return v}),e.d(w,"CoreEditingCommands",function(){return G});var h=e("3/fG"),P=e("D3Dy"),L=e("746U"),A=e("OBOq"),I=e("sswD"),k=e("Vxe3"),O=e("Ll0s"),S=e("cGHE"),f=e("aokT");class u{static columnSelect(Y,K,Q,ee,Se,fe){let q=Math.abs(Se-Q)+1,te=Q>Se,U=ee>fe,H=eefe)continue;if(Oeee)continue;if(me0&&ee--,u.columnSelect(Y,K,Q.fromViewLineNumber,Q.fromViewVisualColumn,Q.toViewLineNumber,ee)}static columnSelectRight(Y,K,Q){let ee=0;const Se=Math.min(Q.fromViewLineNumber,Q.toViewLineNumber),fe=Math.max(Q.fromViewLineNumber,Q.toViewLineNumber);for(let te=Se;te<=fe;te++){const U=K.getLineMaxColumn(te),H=O.a.visibleColumnFromColumn2(Y,K,new S.a(te,U));ee=Math.max(ee,H)}let q=Q.toViewVisualColumn;return q{const ee=K.get(k.a).getFocusedCodeEditor();return ee&&ee.hasTextFocus()?this._runEditorCommand(K,ee,Q):!1}),Y.addImplementation(1e3,"generic-dom-input-textarea",(K,Q)=>{const ee=document.activeElement;return ee&&["input","textarea"].indexOf(ee.tagName.toLowerCase())>=0?(this.runDOMCommand(),!0):!1}),Y.addImplementation(0,"generic-dom",(K,Q)=>{const ee=K.get(k.a).getActiveCodeEditor();return ee?(ee.focus(),this._runEditorCommand(K,ee,Q)):!1})}_runEditorCommand(Y,K,Q){const ee=this.runEditorCommand(Y,K,Q);return ee||!0}}var v;(function(Y){class K extends l{constructor(oe){super(oe);this._inSelectionMode=oe.inSelectionMode}runCoreEditorCommand(oe,De){oe.model.pushStackElement(),oe.setCursorStates(De.source,3,[E.b.moveTo(oe,oe.getPrimaryCursorState(),this._inSelectionMode,De.position,De.viewPosition)]),oe.revealPrimaryCursor(De.source,!0)}}Y.MoveTo=Object(I.k)(new K({id:"_moveTo",inSelectionMode:!1,precondition:void 0})),Y.MoveToSelect=Object(I.k)(new K({id:"_moveToSelect",inSelectionMode:!0,precondition:void 0}));class Q extends l{runCoreEditorCommand(oe,De){oe.model.pushStackElement();const Ne=this._getColumnSelectResult(oe,oe.getPrimaryCursorState(),oe.getCursorColumnSelectData(),De);oe.setCursorStates(De.source,3,Ne.viewStates.map(ve=>O.d.fromViewState(ve))),oe.setCursorColumnSelectData({isReal:!0,fromViewLineNumber:Ne.fromLineNumber,fromViewVisualColumn:Ne.fromVisualColumn,toViewLineNumber:Ne.toLineNumber,toViewVisualColumn:Ne.toVisualColumn}),Ne.reversed?oe.revealTopMostCursor(De.source):oe.revealBottomMostCursor(De.source)}}Y.ColumnSelect=Object(I.k)(new class extends Q{constructor(){super({id:"columnSelect",precondition:void 0})}_getColumnSelectResult(oe,De,Ne,ve){const re=oe.model.validatePosition(ve.position),we=oe.coordinatesConverter.validateViewPosition(new S.a(ve.viewPosition.lineNumber,ve.viewPosition.column),re);let Ie=ve.doColumnSelect?Ne.fromViewLineNumber:we.lineNumber,ge=ve.doColumnSelect?Ne.fromViewVisualColumn:ve.mouseColumn-1;return u.columnSelect(oe.cursorConfig,oe,Ie,ge,we.lineNumber,ve.mouseColumn-1)}}),Y.CursorColumnSelectLeft=Object(I.k)(new class extends Q{constructor(){super({id:"cursorColumnSelectLeft",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:2048|1024|512|15,linux:{primary:0}}})}_getColumnSelectResult(oe,De,Ne,ve){return u.columnSelectLeft(oe.cursorConfig,oe,Ne)}}),Y.CursorColumnSelectRight=Object(I.k)(new class extends Q{constructor(){super({id:"cursorColumnSelectRight",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:2048|1024|512|17,linux:{primary:0}}})}_getColumnSelectResult(oe,De,Ne,ve){return u.columnSelectRight(oe.cursorConfig,oe,Ne)}});class ee extends Q{constructor(oe){super(oe);this._isPaged=oe.isPaged}_getColumnSelectResult(oe,De,Ne,ve){return u.columnSelectUp(oe.cursorConfig,oe,Ne,this._isPaged)}}Y.CursorColumnSelectUp=Object(I.k)(new ee({isPaged:!1,id:"cursorColumnSelectUp",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:2048|1024|512|16,linux:{primary:0}}})),Y.CursorColumnSelectPageUp=Object(I.k)(new ee({isPaged:!0,id:"cursorColumnSelectPageUp",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:2048|1024|512|11,linux:{primary:0}}}));class Se extends Q{constructor(oe){super(oe);this._isPaged=oe.isPaged}_getColumnSelectResult(oe,De,Ne,ve){return u.columnSelectDown(oe.cursorConfig,oe,Ne,this._isPaged)}}Y.CursorColumnSelectDown=Object(I.k)(new Se({isPaged:!1,id:"cursorColumnSelectDown",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:2048|1024|512|18,linux:{primary:0}}})),Y.CursorColumnSelectPageDown=Object(I.k)(new Se({isPaged:!0,id:"cursorColumnSelectPageDown",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:2048|1024|512|12,linux:{primary:0}}}));class fe extends l{constructor(){super({id:"cursorMove",precondition:void 0,description:E.a.description})}runCoreEditorCommand(oe,De){const Ne=E.a.parse(De);if(!Ne)return;this._runCursorMove(oe,De.source,Ne)}_runCursorMove(oe,De,Ne){oe.model.pushStackElement(),oe.setCursorStates(De,3,fe._move(oe,oe.getCursorStates(),Ne)),oe.revealPrimaryCursor(De,!0)}static _move(oe,De,Ne){const ve=Ne.select,re=Ne.value;switch(Ne.direction){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:return E.b.simpleMove(oe,De,Ne.direction,ve,re,Ne.unit);case 11:case 13:case 12:case 14:return E.b.viewportMove(oe,De,Ne.direction,ve,re);default:return null}}}Y.CursorMoveImpl=fe,Y.CursorMove=Object(I.k)(new fe);class q extends l{constructor(oe){super(oe);this._staticArgs=oe.args}runCoreEditorCommand(oe,De){let Ne=this._staticArgs;this._staticArgs.value===-1&&(Ne={direction:this._staticArgs.direction,unit:this._staticArgs.unit,select:this._staticArgs.select,value:oe.cursorConfig.pageSize}),oe.model.pushStackElement(),oe.setCursorStates(De.source,3,E.b.simpleMove(oe,oe.getCursorStates(),Ne.direction,Ne.select,Ne.value,Ne.unit)),oe.revealPrimaryCursor(De.source,!0)}}Y.CursorLeft=Object(I.k)(new q({args:{direction:0,unit:0,select:!1,value:1},id:"cursorLeft",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:15,mac:{primary:15,secondary:[256|32]}}})),Y.CursorLeftSelect=Object(I.k)(new q({args:{direction:0,unit:0,select:!0,value:1},id:"cursorLeftSelect",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:1024|15}})),Y.CursorRight=Object(I.k)(new q({args:{direction:1,unit:0,select:!1,value:1},id:"cursorRight",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:17,mac:{primary:17,secondary:[256|36]}}})),Y.CursorRightSelect=Object(I.k)(new q({args:{direction:1,unit:0,select:!0,value:1},id:"cursorRightSelect",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:1024|17}})),Y.CursorUp=Object(I.k)(new q({args:{direction:2,unit:2,select:!1,value:1},id:"cursorUp",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:16,mac:{primary:16,secondary:[256|46]}}})),Y.CursorUpSelect=Object(I.k)(new q({args:{direction:2,unit:2,select:!0,value:1},id:"cursorUpSelect",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:1024|16,secondary:[2048|1024|16],mac:{primary:1024|16},linux:{primary:1024|16}}})),Y.CursorPageUp=Object(I.k)(new q({args:{direction:2,unit:2,select:!1,value:-1},id:"cursorPageUp",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:11}})),Y.CursorPageUpSelect=Object(I.k)(new q({args:{direction:2,unit:2,select:!0,value:-1},id:"cursorPageUpSelect",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:1024|11}})),Y.CursorDown=Object(I.k)(new q({args:{direction:3,unit:2,select:!1,value:1},id:"cursorDown",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:18,mac:{primary:18,secondary:[256|44]}}})),Y.CursorDownSelect=Object(I.k)(new q({args:{direction:3,unit:2,select:!0,value:1},id:"cursorDownSelect",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:1024|18,secondary:[2048|1024|18],mac:{primary:1024|18},linux:{primary:1024|18}}})),Y.CursorPageDown=Object(I.k)(new q({args:{direction:3,unit:2,select:!1,value:-1},id:"cursorPageDown",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:12}})),Y.CursorPageDownSelect=Object(I.k)(new q({args:{direction:3,unit:2,select:!0,value:-1},id:"cursorPageDownSelect",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:1024|12}})),Y.CreateCursor=Object(I.k)(new class extends l{constructor(){super({id:"createCursor",precondition:void 0})}runCoreEditorCommand(oe,De){let Ne;De.wholeLine?Ne=E.b.line(oe,oe.getPrimaryCursorState(),!1,De.position,De.viewPosition):Ne=E.b.moveTo(oe,oe.getPrimaryCursorState(),!1,De.position,De.viewPosition);const ve=oe.getCursorStates();if(ve.length>1){const re=Ne.modelState?Ne.modelState.position:null,we=Ne.viewState?Ne.viewState.position:null;for(let Ie=0,ge=ve.length;Iewe&&(re=we);const Ie=new f.a(re,1,re,oe.model.getLineMaxColumn(re));let ge=0;if(Ne.at)switch(Ne.at){case y.RawAtArgument.Top:ge=3;break;case y.RawAtArgument.Center:ge=1;break;case y.RawAtArgument.Bottom:ge=4;break;default:break}const ye=oe.coordinatesConverter.convertModelRangeToViewRange(Ie);oe.revealRange(De.source,!1,ye,ge,0)}}),Y.SelectAll=new class extends C{constructor(){super(I.h)}runDOMCommand(){P.g&&(document.activeElement.focus(),document.activeElement.select()),document.execCommand("selectAll")}runEditorCommand(oe,De,Ne){const ve=De._getViewModel();if(!ve)return;this.runCoreEditorCommand(ve,Ne)}runCoreEditorCommand(oe,De){oe.model.pushStackElement(),oe.setCursorStates("keyboard",3,[E.b.selectAll(oe,oe.getPrimaryCursorState())])}},Y.SetSelection=Object(I.k)(new class extends l{constructor(){super({id:"setSelection",precondition:void 0})}runCoreEditorCommand(oe,De){oe.model.pushStackElement(),oe.setCursorStates(De.source,3,[O.d.fromModelSelection(De.selection)])}})})(v||(v={}));const D=b.a.and(n.a.textInputFocus,n.a.columnSelection);function j(Y,K){m.a.registerKeybindingRule({id:Y,primary:K,when:D,weight:c+1})}j(v.CursorColumnSelectLeft.id,1024|15),j(v.CursorColumnSelectRight.id,1024|17),j(v.CursorColumnSelectUp.id,1024|16),j(v.CursorColumnSelectPageUp.id,1024|11),j(v.CursorColumnSelectDown.id,1024|18),j(v.CursorColumnSelectPageDown.id,1024|12);function V(Y){return Y.register(),Y}var G;(function(Y){class K extends I.c{runEditorCommand(Q,ee,Se){const fe=ee._getViewModel();if(!fe)return;this.runCoreEditingCommand(ee,fe,Se||{})}}Y.CoreEditingCommand=K,Y.LineBreakInsert=Object(I.k)(new class extends K{constructor(){super({id:"lineBreakInsert",precondition:n.a.writable,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:0,mac:{primary:256|45}}})}runCoreEditingCommand(Q,ee,Se){Q.pushUndoStop(),Q.executeCommands(this.id,p.a.lineBreakInsert(ee.cursorConfig,ee.model,ee.getCursorStates().map(fe=>fe.modelState.selection)))}}),Y.Outdent=Object(I.k)(new class extends K{constructor(){super({id:"outdent",precondition:n.a.writable,kbOpts:{weight:c,kbExpr:b.a.and(n.a.editorTextFocus,n.a.tabDoesNotMoveFocus),primary:1024|2}})}runCoreEditingCommand(Q,ee,Se){Q.pushUndoStop(),Q.executeCommands(this.id,p.a.outdent(ee.cursorConfig,ee.model,ee.getCursorStates().map(fe=>fe.modelState.selection))),Q.pushUndoStop()}}),Y.Tab=Object(I.k)(new class extends K{constructor(){super({id:"tab",precondition:n.a.writable,kbOpts:{weight:c,kbExpr:b.a.and(n.a.editorTextFocus,n.a.tabDoesNotMoveFocus),primary:2}})}runCoreEditingCommand(Q,ee,Se){Q.pushUndoStop(),Q.executeCommands(this.id,p.a.tab(ee.cursorConfig,ee.model,ee.getCursorStates().map(fe=>fe.modelState.selection))),Q.pushUndoStop()}}),Y.DeleteLeft=Object(I.k)(new class extends K{constructor(){super({id:"deleteLeft",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:1,secondary:[1024|1],mac:{primary:1,secondary:[1024|1,256|38,256|1]}}})}runCoreEditingCommand(Q,ee,Se){const[fe,q]=d.a.deleteLeft(ee.getPrevEditOperationType(),ee.cursorConfig,ee.model,ee.getCursorStates().map(te=>te.modelState.selection),ee.getCursorAutoClosedCharacters());fe&&Q.pushUndoStop(),Q.executeCommands(this.id,q),ee.setPrevEditOperationType(2)}}),Y.DeleteRight=Object(I.k)(new class extends K{constructor(){super({id:"deleteRight",precondition:void 0,kbOpts:{weight:c,kbExpr:n.a.textInputFocus,primary:20,mac:{primary:20,secondary:[256|34,256|20]}}})}runCoreEditingCommand(Q,ee,Se){const[fe,q]=d.a.deleteRight(ee.getPrevEditOperationType(),ee.cursorConfig,ee.model,ee.getCursorStates().map(te=>te.modelState.selection));fe&&Q.pushUndoStop(),Q.executeCommands(this.id,q),ee.setPrevEditOperationType(3)}}),Y.Undo=new class extends C{constructor(){super(I.i)}runDOMCommand(){document.execCommand("undo")}runEditorCommand(Q,ee,Se){return!ee.hasModel()||ee.getOption(80)===!0?void 0:ee.getModel().undo()}},Y.Redo=new class extends C{constructor(){super(I.g)}runDOMCommand(){document.execCommand("redo")}runEditorCommand(Q,ee,Se){return!ee.hasModel()||ee.getOption(80)===!0?void 0:ee.getModel().redo()}}})(G||(G={}));class B extends I.a{constructor(Y,K,Q){super({id:Y,precondition:void 0,description:Q});this._handlerId=K}runCommand(Y,K){const Q=Y.get(k.a).getFocusedCodeEditor();if(!Q)return;Q.trigger("keyboard",this._handlerId,K)}}function z(Y,K){V(new B("default:"+Y,Y)),V(new B(Y,Y,K))}z("type",{description:"Type",args:[{name:"args",schema:{type:"object",required:["text"],properties:{text:{type:"string"}}}}]}),z("replacePreviousChar"),z("compositionType"),z("compositionStart"),z("compositionEnd"),z("paste"),z("cut")},"1lwE":function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"aes",extensions:[".aes"],aliases:["aes","sophia","Sophia"],loader:function(){return e.e(383).then(e.bind(null,"cOMg"))}})},"23p7":function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"apex",extensions:[".cls"],aliases:["Apex","apex"],mimetypes:["text/x-apex-source","text/x-apex"],loader:function(){return e.e(322).then(e.bind(null,"aA7r"))}})},"28lO":function(ft,w,e){"use strict";var h=e("Vhoy"),P=e("3/fG"),L=e("MD5Z"),A=e("t9D7");const I=Object(L.Cc)("symbolIcon.arrayForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.arrayForeground","The foreground color for array symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),k=Object(L.Cc)("symbolIcon.booleanForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.booleanForeground","The foreground color for boolean symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),O=Object(L.Cc)("symbolIcon.classForeground",{dark:"#EE9D28",light:"#D67E00",hc:"#EE9D28"},Object(P.a)("symbolIcon.classForeground","The foreground color for class symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),S=Object(L.Cc)("symbolIcon.colorForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.colorForeground","The foreground color for color symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),f=Object(L.Cc)("symbolIcon.constantForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.constantForeground","The foreground color for constant symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),u=Object(L.Cc)("symbolIcon.constructorForeground",{dark:"#B180D7",light:"#652D90",hc:"#B180D7"},Object(P.a)("symbolIcon.constructorForeground","The foreground color for constructor symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),d=Object(L.Cc)("symbolIcon.enumeratorForeground",{dark:"#EE9D28",light:"#D67E00",hc:"#EE9D28"},Object(P.a)("symbolIcon.enumeratorForeground","The foreground color for enumerator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),E=Object(L.Cc)("symbolIcon.enumeratorMemberForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},Object(P.a)("symbolIcon.enumeratorMemberForeground","The foreground color for enumerator member symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),p=Object(L.Cc)("symbolIcon.eventForeground",{dark:"#EE9D28",light:"#D67E00",hc:"#EE9D28"},Object(P.a)("symbolIcon.eventForeground","The foreground color for event symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),n=Object(L.Cc)("symbolIcon.fieldForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},Object(P.a)("symbolIcon.fieldForeground","The foreground color for field symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),b=Object(L.Cc)("symbolIcon.fileForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.fileForeground","The foreground color for file symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),m=Object(L.Cc)("symbolIcon.folderForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.folderForeground","The foreground color for folder symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),c=Object(L.Cc)("symbolIcon.functionForeground",{dark:"#B180D7",light:"#652D90",hc:"#B180D7"},Object(P.a)("symbolIcon.functionForeground","The foreground color for function symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),l=Object(L.Cc)("symbolIcon.interfaceForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},Object(P.a)("symbolIcon.interfaceForeground","The foreground color for interface symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),g=Object(L.Cc)("symbolIcon.keyForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.keyForeground","The foreground color for key symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),y=Object(L.Cc)("symbolIcon.keywordForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.keywordForeground","The foreground color for keyword symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),C=Object(L.Cc)("symbolIcon.methodForeground",{dark:"#B180D7",light:"#652D90",hc:"#B180D7"},Object(P.a)("symbolIcon.methodForeground","The foreground color for method symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),v=Object(L.Cc)("symbolIcon.moduleForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.moduleForeground","The foreground color for module symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),D=Object(L.Cc)("symbolIcon.namespaceForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.namespaceForeground","The foreground color for namespace symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),j=Object(L.Cc)("symbolIcon.nullForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.nullForeground","The foreground color for null symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),V=Object(L.Cc)("symbolIcon.numberForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.numberForeground","The foreground color for number symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),G=Object(L.Cc)("symbolIcon.objectForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.objectForeground","The foreground color for object symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),B=Object(L.Cc)("symbolIcon.operatorForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.operatorForeground","The foreground color for operator symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),z=Object(L.Cc)("symbolIcon.packageForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.packageForeground","The foreground color for package symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),Y=Object(L.Cc)("symbolIcon.propertyForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.propertyForeground","The foreground color for property symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),K=Object(L.Cc)("symbolIcon.referenceForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.referenceForeground","The foreground color for reference symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),Q=Object(L.Cc)("symbolIcon.snippetForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.snippetForeground","The foreground color for snippet symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),ee=Object(L.Cc)("symbolIcon.stringForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.stringForeground","The foreground color for string symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),Se=Object(L.Cc)("symbolIcon.structForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.structForeground","The foreground color for struct symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),fe=Object(L.Cc)("symbolIcon.textForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.textForeground","The foreground color for text symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),q=Object(L.Cc)("symbolIcon.typeParameterForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.typeParameterForeground","The foreground color for type parameter symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),te=Object(L.Cc)("symbolIcon.unitForeground",{dark:L.ib,light:L.ib,hc:L.ib},Object(P.a)("symbolIcon.unitForeground","The foreground color for unit symbols. These symbols appear in the outline, breadcrumb, and suggest widget.")),U=Object(L.Cc)("symbolIcon.variableForeground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},Object(P.a)("symbolIcon.variableForeground","The foreground color for variable symbols. These symbols appear in the outline, breadcrumb, and suggest widget."));Object(A.f)((H,W)=>{const ne=H.getColor(I);ne&&W.addRule(`${h.b.symbolArray.cssSelector} { color: ${ne}; }`);const Ce=H.getColor(k);Ce&&W.addRule(`${h.b.symbolBoolean.cssSelector} { color: ${Ce}; }`);const Le=H.getColor(O);Le&&W.addRule(`${h.b.symbolClass.cssSelector} { color: ${Le}; }`);const ce=H.getColor(C);ce&&W.addRule(`${h.b.symbolMethod.cssSelector} { color: ${ce}; }`);const me=H.getColor(S);me&&W.addRule(`${h.b.symbolColor.cssSelector} { color: ${me}; }`);const Oe=H.getColor(f);Oe&&W.addRule(`${h.b.symbolConstant.cssSelector} { color: ${Oe}; }`);const oe=H.getColor(u);oe&&W.addRule(`${h.b.symbolConstructor.cssSelector} { color: ${oe}; }`);const De=H.getColor(d);De&&W.addRule(` ${h.b.symbolValue.cssSelector},${h.b.symbolEnum.cssSelector} { color: ${De}; }`);const Ne=H.getColor(E);Ne&&W.addRule(`${h.b.symbolEnumMember.cssSelector} { color: ${Ne}; }`);const ve=H.getColor(p);ve&&W.addRule(`${h.b.symbolEvent.cssSelector} { color: ${ve}; }`);const re=H.getColor(n);re&&W.addRule(`${h.b.symbolField.cssSelector} { color: ${re}; }`);const we=H.getColor(b);we&&W.addRule(`${h.b.symbolFile.cssSelector} { color: ${we}; }`);const Ie=H.getColor(m);Ie&&W.addRule(`${h.b.symbolFolder.cssSelector} { color: ${Ie}; }`);const ge=H.getColor(c);ge&&W.addRule(`${h.b.symbolFunction.cssSelector} { color: ${ge}; }`);const ye=H.getColor(l);ye&&W.addRule(`${h.b.symbolInterface.cssSelector} { color: ${ye}; }`);const ze=H.getColor(g);ze&&W.addRule(`${h.b.symbolKey.cssSelector} { color: ${ze}; }`);const xe=H.getColor(y);xe&&W.addRule(`${h.b.symbolKeyword.cssSelector} { color: ${xe}; }`);const Te=H.getColor(v);Te&&W.addRule(`${h.b.symbolModule.cssSelector} { color: ${Te}; }`);const He=H.getColor(D);He&&W.addRule(`${h.b.symbolNamespace.cssSelector} { color: ${He}; }`);const st=H.getColor(j);st&&W.addRule(`${h.b.symbolNull.cssSelector} { color: ${st}; }`);const nt=H.getColor(V);nt&&W.addRule(`${h.b.symbolNumber.cssSelector} { color: ${nt}; }`);const rt=H.getColor(G);rt&&W.addRule(`${h.b.symbolObject.cssSelector} { color: ${rt}; }`);const wt=H.getColor(B);wt&&W.addRule(`${h.b.symbolOperator.cssSelector} { color: ${wt}; }`);const Pt=H.getColor(z);Pt&&W.addRule(`${h.b.symbolPackage.cssSelector} { color: ${Pt}; }`);const no=H.getColor(Y);no&&W.addRule(`${h.b.symbolProperty.cssSelector} { color: ${no}; }`);const ht=H.getColor(K);ht&&W.addRule(`${h.b.symbolReference.cssSelector} { color: ${ht}; }`);const lt=H.getColor(Q);lt&&W.addRule(`${h.b.symbolSnippet.cssSelector} { color: ${lt}; }`);const le=H.getColor(ee);le&&W.addRule(`${h.b.symbolString.cssSelector} { color: ${le}; }`);const Pe=H.getColor(Se);Pe&&W.addRule(`${h.b.symbolStruct.cssSelector} { color: ${Pe}; }`);const it=H.getColor(fe);it&&W.addRule(`${h.b.symbolText.cssSelector} { color: ${it}; }`);const Dt=H.getColor(q);Dt&&W.addRule(`${h.b.symbolTypeParameter.cssSelector} { color: ${Dt}; }`);const kt=H.getColor(te);kt&&W.addRule(`${h.b.symbolUnit.cssSelector} { color: ${kt}; }`);const eo=H.getColor(U);eo&&W.addRule(`${h.b.symbolVariable.cssSelector} { color: ${eo}; }`)})},"2ESN":function(ft,w,e){"use strict";e.r(w),e.d(w,"LinkDetector",function(){return q});var h=e("X+cX"),P=e("JQT/"),L=e("/cxE"),A=e("eLzo"),I=e("pmY6"),k=e("tYmi"),O=e("MNsG"),S=e("gslv"),f=e("bY76"),u=e("YHy6"),d=e("sswD"),E=e("tX9W"),p=e("twdY"),n=e("aBYw"),b=e("6OMU"),m=e("746U"),c=e("aokT"),l=e("G2kB"),g=e("nnTU"),y=function(U,H,W,ne){function Ce(Le){return Le instanceof W?Le:new W(function(ce){ce(Le)})}return new(W||(W=Promise))(function(Le,ce){function me(De){try{oe(ne.next(De))}catch(Ne){ce(Ne)}}function Oe(De){try{oe(ne.throw(De))}catch(Ne){ce(Ne)}}function oe(De){De.done?Le(De.value):Ce(De.value).then(me,Oe)}oe((ne=ne.apply(U,H||[])).next())})};class C{constructor(U,H){this._link=U,this._provider=H}toJSON(){return{range:this.range,url:this.url,tooltip:this.tooltip}}get range(){return this._link.range}get url(){return this._link.url}get tooltip(){return this._link.tooltip}resolve(U){return y(this,void 0,void 0,function*(){return this._link.url?this._link.url:typeof this._provider.resolveLink=="function"?Promise.resolve(this._provider.resolveLink(this._link,U)).then(H=>(this._link=H||this._link,this._link.url?this.resolve(U):Promise.reject(new Error("missing")))):Promise.reject(new Error("missing"))})}}class v{constructor(U){this._disposables=new I.b;let H=[];for(const[W,ne]of U){const Ce=W.links.map(Le=>new C(Le,ne));H=v._union(H,Ce),Object(I.g)(W)&&this._disposables.add(W)}this.links=H}dispose(){this._disposables.dispose(),this.links.length=0}static _union(U,H){let W=[],ne,Ce,Le,ce;for(ne=0,Le=0,Ce=U.length,ce=H.length;nePromise.resolve(Ce.provideLinks(U,H)).then(ce=>{ce&&(W[Le]=[ce,Ce])},L.g));return Promise.all(ne).then(()=>{const Ce=new v(Object(b.e)(W));return H.isCancellationRequested?(Ce.dispose(),new v([])):Ce})}g.a.registerCommand("_executeLinkProvider",(U,...H)=>y(void 0,void 0,void 0,function*(){let[W,ne]=H;Object(m.c)(W instanceof f.a),typeof ne!="number"&&(ne=0);const Ce=U.get(l.a).getModel(W);if(!Ce)return[];const Le=yield D(Ce,P.a.None);if(!Le)return[];for(let me=0;me=0;me--)(ce=U[me])&&(Le=(Ce<3?ce(Le):Ce>3?ce(H,W,Le):ce(H,W))||Le);return Ce>3&&Le&&Object.defineProperty(H,W,Le),Le},K=function(U,H){return function(W,ne){H(W,ne,U)}},Q=function(U,H,W,ne){function Ce(Le){return Le instanceof W?Le:new W(function(ce){ce(Le)})}return new(W||(W=Promise))(function(Le,ce){function me(De){try{oe(ne.next(De))}catch(Ne){ce(Ne)}}function Oe(De){try{oe(ne.throw(De))}catch(Ne){ce(Ne)}}function oe(De){De.done?Le(De.value):Ce(De.value).then(me,Oe)}oe((ne=ne.apply(U,H||[])).next())})};function ee(U,H){const W=U.url&&/^command:/i.test(U.url.toString()),ne=U.tooltip?U.tooltip:W?j.a("links.navigate.executeCmd","Execute command"):j.a("links.navigate.follow","Follow link"),Ce=H?O.f?j.a("links.navigate.kb.meta.mac","cmd + click"):j.a("links.navigate.kb.meta","ctrl + click"):O.f?j.a("links.navigate.kb.alt.mac","option + click"):j.a("links.navigate.kb.alt","alt + click");if(U.url){let Le="";if(/^command:/i.test(U.url.toString())){const me=U.url.toString().match(/^command:([^?#]+)/);if(me){const Oe=me[1],oe=j.a("tooltip.explanation","Execute command {0}",Oe);Le=` "${oe}"`}}const ce=new A.a("",!0).appendMarkdown(`[${ne}](${U.url.toString(!0).replace(/ /g,"%20")}${Le}) (${Ce})`);return ce}else return new A.a().appendText(`${ne} (${Ce})`)}const Se={general:E.b.register({description:"detected-link",stickiness:1,collapseOnReplaceEdit:!0,inlineClassName:"detected-link"}),active:E.b.register({description:"detected-link-active",stickiness:1,collapseOnReplaceEdit:!0,inlineClassName:"detected-link-active"})};class fe{constructor(U,H){this.link=U,this.decorationId=H}static decoration(U,H){return{range:U.range,options:fe._getOptions(U,H,!1)}}static _getOptions(U,H,W){const ne=Object.assign({},W?Se.active:Se.general);return ne.hoverMessage=ee(U,H),ne}activate(U,H){U.changeDecorationOptions(this.decorationId,fe._getOptions(this.link,H,!0))}deactivate(U,H){U.changeDecorationOptions(this.decorationId,fe._getOptions(this.link,H,!1))}}let q=class U{constructor(H,W,ne){this.listenersToRemove=new I.b,this.editor=H,this.openerService=W,this.notificationService=ne;let Ce=new n.a(H);this.listenersToRemove.add(Ce),this.listenersToRemove.add(Ce.onMouseMoveOrRelevantKeyDown(([Le,ce])=>{this._onEditorMouseMove(Le,ce)})),this.listenersToRemove.add(Ce.onExecute(Le=>{this.onEditorMouseUp(Le)})),this.listenersToRemove.add(Ce.onCancel(Le=>{this.cleanUpActiveLinkDecoration()})),this.enabled=H.getOption(62),this.listenersToRemove.add(H.onDidChangeConfiguration(Le=>{const ce=H.getOption(62);if(this.enabled===ce)return;this.enabled=ce,this.updateDecorations([]),this.stop(),this.beginCompute()})),this.listenersToRemove.add(H.onDidChangeModelContent(Le=>this.onChange())),this.listenersToRemove.add(H.onDidChangeModel(Le=>this.onModelChanged())),this.listenersToRemove.add(H.onDidChangeModelLanguage(Le=>this.onModelModeChanged())),this.listenersToRemove.add(p.v.onDidChange(Le=>this.onModelModeChanged())),this.timeout=new h.g,this.computePromise=null,this.activeLinksList=null,this.currentOccurrences={},this.activeLinkDecorationId=null,this.beginCompute()}static get(H){return H.getContribution(U.ID)}onModelChanged(){this.currentOccurrences={},this.activeLinkDecorationId=null,this.stop(),this.beginCompute()}onModelModeChanged(){this.stop(),this.beginCompute()}onChange(){this.timeout.setIfNotSet(()=>this.beginCompute(),U.RECOMPUTE_TIME)}beginCompute(){return Q(this,void 0,void 0,function*(){if(!this.editor.hasModel()||!this.enabled)return;const H=this.editor.getModel();if(!p.v.has(H))return;this.activeLinksList&&(this.activeLinksList.dispose(),this.activeLinksList=null),this.computePromise=h.h(W=>D(H,W));try{this.activeLinksList=yield this.computePromise,this.updateDecorations(this.activeLinksList.links)}catch(W){Object(L.f)(W)}finally{this.computePromise=null}})}updateDecorations(H){const W=this.editor.getOption(69)==="altKey";let ne=[],Ce=Object.keys(this.currentOccurrences);for(let me=0,Oe=Ce.length;me{Ce.activate(Le,ne),this.activeLinkDecorationId=Ce.decorationId})}else this.cleanUpActiveLinkDecoration()}cleanUpActiveLinkDecoration(){const H=this.editor.getOption(69)==="altKey";if(this.activeLinkDecorationId){const W=this.currentOccurrences[this.activeLinkDecorationId];W&&this.editor.changeDecorations(ne=>{W.deactivate(ne,H)}),this.activeLinkDecorationId=null}}onEditorMouseUp(H){if(!this.isEnabled(H))return;const W=this.getLinkOccurrence(H.target.position);if(!W)return;this.openLinkOccurrence(W,H.hasSideBySideModifier,!0)}openLinkOccurrence(H,W,ne=!1){if(!this.openerService)return;const{link:Ce}=H;Ce.resolve(P.a.None).then(Le=>{if(typeof Le=="string"&&this.editor.hasModel()){const ce=this.editor.getModel().uri;if(ce.scheme===k.c.file&&Le.startsWith(`${k.c.file}:`)){const me=f.a.parse(Le);if(me.scheme===k.c.file){const Oe=S.i(me);let oe=null;Oe.startsWith("/./")?oe=`.${Oe.substr(1)}`:Oe.startsWith("//./")&&(oe=`.${Oe.substr(2)}`),oe&&(Le=S.g(ce,oe))}}}return this.openerService.open(Le,{openToSide:W,fromUserGesture:ne,allowContributedOpeners:!0,allowCommands:!0})},Le=>{const ce=Le instanceof Error?Le.message:Le;ce==="invalid"?this.notificationService.warn(j.a("invalid.url","Failed to open this link because it is not well-formed: {0}",Ce.url.toString())):ce==="missing"?this.notificationService.warn(j.a("missing.url","Failed to open this link because its target is missing.")):Object(L.f)(Le)})}getLinkOccurrence(H){if(!this.editor.hasModel()||!H)return null;const W=this.editor.getModel().getDecorationsInRange({startLineNumber:H.lineNumber,startColumn:H.column,endLineNumber:H.lineNumber,endColumn:H.column},0,!0);for(const ne of W){const Ce=this.currentOccurrences[ne.id];if(Ce)return Ce}return null}isEnabled(H,W){return Boolean(H.target.type===6&&(H.hasTriggerModifier||W&&W.keyCodeIsTriggerKey))}stop(){var H;this.timeout.cancel(),this.activeLinksList&&((H=this.activeLinksList)===null||H===void 0||H.dispose(),this.activeLinksList=null),this.computePromise&&(this.computePromise.cancel(),this.computePromise=null)}dispose(){this.listenersToRemove.dispose(),this.stop(),this.timeout.dispose()}};q.ID="editor.linkDetector",q.RECOMPUTE_TIME=1e3,q=Y([K(1,G.a),K(2,V.a)],q);class te extends d.b{constructor(){super({id:"editor.action.openLink",label:j.a("label","Open Link"),alias:"Open Link",precondition:void 0})}run(U,H){let W=q.get(H);if(!W)return;if(!H.hasModel())return;let ne=H.getSelections();for(let Ce of ne){let Le=W.getLinkOccurrence(Ce.getEndPosition());Le&&W.openLinkOccurrence(Le,!1)}}}Object(d.l)(q.ID,q),Object(d.j)(te),Object(z.f)((U,H)=>{const W=U.getColor(B.q);W&&H.addRule(`.monaco-editor .detected-link-active { color: ${W} !important; }`)})},"2MPD":function(ft,w,e){},"2Tsy":function(ft,w,e){},"2V9f":function(ft,w,e){},"3Rsk":function(ft,w,e){"use strict";e.d(w,"a",function(){return L});var h=e("MI8n"),P=e("ic2d");const L={JSONContribution:"base.contributions.json"};function A(O){return O.length>0&&O.charAt(O.length-1)==="#"?O.substring(0,O.length-1):O}class I{constructor(){this._onDidChangeSchema=new h.b,this.schemasById={}}registerSchema(O,S){this.schemasById[A(O)]=S,this._onDidChangeSchema.fire(O)}notifySchemaChanged(O){this._onDidChangeSchema.fire(O)}}const k=new I;P.a.add(L.JSONContribution,k)},"3rx1":function(ft,w,e){"use strict";e.d(w,"a",function(){return k}),e.d(w,"b",function(){return O});var h=e("PTeM"),P=e("tYmi"),L=e("MNsG"),A=e("gslv"),I=e("bY76");function k(S){if(!S)return;typeof S=="string"&&(S=I.a.file(S));const f=Object(A.b)(S)||(S.scheme===P.c.file?S.fsPath:S.path);return L.i&&Object(h.c)(f)?O(f):f}function O(S){return Object(h.a)(S)?S.charAt(0).toUpperCase()+S.slice(1):S}},"44XX":function(ft,w,e){"use strict";e.d(w,"a",function(){return l}),e.d(w,"b",function(){return g});var h=e("EffR"),P=e("cMOf"),L=e("GJhM"),A=e("6OMU"),I=e("zrhQ"),k=e("MI8n"),O=e("pmY6"),S=e("Sdnv"),f=e("QuOb"),u=e("746U"),d=e("51B1"),E=e.n(d);const p={separatorBorder:I.a.transparent};class n{constructor(y,C,v,D){this.container=y,this.view=C,this.disposable=D,this._cachedVisibleSize=void 0,typeof v=="number"?(this._size=v,this._cachedVisibleSize=void 0,y.classList.add("visible")):(this._size=0,this._cachedVisibleSize=v.cachedVisibleSize)}set size(y){this._size=y}get size(){return this._size}get visible(){return typeof this._cachedVisibleSize=="undefined"}setVisible(y,C){if(y===this.visible)return;y?(this.size=Object(S.b)(this._cachedVisibleSize,this.viewMinimumSize,this.viewMaximumSize),this._cachedVisibleSize=void 0):(this._cachedVisibleSize=typeof C=="number"?C:this.size,this.size=0),this.container.classList.toggle("visible",y),this.view.setVisible&&this.view.setVisible(y)}get minimumSize(){return this.visible?this.view.minimumSize:0}get viewMinimumSize(){return this.view.minimumSize}get maximumSize(){return this.visible?this.view.maximumSize:0}get viewMaximumSize(){return this.view.maximumSize}get priority(){return this.view.priority}get snap(){return!!this.view.snap}set enabled(y){this.container.style.pointerEvents=y?"":"none"}layout(y,C){this.layoutContainer(y),this.view.layout(this.size,y,C)}dispose(){return this.disposable.dispose(),this.view}}class b extends n{layoutContainer(y){this.container.style.top=`${y}px`,this.container.style.height=`${this.size}px`}}class m extends n{layoutContainer(y){this.container.style.left=`${y}px`,this.container.style.width=`${this.size}px`}}var c;(function(y){y[y.Idle=0]="Idle",y[y.Busy=1]="Busy"})(c||(c={}));var l;(function(y){y.Distribute={type:"distribute"};function C(D){return{type:"split",index:D}}y.Split=C;function v(D){return{type:"invisible",cachedVisibleSize:D}}y.Invisible=v})(l||(l={}));class g extends O.a{constructor(y,C={}){var v,D;super();this.size=0,this.contentSize=0,this.proportions=void 0,this.viewItems=[],this.sashItems=[],this.state=c.Idle,this._onDidSashChange=this._register(new k.b),this.onDidSashChange=this._onDidSashChange.event,this._onDidSashReset=this._register(new k.b),this._startSnappingEnabled=!0,this._endSnappingEnabled=!0,this.orientation=u.m(C.orientation)?0:C.orientation,this.inverseAltBehavior=!!C.inverseAltBehavior,this.proportionalLayout=u.m(C.proportionalLayout)?!0:!!C.proportionalLayout,this.getSashOrthogonalSize=C.getSashOrthogonalSize,this.el=document.createElement("div"),this.el.classList.add("monaco-split-view2"),this.el.classList.add(this.orientation===0?"vertical":"horizontal"),y.appendChild(this.el),this.sashContainer=Object(h.q)(this.el,Object(h.a)(".sash-container")),this.viewContainer=Object(h.a)(".split-view-container"),this.scrollable=new f.a(125,h.V),this.scrollableElement=this._register(new L.c(this.viewContainer,{vertical:this.orientation===0?(v=C.scrollbarVisibility)!==null&&v!==void 0?v:1:2,horizontal:this.orientation===1?(D=C.scrollbarVisibility)!==null&&D!==void 0?D:1:2},this.scrollable)),this.onDidScroll=this.scrollableElement.onScroll,this._register(this.onDidScroll(j=>{this.viewContainer.scrollTop=j.scrollTop,this.viewContainer.scrollLeft=j.scrollLeft})),Object(h.q)(this.el,this.scrollableElement.getDomNode()),this.style(C.styles||p),C.descriptor&&(this.size=C.descriptor.size,C.descriptor.views.forEach((j,V)=>{const G=u.m(j.visible)||j.visible?j.size:{type:"invisible",cachedVisibleSize:j.size},B=j.view;this.doAddView(B,G,V,!0)}),this.contentSize=this.viewItems.reduce((j,V)=>j+V.size,0),this.saveProportions())}get orthogonalStartSash(){return this._orthogonalStartSash}set orthogonalStartSash(y){for(const C of this.sashItems)C.sash.orthogonalStartSash=y;this._orthogonalStartSash=y}get orthogonalEndSash(){return this._orthogonalEndSash}set orthogonalEndSash(y){for(const C of this.sashItems)C.sash.orthogonalEndSash=y;this._orthogonalEndSash=y}get startSnappingEnabled(){return this._startSnappingEnabled}set startSnappingEnabled(y){if(this._startSnappingEnabled===y)return;this._startSnappingEnabled=y,this.updateSashEnablement()}get endSnappingEnabled(){return this._endSnappingEnabled}set endSnappingEnabled(y){if(this._endSnappingEnabled===y)return;this._endSnappingEnabled=y,this.updateSashEnablement()}style(y){y.separatorBorder.isTransparent()?(this.el.classList.remove("separator-border"),this.el.style.removeProperty("--separator-border")):(this.el.classList.add("separator-border"),this.el.style.setProperty("--separator-border",y.separatorBorder.toString()))}addView(y,C,v=this.viewItems.length,D){this.doAddView(y,C,v,D)}layout(y,C){const v=Math.max(this.size,this.contentSize);if(this.size=y,this.layoutContext=C,this.proportions)for(let D=0;Dthis.viewItems[G].priority===1),V=D.filter(G=>this.viewItems[G].priority===2);this.resize(this.viewItems.length-1,y-v,void 0,j,V)}this.distributeEmptySpace(),this.layoutViews()}saveProportions(){this.proportionalLayout&&this.contentSize>0&&(this.proportions=this.viewItems.map(y=>y.size/this.contentSize))}onSashStart({sash:y,start:C,alt:v}){for(const G of this.viewItems)G.enabled=!1;const D=this.sashItems.findIndex(G=>G.sash===y),j=Object(O.e)(Object(h.i)(document.body,"keydown",G=>V(this.sashDragState.current,G.altKey)),Object(h.i)(document.body,"keyup",()=>V(this.sashDragState.current,!1))),V=(G,B)=>{const z=this.viewItems.map(Se=>Se.size);let Y=Number.NEGATIVE_INFINITY,K=Number.POSITIVE_INFINITY;if(this.inverseAltBehavior&&(B=!B),B){const Se=D===this.sashItems.length-1;if(Se){const fe=this.viewItems[D];Y=(fe.minimumSize-fe.size)/2,K=(fe.maximumSize-fe.size)/2}else{const fe=this.viewItems[D+1];Y=(fe.size-fe.maximumSize)/2,K=(fe.size-fe.minimumSize)/2}}let Q,ee;if(!B){const Se=Object(A.r)(D,-1),fe=Object(A.r)(D+1,this.viewItems.length),q=Se.reduce((ce,me)=>ce+(this.viewItems[me].minimumSize-z[me]),0),te=Se.reduce((ce,me)=>ce+(this.viewItems[me].viewMaximumSize-z[me]),0),U=fe.length===0?Number.POSITIVE_INFINITY:fe.reduce((ce,me)=>ce+(z[me]-this.viewItems[me].minimumSize),0),H=fe.length===0?Number.NEGATIVE_INFINITY:fe.reduce((ce,me)=>ce+(z[me]-this.viewItems[me].viewMaximumSize),0),W=Math.max(q,H),ne=Math.min(U,te),Ce=this.findFirstSnapIndex(Se),Le=this.findFirstSnapIndex(fe);if(typeof Ce=="number"){const ce=this.viewItems[Ce],me=Math.floor(ce.viewMinimumSize/2);Q={index:Ce,limitDelta:ce.visible?W-me:W+me,size:ce.size}}if(typeof Le=="number"){const ce=this.viewItems[Le],me=Math.floor(ce.viewMinimumSize/2);ee={index:Le,limitDelta:ce.visible?ne+me:ne-me,size:ce.size}}}this.sashDragState={start:G,current:G,index:D,sizes:z,minDelta:Y,maxDelta:K,alt:B,snapBefore:Q,snapAfter:ee,disposable:j}};V(C,v)}onSashChange({current:y}){const{index:C,start:v,sizes:D,alt:j,minDelta:V,maxDelta:G,snapBefore:B,snapAfter:z}=this.sashDragState;this.sashDragState.current=y;const Y=y-v,K=this.resize(C,Y,D,void 0,void 0,V,G,B,z);if(j){const Q=C===this.sashItems.length-1,ee=this.viewItems.map(H=>H.size),Se=Q?C:C+1,fe=this.viewItems[Se],q=fe.size-fe.maximumSize,te=fe.size-fe.minimumSize,U=Q?C-1:C+1;this.resize(U,-K,ee,void 0,void 0,q,te)}this.distributeEmptySpace(),this.layoutViews()}onSashEnd(y){this._onDidSashChange.fire(y),this.sashDragState.disposable.dispose(),this.saveProportions();for(const C of this.viewItems)C.enabled=!0}onViewChange(y,C){const v=this.viewItems.indexOf(y);if(v<0||v>=this.viewItems.length)return;C=typeof C=="number"?C:y.size,C=Object(S.b)(C,y.minimumSize,y.maximumSize),this.inverseAltBehavior&&v>0?(this.resize(v-1,Math.floor((y.size-C)/2)),this.distributeEmptySpace(),this.layoutViews()):(y.size=C,this.relayout([v],void 0))}resizeView(y,C){if(this.state!==c.Idle)throw new Error("Cant modify splitview");if(this.state=c.Busy,y<0||y>=this.viewItems.length)return;const v=Object(A.r)(this.viewItems.length).filter(G=>G!==y),D=[...v.filter(G=>this.viewItems[G].priority===1),y],j=v.filter(G=>this.viewItems[G].priority===2),V=this.viewItems[y];C=Math.round(C),C=Object(S.b)(C,V.minimumSize,Math.min(V.maximumSize,this.size)),V.size=C,this.relayout(D,j),this.state=c.Idle}distributeViewSizes(){const y=[];let C=0;for(const G of this.viewItems)G.maximumSize-G.minimumSize>0&&(y.push(G),C+=G.size);const v=Math.floor(C/y.length);for(const G of y)G.size=Object(S.b)(v,G.minimumSize,G.maximumSize);const D=Object(A.r)(this.viewItems.length),j=D.filter(G=>this.viewItems[G].priority===1),V=D.filter(G=>this.viewItems[G].priority===2);this.relayout(j,V)}getViewSize(y){return y<0||y>=this.viewItems.length?-1:this.viewItems[y].size}doAddView(y,C,v=this.viewItems.length,D){if(this.state!==c.Idle)throw new Error("Cant modify splitview");this.state=c.Busy;const j=Object(h.a)(".split-view-view");v===this.viewItems.length?this.viewContainer.appendChild(j):this.viewContainer.insertBefore(j,this.viewContainer.children.item(v));const V=y.onDidChange(Q=>this.onViewChange(Y,Q)),G=Object(O.i)(()=>this.viewContainer.removeChild(j)),B=Object(O.e)(V,G);let z;typeof C=="number"?z=C:C.type==="split"?z=this.getViewSize(C.index)/2:C.type==="invisible"?z={cachedVisibleSize:C.cachedVisibleSize}:z=y.minimumSize;const Y=this.orientation===0?new b(j,y,z,B):new m(j,y,z,B);if(this.viewItems.splice(v,0,Y),this.viewItems.length>1){let Q={orthogonalStartSash:this.orthogonalStartSash,orthogonalEndSash:this.orthogonalEndSash};const ee=this.orientation===0?new P.b(this.sashContainer,{getHorizontalSashTop:ce=>this.getSashPosition(ce),getHorizontalSashWidth:this.getSashOrthogonalSize},Object.assign(Object.assign({},Q),{orientation:1})):new P.b(this.sashContainer,{getVerticalSashLeft:ce=>this.getSashPosition(ce),getVerticalSashHeight:this.getSashOrthogonalSize},Object.assign(Object.assign({},Q),{orientation:0})),Se=this.orientation===0?ce=>({sash:ee,start:ce.startY,current:ce.currentY,alt:ce.altKey}):ce=>({sash:ee,start:ce.startX,current:ce.currentX,alt:ce.altKey}),fe=k.c.map(ee.onDidStart,Se),q=fe(this.onSashStart,this),te=k.c.map(ee.onDidChange,Se),U=te(this.onSashChange,this),H=k.c.map(ee.onDidEnd,()=>this.sashItems.findIndex(ce=>ce.sash===ee)),W=H(this.onSashEnd,this),ne=ee.onDidReset(()=>{const ce=this.sashItems.findIndex(Ne=>Ne.sash===ee),me=Object(A.r)(ce,-1),Oe=Object(A.r)(ce+1,this.viewItems.length),oe=this.findFirstSnapIndex(me),De=this.findFirstSnapIndex(Oe);if(typeof oe=="number"&&!this.viewItems[oe].visible)return;if(typeof De=="number"&&!this.viewItems[De].visible)return;this._onDidSashReset.fire(ce)}),Ce=Object(O.e)(q,U,W,ne,ee),Le={sash:ee,disposable:Ce};this.sashItems.splice(v-1,0,Le)}j.appendChild(y.element);let K;typeof C!="number"&&C.type==="split"&&(K=[C.index]),D||this.relayout([v],K),this.state=c.Idle,!D&&typeof C!="number"&&C.type==="distribute"&&this.distributeViewSizes()}relayout(y,C){const v=this.viewItems.reduce((D,j)=>D+j.size,0);this.resize(this.viewItems.length-1,this.size-v,void 0,y,C),this.distributeEmptySpace(),this.layoutViews(),this.saveProportions()}resize(y,C,v=this.viewItems.map(Y=>Y.size),D,j,V=Number.NEGATIVE_INFINITY,G=Number.POSITIVE_INFINITY,B,z){if(y<0||y>=this.viewItems.length)return 0;const Y=Object(A.r)(y,-1),K=Object(A.r)(y+1,this.viewItems.length);if(j)for(const Le of j)Object(A.p)(Y,Le),Object(A.p)(K,Le);if(D)for(const Le of D)Object(A.o)(Y,Le),Object(A.o)(K,Le);const Q=Y.map(Le=>this.viewItems[Le]),ee=Y.map(Le=>v[Le]),Se=K.map(Le=>this.viewItems[Le]),fe=K.map(Le=>v[Le]),q=Y.reduce((Le,ce)=>Le+(this.viewItems[ce].minimumSize-v[ce]),0),te=Y.reduce((Le,ce)=>Le+(this.viewItems[ce].maximumSize-v[ce]),0),U=K.length===0?Number.POSITIVE_INFINITY:K.reduce((Le,ce)=>Le+(v[ce]-this.viewItems[ce].minimumSize),0),H=K.length===0?Number.NEGATIVE_INFINITY:K.reduce((Le,ce)=>Le+(v[ce]-this.viewItems[ce].maximumSize),0),W=Math.max(q,H,V),ne=Math.min(U,te,G);let Ce=!1;if(B){const Le=this.viewItems[B.index],ce=C>=B.limitDelta;Ce=ce!==Le.visible,Le.setVisible(ce,B.size)}if(!Ce&&z){const Le=this.viewItems[z.index],ce=CG+B.size,0);let v=this.size-C;const D=Object(A.r)(this.viewItems.length-1,-1),j=D.filter(G=>this.viewItems[G].priority===1),V=D.filter(G=>this.viewItems[G].priority===2);for(const G of V)Object(A.p)(D,G);for(const G of j)Object(A.o)(D,G);typeof y=="number"&&Object(A.o)(D,y);for(let G=0;v!==0&&GC+v.size,0);let y=0;for(const C of this.viewItems)C.layout(y,this.layoutContext),y+=C.size;this.sashItems.forEach(C=>C.sash.layout()),this.updateSashEnablement(),this.updateScrollableElement()}updateScrollableElement(){this.orientation===0?this.scrollableElement.setScrollDimensions({height:this.size,scrollHeight:this.contentSize}):this.scrollableElement.setScrollDimensions({width:this.size,scrollWidth:this.contentSize})}updateSashEnablement(){let y=!1;const C=this.viewItems.map(B=>y=B.size-B.minimumSize>0||y);y=!1;const v=this.viewItems.map(B=>y=B.maximumSize-B.size>0||y),D=[...this.viewItems].reverse();y=!1;const j=D.map(B=>y=B.size-B.minimumSize>0||y).reverse();y=!1;const V=D.map(B=>y=B.maximumSize-B.size>0||y).reverse();let G=0;for(let B=0;B0||this.startSnappingEnabled)?z.state=1:U&&C[B]&&(G0)return;if(!v.visible&&v.snap)return C}return}dispose(){super.dispose(),this.viewItems.forEach(y=>y.dispose()),this.viewItems=[],this.sashItems.forEach(y=>y.disposable.dispose()),this.sashItems=[]}}},"4bUh":function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("twdY");class P{constructor(A,I,k){this._lineTokensBrand=void 0,this._tokens=A,this._tokensCount=this._tokens.length>>>1,this._text=I,this._languageIdCodec=k}static createEmpty(A,I){const k=P.defaultTokenMetadata,O=new Uint32Array(2);return O[0]=A.length,O[1]=k,new P(O,A,I)}equals(A){return A instanceof P?this.slicedEquals(A,0,this._tokensCount):!1}slicedEquals(A,I,k){if(this._text!==A._text)return!1;if(this._tokensCount!==A._tokensCount)return!1;const O=I<<1,S=O+(k<<1);for(let f=O;f0?this._tokens[A-1<<1]:0}getMetadata(A){const I=this._tokens[(A<<1)+1];return I}getLanguageId(A){const I=this._tokens[(A<<1)+1],k=h.E.getLanguageId(I);return this._languageIdCodec.decodeLanguageId(k)}getStandardTokenType(A){const I=this._tokens[(A<<1)+1];return h.E.getTokenType(I)}getForeground(A){const I=this._tokens[(A<<1)+1];return h.E.getForeground(I)}getClassName(A){const I=this._tokens[(A<<1)+1];return h.E.getClassNameFromMetadata(I)}getInlineStyle(A,I){const k=this._tokens[(A<<1)+1];return h.E.getInlineStyleFromMetadata(k,I)}getEndOffset(A){return this._tokens[A<<1]}findTokenIndexAtOffset(A){return P.findIndexInTokensArray(this._tokens,A)}inflate(){return this}sliceAndInflate(A,I,k){return new L(this,A,I,k)}static convertToEndOffset(A,I){const k=A.length>>>1,O=k-1;for(let S=0;S>>1)-1;for(;kI&&(O=S)}return k}withInserted(A){if(A.length===0)return this;let I=0,k=0,O="";const S=new Array;let f=0;for(;;){let u=If){O+=this._text.substring(f,d.offset);const E=this._tokens[(I<<1)+1];S.push(O.length,E),f=d.offset}O+=d.text,S.push(O.length,d.tokenMetadata),k++}else break}return new P(new Uint32Array(S),O,this._languageIdCodec)}}P.defaultTokenMetadata=(0<<11|1<<14|2<<23)>>>0;class L{constructor(A,I,k,O){this._source=A,this._startOffset=I,this._endOffset=k,this._deltaOffset=O,this._firstTokenIndex=A.findTokenIndexAtOffset(I),this._tokensCount=0;for(let S=this._firstTokenIndex,f=A.getCount();S=k)break;this._tokensCount++}}equals(A){return A instanceof L?this._startOffset===A._startOffset&&this._endOffset===A._endOffset&&this._deltaOffset===A._deltaOffset&&this._source.slicedEquals(A._source,this._firstTokenIndex,this._tokensCount):!1}getCount(){return this._tokensCount}getForeground(A){return this._source.getForeground(this._firstTokenIndex+A)}getEndOffset(A){const I=this._source.getEndOffset(this._firstTokenIndex+A);return Math.min(this._endOffset,I)-this._startOffset+this._deltaOffset}getClassName(A){return this._source.getClassName(this._firstTokenIndex+A)}getInlineStyle(A,I){return this._source.getInlineStyle(this._firstTokenIndex+A,I)}findTokenIndexAtOffset(A){return this._source.findTokenIndexAtOffset(A+this._startOffset-this._deltaOffset)-this._firstTokenIndex}}},"4rho":function(ft,w,e){},"4sI4":function(ft,w,e){"use strict";e.r(w),e.d(w,"StandaloneReferencesController",function(){return d});var h=e("sswD"),P=e("Vxe3"),L=e("QY8A"),A=e("+7oY"),I=e("T8No"),k=e("Cg/j"),O=e("sM1p"),S=e("A+jI"),f=function(E,p,n,b){var m=arguments.length,c=m<3?p:b===null?b=Object.getOwnPropertyDescriptor(p,n):b,l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")c=Reflect.decorate(E,p,n,b);else for(var g=E.length-1;g>=0;g--)(l=E[g])&&(c=(m<3?l(c):m>3?l(p,n,c):l(p,n))||c);return m>3&&c&&Object.defineProperty(p,n,c),c},u=function(E,p){return function(n,b){p(n,b,E)}};let d=class extends L.a{constructor(p,n,b,m,c,l,g){super(!0,p,n,b,m,c,l,g)}};d=f([u(1,I.b),u(2,P.a),u(3,O.a),u(4,k.a),u(5,S.a),u(6,A.a)],d),Object(h.l)(L.a.ID,d)},"4y0V":function(ft,w,e){"use strict";e.d(w,"a",function(){return P}),e.d(w,"b",function(){return L});var h=e("MI8n");class P{constructor(A,I,k){const O=S=>this.emitter.fire(S);this.emitter=new h.b({onFirstListenerAdd:()=>A.addEventListener(I,O,k),onLastListenerRemove:()=>A.removeEventListener(I,O,k)})}get event(){return this.emitter.event}dispose(){this.emitter.dispose()}}function L(A){return A.preventDefault(),A.stopPropagation(),A}},"51B1":function(ft,w,e){},"51f4":function(ft,w,e){"use strict";e.d(w,"a",function(){return A});let h=!1,P=null;function L(I){if(!I.parent||I.parent===I)return null;try{let k=I.location,O=I.parent.location;if(k.origin!=="null"&&O.origin!=="null"&&k.origin!==O.origin)return h=!0,null}catch(k){return h=!0,null}return I.parent}class A{static getSameOriginWindowChain(){if(!P){P=[];let I=window,k;do k=L(I),k?P.push({window:I,iframeElement:I.frameElement||null}):P.push({window:I,iframeElement:null}),I=k;while(I)}return P.slice(0)}static hasDifferentOriginAncestor(){return P||this.getSameOriginWindowChain(),h}static getPositionOfChildWindowRelativeToAncestorWindow(I,k){if(!k||I===k)return{top:0,left:0};let O=0,S=0,f=this.getSameOriginWindowChain();for(const u of f){if(O+=u.window.scrollY,S+=u.window.scrollX,u.window===k)break;if(!u.iframeElement)break;let d=u.iframeElement.getBoundingClientRect();O+=d.top,S+=d.left}return{top:O,left:S}}}},"51su":function(ft,w,e){"use strict";e.d(w,"a",function(){return L});var h=e("8LL/"),P=e.n(h);const L="monaco-mouse-cursor-text"},"5RaG":function(ft,w,e){"use strict";e.r(w),e.d(w,"CursorUndoRedoController",function(){return O}),e.d(w,"CursorUndo",function(){return S}),e.d(w,"CursorRedo",function(){return f});var h=e("pmY6"),P=e("sswD"),L=e("wQH0"),A=e("3/fG");class I{constructor(u){this.selections=u}equals(u){const d=this.selections.length,E=u.selections.length;if(d!==E)return!1;for(let p=0;p{this._undoStack=[],this._redoStack=[]})),this._register(u.onDidChangeModelContent(d=>{this._undoStack=[],this._redoStack=[]})),this._register(u.onDidChangeCursorSelection(d=>{if(this._isCursorUndoRedo)return;if(!d.oldSelections)return;if(d.oldModelVersionId!==d.modelVersionId)return;const E=new I(d.oldSelections),p=this._undoStack.length>0&&this._undoStack[this._undoStack.length-1].cursorState.equals(E);p||(this._undoStack.push(new k(E,u.getScrollTop(),u.getScrollLeft())),this._redoStack=[],this._undoStack.length>50&&this._undoStack.shift())}))}static get(u){return u.getContribution(O.ID)}cursorUndo(){if(!this._editor.hasModel()||this._undoStack.length===0)return;this._redoStack.push(new k(new I(this._editor.getSelections()),this._editor.getScrollTop(),this._editor.getScrollLeft())),this._applyState(this._undoStack.pop())}cursorRedo(){if(!this._editor.hasModel()||this._redoStack.length===0)return;this._undoStack.push(new k(new I(this._editor.getSelections()),this._editor.getScrollTop(),this._editor.getScrollLeft())),this._applyState(this._redoStack.pop())}_applyState(u){this._isCursorUndoRedo=!0,this._editor.setSelections(u.cursorState.selections),this._editor.setScrollPosition({scrollTop:u.scrollTop,scrollLeft:u.scrollLeft}),this._isCursorUndoRedo=!1}}O.ID="editor.contrib.cursorUndoRedoController";class S extends P.b{constructor(){super({id:"cursorUndo",label:A.a("cursor.undo","Cursor Undo"),alias:"Cursor Undo",precondition:void 0,kbOpts:{kbExpr:L.a.textInputFocus,primary:2048|51,weight:100}})}run(u,d,E){O.get(d).cursorUndo()}}class f extends P.b{constructor(){super({id:"cursorRedo",label:A.a("cursor.redo","Cursor Redo"),alias:"Cursor Redo",precondition:void 0})}run(u,d,E){O.get(d).cursorRedo()}}Object(P.l)(O.ID,O),Object(P.j)(S),Object(P.j)(f)},"5TxY":function(ft,w,e){"use strict";e.d(w,"d",function(){return E}),e.d(w,"a",function(){return p}),e.d(w,"b",function(){return n}),e.d(w,"c",function(){return b});var h=e("D3Dy"),P=e("EffR"),L=e("X+cX"),A=e("MI8n"),I=e("pmY6"),k=e("ubTv"),O=e("MNsG"),S=e("N0LK"),f=e("Comh"),u=e("cGHE"),d=e("gCVg"),E;(function(l){l.Tap="-monaco-textarea-synthetic-tap"})(E||(E={}));const p={forceCopyWithSyntaxHighlighting:!1};class n{constructor(){this._lastState=null}set(l,g){this._lastState={lastCopiedValue:l,data:g}}get(l){return this._lastState&&this._lastState.lastCopiedValue===l?this._lastState.data:(this._lastState=null,null)}}n.INSTANCE=new n;class b extends I.a{constructor(l,g){super();this.textArea=g,this._onFocus=this._register(new A.b),this.onFocus=this._onFocus.event,this._onBlur=this._register(new A.b),this.onBlur=this._onBlur.event,this._onKeyDown=this._register(new A.b),this.onKeyDown=this._onKeyDown.event,this._onKeyUp=this._register(new A.b),this.onKeyUp=this._onKeyUp.event,this._onCut=this._register(new A.b),this.onCut=this._onCut.event,this._onPaste=this._register(new A.b),this.onPaste=this._onPaste.event,this._onType=this._register(new A.b),this.onType=this._onType.event,this._onCompositionStart=this._register(new A.b),this.onCompositionStart=this._onCompositionStart.event,this._onCompositionUpdate=this._register(new A.b),this.onCompositionUpdate=this._onCompositionUpdate.event,this._onCompositionEnd=this._register(new A.b),this.onCompositionEnd=this._onCompositionEnd.event,this._onSelectionChangeRequest=this._register(new A.b),this.onSelectionChangeRequest=this._onSelectionChangeRequest.event,this._host=l,this._textArea=this._register(new c(g)),this._asyncTriggerCut=this._register(new L.e(()=>this._onCut.fire(),0)),this._asyncFocusGainWriteScreenReaderContent=this._register(new L.e(()=>this.writeScreenReaderContent("asyncFocusGain"),0)),this._textAreaState=f.b.EMPTY,this._selectionChangeListener=null,this.writeScreenReaderContent("ctor"),this._hasFocus=!1,this._isDoingComposition=!1,this._nextCommand=0;let y=null;this._register(P.o(g.domNode,"keydown",j=>{(j.keyCode===109||this._isDoingComposition&&j.keyCode===1)&&j.stopPropagation(),j.equals(9)&&j.preventDefault(),y=j,this._onKeyDown.fire(j)})),this._register(P.o(g.domNode,"keyup",j=>{this._onKeyUp.fire(j)})),this._register(P.i(g.domNode,"compositionstart",j=>{if(f.c&&console.log("[compositionstart]",j),this._isDoingComposition)return;if(this._isDoingComposition=!0,O.f&&this._textAreaState.selectionStart===this._textAreaState.selectionEnd&&this._textAreaState.selectionStart>0&&this._textAreaState.value.substr(this._textAreaState.selectionStart-1,1)===j.data){const V=y&&y.equals(109)&&(y.code==="ArrowRight"||y.code==="ArrowLeft");if(V||h.g){f.c&&console.log("[compositionstart] Handling long press case on macOS + arrow key or Firefox",j),this._textAreaState=new f.b(this._textAreaState.value,this._textAreaState.selectionStart-1,this._textAreaState.selectionEnd,this._textAreaState.selectionStartPosition?new u.a(this._textAreaState.selectionStartPosition.lineNumber,this._textAreaState.selectionStartPosition.column-1):null,this._textAreaState.selectionEndPosition),this._onCompositionStart.fire({revealDeltaColumns:-1});return}}if(h.e){this._onCompositionStart.fire({revealDeltaColumns:-this._textAreaState.selectionStart});return}this._setAndWriteTextAreaState("compositionstart",f.b.EMPTY),this._onCompositionStart.fire({revealDeltaColumns:0})}));const C=j=>{const V=this._textAreaState,G=f.b.readFromTextArea(this._textArea);return[G,f.b.deduceInput(V,G,j)]},v=()=>{const j=this._textAreaState,V=f.b.readFromTextArea(this._textArea);return[V,f.b.deduceAndroidCompositionInput(j,V)]},D=j=>{const V=this._textAreaState,G=f.b.selectedText(j),B={text:G.value,replacePrevCharCnt:V.selectionEnd-V.selectionStart,replaceNextCharCnt:0,positionDelta:0};return[G,B]};this._register(P.i(g.domNode,"compositionupdate",j=>{if(f.c&&console.log("[compositionupdate]",j),h.e){const[B,z]=v();this._textAreaState=B,this._onType.fire(z),this._onCompositionUpdate.fire(j);return}const[V,G]=D(j.data||"");this._textAreaState=V,this._onType.fire(G),this._onCompositionUpdate.fire(j)})),this._register(P.i(g.domNode,"compositionend",j=>{if(f.c&&console.log("[compositionend]",j),!this._isDoingComposition)return;if(this._isDoingComposition=!1,h.e){const[B,z]=v();this._textAreaState=B,this._onType.fire(z),this._onCompositionEnd.fire();return}const[V,G]=D(j.data||"");this._textAreaState=V,this._onType.fire(G),(h.f||h.g)&&(this._textAreaState=f.b.readFromTextArea(this._textArea)),this._onCompositionEnd.fire()})),this._register(P.i(g.domNode,"input",()=>{if(this._textArea.setIgnoreSelectionChangeTime("received input event"),this._isDoingComposition)return;const[j,V]=C(O.f);if(V.replacePrevCharCnt===0&&V.text.length===1&&S.E(V.text.charCodeAt(0)))return;this._textAreaState=j,this._nextCommand===0?(V.text!==""||V.replacePrevCharCnt!==0)&&this._onType.fire(V):((V.text!==""||V.replacePrevCharCnt!==0)&&this._firePaste(V.text,null),this._nextCommand=0)})),this._register(P.i(g.domNode,"cut",j=>{this._textArea.setIgnoreSelectionChangeTime("received cut event"),this._ensureClipboardGetsEditorSelection(j),this._asyncTriggerCut.schedule()})),this._register(P.i(g.domNode,"copy",j=>{this._ensureClipboardGetsEditorSelection(j)})),this._register(P.i(g.domNode,"paste",j=>{if(this._textArea.setIgnoreSelectionChangeTime("received paste event"),m.canUseTextData(j)){const[V,G]=m.getTextData(j);V!==""&&this._firePaste(V,G)}else this._textArea.getSelectionStart()!==this._textArea.getSelectionEnd()&&this._setAndWriteTextAreaState("paste",f.b.EMPTY),this._nextCommand=1})),this._register(P.i(g.domNode,"focus",()=>{const j=this._hasFocus;this._setHasFocus(!0),h.h&&!j&&this._hasFocus&&this._asyncFocusGainWriteScreenReaderContent.schedule()})),this._register(P.i(g.domNode,"blur",()=>{this._isDoingComposition&&(this._isDoingComposition=!1,this.writeScreenReaderContent("blurWithoutCompositionEnd"),this._onCompositionEnd.fire()),this._setHasFocus(!1)})),this._register(P.i(g.domNode,E.Tap,()=>{h.e&&this._isDoingComposition&&(this._isDoingComposition=!1,this.writeScreenReaderContent("tapWithoutCompositionEnd"),this._onCompositionEnd.fire())}))}_installSelectionChangeListener(){let l=0;return P.i(document,"selectionchange",g=>{if(!this._hasFocus)return;if(this._isDoingComposition)return;if(!h.f)return;const y=Date.now(),C=y-l;if(l=y,C<5)return;const v=y-this._textArea.getIgnoreSelectionChangeTime();if(this._textArea.resetSelectionChangeTime(),v<100)return;if(!this._textAreaState.selectionStartPosition||!this._textAreaState.selectionEndPosition)return;const D=this._textArea.getValue();if(this._textAreaState.value!==D)return;const j=this._textArea.getSelectionStart(),V=this._textArea.getSelectionEnd();if(this._textAreaState.selectionStart===j&&this._textAreaState.selectionEnd===V)return;const G=this._textAreaState.deduceEditorPosition(j),B=this._host.deduceModelPosition(G[0],G[1],G[2]),z=this._textAreaState.deduceEditorPosition(V),Y=this._host.deduceModelPosition(z[0],z[1],z[2]),K=new d.a(B.lineNumber,B.column,Y.lineNumber,Y.column);this._onSelectionChangeRequest.fire(K)})}dispose(){super.dispose(),this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null)}focusTextArea(){this._setHasFocus(!0),this.refreshFocusState()}isFocused(){return this._hasFocus}refreshFocusState(){const l=P.F(this.textArea.domNode);l?this._setHasFocus(l.activeElement===this.textArea.domNode):P.N(this.textArea.domNode)?this._setHasFocus(document.activeElement===this.textArea.domNode):this._setHasFocus(!1)}_setHasFocus(l){if(this._hasFocus===l)return;this._hasFocus=l,this._selectionChangeListener&&(this._selectionChangeListener.dispose(),this._selectionChangeListener=null),this._hasFocus&&(this._selectionChangeListener=this._installSelectionChangeListener()),this._hasFocus&&this.writeScreenReaderContent("focusgain"),this._hasFocus?this._onFocus.fire():this._onBlur.fire()}_setAndWriteTextAreaState(l,g){this._hasFocus||(g=g.collapseSelection()),g.writeToTextArea(l,this._textArea,this._hasFocus),this._textAreaState=g}writeScreenReaderContent(l){if(this._isDoingComposition)return;this._setAndWriteTextAreaState(l,this._host.getScreenReaderContent(this._textAreaState))}_ensureClipboardGetsEditorSelection(l){const g=this._host.getDataToCopy(m.canUseTextData(l)),y={version:1,isFromEmptySelection:g.isFromEmptySelection,multicursorText:g.multicursorText,mode:g.mode};if(n.INSTANCE.set(h.g?g.text.replace(/\r\n/g,` `):g.text,y),!m.canUseTextData(l)){this._setAndWriteTextAreaState("copy or cut",f.b.selectedText(g.text));return}m.setTextData(l,g.text,g.html,y)}_firePaste(l,g){g||(g=n.INSTANCE.get(l)),this._onPaste.fire({text:l,metadata:g})}}class m{static canUseTextData(l){return!!l.clipboardData}static getTextData(l){if(l.clipboardData){l.preventDefault();const g=l.clipboardData.getData(k.a.text);let y=null;const C=l.clipboardData.getData("vscode-editor-data");if(typeof C=="string")try{y=JSON.parse(C),y.version!==1&&(y=null)}catch(v){}return[g,y]}throw new Error("ClipboardEventUtils.getTextData: Cannot use text data!")}static setTextData(l,g,y,C){if(l.clipboardData){l.clipboardData.setData(k.a.text,g),typeof y=="string"&&l.clipboardData.setData("text/html",y),l.clipboardData.setData("vscode-editor-data",JSON.stringify(C)),l.preventDefault();return}throw new Error("ClipboardEventUtils.setTextData: Cannot use text data!")}}class c extends I.a{constructor(l){super();this._actual=l,this._ignoreSelectionChangeTime=0}setIgnoreSelectionChangeTime(l){this._ignoreSelectionChangeTime=Date.now()}getIgnoreSelectionChangeTime(){return this._ignoreSelectionChangeTime}resetSelectionChangeTime(){this._ignoreSelectionChangeTime=0}getValue(){return this._actual.domNode.value}setValue(l,g){const y=this._actual.domNode;if(y.value===g)return;this.setIgnoreSelectionChangeTime("setValue"),y.value=g}getSelectionStart(){return this._actual.domNode.selectionDirection==="backward"?this._actual.domNode.selectionEnd:this._actual.domNode.selectionStart}getSelectionEnd(){return this._actual.domNode.selectionDirection==="backward"?this._actual.domNode.selectionStart:this._actual.domNode.selectionEnd}setSelectionRange(l,g,y){const C=this._actual.domNode;let v=null;const D=P.F(C);D?v=D.activeElement:v=document.activeElement;const j=v===C,V=C.selectionStart,G=C.selectionEnd;if(j&&V===g&&G===y){h.g&&window.parent!==window&&C.focus();return}if(j){this.setIgnoreSelectionChangeTime("setSelectionRange"),C.setSelectionRange(g,y),h.g&&window.parent!==window&&C.focus();return}try{const B=P.U(C);this.setIgnoreSelectionChangeTime("setSelectionRange"),C.focus(),C.setSelectionRange(g,y),P.S(C,B)}catch(B){}}}},"5nk5":function(ft,w,e){"use strict";e.d(w,"a",function(){return A}),e.d(w,"b",function(){return I});var h=e("HpOR"),P=e("erNZ");function L(O){return O.replace(/\n/g,"\\n").replace(/\r/g,"\\r")}class A{constructor(O,S,f,u){this.oldPosition=O,this.oldText=S,this.newPosition=f,this.newText=u}get oldLength(){return this.oldText.length}get oldEnd(){return this.oldPosition+this.oldText.length}get newLength(){return this.newText.length}get newEnd(){return this.newPosition+this.newText.length}toString(){return this.oldText.length===0?`(insert@${this.oldPosition} "${L(this.newText)}")`:this.newText.length===0?`(delete@${this.oldPosition} "${L(this.oldText)}")`:`(replace@${this.oldPosition} "${L(this.oldText)}" with "${L(this.newText)}")`}static _writeStringSize(O){return 4+2*O.length}static _writeString(O,S,f){const u=S.length;h.f(O,u,f),f+=4;for(let d=0;d(k.hasOwnProperty(O)||(k[O]=I(O)),k[O])}const A=L(I=>new P(I))},"62hx":function(ft,w,e){},"6OMU":function(ft,w,e){"use strict";e.d(w,"t",function(){return h}),e.d(w,"u",function(){return P}),e.d(w,"g",function(){return L}),e.d(w,"d",function(){return A}),e.d(w,"h",function(){return I}),e.d(w,"q",function(){return k}),e.d(w,"l",function(){return O}),e.d(w,"e",function(){return S}),e.d(w,"m",function(){return f}),e.d(w,"n",function(){return u}),e.d(w,"f",function(){return d}),e.d(w,"i",function(){return E}),e.d(w,"j",function(){return n}),e.d(w,"k",function(){return b}),e.d(w,"r",function(){return m}),e.d(w,"b",function(){return c}),e.d(w,"p",function(){return l}),e.d(w,"o",function(){return g}),e.d(w,"c",function(){return y}),e.d(w,"s",function(){return v}),e.d(w,"a",function(){return j});function h(V,G=0){return V[V.length-(1+G)]}function P(V){if(V.length===0)throw new Error("Invalid tail call");return[V.slice(0,V.length-1),V[V.length-1]]}function L(V,G,B=(z,Y)=>z===Y){if(V===G)return!0;if(!V||!G)return!1;if(V.length!==G.length)return!1;for(let z=0,Y=V.length;z0)Y=K-1;else return K}return-(z+1)}function I(V,G){let B=0,z=V.length;if(z===0)return 0;for(;B=G.length)throw new TypeError("invalid index");let z=G[Math.floor(G.length*Math.random())],Y=[],K=[],Q=[];for(let ee of G){const Se=B(ee,z);Se<0?Y.push(ee):Se>0?K.push(ee):Q.push(ee)}return V!!G)}function f(V){return!Array.isArray(V)||V.length===0}function u(V){return Array.isArray(V)&&V.length>0}function d(V,G=B=>B){const B=new Set;return V.filter(z=>{const Y=G(z);return B.has(Y)?!1:(B.add(Y),!0)})}function E(V,G){const B=p(V,G);return B===-1?void 0:V[B]}function p(V,G){for(let B=V.length-1;B>=0;B--){const z=V[B];if(G(z))return B}return-1}function n(V,G){return V.length>0?V[0]:G}function b(V){return[].concat(...V)}function m(V,G){let B=typeof G=="number"?V:0;typeof G=="number"?B=V:(B=0,G=V);const z=[];if(B<=G)for(let Y=B;YG;Y--)z.push(Y);return z}function c(V,G,B){const z=V.slice(0,G),Y=V.slice(G);return z.concat(B,Y)}function l(V,G){const B=V.indexOf(G);B>-1&&(V.splice(B,1),V.unshift(G))}function g(V,G){const B=V.indexOf(G);B>-1&&(V.splice(B,1),V.push(G))}function y(V){return Array.isArray(V)?V:[V]}function C(V,G,B){const z=D(V,G),Y=V.length,K=B.length;V.length=Y+K;for(let Q=Y-1;Q>=z;Q--)V[Q+K]=V[Q];for(let Q=0;Q=0&&V(this.items[G]);)G--;const B=G===this.lastIdx?null:this.items.slice(G+1,this.lastIdx+1);return this.lastIdx=G,B}peek(){return this.items[this.firstIdx]}}},"6lNC":function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:function(){return e.e(357).then(e.bind(null,"meXB"))}})},"6vuP":function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("Cg/j");const P=Object(h.c)("dialogService")},"7/Ik":function(ft,w,e){"use strict";e.d(w,"b",function(){return E}),e.d(w,"a",function(){return p});var h=e("D3Dy"),P=e("ZQ78"),L=e("EffR"),A=e("pg8w"),I=e("8HAY"),k=e("pmY6"),O=e("MNsG"),S=e("746U"),f=e("yEoX"),u=e.n(f),d=e("3/fG");class E extends k.a{constructor(n,b,m={}){super();this.options=m,this._context=n||this,this._action=b,b instanceof I.a&&this._register(b.onDidChange(c=>{if(!this.element)return;this.handleActionChangeEvent(c)}))}handleActionChangeEvent(n){n.enabled!==void 0&&this.updateEnabled(),n.checked!==void 0&&this.updateChecked(),n.class!==void 0&&this.updateClass(),n.label!==void 0&&(this.updateLabel(),this.updateTooltip()),n.tooltip!==void 0&&this.updateTooltip()}get actionRunner(){return this._actionRunner||(this._actionRunner=this._register(new I.b)),this._actionRunner}set actionRunner(n){this._actionRunner=n}getAction(){return this._action}isEnabled(){return this._action.enabled}setActionContext(n){this._context=n}render(n){const b=this.element=n;this._register(A.b.addTarget(n));const m=this.options&&this.options.draggable;m&&(n.draggable=!0,h.g&&this._register(Object(L.i)(n,L.d.DRAG_START,c=>{var l;return(l=c.dataTransfer)===null||l===void 0?void 0:l.setData(P.a.TEXT,this._action.label)}))),this._register(Object(L.i)(b,A.a.Tap,c=>this.onClick(c,!0))),this._register(Object(L.i)(b,L.d.MOUSE_DOWN,c=>{m||L.c.stop(c,!0),this._action.enabled&&c.button===0&&b.classList.add("active")})),O.f&&this._register(Object(L.i)(b,L.d.CONTEXT_MENU,c=>{c.button===0&&c.ctrlKey===!0&&this.onClick(c)})),this._register(Object(L.i)(b,L.d.CLICK,c=>{L.c.stop(c,!0),this.options&&this.options.isMenu||this.onClick(c)})),this._register(Object(L.i)(b,L.d.DBLCLICK,c=>{L.c.stop(c,!0)})),[L.d.MOUSE_UP,L.d.MOUSE_OUT].forEach(c=>{this._register(Object(L.i)(b,c,l=>{L.c.stop(l),b.classList.remove("active")}))})}onClick(n,b=!1){var m;L.c.stop(n,!0);const c=S.n(this._context)?((m=this.options)===null||m===void 0?void 0:m.useEventAsContext)?n:{preserveFocus:b}:this._context;this.actionRunner.run(this._action,c)}focus(){this.element&&(this.element.tabIndex=0,this.element.focus(),this.element.classList.add("focused"))}blur(){this.element&&(this.element.blur(),this.element.tabIndex=-1,this.element.classList.remove("focused"))}setFocusable(n){this.element&&(this.element.tabIndex=n?0:-1)}get trapsArrowNavigation(){return!1}updateEnabled(){}updateLabel(){}updateTooltip(){}updateClass(){}updateChecked(){}dispose(){this.element&&(this.element.remove(),this.element=void 0),super.dispose()}}class p extends E{constructor(n,b,m={}){super(n,b,m);this.options=m,this.options.icon=m.icon!==void 0?m.icon:!1,this.options.label=m.label!==void 0?m.label:!0,this.cssClass=""}render(n){super.render(n),this.element&&(this.label=Object(L.q)(this.element,Object(L.a)("a.action-label"))),this.label&&(this._action.id===I.d.ID?this.label.setAttribute("role","presentation"):this.options.isMenu?this.label.setAttribute("role","menuitem"):this.label.setAttribute("role","button")),this.options.label&&this.options.keybinding&&this.element&&(Object(L.q)(this.element,Object(L.a)("span.keybinding")).textContent=this.options.keybinding),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}focus(){this.label&&(this.label.tabIndex=0,this.label.focus())}blur(){this.label&&(this.label.tabIndex=-1)}setFocusable(n){this.label&&(this.label.tabIndex=n?0:-1)}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this.getAction().label)}updateTooltip(){let n=null;this.getAction().tooltip?n=this.getAction().tooltip:!this.options.label&&this.getAction().label&&this.options.icon&&(n=this.getAction().label,this.options.keybinding&&(n=d.a({key:"titleLabel",comment:["action title","action keybinding"]},"{0} ({1})",n,this.options.keybinding))),n&&this.label&&(this.label.title=n)}updateClass(){this.cssClass&&this.label&&this.label.classList.remove(...this.cssClass.split(" ")),this.options.icon?(this.cssClass=this.getAction().class,this.label&&(this.label.classList.add("codicon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" "))),this.updateEnabled()):this.label&&this.label.classList.remove("codicon")}updateEnabled(){this.getAction().enabled?(this.label&&(this.label.removeAttribute("aria-disabled"),this.label.classList.remove("disabled")),this.element&&this.element.classList.remove("disabled")):(this.label&&(this.label.setAttribute("aria-disabled","true"),this.label.classList.add("disabled")),this.element&&this.element.classList.add("disabled"))}updateChecked(){this.label&&(this.getAction().checked?this.label.classList.add("checked"):this.label.classList.remove("checked"))}}},"79sc":function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("Cg/j");const P=Object(h.c)("markerDecorationsService")},"7GBL":function(ft,w,e){},"7afs":function(ft,w,e){"use strict";e.d(w,"c",function(){return P}),e.d(w,"b",function(){return L}),e.d(w,"d",function(){return k}),e.d(w,"a",function(){return p});var h=e("N0LK");function P(n){return L(n,0)}function L(n,b){switch(typeof n){case"object":return n===null?A(349,b):Array.isArray(n)?O(n,b):S(n,b);case"string":return k(n,b);case"boolean":return I(n,b);case"number":return A(n,b);case"undefined":return A(937,b);default:return A(617,b)}}function A(n,b){return(b<<5)-b+n|0}function I(n,b){return A(n?433:863,b)}function k(n,b){b=A(149417,b);for(let m=0,c=n.length;mL(c,m),b)}function S(n,b){return b=A(181387,b),Object.keys(n).sort().reduce((m,c)=>(m=k(c,m),L(n[c],m)),b)}function f(n,b,m=32){const c=m-b,l=~((1<>>c)>>>0}function u(n,b=0,m=n.byteLength,c=0){for(let l=0;lm.toString(16).padStart(2,"0")).join(""):d((n>>>0).toString(16),b/4)}class p{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(64+3),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(n){const b=n.length;if(b===0)return;const m=this._buff;let c=this._buffLen,l=this._leftoverHighSurrogate,g,y;for(l!==0?(g=l,y=-1,l=0):(g=n.charCodeAt(0),y=0);;){let C=g;if(h.E(g))if(y+1>>6,n[b++]=128|(m&63)>>>0):m<65536?(n[b++]=224|(m&61440)>>>12,n[b++]=128|(m&4032)>>>6,n[b++]=128|(m&63)>>>0):(n[b++]=240|(m&1835008)>>>18,n[b++]=128|(m&258048)>>>12,n[b++]=128|(m&4032)>>>6,n[b++]=128|(m&63)>>>0),b>=64&&(this._step(),b-=64,this._totalLen+=64,n[0]=n[64+0],n[1]=n[64+1],n[2]=n[64+2]),b}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),E(this._h0)+E(this._h1)+E(this._h2)+E(this._h3)+E(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,u(this._buff,this._buffLen),this._buffLen>56&&(this._step(),u(this._buff));const n=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(n/4294967296),!1),this._buffDV.setUint32(60,n%4294967296,!1),this._step()}_step(){const n=p._bigBlock32,b=this._buffDV;for(let j=0;j<64;j+=4)n.setUint32(j,b.getUint32(j,!1),!1);for(let j=64;j<320;j+=4)n.setUint32(j,f(n.getUint32(j-12,!1)^n.getUint32(j-32,!1)^n.getUint32(j-56,!1)^n.getUint32(j-64,!1),1),!1);let m=this._h0,c=this._h1,l=this._h2,g=this._h3,y=this._h4,C,v,D;for(let j=0;j<80;j++)j<20?(C=c&l|~c&g,v=1518500249):j<40?(C=c^l^g,v=1859775393):j<60?(C=c&l|c&g|l&g,v=2400959708):(C=c^l^g,v=3395469782),D=f(m,5)+C+y+v+n.getUint32(j*4,!1)&4294967295,y=g,g=l,l=f(c,30),c=m,m=D;this._h0=this._h0+m&4294967295,this._h1=this._h1+c&4294967295,this._h2=this._h2+l&4294967295,this._h3=this._h3+g&4294967295,this._h4=this._h4+y&4294967295}}p._bigBlock32=new DataView(new ArrayBuffer(320))},"7lZ/":function(ft,w,e){"use strict";e.d(w,"a",function(){return A});var h=e("EffR"),P=e("fdyd"),L=e("qj0h");class A{constructor(I,k){this.supportIcons=k,this.text="",this.title="",this.highlights=[],this.didEverRender=!1,this.domNode=document.createElement("span"),this.domNode.className="monaco-highlighted-label",I.appendChild(this.domNode)}get element(){return this.domNode}set(I,k=[],O="",S){if(I||(I=""),S&&(I=A.escapeNewLines(I,k)),this.didEverRender&&this.text===I&&this.title===O&&L.d(this.highlights,k))return;this.text=I,this.title=O,this.highlights=k,this.render()}render(){const I=[];let k=0;for(const O of this.highlights){if(O.end===O.start)continue;if(k{S=f===`\r `?-1:0,u+=O;for(const d of k){if(d.end<=u)continue;d.start>=u&&(d.start+=S),d.end>=u&&(d.end+=S)}return O+=S,"\u23CE"})}}},"7zd4":function(ft,w,e){},"8ATB":function(ft,w,e){},"8HsV":function(ft,w,e){"use strict";e.d(w,"a",function(){return h});class h{constructor(...P){this._entries=new Map;for(let[L,A]of P)this.set(L,A)}set(P,L){const A=this._entries.get(P);return this._entries.set(P,L),A}has(P){return this._entries.has(P)}get(P){return this._entries.get(P)}}},"8LL/":function(ft,w,e){},"8XyJ":function(ft,w,e){"use strict";e.r(w),e.d(w,"InsertCursorAbove",function(){return y}),e.d(w,"InsertCursorBelow",function(){return C}),e.d(w,"MultiCursorSessionResult",function(){return V}),e.d(w,"MultiCursorSession",function(){return G}),e.d(w,"MultiCursorSelectionController",function(){return B}),e.d(w,"MultiCursorSelectionControllerAction",function(){return z}),e.d(w,"AddSelectionToNextFindMatchAction",function(){return Y}),e.d(w,"AddSelectionToPreviousFindMatchAction",function(){return K}),e.d(w,"MoveSelectionToNextFindMatchAction",function(){return Q}),e.d(w,"MoveSelectionToPreviousFindMatchAction",function(){return ee}),e.d(w,"SelectHighlightsAction",function(){return Se}),e.d(w,"CompatChangeAll",function(){return fe}),e.d(w,"SelectionHighlighter",function(){return te});var h=e("OBOq"),P=e("X+cX"),L=e("/kV6"),A=e("pmY6"),I=e("sswD"),k=e("oAeH"),O=e("aokT"),S=e("gCVg"),f=e("wQH0"),u=e("M1Kb"),d=e("tX9W"),E=e("twdY"),p=e("oQaD"),n=e("3/fG"),b=e("fjLI"),m=e("T8No"),c=e("MD5Z"),l=e("t9D7");function g(W,ne){const Ce=ne.filter(Le=>!W.find(ce=>ce.equals(Le)));if(Ce.length>=1){const Le=Ce.map(me=>`line ${me.viewState.position.lineNumber} column ${me.viewState.position.column}`).join(", "),ce=Ce.length===1?n.a("cursorAdded","Cursor added: {0}",Le):n.a("cursorsAdded","Cursors added: {0}",Le);Object(h.c)(ce)}}class y extends I.b{constructor(){super({id:"editor.action.insertCursorAbove",label:n.a("mutlicursor.insertAbove","Add Cursor Above"),alias:"Add Cursor Above",precondition:void 0,kbOpts:{kbExpr:f.a.editorTextFocus,primary:2048|512|16,linux:{primary:1024|512|16,secondary:[2048|1024|16]},weight:100},menuOpts:{menuId:b.b.MenubarSelectionMenu,group:"3_multi",title:n.a({key:"miInsertCursorAbove",comment:["&& denotes a mnemonic"]},"&&Add Cursor Above"),order:2}})}run(W,ne,Ce){if(!ne.hasModel())return;let Le=!0;Ce&&Ce.logicalLine===!1&&(Le=!1);const ce=ne._getViewModel();if(ce.cursorConfig.readOnly)return;ce.pushStackElement();const me=ce.getCursorStates();ce.setCursorStates(Ce.source,3,k.b.addCursorUp(ce,me,Le)),ce.revealTopMostCursor(Ce.source),g(me,ce.getCursorStates())}}class C extends I.b{constructor(){super({id:"editor.action.insertCursorBelow",label:n.a("mutlicursor.insertBelow","Add Cursor Below"),alias:"Add Cursor Below",precondition:void 0,kbOpts:{kbExpr:f.a.editorTextFocus,primary:2048|512|18,linux:{primary:1024|512|18,secondary:[2048|1024|18]},weight:100},menuOpts:{menuId:b.b.MenubarSelectionMenu,group:"3_multi",title:n.a({key:"miInsertCursorBelow",comment:["&& denotes a mnemonic"]},"A&&dd Cursor Below"),order:3}})}run(W,ne,Ce){if(!ne.hasModel())return;let Le=!0;Ce&&Ce.logicalLine===!1&&(Le=!1);const ce=ne._getViewModel();if(ce.cursorConfig.readOnly)return;ce.pushStackElement();const me=ce.getCursorStates();ce.setCursorStates(Ce.source,3,k.b.addCursorDown(ce,me,Le)),ce.revealBottomMostCursor(Ce.source),g(me,ce.getCursorStates())}}class v extends I.b{constructor(){super({id:"editor.action.insertCursorAtEndOfEachLineSelected",label:n.a("mutlicursor.insertAtEndOfEachLineSelected","Add Cursors to Line Ends"),alias:"Add Cursors to Line Ends",precondition:void 0,kbOpts:{kbExpr:f.a.editorTextFocus,primary:1024|512|39,weight:100},menuOpts:{menuId:b.b.MenubarSelectionMenu,group:"3_multi",title:n.a({key:"miInsertCursorAtEndOfEachLineSelected",comment:["&& denotes a mnemonic"]},"Add C&&ursors to Line Ends"),order:4}})}getCursorsForSelection(W,ne,Ce){if(W.isEmpty())return;for(let Le=W.startLineNumber;Le1&&Ce.push(new S.a(W.endLineNumber,W.endColumn,W.endLineNumber,W.endColumn))}run(W,ne){if(!ne.hasModel())return;const Ce=ne.getModel(),Le=ne.getSelections(),ce=ne._getViewModel(),me=ce.getCursorStates();let Oe=[];Le.forEach(oe=>this.getCursorsForSelection(oe,Ce,Oe)),Oe.length>0&&ne.setSelections(Oe),g(me,ce.getCursorStates())}}class D extends I.b{constructor(){super({id:"editor.action.addCursorsToBottom",label:n.a("mutlicursor.addCursorsToBottom","Add Cursors To Bottom"),alias:"Add Cursors To Bottom",precondition:void 0})}run(W,ne){if(!ne.hasModel())return;const Ce=ne.getSelections(),Le=ne.getModel().getLineCount();let ce=[];for(let oe=Ce[0].startLineNumber;oe<=Le;oe++)ce.push(new S.a(oe,Ce[0].startColumn,oe,Ce[0].endColumn));const me=ne._getViewModel(),Oe=me.getCursorStates();ce.length>0&&ne.setSelections(ce),g(Oe,me.getCursorStates())}}class j extends I.b{constructor(){super({id:"editor.action.addCursorsToTop",label:n.a("mutlicursor.addCursorsToTop","Add Cursors To Top"),alias:"Add Cursors To Top",precondition:void 0})}run(W,ne){if(!ne.hasModel())return;const Ce=ne.getSelections();let Le=[];for(let Oe=Ce[0].startLineNumber;Oe>=1;Oe--)Le.push(new S.a(Oe,Ce[0].startColumn,Oe,Ce[0].endColumn));const ce=ne._getViewModel(),me=ce.getCursorStates();Le.length>0&&ne.setSelections(Le),g(me,ce.getCursorStates())}}class V{constructor(W,ne,Ce){this.selections=W,this.revealRange=ne,this.revealScrollType=Ce}}class G{constructor(W,ne,Ce,Le,ce,me,Oe){this._editor=W,this.findController=ne,this.isDisconnectedFromFindController=Ce,this.searchText=Le,this.wholeWord=ce,this.matchCase=me,this.currentMatch=Oe}static create(W,ne){if(!W.hasModel())return null;const Ce=ne.getState();if(!W.hasTextFocus()&&Ce.isRevealed&&Ce.searchString.length>0)return new G(W,ne,!1,Ce.searchString,Ce.wholeWord,Ce.matchCase,null);let Le=!1,ce,me;const Oe=W.getSelections();Oe.length===1&&Oe[0].isEmpty()?(Le=!0,ce=!0,me=!0):(ce=Ce.wholeWord,me=Ce.matchCase);const oe=W.getSelection();let De,Ne=null;if(oe.isEmpty()){const ve=W.getConfiguredWordAtPosition(oe.getStartPosition());if(!ve)return null;De=ve.word,Ne=new S.a(oe.startLineNumber,ve.startColumn,oe.startLineNumber,ve.endColumn)}else De=W.getModel().getValueInRange(oe).replace(/\r\n/g,` `);return new G(W,ne,Le,De,ce,me,Ne)}addSelectionToNextFindMatch(){if(!this._editor.hasModel())return null;const W=this._getNextMatch();if(!W)return null;const ne=this._editor.getSelections();return new V(ne.concat(W),W,0)}moveSelectionToNextFindMatch(){if(!this._editor.hasModel())return null;const W=this._getNextMatch();if(!W)return null;const ne=this._editor.getSelections();return new V(ne.slice(0,ne.length-1).concat(W),W,0)}_getNextMatch(){if(!this._editor.hasModel())return null;if(this.currentMatch){const Le=this.currentMatch;return this.currentMatch=null,Le}this.findController.highlightFindOptions();const W=this._editor.getSelections(),ne=W[W.length-1],Ce=this._editor.getModel().findNextMatch(this.searchText,ne.getEndPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(115):null,!1);return Ce?new S.a(Ce.range.startLineNumber,Ce.range.startColumn,Ce.range.endLineNumber,Ce.range.endColumn):null}addSelectionToPreviousFindMatch(){if(!this._editor.hasModel())return null;const W=this._getPreviousMatch();if(!W)return null;const ne=this._editor.getSelections();return new V(ne.concat(W),W,0)}moveSelectionToPreviousFindMatch(){if(!this._editor.hasModel())return null;const W=this._getPreviousMatch();if(!W)return null;const ne=this._editor.getSelections();return new V(ne.slice(0,ne.length-1).concat(W),W,0)}_getPreviousMatch(){if(!this._editor.hasModel())return null;if(this.currentMatch){const Le=this.currentMatch;return this.currentMatch=null,Le}this.findController.highlightFindOptions();const W=this._editor.getSelections(),ne=W[W.length-1],Ce=this._editor.getModel().findPreviousMatch(this.searchText,ne.getStartPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(115):null,!1);return Ce?new S.a(Ce.range.startLineNumber,Ce.range.startColumn,Ce.range.endLineNumber,Ce.range.endColumn):null}selectAll(){return this._editor.hasModel()?(this.findController.highlightFindOptions(),this._editor.getModel().findMatches(this.searchText,!0,!1,this.matchCase,this.wholeWord?this._editor.getOption(115):null,!1,1073741824)):[]}}class B extends A.a{constructor(W){super();this._sessionDispose=this._register(new A.b),this._editor=W,this._ignoreSelectionChange=!1,this._session=null}static get(W){return W.getContribution(B.ID)}dispose(){this._endSession(),super.dispose()}_beginSessionIfNeeded(W){if(!this._session){const ne=G.create(this._editor,W);if(!ne)return;this._session=ne;const Ce={searchString:this._session.searchText};this._session.isDisconnectedFromFindController&&(Ce.wholeWordOverride=1,Ce.matchCaseOverride=1,Ce.isRegexOverride=2),W.getState().change(Ce,!1),this._sessionDispose.add(this._editor.onDidChangeCursorSelection(Le=>{if(this._ignoreSelectionChange)return;this._endSession()})),this._sessionDispose.add(this._editor.onDidBlurEditorText(()=>{this._endSession()})),this._sessionDispose.add(W.getState().onFindReplaceStateChange(Le=>{(Le.matchCase||Le.wholeWord)&&this._endSession()}))}}_endSession(){if(this._sessionDispose.clear(),this._session&&this._session.isDisconnectedFromFindController){const W={wholeWordOverride:0,matchCaseOverride:0,isRegexOverride:0};this._session.findController.getState().change(W,!1)}this._session=null}_setSelections(W){this._ignoreSelectionChange=!0,this._editor.setSelections(W),this._ignoreSelectionChange=!1}_expandEmptyToWord(W,ne){if(!ne.isEmpty())return ne;const Ce=this._editor.getConfiguredWordAtPosition(ne.getStartPosition());return Ce?new S.a(ne.startLineNumber,Ce.startColumn,ne.startLineNumber,Ce.endColumn):ne}_applySessionResult(W){if(!W)return;this._setSelections(W.selections),W.revealRange&&this._editor.revealRangeInCenterIfOutsideViewport(W.revealRange,W.revealScrollType)}getSession(W){return this._session}addSelectionToNextFindMatch(W){if(!this._editor.hasModel())return;if(!this._session){const ne=this._editor.getSelections();if(ne.length>1){const Ce=W.getState(),Le=Ce.matchCase,ce=U(this._editor.getModel(),ne,Le);if(!ce){const me=this._editor.getModel();let Oe=[];for(let oe=0,De=ne.length;oe0&&Ce.isRegex)ne=this._editor.getModel().findMatches(Ce.searchString,!0,Ce.isRegex,Ce.matchCase,Ce.wholeWord?this._editor.getOption(115):null,!1,1073741824);else{if(this._beginSessionIfNeeded(W),!this._session)return;ne=this._session.selectAll()}if(Ce.searchScope){const Le=Ce.searchScope;let ce=[];ne.forEach(me=>{Le.forEach(Oe=>{me.range.endLineNumber<=Oe.endLineNumber&&me.range.startLineNumber>=Oe.startLineNumber&&ce.push(me)})}),ne=ce}if(ne.length>0){const Le=this._editor.getSelection();for(let ce=0,me=ne.length;cenew S.a(ce.range.startLineNumber,ce.range.startColumn,ce.range.endLineNumber,ce.range.endColumn)))}}}B.ID="editor.contrib.multiCursorController";class z extends I.b{run(W,ne){const Ce=B.get(ne);if(!Ce)return;const Le=p.CommonFindController.get(ne);if(!Le)return;const ce=ne._getViewModel();if(ce){const me=ce.getCursorStates();this._run(Ce,Le),g(me,ce.getCursorStates())}}}class Y extends z{constructor(){super({id:"editor.action.addSelectionToNextFindMatch",label:n.a("addSelectionToNextFindMatch","Add Selection To Next Find Match"),alias:"Add Selection To Next Find Match",precondition:void 0,kbOpts:{kbExpr:f.a.focus,primary:2048|34,weight:100},menuOpts:{menuId:b.b.MenubarSelectionMenu,group:"3_multi",title:n.a({key:"miAddSelectionToNextFindMatch",comment:["&& denotes a mnemonic"]},"Add &&Next Occurrence"),order:5}})}_run(W,ne){W.addSelectionToNextFindMatch(ne)}}class K extends z{constructor(){super({id:"editor.action.addSelectionToPreviousFindMatch",label:n.a("addSelectionToPreviousFindMatch","Add Selection To Previous Find Match"),alias:"Add Selection To Previous Find Match",precondition:void 0,menuOpts:{menuId:b.b.MenubarSelectionMenu,group:"3_multi",title:n.a({key:"miAddSelectionToPreviousFindMatch",comment:["&& denotes a mnemonic"]},"Add P&&revious Occurrence"),order:6}})}_run(W,ne){W.addSelectionToPreviousFindMatch(ne)}}class Q extends z{constructor(){super({id:"editor.action.moveSelectionToNextFindMatch",label:n.a("moveSelectionToNextFindMatch","Move Last Selection To Next Find Match"),alias:"Move Last Selection To Next Find Match",precondition:void 0,kbOpts:{kbExpr:f.a.focus,primary:Object(L.c)(2048|41,2048|34),weight:100}})}_run(W,ne){W.moveSelectionToNextFindMatch(ne)}}class ee extends z{constructor(){super({id:"editor.action.moveSelectionToPreviousFindMatch",label:n.a("moveSelectionToPreviousFindMatch","Move Last Selection To Previous Find Match"),alias:"Move Last Selection To Previous Find Match",precondition:void 0})}_run(W,ne){W.moveSelectionToPreviousFindMatch(ne)}}class Se extends z{constructor(){super({id:"editor.action.selectHighlights",label:n.a("selectAllOccurrencesOfFindMatch","Select All Occurrences of Find Match"),alias:"Select All Occurrences of Find Match",precondition:void 0,kbOpts:{kbExpr:f.a.focus,primary:2048|1024|42,weight:100},menuOpts:{menuId:b.b.MenubarSelectionMenu,group:"3_multi",title:n.a({key:"miSelectHighlights",comment:["&& denotes a mnemonic"]},"Select All &&Occurrences"),order:7}})}_run(W,ne){W.selectAll(ne)}}class fe extends z{constructor(){super({id:"editor.action.changeAll",label:n.a("changeAll.label","Change All Occurrences"),alias:"Change All Occurrences",precondition:m.a.and(f.a.writable,f.a.editorTextFocus),kbOpts:{kbExpr:f.a.editorTextFocus,primary:2048|60,weight:100},contextMenuOpts:{group:"1_modification",order:1.2}})}_run(W,ne){W.selectAll(ne)}}class q{constructor(W,ne,Ce,Le){this.searchText=W,this.matchCase=ne,this.wordSeparators=Ce,this.modelVersionId=Le}static softEquals(W,ne){return!W&&!ne?!0:!W||!ne?!1:W.searchText===ne.searchText&&W.matchCase===ne.matchCase&&W.wordSeparators===ne.wordSeparators&&W.modelVersionId===ne.modelVersionId}}class te extends A.a{constructor(W){super();this.editor=W,this._isEnabled=W.getOption(96),this.decorations=[],this.updateSoon=this._register(new P.e(()=>this._update(),300)),this.state=null,this._register(W.onDidChangeConfiguration(ne=>{this._isEnabled=W.getOption(96)})),this._register(W.onDidChangeCursorSelection(ne=>{if(!this._isEnabled)return;ne.selection.isEmpty()?ne.reason===3?(this.state&&this._setState(null),this.updateSoon.schedule()):this._setState(null):this._update()})),this._register(W.onDidChangeModel(ne=>{this._setState(null)})),this._register(W.onDidChangeModelContent(ne=>{this._isEnabled&&this.updateSoon.schedule()})),this._register(p.CommonFindController.get(W).getState().onFindReplaceStateChange(ne=>{this._update()}))}_update(){this._setState(te._createState(this._isEnabled,this.editor))}static _createState(W,ne){if(!W)return null;if(!ne.hasModel())return null;const Ce=ne.getSelection();if(Ce.startLineNumber!==Ce.endLineNumber)return null;const Le=B.get(ne);if(!Le)return null;const ce=p.CommonFindController.get(ne);if(!ce)return null;let me=Le.getSession(ce);if(!me){const De=ne.getSelections();if(De.length>1){const Ne=ce.getState(),ve=Ne.matchCase,re=U(ne.getModel(),De,ve);if(!re)return null}me=G.create(ne,ce)}if(!me)return null;if(me.currentMatch)return null;if(/^[ \t]+$/.test(me.searchText))return null;if(me.searchText.length>200)return null;const Oe=ce.getState(),oe=Oe.matchCase;if(Oe.isRevealed){let De=Oe.searchString;oe||(De=De.toLowerCase());let Ne=me.searchText;if(oe||(Ne=Ne.toLowerCase()),De===Ne&&me.matchCase===Oe.matchCase&&me.wholeWord===Oe.wholeWord&&!Oe.isRegex)return null}return new q(me.searchText,me.matchCase,me.wholeWord?ne.getOption(115):null,ne.getModel().getVersionId())}_setState(W){if(q.softEquals(this.state,W)){this.state=W;return}if(this.state=W,!this.state){this.decorations=this.editor.deltaDecorations(this.decorations,[]);return}if(!this.editor.hasModel())return;const ne=this.editor.getModel();if(ne.isTooLargeForTokenization())return;const Ce=E.i.has(ne)&&this.editor.getOption(71);let Le=ne.findMatches(this.state.searchText,!0,!1,this.state.matchCase,this.state.wordSeparators,!1).map(oe=>oe.range);Le.sort(O.a.compareRangesUsingStarts);let ce=this.editor.getSelections();ce.sort(O.a.compareRangesUsingStarts);let me=[];for(let oe=0,De=0,Ne=Le.length,ve=ce.length;oe=ve)me.push(re),oe++;else{const we=O.a.compareRangesUsingStarts(re,ce[De]);we<0?((ce[De].isEmpty()||!O.a.areIntersecting(re,ce[De]))&&me.push(re),oe++):(we>0||oe++,De++)}}const Oe=me.map(oe=>({range:oe,options:Ce?te._SELECTION_HIGHLIGHT:te._SELECTION_HIGHLIGHT_OVERVIEW}));this.decorations=this.editor.deltaDecorations(this.decorations,Oe)}dispose(){this._setState(null),super.dispose()}}te.ID="editor.contrib.selectionHighlighter",te._SELECTION_HIGHLIGHT_OVERVIEW=d.b.register({description:"selection-highlight-overview",stickiness:1,className:"selectionHighlight",minimap:{color:Object(l.g)(c.ic),position:u.f.Inline},overviewRuler:{color:Object(l.g)(c.pc),position:u.g.Center}}),te._SELECTION_HIGHLIGHT=d.b.register({description:"selection-highlight",stickiness:1,className:"selectionHighlight"});function U(W,ne,Ce){const Le=H(W,ne[0],!Ce);for(let ce=1,me=ne.length;ce=0;le--)(lt=nt[le])&&(ht=(no<3?lt(ht):no>3?lt(rt,wt,ht):lt(rt,wt))||ht);return no>3&&ht&&Object.defineProperty(rt,wt,ht),ht},K=function(nt,rt){return function(wt,Pt){rt(wt,Pt,nt)}};const Q=new D.c("hasSymbols",!1,Object(v.a)("hasSymbols","Whether there are symbol locations that can be navigated via keyboard-only.")),ee=Object(V.c)("ISymbolNavigationService");let Se=class{constructor(rt,wt,Pt,no){this._editorService=wt,this._notificationService=Pt,this._keybindingService=no,this._currentModel=void 0,this._currentIdx=-1,this._ignoreEditorChange=!1,this._ctxHasSymbols=Q.bindTo(rt)}reset(){var rt,wt;this._ctxHasSymbols.reset(),(rt=this._currentState)===null||rt===void 0||rt.dispose(),(wt=this._currentMessage)===null||wt===void 0||wt.dispose(),this._currentModel=void 0,this._currentIdx=-1}put(rt){const wt=rt.parent.parent;if(wt.references.length<=1){this.reset();return}this._currentModel=wt,this._currentIdx=wt.references.indexOf(rt),this._ctxHasSymbols.set(!0),this._showMessage();const Pt=new fe(this._editorService),no=Pt.onDidChange(ht=>{if(this._ignoreEditorChange)return;const lt=this._editorService.getActiveCodeEditor();if(!lt)return;const le=lt.getModel(),Pe=lt.getPosition();if(!le||!Pe)return;let it=!1,Dt=!1;for(const kt of wt.references)if(Object(C.f)(kt.uri,le.uri))it=!0,Dt=Dt||n.a.containsPosition(kt.range,Pe);else if(it)break;(!it||!Dt)&&this.reset()});this._currentState=Object(y.e)(Pt,no)}revealNext(rt){if(!this._currentModel)return Promise.resolve();this._currentIdx+=1,this._currentIdx%=this._currentModel.references.length;const wt=this._currentModel.references[this._currentIdx];return this._showMessage(),this._ignoreEditorChange=!0,this._editorService.openCodeEditor({resource:wt.uri,options:{selection:n.a.collapseToStart(wt.range),selectionRevealType:3}},rt).finally(()=>{this._ignoreEditorChange=!1})}_showMessage(){var rt;(rt=this._currentMessage)===null||rt===void 0||rt.dispose();const wt=this._keybindingService.lookupKeybinding("editor.gotoNextSymbolFromResult"),Pt=wt?Object(v.a)("location.kb","Symbol {0} of {1}, {2} for next",this._currentIdx+1,this._currentModel.references.length,wt.getLabel()):Object(v.a)("location","Symbol {0} of {1}",this._currentIdx+1,this._currentModel.references.length);this._currentMessage=this._notificationService.status(Pt)}};Se=Y([K(0,D.b),K(1,d.a),K(2,z.a),K(3,G.a)],Se),Object(j.b)(ee,Se,!0),Object(u.k)(new class extends u.c{constructor(){super({id:"editor.gotoNextSymbolFromResult",precondition:Q,kbOpts:{weight:100,primary:70}})}runEditorCommand(nt,rt){return nt.get(ee).revealNext(rt)}}),B.a.registerCommandAndKeybindingRule({id:"editor.gotoNextSymbolFromResult.cancel",weight:100,when:Q,primary:9,handler(nt){nt.get(ee).reset()}});let fe=class{constructor(rt){this._listener=new Map,this._disposables=new y.b,this._onDidChange=new g.b,this.onDidChange=this._onDidChange.event,this._disposables.add(rt.onCodeEditorRemove(this._onDidRemoveEditor,this)),this._disposables.add(rt.onCodeEditorAdd(this._onDidAddEditor,this)),rt.listCodeEditors().forEach(this._onDidAddEditor,this)}dispose(){this._disposables.dispose(),this._onDidChange.dispose(),Object(y.f)(this._listener.values())}_onDidAddEditor(rt){this._listener.set(rt,Object(y.e)(rt.onDidChangeCursorPosition(wt=>this._onDidChange.fire({editor:rt})),rt.onDidChangeModelContent(wt=>this._onDidChange.fire({editor:rt}))))}_onDidRemoveEditor(rt){var wt;(wt=this._listener.get(rt))===null||wt===void 0||wt.dispose(),this._listener.delete(rt)}};fe=Y([K(0,d.a)],fe);var q=e("NR8r"),te=e("iNS8"),U=e("fjLI"),H=e("nnTU"),W=e("tTk5"),ne=e("vRMv"),Ce=function(nt,rt,wt,Pt){function no(ht){return ht instanceof wt?ht:new wt(function(lt){lt(ht)})}return new(wt||(wt=Promise))(function(ht,lt){function le(Dt){try{it(Pt.next(Dt))}catch(kt){lt(kt)}}function Pe(Dt){try{it(Pt.throw(Dt))}catch(kt){lt(kt)}}function it(Dt){Dt.done?ht(Dt.value):no(Dt.value).then(le,Pe)}it((Pt=Pt.apply(nt,rt||[])).next())})},Le,ce,me,Oe,oe,De,Ne,ve;U.d.appendMenuItem(U.b.EditorContext,{submenu:U.b.EditorContextPeek,title:v.a("peek.submenu","Peek"),group:"navigation",order:100});const re=new Set;function we(nt){const rt=new nt;return Object(u.m)(rt),re.add(rt.id),rt}class Ie extends u.b{constructor(nt,rt){super(rt);this._configuration=nt}run(nt,rt){if(!rt.hasModel())return Promise.resolve(void 0);const wt=nt.get(z.a),Pt=nt.get(d.a),no=nt.get(W.a),ht=nt.get(ee),lt=rt.getModel(),le=rt.getPosition(),Pe=new S.b(rt,1|4),it=Object(L.l)(this._getLocationModel(lt,le,Pe.token),Pe.token).then(Dt=>Ce(this,void 0,void 0,function*(){if(!Dt||Pe.token.isCancellationRequested)return;Object(P.a)(Dt.ariaMessage);let kt;if(Dt.referenceAt(lt.uri,le)){const bo=this._getAlternativeCommand(rt);bo!==this.id&&re.has(bo)&&(kt=rt.getAction(bo))}const eo=Dt.references.length;if(eo===0){if(!this._configuration.muteMessage){const bo=lt.getWordAtPosition(le);q.a.get(rt).showMessage(this._getNoResultFoundMessage(bo),le)}}else if(eo===1&&kt)kt.run();else return this._onResult(Pt,ht,rt,Dt)}),Dt=>{wt.error(Dt)}).finally(()=>{Pe.dispose()});return no.showWhile(it,250),it}_onResult(nt,rt,wt,Pt){return Ce(this,void 0,void 0,function*(){const no=this._getGoToPreference(wt);if(!(wt instanceof E.a)&&(this._configuration.openInPeek||no==="peek"&&Pt.references.length>1))this._openInPeek(wt,Pt);else{const ht=Pt.firstReference(),lt=Pt.references.length>1&&no==="gotoAndPeek",le=yield this._openReference(wt,nt,ht,this._configuration.openToSide,!lt);lt&&le?this._openInPeek(le,Pt):Pt.dispose(),no==="goto"&&rt.put(ht)}})}_openReference(nt,rt,wt,Pt,no){return Ce(this,void 0,void 0,function*(){let ht;if(Object(m.J)(wt)&&(ht=wt.targetSelectionRange),ht||(ht=wt.range),!ht)return;const lt=yield rt.openCodeEditor({resource:wt.uri,options:{selection:n.a.collapseToStart(ht),selectionRevealType:3}},nt,Pt);if(!lt)return;if(no){const le=lt.getModel(),Pe=lt.deltaDecorations([],[{range:ht,options:{description:"symbol-navigate-action-highlight",className:"symbolHighlight"}}]);setTimeout(()=>{lt.getModel()===le&<.deltaDecorations(Pe,[])},350)}return lt})}_openInPeek(nt,rt){let wt=c.a.get(nt);wt&&nt.hasModel()?wt.toggleWidget(nt.getSelection(),Object(L.h)(Pt=>Promise.resolve(rt)),this._configuration.openInPeek):rt.dispose()}}class ge extends Ie{_getLocationModel(nt,rt,wt){return Ce(this,void 0,void 0,function*(){return new l.c(yield Object(ne.b)(nt,rt,wt),v.a("def.title","Definitions"))})}_getNoResultFoundMessage(nt){return nt&&nt.word?v.a("noResultWord","No definition found for '{0}'",nt.word):v.a("generic.noResults","No definition found")}_getAlternativeCommand(nt){return nt.getOption(50).alternativeDefinitionCommand}_getGoToPreference(nt){return nt.getOption(50).multipleDefinitions}}const ye=I.h&&!h.i?2048|70:70;we((Le=class nt extends ge{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:nt.id,label:v.a("actions.goToDecl.label","Go to Definition"),alias:"Go to Definition",precondition:D.a.and(b.a.hasDefinitionProvider,b.a.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:b.a.editorTextFocus,primary:ye,weight:100},contextMenuOpts:{group:"navigation",order:1.1}});H.a.registerCommandAlias("editor.action.goToDeclaration",nt.id)}},Le.id="editor.action.revealDefinition",Le)),we((ce=class nt extends ge{constructor(){super({openToSide:!0,openInPeek:!1,muteMessage:!1},{id:nt.id,label:v.a("actions.goToDeclToSide.label","Open Definition to the Side"),alias:"Open Definition to the Side",precondition:D.a.and(b.a.hasDefinitionProvider,b.a.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:b.a.editorTextFocus,primary:Object(A.c)(2048|41,ye),weight:100}});H.a.registerCommandAlias("editor.action.openDeclarationToTheSide",nt.id)}},ce.id="editor.action.revealDefinitionAside",ce)),we((me=class nt extends ge{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:nt.id,label:v.a("actions.previewDecl.label","Peek Definition"),alias:"Peek Definition",precondition:D.a.and(b.a.hasDefinitionProvider,te.b.notInPeekEditor,b.a.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:b.a.editorTextFocus,primary:512|70,linux:{primary:2048|1024|68},weight:100},contextMenuOpts:{menuId:U.b.EditorContextPeek,group:"peek",order:2}});H.a.registerCommandAlias("editor.action.previewDeclaration",nt.id)}},me.id="editor.action.peekDefinition",me));class ze extends Ie{_getLocationModel(nt,rt,wt){return Ce(this,void 0,void 0,function*(){return new l.c(yield Object(ne.a)(nt,rt,wt),v.a("decl.title","Declarations"))})}_getNoResultFoundMessage(nt){return nt&&nt.word?v.a("decl.noResultWord","No declaration found for '{0}'",nt.word):v.a("decl.generic.noResults","No declaration found")}_getAlternativeCommand(nt){return nt.getOption(50).alternativeDeclarationCommand}_getGoToPreference(nt){return nt.getOption(50).multipleDeclarations}}we((Oe=class nt extends ze{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:nt.id,label:v.a("actions.goToDeclaration.label","Go to Declaration"),alias:"Go to Declaration",precondition:D.a.and(b.a.hasDeclarationProvider,b.a.isInWalkThroughSnippet.toNegated()),contextMenuOpts:{group:"navigation",order:1.3}})}_getNoResultFoundMessage(rt){return rt&&rt.word?v.a("decl.noResultWord","No declaration found for '{0}'",rt.word):v.a("decl.generic.noResults","No declaration found")}},Oe.id="editor.action.revealDeclaration",Oe)),we(class extends ze{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.peekDeclaration",label:v.a("actions.peekDecl.label","Peek Declaration"),alias:"Peek Declaration",precondition:D.a.and(b.a.hasDeclarationProvider,te.b.notInPeekEditor,b.a.isInWalkThroughSnippet.toNegated()),contextMenuOpts:{menuId:U.b.EditorContextPeek,group:"peek",order:3}})}});class xe extends Ie{_getLocationModel(nt,rt,wt){return Ce(this,void 0,void 0,function*(){return new l.c(yield Object(ne.e)(nt,rt,wt),v.a("typedef.title","Type Definitions"))})}_getNoResultFoundMessage(nt){return nt&&nt.word?v.a("goToTypeDefinition.noResultWord","No type definition found for '{0}'",nt.word):v.a("goToTypeDefinition.generic.noResults","No type definition found")}_getAlternativeCommand(nt){return nt.getOption(50).alternativeTypeDefinitionCommand}_getGoToPreference(nt){return nt.getOption(50).multipleTypeDefinitions}}we((oe=class nt extends xe{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:nt.ID,label:v.a("actions.goToTypeDefinition.label","Go to Type Definition"),alias:"Go to Type Definition",precondition:D.a.and(b.a.hasTypeDefinitionProvider,b.a.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:b.a.editorTextFocus,primary:0,weight:100},contextMenuOpts:{group:"navigation",order:1.4}})}},oe.ID="editor.action.goToTypeDefinition",oe)),we((De=class nt extends xe{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:nt.ID,label:v.a("actions.peekTypeDefinition.label","Peek Type Definition"),alias:"Peek Type Definition",precondition:D.a.and(b.a.hasTypeDefinitionProvider,te.b.notInPeekEditor,b.a.isInWalkThroughSnippet.toNegated()),contextMenuOpts:{menuId:U.b.EditorContextPeek,group:"peek",order:4}})}},De.ID="editor.action.peekTypeDefinition",De));class Te extends Ie{_getLocationModel(nt,rt,wt){return Ce(this,void 0,void 0,function*(){return new l.c(yield Object(ne.c)(nt,rt,wt),v.a("impl.title","Implementations"))})}_getNoResultFoundMessage(nt){return nt&&nt.word?v.a("goToImplementation.noResultWord","No implementation found for '{0}'",nt.word):v.a("goToImplementation.generic.noResults","No implementation found")}_getAlternativeCommand(nt){return nt.getOption(50).alternativeImplementationCommand}_getGoToPreference(nt){return nt.getOption(50).multipleImplementations}}we((Ne=class nt extends Te{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:nt.ID,label:v.a("actions.goToImplementation.label","Go to Implementations"),alias:"Go to Implementations",precondition:D.a.and(b.a.hasImplementationProvider,b.a.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:b.a.editorTextFocus,primary:2048|70,weight:100},contextMenuOpts:{group:"navigation",order:1.45}})}},Ne.ID="editor.action.goToImplementation",Ne)),we((ve=class nt extends Te{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:nt.ID,label:v.a("actions.peekImplementation.label","Peek Implementations"),alias:"Peek Implementations",precondition:D.a.and(b.a.hasImplementationProvider,te.b.notInPeekEditor,b.a.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:b.a.editorTextFocus,primary:2048|1024|70,weight:100},contextMenuOpts:{menuId:U.b.EditorContextPeek,group:"peek",order:5}})}},ve.ID="editor.action.peekImplementation",ve));class He extends Ie{_getNoResultFoundMessage(nt){return nt?v.a("references.no","No references found for '{0}'",nt.word):v.a("references.noGeneric","No references found")}_getAlternativeCommand(nt){return nt.getOption(50).alternativeReferenceCommand}_getGoToPreference(nt){return nt.getOption(50).multipleReferences}}we(class extends He{constructor(){super({openToSide:!1,openInPeek:!1,muteMessage:!1},{id:"editor.action.goToReferences",label:v.a("goToReferences.label","Go to References"),alias:"Go to References",precondition:D.a.and(b.a.hasReferenceProvider,te.b.notInPeekEditor,b.a.isInWalkThroughSnippet.toNegated()),kbOpts:{kbExpr:b.a.editorTextFocus,primary:1024|70,weight:100},contextMenuOpts:{group:"navigation",order:1.45}})}_getLocationModel(rt,wt,Pt){return Ce(this,void 0,void 0,function*(){return new l.c(yield Object(ne.d)(rt,wt,!0,Pt),v.a("ref.title","References"))})}}),we(class extends He{constructor(){super({openToSide:!1,openInPeek:!0,muteMessage:!1},{id:"editor.action.referenceSearch.trigger",label:v.a("references.action.label","Peek References"),alias:"Peek References",precondition:D.a.and(b.a.hasReferenceProvider,te.b.notInPeekEditor,b.a.isInWalkThroughSnippet.toNegated()),contextMenuOpts:{menuId:U.b.EditorContextPeek,group:"peek",order:6}})}_getLocationModel(rt,wt,Pt){return Ce(this,void 0,void 0,function*(){return new l.c(yield Object(ne.d)(rt,wt,!1,Pt),v.a("ref.title","References"))})}});class st extends Ie{constructor(nt,rt,wt){super(nt,{id:"editor.action.goToLocation",label:v.a("label.generic","Go to Any Symbol"),alias:"Go to Any Symbol",precondition:D.a.and(te.b.notInPeekEditor,b.a.isInWalkThroughSnippet.toNegated())});this._references=rt,this._gotoMultipleBehaviour=wt}_getLocationModel(nt,rt,wt){return Ce(this,void 0,void 0,function*(){return new l.c(this._references,v.a("generic.title","Locations"))})}_getNoResultFoundMessage(nt){return nt&&v.a("generic.noResult","No results for '{0}'",nt.word)||""}_getGoToPreference(nt){var rt;return(rt=this._gotoMultipleBehaviour)!==null&&rt!==void 0?rt:nt.getOption(50).multipleReferences}_getAlternativeCommand(){return""}}H.a.registerCommand({id:"editor.action.goToLocations",description:{description:"Go to locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:O.a},{name:"position",description:"The position at which to start",constraint:p.a.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto"},{name:"noResultsMessage",description:"Human readable message that shows when locations is empty."}]},handler:(nt,rt,wt,Pt,no,ht,lt)=>Ce(void 0,void 0,void 0,function*(){Object(k.c)(O.a.isUri(rt)),Object(k.c)(p.a.isIPosition(wt)),Object(k.c)(Array.isArray(Pt)),Object(k.c)(typeof no=="undefined"||typeof no=="string"),Object(k.c)(typeof lt=="undefined"||typeof lt=="boolean");const le=nt.get(d.a),Pe=yield le.openCodeEditor({resource:rt},le.getFocusedCodeEditor());if(Object(f.b)(Pe))return Pe.setPosition(wt),Pe.revealPositionInCenterIfOutsideViewport(wt,0),Pe.invokeWithinContext(it=>{const Dt=new class extends st{_getNoResultFoundMessage(kt){return ht||super._getNoResultFoundMessage(kt)}}({muteMessage:!Boolean(ht),openInPeek:Boolean(lt),openToSide:!1},Pt,no);it.get(V.a).invokeFunction(Dt.run.bind(Dt),Pe)})})}),H.a.registerCommand({id:"editor.action.peekLocations",description:{description:"Peek locations from a position in a file",args:[{name:"uri",description:"The text document in which to start",constraint:O.a},{name:"position",description:"The position at which to start",constraint:p.a.isIPosition},{name:"locations",description:"An array of locations.",constraint:Array},{name:"multiple",description:"Define what to do when having multiple results, either `peek`, `gotoAndPeek`, or `goto"}]},handler:(nt,rt,wt,Pt,no)=>Ce(void 0,void 0,void 0,function*(){nt.get(H.b).executeCommand("editor.action.goToLocations",rt,wt,Pt,no,void 0,!0)})}),H.a.registerCommand({id:"editor.action.findReferences",handler:(nt,rt,wt)=>{Object(k.c)(O.a.isUri(rt)),Object(k.c)(p.a.isIPosition(wt));const Pt=nt.get(d.a);return Pt.openCodeEditor({resource:rt},Pt.getFocusedCodeEditor()).then(no=>{if(!Object(f.b)(no)||!no.hasModel())return;const ht=c.a.get(no);if(!ht)return;const lt=Object(L.h)(Pe=>Object(ne.d)(no.getModel(),p.a.lift(wt),!1,Pe).then(it=>new l.c(it,v.a("ref.title","References")))),le=new n.a(wt.lineNumber,wt.column,wt.lineNumber,wt.column);return Promise.resolve(ht.toggleWidget(le,lt,!1))})}}),H.a.registerCommandAlias("editor.action.showReferences","editor.action.peekLocations"),U.d.appendMenuItems([{id:U.b.MenubarGoMenu,item:{command:{id:"editor.action.revealDefinition",title:v.a({key:"miGotoDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Definition")},group:"4_symbol_nav",order:2}},{id:U.b.MenubarGoMenu,item:{command:{id:"editor.action.revealDeclaration",title:v.a({key:"miGotoDeclaration",comment:["&& denotes a mnemonic"]},"Go to &&Declaration")},group:"4_symbol_nav",order:3}},{id:U.b.MenubarGoMenu,item:{command:{id:"editor.action.goToTypeDefinition",title:v.a({key:"miGotoTypeDefinition",comment:["&& denotes a mnemonic"]},"Go to &&Type Definition")},group:"4_symbol_nav",order:3}},{id:U.b.MenubarGoMenu,item:{command:{id:"editor.action.goToImplementation",title:v.a({key:"miGotoImplementation",comment:["&& denotes a mnemonic"]},"Go to &&Implementations")},group:"4_symbol_nav",order:4}},{id:U.b.MenubarGoMenu,item:{command:{id:"editor.action.goToReferences",title:v.a({key:"miGotoReference",comment:["&& denotes a mnemonic"]},"Go to &&References")},group:"4_symbol_nav",order:5}}])},"8gvo":function(ft,w,e){},"8tI9":function(ft,w,e){},"8z58":function(ft,w,e){"use strict";e.r(w),e.d(w,"CancellationTokenSource",function(){return Kd}),e.d(w,"Emitter",function(){return Gd}),e.d(w,"KeyCode",function(){return Xd}),e.d(w,"KeyMod",function(){return $d}),e.d(w,"Position",function(){return Yd}),e.d(w,"Range",function(){return Zd}),e.d(w,"Selection",function(){return Qd}),e.d(w,"SelectionDirection",function(){return Jd}),e.d(w,"MarkerSeverity",function(){return qd}),e.d(w,"MarkerTag",function(){return ec}),e.d(w,"Uri",function(){return tc}),e.d(w,"Token",function(){return oc}),e.d(w,"editor",function(){return ic}),e.d(w,"languages",function(){return nc});var h=e("/UlZ"),P=e("JQT/"),L=e("MI8n"),A=e("/kV6"),I=e("bY76"),k=e("cGHE"),O=e("aokT"),S=e("gCVg"),f=e("Tcc1"),u;(function(t){t[t.Unknown=0]="Unknown",t[t.Disabled=1]="Disabled",t[t.Enabled=2]="Enabled"})(u||(u={}));var d;(function(t){t[t.KeepWhitespace=1]="KeepWhitespace",t[t.InsertAsSnippet=4]="InsertAsSnippet"})(d||(d={}));var E;(function(t){t[t.Method=0]="Method",t[t.Function=1]="Function",t[t.Constructor=2]="Constructor",t[t.Field=3]="Field",t[t.Variable=4]="Variable",t[t.Class=5]="Class",t[t.Struct=6]="Struct",t[t.Interface=7]="Interface",t[t.Module=8]="Module",t[t.Property=9]="Property",t[t.Event=10]="Event",t[t.Operator=11]="Operator",t[t.Unit=12]="Unit",t[t.Value=13]="Value",t[t.Constant=14]="Constant",t[t.Enum=15]="Enum",t[t.EnumMember=16]="EnumMember",t[t.Keyword=17]="Keyword",t[t.Text=18]="Text",t[t.Color=19]="Color",t[t.File=20]="File",t[t.Reference=21]="Reference",t[t.Customcolor=22]="Customcolor",t[t.Folder=23]="Folder",t[t.TypeParameter=24]="TypeParameter",t[t.User=25]="User",t[t.Issue=26]="Issue",t[t.Snippet=27]="Snippet"})(E||(E={}));var p;(function(t){t[t.Deprecated=1]="Deprecated"})(p||(p={}));var n;(function(t){t[t.Invoke=0]="Invoke",t[t.TriggerCharacter=1]="TriggerCharacter",t[t.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"})(n||(n={}));var b;(function(t){t[t.EXACT=0]="EXACT",t[t.ABOVE=1]="ABOVE",t[t.BELOW=2]="BELOW"})(b||(b={}));var m;(function(t){t[t.NotSet=0]="NotSet",t[t.ContentFlush=1]="ContentFlush",t[t.RecoverFromMarkers=2]="RecoverFromMarkers",t[t.Explicit=3]="Explicit",t[t.Paste=4]="Paste",t[t.Undo=5]="Undo",t[t.Redo=6]="Redo"})(m||(m={}));var c;(function(t){t[t.LF=1]="LF",t[t.CRLF=2]="CRLF"})(c||(c={}));var l;(function(t){t[t.Text=0]="Text",t[t.Read=1]="Read",t[t.Write=2]="Write"})(l||(l={}));var g;(function(t){t[t.None=0]="None",t[t.Keep=1]="Keep",t[t.Brackets=2]="Brackets",t[t.Advanced=3]="Advanced",t[t.Full=4]="Full"})(g||(g={}));var y;(function(t){t[t.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",t[t.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",t[t.accessibilitySupport=2]="accessibilitySupport",t[t.accessibilityPageSize=3]="accessibilityPageSize",t[t.ariaLabel=4]="ariaLabel",t[t.autoClosingBrackets=5]="autoClosingBrackets",t[t.autoClosingDelete=6]="autoClosingDelete",t[t.autoClosingOvertype=7]="autoClosingOvertype",t[t.autoClosingQuotes=8]="autoClosingQuotes",t[t.autoIndent=9]="autoIndent",t[t.automaticLayout=10]="automaticLayout",t[t.autoSurround=11]="autoSurround",t[t.bracketPairColorization=12]="bracketPairColorization",t[t.guides=13]="guides",t[t.codeLens=14]="codeLens",t[t.codeLensFontFamily=15]="codeLensFontFamily",t[t.codeLensFontSize=16]="codeLensFontSize",t[t.colorDecorators=17]="colorDecorators",t[t.columnSelection=18]="columnSelection",t[t.comments=19]="comments",t[t.contextmenu=20]="contextmenu",t[t.copyWithSyntaxHighlighting=21]="copyWithSyntaxHighlighting",t[t.cursorBlinking=22]="cursorBlinking",t[t.cursorSmoothCaretAnimation=23]="cursorSmoothCaretAnimation",t[t.cursorStyle=24]="cursorStyle",t[t.cursorSurroundingLines=25]="cursorSurroundingLines",t[t.cursorSurroundingLinesStyle=26]="cursorSurroundingLinesStyle",t[t.cursorWidth=27]="cursorWidth",t[t.disableLayerHinting=28]="disableLayerHinting",t[t.disableMonospaceOptimizations=29]="disableMonospaceOptimizations",t[t.domReadOnly=30]="domReadOnly",t[t.dragAndDrop=31]="dragAndDrop",t[t.emptySelectionClipboard=32]="emptySelectionClipboard",t[t.extraEditorClassName=33]="extraEditorClassName",t[t.fastScrollSensitivity=34]="fastScrollSensitivity",t[t.find=35]="find",t[t.fixedOverflowWidgets=36]="fixedOverflowWidgets",t[t.folding=37]="folding",t[t.foldingStrategy=38]="foldingStrategy",t[t.foldingHighlight=39]="foldingHighlight",t[t.foldingImportsByDefault=40]="foldingImportsByDefault",t[t.unfoldOnClickAfterEndOfLine=41]="unfoldOnClickAfterEndOfLine",t[t.fontFamily=42]="fontFamily",t[t.fontInfo=43]="fontInfo",t[t.fontLigatures=44]="fontLigatures",t[t.fontSize=45]="fontSize",t[t.fontWeight=46]="fontWeight",t[t.formatOnPaste=47]="formatOnPaste",t[t.formatOnType=48]="formatOnType",t[t.glyphMargin=49]="glyphMargin",t[t.gotoLocation=50]="gotoLocation",t[t.hideCursorInOverviewRuler=51]="hideCursorInOverviewRuler",t[t.hover=52]="hover",t[t.inDiffEditor=53]="inDiffEditor",t[t.inlineSuggest=54]="inlineSuggest",t[t.letterSpacing=55]="letterSpacing",t[t.lightbulb=56]="lightbulb",t[t.lineDecorationsWidth=57]="lineDecorationsWidth",t[t.lineHeight=58]="lineHeight",t[t.lineNumbers=59]="lineNumbers",t[t.lineNumbersMinChars=60]="lineNumbersMinChars",t[t.linkedEditing=61]="linkedEditing",t[t.links=62]="links",t[t.matchBrackets=63]="matchBrackets",t[t.minimap=64]="minimap",t[t.mouseStyle=65]="mouseStyle",t[t.mouseWheelScrollSensitivity=66]="mouseWheelScrollSensitivity",t[t.mouseWheelZoom=67]="mouseWheelZoom",t[t.multiCursorMergeOverlapping=68]="multiCursorMergeOverlapping",t[t.multiCursorModifier=69]="multiCursorModifier",t[t.multiCursorPaste=70]="multiCursorPaste",t[t.occurrencesHighlight=71]="occurrencesHighlight",t[t.overviewRulerBorder=72]="overviewRulerBorder",t[t.overviewRulerLanes=73]="overviewRulerLanes",t[t.padding=74]="padding",t[t.parameterHints=75]="parameterHints",t[t.peekWidgetDefaultFocus=76]="peekWidgetDefaultFocus",t[t.definitionLinkOpensInPeek=77]="definitionLinkOpensInPeek",t[t.quickSuggestions=78]="quickSuggestions",t[t.quickSuggestionsDelay=79]="quickSuggestionsDelay",t[t.readOnly=80]="readOnly",t[t.renameOnType=81]="renameOnType",t[t.renderControlCharacters=82]="renderControlCharacters",t[t.renderFinalNewline=83]="renderFinalNewline",t[t.renderLineHighlight=84]="renderLineHighlight",t[t.renderLineHighlightOnlyWhenFocus=85]="renderLineHighlightOnlyWhenFocus",t[t.renderValidationDecorations=86]="renderValidationDecorations",t[t.renderWhitespace=87]="renderWhitespace",t[t.revealHorizontalRightPadding=88]="revealHorizontalRightPadding",t[t.roundedSelection=89]="roundedSelection",t[t.rulers=90]="rulers",t[t.scrollbar=91]="scrollbar",t[t.scrollBeyondLastColumn=92]="scrollBeyondLastColumn",t[t.scrollBeyondLastLine=93]="scrollBeyondLastLine",t[t.scrollPredominantAxis=94]="scrollPredominantAxis",t[t.selectionClipboard=95]="selectionClipboard",t[t.selectionHighlight=96]="selectionHighlight",t[t.selectOnLineNumbers=97]="selectOnLineNumbers",t[t.showFoldingControls=98]="showFoldingControls",t[t.showUnused=99]="showUnused",t[t.snippetSuggestions=100]="snippetSuggestions",t[t.smartSelect=101]="smartSelect",t[t.smoothScrolling=102]="smoothScrolling",t[t.stickyTabStops=103]="stickyTabStops",t[t.stopRenderingLineAfter=104]="stopRenderingLineAfter",t[t.suggest=105]="suggest",t[t.suggestFontSize=106]="suggestFontSize",t[t.suggestLineHeight=107]="suggestLineHeight",t[t.suggestOnTriggerCharacters=108]="suggestOnTriggerCharacters",t[t.suggestSelection=109]="suggestSelection",t[t.tabCompletion=110]="tabCompletion",t[t.tabIndex=111]="tabIndex",t[t.unusualLineTerminators=112]="unusualLineTerminators",t[t.useShadowDOM=113]="useShadowDOM",t[t.useTabStops=114]="useTabStops",t[t.wordSeparators=115]="wordSeparators",t[t.wordWrap=116]="wordWrap",t[t.wordWrapBreakAfterCharacters=117]="wordWrapBreakAfterCharacters",t[t.wordWrapBreakBeforeCharacters=118]="wordWrapBreakBeforeCharacters",t[t.wordWrapColumn=119]="wordWrapColumn",t[t.wordWrapOverride1=120]="wordWrapOverride1",t[t.wordWrapOverride2=121]="wordWrapOverride2",t[t.wrappingIndent=122]="wrappingIndent",t[t.wrappingStrategy=123]="wrappingStrategy",t[t.showDeprecated=124]="showDeprecated",t[t.inlayHints=125]="inlayHints",t[t.editorClassName=126]="editorClassName",t[t.pixelRatio=127]="pixelRatio",t[t.tabFocusMode=128]="tabFocusMode",t[t.layoutInfo=129]="layoutInfo",t[t.wrappingInfo=130]="wrappingInfo"})(y||(y={}));var C;(function(t){t[t.TextDefined=0]="TextDefined",t[t.LF=1]="LF",t[t.CRLF=2]="CRLF"})(C||(C={}));var v;(function(t){t[t.LF=0]="LF",t[t.CRLF=1]="CRLF"})(v||(v={}));var D;(function(t){t[t.None=0]="None",t[t.Indent=1]="Indent",t[t.IndentOutdent=2]="IndentOutdent",t[t.Outdent=3]="Outdent"})(D||(D={}));var j;(function(t){t[t.Other=0]="Other",t[t.Type=1]="Type",t[t.Parameter=2]="Parameter"})(j||(j={}));var V;(function(t){t[t.Automatic=0]="Automatic",t[t.Explicit=1]="Explicit"})(V||(V={}));var G;(function(t){t[t.DependsOnKbLayout=-1]="DependsOnKbLayout",t[t.Unknown=0]="Unknown",t[t.Backspace=1]="Backspace",t[t.Tab=2]="Tab",t[t.Enter=3]="Enter",t[t.Shift=4]="Shift",t[t.Ctrl=5]="Ctrl",t[t.Alt=6]="Alt",t[t.PauseBreak=7]="PauseBreak",t[t.CapsLock=8]="CapsLock",t[t.Escape=9]="Escape",t[t.Space=10]="Space",t[t.PageUp=11]="PageUp",t[t.PageDown=12]="PageDown",t[t.End=13]="End",t[t.Home=14]="Home",t[t.LeftArrow=15]="LeftArrow",t[t.UpArrow=16]="UpArrow",t[t.RightArrow=17]="RightArrow",t[t.DownArrow=18]="DownArrow",t[t.Insert=19]="Insert",t[t.Delete=20]="Delete",t[t.Digit0=21]="Digit0",t[t.Digit1=22]="Digit1",t[t.Digit2=23]="Digit2",t[t.Digit3=24]="Digit3",t[t.Digit4=25]="Digit4",t[t.Digit5=26]="Digit5",t[t.Digit6=27]="Digit6",t[t.Digit7=28]="Digit7",t[t.Digit8=29]="Digit8",t[t.Digit9=30]="Digit9",t[t.KeyA=31]="KeyA",t[t.KeyB=32]="KeyB",t[t.KeyC=33]="KeyC",t[t.KeyD=34]="KeyD",t[t.KeyE=35]="KeyE",t[t.KeyF=36]="KeyF",t[t.KeyG=37]="KeyG",t[t.KeyH=38]="KeyH",t[t.KeyI=39]="KeyI",t[t.KeyJ=40]="KeyJ",t[t.KeyK=41]="KeyK",t[t.KeyL=42]="KeyL",t[t.KeyM=43]="KeyM",t[t.KeyN=44]="KeyN",t[t.KeyO=45]="KeyO",t[t.KeyP=46]="KeyP",t[t.KeyQ=47]="KeyQ",t[t.KeyR=48]="KeyR",t[t.KeyS=49]="KeyS",t[t.KeyT=50]="KeyT",t[t.KeyU=51]="KeyU",t[t.KeyV=52]="KeyV",t[t.KeyW=53]="KeyW",t[t.KeyX=54]="KeyX",t[t.KeyY=55]="KeyY",t[t.KeyZ=56]="KeyZ",t[t.Meta=57]="Meta",t[t.ContextMenu=58]="ContextMenu",t[t.F1=59]="F1",t[t.F2=60]="F2",t[t.F3=61]="F3",t[t.F4=62]="F4",t[t.F5=63]="F5",t[t.F6=64]="F6",t[t.F7=65]="F7",t[t.F8=66]="F8",t[t.F9=67]="F9",t[t.F10=68]="F10",t[t.F11=69]="F11",t[t.F12=70]="F12",t[t.F13=71]="F13",t[t.F14=72]="F14",t[t.F15=73]="F15",t[t.F16=74]="F16",t[t.F17=75]="F17",t[t.F18=76]="F18",t[t.F19=77]="F19",t[t.NumLock=78]="NumLock",t[t.ScrollLock=79]="ScrollLock",t[t.Semicolon=80]="Semicolon",t[t.Equal=81]="Equal",t[t.Comma=82]="Comma",t[t.Minus=83]="Minus",t[t.Period=84]="Period",t[t.Slash=85]="Slash",t[t.Backquote=86]="Backquote",t[t.BracketLeft=87]="BracketLeft",t[t.Backslash=88]="Backslash",t[t.BracketRight=89]="BracketRight",t[t.Quote=90]="Quote",t[t.OEM_8=91]="OEM_8",t[t.IntlBackslash=92]="IntlBackslash",t[t.Numpad0=93]="Numpad0",t[t.Numpad1=94]="Numpad1",t[t.Numpad2=95]="Numpad2",t[t.Numpad3=96]="Numpad3",t[t.Numpad4=97]="Numpad4",t[t.Numpad5=98]="Numpad5",t[t.Numpad6=99]="Numpad6",t[t.Numpad7=100]="Numpad7",t[t.Numpad8=101]="Numpad8",t[t.Numpad9=102]="Numpad9",t[t.NumpadMultiply=103]="NumpadMultiply",t[t.NumpadAdd=104]="NumpadAdd",t[t.NUMPAD_SEPARATOR=105]="NUMPAD_SEPARATOR",t[t.NumpadSubtract=106]="NumpadSubtract",t[t.NumpadDecimal=107]="NumpadDecimal",t[t.NumpadDivide=108]="NumpadDivide",t[t.KEY_IN_COMPOSITION=109]="KEY_IN_COMPOSITION",t[t.ABNT_C1=110]="ABNT_C1",t[t.ABNT_C2=111]="ABNT_C2",t[t.AudioVolumeMute=112]="AudioVolumeMute",t[t.AudioVolumeUp=113]="AudioVolumeUp",t[t.AudioVolumeDown=114]="AudioVolumeDown",t[t.BrowserSearch=115]="BrowserSearch",t[t.BrowserHome=116]="BrowserHome",t[t.BrowserBack=117]="BrowserBack",t[t.BrowserForward=118]="BrowserForward",t[t.MediaTrackNext=119]="MediaTrackNext",t[t.MediaTrackPrevious=120]="MediaTrackPrevious",t[t.MediaStop=121]="MediaStop",t[t.MediaPlayPause=122]="MediaPlayPause",t[t.LaunchMediaPlayer=123]="LaunchMediaPlayer",t[t.LaunchMail=124]="LaunchMail",t[t.LaunchApp2=125]="LaunchApp2",t[t.MAX_VALUE=126]="MAX_VALUE"})(G||(G={}));var B;(function(t){t[t.Hint=1]="Hint",t[t.Info=2]="Info",t[t.Warning=4]="Warning",t[t.Error=8]="Error"})(B||(B={}));var z;(function(t){t[t.Unnecessary=1]="Unnecessary",t[t.Deprecated=2]="Deprecated"})(z||(z={}));var Y;(function(t){t[t.Inline=1]="Inline",t[t.Gutter=2]="Gutter"})(Y||(Y={}));var K;(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.TEXTAREA=1]="TEXTAREA",t[t.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",t[t.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",t[t.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",t[t.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",t[t.CONTENT_TEXT=6]="CONTENT_TEXT",t[t.CONTENT_EMPTY=7]="CONTENT_EMPTY",t[t.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",t[t.CONTENT_WIDGET=9]="CONTENT_WIDGET",t[t.OVERVIEW_RULER=10]="OVERVIEW_RULER",t[t.SCROLLBAR=11]="SCROLLBAR",t[t.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",t[t.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"})(K||(K={}));var Q;(function(t){t[t.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",t[t.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",t[t.TOP_CENTER=2]="TOP_CENTER"})(Q||(Q={}));var ee;(function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=4]="Right",t[t.Full=7]="Full"})(ee||(ee={}));var Se;(function(t){t[t.Off=0]="Off",t[t.On=1]="On",t[t.Relative=2]="Relative",t[t.Interval=3]="Interval",t[t.Custom=4]="Custom"})(Se||(Se={}));var fe;(function(t){t[t.None=0]="None",t[t.Text=1]="Text",t[t.Blocks=2]="Blocks"})(fe||(fe={}));var q;(function(t){t[t.Smooth=0]="Smooth",t[t.Immediate=1]="Immediate"})(q||(q={}));var te;(function(t){t[t.Auto=1]="Auto",t[t.Hidden=2]="Hidden",t[t.Visible=3]="Visible"})(te||(te={}));var U;(function(t){t[t.LTR=0]="LTR",t[t.RTL=1]="RTL"})(U||(U={}));var H;(function(t){t[t.Invoke=1]="Invoke",t[t.TriggerCharacter=2]="TriggerCharacter",t[t.ContentChange=3]="ContentChange"})(H||(H={}));var W;(function(t){t[t.File=0]="File",t[t.Module=1]="Module",t[t.Namespace=2]="Namespace",t[t.Package=3]="Package",t[t.Class=4]="Class",t[t.Method=5]="Method",t[t.Property=6]="Property",t[t.Field=7]="Field",t[t.Constructor=8]="Constructor",t[t.Enum=9]="Enum",t[t.Interface=10]="Interface",t[t.Function=11]="Function",t[t.Variable=12]="Variable",t[t.Constant=13]="Constant",t[t.String=14]="String",t[t.Number=15]="Number",t[t.Boolean=16]="Boolean",t[t.Array=17]="Array",t[t.Object=18]="Object",t[t.Key=19]="Key",t[t.Null=20]="Null",t[t.EnumMember=21]="EnumMember",t[t.Struct=22]="Struct",t[t.Event=23]="Event",t[t.Operator=24]="Operator",t[t.TypeParameter=25]="TypeParameter"})(W||(W={}));var ne;(function(t){t[t.Deprecated=1]="Deprecated"})(ne||(ne={}));var Ce;(function(t){t[t.Hidden=0]="Hidden",t[t.Blink=1]="Blink",t[t.Smooth=2]="Smooth",t[t.Phase=3]="Phase",t[t.Expand=4]="Expand",t[t.Solid=5]="Solid"})(Ce||(Ce={}));var Le;(function(t){t[t.Line=1]="Line",t[t.Block=2]="Block",t[t.Underline=3]="Underline",t[t.LineThin=4]="LineThin",t[t.BlockOutline=5]="BlockOutline",t[t.UnderlineThin=6]="UnderlineThin"})(Le||(Le={}));var ce;(function(t){t[t.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",t[t.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",t[t.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",t[t.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"})(ce||(ce={}));var me;(function(t){t[t.None=0]="None",t[t.Same=1]="Same",t[t.Indent=2]="Indent",t[t.DeepIndent=3]="DeepIndent"})(me||(me={}));class Oe{static chord(t,s){return Object(A.c)(t,s)}}Oe.CtrlCmd=2048,Oe.Shift=1024,Oe.Alt=512,Oe.WinCtrl=256;function oe(){return{editor:void 0,languages:void 0,CancellationTokenSource:P.b,Emitter:L.b,KeyCode:G,KeyMod:Oe,Position:k.a,Range:O.a,Selection:S.a,SelectionDirection:U,MarkerSeverity:B,MarkerTag:z,Uri:I.a,Token:f.a}}var De=e("siPX"),Ne=e("Vxe3"),ve=e("EffR"),re=e("24hK"),we=e("QDVR"),Ie=e("Q4rV"),ge=e("tYmi"),ye=e("gslv"),ze=e("nnTU"),xe;(function(t){t[t.API=0]="API",t[t.USER=1]="USER"})(xe||(xe={}));var Te=e("W9cx"),He=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},st=function(t,s){return function(a,x){s(a,x,t)}},nt=function(t,s,a,x){function Z(ie){return ie instanceof a?ie:new a(function(de){de(ie)})}return new(a||(a=Promise))(function(ie,de){function Ae(yt){try{At(x.next(yt))}catch(oo){de(oo)}}function dt(yt){try{At(x.throw(yt))}catch(oo){de(oo)}}function At(yt){yt.done?ie(yt.value):Z(yt.value).then(Ae,dt)}At((x=x.apply(t,s||[])).next())})};let rt=class{constructor(s){this._commandService=s}open(s,a){return nt(this,void 0,void 0,function*(){if(!Object(Te.c)(s,ge.c.command))return!1;if(!(a==null?void 0:a.allowCommands))return!0;typeof s=="string"&&(s=I.a.parse(s));let x=[];try{x=Object(Ie.a)(decodeURIComponent(s.query))}catch(Z){try{x=Object(Ie.a)(s.query)}catch(ie){}}return Array.isArray(x)||(x=[x]),yield this._commandService.executeCommand(s.path,...x),!0})}};rt=He([st(0,ze.b)],rt);let wt=class{constructor(s){this._editorService=s}open(s,a){return nt(this,void 0,void 0,function*(){typeof s=="string"&&(s=I.a.parse(s));let x;const Z=/^L?(\d+)(?:,(\d+))?/.exec(s.fragment);return Z&&(x={startLineNumber:parseInt(Z[1]),startColumn:Z[2]?parseInt(Z[2]):1},s=s.with({fragment:""})),s.scheme===ge.c.file&&(s=Object(ye.h)(s)),yield this._editorService.openCodeEditor({resource:s,options:Object.assign({selection:x,context:(a==null?void 0:a.fromUserGesture)?xe.USER:xe.API},a==null?void 0:a.editorOptions)},this._editorService.getFocusedCodeEditor(),a==null?void 0:a.openToSide),!0})}};wt=He([st(0,Ne.a)],wt);let Pt=class{constructor(s,a){this._openers=new re.a,this._validators=new re.a,this._resolvers=new re.a,this._resolvedUriTargets=new we.b(x=>x.with({path:null,fragment:null,query:null}).toString()),this._externalOpeners=new re.a,this._defaultExternalOpener={openExternal:x=>nt(this,void 0,void 0,function*(){return Object(Te.c)(x,ge.c.http)||Object(Te.c)(x,ge.c.https)?ve.Z(x):window.location.href=x,!0})},this._openers.push({open:(x,Z)=>nt(this,void 0,void 0,function*(){return(Z==null?void 0:Z.openExternal)||Object(Te.c)(x,ge.c.mailto)||Object(Te.c)(x,ge.c.http)||Object(Te.c)(x,ge.c.https)?(yield this._doOpenExternal(x,Z),!0):!1})}),this._openers.push(new rt(a)),this._openers.push(new wt(s))}registerOpener(s){const a=this._openers.unshift(s);return{dispose:a}}registerValidator(s){const a=this._validators.push(s);return{dispose:a}}registerExternalUriResolver(s){const a=this._resolvers.push(s);return{dispose:a}}setDefaultExternalOpener(s){this._defaultExternalOpener=s}registerExternalOpener(s){const a=this._externalOpeners.push(s);return{dispose:a}}open(s,a){var x;return nt(this,void 0,void 0,function*(){const Z=typeof s=="string"?I.a.parse(s):s,ie=(x=this._resolvedUriTargets.get(Z))!==null&&x!==void 0?x:s;for(const de of this._validators)if(!(yield de.shouldOpen(ie)))return!1;for(const de of this._openers){const Ae=yield de.open(s,a);if(Ae)return!0}return!1})}resolveExternalUri(s,a){return nt(this,void 0,void 0,function*(){for(const x of this._resolvers)try{const Z=yield x.resolveExternalUri(s,a);if(Z)return this._resolvedUriTargets.has(Z.resolved)||this._resolvedUriTargets.set(Z.resolved,s),Z}catch(Z){}throw new Error("Could not resolve external URI: "+s.toString())})}_doOpenExternal(s,a){return nt(this,void 0,void 0,function*(){const x=typeof s=="string"?I.a.parse(s):s;let Z;try{Z=(yield this.resolveExternalUri(x,a)).resolved}catch(de){Z=x}let ie;if(typeof s=="string"&&x.toString()===Z.toString()?ie=s:ie=encodeURI(Z.toString(!0)),a==null?void 0:a.allowContributedOpeners){const de=typeof(a==null?void 0:a.allowContributedOpeners)=="string"?a==null?void 0:a.allowContributedOpeners:void 0;for(const Ae of this._externalOpeners){const dt=yield Ae.openExternal(ie,{sourceUri:x,preferredOpenerId:de},P.a.None);if(dt)return!0}}return this._defaultExternalOpener.openExternal(ie,{sourceUri:x},P.a.None)})}dispose(){this._validators.clear()}};Pt=He([st(0,Ne.a),st(1,ze.b)],Pt);var no=e("0Lb2"),ht=e("+3Gp"),lt=e("iuje"),le=e("M1Kb"),Pe=e("twdY"),it=e("i/Ef"),Dt=e("pAvP"),kt=e("WBhO"),eo=e("t49l"),bo=e("X+cX"),ao=e("pmY6"),So=e("/cxE"),Lo=e("MNsG"),xo=e("746U"),_o=e("N0LK");const to="$initialize";let Wt=!1;function Ge(t){if(!Lo.h)return;Wt||(Wt=!0,console.warn("Could not create web worker(s). Falling back to loading web worker code in main thread, which might cause UI freezes. Please see https://github.com/microsoft/monaco-editor#faq")),console.warn(t.message)}class mt{constructor(t,s,a,x){this.vsWorker=t,this.req=s,this.method=a,this.args=x,this.type=0}}class Gt{constructor(t,s,a,x){this.vsWorker=t,this.seq=s,this.res=a,this.err=x,this.type=1}}class qe{constructor(t,s,a,x){this.vsWorker=t,this.req=s,this.eventName=a,this.arg=x,this.type=2}}class tt{constructor(t,s,a){this.vsWorker=t,this.req=s,this.event=a,this.type=3}}class gt{constructor(t,s){this.vsWorker=t,this.req=s,this.type=4}}class $e{constructor(t){this._workerId=-1,this._handler=t,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(t){this._workerId=t}sendMessage(t,s){const a=String(++this._lastSentReq);return new Promise((x,Z)=>{this._pendingReplies[a]={resolve:x,reject:Z},this._send(new mt(this._workerId,a,t,s))})}listen(t,s){let a=null;const x=new L.b({onFirstListenerAdd:()=>{a=String(++this._lastSentReq),this._pendingEmitters.set(a,x),this._send(new qe(this._workerId,a,t,s))},onLastListenerRemove:()=>{this._pendingEmitters.delete(a),this._send(new gt(this._workerId,a)),a=null}});return x.event}handleMessage(t){if(!t||!t.vsWorker)return;if(this._workerId!==-1&&t.vsWorker!==this._workerId)return;this._handleMessage(t)}_handleMessage(t){switch(t.type){case 1:return this._handleReplyMessage(t);case 0:return this._handleRequestMessage(t);case 2:return this._handleSubscribeEventMessage(t);case 3:return this._handleEventMessage(t);case 4:return this._handleUnsubscribeEventMessage(t)}}_handleReplyMessage(t){if(!this._pendingReplies[t.seq]){console.warn("Got reply to unknown seq");return}let s=this._pendingReplies[t.seq];if(delete this._pendingReplies[t.seq],t.err){let a=t.err;t.err.$isError&&(a=new Error,a.name=t.err.name,a.message=t.err.message,a.stack=t.err.stack),s.reject(a);return}s.resolve(t.res)}_handleRequestMessage(t){let s=t.req,a=this._handler.handleMessage(t.method,t.args);a.then(x=>{this._send(new Gt(this._workerId,s,x,void 0))},x=>{x.detail instanceof Error&&(x.detail=Object(So.h)(x.detail)),this._send(new Gt(this._workerId,s,void 0,Object(So.h)(x)))})}_handleSubscribeEventMessage(t){const s=t.req,a=this._handler.handleEvent(t.eventName,t.arg)(x=>{this._send(new tt(this._workerId,s,x))});this._pendingEvents.set(s,a)}_handleEventMessage(t){if(!this._pendingEmitters.has(t.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(t.req).fire(t.event)}_handleUnsubscribeEventMessage(t){if(!this._pendingEvents.has(t.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(t.req).dispose(),this._pendingEvents.delete(t.req)}_send(t){let s=[];if(t.type===0)for(let a=0;a{this._protocol.handleMessage(dt)},dt=>{x&&x(dt)})),this._protocol=new $e({sendMessage:(dt,At)=>{this._worker.postMessage(dt,At)},handleMessage:(dt,At)=>{if(typeof a[dt]!="function")return Promise.reject(new Error("Missing method "+dt+" on main thread host."));try{return Promise.resolve(a[dt].apply(a,At))}catch(yt){return Promise.reject(yt)}},handleEvent:(dt,At)=>{if(Ye(dt)){const yt=a[dt].call(a,At);if(typeof yt!="function")throw new Error(`Missing dynamic event ${dt} on main thread host.`);return yt}if(Ue(dt)){const yt=a[dt];if(typeof yt!="function")throw new Error(`Missing event ${dt} on main thread host.`);return yt}throw new Error(`Malformed event name ${dt}`)}}),this._protocol.setWorkerId(this._worker.getId());let Z=null;typeof Lo.b.require!="undefined"&&typeof Lo.b.require.getConfig=="function"?Z=Lo.b.require.getConfig():typeof Lo.b.requirejs!="undefined"&&(Z=Lo.b.requirejs.s.contexts._.config);const ie=xo.e(a);this._onModuleLoaded=this._protocol.sendMessage(to,[this._worker.getId(),JSON.parse(JSON.stringify(Z)),s,ie]);const de=(dt,At)=>this._request(dt,At),Ae=(dt,At)=>this._protocol.listen(dt,At);this._lazyProxy=new Promise((dt,At)=>{x=At,this._onModuleLoaded.then(yt=>{dt(Mt(yt,de,Ae))},yt=>{At(yt),this._onError("Worker failed to load "+s,yt)})})}getProxyObject(){return this._lazyProxy}_request(t,s){return new Promise((a,x)=>{this._onModuleLoaded.then(()=>{this._protocol.sendMessage(t,s).then(a,x)},x)})}_onError(t,s){console.error(t),console.info(s)}}function Ue(t){return t[0]==="o"&&t[1]==="n"&&_o.H(t.charCodeAt(2))}function Ye(t){return/^onDynamic/.test(t)&&_o.H(t.charCodeAt(9))}function Mt(t,s,a){const x=de=>function(){const Ae=Array.prototype.slice.call(arguments,0);return s(de,Ae)},Z=de=>function(Ae){return a(de,Ae)};let ie={};for(const de of t){if(Ye(de)){ie[de]=Z(de);continue}if(Ue(de)){ie[de]=a(de,void 0);continue}ie[de]=x(de)}return ie}class Bt{constructor(t,s){this._requestHandlerFactory=s,this._requestHandler=null,this._protocol=new $e({sendMessage:(a,x)=>{t(a,x)},handleMessage:(a,x)=>this._handleMessage(a,x),handleEvent:(a,x)=>this._handleEvent(a,x)})}onmessage(t){this._protocol.handleMessage(t)}_handleMessage(t,s){if(t===to)return this.initialize(s[0],s[1],s[2],s[3]);if(!this._requestHandler||typeof this._requestHandler[t]!="function")return Promise.reject(new Error("Missing requestHandler or method: "+t));try{return Promise.resolve(this._requestHandler[t].apply(this._requestHandler,s))}catch(a){return Promise.reject(a)}}_handleEvent(t,s){if(!this._requestHandler)throw new Error("Missing requestHandler");if(Ye(t)){const a=this._requestHandler[t].call(this._requestHandler,s);if(typeof a!="function")throw new Error(`Missing dynamic event ${t} on request handler.`);return a}if(Ue(t)){const a=this._requestHandler[t];if(typeof a!="function")throw new Error(`Missing event ${t} on request handler.`);return a}throw new Error(`Malformed event name ${t}`)}initialize(t,s,a,x){this._protocol.setWorkerId(t);const Z=(Ae,dt)=>this._protocol.sendMessage(Ae,dt),ie=(Ae,dt)=>this._protocol.listen(Ae,dt),de=Mt(x,Z,ie);return this._requestHandlerFactory?(this._requestHandler=this._requestHandlerFactory(de),Promise.resolve(xo.e(this._requestHandler))):(s&&(typeof s.baseUrl!="undefined"&&delete s.baseUrl,typeof s.paths!="undefined"&&(typeof s.paths.vs!="undefined"&&delete s.paths.vs),typeof s.trustedTypesPolicy!==void 0&&delete s.trustedTypesPolicy,s.catchError=!0,Lo.b.require.config(s)),new Promise((Ae,dt)=>{const At=Lo.b.require;At([a],yt=>{if(this._requestHandler=yt.create(de),!this._requestHandler){dt(new Error("No RequestHandler!"));return}Ae(xo.e(this._requestHandler))},dt)}))}}function $t(t){return new Bt(t,null)}var uo;const Zt=(uo=window.trustedTypes)===null||uo===void 0?void 0:uo.createPolicy("defaultWorkerFactory",{createScriptURL:t=>t});function zt(t,s){if(Lo.b.MonacoEnvironment){if(typeof Lo.b.MonacoEnvironment.getWorker=="function")return Lo.b.MonacoEnvironment.getWorker(t,s);if(typeof Lo.b.MonacoEnvironment.getWorkerUrl=="function"){const a=Lo.b.MonacoEnvironment.getWorkerUrl(t,s);return new Worker(Zt?Zt.createScriptURL(a):a,{name:s})}}throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function ut(t){return typeof t.then=="function"}class Ct{constructor(t,s,a,x,Z){this.id=s;const ie=zt("workerMain.js",a);ut(ie)?this.worker=ie:this.worker=Promise.resolve(ie),this.postMessage(t,[]),this.worker.then(de=>{de.onmessage=function(Ae){x(Ae.data)},de.onmessageerror=Z,typeof de.addEventListener=="function"&&de.addEventListener("error",Z)})}getId(){return this.id}postMessage(t,s){this.worker&&this.worker.then(a=>a.postMessage(t,s))}dispose(){this.worker&&this.worker.then(t=>t.terminate()),this.worker=null}}class We{constructor(t){this._label=t,this._webWorkerFailedBeforeError=!1}create(t,s,a){let x=++We.LAST_WORKER_ID;if(this._webWorkerFailedBeforeError)throw this._webWorkerFailedBeforeError;return new Ct(t,x,this._label||"anonymous"+x,s,Z=>{Ge(Z),this._webWorkerFailedBeforeError=Z,a(Z)})}}We.LAST_WORKER_ID=0;var he=e("cMvZ"),Me=e("Gw4z");const ue=3;function ae(t,s,a,x){const Z=new Me.a(t,s,a);return Z.ComputeDiff(x)}class Re{constructor(t){const s=[],a=[];for(let x=0,Z=t.length;x0&&s.originalLength<20&&s.modifiedLength>0&&s.modifiedLength<20&&Z()){const jo=a.createCharSequence(t,s.originalStart,s.originalStart+s.originalLength-1),Xo=x.createCharSequence(t,s.modifiedStart,s.modifiedStart+s.modifiedLength-1);let Jo=ae(jo,Xo,Z,!0).changes;de&&(Jo=bt(Jo)),oo=[];for(let yi=0,gi=Jo.length;yi1&&Jo>1;){const yi=oo.charCodeAt(Xo-2),gi=jo.charCodeAt(Jo-2);if(yi!==gi)break;Xo--,Jo--}(Xo>1||Jo>1)&&this._pushTrimWhitespaceCharChange(x,Z+1,1,Xo,ie+1,1,Jo)}{let Xo=Tt(oo,1),Jo=Tt(jo,1);const yi=oo.length+1,gi=jo.length+1;for(;Xo!0;const s=Date.now();return()=>Date.now()-ss&&(s=Ae),de>a&&(a=de),dt>a&&(a=dt)}s++,a++;let x=new Uo(a,s,0);for(let Z=0,ie=t.length;Z=this._maxCharCode?0:this._states.get(t,s)}}let ii=null;function $o(){return ii===null&&(ii=new Zo([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),ii}let Ri=null;function xi(){if(Ri===null){Ri=new Oo.a(0);const t=` <>'"\u3001\u3002\uFF61\uFF64\uFF0C\uFF0E\uFF1A\uFF1B\u2018\u3008\u300C\u300E\u3014\uFF08\uFF3B\uFF5B\uFF62\uFF63\uFF5D\uFF3D\uFF09\u3015\u300F\u300D\u3009\u2019\uFF40\uFF5E\u2026`;for(let a=0;ax);if(x>0){const de=s.charCodeAt(x-1),Ae=s.charCodeAt(ie);(de===40&&Ae===41||de===91&&Ae===93||de===123&&Ae===125)&&ie--}return{range:{startLineNumber:a,startColumn:x+1,endLineNumber:a,endColumn:ie+2},url:s.substring(x,ie+1)}}static computeLinks(t,s=$o()){const a=xi();let x=[];for(let Z=1,ie=t.getLineCount();Z<=ie;Z++){const de=t.getLineContent(Z),Ae=de.length;let dt=0,At=0,yt=0,oo=1,jo=!1,Xo=!1,Jo=!1,yi=!1;for(;dt=0?(x+=a?1:-1,x<0?x=t.length-1:x%=t.length,t[x]):null}}Li.INSTANCE=new Li;var ki=e("5Y4S"),Hi=function(t,s,a,x){function Z(ie){return ie instanceof a?ie:new a(function(de){de(ie)})}return new(a||(a=Promise))(function(ie,de){function Ae(yt){try{At(x.next(yt))}catch(oo){de(oo)}}function dt(yt){try{At(x.throw(yt))}catch(oo){de(oo)}}function At(yt){yt.done?ie(yt.value):Z(yt.value).then(Ae,dt)}At((x=x.apply(t,s||[])).next())})};class ni extends vo{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(t){return this._lines[t-1]}getWordAtPosition(t,s){let a=Object(po.d)(t.column,Object(po.c)(s),this._lines[t.lineNumber-1],0);return a?new O.a(t.lineNumber,a.startColumn,t.lineNumber,a.endColumn):null}words(t){const s=this._lines,a=this._wordenize.bind(this);let x=0,Z="",ie=0,de=[];return{*[Symbol.iterator](){for(;;)if(iethis._lines.length)s=this._lines.length,a=this._lines[s-1].length+1,x=!0;else{let Z=this._lines[s-1].length+1;a<1?(a=1,x=!0):a>Z&&(a=Z,x=!0)}return x?{lineNumber:s,column:a}:t}}class tn{constructor(t,s){this._host=t,this._models=Object.create(null),this._foreignModuleFactory=s,this._foreignModule=null}dispose(){this._models=Object.create(null)}_getModel(t){return this._models[t]}_getModels(){let t=[];return Object.keys(this._models).forEach(s=>t.push(this._models[s])),t}acceptNewModel(t){this._models[t.url]=new ni(I.a.parse(t.url),t.lines,t.EOL,t.versionId)}acceptModelChanged(t,s){if(!this._models[t])return;let a=this._models[t];a.onEvents(s)}acceptRemovedModel(t){if(!this._models[t])return;delete this._models[t]}computeDiff(t,s,a,x){return Hi(this,void 0,void 0,function*(){const Z=this._getModel(t),ie=this._getModel(s);if(!Z||!ie)return null;const de=Z.getLinesContent(),Ae=ie.getLinesContent(),dt=new Ot(de,Ae,{shouldComputeCharChanges:!0,shouldPostProcessCharChanges:!0,shouldIgnoreTrimWhitespace:a,shouldMakePrettyDiff:!0,maxComputationTime:x}),At=dt.computeDiff(),yt=At.changes.length>0?!1:this._modelsAreIdentical(Z,ie);return{quitEarly:At.quitEarly,identical:yt,changes:At.changes}})}_modelsAreIdentical(t,s){const a=t.getLineCount(),x=s.getLineCount();if(a!==x)return!1;for(let Z=1;Z<=a;Z++){const ie=t.getLineContent(Z),de=s.getLineContent(Z);if(ie!==de)return!1}return!0}computeMoreMinimalEdits(t,s){return Hi(this,void 0,void 0,function*(){const a=this._getModel(t);if(!a)return s;const x=[];let Z;s=s.slice(0).sort((ie,de)=>{if(ie.range&&de.range)return O.a.compareRangesUsingStarts(ie.range,de.range);let Ae=ie.range?0:1,dt=de.range?0:1;return Ae-dt});for(let{range:ie,text:de,eol:Ae}of s){if(typeof Ae=="number"&&(Z=Ae),O.a.isEmpty(ie)&&!de)continue;const dt=a.getValueInRange(ie);if(de=de.replace(/\r\n|\n|\r/g,a.eol),dt===de)continue;if(Math.max(de.length,dt.length)>tn._diffLimit){x.push({range:ie,text:de});continue}const At=Object(Me.b)(dt,de,!1),yt=a.offsetAt(O.a.lift(ie).getStartPosition());for(const oo of At){const jo=a.positionAt(yt+oo.originalStart),Xo=a.positionAt(yt+oo.originalStart+oo.originalLength),Jo={text:de.substr(oo.modifiedStart,oo.modifiedLength),range:{startLineNumber:jo.lineNumber,startColumn:jo.column,endLineNumber:Xo.lineNumber,endColumn:Xo.column}};a.getValueInRange(Jo.range)!==Jo.text&&x.push(Jo)}}return typeof Z=="number"&&x.push({eol:Z,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),x})}computeLinks(t){return Hi(this,void 0,void 0,function*(){let s=this._getModel(t);return s?ji(s):null})}textualSuggest(t,s,a,x){return Hi(this,void 0,void 0,function*(){const Z=new ki.a(!0),ie=new RegExp(a,x),de=new Set;e:for(let Ae of t){const dt=this._getModel(Ae);if(!dt)continue;for(let At of dt.words(ie)){if(At===s||!isNaN(Number(At)))continue;if(de.add(At),de.size>tn._suggestionsLimit)break e}}return{words:Array.from(de),duration:Z.elapsed()}})}computeWordRanges(t,s,a,x){return Hi(this,void 0,void 0,function*(){let Z=this._getModel(t);if(!Z)return Object.create(null);const ie=new RegExp(a,x),de=Object.create(null);for(let Ae=s.startLineNumber;Aethis._host.fhr(de,Ae),Z=xo.d(a,x);let ie={host:Z,getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(ie,s),Promise.resolve(xo.e(this._foreignModule))):Promise.reject(new Error("Unexpected usage"))}fmr(t,s){if(!this._foreignModule||typeof this._foreignModule[t]!="function")return Promise.reject(new Error("Missing requestHandler or method: "+t));try{return Promise.resolve(this._foreignModule[t].apply(this._foreignModule,s))}catch(a){return Promise.reject(a)}}}tn._diffLimit=1e5,tn._suggestionsLimit=1e4;function Yi(t){return new tn(t,null)}typeof importScripts=="function"&&(Lo.b.monaco=oe());var bi=e("G2kB"),Pi=e("e0rL"),Ii=e("6OMU"),Si=e("09fa"),Xi=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},Ci=function(t,s){return function(a,x){s(a,x,t)}},rn=function(t,s,a,x){function Z(ie){return ie instanceof a?ie:new a(function(de){de(ie)})}return new(a||(a=Promise))(function(ie,de){function Ae(yt){try{At(x.next(yt))}catch(oo){de(oo)}}function dt(yt){try{At(x.throw(yt))}catch(oo){de(oo)}}function At(yt){yt.done?ie(yt.value):Z(yt.value).then(Ae,dt)}At((x=x.apply(t,s||[])).next())})};const on=60*1e3,Fi=5*60*1e3;function Bi(t,s){let a=t.getModel(s);return a?!a.isTooLargeForSyncing():!1}let vt=class extends ao.a{constructor(s,a,x){super();this._modelService=s,this._workerManager=this._register(new X(this._modelService)),this._logService=x,this._register(Pe.v.register({language:"*",hasAccessToAllModels:!0},{provideLinks:(Z,ie)=>Bi(this._modelService,Z.uri)?this._workerManager.withWorker().then(de=>de.computeLinks(Z.uri)).then(de=>de&&{links:de}):Promise.resolve({links:[]})})),this._register(Pe.d.register("*",new Xe(this._workerManager,a,this._modelService)))}dispose(){super.dispose()}computeDiff(s,a,x,Z){return this._workerManager.withWorker().then(ie=>ie.computeDiff(s,a,x,Z))}computeMoreMinimalEdits(s,a){if(Object(Ii.n)(a)){if(!Bi(this._modelService,s))return Promise.resolve(a);const x=ki.a.create(!0),Z=this._workerManager.withWorker().then(ie=>ie.computeMoreMinimalEdits(s,a));return Z.finally(()=>this._logService.trace("FORMAT#computeMoreMinimalEdits",s.toString(!0),x.elapsed())),Promise.race([Z,Object(bo.n)(1e3).then(()=>a)])}else return Promise.resolve(void 0)}canNavigateValueSet(s){return Bi(this._modelService,s)}navigateValueSet(s,a,x){return this._workerManager.withWorker().then(Z=>Z.navigateValueSet(s,a,x))}canComputeWordRanges(s){return Bi(this._modelService,s)}computeWordRanges(s,a){return this._workerManager.withWorker().then(x=>x.computeWordRanges(s,a))}};vt=Xi([Ci(0,bi.a),Ci(1,Pi.a),Ci(2,Si.b)],vt);class Xe{constructor(t,s,a){this._debugDisplayName="wordbasedCompletions",this._workerManager=t,this._configurationService=s,this._modelService=a}provideCompletionItems(t,s){return rn(this,void 0,void 0,function*(){const a=this._configurationService.getValue(t.uri,s,"editor");if(!a.wordBasedSuggestions)return;const x=[];if(a.wordBasedSuggestionsMode==="currentDocument")Bi(this._modelService,t.uri)&&x.push(t.uri);else for(const yt of this._modelService.getModels()){if(!Bi(this._modelService,yt.uri))continue;yt===t?x.unshift(yt.uri):(a.wordBasedSuggestionsMode==="allDocuments"||yt.getLanguageId()===t.getLanguageId())&&x.push(yt.uri)}if(x.length===0)return;const Z=he.b.getWordDefinition(t.getLanguageId()),ie=t.getWordAtPosition(s),de=ie?new O.a(s.lineNumber,ie.startColumn,s.lineNumber,ie.endColumn):O.a.fromPositions(s),Ae=de.setEndPosition(s.lineNumber,s.column),dt=yield this._workerManager.withWorker(),At=yield dt.textualSuggest(x,ie==null?void 0:ie.word,Z);return At?{duration:At.duration,suggestions:At.words.map(yt=>({kind:18,label:yt,insertText:yt,range:{insert:Ae,replace:de}}))}:void 0})}}class X extends ao.a{constructor(t){super();this._modelService=t,this._editorWorkerClient=null,this._lastWorkerUsedTime=new Date().getTime();let s=this._register(new bo.c);s.cancelAndSet(()=>this._checkStopIdleWorker(),Math.round(Fi/2)),this._register(this._modelService.onModelRemoved(a=>this._checkStopEmptyWorker()))}dispose(){this._editorWorkerClient&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null),super.dispose()}_checkStopEmptyWorker(){if(!this._editorWorkerClient)return;let t=this._modelService.getModels();t.length===0&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}_checkStopIdleWorker(){if(!this._editorWorkerClient)return;let t=new Date().getTime()-this._lastWorkerUsedTime;t>Fi&&(this._editorWorkerClient.dispose(),this._editorWorkerClient=null)}withWorker(){return this._lastWorkerUsedTime=new Date().getTime(),this._editorWorkerClient||(this._editorWorkerClient=new ct(this._modelService,!1,"editorWorkerService")),Promise.resolve(this._editorWorkerClient)}}class Ee extends ao.a{constructor(t,s,a){super();if(this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),this._proxy=t,this._modelService=s,!a){let x=new bo.c;x.cancelAndSet(()=>this._checkStopModelSync(),Math.round(on/2)),this._register(x)}}dispose(){for(let t in this._syncedModels)Object(ao.f)(this._syncedModels[t]);this._syncedModels=Object.create(null),this._syncedModelsLastUsedTime=Object.create(null),super.dispose()}ensureSyncedResources(t,s){for(const a of t){let x=a.toString();this._syncedModels[x]||this._beginModelSync(a,s),this._syncedModels[x]&&(this._syncedModelsLastUsedTime[x]=new Date().getTime())}}_checkStopModelSync(){let t=new Date().getTime(),s=[];for(let a in this._syncedModelsLastUsedTime){let x=t-this._syncedModelsLastUsedTime[a];x>on&&s.push(a)}for(const a of s)this._stopModelSync(a)}_beginModelSync(t,s){let a=this._modelService.getModel(t);if(!a)return;if(!s&&a.isTooLargeForSyncing())return;let x=t.toString();this._proxy.acceptNewModel({url:a.uri.toString(),lines:a.getLinesContent(),EOL:a.getEOL(),versionId:a.getVersionId()});const Z=new ao.b;Z.add(a.onDidChangeContent(ie=>{this._proxy.acceptModelChanged(x.toString(),ie)})),Z.add(a.onWillDispose(()=>{this._stopModelSync(x)})),Z.add(Object(ao.i)(()=>{this._proxy.acceptRemovedModel(x)})),this._syncedModels[x]=Z}_stopModelSync(t){let s=this._syncedModels[t];delete this._syncedModels[t],delete this._syncedModelsLastUsedTime[t],Object(ao.f)(s)}}class ke{constructor(t){this._instance=t,this._proxyObj=Promise.resolve(this._instance)}dispose(){this._instance.dispose()}getProxyObject(){return this._proxyObj}}class Ve{constructor(t){this._workerClient=t}fhr(t,s){return this._workerClient.fhr(t,s)}}class ct extends ao.a{constructor(t,s,a){super();this._disposed=!1,this._modelService=t,this._keepIdleModels=s,this._workerFactory=new We(a),this._worker=null,this._modelManager=null}fhr(t,s){throw new Error("Not implemented!")}_getOrCreateWorker(){if(!this._worker)try{this._worker=this._register(new je(this._workerFactory,"vs/editor/common/services/editorSimpleWorker",new Ve(this)))}catch(t){Ge(t),this._worker=new ke(new tn(new Ve(this),null))}return this._worker}_getProxy(){return this._getOrCreateWorker().getProxyObject().then(void 0,t=>(Ge(t),this._worker=new ke(new tn(new Ve(this),null)),this._getOrCreateWorker().getProxyObject()))}_getOrCreateModelManager(t){return this._modelManager||(this._modelManager=this._register(new Ee(t,this._modelService,this._keepIdleModels))),this._modelManager}_withSyncedResources(t,s=!1){return rn(this,void 0,void 0,function*(){return this._disposed?Promise.reject(Object(So.b)()):this._getProxy().then(a=>(this._getOrCreateModelManager(a).ensureSyncedResources(t,s),a))})}computeDiff(t,s,a,x){return this._withSyncedResources([t,s],!0).then(Z=>Z.computeDiff(t.toString(),s.toString(),a,x))}computeMoreMinimalEdits(t,s){return this._withSyncedResources([t]).then(a=>a.computeMoreMinimalEdits(t.toString(),s))}computeLinks(t){return this._withSyncedResources([t]).then(s=>s.computeLinks(t.toString()))}textualSuggest(t,s,a){return rn(this,void 0,void 0,function*(){const x=yield this._withSyncedResources(t),Z=a.source,ie=Object(_o.M)(a);return x.textualSuggest(t.map(de=>de.toString()),s,Z,ie)})}computeWordRanges(t,s){return this._withSyncedResources([t]).then(a=>{let x=this._modelService.getModel(t);if(!x)return Promise.resolve(null);let Z=he.b.getWordDefinition(x.getLanguageId()),ie=Z.source,de=Object(_o.M)(Z);return a.computeWordRanges(t.toString(),s,ie,de)})}navigateValueSet(t,s,a){return this._withSyncedResources([t]).then(x=>{let Z=this._modelService.getModel(t);if(!Z)return null;let ie=he.b.getWordDefinition(Z.getLanguageId()),de=ie.source,Ae=Object(_o.M)(ie);return x.navigateValueSet(t.toString(),s,a,de,Ae)})}dispose(){super.dispose(),this._disposed=!0}}function Et(t,s){return new qt(t,s)}class qt extends ct{constructor(t,s){super(t,s.keepIdleModels||!1,s.label);this._foreignModuleId=s.moduleId,this._foreignModuleCreateData=s.createData||null,this._foreignModuleHost=s.host||null,this._foreignProxy=null}fhr(t,s){if(!this._foreignModuleHost||typeof this._foreignModuleHost[t]!="function")return Promise.reject(new Error("Missing method "+t+" or missing main thread foreign host."));try{return Promise.resolve(this._foreignModuleHost[t].apply(this._foreignModuleHost,s))}catch(a){return Promise.reject(a)}}_getForeignProxy(){return this._foreignProxy||(this._foreignProxy=this._getProxy().then(t=>{const s=this._foreignModuleHost?xo.e(this._foreignModuleHost):[];return t.loadForeignModule(this._foreignModuleId,this._foreignModuleCreateData,s).then(a=>{this._foreignModuleCreateData=null;const x=(de,Ae)=>t.fmr(de,Ae),Z=(de,Ae)=>function(){const dt=Array.prototype.slice.call(arguments,0);return Ae(de,dt)};let ie={};for(const de of a)ie[de]=Z(de,x);return ie})})),this._foreignProxy}getProxy(){return this._getForeignProxy()}withSyncedResources(t){return this._withSyncedResources(t).then(s=>this.getProxy())}}var Xt=e("4bUh"),Yt=e("baJR"),go=e("qNAo");function F(t){return Array.isArray(t)}function J(t){return!F(t)}function Fe(t){return typeof t=="string"}function Ze(t){return!Fe(t)}function St(t){return!t}function It(t,s){return t.ignoreCase&&s?s.toLowerCase():s}function Vt(t){return t.replace(/[&<>'"_]/g,"-")}function io(t,s){console.log(`${t.languageId}: ${s}`)}function ho(t,s){return new Error(`${t.languageId}: ${s}`)}function mo(t,s,a,x,Z){const ie=/\$((\$)|(#)|(\d\d?)|[sS](\d\d?)|@(\w+))/g;let de=null;return s.replace(ie,function(Ae,dt,At,yt,oo,jo,Xo,Jo,yi){return St(At)?St(yt)?!St(oo)&&oo0;){const x=t.tokenizer[a];if(x)return x;const Z=a.lastIndexOf(".");Z<0?a=null:a=a.substr(0,Z)}return null}function Io(t,s){let a=s;for(;a&&a.length>0;){const x=t.stateNames[a];if(x)return!0;const Z=a.lastIndexOf(".");Z<0?a=null:a=a.substr(0,Z)}return!1}const No=5;class Ro{constructor(t){this._maxCacheDepth=t,this._entries=Object.create(null)}static create(t,s){return this._INSTANCE.create(t,s)}create(t,s){if(t!==null&&t.depth>=this._maxCacheDepth)return new To(t,s);let a=To.getStackElementId(t);a.length>0&&(a+="|"),a+=s;let x=this._entries[a];return x||(x=new To(t,s),this._entries[a]=x,x)}}Ro._INSTANCE=new Ro(No);class To{constructor(t,s){this.parent=t,this.state=s,this.depth=(this.parent?this.parent.depth:0)+1}static getStackElementId(t){let s="";for(;t!==null;)s.length>0&&(s+="|"),s+=t.state,t=t.parent;return s}static _equals(t,s){for(;t!==null&&s!==null;){if(t===s)return!0;if(t.state!==s.state)return!1;t=t.parent,s=s.parent}return t===null&&s===null}equals(t){return To._equals(this,t)}push(t){return Ro.create(this,t)}pop(){return this.parent}popall(){let t=this;for(;t.parent;)t=t.parent;return t}switchTo(t){return Ro.create(this.parent,t)}}class Ho{constructor(t,s){this.languageId=t,this.state=s}equals(t){return this.languageId===t.languageId&&this.state.equals(t.state)}clone(){let t=this.state.clone();return t===this.state?this:new Ho(this.languageId,this.state)}}class Yo{constructor(t){this._maxCacheDepth=t,this._entries=Object.create(null)}static create(t,s){return this._INSTANCE.create(t,s)}create(t,s){if(s!==null)return new ri(t,s);if(t!==null&&t.depth>=this._maxCacheDepth)return new ri(t,s);let a=To.getStackElementId(t),x=this._entries[a];return x||(x=new ri(t,null),this._entries[a]=x,x)}}Yo._INSTANCE=new Yo(No);class ri{constructor(t,s){this.stack=t,this.embeddedModeData=s}clone(){let t=this.embeddedModeData?this.embeddedModeData.clone():null;return t===this.embeddedModeData?this:Yo.create(this.stack,this.embeddedModeData)}equals(t){return t instanceof ri&&this.stack.equals(t.stack)?this.embeddedModeData===null&&t.embeddedModeData===null?!0:this.embeddedModeData===null||t.embeddedModeData===null?!1:this.embeddedModeData.equals(t.embeddedModeData):!1}}class Vo{constructor(){this._tokens=[],this._languageId=null,this._lastTokenType=null,this._lastTokenLanguage=null}enterMode(t,s){this._languageId=s}emit(t,s){if(this._lastTokenType===s&&this._lastTokenLanguage===this._languageId)return;this._lastTokenType=s,this._lastTokenLanguage=this._languageId,this._tokens.push(new f.a(t,s,this._languageId))}nestedModeTokenize(t,s,a,x){const Z=a.languageId,ie=a.state,de=Pe.F.get(Z);if(!de)return this.enterMode(x,Z),this.emit(x,""),ie;let Ae=de.tokenize(t,s,ie,x);return this._tokens=this._tokens.concat(Ae.tokens),this._lastTokenType=null,this._lastTokenLanguage=null,this._languageId=null,Ae.endState}finalize(t){return new f.b(this._tokens,t)}}class li{constructor(t,s){this._modeService=t,this._theme=s,this._prependTokens=null,this._tokens=[],this._currentLanguageId=0,this._lastTokenMetadata=0}enterMode(t,s){this._currentLanguageId=this._modeService.languageIdCodec.encodeLanguageId(s)}emit(t,s){let a=this._theme.match(this._currentLanguageId,s);if(this._lastTokenMetadata===a)return;this._lastTokenMetadata=a,this._tokens.push(t),this._tokens.push(a)}static _merge(t,s,a){let x=t!==null?t.length:0,Z=s.length,ie=a!==null?a.length:0;if(x===0&&Z===0&&ie===0)return new Uint32Array(0);if(x===0&&Z===0)return a;if(Z===0&&ie===0)return t;let de=new Uint32Array(x+Z+ie);t!==null&&de.set(t);for(let Ae=0;Ae{if(Z)return;let de=!1;for(let Ae=0,dt=ie.changedLanguages.length;Ae{})}}getInitialState(){let t=Ro.create(null,this._lexer.start);return Yo.create(t,null)}tokenize(t,s,a,x){let Z=new Vo,ie=this._tokenize(t,s,a,x,Z);return Z.finalize(ie)}tokenize2(t,s,a,x){let Z=new li(this._modeService,this._standaloneThemeService.getColorTheme().tokenTheme),ie=this._tokenize(t,s,a,x,Z);return Z.finalize(ie)}_tokenize(t,s,a,x,Z){return a.embeddedModeData?this._nestedTokenize(t,s,a,x,Z):this._myTokenize(t,s,a,x,Z)}_findLeavingNestedModeOffset(t,s){let a=this._lexer.tokenizer[s.stack.state];if(!a&&(a=yo(this._lexer,s.stack.state),!a))throw ho(this._lexer,"tokenizer state is not defined: "+s.stack.state);let x=-1,Z=!1;for(const ie of a){if(!Ze(ie.action)||ie.action.nextEmbedded!=="@pop")continue;Z=!0;let de=ie.regex,Ae=ie.regex.source;if(Ae.substr(0,4)==="^(?:"&&Ae.substr(Ae.length-1,1)===")"){let At=(de.ignoreCase?"i":"")+(de.unicode?"u":"");de=new RegExp(Ae.substr(4,Ae.length-5),At)}let dt=t.search(de);if(dt===-1||dt!==0&&ie.matchOnlyAtLineStart)continue;(x===-1||dt0&&Z.nestedModeTokenize(de,!1,a.embeddedModeData,x);let Ae=t.substring(ie);return this._myTokenize(Ae,s,a,x+ie,Z)}_safeRuleName(t){return t?t.name:"(unknown)"}_myTokenize(t,s,a,x,Z){Z.enterMode(x,this._languageId);const ie=t.length,de=s&&this._lexer.includeLF?t+` `:t,Ae=de.length;let dt=a.embeddedModeData,At=a.stack,yt=0,oo=null,jo=!0;for(;jo||yt=Ae)break;jo=!1;let Ki=this._lexer.tokenizer[gi];if(!Ki&&(Ki=yo(this._lexer,gi),!Ki))throw ho(this._lexer,"tokenizer state is not defined: "+gi);let fi=de.substr(yt);for(const un of Ki)if((yt===0||!un.matchOnlyAtLineStart)&&(Di=fi.match(un.regex),Di)){pi=Di[0],vi=un.action;break}}if(Di||(Di=[""],pi=""),vi||(yt=this._lexer.maxStack)throw ho(this._lexer,"maximum tokenizer stack size reached: ["+At.state+","+At.parent.state+",...]");At=At.push(gi)}else if(vi.next==="@pop"){if(At.depth<=1)throw ho(this._lexer,"trying to pop an empty stack in rule: "+this._safeRuleName(yn));At=At.pop()}else if(vi.next==="@popall")At=At.popall();else{let Ki=mo(this._lexer,vi.next,pi,Di,gi);if(Ki[0]==="@"&&(Ki=Ki.substr(1)),yo(this._lexer,Ki))At=At.push(Ki);else throw ho(this._lexer,"trying to set a next state '"+Ki+"' that is undefined in rule: "+this._safeRuleName(yn))}}vi.log&&typeof vi.log=="string"&&io(this._lexer,this._lexer.languageId+": "+mo(this._lexer,vi.log,pi,Di,gi))}if(sn===null)throw ho(this._lexer,"lexer rule has no well-defined action in rule: "+this._safeRuleName(yn));const Hs=Ki=>{let fi=this._modeService.getModeIdForLanguageName(Ki);fi&&(Ki=fi);const un=this._getNestedEmbeddedModeData(Ki);if(yt0)throw ho(this._lexer,"groups cannot be nested: "+this._safeRuleName(yn));if(Di.length!==sn.length+1)throw ho(this._lexer,"matched number of groups does not match the number of actions in rule: "+this._safeRuleName(yn));let Ki=0;for(let fi=1;fit});class Dn{static colorizeElement(t,s,a,x){x=x||{};let Z=x.theme||"vs",ie=x.mimeType||a.getAttribute("lang")||a.getAttribute("data-lang");if(!ie)return console.error("Mode not detected"),Promise.resolve();t.setTheme(Z);let de=a.firstChild?a.firstChild.nodeValue:"";a.className+=" "+Z;let Ae=dt=>{var At;const yt=(At=an==null?void 0:an.createHTML(dt))!==null&&At!==void 0?At:dt;a.innerHTML=yt};return this.colorize(s,de||"",ie,x).then(Ae,dt=>console.error(dt))}static colorize(t,s,a,x){const Z=t.languageIdCodec;let ie=4;x&&typeof x.tabSize=="number"&&(ie=x.tabSize),_o.S(s)&&(s=s.substr(1));let de=_o.Q(s),Ae=t.getModeId(a);if(!Ae)return Promise.resolve(pn(de,ie,Z));t.triggerMode(Ae);const dt=Pe.F.get(Ae);if(dt)return fn(de,ie,dt,Z);const At=Pe.F.getPromise(Ae);return At?new Promise((yt,oo)=>{At.then(jo=>{fn(de,ie,jo,Z).then(yt,oo)},oo)}):new Promise((yt,oo)=>{let jo=null,Xo=null;const Jo=()=>{jo&&(jo.dispose(),jo=null),Xo&&(Xo.dispose(),Xo=null);const yi=Pe.F.get(Ae);if(yi){fn(de,ie,yi,Z).then(yt,oo);return}yt(pn(de,ie,Z))};Xo=new bo.g,Xo.cancelAndSet(Jo,500),jo=Pe.F.onDidChange(yi=>{yi.changedLanguages.indexOf(Ae)>=0&&Jo()})})}static colorizeLine(t,s,a,x,Z=4){const ie=go.g.isBasicASCII(t,s),de=go.g.containsRTL(t,ie,a);let Ae=Object(Yt.e)(new Yt.c(!1,!0,t,!1,ie,de,0,x,[],Z,0,0,0,0,-1,"none",!1,!1,null));return Ae.html}static colorizeModelLine(t,s,a=4){let x=t.getLineContent(s);t.forceTokenization(s);let Z=t.getLineTokens(s),ie=Z.inflate();return this.colorizeLine(x,t.mightContainNonBasicASCII(),t.mightContainRTL(),ie,a)}}function fn(t,s,a,x){return new Promise((Z,ie)=>{const de=()=>{const Ae=Vn(t,s,a,x);if(a instanceof Ai){const dt=a.getLoadStatus();if(dt.loaded===!1){dt.promise.then(de,ie);return}}Z(Ae)};de()})}function pn(t,s,a){let x=[];const Z=(0<<11|1<<14|2<<23)>>>0,ie=new Uint32Array(2);ie[0]=0,ie[1]=Z;for(let de=0,Ae=t.length;de")}return x.join("")}function Vn(t,s,a,x){let Z=[],ie=a.getInitialState();for(let de=0,Ae=t.length;de"),ie=At.endState}return Z.join("")}var Qi=e("uDWl"),wn=e("Szf2"),ln=e("S3by"),si=e("sFUC"),co=e("x/UI"),Ao=e("iDAx"),qo=e("0/Sa"),mi=e("+7oY"),oi=e("qj0h"),Ji=e("CRAX");class T{constructor(t={},s=[],a=[]){this._contents=t,this._keys=s,this._overrides=a,this.isFrozen=!1,this.overrideConfigurations=new Map}get contents(){return this.checkAndFreeze(this._contents)}get overrides(){return this.checkAndFreeze(this._overrides)}get keys(){return this.checkAndFreeze(this._keys)}isEmpty(){return this._keys.length===0&&Object.keys(this._contents).length===0&&this._overrides.length===0}getValue(t){return t?Object(mi.d)(this.contents,t):this.contents}override(t){let s=this.overrideConfigurations.get(t);return s||(s=this.createOverrideConfigurationModel(t),this.overrideConfigurations.set(t,s)),s}merge(...t){const s=oi.b(this.contents),a=oi.b(this.overrides),x=[...this.keys];for(const Z of t){this.mergeContents(s,Z.contents);for(const ie of Z.overrides){const[de]=a.filter(Ae=>Ii.g(Ae.identifiers,ie.identifiers));de?this.mergeContents(de.contents,ie.contents):a.push(oi.b(ie))}for(const ie of Z.keys)x.indexOf(ie)===-1&&x.push(ie)}return new T(s,x,a)}freeze(){return this.isFrozen=!0,this}createOverrideConfigurationModel(t){const s=this.getContentsForOverrideIdentifer(t);if(!s||typeof s!="object"||!Object.keys(s).length)return this;let a={};for(const x of Ii.f([...Object.keys(this.contents),...Object.keys(s)])){let Z=this.contents[x],ie=s[x];ie&&(typeof Z=="object"&&typeof ie=="object"?(Z=oi.b(Z),this.mergeContents(Z,ie)):Z=ie),a[x]=Z}return new T(a,this.keys,this.overrides)}mergeContents(t,s){for(const a of Object.keys(s)){if(a in t&&(xo.k(t[a])&&xo.k(s[a]))){this.mergeContents(t[a],s[a]);continue}t[a]=oi.b(s[a])}}checkAndFreeze(t){return this.isFrozen&&!Object.isFrozen(t)?oi.c(t):t}getContentsForOverrideIdentifer(t){for(const s of this.overrides)if(s.identifiers.indexOf(t)!==-1)return s.contents;return null}toJSON(){return{contents:this.contents,overrides:this.overrides,keys:this.keys}}setValue(t,s){this.addKey(t),Object(mi.b)(this.contents,t,s,a=>{throw new Error(a)})}removeValue(t){this.removeKey(t)&&Object(mi.f)(this.contents,t)}addKey(t){let s=this.keys.length;for(let a=0;aconsole.error(`Conflict in default settings file: ${Z}`))});super(t,s,a)}}class R{constructor(t,s,a=new T,x=new T,Z=new we.b,ie=new T,de=new we.b,Ae=!0){this._defaultConfiguration=t,this._localUserConfiguration=s,this._remoteUserConfiguration=a,this._workspaceConfiguration=x,this._folderConfigurations=Z,this._memoryConfiguration=ie,this._memoryConfigurationByResource=de,this._freeze=Ae,this._workspaceConsolidatedConfiguration=null,this._foldersConsolidatedConfigurations=new we.b,this._userConfiguration=null}getValue(t,s,a){const x=this.getConsolidateConfigurationModel(s,a);return x.getValue(t)}updateValue(t,s,a={}){let x;a.resource?(x=this._memoryConfigurationByResource.get(a.resource),x||(x=new T,this._memoryConfigurationByResource.set(a.resource,x))):x=this._memoryConfiguration,s===void 0?x.removeValue(t):x.setValue(t,s),a.resource||(this._workspaceConsolidatedConfiguration=null)}get userConfiguration(){return this._userConfiguration||(this._userConfiguration=this._remoteUserConfiguration.isEmpty()?this._localUserConfiguration:this._localUserConfiguration.merge(this._remoteUserConfiguration),this._freeze&&this._userConfiguration.freeze()),this._userConfiguration}getConsolidateConfigurationModel(t,s){let a=this.getConsolidatedConfigurationModelForResource(t,s);return t.overrideIdentifier?a.override(t.overrideIdentifier):a}getConsolidatedConfigurationModelForResource({resource:t},s){let a=this.getWorkspaceConsolidatedConfiguration();if(s&&t){const x=s.getFolder(t);x&&(a=this.getFolderConsolidatedConfiguration(x.uri)||a);const Z=this._memoryConfigurationByResource.get(t);Z&&(a=a.merge(Z))}return a}getWorkspaceConsolidatedConfiguration(){return this._workspaceConsolidatedConfiguration||(this._workspaceConsolidatedConfiguration=this._defaultConfiguration.merge(this.userConfiguration,this._workspaceConfiguration,this._memoryConfiguration),this._freeze&&(this._workspaceConfiguration=this._workspaceConfiguration.freeze())),this._workspaceConsolidatedConfiguration}getFolderConsolidatedConfiguration(t){let s=this._foldersConsolidatedConfigurations.get(t);if(!s){const a=this.getWorkspaceConsolidatedConfiguration(),x=this._folderConfigurations.get(t);x?(s=a.merge(x),this._freeze&&(s=s.freeze()),this._foldersConsolidatedConfigurations.set(t,s)):s=a}return s}toData(){return{defaults:{contents:this._defaultConfiguration.contents,overrides:this._defaultConfiguration.overrides,keys:this._defaultConfiguration.keys},user:{contents:this.userConfiguration.contents,overrides:this.userConfiguration.overrides,keys:this.userConfiguration.keys},workspace:{contents:this._workspaceConfiguration.contents,overrides:this._workspaceConfiguration.overrides,keys:this._workspaceConfiguration.keys},folders:[...this._folderConfigurations.keys()].reduce((t,s)=>{const{contents:a,overrides:x,keys:Z}=this._folderConfigurations.get(s);return t.push([s,{contents:a,overrides:x,keys:Z}]),t},[])}}static parse(t){const s=this.parseConfigurationModel(t.defaults),a=this.parseConfigurationModel(t.user),x=this.parseConfigurationModel(t.workspace),Z=t.folders.reduce((ie,de)=>(ie.set(I.a.revive(de[0]),this.parseConfigurationModel(de[1])),ie),new we.b);return new R(s,a,new T,x,Z,new T,new we.b,!1)}static parseConfigurationModel(t){return new T(t.contents,t.keys,t.overrides).freeze()}}class se{constructor(t,s,a,x){this.change=t,this.previous=s,this.currentConfiguraiton=a,this.currentWorkspace=x,this._previousConfiguration=void 0;const Z=new Set;t.keys.forEach(de=>Z.add(de)),t.overrides.forEach(([,de])=>de.forEach(Ae=>Z.add(Ae))),this.affectedKeys=[...Z.values()];const ie=new T;this.affectedKeys.forEach(de=>ie.setValue(de,{})),this.affectedKeysTree=ie.contents}get previousConfiguration(){return!this._previousConfiguration&&this.previous&&(this._previousConfiguration=R.parse(this.previous.data)),this._previousConfiguration}affectsConfiguration(t,s){var a;if(this.doesAffectedKeysTreeContains(this.affectedKeysTree,t)){if(s){const x=this.previousConfiguration?this.previousConfiguration.getValue(t,s,(a=this.previous)===null||a===void 0?void 0:a.workspace):void 0,Z=this.currentConfiguraiton.getValue(t,s,this.currentWorkspace);return!oi.d(x,Z)}return!0}return!1}doesAffectedKeysTreeContains(t,s){let a=Object(mi.g)({[s]:!0},()=>{}),x;for(;typeof a=="object"&&(x=Object.keys(a)[0]);){if(t=t[x],!t)return!1;a=a[x]}return!0}}var be=e("3/fG");const Be=/^(cursor|delete)/;class ot extends ao.a{constructor(t,s,a,x,Z){super();this._contextKeyService=t,this._commandService=s,this._telemetryService=a,this._notificationService=x,this._logService=Z,this._onDidUpdateKeybindings=this._register(new L.b),this._currentChord=null,this._currentChordChecker=new bo.c,this._currentChordStatusMessage=null,this._ignoreSingleModifiers=pt.EMPTY,this._currentSingleModifier=null,this._currentSingleModifierClearTimeout=new bo.g,this._logging=!1}get onDidUpdateKeybindings(){return this._onDidUpdateKeybindings?this._onDidUpdateKeybindings.event:L.c.None}dispose(){super.dispose()}_log(t){this._logging&&this._logService.info(`[KeybindingService]: ${t}`)}getKeybindings(){return this._getResolver().getKeybindings()}lookupKeybinding(t,s){const a=this._getResolver().lookupPrimaryKeybinding(t,s||this._contextKeyService);return a?a.resolvedKeybinding:void 0}dispatchEvent(t,s){return this._dispatch(t,s)}softDispatch(t,s){const a=this.resolveKeyboardEvent(t);if(a.isChord())return console.warn("Unexpected keyboard event mapped to a chord"),null;const[x]=a.getDispatchParts();if(x===null)return null;const Z=this._contextKeyService.getContext(s),ie=this._currentChord?this._currentChord.keypress:null;return this._getResolver().resolve(Z,ie,x)}_enterChordMode(t,s){this._currentChord={keypress:t,label:s},this._currentChordStatusMessage=this._notificationService.status(be.a("first.chord","({0}) was pressed. Waiting for second key of chord...",s));const a=Date.now();this._currentChordChecker.cancelAndSet(()=>{if(!this._documentHasFocus()){this._leaveChordMode();return}Date.now()-a>5e3&&this._leaveChordMode()},500)}_leaveChordMode(){this._currentChordStatusMessage&&(this._currentChordStatusMessage.dispose(),this._currentChordStatusMessage=null),this._currentChordChecker.cancel(),this._currentChord=null}_dispatch(t,s){return this._doDispatch(this.resolveKeyboardEvent(t),s,!1)}_singleModifierDispatch(t,s){const a=this.resolveKeyboardEvent(t),[x]=a.getSingleModifierDispatchParts();if(x)return this._ignoreSingleModifiers.has(x)?(this._log(`+ Ignoring single modifier ${x} due to it being pressed together with other keys.`),this._ignoreSingleModifiers=pt.EMPTY,this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1):(this._ignoreSingleModifiers=pt.EMPTY,this._currentSingleModifier===null?(this._log(`+ Storing single modifier for possible chord ${x}.`),this._currentSingleModifier=x,this._currentSingleModifierClearTimeout.cancelAndSet(()=>{this._log("+ Clearing single modifier due to 300ms elapsed."),this._currentSingleModifier=null},300),!1):x===this._currentSingleModifier?(this._log(`/ Dispatching single modifier chord ${x} ${x}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,this._doDispatch(a,s,!0)):(this._log(`+ Clearing single modifier due to modifier mismatch: ${this._currentSingleModifier} ${x}`),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1));const[Z]=a.getParts();return this._ignoreSingleModifiers=new pt(Z),this._currentSingleModifier!==null&&this._log("+ Clearing single modifier due to other key up."),this._currentSingleModifierClearTimeout.cancel(),this._currentSingleModifier=null,!1}_doDispatch(t,s,a=!1){let x=!1;if(t.isChord())return console.warn("Unexpected keyboard event mapped to a chord"),!1;let Z=null,ie=null;if(a){const[At]=t.getSingleModifierDispatchParts();Z=At,ie=At}else[Z]=t.getDispatchParts(),ie=this._currentChord?this._currentChord.keypress:null;if(Z===null)return this._log("\\ Keyboard event cannot be dispatched in keydown phase."),x;const de=this._contextKeyService.getContext(s),Ae=t.getLabel(),dt=this._getResolver().resolve(de,ie,Z);return this._logService.trace("KeybindingService#dispatch",Ae,dt==null?void 0:dt.commandId),dt&&dt.enterChord?(x=!0,this._enterChordMode(Z,Ae),x):(this._currentChord&&((!dt||!dt.commandId)&&(this._notificationService.status(be.a("missing.chord","The key combination ({0}, {1}) is not a command.",this._currentChord.label,Ae),{hideAfter:10*1e3}),x=!0)),this._leaveChordMode(),dt&&dt.commandId&&(dt.bubble||(x=!0),typeof dt.commandArgs=="undefined"?this._commandService.executeCommand(dt.commandId).then(void 0,At=>this._notificationService.warn(At)):this._commandService.executeCommand(dt.commandId,dt.commandArgs).then(void 0,At=>this._notificationService.warn(At)),Be.test(dt.commandId)||this._telemetryService.publicLog2("workbenchActionExecuted",{id:dt.commandId,from:"keybinding"})),x)}mightProducePrintableCharacter(t){return t.ctrlKey||t.metaKey?!1:t.keyCode>=31&&t.keyCode<=56||t.keyCode>=21&&t.keyCode<=30}}class pt{constructor(t){this._ctrlKey=t?t.ctrlKey:!1,this._shiftKey=t?t.shiftKey:!1,this._altKey=t?t.altKey:!1,this._metaKey=t?t.metaKey:!1}has(t){switch(t){case"ctrl":return this._ctrlKey;case"shift":return this._shiftKey;case"alt":return this._altKey;case"meta":return this._metaKey}}}pt.EMPTY=new pt(null);var xt=e("T8No");class Nt{constructor(t,s,a){this._log=a,this._defaultKeybindings=t,this._defaultBoundCommands=new Map;for(let x=0,Z=t.length;x=0;dt--)this._isTargetedForRemoval(t[dt],ie,de,Z,Ae)&&t.splice(dt,1)}return t.concat(a)}_addKeyPress(t,s){const a=this._map.get(t);if(typeof a=="undefined"){this._map.set(t,[s]),this._addToLookupMap(s);return}for(let x=a.length-1;x>=0;x--){let Z=a[x];if(Z.command===s.command)continue;const ie=Z.keypressParts.length>1,de=s.keypressParts.length>1;if(ie&&de&&Z.keypressParts[1]!==s.keypressParts[1])continue;Nt.whenIsEntirelyIncluded(Z.when,s.when)&&this._removeFromLookupMap(Z)}a.push(s),this._addToLookupMap(s)}_addToLookupMap(t){if(!t.command)return;let s=this._lookupMap.get(t.command);typeof s=="undefined"?(s=[t],this._lookupMap.set(t.command,s)):s.push(t)}_removeFromLookupMap(t){if(!t.command)return;let s=this._lookupMap.get(t.command);if(typeof s=="undefined")return;for(let a=0,x=s.length;a=0;x--){const Z=a[x];if(s.contextMatchesRules(Z.when))return Z}return a[a.length-1]}resolve(t,s,a){this._log(`| Resolving ${a}${s?` chorded from ${s}`:""}`);let x=null;if(s!==null){const ie=this._map.get(s);if(typeof ie=="undefined")return this._log("\\ No keybinding entries."),null;x=[];for(let de=0,Ae=ie.length;de1&&Z.keypressParts[1]!==null?(this._log(`\\ From ${x.length} keybinding entries, matched chord, when: ${Rt(Z.when)}, source: ${Kt(Z)}.`),{enterChord:!0,leaveChord:!1,commandId:null,commandArgs:null,bubble:!1}):(this._log(`\\ From ${x.length} keybinding entries, matched ${Z.command}, when: ${Rt(Z.when)}, source: ${Kt(Z)}.`),{enterChord:!1,leaveChord:Z.keypressParts.length>1,commandId:Z.command,commandArgs:Z.commandArgs,bubble:Z.bubble}):(this._log(`\\ From ${x.length} keybinding entries, no when clauses matched the context.`),null)}_findCommand(t,s){for(let a=s.length-1;a>=0;a--){let x=s[a];if(!Nt.contextMatchesRules(t,x.when))continue;return x}return null}static contextMatchesRules(t,s){return s?s.evaluate(t):!0}}function Rt(t){return t?`${t.serialize()}`:"no when condition"}function Kt(t){return t.extensionId?t.isBuiltinExtension?`built-in extension ${t.extensionId}`:`user extension ${t.extensionId}`:t.isDefault?"built-in":"user"}var Qt=e("nrhi");class lo{constructor(t,s,a,x,Z,ie,de){this._resolvedKeybindingItemBrand=void 0,this.resolvedKeybinding=t,this.keypressParts=t?ro(t.getDispatchParts()):[],t&&this.keypressParts.length===0&&(this.keypressParts=ro(t.getSingleModifierDispatchParts())),this.bubble=s?s.charCodeAt(0)===94:!1,this.command=this.bubble?s.substr(1):s,this.commandArgs=a,this.when=x,this.isDefault=Z,this.extensionId=ie,this.isBuiltinExtension=de}}function ro(t){let s=[];for(let a=0,x=t.length;athis._getLabel(t))}getAriaLabel(){return Eo.a.toLabel(this._os,this._parts,t=>this._getAriaLabel(t))}getElectronAccelerator(){return this._parts.length>1||this._parts[0].isDuplicateModifierCase()?null:Eo.b.toLabel(this._os,this._parts,t=>this._getElectronAccelerator(t))}isChord(){return this._parts.length>1}getParts(){return this._parts.map(t=>this._getPart(t))}_getPart(t){return new wn.c(t.ctrlKey,t.shiftKey,t.altKey,t.metaKey,this._getLabel(t),this._getAriaLabel(t))}getDispatchParts(){return this._parts.map(t=>this._getDispatchPart(t))}getSingleModifierDispatchParts(){return this._parts.map(t=>this._getSingleModifierDispatchPart(t))}}class Fo extends Mo{constructor(t,s){super(s,t.parts)}_keyCodeToUILabel(t){if(this._os===2)switch(t){case 15:return"\u2190";case 16:return"\u2191";case 17:return"\u2192";case 18:return"\u2193"}return A.d.toString(t)}_getLabel(t){return t.isDuplicateModifierCase()?"":this._keyCodeToUILabel(t.keyCode)}_getAriaLabel(t){return t.isDuplicateModifierCase()?"":A.d.toString(t.keyCode)}_getElectronAccelerator(t){return A.d.toElectronAccelerator(t.keyCode)}_getDispatchPart(t){return Fo.getDispatchStr(t)}static getDispatchStr(t){if(t.isModifierKey())return null;let s="";return t.ctrlKey&&(s+="ctrl+"),t.shiftKey&&(s+="shift+"),t.altKey&&(s+="alt+"),t.metaKey&&(s+="meta+"),s+=A.d.toString(t.keyCode),s}_getSingleModifierDispatchPart(t){return t.keyCode===5&&!t.shiftKey&&!t.altKey&&!t.metaKey?"ctrl":t.keyCode===4&&!t.ctrlKey&&!t.altKey&&!t.metaKey?"shift":t.keyCode===6&&!t.ctrlKey&&!t.shiftKey&&!t.metaKey?"alt":t.keyCode===57&&!t.ctrlKey&&!t.shiftKey&&!t.altKey?"meta":null}static _scanCodeToKeyCode(t){const s=A.b[t];if(s!==-1)return s;switch(t){case 10:return 31;case 11:return 32;case 12:return 33;case 13:return 34;case 14:return 35;case 15:return 36;case 16:return 37;case 17:return 38;case 18:return 39;case 19:return 40;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 45;case 25:return 46;case 26:return 47;case 27:return 48;case 28:return 49;case 29:return 50;case 30:return 51;case 31:return 52;case 32:return 53;case 33:return 54;case 34:return 55;case 35:return 56;case 36:return 22;case 37:return 23;case 38:return 24;case 39:return 25;case 40:return 26;case 41:return 27;case 42:return 28;case 43:return 29;case 44:return 30;case 45:return 21;case 51:return 83;case 52:return 81;case 53:return 87;case 54:return 89;case 55:return 88;case 56:return 0;case 57:return 80;case 58:return 90;case 59:return 86;case 60:return 82;case 61:return 84;case 62:return 85;case 106:return 92}return 0}static _resolveSimpleUserBinding(t){if(!t)return null;if(t instanceof wn.d)return t;const s=this._scanCodeToKeyCode(t.scanCode);return s===0?null:new wn.d(t.ctrlKey,t.shiftKey,t.altKey,t.metaKey,s)}static resolveUserBinding(t,s){const a=ro(t.map(x=>this._resolveSimpleUserBinding(x)));return a.length>0?[new Fo(new wn.a(a),s)]:[]}}var Bo=e("sM1p"),di=e("EWX2"),Ko=e("A9l+"),ei=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},Gi=function(t,s){return function(a,x){s(a,x,t)}},Ei=function(t,s,a,x){function Z(ie){return ie instanceof a?ie:new a(function(de){de(ie)})}return new(a||(a=Promise))(function(ie,de){function Ae(yt){try{At(x.next(yt))}catch(oo){de(oo)}}function dt(yt){try{At(x.throw(yt))}catch(oo){de(oo)}}function At(yt){yt.done?ie(yt.value):Z(yt.value).then(Ae,dt)}At((x=x.apply(t,s||[])).next())})};class Mi{constructor(t){this.disposed=!1,this.model=t,this._onWillDispose=new L.b}get textEditorModel(){return this.model}dispose(){this.disposed=!0,this._onWillDispose.fire()}}function wi(t,s,a){return Object(si.b)(t)?s(t):a(t)}let hn=class{constructor(s){this.modelService=s}setEditor(s){this.editor=s}createModelReference(s){let a=null;return this.editor&&(a=wi(this.editor,x=>this.findModel(x,s),x=>this.findModel(x.getOriginalEditor(),s)||this.findModel(x.getModifiedEditor(),s))),a?Promise.resolve(new ao.c(new Mi(a))):Promise.reject(new Error("Model not found"))}findModel(s,a){let x=this.modelService.getModel(a);return x&&x.uri.toString()!==a.toString()?null:x}};hn=ei([Gi(0,bi.a)],hn);class dn{show(){return dn.NULL_PROGRESS_RUNNER}showWhile(t,s){return Ei(this,void 0,void 0,function*(){yield t})}}dn.NULL_PROGRESS_RUNNER={done:()=>{},total:()=>{},worked:()=>{}};class bn{confirm(t){return this.doConfirm(t).then(s=>({confirmed:s,checkboxChecked:!1}))}doConfirm(t){let s=t.message;return t.detail&&(s=s+` `+t.detail),Promise.resolve(window.confirm(s))}show(t,s,a,x){return Promise.resolve({choice:0})}}class En{info(t){return this.notify({severity:ln.a.Info,message:t})}warn(t){return this.notify({severity:ln.a.Warning,message:t})}error(t){return this.notify({severity:ln.a.Error,message:t})}notify(t){switch(t.severity){case ln.a.Error:console.error(t.message);break;case ln.a.Warning:console.warn(t.message);break;default:console.log(t.message);break}return En.NO_OP}status(t,s){return ao.a.None}}En.NO_OP=new Bo.b;class is{constructor(t){this._onWillExecuteCommand=new L.b,this._onDidExecuteCommand=new L.b,this.onDidExecuteCommand=this._onDidExecuteCommand.event,this._instantiationService=t}executeCommand(t,...s){const a=ze.a.getCommand(t);if(!a)return Promise.reject(new Error(`command '${t}' not found`));try{this._onWillExecuteCommand.fire({commandId:t,args:s});const x=this._instantiationService.invokeFunction.apply(this._instantiationService,[a.handler,...s]);return this._onDidExecuteCommand.fire({commandId:t,args:s}),Promise.resolve(x)}catch(x){return Promise.reject(x)}}}class In extends ot{constructor(t,s,a,x,Z,ie){super(t,s,a,x,Z);this._cachedResolver=null,this._dynamicKeybindings=[],this._register(ve.i(ie,ve.d.KEY_DOWN,de=>{const Ae=new Qi.a(de),dt=this._dispatch(Ae,Ae.target);dt&&(Ae.preventDefault(),Ae.stopPropagation())})),this._register(ve.i(window,ve.d.KEY_UP,de=>{const Ae=new Qi.a(de),dt=this._singleModifierDispatch(Ae,Ae.target);dt&&Ae.preventDefault()}))}addDynamicKeybinding(t,s,a,x){const Z=Object(wn.e)(s,Lo.a),ie=new ao.b;return Z&&(this._dynamicKeybindings.push({keybinding:Z.parts,command:t,when:x,weight1:1e3,weight2:0,extensionId:null,isBuiltinExtension:!1}),ie.add(Object(ao.i)(()=>{for(let de=0;dethis._log(a))}return this._cachedResolver}_documentHasFocus(){return document.hasFocus()}_toNormalizedKeybindingItems(t,s){let a=[],x=0;for(const Z of t){const ie=Z.when||void 0,de=Z.keybinding;if(!de)a[x++]=new lo(void 0,Z.command,Z.commandArgs,ie,s,null,!1);else{const Ae=Fo.resolveUserBinding(de,Lo.a);for(const dt of Ae)a[x++]=new lo(dt,Z.command,Z.commandArgs,ie,s,null,!1)}}return a}resolveKeyboardEvent(t){let s=new wn.d(t.ctrlKey,t.shiftKey,t.altKey,t.metaKey,t.keyCode).toChord();return new Fo(s,Lo.a)}}function zn(t){return t&&typeof t=="object"&&(!t.overrideIdentifier||typeof t.overrideIdentifier=="string")&&(!t.resource||t.resource instanceof I.a)}class Kn{constructor(){this._onDidChangeConfiguration=new L.b,this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._configuration=new R(new _,new T)}getValue(t,s){const a=typeof t=="string"?t:void 0,x=zn(t)?t:zn(s)?s:{};return this._configuration.getValue(a,x,void 0)}updateValues(t){const s={data:this._configuration.toData()};let a=[];for(const x of t){const[Z,ie]=x;if(this.getValue(Z)===ie)continue;this._configuration.updateValue(Z,ie),a.push(Z)}if(a.length>0){const x=new se({keys:a,overrides:[]},s,this._configuration);x.source=7,x.sourceConfig=null,this._onDidChangeConfiguration.fire(x)}return Promise.resolve()}}class fr{constructor(t){this.configurationService=t,this._onDidChangeConfiguration=new L.b,this.configurationService.onDidChangeConfiguration(s=>{this._onDidChangeConfiguration.fire({affectedKeys:s.affectedKeys,affectsConfiguration:(a,x)=>s.affectsConfiguration(x)})})}getValue(t,s,a){const x=k.a.isIPosition(s)?s:null,Z=x?typeof a=="string"?a:void 0:typeof s=="string"?s:void 0;return typeof Z=="undefined"?this.configurationService.getValue():this.configurationService.getValue(Z)}}let Ss=class{constructor(s){this.configurationService=s}getEOL(s,a){const x=this.configurationService.getValue("files.eol",{overrideIdentifier:a,resource:s});return x&&typeof x=="string"&&x!=="auto"?x:Lo.d||Lo.f?` `:`\r `}};Ss=ei([Gi(0,mi.a)],Ss);class pr{publicLog(t,s){return Promise.resolve(void 0)}publicLog2(t,s){return this.publicLog(t,s)}}class ns{constructor(){const t=I.a.from({scheme:ns.SCHEME,authority:"model",path:"/"});this.workspace={id:"4064f6ec-cb38-4ad0-af64-ee6467e63c82",folders:[new di.b({uri:t,name:"",index:0})]}}getWorkspace(){return this.workspace}}ns.SCHEME="inmemory";function Zn(t,s,a){if(!s)return;if(!(t instanceof Kn))return;let x=[];Object.keys(s).forEach(Z=>{Object(Ao.d)(Z)&&x.push([`editor.${Z}`,s[Z]]),a&&Object(Ao.c)(Z)&&x.push([`diffEditor.${Z}`,s[Z]])}),x.length>0&&t.updateValues(x)}class Vs{constructor(t){this._modelService=t}hasPreviewHandler(){return!1}apply(t,s){return Ei(this,void 0,void 0,function*(){const a=new Map;for(let ie of t){if(!(ie instanceof co.c))throw new Error("bad edit - only text edits are supported");const de=this._modelService.getModel(ie.resource);if(!de)throw new Error("bad edit - model not found");if(typeof ie.versionId=="number"&&de.getVersionId()!==ie.versionId)throw new Error("bad state - model changed in the meantime");let Ae=a.get(de);Ae||(Ae=[],a.set(de,Ae)),Ae.push(qo.a.replaceMove(O.a.lift(ie.textEdit.range),ie.textEdit.text))}let x=0,Z=0;for(const[ie,de]of a)ie.pushStackElement(),ie.pushEditOperations([],de,()=>[]),ie.pushStackElement(),Z+=1,x+=de.length;return{ariaSummary:_o.v(Ko.g.bulkEditServiceSummary,x,Z)}})}}class zs{getUriLabel(t,s){return t.scheme==="file"?t.fsPath:t.path}}class da{constructor(t,s){this._codeEditorService=t,this._container=s,this.onDidLayout=L.c.None}get dimension(){return this._dimension||(this._dimension=ve.z(window.document.body)),this._dimension}get container(){return this._container}focus(){var t;(t=this._codeEditorService.getFocusedCodeEditor())===null||t===void 0||t.focus()}}var ws=e("OBOq"),br=e("nB0o"),Ls=e("SmQN"),Ks=e("9Y+e"),xn=e("scqD"),Sn=e("fjLI"),Tn=e("Uzvx"),mn=e("Cg/j"),Ti=e("bexQ"),vn=e("t9D7"),Fn=e("R3nR"),_s=e("9XeP"),Ds=e("tTk5");class ss extends ao.a{constructor(){super();this._onCodeEditorAdd=this._register(new L.b),this.onCodeEditorAdd=this._onCodeEditorAdd.event,this._onCodeEditorRemove=this._register(new L.b),this.onCodeEditorRemove=this._onCodeEditorRemove.event,this._onDiffEditorAdd=this._register(new L.b),this._onDiffEditorRemove=this._register(new L.b),this._onDecorationTypeRegistered=this._register(new L.b),this._modelProperties=new Map,this._codeEditors=Object.create(null),this._diffEditors=Object.create(null)}addCodeEditor(t){this._codeEditors[t.getId()]=t,this._onCodeEditorAdd.fire(t)}removeCodeEditor(t){delete this._codeEditors[t.getId()]&&this._onCodeEditorRemove.fire(t)}listCodeEditors(){return Object.keys(this._codeEditors).map(t=>this._codeEditors[t])}addDiffEditor(t){this._diffEditors[t.getId()]=t,this._onDiffEditorAdd.fire(t)}removeDiffEditor(t){delete this._diffEditors[t.getId()]&&this._onDiffEditorRemove.fire(t)}listDiffEditors(){return Object.keys(this._diffEditors).map(t=>this._diffEditors[t])}getFocusedCodeEditor(){let t=null;const s=this.listCodeEditors();for(const a of s){if(a.hasTextFocus())return a;a.hasWidgetFocus()&&(t=a)}return t}setModelProperty(t,s,a){const x=t.toString();let Z;this._modelProperties.has(x)?Z=this._modelProperties.get(x):(Z=new Map,this._modelProperties.set(x,Z)),Z.set(s,a)}getModelProperty(t,s){const a=t.toString();if(this._modelProperties.has(a)){const x=this._modelProperties.get(a);return x.get(s)}return}}var vr=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},Qn=function(t,s){return function(a,x){s(a,x,t)}};class Cr{constructor(t,s,a){this._parent=t,this._editorId=s,this._styleSheet=a,this._refCount=0}ref(){this._refCount++}unref(){var t;this._refCount--,this._refCount===0&&((t=this._styleSheet.parentNode)===null||t===void 0||t.removeChild(this._styleSheet),this._parent._removeEditorStyleSheets(this._editorId))}insertRule(t,s){const a=this._styleSheet.sheet;a.insertRule(t,s)}removeRulesContainingSelector(t){ve.Q(t,this._styleSheet)}}class yr{constructor(t){this._styleSheet=t}ref(){}unref(){}insertRule(t,s){const a=this._styleSheet.sheet;a.insertRule(t,s)}removeRulesContainingSelector(t){ve.Q(t,this._styleSheet)}}let Ms=class extends ss{constructor(s,a){super();this._decorationOptionProviders=new Map,this._editorStyleSheets=new Map,this._globalStyleSheet=s||null,this._themeService=a}_getOrCreateGlobalStyleSheet(){return this._globalStyleSheet||(this._globalStyleSheet=new yr(ve.w())),this._globalStyleSheet}_getOrCreateStyleSheet(s){if(!s)return this._getOrCreateGlobalStyleSheet();const a=s.getContainerDomNode();if(!ve.O(a))return this._getOrCreateGlobalStyleSheet();const x=s.getId();if(!this._editorStyleSheets.has(x)){const Z=new Cr(this,x,ve.w(a));this._editorStyleSheets.set(x,Z)}return this._editorStyleSheets.get(x)}_removeEditorStyleSheets(s){this._editorStyleSheets.delete(s)}registerDecorationType(s,a,x,Z,ie){let de=this._decorationOptionProviders.get(a);if(!de){const Ae=this._getOrCreateStyleSheet(ie),dt={styleSheet:Ae,key:a,parentTypeKey:Z,options:x||Object.create(null)};Z?de=new Er(this._themeService,Ae,dt):de=new Sr(s,this._themeService,Ae,dt),this._decorationOptionProviders.set(a,de),this._onDecorationTypeRegistered.fire(a)}de.refCount++}removeDecorationType(s){const a=this._decorationOptionProviders.get(s);a&&(a.refCount--,a.refCount<=0&&(this._decorationOptionProviders.delete(s),a.dispose(),this.listCodeEditors().forEach(x=>x.removeDecorations(s))))}resolveDecorationOptions(s,a){const x=this._decorationOptionProviders.get(s);if(!x)throw new Error("Unknown decoration type key: "+s);return x.getOptions(this,a)}};Ms=vr([Qn(1,vn.b)],Ms);class Er{constructor(t,s,a){this._styleSheet=s,this._styleSheet.ref(),this._parentTypeKey=a.parentTypeKey,this.refCount=0,this._beforeContentRules=new rs(3,a,t),this._afterContentRules=new rs(4,a,t)}getOptions(t,s){const a=t.resolveDecorationOptions(this._parentTypeKey,!0);return this._beforeContentRules&&(a.beforeContentClassName=this._beforeContentRules.className),this._afterContentRules&&(a.afterContentClassName=this._afterContentRules.className),a}dispose(){this._beforeContentRules&&(this._beforeContentRules.dispose(),this._beforeContentRules=null),this._afterContentRules&&(this._afterContentRules.dispose(),this._afterContentRules=null),this._styleSheet.unref()}}class Sr{constructor(t,s,a,x){this._disposables=new ao.b,this.description=t,this._styleSheet=a,this._styleSheet.ref(),this.refCount=0;const Z=yt=>{const oo=new rs(yt,x,s);return this._disposables.add(oo),oo.hasContent?oo.className:void 0},ie=yt=>{const oo=new rs(yt,x,s);return this._disposables.add(oo),oo.hasContent?{className:oo.className,hasLetterSpacing:oo.hasLetterSpacing}:null};this.className=Z(0);const de=ie(1);if(de&&(this.inlineClassName=de.className,this.inlineClassNameAffectsLetterSpacing=de.hasLetterSpacing),this.beforeContentClassName=Z(3),this.afterContentClassName=Z(4),x.options.beforeInjectedText&&x.options.beforeInjectedText.contentText){const yt=ie(5);this.beforeInjectedText={content:x.options.beforeInjectedText.contentText,inlineClassName:yt==null?void 0:yt.className,inlineClassNameAffectsLetterSpacing:(yt==null?void 0:yt.hasLetterSpacing)||x.options.beforeInjectedText.affectsLetterSpacing}}if(x.options.afterInjectedText&&x.options.afterInjectedText.contentText){const yt=ie(6);this.afterInjectedText={content:x.options.afterInjectedText.contentText,inlineClassName:yt==null?void 0:yt.className,inlineClassNameAffectsLetterSpacing:(yt==null?void 0:yt.hasLetterSpacing)||x.options.afterInjectedText.affectsLetterSpacing}}this.glyphMarginClassName=Z(2);const Ae=x.options;this.isWholeLine=Boolean(Ae.isWholeLine),this.stickiness=Ae.rangeBehavior;const dt=Ae.light&&Ae.light.overviewRulerColor||Ae.overviewRulerColor,At=Ae.dark&&Ae.dark.overviewRulerColor||Ae.overviewRulerColor;(typeof dt!="undefined"||typeof At!="undefined")&&(this.overviewRuler={color:dt||At,darkColor:At||dt,position:Ae.overviewRulerLane||le.g.Center})}getOptions(t,s){return s?{description:this.description,inlineClassName:this.inlineClassName,beforeContentClassName:this.beforeContentClassName,afterContentClassName:this.afterContentClassName,className:this.className,glyphMarginClassName:this.glyphMarginClassName,isWholeLine:this.isWholeLine,overviewRuler:this.overviewRuler,stickiness:this.stickiness,before:this.beforeInjectedText,after:this.afterInjectedText}:this}dispose(){this._disposables.dispose(),this._styleSheet.unref()}}const Jn={color:"color:{0} !important;",opacity:"opacity:{0};",backgroundColor:"background-color:{0};",outline:"outline:{0};",outlineColor:"outline-color:{0};",outlineStyle:"outline-style:{0};",outlineWidth:"outline-width:{0};",border:"border:{0};",borderColor:"border-color:{0};",borderRadius:"border-radius:{0};",borderSpacing:"border-spacing:{0};",borderStyle:"border-style:{0};",borderWidth:"border-width:{0};",fontStyle:"font-style:{0};",fontWeight:"font-weight:{0};",fontSize:"font-size:{0};",fontFamily:"font-family:{0};",textDecoration:"text-decoration:{0};",cursor:"cursor:{0};",letterSpacing:"letter-spacing:{0};",gutterIconPath:"background:{0} center center no-repeat;",gutterIconSize:"background-size:{0};",contentText:"content:'{0}';",contentIconPath:"content:{0};",margin:"margin:{0};",padding:"padding:{0};",width:"width:{0};",height:"height:{0};",verticalAlign:"vertical-align:{0};"};class rs{constructor(t,s,a){this._theme=a.getColorTheme(),this._ruleType=t,this._providerArgs=s,this._usesThemeColors=!1,this._hasContent=!1,this._hasLetterSpacing=!1;let x=as.getClassName(this._providerArgs.key,t);this._providerArgs.parentTypeKey&&(x=x+" "+as.getClassName(this._providerArgs.parentTypeKey,t)),this._className=x,this._unThemedSelector=as.getSelector(this._providerArgs.key,this._providerArgs.parentTypeKey,t),this._buildCSS(),this._usesThemeColors?this._themeListener=a.onDidColorThemeChange(Z=>{this._theme=a.getColorTheme(),this._removeCSS(),this._buildCSS()}):this._themeListener=null}dispose(){this._hasContent&&(this._removeCSS(),this._hasContent=!1),this._themeListener&&(this._themeListener.dispose(),this._themeListener=null)}get hasContent(){return this._hasContent}get hasLetterSpacing(){return this._hasLetterSpacing}get className(){return this._className}_buildCSS(){const t=this._providerArgs.options;let s,a,x;switch(this._ruleType){case 0:s=this.getCSSTextForModelDecorationClassName(t),a=this.getCSSTextForModelDecorationClassName(t.light),x=this.getCSSTextForModelDecorationClassName(t.dark);break;case 1:s=this.getCSSTextForModelDecorationInlineClassName(t),a=this.getCSSTextForModelDecorationInlineClassName(t.light),x=this.getCSSTextForModelDecorationInlineClassName(t.dark);break;case 2:s=this.getCSSTextForModelDecorationGlyphMarginClassName(t),a=this.getCSSTextForModelDecorationGlyphMarginClassName(t.light),x=this.getCSSTextForModelDecorationGlyphMarginClassName(t.dark);break;case 3:s=this.getCSSTextForModelDecorationContentClassName(t.before),a=this.getCSSTextForModelDecorationContentClassName(t.light&&t.light.before),x=this.getCSSTextForModelDecorationContentClassName(t.dark&&t.dark.before);break;case 4:s=this.getCSSTextForModelDecorationContentClassName(t.after),a=this.getCSSTextForModelDecorationContentClassName(t.light&&t.light.after),x=this.getCSSTextForModelDecorationContentClassName(t.dark&&t.dark.after);break;case 5:s=this.getCSSTextForModelDecorationContentClassName(t.beforeInjectedText),a=this.getCSSTextForModelDecorationContentClassName(t.light&&t.light.beforeInjectedText),x=this.getCSSTextForModelDecorationContentClassName(t.dark&&t.dark.beforeInjectedText);break;case 6:s=this.getCSSTextForModelDecorationContentClassName(t.afterInjectedText),a=this.getCSSTextForModelDecorationContentClassName(t.light&&t.light.afterInjectedText),x=this.getCSSTextForModelDecorationContentClassName(t.dark&&t.dark.afterInjectedText);break;default:throw new Error("Unknown rule type: "+this._ruleType)}const Z=this._providerArgs.styleSheet;let ie=!1;s.length>0&&(Z.insertRule(`${this._unThemedSelector} {${s}}`,0),ie=!0),a.length>0&&(Z.insertRule(`.vs${this._unThemedSelector} {${a}}`,0),ie=!0),x.length>0&&(Z.insertRule(`.vs-dark${this._unThemedSelector}, .hc-black${this._unThemedSelector} {${x}}`,0),ie=!0),this._hasContent=ie}_removeCSS(){this._providerArgs.styleSheet.removeRulesContainingSelector(this._unThemedSelector)}getCSSTextForModelDecorationClassName(t){if(!t)return"";const s=[];return this.collectCSSText(t,["backgroundColor"],s),this.collectCSSText(t,["outline","outlineColor","outlineStyle","outlineWidth"],s),this.collectBorderSettingsCSSText(t,s),s.join("")}getCSSTextForModelDecorationInlineClassName(t){if(!t)return"";const s=[];return this.collectCSSText(t,["fontStyle","fontWeight","textDecoration","cursor","color","opacity","letterSpacing"],s),t.letterSpacing&&(this._hasLetterSpacing=!0),s.join("")}getCSSTextForModelDecorationContentClassName(t){if(!t)return"";const s=[];if(typeof t!="undefined"){if(this.collectBorderSettingsCSSText(t,s),typeof t.contentIconPath!="undefined"&&s.push(_o.v(Jn.contentIconPath,ve.s(I.a.revive(t.contentIconPath)))),typeof t.contentText=="string"){const a=t.contentText.match(/^.*$/m)[0],x=a.replace(/['\\]/g,"\\$&");s.push(_o.v(Jn.contentText,x))}this.collectCSSText(t,["verticalAlign","fontStyle","fontWeight","fontSize","fontFamily","textDecoration","color","opacity","backgroundColor","margin","padding"],s),this.collectCSSText(t,["width","height"],s)&&s.push("display:inline-block;")}return s.join("")}getCSSTextForModelDecorationGlyphMarginClassName(t){if(!t)return"";const s=[];return typeof t.gutterIconPath!="undefined"&&(s.push(_o.v(Jn.gutterIconPath,ve.s(I.a.revive(t.gutterIconPath)))),typeof t.gutterIconSize!="undefined"&&s.push(_o.v(Jn.gutterIconSize,t.gutterIconSize))),s.join("")}collectBorderSettingsCSSText(t,s){return this.collectCSSText(t,["border","borderColor","borderRadius","borderSpacing","borderStyle","borderWidth"],s)?(s.push(_o.v("box-sizing: border-box;")),!0):!1}collectCSSText(t,s,a){const x=a.length;for(let Z of s){const ie=this.resolveValue(t[Z]);typeof ie=="string"&&a.push(_o.v(Jn[Z],ie))}return a.length!==x}resolveValue(t){if(Object(lt.b)(t)){this._usesThemeColors=!0;const s=this._theme.getColor(t.id);return s?s.toString():"transparent"}return t}}class as{static getClassName(t,s){return"ced-"+t+"-"+s}static getSelector(t,s,a){let x=".monaco-editor ."+this.getClassName(t,a);return s&&(x=x+"."+this.getClassName(s,a)),a===3?x+="::before":a===4&&(x+="::after"),x}}var Gs=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},qn=function(t,s){return function(a,x){s(a,x,t)}};let Bn=class extends Ms{constructor(s,a,x){super(s,x);this.onCodeEditorAdd(()=>this._checkContextKey()),this.onCodeEditorRemove(()=>this._checkContextKey()),this._editorIsOpen=a.createKey("editorIsOpen",!1),this._activeCodeEditor=null}_checkContextKey(){let s=!1;for(const a of this.listCodeEditors())if(!a.isSimpleWidget){s=!0;break}this._editorIsOpen.set(s)}setActiveCodeEditor(s){this._activeCodeEditor=s}getActiveCodeEditor(){return this._activeCodeEditor}openCodeEditor(s,a,x){return a?Promise.resolve(this.doOpenEditor(a,s)):Promise.resolve(null)}doOpenEditor(s,a){const x=this.findModel(s,a.resource);if(!x){if(a.resource){const ie=a.resource.scheme;if(ie===ge.c.http||ie===ge.c.https)return Object(ve.Z)(a.resource.toString()),s}return null}const Z=a.options?a.options.selection:null;if(Z)if(typeof Z.endLineNumber=="number"&&typeof Z.endColumn=="number")s.setSelection(Z),s.revealRangeInCenter(Z,1);else{const ie={lineNumber:Z.startLineNumber,column:Z.startColumn};s.setPosition(ie),s.revealPositionInCenter(ie,1)}return s}findModel(s,a){const x=s.getModel();return x&&x.uri.toString()!==a.toString()?null:x}};Bn=Gs([qn(1,xt.b),qn(2,vn.b)],Bn);var Wn=e("ubTv"),es=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},Vi=function(t,s){return function(a,x){s(a,x,t)}};let wr=0,ls=!1;function Lr(t){if(!t){if(ls)return;ls=!0}ws.b(t||document.body)}let ds=class extends br.a{constructor(s,a,x,Z,ie,de,Ae,dt,At,yt){const oo=Object.assign({},a);oo.ariaLabel=oo.ariaLabel||Ko.h.editorViewAccessibleLabel,oo.ariaLabel=oo.ariaLabel+";"+Ko.h.accessibilityHelpMessage,super(s,oo,{},x,Z,ie,de,dt,At,yt),Ae instanceof In?this._standaloneKeybindingService=Ae:this._standaloneKeybindingService=null,Lr(oo.ariaContainerElement)}addCommand(s,a,x){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;let Z="DYNAMIC_"+ ++wr,ie=xt.a.deserialize(x);return this._standaloneKeybindingService.addDynamicKeybinding(Z,s,a,ie),Z}createContextKey(s,a){return this._contextKeyService.createKey(s,a)}addAction(s){if(typeof s.id!="string"||typeof s.label!="string"||typeof s.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),ao.a.None;const a=s.id,x=s.label,Z=xt.a.and(xt.a.equals("editorId",this.getId()),xt.a.deserialize(s.precondition)),ie=s.keybindings,de=xt.a.and(Z,xt.a.deserialize(s.keybindingContext)),Ae=s.contextMenuGroupId||null,dt=s.contextMenuOrder||0,At=(Xo,...Jo)=>Promise.resolve(s.run(this,...Jo)),yt=new ao.b,oo=this.getId()+":"+a;if(yt.add(ze.a.registerCommand(oo,At)),Ae){let Xo={command:{id:oo,title:x},when:Z,group:Ae,order:dt};yt.add(Sn.d.appendMenuItem(Sn.b.EditorContext,Xo))}if(Array.isArray(ie))for(const Xo of ie)yt.add(this._standaloneKeybindingService.addDynamicKeybinding(oo,Xo,At,de));let jo=new Ks.a(oo,x,x,Z,At,this._contextKeyService);return this._actions[a]=jo,yt.add(Object(ao.i)(()=>{delete this._actions[a]})),yt}_triggerCommand(s,a){if(this._codeEditorService instanceof Bn)try{this._codeEditorService.setActiveCodeEditor(this),super._triggerCommand(s,a)}finally{this._codeEditorService.setActiveCodeEditor(null)}else super._triggerCommand(s,a)}};ds=es([Vi(2,mn.a),Vi(3,Ne.a),Vi(4,ze.b),Vi(5,xt.b),Vi(6,Ti.a),Vi(7,vn.b),Vi(8,Bo.a),Vi(9,Fn.b)],ds);let xs=class extends ds{constructor(s,a,x,Z,ie,de,Ae,dt,At,yt,oo,jo,Xo,Jo,yi){const gi=Object.assign({},a);Zn(jo,gi,!1);const Di=yt.registerEditorContainer(s);typeof gi.theme=="string"&&yt.setTheme(gi.theme),typeof gi.autoDetectHighContrast!="undefined"&&yt.setAutoDetectHighContrast(Boolean(gi.autoDetectHighContrast));let pi=gi.model;delete gi.model,super(s,gi,Z,ie,de,Ae,dt,yt,oo,Xo),this._contextViewService=At,this._configurationService=jo,this._standaloneThemeService=yt,this._register(x),this._register(Di);let vi;if(typeof pi=="undefined"?(vi=Xs(Jo,yi,gi.value||"",gi.language||Wn.a.text,void 0),this._ownsModel=!0):(vi=pi,this._ownsModel=!1),this._attachModel(vi),vi){let yn={oldModelUrl:null,newModelUrl:vi.uri};this._onDidChangeModel.fire(yn)}}dispose(){super.dispose()}updateOptions(s){Zn(this._configurationService,s,!1),typeof s.theme=="string"&&this._standaloneThemeService.setTheme(s.theme),typeof s.autoDetectHighContrast!="undefined"&&this._standaloneThemeService.setAutoDetectHighContrast(Boolean(s.autoDetectHighContrast)),super.updateOptions(s)}_attachModel(s){super._attachModel(s),this._modelData&&this._contextViewService.setContainer(this._modelData.view.domNode.domNode)}_postDetachModelCleanup(s){super._postDetachModelCleanup(s),s&&this._ownsModel&&(s.dispose(),this._ownsModel=!1)}};xs=es([Vi(3,mn.a),Vi(4,Ne.a),Vi(5,ze.b),Vi(6,xt.b),Vi(7,Ti.a),Vi(8,Tn.b),Vi(9,xn.a),Vi(10,Bo.a),Vi(11,mi.a),Vi(12,Fn.b),Vi(13,bi.a),Vi(14,kt.a)],xs);let Ts=class extends Ls.a{constructor(s,a,x,Z,ie,de,Ae,dt,At,yt,oo,jo,Xo,Jo,yi){const gi=Object.assign({},a);Zn(jo,gi,!0);const Di=yt.registerEditorContainer(s);typeof gi.theme=="string"&&yt.setTheme(gi.theme),typeof gi.autoDetectHighContrast!="undefined"&&yt.setAutoDetectHighContrast(Boolean(gi.autoDetectHighContrast)),super(s,gi,{},yi,dt,ie,Z,At,yt,oo,Xo,Jo),this._contextViewService=Ae,this._configurationService=jo,this._standaloneThemeService=yt,this._register(x),this._register(Di),this._contextViewService.setContainer(this._containerDomElement)}dispose(){super.dispose()}updateOptions(s){Zn(this._configurationService,s,!0),typeof s.theme=="string"&&this._standaloneThemeService.setTheme(s.theme),typeof s.autoDetectHighContrast!="undefined"&&this._standaloneThemeService.setAutoDetectHighContrast(Boolean(s.autoDetectHighContrast)),super.updateOptions(s)}_createInnerEditor(s,a,x){return s.createInstance(ds,a,x)}getOriginalEditor(){return super.getOriginalEditor()}getModifiedEditor(){return super.getModifiedEditor()}addCommand(s,a,x){return this.getModifiedEditor().addCommand(s,a,x)}createContextKey(s,a){return this.getModifiedEditor().createContextKey(s,a)}addAction(s){return this.getModifiedEditor().addAction(s)}};Ts=es([Vi(3,mn.a),Vi(4,xt.b),Vi(5,Ti.a),Vi(6,Tn.b),Vi(7,Dt.a),Vi(8,Ne.a),Vi(9,xn.a),Vi(10,Bo.a),Vi(11,mi.a),Vi(12,Tn.a),Vi(13,Ds.a),Vi(14,_s.a)],Ts);function Xs(t,s,a,x,Z){if(a=a||"",!x){const ie=a.indexOf(` `);let de=a;return ie!==-1&&(de=a.substring(0,ie)),$s(t,a,s.createByFilepathOrFirstLine(Z||null,de),Z)}return $s(t,a,s.create(x),Z)}function $s(t,s,a,x){return t.createModel(s,a,x)}var Gn=e("MqQJ"),cs=e("ic2d");const An=Object.prototype.hasOwnProperty;class _r{constructor(){this._languageIdToLanguage=[],this._languageToLanguageId=new Map,this._register(it.a,0),this._register(Gn.b,1),this._nextLanguageId=2}_register(t,s){this._languageIdToLanguage[s]=t,this._languageToLanguageId.set(t,s)}register(t){if(this._languageToLanguageId.has(t))return;const s=this._nextLanguageId++;this._register(t,s)}encodeLanguageId(t){return this._languageToLanguageId.get(t)||0}decodeLanguageId(t){return this._languageIdToLanguage[t]||it.a}}class us extends ao.a{constructor(t=!0,s=!1){super();this._onDidChange=this._register(new L.b),this.onDidChange=this._onDidChange.event,us.instanceCount++,this._warnOnOverwrite=s,this.languageIdCodec=new _r,this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},t&&(this._initializeFromRegistry(),this._register(Gn.a.onDidChangeLanguages(a=>{this._initializeFromRegistry()})))}dispose(){us.instanceCount--,super.dispose()}_initializeFromRegistry(){this._languages={},this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Wn.b();const t=Gn.a.getLanguages();this._registerLanguages(t)}_registerLanguages(t){for(const s of t)this._registerLanguage(s);this._mimeTypesMap={},this._nameMap={},this._lowercaseNameMap={},Object.keys(this._languages).forEach(s=>{let a=this._languages[s];a.name&&(this._nameMap[a.name]=a.identifier),a.aliases.forEach(x=>{this._lowercaseNameMap[x.toLowerCase()]=a.identifier}),a.mimetypes.forEach(x=>{this._mimeTypesMap[x]=a.identifier})}),cs.a.as(Ji.a.Configuration).registerOverrideIdentifiers(Gn.a.getLanguages().map(s=>s.id)),this._onDidChange.fire()}_registerLanguage(t){const s=t.id;let a;An.call(this._languages,s)?a=this._languages[s]:(this.languageIdCodec.register(s),a={identifier:s,name:null,mimetypes:[],aliases:[],extensions:[],filenames:[],configurationFiles:[]},this._languages[s]=a),this._mergeLanguage(a,t)}_mergeLanguage(t,s){const a=s.id;let x=null;if(Array.isArray(s.mimetypes)&&s.mimetypes.length>0&&(t.mimetypes.push(...s.mimetypes),x=s.mimetypes[0]),x||(x=`text/x-${a}`,t.mimetypes.push(x)),Array.isArray(s.extensions)){s.configuration?t.extensions=s.extensions.concat(t.extensions):t.extensions=t.extensions.concat(s.extensions);for(let de of s.extensions)Wn.d({id:a,mime:x,extension:de},this._warnOnOverwrite)}if(Array.isArray(s.filenames))for(let de of s.filenames)Wn.d({id:a,mime:x,filename:de},this._warnOnOverwrite),t.filenames.push(de);if(Array.isArray(s.filenamePatterns))for(let de of s.filenamePatterns)Wn.d({id:a,mime:x,filepattern:de},this._warnOnOverwrite);if(typeof s.firstLine=="string"&&s.firstLine.length>0){let de=s.firstLine;de.charAt(0)!=="^"&&(de="^"+de);try{let Ae=new RegExp(de);_o.N(Ae)||Wn.d({id:a,mime:x,firstline:Ae},this._warnOnOverwrite)}catch(Ae){Object(So.f)(Ae)}}t.aliases.push(a);let Z=null;if(typeof s.aliases!="undefined"&&Array.isArray(s.aliases)&&(s.aliases.length===0?Z=[null]:Z=s.aliases),Z!==null)for(const de of Z){if(!de||de.length===0)continue;t.aliases.push(de)}let ie=Z!==null&&Z.length>0;if(!(ie&&Z[0]===null)){let de=(ie?Z[0]:null)||a;(ie||!t.name)&&(t.name=de)}s.configuration&&t.configurationFiles.push(s.configuration)}isRegisteredMode(t){return An.call(this._mimeTypesMap,t)?!0:An.call(this._languages,t)}getModeIdForLanguageNameLowercase(t){return An.call(this._lowercaseNameMap,t)?this._lowercaseNameMap[t]:null}extractModeIds(t){return t?t.split(",").map(s=>s.trim()).map(s=>An.call(this._mimeTypesMap,s)?this._mimeTypesMap[s]:s).filter(s=>An.call(this._languages,s)):[]}validateLanguageId(t){return!t||t===it.a?it.a:An.call(this._languages,t)?t:null}getModeIdsFromFilepathOrFirstLine(t,s){if(!t&&!s)return[];let a=Wn.c(t,s);return this.extractModeIds(a.join(","))}}us.instanceCount=0;class Ys{constructor(t,s){this._selector=s,this.languageId=this._selector();let a;this._onDidChange=new L.b({onFirstListenerAdd:()=>{a=t(()=>this._evaluate())},onLastListenerRemove:()=>{a.dispose()}}),this.onDidChange=this._onDidChange.event}_evaluate(){const t=this._selector();if(t===this.languageId)return;this.languageId=t,this._onDidChange.fire(this.languageId)}}class hs extends ao.a{constructor(t=!1){super();this._onDidEncounterLanguage=this._register(new L.b),this.onDidEncounterLanguage=this._onDidEncounterLanguage.event,this._onLanguagesMaybeChanged=this._register(new L.b({leakWarningThreshold:200})),this.onLanguagesMaybeChanged=this._onLanguagesMaybeChanged.event,hs.instanceCount++,this._encounteredLanguages=new Set,this._registry=this._register(new us(!0,t)),this.languageIdCodec=this._registry.languageIdCodec,this._register(this._registry.onDidChange(()=>this._onLanguagesMaybeChanged.fire()))}dispose(){hs.instanceCount--,super.dispose()}isRegisteredMode(t){return this._registry.isRegisteredMode(t)}getModeIdForLanguageName(t){return this._registry.getModeIdForLanguageNameLowercase(t)}getModeIdByFilepathOrFirstLine(t,s){const a=this._registry.getModeIdsFromFilepathOrFirstLine(t,s);return Object(Ii.j)(a,null)}getModeId(t){const s=this._registry.extractModeIds(t);return Object(Ii.j)(s,null)}validateLanguageId(t){return this._registry.validateLanguageId(t)}create(t){return new Ys(this.onLanguagesMaybeChanged,()=>{const s=this.getModeId(t);return this._createModeAndGetLanguageIdentifier(s)})}createByFilepathOrFirstLine(t,s){return new Ys(this.onLanguagesMaybeChanged,()=>{const a=this.getModeIdByFilepathOrFirstLine(t,s);return this._createModeAndGetLanguageIdentifier(a)})}_createModeAndGetLanguageIdentifier(t){const s=this.validateLanguageId(t||"plaintext")||it.a;return this._getOrCreateMode(s),s}triggerMode(t){const s=this.getModeId(t);this._getOrCreateMode(s||"plaintext")}_getOrCreateMode(t){if(!this._encounteredLanguages.has(t)){this._encounteredLanguages.add(t);const s=this.validateLanguageId(t)||it.a;this._onDidEncounterLanguage.fire(s)}}}hs.instanceCount=0;var Dr=e("0af2"),Rn=e("zrhQ");class Os{constructor(t,s,a,x,Z){this._parsedThemeRuleBrand=void 0,this.token=t,this.index=s,this.fontStyle=a,this.foreground=x,this.background=Z}}function Is(t){if(!t||!Array.isArray(t))return[];let s=[],a=0;for(let x=0,Z=t.length;x{let jo=Js(yt.token,oo.token);return jo!==0?jo:yt.index-oo.index});let a=0,x="000000",Z="ffffff";for(;t.length>=1&&t[0].token==="";){let yt=t.shift();yt.fontStyle!==-1&&(a=yt.fontStyle),yt.foreground!==null&&(x=yt.foreground),yt.background!==null&&(Z=yt.background)}let ie=new xr;for(let yt of s)ie.getId(yt);let de=ie.getId(x),Ae=ie.getId(Z),dt=new ms(a,de,Ae),At=new gs(dt);for(let yt=0,oo=t.length;yt>>0,this._cache.set(s,a)}return(a|t<<0)>>>0}}const Qs=/\b(comment|string|regex|regexp)\b/;function As(t){let s=t.match(Qs);if(!s)return 0;switch(s[1]){case"comment":return 1;case"string":return 2;case"regex":return 4;case"regexp":return 4}throw new Error("Unexpected match for standard token type!")}function Js(t,s){return ts?1:0}class ms{constructor(t,s,a){this._themeTrieElementRuleBrand=void 0,this._fontStyle=t,this._foreground=s,this._background=a,this.metadata=(this._fontStyle<<11|this._foreground<<14|this._background<<23)>>>0}clone(){return new ms(this._fontStyle,this._foreground,this._background)}acceptOverwrite(t,s,a){t!==-1&&(this._fontStyle=t),s!==0&&(this._foreground=s),a!==0&&(this._background=a),this.metadata=(this._fontStyle<<11|this._foreground<<14|this._background<<23)>>>0}}class gs{constructor(t){this._themeTrieElementBrand=void 0,this._mainRule=t,this._children=new Map}match(t){if(t==="")return this._mainRule;let s=t.indexOf("."),a,x;s===-1?(a=t,x=""):(a=t.substring(0,s),x=t.substring(s+1));let Z=this._children.get(a);return typeof Z!="undefined"?Z.match(x):this._mainRule}insert(t,s,a,x){if(t===""){this._mainRule.acceptOverwrite(s,a,x);return}let Z=t.indexOf("."),ie,de;Z===-1?(ie=t,de=""):(ie=t.substring(0,Z),de=t.substring(Z+1));let Ae=this._children.get(ie);typeof Ae=="undefined"&&(Ae=new gs(this._mainRule.clone()),this._children.set(ie,Ae)),Ae.insert(de,s,a,x)}}function qs(t){let s=[];for(let a=1,x=t.length;at.fire()),{onDidChange:t.event,getCSS(){const a={},x=ie=>{let de=ie.defaults;for(;vn.d.isThemeIcon(de);){const dt=s.getIcon(de.id);if(!dt)return;de=dt.defaults}const Ae=de.fontId;if(Ae){const dt=s.getIconFont(Ae);if(dt)return a[Ae]=dt,`.codicon-${ie.id}:before { content: '${de.fontCharacter}'; font-family: ${Object(ve.r)(Ae)}; }`}return`.codicon-${ie.id}:before { content: '${de.fontCharacter}'; }`},Z=[];for(let ie of s.getIcons()){const de=x(ie);de&&Z.push(de)}for(let ie in a){const de=a[ie],Ae=de.definition.src.map(dt=>`${Object(ve.s)(dt.location)} format('${dt.format}')`).join(", ");Z.push(`@font-face { src: ${Ae}; font-family: ${Object(ve.r)(ie)}; font-display: block; }`)}return Z.join(` `)}}}const Hn="vs",fs="vs-dark",Nn="hc-black",er=cs.a.as(ci.a.ColorContribution),Ir=cs.a.as(vn.a.ThemingContribution);class tr{constructor(t,s){this.semanticHighlighting=!1,this.themeData=s;let a=s.base;t.length>0?(ps(t)?this.id=t:this.id=a+" "+t,this.themeName=t):(this.id=a,this.themeName=a),this.colors=null,this.defaultColors=Object.create(null),this._tokenTheme=null}get base(){return this.themeData.base}notifyBaseUpdated(){this.themeData.inherit&&(this.colors=null,this._tokenTheme=null)}getColors(){if(!this.colors){const t=new Map;for(let s in this.themeData.colors)t.set(s,Rn.a.fromHex(this.themeData.colors[s]));if(this.themeData.inherit){let s=ks(this.themeData.base);for(let a in s.colors)t.has(a)||t.set(a,Rn.a.fromHex(s.colors[a]))}this.colors=t}return this.colors}getColor(t,s){const a=this.getColors().get(t);return a||(s!==!1?this.getDefault(t):void 0)}getDefault(t){let s=this.defaultColors[t];return s||(s=er.resolveDefaultColor(t,this),this.defaultColors[t]=s,s)}defines(t){return Object.prototype.hasOwnProperty.call(this.getColors(),t)}get type(){switch(this.base){case Hn:return js.a.LIGHT;case Nn:return js.a.HIGH_CONTRAST;default:return js.a.DARK}}get tokenTheme(){if(!this._tokenTheme){let t=[],s=[];if(this.themeData.inherit){let Z=ks(this.themeData.base);t=Z.rules,Z.encodedTokensColors&&(s=Z.encodedTokensColors)}const a=this.themeData.colors["editor.foreground"],x=this.themeData.colors["editor.background"];if(a||x){const Z={token:""};a&&(Z.foreground=a),x&&(Z.background=x),t.push(Z)}t=t.concat(this.themeData.rules),this.themeData.encodedTokensColors&&(s=this.themeData.encodedTokensColors),this._tokenTheme=Xn.createFromRawTokenTheme(t,s)}return this._tokenTheme}getTokenStyleMetadata(t,s,a){const x=this.tokenTheme._match([t].concat(s).join(".")),Z=x.metadata,ie=Pe.E.getForeground(Z),de=Pe.E.getFontStyle(Z);return{foreground:ie,italic:Boolean(de&1),bold:Boolean(de&2),underline:Boolean(de&4)}}}function ps(t){return t===Hn||t===fs||t===Nn}function ks(t){switch(t){case Hn:return Tr;case fs:return Rs;case Nn:return Ns}}function Ps(t){let s=ks(t);return new tr(t,s)}class Fs extends ao.a{constructor(){super();this._onColorThemeChange=this._register(new L.b),this.onDidColorThemeChange=this._onColorThemeChange.event,this._environment=Object.create(null),this._autoDetectHighContrast=!0,this._knownThemes=new Map,this._knownThemes.set(Hn,Ps(Hn)),this._knownThemes.set(fs,Ps(fs)),this._knownThemes.set(Nn,Ps(Nn));const t=Un();this._codiconCSS=t.getCSS(),this._themeCSS="",this._allCSS=`${this._codiconCSS} ${this._themeCSS}`,this._globalStyleElement=null,this._styleElements=[],this._colorMapOverride=null,this.setTheme(Hn),t.onDidChange(()=>{this._codiconCSS=t.getCSS(),this._updateCSS()}),ve.m("(forced-colors: active)",()=>{this._updateActualTheme()})}registerEditorContainer(t){return ve.O(t)?this._registerShadowDomContainer(t):this._registerRegularEditorContainer()}_registerRegularEditorContainer(){return this._globalStyleElement||(this._globalStyleElement=ve.w(),this._globalStyleElement.className="monaco-colors",this._globalStyleElement.textContent=this._allCSS,this._styleElements.push(this._globalStyleElement)),ao.a.None}_registerShadowDomContainer(t){const s=ve.w(t);return s.className="monaco-colors",s.textContent=this._allCSS,this._styleElements.push(s),{dispose:()=>{for(let a=0;a{a.base===t&&a.notifyBaseUpdated()}),this._theme.themeName===t&&this.setTheme(t)}getColorTheme(){return this._theme}setColorMapOverride(t){this._colorMapOverride=t,this._updateThemeOrColorMap()}setTheme(t){let s;this._knownThemes.has(t)?s=this._knownThemes.get(t):s=this._knownThemes.get(Hn),this._desiredTheme=s,this._updateActualTheme()}_updateActualTheme(){const t=this._autoDetectHighContrast&&window.matchMedia("(forced-colors: active)").matches?this._knownThemes.get(Nn):this._desiredTheme;if(this._theme===t)return;this._theme=t,this._updateThemeOrColorMap()}setAutoDetectHighContrast(t){this._autoDetectHighContrast=t,this._updateActualTheme()}_updateThemeOrColorMap(){let t=[],s={},a={addRule:Z=>{s[Z]||(t.push(Z),s[Z]=!0)}};Ir.getThemingParticipants().forEach(Z=>Z(this._theme,a,this._environment));const x=this._colorMapOverride||this._theme.tokenTheme.getColorMap();a.addRule(qs(x)),this._themeCSS=t.join(` `),this._updateCSS(),Pe.F.setColorMap(x),this._onColorThemeChange.fire(this._theme)}_updateCSS(){this._allCSS=`${this._codiconCSS} ${this._themeCSS}`,this._styleElements.forEach(t=>t.textContent=this._allCSS)}getFileIconTheme(){return{hasFileIcons:!1,hasFolderIcons:!1,hidesExplorerArrows:!1}}}var $n=e("JYp7"),Ar=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},Rr=function(t,s){return function(a,x){s(a,x,t)}};const o="data-keybinding-context";class i{constructor(t,s){this._id=t,this._parent=s,this._value=Object.create(null),this._value._contextId=t}setValue(t,s){return this._value[t]!==s?(this._value[t]=s,!0):!1}removeValue(t){return t in this._value?(delete this._value[t],!0):!1}getValue(t){const s=this._value[t];return typeof s=="undefined"&&this._parent?this._parent.getValue(t):s}}class r extends i{constructor(){super(-1,null)}setValue(t,s){return!1}removeValue(t){return!1}getValue(t){return}}r.INSTANCE=new r;class M extends i{constructor(t,s,a){super(t,null);this._configurationService=s,this._values=we.c.forConfigKeys(),this._listener=this._configurationService.onDidChangeConfiguration(x=>{if(x.source===6){const Z=Array.from($n.a.map(this._values,([ie])=>ie));this._values.clear(),a.fire(new pe(Z))}else{const Z=[];for(const ie of x.affectedKeys){const de=`config.${ie}`,Ae=this._values.findSuperstr(de);Ae!==void 0&&(Z.push(...$n.a.map(Ae,([dt])=>dt)),this._values.deleteSuperstr(de)),this._values.has(de)&&(Z.push(de),this._values.delete(de))}a.fire(new pe(Z))}})}dispose(){this._listener.dispose()}getValue(t){if(t.indexOf(M._keyPrefix)!==0)return super.getValue(t);if(this._values.has(t))return this._values.get(t);const s=t.substr(M._keyPrefix.length),a=this._configurationService.getValue(s);let x;switch(typeof a){case"number":case"boolean":case"string":x=a;break;default:Array.isArray(a)?x=JSON.stringify(a):x=a}return this._values.set(t,x),x}setValue(t,s){return super.setValue(t,s)}removeValue(t){return super.removeValue(t)}}M._keyPrefix="config.";class N{constructor(t,s,a){this._service=t,this._key=s,this._defaultValue=a,this.reset()}set(t){this._service.setContext(this._key,t)}reset(){typeof this._defaultValue=="undefined"?this._service.removeContext(this._key):this._service.setContext(this._key,this._defaultValue)}get(){return this._service.getContextKeyValue(this._key)}}class ${constructor(t){this.key=t}affectsSome(t){return t.has(this.key)}}class pe{constructor(t){this.keys=t}affectsSome(t){for(const s of this.keys)if(t.has(s))return!0;return!1}}class _e{constructor(t){this.events=t}affectsSome(t){for(const s of this.events)if(s.affectsSome(t))return!0;return!1}}class Ke{constructor(t){this._onDidChangeContext=new L.e({merge:s=>new _e(s)}),this.onDidChangeContext=this._onDidChangeContext.event,this._isDisposed=!1,this._myContextId=t}createKey(t,s){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new N(this,t,s)}bufferChangeEvents(t){this._onDidChangeContext.pause();try{t()}finally{this._onDidChangeContext.resume()}}createScoped(t){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");return new at(this,t)}contextMatchesRules(t){if(this._isDisposed)throw new Error("AbstractContextKeyService has been disposed");const s=this.getContextValuesContainer(this._myContextId),a=Nt.contextMatchesRules(s,t);return a}getContextKeyValue(t){return this._isDisposed?void 0:this.getContextValuesContainer(this._myContextId).getValue(t)}setContext(t,s){if(this._isDisposed)return;const a=this.getContextValuesContainer(this._myContextId);if(!a)return;a.setValue(t,s)&&this._onDidChangeContext.fire(new $(t))}removeContext(t){if(this._isDisposed)return;this.getContextValuesContainer(this._myContextId).removeValue(t)&&this._onDidChangeContext.fire(new $(t))}getContext(t){return this._isDisposed?r.INSTANCE:this.getContextValuesContainer(jt(t))}}let Je=class extends Ke{constructor(s){super(0);this._contexts=new Map,this._toDispose=new ao.b,this._lastContextId=0;const a=new M(this._myContextId,s,this._onDidChangeContext);this._contexts.set(this._myContextId,a),this._toDispose.add(a)}dispose(){this._onDidChangeContext.dispose(),this._isDisposed=!0,this._toDispose.dispose()}getContextValuesContainer(s){return this._isDisposed?r.INSTANCE:this._contexts.get(s)||r.INSTANCE}createChildContext(s=this._myContextId){if(this._isDisposed)throw new Error("ContextKeyService has been disposed");let a=++this._lastContextId;return this._contexts.set(a,new i(a,this.getContextValuesContainer(s))),a}disposeContext(s){this._isDisposed||this._contexts.delete(s)}};Je=Ar([Rr(0,mi.a)],Je);class at extends Ke{constructor(t,s){super(t.createChildContext());if(this._parentChangeListener=new ao.d,this._parent=t,this._updateParentChangeListener(),this._domNode=s,this._domNode.hasAttribute(o)){let a="";this._domNode.classList&&(a=Array.from(this._domNode.classList.values()).join(", ")),console.error(`Element already has context attribute${a?": "+a:""}`)}this._domNode.setAttribute(o,String(this._myContextId))}_updateParentChangeListener(){this._parentChangeListener.value=this._parent.onDidChangeContext(this._onDidChangeContext.fire,this._onDidChangeContext)}dispose(){if(this._isDisposed)return;this._onDidChangeContext.dispose(),this._parent.disposeContext(this._myContextId),this._parentChangeListener.dispose(),this._domNode.removeAttribute(o),this._isDisposed=!0}getContextValuesContainer(t){return this._isDisposed?r.INSTANCE:this._parent.getContextValuesContainer(t)}createChildContext(t=this._myContextId){if(this._isDisposed)throw new Error("ScopedContextKeyService has been disposed");return this._parent.createChildContext(t)}disposeContext(t){if(this._isDisposed)return;this._parent.disposeContext(t)}}function jt(t){for(;t;){if(t.hasAttribute(o)){const s=t.getAttribute(o);return s?parseInt(s,10):NaN}t=t.parentElement}return 0}ze.a.registerCommand(xt.d,function(t,s,a){t.get(xt.b).createKey(String(s),a)}),ze.a.registerCommand({id:"getContextKeyInfo",handler(){return[...xt.c.all()].sort((t,s)=>t.key.localeCompare(s.key))},description:{description:Object(be.a)("getContextKeyInfo","A command that returns information about context keys"),args:[]}}),ze.a.registerCommand("_generateContextKeyInfo",function(){const t=[],s=new Set;for(let a of xt.c.all())s.has(a.key)||(s.add(a.key),t.push(a));t.sort((a,x)=>a.key.localeCompare(x.key)),console.log(JSON.stringify(t,void 0,2))});var _t=e("XXUj"),Ht=e("XSiN"),Jt=e("D3Dy"),so=e("pg8w"),Co=e("WqXY"),wo=e("7/Ik"),Do=e("udvx"),ko=e("CjF5"),Po=e("nuFA"),Qo=e("TT2d"),Go;(function(t){t[t.AVOID=0]="AVOID",t[t.ALIGN=1]="ALIGN"})(Go||(Go={}));function zo(t,s,a){const x=a.mode===Go.ALIGN?a.offset:a.offset+a.size,Z=a.mode===Go.ALIGN?a.offset+a.size:a.offset;return a.position===0?s<=t-x?x:s<=Z?Z-s:Math.max(t-s,0):s<=Z?Z-s:s<=t-x?x:0}class Wo extends ao.a{constructor(t,s){super();this.container=null,this.delegate=null,this.toDisposeOnClean=ao.a.None,this.toDisposeOnSetContainer=ao.a.None,this.shadowRoot=null,this.shadowRootHostElement=null,this.view=ve.a(".context-view"),this.useFixedPosition=!1,this.useShadowDOM=!1,ve.K(this.view),this.setContainer(t,s),this._register(Object(ao.i)(()=>this.setContainer(null,1)))}setContainer(t,s){var a;if(this.container&&(this.toDisposeOnSetContainer.dispose(),this.shadowRoot?(this.shadowRoot.removeChild(this.view),this.shadowRoot=null,(a=this.shadowRootHostElement)===null||a===void 0||a.remove(),this.shadowRootHostElement=null):this.container.removeChild(this.view),this.container=null),t){if(this.container=t,this.useFixedPosition=s!==1,this.useShadowDOM=s===3,this.useShadowDOM){this.shadowRootHostElement=ve.a(".shadow-root-host"),this.container.appendChild(this.shadowRootHostElement),this.shadowRoot=this.shadowRootHostElement.attachShadow({mode:"open"});const Z=document.createElement("style");Z.textContent=hi,this.shadowRoot.appendChild(Z),this.shadowRoot.appendChild(this.view),this.shadowRoot.appendChild(ve.a("slot"))}else this.container.appendChild(this.view);const x=new ao.b;Wo.BUBBLE_UP_EVENTS.forEach(Z=>{x.add(ve.o(this.container,Z,ie=>{this.onDOMEvent(ie,!1)}))}),Wo.BUBBLE_DOWN_EVENTS.forEach(Z=>{x.add(ve.o(this.container,Z,ie=>{this.onDOMEvent(ie,!0)},!0))}),this.toDisposeOnSetContainer=x}}show(t){this.isVisible()&&this.hide(),ve.t(this.view),this.view.className="context-view",this.view.style.top="0px",this.view.style.left="0px",this.view.style.zIndex="2500",this.view.style.position=this.useFixedPosition?"fixed":"absolute",ve.W(this.view),this.toDisposeOnClean=t.render(this.view)||ao.a.None,this.delegate=t,this.doLayout(),this.delegate.focus&&this.delegate.focus()}getViewElement(){return this.view}layout(){if(!this.isVisible())return;if(this.delegate.canRelayout===!1&&!(Lo.c&&ko.a.pointerEvents)){this.hide();return}this.delegate.layout&&this.delegate.layout(),this.doLayout()}doLayout(){if(!this.isVisible())return;let t=this.delegate.getAnchor(),s;if(ve.M(t)){let yt=ve.D(t);s={top:yt.top,left:yt.left,width:yt.width,height:yt.height}}else s={top:t.y,left:t.x,width:t.width||1,height:t.height||2};const a=ve.I(this.view),x=ve.H(this.view),Z=this.delegate.anchorPosition||0,ie=this.delegate.anchorAlignment||0,de=this.delegate.anchorAxisAlignment||0;let Ae,dt;if(de===0){const yt={offset:s.top-window.pageYOffset,size:s.height,position:Z===0?0:1},oo={offset:s.left,size:s.width,position:ie===0?0:1,mode:Go.ALIGN};Ae=zo(window.innerHeight,x,yt)+window.pageYOffset,Po.a.intersects({start:Ae,end:Ae+x},{start:yt.offset,end:yt.offset+yt.size})&&(oo.mode=Go.AVOID),dt=zo(window.innerWidth,a,oo)}else{const yt={offset:s.left,size:s.width,position:ie===0?0:1},oo={offset:s.top,size:s.height,position:Z===0?0:1,mode:Go.ALIGN};dt=zo(window.innerWidth,a,yt),Po.a.intersects({start:dt,end:dt+a},{start:yt.offset,end:yt.offset+yt.size})&&(oo.mode=Go.AVOID),Ae=zo(window.innerHeight,x,oo)+window.pageYOffset}this.view.classList.remove("top","bottom","left","right"),this.view.classList.add(Z===0?"bottom":"top"),this.view.classList.add(ie===0?"left":"right"),this.view.classList.toggle("fixed",this.useFixedPosition);const At=ve.D(this.container);this.view.style.top=`${Ae-(this.useFixedPosition?ve.D(this.view).top:At.top)}px`,this.view.style.left=`${dt-(this.useFixedPosition?ve.D(this.view).left:At.left)}px`,this.view.style.width="initial"}hide(t){const s=this.delegate;this.delegate=null,(s==null?void 0:s.onHide)&&s.onHide(t),this.toDisposeOnClean.dispose(),ve.K(this.view)}isVisible(){return!!this.delegate}onDOMEvent(t,s){this.delegate&&(this.delegate.onDOMEvent?this.delegate.onDOMEvent(t,document.activeElement):s&&!ve.L(t.target,this.container)&&this.hide())}dispose(){this.hide(),super.dispose()}}Wo.BUBBLE_UP_EVENTS=["click","keydown","focus","blur"],Wo.BUBBLE_DOWN_EVENTS=["click"];let hi=` :host { all: initial; /* 1st rule so subsequent properties are reset. */ } @font-face { font-family: "codicon"; font-display: block; src: url("./codicon.ttf?5d4d76ab2ce5108968ad644d591a16a6") format("truetype"); } .codicon[class*='codicon-'] { font: normal normal normal 16px/1 codicon; display: inline-block; text-decoration: none; text-rendering: auto; text-align: center; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; user-select: none; -webkit-user-select: none; -ms-user-select: none; } :host { font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "HelveticaNeue-Light", system-ui, "Ubuntu", "Droid Sans", sans-serif; } :host-context(.mac) { font-family: -apple-system, BlinkMacSystemFont, sans-serif; } :host-context(.mac:lang(zh-Hans)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", sans-serif; } :host-context(.mac:lang(zh-Hant)) { font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", sans-serif; } :host-context(.mac:lang(ja)) { font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic Pro", sans-serif; } :host-context(.mac:lang(ko)) { font-family: -apple-system, BlinkMacSystemFont, "Nanum Gothic", "Apple SD Gothic Neo", "AppleGothic", sans-serif; } :host-context(.windows) { font-family: "Segoe WPC", "Segoe UI", sans-serif; } :host-context(.windows:lang(zh-Hans)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft YaHei", sans-serif; } :host-context(.windows:lang(zh-Hant)) { font-family: "Segoe WPC", "Segoe UI", "Microsoft Jhenghei", sans-serif; } :host-context(.windows:lang(ja)) { font-family: "Segoe WPC", "Segoe UI", "Yu Gothic UI", "Meiryo UI", sans-serif; } :host-context(.windows:lang(ko)) { font-family: "Segoe WPC", "Segoe UI", "Malgun Gothic", "Dotom", sans-serif; } :host-context(.linux) { font-family: system-ui, "Ubuntu", "Droid Sans", sans-serif; } :host-context(.linux:lang(zh-Hans)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans SC", "Source Han Sans CN", "Source Han Sans", sans-serif; } :host-context(.linux:lang(zh-Hant)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans TC", "Source Han Sans TW", "Source Han Sans", sans-serif; } :host-context(.linux:lang(ja)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans J", "Source Han Sans JP", "Source Han Sans", sans-serif; } :host-context(.linux:lang(ko)) { font-family: system-ui, "Ubuntu", "Droid Sans", "Source Han Sans K", "Source Han Sans JR", "Source Han Sans", "UnDotum", "FBaekmuk Gulim", sans-serif; } `;var ai=e("GJhM"),ti=e("8HAY"),Wi=e("Vhoy"),zi=e("EJc0");const $i=/\(&([^\s&])\)|(^|[^&])&([^\s&])/,Zi=/(&)?(&)([^\s&])/g,cn=Object(Wi.e)("menu-selection",Wi.b.check),nn=Object(Wi.e)("menu-submenu",Wi.b.chevronRight);var qi;(function(t){t[t.Right=0]="Right",t[t.Left=1]="Left"})(qi||(qi={}));class gn extends Co.a{constructor(t,s,a={}){t.classList.add("monaco-menu-container"),t.setAttribute("role","presentation");const x=document.createElement("div");x.classList.add("monaco-menu"),x.setAttribute("role","presentation"),super(x,{orientation:1,actionViewItemProvider:de=>this.doGetActionViewItem(de,a,Z),context:a.context,actionRunner:a.actionRunner,ariaLabel:a.ariaLabel,focusOnlyEnabledItems:!0,triggerKeys:{keys:[3,...Lo.f||Lo.d?[10]:[]],keyDown:!0}}),this.menuElement=x,this.actionsList.setAttribute("role","menu"),this.actionsList.tabIndex=0,this.menuDisposables=this._register(new ao.b),this.initializeStyleSheet(t),this._register(so.b.addTarget(x)),Object(ve.i)(x,ve.d.KEY_DOWN,de=>{const Ae=new Qi.a(de);Ae.equals(2)&&de.preventDefault()}),a.enableMnemonics&&this.menuDisposables.add(Object(ve.i)(x,ve.d.KEY_DOWN,de=>{const Ae=de.key.toLocaleLowerCase();if(this.mnemonics.has(Ae)){ve.c.stop(de,!0);const dt=this.mnemonics.get(Ae);if(dt.length===1&&(dt[0]instanceof ca&&dt[0].container&&this.focusItemByElement(dt[0].container),dt[0].onClick(de)),dt.length>1){const At=dt.shift();At&&At.container&&(this.focusItemByElement(At.container),dt.push(At)),this.mnemonics.set(Ae,dt)}}})),Lo.d&&this._register(Object(ve.i)(x,ve.d.KEY_DOWN,de=>{const Ae=new Qi.a(de);Ae.equals(14)||Ae.equals(11)?(this.focusedItem=this.viewItems.length-1,this.focusNext(),ve.c.stop(de,!0)):(Ae.equals(13)||Ae.equals(12))&&(this.focusedItem=0,this.focusPrevious(),ve.c.stop(de,!0))})),this._register(Object(ve.i)(this.domNode,ve.d.MOUSE_OUT,de=>{let Ae=de.relatedTarget;Object(ve.L)(Ae,this.domNode)||(this.focusedItem=void 0,this.updateFocus(),de.stopPropagation())})),this._register(Object(ve.i)(this.actionsList,ve.d.MOUSE_OVER,de=>{let Ae=de.target;if(!Ae||!Object(ve.L)(Ae,this.actionsList)||Ae===this.actionsList)return;for(;Ae.parentElement!==this.actionsList&&Ae.parentElement!==null;)Ae=Ae.parentElement;if(Ae.classList.contains("action-item")){const dt=this.focusedItem;this.setFocusedItem(Ae),dt!==this.focusedItem&&this.updateFocus()}})),this._register(so.b.addTarget(this.actionsList)),this._register(Object(ve.i)(this.actionsList,so.a.Tap,de=>{let Ae=de.initialTarget;if(!Ae||!Object(ve.L)(Ae,this.actionsList)||Ae===this.actionsList)return;for(;Ae.parentElement!==this.actionsList&&Ae.parentElement!==null;)Ae=Ae.parentElement;if(Ae.classList.contains("action-item")){const dt=this.focusedItem;this.setFocusedItem(Ae),dt!==this.focusedItem&&this.updateFocus()}}));let Z={parent:this};this.mnemonics=new Map,this.scrollableElement=this._register(new ai.a(x,{alwaysConsumeMouseWheel:!0,horizontal:2,vertical:3,verticalScrollbarSize:7,handleMouseWheel:!0,useShadows:!0}));const ie=this.scrollableElement.getDomNode();ie.style.position="",this._register(Object(ve.i)(x,so.a.Change,de=>{ve.c.stop(de,!0);const Ae=this.scrollableElement.getScrollPosition().scrollTop;this.scrollableElement.setScrollPosition({scrollTop:Ae-de.translationY})})),this._register(Object(ve.i)(ie,ve.d.MOUSE_UP,de=>{de.preventDefault()})),x.style.maxHeight=`${Math.max(10,window.innerHeight-t.getBoundingClientRect().top-35)}px`,s=s.filter(de=>{var Ae;return((Ae=a.submenuIds)===null||Ae===void 0?void 0:Ae.has(de.id))?(console.warn(`Found submenu cycle: ${de.id}`),!1):!0}),this.push(s,{icon:!0,label:!0,isMenu:!0}),t.appendChild(this.scrollableElement.getDomNode()),this.scrollableElement.scanDomNode(),this.viewItems.filter(de=>!(de instanceof jr)).forEach((de,Ae,dt)=>{de.updatePositionInSet(Ae+1,dt.length)})}initializeStyleSheet(t){Object(ve.O)(t)?(this.styleSheet=Object(ve.w)(t),this.styleSheet.textContent=ua):(gn.globalStyleSheet||(gn.globalStyleSheet=Object(ve.w)(),gn.globalStyleSheet.textContent=ua),this.styleSheet=gn.globalStyleSheet)}style(t){const s=this.getContainer(),a=t.foregroundColor?`${t.foregroundColor}`:"",x=t.backgroundColor?`${t.backgroundColor}`:"",Z=t.borderColor?`1px solid ${t.borderColor}`:"",ie=t.shadowColor?`0 2px 4px ${t.shadowColor}`:"";s.style.border=Z,this.domNode.style.color=a,this.domNode.style.backgroundColor=x,s.style.boxShadow=ie,this.viewItems&&this.viewItems.forEach(de=>{(de instanceof Nr||de instanceof jr)&&de.style(t)})}getContainer(){return this.scrollableElement.getDomNode()}get onScroll(){return this.scrollableElement.onScroll}focusItemByElement(t){const s=this.focusedItem;this.setFocusedItem(t),s!==this.focusedItem&&this.updateFocus()}setFocusedItem(t){for(let s=0;s{if(!this.element)return;this._register(Object(ve.i)(this.element,ve.d.MOUSE_UP,x=>{if(ve.c.stop(x,!0),Jt.g){const Z=new Ht.a(x);if(Z.rightButton)return;this.onClick(x)}else setTimeout(()=>{this.onClick(x)},0)})),this._register(Object(ve.i)(this.element,ve.d.CONTEXT_MENU,x=>{ve.c.stop(x,!0)}))},100),this._register(this.runOnceToEnableMouseUp)}render(t){if(super.render(t),!this.element)return;this.container=t,this.item=Object(ve.q)(this.element,Object(ve.a)("a.action-menu-item")),this._action.id===ti.d.ID?this.item.setAttribute("role","presentation"):(this.item.setAttribute("role","menuitem"),this.mnemonic&&this.item.setAttribute("aria-keyshortcuts",`${this.mnemonic}`)),this.check=Object(ve.q)(this.item,Object(ve.a)("span.menu-item-check"+cn.cssSelector)),this.check.setAttribute("role","none"),this.label=Object(ve.q)(this.item,Object(ve.a)("span.action-label")),this.options.label&&this.options.keybinding&&(Object(ve.q)(this.item,Object(ve.a)("span.keybinding")).textContent=this.options.keybinding),this.runOnceToEnableMouseUp.schedule(),this.updateClass(),this.updateLabel(),this.updateTooltip(),this.updateEnabled(),this.updateChecked()}blur(){super.blur(),this.applyStyle()}focus(){super.focus(),this.item&&this.item.focus(),this.applyStyle()}updatePositionInSet(t,s){this.item&&(this.item.setAttribute("aria-posinset",`${t}`),this.item.setAttribute("aria-setsize",`${s}`))}updateLabel(){if(!this.label)return;if(this.options.label){Object(ve.t)(this.label);let t=Object(zi.e)(this.getAction().label);if(t){const s=za(t);this.options.enableMnemonics||(t=s),this.label.setAttribute("aria-label",s.replace(/&&/g,"&"));const a=$i.exec(t);if(a){t=_o.s(t),Zi.lastIndex=0;let x=Zi.exec(t);for(;x&&x[1];)x=Zi.exec(t);const Z=ie=>ie.replace(/&&/g,"&");x?this.label.append(_o.J(Z(t.substr(0,x.index))," "),Object(ve.a)("u",{"aria-hidden":"true"},x[3]),_o.O(Z(t.substr(x.index+x[0].length))," ")):this.label.innerText=Z(t).trim(),this.item&&this.item.setAttribute("aria-keyshortcuts",(a[1]?a[1]:a[3]).toLocaleLowerCase())}else this.label.innerText=t.replace(/&&/g,"&").trim()}}}updateTooltip(){let t=null;this.getAction().tooltip?t=this.getAction().tooltip:!this.options.label&&this.getAction().label&&this.options.icon&&(t=this.getAction().label,this.options.keybinding&&(t=be.a({key:"titleLabel",comment:["action title","action keybinding"]},"{0} ({1})",t,this.options.keybinding))),t&&this.item&&(this.item.title=t)}updateClass(){this.cssClass&&this.item&&this.item.classList.remove(...this.cssClass.split(" ")),this.options.icon&&this.label?(this.cssClass=this.getAction().class||"",this.label.classList.add("icon"),this.cssClass&&this.label.classList.add(...this.cssClass.split(" ")),this.updateEnabled()):this.label&&this.label.classList.remove("icon")}updateEnabled(){this.getAction().enabled?(this.element&&(this.element.classList.remove("disabled"),this.element.removeAttribute("aria-disabled")),this.item&&(this.item.classList.remove("disabled"),this.item.removeAttribute("aria-disabled"),this.item.tabIndex=0)):(this.element&&(this.element.classList.add("disabled"),this.element.setAttribute("aria-disabled","true")),this.item&&(this.item.classList.add("disabled"),this.item.setAttribute("aria-disabled","true")))}updateChecked(){if(!this.item)return;const t=this.getAction().checked;this.item.classList.toggle("checked",!!t),t!==void 0?(this.item.setAttribute("role","menuitemcheckbox"),this.item.setAttribute("aria-checked",t?"true":"false")):(this.item.setAttribute("role","menuitem"),this.item.setAttribute("aria-checked",""))}getMnemonic(){return this.mnemonic}applyStyle(){if(!this.menuStyle)return;const t=this.element&&this.element.classList.contains("focused"),s=t&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor,a=t&&this.menuStyle.selectionBackgroundColor?this.menuStyle.selectionBackgroundColor:void 0,x=t&&this.menuStyle.selectionBorderColor?`thin solid ${this.menuStyle.selectionBorderColor}`:"";this.item&&(this.item.style.color=s?s.toString():"",this.item.style.backgroundColor=a?a.toString():""),this.check&&(this.check.style.color=s?s.toString():""),this.container&&(this.container.style.border=x)}style(t){this.menuStyle=t,this.applyStyle()}}class ca extends Nr{constructor(t,s,a,x){super(t,t,x);this.submenuActions=s,this.parentData=a,this.submenuOptions=x,this.mysubmenu=null,this.submenuDisposables=this._register(new ao.b),this.mouseOver=!1,this.expandDirection=x&&x.expandDirection!==void 0?x.expandDirection:qi.Right,this.showScheduler=new bo.e(()=>{this.mouseOver&&(this.cleanupExistingSubmenu(!1),this.createSubmenu(!1))},250),this.hideScheduler=new bo.e(()=>{this.element&&!Object(ve.L)(Object(ve.y)(),this.element)&&this.parentData.submenu===this.mysubmenu&&(this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!0))},750)}render(t){if(super.render(t),!this.element)return;this.item&&(this.item.classList.add("monaco-submenu-item"),this.item.tabIndex=0,this.item.setAttribute("aria-haspopup","true"),this.updateAriaExpanded("false"),this.submenuIndicator=Object(ve.q)(this.item,Object(ve.a)("span.submenu-indicator"+nn.cssSelector)),this.submenuIndicator.setAttribute("aria-hidden","true")),this._register(Object(ve.i)(this.element,ve.d.KEY_UP,s=>{let a=new Qi.a(s);(a.equals(17)||a.equals(3))&&(ve.c.stop(s,!0),this.createSubmenu(!0))})),this._register(Object(ve.i)(this.element,ve.d.KEY_DOWN,s=>{let a=new Qi.a(s);Object(ve.y)()===this.item&&((a.equals(17)||a.equals(3))&&ve.c.stop(s,!0))})),this._register(Object(ve.i)(this.element,ve.d.MOUSE_OVER,s=>{this.mouseOver||(this.mouseOver=!0,this.showScheduler.schedule())})),this._register(Object(ve.i)(this.element,ve.d.MOUSE_LEAVE,s=>{this.mouseOver=!1})),this._register(Object(ve.i)(this.element,ve.d.FOCUS_OUT,s=>{this.element&&!Object(ve.L)(Object(ve.y)(),this.element)&&this.hideScheduler.schedule()})),this._register(this.parentData.parent.onScroll(()=>{this.parentData.parent.focus(!1),this.cleanupExistingSubmenu(!1)}))}updateEnabled(){}onClick(t){ve.c.stop(t,!0),this.cleanupExistingSubmenu(!1),this.createSubmenu(!0)}cleanupExistingSubmenu(t){if(this.parentData.submenu&&(t||this.parentData.submenu!==this.mysubmenu)){try{this.parentData.submenu.dispose()}catch(s){}this.parentData.submenu=void 0,this.updateAriaExpanded("false"),this.submenuContainer&&(this.submenuDisposables.clear(),this.submenuContainer=void 0)}}calculateSubmenuMenuLayout(t,s,a,x){const Z={top:0,left:0};return Z.left=zo(t.width,s.width,{position:x===qi.Right?0:1,offset:a.left,size:a.width}),Z.left>=a.left&&Z.left{let At=new Qi.a(dt);At.equals(15)&&(ve.c.stop(dt,!0),this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0))})),this.submenuDisposables.add(Object(ve.i)(this.submenuContainer,ve.d.KEY_DOWN,dt=>{let At=new Qi.a(dt);At.equals(15)&&ve.c.stop(dt,!0)})),this.submenuDisposables.add(this.parentData.submenu.onDidCancel(()=>{this.parentData.parent.focus(),this.cleanupExistingSubmenu(!0)})),this.parentData.submenu.focus(t),this.mysubmenu=this.parentData.submenu}}updateAriaExpanded(t){var s;this.item&&((s=this.item)===null||s===void 0||s.setAttribute("aria-expanded",t))}applyStyle(){if(super.applyStyle(),!this.menuStyle)return;const t=this.element&&this.element.classList.contains("focused"),s=t&&this.menuStyle.selectionForegroundColor?this.menuStyle.selectionForegroundColor:this.menuStyle.foregroundColor;this.submenuIndicator&&(this.submenuIndicator.style.color=s?`${s}`:""),this.parentData.submenu&&this.parentData.submenu.style(this.menuStyle)}dispose(){super.dispose(),this.hideScheduler.dispose(),this.mysubmenu&&(this.mysubmenu.dispose(),this.mysubmenu=null),this.submenuContainer&&(this.submenuContainer=void 0)}}class jr extends wo.a{style(t){this.label&&(this.label.style.borderBottomColor=t.separatorColor?`${t.separatorColor}`:"")}}function za(t){const s=$i,a=s.exec(t);if(!a)return t;const x=!a[1];return t.replace(s,x?"$2$3":"").trim()}let ua=` .monaco-menu { font-size: 13px; } ${Object(Do.a)(cn)} ${Object(Do.a)(nn)} .monaco-menu .monaco-action-bar { text-align: right; overflow: hidden; white-space: nowrap; } .monaco-menu .monaco-action-bar .actions-container { display: flex; margin: 0 auto; padding: 0; width: 100%; justify-content: flex-end; } .monaco-menu .monaco-action-bar.vertical .actions-container { display: inline-block; } .monaco-menu .monaco-action-bar.reverse .actions-container { flex-direction: row-reverse; } .monaco-menu .monaco-action-bar .action-item { cursor: pointer; display: inline-block; transition: transform 50ms ease; position: relative; /* DO NOT REMOVE - this is the key to preventing the ghosting icon bug in Chrome 42 */ } .monaco-menu .monaco-action-bar .action-item.disabled { cursor: default; } .monaco-menu .monaco-action-bar.animated .action-item.active { transform: scale(1.272019649, 1.272019649); /* 1.272019649 = \u221A\u03C6 */ } .monaco-menu .monaco-action-bar .action-item .icon, .monaco-menu .monaco-action-bar .action-item .codicon { display: inline-block; } .monaco-menu .monaco-action-bar .action-item .codicon { display: flex; align-items: center; } .monaco-menu .monaco-action-bar .action-label { font-size: 11px; margin-right: 4px; } .monaco-menu .monaco-action-bar .action-item.disabled .action-label, .monaco-menu .monaco-action-bar .action-item.disabled .action-label:hover { opacity: 0.4; } /* Vertical actions */ .monaco-menu .monaco-action-bar.vertical { text-align: left; } .monaco-menu .monaco-action-bar.vertical .action-item { display: block; } .monaco-menu .monaco-action-bar.vertical .action-label.separator { display: block; border-bottom: 1px solid #bbb; padding-top: 1px; margin-left: .8em; margin-right: .8em; } .monaco-menu .secondary-actions .monaco-action-bar .action-label { margin-left: 6px; } /* Action Items */ .monaco-menu .monaco-action-bar .action-item.select-container { overflow: hidden; /* somehow the dropdown overflows its container, we prevent it here to not push */ flex: 1; max-width: 170px; min-width: 60px; display: flex; align-items: center; justify-content: center; margin-right: 10px; } .monaco-menu .monaco-action-bar.vertical { margin-left: 0; overflow: visible; } .monaco-menu .monaco-action-bar.vertical .actions-container { display: block; } .monaco-menu .monaco-action-bar.vertical .action-item { padding: 0; transform: none; display: flex; } .monaco-menu .monaco-action-bar.vertical .action-item.active { transform: none; } .monaco-menu .monaco-action-bar.vertical .action-menu-item { flex: 1 1 auto; display: flex; height: 2em; align-items: center; position: relative; } .monaco-menu .monaco-action-bar.vertical .action-label { flex: 1 1 auto; text-decoration: none; padding: 0 1em; background: none; font-size: 12px; line-height: 1; } .monaco-menu .monaco-action-bar.vertical .keybinding, .monaco-menu .monaco-action-bar.vertical .submenu-indicator { display: inline-block; flex: 2 1 auto; padding: 0 1em; text-align: right; font-size: 12px; line-height: 1; } .monaco-menu .monaco-action-bar.vertical .submenu-indicator { height: 100%; } .monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon { font-size: 16px !important; display: flex; align-items: center; } .monaco-menu .monaco-action-bar.vertical .submenu-indicator.codicon::before { margin-left: auto; margin-right: -20px; } .monaco-menu .monaco-action-bar.vertical .action-item.disabled .keybinding, .monaco-menu .monaco-action-bar.vertical .action-item.disabled .submenu-indicator { opacity: 0.4; } .monaco-menu .monaco-action-bar.vertical .action-label:not(.separator) { display: inline-block; box-sizing: border-box; margin: 0; } .monaco-menu .monaco-action-bar.vertical .action-item { position: static; overflow: visible; } .monaco-menu .monaco-action-bar.vertical .action-item .monaco-submenu { position: absolute; } .monaco-menu .monaco-action-bar.vertical .action-label.separator { padding: 0.5em 0 0 0; margin-bottom: 0.5em; width: 100%; height: 0px !important; margin-left: .8em !important; margin-right: .8em !important; } .monaco-menu .monaco-action-bar.vertical .action-label.separator.text { padding: 0.7em 1em 0.1em 1em; font-weight: bold; opacity: 1; } .monaco-menu .monaco-action-bar.vertical .action-label:hover { color: inherit; } .monaco-menu .monaco-action-bar.vertical .menu-item-check { position: absolute; visibility: hidden; width: 1em; height: 100%; } .monaco-menu .monaco-action-bar.vertical .action-menu-item.checked .menu-item-check { visibility: visible; display: flex; align-items: center; justify-content: center; } /* Context Menu */ .context-view.monaco-menu-container { outline: 0; border: none; animation: fadeIn 0.083s linear; -webkit-app-region: no-drag; } .context-view.monaco-menu-container :focus, .context-view.monaco-menu-container .monaco-action-bar.vertical:focus, .context-view.monaco-menu-container .monaco-action-bar.vertical :focus { outline: 0; } .monaco-menu .monaco-action-bar.vertical .action-item { border: thin solid transparent; /* prevents jumping behaviour on hover or focus */ } /* High Contrast Theming */ :host-context(.hc-black) .context-view.monaco-menu-container { box-shadow: none; } :host-context(.hc-black) .monaco-menu .monaco-action-bar.vertical .action-item.focused { background: none; } /* Vertical Action Bar Styles */ .monaco-menu .monaco-action-bar.vertical { padding: .5em 0; } .monaco-menu .monaco-action-bar.vertical .action-menu-item { height: 1.8em; } .monaco-menu .monaco-action-bar.vertical .action-label:not(.separator), .monaco-menu .monaco-action-bar.vertical .keybinding { font-size: inherit; padding: 0 2em; } .monaco-menu .monaco-action-bar.vertical .menu-item-check { font-size: inherit; width: 2em; } .monaco-menu .monaco-action-bar.vertical .action-label.separator { font-size: inherit; padding: 0.2em 0 0 0; margin-bottom: 0.2em; } :host-context(.linux) .monaco-menu .monaco-action-bar.vertical .action-label.separator { margin-left: 0; margin-right: 0; } .monaco-menu .monaco-action-bar.vertical .submenu-indicator { font-size: 60%; padding: 0 1.8em; } :host-context(.linux) .monaco-menu .monaco-action-bar.vertical .submenu-indicator { height: 100%; mask-size: 10px 10px; -webkit-mask-size: 10px 10px; } .monaco-menu .action-item { cursor: default; } /* Arrows */ .monaco-scrollable-element > .scrollbar > .scra { cursor: pointer; font-size: 11px !important; } .monaco-scrollable-element > .visible { opacity: 1; /* Background rule added for IE9 - to allow clicks on dom node */ background:rgba(0,0,0,0); transition: opacity 100ms linear; } .monaco-scrollable-element > .invisible { opacity: 0; pointer-events: none; } .monaco-scrollable-element > .invisible.fade { transition: opacity 800ms linear; } /* Scrollable Content Inset Shadow */ .monaco-scrollable-element > .shadow { position: absolute; display: none; } .monaco-scrollable-element > .shadow.top { display: block; top: 0; left: 3px; height: 3px; width: 100%; box-shadow: #DDD 0 6px 6px -6px inset; } .monaco-scrollable-element > .shadow.left { display: block; top: 3px; left: 0; height: 100%; width: 3px; box-shadow: #DDD 6px 0 6px -6px inset; } .monaco-scrollable-element > .shadow.top-left-corner { display: block; top: 0; left: 0; height: 3px; width: 3px; } .monaco-scrollable-element > .shadow.top.left { box-shadow: #DDD 6px 6px 6px -6px inset; } /* ---------- Default Style ---------- */ :host-context(.vs) .monaco-scrollable-element > .scrollbar > .slider { background: rgba(100, 100, 100, .4); } :host-context(.vs-dark) .monaco-scrollable-element > .scrollbar > .slider { background: rgba(121, 121, 121, .4); } :host-context(.hc-black) .monaco-scrollable-element > .scrollbar > .slider { background: rgba(111, 195, 223, .6); } .monaco-scrollable-element > .scrollbar > .slider:hover { background: rgba(100, 100, 100, .7); } :host-context(.hc-black) .monaco-scrollable-element > .scrollbar > .slider:hover { background: rgba(111, 195, 223, .8); } .monaco-scrollable-element > .scrollbar > .slider.active { background: rgba(0, 0, 0, .6); } :host-context(.vs-dark) .monaco-scrollable-element > .scrollbar > .slider.active { background: rgba(191, 191, 191, .4); } :host-context(.hc-black) .monaco-scrollable-element > .scrollbar > .slider.active { background: rgba(111, 195, 223, 1); } :host-context(.vs-dark) .monaco-scrollable-element .shadow.top { box-shadow: none; } :host-context(.vs-dark) .monaco-scrollable-element .shadow.left { box-shadow: #000 6px 0 6px -6px inset; } :host-context(.vs-dark) .monaco-scrollable-element .shadow.top.left { box-shadow: #000 6px 6px 6px -6px inset; } :host-context(.hc-black) .monaco-scrollable-element .shadow.top { box-shadow: none; } :host-context(.hc-black) .monaco-scrollable-element .shadow.left { box-shadow: none; } :host-context(.hc-black) .monaco-scrollable-element .shadow.top.left { box-shadow: none; } `;var sc=e("eizg"),Yn=e("ptcw");class Ka{constructor(t,s,a,x,Z){this.contextViewService=t,this.telemetryService=s,this.notificationService=a,this.keybindingService=x,this.themeService=Z,this.focusToReturn=null,this.block=null,this.options={blockMouse:!0}}configure(t){this.options=t}showContextMenu(t){const s=t.getActions();if(!s.length)return;this.focusToReturn=document.activeElement;let a,x=Object(ve.M)(t.domForShadowRoot)?t.domForShadowRoot:void 0;this.contextViewService.showContextView({getAnchor:()=>t.getAnchor(),canRelayout:!1,anchorAlignment:t.anchorAlignment,anchorAxisAlignment:t.anchorAxisAlignment,render:Z=>{let ie=t.getMenuClassName?t.getMenuClassName():"";ie&&(Z.className+=" "+ie),this.options.blockMouse&&(this.block=Z.appendChild(Object(ve.a)(".context-view-block")),this.block.style.position="fixed",this.block.style.cursor="initial",this.block.style.left="0",this.block.style.top="0",this.block.style.width="100%",this.block.style.height="100%",this.block.style.zIndex="-1",Object(ve.i)(this.block,ve.d.MOUSE_DOWN,dt=>dt.stopPropagation()));const de=new ao.b,Ae=t.actionRunner||new ti.b;return Ae.onBeforeRun(this.onActionRun,this,de),Ae.onDidRun(this.onDidActionRun,this,de),a=new gn(Z,s,{actionViewItemProvider:t.getActionViewItem,context:t.getActionsContext?t.getActionsContext():null,actionRunner:Ae,getKeyBinding:t.getKeyBinding?t.getKeyBinding:dt=>this.keybindingService.lookupKeybinding(dt.id)}),de.add(Object(Yn.c)(a,this.themeService)),a.onDidCancel(()=>this.contextViewService.hideContextView(!0),null,de),a.onDidBlur(()=>this.contextViewService.hideContextView(!0),null,de),de.add(Object(ve.i)(window,ve.d.BLUR,()=>this.contextViewService.hideContextView(!0))),de.add(Object(ve.i)(window,ve.d.MOUSE_DOWN,dt=>{if(dt.defaultPrevented)return;let At=new Ht.a(dt),yt=At.target;if(At.rightButton)return;for(;yt;){if(yt===Z)return;yt=yt.parentElement}this.contextViewService.hideContextView(!0)})),Object(ao.e)(de,a)},focus:()=>{a&&a.focus(!!t.autoSelectFirstItem)},onHide:Z=>{t.onHide&&t.onHide(!!Z),this.block&&(this.block.remove(),this.block=null),this.focusToReturn&&this.focusToReturn.focus()}},x,!!x)}onActionRun(t){this.telemetryService.publicLog2("workbenchActionExecuted",{id:t.action.id,from:"contextMenu"}),this.contextViewService.hideContextView(!1),this.focusToReturn&&this.focusToReturn.focus()}onDidActionRun(t){t.error&&!Object(So.e)(t.error)&&this.notificationService.error(t.error)}}var Ga=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},Bs=function(t,s){return function(a,x){s(a,x,t)}};let kr=class extends ao.a{constructor(s,a,x,Z,ie){super();this.contextMenuHandler=new Ka(x,s,a,Z,ie)}configure(s){this.contextMenuHandler.configure(s)}showContextMenu(s){this.contextMenuHandler.showContextMenu(s),ve.e.getInstance().resetKeyStatus()}};kr=Ga([Bs(0,_t.a),Bs(1,Bo.a),Bs(2,Tn.b),Bs(3,Ti.a),Bs(4,vn.b)],kr);const or=Object(mn.c)("layoutService");var Xa=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},$a=function(t,s){return function(a,x){s(a,x,t)}};let Pr=class extends ao.a{constructor(s){super();this.layoutService=s,this.currentViewDisposable=ao.a.None,this.container=s.container,this.contextView=this._register(new Wo(this.container,1)),this.layout(),this._register(s.onDidLayout(()=>this.layout()))}setContainer(s,a){this.contextView.setContainer(s,a||1)}showContextView(s,a,x){a?a!==this.container&&(this.container=a,this.setContainer(a,x?3:2)):this.container!==this.layoutService.container&&(this.container=this.layoutService.container,this.setContainer(this.container,1)),this.contextView.show(s);const Z=Object(ao.i)(()=>{this.currentViewDisposable===Z&&this.hideContextView()});return this.currentViewDisposable=Z,Z}getContextViewElement(){return this.contextView.getViewElement()}layout(){this.contextView.layout()}hideContextView(s){this.contextView.hide(s)}};Pr=Xa([$a(0,or)],Pr);var ha=e("6vuP"),bs=e("r0BQ");class Ya{constructor(t){this.incoming=new Map,this.outgoing=new Map,this.data=t}}class Za{constructor(t){this._hashFn=t,this._nodes=new Map}roots(){const t=[];for(let s of this._nodes.values())s.outgoing.size===0&&t.push(s);return t}insertEdge(t,s){const a=this.lookupOrInsertNode(t),x=this.lookupOrInsertNode(s);a.outgoing.set(this._hashFn(s),x),x.incoming.set(this._hashFn(t),a)}removeNode(t){const s=this._hashFn(t);this._nodes.delete(s);for(let a of this._nodes.values())a.outgoing.delete(s),a.incoming.delete(s)}lookupOrInsertNode(t){const s=this._hashFn(t);let a=this._nodes.get(s);return a||(a=new Ya(t),this._nodes.set(s,a)),a}isEmpty(){return this._nodes.size===0}toString(){let t=[];for(let[s,a]of this._nodes)t.push(`${s}, (incoming)[${[...a.incoming.keys()].join(", ")}], (outgoing)[${[...a.outgoing.keys()].join(",")}]`);return t.join(` `)}findCycleSlow(){for(let[t,s]of this._nodes){const a=new Set([t]),x=this._findCycle(s,a);if(x)return x}return}_findCycle(t,s){for(let[a,x]of t.outgoing){if(s.has(a))return[...s,a].join(" -> ");s.add(a);const Z=this._findCycle(x,s);if(Z)return Z;s.delete(a)}return}}var Fr=e("8HsV");const ma=!1;class ga extends Error{constructor(t){var s;super("cyclic dependency between services");this.message=(s=t.findCycleSlow())!==null&&s!==void 0?s:`UNABLE to detect cycle, dumping graph: ${t.toString()}`}}class Br{constructor(t=new Fr.a,s=!1,a){this._activeInstantiations=new Set,this._services=t,this._strict=s,this._parent=a,this._services.set(mn.a,this)}createChild(t){return new Br(t,this._strict,this)}invokeFunction(t,...s){let a=_n.traceInvocation(t),x=!1;try{const Z={get:(ie,de)=>{if(x)throw Object(So.d)("service accessor is only valid during the invocation of its target method");const Ae=this._getOrCreateServiceInstance(ie,a);if(!Ae&&de!==mn.d)throw new Error(`[invokeFunction] unknown service '${ie}'`);return Ae}};return t(Z,...s)}finally{x=!0,a.stop()}}createInstance(t,...s){let a,x;return t instanceof bs.a?(a=_n.traceCreation(t.ctor),x=this._createInstance(t.ctor,t.staticArguments.concat(s),a)):(a=_n.traceCreation(t),x=this._createInstance(t,s,a)),a.stop(),x}_createInstance(t,s=[],a){let x=mn.b.getServiceDependencies(t).sort((de,Ae)=>de.index-Ae.index),Z=[];for(const de of x){let Ae=this._getOrCreateServiceInstance(de.id,a);if(!Ae&&this._strict&&!de.optional)throw new Error(`[createInstance] ${t.name} depends on UNKNOWN service ${de.id}.`);Z.push(Ae)}let ie=x.length>0?x[0].index:s.length;if(s.length!==ie){console.warn(`[createInstance] First service dependency of ${t.name} at position ${ie+1} conflicts with ${s.length} static arguments`);let de=ie-s.length;de>0?s=s.concat(new Array(de)):s=s.slice(0,ie)}return new t(...[...s,...Z])}_setServiceInstance(t,s){if(this._services.get(t)instanceof bs.a)this._services.set(t,s);else if(this._parent)this._parent._setServiceInstance(t,s);else throw new Error("illegalState - setting UNKNOWN service instance")}_getServiceInstanceOrDescriptor(t){let s=this._services.get(t);return!s&&this._parent?this._parent._getServiceInstanceOrDescriptor(t):s}_getOrCreateServiceInstance(t,s){let a=this._getServiceInstanceOrDescriptor(t);return a instanceof bs.a?this._safeCreateAndCacheServiceInstance(t,a,s.branch(t,!0)):(s.branch(t,!1),a)}_safeCreateAndCacheServiceInstance(t,s,a){if(this._activeInstantiations.has(t))throw new Error(`illegal state - RECURSIVELY instantiating service '${t}'`);this._activeInstantiations.add(t);try{return this._createAndCacheServiceInstance(t,s,a)}finally{this._activeInstantiations.delete(t)}}_createAndCacheServiceInstance(t,s,a){const x=new Za(de=>de.id.toString());let Z=0;const ie=[{id:t,desc:s,_trace:a}];for(;ie.length;){const de=ie.pop();if(x.lookupOrInsertNode(de),Z++>1e3)throw new ga(x);for(let Ae of mn.b.getServiceDependencies(de.desc.ctor)){let dt=this._getServiceInstanceOrDescriptor(Ae.id);if(!dt&&!Ae.optional&&console.warn(`[createInstance] ${t} depends on ${Ae.id} which is NOT registered.`),dt instanceof bs.a){const At={id:Ae.id,desc:dt,_trace:de._trace.branch(Ae.id,!0)};x.insertEdge(de,At),ie.push(At)}}}for(;;){const de=x.roots();if(de.length===0){if(!x.isEmpty())throw new ga(x);break}for(const{data:Ae}of de){const dt=this._getServiceInstanceOrDescriptor(Ae.id);if(dt instanceof bs.a){const At=this._createServiceInstanceWithOwner(Ae.id,Ae.desc.ctor,Ae.desc.staticArguments,Ae.desc.supportsDelayedInstantiation,Ae._trace);this._setServiceInstance(Ae.id,At)}x.removeNode(Ae)}}return this._getServiceInstanceOrDescriptor(t)}_createServiceInstanceWithOwner(t,s,a=[],x,Z){if(this._services.get(t)instanceof bs.a)return this._createServiceInstance(s,a,x,Z);if(this._parent)return this._parent._createServiceInstanceWithOwner(t,s,a,x,Z);throw new Error(`illegalState - creating UNKNOWN service instance ${s.name}`)}_createServiceInstance(t,s=[],a,x){if(a){const Z=new bo.b(()=>this._createInstance(t,s,x));return new Proxy(Object.create(null),{get(ie,de){if(de in ie)return ie[de];let Ae=Z.value,dt=Ae[de];return typeof dt!="function"||(dt=dt.bind(Ae),ie[de]=dt),dt},set(ie,de,Ae){return Z.value[de]=Ae,!0}})}else return this._createInstance(t,s,x)}}class _n{constructor(t,s){this.type=t,this.name=s,this._start=Date.now(),this._dep=[]}static traceInvocation(t){return ma?new _n(1,t.name||t.toString().substring(0,42).replace(/\n/g,"")):_n._None}static traceCreation(t){return ma?new _n(0,t.name):_n._None}branch(t,s){let a=new _n(2,t.toString());return this._dep.push([t,s,a]),a}stop(){let t=Date.now()-this._start;_n._totals+=t;let s=!1;function a(Z,ie){let de=[],Ae=new Array(Z+1).join(" ");for(const[dt,At,yt]of ie._dep)if(At&&yt){s=!0,de.push(`${Ae}CREATES -> ${dt}`);let oo=a(Z+1,yt);oo&&de.push(oo)}else de.push(`${Ae}uses -> ${dt}`);return de.join(` `)}let x=[`${this.type===0?"CREATE":"CALL"} ${this.name}`,`${a(1,this)}`,`DONE, took ${t.toFixed(2)}ms (grand total ${_n._totals.toFixed(2)}ms)`];(t>2||s)&&console.log(x.join(` `))}}_n._None=new class extends _n{constructor(){super(-1,null)}stop(){}branch(){return this}},_n._totals=0;var Qa=e("R8sh"),Wr=e("k9mg"),jn=e("tADe");class Ja{constructor(){this._byResource=new we.b,this._byOwner=new Map}set(t,s,a){let x=this._byResource.get(t);x||(x=new Map,this._byResource.set(t,x)),x.set(s,a);let Z=this._byOwner.get(s);Z||(Z=new we.b,this._byOwner.set(s,Z)),Z.set(t,a)}get(t,s){let a=this._byResource.get(t);return a==null?void 0:a.get(s)}delete(t,s){let a=!1,x=!1,Z=this._byResource.get(t);Z&&(a=Z.delete(s));let ie=this._byOwner.get(s);if(ie&&(x=ie.delete(t)),a!==x)throw new Error("illegal state");return a&&x}values(t){var s,a,x,Z;return typeof t=="string"?(a=(s=this._byOwner.get(t))===null||s===void 0?void 0:s.values())!==null&&a!==void 0?a:$n.a.empty():I.a.isUri(t)?(Z=(x=this._byResource.get(t))===null||x===void 0?void 0:x.values())!==null&&Z!==void 0?Z:$n.a.empty():$n.a.map($n.a.concat(...this._byOwner.values()),ie=>ie[1])}}class qa{constructor(t){this.errors=0,this.infos=0,this.warnings=0,this.unknowns=0,this._data=new we.b,this._service=t,this._subscription=t.onMarkerChanged(this._update,this)}dispose(){this._subscription.dispose()}_update(t){for(const s of t){const a=this._data.get(s);a&&this._substract(a);const x=this._resourceStats(s);this._add(x),this._data.set(s,x)}}_resourceStats(t){const s={errors:0,warnings:0,infos:0,unknowns:0};if(t.scheme===ge.c.inMemory||t.scheme===ge.c.walkThrough||t.scheme===ge.c.walkThroughSnippet)return s;for(const{severity:a}of this._service.read({resource:t}))a===jn.c.Error?s.errors+=1:a===jn.c.Warning?s.warnings+=1:a===jn.c.Info?s.infos+=1:s.unknowns+=1;return s}_substract(t){this.errors-=t.errors,this.warnings-=t.warnings,this.infos-=t.infos,this.unknowns-=t.unknowns}_add(t){this.errors+=t.errors,this.warnings+=t.warnings,this.infos+=t.infos,this.unknowns+=t.unknowns}}class vs{constructor(){this._onMarkerChanged=new L.a({delay:0,merge:vs._merge}),this.onMarkerChanged=this._onMarkerChanged.event,this._data=new Ja,this._stats=new qa(this)}dispose(){this._stats.dispose(),this._onMarkerChanged.dispose()}remove(t,s){for(const a of s||[])this.changeOne(t,a,[])}changeOne(t,s,a){if(Object(Ii.m)(a)){const x=this._data.delete(s,t);x&&this._onMarkerChanged.fire([s])}else{const x=[];for(const Z of a){const ie=vs._toMarker(t,s,Z);ie&&x.push(ie)}this._data.set(s,t,x),this._onMarkerChanged.fire([s])}}static _toMarker(t,s,a){let{code:x,severity:Z,message:ie,source:de,startLineNumber:Ae,startColumn:dt,endLineNumber:At,endColumn:yt,relatedInformation:oo,tags:jo}=a;return ie?(Ae=Ae>0?Ae:1,dt=dt>0?dt:1,At=At>=Ae?At:Ae,yt=yt>0?yt:dt,{resource:s,owner:t,code:x,severity:Z,message:ie,source:de,startLineNumber:Ae,startColumn:dt,endLineNumber:At,endColumn:yt,relatedInformation:oo,tags:jo}):void 0}read(t=Object.create(null)){let{owner:s,resource:a,severities:x,take:Z}=t;if((!Z||Z<0)&&(Z=-1),s&&a){const ie=this._data.get(a,s);if(ie){const de=[];for(const Ae of ie)if(vs._accept(Ae,x)){const dt=de.push(Ae);if(Z>0&&dt===Z)break}return de}else return[]}else if(!s&&!a){const ie=[];for(let de of this._data.values())for(let Ae of de)if(vs._accept(Ae,x)){const dt=ie.push(Ae);if(Z>0&&dt===Z)return ie}return ie}else{const ie=this._data.values(a!=null?a:s),de=[];for(const Ae of ie)for(const dt of Ae)if(vs._accept(dt,x)){const At=de.push(dt);if(Z>0&&At===Z)return de}return de}}static _accept(t,s){return s===void 0||(s&t.severity)===t.severity}static _merge(t){const s=new we.b;for(let a of t)for(let x of a)s.set(x,!0);return Array.from(s.keys())}}var fa=e("A+jI"),pa=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},ir=function(t,s){return function(a,x){s(a,x,t)}};let Ur=class{constructor(s){this._commandService=s}createMenu(s,a,x){return new Hr(s,Object.assign({emitEventsForSubmenuChanges:!1,eventDebounceDelay:50},x),this._commandService,a,this)}};Ur=pa([ir(0,ze.b)],Ur);let Hr=class t{constructor(s,a,x,Z,ie){this._id=s,this._options=a,this._commandService=x,this._contextKeyService=Z,this._menuService=ie,this._disposables=new ao.b,this._menuGroups=[],this._contextKeys=new Set,this._build();const de=new bo.e(()=>{this._build(),this._onDidChange.fire(this)},a.eventDebounceDelay);this._disposables.add(de),this._disposables.add(Sn.d.onDidChangeMenu(At=>{At.has(s)&&de.schedule()}));const Ae=this._disposables.add(new ao.b),dt=()=>{const At=new bo.e(()=>this._onDidChange.fire(this),a.eventDebounceDelay);Ae.add(At),Ae.add(Z.onDidChangeContext(yt=>{yt.affectsSome(this._contextKeys)&&At.schedule()}))};this._onDidChange=new L.b({onFirstListenerAdd:dt,onLastListenerRemove:Ae.clear.bind(Ae)}),this.onDidChange=this._onDidChange.event}dispose(){this._disposables.dispose(),this._onDidChange.dispose()}_build(){this._menuGroups.length=0,this._contextKeys.clear();const s=Sn.d.getMenuItems(this._id);let a;s.sort(t._compareMenuItems);for(const x of s){const Z=x.group||"";(!a||a[0]!==Z)&&(a=[Z,[]],this._menuGroups.push(a)),a[1].push(x),this._collectContextKeys(x)}}_collectContextKeys(s){if(t._fillInKbExprKeys(s.when,this._contextKeys),Object(Sn.f)(s)){if(s.command.precondition&&t._fillInKbExprKeys(s.command.precondition,this._contextKeys),s.command.toggled){const a=s.command.toggled.condition||s.command.toggled;t._fillInKbExprKeys(a,this._contextKeys)}}else this._options.emitEventsForSubmenuChanges&&Sn.d.getMenuItems(s.submenu).forEach(this._collectContextKeys,this)}getActions(s){const a=[];for(let x of this._menuGroups){const[Z,ie]=x,de=[];for(const Ae of ie)if(this._contextKeyService.contextMatchesRules(Ae.when)){const dt=Object(Sn.f)(Ae)?new Sn.c(Ae.command,Ae.alt,s,this._contextKeyService,this._commandService):new Sn.e(Ae,this._menuService,this._contextKeyService,s);de.push(dt)}de.length>0&&a.push([Z,de])}return a}static _fillInKbExprKeys(s,a){if(s)for(let x of s.keys())a.add(x)}static _compareMenuItems(s,a){let x=s.group,Z=a.group;if(x!==Z){if(x){if(!Z)return-1}else return 1;if(x==="navigation")return-1;if(Z==="navigation")return 1;let Ae=x.localeCompare(Z);if(Ae!==0)return Ae}let ie=s.order||0,de=a.order||0;return iede?1:t._compareTitles(Object(Sn.f)(s)?s.command.title:s.title,Object(Sn.f)(a)?a.command.title:a.title)}static _compareTitles(s,a){const x=typeof s=="string"?s:s.original,Z=typeof a=="string"?a:a.original;return x.localeCompare(Z)}};Hr=pa([ir(2,ze.b),ir(3,xt.b),ir(4,Sn.a)],Hr);var el=e("79sc"),tl=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},ba=function(t,s){return function(a,x){s(a,x,t)}};class ol extends ao.a{constructor(t){super();this.model=t,this._markersData=new Map,this._register(Object(ao.i)(()=>{this.model.deltaDecorations([...this._markersData.keys()],[]),this._markersData.clear()}))}update(t,s){const a=[...this._markersData.keys()];this._markersData.clear();const x=this.model.deltaDecorations(a,s);for(let Z=0;Zthis._onModelAdded(x)),this._register(s.onModelAdded(this._onModelAdded,this)),this._register(s.onModelRemoved(this._onModelRemoved,this)),this._register(this._markerService.onMarkerChanged(this._handleMarkerChange,this))}dispose(){super.dispose(),this._markerDecorations.forEach(s=>s.dispose()),this._markerDecorations.clear()}getMarker(s,a){const x=this._markerDecorations.get(s);return x&&x.getMarker(a)||null}_handleMarkerChange(s){s.forEach(a=>{const x=this._markerDecorations.get(a);x&&this._updateDecorations(x)})}_onModelAdded(s){const a=new ol(s);this._markerDecorations.set(s.uri,a),this._updateDecorations(a)}_onModelRemoved(s){const a=this._markerDecorations.get(s.uri);a&&(a.dispose(),this._markerDecorations.delete(s.uri)),(s.uri.scheme===ge.c.inMemory||s.uri.scheme===ge.c.internal||s.uri.scheme===ge.c.vscode)&&(this._markerService&&this._markerService.read({resource:s.uri}).map(x=>x.owner).forEach(x=>this._markerService.remove(x,[s.uri])))}_updateDecorations(s){const a=this._markerService.read({resource:s.model.uri,take:500});let x=a.map(Z=>({range:this._createDecorationRange(s.model,Z),options:this._createDecorationOption(Z)}));s.update(a,x)&&this._onDidChangeMarker.fire(s.model)}_createDecorationRange(s,a){let x=O.a.lift(a);return a.severity===jn.c.Hint&&!this._hasMarkerTag(a,1)&&!this._hasMarkerTag(a,2)&&(x=x.setEndPosition(x.startLineNumber,x.startColumn+2)),s.validateRange(x)}_createDecorationOption(s){let a,x,Z,ie,de;switch(s.severity){case jn.c.Hint:this._hasMarkerTag(s,2)?a=void 0:this._hasMarkerTag(s,1)?a="squiggly-unnecessary":a="squiggly-hint",Z=0;break;case jn.c.Warning:a="squiggly-warning",x=Object(vn.g)(On.O),Z=20,de={color:Object(vn.g)(ci.mc),position:le.f.Inline};break;case jn.c.Info:a="squiggly-info",x=Object(vn.g)(On.M),Z=10;break;case jn.c.Error:default:a="squiggly-error",x=Object(vn.g)(On.L),Z=30,de={color:Object(vn.g)(ci.ec),position:le.f.Inline};break}return s.tags&&(s.tags.indexOf(1)!==-1&&(ie="squiggly-inline-unnecessary"),s.tags.indexOf(2)!==-1&&(ie="squiggly-inline-deprecated")),{description:"marker-decoration",stickiness:1,className:a,showIfCollapsed:!0,overviewRuler:{color:x,position:le.g.Right},minimap:de,zIndex:Z,inlineClassName:ie}}_hasMarkerTag(s,a){return s.tags?s.tags.indexOf(a)>=0:!1}};Vr=tl([ba(0,bi.a),ba(1,jn.b)],Vr);var va=e("9fML"),il=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},Ca=function(t,s){return function(a,x){s(a,x,t)}};let zr=class extends ao.a{constructor(s,a){super();this._contextKeyService=s,this._configurationService=a,this._accessibilitySupport=0,this._onDidChangeScreenReaderOptimized=new L.b,this._accessibilityModeEnabledContext=Fn.a.bindTo(this._contextKeyService);const x=()=>this._accessibilityModeEnabledContext.set(this.isScreenReaderOptimized());this._register(this._configurationService.onDidChangeConfiguration(Z=>{Z.affectsConfiguration("editor.accessibilitySupport")&&(x(),this._onDidChangeScreenReaderOptimized.fire())})),x(),this.onDidChangeScreenReaderOptimized(()=>x())}get onDidChangeScreenReaderOptimized(){return this._onDidChangeScreenReaderOptimized.event}isScreenReaderOptimized(){const s=this._configurationService.getValue("editor.accessibilitySupport");return s==="on"||s==="auto"&&this._accessibilitySupport===2}getAccessibilitySupport(){return this._accessibilitySupport}};zr=il([Ca(0,xt.b),Ca(1,mi.a)],zr);var nr=function(t,s,a,x){function Z(ie){return ie instanceof a?ie:new a(function(de){de(ie)})}return new(a||(a=Promise))(function(ie,de){function Ae(yt){try{At(x.next(yt))}catch(oo){de(oo)}}function dt(yt){try{At(x.throw(yt))}catch(oo){de(oo)}}function At(yt){yt.done?ie(yt.value):Z(yt.value).then(Ae,dt)}At((x=x.apply(t,s||[])).next())})};class nl{constructor(){this.mapTextToType=new Map,this.findText=""}writeText(t,s){return nr(this,void 0,void 0,function*(){if(s){this.mapTextToType.set(s,t);return}try{return yield navigator.clipboard.writeText(t)}catch(Z){console.error(Z)}const a=document.activeElement,x=document.body.appendChild(Object(ve.a)("textarea",{"aria-hidden":!0}));x.style.height="1px",x.style.width="1px",x.style.position="absolute",x.value=t,x.focus(),x.select(),document.execCommand("copy"),a instanceof HTMLElement&&a.focus(),document.body.removeChild(x);return})}readText(t){return nr(this,void 0,void 0,function*(){if(t)return this.mapTextToType.get(t)||"";try{return yield navigator.clipboard.readText()}catch(s){return console.error(s),""}})}readFindText(){return nr(this,void 0,void 0,function*(){return this.findText})}writeFindText(t){return nr(this,void 0,void 0,function*(){this.findText=t})}}var kn=e("OAO6"),sl=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},ya=function(t,s){return function(a,x){s(a,x,t)}},sr=function(t,s,a,x){function Z(ie){return ie instanceof a?ie:new a(function(de){de(ie)})}return new(a||(a=Promise))(function(ie,de){function Ae(yt){try{At(x.next(yt))}catch(oo){de(oo)}}function dt(yt){try{At(x.throw(yt))}catch(oo){de(oo)}}function At(yt){yt.done?ie(yt.value):Z(yt.value).then(Ae,dt)}At((x=x.apply(t,s||[])).next())})};const Cs=!1;function rr(t){return t.scheme===ge.c.file?t.fsPath:t.path}let Ea=0;class ar{constructor(t,s,a,x,Z,ie,de){this.id=++Ea,this.type=0,this.actual=t,this.label=t.label,this.confirmBeforeUndo=t.confirmBeforeUndo||!1,this.resourceLabel=s,this.strResource=a,this.resourceLabels=[this.resourceLabel],this.strResources=[this.strResource],this.groupId=x,this.groupOrder=Z,this.sourceId=ie,this.sourceOrder=de,this.isValid=!0}setValid(t){this.isValid=t}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.isValid?" VALID":"INVALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class Sa{constructor(t,s){this.resourceLabel=t,this.reason=s}}class wa{constructor(){this.elements=new Map}createMessage(){const t=[],s=[];for(const[,x]of this.elements){const Z=x.reason===0?t:s;Z.push(x.resourceLabel)}let a=[];return t.length>0&&a.push(be.a({key:"externalRemoval",comment:["{0} is a list of filenames"]},"The following files have been closed and modified on disk: {0}.",t.join(", "))),s.length>0&&a.push(be.a({key:"noParallelUniverses",comment:["{0} is a list of filenames"]},"The following files have been modified in an incompatible way: {0}.",s.join(", "))),a.join(` `)}get size(){return this.elements.size}has(t){return this.elements.has(t)}set(t,s){this.elements.set(t,s)}delete(t){return this.elements.delete(t)}}class rl{constructor(t,s,a,x,Z,ie,de){this.id=++Ea,this.type=1,this.actual=t,this.label=t.label,this.confirmBeforeUndo=t.confirmBeforeUndo||!1,this.resourceLabels=s,this.strResources=a,this.groupId=x,this.groupOrder=Z,this.sourceId=ie,this.sourceOrder=de,this.removedResources=null,this.invalidatedResources=null}canSplit(){return typeof this.actual.split=="function"}removeResource(t,s,a){this.removedResources||(this.removedResources=new wa),this.removedResources.has(s)||this.removedResources.set(s,new Sa(t,a))}setValid(t,s,a){a?this.invalidatedResources&&(this.invalidatedResources.delete(s),this.invalidatedResources.size===0&&(this.invalidatedResources=null)):(this.invalidatedResources||(this.invalidatedResources=new wa),this.invalidatedResources.has(s)||this.invalidatedResources.set(s,new Sa(t,0)))}toString(){return`[id:${this.id}] [group:${this.groupId}] [${this.invalidatedResources?"INVALID":" VALID"}] ${this.actual.constructor.name} - ${this.actual}`}}class La{constructor(t,s){this.resourceLabel=t,this.strResource=s,this._past=[],this._future=[],this.locked=!1,this.versionId=1}dispose(){for(const t of this._past)t.type===1&&t.removeResource(this.resourceLabel,this.strResource,0);for(const t of this._future)t.type===1&&t.removeResource(this.resourceLabel,this.strResource,0);this.versionId++}toString(){let t=[];t.push(`* ${this.strResource}:`);for(let s=0;s=0;s--)t.push(` * [REDO] ${this._future[s]}`);return t.join(` `)}flushAllElements(){this._past=[],this._future=[],this.versionId++}_setElementValidFlag(t,s){t.type===1?t.setValid(this.resourceLabel,this.strResource,s):t.setValid(s)}setElementsValidFlag(t,s){for(const a of this._past)s(a.actual)&&this._setElementValidFlag(a,t);for(const a of this._future)s(a.actual)&&this._setElementValidFlag(a,t)}pushElement(t){for(const s of this._future)s.type===1&&s.removeResource(this.resourceLabel,this.strResource,1);this._future=[],this._past.push(t),this.versionId++}createSnapshot(t){const s=[];for(let a=0,x=this._past.length;a=0;a--)s.push(this._future[a].id);return new kn.b(t,s)}restoreSnapshot(t){const s=t.elements.length;let a=!0,x=0,Z=-1;for(let de=0,Ae=this._past.length;de=s||dt.id!==t.elements[x])&&(a=!1,Z=0),!a&&dt.type===1&&dt.removeResource(this.resourceLabel,this.strResource,0)}let ie=-1;for(let de=this._future.length-1;de>=0;de--,x++){const Ae=this._future[de];a&&(x>=s||Ae.id!==t.elements[x])&&(a=!1,ie=de),!a&&Ae.type===1&&Ae.removeResource(this.resourceLabel,this.strResource,0)}Z!==-1&&(this._past=this._past.slice(0,Z)),ie!==-1&&(this._future=this._future.slice(ie+1)),this.versionId++}getElements(){const t=[],s=[];for(const a of this._past)t.push(a.actual);for(const a of this._future)s.push(a.actual);return{past:t,future:s}}getClosestPastElement(){return this._past.length===0?null:this._past[this._past.length-1]}getSecondClosestPastElement(){return this._past.length<2?null:this._past[this._past.length-2]}getClosestFutureElement(){return this._future.length===0?null:this._future[this._future.length-1]}hasPastElements(){return this._past.length>0}hasFutureElements(){return this._future.length>0}splitPastWorkspaceElement(t,s){for(let a=this._past.length-1;a>=0;a--)if(this._past[a]===t){s.has(this.strResource)?this._past[a]=s.get(this.strResource):this._past.splice(a,1);break}this.versionId++}splitFutureWorkspaceElement(t,s){for(let a=this._future.length-1;a>=0;a--)if(this._future[a]===t){s.has(this.strResource)?this._future[a]=s.get(this.strResource):this._future.splice(a,1);break}this.versionId++}moveBackward(t){this._past.pop(),this._future.push(t),this.versionId++}moveForward(t){this._future.pop(),this._past.push(t),this.versionId++}}class Kr{constructor(t){this.editStacks=t,this._versionIds=[];for(let s=0,a=this.editStacks.length;sa.sourceOrder)&&(a=de,x=Z))}return[a,x]}canUndo(s){if(s instanceof kn.d){const[,x]=this._findClosestUndoElementWithSource(s.id);return!!x}const a=this.getUriComparisonKey(s);if(this._editStacks.has(a)){const x=this._editStacks.get(a);return x.hasPastElements()}return!1}_onError(s,a){Object(So.f)(s);for(const x of a.strResources)this.removeElements(x);this._notificationService.error(s)}_acquireLocks(s){for(const a of s.editStacks)if(a.locked)throw new Error("Cannot acquire edit stack lock");for(const a of s.editStacks)a.locked=!0;return()=>{for(const a of s.editStacks)a.locked=!1}}_safeInvokeWithLocks(s,a,x,Z,ie){const de=this._acquireLocks(x);let Ae;try{Ae=a()}catch(dt){return de(),Z.dispose(),this._onError(dt,s)}return Ae?Ae.then(()=>(de(),Z.dispose(),ie()),dt=>(de(),Z.dispose(),this._onError(dt,s))):(de(),Z.dispose(),ie())}_invokeWorkspacePrepare(s){return sr(this,void 0,void 0,function*(){if(typeof s.actual.prepareUndoRedo=="undefined")return ao.a.None;const a=s.actual.prepareUndoRedo();return typeof a=="undefined"?ao.a.None:a})}_invokeResourcePrepare(s,a){if(s.actual.type!==1||typeof s.actual.prepareUndoRedo=="undefined")return a(ao.a.None);const x=s.actual.prepareUndoRedo();return x?Object(ao.g)(x)?a(x):x.then(Z=>a(Z)):a(ao.a.None)}_getAffectedEditStacks(s){const a=[];for(const x of s.strResources)a.push(this._editStacks.get(x)||_a);return new Kr(a)}_tryToSplitAndUndo(s,a,x,Z){if(a.canSplit())return this._splitPastWorkspaceElement(a,x),this._notificationService.warn(Z),new dr(this._undo(s,0,!0));for(const ie of a.strResources)this.removeElements(ie);return this._notificationService.warn(Z),new dr}_checkWorkspaceUndo(s,a,x,Z){if(a.removedResources)return this._tryToSplitAndUndo(s,a,a.removedResources,be.a({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",a.label,a.removedResources.createMessage()));if(Z&&a.invalidatedResources)return this._tryToSplitAndUndo(s,a,a.invalidatedResources,be.a({key:"cannotWorkspaceUndo",comment:["{0} is a label for an operation. {1} is another message."]},"Could not undo '{0}' across all files. {1}",a.label,a.invalidatedResources.createMessage()));const ie=[];for(const Ae of x.editStacks)Ae.getClosestPastElement()!==a&&ie.push(Ae.resourceLabel);if(ie.length>0)return this._tryToSplitAndUndo(s,a,null,be.a({key:"cannotWorkspaceUndoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because changes were made to {1}",a.label,ie.join(", ")));const de=[];for(const Ae of x.editStacks)Ae.locked&&de.push(Ae.resourceLabel);return de.length>0?this._tryToSplitAndUndo(s,a,null,be.a({key:"cannotWorkspaceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because there is already an undo or redo operation running on {1}",a.label,de.join(", "))):x.isValid()?null:this._tryToSplitAndUndo(s,a,null,be.a({key:"cannotWorkspaceUndoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not undo '{0}' across all files because an undo or redo operation occurred in the meantime",a.label))}_workspaceUndo(s,a,x){const Z=this._getAffectedEditStacks(a),ie=this._checkWorkspaceUndo(s,a,Z,!1);return ie?ie.returnValue:this._confirmAndExecuteWorkspaceUndo(s,a,Z,x)}_isPartOfUndoGroup(s){if(!s.groupId)return!1;for(const[,a]of this._editStacks){const x=a.getClosestPastElement();if(!x)continue;if(x===s){const Z=a.getSecondClosestPastElement();if(Z&&Z.groupId===s.groupId)return!0}if(x.groupId===s.groupId)return!0}return!1}_confirmAndExecuteWorkspaceUndo(s,a,x,Z){return sr(this,void 0,void 0,function*(){if(a.canSplit()&&!this._isPartOfUndoGroup(a)){const Ae=yield this._dialogService.show(ln.a.Info,be.a("confirmWorkspace","Would you like to undo '{0}' across all files?",a.label),[be.a({key:"ok",comment:["{0} denotes a number that is > 1"]},"Undo in {0} Files",x.editStacks.length),be.a("nok","Undo this File"),be.a("cancel","Cancel")],{cancelId:2});if(Ae.choice===2)return;if(Ae.choice===1)return this._splitPastWorkspaceElement(a,null),this._undo(s,0,!0);const dt=this._checkWorkspaceUndo(s,a,x,!1);if(dt)return dt.returnValue;Z=!0}let ie;try{ie=yield this._invokeWorkspacePrepare(a)}catch(Ae){return this._onError(Ae,a)}const de=this._checkWorkspaceUndo(s,a,x,!0);if(de)return ie.dispose(),de.returnValue;for(const Ae of x.editStacks)Ae.moveBackward(a);return this._safeInvokeWithLocks(a,()=>a.actual.undo(),x,ie,()=>this._continueUndoInGroup(a.groupId,Z))})}_resourceUndo(s,a,x){if(!a.isValid){s.flushAllElements();return}if(s.locked){const Z=be.a({key:"cannotResourceUndoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not undo '{0}' because there is already an undo or redo operation running.",a.label);this._notificationService.warn(Z);return}return this._invokeResourcePrepare(a,Z=>(s.moveBackward(a),this._safeInvokeWithLocks(a,()=>a.actual.undo(),new Kr([s]),Z,()=>this._continueUndoInGroup(a.groupId,x))))}_findClosestUndoElementInGroup(s){if(!s)return[null,null];let a=null,x=null;for(const[Z,ie]of this._editStacks){const de=ie.getClosestPastElement();if(!de)continue;de.groupId===s&&((!a||de.groupOrder>a.groupOrder)&&(a=de,x=Z))}return[a,x]}_continueUndoInGroup(s,a){if(!s)return;const[,x]=this._findClosestUndoElementInGroup(s);if(x)return this._undo(x,0,a)}undo(s){if(s instanceof kn.d){const[,a]=this._findClosestUndoElementWithSource(s.id);return a?this._undo(a,s.id,!1):void 0}return typeof s=="string"?this._undo(s,0,!1):this._undo(this.getUriComparisonKey(s),0,!1)}_undo(s,a=0,x){if(!this._editStacks.has(s))return;const Z=this._editStacks.get(s),ie=Z.getClosestPastElement();if(!ie)return;if(ie.groupId){const[Ae,dt]=this._findClosestUndoElementInGroup(ie.groupId);if(ie!==Ae&&dt)return this._undo(dt,a,x)}const de=ie.sourceId!==a||ie.confirmBeforeUndo;if(de&&!x)return this._confirmAndContinueUndo(s,a,ie);try{return ie.type===1?this._workspaceUndo(s,ie,x):this._resourceUndo(Z,ie,x)}finally{Cs&&this._print("undo")}}_confirmAndContinueUndo(s,a,x){return sr(this,void 0,void 0,function*(){const Z=yield this._dialogService.show(ln.a.Info,be.a("confirmDifferentSource","Would you like to undo '{0}'?",x.label),[be.a("confirmDifferentSource.yes","Yes"),be.a("cancel","Cancel")],{cancelId:1});return Z.choice===1?void 0:this._undo(s,a,!0)})}_findClosestRedoElementWithSource(s){if(!s)return[null,null];let a=null,x=null;for(const[Z,ie]of this._editStacks){const de=ie.getClosestFutureElement();if(!de)continue;de.sourceId===s&&((!a||de.sourceOrder0)return this._tryToSplitAndRedo(s,a,null,be.a({key:"cannotWorkspaceRedoDueToChanges",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because changes were made to {1}",a.label,ie.join(", ")));const de=[];for(const Ae of x.editStacks)Ae.locked&&de.push(Ae.resourceLabel);return de.length>0?this._tryToSplitAndRedo(s,a,null,be.a({key:"cannotWorkspaceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because there is already an undo or redo operation running on {1}",a.label,de.join(", "))):x.isValid()?null:this._tryToSplitAndRedo(s,a,null,be.a({key:"cannotWorkspaceRedoDueToInMeantimeUndoRedo",comment:["{0} is a label for an operation. {1} is a list of filenames."]},"Could not redo '{0}' across all files because an undo or redo operation occurred in the meantime",a.label))}_workspaceRedo(s,a){const x=this._getAffectedEditStacks(a),Z=this._checkWorkspaceRedo(s,a,x,!1);return Z?Z.returnValue:this._executeWorkspaceRedo(s,a,x)}_executeWorkspaceRedo(s,a,x){return sr(this,void 0,void 0,function*(){let Z;try{Z=yield this._invokeWorkspacePrepare(a)}catch(de){return this._onError(de,a)}const ie=this._checkWorkspaceRedo(s,a,x,!0);if(ie)return Z.dispose(),ie.returnValue;for(const de of x.editStacks)de.moveForward(a);return this._safeInvokeWithLocks(a,()=>a.actual.redo(),x,Z,()=>this._continueRedoInGroup(a.groupId))})}_resourceRedo(s,a){if(!a.isValid){s.flushAllElements();return}if(s.locked){const x=be.a({key:"cannotResourceRedoDueToInProgressUndoRedo",comment:["{0} is a label for an operation."]},"Could not redo '{0}' because there is already an undo or redo operation running.",a.label);this._notificationService.warn(x);return}return this._invokeResourcePrepare(a,x=>(s.moveForward(a),this._safeInvokeWithLocks(a,()=>a.actual.redo(),new Kr([s]),x,()=>this._continueRedoInGroup(a.groupId))))}_findClosestRedoElementInGroup(s){if(!s)return[null,null];let a=null,x=null;for(const[Z,ie]of this._editStacks){const de=ie.getClosestFutureElement();if(!de)continue;de.groupId===s&&((!a||de.groupOrder{this._register(Object(ve.i)(this._element,a,x=>{if(!this.enabled){ve.c.stop(x);return}this._onDidClick.fire(x)}))}),this._register(Object(ve.i)(this._element,ve.d.KEY_DOWN,a=>{const x=new Qi.a(a);let Z=!1;this.enabled&&(x.equals(3)||x.equals(10))?(this._onDidClick.fire(a),Z=!0):x.equals(9)&&(this._element.blur(),Z=!0),Z&&ve.c.stop(x,!0)})),this._register(Object(ve.i)(this._element,ve.d.MOUSE_OVER,a=>{this._element.classList.contains("disabled")||this.setHoverBackground()})),this._register(Object(ve.i)(this._element,ve.d.MOUSE_OUT,a=>{this.applyStyles()})),this.focusTracker=this._register(Object(ve.Y)(this._element)),this._register(this.focusTracker.onDidFocus(()=>this.setHoverBackground())),this._register(this.focusTracker.onDidBlur(()=>this.applyStyles())),this.applyStyles()}get onDidClick(){return this._onDidClick.event}setHoverBackground(){let t;this.options.secondary?t=this.buttonSecondaryHoverBackground?this.buttonSecondaryHoverBackground.toString():null:t=this.buttonHoverBackground?this.buttonHoverBackground.toString():null,t&&(this._element.style.backgroundColor=t)}style(t){this.buttonForeground=t.buttonForeground,this.buttonBackground=t.buttonBackground,this.buttonHoverBackground=t.buttonHoverBackground,this.buttonSecondaryForeground=t.buttonSecondaryForeground,this.buttonSecondaryBackground=t.buttonSecondaryBackground,this.buttonSecondaryHoverBackground=t.buttonSecondaryHoverBackground,this.buttonBorder=t.buttonBorder,this.applyStyles()}applyStyles(){if(this._element){let t,s;this.options.secondary?(s=this.buttonSecondaryForeground?this.buttonSecondaryForeground.toString():"",t=this.buttonSecondaryBackground?this.buttonSecondaryBackground.toString():""):(s=this.buttonForeground?this.buttonForeground.toString():"",t=this.buttonBackground?this.buttonBackground.toString():"");const a=this.buttonBorder?this.buttonBorder.toString():"";this._element.style.color=s,this._element.style.backgroundColor=t,this._element.style.borderWidth=a?"1px":"",this._element.style.borderStyle=a?"solid":"",this._element.style.borderColor=a}}get element(){return this._element}set label(t){this._element.classList.add("monaco-text-button"),this.options.supportIcons?Object(ve.R)(this._element,...Object(Da.a)(t)):this._element.textContent=t,typeof this.options.title=="string"?this._element.title=this.options.title:this.options.title&&(this._element.title=t)}set enabled(t){t?(this._element.classList.remove("disabled"),this._element.setAttribute("aria-disabled",String(!1)),this._element.tabIndex=0):(this._element.classList.add("disabled"),this._element.setAttribute("aria-disabled",String(!0)))}get enabled(){return!this._element.classList.contains("disabled")}}var xa=e("O/se"),lc=e("HyZH");const Ta="done",Oa="active",Gr="infinite",Ia="discrete",dl={progressBarBackground:Rn.a.fromHex("#0E70C0")};class cl extends ao.a{constructor(t,s){super();this.options=s||Object.create(null),Object(oi.f)(this.options,dl,!1),this.workedVal=0,this.progressBarBackground=this.options.progressBarBackground,this._register(this.showDelayedScheduler=new bo.e(()=>Object(ve.W)(this.element),0)),this.create(t)}create(t){this.element=document.createElement("div"),this.element.classList.add("monaco-progress-container"),this.element.setAttribute("role","progressbar"),this.element.setAttribute("aria-valuemin","0"),t.appendChild(this.element),this.bit=document.createElement("div"),this.bit.classList.add("progress-bit"),this.element.appendChild(this.bit),this.applyStyles()}off(){this.bit.style.width="inherit",this.bit.style.opacity="1",this.element.classList.remove(Oa,Gr,Ia),this.workedVal=0,this.totalWork=void 0}stop(){return this.doDone(!1)}doDone(t){return this.element.classList.add(Ta),this.element.classList.contains(Gr)?(this.bit.style.opacity="0",t?setTimeout(()=>this.off(),200):this.off()):(this.bit.style.width="inherit",t?setTimeout(()=>this.off(),200):this.off()),this}infinite(){return this.bit.style.width="2%",this.bit.style.opacity="1",this.element.classList.remove(Ia,Ta),this.element.classList.add(Oa,Gr),this}getContainer(){return this.element}style(t){this.progressBarBackground=t.progressBarBackground,this.applyStyles()}applyStyles(){if(this.bit){const t=this.progressBarBackground?this.progressBarBackground.toString():"";this.bit.style.backgroundColor=t}}}var ul=e("nD70"),dc=e("CDaH");const Xr={},hl=new ul.a("quick-input-button-icon-");function $r(t){if(!t)return;let s;const a=t.dark.toString();return Xr[a]?s=Xr[a]:(s=hl.nextId(),ve.v(`.${s}`,`background-image: ${ve.s(t.light||t.dark)}`),ve.v(`.vs-dark .${s}, .hc-black .${s}`,`background-image: ${ve.s(t.dark)}`),Xr[a]=s),s}var Mn=e("zdb4"),ml=e("0+8E");const gl=ve.a;class fl extends ao.a{constructor(t){super();this.parent=t,this.onKeyDown=s=>ve.i(this.inputBox.inputElement,ve.d.KEY_DOWN,a=>{s(new Qi.a(a))}),this.onMouseDown=s=>ve.i(this.inputBox.inputElement,ve.d.MOUSE_DOWN,a=>{s(new Ht.a(a))}),this.onDidChange=s=>this.inputBox.onDidChange(s),this.container=ve.q(this.parent,gl(".quick-input-box")),this.inputBox=this._register(new ml.b(this.container,void 0))}get value(){return this.inputBox.value}set value(t){this.inputBox.value=t}select(t=null){this.inputBox.select(t)}isSelectionAtEnd(){return this.inputBox.isSelectionAtEnd()}get placeholder(){return this.inputBox.inputElement.getAttribute("placeholder")||""}set placeholder(t){this.inputBox.setPlaceHolder(t)}get ariaLabel(){return this.inputBox.getAriaLabel()}set ariaLabel(t){this.inputBox.setAriaLabel(t)}get password(){return this.inputBox.inputElement.type==="password"}set password(t){this.inputBox.inputElement.type=t?"password":"text"}setAttribute(t,s){this.inputBox.inputElement.setAttribute(t,s)}removeAttribute(t){this.inputBox.inputElement.removeAttribute(t)}showDecoration(t){t===ln.a.Ignore?this.inputBox.hideMessage():this.inputBox.showMessage({type:t===ln.a.Info?1:t===ln.a.Warning?2:3,content:""})}stylesForType(t){return this.inputBox.stylesForType(t===ln.a.Info?1:t===ln.a.Warning?2:3)}setFocus(){this.inputBox.focus()}layout(){this.inputBox.layout()}style(t){this.inputBox.style(t)}}var pl=e("7lZ/"),bl=e("xONI"),cc=e("q/I2");const cr=ve.a;class Aa{constructor(t,s,a){this.os=s,this.keyElements=new Set,this.options=a||Object.create(null),this.labelBackground=this.options.keybindingLabelBackground,this.labelForeground=this.options.keybindingLabelForeground,this.labelBorder=this.options.keybindingLabelBorder,this.labelBottomBorder=this.options.keybindingLabelBottomBorder,this.labelShadow=this.options.keybindingLabelShadow,this.domNode=ve.q(t,cr(".monaco-keybinding")),this.didEverRender=!1,t.appendChild(this.domNode)}get element(){return this.domNode}set(t,s){if(this.didEverRender&&this.keybinding===t&&Aa.areSame(this.matches,s))return;this.keybinding=t,this.matches=s,this.render()}render(){if(this.clear(),this.keybinding){let[t,s]=this.keybinding.getParts();t&&this.renderPart(this.domNode,t,this.matches?this.matches.firstPart:null),s&&(ve.q(this.domNode,cr("span.monaco-keybinding-key-chord-separator",void 0," ")),this.renderPart(this.domNode,s,this.matches?this.matches.chordPart:null)),this.domNode.title=this.keybinding.getAriaLabel()||""}else this.options&&this.options.renderUnboundKeybindings&&this.renderUnbound(this.domNode);this.applyStyles(),this.didEverRender=!0}clear(){ve.t(this.domNode),this.keyElements.clear()}renderPart(t,s,a){const x=Eo.c.modifierLabels[this.os];s.ctrlKey&&this.renderKey(t,x.ctrlKey,Boolean(a==null?void 0:a.ctrlKey),x.separator),s.shiftKey&&this.renderKey(t,x.shiftKey,Boolean(a==null?void 0:a.shiftKey),x.separator),s.altKey&&this.renderKey(t,x.altKey,Boolean(a==null?void 0:a.altKey),x.separator),s.metaKey&&this.renderKey(t,x.metaKey,Boolean(a==null?void 0:a.metaKey),x.separator);const Z=s.keyLabel;Z&&this.renderKey(t,Z,Boolean(a==null?void 0:a.keyCode),"")}renderKey(t,s,a,x){ve.q(t,this.createKeyElement(s,a?".highlight":"")),x&&ve.q(t,cr("span.monaco-keybinding-key-separator",void 0,x))}renderUnbound(t){ve.q(t,this.createKeyElement(Object(be.a)("unbound","Unbound")))}createKeyElement(t,s=""){const a=cr("span.monaco-keybinding-key"+s,void 0,t);return this.keyElements.add(a),a}style(t){this.labelBackground=t.keybindingLabelBackground,this.labelForeground=t.keybindingLabelForeground,this.labelBorder=t.keybindingLabelBorder,this.labelBottomBorder=t.keybindingLabelBottomBorder,this.labelShadow=t.keybindingLabelShadow,this.applyStyles()}applyStyles(){var t;if(this.element){for(const s of this.keyElements)this.labelBackground&&(s.style.backgroundColor=(t=this.labelBackground)===null||t===void 0?void 0:t.toString()),this.labelBorder&&(s.style.borderColor=this.labelBorder.toString()),this.labelBottomBorder&&(s.style.borderBottomColor=this.labelBottomBorder.toString()),this.labelShadow&&(s.style.boxShadow=`inset 0 -1px 0 ${this.labelShadow}`);this.labelForeground&&(this.element.style.color=this.labelForeground.toString())}}static areSame(t,s){return t===s||!t&&!s?!0:!!t&&!!s&&Object(oi.d)(t.firstPart,s.firstPart)&&Object(oi.d)(t.chordPart,s.chordPart)}}const Ra=new bo.b(()=>{const t=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});return{collator:t,collatorIsNumeric:t.resolvedOptions().numeric}});function vl(t,s,a=!1){const x=t||"",Z=s||"",ie=Ra.value.collator.compare(x,Z);return Ra.value.collatorIsNumeric&&ie===0&&x!==Z?xZ.length)return 1}return 0}var Na=e("ZCR3"),ja=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},El=function(t,s,a,x){function Z(ie){return ie instanceof a?ie:new a(function(de){de(ie)})}return new(a||(a=Promise))(function(ie,de){function Ae(yt){try{At(x.next(yt))}catch(oo){de(oo)}}function dt(yt){try{At(x.throw(yt))}catch(oo){de(oo)}}function At(yt){yt.done?ie(yt.value):Z(yt.value).then(Ae,dt)}At((x=x.apply(t,s||[])).next())})};const Pn=ve.a;class Sl{constructor(t){this.hidden=!1,this._onChecked=new L.b,this.onChecked=this._onChecked.event,Object.assign(this,t)}get checked(){return!!this._checked}set checked(t){t!==this._checked&&(this._checked=t,this._onChecked.fire(t))}dispose(){this._onChecked.dispose()}}class ur{get templateId(){return ur.ID}renderTemplate(t){const s=Object.create(null);s.toDisposeElement=[],s.toDisposeTemplate=[],s.entry=ve.q(t,Pn(".quick-input-list-entry"));const a=ve.q(s.entry,Pn("label.quick-input-list-label"));s.toDisposeTemplate.push(ve.o(a,ve.d.CLICK,dt=>{s.checkbox.offsetParent||dt.preventDefault()})),s.checkbox=ve.q(a,Pn("input.quick-input-list-checkbox")),s.checkbox.type="checkbox",s.toDisposeTemplate.push(ve.o(s.checkbox,ve.d.CHANGE,dt=>{s.element.checked=s.checkbox.checked}));const x=ve.q(a,Pn(".quick-input-list-rows")),Z=ve.q(x,Pn(".quick-input-list-row")),ie=ve.q(x,Pn(".quick-input-list-row"));s.label=new bl.a(Z,{supportHighlights:!0,supportDescriptionHighlights:!0,supportIcons:!0});const de=ve.q(Z,Pn(".quick-input-list-entry-keybinding"));s.keybinding=new Aa(de,Lo.a);const Ae=ve.q(ie,Pn(".quick-input-list-label-meta"));return s.detail=new pl.a(Ae,!0),s.separator=ve.q(s.entry,Pn(".quick-input-list-separator")),s.actionBar=new Co.a(s.entry),s.actionBar.domNode.classList.add("quick-input-list-entry-action-bar"),s.toDisposeTemplate.push(s.actionBar),s}renderElement(t,s,a){a.toDisposeElement=Object(ao.f)(a.toDisposeElement),a.element=t,a.checkbox.checked=t.checked,a.toDisposeElement.push(t.onChecked(dt=>a.checkbox.checked=dt));const{labelHighlights:x,descriptionHighlights:Z,detailHighlights:ie}=t,de=Object.create(null);de.matches=x||[],de.descriptionTitle=t.saneDescription,de.descriptionMatches=Z||[],de.extraClasses=t.item.iconClasses,de.italic=t.item.italic,de.strikethrough=t.item.strikethrough,a.label.setLabel(t.saneLabel,t.saneDescription,de),a.keybinding.set(t.item.keybinding),a.detail.set(t.saneDetail,ie),t.separator&&t.separator.label?(a.separator.textContent=t.separator.label,a.separator.style.display=""):a.separator.style.display="none",a.entry.classList.toggle("quick-input-list-separator-border",!!t.separator),a.actionBar.clear();const Ae=t.item.buttons;Ae&&Ae.length?(a.actionBar.push(Ae.map((dt,At)=>{let yt=dt.iconClass||(dt.iconPath?$r(dt.iconPath):void 0);dt.alwaysVisible&&(yt=yt?`${yt} always-visible`:"always-visible");const oo=new ti.a(`id-${At}`,"",yt,!0,()=>El(this,void 0,void 0,function*(){t.fireButtonTriggered({button:dt,item:t.item})}));return oo.tooltip=dt.tooltip||"",oo}),{icon:!0,label:!1}),a.entry.classList.add("has-actions")):a.entry.classList.remove("has-actions")}disposeElement(t,s,a){a.toDisposeElement=Object(ao.f)(a.toDisposeElement)}disposeTemplate(t){t.toDisposeElement=Object(ao.f)(t.toDisposeElement),t.toDisposeTemplate=Object(ao.f)(t.toDisposeTemplate)}}ur.ID="listelement";class wl{getHeight(t){return t.saneDetail?44:22}getTemplateId(t){return ur.ID}}var en;(function(t){t[t.First=1]="First",t[t.Second=2]="Second",t[t.Last=3]="Last",t[t.Next=4]="Next",t[t.Previous=5]="Previous",t[t.NextPage=6]="NextPage",t[t.PreviousPage=7]="PreviousPage"})(en||(en={}));class Yr{constructor(t,s,a){this.parent=t,this.inputElements=[],this.elements=[],this.elementsToIndexes=new Map,this.matchOnDescription=!1,this.matchOnDetail=!1,this.matchOnLabel=!0,this.matchOnMeta=!0,this.sortByLabel=!0,this._onChangedAllVisibleChecked=new L.b,this.onChangedAllVisibleChecked=this._onChangedAllVisibleChecked.event,this._onChangedCheckedCount=new L.b,this.onChangedCheckedCount=this._onChangedCheckedCount.event,this._onChangedVisibleCount=new L.b,this.onChangedVisibleCount=this._onChangedVisibleCount.event,this._onChangedCheckedElements=new L.b,this.onChangedCheckedElements=this._onChangedCheckedElements.event,this._onButtonTriggered=new L.b,this.onButtonTriggered=this._onButtonTriggered.event,this._onKeyDown=new L.b,this.onKeyDown=this._onKeyDown.event,this._onLeave=new L.b,this.onLeave=this._onLeave.event,this._fireCheckedEvents=!0,this.elementDisposables=[],this.disposables=[],this.id=s,this.container=ve.q(this.parent,Pn(".quick-input-list"));const x=new wl,Z=new _l;this.list=a.createList("QuickInput",this.container,x,[new ur],{identityProvider:{getId:ie=>ie.saneLabel},setRowLineHeight:!1,multipleSelectionSupport:!1,horizontalScrolling:!1,accessibilityProvider:Z}),this.list.getHTMLElement().id=s,this.disposables.push(this.list),this.disposables.push(this.list.onKeyDown(ie=>{const de=new Qi.a(ie);switch(de.keyCode){case 10:this.toggleCheckbox();break;case 31:(Lo.f?ie.metaKey:ie.ctrlKey)&&this.list.setFocus(Object(Ii.r)(this.list.length));break;case 16:const Ae=this.list.getFocus();Ae.length===1&&Ae[0]===0&&this._onLeave.fire();break;case 18:const dt=this.list.getFocus();dt.length===1&&dt[0]===this.list.length-1&&this._onLeave.fire();break}this._onKeyDown.fire(de)})),this.disposables.push(this.list.onMouseDown(ie=>{ie.browserEvent.button!==2&&ie.browserEvent.preventDefault()})),this.disposables.push(ve.i(this.container,ve.d.CLICK,ie=>{(ie.x||ie.y)&&this._onLeave.fire()})),this.disposables.push(this.list.onMouseMiddleClick(ie=>{this._onLeave.fire()})),this.disposables.push(this.list.onContextMenu(ie=>{typeof ie.index=="number"&&(ie.browserEvent.preventDefault(),this.list.setSelection([ie.index]))})),this.disposables.push(this._onChangedAllVisibleChecked,this._onChangedCheckedCount,this._onChangedVisibleCount,this._onChangedCheckedElements,this._onButtonTriggered,this._onLeave,this._onKeyDown)}get onDidChangeFocus(){return L.c.map(this.list.onDidChangeFocus,t=>t.elements.map(s=>s.item))}get onDidChangeSelection(){return L.c.map(this.list.onDidChangeSelection,t=>({items:t.elements.map(s=>s.item),event:t.browserEvent}))}get scrollTop(){return this.list.scrollTop}set scrollTop(t){this.list.scrollTop=t}getAllVisibleChecked(){return this.allVisibleChecked(this.elements,!1)}allVisibleChecked(t,s=!0){for(let a=0,x=t.length;a{s.hidden||(s.checked=t)})}finally{this._fireCheckedEvents=!0,this.fireCheckedEvents()}}setElements(t){this.elementDisposables=Object(ao.f)(this.elementDisposables);const s=a=>this.fireButtonTriggered(a);this.inputElements=t,this.elements=t.reduce((a,x,Z)=>{var ie,de,Ae;if(x.type!=="separator"){const dt=Z&&t[Z-1],At=x.label&&x.label.replace(/\r?\n/g," "),yt=x.meta&&x.meta.replace(/\r?\n/g," "),oo=x.description&&x.description.replace(/\r?\n/g," "),jo=x.detail&&x.detail.replace(/\r?\n/g," "),Xo=x.ariaLabel||[At,oo,jo].map(Jo=>Object(Wi.c)(Jo)).filter(Jo=>!!Jo).join(", ");a.push(new Sl({index:Z,item:x,saneLabel:At,saneMeta:yt,saneAriaLabel:Xo,saneDescription:oo,saneDetail:jo,labelHighlights:(ie=x.highlights)===null||ie===void 0?void 0:ie.label,descriptionHighlights:(de=x.highlights)===null||de===void 0?void 0:de.description,detailHighlights:(Ae=x.highlights)===null||Ae===void 0?void 0:Ae.detail,checked:!1,separator:dt&&dt.type==="separator"?dt:void 0,fireButtonTriggered:s}))}return a},[]),this.elementDisposables.push(...this.elements),this.elementDisposables.push(...this.elements.map(a=>a.onChecked(()=>this.fireCheckedEvents()))),this.elementsToIndexes=this.elements.reduce((a,x,Z)=>(a.set(x.item,Z),a),new Map),this.list.splice(0,this.list.length),this.list.splice(0,this.list.length,this.elements),this._onChangedVisibleCount.fire(this.elements.length)}getFocusedElements(){return this.list.getFocusedElements().map(t=>t.item)}setFocusedElements(t){if(this.list.setFocus(t.filter(s=>this.elementsToIndexes.has(s)).map(s=>this.elementsToIndexes.get(s))),t.length>0){const s=this.list.getFocus()[0];typeof s=="number"&&this.list.reveal(s)}}getActiveDescendant(){return this.list.getHTMLElement().getAttribute("aria-activedescendant")}setSelectedElements(t){this.list.setSelection(t.filter(s=>this.elementsToIndexes.has(s)).map(s=>this.elementsToIndexes.get(s)))}getCheckedElements(){return this.elements.filter(t=>t.checked).map(t=>t.item)}setCheckedElements(t){try{this._fireCheckedEvents=!1;const s=new Set;for(const a of t)s.add(a);for(const a of this.elements)a.checked=s.has(a.item)}finally{this._fireCheckedEvents=!0,this.fireCheckedEvents()}}set enabled(t){this.list.getHTMLElement().style.pointerEvents=t?"":"none"}focus(t){if(!this.list.length)return;t===en.Next&&this.list.getFocus()[0]===this.list.length-1&&(t=en.First),t===en.Previous&&this.list.getFocus()[0]===0&&(t=en.Last),t===en.Second&&this.list.length<2&&(t=en.First);switch(t){case en.First:this.list.focusFirst();break;case en.Second:this.list.focusNth(1);break;case en.Last:this.list.focusLast();break;case en.Next:this.list.focusNext();break;case en.Previous:this.list.focusPrevious();break;case en.NextPage:this.list.focusNextPage();break;case en.PreviousPage:this.list.focusPreviousPage();break}const s=this.list.getFocus()[0];typeof s=="number"&&this.list.reveal(s)}clearFocus(){this.list.setFocus([])}domFocus(){this.list.domFocus()}layout(t){this.list.getHTMLElement().style.maxHeight=t?`calc(${Math.floor(t/44)*44}px)`:"",this.list.layout()}filter(t){if(!(this.sortByLabel||this.matchOnLabel||this.matchOnDescription||this.matchOnDetail))return this.list.layout(),!1;if(t=t.trim(),!t||!(this.matchOnLabel||this.matchOnDescription||this.matchOnDetail))this.elements.forEach(a=>{a.labelHighlights=void 0,a.descriptionHighlights=void 0,a.detailHighlights=void 0,a.hidden=!1;const x=a.index&&this.inputElements[a.index-1];a.separator=x&&x.type==="separator"?x:void 0});else{let a;this.elements.forEach(x=>{const Z=this.matchOnLabel?Object(xo.p)(Object(zi.c)(t,Object(zi.d)(x.saneLabel))):void 0,ie=this.matchOnDescription?Object(xo.p)(Object(zi.c)(t,Object(zi.d)(x.saneDescription||""))):void 0,de=this.matchOnDetail?Object(xo.p)(Object(zi.c)(t,Object(zi.d)(x.saneDetail||""))):void 0,Ae=this.matchOnMeta?Object(xo.p)(Object(zi.c)(t,Object(zi.d)(x.saneMeta||""))):void 0;if(Z||ie||de||Ae?(x.labelHighlights=Z,x.descriptionHighlights=ie,x.detailHighlights=de,x.hidden=!1):(x.labelHighlights=void 0,x.descriptionHighlights=void 0,x.detailHighlights=void 0,x.hidden=!x.item.alwaysShow),x.separator=void 0,!this.sortByLabel){const dt=x.index&&this.inputElements[x.index-1];a=dt&&dt.type==="separator"?dt:a,a&&!x.hidden&&(x.separator=a,a=void 0)}})}const s=this.elements.filter(a=>!a.hidden);if(this.sortByLabel&&t){const a=t.toLowerCase();s.sort((x,Z)=>Ll(x,Z,a))}return this.elementsToIndexes=s.reduce((a,x,Z)=>(a.set(x.item,Z),a),new Map),this.list.splice(0,this.list.length,s),this.list.setFocus([]),this.list.layout(),this._onChangedAllVisibleChecked.fire(this.getAllVisibleChecked()),this._onChangedVisibleCount.fire(s.length),!0}toggleCheckbox(){try{this._fireCheckedEvents=!1;const t=this.list.getFocusedElements(),s=this.allVisibleChecked(t);for(const a of t)a.checked=!s}finally{this._fireCheckedEvents=!0,this.fireCheckedEvents()}}display(t){this.container.style.display=t?"":"none"}isDisplayed(){return this.container.style.display!=="none"}dispose(){this.elementDisposables=Object(ao.f)(this.elementDisposables),this.disposables=Object(ao.f)(this.disposables)}fireCheckedEvents(){this._fireCheckedEvents&&(this._onChangedAllVisibleChecked.fire(this.getAllVisibleChecked()),this._onChangedCheckedCount.fire(this.getCheckedCount()),this._onChangedCheckedElements.fire(this.getCheckedElements()))}fireButtonTriggered(t){this._onButtonTriggered.fire(t)}style(t){this.list.style(t)}}ja([Na.a],Yr.prototype,"onDidChangeFocus",null),ja([Na.a],Yr.prototype,"onDidChangeSelection",null);function Ll(t,s,a){const x=t.labelHighlights||[],Z=s.labelHighlights||[];return x.length&&!Z.length?-1:!x.length&&Z.length?1:x.length===0&&Z.length===0?0:Cl(t.saneLabel,s.saneLabel,a)}class _l{getWidgetAriaLabel(){return Object(be.a)("quickInput","Quick Input")}getAriaLabel(t){return t.saneAriaLabel}getWidgetRole(){return"listbox"}getRole(){return"option"}}var ka=function(t,s,a,x){function Z(ie){return ie instanceof a?ie:new a(function(de){de(ie)})}return new(a||(a=Promise))(function(ie,de){function Ae(yt){try{At(x.next(yt))}catch(oo){de(oo)}}function dt(yt){try{At(x.throw(yt))}catch(oo){de(oo)}}function At(yt){yt.done?ie(yt.value):Z(yt.value).then(Ae,dt)}At((x=x.apply(t,s||[])).next())})};const Ln=ve.a,Dl=Object(Wi.e)("quick-input-back",Wi.b.arrowLeft),Zr={iconClass:Dl.classNames,tooltip:Object(be.a)("quickInput.back","Back"),handle:-1};class Qr extends ao.a{constructor(t){super();this.ui=t,this.visible=!1,this._enabled=!0,this._busy=!1,this._ignoreFocusOut=!1,this._buttons=[],this.noValidationMessage=Qr.noPromptMessage,this._severity=ln.a.Ignore,this.buttonsUpdated=!1,this.onDidTriggerButtonEmitter=this._register(new L.b),this.onDidHideEmitter=this._register(new L.b),this.onDisposeEmitter=this._register(new L.b),this.visibleDisposables=this._register(new ao.b),this.onDidHide=this.onDidHideEmitter.event}get title(){return this._title}set title(t){this._title=t,this.update()}get description(){return this._description}set description(t){this._description=t,this.update()}get step(){return this._steps}set step(t){this._steps=t,this.update()}get totalSteps(){return this._totalSteps}set totalSteps(t){this._totalSteps=t,this.update()}get enabled(){return this._enabled}set enabled(t){this._enabled=t,this.update()}get contextKey(){return this._contextKey}set contextKey(t){this._contextKey=t,this.update()}get busy(){return this._busy}set busy(t){this._busy=t,this.update()}get ignoreFocusOut(){return this._ignoreFocusOut}set ignoreFocusOut(t){const s=this._ignoreFocusOut!==t&&!Lo.c;this._ignoreFocusOut=t&&!Lo.c,s&&this.update()}get buttons(){return this._buttons}set buttons(t){this._buttons=t,this.buttonsUpdated=!0,this.update()}get validationMessage(){return this._validationMessage}set validationMessage(t){this._validationMessage=t,this.update()}get severity(){return this._severity}set severity(t){this._severity=t,this.update()}show(){if(this.visible)return;this.visibleDisposables.add(this.ui.onDidTriggerButton(t=>{this.buttons.indexOf(t)!==-1&&this.onDidTriggerButtonEmitter.fire(t)})),this.ui.show(this),this.visible=!0,this._lastValidationMessage=void 0,this._lastSeverity=void 0,this.buttons.length&&(this.buttonsUpdated=!0),this.update()}hide(){if(!this.visible)return;this.ui.hide()}didHide(t=Mn.c.Other){this.visible=!1,this.visibleDisposables.clear(),this.onDidHideEmitter.fire({reason:t})}update(){if(!this.visible)return;const t=this.getTitle();t&&this.ui.title.textContent!==t?this.ui.title.textContent=t:!t&&this.ui.title.innerHTML!==" "&&(this.ui.title.innerText="\xA0");const s=this.getDescription();if(this.ui.description1.textContent!==s&&(this.ui.description1.textContent=s),this.ui.description2.textContent!==s&&(this.ui.description2.textContent=s),this.busy&&!this.busyDelay&&(this.busyDelay=new bo.g,this.busyDelay.setIfNotSet(()=>{this.visible&&this.ui.progressBar.infinite()},800)),!this.busy&&this.busyDelay&&(this.ui.progressBar.stop(),this.busyDelay.cancel(),this.busyDelay=void 0),this.buttonsUpdated){this.buttonsUpdated=!1,this.ui.leftActionBar.clear();const x=this.buttons.filter(ie=>ie===Zr);this.ui.leftActionBar.push(x.map((ie,de)=>{const Ae=new ti.a(`id-${de}`,"",ie.iconClass||$r(ie.iconPath),!0,()=>ka(this,void 0,void 0,function*(){this.onDidTriggerButtonEmitter.fire(ie)}));return Ae.tooltip=ie.tooltip||"",Ae}),{icon:!0,label:!1}),this.ui.rightActionBar.clear();const Z=this.buttons.filter(ie=>ie!==Zr);this.ui.rightActionBar.push(Z.map((ie,de)=>{const Ae=new ti.a(`id-${de}`,"",ie.iconClass||$r(ie.iconPath),!0,()=>ka(this,void 0,void 0,function*(){this.onDidTriggerButtonEmitter.fire(ie)}));return Ae.tooltip=ie.tooltip||"",Ae}),{icon:!0,label:!1})}this.ui.ignoreFocusOut=this.ignoreFocusOut,this.ui.setEnabled(this.enabled),this.ui.setContextKey(this.contextKey);const a=this.validationMessage||this.noValidationMessage;this._lastValidationMessage!==a&&(this._lastValidationMessage=a,ve.R(this.ui.message,...Object(Da.a)(a))),this._lastSeverity!==this.severity&&(this._lastSeverity=this.severity,this.showMessageDecoration(this.severity))}getTitle(){return this.title&&this.step?`${this.title} (${this.getSteps()})`:this.title?this.title:this.step?this.getSteps():""}getDescription(){return this.description||""}getSteps(){return this.step&&this.totalSteps?Object(be.a)("quickInput.steps","{0}/{1}",this.step,this.totalSteps):this.step?String(this.step):""}showMessageDecoration(t){if(this.ui.inputBox.showDecoration(t),t!==ln.a.Ignore){const s=this.ui.inputBox.stylesForType(t);this.ui.message.style.color=s.foreground?`${s.foreground}`:"",this.ui.message.style.backgroundColor=s.background?`${s.background}`:"",this.ui.message.style.border=s.border?`1px solid ${s.border}`:"",this.ui.message.style.paddingBottom="4px"}else this.ui.message.style.color="",this.ui.message.style.backgroundColor="",this.ui.message.style.border="",this.ui.message.style.paddingBottom=""}dispose(){this.hide(),this.onDisposeEmitter.fire(),super.dispose()}}Qr.noPromptMessage=Object(be.a)("inputModeEntry","Press 'Enter' to confirm your input or 'Escape' to cancel");class hr extends Qr{constructor(){super(...arguments);this._value="",this.onDidChangeValueEmitter=this._register(new L.b),this.onWillAcceptEmitter=this._register(new L.b),this.onDidAcceptEmitter=this._register(new L.b),this.onDidCustomEmitter=this._register(new L.b),this._items=[],this.itemsUpdated=!1,this._canSelectMany=!1,this._canAcceptInBackground=!1,this._matchOnDescription=!1,this._matchOnDetail=!1,this._matchOnLabel=!0,this._sortByLabel=!0,this._autoFocusOnList=!0,this._keepScrollPosition=!1,this._itemActivation=this.ui.isScreenReaderOptimized()?Mn.a.NONE:Mn.a.FIRST,this._activeItems=[],this.activeItemsUpdated=!1,this.activeItemsToConfirm=[],this.onDidChangeActiveEmitter=this._register(new L.b),this._selectedItems=[],this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=[],this.onDidChangeSelectionEmitter=this._register(new L.b),this.onDidTriggerItemButtonEmitter=this._register(new L.b),this.valueSelectionUpdated=!0,this._ok="default",this._customButton=!1,this.filterValue=t=>t,this.onDidChangeValue=this.onDidChangeValueEmitter.event,this.onWillAccept=this.onWillAcceptEmitter.event,this.onDidAccept=this.onDidAcceptEmitter.event,this.onDidChangeActive=this.onDidChangeActiveEmitter.event,this.onDidChangeSelection=this.onDidChangeSelectionEmitter.event,this.onDidTriggerItemButton=this.onDidTriggerItemButtonEmitter.event}get quickNavigate(){return this._quickNavigate}set quickNavigate(t){this._quickNavigate=t,this.update()}get value(){return this._value}set value(t){this._value!==t&&(this._value=t||"",this.update(),this.onDidChangeValueEmitter.fire(this._value))}set ariaLabel(t){this._ariaLabel=t,this.update()}get ariaLabel(){return this._ariaLabel}get placeholder(){return this._placeholder}set placeholder(t){this._placeholder=t,this.update()}get items(){return this._items}get scrollTop(){return this.ui.list.scrollTop}set scrollTop(t){this.ui.list.scrollTop=t}set items(t){this._items=t,this.itemsUpdated=!0,this.update()}get canSelectMany(){return this._canSelectMany}set canSelectMany(t){this._canSelectMany=t,this.update()}get canAcceptInBackground(){return this._canAcceptInBackground}set canAcceptInBackground(t){this._canAcceptInBackground=t}get matchOnDescription(){return this._matchOnDescription}set matchOnDescription(t){this._matchOnDescription=t,this.update()}get matchOnDetail(){return this._matchOnDetail}set matchOnDetail(t){this._matchOnDetail=t,this.update()}get matchOnLabel(){return this._matchOnLabel}set matchOnLabel(t){this._matchOnLabel=t,this.update()}get sortByLabel(){return this._sortByLabel}set sortByLabel(t){this._sortByLabel=t,this.update()}get autoFocusOnList(){return this._autoFocusOnList}set autoFocusOnList(t){this._autoFocusOnList=t,this.update()}get keepScrollPosition(){return this._keepScrollPosition}set keepScrollPosition(t){this._keepScrollPosition=t}get itemActivation(){return this._itemActivation}set itemActivation(t){this._itemActivation=t}get activeItems(){return this._activeItems}set activeItems(t){this._activeItems=t,this.activeItemsUpdated=!0,this.update()}get selectedItems(){return this._selectedItems}set selectedItems(t){this._selectedItems=t,this.selectedItemsUpdated=!0,this.update()}get keyMods(){return this._quickNavigate?Mn.b:this.ui.keyMods}set valueSelection(t){this._valueSelection=t,this.valueSelectionUpdated=!0,this.update()}get customButton(){return this._customButton}set customButton(t){this._customButton=t,this.update()}get customLabel(){return this._customButtonLabel}set customLabel(t){this._customButtonLabel=t,this.update()}get customHover(){return this._customButtonHover}set customHover(t){this._customButtonHover=t,this.update()}get ok(){return this._ok}set ok(t){this._ok=t,this.update()}get hideInput(){return!!this._hideInput}set hideInput(t){this._hideInput=t,this.update()}trySelectFirst(){this.autoFocusOnList&&(this.canSelectMany||this.ui.list.focus(en.First))}show(){this.visible||(this.visibleDisposables.add(this.ui.inputBox.onDidChange(t=>{if(t===this.value)return;this._value=t;const s=this.ui.list.filter(this.filterValue(this.ui.inputBox.value));s&&this.trySelectFirst(),this.onDidChangeValueEmitter.fire(t)})),this.visibleDisposables.add(this.ui.inputBox.onMouseDown(t=>{this.autoFocusOnList||this.ui.list.clearFocus()})),this.visibleDisposables.add((this._hideInput?this.ui.list:this.ui.inputBox).onKeyDown(t=>{switch(t.keyCode){case 18:this.ui.list.focus(en.Next),this.canSelectMany&&this.ui.list.domFocus(),ve.c.stop(t,!0);break;case 16:this.ui.list.getFocusedElements().length?this.ui.list.focus(en.Previous):this.ui.list.focus(en.Last),this.canSelectMany&&this.ui.list.domFocus(),ve.c.stop(t,!0);break;case 12:this.ui.list.focus(en.NextPage),this.canSelectMany&&this.ui.list.domFocus(),ve.c.stop(t,!0);break;case 11:this.ui.list.focus(en.PreviousPage),this.canSelectMany&&this.ui.list.domFocus(),ve.c.stop(t,!0);break;case 17:if(!this._canAcceptInBackground)return;if(!this.ui.inputBox.isSelectionAtEnd())return;this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!0));break;case 14:(t.ctrlKey||t.metaKey)&&!t.shiftKey&&!t.altKey&&(this.ui.list.focus(en.First),ve.c.stop(t,!0));break;case 13:(t.ctrlKey||t.metaKey)&&!t.shiftKey&&!t.altKey&&(this.ui.list.focus(en.Last),ve.c.stop(t,!0));break}})),this.visibleDisposables.add(this.ui.onDidAccept(()=>{this.canSelectMany?this.ui.list.getCheckedElements().length||(this._selectedItems=[],this.onDidChangeSelectionEmitter.fire(this.selectedItems)):this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems)),this.handleAccept(!1)})),this.visibleDisposables.add(this.ui.onDidCustom(()=>{this.onDidCustomEmitter.fire()})),this.visibleDisposables.add(this.ui.list.onDidChangeFocus(t=>{if(this.activeItemsUpdated)return;if(this.activeItemsToConfirm!==this._activeItems&&Object(Ii.g)(t,this._activeItems,(s,a)=>s===a))return;this._activeItems=t,this.onDidChangeActiveEmitter.fire(t)})),this.visibleDisposables.add(this.ui.list.onDidChangeSelection(({items:t,event:s})=>{if(this.canSelectMany){t.length&&this.ui.list.setSelectedElements([]);return}if(this.selectedItemsToConfirm!==this._selectedItems&&Object(Ii.g)(t,this._selectedItems,(a,x)=>a===x))return;this._selectedItems=t,this.onDidChangeSelectionEmitter.fire(t),t.length&&this.handleAccept(s instanceof MouseEvent&&s.button===1)})),this.visibleDisposables.add(this.ui.list.onChangedCheckedElements(t=>{if(!this.canSelectMany)return;if(this.selectedItemsToConfirm!==this._selectedItems&&Object(Ii.g)(t,this._selectedItems,(s,a)=>s===a))return;this._selectedItems=t,this.onDidChangeSelectionEmitter.fire(t)})),this.visibleDisposables.add(this.ui.list.onButtonTriggered(t=>this.onDidTriggerItemButtonEmitter.fire(t))),this.visibleDisposables.add(this.registerQuickNavigation()),this.valueSelectionUpdated=!0),super.show()}handleAccept(t){let s=!1;this.onWillAcceptEmitter.fire({veto:()=>s=!0}),s||this.onDidAcceptEmitter.fire({inBackground:t})}registerQuickNavigation(){return ve.i(this.ui.container,ve.d.KEY_UP,t=>{if(this.canSelectMany||!this._quickNavigate)return;const s=new Qi.a(t),a=s.keyCode,x=this._quickNavigate.keybindings,Z=x.some(ie=>{const[de,Ae]=ie.getParts();return Ae?!1:de.shiftKey&&a===4?!(s.ctrlKey||s.altKey||s.metaKey):de.altKey&&a===6||de.ctrlKey&&a===5?!0:!!(de.metaKey&&a===57)});Z&&(this.activeItems[0]&&(this._selectedItems=[this.activeItems[0]],this.onDidChangeSelectionEmitter.fire(this.selectedItems),this.handleAccept(!1)),this._quickNavigate=void 0)})}update(){if(!this.visible)return;const t=this.keepScrollPosition?this.scrollTop:0,s=!!this._hideInput&&this._items.length>0;this.ui.container.classList.toggle("hidden-input",s&&!this.description);const a={title:!!this.title||!!this.step||!!this.buttons.length,description:!!this.description,checkAll:this.canSelectMany&&!this._hideCheckAll,checkBox:this.canSelectMany,inputBox:!s,progressBar:!s,visibleCount:!0,count:this.canSelectMany,ok:this.ok==="default"?this.canSelectMany:this.ok,list:!0,message:!!this.validationMessage,customButton:this.customButton};this.ui.setVisibilities(a),super.update(),this.ui.inputBox.value!==this.value&&(this.ui.inputBox.value=this.value),this.valueSelectionUpdated&&(this.valueSelectionUpdated=!1,this.ui.inputBox.select(this._valueSelection&&{start:this._valueSelection[0],end:this._valueSelection[1]})),this.ui.inputBox.placeholder!==(this.placeholder||"")&&(this.ui.inputBox.placeholder=this.placeholder||"");const x=this.ariaLabel||this.placeholder||hr.DEFAULT_ARIA_LABEL;if(this.ui.inputBox.ariaLabel!==x&&(this.ui.inputBox.ariaLabel=x),this.ui.list.matchOnDescription=this.matchOnDescription,this.ui.list.matchOnDetail=this.matchOnDetail,this.ui.list.matchOnLabel=this.matchOnLabel,this.ui.list.sortByLabel=this.sortByLabel,this.itemsUpdated){this.itemsUpdated=!1,this.ui.list.setElements(this.items),this.ui.list.filter(this.filterValue(this.ui.inputBox.value)),this.ui.checkAll.checked=this.ui.list.getAllVisibleChecked(),this.ui.visibleCount.setCount(this.ui.list.getVisibleCount()),this.ui.count.setCount(this.ui.list.getCheckedCount());switch(this._itemActivation){case Mn.a.NONE:this._itemActivation=Mn.a.FIRST;break;case Mn.a.SECOND:this.ui.list.focus(en.Second),this._itemActivation=Mn.a.FIRST;break;case Mn.a.LAST:this.ui.list.focus(en.Last),this._itemActivation=Mn.a.FIRST;break;default:this.trySelectFirst();break}}this.ui.container.classList.contains("show-checkboxes")!==!!this.canSelectMany&&(this.canSelectMany?this.ui.list.clearFocus():this.trySelectFirst()),this.activeItemsUpdated&&(this.activeItemsUpdated=!1,this.activeItemsToConfirm=this._activeItems,this.ui.list.setFocusedElements(this.activeItems),this.activeItemsToConfirm===this._activeItems&&(this.activeItemsToConfirm=null)),this.selectedItemsUpdated&&(this.selectedItemsUpdated=!1,this.selectedItemsToConfirm=this._selectedItems,this.canSelectMany?this.ui.list.setCheckedElements(this.selectedItems):this.ui.list.setSelectedElements(this.selectedItems),this.selectedItemsToConfirm===this._selectedItems&&(this.selectedItemsToConfirm=null)),this.ui.customButton.label=this.customLabel||"",this.ui.customButton.element.title=this.customHover||"",this.ui.setComboboxAccessibility(!0),a.inputBox||(this.ui.list.domFocus(),this.canSelectMany&&this.ui.list.focus(en.First)),this.keepScrollPosition&&(this.scrollTop=t)}}hr.DEFAULT_ARIA_LABEL=Object(be.a)("quickInputBox.ariaLabel","Type to narrow down results.");class Jr extends ao.a{constructor(t){super();this.options=t,this.comboboxAccessibility=!1,this.enabled=!0,this.onDidAcceptEmitter=this._register(new L.b),this.onDidCustomEmitter=this._register(new L.b),this.onDidTriggerButtonEmitter=this._register(new L.b),this.keyMods={ctrlCmd:!1,alt:!1},this.controller=null,this.onShowEmitter=this._register(new L.b),this.onShow=this.onShowEmitter.event,this.onHideEmitter=this._register(new L.b),this.onHide=this.onHideEmitter.event,this.idPrefix=t.idPrefix,this.parentElement=t.container,this.styles=t.styles,this.registerKeyModsListeners()}registerKeyModsListeners(){const t=s=>{this.keyMods.ctrlCmd=s.ctrlKey||s.metaKey,this.keyMods.alt=s.altKey};this._register(ve.i(window,ve.d.KEY_DOWN,t,!0)),this._register(ve.i(window,ve.d.KEY_UP,t,!0)),this._register(ve.i(window,ve.d.MOUSE_DOWN,t,!0))}getUI(){if(this.ui)return this.ui;const t=ve.q(this.parentElement,Ln(".quick-input-widget.show-file-icons"));t.tabIndex=-1,t.style.display="none";const s=ve.w(t),a=ve.q(t,Ln(".quick-input-titlebar")),x=this._register(new Co.a(a));x.domNode.classList.add("quick-input-left-action-bar");const Z=ve.q(a,Ln(".quick-input-title")),ie=this._register(new Co.a(a));ie.domNode.classList.add("quick-input-right-action-bar");const de=ve.q(t,Ln(".quick-input-description")),Ae=ve.q(t,Ln(".quick-input-header")),dt=ve.q(Ae,Ln("input.quick-input-check-all"));dt.type="checkbox",this._register(ve.o(dt,ve.d.CHANGE,fi=>{const un=dt.checked;sn.setAllVisibleChecked(un)})),this._register(ve.i(dt,ve.d.CLICK,fi=>{(fi.x||fi.y)&&jo.setFocus()}));const At=ve.q(Ae,Ln(".quick-input-description")),yt=ve.q(Ae,Ln(".quick-input-and-message")),oo=ve.q(yt,Ln(".quick-input-filter")),jo=this._register(new fl(oo));jo.setAttribute("aria-describedby",`${this.idPrefix}message`);const Xo=ve.q(oo,Ln(".quick-input-visible-count"));Xo.setAttribute("aria-live","polite"),Xo.setAttribute("aria-atomic","true");const Jo=new xa.a(Xo,{countFormat:Object(be.a)({key:"quickInput.visibleCount",comment:["This tells the user how many items are shown in a list of items to select from. The items can be anything. Currently not visible, but read by screen readers."]},"{0} Results")}),yi=ve.q(oo,Ln(".quick-input-count"));yi.setAttribute("aria-live","polite");const gi=new xa.a(yi,{countFormat:Object(be.a)({key:"quickInput.countSelected",comment:["This tells the user how many items are selected in a list of items to select from. The items can be anything."]},"{0} Selected")}),Di=ve.q(Ae,Ln(".quick-input-action")),pi=new Ma(Di);pi.label=Object(be.a)("ok","OK"),this._register(pi.onDidClick(fi=>{this.onDidAcceptEmitter.fire()}));const vi=ve.q(Ae,Ln(".quick-input-action")),yn=new Ma(vi);yn.label=Object(be.a)("custom","Custom"),this._register(yn.onDidClick(fi=>{this.onDidCustomEmitter.fire()}));const os=ve.q(yt,Ln(`#${this.idPrefix}message.quick-input-message`)),sn=this._register(new Yr(t,this.idPrefix+"list",this.options));this._register(sn.onChangedAllVisibleChecked(fi=>{dt.checked=fi})),this._register(sn.onChangedVisibleCount(fi=>{Jo.setCount(fi)})),this._register(sn.onChangedCheckedCount(fi=>{gi.setCount(fi)})),this._register(sn.onLeave(()=>{setTimeout(()=>{jo.setFocus(),this.controller instanceof hr&&this.controller.canSelectMany&&sn.clearFocus()},0)})),this._register(sn.onDidChangeFocus(()=>{this.comboboxAccessibility&&this.getUI().inputBox.setAttribute("aria-activedescendant",this.getUI().list.getActiveDescendant()||"")}));const Hs=new cl(t);Hs.getContainer().classList.add("quick-input-progress");const Ki=ve.Y(t);return this._register(Ki),this._register(ve.i(t,ve.d.FOCUS,fi=>{this.previousFocusElement=fi.relatedTarget instanceof HTMLElement?fi.relatedTarget:void 0},!0)),this._register(Ki.onDidBlur(()=>{!this.getUI().ignoreFocusOut&&!this.options.ignoreFocusOut()&&this.hide(Mn.c.Blur),this.previousFocusElement=void 0})),this._register(ve.i(t,ve.d.FOCUS,fi=>{jo.setFocus()})),this._register(ve.i(t,ve.d.KEY_DOWN,fi=>{const un=new Qi.a(fi);switch(un.keyCode){case 3:ve.c.stop(fi,!0),this.onDidAcceptEmitter.fire();break;case 9:ve.c.stop(fi,!0),this.hide(Mn.c.Gesture);break;case 2:if(!un.altKey&&!un.ctrlKey&&!un.metaKey){const ys=[".action-label.codicon"];t.classList.contains("show-checkboxes")?ys.push("input"):ys.push("input[type=text]"),this.getUI().list.isDisplayed()&&ys.push(".monaco-list");const Es=t.querySelectorAll(ys.join(", "));un.shiftKey&&un.target===Es[0]?(ve.c.stop(fi,!0),Es[Es.length-1].focus()):!un.shiftKey&&un.target===Es[Es.length-1]&&(ve.c.stop(fi,!0),Es[0].focus())}break}})),this.ui={container:t,styleSheet:s,leftActionBar:x,titleBar:a,title:Z,description1:de,description2:At,rightActionBar:ie,checkAll:dt,filterContainer:oo,inputBox:jo,visibleCountContainer:Xo,visibleCount:Jo,countContainer:yi,count:gi,okContainer:Di,ok:pi,message:os,customButtonContainer:vi,customButton:yn,list:sn,progressBar:Hs,onDidAccept:this.onDidAcceptEmitter.event,onDidCustom:this.onDidCustomEmitter.event,onDidTriggerButton:this.onDidTriggerButtonEmitter.event,ignoreFocusOut:!1,keyMods:this.keyMods,isScreenReaderOptimized:()=>this.options.isScreenReaderOptimized(),show:fi=>this.show(fi),hide:()=>this.hide(),setVisibilities:fi=>this.setVisibilities(fi),setComboboxAccessibility:fi=>this.setComboboxAccessibility(fi),setEnabled:fi=>this.setEnabled(fi),setContextKey:fi=>this.options.setContextKey(fi)},this.updateStyles(),this.ui}pick(t,s={},a=P.a.None){return new Promise((x,Z)=>{let ie=At=>{ie=x,s.onKeyMods&&s.onKeyMods(de.keyMods),x(At)};if(a.isCancellationRequested){ie(void 0);return}const de=this.createQuickPick();let Ae;const dt=[de,de.onDidAccept(()=>{if(de.canSelectMany)ie(de.selectedItems.slice()),de.hide();else{const At=de.activeItems[0];At&&(ie(At),de.hide())}}),de.onDidChangeActive(At=>{const yt=At[0];yt&&s.onDidFocus&&s.onDidFocus(yt)}),de.onDidChangeSelection(At=>{if(!de.canSelectMany){const yt=At[0];yt&&(ie(yt),de.hide())}}),de.onDidTriggerItemButton(At=>s.onDidTriggerItemButton&&s.onDidTriggerItemButton(Object.assign(Object.assign({},At),{removeItem:()=>{const yt=de.items.indexOf(At.item);if(yt!==-1){const oo=de.items.slice(),jo=oo.splice(yt,1),Xo=de.activeItems.filter(yi=>yi!==jo[0]),Jo=de.keepScrollPosition;de.keepScrollPosition=!0,de.items=oo,Xo&&(de.activeItems=Xo),de.keepScrollPosition=Jo}}}))),de.onDidChangeValue(At=>{Ae&&!At&&(de.activeItems.length!==1||de.activeItems[0]!==Ae)&&(de.activeItems=[Ae])}),a.onCancellationRequested(()=>{de.hide()}),de.onDidHide(()=>{Object(ao.f)(dt),ie(void 0)})];de.title=s.title,de.canSelectMany=!!s.canPickMany,de.placeholder=s.placeHolder,de.ignoreFocusOut=!!s.ignoreFocusLost,de.matchOnDescription=!!s.matchOnDescription,de.matchOnDetail=!!s.matchOnDetail,de.matchOnLabel=s.matchOnLabel===void 0||s.matchOnLabel,de.autoFocusOnList=s.autoFocusOnList===void 0||s.autoFocusOnList,de.quickNavigate=s.quickNavigate,de.contextKey=s.contextKey,de.busy=!0,Promise.all([t,s.activeItem]).then(([At,yt])=>{Ae=yt,de.busy=!1,de.items=At,de.canSelectMany&&(de.selectedItems=At.filter(oo=>oo.type!=="separator"&&oo.picked)),Ae&&(de.activeItems=[Ae])}),de.show(),Promise.resolve(t).then(void 0,At=>{Z(At),de.hide()})})}createQuickPick(){const t=this.getUI();return new hr(t)}show(t){const s=this.getUI();this.onShowEmitter.fire();const a=this.controller;this.controller=t,a&&a.didHide(),this.setEnabled(!0),s.leftActionBar.clear(),s.title.textContent="",s.description1.textContent="",s.description2.textContent="",s.rightActionBar.clear(),s.checkAll.checked=!1,s.inputBox.placeholder="",s.inputBox.password=!1,s.inputBox.showDecoration(ln.a.Ignore),s.visibleCount.setCount(0),s.count.setCount(0),ve.R(s.message),s.progressBar.stop(),s.list.setElements([]),s.list.matchOnDescription=!1,s.list.matchOnDetail=!1,s.list.matchOnLabel=!0,s.list.sortByLabel=!0,s.ignoreFocusOut=!1,this.setComboboxAccessibility(!1),s.inputBox.ariaLabel="";const x=this.options.backKeybindingLabel();Zr.tooltip=x?Object(be.a)("quickInput.backWithKeybinding","Back ({0})",x):Object(be.a)("quickInput.back","Back"),s.container.style.display="",this.updateLayout(),s.inputBox.setFocus()}setVisibilities(t){const s=this.getUI();s.title.style.display=t.title?"":"none",s.description1.style.display=t.description&&(t.inputBox||t.checkAll)?"":"none",s.description2.style.display=t.description&&!(t.inputBox||t.checkAll)?"":"none",s.checkAll.style.display=t.checkAll?"":"none",s.filterContainer.style.display=t.inputBox?"":"none",s.visibleCountContainer.style.display=t.visibleCount?"":"none",s.countContainer.style.display=t.count?"":"none",s.okContainer.style.display=t.ok?"":"none",s.customButtonContainer.style.display=t.customButton?"":"none",s.message.style.display=t.message?"":"none",s.progressBar.getContainer().style.display=t.progressBar?"":"none",s.list.display(!!t.list),s.container.classList[t.checkBox?"add":"remove"]("show-checkboxes"),this.updateLayout()}setComboboxAccessibility(t){if(t!==this.comboboxAccessibility){const s=this.getUI();this.comboboxAccessibility=t,this.comboboxAccessibility?(s.inputBox.setAttribute("role","combobox"),s.inputBox.setAttribute("aria-haspopup","true"),s.inputBox.setAttribute("aria-autocomplete","list"),s.inputBox.setAttribute("aria-activedescendant",s.list.getActiveDescendant()||"")):(s.inputBox.removeAttribute("role"),s.inputBox.removeAttribute("aria-haspopup"),s.inputBox.removeAttribute("aria-autocomplete"),s.inputBox.removeAttribute("aria-activedescendant"))}}setEnabled(t){if(t!==this.enabled){this.enabled=t;for(const s of this.getUI().leftActionBar.viewItems)s.getAction().enabled=t;for(const s of this.getUI().rightActionBar.viewItems)s.getAction().enabled=t;this.getUI().checkAll.disabled=!t,this.getUI().ok.enabled=t,this.getUI().list.enabled=t}}hide(t){var s;const a=this.controller;if(a){const x=!((s=this.ui)===null||s===void 0?void 0:s.container.contains(document.activeElement));this.controller=null,this.onHideEmitter.fire(),this.getUI().container.style.display="none",x||(this.previousFocusElement&&this.previousFocusElement.offsetParent?(this.previousFocusElement.focus(),this.previousFocusElement=void 0):this.options.returnFocus()),a.didHide(t)}}layout(t,s){this.dimension=t,this.titleBarOffset=s,this.updateLayout()}updateLayout(){if(this.ui){this.ui.container.style.top=`${this.titleBarOffset}px`;const t=this.ui.container.style,s=Math.min(this.dimension.width*.62,Jr.MAX_WIDTH);t.width=s+"px",t.marginLeft="-"+s/2+"px",this.ui.inputBox.layout(),this.ui.list.layout(this.dimension&&this.dimension.height*.4)}}applyStyles(t){this.styles=t,this.updateStyles()}updateStyles(){if(this.ui){const{quickInputTitleBackground:t,quickInputBackground:s,quickInputForeground:a,contrastBorder:x,widgetShadow:Z}=this.styles.widget;this.ui.titleBar.style.backgroundColor=t?t.toString():"",this.ui.container.style.backgroundColor=s?s.toString():"",this.ui.container.style.color=a?a.toString():"",this.ui.container.style.border=x?`1px solid ${x}`:"",this.ui.container.style.boxShadow=Z?`0 0 8px 2px ${Z}`:"",this.ui.inputBox.style(this.styles.inputBox),this.ui.count.style(this.styles.countBadge),this.ui.ok.style(this.styles.button),this.ui.customButton.style(this.styles.button),this.ui.progressBar.style(this.styles.progressBar),this.ui.list.style(this.styles.list);const ie=[];this.styles.list.pickerGroupBorder&&ie.push(`.quick-input-list .quick-input-list-entry { border-top-color: ${this.styles.list.pickerGroupBorder}; }`),this.styles.list.pickerGroupForeground&&ie.push(`.quick-input-list .quick-input-list-separator { color: ${this.styles.list.pickerGroupForeground}; }`),(this.styles.keybindingLabel.keybindingLabelBackground||this.styles.keybindingLabel.keybindingLabelBorder||this.styles.keybindingLabel.keybindingLabelBottomBorder||this.styles.keybindingLabel.keybindingLabelShadow||this.styles.keybindingLabel.keybindingLabelForeground)&&(ie.push(".quick-input-list .monaco-keybinding > .monaco-keybinding-key {"),this.styles.keybindingLabel.keybindingLabelBackground&&ie.push(`background-color: ${this.styles.keybindingLabel.keybindingLabelBackground};`),this.styles.keybindingLabel.keybindingLabelBorder&&ie.push(`border-color: ${this.styles.keybindingLabel.keybindingLabelBorder};`),this.styles.keybindingLabel.keybindingLabelBottomBorder&&ie.push(`border-bottom-color: ${this.styles.keybindingLabel.keybindingLabelBottomBorder};`),this.styles.keybindingLabel.keybindingLabelShadow&&ie.push(`box-shadow: inset 0 -1px 0 ${this.styles.keybindingLabel.keybindingLabelShadow};`),this.styles.keybindingLabel.keybindingLabelForeground&&ie.push(`color: ${this.styles.keybindingLabel.keybindingLabelForeground};`),ie.push("}"));const de=ie.join(` `);de!==this.ui.styleSheet.textContent&&(this.ui.styleSheet.textContent=de)}}}Jr.MAX_WIDTH=600;var qr=e("C/vA"),Pa=e("Lx4V"),ea=e("Zr1c"),Ml=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},Fa=function(t,s){return function(a,x){s(a,x,t)}};let ta=class extends ao.a{constructor(s,a){super();this.quickInputService=s,this.instantiationService=a,this.registry=cs.a.as(Pa.b.Quickaccess),this.mapProviderToDescriptor=new Map,this.lastAcceptedPickerValues=new Map,this.visibleQuickAccess=void 0}show(s="",a){this.doShowOrPick(s,!1,a)}doShowOrPick(s,a,x){var Z;const[ie,de]=this.getOrInstantiateProvider(s),Ae=this.visibleQuickAccess,dt=Ae==null?void 0:Ae.descriptor;if(Ae&&de&&dt===de){s!==de.prefix&&!(x==null?void 0:x.preserveValue)&&(Ae.picker.value=s),this.adjustValueSelection(Ae.picker,de,x);return}if(de&&!(x==null?void 0:x.preserveValue)){let Jo;if(Ae&&dt&&dt!==de){const yi=Ae.value.substr(dt.prefix.length);yi&&(Jo=`${de.prefix}${yi}`)}if(!Jo){const yi=ie==null?void 0:ie.defaultFilterValue;yi===Pa.a.LAST?Jo=this.lastAcceptedPickerValues.get(de):typeof yi=="string"&&(Jo=`${de.prefix}${yi}`)}typeof Jo=="string"&&(s=Jo)}const At=new ao.b,yt=At.add(this.quickInputService.createQuickPick());yt.value=s,this.adjustValueSelection(yt,de,x),yt.placeholder=de==null?void 0:de.placeholder,yt.quickNavigate=x==null?void 0:x.quickNavigateConfiguration,yt.hideInput=!!yt.quickNavigate&&!Ae,(typeof(x==null?void 0:x.itemActivation)=="number"||(x==null?void 0:x.quickNavigateConfiguration))&&(yt.itemActivation=(Z=x==null?void 0:x.itemActivation)!==null&&Z!==void 0?Z:ea.b.SECOND),yt.contextKey=de==null?void 0:de.contextKey,yt.filterValue=Jo=>Jo.substring(de?de.prefix.length:0),(de==null?void 0:de.placeholder)&&(yt.ariaLabel=de==null?void 0:de.placeholder);let oo,jo;a&&(oo=new Promise(Jo=>jo=Jo),At.add(Object(qr.a)(yt.onWillAccept)(Jo=>{Jo.veto(),yt.hide()}))),At.add(this.registerPickerListeners(yt,ie,de,s));const Xo=At.add(new P.b);if(ie&&At.add(ie.provide(yt,Xo.token)),Object(qr.a)(yt.onDidHide)(()=>{yt.selectedItems.length===0&&Xo.cancel(),At.dispose(),jo==null||jo(yt.selectedItems)}),yt.show(),a)return oo}adjustValueSelection(s,a,x){var Z;let ie;(x==null?void 0:x.preserveValue)?ie=[s.value.length,s.value.length]:ie=[(Z=a==null?void 0:a.prefix.length)!==null&&Z!==void 0?Z:0,s.value.length],s.valueSelection=ie}registerPickerListeners(s,a,x,Z){const ie=new ao.b,de=this.visibleQuickAccess={picker:s,descriptor:x,value:Z};return ie.add(Object(ao.i)(()=>{de===this.visibleQuickAccess&&(this.visibleQuickAccess=void 0)})),ie.add(s.onDidChangeValue(Ae=>{const[dt]=this.getOrInstantiateProvider(Ae);dt!==a?this.show(Ae,{preserveValue:!0}):de.value=Ae})),x&&ie.add(s.onDidAccept(()=>{this.lastAcceptedPickerValues.set(x,s.value)})),ie}getOrInstantiateProvider(s){const a=this.registry.getQuickAccessProvider(s);if(!a)return[void 0,void 0];let x=this.mapProviderToDescriptor.get(a);return x||(x=this.instantiationService.createInstance(a.ctor),this.mapProviderToDescriptor.set(a,x)),[x,a]}};ta=Ml([Fa(0,ea.a),Fa(1,mn.a)],ta);var xl=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},Ws=function(t,s){return function(a,x){s(a,x,t)}};let oa=class extends vn.c{constructor(s,a,x,Z,ie){super(x);this.instantiationService=s,this.contextKeyService=a,this.accessibilityService=Z,this.layoutService=ie,this.contexts=new Map}get controller(){return this._controller||(this._controller=this._register(this.createController())),this._controller}get quickAccess(){return this._quickAccess||(this._quickAccess=this._register(this.instantiationService.createInstance(ta))),this._quickAccess}createController(s=this.layoutService,a){var x,Z;const ie={idPrefix:"quickInput_",container:s.container,ignoreFocusOut:()=>!1,isScreenReaderOptimized:()=>this.accessibilityService.isScreenReaderOptimized(),backKeybindingLabel:()=>{},setContextKey:Ae=>this.setContextKey(Ae),returnFocus:()=>s.focus(),createList:(Ae,dt,At,yt,oo)=>this.instantiationService.createInstance(Wr.d,Ae,dt,At,yt,oo),styles:this.computeStyles()},de=this._register(new Jr(Object.assign(Object.assign({},ie),a)));return de.layout(s.dimension,(Z=(x=s.offset)===null||x===void 0?void 0:x.top)!==null&&Z!==void 0?Z:0),this._register(s.onDidLayout(Ae=>{var dt,At;return de.layout(Ae,(At=(dt=s.offset)===null||dt===void 0?void 0:dt.top)!==null&&At!==void 0?At:0)})),this._register(de.onShow(()=>this.resetContextKeys())),this._register(de.onHide(()=>this.resetContextKeys())),de}setContextKey(s){let a;if(s&&(a=this.contexts.get(s),a||(a=new xt.c(s,!1).bindTo(this.contextKeyService),this.contexts.set(s,a))),a&&a.get())return;this.resetContextKeys(),a&&a.set(!0)}resetContextKeys(){this.contexts.forEach(s=>{s.get()&&s.reset()})}pick(s,a={},x=P.a.None){return this.controller.pick(s,a,x)}createQuickPick(){return this.controller.createQuickPick()}updateStyles(){this.controller.applyStyles(this.computeStyles())}computeStyles(){return{widget:Object.assign({},Object(Yn.d)(this.theme,{quickInputBackground:ci.wc,quickInputForeground:ci.xc,quickInputTitleBackground:ci.Bc,contrastBorder:ci.h,widgetShadow:ci.Tc})),inputBox:Object(Yn.d)(this.theme,{inputForeground:ci.pb,inputBackground:ci.nb,inputBorder:ci.ob,inputValidationInfoBackground:ci.tb,inputValidationInfoForeground:ci.vb,inputValidationInfoBorder:ci.ub,inputValidationWarningBackground:ci.wb,inputValidationWarningForeground:ci.yb,inputValidationWarningBorder:ci.xb,inputValidationErrorBackground:ci.qb,inputValidationErrorForeground:ci.sb,inputValidationErrorBorder:ci.rb}),countBadge:Object(Yn.d)(this.theme,{badgeBackground:ci.c,badgeForeground:ci.d,badgeBorder:ci.h}),button:Object(Yn.d)(this.theme,{buttonForeground:ci.f,buttonBackground:ci.e,buttonHoverBackground:ci.g,buttonBorder:ci.h}),progressBar:Object(Yn.d)(this.theme,{progressBarBackground:ci.vc}),keybindingLabel:Object(Yn.d)(this.theme,{keybindingLabelBackground:ci.zb,keybindingLabelForeground:ci.Cb,keybindingLabelBorder:ci.Ab,keybindingLabelBottomBorder:ci.Bb,keybindingLabelShadow:ci.Tc}),list:Object(Yn.d)(this.theme,{listBackground:ci.wc,listInactiveFocusForeground:ci.zc,listInactiveSelectionIconForeground:ci.Ac,listInactiveFocusBackground:ci.yc,listFocusOutline:ci.b,listInactiveFocusOutline:ci.b,pickerGroupBorder:ci.qc,pickerGroupForeground:ci.rc})}}};oa=xl([Ws(0,mn.a),Ws(1,xt.b),Ws(2,vn.b),Ws(3,Fn.b),Ws(4,or)],oa);var Ba=function(t,s,a,x){var Z=arguments.length,ie=Z<3?s:x===null?x=Object.getOwnPropertyDescriptor(s,a):x,de;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ie=Reflect.decorate(t,s,a,x);else for(var Ae=t.length-1;Ae>=0;Ae--)(de=t[Ae])&&(ie=(Z<3?de(ie):Z>3?de(s,a,ie):de(s,a))||ie);return Z>3&&ie&&Object.defineProperty(s,a,ie),ie},ts=function(t,s){return function(a,x){s(a,x,t)}};let ia=class extends oa{constructor(s,a,x,Z,ie,de){super(a,x,Z,ie,de);this.host=void 0;const Ae=Us.get(s);this.host={_serviceBrand:void 0,get container(){return Ae.widget.getDomNode()},get dimension(){return s.getLayoutInfo()},get onDidLayout(){return s.onDidLayoutChange},focus:()=>s.focus()}}createController(){return super.createController(this.host)}};ia=Ba([ts(1,mn.a),ts(2,xt.b),ts(3,vn.b),ts(4,Fn.b),ts(5,or)],ia);let na=class{constructor(s,a){this.instantiationService=s,this.codeEditorService=a,this.mapEditorToService=new Map}get activeService(){const s=this.codeEditorService.getFocusedCodeEditor();if(!s)throw new Error("Quick input service needs a focused editor to work.");let a=this.mapEditorToService.get(s);if(!a){const x=a=this.instantiationService.createInstance(ia,s);this.mapEditorToService.set(s,a),Object(qr.a)(s.onDidDispose)(()=>{x.dispose(),this.mapEditorToService.delete(s)})}return a}get quickAccess(){return this.activeService.quickAccess}pick(s,a={},x=P.a.None){return this.activeService.pick(s,a,x)}createQuickPick(){return this.activeService.createQuickPick()}};na=Ba([ts(0,mn.a),ts(1,Ne.a)],na);class Us{constructor(t){this.editor=t,this.widget=new sa(this.editor)}static get(t){return t.getContribution(Us.ID)}dispose(){this.widget.dispose()}}Us.ID="editor.controller.quickInput";class sa{constructor(t){this.codeEditor=t,this.domNode=document.createElement("div"),this.codeEditor.addOverlayWidget(this)}getId(){return sa.ID}getDomNode(){return this.domNode}getPosition(){return{preference:2}}dispose(){this.codeEditor.removeOverlayWidget(this)}}sa.ID="editor.contrib.quickInputWidget",Object(al.l)(Us.ID,Us);var Oi;(function(t){const s=new Fr.a;class a{constructor(Ae,dt){this._serviceId=Ae,this._factory=dt,this._value=null}get id(){return this._serviceId}get(Ae){if(!this._value){if(Ae&&(this._value=Ae[this._serviceId.toString()]),this._value||(this._value=this._factory(Ae)),!this._value)throw new Error("Service "+this._serviceId+" is missing!");s.set(this._serviceId,this._value)}return this._value}}t.LazyStaticService=a;let x=[];function Z(Ae,dt){let At=new a(Ae,dt);return x.push(At),At}function ie(Ae){let dt=new Fr.a;for(const[yt,oo]of Object(va.a)())dt.set(yt,oo);for(let yt in Ae)Ae.hasOwnProperty(yt)&&dt.set(Object(mn.c)(yt),Ae[yt]);x.forEach(yt=>dt.set(yt.id,yt.get(Ae)));let At=new Br(dt,!0);return dt.set(mn.a,At),[dt,At]}t.init=ie,t.instantiationService=Z(mn.a,()=>new Br(s,!0));const de=new Kn;t.configurationService=Z(mi.a,()=>de),t.resourceConfigurationService=Z(Pi.a,()=>new fr(de)),t.resourcePropertiesService=Z(Pi.b,()=>new Ss(de)),t.contextService=Z(di.a,()=>new ns),t.labelService=Z(Qa.a,()=>new zs),t.telemetryService=Z(_t.a,()=>new pr),t.dialogService=Z(ha.a,()=>new bn),t.notificationService=Z(Bo.a,()=>new En),t.markerService=Z(jn.b,()=>new vs),t.modeService=Z(kt.a,Ae=>new hs),t.standaloneThemeService=Z(xn.a,()=>new Fs),t.logService=Z(Si.b,()=>new Si.d(new Si.a)),t.undoRedoService=Z(kn.a,Ae=>new lr(t.dialogService.get(Ae),t.notificationService.get(Ae))),t.languageConfigurationService=Z(he.a,Ae=>new he.c(t.configurationService.get(Ae),t.modeService.get(Ae))),t.modelService=Z(bi.a,Ae=>new Dr.a(t.configurationService.get(Ae),t.resourcePropertiesService.get(Ae),t.standaloneThemeService.get(Ae),t.logService.get(Ae),t.undoRedoService.get(Ae),t.modeService.get(Ae),t.languageConfigurationService.get(Ae))),t.markerDecorationsService=Z(el.a,Ae=>new Vr(t.modelService.get(Ae),t.markerService.get(Ae))),t.contextKeyService=Z(xt.b,Ae=>new Je(t.configurationService.get(Ae))),t.codeEditorService=Z(Ne.a,Ae=>new Bn(null,t.contextKeyService.get(Ae),t.standaloneThemeService.get(Ae))),t.editorProgressService=Z(Ds.a,()=>new dn),t.storageService=Z(fa.a,()=>new fa.b),t.editorWorkerService=Z(Dt.a,Ae=>new vt(t.modelService.get(Ae),t.resourceConfigurationService.get(Ae),t.logService.get(Ae)))})(Oi||(Oi={}));class Tl extends ao.a{constructor(t,s){super();const[a,x]=Oi.init(s);this._serviceCollection=a,this._instantiationService=x;const Z=this.get(mi.a),ie=this.get(Bo.a),de=this.get(_t.a),Ae=this.get(vn.b),dt=this.get(Si.b),At=this.get(xt.b);let yt=(yi,gi)=>{let Di=null;return s&&(Di=s[yi.toString()]),Di||(Di=gi()),this._serviceCollection.set(yi,Di),Di};yt(Fn.b,()=>new zr(At,Z)),yt(Wr.a,()=>new Wr.b(Ae));let oo=yt(ze.b,()=>new is(this._instantiationService)),jo=yt(Ti.a,()=>this._register(new In(At,oo,de,ie,dt,t))),Xo=yt(or,()=>new da(Oi.codeEditorService.get(Ne.a),t));yt(ea.a,()=>new na(x,Oi.codeEditorService.get(Ne.a)));let Jo=yt(Tn.b,()=>this._register(new Pr(Xo)));yt(_s.a,()=>new nl),yt(Tn.a,()=>{const yi=new kr(de,ie,Jo,jo,Ae);return yi.configure({blockMouse:!1}),this._register(yi)}),yt(Sn.a,()=>new Ur(oo)),yt(co.a,()=>new Vs(Oi.modelService.get(bi.a)))}get(t){let s=this._serviceCollection.get(t);if(!s)throw new Error("Missing service "+t);return s}set(t,s){this._serviceCollection.set(t,s)}has(t){return this._serviceCollection.has(t)}}var Ol=e("HdwC");function Wa(t,s,a){let x=new Tl(t,s),Z=null;x.has(eo.a)||(Z=new hn(Oi.modelService.get()),x.set(eo.a,Z)),x.has(Te.a)||x.set(Te.a,new Pt(x.get(Ne.a),x.get(ze.b)));let ie=a(x);return Z&&Z.setEditor(ie),ie}function Il(t,s,a){return Wa(t,a||{},x=>new xs(t,s,x,x.get(mn.a),x.get(Ne.a),x.get(ze.b),x.get(xt.b),x.get(Ti.a),x.get(Tn.b),x.get(xn.a),x.get(Bo.a),x.get(mi.a),x.get(Fn.b),x.get(bi.a),x.get(kt.a)))}function Al(t){return Oi.codeEditorService.get().onCodeEditorAdd(s=>{t(s)})}function Rl(t,s,a){return Wa(t,a||{},x=>new Ts(t,s,x,x.get(mn.a),x.get(xt.b),x.get(Ti.a),x.get(Tn.b),x.get(Dt.a),x.get(Ne.a),x.get(xn.a),x.get(Bo.a),x.get(mi.a),x.get(Tn.a),x.get(Ds.a),x.get(_s.a)))}function Nl(t,s){return new no.a(t,s)}function jl(t,s,a){return Xs(Oi.modelService.get(),Oi.modeService.get(),t,s,a)}function kl(t,s){Oi.modelService.get().setMode(t,Oi.modeService.get().create(s))}function Pl(t,s,a){t&&Oi.markerService.get().changeOne(s,t.uri,a)}function Fl(t){return Oi.markerService.get().read(t)}function Bl(t){return Oi.markerService.get().onMarkerChanged(t)}function Wl(t){return Oi.modelService.get().getModel(t)}function Ul(){return Oi.modelService.get().getModels()}function Hl(t){return Oi.modelService.get().onModelAdded(t)}function Vl(t){return Oi.modelService.get().onModelRemoved(t)}function zl(t){return Oi.modelService.get().onModelModeChanged(s=>{t({model:s.model,oldLanguage:s.oldModeId})})}function Kl(t){return Et(Oi.modelService.get(),t)}function Gl(t,s){const a=Oi.standaloneThemeService.get();return a.registerEditorContainer(t),Dn.colorizeElement(a,Oi.modeService.get(),t,s)}function Xl(t,s,a){const x=Oi.standaloneThemeService.get();return x.registerEditorContainer(document.body),Dn.colorize(Oi.modeService.get(),t,s,a)}function $l(t,s,a=4){const x=Oi.standaloneThemeService.get();return x.registerEditorContainer(document.body),Dn.colorizeModelLine(t,s,a)}function Yl(t){let s=Pe.F.get(t);return s||{getInitialState:()=>it.b,tokenize:(a,x,Z,ie)=>Object(it.c)(t,a,Z,ie)}}function Zl(t,s){let a=Oi.modeService.get();a.triggerMode(s);let x=Yl(s),Z=Object(_o.Q)(t),ie=[],de=x.getInitialState();for(let Ae=0,dt=Z.length;Ae=100){x=x-100;let Z=a.split(".");if(Z.unshift(a),x=0&&(x.tokenSubst=!0),typeof a.bracket=="string")if(a.bracket==="@open")x.bracket=1;else if(a.bracket==="@close")x.bracket=-1;else throw ho(t,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+s);if(a.next){if(typeof a.next!="string")throw ho(t,"the next state must be a string value in rule: "+s);{let Z=a.next;if(!/^(@pop|@push|@popall)$/.test(Z)&&(Z[0]==="@"&&(Z=Z.substr(1)),Z.indexOf("$")<0&&!Io(t,mo(t,Z,"",[],""))))throw ho(t,"the next state '"+a.next+"' is not defined in rule: "+s);x.next=Z}}return typeof a.goBack=="number"&&(x.goBack=a.goBack),typeof a.switchTo=="string"&&(x.switchTo=a.switchTo),typeof a.log=="string"&&(x.log=a.log),typeof a.nextEmbedded=="string"&&(x.nextEmbedded=a.nextEmbedded,t.usesEmbedded=!0),x}}else if(Array.isArray(a)){let x=[];for(let Z=0,ie=a.length;Z0&&a[0]==="^",this.name=this.name+": "+a,this.regex=ra(t,"^(?:"+(this.matchOnlyAtLineStart?a.substr(1):a)+")")}setAction(t,s){this.action=aa(t,this.name,s)}}function ad(t,s){if(!s||typeof s!="object")throw new Error("Monarch: expecting a language definition object");let a={};a.languageId=t,a.includeLF=mr(s.includeLF,!1),a.noThrow=!1,a.maxStack=100,a.start=typeof s.start=="string"?s.start:null,a.ignoreCase=mr(s.ignoreCase,!1),a.unicode=mr(s.unicode,!1),a.tokenPostfix=Ua(s.tokenPostfix,"."+a.languageId),a.defaultToken=Ua(s.defaultToken,"source"),a.usesEmbedded=!1;let x=s;x.languageId=t,x.includeLF=a.includeLF,x.ignoreCase=a.ignoreCase,x.unicode=a.unicode,x.noThrow=a.noThrow,x.usesEmbedded=a.usesEmbedded,x.stateNames=s.tokenizer,x.defaultToken=a.defaultToken;function Z(de,Ae,dt){for(const At of dt){let yt=At.include;if(yt){if(typeof yt!="string")throw ho(a,"an 'include' attribute must be a string at: "+de);if(yt[0]==="@"&&(yt=yt.substr(1)),!s.tokenizer[yt])throw ho(a,"include target '"+yt+"' is not defined at: "+de);Z(de+"."+yt,Ae,s.tokenizer[yt])}else{const oo=new rd(de);if(Array.isArray(At)&&At.length>=1&&At.length<=3)if(oo.setRegex(x,At[0]),At.length>=3)if(typeof At[1]=="string")oo.setAction(x,{token:At[1],next:At[2]});else if(typeof At[1]=="object"){const jo=At[1];jo.next=At[2],oo.setAction(x,jo)}else throw ho(a,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+de);else oo.setAction(x,At[1]);else{if(!At.regex)throw ho(a,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+de);At.name&&(typeof At.name=="string"&&(oo.name=At.name)),At.matchOnlyAtStart&&(oo.matchOnlyAtLineStart=mr(At.matchOnlyAtLineStart,!1)),oo.setRegex(x,At.regex),oo.setAction(x,At.action)}Ae.push(oo)}}}if(!s.tokenizer||typeof s.tokenizer!="object")throw ho(a,"a language definition must define the 'tokenizer' attribute as an object");a.tokenizer=[];for(let de in s.tokenizer)if(s.tokenizer.hasOwnProperty(de)){a.start||(a.start=de);const Ae=s.tokenizer[de];a.tokenizer[de]=new Array,Z("tokenizer."+de,a.tokenizer[de],Ae)}if(a.usesEmbedded=x.usesEmbedded,s.brackets){if(!Array.isArray(s.brackets))throw ho(a,"the 'brackets' attribute must be defined as an array")}else s.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];let ie=[];for(let de of s.brackets){let Ae=de;if(Ae&&Array.isArray(Ae)&&Ae.length===3&&(Ae={token:Ae[2],open:Ae[0],close:Ae[1]}),Ae.open===Ae.close)throw ho(a,"open and close brackets in a 'brackets' attribute must be different: "+Ae.open+` hint: use the 'bracket' attribute if matching on equal brackets is required.`);if(typeof Ae.open=="string"&&typeof Ae.token=="string"&&typeof Ae.close=="string")ie.push({token:Ae.token+a.tokenPostfix,open:It(a,Ae.open),close:It(a,Ae.close)});else throw ho(a,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return a.brackets=ie,a.noThrow=!0,a}function ld(t){Gn.a.registerLanguage(t)}function dd(){let t=[];return t=t.concat(Gn.a.getLanguages()),t}function cd(t){const s=Oi.modeService.get();return s.languageIdCodec.encodeLanguageId(t)}function ud(t,s){let a=Oi.modeService.get().onDidEncounterLanguage(x=>{x===x&&(a.dispose(),s())});return a}function hd(t,s){const a=Oi.modeService.get().validateLanguageId(t);if(!a)throw new Error(`Cannot set configuration for unknown language ${t}`);return he.b.register(a,s,100)}class md{constructor(t,s){this._languageId=t,this._actual=s}getInitialState(){return this._actual.getInitialState()}tokenize(t,s,a,x){if(typeof this._actual.tokenize=="function")return gr.adaptTokenize(this._languageId,this._actual,t,a,x);throw new Error("Not supported!")}tokenize2(t,s,a){let x=this._actual.tokenizeEncoded(t,a);return new f.c(x.tokens,x.endState)}}class gr{constructor(t,s,a,x){this._languageId=t,this._actual=s,this._modeService=a,this._standaloneThemeService=x}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(t,s,a){let x=[],Z=0;for(let ie=0,de=t.length;ie0&&ie[de-1]===jo)continue;let Xo=oo.startIndex;At===0?Xo=0:Xogd(Z)?new md(a,Z):new gr(a,Z,Oi.modeService.get(),Oi.standaloneThemeService.get());return Va(s)?Pe.F.registerPromise(t,s.then(Z=>x(Z))):Pe.F.register(t,x(s))}function bd(t,s){const a=x=>ui(Oi.modeService.get(),Oi.standaloneThemeService.get(),t,ad(t,x));return Va(s)?Pe.F.registerPromise(t,s.then(x=>a(x))):Pe.F.register(t,a(s))}function vd(t,s){return Pe.y.register(t,s)}function Cd(t,s){return Pe.z.register(t,s)}function yd(t,s){return Pe.B.register(t,s)}function Ed(t,s){return Pe.p.register(t,{provideHover:(a,x,Z)=>{let ie=a.getWordAtPosition(x);return Promise.resolve(s.provideHover(a,x,Z)).then(de=>de?(!de.range&&ie&&(de.range=new O.a(x.lineNumber,ie.startColumn,x.lineNumber,ie.endColumn)),de.range||(de.range=new O.a(x.lineNumber,x.column,x.lineNumber,x.column)),de):void 0)}})}function Sd(t,s){return Pe.m.register(t,s)}function wd(t,s){return Pe.i.register(t,s)}function Ld(t,s){return Pe.w.register(t,s)}function _d(t,s){return Pe.f.register(t,s)}function Dd(t,s){return Pe.q.register(t,s)}function Md(t,s){return Pe.G.register(t,s)}function xd(t,s){return Pe.b.register(t,s)}function Td(t,s,a){return Pe.a.register(t,{providedCodeActionKinds:a==null?void 0:a.providedCodeActionKinds,provideCodeActions:(x,Z,ie,de)=>{let Ae=Oi.markerService.get().read({resource:x.uri}).filter(dt=>O.a.areIntersectingOrTouching(dt,Z));return s.provideCodeActions(x,Z,{markers:Ae,only:ie.only},de)},resolveCodeAction:s.resolveCodeAction})}function Od(t,s){return Pe.g.register(t,s)}function Id(t,s){return Pe.j.register(t,s)}function Ad(t,s){return Pe.x.register(t,s)}function Rd(t,s){return Pe.v.register(t,s)}function Nd(t,s){return Pe.d.register(t,s)}function jd(t,s){return Pe.c.register(t,s)}function kd(t,s){return Pe.o.register(t,s)}function Pd(t,s){return Pe.e.register(t,s)}function Fd(t,s){return Pe.A.register(t,s)}function Bd(t,s){return Pe.l.register(t,s)}function Wd(t,s){return Pe.k.register(t,s)}function Ud(t,s){return Pe.u.register(t,s)}function Hd(t,s){return Pe.s.register(t,s)}function Vd(){return{register:ld,getLanguages:dd,onLanguage:ud,getEncodedLanguageId:cd,setLanguageConfiguration:hd,setColorMap:fd,setTokensProvider:pd,setMonarchTokensProvider:bd,registerReferenceProvider:vd,registerRenameProvider:Cd,registerCompletionItemProvider:Nd,registerSignatureHelpProvider:yd,registerHoverProvider:Ed,registerDocumentSymbolProvider:Sd,registerDocumentHighlightProvider:wd,registerLinkedEditingRangeProvider:Ld,registerDefinitionProvider:_d,registerImplementationProvider:Dd,registerTypeDefinitionProvider:Md,registerCodeLensProvider:xd,registerCodeActionProvider:Td,registerDocumentFormattingEditProvider:Od,registerDocumentRangeFormattingEditProvider:Id,registerOnTypeFormattingEditProvider:Ad,registerLinkProvider:Rd,registerColorProvider:jd,registerFoldingRangeProvider:kd,registerDeclarationProvider:Pd,registerSelectionRangeProvider:Fd,registerDocumentSemanticTokensProvider:Bd,registerDocumentRangeSemanticTokensProvider:Wd,registerInlineCompletionsProvider:Ud,registerInlayHintsProvider:Hd,DocumentHighlightKind:l,CompletionItemKind:E,CompletionItemTag:p,CompletionItemInsertTextRule:d,SymbolKind:W,SymbolTag:ne,IndentAction:D,CompletionTriggerKind:n,SignatureHelpTriggerKind:H,InlayHintKind:j,InlineCompletionTriggerKind:V,FoldingRangeKind:Pe.n}}var zd=e("hN88"),la;h.g.wrappingIndent.defaultValue=0,h.g.glyphMargin.defaultValue=!1,h.g.autoIndent.defaultValue=3,h.g.overviewRulerLanes.defaultValue=2,zd.a.setFormatterSelector((t,s,a)=>Promise.resolve(t[0]));const Cn=oe();Cn.editor=td(),Cn.languages=Vd();const Kd=Cn.CancellationTokenSource,Gd=Cn.Emitter,Xd=Cn.KeyCode,$d=Cn.KeyMod,Yd=Cn.Position,Zd=Cn.Range,Qd=Cn.Selection,Jd=Cn.SelectionDirection,qd=Cn.MarkerSeverity,ec=Cn.MarkerTag,tc=Cn.Uri,oc=Cn.Token,ic=Cn.editor,nc=Cn.languages;(((la=Lo.b.MonacoEnvironment)===null||la===void 0?void 0:la.globalAPI)||typeof define=="function"&&e("FzHg"))&&(self.monaco=Cn),typeof self.require!="undefined"&&typeof self.require.config=="function"&&self.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-languageserver-textdocument","vscode-languageserver-textdocument/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]})},"9B1q":function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"css",extensions:[".css"],aliases:["CSS","css"],mimetypes:["text/css"],loader:function(){return e.e(331).then(e.bind(null,"v7Iz"))}})},"9XAT":function(ft,w,e){"use strict";e.r(w),e.d(w,"cssDefaults",function(){return O}),e.d(w,"scssDefaults",function(){return S}),e.d(w,"lessDefaults",function(){return f});var h=e("M/lh"),P=e.n(h),L=e("CzyV"),A=function(){function d(E,p,n){this._onDidChange=new L.Emitter,this._languageId=E,this.setOptions(p),this.setModeConfiguration(n)}return Object.defineProperty(d.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(d.prototype,"languageId",{get:function(){return this._languageId},enumerable:!1,configurable:!0}),Object.defineProperty(d.prototype,"modeConfiguration",{get:function(){return this._modeConfiguration},enumerable:!1,configurable:!0}),Object.defineProperty(d.prototype,"diagnosticsOptions",{get:function(){return this.options},enumerable:!1,configurable:!0}),Object.defineProperty(d.prototype,"options",{get:function(){return this._options},enumerable:!1,configurable:!0}),d.prototype.setOptions=function(E){this._options=E||Object.create(null),this._onDidChange.fire(this)},d.prototype.setDiagnosticsOptions=function(E){this.setOptions(E)},d.prototype.setModeConfiguration=function(E){this._modeConfiguration=E||Object.create(null),this._onDidChange.fire(this)},d}(),I={validate:!0,lint:{compatibleVendorPrefixes:"ignore",vendorPrefix:"warning",duplicateProperties:"warning",emptyRules:"warning",importStatement:"ignore",boxModel:"ignore",universalSelector:"ignore",zeroUnits:"ignore",fontFaceProperties:"warning",hexColorLength:"error",argumentsInColorFunction:"error",unknownProperties:"warning",ieHack:"ignore",unknownVendorSpecificProperties:"ignore",propertyIgnoredDueToDisplay:"warning",important:"ignore",float:"ignore",idSelector:"ignore"},data:{useDefaultDataProvider:!0}},k={completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0},O=new A("css",I,k),S=new A("scss",I,k),f=new A("less",I,k);L.languages.css={cssDefaults:O,lessDefaults:f,scssDefaults:S};function u(){return e.e(318).then(e.bind(null,"20/g"))}L.languages.onLanguage("less",function(){u().then(function(d){return d.setupMode(f)})}),L.languages.onLanguage("scss",function(){u().then(function(d){return d.setupMode(S)})}),L.languages.onLanguage("css",function(){u().then(function(d){return d.setupMode(O)})})},"9XeP":function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("Cg/j");const P=Object(h.c)("clipboardService")},"9Y+e":function(ft,w,e){"use strict";e.d(w,"a",function(){return h});class h{constructor(P,L,A,I,k,O){this.id=P,this.label=L,this.alias=A,this._precondition=I,this._run=k,this._contextKeyService=O}isSupported(){return this._contextKeyService.contextMatchesRules(this._precondition)}run(){return this.isSupported()?this._run():Promise.resolve(void 0)}}},"9fML":function(ft,w,e){"use strict";e.d(w,"b",function(){return L}),e.d(w,"a",function(){return A});var h=e("r0BQ");const P=[];function L(I,k,O){k instanceof h.a||(k=new h.a(k,[],O)),P.push([I,k])}function A(){return P}},"9o5J":function(ft,w,e){"use strict";e.d(w,"b",function(){return d}),e.d(w,"a",function(){return p}),e.d(w,"c",function(){return n});var h=e("/cxE"),P=e("MI8n"),L=e("nD70"),A=e("pmY6"),I=e("QDVR"),k=e("gslv"),O=e("N0LK"),S=e("aokT"),f=e("3/fG"),u=function(b,m,c,l){function g(y){return y instanceof c?y:new c(function(C){C(y)})}return new(c||(c=Promise))(function(y,C){function v(V){try{j(l.next(V))}catch(G){C(G)}}function D(V){try{j(l.throw(V))}catch(G){C(G)}}function j(V){V.done?y(V.value):g(V.value).then(v,D)}j((l=l.apply(b,m||[])).next())})};class d{constructor(b,m,c,l){this.isProviderFirst=b,this.parent=m,this.link=c,this._rangeCallback=l,this.id=L.b.nextId()}get uri(){return this.link.uri}get range(){var b,m;return(m=(b=this._range)!==null&&b!==void 0?b:this.link.targetSelectionRange)!==null&&m!==void 0?m:this.link.range}set range(b){this._range=b,this._rangeCallback(this)}get ariaMessage(){var b;const m=(b=this.parent.getPreview(this))===null||b===void 0?void 0:b.preview(this.range);return m?Object(f.a)({key:"aria.oneReference.preview",comment:["Placeholders are: 0: filename, 1:line number, 2: column number, 3: preview snippet of source code"]},"symbol in {0} on line {1} at column {2}, {3}",Object(k.b)(this.uri),this.range.startLineNumber,this.range.startColumn,m.value):Object(f.a)("aria.oneReference","symbol in {0} on line {1} at column {2}",Object(k.b)(this.uri),this.range.startLineNumber,this.range.startColumn)}}class E{constructor(b){this._modelReference=b}dispose(){this._modelReference.dispose()}preview(b,m=8){const c=this._modelReference.object.textEditorModel;if(!c)return;const{startLineNumber:l,startColumn:g,endLineNumber:y,endColumn:C}=b,v=c.getWordUntilPosition({lineNumber:l,column:g-m}),D=new S.a(l,v.startColumn,l,g),j=new S.a(y,C,y,1073741824),V=c.getValueInRange(D).replace(/^\s+/,""),G=c.getValueInRange(b),B=c.getValueInRange(j).replace(/\s+$/,"");return{value:V+G+B,highlight:{start:V.length,end:V.length+G.length}}}}class p{constructor(b,m){this.parent=b,this.uri=m,this.children=[],this._previews=new I.b}dispose(){Object(A.f)(this._previews.values()),this._previews.clear()}getPreview(b){return this._previews.get(b.uri)}get ariaMessage(){const b=this.children.length;return b===1?Object(f.a)("aria.fileReferences.1","1 symbol in {0}, full path {1}",Object(k.b)(this.uri),this.uri.fsPath):Object(f.a)("aria.fileReferences.N","{0} symbols in {1}, full path {2}",b,Object(k.b)(this.uri),this.uri.fsPath)}resolve(b){return u(this,void 0,void 0,function*(){if(this._previews.size!==0)return this;for(let m of this.children){if(this._previews.has(m.uri))continue;try{const c=yield b.createModelReference(m.uri);this._previews.set(m.uri,new E(c))}catch(c){Object(h.f)(c)}}return this})}}class n{constructor(b,m){this.groups=[],this.references=[],this._onDidChangeReferenceRange=new P.b,this.onDidChangeReferenceRange=this._onDidChangeReferenceRange.event,this._links=b,this._title=m;const[c]=b;b.sort(n._compareReferences);let l;for(let g of b)if((!l||!k.e.isEqual(l.uri,g.uri,!0))&&(l=new p(this,g.uri),this.groups.push(l)),l.children.length===0||n._compareReferences(g,l.children[l.children.length-1])!==0){const y=new d(c===g,l,g,C=>this._onDidChangeReferenceRange.fire(C));this.references.push(y),l.children.push(y)}}dispose(){Object(A.f)(this.groups),this._onDidChangeReferenceRange.dispose(),this.groups.length=0}clone(){return new n(this._links,this._title)}get title(){return this._title}get isEmpty(){return this.groups.length===0}get ariaMessage(){return this.isEmpty?Object(f.a)("aria.result.0","No results found"):this.references.length===1?Object(f.a)("aria.result.1","Found 1 symbol in {0}",this.references[0].uri.fsPath):this.groups.length===1?Object(f.a)("aria.result.n1","Found {0} symbols in {1}",this.references.length,this.groups[0].uri.fsPath):Object(f.a)("aria.result.nm","Found {0} symbols in {1} files",this.references.length,this.groups.length)}nextOrPreviousReference(b,m){let{parent:c}=b,l=c.children.indexOf(b),g=c.children.length,y=c.parent.groups.length;return y===1||m&&l+10?(m?l=(l+1)%g:l=(l+g-1)%g,c.children[l]):(l=c.parent.groups.indexOf(c),m?(l=(l+1)%y,c.parent.groups[l].children[0]):(l=(l+y-1)%y,c.parent.groups[l].children[c.parent.groups[l].children.length-1]))}nearestReference(b,m){const c=this.references.map((l,g)=>({idx:g,prefixLen:O.d(l.uri.toString(),b.toString()),offsetDist:Math.abs(l.range.startLineNumber-m.lineNumber)*100+Math.abs(l.range.startColumn-m.column)})).sort((l,g)=>l.prefixLen>g.prefixLen?-1:l.prefixLeng.offsetDist?1:0)[0];return c?this.references[c.idx]:void 0}referenceAt(b,m){for(const c of this.references)if(c.uri.toString()===b.toString()&&S.a.containsPosition(c.range,m))return c;return}firstReference(){for(const b of this.references)if(b.isProviderFirst)return b;return this.references[0]}static _compareReferences(b,m){return k.e.compare(b.uri,m.uri)||S.a.compareRangesUsingStarts(b.range,m.range)}}},"A+jI":function(ft,w,e){"use strict";e.d(w,"a",function(){return d}),e.d(w,"c",function(){return E}),e.d(w,"b",function(){return n});var h=e("MI8n"),P=e("pmY6"),L=e("746U"),A=e("X+cX"),I=function(b,m,c,l){function g(y){return y instanceof c?y:new c(function(C){C(y)})}return new(c||(c=Promise))(function(y,C){function v(V){try{j(l.next(V))}catch(G){C(G)}}function D(V){try{j(l.throw(V))}catch(G){C(G)}}function j(V){V.done?y(V.value):g(V.value).then(v,D)}j((l=l.apply(b,m||[])).next())})},k;(function(b){b[b.None=0]="None",b[b.Initialized=1]="Initialized",b[b.Closed=2]="Closed"})(k||(k={}));class O extends P.a{constructor(b,m=Object.create(null)){super();this.database=b,this.options=m,this._onDidChangeStorage=this._register(new h.b),this.onDidChangeStorage=this._onDidChangeStorage.event,this.state=k.None,this.cache=new Map,this.flushDelayer=new A.f(O.DEFAULT_FLUSH_DELAY),this.pendingDeletes=new Set,this.pendingInserts=new Map,this.whenFlushedCallbacks=[],this.registerListeners()}registerListeners(){this._register(this.database.onDidChangeItemsExternal(b=>this.onDidChangeItemsExternal(b)))}onDidChangeItemsExternal(b){var m,c;(m=b.changed)===null||m===void 0||m.forEach((l,g)=>this.accept(g,l)),(c=b.deleted)===null||c===void 0||c.forEach(l=>this.accept(l,void 0))}accept(b,m){if(this.state===k.Closed)return;let c=!1;if(Object(L.n)(m))c=this.cache.delete(b);else{const l=this.cache.get(b);l!==m&&(this.cache.set(b,m),c=!0)}c&&this._onDidChangeStorage.fire(b)}get(b,m){const c=this.cache.get(b);return Object(L.n)(c)?m:c}getBoolean(b,m){const c=this.get(b);return Object(L.n)(c)?m:c==="true"}getNumber(b,m){const c=this.get(b);return Object(L.n)(c)?m:parseInt(c,10)}set(b,m){return I(this,void 0,void 0,function*(){if(this.state===k.Closed)return;if(Object(L.n)(m))return this.delete(b);const c=String(m),l=this.cache.get(b);return l===c?void 0:(this.cache.set(b,c),this.pendingInserts.set(b,c),this.pendingDeletes.delete(b),this._onDidChangeStorage.fire(b),this.flushDelayer.trigger(()=>this.flushPending()))})}delete(b){return I(this,void 0,void 0,function*(){if(this.state===k.Closed)return;const m=this.cache.delete(b);return m?(this.pendingDeletes.has(b)||this.pendingDeletes.add(b),this.pendingInserts.delete(b),this._onDidChangeStorage.fire(b),this.flushDelayer.trigger(()=>this.flushPending())):void 0})}get hasPending(){return this.pendingInserts.size>0||this.pendingDeletes.size>0}flushPending(){return I(this,void 0,void 0,function*(){if(!this.hasPending)return;const b={insert:this.pendingInserts,delete:this.pendingDeletes};return this.pendingDeletes=new Set,this.pendingInserts=new Map,this.database.updateItems(b).finally(()=>{var m;if(!this.hasPending)for(;this.whenFlushedCallbacks.length;)(m=this.whenFlushedCallbacks.pop())===null||m===void 0||m()})})}dispose(){this.flushDelayer.dispose(),super.dispose()}}O.DEFAULT_FLUSH_DELAY=100;class S{constructor(){this.onDidChangeItemsExternal=h.c.None,this.items=new Map}updateItems(b){return I(this,void 0,void 0,function*(){b.insert&&b.insert.forEach((m,c)=>this.items.set(c,m)),b.delete&&b.delete.forEach(m=>this.items.delete(m))})}}var f=e("Cg/j");const u="__$__targetStorageMarker",d=Object(f.c)("storageService");var E;(function(b){b[b.NONE=0]="NONE",b[b.SHUTDOWN=1]="SHUTDOWN"})(E||(E={}));class p extends P.a{constructor(b={flushInterval:p.DEFAULT_FLUSH_INTERVAL}){super();this.options=b,this._onDidChangeValue=this._register(new h.e),this._onDidChangeTarget=this._register(new h.e),this._onWillSaveState=this._register(new h.b),this.onWillSaveState=this._onWillSaveState.event,this._workspaceKeyTargets=void 0,this._globalKeyTargets=void 0}emitDidChangeValue(b,m){m===u?(b===0?this._globalKeyTargets=void 0:b===1&&(this._workspaceKeyTargets=void 0),this._onDidChangeTarget.fire({scope:b})):this._onDidChangeValue.fire({scope:b,key:m,target:this.getKeyTargets(b)[m]})}get(b,m,c){var l;return(l=this.getStorage(m))===null||l===void 0?void 0:l.get(b,c)}getBoolean(b,m,c){var l;return(l=this.getStorage(m))===null||l===void 0?void 0:l.getBoolean(b,c)}getNumber(b,m,c){var l;return(l=this.getStorage(m))===null||l===void 0?void 0:l.getNumber(b,c)}store(b,m,c,l){if(Object(L.n)(m)){this.remove(b,c);return}this.withPausedEmitters(()=>{var g;this.updateKeyTarget(b,c,l),(g=this.getStorage(c))===null||g===void 0||g.set(b,m)})}remove(b,m){this.withPausedEmitters(()=>{var c;this.updateKeyTarget(b,m,void 0),(c=this.getStorage(m))===null||c===void 0||c.delete(b)})}withPausedEmitters(b){this._onDidChangeValue.pause(),this._onDidChangeTarget.pause();try{b()}finally{this._onDidChangeValue.resume(),this._onDidChangeTarget.resume()}}updateKeyTarget(b,m,c){var l,g;const y=this.getKeyTargets(m);typeof c=="number"?y[b]!==c&&(y[b]=c,(l=this.getStorage(m))===null||l===void 0||l.set(u,JSON.stringify(y))):typeof y[b]=="number"&&(delete y[b],(g=this.getStorage(m))===null||g===void 0||g.set(u,JSON.stringify(y)))}get workspaceKeyTargets(){return this._workspaceKeyTargets||(this._workspaceKeyTargets=this.loadKeyTargets(1)),this._workspaceKeyTargets}get globalKeyTargets(){return this._globalKeyTargets||(this._globalKeyTargets=this.loadKeyTargets(0)),this._globalKeyTargets}getKeyTargets(b){return b===0?this.globalKeyTargets:this.workspaceKeyTargets}loadKeyTargets(b){const m=this.get(u,b);if(m)try{return JSON.parse(m)}catch(c){}return Object.create(null)}}p.DEFAULT_FLUSH_INTERVAL=60*1e3;class n extends p{constructor(){super();this.globalStorage=this._register(new O(new S)),this.workspaceStorage=this._register(new O(new S)),this._register(this.workspaceStorage.onDidChangeStorage(b=>this.emitDidChangeValue(1,b))),this._register(this.globalStorage.onDidChangeStorage(b=>this.emitDidChangeValue(0,b)))}getStorage(b){return b===0?this.globalStorage:this.workspaceStorage}}},"A9l+":function(ft,w,e){"use strict";e.d(w,"a",function(){return P}),e.d(w,"c",function(){return L}),e.d(w,"b",function(){return A}),e.d(w,"e",function(){return I}),e.d(w,"d",function(){return k}),e.d(w,"f",function(){return O}),e.d(w,"h",function(){return S}),e.d(w,"i",function(){return f}),e.d(w,"g",function(){return u});var h=e("3/fG"),P;(function(d){d.noSelection=h.a("noSelection","No selection"),d.singleSelectionRange=h.a("singleSelectionRange","Line {0}, Column {1} ({2} selected)"),d.singleSelection=h.a("singleSelection","Line {0}, Column {1}"),d.multiSelectionRange=h.a("multiSelectionRange","{0} selections ({1} characters selected)"),d.multiSelection=h.a("multiSelection","{0} selections"),d.emergencyConfOn=h.a("emergencyConfOn","Now changing the setting `accessibilitySupport` to 'on'."),d.openingDocs=h.a("openingDocs","Now opening the Editor Accessibility documentation page."),d.readonlyDiffEditor=h.a("readonlyDiffEditor"," in a read-only pane of a diff editor."),d.editableDiffEditor=h.a("editableDiffEditor"," in a pane of a diff editor."),d.readonlyEditor=h.a("readonlyEditor"," in a read-only code editor"),d.editableEditor=h.a("editableEditor"," in a code editor"),d.changeConfigToOnMac=h.a("changeConfigToOnMac","To configure the editor to be optimized for usage with a Screen Reader press Command+E now."),d.changeConfigToOnWinLinux=h.a("changeConfigToOnWinLinux","To configure the editor to be optimized for usage with a Screen Reader press Control+E now."),d.auto_on=h.a("auto_on","The editor is configured to be optimized for usage with a Screen Reader."),d.auto_off=h.a("auto_off","The editor is configured to never be optimized for usage with a Screen Reader, which is not the case at this time."),d.tabFocusModeOnMsg=h.a("tabFocusModeOnMsg","Pressing Tab in the current editor will move focus to the next focusable element. Toggle this behavior by pressing {0}."),d.tabFocusModeOnMsgNoKb=h.a("tabFocusModeOnMsgNoKb","Pressing Tab in the current editor will move focus to the next focusable element. The command {0} is currently not triggerable by a keybinding."),d.tabFocusModeOffMsg=h.a("tabFocusModeOffMsg","Pressing Tab in the current editor will insert the tab character. Toggle this behavior by pressing {0}."),d.tabFocusModeOffMsgNoKb=h.a("tabFocusModeOffMsgNoKb","Pressing Tab in the current editor will insert the tab character. The command {0} is currently not triggerable by a keybinding."),d.openDocMac=h.a("openDocMac","Press Command+H now to open a browser window with more information related to editor accessibility."),d.openDocWinLinux=h.a("openDocWinLinux","Press Control+H now to open a browser window with more information related to editor accessibility."),d.outroMsg=h.a("outroMsg","You can dismiss this tooltip and return to the editor by pressing Escape or Shift+Escape."),d.showAccessibilityHelpAction=h.a("showAccessibilityHelpAction","Show Accessibility Help")})(P||(P={}));var L;(function(d){d.inspectTokensAction=h.a("inspectTokens","Developer: Inspect Tokens")})(L||(L={}));var A;(function(d){d.gotoLineActionLabel=h.a("gotoLineActionLabel","Go to Line/Column...")})(A||(A={}));var I;(function(d){d.helpQuickAccessActionLabel=h.a("helpQuickAccess","Show all Quick Access Providers")})(I||(I={}));var k;(function(d){d.quickCommandActionLabel=h.a("quickCommandActionLabel","Command Palette"),d.quickCommandHelp=h.a("quickCommandActionHelp","Show And Run Commands")})(k||(k={}));var O;(function(d){d.quickOutlineActionLabel=h.a("quickOutlineActionLabel","Go to Symbol..."),d.quickOutlineByCategoryActionLabel=h.a("quickOutlineByCategoryActionLabel","Go to Symbol by Category...")})(O||(O={}));var S;(function(d){d.editorViewAccessibleLabel=h.a("editorViewAccessibleLabel","Editor content"),d.accessibilityHelpMessage=h.a("accessibilityHelpMessage","Press Alt+F1 for Accessibility Options.")})(S||(S={}));var f;(function(d){d.toggleHighContrast=h.a("toggleHighContrast","Toggle High Contrast Theme")})(f||(f={}));var u;(function(d){d.bulkEditServiceSummary=h.a("bulkEditServiceSummary","Made {0} edits in {1} files")})(u||(u={}))},AKMP:function(ft,w,e){"use strict";e.d(w,"b",function(){return k}),e.d(w,"a",function(){return O});var h=e("EffR"),P=e("51f4"),L=e("XSiN"),A=e("pmY6"),I=e("MNsG");function k(S,f){let u=new L.a(f);return u.preventDefault(),{leftButton:u.leftButton,buttons:u.buttons,posx:u.posx,posy:u.posy}}class O{constructor(){this._hooks=new A.b,this._mouseMoveEventMerger=null,this._mouseMoveCallback=null,this._onStopCallback=null}dispose(){this.stopMonitoring(!1),this._hooks.dispose()}stopMonitoring(S,f){if(!this.isMonitoring())return;this._hooks.clear(),this._mouseMoveEventMerger=null,this._mouseMoveCallback=null;const u=this._onStopCallback;this._onStopCallback=null,S&&u&&u(f)}isMonitoring(){return!!this._mouseMoveEventMerger}startMonitoring(S,f,u,d,E){if(this.isMonitoring())return;this._mouseMoveEventMerger=u,this._mouseMoveCallback=d,this._onStopCallback=E;const p=P.a.getSameOriginWindowChain(),n=I.c?"pointermove":"mousemove",b="mouseup",m=p.map(l=>l.window.document),c=h.F(S);c&&m.unshift(c);for(const l of m)this._hooks.add(h.l(l,n,g=>{if(g.buttons!==f){this.stopMonitoring(!0);return}this._mouseMoveCallback(g)},(g,y)=>this._mouseMoveEventMerger(g,y))),this._hooks.add(h.i(l,b,g=>this.stopMonitoring(!0)));if(P.a.hasDifferentOriginAncestor()){let l=p[p.length-1];this._hooks.add(h.i(l.window.document,"mouseout",g=>{let y=new L.a(g);y.target.tagName.toLowerCase()==="html"&&this.stopMonitoring(!0)})),this._hooks.add(h.i(l.window.document,"mouseover",g=>{let y=new L.a(g);y.target.tagName.toLowerCase()==="html"&&this.stopMonitoring(!0)})),this._hooks.add(h.i(l.window.document.body,"mouseleave",g=>{this.stopMonitoring(!0)}))}}}},AbCa:function(ft,w,e){},ApJL:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"clojure",extensions:[".clj",".cljs",".cljc",".edn"],aliases:["clojure","Clojure"],loader:function(){return e.e(327).then(e.bind(null,"AoeA"))}})},Apug:function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("N0LK");class P{static visibleColumnFromColumn(L,A,I){const k=L.length,O=A-1=65536?2:1,u===9)S=P.nextRenderTabStop(S,I);else{let d=h.w(u);for(;f=65536?2:1,d=p}h.D(u)||h.B(u)?S=S+2:S=S+1}}return S}static visibleColumnsByColumns(L,A){const I=L.length;let k=new Array;k.push(-1);let O=0,S=0;for(;S=65536?2:1,k.push(O),f>=65536&&k.push(O),f===9)O=P.nextRenderTabStop(O,A);else{let u=h.w(f);for(;S=65536?2:1,k.push(O),f>=65536&&k.push(O),u=E}h.D(f)||h.B(f)?O=O+2:O=O+1}}return k.push(O),k}static visibleColumnFromColumn2(L,A,I){return this.visibleColumnFromColumn(A.getLineContent(I.lineNumber),I.column,L.tabSize)}static columnFromVisibleColumn(L,A,I){if(A<=0)return 1;const k=L.length;let O=0,S=1,f=0;for(;f=65536?2:1;let d;if(u===9)d=P.nextRenderTabStop(O,I);else{let p=h.w(u);for(;f=65536?2:1,p=b}h.D(u)||h.B(u)?d=O+2:d=O+1}const E=f+1;if(d>=A){const p=A-O,n=d-A;return nf?f:O}static nextRenderTabStop(L,A){return L+A-L%A}static nextIndentTabStop(L,A){return L+A-L%A}static prevRenderTabStop(L,A){return Math.max(0,L-1-(L-1)%A)}static prevIndentTabStop(L,A){return Math.max(0,L-1-(L-1)%A)}}},BEdG:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"xml",extensions:[".xml",".dtd",".ascx",".csproj",".config",".wxi",".wxl",".wxs",".xaml",".svg",".svgz",".opf",".xsl"],firstLine:"(\\<\\?xml.*)|(\\0&&A.getLanguageId(u-1)===S;)u--;return new P(A,S,u,f+1,A.getStartOffset(u),A.getEndOffset(f))}class P{constructor(A,I,k,O,S,f){this._scopedLineTokensBrand=void 0,this._actual=A,this.languageId=I,this._firstTokenIndex=k,this._lastTokenIndex=O,this.firstCharOffset=S,this._lastCharOffset=f}getLineContent(){const A=this._actual.getLineContent();return A.substring(this.firstCharOffset,this._lastCharOffset)}getActualLineContentBefore(A){const I=this._actual.getLineContent();return I.substring(0,this.firstCharOffset+A)}getTokenCount(){return this._lastTokenIndex-this._firstTokenIndex}findTokenIndexAtOffset(A){return this._actual.findTokenIndexAtOffset(A+this.firstCharOffset)-this._firstTokenIndex}getStandardTokenType(A){return this._actual.getStandardTokenType(A+this._firstTokenIndex)}}function L(A){return(A&7)!==0}},BUKB:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"tcl",extensions:[".tcl"],aliases:["tcl","Tcl","tcltk","TclTk","tcl/tk","Tcl/Tk"],loader:function(){return e.e(388).then(e.bind(null,"xT+r"))}})},BjKj:function(ft,w,e){},"C1Q+":function(ft,w,e){"use strict";e.d(w,"f",function(){return Pe}),e.d(w,"e",function(){return eo}),e.d(w,"b",function(){return bo}),e.d(w,"g",function(){return ao}),e.d(w,"h",function(){return So}),e.d(w,"d",function(){return Lo}),e.d(w,"c",function(){return xo}),e.d(w,"a",function(){return _o});var h=e("JQT/");class P{constructor(to){this.executor=to,this._didRun=!1}getValue(){if(!this._didRun)try{this._value=this.executor()}catch(to){this._error=to}finally{this._didRun=!0}if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}var L=e("pmY6"),A=e("N0LK"),I=e("sswD"),k=e("x/UI"),O=e("wQH0"),S=e("hJVp"),f=e("/cxE"),u=e("NR8r"),d=e("Cg/j"),E=e("EffR"),p=e("8HAY"),n=e("cGHE"),b=e("twdY"),m=e("nlbu"),c=e("Uzvx"),l=e("bexQ"),g=function(to,Wt,Ge,mt){var Gt=arguments.length,qe=Gt<3?Wt:mt===null?mt=Object.getOwnPropertyDescriptor(Wt,Ge):mt,tt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")qe=Reflect.decorate(to,Wt,Ge,mt);else for(var gt=to.length-1;gt>=0;gt--)(tt=to[gt])&&(qe=(Gt<3?tt(qe):Gt>3?tt(Wt,Ge,qe):tt(Wt,Ge))||qe);return Gt>3&&qe&&Object.defineProperty(Wt,Ge,qe),qe},y=function(to,Wt){return function(Ge,mt){Wt(Ge,mt,to)}},C=function(to,Wt,Ge,mt){function Gt(qe){return qe instanceof Ge?qe:new Ge(function(tt){tt(qe)})}return new(Ge||(Ge=Promise))(function(qe,tt){function gt(Ue){try{je(mt.next(Ue))}catch(Ye){tt(Ye)}}function $e(Ue){try{je(mt.throw(Ue))}catch(Ye){tt(Ye)}}function je(Ue){Ue.done?qe(Ue.value):Gt(Ue.value).then(gt,$e)}je((mt=mt.apply(to,Wt||[])).next())})};class v extends p.a{constructor(to,Wt){super(to.command?to.command.id:to.title,D(to.title),void 0,!to.disabled,Wt);this.action=to}}function D(to){return to.replace(/\r\n|\r|\n/g," ")}let j=class extends L.a{constructor(Wt,Ge,mt,Gt){super();this._editor=Wt,this._delegate=Ge,this._contextMenuService=mt,this._visible=!1,this._showingActions=this._register(new L.d),this._keybindingResolver=new V({getKeybindings:()=>Gt.getKeybindings()})}get isVisible(){return this._visible}show(Wt,Ge,mt,Gt){return C(this,void 0,void 0,function*(){const qe=Gt.includeDisabledActions?Ge.allActions:Ge.validActions;if(!qe.length){this._visible=!1;return}if(!this._editor.getDomNode())throw this._visible=!1,Object(f.b)();this._visible=!0,this._showingActions.value=Ge;const tt=this.getMenuActions(Wt,qe,Ge.documentation),gt=n.a.isIPosition(mt)?this._toCoords(mt):mt||{x:0,y:0},$e=this._keybindingResolver.getResolver(),je=this._editor.getOption(113);this._contextMenuService.showContextMenu({domForShadowRoot:je?this._editor.getDomNode():void 0,getAnchor:()=>gt,getActions:()=>tt,onHide:()=>{this._visible=!1,this._editor.focus()},autoSelectFirstItem:!0,getKeyBinding:Ue=>Ue instanceof v?$e(Ue.action):void 0})})}getMenuActions(Wt,Ge,mt){var Gt,qe;const tt=Ue=>new v(Ue.action,()=>this._delegate.onSelectCodeAction(Ue)),gt=Ge.map(tt),$e=[...mt],je=this._editor.getModel();if(je&>.length)for(const Ue of b.a.all(je))Ue._getAdditionalMenuItems&&$e.push(...Ue._getAdditionalMenuItems({trigger:Wt.type,only:(qe=(Gt=Wt.filter)===null||Gt===void 0?void 0:Gt.include)===null||qe===void 0?void 0:qe.value},Ge.map(Ye=>Ye.action)));return $e.length&>.push(new p.d,...$e.map(Ue=>tt(new S.a({title:Ue.title,command:Ue},void 0)))),gt}_toCoords(Wt){if(!this._editor.hasModel())return{x:0,y:0};this._editor.revealPosition(Wt,1),this._editor.render();const Ge=this._editor.getScrolledVisiblePosition(Wt),mt=Object(E.D)(this._editor.getDomNode()),Gt=mt.left+Ge.left,qe=mt.top+Ge.top+Ge.height;return{x:Gt,y:qe}}};j=g([y(2,c.a),y(3,l.a)],j);class V{constructor(to){this._keybindingProvider=to}getResolver(){const to=new P(()=>this._keybindingProvider.getKeybindings().filter(Wt=>V.codeActionCommands.indexOf(Wt.command)>=0).filter(Wt=>Wt.resolvedKeybinding).map(Wt=>{let Ge=Wt.commandArgs;return Wt.command===S.e?Ge={kind:m.b.SourceOrganizeImports.value}:Wt.command===S.c&&(Ge={kind:m.b.SourceFixAll.value}),Object.assign({resolvedKeybinding:Wt.resolvedKeybinding},m.a.fromUser(Ge,{kind:m.b.None,apply:"never"}))}));return Wt=>{if(Wt.kind){const Ge=this.bestKeybindingForCodeAction(Wt,to.getValue());return Ge==null?void 0:Ge.resolvedKeybinding}return}}bestKeybindingForCodeAction(to,Wt){if(!to.kind)return;const Ge=new m.b(to.kind);return Wt.filter(mt=>mt.kind.contains(Ge)).filter(mt=>mt.preferred?to.isPreferred:!0).reduceRight((mt,Gt)=>mt?mt.kind.contains(Gt.kind)?Gt:mt:Gt,void 0)}}V.codeActionCommands=[S.f,S.b,S.g,S.e,S.c];var G=e("AKMP"),B=e("pg8w"),z=e("Vhoy"),Y=e("MI8n"),K=e("MNXI"),Q=e("tX9W"),ee=e("3/fG"),Se=e("MD5Z"),fe=e("t9D7"),q=function(to,Wt,Ge,mt){var Gt=arguments.length,qe=Gt<3?Wt:mt===null?mt=Object.getOwnPropertyDescriptor(Wt,Ge):mt,tt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")qe=Reflect.decorate(to,Wt,Ge,mt);else for(var gt=to.length-1;gt>=0;gt--)(tt=to[gt])&&(qe=(Gt<3?tt(qe):Gt>3?tt(Wt,Ge,qe):tt(Wt,Ge))||qe);return Gt>3&&qe&&Object.defineProperty(Wt,Ge,qe),qe},te=function(to,Wt){return function(Ge,mt){Wt(Ge,mt,to)}},U;(function(to){to.Hidden={type:0};class Wt{constructor(Ge,mt,Gt,qe){this.actions=Ge,this.trigger=mt,this.editorPosition=Gt,this.widgetPosition=qe,this.type=1}}to.Showing=Wt})(U||(U={}));let H=class to extends L.a{constructor(Wt,Ge,mt,Gt){super();this._editor=Wt,this._quickFixActionId=Ge,this._preferredFixActionId=mt,this._keybindingService=Gt,this._onClick=this._register(new Y.b),this.onClick=this._onClick.event,this._state=U.Hidden,this._domNode=document.createElement("div"),this._domNode.className=z.b.lightBulb.classNames,this._editor.addContentWidget(this),this._register(this._editor.onDidChangeModelContent(qe=>{const tt=this._editor.getModel();(this.state.type!==1||!tt||this.state.editorPosition.lineNumber>=tt.getLineCount())&&this.hide()})),B.b.ignoreTarget(this._domNode),this._register(E.n(this._domNode,qe=>{if(this.state.type!==1)return;this._editor.focus(),qe.preventDefault();const{top:tt,height:gt}=E.D(this._domNode),$e=this._editor.getOption(58);let je=Math.floor($e/3);this.state.widgetPosition.position!==null&&this.state.widgetPosition.position.lineNumber{if((qe.buttons&1)!==1)return;this.hide();const tt=new G.a;tt.startMonitoring(qe.target,qe.buttons,G.b,()=>{},()=>{tt.dispose()})})),this._register(this._editor.onDidChangeConfiguration(qe=>{qe.hasChanged(56)&&!this._editor.getOption(56).enabled&&this.hide()})),this._updateLightBulbTitleAndIcon(),this._register(this._keybindingService.onDidUpdateKeybindings(this._updateLightBulbTitleAndIcon,this))}dispose(){super.dispose(),this._editor.removeContentWidget(this)}getId(){return"LightBulbWidget"}getDomNode(){return this._domNode}getPosition(){return this._state.type===1?this._state.widgetPosition:null}update(Wt,Ge,mt){if(Wt.validActions.length<=0)return this.hide();const Gt=this._editor.getOptions();if(!Gt.get(56).enabled)return this.hide();const qe=this._editor.getModel();if(!qe)return this.hide();const{lineNumber:tt,column:gt}=qe.validatePosition(mt),$e=qe.getOptions().tabSize,je=Gt.get(43),Ue=qe.getLineContent(tt),Ye=Q.c.computeIndentLevel(Ue,$e),Mt=je.spaceWidth*Ye>22,Bt=uo=>uo>2&&this._editor.getTopForLineNumber(uo)===this._editor.getTopForLineNumber(uo-1);let $t=tt;if(!Mt){if(tt>1&&!Bt(tt-1))$t-=1;else if(!Bt(tt+1))$t+=1;else if(gt*je.spaceWidth<22)return this.hide()}this.state=new U.Showing(Wt,Ge,mt,{position:{lineNumber:$t,column:1},preference:to._posPref}),this._editor.layoutContentWidget(this)}hide(){this.state=U.Hidden,this._editor.layoutContentWidget(this)}get state(){return this._state}set state(Wt){this._state=Wt,this._updateLightBulbTitleAndIcon()}_updateLightBulbTitleAndIcon(){if(this.state.type===1&&this.state.actions.hasAutoFix){this._domNode.classList.remove(...z.b.lightBulb.classNamesArray),this._domNode.classList.add(...z.b.lightbulbAutofix.classNamesArray);const Ge=this._keybindingService.lookupKeybinding(this._preferredFixActionId);if(Ge){this.title=ee.a("preferredcodeActionWithKb","Show Code Actions. Preferred Quick Fix Available ({0})",Ge.getLabel());return}}this._domNode.classList.remove(...z.b.lightbulbAutofix.classNamesArray),this._domNode.classList.add(...z.b.lightBulb.classNamesArray);const Wt=this._keybindingService.lookupKeybinding(this._quickFixActionId);Wt?this.title=ee.a("codeActionWithKb","Show Code Actions ({0})",Wt.getLabel()):this.title=ee.a("codeAction","Show Code Actions")}set title(Wt){this._domNode.title=Wt}};H._posPref=[0],H=q([te(3,l.a)],H),Object(fe.f)((to,Wt)=>{var Ge;const mt=(Ge=to.getColor(Se.r))===null||Ge===void 0?void 0:Ge.transparent(.7),Gt=to.getColor(Se.U);Gt&&Wt.addRule(` .monaco-editor .contentWidgets ${z.b.lightBulb.cssSelector} { color: ${Gt}; background-color: ${mt}; }`);const qe=to.getColor(Se.T);qe&&Wt.addRule(` .monaco-editor .contentWidgets ${z.b.lightbulbAutofix.cssSelector} { color: ${qe}; background-color: ${mt}; }`)});var W=function(to,Wt,Ge,mt){var Gt=arguments.length,qe=Gt<3?Wt:mt===null?mt=Object.getOwnPropertyDescriptor(Wt,Ge):mt,tt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")qe=Reflect.decorate(to,Wt,Ge,mt);else for(var gt=to.length-1;gt>=0;gt--)(tt=to[gt])&&(qe=(Gt<3?tt(qe):Gt>3?tt(Wt,Ge,qe):tt(Wt,Ge))||qe);return Gt>3&&qe&&Object.defineProperty(Wt,Ge,qe),qe},ne=function(to,Wt){return function(Ge,mt){Wt(Ge,mt,to)}},Ce=function(to,Wt,Ge,mt){function Gt(qe){return qe instanceof Ge?qe:new Ge(function(tt){tt(qe)})}return new(Ge||(Ge=Promise))(function(qe,tt){function gt(Ue){try{je(mt.next(Ue))}catch(Ye){tt(Ye)}}function $e(Ue){try{je(mt.throw(Ue))}catch(Ye){tt(Ye)}}function je(Ue){Ue.done?qe(Ue.value):Gt(Ue.value).then(gt,$e)}je((mt=mt.apply(to,Wt||[])).next())})},Le=function(to,Wt,Ge,mt,Gt){if(mt==="m")throw new TypeError("Private method is not writable");if(mt==="a"&&!Gt)throw new TypeError("Private accessor was defined without a setter");if(typeof Wt=="function"?to!==Wt||!Gt:!Wt.has(to))throw new TypeError("Cannot write private member to an object whose class did not declare it");return mt==="a"?Gt.call(to,Ge):Gt?Gt.value=Ge:Wt.set(to,Ge),Ge},ce=function(to,Wt,Ge,mt){if(Ge==="a"&&!mt)throw new TypeError("Private accessor was defined without a getter");if(typeof Wt=="function"?to!==Wt||!mt:!Wt.has(to))throw new TypeError("Cannot read private member from an object whose class did not declare it");return Ge==="m"?mt:Ge==="a"?mt.call(to):mt?mt.value:Wt.get(to)},me;let Oe=class extends L.a{constructor(Wt,Ge,mt,Gt,qe){super();this._editor=Wt,this.delegate=Gt,this._activeCodeActions=this._register(new L.d),me.set(this,!1),this._codeActionWidget=new P(()=>this._register(qe.createInstance(j,this._editor,{onSelectCodeAction:tt=>Ce(this,void 0,void 0,function*(){this.delegate.applyCodeAction(tt,!0)})}))),this._lightBulbWidget=new P(()=>{const tt=this._register(qe.createInstance(H,this._editor,Ge,mt));return this._register(tt.onClick(gt=>this.showCodeActionList(gt.trigger,gt.actions,gt,{includeDisabledActions:!1}))),tt})}dispose(){Le(this,me,!0,"f"),super.dispose()}update(Wt){var Ge,mt,Gt;return Ce(this,void 0,void 0,function*(){if(Wt.type!==1){(Ge=this._lightBulbWidget.rawValue)===null||Ge===void 0||Ge.hide();return}let qe;try{qe=yield Wt.actions}catch(tt){Object(f.f)(tt);return}if(ce(this,me,"f"))return;if(this._lightBulbWidget.getValue().update(qe,Wt.trigger,Wt.position),Wt.trigger.type===1){if((mt=Wt.trigger.filter)===null||mt===void 0?void 0:mt.include){const gt=this.tryGetValidActionToApply(Wt.trigger,qe);if(gt){try{this._lightBulbWidget.getValue().hide(),yield this.delegate.applyCodeAction(gt,!1)}finally{qe.dispose()}return}if(Wt.trigger.context){const $e=this.getInvalidActionThatWouldHaveBeenApplied(Wt.trigger,qe);if($e&&$e.action.disabled){u.a.get(this._editor).showMessage($e.action.disabled,Wt.trigger.context.position),qe.dispose();return}}}const tt=!!((Gt=Wt.trigger.filter)===null||Gt===void 0?void 0:Gt.include);if(Wt.trigger.context&&(!qe.allActions.length||!tt&&!qe.validActions.length)){u.a.get(this._editor).showMessage(Wt.trigger.context.notAvailableMessage,Wt.trigger.context.position),this._activeCodeActions.value=qe,qe.dispose();return}this._activeCodeActions.value=qe,this._codeActionWidget.getValue().show(Wt.trigger,qe,Wt.position,{includeDisabledActions:tt})}else this._codeActionWidget.getValue().isVisible?qe.dispose():this._activeCodeActions.value=qe})}getInvalidActionThatWouldHaveBeenApplied(Wt,Ge){return Ge.allActions.length&&(Wt.autoApply==="first"&&Ge.validActions.length===0||Wt.autoApply==="ifSingle"&&Ge.allActions.length===1)?Ge.allActions.find(({action:mt})=>mt.disabled):void 0}tryGetValidActionToApply(Wt,Ge){return Ge.validActions.length&&(Wt.autoApply==="first"&&Ge.validActions.length>0||Wt.autoApply==="ifSingle"&&Ge.validActions.length===1)?Ge.validActions[0]:void 0}showCodeActionList(Wt,Ge,mt,Gt){return Ce(this,void 0,void 0,function*(){this._codeActionWidget.getValue().show(Wt,Ge,mt,Gt)})}};me=new WeakMap,Oe=W([ne(4,d.a)],Oe);var oe=e("nnTU"),De=e("T8No"),Ne=e("tADe"),ve=e("sM1p"),re=e("tTk5"),we=e("XXUj"),Ie=e("X+cX"),ge=e("gslv"),ye=e("aokT"),ze=function(to,Wt,Ge,mt){if(Ge==="a"&&!mt)throw new TypeError("Private accessor was defined without a getter");if(typeof Wt=="function"?to!==Wt||!mt:!Wt.has(to))throw new TypeError("Cannot read private member from an object whose class did not declare it");return Ge==="m"?mt:Ge==="a"?mt.call(to):mt?mt.value:Wt.get(to)},xe=function(to,Wt,Ge,mt,Gt){if(mt==="m")throw new TypeError("Private method is not writable");if(mt==="a"&&!Gt)throw new TypeError("Private accessor was defined without a setter");if(typeof Wt=="function"?to!==Wt||!Gt:!Wt.has(to))throw new TypeError("Cannot write private member to an object whose class did not declare it");return mt==="a"?Gt.call(to,Ge):Gt?Gt.value=Ge:Wt.set(to,Ge),Ge},Te;const He=new De.c("supportedCodeAction","");class st extends L.a{constructor(to,Wt,Ge,mt=250){super();this._editor=to,this._markerService=Wt,this._signalChange=Ge,this._delay=mt,this._autoTriggerTimer=this._register(new Ie.g),this._register(this._markerService.onMarkerChanged(Gt=>this._onMarkerChanges(Gt))),this._register(this._editor.onDidChangeCursorPosition(()=>this._onCursorChange()))}trigger(to){const Wt=this._getRangeOfSelectionUnlessWhitespaceEnclosed(to);return this._createEventAndSignalChange(to,Wt)}_onMarkerChanges(to){const Wt=this._editor.getModel();if(!Wt)return;to.some(Ge=>Object(ge.f)(Ge,Wt.uri))&&this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2})},this._delay)}_onCursorChange(){this._autoTriggerTimer.cancelAndSet(()=>{this.trigger({type:2})},this._delay)}_getRangeOfMarker(to){const Wt=this._editor.getModel();if(!Wt)return;for(const Ge of this._markerService.read({resource:Wt.uri})){const mt=Wt.validateRange(Ge);if(ye.a.intersectRanges(mt,to))return ye.a.lift(mt)}return}_getRangeOfSelectionUnlessWhitespaceEnclosed(to){if(!this._editor.hasModel())return;const Wt=this._editor.getModel(),Ge=this._editor.getSelection();if(Ge.isEmpty()&&to.type===2){const{lineNumber:mt,column:Gt}=Ge.getPosition(),qe=Wt.getLineContent(mt);if(qe.length===0)return;if(Gt===1){if(/\s/.test(qe[0]))return}else if(Gt===Wt.getLineMaxColumn(mt)){if(/\s/.test(qe[qe.length-1]))return}else if(/\s/.test(qe[Gt-2])&&/\s/.test(qe[Gt-1]))return}return Ge}_createEventAndSignalChange(to,Wt){const Ge=this._editor.getModel();if(!Wt||!Ge){this._signalChange(void 0);return}const mt=this._getRangeOfMarker(Wt),Gt=mt?mt.getStartPosition():Wt.getStartPosition(),qe={trigger:to,selection:Wt,position:Gt};return this._signalChange(qe),qe}}var nt;(function(to){to.Empty={type:0};class Wt{constructor(Ge,mt,Gt,qe){this.trigger=Ge,this.rangeOrSelection=mt,this.position=Gt,this._cancellablePromise=qe,this.type=1,this.actions=qe.catch(tt=>{if(Object(f.e)(tt))return rt;throw tt})}cancel(){this._cancellablePromise.cancel()}}to.Triggered=Wt})(nt||(nt={}));const rt={allActions:[],validActions:[],dispose:()=>{},documentation:[],hasAutoFix:!1};class wt extends L.a{constructor(to,Wt,Ge,mt){super();this._editor=to,this._markerService=Wt,this._progressService=mt,this._codeActionOracle=this._register(new L.d),this._state=nt.Empty,this._onDidChangeState=this._register(new Y.b),this.onDidChangeState=this._onDidChangeState.event,Te.set(this,!1),this._supportedCodeActions=He.bindTo(Ge),this._register(this._editor.onDidChangeModel(()=>this._update())),this._register(this._editor.onDidChangeModelLanguage(()=>this._update())),this._register(b.a.onDidChange(()=>this._update())),this._update()}dispose(){if(ze(this,Te,"f"))return;xe(this,Te,!0,"f"),super.dispose(),this.setState(nt.Empty,!0)}_update(){if(ze(this,Te,"f"))return;this._codeActionOracle.value=void 0,this.setState(nt.Empty);const to=this._editor.getModel();if(to&&b.a.has(to)&&!this._editor.getOption(80)){const Wt=[];for(const Ge of b.a.all(to))Array.isArray(Ge.providedCodeActionKinds)&&Wt.push(...Ge.providedCodeActionKinds);this._supportedCodeActions.set(Wt.join(" ")),this._codeActionOracle.value=new st(this._editor,this._markerService,Ge=>{var mt;if(!Ge){this.setState(nt.Empty);return}const Gt=Object(Ie.h)(qe=>Object(S.d)(to,Ge.selection,Ge.trigger,re.b.None,qe));Ge.trigger.type===1&&((mt=this._progressService)===null||mt===void 0||mt.showWhile(Gt,250)),this.setState(new nt.Triggered(Ge.trigger,Ge.selection,Ge.position,Gt))},void 0),this._codeActionOracle.value.trigger({type:2})}else this._supportedCodeActions.reset()}trigger(to){this._codeActionOracle.value&&this._codeActionOracle.value.trigger(to)}setState(to,Wt){if(to===this._state)return;this._state.type===1&&this._state.cancel(),this._state=to,!Wt&&!ze(this,Te,"f")&&this._onDidChangeState.fire(to)}}Te=new WeakMap;var Pt=function(to,Wt,Ge,mt){var Gt=arguments.length,qe=Gt<3?Wt:mt===null?mt=Object.getOwnPropertyDescriptor(Wt,Ge):mt,tt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")qe=Reflect.decorate(to,Wt,Ge,mt);else for(var gt=to.length-1;gt>=0;gt--)(tt=to[gt])&&(qe=(Gt<3?tt(qe):Gt>3?tt(Wt,Ge,qe):tt(Wt,Ge))||qe);return Gt>3&&qe&&Object.defineProperty(Wt,Ge,qe),qe},no=function(to,Wt){return function(Ge,mt){Wt(Ge,mt,to)}},ht=function(to,Wt,Ge,mt){function Gt(qe){return qe instanceof Ge?qe:new Ge(function(tt){tt(qe)})}return new(Ge||(Ge=Promise))(function(qe,tt){function gt(Ue){try{je(mt.next(Ue))}catch(Ye){tt(Ye)}}function $e(Ue){try{je(mt.throw(Ue))}catch(Ye){tt(Ye)}}function je(Ue){Ue.done?qe(Ue.value):Gt(Ue.value).then(gt,$e)}je((mt=mt.apply(to,Wt||[])).next())})};function lt(to){return De.a.regex(He.keys()[0],new RegExp("(\\s|^)"+Object(A.t)(to.value)+"\\b"))}const le={type:"object",defaultSnippets:[{body:{kind:""}}],properties:{kind:{type:"string",description:ee.a("args.schema.kind","Kind of the code action to run.")},apply:{type:"string",description:ee.a("args.schema.apply","Controls when the returned actions are applied."),default:"ifSingle",enum:["first","ifSingle","never"],enumDescriptions:[ee.a("args.schema.apply.first","Always apply the first returned code action."),ee.a("args.schema.apply.ifSingle","Apply the first returned code action if it is the only one."),ee.a("args.schema.apply.never","Do not apply the returned code actions.")]},preferred:{type:"boolean",default:!1,description:ee.a("args.schema.preferred","Controls if only preferred code actions should be returned.")}}};let Pe=class to extends L.a{constructor(Wt,Ge,mt,Gt,qe){super();this._instantiationService=qe,this._editor=Wt,this._model=this._register(new wt(this._editor,Ge,mt,Gt)),this._register(this._model.onDidChangeState(tt=>this.update(tt))),this._ui=new P(()=>this._register(new Oe(Wt,eo.Id,_o.Id,{applyCodeAction:(tt,gt)=>ht(this,void 0,void 0,function*(){try{yield this._applyCodeAction(tt)}finally{gt&&this._trigger({type:2,filter:{}})}})},this._instantiationService)))}static get(Wt){return Wt.getContribution(to.ID)}update(Wt){this._ui.getValue().update(Wt)}showCodeActions(Wt,Ge,mt){return this._ui.getValue().showCodeActionList(Wt,Ge,mt,{includeDisabledActions:!1})}manualTriggerAtCurrentPosition(Wt,Ge,mt){if(!this._editor.hasModel())return;u.a.get(this._editor).closeMessage();const Gt=this._editor.getPosition();this._trigger({type:1,filter:Ge,autoApply:mt,context:{notAvailableMessage:Wt,position:Gt}})}_trigger(Wt){return this._model.trigger(Wt)}_applyCodeAction(Wt){return this._instantiationService.invokeFunction(it,Wt,this._editor)}};Pe.ID="editor.contrib.quickFixController",Pe=Pt([no(1,Ne.b),no(2,De.b),no(3,re.a),no(4,d.a)],Pe);function it(to,Wt,Ge){return ht(this,void 0,void 0,function*(){const mt=to.get(k.a),Gt=to.get(oe.b),qe=to.get(we.a),tt=to.get(ve.a);if(qe.publicLog2("codeAction.applyCodeAction",{codeActionTitle:Wt.action.title,codeActionKind:Wt.action.kind,codeActionIsPreferred:!!Wt.action.isPreferred}),yield Wt.resolve(h.a.None),Wt.action.edit&&(yield mt.apply(k.b.convert(Wt.action.edit),{editor:Ge,label:Wt.action.title})),Wt.action.command)try{yield Gt.executeCommand(Wt.action.command.id,...Wt.action.command.arguments||[])}catch(gt){const $e=Dt(gt);tt.error(typeof $e=="string"?$e:ee.a("applyCodeActionFailed","An unknown error occurred while applying the code action"))}})}function Dt(to){return typeof to=="string"?to:to instanceof Error&&typeof to.message=="string"?to.message:void 0}function kt(to,Wt,Ge,mt){if(to.hasModel()){const Gt=Pe.get(to);Gt&&Gt.manualTriggerAtCurrentPosition(Wt,Ge,mt)}}class eo extends I.b{constructor(){super({id:eo.Id,label:ee.a("quickfix.trigger.label","Quick Fix..."),alias:"Quick Fix...",precondition:De.a.and(O.a.writable,O.a.hasCodeActionsProvider),kbOpts:{kbExpr:O.a.editorTextFocus,primary:2048|84,weight:100}})}run(to,Wt){return kt(Wt,ee.a("editor.action.quickFix.noneMessage","No code actions available"),void 0,void 0)}}eo.Id="editor.action.quickFix";class bo extends I.c{constructor(){super({id:S.b,precondition:De.a.and(O.a.writable,O.a.hasCodeActionsProvider),description:{description:"Trigger a code action",args:[{name:"args",schema:le}]}})}runEditorCommand(to,Wt,Ge){const mt=m.a.fromUser(Ge,{kind:m.b.Empty,apply:"ifSingle"});return kt(Wt,typeof(Ge==null?void 0:Ge.kind)=="string"?mt.preferred?ee.a("editor.action.codeAction.noneMessage.preferred.kind","No preferred code actions for '{0}' available",Ge.kind):ee.a("editor.action.codeAction.noneMessage.kind","No code actions for '{0}' available",Ge.kind):mt.preferred?ee.a("editor.action.codeAction.noneMessage.preferred","No preferred code actions available"):ee.a("editor.action.codeAction.noneMessage","No code actions available"),{include:mt.kind,includeSourceActions:!0,onlyIncludePreferredActions:mt.preferred},mt.apply)}}class ao extends I.b{constructor(){super({id:S.f,label:ee.a("refactor.label","Refactor..."),alias:"Refactor...",precondition:De.a.and(O.a.writable,O.a.hasCodeActionsProvider),kbOpts:{kbExpr:O.a.editorTextFocus,primary:2048|1024|48,mac:{primary:256|1024|48},weight:100},contextMenuOpts:{group:"1_modification",order:2,when:De.a.and(O.a.writable,lt(m.b.Refactor))},description:{description:"Refactor...",args:[{name:"args",schema:le}]}})}run(to,Wt,Ge){const mt=m.a.fromUser(Ge,{kind:m.b.Refactor,apply:"never"});return kt(Wt,typeof(Ge==null?void 0:Ge.kind)=="string"?mt.preferred?ee.a("editor.action.refactor.noneMessage.preferred.kind","No preferred refactorings for '{0}' available",Ge.kind):ee.a("editor.action.refactor.noneMessage.kind","No refactorings for '{0}' available",Ge.kind):mt.preferred?ee.a("editor.action.refactor.noneMessage.preferred","No preferred refactorings available"):ee.a("editor.action.refactor.noneMessage","No refactorings available"),{include:m.b.Refactor.contains(mt.kind)?mt.kind:m.b.None,onlyIncludePreferredActions:mt.preferred},mt.apply)}}class So extends I.b{constructor(){super({id:S.g,label:ee.a("source.label","Source Action..."),alias:"Source Action...",precondition:De.a.and(O.a.writable,O.a.hasCodeActionsProvider),contextMenuOpts:{group:"1_modification",order:2.1,when:De.a.and(O.a.writable,lt(m.b.Source))},description:{description:"Source Action...",args:[{name:"args",schema:le}]}})}run(to,Wt,Ge){const mt=m.a.fromUser(Ge,{kind:m.b.Source,apply:"never"});return kt(Wt,typeof(Ge==null?void 0:Ge.kind)=="string"?mt.preferred?ee.a("editor.action.source.noneMessage.preferred.kind","No preferred source actions for '{0}' available",Ge.kind):ee.a("editor.action.source.noneMessage.kind","No source actions for '{0}' available",Ge.kind):mt.preferred?ee.a("editor.action.source.noneMessage.preferred","No preferred source actions available"):ee.a("editor.action.source.noneMessage","No source actions available"),{include:m.b.Source.contains(mt.kind)?mt.kind:m.b.None,includeSourceActions:!0,onlyIncludePreferredActions:mt.preferred},mt.apply)}}class Lo extends I.b{constructor(){super({id:S.e,label:ee.a("organizeImports.label","Organize Imports"),alias:"Organize Imports",precondition:De.a.and(O.a.writable,lt(m.b.SourceOrganizeImports)),kbOpts:{kbExpr:O.a.editorTextFocus,primary:1024|512|45,weight:100}})}run(to,Wt){return kt(Wt,ee.a("editor.action.organize.noneMessage","No organize imports action available"),{include:m.b.SourceOrganizeImports,includeSourceActions:!0},"ifSingle")}}class xo extends I.b{constructor(){super({id:S.c,label:ee.a("fixAll.label","Fix All"),alias:"Fix All",precondition:De.a.and(O.a.writable,lt(m.b.SourceFixAll))})}run(to,Wt){return kt(Wt,ee.a("fixAll.noneMessage","No fix all action available"),{include:m.b.SourceFixAll,includeSourceActions:!0},"ifSingle")}}class _o extends I.b{constructor(){super({id:_o.Id,label:ee.a("autoFix.label","Auto Fix..."),alias:"Auto Fix...",precondition:De.a.and(O.a.writable,lt(m.b.QuickFix)),kbOpts:{kbExpr:O.a.editorTextFocus,primary:512|1024|84,mac:{primary:2048|512|84},weight:100}})}run(to,Wt){return kt(Wt,ee.a("editor.action.autoFix.noneMessage","No auto fixes available"),{include:m.b.QuickFix,onlyIncludePreferredActions:!0},"ifSingle")}}_o.Id="editor.action.autoFix"},C6rC:function(ft,w,e){},CClx:function(ft,w,e){},CDaH:function(ft,w,e){},CRAX:function(ft,w,e){"use strict";e.d(w,"a",function(){return k}),e.d(w,"b",function(){return c}),e.d(w,"c",function(){return l});var h=e("MI8n"),P=e("746U"),L=e("3/fG"),A=e("3Rsk"),I=e("ic2d");const k={Configuration:"base.contributions.configuration"},O={properties:{},patternProperties:{}},S={properties:{},patternProperties:{}},f={properties:{},patternProperties:{}},u={properties:{},patternProperties:{}},d={properties:{},patternProperties:{}},E={properties:{},patternProperties:{}},p="vscode://schemas/settings/resourceLanguage",n=I.a.as(A.a.JSONContribution);class b{constructor(){this.overrideIdentifiers=new Set,this._onDidSchemaChange=new h.b,this._onDidUpdateConfiguration=new h.b,this.defaultValues={},this.defaultLanguageConfigurationOverridesNode={id:"defaultOverrides",title:L.a("defaultLanguageConfigurationOverrides.title","Default Language Configuration Overrides"),properties:{}},this.configurationContributors=[this.defaultLanguageConfigurationOverridesNode],this.resourceLanguageSettingsSchema={properties:{},patternProperties:{},additionalProperties:!1,errorMessage:"Unknown editor configuration setting",allowTrailingCommas:!0,allowComments:!0},this.configurationProperties={},this.excludedConfigurationProperties={},n.registerSchema(p,this.resourceLanguageSettingsSchema)}registerConfiguration(v,D=!0){this.registerConfigurations([v],D)}registerConfigurations(v,D=!0){const j=this.doRegisterConfigurations(v,D);n.registerSchema(p,this.resourceLanguageSettingsSchema),this._onDidSchemaChange.fire(),this._onDidUpdateConfiguration.fire(j)}registerOverrideIdentifiers(v){for(const D of v)this.overrideIdentifiers.add(D);this.updateOverridePropertyPatternKey()}doRegisterConfigurations(v,D){const j=[];return v.forEach(V=>{j.push(...this.validateAndRegisterProperties(V,D,V.extensionInfo)),this.configurationContributors.push(V),this.registerJSONConfiguration(V)}),j}validateAndRegisterProperties(v,D=!0,j,V=3){var G;V=P.n(v.scope)?V:v.scope;let B=[],z=v.properties;if(z)for(let K in z){if(D&&C(K)){delete z[K];continue}const Q=z[K];if(this.updatePropertyDefaultValue(K,Q),c.test(K)?Q.scope=void 0:(Q.scope=P.n(Q.scope)?V:Q.scope,Q.restricted=P.n(Q.restricted)?!!((G=j==null?void 0:j.restrictedConfigurations)===null||G===void 0?void 0:G.includes(K)):Q.restricted),z[K].hasOwnProperty("included")&&!z[K].included){this.excludedConfigurationProperties[K]=z[K],delete z[K];continue}else this.configurationProperties[K]=z[K];!z[K].deprecationMessage&&z[K].markdownDeprecationMessage&&(z[K].deprecationMessage=z[K].markdownDeprecationMessage),B.push(K)}let Y=v.allOf;if(Y)for(let K of Y)B.push(...this.validateAndRegisterProperties(K,D,j,V));return B}getConfigurationProperties(){return this.configurationProperties}registerJSONConfiguration(v){const D=j=>{let V=j.properties;if(V)for(const B in V)this.updateSchema(B,V[B]);let G=j.allOf;G&&G.forEach(D)};D(v)}updateSchema(v,D){O.properties[v]=D;switch(D.scope){case 1:S.properties[v]=D;break;case 2:f.properties[v]=D;break;case 6:u.properties[v]=D;break;case 3:d.properties[v]=D;break;case 4:E.properties[v]=D;break;case 5:E.properties[v]=D,this.resourceLanguageSettingsSchema.properties[v]=D;break}}updateOverridePropertyPatternKey(){for(const v of this.overrideIdentifiers.values()){const D=`[${v}]`,j={type:"object",description:L.a("overrideSettings.defaultDescription","Configure editor settings to be overridden for a language."),errorMessage:L.a("overrideSettings.errorMessage","This setting does not support per-language configuration."),$ref:p};this.updatePropertyDefaultValue(D,j),O.properties[D]=j,S.properties[D]=j,f.properties[D]=j,u.properties[D]=j,d.properties[D]=j,E.properties[D]=j}this._onDidSchemaChange.fire()}updatePropertyDefaultValue(v,D){let j=this.defaultValues[v];P.m(j)&&(j=D.default),P.m(j)&&(j=g(D.type)),D.default=j}}const m="\\[.*\\]$",c=new RegExp(m);function l(v){return v.substring(1,v.length-1)}function g(v){const D=Array.isArray(v)?v[0]:v;switch(D){case"boolean":return!1;case"integer":case"number":return 0;case"string":return"";case"array":return[];case"object":return{};default:return null}}const y=new b;I.a.add(k.Configuration,y);function C(v){return v.trim()?c.test(v)?L.a("config.property.languageDefault","Cannot register '{0}'. This matches property pattern '\\\\[.*\\\\]$' for describing language specific editor settings. Use 'configurationDefaults' contribution.",v):y.getConfigurationProperties()[v]!==void 0?L.a("config.property.duplicate","Cannot register '{0}'. This property is already registered.",v):null:L.a("config.property.empty","Cannot register an empty property")}},CZ1j:function(ft,w,e){"use strict";e.d(w,"b",function(){return h}),e.d(w,"a",function(){return P});function h(L){return L<0?0:L>255?255:L|0}function P(L){return L<0?0:L>4294967295?4294967295:L|0}},CdFp:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"abap",extensions:[".abap"],aliases:["abap","ABAP"],loader:function(){return e.e(321).then(e.bind(null,"6Xso"))}})},Cduo:function(ft,w,e){"use strict";e.d(w,"a",function(){return L});var h=e("0/Sa"),P=e("aokT");class L{static _handleEolEdits(A,I){let k,O=[];for(let S of I)typeof S.eol=="number"&&(k=S.eol),S.range&&typeof S.text=="string"&&O.push(S);return typeof k=="number"&&(A.hasModel()&&A.getModel().pushEOL(k)),O}static _isFullModelReplaceEdit(A,I){if(!A.hasModel())return!1;const k=A.getModel(),O=k.validateRange(I.range),S=k.getFullModelRange();return S.equalsRange(O)}static execute(A,I,k){k&&A.pushUndoStop();const O=L._handleEolEdits(A,I);O.length===1&&L._isFullModelReplaceEdit(A,O[0])?A.executeEdits("formatEditsCommand",O.map(S=>h.a.replace(P.a.lift(S.range),S.text))):A.executeEdits("formatEditsCommand",O.map(S=>h.a.replaceMove(P.a.lift(S.range),S.text))),k&&A.pushUndoStop()}}},CjF5:function(ft,w,e){"use strict";e.d(w,"a",function(){return L});var h=e("D3Dy"),P=e("MNsG");const L={clipboard:{writeText:P.g||document.queryCommandSupported&&document.queryCommandSupported("copy")||!!(navigator&&navigator.clipboard&&navigator.clipboard.writeText),readText:P.g||!!(navigator&&navigator.clipboard&&navigator.clipboard.readText)},keyboard:(()=>P.g||h.i?0:navigator.keyboard||h.h?1:2)(),touch:"ontouchstart"in window||navigator.maxTouchPoints>0,pointerEvents:window.PointerEvent&&("ontouchstart"in window||window.navigator.maxTouchPoints>0||navigator.maxTouchPoints>0)}},CjOT:function(ft,w,e){},Comh:function(ft,w,e){"use strict";e.d(w,"c",function(){return A}),e.d(w,"b",function(){return I}),e.d(w,"a",function(){return k});var h=e("N0LK"),P=e("cGHE"),L=e("aokT");const A=!1;class I{constructor(O,S,f,u,d){this.value=O,this.selectionStart=S,this.selectionEnd=f,this.selectionStartPosition=u,this.selectionEndPosition=d}toString(){return"[ <"+this.value+">, selectionStart: "+this.selectionStart+", selectionEnd: "+this.selectionEnd+"]"}static readFromTextArea(O){return new I(O.getValue(),O.getSelectionStart(),O.getSelectionEnd(),null,null)}collapseSelection(){return new I(this.value,this.value.length,this.value.length,null,null)}writeToTextArea(O,S,f){A&&console.log("writeToTextArea "+O+": "+this.toString()),S.setValue(O,this.value),f&&S.setSelectionRange(O,this.selectionStart,this.selectionEnd)}deduceEditorPosition(O){if(O<=this.selectionStart){const u=this.value.substring(O,this.selectionStart);return this._finishDeduceEditorPosition(this.selectionStartPosition,u,-1)}if(O>=this.selectionEnd){const u=this.value.substring(this.selectionEnd,O);return this._finishDeduceEditorPosition(this.selectionEndPosition,u,1)}const S=this.value.substring(this.selectionStart,O);if(S.indexOf(String.fromCharCode(8230))===-1)return this._finishDeduceEditorPosition(this.selectionStartPosition,S,1);const f=this.value.substring(O,this.selectionEnd);return this._finishDeduceEditorPosition(this.selectionEndPosition,f,-1)}_finishDeduceEditorPosition(O,S,f){let u=0,d=-1;for(;(d=S.indexOf(` `,d+1))!==-1;)u++;return[O,f*S.length,u]}static selectedText(O){return new I(O,0,O.length,null,null)}static deduceInput(O,S,f){if(!O)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};A&&(console.log("------------------------deduceInput"),console.log("PREVIOUS STATE: "+O.toString()),console.log("CURRENT STATE: "+S.toString()));let u=O.value,d=O.selectionStart,E=O.selectionEnd,p=S.value,n=S.selectionStart,b=S.selectionEnd;const m=u.substring(E),c=p.substring(b),l=h.e(m,c);p=p.substring(0,p.length-l),u=u.substring(0,u.length-l);const g=u.substring(0,d),y=p.substring(0,n),C=h.d(g,y);if(p=p.substring(C),u=u.substring(C),n-=C,d-=C,b-=C,E-=C,A&&(console.log("AFTER DIFFING PREVIOUS STATE: <"+u+">, selectionStart: "+d+", selectionEnd: "+E),console.log("AFTER DIFFING CURRENT STATE: <"+p+">, selectionStart: "+n+", selectionEnd: "+b)),f&&n===b&&u.length>0){let D=null;if(n===p.length?p.startsWith(u)&&(D=p.substring(u.length)):p.endsWith(u)&&(D=p.substring(0,p.length-u.length)),D!==null&&D.length>0&&(/\uFE0F/.test(D)||h.k(D)))return{text:D,replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0}}if(n===b){if(u===p&&d===0&&E===u.length&&n===p.length&&p.indexOf(` `)===-1&&h.l(p))return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};const D=g.length-C;return A&&console.log("REMOVE PREVIOUS: "+(g.length-C)+" chars"),{text:p,replacePrevCharCnt:D,replaceNextCharCnt:0,positionDelta:0}}const v=E-d;return{text:p,replacePrevCharCnt:v,replaceNextCharCnt:0,positionDelta:0}}static deduceAndroidCompositionInput(O,S){if(!O)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:0};if(A&&(console.log("------------------------deduceAndroidCompositionInput"),console.log("PREVIOUS STATE: "+O.toString()),console.log("CURRENT STATE: "+S.toString())),O.value===S.value)return{text:"",replacePrevCharCnt:0,replaceNextCharCnt:0,positionDelta:S.selectionEnd-O.selectionEnd};const f=Math.min(h.d(O.value,S.value),O.selectionEnd),u=Math.min(h.e(O.value,S.value),O.value.length-O.selectionEnd),d=O.value.substring(f,O.value.length-u),E=S.value.substring(f,S.value.length-u),p=O.selectionStart-f,n=O.selectionEnd-f,b=S.selectionStart-f,m=S.selectionEnd-f;return A&&(console.log("AFTER DIFFING PREVIOUS STATE: <"+d+">, selectionStart: "+p+", selectionEnd: "+n),console.log("AFTER DIFFING CURRENT STATE: <"+E+">, selectionStart: "+b+", selectionEnd: "+m)),{text:E,replacePrevCharCnt:n,replaceNextCharCnt:d.length-n,positionDelta:m-E.length}}}I.EMPTY=new I("",0,0,null,null);class k{static _getPageOfLine(O,S){return Math.floor((O-1)/S)}static _getRangeForPage(O,S){const f=O*S,u=f+1,d=f+S;return new L.a(u,1,d+1,1)}static fromEditorSelection(O,S,f,u,d){const E=k._getPageOfLine(f.startLineNumber,u),p=k._getRangeForPage(E,u),n=k._getPageOfLine(f.endLineNumber,u),b=k._getRangeForPage(n,u),m=p.intersectRanges(new L.a(1,1,f.startLineNumber,f.startColumn));let c=S.getValueInRange(m,1);const l=S.getLineCount(),g=S.getLineMaxColumn(l),y=b.intersectRanges(new L.a(f.endLineNumber,f.endColumn,l,g));let C=S.getValueInRange(y,1),v;if(E===n||E+1===n)v=S.getValueInRange(f,1);else{const D=p.intersectRanges(f),j=b.intersectRanges(f);v=S.getValueInRange(D,1)+String.fromCharCode(8230)+S.getValueInRange(j,1)}if(d){const D=500;c.length>D&&(c=c.substring(c.length-D,c.length)),C.length>D&&(C=C.substring(0,D)),v.length>2*D&&(v=v.substring(0,D)+String.fromCharCode(8230)+v.substring(v.length-D,v.length))}return new I(c+v+C,c.length,c.length+v.length,new P.a(f.startLineNumber,f.startColumn),new P.a(f.endLineNumber,f.endColumn))}}},CriS:function(ft,w,e){"use strict";var h=e("M/lh"),P=e.n(h);e.o(h,"Emitter")&&e.d(w,"Emitter",function(){return h.Emitter}),e.o(h,"MarkerSeverity")&&e.d(w,"MarkerSeverity",function(){return h.MarkerSeverity}),e.o(h,"Range")&&e.d(w,"Range",function(){return h.Range}),e.o(h,"Uri")&&e.d(w,"Uri",function(){return h.Uri}),e.o(h,"editor")&&e.d(w,"editor",function(){return h.editor}),e.o(h,"languages")&&e.d(w,"languages",function(){return h.languages})},CxEt:function(ft,w,e){"use strict";e.r(w);var h=e("sswD"),P=e("C1Q+");Object(h.l)(P.f.ID,P.f),Object(h.j)(P.e),Object(h.j)(P.g),Object(h.j)(P.h),Object(h.j)(P.d),Object(h.j)(P.a),Object(h.j)(P.c),Object(h.k)(new P.b)},CzyV:function(ft,w,e){"use strict";var h=e("M/lh"),P=e.n(h);e.o(h,"Emitter")&&e.d(w,"Emitter",function(){return h.Emitter}),e.o(h,"MarkerSeverity")&&e.d(w,"MarkerSeverity",function(){return h.MarkerSeverity}),e.o(h,"Range")&&e.d(w,"Range",function(){return h.Range}),e.o(h,"Uri")&&e.d(w,"Uri",function(){return h.Uri}),e.o(h,"editor")&&e.d(w,"editor",function(){return h.editor}),e.o(h,"languages")&&e.d(w,"languages",function(){return h.languages})},D3Dy:function(ft,w,e){"use strict";e.d(w,"d",function(){return L}),e.d(w,"b",function(){return A}),e.d(w,"l",function(){return I}),e.d(w,"c",function(){return k}),e.d(w,"a",function(){return O}),e.d(w,"g",function(){return f}),e.d(w,"j",function(){return u}),e.d(w,"f",function(){return d}),e.d(w,"h",function(){return E}),e.d(w,"k",function(){return p}),e.d(w,"e",function(){return n}),e.d(w,"i",function(){return b});var h=e("MI8n");class P{constructor(){this._zoomLevel=0,this._lastZoomLevelChangeTime=0,this._onDidChangeZoomLevel=new h.b,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event,this._zoomFactor=1}getZoomLevel(){return this._zoomLevel}getTimeSinceLastZoomLevelChanged(){return Date.now()-this._lastZoomLevelChangeTime}getZoomFactor(){return this._zoomFactor}getPixelRatio(){let m=document.createElement("canvas").getContext("2d"),c=window.devicePixelRatio||1,l=m.webkitBackingStorePixelRatio||m.mozBackingStorePixelRatio||m.msBackingStorePixelRatio||m.oBackingStorePixelRatio||m.backingStorePixelRatio||1;return c/l}}P.INSTANCE=new P;function L(){return P.INSTANCE.getZoomLevel()}function A(){return P.INSTANCE.getTimeSinceLastZoomLevelChanged()}function I(m){return P.INSTANCE.onDidChangeZoomLevel(m)}function k(){return P.INSTANCE.getZoomFactor()}function O(){return P.INSTANCE.getPixelRatio()}const S=navigator.userAgent,f=S.indexOf("Firefox")>=0,u=S.indexOf("AppleWebKit")>=0,d=S.indexOf("Chrome")>=0,E=!d&&S.indexOf("Safari")>=0,p=!d&&!E&&u,n=S.indexOf("Android")>=0,b=window.matchMedia&&window.matchMedia("(display-mode: standalone)").matches},DTDp:function(ft,w,e){},Dvnd:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"kotlin",extensions:[".kt"],aliases:["Kotlin","kotlin"],mimetypes:["text/x-kotlin-source","text/x-kotlin"],loader:function(){return e.e(346).then(e.bind(null,"y0OK"))}})},"E+ie":function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"csp",extensions:[],aliases:["CSP","csp"],loader:function(){return e.e(330).then(e.bind(null,"p+q7"))}})},E4kL:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"yaml",extensions:[".yaml",".yml"],aliases:["YAML","yaml","YML","yml"],mimetypes:["application/x-yaml","text/x-yaml"],loader:function(){return e.e(393).then(e.bind(null,"EaLm"))}})},EIAu:function(ft,w,e){"use strict";e.d(w,"b",function(){return k}),e.d(w,"a",function(){return c});var h=e("N0LK"),P=e("erNZ"),L=e("aokT");class A{constructor(l,g,y,C,v,D){this._richEditBracketBrand=void 0,this.languageId=l,this.index=g,this.open=y,this.close=C,this.forwardRegex=v,this.reversedRegex=D,this._openSet=A._toSet(this.open),this._closeSet=A._toSet(this.close)}isOpen(l){return this._openSet.has(l)}isClose(l){return this._closeSet.has(l)}static _toSet(l){const g=new Set;for(const y of l)g.add(y);return g}}function I(l){const g=l.length;l=l.map(j=>[j[0].toLowerCase(),j[1].toLowerCase()]);const y=[];for(let j=0;j{const[G,B]=j,[z,Y]=V;return G===z||G===Y||B===z||B===Y},v=(j,V)=>{const G=Math.min(j,V),B=Math.max(j,V);for(let z=0;z0&&D.push({open:V,close:G})}return D}class k{constructor(l,g){this._richEditBracketsBrand=void 0;const y=I(g);this.brackets=y.map((C,v)=>new A(l,v,C.open,C.close,u(C.open,C.close,y,v),d(C.open,C.close,y,v))),this.forwardRegex=E(this.brackets),this.reversedRegex=p(this.brackets),this.textIsBracket={},this.textIsOpenBracket={},this.maxBracketLength=0;for(const C of this.brackets){for(const v of C.open)this.textIsBracket[v]=C,this.textIsOpenBracket[v]=!0,this.maxBracketLength=Math.max(this.maxBracketLength,v.length);for(const v of C.close)this.textIsBracket[v]=C,this.textIsOpenBracket[v]=!1,this.maxBracketLength=Math.max(this.maxBracketLength,v.length)}}}function O(l,g,y,C){for(let v=0,D=g.length;v=0&&C.push(V);for(const V of j.close)V.indexOf(l)>=0&&C.push(V)}}function S(l,g){return l.length-g.length}function f(l){if(l.length<=1)return l;const g=[],y=new Set;for(const C of l){if(y.has(C))continue;g.push(C),y.add(C)}return g}function u(l,g,y,C){let v=[];v=v.concat(l),v=v.concat(g);for(let D=0,j=v.length;D=0;j--)v[D++]=C.charCodeAt(j);return P.c().decode(v)}else{let v=[],D=0;for(let j=C.length-1;j>=0;j--)v[D++]=C.charAt(j);return v.join("")}}let g=null,y=null;return function(v){return g!==v&&(g=v,y=l(g)),y}}();class c{static _findPrevBracketInText(l,g,y,C){let v=y.match(l);if(!v)return null;let D=y.length-(v.index||0),j=v[0].length,V=C+D;return new L.a(g,V-j+1,g,V+1)}static findPrevBracketInRange(l,g,y,C,v){const D=m(y),j=D.substring(y.length-v,y.length-C);return this._findPrevBracketInText(l,g,j,C)}static findNextBracketInText(l,g,y,C){let v=y.match(l);if(!v)return null;let D=v.index||0,j=v[0].length;if(j===0)return null;let V=C+D;return new L.a(g,V+1,g,V+1+j)}static findNextBracketInRange(l,g,y,C,v){const D=y.substring(C,v);return this.findNextBracketInText(l,g,D,C)}}},EJc0:function(ft,w,e){"use strict";e.d(w,"a",function(){return O}),e.d(w,"b",function(){return f}),e.d(w,"e",function(){return d}),e.d(w,"d",function(){return E}),e.d(w,"c",function(){return n});var h=e("Vhoy"),P=e("fpMC"),L=e("N0LK");const A="$(",I=new RegExp(`\\$\\(${h.a.iconNameExpression}(?:${h.a.iconModifierExpression})?\\)`,"g"),k=new RegExp(`(\\\\)?${I.source}`,"g");function O(b){return b.replace(k,(m,c)=>c?m:`\\${m}`)}const S=new RegExp(`\\\\${I.source}`,"g");function f(b){return b.replace(S,m=>`\\${m}`)}const u=new RegExp(`(\\s)?(\\\\)?${I.source}(\\s)?`,"g");function d(b){return b.indexOf(A)===-1?b:b.replace(u,(m,c,l,g)=>l?m:c||g||"")}function E(b){const m=b.indexOf(A);return m===-1?{text:b}:p(b,m)}function p(b,m){const c=[];let l="";function g(B){if(B){l+=B;for(const z of B)c.push(v)}}let y=-1,C="",v=0,D,j,V=m;const G=b.length;for(g(b.substr(0,m));V{let qe=Gt.relatedTarget;for(;qe&&qe!==Ge;)qe=qe.parentNode;if(qe===Ge)return;mt(Gt)})}function v(Ge,mt){return n(Ge,"pointerout",Gt=>{let qe=Gt.relatedTarget;for(;qe&&qe!==Ge;)qe=qe.parentNode;if(qe===Ge)return;mt(Gt)})}let D=null;function j(Ge){if(!D){const mt=Gt=>setTimeout(()=>Gt(new Date().getTime()),0);D=self.requestAnimationFrame||self.msRequestAnimationFrame||self.webkitRequestAnimationFrame||self.mozRequestAnimationFrame||self.oRequestAnimationFrame||mt}return D.call(self,Ge)}let V,G;class B{constructor(Ge,mt=0){this._runner=Ge,this.priority=mt,this._canceled=!1}dispose(){this._canceled=!0}execute(){if(this._canceled)return;try{this._runner()}catch(Ge){Object(k.f)(Ge)}}static sort(Ge,mt){return mt.priority-Ge.priority}}(function(){let Ge=[],mt=null,Gt=!1,qe=!1,tt=()=>{for(Gt=!1,mt=Ge,Ge=[],qe=!0;mt.length>0;){mt.sort(B.sort);let gt=mt.shift();gt.execute()}qe=!1};G=(gt,$e=0)=>{let je=new B(gt,$e);return Ge.push(je),Gt||(Gt=!0,j(tt)),je},V=(gt,$e)=>{if(qe){let je=new B(gt,$e);return mt.push(je),je}else return G(gt,$e)}})();const z=8,Y=function(Ge,mt){return mt};class K extends S.a{constructor(Ge,mt,Gt,qe=Y,tt=z){super();let gt=null,$e=0,je=this._register(new I.g),Ue=()=>{$e=new Date().getTime(),Gt(gt),gt=null};this._register(n(Ge,mt,Ye=>{gt=qe(gt,Ye);let Mt=new Date().getTime()-$e;Mt>=tt?(je.cancel(),Ue()):je.setIfNotSet(Ue,tt-Mt)}))}}function Q(Ge,mt,Gt,qe,tt){return new K(Ge,mt,Gt,qe,tt)}function ee(Ge){return document.defaultView.getComputedStyle(Ge,null)}function Se(Ge){if(Ge!==document.body)return new q(Ge.clientWidth,Ge.clientHeight);if(u.c&&window.visualViewport)return new q(window.visualViewport.width,window.visualViewport.height);if(window.innerWidth&&window.innerHeight)return new q(window.innerWidth,window.innerHeight);if(document.body&&document.body.clientWidth&&document.body.clientHeight)return new q(document.body.clientWidth,document.body.clientHeight);if(document.documentElement&&document.documentElement.clientWidth&&document.documentElement.clientHeight)return new q(document.documentElement.clientWidth,document.documentElement.clientHeight);throw new Error("Unable to figure out browser width and height")}class fe{static convertToPixels(Ge,mt){return parseFloat(mt)||0}static getDimension(Ge,mt,Gt){let qe=ee(Ge),tt="0";return qe&&(qe.getPropertyValue?tt=qe.getPropertyValue(mt):tt=qe.getAttribute(Gt)),fe.convertToPixels(Ge,tt)}static getBorderLeftWidth(Ge){return fe.getDimension(Ge,"border-left-width","borderLeftWidth")}static getBorderRightWidth(Ge){return fe.getDimension(Ge,"border-right-width","borderRightWidth")}static getBorderTopWidth(Ge){return fe.getDimension(Ge,"border-top-width","borderTopWidth")}static getBorderBottomWidth(Ge){return fe.getDimension(Ge,"border-bottom-width","borderBottomWidth")}static getPaddingLeft(Ge){return fe.getDimension(Ge,"padding-left","paddingLeft")}static getPaddingRight(Ge){return fe.getDimension(Ge,"padding-right","paddingRight")}static getPaddingTop(Ge){return fe.getDimension(Ge,"padding-top","paddingTop")}static getPaddingBottom(Ge){return fe.getDimension(Ge,"padding-bottom","paddingBottom")}static getMarginLeft(Ge){return fe.getDimension(Ge,"margin-left","marginLeft")}static getMarginTop(Ge){return fe.getDimension(Ge,"margin-top","marginTop")}static getMarginRight(Ge){return fe.getDimension(Ge,"margin-right","marginRight")}static getMarginBottom(Ge){return fe.getDimension(Ge,"margin-bottom","marginBottom")}}class q{constructor(Ge,mt){this.width=Ge,this.height=mt}with(Ge=this.width,mt=this.height){return Ge!==this.width||mt!==this.height?new q(Ge,mt):this}static is(Ge){return typeof Ge=="object"&&typeof Ge.height=="number"&&typeof Ge.width=="number"}static lift(Ge){return Ge instanceof q?Ge:new q(Ge.width,Ge.height)}static equals(Ge,mt){return Ge===mt?!0:!Ge||!mt?!1:Ge.width===mt.width&&Ge.height===mt.height}}function te(Ge){let mt=Ge.offsetParent,Gt=Ge.offsetTop,qe=Ge.offsetLeft;for(;(Ge=Ge.parentNode)!==null&&Ge!==document.body&&Ge!==document.documentElement;){Gt-=Ge.scrollTop;const tt=De(Ge)?null:ee(Ge);tt&&(qe-=tt.direction!=="rtl"?Ge.scrollLeft:-Ge.scrollLeft),Ge===mt&&(qe+=fe.getBorderLeftWidth(Ge),Gt+=fe.getBorderTopWidth(Ge),Gt+=Ge.offsetTop,qe+=Ge.offsetLeft,mt=Ge.offsetParent)}return{left:qe,top:Gt}}function U(Ge,mt,Gt){typeof mt=="number"&&(Ge.style.width=`${mt}px`),typeof Gt=="number"&&(Ge.style.height=`${Gt}px`)}function H(Ge){let mt=Ge.getBoundingClientRect();return{left:mt.left+W.scrollX,top:mt.top+W.scrollY,width:mt.width,height:mt.height}}const W=new class{get scrollX(){return typeof window.scrollX=="number"?window.scrollX:document.body.scrollLeft+document.documentElement.scrollLeft}get scrollY(){return typeof window.scrollY=="number"?window.scrollY:document.body.scrollTop+document.documentElement.scrollTop}};function ne(Ge){let mt=fe.getMarginLeft(Ge)+fe.getMarginRight(Ge);return Ge.offsetWidth+mt}function Ce(Ge){let mt=fe.getBorderLeftWidth(Ge)+fe.getBorderRightWidth(Ge),Gt=fe.getPaddingLeft(Ge)+fe.getPaddingRight(Ge);return Ge.offsetWidth-mt-Gt}function Le(Ge){let mt=fe.getBorderTopWidth(Ge)+fe.getBorderBottomWidth(Ge),Gt=fe.getPaddingTop(Ge)+fe.getPaddingBottom(Ge);return Ge.offsetHeight-mt-Gt}function ce(Ge){let mt=fe.getMarginTop(Ge)+fe.getMarginBottom(Ge);return Ge.offsetHeight+mt}function me(Ge,mt){for(;Ge;){if(Ge===mt)return!0;Ge=Ge.parentNode}return!1}function Oe(Ge,mt,Gt){for(;Ge&&Ge.nodeType===Ge.ELEMENT_NODE;){if(Ge.classList.contains(mt))return Ge;if(Gt){if(typeof Gt=="string"){if(Ge.classList.contains(Gt))return null}else if(Ge===Gt)return null}Ge=Ge.parentNode}return null}function oe(Ge,mt,Gt){return!!Oe(Ge,mt,Gt)}function De(Ge){return Ge&&!!Ge.host&&!!Ge.mode}function Ne(Ge){return!!ve(Ge)}function ve(Ge){for(;Ge.parentNode;){if(Ge===document.body)return null;Ge=Ge.parentNode}return De(Ge)?Ge:null}function re(){let Ge=document.activeElement;for(;Ge==null?void 0:Ge.shadowRoot;)Ge=Ge.shadowRoot.activeElement;return Ge}function we(Ge=document.getElementsByTagName("head")[0]){let mt=document.createElement("style");return mt.type="text/css",mt.media="screen",Ge.appendChild(mt),mt}let Ie=null;function ge(){return Ie||(Ie=we()),Ie}function ye(Ge){var mt,Gt;return((mt=Ge==null?void 0:Ge.sheet)===null||mt===void 0?void 0:mt.rules)?Ge.sheet.rules:((Gt=Ge==null?void 0:Ge.sheet)===null||Gt===void 0?void 0:Gt.cssRules)?Ge.sheet.cssRules:[]}function ze(Ge,mt,Gt=ge()){if(!Gt||!mt)return;Gt.sheet.insertRule(Ge+"{"+mt+"}",0)}function xe(Ge,mt=ge()){if(!mt)return;let Gt=ye(mt),qe=[];for(let tt=0;tt=0;tt--)mt.sheet.deleteRule(qe[tt])}function Te(Ge){return typeof HTMLElement=="object"?Ge instanceof HTMLElement:Ge&&typeof Ge=="object"&&Ge.nodeType===1&&typeof Ge.nodeName=="string"}const He={CLICK:"click",AUXCLICK:"auxclick",DBLCLICK:"dblclick",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",MOUSE_ENTER:"mouseenter",MOUSE_LEAVE:"mouseleave",MOUSE_WHEEL:"wheel",POINTER_UP:"pointerup",POINTER_DOWN:"pointerdown",POINTER_MOVE:"pointermove",CONTEXT_MENU:"contextmenu",WHEEL:"wheel",KEY_DOWN:"keydown",KEY_PRESS:"keypress",KEY_UP:"keyup",LOAD:"load",BEFORE_UNLOAD:"beforeunload",UNLOAD:"unload",ABORT:"abort",ERROR:"error",RESIZE:"resize",SCROLL:"scroll",FULLSCREEN_CHANGE:"fullscreenchange",WK_FULLSCREEN_CHANGE:"webkitfullscreenchange",SELECT:"select",CHANGE:"change",SUBMIT:"submit",RESET:"reset",FOCUS:"focus",FOCUS_IN:"focusin",FOCUS_OUT:"focusout",BLUR:"blur",INPUT:"input",STORAGE:"storage",DRAG_START:"dragstart",DRAG:"drag",DRAG_ENTER:"dragenter",DRAG_LEAVE:"dragleave",DRAG_OVER:"dragover",DROP:"drop",DRAG_END:"dragend",ANIMATION_START:h.j?"webkitAnimationStart":"animationstart",ANIMATION_END:h.j?"webkitAnimationEnd":"animationend",ANIMATION_ITERATION:h.j?"webkitAnimationIteration":"animationiteration"},st={stop:function(Ge,mt){Ge.preventDefault?Ge.preventDefault():Ge.returnValue=!1,mt&&(Ge.stopPropagation?Ge.stopPropagation():Ge.cancelBubble=!0)}};function nt(Ge){let mt=[];for(let Gt=0;Ge&&Ge.nodeType===Ge.ELEMENT_NODE;Gt++)mt[Gt]=Ge.scrollTop,Ge=Ge.parentNode;return mt}function rt(Ge,mt){for(let Gt=0;Ge&&Ge.nodeType===Ge.ELEMENT_NODE;Gt++)Ge.scrollTop!==mt[Gt]&&(Ge.scrollTop=mt[Gt]),Ge=Ge.parentNode}class wt extends S.a{constructor(Ge){super();this._onDidFocus=this._register(new O.b),this.onDidFocus=this._onDidFocus.event,this._onDidBlur=this._register(new O.b),this.onDidBlur=this._onDidBlur.event;let mt=me(document.activeElement,Ge),Gt=!1;const qe=()=>{Gt=!1,mt||(mt=!0,this._onDidFocus.fire())},tt=()=>{mt&&(Gt=!0,window.setTimeout(()=>{Gt&&(Gt=!1,mt=!1,this._onDidBlur.fire())},0))};this._refreshStateHandler=()=>{let gt=me(document.activeElement,Ge);gt!==mt&&(mt?tt():qe())},this._register(n(Ge,He.FOCUS,qe,!0)),this._register(n(Ge,He.BLUR,tt,!0))}}function Pt(Ge){return new wt(Ge)}function no(Ge,...mt){if(Ge.append(...mt),mt.length===1&&typeof mt[0]!="string")return mt[0]}function ht(Ge,mt){return Ge.insertBefore(mt,Ge.firstChild),mt}function lt(Ge,...mt){Ge.innerText="",no(Ge,...mt)}const le=/([\w\-]+)?(#([\w\-]+))?((\.([\w\-]+))*)/;var Pe;(function(Ge){Ge.HTML="http://www.w3.org/1999/xhtml",Ge.SVG="http://www.w3.org/2000/svg"})(Pe||(Pe={}));function it(Ge,mt,Gt,...qe){let tt=le.exec(mt);if(!tt)throw new Error("Bad use of emmet");Gt=Object.assign({},Gt||{});let gt=tt[1]||"div",$e;return Ge!==Pe.HTML?$e=document.createElementNS(Ge,gt):$e=document.createElement(gt),tt[3]&&($e.id=tt[3]),tt[4]&&($e.className=tt[4].replace(/\./g," ").trim()),Object.keys(Gt).forEach(je=>{const Ue=Gt[je];if(typeof Ue=="undefined")return;/^on\w+$/.test(je)?$e[je]=Ue:je==="selected"?Ue&&$e.setAttribute(je,"true"):$e.setAttribute(je,Ue)}),$e.append(...qe),$e}function Dt(Ge,mt,...Gt){return it(Pe.HTML,Ge,mt,...Gt)}Dt.SVG=function(Ge,mt,...Gt){return it(Pe.SVG,Ge,mt,...Gt)};function kt(...Ge){for(let mt of Ge)mt.style.display="",mt.removeAttribute("aria-hidden")}function eo(...Ge){for(let mt of Ge)mt.style.display="none",mt.setAttribute("aria-hidden","true")}function bo(Ge){return Array.prototype.slice.call(document.getElementsByTagName(Ge),0)}function ao(Ge){const mt=window.devicePixelRatio*Ge;return Math.max(1,Math.floor(mt))/window.devicePixelRatio}function So(Ge){window.open(Ge,"_blank","noopener")}function Lo(Ge){const mt=()=>{Ge(),Gt=G(mt)};let Gt=G(mt);return Object(S.i)(()=>Gt.dispose())}f.b.setPreferredWebSchema(/^https:/.test(window.location.href)?"https":"http");function xo(Ge){return Ge?`url('${f.a.asBrowserUri(Ge).toString(!0).replace(/'/g,"%27")}')`:"url('')"}function _o(Ge){return`'${Ge.replace(/'/g,"%27")}'`}class to extends O.b{constructor(){super();this._subscriptions=new S.b,this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1},this._subscriptions.add(n(window,"keydown",Ge=>{if(Ge.defaultPrevented)return;const mt=new L.a(Ge);if(mt.keyCode===6&&Ge.repeat)return;if(Ge.altKey&&!this._keyStatus.altKey)this._keyStatus.lastKeyPressed="alt";else if(Ge.ctrlKey&&!this._keyStatus.ctrlKey)this._keyStatus.lastKeyPressed="ctrl";else if(Ge.metaKey&&!this._keyStatus.metaKey)this._keyStatus.lastKeyPressed="meta";else if(Ge.shiftKey&&!this._keyStatus.shiftKey)this._keyStatus.lastKeyPressed="shift";else if(mt.keyCode!==6)this._keyStatus.lastKeyPressed=void 0;else return;this._keyStatus.altKey=Ge.altKey,this._keyStatus.ctrlKey=Ge.ctrlKey,this._keyStatus.metaKey=Ge.metaKey,this._keyStatus.shiftKey=Ge.shiftKey,this._keyStatus.lastKeyPressed&&(this._keyStatus.event=Ge,this.fire(this._keyStatus))},!0)),this._subscriptions.add(n(window,"keyup",Ge=>{if(Ge.defaultPrevented)return;!Ge.altKey&&this._keyStatus.altKey?this._keyStatus.lastKeyReleased="alt":!Ge.ctrlKey&&this._keyStatus.ctrlKey?this._keyStatus.lastKeyReleased="ctrl":!Ge.metaKey&&this._keyStatus.metaKey?this._keyStatus.lastKeyReleased="meta":!Ge.shiftKey&&this._keyStatus.shiftKey?this._keyStatus.lastKeyReleased="shift":this._keyStatus.lastKeyReleased=void 0,this._keyStatus.lastKeyPressed!==this._keyStatus.lastKeyReleased&&(this._keyStatus.lastKeyPressed=void 0),this._keyStatus.altKey=Ge.altKey,this._keyStatus.ctrlKey=Ge.ctrlKey,this._keyStatus.metaKey=Ge.metaKey,this._keyStatus.shiftKey=Ge.shiftKey,this._keyStatus.lastKeyReleased&&(this._keyStatus.event=Ge,this.fire(this._keyStatus))},!0)),this._subscriptions.add(n(document.body,"mousedown",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),this._subscriptions.add(n(document.body,"mouseup",()=>{this._keyStatus.lastKeyPressed=void 0},!0)),this._subscriptions.add(n(document.body,"mousemove",Ge=>{Ge.buttons&&(this._keyStatus.lastKeyPressed=void 0)},!0)),this._subscriptions.add(n(window,"blur",()=>{this.resetKeyStatus()}))}get keyStatus(){return this._keyStatus}resetKeyStatus(){this.doResetKeyStatus(),this.fire(this._keyStatus)}doResetKeyStatus(){this._keyStatus={altKey:!1,shiftKey:!1,ctrlKey:!1,metaKey:!1}}static getInstance(){return to.instance||(to.instance=new to),to.instance}dispose(){super.dispose(),this._subscriptions.dispose()}}function Wt(Ge,mt){const Gt=window.matchMedia(Ge);typeof Gt.addEventListener=="function"?Gt.addEventListener("change",mt):Gt.addListener(mt)}},EzsQ:function(ft,w,e){},FmXZ:function(ft,w,e){"use strict";e.d(w,"b",function(){return A}),e.d(w,"a",function(){return I});var h=e("MNsG"),P=e("3/fG"),L=e("T8No");const A=new L.c("isWindows",h.i,Object(P.a)("isWindows","Whether the operating system is Windows")),I="inputFocus"},FvUK:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"less",extensions:[".less"],aliases:["Less","less"],mimetypes:["text/x-less","text/less"],loader:function(){return e.e(347).then(e.bind(null,"OfHX"))}})},FzHg:function(ft,w){(function(e,h){ft.exports=function(){var P={722:function(I){I.exports=e}},L={};function A(I){if(L[I])return L[I].exports;var k=L[I]={exports:{}},O=!0;try{P[I](k,k.exports,A),O=!1}finally{O&&delete L[I]}return k.exports}return A.ab=h+"/",A(722)}()}).call(this,{},"/")},G2kB:function(ft,w,e){"use strict";e.d(w,"a",function(){return P}),e.d(w,"b",function(){return L});var h=e("Cg/j");const P=Object(h.c)("modelService");function L(A){return!A.isTooLargeForSyncing()&&!A.isForSimpleWidget}},G300:function(ft,w,e){"use strict";e.d(w,"a",function(){return k});var h=e("EffR"),P=e("uDWl"),L=e("XSiN"),A=e("pg8w"),I=e("pmY6");class k extends I.a{onclick(O,S){this._register(h.i(O,h.d.CLICK,f=>S(new L.a(f))))}onmousedown(O,S){this._register(h.i(O,h.d.MOUSE_DOWN,f=>S(new L.a(f))))}onmouseover(O,S){this._register(h.i(O,h.d.MOUSE_OVER,f=>S(new L.a(f))))}onnonbubblingmouseout(O,S){this._register(h.j(O,f=>S(new L.a(f))))}onkeydown(O,S){this._register(h.i(O,h.d.KEY_DOWN,f=>S(new P.a(f))))}onkeyup(O,S){this._register(h.i(O,h.d.KEY_UP,f=>S(new P.a(f))))}oninput(O,S){this._register(h.i(O,h.d.INPUT,S))}onblur(O,S){this._register(h.i(O,h.d.BLUR,S))}onfocus(O,S){this._register(h.i(O,h.d.FOCUS,S))}ignoreGesture(O){A.b.ignoreTarget(O)}}},GJhM:function(ft,w,e){"use strict";e.d(w,"b",function(){return Se}),e.d(w,"c",function(){return fe}),e.d(w,"a",function(){return q});var h=e("D3Dy"),P=e("EffR"),L=e("ZlPH"),A=e("XSiN"),I=e("AKMP"),k=e("G300"),O=e("X+cX");const S=11;class f extends k.a{constructor(U){super();this._onActivate=U.onActivate,this.bgDomNode=document.createElement("div"),this.bgDomNode.className="arrow-background",this.bgDomNode.style.position="absolute",this.bgDomNode.style.width=U.bgWidth+"px",this.bgDomNode.style.height=U.bgHeight+"px",typeof U.top!="undefined"&&(this.bgDomNode.style.top="0px"),typeof U.left!="undefined"&&(this.bgDomNode.style.left="0px"),typeof U.bottom!="undefined"&&(this.bgDomNode.style.bottom="0px"),typeof U.right!="undefined"&&(this.bgDomNode.style.right="0px"),this.domNode=document.createElement("div"),this.domNode.className=U.className,this.domNode.classList.add(...U.icon.classNamesArray),this.domNode.style.position="absolute",this.domNode.style.width=S+"px",this.domNode.style.height=S+"px",typeof U.top!="undefined"&&(this.domNode.style.top=U.top+"px"),typeof U.left!="undefined"&&(this.domNode.style.left=U.left+"px"),typeof U.bottom!="undefined"&&(this.domNode.style.bottom=U.bottom+"px"),typeof U.right!="undefined"&&(this.domNode.style.right=U.right+"px"),this._mouseMoveMonitor=this._register(new I.a),this.onmousedown(this.bgDomNode,H=>this._arrowMouseDown(H)),this.onmousedown(this.domNode,H=>this._arrowMouseDown(H)),this._mousedownRepeatTimer=this._register(new O.c),this._mousedownScheduleRepeatTimer=this._register(new O.g)}_arrowMouseDown(U){const H=()=>{this._mousedownRepeatTimer.cancelAndSet(()=>this._onActivate(),1e3/24)};this._onActivate(),this._mousedownRepeatTimer.cancel(),this._mousedownScheduleRepeatTimer.cancelAndSet(H,200),this._mouseMoveMonitor.startMonitoring(U.target,U.buttons,I.b,W=>{},()=>{this._mousedownRepeatTimer.cancel(),this._mousedownScheduleRepeatTimer.cancel()}),U.preventDefault()}}var u=e("pmY6");class d extends u.a{constructor(U,H,W){super();this._visibility=U,this._visibleClassName=H,this._invisibleClassName=W,this._domNode=null,this._isVisible=!1,this._isNeeded=!1,this._rawShouldBeVisible=!1,this._shouldBeVisible=!1,this._revealTimer=this._register(new O.g)}setVisibility(U){this._visibility!==U&&(this._visibility=U,this._updateShouldBeVisible())}setShouldBeVisible(U){this._rawShouldBeVisible=U,this._updateShouldBeVisible()}_applyVisibilitySetting(){return this._visibility===2?!1:this._visibility===3?!0:this._rawShouldBeVisible}_updateShouldBeVisible(){const U=this._applyVisibilitySetting();this._shouldBeVisible!==U&&(this._shouldBeVisible=U,this.ensureVisibility())}setIsNeeded(U){this._isNeeded!==U&&(this._isNeeded=U,this.ensureVisibility())}setDomNode(U){this._domNode=U,this._domNode.setClassName(this._invisibleClassName),this.setShouldBeVisible(!1)}ensureVisibility(){if(!this._isNeeded){this._hide(!1);return}this._shouldBeVisible?this._reveal():this._hide(!0)}_reveal(){if(this._isVisible)return;this._isVisible=!0,this._revealTimer.setIfNotSet(()=>{this._domNode&&this._domNode.setClassName(this._visibleClassName)},0)}_hide(U){if(this._revealTimer.cancel(),!this._isVisible)return;this._isVisible=!1,this._domNode&&this._domNode.setClassName(this._invisibleClassName+(U?" fade":""))}}var E=e("MNsG");const p=140;class n extends k.a{constructor(U){super();this._lazyRender=U.lazyRender,this._host=U.host,this._scrollable=U.scrollable,this._scrollByPage=U.scrollByPage,this._scrollbarState=U.scrollbarState,this._visibilityController=this._register(new d(U.visibility,"visible scrollbar "+U.extraScrollbarClassName,"invisible scrollbar "+U.extraScrollbarClassName)),this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._mouseMoveMonitor=this._register(new I.a),this._shouldRender=!0,this.domNode=Object(L.b)(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this._visibilityController.setDomNode(this.domNode),this.domNode.setPosition("absolute"),this.onmousedown(this.domNode.domNode,H=>this._domNodeMouseDown(H))}_createArrow(U){const H=this._register(new f(U));this.domNode.domNode.appendChild(H.bgDomNode),this.domNode.domNode.appendChild(H.domNode)}_createSlider(U,H,W,ne){this.slider=Object(L.b)(document.createElement("div")),this.slider.setClassName("slider"),this.slider.setPosition("absolute"),this.slider.setTop(U),this.slider.setLeft(H),typeof W=="number"&&this.slider.setWidth(W),typeof ne=="number"&&this.slider.setHeight(ne),this.slider.setLayerHinting(!0),this.slider.setContain("strict"),this.domNode.domNode.appendChild(this.slider.domNode),this.onmousedown(this.slider.domNode,Ce=>{Ce.leftButton&&(Ce.preventDefault(),this._sliderMouseDown(Ce,()=>{}))}),this.onclick(this.slider.domNode,Ce=>{Ce.leftButton&&Ce.stopPropagation()})}_onElementSize(U){return this._scrollbarState.setVisibleSize(U)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollSize(U){return this._scrollbarState.setScrollSize(U)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}_onElementScrollPosition(U){return this._scrollbarState.setScrollPosition(U)&&(this._visibilityController.setIsNeeded(this._scrollbarState.isNeeded()),this._shouldRender=!0,this._lazyRender||this.render()),this._shouldRender}beginReveal(){this._visibilityController.setShouldBeVisible(!0)}beginHide(){this._visibilityController.setShouldBeVisible(!1)}render(){if(!this._shouldRender)return;this._shouldRender=!1,this._renderDomNode(this._scrollbarState.getRectangleLargeSize(),this._scrollbarState.getRectangleSmallSize()),this._updateSlider(this._scrollbarState.getSliderSize(),this._scrollbarState.getArrowSize()+this._scrollbarState.getSliderPosition())}_domNodeMouseDown(U){if(U.target!==this.domNode.domNode)return;this._onMouseDown(U)}delegateMouseDown(U){const H=this.domNode.domNode.getClientRects()[0].top,W=H+this._scrollbarState.getSliderPosition(),ne=H+this._scrollbarState.getSliderPosition()+this._scrollbarState.getSliderSize(),Ce=this._sliderMousePosition(U);W<=Ce&&Ce<=ne?U.leftButton&&(U.preventDefault(),this._sliderMouseDown(U,()=>{})):this._onMouseDown(U)}_onMouseDown(U){let H,W;if(U.target===this.domNode.domNode&&typeof U.browserEvent.offsetX=="number"&&typeof U.browserEvent.offsetY=="number")H=U.browserEvent.offsetX,W=U.browserEvent.offsetY;else{const Ce=P.D(this.domNode.domNode);H=U.posx-Ce.left,W=U.posy-Ce.top}const ne=this._mouseDownRelativePosition(H,W);this._setDesiredScrollPositionNow(this._scrollByPage?this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(ne):this._scrollbarState.getDesiredScrollPositionFromOffset(ne)),U.leftButton&&(U.preventDefault(),this._sliderMouseDown(U,()=>{}))}_sliderMouseDown(U,H){const W=this._sliderMousePosition(U),ne=this._sliderOrthogonalMousePosition(U),Ce=this._scrollbarState.clone();this.slider.toggleClassName("active",!0),this._mouseMoveMonitor.startMonitoring(U.target,U.buttons,I.b,Le=>{const ce=this._sliderOrthogonalMousePosition(Le),me=Math.abs(ce-ne);if(E.i&&me>p){this._setDesiredScrollPositionNow(Ce.getScrollPosition());return}const Oe=this._sliderMousePosition(Le),oe=Oe-W;this._setDesiredScrollPositionNow(Ce.getDesiredScrollPositionFromDelta(oe))},()=>{this.slider.toggleClassName("active",!1),this._host.onDragEnd(),H()}),this._host.onDragStart()}_setDesiredScrollPositionNow(U){const H={};this.writeScrollPosition(H,U),this._scrollable.setScrollPositionNow(H)}updateScrollbarSize(U){this._updateScrollbarSize(U),this._scrollbarState.setScrollbarSize(U),this._shouldRender=!0,this._lazyRender||this.render()}isNeeded(){return this._scrollbarState.isNeeded()}}const b=20;class m{constructor(U,H,W,ne,Ce,Le){this._scrollbarSize=Math.round(H),this._oppositeScrollbarSize=Math.round(W),this._arrowSize=Math.round(U),this._visibleSize=ne,this._scrollSize=Ce,this._scrollPosition=Le,this._computedAvailableSize=0,this._computedIsNeeded=!1,this._computedSliderSize=0,this._computedSliderRatio=0,this._computedSliderPosition=0,this._refreshComputedValues()}clone(){return new m(this._arrowSize,this._scrollbarSize,this._oppositeScrollbarSize,this._visibleSize,this._scrollSize,this._scrollPosition)}setVisibleSize(U){const H=Math.round(U);return this._visibleSize!==H?(this._visibleSize=H,this._refreshComputedValues(),!0):!1}setScrollSize(U){const H=Math.round(U);return this._scrollSize!==H?(this._scrollSize=H,this._refreshComputedValues(),!0):!1}setScrollPosition(U){const H=Math.round(U);return this._scrollPosition!==H?(this._scrollPosition=H,this._refreshComputedValues(),!0):!1}setScrollbarSize(U){this._scrollbarSize=Math.round(U)}setOppositeScrollbarSize(U){this._oppositeScrollbarSize=Math.round(U)}static _computeValues(U,H,W,ne,Ce){const Le=Math.max(0,W-U),ce=Math.max(0,Le-2*H),me=ne>0&&ne>W;if(!me)return{computedAvailableSize:Math.round(Le),computedIsNeeded:me,computedSliderSize:Math.round(ce),computedSliderRatio:0,computedSliderPosition:0};const Oe=Math.round(Math.max(b,Math.floor(W*ce/ne))),oe=(ce-Oe)/(ne-W),De=Ce*oe;return{computedAvailableSize:Math.round(Le),computedIsNeeded:me,computedSliderSize:Math.round(Oe),computedSliderRatio:oe,computedSliderPosition:Math.round(De)}}_refreshComputedValues(){const U=m._computeValues(this._oppositeScrollbarSize,this._arrowSize,this._visibleSize,this._scrollSize,this._scrollPosition);this._computedAvailableSize=U.computedAvailableSize,this._computedIsNeeded=U.computedIsNeeded,this._computedSliderSize=U.computedSliderSize,this._computedSliderRatio=U.computedSliderRatio,this._computedSliderPosition=U.computedSliderPosition}getArrowSize(){return this._arrowSize}getScrollPosition(){return this._scrollPosition}getRectangleLargeSize(){return this._computedAvailableSize}getRectangleSmallSize(){return this._scrollbarSize}isNeeded(){return this._computedIsNeeded}getSliderSize(){return this._computedSliderSize}getSliderPosition(){return this._computedSliderPosition}getDesiredScrollPositionFromOffset(U){if(!this._computedIsNeeded)return 0;const H=U-this._arrowSize-this._computedSliderSize/2;return Math.round(H/this._computedSliderRatio)}getDesiredScrollPositionFromOffsetPaged(U){if(!this._computedIsNeeded)return 0;const H=U-this._arrowSize;let W=this._scrollPosition;return Hthis._host.onMouseWheel(new A.b(null,1,0))}),this._createArrow({className:"scra",icon:g,top:ce,left:void 0,bottom:void 0,right:Le,bgWidth:H.arrowSize,bgHeight:H.horizontalScrollbarSize,onActivate:()=>this._host.onMouseWheel(new A.b(null,-1,0))})}this._createSlider(Math.floor((H.horizontalScrollbarSize-H.horizontalSliderSize)/2),0,void 0,H.horizontalSliderSize)}_updateSlider(U,H){this.slider.setWidth(U),this.slider.setLeft(H)}_renderDomNode(U,H){this.domNode.setWidth(U),this.domNode.setHeight(H),this.domNode.setLeft(0),this.domNode.setBottom(0)}onDidScroll(U){return this._shouldRender=this._onElementScrollSize(U.scrollWidth)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(U.scrollLeft)||this._shouldRender,this._shouldRender=this._onElementSize(U.width)||this._shouldRender,this._shouldRender}_mouseDownRelativePosition(U,H){return U}_sliderMousePosition(U){return U.posx}_sliderOrthogonalMousePosition(U){return U.posy}_updateScrollbarSize(U){this.slider.setHeight(U)}writeScrollPosition(U,H){U.scrollLeft=H}updateOptions(U){this.updateScrollbarSize(U.horizontal===2?0:U.horizontalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(U.vertical===2?0:U.verticalScrollbarSize),this._visibilityController.setVisibility(U.horizontal),this._scrollByPage=U.scrollByPage}}const C=Object(c.e)("scrollbar-button-up",c.b.triangleUp),v=Object(c.e)("scrollbar-button-down",c.b.triangleDown);class D extends n{constructor(U,H,W){const ne=U.getScrollDimensions(),Ce=U.getCurrentScrollPosition();super({lazyRender:H.lazyRender,host:W,scrollbarState:new m(H.verticalHasArrows?H.arrowSize:0,H.vertical===2?0:H.verticalScrollbarSize,0,ne.height,ne.scrollHeight,Ce.scrollTop),visibility:H.vertical,extraScrollbarClassName:"vertical",scrollable:U,scrollByPage:H.scrollByPage});if(H.verticalHasArrows){const Le=(H.arrowSize-S)/2,ce=(H.verticalScrollbarSize-S)/2;this._createArrow({className:"scra",icon:C,top:Le,left:ce,bottom:void 0,right:void 0,bgWidth:H.verticalScrollbarSize,bgHeight:H.arrowSize,onActivate:()=>this._host.onMouseWheel(new A.b(null,0,1))}),this._createArrow({className:"scra",icon:v,top:void 0,left:ce,bottom:Le,right:void 0,bgWidth:H.verticalScrollbarSize,bgHeight:H.arrowSize,onActivate:()=>this._host.onMouseWheel(new A.b(null,0,-1))})}this._createSlider(0,Math.floor((H.verticalScrollbarSize-H.verticalSliderSize)/2),H.verticalSliderSize,void 0)}_updateSlider(U,H){this.slider.setHeight(U),this.slider.setTop(H)}_renderDomNode(U,H){this.domNode.setWidth(H),this.domNode.setHeight(U),this.domNode.setRight(0),this.domNode.setTop(0)}onDidScroll(U){return this._shouldRender=this._onElementScrollSize(U.scrollHeight)||this._shouldRender,this._shouldRender=this._onElementScrollPosition(U.scrollTop)||this._shouldRender,this._shouldRender=this._onElementSize(U.height)||this._shouldRender,this._shouldRender}_mouseDownRelativePosition(U,H){return H}_sliderMousePosition(U){return U.posy}_sliderOrthogonalMousePosition(U){return U.posx}_updateScrollbarSize(U){this.slider.setWidth(U)}writeScrollPosition(U,H){U.scrollTop=H}updateOptions(U){this.updateScrollbarSize(U.vertical===2?0:U.verticalScrollbarSize),this._scrollbarState.setOppositeScrollbarSize(0),this._visibilityController.setVisibility(U.vertical),this._scrollByPage=U.scrollByPage}}var j=e("MI8n"),V=e("QuOb"),G=e("eq1K");const B=500,z=50,Y=!0;class K{constructor(U,H,W){this.timestamp=U,this.deltaX=H,this.deltaY=W,this.score=0}}class Q{constructor(){this._capacity=5,this._memory=[],this._front=-1,this._rear=-1}isPhysicalMouseWheel(){if(this._front===-1&&this._rear===-1)return!1;let U=1,H=0,W=1,ne=this._rear;do{const Ce=ne===this._front?U:Math.pow(2,-W);if(U-=Ce,H+=this._memory[ne].score*Ce,ne===this._front)break;ne=(this._capacity+ne-1)%this._capacity,W++}while(!0);return H<=.5}accept(U,H,W){const ne=new K(U,H,W);ne.score=this._computeScore(ne),this._front===-1&&this._rear===-1?(this._memory[0]=ne,this._front=0,this._rear=0):(this._rear=(this._rear+1)%this._capacity,this._rear===this._front&&(this._front=(this._front+1)%this._capacity),this._memory[this._rear]=ne)}_computeScore(U){if(Math.abs(U.deltaX)>0&&Math.abs(U.deltaY)>0)return 1;let H=.5;const W=this._front===-1&&this._rear===-1?null:this._memory[this._rear];return(!this._isAlmostInt(U.deltaX)||!this._isAlmostInt(U.deltaY))&&(H+=.25),Math.min(Math.max(H,0),1)}_isAlmostInt(U){const H=Math.abs(Math.round(U)-U);return H<.01}}Q.INSTANCE=new Q;class ee extends k.a{constructor(U,H,W){super();this._onScroll=this._register(new j.b),this.onScroll=this._onScroll.event,this._onWillScroll=this._register(new j.b),U.style.overflow="hidden",this._options=te(H),this._scrollable=W,this._register(this._scrollable.onScroll(Ce=>{this._onWillScroll.fire(Ce),this._onDidScroll(Ce),this._onScroll.fire(Ce)}));const ne={onMouseWheel:Ce=>this._onMouseWheel(Ce),onDragStart:()=>this._onDragStart(),onDragEnd:()=>this._onDragEnd()};this._verticalScrollbar=this._register(new D(this._scrollable,this._options,ne)),this._horizontalScrollbar=this._register(new y(this._scrollable,this._options,ne)),this._domNode=document.createElement("div"),this._domNode.className="monaco-scrollable-element "+this._options.className,this._domNode.setAttribute("role","presentation"),this._domNode.style.position="relative",this._domNode.style.overflow="hidden",this._domNode.appendChild(U),this._domNode.appendChild(this._horizontalScrollbar.domNode.domNode),this._domNode.appendChild(this._verticalScrollbar.domNode.domNode),this._options.useShadows?(this._leftShadowDomNode=Object(L.b)(document.createElement("div")),this._leftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._leftShadowDomNode.domNode),this._topShadowDomNode=Object(L.b)(document.createElement("div")),this._topShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topShadowDomNode.domNode),this._topLeftShadowDomNode=Object(L.b)(document.createElement("div")),this._topLeftShadowDomNode.setClassName("shadow"),this._domNode.appendChild(this._topLeftShadowDomNode.domNode)):(this._leftShadowDomNode=null,this._topShadowDomNode=null,this._topLeftShadowDomNode=null),this._listenOnDomNode=this._options.listenOnDomNode||this._domNode,this._mouseWheelToDispose=[],this._setListeningToMouseWheel(this._options.handleMouseWheel),this.onmouseover(this._listenOnDomNode,Ce=>this._onMouseOver(Ce)),this.onnonbubblingmouseout(this._listenOnDomNode,Ce=>this._onMouseOut(Ce)),this._hideTimeout=this._register(new O.g),this._isDragging=!1,this._mouseIsOver=!1,this._shouldRender=!0,this._revealOnScroll=!0}dispose(){this._mouseWheelToDispose=Object(u.f)(this._mouseWheelToDispose),super.dispose()}getDomNode(){return this._domNode}getOverviewRulerLayoutInfo(){return{parent:this._domNode,insertBefore:this._verticalScrollbar.domNode.domNode}}delegateVerticalScrollbarMouseDown(U){this._verticalScrollbar.delegateMouseDown(U)}getScrollDimensions(){return this._scrollable.getScrollDimensions()}setScrollDimensions(U){this._scrollable.setScrollDimensions(U,!1)}updateClassName(U){this._options.className=U,E.f&&(this._options.className+=" mac"),this._domNode.className="monaco-scrollable-element "+this._options.className}updateOptions(U){typeof U.handleMouseWheel!="undefined"&&(this._options.handleMouseWheel=U.handleMouseWheel,this._setListeningToMouseWheel(this._options.handleMouseWheel)),typeof U.mouseWheelScrollSensitivity!="undefined"&&(this._options.mouseWheelScrollSensitivity=U.mouseWheelScrollSensitivity),typeof U.fastScrollSensitivity!="undefined"&&(this._options.fastScrollSensitivity=U.fastScrollSensitivity),typeof U.scrollPredominantAxis!="undefined"&&(this._options.scrollPredominantAxis=U.scrollPredominantAxis),typeof U.horizontal!="undefined"&&(this._options.horizontal=U.horizontal),typeof U.vertical!="undefined"&&(this._options.vertical=U.vertical),typeof U.horizontalScrollbarSize!="undefined"&&(this._options.horizontalScrollbarSize=U.horizontalScrollbarSize),typeof U.verticalScrollbarSize!="undefined"&&(this._options.verticalScrollbarSize=U.verticalScrollbarSize),typeof U.scrollByPage!="undefined"&&(this._options.scrollByPage=U.scrollByPage),this._horizontalScrollbar.updateOptions(this._options),this._verticalScrollbar.updateOptions(this._options),this._options.lazyRender||this._render()}_setListeningToMouseWheel(U){const H=this._mouseWheelToDispose.length>0;if(H===U)return;if(this._mouseWheelToDispose=Object(u.f)(this._mouseWheelToDispose),U){const W=ne=>{this._onMouseWheel(new A.b(ne))};this._mouseWheelToDispose.push(P.i(this._listenOnDomNode,P.d.MOUSE_WHEEL,W,{passive:!1}))}}_onMouseWheel(U){const H=Q.INSTANCE;if(Y){const Ce=window.devicePixelRatio/Object(h.c)();E.i||E.d?H.accept(Date.now(),U.deltaX/Ce,U.deltaY/Ce):H.accept(Date.now(),U.deltaX,U.deltaY)}let W=!1;if(U.deltaY||U.deltaX){let Ce=U.deltaY*this._options.mouseWheelScrollSensitivity,Le=U.deltaX*this._options.mouseWheelScrollSensitivity;this._options.scrollPredominantAxis&&(Math.abs(Ce)>=Math.abs(Le)?Le=0:Ce=0),this._options.flipAxes&&([Ce,Le]=[Le,Ce]);const ce=!E.f&&U.browserEvent&&U.browserEvent.shiftKey;(this._options.scrollYToX||ce)&&!Le&&(Le=Ce,Ce=0),U.browserEvent&&U.browserEvent.altKey&&(Le=Le*this._options.fastScrollSensitivity,Ce=Ce*this._options.fastScrollSensitivity);const me=this._scrollable.getFutureScrollPosition();let Oe={};if(Ce){const oe=z*Ce,De=me.scrollTop-(oe<0?Math.floor(oe):Math.ceil(oe));this._verticalScrollbar.writeScrollPosition(Oe,De)}if(Le){const oe=z*Le,De=me.scrollLeft-(oe<0?Math.floor(oe):Math.ceil(oe));this._horizontalScrollbar.writeScrollPosition(Oe,De)}if(Oe=this._scrollable.validateScrollPosition(Oe),me.scrollLeft!==Oe.scrollLeft||me.scrollTop!==Oe.scrollTop){const oe=Y&&this._options.mouseWheelSmoothScroll&&H.isPhysicalMouseWheel();oe?this._scrollable.setScrollPositionSmooth(Oe):this._scrollable.setScrollPositionNow(Oe),W=!0}}let ne=W;!ne&&this._options.alwaysConsumeMouseWheel&&(ne=!0),!ne&&this._options.consumeMouseWheelIfScrollbarIsNeeded&&(this._verticalScrollbar.isNeeded()||this._horizontalScrollbar.isNeeded())&&(ne=!0),ne&&(U.preventDefault(),U.stopPropagation())}_onDidScroll(U){this._shouldRender=this._horizontalScrollbar.onDidScroll(U)||this._shouldRender,this._shouldRender=this._verticalScrollbar.onDidScroll(U)||this._shouldRender,this._options.useShadows&&(this._shouldRender=!0),this._revealOnScroll&&this._reveal(),this._options.lazyRender||this._render()}renderNow(){if(!this._options.lazyRender)throw new Error("Please use `lazyRender` together with `renderNow`!");this._render()}_render(){if(!this._shouldRender)return;if(this._shouldRender=!1,this._horizontalScrollbar.render(),this._verticalScrollbar.render(),this._options.useShadows){const U=this._scrollable.getCurrentScrollPosition(),H=U.scrollTop>0,W=U.scrollLeft>0,ne=W?" left":"",Ce=H?" top":"",Le=W||H?" top-left-corner":"";this._leftShadowDomNode.setClassName(`shadow${ne}`),this._topShadowDomNode.setClassName(`shadow${Ce}`),this._topLeftShadowDomNode.setClassName(`shadow${Le}${Ce}${ne}`)}}_onDragStart(){this._isDragging=!0,this._reveal()}_onDragEnd(){this._isDragging=!1,this._hide()}_onMouseOut(U){this._mouseIsOver=!1,this._hide()}_onMouseOver(U){this._mouseIsOver=!0,this._reveal()}_reveal(){this._verticalScrollbar.beginReveal(),this._horizontalScrollbar.beginReveal(),this._scheduleHide()}_hide(){!this._mouseIsOver&&!this._isDragging&&(this._verticalScrollbar.beginHide(),this._horizontalScrollbar.beginHide())}_scheduleHide(){!this._mouseIsOver&&!this._isDragging&&this._hideTimeout.cancelAndSet(()=>this._hide(),B)}}class Se extends ee{constructor(U,H){H=H||{},H.mouseWheelSmoothScroll=!1;const W=new V.a(0,ne=>P.V(ne));super(U,H,W);this._register(W)}setScrollPosition(U){this._scrollable.setScrollPositionNow(U)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class fe extends ee{constructor(U,H,W){super(U,H,W)}setScrollPosition(U){U.reuseAnimation?this._scrollable.setScrollPositionSmooth(U,U.reuseAnimation):this._scrollable.setScrollPositionNow(U)}getScrollPosition(){return this._scrollable.getCurrentScrollPosition()}}class q extends Se{constructor(U,H){super(U,H);this._element=U,this.onScroll(W=>{W.scrollTopChanged&&(this._element.scrollTop=W.scrollTop),W.scrollLeftChanged&&(this._element.scrollLeft=W.scrollLeft)}),this.scanDomNode()}scanDomNode(){this.setScrollDimensions({width:this._element.clientWidth,scrollWidth:this._element.scrollWidth,height:this._element.clientHeight,scrollHeight:this._element.scrollHeight}),this.setScrollPosition({scrollLeft:this._element.scrollLeft,scrollTop:this._element.scrollTop})}}function te(U){const H={lazyRender:typeof U.lazyRender!="undefined"?U.lazyRender:!1,className:typeof U.className!="undefined"?U.className:"",useShadows:typeof U.useShadows!="undefined"?U.useShadows:!0,handleMouseWheel:typeof U.handleMouseWheel!="undefined"?U.handleMouseWheel:!0,flipAxes:typeof U.flipAxes!="undefined"?U.flipAxes:!1,consumeMouseWheelIfScrollbarIsNeeded:typeof U.consumeMouseWheelIfScrollbarIsNeeded!="undefined"?U.consumeMouseWheelIfScrollbarIsNeeded:!1,alwaysConsumeMouseWheel:typeof U.alwaysConsumeMouseWheel!="undefined"?U.alwaysConsumeMouseWheel:!1,scrollYToX:typeof U.scrollYToX!="undefined"?U.scrollYToX:!1,mouseWheelScrollSensitivity:typeof U.mouseWheelScrollSensitivity!="undefined"?U.mouseWheelScrollSensitivity:1,fastScrollSensitivity:typeof U.fastScrollSensitivity!="undefined"?U.fastScrollSensitivity:5,scrollPredominantAxis:typeof U.scrollPredominantAxis!="undefined"?U.scrollPredominantAxis:!0,mouseWheelSmoothScroll:typeof U.mouseWheelSmoothScroll!="undefined"?U.mouseWheelSmoothScroll:!0,arrowSize:typeof U.arrowSize!="undefined"?U.arrowSize:11,listenOnDomNode:typeof U.listenOnDomNode!="undefined"?U.listenOnDomNode:null,horizontal:typeof U.horizontal!="undefined"?U.horizontal:1,horizontalScrollbarSize:typeof U.horizontalScrollbarSize!="undefined"?U.horizontalScrollbarSize:10,horizontalSliderSize:typeof U.horizontalSliderSize!="undefined"?U.horizontalSliderSize:0,horizontalHasArrows:typeof U.horizontalHasArrows!="undefined"?U.horizontalHasArrows:!1,vertical:typeof U.vertical!="undefined"?U.vertical:1,verticalScrollbarSize:typeof U.verticalScrollbarSize!="undefined"?U.verticalScrollbarSize:10,verticalHasArrows:typeof U.verticalHasArrows!="undefined"?U.verticalHasArrows:!1,verticalSliderSize:typeof U.verticalSliderSize!="undefined"?U.verticalSliderSize:0,scrollByPage:typeof U.scrollByPage!="undefined"?U.scrollByPage:!1};return H.horizontalSliderSize=typeof U.horizontalSliderSize!="undefined"?U.horizontalSliderSize:H.horizontalScrollbarSize,H.verticalSliderSize=typeof U.verticalSliderSize!="undefined"?U.verticalSliderSize:H.verticalScrollbarSize,E.f&&(H.className+=" mac"),H}},"GR/f":function(ft,w,e){"use strict";e.d(w,"a",function(){return E}),e.d(w,"b",function(){return p});var h=e("/cxE"),P=e("N0LK"),L=e("LCkn"),A=e("zN7H"),I=e("aokT"),k=e("gCVg");class O{constructor(l,g,y){this._range=l,this._charBeforeSelection=g,this._charAfterSelection=y}getEditOperations(l,g){g.addTrackedEditOperation(new I.a(this._range.startLineNumber,this._range.startColumn,this._range.startLineNumber,this._range.startColumn),this._charBeforeSelection),g.addTrackedEditOperation(new I.a(this._range.endLineNumber,this._range.endColumn,this._range.endLineNumber,this._range.endColumn),this._charAfterSelection)}computeCursorState(l,g){let y=g.getInverseEditOperations(),C=y[0].range,v=y[1].range;return new k.a(C.endLineNumber,C.endColumn,v.endLineNumber,v.endColumn-this._charAfterSelection.length)}}var S=e("Ll0s"),f=e("5v8Y"),u=e("KDc4"),d=e("cMvZ");class E{static indent(l,g,y){if(g===null||y===null)return[];let C=[];for(let v=0,D=y.length;v1){let j;for(j=y-1;j>=1;j--){const B=g.getLineContent(j),z=P.I(B);if(z>=0)break}if(j<1)return null;const V=g.getLineMaxColumn(j),G=d.b.getEnterAction(l.autoIndent,g,new I.a(j,V,j,V));G&&(v=G.indentation+G.appendText)}return C&&(C===u.b.Indent&&(v=E.shiftIndent(l,v)),C===u.b.Outdent&&(v=E.unshiftIndent(l,v)),v=l.normalizeIndentation(v)),v||null}static _replaceJumpToNextIndent(l,g,y,C){let v="",D=y.getStartPosition();if(l.insertSpaces){let j=S.a.visibleColumnFromColumn2(l,g,D),V=l.indentSize,G=V-j%V;for(let B=0;Bthis._compositionType(y,B,v,D,j,V));return new S.e(4,G,{shouldPushStackElementBefore:b(l,4),shouldPushStackElementAfter:!1})}static _compositionType(l,g,y,C,v,D){if(!g.isEmpty())return null;const j=g.getPosition(),V=Math.max(1,j.column-C),G=Math.min(l.getLineMaxColumn(j.lineNumber),j.column+v),B=new I.a(j.lineNumber,V,j.lineNumber,G),z=l.getValueInRange(B);return z===y&&D===0?null:new L.d(B,y,0,D)}static _typeCommand(l,g,y){return y?new L.e(l,g,!0):new L.a(l,g,!0)}static _enter(l,g,y,C){if(l.autoIndent===0)return E._typeCommand(C,` `,y);if(!g.isCheapToTokenize(C.getStartPosition().lineNumber)||l.autoIndent===1){let V=g.getLineContent(C.startLineNumber),G=P.x(V).substring(0,C.startColumn-1);return E._typeCommand(C,` `+l.normalizeIndentation(G),y)}const v=d.b.getEnterAction(l.autoIndent,g,C);if(v){if(v.indentAction===u.b.None)return E._typeCommand(C,` `+l.normalizeIndentation(v.indentation+v.appendText),y);if(v.indentAction===u.b.Indent)return E._typeCommand(C,` `+l.normalizeIndentation(v.indentation+v.appendText),y);if(v.indentAction===u.b.IndentOutdent){const V=l.normalizeIndentation(v.indentation),G=l.normalizeIndentation(v.indentation+v.appendText),B=` `+G+` `+V;return y?new L.e(C,B,!0):new L.d(C,B,-1,G.length-V.length,!0)}else if(v.indentAction===u.b.Outdent){const V=E.unshiftIndent(l,v.indentation);return E._typeCommand(C,` `+l.normalizeIndentation(V+v.appendText),y)}}const D=g.getLineContent(C.startLineNumber),j=P.x(D).substring(0,C.startColumn-1);if(l.autoIndent>=4){const V=d.b.getIndentForEnter(l.autoIndent,g,C,{unshiftIndent:G=>E.unshiftIndent(l,G),shiftIndent:G=>E.shiftIndent(l,G),normalizeIndentation:G=>l.normalizeIndentation(G)});if(V){let G=S.a.visibleColumnFromColumn2(l,g,C.getEndPosition());const B=C.endColumn,z=g.getLineContent(C.endLineNumber),Y=P.u(z);if(Y>=0?C=C.setEndPosition(C.endLineNumber,Math.max(C.endColumn,Y+1)):C=C.setEndPosition(C.endLineNumber,g.getLineMaxColumn(C.endLineNumber)),y)return new L.e(C,` `+l.normalizeIndentation(V.afterEnter),!0);{let K=0;return B<=Y+1&&(l.insertSpaces||(G=Math.ceil(G/l.indentSize)),K=Math.min(G+1-l.normalizeIndentation(V.afterEnter).length-1,0)),new L.d(C,` `+l.normalizeIndentation(V.afterEnter),0,K,!0)}}}return E._typeCommand(C,` `+l.normalizeIndentation(j),y)}static _isAutoIndentType(l,g,y){if(l.autoIndent<4)return!1;for(let C=0,v=y.length;CE.shiftIndent(l,j),unshiftIndent:j=>E.unshiftIndent(l,j)});if(D===null)return null;if(D!==l.normalizeIndentation(v)){const j=g.getLineFirstNonWhitespaceColumn(y.startLineNumber);return j===0?E._typeCommand(new I.a(y.startLineNumber,1,y.endLineNumber,y.endColumn),l.normalizeIndentation(D)+C,!1):E._typeCommand(new I.a(y.startLineNumber,1,y.endLineNumber,y.endColumn),l.normalizeIndentation(D)+g.getLineContent(y.startLineNumber).substring(j-1,y.startColumn-1)+C,!1)}return null}static _isAutoClosingOvertype(l,g,y,C,v){if(l.autoClosingOvertype==="never")return!1;if(!l.autoClosingPairs.autoClosingPairsCloseSingleChar.has(v))return!1;for(let D=0,j=y.length;D2?B.charCodeAt(G.column-2):0;if(K===92&&Y)return!1;if(l.autoClosingOvertype==="auto"){let Q=!1;for(let ee=0,Se=C.length;eeg.startsWith(V.open)),j=v.some(V=>g.startsWith(V.close));return!D&&j}static _findAutoClosingPairOpen(l,g,y,C){const v=l.autoClosingPairs.autoClosingPairsOpenByEnd.get(C);if(!v)return null;let D=null;for(const j of v)if(D===null||j.open.length>D.open.length){let V=!0;for(const G of y){const B=g.getValueInRange(new I.a(G.lineNumber,G.column-j.open.length+1,G.lineNumber,G.column));if(B+C!==j.open){V=!1;break}}V&&(D=j)}return D}static _findSubAutoClosingPairClose(l,g){if(g.open.length<=1)return"";const y=g.close.charAt(g.close.length-1),C=l.autoClosingPairs.autoClosingPairsCloseByEnd.get(y)||[];let v=null;for(const D of C)D.open!==g.open&&g.open.includes(D.open)&&g.close.endsWith(D.close)&&((!v||D.open.length>v.open.length)&&(v=D));return v?v.close:""}static _getAutoClosingPairClose(l,g,y,C,v){const D=Object(S.g)(C),j=D?l.autoClosingQuotes:l.autoClosingBrackets;if(j==="never")return null;const V=this._findAutoClosingPairOpen(l,g,y.map(Y=>Y.getPosition()),C);if(!V)return null;const G=this._findSubAutoClosingPairClose(l,V);let B=!0;const z=D?l.shouldAutoCloseBefore.quote:l.shouldAutoCloseBefore.bracket;for(let Y=0,K=y.length;Yee.column-1){const U=Se.charAt(ee.column-1),H=E._isBeforeClosingBrace(l,fe);if(!H&&!z(U))return null}if(!g.isCheapToTokenize(ee.lineNumber))return null;if(V.open.length===1&&(C==="'"||C==='"')&&j!=="always"){const U=Object(f.a)(l.wordSeparators);if(v&&ee.column>1&&U.get(Se.charCodeAt(ee.column-2))===0)return null;if(!v&&ee.column>2&&U.get(Se.charCodeAt(ee.column-3))===0)return null}g.forceTokenization(ee.lineNumber);const q=g.getLineTokens(ee.lineNumber);let te=!1;try{te=d.b.shouldAutoClosePair(V,q,v?ee.column:ee.column-1)}catch(U){Object(h.f)(U)}if(!te)return null}return B?V.close.substring(0,V.close.length-G.length):V.close}static _runAutoClosingOpenCharType(l,g,y,C,v,D,j){let V=[];for(let G=0,B=C.length;Gnew L.a(new I.a(B.positionLineNumber,B.positionColumn,B.positionLineNumber,B.positionColumn+1),"",!1));return new S.e(4,G,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!1})}const V=this._getAutoClosingPairClose(g,y,v,j,!1);return V!==null?this._runAutoClosingOpenCharType(l,g,y,v,j,!1,V):null}static typeWithInterceptors(l,g,y,C,v,D,j){if(!l&&j===` `){let B=[];for(let z=0,Y=v.length;z=0;G--)(V=g[G])&&(j=(D<3?V(j):D>3?V(y,C,j):V(y,C))||j);return D>3&&j&&Object.defineProperty(y,C,j),j},b=function(g,y){return function(C,v){y(C,v,g)}};let m=class g{constructor(y,C){this.decorationIds=[],this.editor=y,this.editorWorkerService=C}static get(y){return y.getContribution(g.ID)}dispose(){}run(y,C){this.currentRequest&&this.currentRequest.cancel();const v=this.editor.getSelection(),D=this.editor.getModel();if(!D||!v)return;let j=v;if(j.startLineNumber!==j.endLineNumber)return;const V=new L.a(this.editor,1|4),G=D.uri;return this.editorWorkerService.canNavigateValueSet(G)?(this.currentRequest=Object(h.h)(B=>this.editorWorkerService.navigateValueSet(G,j,C)),this.currentRequest.then(B=>{if(!B||!B.range||!B.value)return;if(!V.validate(this.editor))return;let z=I.a.lift(B.range),Y=B.range,K=B.value.length-(j.endColumn-j.startColumn);Y={startLineNumber:Y.startLineNumber,startColumn:Y.startColumn,endLineNumber:Y.endLineNumber,endColumn:Y.startColumn+B.value.length},K>1&&(j=new k.a(j.startLineNumber,j.startColumn,j.endLineNumber,j.endColumn+K-1));const Q=new p(z,j,B.value);this.editor.pushUndoStop(),this.editor.executeCommand(y,Q),this.editor.pushUndoStop(),this.decorationIds=this.editor.deltaDecorations(this.decorationIds,[{range:Y,options:g.DECORATION}]),this.decorationRemover&&this.decorationRemover.cancel(),this.decorationRemover=Object(h.n)(350),this.decorationRemover.then(()=>this.decorationIds=this.editor.deltaDecorations(this.decorationIds,[])).catch(P.f)}).catch(P.f)):Promise.resolve(void 0)}};m.ID="editor.contrib.inPlaceReplaceController",m.DECORATION=S.b.register({description:"in-place-replace",className:"valueSetReplacement"}),m=n([b(1,f.a)],m);class c extends A.b{constructor(){super({id:"editor.action.inPlaceReplace.up",label:d.a("InPlaceReplaceAction.previous.label","Replace with Previous Value"),alias:"Replace with Previous Value",precondition:O.a.writable,kbOpts:{kbExpr:O.a.editorTextFocus,primary:2048|1024|82,weight:100}})}run(g,y){const C=m.get(y);return C?C.run(this.id,!0):Promise.resolve(void 0)}}class l extends A.b{constructor(){super({id:"editor.action.inPlaceReplace.down",label:d.a("InPlaceReplaceAction.next.label","Replace with Next Value"),alias:"Replace with Next Value",precondition:O.a.writable,kbOpts:{kbExpr:O.a.editorTextFocus,primary:2048|1024|84,weight:100}})}run(g,y){const C=m.get(y);return C?C.run(this.id,!1):Promise.resolve(void 0)}}Object(A.l)(m.ID,m),Object(A.j)(c),Object(A.j)(l),Object(E.f)((g,y)=>{const C=g.getColor(u.k);C&&y.addRule(`.monaco-editor.vs .valueSetReplacement { outline: solid 2px ${C}; }`)})},Gw4z:function(ft,w,e){"use strict";e.d(w,"b",function(){return A}),e.d(w,"a",function(){return S});class h{constructor(f,u,d,E){this.originalStart=f,this.originalLength=u,this.modifiedStart=d,this.modifiedLength=E}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}var P=e("7afs");class L{constructor(f){this.source=f}getElements(){const f=this.source,u=new Int32Array(f.length);for(let d=0,E=f.length;d0||this.m_modifiedCount>0)&&this.m_changes.push(new h(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(f,u){this.m_originalStart=Math.min(this.m_originalStart,f),this.m_modifiedStart=Math.min(this.m_modifiedStart,u),this.m_originalCount++}AddModifiedElement(f,u){this.m_originalStart=Math.min(this.m_originalStart,f),this.m_modifiedStart=Math.min(this.m_modifiedStart,u),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}}class S{constructor(f,u,d=null){this.ContinueProcessingPredicate=d,this._originalSequence=f,this._modifiedSequence=u;const[E,p,n]=S._getElements(f),[b,m,c]=S._getElements(u);this._hasStrings=n&&c,this._originalStringElements=E,this._originalElementsOrHash=p,this._modifiedStringElements=b,this._modifiedElementsOrHash=m,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(f){return f.length>0&&typeof f[0]=="string"}static _getElements(f){const u=f.getElements();if(S._isStringArray(u)){const d=new Int32Array(u.length);for(let E=0,p=u.length;E=f&&E>=d&&this.ElementsAreEqual(u,E);)u--,E--;if(f>u||d>E){let g;return d<=E?(I.Assert(f===u+1,"originalStart should only be one more than originalEnd"),g=[new h(f,0,d,E-d+1)]):f<=u?(I.Assert(d===E+1,"modifiedStart should only be one more than modifiedEnd"),g=[new h(f,u-f+1,d,0)]):(I.Assert(f===u+1,"originalStart should only be one more than originalEnd"),I.Assert(d===E+1,"modifiedStart should only be one more than modifiedEnd"),g=[]),g}const n=[0],b=[0],m=this.ComputeRecursionPoint(f,u,d,E,n,b,p),c=n[0],l=b[0];if(m!==null)return m;if(!p[0]){const g=this.ComputeDiffRecursive(f,c,d,l,p);let y=[];return p[0]?y=[new h(c+1,u-(c+1)+1,l+1,E-(l+1)+1)]:y=this.ComputeDiffRecursive(c+1,u,l+1,E,p),this.ConcatenateChanges(g,y)}return[new h(f,u-f+1,d,E-d+1)]}WALKTRACE(f,u,d,E,p,n,b,m,c,l,g,y,C,v,D,j,V,G){let B=null,z=null,Y=new O,K=u,Q=d,ee=C[0]-j[0]-E,Se=-1073741824,fe=this.m_forwardHistory.length-1;do{const q=ee+f;q===K||q=0&&(c=this.m_forwardHistory[fe],f=c[0],K=1,Q=c.length-1)}while(--fe>=-1);if(B=Y.getReverseChanges(),G[0]){let q=C[0]+1,te=j[0]+1;if(B!==null&&B.length>0){const U=B[B.length-1];q=Math.max(q,U.getOriginalEnd()),te=Math.max(te,U.getModifiedEnd())}z=[new h(q,y-q+1,te,D-te+1)]}else{Y=new O,K=n,Q=b,ee=C[0]-j[0]-m,Se=1073741824,fe=V?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const q=ee+p;q===K||q=l[q+1]?(g=l[q+1]-1,v=g-ee-m,g>Se&&Y.MarkNextChange(),Se=g+1,Y.AddOriginalElement(g+1,v+1),ee=q+1-p):(g=l[q-1],v=g-ee-m,g>Se&&Y.MarkNextChange(),Se=g,Y.AddModifiedElement(g+1,v+1),ee=q-1-p),fe>=0&&(l=this.m_reverseHistory[fe],p=l[0],K=1,Q=l.length-1)}while(--fe>=-1);z=Y.getChanges()}return this.ConcatenateChanges(B,z)}ComputeRecursionPoint(f,u,d,E,p,n,b){let m=0,c=0,l=0,g=0,y=0,C=0;f--,d--,p[0]=0,n[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const v=u-f+(E-d),D=v+1,j=new Int32Array(D),V=new Int32Array(D),G=E-d,B=u-f,z=f-d,Y=u-E,K=B-G,Q=K%2===0;j[G]=f,V[B]=u,b[0]=!1;for(let ee=1;ee<=v/2+1;ee++){let Se=0,fe=0;l=this.ClipDiagonalBound(G-ee,ee,G,D),g=this.ClipDiagonalBound(G+ee,ee,G,D);for(let te=l;te<=g;te+=2){te===l||teSe+fe&&(Se=m,fe=c),!Q&&Math.abs(te-B)<=ee-1&&m>=V[te])return p[0]=m,n[0]=c,U<=V[te]&&1447>0&&ee<=1447+1?this.WALKTRACE(G,l,g,z,B,y,C,Y,j,V,m,u,p,c,E,n,Q,b):null}const q=(Se-f+(fe-d)-ee)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(Se,q))return b[0]=!0,p[0]=Se,n[0]=fe,q>0&&1447>0&&ee<=1447+1?this.WALKTRACE(G,l,g,z,B,y,C,Y,j,V,m,u,p,c,E,n,Q,b):(f++,d++,[new h(f,u-f+1,d,E-d+1)]);y=this.ClipDiagonalBound(B-ee,ee,B,D),C=this.ClipDiagonalBound(B+ee,ee,B,D);for(let te=y;te<=C;te+=2){te===y||te=V[te+1]?m=V[te+1]-1:m=V[te-1],c=m-(te-B)-Y;const U=m;for(;m>f&&c>d&&this.ElementsAreEqual(m,c);)m--,c--;if(V[te]=m,Q&&Math.abs(te-G)<=ee&&m<=j[te])return p[0]=m,n[0]=c,U>=j[te]&&1447>0&&ee<=1447+1?this.WALKTRACE(G,l,g,z,B,y,C,Y,j,V,m,u,p,c,E,n,Q,b):null}if(ee<=1447){let te=new Int32Array(g-l+2);te[0]=G-l+1,k.Copy2(j,l,te,1,g-l+1),this.m_forwardHistory.push(te),te=new Int32Array(C-y+2),te[0]=B-y+1,k.Copy2(V,y,te,1,C-y+1),this.m_reverseHistory.push(te)}}return this.WALKTRACE(G,l,g,z,B,y,C,Y,j,V,m,u,p,c,E,n,Q,b)}PrettifyChanges(f){for(let u=0;u0,b=d.modifiedLength>0;for(;d.originalStart+d.originalLength=0;u--){const d=f[u];let E=0,p=0;if(u>0){const g=f[u-1];E=g.originalStart+g.originalLength,p=g.modifiedStart+g.modifiedLength}const n=d.originalLength>0,b=d.modifiedLength>0;let m=0,c=this._boundaryScore(d.originalStart,d.originalLength,d.modifiedStart,d.modifiedLength);for(let g=1;;g++){const y=d.originalStart-g,C=d.modifiedStart-g;if(yc&&(c=D,m=g)}d.originalStart-=m,d.modifiedStart-=m;const l=[null];if(u>0&&this.ChangesOverlap(f[u-1],f[u],l)){f[u-1]=l[0],f.splice(u,1),u++;continue}}if(this._hasStrings)for(let u=1,d=f.length;u0&&C>m&&(m=C,c=g,l=y)}return m>0?[c,l]:null}_contiguousSequenceScore(f,u,d){let E=0;for(let p=0;p=this._originalElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._originalStringElements[f])}_OriginalRegionIsBoundary(f,u){if(this._OriginalIsBoundary(f)||this._OriginalIsBoundary(f-1))return!0;if(u>0){const d=f+u;if(this._OriginalIsBoundary(d-1)||this._OriginalIsBoundary(d))return!0}return!1}_ModifiedIsBoundary(f){return f<=0||f>=this._modifiedElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[f])}_ModifiedRegionIsBoundary(f,u){if(this._ModifiedIsBoundary(f)||this._ModifiedIsBoundary(f-1))return!0;if(u>0){const d=f+u;if(this._ModifiedIsBoundary(d-1)||this._ModifiedIsBoundary(d))return!0}return!1}_boundaryScore(f,u,d,E){const p=this._OriginalRegionIsBoundary(f,u)?1:0,n=this._ModifiedRegionIsBoundary(d,E)?1:0;return p+n}ConcatenateChanges(f,u){let d=[];if(f.length===0||u.length===0)return u.length>0?u:f;if(this.ChangesOverlap(f[f.length-1],u[0],d)){const E=new Array(f.length+u.length-1);return k.Copy(f,0,E,0,f.length-1),E[f.length-1]=d[0],k.Copy(u,1,E,f.length,u.length-1),E}else{const E=new Array(f.length+u.length);return k.Copy(f,0,E,0,f.length),k.Copy(u,0,E,f.length,u.length),E}}ChangesOverlap(f,u,d){if(I.Assert(f.originalStart<=u.originalStart,"Left change is not less than or equal to right change"),I.Assert(f.modifiedStart<=u.modifiedStart,"Left change is not less than or equal to right change"),f.originalStart+f.originalLength>=u.originalStart||f.modifiedStart+f.modifiedLength>=u.modifiedStart){const E=f.originalStart;let p=f.originalLength;const n=f.modifiedStart;let b=f.modifiedLength;return f.originalStart+f.originalLength>=u.originalStart&&(p=u.originalStart+u.originalLength-f.originalStart),f.modifiedStart+f.modifiedLength>=u.modifiedStart&&(b=u.modifiedStart+u.modifiedLength-f.modifiedStart),d[0]=new h(E,p,n,b),!0}else return d[0]=null,!1}ClipDiagonalBound(f,u,d,E){if(f>=0&&f{p.value=void 0,p.value=this.doProvide(f,u)})),E}doProvide(f,u){const d=new P.b,E=this.activeTextEditorControl;if(E&&this.canProvideWithTextEditor(E)){const p={editor:E},n=Object(A.a)(E);if(n){let b=Object(L.p)(E.saveViewState());d.add(n.onDidChangeCursorPosition(()=>{b=Object(L.p)(E.saveViewState())})),p.restoreViewState=()=>{b&&E===this.activeTextEditorControl&&E.restoreViewState(b)},d.add(Object(h.a)(u.onCancellationRequested)(()=>{var m;return(m=p.restoreViewState)===null||m===void 0?void 0:m.call(p)}))}d.add(Object(P.i)(()=>this.clearDecorations(E))),d.add(this.provideWithTextEditor(p,f,u))}else d.add(this.provideWithoutTextEditor(f,u));return d}canProvideWithTextEditor(f){return!0}gotoLocation({editor:f},u){f.setSelection(u.range),f.revealRangeInCenter(u.range,0),u.preserveFocus||f.focus()}getModel(f){var u;return Object(A.c)(f)?(u=f.getModel())===null||u===void 0?void 0:u.modified:f.getModel()}addDecorations(f,u){f.changeDecorations(d=>{const E=[];this.rangeHighlightDecorationId&&(E.push(this.rangeHighlightDecorationId.overviewRulerDecorationId),E.push(this.rangeHighlightDecorationId.rangeHighlightId),this.rangeHighlightDecorationId=void 0);const p=[{range:u,options:{description:"quick-access-range-highlight",className:"rangeHighlight",isWholeLine:!0}},{range:u,options:{description:"quick-access-range-highlight-overview",overviewRuler:{color:Object(O.g)(k.N),position:I.g.Full}}}],[n,b]=d.deltaDecorations(E,p);this.rangeHighlightDecorationId={rangeHighlightId:n,overviewRulerDecorationId:b}})}clearDecorations(f){const u=this.rangeHighlightDecorationId;u&&(f.changeDecorations(d=>{d.deltaDecorations([u.overviewRulerDecorationId,u.rangeHighlightId],[])}),this.rangeHighlightDecorationId=void 0)}}},H4T2:function(ft,w,e){"use strict";e.r(w),e.d(w,"GotoDefinitionAtPositionEditorContribution",function(){return V});var h=e("X+cX"),P=e("/cxE"),L=e("eLzo"),A=e("pmY6"),I=e("746U"),k=e("62hx"),O=e.n(k),S=e("vATl"),f=e("sswD"),u=e("cGHE"),d=e("aokT"),E=e("twdY"),p=e("WBhO"),n=e("t49l"),b=e("aBYw"),m=e("iNS8"),c=e("3/fG"),l=e("T8No"),g=e("MD5Z"),y=e("t9D7"),C=e("8Ydt"),v=e("vRMv"),D=function(G,B,z,Y){var K=arguments.length,Q=K<3?B:Y===null?Y=Object.getOwnPropertyDescriptor(B,z):Y,ee;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Q=Reflect.decorate(G,B,z,Y);else for(var Se=G.length-1;Se>=0;Se--)(ee=G[Se])&&(Q=(K<3?ee(Q):K>3?ee(B,z,Q):ee(B,z))||Q);return K>3&&Q&&Object.defineProperty(B,z,Q),Q},j=function(G,B){return function(z,Y){B(z,Y,G)}};let V=class G{constructor(B,z,Y){this.textModelResolverService=z,this.modeService=Y,this.toUnhook=new A.b,this.toUnhookForKeyboard=new A.b,this.linkDecorations=[],this.currentWordAtPosition=null,this.previousPromise=null,this.editor=B;let K=new b.a(B);this.toUnhook.add(K),this.toUnhook.add(K.onMouseMoveOrRelevantKeyDown(([Q,ee])=>{this.startFindDefinitionFromMouse(Q,Object(I.p)(ee))})),this.toUnhook.add(K.onExecute(Q=>{this.isEnabled(Q)&&this.gotoDefinition(Q.target.position,Q.hasSideBySideModifier).then(()=>{this.removeLinkDecorations()},ee=>{this.removeLinkDecorations(),Object(P.f)(ee)})})),this.toUnhook.add(K.onCancel(()=>{this.removeLinkDecorations(),this.currentWordAtPosition=null}))}static get(B){return B.getContribution(G.ID)}startFindDefinitionFromCursor(B){return this.startFindDefinition(B).then(()=>{this.toUnhookForKeyboard.add(this.editor.onDidChangeCursorPosition(()=>{this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear()})),this.toUnhookForKeyboard.add(this.editor.onKeyDown(z=>{z&&(this.currentWordAtPosition=null,this.removeLinkDecorations(),this.toUnhookForKeyboard.clear())}))})}startFindDefinitionFromMouse(B,z){if(B.target.type===9&&this.linkDecorations.length>0)return;if(!this.editor.hasModel()||!this.isEnabled(B,z)){this.currentWordAtPosition=null,this.removeLinkDecorations();return}const Y=B.target.position;this.startFindDefinition(Y)}startFindDefinition(B){var z;this.toUnhookForKeyboard.clear();const Y=B?(z=this.editor.getModel())===null||z===void 0?void 0:z.getWordAtPosition(B):null;if(!Y)return this.currentWordAtPosition=null,this.removeLinkDecorations(),Promise.resolve(0);if(this.currentWordAtPosition&&this.currentWordAtPosition.startColumn===Y.startColumn&&this.currentWordAtPosition.endColumn===Y.endColumn&&this.currentWordAtPosition.word===Y.word)return Promise.resolve(0);this.currentWordAtPosition=Y;let K=new S.a(this.editor,4|1|2|8);return this.previousPromise&&(this.previousPromise.cancel(),this.previousPromise=null),this.previousPromise=Object(h.h)(Q=>this.findDefinition(B,Q)),this.previousPromise.then(Q=>{if(!Q||!Q.length||!K.validate(this.editor)){this.removeLinkDecorations();return}if(Q.length>1)this.addDecoration(new d.a(B.lineNumber,Y.startColumn,B.lineNumber,Y.endColumn),new L.a().appendText(c.a("multipleResults","Click to show {0} definitions.",Q.length)));else{let ee=Q[0];if(!ee.uri)return;this.textModelResolverService.createModelReference(ee.uri).then(Se=>{if(!Se.object||!Se.object.textEditorModel){Se.dispose();return}const{object:{textEditorModel:fe}}=Se,{startLineNumber:q}=ee.range;if(q<1||q>fe.getLineCount()){Se.dispose();return}const te=this.getPreviewValue(fe,q,ee);let U;ee.originSelectionRange?U=d.a.lift(ee.originSelectionRange):U=new d.a(B.lineNumber,Y.startColumn,B.lineNumber,Y.endColumn);const H=this.modeService.getModeIdByFilepathOrFirstLine(fe.uri);this.addDecoration(U,new L.a().appendCodeblock(H||"",te)),Se.dispose()})}}).then(void 0,P.f)}getPreviewValue(B,z,Y){let K=Y.targetSelectionRange?Y.range:this.getPreviewRangeBasedOnBrackets(B,z);const Q=K.endLineNumber-K.startLineNumber;Q>=G.MAX_SOURCE_PREVIEW_LINES&&(K=this.getPreviewRangeBasedOnIndentation(B,z));const ee=this.stripIndentationFromPreviewRange(B,z,K);return ee}stripIndentationFromPreviewRange(B,z,Y){const K=B.getLineFirstNonWhitespaceColumn(z);let Q=K;for(let Se=z+1;SeY)return new d.a(z,1,Y+1,1);ee=B.findNextBracket(new u.a(fe,q))}return new d.a(z,1,Y+1,1)}addDecoration(B,z){const Y={range:B,options:{description:"goto-definition-link",inlineClassName:"goto-definition-link",hoverMessage:z}};this.linkDecorations=this.editor.deltaDecorations(this.linkDecorations,[Y])}removeLinkDecorations(){this.linkDecorations.length>0&&(this.linkDecorations=this.editor.deltaDecorations(this.linkDecorations,[]))}isEnabled(B,z){return this.editor.hasModel()&&B.isNoneOrSingleMouseDown&&B.target.type===6&&(B.hasTriggerModifier||(z?z.keyCodeIsTriggerKey:!1))&&E.f.has(this.editor.getModel())}findDefinition(B,z){const Y=this.editor.getModel();return Y?Object(v.b)(Y,B,z):Promise.resolve(null)}gotoDefinition(B,z){return this.editor.setPosition(B),this.editor.invokeWithinContext(Y=>{const K=!z&&this.editor.getOption(77)&&!this.isInPeekEditor(Y),Q=new C.DefinitionAction({openToSide:z,openInPeek:K,muteMessage:!0},{alias:"",label:"",id:"",precondition:void 0});return Q.run(Y,this.editor)})}isInPeekEditor(B){const z=B.get(l.b);return m.b.inPeekEditor.getValue(z)}dispose(){this.toUnhook.dispose()}};V.ID="editor.contrib.gotodefinitionatposition",V.MAX_SOURCE_PREVIEW_LINES=8,V=D([j(1,n.a),j(2,p.a)],V),Object(f.l)(V.ID,V),Object(y.f)((G,B)=>{const z=G.getColor(g.q);z&&B.addRule(`.monaco-editor .goto-definition-link { color: ${z} !important; }`)})},H6Gb:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"php",extensions:[".php",".php4",".php5",".phtml",".ctp"],aliases:["PHP","php"],mimetypes:["application/x-php"],loader:function(){return e.e(361).then(e.bind(null,"lXEz"))}})},HdwC:function(ft,w,e){"use strict";e.d(w,"b",function(){return p}),e.d(w,"a",function(){return b});var h=e("D3Dy"),P=e("MI8n"),L=e("pmY6"),A=e("MNsG"),I=e("/UlZ");class k{constructor(m,c){this.chr=m,this.type=c,this.width=0}fulfill(m){this.width=m}}class O{constructor(m,c){this._bareFontInfo=m,this._requests=c,this._container=null,this._testElements=null}read(){this._createDomElements(),document.body.appendChild(this._container),this._readFromDomElements(),document.body.removeChild(this._container),this._container=null,this._testElements=null}_createDomElements(){const m=this._bareFontInfo.getMassagedFontFamily(h.h?I.c.fontFamily:null),c=document.createElement("div");c.style.position="absolute",c.style.top="-50000px",c.style.width="50000px";const l=document.createElement("div");l.style.fontFamily=m,l.style.fontWeight=this._bareFontInfo.fontWeight,l.style.fontSize=this._bareFontInfo.fontSize+"px",l.style.fontFeatureSettings=this._bareFontInfo.fontFeatureSettings,l.style.lineHeight=this._bareFontInfo.lineHeight+"px",l.style.letterSpacing=this._bareFontInfo.letterSpacing+"px",c.appendChild(l);const g=document.createElement("div");g.style.fontFamily=m,g.style.fontWeight="bold",g.style.fontSize=this._bareFontInfo.fontSize+"px",g.style.fontFeatureSettings=this._bareFontInfo.fontFeatureSettings,g.style.lineHeight=this._bareFontInfo.lineHeight+"px",g.style.letterSpacing=this._bareFontInfo.letterSpacing+"px",c.appendChild(g);const y=document.createElement("div");y.style.fontFamily=m,y.style.fontWeight=this._bareFontInfo.fontWeight,y.style.fontSize=this._bareFontInfo.fontSize+"px",y.style.fontFeatureSettings=this._bareFontInfo.fontFeatureSettings,y.style.lineHeight=this._bareFontInfo.lineHeight+"px",y.style.letterSpacing=this._bareFontInfo.letterSpacing+"px",y.style.fontStyle="italic",c.appendChild(y);const C=[];for(const v of this._requests){let D;v.type===0&&(D=l),v.type===2&&(D=g),v.type===1&&(D=y),D.appendChild(document.createElement("br"));const j=document.createElement("span");O._render(j,v),D.appendChild(j),C.push(j)}this._container=c,this._testElements=C}static _render(m,c){if(c.chr===" "){let l="\xA0";for(let g=0;g<8;g++)l+=l;m.innerText=l}else{let l=c.chr;for(let g=0;g<8;g++)l+=l;m.textContent=l}}_readFromDomElements(){for(let m=0,c=this._requests.length;mthis._values[m])}}function p(){n.INSTANCE.clearCache()}class n extends L.a{constructor(){super();this._onDidChange=this._register(new P.b),this.onDidChange=this._onDidChange.event,this._cache=new E,this._evictUntrustedReadingsTimeout=-1}dispose(){this._evictUntrustedReadingsTimeout!==-1&&(clearTimeout(this._evictUntrustedReadingsTimeout),this._evictUntrustedReadingsTimeout=-1),super.dispose()}clearCache(){this._cache=new E,this._onDidChange.fire()}_writeToCache(m,c){this._cache.put(m,c),!c.isTrusted&&this._evictUntrustedReadingsTimeout===-1&&(this._evictUntrustedReadingsTimeout=setTimeout(()=>{this._evictUntrustedReadingsTimeout=-1,this._evictUntrustedReadings()},5e3))}_evictUntrustedReadings(){const m=this._cache.getValues();let c=!1;for(const l of m)l.isTrusted||(c=!0,this._cache.remove(l));c&&this._onDidChange.fire()}readConfiguration(m){if(!this._cache.has(m)){let c=n._actualReadConfiguration(m);(c.typicalHalfwidthCharacterWidth<=2||c.typicalFullwidthCharacterWidth<=2||c.spaceWidth<=2||c.maxDigitWidth<=2)&&(c=new d.b({zoomLevel:h.d(),pixelRatio:h.a(),fontFamily:c.fontFamily,fontWeight:c.fontWeight,fontSize:c.fontSize,fontFeatureSettings:c.fontFeatureSettings,lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,isMonospace:c.isMonospace,typicalHalfwidthCharacterWidth:Math.max(c.typicalHalfwidthCharacterWidth,5),typicalFullwidthCharacterWidth:Math.max(c.typicalFullwidthCharacterWidth,5),canUseHalfwidthRightwardsArrow:c.canUseHalfwidthRightwardsArrow,spaceWidth:Math.max(c.spaceWidth,5),middotWidth:Math.max(c.middotWidth,5),wsmiddotWidth:Math.max(c.wsmiddotWidth,5),maxDigitWidth:Math.max(c.maxDigitWidth,5)},!1)),this._writeToCache(m,c)}return this._cache.get(m)}static createRequest(m,c,l,g){const y=new k(m,c);return l.push(y),g&&g.push(y),y}static _actualReadConfiguration(m){const c=[],l=[],g=this.createRequest("n",0,c,l),y=this.createRequest("\uFF4D",0,c,null),C=this.createRequest(" ",0,c,l),v=this.createRequest("0",0,c,l),D=this.createRequest("1",0,c,l),j=this.createRequest("2",0,c,l),V=this.createRequest("3",0,c,l),G=this.createRequest("4",0,c,l),B=this.createRequest("5",0,c,l),z=this.createRequest("6",0,c,l),Y=this.createRequest("7",0,c,l),K=this.createRequest("8",0,c,l),Q=this.createRequest("9",0,c,l),ee=this.createRequest("\u2192",0,c,l),Se=this.createRequest("\uFFEB",0,c,null),fe=this.createRequest("\xB7",0,c,l),q=this.createRequest(String.fromCharCode(11825),0,c,null),te="|/-_ilm%";for(let Le=0,ce=te.length;Le.001){H=!1;break}}let ne=!0;H&&Se.width!==W&&(ne=!1),Se.width>ee.width&&(ne=!1);const Ce=h.b()>2e3;return new d.b({zoomLevel:h.d(),pixelRatio:h.a(),fontFamily:m.fontFamily,fontWeight:m.fontWeight,fontSize:m.fontSize,fontFeatureSettings:m.fontFeatureSettings,lineHeight:m.lineHeight,letterSpacing:m.letterSpacing,isMonospace:H,typicalHalfwidthCharacterWidth:g.width,typicalFullwidthCharacterWidth:y.width,canUseHalfwidthRightwardsArrow:ne,spaceWidth:C.width,middotWidth:fe.width,wsmiddotWidth:q.width,maxDigitWidth:U},Ce)}}n.INSTANCE=new n;class b extends u.a{constructor(m,c,l=null,g){super(m,c);this.accessibilityService=g,this._elementSizeObserver=this._register(new f.a(l,c.dimension,()=>this._recomputeOptions())),this._register(n.INSTANCE.onDidChange(()=>this._recomputeOptions())),this._validatedOptions.get(10)&&this._elementSizeObserver.startObserving(),this._register(h.l(y=>this._recomputeOptions())),this._register(this.accessibilityService.onDidChangeScreenReaderOptimized(()=>this._recomputeOptions())),this._recomputeOptions()}static applyFontInfoSlow(m,c){m.style.fontFamily=c.getMassagedFontFamily(h.h?I.c.fontFamily:null),m.style.fontWeight=c.fontWeight,m.style.fontSize=c.fontSize+"px",m.style.fontFeatureSettings=c.fontFeatureSettings,m.style.lineHeight=c.lineHeight+"px",m.style.letterSpacing=c.letterSpacing+"px"}static applyFontInfo(m,c){m.setFontFamily(c.getMassagedFontFamily(h.h?I.c.fontFamily:null)),m.setFontWeight(c.fontWeight),m.setFontSize(c.fontSize),m.setFontFeatureSettings(c.fontFeatureSettings),m.setLineHeight(c.lineHeight),m.setLetterSpacing(c.letterSpacing)}observeReferenceElement(m){this._elementSizeObserver.observe(m)}updatePixelRatio(){this._recomputeOptions()}static _getExtraEditorClassName(){let m="";return!h.h&&!h.k&&(m+="no-user-select "),h.h&&(m+="no-minimap-shadow "),A.f&&(m+="mac "),m}_getEnvConfiguration(){return{extraEditorClassName:b._getExtraEditorClassName(),outerWidth:this._elementSizeObserver.getWidth(),outerHeight:this._elementSizeObserver.getHeight(),emptySelectionClipboard:h.j||h.g,pixelRatio:h.a(),zoomLevel:h.d(),accessibilitySupport:this.accessibilityService.isScreenReaderOptimized()?2:this.accessibilityService.getAccessibilitySupport()}}readConfiguration(m){return n.INSTANCE.readConfiguration(m)}}},HgMQ:function(ft,w,e){},HpOR:function(ft,w,e){"use strict";(function(h){e.d(w,"a",function(){return A}),e.d(w,"b",function(){return I}),e.d(w,"e",function(){return k}),e.d(w,"c",function(){return O}),e.d(w,"f",function(){return S}),e.d(w,"d",function(){return f}),e.d(w,"g",function(){return u});const P=typeof h!="undefined";let L;class A{constructor(d){this.buffer=d,this.byteLength=this.buffer.byteLength}static wrap(d){return P&&!h.isBuffer(d)&&(d=h.from(d.buffer,d.byteOffset,d.byteLength)),new A(d)}toString(){return P?this.buffer.toString():(L||(L=new TextDecoder),L.decode(this.buffer))}}function I(d,E){return d[E+0]<<0>>>0|d[E+1]<<8>>>0}function k(d,E,p){d[p+0]=E&255,E=E>>>8,d[p+1]=E&255}function O(d,E){return d[E]*Math.pow(2,24)+d[E+1]*Math.pow(2,16)+d[E+2]*Math.pow(2,8)+d[E+3]}function S(d,E,p){d[p+3]=E,E=E>>>8,d[p+2]=E,E=E>>>8,d[p+1]=E,E=E>>>8,d[p]=E}function f(d,E){return d[E]}function u(d,E,p){d[p]=E}}).call(this,e("HDXh").Buffer)},HyZH:function(ft,w,e){},"I/Lx":function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:function(){return e.e(337).then(e.bind(null,"yswY"))}})},"J+ZK":function(ft,w,e){},"JQT/":function(ft,w,e){"use strict";e.d(w,"a",function(){return L}),e.d(w,"b",function(){return I});var h=e("MI8n");const P=Object.freeze(function(k,O){const S=setTimeout(k.bind(O),0);return{dispose(){clearTimeout(S)}}});var L;(function(k){function O(S){return S===k.None||S===k.Cancelled||S instanceof A?!0:!S||typeof S!="object"?!1:typeof S.isCancellationRequested=="boolean"&&typeof S.onCancellationRequested=="function"}k.isCancellationToken=O,k.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:h.c.None}),k.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:P})})(L||(L={}));class A{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?P:(this._emitter||(this._emitter=new h.b),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class I{constructor(k){this._token=void 0,this._parentListener=void 0,this._parentListener=k&&k.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new A),this._token}cancel(){this._token?this._token instanceof A&&this._token.cancel():this._token=L.Cancelled}dispose(k=!1){k&&this.cancel(),this._parentListener&&this._parentListener.dispose(),this._token?this._token instanceof A&&this._token.dispose():this._token=L.None}}},"JS/N":function(ft,w,e){"use strict";e.d(w,"a",function(){return S}),e.d(w,"b",function(){return f});var h=e("twdY"),P=e("t9D7"),L=e("09fa"),A=e("QRHv"),I=e("WBhO"),k=function(E,p,n,b){var m=arguments.length,c=m<3?p:b===null?b=Object.getOwnPropertyDescriptor(p,n):b,l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")c=Reflect.decorate(E,p,n,b);else for(var g=E.length-1;g>=0;g--)(l=E[g])&&(c=(m<3?l(c):m>3?l(p,n,c):l(p,n))||c);return m>3&&c&&Object.defineProperty(p,n,c),c},O=function(E,p){return function(n,b){p(n,b,E)}};let S=class{constructor(p,n,b,m){this._legend=p,this._themeService=n,this._modeService=b,this._logService=m,this._hashTable=new d,this._hasWarnedOverlappingTokens=!1}getMetadata(p,n,b){const m=this._modeService.languageIdCodec.encodeLanguageId(b),c=this._hashTable.get(p,n,m);let l;if(c)l=c.metadata,this._logService.getLevel()===L.c.Trace&&this._logService.trace(`SemanticTokensProviderStyling [CACHED] ${p} / ${n}: foreground ${h.E.getForeground(l)}, fontStyle ${h.E.getFontStyle(l).toString(2)}`);else{let g=this._legend.tokenTypes[p];const y=[];if(g){let C=n;for(let D=0;C>0&&D>1;C>0&&this._logService.getLevel()===L.c.Trace&&(this._logService.trace(`SemanticTokensProviderStyling: unknown token modifier index: ${n.toString(2)} for legend: ${JSON.stringify(this._legend.tokenModifiers)}`),y.push("not-in-legend"));const v=this._themeService.getColorTheme().getTokenStyleMetadata(g,y,b);if(typeof v=="undefined")l=2147483647;else{if(l=0,typeof v.italic!="undefined"){const D=(v.italic?1:0)<<11;l|=D|1}if(typeof v.bold!="undefined"){const D=(v.bold?2:0)<<11;l|=D|2}if(typeof v.underline!="undefined"){const D=(v.underline?4:0)<<11;l|=D|4}if(v.foreground){const D=v.foreground<<14;l|=D|8}l===0&&(l=2147483647)}}else this._logService.getLevel()===L.c.Trace&&this._logService.trace(`SemanticTokensProviderStyling: unknown token type index: ${p} for legend: ${JSON.stringify(this._legend.tokenTypes)}`),l=2147483647,g="not-in-legend";this._hashTable.add(p,n,m,l),this._logService.getLevel()===L.c.Trace&&this._logService.trace(`SemanticTokensProviderStyling ${p} (${g}) / ${n} (${y.join(" ")}): foreground ${h.E.getForeground(l)}, fontStyle ${h.E.getFontStyle(l).toString(2)}`)}return l}warnOverlappingSemanticTokens(p,n){this._hasWarnedOverlappingTokens||(this._hasWarnedOverlappingTokens=!0,console.warn(`Overlapping semantic tokens detected at lineNumber ${p}, column ${n}`))}};S=k([O(1,P.b),O(2,I.a),O(3,L.b)],S);function f(E,p,n){const b=E.data,m=E.data.length/5|0,c=Math.max(Math.ceil(m/1024),400),l=[];let g=0,y=1,C=0;for(;gv&&b[5*Q]===0;)Q--;if(Q-1===v){let ee=D;for(;ee+1q&&(p.warnOverlappingSemanticTokens(fe,q+1),z=this._growCount){const m=this._elements;this._currentLengthIndex++,this._currentLength=d._SIZES[this._currentLengthIndex],this._growCount=Math.round(this._currentLengthIndex+1=0&&this.prefixSum.set(O.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}changeValue(A,I){return A=Object(h.a)(A),I=Object(h.a)(I),this.values[A]===I?!1:(this.values[A]=I,A-1=k.length)return!1;let S=k.length-A;return I>=S&&(I=S),I===0?!1:(this.values=new Uint32Array(k.length-I),this.values.set(k.subarray(0,A),0),this.values.set(k.subarray(A+I),A),this.prefixSum=new Uint32Array(this.values.length),A-1=0&&this.prefixSum.set(O.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return this.values.length===0?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(A){return A<0?0:(A=Object(h.a)(A),this._getPrefixSum(A))}_getPrefixSum(A){if(A<=this.prefixSumValidIndex[0])return this.prefixSum[A];let I=this.prefixSumValidIndex[0]+1;I===0&&(this.prefixSum[0]=this.values[0],I++),A>=this.values.length&&(A=this.values.length-1);for(let k=I;k<=A;k++)this.prefixSum[k]=this.prefixSum[k-1]+this.values[k];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],A),this.prefixSum[A]}getIndexOf(A){A=Math.floor(A),this.getTotalSum();let I=0,k=this.values.length-1,O=0,S=0,f=0;for(;I<=k;)if(O=I+(k-I)/2|0,S=this.prefixSum[O],f=S-this.values[O],A=S)I=O+1;else break;return new P(O,A-f)}}},LexI:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"go",extensions:[".go"],aliases:["Go"],loader:function(){return e.e(338).then(e.bind(null,"lHAa"))}})},Lkt1:function(ft,w,e){"use strict";e.r(w),e.d(w,"StandaloneCommandsQuickAccessProvider",function(){return me}),e.d(w,"GotoLineAction",function(){return Oe});var h=e("ic2d"),P=e("Lx4V"),L=e("A9l+"),A=e("Vxe3"),I=e("EJc0"),k=e("6OMU"),O=e("746U"),S=e("3/fG");function f(oe,De){return De&&(oe.stack||oe.stacktrace)?S.a("stackTrace.format","{0}: {1}",d(oe),u(oe.stack)||u(oe.stacktrace)):d(oe)}function u(oe){return Array.isArray(oe)?oe.join(` `):oe}function d(oe){return typeof oe.code=="string"&&typeof oe.errno=="number"&&typeof oe.syscall=="string"?S.a("nodeExceptionMessage","A system error occurred ({0})",oe.message):oe.message||S.a("error.defaultMessage","An unknown error occurred. Please consult the log for more details.")}function E(oe=null,De=!1){if(!oe)return S.a("error.defaultMessage","An unknown error occurred. Please consult the log for more details.");if(Array.isArray(oe)){const Ne=k.e(oe),ve=E(Ne[0],De);return Ne.length>1?S.a("error.moreErrors","{0} ({1} errors in total)",ve,Ne.length):ve}if(O.l(oe))return oe;if(oe.detail){const Ne=oe.detail;if(Ne.error)return f(Ne.error,De);if(Ne.exception)return f(Ne.exception,De)}return oe.stack?f(oe,De):oe.message?oe.message:S.a("error.defaultMessage","An unknown error occurred. Please consult the log for more details.")}var p=e("/cxE"),n=e("fpMC"),b=e("pmY6"),m=e("QDVR"),c=e("S3by"),l=e("nnTU"),g=e("+7oY"),y=e("6vuP"),C=e("Cg/j"),v=e("bexQ"),D=e("X+cX"),j=e("JQT/"),V=function(oe,De,Ne,ve){function re(we){return we instanceof Ne?we:new Ne(function(Ie){Ie(we)})}return new(Ne||(Ne=Promise))(function(we,Ie){function ge(xe){try{ze(ve.next(xe))}catch(Te){Ie(Te)}}function ye(xe){try{ze(ve.throw(xe))}catch(Te){Ie(Te)}}function ze(xe){xe.done?we(xe.value):re(xe.value).then(ge,ye)}ze((ve=ve.apply(oe,De||[])).next())})},G;(function(oe){oe[oe.NO_ACTION=0]="NO_ACTION",oe[oe.CLOSE_PICKER=1]="CLOSE_PICKER",oe[oe.REFRESH_PICKER=2]="REFRESH_PICKER",oe[oe.REMOVE_ITEM=3]="REMOVE_ITEM"})(G||(G={}));function B(oe){const De=oe;return Array.isArray(De.items)}function z(oe){const De=oe;return!!De.picks&&De.additionalPicks instanceof Promise}class Y extends b.a{constructor(oe,De){super();this.prefix=oe,this.options=De}provide(oe,De){var Ne;const ve=new b.b;oe.canAcceptInBackground=!!((Ne=this.options)===null||Ne===void 0?void 0:Ne.canAcceptInBackground),oe.matchOnLabel=oe.matchOnDescription=oe.matchOnDetail=oe.sortByLabel=!1;let re;const we=ve.add(new b.d),Ie=()=>V(this,void 0,void 0,function*(){const ge=we.value=new b.b;re==null||re.dispose(!0),oe.busy=!1,re=new j.b(De);const ye=re.token,ze=oe.value.substr(this.prefix.length).trim(),xe=this._getPicks(ze,ge,ye),Te=(He,st)=>{var nt;let rt,wt;if(B(He)?(rt=He.items,wt=He.active):rt=He,rt.length===0){if(st)return!1;ze.length>0&&((nt=this.options)===null||nt===void 0?void 0:nt.noResultsPick)&&(rt=[this.options.noResultsPick])}return oe.items=rt,wt&&(oe.activeItems=[wt]),!0};if(!(xe===null))if(z(xe)){let He=!1,st=!1;yield Promise.all([(()=>V(this,void 0,void 0,function*(){if(yield Object(D.n)(Y.FAST_PICKS_RACE_DELAY),ye.isCancellationRequested)return;st||(He=Te(xe.picks,!0))}))(),(()=>V(this,void 0,void 0,function*(){oe.busy=!0;try{const nt=yield xe.additionalPicks;if(ye.isCancellationRequested)return;let rt,wt;B(xe.picks)?(rt=xe.picks.items,wt=xe.picks.active):rt=xe.picks;let Pt,no;if(B(nt)?(Pt=nt.items,no=nt.active):Pt=nt,Pt.length>0||!He){let ht;if(!wt&&!no){const lt=oe.activeItems[0];lt&&rt.indexOf(lt)!==-1&&(ht=lt)}Te({items:[...rt,...Pt],active:wt||no||ht})}}finally{ye.isCancellationRequested||(oe.busy=!1),st=!0}}))()])}else if(!(xe instanceof Promise))Te(xe);else{oe.busy=!0;try{const He=yield xe;if(ye.isCancellationRequested)return;Te(He)}finally{ye.isCancellationRequested||(oe.busy=!1)}}});return ve.add(oe.onDidChangeValue(()=>Ie())),Ie(),ve.add(oe.onDidAccept(ge=>{const[ye]=oe.selectedItems;typeof(ye==null?void 0:ye.accept)=="function"&&(ge.inBackground||oe.hide(),ye.accept(oe.keyMods,ge))})),ve.add(oe.onDidTriggerItemButton(({button:ge,item:ye})=>V(this,void 0,void 0,function*(){var ze,xe;if(typeof ye.trigger=="function"){const Te=(xe=(ze=ye.buttons)===null||ze===void 0?void 0:ze.indexOf(ge))!==null&&xe!==void 0?xe:-1;if(Te>=0){const He=ye.trigger(Te,oe.keyMods),st=typeof He=="number"?He:yield He;if(De.isCancellationRequested)return;switch(st){case G.NO_ACTION:break;case G.CLOSE_PICKER:oe.hide();break;case G.REFRESH_PICKER:Ie();break;case G.REMOVE_ITEM:const nt=oe.items.indexOf(ye);if(nt!==-1){const rt=oe.items.slice(),wt=rt.splice(nt,1),Pt=oe.activeItems.filter(ht=>ht!==wt[0]),no=oe.keepScrollPosition;oe.keepScrollPosition=!0,oe.items=rt,Pt&&(oe.activeItems=Pt),oe.keepScrollPosition=no}break}}}}))),ve}}Y.FAST_PICKS_RACE_DELAY=200;var K=e("A+jI"),Q=e("XXUj"),ee=function(oe,De,Ne,ve){var re=arguments.length,we=re<3?De:ve===null?ve=Object.getOwnPropertyDescriptor(De,Ne):ve,Ie;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")we=Reflect.decorate(oe,De,Ne,ve);else for(var ge=oe.length-1;ge>=0;ge--)(Ie=oe[ge])&&(we=(re<3?Ie(we):re>3?Ie(De,Ne,we):Ie(De,Ne))||we);return re>3&&we&&Object.defineProperty(De,Ne,we),we},Se=function(oe,De){return function(Ne,ve){De(Ne,ve,oe)}},fe=function(oe,De,Ne,ve){function re(we){return we instanceof Ne?we:new Ne(function(Ie){Ie(we)})}return new(Ne||(Ne=Promise))(function(we,Ie){function ge(xe){try{ze(ve.next(xe))}catch(Te){Ie(Te)}}function ye(xe){try{ze(ve.throw(xe))}catch(Te){Ie(Te)}}function ze(xe){xe.done?we(xe.value):re(xe.value).then(ge,ye)}ze((ve=ve.apply(oe,De||[])).next())})};let q=class oe extends Y{constructor(De,Ne,ve,re,we,Ie){super(oe.PREFIX,De);this.instantiationService=Ne,this.keybindingService=ve,this.commandService=re,this.telemetryService=we,this.dialogService=Ie,this.commandsHistory=this._register(this.instantiationService.createInstance(te)),this.options=De}_getPicks(De,Ne,ve){return fe(this,void 0,void 0,function*(){const re=yield this.getCommandPicks(Ne,ve);if(ve.isCancellationRequested)return[];const we=[];for(const ze of re){const xe=Object(O.p)(oe.WORD_FILTER(De,ze.label)),Te=ze.commandAlias?Object(O.p)(oe.WORD_FILTER(De,ze.commandAlias)):void 0;xe||Te?(ze.highlights={label:xe,detail:this.options.showAlias?Te:void 0},we.push(ze)):De===ze.commandId&&we.push(ze)}const Ie=new Map;for(const ze of we){const xe=Ie.get(ze.label);xe?(ze.description=ze.commandId,xe.description=xe.commandId):Ie.set(ze.label,ze)}we.sort((ze,xe)=>{const Te=this.commandsHistory.peek(ze.commandId),He=this.commandsHistory.peek(xe.commandId);return Te&&He?Te>He?-1:1:Te?-1:He?1:ze.label.localeCompare(xe.label)});const ge=[];let ye=!1;for(let ze=0;zefe(this,void 0,void 0,function*(){this.commandsHistory.push(xe.commandId),this.telemetryService.publicLog2("workbenchActionExecuted",{id:xe.commandId,from:"quick open"});try{yield this.commandService.executeCommand(xe.commandId)}catch(st){Object(p.e)(st)||this.dialogService.show(c.a.Error,Object(S.a)("canNotRun","Command '{0}' resulted in an error ({1})",xe.label,E(st)))}})}))}return ge})}};q.PREFIX=">",q.WORD_FILTER=Object(n.j)(n.h,n.i,n.f),q=ee([Se(1,C.a),Se(2,v.a),Se(3,l.b),Se(4,Q.a),Se(5,y.a)],q);let te=class oe extends b.a{constructor(De,Ne){super();this.storageService=De,this.configurationService=Ne,this.configuredCommandsHistoryLength=0,this.updateConfiguration(),this.load(),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(()=>this.updateConfiguration()))}updateConfiguration(){this.configuredCommandsHistoryLength=oe.getConfiguredCommandHistoryLength(this.configurationService),oe.cache&&oe.cache.limit!==this.configuredCommandsHistoryLength&&(oe.cache.limit=this.configuredCommandsHistoryLength,oe.saveState(this.storageService))}load(){const De=this.storageService.get(oe.PREF_KEY_CACHE,0);let Ne;if(De)try{Ne=JSON.parse(De)}catch(re){}const ve=oe.cache=new m.a(this.configuredCommandsHistoryLength,1);if(Ne){let re;Ne.usesLRU?re=Ne.entries:re=Ne.entries.sort((we,Ie)=>we.value-Ie.value),re.forEach(we=>ve.set(we.key,we.value))}oe.counter=this.storageService.getNumber(oe.PREF_KEY_COUNTER,0,oe.counter)}push(De){if(!oe.cache)return;oe.cache.set(De,oe.counter++),oe.saveState(this.storageService)}peek(De){var Ne;return(Ne=oe.cache)===null||Ne===void 0?void 0:Ne.peek(De)}static saveState(De){if(!oe.cache)return;const Ne={usesLRU:!0,entries:[]};oe.cache.forEach((ve,re)=>Ne.entries.push({key:re,value:ve})),De.store(oe.PREF_KEY_CACHE,JSON.stringify(Ne),0,0),De.store(oe.PREF_KEY_COUNTER,oe.counter,0,0)}static getConfiguredCommandHistoryLength(De){var Ne,ve;const re=De.getValue(),we=(ve=(Ne=re.workbench)===null||Ne===void 0?void 0:Ne.commandPalette)===null||ve===void 0?void 0:ve.history;return typeof we=="number"?we:oe.DEFAULT_COMMANDS_HISTORY_LENGTH}};te.DEFAULT_COMMANDS_HISTORY_LENGTH=50,te.PREF_KEY_CACHE="commandPalette.mru.cache",te.PREF_KEY_COUNTER="commandPalette.mru.counter",te.counter=1,te=ee([Se(0,K.a),Se(1,g.a)],te);class U extends q{constructor(oe,De,Ne,ve,re,we){super(oe,De,Ne,ve,re,we)}getCodeEditorCommandPicks(){const oe=this.activeTextEditorControl;if(!oe)return[];const De=[];for(const Ne of oe.getSupportedActions())De.push({commandId:Ne.id,commandAlias:Ne.alias,label:Object(I.e)(Ne.label)||Ne.id});return De}}var H=e("sswD"),W=e("wQH0"),ne=e("Zr1c"),Ce=function(oe,De,Ne,ve){var re=arguments.length,we=re<3?De:ve===null?ve=Object.getOwnPropertyDescriptor(De,Ne):ve,Ie;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")we=Reflect.decorate(oe,De,Ne,ve);else for(var ge=oe.length-1;ge>=0;ge--)(Ie=oe[ge])&&(we=(re<3?Ie(we):re>3?Ie(De,Ne,we):Ie(De,Ne))||we);return re>3&&we&&Object.defineProperty(De,Ne,we),we},Le=function(oe,De){return function(Ne,ve){De(Ne,ve,oe)}},ce=function(oe,De,Ne,ve){function re(we){return we instanceof Ne?we:new Ne(function(Ie){Ie(we)})}return new(Ne||(Ne=Promise))(function(we,Ie){function ge(xe){try{ze(ve.next(xe))}catch(Te){Ie(Te)}}function ye(xe){try{ze(ve.throw(xe))}catch(Te){Ie(Te)}}function ze(xe){xe.done?we(xe.value):re(xe.value).then(ge,ye)}ze((ve=ve.apply(oe,De||[])).next())})};let me=class extends U{constructor(De,Ne,ve,re,we,Ie){super({showAlias:!1},De,ve,re,we,Ie);this.codeEditorService=Ne}get activeTextEditorControl(){return Object(O.p)(this.codeEditorService.getFocusedCodeEditor())}getCommandPicks(){return ce(this,void 0,void 0,function*(){return this.getCodeEditorCommandPicks()})}};me=Ce([Le(0,C.a),Le(1,A.a),Le(2,v.a),Le(3,l.b),Le(4,Q.a),Le(5,y.a)],me),h.a.as(P.b.Quickaccess).registerQuickAccessProvider({ctor:me,prefix:me.PREFIX,helpEntries:[{description:L.d.quickCommandHelp,needsEditor:!0}]});class Oe extends H.b{constructor(){super({id:"editor.action.quickCommand",label:L.d.quickCommandActionLabel,alias:"Command Palette",precondition:void 0,kbOpts:{kbExpr:W.a.focus,primary:59,weight:100},contextMenuOpts:{group:"z_commands",order:1}})}run(oe){oe.get(ne.a).quickAccess.show(me.PREFIX)}}Object(H.j)(Oe)},Ll0s:function(ft,w,e){"use strict";e.d(w,"b",function(){return d}),e.d(w,"f",function(){return E}),e.d(w,"c",function(){return p}),e.d(w,"d",function(){return m}),e.d(w,"e",function(){return c}),e.d(w,"g",function(){return l});var h=e("/cxE"),P=e("cGHE"),L=e("aokT"),A=e("gCVg"),I=e("tX9W"),k=e("cMvZ"),O=e("Apug");e.d(w,"a",function(){return O.a});const S=()=>!0,f=()=>!1,u=g=>g===" "||g===" ";class d{constructor(g,y,C){this._cursorMoveConfigurationBrand=void 0,this._languageId=g;const v=C.options,D=v.get(129);this.readOnly=v.get(80),this.tabSize=y.tabSize,this.indentSize=y.indentSize,this.insertSpaces=y.insertSpaces,this.stickyTabStops=v.get(103),this.lineHeight=v.get(58),this.pageSize=Math.max(1,Math.floor(D.height/this.lineHeight)-2),this.useTabStops=v.get(114),this.wordSeparators=v.get(115),this.emptySelectionClipboard=v.get(32),this.copyWithSyntaxHighlighting=v.get(21),this.multiCursorMergeOverlapping=v.get(68),this.multiCursorPaste=v.get(70),this.autoClosingBrackets=v.get(5),this.autoClosingQuotes=v.get(8),this.autoClosingDelete=v.get(6),this.autoClosingOvertype=v.get(7),this.autoSurround=v.get(11),this.autoIndent=v.get(9),this.surroundingPairs={},this._electricChars=null,this.shouldAutoCloseBefore={quote:d._getShouldAutoClose(g,this.autoClosingQuotes),bracket:d._getShouldAutoClose(g,this.autoClosingBrackets)},this.autoClosingPairs=k.b.getAutoClosingPairs(g);let j=d._getSurroundingPairs(g);if(j)for(const V of j)this.surroundingPairs[V.open]=V.close}static shouldRecreate(g){return g.hasChanged(129)||g.hasChanged(115)||g.hasChanged(32)||g.hasChanged(68)||g.hasChanged(70)||g.hasChanged(5)||g.hasChanged(8)||g.hasChanged(6)||g.hasChanged(7)||g.hasChanged(11)||g.hasChanged(114)||g.hasChanged(58)||g.hasChanged(80)}get electricChars(){if(!this._electricChars){this._electricChars={};let g=d._getElectricCharacters(this._languageId);if(g)for(const y of g)this._electricChars[y]=!0}return this._electricChars}normalizeIndentation(g){return I.c.normalizeIndentation(g,this.indentSize,this.insertSpaces)}static _getElectricCharacters(g){try{return k.b.getElectricCharacters(g)}catch(y){return Object(h.f)(y),null}}static _getShouldAutoClose(g,y){switch(y){case"beforeWhitespace":return u;case"languageDefined":return d._getLanguageDefinedShouldAutoClose(g);case"always":return S;case"never":return f}}static _getLanguageDefinedShouldAutoClose(g){try{const y=k.b.getAutoCloseBeforeSet(g);return C=>y.indexOf(C)!==-1}catch(y){return Object(h.f)(y),f}}static _getSurroundingPairs(g){try{return k.b.getSurroundingPairs(g)}catch(y){return Object(h.f)(y),null}}}class E{constructor(g,y,C,v){this._singleCursorStateBrand=void 0,this.selectionStart=g,this.selectionStartLeftoverVisibleColumns=y,this.position=C,this.leftoverVisibleColumns=v,this.selection=E._computeSelection(this.selectionStart,this.position)}equals(g){return this.selectionStartLeftoverVisibleColumns===g.selectionStartLeftoverVisibleColumns&&this.leftoverVisibleColumns===g.leftoverVisibleColumns&&this.position.equals(g.position)&&this.selectionStart.equalsRange(g.selectionStart)}hasSelection(){return!this.selection.isEmpty()||!this.selectionStart.isEmpty()}move(g,y,C,v){return g?new E(this.selectionStart,this.selectionStartLeftoverVisibleColumns,new P.a(y,C),v):new E(new L.a(y,C,y,C),v,new P.a(y,C),v)}static _computeSelection(g,y){let C,v,D,j;return g.isEmpty()?(C=g.startLineNumber,v=g.startColumn,D=y.lineNumber,j=y.column):y.isBeforeOrEqual(g.getStartPosition())?(C=g.endLineNumber,v=g.endColumn,D=y.lineNumber,j=y.column):(C=g.startLineNumber,v=g.startColumn,D=y.lineNumber,j=y.column),new A.a(C,v,D,j)}}class p{constructor(g,y,C,v){this._cursorContextBrand=void 0,this.model=g,this.viewModel=y,this.coordinatesConverter=C,this.cursorConfig=v}}class n{constructor(g){this.modelState=g,this.viewState=null}}class b{constructor(g){this.modelState=null,this.viewState=g}}class m{constructor(g,y){this._cursorStateBrand=void 0,this.modelState=g,this.viewState=y}static fromModelState(g){return new n(g)}static fromViewState(g){return new b(g)}static fromModelSelection(g){const y=g.selectionStartLineNumber,C=g.selectionStartColumn,v=g.positionLineNumber,D=g.positionColumn,j=new E(new L.a(y,C,y,C),0,new P.a(v,D),0);return m.fromModelState(j)}static fromModelSelections(g){let y=[];for(let C=0,v=g.length;C({range:{startLineNumber:1,endLineNumber:1,startColumn:ae.column,endColumn:ae.column},text:ae.lines.join(` `)})));return ue.substring(this.parts[0].column-1)}}class c{constructor(We){this.lineStartOffsetByLineIdx=[],this.lineStartOffsetByLineIdx.push(0);for(let he=0;he{const Re=b.a.lift(ae.range);return{startOffset:Me.getOffset(Re.getStartPosition()),endOffset:Me.getOffset(Re.getEndPosition()),text:ae.text}});ue.sort((ae,Re)=>Re.startOffset-ae.startOffset);for(const ae of ue)We=We.substring(0,ae.startOffset)+ae.text+We.substring(ae.endOffset);return We}class g{constructor(We,he,Me){this.column=We,this.lines=he,this.preview=Me}}class y extends h.a{constructor(We){super();this.editor=We,this._expanded=void 0,this.onDidChangeEmitter=new O.b,this.onDidChange=this.onDidChangeEmitter.event,this._register(We.onDidChangeConfiguration(he=>{he.hasChanged(105)&&this._expanded===void 0&&this.onDidChangeEmitter.fire()}))}setExpanded(We){this._expanded=!0,this.onDidChangeEmitter.fire()}}var C=e("nnTU"),v=e("Gw4z");function D(We,he){return We===he?!0:!We||!he?!1:We.range.equalsRange(he.range)&&We.text===he.text&&We.command===he.command}function j(We,he,Me,ue,ae=0){if(We.range.startLineNumber!==We.range.endLineNumber)return;const Re=he.getLineContent(We.range.startLineNumber),Qe=P.x(Re).length,et=We.range.startColumn-1<=Qe;if(et){const Ut=P.x(We.text).length,fo=Re.substring(We.range.startColumn-1,Qe),vo=b.a.fromPositions(We.range.getStartPosition().delta(0,fo.length),We.range.getEndPosition()),po=We.text.startsWith(fo)?We.text.substring(fo.length):We.text.substring(Ut);We={range:vo,text:po,command:We.command}}const bt=he.getValueInRange(We.range),Lt=G(bt,We.text);if(!Lt)return;const Ot=We.range.startLineNumber,Ft=new Array;if(Me==="prefix"){const Ut=Lt.filter(fo=>fo.originalLength===0);if(Ut.length>1||Ut.length===1&&Ut[0].originalStart!==bt.length)return}const Tt=We.text.length-ae;for(const Ut of Lt){const fo=We.range.startColumn+Ut.originalStart+Ut.originalLength;if(Me==="subwordSmart"&&ue&&ue.lineNumber===We.range.startLineNumber&&fo0)return;if(Ut.modifiedLength===0)continue;const vo=Ut.modifiedStart+Ut.modifiedLength,po=Math.max(Ut.modifiedStart,Math.min(vo,Tt)),Oo=We.text.substring(Ut.modifiedStart,po),Uo=We.text.substring(po,Math.max(Ut.modifiedStart,vo));if(Oo.length>0){const Zo=P.Q(Oo);Ft.push(new g(fo,Zo,!1))}if(Uo.length>0){const Zo=P.Q(Uo);Ft.push(new g(fo,Zo,!0))}}return new m(Ot,Ft,0)}let V;function G(We,he){if((V==null?void 0:V.originalValue)===We&&(V==null?void 0:V.newValue)===he)return V==null?void 0:V.changes;{const Me=B(We,he);return V={originalValue:We,newValue:he,changes:Me},Me}}function B(We,he){if(We.length>5e3||he.length>5e3)return;function Me(bt){let Lt=0;for(let Ot=0,Ft=bt.length;OtLt&&(Lt=Tt)}return Lt}const ue=Math.max(Me(We),Me(he));function ae(bt){if(bt<0)throw new Error("unexpected");return ue+bt+1}function Re(bt){let Lt=0,Ot=0;const Ft=new Int32Array(bt.length);for(let Tt=0,Ut=bt.length;TtQe},{getElements:()=>et}).ComputeDiff(!1).changes}var z=function(We,he,Me,ue){var ae=arguments.length,Re=ae<3?he:ue===null?ue=Object.getOwnPropertyDescriptor(he,Me):ue,Qe;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Re=Reflect.decorate(We,he,Me,ue);else for(var et=We.length-1;et>=0;et--)(Qe=We[et])&&(Re=(ae<3?Qe(Re):ae>3?Qe(he,Me,Re):Qe(he,Me))||Re);return ae>3&&Re&&Object.defineProperty(he,Me,Re),Re},Y=function(We,he){return function(Me,ue){he(Me,ue,We)}},K=function(We,he,Me,ue){function ae(Re){return Re instanceof Me?Re:new Me(function(Qe){Qe(Re)})}return new(Me||(Me=Promise))(function(Re,Qe){function et(Ot){try{Lt(ue.next(Ot))}catch(Ft){Qe(Ft)}}function bt(Ot){try{Lt(ue.throw(Ot))}catch(Ft){Qe(Ft)}}function Lt(Ot){Ot.done?Re(Ot.value):ae(Ot.value).then(et,bt)}Lt((ue=ue.apply(We,he||[])).next())})};let Q=class extends h.a{constructor(he,Me,ue){super();this.editor=he,this.cache=Me,this.commandService=ue,this.onDidChangeEmitter=new O.b,this.onDidChange=this.onDidChangeEmitter.event,this.completionSession=this._register(new h.d),this.active=!1,this.disposed=!1,this._register(ue.onDidExecuteCommand(ae=>{const Re=new Set([L.i.id,L.g.id,p.CoreEditingCommands.Tab.id,p.CoreEditingCommands.DeleteLeft.id,p.CoreEditingCommands.DeleteRight.id,k,"acceptSelectedSuggestion"]);Re.has(ae.commandId)&&he.hasTextFocus()&&this.handleUserInput()})),this._register(this.editor.onDidType(ae=>{this.handleUserInput()})),this._register(this.editor.onDidChangeCursorPosition(ae=>{this.session&&!this.session.isValid&&this.hide()})),this._register(Object(h.i)(()=>{this.disposed=!0})),this._register(this.editor.onDidBlurEditorWidget(()=>{this.hide()}))}handleUserInput(){this.session&&!this.session.isValid&&this.hide(),setTimeout(()=>{if(this.disposed)return;this.startSessionIfTriggered()},0)}get session(){return this.completionSession.value}get ghostText(){var he;return(he=this.session)===null||he===void 0?void 0:he.ghostText}get minReservedLineCount(){return this.session?this.session.minReservedLineCount:0}setExpanded(he){var Me;(Me=this.session)===null||Me===void 0||Me.setExpanded(he)}setActive(he){var Me;this.active=he,he&&((Me=this.session)===null||Me===void 0||Me.scheduleAutomaticUpdate())}startSessionIfTriggered(){const he=this.editor.getOption(54);if(!he.enabled)return;if(this.session&&this.session.isValid)return;this.trigger(f.t.Automatic)}trigger(he){if(this.completionSession.value){he===f.t.Explicit&&void this.completionSession.value.ensureUpdateWithExplicitContext();return}this.completionSession.value=new ee(this.editor,this.editor.getPosition(),()=>this.active,this.commandService,this.cache,he),this.completionSession.value.takeOwnership(this.completionSession.value.onDidChange(()=>{this.onDidChangeEmitter.fire()}))}hide(){this.completionSession.clear(),this.onDidChangeEmitter.fire()}commitCurrentSuggestion(){var he;(he=this.session)===null||he===void 0||he.commitCurrentCompletion()}showNext(){var he;(he=this.session)===null||he===void 0||he.showNextInlineCompletion()}showPrevious(){var he;(he=this.session)===null||he===void 0||he.showPreviousInlineCompletion()}hasMultipleInlineCompletions(){var he;return K(this,void 0,void 0,function*(){const Me=yield(he=this.session)===null||he===void 0?void 0:he.hasMultipleInlineCompletions();return Me!==void 0?Me:!1})}};Q=z([Y(2,C.b)],Q);class ee extends y{constructor(We,he,Me,ue,ae,Re){super(We);this.triggerPosition=he,this.shouldUpdate=Me,this.commandService=ue,this.cache=ae,this.initialTriggerKind=Re,this.minReservedLineCount=0,this.updateOperation=this._register(new h.d),this.updateSoon=this._register(new u.e(()=>{let et=this.initialTriggerKind;return this.initialTriggerKind=f.t.Automatic,this.update(et)},50)),this.currentlySelectedCompletionId=void 0;let Qe;this._register(this.onDidChange(()=>{const et=this.currentCompletion;if(et&&et.sourceInlineCompletion!==Qe){Qe=et.sourceInlineCompletion;const bt=et.sourceProvider;bt.handleItemDidShow&&bt.handleItemDidShow(et.sourceInlineCompletions,Qe)}})),this._register(Object(h.i)(()=>{this.cache.clear()})),this._register(this.editor.onDidChangeCursorPosition(et=>{this.cache.value&&this.onDidChangeEmitter.fire()})),this._register(this.editor.onDidChangeModelContent(et=>{this.scheduleAutomaticUpdate()})),this._register(f.u.onDidChange(()=>{this.updateSoon.schedule()})),this.scheduleAutomaticUpdate()}fixAndGetIndexOfCurrentSelection(){if(!this.currentlySelectedCompletionId||!this.cache.value)return 0;if(this.cache.value.completions.length===0)return 0;const We=this.cache.value.completions.findIndex(he=>he.semanticId===this.currentlySelectedCompletionId);return We===-1?(this.currentlySelectedCompletionId=void 0,0):We}get currentCachedCompletion(){return this.cache.value?this.cache.value.completions[this.fixAndGetIndexOfCurrentSelection()]:void 0}showNextInlineCompletion(){var We;return K(this,void 0,void 0,function*(){yield this.ensureUpdateWithExplicitContext();const he=((We=this.cache.value)===null||We===void 0?void 0:We.completions)||[];if(he.length>0){const Me=(this.fixAndGetIndexOfCurrentSelection()+1)%he.length;this.currentlySelectedCompletionId=he[Me].semanticId}else this.currentlySelectedCompletionId=void 0;this.onDidChangeEmitter.fire()})}showPreviousInlineCompletion(){var We;return K(this,void 0,void 0,function*(){yield this.ensureUpdateWithExplicitContext();const he=((We=this.cache.value)===null||We===void 0?void 0:We.completions)||[];if(he.length>0){const Me=(this.fixAndGetIndexOfCurrentSelection()+he.length-1)%he.length;this.currentlySelectedCompletionId=he[Me].semanticId}else this.currentlySelectedCompletionId=void 0;this.onDidChangeEmitter.fire()})}ensureUpdateWithExplicitContext(){var We;return K(this,void 0,void 0,function*(){this.updateOperation.value?this.updateOperation.value.triggerKind===f.t.Explicit?yield this.updateOperation.value.promise:yield this.update(f.t.Explicit):((We=this.cache.value)===null||We===void 0?void 0:We.triggerKind)!==f.t.Explicit&&(yield this.update(f.t.Explicit))})}hasMultipleInlineCompletions(){var We;return K(this,void 0,void 0,function*(){return yield this.ensureUpdateWithExplicitContext(),(((We=this.cache.value)===null||We===void 0?void 0:We.completions.length)||0)>1})}get ghostText(){const We=this.currentCompletion,he=this.editor.getOptions().get(54).mode;return We?j(We,this.editor.getModel(),he,this.editor.getPosition()):void 0}get currentCompletion(){const We=this.currentCachedCompletion;return We?We.toLiveInlineCompletion():void 0}get isValid(){return this.editor.getPosition().lineNumber===this.triggerPosition.lineNumber}scheduleAutomaticUpdate(){this.updateOperation.clear(),this.updateSoon.schedule()}update(We){return K(this,void 0,void 0,function*(){if(!this.shouldUpdate())return;const he=this.editor.getPosition(),Me=Object(u.h)(ae=>K(this,void 0,void 0,function*(){let Re;try{Re=yield U(he,this.editor.getModel(),{triggerKind:We,selectedSuggestionInfo:void 0},ae)}catch(Qe){Object(E.f)(Qe);return}if(ae.isCancellationRequested)return;this.cache.setValue(this.editor,Re,We),this.onDidChangeEmitter.fire()})),ue=new Se(Me,We);this.updateOperation.value=ue,yield Me,this.updateOperation.value===ue&&this.updateOperation.clear()})}takeOwnership(We){this._register(We)}commitCurrentCompletion(){if(!this.ghostText)return;const We=this.currentCompletion;We&&this.commit(We)}commit(We){const he=this.cache.clearAndLeak();this.editor.executeEdits("inlineSuggestion.accept",[n.a.replaceMove(We.range,We.text)]),We.command?this.commandService.executeCommand(We.command.id,...We.command.arguments||[]).finally(()=>{he==null||he.dispose()}).then(void 0,E.g):he==null||he.dispose(),this.onDidChangeEmitter.fire()}}class Se{constructor(We,he){this.promise=We,this.triggerKind=he}dispose(){this.promise.cancel()}}class fe extends h.a{constructor(We,he,Me,ue){super();this.triggerKind=ue;const ae=We.deltaDecorations([],he.items.map(Re=>({range:Re.range,options:{description:"inline-completion-tracking-range"}})));this._register(Object(h.i)(()=>{We.deltaDecorations(ae,[])})),this.completions=he.items.map((Re,Qe)=>new q(Re,ae[Qe])),this._register(We.onDidChangeModelContent(()=>{let Re=!1;const Qe=We.getModel();for(const et of this.completions){const bt=Qe.getDecorationRange(et.decorationId);if(!bt){Object(E.f)(new Error("Decoration has no range"));continue}et.synchronizedRange.equalsRange(bt)||(Re=!0,et.synchronizedRange=bt)}Re&&Me()})),this._register(he)}}class q{constructor(We,he){this.inlineCompletion=We,this.decorationId=he,this.semanticId=JSON.stringify({text:this.inlineCompletion.text,startLine:this.inlineCompletion.range.startLineNumber,startColumn:this.inlineCompletion.range.startColumn,command:this.inlineCompletion.command}),this.synchronizedRange=We.range}toLiveInlineCompletion(){return{text:this.inlineCompletion.text,range:this.synchronizedRange,command:this.inlineCompletion.command,sourceProvider:this.inlineCompletion.sourceProvider,sourceInlineCompletions:this.inlineCompletion.sourceInlineCompletions,sourceInlineCompletion:this.inlineCompletion.sourceInlineCompletion}}}function te(We,he){const Me=he.getWordAtPosition(We),ue=he.getLineMaxColumn(We.lineNumber);return Me?new b.a(We.lineNumber,Me.startColumn,We.lineNumber,ue):b.a.fromPositions(We,We.with(void 0,ue))}function U(We,he,Me,ue=d.a.None){return K(this,void 0,void 0,function*(){const ae=te(We,he),Re=f.u.all(he),Qe=yield Promise.all(Re.map(bt=>K(this,void 0,void 0,function*(){const Lt=yield bt.provideInlineCompletions(he,We,Me,ue);return{completions:Lt,provider:bt,dispose:()=>{Lt&&bt.freeInlineCompletions(Lt)}}}))),et=new Map;for(const bt of Qe){const Lt=bt.completions;if(Lt)for(const Ot of Lt.items.map(Ft=>({text:Ft.text,range:Ft.range?b.a.lift(Ft.range):ae,command:Ft.command,sourceProvider:bt.provider,sourceInlineCompletions:Lt,sourceInlineCompletion:Ft}))){if(Ot.range.startLineNumber!==Ot.range.endLineNumber)continue;et.set(JSON.stringify({text:Ot.text,range:Ot.range}),Ot)}}return{items:[...et.values()],dispose:()=>{for(const bt of Qe)bt.dispose()}}})}function H(We,he){if(!he)return he;const Me=We.getValueInRange(he.range),ue=Object(P.d)(Me,he.text),ae=We.getOffsetAt(he.range.getStartPosition())+ue,Re=We.getPositionAt(ae),Qe=Me.substr(ue),et=Object(P.e)(Qe,he.text),bt=We.getPositionAt(Math.max(ae,We.getOffsetAt(he.range.getEndPosition())-et));return{range:b.a.fromPositions(Re,bt),text:he.text.substr(ue,he.text.length-ue-et)}}var W=e("uACm"),ne=e("WaSP"),Ce=e("ep4t");function Le(We,he){return{object:We,dispose:()=>he==null?void 0:he.dispose()}}function ce(We,he){return(Me,ue)=>he(We(Me),We(ue))}function me(){return(We,he)=>We-he}function Oe(We,he){let Me;for(const ue of We)(Me===void 0||he(ue,Me)>0)&&(Me=ue);return Me}class oe extends h.a{constructor(We,he){super();this.editor=We,this.suggestControllerPreselector=he,this.isSuggestWidgetVisible=!1,this.isShiftKeyPressed=!1,this._isActive=!1,this._currentInlineCompletion=void 0,this.onDidChangeEmitter=new O.b,this.onDidChange=this.onDidChangeEmitter.event,this.setInactiveDelayed=this._register(new u.e(()=>{this.isSuggestWidgetVisible||this._isActive&&(this._isActive=!1,this.onDidChangeEmitter.fire())},100)),this._register(We.onKeyDown(ue=>{ue.shiftKey&&!this.isShiftKeyPressed&&(this.isShiftKeyPressed=!0,this.update(this._isActive))})),this._register(We.onKeyUp(ue=>{ue.shiftKey&&this.isShiftKeyPressed&&(this.isShiftKeyPressed=!1,this.update(this._isActive))}));const Me=Ce.SuggestController.get(this.editor);if(Me){this._register(Me.registerSelector({priority:100,select:(Re,Qe,et)=>{const bt=this.editor.getModel(),Lt=H(bt,this.suggestControllerPreselector());if(!Lt)return-1;const Ot=S.a.lift(Qe),Ft=et.map((Ut,fo)=>{const vo=Ne(Me,Ot,Ut,this.isShiftKeyPressed),po=H(bt,vo);if(!po)return;const Oo=De(Lt.range,po.range)&&Lt.text.startsWith(po.text);return{index:fo,valid:Oo,prefixLength:po.text.length,suggestItem:Ut}}).filter(Ut=>Ut&&Ut.valid),Tt=Oe(Ft,ce(Ut=>Ut.prefixLength,me()));return Tt?Tt.index:-1}}));let ue=!1;const ae=()=>{if(ue)return;ue=!0,this._register(Me.widget.value.onDidShow(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)})),this._register(Me.widget.value.onDidHide(()=>{this.isSuggestWidgetVisible=!1,this.setInactiveDelayed.schedule(),this.update(this._isActive)})),this._register(Me.widget.value.onDidFocus(()=>{this.isSuggestWidgetVisible=!0,this.update(!0)}))};this._register(O.c.once(Me.model.onDidTrigger)(Re=>{ae()}))}this.update(this._isActive)}get state(){return this._isActive?{selectedItemAsInlineCompletion:this._currentInlineCompletion}:void 0}update(We){const he=this.getInlineCompletion();let Me=!1;D(this._currentInlineCompletion,he)||(this._currentInlineCompletion=he,Me=!0),this._isActive!==We&&(this._isActive=We,Me=!0),Me&&this.onDidChangeEmitter.fire()}getInlineCompletion(){const We=Ce.SuggestController.get(this.editor);if(!We)return;if(!this.isSuggestWidgetVisible)return;const he=We.widget.value.getFocusedItem();return he?Ne(We,this.editor.getPosition(),he.item,this.isShiftKeyPressed):void 0}stopForceRenderingAbove(){const We=Ce.SuggestController.get(this.editor);We&&We.stopForceRenderingAbove()}forceRenderingAbove(){const We=Ce.SuggestController.get(this.editor);We&&We.forceRenderingAbove()}}function De(We,he){return We.startLineNumber===he.startLineNumber&&We.startColumn===he.startColumn&&(We.endLineNumber0)return{text:"",range:b.a.fromPositions(he,he)};let{insertText:ae}=Me.completion;if(Me.completion.insertTextRules&4){const Qe=new W.c().parse(ae),et=We.editor.getModel();if(Qe.children.length>100)return;ne.a.adjustWhitespace(et,he,Qe,!0,!0),ae=Qe.toString()}const Re=We.getOverwriteInfo(Me,ue);return{text:ae,range:b.a.fromPositions(he.delta(0,-Re.overwriteBefore),he.delta(0,Math.max(Re.overwriteAfter,0)))}}var ve=function(We,he,Me,ue){function ae(Re){return Re instanceof Me?Re:new Me(function(Qe){Qe(Re)})}return new(Me||(Me=Promise))(function(Re,Qe){function et(Ot){try{Lt(ue.next(Ot))}catch(Ft){Qe(Ft)}}function bt(Ot){try{Lt(ue.throw(Ot))}catch(Ft){Qe(Ft)}}function Lt(Ot){Ot.done?Re(Ot.value):ae(Ot.value).then(et,bt)}Lt((ue=ue.apply(We,he||[])).next())})};class re extends y{constructor(We,he){super(We);this.cache=he,this.suggestionInlineCompletionSource=this._register(new oe(this.editor,()=>{var Me,ue;return(ue=(Me=this.cache.value)===null||Me===void 0?void 0:Me.completions[0])===null||ue===void 0?void 0:ue.toLiveInlineCompletion()})),this.updateOperation=this._register(new h.d),this.updateCacheSoon=this._register(new u.e(()=>this.updateCache(),50)),this.minReservedLineCount=0,this._register(this.suggestionInlineCompletionSource.onDidChange(()=>{this.updateCacheSoon.schedule();const Me=this.suggestionInlineCompletionSource.state;Me||(this.minReservedLineCount=0);const ue=this.ghostText;ue&&(this.minReservedLineCount=Math.max(this.minReservedLineCount,we(ue.parts.map(ae=>ae.lines.length-1)))),this.minReservedLineCount>=1&&this.isSuggestionPreviewEnabled()?this.suggestionInlineCompletionSource.forceRenderingAbove():this.suggestionInlineCompletionSource.stopForceRenderingAbove(),this.onDidChangeEmitter.fire()})),this._register(this.cache.onDidChange(()=>{this.onDidChangeEmitter.fire()})),this._register(this.editor.onDidChangeCursorPosition(Me=>{this.isSuggestionPreviewEnabled()&&(this.minReservedLineCount=0,this.updateCacheSoon.schedule(),this.onDidChangeEmitter.fire())})),this._register(Object(h.i)(()=>this.suggestionInlineCompletionSource.stopForceRenderingAbove()))}get isActive(){return this.suggestionInlineCompletionSource.state!==void 0}isSuggestionPreviewEnabled(){const We=this.editor.getOption(105);return We.preview}updateCache(){return ve(this,void 0,void 0,function*(){const We=this.suggestionInlineCompletionSource.state;if(!We||!We.selectedItemAsInlineCompletion)return;const he={text:We.selectedItemAsInlineCompletion.text,range:We.selectedItemAsInlineCompletion.range},Me=this.editor.getPosition(),ue=Object(u.h)(Re=>ve(this,void 0,void 0,function*(){let Qe;try{Qe=yield U(Me,this.editor.getModel(),{triggerKind:f.t.Automatic,selectedSuggestionInfo:he},Re)}catch(et){Object(E.f)(et);return}if(Re.isCancellationRequested)return;this.cache.setValue(this.editor,Qe,f.t.Automatic),this.onDidChangeEmitter.fire()})),ae=new Se(ue,f.t.Automatic);this.updateOperation.value=ae,yield ue,this.updateOperation.value===ae&&this.updateOperation.clear()})}get ghostText(){var We,he;if(!this.isSuggestionPreviewEnabled())return;const Me=this.suggestionInlineCompletionSource.state,ue=H(this.editor.getModel(),Me==null?void 0:Me.selectedItemAsInlineCompletion),ae=H(this.editor.getModel(),(he=(We=this.cache.value)===null||We===void 0?void 0:We.completions[0])===null||he===void 0?void 0:he.toLiveInlineCompletion()),Re=ae&&ue&&ae.text.startsWith(ue.text)&&ae.range.equalsRange(ue.range)?ae:ue||ae,Qe=ue?((Re==null?void 0:Re.text.length)||0)-ue.text.length:0,et=Lt=>{const Ot=this.editor.getOptions().get(105).previewMode;return Lt?j(Lt,this.editor.getModel(),Ot,this.editor.getPosition(),Qe)||new m(Lt.range.endLineNumber,[],this.minReservedLineCount):void 0},bt=et(Re);return bt}}function we(We){return We.reduce((he,Me)=>he+Me,0)}var Ie=function(We,he,Me,ue){var ae=arguments.length,Re=ae<3?he:ue===null?ue=Object.getOwnPropertyDescriptor(he,Me):ue,Qe;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Re=Reflect.decorate(We,he,Me,ue);else for(var et=We.length-1;et>=0;et--)(Qe=We[et])&&(Re=(ae<3?Qe(Re):ae>3?Qe(he,Me,Re):Qe(he,Me))||Re);return ae>3&&Re&&Object.defineProperty(he,Me,Re),Re},ge=function(We,he){return function(Me,ue){he(Me,ue,We)}},ye=function(We,he,Me,ue){function ae(Re){return Re instanceof Me?Re:new Me(function(Qe){Qe(Re)})}return new(Me||(Me=Promise))(function(Re,Qe){function et(Ot){try{Lt(ue.next(Ot))}catch(Ft){Qe(Ft)}}function bt(Ot){try{Lt(ue.throw(Ot))}catch(Ft){Qe(Ft)}}function Lt(Ot){Ot.done?Re(Ot.value):ae(Ot.value).then(et,bt)}Lt((ue=ue.apply(We,he||[])).next())})};class ze extends h.a{constructor(){super(...arguments);this.onDidChangeEmitter=new O.b,this.onDidChange=this.onDidChangeEmitter.event,this.hasCachedGhostText=!1,this.currentModelRef=this._register(new h.d)}get targetModel(){var We;return(We=this.currentModelRef.value)===null||We===void 0?void 0:We.object}setTargetModel(We){var he;if(((he=this.currentModelRef.value)===null||he===void 0?void 0:he.object)===We)return;this.currentModelRef.clear(),this.currentModelRef.value=We?Le(We,We.onDidChange(()=>{this.hasCachedGhostText=!1,this.onDidChangeEmitter.fire()})):void 0,this.hasCachedGhostText=!1,this.onDidChangeEmitter.fire()}get ghostText(){var We,he;return this.hasCachedGhostText||(this.cachedGhostText=(he=(We=this.currentModelRef.value)===null||We===void 0?void 0:We.object)===null||he===void 0?void 0:he.ghostText,this.hasCachedGhostText=!0),this.cachedGhostText}setExpanded(We){var he;(he=this.targetModel)===null||he===void 0||he.setExpanded(We)}get minReservedLineCount(){return this.targetModel?this.targetModel.minReservedLineCount:0}}let xe=class extends ze{constructor(he,Me){super();this.editor=he,this.commandService=Me,this.sharedCache=this._register(new Te),this.suggestWidgetAdapterModel=this._register(new re(this.editor,this.sharedCache)),this.inlineCompletionsModel=this._register(new Q(this.editor,this.sharedCache,this.commandService)),this._register(this.suggestWidgetAdapterModel.onDidChange(()=>{this.updateModel()})),this.updateModel()}get activeInlineCompletionsModel(){return this.targetModel===this.inlineCompletionsModel?this.inlineCompletionsModel:void 0}updateModel(){this.setTargetModel(this.suggestWidgetAdapterModel.isActive?this.suggestWidgetAdapterModel:this.inlineCompletionsModel),this.inlineCompletionsModel.setActive(this.targetModel===this.inlineCompletionsModel)}shouldShowHoverAt(he){var Me;const ue=(Me=this.activeInlineCompletionsModel)===null||Me===void 0?void 0:Me.ghostText;return ue?ue.parts.some(ae=>he.containsPosition(new S.a(ue.lineNumber,ae.column))):!1}triggerInlineCompletion(){var he;(he=this.activeInlineCompletionsModel)===null||he===void 0||he.trigger(f.t.Explicit)}commitInlineCompletion(){var he;(he=this.activeInlineCompletionsModel)===null||he===void 0||he.commitCurrentSuggestion()}hideInlineCompletion(){var he;(he=this.activeInlineCompletionsModel)===null||he===void 0||he.hide()}showNextInlineCompletion(){var he;(he=this.activeInlineCompletionsModel)===null||he===void 0||he.showNext()}showPreviousInlineCompletion(){var he;(he=this.activeInlineCompletionsModel)===null||he===void 0||he.showPrevious()}hasMultipleInlineCompletions(){var he;return ye(this,void 0,void 0,function*(){const Me=yield(he=this.activeInlineCompletionsModel)===null||he===void 0?void 0:he.hasMultipleInlineCompletions();return Me!==void 0?Me:!1})}};xe=Ie([ge(1,C.b)],xe);class Te extends h.a{constructor(){super(...arguments);this.onDidChangeEmitter=new O.b,this.onDidChange=this.onDidChangeEmitter.event,this.cache=this._register(new h.d)}get value(){return this.cache.value}setValue(We,he,Me){this.cache.value=new fe(We,he,()=>this.onDidChangeEmitter.fire(),Me)}clearAndLeak(){return this.cache.clearAndLeak()}clear(){this.cache.clear()}}var He=e("EffR"),st=e("zrhQ"),nt=e("qoAC"),rt=e("HdwC"),wt=e("Vxe3"),Pt=e("/UlZ"),no=e("Ll0s"),ht=e("4bUh"),lt=e("erNZ"),le=e("WBhO"),Pe=e("kYye"),it=e("dBaI"),Dt=e("baJR"),kt=e("T8No"),eo=e("Cg/j"),bo=e("t9D7"),ao=function(We,he,Me,ue){var ae=arguments.length,Re=ae<3?he:ue===null?ue=Object.getOwnPropertyDescriptor(he,Me):ue,Qe;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Re=Reflect.decorate(We,he,Me,ue);else for(var et=We.length-1;et>=0;et--)(Qe=We[et])&&(Re=(ae<3?Qe(Re):ae>3?Qe(he,Me,Re):Qe(he,Me))||Re);return ae>3&&Re&&Object.defineProperty(he,Me,Re),Re},So=function(We,he){return function(Me,ue){he(Me,ue,We)}},Lo;const xo=(Lo=window.trustedTypes)===null||Lo===void 0?void 0:Lo.createPolicy("editorGhostText",{createHTML:We=>We});let _o=class extends h.a{constructor(he,Me,ue,ae){super();this.editor=he,this.model=Me,this.instantiationService=ue,this.modeService=ae,this.disposed=!1,this.partsWidget=this._register(this.instantiationService.createInstance(to,this.editor)),this.additionalLinesWidget=this._register(new Ge(this.editor,this.modeService.languageIdCodec)),this.viewMoreContentWidget=void 0,this._register(this.editor.onDidChangeConfiguration(Re=>{(Re.hasChanged(29)||Re.hasChanged(104)||Re.hasChanged(87)||Re.hasChanged(82)||Re.hasChanged(44)||Re.hasChanged(43)||Re.hasChanged(58))&&this.update()})),this._register(Object(h.i)(()=>{var Re;this.disposed=!0,this.update(),(Re=this.viewMoreContentWidget)===null||Re===void 0||Re.dispose(),this.viewMoreContentWidget=void 0})),this._register(Me.onDidChange(()=>{this.update()})),this.update()}shouldShowHoverAtViewZone(he){return this.additionalLinesWidget.viewZoneId===he}update(){var he;const Me=this.model.ghostText;if(!this.editor.hasModel()||!Me||this.disposed){this.partsWidget.clear(),this.additionalLinesWidget.clear();return}const ue=new Array,ae=new Array;function Re(Lt,Ot){if(ae.length>0){const Ft=ae[ae.length-1];Ot&&Ft.decorations.push(new it.a(Ft.content.length+1,Ft.content.length+1+Lt[0].length,Ot,0)),Ft.content+=Lt[0],Lt=Lt.slice(1)}for(const Ft of Lt)ae.push({content:Ft,decorations:Ot?[new it.a(1,Ft.length+1,Ot,0)]:[]})}const Qe=this.editor.getModel().getLineContent(Me.lineNumber);this.editor.getModel().getLineTokens(Me.lineNumber);let et,bt=0;for(const Lt of Me.parts){let Ot=Lt.lines;et===void 0?(ue.push({column:Lt.column,text:Ot[0],preview:Lt.preview}),Ot=Ot.slice(1)):Re([Qe.substring(bt,Lt.column-1)],void 0),Ot.length>0&&(Re(Ot,"ghost-text"),et===void 0&&Lt.column<=Qe.length&&(et=Lt.column)),bt=Lt.column-1}et!==void 0&&Re([Qe.substring(bt)],void 0),this.partsWidget.setParts(Me.lineNumber,ue,et!==void 0?{column:et,length:Qe.length+1-et}:void 0),this.additionalLinesWidget.updateLines(Me.lineNumber,ae,Me.additionalReservedLineCount),Me.parts.some(Lt=>Lt.lines.length<0)?this.viewMoreContentWidget=this.renderViewMoreLines(new S.a(Me.lineNumber,this.editor.getModel().getLineMaxColumn(Me.lineNumber)),"",0):((he=this.viewMoreContentWidget)===null||he===void 0||he.dispose(),this.viewMoreContentWidget=void 0)}renderViewMoreLines(he,Me,ue){const ae=this.editor.getOption(43),Re=document.createElement("div");Re.className="suggest-preview-additional-widget",rt.a.applyFontInfoSlow(Re,ae);const Qe=document.createElement("span");Qe.className="content-spacer",Qe.append(Me),Re.append(Qe);const et=document.createElement("span");et.className="content-newline suggest-preview-text",et.append("\u23CE "),Re.append(et);const bt=new h.b,Lt=document.createElement("div");return Lt.className="button suggest-preview-text",Lt.append(`+${ue} lines\u2026`),bt.add(He.o(Lt,"mousedown",Ot=>{var Ft;(Ft=this.model)===null||Ft===void 0||Ft.setExpanded(!0),Ot.preventDefault(),this.editor.focus()})),Re.append(Lt),new tt(this.editor,he,Re,bt)}};_o=ao([So(2,eo.a),So(3,le.a)],_o);let to=class{constructor(he,Me,ue,ae){this.editor=he,this.codeEditorService=Me,this.themeService=ue,this.contextKeyService=ae,this.decorationIds=[],this.disposableStore=new h.b}dispose(){this.clear(),this.disposableStore.dispose()}clear(){this.editor.deltaDecorations(this.decorationIds,[]),this.disposableStore.clear()}setParts(he,Me,ue){this.disposableStore.clear();const ae=this.themeService.getColorTheme(),Re=ae.getColor(Pe.K);let Qe,et;Re&&(Qe=String(Re.rgba.a),et=st.a.Format.CSS.format(Wt(Re)));const bt=ae.getColor(Pe.J);let Lt;bt&&(Lt=`2px dashed ${bt}`);const Ot=this.editor.getModel();if(!Ot)return;const{tabSize:Ft}=Ot.getOptions(),Tt=Ot.getLineContent(he)||"";let Ut=0,fo="";const vo=new Array;ue&&vo.push({range:b.a.fromPositions(new S.a(he,ue.column),new S.a(he,ue.column+ue.length)),options:{inlineClassName:"ghost-text-hidden",description:"ghost-text-hidden"}});const po=this.contextKeyService.getContextKeyValue("config.editor.useInjectedText"),Oo=po===void 0?!0:!!po;this.decorationIds=this.editor.deltaDecorations(this.decorationIds,Me.map(Uo=>{fo+=Tt.substring(Ut,Uo.column-1),Ut=Uo.column-1;const Zo=Oo?Uo.text:this.renderSingleLineText(Uo.text,fo,Ft,!1),ii=this.disposableStore.add(qe(this.codeEditorService,"ghost-text","0-ghost-text-",{after:{contentText:Zo,opacity:Qe,color:et,border:Lt,fontWeight:Uo.preview?"bold":"normal"}}));return{range:b.a.fromPositions(new S.a(he,Uo.column)),options:Oo?{description:"ghost-text",after:{content:Zo,inlineClassName:Uo.preview?"ghost-text-decoration-preview":"ghost-text-decoration"},showIfCollapsed:!0}:Object.assign({},ii.resolve())}}).concat(vo))}renderSingleLineText(he,Me,ue,ae){const Re=Me+he,Qe=no.a.visibleColumnsByColumns(Re,ue);let et="",bt=Me.length+1;for(const Lt of he){if(Lt===" "){const Ot=Qe[bt+1]-Qe[bt];if(ae){et+="\u2192";for(let Ft=1;Ft{this._viewZoneId&&(We.removeZone(this._viewZoneId),this._viewZoneId=void 0)})}updateLines(We,he,Me){const ue=this.editor.getModel();if(!ue)return;const{tabSize:ae}=ue.getOptions();this.editor.changeViewZones(Re=>{this._viewZoneId&&(Re.removeZone(this._viewZoneId),this._viewZoneId=void 0);const Qe=Math.max(he.length,Me);if(Qe>0){const et=document.createElement("div");mt(et,ae,he,this.editor.getOptions(),this.languageIdCodec),this._viewZoneId=Re.addZone({afterLineNumber:We,heightInLines:Qe,domNode:et})}})}}function mt(We,he,Me,ue,ae){const Re=ue.get(29),Qe=ue.get(104),et="none",bt=ue.get(82),Lt=ue.get(44),Ot=ue.get(43),Ft=ue.get(58),Tt=Object(lt.a)(1e4);Tt.appendASCIIString('
');for(let vo=0,po=Me.length;vo');const Zo=P.A(Uo),ii=P.m(Uo),$o=ht.a.createEmpty(Uo,ae);Object(Dt.d)(new Dt.c(Ot.isMonospace&&!Re,Ot.canUseHalfwidthRightwardsArrow,Uo,!1,Zo,ii,0,$o,Oo.decorations,he,0,Ot.spaceWidth,Ot.middotWidth,Ot.wsmiddotWidth,Qe,et,bt,Lt!==Pt.e.OFF,null),Tt),Tt.appendASCIIString("
")}Tt.appendASCIIString(""),rt.a.applyFontInfoSlow(We,Ot);const Ut=Tt.build(),fo=xo?xo.createHTML(Ut):Ut;We.innerHTML=fo}let Gt=0;function qe(We,he,Me,ue){const ae=Me+Gt++;return We.registerDecorationType(he,ae,ue),{dispose(){We.removeDecorationType(ae)},resolve(){return We.resolveDecorationOptions(ae,!0)}}}class tt extends h.a{constructor(We,he,Me,ue){super();this.editor=We,this.position=he,this.domNode=Me,this.allowEditorOverflow=!1,this.suppressMouseDown=!1,this._register(ue),this._register(Object(h.i)(()=>{this.editor.removeContentWidget(this)})),this.editor.addContentWidget(this)}getId(){return"editor.widget.viewMoreLinesWidget"}getDomNode(){return this.domNode}getPosition(){return{position:this.position,preference:[0]}}}Object(bo.f)((We,he)=>{const Me=We.getColor(Pe.K);if(Me){const ae=String(Me.rgba.a),Re=st.a.Format.CSS.format(Wt(Me));he.addRule(`.monaco-editor .ghost-text-decoration { opacity: ${ae} !important; color: ${Re} !important; }`),he.addRule(`.monaco-editor .ghost-text-decoration-preview { color: ${Me.toString()} !important; }`),he.addRule(`.monaco-editor .suggest-preview-text .ghost-text { opacity: ${ae} !important; color: ${Re} !important; }`)}const ue=We.getColor(Pe.J);ue&&(he.addRule(`.monaco-editor .suggest-preview-text .ghost-text { border: 1px solid ${ue}; }`),he.addRule(`.monaco-editor .ghost-text-decoration { border: 1px solid ${ue}; }`),he.addRule(`.monaco-editor .ghost-text-decoration-preview { border: 1px solid ${ue}; }`))});var gt=e("3/fG"),$e=e("nrhi"),je=function(We,he,Me,ue){var ae=arguments.length,Re=ae<3?he:ue===null?ue=Object.getOwnPropertyDescriptor(he,Me):ue,Qe;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Re=Reflect.decorate(We,he,Me,ue);else for(var et=We.length-1;et>=0;et--)(Qe=We[et])&&(Re=(ae<3?Qe(Re):ae>3?Qe(he,Me,Re):Qe(he,Me))||Re);return ae>3&&Re&&Object.defineProperty(he,Me,Re),Re},Ue=function(We,he){return function(Me,ue){he(Me,ue,We)}},Ye=function(We,he,Me,ue){function ae(Re){return Re instanceof Me?Re:new Me(function(Qe){Qe(Re)})}return new(Me||(Me=Promise))(function(Re,Qe){function et(Ot){try{Lt(ue.next(Ot))}catch(Ft){Qe(Ft)}}function bt(Ot){try{Lt(ue.throw(Ot))}catch(Ft){Qe(Ft)}}function Lt(Ot){Ot.done?Re(Ot.value):ae(Ot.value).then(et,bt)}Lt((ue=ue.apply(We,he||[])).next())})};let Mt=class We extends h.a{constructor(he,Me){super();this.editor=he,this.instantiationService=Me,this.triggeredExplicitly=!1,this.activeController=this._register(new h.d),this._register(this.editor.onDidChangeModel(()=>{this.updateModelController()})),this._register(this.editor.onDidChangeConfiguration(ue=>{ue.hasChanged(105)&&this.updateModelController(),ue.hasChanged(54)&&this.updateModelController()})),this.updateModelController()}static get(he){return he.getContribution(We.ID)}get activeModel(){var he;return(he=this.activeController.value)===null||he===void 0?void 0:he.model}updateModelController(){const he=this.editor.getOption(105),Me=this.editor.getOption(54);this.activeController.value=void 0,this.activeController.value=this.editor.hasModel()&&(he.preview||Me.enabled||this.triggeredExplicitly)?this.instantiationService.createInstance($t,this.editor):void 0}shouldShowHoverAt(he){var Me;return((Me=this.activeModel)===null||Me===void 0?void 0:Me.shouldShowHoverAt(he))||!1}shouldShowHoverAtViewZone(he){var Me,ue;return((ue=(Me=this.activeController.value)===null||Me===void 0?void 0:Me.widget)===null||ue===void 0?void 0:ue.shouldShowHoverAtViewZone(he))||!1}trigger(){var he;this.triggeredExplicitly=!0,this.activeController.value||this.updateModelController(),(he=this.activeModel)===null||he===void 0||he.triggerInlineCompletion()}commit(){var he;(he=this.activeModel)===null||he===void 0||he.commitInlineCompletion()}hide(){var he;(he=this.activeModel)===null||he===void 0||he.hideInlineCompletion()}showNextInlineCompletion(){var he;(he=this.activeModel)===null||he===void 0||he.showNextInlineCompletion()}showPreviousInlineCompletion(){var he;(he=this.activeModel)===null||he===void 0||he.showPreviousInlineCompletion()}hasMultipleInlineCompletions(){var he;return Ye(this,void 0,void 0,function*(){const Me=yield(he=this.activeModel)===null||he===void 0?void 0:he.hasMultipleInlineCompletions();return Me!==void 0?Me:!1})}};Mt.inlineSuggestionVisible=new kt.c("inlineSuggestionVisible",!1,gt.a("inlineSuggestionVisible","Whether an inline suggestion is visible")),Mt.inlineSuggestionHasIndentation=new kt.c("inlineSuggestionHasIndentation",!1,gt.a("inlineSuggestionHasIndentation","Whether the inline suggestion starts with whitespace")),Mt.inlineSuggestionHasIndentationLessThanTabSize=new kt.c("inlineSuggestionHasIndentationLessThanTabSize",!0,gt.a("inlineSuggestionHasIndentationLessThanTabSize","Whether the inline suggestion starts with whitespace that is less than what would be inserted by tab")),Mt.ID="editor.contrib.ghostTextController",Mt=je([Ue(1,eo.a)],Mt);class Bt{constructor(We){this.contextKeyService=We,this.inlineCompletionVisible=Mt.inlineSuggestionVisible.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentation=Mt.inlineSuggestionHasIndentation.bindTo(this.contextKeyService),this.inlineCompletionSuggestsIndentationLessThanTabSize=Mt.inlineSuggestionHasIndentationLessThanTabSize.bindTo(this.contextKeyService)}}let $t=class extends h.a{constructor(he,Me,ue){super();this.editor=he,this.instantiationService=Me,this.contextKeyService=ue,this.contextKeys=new Bt(this.contextKeyService),this.model=this._register(this.instantiationService.createInstance(xe,this.editor)),this.widget=this._register(this.instantiationService.createInstance(_o,this.editor,this.model)),this._register(Object(h.i)(()=>{this.contextKeys.inlineCompletionVisible.set(!1),this.contextKeys.inlineCompletionSuggestsIndentation.set(!1),this.contextKeys.inlineCompletionSuggestsIndentationLessThanTabSize.set(!0)})),this._register(this.model.onDidChange(()=>{this.updateContextKeys()})),this.updateContextKeys()}updateContextKeys(){var he;this.contextKeys.inlineCompletionVisible.set(((he=this.model.activeInlineCompletionsModel)===null||he===void 0?void 0:he.ghostText)!==void 0);let Me=!1,ue=!0;const ae=this.model.inlineCompletionsModel.ghostText;if(!!this.model.activeInlineCompletionsModel&&ae&&ae.parts.length>0){const{column:Re,lines:Qe}=ae.parts[0],et=Qe[0],bt=this.editor.getModel().getLineIndentColumn(ae.lineNumber),Lt=Re<=bt;if(Lt){let Ot=Object(P.u)(et);Ot===-1&&(Ot=et.length-1),Me=Ot>0;const Ft=this.editor.getModel().getOptions().tabSize,Tt=A.a.visibleColumnFromColumn(et,Ot+1,Ft);ue=Ttf.prefix.length-S.prefix.length),Object(P.i)(()=>{this.providers.splice(this.providers.indexOf(O),1),this.defaultProvider===O&&(this.defaultProvider=void 0)})}getQuickAccessProviders(){return Object(h.e)([this.defaultProvider,...this.providers])}getQuickAccessProvider(O){const S=O&&this.providers.find(f=>O.startsWith(f.prefix))||void 0;return S||this.defaultProvider}}L.a.add(I.Quickaccess,new k)},"M/lh":function(ft,w,e){self.MonacoEnvironment=function(h){function P(L){return L.replace(/\/$/,"")}return{globalAPI:!1,getWorkerUrl:function(L,A){var I=e.p,k=(I?P(I)+"/":"")+h[A];if(/^((http:)|(https:)|(file:)|(\/\/))/.test(k)){var O=String(window.location),S=O.substr(0,O.length-window.location.hash.length-window.location.search.length-window.location.pathname.length);if(k.substring(0,S.length)!==S){/^(\/\/)/.test(k)&&(k=window.location.protocol+k);var f="/*"+A+'*/importScripts("'+k+'");',u=new Blob([f],{type:"application/javascript"});return URL.createObjectURL(u)}}return k}}}({editorWorkerService:"editor.worker.js",css:"css.worker.js",html:"html.worker.js",json:"json.worker.js",typescript:"ts.worker.js",javascript:"ts.worker.js",less:"css.worker.js",scss:"css.worker.js",handlebars:"html.worker.js",razor:"html.worker.js"}),e("SBYE"),e("bk7F"),e("KTWA"),e("w29/"),e("CxEt"),e("d6R0"),e("n01l"),e("fD5p"),e("1YUG"),e("5RaG"),e("/RFl"),e("oQaD"),e("dgXF"),e("bfR1"),e("cIJc"),e("lY/7"),e("MyPo"),e("8Ydt"),e("H4T2"),e("rugR"),e("oiKk"),e("GvMn"),e("gJAb"),e("dH+W"),e("2ESN"),e("8XyJ"),e("WwIK"),e("Lkt1"),e("hFIF"),e("4sI4"),e("Q631"),e("10Fh"),e("tXSY"),e("ep4t"),e("vVA1"),e("k7pc"),e("ba9Q"),e("XtJs"),e("s7Km"),e("LUcL"),ft.exports=e("8z58"),e("CdFp"),e("23p7"),e("OOlL"),e("li8W"),e("kdPm"),e("ApJL"),e("jrbv"),e("gqHg"),e("p3Ex"),e("E+ie"),e("9B1q"),e("9XAT"),e("SvYn"),e("I/Lx"),e("LexI"),e("0oIH"),e("+a1H"),e("hFdI"),e("c2dO"),e("zQEy"),e("k7mE"),e("cldp"),e("p5tG"),e("Dvnd"),e("FvUK"),e("ZvGG"),e("QFiB"),e("ZkA/"),e("/cAr"),e("xYNL"),e("jVwG"),e("6lNC"),e("q8qy"),e("sStQ"),e("oKJv"),e("H6Gb"),e("y3CF"),e("JlLP"),e("j2o1"),e("woZy"),e("iLY9"),e("Msxo"),e("ajgA"),e("QiAa"),e("pI2L"),e("yKqg"),e("ij/i"),e("XQgg"),e("Gb1F"),e("xmOD"),e("c9ML"),e("Mzro"),e("GZrW"),e("1lwE"),e("w9QG"),e("ufhN"),e("LRks"),e("BUKB"),e("n18v"),e("EOst"),e("z3hU"),e("nrBJ"),e("BEdG"),e("E4kL")},M1Kb:function(ft,w,e){"use strict";e.d(w,"g",function(){return P}),e.d(w,"f",function(){return L}),e.d(w,"h",function(){return A}),e.d(w,"b",function(){return I}),e.d(w,"c",function(){return k}),e.d(w,"d",function(){return O}),e.d(w,"e",function(){return S}),e.d(w,"i",function(){return f}),e.d(w,"a",function(){return u});var h=e("qj0h"),P;(function(d){d[d.Left=1]="Left",d[d.Center=2]="Center",d[d.Right=4]="Right",d[d.Full=7]="Full"})(P||(P={}));var L;(function(d){d[d.Inline=1]="Inline",d[d.Gutter=2]="Gutter"})(L||(L={}));class A{constructor(d){this._textModelResolvedOptionsBrand=void 0,this.tabSize=Math.max(1,d.tabSize|0),this.indentSize=d.tabSize|0,this.insertSpaces=Boolean(d.insertSpaces),this.defaultEOL=d.defaultEOL|0,this.trimAutoWhitespace=Boolean(d.trimAutoWhitespace),this.bracketPairColorizationOptions=d.bracketPairColorizationOptions}equals(d){return this.tabSize===d.tabSize&&this.indentSize===d.indentSize&&this.insertSpaces===d.insertSpaces&&this.defaultEOL===d.defaultEOL&&this.trimAutoWhitespace===d.trimAutoWhitespace&&Object(h.d)(this.bracketPairColorizationOptions,d.bracketPairColorizationOptions)}createChangeEvent(d){return{tabSize:this.tabSize!==d.tabSize,indentSize:this.indentSize!==d.indentSize,insertSpaces:this.insertSpaces!==d.insertSpaces,trimAutoWhitespace:this.trimAutoWhitespace!==d.trimAutoWhitespace}}}class I{constructor(d,E){this._findMatchBrand=void 0,this.range=d,this.matches=E}}var k;(function(d){d[d.Disabled=0]="Disabled",d[d.EnabledForActive=1]="EnabledForActive",d[d.Enabled=2]="Enabled"})(k||(k={}));class O{constructor(d,E,p){this.visibleColumn=d,this.className=E,this.horizontalLine=p}}class S{constructor(d,E){this.top=d,this.endColumn=E}}class f{constructor(d,E,p,n,b,m){this.identifier=d,this.range=E,this.text=p,this.forceMoveMarkers=n,this.isAutoWhitespaceEdit=b,this._isTracked=m}}class u{constructor(d,E,p){this.reverseEdits=d,this.changes=E,this.trimAutoWhitespaceLineNumbers=p}}},M46C:function(ft,w,e){"use strict";e.d(w,"f",function(){return h}),e.d(w,"b",function(){return P}),e.d(w,"g",function(){return L}),e.d(w,"h",function(){return A}),e.d(w,"i",function(){return I}),e.d(w,"e",function(){return k}),e.d(w,"d",function(){return O}),e.d(w,"c",function(){return S}),e.d(w,"a",function(){return f});class h{constructor(){this.changeType=1}}class P{constructor(u,d,E,p,n){this.ownerId=u,this.lineNumber=d,this.column=E,this.options=p,this.order=n}static applyInjectedText(u,d){if(!d||d.length===0)return u;let E="",p=0;for(const n of d)E+=u.substring(p,n.column-1),p=n.column-1,E+=n.options.content;return E+=u.substring(p),E}static fromDecorations(u){const d=[];for(const E of u)E.options.before&&E.options.before.content.length>0&&d.push(new P(E.ownerId,E.range.startLineNumber,E.range.startColumn,E.options.before,0)),E.options.after&&E.options.after.content.length>0&&d.push(new P(E.ownerId,E.range.endLineNumber,E.range.endColumn,E.options.after,1));return d.sort((E,p)=>E.lineNumber===p.lineNumber?E.column===p.column?E.order-p.order:E.column-p.column:E.lineNumber-p.lineNumber),d}}class L{constructor(u,d,E){this.changeType=2,this.lineNumber=u,this.detail=d,this.injectedText=E}}class A{constructor(u,d){this.changeType=3,this.fromLineNumber=u,this.toLineNumber=d}}class I{constructor(u,d,E,p){this.changeType=4,this.injectedTexts=p,this.fromLineNumber=u,this.toLineNumber=d,this.detail=E}}class k{constructor(){this.changeType=5}}class O{constructor(u,d,E,p){this.changes=u,this.versionId=d,this.isUndoing=E,this.isRedoing=p,this.resultingSelection=null}containsEvent(u){for(let d=0,E=this.changes.length;d{let _i=li.indexOf(".")===-1?0:1,ui=Ai.indexOf(".")===-1?0:1;return _i!==ui?_i-ui:li.localeCompare(Ai)};return Object.keys(this.colorsById).sort(Vo).map(li=>`- \`${li}\`: ${this.colorsById[li].description}`).join(` `)}}const u=new f;O.a.add(S.ColorContribution,u);function d(Vo,li,Ai,_i,ui){return u.registerColor(Vo,li,Ai,_i,ui)}const E=d("foreground",{dark:"#CCCCCC",light:"#616161",hc:"#FFFFFF"},I.a("foreground","Overall foreground color. This color is only used if not overridden by a component.")),p=d("errorForeground",{dark:"#F48771",light:"#A1260D",hc:"#F48771"},I.a("errorForeground","Overall foreground color for error messages. This color is only used if not overridden by a component.")),n=d("icon.foreground",{dark:"#C5C5C5",light:"#424242",hc:"#FFFFFF"},I.a("iconForeground","The default color for icons in the workbench.")),b=d("focusBorder",{dark:"#007FD4",light:"#0090F1",hc:"#F38518"},I.a("focusBorder","Overall border color for focused elements. This color is only used if not overridden by a component.")),m=d("contrastBorder",{light:null,dark:null,hc:"#6FC3DF"},I.a("contrastBorder","An extra border around elements to separate them from others for greater contrast.")),c=d("contrastActiveBorder",{light:null,dark:null,hc:b},I.a("activeContrastBorder","An extra border around active elements to separate them from others for greater contrast.")),l=d("textLink.foreground",{light:"#006AB1",dark:"#3794FF",hc:"#3794FF"},I.a("textLinkForeground","Foreground color for links in text.")),g=d("textLink.activeForeground",{light:"#006AB1",dark:"#3794FF",hc:"#3794FF"},I.a("textLinkActiveForeground","Foreground color for links in text when clicked on and on mouse hover.")),y=d("textCodeBlock.background",{light:"#dcdcdc66",dark:"#0a0a0a66",hc:P.a.black},I.a("textCodeBlockBackground","Background color for code blocks in text.")),C=d("widget.shadow",{dark:yo(P.a.black,.36),light:yo(P.a.black,.16),hc:null},I.a("widgetShadow","Shadow color of widgets such as find/replace inside the editor.")),v=d("input.background",{dark:"#3C3C3C",light:P.a.white,hc:P.a.black},I.a("inputBoxBackground","Input box background.")),D=d("input.foreground",{dark:E,light:E,hc:E},I.a("inputBoxForeground","Input box foreground.")),j=d("input.border",{dark:null,light:null,hc:m},I.a("inputBoxBorder","Input box border.")),V=d("inputOption.activeBorder",{dark:"#007ACC00",light:"#007ACC00",hc:m},I.a("inputBoxActiveOptionBorder","Border color of activated options in input fields.")),G=d("inputOption.activeBackground",{dark:yo(b,.4),light:yo(b,.2),hc:P.a.transparent},I.a("inputOption.activeBackground","Background color of activated options in input fields.")),B=d("inputOption.activeForeground",{dark:P.a.white,light:P.a.black,hc:null},I.a("inputOption.activeForeground","Foreground color of activated options in input fields.")),z=d("inputValidation.infoBackground",{dark:"#063B49",light:"#D6ECF2",hc:P.a.black},I.a("inputValidationInfoBackground","Input validation background color for information severity.")),Y=d("inputValidation.infoForeground",{dark:null,light:null,hc:null},I.a("inputValidationInfoForeground","Input validation foreground color for information severity.")),K=d("inputValidation.infoBorder",{dark:"#007acc",light:"#007acc",hc:m},I.a("inputValidationInfoBorder","Input validation border color for information severity.")),Q=d("inputValidation.warningBackground",{dark:"#352A05",light:"#F6F5D2",hc:P.a.black},I.a("inputValidationWarningBackground","Input validation background color for warning severity.")),ee=d("inputValidation.warningForeground",{dark:null,light:null,hc:null},I.a("inputValidationWarningForeground","Input validation foreground color for warning severity.")),Se=d("inputValidation.warningBorder",{dark:"#B89500",light:"#B89500",hc:m},I.a("inputValidationWarningBorder","Input validation border color for warning severity.")),fe=d("inputValidation.errorBackground",{dark:"#5A1D1D",light:"#F2DEDE",hc:P.a.black},I.a("inputValidationErrorBackground","Input validation background color for error severity.")),q=d("inputValidation.errorForeground",{dark:null,light:null,hc:null},I.a("inputValidationErrorForeground","Input validation foreground color for error severity.")),te=d("inputValidation.errorBorder",{dark:"#BE1100",light:"#BE1100",hc:m},I.a("inputValidationErrorBorder","Input validation border color for error severity.")),U=d("dropdown.background",{dark:"#3C3C3C",light:P.a.white,hc:P.a.black},I.a("dropdownBackground","Dropdown background.")),H=d("dropdown.foreground",{dark:"#F0F0F0",light:null,hc:P.a.white},I.a("dropdownForeground","Dropdown foreground.")),W=d("button.foreground",{dark:P.a.white,light:P.a.white,hc:P.a.white},I.a("buttonForeground","Button foreground color.")),ne=d("button.background",{dark:"#0E639C",light:"#007ACC",hc:null},I.a("buttonBackground","Button background color.")),Ce=d("button.hoverBackground",{dark:mo(ne,.2),light:ho(ne,.2),hc:null},I.a("buttonHoverBackground","Button background color when hovering.")),Le=d("badge.background",{dark:"#4D4D4D",light:"#C4C4C4",hc:P.a.black},I.a("badgeBackground","Badge background color. Badges are small information labels, e.g. for search results count.")),ce=d("badge.foreground",{dark:P.a.white,light:"#333",hc:P.a.white},I.a("badgeForeground","Badge foreground color. Badges are small information labels, e.g. for search results count.")),me=d("scrollbar.shadow",{dark:"#000000",light:"#DDDDDD",hc:null},I.a("scrollbarShadow","Scrollbar shadow to indicate that the view is scrolled.")),Oe=d("scrollbarSlider.background",{dark:P.a.fromHex("#797979").transparent(.4),light:P.a.fromHex("#646464").transparent(.4),hc:yo(m,.6)},I.a("scrollbarSliderBackground","Scrollbar slider background color.")),oe=d("scrollbarSlider.hoverBackground",{dark:P.a.fromHex("#646464").transparent(.7),light:P.a.fromHex("#646464").transparent(.7),hc:yo(m,.8)},I.a("scrollbarSliderHoverBackground","Scrollbar slider background color when hovering.")),De=d("scrollbarSlider.activeBackground",{dark:P.a.fromHex("#BFBFBF").transparent(.4),light:P.a.fromHex("#000000").transparent(.6),hc:m},I.a("scrollbarSliderActiveBackground","Scrollbar slider background color when clicked on.")),Ne=d("progressBar.background",{dark:P.a.fromHex("#0E70C0"),light:P.a.fromHex("#0E70C0"),hc:m},I.a("progressBarBackground","Background color of the progress bar that can show for long running operations.")),ve=d("editorError.background",{dark:null,light:null,hc:null},I.a("editorError.background","Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),re=d("editorError.foreground",{dark:"#F14C4C",light:"#E51400",hc:null},I.a("editorError.foreground","Foreground color of error squigglies in the editor.")),we=d("editorError.border",{dark:null,light:null,hc:P.a.fromHex("#E47777").transparent(.8)},I.a("errorBorder","Border color of error boxes in the editor.")),Ie=d("editorWarning.background",{dark:null,light:null,hc:null},I.a("editorWarning.background","Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),ge=d("editorWarning.foreground",{dark:"#CCA700",light:"#BF8803",hc:null},I.a("editorWarning.foreground","Foreground color of warning squigglies in the editor.")),ye=d("editorWarning.border",{dark:null,light:null,hc:P.a.fromHex("#FFCC00").transparent(.8)},I.a("warningBorder","Border color of warning boxes in the editor.")),ze=d("editorInfo.background",{dark:null,light:null,hc:null},I.a("editorInfo.background","Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations."),!0),xe=d("editorInfo.foreground",{dark:"#3794FF",light:"#1a85ff",hc:"#3794FF"},I.a("editorInfo.foreground","Foreground color of info squigglies in the editor.")),Te=d("editorInfo.border",{dark:null,light:null,hc:P.a.fromHex("#3794FF").transparent(.8)},I.a("infoBorder","Border color of info boxes in the editor.")),He=d("editorHint.foreground",{dark:P.a.fromHex("#eeeeee").transparent(.7),light:"#6c6c6c",hc:null},I.a("editorHint.foreground","Foreground color of hint squigglies in the editor.")),st=d("editorHint.border",{dark:null,light:null,hc:P.a.fromHex("#eeeeee").transparent(.8)},I.a("hintBorder","Border color of hint boxes in the editor.")),nt=d("editor.background",{light:"#fffffe",dark:"#1E1E1E",hc:P.a.black},I.a("editorBackground","Editor background color.")),rt=d("editor.foreground",{light:"#333333",dark:"#BBBBBB",hc:P.a.white},I.a("editorForeground","Editor default foreground color.")),wt=d("editorWidget.background",{dark:"#252526",light:"#F3F3F3",hc:"#0C141F"},I.a("editorWidgetBackground","Background color of editor widgets, such as find/replace.")),Pt=d("editorWidget.foreground",{dark:E,light:E,hc:E},I.a("editorWidgetForeground","Foreground color of editor widgets, such as find/replace.")),no=d("editorWidget.border",{dark:"#454545",light:"#C8C8C8",hc:m},I.a("editorWidgetBorder","Border color of editor widgets. The color is only used if the widget chooses to have a border and if the color is not overridden by a widget.")),ht=d("editorWidget.resizeBorder",{light:null,dark:null,hc:null},I.a("editorWidgetResizeBorder","Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.")),lt=d("quickInput.background",{dark:wt,light:wt,hc:wt},I.a("pickerBackground","Quick picker background color. The quick picker widget is the container for pickers like the command palette.")),le=d("quickInput.foreground",{dark:Pt,light:Pt,hc:Pt},I.a("pickerForeground","Quick picker foreground color. The quick picker widget is the container for pickers like the command palette.")),Pe=d("quickInputTitle.background",{dark:new P.a(new P.c(255,255,255,.105)),light:new P.a(new P.c(0,0,0,.06)),hc:"#000000"},I.a("pickerTitleBackground","Quick picker title background color. The quick picker widget is the container for pickers like the command palette.")),it=d("pickerGroup.foreground",{dark:"#3794FF",light:"#0066BF",hc:P.a.white},I.a("pickerGroupForeground","Quick picker color for grouping labels.")),Dt=d("pickerGroup.border",{dark:"#3F3F46",light:"#CCCEDB",hc:P.a.white},I.a("pickerGroupBorder","Quick picker color for grouping borders.")),kt=d("keybindingLabel.background",{dark:new P.a(new P.c(128,128,128,.17)),light:new P.a(new P.c(221,221,221,.4)),hc:P.a.transparent},I.a("keybindingLabelBackground","Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.")),eo=d("keybindingLabel.foreground",{dark:P.a.fromHex("#CCCCCC"),light:P.a.fromHex("#555555"),hc:P.a.white},I.a("keybindingLabelForeground","Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.")),bo=d("keybindingLabel.border",{dark:new P.a(new P.c(51,51,51,.6)),light:new P.a(new P.c(204,204,204,.4)),hc:new P.a(new P.c(111,195,223))},I.a("keybindingLabelBorder","Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.")),ao=d("keybindingLabel.bottomBorder",{dark:new P.a(new P.c(68,68,68,.6)),light:new P.a(new P.c(187,187,187,.4)),hc:new P.a(new P.c(111,195,223))},I.a("keybindingLabelBottomBorder","Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.")),So=d("editor.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hc:"#f3f518"},I.a("editorSelectionBackground","Color of the editor selection.")),Lo=d("editor.selectionForeground",{light:null,dark:null,hc:"#000000"},I.a("editorSelectionForeground","Color of the selected text for high contrast.")),xo=d("editor.inactiveSelectionBackground",{light:yo(So,.5),dark:yo(So,.5),hc:yo(So,.5)},I.a("editorInactiveSelection","Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations."),!0),_o=d("editor.selectionHighlightBackground",{light:Ro(So,nt,.3,.6),dark:Ro(So,nt,.3,.6),hc:null},I.a("editorSelectionHighlight","Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations."),!0),to=d("editor.selectionHighlightBorder",{light:null,dark:null,hc:c},I.a("editorSelectionHighlightBorder","Border color for regions with the same content as the selection.")),Wt=d("editor.findMatchBackground",{light:"#A8AC94",dark:"#515C6A",hc:null},I.a("editorFindMatch","Color of the current search match.")),Ge=d("editor.findMatchHighlightBackground",{light:"#EA5C0055",dark:"#EA5C0055",hc:null},I.a("findMatchHighlight","Color of the other search matches. The color must not be opaque so as not to hide underlying decorations."),!0),mt=d("editor.findRangeHighlightBackground",{dark:"#3a3d4166",light:"#b4b4b44d",hc:null},I.a("findRangeHighlight","Color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),Gt=d("editor.findMatchBorder",{light:null,dark:null,hc:c},I.a("editorFindMatchBorder","Border color of the current search match.")),qe=d("editor.findMatchHighlightBorder",{light:null,dark:null,hc:c},I.a("findMatchHighlightBorder","Border color of the other search matches.")),tt=d("editor.findRangeHighlightBorder",{dark:null,light:null,hc:yo(c,.4)},I.a("findRangeHighlightBorder","Border color of the range limiting the search. The color must not be opaque so as not to hide underlying decorations."),!0),gt=d("editor.hoverHighlightBackground",{light:"#ADD6FF26",dark:"#264f7840",hc:"#ADD6FF26"},I.a("hoverHighlight","Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations."),!0),$e=d("editorHoverWidget.background",{light:wt,dark:wt,hc:wt},I.a("hoverBackground","Background color of the editor hover.")),je=d("editorHoverWidget.foreground",{light:Pt,dark:Pt,hc:Pt},I.a("hoverForeground","Foreground color of the editor hover.")),Ue=d("editorHoverWidget.border",{light:no,dark:no,hc:no},I.a("hoverBorder","Border color of the editor hover.")),Ye=d("editorHoverWidget.statusBarBackground",{dark:mo($e,.2),light:ho($e,.05),hc:wt},I.a("statusBarBackground","Background color of the editor hover status bar.")),Mt=d("editorLink.activeForeground",{dark:"#4E94CE",light:P.a.blue,hc:P.a.cyan},I.a("activeLinkForeground","Color of active links.")),Bt=d("editorInlayHint.foreground",{dark:yo(ce,.8),light:yo(ce,.8),hc:ce},I.a("editorInlayHintForeground","Foreground color of inline hints")),$t=d("editorInlayHint.background",{dark:yo(Le,.6),light:yo(Le,.3),hc:Le},I.a("editorInlayHintBackground","Background color of inline hints")),uo=d("editorInlayHint.typeForeground",{dark:Bt,light:Bt,hc:Bt},I.a("editorInlayHintForegroundTypes","Foreground color of inline hints for types")),Zt=d("editorInlayHint.typeBackground",{dark:$t,light:$t,hc:$t},I.a("editorInlayHintBackgroundTypes","Background color of inline hints for types")),zt=d("editorInlayHint.parameterForeground",{dark:Bt,light:Bt,hc:Bt},I.a("editorInlayHintForegroundParameter","Foreground color of inline hints for parameters")),ut=d("editorInlayHint.parameterBackground",{dark:$t,light:$t,hc:$t},I.a("editorInlayHintBackgroundParameter","Background color of inline hints for parameters")),Ct=d("editorLightBulb.foreground",{dark:"#FFCC00",light:"#DDB100",hc:"#FFCC00"},I.a("editorLightBulbForeground","The color used for the lightbulb actions icon.")),We=d("editorLightBulbAutoFix.foreground",{dark:"#75BEFF",light:"#007ACC",hc:"#75BEFF"},I.a("editorLightBulbAutoFixForeground","The color used for the lightbulb auto fix actions icon.")),he=new P.a(new P.c(155,185,85,.2)),Me=new P.a(new P.c(255,0,0,.2)),ue=d("diffEditor.insertedTextBackground",{dark:he,light:he,hc:null},I.a("diffEditorInserted","Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations."),!0),ae=d("diffEditor.removedTextBackground",{dark:Me,light:Me,hc:null},I.a("diffEditorRemoved","Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations."),!0),Re=d("diffEditor.insertedTextBorder",{dark:null,light:null,hc:"#33ff2eff"},I.a("diffEditorInsertedOutline","Outline color for the text that got inserted.")),Qe=d("diffEditor.removedTextBorder",{dark:null,light:null,hc:"#FF008F"},I.a("diffEditorRemovedOutline","Outline color for text that got removed.")),et=d("diffEditor.border",{dark:null,light:null,hc:m},I.a("diffEditorBorder","Border color between the two text editors.")),bt=d("diffEditor.diagonalFill",{dark:"#cccccc33",light:"#22222233",hc:null},I.a("diffDiagonalFill","Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.")),Lt=d("list.focusBackground",{dark:null,light:null,hc:null},I.a("listFocusBackground","List/Tree background color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Ot=d("list.focusForeground",{dark:null,light:null,hc:null},I.a("listFocusForeground","List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Ft=d("list.focusOutline",{dark:b,light:b,hc:c},I.a("listFocusOutline","List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Tt=d("list.activeSelectionBackground",{dark:"#094771",light:"#0060C0",hc:null},I.a("listActiveSelectionBackground","List/Tree background color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),Ut=d("list.activeSelectionForeground",{dark:P.a.white,light:P.a.white,hc:null},I.a("listActiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),fo=d("list.activeSelectionIconForeground",{dark:null,light:null,hc:null},I.a("listActiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.")),vo=d("list.inactiveSelectionBackground",{dark:"#37373D",light:"#E4E6F1",hc:null},I.a("listInactiveSelectionBackground","List/Tree background color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),po=d("list.inactiveSelectionForeground",{dark:null,light:null,hc:null},I.a("listInactiveSelectionForeground","List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Oo=d("list.inactiveSelectionIconForeground",{dark:null,light:null,hc:null},I.a("listInactiveSelectionIconForeground","List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Uo=d("list.inactiveFocusBackground",{dark:null,light:null,hc:null},I.a("listInactiveFocusBackground","List/Tree background color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),Zo=d("list.inactiveFocusOutline",{dark:null,light:null,hc:null},I.a("listInactiveFocusOutline","List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.")),ii=d("list.hoverBackground",{dark:"#2A2D2E",light:"#F0F0F0",hc:null},I.a("listHoverBackground","List/Tree background when hovering over items using the mouse.")),$o=d("list.hoverForeground",{dark:null,light:null,hc:null},I.a("listHoverForeground","List/Tree foreground when hovering over items using the mouse.")),Ri=d("list.dropBackground",{dark:"#062F4A",light:"#D6EBFF",hc:null},I.a("listDropBackground","List/Tree drag and drop background when moving items around using the mouse.")),xi=d("list.highlightForeground",{dark:"#18A3FF",light:"#0066BF",hc:b},I.a("highlight","List/Tree foreground color of the match highlights when searching inside the list/tree.")),Ni=d("list.focusHighlightForeground",{dark:xi,light:No(Tt,xi,"#9DDDFF"),hc:xi},I.a("listFocusHighlightForeground","List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree.")),ji=d("listFilterWidget.background",{light:"#efc1ad",dark:"#653723",hc:P.a.black},I.a("listFilterWidgetBackground","Background color of the type filter widget in lists and trees.")),Li=d("listFilterWidget.outline",{dark:P.a.transparent,light:P.a.transparent,hc:"#f38518"},I.a("listFilterWidgetOutline","Outline color of the type filter widget in lists and trees.")),ki=d("listFilterWidget.noMatchesOutline",{dark:"#BE1100",light:"#BE1100",hc:m},I.a("listFilterWidgetNoMatchesOutline","Outline color of the type filter widget in lists and trees, when there are no matches.")),Hi=d("tree.indentGuidesStroke",{dark:"#585858",light:"#a9a9a9",hc:"#a9a9a9"},I.a("treeIndentGuidesStroke","Tree stroke color for the indentation guides.")),ni=d("tree.tableColumnsBorder",{dark:"#CCCCCC20",light:"#61616120",hc:null},I.a("treeIndentGuidesStroke","Tree stroke color for the indentation guides.")),tn=d("quickInput.list.focusBackground",{dark:null,light:null,hc:null},"",void 0,I.a("quickInput.list.focusBackground deprecation","Please use quickInputList.focusBackground instead")),Yi=d("quickInputList.focusForeground",{dark:Ut,light:Ut,hc:Ut},I.a("quickInput.listFocusForeground","Quick picker foreground color for the focused item.")),bi=d("quickInputList.focusIconForeground",{dark:fo,light:fo,hc:fo},I.a("quickInput.listFocusIconForeground","Quick picker icon foreground color for the focused item.")),Pi=d("quickInputList.focusBackground",{dark:Io(tn,Tt),light:Io(tn,Tt),hc:null},I.a("quickInput.listFocusBackground","Quick picker background color for the focused item.")),Ii=d("menu.border",{dark:null,light:null,hc:m},I.a("menuBorder","Border color of menus.")),Si=d("menu.foreground",{dark:H,light:E,hc:H},I.a("menuForeground","Foreground color of menu items.")),Xi=d("menu.background",{dark:U,light:U,hc:U},I.a("menuBackground","Background color of menu items.")),Ci=d("menu.selectionForeground",{dark:Ut,light:Ut,hc:Ut},I.a("menuSelectionForeground","Foreground color of the selected menu item in menus.")),rn=d("menu.selectionBackground",{dark:Tt,light:Tt,hc:Tt},I.a("menuSelectionBackground","Background color of the selected menu item in menus.")),on=d("menu.selectionBorder",{dark:null,light:null,hc:c},I.a("menuSelectionBorder","Border color of the selected menu item in menus.")),Fi=d("menu.separatorBackground",{dark:"#BBBBBB",light:"#888888",hc:m},I.a("menuSeparatorBackground","Color of a separator menu item in menus.")),Bi=d("toolbar.hoverBackground",{dark:"#5a5d5e50",light:"#b8b8b850",hc:null},I.a("toolbarHoverBackground","Toolbar background when hovering over actions using the mouse")),vt=d("editor.snippetTabstopHighlightBackground",{dark:new P.a(new P.c(124,124,124,.3)),light:new P.a(new P.c(10,50,100,.2)),hc:new P.a(new P.c(124,124,124,.3))},I.a("snippetTabstopHighlightBackground","Highlight background color of a snippet tabstop.")),Xe=d("editor.snippetTabstopHighlightBorder",{dark:null,light:null,hc:null},I.a("snippetTabstopHighlightBorder","Highlight border color of a snippet tabstop.")),X=d("editor.snippetFinalTabstopHighlightBackground",{dark:null,light:null,hc:null},I.a("snippetFinalTabstopHighlightBackground","Highlight background color of the final tabstop of a snippet.")),Ee=d("editor.snippetFinalTabstopHighlightBorder",{dark:"#525252",light:new P.a(new P.c(10,50,100,.5)),hc:"#525252"},I.a("snippetFinalTabstopHighlightBorder","Highlight border color of the final tabstop of a snippet.")),ke=d("editorOverviewRuler.findMatchForeground",{dark:"#d186167e",light:"#d186167e",hc:"#AB5A00"},I.a("overviewRulerFindMatchForeground","Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations."),!0),Ve=d("editorOverviewRuler.selectionHighlightForeground",{dark:"#A0A0A0CC",light:"#A0A0A0CC",hc:"#A0A0A0CC"},I.a("overviewRulerSelectionHighlightForeground","Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations."),!0),ct=d("minimap.findMatchHighlight",{light:"#d18616",dark:"#d18616",hc:"#AB5A00"},I.a("minimapFindMatchHighlight","Minimap marker color for find matches."),!0),Et=d("minimap.selectionOccurrenceHighlight",{light:"#c9c9c9",dark:"#676767",hc:"#ffffff"},I.a("minimapSelectionOccurrenceHighlight","Minimap marker color for repeating editor selections."),!0),qt=d("minimap.selectionHighlight",{light:"#ADD6FF",dark:"#264F78",hc:"#ffffff"},I.a("minimapSelectionHighlight","Minimap marker color for the editor selection."),!0),Xt=d("minimap.errorHighlight",{dark:new P.a(new P.c(255,18,18,.7)),light:new P.a(new P.c(255,18,18,.7)),hc:new P.a(new P.c(255,50,50,1))},I.a("minimapError","Minimap marker color for errors.")),Yt=d("minimap.warningHighlight",{dark:ge,light:ge,hc:ye},I.a("overviewRuleWarning","Minimap marker color for warnings.")),go=d("minimap.background",{dark:null,light:null,hc:null},I.a("minimapBackground","Minimap background color.")),F=d("minimap.foregroundOpacity",{dark:P.a.fromHex("#000f"),light:P.a.fromHex("#000f"),hc:P.a.fromHex("#000f")},I.a("minimapForegroundOpacity",'Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.')),J=d("minimapSlider.background",{light:yo(Oe,.5),dark:yo(Oe,.5),hc:yo(Oe,.5)},I.a("minimapSliderBackground","Minimap slider background color.")),Fe=d("minimapSlider.hoverBackground",{light:yo(oe,.5),dark:yo(oe,.5),hc:yo(oe,.5)},I.a("minimapSliderHoverBackground","Minimap slider background color when hovering.")),Ze=d("minimapSlider.activeBackground",{light:yo(De,.5),dark:yo(De,.5),hc:yo(De,.5)},I.a("minimapSliderActiveBackground","Minimap slider background color when clicked on.")),St=d("problemsErrorIcon.foreground",{dark:re,light:re,hc:re},I.a("problemsErrorIconForeground","The color used for the problems error icon.")),It=d("problemsWarningIcon.foreground",{dark:ge,light:ge,hc:ge},I.a("problemsWarningIconForeground","The color used for the problems warning icon.")),Vt=d("problemsInfoIcon.foreground",{dark:xe,light:xe,hc:xe},I.a("problemsInfoIconForeground","The color used for the problems info icon."));function io(Vo,li){var Ai,_i,ui;switch(Vo.op){case 0:return(Ai=To(Vo.value,li))===null||Ai===void 0?void 0:Ai.darken(Vo.factor);case 1:return(_i=To(Vo.value,li))===null||_i===void 0?void 0:_i.lighten(Vo.factor);case 2:return(ui=To(Vo.value,li))===null||ui===void 0?void 0:ui.transparent(Vo.factor);case 3:for(const Dn of Vo.values){const fn=To(Dn,li);if(fn)return fn}return;case 5:return To(li.defines(Vo.if)?Vo.then:Vo.else,li);case 4:const Ui=To(Vo.value,li);if(!Ui)return;const an=To(Vo.background,li);return an?Ui.isDarkerThan(an)?P.a.getLighterColor(Ui,an,Vo.factor).transparent(Vo.transparency):P.a.getDarkerColor(Ui,an,Vo.factor).transparent(Vo.transparency):Ui.transparent(Vo.factor*Vo.transparency);default:throw Object(A.b)(Vo)}}function ho(Vo,li){return{op:0,value:Vo,factor:li}}function mo(Vo,li){return{op:1,value:Vo,factor:li}}function yo(Vo,li){return{op:2,value:Vo,factor:li}}function Io(...Vo){return{op:3,values:Vo}}function No(Vo,li,Ai){return{op:5,if:Vo,then:li,else:Ai}}function Ro(Vo,li,Ai,_i){return{op:4,value:Vo,background:li,factor:Ai,transparency:_i}}function To(Vo,li){return Vo===null?void 0:typeof Vo=="string"?Vo[0]==="#"?P.a.fromHex(Vo):li.getColor(Vo):Vo instanceof P.a?Vo:typeof Vo=="object"?io(Vo,li):void 0}const Ho="vscode://schemas/workbench-colors";let Yo=O.a.as(k.a.JSONContribution);Yo.registerSchema(Ho,u.getColorSchema());const ri=new h.e(()=>Yo.notifySchemaChanged(Ho),200);u.onDidChangeSchema(()=>{ri.isScheduled()||ri.schedule()})},MNXI:function(ft,w,e){},MXAL:function(ft,w,e){"use strict";e.d(w,"a",function(){return P}),e.d(w,"b",function(){return L});var h=e("CZ1j");class P{constructor(A){let I=Object(h.b)(A);this._defaultValue=I,this._asciiMap=P._createAsciiMap(I),this._map=new Map}static _createAsciiMap(A){let I=new Uint8Array(256);for(let k=0;k<256;k++)I[k]=A;return I}set(A,I){let k=Object(h.b)(I);A>=0&&A<256?this._asciiMap[A]=k:this._map.set(A,k)}get(A){return A>=0&&A<256?this._asciiMap[A]:this._map.get(A)||this._defaultValue}}class L{constructor(){this._actual=new P(0)}add(A){this._actual.set(A,1)}has(A){return this._actual.get(A)===1}}},Md8J:function(ft,w,e){"use strict";e.d(w,"c",function(){return P}),e.d(w,"b",function(){return L}),e.d(w,"a",function(){return A});var h=e("EffR");function P(u,d={}){const E=A(d);return E.textContent=u,E}function L(u,d={}){const E=A(d);return k(E,O(u,!!d.renderCodeSegments),d.actionHandler,d.renderCodeSegments),E}function A(u){const d=u.inline?"span":"div",E=document.createElement(d);return u.className&&(E.className=u.className),E}class I{constructor(u){this.source=u,this.index=0}eos(){return this.index>=this.source.length}next(){const u=this.peek();return this.advance(),u}peek(){return this.source[this.index]}advance(){this.index++}}function k(u,d,E,p){let n;if(d.type===2)n=document.createTextNode(d.content||"");else if(d.type===3)n=document.createElement("b");else if(d.type===4)n=document.createElement("i");else if(d.type===7&&p)n=document.createElement("code");else if(d.type===5&&E){const b=document.createElement("a");b.href="#",E.disposables.add(h.o(b,"click",m=>{E.callback(String(d.index),m)})),n=b}else d.type===8?n=document.createElement("br"):d.type===1&&(n=u);n&&u!==n&&u.appendChild(n),n&&Array.isArray(d.children)&&d.children.forEach(b=>{k(n,b,E,p)})}function O(u,d){const E={type:1,children:[]};let p=0,n=E;const b=[],m=new I(u);for(;!m.eos();){let c=m.next();const l=c==="\\"&&f(m.peek(),d)!==0;if(l&&(c=m.next()),!l&&S(c,d)&&c===m.peek()){m.advance(),n.type===2&&(n=b.pop());const g=f(c,d);if(n.type===g||n.type===5&&g===6)n=b.pop();else{const y={type:g,children:[]};g===5&&(y.index=p,p++),n.children.push(y),b.push(n),n=y}}else if(c===` `)n.type===2&&(n=b.pop()),n.children.push({type:8});else if(n.type!==2){const g={type:2,content:c};n.children.push(g),b.push(n),n=g}else n.content+=c}return n.type===2&&(n=b.pop()),b.length,E}function S(u,d){return f(u,d)!==0}function f(u,d){switch(u){case"*":return 3;case"_":return 4;case"[":return 5;case"]":return 6;case"`":return d?7:0;default:return 0}}},MqQJ:function(ft,w,e){"use strict";e.d(w,"a",function(){return S}),e.d(w,"b",function(){return f});var h=e("3/fG"),P=e("MI8n"),L=e("cMvZ"),A=e("ic2d"),I=e("ubTv");const k={ModesRegistry:"editor.modesRegistry"};class O{constructor(){this._onDidChangeLanguages=new P.b,this.onDidChangeLanguages=this._onDidChangeLanguages.event,this._languages=[],this._dynamicLanguages=[]}registerLanguage(d){return this._languages.push(d),this._onDidChangeLanguages.fire(void 0),{dispose:()=>{for(let E=0,p=this._languages.length;E"},{open:'"',close:'"'},{open:"'",close:"'"},{open:"`",close:"`"}],colorizedBracketPairs:[],folding:{offSide:!0}},0)},MrjW:function(ft,w,e){"use strict";e.d(w,"i",function(){return l}),e.d(w,"e",function(){return g}),e.d(w,"d",function(){return y}),e.d(w,"g",function(){return C}),e.d(w,"f",function(){return v}),e.d(w,"b",function(){return D}),e.d(w,"a",function(){return j}),e.d(w,"c",function(){return V}),e.d(w,"h",function(){return G});var h=e("wxcJ");const P=65,L=97,A=90,I=122,k=46,O=47,S=92,f=58,u=63;class d extends Error{constructor(B,z,Y){let K;typeof z=="string"&&z.indexOf("not ")===0?(K="must not be",z=z.replace(/^not /,"")):K="must be";const Q=B.indexOf(".")!==-1?"property":"argument";let ee=`The "${B}" ${Q} ${K} of type ${z}`;ee+=`. Received type ${typeof Y}`,super(ee),this.code="ERR_INVALID_ARG_TYPE"}}function E(B,z){if(typeof B!="string")throw new d(z,"string",B)}function p(B){return B===O||B===S}function n(B){return B===O}function b(B){return B>=P&&B<=A||B>=L&&B<=I}function m(B,z,Y,K){let Q="",ee=0,Se=-1,fe=0,q=0;for(let te=0;te<=B.length;++te){if(te2){const U=Q.lastIndexOf(Y);U===-1?(Q="",ee=0):(Q=Q.slice(0,U),ee=Q.length-1-Q.lastIndexOf(Y)),Se=te,fe=0;continue}else if(Q.length!==0){Q="",ee=0,Se=te,fe=0;continue}}z&&(Q+=Q.length>0?`${Y}..`:"..",ee=2)}else Q.length>0?Q+=`${Y}${B.slice(Se+1,te)}`:Q=B.slice(Se+1,te),ee=te-Se-1;Se=te,fe=0}else q===k&&fe!==-1?++fe:fe=-1}return Q}function c(B,z){if(z===null||typeof z!="object")throw new d("pathObject","Object",z);const Y=z.dir||z.root,K=z.base||`${z.name||""}${z.ext||""}`;return Y?Y===z.root?`${Y}${K}`:`${Y}${B}${K}`:K}const l={resolve(...B){let z="",Y="",K=!1;for(let Q=B.length-1;Q>=-1;Q--){let ee;if(Q>=0){if(ee=B[Q],E(ee,"path"),ee.length===0)continue}else z.length===0?ee=h.a():(ee=h.b[`=${z}`]||h.a(),(ee===void 0||ee.slice(0,2).toLowerCase()!==z.toLowerCase()&&ee.charCodeAt(2)===S)&&(ee=`${z}\\`));const Se=ee.length;let fe=0,q="",te=!1;const U=ee.charCodeAt(0);if(Se===1)p(U)&&(fe=1,te=!0);else if(p(U))if(te=!0,p(ee.charCodeAt(1))){let H=2,W=H;for(;H2&&p(ee.charCodeAt(2))&&(te=!0,fe=3));if(q.length>0)if(z.length>0){if(q.toLowerCase()!==z.toLowerCase())continue}else z=q;if(K){if(z.length>0)break}else if(Y=`${ee.slice(fe)}\\${Y}`,K=te,te&&z.length>0)break}return Y=m(Y,!K,"\\",p),K?`${z}\\${Y}`:`${z}${Y}`||"."},normalize(B){E(B,"path");const z=B.length;if(z===0)return".";let Y=0,K,Q=!1;const ee=B.charCodeAt(0);if(z===1)return n(ee)?"\\":B;if(p(ee))if(Q=!0,p(B.charCodeAt(1))){let fe=2,q=fe;for(;fe2&&p(B.charCodeAt(2))&&(Q=!0,Y=3));let Se=Y0&&p(B.charCodeAt(z-1))&&(Se+="\\"),K===void 0?Q?`\\${Se}`:Se:Q?`${K}\\${Se}`:`${K}${Se}`},isAbsolute(B){E(B,"path");const z=B.length;if(z===0)return!1;const Y=B.charCodeAt(0);return p(Y)||z>2&&b(Y)&&B.charCodeAt(1)===f&&p(B.charCodeAt(2))},join(...B){if(B.length===0)return".";let z,Y;for(let ee=0;ee0&&(z===void 0?z=Y=Se:z+=`\\${Se}`)}if(z===void 0)return".";let K=!0,Q=0;if(typeof Y=="string"&&p(Y.charCodeAt(0))){++Q;const ee=Y.length;ee>1&&p(Y.charCodeAt(1))&&(++Q,ee>2&&(p(Y.charCodeAt(2))?++Q:K=!1))}if(K){for(;Q=2&&(z=`\\${z.slice(Q)}`)}return l.normalize(z)},relative(B,z){if(E(B,"from"),E(z,"to"),B===z)return"";const Y=l.resolve(B),K=l.resolve(z);if(Y===K)return"";if(B=Y.toLowerCase(),z=K.toLowerCase(),B===z)return"";let Q=0;for(;QQ&&B.charCodeAt(ee-1)===S;)ee--;const Se=ee-Q;let fe=0;for(;fefe&&z.charCodeAt(q-1)===S;)q--;const te=q-fe,U=SeU){if(z.charCodeAt(fe+W)===S)return K.slice(fe+W+1);if(W===2)return K.slice(fe+W)}Se>U&&(B.charCodeAt(Q+W)===S?H=W:W===2&&(H=3)),H===-1&&(H=0)}let ne="";for(W=Q+H+1;W<=ee;++W)(W===ee||B.charCodeAt(W)===S)&&(ne+=ne.length===0?"..":"\\..");return fe+=H,ne.length>0?`${ne}${K.slice(fe,q)}`:(K.charCodeAt(fe)===S&&++fe,K.slice(fe,q))},toNamespacedPath(B){if(typeof B!="string")return B;if(B.length===0)return"";const z=l.resolve(B);if(z.length<=2)return B;if(z.charCodeAt(0)===S){if(z.charCodeAt(1)===S){const Y=z.charCodeAt(2);if(Y!==u&&Y!==k)return`\\\\?\\UNC\\${z.slice(2)}`}}else if(b(z.charCodeAt(0))&&z.charCodeAt(1)===f&&z.charCodeAt(2)===S)return`\\\\?\\${z}`;return B},dirname(B){E(B,"path");const z=B.length;if(z===0)return".";let Y=-1,K=0;const Q=B.charCodeAt(0);if(z===1)return p(Q)?B:".";if(p(Q)){if(Y=K=1,p(B.charCodeAt(1))){let fe=2,q=fe;for(;fe2&&p(B.charCodeAt(2))?3:2,K=Y);let ee=-1,Se=!0;for(let fe=z-1;fe>=K;--fe)if(p(B.charCodeAt(fe))){if(!Se){ee=fe;break}}else Se=!1;if(ee===-1){if(Y===-1)return".";ee=Y}return B.slice(0,ee)},basename(B,z){z!==void 0&&E(z,"ext"),E(B,"path");let Y=0,K=-1,Q=!0,ee;if(B.length>=2&&b(B.charCodeAt(0))&&B.charCodeAt(1)===f&&(Y=2),z!==void 0&&z.length>0&&z.length<=B.length){if(z===B)return"";let Se=z.length-1,fe=-1;for(ee=B.length-1;ee>=Y;--ee){const q=B.charCodeAt(ee);if(p(q)){if(!Q){Y=ee+1;break}}else fe===-1&&(Q=!1,fe=ee+1),Se>=0&&(q===z.charCodeAt(Se)?--Se===-1&&(K=ee):(Se=-1,K=fe))}return Y===K?K=fe:K===-1&&(K=B.length),B.slice(Y,K)}for(ee=B.length-1;ee>=Y;--ee)if(p(B.charCodeAt(ee))){if(!Q){Y=ee+1;break}}else K===-1&&(Q=!1,K=ee+1);return K===-1?"":B.slice(Y,K)},extname(B){E(B,"path");let z=0,Y=-1,K=0,Q=-1,ee=!0,Se=0;B.length>=2&&B.charCodeAt(1)===f&&b(B.charCodeAt(0))&&(z=K=2);for(let fe=B.length-1;fe>=z;--fe){const q=B.charCodeAt(fe);if(p(q)){if(!ee){K=fe+1;break}continue}Q===-1&&(ee=!1,Q=fe+1),q===k?Y===-1?Y=fe:Se!==1&&(Se=1):Y!==-1&&(Se=-1)}return Y===-1||Q===-1||Se===0||Se===1&&Y===Q-1&&Y===K+1?"":B.slice(Y,Q)},format:c.bind(null,"\\"),parse(B){E(B,"path");const z={root:"",dir:"",base:"",ext:"",name:""};if(B.length===0)return z;const Y=B.length;let K=0,Q=B.charCodeAt(0);if(Y===1)return p(Q)?(z.root=z.dir=B,z):(z.base=z.name=B,z);if(p(Q)){if(K=1,p(B.charCodeAt(1))){let H=2,W=H;for(;H0&&(z.root=B.slice(0,K));let ee=-1,Se=K,fe=-1,q=!0,te=B.length-1,U=0;for(;te>=K;--te){if(Q=B.charCodeAt(te),p(Q)){if(!q){Se=te+1;break}continue}fe===-1&&(q=!1,fe=te+1),Q===k?ee===-1?ee=te:U!==1&&(U=1):ee!==-1&&(U=-1)}return fe!==-1&&(ee===-1||U===0||U===1&&ee===fe-1&&ee===Se+1?z.base=z.name=B.slice(Se,fe):(z.name=B.slice(Se,ee),z.base=B.slice(Se,fe),z.ext=B.slice(ee,fe))),Se>0&&Se!==K?z.dir=B.slice(0,Se-1):z.dir=z.root,z},sep:"\\",delimiter:";",win32:null,posix:null},g={resolve(...B){let z="",Y=!1;for(let K=B.length-1;K>=-1&&!Y;K--){const Q=K>=0?B[K]:h.a();if(E(Q,"path"),Q.length===0)continue;z=`${Q}/${z}`,Y=Q.charCodeAt(0)===O}return z=m(z,!Y,"/",n),Y?`/${z}`:z.length>0?z:"."},normalize(B){if(E(B,"path"),B.length===0)return".";const z=B.charCodeAt(0)===O,Y=B.charCodeAt(B.length-1)===O;return B=m(B,!z,"/",n),B.length===0?z?"/":Y?"./":".":(Y&&(B+="/"),z?`/${B}`:B)},isAbsolute(B){return E(B,"path"),B.length>0&&B.charCodeAt(0)===O},join(...B){if(B.length===0)return".";let z;for(let Y=0;Y0&&(z===void 0?z=K:z+=`/${K}`)}return z===void 0?".":g.normalize(z)},relative(B,z){if(E(B,"from"),E(z,"to"),B===z)return"";if(B=g.resolve(B),z=g.resolve(z),B===z)return"";const Y=1,K=B.length,Q=K-Y,ee=1,Se=z.length-ee,fe=Qfe){if(z.charCodeAt(ee+te)===O)return z.slice(ee+te+1);if(te===0)return z.slice(ee+te)}else Q>fe&&(B.charCodeAt(Y+te)===O?q=te:te===0&&(q=0));let U="";for(te=Y+q+1;te<=K;++te)(te===K||B.charCodeAt(te)===O)&&(U+=U.length===0?"..":"/..");return`${U}${z.slice(ee+q)}`},toNamespacedPath(B){return B},dirname(B){if(E(B,"path"),B.length===0)return".";const z=B.charCodeAt(0)===O;let Y=-1,K=!0;for(let Q=B.length-1;Q>=1;--Q)if(B.charCodeAt(Q)===O){if(!K){Y=Q;break}}else K=!1;return Y===-1?z?"/":".":z&&Y===1?"//":B.slice(0,Y)},basename(B,z){z!==void 0&&E(z,"ext"),E(B,"path");let Y=0,K=-1,Q=!0,ee;if(z!==void 0&&z.length>0&&z.length<=B.length){if(z===B)return"";let Se=z.length-1,fe=-1;for(ee=B.length-1;ee>=0;--ee){const q=B.charCodeAt(ee);if(q===O){if(!Q){Y=ee+1;break}}else fe===-1&&(Q=!1,fe=ee+1),Se>=0&&(q===z.charCodeAt(Se)?--Se===-1&&(K=ee):(Se=-1,K=fe))}return Y===K?K=fe:K===-1&&(K=B.length),B.slice(Y,K)}for(ee=B.length-1;ee>=0;--ee)if(B.charCodeAt(ee)===O){if(!Q){Y=ee+1;break}}else K===-1&&(Q=!1,K=ee+1);return K===-1?"":B.slice(Y,K)},extname(B){E(B,"path");let z=-1,Y=0,K=-1,Q=!0,ee=0;for(let Se=B.length-1;Se>=0;--Se){const fe=B.charCodeAt(Se);if(fe===O){if(!Q){Y=Se+1;break}continue}K===-1&&(Q=!1,K=Se+1),fe===k?z===-1?z=Se:ee!==1&&(ee=1):z!==-1&&(ee=-1)}return z===-1||K===-1||ee===0||ee===1&&z===K-1&&z===Y+1?"":B.slice(z,K)},format:c.bind(null,"/"),parse(B){E(B,"path");const z={root:"",dir:"",base:"",ext:"",name:""};if(B.length===0)return z;const Y=B.charCodeAt(0)===O;let K;Y?(z.root="/",K=1):K=0;let Q=-1,ee=0,Se=-1,fe=!0,q=B.length-1,te=0;for(;q>=K;--q){const U=B.charCodeAt(q);if(U===O){if(!fe){ee=q+1;break}continue}Se===-1&&(fe=!1,Se=q+1),U===k?Q===-1?Q=q:te!==1&&(te=1):Q!==-1&&(te=-1)}if(Se!==-1){const U=ee===0&&Y?1:ee;Q===-1||te===0||te===1&&Q===Se-1&&Q===ee+1?z.base=z.name=B.slice(U,Se):(z.name=B.slice(U,Q),z.base=B.slice(U,Se),z.ext=B.slice(Q,Se))}return ee>0?z.dir=B.slice(0,ee-1):Y&&(z.dir="/"),z},sep:"/",delimiter:":",win32:null,posix:null};g.win32=l.win32=l,g.posix=l.posix=g;const y=h.c==="win32"?l.normalize:g.normalize,C=h.c==="win32"?l.resolve:g.resolve,v=h.c==="win32"?l.relative:g.relative,D=h.c==="win32"?l.dirname:g.dirname,j=h.c==="win32"?l.basename:g.basename,V=h.c==="win32"?l.extname:g.extname,G=h.c==="win32"?l.sep:g.sep},Msxo:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"r",extensions:[".r",".rhistory",".rmd",".rprofile",".rt"],aliases:["R","r"],loader:function(){return e.e(370).then(e.bind(null,"Qx4d"))}})},MvK1:function(ft,w,e){"use strict";e.d(w,"a",function(){return P}),e.d(w,"b",function(){return L});class h{constructor(A,I,k){this._colorZoneBrand=void 0,this.from=A|0,this.to=I|0,this.colorId=k|0}static compare(A,I){return A.colorId===I.colorId?A.from===I.from?A.to-I.to:A.from-I.from:A.colorId-I.colorId}}class P{constructor(A,I,k){this._overviewRulerZoneBrand=void 0,this.startLineNumber=A,this.endLineNumber=I,this.color=k,this._colorZone=null}static compare(A,I){return A.color===I.color?A.startLineNumber===I.startLineNumber?A.endLineNumber-I.endLineNumber:A.startLineNumber-I.startLineNumber:A.colork&&(m=k-c);const l=p.color;let g=this._color2Id[l];g||(g=++this._lastAssignedId,this._color2Id[l]=g,this._id2Color[g]=l);const y=new h(m-c,m+c,g);p.setColorZone(y),u.push(y)}return this._colorZonesInvalid=!1,u.sort(h.compare),u}}},MyPo:function(ft,w,e){"use strict";e.r(w),e.d(w,"StandaloneGotoLineQuickAccessProvider",function(){return c}),e.d(w,"GotoLineAction",function(){return l});var h=e("pmY6"),P=e("sFUC"),L=e("H+DO"),A=e("3/fG");class I extends L.a{constructor(){super({canAcceptInBackground:!0})}provideWithoutTextEditor(g){const y=Object(A.a)("cannotRunGotoLine","Open a text editor first to go to a line.");return g.items=[{label:y}],g.ariaLabel=y,h.a.None}provideWithTextEditor(g,y,C){const v=g.editor,D=new h.b;D.add(y.onDidAccept(G=>{const[B]=y.selectedItems;if(B){if(!this.isValidLineNumber(v,B.lineNumber))return;this.gotoLocation(g,{range:this.toRange(B.lineNumber,B.column),keyMods:y.keyMods,preserveFocus:G.inBackground}),G.inBackground||y.hide()}}));const j=()=>{const G=this.parsePosition(v,y.value.trim().substr(I.PREFIX.length)),B=this.getPickLabel(v,G.lineNumber,G.column);if(y.items=[{lineNumber:G.lineNumber,column:G.column,label:B}],y.ariaLabel=B,!this.isValidLineNumber(v,G.lineNumber)){this.clearDecorations(v);return}const z=this.toRange(G.lineNumber,G.column);v.revealRangeInCenter(z,0),this.addDecorations(v,z)};j(),D.add(y.onDidChangeValue(()=>j()));const V=Object(P.a)(v);if(V){const G=V.getOptions(),B=G.get(59);B.renderType===2&&(V.updateOptions({lineNumbers:"on"}),D.add(Object(h.i)(()=>V.updateOptions({lineNumbers:"relative"}))))}return D}toRange(g=1,y=1){return{startLineNumber:g,startColumn:y,endLineNumber:g,endColumn:y}}parsePosition(g,y){const C=y.split(/,|:|#/).map(D=>parseInt(D,10)).filter(D=>!isNaN(D)),v=this.lineCount(g)+1;return{lineNumber:C[0]>0?C[0]:v+C[0],column:C[1]}}getPickLabel(g,y,C){if(this.isValidLineNumber(g,y))return this.isValidColumn(g,y,C)?Object(A.a)("gotoLineColumnLabel","Go to line {0} and character {1}.",y,C):Object(A.a)("gotoLineLabel","Go to line {0}.",y);const v=g.getPosition()||{lineNumber:1,column:1},D=this.lineCount(g);return D>1?Object(A.a)("gotoLineLabelEmptyWithLimit","Current Line: {0}, Character: {1}. Type a line number between 1 and {2} to navigate to.",v.lineNumber,v.column,D):Object(A.a)("gotoLineLabelEmpty","Current Line: {0}, Character: {1}. Type a line number to navigate to.",v.lineNumber,v.column)}isValidLineNumber(g,y){return!y||typeof y!="number"?!1:y>0&&y<=this.lineCount(g)}isValidColumn(g,y,C){if(!C||typeof C!="number")return!1;const v=this.getModel(g);if(!v)return!1;const D={lineNumber:y,column:C};return v.validatePosition(D).equals(D)}lineCount(g){var y,C;return(C=(y=this.getModel(g))===null||y===void 0?void 0:y.getLineCount())!==null&&C!==void 0?C:0}}I.PREFIX=":";var k=e("ic2d"),O=e("Lx4V"),S=e("Vxe3"),f=e("746U"),u=e("A9l+"),d=e("MI8n"),E=e("sswD"),p=e("wQH0"),n=e("Zr1c"),b=function(g,y,C,v){var D=arguments.length,j=D<3?y:v===null?v=Object.getOwnPropertyDescriptor(y,C):v,V;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")j=Reflect.decorate(g,y,C,v);else for(var G=g.length-1;G>=0;G--)(V=g[G])&&(j=(D<3?V(j):D>3?V(y,C,j):V(y,C))||j);return D>3&&j&&Object.defineProperty(y,C,j),j},m=function(g,y){return function(C,v){y(C,v,g)}};let c=class extends I{constructor(y){super();this.editorService=y,this.onDidActiveTextEditorControlChange=d.c.None}get activeTextEditorControl(){return Object(f.p)(this.editorService.getFocusedCodeEditor())}};c=b([m(0,S.a)],c),k.a.as(O.b.Quickaccess).registerQuickAccessProvider({ctor:c,prefix:c.PREFIX,helpEntries:[{description:u.b.gotoLineActionLabel,needsEditor:!0}]});class l extends E.b{constructor(){super({id:"editor.action.gotoLine",label:u.b.gotoLineActionLabel,alias:"Go to Line/Column...",precondition:void 0,kbOpts:{kbExpr:p.a.focus,primary:2048|37,mac:{primary:256|37},weight:100}})}run(g){g.get(n.a).quickAccess.show(c.PREFIX)}}Object(E.j)(l)},Mzro:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"shell",extensions:[".sh",".bash"],aliases:["Shell","sh"],loader:function(){return e.e(381).then(e.bind(null,"l/4i"))}})},NQK8:function(ft,w,e){"use strict";var h=e("M/lh"),P=e.n(h);e.o(h,"Emitter")&&e.d(w,"Emitter",function(){return h.Emitter}),e.o(h,"Range")&&e.d(w,"Range",function(){return h.Range}),e.o(h,"Uri")&&e.d(w,"Uri",function(){return h.Uri}),e.o(h,"editor")&&e.d(w,"editor",function(){return h.editor}),e.o(h,"languages")&&e.d(w,"languages",function(){return h.languages})},NR8r:function(ft,w,e){"use strict";e.d(w,"a",function(){return b});var h=e("OBOq"),P=e("X+cX"),L=e("pmY6"),A=e("synD"),I=e.n(A),k=e("sswD"),O=e("aokT"),S=e("3/fG"),f=e("T8No"),u=e("MD5Z"),d=e("nEHx"),E=e("t9D7"),p=function(l,g,y,C){var v=arguments.length,D=v<3?g:C===null?C=Object.getOwnPropertyDescriptor(g,y):C,j;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")D=Reflect.decorate(l,g,y,C);else for(var V=l.length-1;V>=0;V--)(j=l[V])&&(D=(v<3?j(D):v>3?j(g,y,D):j(g,y))||D);return v>3&&D&&Object.defineProperty(g,y,D),D},n=function(l,g){return function(y,C){g(y,C,l)}};let b=class l{constructor(g,y){this._messageWidget=new L.d,this._messageListeners=new L.b,this._editor=g,this._visible=l.MESSAGE_VISIBLE.bindTo(y),this._editorListener=this._editor.onDidAttemptReadOnlyEdit(()=>this._onDidAttemptReadOnlyEdit())}static get(g){return g.getContribution(l.ID)}dispose(){this._editorListener.dispose(),this._messageListeners.dispose(),this._messageWidget.dispose(),this._visible.reset()}showMessage(g,y){Object(h.a)(g),this._visible.set(!0),this._messageWidget.clear(),this._messageListeners.clear(),this._messageWidget.value=new c(this._editor,y,g),this._messageListeners.add(this._editor.onDidBlurEditorText(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeCursorPosition(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidDispose(()=>this.closeMessage())),this._messageListeners.add(this._editor.onDidChangeModel(()=>this.closeMessage())),this._messageListeners.add(new P.g(()=>this.closeMessage(),3e3));let C;this._messageListeners.add(this._editor.onMouseMove(v=>{if(!v.target.position)return;C?C.containsPosition(v.target.position)||this.closeMessage():C=new O.a(y.lineNumber-3,1,v.target.position.lineNumber+3,1)}))}closeMessage(){this._visible.reset(),this._messageListeners.clear(),this._messageWidget.value&&this._messageListeners.add(c.fadeOut(this._messageWidget.value))}_onDidAttemptReadOnlyEdit(){this._editor.hasModel()&&this.showMessage(S.a("editor.readonly","Cannot edit in read-only editor"),this._editor.getPosition())}};b.ID="editor.contrib.messageController",b.MESSAGE_VISIBLE=new f.c("messageVisible",!1,S.a("messageVisible","Whether the editor is currently showing an inline message")),b=p([n(1,f.b)],b);const m=k.c.bindToContribution(b.get);Object(k.k)(new m({id:"leaveEditorMessage",precondition:b.MESSAGE_VISIBLE,handler:l=>l.closeMessage(),kbOpts:{weight:100+30,primary:9}}));class c{constructor(l,{lineNumber:g,column:y},C){this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._editor=l,this._editor.revealLinesInCenterIfOutsideViewport(g,g,0),this._position={lineNumber:g,column:y-1},this._domNode=document.createElement("div"),this._domNode.classList.add("monaco-editor-overlaymessage");const v=document.createElement("div");v.classList.add("anchor","top"),this._domNode.appendChild(v);const D=document.createElement("div");D.classList.add("message"),D.textContent=C,this._domNode.appendChild(D);const j=document.createElement("div");j.classList.add("anchor","below"),this._domNode.appendChild(j),this._editor.addContentWidget(this),this._domNode.classList.add("fadeIn")}static fadeOut(l){let g;const y=()=>{l.dispose(),clearTimeout(g),l.getDomNode().removeEventListener("animationend",y)};return g=setTimeout(y,110),l.getDomNode().addEventListener("animationend",y),l.getDomNode().classList.add("fadeOut"),{dispose:y}}dispose(){this._editor.removeContentWidget(this)}getId(){return"messageoverlay"}getDomNode(){return this._domNode}getPosition(){return{position:this._position,preference:[1,2]}}afterRender(l){this._domNode.classList.toggle("below",l===2)}}Object(k.l)(b.ID,b),Object(E.f)((l,g)=>{const y=l.getColor(u.ub);if(y){let D=l.type===d.a.HIGH_CONTRAST?2:1;g.addRule(`.monaco-editor .monaco-editor-overlaymessage .anchor.below { border-top-color: ${y}; }`),g.addRule(`.monaco-editor .monaco-editor-overlaymessage .anchor.top { border-bottom-color: ${y}; }`),g.addRule(`.monaco-editor .monaco-editor-overlaymessage .message { border: ${D}px solid ${y}; }`)}const C=l.getColor(u.tb);C&&g.addRule(`.monaco-editor .monaco-editor-overlaymessage .message { background-color: ${C}; }`);const v=l.getColor(u.vb);v&&g.addRule(`.monaco-editor .monaco-editor-overlaymessage .message { color: ${v}; }`)})},"O/se":function(ft,w,e){"use strict";e.d(w,"a",function(){return S});var h=e("EffR"),P=e("zrhQ"),L=e("qj0h"),A=e("N0LK"),I=e("VPJY"),k=e.n(I);const O={badgeBackground:P.a.fromHex("#4D4D4D"),badgeForeground:P.a.fromHex("#FFFFFF")};class S{constructor(f,u){this.count=0,this.options=u||Object.create(null),Object(L.f)(this.options,O,!1),this.badgeBackground=this.options.badgeBackground,this.badgeForeground=this.options.badgeForeground,this.badgeBorder=this.options.badgeBorder,this.element=Object(h.q)(f,Object(h.a)(".monaco-count-badge")),this.countFormat=this.options.countFormat||"{0}",this.titleFormat=this.options.titleFormat||"",this.setCount(this.options.count||0)}setCount(f){this.count=f,this.render()}setTitleFormat(f){this.titleFormat=f,this.render()}render(){this.element.textContent=Object(A.v)(this.countFormat,this.count),this.element.title=Object(A.v)(this.titleFormat,this.count),this.applyStyles()}style(f){this.badgeBackground=f.badgeBackground,this.badgeForeground=f.badgeForeground,this.badgeBorder=f.badgeBorder,this.applyStyles()}applyStyles(){if(this.element){const f=this.badgeBackground?this.badgeBackground.toString():"",u=this.badgeForeground?this.badgeForeground.toString():"",d=this.badgeBorder?this.badgeBorder.toString():"";this.element.style.backgroundColor=f,this.element.style.color=u,this.element.style.borderWidth=d?"1px":"",this.element.style.borderStyle=d?"solid":"",this.element.style.borderColor=d}}}},OAO6:function(ft,w,e){"use strict";e.d(w,"a",function(){return P}),e.d(w,"b",function(){return L}),e.d(w,"c",function(){return A}),e.d(w,"d",function(){return I});var h=e("Cg/j");const P=Object(h.c)("undoRedoService");class L{constructor(k,O){this.resource=k,this.elements=O}}class A{constructor(){this.id=A._ID++,this.order=1}nextOrder(){return this.id===0?0:this.order++}}A._ID=0,A.None=new A;class I{constructor(){this.id=I._ID++,this.order=1}nextOrder(){return this.id===0?0:this.order++}}I._ID=0,I.None=new I},OBOq:function(ft,w,e){"use strict";e.d(w,"b",function(){return d}),e.d(w,"a",function(){return E}),e.d(w,"c",function(){return p});var h=e("EffR"),P=e("MNsG"),L=e("UCkY"),A=e.n(L);const I=2e4;let k,O,S,f,u;function d(b){k=document.createElement("div"),k.className="monaco-aria-container";const m=()=>{const l=document.createElement("div");return l.className="monaco-alert",l.setAttribute("role","alert"),l.setAttribute("aria-atomic","true"),k.appendChild(l),l};O=m(),S=m();const c=()=>{const l=document.createElement("div");return l.className="monaco-status",l.setAttribute("role","complementary"),l.setAttribute("aria-live","polite"),l.setAttribute("aria-atomic","true"),k.appendChild(l),l};f=c(),u=c(),b.appendChild(k)}function E(b){if(!k)return;O.textContent!==b?(h.t(S),n(O,b)):(h.t(O),n(S,b))}function p(b){if(!k)return;P.f?E(b):f.textContent!==b?(h.t(u),n(f,b)):(h.t(f),n(u,b))}function n(b,m){h.t(b),m.length>I&&(m=m.substr(0,I)),b.textContent=m,b.style.visibility="hidden",b.style.visibility="visible"}},OKK6:function(ft,w,e){},OOlL:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"azcli",extensions:[".azcli"],aliases:["Azure CLI","azcli"],loader:function(){return e.e(323).then(e.bind(null,"NlLO"))}})},OhnE:function(ft,w,e){},PTeM:function(ft,w,e){"use strict";e.d(w,"d",function(){return I}),e.d(w,"b",function(){return k}),e.d(w,"c",function(){return S}),e.d(w,"a",function(){return f});var h=e("MrjW"),P=e("MNsG"),L=e("N0LK");function A(u){return u.replace(/[\\/]/g,h.e.sep)}function I(u){return u.indexOf("/")===-1&&(u=A(u)),/^[a-zA-Z]:(\/|$)/.test(u)&&(u="/"+u),u}function k(u,d,E,p=h.h){if(u===d)return!0;if(!u||!d)return!1;if(d.length>u.length)return!1;if(E){const n=Object(L.R)(u,d);if(!n)return!1;if(d.length===u.length)return!0;let b=d.length;return d.charAt(d.length-1)===p&&b--,u.charAt(b)===p}return d.charAt(d.length-1)!==p&&(d+=p),u.indexOf(d)===0}function O(u){return u>=65&&u<=90||u>=97&&u<=122}function S(u){const d=Object(h.d)(u);return P.i?u.length>3?!1:f(d)&&(u.length===2||d.charCodeAt(2)===92):d===h.e.sep}function f(u){return P.i?O(u.charCodeAt(0))&&u.charCodeAt(1)===58:!1}},Q4rV:function(ft,w,e){"use strict";e.d(w,"a",function(){return L});var h=e("HpOR"),P=e("bY76");function L(I){let k=JSON.parse(I);return k=A(k),k}function A(I,k=0){if(!I||k>200)return I;if(typeof I=="object"){switch(I.$mid){case 1:return P.a.revive(I);case 2:return new RegExp(I.source,I.flags)}if(I instanceof h.a||I instanceof Uint8Array)return I;if(Array.isArray(I))for(let O=0;O=0;ve--)(Ne=Le[ve])&&(De=(oe<3?Ne(De):oe>3?Ne(ce,me,De):Ne(ce,me))||De);return oe>3&&De&&Object.defineProperty(ce,me,De),De},Q=function(Le,ce){return function(me,Oe){ce(me,Oe,Le)}};const ee=new y.c("renameInputVisible",!1,Object(l.a)("renameInputVisible","Whether the rename input widget is visible"));let Se=class{constructor(ce,me,Oe,oe,De){this._editor=ce,this._acceptKeybindings=me,this._themeService=Oe,this._keybindingService=oe,this._disposables=new I.b,this.allowEditorOverflow=!0,this._visibleContextKey=ee.bindTo(De),this._editor.addContentWidget(this),this._disposables.add(this._editor.onDidChangeConfiguration(Ne=>{Ne.hasChanged(43)&&this._updateFont()})),this._disposables.add(Oe.onDidColorThemeChange(this._updateStyles,this))}dispose(){this._disposables.dispose(),this._editor.removeContentWidget(this)}getId(){return"__renameInputWidget"}getDomNode(){if(!this._domNode){this._domNode=document.createElement("div"),this._domNode.className="monaco-editor rename-box",this._input=document.createElement("input"),this._input.className="rename-input",this._input.type="text",this._input.setAttribute("aria-label",Object(l.a)("renameAriaLabel","Rename input. Type new name and press Enter to commit.")),this._domNode.appendChild(this._input),this._label=document.createElement("div"),this._label.className="rename-label",this._domNode.appendChild(this._label);const ce=()=>{var me,Oe;const[oe,De]=this._acceptKeybindings;this._keybindingService.lookupKeybinding(oe),this._label.innerText=Object(l.a)({key:"label",comment:['placeholders are keybindings, e.g "F2 to Rename, Shift+F2 to Preview"']},"{0} to Rename, {1} to Preview",(me=this._keybindingService.lookupKeybinding(oe))===null||me===void 0?void 0:me.getLabel(),(Oe=this._keybindingService.lookupKeybinding(De))===null||Oe===void 0?void 0:Oe.getLabel())};ce(),this._disposables.add(this._keybindingService.onDidUpdateKeybindings(ce)),this._updateFont(),this._updateStyles(this._themeService.getColorTheme())}return this._domNode}_updateStyles(ce){var me,Oe,oe,De;if(!this._input||!this._domNode)return;const Ne=ce.getColor(z.Tc);this._domNode.style.backgroundColor=String((me=ce.getColor(z.cb))!==null&&me!==void 0?me:""),this._domNode.style.boxShadow=Ne?` 0 0 8px 2px ${Ne}`:"",this._domNode.style.color=String((Oe=ce.getColor(z.pb))!==null&&Oe!==void 0?Oe:""),this._input.style.backgroundColor=String((oe=ce.getColor(z.nb))!==null&&oe!==void 0?oe:"");const ve=ce.getColor(z.ob);this._input.style.borderWidth=ve?"1px":"0px",this._input.style.borderStyle=ve?"solid":"none",this._input.style.borderColor=(De=ve==null?void 0:ve.toString())!==null&&De!==void 0?De:"none"}_updateFont(){if(!this._input||!this._label)return;const ce=this._editor.getOption(43);this._input.style.fontFamily=ce.fontFamily,this._input.style.fontWeight=ce.fontWeight,this._input.style.fontSize=`${ce.fontSize}px`,this._label.style.fontSize=`${ce.fontSize*.8}px`}getPosition(){return this._visible?{position:this._position,preference:[2,1]}:null}afterRender(ce){ce||this.cancelInput(!0)}acceptInput(ce){this._currentAcceptInput&&this._currentAcceptInput(ce)}cancelInput(ce){this._currentCancelInput&&this._currentCancelInput(ce)}getInput(ce,me,Oe,oe,De,Ne){this._domNode.classList.toggle("preview",De),this._position=new E.a(ce.startLineNumber,ce.startColumn),this._input.value=me,this._input.setAttribute("selectionStart",Oe.toString()),this._input.setAttribute("selectionEnd",oe.toString()),this._input.size=Math.max((ce.endColumn-ce.startColumn)*1.1,20);const ve=new I.b;return new Promise(re=>{this._currentCancelInput=we=>(this._currentAcceptInput=void 0,this._currentCancelInput=void 0,re(we),!0),this._currentAcceptInput=we=>{if(this._input.value.trim().length===0||this._input.value===me){this.cancelInput(!0);return}this._currentAcceptInput=void 0,this._currentCancelInput=void 0,re({newName:this._input.value,wantsPreview:De&&we})},Ne.onCancellationRequested(()=>this.cancelInput(!0)),ve.add(this._editor.onDidBlurEditorWidget(()=>this.cancelInput(!1))),this._show()}).finally(()=>{ve.dispose(),this._hide()})}_show(){this._editor.revealLineInCenterIfOutsideViewport(this._position.lineNumber,0),this._visible=!0,this._visibleContextKey.set(!0),this._editor.layoutContentWidget(this),setTimeout(()=>{this._input.focus(),this._input.setSelectionRange(parseInt(this._input.getAttribute("selectionStart")),parseInt(this._input.getAttribute("selectionEnd")))},100)}_hide(){this._visible=!1,this._visibleContextKey.reset(),this._editor.layoutContentWidget(this)}};Se=K([Q(2,Y.b),Q(3,B.a),Q(4,y.b)],Se);var fe=function(Le,ce,me,Oe){var oe=arguments.length,De=oe<3?ce:Oe===null?Oe=Object.getOwnPropertyDescriptor(ce,me):Oe,Ne;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")De=Reflect.decorate(Le,ce,me,Oe);else for(var ve=Le.length-1;ve>=0;ve--)(Ne=Le[ve])&&(De=(oe<3?Ne(De):oe>3?Ne(ce,me,De):Ne(ce,me))||De);return oe>3&&De&&Object.defineProperty(ce,me,De),De},q=function(Le,ce){return function(me,Oe){ce(me,Oe,Le)}},te=function(Le,ce,me,Oe){function oe(De){return De instanceof me?De:new me(function(Ne){Ne(De)})}return new(me||(me=Promise))(function(De,Ne){function ve(Ie){try{we(Oe.next(Ie))}catch(ge){Ne(ge)}}function re(Ie){try{we(Oe.throw(Ie))}catch(ge){Ne(ge)}}function we(Ie){Ie.done?De(Ie.value):oe(Ie.value).then(ve,re)}we((Oe=Oe.apply(Le,ce||[])).next())})};class U{constructor(Le,ce){this.model=Le,this.position=ce,this._providerRenameIdx=0,this._providers=b.z.ordered(Le)}hasProvider(){return this._providers.length>0}resolveRenameLocation(Le){return te(this,void 0,void 0,function*(){const ce=[];for(this._providerRenameIdx=0;this._providerRenameIdx0?ce.join(` `):void 0}:{range:p.a.fromPositions(this.position),text:"",rejectReason:ce.length>0?ce.join(` `):void 0}})}provideRenameEdits(Le,ce){return te(this,void 0,void 0,function*(){return this._provideRenameEdits(Le,this._providerRenameIdx,[],ce)})}_provideRenameEdits(Le,ce,me,Oe){return te(this,void 0,void 0,function*(){const oe=this._providers[ce];if(!oe)return{edits:[],rejectReason:me.join(` `)};const De=yield oe.provideRenameEdits(this.model,this.position,Le,Oe);if(De){if(De.rejectReason)return this._provideRenameEdits(Le,ce+1,me.concat(De.rejectReason),Oe)}else return this._provideRenameEdits(Le,ce+1,me.concat(l.a("no result","No result.")),Oe);return De})}}function H(Le,ce,me){return te(this,void 0,void 0,function*(){const Oe=new U(Le,ce),oe=yield Oe.resolveRenameLocation(L.a.None);return(oe==null?void 0:oe.rejectReason)?{edits:[],rejectReason:oe.rejectReason}:Oe.provideRenameEdits(me,L.a.None)})}let W=class Le{constructor(ce,me,Oe,oe,De,Ne,ve){this.editor=ce,this._instaService=me,this._notificationService=Oe,this._bulkEditService=oe,this._progressService=De,this._logService=Ne,this._configService=ve,this._dispoableStore=new I.b,this._cts=new L.b,this._renameInputField=this._dispoableStore.add(new P.b(()=>this._dispoableStore.add(this._instaService.createInstance(Se,this.editor,["acceptRenameInput","acceptRenameInputWithPreview"]))))}static get(ce){return ce.getContribution(Le.ID)}dispose(){this._dispoableStore.dispose(),this._cts.dispose(!0)}run(){return te(this,void 0,void 0,function*(){if(this._cts.dispose(!0),!this.editor.hasModel())return;const ce=this.editor.getPosition(),me=new U(this.editor.getModel(),ce);if(!me.hasProvider())return;this._cts=new S.b(this.editor,4|1);let Oe;try{const Ie=me.resolveRenameLocation(this._cts.token);this._progressService.showWhile(Ie,250),Oe=yield Ie}catch(Ie){c.a.get(this.editor).showMessage(Ie||l.a("resolveRenameLocationFailed","An unknown error occurred while resolving rename location"),ce);return}if(!Oe)return;if(Oe.rejectReason){c.a.get(this.editor).showMessage(Oe.rejectReason,ce);return}if(this._cts.token.isCancellationRequested)return;this._cts.dispose(),this._cts=new S.b(this.editor,4|1,Oe.range);let oe=this.editor.getSelection(),De=0,Ne=Oe.text.length;!p.a.isEmpty(oe)&&!p.a.spansMultipleLines(oe)&&p.a.containsRange(Oe.range,oe)&&(De=Math.max(0,oe.startColumn-Oe.range.startColumn),Ne=Math.min(Oe.range.endColumn,oe.endColumn)-Oe.range.startColumn);const ve=this._bulkEditService.hasPreviewHandler()&&this._configService.getValue(this.editor.getModel().uri,"editor.rename.enablePreview"),re=yield this._renameInputField.value.getInput(Oe.range,Oe.text,De,Ne,ve,this._cts.token);if(typeof re=="boolean"){re&&this.editor.focus();return}this.editor.focus();const we=Object(P.l)(me.provideRenameEdits(re.newName,this._cts.token),this._cts.token).then(Ie=>te(this,void 0,void 0,function*(){if(!Ie||!this.editor.hasModel())return;if(Ie.rejectReason){this._notificationService.info(Ie.rejectReason);return}this.editor.setSelection(p.a.fromPositions(this.editor.getSelection().getPosition())),this._bulkEditService.apply(u.b.convert(Ie),{editor:this.editor,showPreview:re.wantsPreview,label:l.a("label","Renaming '{0}'",Oe==null?void 0:Oe.text),quotableLabel:l.a("quotableLabel","Renaming {0}",Oe==null?void 0:Oe.text)}).then(ge=>{ge.ariaSummary&&Object(h.a)(l.a("aria","Successfully renamed '{0}' to '{1}'. Summary: {2}",Oe.text,re.newName,ge.ariaSummary))}).catch(ge=>{this._notificationService.error(l.a("rename.failedApply","Rename failed to apply edits")),this._logService.error(ge)})}),Ie=>{this._notificationService.error(l.a("rename.failed","Rename failed to compute edits")),this._logService.error(Ie)});return this._progressService.showWhile(we,250),we})}acceptRenameInput(ce){this._renameInputField.value.acceptInput(ce)}cancelRenameInput(){this._renameInputField.value.cancelInput(!0)}};W.ID="editor.contrib.renameController",W=fe([q(1,C.a),q(2,D.a),q(3,u.a),q(4,j.a),q(5,v.b),q(6,m.a)],W);class ne extends f.b{constructor(){super({id:"editor.action.rename",label:l.a("rename.label","Rename Symbol"),alias:"Rename Symbol",precondition:y.a.and(n.a.writable,n.a.hasRenameProvider),kbOpts:{kbExpr:n.a.editorTextFocus,primary:60,weight:100},contextMenuOpts:{group:"1_modification",order:1.1}})}runCommand(Le,ce){const me=Le.get(d.a),[Oe,oe]=Array.isArray(ce)&&ce||[void 0,void 0];return O.a.isUri(Oe)&&E.a.isIPosition(oe)?me.openCodeEditor({resource:Oe},me.getActiveCodeEditor()).then(De=>{if(!De)return;De.setPosition(oe),De.invokeWithinContext(Ne=>(this.reportTelemetry(Ne,De),this.run(Ne,De)))},A.f):super.runCommand(Le,ce)}run(Le,ce){const me=W.get(ce);return me?me.run():Promise.resolve()}}Object(f.l)(W.ID,W),Object(f.j)(ne);const Ce=f.c.bindToContribution(W.get);Object(f.k)(new Ce({id:"acceptRenameInput",precondition:ee,handler:Le=>Le.acceptRenameInput(!1),kbOpts:{weight:100+99,kbExpr:n.a.focus,primary:3}})),Object(f.k)(new Ce({id:"acceptRenameInputWithPreview",precondition:y.a.and(ee,y.a.has("config.editor.rename.enablePreview")),handler:Le=>Le.acceptRenameInput(!0),kbOpts:{weight:100+99,kbExpr:n.a.focus,primary:1024+3}})),Object(f.k)(new Ce({id:"cancelRenameInput",precondition:ee,handler:Le=>Le.cancelRenameInput(),kbOpts:{weight:100+99,kbExpr:n.a.focus,primary:9,secondary:[1024|9]}})),Object(f.n)("_executeDocumentRenameProvider",function(Le,ce,...me){const[Oe]=me;return Object(k.c)(typeof Oe=="string"),H(Le,ce,Oe)}),Object(f.n)("_executePrepareRename",function(Le,ce){return te(this,void 0,void 0,function*(){const me=new U(Le,ce),Oe=yield me.resolveRenameLocation(L.a.None);if(Oe==null?void 0:Oe.rejectReason)throw new Error(Oe.rejectReason);return Oe})}),V.a.as(g.a.Configuration).registerConfiguration({id:"editor",properties:{"editor.rename.enablePreview":{scope:5,description:l.a("enablePreview","Enable/disable the ability to preview changes before renaming"),default:!0,type:"boolean"}}})},QDVR:function(ft,w,e){"use strict";e.d(w,"c",function(){return f}),e.d(w,"b",function(){return d}),e.d(w,"a",function(){return p});var h=e("N0LK"),P,L;class A{constructor(){this._value="",this._pos=0}reset(n){return this._value=n,this._pos=0,this}next(){return this._pos+=1,this}hasNext(){return this._pos!1){return new f(new O(n))}static forStrings(){return new f(new A)}static forConfigKeys(){return new f(new I)}clear(){this._root=void 0}set(n,b){const m=this._iter.reset(n);let c;this._root||(this._root=new S,this._root.segment=m.value());const l=[];for(c=this._root;;){const y=m.cmp(c.segment);if(y>0)c.left||(c.left=new S,c.left.segment=m.value()),l.push([-1,c]),c=c.left;else if(y<0)c.right||(c.right=new S,c.right.segment=m.value()),l.push([1,c]),c=c.right;else if(m.hasNext())m.next(),c.mid||(c.mid=new S,c.mid.segment=m.value()),l.push([0,c]),c=c.mid;else break}const g=c.value;c.value=b,c.key=n;for(let y=l.length-1;y>=0;y--){const C=l[y][1];C.updateHeight();const v=C.balanceFactor();if(v<-1||v>1){const D=l[y][0],j=l[y+1][0];if(D===1&&j===1)l[y][1]=C.rotateLeft();else if(D===-1&&j===-1)l[y][1]=C.rotateRight();else if(D===1&&j===-1)C.right=l[y+1][1]=l[y+1][1].rotateRight(),l[y][1]=C.rotateLeft();else if(D===-1&&j===1)C.left=l[y+1][1]=l[y+1][1].rotateLeft(),l[y][1]=C.rotateRight();else throw new Error;if(y>0)switch(l[y-1][0]){case-1:l[y-1][1].left=l[y][1];break;case 1:l[y-1][1].right=l[y][1];break;case 0:l[y-1][1].mid=l[y][1];break}else this._root=l[0][1]}}return g}get(n){var b;return(b=this._getNode(n))===null||b===void 0?void 0:b.value}_getNode(n){const b=this._iter.reset(n);let m=this._root;for(;m;){const c=b.cmp(m.segment);if(c>0)m=m.left;else if(c<0)m=m.right;else if(b.hasNext())b.next(),m=m.mid;else break}return m}has(n){const b=this._getNode(n);return!((b==null?void 0:b.value)===void 0&&(b==null?void 0:b.mid)===void 0)}delete(n){return this._delete(n,!1)}deleteSuperstr(n){return this._delete(n,!0)}_delete(n,b){var m;const c=this._iter.reset(n),l=[];let g=this._root;for(;g;){const y=c.cmp(g.segment);if(y>0)l.push([-1,g]),g=g.left;else if(y<0)l.push([1,g]),g=g.right;else if(c.hasNext())c.next(),l.push([0,g]),g=g.mid;else break}if(!g)return;if(b?(g.left=void 0,g.mid=void 0,g.right=void 0,g.height=1):(g.key=void 0,g.value=void 0),!g.mid&&!g.value)if(g.left&&g.right){const y=this._min(g.right),{key:C,value:v,segment:D}=y;this._delete(y.key,!1),g.key=C,g.value=v,g.segment=D}else{const y=(m=g.left)!==null&&m!==void 0?m:g.right;if(l.length>0){const[C,v]=l[l.length-1];switch(C){case-1:v.left=y;break;case 0:v.mid=y;break;case 1:v.right=y;break}}else this._root=y}for(let y=l.length-1;y>=0;y--){const C=l[y][1];C.updateHeight();const v=C.balanceFactor();if(v>1?(C.right.balanceFactor()>=0||(C.right=l[y+1][1]=l[y+1][1].rotateRight()),l[y][1]=C.rotateLeft()):v<-1&&(C.left.balanceFactor()<=0||(C.left=l[y+1][1]=l[y+1][1].rotateLeft()),l[y][1]=C.rotateRight()),y>0)switch(l[y-1][0]){case-1:l[y-1][1].left=l[y][1];break;case 1:l[y-1][1].right=l[y][1];break;case 0:l[y-1][1].mid=l[y][1];break}else this._root=l[0][1]}}_min(n){for(;n.left;)n=n.left;return n}findSubstr(n){const b=this._iter.reset(n);let m=this._root,c;for(;m;){const l=b.cmp(m.segment);if(l>0)m=m.left;else if(l<0)m=m.right;else if(b.hasNext())b.next(),c=m.value||c,m=m.mid;else break}return m&&m.value||c}findSuperstr(n){const b=this._iter.reset(n);let m=this._root;for(;m;){const c=b.cmp(m.segment);if(c>0)m=m.left;else if(c<0)m=m.right;else if(b.hasNext())b.next(),m=m.mid;else return m.mid?this._entries(m.mid):void 0}return}forEach(n){for(const[b,m]of this)n(m,b)}*[Symbol.iterator](){yield*this._entries(this._root)}*_entries(n){if(!n)return;n.left&&(yield*this._entries(n.left)),n.value&&(yield[n.key,n.value]),n.mid&&(yield*this._entries(n.mid)),n.right&&(yield*this._entries(n.right))}}class u{constructor(n,b){this.uri=n,this.value=b}}class d{constructor(n,b){this[P]="ResourceMap",n instanceof d?(this.map=new Map(n.map),this.toKey=b!=null?b:d.defaultToKey):(this.map=new Map,this.toKey=n!=null?n:d.defaultToKey)}set(n,b){return this.map.set(this.toKey(n),new u(n,b)),this}get(n){var b;return(b=this.map.get(this.toKey(n)))===null||b===void 0?void 0:b.value}has(n){return this.map.has(this.toKey(n))}get size(){return this.map.size}clear(){this.map.clear()}delete(n){return this.map.delete(this.toKey(n))}forEach(n,b){typeof b!="undefined"&&(n=n.bind(b));for(let[m,c]of this.map)n(c.value,c.uri,this)}*values(){for(let n of this.map.values())yield n.value}*keys(){for(let n of this.map.values())yield n.uri}*entries(){for(let n of this.map.values())yield[n.uri,n.value]}*[(P=Symbol.toStringTag,Symbol.iterator)](){for(let[,n]of this.map)yield[n.uri,n.value]}}d.defaultToKey=n=>n.toString();class E{constructor(){this[L]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){var n;return(n=this._head)===null||n===void 0?void 0:n.value}get last(){var n;return(n=this._tail)===null||n===void 0?void 0:n.value}has(n){return this._map.has(n)}get(n,b=0){const m=this._map.get(n);return m?(b!==0&&this.touch(m,b),m.value):void 0}set(n,b,m=0){let c=this._map.get(n);if(c)c.value=b,m!==0&&this.touch(c,m);else{c={key:n,value:b,next:void 0,previous:void 0};switch(m){case 0:this.addItemLast(c);break;case 1:this.addItemFirst(c);break;case 2:this.addItemLast(c);break;default:this.addItemLast(c);break}this._map.set(n,c),this._size++}return this}delete(n){return!!this.remove(n)}remove(n){const b=this._map.get(n);return b?(this._map.delete(n),this.removeItem(b),this._size--,b.value):void 0}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const n=this._head;return this._map.delete(n.key),this.removeItem(n),this._size--,n.value}forEach(n,b){const m=this._state;let c=this._head;for(;c;){if(b?n.bind(b)(c.value,c.key,this):n(c.value,c.key,this),this._state!==m)throw new Error("LinkedMap got modified during iteration.");c=c.next}}keys(){const n=this,b=this._state;let m=this._head;const c={[Symbol.iterator](){return c},next(){if(n._state!==b)throw new Error("LinkedMap got modified during iteration.");if(m){const l={value:m.key,done:!1};return m=m.next,l}else return{value:void 0,done:!0}}};return c}values(){const n=this,b=this._state;let m=this._head;const c={[Symbol.iterator](){return c},next(){if(n._state!==b)throw new Error("LinkedMap got modified during iteration.");if(m){const l={value:m.value,done:!1};return m=m.next,l}else return{value:void 0,done:!0}}};return c}entries(){const n=this,b=this._state;let m=this._head;const c={[Symbol.iterator](){return c},next(){if(n._state!==b)throw new Error("LinkedMap got modified during iteration.");if(m){const l={value:[m.key,m.value],done:!1};return m=m.next,l}else return{value:void 0,done:!0}}};return c}[(L=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(n){if(n>=this.size)return;if(n===0){this.clear();return}let b=this._head,m=this.size;for(;b&&m>n;)this._map.delete(b.key),b=b.next,m--;this._head=b,this._size=m,b&&(b.previous=void 0),this._state++}addItemFirst(n){if(!this._head&&!this._tail)this._tail=n;else if(this._head)n.next=this._head,this._head.previous=n;else throw new Error("Invalid list");this._head=n,this._state++}addItemLast(n){if(!this._head&&!this._tail)this._head=n;else if(this._tail)n.previous=this._tail,this._tail.next=n;else throw new Error("Invalid list");this._tail=n,this._state++}removeItem(n){if(n===this._head&&n===this._tail)this._head=void 0,this._tail=void 0;else if(n===this._head){if(!n.next)throw new Error("Invalid list");n.next.previous=void 0,this._head=n.next}else if(n===this._tail){if(!n.previous)throw new Error("Invalid list");n.previous.next=void 0,this._tail=n.previous}else{const b=n.next,m=n.previous;if(!b||!m)throw new Error("Invalid list");b.previous=m,m.next=b}n.next=void 0,n.previous=void 0,this._state++}touch(n,b){if(!this._head||!this._tail)throw new Error("Invalid list");if(b!==1&&b!==2)return;if(b===1){if(n===this._head)return;const m=n.next,c=n.previous;n===this._tail?(c.next=void 0,this._tail=c):(m.previous=c,c.next=m),n.previous=void 0,n.next=this._head,this._head.previous=n,this._head=n,this._state++}else if(b===2){if(n===this._tail)return;const m=n.next,c=n.previous;n===this._head?(m.previous=void 0,this._head=m):(m.previous=c,c.next=m),n.next=void 0,n.previous=this._tail,this._tail.next=n,this._tail=n,this._state++}}toJSON(){const n=[];return this.forEach((b,m)=>{n.push([m,b])}),n}fromJSON(n){this.clear();for(const[b,m]of n)this.set(b,m)}}class p extends E{constructor(n,b=1){super();this._limit=n,this._ratio=Math.min(Math.max(0,b),1)}get limit(){return this._limit}set limit(n){this._limit=n,this.checkTrim()}get(n,b=2){return super.get(n,b)}peek(n){return super.get(n,0)}set(n,b){return super.set(n,b,2),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}}},QFiB:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"markdown",extensions:[".md",".markdown",".mdown",".mkdn",".mkd",".mdwn",".mdtxt",".mdtext"],aliases:["Markdown","markdown"],loader:function(){return e.e(352).then(e.bind(null,"PhST"))}})},QMLA:function(ft,w,e){},QRHv:function(ft,w,e){"use strict";e.d(w,"f",function(){return k}),e.d(w,"b",function(){return f}),e.d(w,"c",function(){return u}),e.d(w,"a",function(){return E}),e.d(w,"e",function(){return b}),e.d(w,"d",function(){return m});var h=e("6OMU"),P=e("4bUh"),L=e("cGHE"),A=e("aokT"),I=e("twdY");function k(c){let l=0,g=0,y=0,C=0;for(let v=0,D=c.length;v>>0}const S=new Uint32Array(0).buffer;class f{constructor(){this.tokens=[]}add(c,l){if(this.tokens.length>0){const g=this.tokens[this.tokens.length-1],y=g.startLineNumber+g.tokens.length-1;if(y+1===c){g.tokens.push(l);return}}this.tokens.push(new p(c,[l]))}}class u{constructor(c){this._tokens=c,this._tokenCount=c.length/4}toString(c){let l=[];for(let g=0;gc)g=y-1;else{let v=y;for(;v>l&&this._getDeltaLine(v-1)===c;)v--;let D=y;for(;Dc||z===c&&K>=l)&&(zc||K===c&&ee>=l){if(KC?Q-=C-g:Q=g;else if(Y===l&&K===g)if(Y===y&&Q>C)Q-=C-g;else{G=!0;continue}else if(YC)Y===l?(K=g,Q=K+(Q-C)):(K=0,Q=K+(Q-C));else{G=!0;continue}else if(Y>y){if(j===0&&!G){V=D;break}Y-=j}else if(Y===y&&K>=C)c&&Y===0&&(K+=c,Q+=c),Y-=j,K-=C-g,Q-=C-g;else throw new Error("Not possible!");const Se=4*V;v[Se]=Y,v[Se+1]=K,v[Se+2]=Q,v[Se+3]=ee,V++}this._tokenCount=V}acceptInsertText(c,l,g,y,C,v){const D=g===0&&y===1&&(v>=48&&v<=57||v>=65&&v<=90||v>=97&&v<=122),j=this._tokens,V=this._tokenCount;for(let G=0;G0?l.charCodeAt(0):0)}acceptEdit(c,l,g,y,C){this._acceptDeleteRange(c),this._acceptInsertText(new L.a(c.startLineNumber,c.startColumn),l,g,y,C),this._updateEndLineNumber()}_acceptDeleteRange(c){if(c.startLineNumber===c.endLineNumber&&c.startColumn===c.endColumn)return;const l=c.startLineNumber-this.startLineNumber,g=c.endLineNumber-this.startLineNumber;if(g<0){const C=g-l;this.startLineNumber-=C;return}const y=this.tokens.getMaxDeltaLine();if(l>=y+1)return;if(l<0&&g>=y+1){this.startLineNumber=0,this.tokens.clear();return}if(l<0){const C=-l;this.startLineNumber-=C,this.tokens.acceptDeleteRange(c.startColumn-1,0,0,g,c.endColumn-1)}else this.tokens.acceptDeleteRange(0,l,c.startColumn-1,g,c.endColumn-1)}_acceptInsertText(c,l,g,y,C){if(l===0&&g===0)return;const v=c.lineNumber-this.startLineNumber;if(v<0){this.startLineNumber+=l;return}const D=this.tokens.getMaxDeltaLine();if(v>=D+1)return;this.tokens.acceptInsertText(v,c.column-1,l,g,y,C)}}class p{constructor(c,l){this.startLineNumber=c,this.tokens=l}}function n(c){return c instanceof Uint32Array?c:new Uint32Array(c)}class b{constructor(c){this._pieces=[],this._isComplete=!1,this._languageIdCodec=c}flush(){this._pieces=[],this._isComplete=!1}isEmpty(){return this._pieces.length===0}set(c,l){this._pieces=c||[],this._isComplete=l}setPartial(c,l){let g=c;if(l.length>0){const C=l[0].getRange(),v=l[l.length-1].getRange();if(!C||!v)return c;g=c.plusRange(C).plusRange(v)}let y=null;for(let C=0,v=this._pieces.length;Cg.endLineNumber){y=y||{index:C};break}if(D.removeTokens(g),D.isEmpty()){this._pieces.splice(C,1),C--,v--;continue}if(D.endLineNumberg.endLineNumber){y=y||{index:C};continue}const[j,V]=D.split(g);if(j.isEmpty()){y=y||{index:C};continue}if(V.isEmpty())continue;this._pieces.splice(C,1,j,V),C++,v++,y=y||{index:C}}return y=y||{index:this._pieces.length},l.length>0&&(this._pieces=h.b(this._pieces,y.index,l)),g}isComplete(){return this._isComplete}addSemanticTokens(c,l){const g=this._pieces;if(g.length===0)return l;const y=b._findFirstPieceWithLine(g,c),C=g[y].getLineTokens(c);if(!C)return l;const v=l.getCount(),D=C.getCount();let j=0,V=[],G=0,B=0;const z=(Y,K)=>{if(Y===B)return;B=Y,V[G++]=Y,V[G++]=K};for(let Y=0;Y>>0,fe=~Se>>>0;for(;jl)y=C-1;else{for(;C>g&&c[C-1].startLineNumber<=l&&l<=c[C-1].endLineNumber;)C--;return C}}return g}acceptEdit(c,l,g,y,C){for(const v of this._pieces)v.acceptEdit(c,l,g,y,C)}}class m{constructor(c){this._lineTokens=[],this._len=0,this._languageIdCodec=c}flush(){this._lineTokens=[],this._len=0}getTokens(c,l,g){let y=null;if(l1&&(C=I.E.getLanguageId(y[1])!==c),!C)return S}if(!y||y.length===0){const C=new Uint32Array(2);return C[0]=l,C[1]=O(c),C.buffer}return y[y.length-2]=l,y.byteOffset===0&&y.byteLength===y.buffer.byteLength?y.buffer:y}_ensureLine(c){for(;c>=this._len;)this._lineTokens[this._len]=null,this._len++}_deleteLines(c,l){if(l===0)return;c+l>this._len&&(l=this._len-c),this._lineTokens.splice(c,l),this._len-=l}_insertLines(c,l){if(l===0)return;let g=[];for(let y=0;y=this._len)return;if(c.startLineNumber===c.endLineNumber){if(c.startColumn===c.endColumn)return;this._lineTokens[l]=m._delete(this._lineTokens[l],c.startColumn-1,c.endColumn-1);return}this._lineTokens[l]=m._deleteEnding(this._lineTokens[l],c.startColumn-1);const g=c.endLineNumber-1;let y=null;g=this._len)return;if(l===0){this._lineTokens[y]=m._insert(this._lineTokens[y],c.column-1,g);return}this._lineTokens[y]=m._deleteEnding(this._lineTokens[y],c.column-1),this._lineTokens[y]=m._insert(this._lineTokens[y],c.column-1,g),this._insertLines(c.lineNumber,l)}static _deleteBeginning(c,l){return c===null||c===S?c:m._delete(c,0,l)}static _deleteEnding(c,l){if(c===null||c===S)return c;const g=n(c),y=g[g.length-2];return m._delete(c,l,y)}static _delete(c,l,g){if(c===null||c===S||l===g)return c;const y=n(c),C=y.length>>>1;if(l===0&&y[y.length-2]===g)return S;const v=P.a.findIndexInTokensArray(y,l),D=v>0?y[v-1<<1]:0,j=y[v<<1];if(gG&&(y[V++]=K,y[V++]=y[(Y<<1)+1],G=K)}if(V===y.length)return c;let z=new Uint32Array(V);return z.set(y.subarray(0,V),0),z.buffer}static _append(c,l){if(l===S)return c;if(c===S)return l;if(c===null)return c;if(l===null)return null;const g=n(c),y=n(l),C=y.length>>>1;let v=new Uint32Array(g.length+y.length);v.set(g,0);let D=g.length;const j=g[g.length-2];for(let V=0;V>>1;let v=P.a.findIndexInTokensArray(y,l);if(v>0){const D=y[v-1<<1];D===l&&v--}for(let D=v;D{this._resolveCache=void 0,this._isResolved=!1});this._resolveCache=Promise.resolve(this.provider.resolveCompletionItem(this.completion,Se)).then(q=>{Object.assign(this.completion,q),this._isResolved=!0,fe.dispose()},q=>{Object(P.e)(q)&&(this._resolveCache=void 0,this._isResolved=!1)})}return this._resolveCache})}}class C{constructor(Se=2,fe=new Set,q=new Set,te=!0){this.snippetSortOrder=Se,this.kindFilter=fe,this.providerFilter=q,this.showDeprecated=te}}C.default=new C;let v;function D(){return v}class j{constructor(Se,fe,q,te){this.items=Se,this.needsClipboard=fe,this.durations=q,this.disposable=te}}function V(Se,fe,q=C.default,te={triggerKind:0},U=h.a.None){return c(this,void 0,void 0,function*(){const H=new I.a(!0);fe=fe.clone();const W=Se.getWordAtPosition(fe),ne=W?new f.a(fe.lineNumber,W.startColumn,fe.lineNumber,W.endColumn):f.a.fromPositions(fe),Ce={replace:ne,insert:ne.setEndPosition(fe.lineNumber,fe.column)},Le=[],ce=new A.b,me=[];let Oe=!1;const oe=(Ne,ve,re)=>{var we,Ie,ge;if(!ve)return;for(let ye of ve.suggestions)if(!q.kindFilter.has(ye.kind)){if(!q.showDeprecated&&((we=ye==null?void 0:ye.tags)===null||we===void 0?void 0:we.includes(1)))continue;ye.range||(ye.range=Ce),ye.sortText||(ye.sortText=typeof ye.label=="string"?ye.label:ye.label.label),!Oe&&ye.insertTextRules&&ye.insertTextRules&4&&(Oe=E.c.guessNeedsClipboard(ye.insertText)),Le.push(new y(fe,ye,ve,Ne))}Object(A.g)(ve)&&ce.add(ve),me.push({providerName:(Ie=Ne._debugDisplayName)!==null&&Ie!==void 0?Ie:"unkown_provider",elapsedProvider:(ge=ve.duration)!==null&&ge!==void 0?ge:-1,elapsedOverall:re.elapsed()})},De=(()=>c(this,void 0,void 0,function*(){if(!v||q.kindFilter.has(27))return;if(q.providerFilter.size>0&&!q.providerFilter.has(v))return;const Ne=new I.a(!0),ve=yield v.provideCompletionItems(Se,fe,te,U);oe(v,ve,Ne)}))();for(let Ne of u.d.orderedGroups(Se)){let ve=Le.length;if(yield Promise.all(Ne.map(re=>c(this,void 0,void 0,function*(){if(q.providerFilter.size>0&&!q.providerFilter.has(re))return;try{const we=new I.a(!0),Ie=yield re.provideCompletionItems(Se,fe,te,U);oe(re,Ie,we)}catch(we){Object(P.g)(we)}}))),ve!==Le.length||U.isCancellationRequested)break}return yield De,U.isCancellationRequested?(ce.dispose(),Promise.reject(Object(P.b)())):new j(Le.sort(K(q.snippetSortOrder)),Oe,{entries:me,elapsed:H.elapsed()},ce)})}function G(Se,fe){if(Se.sortTextLow&&fe.sortTextLow){if(Se.sortTextLowfe.sortTextLow)return 1}return Se.completion.labelfe.completion.label?1:Se.completion.kind-fe.completion.kind}function B(Se,fe){if(Se.completion.kind!==fe.completion.kind){if(Se.completion.kind===27)return-1;if(fe.completion.kind===27)return 1}return G(Se,fe)}function z(Se,fe){if(Se.completion.kind!==fe.completion.kind){if(Se.completion.kind===27)return 1;if(fe.completion.kind===27)return-1}return G(Se,fe)}const Y=new Map;Y.set(0,B),Y.set(2,z),Y.set(1,G);function K(Se){return Y.get(Se)}b.a.registerCommand("_executeCompletionItemProvider",(Se,...fe)=>c(void 0,void 0,void 0,function*(){const[q,te,U,H]=fe;Object(k.c)(O.a.isUri(q)),Object(k.c)(S.a.isIPosition(te)),Object(k.c)(typeof U=="string"||!U),Object(k.c)(typeof H=="number"||!H);const W=yield Se.get(d.a).createModelReference(q);try{const ne={incomplete:!1,suggestions:[]},Ce=[],Le=yield V(W.object.textEditorModel,S.a.lift(te),void 0,{triggerCharacter:U,triggerKind:U?1:0});for(const ce of Le.items)Ce.length<(H!=null?H:0)&&Ce.push(ce.resolve(h.a.None)),ne.incomplete=ne.incomplete||ce.container.incomplete,ne.suggestions.push(ce.completion);try{return yield Promise.all(Ce),ne}finally{setTimeout(()=>Le.disposable.dispose(),100)}}finally{W.dispose()}}));const Q=new class{constructor(){this.onlyOnceSuggestions=[]}provideCompletionItems(){let Se=this.onlyOnceSuggestions.slice(0),fe={suggestions:Se};return this.onlyOnceSuggestions.length=0,fe}};u.d.register("*",Q);function ee(Se,fe){setTimeout(()=>{Q.onlyOnceSuggestions.push(...fe),Se.getContribution("editor.contrib.suggestController").triggerSuggest(new Set().add(Q))},0)}},QY8A:function(ft,w,e){"use strict";e.d(w,"a",function(){return no});var h=e("X+cX"),P=e("/cxE"),L=e("/kV6"),A=e("pmY6"),I=e("Vxe3"),k=e("cGHE"),O=e("aokT"),S=e("iNS8"),f=e("3/fG"),u=e("nnTU"),d=e("+7oY"),E=e("T8No"),p=e("Cg/j"),n=e("nrhi"),b=e("k9mg"),m=e("sM1p"),c=e("A+jI"),l=e("9o5J"),g=e("EffR"),y=e("44XX"),C=e("zrhQ"),v=e("MI8n"),D=e("tYmi"),j=e("gslv"),V=e("KaET"),G=e("03kh"),B=e("tX9W"),z=e("cMvZ"),Y=e("WBhO"),K=e("t49l"),Q=e("O/se"),ee=e("7lZ/"),Se=e("xONI"),fe=e("fpMC"),q=e("3rx1"),te=e("bexQ"),U=e("R8sh"),H=e("ptcw"),W=e("t9D7"),ne=function(lt,le,Pe,it){var Dt=arguments.length,kt=Dt<3?le:it===null?it=Object.getOwnPropertyDescriptor(le,Pe):it,eo;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")kt=Reflect.decorate(lt,le,Pe,it);else for(var bo=lt.length-1;bo>=0;bo--)(eo=lt[bo])&&(kt=(Dt<3?eo(kt):Dt>3?eo(le,Pe,kt):eo(le,Pe))||kt);return Dt>3&&kt&&Object.defineProperty(le,Pe,kt),kt},Ce=function(lt,le){return function(Pe,it){le(Pe,it,lt)}};let Le=class{constructor(le){this._resolverService=le}hasChildren(le){return le instanceof l.c?!0:le instanceof l.a}getChildren(le){if(le instanceof l.c)return le.groups;if(le instanceof l.a)return le.resolve(this._resolverService).then(Pe=>Pe.children);throw new Error("bad tree")}};Le=ne([Ce(0,K.a)],Le);class ce{getHeight(){return 23}getTemplateId(lt){return lt instanceof l.a?De.id:ve.id}}let me=class{constructor(le){this._keybindingService=le}getKeyboardNavigationLabel(le){var Pe;if(le instanceof l.b){const it=(Pe=le.parent.getPreview(le))===null||Pe===void 0?void 0:Pe.preview(le.range);if(it)return it.value}return Object(j.b)(le.uri)}};me=ne([Ce(0,te.a)],me);class Oe{getId(lt){return lt instanceof l.b?lt.id:lt.uri}}let oe=class extends A.a{constructor(le,Pe,it){super();this._uriLabel=Pe;const Dt=document.createElement("div");Dt.classList.add("reference-file"),this.file=this._register(new Se.a(Dt,{supportHighlights:!0})),this.badge=new Q.a(g.q(Dt,g.a(".count"))),this._register(Object(H.a)(this.badge,it)),le.appendChild(Dt)}set(le,Pe){let it=Object(j.d)(le.uri);this.file.setLabel(Object(q.a)(le.uri),this._uriLabel.getUriLabel(it,{relative:!0}),{title:this._uriLabel.getUriLabel(le.uri),matches:Pe});const Dt=le.children.length;this.badge.setCount(Dt),Dt>1?this.badge.setTitleFormat(Object(f.a)("referencesCount","{0} references",Dt)):this.badge.setTitleFormat(Object(f.a)("referenceCount","{0} reference",Dt))}};oe=ne([Ce(1,U.a),Ce(2,W.b)],oe);let De=class lt{constructor(le){this._instantiationService=le,this.templateId=lt.id}renderTemplate(le){return this._instantiationService.createInstance(oe,le)}renderElement(le,Pe,it){it.set(le.element,Object(fe.c)(le.filterData))}disposeTemplate(le){le.dispose()}};De.id="FileReferencesRenderer",De=ne([Ce(0,p.a)],De);class Ne{constructor(lt){this.label=new ee.a(lt,!1)}set(lt,le){var Pe;const it=(Pe=lt.parent.getPreview(lt))===null||Pe===void 0?void 0:Pe.preview(lt.range);if(!it||!it.value)this.label.set(`${Object(j.b)(lt.uri)}:${lt.range.startLineNumber+1}:${lt.range.startColumn+1}`);else{const{value:Dt,highlight:kt}=it;le&&!fe.a.isDefault(le)?(this.label.element.classList.toggle("referenceMatch",!1),this.label.set(Dt,Object(fe.c)(le))):(this.label.element.classList.toggle("referenceMatch",!0),this.label.set(Dt,[kt]))}}}class ve{constructor(){this.templateId=ve.id}renderTemplate(lt){return new Ne(lt)}renderElement(lt,le,Pe){Pe.set(lt.element,lt.filterData)}disposeTemplate(){}}ve.id="OneReferenceRenderer";class re{getWidgetAriaLabel(){return Object(f.a)("treeAriaLabel","References")}getAriaLabel(lt){return lt.ariaMessage}}var we=e("MD5Z"),Ie=e("OAO6"),ge=function(lt,le,Pe,it){var Dt=arguments.length,kt=Dt<3?le:it===null?it=Object.getOwnPropertyDescriptor(le,Pe):it,eo;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")kt=Reflect.decorate(lt,le,Pe,it);else for(var bo=lt.length-1;bo>=0;bo--)(eo=lt[bo])&&(kt=(Dt<3?eo(kt):Dt>3?eo(le,Pe,kt):eo(le,Pe))||kt);return Dt>3&&kt&&Object.defineProperty(le,Pe,kt),kt},ye=function(lt,le){return function(Pe,it){le(Pe,it,lt)}},ze=function(lt,le,Pe,it){function Dt(kt){return kt instanceof Pe?kt:new Pe(function(eo){eo(kt)})}return new(Pe||(Pe=Promise))(function(kt,eo){function bo(Lo){try{So(it.next(Lo))}catch(xo){eo(xo)}}function ao(Lo){try{So(it.throw(Lo))}catch(xo){eo(xo)}}function So(Lo){Lo.done?kt(Lo.value):Dt(Lo.value).then(bo,ao)}So((it=it.apply(lt,le||[])).next())})};class xe{constructor(lt,le){this._editor=lt,this._model=le,this._decorations=new Map,this._decorationIgnoreSet=new Set,this._callOnDispose=new A.b,this._callOnModelChange=new A.b,this._callOnDispose.add(this._editor.onDidChangeModel(()=>this._onModelChanged())),this._onModelChanged()}dispose(){this._callOnModelChange.dispose(),this._callOnDispose.dispose(),this.removeDecorations()}_onModelChanged(){this._callOnModelChange.clear();const lt=this._editor.getModel();if(!lt)return;for(let le of this._model.references)if(le.uri.toString()===lt.uri.toString()){this._addDecorations(le.parent);return}}_addDecorations(lt){if(!this._editor.hasModel())return;this._callOnModelChange.add(this._editor.getModel().onDidChangeDecorations(()=>this._onDecorationChanged()));const le=[],Pe=[];for(let Dt=0,kt=lt.children.length;Dt{kt.equals(9)&&(this._keybindingService.dispatchEvent(kt,kt.target),kt.stopPropagation())},!0)),this._tree=this._instantiationService.createInstance(He,"ReferencesWidget",this._treeContainer,new ce,[this._instantiationService.createInstance(De),this._instantiationService.createInstance(ve)],this._instantiationService.createInstance(Le),it),this._splitView.addView({onDidChange:v.c.None,element:this._previewContainer,minimumSize:200,maximumSize:Number.MAX_VALUE,layout:kt=>{this._preview.layout({height:this._dim.height,width:kt})}},y.a.Distribute),this._splitView.addView({onDidChange:v.c.None,element:this._treeContainer,minimumSize:100,maximumSize:Number.MAX_VALUE,layout:kt=>{this._treeContainer.style.height=`${this._dim.height}px`,this._treeContainer.style.width=`${kt}px`,this._tree.layout(this._dim.height,kt)}},y.a.Distribute),this._disposables.add(this._splitView.onDidSashChange(()=>{this._dim.width&&(this.layoutData.ratio=this._splitView.getViewSize(0)/this._dim.width)},void 0));let Dt=(kt,eo)=>{kt instanceof l.b&&(eo==="show"&&this._revealReference(kt,!1),this._onDidSelectReference.fire({element:kt,kind:eo,source:"tree"}))};this._tree.onDidOpen(kt=>{kt.sideBySide?Dt(kt.element,"side"):kt.editorOptions.pinned?Dt(kt.element,"goto"):Dt(kt.element,"show")}),g.K(this._treeContainer)}_onWidth(le){this._dim&&this._doLayoutBody(this._dim.height,le)}_doLayoutBody(le,Pe){super._doLayoutBody(le,Pe),this._dim=new g.b(Pe,le),this.layoutData.heightInLines=this._viewZone?this._viewZone.heightInLines:this.layoutData.heightInLines,this._splitView.layout(Pe),this._splitView.resizeView(0,Pe*this.layoutData.ratio)}setSelection(le){return this._revealReference(le,!0).then(()=>{if(!this._model)return;this._tree.setSelection([le]),this._tree.setFocus([le])})}setModel(le){return this._disposeOnNewModel.clear(),this._model=le,this._model?this._onNewModel():Promise.resolve()}_onNewModel(){return this._model?this._model.isEmpty?(this.setTitle(""),this._messageContainer.innerText=f.a("noResults","No results"),g.W(this._messageContainer),Promise.resolve(void 0)):(g.K(this._messageContainer),this._decorationsManager=new xe(this._preview,this._model),this._disposeOnNewModel.add(this._decorationsManager),this._disposeOnNewModel.add(this._model.onDidChangeReferenceRange(le=>this._tree.rerender(le))),this._disposeOnNewModel.add(this._preview.onMouseDown(le=>{const{event:Pe,target:it}=le;if(Pe.detail!==2)return;const Dt=this._getFocusedReference();if(!Dt)return;this._onDidSelectReference.fire({element:{uri:Dt.uri,range:it.range},kind:Pe.ctrlKey||Pe.metaKey||Pe.altKey?"side":"open",source:"editor"})})),this.container.classList.add("results-loaded"),g.W(this._treeContainer),g.W(this._previewContainer),this._splitView.layout(this._dim.width),this.focusOnReferenceTree(),this._tree.setInput(this._model.groups.length===1?this._model.groups[0]:this._model)):Promise.resolve(void 0)}_getFocusedReference(){const[le]=this._tree.getFocus();return le instanceof l.b?le:le instanceof l.a&&le.children.length>0?le.children[0]:void 0}revealReference(le){return ze(this,void 0,void 0,function*(){yield this._revealReference(le,!1),this._onDidSelectReference.fire({element:le,kind:"goto",source:"tree"})})}_revealReference(le,Pe){return ze(this,void 0,void 0,function*(){if(this._revealedReference===le)return;this._revealedReference=le,le.uri.scheme!==D.c.inMemory?this.setTitle(Object(j.c)(le.uri),this._uriLabel.getUriLabel(Object(j.d)(le.uri))):this.setTitle(f.a("peekView.alternateTitle","References"));const it=this._textModelResolverService.createModelReference(le.uri);this._tree.getInput()===le.parent?this._tree.reveal(le):(Pe&&this._tree.reveal(le.parent),yield this._tree.expand(le.parent),this._tree.reveal(le));const Dt=yield it;if(!this._model){Dt.dispose();return}Object(A.f)(this._previewModelReference);const kt=Dt.object;if(kt){const eo=this._preview.getModel()===kt.textEditorModel?0:1,bo=O.a.lift(le.range).collapseToStart();this._previewModelReference=Dt,this._preview.setModel(kt.textEditorModel),this._preview.setSelection(bo),this._preview.revealRangeInCenter(bo,eo)}else this._preview.setModel(this._previewNotAvailableMessage),Dt.dispose()})}};st=ge([ye(3,W.b),ye(4,K.a),ye(5,p.a),ye(6,S.a),ye(7,U.a),ye(8,Ie.a),ye(9,te.a),ye(10,Y.a),ye(11,z.a)],st),Object(W.f)((lt,le)=>{const Pe=lt.getColor(S.m);Pe&&le.addRule(`.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight { background-color: ${Pe}; }`);const it=lt.getColor(S.h);it&&le.addRule(`.monaco-editor .reference-zone-widget .preview .reference-decoration { background-color: ${it}; }`);const Dt=lt.getColor(S.i);Dt&&le.addRule(`.monaco-editor .reference-zone-widget .preview .reference-decoration { border: 2px solid ${Dt}; box-sizing: border-box; }`);const kt=lt.getColor(we.b);kt&&le.addRule(`.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight { border: 1px dotted ${kt}; box-sizing: border-box; }`);const eo=lt.getColor(S.j);eo&&le.addRule(`.monaco-editor .reference-zone-widget .ref-tree { background-color: ${eo}; }`);const bo=lt.getColor(S.l);bo&&le.addRule(`.monaco-editor .reference-zone-widget .ref-tree { color: ${bo}; }`);const ao=lt.getColor(S.k);ao&&le.addRule(`.monaco-editor .reference-zone-widget .ref-tree .reference-file { color: ${ao}; }`);const So=lt.getColor(S.n);So&&le.addRule(`.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows > .monaco-list-row.selected:not(.highlighted) { background-color: ${So}; }`);const Lo=lt.getColor(S.o);Lo&&le.addRule(`.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows > .monaco-list-row.selected:not(.highlighted) { color: ${Lo} !important; }`);const xo=lt.getColor(S.f);xo&&le.addRule(`.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input { background-color: ${xo};}`);const _o=lt.getColor(S.g);_o&&le.addRule(`.monaco-editor .reference-zone-widget .preview .monaco-editor .margin { background-color: ${_o};}`)});var nt=function(lt,le,Pe,it){var Dt=arguments.length,kt=Dt<3?le:it===null?it=Object.getOwnPropertyDescriptor(le,Pe):it,eo;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")kt=Reflect.decorate(lt,le,Pe,it);else for(var bo=lt.length-1;bo>=0;bo--)(eo=lt[bo])&&(kt=(Dt<3?eo(kt):Dt>3?eo(le,Pe,kt):eo(le,Pe))||kt);return Dt>3&&kt&&Object.defineProperty(le,Pe,kt),kt},rt=function(lt,le){return function(Pe,it){le(Pe,it,lt)}},wt=function(lt,le,Pe,it){function Dt(kt){return kt instanceof Pe?kt:new Pe(function(eo){eo(kt)})}return new(Pe||(Pe=Promise))(function(kt,eo){function bo(Lo){try{So(it.next(Lo))}catch(xo){eo(xo)}}function ao(Lo){try{So(it.throw(Lo))}catch(xo){eo(xo)}}function So(Lo){Lo.done?kt(Lo.value):Dt(Lo.value).then(bo,ao)}So((it=it.apply(lt,le||[])).next())})};const Pt=new E.c("referenceSearchVisible",!1,f.a("referenceSearchVisible","Whether reference peek is visible, like 'Peek References' or 'Peek Definition'"));let no=class lt{constructor(le,Pe,it,Dt,kt,eo,bo,ao){this._defaultTreeKeyboardSupport=le,this._editor=Pe,this._editorService=Dt,this._notificationService=kt,this._instantiationService=eo,this._storageService=bo,this._configurationService=ao,this._disposables=new A.b,this._requestIdPool=0,this._ignoreModelChangeEvent=!1,this._referenceSearchVisible=Pt.bindTo(it)}static get(le){return le.getContribution(lt.ID)}dispose(){var le,Pe;this._referenceSearchVisible.reset(),this._disposables.dispose(),(le=this._widget)===null||le===void 0||le.dispose(),(Pe=this._model)===null||Pe===void 0||Pe.dispose(),this._widget=void 0,this._model=void 0}toggleWidget(le,Pe,it){let Dt;if(this._widget&&(Dt=this._widget.position),this.closeWidget(),!!Dt&&le.containsPosition(Dt))return;this._peekMode=it,this._referenceSearchVisible.set(!0),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>{this.closeWidget()})),this._disposables.add(this._editor.onDidChangeModel(()=>{this._ignoreModelChangeEvent||this.closeWidget()}));const kt="peekViewLayout",eo=Te.fromJSON(this._storageService.get(kt,0,"{}"));this._widget=this._instantiationService.createInstance(st,this._editor,this._defaultTreeKeyboardSupport,eo),this._widget.setTitle(f.a("labelLoading","Loading...")),this._widget.show(le),this._disposables.add(this._widget.onDidClose(()=>{Pe.cancel(),this._widget&&(this._storageService.store(kt,JSON.stringify(this._widget.layoutData),0,1),this._widget=void 0),this.closeWidget()})),this._disposables.add(this._widget.onDidSelectReference(ao=>{let{element:So,kind:Lo}=ao;if(!So)return;switch(Lo){case"open":(ao.source!=="editor"||!this._configurationService.getValue("editor.stablePeek"))&&this.openReference(So,!1,!1);break;case"side":this.openReference(So,!0,!1);break;case"goto":it?this._gotoReference(So):this.openReference(So,!1,!0);break}}));const bo=++this._requestIdPool;Pe.then(ao=>{var So;if(bo!==this._requestIdPool||!this._widget){ao.dispose();return}return(So=this._model)===null||So===void 0||So.dispose(),this._model=ao,this._widget.setModel(this._model).then(()=>{if(this._widget&&this._model&&this._editor.hasModel()){this._model.isEmpty?this._widget.setMetaTitle(""):this._widget.setMetaTitle(f.a("metaTitle.N","{0} ({1})",this._model.title,this._model.references.length));let Lo=this._editor.getModel().uri,xo=new k.a(le.startLineNumber,le.startColumn),_o=this._model.nearestReference(Lo,xo);if(_o)return this._widget.setSelection(_o).then(()=>{this._widget&&this._editor.getOption(76)==="editor"&&this._widget.focusOnPreviewEditor()})}return})},ao=>{this._notificationService.error(ao)})}changeFocusBetweenPreviewAndReferences(){if(!this._widget)return;this._widget.isPreviewEditorFocused()?this._widget.focusOnReferenceTree():this._widget.focusOnPreviewEditor()}goToNextOrPreviousReference(le){return wt(this,void 0,void 0,function*(){if(!this._editor.hasModel()||!this._model||!this._widget)return;const Pe=this._widget.position;if(!Pe)return;const it=this._model.nearestReference(this._editor.getModel().uri,Pe);if(!it)return;const Dt=this._model.nextOrPreviousReference(it,le),kt=this._editor.hasTextFocus(),eo=this._widget.isPreviewEditorFocused();yield this._widget.setSelection(Dt),yield this._gotoReference(Dt),kt?this._editor.focus():this._widget&&eo&&this._widget.focusOnPreviewEditor()})}revealReference(le){return wt(this,void 0,void 0,function*(){if(!this._editor.hasModel()||!this._model||!this._widget)return;yield this._widget.revealReference(le)})}closeWidget(le=!0){var Pe,it;(Pe=this._widget)===null||Pe===void 0||Pe.dispose(),(it=this._model)===null||it===void 0||it.dispose(),this._referenceSearchVisible.reset(),this._disposables.clear(),this._widget=void 0,this._model=void 0,le&&this._editor.focus(),this._requestIdPool+=1}_gotoReference(le){this._widget&&this._widget.hide(),this._ignoreModelChangeEvent=!0;const Pe=O.a.lift(le.range).collapseToStart();return this._editorService.openCodeEditor({resource:le.uri,options:{selection:Pe}},this._editor).then(it=>{var Dt;if(this._ignoreModelChangeEvent=!1,!it||!this._widget){this.closeWidget();return}if(this._editor===it)this._widget.show(Pe),this._widget.focusOnReferenceTree();else{const kt=lt.get(it),eo=this._model.clone();this.closeWidget(),it.focus(),kt.toggleWidget(Pe,Object(h.h)(bo=>Promise.resolve(eo)),(Dt=this._peekMode)!==null&&Dt!==void 0?Dt:!1)}},it=>{this._ignoreModelChangeEvent=!1,Object(P.f)(it)})}openReference(le,Pe,it){Pe||this.closeWidget();const{uri:Dt,range:kt}=le;this._editorService.openCodeEditor({resource:Dt,options:{selection:kt,pinned:it}},this._editor,Pe)}};no.ID="editor.contrib.referencesController",no=nt([rt(2,E.b),rt(3,I.a),rt(4,m.a),rt(5,p.a),rt(6,c.a),rt(7,d.a)],no);function ht(lt,le){const Pe=Object(S.d)(lt);if(!Pe)return;let it=no.get(Pe);it&&le(it)}n.a.registerCommandAndKeybindingRule({id:"togglePeekWidgetFocus",weight:100,primary:Object(L.c)(2048|41,60),when:E.a.or(Pt,S.b.inPeekEditor),handler(lt){ht(lt,le=>{le.changeFocusBetweenPreviewAndReferences()})}}),n.a.registerCommandAndKeybindingRule({id:"goToNextReference",weight:100-10,primary:62,secondary:[70],when:E.a.or(Pt,S.b.inPeekEditor),handler(lt){ht(lt,le=>{le.goToNextOrPreviousReference(!0)})}}),n.a.registerCommandAndKeybindingRule({id:"goToPreviousReference",weight:100-10,primary:1024|62,secondary:[1024|70],when:E.a.or(Pt,S.b.inPeekEditor),handler(lt){ht(lt,le=>{le.goToNextOrPreviousReference(!1)})}}),u.a.registerCommandAlias("goToNextReferenceFromEmbeddedEditor","goToNextReference"),u.a.registerCommandAlias("goToPreviousReferenceFromEmbeddedEditor","goToPreviousReference"),u.a.registerCommandAlias("closeReferenceSearchEditor","closeReferenceSearch"),u.a.registerCommand("closeReferenceSearch",lt=>ht(lt,le=>le.closeWidget())),n.a.registerKeybindingRule({id:"closeReferenceSearch",weight:100-101,primary:9,secondary:[1024|9],when:E.a.and(S.b.inPeekEditor,E.a.not("config.editor.stablePeek"))}),n.a.registerKeybindingRule({id:"closeReferenceSearch",weight:200+50,primary:9,secondary:[1024|9],when:E.a.and(Pt,E.a.not("config.editor.stablePeek"))}),n.a.registerCommandAndKeybindingRule({id:"revealReference",weight:200,primary:3,mac:{primary:3,secondary:[2048|18]},when:E.a.and(Pt,b.e),handler(lt){var le;const Pe=lt.get(b.a),it=(le=Pe.lastFocusedList)===null||le===void 0?void 0:le.getFocus();Array.isArray(it)&&it[0]instanceof l.b&&ht(lt,Dt=>Dt.revealReference(it[0]))}}),n.a.registerCommandAndKeybindingRule({id:"openReferenceToSide",weight:100,primary:2048|3,mac:{primary:256|3},when:E.a.and(Pt,b.e),handler(lt){var le;const Pe=lt.get(b.a),it=(le=Pe.lastFocusedList)===null||le===void 0?void 0:le.getFocus();Array.isArray(it)&&it[0]instanceof l.b&&ht(lt,Dt=>Dt.openReference(it[0],!0,!0))}}),u.a.registerCommand("openReference",lt=>{var le;const Pe=lt.get(b.a),it=(le=Pe.lastFocusedList)===null||le===void 0?void 0:le.getFocus();Array.isArray(it)&&it[0]instanceof l.b&&ht(lt,Dt=>Dt.openReference(it[0],!1,!0))})},QaAZ:function(ft,w,e){},QiAa:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"redis",extensions:[".redis"],aliases:["redis"],loader:function(){return e.e(372).then(e.bind(null,"j6Xs"))}})},QuOb:function(ft,w,e){"use strict";e.d(w,"a",function(){return A});var h=e("MI8n"),P=e("pmY6");class L{constructor(d,E,p,n,b,m){this._scrollStateBrand=void 0,d=d|0,E=E|0,p=p|0,n=n|0,b=b|0,m=m|0,this.rawScrollLeft=p,this.rawScrollTop=m,d<0&&(d=0),p+d>E&&(p=E-d),p<0&&(p=0),n<0&&(n=0),m+n>b&&(m=b-n),m<0&&(m=0),this.width=d,this.scrollWidth=E,this.scrollLeft=p,this.height=n,this.scrollHeight=b,this.scrollTop=m}equals(d){return this.rawScrollLeft===d.rawScrollLeft&&this.rawScrollTop===d.rawScrollTop&&this.width===d.width&&this.scrollWidth===d.scrollWidth&&this.scrollLeft===d.scrollLeft&&this.height===d.height&&this.scrollHeight===d.scrollHeight&&this.scrollTop===d.scrollTop}withScrollDimensions(d,E){return new L(typeof d.width!="undefined"?d.width:this.width,typeof d.scrollWidth!="undefined"?d.scrollWidth:this.scrollWidth,E?this.rawScrollLeft:this.scrollLeft,typeof d.height!="undefined"?d.height:this.height,typeof d.scrollHeight!="undefined"?d.scrollHeight:this.scrollHeight,E?this.rawScrollTop:this.scrollTop)}withScrollPosition(d){return new L(this.width,this.scrollWidth,typeof d.scrollLeft!="undefined"?d.scrollLeft:this.rawScrollLeft,this.height,this.scrollHeight,typeof d.scrollTop!="undefined"?d.scrollTop:this.rawScrollTop)}createScrollEvent(d,E){const p=this.width!==d.width,n=this.scrollWidth!==d.scrollWidth,b=this.scrollLeft!==d.scrollLeft,m=this.height!==d.height,c=this.scrollHeight!==d.scrollHeight,l=this.scrollTop!==d.scrollTop;return{inSmoothScrolling:E,oldWidth:d.width,oldScrollWidth:d.scrollWidth,oldScrollLeft:d.scrollLeft,width:this.width,scrollWidth:this.scrollWidth,scrollLeft:this.scrollLeft,oldHeight:d.height,oldScrollHeight:d.scrollHeight,oldScrollTop:d.scrollTop,height:this.height,scrollHeight:this.scrollHeight,scrollTop:this.scrollTop,widthChanged:p,scrollWidthChanged:n,scrollLeftChanged:b,heightChanged:m,scrollHeightChanged:c,scrollTopChanged:l}}}class A extends P.a{constructor(d,E){super();this._scrollableBrand=void 0,this._onScroll=this._register(new h.b),this.onScroll=this._onScroll.event,this._smoothScrollDuration=d,this._scheduleAtNextAnimationFrame=E,this._state=new L(0,0,0,0,0,0),this._smoothScrolling=null}dispose(){this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),super.dispose()}setSmoothScrollDuration(d){this._smoothScrollDuration=d}validateScrollPosition(d){return this._state.withScrollPosition(d)}getScrollDimensions(){return this._state}setScrollDimensions(d,E){const p=this._state.withScrollDimensions(d,E);this._setState(p,Boolean(this._smoothScrolling)),this._smoothScrolling&&this._smoothScrolling.acceptScrollDimensions(this._state)}getFutureScrollPosition(){return this._smoothScrolling?this._smoothScrolling.to:this._state}getCurrentScrollPosition(){return this._state}setScrollPositionNow(d){const E=this._state.withScrollPosition(d);this._smoothScrolling&&(this._smoothScrolling.dispose(),this._smoothScrolling=null),this._setState(E,!1)}setScrollPositionSmooth(d,E){if(this._smoothScrollDuration===0)return this.setScrollPositionNow(d);if(this._smoothScrolling){d={scrollLeft:typeof d.scrollLeft=="undefined"?this._smoothScrolling.to.scrollLeft:d.scrollLeft,scrollTop:typeof d.scrollTop=="undefined"?this._smoothScrolling.to.scrollTop:d.scrollTop};const p=this._state.withScrollPosition(d);if(this._smoothScrolling.to.scrollLeft===p.scrollLeft&&this._smoothScrolling.to.scrollTop===p.scrollTop)return;let n;E?n=new S(this._smoothScrolling.from,p,this._smoothScrolling.startTime,this._smoothScrolling.duration):n=this._smoothScrolling.combine(this._state,p,this._smoothScrollDuration),this._smoothScrolling.dispose(),this._smoothScrolling=n}else{const p=this._state.withScrollPosition(d);this._smoothScrolling=S.start(this._state,p,this._smoothScrollDuration)}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{if(!this._smoothScrolling)return;this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling()})}_performSmoothScrolling(){if(!this._smoothScrolling)return;const d=this._smoothScrolling.tick(),E=this._state.withScrollPosition(d);if(this._setState(E,!0),!this._smoothScrolling)return;if(d.isDone){this._smoothScrolling.dispose(),this._smoothScrolling=null;return}this._smoothScrolling.animationFrameDisposable=this._scheduleAtNextAnimationFrame(()=>{if(!this._smoothScrolling)return;this._smoothScrolling.animationFrameDisposable=null,this._performSmoothScrolling()})}_setState(d,E){const p=this._state;if(p.equals(d))return;this._state=d,this._onScroll.fire(this._state.createScrollEvent(p,E))}}class I{constructor(d,E,p){this.scrollLeft=d,this.scrollTop=E,this.isDone=p}}function k(d,E){const p=E-d;return function(n){return d+p*u(n)}}function O(d,E,p){return function(n){return n2.5*p){let b,m;return d=0;U--)(te=K[U])&&(q=(fe<3?te(q):fe>3?te(Q,ee,q):te(Q,ee))||q);return fe>3&&q&&Object.defineProperty(Q,ee,q),q},D=function(K,Q){return function(ee,Se){Q(ee,Se,K)}};const j=new b.c("accessibilityHelpWidgetVisible",!1);let V=class K extends S.a{constructor(Q,ee){super();this._editor=Q,this._widget=this._register(ee.createInstance(B,this._editor))}static get(Q){return Q.getContribution(K.ID)}show(){this._widget.show()}hide(){this._widget.hide()}};V.ID="editor.contrib.accessibilityHelpController",V=v([D(1,m.a)],V);function G(K,Q){return!K||K.length===0?C.a.noSelection:K.length===1?Q?u.v(C.a.singleSelectionRange,K[0].positionLineNumber,K[0].positionColumn,Q):u.v(C.a.singleSelection,K[0].positionLineNumber,K[0].positionColumn):Q?u.v(C.a.multiSelectionRange,K.length,Q):K.length>0?u.v(C.a.multiSelection,K.length):""}let B=class K extends O.a{constructor(Q,ee,Se,fe){super();this._contextKeyService=ee,this._keybindingService=Se,this._openerService=fe,this._editor=Q,this._isVisibleKey=j.bindTo(this._contextKeyService),this._domNode=Object(A.b)(document.createElement("div")),this._domNode.setClassName("accessibilityHelpWidget"),this._domNode.setDisplay("none"),this._domNode.setAttribute("role","dialog"),this._domNode.setAttribute("aria-hidden","true"),this._contentDomNode=Object(A.b)(document.createElement("div")),this._contentDomNode.setAttribute("role","document"),this._domNode.appendChild(this._contentDomNode),this._isVisible=!1,this._register(this._editor.onDidLayoutChange(()=>{this._isVisible&&this._layout()})),this._register(L.o(this._contentDomNode.domNode,"keydown",q=>{if(!this._isVisible)return;if(q.equals(2048|35)&&(Object(k.a)(C.a.emergencyConfOn),this._editor.updateOptions({accessibilitySupport:"on"}),L.t(this._contentDomNode.domNode),this._buildContent(),this._contentDomNode.domNode.focus(),q.preventDefault(),q.stopPropagation()),q.equals(2048|38)){Object(k.a)(C.a.openingDocs);let te=this._editor.getRawOptions().accessibilityHelpUrl;typeof te=="undefined"&&(te="https://go.microsoft.com/fwlink/?linkid=852450"),this._openerService.open(d.a.parse(te)),q.preventDefault(),q.stopPropagation()}})),this.onblur(this._contentDomNode.domNode,()=>{this.hide()}),this._editor.addOverlayWidget(this)}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return K.ID}getDomNode(){return this._domNode.domNode}getPosition(){return{preference:null}}show(){if(this._isVisible)return;this._isVisible=!0,this._isVisibleKey.set(!0),this._layout(),this._domNode.setDisplay("block"),this._domNode.setAttribute("aria-hidden","false"),this._contentDomNode.domNode.tabIndex=0,this._buildContent(),this._contentDomNode.domNode.focus()}_descriptionForCommand(Q,ee,Se){let fe=this._keybindingService.lookupKeybinding(Q);return fe?u.v(ee,fe.getAriaLabel()):u.v(Se,Q)}_buildContent(){const Q=this._editor.getOptions(),ee=this._editor.getSelections();let Se=0;if(ee){const U=this._editor.getModel();U&&ee.forEach(H=>{Se+=U.getValueLengthInRange(H)})}let fe=G(ee,Se);Q.get(53)?Q.get(80)?fe+=C.a.readonlyDiffEditor:fe+=C.a.editableDiffEditor:Q.get(80)?fe+=C.a.readonlyEditor:fe+=C.a.editableEditor;const q=f.f?C.a.changeConfigToOnMac:C.a.changeConfigToOnWinLinux;switch(Q.get(2)){case 0:fe+=` - `+q;break;case 2:fe+=` - `+C.a.auto_on;break;case 1:fe+=` - `+C.a.auto_off,fe+=" "+q;break}Q.get(128)?fe+=` - `+this._descriptionForCommand(n.ToggleTabFocusModeAction.ID,C.a.tabFocusModeOnMsg,C.a.tabFocusModeOnMsgNoKb):fe+=` - `+this._descriptionForCommand(n.ToggleTabFocusModeAction.ID,C.a.tabFocusModeOffMsg,C.a.tabFocusModeOffMsgNoKb);const te=f.f?C.a.openDocMac:C.a.openDocWinLinux;fe+=` - `+te,fe+=` `+C.a.outroMsg,this._contentDomNode.domNode.appendChild(Object(I.b)(fe)),this._contentDomNode.domNode.setAttribute("aria-label",fe)}hide(){if(!this._isVisible)return;this._isVisible=!1,this._isVisibleKey.reset(),this._domNode.setDisplay("none"),this._domNode.setAttribute("aria-hidden","true"),this._contentDomNode.domNode.tabIndex=-1,L.t(this._contentDomNode.domNode),this._editor.focus()}_layout(){let Q=this._editor.getLayoutInfo(),ee=Math.max(5,Math.min(K.WIDTH,Q.width-40)),Se=Math.max(5,Math.min(K.HEIGHT,Q.height-40));this._domNode.setWidth(ee),this._domNode.setHeight(Se);let fe=Math.round((Q.height-Se)/2);this._domNode.setTop(fe);let q=Math.round((Q.width-ee)/2);this._domNode.setLeft(q)}};B.ID="editor.contrib.accessibilityHelpWidget",B.WIDTH=500,B.HEIGHT=300,B=v([D(1,b.b),D(2,c.a),D(3,l.a)],B);class z extends E.b{constructor(){super({id:"editor.action.showAccessibilityHelp",label:C.a.showAccessibilityHelpAction,alias:"Show Accessibility Help",precondition:void 0,kbOpts:{primary:512|59,weight:100,linux:{primary:512|1024|59,secondary:[512|59]}}})}run(K,Q){let ee=V.get(Q);ee&&ee.show()}}Object(E.l)(V.ID,V),Object(E.j)(z);const Y=E.c.bindToContribution(V.get);Object(E.k)(new Y({id:"closeAccessibilityHelp",precondition:j,handler:K=>K.hide(),kbOpts:{weight:100+100,kbExpr:p.a.focus,primary:9,secondary:[1024|9]}})),Object(y.f)((K,Q)=>{const ee=K.getColor(g.cb);ee&&Q.addRule(`.monaco-editor .accessibilityHelpWidget { background-color: ${ee}; }`);const Se=K.getColor(g.eb);Se&&Q.addRule(`.monaco-editor .accessibilityHelpWidget { color: ${Se}; }`);const fe=K.getColor(g.Tc);fe&&Q.addRule(`.monaco-editor .accessibilityHelpWidget { box-shadow: 0 2px 8px ${fe}; }`);const q=K.getColor(g.h);q&&Q.addRule(`.monaco-editor .accessibilityHelpWidget { border: 2px solid ${q}; }`)})},Sdnv:function(ft,w,e){"use strict";e.d(w,"b",function(){return h}),e.d(w,"a",function(){return P});function h(L,A,I){return Math.min(Math.max(L,A),I)}class P{constructor(){this._n=1,this._val=0}update(L){return this._val=this._val+(L-this._val)/this._n,this._n+=1,this}get value(){return this._val}}},SmQN:function(ft,w,e){"use strict";e.d(w,"a",function(){return Dt});var h=e("lKfe"),P=e("3/fG"),L=e("EffR"),A=e("ZlPH"),I=e("cMOf"),k=e("X+cX"),O=e("MI8n"),S=e("pmY6"),f=e("HdwC"),u=e("vATl"),d=e("Vxe3"),E=e("nB0o"),p=e("DTDp"),n=e("WqXY"),b=e("GJhM"),m=e("8HAY"),c=e("sswD"),l=e("/UlZ"),g=e("4bUh"),y=e("cGHE"),C=e("kYye"),v=e("baJR"),D=e("qNAo"),j=e("T8No"),V=e("MD5Z"),G=e("t9D7"),B=e("Vhoy"),z=e("v1vZ"),Y=e("WBhO"),K=function($e,je,Ue,Ye){var Mt=arguments.length,Bt=Mt<3?je:Ye===null?Ye=Object.getOwnPropertyDescriptor(je,Ue):Ye,$t;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Bt=Reflect.decorate($e,je,Ue,Ye);else for(var uo=$e.length-1;uo>=0;uo--)($t=$e[uo])&&(Bt=(Mt<3?$t(Bt):Mt>3?$t(je,Ue,Bt):$t(je,Ue))||Bt);return Mt>3&&Bt&&Object.defineProperty(je,Ue,Bt),Bt},Q=function($e,je){return function(Ue,Ye){je(Ue,Ye,$e)}},ee=function($e,je,Ue,Ye){function Mt(Bt){return Bt instanceof Ue?Bt:new Ue(function($t){$t(Bt)})}return new(Ue||(Ue=Promise))(function(Bt,$t){function uo(ut){try{zt(Ye.next(ut))}catch(Ct){$t(Ct)}}function Zt(ut){try{zt(Ye.throw(ut))}catch(Ct){$t(Ct)}}function zt(ut){ut.done?Bt(ut.value):Mt(ut.value).then(uo,Zt)}zt((Ye=Ye.apply($e,je||[])).next())})},Se;const fe=3;class q{constructor($e,je,Ue,Ye){this.originalLineStart=$e,this.originalLineEnd=je,this.modifiedLineStart=Ue,this.modifiedLineEnd=Ye}getType(){return this.originalLineStart===0?1:this.modifiedLineStart===0?2:0}}class te{constructor($e){this.entries=$e}}const U=Object(z.b)("diff-review-insert",B.b.add,P.a("diffReviewInsertIcon","Icon for 'Insert' in diff review.")),H=Object(z.b)("diff-review-remove",B.b.remove,P.a("diffReviewRemoveIcon","Icon for 'Remove' in diff review.")),W=Object(z.b)("diff-review-close",B.b.close,P.a("diffReviewCloseIcon","Icon for 'Close' in diff review."));let ne=class $e extends S.a{constructor(je,Ue){super();this._modeService=Ue,this._width=0,this._diffEditor=je,this._isVisible=!1,this.shadow=Object(A.b)(document.createElement("div")),this.shadow.setClassName("diff-review-shadow"),this.actionBarContainer=Object(A.b)(document.createElement("div")),this.actionBarContainer.setClassName("diff-review-actions"),this._actionBar=this._register(new n.a(this.actionBarContainer.domNode)),this._actionBar.push(new m.a("diffreview.close",P.a("label.close","Close"),"close-diff-review "+G.d.asClassName(W),!0,()=>ee(this,void 0,void 0,function*(){return this.hide()})),{label:!1,icon:!0}),this.domNode=Object(A.b)(document.createElement("div")),this.domNode.setClassName("diff-review monaco-editor-background"),this._content=Object(A.b)(document.createElement("div")),this._content.setClassName("diff-review-content"),this._content.setAttribute("role","code"),this.scrollbar=this._register(new b.a(this._content.domNode,{})),this.domNode.domNode.appendChild(this.scrollbar.getDomNode()),this._register(je.onDidUpdateDiff(()=>{if(!this._isVisible)return;this._diffs=this._compute(),this._render()})),this._register(je.getModifiedEditor().onDidChangeCursorPosition(()=>{if(!this._isVisible)return;this._render()})),this._register(L.o(this.domNode.domNode,"click",Ye=>{Ye.preventDefault();let Mt=L.x(Ye.target,"diff-review-row");Mt&&this._goToRow(Mt)})),this._register(L.o(this.domNode.domNode,"keydown",Ye=>{(Ye.equals(18)||Ye.equals(2048|18)||Ye.equals(512|18))&&(Ye.preventDefault(),this._goToRow(this._getNextRow())),(Ye.equals(16)||Ye.equals(2048|16)||Ye.equals(512|16))&&(Ye.preventDefault(),this._goToRow(this._getPrevRow())),(Ye.equals(9)||Ye.equals(2048|9)||Ye.equals(512|9)||Ye.equals(1024|9))&&(Ye.preventDefault(),this.hide()),(Ye.equals(10)||Ye.equals(3))&&(Ye.preventDefault(),this.accept())})),this._diffs=[],this._currentDiff=null}prev(){let je=0;if(this._isVisible||(this._diffs=this._compute()),this._isVisible){let Ye=-1;for(let Mt=0,Bt=this._diffs.length;Mt0){const Tt=je[zt-1];Tt.originalEndLineNumber===0?bt=Tt.originalStartLineNumber+1:bt=Tt.originalEndLineNumber+1,Tt.modifiedEndLineNumber===0?Lt=Tt.modifiedStartLineNumber+1:Lt=Tt.modifiedEndLineNumber+1}let Ot=Qe-fe+1,Ft=et-fe+1;if(Otbt){const Tt=bt-Ot;Ot=Ot+Tt,Ft=Ft+Tt}if(Ft>Lt){const Tt=Lt-Ft;Ot=Ot+Tt,Ft=Ft+Tt}ae[Re++]=new q(Qe,Ot,et,Ft)}Mt[Bt++]=new te(ae)}let $t=Mt[0].entries,uo=[],Zt=0;for(let zt=1,ut=Mt.length;ztCt)&&(Ct=vo),po!==0&&(We===0||pohe)&&(he=Oo)}let Me=document.createElement("div");Me.className="diff-review-row";let ue=document.createElement("div");ue.className="diff-review-cell diff-review-summary";const ae=Ct-ut+1,Re=he-We+1;ue.appendChild(document.createTextNode(`${uo+1}/${this._diffs.length}: @@ -${ut},${ae} +${We},${Re} @@`)),Me.setAttribute("data-line",String(We));const Qe=Ft=>Ft===0?P.a("no_lines_changed","no lines changed"):Ft===1?P.a("one_line_changed","1 line changed"):P.a("more_lines_changed","{0} lines changed",Ft),et=Qe(ae),bt=Qe(Re);Me.setAttribute("aria-label",P.a({key:"header",comment:["This is the ARIA label for a git diff header.","A git diff header looks like this: @@ -154,12 +159,39 @@.","That encodes that at original line 154 (which is now line 159), 12 lines were removed/changed with 39 lines.","Variables 0 and 1 refer to the diff index out of total number of diffs.","Variables 2 and 4 will be numbers (a line number).",'Variables 3 and 5 will be "no lines changed", "1 line changed" or "X lines changed", localized separately.']},"Difference {0} of {1}: original line {2}, {3}, modified line {4}, {5}",uo+1,this._diffs.length,ut,et,We,bt)),Me.appendChild(ue),Me.setAttribute("role","listitem"),zt.appendChild(Me);const Lt=Ue.get(58);let Ot=We;for(let Ft=0,Tt=Zt.length;Ft$e}),ne=K([Q(1,Y.a)],ne),Object(G.f)(($e,je)=>{const Ue=$e.getColor(C.D);Ue&&je.addRule(`.monaco-diff-editor .diff-review-line-number { color: ${Ue}; }`);const Ye=$e.getColor(V.Ec);Ye&&je.addRule(`.monaco-diff-editor .diff-review-shadow { box-shadow: ${Ye} 0 -6px 6px -6px inset; }`)});class Ce extends c.b{constructor(){super({id:"editor.action.diffReview.next",label:P.a("editor.action.diffReview.next","Go to Next Difference"),alias:"Go to Next Difference",precondition:j.a.has("isInDiffEditor"),kbOpts:{kbExpr:null,primary:65,weight:100}})}run($e,je){const Ue=ce($e);Ue&&Ue.diffReviewNext()}}class Le extends c.b{constructor(){super({id:"editor.action.diffReview.prev",label:P.a("editor.action.diffReview.prev","Go to Previous Difference"),alias:"Go to Previous Difference",precondition:j.a.has("isInDiffEditor"),kbOpts:{kbExpr:null,primary:1024|65,weight:100}})}run($e,je){const Ue=ce($e);Ue&&Ue.diffReviewPrev()}}function ce($e){const je=$e.get(d.a),Ue=je.listDiffEditors(),Ye=je.getActiveCodeEditor();if(!Ye)return null;for(let Mt=0,Bt=Ue.length;MtYe.modifiedStartLineNumber?P.a("diff.clipboard.copyDeletedLinesContent.label","Copy deleted lines"):P.a("diff.clipboard.copyDeletedLinesContent.single.label","Copy deleted line"):Ye.originalEndLineNumber>Ye.modifiedStartLineNumber?P.a("diff.clipboard.copyChangedLinesContent.label","Copy changed lines"):P.a("diff.clipboard.copyChangedLinesContent.single.label","Copy changed line"),void 0,!0,()=>ze(this,void 0,void 0,function*(){const Me=new me.a(Ye.originalStartLineNumber,1,Ye.originalEndLineNumber+1,1),ue=Ye.originalModel.getValueInRange(Me);yield this._clipboardService.writeText(ue)})));let ut=0,Ct;Ye.originalEndLineNumber>Ye.modifiedStartLineNumber&&(Ct=new m.a("diff.clipboard.copyDeletedLineContent",zt?P.a("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",Ye.originalStartLineNumber):P.a("diff.clipboard.copyChangedLineContent.label","Copy changed line ({0})",Ye.originalStartLineNumber),void 0,!0,()=>ze(this,void 0,void 0,function*(){const Me=Ye.originalModel.getLineContent(Ye.originalStartLineNumber+ut);if(Me===""){const ue=Ye.originalModel.getEndOfLineSequence();yield this._clipboardService.writeText(ue===0?` `:`\r `)}else yield this._clipboardService.writeText(Me)})),Zt.push(Ct));const We=Ue.getOption(80);We||Zt.push(new m.a("diff.inline.revertChange",P.a("diff.inline.revertChange.label","Revert this change"),void 0,!0,()=>ze(this,void 0,void 0,function*(){const Me=new me.a(Ye.originalStartLineNumber,1,Ye.originalEndLineNumber,Ye.originalModel.getLineMaxColumn(Ye.originalEndLineNumber)),ue=Ye.originalModel.getValueInRange(Me);if(Ye.modifiedEndLineNumber===0){const ae=Ue.getModel().getLineMaxColumn(Ye.modifiedStartLineNumber);Ue.executeEdits("diffEditor",[{range:new me.a(Ye.modifiedStartLineNumber,ae,Ye.modifiedStartLineNumber,ae),text:uo+ue}])}else{const ae=Ue.getModel().getLineMaxColumn(Ye.modifiedEndLineNumber);Ue.executeEdits("diffEditor",[{range:new me.a(Ye.modifiedStartLineNumber,1,Ye.modifiedEndLineNumber,ae),text:ue}])}})));const he=(Me,ue)=>{this._contextMenuService.showContextMenu({getAnchor:()=>({x:Me,y:ue}),getActions:()=>(Ct&&(Ct.label=zt?P.a("diff.clipboard.copyDeletedLineContent.label","Copy deleted line ({0})",Ye.originalStartLineNumber+ut):P.a("diff.clipboard.copyChangedLineContent.label","Copy changed line ({0})",Ye.originalStartLineNumber+ut)),Zt),autoSelectFirstItem:!0})};this._register(L.o(this._diffActions,"mousedown",Me=>{const{top:ue,height:ae}=L.D(this._diffActions);let Re=Math.floor($t/3);Me.preventDefault(),he(Me.posx,ue+ae+Re)})),this._register(Ue.onMouseMove(Me=>{if(Me.target.type===8||Me.target.type===5){const ue=Me.target.detail.viewZoneId;ue===this._viewZoneId?(this.visibility=!0,ut=this._updateLightBulbPosition(this._marginDomNode,Me.event.browserEvent.y,$t)):this.visibility=!1}else this.visibility=!1})),this._register(Ue.onMouseDown(Me=>{if(!Me.event.rightButton)return;if(Me.target.type===8||Me.target.type===5){const ue=Me.target.detail.viewZoneId;ue===this._viewZoneId&&(Me.event.preventDefault(),ut=this._updateLightBulbPosition(this._marginDomNode,Me.event.browserEvent.y,$t),he(Me.event.posx,Me.event.posy+$t))}}))}get visibility(){return this._visibility}set visibility($e){this._visibility!==$e&&(this._visibility=$e,$e?this._diffActions.style.visibility="visible":this._diffActions.style.visibility="hidden")}_updateLightBulbPosition($e,je,Ue){const{top:Ye}=L.D($e),Mt=je-Ye,Bt=Math.floor(Mt/Ue),$t=Bt*Ue;if(this._diffActions.style.top=`${$t}px`,this.diff.viewLineCounts){let uo=0;for(let Zt=0;Zt=0;uo--)($t=$e[uo])&&(Bt=(Mt<3?$t(Bt):Mt>3?$t(je,Ue,Bt):$t(je,Ue))||Bt);return Mt>3&&Bt&&Object.defineProperty(je,Ue,Bt),Bt},Pt=function($e,je){return function(Ue,Ye){je(Ue,Ye,$e)}},no;class ht{constructor($e,je){this._contextMenuService=$e,this._clipboardService=je,this._zones=[],this._inlineDiffMargins=[],this._zonesMap={},this._decorations=[]}getForeignViewZones($e){return $e.filter(je=>!this._zonesMap[String(je.id)])}clean($e){this._zones.length>0&&$e.changeViewZones(je=>{for(const Ue of this._zones)je.removeZone(Ue)}),this._zones=[],this._zonesMap={},this._decorations=$e.deltaDecorations(this._decorations,[])}apply($e,je,Ue,Ye){const Mt=Ye?u.c.capture($e):null;$e.changeViewZones(Bt=>{var $t;for(const uo of this._zones)Bt.removeZone(uo);for(const uo of this._inlineDiffMargins)uo.dispose();this._zones=[],this._zonesMap={},this._inlineDiffMargins=[];for(let uo=0,Zt=Ue.zones.length;uo$e});let Dt=class $e extends S.a{constructor(je,Ue,Ye,Mt,Bt,$t,uo,Zt,zt,ut,Ct,We){super();this._editorProgressService=We,this._onDidDispose=this._register(new O.b),this.onDidDispose=this._onDidDispose.event,this._onDidUpdateDiff=this._register(new O.b),this.onDidUpdateDiff=this._onDidUpdateDiff.event,this._onDidContentSizeChange=this._register(new O.b),this._lastOriginalWarning=null,this._lastModifiedWarning=null,this._editorWorkerService=Bt,this._codeEditorService=Zt,this._contextKeyService=this._register($t.createScoped(je)),this._instantiationService=uo.createChild(new Ie.a([j.b,this._contextKeyService])),this._contextKeyService.createKey("isInDiffEditor",!0),this._themeService=zt,this._notificationService=ut,this._id=++lt,this._state=0,this._updatingDiffProgress=null,this._domElement=je,Ue=Ue||{},this._options=tt(Ue,{enableSplitViewResizing:!0,renderSideBySide:!0,maxComputationTime:5e3,maxFileSize:50,ignoreTrimWhitespace:!0,renderIndicators:!0,originalEditable:!1,diffCodeLens:!1,renderOverviewRuler:!0,diffWordWrap:"inherit"}),typeof Ue.isInEmbeddedEditor!="undefined"?this._contextKeyService.createKey("isInEmbeddedDiffEditor",Ue.isInEmbeddedEditor):this._contextKeyService.createKey("isInEmbeddedDiffEditor",!1),this._updateDecorationsRunner=this._register(new k.e(()=>this._updateDecorations(),0)),this._containerDomElement=document.createElement("div"),this._containerDomElement.className=$e._getClassName(this._themeService.getColorTheme(),this._options.renderSideBySide),this._containerDomElement.style.position="relative",this._containerDomElement.style.height="100%",this._domElement.appendChild(this._containerDomElement),this._overviewViewportDomElement=Object(A.b)(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(L.o(this._overviewDomElement,"mousedown",Me=>{this._modifiedEditor.delegateVerticalScrollbarMouseDown(Me)})),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 ht(Ct,Mt),this._modifiedEditorState=new ht(Ct,Mt),this._isVisible=!0,this._isHandlingScrollEvent=!1,this._elementSizeObserver=this._register(new nt.a(this._containerDomElement,Ue.dimension,()=>this._onDidContainerSizeChanged())),Ue.automaticLayout&&this._elementSizeObserver.startObserving(),this._diffComputationResult=null,this._originalEditor=this._createLeftHandSideEditor(Ue,Ye.originalEditor||{}),this._modifiedEditor=this._createRightHandSideEditor(Ue,Ye.modifiedEditor||{}),this._originalOverviewRuler=null,this._modifiedOverviewRuler=null,this._reviewPane=uo.createInstance(ne,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 Lo(this._createDataSource(),this._options.enableSplitViewResizing)):this._setStrategy(new _o(this._createDataSource(),this._options.enableSplitViewResizing)),this._register(zt.onDidColorThemeChange(Me=>{this._strategy&&this._strategy.applyColors(Me)&&this._updateDecorationsRunner.schedule(),this._containerDomElement.className=$e._getClassName(this._themeService.getColorTheme(),this._options.renderSideBySide)}));const he=c.d.getDiffEditorContributions();for(const Me of he)try{this._register(uo.createInstance(Me.ctor,this))}catch(ue){Object(He.f)(ue)}this._codeEditorService.addDiffEditor(this)}_setState(je){if(this._state===je)return;this._state=je,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(je,Ue){let Ye="monaco-diff-editor monaco-editor-background ";return Ue&&(Ye+="side-by-side "),Ye+=Object(G.e)(je.type),Ye}_recreateOverviewRulers(){if(!this._options.renderOverviewRuler)return;this._originalOverviewRuler&&(this._overviewDomElement.removeChild(this._originalOverviewRuler.getDomNode()),this._originalOverviewRuler.dispose()),this._originalEditor.hasModel()&&(this._originalOverviewRuler=this._originalEditor.createOverviewRuler("original diffOverviewRuler"),this._overviewDomElement.appendChild(this._originalOverviewRuler.getDomNode())),this._modifiedOverviewRuler&&(this._overviewDomElement.removeChild(this._modifiedOverviewRuler.getDomNode()),this._modifiedOverviewRuler.dispose()),this._modifiedEditor.hasModel()&&(this._modifiedOverviewRuler=this._modifiedEditor.createOverviewRuler("modified diffOverviewRuler"),this._overviewDomElement.appendChild(this._modifiedOverviewRuler.getDomNode())),this._layoutOverviewRulers()}_createLeftHandSideEditor(je,Ue){const Ye=this._createInnerEditor(this._instantiationService,this._originalDomNode,this._adjustOptionsForLeftHandSide(je),Ue);this._register(Ye.onDidScrollChange(Bt=>{if(this._isHandlingScrollEvent)return;if(!Bt.scrollTopChanged&&!Bt.scrollLeftChanged&&!Bt.scrollHeightChanged)return;this._isHandlingScrollEvent=!0,this._modifiedEditor.setScrollPosition({scrollLeft:Bt.scrollLeft,scrollTop:Bt.scrollTop}),this._isHandlingScrollEvent=!1,this._layoutOverviewViewport()})),this._register(Ye.onDidChangeViewZones(()=>{this._onViewZonesChanged()})),this._register(Ye.onDidChangeConfiguration(Bt=>{if(!Ye.getModel())return;Bt.hasChanged(43)&&this._updateDecorationsRunner.schedule(),Bt.hasChanged(130)&&(this._updateDecorationsRunner.cancel(),this._updateDecorations())})),this._register(Ye.onDidChangeHiddenAreas(()=>{this._updateDecorationsRunner.cancel(),this._updateDecorations()})),this._register(Ye.onDidChangeModelContent(()=>{this._isVisible&&this._beginUpdateDecorationsSoon()}));const Mt=this._contextKeyService.createKey("isInDiffLeftEditor",Ye.hasWidgetFocus());return this._register(Ye.onDidFocusEditorWidget(()=>Mt.set(!0))),this._register(Ye.onDidBlurEditorWidget(()=>Mt.set(!1))),this._register(Ye.onDidContentSizeChange(Bt=>{const $t=this._originalEditor.getContentWidth()+this._modifiedEditor.getContentWidth()+$e.ONE_OVERVIEW_WIDTH,uo=Math.max(this._modifiedEditor.getContentHeight(),this._originalEditor.getContentHeight());this._onDidContentSizeChange.fire({contentHeight:uo,contentWidth:$t,contentHeightChanged:Bt.contentHeightChanged,contentWidthChanged:Bt.contentWidthChanged})})),Ye}_createRightHandSideEditor(je,Ue){const Ye=this._createInnerEditor(this._instantiationService,this._modifiedDomNode,this._adjustOptionsForRightHandSide(je),Ue);this._register(Ye.onDidScrollChange(Bt=>{if(this._isHandlingScrollEvent)return;if(!Bt.scrollTopChanged&&!Bt.scrollLeftChanged&&!Bt.scrollHeightChanged)return;this._isHandlingScrollEvent=!0,this._originalEditor.setScrollPosition({scrollLeft:Bt.scrollLeft,scrollTop:Bt.scrollTop}),this._isHandlingScrollEvent=!1,this._layoutOverviewViewport()})),this._register(Ye.onDidChangeViewZones(()=>{this._onViewZonesChanged()})),this._register(Ye.onDidChangeConfiguration(Bt=>{if(!Ye.getModel())return;Bt.hasChanged(43)&&this._updateDecorationsRunner.schedule(),Bt.hasChanged(130)&&(this._updateDecorationsRunner.cancel(),this._updateDecorations())})),this._register(Ye.onDidChangeHiddenAreas(()=>{this._updateDecorationsRunner.cancel(),this._updateDecorations()})),this._register(Ye.onDidChangeModelContent(()=>{this._isVisible&&this._beginUpdateDecorationsSoon()})),this._register(Ye.onDidChangeModelOptions(Bt=>{Bt.tabSize&&this._updateDecorationsRunner.schedule()}));const Mt=this._contextKeyService.createKey("isInDiffRightEditor",Ye.hasWidgetFocus());return this._register(Ye.onDidFocusEditorWidget(()=>Mt.set(!0))),this._register(Ye.onDidBlurEditorWidget(()=>Mt.set(!1))),this._register(Ye.onDidContentSizeChange(Bt=>{const $t=this._originalEditor.getContentWidth()+this._modifiedEditor.getContentWidth()+$e.ONE_OVERVIEW_WIDTH,uo=Math.max(this._modifiedEditor.getContentHeight(),this._originalEditor.getContentHeight());this._onDidContentSizeChange.fire({contentHeight:uo,contentWidth:$t,contentHeightChanged:Bt.contentHeightChanged,contentWidthChanged:Bt.contentWidthChanged})})),Ye}_createInnerEditor(je,Ue,Ye,Mt){return je.createInstance(E.a,Ue,Ye,Mt)}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 oe.a.IDiffEditor}getLineChanges(){return this._diffComputationResult?this._diffComputationResult.changes:null}getOriginalEditor(){return this._originalEditor}getModifiedEditor(){return this._modifiedEditor}updateOptions(je){const Ue=tt(je,this._options),Ye=gt(this._options,Ue);this._options=Ue;const Mt=Ye.ignoreTrimWhitespace||Ye.renderIndicators,Bt=this._isVisible&&(Ye.maxComputationTime||Ye.maxFileSize);Mt?this._beginUpdateDecorations():Bt&&this._beginUpdateDecorationsSoon(),this._modifiedEditor.updateOptions(this._adjustOptionsForRightHandSide(je)),this._originalEditor.updateOptions(this._adjustOptionsForLeftHandSide(je)),this._strategy.setEnableSplitViewResizing(this._options.enableSplitViewResizing),Ye.renderSideBySide&&(this._options.renderSideBySide?this._setStrategy(new Lo(this._createDataSource(),this._options.enableSplitViewResizing)):this._setStrategy(new _o(this._createDataSource(),this._options.enableSplitViewResizing)),this._containerDomElement.className=$e._getClassName(this._themeService.getColorTheme(),this._options.renderSideBySide)),Ye.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(je){if(je&&(!je.original||!je.modified))throw new Error(je.original?"DiffEditorWidget.setModel: Modified model is null":"DiffEditorWidget.setModel: Original model is null");this._cleanViewZonesAndDecorations(),this._originalEditor.setModel(je?je.original:null),this._modifiedEditor.setModel(je?je.modified:null),this._updateDecorationsRunner.cancel(),je&&(this._originalEditor.setScrollTop(0),this._modifiedEditor.setScrollTop(0)),this._diffComputationResult=null,this._diffComputationToken++,this._setState(0),je&&(this._recreateOverviewRulers(),this._beginUpdateDecorations()),this._layoutOverviewViewport()}getDomNode(){return this._domElement}getVisibleColumnFromPosition(je){return this._modifiedEditor.getVisibleColumnFromPosition(je)}getPosition(){return this._modifiedEditor.getPosition()}setPosition(je){this._modifiedEditor.setPosition(je)}revealLine(je,Ue=0){this._modifiedEditor.revealLine(je,Ue)}revealLineInCenter(je,Ue=0){this._modifiedEditor.revealLineInCenter(je,Ue)}revealLineInCenterIfOutsideViewport(je,Ue=0){this._modifiedEditor.revealLineInCenterIfOutsideViewport(je,Ue)}revealLineNearTop(je,Ue=0){this._modifiedEditor.revealLineNearTop(je,Ue)}revealPosition(je,Ue=0){this._modifiedEditor.revealPosition(je,Ue)}revealPositionInCenter(je,Ue=0){this._modifiedEditor.revealPositionInCenter(je,Ue)}revealPositionInCenterIfOutsideViewport(je,Ue=0){this._modifiedEditor.revealPositionInCenterIfOutsideViewport(je,Ue)}revealPositionNearTop(je,Ue=0){this._modifiedEditor.revealPositionNearTop(je,Ue)}getSelection(){return this._modifiedEditor.getSelection()}getSelections(){return this._modifiedEditor.getSelections()}setSelection(je){this._modifiedEditor.setSelection(je)}setSelections(je){this._modifiedEditor.setSelections(je)}revealLines(je,Ue,Ye=0){this._modifiedEditor.revealLines(je,Ue,Ye)}revealLinesInCenter(je,Ue,Ye=0){this._modifiedEditor.revealLinesInCenter(je,Ue,Ye)}revealLinesInCenterIfOutsideViewport(je,Ue,Ye=0){this._modifiedEditor.revealLinesInCenterIfOutsideViewport(je,Ue,Ye)}revealLinesNearTop(je,Ue,Ye=0){this._modifiedEditor.revealLinesNearTop(je,Ue,Ye)}revealRange(je,Ue=0,Ye=!1,Mt=!0){this._modifiedEditor.revealRange(je,Ue,Ye,Mt)}revealRangeInCenter(je,Ue=0){this._modifiedEditor.revealRangeInCenter(je,Ue)}revealRangeInCenterIfOutsideViewport(je,Ue=0){this._modifiedEditor.revealRangeInCenterIfOutsideViewport(je,Ue)}revealRangeNearTop(je,Ue=0){this._modifiedEditor.revealRangeNearTop(je,Ue)}revealRangeNearTopIfOutsideViewport(je,Ue=0){this._modifiedEditor.revealRangeNearTopIfOutsideViewport(je,Ue)}revealRangeAtTop(je,Ue=0){this._modifiedEditor.revealRangeAtTop(je,Ue)}getSupportedActions(){return this._modifiedEditor.getSupportedActions()}saveViewState(){const je=this._originalEditor.saveViewState(),Ue=this._modifiedEditor.saveViewState();return{original:je,modified:Ue}}restoreViewState(je){if(je&&je.original&&je.modified){const Ue=je;this._originalEditor.restoreViewState(Ue.original),this._modifiedEditor.restoreViewState(Ue.modified)}}layout(je){this._elementSizeObserver.observe(je)}focus(){this._modifiedEditor.focus()}hasTextFocus(){return this._originalEditor.hasTextFocus()||this._modifiedEditor.hasTextFocus()}trigger(je,Ue,Ye){this._modifiedEditor.trigger(je,Ue,Ye)}changeDecorations(je){return this._modifiedEditor.changeDecorations(je)}_onDidContainerSizeChanged(){this._doLayout()}_getReviewHeight(){return this._reviewPane.isVisible()?this._elementSizeObserver.getHeight():0}_layoutOverviewRulers(){if(!this._options.renderOverviewRuler)return;if(!this._originalOverviewRuler||!this._modifiedOverviewRuler)return;const je=this._elementSizeObserver.getHeight(),Ue=this._getReviewHeight(),Ye=$e.ENTIRE_DIFF_OVERVIEW_WIDTH-2*$e.ONE_OVERVIEW_WIDTH,Mt=this._modifiedEditor.getLayoutInfo();Mt&&(this._originalOverviewRuler.setLayout({top:0,width:$e.ONE_OVERVIEW_WIDTH,right:Ye+$e.ONE_OVERVIEW_WIDTH,height:je-Ue}),this._modifiedOverviewRuler.setLayout({top:0,right:0,width:$e.ONE_OVERVIEW_WIDTH,height:je-Ue}))}_onViewZonesChanged(){if(this._currentlyChangingViewZones)return;this._updateDecorationsRunner.schedule()}_beginUpdateDecorationsSoon(){this._beginUpdateDecorationsTimeout!==-1&&(window.clearTimeout(this._beginUpdateDecorationsTimeout),this._beginUpdateDecorationsTimeout=-1),this._beginUpdateDecorationsTimeout=window.setTimeout(()=>this._beginUpdateDecorations(),$e.UPDATE_DIFF_DECORATIONS_DELAY)}static _equals(je,Ue){return!je&&!Ue?!0:!je||!Ue?!1:je.toString()===Ue.toString()}_beginUpdateDecorations(){this._beginUpdateDecorationsTimeout=-1;const je=this._originalEditor.getModel(),Ue=this._modifiedEditor.getModel();if(!je||!Ue)return;this._diffComputationToken++;const Ye=this._diffComputationToken,Mt=this._options.maxFileSize*1024*1024,Bt=$t=>{const uo=$t.getValueLength();return Mt===0||uo<=Mt};if(!Bt(je)||!Bt(Ue)){(!$e._equals(je.uri,this._lastOriginalWarning)||!$e._equals(Ue.uri,this._lastModifiedWarning))&&(this._lastOriginalWarning=je.uri,this._lastModifiedWarning=Ue.uri,this._notificationService.warn(P.a("diff.tooLarge","Cannot compare files because one file is too large.")));return}this._setState(1),this._editorWorkerService.computeDiff(je.uri,Ue.uri,this._options.ignoreTrimWhitespace,this._options.maxComputationTime).then($t=>{Ye===this._diffComputationToken&&je===this._originalEditor.getModel()&&Ue===this._modifiedEditor.getModel()&&(this._setState(2),this._diffComputationResult=$t,this._updateDecorationsRunner.schedule(),this._onDidUpdateDiff.fire())},$t=>{Ye===this._diffComputationToken&&je===this._originalEditor.getModel()&&Ue===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 je=this._diffComputationResult?this._diffComputationResult.changes:[],Ue=this._originalEditorState.getForeignViewZones(this._originalEditor.getWhitespaces()),Ye=this._modifiedEditorState.getForeignViewZones(this._modifiedEditor.getWhitespaces()),Mt=this._strategy.getEditorsDiffDecorations(je,this._options.ignoreTrimWhitespace,this._options.renderIndicators,Ue,Ye);try{this._currentlyChangingViewZones=!0,this._originalEditorState.apply(this._originalEditor,this._originalOverviewRuler,Mt.original,!1),this._modifiedEditorState.apply(this._modifiedEditor,this._modifiedOverviewRuler,Mt.modified,!0)}finally{this._currentlyChangingViewZones=!1}}_adjustOptionsForSubEditor(je){const Ue=Object.assign({},je);return Ue.inDiffEditor=!0,Ue.automaticLayout=!1,Ue.scrollbar=Object.assign({},Ue.scrollbar||{}),Ue.scrollbar.vertical="visible",Ue.folding=!1,Ue.codeLens=this._options.diffCodeLens,Ue.fixedOverflowWidgets=!0,Ue.minimap=Object.assign({},Ue.minimap||{}),Ue.minimap.enabled=!1,Ue}_adjustOptionsForLeftHandSide(je){const Ue=this._adjustOptionsForSubEditor(je);return this._options.renderSideBySide?Ue.wordWrapOverride1=this._options.diffWordWrap:Ue.wordWrapOverride1="off",je.originalAriaLabel&&(Ue.ariaLabel=je.originalAriaLabel),Ue.readOnly=!this._options.originalEditable,Ue.extraEditorClassName="original-in-monaco-diff-editor",Object.assign(Object.assign({},Ue),{dimension:{height:0,width:0}})}_adjustOptionsForRightHandSide(je){const Ue=this._adjustOptionsForSubEditor(je);return je.modifiedAriaLabel&&(Ue.ariaLabel=je.modifiedAriaLabel),Ue.wordWrapOverride1=this._options.diffWordWrap,Ue.revealHorizontalRightPadding=l.g.revealHorizontalRightPadding.defaultValue+$e.ENTIRE_DIFF_OVERVIEW_WIDTH,Ue.scrollbar.verticalHasArrows=!1,Ue.extraEditorClassName="modified-in-monaco-diff-editor",Object.assign(Object.assign({},Ue),{dimension:{height:0,width:0}})}doLayout(){this._elementSizeObserver.observe(),this._doLayout()}_doLayout(){const je=this._elementSizeObserver.getWidth(),Ue=this._elementSizeObserver.getHeight(),Ye=this._getReviewHeight(),Mt=this._strategy.layout();this._originalDomNode.style.width=Mt+"px",this._originalDomNode.style.left="0px",this._modifiedDomNode.style.width=je-Mt+"px",this._modifiedDomNode.style.left=Mt+"px",this._overviewDomElement.style.top="0px",this._overviewDomElement.style.height=Ue-Ye+"px",this._overviewDomElement.style.width=$e.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",this._overviewDomElement.style.left=je-$e.ENTIRE_DIFF_OVERVIEW_WIDTH+"px",this._overviewViewportDomElement.setWidth($e.ENTIRE_DIFF_OVERVIEW_WIDTH),this._overviewViewportDomElement.setHeight(30),this._originalEditor.layout({width:Mt,height:Ue-Ye}),this._modifiedEditor.layout({width:je-Mt-(this._options.renderOverviewRuler?$e.ENTIRE_DIFF_OVERVIEW_WIDTH:0),height:Ue-Ye}),(this._originalOverviewRuler||this._modifiedOverviewRuler)&&this._layoutOverviewRulers(),this._reviewPane.layout(Ue-Ye,je,Ye),this._layoutOverviewViewport()}_layoutOverviewViewport(){const je=this._computeOverviewViewport();je?(this._overviewViewportDomElement.setTop(je.top),this._overviewViewportDomElement.setHeight(je.height)):(this._overviewViewportDomElement.setTop(0),this._overviewViewportDomElement.setHeight(0))}_computeOverviewViewport(){const je=this._modifiedEditor.getLayoutInfo();if(!je)return null;const Ue=this._modifiedEditor.getScrollTop(),Ye=this._modifiedEditor.getScrollHeight(),Mt=Math.max(0,je.height),Bt=Math.max(0,Mt-2*0),$t=Ye>0?Bt/Ye:0,uo=Math.max(0,Math.floor(je.height*$t)),Zt=Math.floor(Ue*$t);return{height:uo,top:Zt}}_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(je){this._strategy&&this._strategy.dispose(),this._strategy=je,je.applyColors(this._themeService.getColorTheme()),this._diffComputationResult&&this._updateDecorations(),this._doLayout()}_getLineChangeAtOrBeforeLineNumber(je,Ue){const Ye=this._diffComputationResult?this._diffComputationResult.changes:[];if(Ye.length===0||je=Zt?Mt=$t+1:(Mt=$t,Bt=$t)}return Ye[Mt]}_getEquivalentLineForOriginalLineNumber(je){const Ue=this._getLineChangeAtOrBeforeLineNumber(je,Zt=>Zt.originalStartLineNumber);if(!Ue)return je;const Ye=Ue.originalStartLineNumber+(Ue.originalEndLineNumber>0?-1:0),Mt=Ue.modifiedStartLineNumber+(Ue.modifiedEndLineNumber>0?-1:0),Bt=Ue.originalEndLineNumber>0?Ue.originalEndLineNumber-Ue.originalStartLineNumber+1:0,$t=Ue.modifiedEndLineNumber>0?Ue.modifiedEndLineNumber-Ue.modifiedStartLineNumber+1:0,uo=je-Ye;return uo<=Bt?Mt+Math.min(uo,$t):Mt+$t-Bt+uo}_getEquivalentLineForModifiedLineNumber(je){const Ue=this._getLineChangeAtOrBeforeLineNumber(je,Zt=>Zt.modifiedStartLineNumber);if(!Ue)return je;const Ye=Ue.originalStartLineNumber+(Ue.originalEndLineNumber>0?-1:0),Mt=Ue.modifiedStartLineNumber+(Ue.modifiedEndLineNumber>0?-1:0),Bt=Ue.originalEndLineNumber>0?Ue.originalEndLineNumber-Ue.originalStartLineNumber+1:0,$t=Ue.modifiedEndLineNumber>0?Ue.modifiedEndLineNumber-Ue.modifiedStartLineNumber+1:0,uo=je-Mt;return uo<=$t?Ye+Math.min(uo,Bt):Ye+Bt-$t+uo}getDiffLineInformationForOriginal(je){return this._diffComputationResult?{equivalentLineNumber:this._getEquivalentLineForOriginalLineNumber(je)}:null}getDiffLineInformationForModified(je){return this._diffComputationResult?{equivalentLineNumber:this._getEquivalentLineForModifiedLineNumber(je)}:null}};Dt.ONE_OVERVIEW_WIDTH=15,Dt.ENTIRE_DIFF_OVERVIEW_WIDTH=30,Dt.UPDATE_DIFF_DECORATIONS_DELAY=200,Dt=wt([Pt(3,Te.a),Pt(4,Ne.a),Pt(5,j.b),Pt(6,we.a),Pt(7,d.a),Pt(8,G.b),Pt(9,ge.a),Pt(10,ye.a),Pt(11,st.a)],Dt);class kt extends S.a{constructor($e){super();this._dataSource=$e,this._insertColor=null,this._removeColor=null}applyColors($e){const je=($e.getColor(V.m)||V.i).transparent(2),Ue=($e.getColor(V.o)||V.j).transparent(2),Ye=!je.equals(this._insertColor)||!Ue.equals(this._removeColor);return this._insertColor=je,this._removeColor=Ue,Ye}getEditorsDiffDecorations($e,je,Ue,Ye,Mt){Mt=Mt.sort((Zt,zt)=>Zt.afterLineNumber-zt.afterLineNumber),Ye=Ye.sort((Zt,zt)=>Zt.afterLineNumber-zt.afterLineNumber);const Bt=this._getViewZones($e,Ye,Mt,Ue),$t=this._getOriginalEditorDecorations($e,je,Ue),uo=this._getModifiedEditorDecorations($e,je,Ue);return{original:{decorations:$t.decorations,overviewZones:$t.overviewZones,zones:Bt.original},modified:{decorations:uo.decorations,overviewZones:uo.overviewZones,zones:Bt.modified}}}}class eo{constructor($e){this._source=$e,this._index=-1,this.current=null,this.advance()}advance(){this._index++,this._indexLt.afterLineNumber-Ot.afterLineNumber,ae=(Lt,Ot)=>{if(Ot.domNode===null&&Lt.length>0){const Ft=Lt[Lt.length-1];if(Ft.afterLineNumber===Ot.afterLineNumber&&Ft.domNode===null){Ft.heightInLines+=Ot.heightInLines;return}}Lt.push(Ot)},Re=new eo(this._modifiedForeignVZ),Qe=new eo(this._originalForeignVZ);let et=1,bt=1;for(let Lt=0,Ot=this._lineChanges.length;Lt<=Ot;Lt++){const Ft=Lt0?-1:0),We=Ft.modifiedStartLineNumber+(Ft.modifiedEndLineNumber>0?-1:0),ut=Ft.originalEndLineNumber>0?bo._getViewLineCount(this._originalEditor,Ft.originalStartLineNumber,Ft.originalEndLineNumber):0,zt=Ft.modifiedEndLineNumber>0?bo._getViewLineCount(this._modifiedEditor,Ft.modifiedStartLineNumber,Ft.modifiedEndLineNumber):0,he=Math.max(Ft.originalStartLineNumber,Ft.originalEndLineNumber),Me=Math.max(Ft.modifiedStartLineNumber,Ft.modifiedEndLineNumber)):(Ct+=1e7+ut,We+=1e7+zt,he=Ct,Me=We);let Tt=[],Ut=[];if(Mt){let po;Ft?Ft.originalEndLineNumber>0?po=Ft.originalStartLineNumber-et:po=Ft.modifiedStartLineNumber-bt:po=Bt.getLineCount()-et;for(let Oo=0;Oo$o&&Ut.push({afterLineNumber:Zo,heightInLines:ii-$o,domNode:null,marginDomNode:null})}Ft&&(et=(Ft.originalEndLineNumber>0?Ft.originalEndLineNumber:Ft.originalStartLineNumber)+1,bt=(Ft.modifiedEndLineNumber>0?Ft.modifiedEndLineNumber:Ft.modifiedStartLineNumber)+1)}for(;Re.current&&Re.current.afterLineNumber<=Me;){let po;Re.current.afterLineNumber<=We?po=Ct-We+Re.current.afterLineNumber:po=he;let Oo=null;Ft&&Ft.modifiedStartLineNumber<=Re.current.afterLineNumber&&Re.current.afterLineNumber<=Ft.modifiedEndLineNumber&&(Oo=this._createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion()),Tt.push({afterLineNumber:po,heightInLines:Re.current.height/je,domNode:null,marginDomNode:Oo}),Re.advance()}for(;Qe.current&&Qe.current.afterLineNumber<=he;){let po;Qe.current.afterLineNumber<=Ct?po=We-Ct+Qe.current.afterLineNumber:po=Me,Ut.push({afterLineNumber:po,heightInLines:Qe.current.height/$e,domNode:null}),Qe.advance()}if(Ft!==null&&Ge(Ft)){const po=this._produceOriginalFromDiff(Ft,ut,zt);po&&Tt.push(po)}if(Ft!==null&&mt(Ft)){const po=this._produceModifiedFromDiff(Ft,ut,zt);po&&Ut.push(po)}let fo=0,vo=0;for(Tt=Tt.sort(ue),Ut=Ut.sort(ue);fo=Oo.heightInLines?(po.heightInLines-=Oo.heightInLines,vo++):(Oo.heightInLines-=po.heightInLines,fo++)}for(;fo(je.domNode||(je.domNode=Gt()),je))}}function ao($e,je,Ue,Ye,Mt){return{range:new me.a($e,je,Ue,Ye),options:Mt}}const So={charDelete:De.b.register({description:"diff-editor-char-delete",className:"char-delete"}),charDeleteWholeLine:De.b.register({description:"diff-editor-char-delete-whole-line",className:"char-delete",isWholeLine:!0}),charInsert:De.b.register({description:"diff-editor-char-insert",className:"char-insert"}),charInsertWholeLine:De.b.register({description:"diff-editor-char-insert-whole-line",className:"char-insert",isWholeLine:!0}),lineInsert:De.b.register({description:"diff-editor-line-insert",className:"line-insert",marginClassName:"line-insert",isWholeLine:!0}),lineInsertWithSign:De.b.register({description:"diff-editor-line-insert-with-sign",className:"line-insert",linesDecorationsClassName:"insert-sign "+G.d.asClassName(le),marginClassName:"line-insert",isWholeLine:!0}),lineDelete:De.b.register({description:"diff-editor-line-delete",className:"line-delete",marginClassName:"line-delete",isWholeLine:!0}),lineDeleteWithSign:De.b.register({description:"diff-editor-line-delete-with-sign",className:"line-delete",linesDecorationsClassName:"delete-sign "+G.d.asClassName(Pe),marginClassName:"line-delete",isWholeLine:!0}),lineDeleteMargin:De.b.register({description:"diff-editor-line-delete-margin",marginClassName:"line-delete"})};class Lo extends kt{constructor($e,je){super($e);this._disableSash=je===!1,this._sashRatio=null,this._sashPosition=null,this._startSashPosition=null,this._sash=this._register(new I.b(this._dataSource.getContainerDomNode(),this,{orientation:0})),this._disableSash&&(this._sash.state=0),this._sash.onDidStart(()=>this._onSashDragStart()),this._sash.onDidChange(Ue=>this._onSashDrag(Ue)),this._sash.onDidEnd(()=>this._onSashDragEnd()),this._sash.onDidReset(()=>this._onSashReset())}setEnableSplitViewResizing($e){const je=$e===!1;this._disableSash!==je&&(this._disableSash=je,this._sash.state=this._disableSash?0:3)}layout($e=this._sashRatio){const je=this._dataSource.getWidth(),Ue=je-(this._dataSource.getOptions().renderOverviewRuler?Dt.ENTIRE_DIFF_OVERVIEW_WIDTH:0);let Ye=Math.floor(($e||.5)*Ue);const Mt=Math.floor(.5*Ue);return Ye=this._disableSash?Mt:Ye||Mt,Ue>Lo.MINIMUM_EDITOR_WIDTH*2?(YeUe-Lo.MINIMUM_EDITOR_WIDTH&&(Ye=Ue-Lo.MINIMUM_EDITOR_WIDTH)):Ye=Mt,this._sashPosition!==Ye&&(this._sashPosition=Ye,this._sash.layout()),this._sashPosition}_onSashDragStart(){this._startSashPosition=this._sashPosition}_onSashDrag($e){const je=this._dataSource.getWidth(),Ue=je-(this._dataSource.getOptions().renderOverviewRuler?Dt.ENTIRE_DIFF_OVERVIEW_WIDTH:0),Ye=this.layout((this._startSashPosition+($e.currentX-$e.startX))/Ue);this._sashRatio=Ye/Ue,this._dataSource.relayoutEditors()}_onSashDragEnd(){this._sash.layout()}_onSashReset(){this._sashRatio=.5,this._dataSource.relayoutEditors(),this._sash.layout()}getVerticalSashTop($e){return 0}getVerticalSashLeft($e){return this._sashPosition}getVerticalSashHeight($e){return this._dataSource.getHeight()}_getViewZones($e,je,Ue){const Ye=this._dataSource.getOriginalEditor(),Mt=this._dataSource.getModifiedEditor(),Bt=new xo($e,je,Ue,Ye,Mt);return Bt.getViewZones()}_getOriginalEditorDecorations($e,je,Ue){const Ye=this._dataSource.getOriginalEditor(),Mt=String(this._removeColor),Bt={decorations:[],overviewZones:[]},$t=Ye.getModel(),uo=Ye._getViewModel();for(const Zt of $e)if(mt(Zt)){Bt.decorations.push({range:new me.a(Zt.originalStartLineNumber,1,Zt.originalEndLineNumber,1073741824),options:Ue?So.lineDeleteWithSign:So.lineDelete}),(!Ge(Zt)||!Zt.charChanges)&&Bt.decorations.push(ao(Zt.originalStartLineNumber,1,Zt.originalEndLineNumber,1073741824,So.charDeleteWholeLine));const zt=qe($t,uo,Zt.originalStartLineNumber,Zt.originalEndLineNumber);if(Bt.overviewZones.push(new ve.a(zt.startLineNumber,zt.endLineNumber,Mt)),Zt.charChanges){for(const ut of Zt.charChanges)if(mt(ut))if(je)for(let Ct=ut.originalStartLineNumber;Ct<=ut.originalEndLineNumber;Ct++){let We,he;Ct===ut.originalStartLineNumber?We=ut.originalStartColumn:We=$t.getLineFirstNonWhitespaceColumn(Ct),Ct===ut.originalEndLineNumber?he=ut.originalEndColumn:he=$t.getLineLastNonWhitespaceColumn(Ct),Bt.decorations.push(ao(Ct,We,Ct,he,So.charDelete))}else Bt.decorations.push(ao(ut.originalStartLineNumber,ut.originalStartColumn,ut.originalEndLineNumber,ut.originalEndColumn,So.charDelete))}}return Bt}_getModifiedEditorDecorations($e,je,Ue){const Ye=this._dataSource.getModifiedEditor(),Mt=String(this._insertColor),Bt={decorations:[],overviewZones:[]},$t=Ye.getModel(),uo=Ye._getViewModel();for(const Zt of $e)if(Ge(Zt)){Bt.decorations.push({range:new me.a(Zt.modifiedStartLineNumber,1,Zt.modifiedEndLineNumber,1073741824),options:Ue?So.lineInsertWithSign:So.lineInsert}),(!mt(Zt)||!Zt.charChanges)&&Bt.decorations.push(ao(Zt.modifiedStartLineNumber,1,Zt.modifiedEndLineNumber,1073741824,So.charInsertWholeLine));const zt=qe($t,uo,Zt.modifiedStartLineNumber,Zt.modifiedEndLineNumber);if(Bt.overviewZones.push(new ve.a(zt.startLineNumber,zt.endLineNumber,Mt)),Zt.charChanges){for(const ut of Zt.charChanges)if(Ge(ut))if(je)for(let Ct=ut.modifiedStartLineNumber;Ct<=ut.modifiedEndLineNumber;Ct++){let We,he;Ct===ut.modifiedStartLineNumber?We=ut.modifiedStartColumn:We=$t.getLineFirstNonWhitespaceColumn(Ct),Ct===ut.modifiedEndLineNumber?he=ut.modifiedEndColumn:he=$t.getLineLastNonWhitespaceColumn(Ct),Bt.decorations.push(ao(Ct,We,Ct,he,So.charInsert))}else Bt.decorations.push(ao(ut.modifiedStartLineNumber,ut.modifiedStartColumn,ut.modifiedEndLineNumber,ut.modifiedEndColumn,So.charInsert))}}return Bt}}Lo.MINIMUM_EDITOR_WIDTH=100;class xo extends bo{constructor($e,je,Ue,Ye,Mt){super($e,je,Ue,Ye,Mt)}_createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion(){return null}_produceOriginalFromDiff($e,je,Ue){return Ue>je?{afterLineNumber:Math.max($e.originalStartLineNumber,$e.originalEndLineNumber),heightInLines:Ue-je,domNode:null}:null}_produceModifiedFromDiff($e,je,Ue){return je>Ue?{afterLineNumber:Math.max($e.modifiedStartLineNumber,$e.modifiedEndLineNumber),heightInLines:je-Ue,domNode:null}:null}}class _o extends kt{constructor($e,je){super($e);this._decorationsLeft=$e.getOriginalEditor().getLayoutInfo().decorationsLeft,this._register($e.getOriginalEditor().onDidLayoutChange(Ue=>{this._decorationsLeft!==Ue.decorationsLeft&&(this._decorationsLeft=Ue.decorationsLeft,$e.relayoutEditors())}))}setEnableSplitViewResizing($e){}_getViewZones($e,je,Ue,Ye){const Mt=this._dataSource.getOriginalEditor(),Bt=this._dataSource.getModifiedEditor(),$t=new to($e,je,Ue,Mt,Bt,Ye);return $t.getViewZones()}_getOriginalEditorDecorations($e,je,Ue){const Ye=String(this._removeColor),Mt={decorations:[],overviewZones:[]},Bt=this._dataSource.getOriginalEditor(),$t=Bt.getModel(),uo=Bt._getViewModel();for(const Zt of $e)if(mt(Zt)){Mt.decorations.push({range:new me.a(Zt.originalStartLineNumber,1,Zt.originalEndLineNumber,1073741824),options:So.lineDeleteMargin});const zt=qe($t,uo,Zt.originalStartLineNumber,Zt.originalEndLineNumber);Mt.overviewZones.push(new ve.a(zt.startLineNumber,zt.endLineNumber,Ye))}return Mt}_getModifiedEditorDecorations($e,je,Ue){const Ye=this._dataSource.getModifiedEditor(),Mt=String(this._insertColor),Bt={decorations:[],overviewZones:[]},$t=Ye.getModel(),uo=Ye._getViewModel();for(const Zt of $e)if(Ge(Zt)){Bt.decorations.push({range:new me.a(Zt.modifiedStartLineNumber,1,Zt.modifiedEndLineNumber,1073741824),options:Ue?So.lineInsertWithSign:So.lineInsert});const zt=qe($t,uo,Zt.modifiedStartLineNumber,Zt.modifiedEndLineNumber);if(Bt.overviewZones.push(new ve.a(zt.startLineNumber,zt.endLineNumber,Mt)),Zt.charChanges){for(const ut of Zt.charChanges)if(Ge(ut))if(je)for(let Ct=ut.modifiedStartLineNumber;Ct<=ut.modifiedEndLineNumber;Ct++){let We,he;Ct===ut.modifiedStartLineNumber?We=ut.modifiedStartColumn:We=$t.getLineFirstNonWhitespaceColumn(Ct),Ct===ut.modifiedEndLineNumber?he=ut.modifiedEndColumn:he=$t.getLineLastNonWhitespaceColumn(Ct),Bt.decorations.push(ao(Ct,We,Ct,he,So.charInsert))}else Bt.decorations.push(ao(ut.modifiedStartLineNumber,ut.modifiedStartColumn,ut.modifiedEndLineNumber,ut.modifiedEndColumn,So.charInsert))}else Bt.decorations.push(ao(Zt.modifiedStartLineNumber,1,Zt.modifiedEndLineNumber,1073741824,So.charInsertWholeLine))}return Bt}layout(){return Math.max(5,this._decorationsLeft)}}class to extends bo{constructor($e,je,Ue,Ye,Mt,Bt){super($e,je,Ue,Ye,Mt);this._originalModel=Ye.getModel(),this._renderIndicators=Bt,this._pendingLineChange=[],this._pendingViewZones=[],this._lineBreaksComputer=this._modifiedEditor._getViewModel().createLineBreaksComputer()}getViewZones(){const $e=super.getViewZones();return this._finalize($e),$e}_createOriginalMarginDomNodeForModifiedForeignViewZoneInAddedRegion(){const $e=document.createElement("div");return $e.className="inline-added-margin-view-zone",$e}_produceOriginalFromDiff($e,je,Ue){const Ye=document.createElement("div");return Ye.className="inline-added-margin-view-zone",{afterLineNumber:Math.max($e.originalStartLineNumber,$e.originalEndLineNumber),heightInLines:Ue,domNode:document.createElement("div"),marginDomNode:Ye}}_produceModifiedFromDiff($e,je,Ue){const Ye=document.createElement("div");Ye.className=`view-lines line-delete ${rt.a}`;const Mt=document.createElement("div");Mt.className="inline-deleted-margin-view-zone";const Bt={shouldNotShrink:!0,afterLineNumber:$e.modifiedEndLineNumber===0?$e.modifiedStartLineNumber:$e.modifiedStartLineNumber-1,heightInLines:je,minWidthInPx:0,domNode:Ye,marginDomNode:Mt,diff:{originalStartLineNumber:$e.originalStartLineNumber,originalEndLineNumber:$e.originalEndLineNumber,modifiedStartLineNumber:$e.modifiedStartLineNumber,modifiedEndLineNumber:$e.modifiedEndLineNumber,originalModel:this._originalModel,viewLineCounts:null}};for(let $t=$e.originalStartLineNumber;$t<=$e.originalEndLineNumber;$t++)this._lineBreaksComputer.addRequest(this._originalModel.getLineContent($t),null,null);return this._pendingLineChange.push($e),this._pendingViewZones.push(Bt),Bt}_finalize($e){const je=this._modifiedEditor.getOptions(),Ue=this._modifiedEditor.getModel().getOptions().tabSize,Ye=je.get(43),Mt=je.get(29),Bt=Ye.typicalHalfwidthCharacterWidth,$t=je.get(92),uo=this._originalModel.mightContainNonBasicASCII(),Zt=this._originalModel.mightContainRTL(),zt=je.get(58),ut=je.get(129),Ct=ut.decorationsWidth,We=je.get(104),he=je.get(87),Me=je.get(82),ue=je.get(44),ae=this._lineBreaksComputer.finalize();let Re=0;for(let Qe=0;Qe0,Ut=Object(Oe.a)(1e4);let fo=0,vo=0,po=null;for(let Zo=et.originalStartLineNumber;Zo<=et.originalEndLineNumber;Zo++){const ii=Zo-et.originalStartLineNumber,$o=this._originalModel.getLineTokens(Zo),Ri=$o.getLineContent(),xi=ae[Re++],Ni=re.a.filter(Ft,Zo,1,Ri.length+1);if(xi){let ji=0;for(const ki of xi.breakOffsets){const Hi=$o.sliceAndInflate(ji,ki,0),ni=Ri.substring(ji,ki);fo=Math.max(fo,this._renderOriginalLine(vo++,ni,Hi,re.a.extractWrapped(Ni,ji,ki),Tt,uo,Zt,Ye,Mt,zt,Ct,We,he,Me,ue,Ue,Ut,Ot)),ji=ki}for(po||(po=[]);po.lengthQe.afterLineNumber-et.afterLineNumber)}_renderOriginalLine($e,je,Ue,Ye,Mt,Bt,$t,uo,Zt,zt,ut,Ct,We,he,Me,ue,ae,Re){ae.appendASCIIString('
');const Qe=D.g.isBasicASCII(je,Bt),et=D.g.containsRTL(je,Qe,$t),bt=Object(v.d)(new v.c(uo.isMonospace&&!Zt,uo.canUseHalfwidthRightwardsArrow,je,!1,Qe,et,0,Ue,Ye,ue,0,uo.spaceWidth,uo.middotWidth,uo.wsmiddotWidth,Ct,We,he,Me!==l.e.OFF,null),ae);if(ae.appendASCIIString("
"),this._renderIndicators){const Lt=document.createElement("div");Lt.className=`delete-sign ${G.d.asClassName(Pe)}`,Lt.setAttribute("style",`position:absolute;top:${$e*zt}px;width:${ut}px;height:${zt}px;right:0;`),Re.appendChild(Lt)}return bt.characterMapping.getAbsoluteOffset(bt.characterMapping.length)}}function Wt($e,je){return Object(l.o)($e,je,["off","on","inherit"])}function Ge($e){return $e.modifiedEndLineNumber>0}function mt($e){return $e.originalEndLineNumber>0}function Gt(){const $e=document.createElement("div");return $e.className="diagonal-fill",$e}function qe($e,je,Ue,Ye){const Mt=$e.getLineCount();return Ue=Math.min(Mt,Math.max(1,Ue)),Ye=Math.min(Mt,Math.max(1,Ye)),je.coordinatesConverter.convertModelRangeToViewRange(new me.a(Ue,$e.getLineMinColumn(Ue),Ye,$e.getLineMaxColumn(Ye)))}function tt($e,je){return{enableSplitViewResizing:Object(l.k)($e.enableSplitViewResizing,je.enableSplitViewResizing),renderSideBySide:Object(l.k)($e.renderSideBySide,je.renderSideBySide),maxComputationTime:Object(l.l)($e.maxComputationTime,je.maxComputationTime,0,1073741824),maxFileSize:Object(l.l)($e.maxFileSize,je.maxFileSize,0,1073741824),ignoreTrimWhitespace:Object(l.k)($e.ignoreTrimWhitespace,je.ignoreTrimWhitespace),renderIndicators:Object(l.k)($e.renderIndicators,je.renderIndicators),originalEditable:Object(l.k)($e.originalEditable,je.originalEditable),diffCodeLens:Object(l.k)($e.diffCodeLens,je.diffCodeLens),renderOverviewRuler:Object(l.k)($e.renderOverviewRuler,je.renderOverviewRuler),diffWordWrap:Wt($e.diffWordWrap,je.diffWordWrap)}}function gt($e,je){return{enableSplitViewResizing:$e.enableSplitViewResizing!==je.enableSplitViewResizing,renderSideBySide:$e.renderSideBySide!==je.renderSideBySide,maxComputationTime:$e.maxComputationTime!==je.maxComputationTime,maxFileSize:$e.maxFileSize!==je.maxFileSize,ignoreTrimWhitespace:$e.ignoreTrimWhitespace!==je.ignoreTrimWhitespace,renderIndicators:$e.renderIndicators!==je.renderIndicators,originalEditable:$e.originalEditable!==je.originalEditable,diffCodeLens:$e.diffCodeLens!==je.diffCodeLens,renderOverviewRuler:$e.renderOverviewRuler!==je.renderOverviewRuler,diffWordWrap:$e.diffWordWrap!==je.diffWordWrap}}Object(G.f)(($e,je)=>{const Ue=$e.getColor(V.m);Ue&&(je.addRule(`.monaco-editor .line-insert, .monaco-editor .char-insert { background-color: ${Ue}; }`),je.addRule(`.monaco-diff-editor .line-insert, .monaco-diff-editor .char-insert { background-color: ${Ue}; }`),je.addRule(`.monaco-editor .inline-added-margin-view-zone { background-color: ${Ue}; }`));const Ye=$e.getColor(V.o);Ye&&(je.addRule(`.monaco-editor .line-delete, .monaco-editor .char-delete { background-color: ${Ye}; }`),je.addRule(`.monaco-diff-editor .line-delete, .monaco-diff-editor .char-delete { background-color: ${Ye}; }`),je.addRule(`.monaco-editor .inline-deleted-margin-view-zone { background-color: ${Ye}; }`));const Mt=$e.getColor(V.n);Mt&&je.addRule(`.monaco-editor .line-insert, .monaco-editor .char-insert { border: 1px ${$e.type==="hc"?"dashed":"solid"} ${Mt}; }`);const Bt=$e.getColor(V.p);Bt&&je.addRule(`.monaco-editor .line-delete, .monaco-editor .char-delete { border: 1px ${$e.type==="hc"?"dashed":"solid"} ${Bt}; }`);const $t=$e.getColor(V.Ec);$t&&je.addRule(`.monaco-diff-editor.side-by-side .editor.modified { box-shadow: -6px 0 5px -5px ${$t}; }`);const uo=$e.getColor(V.k);uo&&je.addRule(`.monaco-diff-editor.side-by-side .editor.modified { border-left: 1px solid ${uo}; }`);const Zt=$e.getColor(V.Gc);Zt&&je.addRule(` .monaco-diff-editor .diffViewport { background: ${Zt}; } `);const zt=$e.getColor(V.Hc);zt&&je.addRule(` .monaco-diff-editor .diffViewport:hover { background: ${zt}; } `);const ut=$e.getColor(V.Fc);ut&&je.addRule(` .monaco-diff-editor .diffViewport:active { background: ${ut}; } `);const Ct=$e.getColor(V.l);je.addRule(` .monaco-editor .diagonal-fill { background-image: linear-gradient( -45deg, ${Ct} 12.5%, #0000 12.5%, #0000 50%, ${Ct} 50%, ${Ct} 62.5%, #0000 62.5%, #0000 100% ); background-size: 8px 8px; } `)})},Ssw4:function(ft,w,e){"use strict";(function(h){e.d(w,"a",function(){return k}),e.d(w,"b",function(){return E});let P;(function(){function p(n){P=n()}p.amd=!0,function(n,b){typeof exports=="object"&&typeof h!="undefined"?h.exports=b():typeof p=="function"&&p.amd?p(b):(n=typeof globalThis!="undefined"?globalThis:n||self,n.marked=b())}(this,function(){"use strict";function n(ut,Ct){for(var We=0;Weut.length)&&(Ct=ut.length);for(var We=0,he=new Array(Ct);We=ut.length?{done:!0}:{done:!1,value:ut[he++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var g={exports:{}};function y(){return{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}function C(ut){g.exports.defaults=ut}g.exports={defaults:y(),getDefaults:y,changeDefaults:C};var v=/[&<>"']/,D=/[&<>"']/g,j=/[<>"']|&(?!#?\w+;)/,V=/[<>"']|&(?!#?\w+;)/g,G={"&":"&","<":"<",">":">",'"':""","'":"'"},B=function(Ct){return G[Ct]};function z(ut,Ct){if(Ct){if(v.test(ut))return ut.replace(D,B)}else if(j.test(ut))return ut.replace(V,B);return ut}var Y=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function K(ut){return ut.replace(Y,function(Ct,We){return We=We.toLowerCase(),We==="colon"?":":We.charAt(0)==="#"?We.charAt(1)==="x"?String.fromCharCode(parseInt(We.substring(2),16)):String.fromCharCode(+We.substring(1)):""})}var Q=/(^|[^\[])\^/g;function ee(ut,Ct){ut=ut.source||ut,Ct=Ct||"";var We={replace:function(Me,ue){return ue=ue.source||ue,ue=ue.replace(Q,"$1"),ut=ut.replace(Me,ue),We},getRegex:function(){return new RegExp(ut,Ct)}};return We}var Se=/[^\w:]/g,fe=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function q(ut,Ct,We){if(ut){var he;try{he=decodeURIComponent(K(We)).replace(Se,"").toLowerCase()}catch(Me){return null}if(he.indexOf("javascript:")===0||he.indexOf("vbscript:")===0||he.indexOf("data:")===0)return null}Ct&&!fe.test(We)&&(We=ne(Ct,We));try{We=encodeURI(We).replace(/%25/g,"%")}catch(Me){return null}return We}var te={},U=/^[^:]+:\/*[^/]*$/,H=/^([^:]+:)[\s\S]*$/,W=/^([^:]+:\/*[^/]*)[\s\S]*$/;function ne(ut,Ct){te[" "+ut]||(U.test(ut)?te[" "+ut]=ut+"/":te[" "+ut]=me(ut,"/",!0)),ut=te[" "+ut];var We=ut.indexOf(":")===-1;return Ct.substring(0,2)==="//"?We?Ct:ut.replace(H,"$1")+Ct:Ct.charAt(0)==="/"?We?Ct:ut.replace(W,"$1")+Ct:ut+Ct}var Ce={exec:function(){}};function Le(ut){for(var Ct=1,We,he;Ct=0&&Re[et]==="\\";)Qe=!Qe;return Qe?"|":" |"}),he=We.split(/ \|/),Me=0;if(he[0].trim()||he.shift(),he[he.length-1].trim()||he.pop(),he.length>Ct)he.splice(Ct);else for(;he.length1;)Ct&1&&(We+=ut),Ct>>=1,ut+=ut;return We+ut}var Ne={escape:z,unescape:K,edit:ee,cleanUrl:q,resolveUrl:ne,noopTest:Ce,merge:Le,splitCells:ce,rtrim:me,findClosingBracket:Oe,checkSanitizeDeprecation:oe,repeatString:De},ve=g.exports.defaults,re=Ne.rtrim,we=Ne.splitCells,Ie=Ne.escape,ge=Ne.findClosingBracket;function ye(ut,Ct,We,he){var Me=Ct.href,ue=Ct.title?Ie(Ct.title):null,ae=ut[1].replace(/\\([\[\]])/g,"$1");if(ut[0].charAt(0)!=="!"){he.state.inLink=!0;var Re={type:"link",raw:We,href:Me,title:ue,text:ae,tokens:he.inlineTokens(ae,[])};return he.state.inLink=!1,Re}else return{type:"image",raw:We,href:Me,title:ue,text:Ie(ae)}}function ze(ut,Ct){var We=ut.match(/^(\s+)(?:```)/);if(We===null)return Ct;var he=We[1];return Ct.split(` `).map(function(Me){var ue=Me.match(/^\s+/);if(ue===null)return Me;var ae=ue[0];return ae.length>=he.length?Me.slice(he.length):Me}).join(` `)}var xe=function(){function ut(We){this.options=We||ve}var Ct=ut.prototype;return Ct.space=function(he){var Me=this.rules.block.newline.exec(he);if(Me)return Me[0].length>1?{type:"space",raw:Me[0]}:{raw:` `}},Ct.code=function(he){var Me=this.rules.block.code.exec(he);if(Me){var ue=Me[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:Me[0],codeBlockStyle:"indented",text:this.options.pedantic?ue:re(ue,` `)}}},Ct.fences=function(he){var Me=this.rules.block.fences.exec(he);if(Me){var ue=Me[0],ae=ze(ue,Me[3]||"");return{type:"code",raw:ue,lang:Me[2]?Me[2].trim():Me[2],text:ae}}},Ct.heading=function(he){var Me=this.rules.block.heading.exec(he);if(Me){var ue=Me[2].trim();if(/#$/.test(ue)){var ae=re(ue,"#");(this.options.pedantic||(!ae||/ $/.test(ae)))&&(ue=ae.trim())}var Re={type:"heading",raw:Me[0],depth:Me[1].length,text:ue,tokens:[]};return this.lexer.inline(Re.text,Re.tokens),Re}},Ct.hr=function(he){var Me=this.rules.block.hr.exec(he);if(Me)return{type:"hr",raw:Me[0]}},Ct.blockquote=function(he){var Me=this.rules.block.blockquote.exec(he);if(Me){var ue=Me[0].replace(/^ *> ?/gm,"");return{type:"blockquote",raw:Me[0],tokens:this.lexer.blockTokens(ue,[]),text:ue}}},Ct.list=function(he){var Me=this.rules.block.list.exec(he);if(Me){var ue,ae,Re,Qe,et,bt,Lt,Ot,Ft,Tt,Ut=Me[1].trim(),fo=Ut.length>1,vo={type:"list",raw:"",ordered:fo,start:fo?+Ut.slice(0,-1):"",loose:!1,items:[]};Ut=fo?"\\d{1,9}\\"+Ut.slice(-1):"\\"+Ut,this.options.pedantic&&(Ut=fo?Ut:"[*+-]");for(var po=new RegExp("^( {0,3}"+Ut+")((?: [^\\n]*| *)(?:\\n[^\\n]*)*(?:\\n|$))");he&&!this.rules.block.hr.test(he);){if(!(Me=po.exec(he)))break;Ft=Me[2].split(` `),this.options.pedantic?(Qe=2,Tt=Ft[0].trimLeft()):(Qe=Me[2].search(/[^ ]/),Qe=Me[1].length+(Qe>4?1:Qe),Tt=Ft[0].slice(Qe-Me[1].length)),bt=!1,ue=Me[0],!Ft[0]&&/^ *$/.test(Ft[1])&&(ue=Me[1]+Ft.slice(0,2).join(` `)+` `,vo.loose=!0,Ft=[]);var Oo=new RegExp("^ {0,"+Math.min(3,Qe-1)+"}(?:[*+-]|\\d{1,9}[.)])");for(et=1;et=Qe?Tt+=` `+Ot.slice(Qe):Tt+=` `+Ot;continue}if(Ot.search(/[^ ]/)>=Qe||!Ot.trim()){Tt+=` `+Ot.slice(Qe);continue}else{ue=Me[1]+Ft.slice(0,et).join(` `)+` `;break}}vo.loose||(Lt?vo.loose=!0:/\n *\n *$/.test(ue)&&(Lt=!0)),this.options.gfm&&(ae=/^\[[ xX]\] /.exec(Tt),ae&&(Re=ae[0]!=="[ ] ",Tt=Tt.replace(/^\[[ xX]\] +/,""))),vo.items.push({type:"list_item",raw:ue,task:!!ae,checked:Re,loose:!1,text:Tt}),vo.raw+=ue,he=he.slice(ue.length)}vo.items[vo.items.length-1].raw=ue.trimRight(),vo.items[vo.items.length-1].text=Tt.trimRight(),vo.raw=vo.raw.trimRight();var Uo=vo.items.length;for(et=0;et/i.test(Me[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(Me[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(Me[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:Me[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(Me[0]):Ie(Me[0]):Me[0]}},Ct.link=function(he){var Me=this.rules.inline.link.exec(he);if(Me){var ue=Me[2].trim();if(!this.options.pedantic&&/^$/.test(ue))return;var ae=re(ue.slice(0,-1),"\\");if((ue.length-ae.length)%2===0)return}else{var Re=ge(Me[2],"()");if(Re>-1){var Qe=Me[0].indexOf("!")===0?5:4,et=Qe+Me[1].length+Re;Me[2]=Me[2].substring(0,Re),Me[0]=Me[0].substring(0,et).trim(),Me[3]=""}}var bt=Me[2],Lt="";if(this.options.pedantic){var Ot=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(bt);Ot&&(bt=Ot[1],Lt=Ot[3])}else Lt=Me[3]?Me[3].slice(1,-1):"";return bt=bt.trim(),/^$/.test(ue)?bt=bt.slice(1):bt=bt.slice(1,-1)),ye(Me,{href:bt&&bt.replace(this.rules.inline._escapes,"$1"),title:Lt&&Lt.replace(this.rules.inline._escapes,"$1")},Me[0],this.lexer)}},Ct.reflink=function(he,Me){var ue;if((ue=this.rules.inline.reflink.exec(he))||(ue=this.rules.inline.nolink.exec(he))){var ae=(ue[2]||ue[1]).replace(/\s+/g," ");if(ae=Me[ae.toLowerCase()],!ae||!ae.href){var Re=ue[0].charAt(0);return{type:"text",raw:Re,text:Re}}return ye(ue,ae,ue[0],this.lexer)}},Ct.emStrong=function(he,Me,ue){ue===void 0&&(ue="");var ae=this.rules.inline.emStrong.lDelim.exec(he);if(!ae)return;if(ae[3]&&ue.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))return;var Re=ae[1]||ae[2]||"";if(!Re||Re&&(ue===""||this.rules.inline.punctuation.exec(ue))){var Qe=ae[0].length-1,et,bt,Lt=Qe,Ot=0,Ft=ae[0][0]==="*"?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(Ft.lastIndex=0,Me=Me.slice(-1*he.length+Qe);(ae=Ft.exec(Me))!=null;){if(et=ae[1]||ae[2]||ae[3]||ae[4]||ae[5]||ae[6],!et)continue;if(bt=et.length,ae[3]||ae[4]){Lt+=bt;continue}else if((ae[5]||ae[6])&&(Qe%3&&!((Qe+bt)%3))){Ot+=bt;continue}if(Lt-=bt,Lt>0)continue;if(bt=Math.min(bt,bt+Lt+Ot),Math.min(Qe,bt)%2){var Tt=he.slice(1,Qe+ae.index+bt);return{type:"em",raw:he.slice(0,Qe+ae.index+bt+1),text:Tt,tokens:this.lexer.inlineTokens(Tt,[])}}var Ut=he.slice(2,Qe+ae.index+bt-1);return{type:"strong",raw:he.slice(0,Qe+ae.index+bt+1),text:Ut,tokens:this.lexer.inlineTokens(Ut,[])}}}},Ct.codespan=function(he){var Me=this.rules.inline.code.exec(he);if(Me){var ue=Me[2].replace(/\n/g," "),ae=/[^ ]/.test(ue),Re=/^ /.test(ue)&&/ $/.test(ue);return ae&&Re&&(ue=ue.substring(1,ue.length-1)),ue=Ie(ue,!0),{type:"codespan",raw:Me[0],text:ue}}},Ct.br=function(he){var Me=this.rules.inline.br.exec(he);if(Me)return{type:"br",raw:Me[0]}},Ct.del=function(he){var Me=this.rules.inline.del.exec(he);if(Me)return{type:"del",raw:Me[0],text:Me[2],tokens:this.lexer.inlineTokens(Me[2],[])}},Ct.autolink=function(he,Me){var ue=this.rules.inline.autolink.exec(he);if(ue){var ae,Re;return ue[2]==="@"?(ae=Ie(this.options.mangle?Me(ue[1]):ue[1]),Re="mailto:"+ae):(ae=Ie(ue[1]),Re=ae),{type:"link",raw:ue[0],text:ae,href:Re,tokens:[{type:"text",raw:ae,text:ae}]}}},Ct.url=function(he,Me){var ue;if(ue=this.rules.inline.url.exec(he)){var ae,Re;if(ue[2]==="@")ae=Ie(this.options.mangle?Me(ue[0]):ue[0]),Re="mailto:"+ae;else{var Qe;do Qe=ue[0],ue[0]=this.rules.inline._backpedal.exec(ue[0])[0];while(Qe!==ue[0]);ae=Ie(ue[0]),ue[1]==="www."?Re="http://"+ae:Re=ae}return{type:"link",raw:ue[0],text:ae,href:Re,tokens:[{type:"text",raw:ae,text:ae}]}}},Ct.inlineText=function(he,Me){var ue=this.rules.inline.text.exec(he);if(ue){var ae;return this.lexer.state.inRawBlock?ae=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(ue[0]):Ie(ue[0]):ue[0]:ae=Ie(this.options.smartypants?Me(ue[0]):ue[0]),{type:"text",raw:ue[0],text:ae}}},ut}(),Te=Ne.noopTest,He=Ne.edit,st=Ne.merge,nt={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)( [^\n]+?)?(?:\n|$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *\n? *]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,table:Te,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/};nt._label=/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,nt._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/,nt.def=He(nt.def).replace("label",nt._label).replace("title",nt._title).getRegex(),nt.bullet=/(?:[*+-]|\d{1,9}[.)])/,nt.listItemStart=He(/^( *)(bull) */).replace("bull",nt.bullet).getRegex(),nt.list=He(nt.list).replace(/bull/g,nt.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+nt.def.source+")").getRegex(),nt._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",nt._comment=/|$)/,nt.html=He(nt.html,"i").replace("comment",nt._comment).replace("tag",nt._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),nt.paragraph=He(nt._paragraph).replace("hr",nt.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",nt._tag).getRegex(),nt.blockquote=He(nt.blockquote).replace("paragraph",nt.paragraph).getRegex(),nt.normal=st({},nt),nt.gfm=st({},nt.normal,{table:"^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)\\|?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),nt.gfm.table=He(nt.gfm.table).replace("hr",nt.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",nt._tag).getRegex(),nt.pedantic=st({},nt.normal,{html:He(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",nt._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Te,paragraph:He(nt.normal._paragraph).replace("hr",nt.hr).replace("heading",` *#{1,6} *[^ ]`).replace("lheading",nt.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var rt={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:Te,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_*]*?\*[^_*]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^_*]*?\_[^_*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:Te,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~",rt.punctuation=He(rt.punctuation).replace(/punctuation/g,rt._punctuation).getRegex(),rt.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,rt.escapedEmSt=/\\\*|\\_/g,rt._comment=He(nt._comment).replace("(?:-->|$)","-->").getRegex(),rt.emStrong.lDelim=He(rt.emStrong.lDelim).replace(/punct/g,rt._punctuation).getRegex(),rt.emStrong.rDelimAst=He(rt.emStrong.rDelimAst,"g").replace(/punct/g,rt._punctuation).getRegex(),rt.emStrong.rDelimUnd=He(rt.emStrong.rDelimUnd,"g").replace(/punct/g,rt._punctuation).getRegex(),rt._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,rt._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,rt._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,rt.autolink=He(rt.autolink).replace("scheme",rt._scheme).replace("email",rt._email).getRegex(),rt._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,rt.tag=He(rt.tag).replace("comment",rt._comment).replace("attribute",rt._attribute).getRegex(),rt._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,rt._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,rt._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,rt.link=He(rt.link).replace("label",rt._label).replace("href",rt._href).replace("title",rt._title).getRegex(),rt.reflink=He(rt.reflink).replace("label",rt._label).getRegex(),rt.reflinkSearch=He(rt.reflinkSearch,"g").replace("reflink",rt.reflink).replace("nolink",rt.nolink).getRegex(),rt.normal=st({},rt),rt.pedantic=st({},rt.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:He(/^!?\[(label)\]\((.*?)\)/).replace("label",rt._label).getRegex(),reflink:He(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",rt._label).getRegex()}),rt.gfm=st({},rt.normal,{escape:He(rt.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\.5&&(he="x"+he.toString(16)),Ct+="&#"+he+";";return Ct}var Dt=function(){function ut(We){this.tokens=[],this.tokens.links=Object.create(null),this.options=We||no,this.options.tokenizer=this.options.tokenizer||new Pt,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};var he={block:ht.normal,inline:lt.normal};this.options.pedantic?(he.block=ht.pedantic,he.inline=lt.pedantic):this.options.gfm&&(he.block=ht.gfm,this.options.breaks?he.inline=lt.breaks:he.inline=lt.gfm),this.tokenizer.rules=he}ut.lex=function(he,Me){var ue=new ut(Me);return ue.lex(he)},ut.lexInline=function(he,Me){var ue=new ut(Me);return ue.inlineTokens(he)};var Ct=ut.prototype;return Ct.lex=function(he){he=he.replace(/\r\n|\r/g,` `).replace(/\t/g," "),this.blockTokens(he,this.tokens);for(var Me;Me=this.inlineQueue.shift();)this.inlineTokens(Me.src,Me.tokens);return this.tokens},Ct.blockTokens=function(he,Me){var ue=this;Me===void 0&&(Me=[]),this.options.pedantic&&(he=he.replace(/^ +$/gm,""));for(var ae,Re,Qe,et;he;){if(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(Lt){return(ae=Lt.call({lexer:ue},he,Me))?(he=he.substring(ae.raw.length),Me.push(ae),!0):!1}))continue;if(ae=this.tokenizer.space(he)){he=he.substring(ae.raw.length),ae.type&&Me.push(ae);continue}if(ae=this.tokenizer.code(he)){he=he.substring(ae.raw.length),Re=Me[Me.length-1],Re&&(Re.type==="paragraph"||Re.type==="text")?(Re.raw+=` `+ae.raw,Re.text+=` `+ae.text,this.inlineQueue[this.inlineQueue.length-1].src=Re.text):Me.push(ae);continue}if(ae=this.tokenizer.fences(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.heading(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.hr(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.blockquote(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.list(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.html(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.def(he)){he=he.substring(ae.raw.length),Re=Me[Me.length-1],Re&&(Re.type==="paragraph"||Re.type==="text")?(Re.raw+=` `+ae.raw,Re.text+=` `+ae.raw,this.inlineQueue[this.inlineQueue.length-1].src=Re.text):this.tokens.links[ae.tag]||(this.tokens.links[ae.tag]={href:ae.href,title:ae.title});continue}if(ae=this.tokenizer.table(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.lheading(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(Qe=he,this.options.extensions&&this.options.extensions.startBlock&&function(){var Lt=Infinity,Ot=he.slice(1),Ft=void 0;ue.options.extensions.startBlock.forEach(function(Tt){Ft=Tt.call({lexer:this},Ot),typeof Ft=="number"&&Ft>=0&&(Lt=Math.min(Lt,Ft))}),Lt=0&&(Qe=he.substring(0,Lt+1))}(),this.state.top&&(ae=this.tokenizer.paragraph(Qe))){Re=Me[Me.length-1],et&&Re.type==="paragraph"?(Re.raw+=` `+ae.raw,Re.text+=` `+ae.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=Re.text):Me.push(ae),et=Qe.length!==he.length,he=he.substring(ae.raw.length);continue}if(ae=this.tokenizer.text(he)){he=he.substring(ae.raw.length),Re=Me[Me.length-1],Re&&Re.type==="text"?(Re.raw+=` `+ae.raw,Re.text+=` `+ae.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=Re.text):Me.push(ae);continue}if(he){var bt="Infinite loop on byte: "+he.charCodeAt(0);if(this.options.silent){console.error(bt);break}else throw new Error(bt)}}return this.state.top=!0,Me},Ct.inline=function(he,Me){this.inlineQueue.push({src:he,tokens:Me})},Ct.inlineTokens=function(he,Me){var ue=this;Me===void 0&&(Me=[]);var ae,Re,Qe,et=he,bt,Lt,Ot;if(this.tokens.links){var Ft=Object.keys(this.tokens.links);if(Ft.length>0)for(;(bt=this.tokenizer.rules.inline.reflinkSearch.exec(et))!=null;)Ft.includes(bt[0].slice(bt[0].lastIndexOf("[")+1,-1))&&(et=et.slice(0,bt.index)+"["+le("a",bt[0].length-2)+"]"+et.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(bt=this.tokenizer.rules.inline.blockSkip.exec(et))!=null;)et=et.slice(0,bt.index)+"["+le("a",bt[0].length-2)+"]"+et.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(bt=this.tokenizer.rules.inline.escapedEmSt.exec(et))!=null;)et=et.slice(0,bt.index)+"++"+et.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;he;){if(Lt||(Ot=""),Lt=!1,this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(Ut){return(ae=Ut.call({lexer:ue},he,Me))?(he=he.substring(ae.raw.length),Me.push(ae),!0):!1}))continue;if(ae=this.tokenizer.escape(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.tag(he)){he=he.substring(ae.raw.length),Re=Me[Me.length-1],Re&&ae.type==="text"&&Re.type==="text"?(Re.raw+=ae.raw,Re.text+=ae.text):Me.push(ae);continue}if(ae=this.tokenizer.link(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.reflink(he,this.tokens.links)){he=he.substring(ae.raw.length),Re=Me[Me.length-1],Re&&ae.type==="text"&&Re.type==="text"?(Re.raw+=ae.raw,Re.text+=ae.text):Me.push(ae);continue}if(ae=this.tokenizer.emStrong(he,et,Ot)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.codespan(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.br(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.del(he)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(ae=this.tokenizer.autolink(he,it)){he=he.substring(ae.raw.length),Me.push(ae);continue}if(!this.state.inLink&&(ae=this.tokenizer.url(he,it))){he=he.substring(ae.raw.length),Me.push(ae);continue}if(Qe=he,this.options.extensions&&this.options.extensions.startInline&&function(){var Ut=Infinity,fo=he.slice(1),vo=void 0;ue.options.extensions.startInline.forEach(function(po){vo=po.call({lexer:this},fo),typeof vo=="number"&&vo>=0&&(Ut=Math.min(Ut,vo))}),Ut=0&&(Qe=he.substring(0,Ut+1))}(),ae=this.tokenizer.inlineText(Qe,Pe)){he=he.substring(ae.raw.length),ae.raw.slice(-1)!=="_"&&(Ot=ae.raw.slice(-1)),Lt=!0,Re=Me[Me.length-1],Re&&Re.type==="text"?(Re.raw+=ae.raw,Re.text+=ae.text):Me.push(ae);continue}if(he){var Tt="Infinite loop on byte: "+he.charCodeAt(0);if(this.options.silent){console.error(Tt);break}else throw new Error(Tt)}}return Me},b(ut,null,[{key:"rules",get:function(){return{block:ht,inline:lt}}}]),ut}(),kt=g.exports.defaults,eo=Ne.cleanUrl,bo=Ne.escape,ao=function(){function ut(We){this.options=We||kt}var Ct=ut.prototype;return Ct.code=function(he,Me,ue){var ae=(Me||"").match(/\S*/)[0];if(this.options.highlight){var Re=this.options.highlight(he,ae);Re!=null&&Re!==he&&(ue=!0,he=Re)}return he=he.replace(/\n$/,"")+` `,ae?'
'+(ue?he:bo(he,!0))+`
`:"
"+(ue?he:bo(he,!0))+`
`},Ct.blockquote=function(he){return`
`+he+`
`},Ct.html=function(he){return he},Ct.heading=function(he,Me,ue,ae){return this.options.headerIds?"'+he+" `:""+he+" `},Ct.hr=function(){return this.options.xhtml?`
`:`
`},Ct.list=function(he,Me,ue){var ae=Me?"ol":"ul",Re=Me&&ue!==1?' start="'+ue+'"':"";return"<"+ae+Re+`> `+he+" `},Ct.listitem=function(he){return"
  • "+he+`
  • `},Ct.checkbox=function(he){return" "},Ct.paragraph=function(he){return"

    "+he+`

    `},Ct.table=function(he,Me){return Me&&(Me=""+Me+""),` `+he+` `+Me+`
    `},Ct.tablerow=function(he){return` `+he+` `},Ct.tablecell=function(he,Me){var ue=Me.header?"th":"td",ae=Me.align?"<"+ue+' align="'+Me.align+'">':"<"+ue+">";return ae+he+" `},Ct.strong=function(he){return""+he+""},Ct.em=function(he){return""+he+""},Ct.codespan=function(he){return""+he+""},Ct.br=function(){return this.options.xhtml?"
    ":"
    "},Ct.del=function(he){return""+he+""},Ct.link=function(he,Me,ue){if(he=eo(this.options.sanitize,this.options.baseUrl,he),he===null)return ue;var ae='",ae},Ct.image=function(he,Me,ue){if(he=eo(this.options.sanitize,this.options.baseUrl,he),he===null)return ue;var ae=''+ue+'":">",ae},Ct.text=function(he){return he},ut}(),So=function(){function ut(){}var Ct=ut.prototype;return Ct.strong=function(he){return he},Ct.em=function(he){return he},Ct.codespan=function(he){return he},Ct.del=function(he){return he},Ct.html=function(he){return he},Ct.text=function(he){return he},Ct.link=function(he,Me,ue){return""+ue},Ct.image=function(he,Me,ue){return""+ue},Ct.br=function(){return""},ut}(),Lo=function(){function ut(){this.seen={}}var Ct=ut.prototype;return Ct.serialize=function(he){return he.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},Ct.getNextSafeSlug=function(he,Me){var ue=he,ae=0;if(this.seen.hasOwnProperty(ue)){ae=this.seen[he];do ae++,ue=he+"-"+ae;while(this.seen.hasOwnProperty(ue))}return Me||(this.seen[he]=ae,this.seen[ue]=0),ue},Ct.slug=function(he,Me){Me===void 0&&(Me={});var ue=this.serialize(he);return this.getNextSafeSlug(ue,Me.dryrun)},ut}(),xo=ao,_o=So,to=Lo,Wt=g.exports.defaults,Ge=Ne.unescape,mt=function(){function ut(We){this.options=We||Wt,this.options.renderer=this.options.renderer||new xo,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new _o,this.slugger=new to}ut.parse=function(he,Me){var ue=new ut(Me);return ue.parse(he)},ut.parseInline=function(he,Me){var ue=new ut(Me);return ue.parseInline(he)};var Ct=ut.prototype;return Ct.parse=function(he,Me){Me===void 0&&(Me=!0);var ue="",ae,Re,Qe,et,bt,Lt,Ot,Ft,Tt,Ut,fo,vo,po,Oo,Uo,Zo,ii,$o,Ri,xi=he.length;for(ae=0;ae0&&Uo.tokens[0].type==="paragraph"?(Uo.tokens[0].text=$o+" "+Uo.tokens[0].text,Uo.tokens[0].tokens&&Uo.tokens[0].tokens.length>0&&Uo.tokens[0].tokens[0].type==="text"&&(Uo.tokens[0].tokens[0].text=$o+" "+Uo.tokens[0].tokens[0].text)):Uo.tokens.unshift({type:"text",text:$o}):Oo+=$o),Oo+=this.parse(Uo.tokens,po),Tt+=this.renderer.listitem(Oo,ii,Zo);ue+=this.renderer.list(Tt,fo,vo);continue}case"html":{ue+=this.renderer.html(Ut.text);continue}case"paragraph":{ue+=this.renderer.paragraph(this.parseInline(Ut.tokens));continue}case"text":{for(Tt=Ut.tokens?this.parseInline(Ut.tokens):Ut.text;ae+1An error occurred:

    "+Mt(Qe.message+"",!0)+"
    ";throw Qe}}Zt.options=Zt.setOptions=function(ut){return Ue(Zt.defaults,ut),$t(Zt.defaults),Zt},Zt.getDefaults=Bt,Zt.defaults=uo,Zt.use=function(){for(var ut=this,Ct=arguments.length,We=new Array(Ct),he=0;heAn error occurred:

    "+Mt(he.message+"",!0)+"
    ";throw he}},Zt.Parser=qe,Zt.parser=qe.parse,Zt.Renderer=gt,Zt.TextRenderer=$e,Zt.Lexer=Gt,Zt.lexer=Gt.lex,Zt.Tokenizer=tt,Zt.Slugger=je,Zt.parse=Zt;var zt=Zt;return zt})})();var L=P,A=P.Parser,I=P.parser,k=P.Renderer,O=P.TextRenderer,S=P.Lexer,f=P.lexer,u=P.Tokenizer,d=P.Slugger,E=P.parse}).call(this,e("Vg/k")(ft))},SvYn:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"dockerfile",extensions:[".dockerfile"],filenames:["Dockerfile"],aliases:["Dockerfile"],loader:function(){return e.e(333).then(e.bind(null,"Dsrv"))}})},Szf2:function(ft,w,e){"use strict";e.d(w,"e",function(){return P}),e.d(w,"d",function(){return A}),e.d(w,"a",function(){return I}),e.d(w,"c",function(){return O}),e.d(w,"b",function(){return S});var h=e("/cxE");function P(f,u){if(f===0)return null;const d=(f&65535)>>>0,E=(f&4294901760)>>>16;return E!==0?new I([L(d,u),L(E,u)]):new I([L(d,u)])}function L(f,u){const d=!!(f&2048),E=!!(f&256),p=u===2?E:d,n=!!(f&1024),b=!!(f&512),m=u===2?d:E,c=f&255;return new A(p,n,b,m,c)}class A{constructor(f,u,d,E,p){this.ctrlKey=f,this.shiftKey=u,this.altKey=d,this.metaKey=E,this.keyCode=p}equals(f){return this.ctrlKey===f.ctrlKey&&this.shiftKey===f.shiftKey&&this.altKey===f.altKey&&this.metaKey===f.metaKey&&this.keyCode===f.keyCode}isModifierKey(){return this.keyCode===0||this.keyCode===5||this.keyCode===57||this.keyCode===6||this.keyCode===4}toChord(){return new I([this])}isDuplicateModifierCase(){return this.ctrlKey&&this.keyCode===5||this.shiftKey&&this.keyCode===4||this.altKey&&this.keyCode===6||this.metaKey&&this.keyCode===57}}class I{constructor(f){if(f.length===0)throw Object(h.c)("parts");this.parts=f}}class k{constructor(f,u,d,E,p){this.ctrlKey=f,this.shiftKey=u,this.altKey=d,this.metaKey=E,this.scanCode=p}isDuplicateModifierCase(){return this.ctrlKey&&(this.scanCode===157||this.scanCode===161)||this.shiftKey&&(this.scanCode===158||this.scanCode===162)||this.altKey&&(this.scanCode===159||this.scanCode===163)||this.metaKey&&(this.scanCode===160||this.scanCode===164)}}class O{constructor(f,u,d,E,p,n){this.ctrlKey=f,this.shiftKey=u,this.altKey=d,this.metaKey=E,this.keyLabel=p,this.keyAriaLabel=n}}class S{}},TQUy:function(ft,w,e){"use strict";e.d(w,"b",function(){return I}),e.d(w,"a",function(){return k});var h=e("N0LK"),P=e("4bUh"),L=e("i/Ef");const A={getInitialState:()=>L.b,tokenize2:(S,f,u,d)=>Object(L.d)(0,S,u,d)};function I(S,f,u=A){return O(S,f,u||A)}function k(S,f,u,d,E,p,n){let b="
    ",m=d,c=0,l=!0;for(let g=0,y=f.getCount();g0;)n&&l?(v+=" ",l=!1):(v+=" ",l=!0),j--;break;case 60:v+="<",l=!1;break;case 62:v+=">",l=!1;break;case 38:v+="&",l=!1;break;case 0:v+="�",l=!1;break;case 65279:case 8232:case 8233:case 133:v+="\uFFFD",l=!1;break;case 13:v+="​",l=!1;break;case 32:n&&l?(v+=" ",l=!1):(v+=" ",l=!0);break;default:v+=String.fromCharCode(D),l=!1}}if(b+=`${v}`,C>E||m>=E)break}return b+="
    ",b}function O(S,f,u){let d='
    ';const E=h.Q(S);let p=u.getInitialState();for(let n=0,b=E.length;n0&&(d+="
    ");const c=u.tokenize2(m,!0,p,0);P.a.convertToEndOffset(c.tokens,m.length);const l=new P.a(c.tokens,m,f),g=l.inflate();let y=0;for(let C=0,v=g.getCount();C${h.s(m.substring(y,j))}`,y=j}p=c.endState}return d+="
    ",d}},TT2d:function(ft,w,e){},Tcc1:function(ft,w,e){"use strict";e.d(w,"a",function(){return h}),e.d(w,"b",function(){return P}),e.d(w,"c",function(){return L});class h{constructor(A,I,k){this._tokenBrand=void 0,this.offset=A|0,this.type=I,this.language=k}toString(){return"("+this.offset+", "+this.type+")"}}class P{constructor(A,I){this._tokenizationResultBrand=void 0,this.tokens=A,this.endState=I}}class L{constructor(A,I){this._tokenizationResult2Brand=void 0,this.tokens=A,this.endState=I}}},UCkY:function(ft,w,e){},Uzvx:function(ft,w,e){"use strict";e.d(w,"b",function(){return P}),e.d(w,"a",function(){return L});var h=e("Cg/j");const P=Object(h.c)("contextViewService"),L=Object(h.c)("contextMenuService")},VPJY:function(ft,w,e){},"Vg/k":function(ft,w){(function(e){ft.exports=function(){var h={46:function(A){A.exports=function(I){if(!I.webpackPolyfill){var k=Object.create(I);k.children||(k.children=[]),Object.defineProperty(k,"loaded",{enumerable:!0,get:function(){return k.l}}),Object.defineProperty(k,"id",{enumerable:!0,get:function(){return k.i}}),Object.defineProperty(k,"exports",{enumerable:!0}),k.webpackPolyfill=1}return k}}},P={};function L(A){if(P[A])return P[A].exports;var I=P[A]={exports:{}},k=!0;try{h[A](I,I.exports,L),k=!1}finally{k&&delete P[A]}return I.exports}return L.ab=e+"/",L(46)}()}).call(this,"/")},Vtyv:function(ft,w,e){},VvMK:function(ft,w,e){},Vxe3:function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("Cg/j");const P=Object(h.c)("codeEditorService")},W9cx:function(ft,w,e){"use strict";e.d(w,"a",function(){return k}),e.d(w,"b",function(){return O}),e.d(w,"c",function(){return S});var h=e("pmY6"),P=e("N0LK"),L=e("bY76"),A=e("Cg/j"),I=function(f,u,d,E){function p(n){return n instanceof d?n:new d(function(b){b(n)})}return new(d||(d=Promise))(function(n,b){function m(g){try{l(E.next(g))}catch(y){b(y)}}function c(g){try{l(E.throw(g))}catch(y){b(y)}}function l(g){g.done?n(g.value):p(g.value).then(m,c)}l((E=E.apply(f,u||[])).next())})};const k=Object(A.c)("openerService"),O=Object.freeze({_serviceBrand:void 0,registerOpener(){return h.a.None},registerValidator(){return h.a.None},registerExternalUriResolver(){return h.a.None},setDefaultExternalOpener(){},registerExternalOpener(){return h.a.None},open(){return I(this,void 0,void 0,function*(){return!1})},resolveExternalUri(f){return I(this,void 0,void 0,function*(){return{resolved:f,dispose(){}}})}});function S(f,u){return L.a.isUri(f)?Object(P.r)(f.scheme,u):Object(P.R)(f,u+":")}},WA0u:function(ft,w,e){"use strict";e.d(w,"b",function(){return h}),e.d(w,"a",function(){return P});function h(L,A){let I=0;for(let k=0;koe===H?!1:(oe instanceof p.d&&(me=Object(L.x)(Object(L.Q)(oe.value).pop())),!0));const Oe=Object(L.d)(me,ce);ne=ne.replace(/(\r\n|\r|\n)(.*)/g,(oe,De,Ne)=>`${De}${me.substr(Oe)}${Ne}`)}return ne}else{if(W==="TM_CURRENT_LINE")return this._model.getLineContent(this._selection.positionLineNumber);if(W==="TM_CURRENT_WORD"){const ne=this._model.getWordAtPosition({lineNumber:this._selection.positionLineNumber,column:this._selection.positionColumn});return ne&&ne.word||void 0}else{if(W==="TM_LINE_INDEX")return String(this._selection.positionLineNumber-1);if(W==="TM_LINE_NUMBER")return String(this._selection.positionLineNumber)}}return}}class Y{constructor(H,W){this._labelService=H,this._model=W}resolve(H){const{name:W}=H;if(W==="TM_FILENAME")return b.a(this._model.uri.fsPath);if(W==="TM_FILENAME_BASE"){const ne=b.a(this._model.uri.fsPath),Ce=ne.lastIndexOf(".");return Ce<=0?ne:ne.slice(0,Ce)}else{if(W==="TM_DIRECTORY")return b.b(this._model.uri.fsPath)==="."?"":this._labelService.getUriLabel(Object(m.d)(this._model.uri));if(W==="TM_FILEPATH")return this._labelService.getUriLabel(this._model.uri);if(W==="RELATIVE_FILEPATH")return this._labelService.getUriLabel(this._model.uri,{relative:!0,noPrefix:!0})}return}}class K{constructor(H,W,ne,Ce){this._readClipboardText=H,this._selectionIdx=W,this._selectionCount=ne,this._spread=Ce}resolve(H){if(H.name!=="CLIPBOARD")return;const W=this._readClipboardText();if(!W)return;if(this._spread){const ne=W.split(/\r\n|\n|\r/).filter(Ce=>!Object(L.C)(Ce));if(ne.length===this._selectionCount)return ne[this._selectionIdx]}return W}}class Q{constructor(H,W){this._model=H,this._selection=W}resolve(H){const{name:W}=H,ne=this._model.getLanguageIdAtPosition(this._selection.selectionStartLineNumber,this._selection.selectionStartColumn),Ce=C.b.getComments(ne);return Ce?W==="LINE_COMMENT"?Ce.lineCommentToken||void 0:W==="BLOCK_COMMENT_START"?Ce.blockCommentStartToken||void 0:W==="BLOCK_COMMENT_END"&&Ce.blockCommentEndToken||void 0:void 0}}class ee{constructor(){this._date=new Date}resolve(H){const{name:W}=H;return W==="CURRENT_YEAR"?String(this._date.getFullYear()):W==="CURRENT_YEAR_SHORT"?String(this._date.getFullYear()).slice(-2):W==="CURRENT_MONTH"?String(this._date.getMonth().valueOf()+1).padStart(2,"0"):W==="CURRENT_DATE"?String(this._date.getDate().valueOf()).padStart(2,"0"):W==="CURRENT_HOUR"?String(this._date.getHours().valueOf()).padStart(2,"0"):W==="CURRENT_MINUTE"?String(this._date.getMinutes().valueOf()).padStart(2,"0"):W==="CURRENT_SECOND"?String(this._date.getSeconds().valueOf()).padStart(2,"0"):W==="CURRENT_DAY_NAME"?ee.dayNames[this._date.getDay()]:W==="CURRENT_DAY_NAME_SHORT"?ee.dayNamesShort[this._date.getDay()]:W==="CURRENT_MONTH_NAME"?ee.monthNames[this._date.getMonth()]:W==="CURRENT_MONTH_NAME_SHORT"?ee.monthNamesShort[this._date.getMonth()]:W==="CURRENT_SECONDS_UNIX"?String(Math.floor(this._date.getTime()/1e3)):void 0}}ee.dayNames=[v.a("Sunday","Sunday"),v.a("Monday","Monday"),v.a("Tuesday","Tuesday"),v.a("Wednesday","Wednesday"),v.a("Thursday","Thursday"),v.a("Friday","Friday"),v.a("Saturday","Saturday")],ee.dayNamesShort=[v.a("SundayShort","Sun"),v.a("MondayShort","Mon"),v.a("TuesdayShort","Tue"),v.a("WednesdayShort","Wed"),v.a("ThursdayShort","Thu"),v.a("FridayShort","Fri"),v.a("SaturdayShort","Sat")],ee.monthNames=[v.a("January","January"),v.a("February","February"),v.a("March","March"),v.a("April","April"),v.a("May","May"),v.a("June","June"),v.a("July","July"),v.a("August","August"),v.a("September","September"),v.a("October","October"),v.a("November","November"),v.a("December","December")],ee.monthNamesShort=[v.a("JanuaryShort","Jan"),v.a("FebruaryShort","Feb"),v.a("MarchShort","Mar"),v.a("AprilShort","Apr"),v.a("MayShort","May"),v.a("JuneShort","Jun"),v.a("JulyShort","Jul"),v.a("AugustShort","Aug"),v.a("SeptemberShort","Sep"),v.a("OctoberShort","Oct"),v.a("NovemberShort","Nov"),v.a("DecemberShort","Dec")];class Se{constructor(H){this._workspaceService=H}resolve(H){if(!this._workspaceService)return;const W=G(this._workspaceService.getWorkspace());return W?H.name==="WORKSPACE_NAME"?this._resolveWorkspaceName(W):H.name==="WORKSPACE_FOLDER"?this._resoveWorkspacePath(W):void 0:void 0}_resolveWorkspaceName(H){if(V(H))return b.a(H.uri.path);let W=b.a(H.configPath.path);return W.endsWith(j)&&(W=W.substr(0,W.length-j.length-1)),W}_resoveWorkspacePath(H){if(V(H))return Object(n.b)(H.uri.fsPath);let W=b.a(H.configPath.path),ne=H.configPath.fsPath;return ne.endsWith(W)&&(ne=ne.substr(0,ne.length-W.length-1)),ne?Object(n.b)(ne):"/"}}class fe{resolve(H){const{name:W}=H;return W==="RANDOM"?Math.random().toString().slice(-6):W==="RANDOM_HEX"?Math.random().toString(16).slice(-6):W==="UUID"?y():void 0}}Object(d.f)((H,W)=>{function ne(Ce){const Le=H.getColor(Ce);return Le?Le.toString():"transparent"}W.addRule(`.monaco-editor .snippet-placeholder { background-color: ${ne(u.Kc)}; outline-color: ${ne(u.Lc)}; }`),W.addRule(`.monaco-editor .finish-snippet-placeholder { background-color: ${ne(u.Ic)}; outline-color: ${ne(u.Jc)}; }`)});class q{constructor(H,W,ne,Ce){this._editor=H,this._snippet=W,this._offset=ne,this._snippetLineLeadingWhitespace=Ce,this._nestingLevel=1,this._placeholderGroups=Object(h.l)(W.placeholders,p.b.compareByIndex),this._placeholderGroupsIdx=-1}dispose(){this._placeholderDecorations&&this._editor.deltaDecorations([...this._placeholderDecorations.values()],[]),this._placeholderGroups.length=0}_initDecorations(){if(this._placeholderDecorations)return;this._placeholderDecorations=new Map;const H=this._editor.getModel();this._editor.changeDecorations(W=>{for(const ne of this._snippet.placeholders){const Ce=this._snippet.offset(ne),Le=this._snippet.fullLen(ne),ce=k.a.fromPositions(H.getPositionAt(this._offset+Ce),H.getPositionAt(this._offset+Ce+Le)),me=ne.isFinalTabstop?q._decor.inactiveFinal:q._decor.inactive,Oe=W.addDecoration(ce,me);this._placeholderDecorations.set(ne,Oe)}})}move(H){if(!this._editor.hasModel())return[];if(this._initDecorations(),this._placeholderGroupsIdx>=0){let Ce=[];for(const Le of this._placeholderGroups[this._placeholderGroupsIdx])if(Le.transform){const ce=this._placeholderDecorations.get(Le),me=this._editor.getModel().getDecorationRange(ce),Oe=this._editor.getModel().getValueInRange(me),oe=Le.transform.resolve(Oe).split(/\r\n|\r|\n/);for(let De=1;De0&&this._editor.executeEdits("snippet.placeholderTransform",Ce)}let W=!1;H===!0&&this._placeholderGroupsIdx0&&(this._placeholderGroupsIdx-=1,W=!0);const ne=this._editor.getModel().changeDecorations(Ce=>{const Le=new Set,ce=[];for(const me of this._placeholderGroups[this._placeholderGroupsIdx]){const Oe=this._placeholderDecorations.get(me),oe=this._editor.getModel().getDecorationRange(Oe);ce.push(new O.a(oe.startLineNumber,oe.startColumn,oe.endLineNumber,oe.endColumn)),W=W&&this._hasPlaceholderBeenCollapsed(me),Ce.changeDecorationOptions(Oe,me.isFinalTabstop?q._decor.activeFinal:q._decor.active),Le.add(me);for(const De of this._snippet.enclosingPlaceholders(me)){const Ne=this._placeholderDecorations.get(De);Ce.changeDecorationOptions(Ne,De.isFinalTabstop?q._decor.activeFinal:q._decor.active),Le.add(De)}}for(const[me,Oe]of this._placeholderDecorations)Le.has(me)||Ce.changeDecorationOptions(Oe,me.isFinalTabstop?q._decor.inactiveFinal:q._decor.inactive);return ce});return W?this.move(H):ne!=null?ne:[]}_hasPlaceholderBeenCollapsed(H){let W=H;for(;W;){if(W instanceof p.b){const ne=this._placeholderDecorations.get(W),Ce=this._editor.getModel().getDecorationRange(ne);if(Ce.isEmpty()&&W.toString().length>0)return!0}W=W.parent}return!1}get isAtFirstPlaceholder(){return this._placeholderGroupsIdx<=0||this._placeholderGroups.length===0}get isAtLastPlaceholder(){return this._placeholderGroupsIdx===this._placeholderGroups.length-1}get hasPlaceholder(){return this._snippet.placeholders.length>0}computePossibleSelections(){const H=new Map;for(const W of this._placeholderGroups){let ne;for(const Ce of W){if(Ce.isFinalTabstop)break;ne||(ne=[],H.set(Ce.index,ne));const Le=this._placeholderDecorations.get(Ce),ce=this._editor.getModel().getDecorationRange(Le);if(!ce){H.delete(Ce.index);break}ne.push(ce)}}return H}get choice(){return this._placeholderGroups[this._placeholderGroupsIdx][0].choice}merge(H){const W=this._editor.getModel();this._nestingLevel*=10,this._editor.changeDecorations(ne=>{for(const Ce of this._placeholderGroups[this._placeholderGroupsIdx]){const Le=H.shift();console.assert(!Le._placeholderDecorations);const ce=Le._snippet.placeholderInfo.last.index;for(const Oe of Le._snippet.placeholderInfo.all)Oe.isFinalTabstop?Oe.index=Ce.index+(ce+1)/this._nestingLevel:Oe.index=Ce.index+Oe.index/this._nestingLevel;this._snippet.replace(Ce,Le._snippet.children);const me=this._placeholderDecorations.get(Ce);ne.removeDecoration(me),this._placeholderDecorations.delete(Ce);for(const Oe of Le._snippet.placeholders){const oe=Le._snippet.offset(Oe),De=Le._snippet.fullLen(Oe),Ne=k.a.fromPositions(W.getPositionAt(Le._offset+oe),W.getPositionAt(Le._offset+oe+De)),ve=ne.addDecoration(Ne,q._decor.inactive);this._placeholderDecorations.set(Oe,ve)}}this._placeholderGroups=Object(h.l)(this._snippet.placeholders,p.b.compareByIndex)})}}q._decor={active:S.b.register({description:"snippet-placeholder-1",stickiness:0,className:"snippet-placeholder"}),inactive:S.b.register({description:"snippet-placeholder-2",stickiness:1,className:"snippet-placeholder"}),activeFinal:S.b.register({description:"snippet-placeholder-3",stickiness:1,className:"finish-snippet-placeholder"}),inactiveFinal:S.b.register({description:"snippet-placeholder-4",stickiness:1,className:"finish-snippet-placeholder"})};const te={overwriteBefore:0,overwriteAfter:0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};class U{constructor(H,W,ne=te){this._templateMerges=[],this._snippets=[],this._editor=H,this._template=W,this._options=ne}static adjustWhitespace(H,W,ne,Ce,Le){const ce=H.getLineContent(W.lineNumber),me=Object(L.x)(ce,0,W.column-1);let Oe;return ne.walk(oe=>{if(!(oe instanceof p.d)||oe.parent instanceof p.a)return!0;const De=oe.value.split(/\r\n|\r|\n/);if(Ce){const ve=ne.offset(oe);if(ve===0)De[0]=H.normalizeIndentation(De[0]);else{Oe=Oe!=null?Oe:ne.toString();let re=Oe.charCodeAt(ve-1);(re===10||re===13)&&(De[0]=H.normalizeIndentation(me+De[0]))}for(let re=1;reTe.get(E.a)),re=H.invokeWithinContext(Te=>new Y(Te.get(f.a),Ne)),we=()=>me;let Ie=0,ge=Ne.getValueInRange(U.adjustSelection(Ne,H.getSelection(),ne,0)),ye=Ne.getValueInRange(U.adjustSelection(Ne,H.getSelection(),0,Ce)),ze=Ne.getLineFirstNonWhitespaceColumn(H.getSelection().positionLineNumber);const xe=H.getSelections().map((Te,He)=>({selection:Te,idx:He})).sort((Te,He)=>k.a.compareRangesUsingStarts(Te.selection,He.selection));for(const{selection:Te,idx:He}of xe){let st=U.adjustSelection(Ne,Te,ne,0),nt=U.adjustSelection(Ne,Te,0,Ce);ge!==Ne.getValueInRange(st)&&(st=Te),ye!==Ne.getValueInRange(nt)&&(nt=Te);const rt=Te.setStartPosition(st.startLineNumber,st.startColumn).setEndPosition(nt.endLineNumber,nt.endColumn),wt=new p.c().parse(W,!0,Le),Pt=rt.getStartPosition(),no=U.adjustWhitespace(Ne,Pt,wt,ce||He>0&&ze!==Ne.getLineFirstNonWhitespaceColumn(Te.positionLineNumber),!0);wt.resolveVariables(new B([re,new K(we,He,xe.length,H.getOption(70)==="spread"),new z(Ne,Te,He,Oe),new Q(Ne,Te),new ee,new Se(ve),new fe]));const ht=Ne.getOffsetAt(Pt)+Ie;Ie+=wt.toString().length-Ne.getValueLengthInRange(rt),oe[He]=I.a.replace(rt,wt.toString()),oe[He].identifier={major:He,minor:0},De[He]=new q(H,wt,ht,no)}return{edits:oe,snippets:De}}dispose(){Object(P.f)(this._snippets)}_logInfo(){return`template="${this._template}", merged_templates="${this._templateMerges.join(" -> ")}"`}insert(){if(!this._editor.hasModel())return;const{edits:H,snippets:W}=U.createEditsAndSnippets(this._editor,this._template,this._options.overwriteBefore,this._options.overwriteAfter,!1,this._options.adjustWhitespace,this._options.clipboardText,this._options.overtypingCapturer);this._snippets=W,this._editor.executeEdits("snippet",H,ne=>this._snippets[0].hasPlaceholder?this._move(!0):ne.filter(Ce=>!!Ce.identifier).map(Ce=>O.a.fromPositions(Ce.range.getEndPosition()))),this._editor.revealRange(this._editor.getSelections()[0])}merge(H,W=te){if(!this._editor.hasModel())return;this._templateMerges.push([this._snippets[0]._nestingLevel,this._snippets[0]._placeholderGroupsIdx,H]);const{edits:ne,snippets:Ce}=U.createEditsAndSnippets(this._editor,H,W.overwriteBefore,W.overwriteAfter,!0,W.adjustWhitespace,W.clipboardText,W.overtypingCapturer);this._editor.executeEdits("snippet",ne,Le=>{for(const ce of this._snippets)ce.merge(Ce);return console.assert(Ce.length===0),this._snippets[0].hasPlaceholder?this._move(void 0):Le.filter(ce=>!!ce.identifier).map(ce=>O.a.fromPositions(ce.range.getEndPosition()))})}next(){const H=this._move(!0);this._editor.setSelections(H),this._editor.revealPositionInCenterIfOutsideViewport(H[0].getPosition())}prev(){const H=this._move(!1);this._editor.setSelections(H),this._editor.revealPositionInCenterIfOutsideViewport(H[0].getPosition())}_move(H){const W=[];for(const ne of this._snippets){const Ce=ne.move(H);W.push(...Ce)}return W}get isAtFirstPlaceholder(){return this._snippets[0].isAtFirstPlaceholder}get isAtLastPlaceholder(){return this._snippets[0].isAtLastPlaceholder}get hasPlaceholder(){return this._snippets[0].hasPlaceholder}get choice(){return this._snippets[0].choice}isSelectionWithinPlaceholders(){if(!this.hasPlaceholder)return!1;const H=this._editor.getSelections();if(H.length{Le.push(...Ce.get(ce))})}H.sort(k.a.compareRangesUsingStarts);for(let[ne,Ce]of W){if(Ce.length!==H.length){W.delete(ne);continue}Ce.sort(k.a.compareRangesUsingStarts);for(let Le=0;Le0}}},WqXY:function(ft,w,e){"use strict";e.d(w,"a",function(){return d});var h=e("EffR"),P=e("uDWl"),L=e("7/Ik"),A=e("8HAY"),I=e("MI8n"),k=e("pmY6"),O=e("746U"),S=e("yEoX"),f=e.n(S),u=function(E,p,n,b){function m(c){return c instanceof n?c:new n(function(l){l(c)})}return new(n||(n=Promise))(function(c,l){function g(v){try{C(b.next(v))}catch(D){l(D)}}function y(v){try{C(b.throw(v))}catch(D){l(D)}}function C(v){v.done?c(v.value):m(v.value).then(g,y)}C((b=b.apply(E,p||[])).next())})};class d extends k.a{constructor(E,p={}){var n,b,m,c,l,g;super();this.triggerKeyDown=!1,this.focusable=!0,this._onDidBlur=this._register(new I.b),this.onDidBlur=this._onDidBlur.event,this._onDidCancel=this._register(new I.b({onFirstListenerAdd:()=>this.cancelHasListener=!0})),this.onDidCancel=this._onDidCancel.event,this.cancelHasListener=!1,this._onDidRun=this._register(new I.b),this.onDidRun=this._onDidRun.event,this._onBeforeRun=this._register(new I.b),this.onBeforeRun=this._onBeforeRun.event,this.options=p,this._context=(n=p.context)!==null&&n!==void 0?n:null,this._orientation=(b=this.options.orientation)!==null&&b!==void 0?b:0,this._triggerKeys={keyDown:(c=(m=this.options.triggerKeys)===null||m===void 0?void 0:m.keyDown)!==null&&c!==void 0?c:!1,keys:(g=(l=this.options.triggerKeys)===null||l===void 0?void 0:l.keys)!==null&&g!==void 0?g:[3,10]},this.options.actionRunner?this._actionRunner=this.options.actionRunner:(this._actionRunner=new A.b,this._register(this._actionRunner)),this._register(this._actionRunner.onDidRun(v=>this._onDidRun.fire(v))),this._register(this._actionRunner.onBeforeRun(v=>this._onBeforeRun.fire(v))),this._actionIds=[],this.viewItems=[],this.focusedItem=void 0,this.domNode=document.createElement("div"),this.domNode.className="monaco-action-bar",p.animated!==!1&&this.domNode.classList.add("animated");let y,C;switch(this._orientation){case 0:y=[15],C=[17];break;case 1:y=[16],C=[18],this.domNode.className+=" vertical";break}this._register(h.i(this.domNode,h.d.KEY_DOWN,v=>{const D=new P.a(v);let j=!0;const V=typeof this.focusedItem=="number"?this.viewItems[this.focusedItem]:void 0;y&&(D.equals(y[0])||D.equals(y[1]))?j=this.focusPrevious():C&&(D.equals(C[0])||D.equals(C[1]))?j=this.focusNext():D.equals(9)&&this.cancelHasListener?this._onDidCancel.fire():D.equals(14)?j=this.focusFirst():D.equals(13)?j=this.focusLast():D.equals(2)&&V instanceof L.b&&V.trapsArrowNavigation?j=this.focusNext():this.isTriggerKeyEvent(D)?this._triggerKeys.keyDown?this.doTrigger(D):this.triggerKeyDown=!0:j=!1,j&&(D.preventDefault(),D.stopPropagation())})),this._register(h.i(this.domNode,h.d.KEY_UP,v=>{const D=new P.a(v);this.isTriggerKeyEvent(D)?(!this._triggerKeys.keyDown&&this.triggerKeyDown&&(this.triggerKeyDown=!1,this.doTrigger(D)),D.preventDefault(),D.stopPropagation()):(D.equals(2)||D.equals(1024|2))&&this.updateFocusedItem()})),this.focusTracker=this._register(h.Y(this.domNode)),this._register(this.focusTracker.onDidBlur(()=>{(h.y()===this.domNode||!h.L(h.y(),this.domNode))&&(this._onDidBlur.fire(),this.focusedItem=void 0,this.triggerKeyDown=!1)})),this._register(this.focusTracker.onDidFocus(()=>this.updateFocusedItem())),this.actionsList=document.createElement("ul"),this.actionsList.className="actions-container",this.actionsList.setAttribute("role","toolbar"),this.options.ariaLabel&&this.actionsList.setAttribute("aria-label",this.options.ariaLabel),this.domNode.appendChild(this.actionsList),E.appendChild(this.domNode)}isTriggerKeyEvent(E){let p=!1;return this._triggerKeys.keys.forEach(n=>{p=p||E.equals(n)}),p}updateFocusedItem(){for(let E=0;Ep.setActionContext(E))}get actionRunner(){return this._actionRunner}set actionRunner(E){E&&(this._actionRunner=E,this.viewItems.forEach(p=>p.actionRunner=E))}getContainer(){return this.domNode}push(E,p={}){const n=Array.isArray(E)?E:[E];let b=O.j(p.index)?p.index:null;n.forEach(m=>{const c=document.createElement("li");c.className="action-item",c.setAttribute("role","presentation"),this.options.allowContextMenu||this._register(h.i(c,h.d.CONTEXT_MENU,g=>{h.c.stop(g,!0)}));let l;this.options.actionViewItemProvider&&(l=this.options.actionViewItemProvider(m)),l||(l=new L.a(this.context,m,p)),l.actionRunner=this._actionRunner,l.setActionContext(this.context),l.render(c),this.focusable&&l instanceof L.b&&this.viewItems.length===0&&l.setFocusable(!0),b===null||b<0||b>=this.actionsList.children.length?(this.actionsList.appendChild(c),this.viewItems.push(l),this._actionIds.push(m.id)):(this.actionsList.insertBefore(c,this.actionsList.children[b]),this.viewItems.splice(b,0,l),this._actionIds.splice(b,0,m.id),b++)}),typeof this.focusedItem=="number"&&this.focus(this.focusedItem)}clear(){Object(k.f)(this.viewItems),this.viewItems=[],this._actionIds=[],h.t(this.actionsList)}length(){return this.viewItems.length}focus(E){let p=!1,n;if(E===void 0?p=!0:typeof E=="number"?n=E:typeof E=="boolean"&&(p=E),p&&typeof this.focusedItem=="undefined"){const b=this.viewItems.findIndex(m=>m.isEnabled());this.focusedItem=b===-1?void 0:b,this.updateFocus()}else n!==void 0&&(this.focusedItem=n),this.updateFocus()}focusFirst(){return this.focusedItem=this.length()>1?1:0,this.focusPrevious()}focusLast(){return this.focusedItem=this.length()<2?0:this.length()-2,this.focusNext()}focusNext(){if(typeof this.focusedItem=="undefined")this.focusedItem=this.viewItems.length-1;else if(this.viewItems.length<=1)return!1;const E=this.focusedItem;let p;do{if(this.options.preventLoopNavigation&&this.focusedItem+1>=this.viewItems.length)return this.focusedItem=E,!1;this.focusedItem=(this.focusedItem+1)%this.viewItems.length,p=this.viewItems[this.focusedItem]}while(this.focusedItem!==E&&this.options.focusOnlyEnabledItems&&!p.isEnabled());return this.updateFocus(),!0}focusPrevious(){if(typeof this.focusedItem=="undefined")this.focusedItem=0;else if(this.viewItems.length<=1)return!1;const E=this.focusedItem;let p;do{if(this.focusedItem=this.focusedItem-1,this.focusedItem<0){if(this.options.preventLoopNavigation)return this.focusedItem=E,!1;this.focusedItem=this.viewItems.length-1}p=this.viewItems[this.focusedItem]}while(this.focusedItem!==E&&this.options.focusOnlyEnabledItems&&!p.isEnabled());return this.updateFocus(!0),!0}updateFocus(E,p){typeof this.focusedItem=="undefined"&&this.actionsList.focus({preventScroll:p});for(let n=0;np(void 0,void 0,void 0,function*(){const[ge,ye,ze]=Ie;Object(O.c)(S.a.isUri(ge)),Object(O.c)(f.a.isIPosition(ye)),Object(O.c)(typeof ze=="string"||!ze);const xe=yield we.get(u.a).createModelReference(ge);try{const Te=yield b(xe.object.textEditorModel,f.a.lift(ye),{triggerKind:A.C.Invoke,isRetrigger:!1,triggerCharacter:ze},I.a.None);return Te?(setTimeout(()=>Te.dispose(),0),Te.value):void 0}finally{xe.dispose()}}));var m=e("3/fG"),c=e("Cg/j"),l=e("EffR"),g=e("OBOq"),y=e("GJhM"),C=e("Vhoy"),v=e("MI8n"),D=e("N0LK"),j=e("yrU1"),V=e("v6HE"),G=e("WBhO"),B=e("X+cX"),z=e("MXAL"),Y=function(we,Ie,ge,ye){function ze(xe){return xe instanceof ge?xe:new ge(function(Te){Te(xe)})}return new(ge||(ge=Promise))(function(xe,Te){function He(rt){try{nt(ye.next(rt))}catch(wt){Te(wt)}}function st(rt){try{nt(ye.throw(rt))}catch(wt){Te(wt)}}function nt(rt){rt.done?xe(rt.value):ze(rt.value).then(He,st)}nt((ye=ye.apply(we,Ie||[])).next())})},K;(function(we){we.Default={type:0};class Ie{constructor(ye,ze){this.request=ye,this.previouslyActiveHints=ze,this.type=2}}we.Pending=Ie;class ge{constructor(ye){this.hints=ye,this.type=1}}we.Active=ge})(K||(K={}));class Q extends h.a{constructor(we,Ie=Q.DEFAULT_DELAY){super();this._onChangedHints=this._register(new v.b),this.onChangedHints=this._onChangedHints.event,this.triggerOnType=!1,this._state=K.Default,this._pendingTriggers=[],this._lastSignatureHelpResult=this._register(new h.d),this.triggerChars=new z.b,this.retriggerChars=new z.b,this.triggerId=0,this.editor=we,this.throttledDelayer=new B.a(Ie),this._register(this.editor.onDidBlurEditorWidget(()=>this.cancel())),this._register(this.editor.onDidChangeConfiguration(()=>this.onEditorConfigurationChange())),this._register(this.editor.onDidChangeModel(ge=>this.onModelChanged())),this._register(this.editor.onDidChangeModelLanguage(ge=>this.onModelChanged())),this._register(this.editor.onDidChangeCursorSelection(ge=>this.onCursorChange(ge))),this._register(this.editor.onDidChangeModelContent(ge=>this.onModelContentChange())),this._register(A.B.onDidChange(this.onModelChanged,this)),this._register(this.editor.onDidType(ge=>this.onDidType(ge))),this.onEditorConfigurationChange(),this.onModelChanged()}get state(){return this._state}set state(we){this._state.type===2&&this._state.request.cancel(),this._state=we}cancel(we=!1){this.state=K.Default,this.throttledDelayer.cancel(),we||this._onChangedHints.fire(void 0)}trigger(we,Ie){const ge=this.editor.getModel();if(!ge||!A.B.has(ge))return;const ye=++this.triggerId;this._pendingTriggers.push(we),this.throttledDelayer.trigger(()=>this.doTrigger(ye),Ie).catch(k.f)}next(){if(this.state.type!==1)return;const we=this.state.hints.signatures.length,Ie=this.state.hints.activeSignature,ge=Ie%we===we-1,ye=this.editor.getOption(75).cycle;if((we<2||ge)&&!ye){this.cancel();return}this.updateActiveSignature(ge&&ye?0:Ie+1)}previous(){if(this.state.type!==1)return;const we=this.state.hints.signatures.length,Ie=this.state.hints.activeSignature,ge=Ie===0,ye=this.editor.getOption(75).cycle;if((we<2||ge)&&!ye){this.cancel();return}this.updateActiveSignature(ge&&ye?we-1:Ie-1)}updateActiveSignature(we){if(this.state.type!==1)return;this.state=new K.Active(Object.assign(Object.assign({},this.state.hints),{activeSignature:we})),this._onChangedHints.fire(this.state.hints)}doTrigger(we){return Y(this,void 0,void 0,function*(){const Ie=this.state.type===1||this.state.type===2,ge=this.getLastActiveHints();if(this.cancel(!0),this._pendingTriggers.length===0)return!1;const ye=this._pendingTriggers.reduce(ee);this._pendingTriggers=[];const ze={triggerKind:ye.triggerKind,triggerCharacter:ye.triggerCharacter,isRetrigger:Ie,activeSignatureHelp:ge};if(!this.editor.hasModel())return!1;const xe=this.editor.getModel(),Te=this.editor.getPosition();this.state=new K.Pending(Object(B.h)(He=>b(xe,Te,ze,He)),ge);try{const He=yield this.state.request;return we!==this.triggerId?(He==null||He.dispose(),!1):!He||!He.value.signatures||He.value.signatures.length===0?(He==null||He.dispose(),this._lastSignatureHelpResult.clear(),this.cancel(),!1):(this.state=new K.Active(He.value),this._lastSignatureHelpResult.value=He,this._onChangedHints.fire(this.state.hints),!0)}catch(He){return we===this.triggerId&&(this.state=K.Default),Object(k.f)(He),!1}})}getLastActiveHints(){switch(this.state.type){case 1:return this.state.hints;case 2:return this.state.previouslyActiveHints;default:return}}get isTriggered(){return this.state.type===1||this.state.type===2||this.throttledDelayer.isTriggered()}onModelChanged(){this.cancel(),this.triggerChars=new z.b,this.retriggerChars=new z.b;const we=this.editor.getModel();if(!we)return;for(const Ie of A.B.ordered(we)){for(const ge of Ie.signatureHelpTriggerCharacters||[])this.triggerChars.add(ge.charCodeAt(0)),this.retriggerChars.add(ge.charCodeAt(0));for(const ge of Ie.signatureHelpRetriggerCharacters||[])this.retriggerChars.add(ge.charCodeAt(0))}}onDidType(we){if(!this.triggerOnType)return;const Ie=we.length-1,ge=we.charCodeAt(Ie);(this.triggerChars.has(ge)||this.isTriggered&&this.retriggerChars.has(ge))&&this.trigger({triggerKind:A.C.TriggerCharacter,triggerCharacter:we.charAt(Ie)})}onCursorChange(we){we.source==="mouse"?this.cancel():this.isTriggered&&this.trigger({triggerKind:A.C.ContentChange})}onModelContentChange(){this.isTriggered&&this.trigger({triggerKind:A.C.ContentChange})}onEditorConfigurationChange(){this.triggerOnType=this.editor.getOption(75).enabled,this.triggerOnType||this.cancel()}dispose(){this.cancel(!0),super.dispose()}}Q.DEFAULT_DELAY=120;function ee(we,Ie){switch(Ie.triggerKind){case A.C.Invoke:return Ie;case A.C.ContentChange:return we;case A.C.TriggerCharacter:default:return Ie}}var Se=e("W9cx"),fe=e("MD5Z"),q=e("v1vZ"),te=e("nEHx"),U=e("t9D7"),H=function(we,Ie,ge,ye){var ze=arguments.length,xe=ze<3?Ie:ye===null?ye=Object.getOwnPropertyDescriptor(Ie,ge):ye,Te;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")xe=Reflect.decorate(we,Ie,ge,ye);else for(var He=we.length-1;He>=0;He--)(Te=we[He])&&(xe=(ze<3?Te(xe):ze>3?Te(Ie,ge,xe):Te(Ie,ge))||xe);return ze>3&&xe&&Object.defineProperty(Ie,ge,xe),xe},W=function(we,Ie){return function(ge,ye){Ie(ge,ye,we)}};const ne=l.a,Ce=Object(q.b)("parameter-hints-next",C.b.chevronDown,m.a("parameterHintsNextIcon","Icon for show next parameter hint.")),Le=Object(q.b)("parameter-hints-previous",C.b.chevronUp,m.a("parameterHintsPreviousIcon","Icon for show previous parameter hint."));let ce=class we extends h.a{constructor(Ie,ge,ye,ze){super();this.editor=Ie,this.renderDisposeables=this._register(new h.b),this.visible=!1,this.announcedLabel=null,this.allowEditorOverflow=!0,this.markdownRenderer=this._register(new V.a({editor:Ie},ze,ye)),this.model=this._register(new Q(Ie)),this.keyVisible=n.Visible.bindTo(ge),this.keyMultipleSignatures=n.MultipleSignatures.bindTo(ge),this._register(this.model.onChangedHints(xe=>{xe?(this.show(),this.render(xe)):this.hide()}))}createParameterHintDOMNodes(){const Ie=ne(".editor-widget.parameter-hints-widget"),ge=l.q(Ie,ne(".phwrapper"));ge.tabIndex=-1;const ye=l.q(ge,ne(".controls")),ze=l.q(ye,ne(".button"+U.d.asCSSSelector(Le))),xe=l.q(ye,ne(".overloads")),Te=l.q(ye,ne(".button"+U.d.asCSSSelector(Ce)));this._register(l.i(ze,"click",Pt=>{l.c.stop(Pt),this.previous()})),this._register(l.i(Te,"click",Pt=>{l.c.stop(Pt),this.next()}));const He=ne(".body"),st=new y.a(He,{});this._register(st),ge.appendChild(st.getDomNode());const nt=l.q(He,ne(".signature")),rt=l.q(He,ne(".docs"));Ie.style.userSelect="text",this.domNodes={element:Ie,signature:nt,overloads:xe,docs:rt,scrollbar:st},this.editor.addContentWidget(this),this.hide(),this._register(this.editor.onDidChangeCursorSelection(Pt=>{this.visible&&this.editor.layoutContentWidget(this)}));const wt=()=>{if(!this.domNodes)return;const Pt=this.editor.getOption(43);this.domNodes.element.style.fontSize=`${Pt.fontSize}px`,this.domNodes.element.style.lineHeight=`${Pt.lineHeight/Pt.fontSize}`};wt(),this._register(v.c.chain(this.editor.onDidChangeConfiguration.bind(this.editor)).filter(Pt=>Pt.hasChanged(43)).on(wt,null)),this._register(this.editor.onDidLayoutChange(Pt=>this.updateMaxHeight())),this.updateMaxHeight()}show(){if(this.visible)return;this.domNodes||this.createParameterHintDOMNodes(),this.keyVisible.set(!0),this.visible=!0,setTimeout(()=>{this.domNodes&&this.domNodes.element.classList.add("visible")},100),this.editor.layoutContentWidget(this)}hide(){if(this.renderDisposeables.clear(),!this.visible)return;this.keyVisible.reset(),this.visible=!1,this.announcedLabel=null,this.domNodes&&this.domNodes.element.classList.remove("visible"),this.editor.layoutContentWidget(this)}getPosition(){return this.visible?{position:this.editor.getPosition(),preference:[1,2]}:null}render(Ie){var ge;if(this.renderDisposeables.clear(),!this.domNodes)return;const ye=Ie.signatures.length>1;this.domNodes.element.classList.toggle("multiple",ye),this.keyMultipleSignatures.set(ye),this.domNodes.signature.innerText="",this.domNodes.docs.innerText="";const ze=Ie.signatures[Ie.activeSignature];if(!ze)return;const xe=l.q(this.domNodes.signature,ne(".code")),Te=this.editor.getOption(43);xe.style.fontSize=`${Te.fontSize}px`,xe.style.fontFamily=Te.fontFamily;const He=ze.parameters.length>0,st=(ge=ze.activeParameter)!==null&&ge!==void 0?ge:Ie.activeParameter;if(He)this.renderParameters(xe,ze,st);else{const wt=l.q(xe,ne("span"));wt.textContent=ze.label}const nt=ze.parameters[st];if(nt==null?void 0:nt.documentation){const wt=ne("span.documentation");if(typeof nt.documentation=="string")wt.textContent=nt.documentation;else{const Pt=this.renderMarkdownDocs(nt.documentation);wt.appendChild(Pt.element)}l.q(this.domNodes.docs,ne("p",{},wt))}if(!(ze.documentation===void 0))if(typeof ze.documentation=="string")l.q(this.domNodes.docs,ne("p",{},ze.documentation));else{const wt=this.renderMarkdownDocs(ze.documentation);l.q(this.domNodes.docs,wt.element)}const rt=this.hasDocs(ze,nt);if(this.domNodes.signature.classList.toggle("has-docs",rt),this.domNodes.docs.classList.toggle("empty",!rt),this.domNodes.overloads.textContent=String(Ie.activeSignature+1).padStart(Ie.signatures.length.toString().length,"0")+"/"+Ie.signatures.length,nt){let wt="";const Pt=ze.parameters[st];Array.isArray(Pt.label)?wt=ze.label.substring(Pt.label[0],Pt.label[1]):wt=Pt.label,Pt.documentation&&(wt+=typeof Pt.documentation=="string"?`, ${Pt.documentation}`:`, ${Pt.documentation.value}`),ze.documentation&&(wt+=typeof ze.documentation=="string"?`, ${ze.documentation}`:`, ${ze.documentation.value}`),this.announcedLabel!==wt&&(g.a(m.a("hint","{0}, hint",wt)),this.announcedLabel=wt)}this.editor.layoutContentWidget(this),this.domNodes.scrollbar.scanDomNode()}renderMarkdownDocs(Ie){const ge=this.renderDisposeables.add(this.markdownRenderer.render(Ie,{asyncRenderCallback:()=>{var ye;(ye=this.domNodes)===null||ye===void 0||ye.scrollbar.scanDomNode()}}));return ge.element.classList.add("markdown-docs"),ge}hasDocs(Ie,ge){return ge&&typeof ge.documentation=="string"&&Object(O.a)(ge.documentation).length>0||(ge&&typeof ge.documentation=="object"&&Object(O.a)(ge.documentation).value.length>0||Ie.documentation&&typeof Ie.documentation=="string"&&Object(O.a)(Ie.documentation).length>0)?!0:!!(Ie.documentation&&typeof Ie.documentation=="object"&&Object(O.a)(Ie.documentation.value).length>0)}renderParameters(Ie,ge,ye){const[ze,xe]=this.getParameterLabelOffsets(ge,ye),Te=document.createElement("span");Te.textContent=ge.label.substring(0,ze);const He=document.createElement("span");He.textContent=ge.label.substring(ze,xe),He.className="parameter active";const st=document.createElement("span");st.textContent=ge.label.substring(xe),l.q(Ie,Te,He,st)}getParameterLabelOffsets(Ie,ge){const ye=Ie.parameters[ge];if(ye){if(Array.isArray(ye.label))return ye.label;if(ye.label.length){const ze=new RegExp(`(\\W|^)${Object(D.t)(ye.label)}(?=\\W|$)`,"g");ze.test(Ie.label);const xe=ze.lastIndex-ye.label.length;return xe>=0?[xe,ze.lastIndex]:[0,0]}else return[0,0]}else return[0,0]}next(){this.editor.focus(),this.model.next()}previous(){this.editor.focus(),this.model.previous()}cancel(){this.model.cancel()}getDomNode(){return this.domNodes||this.createParameterHintDOMNodes(),this.domNodes.element}getId(){return we.ID}trigger(Ie){this.model.trigger(Ie,0)}updateMaxHeight(){if(!this.domNodes)return;const Ie=Math.max(this.editor.getLayoutInfo().height/4,250),ge=`${Ie}px`;this.domNodes.element.style.maxHeight=ge;const ye=this.domNodes.element.getElementsByClassName("phwrapper");ye.length&&(ye[0].style.maxHeight=ge)}};ce.ID="editor.widget.parameterHintsWidget",ce=H([W(1,E.b),W(2,Se.a),W(3,G.a)],ce);const me=Object(fe.Cc)("editorHoverWidget.highlightForeground",{dark:fe.Ob,light:fe.Ob,hc:fe.Ob},m.a("editorHoverWidgetHighlightForeground","Foreground color of the active item in the parameter hint."));Object(U.f)((we,Ie)=>{const ge=we.getColor(fe.F);if(ge){const nt=we.type===te.a.HIGH_CONTRAST?2:1;Ie.addRule(`.monaco-editor .parameter-hints-widget { border: ${nt}px solid ${ge}; }`),Ie.addRule(`.monaco-editor .parameter-hints-widget.multiple .body { border-left: 1px solid ${ge.transparent(.5)}; }`),Ie.addRule(`.monaco-editor .parameter-hints-widget .signature.has-docs { border-bottom: 1px solid ${ge.transparent(.5)}; }`)}const ye=we.getColor(fe.E);ye&&Ie.addRule(`.monaco-editor .parameter-hints-widget { background-color: ${ye}; }`);const ze=we.getColor(fe.Pc);ze&&Ie.addRule(`.monaco-editor .parameter-hints-widget a { color: ${ze}; }`);const xe=we.getColor(fe.Oc);xe&&Ie.addRule(`.monaco-editor .parameter-hints-widget a:hover { color: ${xe}; }`);const Te=we.getColor(fe.G);Te&&Ie.addRule(`.monaco-editor .parameter-hints-widget { color: ${Te}; }`);const He=we.getColor(fe.Nc);He&&Ie.addRule(`.monaco-editor .parameter-hints-widget code { background-color: ${He}; }`);const st=we.getColor(me);st&&Ie.addRule(`.monaco-editor .parameter-hints-widget .parameter.active { color: ${st}}`)});var Oe=function(we,Ie,ge,ye){var ze=arguments.length,xe=ze<3?Ie:ye===null?ye=Object.getOwnPropertyDescriptor(Ie,ge):ye,Te;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")xe=Reflect.decorate(we,Ie,ge,ye);else for(var He=we.length-1;He>=0;He--)(Te=we[He])&&(xe=(ze<3?Te(xe):ze>3?Te(Ie,ge,xe):Te(Ie,ge))||xe);return ze>3&&xe&&Object.defineProperty(Ie,ge,xe),xe},oe=function(we,Ie){return function(ge,ye){Ie(ge,ye,we)}};let De=class we extends h.a{constructor(Ie,ge){super();this.editor=Ie,this.widget=this._register(ge.createInstance(ce,this.editor))}static get(Ie){return Ie.getContribution(we.ID)}cancel(){this.widget.cancel()}previous(){this.widget.previous()}next(){this.widget.next()}trigger(Ie){this.widget.trigger(Ie)}};De.ID="editor.controller.parameterHints",De=Oe([oe(1,c.a)],De);class Ne extends P.b{constructor(){super({id:"editor.action.triggerParameterHints",label:m.a("parameterHints.trigger.label","Trigger Parameter Hints"),alias:"Trigger Parameter Hints",precondition:L.a.hasSignatureHelpProvider,kbOpts:{kbExpr:L.a.editorTextFocus,primary:2048|1024|10,weight:100}})}run(we,Ie){const ge=De.get(Ie);ge&&ge.trigger({triggerKind:A.C.Invoke})}}Object(P.l)(De.ID,De),Object(P.j)(Ne);const ve=100+75,re=P.c.bindToContribution(De.get);Object(P.k)(new re({id:"closeParameterHints",precondition:n.Visible,handler:we=>we.cancel(),kbOpts:{weight:ve,kbExpr:L.a.focus,primary:9,secondary:[1024|9]}})),Object(P.k)(new re({id:"showPrevParameterHint",precondition:E.a.and(n.Visible,n.MultipleSignatures),handler:we=>we.previous(),kbOpts:{weight:ve,kbExpr:L.a.focus,primary:16,secondary:[512|16],mac:{primary:16,secondary:[512|16,256|46]}}})),Object(P.k)(new re({id:"showNextParameterHint",precondition:E.a.and(n.Visible,n.MultipleSignatures),handler:we=>we.next(),kbOpts:{weight:ve,kbExpr:L.a.focus,primary:18,secondary:[512|18],mac:{primary:18,secondary:[512|18,256|44]}}}))},"X+cX":function(ft,w,e){"use strict";e.d(w,"k",function(){return I}),e.d(w,"h",function(){return k}),e.d(w,"l",function(){return O}),e.d(w,"a",function(){return f}),e.d(w,"f",function(){return u}),e.d(w,"n",function(){return d}),e.d(w,"i",function(){return E}),e.d(w,"j",function(){return p}),e.d(w,"g",function(){return n}),e.d(w,"c",function(){return b}),e.d(w,"e",function(){return m}),e.d(w,"m",function(){return c}),e.d(w,"b",function(){return l}),e.d(w,"d",function(){return g});var h=e("JQT/"),P=e("/cxE"),L=e("pmY6"),A=function(y,C,v,D){function j(V){return V instanceof v?V:new v(function(G){G(V)})}return new(v||(v=Promise))(function(V,G){function B(K){try{Y(D.next(K))}catch(Q){G(Q)}}function z(K){try{Y(D.throw(K))}catch(Q){G(Q)}}function Y(K){K.done?V(K.value):j(K.value).then(B,z)}Y((D=D.apply(y,C||[])).next())})};function I(y){return!!y&&typeof y.then=="function"}function k(y){const C=new h.b,v=y(C.token),D=new Promise((j,V)=>{const G=C.token.onCancellationRequested(()=>{G.dispose(),C.dispose(),V(Object(P.b)())});Promise.resolve(v).then(B=>{G.dispose(),C.dispose(),j(B)},B=>{G.dispose(),C.dispose(),V(B)})});return new class{cancel(){C.cancel()}then(j,V){return D.then(j,V)}catch(j){return this.then(void 0,j)}finally(j){return D.finally(j)}}}function O(y,C,v){return Promise.race([y,new Promise(D=>C.onCancellationRequested(()=>D(v)))])}class S{constructor(){this.activePromise=null,this.queuedPromise=null,this.queuedPromiseFactory=null}queue(y){if(this.activePromise){if(this.queuedPromiseFactory=y,!this.queuedPromise){const C=()=>{this.queuedPromise=null;const v=this.queue(this.queuedPromiseFactory);return this.queuedPromiseFactory=null,v};this.queuedPromise=new Promise(v=>{this.activePromise.then(C,C).then(v)})}return new Promise((C,v)=>{this.queuedPromise.then(C,v)})}return this.activePromise=y(),new Promise((C,v)=>{this.activePromise.then(D=>{this.activePromise=null,C(D)},D=>{this.activePromise=null,v(D)})})}}class f{constructor(y){this.defaultDelay=y,this.timeout=null,this.completionPromise=null,this.doResolve=null,this.doReject=null,this.task=null}trigger(y,C=this.defaultDelay){return this.task=y,this.cancelTimeout(),this.completionPromise||(this.completionPromise=new Promise((v,D)=>{this.doResolve=v,this.doReject=D}).then(()=>{if(this.completionPromise=null,this.doResolve=null,this.task){const v=this.task;return this.task=null,v()}return})),this.timeout=setTimeout(()=>{this.timeout=null,this.doResolve&&this.doResolve(null)},C),this.completionPromise}isTriggered(){return this.timeout!==null}cancel(){this.cancelTimeout(),this.completionPromise&&(this.doReject&&this.doReject(Object(P.b)()),this.completionPromise=null)}cancelTimeout(){this.timeout!==null&&(clearTimeout(this.timeout),this.timeout=null)}dispose(){this.cancel()}}class u{constructor(y){this.delayer=new f(y),this.throttler=new S}trigger(y,C){return this.delayer.trigger(()=>this.throttler.queue(y),C)}dispose(){this.delayer.dispose()}}function d(y,C){return C?new Promise((v,D)=>{const j=setTimeout(()=>{V.dispose(),v()},y),V=C.onCancellationRequested(()=>{clearTimeout(j),V.dispose(),D(Object(P.b)())})}):k(v=>d(y,v))}function E(y,C=0){const v=setTimeout(y,C);return Object(L.i)(()=>clearTimeout(v))}function p(y,C=D=>!!D,v=null){let D=0;const j=y.length,V=()=>{if(D>=j)return Promise.resolve(v);const G=y[D++],B=Promise.resolve(G());return B.then(z=>C(z)?Promise.resolve(z):V())};return V()}class n{constructor(y,C){this._token=-1,typeof y=="function"&&typeof C=="number"&&this.setIfNotSet(y,C)}dispose(){this.cancel()}cancel(){this._token!==-1&&(clearTimeout(this._token),this._token=-1)}cancelAndSet(y,C){this.cancel(),this._token=setTimeout(()=>{this._token=-1,y()},C)}setIfNotSet(y,C){if(this._token!==-1)return;this._token=setTimeout(()=>{this._token=-1,y()},C)}}class b{constructor(){this._token=-1}dispose(){this.cancel()}cancel(){this._token!==-1&&(clearInterval(this._token),this._token=-1)}cancelAndSet(y,C){this.cancel(),this._token=setInterval(()=>{y()},C)}}class m{constructor(y,C){this.timeoutToken=-1,this.runner=y,this.timeout=C,this.timeoutHandler=this.onTimeout.bind(this)}dispose(){this.cancel(),this.runner=null}cancel(){this.isScheduled()&&(clearTimeout(this.timeoutToken),this.timeoutToken=-1)}schedule(y=this.timeout){this.cancel(),this.timeoutToken=setTimeout(this.timeoutHandler,y)}get delay(){return this.timeout}set delay(y){this.timeout=y}isScheduled(){return this.timeoutToken!==-1}onTimeout(){this.timeoutToken=-1,this.runner&&this.doRun()}doRun(){this.runner&&this.runner()}}let c;(function(){typeof requestIdleCallback!="function"||typeof cancelIdleCallback!="function"?c=y=>{const C=setTimeout(()=>{const D=Date.now()+15;y(Object.freeze({didTimeout:!0,timeRemaining(){return Math.max(0,D-Date.now())}}))});let v=!1;return{dispose(){if(v)return;v=!0,clearTimeout(C)}}}:c=(y,C)=>{const v=requestIdleCallback(y,typeof C=="number"?{timeout:C}:void 0);let D=!1;return{dispose(){if(D)return;D=!0,cancelIdleCallback(v)}}}})();class l{constructor(y){this._didRun=!1,this._executor=()=>{try{this._value=y()}catch(C){this._error=C}finally{this._didRun=!0}},this._handle=c(()=>this._executor())}dispose(){this._handle.dispose()}get value(){if(this._didRun||(this._handle.dispose(),this._executor()),this._error)throw this._error;return this._value}get isInitialized(){return this._didRun}}var g;(function(y){function C(D){return A(this,void 0,void 0,function*(){let j;const V=yield Promise.all(D.map(G=>G.then(B=>B,B=>{j||(j=B);return})));if(typeof j!="undefined")throw j;return V})}y.settled=C;function v(D){return new Promise((j,V)=>A(this,void 0,void 0,function*(){try{yield D(j,V)}catch(G){V(G)}}))}y.withAsyncBody=v})(g||(g={}))},XQgg:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"rust",extensions:[".rs",".rlib"],aliases:["Rust","rust"],loader:function(){return e.e(376).then(e.bind(null,"/0xJ"))}})},XSiN:function(ft,w,e){"use strict";e.d(w,"a",function(){return A}),e.d(w,"b",function(){return I});var h=e("D3Dy"),P=e("51f4"),L=e("MNsG");class A{constructor(k){this.timestamp=Date.now(),this.browserEvent=k,this.leftButton=k.button===0,this.middleButton=k.button===1,this.rightButton=k.button===2,this.buttons=k.buttons,this.target=k.target,this.detail=k.detail||1,k.type==="dblclick"&&(this.detail=2),this.ctrlKey=k.ctrlKey,this.shiftKey=k.shiftKey,this.altKey=k.altKey,this.metaKey=k.metaKey,typeof k.pageX=="number"?(this.posx=k.pageX,this.posy=k.pageY):(this.posx=k.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,this.posy=k.clientY+document.body.scrollTop+document.documentElement.scrollTop);let O=P.a.getPositionOfChildWindowRelativeToAncestorWindow(self,k.view);this.posx-=O.left,this.posy-=O.top}preventDefault(){this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent.stopPropagation()}}class I{constructor(k,O=0,S=0){if(this.browserEvent=k||null,this.target=k?k.target||k.targetNode||k.srcElement:null,this.deltaY=S,this.deltaX=O,k){let f=k,u=k;if(typeof f.wheelDeltaY!="undefined")this.deltaY=f.wheelDeltaY/120;else if(typeof u.VERTICAL_AXIS!="undefined"&&u.axis===u.VERTICAL_AXIS)this.deltaY=-u.detail/3;else if(k.type==="wheel"){const d=k;d.deltaMode===d.DOM_DELTA_LINE?h.g&&!L.f?this.deltaY=-k.deltaY/3:this.deltaY=-k.deltaY:this.deltaY=-k.deltaY/40}if(typeof f.wheelDeltaX!="undefined")h.h&&L.i?this.deltaX=-(f.wheelDeltaX/120):this.deltaX=f.wheelDeltaX/120;else if(typeof u.HORIZONTAL_AXIS!="undefined"&&u.axis===u.HORIZONTAL_AXIS)this.deltaX=-k.detail/3;else if(k.type==="wheel"){const d=k;d.deltaMode===d.DOM_DELTA_LINE?h.g&&!L.f?this.deltaX=-k.deltaX/3:this.deltaX=-k.deltaX:this.deltaX=-k.deltaX/40}this.deltaY===0&&this.deltaX===0&&k.wheelDelta&&(this.deltaY=k.wheelDelta/120)}}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation()}}},XXBq:function(ft,w,e){},XXUj:function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("Cg/j");const P=Object(h.c)("telemetryService")},XtJs:function(ft,w,e){"use strict";e.r(w),e.d(w,"getOccurrencesAtPosition",function(){return G});var h=e("OBOq"),P=e("6OMU"),L=e("X+cX"),A=e("JQT/"),I=e("/cxE"),k=e("pmY6"),O=e("sswD"),S=e("aokT"),f=e("wQH0"),u=e("M1Kb"),d=e("tX9W"),E=e("twdY"),p=e("3/fG"),n=e("T8No"),b=e("MD5Z"),m=e("t9D7"),c=function(U,H,W,ne){var Ce=arguments.length,Le=Ce<3?H:ne===null?ne=Object.getOwnPropertyDescriptor(H,W):ne,ce;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Le=Reflect.decorate(U,H,W,ne);else for(var me=U.length-1;me>=0;me--)(ce=U[me])&&(Le=(Ce<3?ce(Le):Ce>3?ce(H,W,Le):ce(H,W))||Le);return Ce>3&&Le&&Object.defineProperty(H,W,Le),Le},l=function(U,H){return function(W,ne){H(W,ne,U)}};const g=Object(b.Cc)("editor.wordHighlightBackground",{dark:"#575757B8",light:"#57575740",hc:null},p.a("wordHighlight","Background color of a symbol during read-access, like reading a variable. The color must not be opaque so as not to hide underlying decorations."),!0),y=Object(b.Cc)("editor.wordHighlightStrongBackground",{dark:"#004972B8",light:"#0e639c40",hc:null},p.a("wordHighlightStrong","Background color of a symbol during write-access, like writing to a variable. The color must not be opaque so as not to hide underlying decorations."),!0),C=Object(b.Cc)("editor.wordHighlightBorder",{light:null,dark:null,hc:b.b},p.a("wordHighlightBorder","Border color of a symbol during read-access, like reading a variable.")),v=Object(b.Cc)("editor.wordHighlightStrongBorder",{light:null,dark:null,hc:b.b},p.a("wordHighlightStrongBorder","Border color of a symbol during write-access, like writing to a variable.")),D=Object(b.Cc)("editorOverviewRuler.wordHighlightForeground",{dark:"#A0A0A0CC",light:"#A0A0A0CC",hc:"#A0A0A0CC"},p.a("overviewRulerWordHighlightForeground","Overview ruler marker color for symbol highlights. The color must not be opaque so as not to hide underlying decorations."),!0),j=Object(b.Cc)("editorOverviewRuler.wordHighlightStrongForeground",{dark:"#C0A0C0CC",light:"#C0A0C0CC",hc:"#C0A0C0CC"},p.a("overviewRulerWordHighlightStrongForeground","Overview ruler marker color for write-access symbol highlights. The color must not be opaque so as not to hide underlying decorations."),!0),V=new n.c("hasWordHighlights",!1);function G(U,H,W){const ne=E.i.ordered(U);return Object(L.j)(ne.map(Ce=>()=>Promise.resolve(Ce.provideDocumentHighlights(U,H,W)).then(void 0,I.g)),P.n)}class B{constructor(U,H,W){this._wordRange=this._getCurrentWordRange(U,H),this.result=Object(L.h)(ne=>this._compute(U,H,W,ne))}_getCurrentWordRange(U,H){const W=U.getWordAtPosition(H.getPosition());return W?new S.a(H.startLineNumber,W.startColumn,H.startLineNumber,W.endColumn):null}isValid(U,H,W){const ne=H.startLineNumber,Ce=H.startColumn,Le=H.endColumn,ce=this._getCurrentWordRange(U,H);let me=Boolean(this._wordRange&&this._wordRange.equalsRange(ce));for(let Oe=0,oe=W.length;!me&&Oe=Le&&(me=!0))}return me}cancel(){this.result.cancel()}}class z extends B{_compute(U,H,W,ne){return G(U,H.getPosition(),ne).then(Ce=>Ce||[])}}class Y extends B{constructor(U,H,W){super(U,H,W);this._selectionIsEmpty=H.isEmpty()}_compute(U,H,W,ne){return Object(L.n)(250,ne).then(()=>{if(!H.isEmpty())return[];const Ce=U.getWordAtPosition(H.getPosition());if(!Ce||Ce.word.length>1e3)return[];const Le=U.findMatches(Ce.word,!0,!1,!0,W,!1);return Le.map(ce=>({range:ce.range,kind:E.h.Text}))})}isValid(U,H,W){const ne=H.isEmpty();return this._selectionIsEmpty!==ne?!1:super.isValid(U,H,W)}}function K(U,H,W){return E.i.has(U)?new z(U,H,W):new Y(U,H,W)}Object(O.n)("_executeDocumentHighlights",(U,H)=>G(U,H,A.a.None));class Q{constructor(U,H){this.toUnhook=new k.b,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=[],this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,this.editor=U,this._hasWordHighlights=V.bindTo(H),this._ignorePositionChangeEvent=!1,this.occurrencesHighlight=this.editor.getOption(71),this.model=this.editor.getModel(),this.toUnhook.add(U.onDidChangeCursorPosition(W=>{if(this._ignorePositionChangeEvent)return;if(!this.occurrencesHighlight)return;this._onPositionChanged(W)})),this.toUnhook.add(U.onDidChangeModelContent(W=>{this._stopAll()})),this.toUnhook.add(U.onDidChangeConfiguration(W=>{let ne=this.editor.getOption(71);this.occurrencesHighlight!==ne&&(this.occurrencesHighlight=ne,this._stopAll())})),this._decorationIds=[],this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1}hasDecorations(){return this._decorationIds.length>0}restore(){if(!this.occurrencesHighlight)return;this._run()}_getSortedHighlights(){return P.e(this._decorationIds.map(U=>this.model.getDecorationRange(U)).sort(S.a.compareRangesUsingStarts))}moveNext(){let U=this._getSortedHighlights(),H=U.findIndex(Ce=>Ce.containsPosition(this.editor.getPosition())),W=(H+1)%U.length,ne=U[W];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(ne.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(ne);const Ce=this._getWord();if(Ce){const Le=this.editor.getModel().getLineContent(ne.startLineNumber);Object(h.a)(`${Le}, ${W+1} of ${U.length} for '${Ce.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}moveBack(){let U=this._getSortedHighlights(),H=U.findIndex(Ce=>Ce.containsPosition(this.editor.getPosition())),W=(H-1+U.length)%U.length,ne=U[W];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(ne.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(ne);const Ce=this._getWord();if(Ce){const Le=this.editor.getModel().getLineContent(ne.startLineNumber);Object(h.a)(`${Le}, ${W+1} of ${U.length} for '${Ce.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}_removeDecorations(){this._decorationIds.length>0&&(this._decorationIds=this.editor.deltaDecorations(this._decorationIds,[]),this._hasWordHighlights.set(!1))}_stopAll(){this._removeDecorations(),this.renderDecorationsTimer!==-1&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1),this.workerRequest!==null&&(this.workerRequest.cancel(),this.workerRequest=null),this.workerRequestCompleted||(this.workerRequestTokenId++,this.workerRequestCompleted=!0)}_onPositionChanged(U){if(!this.occurrencesHighlight){this._stopAll();return}if(U.reason!==3){this._stopAll();return}this._run()}_getWord(){let U=this.editor.getSelection(),H=U.startLineNumber,W=U.startColumn;return this.model.getWordAtPosition({lineNumber:H,column:W})}_run(){let U=this.editor.getSelection();if(U.startLineNumber!==U.endLineNumber){this._stopAll();return}let H=U.startColumn,W=U.endColumn;const ne=this._getWord();if(!ne||ne.startColumn>H||ne.endColumn{Le===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=ce||[],this._beginRenderDecorations())},I.f)}}_beginRenderDecorations(){let U=new Date().getTime(),H=this.lastCursorPositionChangeTime+250;U>=H?(this.renderDecorationsTimer=-1,this.renderDecorations()):this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},H-U)}renderDecorations(){this.renderDecorationsTimer=-1;let U=[];for(const H of this.workerRequestValue)H.range&&U.push({range:H.range,options:Q._getDecorationOptions(H.kind)});this._decorationIds=this.editor.deltaDecorations(this._decorationIds,U),this._hasWordHighlights.set(this.hasDecorations())}static _getDecorationOptions(U){return U===E.h.Write?this._WRITE_OPTIONS:U===E.h.Text?this._TEXT_OPTIONS:this._REGULAR_OPTIONS}dispose(){this._stopAll(),this.toUnhook.dispose()}}Q._WRITE_OPTIONS=d.b.register({description:"word-highlight-strong",stickiness:1,className:"wordHighlightStrong",overviewRuler:{color:Object(m.g)(j),position:u.g.Center},minimap:{color:Object(m.g)(b.ic),position:u.f.Inline}}),Q._TEXT_OPTIONS=d.b.register({description:"selection-highlight",stickiness:1,className:"selectionHighlight",overviewRuler:{color:Object(m.g)(b.pc),position:u.g.Center},minimap:{color:Object(m.g)(b.ic),position:u.f.Inline}}),Q._REGULAR_OPTIONS=d.b.register({description:"word-highlight",stickiness:1,className:"wordHighlight",overviewRuler:{color:Object(m.g)(D),position:u.g.Center},minimap:{color:Object(m.g)(b.ic),position:u.f.Inline}});let ee=class U extends k.a{constructor(H,W){super();this.wordHighlighter=null;const ne=()=>{H.hasModel()&&(this.wordHighlighter=new Q(H,W))};this._register(H.onDidChangeModel(Ce=>{this.wordHighlighter&&(this.wordHighlighter.dispose(),this.wordHighlighter=null),ne()})),ne()}static get(H){return H.getContribution(U.ID)}saveViewState(){return!!(this.wordHighlighter&&this.wordHighlighter.hasDecorations())}moveNext(){this.wordHighlighter&&this.wordHighlighter.moveNext()}moveBack(){this.wordHighlighter&&this.wordHighlighter.moveBack()}restoreViewState(H){this.wordHighlighter&&H&&this.wordHighlighter.restore()}dispose(){this.wordHighlighter&&(this.wordHighlighter.dispose(),this.wordHighlighter=null),super.dispose()}};ee.ID="editor.contrib.wordHighlighter",ee=c([l(1,n.b)],ee);class Se extends O.b{constructor(U,H){super(H);this._isNext=U}run(U,H){const W=ee.get(H);if(!W)return;this._isNext?W.moveNext():W.moveBack()}}class fe extends Se{constructor(){super(!0,{id:"editor.action.wordHighlight.next",label:p.a("wordHighlight.next.label","Go to Next Symbol Highlight"),alias:"Go to Next Symbol Highlight",precondition:V,kbOpts:{kbExpr:f.a.editorTextFocus,primary:65,weight:100}})}}class q extends Se{constructor(){super(!1,{id:"editor.action.wordHighlight.prev",label:p.a("wordHighlight.previous.label","Go to Previous Symbol Highlight"),alias:"Go to Previous Symbol Highlight",precondition:V,kbOpts:{kbExpr:f.a.editorTextFocus,primary:1024|65,weight:100}})}}class te extends O.b{constructor(){super({id:"editor.action.wordHighlight.trigger",label:p.a("wordHighlight.trigger.label","Trigger Symbol Highlight"),alias:"Trigger Symbol Highlight",precondition:V.toNegated(),kbOpts:{kbExpr:f.a.editorTextFocus,primary:0,weight:100}})}run(U,H,W){const ne=ee.get(H);if(!ne)return;ne.restoreViewState(!0)}}Object(O.l)(ee.ID,ee),Object(O.j)(fe),Object(O.j)(q),Object(O.j)(te),Object(m.f)((U,H)=>{const W=U.getColor(b.X);W&&(H.addRule(`.monaco-editor .focused .selectionHighlight { background-color: ${W}; }`),H.addRule(`.monaco-editor .selectionHighlight { background-color: ${W.transparent(.5)}; }`));const ne=U.getColor(g);ne&&H.addRule(`.monaco-editor .wordHighlight { background-color: ${ne}; }`);const Ce=U.getColor(y);Ce&&H.addRule(`.monaco-editor .wordHighlightStrong { background-color: ${Ce}; }`);const Le=U.getColor(b.Y);Le&&H.addRule(`.monaco-editor .selectionHighlight { border: 1px ${U.type==="hc"?"dotted":"solid"} ${Le}; box-sizing: border-box; }`);const ce=U.getColor(C);ce&&H.addRule(`.monaco-editor .wordHighlight { border: 1px ${U.type==="hc"?"dashed":"solid"} ${ce}; box-sizing: border-box; }`);const me=U.getColor(v);me&&H.addRule(`.monaco-editor .wordHighlightStrong { border: 1px ${U.type==="hc"?"dashed":"solid"} ${me}; box-sizing: border-box; }`)})},YHy6:function(ft,w,e){},Yr1X:function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("MI8n");const P=new class{constructor(){this._zoomLevel=0,this._onDidChangeZoomLevel=new h.b,this.onDidChangeZoomLevel=this._onDidChangeZoomLevel.event}getZoomLevel(){return this._zoomLevel}setZoomLevel(L){if(L=Math.min(Math.max(-5,L),20),this._zoomLevel===L)return;this._zoomLevel=L,this._onDidChangeZoomLevel.fire(this._zoomLevel)}}},Z1pP:function(ft,w,e){},Z7SF:function(ft,w,e){"use strict";e.d(w,"a",function(){return I});var h=e("24hK"),P=e("cGHE"),L=e("aokT"),A=function(k,O,S,f){function u(d){return d instanceof S?d:new S(function(E){E(d)})}return new(S||(S=Promise))(function(d,E){function p(m){try{b(f.next(m))}catch(c){E(c)}}function n(m){try{b(f.throw(m))}catch(c){E(c)}}function b(m){m.done?d(m.value):u(m.value).then(p,n)}b((f=f.apply(k,O||[])).next())})};class I{provideSelectionRanges(k,O){return A(this,void 0,void 0,function*(){const S=[];for(const f of O){const u=[];S.push(u);const d=new Map;yield new Promise(E=>I._bracketsRightYield(E,0,k,f,d)),yield new Promise(E=>I._bracketsLeftYield(E,0,k,f,d,u))}return S})}static _bracketsRightYield(k,O,S,f,u){const d=new Map,E=Date.now();for(;;){if(O>=I._maxRounds){k();break}if(!f){k();break}let p=S.findNextBracket(f);if(!p){k();break}let n=Date.now()-E;if(n>I._maxDuration){setTimeout(()=>I._bracketsRightYield(k,O+1,S,f,u));break}const b=p.close[0];if(p.isOpen){let m=d.has(b)?d.get(b):0;d.set(b,m+1)}else{let m=d.has(b)?d.get(b):0;if(m-=1,d.set(b,Math.max(0,m)),m<0){let c=u.get(b);c||(c=new h.a,u.set(b,c)),c.push(p.range)}}f=p.range.getEndPosition()}}static _bracketsLeftYield(k,O,S,f,u,d){const E=new Map,p=Date.now();for(;;){if(O>=I._maxRounds&&u.size===0){k();break}if(!f){k();break}let n=S.findPrevBracket(f);if(!n){k();break}let b=Date.now()-p;if(b>I._maxDuration){setTimeout(()=>I._bracketsLeftYield(k,O+1,S,f,u,d));break}const m=n.close[0];if(n.isOpen){let c=E.has(m)?E.get(m):0;if(c-=1,E.set(m,Math.max(0,c)),c<0){let l=u.get(m);if(l){let g=l.shift();l.size===0&&u.delete(m);const y=L.a.fromPositions(n.range.getEndPosition(),g.getStartPosition()),C=L.a.fromPositions(n.range.getStartPosition(),g.getEndPosition());d.push({range:y}),d.push({range:C}),I._addBracketLeading(S,C,d)}}}else{let c=E.has(m)?E.get(m):0;E.set(m,c+1)}f=n.range.getStartPosition()}}static _addBracketLeading(k,O,S){if(O.startLineNumber===O.endLineNumber)return;const f=O.startLineNumber,u=k.getLineFirstNonWhitespaceColumn(f);u!==0&&u!==O.startColumn&&(S.push({range:L.a.fromPositions(new P.a(f,u),O.getEndPosition())}),S.push({range:L.a.fromPositions(new P.a(f,1),O.getEndPosition())}));const d=f-1;if(d>0){const E=k.getLineFirstNonWhitespaceColumn(d);E===O.startColumn&&E!==k.getLineLastNonWhitespaceColumn(d)&&(S.push({range:L.a.fromPositions(new P.a(d,E),O.getEndPosition())}),S.push({range:L.a.fromPositions(new P.a(d,1),O.getEndPosition())}))}}}I._maxDuration=30,I._maxRounds=2},ZCR3:function(ft,w,e){"use strict";e.d(w,"a",function(){return h});function h(P,L,A){let I=null,k=null;if(typeof A.value=="function"?(I="value",k=A.value,k.length!==0&&console.warn("Memoize should only be used in functions with zero parameters")):typeof A.get=="function"&&(I="get",k=A.get),!k)throw new Error("not supported");const O=`$memoize$${L}`;A[I]=function(...S){return this.hasOwnProperty(O)||Object.defineProperty(this,O,{configurable:!1,enumerable:!1,writable:!1,value:k.apply(this,S)}),this[O]}}},ZIMw:function(ft,w,e){"use strict";e.d(w,"b",function(){return S}),e.d(w,"a",function(){return f});var h=e("JQT/"),P=e("/cxE"),L=e("bY76"),A=e("aokT"),I=e("twdY"),k=e("G2kB"),O=e("nnTU");function S(u,d){const E=[],p=I.c.ordered(u).reverse(),n=p.map(b=>Promise.resolve(b.provideDocumentColors(u,d)).then(m=>{if(Array.isArray(m))for(let c of m)E.push({colorInfo:c,provider:b})}));return Promise.all(n).then(()=>E)}function f(u,d,E,p){return Promise.resolve(E.provideColorPresentations(u,d,p))}O.a.registerCommand("_executeDocumentColorProvider",function(u,...d){const[E]=d;if(!(E instanceof L.a))throw Object(P.c)();const p=u.get(k.a).getModel(E);if(!p)throw Object(P.c)();const n=[],b=I.c.ordered(p).reverse(),m=b.map(c=>Promise.resolve(c.provideDocumentColors(p,h.a.None)).then(l=>{if(Array.isArray(l))for(let g of l)n.push({range:g.range,color:[g.color.red,g.color.green,g.color.blue,g.color.alpha]})}));return Promise.all(m).then(()=>n)}),O.a.registerCommand("_executeColorPresentationProvider",function(u,...d){const[E,p]=d,{uri:n,range:b}=p;if(!(n instanceof L.a)||!Array.isArray(E)||E.length!==4||!A.a.isIRange(b))throw Object(P.c)();const[m,c,l,g]=E,y=u.get(k.a).getModel(n);if(!y)throw Object(P.c)();const C={range:b,color:{red:m,green:c,blue:l,alpha:g}},v=[],D=I.c.ordered(y).reverse(),j=D.map(V=>Promise.resolve(V.provideColorPresentations(y,C,h.a.None)).then(G=>{Array.isArray(G)&&v.push(...G)}));return Promise.all(j).then(()=>v)})},ZQ78:function(ft,w,e){"use strict";e.d(w,"a",function(){return P}),e.d(w,"b",function(){return L}),e.d(w,"c",function(){return A});var h=e("ubTv");const P={RESOURCES:"ResourceURLs",DOWNLOAD_URL:"DownloadURL",FILES:"Files",TEXT:h.a.text,TERMINALS:"Terminals"};class L{constructor(I){this.data=I}update(){}getData(){return this.data}}const A={CurrentDragAndDropData:void 0}},"ZkA/":function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"mips",extensions:[".s"],aliases:["MIPS","MIPS-V"],mimetypes:["text/x-mips","text/mips","text/plaintext"],loader:function(){return e.e(353).then(e.bind(null,"DTUS"))}})},ZlPH:function(ft,w,e){"use strict";e.d(w,"a",function(){return h}),e.d(w,"b",function(){return P});class h{constructor(L){this.domNode=L,this._maxWidth=-1,this._width=-1,this._height=-1,this._top=-1,this._left=-1,this._bottom=-1,this._right=-1,this._fontFamily="",this._fontWeight="",this._fontSize=-1,this._fontFeatureSettings="",this._lineHeight=-1,this._letterSpacing=-100,this._className="",this._display="",this._position="",this._visibility="",this._backgroundColor="",this._layerHint=!1,this._contain="none",this._boxShadow=""}setMaxWidth(L){if(this._maxWidth===L)return;this._maxWidth=L,this.domNode.style.maxWidth=this._maxWidth+"px"}setWidth(L){if(this._width===L)return;this._width=L,this.domNode.style.width=this._width+"px"}setHeight(L){if(this._height===L)return;this._height=L,this.domNode.style.height=this._height+"px"}setTop(L){if(this._top===L)return;this._top=L,this.domNode.style.top=this._top+"px"}unsetTop(){if(this._top===-1)return;this._top=-1,this.domNode.style.top=""}setLeft(L){if(this._left===L)return;this._left=L,this.domNode.style.left=this._left+"px"}setBottom(L){if(this._bottom===L)return;this._bottom=L,this.domNode.style.bottom=this._bottom+"px"}setRight(L){if(this._right===L)return;this._right=L,this.domNode.style.right=this._right+"px"}setFontFamily(L){if(this._fontFamily===L)return;this._fontFamily=L,this.domNode.style.fontFamily=this._fontFamily}setFontWeight(L){if(this._fontWeight===L)return;this._fontWeight=L,this.domNode.style.fontWeight=this._fontWeight}setFontSize(L){if(this._fontSize===L)return;this._fontSize=L,this.domNode.style.fontSize=this._fontSize+"px"}setFontFeatureSettings(L){if(this._fontFeatureSettings===L)return;this._fontFeatureSettings=L,this.domNode.style.fontFeatureSettings=this._fontFeatureSettings}setLineHeight(L){if(this._lineHeight===L)return;this._lineHeight=L,this.domNode.style.lineHeight=this._lineHeight+"px"}setLetterSpacing(L){if(this._letterSpacing===L)return;this._letterSpacing=L,this.domNode.style.letterSpacing=this._letterSpacing+"px"}setClassName(L){if(this._className===L)return;this._className=L,this.domNode.className=this._className}toggleClassName(L,A){this.domNode.classList.toggle(L,A),this._className=this.domNode.className}setDisplay(L){if(this._display===L)return;this._display=L,this.domNode.style.display=this._display}setPosition(L){if(this._position===L)return;this._position=L,this.domNode.style.position=this._position}setVisibility(L){if(this._visibility===L)return;this._visibility=L,this.domNode.style.visibility=this._visibility}setBackgroundColor(L){if(this._backgroundColor===L)return;this._backgroundColor=L,this.domNode.style.backgroundColor=this._backgroundColor}setLayerHinting(L){if(this._layerHint===L)return;this._layerHint=L,this.domNode.style.transform=this._layerHint?"translate3d(0px, 0px, 0px)":""}setBoxShadow(L){if(this._boxShadow===L)return;this._boxShadow=L,this.domNode.style.boxShadow=L}setContain(L){if(this._contain===L)return;this._contain=L,this.domNode.style.contain=this._contain}setAttribute(L,A){this.domNode.setAttribute(L,A)}removeAttribute(L){this.domNode.removeAttribute(L)}appendChild(L){this.domNode.appendChild(L.domNode)}removeChild(L){this.domNode.removeChild(L.domNode)}}function P(L){return new h(L)}},Zr1c:function(ft,w,e){"use strict";e.d(w,"a",function(){return L});var h=e("Cg/j"),P=e("zdb4");e.d(w,"b",function(){return P.a});const L=Object(h.c)("quickInputService")},ZvGG:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"lua",extensions:[".lua"],aliases:["Lua","lua"],loader:function(){return e.e(350).then(e.bind(null,"yUwd"))}})},aBYw:function(ft,w,e){"use strict";e.d(w,"a",function(){return f});var h=e("MI8n"),P=e("pmY6"),L=e("MNsG");function A(u,d){return!!u[d]}class I{constructor(u,d){this.target=u.target,this.hasTriggerModifier=A(u.event,d.triggerModifier),this.hasSideBySideModifier=A(u.event,d.triggerSideBySideModifier),this.isNoneOrSingleMouseDown=u.event.detail<=1}}class k{constructor(u,d){this.keyCodeIsTriggerKey=u.keyCode===d.triggerKey,this.keyCodeIsSideBySideKey=u.keyCode===d.triggerSideBySideKey,this.hasTriggerModifier=A(u,d.triggerModifier)}}class O{constructor(u,d,E,p){this.triggerKey=u,this.triggerModifier=d,this.triggerSideBySideKey=E,this.triggerSideBySideModifier=p}equals(u){return this.triggerKey===u.triggerKey&&this.triggerModifier===u.triggerModifier&&this.triggerSideBySideKey===u.triggerSideBySideKey&&this.triggerSideBySideModifier===u.triggerSideBySideModifier}}function S(u){return u==="altKey"?L.f?new O(57,"metaKey",6,"altKey"):new O(5,"ctrlKey",6,"altKey"):L.f?new O(6,"altKey",57,"metaKey"):new O(6,"altKey",5,"ctrlKey")}class f extends P.a{constructor(u){super();this._onMouseMoveOrRelevantKeyDown=this._register(new h.b),this.onMouseMoveOrRelevantKeyDown=this._onMouseMoveOrRelevantKeyDown.event,this._onExecute=this._register(new h.b),this.onExecute=this._onExecute.event,this._onCancel=this._register(new h.b),this.onCancel=this._onCancel.event,this._editor=u,this._opts=S(this._editor.getOption(69)),this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._register(this._editor.onDidChangeConfiguration(d=>{if(d.hasChanged(69)){const E=S(this._editor.getOption(69));if(this._opts.equals(E))return;this._opts=E,this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._lineNumberOnMouseDown=0,this._onCancel.fire()}})),this._register(this._editor.onMouseMove(d=>this._onEditorMouseMove(new I(d,this._opts)))),this._register(this._editor.onMouseDown(d=>this._onEditorMouseDown(new I(d,this._opts)))),this._register(this._editor.onMouseUp(d=>this._onEditorMouseUp(new I(d,this._opts)))),this._register(this._editor.onKeyDown(d=>this._onEditorKeyDown(new k(d,this._opts)))),this._register(this._editor.onKeyUp(d=>this._onEditorKeyUp(new k(d,this._opts)))),this._register(this._editor.onMouseDrag(()=>this._resetHandler())),this._register(this._editor.onDidChangeCursorSelection(d=>this._onDidChangeCursorSelection(d))),this._register(this._editor.onDidChangeModel(d=>this._resetHandler())),this._register(this._editor.onDidChangeModelContent(()=>this._resetHandler())),this._register(this._editor.onDidScrollChange(d=>{(d.scrollTopChanged||d.scrollLeftChanged)&&this._resetHandler()}))}_onDidChangeCursorSelection(u){u.selection&&u.selection.startColumn!==u.selection.endColumn&&this._resetHandler()}_onEditorMouseMove(u){this._lastMouseMoveEvent=u,this._onMouseMoveOrRelevantKeyDown.fire([u,null])}_onEditorMouseDown(u){this._hasTriggerKeyOnMouseDown=u.hasTriggerModifier,this._lineNumberOnMouseDown=u.target.position?u.target.position.lineNumber:0}_onEditorMouseUp(u){const d=u.target.position?u.target.position.lineNumber:0;this._hasTriggerKeyOnMouseDown&&this._lineNumberOnMouseDown&&this._lineNumberOnMouseDown===d&&this._onExecute.fire(u)}_onEditorKeyDown(u){this._lastMouseMoveEvent&&(u.keyCodeIsTriggerKey||u.keyCodeIsSideBySideKey&&u.hasTriggerModifier)?this._onMouseMoveOrRelevantKeyDown.fire([this._lastMouseMoveEvent,u]):u.hasTriggerModifier&&this._onCancel.fire()}_onEditorKeyUp(u){u.keyCodeIsTriggerKey&&this._onCancel.fire()}_resetHandler(){this._lastMouseMoveEvent=null,this._hasTriggerKeyOnMouseDown=!1,this._onCancel.fire()}}},ajgA:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"razor",extensions:[".cshtml"],aliases:["Razor","razor"],mimetypes:["text/x-cshtml"],loader:function(){return e.e(371).then(e.bind(null,"Fzfo"))}})},al33:function(ft,w,e){"use strict";e.d(w,"a",function(){return d}),e.d(w,"b",function(){return b});var h=e("MI8n"),P=e("7afs"),L=e("pmY6"),A=e("QDVR"),I=e("Sdnv"),k=e("l2gE"),O=e("MrjW");function S(m,c,l,g){if(Array.isArray(m)){let y=0;for(const C of m){const v=S(C,c,l,g);if(v===10)return v;v>y&&(y=v)}return y}else{if(typeof m=="string")return g?m==="*"?5:m===l?10:0:0;if(m){const{language:y,pattern:C,scheme:v,hasAccessToAllModels:D}=m;if(!g&&!D)return 0;let j=0;if(v)if(v===c.scheme)j=10;else if(v==="*")j=5;else return 0;if(y)if(y===l)j=10;else if(y==="*")j=Math.max(j,5);else return 0;if(C){let V;if(typeof C=="string"?V=C:V=Object.assign(Object.assign({},C),{base:Object(O.d)(C.base)}),V===c.fsPath||Object(k.a)(V,c.fsPath))j=10;else return 0}return j}else return 0}}var f=e("G2kB");function u(m){return typeof m=="string"?!1:Array.isArray(m)?m.every(u):!!m.exclusive}class d{constructor(){this._clock=0,this._entries=[],this._onDidChange=new h.b}get onDidChange(){return this._onDidChange.event}register(m,c){let l={selector:m,provider:c,_score:-1,_time:this._clock++};return this._entries.push(l),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),Object(L.i)(()=>{if(l){let g=this._entries.indexOf(l);g>=0&&(this._entries.splice(g,1),this._lastCandidate=void 0,this._onDidChange.fire(this._entries.length),l=void 0)}})}has(m){return this.all(m).length>0}all(m){if(!m)return[];this._updateScores(m);const c=[];for(let l of this._entries)l._score>0&&c.push(l.provider);return c}ordered(m){const c=[];return this._orderedForEach(m,l=>c.push(l.provider)),c}orderedGroups(m){const c=[];let l,g;return this._orderedForEach(m,y=>{l&&g===y._score?l.push(y.provider):(g=y._score,l=[y.provider],c.push(l))}),c}_orderedForEach(m,c){if(!m)return;this._updateScores(m);for(const l of this._entries)l._score>0&&c(l)}_updateScores(m){let c={uri:m.uri.toString(),language:m.getLanguageId()};if(this._lastCandidate&&this._lastCandidate.language===c.language&&this._lastCandidate.uri===c.uri)return;this._lastCandidate=c;for(let l of this._entries)if(l._score=S(l.selector,m.uri,m.getLanguageId(),Object(f.b)(m)),u(l.selector)&&l._score>0){for(let g of this._entries)g._score=0;l._score=1e3;break}this._entries.sort(d._compareByScoreAndTime)}static _compareByScoreAndTime(m,c){return m._scorec._score?-1:m._timec._time?-1:0}}const E=new WeakMap;let p=0;function n(m){let c=E.get(m);return c===void 0&&(c=++p,E.set(m,c)),c}class b{constructor(m,c,l=Number.MAX_SAFE_INTEGER){this._registry=m,this.min=c,this.max=l,this._cache=new A.a(50,.7)}_key(m){return m.id+this._registry.all(m).reduce((c,l)=>Object(P.b)(n(l),c),0)}_clamp(m){return m===void 0?this.min:Math.min(this.max,Math.max(this.min,Math.floor(m*1.3)))}get(m){const c=this._key(m),l=this._cache.get(c);return this._clamp(l==null?void 0:l.value)}update(m,c){const l=this._key(m);let g=this._cache.get(l);return g||(g=new I.a,this._cache.set(l,g)),g.update(c),this.get(m)}}},aokT:function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("cGHE");class P{constructor(L,A,I,k){L>I||L===I&&A>k?(this.startLineNumber=I,this.startColumn=k,this.endLineNumber=L,this.endColumn=A):(this.startLineNumber=L,this.startColumn=A,this.endLineNumber=I,this.endColumn=k)}isEmpty(){return P.isEmpty(this)}static isEmpty(L){return L.startLineNumber===L.endLineNumber&&L.startColumn===L.endColumn}containsPosition(L){return P.containsPosition(this,L)}static containsPosition(L,A){return A.lineNumberL.endLineNumber||A.lineNumber===L.startLineNumber&&A.columnL.endColumn)}containsRange(L){return P.containsRange(this,L)}static containsRange(L,A){return A.startLineNumberL.endLineNumber||A.endLineNumber>L.endLineNumber||A.startLineNumber===L.startLineNumber&&A.startColumnL.endColumn)}strictContainsRange(L){return P.strictContainsRange(this,L)}static strictContainsRange(L,A){return A.startLineNumberL.endLineNumber||A.endLineNumber>L.endLineNumber||A.startLineNumber===L.startLineNumber&&A.startColumn<=L.startColumn)?!1:!(A.endLineNumber===L.endLineNumber&&A.endColumn>=L.endColumn)}plusRange(L){return P.plusRange(this,L)}static plusRange(L,A){let I,k,O,S;return A.startLineNumberL.endLineNumber?(O=A.endLineNumber,S=A.endColumn):A.endLineNumber===L.endLineNumber?(O=A.endLineNumber,S=Math.max(A.endColumn,L.endColumn)):(O=L.endLineNumber,S=L.endColumn),new P(I,k,O,S)}intersectRanges(L){return P.intersectRanges(this,L)}static intersectRanges(L,A){let I=L.startLineNumber,k=L.startColumn,O=L.endLineNumber,S=L.endColumn,f=A.startLineNumber,u=A.startColumn,d=A.endLineNumber,E=A.endColumn;return Id?(O=d,S=E):O===d&&(S=Math.min(S,E)),I>O||I===O&&k>S?null:new P(I,k,O,S)}equalsRange(L){return P.equalsRange(this,L)}static equalsRange(L,A){return!!L&&!!A&&L.startLineNumber===A.startLineNumber&&L.startColumn===A.startColumn&&L.endLineNumber===A.endLineNumber&&L.endColumn===A.endColumn}getEndPosition(){return P.getEndPosition(this)}static getEndPosition(L){return new h.a(L.endLineNumber,L.endColumn)}getStartPosition(){return P.getStartPosition(this)}static getStartPosition(L){return new h.a(L.startLineNumber,L.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(L,A){return new P(this.startLineNumber,this.startColumn,L,A)}setStartPosition(L,A){return new P(L,A,this.endLineNumber,this.endColumn)}collapseToStart(){return P.collapseToStart(this)}static collapseToStart(L){return new P(L.startLineNumber,L.startColumn,L.startLineNumber,L.startColumn)}static fromPositions(L,A=L){return new P(L.lineNumber,L.column,A.lineNumber,A.column)}static lift(L){return L?new P(L.startLineNumber,L.startColumn,L.endLineNumber,L.endColumn):null}static isIRange(L){return L&&typeof L.startLineNumber=="number"&&typeof L.startColumn=="number"&&typeof L.endLineNumber=="number"&&typeof L.endColumn=="number"}static areIntersectingOrTouching(L,A){return L.endLineNumberL.startLineNumber}}},bY76:function(ft,w,e){"use strict";e.d(w,"a",function(){return E}),e.d(w,"b",function(){return l});var h=e("MrjW"),P=e("MNsG");const L=/^\w[\w\d+.-]*$/,A=/^\//,I=/^\/\//;function k(D,j){if(!D.scheme&&j)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${D.authority}", path: "${D.path}", query: "${D.query}", fragment: "${D.fragment}"}`);if(D.scheme&&!L.test(D.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(D.path){if(D.authority){if(!A.test(D.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(I.test(D.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function O(D,j){return!D&&!j?"file":D}function S(D,j){switch(D){case"https":case"http":case"file":j?j[0]!==u&&(j=u+j):j=u;break}return j}const f="",u="/",d=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class E{constructor(D,j,V,G,B,z=!1){typeof D=="object"?(this.scheme=D.scheme||f,this.authority=D.authority||f,this.path=D.path||f,this.query=D.query||f,this.fragment=D.fragment||f):(this.scheme=O(D,z),this.authority=j||f,this.path=S(this.scheme,V||f),this.query=G||f,this.fragment=B||f,k(this,z))}static isUri(D){return D instanceof E?!0:D?typeof D.authority=="string"&&typeof D.fragment=="string"&&typeof D.path=="string"&&typeof D.query=="string"&&typeof D.scheme=="string"&&typeof D.fsPath=="string"&&typeof D.with=="function"&&typeof D.toString=="function":!1}get fsPath(){return l(this,!1)}with(D){if(!D)return this;let{scheme:j,authority:V,path:G,query:B,fragment:z}=D;return j===void 0?j=this.scheme:j===null&&(j=f),V===void 0?V=this.authority:V===null&&(V=f),G===void 0?G=this.path:G===null&&(G=f),B===void 0?B=this.query:B===null&&(B=f),z===void 0?z=this.fragment:z===null&&(z=f),j===this.scheme&&V===this.authority&&G===this.path&&B===this.query&&z===this.fragment?this:new n(j,V,G,B,z)}static parse(D,j=!1){const V=d.exec(D);return V?new n(V[2]||f,v(V[4]||f),v(V[5]||f),v(V[7]||f),v(V[9]||f),j):new n(f,f,f,f,f)}static file(D){let j=f;if(P.i&&(D=D.replace(/\\/g,u)),D[0]===u&&D[1]===u){const V=D.indexOf(u,2);V===-1?(j=D.substring(2),D=u):(j=D.substring(2,V),D=D.substring(V)||u)}return new n("file",j,D,f,f)}static from(D){const j=new n(D.scheme,D.authority,D.path,D.query,D.fragment);return k(j,!0),j}static joinPath(D,...j){if(!D.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let V;return P.i&&D.scheme==="file"?V=E.file(h.i.join(l(D,!0),...j)).path:V=h.e.join(D.path,...j),D.with({path:V})}toString(D=!1){return g(this,D)}toJSON(){return this}static revive(D){if(D){if(D instanceof E)return D;{const j=new n(D);return j._formatted=D.external,j._fsPath=D._sep===p?D.fsPath:null,j}}else return D}}const p=P.i?1:void 0;class n extends E{constructor(){super(...arguments);this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=l(this,!1)),this._fsPath}toString(D=!1){return D?g(this,!0):(this._formatted||(this._formatted=g(this,!1)),this._formatted)}toJSON(){const D={$mid:1};return this._fsPath&&(D.fsPath=this._fsPath,D._sep=p),this._formatted&&(D.external=this._formatted),this.path&&(D.path=this.path),this.scheme&&(D.scheme=this.scheme),this.authority&&(D.authority=this.authority),this.query&&(D.query=this.query),this.fragment&&(D.fragment=this.fragment),D}}const b={[58]:"%3A",[47]:"%2F",[63]:"%3F",[35]:"%23",[91]:"%5B",[93]:"%5D",[64]:"%40",[33]:"%21",[36]:"%24",[38]:"%26",[39]:"%27",[40]:"%28",[41]:"%29",[42]:"%2A",[43]:"%2B",[44]:"%2C",[59]:"%3B",[61]:"%3D",[32]:"%20"};function m(D,j){let V,G=-1;for(let B=0;B=97&&z<=122||z>=65&&z<=90||z>=48&&z<=57||z===45||z===46||z===95||z===126||j&&z===47)G!==-1&&(V+=encodeURIComponent(D.substring(G,B)),G=-1),V!==void 0&&(V+=D.charAt(B));else{V===void 0&&(V=D.substr(0,B));const Y=b[z];Y!==void 0?(G!==-1&&(V+=encodeURIComponent(D.substring(G,B)),G=-1),V+=Y):G===-1&&(G=B)}}return G!==-1&&(V+=encodeURIComponent(D.substring(G))),V!==void 0?V:D}function c(D){let j;for(let V=0;V1&&D.scheme==="file"?V=`//${D.authority}${D.path}`:D.path.charCodeAt(0)===47&&(D.path.charCodeAt(1)>=65&&D.path.charCodeAt(1)<=90||D.path.charCodeAt(1)>=97&&D.path.charCodeAt(1)<=122)&&D.path.charCodeAt(2)===58?j?V=D.path.substr(1):V=D.path[1].toLowerCase()+D.path.substr(2):V=D.path,P.i&&(V=V.replace(/\//g,"\\")),V}function g(D,j){const V=j?c:m;let G="",{scheme:B,authority:z,path:Y,query:K,fragment:Q}=D;if(B&&(G+=B,G+=":"),(z||B==="file")&&(G+=u,G+=u),z){let ee=z.indexOf("@");if(ee!==-1){const Se=z.substr(0,ee);z=z.substr(ee+1),ee=Se.indexOf(":"),ee===-1?G+=V(Se,!1):(G+=V(Se.substr(0,ee),!1),G+=":",G+=V(Se.substr(ee+1),!1)),G+="@"}z=z.toLowerCase(),ee=z.indexOf(":"),ee===-1?G+=V(z,!1):(G+=V(z.substr(0,ee),!1),G+=z.substr(ee))}if(Y){if(Y.length>=3&&Y.charCodeAt(0)===47&&Y.charCodeAt(2)===58){const ee=Y.charCodeAt(1);ee>=65&&ee<=90&&(Y=`/${String.fromCharCode(ee+32)}:${Y.substr(3)}`)}else if(Y.length>=2&&Y.charCodeAt(1)===58){const ee=Y.charCodeAt(0);ee>=65&&ee<=90&&(Y=`${String.fromCharCode(ee+32)}:${Y.substr(2)}`)}G+=V(Y,!0)}return K&&(G+="?",G+=V(K,!1)),Q&&(G+="#",G+=j?Q:m(Q,!1)),G}function y(D){try{return decodeURIComponent(D)}catch(j){return D.length>3?D.substr(0,3)+y(D.substr(3)):D}}const C=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function v(D){return D.match(C)?D.replace(C,j=>y(j)):D}},ba9Q:function(ft,w,e){"use strict";e.r(w);var h=e("sswD"),P=e("LCkn"),L=e("+Fos"),A=e("aokT"),I=e("wQH0"),k=e("3/fG");class O extends h.b{constructor(){super({id:"editor.action.transposeLetters",label:k.a("transposeLetters.label","Transpose Letters"),alias:"Transpose Letters",precondition:I.a.writable,kbOpts:{kbExpr:I.a.textInputFocus,primary:0,mac:{primary:256|50},weight:100}})}run(S,f){if(!f.hasModel())return;let u=f.getModel(),d=[],E=f.getSelections();for(let p of E){if(!p.isEmpty())continue;let n=p.startLineNumber,b=p.startColumn,m=u.getLineMaxColumn(n);if(n===1&&(b===1||b===2&&m===2))continue;let c=b===m?p.getPosition():L.a.rightPosition(u,p.getPosition().lineNumber,p.getPosition().column),l=L.a.leftPosition(u,c),g=L.a.leftPosition(u,l),y=u.getValueInRange(A.a.fromPositions(g,l)),C=u.getValueInRange(A.a.fromPositions(l,c)),v=A.a.fromPositions(g,c);d.push(new P.a(v,C+y))}d.length>0&&(f.pushUndoStop(),f.executeCommands(this.id,d),f.pushUndoStop())}}Object(h.j)(O)},baJR:function(ft,w,e){"use strict";e.d(w,"b",function(){return I}),e.d(w,"c",function(){return k}),e.d(w,"a",function(){return O}),e.d(w,"d",function(){return u}),e.d(w,"e",function(){return E});var h=e("N0LK"),P=e("erNZ"),L=e("dBaI");class A{constructor(D,j,V){this._linePartBrand=void 0,this.endIndex=D,this.type=j,this.metadata=V}isWhitespace(){return!!(this.metadata&1)}isPseudoAfter(){return!!(this.metadata&4)}}class I{constructor(D,j){this.startOffset=D,this.endOffset=j}equals(D){return this.startOffset===D.startOffset&&this.endOffset===D.endOffset}}class k{constructor(D,j,V,G,B,z,Y,K,Q,ee,Se,fe,q,te,U,H,W,ne,Ce){this.useMonospaceOptimizations=D,this.canUseHalfwidthRightwardsArrow=j,this.lineContent=V,this.continuesWithWrappedLine=G,this.isBasicASCII=B,this.containsRTL=z,this.fauxIndentLength=Y,this.lineTokens=K,this.lineDecorations=Q.sort(L.a.compare),this.tabSize=ee,this.startVisibleColumn=Se,this.spaceWidth=fe,this.stopRenderingLineAfter=U,this.renderWhitespace=H==="all"?4:H==="boundary"?1:H==="selection"?2:H==="trailing"?3:0,this.renderControlCharacters=W,this.fontLigatures=ne,this.selectionsOnLine=Ce&&Ce.sort((me,Oe)=>me.startOffset>>16}static getCharIndex(D){return(D&65535)>>>0}setColumnInfo(D,j,V,G){const B=(j<<16|V<<0)>>>0;this._data[D-1]=B,this._absoluteOffsets[D-1]=G+V}getAbsoluteOffset(D){return this._absoluteOffsets.length===0?0:this._absoluteOffsets[D-1]}charOffsetToPartData(D){return this.length===0?0:D<0?this._data[0]:D>=this.length?this._data[this.length-1]:this._data[D]}getDomPosition(D){const j=this.charOffsetToPartData(D-1),V=S.getPartIndex(j),G=S.getCharIndex(j);return new O(V,G)}getColumn(D,j){const V=this.partDataToCharOffset(D.partIndex,j,D.charIndex);return V+1}partDataToCharOffset(D,j,V){if(this.length===0)return 0;let G=(D<<16|V<<0)>>>0,B=0,z=this.length-1;for(;B+1>>1,H=this._data[U];if(H===G)return U;H>G?z=U:B=U}if(B===z)return B;let Y=this._data[B],K=this._data[z];if(Y===G)return B;if(K===G)return z;let Q=S.getPartIndex(Y),ee=S.getCharIndex(Y),Se=S.getPartIndex(K),fe;Q!==Se?fe=j:fe=S.getCharIndex(K);let q=V-ee,te=fe-V;return q<=te?B:z}}class f{constructor(D,j,V){this._renderLineOutputBrand=void 0,this.characterMapping=D,this.containsRTL=j,this.containsForeignElements=V}}function u(D,j){if(D.lineContent.length===0){if(D.lineDecorations.length>0){j.appendASCIIString("");let V=0,G=0,B=0;for(const Y of D.lineDecorations)(Y.type===1||Y.type===2)&&(j.appendASCIIString(''),Y.type===1&&(B|=1,V++),Y.type===2&&(B|=2,G++));j.appendASCIIString("");const z=new S(1,V+G);return z.setColumnInfo(1,V,0,0),new f(z,!1,B)}return j.appendASCIIString(""),new f(new S(0,0),!1,0)}return C(n(D),j)}class d{constructor(D,j,V,G){this.characterMapping=D,this.html=j,this.containsRTL=V,this.containsForeignElements=G}}function E(D){let j=Object(P.a)(1e4),V=u(D,j);return new d(V.characterMapping,j.build(),V.containsRTL,V.containsForeignElements)}class p{constructor(D,j,V,G,B,z,Y,K,Q,ee,Se,fe,q,te,U){this.fontIsMonospace=D,this.canUseHalfwidthRightwardsArrow=j,this.lineContent=V,this.len=G,this.isOverflowing=B,this.parts=z,this.containsForeignElements=Y,this.fauxIndentLength=K,this.tabSize=Q,this.startVisibleColumn=ee,this.containsRTL=Se,this.spaceWidth=fe,this.renderSpaceCharCode=q,this.renderWhitespace=te,this.renderControlCharacters=U}}function n(D){const j=D.lineContent;let V,G;D.stopRenderingLineAfter!==-1&&D.stopRenderingLineAfter0){for(let Y=0,K=D.lineDecorations.length;Y0&&(G[B++]=new A(j,"",0));for(let z=0,Y=D.getCount();z=V){G[B++]=new A(V,Q,0);break}G[B++]=new A(K,Q,0)}return G}function m(D,j,V){let G=0,B=[],z=0;if(V)for(let Y=0,K=j.length;Y=50&&(B[z++]=new A(q+1,Se,fe),te=q+1,q=-1);te!==ee&&(B[z++]=new A(ee,Se,fe))}else B[z++]=Q;G=ee}else for(let Y=0,K=j.length;Y50){const fe=Q.type,q=Q.metadata,te=Math.ceil(Se/50);for(let U=1;U=8234&&D<=8238||D>=8294&&D<=8297||D>=8206&&D<=8207||D===1564}function l(D,j){let V=[],G=new A(0,"",0),B=0;for(const z of j){const Y=z.endIndex;for(;BG.endIndex&&(G=new A(B,z.type,z.metadata),V.push(G)),G=new A(B+1,"mtkcontrol",z.metadata),V.push(G))}B>G.endIndex&&(G=new A(Y,z.type,z.metadata),V.push(G))}return V}function g(D,j,V,G){const B=D.continuesWithWrappedLine,z=D.fauxIndentLength,Y=D.tabSize,K=D.startVisibleColumn,Q=D.useMonospaceOptimizations,ee=D.selectionsOnLine,Se=D.renderWhitespace===1,fe=D.renderWhitespace===3,q=D.renderSpaceWidth!==D.spaceWidth;let te=[],U=0,H=0,W=G[H].type,ne=G[H].endIndex;const Ce=G.length;let Le=!1,ce=h.u(j),me;ce===-1?(Le=!0,ce=V,me=V):me=h.I(j);let Oe=!1,oe=0,De=ee&&ee[oe],Ne=K%Y;for(let re=z;re=De.endOffset&&(oe++,De=ee&&ee[oe]);let Ie;if(reme)Ie=!0;else if(we===9)Ie=!0;else if(we===32)if(Se)if(Oe)Ie=!0;else{const ge=re+1re),Ie&&fe&&(Ie=Le||re>me),Oe){if(!Ie||!Q&&Ne>=Y){if(q){const ge=U>0?te[U-1].endIndex:z;for(let ye=ge+1;ye<=re;ye++)te[U++]=new A(ye,"mtkw",1)}else te[U++]=new A(re,"mtkw",1);Ne=Ne%Y}}else(re===ne||Ie&&re>z)&&(te[U++]=new A(re,W,0),Ne=Ne%Y);for(we===9?Ne=Y:h.D(we)?Ne+=2:Ne++,Oe=Ie;re===ne&&(H++,H0?j.charCodeAt(V-1):0,we=V>1?j.charCodeAt(V-2):0,Ie=re===32&&we!==32&&we!==9;Ie||(ve=!0)}else ve=!0;if(ve)if(q){const re=U>0?te[U-1].endIndex:z;for(let we=re+1;we<=V;we++)te[U++]=new A(we,"mtkw",1)}else te[U++]=new A(V,"mtkw",1);else te[U++]=new A(V,W,0);return te}function y(D,j,V,G){G.sort(L.a.compare);const B=L.b.normalize(D,G),z=B.length;let Y=0,K=[],Q=0,ee=0;for(let fe=0,q=V.length;feee&&(ee=ne.startOffset,K[Q++]=new A(ee,H,W)),ne.endOffset+1<=U)ee=ne.endOffset+1,K[Q++]=new A(ee,H+" "+ne.className,W|ne.metadata),Y++;else{ee=U,K[Q++]=new A(ee,H+" "+ne.className,W|ne.metadata);break}}U>ee&&(ee=U,K[Q++]=new A(ee,H,W))}const Se=V[V.length-1].endIndex;if(Y'):j.appendASCIIString("");for(let Ne=0,ve=Q.length;Ne=ee&&(He+=nt)}}for(ye&&(j.appendASCIIString(' style="width:'),j.appendASCIIString(String(te*xe)),j.appendASCIIString('px"')),j.appendASCII(62);Le1?j.write1(8594):j.write1(65515);for(let st=2;st<=He;st++)j.write1(160)}else He=1,j.write1(U);me+=He,Le>=ee&&(ce+=He)}oe=xe}else{let xe=0;for(j.appendASCII(62);Le=ee&&(ce+=st)}oe=xe}ze?Oe++:Oe=0,Le>=Y&&!Ce&&re.isPseudoAfter()&&(Ce=!0,ne.setColumnInfo(Le+1,Ne,me,De)),j.appendASCIIString("")}return Ce||ne.setColumnInfo(Y+1,Q.length-1,me,De),K&&j.appendASCIIString(""),j.appendASCIIString(""),new f(ne,q,B)}function v(D){return D.toString(16).toUpperCase().padStart(4,"0")}},bexQ:function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("Cg/j");const P=Object(h.c)("keybindingService")},bfR1:function(ft,w,e){"use strict";e.r(w);var h=e("sswD"),P=e("Yr1X"),L=e("3/fG");class A extends h.b{constructor(){super({id:"editor.action.fontZoomIn",label:L.a("EditorFontZoomIn.label","Editor Font Zoom In"),alias:"Editor Font Zoom In",precondition:void 0})}run(O,S){P.a.setZoomLevel(P.a.getZoomLevel()+1)}}class I extends h.b{constructor(){super({id:"editor.action.fontZoomOut",label:L.a("EditorFontZoomOut.label","Editor Font Zoom Out"),alias:"Editor Font Zoom Out",precondition:void 0})}run(O,S){P.a.setZoomLevel(P.a.getZoomLevel()-1)}}class k extends h.b{constructor(){super({id:"editor.action.fontZoomReset",label:L.a("EditorFontZoomReset.label","Editor Font Zoom Reset"),alias:"Editor Font Zoom Reset",precondition:void 0})}run(O,S){P.a.setZoomLevel(0)}}Object(h.j)(A),Object(h.j)(I),Object(h.j)(k)},bk7F:function(ft,w,e){"use strict";e.r(w),e.d(w,"BracketMatchingController",function(){return C});var h=e("X+cX"),P=e("pmY6"),L=e("8ATB"),A=e.n(L),I=e("sswD"),k=e("cGHE"),O=e("aokT"),S=e("gCVg"),f=e("wQH0"),u=e("M1Kb"),d=e("tX9W"),E=e("kYye"),p=e("3/fG"),n=e("fjLI"),b=e("MD5Z"),m=e("t9D7");const c=Object(b.Cc)("editorOverviewRuler.bracketMatchForeground",{dark:"#A0A0A0",light:"#A0A0A0",hc:"#A0A0A0"},p.a("overviewRulerBracketMatchForeground","Overview ruler marker color for matching brackets."));class l extends I.b{constructor(){super({id:"editor.action.jumpToBracket",label:p.a("smartSelect.jumpBracket","Go to Bracket"),alias:"Go to Bracket",precondition:void 0,kbOpts:{kbExpr:f.a.editorTextFocus,primary:2048|1024|88,weight:100}})}run(v,D){let j=C.get(D);if(!j)return;j.jumpToBracket()}}class g extends I.b{constructor(){super({id:"editor.action.selectToBracket",label:p.a("smartSelect.selectToBracket","Select to Bracket"),alias:"Select to Bracket",precondition:void 0,description:{description:"Select to Bracket",args:[{name:"args",schema:{type:"object",properties:{selectBrackets:{type:"boolean",default:!0}}}}]}})}run(v,D,j){const V=C.get(D);if(!V)return;let G=!0;j&&j.selectBrackets===!1&&(G=!1),V.selectToBracket(G)}}class y{constructor(v,D,j){this.position=v,this.brackets=D,this.options=j}}class C extends P.a{constructor(v){super();this._editor=v,this._lastBracketsData=[],this._lastVersionId=0,this._decorations=[],this._updateBracketsSoon=this._register(new h.e(()=>this._updateBrackets(),50)),this._matchBrackets=this._editor.getOption(63),this._updateBracketsSoon.schedule(),this._register(v.onDidChangeCursorPosition(D=>{if(this._matchBrackets==="never")return;this._updateBracketsSoon.schedule()})),this._register(v.onDidChangeModelContent(D=>{this._updateBracketsSoon.schedule()})),this._register(v.onDidChangeModel(D=>{this._lastBracketsData=[],this._decorations=[],this._updateBracketsSoon.schedule()})),this._register(v.onDidChangeModelLanguageConfiguration(D=>{this._lastBracketsData=[],this._updateBracketsSoon.schedule()})),this._register(v.onDidChangeConfiguration(D=>{D.hasChanged(63)&&(this._matchBrackets=this._editor.getOption(63),this._decorations=this._editor.deltaDecorations(this._decorations,[]),this._lastBracketsData=[],this._lastVersionId=0,this._updateBracketsSoon.schedule())})),this._register(v.onDidBlurEditorWidget(()=>{this._updateBracketsSoon.schedule()})),this._register(v.onDidFocusEditorWidget(()=>{this._updateBracketsSoon.schedule()}))}static get(v){return v.getContribution(C.ID)}jumpToBracket(){if(!this._editor.hasModel())return;const v=this._editor.getModel(),D=this._editor.getSelections().map(j=>{const V=j.getStartPosition(),G=v.matchBracket(V);let B=null;if(G)G[0].containsPosition(V)?B=G[1].getStartPosition():G[1].containsPosition(V)&&(B=G[0].getStartPosition());else{const z=v.findEnclosingBrackets(V);if(z)B=z[0].getStartPosition();else{const Y=v.findNextBracket(V);Y&&Y.range&&(B=Y.range.getStartPosition())}}return B?new S.a(B.lineNumber,B.column,B.lineNumber,B.column):new S.a(V.lineNumber,V.column,V.lineNumber,V.column)});this._editor.setSelections(D),this._editor.revealRange(D[0])}selectToBracket(v){if(!this._editor.hasModel())return;const D=this._editor.getModel(),j=[];this._editor.getSelections().forEach(V=>{const G=V.getStartPosition();let B=D.matchBracket(G);if(!B&&(B=D.findEnclosingBrackets(G),!B)){const K=D.findNextBracket(G);K&&K.range&&(B=D.matchBracket(K.range.getStartPosition()))}let z=null,Y=null;if(B){B.sort(O.a.compareRangesUsingStarts);const[K,Q]=B;if(z=v?K.getStartPosition():K.getEndPosition(),Y=v?Q.getEndPosition():Q.getStartPosition(),Q.containsPosition(G)){const ee=z;z=Y,Y=ee}}z&&Y&&j.push(new S.a(z.lineNumber,z.column,Y.lineNumber,Y.column))}),j.length>0&&(this._editor.setSelections(j),this._editor.revealRange(j[0]))}_updateBrackets(){if(this._matchBrackets==="never")return;this._recomputeBrackets();let v=[],D=0;for(const j of this._lastBracketsData){let V=j.brackets;V&&(v[D++]={range:V[0],options:j.options},v[D++]={range:V[1],options:j.options})}this._decorations=this._editor.deltaDecorations(this._decorations,v)}_recomputeBrackets(){if(!this._editor.hasModel()||!this._editor.hasWidgetFocus()){this._lastBracketsData=[],this._lastVersionId=0;return}const v=this._editor.getSelections();if(v.length>100){this._lastBracketsData=[],this._lastVersionId=0;return}const D=this._editor.getModel(),j=D.getVersionId();let V=[];this._lastVersionId===j&&(V=this._lastBracketsData);let G=[],B=0;for(let ee=0,Se=v.length;ee1&&G.sort(k.a.compare);let z=[],Y=0,K=0,Q=V.length;for(let ee=0,Se=G.length;ee{const j=v.getColor(E.j);j&&D.addRule(`.monaco-editor .bracket-match { background-color: ${j}; }`);const V=v.getColor(E.k);V&&D.addRule(`.monaco-editor .bracket-match { border: 1px solid ${V}; }`)}),n.d.appendMenuItem(n.b.MenubarGoMenu,{group:"5_infile_nav",command:{id:"editor.action.jumpToBracket",title:p.a({key:"miGoToBracket",comment:["&& denotes a mnemonic"]},"Go to &&Bracket")},order:2})},c2dO:function(ft,w,e){"use strict";e.r(w),e.d(w,"htmlLanguageService",function(){return p}),e.d(w,"htmlDefaults",function(){return n}),e.d(w,"handlebarLanguageService",function(){return b}),e.d(w,"handlebarDefaults",function(){return m}),e.d(w,"razorLanguageService",function(){return c}),e.d(w,"razorDefaults",function(){return l}),e.d(w,"registerHTMLLanguageService",function(){return y});var h=e("M/lh"),P=e.n(h),L=e("NQK8"),A=function(C,v,D,j){function V(G){return G instanceof D?G:new D(function(B){B(G)})}return new(D||(D=Promise))(function(G,B){function z(Q){try{K(j.next(Q))}catch(ee){B(ee)}}function Y(Q){try{K(j.throw(Q))}catch(ee){B(ee)}}function K(Q){Q.done?G(Q.value):V(Q.value).then(z,Y)}K((j=j.apply(C,v||[])).next())})},I=function(C,v){var D={label:0,sent:function(){if(G[0]&1)throw G[1];return G[1]},trys:[],ops:[]},j,V,G,B;return B={next:z(0),throw:z(1),return:z(2)},typeof Symbol=="function"&&(B[Symbol.iterator]=function(){return this}),B;function z(K){return function(Q){return Y([K,Q])}}function Y(K){if(j)throw new TypeError("Generator is already executing.");for(;D;)try{if(j=1,V&&(G=K[0]&2?V.return:K[0]?V.throw||((G=V.return)&&G.call(V),0):V.next)&&!(G=G.call(V,K[1])).done)return G;(V=0,G)&&(K=[K[0]&2,G.value]);switch(K[0]){case 0:case 1:G=K;break;case 4:return D.label++,{value:K[1],done:!1};case 5:D.label++,V=K[1],K=[0];continue;case 7:K=D.ops.pop(),D.trys.pop();continue;default:if(!(G=D.trys,G=G.length>0&&G[G.length-1])&&(K[0]===6||K[0]===2)){D=0;continue}if(K[0]===3&&(!G||K[1]>G[0]&&K[1]=0;fe--)(Se=B[fe])&&(ee=(Q<3?Se(ee):Q>3?Se(z,Y,ee):Se(z,Y))||ee);return Q>3&&ee&&Object.defineProperty(z,Y,ee),ee},C=function(B,z){return function(Y,K){z(Y,K,B)}},v=function(B,z,Y,K){function Q(ee){return ee instanceof Y?ee:new Y(function(Se){Se(ee)})}return new(Y||(Y=Promise))(function(ee,Se){function fe(U){try{te(K.next(U))}catch(H){Se(H)}}function q(U){try{te(K.throw(U))}catch(H){Se(H)}}function te(U){U.done?ee(U.value):Q(U.value).then(fe,q)}te((K=K.apply(B,z||[])).next())})};let D=class{constructor(z,Y){this._workerService=Y,this._callOnDispose=new I.b,this._callOnModel=new I.b,this._editor=z,this._callOnDispose.add(z.onDidChangeConfiguration(()=>this._update())),this._callOnDispose.add(z.onDidChangeModel(()=>this._update())),this._callOnDispose.add(z.onDidChangeModelLanguage(()=>this._update())),this._callOnDispose.add(d.x.onDidChange(this._update,this))}dispose(){this._callOnDispose.dispose(),this._callOnModel.dispose()}_update(){if(this._callOnModel.clear(),!this._editor.getOption(48))return;if(!this._editor.hasModel())return;const z=this._editor.getModel(),[Y]=d.x.ordered(z);if(!Y||!Y.autoFormatTriggerCharacters)return;let K=new S.b;for(let Q of Y.autoFormatTriggerCharacters)K.add(Q.charCodeAt(0));this._callOnModel.add(this._editor.onDidType(Q=>{let ee=Q.charCodeAt(Q.length-1);K.has(ee)&&this._trigger(String.fromCharCode(ee))}))}_trigger(z){if(!this._editor.hasModel())return;if(this._editor.getSelections().length>1||!this._editor.getSelection().isEmpty())return;const Y=this._editor.getModel(),K=this._editor.getPosition();let Q=!1;const ee=this._editor.onDidChangeModelContent(Se=>{if(Se.isFlush){Q=!0,ee.dispose();return}for(let fe=0,q=Se.changes.length;fe{if(ee.dispose(),Q)return;Object(h.n)(Se)&&(n.a.execute(this._editor,Se,!0),Object(p.b)(Se))},Se=>{throw ee.dispose(),Se})}};D.ID="editor.contrib.autoFormat",D=y([C(1,E.a)],D);let j=class{constructor(z,Y){this.editor=z,this._instantiationService=Y,this._callOnDispose=new I.b,this._callOnModel=new I.b,this._callOnDispose.add(z.onDidChangeConfiguration(()=>this._update())),this._callOnDispose.add(z.onDidChangeModel(()=>this._update())),this._callOnDispose.add(z.onDidChangeModelLanguage(()=>this._update())),this._callOnDispose.add(d.j.onDidChange(this._update,this))}dispose(){this._callOnDispose.dispose(),this._callOnModel.dispose()}_update(){if(this._callOnModel.clear(),!this.editor.getOption(47))return;if(!this.editor.hasModel())return;if(!d.j.has(this.editor.getModel()))return;this._callOnModel.add(this.editor.onDidPaste(({range:z})=>this._trigger(z)))}_trigger(z){if(!this.editor.hasModel())return;if(this.editor.getSelections().length>1)return;this._instantiationService.invokeFunction(p.c,this.editor,z,2,g.b.None,P.a.None).catch(L.f)}};j.ID="editor.contrib.formatOnPaste",j=y([C(1,l.a)],j);class V extends k.b{constructor(){super({id:"editor.action.formatDocument",label:b.a("formatDocument.label","Format Document"),alias:"Format Document",precondition:c.a.and(u.a.notInCompositeEditor,u.a.writable,u.a.hasDocumentFormattingProvider),kbOpts:{kbExpr:u.a.editorTextFocus,primary:1024|512|36,linux:{primary:2048|1024|39},weight:100},contextMenuOpts:{group:"1_modification",order:1.3}})}run(B,z){return v(this,void 0,void 0,function*(){if(z.hasModel()){const Y=B.get(l.a),K=B.get(g.a);yield K.showWhile(Y.invokeFunction(p.d,z,1,g.b.None,P.a.None),250)}})}}class G extends k.b{constructor(){super({id:"editor.action.formatSelection",label:b.a("formatSelection.label","Format Selection"),alias:"Format Selection",precondition:c.a.and(u.a.writable,u.a.hasDocumentSelectionFormattingProvider),kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(A.c)(2048|41,2048|36),weight:100},contextMenuOpts:{when:u.a.hasNonEmptySelection,group:"1_modification",order:1.31}})}run(B,z){return v(this,void 0,void 0,function*(){if(!z.hasModel())return;const Y=B.get(l.a),K=z.getModel(),Q=z.getSelections().map(Se=>Se.isEmpty()?new f.a(Se.startLineNumber,1,Se.startLineNumber,K.getLineMaxColumn(Se.startLineNumber)):Se),ee=B.get(g.a);yield ee.showWhile(Y.invokeFunction(p.c,z,Q,1,g.b.None,P.a.None),250)})}}Object(k.l)(D.ID,D),Object(k.l)(j.ID,j),Object(k.j)(V),Object(k.j)(G),m.a.registerCommand("editor.action.format",B=>v(void 0,void 0,void 0,function*(){const z=B.get(O.a).getFocusedCodeEditor();if(!z||!z.hasModel())return;const Y=B.get(m.b);z.getSelection().isEmpty()?yield Y.executeCommand("editor.action.formatDocument"):yield Y.executeCommand("editor.action.formatSelection")}))},cIqD:function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("Ll0s");class P{static whitespaceVisibleColumn(L,A,I){const k=L.length;let O=0,S=-1,f=-1;for(let u=0;u=0;Y--)(z=v[Y])&&(B=(G<3?z(B):G>3?z(D,j,B):z(D,j))||B);return G>3&&B&&Object.defineProperty(D,j,B),B};let E=!1;var p;(function(v){v.North="north",v.South="south",v.East="east",v.West="west"})(p||(p={}));let n=4;const b=new k.b;let m=300;const c=new k.b;class l{constructor(){this.disposables=new O.b}get onPointerMove(){return this.disposables.add(new P.a(window,"mousemove")).event}get onPointerUp(){return this.disposables.add(new P.a(window,"mouseup")).event}dispose(){this.disposables.dispose()}}d([I.a],l.prototype,"onPointerMove",null),d([I.a],l.prototype,"onPointerUp",null);class g{constructor(v){this.el=v,this.disposables=new O.b}get onPointerMove(){return this.disposables.add(new P.a(this.el,L.a.Change)).event}get onPointerUp(){return this.disposables.add(new P.a(this.el,L.a.End)).event}dispose(){this.disposables.dispose()}}d([I.a],g.prototype,"onPointerMove",null),d([I.a],g.prototype,"onPointerUp",null);class y{constructor(v){this.factory=v}get onPointerMove(){return this.factory.onPointerMove}get onPointerUp(){return this.factory.onPointerUp}dispose(){}}d([I.a],y.prototype,"onPointerMove",null),d([I.a],y.prototype,"onPointerUp",null);class C extends O.a{constructor(v,D,j){super();this.hoverDelay=m,this.hoverDelayer=this._register(new A.a(this.hoverDelay)),this._state=3,this._onDidEnablementChange=this._register(new k.b),this.onDidEnablementChange=this._onDidEnablementChange.event,this._onDidStart=this._register(new k.b),this.onDidStart=this._onDidStart.event,this._onDidChange=this._register(new k.b),this.onDidChange=this._onDidChange.event,this._onDidReset=this._register(new k.b),this.onDidReset=this._onDidReset.event,this._onDidEnd=this._register(new k.b),this.onDidEnd=this._onDidEnd.event,this.linkedSash=void 0,this.orthogonalStartSashDisposables=this._register(new O.b),this.orthogonalStartDragHandleDisposables=this._register(new O.b),this.orthogonalEndSashDisposables=this._register(new O.b),this.orthogonalEndDragHandleDisposables=this._register(new O.b),this.el=Object(h.q)(v,Object(h.a)(".monaco-sash")),j.orthogonalEdge&&this.el.classList.add(`orthogonal-edge-${j.orthogonalEdge}`),S.f&&this.el.classList.add("mac");const V=this._register(new P.a(this.el,"mousedown")).event;this._register(V(ee=>this.onPointerStart(ee,new l),this));const G=this._register(new P.a(this.el,"dblclick")).event;this._register(G(this.onPointerDoublePress,this));const B=this._register(new P.a(this.el,"mouseenter")).event;this._register(B(()=>C.onMouseEnter(this)));const z=this._register(new P.a(this.el,"mouseleave")).event;this._register(z(()=>C.onMouseLeave(this))),this._register(L.b.addTarget(this.el));const Y=k.c.map(this._register(new P.a(this.el,L.a.Start)).event,ee=>{var Se;return Object.assign(Object.assign({},ee),{target:(Se=ee.initialTarget)!==null&&Se!==void 0?Se:null})});this._register(Y(ee=>this.onPointerStart(ee,new g(this.el)),this));const K=this._register(new P.a(this.el,L.a.Tap)).event,Q=k.c.map(k.c.filter(k.c.debounce(K,(ee,Se)=>{var fe;return{event:Se,count:((fe=ee==null?void 0:ee.count)!==null&&fe!==void 0?fe:0)+1}},250),({count:ee})=>ee===2),({event:ee})=>{var Se;return Object.assign(Object.assign({},ee),{target:(Se=ee.initialTarget)!==null&&Se!==void 0?Se:null})});this._register(Q(this.onPointerDoublePress,this)),typeof j.size=="number"?(this.size=j.size,j.orientation===0?this.el.style.width=`${this.size}px`:this.el.style.height=`${this.size}px`):(this.size=n,this._register(b.event(ee=>{this.size=ee,this.layout()}))),this._register(c.event(ee=>this.hoverDelay=ee)),this.hidden=!1,this.layoutProvider=D,this.orthogonalStartSash=j.orthogonalStartSash,this.orthogonalEndSash=j.orthogonalEndSash,this.orientation=j.orientation||0,this.orientation===1?(this.el.classList.add("horizontal"),this.el.classList.remove("vertical")):(this.el.classList.remove("horizontal"),this.el.classList.add("vertical")),this.el.classList.toggle("debug",E),this.layout()}get state(){return this._state}set state(v){if(this._state===v)return;this.el.classList.toggle("disabled",v===0),this.el.classList.toggle("minimum",v===1),this.el.classList.toggle("maximum",v===2),this._state=v,this._onDidEnablementChange.fire(v)}get orthogonalStartSash(){return this._orthogonalStartSash}set orthogonalStartSash(v){if(this.orthogonalStartDragHandleDisposables.clear(),this.orthogonalStartSashDisposables.clear(),v){const D=j=>{this.orthogonalStartDragHandleDisposables.clear(),j!==0&&(this._orthogonalStartDragHandle=Object(h.q)(this.el,Object(h.a)(".orthogonal-drag-handle.start")),this.orthogonalStartDragHandleDisposables.add(Object(O.i)(()=>this._orthogonalStartDragHandle.remove())),this.orthogonalStartDragHandleDisposables.add(new P.a(this._orthogonalStartDragHandle,"mouseenter")).event(()=>C.onMouseEnter(v),void 0,this.orthogonalStartDragHandleDisposables),this.orthogonalStartDragHandleDisposables.add(new P.a(this._orthogonalStartDragHandle,"mouseleave")).event(()=>C.onMouseLeave(v),void 0,this.orthogonalStartDragHandleDisposables))};this.orthogonalStartSashDisposables.add(v.onDidEnablementChange(D,this)),D(v.state)}this._orthogonalStartSash=v}get orthogonalEndSash(){return this._orthogonalEndSash}set orthogonalEndSash(v){if(this.orthogonalEndDragHandleDisposables.clear(),this.orthogonalEndSashDisposables.clear(),v){const D=j=>{this.orthogonalEndDragHandleDisposables.clear(),j!==0&&(this._orthogonalEndDragHandle=Object(h.q)(this.el,Object(h.a)(".orthogonal-drag-handle.end")),this.orthogonalEndDragHandleDisposables.add(Object(O.i)(()=>this._orthogonalEndDragHandle.remove())),this.orthogonalEndDragHandleDisposables.add(new P.a(this._orthogonalEndDragHandle,"mouseenter")).event(()=>C.onMouseEnter(v),void 0,this.orthogonalEndDragHandleDisposables),this.orthogonalEndDragHandleDisposables.add(new P.a(this._orthogonalEndDragHandle,"mouseleave")).event(()=>C.onMouseLeave(v),void 0,this.orthogonalEndDragHandleDisposables))};this.orthogonalEndSashDisposables.add(v.onDidEnablementChange(D,this)),D(v.state)}this._orthogonalEndSash=v}onPointerStart(v,D){h.c.stop(v);let j=!1;if(!v.__orthogonalSashEvent){const q=this.getOrthogonalSash(v);q&&(j=!0,v.__orthogonalSashEvent=!0,q.onPointerStart(v,new y(D)))}if(this.linkedSash&&!v.__linkedSashEvent&&(v.__linkedSashEvent=!0,this.linkedSash.onPointerStart(v,new y(D))),!this.state)return;const V=Object(h.E)("iframe");for(const q of V)q.style.pointerEvents="none";const G=v.pageX,B=v.pageY,z=v.altKey,Y={startX:G,currentX:G,startY:B,currentY:B,altKey:z};this.el.classList.add("active"),this._onDidStart.fire(Y);const K=Object(h.w)(this.el),Q=()=>{let q="";j?q="all-scroll":this.orientation===1?this.state===1?q="s-resize":this.state===2?q="n-resize":q=S.f?"row-resize":"ns-resize":this.state===1?q="e-resize":this.state===2?q="w-resize":q=S.f?"col-resize":"ew-resize",K.textContent=`* { cursor: ${q} !important; }`},ee=new O.b;Q(),j||this.onDidEnablementChange(Q,null,ee);const Se=q=>{h.c.stop(q,!1);const te={startX:G,currentX:q.pageX,startY:B,currentY:q.pageY,altKey:z};this._onDidChange.fire(te)},fe=q=>{h.c.stop(q,!1),this.el.removeChild(K),this.el.classList.remove("active"),this._onDidEnd.fire(),ee.dispose();for(const te of V)te.style.pointerEvents="auto"};D.onPointerMove(Se,null,ee),D.onPointerUp(fe,null,ee),ee.add(D)}onPointerDoublePress(v){const D=this.getOrthogonalSash(v);D&&D._onDidReset.fire(),this.linkedSash&&this.linkedSash._onDidReset.fire(),this._onDidReset.fire()}static onMouseEnter(v,D=!1){v.el.classList.contains("active")?(v.hoverDelayer.cancel(),v.el.classList.add("hover")):v.hoverDelayer.trigger(()=>v.el.classList.add("hover"),v.hoverDelay).then(void 0,()=>{}),!D&&v.linkedSash&&C.onMouseEnter(v.linkedSash,!0)}static onMouseLeave(v,D=!1){v.hoverDelayer.cancel(),v.el.classList.remove("hover"),!D&&v.linkedSash&&C.onMouseLeave(v.linkedSash,!0)}clearSashHoverState(){C.onMouseLeave(this)}layout(){if(this.orientation===0){const v=this.layoutProvider;this.el.style.left=v.getVerticalSashLeft(this)-this.size/2+"px",v.getVerticalSashTop&&(this.el.style.top=v.getVerticalSashTop(this)+"px"),v.getVerticalSashHeight&&(this.el.style.height=v.getVerticalSashHeight(this)+"px")}else{const v=this.layoutProvider;this.el.style.top=v.getHorizontalSashTop(this)-this.size/2+"px",v.getHorizontalSashLeft&&(this.el.style.left=v.getHorizontalSashLeft(this)+"px"),v.getHorizontalSashWidth&&(this.el.style.width=v.getHorizontalSashWidth(this)+"px")}}hide(){this.hidden=!0,this.el.style.display="none",this.el.setAttribute("aria-hidden","true")}getOrthogonalSash(v){return!v.target||!(v.target instanceof HTMLElement)?void 0:v.target.classList.contains("orthogonal-drag-handle")?v.target.classList.contains("start")?this.orthogonalStartSash:this.orthogonalEndSash:void 0}dispose(){super.dispose(),this.el.remove()}}},cMvZ:function(ft,w,e){"use strict";e.d(w,"a",function(){return v}),e.d(w,"c",function(){return D}),e.d(w,"b",function(){return K});var h=e("MI8n"),P=e("pmY6"),L=e("N0LK"),A=e("0JNc"),I=e("KDc4"),k=e("BFtn");class O{constructor(q){if(q.autoClosingPairs?this._autoClosingPairs=q.autoClosingPairs.map(te=>new I.c(te)):q.brackets?this._autoClosingPairs=q.brackets.map(te=>new I.c({open:te[0],close:te[1]})):this._autoClosingPairs=[],q.colorizedBracketPairs?this._colorizedBracketPairs=S(q.colorizedBracketPairs.map(te=>[te[0],te[1]])):q.brackets?this._colorizedBracketPairs=S(q.brackets.map(te=>[te[0],te[1]]).filter(te=>!(te[0]==="<"&&te[1]===">"))):this._colorizedBracketPairs=[],q.__electricCharacterSupport&&q.__electricCharacterSupport.docComment){const te=q.__electricCharacterSupport.docComment;this._autoClosingPairs.push(new I.c({open:te.open,close:te.close||""}))}this._autoCloseBefore=typeof q.autoCloseBefore=="string"?q.autoCloseBefore:O.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED,this._surroundingPairs=q.surroundingPairs||this._autoClosingPairs}getAutoClosingPairs(){return this._autoClosingPairs}getAutoCloseBeforeSet(){return this._autoCloseBefore}static shouldAutoClosePair(q,te,U){if(te.getTokenCount()===0)return!0;const H=te.findTokenIndexAtOffset(U-2),W=te.getStandardTokenType(H);return q.isOK(W)}getSurroundingPairs(){return this._surroundingPairs}getColorizedBrackets(){return this._colorizedBracketPairs}}O.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED=`;:.,=}])> `;function S(q){return q.filter(([te,U])=>te!==""&&U!=="")}var f=e("EIAu");class u{constructor(q){this._richEditBrackets=q}getElectricCharacters(){let q=[];if(this._richEditBrackets)for(const te of this._richEditBrackets.brackets)for(const U of te.close){const H=U.charAt(U.length-1);q.push(H)}return q=q.filter((te,U,H)=>H.indexOf(te)===U),q}onElectricCharacter(q,te,U){if(!this._richEditBrackets||this._richEditBrackets.brackets.length===0)return null;const H=te.findTokenIndexAtOffset(U-1);if(Object(k.b)(te.getStandardTokenType(H)))return null;const W=this._richEditBrackets.reversedRegex,ne=te.getLineContent().substring(0,U-1)+q,Ce=f.a.findPrevBracketInRange(W,1,ne,0,ne.length);if(!Ce)return null;const Le=ne.substring(Ce.startColumn-1,Ce.endColumn-1).toLowerCase(),ce=this._richEditBrackets.textIsOpenBracket[Le];if(ce)return null;const me=te.getActualLineContentBefore(Ce.startColumn-1);return/^\s*$/.test(me)?{matchOpenBracket:Le}:null}}function d(q){return q.global&&(q.lastIndex=0),!0}class E{constructor(q){this._indentationRules=q}shouldIncrease(q){return!!(this._indentationRules&&(this._indentationRules.increaseIndentPattern&&d(this._indentationRules.increaseIndentPattern)&&this._indentationRules.increaseIndentPattern.test(q)))}shouldDecrease(q){return!!(this._indentationRules&&this._indentationRules.decreaseIndentPattern&&d(this._indentationRules.decreaseIndentPattern)&&this._indentationRules.decreaseIndentPattern.test(q))}shouldIndentNextLine(q){return!!(this._indentationRules&&this._indentationRules.indentNextLinePattern&&d(this._indentationRules.indentNextLinePattern)&&this._indentationRules.indentNextLinePattern.test(q))}shouldIgnore(q){return!!(this._indentationRules&&this._indentationRules.unIndentedLinePattern&&d(this._indentationRules.unIndentedLinePattern)&&this._indentationRules.unIndentedLinePattern.test(q))}getIndentMetadata(q){let te=0;return this.shouldIncrease(q)&&(te+=1),this.shouldDecrease(q)&&(te+=2),this.shouldIndentNextLine(q)&&(te+=4),this.shouldIgnore(q)&&(te+=8),te}}var p=e("/cxE");class n{constructor(q){q=q||{},q.brackets=q.brackets||[["(",")"],["{","}"],["[","]"]],this._brackets=[],q.brackets.forEach(te=>{const U=n._createOpenBracketRegExp(te[0]),H=n._createCloseBracketRegExp(te[1]);U&&H&&this._brackets.push({open:te[0],openRegExp:U,close:te[1],closeRegExp:H})}),this._regExpRules=q.onEnterRules||[]}onEnter(q,te,U,H){if(q>=3)for(let W=0,ne=this._regExpRules.length;Wce.reg?(ce.reg.lastIndex=0,ce.reg.test(ce.text)):!0);if(Le)return Ce.action}if(q>=2&&(U.length>0&&H.length>0))for(let W=0,ne=this._brackets.length;W=2&&U.length>0)for(let W=0,ne=this._brackets.length;W=0;Le--)(Ce=q[Le])&&(ne=(W<3?Ce(ne):W>3?Ce(te,U,ne):Ce(te,U))||ne);return W>3&&ne&&Object.defineProperty(te,U,ne),ne},y=function(q,te){return function(U,H){te(U,H,q)}};class C{constructor(q){this.languageId=q}affects(q){return this.languageId?this.languageId===q:!0}}const v=Object(b.c)("languageConfigurationService");let D=class extends P.a{constructor(te,U){super();this.configurationService=te,this.modeService=U,this.onDidChangeEmitter=this._register(new h.b),this.onDidChange=this.onDidChangeEmitter.event,this.configurations=new Map;const H=new Set(Object.values(V));this._register(this.configurationService.onDidChangeConfiguration(W=>{const ne=W.change.keys.some(Le=>H.has(Le)),Ce=W.change.overrides.filter(([Le,ce])=>ce.some(me=>H.has(me))).map(([Le])=>this.modeService.validateLanguageId(Le));if(ne)this.configurations.clear(),this.onDidChangeEmitter.fire(new C(void 0));else for(const Le of Ce)Le&&(this.configurations.delete(Le),this.onDidChangeEmitter.fire(new C(Le)))})),this._register(K.onDidChange(W=>{this.configurations.delete(W.languageId),this.onDidChangeEmitter.fire(new C(W.languageId))}))}getLanguageConfiguration(te){let U=this.configurations.get(te);return U||(U=j(te,this.configurationService,this.modeService),this.configurations.set(te,U)),U}};D=g([y(0,m.a),y(1,c.a)],D);function j(q,te,U){let H=K.getLanguageConfiguration(q);if(!H){const Le=U.validateLanguageId(q);if(!Le)throw new Error("Unexpected languageId");H=new fe(Le,{})}const W=G(H.languageId,te),ne=ee([H.underlyingConfig,W]),Ce=new fe(H.languageId,ne);return Ce}const V={brackets:"editor.language.brackets",colorizedBracketPairs:"editor.language.colorizedBracketPairs"};function G(q,te){const U=te.getValue(V.brackets,{overrideIdentifier:q}),H=te.getValue(V.colorizedBracketPairs,{overrideIdentifier:q});return{brackets:B(U),colorizedBracketPairs:B(H)}}function B(q){return Array.isArray(q)?q.map(te=>!Array.isArray(te)||te.length!==2?void 0:[te[0],te[1]]).filter(te=>!!te):void 0}class z{constructor(q){this.languageId=q}}class Y{constructor(){this._entries=new Map,this._onDidChange=new h.b,this.onDidChange=this._onDidChange.event}register(q,te,U=0){let H=this._entries.get(q);H||(H=new Q(q),this._entries.set(q,H));const W=H.register(te,U);return this._onDidChange.fire(new z(q)),Object(P.i)(()=>{W.dispose(),this._onDidChange.fire(new z(q))})}getLanguageConfiguration(q){let te=this._entries.get(q);return(te==null?void 0:te.getResolvedConfiguration())||null}getIndentationRules(q){const te=this.getLanguageConfiguration(q);return te&&te.indentationRules||null}_getElectricCharacterSupport(q){let te=this.getLanguageConfiguration(q);return te&&te.electricCharacter||null}getElectricCharacters(q){let te=this._getElectricCharacterSupport(q);return te?te.getElectricCharacters():[]}onElectricCharacter(q,te,U){let H=Object(k.a)(te,U-1),W=this._getElectricCharacterSupport(H.languageId);return W?W.onElectricCharacter(q,H,U-H.firstCharOffset):null}getComments(q){let te=this.getLanguageConfiguration(q);return te&&te.comments||null}_getCharacterPairSupport(q){let te=this.getLanguageConfiguration(q);return te&&te.characterPair||null}getAutoClosingPairs(q){const te=this._getCharacterPairSupport(q);return new I.a(te?te.getAutoClosingPairs():[])}getAutoCloseBeforeSet(q){let te=this._getCharacterPairSupport(q);return te?te.getAutoCloseBeforeSet():O.DEFAULT_AUTOCLOSE_BEFORE_LANGUAGE_DEFINED}getSurroundingPairs(q){let te=this._getCharacterPairSupport(q);return te?te.getSurroundingPairs():[]}shouldAutoClosePair(q,te,U){const H=Object(k.a)(te,U-1);return O.shouldAutoClosePair(q,H,U-H.firstCharOffset)}getWordDefinition(q){let te=this.getLanguageConfiguration(q);return te?Object(A.c)(te.wordDefinition||null):Object(A.c)(null)}getFoldingRules(q){let te=this.getLanguageConfiguration(q);return te?te.foldingRules:{}}getIndentRulesSupport(q){let te=this.getLanguageConfiguration(q);return te&&te.indentRulesSupport||null}getPrecedingValidLine(q,te,U){let H=q.getLanguageIdAtPosition(te,0);if(te>1){let W,ne=-1;for(W=te-1;W>=1;W--){if(q.getLanguageIdAtPosition(W,0)!==H)return ne;let Ce=q.getLineContent(W);if(U.shouldIgnore(Ce)||/^\s+$/.test(Ce)||Ce===""){ne=W;continue}return W}}return-1}getInheritIndentForLine(q,te,U,H=!0){if(q<4)return null;const W=this.getIndentRulesSupport(te.getLanguageId());if(!W)return null;if(U<=1)return{indentation:"",action:null};const ne=this.getPrecedingValidLine(te,U,W);if(ne<0)return null;if(ne<1)return{indentation:"",action:null};const Ce=te.getLineContent(ne);if(W.shouldIncrease(Ce)||W.shouldIndentNextLine(Ce))return{indentation:L.x(Ce),action:I.b.Indent,line:ne};if(W.shouldDecrease(Ce))return{indentation:L.x(Ce),action:null,line:ne};{if(ne===1)return{indentation:L.x(te.getLineContent(ne)),action:null,line:ne};const Le=ne-1,ce=W.getIndentMetadata(te.getLineContent(Le));if(!(ce&(1|2))&&ce&4){let me=0;for(let Oe=Le-1;Oe>0;Oe--){if(W.shouldIndentNextLine(te.getLineContent(Oe)))continue;me=Oe;break}return{indentation:L.x(te.getLineContent(me+1)),action:null,line:me+1}}if(H)return{indentation:L.x(te.getLineContent(ne)),action:null,line:ne};for(let me=ne;me>0;me--){const Oe=te.getLineContent(me);if(W.shouldIncrease(Oe))return{indentation:L.x(Oe),action:I.b.Indent,line:me};if(W.shouldIndentNextLine(Oe)){let oe=0;for(let De=me-1;De>0;De--){if(W.shouldIndentNextLine(te.getLineContent(me)))continue;oe=De;break}return{indentation:L.x(te.getLineContent(oe+1)),action:null,line:oe+1}}else if(W.shouldDecrease(Oe))return{indentation:L.x(Oe),action:null,line:me}}return{indentation:L.x(te.getLineContent(1)),action:null,line:1}}}getGoodIndentForLine(q,te,U,H,W){if(q<4)return null;const ne=this.getLanguageConfiguration(U);if(!ne)return null;const Ce=this.getIndentRulesSupport(U);if(!Ce)return null;const Le=this.getInheritIndentForLine(q,te,H),ce=te.getLineContent(H);if(Le){const me=Le.line;if(me!==void 0){const Oe=ne.onEnter(q,"",te.getLineContent(me),"");if(Oe){let oe=L.x(te.getLineContent(me));return Oe.removeText&&(oe=oe.substring(0,oe.length-Oe.removeText)),Oe.indentAction===I.b.Indent||Oe.indentAction===I.b.IndentOutdent?oe=W.shiftIndent(oe):Oe.indentAction===I.b.Outdent&&(oe=W.unshiftIndent(oe)),Ce.shouldDecrease(ce)&&(oe=W.unshiftIndent(oe)),Oe.appendText&&(oe+=Oe.appendText),L.x(oe)}}return Ce.shouldDecrease(ce)?Le.action===I.b.Indent?Le.indentation:W.unshiftIndent(Le.indentation):Le.action===I.b.Indent?W.shiftIndent(Le.indentation):Le.indentation}return null}getIndentForEnter(q,te,U,H){if(q<4)return null;te.forceTokenization(U.startLineNumber);const W=te.getLineTokens(U.startLineNumber),ne=Object(k.a)(W,U.startColumn-1),Ce=ne.getLineContent();let Le=!1,ce;ne.firstCharOffset>0&&W.getLanguageId(0)!==ne.languageId?(Le=!0,ce=Ce.substr(0,U.startColumn-1-ne.firstCharOffset)):ce=W.getLineContent().substring(0,U.startColumn-1);let me;if(U.isEmpty())me=Ce.substr(U.startColumn-1-ne.firstCharOffset);else{const Ie=this.getScopedLineTokens(te,U.endLineNumber,U.endColumn);me=Ie.getLineContent().substr(U.endColumn-1-ne.firstCharOffset)}const Oe=this.getIndentRulesSupport(ne.languageId);if(!Oe)return null;const oe=ce,De=L.x(ce),Ne={getLineTokens:Ie=>te.getLineTokens(Ie),getLanguageId:()=>te.getLanguageId(),getLanguageIdAtPosition:(Ie,ge)=>te.getLanguageIdAtPosition(Ie,ge),getLineContent:Ie=>Ie===U.startLineNumber?oe:te.getLineContent(Ie)},ve=L.x(W.getLineContent()),re=this.getInheritIndentForLine(q,Ne,U.startLineNumber+1);if(!re){const Ie=Le?ve:De;return{beforeEnter:Ie,afterEnter:Ie}}let we=Le?ve:re.indentation;return re.action===I.b.Indent&&(we=H.shiftIndent(we)),Oe.shouldDecrease(me)&&(we=H.unshiftIndent(we)),{beforeEnter:Le?ve:De,afterEnter:we}}getIndentActionForType(q,te,U,H,W){if(q<4)return null;const ne=this.getScopedLineTokens(te,U.startLineNumber,U.startColumn);if(ne.firstCharOffset)return null;const Ce=this.getIndentRulesSupport(ne.languageId);if(!Ce)return null;const Le=ne.getLineContent(),ce=Le.substr(0,U.startColumn-1-ne.firstCharOffset);let me;if(U.isEmpty())me=Le.substr(U.startColumn-1-ne.firstCharOffset);else{const Oe=this.getScopedLineTokens(te,U.endLineNumber,U.endColumn);me=Oe.getLineContent().substr(U.endColumn-1-ne.firstCharOffset)}if(!Ce.shouldDecrease(ce+me)&&Ce.shouldDecrease(ce+H+me)){const Oe=this.getInheritIndentForLine(q,te,U.startLineNumber,!1);if(!Oe)return null;let oe=Oe.indentation;return Oe.action!==I.b.Indent&&(oe=W.unshiftIndent(oe)),oe}return null}getIndentMetadata(q,te){const U=this.getIndentRulesSupport(q.getLanguageId());return U?te<1||te>q.getLineCount()?null:U.getIndentMetadata(q.getLineContent(te)):null}getEnterAction(q,te,U){const H=this.getScopedLineTokens(te,U.startLineNumber,U.startColumn),W=this.getLanguageConfiguration(H.languageId);if(!W)return null;const ne=H.getLineContent(),Ce=ne.substr(0,U.startColumn-1-H.firstCharOffset);let Le;if(U.isEmpty())Le=ne.substr(U.startColumn-1-H.firstCharOffset);else{const ve=this.getScopedLineTokens(te,U.endLineNumber,U.endColumn);Le=ve.getLineContent().substr(U.endColumn-1-H.firstCharOffset)}let ce="";if(U.startLineNumber>1&&H.firstCharOffset===0){const ve=this.getScopedLineTokens(te,U.startLineNumber-1);ve.languageId===H.languageId&&(ce=ve.getLineContent())}const me=W.onEnter(q,ce,Ce,Le);if(!me)return null;const Oe=me.indentAction;let oe=me.appendText;const De=me.removeText||0;oe?Oe===I.b.Indent&&(oe=" "+oe):Oe===I.b.Indent||Oe===I.b.IndentOutdent?oe=" ":oe="";let Ne=this.getIndentationAtPosition(te,U.startLineNumber,U.startColumn);return De&&(Ne=Ne.substring(0,Ne.length-De)),{indentAction:Oe,appendText:oe,removeText:De,indentation:Ne}}getIndentationAtPosition(q,te,U){const H=q.getLineContent(te);let W=L.x(H);return W.length>U-1&&(W=W.substring(0,U-1)),W}getScopedLineTokens(q,te,U){q.forceTokenization(te);const H=q.getLineTokens(te),W=typeof U=="undefined"?q.getLineMaxColumn(te)-1:U-1;return Object(k.a)(H,W)}}const K=new Y;class Q{constructor(q){this.languageId=q,this._resolved=null,this._entries=[],this._order=0,this._resolved=null}register(q,te){const U=new Se(q,te,++this._order);return this._entries.push(U),this._resolved=null,Object(P.i)(()=>{for(let H=0;Hq.configuration)))}}function ee(q){let te={comments:void 0,brackets:void 0,wordPattern:void 0,indentationRules:void 0,onEnterRules:void 0,autoClosingPairs:void 0,surroundingPairs:void 0,autoCloseBefore:void 0,folding:void 0,colorizedBracketPairs:void 0,__electricCharacterSupport:void 0};for(const U of q)te={comments:U.comments||te.comments,brackets:U.brackets||te.brackets,wordPattern:U.wordPattern||te.wordPattern,indentationRules:U.indentationRules||te.indentationRules,onEnterRules:U.onEnterRules||te.onEnterRules,autoClosingPairs:U.autoClosingPairs||te.autoClosingPairs,surroundingPairs:U.surroundingPairs||te.surroundingPairs,autoCloseBefore:U.autoCloseBefore||te.autoCloseBefore,folding:U.folding||te.folding,colorizedBracketPairs:U.colorizedBracketPairs||te.colorizedBracketPairs,__electricCharacterSupport:U.__electricCharacterSupport||te.__electricCharacterSupport};return te}class Se{constructor(q,te,U){this.configuration=q,this.priority=te,this.order=U}static cmp(q,te){return q.priority===te.priority?q.order-te.order:q.priority-te.priority}}class fe{constructor(q,te){this.languageId=q,this.underlyingConfig=te,this._brackets=null,this._electricCharacter=null,this._onEnterSupport=this.underlyingConfig.brackets||this.underlyingConfig.indentationRules||this.underlyingConfig.onEnterRules?new n(this.underlyingConfig):null,this.comments=fe._handleComments(this.underlyingConfig),this.characterPair=new O(this.underlyingConfig),this.wordDefinition=this.underlyingConfig.wordPattern||A.a,this.indentationRules=this.underlyingConfig.indentationRules,this.underlyingConfig.indentationRules?this.indentRulesSupport=new E(this.underlyingConfig.indentationRules):this.indentRulesSupport=null,this.foldingRules=this.underlyingConfig.folding||{}}getWordDefinition(){return Object(A.c)(this.wordDefinition)}get brackets(){return!this._brackets&&this.underlyingConfig.brackets&&(this._brackets=new f.b(this.languageId,this.underlyingConfig.brackets)),this._brackets}get electricCharacter(){return this._electricCharacter||(this._electricCharacter=new u(this.brackets)),this._electricCharacter}onEnter(q,te,U,H){return this._onEnterSupport?this._onEnterSupport.onEnter(q,te,U,H):null}static _handleComments(q){let te=q.comments;if(!te)return null;let U={};if(te.lineComment&&(U.lineCommentToken=te.lineComment),te.blockComment){let[H,W]=te.blockComment;U.blockCommentStartToken=H,U.blockCommentEndToken=W}return U}}Object(l.b)(v,D)},cPWS:function(ft,w,e){"use strict";e.d(w,"a",function(){return E});var h=e("6OMU"),P=e("JQT/"),L=e("/cxE"),A=e("JYp7"),I=e("QDVR"),k=e("aokT"),O=e("twdY"),S=e("al33");class f{remove(){this.parent&&this.parent.children.delete(this.id)}static findId(p,n){let b;typeof p=="string"?b=`${n.id}/${p}`:(b=`${n.id}/${p.name}`,n.children.get(b)!==void 0&&(b=`${n.id}/${p.name}_${p.range.startLineNumber}_${p.range.startColumn}`));let m=b;for(let c=0;n.children.get(m)!==void 0;c++)m=`${b}_${c}`;return m}static empty(p){return p.children.size===0}}class u extends f{constructor(p,n,b){super();this.id=p,this.parent=n,this.symbol=b,this.children=new Map}}class d extends f{constructor(p,n,b,m){super();this.id=p,this.parent=n,this.label=b,this.order=m,this.children=new Map}}class E extends f{constructor(p){super();this.uri=p,this.id="root",this.parent=void 0,this._groups=new Map,this.children=new Map,this.id="root",this.parent=void 0}static create(p,n){let b=this._keys.for(p,!0),m=E._requests.get(b);if(!m){let c=new P.b;m={promiseCnt:0,source:c,promise:E._create(p,c.token),model:void 0},E._requests.set(b,m);const l=Date.now();m.promise.then(()=>{this._requestDurations.update(p,Date.now()-l)})}return m.model?Promise.resolve(m.model):(m.promiseCnt+=1,n.onCancellationRequested(()=>{--m.promiseCnt===0&&(m.source.cancel(),E._requests.delete(b))}),new Promise((c,l)=>{m.promise.then(g=>{m.model=g,c(g)},g=>{E._requests.delete(b),l(g)})}))}static _create(p,n){const b=new P.b(n),m=new E(p.uri),c=O.m.ordered(p),l=c.map((y,C)=>{var v;let D=f.findId(`provider_${C}`,m),j=new d(D,m,(v=y.displayName)!==null&&v!==void 0?v:"Unknown Outline Provider",C);return Promise.resolve(y.provideDocumentSymbols(p,b.token)).then(V=>{for(const G of V||[])E._makeOutlineElement(G,j);return j},V=>(Object(L.g)(V),j)).then(V=>{f.empty(V)?V.remove():m._groups.set(D,V)})}),g=O.m.onDidChange(()=>{const y=O.m.ordered(p);Object(h.g)(y,c)||b.cancel()});return Promise.all(l).then(()=>b.token.isCancellationRequested&&!n.isCancellationRequested?E._create(p,n):m._compact()).finally(()=>{g.dispose()})}static _makeOutlineElement(p,n){let b=f.findId(p,n),m=new u(b,n,p);if(p.children)for(const c of p.children)E._makeOutlineElement(c,m);n.children.set(m.id,m)}_compact(){let p=0;for(const[n,b]of this._groups)b.children.size===0?this._groups.delete(n):p+=1;if(p!==1)this.children=this._groups;else{let n=A.a.first(this._groups.values());for(let[,b]of n.children)b.parent=this,this.children.set(b.id,b)}return this}getTopLevelSymbols(){const p=[];for(const n of this.children.values())n instanceof u?p.push(n.symbol):p.push(...A.a.map(n.children.values(),b=>b.symbol));return p.sort((n,b)=>k.a.compareRangesUsingStarts(n.range,b.range))}asListOfDocumentSymbols(){const p=this.getTopLevelSymbols(),n=[];return E._flattenDocumentSymbols(n,p,""),n.sort((b,m)=>k.a.compareRangesUsingStarts(b.range,m.range))}static _flattenDocumentSymbols(p,n,b){for(const m of n)p.push({kind:m.kind,tags:m.tags,name:m.name,detail:m.detail,containerName:m.containerName||b,range:m.range,selectionRange:m.selectionRange,children:void 0}),m.children&&E._flattenDocumentSymbols(p,m.children,m.name)}}E._requestDurations=new S.b(O.m,350),E._requests=new I.a(9,.75),E._keys=new class{constructor(){this._counter=1,this._data=new WeakMap}for(p,n){return`${p.id}/${n?p.getVersionId():""}/${this._hash(O.m.all(p))}`}_hash(p){let n="";for(const b of p){let m=this._data.get(b);typeof m=="undefined"&&(m=this._counter++,this._data.set(b,m)),n+=m}return n}}},"ci+S":function(ft,w,e){},cl4r:function(ft,w,e){},cldp:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"javascript",extensions:[".js",".es6",".jsx",".mjs"],firstLine:"^#!.*\\bnode",filenames:["jakefile"],aliases:["JavaScript","javascript","js"],mimetypes:["text/javascript"],loader:function(){return e.e(317).then(e.bind(null,"7Xl7"))}})},cqdO:function(ft,w,e){"use strict";e.d(w,"e",function(){return B}),e.d(w,"f",function(){return z}),e.d(w,"a",function(){return Q}),e.d(w,"h",function(){return fe}),e.d(w,"g",function(){return q}),e.d(w,"d",function(){return H}),e.d(w,"b",function(){return W}),e.d(w,"c",function(){return ve});var h=e("EffR"),P=e("4y0V"),L=e("uDWl"),A=e("pg8w"),I=e("OBOq");class k{constructor(re){this.spliceables=re}splice(re,we,Ie){this.spliceables.forEach(ge=>ge.splice(re,we,Ie))}}var O=e("6OMU"),S=e("X+cX"),f=e("zrhQ"),u=e("ZCR3"),d=e("MI8n"),E=e("fpMC"),p=e("pmY6"),n=e("Sdnv"),b=e("qj0h"),m=e("MNsG"),c=e("746U"),l=e("4rho");class g extends Error{constructor(re,we){super(`ListError [${re}] ${we}`)}}var y=e("feEw"),C=function(re,we,Ie,ge){var ye=arguments.length,ze=ye<3?we:ge===null?ge=Object.getOwnPropertyDescriptor(we,Ie):ge,xe;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ze=Reflect.decorate(re,we,Ie,ge);else for(var Te=re.length-1;Te>=0;Te--)(xe=re[Te])&&(ze=(ye<3?xe(ze):ye>3?xe(we,Ie,ze):xe(we,Ie))||ze);return ye>3&&ze&&Object.defineProperty(we,Ie,ze),ze},v=function(re,we,Ie,ge){function ye(ze){return ze instanceof Ie?ze:new Ie(function(xe){xe(ze)})}return new(Ie||(Ie=Promise))(function(ze,xe){function Te(nt){try{st(ge.next(nt))}catch(rt){xe(rt)}}function He(nt){try{st(ge.throw(nt))}catch(rt){xe(rt)}}function st(nt){nt.done?ze(nt.value):ye(nt.value).then(Te,He)}st((ge=ge.apply(re,we||[])).next())})};class D{constructor(re){this.trait=re,this.renderedElements=[]}get templateId(){return`template:${this.trait.trait}`}renderTemplate(re){return re}renderElement(re,we,Ie){const ge=this.renderedElements.findIndex(ye=>ye.templateData===Ie);if(ge>=0){const ye=this.renderedElements[ge];this.trait.unrender(Ie),ye.index=we}else{const ye={index:we,templateData:Ie};this.renderedElements.push(ye)}this.trait.renderIndex(we,Ie)}splice(re,we,Ie){const ge=[];for(const ye of this.renderedElements)ye.index=re+we&&ge.push({index:ye.index+Ie-we,templateData:ye.templateData});this.renderedElements=ge}renderIndexes(re){for(const{index:we,templateData:Ie}of this.renderedElements)re.indexOf(we)>-1&&this.trait.renderIndex(we,Ie)}disposeTemplate(re){const we=this.renderedElements.findIndex(Ie=>Ie.templateData===re);if(we<0)return;this.renderedElements.splice(we,1)}}class j{constructor(re){this._trait=re,this.length=0,this.indexes=[],this.sortedIndexes=[],this._onChange=new d.b,this.onChange=this._onChange.event}get trait(){return this._trait}get renderer(){return new D(this)}splice(re,we,Ie){var ge;we=Math.max(0,Math.min(we,this.length-re));const ye=Ie.length-we,ze=re+we,xe=[...this.sortedIndexes.filter(He=>HeHe?st+re:-1).filter(He=>He!==-1),...this.sortedIndexes.filter(He=>He>=ze).map(He=>He+ye)],Te=this.length+ye;if(this.sortedIndexes.length>0&&xe.length===0&&Te>0){const He=(ge=this.sortedIndexes.find(st=>st>=re))!==null&&ge!==void 0?ge:Te-1;xe.push(Math.min(He,Te-1))}this.renderer.splice(re,we,Ie.length),this._set(xe,xe),this.length=Te}renderIndex(re,we){we.classList.toggle(this._trait,this.contains(re))}unrender(re){re.classList.remove(this._trait)}set(re,we){return this._set(re,[...re].sort(Oe),we)}_set(re,we,Ie){const ge=this.indexes,ye=this.sortedIndexes;this.indexes=re,this.sortedIndexes=we;const ze=ce(ye,re);return this.renderer.renderIndexes(ze),this._onChange.fire({indexes:re,browserEvent:Ie}),ge}get(){return this.indexes}contains(re){return Object(O.d)(this.sortedIndexes,re,Oe)>=0}dispose(){Object(p.f)(this._onChange)}}C([u.a],j.prototype,"renderer",null);class V extends j{constructor(re){super("selected");this.setAriaSelected=re}renderIndex(re,we){super.renderIndex(re,we),this.setAriaSelected&&(this.contains(re)?we.setAttribute("aria-selected","true"):we.setAttribute("aria-selected","false"))}}class G{constructor(re,we,Ie){this.trait=re,this.view=we,this.identityProvider=Ie}splice(re,we,Ie){if(!this.identityProvider)return this.trait.splice(re,we,Ie.map(()=>!1));const ge=this.trait.get().map(ze=>this.identityProvider.getId(this.view.element(ze)).toString()),ye=Ie.map(ze=>ge.indexOf(this.identityProvider.getId(ze).toString())>-1);this.trait.splice(re,we,ye)}}function B(re){return re.tagName==="INPUT"||re.tagName==="TEXTAREA"}function z(re){return re.classList.contains("monaco-editor")?!0:re.classList.contains("monaco-list")?!1:re.parentElement?z(re.parentElement):!1}class Y{constructor(re,we,Ie){this.list=re,this.view=we,this.disposables=new p.b,this.multipleSelectionDisposables=new p.b,this.onKeyDown.filter(ge=>ge.keyCode===3).on(this.onEnter,this,this.disposables),this.onKeyDown.filter(ge=>ge.keyCode===16).on(this.onUpArrow,this,this.disposables),this.onKeyDown.filter(ge=>ge.keyCode===18).on(this.onDownArrow,this,this.disposables),this.onKeyDown.filter(ge=>ge.keyCode===11).on(this.onPageUpArrow,this,this.disposables),this.onKeyDown.filter(ge=>ge.keyCode===12).on(this.onPageDownArrow,this,this.disposables),this.onKeyDown.filter(ge=>ge.keyCode===9).on(this.onEscape,this,this.disposables),Ie.multipleSelectionSupport!==!1&&this.onKeyDown.filter(ge=>(m.f?ge.metaKey:ge.ctrlKey)&&ge.keyCode===31).on(this.onCtrlA,this,this.multipleSelectionDisposables)}get onKeyDown(){return d.c.chain(this.disposables.add(new P.a(this.view.domNode,"keydown")).event).filter(re=>!B(re.target)).map(re=>new L.a(re))}updateOptions(re){re.multipleSelectionSupport!==void 0&&(this.multipleSelectionDisposables.clear(),re.multipleSelectionSupport&&this.onKeyDown.filter(we=>(m.f?we.metaKey:we.ctrlKey)&&we.keyCode===31).on(this.onCtrlA,this,this.multipleSelectionDisposables))}onEnter(re){re.preventDefault(),re.stopPropagation(),this.list.setSelection(this.list.getFocus(),re.browserEvent)}onUpArrow(re){re.preventDefault(),re.stopPropagation(),this.list.focusPrevious(1,!1,re.browserEvent);const we=this.list.getFocus()[0];this.list.setAnchor(we),this.list.reveal(we),this.view.domNode.focus()}onDownArrow(re){re.preventDefault(),re.stopPropagation(),this.list.focusNext(1,!1,re.browserEvent);const we=this.list.getFocus()[0];this.list.setAnchor(we),this.list.reveal(we),this.view.domNode.focus()}onPageUpArrow(re){re.preventDefault(),re.stopPropagation(),this.list.focusPreviousPage(re.browserEvent);const we=this.list.getFocus()[0];this.list.setAnchor(we),this.list.reveal(we),this.view.domNode.focus()}onPageDownArrow(re){re.preventDefault(),re.stopPropagation(),this.list.focusNextPage(re.browserEvent);const we=this.list.getFocus()[0];this.list.setAnchor(we),this.list.reveal(we),this.view.domNode.focus()}onCtrlA(re){re.preventDefault(),re.stopPropagation(),this.list.setSelection(Object(O.r)(this.list.length),re.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus()}onEscape(re){this.list.getSelection().length&&(re.preventDefault(),re.stopPropagation(),this.list.setSelection([],re.browserEvent),this.list.setAnchor(void 0),this.view.domNode.focus())}dispose(){this.disposables.dispose(),this.multipleSelectionDisposables.dispose()}}C([u.a],Y.prototype,"onKeyDown",null);var K;(function(re){re[re.Idle=0]="Idle",re[re.Typing=1]="Typing"})(K||(K={}));const Q=new class{mightProducePrintableCharacter(re){return re.ctrlKey||re.metaKey||re.altKey?!1:re.keyCode>=31&&re.keyCode<=56||re.keyCode>=21&&re.keyCode<=30||re.keyCode>=93&&re.keyCode<=102||re.keyCode>=80&&re.keyCode<=90}};class ee{constructor(re,we,Ie,ge){this.list=re,this.view=we,this.keyboardNavigationLabelProvider=Ie,this.delegate=ge,this.enabled=!1,this.state=K.Idle,this.automaticKeyboardNavigation=!0,this.triggered=!1,this.previouslyFocused=-1,this.enabledDisposables=new p.b,this.disposables=new p.b,this.updateOptions(re.options)}updateOptions(re){const we=typeof re.enableKeyboardNavigation=="undefined"?!0:!!re.enableKeyboardNavigation;we?this.enable():this.disable(),typeof re.automaticKeyboardNavigation!="undefined"&&(this.automaticKeyboardNavigation=re.automaticKeyboardNavigation)}enable(){if(this.enabled)return;const re=d.c.chain(this.enabledDisposables.add(new P.a(this.view.domNode,"keydown")).event).filter(ge=>!B(ge.target)).filter(()=>this.automaticKeyboardNavigation||this.triggered).map(ge=>new L.a(ge)).filter(ge=>this.delegate.mightProducePrintableCharacter(ge)).forEach(ge=>{ge.stopPropagation(),ge.preventDefault()}).map(ge=>ge.browserEvent.key).event,we=d.c.debounce(re,()=>null,800),Ie=d.c.reduce(d.c.any(re,we),(ge,ye)=>ye===null?null:(ge||"")+ye);Ie(this.onInput,this,this.enabledDisposables),we(this.onClear,this,this.enabledDisposables),this.enabled=!0,this.triggered=!1}disable(){if(!this.enabled)return;this.enabledDisposables.clear(),this.enabled=!1,this.triggered=!1}onClear(){var re;const we=this.list.getFocus();if(we.length>0&&we[0]===this.previouslyFocused){const Ie=(re=this.list.options.accessibilityProvider)===null||re===void 0?void 0:re.getAriaLabel(this.list.element(we[0]));Ie&&Object(I.a)(Ie)}this.previouslyFocused=-1}onInput(re){if(!re){this.state=K.Idle,this.triggered=!1;return}const we=this.list.getFocus(),Ie=we.length>0?we[0]:0,ge=this.state===K.Idle?1:0;this.state=K.Typing;for(let ye=0;ye!B(ge.target)).map(ge=>new L.a(ge));Ie.filter(ge=>ge.keyCode===2&&!ge.ctrlKey&&!ge.metaKey&&!ge.shiftKey&&!ge.altKey).on(this.onTab,this,this.disposables)}onTab(re){if(re.target!==this.view.domNode)return;const we=this.list.getFocus();if(we.length===0)return;const Ie=this.view.domElement(we[0]);if(!Ie)return;const ge=Ie.querySelector("[tabIndex]");if(!ge||!(ge instanceof HTMLElement)||ge.tabIndex===-1)return;const ye=window.getComputedStyle(ge);if(ye.visibility==="hidden"||ye.display==="none")return;re.preventDefault(),re.stopPropagation(),ge.focus()}dispose(){this.disposables.dispose()}}function fe(re){return m.f?re.browserEvent.metaKey:re.browserEvent.ctrlKey}function q(re){return re.browserEvent.shiftKey}function te(re){return re instanceof MouseEvent&&re.button===2}const U={isSelectionSingleChangeEvent:fe,isSelectionRangeChangeEvent:q};class H{constructor(re){this.list=re,this.disposables=new p.b,this._onPointer=new d.b,this.onPointer=this._onPointer.event,re.options.multipleSelectionSupport!==!1&&(this.multipleSelectionController=this.list.options.multipleSelectionController||U),this.mouseSupport=typeof re.options.mouseSupport=="undefined"||!!re.options.mouseSupport,this.mouseSupport&&(re.onMouseDown(this.onMouseDown,this,this.disposables),re.onContextMenu(this.onContextMenu,this,this.disposables),re.onMouseDblClick(this.onDoubleClick,this,this.disposables),re.onTouchStart(this.onMouseDown,this,this.disposables),this.disposables.add(A.b.addTarget(re.getHTMLElement()))),d.c.any(re.onMouseClick,re.onMouseMiddleClick,re.onTap)(this.onViewPointer,this,this.disposables)}updateOptions(re){re.multipleSelectionSupport!==void 0&&(this.multipleSelectionController=void 0,re.multipleSelectionSupport&&(this.multipleSelectionController=this.list.options.multipleSelectionController||U))}isSelectionSingleChangeEvent(re){return this.multipleSelectionController?this.multipleSelectionController.isSelectionSingleChangeEvent(re):!1}isSelectionRangeChangeEvent(re){return this.multipleSelectionController?this.multipleSelectionController.isSelectionRangeChangeEvent(re):!1}isSelectionChangeEvent(re){return this.isSelectionSingleChangeEvent(re)||this.isSelectionRangeChangeEvent(re)}onMouseDown(re){if(z(re.browserEvent.target))return;document.activeElement!==re.browserEvent.target&&this.list.domFocus()}onContextMenu(re){if(z(re.browserEvent.target))return;const we=typeof re.index=="undefined"?[]:[re.index];this.list.setFocus(we,re.browserEvent)}onViewPointer(re){if(!this.mouseSupport)return;if(B(re.browserEvent.target)||z(re.browserEvent.target))return;const we=re.index;if(typeof we=="undefined"){this.list.setFocus([],re.browserEvent),this.list.setSelection([],re.browserEvent),this.list.setAnchor(void 0);return}if(this.isSelectionRangeChangeEvent(re))return this.changeSelection(re);if(this.isSelectionChangeEvent(re))return this.changeSelection(re);this.list.setFocus([we],re.browserEvent),this.list.setAnchor(we),te(re.browserEvent)||this.list.setSelection([we],re.browserEvent),this._onPointer.fire(re)}onDoubleClick(re){if(B(re.browserEvent.target)||z(re.browserEvent.target))return;if(this.isSelectionChangeEvent(re))return;const we=this.list.getFocus();this.list.setSelection(we,re.browserEvent)}changeSelection(re){const we=re.index;let Ie=this.list.getAnchor();if(this.isSelectionRangeChangeEvent(re)){if(typeof Ie=="undefined"){const st=this.list.getFocus()[0];Ie=st!=null?st:we,this.list.setAnchor(Ie)}const ge=Math.min(Ie,we),ye=Math.max(Ie,we),ze=Object(O.r)(ge,ye+1),xe=this.list.getSelection(),Te=Le(ce(xe,[Ie]),Ie);if(Te.length===0)return;const He=ce(ze,me(xe,Te));this.list.setSelection(He,re.browserEvent),this.list.setFocus([we],re.browserEvent)}else if(this.isSelectionSingleChangeEvent(re)){const ge=this.list.getSelection(),ye=ge.filter(ze=>ze!==we);this.list.setFocus([we]),this.list.setAnchor(we),ge.length===ye.length?this.list.setSelection([...ye,we],re.browserEvent):this.list.setSelection(ye,re.browserEvent)}}dispose(){this.disposables.dispose()}}class W{constructor(re,we){this.styleElement=re,this.selectorSuffix=we}style(re){const we=this.selectorSuffix&&`.${this.selectorSuffix}`,Ie=[];re.listBackground&&(re.listBackground.isOpaque()?Ie.push(`.monaco-list${we} .monaco-list-rows { background: ${re.listBackground}; }`):m.f||console.warn(`List with id '${this.selectorSuffix}' was styled with a non-opaque background color. This will break sub-pixel antialiasing.`)),re.listFocusBackground&&(Ie.push(`.monaco-list${we}:focus .monaco-list-row.focused { background-color: ${re.listFocusBackground}; }`),Ie.push(`.monaco-list${we}:focus .monaco-list-row.focused:hover { background-color: ${re.listFocusBackground}; }`)),re.listFocusForeground&&Ie.push(`.monaco-list${we}:focus .monaco-list-row.focused { color: ${re.listFocusForeground}; }`),re.listActiveSelectionBackground&&(Ie.push(`.monaco-list${we}:focus .monaco-list-row.selected { background-color: ${re.listActiveSelectionBackground}; }`),Ie.push(`.monaco-list${we}:focus .monaco-list-row.selected:hover { background-color: ${re.listActiveSelectionBackground}; }`)),re.listActiveSelectionForeground&&Ie.push(`.monaco-list${we}:focus .monaco-list-row.selected { color: ${re.listActiveSelectionForeground}; }`),re.listActiveSelectionIconForeground&&Ie.push(`.monaco-list${we}:focus .monaco-list-row.selected .codicon { color: ${re.listActiveSelectionIconForeground}; }`),re.listFocusAndSelectionBackground&&Ie.push(` .monaco-drag-image, .monaco-list${we}:focus .monaco-list-row.selected.focused { background-color: ${re.listFocusAndSelectionBackground}; } `),re.listFocusAndSelectionForeground&&Ie.push(` .monaco-drag-image, .monaco-list${we}:focus .monaco-list-row.selected.focused { color: ${re.listFocusAndSelectionForeground}; } `),re.listInactiveFocusForeground&&(Ie.push(`.monaco-list${we} .monaco-list-row.focused { color: ${re.listInactiveFocusForeground}; }`),Ie.push(`.monaco-list${we} .monaco-list-row.focused:hover { color: ${re.listInactiveFocusForeground}; }`)),re.listInactiveSelectionIconForeground&&Ie.push(`.monaco-list${we} .monaco-list-row.focused .codicon { color: ${re.listInactiveSelectionIconForeground}; }`),re.listInactiveFocusBackground&&(Ie.push(`.monaco-list${we} .monaco-list-row.focused { background-color: ${re.listInactiveFocusBackground}; }`),Ie.push(`.monaco-list${we} .monaco-list-row.focused:hover { background-color: ${re.listInactiveFocusBackground}; }`)),re.listInactiveSelectionBackground&&(Ie.push(`.monaco-list${we} .monaco-list-row.selected { background-color: ${re.listInactiveSelectionBackground}; }`),Ie.push(`.monaco-list${we} .monaco-list-row.selected:hover { background-color: ${re.listInactiveSelectionBackground}; }`)),re.listInactiveSelectionForeground&&Ie.push(`.monaco-list${we} .monaco-list-row.selected { color: ${re.listInactiveSelectionForeground}; }`),re.listHoverBackground&&Ie.push(`.monaco-list${we}:not(.drop-target) .monaco-list-row:hover:not(.selected):not(.focused) { background-color: ${re.listHoverBackground}; }`),re.listHoverForeground&&Ie.push(`.monaco-list${we} .monaco-list-row:hover:not(.selected):not(.focused) { color: ${re.listHoverForeground}; }`),re.listSelectionOutline&&Ie.push(`.monaco-list${we} .monaco-list-row.selected { outline: 1px dotted ${re.listSelectionOutline}; outline-offset: -1px; }`),re.listFocusOutline&&Ie.push(` .monaco-drag-image, .monaco-list${we}:focus .monaco-list-row.focused { outline: 1px solid ${re.listFocusOutline}; outline-offset: -1px; } `),re.listInactiveFocusOutline&&Ie.push(`.monaco-list${we} .monaco-list-row.focused { outline: 1px dotted ${re.listInactiveFocusOutline}; outline-offset: -1px; }`),re.listHoverOutline&&Ie.push(`.monaco-list${we} .monaco-list-row:hover { outline: 1px dashed ${re.listHoverOutline}; outline-offset: -1px; }`),re.listDropBackground&&Ie.push(` .monaco-list${we}.drop-target, .monaco-list${we} .monaco-list-rows.drop-target, .monaco-list${we} .monaco-list-row.drop-target { background-color: ${re.listDropBackground} !important; color: inherit !important; } `),re.listFilterWidgetBackground&&Ie.push(`.monaco-list-type-filter { background-color: ${re.listFilterWidgetBackground} }`),re.listFilterWidgetOutline&&Ie.push(`.monaco-list-type-filter { border: 1px solid ${re.listFilterWidgetOutline}; }`),re.listFilterWidgetNoMatchesOutline&&Ie.push(`.monaco-list-type-filter.no-matches { border: 1px solid ${re.listFilterWidgetNoMatchesOutline}; }`),re.listMatchesShadow&&Ie.push(`.monaco-list-type-filter { box-shadow: 1px 1px 1px ${re.listMatchesShadow}; }`),re.tableColumnsBorder&&Ie.push(` .monaco-table:hover > .monaco-split-view2, .monaco-table:hover > .monaco-split-view2 .monaco-sash.vertical::before { border-color: ${re.tableColumnsBorder}; }`),this.styleElement.textContent=Ie.join(` `)}}const ne={listFocusBackground:f.a.fromHex("#7FB0D0"),listActiveSelectionBackground:f.a.fromHex("#0E639C"),listActiveSelectionForeground:f.a.fromHex("#FFFFFF"),listActiveSelectionIconForeground:f.a.fromHex("#FFFFFF"),listFocusAndSelectionBackground:f.a.fromHex("#094771"),listFocusAndSelectionForeground:f.a.fromHex("#FFFFFF"),listInactiveSelectionBackground:f.a.fromHex("#3F3F46"),listInactiveSelectionIconForeground:f.a.fromHex("#FFFFFF"),listHoverBackground:f.a.fromHex("#2A2D2E"),listDropBackground:f.a.fromHex("#383B3D"),treeIndentGuidesStroke:f.a.fromHex("#a9a9a9"),tableColumnsBorder:f.a.fromHex("#cccccc").transparent(.2)},Ce={keyboardSupport:!0,mouseSupport:!0,multipleSelectionSupport:!0,dnd:{getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){}}};function Le(re,we){const Ie=re.indexOf(we);if(Ie===-1)return[];const ge=[];let ye=Ie-1;for(;ye>=0&&re[ye]===we-(Ie-ye);)ge.push(re[ye--]);for(ge.reverse(),ye=Ie;ye=re.length)Ie.push(we[ye++]);else if(ye>=we.length)Ie.push(re[ge++]);else if(re[ge]===we[ye]){Ie.push(re[ge]),ge++,ye++;continue}else re[ge]=re.length)Ie.push(we[ye++]);else if(ye>=we.length)Ie.push(re[ge++]);else if(re[ge]===we[ye]){ge++,ye++;continue}else re[ge]re-we;class oe{constructor(re,we){this._templateId=re,this.renderers=we}get templateId(){return this._templateId}renderTemplate(re){return this.renderers.map(we=>we.renderTemplate(re))}renderElement(re,we,Ie,ge){let ye=0;for(const ze of this.renderers)ze.renderElement(re,we,Ie[ye++],ge)}disposeElement(re,we,Ie,ge){let ye=0;for(const ze of this.renderers)ze.disposeElement&&ze.disposeElement(re,we,Ie[ye],ge),ye+=1}disposeTemplate(re){let we=0;for(const Ie of this.renderers)Ie.disposeTemplate(re[we++])}}class De{constructor(re){this.accessibilityProvider=re,this.templateId="a18n"}renderTemplate(re){return re}renderElement(re,we,Ie){const ge=this.accessibilityProvider.getAriaLabel(re);ge?Ie.setAttribute("aria-label",ge):Ie.removeAttribute("aria-label");const ye=this.accessibilityProvider.getAriaLevel&&this.accessibilityProvider.getAriaLevel(re);typeof ye=="number"?Ie.setAttribute("aria-level",`${ye}`):Ie.removeAttribute("aria-level")}disposeTemplate(re){}}class Ne{constructor(re,we){this.list=re,this.dnd=we}getDragElements(re){const we=this.list.getSelectedElements(),Ie=we.indexOf(re)>-1?we:[re];return Ie}getDragURI(re){return this.dnd.getDragURI(re)}getDragLabel(re,we){return this.dnd.getDragLabel?this.dnd.getDragLabel(re,we):void 0}onDragStart(re,we){this.dnd.onDragStart&&this.dnd.onDragStart(re,we)}onDragOver(re,we,Ie,ge){return this.dnd.onDragOver(re,we,Ie,ge)}onDragLeave(re,we,Ie,ge){var ye,ze;(ze=(ye=this.dnd).onDragLeave)===null||ze===void 0||ze.call(ye,re,we,Ie,ge)}onDragEnd(re){this.dnd.onDragEnd&&this.dnd.onDragEnd(re)}drop(re,we,Ie,ge){this.dnd.drop(re,we,Ie,ge)}}class ve{constructor(re,we,Ie,ge,ye=Ce){var ze;this.user=re,this._options=ye,this.focus=new j("focused"),this.anchor=new j("anchor"),this.eventBufferer=new d.d,this._ariaLabel="",this.disposables=new p.b,this._onDidDispose=new d.b,this.onDidDispose=this._onDidDispose.event;const xe=this._options.accessibilityProvider&&this._options.accessibilityProvider.getWidgetRole?(ze=this._options.accessibilityProvider)===null||ze===void 0?void 0:ze.getWidgetRole():"list";this.selection=new V(xe!=="listbox"),Object(b.f)(ye,ne,!1);const Te=[this.focus.renderer,this.selection.renderer];this.accessibilityProvider=ye.accessibilityProvider,this.accessibilityProvider&&(Te.push(new De(this.accessibilityProvider)),this.accessibilityProvider.onDidChangeActiveDescendant&&this.accessibilityProvider.onDidChangeActiveDescendant(this.onDidChangeActiveDescendant,this,this.disposables)),ge=ge.map(st=>new oe(st.templateId,[...Te,st]));const He=Object.assign(Object.assign({},ye),{dnd:ye.dnd&&new Ne(this,ye.dnd)});if(this.view=new y.b(we,Ie,ge,He),this.view.domNode.setAttribute("role",xe),ye.styleController)this.styleController=ye.styleController(this.view.domId);else{const st=Object(h.w)(this.view.domNode);this.styleController=new W(st,this.view.domId)}if(this.spliceable=new k([new G(this.focus,this.view,ye.identityProvider),new G(this.selection,this.view,ye.identityProvider),new G(this.anchor,this.view,ye.identityProvider),this.view]),this.disposables.add(this.focus),this.disposables.add(this.selection),this.disposables.add(this.anchor),this.disposables.add(this.view),this.disposables.add(this._onDidDispose),this.disposables.add(new Se(this,this.view)),(typeof ye.keyboardSupport!="boolean"||ye.keyboardSupport)&&(this.keyboardController=new Y(this,this.view,ye),this.disposables.add(this.keyboardController)),ye.keyboardNavigationLabelProvider){const st=ye.keyboardNavigationDelegate||Q;this.typeLabelController=new ee(this,this.view,ye.keyboardNavigationLabelProvider,st),this.disposables.add(this.typeLabelController)}this.mouseController=this.createMouseController(ye),this.disposables.add(this.mouseController),this.onDidChangeFocus(this._onFocusChange,this,this.disposables),this.onDidChangeSelection(this._onSelectionChange,this,this.disposables),this.accessibilityProvider&&(this.ariaLabel=this.accessibilityProvider.getWidgetAriaLabel()),this._options.multipleSelectionSupport!==!1&&this.view.domNode.setAttribute("aria-multiselectable","true")}get onDidChangeFocus(){return d.c.map(this.eventBufferer.wrapEvent(this.focus.onChange),re=>this.toListEvent(re))}get onDidChangeSelection(){return d.c.map(this.eventBufferer.wrapEvent(this.selection.onChange),re=>this.toListEvent(re))}get domId(){return this.view.domId}get onMouseClick(){return this.view.onMouseClick}get onMouseDblClick(){return this.view.onMouseDblClick}get onMouseMiddleClick(){return this.view.onMouseMiddleClick}get onPointer(){return this.mouseController.onPointer}get onMouseDown(){return this.view.onMouseDown}get onTouchStart(){return this.view.onTouchStart}get onTap(){return this.view.onTap}get onContextMenu(){let re=!1;const we=d.c.chain(this.disposables.add(new P.a(this.view.domNode,"keydown")).event).map(ye=>new L.a(ye)).filter(ye=>re=ye.keyCode===58||ye.shiftKey&&ye.keyCode===68).map(P.b).filter(()=>!1).event,Ie=d.c.chain(this.disposables.add(new P.a(this.view.domNode,"keyup")).event).forEach(()=>re=!1).map(ye=>new L.a(ye)).filter(ye=>ye.keyCode===58||ye.shiftKey&&ye.keyCode===68).map(P.b).map(({browserEvent:ye})=>{const ze=this.getFocus(),xe=ze.length?ze[0]:void 0,Te=typeof xe!="undefined"?this.view.element(xe):void 0,He=typeof xe!="undefined"?this.view.domElement(xe):this.view.domNode;return{index:xe,element:Te,anchor:He,browserEvent:ye}}).event,ge=d.c.chain(this.view.onContextMenu).filter(ye=>!re).map(({element:ye,index:ze,browserEvent:xe})=>({element:ye,index:ze,anchor:{x:xe.pageX+1,y:xe.pageY},browserEvent:xe})).event;return d.c.any(we,Ie,ge)}get onKeyDown(){return this.disposables.add(new P.a(this.view.domNode,"keydown")).event}get onDidFocus(){return d.c.signal(this.disposables.add(new P.a(this.view.domNode,"focus",!0)).event)}createMouseController(re){return new H(this)}updateOptions(re={}){var we;this._options=Object.assign(Object.assign({},this._options),re),this.typeLabelController&&this.typeLabelController.updateOptions(this._options),this._options.multipleSelectionController!==void 0&&(this._options.multipleSelectionSupport?this.view.domNode.setAttribute("aria-multiselectable","true"):this.view.domNode.removeAttribute("aria-multiselectable")),this.mouseController.updateOptions(re),(we=this.keyboardController)===null||we===void 0||we.updateOptions(re),this.view.updateOptions(re)}get options(){return this._options}splice(re,we,Ie=[]){if(re<0||re>this.view.length)throw new g(this.user,`Invalid start index: ${re}`);if(we<0)throw new g(this.user,`Invalid delete count: ${we}`);if(we===0&&Ie.length===0)return;this.eventBufferer.bufferEvents(()=>this.spliceable.splice(re,we,Ie))}rerender(){this.view.rerender()}element(re){return this.view.element(re)}get length(){return this.view.length}get contentHeight(){return this.view.contentHeight}get scrollTop(){return this.view.getScrollTop()}set scrollTop(re){this.view.setScrollTop(re)}get ariaLabel(){return this._ariaLabel}set ariaLabel(re){this._ariaLabel=re,this.view.domNode.setAttribute("aria-label",re)}domFocus(){this.view.domNode.focus({preventScroll:!0})}layout(re,we){this.view.layout(re,we)}setSelection(re,we){for(const Ie of re)if(Ie<0||Ie>=this.length)throw new g(this.user,`Invalid index ${Ie}`);this.selection.set(re,we)}getSelection(){return this.selection.get()}getSelectedElements(){return this.getSelection().map(re=>this.view.element(re))}setAnchor(re){if(typeof re=="undefined"){this.anchor.set([]);return}if(re<0||re>=this.length)throw new g(this.user,`Invalid index ${re}`);this.anchor.set([re])}getAnchor(){return Object(O.j)(this.anchor.get(),void 0)}getAnchorElement(){const re=this.getAnchor();return typeof re=="undefined"?void 0:this.element(re)}setFocus(re,we){for(const Ie of re)if(Ie<0||Ie>=this.length)throw new g(this.user,`Invalid index ${Ie}`);this.focus.set(re,we)}focusNext(re=1,we=!1,Ie,ge){if(this.length===0)return;const ye=this.focus.get(),ze=this.findNextIndex(ye.length>0?ye[0]+re:0,we,ge);ze>-1&&this.setFocus([ze],Ie)}focusPrevious(re=1,we=!1,Ie,ge){if(this.length===0)return;const ye=this.focus.get(),ze=this.findPreviousIndex(ye.length>0?ye[0]-re:0,we,ge);ze>-1&&this.setFocus([ze],Ie)}focusNextPage(re,we){return v(this,void 0,void 0,function*(){let Ie=this.view.indexAt(this.view.getScrollTop()+this.view.renderHeight);Ie=Ie===0?0:Ie-1;const ge=this.view.element(Ie),ye=this.getFocusedElements()[0];if(ye!==ge){const ze=this.findPreviousIndex(Ie,!1,we);ze>-1&&ye!==this.view.element(ze)?this.setFocus([ze],re):this.setFocus([Ie],re)}else{const ze=this.view.getScrollTop();this.view.setScrollTop(ze+this.view.renderHeight-this.view.elementHeight(Ie)),this.view.getScrollTop()!==ze&&(this.setFocus([]),yield Object(S.n)(0),yield this.focusNextPage(re,we))}})}focusPreviousPage(re,we){return v(this,void 0,void 0,function*(){let Ie;const ge=this.view.getScrollTop();ge===0?Ie=this.view.indexAt(ge):Ie=this.view.indexAfter(ge-1);const ye=this.view.element(Ie),ze=this.getFocusedElements()[0];if(ze!==ye){const xe=this.findNextIndex(Ie,!1,we);xe>-1&&ze!==this.view.element(xe)?this.setFocus([xe],re):this.setFocus([Ie],re)}else{const xe=ge;this.view.setScrollTop(ge-this.view.renderHeight),this.view.getScrollTop()!==xe&&(this.setFocus([]),yield Object(S.n)(0),yield this.focusPreviousPage(re,we))}})}focusLast(re,we){if(this.length===0)return;const Ie=this.findPreviousIndex(this.length-1,!1,we);Ie>-1&&this.setFocus([Ie],re)}focusFirst(re,we){this.focusNth(0,re,we)}focusNth(re,we,Ie){if(this.length===0)return;const ge=this.findNextIndex(re,!1,Ie);ge>-1&&this.setFocus([ge],we)}findNextIndex(re,we=!1,Ie){for(let ge=0;ge=this.length&&!we)return-1;if(re=re%this.length,!Ie||Ie(this.element(re)))return re;re++}return-1}findPreviousIndex(re,we=!1,Ie){for(let ge=0;gethis.view.element(re))}reveal(re,we){if(re<0||re>=this.length)throw new g(this.user,`Invalid index ${re}`);const Ie=this.view.getScrollTop(),ge=this.view.elementTop(re),ye=this.view.elementHeight(re);if(Object(c.j)(we)){const ze=ye-this.view.renderHeight;this.view.setScrollTop(ze*Object(n.b)(we,0,1)+ge)}else{const ze=ge+ye,xe=Ie+this.view.renderHeight;ge=xe||(ge=xe&&ye>=this.view.renderHeight?this.view.setScrollTop(ge):ze>=xe&&this.view.setScrollTop(ze-this.view.renderHeight))}}getRelativeTop(re){if(re<0||re>=this.length)throw new g(this.user,`Invalid index ${re}`);const we=this.view.getScrollTop(),Ie=this.view.elementTop(re),ge=this.view.elementHeight(re);if(Iewe+this.view.renderHeight)return null;const ye=ge-this.view.renderHeight;return Math.abs((we-Ie)/ye)}getHTMLElement(){return this.view.domNode}style(re){this.styleController.style(re)}toListEvent({indexes:re,browserEvent:we}){return{indexes:re,elements:re.map(Ie=>this.view.element(Ie)),browserEvent:we}}_onFocusChange(){const re=this.focus.get();this.view.domNode.classList.toggle("element-focused",re.length>0),this.onDidChangeActiveDescendant()}onDidChangeActiveDescendant(){var re;const we=this.focus.get();if(we.length>0){let Ie;((re=this.accessibilityProvider)===null||re===void 0?void 0:re.getActiveDescendantId)&&(Ie=this.accessibilityProvider.getActiveDescendantId(this.view.element(we[0]))),this.view.domNode.setAttribute("aria-activedescendant",Ie||this.view.getElementDomId(we[0]))}else this.view.domNode.removeAttribute("aria-activedescendant")}_onSelectionChange(){const re=this.selection.get();this.view.domNode.classList.toggle("selection-none",re.length===0),this.view.domNode.classList.toggle("selection-single",re.length===1),this.view.domNode.classList.toggle("selection-multiple",re.length>1)}dispose(){this._onDidDispose.fire(),this.disposables.dispose(),this._onDidDispose.dispose()}}C([u.a],ve.prototype,"onDidChangeFocus",null),C([u.a],ve.prototype,"onDidChangeSelection",null),C([u.a],ve.prototype,"onContextMenu",null),C([u.a],ve.prototype,"onKeyDown",null),C([u.a],ve.prototype,"onDidFocus",null)},d6R0:function(ft,w,e){"use strict";e.r(w),e.d(w,"CodeLensContribution",function(){return De});var h=e("EffR"),P=e("X+cX"),L=e("/cxE"),A=e("7afs"),I=e("pmY6"),k=e("vATl"),O=e("sswD"),S=e("/UlZ"),f=e("wQH0"),u=e("twdY"),d=e("al33"),E=e("JQT/"),p=e("746U"),n=e("bY76"),b=e("G2kB"),m=e("nnTU"),c=function(Ne,ve,re,we){function Ie(ge){return ge instanceof re?ge:new re(function(ye){ye(ge)})}return new(re||(re=Promise))(function(ge,ye){function ze(He){try{Te(we.next(He))}catch(st){ye(st)}}function xe(He){try{Te(we.throw(He))}catch(st){ye(st)}}function Te(He){He.done?ge(He.value):Ie(He.value).then(ze,xe)}Te((we=we.apply(Ne,ve||[])).next())})};class l{constructor(){this.lenses=[],this._disposables=new I.b}dispose(){this._disposables.dispose()}add(Ne,ve){this._disposables.add(Ne);for(const re of Ne.lenses)this.lenses.push({symbol:re,provider:ve})}}function g(Ne,ve){return c(this,void 0,void 0,function*(){const re=u.b.ordered(Ne),we=new Map,Ie=new l,ge=re.map((ye,ze)=>c(this,void 0,void 0,function*(){we.set(ye,ze);try{const xe=yield Promise.resolve(ye.provideCodeLenses(Ne,ve));xe&&Ie.add(xe,ye)}catch(xe){Object(L.g)(xe)}}));return yield Promise.all(ge),Ie.lenses=Ie.lenses.sort((ye,ze)=>ye.symbol.range.startLineNumberze.symbol.range.startLineNumber?1:we.get(ye.provider)we.get(ze.provider)?1:ye.symbol.range.startColumnze.symbol.range.startColumn?1:0),Ie})}m.a.registerCommand("_executeCodeLensProvider",function(Ne,...ve){let[re,we]=ve;Object(p.c)(n.a.isUri(re)),Object(p.c)(typeof we=="number"||!we);const Ie=Ne.get(b.a).getModel(re);if(!Ie)throw Object(L.c)();const ge=[],ye=new I.b;return g(Ie,E.a.None).then(ze=>{ye.add(ze);let xe=[];for(const Te of ze.lenses)we==null||Boolean(Te.symbol.command)?ge.push(Te.symbol):we-- >0&&Te.provider.resolveCodeLens&&xe.push(Promise.resolve(Te.provider.resolveCodeLens(Ie,Te.symbol,E.a.None)).then(He=>ge.push(He||Te.symbol)));return Promise.all(xe)}).then(()=>ge).finally(()=>{setTimeout(()=>ye.dispose(),100)})});var y=e("C/vA"),C=e("QDVR"),v=e("aokT"),D=e("9fML"),j=e("Cg/j"),V=e("A+jI"),G=function(Ne,ve,re,we){var Ie=arguments.length,ge=Ie<3?ve:we===null?we=Object.getOwnPropertyDescriptor(ve,re):we,ye;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ge=Reflect.decorate(Ne,ve,re,we);else for(var ze=Ne.length-1;ze>=0;ze--)(ye=Ne[ze])&&(ge=(Ie<3?ye(ge):Ie>3?ye(ve,re,ge):ye(ve,re))||ge);return Ie>3&&ge&&Object.defineProperty(ve,re,ge),ge},B=function(Ne,ve){return function(re,we){ve(re,we,Ne)}};const z=Object(j.c)("ICodeLensCache");class Y{constructor(Ne,ve){this.lineCount=Ne,this.data=ve}}let K=class{constructor(ve){this._fakeProvider=new class{provideCodeLenses(){throw new Error("not supported")}},this._cache=new C.a(20,.75);const re="codelens/cache";Object(P.m)(()=>ve.remove(re,1));const we="codelens/cache2",Ie=ve.get(we,1,"{}");this._deserialize(Ie),Object(y.a)(ve.onWillSaveState)(ge=>{ge.reason===V.c.SHUTDOWN&&ve.store(we,this._serialize(),1,1)})}put(ve,re){const we=re.lenses.map(ye=>{var ze;return{range:ye.symbol.range,command:ye.symbol.command&&{id:"",title:(ze=ye.symbol.command)===null||ze===void 0?void 0:ze.title}}}),Ie=new l;Ie.add({lenses:we,dispose:()=>{}},this._fakeProvider);const ge=new Y(ve.getLineCount(),Ie);this._cache.set(ve.uri.toString(),ge)}get(ve){const re=this._cache.get(ve.uri.toString());return re&&re.lineCount===ve.getLineCount()?re.data:void 0}delete(ve){this._cache.delete(ve.uri.toString())}_serialize(){const ve=Object.create(null);for(const[re,we]of this._cache){const Ie=new Set;for(const ge of we.data.lenses)Ie.add(ge.symbol.range.startLineNumber);ve[re]={lineCount:we.lineCount,lines:[...Ie.values()]}}return JSON.stringify(ve)}_deserialize(ve){try{const re=JSON.parse(ve);for(const we in re){const Ie=re[we],ge=[];for(const ze of Ie.lines)ge.push({range:new v.a(ze,1,ze,11)});const ye=new l;ye.add({lenses:ge,dispose(){}},this._fakeProvider),this._cache.set(we,new Y(Ie.lineCount,ye))}}catch(re){}}};K=G([B(0,V.a)],K),Object(D.b)(z,K);var Q=e("fdyd"),ee=e("RMfO"),Se=e("tX9W"),fe=e("kYye"),q=e("MD5Z"),te=e("t9D7");class U{constructor(Ne,ve,re){this.afterLineNumber=Ne,this.heightInPx=ve,this._onHeight=re,this.suppressMouseDown=!0,this.domNode=document.createElement("div")}onComputedHeight(Ne){this._lastHeight===void 0?this._lastHeight=Ne:this._lastHeight!==Ne&&(this._lastHeight=Ne,this._onHeight())}isVisible(){return this._lastHeight!==0&&this.domNode.hasAttribute("monaco-visible-view-zone")}}class H{constructor(Ne,ve,re){this.allowEditorOverflow=!1,this.suppressMouseDown=!0,this._commands=new Map,this._isEmpty=!0,this._editor=Ne,this._id=`codelens.widget-${H._idPool++}`,this.updatePosition(re),this._domNode=document.createElement("span"),this._domNode.className=`codelens-decoration ${ve}`}withCommands(Ne,ve){this._commands.clear();let re=[],we=!1;for(let Ie=0;Ie{Te.symbol.command&&xe.push(Te.symbol),we.addDecoration({range:Te.symbol.range,options:Se.b.EMPTY},st=>this._decorationIds[He]=st),ze?ze=v.a.plusRange(ze,Te.symbol.range):ze=v.a.lift(Te.symbol.range)}),this._viewZone=new U(ze.startLineNumber-1,ge,ye),this._viewZoneId=Ie.addZone(this._viewZone),xe.length>0&&(this._createContentWidgetIfNecessary(),this._contentWidget.withCommands(xe,!1))}_createContentWidgetIfNecessary(){this._contentWidget?this._editor.layoutContentWidget(this._contentWidget):(this._contentWidget=new H(this._editor,this._className,this._viewZone.afterLineNumber+1),this._editor.addContentWidget(this._contentWidget))}dispose(Ne,ve){this._decorationIds.forEach(Ne.removeDecoration,Ne),this._decorationIds=[],ve&&ve.removeZone(this._viewZoneId),this._contentWidget&&(this._editor.removeContentWidget(this._contentWidget),this._contentWidget=void 0),this._isDisposed=!0}isDisposed(){return this._isDisposed}isValid(){return this._decorationIds.some((Ne,ve)=>{const re=this._editor.getModel().getDecorationRange(Ne),we=this._data[ve].symbol;return!!(re&&v.a.isEmpty(we.range)===re.isEmpty())})}updateCodeLensSymbols(Ne,ve){this._decorationIds.forEach(ve.removeDecoration,ve),this._decorationIds=[],this._data=Ne,this._data.forEach((re,we)=>{ve.addDecoration({range:re.symbol.range,options:Se.b.EMPTY},Ie=>this._decorationIds[we]=Ie)})}updateHeight(Ne,ve){this._viewZone.heightInPx=Ne,ve.layoutZone(this._viewZoneId),this._contentWidget&&this._editor.layoutContentWidget(this._contentWidget)}computeIfNecessary(Ne){if(!this._viewZone.isVisible())return null;for(let ve=0;ve{const re=Ne.getColor(fe.x);re&&(ve.addRule(`.monaco-editor .codelens-decoration { color: ${re}; }`),ve.addRule(`.monaco-editor .codelens-decoration .codicon { color: ${re}; }`));const we=Ne.getColor(q.q);we&&(ve.addRule(`.monaco-editor .codelens-decoration > a:hover { color: ${we} !important; }`),ve.addRule(`.monaco-editor .codelens-decoration > a:hover .codicon { color: ${we} !important; }`))});var Ce=e("3/fG"),Le=e("sM1p"),ce=e("Zr1c"),me=function(Ne,ve,re,we){var Ie=arguments.length,ge=Ie<3?ve:we===null?we=Object.getOwnPropertyDescriptor(ve,re):we,ye;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")ge=Reflect.decorate(Ne,ve,re,we);else for(var ze=Ne.length-1;ze>=0;ze--)(ye=Ne[ze])&&(ge=(Ie<3?ye(ge):Ie>3?ye(ve,re,ge):ye(ve,re))||ge);return Ie>3&&ge&&Object.defineProperty(ve,re,ge),ge},Oe=function(Ne,ve){return function(re,we){ve(re,we,Ne)}},oe=function(Ne,ve,re,we){function Ie(ge){return ge instanceof re?ge:new re(function(ye){ye(ge)})}return new(re||(re=Promise))(function(ge,ye){function ze(He){try{Te(we.next(He))}catch(st){ye(st)}}function xe(He){try{Te(we.throw(He))}catch(st){ye(st)}}function Te(He){He.done?ge(He.value):Ie(He.value).then(ze,xe)}Te((we=we.apply(Ne,ve||[])).next())})};let De=class{constructor(ve,re,we,Ie){this._editor=ve,this._commandService=re,this._notificationService=we,this._codeLensCache=Ie,this._disposables=new I.b,this._localToDispose=new I.b,this._lenses=[],this._getCodeLensModelDelays=new d.b(u.b,250,2500),this._oldCodeLensModels=new I.b,this._resolveCodeLensesDelays=new d.b(u.b,250,2500),this._resolveCodeLensesScheduler=new P.e(()=>this._resolveCodeLensesInViewport(),this._resolveCodeLensesDelays.min),this._disposables.add(this._editor.onDidChangeModel(()=>this._onModelChange())),this._disposables.add(this._editor.onDidChangeModelLanguage(()=>this._onModelChange())),this._disposables.add(this._editor.onDidChangeConfiguration(ge=>{(ge.hasChanged(43)||ge.hasChanged(16)||ge.hasChanged(15))&&this._updateLensStyle(),ge.hasChanged(14)&&this._onModelChange()})),this._disposables.add(u.b.onDidChange(this._onModelChange,this)),this._onModelChange(),this._styleClassName="_"+Object(A.c)(this._editor.getId()).toString(16),this._styleElement=h.w(h.O(this._editor.getContainerDomNode())?this._editor.getContainerDomNode():void 0),this._updateLensStyle()}dispose(){var ve;this._localDispose(),this._disposables.dispose(),this._oldCodeLensModels.dispose(),(ve=this._currentCodeLensModel)===null||ve===void 0||ve.dispose(),this._styleElement.remove()}_getLayoutInfo(){let ve=this._editor.getOption(16),re;return!ve||ve<5?(ve=this._editor.getOption(45)*.9|0,re=this._editor.getOption(58)):re=ve*Math.max(1.3,this._editor.getOption(58)/this._editor.getOption(45))|0,{codeLensHeight:re,fontSize:ve}}_updateLensStyle(){const{codeLensHeight:ve,fontSize:re}=this._getLayoutInfo(),we=this._editor.getOption(15),Ie=this._editor.getOption(43),ge=`--codelens-font-family${this._styleClassName}`,ye=`--codelens-font-features${this._styleClassName}`;let ze=` .monaco-editor .codelens-decoration.${this._styleClassName} { line-height: ${ve}px; font-size: ${re}px; padding-right: ${Math.round(re*.5)}px; font-feature-settings: var(${ye}) } .monaco-editor .codelens-decoration.${this._styleClassName} span.codicon { line-height: ${ve}px; font-size: ${re}px; } `;we&&(ze+=`.monaco-editor .codelens-decoration.${this._styleClassName} { font-family: var(${ge}), ${S.c.fontFamily}}`),this._styleElement.textContent=ze,this._editor.getContainerDomNode().style.setProperty(ge,we!=null?we:"inherit"),this._editor.getContainerDomNode().style.setProperty(ye,Ie.fontFeatureSettings),this._editor.changeViewZones(xe=>{for(let Te of this._lenses)Te.updateHeight(ve,xe)})}_localDispose(){var ve,re,we;(ve=this._getCodeLensModelPromise)===null||ve===void 0||ve.cancel(),this._getCodeLensModelPromise=void 0,(re=this._resolveCodeLensesPromise)===null||re===void 0||re.cancel(),this._resolveCodeLensesPromise=void 0,this._localToDispose.clear(),this._oldCodeLensModels.clear(),(we=this._currentCodeLensModel)===null||we===void 0||we.dispose()}_onModelChange(){this._localDispose();const ve=this._editor.getModel();if(!ve)return;if(!this._editor.getOption(14))return;const re=this._codeLensCache.get(ve);if(re&&this._renderCodeLensSymbols(re),!u.b.has(ve)){re&&this._localToDispose.add(Object(P.i)(()=>{const Ie=this._codeLensCache.get(ve);re===Ie&&(this._codeLensCache.delete(ve),this._onModelChange())},30*1e3));return}for(const Ie of u.b.all(ve))if(typeof Ie.onDidChange=="function"){let ge=Ie.onDidChange(()=>we.schedule());this._localToDispose.add(ge)}const we=new P.e(()=>{var Ie;const ge=Date.now();(Ie=this._getCodeLensModelPromise)===null||Ie===void 0||Ie.cancel(),this._getCodeLensModelPromise=Object(P.h)(ye=>g(ve,ye)),this._getCodeLensModelPromise.then(ye=>{this._currentCodeLensModel&&this._oldCodeLensModels.add(this._currentCodeLensModel),this._currentCodeLensModel=ye,this._codeLensCache.put(ve,ye);const ze=this._getCodeLensModelDelays.update(ve,Date.now()-ge);we.delay=ze,this._renderCodeLensSymbols(ye),this._resolveCodeLensesInViewportSoon()},L.f)},this._getCodeLensModelDelays.get(ve));this._localToDispose.add(we),this._localToDispose.add(Object(I.i)(()=>this._resolveCodeLensesScheduler.cancel())),this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._editor.changeDecorations(Ie=>{this._editor.changeViewZones(ge=>{let ye=[],ze=-1;this._lenses.forEach(Te=>{!Te.isValid()||ze===Te.getLineNumber()?ye.push(Te):(Te.update(ge),ze=Te.getLineNumber())});let xe=new W;ye.forEach(Te=>{Te.dispose(xe,ge),this._lenses.splice(this._lenses.indexOf(Te),1)}),xe.commit(Ie)})}),we.schedule()})),this._localToDispose.add(this._editor.onDidFocusEditorWidget(()=>{we.schedule()})),this._localToDispose.add(this._editor.onDidScrollChange(Ie=>{Ie.scrollTopChanged&&this._lenses.length>0&&this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(this._editor.onDidLayoutChange(()=>{this._resolveCodeLensesInViewportSoon()})),this._localToDispose.add(Object(I.i)(()=>{if(this._editor.getModel()){const Ie=k.c.capture(this._editor);this._editor.changeDecorations(ge=>{this._editor.changeViewZones(ye=>{this._disposeAllLenses(ge,ye)})}),Ie.restore(this._editor)}else this._disposeAllLenses(void 0,void 0)})),this._localToDispose.add(this._editor.onMouseDown(Ie=>{if(Ie.target.type!==9)return;let ge=Ie.target.element;if((ge==null?void 0:ge.tagName)==="SPAN"&&(ge=ge.parentElement),(ge==null?void 0:ge.tagName)==="A")for(const ye of this._lenses){let ze=ye.getCommand(ge);if(ze){this._commandService.executeCommand(ze.id,...ze.arguments||[]).catch(xe=>this._notificationService.error(xe));break}}})),we.schedule()}_disposeAllLenses(ve,re){const we=new W;for(const Ie of this._lenses)Ie.dispose(we,re);ve&&we.commit(ve),this._lenses.length=0}_renderCodeLensSymbols(ve){if(!this._editor.hasModel())return;let re=this._editor.getModel().getLineCount(),we=[],Ie;for(let ze of ve.lenses){let xe=ze.symbol.range.startLineNumber;if(xe<1||xe>re)continue;Ie&&Ie[Ie.length-1].symbol.range.startLineNumber===xe?Ie.push(ze):(Ie=[ze],we.push(Ie))}const ge=k.c.capture(this._editor),ye=this._getLayoutInfo();this._editor.changeDecorations(ze=>{this._editor.changeViewZones(xe=>{const Te=new W;let He=0,st=0;for(;stthis._resolveCodeLensesInViewportSoon())),He++,st++)}for(;Hethis._resolveCodeLensesInViewportSoon())),st++;Te.commit(ze)})}),ge.restore(this._editor)}_resolveCodeLensesInViewportSoon(){const ve=this._editor.getModel();ve&&this._resolveCodeLensesScheduler.schedule()}_resolveCodeLensesInViewport(){var ve;(ve=this._resolveCodeLensesPromise)===null||ve===void 0||ve.cancel(),this._resolveCodeLensesPromise=void 0;const re=this._editor.getModel();if(!re)return;const we=[],Ie=[];if(this._lenses.forEach(ze=>{const xe=ze.computeIfNecessary(re);xe&&(we.push(xe),Ie.push(ze))}),we.length===0)return;const ge=Date.now(),ye=Object(P.h)(ze=>{const xe=we.map((Te,He)=>{const st=new Array(Te.length),nt=Te.map((rt,wt)=>!rt.symbol.command&&typeof rt.provider.resolveCodeLens=="function"?Promise.resolve(rt.provider.resolveCodeLens(re,rt.symbol,ze)).then(Pt=>{st[wt]=Pt},L.g):(st[wt]=rt.symbol,Promise.resolve(void 0)));return Promise.all(nt).then(()=>{!ze.isCancellationRequested&&!Ie[He].isDisposed()&&Ie[He].updateCommands(st)})});return Promise.all(xe)});this._resolveCodeLensesPromise=ye,this._resolveCodeLensesPromise.then(()=>{const ze=this._resolveCodeLensesDelays.update(re,Date.now()-ge);this._resolveCodeLensesScheduler.delay=ze,this._currentCodeLensModel&&this._codeLensCache.put(re,this._currentCodeLensModel),this._oldCodeLensModels.clear(),ye===this._resolveCodeLensesPromise&&(this._resolveCodeLensesPromise=void 0)},ze=>{Object(L.f)(ze),ye===this._resolveCodeLensesPromise&&(this._resolveCodeLensesPromise=void 0)})}getLenses(){return this._lenses}};De.ID="css.editor.codeLens",De=me([Oe(1,m.b),Oe(2,Le.a),Oe(3,z)],De),Object(O.l)(De.ID,De),Object(O.j)(class extends O.b{constructor(){super({id:"codelens.showLensesInCurrentLine",precondition:f.a.hasCodeLensProvider,label:Object(Ce.a)("showLensOnLine","Show CodeLens Commands For Current Line"),alias:"Show CodeLens Commands For Current Line"})}run(ve,re){return oe(this,void 0,void 0,function*(){if(!re.hasModel())return;const we=ve.get(ce.a),Ie=ve.get(m.b),ge=ve.get(Le.a),ye=re.getSelection().positionLineNumber,ze=re.getContribution(De.ID),xe=[];for(let He of ze.getLenses())if(He.getLineNumber()===ye)for(let st of He.getItems()){const{command:nt}=st.symbol;nt&&xe.push({label:nt.title,command:nt})}if(xe.length===0)return;const Te=yield we.pick(xe,{canPickMany:!1});if(!Te)return;try{yield Ie.executeCommand(Te.command.id,...Te.command.arguments||[])}catch(He){ge.error(He)}})}})},dBaI:function(ft,w,e){"use strict";e.d(w,"a",function(){return P}),e.d(w,"b",function(){return I});var h=e("N0LK");class P{constructor(k,O,S,f){this.startColumn=k,this.endColumn=O,this.className=S,this.type=f,this._lineDecorationBrand=void 0}static _equals(k,O){return k.startColumn===O.startColumn&&k.endColumn===O.endColumn&&k.className===O.className&&k.type===O.type}static equalsArr(k,O){const S=k.length,f=O.length;if(S!==f)return!1;for(let u=0;u=u)continue;E[p++]=new P(Math.max(1,n.startColumn-f+1),Math.min(d+1,n.endColumn-f+1),n.className,n.type)}return E}static filter(k,O,S,f){if(k.length===0)return[];let u=[],d=0;for(let E=0,p=k.length;EO)continue;if(b.isEmpty()&&(n.type===0||n.type===3))continue;const m=b.startLineNumber===O?b.startColumn:S,c=b.endLineNumber===O?b.endColumn:f;u[d++]=new P(m,c,n.inlineClassName,n.type)}return u}static _typeCompare(k,O){const S=[2,0,1,3];return S[k]-S[O]}static compare(k,O){if(k.startColumn!==O.startColumn)return k.startColumn-O.startColumn;if(k.endColumn!==O.endColumn)return k.endColumn-O.endColumn;const S=P._typeCompare(k.type,O.type);return S!==0?S:k.className!==O.className?k.className0&&this.stopOffsets[0]0&&O=k){this.stopOffsets.splice(f,0,k),this.classNames.splice(f,0,O),this.metadata.splice(f,0,S);break}this.count++;return}}class I{static normalize(k,O){if(O.length===0)return[];let S=[];const f=new A;let u=0;for(let d=0,E=O.length;d1){const y=k.charCodeAt(n-2);h.E(y)&&n--}if(b>1){const y=k.charCodeAt(b-2);h.E(y)&&b--}const l=n-1,g=b-2;u=f.consumeLowerThan(l,u,S),f.count===0&&(u=l),f.insert(g,m,c)}return f.consumeLowerThan(1073741824,u,S),S}}},dFcq:function(ft,w,e){},"dH+W":function(ft,w,e){"use strict";e.r(w),e.d(w,"DuplicateSelectionAction",function(){return z}),e.d(w,"AbstractSortLinesAction",function(){return ee}),e.d(w,"SortLinesAscendingAction",function(){return Se}),e.d(w,"SortLinesDescendingAction",function(){return fe}),e.d(w,"DeleteDuplicateLinesAction",function(){return q}),e.d(w,"TrimTrailingWhitespaceAction",function(){return te}),e.d(w,"DeleteLinesAction",function(){return U}),e.d(w,"IndentLinesAction",function(){return H}),e.d(w,"InsertLineBeforeAction",function(){return ne}),e.d(w,"InsertLineAfterAction",function(){return Ce}),e.d(w,"AbstractDeleteAllToBoundaryAction",function(){return Le}),e.d(w,"DeleteAllLeftAction",function(){return ce}),e.d(w,"DeleteAllRightAction",function(){return me}),e.d(w,"JoinLinesAction",function(){return Oe}),e.d(w,"TransposeAction",function(){return oe}),e.d(w,"AbstractCaseAction",function(){return De}),e.d(w,"UpperCaseAction",function(){return Ne}),e.d(w,"LowerCaseAction",function(){return ve}),e.d(w,"TitleCaseAction",function(){return we}),e.d(w,"SnakeCaseAction",function(){return Ie});var h=e("/kV6"),P=e("1YUG"),L=e("sswD"),A=e("LCkn"),I=e("N0LK"),k=e("0/Sa"),O=e("aokT");class S{constructor(ge,ye){this._selection=ge,this._cursors=ye,this._selectionId=null}getEditOperations(ge,ye){let ze=f(ge,this._cursors);for(let xe=0,Te=ze.length;xest.lineNumber===nt.lineNumber?st.column-nt.column:st.lineNumber-nt.lineNumber);for(let st=ye.length-2;st>=0;st--)ye[st].lineNumber===ye[st+1].lineNumber&&ye.splice(st,1);let ze=[],xe=0,Te=0,He=ye.length;for(let st=1,nt=ge.getLineCount();st<=nt;st++){let rt=ge.getLineContent(st),wt=rt.length+1,Pt=0;if(Tege.getLineTokens(wt),getLanguageId:()=>ge.getLanguageId(),getLanguageIdAtPosition:(wt,Pt)=>ge.getLanguageIdAtPosition(wt,Pt),getLineContent:null};if(xe.startLineNumber===xe.endLineNumber&&ge.getLineMaxColumn(xe.startLineNumber)===1){let wt=xe.startLineNumber,Pt=this._isMovingDown?wt+1:wt-1;ge.getLineMaxColumn(Pt)===1?ye.addEditOperation(new O.a(1,1,1,1),null):(ye.addEditOperation(new O.a(wt,1,wt,1),ge.getLineContent(Pt)),ye.addEditOperation(new O.a(Pt,1,Pt,ge.getLineMaxColumn(Pt)),null)),xe=new E.a(Pt,1,Pt,1)}else{let wt,Pt;if(this._isMovingDown){wt=xe.endLineNumber+1,Pt=ge.getLineContent(wt),ye.addEditOperation(new O.a(wt-1,ge.getLineMaxColumn(wt-1),wt,ge.getLineMaxColumn(wt)),null);let no=Pt;if(this.shouldAutoIndent(ge,xe)){let ht=this.matchEnterRule(ge,nt,Te,wt,xe.startLineNumber-1);if(ht!==null){let le=I.x(ge.getLineContent(wt)),Pe=ht+l.b(le,Te),it=l.a(Pe,Te,st);no=it+this.trimLeft(Pt)}else{rt.getLineContent=Pe=>Pe===xe.startLineNumber?ge.getLineContent(wt):ge.getLineContent(Pe);let le=c.b.getGoodIndentForLine(this._autoIndent,rt,ge.getLanguageIdAtPosition(wt,1),xe.startLineNumber,nt);if(le!==null){let Pe=I.x(ge.getLineContent(wt)),it=l.b(le,Te),Dt=l.b(Pe,Te);if(it!==Dt){let kt=l.a(it,Te,st);no=kt+this.trimLeft(Pt)}}}ye.addEditOperation(new O.a(xe.startLineNumber,1,xe.startLineNumber,1),no+` `);let lt=this.matchEnterRuleMovingDown(ge,nt,Te,xe.startLineNumber,wt,no);if(lt!==null)lt!==0&&this.getIndentEditsOfMovingBlock(ge,ye,xe,Te,st,lt);else{rt.getLineContent=Pe=>Pe===xe.startLineNumber?no:Pe>=xe.startLineNumber+1&&Pe<=xe.endLineNumber+1?ge.getLineContent(Pe-1):ge.getLineContent(Pe);let le=c.b.getGoodIndentForLine(this._autoIndent,rt,ge.getLanguageIdAtPosition(wt,1),xe.startLineNumber+1,nt);if(le!==null){const Pe=I.x(ge.getLineContent(xe.startLineNumber)),it=l.b(le,Te),Dt=l.b(Pe,Te);if(it!==Dt){const kt=it-Dt;this.getIndentEditsOfMovingBlock(ge,ye,xe,Te,st,kt)}}}}else ye.addEditOperation(new O.a(xe.startLineNumber,1,xe.startLineNumber,1),no+` `)}else if(wt=xe.startLineNumber-1,Pt=ge.getLineContent(wt),ye.addEditOperation(new O.a(wt,1,wt+1,1),null),ye.addEditOperation(new O.a(xe.endLineNumber,ge.getLineMaxColumn(xe.endLineNumber),xe.endLineNumber,ge.getLineMaxColumn(xe.endLineNumber)),` `+Pt),this.shouldAutoIndent(ge,xe)){rt.getLineContent=ht=>ht===wt?ge.getLineContent(xe.startLineNumber):ge.getLineContent(ht);let no=this.matchEnterRule(ge,nt,Te,xe.startLineNumber,xe.startLineNumber-2);if(no!==null)no!==0&&this.getIndentEditsOfMovingBlock(ge,ye,xe,Te,st,no);else{let ht=c.b.getGoodIndentForLine(this._autoIndent,rt,ge.getLanguageIdAtPosition(xe.startLineNumber,1),wt,nt);if(ht!==null){let lt=I.x(ge.getLineContent(xe.startLineNumber)),le=l.b(ht,Te),Pe=l.b(lt,Te);if(le!==Pe){let it=le-Pe;this.getIndentEditsOfMovingBlock(ge,ye,xe,Te,st,it)}}}}}this._selectionId=ye.trackSelection(xe)}buildIndentConverter(ge,ye,ze){return{shiftIndent:xe=>b.a.shiftIndent(xe,xe.length+1,ge,ye,ze),unshiftIndent:xe=>b.a.unshiftIndent(xe,xe.length+1,ge,ye,ze)}}parseEnterResult(ge,ye,ze,xe,Te){if(Te){let He=Te.indentation;Te.indentAction===m.b.None||Te.indentAction===m.b.Indent?He=Te.indentation+Te.appendText:Te.indentAction===m.b.IndentOutdent?He=Te.indentation:Te.indentAction===m.b.Outdent&&(He=ye.unshiftIndent(Te.indentation)+Te.appendText);let st=ge.getLineContent(xe);if(this.trimLeft(st).indexOf(this.trimLeft(He))>=0){let nt=I.x(ge.getLineContent(xe)),rt=I.x(He),wt=c.b.getIndentMetadata(ge,xe);wt!==null&&wt&2&&(rt=ye.unshiftIndent(rt));let Pt=l.b(rt,ze),no=l.b(nt,ze);return Pt-no}}return null}matchEnterRuleMovingDown(ge,ye,ze,xe,Te,He){if(I.I(He)>=0){let st=ge.getLineMaxColumn(Te),nt=c.b.getEnterAction(this._autoIndent,ge,new O.a(Te,st,Te,st));return this.parseEnterResult(ge,ye,ze,xe,nt)}else{let st=xe-1;for(;st>=1;){let wt=ge.getLineContent(st),Pt=I.I(wt);if(Pt>=0)break;st--}if(st<1||xe>ge.getLineCount())return null;let nt=ge.getLineMaxColumn(st),rt=c.b.getEnterAction(this._autoIndent,ge,new O.a(st,nt,st,nt));return this.parseEnterResult(ge,ye,ze,xe,rt)}}matchEnterRule(ge,ye,ze,xe,Te,He){let st=Te;for(;st>=1;){let wt;st===Te&&He!==void 0?wt=He:wt=ge.getLineContent(st);let Pt=I.I(wt);if(Pt>=0)break;st--}if(st<1||xe>ge.getLineCount())return null;let nt=ge.getLineMaxColumn(st),rt=c.b.getEnterAction(this._autoIndent,ge,new O.a(st,nt,st,nt));return this.parseEnterResult(ge,ye,ze,xe,rt)}trimLeft(ge){return ge.replace(/^\s+/,"")}shouldAutoIndent(ge,ye){if(this._autoIndent<4)return!1;if(!ge.isCheapToTokenize(ye.startLineNumber))return!1;let ze=ge.getLanguageIdAtPosition(ye.startLineNumber,1),xe=ge.getLanguageIdAtPosition(ye.endLineNumber,1);return ze!==xe?!1:!(c.b.getIndentRulesSupport(ze)===null)}getIndentEditsOfMovingBlock(ge,ye,ze,xe,Te,He){for(let st=ze.startLineNumber;st<=ze.endLineNumber;st++){let nt=ge.getLineContent(st),rt=I.x(nt),wt=l.b(rt,xe),Pt=wt+He,no=l.a(Pt,xe,Te);no!==rt&&(ye.addEditOperation(new O.a(st,1,st,rt.length+1),no),st===ze.endLineNumber&&ze.endColumn<=rt.length+1&&no===""&&(this._moveEndLineSelectionShrink=!0))}}computeCursorState(ge,ye){let ze=ye.getTrackedSelection(this._selectionId);return this._moveEndPositionDown&&(ze=ze.setEndPosition(ze.endLineNumber+1,1)),this._moveEndLineSelectionShrink&&ze.startLineNumber=Te)return null;let He=[];for(let nt=xe;nt<=Te;nt++)He.push(ge.getLineContent(nt));let st=He.slice(0);return st.sort(y.getCollator().compare),ze===!0&&(st=st.reverse()),{startLineNumber:xe,endLineNumber:Te,before:He,after:st}}function v(ge,ye,ze){let xe=C(ge,ye,ze);return xe?k.a.replace(new O.a(xe.startLineNumber,1,xe.endLineNumber,ge.getLineMaxColumn(xe.endLineNumber)),xe.after.join(` `)):null}var D=e("3/fG"),j=e("fjLI");class V extends L.b{constructor(ge,ye){super(ye);this.down=ge}run(ge,ye){if(!ye.hasModel())return;const ze=ye.getSelections().map((He,st)=>({selection:He,index:st,ignore:!1}));ze.sort((He,st)=>O.a.compareRangesUsingStarts(He.selection,st.selection));let xe=ze[0];for(let He=1;Henew d.a(st.positionLineNumber,st.positionColumn)));let Te=ye.getSelection();if(Te===null)return;let He=new S(Te,xe);ye.pushUndoStop(),ye.executeCommands(this.id,[He]),ye.pushUndoStop()}}te.ID="editor.action.trimTrailingWhitespace";class U extends L.b{constructor(){super({id:"editor.action.deleteLines",label:D.a("lines.delete","Delete Line"),alias:"Delete Line",precondition:p.a.writable,kbOpts:{kbExpr:p.a.textInputFocus,primary:2048|1024|41,weight:100}})}run(ge,ye){if(!ye.hasModel())return;let ze=this._getLinesToRemove(ye),xe=ye.getModel();if(xe.getLineCount()===1&&xe.getLineMaxColumn(1)===1)return;let Te=0,He=[],st=[];for(let nt=0,rt=ze.length;nt1&&(Pt-=1,ht=xe.getLineMaxColumn(Pt)),He.push(k.a.replace(new E.a(Pt,ht,no,lt),"")),st.push(new E.a(Pt-Te,wt.positionColumn,Pt-Te,wt.positionColumn)),Te+=wt.endLineNumber-wt.startLineNumber+1}ye.pushUndoStop(),ye.executeEdits(this.id,He,st),ye.pushUndoStop()}_getLinesToRemove(ge){let ye=ge.getSelections().map(Te=>{let He=Te.endLineNumber;return Te.startLineNumberTe.startLineNumber===He.startLineNumber?Te.endLineNumber-He.endLineNumber:Te.startLineNumber-He.startLineNumber);let ze=[],xe=ye[0];for(let Te=1;Te=ye[Te].startLineNumber?xe.endLineNumber=ye[Te].endLineNumber:(ze.push(xe),xe=ye[Te]);return ze.push(xe),ze}}class H extends L.b{constructor(){super({id:"editor.action.indentLines",label:D.a("lines.indent","Indent Line"),alias:"Indent Line",precondition:p.a.writable,kbOpts:{kbExpr:p.a.editorTextFocus,primary:2048|89,weight:100}})}run(ge,ye){const ze=ye._getViewModel();if(!ze)return;ye.pushUndoStop(),ye.executeCommands(this.id,u.a.indent(ze.cursorConfig,ye.getModel(),ye.getSelections())),ye.pushUndoStop()}}class W extends L.b{constructor(){super({id:"editor.action.outdentLines",label:D.a("lines.outdent","Outdent Line"),alias:"Outdent Line",precondition:p.a.writable,kbOpts:{kbExpr:p.a.editorTextFocus,primary:2048|87,weight:100}})}run(ge,ye){P.CoreEditingCommands.Outdent.runEditorCommand(ge,ye,null)}}class ne extends L.b{constructor(){super({id:"editor.action.insertLineBefore",label:D.a("lines.insertBefore","Insert Line Above"),alias:"Insert Line Above",precondition:p.a.writable,kbOpts:{kbExpr:p.a.editorTextFocus,primary:2048|1024|3,weight:100}})}run(ge,ye){const ze=ye._getViewModel();if(!ze)return;ye.pushUndoStop(),ye.executeCommands(this.id,u.a.lineInsertBefore(ze.cursorConfig,ye.getModel(),ye.getSelections()))}}class Ce extends L.b{constructor(){super({id:"editor.action.insertLineAfter",label:D.a("lines.insertAfter","Insert Line Below"),alias:"Insert Line Below",precondition:p.a.writable,kbOpts:{kbExpr:p.a.editorTextFocus,primary:2048|3,weight:100}})}run(ge,ye){const ze=ye._getViewModel();if(!ze)return;ye.pushUndoStop(),ye.executeCommands(this.id,u.a.lineInsertAfter(ze.cursorConfig,ye.getModel(),ye.getSelections()))}}class Le extends L.b{run(ge,ye){if(!ye.hasModel())return;const ze=ye.getSelection();let xe=this._getRangesToDelete(ye),Te=[];for(let nt=0,rt=xe.length-1;ntk.a.replace(nt,""));ye.pushUndoStop(),ye.executeEdits(this.id,st,He),ye.pushUndoStop()}}class ce extends Le{constructor(){super({id:"deleteAllLeft",label:D.a("lines.deleteAllLeft","Delete All Left"),alias:"Delete All Left",precondition:p.a.writable,kbOpts:{kbExpr:p.a.textInputFocus,primary:0,mac:{primary:2048|1},weight:100}})}_getEndCursorState(ge,ye){let ze=null,xe=[],Te=0;return ye.forEach(He=>{let st;if(He.endColumn===1&&Te>0){let nt=He.startLineNumber-Te;st=new E.a(nt,He.startColumn,nt,He.startColumn)}else st=new E.a(He.startLineNumber,He.startColumn,He.startLineNumber,He.startColumn);Te+=He.endLineNumber-He.startLineNumber,He.intersectRanges(ge)?ze=st:xe.push(st)}),ze&&xe.unshift(ze),xe}_getRangesToDelete(ge){let ye=ge.getSelections();if(ye===null)return[];let ze=ye,xe=ge.getModel();return xe===null?[]:(ze.sort(O.a.compareRangesUsingStarts),ze=ze.map(Te=>{if(Te.isEmpty())if(Te.startColumn===1){let He=Math.max(1,Te.startLineNumber-1),st=Te.startLineNumber===1?1:xe.getLineContent(He).length+1;return new O.a(He,st,Te.startLineNumber,1)}else return new O.a(Te.startLineNumber,1,Te.startLineNumber,Te.startColumn);else return new O.a(Te.startLineNumber,1,Te.endLineNumber,Te.endColumn)}),ze)}}class me extends Le{constructor(){super({id:"deleteAllRight",label:D.a("lines.deleteAllRight","Delete All Right"),alias:"Delete All Right",precondition:p.a.writable,kbOpts:{kbExpr:p.a.textInputFocus,primary:0,mac:{primary:256|41,secondary:[2048|20]},weight:100}})}_getEndCursorState(ge,ye){let ze=null,xe=[];for(let Te=0,He=ye.length,st=0;Te{if(Te.isEmpty()){const He=ye.getLineMaxColumn(Te.startLineNumber);return Te.startColumn===He?new O.a(Te.startLineNumber,Te.startColumn,Te.startLineNumber+1,1):new O.a(Te.startLineNumber,Te.startColumn,Te.startLineNumber,He)}return Te});return xe.sort(O.a.compareRangesUsingStarts),xe}}class Oe extends L.b{constructor(){super({id:"editor.action.joinLines",label:D.a("lines.joinLines","Join Lines"),alias:"Join Lines",precondition:p.a.writable,kbOpts:{kbExpr:p.a.editorTextFocus,primary:0,mac:{primary:256|40},weight:100}})}run(ge,ye){let ze=ye.getSelections();if(ze===null)return;let xe=ye.getSelection();if(xe===null)return;ze.sort(O.a.compareRangesUsingStarts);let Te=[],He=ze.reduce((no,ht)=>no.isEmpty()?no.endLineNumber===ht.startLineNumber?(xe.equalsSelection(no)&&(xe=ht),ht):ht.startLineNumber>no.endLineNumber+1?(Te.push(no),ht):new E.a(no.startLineNumber,no.startColumn,ht.endLineNumber,ht.endColumn):ht.startLineNumber>no.endLineNumber?(Te.push(no),ht):new E.a(no.startLineNumber,no.startColumn,ht.endLineNumber,ht.endColumn));Te.push(He);let st=ye.getModel();if(st===null)return;let nt=[],rt=[],wt=xe,Pt=0;for(let no=0,ht=Te.length;no=1){let _o=!0;bo===""&&(_o=!1),_o&&(bo.charAt(bo.length-1)===" "||bo.charAt(bo.length-1)===" ")&&(_o=!1,bo=bo.replace(/[\s\uFEFF\xA0]+$/g," "));let to=Lo.substr(xo-1);bo+=(_o?" ":"")+to,_o?it=to.length+1:it=to.length}else it=0}let ao=new O.a(le,Pe,Dt,kt);if(!ao.isEmpty()){let So;lt.isEmpty()?(nt.push(k.a.replace(ao,bo)),So=new E.a(ao.startLineNumber-Pt,bo.length-it+1,le-Pt,bo.length-it+1)):lt.startLineNumber===lt.endLineNumber?(nt.push(k.a.replace(ao,bo)),So=new E.a(lt.startLineNumber-Pt,lt.startColumn,lt.endLineNumber-Pt,lt.endColumn)):(nt.push(k.a.replace(ao,bo)),So=new E.a(lt.startLineNumber-Pt,lt.startColumn,lt.startLineNumber-Pt,bo.length-eo)),O.a.intersectRanges(ao,xe)!==null?wt=So:rt.push(So)}Pt+=ao.endLineNumber-ao.startLineNumber}rt.unshift(wt),ye.pushUndoStop(),ye.executeEdits(this.id,nt,rt),ye.pushUndoStop()}}class oe extends L.b{constructor(){super({id:"editor.action.transpose",label:D.a("editor.transpose","Transpose characters around the cursor"),alias:"Transpose characters around the cursor",precondition:p.a.writable})}run(ge,ye){let ze=ye.getSelections();if(ze===null)return;let xe=ye.getModel();if(xe===null)return;let Te=[];for(let He=0,st=ze.length;He=wt){if(rt.lineNumber===xe.getLineCount())continue;let Pt=new O.a(rt.lineNumber,Math.max(1,rt.column-1),rt.lineNumber+1,1),no=xe.getValueInRange(Pt).split("").reverse().join("");Te.push(new A.a(new E.a(rt.lineNumber,Math.max(1,rt.column-1),rt.lineNumber+1,1),no))}else{let Pt=new O.a(rt.lineNumber,Math.max(1,rt.column-1),rt.lineNumber,rt.column+1),no=xe.getValueInRange(Pt).split("").reverse().join("");Te.push(new A.b(Pt,no,new E.a(rt.lineNumber,rt.column+1,rt.lineNumber,rt.column+1)))}}ye.pushUndoStop(),ye.executeCommands(this.id,Te),ye.pushUndoStop()}}class De extends L.b{run(ge,ye){const ze=ye.getSelections();if(ze===null)return;const xe=ye.getModel();if(xe===null)return;const Te=ye.getOption(115),He=[];for(const st of ze)if(st.isEmpty()){const nt=st.getStartPosition(),rt=ye.getConfiguredWordAtPosition(nt);if(!rt)continue;const wt=new O.a(nt.lineNumber,rt.startColumn,nt.lineNumber,rt.endColumn),Pt=xe.getValueInRange(wt);He.push(k.a.replace(wt,this._modifyText(Pt,Te)))}else{const nt=xe.getValueInRange(st);He.push(k.a.replace(st,this._modifyText(nt,Te)))}ye.pushUndoStop(),ye.executeEdits(this.id,He),ye.pushUndoStop()}}class Ne extends De{constructor(){super({id:"editor.action.transformToUppercase",label:D.a("editor.transformToUppercase","Transform to Uppercase"),alias:"Transform to Uppercase",precondition:p.a.writable})}_modifyText(ge,ye){return ge.toLocaleUpperCase()}}class ve extends De{constructor(){super({id:"editor.action.transformToLowercase",label:D.a("editor.transformToLowercase","Transform to Lowercase"),alias:"Transform to Lowercase",precondition:p.a.writable})}_modifyText(ge,ye){return ge.toLocaleLowerCase()}}class re{constructor(ge,ye){this._pattern=ge,this._flags=ye,this._actual=null,this._evaluated=!1}get(){if(!this._evaluated){this._evaluated=!0;try{this._actual=new RegExp(this._pattern,this._flags)}catch(ge){}}return this._actual}isSupported(){return this.get()!==null}}class we extends De{constructor(){super({id:"editor.action.transformToTitlecase",label:D.a("editor.transformToTitlecase","Transform to Title Case"),alias:"Transform to Title Case",precondition:p.a.writable})}_modifyText(ge,ye){const ze=we.titleBoundary.get();return ze?ge.toLocaleLowerCase().replace(ze,xe=>xe.toLocaleUpperCase()):ge}}we.titleBoundary=new re("(^|[^\\p{L}\\p{N}']|((^|\\P{L})'))\\p{L}","gmu");class Ie extends De{constructor(){super({id:"editor.action.transformToSnakecase",label:D.a("editor.transformToSnakecase","Transform to Snake Case"),alias:"Transform to Snake Case",precondition:p.a.writable})}_modifyText(ge,ye){const ze=Ie.caseBoundary.get(),xe=Ie.singleLetters.get();return!ze||!xe?ge:ge.replace(ze,"$1_$2").replace(xe,"$1_$2$3").toLocaleLowerCase()}}Ie.caseBoundary=new re("(\\p{Ll})(\\p{Lu})","gmu"),Ie.singleLetters=new re("(\\p{Lu}|\\p{N})(\\p{Lu})(\\p{Ll})","gmu"),Object(L.j)(G),Object(L.j)(B),Object(L.j)(z),Object(L.j)(K),Object(L.j)(Q),Object(L.j)(Se),Object(L.j)(fe),Object(L.j)(q),Object(L.j)(te),Object(L.j)(U),Object(L.j)(H),Object(L.j)(W),Object(L.j)(ne),Object(L.j)(Ce),Object(L.j)(ce),Object(L.j)(me),Object(L.j)(Oe),Object(L.j)(oe),Object(L.j)(Ne),Object(L.j)(ve),Ie.caseBoundary.isSupported()&&Ie.singleLetters.isSupported()&&Object(L.j)(Ie),we.titleBoundary.isSupported()&&Object(L.j)(we)},dM5B:function(ft,w,e){"use strict";e.d(w,"e",function(){return m}),e.d(w,"f",function(){return c}),e.d(w,"d",function(){return g}),e.d(w,"b",function(){return C}),e.d(w,"c",function(){return j}),e.d(w,"a",function(){return G});var h=e("JQT/"),P=e("/cxE"),L=e("bY76"),A=e("twdY"),I=e("G2kB"),k=e("nnTU"),O=e("746U"),S=e("HpOR"),f=e("MNsG");function u(B){for(let z=0,Y=B.length;z0?z[0]:[]}function C(B,z,Y,K){return b(this,void 0,void 0,function*(){const Q=y(B),ee=yield Promise.all(Q.map(Se=>b(this,void 0,void 0,function*(){let fe;try{fe=yield Se.provideDocumentSemanticTokens(B,Se===z?Y:null,K)}catch(q){Object(P.g)(q),fe=null}return(!fe||!m(fe)&&!c(fe))&&(fe=null),new l(Se,fe)})));for(const Se of ee)if(Se.tokens)return Se;return ee.length>0?ee[0]:null})}function v(B){const z=A.l.orderedGroups(B);return z.length>0?z[0]:null}class D{constructor(B,z){this.provider=B,this.tokens=z}}function j(B){return A.k.has(B)}function V(B){const z=A.k.orderedGroups(B);return z.length>0?z[0]:[]}function G(B,z,Y){return b(this,void 0,void 0,function*(){const K=V(B),Q=yield Promise.all(K.map(ee=>b(this,void 0,void 0,function*(){let Se;try{Se=yield ee.provideDocumentRangeSemanticTokens(B,z,Y)}catch(fe){Object(P.g)(fe),Se=null}return(!Se||!m(Se))&&(Se=null),new D(ee,Se)})));for(const ee of Q)if(ee.tokens)return ee;return Q.length>0?Q[0]:null})}k.a.registerCommand("_provideDocumentSemanticTokensLegend",(B,...z)=>b(void 0,void 0,void 0,function*(){const[Y]=z;Object(O.c)(Y instanceof L.a);const K=B.get(I.a).getModel(Y);if(!K)return;const Q=v(K);return Q?Q[0].getLegend():B.get(k.b).executeCommand("_provideDocumentRangeSemanticTokensLegend",Y)})),k.a.registerCommand("_provideDocumentSemanticTokens",(B,...z)=>b(void 0,void 0,void 0,function*(){const[Y]=z;Object(O.c)(Y instanceof L.a);const K=B.get(I.a).getModel(Y);if(!K)return;if(!g(K))return B.get(k.b).executeCommand("_provideDocumentRangeSemanticTokens",Y,K.getFullModelRange());const Q=yield C(K,null,null,h.a.None);if(!Q)return;const{provider:ee,tokens:Se}=Q;if(!Se||!m(Se))return;const fe=E({id:0,type:"full",data:Se.data});return Se.resultId&&ee.releaseDocumentSemanticTokens(Se.resultId),fe})),k.a.registerCommand("_provideDocumentRangeSemanticTokensLegend",(B,...z)=>b(void 0,void 0,void 0,function*(){const[Y,K]=z;Object(O.c)(Y instanceof L.a);const Q=B.get(I.a).getModel(Y);if(!Q)return;const ee=V(Q);if(ee.length===0)return;if(ee.length===1)return ee[0].getLegend();if(!K||!n.a.isIRange(K))return console.warn("provideDocumentRangeSemanticTokensLegend might be out-of-sync with provideDocumentRangeSemanticTokens unless a range argument is passed in"),ee[0].getLegend();const Se=yield G(Q,n.a.lift(K),h.a.None);return Se?Se.provider.getLegend():void 0})),k.a.registerCommand("_provideDocumentRangeSemanticTokens",(B,...z)=>b(void 0,void 0,void 0,function*(){const[Y,K]=z;Object(O.c)(Y instanceof L.a),Object(O.c)(n.a.isIRange(K));const Q=B.get(I.a).getModel(Y);if(!Q)return;const ee=yield G(Q,n.a.lift(K),h.a.None);return!ee||!ee.tokens?void 0:E({id:0,type:"full",data:ee.tokens.data})}))},dgXF:function(ft,w,e){"use strict";e.r(w),e.d(w,"FoldingController",function(){return Pt}),e.d(w,"foldBackgroundBackground",function(){return mt}),e.d(w,"editorFoldForeground",function(){return Gt});var h=e("X+cX"),P=e("/cxE"),L=e("/kV6"),A=e("pmY6"),I=e("N0LK"),k=e("746U"),O=e("CjOT"),S=e("vATl"),f=e("sswD"),u=e("wQH0"),d=e("twdY"),E=e("cMvZ"),p=e("MI8n");const n=65535,b=16777215,m=4278190080;class c{constructor(qe,tt,gt){if(qe.length!==tt.length||qe.length>n)throw new Error("invalid startIndexes or endIndexes size");this._startIndexes=qe,this._endIndexes=tt,this._collapseStates=new Uint32Array(Math.ceil(qe.length/32)),this._types=gt,this._parentsComputed=!1}ensureParentIndices(){if(!this._parentsComputed){this._parentsComputed=!0;let qe=[],tt=(gt,$e)=>{let je=qe[qe.length-1];return this.getStartLineNumber(je)<=gt&&this.getEndLineNumber(je)>=$e};for(let gt=0,$e=this._startIndexes.length;gt<$e;gt++){let je=this._startIndexes[gt],Ue=this._endIndexes[gt];if(je>b||Ue>b)throw new Error("startLineNumber or endLineNumber must not exceed "+b);for(;qe.length>0&&!tt(je,Ue);)qe.pop();let Ye=qe.length>0?qe[qe.length-1]:-1;qe.push(gt),this._startIndexes[gt]=je+((Ye&255)<<24),this._endIndexes[gt]=Ue+((Ye&65280)<<16)}}}get length(){return this._startIndexes.length}getStartLineNumber(qe){return this._startIndexes[qe]&b}getEndLineNumber(qe){return this._endIndexes[qe]&b}getType(qe){return this._types?this._types[qe]:void 0}hasTypes(){return!!this._types}isCollapsed(qe){let tt=qe/32|0,gt=qe%32;return(this._collapseStates[tt]&1<>>24)+((this._endIndexes[qe]&m)>>>16);return tt===n?-1:tt}contains(qe,tt){return this.getStartLineNumber(qe)<=tt&&this.getEndLineNumber(qe)>=tt}findIndex(qe){let tt=0,gt=this._startIndexes.length;if(gt===0)return-1;for(;tt=0){let gt=this.getEndLineNumber(tt);if(gt>=qe)return tt;for(tt=this.getParentIndex(tt);tt!==-1;){if(this.contains(tt,qe))return tt;tt=this.getParentIndex(tt)}}return-1}toString(){let qe=[];for(let tt=0;tt=this.endLineNumber}containsLine(qe){return this.startLineNumber<=qe&&qe<=this.endLineNumber}}class g{constructor(qe,tt){this._updateEventEmitter=new p.b,this.onDidChange=this._updateEventEmitter.event,this._textModel=qe,this._decorationProvider=tt,this._regions=new c(new Uint32Array(0),new Uint32Array(0)),this._editorDecorationIds=[],this._isInitialized=!1}get regions(){return this._regions}get textModel(){return this._textModel}get isInitialized(){return this._isInitialized}toggleCollapseState(qe){if(!qe.length)return;qe=qe.sort((gt,$e)=>gt.regionIndex-$e.regionIndex);const tt={};this._decorationProvider.changeDecorations(gt=>{let $e=0,je=-1,Ue=-1;const Ye=Mt=>{for(;$eUe&&(Ue=Bt),$e++}};for(let Mt of qe){let Bt=Mt.regionIndex,$t=this._editorDecorationIds[Bt];if($t&&!tt[$t]){tt[$t]=!0,Ye(Bt);let uo=!this._regions.isCollapsed(Bt);this._regions.setCollapsed(Bt,uo),je=Math.max(je,this._regions.getEndLineNumber(Bt))}}Ye(this._regions.length)}),this._updateEventEmitter.fire({model:this,collapseStateChanged:qe})}update(qe,tt=[]){let gt=[],$e=(uo,Zt)=>{for(let zt of tt)if(uo{const zt=qe.getStartLineNumber(uo),ut=qe.getEndLineNumber(uo);Zt||(Zt=qe.isCollapsed(uo)),Zt&&$e(zt,ut)&&(Zt=!1),qe.setCollapsed(uo,Zt);const Ct=this._textModel.getLineMaxColumn(zt),We={startLineNumber:zt,startColumn:Math.max(Ct-1,1),endLineNumber:zt,endColumn:Ct};gt.push({range:We,options:this._decorationProvider.getDecorationOption(Zt,ut<=je)}),Zt&&ut>je&&(je=ut)},Ye=0,Mt=()=>{for(;Ye=zt)Ue(Bt,Zt===zt),Bt++;else break}}$t=Mt()}for(;Bt0?qe:void 0}applyMemento(qe){if(!Array.isArray(qe))return;let tt=[];for(let gt of qe){let $e=this.getRegionAtLine(gt.startLineNumber);$e&&!$e.isCollapsed&&tt.push($e)}this.toggleCollapseState(tt)}dispose(){this._decorationProvider.deltaDecorations(this._editorDecorationIds,[])}getAllRegionsAtLine(qe,tt){let gt=[];if(this._regions){let $e=this._regions.findRange(qe),je=1;for(;$e>=0;){let Ue=this._regions.toRegion($e);(!tt||tt(Ue,je))&>.push(Ue),je++,$e=Ue.parentIndex}}return gt}getRegionAtLine(qe){if(this._regions){let tt=this._regions.findRange(qe);if(tt>=0)return this._regions.toRegion(tt)}return null}getRegionsInside(qe,tt){let gt=[],$e=qe?qe.regionIndex+1:0,je=qe?qe.endLineNumber:Number.MAX_VALUE;if(tt&&tt.length===2){const Ue=[];for(let Ye=$e,Mt=this._regions.length;Ye0&&!Bt.containedBy(Ue[Ue.length-1]);)Ue.pop();Ue.push(Bt),tt(Bt,Ue.length)&>.push(Bt)}else break}}else for(let Ue=$e,Ye=this._regions.length;Ue1){let Mt=qe.getRegionsInside(Ue,(Bt,$t)=>Bt.isCollapsed!==Ye&&$t0)for(let Ue of $e){let Ye=qe.getRegionAtLine(Ue);if(Ye&&(Ye.isCollapsed!==tt&&je.push(Ye),gt>1)){let Mt=qe.getRegionsInside(Ye,(Bt,$t)=>Bt.isCollapsed!==tt&&$tYe.isCollapsed!==tt&&MtMt.isCollapsed!==tt&&Bt<=gt);je.push(...Ye)}qe.toggleCollapseState(je)}function D(qe,tt,gt){let $e=[];for(let je of gt){let Ue=qe.getAllRegionsAtLine(je,Ye=>Ye.isCollapsed!==tt);Ue.length>0&&$e.push(Ue[0])}qe.toggleCollapseState($e)}function j(qe,tt,gt,$e){let je=(Ye,Mt)=>Mt===tt&&Ye.isCollapsed!==gt&&!$e.some(Bt=>Ye.containsLine(Bt)),Ue=qe.getRegionsInside(null,je);qe.toggleCollapseState(Ue)}function V(qe,tt,gt){let $e=[];for(let Ye of gt)$e.push(qe.getAllRegionsAtLine(Ye,void 0)[0]);let je=Ye=>$e.every(Mt=>!Mt.containedBy(Ye)&&!Ye.containedBy(Mt))&&Ye.isCollapsed!==tt,Ue=qe.getRegionsInside(null,je);qe.toggleCollapseState(Ue)}function G(qe,tt,gt){let $e=qe.textModel,je=qe.regions,Ue=[];for(let Ye=je.length-1;Ye>=0;Ye--)if(gt!==je.isCollapsed(Ye)){let Mt=je.getStartLineNumber(Ye);tt.test($e.getLineContent(Mt))&&Ue.push(je.toRegion(Ye))}qe.toggleCollapseState(Ue)}function B(qe,tt,gt){let $e=qe.regions,je=[];for(let Ue=$e.length-1;Ue>=0;Ue--)gt!==$e.isCollapsed(Ue)&&tt===$e.getType(Ue)&&je.push($e.toRegion(Ue));qe.toggleCollapseState(je)}function z(qe,tt){let gt=null,$e=tt.getRegionAtLine(qe);if($e!==null&&(gt=$e.startLineNumber,qe===gt)){let je=$e.parentIndex;je!==-1?gt=tt.regions.getStartLineNumber(je):gt=null}return gt}function Y(qe,tt){let gt=tt.getRegionAtLine(qe);if(gt!==null&>.startLineNumber===qe){if(qe!==gt.startLineNumber)return gt.startLineNumber;{let $e=gt.parentIndex,je=0;for($e!==-1&&(je=tt.regions.getStartLineNumber(gt.parentIndex));gt!==null;)if(gt.regionIndex>0){if(gt=tt.regions.toRegion(gt.regionIndex-1),gt.startLineNumber<=je)return null;if(gt.parentIndex===$e)return gt.startLineNumber}else return null}}else if(tt.regions.length>0)for(gt=tt.regions.toRegion(tt.regions.length-1);gt!==null;){if(gt.startLineNumber0?gt=tt.regions.toRegion(gt.regionIndex-1):gt=null}return null}function K(qe,tt){let gt=tt.getRegionAtLine(qe);if(gt!==null&>.startLineNumber===qe){let $e=gt.parentIndex,je=0;if($e!==-1)je=tt.regions.getEndLineNumber(gt.parentIndex);else{if(tt.regions.length===0)return null;je=tt.regions.getEndLineNumber(tt.regions.length-1)}for(;gt!==null;)if(gt.regionIndex=je)return null;if(gt.parentIndex===$e)return gt.startLineNumber}else return null}else if(tt.regions.length>0)for(gt=tt.regions.toRegion(0);gt!==null;){if(gt.startLineNumber>qe)return gt.startLineNumber;gt.regionIndexthis.updateHiddenRanges()),this._hiddenRanges=[],qe.regions.length&&this.updateHiddenRanges()}get onDidChange(){return this._updateEventEmitter.event}get hiddenRanges(){return this._hiddenRanges}updateHiddenRanges(){let qe=!1,tt=[],gt=0,$e=0,je=Number.MAX_VALUE,Ue=-1,Ye=this._foldingModel.regions;for(;gt({startLineNumber:qe.startLineNumber-1,endLineNumber:qe.endLineNumber}))}applyHiddenRanges(qe){this._hiddenRanges=qe,this._updateEventEmitter.fire(qe)}hasRanges(){return this._hiddenRanges.length>0}isHidden(qe){return q(this._hiddenRanges,qe)!==null}adjustSelections(qe){let tt=!1,gt=this._foldingModel.textModel,$e=null,je=Ue=>((!$e||!fe(Ue,$e))&&($e=q(this._hiddenRanges,Ue)),$e?$e.startLineNumber-1:null);for(let Ue=0,Ye=qe.length;Ue0&&(this._hiddenRanges=[],this._updateEventEmitter.fire(this._hiddenRanges)),this._foldingModelListener&&(this._foldingModelListener.dispose(),this._foldingModelListener=null)}}function fe(qe,tt){return qe>=tt.startLineNumber&&qe<=tt.endLineNumber}function q(qe,tt){let gt=Object(Q.h)(qe,$e=>tt<$e.startLineNumber)-1;return gt>=0&&qe[gt].endLineNumber>=tt?qe[gt]:null}var te=e("tX9W");const U=5e3,H="indent";class W{constructor(qe){this.editorModel=qe,this.id=H}dispose(){}compute(qe){let tt=E.b.getFoldingRules(this.editorModel.getLanguageId()),gt=tt&&!!tt.offSide,$e=tt&&tt.markers;return Promise.resolve(Ce(this.editorModel,gt,$e))}}class ne{constructor(qe){this._startIndexes=[],this._endIndexes=[],this._indentOccurrences=[],this._length=0,this._foldingRangesLimit=qe}insertFirst(qe,tt,gt){if(qe>b||tt>b)return;let $e=this._length;this._startIndexes[$e]=qe,this._endIndexes[$e]=tt,this._length++,gt<1e3&&(this._indentOccurrences[gt]=(this._indentOccurrences[gt]||0)+1)}toIndentRanges(qe){if(this._length<=this._foldingRangesLimit){let tt=new Uint32Array(this._length),gt=new Uint32Array(this._length);for(let $e=this._length-1,je=0;$e>=0;$e--,je++)tt[je]=this._startIndexes[$e],gt[je]=this._endIndexes[$e];return new c(tt,gt)}else{let tt=0,gt=this._indentOccurrences.length;for(let Ye=0;Yethis._foldingRangesLimit){gt=Ye;break}tt+=Mt}}const $e=qe.getOptions().tabSize;let je=new Uint32Array(this._foldingRangesLimit),Ue=new Uint32Array(this._foldingRangesLimit);for(let Ye=this._length-1,Mt=0;Ye>=0;Ye--){let Bt=this._startIndexes[Ye],$t=qe.getLineContent(Bt),uo=te.c.computeIndentLevel($t,$e);(uo0;$t--){let uo=qe.getLineContent($t),Zt=te.c.computeIndentLevel(uo,je),zt=Mt[Mt.length-1];if(Zt===-1){tt&&(zt.endAbove=$t);continue}let ut;if(Ye&&(ut=uo.match(Ye)))if(ut[1]){let Ct=Mt.length-1;for(;Ct>0&&Mt[Ct].indent!==-2;)Ct--;if(Ct>0){Mt.length=Ct+1,zt=Mt[Ct],Ue.insertFirst($t,zt.line,Zt),zt.line=$t,zt.indent=Zt,zt.endAbove=$t;continue}}else{Mt.push({indent:-2,endAbove:$t,line:$t});continue}if(zt.indent>Zt){do Mt.pop(),zt=Mt[Mt.length-1];while(zt.indent>Zt);let Ct=zt.endAbove-1;Ct-$t>=1&&Ue.insertFirst($t,Ct,Zt)}zt.indent===Zt?zt.endAbove=$t:Mt.push({indent:Zt,endAbove:$t,line:$t})}return Ue.toIndentRanges(qe)}const Le=5e3,ce={},me="syntax";class Oe{constructor(qe,tt,gt,$e=Le){this.editorModel=qe,this.providers=tt,this.limit=$e,this.id=me;for(const je of tt)typeof je.onDidChange=="function"&&(this.disposables||(this.disposables=new A.b),this.disposables.add(je.onDidChange(gt)))}compute(qe){return oe(this.providers,this.editorModel,qe).then(tt=>{if(tt){let gt=Ne(tt,this.limit);return gt}return null})}dispose(){var qe;(qe=this.disposables)===null||qe===void 0||qe.dispose()}}function oe(qe,tt,gt){let $e=null,je=qe.map((Ue,Ye)=>Promise.resolve(Ue.provideFoldingRanges(tt,ce,gt)).then(Mt=>{if(gt.isCancellationRequested)return;if(Array.isArray(Mt)){Array.isArray($e)||($e=[]);let Bt=tt.getLineCount();for(let $t of Mt)$t.start>0&&$t.end>$t.start&&$t.end<=Bt&&$e.push({start:$t.start,end:$t.end,rank:Ye,kind:$t.kind})}},P.g));return Promise.all(je).then(Ue=>$e)}class De{constructor(qe){this._startIndexes=[],this._endIndexes=[],this._nestingLevels=[],this._nestingLevelCounts=[],this._types=[],this._length=0,this._foldingRangesLimit=qe}add(qe,tt,gt,$e){if(qe>b||tt>b)return;let je=this._length;this._startIndexes[je]=qe,this._endIndexes[je]=tt,this._nestingLevels[je]=$e,this._types[je]=gt,this._length++,$e<30&&(this._nestingLevelCounts[$e]=(this._nestingLevelCounts[$e]||0)+1)}toIndentRanges(){if(this._length<=this._foldingRangesLimit){let qe=new Uint32Array(this._length),tt=new Uint32Array(this._length);for(let gt=0;gtthis._foldingRangesLimit){tt=Ue;break}qe+=Ye}}let gt=new Uint32Array(this._foldingRangesLimit),$e=new Uint32Array(this._foldingRangesLimit),je=[];for(let Ue=0,Ye=0;Ue{let Bt=Ye.start-Mt.start;return Bt===0&&(Bt=Ye.rank-Mt.rank),Bt}),$e=new De(tt),je,Ue=[];for(let Ye of gt)if(!je)je=Ye,$e.add(Ye.start,Ye.end,Ye.kind&&Ye.kind.value,Ue.length);else if(Ye.start>je.start)if(Ye.end<=je.end)Ue.push(je),je=Ye,$e.add(Ye.start,Ye.end,Ye.kind&&Ye.kind.value,Ue.length);else{if(Ye.start>je.end){do je=Ue.pop();while(je&&Ye.start>je.end);je&&Ue.push(je),je=Ye}$e.add(Ye.start,Ye.end,Ye.kind&&Ye.kind.value,Ue.length)}return $e.toIndentRanges()}const ve="init";class re{constructor(qe,tt,gt,$e){if(this.editorModel=qe,this.id=ve,tt.length){let je=Ue=>({range:{startLineNumber:Ue.startLineNumber,startColumn:0,endLineNumber:Ue.endLineNumber,endColumn:qe.getLineLength(Ue.endLineNumber)},options:{description:"folding-initializing-range-provider",stickiness:1}});this.decorationIds=qe.deltaDecorations([],tt.map(je)),this.timeout=setTimeout(gt,$e)}}dispose(){this.decorationIds&&(this.editorModel.deltaDecorations(this.decorationIds,[]),this.decorationIds=void 0),typeof this.timeout=="number"&&(clearTimeout(this.timeout),this.timeout=void 0)}compute(qe){let tt=[];if(this.decorationIds)for(let gt of this.decorationIds){let $e=this.editorModel.getDecorationRange(gt);$e&&tt.push({start:$e.startLineNumber,end:$e.endLineNumber,rank:1})}return Promise.resolve(Ne(tt,Number.MAX_VALUE))}}var we=e("3/fG"),Ie=e("T8No"),ge=e("MD5Z"),ye=e("t9D7"),ze=e("Vhoy"),xe=e("v1vZ");const Te=Object(xe.b)("folding-expanded",ze.b.chevronDown,Object(we.a)("foldingExpandedIcon","Icon for expanded ranges in the editor glyph margin.")),He=Object(xe.b)("folding-collapsed",ze.b.chevronRight,Object(we.a)("foldingCollapsedIcon","Icon for collapsed ranges in the editor glyph margin."));class st{constructor(qe){this.editor=qe,this.autoHideFoldingControls=!0,this.showFoldingHighlights=!0}getDecorationOption(qe,tt){return tt?st.HIDDEN_RANGE_DECORATION:qe?this.showFoldingHighlights?st.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION:st.COLLAPSED_VISUAL_DECORATION:this.autoHideFoldingControls?st.EXPANDED_AUTO_HIDE_VISUAL_DECORATION:st.EXPANDED_VISUAL_DECORATION}deltaDecorations(qe,tt){return this.editor.deltaDecorations(qe,tt)}changeDecorations(qe){return this.editor.changeDecorations(qe)}}st.COLLAPSED_VISUAL_DECORATION=te.b.register({description:"folding-collapsed-visual-decoration",stickiness:1,afterContentClassName:"inline-folded",isWholeLine:!0,firstLineDecorationClassName:ye.d.asClassName(He)}),st.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION=te.b.register({description:"folding-collapsed-highlighted-visual-decoration",stickiness:1,afterContentClassName:"inline-folded",className:"folded-background",isWholeLine:!0,firstLineDecorationClassName:ye.d.asClassName(He)}),st.EXPANDED_AUTO_HIDE_VISUAL_DECORATION=te.b.register({description:"folding-expanded-auto-hide-visual-decoration",stickiness:1,isWholeLine:!0,firstLineDecorationClassName:ye.d.asClassName(Te)}),st.EXPANDED_VISUAL_DECORATION=te.b.register({description:"folding-expanded-visual-decoration",stickiness:1,isWholeLine:!0,firstLineDecorationClassName:"alwaysShowFoldIcons "+ye.d.asClassName(Te)}),st.HIDDEN_RANGE_DECORATION=te.b.register({description:"folding-hidden-range-decoration",stickiness:1});var nt=function(qe,tt,gt,$e){var je=arguments.length,Ue=je<3?tt:$e===null?$e=Object.getOwnPropertyDescriptor(tt,gt):$e,Ye;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Ue=Reflect.decorate(qe,tt,gt,$e);else for(var Mt=qe.length-1;Mt>=0;Mt--)(Ye=qe[Mt])&&(Ue=(je<3?Ye(Ue):je>3?Ye(tt,gt,Ue):Ye(tt,gt))||Ue);return je>3&&Ue&&Object.defineProperty(tt,gt,Ue),Ue},rt=function(qe,tt){return function(gt,$e){tt(gt,$e,qe)}};const wt=new Ie.c("foldingEnabled",!1);let Pt=class qe extends A.a{constructor(tt,gt){super();this.contextKeyService=gt,this.localToDispose=this._register(new A.b),this.editor=tt;const $e=this.editor.getOptions();this._isEnabled=$e.get(37),this._useFoldingProviders=$e.get(38)!=="indentation",this._unfoldOnClickAfterEndOfLine=$e.get(41),this._restoringViewState=!1,this._currentModelHasFoldedImports=!1,this._foldingImportsByDefault=$e.get(40),this.foldingModel=null,this.hiddenRangeModel=null,this.rangeProvider=null,this.foldingRegionPromise=null,this.foldingStateMemento=null,this.foldingModelPromise=null,this.updateScheduler=null,this.cursorChangedScheduler=null,this.mouseDownInfo=null,this.foldingDecorationProvider=new st(tt),this.foldingDecorationProvider.autoHideFoldingControls=$e.get(98)==="mouseover",this.foldingDecorationProvider.showFoldingHighlights=$e.get(39),this.foldingEnabled=wt.bindTo(this.contextKeyService),this.foldingEnabled.set(this._isEnabled),this._register(this.editor.onDidChangeModel(()=>this.onModelChanged())),this._register(this.editor.onDidChangeConfiguration(je=>{if(je.hasChanged(37)&&(this._isEnabled=this.editor.getOptions().get(37),this.foldingEnabled.set(this._isEnabled),this.onModelChanged()),je.hasChanged(98)||je.hasChanged(39)){const Ue=this.editor.getOptions();this.foldingDecorationProvider.autoHideFoldingControls=Ue.get(98)==="mouseover",this.foldingDecorationProvider.showFoldingHighlights=Ue.get(39),this.onModelContentChanged()}je.hasChanged(38)&&(this._useFoldingProviders=this.editor.getOptions().get(38)!=="indentation",this.onFoldingStrategyChanged()),je.hasChanged(41)&&(this._unfoldOnClickAfterEndOfLine=this.editor.getOptions().get(41)),je.hasChanged(40)&&(this._foldingImportsByDefault=this.editor.getOptions().get(40))})),this.onModelChanged()}static get(tt){return tt.getContribution(qe.ID)}saveViewState(){let tt=this.editor.getModel();if(!tt||!this._isEnabled||tt.isTooLargeForTokenization())return{};if(this.foldingModel){let gt=this.foldingModel.isInitialized?this.foldingModel.getMemento():this.hiddenRangeModel.getMemento(),$e=this.rangeProvider?this.rangeProvider.id:void 0;return{collapsedRegions:gt,lineCount:tt.getLineCount(),provider:$e,foldedImports:this._currentModelHasFoldedImports}}return}restoreViewState(tt){let gt=this.editor.getModel();if(!gt||!this._isEnabled||gt.isTooLargeForTokenization()||!this.hiddenRangeModel)return;if(!tt||tt.lineCount!==gt.getLineCount())return;if(this._currentModelHasFoldedImports=!!tt.foldedImports,!tt.collapsedRegions)return;(tt.provider===me||tt.provider===ve)&&(this.foldingStateMemento=tt);const $e=tt.collapsedRegions;if(this.hiddenRangeModel.applyMemento($e)){const je=this.getFoldingModel();je&&je.then(Ue=>{if(Ue){this._restoringViewState=!0;try{Ue.applyMemento($e)}finally{this._restoringViewState=!1}}}).then(void 0,P.f)}}onModelChanged(){this.localToDispose.clear();let tt=this.editor.getModel();if(!this._isEnabled||!tt||tt.isTooLargeForTokenization())return;this._currentModelHasFoldedImports=!1,this.foldingModel=new g(tt,this.foldingDecorationProvider),this.localToDispose.add(this.foldingModel),this.hiddenRangeModel=new Se(this.foldingModel),this.localToDispose.add(this.hiddenRangeModel),this.localToDispose.add(this.hiddenRangeModel.onDidChange(gt=>this.onHiddenRangesChanges(gt))),this.updateScheduler=new h.a(200),this.cursorChangedScheduler=new h.e(()=>this.revealCursor(),200),this.localToDispose.add(this.cursorChangedScheduler),this.localToDispose.add(d.o.onDidChange(()=>this.onFoldingStrategyChanged())),this.localToDispose.add(this.editor.onDidChangeModelLanguageConfiguration(()=>this.onFoldingStrategyChanged())),this.localToDispose.add(this.editor.onDidChangeModelContent(()=>this.onModelContentChanged())),this.localToDispose.add(this.editor.onDidChangeCursorPosition(()=>this.onCursorPositionChanged())),this.localToDispose.add(this.editor.onMouseDown(gt=>this.onEditorMouseDown(gt))),this.localToDispose.add(this.editor.onMouseUp(gt=>this.onEditorMouseUp(gt))),this.localToDispose.add({dispose:()=>{this.foldingRegionPromise&&(this.foldingRegionPromise.cancel(),this.foldingRegionPromise=null),this.updateScheduler&&this.updateScheduler.cancel(),this.updateScheduler=null,this.foldingModel=null,this.foldingModelPromise=null,this.hiddenRangeModel=null,this.cursorChangedScheduler=null,this.foldingStateMemento=null,this.rangeProvider&&this.rangeProvider.dispose(),this.rangeProvider=null}}),this.onModelContentChanged()}onFoldingStrategyChanged(){this.rangeProvider&&this.rangeProvider.dispose(),this.rangeProvider=null,this.onModelContentChanged()}getRangeProvider(tt){if(this.rangeProvider)return this.rangeProvider;if(this.rangeProvider=new W(tt),this._useFoldingProviders&&this.foldingModel){let gt=d.o.ordered(this.foldingModel.textModel);if(gt.length===0&&this.foldingStateMemento&&this.foldingStateMemento.collapsedRegions){const $e=this.rangeProvider=new re(tt,this.foldingStateMemento.collapsedRegions,()=>{this.foldingStateMemento=null,this.onFoldingStrategyChanged()},3e4);return $e}else gt.length>0&&(this.rangeProvider=new Oe(tt,gt,()=>this.onModelContentChanged()))}return this.foldingStateMemento=null,this.rangeProvider}getFoldingModel(){return this.foldingModelPromise}onModelContentChanged(){this.updateScheduler&&(this.foldingRegionPromise&&(this.foldingRegionPromise.cancel(),this.foldingRegionPromise=null),this.foldingModelPromise=this.updateScheduler.trigger(()=>{const tt=this.foldingModel;if(!tt)return null;const gt=this.getRangeProvider(tt.textModel);let $e=this.foldingRegionPromise=Object(h.h)(je=>gt.compute(je));return $e.then(je=>{if(je&&$e===this.foldingRegionPromise){let Ue;if(this._foldingImportsByDefault&&!this._currentModelHasFoldedImports){const Bt=je.setCollapsedAllOfType(d.n.Imports.value,!0);Bt&&(Ue=S.c.capture(this.editor),this._currentModelHasFoldedImports=Bt)}let Ye=this.editor.getSelections(),Mt=Ye?Ye.map(Bt=>Bt.startLineNumber):[];tt.update(je,Mt),Ue&&Ue.restore(this.editor)}return tt})}).then(void 0,tt=>(Object(P.f)(tt),null)))}onHiddenRangesChanges(tt){if(this.hiddenRangeModel&&tt.length&&!this._restoringViewState){let gt=this.editor.getSelections();gt&&(this.hiddenRangeModel.adjustSelections(gt)&&this.editor.setSelections(gt))}this.editor.setHiddenAreas(tt)}onCursorPositionChanged(){this.hiddenRangeModel&&this.hiddenRangeModel.hasRanges()&&this.cursorChangedScheduler.schedule()}revealCursor(){const tt=this.getFoldingModel();if(!tt)return;tt.then(gt=>{if(gt){let $e=this.editor.getSelections();if($e&&$e.length>0){let je=[];for(let Ue of $e){let Ye=Ue.selectionStartLineNumber;this.hiddenRangeModel&&this.hiddenRangeModel.isHidden(Ye)&&je.push(...gt.getAllRegionsAtLine(Ye,Mt=>Mt.isCollapsed&&Ye>Mt.startLineNumber))}je.length&&(gt.toggleCollapseState(je),this.reveal($e[0].getPosition()))}}}).then(void 0,P.f)}onEditorMouseDown(tt){if(this.mouseDownInfo=null,!this.hiddenRangeModel||!tt.target||!tt.target.range)return;if(!tt.event.leftButton&&!tt.event.middleButton)return;const gt=tt.target.range;let $e=!1;switch(tt.target.type){case 4:const je=tt.target.detail,Ue=tt.target.element.offsetLeft,Ye=je.offsetX-Ue;if(Ye<5)return;$e=!0;break;case 7:{if(this._unfoldOnClickAfterEndOfLine&&this.hiddenRangeModel.hasRanges()){const Mt=tt.target.detail;if(!Mt.isAfterLines)break}return}case 6:{if(this.hiddenRangeModel.hasRanges()){let Mt=this.editor.getModel();if(Mt&>.startColumn===Mt.getLineMaxColumn(gt.startLineNumber))break}return}default:return}this.mouseDownInfo={lineNumber:gt.startLineNumber,iconClicked:$e}}onEditorMouseUp(tt){const gt=this.getFoldingModel();if(!gt||!this.mouseDownInfo||!tt.target)return;let $e=this.mouseDownInfo.lineNumber,je=this.mouseDownInfo.iconClicked,Ue=tt.target.range;if(!Ue||Ue.startLineNumber!==$e)return;if(je){if(tt.target.type!==4)return}else{let Ye=this.editor.getModel();if(!Ye||Ue.startColumn!==Ye.getLineMaxColumn($e))return}gt.then(Ye=>{if(Ye){let Mt=Ye.getRegionAtLine($e);if(Mt&&Mt.startLineNumber===$e){let Bt=Mt.isCollapsed;if(je||Bt){let $t=tt.event.altKey,uo=[];if($t){let Zt=ut=>!ut.containedBy(Mt)&&!Mt.containedBy(ut),zt=Ye.getRegionsInside(null,Zt);for(const ut of zt)ut.isCollapsed&&uo.push(ut);uo.length===0&&(uo=zt)}else{let Zt=tt.event.middleButton||tt.event.shiftKey;if(Zt)for(const zt of Ye.getRegionsInside(Mt))zt.isCollapsed===Bt&&uo.push(zt);(Bt||!Zt||uo.length===0)&&uo.push(Mt)}Ye.toggleCollapseState(uo),this.reveal({lineNumber:$e,column:1})}}}}).then(void 0,P.f)}reveal(tt){this.editor.revealPositionInCenterIfOutsideViewport(tt,0)}};Pt.ID="editor.contrib.folding",Pt=nt([rt(1,Ie.b)],Pt);class no extends f.b{runEditorCommand(qe,tt,gt){let $e=Pt.get(tt);if(!$e)return;let je=$e.getFoldingModel();if(je)return this.reportTelemetry(qe,tt),je.then(Ue=>{if(Ue){this.invoke($e,Ue,tt,gt);const Ye=tt.getSelection();Ye&&$e.reveal(Ye.getStartPosition())}})}getSelectedLines(qe){let tt=qe.getSelections();return tt?tt.map(gt=>gt.startLineNumber):[]}getLineNumbers(qe,tt){return qe&&qe.selectionLines?qe.selectionLines.map(gt=>gt+1):this.getSelectedLines(tt)}run(qe,tt){}}function ht(qe){if(!k.m(qe)){if(!k.k(qe))return!1;const tt=qe;if(!k.m(tt.levels)&&!k.j(tt.levels))return!1;if(!k.m(tt.direction)&&!k.l(tt.direction))return!1;if(!k.m(tt.selectionLines)&&(!k.f(tt.selectionLines)||!tt.selectionLines.every(k.j)))return!1}return!0}class lt extends no{constructor(){super({id:"editor.unfold",label:we.a("unfoldAction.label","Unfold"),alias:"Unfold",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:2048|1024|89,mac:{primary:2048|512|89},weight:100},description:{description:"Unfold the content in the editor",args:[{name:"Unfold editor argument",description:`Property-value pairs that can be passed through this argument: * 'levels': Number of levels to unfold. If not set, defaults to 1. * 'direction': If 'up', unfold given number of levels up otherwise unfolds down. * 'selectionLines': The start lines (0-based) of the editor selections to apply the unfold action to. If not set, the active selection(s) will be used. `,constraint:ht,schema:{type:"object",properties:{levels:{type:"number",default:1},direction:{type:"string",enum:["up","down"],default:"down"},selectionLines:{type:"array",items:{type:"number"}}}}}]}})}invoke(qe,tt,gt,$e){let je=$e&&$e.levels||1,Ue=this.getLineNumbers($e,gt);$e&&$e.direction==="up"?v(tt,!1,je,Ue):C(tt,!1,je,Ue)}}class le extends no{constructor(){super({id:"editor.unfoldRecursively",label:we.a("unFoldRecursivelyAction.label","Unfold Recursively"),alias:"Unfold Recursively",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|89),weight:100}})}invoke(qe,tt,gt,$e){C(tt,!1,Number.MAX_VALUE,this.getSelectedLines(gt))}}class Pe extends no{constructor(){super({id:"editor.fold",label:we.a("foldAction.label","Fold"),alias:"Fold",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:2048|1024|87,mac:{primary:2048|512|87},weight:100},description:{description:"Fold the content in the editor",args:[{name:"Fold editor argument",description:`Property-value pairs that can be passed through this argument: * 'levels': Number of levels to fold. * 'direction': If 'up', folds given number of levels up otherwise folds down. * 'selectionLines': The start lines (0-based) of the editor selections to apply the fold action to. If not set, the active selection(s) will be used. If no levels or direction is set, folds the region at the locations or if already collapsed, the first uncollapsed parent instead. `,constraint:ht,schema:{type:"object",properties:{levels:{type:"number"},direction:{type:"string",enum:["up","down"]},selectionLines:{type:"array",items:{type:"number"}}}}}]}})}invoke(qe,tt,gt,$e){let je=this.getLineNumbers($e,gt);const Ue=$e&&$e.levels,Ye=$e&&$e.direction;typeof Ue!="number"&&typeof Ye!="string"?D(tt,!0,je):Ye==="up"?v(tt,!0,Ue||1,je):C(tt,!0,Ue||1,je)}}class it extends no{constructor(){super({id:"editor.toggleFold",label:we.a("toggleFoldAction.label","Toggle Fold"),alias:"Toggle Fold",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|42),weight:100}})}invoke(qe,tt,gt){let $e=this.getSelectedLines(gt);y(tt,1,$e)}}class Dt extends no{constructor(){super({id:"editor.foldRecursively",label:we.a("foldRecursivelyAction.label","Fold Recursively"),alias:"Fold Recursively",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|87),weight:100}})}invoke(qe,tt,gt){let $e=this.getSelectedLines(gt);C(tt,!0,Number.MAX_VALUE,$e)}}class kt extends no{constructor(){super({id:"editor.foldAllBlockComments",label:we.a("foldAllBlockComments.label","Fold All Block Comments"),alias:"Fold All Block Comments",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|85),weight:100}})}invoke(qe,tt,gt){if(tt.regions.hasTypes())B(tt,d.n.Comment.value,!0);else{const $e=gt.getModel();if(!$e)return;const je=E.b.getComments($e.getLanguageId());if(je&&je.blockCommentStartToken){let Ue=new RegExp("^\\s*"+Object(I.t)(je.blockCommentStartToken));G(tt,Ue,!0)}}}}class eo extends no{constructor(){super({id:"editor.foldAllMarkerRegions",label:we.a("foldAllMarkerRegions.label","Fold All Regions"),alias:"Fold All Regions",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|29),weight:100}})}invoke(qe,tt,gt){if(tt.regions.hasTypes())B(tt,d.n.Region.value,!0);else{const $e=gt.getModel();if(!$e)return;const je=E.b.getFoldingRules($e.getLanguageId());if(je&&je.markers&&je.markers.start){let Ue=new RegExp(je.markers.start);G(tt,Ue,!0)}}}}class bo extends no{constructor(){super({id:"editor.unfoldAllMarkerRegions",label:we.a("unfoldAllMarkerRegions.label","Unfold All Regions"),alias:"Unfold All Regions",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|30),weight:100}})}invoke(qe,tt,gt){if(tt.regions.hasTypes())B(tt,d.n.Region.value,!1);else{const $e=gt.getModel();if(!$e)return;const je=E.b.getFoldingRules($e.getLanguageId());if(je&&je.markers&&je.markers.start){let Ue=new RegExp(je.markers.start);G(tt,Ue,!1)}}}}class ao extends no{constructor(){super({id:"editor.foldAllExcept",label:we.a("foldAllExcept.label","Fold All Regions Except Selected"),alias:"Fold All Regions Except Selected",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|83),weight:100}})}invoke(qe,tt,gt){let $e=this.getSelectedLines(gt);V(tt,!0,$e)}}class So extends no{constructor(){super({id:"editor.unfoldAllExcept",label:we.a("unfoldAllExcept.label","Unfold All Regions Except Selected"),alias:"Unfold All Regions Except Selected",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|81),weight:100}})}invoke(qe,tt,gt){let $e=this.getSelectedLines(gt);V(tt,!1,$e)}}class Lo extends no{constructor(){super({id:"editor.foldAll",label:we.a("foldAllAction.label","Fold All"),alias:"Fold All",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|21),weight:100}})}invoke(qe,tt,gt){C(tt,!0)}}class xo extends no{constructor(){super({id:"editor.unfoldAll",label:we.a("unfoldAllAction.label","Unfold All"),alias:"Unfold All",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|40),weight:100}})}invoke(qe,tt,gt){C(tt,!1)}}class _o extends no{getFoldingLevel(){return parseInt(this.id.substr(_o.ID_PREFIX.length))}invoke(qe,tt,gt){j(tt,this.getFoldingLevel(),!0,this.getSelectedLines(gt))}}_o.ID_PREFIX="editor.foldLevel",_o.ID=qe=>_o.ID_PREFIX+qe;class to extends no{constructor(){super({id:"editor.gotoParentFold",label:we.a("gotoParentFold.label","Go to Parent Fold"),alias:"Go to Parent Fold",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,weight:100}})}invoke(qe,tt,gt){let $e=this.getSelectedLines(gt);if($e.length>0){let je=z($e[0],tt);je!==null&>.setSelection({startLineNumber:je,startColumn:1,endLineNumber:je,endColumn:1})}}}class Wt extends no{constructor(){super({id:"editor.gotoPreviousFold",label:we.a("gotoPreviousFold.label","Go to Previous Folding Range"),alias:"Go to Previous Folding Range",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,weight:100}})}invoke(qe,tt,gt){let $e=this.getSelectedLines(gt);if($e.length>0){let je=Y($e[0],tt);je!==null&>.setSelection({startLineNumber:je,startColumn:1,endLineNumber:je,endColumn:1})}}}class Ge extends no{constructor(){super({id:"editor.gotoNextFold",label:we.a("gotoNextFold.label","Go to Next Folding Range"),alias:"Go to Next Folding Range",precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,weight:100}})}invoke(qe,tt,gt){let $e=this.getSelectedLines(gt);if($e.length>0){let je=K($e[0],tt);je!==null&>.setSelection({startLineNumber:je,startColumn:1,endLineNumber:je,endColumn:1})}}}Object(f.l)(Pt.ID,Pt),Object(f.j)(lt),Object(f.j)(le),Object(f.j)(Pe),Object(f.j)(Dt),Object(f.j)(Lo),Object(f.j)(xo),Object(f.j)(kt),Object(f.j)(eo),Object(f.j)(bo),Object(f.j)(ao),Object(f.j)(So),Object(f.j)(it),Object(f.j)(to),Object(f.j)(Wt),Object(f.j)(Ge);for(let qe=1;qe<=7;qe++)Object(f.m)(new _o({id:_o.ID(qe),label:we.a("foldLevelAction.label","Fold Level {0}",qe),alias:`Fold Level ${qe}`,precondition:wt,kbOpts:{kbExpr:u.a.editorTextFocus,primary:Object(L.c)(2048|41,2048|21+qe),weight:100}}));const mt=Object(ge.Cc)("editor.foldBackground",{light:Object(ge.Rc)(ge.V,.3),dark:Object(ge.Rc)(ge.V,.3),hc:null},we.a("foldBackgroundBackground","Background color behind folded ranges. The color must not be opaque so as not to hide underlying decorations."),!0),Gt=Object(ge.Cc)("editorGutter.foldingControlForeground",{dark:ge.jb,light:ge.jb,hc:ge.jb},we.a("editorGutter.foldingControlForeground","Color of the folding control in the editor gutter."));Object(ye.f)((qe,tt)=>{const gt=qe.getColor(mt);gt&&tt.addRule(`.monaco-editor .folded-background { background-color: ${gt}; }`);const $e=qe.getColor(Gt);$e&&tt.addRule(` .monaco-editor .cldr${ye.d.asCSSSelector(Te)}, .monaco-editor .cldr${ye.d.asCSSSelector(He)} { color: ${$e} !important; } `)})},e0rL:function(ft,w,e){"use strict";e.d(w,"a",function(){return P}),e.d(w,"b",function(){return L});var h=e("Cg/j");const P=Object(h.c)("textResourceConfigurationService"),L=Object(h.c)("textResourcePropertiesService")},e1ni:function(ft,w,e){},eC1c:function(ft,w,e){},eLzo:function(ft,w,e){"use strict";e.d(w,"a",function(){return L}),e.d(w,"b",function(){return A}),e.d(w,"c",function(){return I}),e.d(w,"e",function(){return O}),e.d(w,"d",function(){return S});var h=e("/cxE"),P=e("EJc0");class L{constructor(f="",u=!1){var d,E,p;if(this.value=f,typeof this.value!="string")throw Object(h.c)("value");typeof u=="boolean"?(this.isTrusted=u,this.supportThemeIcons=!1,this.supportHtml=!1):(this.isTrusted=(d=u.isTrusted)!==null&&d!==void 0?d:void 0,this.supportThemeIcons=(E=u.supportThemeIcons)!==null&&E!==void 0?E:!1,this.supportHtml=(p=u.supportHtml)!==null&&p!==void 0?p:!1)}appendText(f,u=0){return this.value+=k(this.supportThemeIcons?Object(P.a)(f):f).replace(/([ \t]+)/g,(d,E)=>" ".repeat(E.length)).replace(/\>/gm,"\\>").replace(/\n/g,u===1?`\\ `:` `),this}appendMarkdown(f){return this.value+=f,this}appendCodeblock(f,u){return this.value+="\n```",this.value+=f,this.value+=` `,this.value+=u,this.value+="\n```\n",this}}function A(f){return I(f)?!f.value:Array.isArray(f)?f.every(A):!0}function I(f){return f instanceof L?!0:f&&typeof f=="object"?typeof f.value=="string"&&(typeof f.isTrusted=="boolean"||f.isTrusted===void 0)&&(typeof f.supportThemeIcons=="boolean"||f.supportThemeIcons===void 0):!1}function k(f){return f.replace(/[\\`*_{}[\]()#+\-!]/g,"\\$&")}function O(f){return f&&f.replace(/\\([\\`*_{}[\]()#+\-.!])/g,"$1")}function S(f){const u=[],d=f.split("|").map(p=>p.trim());f=d[0];const E=d[1];if(E){const p=/height=(\d+)/.exec(E),n=/width=(\d+)/.exec(E),b=p?p[1]:"",m=n?n[1]:"",c=isFinite(parseInt(m)),l=isFinite(parseInt(b));c&&u.push(`width="${m}"`),l&&u.push(`height="${b}"`)}return{href:f,dimensions:u}}},eUTo:function(ft,w,e){"use strict";e.d(w,"c",function(){return B}),e.d(w,"a",function(){return K}),e.d(w,"b",function(){return Se});var h=e("EffR"),P=e("uDWl"),L=e("7/Ik"),A=e("pg8w"),I=e("8HAY"),k=e("MI8n"),O=e("QMLA");class S extends I.b{constructor(fe,q){super();this._onDidChangeVisibility=this._register(new k.b),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this._element=Object(h.q)(fe,Object(h.a)(".monaco-dropdown")),this._label=Object(h.q)(this._element,Object(h.a)(".dropdown-label"));let te=q.labelRenderer;te||(te=H=>(H.textContent=q.label||"",null));for(const H of[h.d.CLICK,h.d.MOUSE_DOWN,A.a.Tap])this._register(Object(h.i)(this.element,H,W=>h.c.stop(W,!0)));for(const H of[h.d.MOUSE_DOWN,A.a.Tap])this._register(Object(h.i)(this._label,H,W=>{if(W instanceof MouseEvent&&W.detail>1)return;this.visible?this.hide():this.show()}));this._register(Object(h.i)(this._label,h.d.KEY_UP,H=>{const W=new P.a(H);(W.equals(3)||W.equals(10))&&(h.c.stop(H,!0),this.visible?this.hide():this.show())}));const U=te(this._label);U&&this._register(U),this._register(A.b.addTarget(this._label))}get element(){return this._element}show(){this.visible||(this.visible=!0,this._onDidChangeVisibility.fire(!0))}hide(){this.visible&&(this.visible=!1,this._onDidChangeVisibility.fire(!1))}dispose(){super.dispose(),this.hide(),this.boxContainer&&(this.boxContainer.remove(),this.boxContainer=void 0),this.contents&&(this.contents.remove(),this.contents=void 0),this._label&&(this._label.remove(),this._label=void 0)}}class f extends S{constructor(fe,q){super(fe,q);this._actions=[],this._contextMenuProvider=q.contextMenuProvider,this.actions=q.actions||[],this.actionProvider=q.actionProvider,this.menuClassName=q.menuClassName||"",this.menuAsChild=!!q.menuAsChild}set menuOptions(fe){this._menuOptions=fe}get menuOptions(){return this._menuOptions}get actions(){return this.actionProvider?this.actionProvider.getActions():this._actions}set actions(fe){this._actions=fe}show(){super.show(),this.element.classList.add("active"),this._contextMenuProvider.showContextMenu({getAnchor:()=>this.element,getActions:()=>this.actions,getActionsContext:()=>this.menuOptions?this.menuOptions.context:null,getActionViewItem:fe=>this.menuOptions&&this.menuOptions.actionViewItemProvider?this.menuOptions.actionViewItemProvider(fe):void 0,getKeyBinding:fe=>this.menuOptions&&this.menuOptions.getKeyBinding?this.menuOptions.getKeyBinding(fe):void 0,getMenuClassName:()=>this.menuClassName,onHide:()=>this.onHide(),actionRunner:this.menuOptions?this.menuOptions.actionRunner:void 0,anchorAlignment:this.menuOptions?this.menuOptions.anchorAlignment:0,domForShadowRoot:this.menuAsChild?this.element:void 0})}hide(){super.hide()}onHide(){this.hide(),this.element.classList.remove("active")}}class u extends L.b{constructor(fe,q,te,U=Object.create(null)){super(null,fe,U);this.actionItem=null,this._onDidChangeVisibility=this._register(new k.b),this.menuActionsOrProvider=q,this.contextMenuProvider=te,this.options=U,this.options.actionRunner&&(this.actionRunner=this.options.actionRunner)}render(fe){this.actionItem=fe;const q=H=>{this.element=Object(h.q)(H,Object(h.a)("a.action-label"));let W=[];return typeof this.options.classNames=="string"?W=this.options.classNames.split(/\s+/g).filter(ne=>!!ne):this.options.classNames&&(W=this.options.classNames),W.find(ne=>ne==="icon")||W.push("codicon"),this.element.classList.add(...W),this.element.setAttribute("role","button"),this.element.setAttribute("aria-haspopup","true"),this.element.setAttribute("aria-expanded","false"),this.element.title=this._action.label||"",null},te=Array.isArray(this.menuActionsOrProvider),U={contextMenuProvider:this.contextMenuProvider,labelRenderer:q,menuAsChild:this.options.menuAsChild,actions:te?this.menuActionsOrProvider:void 0,actionProvider:te?void 0:this.menuActionsOrProvider};if(this.dropdownMenu=this._register(new f(fe,U)),this._register(this.dropdownMenu.onDidChangeVisibility(H=>{var W;(W=this.element)===null||W===void 0||W.setAttribute("aria-expanded",`${H}`),this._onDidChangeVisibility.fire(H)})),this.dropdownMenu.menuOptions={actionViewItemProvider:this.options.actionViewItemProvider,actionRunner:this.actionRunner,getKeyBinding:this.options.keybindingProvider,context:this._context},this.options.anchorAlignmentProvider){const H=this;this.dropdownMenu.menuOptions=Object.assign(Object.assign({},this.dropdownMenu.menuOptions),{get anchorAlignment(){return H.options.anchorAlignmentProvider()}})}this.updateEnabled()}setActionContext(fe){super.setActionContext(fe),this.dropdownMenu&&(this.dropdownMenu.menuOptions?this.dropdownMenu.menuOptions.context=fe:this.dropdownMenu.menuOptions={context:fe})}updateEnabled(){var fe,q;const te=!this.getAction().enabled;(fe=this.actionItem)===null||fe===void 0||fe.classList.toggle("disabled",te),(q=this.element)===null||q===void 0||q.classList.toggle("disabled",te)}}var d=e("i04g"),E=e("pmY6"),p=e("MNsG"),n=e("r6Ki"),b=e("3/fG"),m=e("fjLI"),c=e("T8No"),l=e("Uzvx"),g=e("Cg/j"),y=e("bexQ"),C=e("sM1p"),v=e("A+jI"),D=e("t9D7"),j=function(fe,q,te,U){var H=arguments.length,W=H<3?q:U===null?U=Object.getOwnPropertyDescriptor(q,te):U,ne;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")W=Reflect.decorate(fe,q,te,U);else for(var Ce=fe.length-1;Ce>=0;Ce--)(ne=fe[Ce])&&(W=(H<3?ne(W):H>3?ne(q,te,W):ne(q,te))||W);return H>3&&W&&Object.defineProperty(q,te,W),W},V=function(fe,q){return function(te,U){q(te,U,fe)}},G=function(fe,q,te,U){function H(W){return W instanceof te?W:new te(function(ne){ne(W)})}return new(te||(te=Promise))(function(W,ne){function Ce(me){try{ce(U.next(me))}catch(Oe){ne(Oe)}}function Le(me){try{ce(U.throw(me))}catch(Oe){ne(Oe)}}function ce(me){me.done?W(me.value):H(me.value).then(Ce,Le)}ce((U=U.apply(fe,q||[])).next())})};function B(fe,q,te,U,H,W,ne){const Ce=fe.getActions(q),Le=typeof U=="string"?ce=>ce===U:U;return Y(Ce,te,!1,Le,H,W,ne),z(Ce)}function z(fe){const q=new E.b;for(const[,te]of fe)for(const U of te)q.add(U);return q}function Y(fe,q,te,U=Ce=>Ce==="navigation",H=Number.MAX_SAFE_INTEGER,W=()=>!1,ne=!1){let Ce,Le;Array.isArray(q)?(Ce=q,Le=q):(Ce=q.primary,Le=q.secondary);const ce=new Set;for(const[me,Oe]of fe){let oe;U(me)?(oe=Ce,oe.length>0&&ne&&oe.push(new I.d)):(oe=Le,oe.length>0&&oe.push(new I.d));for(let De of Oe){te&&(De=De instanceof m.c&&De.alt?De.alt:De);const Ne=oe.push(De);De instanceof I.e&&ce.add({group:me,action:De,index:Ne-1})}}for(const{group:me,action:Oe,index:oe}of ce){const De=U(me)?Ce:Le,Ne=Oe.actions;(Ne.length<=1||De.length+Ne.length-2<=H)&&W(Oe,me,De.length)&&De.splice(oe,1,...Ne)}if(Ce!==Le&&Ce.length>H){const me=Ce.splice(H,Ce.length-H);Le.unshift(...me,new I.d)}}let K=class extends L.a{constructor(q,te,U,H,W){super(void 0,q,{icon:!!(q.class||q.item.icon),label:!q.class&&!q.item.icon,draggable:te==null?void 0:te.draggable});this._keybindingService=U,this._notificationService=H,this._contextKeyService=W,this._wantsAltCommand=!1,this._itemClassDispose=this._register(new E.d),this._altKey=h.e.getInstance()}get _menuItemAction(){return this._action}get _commandAction(){return this._wantsAltCommand&&this._menuItemAction.alt||this._menuItemAction}onClick(q){return G(this,void 0,void 0,function*(){q.preventDefault(),q.stopPropagation();try{yield this.actionRunner.run(this._commandAction,this._context)}catch(te){this._notificationService.error(te)}})}render(q){super.render(q),q.classList.add("menu-entry"),this._updateItemClass(this._menuItemAction.item);let te=!1,U=this._altKey.keyStatus.altKey||(p.i||p.d)&&this._altKey.keyStatus.shiftKey;const H=()=>{const W=te&&U;W!==this._wantsAltCommand&&(this._wantsAltCommand=W,this.updateLabel(),this.updateTooltip(),this.updateClass())};this._menuItemAction.alt&&this._register(this._altKey.event(W=>{U=W.altKey||(p.i||p.d)&&W.shiftKey,H()})),this._register(Object(h.i)(q,"mouseleave",W=>{te=!1,H()})),this._register(Object(h.i)(q,"mouseenter",W=>{te=!0,H()}))}updateLabel(){this.options.label&&this.label&&(this.label.textContent=this._commandAction.label)}updateTooltip(){if(this.label){const q=this._keybindingService.lookupKeybinding(this._commandAction.id,this._contextKeyService),te=q&&q.getLabel(),U=this._commandAction.tooltip||this._commandAction.label;let H=te?Object(b.a)("titleAndKb","{0} ({1})",U,te):U;if(!this._wantsAltCommand&&this._menuItemAction.alt){const W=this._menuItemAction.alt.tooltip||this._menuItemAction.alt.label,ne=this._keybindingService.lookupKeybinding(this._menuItemAction.alt.id,this._contextKeyService),Ce=ne&&ne.getLabel(),Le=Ce?Object(b.a)("titleAndKb","{0} ({1})",W,Ce):W;H+=` [${d.c.modifierLabels[p.a].altKey}] ${Le}`}this.label.title=H}}updateClass(){this.options.icon&&(this._commandAction!==this._menuItemAction?this._menuItemAction.alt&&this._updateItemClass(this._menuItemAction.alt.item):this._menuItemAction.alt&&this._updateItemClass(this._menuItemAction.item))}_updateItemClass(q){var te;this._itemClassDispose.value=void 0;const{element:U,label:H}=this;if(!U||!H)return;const W=this._commandAction.checked&&((te=q.toggled)===null||te===void 0?void 0:te.icon)?q.toggled.icon:q.icon;if(!W)return;if(D.d.isThemeIcon(W)){const ne=D.d.asClassNameArray(W);H.classList.add(...ne),this._itemClassDispose.value=Object(E.i)(()=>{H.classList.remove(...ne)})}else W.light&&H.style.setProperty("--menu-entry-icon-light",Object(h.s)(W.light)),W.dark&&H.style.setProperty("--menu-entry-icon-dark",Object(h.s)(W.dark)),H.classList.add("icon"),this._itemClassDispose.value=Object(E.i)(()=>{H.classList.remove("icon"),H.style.removeProperty("--menu-entry-icon-light"),H.style.removeProperty("--menu-entry-icon-dark")})}};K=j([V(2,y.a),V(3,C.a),V(4,c.b)],K);let Q=class extends u{constructor(q,te,U){var H,W;const ne=Object.assign({},te!=null?te:Object.create(null),{menuAsChild:(H=te==null?void 0:te.menuAsChild)!==null&&H!==void 0?H:!1,classNames:(W=te==null?void 0:te.classNames)!==null&&W!==void 0?W:D.d.isThemeIcon(q.item.icon)?D.d.asClassName(q.item.icon):void 0});super(q,{getActions:()=>q.actions},U,ne)}render(q){if(super.render(q),this.element){q.classList.add("menu-entry");const{icon:te}=this._action.item;te&&!D.d.isThemeIcon(te)&&(this.element.classList.add("icon"),te.light&&this.element.style.setProperty("--menu-entry-icon-light",Object(h.s)(te.light)),te.dark&&this.element.style.setProperty("--menu-entry-icon-dark",Object(h.s)(te.dark)))}}};Q=j([V(2,l.a)],Q);let ee=class extends L.b{constructor(q,te,U,H,W,ne,Ce,Le){var ce,me,Oe;super(null,q);this._keybindingService=U,this._notificationService=H,this._contextMenuService=W,this._menuService=ne,this._instaService=Ce,this._storageService=Le,this._container=null,this._storageKey=`${q.item.submenu._debugName}_lastActionId`;let oe,De=Le.get(this._storageKey,1);De&&(oe=q.actions.find(ve=>De===ve.id)),oe||(oe=q.actions[0]),this._defaultAction=this._instaService.createInstance(K,oe,void 0);const Ne=Object.assign({},te!=null?te:Object.create(null),{menuAsChild:(ce=te==null?void 0:te.menuAsChild)!==null&&ce!==void 0?ce:!0,classNames:(me=te==null?void 0:te.classNames)!==null&&me!==void 0?me:["codicon","codicon-chevron-down"],actionRunner:(Oe=te==null?void 0:te.actionRunner)!==null&&Oe!==void 0?Oe:new I.b});this._dropdown=new u(q,q.actions,this._contextMenuService,Ne),this._dropdown.actionRunner.onDidRun(ve=>{ve.action instanceof m.c&&this.update(ve.action)})}update(q){this._storageService.store(this._storageKey,q.id,1,0),this._defaultAction.dispose(),this._defaultAction=this._instaService.createInstance(K,q,void 0),this._defaultAction.actionRunner=new class extends I.b{runAction(te,U){return G(this,void 0,void 0,function*(){yield te.run(void 0)})}},this._container&&this._defaultAction.render(Object(h.P)(this._container,Object(h.a)(".action-container")))}setActionContext(q){super.setActionContext(q),this._defaultAction.setActionContext(q),this._dropdown.setActionContext(q)}render(q){this._container=q,super.render(this._container),this._container.classList.add("monaco-dropdown-with-default");const te=Object(h.a)(".action-container");this._defaultAction.render(Object(h.q)(this._container,te)),this._register(Object(h.i)(te,h.d.KEY_DOWN,H=>{const W=new P.a(H);W.equals(17)&&(this._defaultAction.element.tabIndex=-1,this._dropdown.focus(),W.stopPropagation())}));const U=Object(h.a)(".dropdown-action-container");this._dropdown.render(Object(h.q)(this._container,U)),this._register(Object(h.i)(U,h.d.KEY_DOWN,H=>{var W;const ne=new P.a(H);ne.equals(15)&&(this._defaultAction.element.tabIndex=0,this._dropdown.setFocusable(!1),(W=this._defaultAction.element)===null||W===void 0||W.focus(),ne.stopPropagation())}))}focus(q){q?this._dropdown.focus():(this._defaultAction.element.tabIndex=0,this._defaultAction.element.focus())}blur(){this._defaultAction.element.tabIndex=-1,this._dropdown.blur(),this._container.blur()}setFocusable(q){q?this._defaultAction.element.tabIndex=0:(this._defaultAction.element.tabIndex=-1,this._dropdown.setFocusable(!1))}dispose(){this._defaultAction.dispose(),this._dropdown.dispose(),super.dispose()}};ee=j([V(2,y.a),V(3,C.a),V(4,l.a),V(5,m.a),V(6,g.a),V(7,v.a)],ee);function Se(fe,q,te){return q instanceof m.c?fe.createInstance(K,q,void 0):q instanceof m.e?q.item.rememberDefaultAction?fe.createInstance(ee,q,te):fe.createInstance(Q,q,te):void 0}},eizg:function(ft,w,e){},ep4t:function(ft,w,e){"use strict";e.r(w),e.d(w,"SuggestController",function(){return Ci}),e.d(w,"TriggerSuggestAction",function(){return on});var h=e("OBOq"),P=e("6OMU"),L=e("X+cX"),A=e("JQT/"),I=e("/cxE"),k=e("MI8n"),O=e("Szf2"),S=e("pmY6"),f=e("MNsG"),u=e("5Y4S"),d=e("746U"),E=e("vATl"),p=e("sswD"),n=e("0/Sa"),b=e("cGHE"),m=e("aokT"),c=e("wQH0"),l=e("tXSY"),g=e("uACm"),y=e("QDVR"),C=e("twdY"),v=e("+7oY"),D=e("9fML"),j=e("Cg/j"),V=e("A+jI"),G=function(vt,Xe,X,Ee){var ke=arguments.length,Ve=ke<3?Xe:Ee===null?Ee=Object.getOwnPropertyDescriptor(Xe,X):Ee,ct;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Ve=Reflect.decorate(vt,Xe,X,Ee);else for(var Et=vt.length-1;Et>=0;Et--)(ct=vt[Et])&&(Ve=(ke<3?ct(Ve):ke>3?ct(Xe,X,Ve):ct(Xe,X))||Ve);return ke>3&&Ve&&Object.defineProperty(Xe,X,Ve),Ve},B=function(vt,Xe){return function(X,Ee){Xe(X,Ee,vt)}};class z{constructor(vt){this.name=vt}select(vt,Xe,X){if(X.length===0)return 0;let Ee=X[0].score[0];for(let ke=0;keEt&&Yt.type===X[qt].completion.kind&&Yt.insertText===X[qt].completion.insertText&&(Et=Yt.touch,ct=qt),X[qt].completion.preselect&&Ve===-1)return Ve=qt}return ct!==-1?ct:Ve!==-1?Ve:0}toJSON(){return this._cache.toJSON()}fromJSON(vt){this._cache.clear();let Xe=0;for(const[X,Ee]of vt)Ee.touch=Xe,Ee.type=typeof Ee.type=="number"?Ee.type:Object(C.H)(Ee.type),this._cache.set(X,Ee);this._seq=this._cache.size}}class Q extends z{constructor(){super("recentlyUsedByPrefix");this._trie=y.c.forStrings(),this._seq=0}memorize(vt,Xe,X){const{word:Ee}=vt.getWordUntilPosition(Xe),ke=`${vt.getLanguageId()}/${Ee}`;this._trie.set(ke,{type:X.completion.kind,insertText:X.completion.insertText,touch:this._seq++})}select(vt,Xe,X){let{word:Ee}=vt.getWordUntilPosition(Xe);if(!Ee)return super.select(vt,Xe,X);let ke=`${vt.getLanguageId()}/${Ee}`,Ve=this._trie.get(ke);if(Ve||(Ve=this._trie.findSubstr(ke)),Ve)for(let ct=0;ctvt.push([X,Xe])),vt.sort((Xe,X)=>-(Xe[1].touch-X[1].touch)).forEach((Xe,X)=>Xe[1].touch=X),vt.slice(0,200)}fromJSON(vt){if(this._trie.clear(),vt.length>0){this._seq=vt[0][1].touch+1;for(const[Xe,X]of vt)X.type=typeof X.type=="number"?X.type:Object(C.H)(X.type),this._trie.set(Xe,X)}}}let ee=class vt{constructor(Xe,X){this._storageService=Xe,this._configService=X,this._disposables=new S.b,this._persistSoon=new L.e(()=>this._saveState(),500),this._disposables.add(Xe.onWillSaveState(Ee=>{Ee.reason===V.c.SHUTDOWN&&this._saveState()}))}dispose(){this._disposables.dispose(),this._persistSoon.dispose()}memorize(Xe,X,Ee){this._withStrategy(Xe,X).memorize(Xe,X,Ee),this._persistSoon.schedule()}select(Xe,X,Ee){return this._withStrategy(Xe,X).select(Xe,X,Ee)}_withStrategy(Xe,X){var Ee;const ke=this._configService.getValue("editor.suggestSelection",{overrideIdentifier:Xe.getLanguageIdAtPosition(X.lineNumber,X.column),resource:Xe.uri});if(((Ee=this._strategy)===null||Ee===void 0?void 0:Ee.name)!==ke){this._saveState();const Ve=vt._strategyCtors.get(ke)||Y;this._strategy=new Ve;try{const ct=this._configService.getValue("editor.suggest.shareSuggestSelections"),Et=ct?0:1,qt=this._storageService.get(`${vt._storagePrefix}/${ke}`,Et);qt&&this._strategy.fromJSON(JSON.parse(qt))}catch(ct){}}return this._strategy}_saveState(){if(this._strategy){const Xe=this._configService.getValue("editor.suggest.shareSuggestSelections"),X=Xe?0:1,Ee=JSON.stringify(this._strategy);this._storageService.store(`${vt._storagePrefix}/${this._strategy.name}`,Ee,X,1)}}};ee._strategyCtors=new Map([["recentlyUsedByPrefix",Q],["recentlyUsed",K],["first",Y]]),ee._storagePrefix="suggest/memories",ee=G([B(0,V.a),B(1,v.a)],ee);const Se=Object(j.c)("ISuggestMemories");Object(D.b)(Se,ee,!0);var fe=e("T8No"),q=function(vt,Xe,X,Ee){var ke=arguments.length,Ve=ke<3?Xe:Ee===null?Ee=Object.getOwnPropertyDescriptor(Xe,X):Ee,ct;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Ve=Reflect.decorate(vt,Xe,X,Ee);else for(var Et=vt.length-1;Et>=0;Et--)(ct=vt[Et])&&(Ve=(ke<3?ct(Ve):ke>3?ct(Xe,X,Ve):ct(Xe,X))||Ve);return ke>3&&Ve&&Object.defineProperty(Xe,X,Ve),Ve},te=function(vt,Xe){return function(X,Ee){Xe(X,Ee,vt)}};let U=class vt{constructor(Xe,X){this._editor=Xe,this._enabled=!1,this._ckAtEnd=vt.AtEnd.bindTo(X),this._configListener=this._editor.onDidChangeConfiguration(Ee=>Ee.hasChanged(110)&&this._update()),this._update()}dispose(){var Xe;this._configListener.dispose(),(Xe=this._selectionListener)===null||Xe===void 0||Xe.dispose(),this._ckAtEnd.reset()}_update(){const Xe=this._editor.getOption(110)==="on";if(this._enabled===Xe)return;if(this._enabled=Xe,this._enabled){const X=()=>{if(!this._editor.hasModel()){this._ckAtEnd.set(!1);return}const Ee=this._editor.getModel(),ke=this._editor.getSelection(),Ve=Ee.getWordAtPosition(ke.getStartPosition());if(!Ve){this._ckAtEnd.set(!1);return}this._ckAtEnd.set(Ve.endColumn===ke.getStartPosition().column)};this._selectionListener=this._editor.onDidChangeCursorSelection(X),X()}else this._selectionListener&&(this._ckAtEnd.reset(),this._selectionListener.dispose(),this._selectionListener=void 0)}};U.AtEnd=new fe.c("atEndOfWord",!1),U=q([te(1,fe.b)],U);var H=e("3/fG"),W=e("fjLI"),ne=e("nnTU"),Ce=e("nrhi"),Le=e("09fa"),ce=e("QVNv"),me=function(vt,Xe,X,Ee){var ke=arguments.length,Ve=ke<3?Xe:Ee===null?Ee=Object.getOwnPropertyDescriptor(Xe,X):Ee,ct;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Ve=Reflect.decorate(vt,Xe,X,Ee);else for(var Et=vt.length-1;Et>=0;Et--)(ct=vt[Et])&&(Ve=(ke<3?ct(Ve):ke>3?ct(Xe,X,Ve):ct(Xe,X))||Ve);return ke>3&&Ve&&Object.defineProperty(Xe,X,Ve),Ve},Oe=function(vt,Xe){return function(X,Ee){Xe(X,Ee,vt)}};let oe=class vt{constructor(Xe,X){this._editor=Xe,this._index=0,this._ckOtherSuggestions=vt.OtherSuggestions.bindTo(X)}dispose(){this.reset()}reset(){var Xe;this._ckOtherSuggestions.reset(),(Xe=this._listener)===null||Xe===void 0||Xe.dispose(),this._model=void 0,this._acceptNext=void 0,this._ignore=!1}set({model:Xe,index:X},Ee){if(Xe.items.length===0){this.reset();return}let ke=vt._moveIndex(!0,Xe,X);if(ke===X){this.reset();return}this._acceptNext=Ee,this._model=Xe,this._index=X,this._listener=this._editor.onDidChangeCursorPosition(()=>{this._ignore||this.reset()}),this._ckOtherSuggestions.set(!0)}static _moveIndex(Xe,X,Ee){let ke=Ee;for(;!(ke=(ke+X.items.length+(Xe?1:-1))%X.items.length,ke===Ee);)if(!X.items[ke].completion.additionalTextEdits)break;return ke}next(){this._move(!0)}prev(){this._move(!1)}_move(Xe){if(!this._model)return;try{this._ignore=!0,this._index=vt._moveIndex(Xe,this._model,this._index),this._acceptNext({index:this._index,item:this._model.items[this._index],model:this._model})}finally{this._ignore=!1}}};oe.OtherSuggestions=new fe.c("hasOtherSuggestions",!1),oe=me([Oe(1,fe.b)],oe);var De=e("MXAL");class Ne{constructor(vt,Xe,X){this._disposables=new S.b,this._disposables.add(Xe.onDidShow(()=>this._onItem(Xe.getFocusedItem()))),this._disposables.add(Xe.onDidFocus(this._onItem,this)),this._disposables.add(Xe.onDidHide(this.reset,this)),this._disposables.add(vt.onWillType(Ee=>{if(this._active&&!Xe.isFrozen()){const ke=Ee.charCodeAt(Ee.length-1);this._active.acceptCharacters.has(ke)&&vt.getOption(0)&&X(this._active.item)}}))}_onItem(vt){if(!vt||!Object(P.n)(vt.item.completion.commitCharacters)){this.reset();return}if(this._active&&this._active.item.item===vt.item)return;const Xe=new De.b;for(const X of vt.item.completion.commitCharacters)X.length>0&&Xe.add(X.charCodeAt(0));this._active={acceptCharacters:Xe,item:vt}}reset(){this._active=void 0}dispose(){this._disposables.dispose()}}var ve=e("N0LK"),re=e("gCVg"),we=e("pAvP"),Ie=e("Z7SF"),ge=function(vt,Xe,X,Ee){function ke(Ve){return Ve instanceof X?Ve:new X(function(ct){ct(Ve)})}return new(X||(X=Promise))(function(Ve,ct){function Et(Yt){try{Xt(Ee.next(Yt))}catch(go){ct(go)}}function qt(Yt){try{Xt(Ee.throw(Yt))}catch(go){ct(go)}}function Xt(Yt){Yt.done?Ve(Yt.value):ke(Yt.value).then(Et,qt)}Xt((Ee=Ee.apply(vt,Xe||[])).next())})};class ye{static create(vt,Xe){return ge(this,void 0,void 0,function*(){if(!Xe.getOption(105).localityBonus)return ye.None;if(!Xe.hasModel())return ye.None;const X=Xe.getModel(),Ee=Xe.getPosition();if(!vt.canComputeWordRanges(X.uri))return ye.None;const[ke]=yield new Ie.a().provideSelectionRanges(X,[Ee]);if(ke.length===0)return ye.None;const Ve=yield vt.computeWordRanges(X.uri,ke[0].range);if(!Ve)return ye.None;const ct=X.getWordUntilPosition(Ee);return delete Ve[ct.word],new class extends ye{distance(Et,qt){if(!Ee.equals(Xe.getPosition()))return 0;if(qt.kind===17)return 2<<20;let Xt=typeof qt.label=="string"?qt.label:qt.label.label,Yt=Ve[Xt];if(Object(P.m)(Yt))return 2<<20;let go=Object(P.d)(Yt,m.a.fromPositions(Et),m.a.compareRangesUsingStarts),F=go>=0?Yt[go]:Yt[Math.max(0,~go-1)],J=ke.length;for(const Fe of ke){if(!m.a.containsRange(Fe.range,F))break;J-=1}return J}}})}}ye.None=new class extends ye{distance(){return 0}};var ze=e("9XeP"),xe=e("XXUj"),Te=e("fpMC");class He{constructor(vt,Xe){this.leadingLineContent=vt,this.characterCountDelta=Xe}}class st{constructor(vt,Xe,X,Ee,ke,Ve,ct){this.clipboardText=ct,this._snippetCompareFn=st._compareCompletionItems,this._items=vt,this._column=Xe,this._wordDistance=Ee,this._options=ke,this._refilterKind=1,this._lineContext=X,Ve==="top"?this._snippetCompareFn=st._compareCompletionItemsSnippetsUp:Ve==="bottom"&&(this._snippetCompareFn=st._compareCompletionItemsSnippetsDown)}get lineContext(){return this._lineContext}set lineContext(vt){(this._lineContext.leadingLineContent!==vt.leadingLineContent||this._lineContext.characterCountDelta!==vt.characterCountDelta)&&(this._refilterKind=this._lineContext.characterCountDelta2e3?Te.d:Te.e;for(let qt=0;qt=go)Xt.score=Te.a.Default;else if(typeof Xt.completion.filterText=="string"){let J=Et(Ee,ke,F,Xt.completion.filterText,Xt.filterTextLow,0,!1);if(!J)continue;Object(ve.g)(Xt.completion.filterText,Xt.textLabel)===0?Xt.score=J:(Xt.score=Object(Te.b)(Ee,ke,F,Xt.textLabel,Xt.labelLow,0),Xt.score[0]=J[0])}else{let J=Et(Ee,ke,F,Xt.textLabel,Xt.labelLow,0,!1);if(!J)continue;Xt.score=J}}Xt.idx=qt,Xt.distance=this._wordDistance.distance(Xt.position,Xt.completion),ct.push(Xt),vt.push(Xt.textLabel.length)}this._filteredItems=ct.sort(this._snippetCompareFn),this._refilterKind=0,this._stats={pLabelLen:vt.length?Object(P.q)(vt.length-.85,vt,(qt,Xt)=>qt-Xt):0}}static _compareCompletionItems(vt,Xe){return vt.score[0]>Xe.score[0]?-1:vt.score[0]Xe.distance?1:vt.idxXe.idx?1:0}static _compareCompletionItemsSnippetsDown(vt,Xe){if(vt.completion.kind!==Xe.completion.kind){if(vt.completion.kind===27)return 1;if(Xe.completion.kind===27)return-1}return st._compareCompletionItems(vt,Xe)}static _compareCompletionItemsSnippetsUp(vt,Xe){if(vt.completion.kind!==Xe.completion.kind){if(vt.completion.kind===27)return-1;if(Xe.completion.kind===27)return 1}return st._compareCompletionItems(vt,Xe)}}var nt=function(vt,Xe,X,Ee){var ke=arguments.length,Ve=ke<3?Xe:Ee===null?Ee=Object.getOwnPropertyDescriptor(Xe,X):Ee,ct;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Ve=Reflect.decorate(vt,Xe,X,Ee);else for(var Et=vt.length-1;Et>=0;Et--)(ct=vt[Et])&&(Ve=(ke<3?ct(Ve):ke>3?ct(Xe,X,Ve):ct(Xe,X))||Ve);return ke>3&&Ve&&Object.defineProperty(Xe,X,Ve),Ve},rt=function(vt,Xe){return function(X,Ee){Xe(X,Ee,vt)}},wt=function(vt,Xe,X,Ee){function ke(Ve){return Ve instanceof X?Ve:new X(function(ct){ct(Ve)})}return new(X||(X=Promise))(function(Ve,ct){function Et(Yt){try{Xt(Ee.next(Yt))}catch(go){ct(go)}}function qt(Yt){try{Xt(Ee.throw(Yt))}catch(go){ct(go)}}function Xt(Yt){Yt.done?Ve(Yt.value):ke(Yt.value).then(Et,qt)}Xt((Ee=Ee.apply(vt,Xe||[])).next())})};class Pt{constructor(vt,Xe,X,Ee){this.leadingLineContent=vt.getLineContent(Xe.lineNumber).substr(0,Xe.column-1),this.leadingWord=vt.getWordUntilPosition(Xe),this.lineNumber=Xe.lineNumber,this.column=Xe.column,this.auto=X,this.shy=Ee}static shouldAutoTrigger(vt){if(!vt.hasModel())return!1;const Xe=vt.getModel(),X=vt.getPosition();Xe.tokenizeIfCheap(X.lineNumber);const Ee=Xe.getWordAtPosition(X);return Ee?Ee.endColumn!==X.column?!1:!!isNaN(Number(Ee.word)):!1}}function no(vt){return vt.getOption(105).preview}function ht(vt,Xe,X){if(!Boolean(Xe.getContextKeyValue("inlineSuggestionVisible")))return!0;const Ee=X.getValue("editor.inlineSuggest.allowQuickSuggestions");return Ee!==void 0?Boolean(Ee):!1}function lt(vt,Xe,X){if(!Boolean(Xe.getContextKeyValue("inlineSuggestionVisible")))return!0;const Ee=X.getValue("editor.inlineSuggest.allowSuggestOnTriggerCharacters");return Ee!==void 0?Boolean(Ee):!1}let le=class vt{constructor(Xe,X,Ee,ke,Ve,ct,Et){this._editor=Xe,this._editorWorkerService=X,this._clipboardService=Ee,this._telemetryService=ke,this._logService=Ve,this._contextKeyService=ct,this._configurationService=Et,this._toDispose=new S.b,this._quickSuggestDelay=10,this._triggerCharacterListener=new S.b,this._triggerQuickSuggest=new L.g,this._state=0,this._completionDisposables=new S.b,this._onDidCancel=new k.b,this._onDidTrigger=new k.b,this._onDidSuggest=new k.b,this.onDidCancel=this._onDidCancel.event,this.onDidTrigger=this._onDidTrigger.event,this.onDidSuggest=this._onDidSuggest.event,this._telemetryGate=0,this._currentSelection=this._editor.getSelection()||new re.a(1,1,1,1),this._toDispose.add(this._editor.onDidChangeModel(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeModelLanguage(()=>{this._updateTriggerCharacters(),this.cancel()})),this._toDispose.add(this._editor.onDidChangeConfiguration(()=>{this._updateTriggerCharacters(),this._updateQuickSuggest()})),this._toDispose.add(C.d.onDidChange(()=>{this._updateTriggerCharacters(),this._updateActiveSuggestSession()})),this._toDispose.add(this._editor.onDidChangeCursorSelection(Xt=>{this._onCursorChange(Xt)}));let qt=!1;this._toDispose.add(this._editor.onDidCompositionStart(()=>{qt=!0})),this._toDispose.add(this._editor.onDidCompositionEnd(()=>{qt=!1,this._onCompositionEnd()})),this._toDispose.add(this._editor.onDidChangeModelContent(()=>{qt||this._refilterCompletionItems()})),this._updateTriggerCharacters(),this._updateQuickSuggest()}dispose(){Object(S.f)(this._triggerCharacterListener),Object(S.f)([this._onDidCancel,this._onDidSuggest,this._onDidTrigger,this._triggerQuickSuggest]),this._toDispose.dispose(),this._completionDisposables.dispose(),this.cancel()}_updateQuickSuggest(){this._quickSuggestDelay=this._editor.getOption(79),(isNaN(this._quickSuggestDelay)||!this._quickSuggestDelay&&this._quickSuggestDelay!==0||this._quickSuggestDelay<0)&&(this._quickSuggestDelay=10)}_updateTriggerCharacters(){if(this._triggerCharacterListener.clear(),this._editor.getOption(80)||!this._editor.hasModel()||!this._editor.getOption(108))return;const Xe=new Map;for(const Ee of C.d.all(this._editor.getModel()))for(const ke of Ee.triggerCharacters||[]){let Ve=Xe.get(ke);Ve||(Ve=new Set,Ve.add(Object(ce.c)()),Xe.set(ke,Ve)),Ve.add(Ee)}const X=Ee=>{if(!lt(this._editor,this._contextKeyService,this._configurationService))return;if(Pt.shouldAutoTrigger(this._editor))return;if(!Ee){const ct=this._editor.getPosition(),Et=this._editor.getModel();Ee=Et.getLineContent(ct.lineNumber).substr(0,ct.column-1)}let ke="";Object(ve.F)(Ee.charCodeAt(Ee.length-1))?Object(ve.E)(Ee.charCodeAt(Ee.length-2))&&(ke=Ee.substr(Ee.length-2)):ke=Ee.charAt(Ee.length-1);const Ve=Xe.get(ke);if(Ve){const ct=this._completionModel?{items:this._completionModel.adopt(Ve),clipboardText:this._completionModel.clipboardText}:void 0;this.trigger({auto:!0,shy:!1,triggerCharacter:ke},Boolean(this._completionModel),Ve,ct)}};this._triggerCharacterListener.add(this._editor.onDidType(X)),this._triggerCharacterListener.add(this._editor.onDidCompositionEnd(X))}get state(){return this._state}cancel(Xe=!1){var X;this._state!==0&&(this._triggerQuickSuggest.cancel(),(X=this._requestToken)===null||X===void 0||X.cancel(),this._requestToken=void 0,this._state=0,this._completionModel=void 0,this._context=void 0,this._onDidCancel.fire({retrigger:Xe}))}clear(){this._completionDisposables.clear()}_updateActiveSuggestSession(){this._state!==0&&(!this._editor.hasModel()||!C.d.has(this._editor.getModel())?this.cancel():this.trigger({auto:this._state===2,shy:!1},!0))}_onCursorChange(Xe){if(!this._editor.hasModel())return;const X=this._currentSelection;if(this._currentSelection=this._editor.getSelection(),!Xe.selection.isEmpty()||Xe.reason!==0&&Xe.reason!==3||Xe.source!=="keyboard"&&Xe.source!=="deleteLeft"){this.cancel();return}this._state===0&&Xe.reason===0?(X.containsRange(this._currentSelection)||X.getEndPosition().isBeforeOrEqual(this._currentSelection.getPosition()))&&this._doTriggerQuickSuggest():this._state!==0&&Xe.reason===3&&this._refilterCompletionItems()}_onCompositionEnd(){this._state===0?this._doTriggerQuickSuggest():this._refilterCompletionItems()}_doTriggerQuickSuggest(){if(this._editor.getOption(78)===!1)return;if(this._editor.getOption(105).snippetsPreventQuickSuggestions&&l.SnippetController2.get(this._editor).isInSnippet())return;this.cancel(),this._triggerQuickSuggest.cancelAndSet(()=>{if(this._state!==0)return;if(!Pt.shouldAutoTrigger(this._editor))return;if(!this._editor.hasModel())return;const Xe=this._editor.getModel(),X=this._editor.getPosition(),Ee=this._editor.getOption(78);if(Ee===!1)return;if(!(Ee===!0)){Xe.tokenizeIfCheap(X.lineNumber);const ke=Xe.getLineTokens(X.lineNumber),Ve=ke.getStandardTokenType(ke.findTokenIndexAtOffset(Math.max(X.column-1-1,0))),ct=Ee.other&&Ve===0||Ee.comments&&Ve===1||Ee.strings&&Ve===2;if(!ct)return}if(!ht(this._editor,this._contextKeyService,this._configurationService))return;if(!C.d.has(Xe))return;this.trigger({auto:!0,shy:!1})},this._quickSuggestDelay)}_refilterCompletionItems(){Promise.resolve().then(()=>{if(this._state===0)return;if(!this._editor.hasModel())return;const Xe=this._editor.getModel(),X=this._editor.getPosition(),Ee=new Pt(Xe,X,this._state===2,!1);this._onNewContext(Ee)})}trigger(Xe,X=!1,Ee,ke){var Ve;if(!this._editor.hasModel())return;const ct=this._editor.getModel(),Et=Xe.auto,qt=new Pt(ct,this._editor.getPosition(),Et,Xe.shy);this.cancel(X),this._state=Et?2:1,this._onDidTrigger.fire({auto:Et,shy:Xe.shy,position:this._editor.getPosition()}),this._context=qt;let Xt={triggerKind:(Ve=Xe.triggerKind)!==null&&Ve!==void 0?Ve:0};Xe.triggerCharacter&&(Xt={triggerKind:1,triggerCharacter:Xe.triggerCharacter}),this._requestToken=new A.b;const Yt=this._editor.getOption(100);let go=1;switch(Yt){case"top":go=0;break;case"bottom":go=2;break}const{itemKind:F,showDeprecated:J}=vt._createSuggestFilter(this._editor),Fe=ye.create(this._editorWorkerService,this._editor),Ze=Object(ce.e)(ct,this._editor.getPosition(),new ce.a(go,F,Ee,J),Xt,this._requestToken.token);Promise.all([Ze,Fe]).then(([St,It])=>wt(this,void 0,void 0,function*(){var Vt;if((Vt=this._requestToken)===null||Vt===void 0||Vt.dispose(),!this._editor.hasModel())return;let io=ke==null?void 0:ke.clipboardText;if(!io&&St.needsClipboard&&(io=yield this._clipboardService.readText()),this._state===0)return;const ho=this._editor.getModel();let mo=St.items;if(ke){const Io=Object(ce.d)(go);mo=mo.concat(ke.items).sort(Io)}const yo=new Pt(ho,this._editor.getPosition(),Et,Xe.shy);this._completionModel=new st(mo,this._context.column,{leadingLineContent:yo.leadingLineContent,characterCountDelta:yo.column-this._context.column},It,this._editor.getOption(105),this._editor.getOption(100),io),this._completionDisposables.add(St.disposable),this._onNewContext(yo),this._reportDurationsTelemetry(St.durations)})).catch(I.f)}_reportDurationsTelemetry(Xe){if(this._telemetryGate++%230!==0)return;setTimeout(()=>{this._telemetryService.publicLog2("suggest.durations.json",{data:JSON.stringify(Xe)}),this._logService.debug("suggest.durations.json",Xe)})}static _createSuggestFilter(Xe){const X=new Set,Ee=Xe.getOption(100);Ee==="none"&&X.add(27);const ke=Xe.getOption(105);return ke.showMethods||X.add(0),ke.showFunctions||X.add(1),ke.showConstructors||X.add(2),ke.showFields||X.add(3),ke.showVariables||X.add(4),ke.showClasses||X.add(5),ke.showStructs||X.add(6),ke.showInterfaces||X.add(7),ke.showModules||X.add(8),ke.showProperties||X.add(9),ke.showEvents||X.add(10),ke.showOperators||X.add(11),ke.showUnits||X.add(12),ke.showValues||X.add(13),ke.showConstants||X.add(14),ke.showEnums||X.add(15),ke.showEnumMembers||X.add(16),ke.showKeywords||X.add(17),ke.showWords||X.add(18),ke.showColors||X.add(19),ke.showFiles||X.add(20),ke.showReferences||X.add(21),ke.showColors||X.add(22),ke.showFolders||X.add(23),ke.showTypeParameters||X.add(24),ke.showSnippets||X.add(27),ke.showUsers||X.add(25),ke.showIssues||X.add(26),{itemKind:X,showDeprecated:ke.showDeprecated}}_onNewContext(Xe){if(!this._context)return;if(Xe.lineNumber!==this._context.lineNumber){this.cancel();return}if(Object(ve.x)(Xe.leadingLineContent)!==Object(ve.x)(this._context.leadingLineContent)){this.cancel();return}if(Xe.columnthis._context.leadingWord.startColumn){const X=new Set(C.d.all(this._editor.getModel()));for(let ke of this._completionModel.allProvider)X.delete(ke);const Ee=this._completionModel.adopt(new Set);this.trigger({auto:this._context.auto,shy:!1},!0,X,{items:Ee,clipboardText:this._completionModel.clipboardText});return}if(Xe.column>this._context.column&&this._completionModel.incomplete.size>0&&Xe.leadingWord.word.length!==0){const{incomplete:X}=this._completionModel,Ee=this._completionModel.adopt(X);this.trigger({auto:this._state===2,shy:!1,triggerKind:2},!0,X,{items:Ee,clipboardText:this._completionModel.clipboardText})}else{let X=this._completionModel.lineContext,Ee=!1;if(this._completionModel.lineContext={leadingLineContent:Xe.leadingLineContent,characterCountDelta:Xe.column-this._context.column},this._completionModel.items.length===0){if(Pt.shouldAutoTrigger(this._editor)&&this._context.leadingWord.endColumn0,Ee&&Xe.leadingWord.word.length===0){this.cancel();return}}this._onDidSuggest.fire({completionModel:this._completionModel,auto:this._context.auto,shy:this._context.shy,isFrozen:Ee})}}};le=nt([rt(1,we.a),rt(2,ze.a),rt(3,xe.a),rt(4,Le.b),rt(5,fe.b),rt(6,v.a)],le);class Pe{constructor(vt,Xe){this._disposables=new S.b,this._lastOvertyped=[],this._empty=!0,this._disposables.add(vt.onWillType(()=>{if(!this._empty)return;if(!vt.hasModel())return;const X=vt.getSelections(),Ee=X.length;let ke=!1;for(let ct=0;ctPe._maxSelectionLength)return;this._lastOvertyped[ct]={value:Ve.getValueInRange(Et),multiline:Et.startLineNumber!==Et.endLineNumber}}this._empty=!1})),this._disposables.add(Xe.onDidCancel(X=>{!this._empty&&!X.retrigger&&(this._empty=!0)}))}getLastOvertypedInfo(vt){return!this._empty&&vt>=0&&vt=0;Et--)(ct=vt[Et])&&(Ve=(ke<3?ct(Ve):ke>3?ct(Xe,X,Ve):ct(Xe,X))||Ve);return ke>3&&Ve&&Object.defineProperty(Xe,X,Ve),Ve},_o=function(vt,Xe){return function(X,Ee){Xe(X,Ee,vt)}};class to extends Lo.a{updateLabel(){const vt=this._keybindingService.lookupKeybinding(this._action.id,this._contextKeyService);if(!vt)return super.updateLabel();this.label&&(this.label.textContent=Object(H.a)("ddd","{0} ({1})",this._action.label,to.symbolPrintEnter(vt)))}static symbolPrintEnter(vt){var Xe;return(Xe=vt.getLabel())===null||Xe===void 0?void 0:Xe.replace(/\benter\b/gi,"\u23CE")}}let Wt=class{constructor(Xe,X,Ee,ke){this._menuService=Ee,this._contextKeyService=ke,this._menuDisposables=new S.b,this.element=it.q(Xe,it.a(".suggest-status-bar"));const Ve=ct=>ct instanceof W.c?X.createInstance(to,ct,void 0):void 0;this._leftActions=new So.a(this.element,{actionViewItemProvider:Ve}),this._rightActions=new So.a(this.element,{actionViewItemProvider:Ve}),this._leftActions.domNode.classList.add("left"),this._rightActions.domNode.classList.add("right")}dispose(){this._menuDisposables.dispose(),this.element.remove()}show(){const Xe=this._menuService.createMenu(ce.g,this._contextKeyService),X=()=>{const Ee=[],ke=[];for(let[Ve,ct]of Xe.getActions())Ve==="left"?Ee.push(...ct):ke.push(...ct);this._leftActions.clear(),this._leftActions.push(Ee),this._rightActions.clear(),this._rightActions.push(ke)};this._menuDisposables.add(Xe.onDidChange(()=>X())),this._menuDisposables.add(Xe)}hide(){this._menuDisposables.clear()}};Wt=xo([_o(1,j.a),_o(2,W.a),_o(3,fe.b)],Wt);var Ge=e("28lO"),mt=e("MD5Z"),Gt=e("ptcw"),qe=e("t9D7"),tt=e("cMOf");class gt{constructor(){this._onDidWillResize=new k.b,this.onDidWillResize=this._onDidWillResize.event,this._onDidResize=new k.b,this.onDidResize=this._onDidResize.event,this._sashListener=new S.b,this._size=new it.b(0,0),this._minSize=new it.b(0,0),this._maxSize=new it.b(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER),this.domNode=document.createElement("div"),this._eastSash=new tt.b(this.domNode,{getVerticalSashLeft:()=>this._size.width},{orientation:0}),this._westSash=new tt.b(this.domNode,{getVerticalSashLeft:()=>0},{orientation:0}),this._northSash=new tt.b(this.domNode,{getHorizontalSashTop:()=>0},{orientation:1,orthogonalEdge:tt.a.North}),this._southSash=new tt.b(this.domNode,{getHorizontalSashTop:()=>this._size.height},{orientation:1,orthogonalEdge:tt.a.South}),this._northSash.orthogonalStartSash=this._westSash,this._northSash.orthogonalEndSash=this._eastSash,this._southSash.orthogonalStartSash=this._westSash,this._southSash.orthogonalEndSash=this._eastSash;let vt,Xe=0,X=0;this._sashListener.add(k.c.any(this._northSash.onDidStart,this._eastSash.onDidStart,this._southSash.onDidStart,this._westSash.onDidStart)(()=>{vt===void 0&&(this._onDidWillResize.fire(),vt=this._size,Xe=0,X=0)})),this._sashListener.add(k.c.any(this._northSash.onDidEnd,this._eastSash.onDidEnd,this._southSash.onDidEnd,this._westSash.onDidEnd)(()=>{vt!==void 0&&(vt=void 0,Xe=0,X=0,this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(this._eastSash.onDidChange(Ee=>{vt&&(X=Ee.currentX-Ee.startX,this.layout(vt.height+Xe,vt.width+X),this._onDidResize.fire({dimension:this._size,done:!1,east:!0}))})),this._sashListener.add(this._westSash.onDidChange(Ee=>{vt&&(X=-(Ee.currentX-Ee.startX),this.layout(vt.height+Xe,vt.width+X),this._onDidResize.fire({dimension:this._size,done:!1,west:!0}))})),this._sashListener.add(this._northSash.onDidChange(Ee=>{vt&&(Xe=-(Ee.currentY-Ee.startY),this.layout(vt.height+Xe,vt.width+X),this._onDidResize.fire({dimension:this._size,done:!1,north:!0}))})),this._sashListener.add(this._southSash.onDidChange(Ee=>{vt&&(Xe=Ee.currentY-Ee.startY,this.layout(vt.height+Xe,vt.width+X),this._onDidResize.fire({dimension:this._size,done:!1,south:!0}))})),this._sashListener.add(k.c.any(this._eastSash.onDidReset,this._westSash.onDidReset)(Ee=>{this._preferredSize&&(this.layout(this._size.height,this._preferredSize.width),this._onDidResize.fire({dimension:this._size,done:!0}))})),this._sashListener.add(k.c.any(this._northSash.onDidReset,this._southSash.onDidReset)(Ee=>{this._preferredSize&&(this.layout(this._preferredSize.height,this._size.width),this._onDidResize.fire({dimension:this._size,done:!0}))}))}dispose(){this._northSash.dispose(),this._southSash.dispose(),this._eastSash.dispose(),this._westSash.dispose(),this._sashListener.dispose(),this._onDidResize.dispose(),this._onDidWillResize.dispose(),this.domNode.remove()}enableSashes(vt,Xe,X,Ee){this._northSash.state=vt?3:0,this._eastSash.state=Xe?3:0,this._southSash.state=X?3:0,this._westSash.state=Ee?3:0}layout(vt=this.size.height,Xe=this.size.width){const{height:X,width:Ee}=this._minSize,{height:ke,width:Ve}=this._maxSize;vt=Math.max(X,Math.min(ke,vt)),Xe=Math.max(Ee,Math.min(Ve,Xe));const ct=new it.b(Xe,vt);it.b.equals(ct,this._size)||(this.domNode.style.height=vt+"px",this.domNode.style.width=Xe+"px",this._size=ct,this._northSash.layout(),this._eastSash.layout(),this._southSash.layout(),this._westSash.layout())}clearSashHoverState(){this._eastSash.clearSashHoverState(),this._westSash.clearSashHoverState(),this._northSash.clearSashHoverState(),this._southSash.clearSashHoverState()}get size(){return this._size}set maxSize(vt){this._maxSize=vt}get maxSize(){return this._maxSize}set minSize(vt){this._minSize=vt}get minSize(){return this._minSize}set preferredSize(vt){this._preferredSize=vt}get preferredSize(){return this._preferredSize}}var $e=e("D3Dy"),je=e("GJhM"),Ue=e("Vhoy"),Ye=e("eLzo"),Mt=e("v6HE"),Bt=e("/UlZ"),$t=function(vt,Xe,X,Ee){var ke=arguments.length,Ve=ke<3?Xe:Ee===null?Ee=Object.getOwnPropertyDescriptor(Xe,X):Ee,ct;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Ve=Reflect.decorate(vt,Xe,X,Ee);else for(var Et=vt.length-1;Et>=0;Et--)(ct=vt[Et])&&(Ve=(ke<3?ct(Ve):ke>3?ct(Xe,X,Ve):ct(Xe,X))||Ve);return ke>3&&Ve&&Object.defineProperty(Xe,X,Ve),Ve},uo=function(vt,Xe){return function(X,Ee){Xe(X,Ee,vt)}};function Zt(vt){return!!vt&&Boolean(vt.completion.documentation||vt.completion.detail&&vt.completion.detail!==vt.completion.label)}let zt=class{constructor(Xe,X){this._editor=Xe,this._onDidClose=new k.b,this.onDidClose=this._onDidClose.event,this._onDidChangeContents=new k.b,this.onDidChangeContents=this._onDidChangeContents.event,this._disposables=new S.b,this._renderDisposeable=new S.b,this._borderWidth=1,this._size=new it.b(330,0),this.domNode=it.a(".suggest-details"),this.domNode.classList.add("no-docs"),this._markdownRenderer=X.createInstance(Mt.a,{editor:Xe}),this._body=it.a(".body"),this._scrollbar=new je.a(this._body,{}),it.q(this.domNode,this._scrollbar.getDomNode()),this._disposables.add(this._scrollbar),this._header=it.q(this._body,it.a(".header")),this._close=it.q(this._header,it.a("span"+Ue.b.close.cssSelector)),this._close.title=H.a("details.close","Close"),this._type=it.q(this._header,it.a("p.type")),this._docs=it.q(this._body,it.a("p.docs")),this._configureFont(),this._disposables.add(this._editor.onDidChangeConfiguration(Ee=>{Ee.hasChanged(43)&&this._configureFont()}))}dispose(){this._disposables.dispose(),this._renderDisposeable.dispose()}_configureFont(){const Xe=this._editor.getOptions(),X=Xe.get(43),Ee=X.getMassagedFontFamily($e.h?Bt.c.fontFamily:null),ke=Xe.get(106)||X.fontSize,Ve=Xe.get(107)||X.lineHeight,ct=X.fontWeight,Et=`${ke}px`,qt=`${Ve}px`;this.domNode.style.fontSize=Et,this.domNode.style.lineHeight=`${Ve/ke}`,this.domNode.style.fontWeight=ct,this.domNode.style.fontFeatureSettings=X.fontFeatureSettings,this._type.style.fontFamily=Ee,this._close.style.height=qt,this._close.style.width=qt}getLayoutInfo(){const Xe=this._editor.getOption(107)||this._editor.getOption(43).lineHeight,X=this._borderWidth,Ee=X*2;return{lineHeight:Xe,borderWidth:X,borderHeight:Ee,verticalPadding:22,horizontalPadding:14}}renderLoading(){this._type.textContent=H.a("loading","Loading..."),this._docs.textContent="",this.domNode.classList.remove("no-docs","no-type"),this.layout(this.size.width,this.getLayoutInfo().lineHeight*2),this._onDidChangeContents.fire(this)}renderItem(Xe,X){var Ee,ke;this._renderDisposeable.clear();let{detail:Ve,documentation:ct}=Xe.completion;if(X){let Et="";Et+=`score: ${Xe.score[0]} `,Et+=`prefix: ${(Ee=Xe.word)!==null&&Ee!==void 0?Ee:"(no prefix)"} `,Et+=`word: ${Xe.completion.filterText?Xe.completion.filterText+" (filterText)":Xe.textLabel} `,Et+=`distance: ${Xe.distance} (localityBonus-setting) `,Et+=`index: ${Xe.idx}, based on ${Xe.completion.sortText&&`sortText: "${Xe.completion.sortText}"`||"label"} `,Et+=`commit_chars: ${(ke=Xe.completion.commitCharacters)===null||ke===void 0?void 0:ke.join("")} `,ct=new Ye.a().appendCodeblock("empty",Et),Ve=`Provider: ${Xe.provider._debugDisplayName}`}if(!X&&!Zt(Xe)){this.clearContents();return}if(this.domNode.classList.remove("no-docs","no-type"),Ve){const Et=Ve.length>1e5?`${Ve.substr(0,1e5)}\u2026`:Ve;this._type.textContent=Et,this._type.title=Et,it.W(this._type),this._type.classList.toggle("auto-wrap",!/\r?\n^\s+/gmi.test(Et))}else it.t(this._type),this._type.title="",it.K(this._type),this.domNode.classList.add("no-type");if(it.t(this._docs),typeof ct=="string")this._docs.classList.remove("markdown-docs"),this._docs.textContent=ct;else if(ct){this._docs.classList.add("markdown-docs"),it.t(this._docs);const Et=this._markdownRenderer.render(ct);this._docs.appendChild(Et.element),this._renderDisposeable.add(Et),this._renderDisposeable.add(this._markdownRenderer.onDidRenderAsync(()=>{this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}))}this.domNode.style.userSelect="text",this.domNode.tabIndex=-1,this._close.onmousedown=Et=>{Et.preventDefault(),Et.stopPropagation()},this._close.onclick=Et=>{Et.preventDefault(),Et.stopPropagation(),this._onDidClose.fire()},this._body.scrollTop=0,this.layout(this._size.width,this._type.clientHeight+this._docs.clientHeight),this._onDidChangeContents.fire(this)}clearContents(){this.domNode.classList.add("no-docs"),this._type.textContent="",this._docs.textContent=""}get size(){return this._size}layout(Xe,X){const Ee=new it.b(Xe,X);it.b.equals(Ee,this._size)||(this._size=Ee,it.X(this.domNode,Xe,X)),this._scrollbar.scanDomNode()}scrollDown(Xe=8){this._body.scrollTop+=Xe}scrollUp(Xe=8){this._body.scrollTop-=Xe}scrollTop(){this._body.scrollTop=0}scrollBottom(){this._body.scrollTop=this._body.scrollHeight}pageDown(){this.scrollDown(80)}pageUp(){this.scrollUp(80)}set borderWidth(Xe){this._borderWidth=Xe}get borderWidth(){return this._borderWidth}};zt=$t([uo(1,j.a)],zt);class ut{constructor(vt,Xe){this.widget=vt,this._editor=Xe,this._disposables=new S.b,this._added=!1,this._resizable=new gt,this._resizable.domNode.classList.add("suggest-details-container"),this._resizable.domNode.appendChild(vt.domNode),this._resizable.enableSashes(!1,!0,!0,!1);let X,Ee,ke=0,Ve=0;this._disposables.add(this._resizable.onDidWillResize(()=>{X=this._topLeft,Ee=this._resizable.size})),this._disposables.add(this._resizable.onDidResize(ct=>{if(X&&Ee){this.widget.layout(ct.dimension.width,ct.dimension.height);let Et=!1;ct.west&&(Ve=Ee.width-ct.dimension.width,Et=!0),ct.north&&(ke=Ee.height-ct.dimension.height,Et=!0),Et&&this._applyTopLeft({top:X.top+ke,left:X.left+Ve})}ct.done&&(X=void 0,Ee=void 0,ke=0,Ve=0,this._userSize=ct.dimension)})),this._disposables.add(this.widget.onDidChangeContents(()=>{var ct;this._anchorBox&&this._placeAtAnchor(this._anchorBox,(ct=this._userSize)!==null&&ct!==void 0?ct:this.widget.size)}))}dispose(){this._resizable.dispose(),this._disposables.dispose(),this.hide()}getId(){return"suggest.details"}getDomNode(){return this._resizable.domNode}getPosition(){return null}show(){this._added||(this._editor.addOverlayWidget(this),this.getDomNode().style.position="fixed",this._added=!0)}hide(vt=!1){this._resizable.clearSashHoverState(),this._added&&(this._editor.removeOverlayWidget(this),this._added=!1,this._anchorBox=void 0,this._topLeft=void 0),vt&&(this._userSize=void 0,this.widget.clearContents())}placeAtAnchor(vt){var Xe;const X=it.D(vt);this._anchorBox=X,this._placeAtAnchor(this._anchorBox,(Xe=this._userSize)!==null&&Xe!==void 0?Xe:this.widget.size)}_placeAtAnchor(vt,Xe){var X;const Ee=it.z(document.body),ke=this.widget.getLayoutInfo(),Ve=new it.b(220,2*ke.lineHeight),ct=vt.top,Et=function(){const It=Ee.width-(vt.left+vt.width+ke.borderWidth+ke.horizontalPadding),Vt=-ke.borderWidth+vt.left+vt.width,io=new it.b(It,Ee.height-vt.top-ke.borderHeight-ke.verticalPadding),ho=io.with(void 0,vt.top+vt.height-ke.borderHeight-ke.verticalPadding);return{top:ct,left:Vt,fit:It-Xe.width,maxSizeTop:io,maxSizeBottom:ho,minSize:Ve.with(Math.min(It,Ve.width))}}(),qt=function(){const It=vt.left-ke.borderWidth-ke.horizontalPadding,Vt=Math.max(ke.horizontalPadding,vt.left-Xe.width-ke.borderWidth),io=new it.b(It,Ee.height-vt.top-ke.borderHeight-ke.verticalPadding),ho=io.with(void 0,vt.top+vt.height-ke.borderHeight-ke.verticalPadding);return{top:ct,left:Vt,fit:It-Xe.width,maxSizeTop:io,maxSizeBottom:ho,minSize:Ve.with(Math.min(It,Ve.width))}}(),Xt=function(){const It=vt.left,Vt=-ke.borderWidth+vt.top+vt.height,io=new it.b(vt.width-ke.borderHeight,Ee.height-vt.top-vt.height-ke.verticalPadding);return{top:Vt,left:It,fit:io.height-Xe.height,maxSizeBottom:io,maxSizeTop:io,minSize:Ve.with(io.width)}}(),Yt=[Et,qt,Xt],go=(X=Yt.find(It=>It.fit>=0))!==null&&X!==void 0?X:Yt.sort((It,Vt)=>Vt.fit-It.fit)[0],F=vt.top+vt.height-ke.borderHeight;let J,Fe=Xe.height;const Ze=Math.max(go.maxSizeTop.height,go.maxSizeBottom.height);Fe>Ze&&(Fe=Ze);let St;Fe<=go.maxSizeTop.height?(J=!0,St=go.maxSizeTop):(J=!1,St=go.maxSizeBottom),this._applyTopLeft({left:go.left,top:J?go.top:F-Fe}),this.getDomNode().style.position="fixed",this._resizable.enableSashes(!J,go===Et,J,go!==Et),this._resizable.minSize=go.minSize,this._resizable.maxSize=St,this._resizable.layout(Fe,Math.min(St.width,Xe.width)),this.widget.layout(this._resizable.size.width,this._resizable.size.height)}_applyTopLeft(vt){this._topLeft=vt,this.getDomNode().style.left=`${this._topLeft.left}px`,this.getDomNode().style.top=`${this._topLeft.top}px`}}var Ct=e("xONI"),We=e("bY76"),he=e("tYmi"),Me=e("gslv"),ue=e("MqQJ"),ae;(function(vt){vt[vt.FILE=0]="FILE",vt[vt.FOLDER=1]="FOLDER",vt[vt.ROOT_FOLDER=2]="ROOT_FOLDER"})(ae||(ae={}));function Re(vt,Xe,X,Ee){const ke=Ee===ae.ROOT_FOLDER?["rootfolder-icon"]:Ee===ae.FOLDER?["folder-icon"]:["file-icon"];if(X){let Ve;if(X.scheme===he.c.data){const ct=Me.a.parseMetaData(X);Ve=ct.get(Me.a.META_DATA_LABEL)}else Ve=et(Object(Me.c)(X).toLowerCase());if(Ee===ae.FOLDER)ke.push(`${Ve}-name-folder-icon`);else{if(Ve){if(ke.push(`${Ve}-name-file-icon`),Ve.length<=255){const Et=Ve.split(".");for(let qt=1;qt=0;Et--)(ct=vt[Et])&&(Ve=(ke<3?ct(Ve):ke>3?ct(Xe,X,Ve):ct(Xe,X))||Ve);return ke>3&&Ve&&Object.defineProperty(Xe,X,Ve),Ve},Tt=function(vt,Xe){return function(X,Ee){Xe(X,Ee,vt)}},Ut;function fo(vt){return`suggest-aria-id:${vt}`}const vo=Object(Ot.b)("suggest-more-info",Ue.b.chevronRight,H.a("suggestMoreInfoIcon","Icon for more information in the suggest widget.")),po=new(Ut=class vt{extract(Xe,X){if(Xe.textLabel.match(vt._regexStrict))return X[0]=Xe.textLabel,!0;if(Xe.completion.detail&&Xe.completion.detail.match(vt._regexStrict))return X[0]=Xe.completion.detail,!0;if(typeof Xe.completion.documentation=="string"){const Ee=vt._regexRelaxed.exec(Xe.completion.documentation);if(Ee&&(Ee.index===0||Ee.index+Ee[0].length===Xe.completion.documentation.length))return X[0]=Ee[0],!0}return!1}},Ut._regexRelaxed=/(#([\da-fA-F]{3}){1,2}|(rgb|hsl)a\(\s*(\d{1,3}%?\s*,\s*){3}(1|0?\.\d+)\)|(rgb|hsl)\(\s*\d{1,3}%?(\s*,\s*\d{1,3}%?){2}\s*\))/,Ut._regexStrict=new RegExp(`^${Ut._regexRelaxed.source}$`,"i"),Ut);let Oo=class{constructor(Xe,X,Ee,ke){this._editor=Xe,this._modelService=X,this._modeService=Ee,this._themeService=ke,this._onDidToggleDetails=new k.b,this.onDidToggleDetails=this._onDidToggleDetails.event,this.templateId="suggestion"}dispose(){this._onDidToggleDetails.dispose()}renderTemplate(Xe){const X=Object.create(null);X.disposables=new S.b,X.root=Xe,X.root.classList.add("show-file-icons"),X.icon=Object(it.q)(Xe,Object(it.a)(".icon")),X.colorspan=Object(it.q)(X.icon,Object(it.a)("span.colorspan"));const Ee=Object(it.q)(Xe,Object(it.a)(".contents")),ke=Object(it.q)(Ee,Object(it.a)(".main"));X.iconContainer=Object(it.q)(ke,Object(it.a)(".icon-label.codicon")),X.left=Object(it.q)(ke,Object(it.a)("span.left")),X.right=Object(it.q)(ke,Object(it.a)("span.right")),X.iconLabel=new Ct.a(X.left,{supportHighlights:!0,supportIcons:!0}),X.disposables.add(X.iconLabel),X.parametersLabel=Object(it.q)(X.left,Object(it.a)("span.signature-label")),X.qualifierLabel=Object(it.q)(X.left,Object(it.a)("span.qualifier-label")),X.detailsLabel=Object(it.q)(X.right,Object(it.a)("span.details-label")),X.readMore=Object(it.q)(X.right,Object(it.a)("span.readMore"+qe.d.asCSSSelector(vo))),X.readMore.title=H.a("readMore","Read More");const Ve=()=>{const ct=this._editor.getOptions(),Et=ct.get(43),qt=Et.getMassagedFontFamily($e.h?Bt.c.fontFamily:null),Xt=Et.fontFeatureSettings,Yt=ct.get(106)||Et.fontSize,go=ct.get(107)||Et.lineHeight,F=Et.fontWeight,J=`${Yt}px`,Fe=`${go}px`;X.root.style.fontSize=J,X.root.style.fontWeight=F,ke.style.fontFamily=qt,ke.style.fontFeatureSettings=Xt,ke.style.lineHeight=Fe,X.icon.style.height=Fe,X.icon.style.width=Fe,X.readMore.style.height=Fe,X.readMore.style.width=Fe};return Ve(),X.disposables.add(this._editor.onDidChangeConfiguration(ct=>{(ct.hasChanged(43)||ct.hasChanged(106)||ct.hasChanged(107))&&Ve()})),X}renderElement(Xe,X,Ee){const{completion:ke}=Xe;Ee.root.id=fo(X),Ee.colorspan.style.backgroundColor="";const Ve={labelEscapeNewLines:!0,matches:Object(Te.c)(Xe.score)};let ct=[];if(ke.kind===19&&po.extract(Xe,ct))Ee.icon.className="icon customcolor",Ee.iconContainer.className="icon hide",Ee.colorspan.style.backgroundColor=ct[0];else if(ke.kind===20&&this._themeService.getFileIconTheme().hasFileIcons){Ee.icon.className="icon hide",Ee.iconContainer.className="icon hide";const Et=Re(this._modelService,this._modeService,We.a.from({scheme:"fake",path:Xe.textLabel}),ae.FILE),qt=Re(this._modelService,this._modeService,We.a.from({scheme:"fake",path:ke.detail}),ae.FILE);Ve.extraClasses=Et.length>qt.length?Et:qt}else ke.kind===23&&this._themeService.getFileIconTheme().hasFolderIcons?(Ee.icon.className="icon hide",Ee.iconContainer.className="icon hide",Ve.extraClasses=Object(P.k)([Re(this._modelService,this._modeService,We.a.from({scheme:"fake",path:Xe.textLabel}),ae.FOLDER),Re(this._modelService,this._modeService,We.a.from({scheme:"fake",path:ke.detail}),ae.FOLDER)])):(Ee.icon.className="icon hide",Ee.iconContainer.className="",Ee.iconContainer.classList.add("suggest-icon",...Object(C.I)(ke.kind).split(" ")));ke.tags&&ke.tags.indexOf(1)>=0&&(Ve.extraClasses=(Ve.extraClasses||[]).concat(["deprecated"]),Ve.matches=[]),Ee.iconLabel.setLabel(Xe.textLabel,void 0,Ve),typeof ke.label=="string"?(Ee.parametersLabel.textContent="",Ee.detailsLabel.textContent=Uo(ke.detail||""),Ee.root.classList.add("string-label")):(Ee.parametersLabel.textContent=Uo(ke.label.detail||""),Ee.detailsLabel.textContent=Uo(ke.label.description||""),Ee.root.classList.remove("string-label")),this._editor.getOption(105).showInlineDetails?Object(it.W)(Ee.detailsLabel):Object(it.K)(Ee.detailsLabel),Zt(Xe)?(Ee.right.classList.add("can-expand-details"),Object(it.W)(Ee.readMore),Ee.readMore.onmousedown=Et=>{Et.stopPropagation(),Et.preventDefault()},Ee.readMore.onclick=Et=>{Et.stopPropagation(),Et.preventDefault(),this._onDidToggleDetails.fire()}):(Ee.right.classList.remove("can-expand-details"),Object(it.K)(Ee.readMore),Ee.readMore.onmousedown=null,Ee.readMore.onclick=null)}disposeTemplate(Xe){Xe.disposables.dispose()}};Oo=Ft([Tt(1,bt.a),Tt(2,Lt.a),Tt(3,qe.b)],Oo);function Uo(vt){return vt.replace(/\r\n|\r|\n/g,"")}var Zo=function(vt,Xe,X,Ee){var ke=arguments.length,Ve=ke<3?Xe:Ee===null?Ee=Object.getOwnPropertyDescriptor(Xe,X):Ee,ct;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Ve=Reflect.decorate(vt,Xe,X,Ee);else for(var Et=vt.length-1;Et>=0;Et--)(ct=vt[Et])&&(Ve=(ke<3?ct(Ve):ke>3?ct(Xe,X,Ve):ct(Xe,X))||Ve);return ke>3&&Ve&&Object.defineProperty(Xe,X,Ve),Ve},ii=function(vt,Xe){return function(X,Ee){Xe(X,Ee,vt)}},$o=function(vt,Xe,X,Ee){function ke(Ve){return Ve instanceof X?Ve:new X(function(ct){ct(Ve)})}return new(X||(X=Promise))(function(Ve,ct){function Et(Yt){try{Xt(Ee.next(Yt))}catch(go){ct(go)}}function qt(Yt){try{Xt(Ee.throw(Yt))}catch(go){ct(go)}}function Xt(Yt){Yt.done?Ve(Yt.value):ke(Yt.value).then(Et,qt)}Xt((Ee=Ee.apply(vt,Xe||[])).next())})};const Ri=Object(mt.Cc)("editorSuggestWidget.background",{dark:mt.cb,light:mt.cb,hc:mt.cb},H.a("editorSuggestWidgetBackground","Background color of the suggest widget.")),xi=Object(mt.Cc)("editorSuggestWidget.border",{dark:mt.db,light:mt.db,hc:mt.db},H.a("editorSuggestWidgetBorder","Border color of the suggest widget.")),Ni=Object(mt.Cc)("editorSuggestWidget.foreground",{dark:mt.B,light:mt.B,hc:mt.B},H.a("editorSuggestWidgetForeground","Foreground color of the suggest widget.")),ji=Object(mt.Cc)("editorSuggestWidget.selectedForeground",{dark:mt.zc,light:mt.zc,hc:mt.zc},H.a("editorSuggestWidgetSelectedForeground","Foreground color of the selected entry in the suggest widget.")),Li=Object(mt.Cc)("editorSuggestWidget.selectedIconForeground",{dark:mt.Ac,light:mt.Ac,hc:mt.Ac},H.a("editorSuggestWidgetSelectedIconForeground","Icon foreground color of the selected entry in the suggest widget.")),ki=Object(mt.Cc)("editorSuggestWidget.selectedBackground",{dark:mt.yc,light:mt.yc,hc:mt.yc},H.a("editorSuggestWidgetSelectedBackground","Background color of the selected entry in the suggest widget.")),Hi=Object(mt.Cc)("editorSuggestWidget.highlightForeground",{dark:mt.Ob,light:mt.Ob,hc:mt.Ob},H.a("editorSuggestWidgetHighlightForeground","Color of the match highlights in the suggest widget.")),ni=Object(mt.Cc)("editorSuggestWidget.focusHighlightForeground",{dark:mt.Mb,light:mt.Mb,hc:mt.Mb},H.a("editorSuggestWidgetFocusHighlightForeground","Color of the match highlights in the suggest widget when an item is focused."));class tn{constructor(vt,Xe){this._service=vt,this._key=`suggestWidget.size/${Xe.getEditorType()}/${Xe instanceof ao.a}`}restore(){var vt;const Xe=(vt=this._service.get(this._key,0))!==null&&vt!==void 0?vt:"";try{const X=JSON.parse(Xe);if(it.b.is(X))return it.b.lift(X)}catch(X){}return}store(vt){this._service.store(this._key,JSON.stringify(vt),0,1)}reset(){this._service.remove(this._key,0)}}let Yi=class vt{constructor(Xe,X,Ee,ke,Ve){this.editor=Xe,this._storageService=X,this._state=0,this._isAuto=!1,this._ignoreFocusEvents=!1,this._forceRenderingAbove=!1,this._explainMode=!1,this._showTimeout=new L.g,this._disposables=new S.b,this._onDidSelect=new k.b,this._onDidFocus=new k.b,this._onDidHide=new k.b,this._onDidShow=new k.b,this.onDidSelect=this._onDidSelect.event,this.onDidFocus=this._onDidFocus.event,this.onDidHide=this._onDidHide.event,this.onDidShow=this._onDidShow.event,this._onDetailsKeydown=new k.b,this.onDetailsKeyDown=this._onDetailsKeydown.event,this.element=new gt,this.element.domNode.classList.add("editor-widget","suggest-widget"),this._contentWidget=new bi(this,Xe),this._persistedSize=new tn(X,Xe);class ct{constructor(F,J,Fe=!1,Ze=!1){this.persistedSize=F,this.currentSize=J,this.persistHeight=Fe,this.persistWidth=Ze}}let Et;this._disposables.add(this.element.onDidWillResize(()=>{this._contentWidget.lockPreference(),Et=new ct(this._persistedSize.restore(),this.element.size)})),this._disposables.add(this.element.onDidResize(F=>{var J,Fe,Ze,St;if(this._resize(F.dimension.width,F.dimension.height),Et&&(Et.persistHeight=Et.persistHeight||!!F.north||!!F.south,Et.persistWidth=Et.persistWidth||!!F.east||!!F.west),!F.done)return;if(Et){const{itemHeight:It,defaultSize:Vt}=this.getLayoutInfo(),io=Math.round(It/2);let{width:ho,height:mo}=this.element.size;(!Et.persistHeight||Math.abs(Et.currentSize.height-mo)<=io)&&(mo=(Fe=(J=Et.persistedSize)===null||J===void 0?void 0:J.height)!==null&&Fe!==void 0?Fe:Vt.height),(!Et.persistWidth||Math.abs(Et.currentSize.width-ho)<=io)&&(ho=(St=(Ze=Et.persistedSize)===null||Ze===void 0?void 0:Ze.width)!==null&&St!==void 0?St:Vt.width),this._persistedSize.store(new it.b(ho,mo))}this._contentWidget.unlockPreference(),Et=void 0})),this._messageElement=it.q(this.element.domNode,it.a(".message")),this._listElement=it.q(this.element.domNode,it.a(".tree"));const qt=Ve.createInstance(zt,this.editor);qt.onDidClose(this.toggleDetails,this,this._disposables),this._details=new ut(qt,this.editor);const Xt=()=>this.element.domNode.classList.toggle("no-icons",!this.editor.getOption(105).showIcons);Xt();const Yt=Ve.createInstance(Oo,this.editor);this._disposables.add(Yt),this._disposables.add(Yt.onDidToggleDetails(()=>this.toggleDetails())),this._list=new kt.c("SuggestWidget",this._listElement,{getHeight:F=>this.getLayoutInfo().itemHeight,getTemplateId:F=>"suggestion"},[Yt],{alwaysConsumeMouseWheel:!0,useShadows:!1,mouseSupport:!1,accessibilityProvider:{getRole:()=>"option",getAriaLabel:F=>{if(F.isResolved&&this._isDetailsVisible()){const{documentation:J,detail:Fe}=F.completion,Ze=ve.v("{0}{1}",Fe||"",J?typeof J=="string"?J:J.value:"");return H.a("ariaCurrenttSuggestionReadDetails","{0}, docs: {1}",F.textLabel,Ze)}else return F.textLabel},getWidgetAriaLabel:()=>H.a("suggest","Suggest"),getWidgetRole:()=>"listbox"}}),this._status=Ve.createInstance(Wt,this.element.domNode);const go=()=>this.element.domNode.classList.toggle("with-status-bar",this.editor.getOption(105).showStatusBar);go(),this._disposables.add(Object(Gt.b)(this._list,ke,{listInactiveFocusBackground:ki,listInactiveFocusOutline:mt.b})),this._disposables.add(ke.onDidColorThemeChange(F=>this._onThemeChange(F))),this._onThemeChange(ke.getColorTheme()),this._disposables.add(this._list.onMouseDown(F=>this._onListMouseDownOrTap(F))),this._disposables.add(this._list.onTap(F=>this._onListMouseDownOrTap(F))),this._disposables.add(this._list.onDidChangeSelection(F=>this._onListSelection(F))),this._disposables.add(this._list.onDidChangeFocus(F=>this._onListFocus(F))),this._disposables.add(this.editor.onDidChangeCursorSelection(()=>this._onCursorSelectionChanged())),this._disposables.add(this.editor.onDidChangeConfiguration(F=>{F.hasChanged(105)&&(go(),Xt())})),this._ctxSuggestWidgetVisible=ce.b.Visible.bindTo(Ee),this._ctxSuggestWidgetDetailsVisible=ce.b.DetailsVisible.bindTo(Ee),this._ctxSuggestWidgetMultipleSuggestions=ce.b.MultipleSuggestions.bindTo(Ee),this._disposables.add(it.o(this._details.widget.domNode,"keydown",F=>{this._onDetailsKeydown.fire(F)})),this._disposables.add(this.editor.onMouseDown(F=>this._onEditorMouseDown(F)))}dispose(){var Xe;this._details.widget.dispose(),this._details.dispose(),this._list.dispose(),this._status.dispose(),this._disposables.dispose(),(Xe=this._loadingTimeout)===null||Xe===void 0||Xe.dispose(),this._showTimeout.dispose(),this._contentWidget.dispose(),this.element.dispose()}_onEditorMouseDown(Xe){this._details.widget.domNode.contains(Xe.target.element)?this._details.widget.domNode.focus():this.element.domNode.contains(Xe.target.element)&&this.editor.focus()}_onCursorSelectionChanged(){this._state!==0&&this._contentWidget.layout()}_onListMouseDownOrTap(Xe){if(typeof Xe.element=="undefined"||typeof Xe.index=="undefined")return;Xe.browserEvent.preventDefault(),Xe.browserEvent.stopPropagation(),this._select(Xe.element,Xe.index)}_onListSelection(Xe){Xe.elements.length&&this._select(Xe.elements[0],Xe.indexes[0])}_select(Xe,X){const Ee=this._completionModel;Ee&&(this._onDidSelect.fire({item:Xe,index:X,model:Ee}),this.editor.focus())}_onThemeChange(Xe){const X=Xe.getColor(Ri);X&&(this.element.domNode.style.backgroundColor=X.toString(),this._messageElement.style.backgroundColor=X.toString(),this._details.widget.domNode.style.backgroundColor=X.toString());const Ee=Xe.getColor(xi);Ee&&(this.element.domNode.style.borderColor=Ee.toString(),this._messageElement.style.borderColor=Ee.toString(),this._status.element.style.borderTopColor=Ee.toString(),this._details.widget.domNode.style.borderColor=Ee.toString(),this._detailsBorderColor=Ee.toString());const ke=Xe.getColor(mt.hb);ke&&(this._detailsFocusBorderColor=ke.toString()),this._details.widget.borderWidth=Xe.type==="hc"?2:1}_onListFocus(Xe){var X;if(this._ignoreFocusEvents)return;if(!Xe.elements.length){this._currentSuggestionDetails&&(this._currentSuggestionDetails.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=void 0),this.editor.setAriaOptions({activeDescendant:void 0});return}if(!this._completionModel)return;const Ee=Xe.elements[0],ke=Xe.indexes[0];Ee!==this._focusedItem&&((X=this._currentSuggestionDetails)===null||X===void 0||X.cancel(),this._currentSuggestionDetails=void 0,this._focusedItem=Ee,this._list.reveal(ke),this._currentSuggestionDetails=Object(L.h)(Ve=>$o(this,void 0,void 0,function*(){const ct=Object(L.i)(()=>{this._isDetailsVisible()&&this.showDetails(!0)},250);Ve.onCancellationRequested(()=>ct.dispose());const Et=yield Ee.resolve(Ve);return ct.dispose(),Et})),this._currentSuggestionDetails.then(()=>{if(ke>=this._list.length||Ee!==this._list.element(ke))return;this._ignoreFocusEvents=!0,this._list.splice(ke,1,[Ee]),this._list.setFocus([ke]),this._ignoreFocusEvents=!1,this._isDetailsVisible()?this.showDetails(!1):this.element.domNode.classList.remove("docs-side"),this.editor.setAriaOptions({activeDescendant:fo(ke)})}).catch(I.f)),this._onDidFocus.fire({item:Ee,index:ke,model:this._completionModel})}_setState(Xe){if(this._state===Xe)return;this._state=Xe,this.element.domNode.classList.toggle("frozen",Xe===4),this.element.domNode.classList.remove("message");switch(Xe){case 0:it.K(this._messageElement,this._listElement,this._status.element),this._details.hide(!0),this._status.hide(),this._contentWidget.hide(),this._ctxSuggestWidgetVisible.reset(),this._ctxSuggestWidgetMultipleSuggestions.reset(),this._showTimeout.cancel(),this.element.domNode.classList.remove("visible"),this._list.splice(0,this._list.length),this._focusedItem=void 0,this._cappedHeight=void 0,this._explainMode=!1;break;case 1:this.element.domNode.classList.add("message"),this._messageElement.textContent=vt.LOADING_MESSAGE,it.K(this._listElement,this._status.element),it.W(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0;break;case 2:this.element.domNode.classList.add("message"),this._messageElement.textContent=vt.NO_SUGGESTIONS_MESSAGE,it.K(this._listElement,this._status.element),it.W(this._messageElement),this._details.hide(),this._show(),this._focusedItem=void 0;break;case 3:it.K(this._messageElement),it.W(this._listElement,this._status.element),this._show();break;case 4:it.K(this._messageElement),it.W(this._listElement,this._status.element),this._show();break;case 5:it.K(this._messageElement),it.W(this._listElement,this._status.element),this._details.show(),this._show();break}}_show(){this._status.show(),this._contentWidget.show(),this._layout(this._persistedSize.restore()),this._ctxSuggestWidgetVisible.set(!0),this._showTimeout.cancelAndSet(()=>{this.element.domNode.classList.add("visible"),this._onDidShow.fire(this)},100)}showTriggered(Xe,X){if(this._state!==0)return;this._contentWidget.setPosition(this.editor.getPosition()),this._isAuto=!!Xe,this._isAuto||(this._loadingTimeout=Object(L.i)(()=>this._setState(1),X))}showSuggestions(Xe,X,Ee,ke){var Ve,ct;if(this._contentWidget.setPosition(this.editor.getPosition()),(Ve=this._loadingTimeout)===null||Ve===void 0||Ve.dispose(),(ct=this._currentSuggestionDetails)===null||ct===void 0||ct.cancel(),this._currentSuggestionDetails=void 0,this._completionModel!==Xe&&(this._completionModel=Xe),Ee&&this._state!==2&&this._state!==0){this._setState(4);return}const Et=this._completionModel.items.length,qt=Et===0;if(this._ctxSuggestWidgetMultipleSuggestions.set(Et>1),qt){this._setState(ke?0:2),this._completionModel=void 0;return}this._focusedItem=void 0,this._list.splice(0,this._list.length,this._completionModel.items),this._setState(Ee?4:3),this._list.reveal(X,0),this._list.setFocus([X]),this._layout(this.element.size),this._detailsBorderColor&&(this._details.widget.domNode.style.borderColor=this._detailsBorderColor)}selectNextPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageDown(),!0;case 1:return!this._isAuto;default:return this._list.focusNextPage(),!0}}selectNext(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusNext(1,!0),!0}}selectLast(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollBottom(),!0;case 1:return!this._isAuto;default:return this._list.focusLast(),!0}}selectPreviousPage(){switch(this._state){case 0:return!1;case 5:return this._details.widget.pageUp(),!0;case 1:return!this._isAuto;default:return this._list.focusPreviousPage(),!0}}selectPrevious(){switch(this._state){case 0:return!1;case 1:return!this._isAuto;default:return this._list.focusPrevious(1,!0),!1}}selectFirst(){switch(this._state){case 0:return!1;case 5:return this._details.widget.scrollTop(),!0;case 1:return!this._isAuto;default:return this._list.focusFirst(),!0}}getFocusedItem(){return this._state!==0&&this._state!==2&&this._state!==1&&this._completionModel?{item:this._list.getFocusedElements()[0],index:this._list.getFocus()[0],model:this._completionModel}:void 0}toggleDetailsFocus(){this._state===5?(this._setState(3),this._detailsBorderColor&&(this._details.widget.domNode.style.borderColor=this._detailsBorderColor)):this._state===3&&this._isDetailsVisible()&&(this._setState(5),this._detailsFocusBorderColor&&(this._details.widget.domNode.style.borderColor=this._detailsFocusBorderColor))}toggleDetails(){this._isDetailsVisible()?(this._ctxSuggestWidgetDetailsVisible.set(!1),this._setDetailsVisible(!1),this._details.hide(),this.element.domNode.classList.remove("shows-details")):(Zt(this._list.getFocusedElements()[0])||this._explainMode)&&(this._state===3||this._state===5||this._state===4)&&(this._ctxSuggestWidgetDetailsVisible.set(!0),this._setDetailsVisible(!0),this.showDetails(!1))}showDetails(Xe){this._details.show(),Xe?this._details.widget.renderLoading():this._details.widget.renderItem(this._list.getFocusedElements()[0],this._explainMode),this._positionDetails(),this.editor.focus(),this.element.domNode.classList.add("shows-details")}toggleExplainMode(){this._list.getFocusedElements()[0]&&(this._explainMode=!this._explainMode,this._isDetailsVisible()?this.showDetails(!1):this.toggleDetails())}resetPersistedSize(){this._persistedSize.reset()}hideWidget(){var Xe;(Xe=this._loadingTimeout)===null||Xe===void 0||Xe.dispose(),this._setState(0),this._onDidHide.fire(this),this.element.clearSashHoverState();const X=this._persistedSize.restore(),Ee=Math.ceil(this.getLayoutInfo().itemHeight*4.3);X&&X.heightXt&&(qt=Xt);const Yt=this._completionModel?this._completionModel.stats.pLabelLen*ct.typicalHalfwidthCharacterWidth:qt,go=ct.statusBarHeight+this._list.contentHeight+ct.borderHeight,F=ct.itemHeight+ct.statusBarHeight,J=it.D(this.editor.getDomNode()),Fe=this.editor.getScrolledVisiblePosition(this.editor.getPosition()),Ze=J.top+Fe.top+Fe.height,St=Math.min(Ve.height-Ze-ct.verticalPadding,go),It=J.top+Fe.top-ct.verticalPadding,Vt=Math.min(It,go);let io=Math.min(Math.max(Vt,St)+ct.borderHeight,go);Et===((X=this._cappedHeight)===null||X===void 0?void 0:X.capped)&&(Et=this._cappedHeight.wanted),Etio&&(Et=io);const ho=150;Et>St||this._forceRenderingAbove&&It>ho?(this._contentWidget.setPreference(1),this.element.enableSashes(!0,!0,!1,!1),io=Vt):(this._contentWidget.setPreference(2),this.element.enableSashes(!1,!0,!0,!1),io=St),this.element.preferredSize=new it.b(Yt,ct.defaultSize.height),this.element.maxSize=new it.b(Xt,io),this.element.minSize=new it.b(220,F),this._cappedHeight=Et===go?{wanted:(ke=(Ee=this._cappedHeight)===null||Ee===void 0?void 0:Ee.wanted)!==null&&ke!==void 0?ke:Xe.height,capped:Et}:void 0}this._resize(qt,Et)}_resize(Xe,X){const{width:Ee,height:ke}=this.element.maxSize;Xe=Math.min(Ee,Xe),X=Math.min(ke,X);const{statusBarHeight:Ve}=this.getLayoutInfo();this._list.layout(X-Ve,Xe),this._listElement.style.height=`${X-Ve}px`,this.element.layout(X,Xe),this._contentWidget.layout(),this._positionDetails()}_positionDetails(){this._isDetailsVisible()&&this._details.placeAtAnchor(this.element.domNode)}getLayoutInfo(){const Xe=this.editor.getOption(43),X=Object(eo.b)(this.editor.getOption(107)||Xe.lineHeight,8,1e3),Ee=!this.editor.getOption(105).showStatusBar||this._state===2||this._state===1?0:X,ke=this._details.widget.borderWidth,Ve=2*ke;return{itemHeight:X,statusBarHeight:Ee,borderWidth:ke,borderHeight:Ve,typicalHalfwidthCharacterWidth:Xe.typicalHalfwidthCharacterWidth,verticalPadding:22,horizontalPadding:14,defaultSize:new it.b(430,Ee+12*X+Ve)}}_isDetailsVisible(){return this._storageService.getBoolean("expandSuggestionDocs",0,!1)}_setDetailsVisible(Xe){this._storageService.store("expandSuggestionDocs",Xe,0,0)}forceRenderingAbove(){this._forceRenderingAbove||(this._forceRenderingAbove=!0,this._layout(this._persistedSize.restore()))}stopForceRenderingAbove(){this._forceRenderingAbove=!1}};Yi.LOADING_MESSAGE=H.a("suggestWidget.loading","Loading..."),Yi.NO_SUGGESTIONS_MESSAGE=H.a("suggestWidget.noSuggestions","No suggestions."),Yi=Zo([ii(1,V.a),ii(2,fe.b),ii(3,qe.b),ii(4,j.a)],Yi);class bi{constructor(vt,Xe){this._widget=vt,this._editor=Xe,this.allowEditorOverflow=!0,this.suppressMouseDown=!1,this._preferenceLocked=!1,this._added=!1,this._hidden=!1}dispose(){this._added&&(this._added=!1,this._editor.removeContentWidget(this))}getId(){return"editor.widget.suggestWidget"}getDomNode(){return this._widget.element.domNode}show(){this._hidden=!1,this._added||(this._added=!0,this._editor.addContentWidget(this))}hide(){this._hidden||(this._hidden=!0,this.layout())}layout(){this._editor.layoutContentWidget(this)}getPosition(){return this._hidden||!this._position||!this._preference?null:{position:this._position,preference:[this._preference]}}beforeRender(){const{height:vt,width:Xe}=this._widget.element.size,{borderWidth:X,horizontalPadding:Ee}=this._widget.getLayoutInfo();return new it.b(Xe+2*X+Ee,vt+2*X)}afterRender(vt){this._widget._afterRender(vt)}setPreference(vt){this._preferenceLocked||(this._preference=vt)}lockPreference(){this._preferenceLocked=!0}unlockPreference(){this._preferenceLocked=!1}setPosition(vt){this._position=vt}}Object(qe.f)((vt,Xe)=>{const X=vt.getColor(Hi);X&&Xe.addRule(`.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-highlighted-label .highlight { color: ${X}; }`);const Ee=vt.getColor(ni);X&&Xe.addRule(`.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .monaco-highlighted-label .highlight { color: ${Ee}; }`);const ke=vt.getColor(Ni);ke&&Xe.addRule(`.monaco-editor .suggest-widget, .monaco-editor .suggest-details { color: ${ke}; }`);const Ve=vt.getColor(ji);Ve&&Xe.addRule(`.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused { color: ${Ve}; }`);const ct=vt.getColor(Li);ct&&Xe.addRule(`.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon { color: ${ct}; }`);const Et=vt.getColor(mt.Pc);Et&&Xe.addRule(`.monaco-editor .suggest-details a { color: ${Et}; }`);const qt=vt.getColor(mt.Oc);qt&&Xe.addRule(`.monaco-editor .suggest-details a:hover { color: ${qt}; }`);const Xt=vt.getColor(mt.Nc);Xt&&Xe.addRule(`.monaco-editor .suggest-details code { background-color: ${Xt}; }`)});var Pi=function(vt,Xe,X,Ee){var ke=arguments.length,Ve=ke<3?Xe:Ee===null?Ee=Object.getOwnPropertyDescriptor(Xe,X):Ee,ct;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Ve=Reflect.decorate(vt,Xe,X,Ee);else for(var Et=vt.length-1;Et>=0;Et--)(ct=vt[Et])&&(Ve=(ke<3?ct(Ve):ke>3?ct(Xe,X,Ve):ct(Xe,X))||Ve);return ke>3&&Ve&&Object.defineProperty(Xe,X,Ve),Ve},Ii=function(vt,Xe){return function(X,Ee){Xe(X,Ee,vt)}};let Si=!1;class Xi{constructor(vt,Xe){this._model=vt,this._position=Xe;const X=vt.getLineMaxColumn(Xe.lineNumber);if(X!==Xe.column){const Ee=vt.getOffsetAt(Xe),ke=vt.getPositionAt(Ee+1);this._marker=vt.deltaDecorations([],[{range:m.a.fromPositions(Xe,ke),options:{description:"suggest-line-suffix",stickiness:1}}])}}dispose(){this._marker&&!this._model.isDisposed()&&this._model.deltaDecorations(this._marker,[])}delta(vt){if(this._model.isDisposed()||this._position.lineNumber!==vt.lineNumber)return 0;if(this._marker){const Xe=this._model.getDecorationRange(this._marker[0]),X=this._model.getOffsetAt(Xe.getStartPosition());return X-this._model.getOffsetAt(vt)}else return this._model.getLineMaxColumn(vt.lineNumber)-vt.column}}let Ci=class vt{constructor(Xe,X,Ee,ke,Ve,ct){this._memoryService=X,this._commandService=Ee,this._contextKeyService=ke,this._instantiationService=Ve,this._logService=ct,this._lineSuffix=new S.d,this._toDispose=new S.b,this._selectors=new rn(Yt=>Yt.priority),this.editor=Xe,this.model=Ve.createInstance(le,this.editor);const Et=ce.b.InsertMode.bindTo(ke);Et.set(Xe.getOption(105).insertMode),this.model.onDidTrigger(()=>Et.set(Xe.getOption(105).insertMode)),this.widget=this._toDispose.add(new L.b(()=>{const Yt=this._instantiationService.createInstance(Yi,this.editor);this._toDispose.add(Yt),this._toDispose.add(Yt.onDidSelect(Ze=>this._insertSuggestion(Ze,0),this));const go=new Ne(this.editor,Yt,Ze=>this._insertSuggestion(Ze,2));this._toDispose.add(go),this._toDispose.add(this.model.onDidSuggest(Ze=>{Ze.completionModel.items.length===0&&go.reset()}));const F=ce.b.MakesTextEdit.bindTo(this._contextKeyService),J=ce.b.HasInsertAndReplaceRange.bindTo(this._contextKeyService),Fe=ce.b.CanResolve.bindTo(this._contextKeyService);return this._toDispose.add(Object(S.i)(()=>{F.reset(),J.reset(),Fe.reset()})),this._toDispose.add(Yt.onDidFocus(({item:Ze})=>{const St=this.editor.getPosition(),It=Ze.editStart.column,Vt=St.column;let io=!0;if(this.editor.getOption(1)==="smart"&&this.model.state===2&&!Ze.completion.additionalTextEdits&&!(Ze.completion.insertTextRules&4)&&Vt-It===Ze.completion.insertText.length){const ho=this.editor.getModel().getValueInRange({startLineNumber:St.lineNumber,startColumn:It,endLineNumber:St.lineNumber,endColumn:Vt});io=ho!==Ze.completion.insertText}F.set(io),J.set(!b.a.equals(Ze.editInsertEnd,Ze.editReplaceEnd)),Fe.set(Boolean(Ze.provider.resolveCompletionItem)||Boolean(Ze.completion.documentation)||Ze.completion.detail!==Ze.completion.label)})),this._toDispose.add(Yt.onDetailsKeyDown(Ze=>{if(Ze.toKeybinding().equals(new O.d(!0,!1,!1,!1,33))||f.f&&Ze.toKeybinding().equals(new O.d(!1,!1,!1,!0,33))){Ze.stopPropagation();return}Ze.toKeybinding().isModifierKey()||this.editor.focus()})),Yt})),this._overtypingCapturer=this._toDispose.add(new L.b(()=>this._toDispose.add(new Pe(this.editor,this.model)))),this._alternatives=this._toDispose.add(new L.b(()=>this._toDispose.add(new oe(this.editor,this._contextKeyService)))),this._toDispose.add(Ve.createInstance(U,Xe)),this._toDispose.add(this.model.onDidTrigger(Yt=>{this.widget.value.showTriggered(Yt.auto,Yt.shy?250:50),this._lineSuffix.value=new Xi(this.editor.getModel(),Yt.position)})),this._toDispose.add(this.model.onDidSuggest(Yt=>{if(!Yt.shy){let go=-1;for(const F of this._selectors.itemsOrderedByPriorityDesc)if(go=F.select(this.editor.getModel(),this.editor.getPosition(),Yt.completionModel.items),go!==-1)break;go===-1&&(go=this._memoryService.select(this.editor.getModel(),this.editor.getPosition(),Yt.completionModel.items)),this.widget.value.showSuggestions(Yt.completionModel,go,Yt.isFrozen,Yt.auto)}})),this._toDispose.add(this.model.onDidCancel(Yt=>{Yt.retrigger||this.widget.value.hideWidget()})),this._toDispose.add(this.editor.onDidBlurEditorWidget(()=>{Si||(this.model.cancel(),this.model.clear())}));let qt=ce.b.AcceptSuggestionsOnEnter.bindTo(ke),Xt=()=>{const Yt=this.editor.getOption(1);qt.set(Yt==="on"||Yt==="smart")};this._toDispose.add(this.editor.onDidChangeConfiguration(()=>Xt())),Xt()}static get(Xe){return Xe.getContribution(vt.ID)}dispose(){this._alternatives.dispose(),this._toDispose.dispose(),this.widget.dispose(),this.model.dispose(),this._lineSuffix.dispose()}_insertSuggestion(Xe,X){if(!Xe||!Xe.item){this._alternatives.value.reset(),this.model.cancel(),this.model.clear();return}if(!this.editor.hasModel())return;const Ee=this.editor.getModel(),ke=Ee.getAlternativeVersionId(),{item:Ve}=Xe,ct=[],Et=new A.b;X&1||this.editor.pushUndoStop();const qt=this.getOverwriteInfo(Ve,Boolean(X&8));if(this._memoryService.memorize(Ee,this.editor.getPosition(),Ve),Array.isArray(Ve.completion.additionalTextEdits)){const Yt=E.c.capture(this.editor);this.editor.executeEdits("suggestController.additionalTextEdits.sync",Ve.completion.additionalTextEdits.map(go=>n.a.replace(m.a.lift(go.range),go.text))),Yt.restoreRelativeVerticalPositionOfCursor(this.editor)}else if(!Ve.isResolved){const Yt=new u.a(!0);let go;const F=Ee.onDidChangeContent(St=>{if(St.isFlush){Et.cancel(),F.dispose();return}for(let It of St.changes){const Vt=m.a.getEndPosition(It.range);(!go||b.a.isBefore(Vt,go))&&(go=Vt)}});let J=X;X|=2;let Fe=!1,Ze=this.editor.onWillType(()=>{Ze.dispose(),Fe=!0,J&2||this.editor.pushUndoStop()});ct.push(Ve.resolve(Et.token).then(()=>{if(!Ve.completion.additionalTextEdits||Et.token.isCancellationRequested)return!1;if(go&&Ve.completion.additionalTextEdits.some(It=>b.a.isBefore(go,m.a.getStartPosition(It.range))))return!1;Fe&&this.editor.pushUndoStop();const St=E.c.capture(this.editor);return this.editor.executeEdits("suggestController.additionalTextEdits.async",Ve.completion.additionalTextEdits.map(It=>n.a.replace(m.a.lift(It.range),It.text))),St.restoreRelativeVerticalPositionOfCursor(this.editor),(Fe||!(J&2))&&this.editor.pushUndoStop(),!0}).then(St=>{this._logService.trace("[suggest] async resolving of edits DONE (ms, applied?)",Yt.elapsed(),St),F.dispose(),Ze.dispose()}))}let{insertText:Xt}=Ve.completion;Ve.completion.insertTextRules&4||(Xt=g.c.escape(Xt)),l.SnippetController2.get(this.editor).insert(Xt,{overwriteBefore:qt.overwriteBefore,overwriteAfter:qt.overwriteAfter,undoStopBefore:!1,undoStopAfter:!1,adjustWhitespace:!(Ve.completion.insertTextRules&1),clipboardText:Xe.model.clipboardText,overtypingCapturer:this._overtypingCapturer.value}),X&2||this.editor.pushUndoStop(),Ve.completion.command?Ve.completion.command.id===on.id?this.model.trigger({auto:!0,shy:!1},!0):(ct.push(this._commandService.executeCommand(Ve.completion.command.id,...Ve.completion.command.arguments?[...Ve.completion.command.arguments]:[]).catch(I.f)),this.model.cancel()):this.model.cancel(),X&4&&this._alternatives.value.set(Xe,Yt=>{for(Et.cancel();Ee.canUndo();){ke!==Ee.getAlternativeVersionId()&&Ee.undo(),this._insertSuggestion(Yt,1|2|(X&8?8:0));break}}),this._alertCompletionItem(Ve),Promise.all(ct).finally(()=>{this.model.clear(),Et.dispose()})}getOverwriteInfo(Xe,X){Object(d.c)(this.editor.hasModel());let Ee=this.editor.getOption(105).insertMode==="replace";X&&(Ee=!Ee);const ke=Xe.position.column-Xe.editStart.column,Ve=(Ee?Xe.editReplaceEnd.column:Xe.editInsertEnd.column)-Xe.position.column,ct=this.editor.getPosition().column-Xe.position.column,Et=this._lineSuffix.value?this._lineSuffix.value.delta(this.editor.getPosition()):0;return{overwriteBefore:ke+ct,overwriteAfter:Ve+Et}}_alertCompletionItem(Xe){if(Object(P.n)(Xe.completion.additionalTextEdits)){let X=H.a("aria.alert.snippet","Accepting '{0}' made {1} additional edits",Xe.textLabel,Xe.completion.additionalTextEdits.length);Object(h.a)(X)}}triggerSuggest(Xe){this.editor.hasModel()&&(this.model.trigger({auto:!1,shy:!1},!1,Xe),this.editor.revealPosition(this.editor.getPosition(),0),this.editor.focus())}triggerSuggestAndAcceptBest(Xe){if(!this.editor.hasModel())return;const X=this.editor.getPosition(),Ee=()=>{X.equals(this.editor.getPosition())&&this._commandService.executeCommand(Xe.fallback)},ke=Ve=>{if(Ve.completion.insertTextRules&4||Ve.completion.additionalTextEdits)return!0;const ct=this.editor.getPosition(),Et=Ve.editStart.column,qt=ct.column;if(qt-Et!==Ve.completion.insertText.length)return!0;const Xt=this.editor.getModel().getValueInRange({startLineNumber:ct.lineNumber,startColumn:Et,endLineNumber:ct.lineNumber,endColumn:qt});return Xt!==Ve.completion.insertText};k.c.once(this.model.onDidTrigger)(Ve=>{let ct=[];k.c.any(this.model.onDidTrigger,this.model.onDidCancel)(()=>{Object(S.f)(ct),Ee()},void 0,ct),this.model.onDidSuggest(({completionModel:Et})=>{if(Object(S.f)(ct),Et.items.length===0){Ee();return}const qt=this._memoryService.select(this.editor.getModel(),this.editor.getPosition(),Et.items),Xt=Et.items[qt];if(!ke(Xt)){Ee();return}this.editor.pushUndoStop(),this._insertSuggestion({index:qt,item:Xt,model:Et},4|1|2)},void 0,ct)}),this.model.trigger({auto:!1,shy:!0}),this.editor.revealPosition(X,0),this.editor.focus()}acceptSelectedSuggestion(Xe,X){const Ee=this.widget.value.getFocusedItem();let ke=0;Xe&&(ke|=4),X&&(ke|=8),this._insertSuggestion(Ee,ke)}acceptNextSuggestion(){this._alternatives.value.next()}acceptPrevSuggestion(){this._alternatives.value.prev()}cancelSuggestWidget(){this.model.cancel(),this.model.clear(),this.widget.value.hideWidget()}selectNextSuggestion(){this.widget.value.selectNext()}selectNextPageSuggestion(){this.widget.value.selectNextPage()}selectLastSuggestion(){this.widget.value.selectLast()}selectPrevSuggestion(){this.widget.value.selectPrevious()}selectPrevPageSuggestion(){this.widget.value.selectPreviousPage()}selectFirstSuggestion(){this.widget.value.selectFirst()}toggleSuggestionDetails(){this.widget.value.toggleDetails()}toggleExplainMode(){this.widget.value.toggleExplainMode()}toggleSuggestionFocus(){this.widget.value.toggleDetailsFocus()}resetWidgetSize(){this.widget.value.resetPersistedSize()}forceRenderingAbove(){this.widget.value.forceRenderingAbove()}stopForceRenderingAbove(){if(!this.widget.isInitialized)return;this.widget.value.stopForceRenderingAbove()}registerSelector(Xe){return this._selectors.register(Xe)}};Ci.ID="editor.contrib.suggestController",Ci=Pi([Ii(1,Se),Ii(2,ne.b),Ii(3,fe.b),Ii(4,j.a),Ii(5,Le.b)],Ci);class rn{constructor(vt){this.prioritySelector=vt,this._items=new Array}register(vt){if(this._items.indexOf(vt)!==-1)throw new Error("Value is already registered");return this._items.push(vt),this._items.sort((Xe,X)=>this.prioritySelector(X)-this.prioritySelector(Xe)),{dispose:()=>{const Xe=this._items.indexOf(vt);Xe>=0&&this._items.splice(Xe,1)}}}get itemsOrderedByPriorityDesc(){return this._items}}class on extends p.b{constructor(){super({id:on.id,label:H.a("suggest.trigger.label","Trigger Suggest"),alias:"Trigger Suggest",precondition:fe.a.and(c.a.writable,c.a.hasCompletionItemProvider),kbOpts:{kbExpr:c.a.textInputFocus,primary:2048|10,secondary:[2048|39],mac:{primary:256|10,secondary:[512|9,2048|39]},weight:100}})}run(vt,Xe){const X=Ci.get(Xe);if(!X)return;X.triggerSuggest()}}on.id="editor.action.triggerSuggest",Object(p.l)(Ci.ID,Ci),Object(p.j)(on);const Fi=100+90,Bi=p.c.bindToContribution(Ci.get);Object(p.k)(new Bi({id:"acceptSelectedSuggestion",precondition:ce.b.Visible,handler(vt){vt.acceptSelectedSuggestion(!0,!1)}})),Ce.a.registerKeybindingRule({id:"acceptSelectedSuggestion",when:fe.a.and(ce.b.Visible,c.a.textInputFocus),primary:2,weight:Fi}),Ce.a.registerKeybindingRule({id:"acceptSelectedSuggestion",when:fe.a.and(ce.b.Visible,c.a.textInputFocus,ce.b.AcceptSuggestionsOnEnter,ce.b.MakesTextEdit),primary:3,weight:Fi}),W.d.appendMenuItem(ce.g,{command:{id:"acceptSelectedSuggestion",title:H.a("accept.insert","Insert")},group:"left",order:1,when:ce.b.HasInsertAndReplaceRange.toNegated()}),W.d.appendMenuItem(ce.g,{command:{id:"acceptSelectedSuggestion",title:H.a("accept.insert","Insert")},group:"left",order:1,when:fe.a.and(ce.b.HasInsertAndReplaceRange,ce.b.InsertMode.isEqualTo("insert"))}),W.d.appendMenuItem(ce.g,{command:{id:"acceptSelectedSuggestion",title:H.a("accept.replace","Replace")},group:"left",order:1,when:fe.a.and(ce.b.HasInsertAndReplaceRange,ce.b.InsertMode.isEqualTo("replace"))}),Object(p.k)(new Bi({id:"acceptAlternativeSelectedSuggestion",precondition:fe.a.and(ce.b.Visible,c.a.textInputFocus),kbOpts:{weight:Fi,kbExpr:c.a.textInputFocus,primary:1024|3,secondary:[1024|2]},handler(vt){vt.acceptSelectedSuggestion(!1,!0)},menuOpts:[{menuId:ce.g,group:"left",order:2,when:fe.a.and(ce.b.HasInsertAndReplaceRange,ce.b.InsertMode.isEqualTo("insert")),title:H.a("accept.replace","Replace")},{menuId:ce.g,group:"left",order:2,when:fe.a.and(ce.b.HasInsertAndReplaceRange,ce.b.InsertMode.isEqualTo("replace")),title:H.a("accept.insert","Insert")}]})),ne.a.registerCommandAlias("acceptSelectedSuggestionOnEnter","acceptSelectedSuggestion"),Object(p.k)(new Bi({id:"hideSuggestWidget",precondition:ce.b.Visible,handler:vt=>vt.cancelSuggestWidget(),kbOpts:{weight:Fi,kbExpr:c.a.textInputFocus,primary:9,secondary:[1024|9]}})),Object(p.k)(new Bi({id:"selectNextSuggestion",precondition:fe.a.and(ce.b.Visible,ce.b.MultipleSuggestions),handler:vt=>vt.selectNextSuggestion(),kbOpts:{weight:Fi,kbExpr:c.a.textInputFocus,primary:18,secondary:[2048|18],mac:{primary:18,secondary:[2048|18,256|44]}}})),Object(p.k)(new Bi({id:"selectNextPageSuggestion",precondition:fe.a.and(ce.b.Visible,ce.b.MultipleSuggestions),handler:vt=>vt.selectNextPageSuggestion(),kbOpts:{weight:Fi,kbExpr:c.a.textInputFocus,primary:12,secondary:[2048|12]}})),Object(p.k)(new Bi({id:"selectLastSuggestion",precondition:fe.a.and(ce.b.Visible,ce.b.MultipleSuggestions),handler:vt=>vt.selectLastSuggestion()})),Object(p.k)(new Bi({id:"selectPrevSuggestion",precondition:fe.a.and(ce.b.Visible,ce.b.MultipleSuggestions),handler:vt=>vt.selectPrevSuggestion(),kbOpts:{weight:Fi,kbExpr:c.a.textInputFocus,primary:16,secondary:[2048|16],mac:{primary:16,secondary:[2048|16,256|46]}}})),Object(p.k)(new Bi({id:"selectPrevPageSuggestion",precondition:fe.a.and(ce.b.Visible,ce.b.MultipleSuggestions),handler:vt=>vt.selectPrevPageSuggestion(),kbOpts:{weight:Fi,kbExpr:c.a.textInputFocus,primary:11,secondary:[2048|11]}})),Object(p.k)(new Bi({id:"selectFirstSuggestion",precondition:fe.a.and(ce.b.Visible,ce.b.MultipleSuggestions),handler:vt=>vt.selectFirstSuggestion()})),Object(p.k)(new Bi({id:"toggleSuggestionDetails",precondition:ce.b.Visible,handler:vt=>vt.toggleSuggestionDetails(),kbOpts:{weight:Fi,kbExpr:c.a.textInputFocus,primary:2048|10,secondary:[2048|39],mac:{primary:256|10,secondary:[2048|39]}},menuOpts:[{menuId:ce.g,group:"right",order:1,when:fe.a.and(ce.b.DetailsVisible,ce.b.CanResolve),title:H.a("detail.more","show less")},{menuId:ce.g,group:"right",order:1,when:fe.a.and(ce.b.DetailsVisible.toNegated(),ce.b.CanResolve),title:H.a("detail.less","show more")}]})),Object(p.k)(new Bi({id:"toggleExplainMode",precondition:ce.b.Visible,handler:vt=>vt.toggleExplainMode(),kbOpts:{weight:100,primary:2048|85}})),Object(p.k)(new Bi({id:"toggleSuggestionFocus",precondition:ce.b.Visible,handler:vt=>vt.toggleSuggestionFocus(),kbOpts:{weight:Fi,kbExpr:c.a.textInputFocus,primary:2048|512|10,mac:{primary:256|512|10}}})),Object(p.k)(new Bi({id:"insertBestCompletion",precondition:fe.a.and(c.a.textInputFocus,fe.a.equals("config.editor.tabCompletion","on"),U.AtEnd,ce.b.Visible.toNegated(),oe.OtherSuggestions.toNegated(),l.SnippetController2.InSnippetMode.toNegated()),handler:(vt,Xe)=>{vt.triggerSuggestAndAcceptBest(Object(d.k)(Xe)?Object.assign({fallback:"tab"},Xe):{fallback:"tab"})},kbOpts:{weight:Fi,primary:2}})),Object(p.k)(new Bi({id:"insertNextSuggestion",precondition:fe.a.and(c.a.textInputFocus,fe.a.equals("config.editor.tabCompletion","on"),oe.OtherSuggestions,ce.b.Visible.toNegated(),l.SnippetController2.InSnippetMode.toNegated()),handler:vt=>vt.acceptNextSuggestion(),kbOpts:{weight:Fi,kbExpr:c.a.textInputFocus,primary:2}})),Object(p.k)(new Bi({id:"insertPrevSuggestion",precondition:fe.a.and(c.a.textInputFocus,fe.a.equals("config.editor.tabCompletion","on"),oe.OtherSuggestions,ce.b.Visible.toNegated(),l.SnippetController2.InSnippetMode.toNegated()),handler:vt=>vt.acceptPrevSuggestion(),kbOpts:{weight:Fi,kbExpr:c.a.textInputFocus,primary:1024|2}})),Object(p.j)(class extends p.b{constructor(){super({id:"editor.action.resetSuggestSize",label:H.a("suggest.reset.label","Reset Suggest Widget Size"),alias:"Reset Suggest Widget Size",precondition:void 0})}run(vt,Xe){Ci.get(Xe).resetWidgetSize()}})},eq1K:function(ft,w,e){},erNZ:function(ft,w,e){"use strict";e.d(w,"c",function(){return f}),e.d(w,"d",function(){return u}),e.d(w,"a",function(){return d}),e.d(w,"b",function(){return E});var h=e("N0LK"),P=e("MNsG"),L=e("HpOR");let A;function I(){return A||(A=new TextDecoder("UTF-16LE")),A}let k;function O(){return k||(k=new TextDecoder("UTF-16BE")),k}let S;function f(){return S||(S=P.e()?I():O()),S}const u=typeof TextDecoder!="undefined";let d,E;u?(d=c=>new b(c),E=p):(d=c=>new m,E=n);function p(c,l,g){const y=new Uint16Array(c.buffer,l,g);return g>0&&(y[0]===65279||y[0]===65534)?n(c,l,g):I().decode(y)}function n(c,l,g){let y=[],C=0;for(let v=0;v=this._capacity){this._flushBuffer(),this._completedStrings[this._completedStrings.length]=c;return}for(let g=0;g=0;j--)(D=c[j])&&(v=(C<3?D(v):C>3?D(l,g,v):D(l,g))||v);return C>3&&v&&Object.defineProperty(l,g,v),v},n=function(c,l){return function(g,y){l(g,y,c)}};let b=class c{constructor(l,g,y,C,v,D){this._contextMenuService=g,this._contextViewService=y,this._contextKeyService=C,this._keybindingService=v,this._menuService=D,this._toDispose=new A.b,this._contextMenuIsBeingShownCount=0,this._editor=l,this._toDispose.add(this._editor.onContextMenu(j=>this._onContextMenu(j))),this._toDispose.add(this._editor.onMouseWheel(j=>{if(this._contextMenuIsBeingShownCount>0){const V=this._contextViewService.getContextViewElement(),G=j.srcElement;G.shadowRoot&&h.F(V)===G.shadowRoot||this._contextViewService.hideContextView()}})),this._toDispose.add(this._editor.onKeyDown(j=>{j.keyCode===58&&(j.preventDefault(),j.stopPropagation(),this.showContextMenu())}))}static get(l){return l.getContribution(c.ID)}_onContextMenu(l){if(!this._editor.hasModel())return;if(!this._editor.getOption(20)){this._editor.focus(),l.target.position&&!this._editor.getSelection().containsPosition(l.target.position)&&this._editor.setPosition(l.target.position);return}if(l.target.type===12)return;if(l.event.preventDefault(),l.event.stopPropagation(),l.target.type!==6&&l.target.type!==7&&l.target.type!==1)return;if(this._editor.focus(),l.target.position){let y=!1;for(const C of this._editor.getSelections())if(C.containsPosition(l.target.position)){y=!0;break}y||this._editor.setPosition(l.target.position)}let g=null;l.target.type!==1&&(g={x:l.event.posx-1,width:2,y:l.event.posy-1,height:2}),this.showContextMenu(g)}showContextMenu(l){if(!this._editor.getOption(20))return;if(!this._editor.hasModel())return;if(!this._contextMenuService){this._editor.focus();return}const g=this._getMenuActions(this._editor.getModel(),this._editor.isSimpleWidget?f.b.SimpleEditorContext:f.b.EditorContext);g.length>0&&this._doShowContextMenu(g,l)}_getMenuActions(l,g){const y=[],C=this._menuService.createMenu(g,this._contextKeyService),v=C.getActions({arg:l.uri});C.dispose();for(let D of v){const[,j]=D;let V=0;for(const G of j)if(G instanceof f.e){const B=this._getMenuActions(l,G.item.submenu);B.length>0&&(y.push(new L.e(G.id,G.label,B)),V++)}else y.push(G),V++;V&&y.push(new L.d)}return y.length&&y.pop(),y}_doShowContextMenu(l,g=null){if(!this._editor.hasModel())return;const y=this._editor.getOption(52);if(this._editor.updateOptions({hover:{enabled:!1}}),!g){this._editor.revealPosition(this._editor.getPosition(),1),this._editor.render();const v=this._editor.getScrolledVisiblePosition(this._editor.getPosition()),D=h.D(this._editor.getDomNode()),j=D.left+v.left,V=D.top+v.top+v.height;g={x:j,y:V}}const C=this._editor.getOption(113)&&!I.c;this._contextMenuIsBeingShownCount++,this._contextMenuService.showContextMenu({domForShadowRoot:C?this._editor.getDomNode():void 0,getAnchor:()=>g,getActions:()=>l,getActionViewItem:v=>{const D=this._keybindingFor(v);if(D)return new P.a(v,v,{label:!0,keybinding:D.getLabel(),isMenu:!0});const j=v;return typeof j.getActionViewItem=="function"?j.getActionViewItem():new P.a(v,v,{icon:!0,label:!0,isMenu:!0})},getKeyBinding:v=>this._keybindingFor(v),onHide:v=>{this._contextMenuIsBeingShownCount--,this._editor.focus(),this._editor.updateOptions({hover:y})}})}_keybindingFor(l){return this._keybindingService.lookupKeybinding(l.id)}dispose(){this._contextMenuIsBeingShownCount>0&&this._contextViewService.hideContextView(),this._toDispose.dispose()}};b.ID="editor.contrib.contextmenu",b=p([n(1,d.a),n(2,d.b),n(3,u.b),n(4,E.a),n(5,f.a)],b);class m extends k.b{constructor(){super({id:"editor.action.showContextMenu",label:S.a("action.showContextMenu.label","Show Editor Context Menu"),alias:"Show Editor Context Menu",precondition:void 0,kbOpts:{kbExpr:O.a.textInputFocus,primary:1024|68,weight:100}})}run(c,l){let g=b.get(l);g.showContextMenu()}}Object(k.l)(b.ID,b),Object(k.j)(m)},fdyd:function(ft,w,e){"use strict";e.d(w,"a",function(){return A});var h=e("EffR"),P=e("Vhoy");const L=new RegExp(`(\\\\)?\\$\\((${P.a.iconNameExpression}(?:${P.a.iconModifierExpression})?)\\)`,"g");function A(k){const O=new Array;let S,f=0,u=0;for(;(S=L.exec(k))!==null;){u=S.index||0,O.push(k.substring(f,u)),f=(S.index||0)+S[0].length;const[,d,E]=S;O.push(d?`$(${E})`:I({id:E}))}return f=Se.range.end)continue;if(K.endQ.concat(ee),[]))}class g{constructor(){this.groups=[],this._size=0}splice(K,Q,ee=[]){const Se=ee.length-Q,fe=b({start:0,end:K},this.groups),q=b({start:K+Q,end:Number.POSITIVE_INFINITY},this.groups).map(U=>({range:m(U.range,Se),size:U.size})),te=ee.map((U,H)=>({range:{start:K+H,end:K+H+1},size:U.size}));this.groups=l(fe,te,q),this._size=this.groups.reduce((U,H)=>U+H.size*(H.range.end-H.range.start),0)}get count(){const K=this.groups.length;return K?this.groups[K-1].range.end:0}get size(){return this._size}indexAt(K){if(K<0)return-1;let Q=0,ee=0;for(let Se of this.groups){const fe=Se.range.end-Se.range.start,q=ee+fe*Se.size;if(K{for(const ee of K){const Se=this.getRenderer(Q);Se.disposeTemplate(ee.templateData),ee.templateData=null}}),this.cache.clear()}getRenderer(K){const Q=this.renderers.get(K);if(!Q)throw new Error(`No renderer found for ${K}`);return Q}}var v=function(K,Q,ee,Se){var fe=arguments.length,q=fe<3?Q:Se===null?Se=Object.getOwnPropertyDescriptor(Q,ee):Se,te;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")q=Reflect.decorate(K,Q,ee,Se);else for(var U=K.length-1;U>=0;U--)(te=K[U])&&(q=(fe<3?te(q):fe>3?te(Q,ee,q):te(Q,ee))||q);return fe>3&&q&&Object.defineProperty(Q,ee,q),q};const D={useShadows:!0,verticalScrollMode:1,setRowLineHeight:!0,setRowHeight:!0,supportDynamicHeights:!1,dnd:{getDragElements(K){return[K]},getDragURI(){return null},onDragStart(){},onDragOver(){return!1},drop(){}},horizontalScrolling:!1,transformOptimization:!0,alwaysConsumeMouseWheel:!0};class j{constructor(K){this.elements=K}update(){}getData(){return this.elements}}class V{constructor(K){this.elements=K}update(){}getData(){return this.elements}}class G{constructor(){this.types=[],this.files=[]}update(K){if(K.types&&this.types.splice(0,this.types.length,...K.types),K.files){this.files.splice(0,this.files.length);for(let Q=0;QSe,(K==null?void 0:K.getPosInSet)?this.getPosInSet=K.getPosInSet.bind(K):this.getPosInSet=(Q,ee)=>ee+1,(K==null?void 0:K.getRole)?this.getRole=K.getRole.bind(K):this.getRole=Q=>"listitem",(K==null?void 0:K.isChecked)?this.isChecked=K.isChecked.bind(K):this.isChecked=Q=>{}}}class Y{constructor(K,Q,ee,Se=D){if(this.virtualDelegate=Q,this.domId=`list_id_${++Y.InstanceCount}`,this.renderers=new Map,this.renderWidth=0,this._scrollHeight=0,this.scrollableElementUpdateDisposable=null,this.scrollableElementWidthDelayer=new S.a(50),this.splicing=!1,this.dragOverAnimationStopDisposable=d.a.None,this.dragOverMouseY=0,this.canDrop=!1,this.currentDragFeedbackDisposable=d.a.None,this.onDragLeaveTimeout=d.a.None,this.disposables=new d.b,this._onDidChangeContentHeight=new u.b,this._horizontalScrolling=!1,Se.horizontalScrolling&&Se.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");this.items=[],this.itemId=0,this.rangeMap=new g;for(const q of ee)this.renderers.set(q.templateId,q);this.cache=this.disposables.add(new C(this.renderers)),this.lastRenderTop=0,this.lastRenderHeight=0,this.domNode=document.createElement("div"),this.domNode.className="monaco-list",this.domNode.classList.add(this.domId),this.domNode.tabIndex=0,this.domNode.classList.toggle("mouse-support",typeof Se.mouseSupport=="boolean"?Se.mouseSupport:!0),this._horizontalScrolling=Object(E.e)(Se,q=>q.horizontalScrolling,D.horizontalScrolling),this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this.additionalScrollHeight=typeof Se.additionalScrollHeight=="undefined"?0:Se.additionalScrollHeight,this.accessibilityProvider=new z(Se.accessibilityProvider),this.rowsContainer=document.createElement("div"),this.rowsContainer.className="monaco-list-rows";const fe=Object(E.e)(Se,q=>q.transformOptimization,D.transformOptimization);fe&&(this.rowsContainer.style.transform="translate3d(0px, 0px, 0px)"),this.disposables.add(I.b.addTarget(this.rowsContainer)),this.scrollable=new n.a(Object(E.e)(Se,q=>q.smoothScrolling,!1)?125:0,q=>Object(L.V)(q)),this.scrollableElement=this.disposables.add(new k.c(this.rowsContainer,{alwaysConsumeMouseWheel:Object(E.e)(Se,q=>q.alwaysConsumeMouseWheel,D.alwaysConsumeMouseWheel),horizontal:1,vertical:Object(E.e)(Se,q=>q.verticalScrollMode,D.verticalScrollMode),useShadows:Object(E.e)(Se,q=>q.useShadows,D.useShadows),mouseWheelScrollSensitivity:Se.mouseWheelScrollSensitivity,fastScrollSensitivity:Se.fastScrollSensitivity},this.scrollable)),this.domNode.appendChild(this.scrollableElement.getDomNode()),K.appendChild(this.domNode),this.scrollableElement.onScroll(this.onScroll,this,this.disposables),this.disposables.add(Object(L.i)(this.rowsContainer,I.a.Change,q=>this.onTouchChange(q))),this.disposables.add(Object(L.i)(this.scrollableElement.getDomNode(),"scroll",q=>q.target.scrollTop=0)),this.disposables.add(Object(L.i)(this.domNode,"dragover",q=>this.onDragOver(this.toDragEvent(q)))),this.disposables.add(Object(L.i)(this.domNode,"drop",q=>this.onDrop(this.toDragEvent(q)))),this.disposables.add(Object(L.i)(this.domNode,"dragleave",q=>this.onDragLeave(this.toDragEvent(q)))),this.disposables.add(Object(L.i)(this.domNode,"dragend",q=>this.onDragEnd(q))),this.setRowLineHeight=Object(E.e)(Se,q=>q.setRowLineHeight,D.setRowLineHeight),this.setRowHeight=Object(E.e)(Se,q=>q.setRowHeight,D.setRowHeight),this.supportDynamicHeights=Object(E.e)(Se,q=>q.supportDynamicHeights,D.supportDynamicHeights),this.dnd=Object(E.e)(Se,q=>q.dnd,D.dnd),this.layout()}get contentHeight(){return this.rangeMap.size}get horizontalScrolling(){return this._horizontalScrolling}set horizontalScrolling(K){if(K===this._horizontalScrolling)return;if(K&&this.supportDynamicHeights)throw new Error("Horizontal scrolling and dynamic heights not supported simultaneously");if(this._horizontalScrolling=K,this.domNode.classList.toggle("horizontal-scrolling",this._horizontalScrolling),this._horizontalScrolling){for(const Q of this.items)this.measureItemWidth(Q);this.updateScrollWidth(),this.scrollableElement.setScrollDimensions({width:Object(L.C)(this.domNode)}),this.rowsContainer.style.width=`${Math.max(this.scrollWidth||0,this.renderWidth)}px`}else this.scrollableElementWidthDelayer.cancel(),this.scrollableElement.setScrollDimensions({width:this.renderWidth,scrollWidth:this.renderWidth}),this.rowsContainer.style.width=""}updateOptions(K){K.additionalScrollHeight!==void 0&&(this.additionalScrollHeight=K.additionalScrollHeight,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),K.smoothScrolling!==void 0&&this.scrollable.setSmoothScrollDuration(K.smoothScrolling?125:0),K.horizontalScrolling!==void 0&&(this.horizontalScrolling=K.horizontalScrolling),K.mouseWheelScrollSensitivity!==void 0&&this.scrollableElement.updateOptions({mouseWheelScrollSensitivity:K.mouseWheelScrollSensitivity}),K.fastScrollSensitivity!==void 0&&this.scrollableElement.updateOptions({fastScrollSensitivity:K.fastScrollSensitivity})}splice(K,Q,ee=[]){if(this.splicing)throw new Error("Can't run recursive splices.");this.splicing=!0;try{return this._splice(K,Q,ee)}finally{this.splicing=!1,this._onDidChangeContentHeight.fire(this.contentHeight)}}_splice(K,Q,ee=[]){const Se=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),fe={start:K,end:K+Q},q=p.a.intersect(Se,fe),te=new Map;for(let we=q.start;we({id:String(this.itemId++),element:we,templateId:this.virtualDelegate.getTemplateId(we),size:this.virtualDelegate.getHeight(we),width:void 0,hasDynamicHeight:!!this.virtualDelegate.hasDynamicHeight&&this.virtualDelegate.hasDynamicHeight(we),lastDynamicHeightWidth:void 0,row:null,uri:void 0,dropTarget:!1,dragStartDisposable:d.a.None}));let Ce;K===0&&Q>=this.items.length?(this.rangeMap=new g,this.rangeMap.splice(0,0,ne),Ce=this.items,this.items=ne):(this.rangeMap.splice(K,Q,ne),Ce=this.items.splice(K,Q,...ne));const Le=ee.length-Q,ce=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight),me=m(H,Le),Oe=p.a.intersect(ce,me);for(let we=Oe.start;wem(we,Le)),Ne={start:K,end:K+ee.length},ve=[Ne,...De].map(we=>p.a.intersect(ce,we)),re=this.getNextToLastElement(ve);for(const we of ve)for(let Ie=we.start;Iewe.element)}eventuallyUpdateScrollDimensions(){this._scrollHeight=this.contentHeight,this.rowsContainer.style.height=`${this._scrollHeight}px`,this.scrollableElementUpdateDisposable||(this.scrollableElementUpdateDisposable=Object(L.V)(()=>{this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight}),this.updateScrollWidth(),this.scrollableElementUpdateDisposable=null}))}eventuallyUpdateScrollWidth(){if(!this.horizontalScrolling){this.scrollableElementWidthDelayer.cancel();return}this.scrollableElementWidthDelayer.trigger(()=>this.updateScrollWidth())}updateScrollWidth(){if(!this.horizontalScrolling)return;let K=0;for(const Q of this.items)typeof Q.width!="undefined"&&(K=Math.max(K,Q.width));this.scrollWidth=K,this.scrollableElement.setScrollDimensions({scrollWidth:K===0?0:K+10})}rerender(){if(!this.supportDynamicHeights)return;for(const K of this.items)K.lastDynamicHeightWidth=void 0;this._rerender(this.lastRenderTop,this.lastRenderHeight)}get length(){return this.items.length}get renderHeight(){const K=this.scrollableElement.getScrollDimensions();return K.height}element(K){return this.items[K].element}domElement(K){const Q=this.items[K].row;return Q&&Q.domNode}elementHeight(K){return this.items[K].size}elementTop(K){return this.rangeMap.positionAt(K)}indexAt(K){return this.rangeMap.indexAt(K)}indexAfter(K){return this.rangeMap.indexAfter(K)}layout(K,Q){let ee={height:typeof K=="number"?K:Object(L.B)(this.domNode)};this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,ee.scrollHeight=this.scrollHeight),this.scrollableElement.setScrollDimensions(ee),typeof Q!="undefined"&&(this.renderWidth=Q,this.supportDynamicHeights&&this._rerender(this.scrollTop,this.renderHeight)),this.horizontalScrolling&&this.scrollableElement.setScrollDimensions({width:typeof Q=="number"?Q:Object(L.C)(this.domNode)})}render(K,Q,ee,Se,fe,q=!1){const te=this.getRenderRange(Q,ee),U=p.a.relativeComplement(te,K),H=p.a.relativeComplement(K,te),W=this.getNextToLastElement(U);if(q){const ne=p.a.intersect(K,te);for(let Ce=ne.start;Cethis.onDragStart(Se.element,U,H))),this.horizontalScrolling&&(this.measureItemWidth(Se),this.eventuallyUpdateScrollWidth())}measureItemWidth(K){if(!K.row||!K.row.domNode)return;K.row.domNode.style.width=h.g?"-moz-fit-content":"fit-content",K.width=Object(L.C)(K.row.domNode);const Q=window.getComputedStyle(K.row.domNode);Q.paddingLeft&&(K.width+=parseFloat(Q.paddingLeft)),Q.paddingRight&&(K.width+=parseFloat(Q.paddingRight)),K.row.domNode.style.width=""}updateItemInDOM(K,Q){K.row.domNode.style.top=`${this.elementTop(Q)}px`,this.setRowHeight&&(K.row.domNode.style.height=`${K.size}px`),this.setRowLineHeight&&(K.row.domNode.style.lineHeight=`${K.size}px`),K.row.domNode.setAttribute("data-index",`${Q}`),K.row.domNode.setAttribute("data-last-element",Q===this.length-1?"true":"false"),K.row.domNode.setAttribute("data-parity",Q%2===0?"even":"odd"),K.row.domNode.setAttribute("aria-setsize",String(this.accessibilityProvider.getSetSize(K.element,Q,this.length))),K.row.domNode.setAttribute("aria-posinset",String(this.accessibilityProvider.getPosInSet(K.element,Q))),K.row.domNode.setAttribute("id",this.getElementDomId(Q)),K.row.domNode.classList.toggle("drop-target",K.dropTarget)}removeItemFromDOM(K){const Q=this.items[K];if(Q.dragStartDisposable.dispose(),Q.row){const ee=this.renderers.get(Q.templateId);ee&&ee.disposeElement&&ee.disposeElement(Q.element,K,Q.row.templateData,Q.size),this.cache.release(Q.row),Q.row=null}this.horizontalScrolling&&this.eventuallyUpdateScrollWidth()}getScrollTop(){const K=this.scrollableElement.getScrollPosition();return K.scrollTop}setScrollTop(K,Q){this.scrollableElementUpdateDisposable&&(this.scrollableElementUpdateDisposable.dispose(),this.scrollableElementUpdateDisposable=null,this.scrollableElement.setScrollDimensions({scrollHeight:this.scrollHeight})),this.scrollableElement.setScrollPosition({scrollTop:K,reuseAnimation:Q})}get scrollTop(){return this.getScrollTop()}set scrollTop(K){this.setScrollTop(K)}get scrollHeight(){return this._scrollHeight+(this.horizontalScrolling?10:0)+this.additionalScrollHeight}get onMouseClick(){return u.c.map(this.disposables.add(new A.a(this.domNode,"click")).event,K=>this.toMouseEvent(K))}get onMouseDblClick(){return u.c.map(this.disposables.add(new A.a(this.domNode,"dblclick")).event,K=>this.toMouseEvent(K))}get onMouseMiddleClick(){return u.c.filter(u.c.map(this.disposables.add(new A.a(this.domNode,"auxclick")).event,K=>this.toMouseEvent(K)),K=>K.browserEvent.button===1)}get onMouseDown(){return u.c.map(this.disposables.add(new A.a(this.domNode,"mousedown")).event,K=>this.toMouseEvent(K))}get onContextMenu(){return u.c.any(u.c.map(this.disposables.add(new A.a(this.domNode,"contextmenu")).event,K=>this.toMouseEvent(K)),u.c.map(this.disposables.add(new A.a(this.domNode,I.a.Contextmenu)).event,K=>this.toGestureEvent(K)))}get onTouchStart(){return u.c.map(this.disposables.add(new A.a(this.domNode,"touchstart")).event,K=>this.toTouchEvent(K))}get onTap(){return u.c.map(this.disposables.add(new A.a(this.rowsContainer,I.a.Tap)).event,K=>this.toGestureEvent(K))}toMouseEvent(K){const Q=this.getItemIndexFromEventTarget(K.target||null),ee=typeof Q=="undefined"?void 0:this.items[Q],Se=ee&&ee.element;return{browserEvent:K,index:Q,element:Se}}toTouchEvent(K){const Q=this.getItemIndexFromEventTarget(K.target||null),ee=typeof Q=="undefined"?void 0:this.items[Q],Se=ee&&ee.element;return{browserEvent:K,index:Q,element:Se}}toGestureEvent(K){const Q=this.getItemIndexFromEventTarget(K.initialTarget||null),ee=typeof Q=="undefined"?void 0:this.items[Q],Se=ee&&ee.element;return{browserEvent:K,index:Q,element:Se}}toDragEvent(K){const Q=this.getItemIndexFromEventTarget(K.target||null),ee=typeof Q=="undefined"?void 0:this.items[Q],Se=ee&&ee.element;return{browserEvent:K,index:Q,element:Se}}onScroll(K){try{const Q=this.getRenderRange(this.lastRenderTop,this.lastRenderHeight);this.render(Q,K.scrollTop,K.height,K.scrollLeft,K.scrollWidth),this.supportDynamicHeights&&this._rerender(K.scrollTop,K.height,K.inSmoothScrolling)}catch(Q){throw console.error("Got bad scroll event:",K),Q}}onTouchChange(K){K.preventDefault(),K.stopPropagation(),this.scrollTop-=K.translationY}onDragStart(K,Q,ee){if(!ee.dataTransfer)return;const Se=this.dnd.getDragElements(K);if(ee.dataTransfer.effectAllowed="copyMove",ee.dataTransfer.setData(P.a.TEXT,Q),ee.dataTransfer.setDragImage){let fe;this.dnd.getDragLabel&&(fe=this.dnd.getDragLabel(Se,ee)),typeof fe=="undefined"&&(fe=String(Se.length));const q=Object(L.a)(".monaco-drag-image");q.textContent=fe,document.body.appendChild(q),ee.dataTransfer.setDragImage(q,-10,-10),setTimeout(()=>document.body.removeChild(q),0)}this.currentDragData=new j(Se),P.c.CurrentDragAndDropData=new V(Se),this.dnd.onDragStart&&this.dnd.onDragStart(this.currentDragData,ee)}onDragOver(K){if(K.browserEvent.preventDefault(),this.onDragLeaveTimeout.dispose(),P.c.CurrentDragAndDropData&&P.c.CurrentDragAndDropData.getData()==="vscode-ui")return!1;if(this.setupDragAndDropScrollTopAnimation(K.browserEvent),!K.browserEvent.dataTransfer)return!1;if(!this.currentDragData)if(P.c.CurrentDragAndDropData)this.currentDragData=P.c.CurrentDragAndDropData;else{if(!K.browserEvent.dataTransfer.types)return!1;this.currentDragData=new G}const Q=this.dnd.onDragOver(this.currentDragData,K.element,K.index,K.browserEvent);if(this.canDrop=typeof Q=="boolean"?Q:Q.accept,!this.canDrop)return this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),!1;K.browserEvent.dataTransfer.dropEffect=typeof Q!="boolean"&&Q.effect===0?"copy":"move";let ee;if(typeof Q!="boolean"&&Q.feedback?ee=Q.feedback:typeof K.index=="undefined"?ee=[-1]:ee=[K.index],ee=Object(O.f)(ee).filter(Se=>Se>=-1&&SeSe-fe),ee=ee[0]===-1?[-1]:ee,B(this.currentDragFeedback,ee))return!0;if(this.currentDragFeedback=ee,this.currentDragFeedbackDisposable.dispose(),ee[0]===-1)this.domNode.classList.add("drop-target"),this.rowsContainer.classList.add("drop-target"),this.currentDragFeedbackDisposable=Object(d.i)(()=>{this.domNode.classList.remove("drop-target"),this.rowsContainer.classList.remove("drop-target")});else{for(const Se of ee){const fe=this.items[Se];fe.dropTarget=!0,fe.row&&fe.row.domNode.classList.add("drop-target")}this.currentDragFeedbackDisposable=Object(d.i)(()=>{for(const Se of ee){const fe=this.items[Se];fe.dropTarget=!1,fe.row&&fe.row.domNode.classList.remove("drop-target")}})}return!0}onDragLeave(K){var Q,ee;this.onDragLeaveTimeout.dispose(),this.onDragLeaveTimeout=Object(S.i)(()=>this.clearDragOverFeedback(),100),this.currentDragData&&((ee=(Q=this.dnd).onDragLeave)===null||ee===void 0||ee.call(Q,this.currentDragData,K.element,K.index,K.browserEvent))}onDrop(K){if(!this.canDrop)return;const Q=this.currentDragData;if(this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.currentDragData=void 0,P.c.CurrentDragAndDropData=void 0,!Q||!K.browserEvent.dataTransfer)return;K.browserEvent.preventDefault(),Q.update(K.browserEvent.dataTransfer),this.dnd.drop(Q,K.element,K.index,K.browserEvent)}onDragEnd(K){this.canDrop=!1,this.teardownDragAndDropScrollTopAnimation(),this.clearDragOverFeedback(),this.currentDragData=void 0,P.c.CurrentDragAndDropData=void 0,this.dnd.onDragEnd&&this.dnd.onDragEnd(K)}clearDragOverFeedback(){this.currentDragFeedback=void 0,this.currentDragFeedbackDisposable.dispose(),this.currentDragFeedbackDisposable=d.a.None}setupDragAndDropScrollTopAnimation(K){if(!this.dragOverAnimationDisposable){const Q=Object(L.G)(this.domNode).top;this.dragOverAnimationDisposable=Object(L.p)(this.animateDragAndDropScrollTop.bind(this,Q))}this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationStopDisposable=Object(S.i)(()=>{this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)},1e3),this.dragOverMouseY=K.pageY}animateDragAndDropScrollTop(K){if(this.dragOverMouseY===void 0)return;const Q=this.dragOverMouseY-K,ee=this.renderHeight-35;Q<35?this.scrollTop+=Math.max(-14,Math.floor(.3*(Q-35))):Q>ee&&(this.scrollTop+=Math.min(14,Math.floor(.3*(Q-ee))))}teardownDragAndDropScrollTopAnimation(){this.dragOverAnimationStopDisposable.dispose(),this.dragOverAnimationDisposable&&(this.dragOverAnimationDisposable.dispose(),this.dragOverAnimationDisposable=void 0)}getItemIndexFromEventTarget(K){const Q=this.scrollableElement.getDomNode();let ee=K;for(;ee instanceof HTMLElement&&ee!==this.rowsContainer&&Q.contains(ee);){const Se=ee.getAttribute("data-index");if(Se){const fe=Number(Se);if(!isNaN(fe))return fe}ee=ee.parentElement}return}getRenderRange(K,Q){return{start:this.rangeMap.indexAt(K),end:this.rangeMap.indexAfter(K+Q-1)}}_rerender(K,Q,ee){const Se=this.getRenderRange(K,Q);let fe,q;K===this.elementTop(Se.start)?(fe=Se.start,q=0):Se.end-Se.start>1&&(fe=Se.start+1,q=this.elementTop(fe)-K);let te=0;for(;;){const U=this.getRenderRange(K,Q);let H=!1;for(let W=U.start;W0?[{start:0,end:Te.length}]:[]:null}function k(xe,Te){const He=Te.toLowerCase().indexOf(xe.toLowerCase());return He===-1?null:[{start:He,end:He+xe.length}]}function O(xe,Te){return S(xe.toLowerCase(),Te.toLowerCase(),0,0)}function S(xe,Te,He,st){if(He===xe.length)return[];if(st===Te.length)return null;if(xe[He]===Te[st]){let nt=null;return(nt=S(xe,Te,He+1,st+1))?c({start:st,end:st+1},nt):null}return S(xe,Te,He,st+1)}function f(xe){return 97<=xe&&xe<=122}function u(xe){return 65<=xe&&xe<=90}function d(xe){return 48<=xe&&xe<=57}function E(xe){return xe===32||xe===9||xe===10||xe===13}const p=new Set;"`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?".split("").forEach(xe=>p.add(xe.charCodeAt(0)));function n(xe){return E(xe)||p.has(xe)}function b(xe,Te){return xe===Te||n(xe)&&n(Te)}function m(xe){return f(xe)||u(xe)||d(xe)}function c(xe,Te){return Te.length===0?Te=[xe]:xe.end===Te[0].start?Te[0].start=xe.start:Te.unshift(xe),Te}function l(xe,Te){for(let He=Te;He0&&!m(xe.charCodeAt(He-1)))return He}return xe.length}function g(xe,Te,He,st){if(He===xe.length)return[];if(st===Te.length)return null;if(xe[He]!==Te[st].toLowerCase())return null;{let nt=null,rt=st+1;for(nt=g(xe,Te,He+1,st+1);!nt&&(rt=l(Te,rt)).6}function v(xe){const{upperPercent:Te,lowerPercent:He,alphaPercent:st,numericPercent:nt}=xe;return He>.2&&Te<.8&&st>.6&&nt<.2}function D(xe){let Te=0,He=0,st=0,nt=0;for(let rt=0;rt60)return null;const He=y(Te);if(!v(He)){if(!C(He))return null;Te=Te.toLowerCase()}let st=null,nt=0;for(xe=xe.toLowerCase();nt0&&n(xe.charCodeAt(He-1)))return He;return xe.length}const z=L(A,j,k),Y=L(A,j,O),K=new h.a(1e4);function Q(xe,Te,He=!1){if(typeof xe!="string"||typeof Te!="string")return null;let st=K.get(xe);st||(st=new RegExp(P.p(xe),"i"),K.set(xe,st));const nt=st.exec(Te);return nt?[{start:nt.index,end:nt.index+nt[0].length}]:He?Y(xe,Te):z(xe,Te)}function ee(xe,Te,He,st,nt,rt){const wt=Math.min(13,xe.length);for(;He1;st--){const nt=xe[st]+He,rt=Te[Te.length-1];rt&&rt.end===nt?rt.end=nt+1:Te.push({start:nt,end:nt+1})}return Te}const fe=128;function q(){const xe=[],Te=[];for(let He=0;He<=fe;He++)Te[He]=0;for(let He=0;He<=fe;He++)xe.push(Te.slice(0));return xe}function te(xe){const Te=[];for(let He=0;He<=xe;He++)Te[He]=0;return Te}const U=te(2*fe),H=te(2*fe),W=q(),ne=q(),Ce=q(),Le=!1;function ce(xe,Te,He,st,nt){function rt(Pt,no,ht=" "){for(;Pt.lengthrt(Pt,3)).join("|")} `;for(let Pt=0;Pt<=He;Pt++)Pt===0?wt+=" |":wt+=`${Te[Pt-1]}|`,wt+=xe[Pt].slice(0,nt+1).map(no=>rt(no.toString(),3)).join("|")+` `;return wt}function me(xe,Te,He,st){xe=xe.substr(Te),He=He.substr(st),console.log(ce(ne,xe,xe.length,He,He.length)),console.log(ce(Ce,xe,xe.length,He,He.length)),console.log(ce(W,xe,xe.length,He,He.length))}function Oe(xe,Te){if(Te<0||Te>=xe.length)return!1;const He=xe.codePointAt(Te);switch(He){case 95:case 45:case 46:case 32:case 47:case 92:case 39:case 34:case 58:case 36:case 60:case 40:case 91:return!0;case void 0:return!1;default:return!!P.B(He)}}function oe(xe,Te){if(Te<0||Te>=xe.length)return!1;const He=xe.charCodeAt(Te);switch(He){case 32:case 9:return!0;default:return!1}}function De(xe,Te,He){return Te[xe]!==He[xe]}function Ne(xe,Te,He,st,nt,rt,wt=!1){for(;Tefe?fe:xe.length,no=st.length>fe?fe:st.length;if(He>=Pt||rt>=no||Pt-He>no-rt)return;if(!Ne(Te,He,Pt,nt,rt,no,!0))return;we(Pt,no,He,rt,Te,nt);let ht=1,lt=1,le=He,Pe=rt;const it=[!1];for(ht=1,le=He;leao,Ge=Wt?ne[ht][lt-1]+(W[ht][lt-1]>0?-5:0):0,mt=Pe>ao+1&&W[ht][lt-1]>0,Gt=mt?ne[ht][lt-2]+(W[ht][lt-2]>0?-5:0):0;if(mt&&(!Wt||Gt>=Ge)&&(!_o||Gt>=to))ne[ht][lt]=Gt,Ce[ht][lt]=3,W[ht][lt]=0;else if(Wt&&(!_o||Ge>=to))ne[ht][lt]=Ge,Ce[ht][lt]=2,W[ht][lt]=0;else if(_o)ne[ht][lt]=to,Ce[ht][lt]=1,W[ht][lt]=W[ht-1][lt-1]+1;else throw new Error("not possible")}}if(Le&&me(xe,He,st,rt),!it[0]&&!wt)return;ht--,lt--;const Dt=[ne[ht][lt],rt];let kt=0,eo=0;for(;ht>=1;){let ao=lt;do{const So=Ce[ht][ao];if(So===3)ao=ao-2;else if(So===2)ao=ao-1;else break}while(ao>=1);kt>1&&Te[He+ht-1]===nt[rt+lt-1]&&!De(ao+rt-1,st,nt)&&kt+1>W[ht][ao]&&(ao=lt),ao===lt?kt++:kt=1,eo||(eo=ao),ht--,lt=ao-1,Dt.push(lt)}no===Pt&&(Dt[0]+=2);const bo=eo-Pt;return Dt[0]-=bo,Dt}function we(xe,Te,He,st,nt,rt){let wt=xe-1,Pt=Te-1;for(;wt>=He&&Pt>=st;)nt[wt]===rt[Pt]&&(H[wt]=Pt,wt--),Pt--}function Ie(xe,Te,He,st,nt,rt,wt,Pt,no,ht,lt){if(Te[He]!==rt[wt])return Number.MIN_SAFE_INTEGER;let le=1,Pe=!1;return wt===He-st?le=xe[He]===nt[wt]?7:5:De(wt,nt,rt)&&(wt===0||!De(wt-1,nt,rt))?(le=xe[He]===nt[wt]?7:5,Pe=!0):Oe(rt,wt)&&(wt===0||!Oe(rt,wt-1))?le=5:(Oe(rt,wt-1)||oe(rt,wt-1))&&(le=5,Pe=!0),le>1&&He===st&&(lt[0]=!0),Pe||(Pe=De(wt,nt,rt)||Oe(rt,wt-1)||oe(rt,wt-1)),He===st?wt>no&&(le-=Pe?3:5):ht?le+=Pe?2:0:le+=Pe?0:1,wt+1===Pt&&(le-=Pe?3:5),le}function ge(xe,Te,He,st,nt,rt,wt){return ye(xe,Te,He,st,nt,rt,!0,wt)}function ye(xe,Te,He,st,nt,rt,wt,Pt){let no=re(xe,Te,He,st,nt,rt,Pt);if(no&&!wt)return no;if(xe.length>=3){const ht=Math.min(7,xe.length-1);for(let lt=He+1;ltno[0])&&(no=Pe))}}}return no}function ze(xe,Te){if(Te+1>=xe.length)return;const He=xe[Te],st=xe[Te+1];return He===st?void 0:xe.slice(0,Te)+st+He+xe.slice(Te+2)}},gCVg:function(ft,w,e){"use strict";e.d(w,"a",function(){return L});var h=e("cGHE"),P=e("aokT");class L extends P.a{constructor(A,I,k,O){super(A,I,k,O);this.selectionStartLineNumber=A,this.selectionStartColumn=I,this.positionLineNumber=k,this.positionColumn=O}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(A){return L.selectionsEqual(this,A)}static selectionsEqual(A,I){return A.selectionStartLineNumber===I.selectionStartLineNumber&&A.selectionStartColumn===I.selectionStartColumn&&A.positionLineNumber===I.positionLineNumber&&A.positionColumn===I.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(A,I){return this.getDirection()===0?new L(this.startLineNumber,this.startColumn,A,I):new L(A,I,this.startLineNumber,this.startColumn)}getPosition(){return new h.a(this.positionLineNumber,this.positionColumn)}setStartPosition(A,I){return this.getDirection()===0?new L(A,I,this.endLineNumber,this.endColumn):new L(this.endLineNumber,this.endColumn,A,I)}static fromPositions(A,I=A){return new L(A.lineNumber,A.column,I.lineNumber,I.column)}static liftSelection(A){return new L(A.selectionStartLineNumber,A.selectionStartColumn,A.positionLineNumber,A.positionColumn)}static selectionsArrEqual(A,I){if(A&&!I||!A&&I)return!1;if(!A&&!I)return!0;if(A.length!==I.length)return!1;for(let k=0,O=A.length;k=0;Y--)(z=v[Y])&&(B=(G<3?z(B):G>3?z(D,j,B):z(D,j))||B);return G>3&&B&&Object.defineProperty(D,j,B),B},m=function(v,D){return function(j,V){D(j,V,v)}};let c=class v extends I.a{constructor(D,j,V){super();this._editor=D,this._modeService=V,this._widget=null,this._register(this._editor.onDidChangeModel(G=>this.stop())),this._register(this._editor.onDidChangeModelLanguage(G=>this.stop())),this._register(O.F.onDidChange(G=>this.stop())),this._register(this._editor.onKeyUp(G=>G.keyCode===9&&this.stop()))}static get(D){return D.getContribution(v.ID)}dispose(){this.stop(),super.dispose()}launch(){if(this._widget)return;if(!this._editor.hasModel())return;this._widget=new C(this._editor,this._modeService)}stop(){this._widget&&(this._widget.dispose(),this._widget=null)}};c.ID="editor.contrib.inspectTokens",c=b([m(1,u.a),m(2,f.a)],c);class l extends k.b{constructor(){super({id:"editor.action.inspectTokens",label:p.c.inspectTokensAction,alias:"Developer: Inspect Tokens",precondition:void 0})}run(v,D){let j=c.get(D);j&&j.launch()}}function g(v){let D="";for(let j=0,V=v.length;jS.b,tokenize:(G,B,z,Y)=>Object(S.c)(D,G,z,Y),tokenize2:(G,B,z,Y)=>Object(S.d)(V,G,z,Y)}}class C extends I.a{constructor(v,D){super();this.allowEditorOverflow=!0,this._editor=v,this._modeService=D,this._model=this._editor.getModel(),this._domNode=document.createElement("div"),this._domNode.className="tokens-inspect-widget",this._tokenizationSupport=y(this._modeService.languageIdCodec,this._model.getLanguageId()),this._compute(this._editor.getPosition()),this._register(this._editor.onDidChangeCursorPosition(j=>this._compute(this._editor.getPosition()))),this._editor.addContentWidget(this)}dispose(){this._editor.removeContentWidget(this),super.dispose()}getId(){return C._ID}_compute(v){let D=this._getTokensAtLine(v.lineNumber),j=0;for(let Y=D.tokens1.length-1;Y>=0;Y--){let K=D.tokens1[Y];if(v.column-1>=K.offset){j=Y;break}}let V=0;for(let Y=D.tokens2.length>>>1;Y>=0;Y--)if(v.column-1>=D.tokens2[Y<<1]){V=Y;break}let G=this._model.getLineContent(v.lineNumber),B="";if(j{const j=v.getColor(d.F);if(j){let B=v.type===n.a.HIGH_CONTRAST?2:1;D.addRule(`.monaco-editor .tokens-inspect-widget { border: ${B}px solid ${j}; }`),D.addRule(`.monaco-editor .tokens-inspect-widget .tokens-inspect-separator { background-color: ${j}; }`)}const V=v.getColor(d.E);V&&D.addRule(`.monaco-editor .tokens-inspect-widget { background-color: ${V}; }`);const G=v.getColor(d.G);G&&D.addRule(`.monaco-editor .tokens-inspect-widget { color: ${G}; }`)})},gqHg:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"c",extensions:[".c",".h"],aliases:["C","c"],loader:function(){return e.e(22).then(e.bind(null,"fhwZ"))}}),Object(h.a)({id:"cpp",extensions:[".cpp",".cc",".cxx",".hpp",".hh",".hxx"],aliases:["C++","Cpp","cpp"],loader:function(){return e.e(22).then(e.bind(null,"fhwZ"))}})},gslv:function(ft,w,e){"use strict";e.d(w,"i",function(){return k}),e.d(w,"e",function(){return S}),e.d(w,"f",function(){return f}),e.d(w,"c",function(){return u}),e.d(w,"b",function(){return d}),e.d(w,"d",function(){return E}),e.d(w,"g",function(){return p}),e.d(w,"h",function(){return n}),e.d(w,"j",function(){return b}),e.d(w,"a",function(){return m});var h=e("PTeM"),P=e("tYmi"),L=e("MrjW"),A=e("N0LK"),I=e("bY76");function k(c){return Object(I.b)(c,!0)}class O{constructor(c){this._ignorePathCasing=c}compare(c,l,g=!1){return c===l?0:Object(A.f)(this.getComparisonKey(c,g),this.getComparisonKey(l,g))}isEqual(c,l,g=!1){return c===l?!0:!c||!l?!1:this.getComparisonKey(c,g)===this.getComparisonKey(l,g)}getComparisonKey(c,l=!1){return c.with({path:this._ignorePathCasing(c)?c.path.toLowerCase():void 0,fragment:l?null:void 0}).toString()}joinPath(c,...l){return I.a.joinPath(c,...l)}basenameOrAuthority(c){return d(c)||c.authority}basename(c){return L.e.basename(c.path)}dirname(c){if(c.path.length===0)return c;let l;return c.scheme===P.c.file?l=I.a.file(L.b(k(c))).path:(l=L.e.dirname(c.path),c.authority&&l.length&&l.charCodeAt(0)!==47&&(console.error(`dirname("${c.toString})) resulted in a relative path`),l="/")),c.with({path:l})}normalizePath(c){if(!c.path.length)return c;let l;return c.scheme===P.c.file?l=I.a.file(L.d(k(c))).path:l=L.e.normalize(c.path),c.with({path:l})}resolvePath(c,l){if(c.scheme===P.c.file){const g=I.a.file(L.g(k(c),l));return c.with({authority:g.authority,path:g.path})}return l=h.d(l),c.with({path:L.e.resolve(c.path,l)})}}const S=new O(()=>!1),f=S.isEqual.bind(S),u=S.basenameOrAuthority.bind(S),d=S.basename.bind(S),E=S.dirname.bind(S),p=S.joinPath.bind(S),n=S.normalizePath.bind(S),b=S.resolvePath.bind(S);var m;(function(c){c.META_DATA_LABEL="label",c.META_DATA_DESCRIPTION="description",c.META_DATA_SIZE="size",c.META_DATA_MIME="mime";function l(g){const y=new Map,C=g.path.substring(g.path.indexOf(";")+1,g.path.lastIndexOf(";"));C.split(";").forEach(D=>{const[j,V]=D.split(":");j&&V&&y.set(j,V)});const v=g.path.substring(0,g.path.indexOf(";"));return v&&y.set(c.META_DATA_MIME,v),y}c.parseMetaData=l})(m||(m={}))},hFIF:function(ft,w,e){"use strict";e.r(w),e.d(w,"StandaloneGotoSymbolQuickAccessProvider",function(){return Ce}),e.d(w,"GotoLineAction",function(){return Le});var h=e("udvx"),P=e("28lO"),L=e("JQT/"),A=e("Vhoy"),I=e("fpMC"),k=e("MrjW"),O=e("MNsG"),S=e("N0LK");const f=[void 0,[]];function u(ce,me,Oe=0,oe=0){const De=me;return De.values&&De.values.length>1?d(ce,De.values,Oe,oe):E(ce,me,Oe,oe)}function d(ce,me,Oe,oe){let De=0;const Ne=[];for(const ve of me){const[re,we]=E(ce,ve,Oe,oe);if(typeof re!="number")return f;De+=re,Ne.push(...we)}return[De,p(Ne)]}function E(ce,me,Oe,oe){const De=Object(I.d)(me.original,me.originalLowercase,Oe,ce,ce.toLowerCase(),oe,!0);return De?[De[0],Object(I.c)(De)]:f}function p(ce){const me=ce.sort((De,Ne)=>De.start-Ne.start),Oe=[];let oe;for(const De of me)!oe||!n(oe,De)?(oe=De,Oe.push(De)):(oe.start=Math.min(oe.start,De.start),oe.end=Math.max(oe.end,De.end));return Oe}function n(ce,me){return ce.end=0,ve=b(ce);let re;const we=ce.split(m);if(we.length>1)for(const Ie of we){const ge=b(Ie),{pathNormalized:ye,normalized:ze,normalizedLowercase:xe}=l(Ie);ze&&(re||(re=[]),re.push({original:Ie,originalLowercase:Ie.toLowerCase(),pathNormalized:ye,normalized:ze,normalizedLowercase:xe,expectContiguousMatch:ge}))}return{original:ce,originalLowercase:me,pathNormalized:Oe,normalized:oe,normalizedLowercase:De,values:re,containsPathSeparator:Ne,expectContiguousMatch:ve}}function l(ce){let me;O.i?me=ce.replace(/\//g,k.h):me=ce.replace(/\\/g,k.h);const Oe=Object(S.T)(me).replace(/\s|"/g,"");return{pathNormalized:me,normalized:Oe,normalizedLowercase:Oe.toLowerCase()}}function g(ce){return Array.isArray(ce)?c(ce.map(me=>me.original).join(m)):c(ce.original)}var y=e("pmY6"),C=e("aokT"),v=e("twdY"),D=e("cPWS"),j=e("H+DO"),V=e("3/fG"),G=function(ce,me,Oe,oe){function De(Ne){return Ne instanceof Oe?Ne:new Oe(function(ve){ve(Ne)})}return new(Oe||(Oe=Promise))(function(Ne,ve){function re(ge){try{Ie(oe.next(ge))}catch(ye){ve(ye)}}function we(ge){try{Ie(oe.throw(ge))}catch(ye){ve(ye)}}function Ie(ge){ge.done?Ne(ge.value):De(ge.value).then(re,we)}Ie((oe=oe.apply(ce,me||[])).next())})};class B extends j.a{constructor(ce=Object.create(null)){super(ce);this.options=ce,this.options.canAcceptInBackground=!0}provideWithoutTextEditor(ce){return this.provideLabelPick(ce,Object(V.a)("cannotRunGotoSymbolWithoutEditor","To go to a symbol, first open a text editor with symbol information.")),y.a.None}provideWithTextEditor(ce,me,Oe){const oe=ce.editor,De=this.getModel(oe);return De?v.m.has(De)?this.doProvideWithEditorSymbols(ce,De,me,Oe):this.doProvideWithoutEditorSymbols(ce,De,me,Oe):y.a.None}doProvideWithoutEditorSymbols(ce,me,Oe,oe){const De=new y.b;return this.provideLabelPick(Oe,Object(V.a)("cannotRunGotoSymbolWithoutSymbolProvider","The active text editor does not provide symbol information.")),(()=>G(this,void 0,void 0,function*(){const Ne=yield this.waitForLanguageSymbolRegistry(me,De);if(!Ne||oe.isCancellationRequested)return;De.add(this.doProvideWithEditorSymbols(ce,me,Oe,oe))}))(),De}provideLabelPick(ce,me){ce.items=[{label:me,index:0,kind:14}],ce.ariaLabel=me}waitForLanguageSymbolRegistry(ce,me){return G(this,void 0,void 0,function*(){if(v.m.has(ce))return!0;let Oe;const oe=new Promise(Ne=>Oe=Ne),De=me.add(v.m.onDidChange(()=>{v.m.has(ce)&&(De.dispose(),Oe(!0))}));return me.add(Object(y.i)(()=>Oe(!1))),oe})}doProvideWithEditorSymbols(ce,me,Oe,oe){const De=ce.editor,Ne=new y.b;Ne.add(Oe.onDidAccept(ge=>{const[ye]=Oe.selectedItems;ye&&ye.range&&(this.gotoLocation(ce,{range:ye.range.selection,keyMods:Oe.keyMods,preserveFocus:ge.inBackground}),ge.inBackground||Oe.hide())})),Ne.add(Oe.onDidTriggerItemButton(({item:ge})=>{ge&&ge.range&&(this.gotoLocation(ce,{range:ge.range.selection,keyMods:Oe.keyMods,forceSideBySide:!0}),Oe.hide())}));const ve=this.getDocumentSymbols(me,oe);let re;const we=()=>G(this,void 0,void 0,function*(){re==null||re.dispose(!0),Oe.busy=!1,re=new L.b(oe),Oe.busy=!0;try{const ge=c(Oe.value.substr(B.PREFIX.length).trim()),ye=yield this.doGetSymbolPicks(ve,ge,void 0,re.token);if(oe.isCancellationRequested)return;ye.length>0?Oe.items=ye:ge.original.length>0?this.provideLabelPick(Oe,Object(V.a)("noMatchingSymbolResults","No matching editor symbols")):this.provideLabelPick(Oe,Object(V.a)("noSymbolResults","No editor symbols"))}finally{oe.isCancellationRequested||(Oe.busy=!1)}});Ne.add(Oe.onDidChangeValue(()=>we())),we();let Ie=!0;return Ne.add(Oe.onDidChangeActive(()=>{const[ge]=Oe.activeItems;if(ge&&ge.range){if(Ie){Ie=!1;return}De.revealRangeInCenter(ge.range.selection,0),this.addDecorations(De,ge.range.decoration)}})),Ne}doGetSymbolPicks(ce,me,Oe,oe){return G(this,void 0,void 0,function*(){const De=yield ce;if(oe.isCancellationRequested)return[];const Ne=me.original.indexOf(B.SCOPE_PREFIX)===0,ve=Ne?1:0;let re,we;me.values&&me.values.length>1?(re=g(me.values[0]),we=g(me.values.slice(1))):re=me;const Ie=[];for(let xe=0;xeve){let le=!1;if(re!==me&&([wt,Pt]=u(st,Object.assign(Object.assign({},me),{values:void 0}),ve,nt),typeof wt=="number"&&(le=!0)),typeof wt!="number"&&([wt,Pt]=u(st,re,ve,nt),typeof wt!="number"))continue;if(!le&&we){if(rt&&we.original.length>0&&([no,ht]=u(rt,we)),typeof no!="number")continue;typeof wt=="number"&&(wt+=no)}}const lt=Te.tags&&Te.tags.indexOf(1)>=0;Ie.push({index:xe,kind:Te.kind,score:wt,label:st,ariaLabel:He,description:rt,highlights:lt?void 0:{label:Pt,description:ht},range:{selection:C.a.collapseToStart(Te.selectionRange),decoration:Te.range},strikethrough:lt,buttons:(()=>{var le,Pe;const it=((le=this.options)===null||le===void 0?void 0:le.openSideBySideDirection)?(Pe=this.options)===null||Pe===void 0?void 0:Pe.openSideBySideDirection():void 0;return it?[{iconClass:it==="right"?A.b.splitHorizontal.classNames:A.b.splitVertical.classNames,tooltip:it==="right"?Object(V.a)("openToSide","Open to the Side"):Object(V.a)("openToBottom","Open to the Bottom")}]:void 0})()})}const ge=Ie.sort((xe,Te)=>Ne?this.compareByKindAndScore(xe,Te):this.compareByScore(xe,Te));let ye=[];if(Ne){let xe,Te,He=0;function ze(){Te&&typeof xe=="number"&&He>0&&(Te.label=Object(S.v)(Y[xe]||z,He))}for(const st of ge)xe!==st.kind?(ze(),xe=st.kind,He=1,Te={type:"separator"},ye.push(Te)):He++,ye.push(st);ze()}else ge.length>0&&(ye=[{label:Object(V.a)("symbols","symbols ({0})",Ie.length),type:"separator"},...ge]);return ye})}compareByScore(ce,me){if(typeof ce.score!="number"&&typeof me.score=="number")return 1;if(typeof ce.score=="number"&&typeof me.score!="number")return-1;if(typeof ce.score=="number"&&typeof me.score=="number"){if(ce.score>me.score)return-1;if(ce.scoreme.index?1:0}compareByKindAndScore(ce,me){const Oe=Y[ce.kind]||z,oe=Y[me.kind]||z,De=Oe.localeCompare(oe);return De===0?this.compareByScore(ce,me):De}getDocumentSymbols(ce,me){return G(this,void 0,void 0,function*(){const Oe=yield D.a.create(ce,me);return me.isCancellationRequested?[]:Oe.asListOfDocumentSymbols()})}}B.PREFIX="@",B.SCOPE_PREFIX=":",B.PREFIX_BY_CATEGORY=`${B.PREFIX}${B.SCOPE_PREFIX}`;const z=Object(V.a)("property","properties ({0})"),Y={[5]:Object(V.a)("method","methods ({0})"),[11]:Object(V.a)("function","functions ({0})"),[8]:Object(V.a)("_constructor","constructors ({0})"),[12]:Object(V.a)("variable","variables ({0})"),[4]:Object(V.a)("class","classes ({0})"),[22]:Object(V.a)("struct","structs ({0})"),[23]:Object(V.a)("event","events ({0})"),[24]:Object(V.a)("operator","operators ({0})"),[10]:Object(V.a)("interface","interfaces ({0})"),[2]:Object(V.a)("namespace","namespaces ({0})"),[3]:Object(V.a)("package","packages ({0})"),[25]:Object(V.a)("typeParameter","type parameters ({0})"),[1]:Object(V.a)("modules","modules ({0})"),[6]:Object(V.a)("property","properties ({0})"),[9]:Object(V.a)("enum","enumerations ({0})"),[21]:Object(V.a)("enumMember","enumeration members ({0})"),[14]:Object(V.a)("string","strings ({0})"),[0]:Object(V.a)("file","files ({0})"),[17]:Object(V.a)("array","arrays ({0})"),[15]:Object(V.a)("number","numbers ({0})"),[16]:Object(V.a)("boolean","booleans ({0})"),[18]:Object(V.a)("object","objects ({0})"),[19]:Object(V.a)("key","keys ({0})"),[7]:Object(V.a)("field","fields ({0})"),[13]:Object(V.a)("constant","constants ({0})")};var K=e("ic2d"),Q=e("Lx4V"),ee=e("Vxe3"),Se=e("746U"),fe=e("A9l+"),q=e("MI8n"),te=e("sswD"),U=e("wQH0"),H=e("Zr1c"),W=function(ce,me,Oe,oe){var De=arguments.length,Ne=De<3?me:oe===null?oe=Object.getOwnPropertyDescriptor(me,Oe):oe,ve;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Ne=Reflect.decorate(ce,me,Oe,oe);else for(var re=ce.length-1;re>=0;re--)(ve=ce[re])&&(Ne=(De<3?ve(Ne):De>3?ve(me,Oe,Ne):ve(me,Oe))||Ne);return De>3&&Ne&&Object.defineProperty(me,Oe,Ne),Ne},ne=function(ce,me){return function(Oe,oe){me(Oe,oe,ce)}};let Ce=class extends B{constructor(me){super();this.editorService=me,this.onDidActiveTextEditorControlChange=q.c.None}get activeTextEditorControl(){return Object(Se.p)(this.editorService.getFocusedCodeEditor())}};Ce=W([ne(0,ee.a)],Ce),K.a.as(Q.b.Quickaccess).registerQuickAccessProvider({ctor:Ce,prefix:B.PREFIX,helpEntries:[{description:fe.f.quickOutlineActionLabel,prefix:B.PREFIX,needsEditor:!0},{description:fe.f.quickOutlineByCategoryActionLabel,prefix:B.PREFIX_BY_CATEGORY,needsEditor:!0}]});class Le extends te.b{constructor(){super({id:"editor.action.quickOutline",label:fe.f.quickOutlineActionLabel,alias:"Go to Symbol...",precondition:U.a.hasDocumentSymbolProvider,kbOpts:{kbExpr:U.a.focus,primary:2048|1024|45,weight:100},contextMenuOpts:{group:"navigation",order:3}})}run(ce){ce.get(H.a).quickAccess.show(B.PREFIX)}}Object(te.j)(Le)},hFdI:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"html",extensions:[".html",".htm",".shtml",".xhtml",".mdoc",".jsp",".asp",".aspx",".jshtm"],aliases:["HTML","htm","html","xhtml"],mimetypes:["text/html","text/x-jshtm","text/template","text/ng-template"],loader:function(){return e.e(342).then(e.bind(null,"tpLM"))}})},hHjc:function(ft,w,e){},hJVp:function(ft,w,e){"use strict";e.d(w,"b",function(){return b}),e.d(w,"f",function(){return m}),e.d(w,"g",function(){return c}),e.d(w,"e",function(){return l}),e.d(w,"c",function(){return g}),e.d(w,"a",function(){return y}),e.d(w,"d",function(){return D});var h=e("6OMU"),P=e("JQT/"),L=e("/cxE"),A=e("pmY6"),I=e("bY76"),k=e("vATl"),O=e("aokT"),S=e("gCVg"),f=e("twdY"),u=e("G2kB"),d=e("nnTU"),E=e("tTk5"),p=e("nlbu"),n=function(G,B,z,Y){function K(Q){return Q instanceof z?Q:new z(function(ee){ee(Q)})}return new(z||(z=Promise))(function(Q,ee){function Se(te){try{q(Y.next(te))}catch(U){ee(U)}}function fe(te){try{q(Y.throw(te))}catch(U){ee(U)}}function q(te){te.done?Q(te.value):K(te.value).then(Se,fe)}q((Y=Y.apply(G,B||[])).next())})};const b="editor.action.codeAction",m="editor.action.refactor",c="editor.action.sourceAction",l="editor.action.organizeImports",g="editor.action.fixAll";class y{constructor(G,B){this.action=G,this.provider=B}resolve(G){var B;return n(this,void 0,void 0,function*(){if(((B=this.provider)===null||B===void 0?void 0:B.resolveCodeAction)&&!this.action.edit){let z;try{z=yield this.provider.resolveCodeAction(this.action,G)}catch(Y){Object(L.g)(Y)}z&&(this.action.edit=z.edit)}return this})}}class C extends A.a{constructor(G,B,z){super();this.documentation=B,this._register(z),this.allActions=[...G].sort(C.codeActionsComparator),this.validActions=this.allActions.filter(({action:Y})=>!Y.disabled)}static codeActionsComparator({action:G},{action:B}){return G.isPreferred&&!B.isPreferred?-1:!G.isPreferred&&B.isPreferred?1:Object(h.n)(G.diagnostics)?Object(h.n)(B.diagnostics)?G.diagnostics[0].message.localeCompare(B.diagnostics[0].message):-1:Object(h.n)(B.diagnostics)?1:0}get hasAutoFix(){return this.validActions.some(({action:G})=>!!G.kind&&p.b.QuickFix.contains(new p.b(G.kind))&&!!G.isPreferred)}}const v={actions:[],documentation:void 0};function D(G,B,z,Y,K){var Q;const ee=z.filter||{},Se={only:(Q=ee.include)===null||Q===void 0?void 0:Q.value,trigger:z.type},fe=new k.d(G,K),q=j(G,ee),te=new A.b,U=q.map(W=>n(this,void 0,void 0,function*(){try{Y.report(W);const ne=yield W.provideCodeActions(G,B,Se,fe.token);if(ne&&te.add(ne),fe.token.isCancellationRequested)return v;const Ce=((ne==null?void 0:ne.actions)||[]).filter(ce=>ce&&Object(p.c)(ee,ce)),Le=V(W,Ce,ee.include);return{actions:Ce.map(ce=>new y(ce,W)),documentation:Le}}catch(ne){if(Object(L.e)(ne))throw ne;return Object(L.g)(ne),v}})),H=f.a.onDidChange(()=>{const W=f.a.all(G);Object(h.g)(W,q)||fe.cancel()});return Promise.all(U).then(W=>{const ne=Object(h.k)(W.map(Le=>Le.actions)),Ce=Object(h.e)(W.map(Le=>Le.documentation));return new C(ne,Ce,te)}).finally(()=>{H.dispose(),fe.dispose()})}function j(G,B){return f.a.all(G).filter(z=>z.providedCodeActionKinds?z.providedCodeActionKinds.some(Y=>Object(p.d)(B,new p.b(Y))):!0)}function V(G,B,z){if(!G.documentation)return;const Y=G.documentation.map(K=>({kind:new p.b(K.kind),command:K.command}));if(z){let K;for(const Q of Y)Q.kind.contains(z)&&(K?K.kind.contains(Q.kind)&&(K=Q):K=Q);if(K)return K==null?void 0:K.command}for(const K of B){if(!K.kind)continue;for(const Q of Y)if(Q.kind.contains(new p.b(K.kind)))return Q.command}return}d.a.registerCommand("_executeCodeActionProvider",function(G,B,z,Y,K){return n(this,void 0,void 0,function*(){if(!(B instanceof I.a))throw Object(L.c)();const Q=G.get(u.a).getModel(B);if(!Q)throw Object(L.c)();const ee=S.a.isISelection(z)?S.a.liftSelection(z):O.a.isIRange(z)?Q.validateRange(z):void 0;if(!ee)throw Object(L.c)();const Se=typeof Y=="string"?new p.b(Y):void 0,fe=yield D(Q,ee,{type:1,filter:{includeSourceActions:!0,include:Se}},E.b.None,P.a.None),q=[],te=Math.min(fe.validActions.length,typeof K=="number"?K:0);for(let U=0;UU.action)}finally{setTimeout(()=>fe.dispose(),100)}})})},hN88:function(ft,w,e){"use strict";e.d(w,"b",function(){return D}),e.d(w,"a",function(){return V}),e.d(w,"c",function(){return G}),e.d(w,"d",function(){return z}),e.d(w,"e",function(){return ee});var h=e("OBOq"),P=e("6OMU"),L=e("JQT/"),A=e("/cxE"),I=e("JYp7"),k=e("24hK"),O=e("746U"),S=e("bY76"),f=e("vATl"),u=e("sFUC"),d=e("cGHE"),E=e("aokT"),p=e("gCVg"),n=e("twdY"),b=e("pAvP"),m=e("t49l"),c=e("Cduo"),l=e("3/fG"),g=e("nnTU");class y{constructor(Se){this.value=Se,this._lower=Se.toLowerCase()}static toKey(Se){return typeof Se=="string"?Se.toLowerCase():Se._lower}}var C=e("Cg/j"),v=function(Se,fe,q,te){function U(H){return H instanceof q?H:new q(function(W){W(H)})}return new(q||(q=Promise))(function(H,W){function ne(ce){try{Le(te.next(ce))}catch(me){W(me)}}function Ce(ce){try{Le(te.throw(ce))}catch(me){W(me)}}function Le(ce){ce.done?H(ce.value):U(ce.value).then(ne,Ce)}Le((te=te.apply(Se,fe||[])).next())})};function D(Se){if(Se=Se.filter(U=>U.range),!Se.length)return;let{range:fe}=Se[0];for(let U=1;U0&&E.a.areIntersectingOrTouching(Ce[Le-1],De)?Ce[Le-1]=E.a.fromPositions(Ce[Le-1].getStartPosition(),De.getEndPosition()):Le=Ce.push(De);const ce=De=>v(this,void 0,void 0,function*(){return(yield fe.provideDocumentRangeFormattingEdits(W,De,W.getFormattingOptions(),ne.token))||[]}),me=(De,Ne)=>{if(!De.length||!Ne.length)return!1;const ve=De.reduce((re,we)=>E.a.plusRange(re,we.range),De[0].range);if(!Ne.some(re=>E.a.intersectRanges(ve,re.range)))return!1;for(let re of De)for(let we of Ne)if(E.a.intersectRanges(re.range,we.range))return!0;return!1},Oe=[],oe=[];try{for(let De of Ce){if(ne.token.isCancellationRequested)return!0;oe.push(yield ce(De))}for(let De=0;De({text:ve.text,range:E.a.lift(ve.range),forceMoveMarkers:!0})),ve=>{for(const{range:re}of ve)if(E.a.areIntersectingOrTouching(re,Ne))return[new p.a(re.startLineNumber,re.startColumn,re.endLineNumber,re.endColumn)];return null})}return!0})}function z(Se,fe,q,te,U){return v(this,void 0,void 0,function*(){const H=Se.get(C.a),W=Object(u.b)(fe)?fe.getModel():fe,ne=j(W),Ce=yield V.select(ne,W,q);Ce&&(te.report(Ce),yield H.invokeFunction(Y,Ce,fe,q,U))})}function Y(Se,fe,q,te,U){return v(this,void 0,void 0,function*(){const H=Se.get(b.a);let W,ne;Object(u.b)(q)?(W=q.getModel(),ne=new f.b(q,1|4,void 0,U)):(W=q,ne=new f.d(q,U));let Ce;try{const Le=yield fe.provideDocumentFormattingEdits(W,W.getFormattingOptions(),ne.token);if(Ce=yield H.computeMoreMinimalEdits(W.uri,Le),ne.token.isCancellationRequested)return!0}finally{ne.dispose()}if(!Ce||Ce.length===0)return!1;if(Object(u.b)(q))c.a.execute(q,Ce,te!==2),te!==2&&(D(Ce),q.revealPositionInCenterIfOutsideViewport(q.getPosition(),1));else{const[{range:Le}]=Ce,ce=new p.a(Le.startLineNumber,Le.startColumn,Le.endLineNumber,Le.endColumn);W.pushEditOperations([ce],Ce.map(me=>({text:me.text,range:E.a.lift(me.range),forceMoveMarkers:!0})),me=>{for(const{range:Oe}of me)if(E.a.areIntersectingOrTouching(Oe,ce))return[new p.a(Oe.startLineNumber,Oe.startColumn,Oe.endLineNumber,Oe.endColumn)];return null})}return!0})}function K(Se,fe,q,te,U){return v(this,void 0,void 0,function*(){const H=n.j.ordered(fe);for(const W of H){let ne=yield Promise.resolve(W.provideDocumentRangeFormattingEdits(fe,q,te,U)).catch(A.g);if(Object(P.n)(ne))return yield Se.computeMoreMinimalEdits(fe.uri,ne)}return})}function Q(Se,fe,q,te){return v(this,void 0,void 0,function*(){const U=j(fe);for(const H of U){let W=yield Promise.resolve(H.provideDocumentFormattingEdits(fe,q,te)).catch(A.g);if(Object(P.n)(W))return yield Se.computeMoreMinimalEdits(fe.uri,W)}return})}function ee(Se,fe,q,te,U){const H=n.x.ordered(fe);return H.length===0||H[0].autoFormatTriggerCharacters.indexOf(te)<0?Promise.resolve(void 0):Promise.resolve(H[0].provideOnTypeFormattingEdits(fe,q,te,U,L.a.None)).catch(A.g).then(W=>Se.computeMoreMinimalEdits(fe.uri,W))}g.a.registerCommand("_executeFormatRangeProvider",function(Se,...fe){return v(this,void 0,void 0,function*(){const[q,te,U]=fe;Object(O.c)(S.a.isUri(q)),Object(O.c)(E.a.isIRange(te));const H=Se.get(m.a),W=Se.get(b.a),ne=yield H.createModelReference(q);try{return K(W,ne.object.textEditorModel,E.a.lift(te),U,L.a.None)}finally{ne.dispose()}})}),g.a.registerCommand("_executeFormatDocumentProvider",function(Se,...fe){return v(this,void 0,void 0,function*(){const[q,te]=fe;Object(O.c)(S.a.isUri(q));const U=Se.get(m.a),H=Se.get(b.a),W=yield U.createModelReference(q);try{return Q(H,W.object.textEditorModel,te,L.a.None)}finally{W.dispose()}})}),g.a.registerCommand("_executeFormatOnTypeProvider",function(Se,...fe){return v(this,void 0,void 0,function*(){const[q,te,U,H]=fe;Object(O.c)(S.a.isUri(q)),Object(O.c)(d.a.isIPosition(te)),Object(O.c)(typeof U=="string");const W=Se.get(m.a),ne=Se.get(b.a),Ce=yield W.createModelReference(q);try{return ee(ne,Ce.object.textEditorModel,d.a.lift(te),U,H)}finally{Ce.dispose()}})})},"i/Ef":function(ft,w,e){"use strict";e.d(w,"b",function(){return L}),e.d(w,"a",function(){return A}),e.d(w,"c",function(){return I}),e.d(w,"d",function(){return k});var h=e("Tcc1");class P{clone(){return this}equals(O){return this===O}}const L=new P,A="vs.editor.nullMode";function I(O,S,f,u){return new h.b([new h.a(u,"",O)],f)}function k(O,S,f,u){let d=new Uint32Array(2);return d[0]=u,d[1]=(O<<0|0<<8|0<<11|1<<14|2<<23)>>>0,new h.c(d,f===null?L:f)}},"i/Rh":function(ft,w,e){},i04g:function(ft,w,e){"use strict";e.d(w,"c",function(){return L}),e.d(w,"a",function(){return A}),e.d(w,"b",function(){return I});var h=e("3/fG");class P{constructor(O,S,f=S){this.modifierLabels=[null],this.modifierLabels[2]=O,this.modifierLabels[1]=S,this.modifierLabels[3]=f}toLabel(O,S,f){if(S.length===0)return null;const u=[];for(let d=0,E=S.length;d{const oe=U.filteredTypes[Oe.key];oe===!1&&(U[Oe.value]=oe)})}const H=z.hover;H===!0?z.hover={enabled:!0}:H===!1&&(z.hover={enabled:!1});const W=z.parameterHints;W===!0?z.parameterHints={enabled:!0}:W===!1&&(z.parameterHints={enabled:!1});const ne=z.autoIndent;ne===!0?z.autoIndent="full":ne===!1&&(z.autoIndent="advanced");const Ce=z.matchBrackets;Ce===!0?z.matchBrackets="always":Ce===!1&&(z.matchBrackets="never");const{renderIndentGuides:Le,highlightActiveIndentGuide:ce}=z;z.guides||(z.guides={}),Le!==void 0&&(z.guides.indentation=!!Le),ce!==void 0&&(z.guides.highlightActiveIndentation=!!ce)}function l(z){const Y=A.b(z);return c(Y),Y}class g extends L.a{constructor(z,Y){super();this._onDidChange=this._register(new P.b),this.onDidChange=this._onDidChange.event,this._onDidChangeFast=this._register(new P.b),this.onDidChangeFast=this._onDidChangeFast.event,this.isSimpleWidget=z,this._isDominatedByLongLines=!1,this._computeOptionsMemory=new k.a,this._viewLineCount=1,this._lineNumbersDigitCount=1,this._rawOptions=l(Y),this._readOptions=m.readOptions(this._rawOptions),this._validatedOptions=m.validateOptions(this._readOptions),this._register(O.a.onDidChangeZoomLevel(K=>this._recomputeOptions())),this._register(E.onDidChangeTabFocus(K=>this._recomputeOptions()))}observeReferenceElement(z){}updatePixelRatio(){}_recomputeOptions(){const z=this.options,Y=this._computeInternalOptions();if(!z)this.options=Y;else{const K=m.checkEquals(z,Y);if(K===null)return;this.options=Y,this._onDidChangeFast.fire(K),this._onDidChange.fire(K)}}getRawOptions(){return this._rawOptions}_computeInternalOptions(){const z=this._getEnvConfiguration(),Y=S.a.createFromValidatedSettings(this._validatedOptions,z.zoomLevel,z.pixelRatio,this.isSimpleWidget),K={memory:this._computeOptionsMemory,outerWidth:z.outerWidth,outerHeight:z.outerHeight,fontInfo:this.readConfiguration(Y),extraEditorClassName:z.extraEditorClassName,isDominatedByLongLines:this._isDominatedByLongLines,viewLineCount:this._viewLineCount,lineNumbersDigitCount:this._lineNumbersDigitCount,emptySelectionClipboard:z.emptySelectionClipboard,pixelRatio:z.pixelRatio,tabFocusMode:E.getTabFocusMode(),accessibilitySupport:z.accessibilitySupport};return m.computeOptions(this._validatedOptions,K)}static _subsetEquals(z,Y){for(const K in Y)if(p.call(Y,K)){const Q=Y[K],ee=z[K];if(ee===Q)continue;if(Array.isArray(ee)&&Array.isArray(Q)){if(!I.g(ee,Q))return!1;continue}if(ee&&typeof ee=="object"&&Q&&typeof Q=="object"){if(!this._subsetEquals(ee,Q))return!1;continue}return!1}return!0}updateOptions(z){if(typeof z=="undefined")return;const Y=l(z);if(g._subsetEquals(this._rawOptions,Y))return;this._rawOptions=A.f(this._rawOptions,Y||{}),this._readOptions=m.readOptions(this._rawOptions),this._validatedOptions=m.validateOptions(this._readOptions),this._recomputeOptions()}setIsDominatedByLongLines(z){this._isDominatedByLongLines=z,this._recomputeOptions()}setMaxLineNumber(z){const Y=g._digitCount(z);if(this._lineNumbersDigitCount===Y)return;this._lineNumbersDigitCount=Y,this._recomputeOptions()}setViewLineCount(z){if(this._viewLineCount===z)return;this._viewLineCount=z,this._recomputeOptions()}static _digitCount(z){let Y=0;for(;z;)z=Math.floor(z/10),Y++;return Y||1}}const y=Object.freeze({id:"editor",order:5,type:"object",title:h.a("editorConfigurationTitle","Editor"),scope:5}),C=u.a.as(f.a.Configuration),v=Object.assign(Object.assign({},y),{properties:{"editor.tabSize":{type:"number",default:k.d.tabSize,minimum:1,markdownDescription:h.a("tabSize","The number of spaces a tab is equal to. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.insertSpaces":{type:"boolean",default:k.d.insertSpaces,markdownDescription:h.a("insertSpaces","Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.")},"editor.detectIndentation":{type:"boolean",default:k.d.detectIndentation,markdownDescription:h.a("detectIndentation","Controls whether `#editor.tabSize#` and `#editor.insertSpaces#` will be automatically detected when a file is opened based on the file contents.")},"editor.trimAutoWhitespace":{type:"boolean",default:k.d.trimAutoWhitespace,description:h.a("trimAutoWhitespace","Remove trailing auto inserted whitespace.")},"editor.largeFileOptimizations":{type:"boolean",default:k.d.largeFileOptimizations,description:h.a("largeFileOptimizations","Special handling for large files to disable certain memory intensive features.")},"editor.wordBasedSuggestions":{type:"boolean",default:!0,description:h.a("wordBasedSuggestions","Controls whether completions should be computed based on words in the document.")},"editor.wordBasedSuggestionsMode":{enum:["currentDocument","matchingDocuments","allDocuments"],default:"matchingDocuments",enumDescriptions:[h.a("wordBasedSuggestionsMode.currentDocument","Only suggest words from the active document."),h.a("wordBasedSuggestionsMode.matchingDocuments","Suggest words from all open documents of the same language."),h.a("wordBasedSuggestionsMode.allDocuments","Suggest words from all open documents.")],description:h.a("wordBasedSuggestionsMode","Controls from which documents word based completions are computed.")},"editor.semanticHighlighting.enabled":{enum:[!0,!1,"configuredByTheme"],enumDescriptions:[h.a("semanticHighlighting.true","Semantic highlighting enabled for all color themes."),h.a("semanticHighlighting.false","Semantic highlighting disabled for all color themes."),h.a("semanticHighlighting.configuredByTheme","Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.")],default:"configuredByTheme",description:h.a("semanticHighlighting.enabled","Controls whether the semanticHighlighting is shown for the languages that support it.")},"editor.stablePeek":{type:"boolean",default:!1,markdownDescription:h.a("stablePeek","Keep peek editors open even when double clicking their content or when hitting `Escape`.")},"editor.maxTokenizationLineLength":{type:"integer",default:2e4,description:h.a("maxTokenizationLineLength","Lines above this length will not be tokenized for performance reasons")},"editor.language.brackets":{type:"array",default:!1,description:h.a("schema.brackets","Defines the bracket symbols that increase or decrease the indentation."),items:{type:"array",items:[{type:"string",description:h.a("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:h.a("schema.closeBracket","The closing bracket character or string sequence.")}]}},"editor.language.colorizedBracketPairs":{type:"array",default:!1,description:h.a("schema.colorizedBracketPairs","Defines the bracket pairs that are colorized by their nesting level if bracket pair colorization is enabled."),items:{type:"array",items:[{type:"string",description:h.a("schema.openBracket","The opening bracket character or string sequence.")},{type:"string",description:h.a("schema.closeBracket","The closing bracket character or string sequence.")}]}},"diffEditor.maxComputationTime":{type:"number",default:5e3,description:h.a("maxComputationTime","Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.")},"diffEditor.maxFileSize":{type:"number",default:50,description:h.a("maxFileSize","Maximum file size in MB for which to compute diffs. Use 0 for no limit.")},"diffEditor.renderSideBySide":{type:"boolean",default:!0,description:h.a("sideBySide","Controls whether the diff editor shows the diff side by side or inline.")},"diffEditor.ignoreTrimWhitespace":{type:"boolean",default:!0,description:h.a("ignoreTrimWhitespace","When enabled, the diff editor ignores changes in leading or trailing whitespace.")},"diffEditor.renderIndicators":{type:"boolean",default:!0,description:h.a("renderIndicators","Controls whether the diff editor shows +/- indicators for added/removed changes.")},"diffEditor.codeLens":{type:"boolean",default:!1,description:h.a("codeLens","Controls whether the editor shows CodeLens.")},"diffEditor.wordWrap":{type:"string",enum:["off","on","inherit"],default:"inherit",markdownEnumDescriptions:[h.a("wordWrap.off","Lines will never wrap."),h.a("wordWrap.on","Lines will wrap at the viewport width."),h.a("wordWrap.inherit","Lines will wrap according to the `#editor.wordWrap#` setting.")]}}});function D(z){return typeof z.type!="undefined"||typeof z.anyOf!="undefined"}for(const z of k.m){const Y=z.schema;if(typeof Y!="undefined")if(D(Y))v.properties[`editor.${z.name}`]=Y;else for(let K in Y)p.call(Y,K)&&(v.properties[K]=Y[K])}let j=null;function V(){return j===null&&(j=Object.create(null),Object.keys(v.properties).forEach(z=>{j[z]=!0})),j}function G(z){const Y=V();return Y[`editor.${z}`]||!1}function B(z){const Y=V();return Y[`diffEditor.${z}`]||!1}C.registerConfiguration(v)},iJk1:function(ft,w,e){},iLY9:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"python",extensions:[".py",".rpy",".pyw",".cpy",".gyp",".gypi"],aliases:["Python","py"],firstLine:"^#!/.*\\bpython[0-9.-]*\\b",loader:function(){return e.e(368).then(e.bind(null,"8ahN"))}})},iNS8:function(ft,w,e){"use strict";e.d(w,"a",function(){return Se}),e.d(w,"b",function(){return fe}),e.d(w,"d",function(){return te}),e.d(w,"c",function(){return H}),e.d(w,"p",function(){return W}),e.d(w,"q",function(){return ne}),e.d(w,"r",function(){return Ce}),e.d(w,"e",function(){return Le}),e.d(w,"j",function(){return ce}),e.d(w,"l",function(){return me}),e.d(w,"k",function(){return Oe}),e.d(w,"n",function(){return oe}),e.d(w,"o",function(){return De}),e.d(w,"f",function(){return Ne}),e.d(w,"g",function(){return ve}),e.d(w,"m",function(){return re}),e.d(w,"h",function(){return we}),e.d(w,"i",function(){return Ie});var h=e("EffR"),P=e("WqXY"),L=e("8HAY"),A=e("Vhoy"),I=e("zrhQ"),k=e("MI8n"),O=e("qj0h"),S=e("e1ni"),f=e("sswD"),u=e("Vxe3"),d=e("03kh"),E=e("cMOf"),p=e("nD70"),n=e("pmY6"),b=e("uWgD"),m=e("aokT"),c=e("tX9W");const l=new I.a(new I.c(0,122,204)),g={showArrow:!0,showFrame:!0,className:"",frameColor:l,arrowColor:l,keepEditorSelection:!1},y="vs.editor.contrib.zoneWidget";class C{constructor(ge,ye,ze,xe,Te,He){this.id="",this.domNode=ge,this.afterLineNumber=ye,this.afterColumn=ze,this.heightInLines=xe,this._onDomNodeTop=Te,this._onComputedHeight=He}onDomNodeTop(ge){this._onDomNodeTop(ge)}onComputedHeight(ge){this._onComputedHeight(ge)}}class v{constructor(ge,ye){this._id=ge,this._domNode=ye}getId(){return this._id}getDomNode(){return this._domNode}getPosition(){return null}}class D{constructor(ge){this._editor=ge,this._ruleName=D._IdGenerator.nextId(),this._decorations=[],this._color=null,this._height=-1}dispose(){this.hide(),h.Q(this._ruleName)}set color(ge){this._color!==ge&&(this._color=ge,this._updateStyle())}set height(ge){this._height!==ge&&(this._height=ge,this._updateStyle())}_updateStyle(){h.Q(this._ruleName),h.v(`.monaco-editor ${this._ruleName}`,`border-style: solid; border-color: transparent; border-bottom-color: ${this._color}; border-width: ${this._height}px; bottom: -${this._height}px; margin-left: -${this._height}px; `)}show(ge){this._decorations=this._editor.deltaDecorations(this._decorations,[{range:m.a.fromPositions(ge),options:{description:"zone-widget-arrow",className:this._ruleName,stickiness:1}}])}hide(){this._editor.deltaDecorations(this._decorations,[])}}D._IdGenerator=new p.a(".arrow-decoration-");class j{constructor(ge,ye={}){this._arrow=null,this._overlayWidget=null,this._resizeSash=null,this._positionMarkerId=[],this._viewZone=null,this._disposables=new n.b,this.container=null,this._isShowing=!1,this.editor=ge,this.options=O.b(ye),O.f(this.options,g,!1),this.domNode=document.createElement("div"),this.options.isAccessible||(this.domNode.setAttribute("aria-hidden","true"),this.domNode.setAttribute("role","presentation")),this._disposables.add(this.editor.onDidLayoutChange(ze=>{const xe=this._getWidth(ze);this.domNode.style.width=xe+"px",this.domNode.style.left=this._getLeft(ze)+"px",this._onWidth(xe)}))}dispose(){this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._viewZone&&this.editor.changeViewZones(ge=>{this._viewZone&&ge.removeZone(this._viewZone.id),this._viewZone=null}),this.editor.deltaDecorations(this._positionMarkerId,[]),this._positionMarkerId=[],this._disposables.dispose()}create(){this.domNode.classList.add("zone-widget"),this.options.className&&this.domNode.classList.add(this.options.className),this.container=document.createElement("div"),this.container.classList.add("zone-widget-container"),this.domNode.appendChild(this.container),this.options.showArrow&&(this._arrow=new D(this.editor),this._disposables.add(this._arrow)),this._fillContainer(this.container),this._initSash(),this._applyStyles()}style(ge){ge.frameColor&&(this.options.frameColor=ge.frameColor),ge.arrowColor&&(this.options.arrowColor=ge.arrowColor),this._applyStyles()}_applyStyles(){if(this.container&&this.options.frameColor){let ge=this.options.frameColor.toString();this.container.style.borderTopColor=ge,this.container.style.borderBottomColor=ge}if(this._arrow&&this.options.arrowColor){let ge=this.options.arrowColor.toString();this._arrow.color=ge}}_getWidth(ge){return ge.width-ge.minimap.minimapWidth-ge.verticalScrollbarWidth}_getLeft(ge){return ge.minimap.minimapWidth>0&&ge.minimap.minimapLeft===0?ge.minimap.minimapWidth:0}_onViewZoneTop(ge){this.domNode.style.top=ge+"px"}_onViewZoneHeight(ge){if(this.domNode.style.height=`${ge}px`,this.container){let ye=ge-this._decoratingElementsHeight();this.container.style.height=`${ye}px`;const ze=this.editor.getLayoutInfo();this._doLayout(ye,this._getWidth(ze))}this._resizeSash&&this._resizeSash.layout()}get position(){const[ge]=this._positionMarkerId;if(!ge)return;const ye=this.editor.getModel();if(!ye)return;const ze=ye.getDecorationRange(ge);return ze?ze.getStartPosition():void 0}show(ge,ye){const ze=m.a.isIRange(ge)?m.a.lift(ge):m.a.fromPositions(ge);this._isShowing=!0,this._showImpl(ze,ye),this._isShowing=!1,this._positionMarkerId=this.editor.deltaDecorations(this._positionMarkerId,[{range:ze,options:c.b.EMPTY}])}hide(){this._viewZone&&(this.editor.changeViewZones(ge=>{this._viewZone&&ge.removeZone(this._viewZone.id)}),this._viewZone=null),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this._arrow&&this._arrow.hide()}_decoratingElementsHeight(){let ge=this.editor.getOption(58),ye=0;if(this.options.showArrow){let ze=Math.round(ge/3);ye+=2*ze}if(this.options.showFrame){let ze=Math.round(ge/9);ye+=2*ze}return ye}_showImpl(ge,ye){const ze=ge.getStartPosition(),xe=this.editor.getLayoutInfo(),Te=this._getWidth(xe);this.domNode.style.width=`${Te}px`,this.domNode.style.left=this._getLeft(xe)+"px";const He=document.createElement("div");He.style.overflow="hidden";const st=this.editor.getOption(58),nt=Math.max(12,this.editor.getLayoutInfo().height/st*.8);ye=Math.min(ye,nt);let rt=0,wt=0;if(this._arrow&&this.options.showArrow&&(rt=Math.round(st/3),this._arrow.height=rt,this._arrow.show(ze)),this.options.showFrame&&(wt=Math.round(st/9)),this.editor.changeViewZones(ht=>{this._viewZone&&ht.removeZone(this._viewZone.id),this._overlayWidget&&(this.editor.removeOverlayWidget(this._overlayWidget),this._overlayWidget=null),this.domNode.style.top="-1000px",this._viewZone=new C(He,ze.lineNumber,ze.column,ye,lt=>this._onViewZoneTop(lt),lt=>this._onViewZoneHeight(lt)),this._viewZone.id=ht.addZone(this._viewZone),this._overlayWidget=new v(y+this._viewZone.id,this.domNode),this.editor.addOverlayWidget(this._overlayWidget)}),this.container&&this.options.showFrame){const ht=this.options.frameWidth?this.options.frameWidth:wt;this.container.style.borderTopWidth=ht+"px",this.container.style.borderBottomWidth=ht+"px"}let Pt=ye*st-this._decoratingElementsHeight();this.container&&(this.container.style.top=rt+"px",this.container.style.height=Pt+"px",this.container.style.overflow="hidden"),this._doLayout(Pt,Te),this.options.keepEditorSelection||this.editor.setSelection(ge);const no=this.editor.getModel();if(no){const ht=ge.endLineNumber+1;ht<=no.getLineCount()?this.revealLine(ht,!1):this.revealLine(no.getLineCount(),!0)}}revealLine(ge,ye){ye?this.editor.revealLineInCenter(ge,0):this.editor.revealLine(ge,0)}setCssClass(ge,ye){if(!this.container)return;ye&&this.container.classList.remove(ye),this.container.classList.add(ge)}_onWidth(ge){}_doLayout(ge,ye){}_relayout(ge){this._viewZone&&this._viewZone.heightInLines!==ge&&this.editor.changeViewZones(ye=>{this._viewZone&&(this._viewZone.heightInLines=ge,ye.layoutZone(this._viewZone.id))})}_initSash(){if(this._resizeSash)return;this._resizeSash=this._disposables.add(new E.b(this.domNode,this,{orientation:1})),this.options.isResizeable||(this._resizeSash.hide(),this._resizeSash.state=0);let ge;this._disposables.add(this._resizeSash.onDidStart(ye=>{this._viewZone&&(ge={startY:ye.startY,heightInLines:this._viewZone.heightInLines})})),this._disposables.add(this._resizeSash.onDidEnd(()=>{ge=void 0})),this._disposables.add(this._resizeSash.onDidChange(ye=>{if(ge){let ze=(ye.currentY-ge.startY)/this.editor.getOption(58),xe=ze<0?Math.ceil(ze):Math.floor(ze),Te=ge.heightInLines+xe;Te>5&&Te<35&&this._relayout(Te)}}))}getHorizontalSashLeft(){return 0}getHorizontalSashTop(){return(this.domNode.style.height===null?0:parseInt(this.domNode.style.height))-this._decoratingElementsHeight()/2}getHorizontalSashWidth(){const ge=this.editor.getLayoutInfo();return ge.width-ge.minimap.minimapWidth}}var V=e("3/fG"),G=e("eUTo"),B=e("T8No"),z=e("9fML"),Y=e("Cg/j"),K=e("MD5Z"),Q=function(ge,ye,ze,xe){var Te=arguments.length,He=Te<3?ye:xe===null?xe=Object.getOwnPropertyDescriptor(ye,ze):xe,st;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")He=Reflect.decorate(ge,ye,ze,xe);else for(var nt=ge.length-1;nt>=0;nt--)(st=ge[nt])&&(He=(Te<3?st(He):Te>3?st(ye,ze,He):st(ye,ze))||He);return Te>3&&He&&Object.defineProperty(ye,ze,He),He},ee=function(ge,ye){return function(ze,xe){ye(ze,xe,ge)}};const Se=Object(Y.c)("IPeekViewService");Object(z.b)(Se,class{constructor(){this._widgets=new Map}addExclusiveWidget(ge,ye){const ze=this._widgets.get(ge);ze&&(ze.listener.dispose(),ze.widget.dispose());const xe=()=>{const Te=this._widgets.get(ge);Te&&Te.widget===ye&&(Te.listener.dispose(),this._widgets.delete(ge))};this._widgets.set(ge,{widget:ye,listener:ye.onDidClose(xe)})}});var fe;(function(ge){ge.inPeekEditor=new B.c("inReferenceSearchEditor",!0,V.a("inReferenceSearchEditor","Whether the current code editor is embedded inside peek")),ge.notInPeekEditor=ge.inPeekEditor.toNegated()})(fe||(fe={}));let q=class{constructor(ye,ze){ye instanceof d.a&&fe.inPeekEditor.bindTo(ze)}dispose(){}};q.ID="editor.contrib.referenceController",q=Q([ee(1,B.b)],q),Object(f.l)(q.ID,q);function te(ge){let ye=ge.get(u.a).getFocusedCodeEditor();return ye instanceof d.a?ye.getParentEditor():ye}const U={headerBackgroundColor:I.a.white,primaryHeadingColor:I.a.fromHex("#333333"),secondaryHeadingColor:I.a.fromHex("#6c6c6cb3")};let H=class extends j{constructor(ye,ze,xe){super(ye,ze);this.instantiationService=xe,this._onDidClose=new k.b,this.onDidClose=this._onDidClose.event,O.f(this.options,U,!1)}dispose(){this.disposed||(this.disposed=!0,super.dispose(),this._onDidClose.fire(this))}style(ye){let ze=this.options;ye.headerBackgroundColor&&(ze.headerBackgroundColor=ye.headerBackgroundColor),ye.primaryHeadingColor&&(ze.primaryHeadingColor=ye.primaryHeadingColor),ye.secondaryHeadingColor&&(ze.secondaryHeadingColor=ye.secondaryHeadingColor),super.style(ye)}_applyStyles(){super._applyStyles();let ye=this.options;this._headElement&&ye.headerBackgroundColor&&(this._headElement.style.backgroundColor=ye.headerBackgroundColor.toString()),this._primaryHeading&&ye.primaryHeadingColor&&(this._primaryHeading.style.color=ye.primaryHeadingColor.toString()),this._secondaryHeading&&ye.secondaryHeadingColor&&(this._secondaryHeading.style.color=ye.secondaryHeadingColor.toString()),this._bodyElement&&ye.frameColor&&(this._bodyElement.style.borderColor=ye.frameColor.toString())}_fillContainer(ye){this.setCssClass("peekview-widget"),this._headElement=h.a(".head"),this._bodyElement=h.a(".body"),this._fillHead(this._headElement),this._fillBody(this._bodyElement),ye.appendChild(this._headElement),ye.appendChild(this._bodyElement)}_fillHead(ye,ze){const xe=h.a(".peekview-title");this.options.supportOnTitleClick&&(xe.classList.add("clickable"),h.o(xe,"click",st=>this._onTitleClick(st))),h.q(this._headElement,xe),this._fillTitleIcon(xe),this._primaryHeading=h.a("span.filename"),this._secondaryHeading=h.a("span.dirname"),this._metaHeading=h.a("span.meta"),h.q(xe,this._primaryHeading,this._secondaryHeading,this._metaHeading);const Te=h.a(".peekview-actions");h.q(this._headElement,Te);const He=this._getActionBarOptions();this._actionbarWidget=new P.a(Te,He),this._disposables.add(this._actionbarWidget),ze||this._actionbarWidget.push(new L.a("peekview.close",V.a("label.close","Close"),A.b.close.classNames,!0,()=>(this.dispose(),Promise.resolve())),{label:!1,icon:!0})}_fillTitleIcon(ye){}_getActionBarOptions(){return{actionViewItemProvider:G.b.bind(void 0,this.instantiationService),orientation:0}}_onTitleClick(ye){}setTitle(ye,ze){this._primaryHeading&&this._secondaryHeading&&(this._primaryHeading.innerText=ye,this._primaryHeading.setAttribute("title",ye),ze?this._secondaryHeading.innerText=ze:h.t(this._secondaryHeading))}setMetaTitle(ye){this._metaHeading&&(ye?(this._metaHeading.innerText=ye,h.W(this._metaHeading)):h.K(this._metaHeading))}_doLayout(ye,ze){if(!this._isShowing&&ye<0){this.dispose();return}const xe=Math.ceil(this.editor.getOption(58)*1.2),Te=Math.round(ye-(xe+2));this._doLayoutHead(xe,ze),this._doLayoutBody(Te,ze)}_doLayoutHead(ye,ze){this._headElement&&(this._headElement.style.height=`${ye}px`,this._headElement.style.lineHeight=this._headElement.style.height)}_doLayoutBody(ye,ze){this._bodyElement&&(this._bodyElement.style.height=`${ye}px`)}};H=Q([ee(2,Y.a)],H);const W=Object(K.Cc)("peekViewTitle.background",{dark:Object(K.Rc)(K.M,.1),light:Object(K.Rc)(K.M,.1),hc:null},V.a("peekViewTitleBackground","Background color of the peek view title area.")),ne=Object(K.Cc)("peekViewTitleLabel.foreground",{dark:I.a.white,light:I.a.black,hc:I.a.white},V.a("peekViewTitleForeground","Color of the peek view title.")),Ce=Object(K.Cc)("peekViewTitleDescription.foreground",{dark:"#ccccccb3",light:"#616161",hc:"#FFFFFF99"},V.a("peekViewTitleInfoForeground","Color of the peek view title info.")),Le=Object(K.Cc)("peekView.border",{dark:K.M,light:K.M,hc:K.h},V.a("peekViewBorder","Color of the peek view borders and arrow.")),ce=Object(K.Cc)("peekViewResult.background",{dark:"#252526",light:"#F3F3F3",hc:I.a.black},V.a("peekViewResultsBackground","Background color of the peek view result list.")),me=Object(K.Cc)("peekViewResult.lineForeground",{dark:"#bbbbbb",light:"#646465",hc:I.a.white},V.a("peekViewResultsMatchForeground","Foreground color for line nodes in the peek view result list.")),Oe=Object(K.Cc)("peekViewResult.fileForeground",{dark:I.a.white,light:"#1E1E1E",hc:I.a.white},V.a("peekViewResultsFileForeground","Foreground color for file nodes in the peek view result list.")),oe=Object(K.Cc)("peekViewResult.selectionBackground",{dark:"#3399ff33",light:"#3399ff33",hc:null},V.a("peekViewResultsSelectionBackground","Background color of the selected entry in the peek view result list.")),De=Object(K.Cc)("peekViewResult.selectionForeground",{dark:I.a.white,light:"#6C6C6C",hc:I.a.white},V.a("peekViewResultsSelectionForeground","Foreground color of the selected entry in the peek view result list.")),Ne=Object(K.Cc)("peekViewEditor.background",{dark:"#001F33",light:"#F2F8FC",hc:I.a.black},V.a("peekViewEditorBackground","Background color of the peek view editor.")),ve=Object(K.Cc)("peekViewEditorGutter.background",{dark:Ne,light:Ne,hc:Ne},V.a("peekViewEditorGutterBackground","Background color of the gutter in the peek view editor.")),re=Object(K.Cc)("peekViewResult.matchHighlightBackground",{dark:"#ea5c004d",light:"#ea5c004d",hc:null},V.a("peekViewResultsMatchHighlight","Match highlight color in the peek view result list.")),we=Object(K.Cc)("peekViewEditor.matchHighlightBackground",{dark:"#ff8f0099",light:"#f5d802de",hc:null},V.a("peekViewEditorMatchHighlight","Match highlight color in the peek view editor.")),Ie=Object(K.Cc)("peekViewEditor.matchHighlightBorder",{dark:null,light:null,hc:K.b},V.a("peekViewEditorMatchHighlightBorder","Match highlight border in the peek view editor."))},"ij/i":function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"ruby",extensions:[".rb",".rbx",".rjs",".gemspec",".pp"],filenames:["rakefile","Gemfile"],aliases:["Ruby","rb"],loader:function(){return e.e(375).then(e.bind(null,"3MdH"))}})},iuje:function(ft,w,e){"use strict";e.d(w,"b",function(){return h}),e.d(w,"a",function(){return P});function h(L){return L&&typeof L.id=="string"}const P={ICodeEditor:"vs.editor.ICodeEditor",IDiffEditor:"vs.editor.IDiffEditor"}},j2o1:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"powershell",extensions:[".ps1",".psm1",".psd1"],aliases:["PowerShell","powershell","ps","ps1"],loader:function(){return e.e(365).then(e.bind(null,"ppMK"))}})},"jAJ/":function(ft,w,e){"use strict";e.d(w,"a",function(){return O}),e.d(w,"d",function(){return u}),e.d(w,"c",function(){return E}),e.d(w,"e",function(){return b}),e.d(w,"b",function(){return m});var h=e("N0LK"),P=e("5v8Y"),L=e("cGHE"),A=e("aokT"),I=e("M1Kb");const k=999;class O{constructor(c,l,g,y){this.searchString=c,this.isRegex=l,this.matchCase=g,this.wordSeparators=y}parseSearchRequest(){if(this.searchString==="")return null;let c;this.isRegex?c=S(this.searchString):c=this.searchString.indexOf(` `)>=0;let l=null;try{l=h.q(this.searchString,this.isRegex,{matchCase:this.matchCase,wholeWord:!1,multiline:c,global:!0,unicode:!0})}catch(y){return null}if(!l)return null;let g=!this.isRegex&&!c;return g&&this.searchString.toLowerCase()!==this.searchString.toUpperCase()&&(g=this.matchCase),new f(l,this.wordSeparators?Object(P.a)(this.wordSeparators):null,g?this.searchString:null)}}function S(c){if(!c||c.length===0)return!1;for(let l=0,g=c.length;l=g)break;const C=c.charCodeAt(l);if(C===110||C===114||C===87)return!0}}return!1}class f{constructor(c,l,g){this.regex=c,this.wordSeparators=l,this.simpleSearch=g}}function u(c,l,g){if(!g)return new I.b(c,null);let y=[];for(let C=0,v=l.length;C>0);l[C]>=c?y=C-1:l[C+1]>=c?(g=C,y=C):g=C+1}return g+1}}class E{static findMatches(c,l,g,y,C){const v=l.parseSearchRequest();return v?v.regex.multiline?this._doFindMatchesMultiline(c,g,new m(v.wordSeparators,v.regex),y,C):this._doFindMatchesLineByLine(c,g,v,y,C):[]}static _getMultilineMatchRange(c,l,g,y,C,v){let D,j=0;y?(j=y.findLineFeedCountBeforeOffset(C),D=l+C+j):D=l+C;let V;if(y){let z=y.findLineFeedCountBeforeOffset(C+v.length),Y=z-j;V=D+v.length+Y}else V=D+v.length;const G=c.getPositionAt(D),B=c.getPositionAt(V);return new A.a(G.lineNumber,G.column,B.lineNumber,B.column)}static _doFindMatchesMultiline(c,l,g,y,C){const v=c.getOffsetAt(l.getStartPosition()),D=c.getValueInRange(l,1),j=c.getEOL()===`\r `?new d(D):null,V=[];let G=0,B;for(g.reset(0);B=g.next(D);)if(V[G++]=u(this._getMultilineMatchRange(c,v,D,j,B.index,B[0]),B,y),G>=C)return V;return V}static _doFindMatchesLineByLine(c,l,g,y,C){const v=[];let D=0;if(l.startLineNumber===l.endLineNumber){const V=c.getLineContent(l.startLineNumber).substring(l.startColumn-1,l.endColumn-1);return D=this._findMatchesInLine(g,V,l.startLineNumber,l.startColumn-1,D,v,y,C),v}const j=c.getLineContent(l.startLineNumber).substring(l.startColumn-1);D=this._findMatchesInLine(g,j,l.startLineNumber,l.startColumn-1,D,v,y,C);for(let V=l.startLineNumber+1;V=j))return C;return C}const G=new m(c.wordSeparators,c.regex);let B;G.reset(0);do if(B=G.next(l),B&&(v[C++]=u(new A.a(g,B.index+1+y,g,B.index+1+B[0].length+y),B,D),C>=j))return C;while(B);return C}static findNextMatch(c,l,g,y){const C=l.parseSearchRequest();if(!C)return null;const v=new m(C.wordSeparators,C.regex);return C.regex.multiline?this._doFindNextMatchMultiline(c,g,v,y):this._doFindNextMatchLineByLine(c,g,v,y)}static _doFindNextMatchMultiline(c,l,g,y){const C=new L.a(l.lineNumber,1),v=c.getOffsetAt(C),D=c.getLineCount(),j=c.getValueInRange(new A.a(C.lineNumber,C.column,D,c.getLineMaxColumn(D)),1),V=c.getEOL()===`\r `?new d(j):null;g.reset(l.column-1);let G=g.next(j);return G?u(this._getMultilineMatchRange(c,v,j,V,G.index,G[0]),G,y):l.lineNumber!==1||l.column!==1?this._doFindNextMatchMultiline(c,new L.a(1,1),g,y):null}static _doFindNextMatchLineByLine(c,l,g,y){const C=c.getLineCount(),v=l.lineNumber,D=c.getLineContent(v),j=this._findFirstMatchInLine(g,D,v,l.column,y);if(j)return j;for(let V=1;V<=C;V++){const G=(v+V-1)%C,B=c.getLineContent(G+1),z=this._findFirstMatchInLine(g,B,G+1,1,y);if(z)return z}return null}static _findFirstMatchInLine(c,l,g,y,C){c.reset(y-1);const v=c.next(l);return v?u(new A.a(g,v.index+1,g,v.index+1+v[0].length),v,C):null}static findPreviousMatch(c,l,g,y){const C=l.parseSearchRequest();if(!C)return null;const v=new m(C.wordSeparators,C.regex);return C.regex.multiline?this._doFindPreviousMatchMultiline(c,g,v,y):this._doFindPreviousMatchLineByLine(c,g,v,y)}static _doFindPreviousMatchMultiline(c,l,g,y){const C=this._doFindMatchesMultiline(c,new A.a(1,1,l.lineNumber,l.column),g,y,10*k);if(C.length>0)return C[C.length-1];const v=c.getLineCount();return l.lineNumber!==v||l.column!==c.getLineMaxColumn(v)?this._doFindPreviousMatchMultiline(c,new L.a(v,c.getLineMaxColumn(v)),g,y):null}static _doFindPreviousMatchLineByLine(c,l,g,y){const C=c.getLineCount(),v=l.lineNumber,D=c.getLineContent(v).substring(0,l.column-1),j=this._findLastMatchInLine(g,D,v,y);if(j)return j;for(let V=1;V<=C;V++){const G=(C+v-V-1)%C,B=c.getLineContent(G+1),z=this._findLastMatchInLine(g,B,G+1,y);if(z)return z}return null}static _findLastMatchInLine(c,l,g,y){let C=null,v;for(c.reset(0);v=c.next(l);)C=u(new A.a(g,v.index+1,g,v.index+1+v[0].length),v,y);return C}}function p(c,l,g,y,C){if(y===0)return!0;const v=l.charCodeAt(y-1);if(c.get(v)!==0)return!0;if(v===13||v===10)return!0;if(C>0){const D=l.charCodeAt(y);if(c.get(D)!==0)return!0}return!1}function n(c,l,g,y,C){if(y+C===g)return!0;const v=l.charCodeAt(y+C);if(c.get(v)!==0)return!0;if(v===13||v===10)return!0;if(C>0){const D=l.charCodeAt(y+C-1);if(c.get(D)!==0)return!0}return!1}function b(c,l,g,y,C){return p(c,l,g,y,C)&&n(c,l,g,y,C)}class m{constructor(c,l){this._wordSeparators=c,this._searchRegex=l,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(c){this._searchRegex.lastIndex=c,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(c){const l=c.length;let g;do{if(this._prevMatchStartIndex+this._prevMatchLength===l)return null;if(g=this._searchRegex.exec(c),!g)return null;const y=g.index,C=g[0].length;if(y===this._prevMatchStartIndex&&C===this._prevMatchLength){if(C===0){h.z(c,l,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=y,this._prevMatchLength=C,!this._wordSeparators||b(this._wordSeparators,c,l,y,C))return g}while(g);return null}}},jVwG:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"objective-c",extensions:[".m"],aliases:["Objective-C"],loader:function(){return e.e(356).then(e.bind(null,"fYNN"))}})},jrbv:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:function(){return e.e(328).then(e.bind(null,"2ZXa"))}})},k7mE:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"java",extensions:[".java",".jav"],aliases:["Java","java"],mimetypes:["text/x-java-source","text/x-java"],loader:function(){return e.e(344).then(e.bind(null,"BjZ/"))}})},k7pc:function(ft,w,e){"use strict";e.r(w),e.d(w,"ToggleTabFocusModeAction",function(){return I});var h=e("OBOq"),P=e("sswD"),L=e("iDAx"),A=e("3/fG");class I extends P.b{constructor(){super({id:I.ID,label:A.a({key:"toggle.tabMovesFocus",comment:["Turn on/off use of tab key for moving focus around VS Code"]},"Toggle Tab Key Moves Focus"),alias:"Toggle Tab Key Moves Focus",precondition:void 0,kbOpts:{kbExpr:null,primary:2048|43,mac:{primary:256|1024|43},weight:100}})}run(k,O){const S=L.b.getTabFocusMode(),f=!S;L.b.setTabFocusMode(f),f?Object(h.a)(A.a("toggle.tabMovesFocus.on","Pressing Tab will now move focus to the next focusable element")):Object(h.a)(A.a("toggle.tabMovesFocus.off","Pressing Tab will now insert the tab character"))}}I.ID="editor.action.toggleTabFocusMode",Object(P.j)(I)},k9mg:function(ft,w,e){"use strict";e.d(w,"a",function(){return Ut}),e.d(w,"b",function(){return fo}),e.d(w,"e",function(){return Oo}),e.d(w,"d",function(){return rn}),e.d(w,"c",function(){return Et});var h=e("EffR"),P=e("6OMU"),L=e("JQT/"),A=e("MI8n"),I=e("pmY6"),k=e("4rho"),O=e("cqdO");class S{constructor(F,J){this.renderer=F,this.modelProvider=J}get templateId(){return this.renderer.templateId}renderTemplate(F){const J=this.renderer.renderTemplate(F);return{data:J,disposable:I.a.None}}renderElement(F,J,Fe,Ze){if(Fe.disposable&&Fe.disposable.dispose(),!Fe.data)return;const St=this.modelProvider();if(St.isResolved(F))return this.renderer.renderElement(St.get(F),F,Fe.data,Ze);const It=new L.b,Vt=St.resolve(F,It.token);Fe.disposable={dispose:()=>It.cancel()},this.renderer.renderPlaceholder(F,Fe.data),Vt.then(io=>this.renderer.renderElement(io,F,Fe.data,Ze))}disposeTemplate(F){F.disposable&&(F.disposable.dispose(),F.disposable=void 0),F.data&&(this.renderer.disposeTemplate(F.data),F.data=void 0)}}class f{constructor(F,J){this.modelProvider=F,this.accessibilityProvider=J}getWidgetAriaLabel(){return this.accessibilityProvider.getWidgetAriaLabel()}getAriaLabel(F){const J=this.modelProvider();return J.isResolved(F)?this.accessibilityProvider.getAriaLabel(J.get(F)):null}}function u(F,J){return Object.assign(Object.assign({},J),{accessibilityProvider:J.accessibilityProvider&&new f(F,J.accessibilityProvider)})}class d{constructor(F,J,Fe,Ze,St={}){const It=()=>this.model,Vt=Ze.map(io=>new S(io,It));this.list=new O.c(F,J,Fe,Vt,u(It,St))}updateOptions(F){this.list.updateOptions(F)}getHTMLElement(){return this.list.getHTMLElement()}get onDidFocus(){return this.list.onDidFocus}get onDidDispose(){return this.list.onDidDispose}get onMouseDblClick(){return A.c.map(this.list.onMouseDblClick,({element:F,index:J,browserEvent:Fe})=>({element:F===void 0?void 0:this._model.get(F),index:J,browserEvent:Fe}))}get onPointer(){return A.c.map(this.list.onPointer,({element:F,index:J,browserEvent:Fe})=>({element:F===void 0?void 0:this._model.get(F),index:J,browserEvent:Fe}))}get onDidChangeSelection(){return A.c.map(this.list.onDidChangeSelection,({elements:F,indexes:J,browserEvent:Fe})=>({elements:F.map(Ze=>this._model.get(Ze)),indexes:J,browserEvent:Fe}))}get model(){return this._model}set model(F){this._model=F,this.list.splice(0,this.list.length,Object(P.r)(F.length))}getFocus(){return this.list.getFocus()}getSelection(){return this.list.getSelection()}getSelectedElements(){return this.getSelection().map(F=>this.model.get(F))}style(F){this.list.style(F)}dispose(){this.list.dispose()}}var E=e("44XX"),p=e("7GBL");class n{constructor(F,J,Fe){this.columns=F,this.getColumnSize=Fe,this.templateId=n.TemplateId,this.renderedTemplates=new Set;const Ze=new Map(J.map(St=>[St.templateId,St]));this.renderers=[];for(const St of F){const It=Ze.get(St.templateId);if(!It)throw new Error(`Table cell renderer for template id ${St.templateId} not found.`);this.renderers.push(It)}}renderTemplate(F){const J=Object(h.q)(F,Object(h.a)(".monaco-table-tr")),Fe=[],Ze=[];for(let It=0;Itnew m(mo,yo)),io={size:Vt.reduce((mo,yo)=>mo+yo.column.weight,0),views:Vt.map(mo=>({size:mo.column.weight,view:mo}))};this.splitview=new E.b(this.domNode,{orientation:1,scrollbarVisibility:2,getSashOrthogonalSize:()=>this.cachedHeight,descriptor:io}),this.splitview.el.style.height=`${Fe.headerRowHeight}px`,this.splitview.el.style.lineHeight=`${Fe.headerRowHeight}px`;const ho=new n(Ze,St,mo=>this.splitview.getViewSize(mo));this.list=new O.c(F,this.domNode,b(Fe),[ho],It),this.columnLayoutDisposable=A.c.any(...Vt.map(mo=>mo.onDidLayout))(([mo,yo])=>ho.layoutColumn(mo,yo)),this.styleElement=Object(h.w)(this.domNode),this.style({})}get onDidChangeFocus(){return this.list.onDidChangeFocus}get onDidChangeSelection(){return this.list.onDidChangeSelection}get onMouseDblClick(){return this.list.onMouseDblClick}get onPointer(){return this.list.onPointer}get onDidFocus(){return this.list.onDidFocus}get onDidDispose(){return this.list.onDidDispose}updateOptions(F){this.list.updateOptions(F)}splice(F,J,Fe=[]){this.list.splice(F,J,Fe)}getHTMLElement(){return this.domNode}style(F){const J=[];J.push(`.monaco-table.${this.domId} > .monaco-split-view2 .monaco-sash.vertical::before { top: ${this.virtualDelegate.headerRowHeight+1}px; height: calc(100% - ${this.virtualDelegate.headerRowHeight}px); }`),this.styleElement.textContent=J.join(` `),this.list.style(F)}getSelectedElements(){return this.list.getSelectedElements()}getSelection(){return this.list.getSelection()}getFocus(){return this.list.getFocus()}dispose(){this.splitview.dispose(),this.list.dispose(),this.columnLayoutDisposable.dispose()}}c.InstanceCount=0;var l=e("feEw"),g=e("ZQ78"),y=e("4y0V"),C=e("uDWl"),v;(function(F){F[F.Unknown=0]="Unknown",F[F.Twistie=1]="Twistie",F[F.Element=2]="Element"})(v||(v={}));class D extends Error{constructor(F,J){super(`TreeError [${F}] ${J}`)}}class j{constructor(F){this.fn=F,this._map=new WeakMap}map(F){let J=this._map.get(F);return J||(J=this.fn(F),this._map.set(F,J)),J}}var V=e("Gw4z"),G=e("JYp7");function B(F){return typeof F=="object"&&"visibility"in F&&"data"in F}function z(F){switch(F){case!0:return 1;case!1:return 0;default:return F}}function Y(F){return typeof F.collapsible=="boolean"}class K{constructor(F,J,Fe,Ze={}){this.user=F,this.list=J,this.rootRef=[],this.eventBufferer=new A.d,this._onDidChangeCollapseState=new A.b,this.onDidChangeCollapseState=this.eventBufferer.wrapEvent(this._onDidChangeCollapseState.event),this._onDidChangeRenderNodeCount=new A.b,this.onDidChangeRenderNodeCount=this.eventBufferer.wrapEvent(this._onDidChangeRenderNodeCount.event),this._onDidSplice=new A.b,this.onDidSplice=this._onDidSplice.event,this.collapseByDefault=typeof Ze.collapseByDefault=="undefined"?!1:Ze.collapseByDefault,this.filter=Ze.filter,this.autoExpandSingleChildren=typeof Ze.autoExpandSingleChildren=="undefined"?!1:Ze.autoExpandSingleChildren,this.root={parent:void 0,element:Fe,children:[],depth:0,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:!1,collapsed:!1,renderNodeCount:0,visibility:1,visible:!0,filterData:void 0}}splice(F,J,Fe=G.a.empty(),Ze={}){if(F.length===0)throw new D(this.user,"Invalid tree location");Ze.diffIdentityProvider?this.spliceSmart(Ze.diffIdentityProvider,F,J,Fe,Ze):this.spliceSimple(F,J,Fe,Ze)}spliceSmart(F,J,Fe,Ze,St,It){var Vt;Ze===void 0&&(Ze=G.a.empty()),It===void 0&&(It=(Vt=St.diffDepth)!==null&&Vt!==void 0?Vt:0);const{parentNode:io}=this.getParentNodeWithListIndex(J);if(!io.lastDiffIds)return this.spliceSimple(J,Fe,Ze,St);const ho=[...Ze],mo=J[J.length-1],yo=new V.a({getElements:()=>io.lastDiffIds},{getElements:()=>[...io.children.slice(0,mo),...ho,...io.children.slice(mo+Fe)].map(Ho=>F.getId(Ho.element).toString())}).ComputeDiff(!1);if(yo.quitEarly)return io.lastDiffIds=void 0,this.spliceSimple(J,Fe,ho,St);const Io=J.slice(0,-1),No=(Ho,Yo,ri)=>{if(It>0)for(let Vo=0;Vori.originalStart-Yo.originalStart))No(Ro,To,Ro-(Ho.originalStart+Ho.originalLength)),Ro=Ho.originalStart,To=Ho.modifiedStart-mo,this.spliceSimple([...Io,Ro],Ho.originalLength,G.a.slice(ho,To,To+Ho.modifiedLength),St);No(Ro,To,Ro)}spliceSimple(F,J,Fe=G.a.empty(),{onDidCreateNode:Ze,onDidDeleteNode:St,diffIdentityProvider:It}){const{parentNode:Vt,listIndex:io,revealed:ho,visible:mo}=this.getParentNodeWithListIndex(F),yo=[],Io=G.a.map(Fe,ui=>this.createTreeNode(ui,Vt,Vt.visible?1:0,ho,yo,Ze)),No=F[F.length-1],Ro=Vt.children.length>0;let To=0;for(let ui=No;ui>=0&&uiIt.getId(ui.element).toString())):Vt.lastDiffIds=Vt.children.map(ui=>It.getId(ui.element).toString()):Vt.lastDiffIds=void 0;let li=0;for(const ui of Vo)ui.visible&&li++;if(li!==0)for(let ui=No+Ho.length;uiUi+(an.visible?an.renderNodeCount:0),0);this._updateAncestorsRenderNodeCount(Vt,ri-ui),this.list.splice(io,ui,yo)}if(Vo.length>0&&St){const ui=Ui=>{St(Ui),Ui.children.forEach(ui)};Vo.forEach(ui)}const Ai=Vt.children.length>0;Ro!==Ai&&this.setCollapsible(F.slice(0,-1),Ai),this._onDidSplice.fire({insertedNodes:Ho,deletedNodes:Vo});let _i=Vt;for(;_i;){if(_i.visibility===2){this.refilter();break}_i=_i.parent}}rerender(F){if(F.length===0)throw new D(this.user,"Invalid tree location");const{node:J,listIndex:Fe,revealed:Ze}=this.getTreeNodeWithListIndex(F);J.visible&&Ze&&this.list.splice(Fe,1,[J])}has(F){return this.hasTreeNode(F)}getListIndex(F){const{listIndex:J,visible:Fe,revealed:Ze}=this.getTreeNodeWithListIndex(F);return Fe&&Ze?J:-1}getListRenderCount(F){return this.getTreeNode(F).renderNodeCount}isCollapsible(F){return this.getTreeNode(F).collapsible}setCollapsible(F,J){const Fe=this.getTreeNode(F);typeof J=="undefined"&&(J=!Fe.collapsible);const Ze={collapsible:J};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(F,Ze))}isCollapsed(F){return this.getTreeNode(F).collapsed}setCollapsed(F,J,Fe){const Ze=this.getTreeNode(F);typeof J=="undefined"&&(J=!Ze.collapsed);const St={collapsed:J,recursive:Fe||!1};return this.eventBufferer.bufferEvents(()=>this._setCollapseState(F,St))}_setCollapseState(F,J){const{node:Fe,listIndex:Ze,revealed:St}=this.getTreeNodeWithListIndex(F),It=this._setListNodeCollapseState(Fe,Ze,St,J);if(Fe!==this.root&&this.autoExpandSingleChildren&&It&&!Y(J)&&Fe.collapsible&&!Fe.collapsed&&!J.recursive){let Vt=-1;for(let io=0;io-1){Vt=-1;break}else Vt=io}Vt>-1&&this._setCollapseState([...F,Vt],J)}return It}_setListNodeCollapseState(F,J,Fe,Ze){const St=this._setNodeCollapseState(F,Ze,!1);if(!Fe||!F.visible||!St)return St;const It=F.renderNodeCount,Vt=this.updateNodeAfterCollapseChange(F),io=It-(J===-1?0:1);return this.list.splice(J+1,io,Vt.slice(1)),St}_setNodeCollapseState(F,J,Fe){let Ze;if(F===this.root?Ze=!1:(Y(J)?(Ze=F.collapsible!==J.collapsible,F.collapsible=J.collapsible):F.collapsible?(Ze=F.collapsed!==J.collapsed,F.collapsed=J.collapsed):Ze=!1,Ze&&this._onDidChangeCollapseState.fire({node:F,deep:Fe})),!Y(J)&&J.recursive)for(const St of F.children)Ze=this._setNodeCollapseState(St,J,!0)||Ze;return Ze}expandTo(F){this.eventBufferer.bufferEvents(()=>{let J=this.getTreeNode(F);for(;J.parent;)J=J.parent,F=F.slice(0,F.length-1),J.collapsed&&this._setCollapseState(F,{collapsed:!1,recursive:!1})})}refilter(){const F=this.root.renderNodeCount,J=this.updateNodeAfterFilterChange(this.root);this.list.splice(0,F,J)}createTreeNode(F,J,Fe,Ze,St,It){const Vt={parent:J,element:F.element,children:[],depth:J.depth+1,visibleChildrenCount:0,visibleChildIndex:-1,collapsible:typeof F.collapsible=="boolean"?F.collapsible:typeof F.collapsed!="undefined",collapsed:typeof F.collapsed=="undefined"?this.collapseByDefault:F.collapsed,renderNodeCount:1,visibility:1,visible:!0,filterData:void 0},io=this._filterNode(Vt,Fe);Vt.visibility=io,Ze&&St.push(Vt);const ho=F.children||G.a.empty(),mo=Ze&&io!==0&&!Vt.collapsed,yo=G.a.map(ho,Ro=>this.createTreeNode(Ro,Vt,io,mo,St,It));let Io=0,No=1;for(const Ro of yo)Vt.children.push(Ro),No+=Ro.renderNodeCount,Ro.visible&&(Ro.visibleChildIndex=Io++);return Vt.collapsible=Vt.collapsible||Vt.children.length>0,Vt.visibleChildrenCount=Io,Vt.visible=io===2?Io>0:io===1,Vt.visible?Vt.collapsed||(Vt.renderNodeCount=No):(Vt.renderNodeCount=0,Ze&&St.pop()),It&&It(Vt),Vt}updateNodeAfterCollapseChange(F){const J=F.renderNodeCount,Fe=[];return this._updateNodeAfterCollapseChange(F,Fe),this._updateAncestorsRenderNodeCount(F.parent,Fe.length-J),Fe}_updateNodeAfterCollapseChange(F,J){if(F.visible===!1)return 0;if(J.push(F),F.renderNodeCount=1,!F.collapsed)for(const Fe of F.children)F.renderNodeCount+=this._updateNodeAfterCollapseChange(Fe,J);return this._onDidChangeRenderNodeCount.fire(F),F.renderNodeCount}updateNodeAfterFilterChange(F){const J=F.renderNodeCount,Fe=[];return this._updateNodeAfterFilterChange(F,F.visible?1:0,Fe),this._updateAncestorsRenderNodeCount(F.parent,Fe.length-J),Fe}_updateNodeAfterFilterChange(F,J,Fe,Ze=!0){let St;if(F!==this.root){if(St=this._filterNode(F,J),St===0)return F.visible=!1,F.renderNodeCount=0,!1;Ze&&Fe.push(F)}const It=Fe.length;F.renderNodeCount=F===this.root?0:1;let Vt=!1;if(!F.collapsed||St!==0){let io=0;for(const ho of F.children)Vt=this._updateNodeAfterFilterChange(ho,St,Fe,Ze&&!F.collapsed)||Vt,ho.visible&&(ho.visibleChildIndex=io++);F.visibleChildrenCount=io}else F.visibleChildrenCount=0;return F!==this.root&&(F.visible=St===2?Vt:St===1,F.visibility=St),F.visible?F.collapsed||(F.renderNodeCount+=Fe.length-It):(F.renderNodeCount=0,Ze&&Fe.pop()),this._onDidChangeRenderNodeCount.fire(F),F.visible}_updateAncestorsRenderNodeCount(F,J){if(J===0)return;for(;F;)F.renderNodeCount+=J,this._onDidChangeRenderNodeCount.fire(F),F=F.parent}_filterNode(F,J){const Fe=this.filter?this.filter.filter(F.element,J):1;return typeof Fe=="boolean"?(F.filterData=void 0,Fe?1:0):B(Fe)?(F.filterData=Fe.data,z(Fe.visibility)):(F.filterData=void 0,z(Fe))}hasTreeNode(F,J=this.root){if(!F||F.length===0)return!0;const[Fe,...Ze]=F;return Fe<0||Fe>J.children.length?!1:this.hasTreeNode(Ze,J.children[Fe])}getTreeNode(F,J=this.root){if(!F||F.length===0)return J;const[Fe,...Ze]=F;if(Fe<0||Fe>J.children.length)throw new D(this.user,"Invalid tree location");return this.getTreeNode(Ze,J.children[Fe])}getTreeNodeWithListIndex(F){if(F.length===0)return{node:this.root,listIndex:-1,revealed:!0,visible:!1};const{parentNode:J,listIndex:Fe,revealed:Ze,visible:St}=this.getParentNodeWithListIndex(F),It=F[F.length-1];if(It<0||It>J.children.length)throw new D(this.user,"Invalid tree location");const Vt=J.children[It];return{node:Vt,listIndex:Fe,revealed:Ze,visible:St&&Vt.visible}}getParentNodeWithListIndex(F,J=this.root,Fe=0,Ze=!0,St=!0){const[It,...Vt]=F;if(It<0||It>J.children.length)throw new D(this.user,"Invalid tree location");for(let io=0;ioJ.element));this.data=F}}function Oe(F){return F instanceof l.a?new me(F):F}class oe{constructor(F,J){this.modelProvider=F,this.dnd=J,this.autoExpandDisposable=I.a.None}getDragURI(F){return this.dnd.getDragURI(F.element)}getDragLabel(F,J){return this.dnd.getDragLabel?this.dnd.getDragLabel(F.map(Fe=>Fe.element),J):void 0}onDragStart(F,J){this.dnd.onDragStart&&this.dnd.onDragStart(Oe(F),J)}onDragOver(F,J,Fe,Ze,St=!0){const It=this.dnd.onDragOver(Oe(F),J&&J.element,Fe,Ze),Vt=this.autoExpandNode!==J;if(Vt&&(this.autoExpandDisposable.dispose(),this.autoExpandNode=J),typeof J=="undefined")return It;if(Vt&&typeof It!="boolean"&&It.autoExpand&&(this.autoExpandDisposable=Object(U.i)(()=>{const Io=this.modelProvider(),No=Io.getNodeLocation(J);Io.isCollapsed(No)&&Io.setCollapsed(No,!1),this.autoExpandNode=void 0},500)),typeof It=="boolean"||!It.accept||typeof It.bubble=="undefined"||It.feedback){if(!St){const Io=typeof It=="boolean"?It:It.accept,No=typeof It=="boolean"?void 0:It.effect;return{accept:Io,effect:No,feedback:[Fe]}}return It}if(It.bubble===1){const Io=this.modelProvider(),No=Io.getNodeLocation(J),Ro=Io.getParentNodeLocation(No),To=Io.getNode(Ro),Ho=Ro&&Io.getListIndex(Ro);return this.onDragOver(F,To,Ho,Ze,!1)}const io=this.modelProvider(),ho=io.getNodeLocation(J),mo=io.getListIndex(ho),yo=io.getListRenderCount(ho);return Object.assign(Object.assign({},It),{feedback:Object(P.r)(mo,mo+yo)})}drop(F,J,Fe,Ze){this.autoExpandDisposable.dispose(),this.autoExpandNode=void 0,this.dnd.drop(Oe(F),J&&J.element,Fe,Ze)}onDragEnd(F){this.dnd.onDragEnd&&this.dnd.onDragEnd(F)}}function De(F,J){return J&&Object.assign(Object.assign({},J),{identityProvider:J.identityProvider&&{getId(Fe){return J.identityProvider.getId(Fe.element)}},dnd:J.dnd&&new oe(F,J.dnd),multipleSelectionController:J.multipleSelectionController&&{isSelectionSingleChangeEvent(Fe){return J.multipleSelectionController.isSelectionSingleChangeEvent(Object.assign(Object.assign({},Fe),{element:Fe.element}))},isSelectionRangeChangeEvent(Fe){return J.multipleSelectionController.isSelectionRangeChangeEvent(Object.assign(Object.assign({},Fe),{element:Fe.element}))}},accessibilityProvider:J.accessibilityProvider&&Object.assign(Object.assign({},J.accessibilityProvider),{getSetSize(Fe){const Ze=F(),St=Ze.getNodeLocation(Fe),It=Ze.getParentNodeLocation(St),Vt=Ze.getNode(It);return Vt.visibleChildrenCount},getPosInSet(Fe){return Fe.visibleChildIndex+1},isChecked:J.accessibilityProvider&&J.accessibilityProvider.isChecked?Fe=>J.accessibilityProvider.isChecked(Fe.element):void 0,getRole:J.accessibilityProvider&&J.accessibilityProvider.getRole?Fe=>J.accessibilityProvider.getRole(Fe.element):()=>"treeitem",getAriaLabel(Fe){return J.accessibilityProvider.getAriaLabel(Fe.element)},getWidgetAriaLabel(){return J.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:J.accessibilityProvider&&J.accessibilityProvider.getWidgetRole?()=>J.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:J.accessibilityProvider&&J.accessibilityProvider.getAriaLevel?Fe=>J.accessibilityProvider.getAriaLevel(Fe.element):Fe=>Fe.depth,getActiveDescendantId:J.accessibilityProvider.getActiveDescendantId&&(Fe=>J.accessibilityProvider.getActiveDescendantId(Fe.element))}),keyboardNavigationLabelProvider:J.keyboardNavigationLabelProvider&&Object.assign(Object.assign({},J.keyboardNavigationLabelProvider),{getKeyboardNavigationLabel(Fe){return J.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(Fe.element)}}),enableKeyboardNavigation:J.simpleKeyboardNavigation})}class Ne{constructor(F){this.delegate=F}getHeight(F){return this.delegate.getHeight(F.element)}getTemplateId(F){return this.delegate.getTemplateId(F.element)}hasDynamicHeight(F){return!!this.delegate.hasDynamicHeight&&this.delegate.hasDynamicHeight(F.element)}setDynamicHeight(F,J){this.delegate.setDynamicHeight&&this.delegate.setDynamicHeight(F.element,J)}}var ve;(function(F){F.None="none",F.OnHover="onHover",F.Always="always"})(ve||(ve={}));class re{constructor(F,J=[]){this._elements=J,this.onDidChange=A.c.forEach(F,Fe=>this._elements=Fe)}get elements(){return this._elements}}class we{constructor(F,J,Fe,Ze,St={}){this.renderer=F,this.modelProvider=J,this.activeNodes=Ze,this.renderedElements=new Map,this.renderedNodes=new Map,this.indent=we.DefaultIndent,this.hideTwistiesOfChildlessElements=!1,this.shouldRenderIndentGuides=!1,this.renderedIndentGuides=new H.a,this.activeIndentNodes=new Set,this.indentGuidesDisposable=I.a.None,this.disposables=new I.b,this.templateId=F.templateId,this.updateOptions(St),A.c.map(Fe,It=>It.node)(this.onDidChangeNodeTwistieState,this,this.disposables),F.onDidChangeTwistieState&&F.onDidChangeTwistieState(this.onDidChangeTwistieState,this,this.disposables)}updateOptions(F={}){if(typeof F.indent!="undefined"&&(this.indent=Object(ne.b)(F.indent,0,40)),typeof F.renderIndentGuides!="undefined"){const J=F.renderIndentGuides!==ve.None;if(J!==this.shouldRenderIndentGuides&&(this.shouldRenderIndentGuides=J,this.indentGuidesDisposable.dispose(),J)){const Fe=new I.b;this.activeNodes.onDidChange(this._onDidChangeActiveNodes,this,Fe),this.indentGuidesDisposable=Fe,this._onDidChangeActiveNodes(this.activeNodes.elements)}}typeof F.hideTwistiesOfChildlessElements!="undefined"&&(this.hideTwistiesOfChildlessElements=F.hideTwistiesOfChildlessElements)}renderTemplate(F){const J=Object(h.q)(F,Object(h.a)(".monaco-tl-row")),Fe=Object(h.q)(J,Object(h.a)(".monaco-tl-indent")),Ze=Object(h.q)(J,Object(h.a)(".monaco-tl-twistie")),St=Object(h.q)(J,Object(h.a)(".monaco-tl-contents")),It=this.renderer.renderTemplate(St);return{container:F,indent:Fe,twistie:Ze,indentGuidesDisposable:I.a.None,templateData:It}}renderElement(F,J,Fe,Ze){typeof Ze=="number"&&(this.renderedNodes.set(F,{templateData:Fe,height:Ze}),this.renderedElements.set(F.element,F));const St=we.DefaultIndent+(F.depth-1)*this.indent;Fe.twistie.style.paddingLeft=`${St}px`,Fe.indent.style.width=`${St+this.indent-16}px`,this.renderTwistie(F,Fe),typeof Ze=="number"&&this.renderIndentGuides(F,Fe),this.renderer.renderElement(F,J,Fe.templateData,Ze)}disposeElement(F,J,Fe,Ze){Fe.indentGuidesDisposable.dispose(),this.renderer.disposeElement&&this.renderer.disposeElement(F,J,Fe.templateData,Ze),typeof Ze=="number"&&(this.renderedNodes.delete(F),this.renderedElements.delete(F.element))}disposeTemplate(F){this.renderer.disposeTemplate(F.templateData)}onDidChangeTwistieState(F){const J=this.renderedElements.get(F);if(!J)return;this.onDidChangeNodeTwistieState(J)}onDidChangeNodeTwistieState(F){const J=this.renderedNodes.get(F);if(!J)return;this.renderTwistie(F,J.templateData),this._onDidChangeActiveNodes(this.activeNodes.elements),this.renderIndentGuides(F,J.templateData)}renderTwistie(F,J){J.twistie.classList.remove(...ee.classNamesArray);let Fe=!1;this.renderer.renderTwistie&&(Fe=this.renderer.renderTwistie(F.element,J.twistie)),F.collapsible&&(!this.hideTwistiesOfChildlessElements||F.visibleChildrenCount>0)?(Fe||J.twistie.classList.add(...ee.classNamesArray),J.twistie.classList.add("collapsible"),J.twistie.classList.toggle("collapsed",F.collapsed)):J.twistie.classList.remove("collapsible","collapsed"),F.collapsible?J.container.setAttribute("aria-expanded",String(!F.collapsed)):J.container.removeAttribute("aria-expanded")}renderIndentGuides(F,J){if(Object(h.t)(J.indent),J.indentGuidesDisposable.dispose(),!this.shouldRenderIndentGuides)return;const Fe=new I.b,Ze=this.modelProvider();let St=F;for(;;){const It=Ze.getNodeLocation(St),Vt=Ze.getParentNodeLocation(It);if(!Vt)break;const io=Ze.getNode(Vt),ho=Object(h.a)(".indent-guide",{style:`width: ${this.indent}px`});this.activeIndentNodes.has(io)&&ho.classList.add("active"),J.indent.childElementCount===0?J.indent.appendChild(ho):J.indent.insertBefore(ho,J.indent.firstElementChild),this.renderedIndentGuides.add(io,ho),Fe.add(Object(I.i)(()=>this.renderedIndentGuides.delete(io,ho))),St=io}J.indentGuidesDisposable=Fe}_onDidChangeActiveNodes(F){if(!this.shouldRenderIndentGuides)return;const J=new Set,Fe=this.modelProvider();F.forEach(Ze=>{const St=Fe.getNodeLocation(Ze);try{const It=Fe.getParentNodeLocation(St);Ze.collapsible&&Ze.children.length>0&&!Ze.collapsed?J.add(Ze):It&&J.add(Fe.getNode(It))}catch(It){}}),this.activeIndentNodes.forEach(Ze=>{J.has(Ze)||this.renderedIndentGuides.forEach(Ze,St=>St.classList.remove("active"))}),J.forEach(Ze=>{this.activeIndentNodes.has(Ze)||this.renderedIndentGuides.forEach(Ze,St=>St.classList.add("active"))}),this.activeIndentNodes=J}dispose(){this.renderedNodes.clear(),this.renderedElements.clear(),this.indentGuidesDisposable.dispose(),Object(I.f)(this.disposables)}}we.DefaultIndent=8;class Ie{constructor(F,J,Fe){this.tree=F,this.keyboardNavigationLabelProvider=J,this._filter=Fe,this._totalCount=0,this._matchCount=0,this._pattern="",this._lowercasePattern="",this.disposables=new I.b,F.onWillRefilter(this.reset,this,this.disposables)}get totalCount(){return this._totalCount}get matchCount(){return this._matchCount}set pattern(F){this._pattern=F,this._lowercasePattern=F.toLowerCase()}filter(F,J){if(this._filter){const St=this._filter.filter(F,J);if(this.tree.options.simpleKeyboardNavigation)return St;let It;if(typeof St=="boolean"?It=St?1:0:B(St)?It=z(St.visibility):It=St,It===0)return!1}if(this._totalCount++,this.tree.options.simpleKeyboardNavigation||!this._pattern)return this._matchCount++,{data:W.a.Default,visibility:!0};const Fe=this.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(F),Ze=Array.isArray(Fe)?Fe:[Fe];for(const St of Ze){const It=St&&St.toString();if(typeof It=="undefined")return{data:W.a.Default,visibility:!0};const Vt=Object(W.d)(this._pattern,this._lowercasePattern,0,It,It.toLowerCase(),0,!0);if(Vt)return this._matchCount++,Ze.length===1?{data:Vt,visibility:!0}:{data:{label:It,score:Vt},visibility:!0}}return this.tree.options.filterOnType?2:{data:W.a.Default,visibility:!0}}reset(){this._totalCount=0,this._matchCount=0}dispose(){Object(I.f)(this.disposables)}}class ge{constructor(F,J,Fe,Ze,St){this.tree=F,this.view=Fe,this.filter=Ze,this.keyboardNavigationDelegate=St,this._enabled=!1,this._pattern="",this._empty=!1,this._onDidChangeEmptyState=new A.b,this.positionClassName="ne",this.automaticKeyboardNavigation=!0,this.triggered=!1,this._onDidChangePattern=new A.b,this.enabledDisposables=new I.b,this.disposables=new I.b,this.domNode=Object(h.a)(`.monaco-list-type-filter.${this.positionClassName}`),this.domNode.draggable=!0,this.disposables.add(Object(h.i)(this.domNode,"dragstart",()=>this.onDragStart())),this.messageDomNode=Object(h.q)(Fe.getHTMLElement(),Object(h.a)(".monaco-list-type-filter-message")),this.labelDomNode=Object(h.q)(this.domNode,Object(h.a)("span.label"));const It=Object(h.q)(this.domNode,Object(h.a)(".controls"));this._filterOnType=!!F.options.filterOnType,this.filterOnTypeDomNode=Object(h.q)(It,Object(h.a)("input.filter")),this.filterOnTypeDomNode.type="checkbox",this.filterOnTypeDomNode.checked=this._filterOnType,this.filterOnTypeDomNode.tabIndex=-1,this.updateFilterOnTypeTitleAndIcon(),this.disposables.add(Object(h.i)(this.filterOnTypeDomNode,"input",()=>this.onDidChangeFilterOnType())),this.clearDomNode=Object(h.q)(It,Object(h.a)("button.clear"+q.cssSelector)),this.clearDomNode.tabIndex=-1,this.clearDomNode.title=Object(ce.a)("clear","Clear"),this.keyboardNavigationEventFilter=F.options.keyboardNavigationEventFilter,J.onDidSplice(this.onDidSpliceModel,this,this.disposables),this.updateOptions(F.options)}get enabled(){return this._enabled}get pattern(){return this._pattern}get filterOnType(){return this._filterOnType}updateOptions(F){F.simpleKeyboardNavigation?this.disable():this.enable(),typeof F.filterOnType!="undefined"&&(this._filterOnType=!!F.filterOnType,this.filterOnTypeDomNode.checked=this._filterOnType,this.updateFilterOnTypeTitleAndIcon()),typeof F.automaticKeyboardNavigation!="undefined"&&(this.automaticKeyboardNavigation=F.automaticKeyboardNavigation),this.tree.refilter(),this.render(),this.automaticKeyboardNavigation||this.onEventOrInput("")}enable(){if(this._enabled)return;const F=this.enabledDisposables.add(new y.a(this.view.getHTMLElement(),"keydown")),J=A.c.chain(F.event).filter(Ze=>!Object(O.e)(Ze.target)||Ze.target===this.filterOnTypeDomNode).filter(Ze=>Ze.key!=="Dead"&&!/^Media/.test(Ze.key)).map(Ze=>new C.a(Ze)).filter(this.keyboardNavigationEventFilter||(()=>!0)).filter(()=>this.automaticKeyboardNavigation||this.triggered).filter(Ze=>this.keyboardNavigationDelegate.mightProducePrintableCharacter(Ze)&&!(Ze.keyCode===18||Ze.keyCode===16||Ze.keyCode===15||Ze.keyCode===17)||(this.pattern.length>0||this.triggered)&&((Ze.keyCode===9||Ze.keyCode===1)&&!Ze.altKey&&!Ze.ctrlKey)&&!Ze.metaKey||Ze.keyCode===1&&(Ce.f?Ze.altKey&&!Ze.metaKey:Ze.ctrlKey)&&!Ze.shiftKey).forEach(Ze=>{Ze.stopPropagation(),Ze.preventDefault()}).event,Fe=this.enabledDisposables.add(new y.a(this.clearDomNode,"click"));A.c.chain(A.c.any(J,Fe.event)).event(this.onEventOrInput,this,this.enabledDisposables),this.filter.pattern="",this.tree.refilter(),this.render(),this._enabled=!0,this.triggered=!1}disable(){if(!this._enabled)return;this.domNode.remove(),this.enabledDisposables.clear(),this.tree.refilter(),this.render(),this._enabled=!1,this.triggered=!1}onEventOrInput(F){typeof F=="string"?this.onInput(F):F instanceof MouseEvent||F.keyCode===9||F.keyCode===1&&(Ce.f?F.altKey:F.ctrlKey)?this.onInput(""):F.keyCode===1?this.onInput(this.pattern.length===0?"":this.pattern.substr(0,this.pattern.length-1)):this.onInput(this.pattern+F.browserEvent.key)}onInput(F){const J=this.view.getHTMLElement();F&&!this.domNode.parentElement?J.append(this.domNode):!F&&this.domNode.parentElement&&(this.domNode.remove(),this.tree.domFocus()),this._pattern=F,this._onDidChangePattern.fire(F),this.filter.pattern=F,this.tree.refilter(),F&&this.tree.focusNext(0,!0,void 0,Ze=>!W.a.isDefault(Ze.filterData));const Fe=this.tree.getFocus();if(Fe.length>0){const Ze=Fe[0];this.tree.getRelativeTop(Ze)===null&&this.tree.reveal(Ze,.5)}this.render(),F||(this.triggered=!1)}onDragStart(){const F=this.view.getHTMLElement(),{left:J}=Object(h.D)(F),Fe=F.clientWidth,Ze=Fe/2,St=this.domNode.clientWidth,It=new I.b;let Vt=this.positionClassName;const io=()=>{switch(Vt){case"nw":this.domNode.style.top="4px",this.domNode.style.left="4px";break;case"ne":this.domNode.style.top="4px",this.domNode.style.left=`${Fe-St-6}px`;break}},ho=yo=>{yo.preventDefault();const Io=yo.clientX-J;yo.dataTransfer&&(yo.dataTransfer.dropEffect="none"),Io{this.positionClassName=Vt,this.domNode.className=`monaco-list-type-filter ${this.positionClassName}`,this.domNode.style.top="",this.domNode.style.left="",Object(I.f)(It)};io(),this.domNode.classList.remove(Vt),this.domNode.classList.add("dragging"),It.add(Object(I.i)(()=>this.domNode.classList.remove("dragging"))),It.add(Object(h.i)(document,"dragover",yo=>ho(yo))),It.add(Object(h.i)(this.domNode,"dragend",()=>mo())),g.c.CurrentDragAndDropData=new g.b("vscode-ui"),It.add(Object(I.i)(()=>g.c.CurrentDragAndDropData=void 0))}onDidSpliceModel(){if(!this._enabled||this.pattern.length===0)return;this.tree.refilter(),this.render()}onDidChangeFilterOnType(){this.tree.updateOptions({filterOnType:this.filterOnTypeDomNode.checked}),this.tree.refilter(),this.tree.domFocus(),this.render(),this.updateFilterOnTypeTitleAndIcon()}updateFilterOnTypeTitleAndIcon(){this.filterOnType?(this.filterOnTypeDomNode.classList.remove(...fe.classNamesArray),this.filterOnTypeDomNode.classList.add(...Se.classNamesArray),this.filterOnTypeDomNode.title=Object(ce.a)("disable filter on type","Disable Filter on Type")):(this.filterOnTypeDomNode.classList.remove(...Se.classNamesArray),this.filterOnTypeDomNode.classList.add(...fe.classNamesArray),this.filterOnTypeDomNode.title=Object(ce.a)("enable filter on type","Enable Filter on Type"))}render(){const F=this.filter.totalCount>0&&this.filter.matchCount===0;this.pattern&&this.tree.options.filterOnType&&F?(this.messageDomNode.textContent=Object(ce.a)("empty","No elements found"),this._empty=!0):(this.messageDomNode.innerText="",this._empty=!1),this.domNode.classList.toggle("no-matches",F),this.domNode.title=Object(ce.a)("found","Matched {0} out of {1} elements",this.filter.matchCount,this.filter.totalCount),this.labelDomNode.textContent=this.pattern.length>16?"\u2026"+this.pattern.substr(this.pattern.length-16):this.pattern,this._onDidChangeEmptyState.fire(this._empty)}shouldAllowFocus(F){return!this.enabled||!this.pattern||this.filterOnType||this.filter.totalCount>0&&this.filter.matchCount<=1?!0:!W.a.isDefault(F.filterData)}dispose(){this._enabled&&(this.domNode.remove(),this.enabledDisposables.dispose(),this._enabled=!1,this.triggered=!1),this._onDidChangePattern.dispose(),Object(I.f)(this.disposables)}}function ye(F){let J=v.Unknown;return Object(h.J)(F.browserEvent.target,"monaco-tl-twistie","monaco-tl-row")?J=v.Twistie:Object(h.J)(F.browserEvent.target,"monaco-tl-contents","monaco-tl-row")&&(J=v.Element),{browserEvent:F.browserEvent,element:F.element?F.element.element:null,target:J}}function ze(F,J){J(F),F.children.forEach(Fe=>ze(Fe,J))}class xe{constructor(F,J){this.getFirstViewElementWithTrait=F,this.identityProvider=J,this.nodes=[],this._onDidChange=new A.b,this.onDidChange=this._onDidChange.event}get nodeSet(){return this._nodeSet||(this._nodeSet=this.createNodeSet()),this._nodeSet}set(F,J){var Fe;if(!((Fe=J)===null||Fe===void 0?void 0:Fe.__forceEvent)&&Object(P.g)(this.nodes,F))return;this._set(F,!1,J)}_set(F,J,Fe){if(this.nodes=[...F],this.elements=void 0,this._nodeSet=void 0,!J){const Ze=this;this._onDidChange.fire({get elements(){return Ze.get()},browserEvent:Fe})}}get(){return this.elements||(this.elements=this.nodes.map(F=>F.element)),[...this.elements]}getNodes(){return this.nodes}has(F){return this.nodeSet.has(F)}onDidModelSplice({insertedNodes:F,deletedNodes:J}){if(!this.identityProvider){const io=this.createNodeSet(),ho=mo=>io.delete(mo);J.forEach(mo=>ze(mo,ho)),this.set([...io.values()]);return}const Fe=new Set,Ze=io=>Fe.add(this.identityProvider.getId(io.element).toString());J.forEach(io=>ze(io,Ze));const St=new Map,It=io=>St.set(this.identityProvider.getId(io.element).toString(),io);F.forEach(io=>ze(io,It));const Vt=[];for(const io of this.nodes){const ho=this.identityProvider.getId(io.element).toString(),mo=Fe.has(ho);if(!mo)Vt.push(io);else{const yo=St.get(ho);yo&&Vt.push(yo)}}if(this.nodes.length>0&&Vt.length===0){const io=this.getFirstViewElementWithTrait();io&&Vt.push(io)}this._set(Vt,!0)}createNodeSet(){const F=new Set;for(const J of this.nodes)F.add(J);return F}}class Te extends O.d{constructor(F,J){super(F);this.tree=J}onViewPointer(F){if(Object(O.e)(F.browserEvent.target)||Object(O.f)(F.browserEvent.target))return;const J=F.element;if(!J)return super.onViewPointer(F);if(this.isSelectionRangeChangeEvent(F)||this.isSelectionSingleChangeEvent(F))return super.onViewPointer(F);const Fe=F.browserEvent.target,Ze=Fe.classList.contains("monaco-tl-twistie")||Fe.classList.contains("monaco-icon-label")&&Fe.classList.contains("folder-icon")&&F.browserEvent.offsetX<16;let St=!1;if(typeof this.tree.expandOnlyOnTwistieClick=="function"?St=this.tree.expandOnlyOnTwistieClick(J.element):St=!!this.tree.expandOnlyOnTwistieClick,St&&!Ze&&F.browserEvent.detail!==2)return super.onViewPointer(F);if(!this.tree.expandOnDoubleClick&&F.browserEvent.detail===2)return super.onViewPointer(F);if(J.collapsible){const It=this.tree.model,Vt=It.getNodeLocation(J),io=F.browserEvent.altKey;if(this.tree.setFocus([Vt]),It.setCollapsed(Vt,void 0,io),St&&Ze)return}super.onViewPointer(F)}onDoubleClick(F){const J=F.browserEvent.target.classList.contains("monaco-tl-twistie");if(J||!this.tree.expandOnDoubleClick)return;super.onDoubleClick(F)}}class He extends O.c{constructor(F,J,Fe,Ze,St,It,Vt,io){super(F,J,Fe,Ze,io);this.focusTrait=St,this.selectionTrait=It,this.anchorTrait=Vt}createMouseController(F){return new Te(this,F.tree)}splice(F,J,Fe=[]){if(super.splice(F,J,Fe),Fe.length===0)return;const Ze=[],St=[];let It;Fe.forEach((Vt,io)=>{this.focusTrait.has(Vt)&&Ze.push(F+io),this.selectionTrait.has(Vt)&&St.push(F+io),this.anchorTrait.has(Vt)&&(It=F+io)}),Ze.length>0&&super.setFocus(Object(P.f)([...super.getFocus(),...Ze])),St.length>0&&super.setSelection(Object(P.f)([...super.getSelection(),...St])),typeof It=="number"&&super.setAnchor(It)}setFocus(F,J,Fe=!1){super.setFocus(F,J),Fe||this.focusTrait.set(F.map(Ze=>this.element(Ze)),J)}setSelection(F,J,Fe=!1){super.setSelection(F,J),Fe||this.selectionTrait.set(F.map(Ze=>this.element(Ze)),J)}setAnchor(F,J=!1){super.setAnchor(F),J||(typeof F=="undefined"?this.anchorTrait.set([]):this.anchorTrait.set([this.element(F)]))}}class st{constructor(F,J,Fe,Ze,St={}){this._options=St,this.eventBufferer=new A.d,this.disposables=new I.b,this._onWillRefilter=new A.b,this.onWillRefilter=this._onWillRefilter.event,this._onDidUpdateOptions=new A.b;const It=new Ne(Fe),Vt=new A.f,io=new A.f,ho=new re(io.event);this.renderers=Ze.map(Io=>new we(Io,()=>this.model,Vt.event,ho,St));for(let Io of this.renderers)this.disposables.add(Io);let mo;St.keyboardNavigationLabelProvider&&(mo=new Ie(this,St.keyboardNavigationLabelProvider,St.filter),St=Object.assign(Object.assign({},St),{filter:mo}),this.disposables.add(mo)),this.focus=new xe(()=>this.view.getFocusedElements()[0],St.identityProvider),this.selection=new xe(()=>this.view.getSelectedElements()[0],St.identityProvider),this.anchor=new xe(()=>this.view.getAnchorElement(),St.identityProvider),this.view=new He(F,J,It,this.renderers,this.focus,this.selection,this.anchor,Object.assign(Object.assign({},De(()=>this.model,St)),{tree:this})),this.model=this.createModel(F,this.view,St),Vt.input=this.model.onDidChangeCollapseState;const yo=A.c.forEach(this.model.onDidSplice,Io=>{this.eventBufferer.bufferEvents(()=>{this.focus.onDidModelSplice(Io),this.selection.onDidModelSplice(Io)})});if(yo(()=>null,null,this.disposables),io.input=A.c.chain(A.c.any(yo,this.focus.onDidChange,this.selection.onDidChange)).debounce(()=>null,0).map(()=>{const Io=new Set;for(const No of this.focus.getNodes())Io.add(No);for(const No of this.selection.getNodes())Io.add(No);return[...Io.values()]}).event,St.keyboardSupport!==!1){const Io=A.c.chain(this.view.onKeyDown).filter(No=>!Object(O.e)(No.target)).map(No=>new C.a(No));Io.filter(No=>No.keyCode===15).on(this.onLeftArrow,this,this.disposables),Io.filter(No=>No.keyCode===17).on(this.onRightArrow,this,this.disposables),Io.filter(No=>No.keyCode===10).on(this.onSpace,this,this.disposables)}if(St.keyboardNavigationLabelProvider){const Io=St.keyboardNavigationDelegate||O.a;this.typeFilterController=new ge(this,this.model,this.view,mo,Io),this.focusNavigationFilter=No=>this.typeFilterController.shouldAllowFocus(No),this.disposables.add(this.typeFilterController)}this.styleElement=Object(h.w)(this.view.getHTMLElement()),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===ve.Always)}get onDidChangeFocus(){return this.eventBufferer.wrapEvent(this.focus.onDidChange)}get onDidChangeSelection(){return this.eventBufferer.wrapEvent(this.selection.onDidChange)}get onMouseDblClick(){return A.c.map(this.view.onMouseDblClick,ye)}get onPointer(){return A.c.map(this.view.onPointer,ye)}get onDidFocus(){return this.view.onDidFocus}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get expandOnDoubleClick(){return typeof this._options.expandOnDoubleClick=="undefined"?!0:this._options.expandOnDoubleClick}get expandOnlyOnTwistieClick(){return typeof this._options.expandOnlyOnTwistieClick=="undefined"?!0:this._options.expandOnlyOnTwistieClick}get onDidDispose(){return this.view.onDidDispose}updateOptions(F={}){this._options=Object.assign(Object.assign({},this._options),F);for(const J of this.renderers)J.updateOptions(F);this.view.updateOptions(Object.assign(Object.assign({},this._options),{enableKeyboardNavigation:this._options.simpleKeyboardNavigation})),this.typeFilterController&&this.typeFilterController.updateOptions(this._options),this._onDidUpdateOptions.fire(this._options),this.getHTMLElement().classList.toggle("always",this._options.renderIndentGuides===ve.Always)}get options(){return this._options}getHTMLElement(){return this.view.getHTMLElement()}get scrollTop(){return this.view.scrollTop}set scrollTop(F){this.view.scrollTop=F}domFocus(){this.view.domFocus()}layout(F,J){this.view.layout(F,J)}style(F){const J=`.${this.view.domId}`,Fe=[];F.treeIndentGuidesStroke&&(Fe.push(`.monaco-list${J}:hover .monaco-tl-indent > .indent-guide, .monaco-list${J}.always .monaco-tl-indent > .indent-guide { border-color: ${F.treeIndentGuidesStroke.transparent(.4)}; }`),Fe.push(`.monaco-list${J} .monaco-tl-indent > .indent-guide.active { border-color: ${F.treeIndentGuidesStroke}; }`)),this.styleElement.textContent=Fe.join(` `),this.view.style(F)}collapse(F,J=!1){return this.model.setCollapsed(F,!0,J)}expand(F,J=!1){return this.model.setCollapsed(F,!1,J)}isCollapsible(F){return this.model.isCollapsible(F)}setCollapsible(F,J){return this.model.setCollapsible(F,J)}isCollapsed(F){return this.model.isCollapsed(F)}refilter(){this._onWillRefilter.fire(void 0),this.model.refilter()}setSelection(F,J){const Fe=F.map(St=>this.model.getNode(St));this.selection.set(Fe,J);const Ze=F.map(St=>this.model.getListIndex(St)).filter(St=>St>-1);this.view.setSelection(Ze,J,!0)}getSelection(){return this.selection.get()}setFocus(F,J){const Fe=F.map(St=>this.model.getNode(St));this.focus.set(Fe,J);const Ze=F.map(St=>this.model.getListIndex(St)).filter(St=>St>-1);this.view.setFocus(Ze,J,!0)}focusNext(F=1,J=!1,Fe,Ze=this.focusNavigationFilter){this.view.focusNext(F,J,Fe,Ze)}getFocus(){return this.focus.get()}reveal(F,J){this.model.expandTo(F);const Fe=this.model.getListIndex(F);if(Fe===-1)return;this.view.reveal(Fe,J)}getRelativeTop(F){const J=this.model.getListIndex(F);return J===-1?null:this.view.getRelativeTop(J)}onLeftArrow(F){F.preventDefault(),F.stopPropagation();const J=this.view.getFocusedElements();if(J.length===0)return;const Fe=J[0],Ze=this.model.getNodeLocation(Fe),St=this.model.setCollapsed(Ze,!0);if(!St){const It=this.model.getParentNodeLocation(Ze);if(!It)return;const Vt=this.model.getListIndex(It);this.view.reveal(Vt),this.view.setFocus([Vt])}}onRightArrow(F){F.preventDefault(),F.stopPropagation();const J=this.view.getFocusedElements();if(J.length===0)return;const Fe=J[0],Ze=this.model.getNodeLocation(Fe),St=this.model.setCollapsed(Ze,!1);if(!St){if(!Fe.children.some(io=>io.visible))return;const[It]=this.view.getFocus(),Vt=It+1;this.view.reveal(Vt),this.view.setFocus([Vt])}}onSpace(F){F.preventDefault(),F.stopPropagation();const J=this.view.getFocusedElements();if(J.length===0)return;const Fe=J[0],Ze=this.model.getNodeLocation(Fe),St=F.browserEvent.altKey;this.model.setCollapsed(Ze,void 0,St)}dispose(){Object(I.f)(this.disposables),this.view.dispose()}}class nt{constructor(F,J,Fe={}){this.user=F,this.rootRef=null,this.nodes=new Map,this.nodesByIdentity=new Map,this.model=new K(F,J,null,Fe),this.onDidSplice=this.model.onDidSplice,this.onDidChangeCollapseState=this.model.onDidChangeCollapseState,this.onDidChangeRenderNodeCount=this.model.onDidChangeRenderNodeCount,Fe.sorter&&(this.sorter={compare(Ze,St){return Fe.sorter.compare(Ze.element,St.element)}}),this.identityProvider=Fe.identityProvider}setChildren(F,J=G.a.empty(),Fe={}){const Ze=this.getElementLocation(F);this._setChildren(Ze,this.preserveCollapseState(J),Fe)}_setChildren(F,J=G.a.empty(),Fe){const Ze=new Set,St=new Set,It=io=>{var ho;if(io.element===null)return;const mo=io;if(Ze.add(mo.element),this.nodes.set(mo.element,mo),this.identityProvider){const yo=this.identityProvider.getId(mo.element).toString();St.add(yo),this.nodesByIdentity.set(yo,mo)}(ho=Fe.onDidCreateNode)===null||ho===void 0||ho.call(Fe,mo)},Vt=io=>{var ho;if(io.element===null)return;const mo=io;if(Ze.has(mo.element)||this.nodes.delete(mo.element),this.identityProvider){const yo=this.identityProvider.getId(mo.element).toString();St.has(yo)||this.nodesByIdentity.delete(yo)}(ho=Fe.onDidDeleteNode)===null||ho===void 0||ho.call(Fe,mo)};this.model.splice([...F,0],Number.MAX_VALUE,J,Object.assign(Object.assign({},Fe),{onDidCreateNode:It,onDidDeleteNode:Vt}))}preserveCollapseState(F=G.a.empty()){return this.sorter&&(F=[...F].sort(this.sorter.compare.bind(this.sorter))),G.a.map(F,J=>{let Fe=this.nodes.get(J.element);if(!Fe&&this.identityProvider){const It=this.identityProvider.getId(J.element).toString();Fe=this.nodesByIdentity.get(It)}if(!Fe)return Object.assign(Object.assign({},J),{children:this.preserveCollapseState(J.children)});const Ze=typeof J.collapsible=="boolean"?J.collapsible:Fe.collapsible,St=typeof J.collapsed!="undefined"?J.collapsed:Fe.collapsed;return Object.assign(Object.assign({},J),{collapsible:Ze,collapsed:St,children:this.preserveCollapseState(J.children)})})}rerender(F){const J=this.getElementLocation(F);this.model.rerender(J)}has(F){return this.nodes.has(F)}getListIndex(F){const J=this.getElementLocation(F);return this.model.getListIndex(J)}getListRenderCount(F){const J=this.getElementLocation(F);return this.model.getListRenderCount(J)}isCollapsible(F){const J=this.getElementLocation(F);return this.model.isCollapsible(J)}setCollapsible(F,J){const Fe=this.getElementLocation(F);return this.model.setCollapsible(Fe,J)}isCollapsed(F){const J=this.getElementLocation(F);return this.model.isCollapsed(J)}setCollapsed(F,J,Fe){const Ze=this.getElementLocation(F);return this.model.setCollapsed(Ze,J,Fe)}expandTo(F){const J=this.getElementLocation(F);this.model.expandTo(J)}refilter(){this.model.refilter()}getNode(F=null){if(F===null)return this.model.getNode(this.model.rootRef);const J=this.nodes.get(F);if(!J)throw new D(this.user,`Tree element not found: ${F}`);return J}getNodeLocation(F){return F.element}getParentNodeLocation(F){if(F===null)throw new D(this.user,"Invalid getParentNodeLocation call");const J=this.nodes.get(F);if(!J)throw new D(this.user,`Tree element not found: ${F}`);const Fe=this.model.getNodeLocation(J),Ze=this.model.getParentNodeLocation(Fe),St=this.model.getNode(Ze);return St.element}getElementLocation(F){if(F===null)return[];const J=this.nodes.get(F);if(!J)throw new D(this.user,`Tree element not found: ${F}`);return this.model.getNodeLocation(J)}}function rt(F){const J=[F.element],Fe=F.incompressible||!1;return{element:{elements:J,incompressible:Fe},children:G.a.map(G.a.from(F.children),rt),collapsible:F.collapsible,collapsed:F.collapsed}}function wt(F){const J=[F.element],Fe=F.incompressible||!1;let Ze,St;for(;!([St,Ze]=G.a.consume(G.a.from(F.children),2),St.length!==1);){if(St[0].incompressible)break;F=St[0],J.push(F.element)}return{element:{elements:J,incompressible:Fe},children:G.a.map(G.a.concat(St,Ze),wt),collapsible:F.collapsible,collapsed:F.collapsed}}function Pt(F,J=0){let Fe;return JPt(Ze,0)),J===0&&F.element.incompressible?{element:F.element.elements[J],children:Fe,incompressible:!0,collapsible:F.collapsible,collapsed:F.collapsed}:{element:F.element.elements[J],children:Fe,collapsible:F.collapsible,collapsed:F.collapsed}}function no(F){return Pt(F,0)}function ht(F,J,Fe){return F.element===J?Object.assign(Object.assign({},F),{children:Fe}):Object.assign(Object.assign({},F),{children:G.a.map(G.a.from(F.children),Ze=>ht(Ze,J,Fe))})}const lt=F=>({getId(J){return J.elements.map(Fe=>F.getId(Fe).toString()).join("\0")}});class le{constructor(F,J,Fe={}){this.user=F,this.rootRef=null,this.nodes=new Map,this.model=new nt(F,J,Fe),this.enabled=typeof Fe.compressionEnabled=="undefined"?!0:Fe.compressionEnabled,this.identityProvider=Fe.identityProvider}get onDidSplice(){return this.model.onDidSplice}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}get onDidChangeRenderNodeCount(){return this.model.onDidChangeRenderNodeCount}setChildren(F,J=G.a.empty(),Fe){const Ze=Fe.diffIdentityProvider&<(Fe.diffIdentityProvider);if(F===null){const No=G.a.map(J,this.enabled?wt:rt);this._setChildren(null,No,{diffIdentityProvider:Ze,diffDepth:Infinity});return}const St=this.nodes.get(F);if(!St)throw new Error("Unknown compressed tree node");const It=this.model.getNode(St),Vt=this.model.getParentNodeLocation(St),io=this.model.getNode(Vt),ho=no(It),mo=ht(ho,F,J),yo=(this.enabled?wt:rt)(mo),Io=io.children.map(No=>No===It?yo:No);this._setChildren(io.element,Io,{diffIdentityProvider:Ze,diffDepth:It.depth-io.depth})}setCompressionEnabled(F){if(F===this.enabled)return;this.enabled=F;const J=this.model.getNode(),Fe=J.children,Ze=G.a.map(Fe,no),St=G.a.map(Ze,F?wt:rt);this._setChildren(null,St,{diffIdentityProvider:this.identityProvider,diffDepth:Infinity})}_setChildren(F,J,Fe){const Ze=new Set,St=Vt=>{for(const io of Vt.element.elements)Ze.add(io),this.nodes.set(io,Vt.element)},It=Vt=>{for(const io of Vt.element.elements)Ze.has(io)||this.nodes.delete(io)};this.model.setChildren(F,J,Object.assign(Object.assign({},Fe),{onDidCreateNode:St,onDidDeleteNode:It}))}has(F){return this.nodes.has(F)}getListIndex(F){const J=this.getCompressedNode(F);return this.model.getListIndex(J)}getListRenderCount(F){const J=this.getCompressedNode(F);return this.model.getListRenderCount(J)}getNode(F){if(typeof F=="undefined")return this.model.getNode();const J=this.getCompressedNode(F);return this.model.getNode(J)}getNodeLocation(F){const J=this.model.getNodeLocation(F);return J===null?null:J.elements[J.elements.length-1]}getParentNodeLocation(F){const J=this.getCompressedNode(F),Fe=this.model.getParentNodeLocation(J);return Fe===null?null:Fe.elements[Fe.elements.length-1]}isCollapsible(F){const J=this.getCompressedNode(F);return this.model.isCollapsible(J)}setCollapsible(F,J){const Fe=this.getCompressedNode(F);return this.model.setCollapsible(Fe,J)}isCollapsed(F){const J=this.getCompressedNode(F);return this.model.isCollapsed(J)}setCollapsed(F,J,Fe){const Ze=this.getCompressedNode(F);return this.model.setCollapsed(Ze,J,Fe)}expandTo(F){const J=this.getCompressedNode(F);this.model.expandTo(J)}rerender(F){const J=this.getCompressedNode(F);this.model.rerender(J)}refilter(){this.model.refilter()}getCompressedNode(F){if(F===null)return null;const J=this.nodes.get(F);if(!J)throw new D(this.user,`Tree element not found: ${F}`);return J}}const Pe=F=>F[F.length-1];class it{constructor(F,J){this.unwrapper=F,this.node=J}get element(){return this.node.element===null?null:this.unwrapper(this.node.element)}get children(){return this.node.children.map(F=>new it(this.unwrapper,F))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}}function Dt(F,J){return{splice(Fe,Ze,St){J.splice(Fe,Ze,St.map(It=>F.map(It)))},updateElementHeight(Fe,Ze){J.updateElementHeight(Fe,Ze)}}}function kt(F,J){return Object.assign(Object.assign({},J),{identityProvider:J.identityProvider&&{getId(Fe){return J.identityProvider.getId(F(Fe))}},sorter:J.sorter&&{compare(Fe,Ze){return J.sorter.compare(Fe.elements[0],Ze.elements[0])}},filter:J.filter&&{filter(Fe,Ze){return J.filter.filter(F(Fe),Ze)}}})}class eo{constructor(F,J,Fe={}){this.rootRef=null,this.elementMapper=Fe.elementMapper||Pe;const Ze=St=>this.elementMapper(St.elements);this.nodeMapper=new j(St=>new it(Ze,St)),this.model=new le(F,Dt(this.nodeMapper,J),kt(Ze,Fe))}get onDidSplice(){return A.c.map(this.model.onDidSplice,({insertedNodes:F,deletedNodes:J})=>({insertedNodes:F.map(Fe=>this.nodeMapper.map(Fe)),deletedNodes:J.map(Fe=>this.nodeMapper.map(Fe))}))}get onDidChangeCollapseState(){return A.c.map(this.model.onDidChangeCollapseState,({node:F,deep:J})=>({node:this.nodeMapper.map(F),deep:J}))}get onDidChangeRenderNodeCount(){return A.c.map(this.model.onDidChangeRenderNodeCount,F=>this.nodeMapper.map(F))}setChildren(F,J=G.a.empty(),Fe={}){this.model.setChildren(F,J,Fe)}setCompressionEnabled(F){this.model.setCompressionEnabled(F)}has(F){return this.model.has(F)}getListIndex(F){return this.model.getListIndex(F)}getListRenderCount(F){return this.model.getListRenderCount(F)}getNode(F){return this.nodeMapper.map(this.model.getNode(F))}getNodeLocation(F){return F.element}getParentNodeLocation(F){return this.model.getParentNodeLocation(F)}isCollapsible(F){return this.model.isCollapsible(F)}setCollapsible(F,J){return this.model.setCollapsible(F,J)}isCollapsed(F){return this.model.isCollapsed(F)}setCollapsed(F,J,Fe){return this.model.setCollapsed(F,J,Fe)}expandTo(F){return this.model.expandTo(F)}rerender(F){return this.model.rerender(F)}refilter(){return this.model.refilter()}getCompressedTreeNode(F=null){return this.model.getNode(F)}}var bo=e("ZCR3"),ao=function(F,J,Fe,Ze){var St=arguments.length,It=St<3?J:Ze===null?Ze=Object.getOwnPropertyDescriptor(J,Fe):Ze,Vt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")It=Reflect.decorate(F,J,Fe,Ze);else for(var io=F.length-1;io>=0;io--)(Vt=F[io])&&(It=(St<3?Vt(It):St>3?Vt(J,Fe,It):Vt(J,Fe))||It);return St>3&&It&&Object.defineProperty(J,Fe,It),It};class So extends st{constructor(F,J,Fe,Ze,St={}){super(F,J,Fe,Ze,St)}get onDidChangeCollapseState(){return this.model.onDidChangeCollapseState}setChildren(F,J=G.a.empty(),Fe){this.model.setChildren(F,J,Fe)}rerender(F){if(F===void 0){this.view.rerender();return}this.model.rerender(F)}hasElement(F){return this.model.has(F)}createModel(F,J,Fe){return new nt(F,J,Fe)}}class Lo{constructor(F,J){this._compressedTreeNodeProvider=F,this.renderer=J,this.templateId=J.templateId,J.onDidChangeTwistieState&&(this.onDidChangeTwistieState=J.onDidChangeTwistieState)}get compressedTreeNodeProvider(){return this._compressedTreeNodeProvider()}renderTemplate(F){const J=this.renderer.renderTemplate(F);return{compressedTreeNode:void 0,data:J}}renderElement(F,J,Fe,Ze){const St=this.compressedTreeNodeProvider.getCompressedTreeNode(F.element);St.element.elements.length===1?(Fe.compressedTreeNode=void 0,this.renderer.renderElement(F,J,Fe.data,Ze)):(Fe.compressedTreeNode=St,this.renderer.renderCompressedElements(St,J,Fe.data,Ze))}disposeElement(F,J,Fe,Ze){Fe.compressedTreeNode?this.renderer.disposeCompressedElements&&this.renderer.disposeCompressedElements(Fe.compressedTreeNode,J,Fe.data,Ze):this.renderer.disposeElement&&this.renderer.disposeElement(F,J,Fe.data,Ze)}disposeTemplate(F){this.renderer.disposeTemplate(F.data)}renderTwistie(F,J){return this.renderer.renderTwistie?this.renderer.renderTwistie(F,J):!1}}ao([bo.a],Lo.prototype,"compressedTreeNodeProvider",null);function xo(F,J){return J&&Object.assign(Object.assign({},J),{keyboardNavigationLabelProvider:J.keyboardNavigationLabelProvider&&{getKeyboardNavigationLabel(Fe){let Ze;try{Ze=F().getCompressedTreeNode(Fe)}catch(St){return J.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(Fe)}return Ze.element.elements.length===1?J.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(Fe):J.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(Ze.element.elements)}}})}class _o extends So{constructor(F,J,Fe,Ze,St={}){const It=()=>this,Vt=Ze.map(io=>new Lo(It,io));super(F,J,Fe,Vt,xo(It,St))}setChildren(F,J=G.a.empty(),Fe){this.model.setChildren(F,J,Fe)}createModel(F,J,Fe){return new eo(F,J,Fe)}updateOptions(F={}){super.updateOptions(F),typeof F.compressionEnabled!="undefined"&&this.model.setCompressionEnabled(F.compressionEnabled)}getCompressedTreeNode(F=null){return this.model.getCompressedTreeNode(F)}}var to=e("/cxE"),Wt=function(F,J,Fe,Ze){function St(It){return It instanceof Fe?It:new Fe(function(Vt){Vt(It)})}return new(Fe||(Fe=Promise))(function(It,Vt){function io(yo){try{mo(Ze.next(yo))}catch(Io){Vt(Io)}}function ho(yo){try{mo(Ze.throw(yo))}catch(Io){Vt(Io)}}function mo(yo){yo.done?It(yo.value):St(yo.value).then(io,ho)}mo((Ze=Ze.apply(F,J||[])).next())})};function Ge(F){return Object.assign(Object.assign({},F),{children:[],refreshPromise:void 0,stale:!0,slow:!1,collapsedByDefault:void 0})}function mt(F,J){return J.parent?J.parent===F?!0:mt(F,J.parent):!1}function Gt(F,J){return F===J||mt(F,J)||mt(J,F)}class qe{constructor(F){this.node=F}get element(){return this.node.element.element}get children(){return this.node.children.map(F=>new qe(F))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}}class tt{constructor(F,J,Fe){this.renderer=F,this.nodeMapper=J,this.onDidChangeTwistieState=Fe,this.renderedNodes=new Map,this.templateId=F.templateId}renderTemplate(F){const J=this.renderer.renderTemplate(F);return{templateData:J}}renderElement(F,J,Fe,Ze){this.renderer.renderElement(this.nodeMapper.map(F),J,Fe.templateData,Ze)}renderTwistie(F,J){return F.slow?(J.classList.add(...te.classNamesArray),!0):(J.classList.remove(...te.classNamesArray),!1)}disposeElement(F,J,Fe,Ze){this.renderer.disposeElement&&this.renderer.disposeElement(this.nodeMapper.map(F),J,Fe.templateData,Ze)}disposeTemplate(F){this.renderer.disposeTemplate(F.templateData)}dispose(){this.renderedNodes.clear()}}function gt(F){return{browserEvent:F.browserEvent,elements:F.elements.map(J=>J.element)}}function $e(F){return{browserEvent:F.browserEvent,element:F.element&&F.element.element,target:F.target}}class je extends l.a{constructor(F){super(F.elements.map(J=>J.element));this.data=F}}function Ue(F){return F instanceof l.a?new je(F):F}class Ye{constructor(F){this.dnd=F}getDragURI(F){return this.dnd.getDragURI(F.element)}getDragLabel(F,J){return this.dnd.getDragLabel?this.dnd.getDragLabel(F.map(Fe=>Fe.element),J):void 0}onDragStart(F,J){this.dnd.onDragStart&&this.dnd.onDragStart(Ue(F),J)}onDragOver(F,J,Fe,Ze,St=!0){return this.dnd.onDragOver(Ue(F),J&&J.element,Fe,Ze)}drop(F,J,Fe,Ze){this.dnd.drop(Ue(F),J&&J.element,Fe,Ze)}onDragEnd(F){this.dnd.onDragEnd&&this.dnd.onDragEnd(F)}}function Mt(F){return F&&Object.assign(Object.assign({},F),{collapseByDefault:!0,identityProvider:F.identityProvider&&{getId(J){return F.identityProvider.getId(J.element)}},dnd:F.dnd&&new Ye(F.dnd),multipleSelectionController:F.multipleSelectionController&&{isSelectionSingleChangeEvent(J){return F.multipleSelectionController.isSelectionSingleChangeEvent(Object.assign(Object.assign({},J),{element:J.element}))},isSelectionRangeChangeEvent(J){return F.multipleSelectionController.isSelectionRangeChangeEvent(Object.assign(Object.assign({},J),{element:J.element}))}},accessibilityProvider:F.accessibilityProvider&&Object.assign(Object.assign({},F.accessibilityProvider),{getPosInSet:void 0,getSetSize:void 0,getRole:F.accessibilityProvider.getRole?J=>F.accessibilityProvider.getRole(J.element):()=>"treeitem",isChecked:F.accessibilityProvider.isChecked?J=>{var Fe;return!!((Fe=F.accessibilityProvider)===null||Fe===void 0?void 0:Fe.isChecked(J.element))}:void 0,getAriaLabel(J){return F.accessibilityProvider.getAriaLabel(J.element)},getWidgetAriaLabel(){return F.accessibilityProvider.getWidgetAriaLabel()},getWidgetRole:F.accessibilityProvider.getWidgetRole?()=>F.accessibilityProvider.getWidgetRole():()=>"tree",getAriaLevel:F.accessibilityProvider.getAriaLevel&&(J=>F.accessibilityProvider.getAriaLevel(J.element)),getActiveDescendantId:F.accessibilityProvider.getActiveDescendantId&&(J=>F.accessibilityProvider.getActiveDescendantId(J.element))}),filter:F.filter&&{filter(J,Fe){return F.filter.filter(J.element,Fe)}},keyboardNavigationLabelProvider:F.keyboardNavigationLabelProvider&&Object.assign(Object.assign({},F.keyboardNavigationLabelProvider),{getKeyboardNavigationLabel(J){return F.keyboardNavigationLabelProvider.getKeyboardNavigationLabel(J.element)}}),sorter:void 0,expandOnlyOnTwistieClick:typeof F.expandOnlyOnTwistieClick=="undefined"?void 0:typeof F.expandOnlyOnTwistieClick!="function"?F.expandOnlyOnTwistieClick:J=>F.expandOnlyOnTwistieClick(J.element),additionalScrollHeight:F.additionalScrollHeight})}function Bt(F,J){J(F),F.children.forEach(Fe=>Bt(Fe,J))}class $t{constructor(F,J,Fe,Ze,St,It={}){this.user=F,this.dataSource=St,this.nodes=new Map,this.subTreeRefreshPromises=new Map,this.refreshPromises=new Map,this._onDidRender=new A.b,this._onDidChangeNodeSlowState=new A.b,this.nodeMapper=new j(Vt=>new qe(Vt)),this.disposables=new I.b,this.identityProvider=It.identityProvider,this.autoExpandSingleChildren=typeof It.autoExpandSingleChildren=="undefined"?!1:It.autoExpandSingleChildren,this.sorter=It.sorter,this.collapseByDefault=It.collapseByDefault,this.tree=this.createTree(F,J,Fe,Ze,It),this.root=Ge({element:void 0,parent:null,hasChildren:!0}),this.identityProvider&&(this.root=Object.assign(Object.assign({},this.root),{id:null})),this.nodes.set(null,this.root),this.tree.onDidChangeCollapseState(this._onDidChangeCollapseState,this,this.disposables)}get onDidChangeFocus(){return A.c.map(this.tree.onDidChangeFocus,gt)}get onDidChangeSelection(){return A.c.map(this.tree.onDidChangeSelection,gt)}get onMouseDblClick(){return A.c.map(this.tree.onMouseDblClick,$e)}get onPointer(){return A.c.map(this.tree.onPointer,$e)}get onDidFocus(){return this.tree.onDidFocus}get onDidDispose(){return this.tree.onDidDispose}createTree(F,J,Fe,Ze,St){const It=new Ne(Fe),Vt=Ze.map(ho=>new tt(ho,this.nodeMapper,this._onDidChangeNodeSlowState.event)),io=Mt(St)||{};return new So(F,J,It,Vt,io)}updateOptions(F={}){this.tree.updateOptions(F)}getHTMLElement(){return this.tree.getHTMLElement()}get scrollTop(){return this.tree.scrollTop}set scrollTop(F){this.tree.scrollTop=F}domFocus(){this.tree.domFocus()}layout(F,J){this.tree.layout(F,J)}style(F){this.tree.style(F)}getInput(){return this.root.element}setInput(F,J){return Wt(this,void 0,void 0,function*(){this.refreshPromises.forEach(Ze=>Ze.cancel()),this.refreshPromises.clear(),this.root.element=F;const Fe=J&&{viewState:J,focus:[],selection:[]};yield this._updateChildren(F,!0,!1,Fe),Fe&&(this.tree.setFocus(Fe.focus),this.tree.setSelection(Fe.selection)),J&&typeof J.scrollTop=="number"&&(this.scrollTop=J.scrollTop)})}_updateChildren(F=this.root.element,J=!0,Fe=!1,Ze,St){return Wt(this,void 0,void 0,function*(){if(typeof this.root.element=="undefined")throw new D(this.user,"Tree input not set");this.root.refreshPromise&&(yield this.root.refreshPromise,yield A.c.toPromise(this._onDidRender.event));const It=this.getDataNode(F);if(yield this.refreshAndRenderNode(It,J,Ze,St),Fe)try{this.tree.rerender(It)}catch(Vt){}})}rerender(F){if(F===void 0||F===this.root.element){this.tree.rerender();return}const J=this.getDataNode(F);this.tree.rerender(J)}collapse(F,J=!1){const Fe=this.getDataNode(F);return this.tree.collapse(Fe===this.root?null:Fe,J)}expand(F,J=!1){return Wt(this,void 0,void 0,function*(){if(typeof this.root.element=="undefined")throw new D(this.user,"Tree input not set");this.root.refreshPromise&&(yield this.root.refreshPromise,yield A.c.toPromise(this._onDidRender.event));const Fe=this.getDataNode(F);if(this.tree.hasElement(Fe)&&!this.tree.isCollapsible(Fe))return!1;if(Fe.refreshPromise&&(yield this.root.refreshPromise,yield A.c.toPromise(this._onDidRender.event)),Fe!==this.root&&!Fe.refreshPromise&&!this.tree.isCollapsed(Fe))return!1;const Ze=this.tree.expand(Fe===this.root?null:Fe,J);return Fe.refreshPromise&&(yield this.root.refreshPromise,yield A.c.toPromise(this._onDidRender.event)),Ze})}setSelection(F,J){const Fe=F.map(Ze=>this.getDataNode(Ze));this.tree.setSelection(Fe,J)}getSelection(){const F=this.tree.getSelection();return F.map(J=>J.element)}setFocus(F,J){const Fe=F.map(Ze=>this.getDataNode(Ze));this.tree.setFocus(Fe,J)}getFocus(){const F=this.tree.getFocus();return F.map(J=>J.element)}reveal(F,J){this.tree.reveal(this.getDataNode(F),J)}getDataNode(F){const J=this.nodes.get(F===this.root.element?null:F);if(!J)throw new D(this.user,`Data tree node not found: ${F}`);return J}refreshAndRenderNode(F,J,Fe,Ze){return Wt(this,void 0,void 0,function*(){yield this.refreshNode(F,J,Fe),this.render(F,Fe,Ze)})}refreshNode(F,J,Fe){return Wt(this,void 0,void 0,function*(){let Ze;return this.subTreeRefreshPromises.forEach((St,It)=>{!Ze&&Gt(It,F)&&(Ze=St.then(()=>this.refreshNode(F,J,Fe)))}),Ze||this.doRefreshSubTree(F,J,Fe)})}doRefreshSubTree(F,J,Fe){return Wt(this,void 0,void 0,function*(){let Ze;F.refreshPromise=new Promise(St=>Ze=St),this.subTreeRefreshPromises.set(F,F.refreshPromise),F.refreshPromise.finally(()=>{F.refreshPromise=void 0,this.subTreeRefreshPromises.delete(F)});try{const St=yield this.doRefreshNode(F,J,Fe);F.stale=!1,yield U.d.settled(St.map(It=>this.doRefreshSubTree(It,J,Fe)))}finally{Ze()}})}doRefreshNode(F,J,Fe){return Wt(this,void 0,void 0,function*(){F.hasChildren=!!this.dataSource.hasChildren(F.element);let Ze;if(!F.hasChildren)Ze=Promise.resolve(G.a.empty());else{const St=Object(U.n)(800);St.then(()=>{F.slow=!0,this._onDidChangeNodeSlowState.fire(F)},It=>null),Ze=this.doGetChildren(F).finally(()=>St.cancel())}try{const St=yield Ze;return this.setChildren(F,St,J,Fe)}catch(St){if(F!==this.root&&this.tree.hasElement(F)&&this.tree.collapse(F),Object(to.e)(St))return[];throw St}finally{F.slow&&(F.slow=!1,this._onDidChangeNodeSlowState.fire(F))}})}doGetChildren(F){let J=this.refreshPromises.get(F);return J||(J=Object(U.h)(()=>Wt(this,void 0,void 0,function*(){const Fe=yield this.dataSource.getChildren(F.element);return this.processChildren(Fe)})),this.refreshPromises.set(F,J),J.finally(()=>{this.refreshPromises.delete(F)}))}_onDidChangeCollapseState({node:F,deep:J}){if(F.element===null)return;!F.collapsed&&F.element.stale&&(J?this.collapse(F.element.element):this.refreshAndRenderNode(F.element,!1).catch(to.f))}setChildren(F,J,Fe,Ze){const St=[...J];if(F.children.length===0&&St.length===0)return[];const It=new Map,Vt=new Map;for(const mo of F.children)if(It.set(mo.element,mo),this.identityProvider){const yo=this.tree.isCollapsed(mo);Vt.set(mo.id,{node:mo,collapsed:yo})}const io=[],ho=St.map(mo=>{const yo=!!this.dataSource.hasChildren(mo);if(!this.identityProvider){const To=Ge({element:mo,parent:F,hasChildren:yo});return yo&&this.collapseByDefault&&!this.collapseByDefault(mo)&&(To.collapsedByDefault=!1,io.push(To)),To}const Io=this.identityProvider.getId(mo).toString(),No=Vt.get(Io);if(No){const To=No.node;return It.delete(To.element),this.nodes.delete(To.element),this.nodes.set(mo,To),To.element=mo,To.hasChildren=yo,Fe?No.collapsed?(To.children.forEach(Ho=>Bt(Ho,Yo=>this.nodes.delete(Yo.element))),To.children.splice(0,To.children.length),To.stale=!0):io.push(To):yo&&this.collapseByDefault&&!this.collapseByDefault(mo)&&(To.collapsedByDefault=!1,io.push(To)),To}const Ro=Ge({element:mo,parent:F,id:Io,hasChildren:yo});return Ze&&Ze.viewState.focus&&Ze.viewState.focus.indexOf(Io)>-1&&Ze.focus.push(Ro),Ze&&Ze.viewState.selection&&Ze.viewState.selection.indexOf(Io)>-1&&Ze.selection.push(Ro),Ze&&Ze.viewState.expanded&&Ze.viewState.expanded.indexOf(Io)>-1?io.push(Ro):yo&&this.collapseByDefault&&!this.collapseByDefault(mo)&&(Ro.collapsedByDefault=!1,io.push(Ro)),Ro});for(const mo of It.values())Bt(mo,yo=>this.nodes.delete(yo.element));for(const mo of ho)this.nodes.set(mo.element,mo);return F.children.splice(0,F.children.length,...ho),F!==this.root&&this.autoExpandSingleChildren&&ho.length===1&&io.length===0&&(ho[0].collapsedByDefault=!1,io.push(ho[0])),io}render(F,J,Fe){const Ze=F.children.map(It=>this.asTreeElement(It,J)),St=Fe&&Object.assign(Object.assign({},Fe),{diffIdentityProvider:Fe.diffIdentityProvider&&{getId(It){return Fe.diffIdentityProvider.getId(It.element)}}});this.tree.setChildren(F===this.root?null:F,Ze,St),F!==this.root&&this.tree.setCollapsible(F,F.hasChildren),this._onDidRender.fire()}asTreeElement(F,J){if(F.stale)return{element:F,collapsible:F.hasChildren,collapsed:!0};let Fe;return J&&J.viewState.expanded&&F.id&&J.viewState.expanded.indexOf(F.id)>-1?Fe=!1:Fe=F.collapsedByDefault,F.collapsedByDefault=void 0,{element:F,children:F.hasChildren?G.a.map(F.children,Ze=>this.asTreeElement(Ze,J)):[],collapsible:F.hasChildren,collapsed:Fe}}processChildren(F){return this.sorter&&(F=[...F].sort(this.sorter.compare.bind(this.sorter))),F}dispose(){this.disposables.dispose()}}class uo{constructor(F){this.node=F}get element(){return{elements:this.node.element.elements.map(F=>F.element),incompressible:this.node.element.incompressible}}get children(){return this.node.children.map(F=>new uo(F))}get depth(){return this.node.depth}get visibleChildrenCount(){return this.node.visibleChildrenCount}get visibleChildIndex(){return this.node.visibleChildIndex}get collapsible(){return this.node.collapsible}get collapsed(){return this.node.collapsed}get visible(){return this.node.visible}get filterData(){return this.node.filterData}}class Zt{constructor(F,J,Fe,Ze){this.renderer=F,this.nodeMapper=J,this.compressibleNodeMapperProvider=Fe,this.onDidChangeTwistieState=Ze,this.renderedNodes=new Map,this.disposables=[],this.templateId=F.templateId}renderTemplate(F){const J=this.renderer.renderTemplate(F);return{templateData:J}}renderElement(F,J,Fe,Ze){this.renderer.renderElement(this.nodeMapper.map(F),J,Fe.templateData,Ze)}renderCompressedElements(F,J,Fe,Ze){this.renderer.renderCompressedElements(this.compressibleNodeMapperProvider().map(F),J,Fe.templateData,Ze)}renderTwistie(F,J){return F.slow?(J.classList.add(...te.classNamesArray),!0):(J.classList.remove(...te.classNamesArray),!1)}disposeElement(F,J,Fe,Ze){this.renderer.disposeElement&&this.renderer.disposeElement(this.nodeMapper.map(F),J,Fe.templateData,Ze)}disposeCompressedElements(F,J,Fe,Ze){this.renderer.disposeCompressedElements&&this.renderer.disposeCompressedElements(this.compressibleNodeMapperProvider().map(F),J,Fe.templateData,Ze)}disposeTemplate(F){this.renderer.disposeTemplate(F.templateData)}dispose(){this.renderedNodes.clear(),this.disposables=Object(I.f)(this.disposables)}}function zt(F){const J=F&&Mt(F);return J&&Object.assign(Object.assign({},J),{keyboardNavigationLabelProvider:J.keyboardNavigationLabelProvider&&Object.assign(Object.assign({},J.keyboardNavigationLabelProvider),{getCompressedNodeKeyboardNavigationLabel(Fe){return F.keyboardNavigationLabelProvider.getCompressedNodeKeyboardNavigationLabel(Fe.map(Ze=>Ze.element))}})})}class ut extends $t{constructor(F,J,Fe,Ze,St,It,Vt={}){super(F,J,Fe,St,It,Vt);this.compressionDelegate=Ze,this.compressibleNodeMapper=new j(io=>new uo(io)),this.filter=Vt.filter}createTree(F,J,Fe,Ze,St){const It=new Ne(Fe),Vt=Ze.map(ho=>new Zt(ho,this.nodeMapper,()=>this.compressibleNodeMapper,this._onDidChangeNodeSlowState.event)),io=zt(St)||{};return new _o(F,J,It,Vt,io)}asTreeElement(F,J){return Object.assign({incompressible:this.compressionDelegate.isIncompressible(F.element)},super.asTreeElement(F,J))}updateOptions(F={}){this.tree.updateOptions(F)}render(F,J){if(!this.identityProvider)return super.render(F,J);const Fe=Io=>this.identityProvider.getId(Io).toString(),Ze=Io=>{const No=new Set;for(const Ro of Io){const To=this.tree.getCompressedTreeNode(Ro===this.root?null:Ro);if(!To.element)continue;for(const Ho of To.element.elements)No.add(Fe(Ho.element))}return No},St=Ze(this.tree.getSelection()),It=Ze(this.tree.getFocus());super.render(F,J);const Vt=this.getSelection();let io=!1;const ho=this.getFocus();let mo=!1;const yo=Io=>{const No=Io.element;if(No)for(let Ro=0;Ro{const Fe=this.filter.filter(J,1),Ze=Ct(Fe);if(Ze===2)throw new Error("Recursive tree visibility not supported in async data compressed trees");return Ze===1})),super.processChildren(F)}}function Ct(F){return typeof F=="boolean"?F?1:0:B(F)?z(F.visibility):z(F)}class We extends st{constructor(F,J,Fe,Ze,St,It={}){super(F,J,Fe,Ze,It);this.user=F,this.dataSource=St,this.identityProvider=It.identityProvider}createModel(F,J,Fe){return new nt(F,J,Fe)}}var he=e("R3nR"),Me=e("+7oY"),ue=e("CRAX"),ae=e("T8No"),Re=e("FmXZ"),Qe=e("Cg/j"),et=e("bexQ"),bt=e("ic2d"),Lt=e("ptcw"),Ot=e("t9D7"),Ft=function(F,J,Fe,Ze){var St=arguments.length,It=St<3?J:Ze===null?Ze=Object.getOwnPropertyDescriptor(J,Fe):Ze,Vt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")It=Reflect.decorate(F,J,Fe,Ze);else for(var io=F.length-1;io>=0;io--)(Vt=F[io])&&(It=(St<3?Vt(It):St>3?Vt(J,Fe,It):Vt(J,Fe))||It);return St>3&&It&&Object.defineProperty(J,Fe,It),It},Tt=function(F,J){return function(Fe,Ze){J(Fe,Ze,F)}};const Ut=Object(Qe.c)("listService");let fo=class{constructor(J){this._themeService=J,this.disposables=new I.b,this.lists=[],this._lastFocusedWidget=void 0,this._hasCreatedStyleController=!1}get lastFocusedList(){return this._lastFocusedWidget}register(J,Fe){if(!this._hasCreatedStyleController){this._hasCreatedStyleController=!0;const St=new O.b(Object(h.w)(),"");this.disposables.add(Object(Lt.b)(St,this._themeService))}if(this.lists.some(St=>St.widget===J))throw new Error("Cannot register the same widget multiple times");const Ze={widget:J,extraContextKeys:Fe};return this.lists.push(Ze),J.getHTMLElement()===document.activeElement&&(this._lastFocusedWidget=J),Object(I.e)(J.onDidFocus(()=>this._lastFocusedWidget=J),Object(I.i)(()=>this.lists.splice(this.lists.indexOf(Ze),1)),J.onDidDispose(()=>{this.lists=this.lists.filter(St=>St!==Ze),this._lastFocusedWidget===J&&(this._lastFocusedWidget=void 0)}))}dispose(){this.disposables.dispose()}};fo=Ft([Tt(0,Ot.b)],fo);const vo=new ae.c("listFocus",!0),po=new ae.c("listSupportsMultiselect",!0),Oo=ae.a.and(vo,ae.a.not(Re.a)),Uo=new ae.c("listHasSelectionOrFocus",!1),Zo=new ae.c("listDoubleSelection",!1),ii=new ae.c("listMultiSelection",!1),$o=new ae.c("listSelectionNavigation",!1),Ri="listAutomaticKeyboardNavigation";function xi(F,J){const Fe=F.createScoped(J.getHTMLElement());return vo.bindTo(Fe),Fe}const Ni="workbench.list.multiSelectModifier",ji="workbench.list.openMode",Li="workbench.list.horizontalScrolling",ki="workbench.list.keyboardNavigation",Hi="workbench.list.automaticKeyboardNavigation",ni="workbench.tree.indent",tn="workbench.tree.renderIndentGuides",Yi="workbench.list.smoothScrolling",bi="workbench.list.mouseWheelScrollSensitivity",Pi="workbench.list.fastScrollSensitivity",Ii="workbench.tree.expandMode";function Si(F){return F.getValue(Ni)==="alt"}class Xi extends I.a{constructor(F){super();this.configurationService=F,this.useAltAsMultipleSelectionModifier=Si(F),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(F=>{F.affectsConfiguration(Ni)&&(this.useAltAsMultipleSelectionModifier=Si(this.configurationService))}))}isSelectionSingleChangeEvent(F){return this.useAltAsMultipleSelectionModifier?F.browserEvent.altKey:Object(O.h)(F)}isSelectionRangeChangeEvent(F){return Object(O.g)(F)}}function Ci(F,J,Fe){var Ze;const St=new I.b,It=Object.assign(Object.assign({},F),{keyboardNavigationDelegate:{mightProducePrintableCharacter(Vt){return Fe.mightProducePrintableCharacter(Vt)}},smoothScrolling:Boolean(J.getValue(Yi)),mouseWheelScrollSensitivity:J.getValue(bi),fastScrollSensitivity:J.getValue(Pi),multipleSelectionController:(Ze=F.multipleSelectionController)!==null&&Ze!==void 0?Ze:St.add(new Xi(J))});return[It,St]}let rn=class extends O.c{constructor(J,Fe,Ze,St,It,Vt,io,ho,mo,yo){const Io=typeof It.horizontalScrolling!="undefined"?It.horizontalScrolling:Boolean(mo.getValue(Li)),[No,Ro]=Ci(It,mo,yo);super(J,Fe,Ze,St,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},Object(Lt.d)(ho.getColorTheme(),Lt.e)),No),{horizontalScrolling:Io}));this.disposables.add(Ro),this.contextKeyService=xi(Vt,this),this.themeService=ho,this.listSupportsMultiSelect=po.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(It.multipleSelectionSupport!==!1);const To=$o.bindTo(this.contextKeyService);To.set(Boolean(It.selectionNavigation)),this.listHasSelectionOrFocus=Uo.bindTo(this.contextKeyService),this.listDoubleSelection=Zo.bindTo(this.contextKeyService),this.listMultiSelection=ii.bindTo(this.contextKeyService),this.horizontalScrolling=It.horizontalScrolling,this._useAltAsMultipleSelectionModifier=Si(mo),this.disposables.add(this.contextKeyService),this.disposables.add(io.register(this)),It.overrideStyles&&this.updateStyles(It.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const Ho=this.getSelection(),Yo=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(Ho.length>0||Yo.length>0),this.listMultiSelection.set(Ho.length>1),this.listDoubleSelection.set(Ho.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const Ho=this.getSelection(),Yo=this.getFocus();this.listHasSelectionOrFocus.set(Ho.length>0||Yo.length>0)})),this.disposables.add(mo.onDidChangeConfiguration(Ho=>{Ho.affectsConfiguration(Ni)&&(this._useAltAsMultipleSelectionModifier=Si(mo));let Yo={};if(Ho.affectsConfiguration(Li)&&this.horizontalScrolling===void 0){const ri=Boolean(mo.getValue(Li));Yo=Object.assign(Object.assign({},Yo),{horizontalScrolling:ri})}if(Ho.affectsConfiguration(Yi)){const ri=Boolean(mo.getValue(Yi));Yo=Object.assign(Object.assign({},Yo),{smoothScrolling:ri})}if(Ho.affectsConfiguration(bi)){const ri=mo.getValue(bi);Yo=Object.assign(Object.assign({},Yo),{mouseWheelScrollSensitivity:ri})}if(Ho.affectsConfiguration(Pi)){const ri=mo.getValue(Pi);Yo=Object.assign(Object.assign({},Yo),{fastScrollSensitivity:ri})}Object.keys(Yo).length>0&&this.updateOptions(Yo)})),this.navigator=new vt(this,Object.assign({configurationService:mo},It)),this.disposables.add(this.navigator)}updateOptions(J){super.updateOptions(J),J.overrideStyles&&this.updateStyles(J.overrideStyles),J.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!J.multipleSelectionSupport)}updateStyles(J){var Fe;(Fe=this._styler)===null||Fe===void 0||Fe.dispose(),this._styler=Object(Lt.b)(this,this.themeService,J)}dispose(){var J;(J=this._styler)===null||J===void 0||J.dispose(),super.dispose()}};rn=Ft([Tt(5,ae.b),Tt(6,Ut),Tt(7,Ot.b),Tt(8,Me.a),Tt(9,et.a)],rn);let on=class extends d{constructor(J,Fe,Ze,St,It,Vt,io,ho,mo,yo){const Io=typeof It.horizontalScrolling!="undefined"?It.horizontalScrolling:Boolean(mo.getValue(Li)),[No,Ro]=Ci(It,mo,yo);super(J,Fe,Ze,St,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},Object(Lt.d)(ho.getColorTheme(),Lt.e)),No),{horizontalScrolling:Io}));this.disposables=new I.b,this.disposables.add(Ro),this.contextKeyService=xi(Vt,this),this.themeService=ho,this.horizontalScrolling=It.horizontalScrolling,this.listSupportsMultiSelect=po.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(It.multipleSelectionSupport!==!1);const To=$o.bindTo(this.contextKeyService);To.set(Boolean(It.selectionNavigation)),this._useAltAsMultipleSelectionModifier=Si(mo),this.disposables.add(this.contextKeyService),this.disposables.add(io.register(this)),It.overrideStyles&&this.updateStyles(It.overrideStyles),It.overrideStyles&&this.disposables.add(Object(Lt.b)(this,ho,It.overrideStyles)),this.disposables.add(mo.onDidChangeConfiguration(Ho=>{Ho.affectsConfiguration(Ni)&&(this._useAltAsMultipleSelectionModifier=Si(mo));let Yo={};if(Ho.affectsConfiguration(Li)&&this.horizontalScrolling===void 0){const ri=Boolean(mo.getValue(Li));Yo=Object.assign(Object.assign({},Yo),{horizontalScrolling:ri})}if(Ho.affectsConfiguration(Yi)){const ri=Boolean(mo.getValue(Yi));Yo=Object.assign(Object.assign({},Yo),{smoothScrolling:ri})}if(Ho.affectsConfiguration(bi)){const ri=mo.getValue(bi);Yo=Object.assign(Object.assign({},Yo),{mouseWheelScrollSensitivity:ri})}if(Ho.affectsConfiguration(Pi)){const ri=mo.getValue(Pi);Yo=Object.assign(Object.assign({},Yo),{fastScrollSensitivity:ri})}Object.keys(Yo).length>0&&this.updateOptions(Yo)})),this.navigator=new vt(this,Object.assign({configurationService:mo},It)),this.disposables.add(this.navigator)}updateOptions(J){super.updateOptions(J),J.overrideStyles&&this.updateStyles(J.overrideStyles),J.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!J.multipleSelectionSupport)}updateStyles(J){var Fe;(Fe=this._styler)===null||Fe===void 0||Fe.dispose(),this._styler=Object(Lt.b)(this,this.themeService,J)}dispose(){var J;(J=this._styler)===null||J===void 0||J.dispose(),this.disposables.dispose(),super.dispose()}};on=Ft([Tt(5,ae.b),Tt(6,Ut),Tt(7,Ot.b),Tt(8,Me.a),Tt(9,et.a)],on);let Fi=class extends c{constructor(J,Fe,Ze,St,It,Vt,io,ho,mo,yo,Io){const No=typeof Vt.horizontalScrolling!="undefined"?Vt.horizontalScrolling:Boolean(yo.getValue(Li)),[Ro,To]=Ci(Vt,yo,Io);super(J,Fe,Ze,St,It,Object.assign(Object.assign(Object.assign({keyboardSupport:!1},Object(Lt.d)(mo.getColorTheme(),Lt.e)),Ro),{horizontalScrolling:No}));this.disposables=new I.b,this.disposables.add(To),this.contextKeyService=xi(io,this),this.themeService=mo,this.listSupportsMultiSelect=po.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(Vt.multipleSelectionSupport!==!1);const Ho=$o.bindTo(this.contextKeyService);Ho.set(Boolean(Vt.selectionNavigation)),this.listHasSelectionOrFocus=Uo.bindTo(this.contextKeyService),this.listDoubleSelection=Zo.bindTo(this.contextKeyService),this.listMultiSelection=ii.bindTo(this.contextKeyService),this.horizontalScrolling=Vt.horizontalScrolling,this._useAltAsMultipleSelectionModifier=Si(yo),this.disposables.add(this.contextKeyService),this.disposables.add(ho.register(this)),Vt.overrideStyles&&this.updateStyles(Vt.overrideStyles),this.disposables.add(this.onDidChangeSelection(()=>{const Yo=this.getSelection(),ri=this.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.listHasSelectionOrFocus.set(Yo.length>0||ri.length>0),this.listMultiSelection.set(Yo.length>1),this.listDoubleSelection.set(Yo.length===2)})})),this.disposables.add(this.onDidChangeFocus(()=>{const Yo=this.getSelection(),ri=this.getFocus();this.listHasSelectionOrFocus.set(Yo.length>0||ri.length>0)})),this.disposables.add(yo.onDidChangeConfiguration(Yo=>{Yo.affectsConfiguration(Ni)&&(this._useAltAsMultipleSelectionModifier=Si(yo));let ri={};if(Yo.affectsConfiguration(Li)&&this.horizontalScrolling===void 0){const Vo=Boolean(yo.getValue(Li));ri=Object.assign(Object.assign({},ri),{horizontalScrolling:Vo})}if(Yo.affectsConfiguration(Yi)){const Vo=Boolean(yo.getValue(Yi));ri=Object.assign(Object.assign({},ri),{smoothScrolling:Vo})}if(Yo.affectsConfiguration(bi)){const Vo=yo.getValue(bi);ri=Object.assign(Object.assign({},ri),{mouseWheelScrollSensitivity:Vo})}if(Yo.affectsConfiguration(Pi)){const Vo=yo.getValue(Pi);ri=Object.assign(Object.assign({},ri),{fastScrollSensitivity:Vo})}Object.keys(ri).length>0&&this.updateOptions(ri)})),this.navigator=new Xe(this,Object.assign({configurationService:yo},Vt)),this.disposables.add(this.navigator)}updateOptions(J){super.updateOptions(J),J.overrideStyles&&this.updateStyles(J.overrideStyles),J.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!J.multipleSelectionSupport)}updateStyles(J){var Fe;(Fe=this._styler)===null||Fe===void 0||Fe.dispose(),this._styler=Object(Lt.b)(this,this.themeService,J)}dispose(){var J;(J=this._styler)===null||J===void 0||J.dispose(),this.disposables.dispose(),super.dispose()}};Fi=Ft([Tt(6,ae.b),Tt(7,Ut),Tt(8,Ot.b),Tt(9,Me.a),Tt(10,et.a)],Fi);class Bi extends I.a{constructor(F,J){var Fe;super();this.widget=F,this._onDidOpen=this._register(new A.b),this.onDidOpen=this._onDidOpen.event,this._register(A.c.filter(this.widget.onDidChangeSelection,Ze=>Ze.browserEvent instanceof KeyboardEvent)(Ze=>this.onSelectionFromKeyboard(Ze))),this._register(this.widget.onPointer(Ze=>this.onPointer(Ze.element,Ze.browserEvent))),this._register(this.widget.onMouseDblClick(Ze=>this.onMouseDblClick(Ze.element,Ze.browserEvent))),typeof(J==null?void 0:J.openOnSingleClick)!="boolean"&&(J==null?void 0:J.configurationService)?(this.openOnSingleClick=(J==null?void 0:J.configurationService.getValue(ji))!=="doubleClick",this._register(J==null?void 0:J.configurationService.onDidChangeConfiguration(()=>{this.openOnSingleClick=(J==null?void 0:J.configurationService.getValue(ji))!=="doubleClick"}))):this.openOnSingleClick=(Fe=J==null?void 0:J.openOnSingleClick)!==null&&Fe!==void 0?Fe:!0}onSelectionFromKeyboard(F){if(F.elements.length!==1)return;const J=F.browserEvent,Fe=typeof J.preserveFocus=="boolean"?J.preserveFocus:!0,Ze=typeof J.pinned=="boolean"?J.pinned:!Fe,St=!1;this._open(this.getSelectedElement(),Fe,Ze,St,F.browserEvent)}onPointer(F,J){if(!this.openOnSingleClick)return;const Fe=J.detail===2;if(Fe)return;const Ze=J.button===1,St=!0,It=Ze,Vt=J.ctrlKey||J.metaKey||J.altKey;this._open(F,St,It,Vt,J)}onMouseDblClick(F,J){if(!J)return;const Fe=J.target,Ze=Fe.classList.contains("monaco-tl-twistie")||Fe.classList.contains("monaco-icon-label")&&Fe.classList.contains("folder-icon")&&J.offsetX<16;if(Ze)return;const St=!1,It=!0,Vt=J.ctrlKey||J.metaKey||J.altKey;this._open(F,St,It,Vt,J)}_open(F,J,Fe,Ze,St){if(!F)return;this._onDidOpen.fire({editorOptions:{preserveFocus:J,pinned:Fe,revealIfVisible:!0},sideBySide:Ze,element:F,browserEvent:St})}}class vt extends Bi{constructor(F,J){super(F,J);this.widget=F}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class Xe extends Bi{constructor(F,J){super(F,J)}getSelectedElement(){return this.widget.getSelectedElements()[0]}}class X extends Bi{constructor(F,J){super(F,J)}getSelectedElement(){var F;return(F=this.widget.getSelection()[0])!==null&&F!==void 0?F:void 0}}function Ee(F,J){let Fe=!1;return Ze=>{if(Fe)return Fe=!1,!1;const St=J.softDispatch(Ze,F);return St&&St.enterChord?(Fe=!0,!1):(Fe=!1,!0)}}let ke=class extends So{constructor(J,Fe,Ze,St,It,Vt,io,ho,mo,yo,Io){const{options:No,getAutomaticKeyboardNavigation:Ro,disposable:To}=Xt(Fe,It,Vt,mo,yo,Io);super(J,Fe,Ze,St,No);this.disposables.add(To),this.internals=new Yt(this,It,Ro,It.overrideStyles,Vt,io,ho,mo,Io),this.disposables.add(this.internals)}updateOptions(J){super.updateOptions(J),this.internals.updateOptions(J)}};ke=Ft([Tt(5,ae.b),Tt(6,Ut),Tt(7,Ot.b),Tt(8,Me.a),Tt(9,et.a),Tt(10,he.b)],ke);let Ve=class extends _o{constructor(J,Fe,Ze,St,It,Vt,io,ho,mo,yo,Io){const{options:No,getAutomaticKeyboardNavigation:Ro,disposable:To}=Xt(Fe,It,Vt,mo,yo,Io);super(J,Fe,Ze,St,No);this.disposables.add(To),this.internals=new Yt(this,It,Ro,It.overrideStyles,Vt,io,ho,mo,Io),this.disposables.add(this.internals)}updateOptions(J={}){super.updateOptions(J),J.overrideStyles&&this.internals.updateStyleOverrides(J.overrideStyles),this.internals.updateOptions(J)}};Ve=Ft([Tt(5,ae.b),Tt(6,Ut),Tt(7,Ot.b),Tt(8,Me.a),Tt(9,et.a),Tt(10,he.b)],Ve);let ct=class extends We{constructor(J,Fe,Ze,St,It,Vt,io,ho,mo,yo,Io,No){const{options:Ro,getAutomaticKeyboardNavigation:To,disposable:Ho}=Xt(Fe,Vt,io,yo,Io,No);super(J,Fe,Ze,St,It,Ro);this.disposables.add(Ho),this.internals=new Yt(this,Vt,To,Vt.overrideStyles,io,ho,mo,yo,No),this.disposables.add(this.internals)}updateOptions(J={}){super.updateOptions(J),J.overrideStyles&&this.internals.updateStyleOverrides(J.overrideStyles),this.internals.updateOptions(J)}};ct=Ft([Tt(6,ae.b),Tt(7,Ut),Tt(8,Ot.b),Tt(9,Me.a),Tt(10,et.a),Tt(11,he.b)],ct);let Et=class extends $t{constructor(J,Fe,Ze,St,It,Vt,io,ho,mo,yo,Io,No){const{options:Ro,getAutomaticKeyboardNavigation:To,disposable:Ho}=Xt(Fe,Vt,io,yo,Io,No);super(J,Fe,Ze,St,It,Ro);this.disposables.add(Ho),this.internals=new Yt(this,Vt,To,Vt.overrideStyles,io,ho,mo,yo,No),this.disposables.add(this.internals)}get onDidOpen(){return this.internals.onDidOpen}updateOptions(J={}){super.updateOptions(J),J.overrideStyles&&this.internals.updateStyleOverrides(J.overrideStyles),this.internals.updateOptions(J)}};Et=Ft([Tt(6,ae.b),Tt(7,Ut),Tt(8,Ot.b),Tt(9,Me.a),Tt(10,et.a),Tt(11,he.b)],Et);let qt=class extends ut{constructor(J,Fe,Ze,St,It,Vt,io,ho,mo,yo,Io,No,Ro){const{options:To,getAutomaticKeyboardNavigation:Ho,disposable:Yo}=Xt(Fe,io,ho,Io,No,Ro);super(J,Fe,Ze,St,It,Vt,To);this.disposables.add(Yo),this.internals=new Yt(this,io,Ho,io.overrideStyles,ho,mo,yo,Io,Ro),this.disposables.add(this.internals)}updateOptions(J){super.updateOptions(J),this.internals.updateOptions(J)}};qt=Ft([Tt(7,ae.b),Tt(8,Ut),Tt(9,Ot.b),Tt(10,Me.a),Tt(11,et.a),Tt(12,he.b)],qt);function Xt(F,J,Fe,Ze,St,It){var Vt;const io=()=>{let To=Boolean(Fe.getContextKeyValue(Ri));return To&&(To=Boolean(Ze.getValue(Hi))),To},ho=It.isScreenReaderOptimized(),mo=J.simpleKeyboardNavigation||ho?"simple":Ze.getValue(ki),yo=J.horizontalScrolling!==void 0?J.horizontalScrolling:Boolean(Ze.getValue(Li)),[Io,No]=Ci(J,Ze,St),Ro=J.additionalScrollHeight;return{getAutomaticKeyboardNavigation:io,disposable:No,options:Object.assign(Object.assign({keyboardSupport:!1},Io),{indent:typeof Ze.getValue(ni)=="number"?Ze.getValue(ni):void 0,renderIndentGuides:Ze.getValue(tn),smoothScrolling:Boolean(Ze.getValue(Yi)),automaticKeyboardNavigation:io(),simpleKeyboardNavigation:mo==="simple",filterOnType:mo==="filter",horizontalScrolling:yo,keyboardNavigationEventFilter:Ee(F,St),additionalScrollHeight:Ro,hideTwistiesOfChildlessElements:J.hideTwistiesOfChildlessElements,expandOnlyOnTwistieClick:(Vt=J.expandOnlyOnTwistieClick)!==null&&Vt!==void 0?Vt:Ze.getValue(Ii)==="doubleClick"})}}let Yt=class{constructor(J,Fe,Ze,St,It,Vt,io,ho,mo){this.tree=J,this.themeService=io,this.disposables=[],this.contextKeyService=xi(It,J),this.listSupportsMultiSelect=po.bindTo(this.contextKeyService),this.listSupportsMultiSelect.set(Fe.multipleSelectionSupport!==!1);const yo=$o.bindTo(this.contextKeyService);yo.set(Boolean(Fe.selectionNavigation)),this.hasSelectionOrFocus=Uo.bindTo(this.contextKeyService),this.hasDoubleSelection=Zo.bindTo(this.contextKeyService),this.hasMultiSelection=ii.bindTo(this.contextKeyService),this._useAltAsMultipleSelectionModifier=Si(ho);const Io=new Set;Io.add(Ri);const No=()=>{const Ro=mo.isScreenReaderOptimized(),To=Ro?"simple":ho.getValue(ki);J.updateOptions({simpleKeyboardNavigation:To==="simple",filterOnType:To==="filter"})};this.updateStyleOverrides(St),this.disposables.push(this.contextKeyService,Vt.register(J),J.onDidChangeSelection(()=>{const Ro=J.getSelection(),To=J.getFocus();this.contextKeyService.bufferChangeEvents(()=>{this.hasSelectionOrFocus.set(Ro.length>0||To.length>0),this.hasMultiSelection.set(Ro.length>1),this.hasDoubleSelection.set(Ro.length===2)})}),J.onDidChangeFocus(()=>{const Ro=J.getSelection(),To=J.getFocus();this.hasSelectionOrFocus.set(Ro.length>0||To.length>0)}),ho.onDidChangeConfiguration(Ro=>{let To={};if(Ro.affectsConfiguration(Ni)&&(this._useAltAsMultipleSelectionModifier=Si(ho)),Ro.affectsConfiguration(ni)){const Ho=ho.getValue(ni);To=Object.assign(Object.assign({},To),{indent:Ho})}if(Ro.affectsConfiguration(tn)){const Ho=ho.getValue(tn);To=Object.assign(Object.assign({},To),{renderIndentGuides:Ho})}if(Ro.affectsConfiguration(Yi)){const Ho=Boolean(ho.getValue(Yi));To=Object.assign(Object.assign({},To),{smoothScrolling:Ho})}if(Ro.affectsConfiguration(ki)&&No(),Ro.affectsConfiguration(Hi)&&(To=Object.assign(Object.assign({},To),{automaticKeyboardNavigation:Ze()})),Ro.affectsConfiguration(Li)&&Fe.horizontalScrolling===void 0){const Ho=Boolean(ho.getValue(Li));To=Object.assign(Object.assign({},To),{horizontalScrolling:Ho})}if(Ro.affectsConfiguration(Ii)&&Fe.expandOnlyOnTwistieClick===void 0&&(To=Object.assign(Object.assign({},To),{expandOnlyOnTwistieClick:ho.getValue(Ii)==="doubleClick"})),Ro.affectsConfiguration(bi)){const Ho=ho.getValue(bi);To=Object.assign(Object.assign({},To),{mouseWheelScrollSensitivity:Ho})}if(Ro.affectsConfiguration(Pi)){const Ho=ho.getValue(Pi);To=Object.assign(Object.assign({},To),{fastScrollSensitivity:Ho})}Object.keys(To).length>0&&J.updateOptions(To)}),this.contextKeyService.onDidChangeContext(Ro=>{Ro.affectsSome(Io)&&J.updateOptions({automaticKeyboardNavigation:Ze()})}),mo.onDidChangeScreenReaderOptimized(()=>No())),this.navigator=new X(J,Object.assign({configurationService:ho},Fe)),this.disposables.push(this.navigator)}get onDidOpen(){return this.navigator.onDidOpen}updateOptions(J){J.multipleSelectionSupport!==void 0&&this.listSupportsMultiSelect.set(!!J.multipleSelectionSupport)}updateStyleOverrides(J){Object(I.f)(this.styler),this.styler=J?Object(Lt.b)(this.tree,this.themeService,J):I.a.None}dispose(){this.disposables=Object(I.f)(this.disposables),Object(I.f)(this.styler),this.styler=void 0}};Yt=Ft([Tt(4,ae.b),Tt(5,Ut),Tt(6,Ot.b),Tt(7,Me.a),Tt(8,he.b)],Yt);const go=bt.a.as(ue.a.Configuration);go.registerConfiguration({id:"workbench",order:7,title:Object(ce.a)("workbenchConfigurationTitle","Workbench"),type:"object",properties:{[Ni]:{type:"string",enum:["ctrlCmd","alt"],enumDescriptions:[Object(ce.a)("multiSelectModifier.ctrlCmd","Maps to `Control` on Windows and Linux and to `Command` on macOS."),Object(ce.a)("multiSelectModifier.alt","Maps to `Alt` on Windows and Linux and to `Option` on macOS.")],default:"ctrlCmd",description:Object(ce.a)({key:"multiSelectModifier",comment:["- `ctrlCmd` refers to a value the setting can take and should not be localized.","- `Control` and `Command` refer to the modifier keys Ctrl or Cmd on the keyboard and can be localized."]},"The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.")},[ji]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:Object(ce.a)({key:"openModeModifier",comment:["`singleClick` and `doubleClick` refers to a value the setting can take and should not be localized."]},"Controls how to open items in trees and lists using the mouse (if supported). Note that some trees and lists might choose to ignore this setting if it is not applicable.")},[Li]:{type:"boolean",default:!1,description:Object(ce.a)("horizontalScrolling setting","Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.")},[ni]:{type:"number",default:8,minimum:0,maximum:40,description:Object(ce.a)("tree indent setting","Controls tree indentation in pixels.")},[tn]:{type:"string",enum:["none","onHover","always"],default:"onHover",description:Object(ce.a)("render tree indent guides","Controls whether the tree should render indent guides.")},[Yi]:{type:"boolean",default:!1,description:Object(ce.a)("list smoothScrolling setting","Controls whether lists and trees have smooth scrolling.")},[bi]:{type:"number",default:1,description:Object(ce.a)("Mouse Wheel Scroll Sensitivity","A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.")},[Pi]:{type:"number",default:5,description:Object(ce.a)("Fast Scroll Sensitivity","Scrolling speed multiplier when pressing `Alt`.")},[ki]:{type:"string",enum:["simple","highlight","filter"],enumDescriptions:[Object(ce.a)("keyboardNavigationSettingKey.simple","Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes."),Object(ce.a)("keyboardNavigationSettingKey.highlight","Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements."),Object(ce.a)("keyboardNavigationSettingKey.filter","Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.")],default:"highlight",description:Object(ce.a)("keyboardNavigationSettingKey","Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter.")},[Hi]:{type:"boolean",default:!0,markdownDescription:Object(ce.a)("automatic keyboard navigation setting","Controls whether keyboard navigation in lists and trees is automatically triggered simply by typing. If set to `false`, keyboard navigation is only triggered when executing the `list.toggleKeyboardNavigation` command, for which you can assign a keyboard shortcut.")},[Ii]:{type:"string",enum:["singleClick","doubleClick"],default:"singleClick",description:Object(ce.a)("expand mode","Controls how tree folders are expanded when clicking the folder names. Note that some trees and lists might choose to ignore this setting if it is not applicable.")}}})},kYye:function(ft,w,e){"use strict";e.d(w,"B",function(){return I}),e.d(w,"C",function(){return k}),e.d(w,"z",function(){return d}),e.d(w,"y",function(){return E}),e.d(w,"A",function(){return n}),e.d(w,"a",function(){return b}),e.d(w,"D",function(){return m}),e.d(w,"b",function(){return l}),e.d(w,"G",function(){return g}),e.d(w,"x",function(){return y}),e.d(w,"j",function(){return C}),e.d(w,"k",function(){return v}),e.d(w,"F",function(){return D}),e.d(w,"E",function(){return j}),e.d(w,"H",function(){return G}),e.d(w,"I",function(){return B}),e.d(w,"J",function(){return z}),e.d(w,"K",function(){return Y}),e.d(w,"N",function(){return Q}),e.d(w,"L",function(){return ee}),e.d(w,"O",function(){return Se}),e.d(w,"M",function(){return fe}),e.d(w,"c",function(){return q}),e.d(w,"d",function(){return te}),e.d(w,"e",function(){return U}),e.d(w,"f",function(){return H}),e.d(w,"g",function(){return W}),e.d(w,"h",function(){return ne}),e.d(w,"i",function(){return Ce}),e.d(w,"r",function(){return Le}),e.d(w,"s",function(){return ce}),e.d(w,"t",function(){return me}),e.d(w,"u",function(){return Oe}),e.d(w,"v",function(){return oe}),e.d(w,"w",function(){return De}),e.d(w,"l",function(){return Ne}),e.d(w,"m",function(){return ve}),e.d(w,"n",function(){return re}),e.d(w,"o",function(){return we}),e.d(w,"p",function(){return Ie}),e.d(w,"q",function(){return ge});var h=e("3/fG"),P=e("zrhQ"),L=e("MD5Z"),A=e("t9D7");const I=Object(L.Cc)("editor.lineHighlightBackground",{dark:null,light:null,hc:null},h.a("lineHighlight","Background color for the highlight of line at the cursor position.")),k=Object(L.Cc)("editor.lineHighlightBorder",{dark:"#282828",light:"#eeeeee",hc:"#f38518"},h.a("lineHighlightBorderBox","Background color for the border around the line at the cursor position.")),O=Object(L.Cc)("editor.rangeHighlightBackground",{dark:"#ffffff0b",light:"#fdff0033",hc:null},h.a("rangeHighlight","Background color of highlighted ranges, like by quick open and find features. The color must not be opaque so as not to hide underlying decorations."),!0),S=Object(L.Cc)("editor.rangeHighlightBorder",{dark:null,light:null,hc:L.b},h.a("rangeHighlightBorder","Background color of the border around highlighted ranges."),!0),f=Object(L.Cc)("editor.symbolHighlightBackground",{dark:L.x,light:L.x,hc:null},h.a("symbolHighlight","Background color of highlighted symbol, like for go to definition or go next/previous symbol. The color must not be opaque so as not to hide underlying decorations."),!0),u=Object(L.Cc)("editor.symbolHighlightBorder",{dark:null,light:null,hc:L.b},h.a("symbolHighlightBorder","Background color of the border around highlighted symbols."),!0),d=Object(L.Cc)("editorCursor.foreground",{dark:"#AEAFAD",light:P.a.black,hc:P.a.white},h.a("caret","Color of the editor cursor.")),E=Object(L.Cc)("editorCursor.background",null,h.a("editorCursorBackground","The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.")),p=Object(L.Cc)("editorWhitespace.foreground",{dark:"#e3e4e229",light:"#33333333",hc:"#e3e4e229"},h.a("editorWhitespaces","Color of whitespace characters in the editor.")),n=Object(L.Cc)("editorIndentGuide.background",{dark:p,light:p,hc:p},h.a("editorIndentGuides","Color of the editor indentation guides.")),b=Object(L.Cc)("editorIndentGuide.activeBackground",{dark:p,light:p,hc:p},h.a("editorActiveIndentGuide","Color of the active editor indentation guides.")),m=Object(L.Cc)("editorLineNumber.foreground",{dark:"#858585",light:"#237893",hc:P.a.white},h.a("editorLineNumbers","Color of editor line numbers.")),c=Object(L.Cc)("editorActiveLineNumber.foreground",{dark:"#c6c6c6",light:"#0B216F",hc:L.b},h.a("editorActiveLineNumber","Color of editor active line number"),!1,h.a("deprecatedEditorActiveLineNumber","Id is deprecated. Use 'editorLineNumber.activeForeground' instead.")),l=Object(L.Cc)("editorLineNumber.activeForeground",{dark:c,light:c,hc:c},h.a("editorActiveLineNumber","Color of editor active line number")),g=Object(L.Cc)("editorRuler.foreground",{dark:"#5A5A5A",light:P.a.lightgrey,hc:P.a.white},h.a("editorRuler","Color of the editor rulers.")),y=Object(L.Cc)("editorCodeLens.foreground",{dark:"#999999",light:"#919191",hc:"#999999"},h.a("editorCodeLensForeground","Foreground color of editor CodeLens")),C=Object(L.Cc)("editorBracketMatch.background",{dark:"#0064001a",light:"#0064001a",hc:"#0064001a"},h.a("editorBracketMatchBackground","Background color behind matching brackets")),v=Object(L.Cc)("editorBracketMatch.border",{dark:"#888",light:"#B9B9B9",hc:L.h},h.a("editorBracketMatchBorder","Color for matching brackets boxes")),D=Object(L.Cc)("editorOverviewRuler.border",{dark:"#7f7f7f4d",light:"#7f7f7f4d",hc:"#7f7f7f4d"},h.a("editorOverviewRulerBorder","Color of the overview ruler border.")),j=Object(L.Cc)("editorOverviewRuler.background",null,h.a("editorOverviewRulerBackground","Background color of the editor overview ruler. Only used when the minimap is enabled and placed on the right side of the editor.")),V=Object(L.Cc)("editorGutter.background",{dark:L.r,light:L.r,hc:L.r},h.a("editorGutter","Background color of the editor gutter. The gutter contains the glyph margins and the line numbers.")),G=Object(L.Cc)("editorUnnecessaryCode.border",{dark:null,light:null,hc:P.a.fromHex("#fff").transparent(.8)},h.a("unnecessaryCodeBorder","Border color of unnecessary (unused) source code in the editor.")),B=Object(L.Cc)("editorUnnecessaryCode.opacity",{dark:P.a.fromHex("#000a"),light:P.a.fromHex("#0007"),hc:null},h.a("unnecessaryCodeOpacity",`Opacity of unnecessary (unused) source code in the editor. For example, "#000000c0" will render the code with 75% opacity. For high contrast themes, use the 'editorUnnecessaryCode.border' theme color to underline unnecessary code instead of fading it out.`)),z=Object(L.Cc)("editorGhostText.border",{dark:null,light:null,hc:P.a.fromHex("#fff").transparent(.8)},h.a("editorGhostTextBorder","Border color of ghost text in the editor.")),Y=Object(L.Cc)("editorGhostText.foreground",{dark:P.a.fromHex("#ffffff56"),light:P.a.fromHex("#0007"),hc:null},h.a("editorGhostTextForeground","Foreground color of the ghost text in the editor.")),K=new P.a(new P.c(0,122,204,.6)),Q=Object(L.Cc)("editorOverviewRuler.rangeHighlightForeground",{dark:K,light:K,hc:K},h.a("overviewRulerRangeHighlight","Overview ruler marker color for range highlights. The color must not be opaque so as not to hide underlying decorations."),!0),ee=Object(L.Cc)("editorOverviewRuler.errorForeground",{dark:new P.a(new P.c(255,18,18,.7)),light:new P.a(new P.c(255,18,18,.7)),hc:new P.a(new P.c(255,50,50,1))},h.a("overviewRuleError","Overview ruler marker color for errors.")),Se=Object(L.Cc)("editorOverviewRuler.warningForeground",{dark:L.bb,light:L.bb,hc:L.ab},h.a("overviewRuleWarning","Overview ruler marker color for warnings.")),fe=Object(L.Cc)("editorOverviewRuler.infoForeground",{dark:L.M,light:L.M,hc:L.L},h.a("overviewRuleInfo","Overview ruler marker color for infos.")),q=Object(L.Cc)("editorBracketHighlight.foreground1",{dark:"#FFD700",light:"#0431FAFF",hc:"#FFD700"},h.a("editorBracketHighlightForeground1","Foreground color of brackets (1). Requires enabling bracket pair colorization.")),te=Object(L.Cc)("editorBracketHighlight.foreground2",{dark:"#DA70D6",light:"#319331FF",hc:"#DA70D6"},h.a("editorBracketHighlightForeground2","Foreground color of brackets (2). Requires enabling bracket pair colorization.")),U=Object(L.Cc)("editorBracketHighlight.foreground3",{dark:"#179FFF",light:"#7B3814FF",hc:"#87CEFA"},h.a("editorBracketHighlightForeground3","Foreground color of brackets (3). Requires enabling bracket pair colorization.")),H=Object(L.Cc)("editorBracketHighlight.foreground4",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketHighlightForeground4","Foreground color of brackets (4). Requires enabling bracket pair colorization.")),W=Object(L.Cc)("editorBracketHighlight.foreground5",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketHighlightForeground5","Foreground color of brackets (5). Requires enabling bracket pair colorization.")),ne=Object(L.Cc)("editorBracketHighlight.foreground6",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketHighlightForeground6","Foreground color of brackets (6). Requires enabling bracket pair colorization.")),Ce=Object(L.Cc)("editorBracketHighlight.unexpectedBracket.foreground",{dark:new P.a(new P.c(255,18,18,.8)),light:new P.a(new P.c(255,18,18,.8)),hc:new P.a(new P.c(255,50,50,1))},h.a("editorBracketHighlightUnexpectedBracketForeground","Foreground color of unexpected brackets.")),Le=Object(L.Cc)("editorBracketPairGuide.background1",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.background1","Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.")),ce=Object(L.Cc)("editorBracketPairGuide.background2",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.background2","Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.")),me=Object(L.Cc)("editorBracketPairGuide.background3",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.background3","Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.")),Oe=Object(L.Cc)("editorBracketPairGuide.background4",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.background4","Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.")),oe=Object(L.Cc)("editorBracketPairGuide.background5",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.background5","Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.")),De=Object(L.Cc)("editorBracketPairGuide.background6",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.background6","Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.")),Ne=Object(L.Cc)("editorBracketPairGuide.activeBackground1",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.activeBackground1","Background color of active bracket pair guides (1). Requires enabling bracket pair guides.")),ve=Object(L.Cc)("editorBracketPairGuide.activeBackground2",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.activeBackground2","Background color of active bracket pair guides (2). Requires enabling bracket pair guides.")),re=Object(L.Cc)("editorBracketPairGuide.activeBackground3",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.activeBackground3","Background color of active bracket pair guides (3). Requires enabling bracket pair guides.")),we=Object(L.Cc)("editorBracketPairGuide.activeBackground4",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.activeBackground4","Background color of active bracket pair guides (4). Requires enabling bracket pair guides.")),Ie=Object(L.Cc)("editorBracketPairGuide.activeBackground5",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.activeBackground5","Background color of active bracket pair guides (5). Requires enabling bracket pair guides.")),ge=Object(L.Cc)("editorBracketPairGuide.activeBackground6",{dark:"#00000000",light:"#00000000",hc:"#00000000"},h.a("editorBracketPairGuide.activeBackground6","Background color of active bracket pair guides (6). Requires enabling bracket pair guides."));Object(A.f)((ye,ze)=>{const xe=ye.getColor(L.r);xe&&ze.addRule(`.monaco-editor, .monaco-editor-background, .monaco-editor .inputarea.ime-input { background-color: ${xe}; }`);const Te=ye.getColor(L.B);Te&&ze.addRule(`.monaco-editor, .monaco-editor .inputarea.ime-input { color: ${Te}; }`);const He=ye.getColor(V);He&&ze.addRule(`.monaco-editor .margin { background-color: ${He}; }`);const st=ye.getColor(O);st&&ze.addRule(`.monaco-editor .rangeHighlight { background-color: ${st}; }`);const nt=ye.getColor(S);nt&&ze.addRule(`.monaco-editor .rangeHighlight { border: 1px ${ye.type==="hc"?"dotted":"solid"} ${nt}; }`);const rt=ye.getColor(f);rt&&ze.addRule(`.monaco-editor .symbolHighlight { background-color: ${rt}; }`);const wt=ye.getColor(u);wt&&ze.addRule(`.monaco-editor .symbolHighlight { border: 1px ${ye.type==="hc"?"dotted":"solid"} ${wt}; }`);const Pt=ye.getColor(p);Pt&&(ze.addRule(`.monaco-editor .mtkw { color: ${Pt} !important; }`),ze.addRule(`.monaco-editor .mtkz { color: ${Pt} !important; }`))})},kdPm:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"cameligo",extensions:[".mligo"],aliases:["Cameligo"],loader:function(){return e.e(326).then(e.bind(null,"3VBA"))}})},kqbb:function(ft,w,e){"use strict";e.d(w,"a",function(){return m});var h=e("X+cX"),P=e("zrhQ"),L=e("/cxE"),A=e("7afs"),I=e("pmY6"),k=e("sswD"),O=e("Vxe3"),S=e("aokT"),f=e("tX9W"),u=e("twdY"),d=e("ZIMw"),E=e("+7oY"),p=function(c,l,g,y){var C=arguments.length,v=C<3?l:y===null?y=Object.getOwnPropertyDescriptor(l,g):y,D;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")v=Reflect.decorate(c,l,g,y);else for(var j=c.length-1;j>=0;j--)(D=c[j])&&(v=(C<3?D(v):C>3?D(l,g,v):D(l,g))||v);return C>3&&v&&Object.defineProperty(l,g,v),v},n=function(c,l){return function(g,y){l(g,y,c)}};const b=500;let m=class c extends I.a{constructor(l,g,y){super();this._editor=l,this._codeEditorService=g,this._configurationService=y,this._localToDispose=this._register(new I.b),this._decorationsIds=[],this._colorDatas=new Map,this._colorDecoratorIds=[],this._decorationsTypes=new Set,this._register(l.onDidChangeModel(()=>{this._isEnabled=this.isEnabled(),this.onModelChanged()})),this._register(l.onDidChangeModelLanguage(()=>this.onModelChanged())),this._register(u.c.onDidChange(()=>this.onModelChanged())),this._register(l.onDidChangeConfiguration(()=>{let C=this._isEnabled;this._isEnabled=this.isEnabled(),C!==this._isEnabled&&(this._isEnabled?this.onModelChanged():this.removeAllDecorations())})),this._timeoutTimer=null,this._computePromise=null,this._isEnabled=this.isEnabled(),this.onModelChanged()}isEnabled(){const l=this._editor.getModel();if(!l)return!1;const g=l.getLanguageId(),y=this._configurationService.getValue(g);if(y&&typeof y=="object"){const C=y.colorDecorators;if(C&&C.enable!==void 0&&!C.enable)return C.enable}return this._editor.getOption(17)}static get(l){return l.getContribution(this.ID)}dispose(){this.stop(),this.removeAllDecorations(),super.dispose()}onModelChanged(){if(this.stop(),!this._isEnabled)return;const l=this._editor.getModel();if(!l||!u.c.has(l))return;this._localToDispose.add(this._editor.onDidChangeModelContent(()=>{this._timeoutTimer||(this._timeoutTimer=new h.g,this._timeoutTimer.cancelAndSet(()=>{this._timeoutTimer=null,this.beginCompute()},c.RECOMPUTE_TIME))})),this.beginCompute()}beginCompute(){this._computePromise=Object(h.h)(l=>{const g=this._editor.getModel();return g?Object(d.b)(g,l):Promise.resolve([])}),this._computePromise.then(l=>{this.updateDecorations(l),this.updateColorDecorators(l),this._computePromise=null},L.f)}stop(){this._timeoutTimer&&(this._timeoutTimer.cancel(),this._timeoutTimer=null),this._computePromise&&(this._computePromise.cancel(),this._computePromise=null),this._localToDispose.clear()}updateDecorations(l){const g=l.map(y=>({range:{startLineNumber:y.colorInfo.range.startLineNumber,startColumn:y.colorInfo.range.startColumn,endLineNumber:y.colorInfo.range.endLineNumber,endColumn:y.colorInfo.range.endColumn},options:f.b.EMPTY}));this._decorationsIds=this._editor.deltaDecorations(this._decorationsIds,g),this._colorDatas=new Map,this._decorationsIds.forEach((y,C)=>this._colorDatas.set(y,l[C]))}updateColorDecorators(l){let g=[],y={};for(let C=0;C{y[C]||this._codeEditorService.removeDecorationType(C)}),this._colorDecoratorIds=this._editor.deltaDecorations(this._colorDecoratorIds,g)}removeAllDecorations(){this._decorationsIds=this._editor.deltaDecorations(this._decorationsIds,[]),this._colorDecoratorIds=this._editor.deltaDecorations(this._colorDecoratorIds,[]),this._decorationsTypes.forEach(l=>{this._codeEditorService.removeDecorationType(l)})}getColorData(l){const g=this._editor.getModel();if(!g)return null;const y=g.getDecorationsInRange(S.a.fromPositions(l,l)).filter(C=>this._colorDatas.has(C.id));return y.length===0?null:this._colorDatas.get(y[0].id)}};m.ID="editor.contrib.colorDetector",m.RECOMPUTE_TIME=1e3,m=p([n(1,O.a),n(2,E.a)],m),Object(k.l)(m.ID,m)},"kw+w":function(ft,w,e){},l2gE:function(ft,w,e){"use strict";e.d(w,"a",function(){return K}),e.d(w,"b",function(){return Q});var h=e("X+cX"),P=e("PTeM"),L=e("QDVR"),A=e("MrjW"),I=e("N0LK");const k="**",O="/",S="[/\\\\]",f="[^/\\\\]",u=/\//g;function d(te){switch(te){case 0:return"";case 1:return`${f}*?`;default:return`(?:${S}|${f}+${S}|${S}${f}+)*?`}}function E(te,U){if(!te)return[];const H=[];let W=!1,ne=!1,Ce="";for(const Le of te){switch(Le){case U:if(!W&&!ne){H.push(Ce),Ce="";continue}break;case"{":W=!0;break;case"}":W=!1;break;case"[":ne=!0;break;case"]":ne=!1;break}Ce+=Le}return Ce&&H.push(Ce),H}function p(te){if(!te)return"";let U="";const H=E(te,O);if(H.every(W=>W===k))U=".*";else{let W=!1;H.forEach((ne,Ce)=>{if(ne===k){W||(U+=d(2),W=!0);return}let Le=!1,ce="",me=!1,Oe="";for(const oe of ne){if(oe!=="}"&&Le){ce+=oe;continue}if(me&&(oe!=="]"||!Oe)){let De;oe==="-"?De=oe:(oe==="^"||oe==="!")&&!Oe?De="^":oe===O?De="":De=I.t(oe),Oe+=De;continue}switch(oe){case"{":Le=!0;continue;case"[":me=!0;continue;case"}":const De=E(ce,","),Ne=`(?:${De.map(ve=>p(ve)).join("|")})`;U+=Ne,Le=!1,ce="";break;case"]":U+="["+Oe+"]",me=!1,Oe="";break;case"?":U+=f;continue;case"*":U+=d(1);continue;default:U+=I.t(oe)}}CeD(ce,U)).filter(ce=>ce!==v),te),W=H.length;if(!W)return v;if(W===1)return H[0];const ne=function(ce,me){for(let Oe=0,oe=H.length;Oe!!ce.allBasenames);Ce&&(ne.allBasenames=Ce.allBasenames);const Le=H.reduce((ce,me)=>me.allPaths?ce.concat(me.allPaths):ce,[]);return Le.length&&(ne.allPaths=Le),ne}function z(te,U,H){const W=A.h===A.e.sep,ne=W?te:te.replace(u,A.h),Ce=A.h+ne,Le=A.e.sep+te,ce=H?function(me,Oe){return typeof me=="string"&&(me===ne||me.endsWith(Ce)||!W&&(me===te||me.endsWith(Le)))?U:null}:function(me,Oe){return typeof me=="string"&&(me===ne||!W&&me===te)?U:null};return ce.allPaths=[(H?"*/":"./")+te],ce}function Y(te){try{const U=new RegExp(`^${p(te)}$`);return function(H){return U.lastIndex=0,typeof H=="string"&&U.test(H)?te:null}}catch(U){return v}}function K(te,U,H){return!te||typeof U!="string"?!1:Q(te)(U,void 0,H)}function Q(te,U={}){if(!te)return C;if(typeof te=="string"||ee(te)){const H=D(te,U);if(H===v)return C;const W=function(ne,Ce){return!!H(ne,Ce)};return H.allBasenames&&(W.allBasenames=H.allBasenames),H.allPaths&&(W.allPaths=H.allPaths),W}return Se(te,U)}function ee(te){const U=te;return U&&typeof U.base=="string"&&typeof U.pattern=="string"}function Se(te,U){const H=q(Object.getOwnPropertyNames(te).map(ce=>fe(ce,te[ce],U)).filter(ce=>ce!==v)),W=H.length;if(!W)return v;if(!H.some(ce=>!!ce.requiresSiblings)){if(W===1)return H[0];const ce=function(oe,De){for(let Ne=0,ve=H.length;Ne!!oe.allBasenames);me&&(ce.allBasenames=me.allBasenames);const Oe=H.reduce((oe,De)=>De.allPaths?oe.concat(De.allPaths):oe,[]);return Oe.length&&(ce.allPaths=Oe),ce}const ne=function(ce,me,Oe){let oe;for(let De=0,Ne=H.length;De!!ce.allBasenames);Ce&&(ne.allBasenames=Ce.allBasenames);const Le=H.reduce((ce,me)=>me.allPaths?ce.concat(me.allPaths):ce,[]);return Le.length&&(ne.allPaths=Le),ne}function fe(te,U,H){if(U===!1)return v;const W=D(te,H);if(W===v)return v;if(typeof U=="boolean")return W;if(U){const ne=U.when;if(typeof ne=="string"){const Ce=(Le,ce,me,Oe)=>{if(!Oe||!W(Le,ce))return null;const oe=ne.replace("$(basename)",me),De=Oe(oe);return Object(h.k)(De)?De.then(Ne=>Ne?te:null):De?te:null};return Ce.requiresSiblings=!0,Ce}}return W}function q(te,U){const H=te.filter(ce=>!!ce.basenames);if(H.length<2)return te;const W=H.reduce((ce,me)=>{const Oe=me.basenames;return Oe?ce.concat(Oe):ce},[]);let ne;if(U){ne=[];for(let ce=0,me=W.length;ce{const Oe=me.patterns;return Oe?ce.concat(Oe):ce},[]);const Ce=function(ce,me){if(typeof ce!="string")return null;if(!me){let oe;for(oe=ce.length;oe>0;oe--){const De=ce.charCodeAt(oe-1);if(De===47||De===92)break}me=ce.substr(oe)}const Oe=W.indexOf(me);return Oe!==-1?ne[Oe]:null};Ce.basenames=W,Ce.patterns=ne,Ce.allBasenames=W;const Le=te.filter(ce=>!ce.basenames);return Le.push(Ce),Le}},lKfe:function(ft,w,e){},"lY/7":function(ft,w,e){"use strict";e.r(w),e.d(w,"MarkerController",function(){return Te}),e.d(w,"NextMarkerAction",function(){return st});var h=e("Vhoy"),P=e("pmY6"),L=e("sswD"),A=e("Vxe3"),I=e("cGHE"),k=e("aokT"),O=e("wQH0"),S=e("6OMU"),f=e("MI8n"),u=e("24hK"),d=e("N0LK"),E=e("bY76"),p=e("9fML"),n=e("Cg/j"),b=e("tADe"),m=function(ht,lt,le,Pe){var it=arguments.length,Dt=it<3?lt:Pe===null?Pe=Object.getOwnPropertyDescriptor(lt,le):Pe,kt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Dt=Reflect.decorate(ht,lt,le,Pe);else for(var eo=ht.length-1;eo>=0;eo--)(kt=ht[eo])&&(Dt=(it<3?kt(Dt):it>3?kt(lt,le,Dt):kt(lt,le))||Dt);return it>3&&Dt&&Object.defineProperty(lt,le,Dt),Dt},c=function(ht,lt){return function(le,Pe){lt(le,Pe,ht)}};class l{constructor(ht,lt,le){this.marker=ht,this.index=lt,this.total=le}}let g=class ht{constructor(lt,le){this._markerService=le,this._onDidChange=new f.b,this.onDidChange=this._onDidChange.event,this._dispoables=new P.b,this._markers=[],this._nextIdx=-1,E.a.isUri(lt)?this._resourceFilter=it=>it.toString()===lt.toString():lt&&(this._resourceFilter=lt);const Pe=()=>{this._markers=this._markerService.read({resource:E.a.isUri(lt)?lt:void 0,severities:b.c.Error|b.c.Warning|b.c.Info}),typeof lt=="function"&&(this._markers=this._markers.filter(it=>this._resourceFilter(it.resource))),this._markers.sort(ht._compareMarker)};Pe(),this._dispoables.add(le.onMarkerChanged(it=>{(!this._resourceFilter||it.some(Dt=>this._resourceFilter(Dt)))&&(Pe(),this._nextIdx=-1,this._onDidChange.fire())}))}dispose(){this._dispoables.dispose(),this._onDidChange.dispose()}matches(lt){return!this._resourceFilter&&!lt?!0:!this._resourceFilter||!lt?!1:this._resourceFilter(lt)}get selected(){const lt=this._markers[this._nextIdx];return lt&&new l(lt,this._nextIdx+1,this._markers.length)}_initIdx(lt,le,Pe){let it=!1,Dt=this._markers.findIndex(kt=>kt.resource.toString()===lt.uri.toString());Dt<0&&(Dt=Object(S.d)(this._markers,{resource:lt.uri},(kt,eo)=>Object(d.f)(kt.resource.toString(),eo.resource.toString())),Dt<0&&(Dt=~Dt));for(let kt=Dt;ktit.resource.toString()===lt.toString());if(Pe<0)return;for(;Pe{const le=ht.getColor(U.sc);if(le){const Dt=h.b.error.cssSelector;lt.addRule(` .monaco-editor .zone-widget ${Dt}, .markers-panel .marker-icon${Dt}, .text-search-provider-messages .providerMessage ${Dt}, .extensions-viewlet > .extensions ${Dt} { color: ${le}; } `)}const Pe=ht.getColor(U.uc);if(Pe){const Dt=h.b.warning.cssSelector;lt.addRule(` .monaco-editor .zone-widget ${Dt}, .markers-panel .marker-icon${Dt}, .extensions-viewlet > .extensions ${Dt}, .extension-editor ${Dt}, .text-search-provider-messages .providerMessage ${Dt}, .preferences-editor ${Dt} { color: ${Pe}; } `)}const it=ht.getColor(U.tc);if(it){const Dt=h.b.info.cssSelector;lt.addRule(` .monaco-editor .zone-widget ${Dt}, .markers-panel .marker-icon${Dt}, .extensions-viewlet > .extensions ${Dt}, .text-search-provider-messages .providerMessage ${Dt}, .extension-editor ${Dt} { color: ${it}; } `)}});var ne=function(ht,lt,le,Pe){var it=arguments.length,Dt=it<3?lt:Pe===null?Pe=Object.getOwnPropertyDescriptor(lt,le):Pe,kt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Dt=Reflect.decorate(ht,lt,le,Pe);else for(var eo=ht.length-1;eo>=0;eo--)(kt=ht[eo])&&(Dt=(it<3?kt(Dt):it>3?kt(lt,le,Dt):kt(lt,le))||Dt);return it>3&&Dt&&Object.defineProperty(lt,le,Dt),Dt},Ce=function(ht,lt){return function(le,Pe){lt(le,Pe,ht)}};class Le{constructor(ht,lt,le,Pe,it){this._openerService=Pe,this._labelService=it,this._lines=0,this._longestLineLength=0,this._relatedDiagnostics=new WeakMap,this._disposables=new P.b,this._editor=lt;const Dt=document.createElement("div");Dt.className="descriptioncontainer",this._messageBlock=document.createElement("div"),this._messageBlock.classList.add("message"),this._messageBlock.setAttribute("aria-live","assertive"),this._messageBlock.setAttribute("role","alert"),Dt.appendChild(this._messageBlock),this._relatedBlock=document.createElement("div"),Dt.appendChild(this._relatedBlock),this._disposables.add(G.o(this._relatedBlock,"click",kt=>{kt.preventDefault();const eo=this._relatedDiagnostics.get(kt.target);eo&&le(eo)})),this._scrollable=new B.b(Dt,{horizontal:1,vertical:1,useShadows:!1,horizontalScrollbarSize:3,verticalScrollbarSize:3}),ht.appendChild(this._scrollable.getDomNode()),this._disposables.add(this._scrollable.onScroll(kt=>{Dt.style.left=`-${kt.scrollLeft}px`,Dt.style.top=`-${kt.scrollTop}px`})),this._disposables.add(this._scrollable)}dispose(){Object(P.f)(this._disposables)}update(ht){const{source:lt,message:le,relatedInformation:Pe,code:it}=ht;let Dt=((lt==null?void 0:lt.length)||0)+"()".length;it&&(typeof it=="string"?Dt+=it.length:Dt+=it.value.length);const kt=Object(d.Q)(le);this._lines=kt.length,this._longestLineLength=0;for(const Lo of kt)this._longestLineLength=Math.max(Lo.length+Dt,this._longestLineLength);G.t(this._messageBlock),this._messageBlock.setAttribute("aria-label",this.getAriaLabel(ht)),this._editor.applyFontInfo(this._messageBlock);let eo=this._messageBlock;for(const Lo of kt)eo=document.createElement("div"),eo.innerText=Lo,Lo===""&&(eo.style.height=this._messageBlock.style.lineHeight),this._messageBlock.appendChild(eo);if(lt||it){const Lo=document.createElement("span");if(Lo.classList.add("details"),eo.appendChild(Lo),lt){const xo=document.createElement("span");xo.innerText=lt,xo.classList.add("source"),Lo.appendChild(xo)}if(it)if(typeof it=="string"){const xo=document.createElement("span");xo.innerText=`(${it})`,xo.classList.add("code"),Lo.appendChild(xo)}else{this._codeLink=G.a("a.code-link"),this._codeLink.setAttribute("href",`${it.target.toString()}`),this._codeLink.onclick=_o=>{this._openerService.open(it.target,{allowCommands:!0}),_o.preventDefault(),_o.stopPropagation()};const xo=G.q(this._codeLink,G.a("span"));xo.innerText=it.value,Lo.appendChild(this._codeLink)}}if(G.t(this._relatedBlock),this._editor.applyFontInfo(this._relatedBlock),Object(S.n)(Pe)){const Lo=this._relatedBlock.appendChild(document.createElement("div"));Lo.style.paddingTop=`${Math.floor(this._editor.getOption(58)*.66)}px`,this._lines+=1;for(const xo of Pe){let _o=document.createElement("div"),to=document.createElement("a");to.classList.add("filename"),to.innerText=`${Object(Y.a)(xo.resource)}(${xo.startLineNumber}, ${xo.startColumn}): `,to.title=this._labelService.getUriLabel(xo.resource),this._relatedDiagnostics.set(to,xo);let Wt=document.createElement("span");Wt.innerText=xo.message,_o.appendChild(to),_o.appendChild(Wt),this._lines+=1,Lo.appendChild(_o)}}const bo=this._editor.getOption(43),ao=Math.ceil(bo.typicalFullwidthCharacterWidth*this._longestLineLength*.75),So=bo.lineHeight*this._lines;this._scrollable.setScrollDimensions({scrollWidth:ao,scrollHeight:So})}layout(ht,lt){this._scrollable.getDomNode().style.height=`${ht}px`,this._scrollable.getDomNode().style.width=`${lt}px`,this._scrollable.setScrollDimensions({width:lt,height:ht})}getHeightInLines(){return Math.min(17,this._lines)}getAriaLabel(ht){let lt="";switch(ht.severity){case b.c.Error:lt=v.a("Error","Error");break;case b.c.Warning:lt=v.a("Warning","Warning");break;case b.c.Info:lt=v.a("Info","Info");break;case b.c.Hint:lt=v.a("Hint","Hint");break}let le=v.a("marker aria","{0} at {1}. ",lt,ht.startLineNumber+":"+ht.startColumn);const Pe=this._editor.getModel();if(Pe&&ht.startLineNumber<=Pe.getLineCount()&&ht.startLineNumber>=1){const it=Pe.getLineContent(ht.startLineNumber);le=`${it}, ${le}`}return le}}let ce=class ht extends ee.c{constructor(lt,le,Pe,it,Dt,kt,eo){super(lt,{showArrow:!0,showFrame:!0,isAccessible:!0,frameWidth:1},Dt);this._themeService=le,this._openerService=Pe,this._menuService=it,this._contextKeyService=kt,this._labelService=eo,this._callOnDispose=new P.b,this._onDidSelectRelatedInformation=new f.b,this.onDidSelectRelatedInformation=this._onDidSelectRelatedInformation.event,this._severity=b.c.Warning,this._backgroundColor=z.a.white,this._applyTheme(le.getColorTheme()),this._callOnDispose.add(le.onDidColorThemeChange(this._applyTheme.bind(this))),this.create()}_applyTheme(lt){this._backgroundColor=lt.getColor(ge);let le=De,Pe=Ne;this._severity===b.c.Warning?(le=ve,Pe=re):this._severity===b.c.Info&&(le=we,Pe=Ie);const it=lt.getColor(le),Dt=lt.getColor(Pe);this.style({arrowColor:it,frameColor:it,headerBackgroundColor:Dt,primaryHeadingColor:lt.getColor(ee.q),secondaryHeadingColor:lt.getColor(ee.r)})}_applyStyles(){this._parentContainer&&(this._parentContainer.style.backgroundColor=this._backgroundColor?this._backgroundColor.toString():""),super._applyStyles()}dispose(){this._callOnDispose.dispose(),super.dispose()}_fillHead(lt){super._fillHead(lt),this._disposables.add(this._actionbarWidget.actionRunner.onBeforeRun(it=>this.editor.focus()));const le=[],Pe=this._menuService.createMenu(ht.TitleMenu,this._contextKeyService);Object(Se.c)(Pe,void 0,le),this._actionbarWidget.push(le,{label:!1,icon:!0,index:0}),Pe.dispose()}_fillTitleIcon(lt){this._icon=G.q(lt,G.a(""))}_fillBody(lt){this._parentContainer=lt,lt.classList.add("marker-widget"),this._parentContainer.tabIndex=0,this._parentContainer.setAttribute("role","tooltip"),this._container=document.createElement("div"),lt.appendChild(this._container),this._message=new Le(this._container,this.editor,le=>this._onDidSelectRelatedInformation.fire(le),this._openerService,this._labelService),this._disposables.add(this._message)}show(){throw new Error("call showAtMarker")}showAtMarker(lt,le,Pe){this._container.classList.remove("stale"),this._message.update(lt),this._severity=lt.severity,this._applyTheme(this._themeService.getColorTheme());let it=k.a.lift(lt);const Dt=this.editor.getPosition();let kt=Dt&&it.containsPosition(Dt)?Dt:it.getStartPosition();super.show(kt,this.computeRequiredHeight());const eo=this.editor.getModel();if(eo){const bo=Pe>1?v.a("problems","{0} of {1} problems",le,Pe):v.a("change","{0} of {1} problem",le,Pe);this.setTitle(Object(K.b)(eo.uri),bo)}this._icon.className=`codicon ${W.className(b.c.toSeverity(this._severity))}`,this.editor.revealPositionNearTop(kt,0),this.editor.focus()}updateMarker(lt){this._container.classList.remove("stale"),this._message.update(lt)}showStale(){this._container.classList.add("stale"),this._relayout()}_doLayoutBody(lt,le){super._doLayoutBody(lt,le),this._heightInPixel=lt,this._message.layout(lt,le),this._container.style.height=`${lt}px`}_onWidth(lt){this._message.layout(this._heightInPixel,lt)}_relayout(){super._relayout(this.computeRequiredHeight())}computeRequiredHeight(){return 3+this._message.getHeightInLines()}};ce.TitleMenu=new D.b("gotoErrorTitleMenu"),ce=ne([Ce(1,H.b),Ce(2,q.a),Ce(3,D.a),Ce(4,n.a),Ce(5,j.b),Ce(6,fe.a)],ce);let me=Object(U.nc)(U.u,U.t),Oe=Object(U.nc)(U.bb,U.ab),oe=Object(U.nc)(U.M,U.L);const De=Object(U.Cc)("editorMarkerNavigationError.background",{dark:me,light:me,hc:U.h},v.a("editorMarkerNavigationError","Editor marker navigation widget error color.")),Ne=Object(U.Cc)("editorMarkerNavigationError.headerBackground",{dark:Object(U.Rc)(De,.1),light:Object(U.Rc)(De,.1),hc:null},v.a("editorMarkerNavigationErrorHeaderBackground","Editor marker navigation widget error heading background.")),ve=Object(U.Cc)("editorMarkerNavigationWarning.background",{dark:Oe,light:Oe,hc:U.h},v.a("editorMarkerNavigationWarning","Editor marker navigation widget warning color.")),re=Object(U.Cc)("editorMarkerNavigationWarning.headerBackground",{dark:Object(U.Rc)(ve,.1),light:Object(U.Rc)(ve,.1),hc:"#0C141F"},v.a("editorMarkerNavigationWarningBackground","Editor marker navigation widget warning heading background.")),we=Object(U.Cc)("editorMarkerNavigationInfo.background",{dark:oe,light:oe,hc:U.h},v.a("editorMarkerNavigationInfo","Editor marker navigation widget info color.")),Ie=Object(U.Cc)("editorMarkerNavigationInfo.headerBackground",{dark:Object(U.Rc)(we,.1),light:Object(U.Rc)(we,.1),hc:null},v.a("editorMarkerNavigationInfoHeaderBackground","Editor marker navigation widget info heading background.")),ge=Object(U.Cc)("editorMarkerNavigation.background",{dark:U.r,light:U.r,hc:U.r},v.a("editorMarkerNavigationBackground","Editor marker navigation widget background."));Object(H.f)((ht,lt)=>{const le=ht.getColor(U.Pc);le&<.addRule(`.monaco-editor .marker-widget a.code-link span { color: ${le}; }`);const Pe=ht.getColor(U.Oc);Pe&<.addRule(`.monaco-editor .marker-widget a.code-link span:hover { color: ${Pe}; }`)});var ye=function(ht,lt,le,Pe){var it=arguments.length,Dt=it<3?lt:Pe===null?Pe=Object.getOwnPropertyDescriptor(lt,le):Pe,kt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Dt=Reflect.decorate(ht,lt,le,Pe);else for(var eo=ht.length-1;eo>=0;eo--)(kt=ht[eo])&&(Dt=(it<3?kt(Dt):it>3?kt(lt,le,Dt):kt(lt,le))||Dt);return it>3&&Dt&&Object.defineProperty(lt,le,Dt),Dt},ze=function(ht,lt){return function(le,Pe){lt(le,Pe,ht)}},xe=function(ht,lt,le,Pe){function it(Dt){return Dt instanceof le?Dt:new le(function(kt){kt(Dt)})}return new(le||(le=Promise))(function(Dt,kt){function eo(So){try{ao(Pe.next(So))}catch(Lo){kt(Lo)}}function bo(So){try{ao(Pe.throw(So))}catch(Lo){kt(Lo)}}function ao(So){So.done?Dt(So.value):it(So.value).then(eo,bo)}ao((Pe=Pe.apply(ht,lt||[])).next())})};let Te=class ht{constructor(lt,le,Pe,it,Dt){this._markerNavigationService=le,this._contextKeyService=Pe,this._editorService=it,this._instantiationService=Dt,this._sessionDispoables=new P.b,this._editor=lt,this._widgetVisible=Pt.bindTo(this._contextKeyService)}static get(lt){return lt.getContribution(ht.ID)}dispose(){this._cleanUp(),this._sessionDispoables.dispose()}_cleanUp(){this._widgetVisible.reset(),this._sessionDispoables.clear(),this._widget=void 0,this._model=void 0}_getOrCreateModel(lt){if(this._model&&this._model.matches(lt))return this._model;let le=!1;return this._model&&(le=!0,this._cleanUp()),this._model=this._markerNavigationService.getMarkerList(lt),le&&this._model.move(!0,this._editor.getModel(),this._editor.getPosition()),this._widget=this._instantiationService.createInstance(ce,this._editor),this._widget.onDidClose(()=>this.close(),this,this._sessionDispoables),this._widgetVisible.set(!0),this._sessionDispoables.add(this._model),this._sessionDispoables.add(this._widget),this._sessionDispoables.add(this._editor.onDidChangeCursorPosition(Pe=>{var it,Dt,kt;(!((it=this._model)===null||it===void 0?void 0:it.selected)||!k.a.containsPosition((Dt=this._model)===null||Dt===void 0?void 0:Dt.selected.marker,Pe.position))&&((kt=this._model)===null||kt===void 0||kt.resetIndex())})),this._sessionDispoables.add(this._model.onDidChange(()=>{if(!this._widget||!this._widget.position||!this._model)return;const Pe=this._model.find(this._editor.getModel().uri,this._widget.position);Pe?this._widget.updateMarker(Pe.marker):this._widget.showStale()})),this._sessionDispoables.add(this._widget.onDidSelectRelatedInformation(Pe=>{this._editorService.openCodeEditor({resource:Pe.resource,options:{pinned:!0,revealIfOpened:!0,selection:k.a.lift(Pe).collapseToStart()}},this._editor),this.close(!1)})),this._sessionDispoables.add(this._editor.onDidChangeModel(()=>this._cleanUp())),this._model}close(lt=!0){this._cleanUp(),lt&&this._editor.focus()}showAtMarker(lt){if(this._editor.hasModel()){const le=this._getOrCreateModel(this._editor.getModel().uri);le.resetIndex(),le.move(!0,this._editor.getModel(),new I.a(lt.startLineNumber,lt.startColumn)),le.selected&&this._widget.showAtMarker(le.selected.marker,le.selected.index,le.selected.total)}}nagivate(lt,le){return xe(this,void 0,void 0,function*(){if(this._editor.hasModel()){const Pe=this._getOrCreateModel(le?void 0:this._editor.getModel().uri);if(Pe.move(lt,this._editor.getModel(),this._editor.getPosition()),!Pe.selected)return;if(Pe.selected.marker.resource.toString()!==this._editor.getModel().uri.toString()){this._cleanUp();const it=yield this._editorService.openCodeEditor({resource:Pe.selected.marker.resource,options:{pinned:!1,revealIfOpened:!0,selectionRevealType:2,selection:Pe.selected.marker}},this._editor);it&&(ht.get(it).close(),ht.get(it).nagivate(lt,le))}else this._widget.showAtMarker(Pe.selected.marker,Pe.selected.index,Pe.selected.total)}})}};Te.ID="editor.contrib.markerController",Te=ye([ze(1,y),ze(2,j.b),ze(3,A.a),ze(4,n.a)],Te);class He extends L.b{constructor(ht,lt,le){super(le);this._next=ht,this._multiFile=lt}run(ht,lt){return xe(this,void 0,void 0,function*(){lt.hasModel()&&Te.get(lt).nagivate(this._next,this._multiFile)})}}class st extends He{constructor(){super(!0,!1,{id:st.ID,label:st.LABEL,alias:"Go to Next Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:O.a.focus,primary:512|66,weight:100},menuOpts:{menuId:ce.TitleMenu,title:st.LABEL,icon:Object(V.b)("marker-navigation-next",h.b.arrowDown,v.a("nextMarkerIcon","Icon for goto next marker.")),group:"navigation",order:1}})}}st.ID="editor.action.marker.next",st.LABEL=v.a("markerAction.next.label","Go to Next Problem (Error, Warning, Info)");class nt extends He{constructor(){super(!1,!1,{id:nt.ID,label:nt.LABEL,alias:"Go to Previous Problem (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:O.a.focus,primary:1024|512|66,weight:100},menuOpts:{menuId:ce.TitleMenu,title:st.LABEL,icon:Object(V.b)("marker-navigation-previous",h.b.arrowUp,v.a("previousMarkerIcon","Icon for goto previous marker.")),group:"navigation",order:2}})}}nt.ID="editor.action.marker.prev",nt.LABEL=v.a("markerAction.previous.label","Go to Previous Problem (Error, Warning, Info)");class rt extends He{constructor(){super(!0,!0,{id:"editor.action.marker.nextInFiles",label:v.a("markerAction.nextInFiles.label","Go to Next Problem in Files (Error, Warning, Info)"),alias:"Go to Next Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:O.a.focus,primary:66,weight:100},menuOpts:{menuId:D.b.MenubarGoMenu,title:v.a({key:"miGotoNextProblem",comment:["&& denotes a mnemonic"]},"Next &&Problem"),group:"6_problem_nav",order:1}})}}class wt extends He{constructor(){super(!1,!0,{id:"editor.action.marker.prevInFiles",label:v.a("markerAction.previousInFiles.label","Go to Previous Problem in Files (Error, Warning, Info)"),alias:"Go to Previous Problem in Files (Error, Warning, Info)",precondition:void 0,kbOpts:{kbExpr:O.a.focus,primary:1024|66,weight:100},menuOpts:{menuId:D.b.MenubarGoMenu,title:v.a({key:"miGotoPreviousProblem",comment:["&& denotes a mnemonic"]},"Previous &&Problem"),group:"6_problem_nav",order:2}})}}Object(L.l)(Te.ID,Te),Object(L.j)(st),Object(L.j)(nt),Object(L.j)(rt),Object(L.j)(wt);const Pt=new j.c("markersNavigationVisible",!1),no=L.c.bindToContribution(Te.get);Object(L.k)(new no({id:"closeMarkersNavigation",precondition:Pt,handler:ht=>ht.close(),kbOpts:{weight:100+50,kbExpr:O.a.focus,primary:9,secondary:[1024|9]}}))},li8W:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"bat",extensions:[".bat",".cmd"],aliases:["Batch","bat"],loader:function(){return e.e(324).then(e.bind(null,"7s2V"))}})},lrmC:function(ft,w,e){},n01l:function(ft,w,e){"use strict";e.r(w);var h=e("/kV6"),P=e("sswD"),L=e("aokT"),A=e("wQH0"),I=e("0/Sa"),k=e("cGHE"),O=e("gCVg"),S=e("cMvZ");class f{constructor(g,y){this._selection=g,this._insertSpace=y,this._usedEndToken=null}static _haystackHasNeedleAtOffset(g,y,C){if(C<0)return!1;const v=y.length,D=g.length;if(C+v>D)return!1;for(let j=0;j=65&&V<=90&&V+32===G)continue;if(G>=65&&G<=90&&G+32===V)continue;return!1}return!0}_createOperationsForBlockComment(g,y,C,v,D,j){const V=g.startLineNumber,G=g.startColumn,B=g.endLineNumber,z=g.endColumn,Y=D.getLineContent(V),K=D.getLineContent(B);let Q=Y.lastIndexOf(y,G-1+y.length),ee=K.indexOf(C,z-1-C.length);if(Q!==-1&&ee!==-1)if(V===B){const fe=Y.substring(Q+y.length,ee);fe.indexOf(C)>=0&&(Q=-1,ee=-1)}else{const fe=Y.substring(Q+y.length),q=K.substring(0,ee);(fe.indexOf(C)>=0||q.indexOf(C)>=0)&&(Q=-1,ee=-1)}let Se;Q!==-1&&ee!==-1?(v&&Q+y.length0&&K.charCodeAt(ee-1)===32&&(C=" "+C,ee-=1),Se=f._createRemoveBlockCommentOperations(new L.a(V,Q+y.length+1,B,ee+1),y,C)):(Se=f._createAddBlockCommentOperations(g,y,C,this._insertSpace),this._usedEndToken=Se.length===1?C:null);for(const fe of Se)j.addTrackedEditOperation(fe.range,fe.text)}static _createRemoveBlockCommentOperations(g,y,C){let v=[];return L.a.isEmpty(g)?v.push(I.a.delete(new L.a(g.startLineNumber,g.startColumn-y.length,g.endLineNumber,g.endColumn+C.length))):(v.push(I.a.delete(new L.a(g.startLineNumber,g.startColumn-y.length,g.startLineNumber,g.startColumn))),v.push(I.a.delete(new L.a(g.endLineNumber,g.endColumn,g.endLineNumber,g.endColumn+C.length)))),v}static _createAddBlockCommentOperations(g,y,C,v){let D=[];return L.a.isEmpty(g)?D.push(I.a.replace(new L.a(g.startLineNumber,g.startColumn,g.endLineNumber,g.endColumn),y+" "+C)):(D.push(I.a.insert(new k.a(g.startLineNumber,g.startColumn),y+(v?" ":""))),D.push(I.a.insert(new k.a(g.endLineNumber,g.endColumn),(v?" ":"")+C))),D}getEditOperations(g,y){const C=this._selection.startLineNumber,v=this._selection.startColumn;g.tokenizeIfCheap(C);const D=g.getLanguageIdAtPosition(C,v),j=S.b.getComments(D);if(!j||!j.blockCommentStartToken||!j.blockCommentEndToken)return;this._createOperationsForBlockComment(this._selection,j.blockCommentStartToken,j.blockCommentEndToken,this._insertSpace,g,y)}computeCursorState(g,y){const C=y.getInverseEditOperations();if(C.length===2){const v=C[0],D=C[1];return new O.a(v.range.endLineNumber,v.range.endColumn,D.range.startLineNumber,D.range.startColumn)}else{const v=C[0].range,D=this._usedEndToken?-this._usedEndToken.length-1:0;return new O.a(v.endLineNumber,v.endColumn+D,v.endLineNumber,v.endColumn+D)}}}var u=e("N0LK");class d{constructor(g,y,C,v,D,j){this._selection=g,this._tabSize=y,this._type=C,this._insertSpace=v,this._selectionId=null,this._deltaColumn=0,this._moveEndPositionDown=!1,this._ignoreEmptyLines=D,this._ignoreFirstLine=j||!1}static _gatherPreflightCommentStrings(g,y,C){g.tokenizeIfCheap(y);const v=g.getLanguageIdAtPosition(y,1),D=S.b.getComments(v),j=D?D.lineCommentToken:null;if(!j)return null;let V=[];for(let G=0,B=C-y+1;GD?y[G].commentStrOffset=j-1:y[G].commentStrOffset=j}}}var E=e("3/fG"),p=e("fjLI");class n extends P.b{constructor(g,y){super(y);this._type=g}run(g,y){if(!y.hasModel())return;const C=y.getModel(),v=[],D=C.getOptions(),j=y.getOption(19),V=y.getSelections().map((B,z)=>({selection:B,index:z,ignoreFirstLine:!1}));V.sort((B,z)=>L.a.compareRangesUsingStarts(B.selection,z.selection));let G=V[0];for(let B=1;B=0;_e--)(pe=o[_e])&&($=(N<3?pe($):N>3?pe(i,r,$):pe(i,r))||$);return N>3&&$&&Object.defineProperty(i,r,$),$},A=function(o,i){return function(r,M){i(r,M,o)}};let I=class{constructor(i,r){}dispose(){}};I.ID="editor.contrib.markerDecorations",I=L([A(1,h.a)],I),Object(P.l)(I.ID,I);var k=e("lrmC"),O=e("3/fG"),S=e("EffR"),f=e("/cxE"),u=e("MI8n"),d=e("pmY6"),E=e("tYmi"),p=e("HdwC"),n=e("Vxe3"),b=e("D3Dy"),m=e("gCVg"),c=e("ZlPH"),l=e("MNsG"),g=e("pg8w"),y=e("XSiN"),C=e("X+cX"),v=e("AKMP");class D{constructor(o,i){this.x=o,this.y=i,this._pageCoordinatesBrand=void 0}toClientCoordinates(){return new j(this.x-S.f.scrollX,this.y-S.f.scrollY)}}class j{constructor(o,i){this.clientX=o,this.clientY=i,this._clientCoordinatesBrand=void 0}toPageCoordinates(){return new D(this.clientX+S.f.scrollX,this.clientY+S.f.scrollY)}}class V{constructor(o,i,r,M){this.x=o,this.y=i,this.width=r,this.height=M,this._editorPagePositionBrand=void 0}}function G(o){const i=S.D(o);return new V(i.left,i.top,i.width,i.height)}class B extends y.a{constructor(o,i){super(o);this._editorMouseEventBrand=void 0,this.pos=new D(this.posx,this.posy),this.editorPos=G(i)}}class z{constructor(o){this._editorViewDomNode=o}_create(o){return new B(o,this._editorViewDomNode)}onContextMenu(o,i){return S.i(o,"contextmenu",r=>{i(this._create(r))})}onMouseUp(o,i){return S.i(o,"mouseup",r=>{i(this._create(r))})}onMouseDown(o,i){return S.i(o,"mousedown",r=>{i(this._create(r))})}onMouseLeave(o,i){return S.j(o,r=>{i(this._create(r))})}onMouseMoveThrottled(o,i,r,M){const N=($,pe)=>r($,this._create(pe));return S.l(o,"mousemove",i,N,M)}}class Y{constructor(o){this._editorViewDomNode=o}_create(o){return new B(o,this._editorViewDomNode)}onPointerUp(o,i){return S.i(o,"pointerup",r=>{i(this._create(r))})}onPointerDown(o,i){return S.i(o,"pointerdown",r=>{i(this._create(r))})}onPointerLeave(o,i){return S.k(o,r=>{i(this._create(r))})}onPointerMoveThrottled(o,i,r,M){const N=($,pe)=>r($,this._create(pe));return S.l(o,"pointermove",i,N,M)}}class K extends d.a{constructor(o){super();this._editorViewDomNode=o,this._globalMouseMoveMonitor=this._register(new v.a),this._keydownListener=null}startMonitoring(o,i,r,M,N){this._keydownListener=S.o(document,"keydown",pe=>{const _e=pe.toKeybinding();if(_e.isModifierKey())return;this._globalMouseMoveMonitor.stopMonitoring(!0,pe.browserEvent)},!0);const $=(pe,_e)=>r(pe,new B(_e,this._editorViewDomNode));this._globalMouseMoveMonitor.startMonitoring(o,i,$,M,pe=>{this._keydownListener.dispose(),N(pe)})}stopMonitoring(){this._globalMouseMoveMonitor.stopMonitoring(!0)}}class Q extends d.a{constructor(){super();this._shouldRender=!0}shouldRender(){return this._shouldRender}forceShouldRender(){this._shouldRender=!0}setShouldRender(){this._shouldRender=!0}onDidRender(){this._shouldRender=!1}onCompositionStart(o){return!1}onCompositionEnd(o){return!1}onConfigurationChanged(o){return!1}onCursorStateChanged(o){return!1}onDecorationsChanged(o){return!1}onFlushed(o){return!1}onFocusChanged(o){return!1}onLanguageConfigurationChanged(o){return!1}onLineMappingChanged(o){return!1}onLinesChanged(o){return!1}onLinesDeleted(o){return!1}onLinesInserted(o){return!1}onRevealRangeRequest(o){return!1}onScrollChanged(o){return!1}onThemeChanged(o){return!1}onTokensChanged(o){return!1}onTokensColorsChanged(o){return!1}onZonesChanged(o){return!1}handleEvents(o){let i=!1;for(let r=0,M=o.length;r=pe.left?M.width=Math.max(M.width,pe.left+pe.width-M.left):(i[r++]=M,M=pe)}return i[r++]=M,i}static _createHorizontalRangesFromClientRects(o,i){if(!o||o.length===0)return null;const r=[];for(let M=0,N=o.length;MKe)return null;if(i=Math.min(Ke,Math.max(_e,i)),M=Math.min(Ke,Math.max(_e,M)),i===M&&r===N&&r===0&&!o.children[i].firstChild){const _t=o.children[i].getClientRects();return this._createHorizontalRangesFromClientRects(_t,$)}i!==M&&(M>0&&N===0&&(M--,N=1073741824));let Je=o.children[i].firstChild,at=o.children[M].firstChild;if((!Je||!at)&&(!Je&&r===0&&i>0&&(Je=o.children[i-1].firstChild,r=1073741824),!at&&N===0&&M>0&&(at=o.children[M-1].firstChild,N=1073741824)),!Je||!at)return null;r=Math.min(Je.textContent.length,Math.max(0,r)),N=Math.min(at.textContent.length,Math.max(0,N));const jt=this._readClientRects(Je,r,at,N,pe);return this._createHorizontalRangesFromClientRects(jt,$)}}var Le=e("dBaI"),ce=e("baJR"),me=e("nEHx"),Oe=e("/UlZ");const oe=function(){return l.g?!0:!(l.d||b.g||b.h)}();let De=!0;class Ne{constructor(o,i){this._domNode=o,this._clientRectDeltaLeft=0,this._clientRectDeltaLeftRead=!1,this.endNode=i}get clientRectDeltaLeft(){return this._clientRectDeltaLeftRead||(this._clientRectDeltaLeftRead=!0,this._clientRectDeltaLeft=this._domNode.getBoundingClientRect().left),this._clientRectDeltaLeft}}class ve{constructor(o,i){this.themeType=i;const r=o.options,M=r.get(43);this.renderWhitespace=r.get(87),this.renderControlCharacters=r.get(82),this.spaceWidth=M.spaceWidth,this.middotWidth=M.middotWidth,this.wsmiddotWidth=M.wsmiddotWidth,this.useMonospaceOptimizations=M.isMonospace&&!r.get(29),this.canUseHalfwidthRightwardsArrow=M.canUseHalfwidthRightwardsArrow,this.lineHeight=r.get(58),this.stopRenderingLineAfter=r.get(104),this.fontLigatures=r.get(44)}equals(o){return this.themeType===o.themeType&&this.renderWhitespace===o.renderWhitespace&&this.renderControlCharacters===o.renderControlCharacters&&this.spaceWidth===o.spaceWidth&&this.middotWidth===o.middotWidth&&this.wsmiddotWidth===o.wsmiddotWidth&&this.useMonospaceOptimizations===o.useMonospaceOptimizations&&this.canUseHalfwidthRightwardsArrow===o.canUseHalfwidthRightwardsArrow&&this.lineHeight===o.lineHeight&&this.stopRenderingLineAfter===o.stopRenderingLineAfter&&this.fontLigatures===o.fontLigatures}}class re{constructor(o){this._options=o,this._isMaybeInvalid=!0,this._renderedViewLine=null}getDomNode(){return this._renderedViewLine&&this._renderedViewLine.domNode?this._renderedViewLine.domNode.domNode:null}setDomNode(o){if(this._renderedViewLine)this._renderedViewLine.domNode=Object(c.b)(o);else throw new Error("I have no rendered view line to set the dom node to...")}onContentChanged(){this._isMaybeInvalid=!0}onTokensChanged(){this._isMaybeInvalid=!0}onDecorationsChanged(){this._isMaybeInvalid=!0}onOptionsChanged(o){this._isMaybeInvalid=!0,this._options=o}onSelectionChanged(){return this._options.themeType===me.a.HIGH_CONTRAST||this._options.renderWhitespace==="selection"?(this._isMaybeInvalid=!0,!0):!1}renderLine(o,i,r,M){if(this._isMaybeInvalid===!1)return!1;this._isMaybeInvalid=!1;const N=r.getViewLineRenderingData(o),$=this._options,pe=Le.a.filter(N.inlineDecorations,o,N.minColumn,N.maxColumn);let _e=null;if($.themeType===me.a.HIGH_CONTRAST||this._options.renderWhitespace==="selection"){const jt=r.selections;for(const _t of jt){if(_t.endLineNumbero)continue;const Ht=_t.startLineNumber===o?_t.startColumn:N.minColumn,Jt=_t.endLineNumber===o?_t.endColumn:N.maxColumn;Ht');const Je=Object(ce.d)(Ke,M);M.appendASCIIString("");let at=null;return De&&oe&&N.isBasicASCII&&$.useMonospaceOptimizations&&Je.containsForeignElements===0&&(N.content.length<300&&Ke.lineTokens.getCount()<100&&(at=new we(this._renderedViewLine?this._renderedViewLine.domNode:null,Ke,Je.characterMapping))),at||(at=ye(this._renderedViewLine?this._renderedViewLine.domNode:null,Ke,Je.characterMapping,Je.containsRTL,Je.containsForeignElements)),this._renderedViewLine=at,!0}layoutLine(o,i){this._renderedViewLine&&this._renderedViewLine.domNode&&(this._renderedViewLine.domNode.setTop(i),this._renderedViewLine.domNode.setHeight(this._options.lineHeight))}getWidth(){return this._renderedViewLine?this._renderedViewLine.getWidth():0}getWidthIsFast(){return this._renderedViewLine?this._renderedViewLine.getWidthIsFast():!0}needsMonospaceFontCheck(){return this._renderedViewLine?this._renderedViewLine instanceof we:!1}monospaceAssumptionsAreValid(){return this._renderedViewLine&&this._renderedViewLine instanceof we?this._renderedViewLine.monospaceAssumptionsAreValid():De}onMonospaceAssumptionsInvalidated(){this._renderedViewLine&&this._renderedViewLine instanceof we&&(this._renderedViewLine=this._renderedViewLine.toSlowRenderedLine())}getVisibleRangesForRange(o,i,r,M){if(!this._renderedViewLine)return null;i=i|0,r=r|0,i=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,i)),r=Math.min(this._renderedViewLine.input.lineContent.length+1,Math.max(1,r));const N=this._renderedViewLine.input.stopRenderingLineAfter|0;let $=!1;N!==-1&&i>N+1&&r>N+1&&($=!0),N!==-1&&i>N+1&&(i=N+1),N!==-1&&r>N+1&&(r=N+1);const pe=this._renderedViewLine.getVisibleRangesForRange(o,i,r,M);return pe&&pe.length>0?new ne($,pe):null}getColumnOfNodeOffset(o,i,r){return this._renderedViewLine?this._renderedViewLine.getColumnOfNodeOffset(o,i,r):1}}re.CLASS_NAME="view-line";class we{constructor(o,i,r){this.domNode=o,this.input=i,this._characterMapping=r,this._charWidth=i.spaceWidth}getWidth(){return Math.round(this._getCharPosition(this._characterMapping.length))}getWidthIsFast(){return!0}monospaceAssumptionsAreValid(){if(!this.domNode)return De;const o=this.getWidth(),i=this.domNode.domNode.firstChild.offsetWidth;return Math.abs(o-i)>=2&&(console.warn("monospace assumptions have been violated, therefore disabling monospace optimizations!"),De=!1),De}toSlowRenderedLine(){return ye(this.domNode,this.input,this._characterMapping,!1,0)}getVisibleRangesForRange(o,i,r,M){const N=this._getCharPosition(i),$=this._getCharPosition(r);return[new H(N,$-N)]}_getCharPosition(o){const i=this._characterMapping.getAbsoluteOffset(o);return this._charWidth*i}getColumnOfNodeOffset(o,i,r){const M=i.textContent.length;let N=-1;for(;i;)i=i.previousSibling,N++;return this._characterMapping.getColumn(new ce.a(N,r),M)}}class Ie{constructor(o,i,r,M,N){if(this.domNode=o,this.input=i,this._characterMapping=r,this._isWhitespaceOnly=/^\s*$/.test(i.lineContent),this._containsForeignElements=N,this._cachedWidth=-1,this._pixelOffsetCache=null,!M||this._characterMapping.length===0){this._pixelOffsetCache=new Float32Array(Math.max(2,this._characterMapping.length+1));for(let $=0,pe=this._characterMapping.length;$<=pe;$++)this._pixelOffsetCache[$]=-1}}_getReadingTarget(o){return o.domNode.firstChild}getWidth(){return this.domNode?(this._cachedWidth===-1&&(this._cachedWidth=this._getReadingTarget(this.domNode).offsetWidth),this._cachedWidth):0}getWidthIsFast(){return!(this._cachedWidth===-1)}getVisibleRangesForRange(o,i,r,M){if(!this.domNode)return null;if(this._pixelOffsetCache!==null){const N=this._readPixelOffset(this.domNode,o,i,M);if(N===-1)return null;const $=this._readPixelOffset(this.domNode,o,r,M);return $===-1?null:[new H(N,$-N)]}return this._readVisibleRangesForRange(this.domNode,o,i,r,M)}_readVisibleRangesForRange(o,i,r,M,N){if(r===M){const $=this._readPixelOffset(o,i,r,N);return $===-1?null:[new H($,0)]}else return this._readRawVisibleRangesForRange(o,r,M,N)}_readPixelOffset(o,i,r,M){if(this._characterMapping.length===0){if(this._containsForeignElements===0)return 0;if(this._containsForeignElements===2)return 0;if(this._containsForeignElements===1)return this.getWidth();const N=this._getReadingTarget(o);return N.firstChild?N.firstChild.offsetWidth:0}if(this._pixelOffsetCache!==null){const N=this._pixelOffsetCache[r];if(N!==-1)return N;const $=this._actualReadPixelOffset(o,i,r,M);return this._pixelOffsetCache[r]=$,$}return this._actualReadPixelOffset(o,i,r,M)}_actualReadPixelOffset(o,i,r,M){if(this._characterMapping.length===0){const _e=Ce.readHorizontalRanges(this._getReadingTarget(o),0,0,0,0,M.clientRectDeltaLeft,M.endNode);return!_e||_e.length===0?-1:_e[0].left}if(r===this._characterMapping.length&&this._isWhitespaceOnly&&this._containsForeignElements===0)return this.getWidth();const N=this._characterMapping.getDomPosition(r),$=Ce.readHorizontalRanges(this._getReadingTarget(o),N.partIndex,N.charIndex,N.partIndex,N.charIndex,M.clientRectDeltaLeft,M.endNode);if(!$||$.length===0)return-1;const pe=$[0].left;if(this.input.isBasicASCII){const _e=this._characterMapping.getAbsoluteOffset(r),Ke=Math.round(this.input.spaceWidth*_e);if(Math.abs(Ke-pe)<=1)return Ke}return pe}_readRawVisibleRangesForRange(o,i,r,M){if(i===1&&r===this._characterMapping.length)return[new H(0,this.getWidth())];const N=this._characterMapping.getDomPosition(i),$=this._characterMapping.getDomPosition(r);return Ce.readHorizontalRanges(this._getReadingTarget(o),N.partIndex,N.charIndex,$.partIndex,$.charIndex,M.clientRectDeltaLeft,M.endNode)}getColumnOfNodeOffset(o,i,r){const M=i.textContent.length;let N=-1;for(;i;)i=i.previousSibling,N++;return this._characterMapping.getColumn(new ce.a(N,r),M)}}class ge extends Ie{_readVisibleRangesForRange(o,i,r,M,N){const $=super._readVisibleRangesForRange(o,i,r,M,N);if(!$||$.length===0||r===M||r===1&&M===this._characterMapping.length)return $;if(!this.input.containsRTL){const pe=this._readPixelOffset(o,i,M,N);if(pe!==-1){const _e=$[$.length-1];_e.left=4&&o[0]===3&&o[3]===7}static isStrictChildOfViewLines(o){return o.length>4&&o[0]===3&&o[3]===7}static isChildOfScrollableElement(o){return o.length>=2&&o[0]===3&&o[1]===5}static isChildOfMinimap(o){return o.length>=2&&o[0]===3&&o[1]===8}static isChildOfContentWidgets(o){return o.length>=4&&o[0]===3&&o[3]===1}static isChildOfOverflowingContentWidgets(o){return o.length>=1&&o[0]===2}static isChildOfOverlayWidgets(o){return o.length>=2&&o[0]===3&&o[1]===4}}class le{constructor(o,i,r){this.model=o.model;const M=o.configuration.options;this.layoutInfo=M.get(129),this.viewDomNode=i.viewDomNode,this.lineHeight=M.get(58),this.stickyTabStops=M.get(103),this.typicalHalfwidthCharacterWidth=M.get(43).typicalHalfwidthCharacterWidth,this.lastRenderData=r,this._context=o,this._viewHelper=i}getZoneAtCoord(o){return le.getZoneAtCoord(this._context,o)}static getZoneAtCoord(o,i){const r=o.viewLayout.getWhitespaceAtVerticalOffset(i);if(r){const M=r.verticalOffset+r.height/2,N=o.model.getLineCount();let $=null,pe,_e=null;return r.afterLineNumber!==N&&(_e=new Te.a(r.afterLineNumber+1,1)),r.afterLineNumber>0&&($=new Te.a(r.afterLineNumber,o.model.getLineMaxColumn(r.afterLineNumber))),_e===null?pe=$:$===null?pe=_e:i=o.layoutInfo.glyphMarginLeft,this.isInContentArea=!this.isInMarginArea,this.mouseColumn=Math.max(0,eo._getMouseColumn(this.mouseContentHorizontalOffset,o.typicalHalfwidthCharacterWidth))}}class it extends Pe{constructor(o,i,r,M){super(o,i,r);this._ctx=o,M?(this.target=M,this.targetPath=Se.collect(M,o.viewDomNode)):(this.target=null,this.targetPath=new Uint8Array(0))}toString(){return`pos(${this.pos.x},${this.pos.y}), editorPos(${this.editorPos.x},${this.editorPos.y}), mouseVerticalOffset: ${this.mouseVerticalOffset}, mouseContentHorizontalOffset: ${this.mouseContentHorizontalOffset} target: ${this.target?this.target.outerHTML:null}`}fulfill(o,i=null,r=null,M=null){let N=this.mouseColumn;return i&&i.column$.contentLeft+$.width)continue;const pe=o.getVerticalOffsetForLineNumber($.position.lineNumber);if(pe<=N&&N<=pe+$.height)return i.fulfill(6,$.position,null,{mightBeForeignElement:!1})}}return null}static _hitTestViewZone(o,i){const r=o.getZoneAtCoord(i.mouseVerticalOffset);if(r){const M=i.isInContentArea?8:5;return i.fulfill(M,r.position,null,r)}return null}static _hitTestTextArea(o,i){return lt.isTextArea(i.targetPath)?o.lastRenderData.lastTextareaPosition?i.fulfill(6,o.lastRenderData.lastTextareaPosition,null,{mightBeForeignElement:!1}):i.fulfill(1,o.lastRenderData.lastTextareaPosition):null}static _hitTestMargin(o,i){if(i.isInMarginArea){const r=o.getFullLineRangeAtCoord(i.mouseVerticalOffset),M=r.range.getStartPosition();let N=Math.abs(i.pos.x-i.editorPos.x);const $={isAfterLines:r.isAfterLines,glyphMarginLeft:o.layoutInfo.glyphMarginLeft,glyphMarginWidth:o.layoutInfo.glyphMarginWidth,lineNumbersWidth:o.layoutInfo.lineNumbersWidth,offsetX:N};return N-=o.layoutInfo.glyphMarginLeft,N<=o.layoutInfo.glyphMarginWidth?i.fulfill(2,M,r.range,$):(N-=o.layoutInfo.glyphMarginWidth,N<=o.layoutInfo.lineNumbersWidth?i.fulfill(3,M,r.range,$):(N-=o.layoutInfo.lineNumbersWidth,i.fulfill(4,M,r.range,$)))}return null}static _hitTestViewLines(o,i,r){if(!lt.isChildOfViewLines(i.targetPath))return null;if(o.isInTopPadding(i.mouseVerticalOffset))return i.fulfill(7,new Te.a(1,1),null,Dt);if(o.isAfterLines(i.mouseVerticalOffset)||o.isInBottomPadding(i.mouseVerticalOffset)){const N=o.model.getLineCount(),$=o.model.getLineMaxColumn(N);return i.fulfill(7,new Te.a(N,$),null,Dt)}if(r){if(lt.isStrictChildOfViewLines(i.targetPath)){const N=o.getLineNumberAtVerticalOffset(i.mouseVerticalOffset);if(o.model.getLineLength(N)===0){const pe=o.getLineWidth(N),_e=kt(i.mouseContentHorizontalOffset-pe);return i.fulfill(7,new Te.a(N,1),null,_e)}const $=o.getLineWidth(N);if(i.mouseContentHorizontalOffset>=$){const pe=kt(i.mouseContentHorizontalOffset-$),_e=new Te.a(N,o.model.getLineMaxColumn(N));return i.fulfill(7,_e,null,pe)}}return i.fulfill(0)}const M=eo._doHitTest(o,i);return M.type===1?eo.createMouseTargetFromHitTestPosition(o,i,M.spanNode,M.position,M.injectedText):this._createMouseTarget(o,i.withTarget(M.hitTarget),!0)}static _hitTestMinimap(o,i){if(lt.isChildOfMinimap(i.targetPath)){const r=o.getLineNumberAtVerticalOffset(i.mouseVerticalOffset),M=o.model.getLineMaxColumn(r);return i.fulfill(11,new Te.a(r,M))}return null}static _hitTestScrollbarSlider(o,i){if(lt.isChildOfScrollableElement(i.targetPath)&&(i.target&&i.target.nodeType===1)){const r=i.target.className;if(r&&/\b(slider|scrollbar)\b/.test(r)){const M=o.getLineNumberAtVerticalOffset(i.mouseVerticalOffset),N=o.model.getLineMaxColumn(M);return i.fulfill(11,new Te.a(M,N))}}return null}static _hitTestScrollbar(o,i){if(lt.isChildOfScrollableElement(i.targetPath)){const r=o.getLineNumberAtVerticalOffset(i.mouseVerticalOffset),M=o.model.getLineMaxColumn(r);return i.fulfill(11,new Te.a(r,M))}return null}getMouseColumn(o,i){const r=this._context.configuration.options,M=r.get(129),N=this._context.viewLayout.getCurrentScrollLeft()+i.x-o.x-M.contentLeft;return eo._getMouseColumn(N,r.get(43).typicalHalfwidthCharacterWidth)}static _getMouseColumn(o,i){if(o<0)return 1;const r=Math.round(o/i);return r+1}static createMouseTargetFromHitTestPosition(o,i,r,M,N){const $=M.lineNumber,pe=M.column,_e=o.getLineWidth($);if(i.mouseContentHorizontalOffset>_e){const so=kt(i.mouseContentHorizontalOffset-_e);return i.fulfill(7,M,null,so)}const Ke=o.visibleRangeForPosition($,pe);if(!Ke)return i.fulfill(0,M);const Je=Ke.left;if(i.mouseContentHorizontalOffset===Je)return i.fulfill(6,M,null,{mightBeForeignElement:!!N});const at=[];if(at.push({offset:Ke.left,column:pe}),pe>1){const so=o.visibleRangeForPosition($,pe-1);so&&at.push({offset:so.left,column:pe-1})}const jt=o.model.getLineMaxColumn($);if(peso.offset-Co.offset);const _t=i.pos.toClientCoordinates(),Ht=r.getBoundingClientRect(),Jt=Ht.left<=_t.clientX&&_t.clientX<=Ht.right;for(let so=1;so=i.editorPos.y+o.layoutInfo.height&&($=i.editorPos.y+o.layoutInfo.height-1);const pe=new D(i.pos.x,$),_e=this._actualDoHitTestWithCaretRangeFromPoint(o,pe.toClientCoordinates());return _e.type===1?_e:this._actualDoHitTestWithCaretRangeFromPoint(o,i.pos.toClientCoordinates())}static _actualDoHitTestWithCaretRangeFromPoint(o,i){const r=S.F(o.viewDomNode);let M;if(r?typeof r.caretRangeFromPoint=="undefined"?M=bo(r,i.clientX,i.clientY):M=r.caretRangeFromPoint(i.clientX,i.clientY):M=document.caretRangeFromPoint(i.clientX,i.clientY),!M||!M.startContainer)return new rt;const N=M.startContainer;if(N.nodeType===N.TEXT_NODE){const $=N.parentNode,pe=$?$.parentNode:null,_e=pe?pe.parentNode:null,Ke=_e&&_e.nodeType===_e.ELEMENT_NODE?_e.className:null;return Ke===re.CLASS_NAME?Pt.createFromDOMInfo(o,$,M.startOffset):new rt(N.parentNode)}else if(N.nodeType===N.ELEMENT_NODE){const $=N.parentNode,pe=$?$.parentNode:null,_e=pe&&pe.nodeType===pe.ELEMENT_NODE?pe.className:null;return _e===re.CLASS_NAME?Pt.createFromDOMInfo(o,N,N.textContent.length):new rt(N)}return new rt}static _doHitTestWithCaretPositionFromPoint(o,i){const r=document.caretPositionFromPoint(i.clientX,i.clientY);if(r.offsetNode.nodeType===r.offsetNode.TEXT_NODE){const M=r.offsetNode.parentNode,N=M?M.parentNode:null,$=N?N.parentNode:null,pe=$&&$.nodeType===$.ELEMENT_NODE?$.className:null;return pe===re.CLASS_NAME?Pt.createFromDOMInfo(o,r.offsetNode.parentNode,r.offset):new rt(r.offsetNode.parentNode)}if(r.offsetNode.nodeType===r.offsetNode.ELEMENT_NODE){const M=r.offsetNode.parentNode,N=M&&M.nodeType===M.ELEMENT_NODE?M.className:null,$=M?M.parentNode:null,pe=$&&$.nodeType===$.ELEMENT_NODE?$.className:null;if(N===re.CLASS_NAME){const _e=r.offsetNode.childNodes[Math.min(r.offset,r.offsetNode.childNodes.length-1)];if(_e)return Pt.createFromDOMInfo(o,_e,0)}else if(pe===re.CLASS_NAME)return Pt.createFromDOMInfo(o,r.offsetNode,0)}return new rt(r.offsetNode)}static _snapToSoftTabBoundary(o,i){const r=i.getLineContent(o.lineNumber),{tabSize:M}=i.getTextModelOptions(),N=nt.a.atomicPosition(r,o.column-1,M,2);return N!==-1?new Te.a(o.lineNumber,N+1):o}static _doHitTest(o,i){let r=new rt;if(typeof document.caretRangeFromPoint=="function"?r=this._doHitTestWithCaretRangeFromPoint(o,i):document.caretPositionFromPoint&&(r=this._doHitTestWithCaretPositionFromPoint(o,i.pos.toClientCoordinates())),r.type===1){const M=o.model.getInjectedTextAt(r.position),N=o.model.normalizePosition(r.position,2);(M||!N.equals(r.position))&&(r=new wt(N,r.spanNode,M))}return r.type===1&&o.stickyTabStops&&(r=new wt(this._snapToSoftTabBoundary(r.position,o.model),r.spanNode,r.injectedText)),r}}function bo(o,i,r){const M=document.createRange();let N=o.elementFromPoint(i,r);if(N!==null){for(;N&&N.firstChild&&N.firstChild.nodeType!==N.firstChild.TEXT_NODE&&N.lastChild&&N.lastChild.firstChild;)N=N.lastChild;const $=N.getBoundingClientRect(),pe=window.getComputedStyle(N,null).getPropertyValue("font"),_e=N.innerText;let Ke=$.left,Je=0,at;if(i>$.left+$.width)Je=_e.length;else{const jt=ao.getInstance();for(let _t=0;_t<_e.length+1;_t++){if(at=jt.getCharWidth(_e.charAt(_t),pe)/2,Ke+=at,ithis._createMouseTarget($,pe),$=>this._getMouseColumn($))),this.lastMouseLeaveTime=-1,this._height=this._context.configuration.options.get(129).height;const M=new z(this.viewHelper.viewDomNode);this._register(M.onContextMenu(this.viewHelper.viewDomNode,$=>this._onContextMenu($,!0))),this._register(M.onMouseMoveThrottled(this.viewHelper.viewDomNode,$=>this._onMouseMove($),Lo(this.mouseTargetFactory),xo.MOUSE_MOVE_MINIMUM_TIME)),this._register(M.onMouseUp(this.viewHelper.viewDomNode,$=>this._onMouseUp($))),this._register(M.onMouseLeave(this.viewHelper.viewDomNode,$=>this._onMouseLeave($))),this._register(M.onMouseDown(this.viewHelper.viewDomNode,$=>this._onMouseDown($)));const N=$=>{if(this.viewController.emitMouseWheel($),!this._context.configuration.options.get(67))return;const pe=new y.b($),_e=l.f?($.metaKey||$.ctrlKey)&&!$.shiftKey&&!$.altKey:$.ctrlKey&&!$.metaKey&&!$.shiftKey&&!$.altKey;if(_e){const Ke=So.a.getZoomLevel(),Je=pe.deltaY>0?1:-1;So.a.setZoomLevel(Ke+Je),pe.preventDefault(),pe.stopPropagation()}};this._register(S.i(this.viewHelper.viewDomNode,S.d.MOUSE_WHEEL,N,{capture:!0,passive:!1})),this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}onConfigurationChanged(o){if(o.hasChanged(129)){const i=this._context.configuration.options.get(129).height;this._height!==i&&(this._height=i,this._mouseDownOperation.onHeightChanged())}return!1}onCursorStateChanged(o){return this._mouseDownOperation.onCursorStateChanged(o),!1}onFocusChanged(o){return!1}onScrollChanged(o){return this._mouseDownOperation.onScrollChanged(),!1}getTargetAtClientPoint(o,i){const r=new j(o,i),M=r.toPageCoordinates(),N=G(this.viewHelper.viewDomNode);return M.yN.y+N.height||M.xN.x+N.width?null:this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),N,M,null)}_createMouseTarget(o,i){let r=o.target;if(!this.viewHelper.viewDomNode.contains(r)){const M=S.F(this.viewHelper.viewDomNode);M&&(r=M.elementsFromPoint(o.posx,o.posy).find(N=>this.viewHelper.viewDomNode.contains(N)))}return this.mouseTargetFactory.createMouseTarget(this.viewHelper.getLastRenderData(),o.editorPos,o.pos,i?r:null)}_getMouseColumn(o){return this.mouseTargetFactory.getMouseColumn(o.editorPos,o.pos)}_onContextMenu(o,i){this.viewController.emitContextMenu({event:o,target:this._createMouseTarget(o,i)})}_onMouseMove(o){if(this._mouseDownOperation.isActive())return;const i=o.timestamp;if(i{o.preventDefault(),this.viewHelper.focusTextArea()};if(Ke&&(r||N&&$))Je(),this._mouseDownOperation.start(i.type,o);else if(M)o.preventDefault();else if(pe){const at=i.detail;this.viewHelper.shouldSuppressMouseDownOnViewZone(at.viewZoneId)&&(Je(),this._mouseDownOperation.start(i.type,o),o.preventDefault())}else _e&&this.viewHelper.shouldSuppressMouseDownOnWidget(i.detail)&&(Je(),o.preventDefault());this.viewController.emitMouseDown({event:o,target:i})}}xo.MOUSE_MOVE_MINIMUM_TIME=100;class _o extends d.a{constructor(o,i,r,M,N){super();this._context=o,this._viewController=i,this._viewHelper=r,this._createMouseTarget=M,this._getMouseColumn=N,this._mouseMoveMonitor=this._register(new K(this._viewHelper.viewDomNode)),this._onScrollTimeout=this._register(new C.g),this._mouseState=new to,this._currentSelection=new m.a(1,1,1,1),this._isActive=!1,this._lastMouseEvent=null}dispose(){super.dispose()}isActive(){return this._isActive}_onMouseDownThenMove(o){this._lastMouseEvent=o,this._mouseState.setModifiers(o);const i=this._findMousePosition(o,!0);if(!i)return;this._mouseState.isDragAndDrop?this._viewController.emitMouseDrag({event:o,target:i}):this._dispatchMouse(i,!0)}start(o,i){this._lastMouseEvent=i,this._mouseState.setStartedOnLineNumbers(o===3),this._mouseState.setStartButtons(i),this._mouseState.setModifiers(i);const r=this._findMousePosition(i,!0);if(!r||!r.position)return;this._mouseState.trySetCount(i.detail,r.position),i.detail=this._mouseState.count;const M=this._context.configuration.options;if(!M.get(80)&&M.get(31)&&!M.get(18)&&!this._mouseState.altKey&&i.detail<2&&!this._isActive&&!this._currentSelection.isEmpty()&&r.type===6&&r.position&&this._currentSelection.containsPosition(r.position)){this._mouseState.isDragAndDrop=!0,this._isActive=!0,this._mouseMoveMonitor.startMonitoring(i.target,i.buttons,Lo(null),N=>this._onMouseDownThenMove(N),N=>{const $=this._findMousePosition(this._lastMouseEvent,!0);N&&N instanceof KeyboardEvent?this._viewController.emitMouseDropCanceled():this._viewController.emitMouseDrop({event:this._lastMouseEvent,target:$?this._createMouseTarget(this._lastMouseEvent,!0):null}),this._stop()});return}this._mouseState.isDragAndDrop=!1,this._dispatchMouse(r,i.shiftKey),this._isActive||(this._isActive=!0,this._mouseMoveMonitor.startMonitoring(i.target,i.buttons,Lo(null),N=>this._onMouseDownThenMove(N),()=>this._stop()))}_stop(){this._isActive=!1,this._onScrollTimeout.cancel()}onHeightChanged(){this._mouseMoveMonitor.stopMonitoring()}onScrollChanged(){if(!this._isActive)return;this._onScrollTimeout.setIfNotSet(()=>{if(!this._lastMouseEvent)return;const o=this._findMousePosition(this._lastMouseEvent,!1);if(!o)return;if(this._mouseState.isDragAndDrop)return;this._dispatchMouse(o,!0)},10)}onCursorStateChanged(o){this._currentSelection=o.selections[0]}_getPositionOutsideEditor(o){const i=o.editorPos,r=this._context.model,M=this._context.viewLayout,N=this._getMouseColumn(o);if(o.posyi.y+i.height){const pe=M.getCurrentScrollTop()+(o.posy-i.y),_e=le.getZoneAtCoord(this._context,pe);if(_e){const Je=this._helpPositionJumpOverViewZone(_e);if(Je)return new ht(null,13,N,Je)}const Ke=M.getLineNumberAtVerticalOffset(pe);return new ht(null,13,N,new Te.a(Ke,r.getLineMaxColumn(Ke)))}const $=M.getLineNumberAtVerticalOffset(M.getCurrentScrollTop()+(o.posy-i.y));return o.posxi.x+i.width?new ht(null,13,N,new Te.a($,r.getLineMaxColumn($))):null}_findMousePosition(o,i){const r=this._getPositionOutsideEditor(o);if(r)return r;const M=this._createMouseTarget(o,i),N=M.position;if(!N)return null;if(M.type===8||M.type===5){const $=this._helpPositionJumpOverViewZone(M.detail);if($)return new ht(M.element,M.type,M.mouseColumn,$,null,M.detail)}return M}_helpPositionJumpOverViewZone(o){const i=new Te.a(this._currentSelection.selectionStartLineNumber,this._currentSelection.selectionStartColumn),r=o.positionBefore,M=o.positionAfter;return r&&M?r.isBefore(i)?r:M:null}_dispatchMouse(o,i){if(!o.position)return;this._viewController.dispatchMouse({position:o.position,mouseColumn:o.mouseColumn,startedOnLineNumbers:this._mouseState.startedOnLineNumbers,inSelectionMode:i,mouseDownCount:this._mouseState.count,altKey:this._mouseState.altKey,ctrlKey:this._mouseState.ctrlKey,metaKey:this._mouseState.metaKey,shiftKey:this._mouseState.shiftKey,leftButton:this._mouseState.leftButton,middleButton:this._mouseState.middleButton})}}class to{constructor(){this._altKey=!1,this._ctrlKey=!1,this._metaKey=!1,this._shiftKey=!1,this._leftButton=!1,this._middleButton=!1,this._startedOnLineNumbers=!1,this._lastMouseDownPosition=null,this._lastMouseDownPositionEqualCount=0,this._lastMouseDownCount=0,this._lastSetMouseDownCountTime=0,this.isDragAndDrop=!1}get altKey(){return this._altKey}get ctrlKey(){return this._ctrlKey}get metaKey(){return this._metaKey}get shiftKey(){return this._shiftKey}get leftButton(){return this._leftButton}get middleButton(){return this._middleButton}get startedOnLineNumbers(){return this._startedOnLineNumbers}get count(){return this._lastMouseDownCount}setModifiers(o){this._altKey=o.altKey,this._ctrlKey=o.ctrlKey,this._metaKey=o.metaKey,this._shiftKey=o.shiftKey}setStartButtons(o){this._leftButton=o.leftButton,this._middleButton=o.middleButton}setStartedOnLineNumbers(o){this._startedOnLineNumbers=o}trySetCount(o,i){const r=new Date().getTime();r-this._lastSetMouseDownCountTime>to.CLEAR_MOUSE_DOWN_COUNT_TIME&&(o=1),this._lastSetMouseDownCountTime=r,o>this._lastMouseDownCount+1&&(o=this._lastMouseDownCount+1),this._lastMouseDownPosition&&this._lastMouseDownPosition.equals(i)?this._lastMouseDownPositionEqualCount++:this._lastMouseDownPositionEqualCount=1,this._lastMouseDownPosition=i,this._lastMouseDownCount=Math.min(o,this._lastMouseDownPositionEqualCount)}}to.CLEAR_MOUSE_DOWN_COUNT_TIME=400;var Wt=e("CjF5"),Ge=e("5TxY");class mt extends xo{constructor(o,i,r){super(o,i,r);this._register(g.b.addTarget(this.viewHelper.linesContentDomNode)),this._register(S.i(this.viewHelper.linesContentDomNode,g.a.Tap,N=>this.onTap(N))),this._register(S.i(this.viewHelper.linesContentDomNode,g.a.Change,N=>this.onChange(N))),this._register(S.i(this.viewHelper.linesContentDomNode,g.a.Contextmenu,N=>this._onContextMenu(new B(N,this.viewHelper.viewDomNode),!1))),this._lastPointerType="mouse",this._register(S.i(this.viewHelper.linesContentDomNode,"pointerdown",N=>{const $=N.pointerType;if($==="mouse"){this._lastPointerType="mouse";return}else $==="touch"?this._lastPointerType="touch":this._lastPointerType="pen"}));const M=new Y(this.viewHelper.viewDomNode);this._register(M.onPointerMoveThrottled(this.viewHelper.viewDomNode,N=>this._onMouseMove(N),Lo(this.mouseTargetFactory),xo.MOUSE_MOVE_MINIMUM_TIME)),this._register(M.onPointerUp(this.viewHelper.viewDomNode,N=>this._onMouseUp(N))),this._register(M.onPointerLeave(this.viewHelper.viewDomNode,N=>this._onMouseLeave(N))),this._register(M.onPointerDown(this.viewHelper.viewDomNode,N=>this._onMouseDown(N)))}onTap(o){if(!o.initialTarget||!this.viewHelper.linesContentDomNode.contains(o.initialTarget))return;o.preventDefault(),this.viewHelper.focusTextArea();const i=this._createMouseTarget(new B(o,this.viewHelper.viewDomNode),!1);i.position&&this.viewController.dispatchMouse({position:i.position,mouseColumn:i.position.column,startedOnLineNumbers:!1,mouseDownCount:o.tapCount,inSelectionMode:!1,altKey:!1,ctrlKey:!1,metaKey:!1,shiftKey:!1,leftButton:!1,middleButton:!1})}onChange(o){this._lastPointerType==="touch"&&this._context.model.deltaScrollNow(-o.translationX,-o.translationY)}_onMouseDown(o){if(o.browserEvent.pointerType==="touch")return;super._onMouseDown(o)}}class Gt extends xo{constructor(o,i,r){super(o,i,r);this._register(g.b.addTarget(this.viewHelper.linesContentDomNode)),this._register(S.i(this.viewHelper.linesContentDomNode,g.a.Tap,M=>this.onTap(M))),this._register(S.i(this.viewHelper.linesContentDomNode,g.a.Change,M=>this.onChange(M))),this._register(S.i(this.viewHelper.linesContentDomNode,g.a.Contextmenu,M=>this._onContextMenu(new B(M,this.viewHelper.viewDomNode),!1)))}onTap(o){o.preventDefault(),this.viewHelper.focusTextArea();const i=this._createMouseTarget(new B(o,this.viewHelper.viewDomNode),!1);if(i.position){const r=document.createEvent("CustomEvent");r.initEvent(Ge.d.Tap,!1,!0),this.viewHelper.dispatchTextAreaEvent(r),this.viewController.moveTo(i.position)}}onChange(o){this._context.model.deltaScrollNow(-o.translationX,-o.translationY)}}class qe extends d.a{constructor(o,i,r){super();l.c&&Wt.a.pointerEvents?this.handler=this._register(new mt(o,i,r)):window.TouchEvent?this.handler=this._register(new Gt(o,i,r)):this.handler=this._register(new xo(o,i,r))}getTargetAtClientPoint(o,i){return this.handler.getTargetAtClientPoint(o,i)}}var tt=e("VvMK"),gt=e("N0LK"),$e=e("Comh"),je=e("Krc3");class Ue extends Q{}var Ye=e("kYye"),Mt=e("t9D7");class Bt extends Ue{constructor(o){super();this._context=o,this._readConfig(),this._lastCursorModelPosition=new Te.a(1,1),this._renderResult=null,this._activeLineNumber=1,this._context.addEventHandler(this)}_readConfig(){const o=this._context.configuration.options;this._lineHeight=o.get(58);const i=o.get(59);this._renderLineNumbers=i.renderType,this._renderCustomLineNumbers=i.renderFn,this._renderFinalNewline=o.get(83);const r=o.get(129);this._lineNumbersLeft=r.lineNumbersLeft,this._lineNumbersWidth=r.lineNumbersWidth}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(o){return this._readConfig(),!0}onCursorStateChanged(o){const i=o.selections[0].getPosition();this._lastCursorModelPosition=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(i);let r=!1;return this._activeLineNumber!==i.lineNumber&&(this._activeLineNumber=i.lineNumber,r=!0),(this._renderLineNumbers===2||this._renderLineNumbers===3)&&(r=!0),r}onFlushed(o){return!0}onLinesChanged(o){return!0}onLinesDeleted(o){return!0}onLinesInserted(o){return!0}onScrollChanged(o){return o.scrollTopChanged}onZonesChanged(o){return!0}_getLineRenderLineNumber(o){const i=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(new Te.a(o,1));if(i.column!==1)return"";const r=i.lineNumber;if(this._renderCustomLineNumbers)return this._renderCustomLineNumbers(r);if(this._renderLineNumbers===2){const M=Math.abs(this._lastCursorModelPosition.lineNumber-r);return M===0?''+r+"":String(M)}return this._renderLineNumbers===3?this._lastCursorModelPosition.lineNumber===r||r%10===0?String(r):"":String(r)}prepareRender(o){if(this._renderLineNumbers===0){this._renderResult=null;return}const i=l.d?this._lineHeight%2===0?" lh-even":" lh-odd":"",r=o.visibleRange.startLineNumber,M=o.visibleRange.endLineNumber,N='
    ',$=this._context.model.getLineCount(),pe=[];for(let _e=r;_e<=M;_e++){const Ke=_e-r;if(!this._renderFinalNewline&&(_e===$&&this._context.model.getLineLength(_e)===0)){pe[Ke]="";continue}const Je=this._getLineRenderLineNumber(_e);Je?_e===this._activeLineNumber?pe[Ke]='
    '+Je+"
    ":pe[Ke]=N+Je+"
    ":pe[Ke]=""}this._renderResult=pe}render(o,i){if(!this._renderResult)return"";const r=i-o;return r<0||r>=this._renderResult.length?"":this._renderResult[r]}}Bt.CLASS_NAME="line-numbers",Object(Mt.f)((o,i)=>{const r=o.getColor(Ye.D);r&&i.addRule(`.monaco-editor .line-numbers { color: ${r}; }`);const M=o.getColor(Ye.b);M&&i.addRule(`.monaco-editor .line-numbers.active-line-number { color: ${M}; }`)});class $t extends ee{constructor(o){super(o);const i=this._context.configuration.options,r=i.get(129);this._canUseLayerHinting=!i.get(28),this._contentLeft=r.contentLeft,this._glyphMarginLeft=r.glyphMarginLeft,this._glyphMarginWidth=r.glyphMarginWidth,this._domNode=Object(c.b)(document.createElement("div")),this._domNode.setClassName($t.OUTER_CLASS_NAME),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._glyphMarginBackgroundDomNode=Object(c.b)(document.createElement("div")),this._glyphMarginBackgroundDomNode.setClassName($t.CLASS_NAME),this._domNode.appendChild(this._glyphMarginBackgroundDomNode)}dispose(){super.dispose()}getDomNode(){return this._domNode}onConfigurationChanged(o){const i=this._context.configuration.options,r=i.get(129);return this._canUseLayerHinting=!i.get(28),this._contentLeft=r.contentLeft,this._glyphMarginLeft=r.glyphMarginLeft,this._glyphMarginWidth=r.glyphMarginWidth,!0}onScrollChanged(o){return super.onScrollChanged(o)||o.scrollTopChanged}prepareRender(o){}render(o){this._domNode.setLayerHinting(this._canUseLayerHinting),this._domNode.setContain("strict");const i=o.scrollTop-o.bigNumbersDelta;this._domNode.setTop(-i);const r=Math.min(o.scrollHeight,1e6);this._domNode.setHeight(r),this._domNode.setWidth(this._contentLeft),this._glyphMarginBackgroundDomNode.setLeft(this._glyphMarginLeft),this._glyphMarginBackgroundDomNode.setWidth(this._glyphMarginWidth),this._glyphMarginBackgroundDomNode.setHeight(r)}}$t.CLASS_NAME="glyph-margin",$t.OUTER_CLASS_NAME="margin";var uo=e("5v8Y"),Zt=e("51su");class zt{constructor(o,i,r){this._visibleTextAreaBrand=void 0,this.top=o,this.left=i,this.width=r}setWidth(o){return new zt(this.top,this.left,o)}}const ut=b.g;class Ct extends ee{constructor(o,i,r){super(o);this._primaryCursorPosition=new Te.a(1,1),this._primaryCursorVisibleRange=null,this._viewController=i,this._viewHelper=r,this._scrollLeft=0,this._scrollTop=0;const M=this._context.configuration.options,N=M.get(129);this._setAccessibilityOptions(M),this._contentLeft=N.contentLeft,this._contentWidth=N.contentWidth,this._contentHeight=N.height,this._fontInfo=M.get(43),this._lineHeight=M.get(58),this._emptySelectionClipboard=M.get(32),this._copyWithSyntaxHighlighting=M.get(21),this._visibleTextArea=null,this._selections=[new m.a(1,1,1,1)],this._modelSelections=[new m.a(1,1,1,1)],this._lastRenderPosition=null,this.textArea=Object(c.b)(document.createElement("textarea")),Se.write(this.textArea,6),this.textArea.setClassName(`inputarea ${Zt.a}`),this.textArea.setAttribute("wrap","off"),this.textArea.setAttribute("autocorrect","off"),this.textArea.setAttribute("autocapitalize","off"),this.textArea.setAttribute("autocomplete","off"),this.textArea.setAttribute("spellcheck","false"),this.textArea.setAttribute("aria-label",this._getAriaLabel(M)),this.textArea.setAttribute("tabindex",String(M.get(111))),this.textArea.setAttribute("role","textbox"),this.textArea.setAttribute("aria-roledescription",O.a("editor","editor")),this.textArea.setAttribute("aria-multiline","true"),this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),M.get(30)&&M.get(80)&&this.textArea.setAttribute("readonly","true"),this.textAreaCover=Object(c.b)(document.createElement("div")),this.textAreaCover.setPosition("absolute");const $={getLineCount:()=>this._context.model.getLineCount(),getLineMaxColumn:_e=>this._context.model.getLineMaxColumn(_e),getValueInRange:(_e,Ke)=>this._context.model.getValueInRange(_e,Ke)},pe={getDataToCopy:_e=>{const Ke=this._context.model.getPlainTextToCopy(this._modelSelections,this._emptySelectionClipboard,l.i),Je=this._context.model.getEOL(),at=this._emptySelectionClipboard&&this._modelSelections.length===1&&this._modelSelections[0].isEmpty(),jt=Array.isArray(Ke)?Ke:null,_t=Array.isArray(Ke)?Ke.join(Je):Ke;let Ht,Jt=null;if(_e&&(Ge.a.forceCopyWithSyntaxHighlighting||this._copyWithSyntaxHighlighting&&_t.length<65536)){const so=this._context.model.getRichTextToCopy(this._modelSelections,this._emptySelectionClipboard);so&&(Ht=so.html,Jt=so.mode)}return{isFromEmptySelection:at,multicursorText:jt,text:_t,html:Ht,mode:Jt}},getScreenReaderContent:_e=>{if(this._accessibilitySupport===1){if(l.f){const Ke=this._selections[0];if(Ke.isEmpty()){const Je=Ke.getStartPosition();let at=this._getWordBeforePosition(Je);if(at.length===0&&(at=this._getCharacterBeforePosition(Je)),at.length>0)return new $e.b(at,at.length,at.length,Je,Je)}}return $e.b.EMPTY}if(b.e){const Ke=this._selections[0];if(Ke.isEmpty()){const Je=Ke.getStartPosition(),[at,jt]=this._getAndroidWordAtPosition(Je);if(at.length>0)return new $e.b(at,jt,jt,Je,Je)}return $e.b.EMPTY}return $e.a.fromEditorSelection(_e,$,this._selections[0],this._accessibilityPageSize,this._accessibilitySupport===0)},deduceModelPosition:(_e,Ke,Je)=>this._context.model.deduceModelPositionRelativeToViewPosition(_e,Ke,Je)};this._textAreaInput=this._register(new Ge.c(pe,this.textArea)),this._register(this._textAreaInput.onKeyDown(_e=>{this._viewController.emitKeyDown(_e)})),this._register(this._textAreaInput.onKeyUp(_e=>{this._viewController.emitKeyUp(_e)})),this._register(this._textAreaInput.onPaste(_e=>{let Ke=!1,Je=null,at=null;_e.metadata&&(Ke=this._emptySelectionClipboard&&!!_e.metadata.isFromEmptySelection,Je=typeof _e.metadata.multicursorText!="undefined"?_e.metadata.multicursorText:null,at=_e.metadata.mode),this._viewController.paste(_e.text,Ke,Je,at)})),this._register(this._textAreaInput.onCut(()=>{this._viewController.cut()})),this._register(this._textAreaInput.onType(_e=>{_e.replacePrevCharCnt||_e.replaceNextCharCnt||_e.positionDelta?($e.c&&console.log(` => compositionType: <<${_e.text}>>, ${_e.replacePrevCharCnt}, ${_e.replaceNextCharCnt}, ${_e.positionDelta}`),this._viewController.compositionType(_e.text,_e.replacePrevCharCnt,_e.replaceNextCharCnt,_e.positionDelta)):($e.c&&console.log(` => type: <<${_e.text}>>`),this._viewController.type(_e.text))})),this._register(this._textAreaInput.onSelectionChangeRequest(_e=>{this._viewController.setSelection(_e)})),this._register(this._textAreaInput.onCompositionStart(_e=>{const Ke=this._selections[0].startLineNumber,Je=this._selections[0].startColumn+_e.revealDeltaColumns;this._context.model.revealRange("keyboard",!0,new He.a(Ke,Je,Ke,Je),0,1);const at=this._viewHelper.visibleRangeForPositionRelativeToEditor(Ke,Je);at&&(this._visibleTextArea=new zt(this._context.viewLayout.getVerticalOffsetForLineNumber(Ke),at.left,ut?0:1),this._render()),this.textArea.setClassName(`inputarea ${Zt.a} ime-input`),this._viewController.compositionStart(),this._context.model.onCompositionStart()})),this._register(this._textAreaInput.onCompositionUpdate(_e=>{if(!this._visibleTextArea)return;this._visibleTextArea=this._visibleTextArea.setWidth(We(_e.data,this._fontInfo)),this._render()})),this._register(this._textAreaInput.onCompositionEnd(()=>{this._visibleTextArea=null,this._render(),this.textArea.setClassName(`inputarea ${Zt.a}`),this._viewController.compositionEnd(),this._context.model.onCompositionEnd()})),this._register(this._textAreaInput.onFocus(()=>{this._context.model.setHasFocus(!0)})),this._register(this._textAreaInput.onBlur(()=>{this._context.model.setHasFocus(!1)}))}dispose(){super.dispose()}_getAndroidWordAtPosition(o){const i='`~!@#$%^&*()-=+[{]}\\|;:",.<>/?',r=this._context.model.getLineContent(o.lineNumber),M=Object(uo.a)(i);let N=!0,$=o.column,pe=!0,_e=o.column,Ke=0;for(;Ke<50&&(N||pe);){if(N&&$<=1&&(N=!1),N){const Je=r.charCodeAt($-2),at=M.get(Je);at!==0?N=!1:$--}if(pe&&_e>r.length&&(pe=!1),pe){const Je=r.charCodeAt(_e-1),at=M.get(Je);at!==0?pe=!1:_e++}Ke++}return[r.substring($-1,_e-1),o.column-$]}_getWordBeforePosition(o){const i=this._context.model.getLineContent(o.lineNumber),r=Object(uo.a)(this._context.configuration.options.get(115));let M=o.column,N=0;for(;M>1;){const $=i.charCodeAt(M-2),pe=r.get($);if(pe!==0||N>50)return i.substring(M-1,o.column-1);N++,M--}return i.substring(0,o.column-1)}_getCharacterBeforePosition(o){if(o.column>1){const i=this._context.model.getLineContent(o.lineNumber),r=i.charAt(o.column-2);if(!gt.E(r.charCodeAt(0)))return r}return""}_getAriaLabel(o){const i=o.get(2);return i===1?O.a("accessibilityOffAriaLabel","The editor is not accessible at this time. Press {0} for options.",l.d?"Shift+Alt+F1":"Alt+F1"):o.get(4)}_setAccessibilityOptions(o){this._accessibilitySupport=o.get(2);const i=o.get(3);this._accessibilitySupport===2&&i===Oe.g.accessibilityPageSize.defaultValue?this._accessibilityPageSize=500:this._accessibilityPageSize=i}onConfigurationChanged(o){const i=this._context.configuration.options,r=i.get(129);return this._setAccessibilityOptions(i),this._contentLeft=r.contentLeft,this._contentWidth=r.contentWidth,this._contentHeight=r.height,this._fontInfo=i.get(43),this._lineHeight=i.get(58),this._emptySelectionClipboard=i.get(32),this._copyWithSyntaxHighlighting=i.get(21),this.textArea.setAttribute("aria-label",this._getAriaLabel(i)),this.textArea.setAttribute("tabindex",String(i.get(111))),(o.hasChanged(30)||o.hasChanged(80))&&(i.get(30)&&i.get(80)?this.textArea.setAttribute("readonly","true"):this.textArea.removeAttribute("readonly")),o.hasChanged(2)&&this._textAreaInput.writeScreenReaderContent("strategy changed"),!0}onCursorStateChanged(o){return this._selections=o.selections.slice(0),this._modelSelections=o.modelSelections.slice(0),this._textAreaInput.writeScreenReaderContent("selection changed"),!0}onDecorationsChanged(o){return!0}onFlushed(o){return!0}onLinesChanged(o){return!0}onLinesDeleted(o){return!0}onLinesInserted(o){return!0}onScrollChanged(o){return this._scrollLeft=o.scrollLeft,this._scrollTop=o.scrollTop,!0}onZonesChanged(o){return!0}isFocused(){return this._textAreaInput.isFocused()}focusTextArea(){this._textAreaInput.focusTextArea()}getLastRenderData(){return this._lastRenderPosition}setAriaOptions(o){o.activeDescendant?(this.textArea.setAttribute("aria-haspopup","true"),this.textArea.setAttribute("aria-autocomplete","list"),this.textArea.setAttribute("aria-activedescendant",o.activeDescendant)):(this.textArea.setAttribute("aria-haspopup","false"),this.textArea.setAttribute("aria-autocomplete","both"),this.textArea.removeAttribute("aria-activedescendant")),o.role&&this.textArea.setAttribute("role",o.role)}prepareRender(o){this._primaryCursorPosition=new Te.a(this._selections[0].positionLineNumber,this._selections[0].positionColumn),this._primaryCursorVisibleRange=o.visibleRangeForPosition(this._primaryCursorPosition)}render(o){this._textAreaInput.writeScreenReaderContent("render"),this._render()}_render(){if(this._visibleTextArea){this._renderInsideEditor(null,this._visibleTextArea.top-this._scrollTop,this._contentLeft+this._visibleTextArea.left-this._scrollLeft,this._visibleTextArea.width,this._lineHeight);return}if(!this._primaryCursorVisibleRange){this._renderAtTopLeft();return}const o=this._contentLeft+this._primaryCursorVisibleRange.left-this._scrollLeft;if(othis._contentLeft+this._contentWidth){this._renderAtTopLeft();return}const i=this._context.viewLayout.getVerticalOffsetForLineNumber(this._selections[0].positionLineNumber)-this._scrollTop;if(i<0||i>this._contentHeight){this._renderAtTopLeft();return}if(l.f){this._renderInsideEditor(this._primaryCursorPosition,i,o,ut?0:1,this._lineHeight);return}this._renderInsideEditor(this._primaryCursorPosition,i,o,ut?0:1,ut?0:1)}_renderInsideEditor(o,i,r,M,N){this._lastRenderPosition=o;const $=this.textArea,pe=this.textAreaCover;p.a.applyFontInfo($,this._fontInfo),$.setTop(i),$.setLeft(r),$.setWidth(M),$.setHeight(N),pe.setTop(0),pe.setLeft(0),pe.setWidth(0),pe.setHeight(0)}_renderAtTopLeft(){this._lastRenderPosition=null;const o=this.textArea,i=this.textAreaCover;if(p.a.applyFontInfo(o,this._fontInfo),o.setTop(0),o.setLeft(0),i.setTop(0),i.setLeft(0),ut){o.setWidth(0),o.setHeight(0),i.setWidth(0),i.setHeight(0);return}o.setWidth(1),o.setHeight(1),i.setWidth(1),i.setHeight(1);const r=this._context.configuration.options;r.get(49)?i.setClassName("monaco-editor-background textAreaCover "+$t.OUTER_CLASS_NAME):r.get(59).renderType!==0?i.setClassName("monaco-editor-background textAreaCover "+Bt.CLASS_NAME):i.setClassName("monaco-editor-background textAreaCover")}}function We(o,i){const r=document.createElement("canvas"),M=r.getContext("2d");M.font=he(i);const N=M.measureText(o);return b.g?N.width+2:N.width}function he(o){return Me("normal",o.fontWeight,o.fontSize,o.lineHeight,o.fontFamily)}function Me(o,i,r,M,N){return`${o} normal ${i} ${r}px / ${M}px ${N}`}var ue=e("1YUG");class ae{constructor(o,i,r,M){this.configuration=o,this.viewModel=i,this.userInputEvents=r,this.commandDelegate=M}paste(o,i,r,M){this.commandDelegate.paste(o,i,r,M)}type(o){this.commandDelegate.type(o)}compositionType(o,i,r,M){this.commandDelegate.compositionType(o,i,r,M)}compositionStart(){this.commandDelegate.startComposition()}compositionEnd(){this.commandDelegate.endComposition()}cut(){this.commandDelegate.cut()}setSelection(o){ue.CoreNavigationCommands.SetSelection.runCoreEditorCommand(this.viewModel,{source:"keyboard",selection:o})}_validateViewColumn(o){const i=this.viewModel.getLineMinColumn(o.lineNumber);return o.column=4?this._selectAll():o.mouseDownCount===3?this._hasMulticursorModifier(o)?o.inSelectionMode?this._lastCursorLineSelectDrag(o.position):this._lastCursorLineSelect(o.position):o.inSelectionMode?this._lineSelectDrag(o.position):this._lineSelect(o.position):o.mouseDownCount===2?this._hasMulticursorModifier(o)?this._lastCursorWordSelect(o.position):o.inSelectionMode?this._wordSelectDrag(o.position):this._wordSelect(o.position):this._hasMulticursorModifier(o)?this._hasNonMulticursorModifier(o)||(o.shiftKey?this._columnSelect(o.position,o.mouseColumn,!0):o.inSelectionMode?this._lastCursorMoveToSelect(o.position):this._createCursor(o.position,!1)):o.inSelectionMode?o.altKey?this._columnSelect(o.position,o.mouseColumn,!0):M?this._columnSelect(o.position,o.mouseColumn,!0):this._moveToSelect(o.position):this.moveTo(o.position)}_usualArgs(o){return o=this._validateViewColumn(o),{source:"mouse",position:this._convertViewToModelPosition(o),viewPosition:o}}moveTo(o){ue.CoreNavigationCommands.MoveTo.runCoreEditorCommand(this.viewModel,this._usualArgs(o))}_moveToSelect(o){ue.CoreNavigationCommands.MoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(o))}_columnSelect(o,i,r){o=this._validateViewColumn(o),ue.CoreNavigationCommands.ColumnSelect.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(o),viewPosition:o,mouseColumn:i,doColumnSelect:r})}_createCursor(o,i){o=this._validateViewColumn(o),ue.CoreNavigationCommands.CreateCursor.runCoreEditorCommand(this.viewModel,{source:"mouse",position:this._convertViewToModelPosition(o),viewPosition:o,wholeLine:i})}_lastCursorMoveToSelect(o){ue.CoreNavigationCommands.LastCursorMoveToSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(o))}_wordSelect(o){ue.CoreNavigationCommands.WordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(o))}_wordSelectDrag(o){ue.CoreNavigationCommands.WordSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(o))}_lastCursorWordSelect(o){ue.CoreNavigationCommands.LastCursorWordSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(o))}_lineSelect(o){ue.CoreNavigationCommands.LineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(o))}_lineSelectDrag(o){ue.CoreNavigationCommands.LineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(o))}_lastCursorLineSelect(o){ue.CoreNavigationCommands.LastCursorLineSelect.runCoreEditorCommand(this.viewModel,this._usualArgs(o))}_lastCursorLineSelectDrag(o){ue.CoreNavigationCommands.LastCursorLineSelectDrag.runCoreEditorCommand(this.viewModel,this._usualArgs(o))}_selectAll(){ue.CoreNavigationCommands.SelectAll.runCoreEditorCommand(this.viewModel,{source:"mouse"})}_convertViewToModelPosition(o){return this.viewModel.coordinatesConverter.convertViewPositionToModelPosition(o)}emitKeyDown(o){this.userInputEvents.emitKeyDown(o)}emitKeyUp(o){this.userInputEvents.emitKeyUp(o)}emitContextMenu(o){this.userInputEvents.emitContextMenu(o)}emitMouseMove(o){this.userInputEvents.emitMouseMove(o)}emitMouseLeave(o){this.userInputEvents.emitMouseLeave(o)}emitMouseUp(o){this.userInputEvents.emitMouseUp(o)}emitMouseDown(o){this.userInputEvents.emitMouseDown(o)}emitMouseDrag(o){this.userInputEvents.emitMouseDrag(o)}emitMouseDrop(o){this.userInputEvents.emitMouseDrop(o)}emitMouseDropCanceled(){this.userInputEvents.emitMouseDropCanceled()}emitMouseWheel(o){this.userInputEvents.emitMouseWheel(o)}}class Re{constructor(o){this.onKeyDown=null,this.onKeyUp=null,this.onContextMenu=null,this.onMouseMove=null,this.onMouseLeave=null,this.onMouseDown=null,this.onMouseUp=null,this.onMouseDrag=null,this.onMouseDrop=null,this.onMouseDropCanceled=null,this.onMouseWheel=null,this._coordinatesConverter=o}emitKeyDown(o){this.onKeyDown&&this.onKeyDown(o)}emitKeyUp(o){this.onKeyUp&&this.onKeyUp(o)}emitContextMenu(o){this.onContextMenu&&this.onContextMenu(this._convertViewToModelMouseEvent(o))}emitMouseMove(o){this.onMouseMove&&this.onMouseMove(this._convertViewToModelMouseEvent(o))}emitMouseLeave(o){this.onMouseLeave&&this.onMouseLeave(this._convertViewToModelMouseEvent(o))}emitMouseDown(o){this.onMouseDown&&this.onMouseDown(this._convertViewToModelMouseEvent(o))}emitMouseUp(o){this.onMouseUp&&this.onMouseUp(this._convertViewToModelMouseEvent(o))}emitMouseDrag(o){this.onMouseDrag&&this.onMouseDrag(this._convertViewToModelMouseEvent(o))}emitMouseDrop(o){this.onMouseDrop&&this.onMouseDrop(this._convertViewToModelMouseEvent(o))}emitMouseDropCanceled(){this.onMouseDropCanceled&&this.onMouseDropCanceled()}emitMouseWheel(o){this.onMouseWheel&&this.onMouseWheel(o)}_convertViewToModelMouseEvent(o){return o.target?{event:o.event,target:this._convertViewToModelMouseTarget(o.target)}:o}_convertViewToModelMouseTarget(o){return Re.convertViewToModelMouseTarget(o,this._coordinatesConverter)}static convertViewToModelMouseTarget(o,i){return new Qe(o.element,o.type,o.mouseColumn,o.position?i.convertViewPositionToModelPosition(o.position):null,o.range?i.convertViewRangeToModelRange(o.range):null,o.detail)}}class Qe{constructor(o,i,r,M,N,$){this.element=o,this.type=i,this.mouseColumn=r,this.position=M,this.range=N,this.detail=$}toString(){return ht.toString(this)}}var et=e("erNZ"),bt;class Lt{constructor(o){this._createLine=o,this._set(1,[])}flush(){this._set(1,[])}_set(o,i){this._lines=i,this._rendLineNumberStart=o}_get(){return{rendLineNumberStart:this._rendLineNumberStart,lines:this._lines}}getStartLineNumber(){return this._rendLineNumberStart}getEndLineNumber(){return this._rendLineNumberStart+this._lines.length-1}getCount(){return this._lines.length}getLine(o){const i=o-this._rendLineNumberStart;if(i<0||i>=this._lines.length)throw new Error("Illegal value for lineNumber");return this._lines[i]}onLinesDeleted(o,i){if(this.getCount()===0)return null;const r=this.getStartLineNumber(),M=this.getEndLineNumber();if(iM)return null;let N=0,$=0;for(let _e=r;_e<=M;_e++){const Ke=_e-this._rendLineNumberStart;o<=_e&&_e<=i&&($===0?(N=Ke,$=1):$++)}if(o=r&&$<=M&&(this._lines[$-this._rendLineNumberStart].onContentChanged(),N=!0);return N}onLinesInserted(o,i){if(this.getCount()===0)return null;const r=i-o+1,M=this.getStartLineNumber(),N=this.getEndLineNumber();if(o<=M)return this._rendLineNumberStart+=r,null;if(o>N)return null;if(r+o>N){const at=this._lines.splice(o-this._rendLineNumberStart,N-o+1);return at}const $=[];for(let at=0;atr)continue;const _e=Math.max(i,pe.fromLineNumber),Ke=Math.min(r,pe.toLineNumber);for(let Je=_e;Je<=Ke;Je++){const at=Je-this._rendLineNumberStart;this._lines[at].onTokensChanged(),M=!0}}return M}}class Ot{constructor(o){this._host=o,this.domNode=this._createDomNode(),this._linesCollection=new Lt(()=>this._host.createVisibleLine())}_createDomNode(){const o=Object(c.b)(document.createElement("div"));return o.setClassName("view-layer"),o.setPosition("absolute"),o.domNode.setAttribute("role","presentation"),o.domNode.setAttribute("aria-hidden","true"),o}onConfigurationChanged(o){return!!o.hasChanged(129)}onFlushed(o){return this._linesCollection.flush(),!0}onLinesChanged(o){return this._linesCollection.onLinesChanged(o.fromLineNumber,o.toLineNumber)}onLinesDeleted(o){const i=this._linesCollection.onLinesDeleted(o.fromLineNumber,o.toLineNumber);if(i)for(let r=0,M=i.length;ri){const $=i,pe=Math.min(r,N.rendLineNumberStart-1);$<=pe&&(this._insertLinesBefore(N,$,pe,M,i),N.linesLength+=pe-$+1)}else if(N.rendLineNumberStart0&&(this._removeLinesBefore(N,$),N.linesLength-=$)}if(N.rendLineNumberStart=i,N.rendLineNumberStart+N.linesLength-1r){const $=Math.max(0,r-N.rendLineNumberStart+1),pe=N.linesLength-1,_e=pe-$+1;_e>0&&(this._removeLinesAfter(N,_e),N.linesLength-=_e)}return this._finishRendering(N,!1,M),N}_renderUntouchedLines(o,i,r,M,N){const $=o.rendLineNumberStart,pe=o.lines;for(let _e=i;_e<=r;_e++){const Ke=$+_e;pe[_e].layoutLine(Ke,M[Ke-N])}}_insertLinesBefore(o,i,r,M,N){const $=[];let pe=0;for(let _e=i;_e<=r;_e++)$[pe++]=this.host.createVisibleLine();o.lines=$.concat(o.lines)}_removeLinesBefore(o,i){for(let r=0;r=0;pe--){const _e=o.lines[pe];M[pe]&&(_e.setDomNode($),$=$.previousSibling)}}_finishRenderingInvalidLines(o,i,r){const M=document.createElement("div");Ft._ttPolicy&&(i=Ft._ttPolicy.createHTML(i)),M.innerHTML=i;for(let N=0;No}),Ft._sb=Object(et.a)(1e5);class Tt extends ee{constructor(o){super(o);this._visibleLines=new Ot(this),this.domNode=this._visibleLines.domNode,this._dynamicOverlays=[],this._isFocused=!1,this.domNode.setClassName("view-overlays")}shouldRender(){if(super.shouldRender())return!0;for(let o=0,i=this._dynamicOverlays.length;or.shouldRender());for(let r=0,M=i.length;r'),M.appendASCIIString(N),M.appendASCIIString(""),!0)}layoutLine(o,i){this._domNode&&(this._domNode.setTop(i),this._domNode.setHeight(this._lineHeight))}}class fo extends Tt{constructor(o){super(o);const i=this._context.configuration.options,r=i.get(129);this._contentWidth=r.contentWidth,this.domNode.setHeight(0)}onConfigurationChanged(o){const i=this._context.configuration.options,r=i.get(129);return this._contentWidth=r.contentWidth,super.onConfigurationChanged(o)||!0}onScrollChanged(o){return super.onScrollChanged(o)||o.scrollWidthChanged}_viewOverlaysRender(o){super._viewOverlaysRender(o),this.domNode.setWidth(Math.max(o.scrollWidth,this._contentWidth))}}class vo extends Tt{constructor(o){super(o);const i=this._context.configuration.options,r=i.get(129);this._contentLeft=r.contentLeft,this.domNode.setClassName("margin-view-overlays"),this.domNode.setWidth(1),p.a.applyFontInfo(this.domNode,i.get(43))}onConfigurationChanged(o){const i=this._context.configuration.options;p.a.applyFontInfo(this.domNode,i.get(43));const r=i.get(129);return this._contentLeft=r.contentLeft,super.onConfigurationChanged(o)||!0}onScrollChanged(o){return super.onScrollChanged(o)||o.scrollHeightChanged}_viewOverlaysRender(o){super._viewOverlaysRender(o);const i=Math.min(o.scrollHeight,1e6);this.domNode.setHeight(i),this.domNode.setWidth(this._contentLeft)}}class po{constructor(o,i){this._coordinateBrand=void 0,this.top=o,this.left=i}}class Oo extends ee{constructor(o,i){super(o);this._viewDomNode=i,this._widgets={},this.domNode=Object(c.b)(document.createElement("div")),Se.write(this.domNode,1),this.domNode.setClassName("contentWidgets"),this.domNode.setPosition("absolute"),this.domNode.setTop(0),this.overflowingContentWidgetsDomNode=Object(c.b)(document.createElement("div")),Se.write(this.overflowingContentWidgetsDomNode,2),this.overflowingContentWidgetsDomNode.setClassName("overflowingContentWidgets")}dispose(){super.dispose(),this._widgets={}}onConfigurationChanged(o){const i=Object.keys(this._widgets);for(const r of i)this._widgets[r].onConfigurationChanged(o);return!0}onDecorationsChanged(o){return!0}onFlushed(o){return!0}onLineMappingChanged(o){const i=Object.keys(this._widgets);for(const r of i)this._widgets[r].onLineMappingChanged(o);return!0}onLinesChanged(o){return!0}onLinesDeleted(o){return!0}onLinesInserted(o){return!0}onScrollChanged(o){return!0}onZonesChanged(o){return!0}addWidget(o){const i=new Uo(this._context,this._viewDomNode,o);this._widgets[i.id]=i,i.allowEditorOverflow?this.overflowingContentWidgetsDomNode.appendChild(i.domNode):this.domNode.appendChild(i.domNode),this.setShouldRender()}setWidgetPosition(o,i,r){const M=this._widgets[o.getId()];M.setPosition(i,r),this.setShouldRender()}removeWidget(o){const i=o.getId();if(this._widgets.hasOwnProperty(i)){const r=this._widgets[i];delete this._widgets[i];const M=r.domNode.domNode;M.parentNode.removeChild(M),M.removeAttribute("monaco-visible-content-widget"),this.setShouldRender()}}shouldSuppressMouseDownOnWidget(o){return this._widgets.hasOwnProperty(o)?this._widgets[o].suppressMouseDown:!1}onBeforeRender(o){const i=Object.keys(this._widgets);for(const r of i)this._widgets[r].onBeforeRender(o)}prepareRender(o){const i=Object.keys(this._widgets);for(const r of i)this._widgets[r].prepareRender(o)}render(o){const i=Object.keys(this._widgets);for(const r of i)this._widgets[r].render(o)}}class Uo{constructor(o,i,r){this._context=o,this._viewDomNode=i,this._actual=r,this.domNode=Object(c.b)(this._actual.getDomNode()),this.id=this._actual.getId(),this.allowEditorOverflow=this._actual.allowEditorOverflow||!1,this.suppressMouseDown=this._actual.suppressMouseDown||!1;const M=this._context.configuration.options,N=M.get(129);this._fixedOverflowWidgets=M.get(36),this._contentWidth=N.contentWidth,this._contentLeft=N.contentLeft,this._lineHeight=M.get(58),this._range=null,this._viewRange=null,this._preference=[],this._cachedDomNodeClientWidth=-1,this._cachedDomNodeClientHeight=-1,this._maxWidth=this._getMaxWidth(),this._isVisible=!1,this._renderData=null,this.domNode.setPosition(this._fixedOverflowWidgets&&this.allowEditorOverflow?"fixed":"absolute"),this.domNode.setVisibility("hidden"),this.domNode.setAttribute("widgetId",this.id),this.domNode.setMaxWidth(this._maxWidth)}onConfigurationChanged(o){const i=this._context.configuration.options;if(this._lineHeight=i.get(58),o.hasChanged(129)){const r=i.get(129);this._contentLeft=r.contentLeft,this._contentWidth=r.contentWidth,this._maxWidth=this._getMaxWidth()}}onLineMappingChanged(o){this._setPosition(this._range)}_setPosition(o){if(this._range=o,this._viewRange=null,this._range){const i=this._context.model.validateModelRange(this._range);(this._context.model.coordinatesConverter.modelPositionIsVisible(i.getStartPosition())||this._context.model.coordinatesConverter.modelPositionIsVisible(i.getEndPosition()))&&(this._viewRange=this._context.model.coordinatesConverter.convertModelRangeToViewRange(i))}}_getMaxWidth(){return this.allowEditorOverflow?window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth:this._contentWidth}setPosition(o,i){this._setPosition(o),this._preference=i,this._cachedDomNodeClientWidth=-1,this._cachedDomNodeClientHeight=-1}_layoutBoxInViewport(o,i,r,M,N){const $=o.top,pe=$,_e=i.top+this._lineHeight,Ke=N.viewportHeight-_e,Je=$-M,at=pe>=M,jt=_e,_t=Ke>=M;let Ht=o.left,Jt=i.left;return Ht+r>N.scrollLeft+N.viewportWidth&&(Ht=N.scrollLeft+N.viewportWidth-r),Jt+r>N.scrollLeft+N.viewportWidth&&(Jt=N.scrollLeft+N.viewportWidth-r),Ht$){const _e=pe-($-M);pe-=_e,r-=_e}if(pe=so,Do=Je+M<=at.height-Co;return this._fixedOverflowWidgets?{fitsAbove:wo,aboveTop:Math.max(Ke,so),aboveLeft:_t,fitsBelow:Do,belowTop:Je,belowLeft:Jt}:{fitsAbove:wo,aboveTop:$,aboveLeft:jt,fitsBelow:Do,belowTop:pe,belowLeft:Ht}}_prepareRenderWidgetAtExactPositionOverflowing(o){return new po(o.top,o.left+this._contentLeft)}_getTopAndBottomLeft(o){if(!this._viewRange)return[null,null];const i=o.linesVisibleRangesForRange(this._viewRange,!1);if(!i||i.length===0)return[null,null];let r=i[0],M=i[0];for(const at of i)at.lineNumberM.lineNumber&&(M=at);let N=1073741824;for(const at of r.ranges)at.lefto.endLineNumber)return;this.domNode.setMaxWidth(this._maxWidth)}prepareRender(o){this._renderData=this._prepareRenderWidget(o)}render(o){if(!this._renderData){this._isVisible&&(this.domNode.removeAttribute("monaco-visible-content-widget"),this._isVisible=!1,this.domNode.setVisibility("hidden")),typeof this._actual.afterRender=="function"&&Zo(this._actual.afterRender,this._actual,null);return}this.allowEditorOverflow?(this.domNode.setTop(this._renderData.coordinate.top),this.domNode.setLeft(this._renderData.coordinate.left)):(this.domNode.setTop(this._renderData.coordinate.top+o.scrollTop-o.bigNumbersDelta),this.domNode.setLeft(this._renderData.coordinate.left)),this._isVisible||(this.domNode.setVisibility("inherit"),this.domNode.setAttribute("monaco-visible-content-widget","true"),this._isVisible=!0),typeof this._actual.afterRender=="function"&&Zo(this._actual.afterRender,this._actual,this._renderData.position)}}function Zo(o,i,...r){try{return o.call(i,...r)}catch(M){return null}}var ii=e("kw+w"),$o=e("6OMU");let Ri=!0;class xi extends Ue{constructor(o){super();this._context=o;const i=this._context.configuration.options,r=i.get(129);this._lineHeight=i.get(58),this._renderLineHighlight=i.get(84),this._renderLineHighlightOnlyWhenFocus=i.get(85),this._contentLeft=r.contentLeft,this._contentWidth=r.contentWidth,this._selectionIsEmpty=!0,this._focused=!1,this._cursorLineNumbers=[1],this._selections=[new m.a(1,1,1,1)],this._renderData=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}_readFromSelections(){let o=!1;const i=Ri?this._selections.slice(0,1):this._selections,r=i.map(N=>N.positionLineNumber);r.sort((N,$)=>N-$),$o.g(this._cursorLineNumbers,r)||(this._cursorLineNumbers=r,o=!0);const M=i.every(N=>N.isEmpty());return this._selectionIsEmpty!==M&&(this._selectionIsEmpty=M,o=!0),o}onThemeChanged(o){return this._readFromSelections()}onConfigurationChanged(o){const i=this._context.configuration.options,r=i.get(129);return this._lineHeight=i.get(58),this._renderLineHighlight=i.get(84),this._renderLineHighlightOnlyWhenFocus=i.get(85),this._contentLeft=r.contentLeft,this._contentWidth=r.contentWidth,!0}onCursorStateChanged(o){return this._selections=o.selections,this._readFromSelections()}onFlushed(o){return!0}onLinesDeleted(o){return!0}onLinesInserted(o){return!0}onScrollChanged(o){return o.scrollWidthChanged||o.scrollTopChanged}onZonesChanged(o){return!0}onFocusChanged(o){return this._renderLineHighlightOnlyWhenFocus?(this._focused=o.isFocused,!0):!1}prepareRender(o){if(!this._shouldRenderThis()){this._renderData=null;return}const i=this._renderOne(o),r=o.visibleRange.startLineNumber,M=o.visibleRange.endLineNumber,N=this._cursorLineNumbers.length;let $=0;const pe=[];for(let _e=r;_e<=M;_e++){const Ke=_e-r;for(;$=this._renderData.length?"":this._renderData[r]}}class Ni extends xi{_renderOne(o){const i="current-line"+(this._shouldRenderOther()?" current-line-both":"");return`
    `}_shouldRenderThis(){return(this._renderLineHighlight==="line"||this._renderLineHighlight==="all")&&this._selectionIsEmpty&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}_shouldRenderOther(){return(this._renderLineHighlight==="gutter"||this._renderLineHighlight==="all")&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}}class ji extends xi{_renderOne(o){const i="current-line"+(this._shouldRenderMargin()?" current-line-margin":"")+(this._shouldRenderOther()?" current-line-margin-both":"");return`
    `}_shouldRenderMargin(){return(this._renderLineHighlight==="gutter"||this._renderLineHighlight==="all")&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}_shouldRenderThis(){return!0}_shouldRenderOther(){return(this._renderLineHighlight==="line"||this._renderLineHighlight==="all")&&this._selectionIsEmpty&&(!this._renderLineHighlightOnlyWhenFocus||this._focused)}}Object(Mt.f)((o,i)=>{Ri=!1;const r=o.getColor(Ye.B);if(r&&(i.addRule(`.monaco-editor .view-overlays .current-line { background-color: ${r}; }`),i.addRule(`.monaco-editor .margin-view-overlays .current-line-margin { background-color: ${r}; border: none; }`)),!r||r.isTransparent()||o.defines(Ye.C)){const M=o.getColor(Ye.C);M&&(Ri=!0,i.addRule(`.monaco-editor .view-overlays .current-line { border: 2px solid ${M}; }`),i.addRule(`.monaco-editor .margin-view-overlays .current-line-margin { border: 2px solid ${M}; }`),o.type==="hc"&&(i.addRule(".monaco-editor .view-overlays .current-line { border-width: 1px; }"),i.addRule(".monaco-editor .margin-view-overlays .current-line-margin { border-width: 1px; }")))}});var Li=e("Vtyv");class ki extends Ue{constructor(o){super();this._context=o;const i=this._context.configuration.options;this._lineHeight=i.get(58),this._typicalHalfwidthCharacterWidth=i.get(43).typicalHalfwidthCharacterWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(o){const i=this._context.configuration.options;return this._lineHeight=i.get(58),this._typicalHalfwidthCharacterWidth=i.get(43).typicalHalfwidthCharacterWidth,!0}onDecorationsChanged(o){return!0}onFlushed(o){return!0}onLinesChanged(o){return!0}onLinesDeleted(o){return!0}onLinesInserted(o){return!0}onScrollChanged(o){return o.scrollTopChanged||o.scrollWidthChanged}onZonesChanged(o){return!0}prepareRender(o){const i=o.getDecorationsInViewport();let r=[],M=0;for(let _e=0,Ke=i.length;_e{if(_e.options.zIndexKe.options.zIndex)return 1;const Je=_e.options.className,at=Ke.options.className;return Jeat?1:He.a.compareRangesUsingStarts(_e.range,Ke.range)});const N=o.visibleRange.startLineNumber,$=o.visibleRange.endLineNumber,pe=[];for(let _e=N;_e<=$;_e++){const Ke=_e-N;pe[Ke]=""}this._renderWholeLineDecorations(o,r,pe),this._renderNormalDecorations(o,r,pe),this._renderResult=pe}_renderWholeLineDecorations(o,i,r){const M=String(this._lineHeight),N=o.visibleRange.startLineNumber,$=o.visibleRange.endLineNumber;for(let pe=0,_e=i.length;pe<_e;pe++){const Ke=i[pe];if(!Ke.options.isWholeLine)continue;const Je='
    ',at=Math.max(Ke.range.startLineNumber,N),jt=Math.min(Ke.range.endLineNumber,$);for(let _t=at;_t<=jt;_t++){const Ht=_t-N;r[Ht]+=Je}}}_renderNormalDecorations(o,i,r){const M=String(this._lineHeight),N=o.visibleRange.startLineNumber;let $=null,pe=!1,_e=null;for(let Ke=0,Je=i.length;Ke';pe[jt]+=so}}}render(o,i){if(!this._renderResult)return"";const r=i-o;return r<0||r>=this._renderResult.length?"":this._renderResult[r]}}var Hi=e("GJhM"),ni=e("MD5Z");class tn extends ee{constructor(o,i,r,M){super(o);const N=this._context.configuration.options,$=N.get(91),pe=N.get(66),_e=N.get(34),Ke=N.get(94),Je={listenOnDomNode:r.domNode,className:"editor-scrollable "+Object(Mt.e)(o.theme.type),useShadows:!1,lazyRender:!0,vertical:$.vertical,horizontal:$.horizontal,verticalHasArrows:$.verticalHasArrows,horizontalHasArrows:$.horizontalHasArrows,verticalScrollbarSize:$.verticalScrollbarSize,verticalSliderSize:$.verticalSliderSize,horizontalScrollbarSize:$.horizontalScrollbarSize,horizontalSliderSize:$.horizontalSliderSize,handleMouseWheel:$.handleMouseWheel,alwaysConsumeMouseWheel:$.alwaysConsumeMouseWheel,arrowSize:$.arrowSize,mouseWheelScrollSensitivity:pe,fastScrollSensitivity:_e,scrollPredominantAxis:Ke,scrollByPage:$.scrollByPage};this.scrollbar=this._register(new Hi.c(i.domNode,Je,this._context.viewLayout.getScrollable())),Se.write(this.scrollbar.getDomNode(),5),this.scrollbarDomNode=Object(c.b)(this.scrollbar.getDomNode()),this.scrollbarDomNode.setPosition("absolute"),this._setLayout();const at=(jt,_t,Ht)=>{const Jt={};if(_t){const so=jt.scrollTop;so&&(Jt.scrollTop=this._context.viewLayout.getCurrentScrollTop()+so,jt.scrollTop=0)}if(Ht){const so=jt.scrollLeft;so&&(Jt.scrollLeft=this._context.viewLayout.getCurrentScrollLeft()+so,jt.scrollLeft=0)}this._context.model.setScrollPosition(Jt,1)};this._register(S.i(r.domNode,"scroll",jt=>at(r.domNode,!0,!0))),this._register(S.i(i.domNode,"scroll",jt=>at(i.domNode,!0,!1))),this._register(S.i(M.domNode,"scroll",jt=>at(M.domNode,!0,!1))),this._register(S.i(this.scrollbarDomNode.domNode,"scroll",jt=>at(this.scrollbarDomNode.domNode,!0,!1)))}dispose(){super.dispose()}_setLayout(){const o=this._context.configuration.options,i=o.get(129);this.scrollbarDomNode.setLeft(i.contentLeft);const r=o.get(64),M=r.side;M==="right"?this.scrollbarDomNode.setWidth(i.contentWidth+i.minimap.minimapWidth):this.scrollbarDomNode.setWidth(i.contentWidth),this.scrollbarDomNode.setHeight(i.height)}getOverviewRulerLayoutInfo(){return this.scrollbar.getOverviewRulerLayoutInfo()}getDomNode(){return this.scrollbarDomNode}delegateVerticalScrollbarMouseDown(o){this.scrollbar.delegateVerticalScrollbarMouseDown(o)}onConfigurationChanged(o){if(o.hasChanged(91)||o.hasChanged(66)||o.hasChanged(34)){const i=this._context.configuration.options,r=i.get(91),M=i.get(66),N=i.get(34),$=i.get(94),pe={vertical:r.vertical,horizontal:r.horizontal,verticalScrollbarSize:r.verticalScrollbarSize,horizontalScrollbarSize:r.horizontalScrollbarSize,scrollByPage:r.scrollByPage,handleMouseWheel:r.handleMouseWheel,mouseWheelScrollSensitivity:M,fastScrollSensitivity:N,scrollPredominantAxis:$};this.scrollbar.updateOptions(pe)}return o.hasChanged(129)&&this._setLayout(),!0}onScrollChanged(o){return!0}onThemeChanged(o){return this.scrollbar.updateClassName("editor-scrollable "+Object(Mt.e)(this._context.theme.type)),!0}prepareRender(o){}render(o){this.scrollbar.renderNow()}}Object(Mt.f)((o,i)=>{const r=o.getColor(ni.Ec);r&&i.addRule(` .monaco-scrollable-element > .shadow.top { box-shadow: ${r} 0 6px 6px -6px inset; } .monaco-scrollable-element > .shadow.left { box-shadow: ${r} 6px 0 6px -6px inset; } .monaco-scrollable-element > .shadow.top.left { box-shadow: ${r} 6px 6px 6px -6px inset; } `);const M=o.getColor(ni.Gc);M&&i.addRule(` .monaco-scrollable-element > .scrollbar > .slider { background: ${M}; } `);const N=o.getColor(ni.Hc);N&&i.addRule(` .monaco-scrollable-element > .scrollbar > .slider:hover { background: ${N}; } `);const $=o.getColor(ni.Fc);$&&i.addRule(` .monaco-scrollable-element > .scrollbar > .slider.active { background: ${$}; } `)});var Yi=e("hHjc");class bi{constructor(o,i,r){this._decorationToRenderBrand=void 0,this.startLineNumber=+o,this.endLineNumber=+i,this.className=String(r)}}class Pi extends Ue{_render(o,i,r){const M=[];for(let pe=o;pe<=i;pe++){const _e=pe-o;M[_e]=[]}if(r.length===0)return M;r.sort((pe,_e)=>pe.className===_e.className?pe.startLineNumber===_e.startLineNumber?pe.endLineNumber-_e.endLineNumber:pe.startLineNumber-_e.startLineNumber:pe.className<_e.className?-1:1);let N=null,$=0;for(let pe=0,_e=r.length;pe<_e;pe++){const Ke=r[pe],Je=Ke.className;let at=Math.max(Ke.startLineNumber,o)-o;const jt=Math.min(Ke.endLineNumber,i)-o;N===Je?(at=Math.max($+1,at),$=Math.max($,jt)):(N=Je,$=jt);for(let _t=at;_t<=$;_t++)M[_t].push(N)}return M}}class Ii extends Pi{constructor(o){super();this._context=o;const i=this._context.configuration.options,r=i.get(129);this._lineHeight=i.get(58),this._glyphMargin=i.get(49),this._glyphMarginLeft=r.glyphMarginLeft,this._glyphMarginWidth=r.glyphMarginWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(o){const i=this._context.configuration.options,r=i.get(129);return this._lineHeight=i.get(58),this._glyphMargin=i.get(49),this._glyphMarginLeft=r.glyphMarginLeft,this._glyphMarginWidth=r.glyphMarginWidth,!0}onDecorationsChanged(o){return!0}onFlushed(o){return!0}onLinesChanged(o){return!0}onLinesDeleted(o){return!0}onLinesInserted(o){return!0}onScrollChanged(o){return o.scrollTopChanged}onZonesChanged(o){return!0}_getDecorations(o){const i=o.getDecorationsInViewport();let r=[],M=0;for(let N=0,$=i.length;N<$;N++){const pe=i[N],_e=pe.options.glyphMarginClassName;_e&&(r[M++]=new bi(pe.range.startLineNumber,pe.range.endLineNumber,_e))}return r}prepareRender(o){if(!this._glyphMargin){this._renderResult=null;return}const i=o.visibleRange.startLineNumber,r=o.visibleRange.endLineNumber,M=this._render(i,r,this._getDecorations(o)),N=this._lineHeight.toString(),$=this._glyphMarginLeft.toString(),pe=this._glyphMarginWidth.toString(),_e='" style="left:'+$+"px;width:"+pe+"px;height:"+N+'px;">',Ke=[];for(let Je=i;Je<=r;Je++){const at=Je-i,jt=M[at];jt.length===0?Ke[at]="":Ke[at]='
    =this._renderResult.length?"":this._renderResult[r]}}var Si=e("C6rC"),Xi=e("M1Kb"),Ci=e("tX9W"),rn=e("746U");class on extends Ue{constructor(o){super();this._context=o,this._primaryPosition=null;const i=this._context.configuration.options,r=i.get(130),M=i.get(43);this._lineHeight=i.get(58),this._spaceWidth=M.spaceWidth,this._maxIndentLeft=r.wrappingColumn===-1?-1:r.wrappingColumn*M.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=i.get(13),this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(o){const i=this._context.configuration.options,r=i.get(130),M=i.get(43);return this._lineHeight=i.get(58),this._spaceWidth=M.spaceWidth,this._maxIndentLeft=r.wrappingColumn===-1?-1:r.wrappingColumn*M.typicalHalfwidthCharacterWidth,this._bracketPairGuideOptions=i.get(13),!0}onCursorStateChanged(o){var i;const r=o.selections[0],M=r.getPosition();return((i=this._primaryPosition)===null||i===void 0?void 0:i.equals(M))?!1:(this._primaryPosition=M,!0)}onDecorationsChanged(o){return!0}onFlushed(o){return!0}onLinesChanged(o){return!0}onLinesDeleted(o){return!0}onLinesInserted(o){return!0}onScrollChanged(o){return o.scrollTopChanged}onZonesChanged(o){return!0}onLanguageConfigurationChanged(o){return!0}prepareRender(o){var i,r,M,N;if(!this._bracketPairGuideOptions.indentation&&this._bracketPairGuideOptions.bracketPairs===!1){this._renderResult=null;return}const $=o.visibleRange.startLineNumber,pe=o.visibleRange.endLineNumber,_e=o.scrollWidth,Ke=this._lineHeight,Je=this._primaryPosition,at=this.getGuidesByLine($,pe,Je),jt=[];for(let _t=$;_t<=pe;_t++){const Ht=_t-$,Jt=at[Ht];let so="";const Co=(r=(i=o.visibleRangeForPosition(new Te.a(_t,1)))===null||i===void 0?void 0:i.left)!==null&&r!==void 0?r:0;for(const wo of Jt){const Do=Co+(wo.visibleColumn-1)*this._spaceWidth;if(Do>_e||this._maxIndentLeft>0&&Do>this._maxIndentLeft)break;const ko=wo.horizontalLine?wo.horizontalLine.top?"horizontal-top":"horizontal-bottom":"vertical",Po=wo.horizontalLine?((N=(M=o.visibleRangeForPosition(new Te.a(_t,wo.horizontalLine.endColumn)))===null||M===void 0?void 0:M.left)!==null&&N!==void 0?N:Do+this._spaceWidth)-Do:this._spaceWidth;so+=`
    `}jt[Ht]=so}this._renderResult=jt}getGuidesByLine(o,i,r){const M=this._bracketPairGuideOptions.bracketPairs!==!1?this._context.model.getBracketGuidesInRangeByLine(o,i,r,{highlightActive:this._bracketPairGuideOptions.highlightActiveBracketPair,horizontalGuides:this._bracketPairGuideOptions.bracketPairsHorizontal===!0?Xi.c.Enabled:this._bracketPairGuideOptions.bracketPairsHorizontal==="active"?Xi.c.EnabledForActive:Xi.c.Disabled,includeInactive:this._bracketPairGuideOptions.bracketPairs===!0}):null,N=this._bracketPairGuideOptions.indentation?this._context.model.getLinesIndentGuides(o,i):null;let $=0,pe=0,_e=0;if(this._bracketPairGuideOptions.highlightActiveIndentation&&r){const at=this._context.model.getActiveIndentGuide(r.lineNumber,o,i);$=at.startLineNumber,pe=at.endLineNumber,_e=at.indent}const{indentSize:Ke}=this._context.model.getTextModelOptions(),Je=[];for(let at=o;at<=i;at++){const jt=new Array;Je.push(jt);const _t=M?M[at-o]:[],Ht=new $o.a(_t),Jt=N?N[at-o]:[];for(let so=1;so<=Jt;so++){const Co=(so-1)*Ke+1,wo=_t.length===0&&$<=at&&at<=pe&&so===_e;jt.push(...Ht.takeWhile(ko=>ko.visibleColumn!0)||[])}return Je}render(o,i){if(!this._renderResult)return"";const r=i-o;return r<0||r>=this._renderResult.length?"":this._renderResult[r]}}function Fi(o){return o&&o.isTransparent()?void 0:o}Object(Mt.f)((o,i)=>{const r=o.getColor(Ye.A);r&&i.addRule(`.monaco-editor .lines-content .core-guide-indent { box-shadow: 1px 0 0 0 ${r} inset; }`);const M=o.getColor(Ye.a)||r;M&&i.addRule(`.monaco-editor .lines-content .core-guide-indent-active { box-shadow: 1px 0 0 0 ${M} inset; }`);const N=[{bracketColor:Ye.c,guideColor:Ye.r,guideColorActive:Ye.l},{bracketColor:Ye.d,guideColor:Ye.s,guideColorActive:Ye.m},{bracketColor:Ye.e,guideColor:Ye.t,guideColorActive:Ye.n},{bracketColor:Ye.f,guideColor:Ye.u,guideColorActive:Ye.o},{bracketColor:Ye.g,guideColor:Ye.v,guideColorActive:Ye.p},{bracketColor:Ye.h,guideColor:Ye.w,guideColorActive:Ye.q}],$=new Ci.a;let pe=N.map(_e=>{var Ke,Je;const at=o.getColor(_e.bracketColor),jt=o.getColor(_e.guideColor),_t=o.getColor(_e.guideColorActive),Ht=Fi((Ke=Fi(jt))!==null&&Ke!==void 0?Ke:at==null?void 0:at.transparent(.3)),Jt=Fi((Je=Fi(_t))!==null&&Je!==void 0?Je:at);return!Ht||!Jt?void 0:{guideColor:Ht,guideColorActive:Jt}}).filter(rn.h);if(pe.length>0){for(let _e=0;_e<30;_e++){const Ke=pe[_e%pe.length];i.addRule(`.monaco-editor .${$.getInlineClassNameOfLevel(_e).replace(/ /g,".")} { --guide-color: ${Ke.guideColor}; --guide-color-active: ${Ke.guideColorActive}; }`)}i.addRule(".monaco-editor .vertical { box-shadow: 1px 0 0 0 var(--guide-color) inset; }"),i.addRule(".monaco-editor .horizontal-top { border-top: 1px solid var(--guide-color); }"),i.addRule(".monaco-editor .horizontal-bottom { border-bottom: 1px solid var(--guide-color); }"),i.addRule(`.monaco-editor .vertical.${$.activeClassName} { box-shadow: 1px 0 0 0 var(--guide-color-active) inset; }`),i.addRule(`.monaco-editor .horizontal-top.${$.activeClassName} { border-top: 1px solid var(--guide-color-active); }`),i.addRule(`.monaco-editor .horizontal-bottom.${$.activeClassName} { border-bottom: 1px solid var(--guide-color-active); }`)}});var Bi=e("OKK6");class vt{constructor(){this._currentVisibleRange=new He.a(1,1,1,1)}getCurrentVisibleRange(){return this._currentVisibleRange}setCurrentVisibleRange(o){this._currentVisibleRange=o}}class Xe{constructor(o,i,r,M,N,$){this.lineNumber=o,this.startColumn=i,this.endColumn=r,this.startScrollTop=M,this.stopScrollTop=N,this.scrollType=$,this.type="range",this.minLineNumber=o,this.maxLineNumber=o}}class X{constructor(o,i,r,M){this.selections=o,this.startScrollTop=i,this.stopScrollTop=r,this.scrollType=M,this.type="selections";let N=o[0].startLineNumber,$=o[0].endLineNumber;for(let pe=1,_e=o.length;pe<_e;pe++){const Ke=o[pe];N=Math.min(N,Ke.startLineNumber),$=Math.max($,Ke.endLineNumber)}this.minLineNumber=N,this.maxLineNumber=$}}class Ee extends ee{constructor(o,i){super(o);this._linesContent=i,this._textRangeRestingSpot=document.createElement("div"),this._visibleLines=new Ot(this),this.domNode=this._visibleLines.domNode;const r=this._context.configuration,M=this._context.configuration.options,N=M.get(43),$=M.get(130);this._lineHeight=M.get(58),this._typicalHalfwidthCharacterWidth=N.typicalHalfwidthCharacterWidth,this._isViewportWrapping=$.isViewportWrapping,this._revealHorizontalRightPadding=M.get(88),this._cursorSurroundingLines=M.get(25),this._cursorSurroundingLinesStyle=M.get(26),this._canUseLayerHinting=!M.get(28),this._viewLineOptions=new ve(r,this._context.theme.type),Se.write(this.domNode,7),this.domNode.setClassName(`view-lines ${Zt.a}`),p.a.applyFontInfo(this.domNode,N),this._maxLineWidth=0,this._asyncUpdateLineWidths=new C.e(()=>{this._updateLineWidthsSlow()},200),this._asyncCheckMonospaceFontAssumptions=new C.e(()=>{this._checkMonospaceFontAssumptions()},2e3),this._lastRenderedData=new vt,this._horizontalRevealRequest=null}dispose(){this._asyncUpdateLineWidths.dispose(),this._asyncCheckMonospaceFontAssumptions.dispose(),super.dispose()}getDomNode(){return this.domNode}createVisibleLine(){return new re(this._viewLineOptions)}onConfigurationChanged(o){this._visibleLines.onConfigurationChanged(o),o.hasChanged(130)&&(this._maxLineWidth=0);const i=this._context.configuration.options,r=i.get(43),M=i.get(130);return this._lineHeight=i.get(58),this._typicalHalfwidthCharacterWidth=r.typicalHalfwidthCharacterWidth,this._isViewportWrapping=M.isViewportWrapping,this._revealHorizontalRightPadding=i.get(88),this._cursorSurroundingLines=i.get(25),this._cursorSurroundingLinesStyle=i.get(26),this._canUseLayerHinting=!i.get(28),p.a.applyFontInfo(this.domNode,r),this._onOptionsMaybeChanged(),o.hasChanged(129)&&(this._maxLineWidth=0),!0}_onOptionsMaybeChanged(){const o=this._context.configuration,i=new ve(o,this._context.theme.type);if(!this._viewLineOptions.equals(i)){this._viewLineOptions=i;const r=this._visibleLines.getStartLineNumber(),M=this._visibleLines.getEndLineNumber();for(let N=r;N<=M;N++){const $=this._visibleLines.getVisibleLine(N);$.onOptionsChanged(this._viewLineOptions)}return!0}return!1}onCursorStateChanged(o){const i=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();let M=!1;for(let N=i;N<=r;N++)M=this._visibleLines.getVisibleLine(N).onSelectionChanged()||M;return M}onDecorationsChanged(o){{const i=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();for(let M=i;M<=r;M++)this._visibleLines.getVisibleLine(M).onDecorationsChanged()}return!0}onFlushed(o){const i=this._visibleLines.onFlushed(o);return this._maxLineWidth=0,i}onLinesChanged(o){return this._visibleLines.onLinesChanged(o)}onLinesDeleted(o){return this._visibleLines.onLinesDeleted(o)}onLinesInserted(o){return this._visibleLines.onLinesInserted(o)}onRevealRangeRequest(o){const i=this._computeScrollTopToRevealRange(this._context.viewLayout.getFutureViewport(),o.source,o.range,o.selections,o.verticalType);if(i===-1)return!1;let r=this._context.viewLayout.validateScrollPosition({scrollTop:i});o.revealHorizontal?o.range&&o.range.startLineNumber!==o.range.endLineNumber?r={scrollTop:r.scrollTop,scrollLeft:0}:o.range?this._horizontalRevealRequest=new Xe(o.range.startLineNumber,o.range.startColumn,o.range.endColumn,this._context.viewLayout.getCurrentScrollTop(),r.scrollTop,o.scrollType):o.selections&&o.selections.length>0&&(this._horizontalRevealRequest=new X(o.selections,this._context.viewLayout.getCurrentScrollTop(),r.scrollTop,o.scrollType)):this._horizontalRevealRequest=null;const M=Math.abs(this._context.viewLayout.getCurrentScrollTop()-r.scrollTop),N=M<=this._lineHeight?1:o.scrollType;return this._context.model.setScrollPosition(r,N),!0}onScrollChanged(o){if(this._horizontalRevealRequest&&o.scrollLeftChanged&&(this._horizontalRevealRequest=null),this._horizontalRevealRequest&&o.scrollTopChanged){const i=Math.min(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop),r=Math.max(this._horizontalRevealRequest.startScrollTop,this._horizontalRevealRequest.stopScrollTop);(o.scrollTopr)&&(this._horizontalRevealRequest=null)}return this.domNode.setWidth(o.scrollWidth),this._visibleLines.onScrollChanged(o)||!0}onTokensChanged(o){return this._visibleLines.onTokensChanged(o)}onZonesChanged(o){return this._context.model.setMaxLineWidth(this._maxLineWidth),this._visibleLines.onZonesChanged(o)}onThemeChanged(o){return this._onOptionsMaybeChanged()}getPositionFromDOMInfo(o,i){const r=this._getViewLineDomNode(o);if(r===null)return null;const M=this._getLineNumberFor(r);if(M===-1)return null;if(M<1||M>this._context.model.getLineCount())return null;if(this._context.model.getLineMaxColumn(M)===1)return new Te.a(M,1);const N=this._visibleLines.getStartLineNumber(),$=this._visibleLines.getEndLineNumber();if(M$)return null;let pe=this._visibleLines.getVisibleLine(M).getColumnOfNodeOffset(M,o,i);const _e=this._context.model.getLineMinColumn(M);return pe<_e&&(pe=_e),new Te.a(M,pe)}_getViewLineDomNode(o){for(;o&&o.nodeType===1;){if(o.className===re.CLASS_NAME)return o;o=o.parentElement}return null}_getLineNumberFor(o){const i=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();for(let M=i;M<=r;M++){const N=this._visibleLines.getVisibleLine(M);if(o===N.getDomNode())return M}return-1}getLineWidth(o){const i=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();return or?-1:this._visibleLines.getVisibleLine(o).getWidth()}linesVisibleRangesForRange(o,i){if(this.shouldRender())return null;const r=o.endLineNumber,M=He.a.intersectRanges(o,this._lastRenderedData.getCurrentVisibleRange());if(!M)return null;let N=[],$=0;const pe=new Ne(this.domNode.domNode,this._textRangeRestingSpot);let _e=0;i&&(_e=this._context.model.coordinatesConverter.convertViewPositionToModelPosition(new Te.a(M.startLineNumber,1)).lineNumber);const Ke=this._visibleLines.getStartLineNumber(),Je=this._visibleLines.getEndLineNumber();for(let at=M.startLineNumber;at<=M.endLineNumber;at++){if(atJe)continue;const jt=at===M.startLineNumber?M.startColumn:1,_t=at===M.endLineNumber?M.endColumn:this._context.model.getLineMaxColumn(at),Ht=this._visibleLines.getVisibleLine(at).getVisibleRangesForRange(at,jt,_t,pe);if(!Ht)continue;if(i&&atthis._visibleLines.getEndLineNumber())?null:this._visibleLines.getVisibleLine(o).getVisibleRangesForRange(o,i,r,new Ne(this.domNode.domNode,this._textRangeRestingSpot))}visibleRangeForPosition(o){const i=this._visibleRangesForLineRange(o.lineNumber,o.column,o.column);return i?new W(i.outsideRenderedLine,i.ranges[0].left):null}updateLineWidths(){this._updateLineWidths(!1)}_updateLineWidthsFast(){return this._updateLineWidths(!0)}_updateLineWidthsSlow(){this._updateLineWidths(!1)}_updateLineWidths(o){const i=this._visibleLines.getStartLineNumber(),r=this._visibleLines.getEndLineNumber();let M=1,N=!0;for(let $=i;$<=r;$++){const pe=this._visibleLines.getVisibleLine($);if(o&&!pe.getWidthIsFast()){N=!1;continue}M=Math.max(M,pe.getWidth())}return N&&i===1&&r===this._context.model.getLineCount()&&(this._maxLineWidth=0),this._ensureMaxLineWidth(M),N}_checkMonospaceFontAssumptions(){let o=-1,i=-1;const r=this._visibleLines.getStartLineNumber(),M=this._visibleLines.getEndLineNumber();for(let N=r;N<=M;N++){const $=this._visibleLines.getVisibleLine(N);if($.needsMonospaceFontCheck()){const pe=$.getWidth();pe>i&&(i=pe,o=N)}}if(o===-1)return;if(!this._visibleLines.getVisibleLine(o).monospaceAssumptionsAreValid())for(let N=r;N<=M;N++){const $=this._visibleLines.getVisibleLine(N);$.onMonospaceAssumptionsInvalidated()}}prepareRender(){throw new Error("Not supported")}render(){throw new Error("Not supported")}renderText(o){if(this._visibleLines.renderLines(o),this._lastRenderedData.setCurrentVisibleRange(o.visibleRange),this.domNode.setWidth(this._context.viewLayout.getScrollWidth()),this.domNode.setHeight(Math.min(this._context.viewLayout.getScrollHeight(),1e6)),this._horizontalRevealRequest){const r=this._horizontalRevealRequest;if(o.startLineNumber<=r.minLineNumber&&r.maxLineNumber<=o.endLineNumber){this._horizontalRevealRequest=null,this.onDidRender();const M=this._computeScrollLeftToReveal(r);M&&(this._isViewportWrapping||this._ensureMaxLineWidth(M.maxHorizontalOffset),this._context.model.setScrollPosition({scrollLeft:M.scrollLeft},r.scrollType))}}if(this._updateLineWidthsFast()||this._asyncUpdateLineWidths.schedule(),l.d&&!this._asyncCheckMonospaceFontAssumptions.isScheduled()){const r=this._visibleLines.getStartLineNumber(),M=this._visibleLines.getEndLineNumber();for(let N=r;N<=M;N++){const $=this._visibleLines.getVisibleLine(N);if($.needsMonospaceFontCheck()){this._asyncCheckMonospaceFontAssumptions.schedule();break}}}this._linesContent.setLayerHinting(this._canUseLayerHinting),this._linesContent.setContain("strict");const i=this._context.viewLayout.getCurrentScrollTop()-o.bigNumbersDelta;this._linesContent.setTop(-i),this._linesContent.setLeft(-this._context.viewLayout.getCurrentScrollLeft())}_ensureMaxLineWidth(o){const i=Math.ceil(o);this._maxLineWidth0){let Ht=M[0].startLineNumber,Jt=M[0].endLineNumber;for(let so=1,Co=M.length;sope){if(!Ke)return-1;_t=Je}else if(N===5||N===6)if(N===6&&$<=Je&&at<=_e)_t=$;else{const Ht=Math.max(5*this._lineHeight,pe*.2),Jt=Je-Ht,so=at-pe;_t=Math.max(so,Jt)}else if(N===1||N===2)if(N===2&&$<=Je&&at<=_e)_t=$;else{const Ht=(Je+at)/2;_t=Math.max(0,Ht-pe/2)}else _t=this._computeMinimumScrolling($,_e,Je,at,N===3,N===4);return _t}_computeScrollLeftToReveal(o){const i=this._context.viewLayout.getCurrentViewport(),r=i.left,M=r+i.width;let N=1073741824,$=0;if(o.type==="range"){const _e=this._visibleRangesForLineRange(o.lineNumber,o.startColumn,o.endColumn);if(!_e)return null;for(const Ke of _e.ranges)N=Math.min(N,Math.round(Ke.left)),$=Math.max($,Math.round(Ke.left+Ke.width))}else for(const _e of o.selections){if(_e.startLineNumber!==_e.endLineNumber)return null;const Ke=this._visibleRangesForLineRange(_e.startLineNumber,_e.startColumn,_e.endColumn);if(!Ke)return null;for(const Je of Ke.ranges)N=Math.min(N,Math.round(Je.left)),$=Math.max($,Math.round(Je.left+Je.width))}if(N=Math.max(0,N-Ee.HORIZONTAL_EXTRA_PX),$+=this._revealHorizontalRightPadding,o.type==="selections"&&$-N>i.width)return null;const pe=this._computeMinimumScrolling(r,M,N,$);return{scrollLeft:pe,maxHorizontalOffset:$}}_computeMinimumScrolling(o,i,r,M,N,$){o=o|0,i=i|0,r=r|0,M=M|0,N=!!N,$=!!$;const pe=i-o,_e=M-r;if(_ei)return Math.max(0,M-pe)}else return r;return o}}Ee.HORIZONTAL_EXTRA_PX=30;var ke=e("J+ZK");class Ve extends Pi{constructor(o){super();this._context=o;const i=this._context.configuration.options,r=i.get(129);this._decorationsLeft=r.decorationsLeft,this._decorationsWidth=r.decorationsWidth,this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(o){const i=this._context.configuration.options,r=i.get(129);return this._decorationsLeft=r.decorationsLeft,this._decorationsWidth=r.decorationsWidth,!0}onDecorationsChanged(o){return!0}onFlushed(o){return!0}onLinesChanged(o){return!0}onLinesDeleted(o){return!0}onLinesInserted(o){return!0}onScrollChanged(o){return o.scrollTopChanged}onZonesChanged(o){return!0}_getDecorations(o){const i=o.getDecorationsInViewport();let r=[],M=0;for(let N=0,$=i.length;N<$;N++){const pe=i[N],_e=pe.options.linesDecorationsClassName;_e&&(r[M++]=new bi(pe.range.startLineNumber,pe.range.endLineNumber,_e));const Ke=pe.options.firstLineDecorationClassName;Ke&&(r[M++]=new bi(pe.range.startLineNumber,pe.range.startLineNumber,Ke))}return r}prepareRender(o){const i=o.visibleRange.startLineNumber,r=o.visibleRange.endLineNumber,M=this._render(i,r,this._getDecorations(o)),N=this._decorationsLeft.toString(),$=this._decorationsWidth.toString(),pe='" style="left:'+N+"px;width:"+$+'px;">
    ',_e=[];for(let Ke=i;Ke<=r;Ke++){const Je=Ke-i,at=M[Je];let jt="";for(let _t=0,Ht=at.length;_t';N[pe]=Ke}this._renderResult=N}render(o,i){return this._renderResult?this._renderResult[i-o]:""}}var qt=e("8gvo");class Xt{constructor(o,i,r,M){this._rgba8Brand=void 0,this.r=Xt._clamp(o),this.g=Xt._clamp(i),this.b=Xt._clamp(r),this.a=Xt._clamp(M)}equals(o){return this.r===o.r&&this.g===o.g&&this.b===o.b&&this.a===o.a}static _clamp(o){return o<0?0:o>255?255:o|0}}Xt.Empty=new Xt(0,0,0,0);var Yt=e("twdY");class go extends d.a{constructor(){super();this._onDidChange=new u.b,this.onDidChange=this._onDidChange.event,this._updateColorMap(),this._register(Yt.F.onDidChange(o=>{o.changedColorMap&&this._updateColorMap()}))}static getInstance(){return this._INSTANCE||(this._INSTANCE=Object(d.h)(new go)),this._INSTANCE}_updateColorMap(){const o=Yt.F.getColorMap();if(!o){this._colors=[Xt.Empty],this._backgroundIsLight=!0;return}this._colors=[Xt.Empty];for(let r=1;r=.5,this._onDidChange.fire(void 0)}getColor(o){return(o<1||o>=this._colors.length)&&(o=2),this._colors[o]}backgroundIsLight(){return this._backgroundIsLight}}go._INSTANCE=null;var F=e("qNAo");const J=(()=>{const o=[];for(let i=32;i<=126;i++)o.push(i);return o.push(65533),o})(),Fe=(o,i)=>(o-=32,o<0||o>96?i<=2?(o+96)%96:96-1:o);var Ze=e("CZ1j");class St{constructor(o,i){this.scale=i,this._minimapCharRendererBrand=void 0,this.charDataNormal=St.soften(o,12/15),this.charDataLight=St.soften(o,50/60)}static soften(o,i){let r=new Uint8ClampedArray(o.length);for(let M=0,N=o.length;Mo.width||r+Ht>o.height){console.warn("bad render request outside image data");return}const Jt=Je?this.charDataLight:this.charDataNormal,so=Fe(M,Ke),Co=o.width*4,wo=pe.r,Do=pe.g,ko=pe.b,Po=N.r-wo,Qo=N.g-Do,Go=N.b-ko,zo=Math.max($,_e),Wo=o.data;let hi=so*jt*_t,ai=r*Co+i*4;for(let ti=0;tio.width||r+at>o.height){console.warn("bad render request outside image data");return}const jt=o.width*4,_t=.5*(N/255),Ht=$.r,Jt=$.g,so=$.b,Co=M.r-Ht,wo=M.g-Jt,Do=M.b-so,ko=Ht+Co*_t,Po=Jt+wo*_t,Qo=so+Do*_t,Go=Math.max(N,pe),zo=o.data;let Wo=r*jt+i*4;for(let hi=0;hi{const i=new Uint8ClampedArray(o.length/2);for(let r=0;r>1]=Vt[o[r]]<<4|Vt[o[r+1]]&15;return i},ho={1:Object(It.a)(()=>io("0000511D6300CF609C709645A78432005642574171487021003C451900274D35D762755E8B629C5BA856AF57BA649530C167D1512A272A3F6038604460398526BCA2A968DB6F8957C768BE5FBE2FB467CF5D8D5B795DC7625B5DFF50DE64C466DB2FC47CD860A65E9A2EB96CB54CE06DA763AB2EA26860524D3763536601005116008177A8705E53AB738E6A982F88BAA35B5F5B626D9C636B449B737E5B7B678598869A662F6B5B8542706C704C80736A607578685B70594A49715A4522E792")),2:Object(It.a)(()=>io("000000000000000055394F383D2800008B8B1F210002000081B1CBCBCC820000847AAF6B9AAF2119BE08B8881AD60000A44FD07DCCF107015338130C00000000385972265F390B406E2437634B4B48031B12B8A0847000001E15B29A402F0000000000004B33460B00007A752C2A0000000000004D3900000084394B82013400ABA5CFC7AD9C0302A45A3E5A98AB000089A43382D97900008BA54AA087A70A0248A6A7AE6DBE0000BF6F94987EA40A01A06DCFA7A7A9030496C32F77891D0000A99FB1A0AFA80603B29AB9CA75930D010C0948354D3900000C0948354F37460D0028BE673D8400000000AF9D7B6E00002B007AA8933400007AA642675C2700007984CFB9C3985B768772A8A6B7B20000CAAECAAFC4B700009F94A6009F840009D09F9BA4CA9C0000CC8FC76DC87F0000C991C472A2000000A894A48CA7B501079BA2C9C69BA20000B19A5D3FA89000005CA6009DA2960901B0A7F0669FB200009D009E00B7890000DAD0F5D092820000D294D4C48BD10000B5A7A4A3B1A50402CAB6CBA6A2000000B5A7A4A3B1A8044FCDADD19D9CB00000B7778F7B8AAE0803C9AB5D3F5D3F00009EA09EA0BAB006039EA0989A8C7900009B9EF4D6B7C00000A9A7816CACA80000ABAC84705D3F000096DA635CDC8C00006F486F266F263D4784006124097B00374F6D2D6D2D6D4A3A95872322000000030000000000008D8939130000000000002E22A5C9CBC70600AB25C0B5C9B400061A2DB04CA67001082AA6BEBEBFC606002321DACBC19E03087AA08B6768380000282FBAC0B8CA7A88AD25BBA5A29900004C396C5894A6000040485A6E356E9442A32CD17EADA70000B4237923628600003E2DE9C1D7B500002F25BBA5A2990000231DB6AFB4A804023025C0B5CAB588062B2CBDBEC0C706882435A75CA20000002326BD6A82A908048B4B9A5A668000002423A09CB4BB060025259C9D8A7900001C1FCAB2C7C700002A2A9387ABA200002626A4A47D6E9D14333163A0C87500004B6F9C2D643A257049364936493647358A34438355497F1A0000A24C1D590000D38DFFBDD4CD3126"))};class mo{static create(o,i){if(this.lastCreated&&o===this.lastCreated.scale&&i===this.lastFontFamily)return this.lastCreated;let r;return ho[o]?r=new St(ho[o](),o):r=mo.createFromSampleData(mo.createSampleData(i).data,o),this.lastFontFamily=i,this.lastCreated=r,r}static createSampleData(o){const i=document.createElement("canvas"),r=i.getContext("2d");i.style.height=`${16}px`,i.height=16,i.width=96*10,i.style.width=96*10+"px",r.fillStyle="#ffffff",r.font=`bold ${16}px ${o}`,r.textBaseline="middle";let M=0;for(const N of J)r.fillText(String.fromCharCode(N),M,16/2),M+=10;return r.getImageData(0,0,96*10,16)}static createFromSampleData(o,i){const r=16*10*4*96;if(o.length!==r)throw new Error("Unexpected source in MinimapCharRenderer");let M=mo._downsample(o,i);return new St(M,i)}static _downsampleChar(o,i,r,M,N){const $=1*N,pe=2*N;let _e=M,Ke=0;for(let Je=0;Je0){const Ke=255/_e;for(let Je=0;Jemo.create(this.fontScale,_e.fontFamily)),this.defaultBackgroundColor=r.getColor(2),this.backgroundColor=No._getMinimapBackground(i,this.defaultBackgroundColor),this.foregroundAlpha=No._getMinimapForegroundOpacity(i)}static _getMinimapBackground(o,i){const r=o.getColor(ni.dc);return r?new Xt(r.rgba.r,r.rgba.g,r.rgba.b,Math.round(255*r.rgba.a)):i}static _getMinimapForegroundOpacity(o){const i=o.getColor(ni.gc);return i?Xt._clamp(Math.round(255*i.rgba.a)):255}equals(o){return this.renderMinimap===o.renderMinimap&&this.size===o.size&&this.minimapHeightIsEditorHeight===o.minimapHeightIsEditorHeight&&this.scrollBeyondLastLine===o.scrollBeyondLastLine&&this.showSlider===o.showSlider&&this.pixelRatio===o.pixelRatio&&this.typicalHalfwidthCharacterWidth===o.typicalHalfwidthCharacterWidth&&this.lineHeight===o.lineHeight&&this.minimapLeft===o.minimapLeft&&this.minimapWidth===o.minimapWidth&&this.minimapHeight===o.minimapHeight&&this.canvasInnerWidth===o.canvasInnerWidth&&this.canvasInnerHeight===o.canvasInnerHeight&&this.canvasOuterWidth===o.canvasOuterWidth&&this.canvasOuterHeight===o.canvasOuterHeight&&this.isSampling===o.isSampling&&this.editorHeight===o.editorHeight&&this.fontScale===o.fontScale&&this.minimapLineHeight===o.minimapLineHeight&&this.minimapCharWidth===o.minimapCharWidth&&this.defaultBackgroundColor&&this.defaultBackgroundColor.equals(o.defaultBackgroundColor)&&this.backgroundColor&&this.backgroundColor.equals(o.backgroundColor)&&this.foregroundAlpha===o.foregroundAlpha}}class Ro{constructor(o,i,r,M,N,$,pe,_e){this.scrollTop=o,this.scrollHeight=i,this.sliderNeeded=r,this._computedSliderRatio=M,this.sliderTop=N,this.sliderHeight=$,this.startLineNumber=pe,this.endLineNumber=_e}getDesiredScrollTopFromDelta(o){return Math.round(this.scrollTop+o/this._computedSliderRatio)}getDesiredScrollTopFromTouchLocation(o){return Math.round((o-this.sliderHeight/2)/this._computedSliderRatio)}static create(o,i,r,M,N,$,pe,_e,Ke,Je,at){const jt=o.pixelRatio,_t=o.minimapLineHeight,Ht=Math.floor(o.canvasInnerHeight/_t),Jt=o.lineHeight;if(o.minimapHeightIsEditorHeight){const Po=_e*o.lineHeight+(o.scrollBeyondLastLine?N-o.lineHeight:0),Qo=Math.max(1,Math.floor(N*N/Po)),Go=Math.max(0,o.minimapHeight-Qo),zo=Go/(Je-N),Wo=Ke*zo,hi=Go>0,ai=Math.floor(o.canvasInnerHeight/o.minimapLineHeight);return new Ro(Ke,Je,hi,zo,Wo,Qo,1,Math.min(pe,ai))}let so;if($&&r!==pe){const Po=r-i+1;so=Math.floor(Po*_t/jt)}else{const Po=N/Jt;so=Math.floor(Po*_t/jt)}let Co;o.scrollBeyondLastLine?Co=(pe-1)*_t/jt:Co=Math.max(0,pe*_t/jt-so),Co=Math.min(o.minimapHeight-so,Co);const wo=Co/(Je-N),Do=Ke*wo;let ko=0;if(o.scrollBeyondLastLine){const Po=N/Jt;ko=Po-1}if(Ht>=pe+ko){const Po=1,Qo=pe,Go=Co>0;return new Ro(Ke,Je,Go,wo,Do,so,Po,Qo)}else{let Po=Math.max(1,Math.floor(i-Do*jt/_t));at&&at.scrollHeight===Je&&(at.scrollTop>Ke&&(Po=Math.min(Po,at.startLineNumber)),at.scrollTopTo.INVALID),this._renderedLines._set(o.startLineNumber,r)}linesEquals(o){if(!this.scrollEquals(o))return!1;const i=this._renderedLines._get(),r=i.lines;for(let M=0,N=r.length;M1){for(let ko=0,Po=pe-1;ko0&&this.minimapLines[r-1]>=o;)r--;let M=this.modelLineToMinimapLine(i)-1;for(;M+1i)return null}return[r+1,M+1]}decorationLineRangeToMinimapLineRange(o,i){let r=this.modelLineToMinimapLine(o),M=this.modelLineToMinimapLine(i);return o!==i&&M===r&&(M===this.minimapLines.length?r>1&&r--:M++),[r,M]}onLinesDeleted(o){const i=o.toLineNumber-o.fromLineNumber+1;let r=this.minimapLines.length,M=0;for(let N=this.minimapLines.length-1;N>=0&&!(this.minimapLines[N]=0&&!(this.minimapLines[r]0,scrollWidth:o.scrollWidth,scrollHeight:o.scrollHeight,viewportStartLineNumber:i,viewportEndLineNumber:r,viewportStartLineNumberVerticalOffset:o.getVerticalOffsetForLineNumber(i),scrollTop:o.scrollTop,scrollLeft:o.scrollLeft,viewportWidth:o.viewportWidth,viewportHeight:o.viewportHeight};this._actual.render(M)}_recreateLineSampling(){this._minimapSelections=null;const o=Boolean(this._samplingState),[i,r]=ri.compute(this.options,this._context.model.getLineCount(),this._samplingState);if(this._samplingState=i,o&&this._samplingState)for(const M of r)switch(M.type){case"deleted":this._actual.onLinesDeleted(M.deleteFromLineNumber,M.deleteToLineNumber);break;case"inserted":this._actual.onLinesInserted(M.insertFromLineNumber,M.insertToLineNumber);break;case"flush":this._actual.onFlushed();break}}getLineCount(){return this._samplingState?this._samplingState.minimapLines.length:this._context.model.getLineCount()}getRealLineCount(){return this._context.model.getLineCount()}getLineContent(o){return this._samplingState?this._context.model.getLineContent(this._samplingState.minimapLines[o-1]):this._context.model.getLineContent(o)}getLineMaxColumn(o){return this._samplingState?this._context.model.getLineMaxColumn(this._samplingState.minimapLines[o-1]):this._context.model.getLineMaxColumn(o)}getMinimapLinesRenderingData(o,i,r){if(this._samplingState){let M=[];for(let N=0,$=i-o+1;N<$;N++)r[N]?M[N]=this._context.model.getViewLineData(this._samplingState.minimapLines[o+N-1]):M[N]=null;return M}return this._context.model.getMinimapLinesRenderingData(o,i,r).data}getSelections(){if(this._minimapSelections===null)if(this._samplingState){this._minimapSelections=[];for(const o of this._selections){const[i,r]=this._samplingState.decorationLineRangeToMinimapLineRange(o.startLineNumber,o.endLineNumber);this._minimapSelections.push(new m.a(i,o.startColumn,r,o.endColumn))}}else this._minimapSelections=this._selections;return this._minimapSelections}getMinimapDecorationsInViewport(o,i){let r;if(this._samplingState){const N=this._samplingState.minimapLines[o-1],$=this._samplingState.minimapLines[i-1];r=new He.a(N,1,$,this._context.model.getLineMaxColumn($))}else r=new He.a(o,1,i,this._context.model.getLineMaxColumn(i));const M=this._context.model.getDecorationsInViewport(r);if(this._samplingState){let N=[];for(const $ of M){if(!$.options.minimap)continue;const pe=$.range,_e=this._samplingState.modelLineToMinimapLine(pe.startLineNumber),Ke=this._samplingState.modelLineToMinimapLine(pe.endLineNumber);N.push(new F.h(new He.a(_e,pe.startColumn,Ke,pe.endColumn),$.options))}return N}return M}getOptions(){return this._context.model.getTextModelOptions()}revealLineNumber(o){this._samplingState&&(o=this._samplingState.minimapLines[o-1]),this._context.model.revealRange("mouse",!1,new He.a(o,1,o,1),1,0)}setScrollTop(o){this._context.model.setScrollPosition({scrollTop:o},1)}}class li extends d.a{constructor(o,i){super();this._renderDecorations=!1,this._gestureInProgress=!1,this._theme=o,this._model=i,this._lastRenderData=null,this._buffers=null,this._selectionColor=this._theme.getColor(ni.hc),this._domNode=Object(c.b)(document.createElement("div")),Se.write(this._domNode,8),this._domNode.setClassName(this._getMinimapDomNodeClassName()),this._domNode.setPosition("absolute"),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._shadow=Object(c.b)(document.createElement("div")),this._shadow.setClassName("minimap-shadow-hidden"),this._domNode.appendChild(this._shadow),this._canvas=Object(c.b)(document.createElement("canvas")),this._canvas.setPosition("absolute"),this._canvas.setLeft(0),this._domNode.appendChild(this._canvas),this._decorationsCanvas=Object(c.b)(document.createElement("canvas")),this._decorationsCanvas.setPosition("absolute"),this._decorationsCanvas.setClassName("minimap-decorations-layer"),this._decorationsCanvas.setLeft(0),this._domNode.appendChild(this._decorationsCanvas),this._slider=Object(c.b)(document.createElement("div")),this._slider.setPosition("absolute"),this._slider.setClassName("minimap-slider"),this._slider.setLayerHinting(!0),this._slider.setContain("strict"),this._domNode.appendChild(this._slider),this._sliderHorizontal=Object(c.b)(document.createElement("div")),this._sliderHorizontal.setPosition("absolute"),this._sliderHorizontal.setClassName("minimap-slider-horizontal"),this._slider.appendChild(this._sliderHorizontal),this._applyLayout(),this._mouseDownListener=S.o(this._domNode.domNode,"mousedown",r=>{r.preventDefault();const M=this._model.options.renderMinimap;if(M===0)return;if(!this._lastRenderData)return;if(this._model.options.size!=="proportional"){if(r.leftButton&&this._lastRenderData){const Ke=S.D(this._slider.domNode),Je=Ke.top+Ke.height/2;this._startSliderDragging(r.buttons,r.posx,Je,r.posy,this._lastRenderData.renderedLayout)}return}const N=this._model.options.minimapLineHeight,$=this._model.options.canvasInnerHeight/this._model.options.canvasOuterHeight*r.browserEvent.offsetY,pe=Math.floor($/N);let _e=pe+this._lastRenderData.renderedLayout.startLineNumber;_e=Math.min(_e,this._model.getLineCount()),this._model.revealLineNumber(_e)}),this._sliderMouseMoveMonitor=new v.a,this._sliderMouseDownListener=S.o(this._slider.domNode,"mousedown",r=>{r.preventDefault(),r.stopPropagation(),r.leftButton&&this._lastRenderData&&this._startSliderDragging(r.buttons,r.posx,r.posy,r.posy,this._lastRenderData.renderedLayout)}),this._gestureDisposable=g.b.addTarget(this._domNode.domNode),this._sliderTouchStartListener=S.i(this._domNode.domNode,g.a.Start,r=>{r.preventDefault(),r.stopPropagation(),this._lastRenderData&&(this._slider.toggleClassName("active",!0),this._gestureInProgress=!0,this.scrollDueToTouchEvent(r))},{passive:!1}),this._sliderTouchMoveListener=S.i(this._domNode.domNode,g.a.Change,r=>{r.preventDefault(),r.stopPropagation(),this._lastRenderData&&this._gestureInProgress&&this.scrollDueToTouchEvent(r)},{passive:!1}),this._sliderTouchEndListener=S.o(this._domNode.domNode,g.a.End,r=>{r.preventDefault(),r.stopPropagation(),this._gestureInProgress=!1,this._slider.toggleClassName("active",!1)})}_startSliderDragging(o,i,r,M,N){this._slider.toggleClassName("active",!0);const $=(pe,_e)=>{const Ke=Math.abs(_e-i);if(l.i&&Ke>yo){this._model.setScrollTop(N.scrollTop);return}const Je=pe-r;this._model.setScrollTop(N.getDesiredScrollTopFromDelta(Je))};M!==r&&$(M,i),this._sliderMouseMoveMonitor.startMonitoring(this._slider.domNode,o,v.b,pe=>$(pe.posy,pe.posx),()=>{this._slider.toggleClassName("active",!1)})}scrollDueToTouchEvent(o){const i=this._domNode.domNode.getBoundingClientRect().top,r=this._lastRenderData.renderedLayout.getDesiredScrollTopFromTouchLocation(o.pageY-i);this._model.setScrollTop(r)}dispose(){this._mouseDownListener.dispose(),this._sliderMouseMoveMonitor.dispose(),this._sliderMouseDownListener.dispose(),this._gestureDisposable.dispose(),this._sliderTouchStartListener.dispose(),this._sliderTouchMoveListener.dispose(),this._sliderTouchEndListener.dispose(),super.dispose()}_getMinimapDomNodeClassName(){return this._model.options.showSlider==="always"?"minimap slider-always":"minimap slider-mouseover"}getDomNode(){return this._domNode}_applyLayout(){this._domNode.setLeft(this._model.options.minimapLeft),this._domNode.setWidth(this._model.options.minimapWidth),this._domNode.setHeight(this._model.options.minimapHeight),this._shadow.setHeight(this._model.options.minimapHeight),this._canvas.setWidth(this._model.options.canvasOuterWidth),this._canvas.setHeight(this._model.options.canvasOuterHeight),this._canvas.domNode.width=this._model.options.canvasInnerWidth,this._canvas.domNode.height=this._model.options.canvasInnerHeight,this._decorationsCanvas.setWidth(this._model.options.canvasOuterWidth),this._decorationsCanvas.setHeight(this._model.options.canvasOuterHeight),this._decorationsCanvas.domNode.width=this._model.options.canvasInnerWidth,this._decorationsCanvas.domNode.height=this._model.options.canvasInnerHeight,this._slider.setWidth(this._model.options.minimapWidth)}_getBuffer(){return this._buffers||this._model.options.canvasInnerWidth>0&&this._model.options.canvasInnerHeight>0&&(this._buffers=new Yo(this._canvas.domNode.getContext("2d"),this._model.options.canvasInnerWidth,this._model.options.canvasInnerHeight,this._model.options.backgroundColor)),this._buffers?this._buffers.getBuffer():null}onDidChangeOptions(){this._lastRenderData=null,this._buffers=null,this._applyLayout(),this._domNode.setClassName(this._getMinimapDomNodeClassName())}onSelectionChanged(){return this._renderDecorations=!0,!0}onDecorationsChanged(){return this._renderDecorations=!0,!0}onFlushed(){return this._lastRenderData=null,!0}onLinesChanged(o,i){return this._lastRenderData?this._lastRenderData.onLinesChanged(o,i):!1}onLinesDeleted(o,i){return this._lastRenderData&&this._lastRenderData.onLinesDeleted(o,i),!0}onLinesInserted(o,i){return this._lastRenderData&&this._lastRenderData.onLinesInserted(o,i),!0}onScrollChanged(){return this._renderDecorations=!0,!0}onThemeChanged(){return this._selectionColor=this._theme.getColor(ni.hc),this._renderDecorations=!0,!0}onTokensChanged(o){return this._lastRenderData?this._lastRenderData.onTokensChanged(o):!1}onTokensColorsChanged(){return this._lastRenderData=null,this._buffers=null,!0}onZonesChanged(){return this._lastRenderData=null,!0}render(o){const i=this._model.options.renderMinimap;if(i===0){this._shadow.setClassName("minimap-shadow-hidden"),this._sliderHorizontal.setWidth(0),this._sliderHorizontal.setHeight(0);return}o.scrollLeft+o.viewportWidth>=o.scrollWidth?this._shadow.setClassName("minimap-shadow-hidden"):this._shadow.setClassName("minimap-shadow-visible");const r=Ro.create(this._model.options,o.viewportStartLineNumber,o.viewportEndLineNumber,o.viewportStartLineNumberVerticalOffset,o.viewportHeight,o.viewportContainsWhitespaceGaps,this._model.getLineCount(),this._model.getRealLineCount(),o.scrollTop,o.scrollHeight,this._lastRenderData?this._lastRenderData.renderedLayout:null);this._slider.setDisplay(r.sliderNeeded?"block":"none"),this._slider.setTop(r.sliderTop),this._slider.setHeight(r.sliderHeight),this._sliderHorizontal.setLeft(0),this._sliderHorizontal.setWidth(this._model.options.minimapWidth),this._sliderHorizontal.setTop(0),this._sliderHorizontal.setHeight(r.sliderHeight),this.renderDecorations(r),this._lastRenderData=this.renderLines(r)}renderDecorations(o){if(this._renderDecorations){this._renderDecorations=!1;const i=this._model.getSelections();i.sort(He.a.compareRangesUsingStarts);const r=this._model.getMinimapDecorationsInViewport(o.startLineNumber,o.endLineNumber);r.sort((jt,_t)=>(jt.options.zIndex||0)-(_t.options.zIndex||0));const{canvasInnerWidth:M,canvasInnerHeight:N}=this._model.options,$=this._model.options.minimapLineHeight,pe=this._model.options.minimapCharWidth,_e=this._model.getOptions().tabSize,Ke=this._decorationsCanvas.domNode.getContext("2d");Ke.clearRect(0,0,M,N);const Je=new Ai(o.startLineNumber,o.endLineNumber,!1);this._renderSelectionLineHighlights(Ke,i,Je,o,$),this._renderDecorationsLineHighlights(Ke,r,Je,o,$);const at=new Ai(o.startLineNumber,o.endLineNumber,null);this._renderSelectionsHighlights(Ke,i,at,o,$,_e,pe,M),this._renderDecorationsHighlights(Ke,r,at,o,$,_e,pe,M)}}_renderSelectionLineHighlights(o,i,r,M,N){if(!this._selectionColor||this._selectionColor.isTransparent())return;o.fillStyle=this._selectionColor.transparent(.5).toString();let $=0,pe=0;for(const _e of i){const Ke=Math.max(M.startLineNumber,_e.startLineNumber),Je=Math.min(M.endLineNumber,_e.endLineNumber);if(Ke>Je)continue;for(let _t=Ke;_t<=Je;_t++)r.set(_t,!0);const at=(Ke-M.startLineNumber)*N,jt=(Je-M.startLineNumber)*N+N;pe>=at||(pe>$&&o.fillRect(Oe.h,$,o.canvas.width,pe-$),$=at),pe=jt}pe>$&&o.fillRect(Oe.h,$,o.canvas.width,pe-$)}_renderDecorationsLineHighlights(o,i,r,M,N){const $=new Map;for(let pe=i.length-1;pe>=0;pe--){const _e=i[pe],Ke=_e.options.minimap;if(!Ke||Ke.position!==Xi.f.Inline)continue;const Je=Math.max(M.startLineNumber,_e.range.startLineNumber),at=Math.min(M.endLineNumber,_e.range.endLineNumber);if(Je>at)continue;const jt=Ke.getColor(this._theme);if(!jt||jt.isTransparent())continue;let _t=$.get(jt.toString());_t||(_t=jt.transparent(.5).toString(),$.set(jt.toString(),_t)),o.fillStyle=_t;for(let Ht=Je;Ht<=at;Ht++){if(r.has(Ht))continue;r.set(Ht,!0);const Jt=(Je-M.startLineNumber)*N;o.fillRect(Oe.h,Jt,o.canvas.width,N)}}}_renderSelectionsHighlights(o,i,r,M,N,$,pe,_e){if(!this._selectionColor||this._selectionColor.isTransparent())return;for(const Ke of i){const Je=Math.max(M.startLineNumber,Ke.startLineNumber),at=Math.min(M.endLineNumber,Ke.endLineNumber);if(Je>at)continue;for(let jt=Je;jt<=at;jt++)this.renderDecorationOnLine(o,r,Ke,this._selectionColor,M,jt,N,N,$,pe,_e)}}_renderDecorationsHighlights(o,i,r,M,N,$,pe,_e){for(const Ke of i){const Je=Ke.options.minimap;if(!Je)continue;const at=Math.max(M.startLineNumber,Ke.range.startLineNumber),jt=Math.min(M.endLineNumber,Ke.range.endLineNumber);if(at>jt)continue;const _t=Je.getColor(this._theme);if(!_t||_t.isTransparent())continue;for(let Ht=at;Ht<=jt;Ht++)switch(Je.position){case Xi.f.Inline:this.renderDecorationOnLine(o,r,Ke.range,_t,M,Ht,N,N,$,pe,_e);continue;case Xi.f.Gutter:const Jt=(Ht-M.startLineNumber)*N,so=2;this.renderDecoration(o,_t,so,Jt,Io,N);continue}}}renderDecorationOnLine(o,i,r,M,N,$,pe,_e,Ke,Je,at){const jt=($-N.startLineNumber)*_e;if(jt+pe<0||jt>this._model.options.canvasInnerHeight)return;const{startLineNumber:_t,endLineNumber:Ht}=r,Jt=_t===$?r.startColumn:1,so=Ht===$?r.endColumn:this._model.getLineMaxColumn($),Co=this.getXOffsetForPosition(i,$,Jt,Ke,Je,at),wo=this.getXOffsetForPosition(i,$,so,Ke,Je,at);this.renderDecoration(o,M,Co,jt,wo-Co,pe)}getXOffsetForPosition(o,i,r,M,N,$){if(r===1)return Oe.h;const pe=(r-1)*N;if(pe>=$)return $;let _e=o.get(i);if(!_e){const Ke=this._model.getLineContent(i);_e=[Oe.h];let Je=Oe.h;for(let at=1;at=$){_e[at]=$;break}_e[at]=Ht,Je=Ht}o.set(i,_e)}return r-1<_e.length?_e[r-1]:$}renderDecoration(o,i,r,M,N,$){o.fillStyle=i&&i.toString()||"",o.fillRect(r,M,N,$)}renderLines(o){const i=o.startLineNumber,r=o.endLineNumber,M=this._model.options.minimapLineHeight;if(this._lastRenderData&&this._lastRenderData.linesEquals(o)){const $i=this._lastRenderData._get();return new Ho(o,$i.imageData,$i.lines)}const N=this._getBuffer();if(!N)return null;let[$,pe,_e]=li._renderUntouchedLines(N,i,r,M,this._lastRenderData);const Ke=this._model.getMinimapLinesRenderingData(i,r,_e),Je=this._model.getOptions().tabSize,at=this._model.options.defaultBackgroundColor,jt=this._model.options.backgroundColor,_t=this._model.options.foregroundAlpha,Ht=this._model.tokensColorTracker,Jt=Ht.backgroundIsLight(),so=this._model.options.renderMinimap,Co=this._model.options.charRenderer(),wo=this._model.options.fontScale,Do=this._model.options.minimapCharWidth,ko=so===1?2:2+1,Po=ko*wo,Qo=M>Po?Math.floor((M-Po)/2):0,Go=jt.a/255,zo=new Xt(Math.round((jt.r-at.r)*Go+at.r),Math.round((jt.g-at.g)*Go+at.g),Math.round((jt.b-at.b)*Go+at.b),255);let Wo=0;const hi=[];for(let $i=0,Zi=r-i+1;$i=0&&hiwo)return;const ti=so.charCodeAt(Po);if(ti===9){const Wi=jt-(Po+Qo)%jt;Qo+=Wi-1,ko+=Wi*$}else if(ti===32)ko+=$;else{const Wi=gt.D(ti)?2:1;for(let zi=0;ziwo)return}}}}}class Ai{constructor(o,i,r){this._startLineNumber=o,this._endLineNumber=i,this._defaultValue=r,this._values=[];for(let M=0,N=this._endLineNumber-this._startLineNumber+1;Mthis._endLineNumber)return;this._values[o-this._startLineNumber]=i}get(o){return othis._endLineNumber?this._defaultValue:this._values[o-this._startLineNumber]}}Object(Mt.f)((o,i)=>{const r=o.getColor(ni.kc);r&&i.addRule(`.monaco-editor .minimap-slider .minimap-slider-horizontal { background: ${r}; }`);const M=o.getColor(ni.lc);M&&i.addRule(`.monaco-editor .minimap-slider:hover .minimap-slider-horizontal { background: ${M}; }`);const N=o.getColor(ni.jc);N&&i.addRule(`.monaco-editor .minimap-slider.active .minimap-slider-horizontal { background: ${N}; }`);const $=o.getColor(ni.Ec);$&&i.addRule(`.monaco-editor .minimap-shadow-visible { box-shadow: ${$} -6px 0 6px -6px inset; }`)});var _i=e("cl4r");class ui extends ee{constructor(o){super(o);const i=this._context.configuration.options,r=i.get(129);this._widgets={},this._verticalScrollbarWidth=r.verticalScrollbarWidth,this._minimapWidth=r.minimap.minimapWidth,this._horizontalScrollbarHeight=r.horizontalScrollbarHeight,this._editorHeight=r.height,this._editorWidth=r.width,this._domNode=Object(c.b)(document.createElement("div")),Se.write(this._domNode,4),this._domNode.setClassName("overlayWidgets")}dispose(){super.dispose(),this._widgets={}}getDomNode(){return this._domNode}onConfigurationChanged(o){const i=this._context.configuration.options,r=i.get(129);return this._verticalScrollbarWidth=r.verticalScrollbarWidth,this._minimapWidth=r.minimap.minimapWidth,this._horizontalScrollbarHeight=r.horizontalScrollbarHeight,this._editorHeight=r.height,this._editorWidth=r.width,!0}addWidget(o){const i=Object(c.b)(o.getDomNode());this._widgets[o.getId()]={widget:o,preference:null,domNode:i},i.setPosition("absolute"),i.setAttribute("widgetId",o.getId()),this._domNode.appendChild(i),this.setShouldRender()}setWidgetPosition(o,i){const r=this._widgets[o.getId()];return r.preference===i?!1:(r.preference=i,this.setShouldRender(),!0)}removeWidget(o){const i=o.getId();if(this._widgets.hasOwnProperty(i)){const r=this._widgets[i],M=r.domNode.domNode;delete this._widgets[i],M.parentNode.removeChild(M),this.setShouldRender()}}_renderWidget(o){const i=o.domNode;if(o.preference===null){i.unsetTop();return}if(o.preference===0)i.setTop(0),i.setRight(2*this._verticalScrollbarWidth+this._minimapWidth);else if(o.preference===1){const r=i.domNode.clientHeight;i.setTop(this._editorHeight-r-2*this._horizontalScrollbarHeight),i.setRight(2*this._verticalScrollbarWidth+this._minimapWidth)}else o.preference===2&&(i.setTop(0),i.domNode.style.right="50%")}prepareRender(o){}render(o){this._domNode.setWidth(this._editorWidth);const i=Object.keys(this._widgets);for(let r=0,M=i.length;r=3){const N=Math.floor(M/3),$=Math.floor(M/3),pe=M-N-$,_e=o,Ke=_e+N,Je=_e+N+pe;return[[0,_e,Ke,_e,Je,_e,Ke,_e],[0,N,pe,N+pe,$,N+pe+$,pe+$,N+pe+$]]}else if(r===2){const N=Math.floor(M/2),$=M-N,pe=o,_e=pe+N;return[[0,pe,pe,pe,_e,pe,pe,pe],[0,N,N,N,$,N+$,N+$,N+$]]}else{const N=o,$=M;return[[0,N,N,N,N,N,N,N],[0,$,$,$,$,$,$,$]]}}equals(o){return this.lineHeight===o.lineHeight&&this.pixelRatio===o.pixelRatio&&this.overviewRulerLanes===o.overviewRulerLanes&&this.renderBorder===o.renderBorder&&this.borderColor===o.borderColor&&this.hideCursor===o.hideCursor&&this.cursorColor===o.cursorColor&&this.themeType===o.themeType&&this.backgroundColor===o.backgroundColor&&this.top===o.top&&this.right===o.right&&this.domWidth===o.domWidth&&this.domHeight===o.domHeight&&this.canvasWidth===o.canvasWidth&&this.canvasHeight===o.canvasHeight}}class Dn extends ee{constructor(o){super(o);this._domNode=Object(c.b)(document.createElement("canvas")),this._domNode.setClassName("decorationsOverviewRuler"),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._domNode.setAttribute("aria-hidden","true"),this._updateSettings(!1),this._tokensColorTrackerListener=Yt.F.onDidChange(i=>{i.changedColorMap&&this._updateSettings(!0)}),this._cursorPositions=[]}dispose(){super.dispose(),this._tokensColorTrackerListener.dispose()}_updateSettings(o){const i=new an(this._context.configuration,this._context.theme);return this._settings&&this._settings.equals(i)?!1:(this._settings=i,this._domNode.setTop(this._settings.top),this._domNode.setRight(this._settings.right),this._domNode.setWidth(this._settings.domWidth),this._domNode.setHeight(this._settings.domHeight),this._domNode.domNode.width=this._settings.canvasWidth,this._domNode.domNode.height=this._settings.canvasHeight,o&&this._render(),!0)}onConfigurationChanged(o){return this._updateSettings(!1)}onCursorStateChanged(o){this._cursorPositions=[];for(let i=0,r=o.selections.length;ii&&(ai=i-Ke),zo=ai-Ke,Wo=ai+Ke}zo>wo+1||Po!==so?(Do!==0&&Je.fillRect(at[so],Co,jt[so],wo-Co),so=Po,Co=zo,wo=Wo):Wo>wo&&(wo=Wo)}Je.fillRect(at[so],Co,jt[so],wo-Co)}if(!this._settings.hideCursor&&this._settings.cursorColor){const _t=2*this._settings.pixelRatio|0,Ht=_t/2|0,Jt=this._settings.x[7],so=this._settings.w[7];Je.fillStyle=this._settings.cursorColor;let Co=-100,wo=-100;for(let Do=0,ko=this._cursorPositions.length;Doi&&(Qo=i-Ht);const Go=Qo-Ht,zo=Go+_t;Go>wo+1?(Do!==0&&Je.fillRect(Jt,Co,so,wo-Co),Co=Go,wo=zo):zo>wo&&(wo=zo)}Je.fillRect(Jt,Co,so,wo-Co)}this._settings.renderBorder&&this._settings.borderColor&&this._settings.overviewRulerLanes>0&&(Je.beginPath(),Je.lineWidth=1,Je.strokeStyle=this._settings.borderColor,Je.moveTo(0,0),Je.lineTo(0,i),Je.stroke(),Je.moveTo(0,0),Je.lineTo(o,0),Je.stroke())}}var fn=e("MvK1");class pn extends Q{constructor(o,i){super();this._context=o;const r=this._context.configuration.options;this._domNode=Object(c.b)(document.createElement("canvas")),this._domNode.setClassName(i),this._domNode.setPosition("absolute"),this._domNode.setLayerHinting(!0),this._domNode.setContain("strict"),this._zoneManager=new fn.b(M=>this._context.viewLayout.getVerticalOffsetForLineNumber(M)),this._zoneManager.setDOMWidth(0),this._zoneManager.setDOMHeight(0),this._zoneManager.setOuterHeight(this._context.viewLayout.getScrollHeight()),this._zoneManager.setLineHeight(r.get(58)),this._zoneManager.setPixelRatio(r.get(127)),this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),super.dispose()}onConfigurationChanged(o){const i=this._context.configuration.options;return o.hasChanged(58)&&(this._zoneManager.setLineHeight(i.get(58)),this._render()),o.hasChanged(127)&&(this._zoneManager.setPixelRatio(i.get(127)),this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render()),!0}onFlushed(o){return this._render(),!0}onScrollChanged(o){return o.scrollHeightChanged&&(this._zoneManager.setOuterHeight(o.scrollHeight),this._render()),!0}onZonesChanged(o){return this._render(),!0}getDomNode(){return this._domNode.domNode}setLayout(o){this._domNode.setTop(o.top),this._domNode.setRight(o.right);let i=!1;i=this._zoneManager.setDOMWidth(o.width)||i,i=this._zoneManager.setDOMHeight(o.height)||i,i&&(this._domNode.setWidth(this._zoneManager.getDOMWidth()),this._domNode.setHeight(this._zoneManager.getDOMHeight()),this._domNode.domNode.width=this._zoneManager.getCanvasWidth(),this._domNode.domNode.height=this._zoneManager.getCanvasHeight(),this._render())}setZones(o){this._zoneManager.setZones(o),this._render()}_render(){if(this._zoneManager.getOuterHeight()===0)return!1;const o=this._zoneManager.getCanvasWidth(),i=this._zoneManager.getCanvasHeight(),r=this._zoneManager.resolveColorZones(),M=this._zoneManager.getId2Color(),N=this._domNode.domNode.getContext("2d");return N.clearRect(0,0,o,i),r.length>0&&this._renderOneLane(N,r,M,o),!0}_renderOneLane(o,i,r,M){let N=0,$=0,pe=0;for(const _e of i){const Ke=_e.colorId,Je=_e.from,at=_e.to;Ke!==N?(o.fillRect(0,$,M,pe-$),N=Ke,o.fillStyle=r[N],$=Je,pe=at):pe>=Je?pe=Math.max(pe,at):(o.fillRect(0,$,M,pe-$),$=Je,pe=at)}o.fillRect(0,$,M,pe-$)}}var Vn=e("7zd4");class Qi extends ee{constructor(o){super(o);this.domNode=Object(c.b)(document.createElement("div")),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.domNode.setClassName("view-rulers"),this._renderedRulers=[];const i=this._context.configuration.options;this._rulers=i.get(90),this._typicalHalfwidthCharacterWidth=i.get(43).typicalHalfwidthCharacterWidth}dispose(){super.dispose()}onConfigurationChanged(o){const i=this._context.configuration.options;return this._rulers=i.get(90),this._typicalHalfwidthCharacterWidth=i.get(43).typicalHalfwidthCharacterWidth,!0}onScrollChanged(o){return o.scrollHeightChanged}prepareRender(o){}_ensureRulersCount(){const o=this._renderedRulers.length,i=this._rulers.length;if(o===i)return;if(o0;){const pe=Object(c.b)(document.createElement("div"));pe.setClassName("view-ruler"),pe.setWidth(N),this.domNode.appendChild(pe),this._renderedRulers.push(pe),$--}return}let r=o-i;for(;r>0;){const M=this._renderedRulers.pop();this.domNode.removeChild(M),r--}}render(o){this._ensureRulersCount();for(let i=0,r=this._rulers.length;i{const r=o.getColor(Ye.G);r&&i.addRule(`.monaco-editor .view-ruler { box-shadow: 1px 0 0 0 ${r} inset; }`)});var wn=e("2MPD");class ln extends ee{constructor(o){super(o);this._scrollTop=0,this._width=0,this._updateWidth(),this._shouldShow=!1;const i=this._context.configuration.options,r=i.get(91);this._useShadows=r.useShadows,this._domNode=Object(c.b)(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true")}dispose(){super.dispose()}_updateShouldShow(){const o=this._useShadows&&this._scrollTop>0;return this._shouldShow!==o?(this._shouldShow=o,!0):!1}getDomNode(){return this._domNode}_updateWidth(){const o=this._context.configuration.options,i=o.get(129);i.minimap.renderMinimap===0||i.minimap.minimapWidth>0&&i.minimap.minimapLeft===0?this._width=i.width:this._width=i.width-i.minimap.minimapWidth-i.verticalScrollbarWidth}onConfigurationChanged(o){const i=this._context.configuration.options,r=i.get(91);return this._useShadows=r.useShadows,this._updateWidth(),this._updateShouldShow(),!0}onScrollChanged(o){return this._scrollTop=o.scrollTop,this._updateShouldShow()}prepareRender(o){}render(o){this._domNode.setWidth(this._width),this._domNode.setClassName(this._shouldShow?"scroll-decoration":"")}}Object(Mt.f)((o,i)=>{const r=o.getColor(ni.Ec);r&&i.addRule(`.monaco-editor .scroll-decoration { box-shadow: ${r} 0 6px 6px -6px inset; }`)});var si=e("eC1c");class co{constructor(o){this.left=o.left,this.width=o.width,this.startStyle=null,this.endStyle=null}}class Ao{constructor(o,i){this.lineNumber=o,this.ranges=i}}function qo(o){return new co(o)}function mi(o){return new Ao(o.lineNumber,o.ranges.map(qo))}class oi extends Ue{constructor(o){super();this._previousFrameVisibleRangesWithStyle=[],this._context=o;const i=this._context.configuration.options;this._lineHeight=i.get(58),this._roundedSelection=i.get(89),this._typicalHalfwidthCharacterWidth=i.get(43).typicalHalfwidthCharacterWidth,this._selections=[],this._renderResult=null,this._context.addEventHandler(this)}dispose(){this._context.removeEventHandler(this),this._renderResult=null,super.dispose()}onConfigurationChanged(o){const i=this._context.configuration.options;return this._lineHeight=i.get(58),this._roundedSelection=i.get(89),this._typicalHalfwidthCharacterWidth=i.get(43).typicalHalfwidthCharacterWidth,!0}onCursorStateChanged(o){return this._selections=o.selections.slice(0),!0}onDecorationsChanged(o){return!0}onFlushed(o){return!0}onLinesChanged(o){return!0}onLinesDeleted(o){return!0}onLinesInserted(o){return!0}onScrollChanged(o){return o.scrollTopChanged}onZonesChanged(o){return!0}_visibleRangesHaveGaps(o){for(let i=0,r=o.length;i1)return!0}return!1}_enrichVisibleRangesWithStyle(o,i,r){const M=this._typicalHalfwidthCharacterWidth/4;let N=null,$=null;if(r&&r.length>0&&i.length>0){const pe=i[0].lineNumber;if(pe===o.startLineNumber)for(let Ke=0;!N&&Ke=0;Ke--)r[Ke].lineNumber===_e&&($=r[Ke].ranges[0]);N&&!N.startStyle&&(N=null),$&&!$.startStyle&&($=null)}for(let pe=0,_e=i.length;pe<_e;pe++){const Ke=i[pe].ranges[0],Je=Ke.left,at=Ke.left+Ke.width,jt={top:0,bottom:0},_t={top:0,bottom:0};if(pe>0){const Ht=i[pe-1].ranges[0].left,Jt=i[pe-1].ranges[0].left+i[pe-1].ranges[0].width;Ji(Je-Ht)Ht&&(jt.top=1),Ji(at-Jt)'}_actualRenderOneSelection(o,i,r,M){if(M.length===0)return;const N=!!M[0].ranges[0].startStyle,$=this._lineHeight.toString(),pe=(this._lineHeight-1).toString(),_e=M[0].lineNumber,Ke=M[M.length-1].lineNumber;for(let Je=0,at=M.length;Je1,Ke)}this._previousFrameVisibleRangesWithStyle=N,this._renderResult=i.map(([$,pe])=>$+pe)}render(o,i){if(!this._renderResult)return"";const r=i-o;return r<0||r>=this._renderResult.length?"":this._renderResult[r]}}oi.SELECTION_CLASS_NAME="selected-text",oi.SELECTION_TOP_LEFT="top-left-radius",oi.SELECTION_BOTTOM_LEFT="bottom-left-radius",oi.SELECTION_TOP_RIGHT="top-right-radius",oi.SELECTION_BOTTOM_RIGHT="bottom-right-radius",oi.EDITOR_BACKGROUND_CLASS_NAME="monaco-editor-background",oi.ROUNDED_PIECE_WIDTH=10,Object(Mt.f)((o,i)=>{const r=o.getColor(ni.V);r&&i.addRule(`.monaco-editor .focused .selected-text { background-color: ${r}; }`);const M=o.getColor(ni.J);M&&i.addRule(`.monaco-editor .selected-text { background-color: ${M}; }`);const N=o.getColor(ni.W);N&&!N.isTransparent()&&i.addRule(`.monaco-editor .view-line span.inline-selected-text { color: ${N}; }`)});function Ji(o){return o<0?-o:o}var T=e("2Tsy");class _{constructor(o,i,r,M,N,$){this.top=o,this.left=i,this.width=r,this.height=M,this.textContent=N,this.textContentClassName=$}}class R{constructor(o){this._context=o;const i=this._context.configuration.options,r=i.get(43);this._cursorStyle=i.get(24),this._lineHeight=i.get(58),this._typicalHalfwidthCharacterWidth=r.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(i.get(27),this._typicalHalfwidthCharacterWidth),this._isVisible=!0,this._domNode=Object(c.b)(document.createElement("div")),this._domNode.setClassName(`cursor ${Zt.a}`),this._domNode.setHeight(this._lineHeight),this._domNode.setTop(0),this._domNode.setLeft(0),p.a.applyFontInfo(this._domNode,r),this._domNode.setDisplay("none"),this._position=new Te.a(1,1),this._lastRenderedContent="",this._renderData=null}getDomNode(){return this._domNode}getPosition(){return this._position}show(){this._isVisible||(this._domNode.setVisibility("inherit"),this._isVisible=!0)}hide(){this._isVisible&&(this._domNode.setVisibility("hidden"),this._isVisible=!1)}onConfigurationChanged(o){const i=this._context.configuration.options,r=i.get(43);return this._cursorStyle=i.get(24),this._lineHeight=i.get(58),this._typicalHalfwidthCharacterWidth=r.typicalHalfwidthCharacterWidth,this._lineCursorWidth=Math.min(i.get(27),this._typicalHalfwidthCharacterWidth),p.a.applyFontInfo(this._domNode,r),!0}onCursorPositionChanged(o){return this._position=o,!0}_prepareRender(o){let i="";if(this._cursorStyle===Oe.i.Line||this._cursorStyle===Oe.i.LineThin){const jt=o.visibleRangeForPosition(this._position);if(!jt||jt.outsideRenderedLine)return null;let _t;if(this._cursorStyle===Oe.i.Line){if(_t=S.u(this._lineCursorWidth>0?this._lineCursorWidth:2),_t>2){const so=this._context.model.getLineContent(this._position.lineNumber),Co=gt.K(so,this._position.column-1);i=so.substr(this._position.column-1,Co)}}else _t=S.u(1);let Ht=jt.left;_t>=2&&Ht>=1&&(Ht-=1);const Jt=o.getVerticalOffsetForLineNumber(this._position.lineNumber)-o.bigNumbersDelta;return new _(Jt,Ht,_t,this._lineHeight,i,"")}const r=this._context.model.getLineContent(this._position.lineNumber),M=gt.K(r,this._position.column-1),N=o.linesVisibleRangesForRange(new He.a(this._position.lineNumber,this._position.column,this._position.lineNumber,this._position.column+M),!1);if(!N||N.length===0)return null;const $=N[0];if($.outsideRenderedLine||$.ranges.length===0)return null;const pe=$.ranges[0],_e=pe.width<1?this._typicalHalfwidthCharacterWidth:pe.width;let Ke="";if(this._cursorStyle===Oe.i.Block){const jt=this._context.model.getViewLineData(this._position.lineNumber);i=r.substr(this._position.column-1,M);const _t=jt.tokens.findTokenIndexAtOffset(this._position.column-1);Ke=jt.tokens.getClassName(_t)}let Je=o.getVerticalOffsetForLineNumber(this._position.lineNumber)-o.bigNumbersDelta,at=this._lineHeight;return(this._cursorStyle===Oe.i.Underline||this._cursorStyle===Oe.i.UnderlineThin)&&(Je+=this._lineHeight-2,at=2),new _(Je,pe.left,_e,at,i,Ke)}prepareRender(o){this._renderData=this._prepareRender(o)}render(o){return this._renderData?(this._lastRenderedContent!==this._renderData.textContent&&(this._lastRenderedContent=this._renderData.textContent,this._domNode.domNode.textContent=this._lastRenderedContent),this._domNode.setClassName(`cursor ${Zt.a} ${this._renderData.textContentClassName}`),this._domNode.setDisplay("block"),this._domNode.setTop(this._renderData.top),this._domNode.setLeft(this._renderData.left),this._domNode.setWidth(this._renderData.width),this._domNode.setLineHeight(this._renderData.height),this._domNode.setHeight(this._renderData.height),{domNode:this._domNode.domNode,position:this._position,contentLeft:this._renderData.left,height:this._renderData.height,width:2}):(this._domNode.setDisplay("none"),null)}}class se extends ee{constructor(o){super(o);const i=this._context.configuration.options;this._readOnly=i.get(80),this._cursorBlinking=i.get(22),this._cursorStyle=i.get(24),this._cursorSmoothCaretAnimation=i.get(23),this._selectionIsEmpty=!0,this._isComposingInput=!1,this._isVisible=!1,this._primaryCursor=new R(this._context),this._secondaryCursors=[],this._renderData=[],this._domNode=Object(c.b)(document.createElement("div")),this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true"),this._updateDomClassName(),this._domNode.appendChild(this._primaryCursor.getDomNode()),this._startCursorBlinkAnimation=new C.g,this._cursorFlatBlinkInterval=new C.c,this._blinkingEnabled=!1,this._editorHasFocus=!1,this._updateBlinking()}dispose(){super.dispose(),this._startCursorBlinkAnimation.dispose(),this._cursorFlatBlinkInterval.dispose()}getDomNode(){return this._domNode}onCompositionStart(o){return this._isComposingInput=!0,this._updateBlinking(),!0}onCompositionEnd(o){return this._isComposingInput=!1,this._updateBlinking(),!0}onConfigurationChanged(o){const i=this._context.configuration.options;this._readOnly=i.get(80),this._cursorBlinking=i.get(22),this._cursorStyle=i.get(24),this._cursorSmoothCaretAnimation=i.get(23),this._updateBlinking(),this._updateDomClassName(),this._primaryCursor.onConfigurationChanged(o);for(let r=0,M=this._secondaryCursors.length;ri.length){const r=this._secondaryCursors.length-i.length;for(let M=0;M{for(let M=0,N=o.ranges.length;M{this._isVisible?this._hide():this._show()},se.BLINK_INTERVAL):this._startCursorBlinkAnimation.setIfNotSet(()=>{this._blinkingEnabled=!0,this._updateDomClassName()},se.BLINK_INTERVAL))}_updateDomClassName(){this._domNode.setClassName(this._getClassName())}_getClassName(){let o="cursors-layer";this._selectionIsEmpty||(o+=" has-selection");switch(this._cursorStyle){case Oe.i.Line:o+=" cursor-line-style";break;case Oe.i.Block:o+=" cursor-block-style";break;case Oe.i.Underline:o+=" cursor-underline-style";break;case Oe.i.LineThin:o+=" cursor-line-thin-style";break;case Oe.i.BlockOutline:o+=" cursor-block-outline-style";break;case Oe.i.UnderlineThin:o+=" cursor-underline-thin-style";break;default:o+=" cursor-line-style"}if(this._blinkingEnabled)switch(this._getCursorBlinking()){case 1:o+=" cursor-blink";break;case 2:o+=" cursor-smooth";break;case 3:o+=" cursor-phase";break;case 4:o+=" cursor-expand";break;case 5:o+=" cursor-solid";break;default:o+=" cursor-solid"}else o+=" cursor-solid";return this._cursorSmoothCaretAnimation&&(o+=" cursor-smooth-caret-animation"),o}_show(){this._primaryCursor.show();for(let o=0,i=this._secondaryCursors.length;o{const r=o.getColor(Ye.z);if(r){let M=o.getColor(Ye.y);M||(M=r.opposite()),i.addRule(`.monaco-editor .cursors-layer .cursor { background-color: ${r}; border-color: ${r}; color: ${M}; }`),o.type==="hc"&&i.addRule(`.monaco-editor .cursors-layer.has-selection .cursor { border-left: 1px solid ${M}; border-right: 1px solid ${M}; }`)}});const be=()=>{throw new Error("Invalid change accessor")};class Be extends ee{constructor(o){super(o);const i=this._context.configuration.options,r=i.get(129);this._lineHeight=i.get(58),this._contentWidth=r.contentWidth,this._contentLeft=r.contentLeft,this.domNode=Object(c.b)(document.createElement("div")),this.domNode.setClassName("view-zones"),this.domNode.setPosition("absolute"),this.domNode.setAttribute("role","presentation"),this.domNode.setAttribute("aria-hidden","true"),this.marginDomNode=Object(c.b)(document.createElement("div")),this.marginDomNode.setClassName("margin-view-zones"),this.marginDomNode.setPosition("absolute"),this.marginDomNode.setAttribute("role","presentation"),this.marginDomNode.setAttribute("aria-hidden","true"),this._zones={}}dispose(){super.dispose(),this._zones={}}_recomputeWhitespacesProps(){const o=this._context.viewLayout.getWhitespaces(),i=new Map;for(const M of o)i.set(M.id,M);let r=!1;return this._context.model.changeWhitespace(M=>{const N=Object.keys(this._zones);for(let $=0,pe=N.length;${const M={addZone:N=>(i=!0,this._addZone(r,N)),removeZone:N=>{if(!N)return;i=this._removeZone(r,N)||i},layoutZone:N=>{if(!N)return;i=this._layoutZone(r,N)||i}};ot(o,M),M.addZone=be,M.removeZone=be,M.layoutZone=be}),i}_addZone(o,i){const r=this._computeWhitespaceProps(i),M=o.insertWhitespace(r.afterViewLineNumber,this._getZoneOrdinal(i),r.heightInPx,r.minWidthInPx),N={whitespaceId:M,delegate:i,isInHiddenArea:r.isInHiddenArea,isVisible:!1,domNode:Object(c.b)(i.domNode),marginDomNode:i.marginDomNode?Object(c.b)(i.marginDomNode):null};return this._safeCallOnComputedHeight(N.delegate,r.heightInPx),N.domNode.setPosition("absolute"),N.domNode.domNode.style.width="100%",N.domNode.setDisplay("none"),N.domNode.setAttribute("monaco-view-zone",N.whitespaceId),this.domNode.appendChild(N.domNode),N.marginDomNode&&(N.marginDomNode.setPosition("absolute"),N.marginDomNode.domNode.style.width="100%",N.marginDomNode.setDisplay("none"),N.marginDomNode.setAttribute("monaco-view-zone",N.whitespaceId),this.marginDomNode.appendChild(N.marginDomNode)),this._zones[N.whitespaceId]=N,this.setShouldRender(),N.whitespaceId}_removeZone(o,i){if(this._zones.hasOwnProperty(i)){const r=this._zones[i];return delete this._zones[i],o.removeWhitespace(r.whitespaceId),r.domNode.removeAttribute("monaco-visible-view-zone"),r.domNode.removeAttribute("monaco-view-zone"),r.domNode.domNode.parentNode.removeChild(r.domNode.domNode),r.marginDomNode&&(r.marginDomNode.removeAttribute("monaco-visible-view-zone"),r.marginDomNode.removeAttribute("monaco-view-zone"),r.marginDomNode.domNode.parentNode.removeChild(r.marginDomNode.domNode)),this.setShouldRender(),!0}return!1}_layoutZone(o,i){if(this._zones.hasOwnProperty(i)){const r=this._zones[i],M=this._computeWhitespaceProps(r.delegate);return r.isInHiddenArea=M.isInHiddenArea,o.changeOneWhitespace(r.whitespaceId,M.afterViewLineNumber,M.heightInPx),this._safeCallOnComputedHeight(r.delegate,M.heightInPx),this.setShouldRender(),!0}return!1}shouldSuppressMouseDownOnViewZone(o){if(this._zones.hasOwnProperty(o)){const i=this._zones[o];return Boolean(i.delegate.suppressMouseDown)}return!1}_heightInPixels(o){return typeof o.heightInPx=="number"?o.heightInPx:typeof o.heightInLines=="number"?this._lineHeight*o.heightInLines:this._lineHeight}_minWidthInPixels(o){return typeof o.minWidthInPx=="number"?o.minWidthInPx:0}_safeCallOnComputedHeight(o,i){if(typeof o.onComputedHeight=="function")try{o.onComputedHeight(i)}catch(r){Object(f.f)(r)}}_safeCallOnDomNodeTop(o,i){if(typeof o.onDomNodeTop=="function")try{o.onDomNodeTop(i)}catch(r){Object(f.f)(r)}}prepareRender(o){}render(o){const i=o.viewportData.whitespaceViewportData,r={};let M=!1;for(const $ of i){if(this._zones[$.id].isInHiddenArea)continue;r[$.id]=$,M=!0}const N=Object.keys(this._zones);for(let $=0,pe=N.length;${this._context.theme.update(Jt),this._context.model.onDidColorThemeChange(),this.render(!0,!1)})),this._viewParts=[],this._textAreaHandler=new Ct(this._context,pe,this._createTextAreaHandlerHelper()),this._viewParts.push(this._textAreaHandler),this._linesContent=Object(c.b)(document.createElement("div")),this._linesContent.setClassName("lines-content monaco-editor-background"),this._linesContent.setPosition("absolute"),this.domNode=Object(c.b)(document.createElement("div")),this.domNode.setClassName(this._getEditorClassName()),this.domNode.setAttribute("role","code"),this._overflowGuardContainer=Object(c.b)(document.createElement("div")),Se.write(this._overflowGuardContainer,3),this._overflowGuardContainer.setClassName("overflow-guard"),this._scrollbar=new tn(this._context,this._linesContent,this.domNode,this._overflowGuardContainer),this._viewParts.push(this._scrollbar),this._viewLines=new Ee(this._context,this._linesContent),this._viewZones=new Be(this._context),this._viewParts.push(this._viewZones);const _e=new Dn(this._context);this._viewParts.push(_e);const Ke=new ln(this._context);this._viewParts.push(Ke);const Je=new fo(this._context);this._viewParts.push(Je),Je.addDynamicOverlay(new Ni(this._context)),Je.addDynamicOverlay(new oi(this._context)),Je.addDynamicOverlay(new on(this._context)),Je.addDynamicOverlay(new ki(this._context));const at=new vo(this._context);this._viewParts.push(at),at.addDynamicOverlay(new ji(this._context)),at.addDynamicOverlay(new Ii(this._context)),at.addDynamicOverlay(new Et(this._context)),at.addDynamicOverlay(new Ve(this._context)),at.addDynamicOverlay(new Bt(this._context));const jt=new $t(this._context);jt.getDomNode().appendChild(this._viewZones.marginDomNode),jt.getDomNode().appendChild(at.getDomNode()),this._viewParts.push(jt),this._contentWidgets=new Oo(this._context,this.domNode),this._viewParts.push(this._contentWidgets),this._viewCursors=new se(this._context),this._viewParts.push(this._viewCursors),this._overlayWidgets=new ui(this._context),this._viewParts.push(this._overlayWidgets);const _t=new Qi(this._context);this._viewParts.push(_t);const Ht=new Vo(this._context);if(this._viewParts.push(Ht),_e){const Jt=this._scrollbar.getOverviewRulerLayoutInfo();Jt.parent.insertBefore(_e.getDomNode(),Jt.insertBefore)}this._linesContent.appendChild(Je.getDomNode()),this._linesContent.appendChild(_t.domNode),this._linesContent.appendChild(this._viewZones.domNode),this._linesContent.appendChild(this._viewLines.getDomNode()),this._linesContent.appendChild(this._contentWidgets.domNode),this._linesContent.appendChild(this._viewCursors.getDomNode()),this._overflowGuardContainer.appendChild(jt.getDomNode()),this._overflowGuardContainer.appendChild(this._scrollbar.getDomNode()),this._overflowGuardContainer.appendChild(Ke.getDomNode()),this._overflowGuardContainer.appendChild(this._textAreaHandler.textArea),this._overflowGuardContainer.appendChild(this._textAreaHandler.textAreaCover),this._overflowGuardContainer.appendChild(this._overlayWidgets.getDomNode()),this._overflowGuardContainer.appendChild(Ht.getDomNode()),this.domNode.appendChild(this._overflowGuardContainer),$?$.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode.domNode):this.domNode.appendChild(this._contentWidgets.overflowingContentWidgetsDomNode),this._applyLayout(),this._pointerHandler=this._register(new qe(this._context,pe,this._createPointerHandlerHelper()))}_flushAccumulatedAndRenderNow(){this._renderNow()}_createPointerHandlerHelper(){return{viewDomNode:this.domNode.domNode,linesContentDomNode:this._linesContent.domNode,focusTextArea:()=>{this.focus()},dispatchTextAreaEvent:o=>{this._textAreaHandler.textArea.domNode.dispatchEvent(o)},getLastRenderData:()=>{const o=this._viewCursors.getLastRenderData()||[],i=this._textAreaHandler.getLastRenderData();return new no(o,i)},shouldSuppressMouseDownOnViewZone:o=>this._viewZones.shouldSuppressMouseDownOnViewZone(o),shouldSuppressMouseDownOnWidget:o=>this._contentWidgets.shouldSuppressMouseDownOnWidget(o),getPositionFromDOMInfo:(o,i)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getPositionFromDOMInfo(o,i)),visibleRangeForPosition:(o,i)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(new Te.a(o,i))),getLineWidth:o=>(this._flushAccumulatedAndRenderNow(),this._viewLines.getLineWidth(o))}}_createTextAreaHandlerHelper(){return{visibleRangeForPositionRelativeToEditor:(o,i)=>(this._flushAccumulatedAndRenderNow(),this._viewLines.visibleRangeForPosition(new Te.a(o,i)))}}_applyLayout(){const o=this._context.configuration.options,i=o.get(129);this.domNode.setWidth(i.width),this.domNode.setHeight(i.height),this._overflowGuardContainer.setWidth(i.width),this._overflowGuardContainer.setHeight(i.height),this._linesContent.setWidth(1e6),this._linesContent.setHeight(1e6)}_getEditorClassName(){const o=this._textAreaHandler.isFocused()?" focused":"";return this._context.configuration.options.get(126)+" "+Object(Mt.e)(this._context.theme.type)+o}handleEvents(o){super.handleEvents(o),this._scheduleRender()}onConfigurationChanged(o){return this._configPixelRatio=this._context.configuration.options.get(127),this.domNode.setClassName(this._getEditorClassName()),this._applyLayout(),!1}onCursorStateChanged(o){return this._selections=o.selections,!1}onFocusChanged(o){return this.domNode.setClassName(this._getEditorClassName()),!1}onThemeChanged(o){return this.domNode.setClassName(this._getEditorClassName()),!1}dispose(){this._renderAnimationFrame!==null&&(this._renderAnimationFrame.dispose(),this._renderAnimationFrame=null),this._contentWidgets.overflowingContentWidgetsDomNode.domNode.remove(),this._context.removeEventHandler(this),this._viewLines.dispose();for(const o of this._viewParts)o.dispose();super.dispose()}_scheduleRender(){this._renderAnimationFrame===null&&(this._renderAnimationFrame=S.T(this._onRenderScheduled.bind(this),100))}_onRenderScheduled(){this._renderAnimationFrame=null,this._flushAccumulatedAndRenderNow()}_renderNow(){Kt(()=>this._actualRender())}_getViewPartsToRender(){let o=[],i=0;for(const r of this._viewParts)r.shouldRender()&&(o[i++]=r);return o}_actualRender(){if(!S.N(this.domNode.domNode))return;let o=this._getViewPartsToRender();if(!this._viewLines.shouldRender()&&o.length===0)return;const i=this._context.viewLayout.getLinesViewportData();this._context.model.setViewport(i.startLineNumber,i.endLineNumber,i.centeredLineNumber);const r=new Nt(this._selections,i,this._context.viewLayout.getWhitespaceViewportData(),this._context.model);this._contentWidgets.shouldRender()&&this._contentWidgets.onBeforeRender(r),this._viewLines.shouldRender()&&(this._viewLines.renderText(r),this._viewLines.onDidRender(),o=this._getViewPartsToRender());const M=new q(this._context.viewLayout,r,this._viewLines);for(const N of o)N.prepareRender(M);for(const N of o)N.render(M),N.onDidRender();Math.abs(b.a()-this._configPixelRatio)>.001&&this._context.configuration.updatePixelRatio()}delegateVerticalScrollbarMouseDown(o){this._scrollbar.delegateVerticalScrollbarMouseDown(o)}restoreState(o){this._context.model.setScrollPosition({scrollTop:o.scrollTop},1),this._context.model.tokenizeViewport(),this._renderNow(),this._viewLines.updateLineWidths(),this._context.model.setScrollPosition({scrollLeft:o.scrollLeft},1)}getOffsetForColumn(o,i){const r=this._context.model.validateModelPosition({lineNumber:o,column:i}),M=this._context.model.coordinatesConverter.convertModelPositionToViewPosition(r);this._flushAccumulatedAndRenderNow();const N=this._viewLines.visibleRangeForPosition(new Te.a(M.lineNumber,M.column));return N?N.left:-1}getTargetAtClientPoint(o,i){const r=this._pointerHandler.getTargetAtClientPoint(o,i);return r?Re.convertViewToModelMouseTarget(r,this._context.model.coordinatesConverter):null}createOverviewRuler(o){return new pn(this._context,o)}change(o){this._viewZones.changeViewZones(o),this._scheduleRender()}render(o,i){if(i){this._viewLines.forceShouldRender();for(const r of this._viewParts)r.forceShouldRender()}o?this._flushAccumulatedAndRenderNow():this._scheduleRender()}focus(){this._textAreaHandler.focusTextArea()}isFocused(){return this._textAreaHandler.isFocused()}setAriaOptions(o){this._textAreaHandler.setAriaOptions(o)}addContentWidget(o){this._contentWidgets.addWidget(o.widget),this.layoutContentWidget(o),this._scheduleRender()}layoutContentWidget(o){let i=o.position&&o.position.range||null;if(i===null){const M=o.position?o.position.position:null;M!==null&&(i=new He.a(M.lineNumber,M.column,M.lineNumber,M.column))}const r=o.position?o.position.preference:null;this._contentWidgets.setWidgetPosition(o.widget,i,r),this._scheduleRender()}removeContentWidget(o){this._contentWidgets.removeWidget(o.widget),this._scheduleRender()}addOverlayWidget(o){this._overlayWidgets.addWidget(o.widget),this.layoutOverlayWidget(o),this._scheduleRender()}layoutOverlayWidget(o){const i=o.position?o.position.preference:null,r=this._overlayWidgets.setWidgetPosition(o.widget,i);r&&this._scheduleRender()}removeOverlayWidget(o){this._overlayWidgets.removeWidget(o.widget),this._scheduleRender()}}function Kt(o){try{return o()}catch(i){Object(f.f)(i)}}class Qt{constructor(o){this._selTrackedRange=null,this._trackSelection=!0,this._setState(o,new st.f(new He.a(1,1,1,1),0,new Te.a(1,1),0),new st.f(new He.a(1,1,1,1),0,new Te.a(1,1),0))}dispose(o){this._removeTrackedRange(o)}startTrackingSelection(o){this._trackSelection=!0,this._updateTrackedRange(o)}stopTrackingSelection(o){this._trackSelection=!1,this._removeTrackedRange(o)}_updateTrackedRange(o){if(!this._trackSelection)return;this._selTrackedRange=o.model._setTrackedRange(this._selTrackedRange,this.modelState.selection,0)}_removeTrackedRange(o){this._selTrackedRange=o.model._setTrackedRange(this._selTrackedRange,null,0)}asCursorState(){return new st.d(this.modelState,this.viewState)}readSelectionFromMarkers(o){const i=o.model._getTrackedRange(this._selTrackedRange);return this.modelState.selection.getDirection()===0?new m.a(i.startLineNumber,i.startColumn,i.endLineNumber,i.endColumn):new m.a(i.endLineNumber,i.endColumn,i.startLineNumber,i.startColumn)}ensureValidState(o){this._setState(o,this.modelState,this.viewState)}setState(o,i,r){this._setState(o,i,r)}static _validatePositionWithCache(o,i,r,M){return i.equals(r)?M:o.normalizePosition(i,2)}static _validateViewState(o,i){const r=i.position,M=i.selectionStart.getStartPosition(),N=i.selectionStart.getEndPosition(),$=o.normalizePosition(r,2),pe=this._validatePositionWithCache(o,M,r,$),_e=this._validatePositionWithCache(o,N,M,pe);return r.equals($)&&M.equals(pe)&&N.equals(_e)?i:new st.f(He.a.fromPositions(pe,_e),i.selectionStartLeftoverVisibleColumns+M.column-pe.column,$,i.leftoverVisibleColumns+r.column-$.column)}_setState(o,i,r){if(r&&(r=Qt._validateViewState(o.viewModel,r)),i){const M=o.model.validateRange(i.selectionStart),N=i.selectionStart.equalsRange(M)?i.selectionStartLeftoverVisibleColumns:0,$=o.model.validatePosition(i.position),pe=i.position.equals($)?i.leftoverVisibleColumns:0;i=new st.f(M,N,$,pe)}else{if(!r)return;const M=o.model.validateRange(o.coordinatesConverter.convertViewRangeToModelRange(r.selectionStart)),N=o.model.validatePosition(o.coordinatesConverter.convertViewPositionToModelPosition(r.position));i=new st.f(M,r.selectionStartLeftoverVisibleColumns,N,r.leftoverVisibleColumns)}if(r){const M=o.coordinatesConverter.validateViewRange(r.selectionStart,i.selectionStart),N=o.coordinatesConverter.validateViewPosition(r.position,i.position);r=new st.f(M,i.selectionStartLeftoverVisibleColumns,N,i.leftoverVisibleColumns)}else{const M=o.coordinatesConverter.convertModelPositionToViewPosition(new Te.a(i.selectionStart.startLineNumber,i.selectionStart.startColumn)),N=o.coordinatesConverter.convertModelPositionToViewPosition(new Te.a(i.selectionStart.endLineNumber,i.selectionStart.endColumn)),$=new He.a(M.lineNumber,M.column,N.lineNumber,N.column),pe=o.coordinatesConverter.convertModelPositionToViewPosition(i.position);r=new st.f($,i.selectionStartLeftoverVisibleColumns,pe,i.leftoverVisibleColumns)}this.modelState=i,this.viewState=r,this._updateTrackedRange(o)}}class lo{constructor(o){this.context=o,this.primaryCursor=new Qt(o),this.secondaryCursors=[],this.lastAddedCursorIndex=0}dispose(){this.primaryCursor.dispose(this.context),this.killSecondaryCursors()}startTrackingSelections(){this.primaryCursor.startTrackingSelection(this.context);for(let o=0,i=this.secondaryCursors.length;or){let M=i-r;for(let N=0;N=o+1&&this.lastAddedCursorIndex--,this.secondaryCursors[o].dispose(this.context),this.secondaryCursors.splice(o,1)}_getAll(){let o=[];o[0]=this.primaryCursor;for(let i=0,r=this.secondaryCursors.length;ir.selection.startLineNumber===M.selection.startLineNumber?r.selection.startColumn-M.selection.startColumn:r.selection.startLineNumber-M.selection.startLineNumber);for(let r=0;rat&&Jt.index--;o.splice(at,1),i.splice(Je,1),this._removeSecondaryCursor(at-1),r--}}}}var ro=e("snIX"),Eo=e("GR/f"),Mo=e("M46C");class Fo{constructor(){this.type=0}}class Bo{constructor(){this.type=1}}class di{constructor(o){this.type=2,this._source=o}hasChanged(o){return this._source.hasChanged(o)}}class Ko{constructor(o,i){this.type=3,this.selections=o,this.modelSelections=i}}class ei{constructor(o){this.type=4,o?(this.affectsMinimap=o.affectsMinimap,this.affectsOverviewRuler=o.affectsOverviewRuler):(this.affectsMinimap=!0,this.affectsOverviewRuler=!0)}}class Gi{constructor(){this.type=5}}class Ei{constructor(o){this.type=6,this.isFocused=o}}class Mi{constructor(){this.type=7}}class wi{constructor(){this.type=8}}class hn{constructor(o,i){this.type=9,this.fromLineNumber=o,this.toLineNumber=i}}class dn{constructor(o,i){this.type=10,this.fromLineNumber=o,this.toLineNumber=i}}class bn{constructor(o,i){this.type=11,this.fromLineNumber=o,this.toLineNumber=i}}class En{constructor(o,i,r,M,N,$){this.type=12,this.source=o,this.range=i,this.selections=r,this.verticalType=M,this.revealHorizontal=N,this.scrollType=$}}class is{constructor(o){this.type=13,this.scrollWidth=o.scrollWidth,this.scrollLeft=o.scrollLeft,this.scrollHeight=o.scrollHeight,this.scrollTop=o.scrollTop,this.scrollWidthChanged=o.scrollWidthChanged,this.scrollLeftChanged=o.scrollLeftChanged,this.scrollHeightChanged=o.scrollHeightChanged,this.scrollTopChanged=o.scrollTopChanged}}class In{constructor(){this.type=14}}class zn{constructor(o){this.type=15,this.ranges=o}}class Kn{constructor(){this.type=16}}class fr{constructor(){this.type=17}}class Ss extends d.a{constructor(){super();this._onEvent=this._register(new u.b),this.onEvent=this._onEvent.event,this._eventHandlers=[],this._viewEventQueue=null,this._isConsumingViewEventQueue=!1,this._collector=null,this._collectorCnt=0,this._outgoingEvents=[]}emitOutgoingEvent(o){this._addOutgoingEvent(o),this._emitOutgoingEvents()}_addOutgoingEvent(o){for(let i=0,r=this._outgoingEvents.length;i0;){if(this._collector||this._isConsumingViewEventQueue)return;const o=this._outgoingEvents.shift();if(o.isNoOp())continue;this._onEvent.fire(o)}}addViewEventHandler(o){for(let i=0,r=this._eventHandlers.length;i0&&this._emitMany(i)}this._emitOutgoingEvents()}emitSingleViewEvent(o){try{const i=this.beginEmitViewEvents();i.emitViewEvent(o)}finally{this.endEmitViewEvents()}}_emitMany(o){this._viewEventQueue?this._viewEventQueue=this._viewEventQueue.concat(o):this._viewEventQueue=o,this._isConsumingViewEventQueue||this._consumeViewEventQueue()}_consumeViewEventQueue(){try{this._isConsumingViewEventQueue=!0,this._doConsumeQueue()}finally{this._isConsumingViewEventQueue=!1}}_doConsumeQueue(){for(;this._viewEventQueue;){const o=this._viewEventQueue;this._viewEventQueue=null;const i=this._eventHandlers.slice(0);for(const r of i)r.handleEvents(o)}}}class pr{constructor(){this.viewEvents=[],this.outgoingEvents=[]}emitViewEvent(o){this.viewEvents.push(o)}emitOutgoingEvent(o){this.outgoingEvents.push(o)}}class ns{constructor(o,i,r,M){this.kind=0,this._oldContentWidth=o,this._oldContentHeight=i,this.contentWidth=r,this.contentHeight=M,this.contentWidthChanged=this._oldContentWidth!==this.contentWidth,this.contentHeightChanged=this._oldContentHeight!==this.contentHeight}isNoOp(){return!this.contentWidthChanged&&!this.contentHeightChanged}merge(o){return o.kind!==0?this:new ns(this._oldContentWidth,this._oldContentHeight,o.contentWidth,o.contentHeight)}}class Zn{constructor(o,i){this.kind=1,this.oldHasFocus=o,this.hasFocus=i}isNoOp(){return this.oldHasFocus===this.hasFocus}merge(o){return o.kind!==1?this:new Zn(this.oldHasFocus,o.hasFocus)}}class Vs{constructor(o,i,r,M,N,$,pe,_e){this.kind=2,this._oldScrollWidth=o,this._oldScrollLeft=i,this._oldScrollHeight=r,this._oldScrollTop=M,this.scrollWidth=N,this.scrollLeft=$,this.scrollHeight=pe,this.scrollTop=_e,this.scrollWidthChanged=this._oldScrollWidth!==this.scrollWidth,this.scrollLeftChanged=this._oldScrollLeft!==this.scrollLeft,this.scrollHeightChanged=this._oldScrollHeight!==this.scrollHeight,this.scrollTopChanged=this._oldScrollTop!==this.scrollTop}isNoOp(){return!this.scrollWidthChanged&&!this.scrollLeftChanged&&!this.scrollHeightChanged&&!this.scrollTopChanged}merge(o){return o.kind!==2?this:new Vs(this._oldScrollWidth,this._oldScrollLeft,this._oldScrollHeight,this._oldScrollTop,o.scrollWidth,o.scrollLeft,o.scrollHeight,o.scrollTop)}}class zs{constructor(){this.kind=3}isNoOp(){return!1}merge(o){return this}}class da{constructor(){this.kind=4}isNoOp(){return!1}merge(o){return this}}class ws{constructor(o,i,r,M,N,$,pe){this.kind=6,this.oldSelections=o,this.selections=i,this.oldModelVersionId=r,this.modelVersionId=M,this.source=N,this.reason=$,this.reachedMaxCursorCount=pe}static _selectionsAreEqual(o,i){if(!o&&!i)return!0;if(!o||!i)return!1;const r=o.length,M=i.length;if(r!==M)return!1;for(let N=0;N=i.length)return!1;if(!i[r].strictContainsRange(o[r]))return!1}return!0}}class xn extends d.a{constructor(o,i,r,M){super();this._model=o,this._knownModelVersionId=this._model.getVersionId(),this._viewModel=i,this._coordinatesConverter=r,this.context=new st.c(this._model,this._viewModel,this._coordinatesConverter,M),this._cursors=new lo(this.context),this._hasFocus=!1,this._isHandling=!1,this._isDoingComposition=!1,this._selectionsWhenCompositionStarted=null,this._columnSelectData=null,this._autoClosedActions=[],this._prevEditOperationType=0}dispose(){this._cursors.dispose(),this._autoClosedActions=Object(d.f)(this._autoClosedActions),super.dispose()}updateConfiguration(o){this.context=new st.c(this._model,this._viewModel,this._coordinatesConverter,o),this._cursors.updateContext(this.context)}onLineMappingChanged(o){if(this._knownModelVersionId!==this._model.getVersionId())return;this.setStates(o,"viewModel",0,this.getCursorStates())}setHasFocus(o){this._hasFocus=o}_validateAutoClosedActions(){if(this._autoClosedActions.length>0){let o=this._cursors.getSelections();for(let i=0;ixn.MAX_CURSOR_COUNT&&(M=M.slice(0,xn.MAX_CURSOR_COUNT),N=!0);const $=new Ls(this._model,this);return this._cursors.setStates(M),this._cursors.normalize(),this._columnSelectData=null,this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(o,i,r,$,N)}setCursorColumnSelectData(o){this._columnSelectData=o}revealPrimary(o,i,r,M){const N=this._cursors.getViewPositions();if(N.length>1){this._emitCursorRevealRange(o,i,null,this._cursors.getViewSelections(),0,r,M);return}else{const $=N[0],pe=new He.a($.lineNumber,$.column,$.lineNumber,$.column);this._emitCursorRevealRange(o,i,pe,null,0,r,M)}}_revealPrimaryCursor(o,i,r,M,N){const $=this._cursors.getViewPositions();if($.length>1)this._emitCursorRevealRange(o,i,null,this._cursors.getViewSelections(),r,M,N);else{const pe=$[0],_e=new He.a(pe.lineNumber,pe.column,pe.lineNumber,pe.column);this._emitCursorRevealRange(o,i,_e,null,r,M,N)}}_emitCursorRevealRange(o,i,r,M,N,$,pe){o.emitViewEvent(new En(i,r,M,N,$,pe))}saveState(){let o=[];const i=this._cursors.getSelections();for(let r=0,M=i.length;r0){const M=st.d.fromModelSelections(i.resultingSelection);this.setStates(o,"modelChange",i.isUndoing?5:i.isRedoing?6:2,M)&&this._revealPrimaryCursor(o,"modelChange",0,!0,0)}else{const M=this._cursors.readSelectionFromMarkers();this.setStates(o,"modelChange",2,st.d.fromModelSelections(M))}}}getSelection(){return this._cursors.getPrimaryCursor().modelState.selection}getTopMostViewPosition(){return this._cursors.getTopMostViewPosition()}getBottomMostViewPosition(){return this._cursors.getBottomMostViewPosition()}getCursorColumnSelectData(){if(this._columnSelectData)return this._columnSelectData;const o=this._cursors.getPrimaryCursor(),i=o.viewState.selectionStart.getStartPosition(),r=o.viewState.position;return{isReal:!1,fromViewLineNumber:i.lineNumber,fromViewVisualColumn:st.a.visibleColumnFromColumn2(this.context.cursorConfig,this._viewModel,i),toViewLineNumber:r.lineNumber,toViewVisualColumn:st.a.visibleColumnFromColumn2(this.context.cursorConfig,this._viewModel,r)}}getSelections(){return this._cursors.getSelections()}setSelections(o,i,r,M){this.setStates(o,i,M,st.d.fromModelSelections(r))}getPrevEditOperationType(){return this._prevEditOperationType}setPrevEditOperationType(o){this._prevEditOperationType=o}_pushAutoClosedAction(o,i){let r=[],M=[];for(let pe=0,_e=o.length;pe<_e;pe++)r.push({range:o[pe],options:{description:"auto-closed-character",inlineClassName:"auto-closed-character",stickiness:1}}),M.push({range:i[pe],options:{description:"auto-closed-enclosing",stickiness:1}});const N=this._model.deltaDecorations([],r),$=this._model.deltaDecorations([],M);this._autoClosedActions.push(new Ks(this._model,N,$))}_executeEditOperation(o){if(!o)return;o.shouldPushStackElementBefore&&this._model.pushStackElement();const i=Sn.executeCommands(this._model,this._cursors.getSelections(),o.commands);if(i){this._interpretCommandResult(i);let r=[],M=[];for(let N=0;N0&&this._pushAutoClosedAction(r,M),this._prevEditOperationType=o.type}o.shouldPushStackElementAfter&&this._model.pushStackElement()}_interpretCommandResult(o){(!o||o.length===0)&&(o=this._cursors.readSelectionFromMarkers()),this._columnSelectData=null,this._cursors.setSelections(o),this._cursors.normalize()}_emitStateChangedIfNecessary(o,i,r,M,N){const $=new Ls(this._model,this);if($.equals(M))return!1;const pe=this._cursors.getSelections(),_e=this._cursors.getViewSelections();if(o.emitViewEvent(new Ko(_e,pe)),!M||M.cursorState.length!==$.cursorState.length||$.cursorState.some((Ke,Je)=>!Ke.modelState.equals(M.cursorState[Je].modelState))){const Ke=M?M.cursorState.map(at=>at.modelState.selection):null,Je=M?M.modelVersionId:0;o.emitOutgoingEvent(new ws(Ke,pe,Je,$.modelVersionId,i||"keyboard",r,N))}return!0}_findAutoClosingPairs(o){if(!o.length)return null;let i=[];for(let r=0,M=o.length;r=0)return null;const $=N.text.match(/([)\]}>'"`])([^)\]}>'"`]*)$/);if(!$)return null;const pe=$[1],_e=this.context.cursorConfig.autoClosingPairs.autoClosingPairsCloseSingleChar.get(pe);if(!_e||_e.length!==1)return null;const Ke=_e[0].open,Je=N.text.length-$[2].length-1,at=N.text.lastIndexOf(Ke,Je-1);if(at===-1)return null;i.push([at,Je])}return i}executeEdits(o,i,r,M){let N=null;i==="snippet"&&(N=this._findAutoClosingPairs(r)),N&&(r[0]._isTracked=!0);let $=[],pe=[];const _e=this._model.pushEditOperations(this.getSelections(),r,Ke=>{if(N)for(let at=0,jt=N.length;at0&&this._pushAutoClosedAction($,pe)}_executeEdit(o,i,r,M=0){if(this.context.cursorConfig.readOnly)return;const N=new Ls(this._model,this);this._cursors.stopTrackingSelections(),this._isHandling=!0;try{this._cursors.ensureValidState(),o()}catch($){Object(f.f)($)}this._isHandling=!1,this._cursors.startTrackingSelections(),this._validateAutoClosedActions(),this._emitStateChangedIfNecessary(i,r,M,N,!1)&&this._revealPrimaryCursor(i,r,0,!0,0)}setIsDoingComposition(o){this._isDoingComposition=o}getAutoClosedCharacters(){return Ks.getAllAutoClosedCharacters(this._autoClosedActions)}startComposition(o){this._selectionsWhenCompositionStarted=this.getSelections().slice(0)}endComposition(o,i){this._executeEdit(()=>{i==="keyboard"&&(this._executeEditOperation(Eo.a.compositionEndWithInterceptors(this._prevEditOperationType,this.context.cursorConfig,this._model,this._selectionsWhenCompositionStarted,this.getSelections(),this.getAutoClosedCharacters())),this._selectionsWhenCompositionStarted=null)},o,i)}type(o,i,r){this._executeEdit(()=>{if(r==="keyboard"){const M=i.length;let N=0;for(;N{const Ke=_e.getPosition();return new m.a(Ke.lineNumber,Ke.column+N,Ke.lineNumber,Ke.column+N)});this.setSelections(o,$,pe,0)}return}this._executeEdit(()=>{this._executeEditOperation(Eo.a.compositionType(this._prevEditOperationType,this.context.cursorConfig,this._model,this.getSelections(),i,r,M,N))},o,$)}paste(o,i,r,M,N){this._executeEdit(()=>{this._executeEditOperation(Eo.a.paste(this.context.cursorConfig,this._model,this.getSelections(),i,r,M||[]))},o,N,4)}cut(o,i){this._executeEdit(()=>{this._executeEditOperation(ro.a.cut(this.context.cursorConfig,this._model,this.getSelections()))},o,i)}executeCommand(o,i,r){this._executeEdit(()=>{this._cursors.killSecondaryCursors(),this._executeEditOperation(new st.e(0,[i],{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},o,r)}executeCommands(o,i,r){this._executeEdit(()=>{this._executeEditOperation(new st.e(0,i,{shouldPushStackElementBefore:!1,shouldPushStackElementAfter:!1}))},o,r)}}xn.MAX_CURSOR_COUNT=1e4;class Sn{static executeCommands(o,i,r){const M={model:o,selectionsBefore:i,trackedRanges:[],trackedRangesDirection:[]},N=this._innerExecuteCommands(M,r);for(let $=0,pe=M.trackedRanges.length;$0&&($[0]._isTracked=!0);let pe=o.model.pushEditOperations(o.selectionsBefore,$,Ke=>{let Je=[];for(let _t=0;_t_t.identifier.minor-Ht.identifier.minor;let jt=[];for(let _t=0;_t0?(Je[_t].sort(at),jt[_t]=i[_t].computeCursorState(o.model,{getInverseEditOperations:()=>Je[_t],getTrackedSelection:Ht=>{const Jt=parseInt(Ht,10),so=o.model._getTrackedRange(o.trackedRanges[Jt]);return o.trackedRangesDirection[Jt]===0?new m.a(so.startLineNumber,so.startColumn,so.endLineNumber,so.endColumn):new m.a(so.endLineNumber,so.endColumn,so.startLineNumber,so.startColumn)}})):jt[_t]=o.selectionsBefore[_t];return jt});pe||(pe=o.selectionsBefore);let _e=[];for(let Ke in N)N.hasOwnProperty(Ke)&&_e.push(parseInt(Ke,10));_e.sort((Ke,Je)=>Je-Ke);for(const Ke of _e)pe.splice(Ke,1);return pe}static _arrayIsEmpty(o){for(let i=0,r=o.length;i{if(He.a.isEmpty(at)&&jt==="")return;M.push({identifier:{major:i,minor:N++},range:at,text:jt,forceMoveMarkers:_t,isAutoWhitespaceEdit:r.insertsAutoWhitespace})};let pe=!1;const _e=(at,jt,_t)=>{pe=!0,$(at,jt,_t)},Ke=(at,jt)=>{const _t=m.a.liftSelection(at);let Ht;if(_t.isEmpty())if(typeof jt=="boolean")jt?Ht=2:Ht=3;else{const Co=o.model.getLineMaxColumn(_t.startLineNumber);_t.startColumn===Co?Ht=2:Ht=3}else Ht=1;const Jt=o.trackedRanges.length,so=o.model._setTrackedRange(null,_t,Ht);return o.trackedRanges[Jt]=so,o.trackedRangesDirection[Jt]=_t.getDirection(),Jt.toString()},Je={addEditOperation:$,addTrackedEditOperation:_e,trackSelection:Ke};try{r.getEditOperations(o.model,Je)}catch(at){return Object(f.f)(at),{operations:[],hadTrackedEditOperation:!1}}return{operations:M,hadTrackedEditOperation:pe}}static _getLoserCursorMap(o){o=o.slice(0),o.sort((r,M)=>-He.a.compareRangesUsingEnds(r.range,M.range));let i={};for(let r=1;rN.identifier.major?$=M.identifier.major:$=N.identifier.major,i[$.toString()]=!0;for(let pe=0;pe0&&r--}}return i}}var Tn=e("9Y+e"),mn=e("iuje"),Ti=e("wQH0"),vn=e("TQUy"),Fn=e("QuOb");class _s{constructor(){this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[]}insert(o){this._hasPending=!0,this._inserts.push(o)}change(o){this._hasPending=!0,this._changes.push(o)}remove(o){this._hasPending=!0,this._removes.push(o)}mustCommit(){return this._hasPending}commit(o){if(!this._hasPending)return;const i=this._inserts,r=this._changes,M=this._removes;this._hasPending=!1,this._inserts=[],this._changes=[],this._removes=[],o._commitPendingChanges(i,r,M)}}class Ds{constructor(o,i,r,M,N){this.id=o,this.afterLineNumber=i,this.ordinal=r,this.height=M,this.minWidth=N,this.prefixSum=0}}class ss{constructor(o,i,r,M){this._instanceId=gt.P(++ss.INSTANCE_COUNT),this._pendingChanges=new _s,this._lastWhitespaceId=0,this._arr=[],this._prefixSumValidIndex=-1,this._minWidth=-1,this._lineCount=o,this._lineHeight=i,this._paddingTop=r,this._paddingBottom=M}static findInsertionIndex(o,i,r){let M=0,N=o.length;for(;M>>1;i===o[$].afterLineNumber?r{i=!0,M=M|0,N=N|0,$=$|0,pe=pe|0;const _e=this._instanceId+ ++this._lastWhitespaceId;return this._pendingChanges.insert(new Ds(_e,M,N,$,pe)),_e},changeOneWhitespace:(M,N,$)=>{i=!0,N=N|0,$=$|0,this._pendingChanges.change({id:M,newAfterLineNumber:N,newHeight:$})},removeWhitespace:M=>{i=!0,this._pendingChanges.remove({id:M})}};o(r)}finally{this._pendingChanges.commit(this)}return i}_commitPendingChanges(o,i,r){if((o.length>0||r.length>0)&&(this._minWidth=-1),o.length+i.length+r.length<=1){for(const _e of o)this._insertWhitespace(_e);for(const _e of i)this._changeOneWhitespace(_e.id,_e.newAfterLineNumber,_e.newHeight);for(const _e of r){const Ke=this._findWhitespaceIndex(_e.id);if(Ke===-1)continue;this._removeWhitespace(Ke)}return}const M=new Set;for(const _e of r)M.add(_e.id);const N=new Map;for(const _e of i)N.set(_e.id,_e);const $=_e=>{let Ke=[];for(const Je of _e){if(M.has(Je.id))continue;if(N.has(Je.id)){const at=N.get(Je.id);Je.afterLineNumber=at.newAfterLineNumber,Je.height=at.newHeight}Ke.push(Je)}return Ke},pe=$(this._arr).concat($(o));pe.sort((_e,Ke)=>_e.afterLineNumber===Ke.afterLineNumber?_e.ordinal-Ke.ordinal:_e.afterLineNumber-Ke.afterLineNumber),this._arr=pe,this._prefixSumValidIndex=-1}_checkPendingChanges(){this._pendingChanges.mustCommit()&&this._pendingChanges.commit(this)}_insertWhitespace(o){const i=ss.findInsertionIndex(this._arr,o.afterLineNumber,o.ordinal);this._arr.splice(i,0,o),this._prefixSumValidIndex=Math.min(this._prefixSumValidIndex,i-1)}_findWhitespaceIndex(o){const i=this._arr;for(let r=0,M=i.length;ri&&(this._arr[r].afterLineNumber-=i-o+1)}}onLinesInserted(o,i){this._checkPendingChanges(),o=o|0,i=i|0,this._lineCount+=i-o+1;for(let r=0,M=this._arr.length;r=i.length||i[pe+1].afterLineNumber>=o)return pe;r=pe+1|0}else M=pe-1|0}return-1}_findFirstWhitespaceAfterLineNumber(o){o=o|0;const i=this._findLastWhitespaceBeforeLineNumber(o),r=i+1;return r1?i=this._lineHeight*(o-1):i=0;const r=this.getWhitespaceAccumulatedHeightBeforeLineNumber(o);return i+r+this._paddingTop}getWhitespaceMinWidth(){if(this._checkPendingChanges(),this._minWidth===-1){let o=0;for(let i=0,r=this._arr.length;ii}isInTopPadding(o){return this._paddingTop===0?!1:(this._checkPendingChanges(),o=i-this._paddingBottom}getLineNumberAtOrAfterVerticalOffset(o){if(this._checkPendingChanges(),o=o|0,o<0)return 1;const i=this._lineCount|0,r=this._lineHeight;let M=1,N=i;for(;M=pe+r)M=$+1;else{if(o>=pe)return $;N=$}}return M>i?i:M}getLinesViewportData(o,i){this._checkPendingChanges(),o=o|0,i=i|0;const r=this._lineHeight,M=this.getLineNumberAtOrAfterVerticalOffset(o)|0,N=this.getVerticalOffsetForLineNumber(M)|0;let $=this._lineCount|0,pe=this.getFirstWhitespaceIndexAfterLineNumber(M)|0;const _e=this.getWhitespacesCount()|0;let Ke,Je;pe===-1?(pe=_e,Je=$+1,Ke=0):(Je=this.getAfterLineNumberForWhitespaceIndex(pe)|0,Ke=this.getHeightForWhitespaceIndex(pe)|0);let at=N,jt=at;const _t=5e5;let Ht=0;N>=_t&&(Ht=Math.floor(N/_t)*_t,Ht=Math.floor(Ht/r)*r,jt-=Ht);const Jt=[],so=o+(i-o)/2;let Co=-1;for(let Po=M;Po<=$;Po++){if(Co===-1){const Qo=at,Go=at+r;(Qo<=so&&soso)&&(Co=Po)}for(at+=r,Jt[Po-M]=jt,jt+=r;Je===Po;)jt+=Ke,at+=Ke,pe++,pe>=_e?Je=$+1:(Je=this.getAfterLineNumberForWhitespaceIndex(pe)|0,Ke=this.getHeightForWhitespaceIndex(pe)|0);if(at>=i){$=Po;break}}Co===-1&&(Co=$);const wo=this.getVerticalOffsetForLineNumber($)|0;let Do=M,ko=$;return Doi&&ko--),{bigNumbersDelta:Ht,startLineNumber:M,endLineNumber:$,relativeVerticalOffset:Jt,centeredLineNumber:Co,completelyVisibleStartLineNumber:Do,completelyVisibleEndLineNumber:ko}}getVerticalOffsetForWhitespaceIndex(o){this._checkPendingChanges(),o=o|0;const i=this.getAfterLineNumberForWhitespaceIndex(o);let r;i>=1?r=this._lineHeight*i:r=0;let M;return o>0?M=this.getWhitespacesAccumulatedHeight(o-1):M=0,r+M+this._paddingTop}getWhitespaceIndexAtOrAfterVerticallOffset(o){this._checkPendingChanges(),o=o|0;let i=0,r=this.getWhitespacesCount()-1;if(r<0)return-1;const M=this.getVerticalOffsetForWhitespaceIndex(r),N=this.getHeightForWhitespaceIndex(r);if(o>=M+N)return-1;for(;i=pe+_e)i=$+1;else{if(o>=pe)return $;r=$}}return i}getWhitespaceAtVerticalOffset(o){this._checkPendingChanges(),o=o|0;const i=this.getWhitespaceIndexAtOrAfterVerticallOffset(o);if(i<0)return null;if(i>=this.getWhitespacesCount())return null;const r=this.getVerticalOffsetForWhitespaceIndex(i);if(r>o)return null;const M=this.getHeightForWhitespaceIndex(i),N=this.getIdForWhitespaceIndex(i),$=this.getAfterLineNumberForWhitespaceIndex(i);return{id:N,afterLineNumber:$,verticalOffset:r,height:M}}getWhitespaceViewportData(o,i){this._checkPendingChanges(),o=o|0,i=i|0;const r=this.getWhitespaceIndexAtOrAfterVerticallOffset(o),M=this.getWhitespacesCount()-1;if(r<0)return[];let N=[];for(let $=r;$<=M;$++){const pe=this.getVerticalOffsetForWhitespaceIndex($),_e=this.getHeightForWhitespaceIndex($);if(pe>=i)break;N.push({id:this.getIdForWhitespaceIndex($),afterLineNumber:this.getAfterLineNumberForWhitespaceIndex($),verticalOffset:pe,height:_e})}return N}getWhitespaces(){return this._checkPendingChanges(),this._arr.slice(0)}getWhitespacesCount(){return this._checkPendingChanges(),this._arr.length}getIdForWhitespaceIndex(o){return this._checkPendingChanges(),o=o|0,this._arr[o].id}getAfterLineNumberForWhitespaceIndex(o){return this._checkPendingChanges(),o=o|0,this._arr[o].afterLineNumber}getHeightForWhitespaceIndex(o){return this._checkPendingChanges(),o=o|0,this._arr[o].height}}ss.INSTANCE_COUNT=0;const vr=125;class Qn{constructor(o,i,r,M){o=o|0,i=i|0,r=r|0,M=M|0,o<0&&(o=0),i<0&&(i=0),r<0&&(r=0),M<0&&(M=0),this.width=o,this.contentWidth=i,this.scrollWidth=Math.max(o,i),this.height=r,this.contentHeight=M,this.scrollHeight=Math.max(r,M)}equals(o){return this.width===o.width&&this.contentWidth===o.contentWidth&&this.height===o.height&&this.contentHeight===o.contentHeight}}class Cr extends d.a{constructor(o,i){super();this._onDidContentSizeChange=this._register(new u.b),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._dimensions=new Qn(0,0,0,0),this._scrollable=this._register(new Fn.a(o,i)),this.onDidScroll=this._scrollable.onScroll}getScrollable(){return this._scrollable}setSmoothScrollDuration(o){this._scrollable.setSmoothScrollDuration(o)}validateScrollPosition(o){return this._scrollable.validateScrollPosition(o)}getScrollDimensions(){return this._dimensions}setScrollDimensions(o){if(this._dimensions.equals(o))return;const i=this._dimensions;this._dimensions=o,this._scrollable.setScrollDimensions({width:o.width,scrollWidth:o.scrollWidth,height:o.height,scrollHeight:o.scrollHeight},!0);const r=i.contentWidth!==o.contentWidth,M=i.contentHeight!==o.contentHeight;(r||M)&&this._onDidContentSizeChange.fire(new ns(i.contentWidth,i.contentHeight,o.contentWidth,o.contentHeight))}getFutureScrollPosition(){return this._scrollable.getFutureScrollPosition()}getCurrentScrollPosition(){return this._scrollable.getCurrentScrollPosition()}setScrollPositionNow(o){this._scrollable.setScrollPositionNow(o)}setScrollPositionSmooth(o){this._scrollable.setScrollPositionSmooth(o)}}class yr extends d.a{constructor(o,i,r){super();this._configuration=o;const M=this._configuration.options,N=M.get(129),$=M.get(74);this._linesLayout=new ss(i,M.get(58),$.top,$.bottom),this._scrollable=this._register(new Cr(0,r)),this._configureSmoothScrollDuration(),this._scrollable.setScrollDimensions(new Qn(N.contentWidth,0,N.height,0)),this.onDidScroll=this._scrollable.onDidScroll,this.onDidContentSizeChange=this._scrollable.onDidContentSizeChange,this._updateHeight()}dispose(){super.dispose()}getScrollable(){return this._scrollable.getScrollable()}onHeightMaybeChanged(){this._updateHeight()}_configureSmoothScrollDuration(){this._scrollable.setSmoothScrollDuration(this._configuration.options.get(102)?vr:0)}onConfigurationChanged(o){const i=this._configuration.options;if(o.hasChanged(58)&&this._linesLayout.setLineHeight(i.get(58)),o.hasChanged(74)){const r=i.get(74);this._linesLayout.setPadding(r.top,r.bottom)}if(o.hasChanged(129)){const r=i.get(129),M=r.contentWidth,N=r.height,$=this._scrollable.getScrollDimensions(),pe=$.contentWidth;this._scrollable.setScrollDimensions(new Qn(M,$.contentWidth,N,this._getContentHeight(M,N,pe)))}else this._updateHeight();o.hasChanged(102)&&this._configureSmoothScrollDuration()}onFlushed(o){this._linesLayout.onFlushed(o)}onLinesDeleted(o,i){this._linesLayout.onLinesDeleted(o,i)}onLinesInserted(o,i){this._linesLayout.onLinesInserted(o,i)}_getHorizontalScrollbarHeight(o,i){const r=this._configuration.options,M=r.get(91);return M.horizontal===2||o>=i?0:M.horizontalScrollbarSize}_getContentHeight(o,i,r){const M=this._configuration.options;let N=this._linesLayout.getLinesTotalHeight();return M.get(93)?N+=Math.max(0,i-M.get(58)-M.get(74).bottom):N+=this._getHorizontalScrollbarHeight(o,r),N}_updateHeight(){const o=this._scrollable.getScrollDimensions(),i=o.width,r=o.height,M=o.contentWidth;this._scrollable.setScrollDimensions(new Qn(i,o.contentWidth,r,this._getContentHeight(i,r,M)))}getCurrentViewport(){const o=this._scrollable.getScrollDimensions(),i=this._scrollable.getCurrentScrollPosition();return new F.i(i.scrollTop,i.scrollLeft,o.width,o.height)}getFutureViewport(){const o=this._scrollable.getScrollDimensions(),i=this._scrollable.getFutureScrollPosition();return new F.i(i.scrollTop,i.scrollLeft,o.width,o.height)}_computeContentWidth(o){const i=this._configuration.options,r=i.get(130),M=i.get(43);if(r.isViewportWrapping){const N=i.get(129),$=i.get(64);return o>N.contentWidth+M.typicalHalfwidthCharacterWidth&&($.enabled&&$.side==="right")?o+N.verticalScrollbarWidth:o}else{const N=i.get(92)*M.typicalHalfwidthCharacterWidth,$=this._linesLayout.getWhitespaceMinWidth();return Math.max(o+N,$)}}setMaxLineWidth(o){const i=this._scrollable.getScrollDimensions();this._scrollable.setScrollDimensions(new Qn(i.width,this._computeContentWidth(o),i.height,i.contentHeight)),this._updateHeight()}saveState(){const o=this._scrollable.getFutureScrollPosition();let i=o.scrollTop,r=this._linesLayout.getLineNumberAtOrAfterVerticalOffset(i),M=this._linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(r);return{scrollTop:i,scrollTopWithoutViewZones:i-M,scrollLeft:o.scrollLeft}}changeWhitespace(o){const i=this._linesLayout.changeWhitespace(o);return i&&this.onHeightMaybeChanged(),i}getVerticalOffsetForLineNumber(o){return this._linesLayout.getVerticalOffsetForLineNumber(o)}isAfterLines(o){return this._linesLayout.isAfterLines(o)}isInTopPadding(o){return this._linesLayout.isInTopPadding(o)}isInBottomPadding(o){return this._linesLayout.isInBottomPadding(o)}getLineNumberAtVerticalOffset(o){return this._linesLayout.getLineNumberAtOrAfterVerticalOffset(o)}getWhitespaceAtVerticalOffset(o){return this._linesLayout.getWhitespaceAtVerticalOffset(o)}getLinesViewportData(){const o=this.getCurrentViewport();return this._linesLayout.getLinesViewportData(o.top,o.top+o.height)}getLinesViewportDataAtScrollTop(o){const i=this._scrollable.getScrollDimensions();return o+i.height>i.scrollHeight&&(o=i.scrollHeight-i.height),o<0&&(o=0),this._linesLayout.getLinesViewportData(o,o+i.height)}getWhitespaceViewportData(){const o=this.getCurrentViewport();return this._linesLayout.getWhitespaceViewportData(o.top,o.top+o.height)}getWhitespaces(){return this._linesLayout.getWhitespaces()}getContentWidth(){const o=this._scrollable.getScrollDimensions();return o.contentWidth}getScrollWidth(){const o=this._scrollable.getScrollDimensions();return o.scrollWidth}getContentHeight(){const o=this._scrollable.getScrollDimensions();return o.contentHeight}getScrollHeight(){const o=this._scrollable.getScrollDimensions();return o.scrollHeight}getCurrentScrollLeft(){const o=this._scrollable.getCurrentScrollPosition();return o.scrollLeft}getCurrentScrollTop(){const o=this._scrollable.getCurrentScrollPosition();return o.scrollTop}validateScrollPosition(o){return this._scrollable.validateScrollPosition(o)}setScrollPosition(o,i){i===1?this._scrollable.setScrollPositionNow(o):this._scrollable.setScrollPositionSmooth(o)}deltaScrollNow(o,i){const r=this._scrollable.getCurrentScrollPosition();this._scrollable.setScrollPositionNow({scrollLeft:r.scrollLeft+o,scrollTop:r.scrollTop+i})}}var Ms=e("4bUh"),Er=e("LeU+");class Sr{constructor(o){this._lines=o}convertViewPositionToModelPosition(o){return this._lines.convertViewPositionToModelPosition(o.lineNumber,o.column)}convertViewRangeToModelRange(o){return this._lines.convertViewRangeToModelRange(o)}validateViewPosition(o,i){return this._lines.validateViewPosition(o.lineNumber,o.column,i)}validateViewRange(o,i){return this._lines.validateViewRange(o,i)}convertModelPositionToViewPosition(o,i){return this._lines.convertModelPositionToViewPosition(o.lineNumber,o.column,i)}convertModelRangeToViewRange(o,i){return this._lines.convertModelRangeToViewRange(o,i)}modelPositionIsVisible(o){return this._lines.modelPositionIsVisible(o.lineNumber,o.column)}getModelLineViewLineCount(o){return this._lines.getModelLineViewLineCount(o)}getViewLineNumberOfModelPosition(o,i){return this._lines.getViewLineNumberOfModelPosition(o,i)}}class Jn{constructor(o){this._counts=o,this._isValid=!1,this._validEndIndex=-1,this._modelToView=[],this._viewToModel=[]}_invalidate(o){this._isValid=!1,this._validEndIndex=Math.min(this._validEndIndex,o-1)}_ensureValid(){if(this._isValid)return;for(let o=this._validEndIndex+1,i=this._counts.length;o0?this._modelToView[o-1]:0;this._modelToView[o]=M+r;for(let N=0;N0?this._modelToView[i-1]:0;return new Er.b(i,o-r)}}class rs{constructor(o,i,r,M,N,$,pe,_e,Ke){this._editorId=o,this.model=i,this._validModelVersionId=-1,this._domLineBreaksComputerFactory=r,this._monospaceLineBreaksComputerFactory=M,this.fontInfo=N,this.tabSize=$,this.wrappingStrategy=pe,this.wrappingColumn=_e,this.wrappingIndent=Ke,this._constructLines(!0,null)}dispose(){this.hiddenAreasIds=this.model.deltaDecorations(this.hiddenAreasIds,[])}createCoordinatesConverter(){return new Sr(this)}_constructLines(o,i){this.lines=[],o&&(this.hiddenAreasIds=[]);const r=this.model.getLinesContent(),M=this.model.getInjectedTextDecorations(this._editorId),N=r.length,$=this.createLineBreaksComputer(),pe=new $o.a(Mo.b.fromDecorations(M));for(let Jt=0;JtCo.lineNumber===Jt+1);$.addRequest(r[Jt],so,i?i[Jt]:null)}const _e=$.finalize();let Ke=[],Je=this.hiddenAreasIds.map(Jt=>this.model.getDecorationRange(Jt)).sort(He.a.compareRangesUsingStarts),at=1,jt=0,_t=-1,Ht=_t+1=at&&so<=jt,wo=ls(_e[Jt],!Co);Ke[Jt]=wo.getViewLineCount(),this.lines[Jt]=wo}this._validModelVersionId=this.model.getVersionId(),this.prefixSumComputer=new Jn(Ke)}getHiddenAreas(){return this.hiddenAreasIds.map(o=>this.model.getDecorationRange(o))}_reduceRanges(o){if(o.length===0)return[];let i=o.map($=>this.model.validateRange($)).sort(He.a.compareRangesUsingStarts),r=[],M=i[0].startLineNumber,N=i[0].endLineNumber;for(let $=1,pe=i.length;$N+1?(r.push(new He.a(M,1,N,1)),M=_e.startLineNumber,N=_e.endLineNumber):_e.endLineNumber>N&&(N=_e.endLineNumber)}return r.push(new He.a(M,1,N,1)),r}setHiddenAreas(o){let i=this._reduceRanges(o),r=this.hiddenAreasIds.map(at=>this.model.getDecorationRange(at)).sort(He.a.compareRangesUsingStarts);if(i.length===r.length){let at=!1;for(let jt=0;jt=$&&jt<=pe?this.lines[at].isVisible()&&(this.lines[at]=this.lines[at].setVisible(!1),_t=!0):(Je=!0,this.lines[at].isVisible()||(this.lines[at]=this.lines[at].setVisible(!0),_t=!0)),_t){let Ht=this.lines[at].getViewLineCount();this.prefixSumComputer.changeValue(at,Ht)}}return Je||this.setHiddenAreas([]),!0}modelPositionIsVisible(o,i){return o<1||o>this.lines.length?!1:this.lines[o-1].isVisible()}getModelLineViewLineCount(o){return o<1||o>this.lines.length?1:this.lines[o-1].getViewLineCount()}setTabSize(o){return this.tabSize===o?!1:(this.tabSize=o,this._constructLines(!1,null),!0)}setWrappingSettings(o,i,r,M){const N=this.fontInfo.equals(o),$=this.wrappingStrategy===i,pe=this.wrappingColumn===r,_e=this.wrappingIndent===M;if(N&&$&&pe&&_e)return!1;const Ke=N&&$&&!pe&&_e;this.fontInfo=o,this.wrappingStrategy=i,this.wrappingColumn=r,this.wrappingIndent=M;let Je=null;if(Ke){Je=[];for(let at=0,jt=this.lines.length;at2&&!this.lines[i-2].isVisible();let $=i===1?1:this.prefixSumComputer.getAccumulatedValue(i-2)+1,pe=0,_e=[],Ke=[];for(let Je=0,at=M.length;Je_e?(Je=i===1?1:this.prefixSumComputer.getAccumulatedValue(i-2)+1,at=Je+_e-1,Ht=at+1,Jt=Ht+(N-_e)-1,Ke=!0):N<_e?(Je=i===1?1:this.prefixSumComputer.getAccumulatedValue(i-2)+1,at=Je+N-1,jt=at+1,_t=jt+(_e-N)-1,Ke=!0):(Je=i===1?1:this.prefixSumComputer.getAccumulatedValue(i-2)+1,at=Je+_e-1),this.prefixSumComputer.changeValue(M,_e);const so=Je<=at?new hn(Je,at):null,Co=jt<=_t?new bn(jt,_t):null,wo=Ht<=Jt?new dn(Ht,Jt):null;return[Ke,so,Co,wo]}acceptVersionId(o){this._validModelVersionId=o,this.lines.length===1&&!this.lines[0].isVisible()&&this.setHiddenAreas([])}getViewLineCount(){return this.prefixSumComputer.getTotalValue()}_toValidViewLineNumber(o){if(o<1)return 1;const i=this.getViewLineCount();return o>i?i:o|0}getActiveIndentGuide(o,i,r){o=this._toValidViewLineNumber(o),i=this._toValidViewLineNumber(i),r=this._toValidViewLineNumber(r);const M=this.convertViewPositionToModelPosition(o,this.getViewLineMinColumn(o)),N=this.convertViewPositionToModelPosition(i,this.getViewLineMinColumn(i)),$=this.convertViewPositionToModelPosition(r,this.getViewLineMinColumn(r)),pe=this.model.getActiveIndentGuide(M.lineNumber,N.lineNumber,$.lineNumber),_e=this.convertModelPositionToViewPosition(pe.startLineNumber,1),Ke=this.convertModelPositionToViewPosition(pe.endLineNumber,this.model.getLineMaxColumn(pe.endLineNumber));return{startLineNumber:_e.lineNumber,endLineNumber:Ke.lineNumber,indent:pe.indent}}getViewLineInfo(o){o=this._toValidViewLineNumber(o);let i=this.prefixSumComputer.getIndexOf(o-1),r=i.index,M=i.remainder;return new as(r+1,M)}getMinColumnOfViewLine(o){return this.lines[o.modelLineNumber-1].getViewLineMinColumn(this.model,o.modelLineNumber,o.modelLineWrappedLineIdx)}getModelStartPositionOfViewLine(o){const i=this.lines[o.modelLineNumber-1],r=i.getViewLineMinColumn(this.model,o.modelLineNumber,o.modelLineWrappedLineIdx),M=i.getModelColumnOfViewPosition(o.modelLineWrappedLineIdx,r);return new Te.a(o.modelLineNumber,M)}getModelEndPositionOfViewLine(o){const i=this.lines[o.modelLineNumber-1],r=i.getViewLineMaxColumn(this.model,o.modelLineNumber,o.modelLineWrappedLineIdx),M=i.getModelColumnOfViewPosition(o.modelLineWrappedLineIdx,r);return new Te.a(o.modelLineNumber,M)}getViewLineInfosGroupedByModelRanges(o,i){const r=this.getViewLineInfo(o),M=this.getViewLineInfo(i),N=new Array;let $=this.getModelStartPositionOfViewLine(r),pe=new Array;for(let _e=r.modelLineNumber;_e<=M.modelLineNumber;_e++){const Ke=this.lines[_e-1];if(Ke.isVisible()){let Je=_e===r.modelLineNumber?r.modelLineWrappedLineIdx:0,at=_e===M.modelLineNumber?M.modelLineWrappedLineIdx+1:Ke.getViewLineCount();for(let jt=Je;jtjt.horizontalLine?new Xi.d(jt.visibleColumn,jt.className,new Xi.e(jt.horizontalLine.top,this.convertModelPositionToViewPosition(Je.modelLineNumber,jt.horizontalLine.endColumn).column)):jt),$.push(at)}}return $}getViewLinesIndentGuides(o,i){o=this._toValidViewLineNumber(o),i=this._toValidViewLineNumber(i);const r=this.convertViewPositionToModelPosition(o,this.getViewLineMinColumn(o)),M=this.convertViewPositionToModelPosition(i,this.getViewLineMaxColumn(i));let N=[],$=[],pe=[];const _e=r.lineNumber-1,Ke=M.lineNumber-1;let Je=null;for(let Ht=_e;Ht<=Ke;Ht++){const Jt=this.lines[Ht];if(Jt.isVisible()){let so=Jt.getViewLineNumberOfModelPosition(0,Ht===_e?r.column:1),Co=Jt.getViewLineNumberOfModelPosition(0,this.model.getLineMaxColumn(Ht+1)),wo=Co-so+1,Do=0;wo>1&&Jt.getViewLineMinColumn(this.model,Ht+1,Co)===1&&(Do=so===0?1:2),$.push(wo),pe.push(Do),Je===null&&(Je=new Te.a(Ht+1,0))}else Je!==null&&(N=N.concat(this.model.getLinesIndentGuides(Je.lineNumber,Ht)),Je=null)}Je!==null&&(N=N.concat(this.model.getLinesIndentGuides(Je.lineNumber,M.lineNumber)),Je=null);const at=i-o+1;let jt=new Array(at),_t=0;for(let Ht=0,Jt=N.length;Hti&&(Ht=!0,_t=i-N+1);let Jt=jt+_t;if(at.getViewLinesData(this.model,Ke+1,jt,Jt,N-o,r,_e),N+=_t,Ht)break}return _e}validateViewPosition(o,i,r){o=this._toValidViewLineNumber(o);let M=this.prefixSumComputer.getIndexOf(o-1),N=M.index,$=M.remainder,pe=this.lines[N],_e=pe.getViewLineMinColumn(this.model,N+1,$),Ke=pe.getViewLineMaxColumn(this.model,N+1,$);i<_e&&(i=_e),i>Ke&&(i=Ke);let Je=pe.getModelColumnOfViewPosition($,i),at=this.model.validatePosition(new Te.a(N+1,Je));return at.equals(r)?new Te.a(o,i):this.convertModelPositionToViewPosition(r.lineNumber,r.column)}validateViewRange(o,i){const r=this.validateViewPosition(o.startLineNumber,o.startColumn,i.getStartPosition()),M=this.validateViewPosition(o.endLineNumber,o.endColumn,i.getEndPosition());return new He.a(r.lineNumber,r.column,M.lineNumber,M.column)}convertViewPositionToModelPosition(o,i){o=this._toValidViewLineNumber(o);let r=this.prefixSumComputer.getIndexOf(o-1),M=r.index,N=r.remainder,$=this.lines[M].getModelColumnOfViewPosition(N,i);return this.model.validatePosition(new Te.a(M+1,$))}convertViewRangeToModelRange(o){const i=this.convertViewPositionToModelPosition(o.startLineNumber,o.startColumn),r=this.convertViewPositionToModelPosition(o.endLineNumber,o.endColumn);return new He.a(i.lineNumber,i.column,r.lineNumber,r.column)}convertModelPositionToViewPosition(o,i,r=2){const M=this.model.validatePosition(new Te.a(o,i)),N=M.lineNumber,$=M.column;let pe=N-1,_e=!1;for(;pe>0&&!this.lines[pe].isVisible();)pe--,_e=!0;if(pe===0&&!this.lines[pe].isVisible())return new Te.a(1,1);const Ke=1+(pe===0?0:this.prefixSumComputer.getAccumulatedValue(pe-1));let Je;return _e?Je=this.lines[pe].getViewPositionOfModelPosition(Ke,this.model.getLineMaxColumn(pe+1),r):Je=this.lines[N-1].getViewPositionOfModelPosition(Ke,$,r),Je}convertModelRangeToViewRange(o,i=0){if(o.isEmpty()){const r=this.convertModelPositionToViewPosition(o.startLineNumber,o.startColumn,i);return He.a.fromPositions(r)}else{const r=this.convertModelPositionToViewPosition(o.startLineNumber,o.startColumn,1),M=this.convertModelPositionToViewPosition(o.endLineNumber,o.endColumn,0);return new He.a(r.lineNumber,r.column,M.lineNumber,M.column)}}getViewLineNumberOfModelPosition(o,i){let r=o-1;if(this.lines[r].isVisible()){const N=1+(r===0?0:this.prefixSumComputer.getAccumulatedValue(r-1));return this.lines[r].getViewLineNumberOfModelPosition(N,i)}for(;r>0&&!this.lines[r].isVisible();)r--;if(r===0&&!this.lines[r].isVisible())return 1;const M=1+(r===0?0:this.prefixSumComputer.getAccumulatedValue(r-1));return this.lines[r].getViewLineNumberOfModelPosition(M,this.model.getLineMaxColumn(r+1))}getDecorationsInRange(o,i,r){const M=this.convertViewPositionToModelPosition(o.startLineNumber,o.startColumn),N=this.convertViewPositionToModelPosition(o.endLineNumber,o.endColumn);if(N.lineNumber-M.lineNumber<=o.endLineNumber-o.startLineNumber)return this.model.getDecorationsInRange(new He.a(M.lineNumber,1,N.lineNumber,N.column),i,r);let $=[];const pe=M.lineNumber-1,_e=N.lineNumber-1;let Ke=null;for(let _t=pe;_t<=_e;_t++){const Ht=this.lines[_t];if(Ht.isVisible())Ke===null&&(Ke=new Te.a(_t+1,_t===pe?M.column:1));else if(Ke!==null){const Jt=this.model.getLineMaxColumn(_t);$=$.concat(this.model.getDecorationsInRange(new He.a(Ke.lineNumber,Ke.column,_t,Jt),i,r)),Ke=null}}Ke!==null&&($=$.concat(this.model.getDecorationsInRange(new He.a(Ke.lineNumber,Ke.column,N.lineNumber,N.column),i,r)),Ke=null),$.sort((_t,Ht)=>{const Jt=He.a.compareRangesUsingStarts(_t.range,Ht.range);return Jt===0?_t.idHt.id?1:0:Jt});let Je=[],at=0,jt=null;for(const _t of $){const Ht=_t.id;if(jt===Ht)continue;jt=Ht,Je[at++]=_t}return Je}getInjectedTextAt(o){const i=this._toValidViewLineNumber(o.lineNumber),r=this.prefixSumComputer.getIndexOf(i-1),M=r.index,N=r.remainder;return this.lines[M].getInjectedTextAt(N,o.column)}normalizePosition(o,i){const r=this._toValidViewLineNumber(o.lineNumber),M=this.prefixSumComputer.getIndexOf(r-1),N=M.index,$=M.remainder;return this.lines[N].normalizePosition(this.model,N+1,$,o,i)}getLineIndentColumn(o){const i=this._toValidViewLineNumber(o),r=this.prefixSumComputer.getIndexOf(i-1),M=r.index,N=r.remainder;return N===0?this.model.getLineIndentColumn(M+1):0}}class as{constructor(o,i){this.modelLineNumber=o,this.modelLineWrappedLineIdx=i}get isWrappedLineContinuation(){return this.modelLineWrappedLineIdx>0}}class Gs{constructor(o,i){this.modelRange=o,this.viewLines=i}}class qn{constructor(){}isVisible(){return!0}setVisible(o){return o?this:Bn.INSTANCE}getLineBreakData(){return null}getViewLineCount(){return 1}getViewLineContent(o,i,r){return o.getLineContent(i)}getViewLineLength(o,i,r){return o.getLineLength(i)}getViewLineMinColumn(o,i,r){return o.getLineMinColumn(i)}getViewLineMaxColumn(o,i,r){return o.getLineMaxColumn(i)}getViewLineData(o,i,r){let M=o.getLineTokens(i),N=M.getLineContent();return new F.f(N,!1,1,N.length+1,0,M.inflate(),null)}getViewLinesData(o,i,r,M,N,$,pe){if(!$[N]){pe[N]=null;return}pe[N]=this.getViewLineData(o,i,0)}getModelColumnOfViewPosition(o,i){return i}getViewPositionOfModelPosition(o,i){return new Te.a(o,i)}getViewLineNumberOfModelPosition(o,i){return o}normalizePosition(o,i,r,M,N){return M}getInjectedTextAt(o,i){return null}}qn.INSTANCE=new qn;class Bn{constructor(){}isVisible(){return!1}setVisible(o){return o?qn.INSTANCE:this}getLineBreakData(){return null}getViewLineCount(){return 0}getViewLineContent(o,i,r){throw new Error("Not supported")}getViewLineLength(o,i,r){throw new Error("Not supported")}getViewLineMinColumn(o,i,r){throw new Error("Not supported")}getViewLineMaxColumn(o,i,r){throw new Error("Not supported")}getViewLineData(o,i,r){throw new Error("Not supported")}getViewLinesData(o,i,r,M,N,$,pe){throw new Error("Not supported")}getModelColumnOfViewPosition(o,i){throw new Error("Not supported")}getViewPositionOfModelPosition(o,i){throw new Error("Not supported")}getViewLineNumberOfModelPosition(o,i){throw new Error("Not supported")}normalizePosition(o,i,r,M,N){throw new Error("Not supported")}getInjectedTextAt(o,i){throw new Error("Not supported")}}Bn.INSTANCE=new Bn;class Wn{constructor(o,i){this._lineBreakData=o,this._isVisible=i}isVisible(){return this._isVisible}setVisible(o){return this._isVisible=o,this}getLineBreakData(){return this._lineBreakData}getViewLineCount(){return this._isVisible?this._lineBreakData.breakOffsets.length:0}getInputStartOffsetOfOutputLineIndex(o){return this._lineBreakData.getInputOffsetOfOutputPosition(o,0)}getInputEndOffsetOfOutputLineIndex(o,i,r){return r+1===this._lineBreakData.breakOffsets.length?o.getLineMaxColumn(i)-1:this._lineBreakData.getInputOffsetOfOutputPosition(r+1,0)}getViewLineContent(o,i,r){if(!this._isVisible)throw new Error("Not supported");const M=r>0?this._lineBreakData.breakOffsets[r-1]:0,N=rnew Mo.b(0,0,_e+1,this._lineBreakData.injectionOptions[Ke],0));$=Mo.b.applyInjectedText(o.getLineContent(i),pe).substring(M,N)}else $=o.getValueInRange({startLineNumber:i,startColumn:M+1,endLineNumber:i,endColumn:N+1});return r>0&&($=Vi(this._lineBreakData.wrappedTextIndentLength)+$),$}getViewLineLength(o,i,r){if(!this._isVisible)throw new Error("Not supported");const M=r>0?this._lineBreakData.breakOffsets[r-1]:0,N=r0&&($=this._lineBreakData.wrappedTextIndentLength+$),$}getViewLineMinColumn(o,i,r){if(!this._isVisible)throw new Error("Not supported");return this._getViewLineMinColumn(r)}_getViewLineMinColumn(o){return o>0?this._lineBreakData.wrappedTextIndentLength+1:1}getViewLineMaxColumn(o,i,r){if(!this._isVisible)throw new Error("Not supported");return this.getViewLineLength(o,i,r)+1}getViewLineData(o,i,r){if(!this._isVisible)throw new Error("Not supported");const M=this._lineBreakData,N=r>0?M.wrappedTextIndentLength:0,$=M.injectionOffsets,pe=M.injectionOptions;let _e,Ke,Je;if($){const Jt=o.getLineTokens(i).withInserted($.map((Do,ko)=>({offset:Do,text:pe[ko].content,tokenMetadata:Ms.a.defaultTokenMetadata}))),so=r>0?M.breakOffsets[r-1]:0,Co=M.breakOffsets[r];_e=Jt.getLineContent().substring(so,Co),Ke=Jt.sliceAndInflate(so,Co,N),Je=new Array;let wo=0;for(let Do=0;Do<$.length;Do++){const ko=pe[Do].content.length,Po=$[Do]+wo,Qo=$[Do]+wo+ko;if(Po>Co)break;if(so0?M.wrappedTextIndentLength:0,Wo=zo+Math.max(Po-so,0),hi=zo+Math.min(Qo-so,Co);Wo!==hi&&Je.push(new F.e(Wo,hi,Go.inlineClassName,Go.inlineClassNameAffectsLetterSpacing))}}wo+=ko}}else{const Jt=this.getInputStartOffsetOfOutputLineIndex(r),so=this.getInputEndOffsetOfOutputLineIndex(o,i,r),Co=o.getLineTokens(i);_e=o.getValueInRange({startLineNumber:i,startColumn:Jt+1,endLineNumber:i,endColumn:so+1}),Ke=Co.sliceAndInflate(Jt,so,N),Je=null}r>0&&(_e=Vi(M.wrappedTextIndentLength)+_e);const at=r>0?M.wrappedTextIndentLength+1:1,jt=_e.length+1,_t=r+10&&(r0&&($+=this._lineBreakData.wrappedTextIndentLength),new Te.a(o+N,$)}getViewLineNumberOfModelPosition(o,i){if(!this._isVisible)throw new Error("Not supported");const r=this._lineBreakData.getOutputPositionOfInputOffset(i-1);return o+r.outputLineIndex}normalizePosition(o,i,r,M,N){if(this._lineBreakData.injectionOffsets!==null){const $=M.lineNumber-r,pe=this._lineBreakData.outputPositionToOffsetInUnwrappedLine(r,M.column-1),_e=this._lineBreakData.normalizeOffsetAroundInjections(pe,N);if(_e!==pe)return this._lineBreakData.getOutputPositionOfOffsetInUnwrappedLine(_e,N).toPosition($,this._lineBreakData.wrappedTextIndentLength)}if(N===0){if(r>0&&M.column===this._getViewLineMinColumn(r))return new Te.a(M.lineNumber-1,this.getViewLineMaxColumn(o,i,r-1))}else if(N===1){const $=this.getViewLineCount()-1;if(r<$&&M.column===this.getViewLineMaxColumn(o,i,r))return new Te.a(M.lineNumber+1,this._getViewLineMinColumn(r+1))}return M}getInjectedTextAt(o,i){return this._lineBreakData.getInjectedText(o,i-1)}}let es=[""];function Vi(o){if(o>=es.length)for(let i=1;i<=o;i++)es[i]=wr(i);return es[o]}function wr(o){return new Array(o+1).join(" ")}function ls(o,i){return o===null?i?qn.INSTANCE:Bn.INSTANCE:new Wn(o,i)}class Lr{constructor(o){this._lines=o}_validPosition(o){return this._lines.model.validatePosition(o)}_validRange(o){return this._lines.model.validateRange(o)}convertViewPositionToModelPosition(o){return this._validPosition(o)}convertViewRangeToModelRange(o){return this._validRange(o)}validateViewPosition(o,i){return this._validPosition(i)}validateViewRange(o,i){return this._validRange(i)}convertModelPositionToViewPosition(o){return this._validPosition(o)}convertModelRangeToViewRange(o){return this._validRange(o)}modelPositionIsVisible(o){const i=this._lines.model.getLineCount();return!(o.lineNumber<1||o.lineNumber>i)}getModelLineViewLineCount(o){return 1}getViewLineNumberOfModelPosition(o,i){return o}}class ds{constructor(o){this.model=o}dispose(){}createCoordinatesConverter(){return new Lr(this)}getHiddenAreas(){return[]}setHiddenAreas(o){return!1}setTabSize(o){return!1}setWrappingSettings(o,i,r,M){return!1}createLineBreaksComputer(){let o=[];return{addRequest:(i,r,M)=>{o.push(null)},finalize:()=>o}}onModelFlushed(){}onModelLinesDeleted(o,i,r){return new dn(i,r)}onModelLinesInserted(o,i,r,M){return new bn(i,r)}onModelLineChanged(o,i,r){return[!1,new hn(i,i),null,null]}acceptVersionId(o){}getViewLineCount(){return this.model.getLineCount()}getActiveIndentGuide(o,i,r){return{startLineNumber:o,endLineNumber:o,indent:0}}getViewLinesBracketGuides(o,i,r){return new Array(i-o+1).fill([])}getViewLinesIndentGuides(o,i){const r=i-o+1;let M=new Array(r);for(let N=0;Nthis.tokenizeViewport(),50)),this._updateConfigurationViewLineCount=this._register(new C.e(()=>this._updateConfigurationViewLineCountNow(),0)),this._hasFocus=!1,this._viewportStartLine=-1,this._viewportStartLineTrackedRange=null,this._viewportStartLineDelta=0,Xs&&this.model.isTooLargeForTokenization())this._lines=new ds(this.model);else{const pe=this._configuration.options,_e=pe.get(43),Ke=pe.get(123),Je=pe.get(130),at=pe.get(122);this._lines=new rs(this._editorId,this.model,M,N,_e,this.model.getOptions().tabSize,Ke,Je.wrappingColumn,at)}this.coordinatesConverter=this._lines.createCoordinatesConverter(),this._cursor=this._register(new xn(r,this,this.coordinatesConverter,this.cursorConfig)),this.viewLayout=this._register(new yr(this._configuration,this.getLineCount(),$)),this._register(this.viewLayout.onDidScroll(pe=>{pe.scrollTopChanged&&this._tokenizeViewportSoon.schedule(),this._eventDispatcher.emitSingleViewEvent(new is(pe)),this._eventDispatcher.emitOutgoingEvent(new Vs(pe.oldScrollWidth,pe.oldScrollLeft,pe.oldScrollHeight,pe.oldScrollTop,pe.scrollWidth,pe.scrollLeft,pe.scrollHeight,pe.scrollTop))})),this._register(this.viewLayout.onDidContentSizeChange(pe=>{this._eventDispatcher.emitOutgoingEvent(pe)})),this._decorations=new xs(this._editorId,this.model,this._configuration,this._lines,this.coordinatesConverter),this._registerModelEvents(),this._register(this._configuration.onDidChangeFast(pe=>{try{const _e=this._eventDispatcher.beginEmitViewEvents();this._onConfigurationChanged(_e,pe)}finally{this._eventDispatcher.endEmitViewEvents()}})),this._register(go.getInstance().onDidChange(()=>{this._eventDispatcher.emitSingleViewEvent(new Kn)})),this._updateConfigurationViewLineCountNow()}dispose(){super.dispose(),this._decorations.dispose(),this._lines.dispose(),this.invalidateMinimapColorCache(),this._viewportStartLineTrackedRange=this.model._setTrackedRange(this._viewportStartLineTrackedRange,null,1),this._eventDispatcher.dispose()}createLineBreaksComputer(){return this._lines.createLineBreaksComputer()}addViewEventHandler(o){this._eventDispatcher.addViewEventHandler(o)}removeViewEventHandler(o){this._eventDispatcher.removeViewEventHandler(o)}_updateConfigurationViewLineCountNow(){this._configuration.setViewLineCount(this._lines.getViewLineCount())}tokenizeViewport(){const o=this.viewLayout.getLinesViewportData(),i=new He.a(o.startLineNumber,this.getLineMinColumn(o.startLineNumber),o.endLineNumber,this.getLineMaxColumn(o.endLineNumber)),r=this._toModelVisibleRanges(i);for(const M of r)this.model.tokenizeViewport(M.startLineNumber,M.endLineNumber)}setHasFocus(o){this._hasFocus=o,this._cursor.setHasFocus(o),this._eventDispatcher.emitSingleViewEvent(new Ei(o)),this._eventDispatcher.emitOutgoingEvent(new Zn(!o,o))}onCompositionStart(){this._eventDispatcher.emitSingleViewEvent(new Fo)}onCompositionEnd(){this._eventDispatcher.emitSingleViewEvent(new Bo)}onDidColorThemeChange(){this._eventDispatcher.emitSingleViewEvent(new In)}_onConfigurationChanged(o,i){let r=null;if(this._viewportStartLine!==-1){let Je=new Te.a(this._viewportStartLine,this.getLineMinColumn(this._viewportStartLine));r=this.coordinatesConverter.convertViewPositionToModelPosition(Je)}let M=!1;const N=this._configuration.options,$=N.get(43),pe=N.get(123),_e=N.get(130),Ke=N.get(122);if(this._lines.setWrappingSettings($,pe,_e.wrappingColumn,Ke)&&(o.emitViewEvent(new Gi),o.emitViewEvent(new wi),o.emitViewEvent(new ei(null)),this._cursor.onLineMappingChanged(o),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this.viewLayout.getCurrentScrollTop()!==0&&(M=!0),this._updateConfigurationViewLineCount.schedule()),i.hasChanged(80)&&(this._decorations.reset(),o.emitViewEvent(new ei(null))),o.emitViewEvent(new di(i)),this.viewLayout.onConfigurationChanged(i),M&&r){const Je=this.coordinatesConverter.convertModelPositionToViewPosition(r),at=this.viewLayout.getVerticalOffsetForLineNumber(Je.lineNumber);this.viewLayout.setScrollPosition({scrollTop:at+this._viewportStartLineDelta},1)}st.b.shouldRecreate(i)&&(this.cursorConfig=new st.b(this.model.getLanguageId(),this.model.getOptions(),this._configuration),this._cursor.updateConfiguration(this.cursorConfig))}_registerModelEvents(){this._register(this.model.onDidChangeContentOrInjectedText(o=>{try{const i=this._eventDispatcher.beginEmitViewEvents();let r=!1,M=!1;const N=o.changes,$=o instanceof Mo.d?o.versionId:null,pe=this._lines.createLineBreaksComputer();for(const Je of N)switch(Je.changeType){case 4:{for(let at=0;at!Ht.ownerId||Ht.ownerId===this._editorId)),pe.addRequest(jt,_t,null)}break}case 2:{let at=null;Je.injectedText&&(at=Je.injectedText.filter(jt=>!jt.ownerId||jt.ownerId===this._editorId)),pe.addRequest(Je.detail,at,null);break}}const _e=pe.finalize();let Ke=0;for(const Je of N)switch(Je.changeType){case 1:{this._lines.onModelFlushed(),i.emitViewEvent(new Gi),this._decorations.reset(),this.viewLayout.onFlushed(this.getLineCount()),r=!0;break}case 3:{const at=this._lines.onModelLinesDeleted($,Je.fromLineNumber,Je.toLineNumber);at!==null&&(i.emitViewEvent(at),this.viewLayout.onLinesDeleted(at.fromLineNumber,at.toLineNumber)),r=!0;break}case 4:{const at=_e.slice(Ke,Ke+Je.detail.length);Ke+=Je.detail.length;const jt=this._lines.onModelLinesInserted($,Je.fromLineNumber,Je.toLineNumber,at);jt!==null&&(i.emitViewEvent(jt),this.viewLayout.onLinesInserted(jt.fromLineNumber,jt.toLineNumber)),r=!0;break}case 2:{const at=_e[Ke];Ke++;const[jt,_t,Ht,Jt]=this._lines.onModelLineChanged($,Je.lineNumber,at);M=jt,_t&&i.emitViewEvent(_t),Ht&&(i.emitViewEvent(Ht),this.viewLayout.onLinesInserted(Ht.fromLineNumber,Ht.toLineNumber)),Jt&&(i.emitViewEvent(Jt),this.viewLayout.onLinesDeleted(Jt.fromLineNumber,Jt.toLineNumber));break}case 5:break}$!==null&&this._lines.acceptVersionId($),this.viewLayout.onHeightMaybeChanged(),!r&&M&&(i.emitViewEvent(new wi),i.emitViewEvent(new ei(null)),this._cursor.onLineMappingChanged(i),this._decorations.onLineMappingChanged())}finally{this._eventDispatcher.endEmitViewEvents()}if(this._viewportStartLine=-1,this._configuration.setMaxLineNumber(this.model.getLineCount()),this._updateConfigurationViewLineCountNow(),!this._hasFocus&&this.model.getAttachedEditorCount()>=2&&this._viewportStartLineTrackedRange){const i=this.model._getTrackedRange(this._viewportStartLineTrackedRange);if(i){const r=this.coordinatesConverter.convertModelPositionToViewPosition(i.getStartPosition()),M=this.viewLayout.getVerticalOffsetForLineNumber(r.lineNumber);this.viewLayout.setScrollPosition({scrollTop:M+this._viewportStartLineDelta},1)}}try{const i=this._eventDispatcher.beginEmitViewEvents();this._cursor.onModelContentChanged(i,o)}finally{this._eventDispatcher.endEmitViewEvents()}})),this._register(this.model.onDidChangeTokens(o=>{let i=[];for(let r=0,M=o.ranges.length;r{this._eventDispatcher.emitSingleViewEvent(new Mi),this.cursorConfig=new st.b(this.model.getLanguageId(),this.model.getOptions(),this._configuration),this._cursor.updateConfiguration(this.cursorConfig)})),this._register(this.model.onDidChangeLanguage(o=>{this.cursorConfig=new st.b(this.model.getLanguageId(),this.model.getOptions(),this._configuration),this._cursor.updateConfiguration(this.cursorConfig)})),this._register(this.model.onDidChangeOptions(o=>{if(this._lines.setTabSize(this.model.getOptions().tabSize)){try{const i=this._eventDispatcher.beginEmitViewEvents();i.emitViewEvent(new Gi),i.emitViewEvent(new wi),i.emitViewEvent(new ei(null)),this._cursor.onLineMappingChanged(i),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount())}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule()}this.cursorConfig=new st.b(this.model.getLanguageId(),this.model.getOptions(),this._configuration),this._cursor.updateConfiguration(this.cursorConfig)})),this._register(this.model.onDidChangeDecorations(o=>{this._decorations.onModelDecorationsChanged(),this._eventDispatcher.emitSingleViewEvent(new ei(o))}))}setHiddenAreas(o){let i=!1;try{const r=this._eventDispatcher.beginEmitViewEvents();i=this._lines.setHiddenAreas(o),i&&(r.emitViewEvent(new Gi),r.emitViewEvent(new wi),r.emitViewEvent(new ei(null)),this._cursor.onLineMappingChanged(r),this._decorations.onLineMappingChanged(),this.viewLayout.onFlushed(this.getLineCount()),this.viewLayout.onHeightMaybeChanged())}finally{this._eventDispatcher.endEmitViewEvents()}this._updateConfigurationViewLineCount.schedule(),i&&this._eventDispatcher.emitOutgoingEvent(new zs)}getVisibleRangesPlusViewportAboveBelow(){const o=this._configuration.options.get(129),i=this._configuration.options.get(58),r=Math.max(20,Math.round(o.height/i)),M=this.viewLayout.getLinesViewportData(),N=Math.max(1,M.completelyVisibleStartLineNumber-r),$=Math.min(this.getLineCount(),M.completelyVisibleEndLineNumber+r);return this._toModelVisibleRanges(new He.a(N,this.getLineMinColumn(N),$,this.getLineMaxColumn($)))}getVisibleRanges(){const o=this.getCompletelyVisibleViewRange();return this._toModelVisibleRanges(o)}_toModelVisibleRanges(o){const i=this.coordinatesConverter.convertViewRangeToModelRange(o),r=this._lines.getHiddenAreas();if(r.length===0)return[i];let M=[],N=0,$=i.startLineNumber,pe=i.startColumn,_e=i.endLineNumber,Ke=i.endColumn;for(let Je=0,at=r.length;Je_e)continue;$Ke.toInlineDecoration(i))]),new F.g($.minColumn,$.maxColumn,$.content,$.continuesWithWrappedLine,r,M,$.tokens,_e,N,$.startVisibleColumn)}getViewLineData(o){return this._lines.getViewLineData(o)}getMinimapLinesRenderingData(o,i,r){let M=this._lines.getViewLinesData(o,i,r);return new F.c(this.getTabSize(),M)}getAllOverviewRulerDecorations(o){const i=this.model.getOverviewRulerDecorations(this._editorId,Object(Oe.n)(this._configuration.options)),r=new Gn;for(const M of i){const N=M.options,$=N.overviewRuler;if(!$)continue;const pe=$.position;if(pe===0)continue;const _e=$.getColor(o),Ke=this.coordinatesConverter.getViewLineNumberOfModelPosition(M.range.startLineNumber,M.range.startColumn),Je=this.coordinatesConverter.getViewLineNumberOfModelPosition(M.range.endLineNumber,M.range.endColumn);r.accept(_e,N.zIndex,Ke,Je,pe)}return r.asArray}invalidateOverviewRulerColorCache(){const o=this.model.getOverviewRulerDecorations();for(const i of o){const r=i.options.overviewRuler;r&&r.invalidateCachedColor()}}invalidateMinimapColorCache(){const o=this.model.getAllDecorations();for(const i of o){const r=i.options.minimap;r&&r.invalidateCachedColor()}}getValueInRange(o,i){const r=this.coordinatesConverter.convertViewRangeToModelRange(o);return this.model.getValueInRange(r,i)}getModelLineMaxColumn(o){return this.model.getLineMaxColumn(o)}validateModelPosition(o){return this.model.validatePosition(o)}validateModelRange(o){return this.model.validateRange(o)}deduceModelPositionRelativeToViewPosition(o,i,r){const M=this.coordinatesConverter.convertViewPositionToModelPosition(o);this.model.getEOL().length===2&&(i<0?i-=r:i+=r);const N=this.model.getOffsetAt(M),$=N+i;return this.model.getPositionAt($)}getEOL(){return this.model.getEOL()}getPlainTextToCopy(o,i,r){const M=r?`\r `:this.model.getEOL();o=o.slice(0),o.sort(He.a.compareRangesUsingStarts);let N=!1,$=!1;for(const _e of o)_e.isEmpty()?N=!0:$=!0;if(!$){if(!i)return"";const _e=o.map(Je=>Je.startLineNumber);let Ke="";for(let Je=0;Je<_e.length;Je++){if(Je>0&&_e[Je-1]===_e[Je])continue;Ke+=this.model.getLineContent(_e[Je])+M}return Ke}if(N&&i){let _e=[],Ke=0;for(const Je of o){const at=Je.startLineNumber;Je.isEmpty()?at!==Ke&&_e.push(this.model.getLineContent(at)):_e.push(this.model.getValueInRange(Je,r?2:0)),Ke=at}return _e.length===1?_e[0]:_e}let pe=[];for(const _e of o)_e.isEmpty()||pe.push(this.model.getValueInRange(_e,r?2:0));return pe.length===1?pe[0]:pe}getRichTextToCopy(o,i){const r=this.model.getLanguageId();if(r===Ts.b)return null;if(o.length!==1)return null;let M=o[0];if(M.isEmpty()){if(!i)return null;const Je=M.startLineNumber;M=new He.a(Je,this.model.getLineMinColumn(Je),Je,this.model.getLineMaxColumn(Je))}const N=this._configuration.options.get(43),$=this._getColorMap(),pe=/[:;\\\/<>]/.test(N.fontFamily),_e=pe||N.fontFamily===Oe.c.fontFamily;let Ke;if(_e)Ke=Oe.c.fontFamily;else{Ke=N.fontFamily,Ke=Ke.replace(/"/g,"'");const Je=/[,']/.test(Ke);if(!Je){const at=/[+ ]/.test(Ke);at&&(Ke=`'${Ke}'`)}Ke=`${Ke}, ${Oe.c.fontFamily}`}return{mode:r,html:`
    `+this._getHTMLToCopy(M,$)+"
    "}}_getHTMLToCopy(o,i){const r=o.startLineNumber,M=o.startColumn,N=o.endLineNumber,$=o.endColumn,pe=this.getTabSize();let _e="";for(let Ke=r;Ke<=N;Ke++){const Je=this.model.getLineTokens(Ke),at=Je.getLineContent(),jt=Ke===r?M-1:0,_t=Ke===N?$-1:at.length;at===""?_e+="
    ":_e+=Object(vn.a)(at,Je.inflate(),i,jt,_t,pe,l.i)}return _e}_getColorMap(){let o=Yt.F.getColorMap(),i=["#000000"];if(o)for(let r=1,M=o.length;rthis._cursor.setStates(M,o,i,r))}getCursorColumnSelectData(){return this._cursor.getCursorColumnSelectData()}getCursorAutoClosedCharacters(){return this._cursor.getAutoClosedCharacters()}setCursorColumnSelectData(o){this._cursor.setCursorColumnSelectData(o)}getPrevEditOperationType(){return this._cursor.getPrevEditOperationType()}setPrevEditOperationType(o){this._cursor.setPrevEditOperationType(o)}getSelection(){return this._cursor.getSelection()}getSelections(){return this._cursor.getSelections()}getPosition(){return this._cursor.getPrimaryCursorState().modelState.position}setSelections(o,i,r=0){this._withViewEventsCollector(M=>this._cursor.setSelections(M,o,i,r))}saveCursorState(){return this._cursor.saveState()}restoreCursorState(o){this._withViewEventsCollector(i=>this._cursor.restoreState(i,o))}_executeCursorEdit(o){if(this._cursor.context.cursorConfig.readOnly){this._eventDispatcher.emitOutgoingEvent(new br);return}this._withViewEventsCollector(o)}executeEdits(o,i,r){this._executeCursorEdit(M=>this._cursor.executeEdits(M,o,i,r))}startComposition(){this._cursor.setIsDoingComposition(!0),this._executeCursorEdit(o=>this._cursor.startComposition(o))}endComposition(o){this._cursor.setIsDoingComposition(!1),this._executeCursorEdit(i=>this._cursor.endComposition(i,o))}type(o,i){this._executeCursorEdit(r=>this._cursor.type(r,o,i))}compositionType(o,i,r,M,N){this._executeCursorEdit($=>this._cursor.compositionType($,o,i,r,M,N))}paste(o,i,r,M){this._executeCursorEdit(N=>this._cursor.paste(N,o,i,r,M))}cut(o){this._executeCursorEdit(i=>this._cursor.cut(i,o))}executeCommand(o,i){this._executeCursorEdit(r=>this._cursor.executeCommand(r,o,i))}executeCommands(o,i){this._executeCursorEdit(r=>this._cursor.executeCommands(r,o,i))}revealPrimaryCursor(o,i){this._withViewEventsCollector(r=>this._cursor.revealPrimary(r,o,i,0))}revealTopMostCursor(o){const i=this._cursor.getTopMostViewPosition(),r=new He.a(i.lineNumber,i.column,i.lineNumber,i.column);this._withViewEventsCollector(M=>M.emitViewEvent(new En(o,r,null,0,!0,0)))}revealBottomMostCursor(o){const i=this._cursor.getBottomMostViewPosition(),r=new He.a(i.lineNumber,i.column,i.lineNumber,i.column);this._withViewEventsCollector(M=>M.emitViewEvent(new En(o,r,null,0,!0,0)))}revealRange(o,i,r,M,N){this._withViewEventsCollector($=>$.emitViewEvent(new En(o,r,null,M,i,N)))}getVerticalOffsetForLineNumber(o){return this.viewLayout.getVerticalOffsetForLineNumber(o)}getScrollTop(){return this.viewLayout.getCurrentScrollTop()}setScrollTop(o,i){this.viewLayout.setScrollPosition({scrollTop:o},i)}setScrollPosition(o,i){this.viewLayout.setScrollPosition(o,i)}deltaScrollNow(o,i){this.viewLayout.deltaScrollNow(o,i)}changeWhitespace(o){const i=this.viewLayout.changeWhitespace(o);i&&(this._eventDispatcher.emitSingleViewEvent(new fr),this._eventDispatcher.emitOutgoingEvent(new zs))}setMaxLineWidth(o){this.viewLayout.setMaxLineWidth(o)}_withViewEventsCollector(o){try{const i=this._eventDispatcher.beginEmitViewEvents();o(i)}finally{this._eventDispatcher.endEmitViewEvents()}}normalizePosition(o,i){return this._lines.normalizePosition(o,i)}getLineIndentColumn(o){return this._lines.getLineIndentColumn(o)}}class Gn{constructor(){this._asMap=Object.create(null),this.asArray=[]}accept(o,i,r,M,N){const $=this._asMap[o];if($){const pe=$.data,_e=pe[pe.length-3],Ke=pe[pe.length-1];if(_e===N&&Ke+1>=r){M>Ke&&(pe[pe.length-1]=M);return}pe.push(N,r,M)}else{const pe=new F.d(o,i,[N,r,M]);this._asMap[o]=pe,this.asArray.push(pe)}}}var cs=e("nnTU"),An=e("T8No"),_r=e("Cg/j"),us=e("8HsV"),Ys=e("sM1p"),hs=e("R3nR"),Dr=e("MXAL");class Rn extends Dr.a{constructor(o,i){super(0);for(let r=0;r=0&&o<256?this._asciiMap[o]:o>=12352&&o<=12543||o>=13312&&o<=19903||o>=19968&&o<=40959?3:this._map.get(o)||this._defaultValue}}let Os=[],Is=[];class Zs{constructor(o,i){this.classifier=new Rn(o,i)}static create(o){return new Zs(o.get(118),o.get(117))}createLineBreaksComputer(o,i,r,M){i=i|0,r=+r;const N=[],$=[],pe=[];return{addRequest:(_e,Ke,Je)=>{N.push(_e),$.push(Ke),pe.push(Je)},finalize:()=>{const _e=o.typicalFullwidthCharacterWidth/o.typicalHalfwidthCharacterWidth;let Ke=[];for(let Je=0,at=N.length;Je=0){let Po=Math.abs(Je[ko]-wo);for(;ko+1=Po)break;Po=Qo,ko++}}for(;koPo&&(Po=so,Qo=Co);let Go=0,zo=0,Wo=0,hi=0;if(Qo<=wo){let ti=Qo,Wi=Po===0?0:r.charCodeAt(Po-1),zi=Po===0?0:o.get(Wi),$i=!0;for(let Zi=Po;Zi<_e;Zi++){const cn=Zi,nn=r.charCodeAt(Zi);let qi,gn;if(gt.E(nn)?(Zi++,qi=0,gn=2):(qi=o.get(nn),gn=Xn(nn,ti,M,$)),cn>so&&As(Wi,zi,nn,qi)&&(Go=cn,zo=ti),ti+=gn,ti>wo){cn>so?(Wo=cn,hi=ti-gn):(Wo=Zi+1,hi=ti),ti-zo>jt&&(Go=0),$i=!1;break}Wi=nn,zi=qi}if($i){Jt>0&&(_t[Jt]=Ke[Ke.length-1],Ht[Jt]=Je[Ke.length-1],Jt++);break}}if(Go===0){let ti=Qo,Wi=r.charCodeAt(Po),zi=o.get(Wi),$i=!1;for(let Zi=Po-1;Zi>=so;Zi--){const cn=Zi+1,nn=r.charCodeAt(Zi);if(nn===9){$i=!0;break}let qi,gn;if(gt.F(nn)?(Zi--,qi=0,gn=2):(qi=o.get(nn),gn=gt.D(nn)?$:1),ti<=wo){if(Wo===0&&(Wo=cn,hi=ti),ti<=wo-jt)break;if(As(nn,qi,Wi,zi)){Go=cn,zo=ti;break}}ti-=gn,Wi=nn,zi=qi}if(Go!==0){const Zi=jt-(hi-zo);if(Zi<=M){const cn=r.charCodeAt(Wo);let nn;gt.E(cn)?nn=2:nn=Xn(cn,hi,M,$),Zi-nn<0&&(Go=0)}}if($i){ko--;continue}}if(Go===0&&(Go=Wo,zo=hi),Go<=so){const ti=r.charCodeAt(so);gt.E(ti)?(Go=so+2,zo=Co+2):(Go=so+1,zo=Co+Xn(ti,Co,M,$))}for(so=Go,_t[Jt]=Go,Co=zo,Ht[Jt]=zo,Jt++,wo=zo+jt;ko<0||ko=ai)break;ai=ti,ko++}}return Jt===0?null:(_t.length=Jt,Ht.length=Jt,Os=i.breakOffsets,Is=i.breakOffsetsVisibleColumn,i.breakOffsets=_t,i.breakOffsetsVisibleColumn=Ht,i.wrappedTextIndentLength=at,i)}function xr(o,i,r,M,N,$,pe){const _e=Mo.b.applyInjectedText(i,r);let Ke,Je;if(r&&r.length>0?(Ke=r.map(zo=>zo.options),Je=r.map(zo=>zo.column-1)):(Ke=null,Je=null),N===-1)return Ke?new F.b([_e.length],[],0,Je,Ke):null;const at=_e.length;if(at<=1)return Ke?new F.b([_e.length],[],0,Je,Ke):null;const jt=Js(_e,M,N,$,pe),_t=N-jt;let Ht=[],Jt=[],so=0,Co=0,wo=0,Do=N,ko=_e.charCodeAt(0),Po=o.get(ko),Qo=Xn(ko,0,M,$),Go=1;gt.E(ko)&&(Qo+=1,ko=_e.charCodeAt(1),Po=o.get(ko),Go++);for(let zo=Go;zoDo&&((Co===0||Qo-wo>_t)&&(Co=Wo,wo=Qo-ti),Ht[so]=Co,Jt[so]=wo,so++,Do=wo+_t,Co=0),ko=hi,Po=ai}return so===0&&(!r||r.length===0)?null:(Ht[so]=at,Jt[so]=Qo,new F.b(Ht,Jt,jt,Je,Ke))}function Xn(o,i,r,M){return o===9?r-i%r:gt.D(o)||o<32?M:1}function Qs(o,i){return i-o%i}function As(o,i,r,M){return r!==32&&(i===2||i===3&&M!==2||M===1||M===3&&i!==1)}function Js(o,i,r,M,N){let $=0;if(N!==0){const pe=gt.u(o);if(pe!==-1){for(let Ke=0;Ker&&($=0)}}return $}var ms;const gs=(ms=window.trustedTypes)===null||ms===void 0?void 0:ms.createPolicy("domLineBreaksComputer",{createHTML:o=>o});class qs{static create(){return new qs}constructor(){}createLineBreaksComputer(o,i,r,M){i=i|0,r=+r;let N=[],$=[];return{addRequest:(pe,_e,Ke)=>{N.push(pe),$.push(_e)},finalize:()=>On(N,o,i,r,M,$)}}}function On(o,i,r,M,N,$){var pe;function _e(Wo){const hi=$[Wo];if(hi){const ai=Mo.b.applyInjectedText(o[Wo],hi),ti=hi.map(zi=>zi.options),Wi=hi.map(zi=>zi.column-1);return new F.b([ai.length],[],0,Wi,ti)}else return null}if(M===-1){const Wo=[];for(let hi=0,ai=o.length;hiKe?(ai=0,ti=0):Wi=Ke-Zi}const zi=hi.substr(ai),$i=ci(zi,ti,r,Wi,Ht,jt);Jt[Wo]=ai,so[Wo]=ti,Co[Wo]=zi,wo[Wo]=$i[0],Do[Wo]=$i[1]}const ko=Ht.build(),Po=(pe=gs==null?void 0:gs.createHTML(ko))!==null&&pe!==void 0?pe:ko;_t.innerHTML=Po,_t.style.position="absolute",_t.style.top="10000",_t.style.wordWrap="break-word",document.body.appendChild(_t);let Qo=document.createRange();const Go=Array.prototype.slice.call(_t.children,0);let zo=[];for(let Wo=0;Woqi.options),cn=nn.map(qi=>qi.column-1)):(Zi=null,cn=null),zo[Wo]=new F.b(ai,$i,Wi,cn,Zi)}return document.body.removeChild(_t),zo}function ci(o,i,r,M,N,$){if($!==0){let _t=String($);N.appendASCIIString('
    ');const pe=o.length;let _e=i,Ke=0,Je=[],at=[],jt=0");for(let _t=0;_t"),Je[_t]=Ke,at[_t]=_e;const Ht=jt;jt=_t+1"),Je[o.length]=Ke,at[o.length]=_e,N.appendASCIIString("
    "),[Je,at]}function Tr(o,i,r,M){if(r.length<=1)return null;const N=Array.prototype.slice.call(i.children,0),$=[];try{Rs(o,N,M,0,null,r.length-1,null,$)}catch(pe){return console.log(pe),null}return $.length===0?null:($.push(r.length),$)}function Rs(o,i,r,M,N,$,pe,_e){if(M===$)return;if(N=N||Ns(o,i,r[M],r[M+1]),pe=pe||Ns(o,i,r[$],r[$+1]),Math.abs(N[0].top-pe[0].top)<=.1)return;if(M+1===$){_e.push($);return}const Ke=M+($-M)/2|0,Je=Ns(o,i,r[Ke],r[Ke+1]);Rs(o,i,r,M,N,Ke,Je,_e),Rs(o,i,r,Ke,Je,$,pe,_e)}function Ns(o,i,r,M){return o.setStart(i[r/16384|0].firstChild,r%16384),o.setEnd(i[M/16384|0].firstChild,M%16384),o.getClientRects()}var js=e("1I1M"),Or=function(o,i,r,M){var N=arguments.length,$=N<3?i:M===null?M=Object.getOwnPropertyDescriptor(i,r):M,pe;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")$=Reflect.decorate(o,i,r,M);else for(var _e=o.length-1;_e>=0;_e--)(pe=o[_e])&&($=(N<3?pe($):N>3?pe(i,r,$):pe(i,r))||$);return N>3&&$&&Object.defineProperty(i,r,$),$},Un=function(o,i){return function(r,M){i(r,M,o)}};let Hn=0;class fs{constructor(o,i,r,M,N){this.model=o,this.viewModel=i,this.view=r,this.hasRealView=M,this.listenersToRemove=N}dispose(){Object(d.f)(this.listenersToRemove),this.model.onBeforeDetached(),this.hasRealView&&this.view.dispose(),this.viewModel.dispose()}}let Nn=class o extends d.a{constructor(i,r,M,N,$,pe,_e,Ke,Je,at){super();this._onDidDispose=this._register(new u.b),this.onDidDispose=this._onDidDispose.event,this._onDidChangeModelContent=this._register(new u.b),this.onDidChangeModelContent=this._onDidChangeModelContent.event,this._onDidChangeModelLanguage=this._register(new u.b),this.onDidChangeModelLanguage=this._onDidChangeModelLanguage.event,this._onDidChangeModelLanguageConfiguration=this._register(new u.b),this.onDidChangeModelLanguageConfiguration=this._onDidChangeModelLanguageConfiguration.event,this._onDidChangeModelOptions=this._register(new u.b),this.onDidChangeModelOptions=this._onDidChangeModelOptions.event,this._onDidChangeModelDecorations=this._register(new u.b),this.onDidChangeModelDecorations=this._onDidChangeModelDecorations.event,this._onDidChangeConfiguration=this._register(new u.b),this.onDidChangeConfiguration=this._onDidChangeConfiguration.event,this._onDidChangeModel=this._register(new u.b),this.onDidChangeModel=this._onDidChangeModel.event,this._onDidChangeCursorPosition=this._register(new u.b),this.onDidChangeCursorPosition=this._onDidChangeCursorPosition.event,this._onDidChangeCursorSelection=this._register(new u.b),this.onDidChangeCursorSelection=this._onDidChangeCursorSelection.event,this._onDidAttemptReadOnlyEdit=this._register(new u.b),this.onDidAttemptReadOnlyEdit=this._onDidAttemptReadOnlyEdit.event,this._onDidLayoutChange=this._register(new u.b),this.onDidLayoutChange=this._onDidLayoutChange.event,this._editorTextFocus=this._register(new er),this.onDidFocusEditorText=this._editorTextFocus.onDidChangeToTrue,this.onDidBlurEditorText=this._editorTextFocus.onDidChangeToFalse,this._editorWidgetFocus=this._register(new er),this.onDidFocusEditorWidget=this._editorWidgetFocus.onDidChangeToTrue,this.onDidBlurEditorWidget=this._editorWidgetFocus.onDidChangeToFalse,this._onWillType=this._register(new u.b),this.onWillType=this._onWillType.event,this._onDidType=this._register(new u.b),this.onDidType=this._onDidType.event,this._onDidCompositionStart=this._register(new u.b),this.onDidCompositionStart=this._onDidCompositionStart.event,this._onDidCompositionEnd=this._register(new u.b),this.onDidCompositionEnd=this._onDidCompositionEnd.event,this._onDidPaste=this._register(new u.b),this.onDidPaste=this._onDidPaste.event,this._onMouseUp=this._register(new u.b),this.onMouseUp=this._onMouseUp.event,this._onMouseDown=this._register(new u.b),this.onMouseDown=this._onMouseDown.event,this._onMouseDrag=this._register(new u.b),this.onMouseDrag=this._onMouseDrag.event,this._onMouseDrop=this._register(new u.b),this.onMouseDrop=this._onMouseDrop.event,this._onMouseDropCanceled=this._register(new u.b),this.onMouseDropCanceled=this._onMouseDropCanceled.event,this._onContextMenu=this._register(new u.b),this.onContextMenu=this._onContextMenu.event,this._onMouseMove=this._register(new u.b),this.onMouseMove=this._onMouseMove.event,this._onMouseLeave=this._register(new u.b),this.onMouseLeave=this._onMouseLeave.event,this._onMouseWheel=this._register(new u.b),this.onMouseWheel=this._onMouseWheel.event,this._onKeyUp=this._register(new u.b),this.onKeyUp=this._onKeyUp.event,this._onKeyDown=this._register(new u.b),this.onKeyDown=this._onKeyDown.event,this._onDidContentSizeChange=this._register(new u.b),this.onDidContentSizeChange=this._onDidContentSizeChange.event,this._onDidScrollChange=this._register(new u.b),this.onDidScrollChange=this._onDidScrollChange.event,this._onDidChangeViewZones=this._register(new u.b),this.onDidChangeViewZones=this._onDidChangeViewZones.event,this._onDidChangeHiddenAreas=this._register(new u.b),this.onDidChangeHiddenAreas=this._onDidChangeHiddenAreas.event;const jt=Object.assign({},r);this._domElement=i,this._overflowWidgetsDomNode=jt.overflowWidgetsDomNode,delete jt.overflowWidgetsDomNode,this._id=++Hn,this._decorationTypeKeysToIds={},this._decorationTypeSubtypes={},this.isSimpleWidget=M.isSimpleWidget||!1,this._telemetryData=M.telemetryData,this._configuration=this._register(this._createConfiguration(jt,at)),this._register(this._configuration.onDidChange(Ht=>{this._onDidChangeConfiguration.fire(Ht);const Jt=this._configuration.options;if(Ht.hasChanged(129)){const so=Jt.get(129);this._onDidLayoutChange.fire(so)}})),this._contextKeyService=this._register(_e.createScoped(this._domElement)),this._notificationService=Je,this._codeEditorService=$,this._commandService=pe,this._themeService=Ke,this._register(new Ir(this,this._contextKeyService)),this._register(new tr(this,this._contextKeyService)),this._instantiationService=N.createChild(new us.a([An.b,this._contextKeyService])),this._modelData=null,this._contributions={},this._actions={},this._focusTracker=new ps(i),this._register(this._focusTracker.onChange(()=>{this._editorWidgetFocus.setValue(this._focusTracker.hasFocus())})),this._contentWidgets={},this._overlayWidgets={};let _t;Array.isArray(M.contributions)?_t=M.contributions:_t=P.d.getEditorContributions();for(const Ht of _t){if(this._contributions[Ht.id]){Object(f.f)(new Error(`Cannot have two contributions with the same id ${Ht.id}`));continue}try{const Jt=this._instantiationService.createInstance(Ht.ctor,this);this._contributions[Ht.id]=Jt}catch(Jt){Object(f.f)(Jt)}}P.d.getEditorActions().forEach(Ht=>{if(this._actions[Ht.id]){Object(f.f)(new Error(`Cannot have two actions with the same id ${Ht.id}`));return}const Jt=new Tn.a(Ht.id,Ht.label,Ht.alias,Object(rn.p)(Ht.precondition),()=>this._instantiationService.invokeFunction(so=>Promise.resolve(Ht.runEditorCommand(so,this,null))),this._contextKeyService);this._actions[Jt.id]=Jt}),this._codeEditorService.addCodeEditor(this)}_createConfiguration(i,r){return new p.a(this.isSimpleWidget,i,this._domElement,r)}getId(){return this.getEditorType()+":"+this._id}getEditorType(){return mn.a.ICodeEditor}dispose(){this._codeEditorService.removeCodeEditor(this),this._focusTracker.dispose();const i=Object.keys(this._contributions);for(let r=0,M=i.length;rHe.a.lift(r)))}getVisibleColumnFromPosition(i){if(!this._modelData)return i.column;const r=this._modelData.model.validatePosition(i),M=this._modelData.model.getOptions().tabSize;return st.a.visibleColumnFromColumn(this._modelData.model.getLineContent(r.lineNumber),r.column,M)+1}getPosition(){return this._modelData?this._modelData.viewModel.getPosition():null}setPosition(i){if(!this._modelData)return;if(!Te.a.isIPosition(i))throw new Error("Invalid arguments");this._modelData.viewModel.setSelections("api",[{selectionStartLineNumber:i.lineNumber,selectionStartColumn:i.column,positionLineNumber:i.lineNumber,positionColumn:i.column}])}_sendRevealRange(i,r,M,N){if(!this._modelData)return;if(!He.a.isIRange(i))throw new Error("Invalid arguments");const $=this._modelData.model.validateRange(i),pe=this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange($);this._modelData.viewModel.revealRange("api",M,pe,r,N)}revealLine(i,r=0){this._revealLine(i,0,r)}revealLineInCenter(i,r=0){this._revealLine(i,1,r)}revealLineInCenterIfOutsideViewport(i,r=0){this._revealLine(i,2,r)}revealLineNearTop(i,r=0){this._revealLine(i,5,r)}_revealLine(i,r,M){if(typeof i!="number")throw new Error("Invalid arguments");this._sendRevealRange(new He.a(i,1,i,1),r,!1,M)}revealPosition(i,r=0){this._revealPosition(i,0,!0,r)}revealPositionInCenter(i,r=0){this._revealPosition(i,1,!0,r)}revealPositionInCenterIfOutsideViewport(i,r=0){this._revealPosition(i,2,!0,r)}revealPositionNearTop(i,r=0){this._revealPosition(i,5,!0,r)}_revealPosition(i,r,M,N){if(!Te.a.isIPosition(i))throw new Error("Invalid arguments");this._sendRevealRange(new He.a(i.lineNumber,i.column,i.lineNumber,i.column),r,M,N)}getSelection(){return this._modelData?this._modelData.viewModel.getSelection():null}getSelections(){return this._modelData?this._modelData.viewModel.getSelections():null}setSelection(i){const r=m.a.isISelection(i),M=He.a.isIRange(i);if(!r&&!M)throw new Error("Invalid arguments");if(r)this._setSelectionImpl(i);else if(M){const N={selectionStartLineNumber:i.startLineNumber,selectionStartColumn:i.startColumn,positionLineNumber:i.endLineNumber,positionColumn:i.endColumn};this._setSelectionImpl(N)}}_setSelectionImpl(i){if(!this._modelData)return;const r=new m.a(i.selectionStartLineNumber,i.selectionStartColumn,i.positionLineNumber,i.positionColumn);this._modelData.viewModel.setSelections("api",[r])}revealLines(i,r,M=0){this._revealLines(i,r,0,M)}revealLinesInCenter(i,r,M=0){this._revealLines(i,r,1,M)}revealLinesInCenterIfOutsideViewport(i,r,M=0){this._revealLines(i,r,2,M)}revealLinesNearTop(i,r,M=0){this._revealLines(i,r,5,M)}_revealLines(i,r,M,N){if(typeof i!="number"||typeof r!="number")throw new Error("Invalid arguments");this._sendRevealRange(new He.a(i,1,r,1),M,!1,N)}revealRange(i,r=0,M=!1,N=!0){this._revealRange(i,M?1:0,N,r)}revealRangeInCenter(i,r=0){this._revealRange(i,1,!0,r)}revealRangeInCenterIfOutsideViewport(i,r=0){this._revealRange(i,2,!0,r)}revealRangeNearTop(i,r=0){this._revealRange(i,5,!0,r)}revealRangeNearTopIfOutsideViewport(i,r=0){this._revealRange(i,6,!0,r)}revealRangeAtTop(i,r=0){this._revealRange(i,3,!0,r)}_revealRange(i,r,M,N){if(!He.a.isIRange(i))throw new Error("Invalid arguments");this._sendRevealRange(He.a.lift(i),r,M,N)}setSelections(i,r="api",M=0){if(!this._modelData)return;if(!i||i.length===0)throw new Error("Invalid arguments");for(let N=0,$=i.length;N<$;N++)if(!m.a.isISelection(i[N]))throw new Error("Invalid arguments");this._modelData.viewModel.setSelections(r,i,M)}getContentWidth(){return this._modelData?this._modelData.viewModel.viewLayout.getContentWidth():-1}getScrollWidth(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollWidth():-1}getScrollLeft(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollLeft():-1}getContentHeight(){return this._modelData?this._modelData.viewModel.viewLayout.getContentHeight():-1}getScrollHeight(){return this._modelData?this._modelData.viewModel.viewLayout.getScrollHeight():-1}getScrollTop(){return this._modelData?this._modelData.viewModel.viewLayout.getCurrentScrollTop():-1}setScrollLeft(i,r=1){if(!this._modelData)return;if(typeof i!="number")throw new Error("Invalid arguments");this._modelData.viewModel.setScrollPosition({scrollLeft:i},r)}setScrollTop(i,r=1){if(!this._modelData)return;if(typeof i!="number")throw new Error("Invalid arguments");this._modelData.viewModel.setScrollPosition({scrollTop:i},r)}setScrollPosition(i,r=1){if(!this._modelData)return;this._modelData.viewModel.setScrollPosition(i,r)}saveViewState(){if(!this._modelData)return null;const i={},r=Object.keys(this._contributions);for(const $ of r){const pe=this._contributions[$];typeof pe.saveViewState=="function"&&(i[$]=pe.saveViewState())}const M=this._modelData.viewModel.saveCursorState(),N=this._modelData.viewModel.saveState();return{cursorState:M,viewState:N,contributionsState:i}}restoreViewState(i){if(!this._modelData||!this._modelData.hasRealView)return;const r=i;if(r&&r.cursorState&&r.viewState){const M=r.cursorState;Array.isArray(M)?this._modelData.viewModel.restoreCursorState(M):this._modelData.viewModel.restoreCursorState([M]);const N=r.contributionsState||{},$=Object.keys(this._contributions);for(let _e=0,Ke=$.length;_er.isSupported()),i}getAction(i){return this._actions[i]||null}trigger(i,r,M){M=M||{};switch(r){case"compositionStart":this._startComposition();return;case"compositionEnd":this._endComposition(i);return;case"type":{const $=M;this._type(i,$.text||"");return}case"replacePreviousChar":{const $=M;this._compositionType(i,$.text||"",$.replaceCharCnt||0,0,0);return}case"compositionType":{const $=M;this._compositionType(i,$.text||"",$.replacePrevCharCnt||0,$.replaceNextCharCnt||0,$.positionDelta||0);return}case"paste":{const $=M;this._paste(i,$.text||"",$.pasteOnNewLine||!1,$.multicursorText||null,$.mode||null);return}case"cut":this._cut(i);return}const N=this.getAction(r);if(N){Promise.resolve(N.run()).then(void 0,f.f);return}if(!this._modelData)return;if(this._triggerEditorCommand(i,r,M))return;this._triggerCommand(r,M)}_triggerCommand(i,r){this._commandService.executeCommand(i,r)}_startComposition(){if(!this._modelData)return;this._modelData.viewModel.startComposition(),this._onDidCompositionStart.fire()}_endComposition(i){if(!this._modelData)return;this._modelData.viewModel.endComposition(i),this._onDidCompositionEnd.fire()}_type(i,r){if(!this._modelData||r.length===0)return;i==="keyboard"&&this._onWillType.fire(r),this._modelData.viewModel.type(r,i),i==="keyboard"&&this._onDidType.fire(r)}_compositionType(i,r,M,N,$){if(!this._modelData)return;this._modelData.viewModel.compositionType(r,M,N,$,i)}_paste(i,r,M,N,$){if(!this._modelData||r.length===0)return;const pe=this._modelData.viewModel.getSelection().getStartPosition();this._modelData.viewModel.paste(r,M,N,i);const _e=this._modelData.viewModel.getSelection().getStartPosition();i==="keyboard"&&this._onDidPaste.fire({range:new He.a(pe.lineNumber,pe.column,_e.lineNumber,_e.column),languageId:$})}_cut(i){if(!this._modelData)return;this._modelData.viewModel.cut(i)}_triggerEditorCommand(i,r,M){const N=P.d.getEditorCommand(r);return N?(M=M||{},M.source=i,this._instantiationService.invokeFunction($=>{Promise.resolve(N.runEditorCommand($,this,M)).then(void 0,f.f)}),!0):!1}_getViewModel(){return this._modelData?this._modelData.viewModel:null}pushUndoStop(){return this._modelData?this._configuration.options.get(80)?!1:(this._modelData.model.pushStackElement(),!0):!1}popUndoStop(){return this._modelData?this._configuration.options.get(80)?!1:(this._modelData.model.popStackElement(),!0):!1}executeEdits(i,r,M){if(!this._modelData)return!1;if(this._configuration.options.get(80))return!1;let N;return M?Array.isArray(M)?N=()=>M:N=M:N=()=>null,this._modelData.viewModel.executeEdits(i,r,N),!0}executeCommand(i,r){if(!this._modelData)return;this._modelData.viewModel.executeCommand(r,i)}executeCommands(i,r){if(!this._modelData)return;this._modelData.viewModel.executeCommands(r,i)}changeDecorations(i){return this._modelData?this._modelData.model.changeDecorations(i,this._id):null}getLineDecorations(i){return this._modelData?this._modelData.model.getLineDecorations(i,this._id,Object(Oe.n)(this._configuration.options)):null}deltaDecorations(i,r){return this._modelData?i.length===0&&r.length===0?i:this._modelData.model.deltaDecorations(i,r,this._id):[]}removeDecorations(i){const r=this._decorationTypeKeysToIds[i];r&&this.deltaDecorations(r,[]),this._decorationTypeKeysToIds.hasOwnProperty(i)&&delete this._decorationTypeKeysToIds[i],this._decorationTypeSubtypes.hasOwnProperty(i)&&delete this._decorationTypeSubtypes[i]}getLayoutInfo(){const i=this._configuration.options,r=i.get(129);return r}createOverviewRuler(i){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.createOverviewRuler(i)}getContainerDomNode(){return this._domElement}getDomNode(){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.domNode.domNode}delegateVerticalScrollbarMouseDown(i){if(!this._modelData||!this._modelData.hasRealView)return;this._modelData.view.delegateVerticalScrollbarMouseDown(i)}layout(i){this._configuration.observeReferenceElement(i),this.render()}focus(){if(!this._modelData||!this._modelData.hasRealView)return;this._modelData.view.focus()}hasTextFocus(){return!this._modelData||!this._modelData.hasRealView?!1:this._modelData.view.isFocused()}hasWidgetFocus(){return this._focusTracker&&this._focusTracker.hasFocus()}addContentWidget(i){const r={widget:i,position:i.getPosition()};this._contentWidgets.hasOwnProperty(i.getId())&&console.warn("Overwriting a content widget with the same id."),this._contentWidgets[i.getId()]=r,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addContentWidget(r)}layoutContentWidget(i){const r=i.getId();if(this._contentWidgets.hasOwnProperty(r)){const M=this._contentWidgets[r];M.position=i.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutContentWidget(M)}}removeContentWidget(i){const r=i.getId();if(this._contentWidgets.hasOwnProperty(r)){const M=this._contentWidgets[r];delete this._contentWidgets[r],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeContentWidget(M)}}addOverlayWidget(i){const r={widget:i,position:i.getPosition()};this._overlayWidgets.hasOwnProperty(i.getId())&&console.warn("Overwriting an overlay widget with the same id."),this._overlayWidgets[i.getId()]=r,this._modelData&&this._modelData.hasRealView&&this._modelData.view.addOverlayWidget(r)}layoutOverlayWidget(i){const r=i.getId();if(this._overlayWidgets.hasOwnProperty(r)){const M=this._overlayWidgets[r];M.position=i.getPosition(),this._modelData&&this._modelData.hasRealView&&this._modelData.view.layoutOverlayWidget(M)}}removeOverlayWidget(i){const r=i.getId();if(this._overlayWidgets.hasOwnProperty(r)){const M=this._overlayWidgets[r];delete this._overlayWidgets[r],this._modelData&&this._modelData.hasRealView&&this._modelData.view.removeOverlayWidget(M)}}changeViewZones(i){if(!this._modelData||!this._modelData.hasRealView)return;this._modelData.view.change(i)}getTargetAtClientPoint(i,r){return!this._modelData||!this._modelData.hasRealView?null:this._modelData.view.getTargetAtClientPoint(i,r)}getScrolledVisiblePosition(i){if(!this._modelData||!this._modelData.hasRealView)return null;const r=this._modelData.model.validatePosition(i),M=this._configuration.options,N=M.get(129),$=o._getVerticalOffsetForPosition(this._modelData,r.lineNumber,r.column)-this.getScrollTop(),pe=this._modelData.view.getOffsetForColumn(r.lineNumber,r.column)+N.glyphMarginWidth+N.lineNumbersWidth+N.decorationsWidth-this.getScrollLeft();return{top:$,left:pe,height:M.get(58)}}getOffsetForColumn(i,r){return!this._modelData||!this._modelData.hasRealView?-1:this._modelData.view.getOffsetForColumn(i,r)}render(i=!1){if(!this._modelData||!this._modelData.hasRealView)return;this._modelData.view.render(!0,i)}setAriaOptions(i){if(!this._modelData||!this._modelData.hasRealView)return;this._modelData.view.setAriaOptions(i)}applyFontInfo(i){p.a.applyFontInfoSlow(i,this._configuration.options.get(43))}_attachModel(i){if(!i){this._modelData=null;return}const r=[];this._domElement.setAttribute("data-mode-id",i.getLanguageId()),this._configuration.setIsDominatedByLongLines(i.isDominatedByLongLines()),this._configuration.setMaxLineNumber(i.getLineCount()),i.onBeforeAttached();const M=new $s(this._id,this._configuration,i,qs.create(),Zs.create(this._configuration.options),pe=>S.V(pe));r.push(i.onDidChangeDecorations(pe=>this._onDidChangeModelDecorations.fire(pe))),r.push(i.onDidChangeLanguage(pe=>{this._domElement.setAttribute("data-mode-id",i.getLanguageId()),this._onDidChangeModelLanguage.fire(pe)})),r.push(i.onDidChangeLanguageConfiguration(pe=>this._onDidChangeModelLanguageConfiguration.fire(pe))),r.push(i.onDidChangeContent(pe=>this._onDidChangeModelContent.fire(pe))),r.push(i.onDidChangeOptions(pe=>this._onDidChangeModelOptions.fire(pe))),r.push(i.onWillDispose(()=>this.setModel(null))),r.push(M.onEvent(pe=>{switch(pe.kind){case 0:this._onDidContentSizeChange.fire(pe);break;case 1:this._editorTextFocus.setValue(pe.hasFocus);break;case 2:this._onDidScrollChange.fire(pe);break;case 3:this._onDidChangeViewZones.fire();break;case 4:this._onDidChangeHiddenAreas.fire();break;case 5:this._onDidAttemptReadOnlyEdit.fire();break;case 6:{pe.reachedMaxCursorCount&&this._notificationService.warn(O.a("cursors.maximum","The number of cursors has been limited to {0}.",xn.MAX_CURSOR_COUNT));const _e=[];for(let at=0,jt=pe.selections.length;at{this._paste("keyboard",$,pe,_e,Ke)},type:$=>{this._type("keyboard",$)},compositionType:($,pe,_e,Ke)=>{this._compositionType("keyboard",$,pe,_e,Ke)},startComposition:()=>{this._startComposition()},endComposition:()=>{this._endComposition("keyboard")},cut:()=>{this._cut("keyboard")}}:r={paste:($,pe,_e,Ke)=>{const Je={text:$,pasteOnNewLine:pe,multicursorText:_e,mode:Ke};this._commandService.executeCommand("paste",Je)},type:$=>{const pe={text:$};this._commandService.executeCommand("type",pe)},compositionType:($,pe,_e,Ke)=>{if(_e||Ke){const Je={text:$,replacePrevCharCnt:pe,replaceNextCharCnt:_e,positionDelta:Ke};this._commandService.executeCommand("compositionType",Je)}else{const Je={text:$,replaceCharCnt:pe};this._commandService.executeCommand("replacePreviousChar",Je)}},startComposition:()=>{this._commandService.executeCommand("compositionStart",{})},endComposition:()=>{this._commandService.executeCommand("compositionEnd",{})},cut:()=>{this._commandService.executeCommand("cut",{})}};const M=new Re(i.coordinatesConverter);M.onKeyDown=$=>this._onKeyDown.fire($),M.onKeyUp=$=>this._onKeyUp.fire($),M.onContextMenu=$=>this._onContextMenu.fire($),M.onMouseMove=$=>this._onMouseMove.fire($),M.onMouseLeave=$=>this._onMouseLeave.fire($),M.onMouseDown=$=>this._onMouseDown.fire($),M.onMouseUp=$=>this._onMouseUp.fire($),M.onMouseDrag=$=>this._onMouseDrag.fire($),M.onMouseDrop=$=>this._onMouseDrop.fire($),M.onMouseDropCanceled=$=>this._onMouseDropCanceled.fire($),M.onMouseWheel=$=>this._onMouseWheel.fire($);const N=new Rt(r,this._configuration,this._themeService,i,M,this._overflowWidgetsDomNode);return[N,!0]}_postDetachModelCleanup(i){i&&i.removeAllDecorationsWithOwnerId(this._id)}_detachModel(){if(!this._modelData)return null;const i=this._modelData.model,r=this._modelData.hasRealView?this._modelData.view.domNode.domNode:null;return this._modelData.dispose(),this._modelData=null,this._domElement.removeAttribute("data-mode-id"),r&&this._domElement.contains(r)&&this._domElement.removeChild(r),i}_removeDecorationType(i){this._codeEditorService.removeDecorationType(i)}hasModel(){return this._modelData!==null}};Nn=Or([Un(3,_r.a),Un(4,n.a),Un(5,cs.b),Un(6,An.b),Un(7,Mt.b),Un(8,Ys.a),Un(9,hs.b)],Nn);class er extends d.a{constructor(){super();this._onDidChangeToTrue=this._register(new u.b),this.onDidChangeToTrue=this._onDidChangeToTrue.event,this._onDidChangeToFalse=this._register(new u.b),this.onDidChangeToFalse=this._onDidChangeToFalse.event,this._value=0}setValue(o){const i=o?2:1;if(this._value===i)return;this._value=i,this._value===2?this._onDidChangeToTrue.fire():this._value===1&&this._onDidChangeToFalse.fire()}}class Ir extends d.a{constructor(o,i){super();this._editor=o,i.createKey("editorId",o.getId()),this._editorSimpleInput=Ti.a.editorSimpleInput.bindTo(i),this._editorFocus=Ti.a.focus.bindTo(i),this._textInputFocus=Ti.a.textInputFocus.bindTo(i),this._editorTextFocus=Ti.a.editorTextFocus.bindTo(i),this._editorTabMovesFocus=Ti.a.tabMovesFocus.bindTo(i),this._editorReadonly=Ti.a.readOnly.bindTo(i),this._inDiffEditor=Ti.a.inDiffEditor.bindTo(i),this._editorColumnSelection=Ti.a.columnSelection.bindTo(i),this._hasMultipleSelections=Ti.a.hasMultipleSelections.bindTo(i),this._hasNonEmptySelection=Ti.a.hasNonEmptySelection.bindTo(i),this._canUndo=Ti.a.canUndo.bindTo(i),this._canRedo=Ti.a.canRedo.bindTo(i),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 o=this._editor.getOptions();this._editorTabMovesFocus.set(o.get(128)),this._editorReadonly.set(o.get(80)),this._inDiffEditor.set(o.get(53)),this._editorColumnSelection.set(o.get(18))}_updateFromSelection(){const o=this._editor.getSelections();o?(this._hasMultipleSelections.set(o.length>1),this._hasNonEmptySelection.set(o.some(i=>!i.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 o=this._editor.getModel();this._canUndo.set(Boolean(o&&o.canUndo())),this._canRedo.set(Boolean(o&&o.canRedo()))}}class tr extends d.a{constructor(o,i){super();this._editor=o,this._contextKeyService=i,this._langId=Ti.a.languageId.bindTo(i),this._hasCompletionItemProvider=Ti.a.hasCompletionItemProvider.bindTo(i),this._hasCodeActionsProvider=Ti.a.hasCodeActionsProvider.bindTo(i),this._hasCodeLensProvider=Ti.a.hasCodeLensProvider.bindTo(i),this._hasDefinitionProvider=Ti.a.hasDefinitionProvider.bindTo(i),this._hasDeclarationProvider=Ti.a.hasDeclarationProvider.bindTo(i),this._hasImplementationProvider=Ti.a.hasImplementationProvider.bindTo(i),this._hasTypeDefinitionProvider=Ti.a.hasTypeDefinitionProvider.bindTo(i),this._hasHoverProvider=Ti.a.hasHoverProvider.bindTo(i),this._hasDocumentHighlightProvider=Ti.a.hasDocumentHighlightProvider.bindTo(i),this._hasDocumentSymbolProvider=Ti.a.hasDocumentSymbolProvider.bindTo(i),this._hasReferenceProvider=Ti.a.hasReferenceProvider.bindTo(i),this._hasRenameProvider=Ti.a.hasRenameProvider.bindTo(i),this._hasSignatureHelpProvider=Ti.a.hasSignatureHelpProvider.bindTo(i),this._hasInlayHintsProvider=Ti.a.hasInlayHintsProvider.bindTo(i),this._hasDocumentFormattingProvider=Ti.a.hasDocumentFormattingProvider.bindTo(i),this._hasDocumentSelectionFormattingProvider=Ti.a.hasDocumentSelectionFormattingProvider.bindTo(i),this._hasMultipleDocumentFormattingProvider=Ti.a.hasMultipleDocumentFormattingProvider.bindTo(i),this._hasMultipleDocumentSelectionFormattingProvider=Ti.a.hasMultipleDocumentSelectionFormattingProvider.bindTo(i),this._isInWalkThrough=Ti.a.isInWalkThroughSnippet.bindTo(i);const r=()=>this._update();this._register(o.onDidChangeModel(r)),this._register(o.onDidChangeModelLanguage(r)),this._register(Yt.d.onDidChange(r)),this._register(Yt.a.onDidChange(r)),this._register(Yt.b.onDidChange(r)),this._register(Yt.f.onDidChange(r)),this._register(Yt.e.onDidChange(r)),this._register(Yt.q.onDidChange(r)),this._register(Yt.G.onDidChange(r)),this._register(Yt.p.onDidChange(r)),this._register(Yt.i.onDidChange(r)),this._register(Yt.m.onDidChange(r)),this._register(Yt.y.onDidChange(r)),this._register(Yt.z.onDidChange(r)),this._register(Yt.g.onDidChange(r)),this._register(Yt.j.onDidChange(r)),this._register(Yt.B.onDidChange(r)),this._register(Yt.s.onDidChange(r)),r()}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 o=this._editor.getModel();if(!o){this.reset();return}this._contextKeyService.bufferChangeEvents(()=>{this._langId.set(o.getLanguageId()),this._hasCompletionItemProvider.set(Yt.d.has(o)),this._hasCodeActionsProvider.set(Yt.a.has(o)),this._hasCodeLensProvider.set(Yt.b.has(o)),this._hasDefinitionProvider.set(Yt.f.has(o)),this._hasDeclarationProvider.set(Yt.e.has(o)),this._hasImplementationProvider.set(Yt.q.has(o)),this._hasTypeDefinitionProvider.set(Yt.G.has(o)),this._hasHoverProvider.set(Yt.p.has(o)),this._hasDocumentHighlightProvider.set(Yt.i.has(o)),this._hasDocumentSymbolProvider.set(Yt.m.has(o)),this._hasReferenceProvider.set(Yt.y.has(o)),this._hasRenameProvider.set(Yt.z.has(o)),this._hasSignatureHelpProvider.set(Yt.B.has(o)),this._hasInlayHintsProvider.set(Yt.s.has(o)),this._hasDocumentFormattingProvider.set(Yt.g.has(o)||Yt.j.has(o)),this._hasDocumentSelectionFormattingProvider.set(Yt.j.has(o)),this._hasMultipleDocumentFormattingProvider.set(Yt.g.all(o).length+Yt.j.all(o).length>1),this._hasMultipleDocumentSelectionFormattingProvider.set(Yt.j.all(o).length>1),this._isInWalkThrough.set(o.uri.scheme===E.c.walkThroughSnippet)})}}class ps extends d.a{constructor(o){super();this._onChange=this._register(new u.b),this.onChange=this._onChange.event,this._hasFocus=!1,this._domFocusTracker=this._register(S.Y(o)),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}}const ks=encodeURIComponent("");function Fs(o){return ks+encodeURIComponent(o.toString())+Ps}const $n=encodeURIComponent('');function Rr(o){return $n+encodeURIComponent(o.toString())+Ar}Object(Mt.f)((o,i)=>{const r=o.getColor(ni.t);r&&i.addRule(`.monaco-editor .squiggly-error { border-bottom: 4px double ${r}; }`);const M=o.getColor(ni.u);M&&i.addRule(`.monaco-editor .squiggly-error { background: url("data:image/svg+xml,${Fs(M)}") repeat-x bottom left; }`);const N=o.getColor(ni.s);N&&i.addRule(`.monaco-editor .squiggly-error::before { display: block; content: ''; width: 100%; height: 100%; background: ${N}; }`);const $=o.getColor(ni.ab);$&&i.addRule(`.monaco-editor .squiggly-warning { border-bottom: 4px double ${$}; }`);const pe=o.getColor(ni.bb);pe&&i.addRule(`.monaco-editor .squiggly-warning { background: url("data:image/svg+xml,${Fs(pe)}") repeat-x bottom left; }`);const _e=o.getColor(ni.Z);_e&&i.addRule(`.monaco-editor .squiggly-warning::before { display: block; content: ''; width: 100%; height: 100%; background: ${_e}; }`);const Ke=o.getColor(ni.L);Ke&&i.addRule(`.monaco-editor .squiggly-info { border-bottom: 4px double ${Ke}; }`);const Je=o.getColor(ni.M);Je&&i.addRule(`.monaco-editor .squiggly-info { background: url("data:image/svg+xml,${Fs(Je)}") repeat-x bottom left; }`);const at=o.getColor(ni.K);at&&i.addRule(`.monaco-editor .squiggly-info::before { display: block; content: ''; width: 100%; height: 100%; background: ${at}; }`);const jt=o.getColor(ni.C);jt&&i.addRule(`.monaco-editor .squiggly-hint { border-bottom: 2px dotted ${jt}; }`);const _t=o.getColor(ni.D);_t&&i.addRule(`.monaco-editor .squiggly-hint { background: url("data:image/svg+xml,${Rr(_t)}") no-repeat bottom left; }`);const Ht=o.getColor(Ye.I);Ht&&i.addRule(`.monaco-editor.showUnused .squiggly-inline-unnecessary { opacity: ${Ht.rgba.a}; }`);const Jt=o.getColor(Ye.H);Jt&&i.addRule(`.monaco-editor.showUnused .squiggly-unnecessary { border-bottom: 2px dashed ${Jt}; }`);const so=o.getColor(ni.B)||"inherit";i.addRule(`.monaco-editor.showDeprecated .squiggly-inline-deprecated { text-decoration: line-through; text-decoration-color: ${so}}`)})},nD70:function(ft,w,e){"use strict";e.d(w,"a",function(){return h}),e.d(w,"b",function(){return P});class h{constructor(L){this._prefix=L,this._lastId=0}nextId(){return this._prefix+ ++this._lastId}}const P=new h("id#")},nlbu:function(ft,w,e){"use strict";e.d(w,"b",function(){return h}),e.d(w,"d",function(){return P}),e.d(w,"c",function(){return L}),e.d(w,"a",function(){return I});class h{constructor(k){this.value=k}equals(k){return this.value===k.value}contains(k){return this.equals(k)||this.value===""||k.value.startsWith(this.value+h.sep)}intersects(k){return this.contains(k)||k.contains(this)}append(k){return new h(this.value+h.sep+k)}}h.sep=".",h.None=new h("@@none@@"),h.Empty=new h(""),h.QuickFix=new h("quickfix"),h.Refactor=new h("refactor"),h.Source=new h("source"),h.SourceOrganizeImports=h.Source.append("organizeImports"),h.SourceFixAll=h.Source.append("fixAll");function P(k,O){return k.include&&!k.include.intersects(O)||k.excludes&&k.excludes.some(S=>A(O,S,k.include))?!1:!(!k.includeSourceActions&&h.Source.contains(O))}function L(k,O){const S=O.kind?new h(O.kind):void 0;return k.include&&(!S||!k.include.contains(S))||(k.excludes&&(S&&k.excludes.some(f=>A(S,f,k.include)))||!k.includeSourceActions&&(S&&h.Source.contains(S)))?!1:!(k.onlyIncludePreferredActions&&!O.isPreferred)}function A(k,O,S){return O.contains(k)?!(S&&O.contains(S)):!1}class I{constructor(k,O,S){this.kind=k,this.apply=O,this.preferred=S}static fromUser(k,O){return!k||typeof k!="object"?new I(O.kind,O.apply,!1):new I(I.getKindFromUser(k,O.kind),I.getApplyFromUser(k,O.apply),I.getPreferredUser(k))}static getApplyFromUser(k,O){switch(typeof k.apply=="string"?k.apply.toLowerCase():""){case"first":return"first";case"never":return"never";case"ifsingle":return"ifSingle";default:return O}}static getKindFromUser(k,O){return typeof k.kind=="string"?new h(k.kind):O}static getPreferredUser(k){return typeof k.preferred=="boolean"?k.preferred:!1}}},nrBJ:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"vb",extensions:[".vb"],aliases:["Visual Basic","vb"],loader:function(){return e.e(391).then(e.bind(null,"eXtt"))}})},nrhi:function(ft,w,e){"use strict";e.d(w,"a",function(){return k});var h=e("Szf2"),P=e("MNsG"),L=e("nnTU"),A=e("ic2d");class I{constructor(){this._coreKeybindings=[],this._extensionKeybindings=[],this._cachedMergedKeybindings=null}static bindToCurrentPlatform(f){if(P.a===1){if(f&&f.win)return f.win}else if(P.a===2){if(f&&f.mac)return f.mac}else if(f&&f.linux)return f.linux;return f}registerKeybindingRule(f){const u=I.bindToCurrentPlatform(f);if(u&&u.primary){const d=Object(h.e)(u.primary,P.a);d&&this._registerDefaultKeybinding(d,f.id,f.args,f.weight,0,f.when)}if(u&&Array.isArray(u.secondary))for(let d=0,E=u.secondary.length;d=21&&f<=30||f>=31&&f<=56?!0:f===80||f===81||f===82||f===83||f===84||f===85||f===86||f===110||f===111||f===87||f===88||f===89||f===90||f===91||f===92}_assertNoCtrlAlt(f,u){f.ctrlKey&&f.altKey&&!f.metaKey&&(I._mightProduceChar(f.keyCode)&&console.warn("Ctrl+Alt+ keybindings should not be used by default under Windows. Offender: ",f," for ",u))}_registerDefaultKeybinding(f,u,d,E,p,n){P.a===1&&this._assertNoCtrlAlt(f.parts[0],u),this._coreKeybindings.push({keybinding:f.parts,command:u,commandArgs:d,when:n,weight1:E,weight2:p,extensionId:null,isBuiltinExtension:!1}),this._cachedMergedKeybindings=null}getDefaultKeybindings(){return this._cachedMergedKeybindings||(this._cachedMergedKeybindings=[].concat(this._coreKeybindings).concat(this._extensionKeybindings),this._cachedMergedKeybindings.sort(S)),this._cachedMergedKeybindings.slice(0)}}const k=new I,O={EditorModes:"platform.keybindingsRegistry"};A.a.add(O.EditorModes,k);function S(f,u){return f.weight1!==u.weight1?f.weight1-u.weight1:f.commandu.command?1:f.weight2-u.weight2}},nuFA:function(ft,w,e){"use strict";e.d(w,"a",function(){return h});var h;(function(P){function L(O,S){if(O.start>=S.end||S.start>=O.end)return{start:0,end:0};const f=Math.max(O.start,S.start),u=Math.min(O.end,S.end);return u-f<=0?{start:0,end:0}:{start:f,end:u}}P.intersect=L;function A(O){return O.end-O.start<=0}P.isEmpty=A;function I(O,S){return!A(L(O,S))}P.intersects=I;function k(O,S){const f=[],u={start:O.start,end:Math.min(S.start,O.end)},d={start:Math.max(S.end,O.start),end:O.end};return A(u)||f.push(u),A(d)||f.push(d),f}P.relativeComplement=k})(h||(h={}))},o39E:function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("pmY6");class P extends h.a{constructor(L,A,I){super();this.referenceDomElement=L,this.changeCallback=I,this.width=-1,this.height=-1,this.resizeObserver=null,this.measureReferenceDomElementToken=-1,this.measureReferenceDomElement(!1,A)}dispose(){this.stopObserving(),super.dispose()}getWidth(){return this.width}getHeight(){return this.height}startObserving(){typeof ResizeObserver!="undefined"?!this.resizeObserver&&this.referenceDomElement&&(this.resizeObserver=new ResizeObserver(L=>{L&&L[0]&&L[0].contentRect?this.observe({width:L[0].contentRect.width,height:L[0].contentRect.height}):this.observe()}),this.resizeObserver.observe(this.referenceDomElement)):this.measureReferenceDomElementToken===-1&&(this.measureReferenceDomElementToken=setInterval(()=>this.observe(),100))}stopObserving(){this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null),this.measureReferenceDomElementToken!==-1&&(clearInterval(this.measureReferenceDomElementToken),this.measureReferenceDomElementToken=-1)}observe(L){this.measureReferenceDomElement(!0,L)}measureReferenceDomElement(L,A){let I=0,k=0;A?(I=A.width,k=A.height):this.referenceDomElement&&(I=this.referenceDomElement.clientWidth,k=this.referenceDomElement.clientHeight),I=Math.max(5,I),k=Math.max(5,k),(this.width!==I||this.height!==k)&&(this.width=I,this.height=k,L&&this.changeCallback())}}},oAeH:function(ft,w,e){"use strict";e.d(w,"b",function(){return O}),e.d(w,"a",function(){return S});var h=e("746U"),P=e("Ll0s"),L=e("+Fos"),A=e("1I1M"),I=e("cGHE"),k=e("aokT");class O{static addCursorDown(f,u,d){let E=[],p=0;for(let n=0,b=u.length;nc&&(l=c,g=f.model.getLineMaxColumn(l)),P.d.fromModelState(new P.f(new k.a(n.lineNumber,1,l,g),0,new I.a(l,g),0))}const m=u.modelState.selectionStart.getStartPosition().lineNumber;if(n.lineNumberm){const c=f.getLineCount();let l=b.lineNumber+1,g=1;return l>c&&(l=c,g=f.getLineMaxColumn(l)),P.d.fromViewState(u.viewState.move(u.modelState.hasSelection(),l,g,0))}else{const c=u.modelState.selectionStart.getEndPosition();return P.d.fromModelState(u.modelState.move(u.modelState.hasSelection(),c.lineNumber,c.column,0))}}static word(f,u,d,E){const p=f.model.validatePosition(E);return P.d.fromModelState(A.a.word(f.cursorConfig,f.model,u.modelState,d,p))}static cancelSelection(f,u){if(!u.modelState.hasSelection())return new P.d(u.modelState,u.viewState);const d=u.viewState.position.lineNumber,E=u.viewState.position.column;return P.d.fromViewState(new P.f(new k.a(d,E,d,E),0,new I.a(d,E),0))}static moveTo(f,u,d,E,p){const n=f.model.validatePosition(E),b=p?f.coordinatesConverter.validateViewPosition(new I.a(p.lineNumber,p.column),n):f.coordinatesConverter.convertModelPositionToViewPosition(n);return P.d.fromViewState(u.viewState.move(d,b.lineNumber,b.column,0))}static simpleMove(f,u,d,E,p,n){switch(d){case 0:return n===4?this._moveHalfLineLeft(f,u,E):this._moveLeft(f,u,E,p);case 1:return n===4?this._moveHalfLineRight(f,u,E):this._moveRight(f,u,E,p);case 2:return n===2?this._moveUpByViewLines(f,u,E,p):this._moveUpByModelLines(f,u,E,p);case 3:return n===2?this._moveDownByViewLines(f,u,E,p):this._moveDownByModelLines(f,u,E,p);case 4:return n===2?u.map(b=>P.d.fromViewState(L.a.moveToPrevBlankLine(f.cursorConfig,f,b.viewState,E))):u.map(b=>P.d.fromModelState(L.a.moveToPrevBlankLine(f.cursorConfig,f.model,b.modelState,E)));case 5:return n===2?u.map(b=>P.d.fromViewState(L.a.moveToNextBlankLine(f.cursorConfig,f,b.viewState,E))):u.map(b=>P.d.fromModelState(L.a.moveToNextBlankLine(f.cursorConfig,f.model,b.modelState,E)));case 6:return this._moveToViewMinColumn(f,u,E);case 7:return this._moveToViewFirstNonWhitespaceColumn(f,u,E);case 8:return this._moveToViewCenterColumn(f,u,E);case 9:return this._moveToViewMaxColumn(f,u,E);case 10:return this._moveToViewLastNonWhitespaceColumn(f,u,E);default:return null}}static viewportMove(f,u,d,E,p){const n=f.getCompletelyVisibleViewRange(),b=f.coordinatesConverter.convertViewRangeToModelRange(n);switch(d){case 11:{const m=this._firstLineNumberInRange(f.model,b,p),c=f.model.getLineFirstNonWhitespaceColumn(m);return[this._moveToModelPosition(f,u[0],E,m,c)]}case 13:{const m=this._lastLineNumberInRange(f.model,b,p),c=f.model.getLineFirstNonWhitespaceColumn(m);return[this._moveToModelPosition(f,u[0],E,m,c)]}case 12:{const m=Math.round((b.startLineNumber+b.endLineNumber)/2),c=f.model.getLineFirstNonWhitespaceColumn(m);return[this._moveToModelPosition(f,u[0],E,m,c)]}case 14:{let m=[];for(let c=0,l=u.length;cd.endLineNumber-1?n=d.endLineNumber-1:pP.d.fromViewState(L.a.moveLeft(f.cursorConfig,f,p.viewState,d,E)))}static _moveHalfLineLeft(f,u,d){let E=[];for(let p=0,n=u.length;pP.d.fromViewState(L.a.moveRight(f.cursorConfig,f,p.viewState,d,E)))}static _moveHalfLineRight(f,u,d){let E=[];for(let p=0,n=u.length;p0&&(this.changes=Object(I.b)(this.changes,m)),this.afterEOL=c,this.afterVersionId=l,this.afterCursorState=g}static _writeSelectionsSize(b){return 4+4*4*(b?b.length:0)}static _writeSelections(b,m,c){if(k.f(b,m?m.length:0,c),c+=4,m)for(const l of m)k.f(b,l.selectionStartLineNumber,c),c+=4,k.f(b,l.selectionStartColumn,c),c+=4,k.f(b,l.positionLineNumber,c),c+=4,k.f(b,l.positionColumn,c),c+=4;return c}static _readSelections(b,m,c){const l=k.c(b,m);m+=4;for(let g=0;gm.toString()).join(", ")}matchesResource(b){const m=A.a.isUri(this.model)?this.model:this.model.uri;return m.toString()===b.toString()}setModel(b){this.model=b}canAppend(b){return this.model===b&&this._data instanceof f}append(b,m,c,l,g){this._data instanceof f&&this._data.append(b,m,c,l,g)}close(){this._data instanceof f&&(this._data=this._data.serialize())}open(){this._data instanceof f||(this._data=f.deserialize(this._data))}undo(){if(A.a.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof f&&(this._data=this._data.serialize());const b=f.deserialize(this._data);this.model._applyUndo(b.changes,b.beforeEOL,b.beforeVersionId,b.beforeCursorState)}redo(){if(A.a.isUri(this.model))throw new Error("Invalid SingleModelEditStackElement");this._data instanceof f&&(this._data=this._data.serialize());const b=f.deserialize(this._data);this.model._applyRedo(b.changes,b.afterEOL,b.afterVersionId,b.afterCursorState)}heapSize(){return this._data instanceof f&&(this._data=this._data.serialize()),this._data.byteLength+168}}class d{constructor(b,m){this.type=1,this.label=b,this._isOpen=!0,this._editStackElementsArr=m.slice(0),this._editStackElementsMap=new Map;for(const c of this._editStackElementsArr){const l=S(c.resource);this._editStackElementsMap.set(l,c)}this._delegate=null}get resources(){return this._editStackElementsArr.map(b=>b.resource)}prepareUndoRedo(){if(this._delegate)return this._delegate.prepareUndoRedo(this)}matchesResource(b){const m=S(b);return this._editStackElementsMap.has(m)}setModel(b){const m=S(A.a.isUri(b)?b:b.uri);this._editStackElementsMap.has(m)&&this._editStackElementsMap.get(m).setModel(b)}canAppend(b){if(!this._isOpen)return!1;const m=S(b.uri);if(this._editStackElementsMap.has(m)){const c=this._editStackElementsMap.get(m);return c.canAppend(b)}return!1}append(b,m,c,l,g){const y=S(b.uri),C=this._editStackElementsMap.get(y);C.append(b,m,c,l,g)}close(){this._isOpen=!1}open(){}undo(){this._isOpen=!1;for(const b of this._editStackElementsArr)b.undo()}redo(){for(const b of this._editStackElementsArr)b.redo()}heapSize(b){const m=S(b);if(this._editStackElementsMap.has(m)){const c=this._editStackElementsMap.get(m);return c.heapSize()}return 0}split(){return this._editStackElementsArr}toString(){let b=[];for(const m of this._editStackElementsArr)b.push(`${Object(O.b)(m.resource)}: ${m}`);return`{${b.join(", ")}}`}}function E(b){const m=b.getEOL();return m===` `?0:1}function p(b){return b?b instanceof u||b instanceof d:!1}class n{constructor(b,m){this._model=b,this._undoRedoService=m}pushStackElement(){const b=this._undoRedoService.getLastElement(this._model.uri);p(b)&&b.close()}popStackElement(){const b=this._undoRedoService.getLastElement(this._model.uri);p(b)&&b.open()}clear(){this._undoRedoService.removeElements(this._model.uri)}_getOrCreateEditStackElement(b){const m=this._undoRedoService.getLastElement(this._model.uri);if(p(m)&&m.canAppend(this._model))return m;const c=new u(this._model,b);return this._undoRedoService.pushElement(c),c}pushEOL(b){const m=this._getOrCreateEditStackElement(null);this._model.setEOL(b),m.append(this._model,[],E(this._model),this._model.getAlternativeVersionId(),null)}pushEditOperation(b,m,c){const l=this._getOrCreateEditStackElement(b),g=this._model.applyEdits(m,!0),y=n._computeCursorState(c,g),C=g.map((v,D)=>({index:D,textChange:v.textChange}));return C.sort((v,D)=>v.textChange.oldPosition===D.textChange.oldPosition?v.index-D.index:v.textChange.oldPosition-D.textChange.oldPosition),l.append(this._model,C.map(v=>v.textChange),E(this._model),this._model.getAlternativeVersionId(),y),y}static _computeCursorState(b,m){try{return b?b(m):null}catch(c){return Object(P.f)(c),null}}}},oKJv:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"pgsql",extensions:[],aliases:["PostgreSQL","postgres","pg","postgre"],loader:function(){return e.e(360).then(e.bind(null,"HGU1"))}})},oQaD:function(ft,w,e){"use strict";e.r(w),e.d(w,"getSelectionSearchString",function(){return Yi}),e.d(w,"CommonFindController",function(){return bi}),e.d(w,"FindController",function(){return Pi}),e.d(w,"StartFindAction",function(){return Ii}),e.d(w,"StartFindWithSelectionAction",function(){return Si}),e.d(w,"MatchFindAction",function(){return Xi}),e.d(w,"NextMatchFindAction",function(){return Ci}),e.d(w,"PreviousMatchFindAction",function(){return rn}),e.d(w,"SelectionMatchFindAction",function(){return on}),e.d(w,"NextSelectionMatchFindAction",function(){return Fi}),e.d(w,"PreviousSelectionMatchFindAction",function(){return Bi}),e.d(w,"StartFindReplaceAction",function(){return vt});var h=e("X+cX"),P=e("pmY6"),L=e("N0LK"),A=e("sswD"),I=e("wQH0"),k=e("6OMU"),O=e("LCkn"),S=e("cGHE"),f=e("aokT"),u=e("gCVg"),d=e("jAJ/"),E=e("M1Kb"),p=e("tX9W"),n=e("MD5Z"),b=e("t9D7");class m{constructor(X){this._editor=X,this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null,this._startPosition=this._editor.getPosition()}dispose(){this._editor.deltaDecorations(this._allDecorations(),[]),this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null}reset(){this._decorations=[],this._overviewRulerApproximateDecorations=[],this._findScopeDecorationIds=[],this._rangeHighlightDecorationId=null,this._highlightedDecorationId=null}getCount(){return this._decorations.length}getFindScope(){return this._findScopeDecorationIds[0]?this._editor.getModel().getDecorationRange(this._findScopeDecorationIds[0]):null}getFindScopes(){if(this._findScopeDecorationIds.length){const X=this._findScopeDecorationIds.map(Ee=>this._editor.getModel().getDecorationRange(Ee)).filter(Ee=>!!Ee);if(X.length)return X}return null}getStartPosition(){return this._startPosition}setStartPosition(X){this._startPosition=X,this.setCurrentFindMatch(null)}_getDecorationIndex(X){const Ee=this._decorations.indexOf(X);return Ee>=0?Ee+1:1}getCurrentMatchesPosition(X){let Ee=this._editor.getModel().getDecorationsInRange(X);for(const ke of Ee){const Ve=ke.options;if(Ve===m._FIND_MATCH_DECORATION||Ve===m._CURRENT_FIND_MATCH_DECORATION)return this._getDecorationIndex(ke.id)}return 0}setCurrentFindMatch(X){let Ee=null,ke=0;if(X)for(let Ve=0,ct=this._decorations.length;Ve{if(this._highlightedDecorationId!==null&&(Ve.changeDecorationOptions(this._highlightedDecorationId,m._FIND_MATCH_DECORATION),this._highlightedDecorationId=null),Ee!==null&&(this._highlightedDecorationId=Ee,Ve.changeDecorationOptions(this._highlightedDecorationId,m._CURRENT_FIND_MATCH_DECORATION)),this._rangeHighlightDecorationId!==null&&(Ve.removeDecoration(this._rangeHighlightDecorationId),this._rangeHighlightDecorationId=null),Ee!==null){let ct=this._editor.getModel().getDecorationRange(Ee);if(ct.startLineNumber!==ct.endLineNumber&&ct.endColumn===1){let Et=ct.endLineNumber-1,qt=this._editor.getModel().getLineMaxColumn(Et);ct=new f.a(ct.startLineNumber,ct.startColumn,Et,qt)}this._rangeHighlightDecorationId=Ve.addDecoration(ct,m._RANGE_HIGHLIGHT_DECORATION)}}),ke}set(X,Ee){this._editor.changeDecorations(ke=>{let Ve=m._FIND_MATCH_DECORATION,ct=[];if(X.length>1e3){Ve=m._FIND_MATCH_NO_OVERVIEW_DECORATION;const qt=this._editor.getModel().getLineCount(),Xt=this._editor.getLayoutInfo().height,Yt=Xt/qt,go=Math.max(2,Math.ceil(3/Yt));let F=X[0].range.startLineNumber,J=X[0].range.endLineNumber;for(let Fe=1,Ze=X.length;Fe=St.startLineNumber?St.endLineNumber>J&&(J=St.endLineNumber):(ct.push({range:new f.a(F,1,J,1),options:m._FIND_MATCH_ONLY_OVERVIEW_DECORATION}),F=St.startLineNumber,J=St.endLineNumber)}ct.push({range:new f.a(F,1,J,1),options:m._FIND_MATCH_ONLY_OVERVIEW_DECORATION})}let Et=new Array(X.length);for(let qt=0,Xt=X.length;qtke.removeDecoration(qt)),this._findScopeDecorationIds=[]),(Ee==null?void 0:Ee.length)&&(this._findScopeDecorationIds=Ee.map(qt=>ke.addDecoration(qt,m._FIND_SCOPE_DECORATION)))})}matchBeforePosition(X){if(this._decorations.length===0)return null;for(let Ee=this._decorations.length-1;Ee>=0;Ee--){let ke=this._decorations[Ee],Ve=this._editor.getModel().getDecorationRange(ke);if(!Ve||Ve.endLineNumber>X.lineNumber)continue;if(Ve.endLineNumberX.column)continue;return Ve}return this._editor.getModel().getDecorationRange(this._decorations[this._decorations.length-1])}matchAfterPosition(X){if(this._decorations.length===0)return null;for(let Ee=0,ke=this._decorations.length;EeX.lineNumber)return ct;if(ct.startColumn0){let ke=[];for(let Et=0;Etf.a.compareRangesUsingStarts(Et.range,qt.range));let Ve=[],ct=ke[0];for(let Et=1;Et0?Ee[0].toUpperCase()+Ee.substr(1):X[0][0].toUpperCase()!==X[0][0]&&Ee.length>0?Ee[0].toLowerCase()+Ee.substr(1):Ee}else return Ee}function g(X,Ee,ke){const Ve=X[0].indexOf(ke)!==-1&&Ee.indexOf(ke)!==-1;return Ve&&X[0].split(ke).length===Ee.split(ke).length}function y(X,Ee,ke){const Ve=Ee.split(ke),ct=X[0].split(ke);let Et="";return Ve.forEach((qt,Xt)=>{Et+=l([ct[Xt]],qt)+ke}),Et.slice(0,-1)}class C{constructor(X){this.staticValue=X,this.kind=0}}class v{constructor(X){this.pieces=X,this.kind=1}}class D{constructor(X){!X||X.length===0?this._state=new C(""):X.length===1&&X[0].staticValue!==null?this._state=new C(X[0].staticValue):this._state=new v(X)}static fromStaticValue(X){return new D([j.staticValue(X)])}get hasReplacementPatterns(){return this._state.kind===1}buildReplaceString(X,Ee){if(this._state.kind===0)return Ee?l(X,this._state.staticValue):this._state.staticValue;let ke="";for(let Ve=0,ct=this._state.pieces.length;Ve0){let Xt=[],Yt=Et.caseOps.length,go=0;for(let F=0,J=qt.length;F=Yt){Xt.push(qt.slice(F));break}switch(Et.caseOps[go]){case"U":Xt.push(qt[F].toUpperCase());break;case"u":Xt.push(qt[F].toUpperCase()),go++;break;case"L":Xt.push(qt[F].toLowerCase());break;case"l":Xt.push(qt[F].toLowerCase()),go++;break;default:Xt.push(qt[F])}}qt=Xt.join("")}ke+=qt}return ke}static _substitute(X,Ee){if(Ee===null)return"";if(X===0)return Ee[0];let ke="";for(;X>0;){if(X=ct)break;let qt=X.charCodeAt(Ve);switch(qt){case 92:ke.emitUnchanged(Ve-1),ke.emitStatic("\\",Ve+1);break;case 110:ke.emitUnchanged(Ve-1),ke.emitStatic(` `,Ve+1);break;case 116:ke.emitUnchanged(Ve-1),ke.emitStatic(" ",Ve+1);break;case 117:case 85:case 108:case 76:ke.emitUnchanged(Ve-1),ke.emitStatic("",Ve+1),Ee.push(String.fromCharCode(qt));break}continue}if(Et===36){if(Ve++,Ve>=ct)break;let qt=X.charCodeAt(Ve);if(qt===36){ke.emitUnchanged(Ve-1),ke.emitStatic("$",Ve+1);continue}if(qt===48||qt===38){ke.emitUnchanged(Ve-1),ke.emitMatchIndex(0,Ve+1,Ee),Ee.length=0;continue}if(49<=qt&&qt<=57){let Xt=qt-48;if(Ve+1this.research(!1),100),this._toDispose.add(this._updateDecorationsScheduler),this._toDispose.add(this._editor.onDidChangeCursorPosition(ke=>{(ke.reason===3||ke.reason===5||ke.reason===6)&&this._decorations.setStartPosition(this._editor.getPosition())})),this._ignoreModelContentChanged=!1,this._toDispose.add(this._editor.onDidChangeModelContent(ke=>{if(this._ignoreModelContentChanged)return;ke.isFlush&&this._decorations.reset(),this._decorations.setStartPosition(this._editor.getPosition()),this._updateDecorationsScheduler.schedule()})),this._toDispose.add(this._state.onFindReplaceStateChange(ke=>this._onStateChanged(ke))),this.research(!1,this._state.searchScope)}dispose(){this._isDisposed=!0,Object(P.f)(this._startSearchingTimer),this._toDispose.dispose()}_onStateChanged(X){if(this._isDisposed)return;if(!this._editor.hasModel())return;if(X.searchString||X.isReplaceRevealed||X.isRegex||X.wholeWord||X.matchCase||X.searchScope){let Ee=this._editor.getModel();Ee.isTooLargeForSyncing()?(this._startSearchingTimer.cancel(),this._startSearchingTimer.setIfNotSet(()=>{X.searchScope?this.research(X.moveCursor,this._state.searchScope):this.research(X.moveCursor)},H)):X.searchScope?this.research(X.moveCursor,this._state.searchScope):this.research(X.moveCursor)}}static _getSearchRange(X,Ee){return Ee||X.getFullModelRange()}research(X,Ee){let ke=null;typeof Ee!="undefined"?Ee!==null&&(Array.isArray(Ee)?ke=Ee:ke=[Ee]):ke=this._decorations.getFindScopes(),ke!==null&&(ke=ke.map(qt=>{if(qt.startLineNumber!==qt.endLineNumber){let Xt=qt.endLineNumber;return qt.endColumn===1&&(Xt=Xt-1),new f.a(qt.startLineNumber,1,Xt,this._editor.getModel().getLineMaxColumn(Xt))}return qt}));let Ve=this._findMatches(ke,!1,U);this._decorations.set(Ve,ke);const ct=this._editor.getSelection();let Et=this._decorations.getCurrentMatchesPosition(ct);if(Et===0&&Ve.length>0){const qt=Object(k.h)(Ve.map(Xt=>Xt.range),Xt=>f.a.compareRangesUsingStarts(Xt,ct)>=0);Et=qt>0?qt-1+1:Et}this._state.changeMatchInfo(Et,this._decorations.getCount(),void 0),X&&this._editor.getOption(35).cursorMoveOnType&&this._moveToNextMatch(this._decorations.getStartPosition())}_hasMatches(){return this._state.matchesCount>0}_cannotFind(){if(!this._hasMatches()){let X=this._decorations.getFindScope();return X&&this._editor.revealRangeInCenterIfOutsideViewport(X,0),!0}return!1}_setCurrentFindMatch(X){let Ee=this._decorations.setCurrentFindMatch(X);this._state.changeMatchInfo(Ee,this._decorations.getCount(),X),this._editor.setSelection(X),this._editor.revealRangeInCenterIfOutsideViewport(X,0)}_prevSearchPosition(X){let Ee=this._state.isRegex&&(this._state.searchString.indexOf("^")>=0||this._state.searchString.indexOf("$")>=0),{lineNumber:ke,column:Ve}=X,ct=this._editor.getModel();return Ee||Ve===1?(ke===1?ke=ct.getLineCount():ke--,Ve=ct.getLineMaxColumn(ke)):Ve--,new S.a(ke,Ve)}_moveToPrevMatch(X,Ee=!1){if(!this._state.canNavigateBack()){const go=this._decorations.matchAfterPosition(X);go&&this._setCurrentFindMatch(go);return}if(this._decorations.getCount()=0||this._state.searchString.indexOf("$")>=0),{lineNumber:ke,column:Ve}=X,ct=this._editor.getModel();return Ee||Ve===ct.getLineMaxColumn(ke)?(ke===ct.getLineCount()?ke=1:ke++,Ve=1):Ve++,new S.a(ke,Ve)}_moveToNextMatch(X){if(!this._state.canNavigateForward()){const ke=this._decorations.matchBeforePosition(X);ke&&this._setCurrentFindMatch(ke);return}if(this._decorations.getCount()W._getSearchRange(this._editor.getModel(),ct));return this._editor.getModel().findMatches(this._state.searchString,Ve,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(115):null,Ee,ke)}replaceAll(){if(!this._hasMatches())return;const X=this._decorations.getFindScopes();X===null&&this._state.matchesCount>=U?this._largeReplaceAll():this._regularReplaceAll(X),this.research(!1)}_largeReplaceAll(){const X=new d.a(this._state.searchString,this._state.isRegex,this._state.matchCase,this._state.wholeWord?this._editor.getOption(115):null),Ee=X.parseSearchRequest();if(!Ee)return;let ke=Ee.regex;if(!ke.multiline){let F="mu";ke.ignoreCase&&(F+="i"),ke.global&&(F+="g"),ke=new RegExp(ke.source,F)}const Ve=this._editor.getModel(),ct=Ve.getValue(1),Et=Ve.getFullModelRange(),qt=this._getReplacePattern();let Xt;const Yt=this._state.preserveCase;qt.hasReplacementPatterns||Yt?Xt=ct.replace(ke,function(){return qt.buildReplaceString(arguments,Yt)}):Xt=ct.replace(ke,qt.buildReplaceString(null,Yt));let go=new O.b(Et,Xt,this._editor.getSelection());this._executeEditorCommand("replaceAll",go)}_regularReplaceAll(X){const Ee=this._getReplacePattern();let ke=this._findMatches(X,Ee.hasReplacementPatterns||this._state.preserveCase,1073741824),Ve=[];for(let Et=0,qt=ke.length;EtEt.range),Ve);this._executeEditorCommand("replaceAll",ct)}selectAllMatches(){if(!this._hasMatches())return;let X=this._decorations.getFindScopes(),Ee=this._findMatches(X,!1,1073741824),ke=Ee.map(ct=>new u.a(ct.range.startLineNumber,ct.range.startColumn,ct.range.endLineNumber,ct.range.endColumn)),Ve=this._editor.getSelection();for(let ct=0,Et=ke.length;ct{this.checked=!this._checked,this._onChange.fire(!1),ke.preventDefault()}),this.ignoreGesture(this.domNode),this.onkeydown(this.domNode,ke=>{if(ke.keyCode===10||ke.keyCode===3){this.checked=!this._checked,this._onChange.fire(!0),ke.preventDefault();return}this._onKeyDown.fire(ke)})}get enabled(){return this.domNode.getAttribute("aria-disabled")!=="true"}focus(){this.domNode.focus()}get checked(){return this._checked}set checked(X){this._checked=X,this.domNode.setAttribute("aria-checked",String(this._checked)),this.domNode.classList.toggle("checked",this._checked),this.applyStyles()}width(){return 2+2+2+16}style(X){X.inputActiveOptionBorder&&(this._opts.inputActiveOptionBorder=X.inputActiveOptionBorder),X.inputActiveOptionForeground&&(this._opts.inputActiveOptionForeground=X.inputActiveOptionForeground),X.inputActiveOptionBackground&&(this._opts.inputActiveOptionBackground=X.inputActiveOptionBackground),this.applyStyles()}applyStyles(){this.domNode&&(this.domNode.style.borderColor=this._checked&&this._opts.inputActiveOptionBorder?this._opts.inputActiveOptionBorder.toString():"transparent",this.domNode.style.color=this._checked&&this._opts.inputActiveOptionForeground?this._opts.inputActiveOptionForeground.toString():"inherit",this.domNode.style.backgroundColor=this._checked&&this._opts.inputActiveOptionBackground?this._opts.inputActiveOptionBackground.toString():"transparent")}enable(){this.domNode.setAttribute("aria-disabled",String(!1))}disable(){this.domNode.setAttribute("aria-disabled",String(!0))}}var Ne=e("3/fG");const ve=Ne.a("caseDescription","Match Case"),re=Ne.a("wordsDescription","Match Whole Word"),we=Ne.a("regexDescription","Use Regular Expression");class Ie extends De{constructor(X){super({icon:Le.b.caseSensitive,title:ve+X.appendTitle,isChecked:X.isChecked,inputActiveOptionBorder:X.inputActiveOptionBorder,inputActiveOptionForeground:X.inputActiveOptionForeground,inputActiveOptionBackground:X.inputActiveOptionBackground})}}class ge extends De{constructor(X){super({icon:Le.b.wholeWord,title:re+X.appendTitle,isChecked:X.isChecked,inputActiveOptionBorder:X.inputActiveOptionBorder,inputActiveOptionForeground:X.inputActiveOptionForeground,inputActiveOptionBackground:X.inputActiveOptionBackground})}}class ye extends De{constructor(X){super({icon:Le.b.regex,title:we+X.appendTitle,isChecked:X.isChecked,inputActiveOptionBorder:X.inputActiveOptionBorder,inputActiveOptionForeground:X.inputActiveOptionForeground,inputActiveOptionBackground:X.inputActiveOptionBackground})}}class ze extends Ce.a{constructor(X,Ee,ke,Ve){super();this._hideSoon=this._register(new h.e(()=>this._hide(),2e3)),this._isVisible=!1,this._editor=X,this._state=Ee,this._keybindingService=ke,this._domNode=document.createElement("div"),this._domNode.className="findOptionsWidget",this._domNode.style.display="none",this._domNode.style.top="10px",this._domNode.setAttribute("role","presentation"),this._domNode.setAttribute("aria-hidden","true");const ct=Ve.getColorTheme().getColor(n.lb),Et=Ve.getColorTheme().getColor(n.mb),qt=Ve.getColorTheme().getColor(n.kb);this.caseSensitive=this._register(new Ie({appendTitle:this._keybindingLabelFor(te.ToggleCaseSensitiveCommand),isChecked:this._state.matchCase,inputActiveOptionBorder:ct,inputActiveOptionForeground:Et,inputActiveOptionBackground:qt})),this._domNode.appendChild(this.caseSensitive.domNode),this._register(this.caseSensitive.onChange(()=>{this._state.change({matchCase:this.caseSensitive.checked},!1)})),this.wholeWords=this._register(new ge({appendTitle:this._keybindingLabelFor(te.ToggleWholeWordCommand),isChecked:this._state.wholeWord,inputActiveOptionBorder:ct,inputActiveOptionForeground:Et,inputActiveOptionBackground:qt})),this._domNode.appendChild(this.wholeWords.domNode),this._register(this.wholeWords.onChange(()=>{this._state.change({wholeWord:this.wholeWords.checked},!1)})),this.regex=this._register(new ye({appendTitle:this._keybindingLabelFor(te.ToggleRegexCommand),isChecked:this._state.isRegex,inputActiveOptionBorder:ct,inputActiveOptionForeground:Et,inputActiveOptionBackground:qt})),this._domNode.appendChild(this.regex.domNode),this._register(this.regex.onChange(()=>{this._state.change({isRegex:this.regex.checked},!1)})),this._editor.addOverlayWidget(this),this._register(this._state.onFindReplaceStateChange(Xt=>{let Yt=!1;Xt.isRegex&&(this.regex.checked=this._state.isRegex,Yt=!0),Xt.wholeWord&&(this.wholeWords.checked=this._state.wholeWord,Yt=!0),Xt.matchCase&&(this.caseSensitive.checked=this._state.matchCase,Yt=!0),!this._state.isRevealed&&Yt&&this._revealTemporarily()})),this._register(ne.j(this._domNode,Xt=>this._onMouseOut())),this._register(ne.i(this._domNode,"mouseover",Xt=>this._onMouseOver())),this._applyTheme(Ve.getColorTheme()),this._register(Ve.onDidColorThemeChange(this._applyTheme.bind(this)))}_keybindingLabelFor(X){let Ee=this._keybindingService.lookupKeybinding(X);return Ee?` (${Ee.getLabel()})`:""}dispose(){this._editor.removeOverlayWidget(this),super.dispose()}getId(){return ze.ID}getDomNode(){return this._domNode}getPosition(){return{preference:0}}highlightFindOptions(){this._revealTemporarily()}_revealTemporarily(){this._show(),this._hideSoon.schedule()}_onMouseOut(){this._hideSoon.schedule()}_onMouseOver(){this._hideSoon.cancel()}_show(){if(this._isVisible)return;this._isVisible=!0,this._domNode.style.display="block"}_hide(){if(!this._isVisible)return;this._isVisible=!1,this._domNode.style.display="none"}_applyTheme(X){let Ee={inputActiveOptionBorder:X.getColor(n.lb),inputActiveOptionForeground:X.getColor(n.mb),inputActiveOptionBackground:X.getColor(n.kb)};this.caseSensitive.style(Ee),this.wholeWords.style(Ee),this.regex.style(Ee)}}ze.ID="editor.contrib.findOptionsWidget",Object(b.f)((X,Ee)=>{const ke=X.getColor(n.cb);ke&&Ee.addRule(`.monaco-editor .findOptionsWidget { background-color: ${ke}; }`);const Ve=X.getColor(n.eb);Ve&&Ee.addRule(`.monaco-editor .findOptionsWidget { color: ${Ve}; }`);const ct=X.getColor(n.Tc);ct&&Ee.addRule(`.monaco-editor .findOptionsWidget { box-shadow: 0 0 8px 2px ${ct}; }`);const Et=X.getColor(n.h);Et&&Ee.addRule(`.monaco-editor .findOptionsWidget { border: 2px solid ${Et}; }`)});function xe(X,Ee){return X===1?!0:X===2?!1:Ee}class Te extends P.a{constructor(){super();this._onFindReplaceStateChange=this._register(new me.b),this.onFindReplaceStateChange=this._onFindReplaceStateChange.event,this._searchString="",this._replaceString="",this._isRevealed=!1,this._isReplaceRevealed=!1,this._isRegex=!1,this._isRegexOverride=0,this._wholeWord=!1,this._wholeWordOverride=0,this._matchCase=!1,this._matchCaseOverride=0,this._preserveCase=!1,this._preserveCaseOverride=0,this._searchScope=null,this._matchesPosition=0,this._matchesCount=0,this._currentMatch=null,this._loop=!0}get searchString(){return this._searchString}get replaceString(){return this._replaceString}get isRevealed(){return this._isRevealed}get isReplaceRevealed(){return this._isReplaceRevealed}get isRegex(){return xe(this._isRegexOverride,this._isRegex)}get wholeWord(){return xe(this._wholeWordOverride,this._wholeWord)}get matchCase(){return xe(this._matchCaseOverride,this._matchCase)}get preserveCase(){return xe(this._preserveCaseOverride,this._preserveCase)}get actualIsRegex(){return this._isRegex}get actualWholeWord(){return this._wholeWord}get actualMatchCase(){return this._matchCase}get actualPreserveCase(){return this._preserveCase}get searchScope(){return this._searchScope}get matchesPosition(){return this._matchesPosition}get matchesCount(){return this._matchesCount}get currentMatch(){return this._currentMatch}changeMatchInfo(X,Ee,ke){let Ve={moveCursor:!1,updateHistory:!1,searchString:!1,replaceString:!1,isRevealed:!1,isReplaceRevealed:!1,isRegex:!1,wholeWord:!1,matchCase:!1,preserveCase:!1,searchScope:!1,matchesPosition:!1,matchesCount:!1,currentMatch:!1,loop:!1},ct=!1;Ee===0&&(X=0),X>Ee&&(X=Ee),this._matchesPosition!==X&&(this._matchesPosition=X,Ve.matchesPosition=!0,ct=!0),this._matchesCount!==Ee&&(this._matchesCount=Ee,Ve.matchesCount=!0,ct=!0),typeof ke!="undefined"&&(f.a.equalsRange(this._currentMatch,ke)||(this._currentMatch=ke,Ve.currentMatch=!0,ct=!0)),ct&&this._onFindReplaceStateChange.fire(Ve)}change(X,Ee,ke=!0){var Ve;let ct={moveCursor:Ee,updateHistory:ke,searchString:!1,replaceString:!1,isRevealed:!1,isReplaceRevealed:!1,isRegex:!1,wholeWord:!1,matchCase:!1,preserveCase:!1,searchScope:!1,matchesPosition:!1,matchesCount:!1,currentMatch:!1,loop:!1},Et=!1;const qt=this.isRegex,Xt=this.wholeWord,Yt=this.matchCase,go=this.preserveCase;typeof X.searchString!="undefined"&&(this._searchString!==X.searchString&&(this._searchString=X.searchString,ct.searchString=!0,Et=!0)),typeof X.replaceString!="undefined"&&(this._replaceString!==X.replaceString&&(this._replaceString=X.replaceString,ct.replaceString=!0,Et=!0)),typeof X.isRevealed!="undefined"&&(this._isRevealed!==X.isRevealed&&(this._isRevealed=X.isRevealed,ct.isRevealed=!0,Et=!0)),typeof X.isReplaceRevealed!="undefined"&&(this._isReplaceRevealed!==X.isReplaceRevealed&&(this._isReplaceRevealed=X.isReplaceRevealed,ct.isReplaceRevealed=!0,Et=!0)),typeof X.isRegex!="undefined"&&(this._isRegex=X.isRegex),typeof X.wholeWord!="undefined"&&(this._wholeWord=X.wholeWord),typeof X.matchCase!="undefined"&&(this._matchCase=X.matchCase),typeof X.preserveCase!="undefined"&&(this._preserveCase=X.preserveCase),typeof X.searchScope!="undefined"&&(((Ve=X.searchScope)===null||Ve===void 0?void 0:Ve.every(F=>{var J;return(J=this._searchScope)===null||J===void 0?void 0:J.some(Fe=>!f.a.equalsRange(Fe,F))}))||(this._searchScope=X.searchScope,ct.searchScope=!0,Et=!0)),typeof X.loop!="undefined"&&(this._loop!==X.loop&&(this._loop=X.loop,ct.loop=!0,Et=!0)),this._isRegexOverride=typeof X.isRegexOverride!="undefined"?X.isRegexOverride:0,this._wholeWordOverride=typeof X.wholeWordOverride!="undefined"?X.wholeWordOverride:0,this._matchCaseOverride=typeof X.matchCaseOverride!="undefined"?X.matchCaseOverride:0,this._preserveCaseOverride=typeof X.preserveCaseOverride!="undefined"?X.preserveCaseOverride:0,qt!==this.isRegex&&(Et=!0,ct.isRegex=!0),Xt!==this.wholeWord&&(Et=!0,ct.wholeWord=!0),Yt!==this.matchCase&&(Et=!0,ct.matchCase=!0),go!==this.preserveCase&&(Et=!0,ct.preserveCase=!0),Et&&this._onFindReplaceStateChange.fire(ct)}canNavigateBack(){return this.canNavigateInLoop()||this.matchesPosition!==1}canNavigateForward(){return this.canNavigateInLoop()||this.matchesPosition=U}}var He=e("OBOq"),st=e("cMOf"),nt=e("/cxE"),rt=e("MNsG"),wt=e("AbCa"),Pt=e("0+8E"),no=e("yqFB");const ht=Ne.a("defaultLabel","input");class lt extends Ce.a{constructor(X,Ee,ke,Ve){super();this._showOptionButtons=ke,this.fixFocusOnOptionClickEnabled=!0,this.imeSessionInProgress=!1,this._onDidOptionChange=this._register(new me.b),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new me.b),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new me.b),this.onMouseDown=this._onMouseDown.event,this._onInput=this._register(new me.b),this._onKeyUp=this._register(new me.b),this._onCaseSensitiveKeyDown=this._register(new me.b),this.onCaseSensitiveKeyDown=this._onCaseSensitiveKeyDown.event,this._onRegexKeyDown=this._register(new me.b),this.onRegexKeyDown=this._onRegexKeyDown.event,this._lastHighlightFindOptions=0,this.contextViewProvider=Ee,this.placeholder=Ve.placeholder||"",this.validation=Ve.validation,this.label=Ve.label||ht,this.inputActiveOptionBorder=Ve.inputActiveOptionBorder,this.inputActiveOptionForeground=Ve.inputActiveOptionForeground,this.inputActiveOptionBackground=Ve.inputActiveOptionBackground,this.inputBackground=Ve.inputBackground,this.inputForeground=Ve.inputForeground,this.inputBorder=Ve.inputBorder,this.inputValidationInfoBorder=Ve.inputValidationInfoBorder,this.inputValidationInfoBackground=Ve.inputValidationInfoBackground,this.inputValidationInfoForeground=Ve.inputValidationInfoForeground,this.inputValidationWarningBorder=Ve.inputValidationWarningBorder,this.inputValidationWarningBackground=Ve.inputValidationWarningBackground,this.inputValidationWarningForeground=Ve.inputValidationWarningForeground,this.inputValidationErrorBorder=Ve.inputValidationErrorBorder,this.inputValidationErrorBackground=Ve.inputValidationErrorBackground,this.inputValidationErrorForeground=Ve.inputValidationErrorForeground;const ct=Ve.appendCaseSensitiveLabel||"",Et=Ve.appendWholeWordsLabel||"",qt=Ve.appendRegexLabel||"",Xt=Ve.history||[],Yt=!!Ve.flexibleHeight,go=!!Ve.flexibleWidth,F=Ve.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new Pt.a(this.domNode,this.contextViewProvider,{placeholder:this.placeholder||"",ariaLabel:this.label||"",validationOptions:{validation:this.validation},inputBackground:this.inputBackground,inputForeground:this.inputForeground,inputBorder:this.inputBorder,inputValidationInfoBackground:this.inputValidationInfoBackground,inputValidationInfoForeground:this.inputValidationInfoForeground,inputValidationInfoBorder:this.inputValidationInfoBorder,inputValidationWarningBackground:this.inputValidationWarningBackground,inputValidationWarningForeground:this.inputValidationWarningForeground,inputValidationWarningBorder:this.inputValidationWarningBorder,inputValidationErrorBackground:this.inputValidationErrorBackground,inputValidationErrorForeground:this.inputValidationErrorForeground,inputValidationErrorBorder:this.inputValidationErrorBorder,history:Xt,showHistoryHint:Ve.showHistoryHint,flexibleHeight:Yt,flexibleWidth:go,flexibleMaxHeight:F})),this.regex=this._register(new ye({appendTitle:qt,isChecked:!1,inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionForeground:this.inputActiveOptionForeground,inputActiveOptionBackground:this.inputActiveOptionBackground})),this._register(this.regex.onChange(Ze=>{this._onDidOptionChange.fire(Ze),!Ze&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.regex.onKeyDown(Ze=>{this._onRegexKeyDown.fire(Ze)})),this.wholeWords=this._register(new ge({appendTitle:Et,isChecked:!1,inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionForeground:this.inputActiveOptionForeground,inputActiveOptionBackground:this.inputActiveOptionBackground})),this._register(this.wholeWords.onChange(Ze=>{this._onDidOptionChange.fire(Ze),!Ze&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this.caseSensitive=this._register(new Ie({appendTitle:ct,isChecked:!1,inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionForeground:this.inputActiveOptionForeground,inputActiveOptionBackground:this.inputActiveOptionBackground})),this._register(this.caseSensitive.onChange(Ze=>{this._onDidOptionChange.fire(Ze),!Ze&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.caseSensitive.onKeyDown(Ze=>{this._onCaseSensitiveKeyDown.fire(Ze)})),this._showOptionButtons&&(this.inputBox.paddingRight=this.caseSensitive.width()+this.wholeWords.width()+this.regex.width());let J=[this.caseSensitive.domNode,this.wholeWords.domNode,this.regex.domNode];this.onkeydown(this.domNode,Ze=>{if(Ze.equals(15)||Ze.equals(17)||Ze.equals(9)){let St=J.indexOf(document.activeElement);if(St>=0){let It=-1;Ze.equals(17)?It=(St+1)%J.length:Ze.equals(15)&&(St===0?It=J.length-1:It=St-1),Ze.equals(9)?(J[St].blur(),this.inputBox.focus()):It>=0&&J[It].focus(),ne.c.stop(Ze,!0)}}});let Fe=document.createElement("div");Fe.className="controls",Fe.style.display=this._showOptionButtons?"block":"none",Fe.appendChild(this.caseSensitive.domNode),Fe.appendChild(this.wholeWords.domNode),Fe.appendChild(this.regex.domNode),this.domNode.appendChild(Fe),X&&X.appendChild(this.domNode),this._register(ne.i(this.inputBox.inputElement,"compositionstart",Ze=>{this.imeSessionInProgress=!0})),this._register(ne.i(this.inputBox.inputElement,"compositionend",Ze=>{this.imeSessionInProgress=!1,this._onInput.fire()})),this.onkeydown(this.inputBox.inputElement,Ze=>this._onKeyDown.fire(Ze)),this.onkeyup(this.inputBox.inputElement,Ze=>this._onKeyUp.fire(Ze)),this.oninput(this.inputBox.inputElement,Ze=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,Ze=>this._onMouseDown.fire(Ze))}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.regex.enable(),this.wholeWords.enable(),this.caseSensitive.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.regex.disable(),this.wholeWords.disable(),this.caseSensitive.disable()}setFocusInputOnOptionClick(X){this.fixFocusOnOptionClickEnabled=X}setEnabled(X){X?this.enable():this.disable()}getValue(){return this.inputBox.value}setValue(X){this.inputBox.value!==X&&(this.inputBox.value=X)}style(X){this.inputActiveOptionBorder=X.inputActiveOptionBorder,this.inputActiveOptionForeground=X.inputActiveOptionForeground,this.inputActiveOptionBackground=X.inputActiveOptionBackground,this.inputBackground=X.inputBackground,this.inputForeground=X.inputForeground,this.inputBorder=X.inputBorder,this.inputValidationInfoBackground=X.inputValidationInfoBackground,this.inputValidationInfoForeground=X.inputValidationInfoForeground,this.inputValidationInfoBorder=X.inputValidationInfoBorder,this.inputValidationWarningBackground=X.inputValidationWarningBackground,this.inputValidationWarningForeground=X.inputValidationWarningForeground,this.inputValidationWarningBorder=X.inputValidationWarningBorder,this.inputValidationErrorBackground=X.inputValidationErrorBackground,this.inputValidationErrorForeground=X.inputValidationErrorForeground,this.inputValidationErrorBorder=X.inputValidationErrorBorder,this.applyStyles()}applyStyles(){if(this.domNode){const X={inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionForeground:this.inputActiveOptionForeground,inputActiveOptionBackground:this.inputActiveOptionBackground};this.regex.style(X),this.wholeWords.style(X),this.caseSensitive.style(X);const Ee={inputBackground:this.inputBackground,inputForeground:this.inputForeground,inputBorder:this.inputBorder,inputValidationInfoBackground:this.inputValidationInfoBackground,inputValidationInfoForeground:this.inputValidationInfoForeground,inputValidationInfoBorder:this.inputValidationInfoBorder,inputValidationWarningBackground:this.inputValidationWarningBackground,inputValidationWarningForeground:this.inputValidationWarningForeground,inputValidationWarningBorder:this.inputValidationWarningBorder,inputValidationErrorBackground:this.inputValidationErrorBackground,inputValidationErrorForeground:this.inputValidationErrorForeground,inputValidationErrorBorder:this.inputValidationErrorBorder};this.inputBox.style(Ee)}}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getCaseSensitive(){return this.caseSensitive.checked}setCaseSensitive(X){this.caseSensitive.checked=X}getWholeWords(){return this.wholeWords.checked}setWholeWords(X){this.wholeWords.checked=X}getRegex(){return this.regex.checked}setRegex(X){this.regex.checked=X,this.validate()}focusOnCaseSensitive(){this.caseSensitive.focus()}highlightFindOptions(){this.domNode.classList.remove("highlight-"+this._lastHighlightFindOptions),this._lastHighlightFindOptions=1-this._lastHighlightFindOptions,this.domNode.classList.add("highlight-"+this._lastHighlightFindOptions)}validate(){this.inputBox.validate()}clearMessage(){this.inputBox.hideMessage()}}const le=Ne.a("defaultLabel","input"),Pe=Ne.a("label.preserveCaseCheckbox","Preserve Case");class it extends De{constructor(X){super({icon:Le.b.preserveCase,title:Pe+X.appendTitle,isChecked:X.isChecked,inputActiveOptionBorder:X.inputActiveOptionBorder,inputActiveOptionForeground:X.inputActiveOptionForeground,inputActiveOptionBackground:X.inputActiveOptionBackground})}}class Dt extends Ce.a{constructor(X,Ee,ke,Ve){super();this._showOptionButtons=ke,this.fixFocusOnOptionClickEnabled=!0,this.cachedOptionsWidth=0,this._onDidOptionChange=this._register(new me.b),this.onDidOptionChange=this._onDidOptionChange.event,this._onKeyDown=this._register(new me.b),this.onKeyDown=this._onKeyDown.event,this._onMouseDown=this._register(new me.b),this._onInput=this._register(new me.b),this._onKeyUp=this._register(new me.b),this._onPreserveCaseKeyDown=this._register(new me.b),this.onPreserveCaseKeyDown=this._onPreserveCaseKeyDown.event,this.contextViewProvider=Ee,this.placeholder=Ve.placeholder||"",this.validation=Ve.validation,this.label=Ve.label||le,this.inputActiveOptionBorder=Ve.inputActiveOptionBorder,this.inputActiveOptionForeground=Ve.inputActiveOptionForeground,this.inputActiveOptionBackground=Ve.inputActiveOptionBackground,this.inputBackground=Ve.inputBackground,this.inputForeground=Ve.inputForeground,this.inputBorder=Ve.inputBorder,this.inputValidationInfoBorder=Ve.inputValidationInfoBorder,this.inputValidationInfoBackground=Ve.inputValidationInfoBackground,this.inputValidationInfoForeground=Ve.inputValidationInfoForeground,this.inputValidationWarningBorder=Ve.inputValidationWarningBorder,this.inputValidationWarningBackground=Ve.inputValidationWarningBackground,this.inputValidationWarningForeground=Ve.inputValidationWarningForeground,this.inputValidationErrorBorder=Ve.inputValidationErrorBorder,this.inputValidationErrorBackground=Ve.inputValidationErrorBackground,this.inputValidationErrorForeground=Ve.inputValidationErrorForeground;const ct=Ve.appendPreserveCaseLabel||"",Et=Ve.history||[],qt=!!Ve.flexibleHeight,Xt=!!Ve.flexibleWidth,Yt=Ve.flexibleMaxHeight;this.domNode=document.createElement("div"),this.domNode.classList.add("monaco-findInput"),this.inputBox=this._register(new Pt.a(this.domNode,this.contextViewProvider,{ariaLabel:this.label||"",placeholder:this.placeholder||"",validationOptions:{validation:this.validation},inputBackground:this.inputBackground,inputForeground:this.inputForeground,inputBorder:this.inputBorder,inputValidationInfoBackground:this.inputValidationInfoBackground,inputValidationInfoForeground:this.inputValidationInfoForeground,inputValidationInfoBorder:this.inputValidationInfoBorder,inputValidationWarningBackground:this.inputValidationWarningBackground,inputValidationWarningForeground:this.inputValidationWarningForeground,inputValidationWarningBorder:this.inputValidationWarningBorder,inputValidationErrorBackground:this.inputValidationErrorBackground,inputValidationErrorForeground:this.inputValidationErrorForeground,inputValidationErrorBorder:this.inputValidationErrorBorder,history:Et,showHistoryHint:Ve.showHistoryHint,flexibleHeight:qt,flexibleWidth:Xt,flexibleMaxHeight:Yt})),this.preserveCase=this._register(new it({appendTitle:ct,isChecked:!1,inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionForeground:this.inputActiveOptionForeground,inputActiveOptionBackground:this.inputActiveOptionBackground})),this._register(this.preserveCase.onChange(J=>{this._onDidOptionChange.fire(J),!J&&this.fixFocusOnOptionClickEnabled&&this.inputBox.focus(),this.validate()})),this._register(this.preserveCase.onKeyDown(J=>{this._onPreserveCaseKeyDown.fire(J)})),this._showOptionButtons?this.cachedOptionsWidth=this.preserveCase.width():this.cachedOptionsWidth=0;let go=[this.preserveCase.domNode];this.onkeydown(this.domNode,J=>{if(J.equals(15)||J.equals(17)||J.equals(9)){let Fe=go.indexOf(document.activeElement);if(Fe>=0){let Ze=-1;J.equals(17)?Ze=(Fe+1)%go.length:J.equals(15)&&(Fe===0?Ze=go.length-1:Ze=Fe-1),J.equals(9)?(go[Fe].blur(),this.inputBox.focus()):Ze>=0&&go[Ze].focus(),ne.c.stop(J,!0)}}});let F=document.createElement("div");F.className="controls",F.style.display=this._showOptionButtons?"block":"none",F.appendChild(this.preserveCase.domNode),this.domNode.appendChild(F),X&&X.appendChild(this.domNode),this.onkeydown(this.inputBox.inputElement,J=>this._onKeyDown.fire(J)),this.onkeyup(this.inputBox.inputElement,J=>this._onKeyUp.fire(J)),this.oninput(this.inputBox.inputElement,J=>this._onInput.fire()),this.onmousedown(this.inputBox.inputElement,J=>this._onMouseDown.fire(J))}enable(){this.domNode.classList.remove("disabled"),this.inputBox.enable(),this.preserveCase.enable()}disable(){this.domNode.classList.add("disabled"),this.inputBox.disable(),this.preserveCase.disable()}setEnabled(X){X?this.enable():this.disable()}style(X){this.inputActiveOptionBorder=X.inputActiveOptionBorder,this.inputActiveOptionForeground=X.inputActiveOptionForeground,this.inputActiveOptionBackground=X.inputActiveOptionBackground,this.inputBackground=X.inputBackground,this.inputForeground=X.inputForeground,this.inputBorder=X.inputBorder,this.inputValidationInfoBackground=X.inputValidationInfoBackground,this.inputValidationInfoForeground=X.inputValidationInfoForeground,this.inputValidationInfoBorder=X.inputValidationInfoBorder,this.inputValidationWarningBackground=X.inputValidationWarningBackground,this.inputValidationWarningForeground=X.inputValidationWarningForeground,this.inputValidationWarningBorder=X.inputValidationWarningBorder,this.inputValidationErrorBackground=X.inputValidationErrorBackground,this.inputValidationErrorForeground=X.inputValidationErrorForeground,this.inputValidationErrorBorder=X.inputValidationErrorBorder,this.applyStyles()}applyStyles(){if(this.domNode){const X={inputActiveOptionBorder:this.inputActiveOptionBorder,inputActiveOptionForeground:this.inputActiveOptionForeground,inputActiveOptionBackground:this.inputActiveOptionBackground};this.preserveCase.style(X);const Ee={inputBackground:this.inputBackground,inputForeground:this.inputForeground,inputBorder:this.inputBorder,inputValidationInfoBackground:this.inputValidationInfoBackground,inputValidationInfoForeground:this.inputValidationInfoForeground,inputValidationInfoBorder:this.inputValidationInfoBorder,inputValidationWarningBackground:this.inputValidationWarningBackground,inputValidationWarningForeground:this.inputValidationWarningForeground,inputValidationWarningBorder:this.inputValidationWarningBorder,inputValidationErrorBackground:this.inputValidationErrorBackground,inputValidationErrorForeground:this.inputValidationErrorForeground,inputValidationErrorBorder:this.inputValidationErrorBorder};this.inputBox.style(Ee)}}select(){this.inputBox.select()}focus(){this.inputBox.focus()}getPreserveCase(){return this.preserveCase.checked}setPreserveCase(X){this.preserveCase.checked=X}focusOnPreserve(){this.preserveCase.focus()}validate(){this.inputBox&&this.inputBox.validate()}set width(X){this.inputBox.paddingRight=this.cachedOptionsWidth,this.inputBox.width=X,this.domNode.style.width=X+"px"}dispose(){super.dispose()}}var kt=e("nrhi"),eo=e("QVNv"),bo=function(X,Ee,ke,Ve){var ct=arguments.length,Et=ct<3?Ee:Ve===null?Ve=Object.getOwnPropertyDescriptor(Ee,ke):Ve,qt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Et=Reflect.decorate(X,Ee,ke,Ve);else for(var Xt=X.length-1;Xt>=0;Xt--)(qt=X[Xt])&&(Et=(ct<3?qt(Et):ct>3?qt(Ee,ke,Et):qt(Ee,ke))||Et);return ct>3&&Et&&Object.defineProperty(Ee,ke,Et),Et},ao=function(X,Ee){return function(ke,Ve){Ee(ke,Ve,X)}};const So="historyNavigationWidget",Lo="historyNavigationForwardsEnabled",xo="historyNavigationBackwardsEnabled";function _o(X,Ee,ke){new B.c(ke,Ee).bindTo(X)}function to(X,Ee){return X.createScoped(Ee.target)}function Wt(X,Ee){return X.getContext(document.activeElement).getValue(Ee)}function Ge(X,Ee){const ke=to(X,Ee);_o(ke,Ee,So);const Ve=new B.c(Lo,!0).bindTo(ke),ct=new B.c(xo,!0).bindTo(ke);return{scopedContextKeyService:ke,historyNavigationForwardsEnablement:Ve,historyNavigationBackwardsEnablement:ct}}let mt=class extends lt{constructor(Ee,ke,Ve,ct,Et=!1){super(Ee,ke,Et,Ve);this._register(Ge(ct,{target:this.inputBox.element,historyNavigator:this.inputBox}).scopedContextKeyService)}};mt=bo([ao(3,B.b)],mt);let Gt=class extends Dt{constructor(Ee,ke,Ve,ct,Et=!1){super(Ee,ke,Et,Ve);this._register(Ge(ct,{target:this.inputBox.element,historyNavigator:this.inputBox}).scopedContextKeyService)}};Gt=bo([ao(3,B.b)],Gt),kt.a.registerCommandAndKeybindingRule({id:"history.showPrevious",weight:200,when:B.a.and(B.a.has(So),B.a.equals(xo,!0),eo.b.Visible.isEqualTo(!1)),primary:16,secondary:[512|16],handler:X=>{const Ee=Wt(X.get(B.b),So);if(Ee){const ke=Ee.historyNavigator;ke.showPreviousValue()}}}),kt.a.registerCommandAndKeybindingRule({id:"history.showNext",weight:200,when:B.a.and(B.a.has(So),B.a.equals(Lo,!0),eo.b.Visible.isEqualTo(!1)),primary:18,secondary:[512|18],handler:X=>{const Ee=Wt(X.get(B.b),So);if(Ee){const ke=Ee.historyNavigator;ke.showNextValue()}}});function qe(X){var Ee,ke;return((Ee=X.lookupKeybinding("history.showPrevious"))===null||Ee===void 0?void 0:Ee.getElectronAccelerator())==="Up"&&((ke=X.lookupKeybinding("history.showNext"))===null||ke===void 0?void 0:ke.getElectronAccelerator())==="Down"}var tt=e("v1vZ"),gt=function(X,Ee,ke,Ve){function ct(Et){return Et instanceof ke?Et:new ke(function(qt){qt(Et)})}return new(ke||(ke=Promise))(function(Et,qt){function Xt(F){try{go(Ve.next(F))}catch(J){qt(J)}}function Yt(F){try{go(Ve.throw(F))}catch(J){qt(J)}}function go(F){F.done?Et(F.value):ct(F.value).then(Xt,Yt)}go((Ve=Ve.apply(X,Ee||[])).next())})};const $e=Object(tt.b)("find-selection",Le.b.selection,Ne.a("findSelectionIcon","Icon for 'Find in Selection' in the editor find widget.")),je=Object(tt.b)("find-collapsed",Le.b.chevronRight,Ne.a("findCollapsedIcon","Icon to indicate that the editor find widget is collapsed.")),Ue=Object(tt.b)("find-expanded",Le.b.chevronDown,Ne.a("findExpandedIcon","Icon to indicate that the editor find widget is expanded.")),Ye=Object(tt.b)("find-replace",Le.b.replace,Ne.a("findReplaceIcon","Icon for 'Replace' in the editor find widget.")),Mt=Object(tt.b)("find-replace-all",Le.b.replaceAll,Ne.a("findReplaceAllIcon","Icon for 'Replace All' in the editor find widget.")),Bt=Object(tt.b)("find-previous-match",Le.b.arrowUp,Ne.a("findPreviousMatchIcon","Icon for 'Find Previous' in the editor find widget.")),$t=Object(tt.b)("find-next-match",Le.b.arrowDown,Ne.a("findNextMatchIcon","Icon for 'Find Next' in the editor find widget.")),uo=Ne.a("label.find","Find"),Zt=Ne.a("placeholder.find","Find"),zt=Ne.a("label.previousMatchButton","Previous Match"),ut=Ne.a("label.nextMatchButton","Next Match"),Ct=Ne.a("label.toggleSelectionFind","Find in Selection"),We=Ne.a("label.closeButton","Close"),he=Ne.a("label.replace","Replace"),Me=Ne.a("placeholder.replace","Replace"),ue=Ne.a("label.replaceButton","Replace"),ae=Ne.a("label.replaceAllButton","Replace All"),Re=Ne.a("label.toggleReplaceButton","Toggle Replace"),Qe=Ne.a("title.matchesCountLimit","Only the first {0} results are highlighted, but all find operations work on the entire text.",U),et=Ne.a("label.matchesLocation","{0} of {1}"),bt=Ne.a("label.noResults","No results"),Lt=419,Ot=275,Ft=Ot-54;let Tt=69;const Ut=33,fo="ctrlEnterReplaceAll.windows.donotask",vo=rt.f?256:2048;class po{constructor(X){this.afterLineNumber=X,this.heightInPx=Ut,this.suppressMouseDown=!1,this.domNode=document.createElement("div"),this.domNode.className="dock-find-viewzone"}}function Oo(X,Ee,ke){const Ve=!!Ee.match(/\n/);if(ke&&Ve&&ke.selectionStart>0){X.stopPropagation();return}}function Uo(X,Ee,ke){const Ve=!!Ee.match(/\n/);if(ke&&Ve&&ke.selectionEndthis._updateHistoryDelayer.cancel())),this._register(this._state.onFindReplaceStateChange(go=>this._onStateChanged(go))),this._buildDomNode(),this._updateButtons(),this._tryUpdateWidgetWidth(),this._findInput.inputBox.layout(),this._register(this._codeEditor.onDidChangeConfiguration(go=>{if(go.hasChanged(80)&&(this._codeEditor.getOption(80)&&this._state.change({isReplaceRevealed:!1},!1),this._updateButtons()),go.hasChanged(129)&&this._tryUpdateWidgetWidth(),go.hasChanged(2)&&this.updateAccessibilitySupport(),go.hasChanged(35)){const F=this._codeEditor.getOption(35).addExtraSpaceOnTop;F&&!this._viewZone&&(this._viewZone=new po(0),this._showViewZone()),!F&&this._viewZone&&this._removeViewZone()}})),this.updateAccessibilitySupport(),this._register(this._codeEditor.onDidChangeCursorSelection(()=>{this._isVisible&&this._updateToggleSelectionFindButton()})),this._register(this._codeEditor.onDidFocusEditorWidget(()=>gt(this,void 0,void 0,function*(){if(this._isVisible){let go=yield this._controller.getGlobalBufferTerm();go&&go!==this._state.searchString&&(this._state.change({searchString:go},!1),this._findInput.select())}}))),this._findInputFocused=Y.bindTo(Et),this._findFocusTracker=this._register(ne.Y(this._findInput.inputBox.inputElement)),this._register(this._findFocusTracker.onDidFocus(()=>{this._findInputFocused.set(!0),this._updateSearchScope()})),this._register(this._findFocusTracker.onDidBlur(()=>{this._findInputFocused.set(!1)})),this._replaceInputFocused=K.bindTo(Et),this._replaceFocusTracker=this._register(ne.Y(this._replaceInput.inputBox.inputElement)),this._register(this._replaceFocusTracker.onDidFocus(()=>{this._replaceInputFocused.set(!0),this._updateSearchScope()})),this._register(this._replaceFocusTracker.onDidBlur(()=>{this._replaceInputFocused.set(!1)})),this._codeEditor.addOverlayWidget(this),this._codeEditor.getOption(35).addExtraSpaceOnTop&&(this._viewZone=new po(0)),this._applyTheme(qt.getColorTheme()),this._register(qt.onDidColorThemeChange(this._applyTheme.bind(this))),this._register(this._codeEditor.onDidChangeModel(()=>{if(!this._isVisible)return;this._viewZoneId=void 0})),this._register(this._codeEditor.onDidScrollChange(go=>{if(go.scrollTopChanged){this._layoutViewZone();return}setTimeout(()=>{this._layoutViewZone()},0)}))}getId(){return Zo.ID}getDomNode(){return this._domNode}getPosition(){return this._isVisible?{preference:0}:null}_onStateChanged(X){if(X.searchString){try{this._ignoreChangeEvent=!0,this._findInput.setValue(this._state.searchString)}finally{this._ignoreChangeEvent=!1}this._updateButtons()}if(X.replaceString&&(this._replaceInput.inputBox.value=this._state.replaceString),X.isRevealed&&(this._state.isRevealed?this._reveal():this._hide(!0)),X.isReplaceRevealed&&(this._state.isReplaceRevealed?!this._codeEditor.getOption(80)&&!this._isReplaceVisible&&(this._isReplaceVisible=!0,this._replaceInput.width=ne.I(this._findInput.domNode),this._updateButtons(),this._replaceInput.inputBox.layout()):this._isReplaceVisible&&(this._isReplaceVisible=!1,this._updateButtons())),(X.isRevealed||X.isReplaceRevealed)&&(this._state.isRevealed||this._state.isReplaceRevealed)&&(this._tryUpdateHeight()&&this._showViewZone()),X.isRegex&&this._findInput.setRegex(this._state.isRegex),X.wholeWord&&this._findInput.setWholeWords(this._state.wholeWord),X.matchCase&&this._findInput.setCaseSensitive(this._state.matchCase),X.preserveCase&&this._replaceInput.setPreserveCase(this._state.preserveCase),X.searchScope&&(this._state.searchScope?this._toggleSelectionFind.checked=!0:this._toggleSelectionFind.checked=!1,this._updateToggleSelectionFindButton()),X.searchString||X.matchesCount||X.matchesPosition){let Ee=this._state.searchString.length>0&&this._state.matchesCount===0;this._domNode.classList.toggle("no-results",Ee),this._updateMatchesCount(),this._updateButtons()}(X.searchString||X.currentMatch)&&this._layoutViewZone(),X.updateHistory&&this._delayedUpdateHistory(),X.loop&&this._updateButtons()}_delayedUpdateHistory(){this._updateHistoryDelayer.trigger(this._updateHistory.bind(this)).then(void 0,nt.f)}_updateHistory(){this._state.searchString&&this._findInput.inputBox.addToHistory(),this._state.replaceString&&this._replaceInput.inputBox.addToHistory()}_updateMatchesCount(){this._matchesCount.style.minWidth=Tt+"px",this._state.matchesCount>=U?this._matchesCount.title=Qe:this._matchesCount.title="",this._matchesCount.firstChild&&this._matchesCount.removeChild(this._matchesCount.firstChild);let X;if(this._state.matchesCount>0){let Ee=String(this._state.matchesCount);this._state.matchesCount>=U&&(Ee+="+");let ke=String(this._state.matchesPosition);ke==="0"&&(ke="?"),X=L.v(et,ke,Ee)}else X=bt;this._matchesCount.appendChild(document.createTextNode(X)),Object(He.a)(this._getAriaLabel(X,this._state.currentMatch,this._state.searchString)),Tt=Math.max(Tt,this._matchesCount.clientWidth)}_getAriaLabel(X,Ee,ke){if(X===bt)return ke===""?Ne.a("ariaSearchNoResultEmpty","{0} found",X):Ne.a("ariaSearchNoResult","{0} found for '{1}'",X,ke);if(Ee){const Ve=Ne.a("ariaSearchNoResultWithLineNum","{0} found for '{1}', at {2}",X,ke,Ee.startLineNumber+":"+Ee.startColumn),ct=this._codeEditor.getModel();if(ct&&Ee.startLineNumber<=ct.getLineCount()&&Ee.startLineNumber>=1){const Et=ct.getLineContent(Ee.startLineNumber);return`${Et}, ${Ve}`}return Ve}return Ne.a("ariaSearchNoResultWithLineNumNoCurrentMatch","{0} found for '{1}'",X,ke)}_updateToggleSelectionFindButton(){let X=this._codeEditor.getSelection(),Ee=X?X.startLineNumber!==X.endLineNumber||X.startColumn!==X.endColumn:!1,ke=this._toggleSelectionFind.checked;this._isVisible&&(ke||Ee)?this._toggleSelectionFind.enable():this._toggleSelectionFind.disable()}_updateButtons(){this._findInput.setEnabled(this._isVisible),this._replaceInput.setEnabled(this._isVisible&&this._isReplaceVisible),this._updateToggleSelectionFindButton(),this._closeBtn.setEnabled(this._isVisible);let X=this._state.searchString.length>0,Ee=!!this._state.matchesCount;this._prevBtn.setEnabled(this._isVisible&&X&&Ee&&this._state.canNavigateBack()),this._nextBtn.setEnabled(this._isVisible&&X&&Ee&&this._state.canNavigateForward()),this._replaceBtn.setEnabled(this._isVisible&&this._isReplaceVisible&&X),this._replaceAllBtn.setEnabled(this._isVisible&&this._isReplaceVisible&&X),this._domNode.classList.toggle("replaceToggled",this._isReplaceVisible),this._toggleReplaceBtn.setExpanded(this._isReplaceVisible);let ke=!this._codeEditor.getOption(80);this._toggleReplaceBtn.setEnabled(this._isVisible&&ke)}_reveal(){if(this._revealTimeouts.forEach(X=>{clearTimeout(X)}),this._revealTimeouts=[],!this._isVisible){this._isVisible=!0;const X=this._codeEditor.getSelection();switch(this._codeEditor.getOption(35).autoFindInSelection){case"always":this._toggleSelectionFind.checked=!0;break;case"never":this._toggleSelectionFind.checked=!1;break;case"multiline":const ke=!!X&&X.startLineNumber!==X.endLineNumber;this._toggleSelectionFind.checked=ke;break;default:break}this._tryUpdateWidgetWidth(),this._updateButtons(),this._revealTimeouts.push(setTimeout(()=>{this._domNode.classList.add("visible"),this._domNode.setAttribute("aria-hidden","false")},0)),this._revealTimeouts.push(setTimeout(()=>{this._findInput.validate()},200)),this._codeEditor.layoutOverlayWidget(this);let Ee=!0;if(this._codeEditor.getOption(35).seedSearchStringFromSelection&&X){const ke=this._codeEditor.getDomNode();if(ke){const Ve=ne.D(ke),ct=this._codeEditor.getScrolledVisiblePosition(X.getStartPosition()),Et=Ve.left+(ct?ct.left:0),qt=ct?ct.top:0;if(this._viewZone&&qtX.startLineNumber&&(Ee=!1);const Xt=ne.G(this._domNode).left;Et>Xt&&(Ee=!1);const Yt=this._codeEditor.getScrolledVisiblePosition(X.getEndPosition()),go=Ve.left+(Yt?Yt.left:0);go>Xt&&(Ee=!1)}}}this._showViewZone(Ee)}}_hide(X){this._revealTimeouts.forEach(Ee=>{clearTimeout(Ee)}),this._revealTimeouts=[],this._isVisible&&(this._isVisible=!1,this._updateButtons(),this._domNode.classList.remove("visible"),this._domNode.setAttribute("aria-hidden","true"),this._findInput.clearMessage(),X&&this._codeEditor.focus(),this._codeEditor.layoutOverlayWidget(this),this._removeViewZone())}_layoutViewZone(X){const Ee=this._codeEditor.getOption(35).addExtraSpaceOnTop;if(!Ee){this._removeViewZone();return}if(!this._isVisible)return;const ke=this._viewZone;if(this._viewZoneId!==void 0||!ke)return;this._codeEditor.changeViewZones(Ve=>{ke.heightInPx=this._getHeight(),this._viewZoneId=Ve.addZone(ke),this._codeEditor.setScrollTop(X||this._codeEditor.getScrollTop()+ke.heightInPx)})}_showViewZone(X=!0){if(!this._isVisible)return;const Ee=this._codeEditor.getOption(35).addExtraSpaceOnTop;if(!Ee)return;this._viewZone===void 0&&(this._viewZone=new po(0));const ke=this._viewZone;this._codeEditor.changeViewZones(Ve=>{if(this._viewZoneId!==void 0){const ct=this._getHeight();if(ct===ke.heightInPx)return;let Et=ct-ke.heightInPx;ke.heightInPx=ct,Ve.layoutZone(this._viewZoneId),X&&this._codeEditor.setScrollTop(this._codeEditor.getScrollTop()+Et);return}else{let ct=this._getHeight();if(ct-=this._codeEditor.getOption(74).top,ct<=0)return;ke.heightInPx=ct,this._viewZoneId=Ve.addZone(ke),X&&this._codeEditor.setScrollTop(this._codeEditor.getScrollTop()+ct)}})}_removeViewZone(){this._codeEditor.changeViewZones(X=>{this._viewZoneId!==void 0&&(X.removeZone(this._viewZoneId),this._viewZoneId=void 0,this._viewZone&&(this._codeEditor.setScrollTop(this._codeEditor.getScrollTop()-this._viewZone.heightInPx),this._viewZone=void 0))})}_applyTheme(X){let Ee={inputActiveOptionBorder:X.getColor(n.lb),inputActiveOptionBackground:X.getColor(n.kb),inputActiveOptionForeground:X.getColor(n.mb),inputBackground:X.getColor(n.nb),inputForeground:X.getColor(n.pb),inputBorder:X.getColor(n.ob),inputValidationInfoBackground:X.getColor(n.tb),inputValidationInfoForeground:X.getColor(n.vb),inputValidationInfoBorder:X.getColor(n.ub),inputValidationWarningBackground:X.getColor(n.wb),inputValidationWarningForeground:X.getColor(n.yb),inputValidationWarningBorder:X.getColor(n.xb),inputValidationErrorBackground:X.getColor(n.qb),inputValidationErrorForeground:X.getColor(n.sb),inputValidationErrorBorder:X.getColor(n.rb)};this._findInput.style(Ee),this._replaceInput.style(Ee),this._toggleSelectionFind.style(Ee)}_tryUpdateWidgetWidth(){if(!this._isVisible)return;if(!ne.N(this._domNode))return;const X=this._codeEditor.getLayoutInfo(),Ee=X.contentWidth;if(Ee<=0){this._domNode.classList.add("hiddenEditor");return}else this._domNode.classList.contains("hiddenEditor")&&this._domNode.classList.remove("hiddenEditor");const ke=X.width,Ve=X.minimap.minimapWidth;let ct=!1,Et=!1,qt=!1;if(this._resized){let Xt=ne.I(this._domNode);if(Xt>Lt){this._domNode.style.maxWidth=`${ke-28-Ve-15}px`,this._replaceInput.width=ne.I(this._findInput.domNode);return}}if(Lt+28+Ve>=ke&&(Et=!0),Lt+28+Ve-Tt>=ke&&(qt=!0),Lt+28+Ve-Tt>=ke+50&&(ct=!0),this._domNode.classList.toggle("collapsed-find-widget",ct),this._domNode.classList.toggle("narrow-find-widget",qt),this._domNode.classList.toggle("reduced-find-widget",Et),!qt&&!ct&&(this._domNode.style.maxWidth=`${ke-28-Ve-15}px`),this._resized){this._findInput.inputBox.layout();let Xt=this._findInput.inputBox.element.clientWidth;Xt>0&&(this._replaceInput.width=Xt)}else this._isReplaceVisible&&(this._replaceInput.width=ne.I(this._findInput.domNode))}_getHeight(){let X=0;return X+=4,X+=this._findInput.inputBox.height+2,this._isReplaceVisible&&(X+=4,X+=this._replaceInput.inputBox.height+2),X+=4,X}_tryUpdateHeight(){const X=this._getHeight();return this._cachedHeight!==null&&this._cachedHeight===X?!1:(this._cachedHeight=X,this._domNode.style.height=`${X}px`,!0)}focusFindInput(){this._findInput.select(),this._findInput.focus()}focusReplaceInput(){this._replaceInput.select(),this._replaceInput.focus()}highlightFindOptions(){this._findInput.highlightFindOptions()}_updateSearchScope(){if(!this._codeEditor.hasModel())return;if(this._toggleSelectionFind.checked){let X=this._codeEditor.getSelections();X.map(Ee=>{Ee.endColumn===1&&Ee.endLineNumber>Ee.startLineNumber&&(Ee=Ee.setEndPosition(Ee.endLineNumber-1,this._codeEditor.getModel().getLineMaxColumn(Ee.endLineNumber-1)));const ke=this._state.currentMatch;return Ee.startLineNumber!==Ee.endLineNumber&&!f.a.equalsRange(Ee,ke)?Ee:null}).filter(Ee=>!!Ee),X.length&&this._state.change({searchScope:X},!0)}}_onFindInputMouseDown(X){X.middleButton&&X.stopPropagation()}_onFindInputKeyDown(X){if(X.equals(vo|3))if(this._keybindingService.dispatchEvent(X,X.target)){X.preventDefault();return}else{this._findInput.inputBox.insertAtCursor(` `),X.preventDefault();return}if(X.equals(2)){this._isReplaceVisible?this._replaceInput.focus():this._findInput.focusOnCaseSensitive(),X.preventDefault();return}if(X.equals(2048|18)){this._codeEditor.focus(),X.preventDefault();return}if(X.equals(16))return Oo(X,this._findInput.getValue(),this._findInput.domNode.querySelector("textarea"));if(X.equals(18))return Uo(X,this._findInput.getValue(),this._findInput.domNode.querySelector("textarea"))}_onReplaceInputKeyDown(X){if(X.equals(vo|3))if(this._keybindingService.dispatchEvent(X,X.target)){X.preventDefault();return}else{rt.i&&rt.g&&!this._ctrlEnterReplaceAllWarningPrompted&&(this._notificationService.info(Ne.a("ctrlEnter.keybindingChanged","Ctrl+Enter now inserts line break instead of replacing all. You can modify the keybinding for editor.action.replaceAll to override this behavior.")),this._ctrlEnterReplaceAllWarningPrompted=!0,this._storageService.store(fo,!0,0,0)),this._replaceInput.inputBox.insertAtCursor(` `),X.preventDefault();return}if(X.equals(2)){this._findInput.focusOnCaseSensitive(),X.preventDefault();return}if(X.equals(1024|2)){this._findInput.focus(),X.preventDefault();return}if(X.equals(2048|18)){this._codeEditor.focus(),X.preventDefault();return}if(X.equals(16))return Oo(X,this._replaceInput.inputBox.value,this._replaceInput.inputBox.element.querySelector("textarea"));if(X.equals(18))return Uo(X,this._replaceInput.inputBox.value,this._replaceInput.inputBox.element.querySelector("textarea"))}getVerticalSashLeft(X){return 0}_keybindingLabelFor(X){let Ee=this._keybindingService.lookupKeybinding(X);return Ee?` (${Ee.getLabel()})`:""}_buildDomNode(){const X=!0,Ee=!0;this._findInput=this._register(new mt(null,this._contextViewProvider,{width:Ft,label:uo,placeholder:Zt,appendCaseSensitiveLabel:this._keybindingLabelFor(te.ToggleCaseSensitiveCommand),appendWholeWordsLabel:this._keybindingLabelFor(te.ToggleWholeWordCommand),appendRegexLabel:this._keybindingLabelFor(te.ToggleRegexCommand),validation:Xt=>{if(Xt.length===0||!this._findInput.getRegex())return null;try{return new RegExp(Xt,"gu"),null}catch(Yt){return{content:Yt.message}}},flexibleHeight:X,flexibleWidth:Ee,flexibleMaxHeight:118,showHistoryHint:()=>qe(this._keybindingService)},this._contextKeyService,!0)),this._findInput.setRegex(!!this._state.isRegex),this._findInput.setCaseSensitive(!!this._state.matchCase),this._findInput.setWholeWords(!!this._state.wholeWord),this._register(this._findInput.onKeyDown(Xt=>this._onFindInputKeyDown(Xt))),this._register(this._findInput.inputBox.onDidChange(()=>{if(this._ignoreChangeEvent)return;this._state.change({searchString:this._findInput.getValue()},!0)})),this._register(this._findInput.onDidOptionChange(()=>{this._state.change({isRegex:this._findInput.getRegex(),wholeWord:this._findInput.getWholeWords(),matchCase:this._findInput.getCaseSensitive()},!0)})),this._register(this._findInput.onCaseSensitiveKeyDown(Xt=>{Xt.equals(1024|2)&&(this._isReplaceVisible&&(this._replaceInput.focus(),Xt.preventDefault()))})),this._register(this._findInput.onRegexKeyDown(Xt=>{Xt.equals(2)&&(this._isReplaceVisible&&(this._replaceInput.focusOnPreserve(),Xt.preventDefault()))})),this._register(this._findInput.inputBox.onDidHeightChange(Xt=>{this._tryUpdateHeight()&&this._showViewZone()})),rt.d&&this._register(this._findInput.onMouseDown(Xt=>this._onFindInputMouseDown(Xt))),this._matchesCount=document.createElement("div"),this._matchesCount.className="matchesCount",this._updateMatchesCount(),this._prevBtn=this._register(new ii({label:zt+this._keybindingLabelFor(te.PreviousMatchFindAction),icon:Bt,onTrigger:()=>{this._codeEditor.getAction(te.PreviousMatchFindAction).run().then(void 0,nt.f)}})),this._nextBtn=this._register(new ii({label:ut+this._keybindingLabelFor(te.NextMatchFindAction),icon:$t,onTrigger:()=>{this._codeEditor.getAction(te.NextMatchFindAction).run().then(void 0,nt.f)}}));let ke=document.createElement("div");ke.className="find-part",ke.appendChild(this._findInput.domNode);const Ve=document.createElement("div");Ve.className="find-actions",ke.appendChild(Ve),Ve.appendChild(this._matchesCount),Ve.appendChild(this._prevBtn.domNode),Ve.appendChild(this._nextBtn.domNode),this._toggleSelectionFind=this._register(new De({icon:$e,title:Ct+this._keybindingLabelFor(te.ToggleSearchScopeCommand),isChecked:!1})),this._register(this._toggleSelectionFind.onChange(()=>{if(this._toggleSelectionFind.checked){if(this._codeEditor.hasModel()){let Xt=this._codeEditor.getSelections();Xt.map(Yt=>(Yt.endColumn===1&&Yt.endLineNumber>Yt.startLineNumber&&(Yt=Yt.setEndPosition(Yt.endLineNumber-1,this._codeEditor.getModel().getLineMaxColumn(Yt.endLineNumber-1))),Yt.isEmpty()?null:Yt)).filter(Yt=>!!Yt),Xt.length&&this._state.change({searchScope:Xt},!0)}}else this._state.change({searchScope:null},!0)})),Ve.appendChild(this._toggleSelectionFind.domNode),this._closeBtn=this._register(new ii({label:We+this._keybindingLabelFor(te.CloseFindWidgetCommand),icon:tt.c,onTrigger:()=>{this._state.change({isRevealed:!1,searchScope:null},!1)},onKeyDown:Xt=>{Xt.equals(2)&&(this._isReplaceVisible&&(this._replaceBtn.isEnabled()?this._replaceBtn.focus():this._codeEditor.focus(),Xt.preventDefault()))}})),Ve.appendChild(this._closeBtn.domNode),this._replaceInput=this._register(new Gt(null,void 0,{label:he,placeholder:Me,appendPreserveCaseLabel:this._keybindingLabelFor(te.TogglePreserveCaseCommand),history:[],flexibleHeight:X,flexibleWidth:Ee,flexibleMaxHeight:118,showHistoryHint:()=>qe(this._keybindingService)},this._contextKeyService,!0)),this._replaceInput.setPreserveCase(!!this._state.preserveCase),this._register(this._replaceInput.onKeyDown(Xt=>this._onReplaceInputKeyDown(Xt))),this._register(this._replaceInput.inputBox.onDidChange(()=>{this._state.change({replaceString:this._replaceInput.inputBox.value},!1)})),this._register(this._replaceInput.inputBox.onDidHeightChange(Xt=>{this._isReplaceVisible&&this._tryUpdateHeight()&&this._showViewZone()})),this._register(this._replaceInput.onDidOptionChange(()=>{this._state.change({preserveCase:this._replaceInput.getPreserveCase()},!0)})),this._register(this._replaceInput.onPreserveCaseKeyDown(Xt=>{Xt.equals(2)&&(this._prevBtn.isEnabled()?this._prevBtn.focus():this._nextBtn.isEnabled()?this._nextBtn.focus():this._toggleSelectionFind.enabled?this._toggleSelectionFind.focus():this._closeBtn.isEnabled()&&this._closeBtn.focus(),Xt.preventDefault())})),this._replaceBtn=this._register(new ii({label:ue+this._keybindingLabelFor(te.ReplaceOneAction),icon:Ye,onTrigger:()=>{this._controller.replace()},onKeyDown:Xt=>{Xt.equals(1024|2)&&(this._closeBtn.focus(),Xt.preventDefault())}})),this._replaceAllBtn=this._register(new ii({label:ae+this._keybindingLabelFor(te.ReplaceAllAction),icon:Mt,onTrigger:()=>{this._controller.replaceAll()}}));let ct=document.createElement("div");ct.className="replace-part",ct.appendChild(this._replaceInput.domNode);const Et=document.createElement("div");Et.className="replace-actions",ct.appendChild(Et),Et.appendChild(this._replaceBtn.domNode),Et.appendChild(this._replaceAllBtn.domNode),this._toggleReplaceBtn=this._register(new ii({label:Re,className:"codicon toggle left",onTrigger:()=>{this._state.change({isReplaceRevealed:!this._isReplaceVisible},!1),this._isReplaceVisible&&(this._replaceInput.width=ne.I(this._findInput.domNode),this._replaceInput.inputBox.layout()),this._showViewZone()}})),this._toggleReplaceBtn.setExpanded(this._isReplaceVisible),this._domNode=document.createElement("div"),this._domNode.className="editor-widget find-widget",this._domNode.setAttribute("aria-hidden","true"),this._domNode.style.width=`${Lt}px`,this._domNode.appendChild(this._toggleReplaceBtn.domNode),this._domNode.appendChild(ke),this._domNode.appendChild(ct),this._resizeSash=new st.b(this._domNode,this,{orientation:0,size:2}),this._resized=!1;let qt=Lt;this._register(this._resizeSash.onDidStart(()=>{qt=ne.I(this._domNode)})),this._register(this._resizeSash.onDidChange(Xt=>{this._resized=!0;let Yt=qt+Xt.startX-Xt.currentX;if(Ytgo)return;this._domNode.style.width=`${Yt}px`,this._isReplaceVisible&&(this._replaceInput.width=ne.I(this._findInput.domNode)),this._findInput.inputBox.layout(),this._tryUpdateHeight()})),this._register(this._resizeSash.onDidReset(()=>{const Xt=ne.I(this._domNode);if(Xt{this._opts.onTrigger(),ke.preventDefault()}),this.onkeydown(this._domNode,ke=>{if(ke.equals(10)||ke.equals(3)){this._opts.onTrigger(),ke.preventDefault();return}this._opts.onKeyDown&&this._opts.onKeyDown(ke)})}get domNode(){return this._domNode}isEnabled(){return this._domNode.tabIndex>=0}focus(){this._domNode.focus()}setEnabled(X){this._domNode.classList.toggle("disabled",!X),this._domNode.setAttribute("aria-disabled",String(!X)),this._domNode.tabIndex=X?0:-1}setExpanded(X){this._domNode.setAttribute("aria-expanded",String(!!X)),X?(this._domNode.classList.remove(...b.d.asClassNameArray(je)),this._domNode.classList.add(...b.d.asClassNameArray(Ue))):(this._domNode.classList.remove(...b.d.asClassNameArray(Ue)),this._domNode.classList.add(...b.d.asClassNameArray(je)))}}Object(b.f)((X,Ee)=>{const ke=(St,It)=>{It&&Ee.addRule(`.monaco-editor ${St} { background-color: ${It}; }`)};ke(".findMatch",X.getColor(n.x)),ke(".currentFindMatch",X.getColor(n.v)),ke(".findScope",X.getColor(n.z));const Ve=X.getColor(n.cb);ke(".find-widget",Ve);const ct=X.getColor(n.Tc);ct&&Ee.addRule(`.monaco-editor .find-widget { box-shadow: 0 0 8px 2px ${ct}; }`);const Et=X.getColor(n.y);Et&&Ee.addRule(`.monaco-editor .findMatch { border: 1px ${X.type==="hc"?"dotted":"solid"} ${Et}; box-sizing: border-box; }`);const qt=X.getColor(n.w);qt&&Ee.addRule(`.monaco-editor .currentFindMatch { border: 2px solid ${qt}; padding: 1px; box-sizing: border-box; }`);const Xt=X.getColor(n.A);Xt&&Ee.addRule(`.monaco-editor .findScope { border: 1px ${X.type==="hc"?"dashed":"solid"} ${Xt}; }`);const Yt=X.getColor(n.h);Yt&&Ee.addRule(`.monaco-editor .find-widget { border: 1px solid ${Yt}; }`);const go=X.getColor(n.eb);go&&Ee.addRule(`.monaco-editor .find-widget { color: ${go}; }`);const F=X.getColor(n.gb);F&&Ee.addRule(`.monaco-editor .find-widget.no-results .matchesCount { color: ${F}; }`);const J=X.getColor(n.fb);if(J)Ee.addRule(`.monaco-editor .find-widget .monaco-sash { background-color: ${J}; }`);else{const St=X.getColor(n.db);St&&Ee.addRule(`.monaco-editor .find-widget .monaco-sash { background-color: ${St}; }`)}const Fe=X.getColor(n.Qc);Fe&&Ee.addRule(` .monaco-editor .find-widget .button:not(.disabled):hover, .monaco-editor .find-widget .codicon-find-selection:hover { background-color: ${Fe} !important; } `);const Ze=X.getColor(n.hb);Ze&&Ee.addRule(`.monaco-editor .find-widget .monaco-inputbox.synthetic-focus { outline-color: ${Ze}; }`)});var $o=e("fjLI"),Ri=e("9XeP"),xi=e("Uzvx"),Ni=e("bexQ"),ji=e("sM1p"),Li=e("A+jI"),ki=function(X,Ee,ke,Ve){var ct=arguments.length,Et=ct<3?Ee:Ve===null?Ve=Object.getOwnPropertyDescriptor(Ee,ke):Ve,qt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Et=Reflect.decorate(X,Ee,ke,Ve);else for(var Xt=X.length-1;Xt>=0;Xt--)(qt=X[Xt])&&(Et=(ct<3?qt(Et):ct>3?qt(Ee,ke,Et):qt(Ee,ke))||Et);return ct>3&&Et&&Object.defineProperty(Ee,ke,Et),Et},Hi=function(X,Ee){return function(ke,Ve){Ee(ke,Ve,X)}},ni=function(X,Ee,ke,Ve){function ct(Et){return Et instanceof ke?Et:new ke(function(qt){qt(Et)})}return new(ke||(ke=Promise))(function(Et,qt){function Xt(F){try{go(Ve.next(F))}catch(J){qt(J)}}function Yt(F){try{go(Ve.throw(F))}catch(J){qt(J)}}function go(F){F.done?Et(F.value):ct(F.value).then(Xt,Yt)}go((Ve=Ve.apply(X,Ee||[])).next())})};const tn=524288;function Yi(X,Ee="single",ke=!1){if(!X.hasModel())return null;const Ve=X.getSelection();if(Ee==="single"&&Ve.startLineNumber===Ve.endLineNumber||Ee==="multiple"){if(Ve.isEmpty()){const ct=X.getConfiguredWordAtPosition(Ve.getStartPosition());if(ct&&ke===!1)return ct.word}else if(X.getModel().getValueLengthInRange(Ve)this._onStateChanged(Et))),this._model=null,this._register(this._editor.onDidChangeModel(()=>{let Et=this._editor.getModel()&&this._state.isRevealed;this.disposeModel(),this._state.change({searchScope:null,matchCase:this._storageService.getBoolean("editor.matchCase",1,!1),wholeWord:this._storageService.getBoolean("editor.wholeWord",1,!1),isRegex:this._storageService.getBoolean("editor.isRegex",1,!1),preserveCase:this._storageService.getBoolean("editor.preserveCase",1,!1)},!1),Et&&this._start({forceRevealReplace:!1,seedSearchStringFromSelection:"none",seedSearchStringFromNonEmptySelection:!1,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!1,updateSearchScope:!1,loop:this._editor.getOption(35).loop})}))}get editor(){return this._editor}static get(Ee){return Ee.getContribution(X.ID)}dispose(){this.disposeModel(),super.dispose()}disposeModel(){this._model&&(this._model.dispose(),this._model=null)}_onStateChanged(Ee){this.saveQueryState(Ee),Ee.isRevealed&&(this._state.isRevealed?this._findWidgetVisible.set(!0):(this._findWidgetVisible.reset(),this.disposeModel())),Ee.searchString&&this.setGlobalBufferTerm(this._state.searchString)}saveQueryState(Ee){Ee.isRegex&&this._storageService.store("editor.isRegex",this._state.actualIsRegex,1,0),Ee.wholeWord&&this._storageService.store("editor.wholeWord",this._state.actualWholeWord,1,0),Ee.matchCase&&this._storageService.store("editor.matchCase",this._state.actualMatchCase,1,0),Ee.preserveCase&&this._storageService.store("editor.preserveCase",this._state.actualPreserveCase,1,0)}loadQueryState(){this._state.change({matchCase:this._storageService.getBoolean("editor.matchCase",1,this._state.matchCase),wholeWord:this._storageService.getBoolean("editor.wholeWord",1,this._state.wholeWord),isRegex:this._storageService.getBoolean("editor.isRegex",1,this._state.isRegex),preserveCase:this._storageService.getBoolean("editor.preserveCase",1,this._state.preserveCase)},!1)}isFindInputFocused(){return!!Y.getValue(this._contextKeyService)}getState(){return this._state}closeFindWidget(){this._state.change({isRevealed:!1,searchScope:null},!1),this._editor.focus()}toggleCaseSensitive(){this._state.change({matchCase:!this._state.matchCase},!1),this._state.isRevealed||this.highlightFindOptions()}toggleWholeWords(){this._state.change({wholeWord:!this._state.wholeWord},!1),this._state.isRevealed||this.highlightFindOptions()}toggleRegex(){this._state.change({isRegex:!this._state.isRegex},!1),this._state.isRevealed||this.highlightFindOptions()}togglePreserveCase(){this._state.change({preserveCase:!this._state.preserveCase},!1),this._state.isRevealed||this.highlightFindOptions()}toggleSearchScope(){if(this._state.searchScope)this._state.change({searchScope:null},!0);else if(this._editor.hasModel()){let Ee=this._editor.getSelections();Ee.map(ke=>(ke.endColumn===1&&ke.endLineNumber>ke.startLineNumber&&(ke=ke.setEndPosition(ke.endLineNumber-1,this._editor.getModel().getLineMaxColumn(ke.endLineNumber-1))),ke.isEmpty()?null:ke)).filter(ke=>!!ke),Ee.length&&this._state.change({searchScope:Ee},!0)}}setSearchString(Ee){this._state.isRegex&&(Ee=L.t(Ee)),this._state.change({searchString:Ee},!1)}highlightFindOptions(Ee=!1){}_start(Ee){return ni(this,void 0,void 0,function*(){if(this.disposeModel(),!this._editor.hasModel())return;let ke={isRevealed:!0};if(Ee.seedSearchStringFromSelection==="single"){let Ve=Yi(this._editor,Ee.seedSearchStringFromSelection,Ee.seedSearchStringFromNonEmptySelection);Ve&&(this._state.isRegex?ke.searchString=L.t(Ve):ke.searchString=Ve)}else if(Ee.seedSearchStringFromSelection==="multiple"&&!Ee.updateSearchScope){let Ve=Yi(this._editor,Ee.seedSearchStringFromSelection);Ve&&(ke.searchString=Ve)}if(!ke.searchString&&Ee.seedSearchStringFromGlobalClipboard){let Ve=yield this.getGlobalBufferTerm();if(!this._editor.hasModel())return;Ve&&(ke.searchString=Ve)}if(Ee.forceRevealReplace?ke.isReplaceRevealed=!0:this._findWidgetVisible.get()||(ke.isReplaceRevealed=!1),Ee.updateSearchScope){let Ve=this._editor.getSelections();Ve.some(ct=>!ct.isEmpty())&&(ke.searchScope=Ve)}ke.loop=Ee.loop,this._state.change(ke,!1),this._model||(this._model=new W(this._editor,this._state))})}start(Ee){return this._start(Ee)}moveToNextMatch(){return this._model?(this._model.moveToNextMatch(),!0):!1}moveToPrevMatch(){return this._model?(this._model.moveToPrevMatch(),!0):!1}replace(){return this._model?(this._model.replace(),!0):!1}replaceAll(){return this._model?(this._model.replaceAll(),!0):!1}selectAllMatches(){return this._model?(this._model.selectAllMatches(),this._editor.focus(),!0):!1}getGlobalBufferTerm(){return ni(this,void 0,void 0,function*(){return this._editor.getOption(35).globalFindClipboard&&this._editor.hasModel()&&!this._editor.getModel().isTooLargeForSyncing()?this._clipboardService.readFindText():""})}setGlobalBufferTerm(Ee){this._editor.getOption(35).globalFindClipboard&&this._editor.hasModel()&&!this._editor.getModel().isTooLargeForSyncing()&&this._clipboardService.writeFindText(Ee)}};bi.ID="editor.contrib.findController",bi=ki([Hi(1,B.b),Hi(2,Li.a),Hi(3,Ri.a)],bi);let Pi=class extends bi{constructor(Ee,ke,Ve,ct,Et,qt,Xt,Yt){super(Ee,Ve,Xt,Yt);this._contextViewService=ke,this._keybindingService=ct,this._themeService=Et,this._notificationService=qt,this._widget=null,this._findOptionsWidget=null}_start(Ee){const ke=Object.create(null,{_start:{get:()=>super._start}});return ni(this,void 0,void 0,function*(){this._widget||this._createFindWidget();const Ve=this._editor.getSelection();let ct=!1;switch(this._editor.getOption(35).autoFindInSelection){case"always":ct=!0;break;case"never":ct=!1;break;case"multiline":const Et=!!Ve&&Ve.startLineNumber!==Ve.endLineNumber;ct=Et;break;default:break}Ee.updateSearchScope=ct,yield ke._start.call(this,Ee),this._widget&&(Ee.shouldFocus===2?this._widget.focusReplaceInput():Ee.shouldFocus===1&&this._widget.focusFindInput())})}highlightFindOptions(Ee=!1){this._widget||this._createFindWidget(),this._state.isRevealed&&!Ee?this._widget.highlightFindOptions():this._findOptionsWidget.highlightFindOptions()}_createFindWidget(){this._widget=this._register(new Zo(this._editor,this,this._state,this._contextViewService,this._keybindingService,this._contextKeyService,this._themeService,this._storageService,this._notificationService)),this._findOptionsWidget=this._register(new ze(this._editor,this._state,this._keybindingService,this._themeService))}};Pi=ki([Hi(1,xi.b),Hi(2,B.b),Hi(3,Ni.a),Hi(4,b.b),Hi(5,ji.a),Hi(6,Li.a),Hi(7,Ri.a)],Pi);const Ii=Object(A.p)(new A.f({id:te.StartFindAction,label:Ne.a("startFindAction","Find"),alias:"Find",precondition:B.a.or(I.a.focus,B.a.has("editorIsOpen")),kbOpts:{kbExpr:null,primary:2048|36,weight:100},menuOpts:{menuId:$o.b.MenubarEditMenu,group:"3_find",title:Ne.a({key:"miFind",comment:["&& denotes a mnemonic"]},"&&Find"),order:1}}));Ii.addImplementation(0,(X,Ee,ke)=>{const Ve=bi.get(Ee);return Ve?Ve.start({forceRevealReplace:!1,seedSearchStringFromSelection:Ee.getOption(35).seedSearchStringFromSelection!=="never"?"single":"none",seedSearchStringFromNonEmptySelection:Ee.getOption(35).seedSearchStringFromSelection==="selection",seedSearchStringFromGlobalClipboard:Ee.getOption(35).globalFindClipboard,shouldFocus:1,shouldAnimate:!0,updateSearchScope:!1,loop:Ee.getOption(35).loop}):!1});class Si extends A.b{constructor(){super({id:te.StartFindWithSelection,label:Ne.a("startFindWithSelectionAction","Find With Selection"),alias:"Find With Selection",precondition:void 0,kbOpts:{kbExpr:null,primary:0,mac:{primary:2048|35},weight:100}})}run(X,Ee){return ni(this,void 0,void 0,function*(){let ke=bi.get(Ee);ke&&(yield ke.start({forceRevealReplace:!1,seedSearchStringFromSelection:"multiple",seedSearchStringFromNonEmptySelection:!1,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1,loop:Ee.getOption(35).loop}),ke.setGlobalBufferTerm(ke.getState().searchString))})}}class Xi extends A.b{run(X,Ee){return ni(this,void 0,void 0,function*(){let ke=bi.get(Ee);ke&&!this._run(ke)&&(yield ke.start({forceRevealReplace:!1,seedSearchStringFromSelection:ke.getState().searchString.length===0&&Ee.getOption(35).seedSearchStringFromSelection!=="never"?"single":"none",seedSearchStringFromNonEmptySelection:Ee.getOption(35).seedSearchStringFromSelection==="selection",seedSearchStringFromGlobalClipboard:!0,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1,loop:Ee.getOption(35).loop}),this._run(ke))})}}class Ci extends Xi{constructor(){super({id:te.NextMatchFindAction,label:Ne.a("findNextMatchAction","Find Next"),alias:"Find Next",precondition:void 0,kbOpts:[{kbExpr:I.a.focus,primary:61,mac:{primary:2048|37,secondary:[61]},weight:100},{kbExpr:B.a.and(I.a.focus,Y),primary:3,weight:100}]})}_run(X){const Ee=X.moveToNextMatch();return Ee?(X.editor.pushUndoStop(),!0):!1}}class rn extends Xi{constructor(){super({id:te.PreviousMatchFindAction,label:Ne.a("findPreviousMatchAction","Find Previous"),alias:"Find Previous",precondition:void 0,kbOpts:[{kbExpr:I.a.focus,primary:1024|61,mac:{primary:2048|1024|37,secondary:[1024|61]},weight:100},{kbExpr:B.a.and(I.a.focus,Y),primary:1024|3,weight:100}]})}_run(X){return X.moveToPrevMatch()}}class on extends A.b{run(X,Ee){return ni(this,void 0,void 0,function*(){let ke=bi.get(Ee);if(!ke)return;const Ve=Ee.getOption(35).seedSearchStringFromSelection==="selection";let ct=null;Ee.getOption(35).seedSearchStringFromSelection!=="never"&&(ct=Yi(Ee,"single",Ve)),ct&&ke.setSearchString(ct),this._run(ke)||(yield ke.start({forceRevealReplace:!1,seedSearchStringFromSelection:Ee.getOption(35).seedSearchStringFromSelection!=="never"?"single":"none",seedSearchStringFromNonEmptySelection:Ve,seedSearchStringFromGlobalClipboard:!1,shouldFocus:0,shouldAnimate:!0,updateSearchScope:!1,loop:Ee.getOption(35).loop}),this._run(ke))})}}class Fi extends on{constructor(){super({id:te.NextSelectionMatchFindAction,label:Ne.a("nextSelectionMatchFindAction","Find Next Selection"),alias:"Find Next Selection",precondition:void 0,kbOpts:{kbExpr:I.a.focus,primary:2048|61,weight:100}})}_run(X){return X.moveToNextMatch()}}class Bi extends on{constructor(){super({id:te.PreviousSelectionMatchFindAction,label:Ne.a("previousSelectionMatchFindAction","Find Previous Selection"),alias:"Find Previous Selection",precondition:void 0,kbOpts:{kbExpr:I.a.focus,primary:2048|1024|61,weight:100}})}_run(X){return X.moveToPrevMatch()}}const vt=Object(A.p)(new A.f({id:te.StartFindReplaceAction,label:Ne.a("startReplace","Replace"),alias:"Replace",precondition:B.a.or(I.a.focus,B.a.has("editorIsOpen")),kbOpts:{kbExpr:null,primary:2048|38,mac:{primary:2048|512|36},weight:100},menuOpts:{menuId:$o.b.MenubarEditMenu,group:"3_find",title:Ne.a({key:"miReplace",comment:["&& denotes a mnemonic"]},"&&Replace"),order:2}}));vt.addImplementation(0,(X,Ee,ke)=>{if(!Ee.hasModel()||Ee.getOption(80))return!1;const Ve=bi.get(Ee);if(!Ve)return!1;const ct=Ee.getSelection(),Et=Ve.isFindInputFocused(),qt=!ct.isEmpty()&&ct.startLineNumber===ct.endLineNumber&&Ee.getOption(35).seedSearchStringFromSelection!=="never"&&!Et,Xt=Et||qt?2:1;return Ve.start({forceRevealReplace:!0,seedSearchStringFromSelection:qt?"single":"none",seedSearchStringFromNonEmptySelection:Ee.getOption(35).seedSearchStringFromSelection==="selection",seedSearchStringFromGlobalClipboard:Ee.getOption(35).seedSearchStringFromSelection!=="never",shouldFocus:Xt,shouldAnimate:!0,updateSearchScope:!1,loop:Ee.getOption(35).loop})}),Object(A.l)(bi.ID,Pi),Object(A.j)(Si),Object(A.j)(Ci),Object(A.j)(rn),Object(A.j)(Fi),Object(A.j)(Bi);const Xe=A.c.bindToContribution(bi.get);Object(A.k)(new Xe({id:te.CloseFindWidgetCommand,precondition:z,handler:X=>X.closeFindWidget(),kbOpts:{weight:100+5,kbExpr:B.a.and(I.a.focus,B.a.not("isComposing")),primary:9,secondary:[1024|9]}})),Object(A.k)(new Xe({id:te.ToggleCaseSensitiveCommand,precondition:void 0,handler:X=>X.toggleCaseSensitive(),kbOpts:{weight:100+5,kbExpr:I.a.focus,primary:Q.primary,mac:Q.mac,win:Q.win,linux:Q.linux}})),Object(A.k)(new Xe({id:te.ToggleWholeWordCommand,precondition:void 0,handler:X=>X.toggleWholeWords(),kbOpts:{weight:100+5,kbExpr:I.a.focus,primary:ee.primary,mac:ee.mac,win:ee.win,linux:ee.linux}})),Object(A.k)(new Xe({id:te.ToggleRegexCommand,precondition:void 0,handler:X=>X.toggleRegex(),kbOpts:{weight:100+5,kbExpr:I.a.focus,primary:Se.primary,mac:Se.mac,win:Se.win,linux:Se.linux}})),Object(A.k)(new Xe({id:te.ToggleSearchScopeCommand,precondition:void 0,handler:X=>X.toggleSearchScope(),kbOpts:{weight:100+5,kbExpr:I.a.focus,primary:fe.primary,mac:fe.mac,win:fe.win,linux:fe.linux}})),Object(A.k)(new Xe({id:te.TogglePreserveCaseCommand,precondition:void 0,handler:X=>X.togglePreserveCase(),kbOpts:{weight:100+5,kbExpr:I.a.focus,primary:q.primary,mac:q.mac,win:q.win,linux:q.linux}})),Object(A.k)(new Xe({id:te.ReplaceOneAction,precondition:z,handler:X=>X.replace(),kbOpts:{weight:100+5,kbExpr:I.a.focus,primary:2048|1024|22}})),Object(A.k)(new Xe({id:te.ReplaceOneAction,precondition:z,handler:X=>X.replace(),kbOpts:{weight:100+5,kbExpr:B.a.and(I.a.focus,K),primary:3}})),Object(A.k)(new Xe({id:te.ReplaceAllAction,precondition:z,handler:X=>X.replaceAll(),kbOpts:{weight:100+5,kbExpr:I.a.focus,primary:2048|512|3}})),Object(A.k)(new Xe({id:te.ReplaceAllAction,precondition:z,handler:X=>X.replaceAll(),kbOpts:{weight:100+5,kbExpr:B.a.and(I.a.focus,K),primary:void 0,mac:{primary:2048|3}}})),Object(A.k)(new Xe({id:te.SelectAllMatchesAction,precondition:z,handler:X=>X.selectAllMatches(),kbOpts:{weight:100+5,kbExpr:I.a.focus,primary:512|3}}))},oiKk:function(ft,w,e){"use strict";e.r(w),e.d(w,"IPadShowKeyboard",function(){return O});var h=e("ci+S"),P=e.n(h),L=e("EffR"),A=e("pmY6"),I=e("sswD"),k=e("MNsG");class O extends A.a{constructor(f){super();this.editor=f,this.widget=null,k.c&&(this._register(f.onDidChangeConfiguration(()=>this.update())),this.update())}update(){const f=!this.editor.getOption(80);!this.widget&&f?this.widget=new S(this.editor):this.widget&&!f&&(this.widget.dispose(),this.widget=null)}dispose(){super.dispose(),this.widget&&(this.widget.dispose(),this.widget=null)}}O.ID="editor.contrib.iPadShowKeyboard";class S extends A.a{constructor(f){super();this.editor=f,this._domNode=document.createElement("textarea"),this._domNode.className="iPadShowKeyboard",this._register(L.i(this._domNode,"touchstart",u=>{this.editor.focus()})),this._register(L.i(this._domNode,"focus",u=>{this.editor.focus()})),this.editor.addOverlayWidget(this)}dispose(){this.editor.removeOverlayWidget(this),super.dispose()}getId(){return S.ID}getDomNode(){return this._domNode}getPosition(){return{preference:1}}}S.ID="editor.contrib.ShowKeyboardWidget",Object(I.l)(O.ID,O)},p3Ex:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"csharp",extensions:[".cs",".csx",".cake"],aliases:["C#","csharp"],loader:function(){return e.e(329).then(e.bind(null,"/Om3"))}})},p5tG:function(ft,w,e){"use strict";e.r(w),e.d(w,"jsonDefaults",function(){return O});var h=e("M/lh"),P=e.n(h),L=e("CriS"),A=function(){function f(u,d,E){this._onDidChange=new L.Emitter,this._languageId=u,this.setDiagnosticsOptions(d),this.setModeConfiguration(E)}return Object.defineProperty(f.prototype,"onDidChange",{get:function(){return this._onDidChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(f.prototype,"languageId",{get:function(){return this._languageId},enumerable:!1,configurable:!0}),Object.defineProperty(f.prototype,"modeConfiguration",{get:function(){return this._modeConfiguration},enumerable:!1,configurable:!0}),Object.defineProperty(f.prototype,"diagnosticsOptions",{get:function(){return this._diagnosticsOptions},enumerable:!1,configurable:!0}),f.prototype.setDiagnosticsOptions=function(u){this._diagnosticsOptions=u||Object.create(null),this._onDidChange.fire(this)},f.prototype.setModeConfiguration=function(u){this._modeConfiguration=u||Object.create(null),this._onDidChange.fire(this)},f}(),I={validate:!0,allowComments:!0,schemas:[],enableSchemaRequest:!1,schemaRequest:"warning",schemaValidation:"warning",comments:"error",trailingCommas:"error"},k={documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!0,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0},O=new A("json",I,k);L.languages.json={jsonDefaults:O};function S(){return e.e(320).then(e.bind(null,"R7lK"))}L.languages.register({id:"json",extensions:[".json",".bowerrc",".jshintrc",".jscsrc",".eslintrc",".babelrc",".har"],aliases:["JSON","json"],mimetypes:["application/json"]}),L.languages.onLanguage("json",function(){S().then(function(f){return f.setupMode(O)})})},pAvP:function(ft,w,e){"use strict";e.d(w,"a",function(){return L});var h=e("Cg/j");const P="editorWorkerService",L=Object(h.c)(P)},pI2L:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"redshift",extensions:[],aliases:["Redshift","redshift"],loader:function(){return e.e(373).then(e.bind(null,"KpXS"))}})},pg8w:function(ft,w,e){"use strict";e.d(w,"a",function(){return k}),e.d(w,"b",function(){return O});var h=e("EffR"),P=e("6OMU"),L=e("ZCR3"),A=e("pmY6"),I=function(S,f,u,d){var E=arguments.length,p=E<3?f:d===null?d=Object.getOwnPropertyDescriptor(f,u):d,n;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")p=Reflect.decorate(S,f,u,d);else for(var b=S.length-1;b>=0;b--)(n=S[b])&&(p=(E<3?n(p):E>3?n(f,u,p):n(f,u))||p);return E>3&&p&&Object.defineProperty(f,u,p),p},k;(function(S){S.Tap="-monaco-gesturetap",S.Change="-monaco-gesturechange",S.Start="-monaco-gesturestart",S.End="-monaco-gesturesend",S.Contextmenu="-monaco-gesturecontextmenu"})(k||(k={}));class O extends A.a{constructor(){super();this.dispatched=!1,this.activeTouches={},this.handle=null,this.targets=[],this.ignoreTargets=[],this._lastSetTapCountTime=0,this._register(h.i(document,"touchstart",S=>this.onTouchStart(S),{passive:!1})),this._register(h.i(document,"touchend",S=>this.onTouchEnd(S))),this._register(h.i(document,"touchmove",S=>this.onTouchMove(S),{passive:!1}))}static addTarget(S){return O.isTouchDevice()?(O.INSTANCE||(O.INSTANCE=new O),O.INSTANCE.targets.push(S),{dispose:()=>{O.INSTANCE.targets=O.INSTANCE.targets.filter(f=>f!==S)}}):A.a.None}static ignoreTarget(S){return O.isTouchDevice()?(O.INSTANCE||(O.INSTANCE=new O),O.INSTANCE.ignoreTargets.push(S),{dispose:()=>{O.INSTANCE.ignoreTargets=O.INSTANCE.ignoreTargets.filter(f=>f!==S)}}):A.a.None}static isTouchDevice(){return"ontouchstart"in window||navigator.maxTouchPoints>0}dispose(){this.handle&&(this.handle.dispose(),this.handle=null),super.dispose()}onTouchStart(S){let f=Date.now();this.handle&&(this.handle.dispose(),this.handle=null);for(let u=0,d=S.targetTouches.length;u=O.HOLD_DELAY&&Math.abs(n.initialPageX-P.t(n.rollingPageX))<30&&Math.abs(n.initialPageY-P.t(n.rollingPageY))<30){let m=this.newGestureEvent(k.Contextmenu,n.initialTarget);m.pageX=P.t(n.rollingPageX),m.pageY=P.t(n.rollingPageY),this.dispatchEvent(m)}else if(u===1){let m=P.t(n.rollingPageX),c=P.t(n.rollingPageY),l=P.t(n.rollingTimestamps)-n.rollingTimestamps[0],g=m-n.rollingPageX[0],y=c-n.rollingPageY[0];const C=this.targets.filter(v=>n.initialTarget instanceof Node&&v.contains(n.initialTarget));this.inertia(C,f,Math.abs(g)/l,g>0?1:-1,m,Math.abs(y)/l,y>0?1:-1,c)}this.dispatchEvent(this.newGestureEvent(k.End,n.initialTarget)),delete this.activeTouches[p.identifier]}this.dispatched&&(S.preventDefault(),S.stopPropagation(),this.dispatched=!1)}newGestureEvent(S,f){let u=document.createEvent("CustomEvent");return u.initEvent(S,!1,!0),u.initialTarget=f,u.tapCount=0,u}dispatchEvent(S){if(S.type===k.Tap){const f=new Date().getTime();let u=0;f-this._lastSetTapCountTime>O.CLEAR_TAP_COUNT_TIME?u=1:u=2,this._lastSetTapCountTime=f,S.tapCount=u}else(S.type===k.Change||S.type===k.Contextmenu)&&(this._lastSetTapCountTime=0);for(let f=0;f{S.initialTarget instanceof Node&&f.contains(S.initialTarget)&&(f.dispatchEvent(S),this.dispatched=!0)})}inertia(S,f,u,d,E,p,n,b){this.handle=h.V(()=>{let m=Date.now(),c=m-f,l=0,g=0,y=!0;u+=O.SCROLL_FRICTION*c,p+=O.SCROLL_FRICTION*c,u>0&&(y=!1,l=d*u*c),p>0&&(y=!1,g=n*p*c);let C=this.newGestureEvent(k.Change);C.translationX=l,C.translationY=g,S.forEach(v=>v.dispatchEvent(C)),y||this.inertia(S,m,u,d,E+l,p,n,b+g)})}onTouchMove(S){let f=Date.now();for(let u=0,d=S.changedTouches.length;u3&&(p.rollingPageX.shift(),p.rollingPageY.shift(),p.rollingTimestamps.shift()),p.rollingPageX.push(E.pageX),p.rollingPageY.push(E.pageY),p.rollingTimestamps.push(f)}this.dispatched&&(S.preventDefault(),S.stopPropagation(),this.dispatched=!1)}}O.SCROLL_FRICTION=-.005,O.HOLD_DELAY=700,O.CLEAR_TAP_COUNT_TIME=400,I([L.a],O,"isTouchDevice",null)},ptcw:function(ft,w,e){"use strict";e.d(w,"d",function(){return P}),e.d(w,"a",function(){return A}),e.d(w,"b",function(){return I}),e.d(w,"e",function(){return k}),e.d(w,"c",function(){return S});var h=e("MD5Z");function P(f,u){const d=Object.create(null);for(let E in u){const p=u[E];p&&(d[E]=Object(h.Dc)(p,f))}return d}function L(f,u,d){function E(){const p=P(f.getColorTheme(),u);typeof d=="function"?d(p):d.style(p)}return E(),f.onDidColorThemeChange(E)}function A(f,u,d){return L(u,{badgeBackground:(d==null?void 0:d.badgeBackground)||h.c,badgeForeground:(d==null?void 0:d.badgeForeground)||h.d,badgeBorder:h.h},f)}function I(f,u,d){return L(u,Object.assign(Object.assign({},k),d||{}),f)}const k={listFocusBackground:h.Kb,listFocusForeground:h.Lb,listFocusOutline:h.Nb,listActiveSelectionBackground:h.Db,listActiveSelectionForeground:h.Eb,listActiveSelectionIconForeground:h.Fb,listFocusAndSelectionBackground:h.Db,listFocusAndSelectionForeground:h.Eb,listInactiveSelectionBackground:h.Tb,listInactiveSelectionIconForeground:h.Vb,listInactiveSelectionForeground:h.Ub,listInactiveFocusBackground:h.Rb,listInactiveFocusOutline:h.Sb,listHoverBackground:h.Pb,listHoverForeground:h.Qb,listDropBackground:h.Gb,listSelectionOutline:h.b,listHoverOutline:h.b,listFilterWidgetBackground:h.Hb,listFilterWidgetOutline:h.Jb,listFilterWidgetNoMatchesOutline:h.Ib,listMatchesShadow:h.Tc,treeIndentGuidesStroke:h.Sc,tableColumnsBorder:h.Mc},O={shadowColor:h.Tc,borderColor:h.Xb,foregroundColor:h.Yb,backgroundColor:h.Wb,selectionForegroundColor:h.bc,selectionBackgroundColor:h.Zb,selectionBorderColor:h.ac,separatorColor:h.cc};function S(f,u,d){return L(u,Object.assign(Object.assign({},O),d),f)}},"q/I2":function(ft,w,e){},q8qy:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"pascaligo",extensions:[".ligo"],aliases:["Pascaligo","ligo"],loader:function(){return e.e(358).then(e.bind(null,"ywQP"))}})},qNAo:function(ft,w,e){"use strict";e.d(w,"i",function(){return A}),e.d(w,"b",function(){return k}),e.d(w,"c",function(){return S}),e.d(w,"f",function(){return f}),e.d(w,"g",function(){return u}),e.d(w,"a",function(){return d}),e.d(w,"e",function(){return E}),e.d(w,"h",function(){return p}),e.d(w,"d",function(){return n});var h=e("N0LK"),P=e("cGHE"),L=e("aokT");class A{constructor(b,m,c,l){this._viewportBrand=void 0,this.top=b|0,this.left=m|0,this.width=c|0,this.height=l|0}}class I{constructor(b,m){this.outputLineIndex=b,this.outputOffset=m}toString(){return`${this.outputLineIndex}:${this.outputOffset}`}toPosition(b,m){const c=this.outputLineIndex>0?m:0;return new P.a(b+this.outputLineIndex,c+this.outputOffset+1)}}class k{constructor(b,m,c,l,g){this.breakOffsets=b,this.breakOffsetsVisibleColumn=m,this.wrappedTextIndentLength=c,this.injectionOffsets=l,this.injectionOptions=g}getInputOffsetOfOutputPosition(b,m){let c=0;if(b===0?c=m:c=this.breakOffsets[b-1]+m,this.injectionOffsets!==null)for(let l=0;lthis.injectionOffsets[l];l++)c0?this.breakOffsets[g-1]:0,m===0)if(b<=y)l=g-1;else if(b>C)c=g+1;else break;else if(b=C)c=g+1;else break}return new I(g,b-y)}outputPositionToOffsetInUnwrappedLine(b,m){let c=(b>0?this.breakOffsets[b-1]:0)+m;return b>0&&(c-=this.wrappedTextIndentLength),c}normalizeOffsetAroundInjections(b,m){const c=this.getInjectedTextAtOffset(b);if(!c)return b;if(m===2)return b===c.offsetInUnwrappedLine+c.length?c.offsetInUnwrappedLine+c.length:c.offsetInUnwrappedLine;if(m===1){let y=c.offsetInUnwrappedLine+c.length,C=c.injectedTextIndex;for(;C+1=0&&this.injectionOffsets[g-1]===this.injectionOffsets[g];)l-=this.injectionOptions[g-1].content.length,g++;return l}getInjectedText(b,m){const c=this.outputPositionToOffsetInUnwrappedLine(b,m),l=this.getInjectedTextAtOffset(c);return l?{options:this.injectionOptions[l.injectedTextIndex]}:null}getInjectedTextAtOffset(b){const m=this.injectionOffsets,c=this.injectionOptions;if(m!==null){let l=0;for(let g=0;gb)break;if(b<=v)return{injectedTextIndex:g,offsetInUnwrappedLine:C,length:y};l+=y}}return}}class O{constructor(b){this.options=b}}class S{constructor(b,m){this.tabSize=b,this.data=m}}class f{constructor(b,m,c,l,g,y,C){this._viewLineDataBrand=void 0,this.content=b,this.continuesWithWrappedLine=m,this.minColumn=c,this.maxColumn=l,this.startVisibleColumn=g,this.tokens=y,this.inlineDecorations=C}}class u{constructor(b,m,c,l,g,y,C,v,D,j){this.minColumn=b,this.maxColumn=m,this.content=c,this.continuesWithWrappedLine=l,this.isBasicASCII=u.isBasicASCII(c,y),this.containsRTL=u.containsRTL(c,this.isBasicASCII,g),this.tokens=C,this.inlineDecorations=v,this.tabSize=D,this.startVisibleColumn=j}static isBasicASCII(b,m){return m?h.A(b):!0}static containsRTL(b,m,c){return!m&&c?h.m(b):!1}}class d{constructor(b,m,c){this.range=b,this.inlineClassName=m,this.type=c}}class E{constructor(b,m,c,l){this.startOffset=b,this.endOffset=m,this.inlineClassName=c,this.inlineClassNameAffectsLetterSpacing=l}toInlineDecoration(b){return new d(new L.a(b,this.startOffset+1,b,this.endOffset+1),this.inlineClassName,this.inlineClassNameAffectsLetterSpacing?3:0)}}class p{constructor(b,m){this._viewModelDecorationBrand=void 0,this.range=b,this.options=m}}class n{constructor(b,m,c){this.color=b,this.zIndex=m,this.data=c}static cmp(b,m){return b.zIndex===m.zIndex?b.colorm.color?1:0:b.zIndex-m.zIndex}}},qj0h:function(ft,w,e){"use strict";e.d(w,"b",function(){return P}),e.d(w,"c",function(){return L}),e.d(w,"a",function(){return I}),e.d(w,"f",function(){return O}),e.d(w,"d",function(){return S}),e.d(w,"e",function(){return f});var h=e("746U");function P(u){if(!u||typeof u!="object")return u;if(u instanceof RegExp)return u;const d=Array.isArray(u)?[]:{};return Object.keys(u).forEach(E=>{u[E]&&typeof u[E]=="object"?d[E]=P(u[E]):d[E]=u[E]}),d}function L(u){if(!u||typeof u!="object")return u;const d=[u];for(;d.length>0;){const E=d.shift();Object.freeze(E);for(const p in E)if(A.call(E,p)){const n=E[p];typeof n=="object"&&!Object.isFrozen(n)&&d.push(n)}}return u}const A=Object.prototype.hasOwnProperty;function I(u,d){return k(u,d,new Set)}function k(u,d,E){if(Object(h.n)(u))return u;const p=d(u);if(typeof p!="undefined")return p;if(Object(h.f)(u)){const n=[];for(const b of u)n.push(k(b,d,E));return n}if(Object(h.k)(u)){if(E.has(u))throw new Error("Cannot clone recursive data-structure");E.add(u);const n={};for(let b in u)A.call(u,b)&&(n[b]=k(u[b],d,E));return E.delete(u),n}return u}function O(u,d,E=!0){return Object(h.k)(u)?(Object(h.k)(d)&&Object.keys(d).forEach(p=>{p in u?E&&(Object(h.k)(u[p])&&Object(h.k)(d[p])?O(u[p],d[p],E):u[p]=d[p]):u[p]=d[p]}),u):d}function S(u,d){if(u===d)return!0;if(u==null||d===null||d===void 0)return!1;if(typeof u!==typeof d)return!1;if(typeof u!="object")return!1;if(Array.isArray(u)!==Array.isArray(d))return!1;let E,p;if(Array.isArray(u)){if(u.length!==d.length)return!1;for(E=0;E{et.stopPropagation(),et.preventDefault(),ae.run(this.actionContainer)})),this.setEnabled(!0)}static render(ue,ae,Re){return new p(ue,ae,Re)}setEnabled(ue){ue?(this.actionContainer.classList.remove("disabled"),this.actionContainer.removeAttribute("aria-disabled")):(this.actionContainer.classList.add("disabled"),this.actionContainer.setAttribute("aria-disabled","true"))}}var n=e("G300"),b=e("6OMU"),m=e("cGHE"),c=e("tX9W"),l=e("twdY"),g=e("JQT/"),y=e("zrhQ"),C=e("ZIMw"),v=e("kqbb"),D=e("MI8n");class j{constructor(ue,ae,Re){this.presentationIndex=Re,this._onColorFlushed=new D.b,this.onColorFlushed=this._onColorFlushed.event,this._onDidChangeColor=new D.b,this.onDidChangeColor=this._onDidChangeColor.event,this._onDidChangePresentation=new D.b,this.onDidChangePresentation=this._onDidChangePresentation.event,this.originalColor=ue,this._color=ue,this._colorPresentations=ae}get color(){return this._color}set color(ue){if(this._color.equals(ue))return;this._color=ue,this._onDidChangeColor.fire(ue)}get presentation(){return this.colorPresentations[this.presentationIndex]}get colorPresentations(){return this._colorPresentations}set colorPresentations(ue){this._colorPresentations=ue,this.presentationIndex>ue.length-1&&(this.presentationIndex=0),this._onDidChangePresentation.fire(this.presentation)}selectNextColorPresentation(){this.presentationIndex=(this.presentationIndex+1)%this.colorPresentations.length,this.flushColor(),this._onDidChangePresentation.fire(this.presentation)}guessColorPresentation(ue,ae){for(let Re=0;Re{this.backgroundColor=bt.getColor(Y.E)||y.a.white})),this._register(S.i(this.pickedColorNode,S.d.CLICK,()=>this.model.selectNextColorPresentation())),this._register(S.i(et,S.d.CLICK,()=>{this.model.color=this.model.originalColor,this.model.flushColor()})),this._register(ae.onDidChangeColor(this.onDidChangeColor,this)),this._register(ae.onDidChangePresentation(this.onDidChangePresentation,this)),this.pickedColorNode.style.backgroundColor=y.a.Format.CSS.format(ae.color)||"",this.pickedColorNode.classList.toggle("light",ae.color.rgba.a<.5?this.backgroundColor.isLighter():ae.color.isLighter())}onDidChangeColor(ue){this.pickedColorNode.style.backgroundColor=y.a.Format.CSS.format(ue)||"",this.pickedColorNode.classList.toggle("light",ue.rgba.a<.5?this.backgroundColor.isLighter():ue.isLighter()),this.onDidChangePresentation()}onDidChangePresentation(){this.pickedColorNode.textContent=this.model.presentation?this.model.presentation.label:"",this.pickedColorNode.prepend(Q(".codicon.codicon-color-mode"))}}class Se extends P.a{constructor(ue,ae,Re){super();this.model=ae,this.pixelRatio=Re,this.domNode=Q(".colorpicker-body"),S.q(ue,this.domNode),this.saturationBox=new fe(this.domNode,this.model,this.pixelRatio),this._register(this.saturationBox),this._register(this.saturationBox.onDidChange(this.onDidSaturationValueChange,this)),this._register(this.saturationBox.onColorFlushed(this.flushColor,this)),this.opacityStrip=new te(this.domNode,this.model),this._register(this.opacityStrip),this._register(this.opacityStrip.onDidChange(this.onDidOpacityChange,this)),this._register(this.opacityStrip.onColorFlushed(this.flushColor,this)),this.hueStrip=new U(this.domNode,this.model),this._register(this.hueStrip),this._register(this.hueStrip.onDidChange(this.onDidHueChange,this)),this._register(this.hueStrip.onColorFlushed(this.flushColor,this))}flushColor(){this.model.flushColor()}onDidSaturationValueChange({s:ue,v:ae}){const Re=this.model.color.hsva;this.model.color=new y.a(new y.b(Re.h,ue,ae,Re.a))}onDidOpacityChange(ue){const ae=this.model.color.hsva;this.model.color=new y.a(new y.b(ae.h,ae.s,ae.v,ue))}onDidHueChange(ue){const ae=this.model.color.hsva,Re=(1-ue)*360;this.model.color=new y.a(new y.b(Re===360?0:Re,ae.s,ae.v,ae.a))}layout(){this.saturationBox.layout(),this.opacityStrip.layout(),this.hueStrip.layout()}}class fe extends P.a{constructor(ue,ae,Re){super();this.model=ae,this.pixelRatio=Re,this._onDidChange=new D.b,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new D.b,this.onColorFlushed=this._onColorFlushed.event,this.domNode=Q(".saturation-wrap"),S.q(ue,this.domNode),this.canvas=document.createElement("canvas"),this.canvas.className="saturation-box",S.q(this.domNode,this.canvas),this.selection=Q(".saturation-selection"),S.q(this.domNode,this.selection),this.layout(),this._register(S.g(this.domNode,Qe=>this.onMouseDown(Qe))),this._register(this.model.onDidChangeColor(this.onDidChangeColor,this)),this.monitor=null}onMouseDown(ue){this.monitor=this._register(new G.a);const ae=S.D(this.domNode);ue.target!==this.selection&&this.onDidChangePosition(ue.offsetX,ue.offsetY),this.monitor.startMonitoring(ue.target,ue.buttons,G.b,Qe=>this.onDidChangePosition(Qe.posx-ae.left,Qe.posy-ae.top),()=>null);const Re=S.h(document,()=>{this._onColorFlushed.fire(),Re.dispose(),this.monitor&&(this.monitor.stopMonitoring(!0),this.monitor=null)},!0)}onDidChangePosition(ue,ae){const Re=Math.max(0,Math.min(1,ue/this.width)),Qe=Math.max(0,Math.min(1,1-ae/this.height));this.paintSelection(Re,Qe),this._onDidChange.fire({s:Re,v:Qe})}layout(){this.width=this.domNode.offsetWidth,this.height=this.domNode.offsetHeight,this.canvas.width=this.width*this.pixelRatio,this.canvas.height=this.height*this.pixelRatio,this.paint();const ue=this.model.color.hsva;this.paintSelection(ue.s,ue.v)}paint(){const ue=this.model.color.hsva,ae=new y.a(new y.b(ue.h,1,1,1)),Re=this.canvas.getContext("2d"),Qe=Re.createLinearGradient(0,0,this.canvas.width,0);Qe.addColorStop(0,"rgba(255, 255, 255, 1)"),Qe.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),Qe.addColorStop(1,"rgba(255, 255, 255, 0)");const et=Re.createLinearGradient(0,0,0,this.canvas.height);et.addColorStop(0,"rgba(0, 0, 0, 0)"),et.addColorStop(1,"rgba(0, 0, 0, 1)"),Re.rect(0,0,this.canvas.width,this.canvas.height),Re.fillStyle=y.a.Format.CSS.format(ae),Re.fill(),Re.fillStyle=Qe,Re.fill(),Re.fillStyle=et,Re.fill()}paintSelection(ue,ae){this.selection.style.left=`${ue*this.width}px`,this.selection.style.top=`${this.height-ae*this.height}px`}onDidChangeColor(){if(this.monitor&&this.monitor.isMonitoring())return;this.paint()}}class q extends P.a{constructor(ue,ae){super();this.model=ae,this._onDidChange=new D.b,this.onDidChange=this._onDidChange.event,this._onColorFlushed=new D.b,this.onColorFlushed=this._onColorFlushed.event,this.domNode=S.q(ue,Q(".strip")),this.overlay=S.q(this.domNode,Q(".overlay")),this.slider=S.q(this.domNode,Q(".slider")),this.slider.style.top="0px",this._register(S.g(this.domNode,Re=>this.onMouseDown(Re))),this.layout()}layout(){this.height=this.domNode.offsetHeight-this.slider.offsetHeight;const ue=this.getValue(this.model.color);this.updateSliderPosition(ue)}onMouseDown(ue){const ae=this._register(new G.a),Re=S.D(this.domNode);this.domNode.classList.add("grabbing"),ue.target!==this.slider&&this.onDidChangeTop(ue.offsetY),ae.startMonitoring(ue.target,ue.buttons,G.b,et=>this.onDidChangeTop(et.posy-Re.top),()=>null);const Qe=S.h(document,()=>{this._onColorFlushed.fire(),Qe.dispose(),ae.stopMonitoring(!0),this.domNode.classList.remove("grabbing")},!0)}onDidChangeTop(ue){const ae=Math.max(0,Math.min(1,1-ue/this.height));this.updateSliderPosition(ae),this._onDidChange.fire(ae)}updateSliderPosition(ue){this.slider.style.top=`${(1-ue)*this.height}px`}}class te extends q{constructor(ue,ae){super(ue,ae);this.domNode.classList.add("opacity-strip"),this._register(ae.onDidChangeColor(this.onDidChangeColor,this)),this.onDidChangeColor(this.model.color)}onDidChangeColor(ue){const{r:ae,g:Re,b:Qe}=ue.rgba,et=new y.a(new y.c(ae,Re,Qe,1)),bt=new y.a(new y.c(ae,Re,Qe,0));this.overlay.style.background=`linear-gradient(to bottom, ${et} 0%, ${bt} 100%)`}getValue(ue){return ue.hsva.a}}class U extends q{constructor(ue,ae){super(ue,ae);this.domNode.classList.add("hue-strip")}getValue(ue){return 1-ue.hsva.h/360}}class H extends n.a{constructor(ue,ae,Re,Qe){super();this.model=ae,this.pixelRatio=Re,this._register(Object(V.l)(()=>this.layout()));const et=Q(".colorpicker-widget");ue.appendChild(et);const bt=new ee(et,this.model,Qe);this.body=new Se(et,this.model,this.pixelRatio),this._register(bt),this._register(this.body)}layout(){this.body.layout()}}var W=function(ue,ae,Re,Qe){var et=arguments.length,bt=et<3?ae:Qe===null?Qe=Object.getOwnPropertyDescriptor(ae,Re):Qe,Lt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")bt=Reflect.decorate(ue,ae,Re,Qe);else for(var Ot=ue.length-1;Ot>=0;Ot--)(Lt=ue[Ot])&&(bt=(et<3?Lt(bt):et>3?Lt(ae,Re,bt):Lt(ae,Re))||bt);return et>3&&bt&&Object.defineProperty(ae,Re,bt),bt},ne=function(ue,ae){return function(Re,Qe){ae(Re,Qe,ue)}},Ce=function(ue,ae,Re,Qe){function et(bt){return bt instanceof Re?bt:new Re(function(Lt){Lt(bt)})}return new(Re||(Re=Promise))(function(bt,Lt){function Ot(Ut){try{Tt(Qe.next(Ut))}catch(fo){Lt(fo)}}function Ft(Ut){try{Tt(Qe.throw(Ut))}catch(fo){Lt(fo)}}function Tt(Ut){Ut.done?bt(Ut.value):et(Ut.value).then(Ot,Ft)}Tt((Qe=Qe.apply(ue,ae||[])).next())})};class Le{constructor(ue,ae,Re,Qe){this.owner=ue,this.range=ae,this.model=Re,this.provider=Qe,this.forceShowAtRange=!0}isValidForHoverAnchor(ue){return ue.type===1&&this.range.startColumn<=ue.range.startColumn&&this.range.endColumn>=ue.range.endColumn}}let ce=class{constructor(ae,Re,Qe){this._editor=ae,this._hover=Re,this._themeService=Qe}computeSync(ae,Re){return[]}computeAsync(ae,Re,Qe){return Ce(this,void 0,void 0,function*(){if(!this._editor.hasModel())return[];const et=v.a.get(this._editor);for(const bt of Re){if(bt.options.description!=="color-detector-color")continue;const Lt=et.getColorData(bt.range.getStartPosition());if(Lt){const Ot=yield this._createColorHover(this._editor.getModel(),Lt.colorInfo,Lt.provider);return[Ot]}}return[]})}_createColorHover(ae,Re,Qe){return Ce(this,void 0,void 0,function*(){const et=ae.getValueInRange(Re.range),{red:bt,green:Lt,blue:Ot,alpha:Ft}=Re.color,Tt=new y.c(Math.round(bt*255),Math.round(Lt*255),Math.round(Ot*255),Ft),Ut=new y.a(Tt),fo=yield Object(C.a)(ae,Re,Qe,g.a.None),vo=new j(Ut,[],0);return vo.colorPresentations=fo||[],vo.guessColorPresentation(Ut,et),new Le(this,A.a.lift(Re.range),vo,Qe)})}renderHoverParts(ae,Re,Qe){if(ae.length===0||!this._editor.hasModel())return P.a.None;const et=new P.b,bt=ae[0],Lt=this._editor.getModel(),Ot=bt.model,Ft=et.add(new H(Re,Ot,this._editor.getOption(127),this._themeService));let Tt=new A.a(bt.range.startLineNumber,bt.range.startColumn,bt.range.endLineNumber,bt.range.endColumn);const Ut=()=>{let vo,po;if(Ot.presentation.textEdit){vo=[Ot.presentation.textEdit],po=new A.a(Ot.presentation.textEdit.range.startLineNumber,Ot.presentation.textEdit.range.startColumn,Ot.presentation.textEdit.range.endLineNumber,Ot.presentation.textEdit.range.endColumn);const Oo=this._editor.getModel()._setTrackedRange(null,po,3);this._editor.pushUndoStop(),this._editor.executeEdits("colorpicker",vo),po=this._editor.getModel()._getTrackedRange(Oo)||po}else vo=[{identifier:null,range:Tt,text:Ot.presentation.label,forceMoveMarkers:!1}],po=Tt.setEndPosition(Tt.endLineNumber,Tt.startColumn+Ot.presentation.label.length),this._editor.pushUndoStop(),this._editor.executeEdits("colorpicker",vo);Ot.presentation.additionalTextEdits&&(vo=[...Ot.presentation.additionalTextEdits],this._editor.executeEdits("colorpicker",vo),this._hover.hide()),this._editor.pushUndoStop(),Tt=po},fo=vo=>Object(C.a)(Lt,{range:Tt,color:{red:vo.rgba.r/255,green:vo.rgba.g/255,blue:vo.rgba.b/255,alpha:vo.rgba.a}},bt.provider,g.a.None).then(po=>{Ot.colorPresentations=po||[]});return et.add(Ot.onColorFlushed(vo=>{fo(vo).then(Ut)})),et.add(Ot.onDidChangeColor(fo)),this._hover.setColorPicker(Ft),et}};ce=W([ne(2,K.b)],ce);var me=e("X+cX"),Oe=e("/cxE");class oe{constructor(ue,ae,Re,Qe,et){this._computer=ue,this._state=0,this._hoverTime=et,this._firstWaitScheduler=new me.e(()=>this._triggerAsyncComputation(),0),this._secondWaitScheduler=new me.e(()=>this._triggerSyncComputation(),0),this._loadingMessageScheduler=new me.e(()=>this._showLoadingMessage(),0),this._asyncComputationPromise=null,this._asyncComputationPromiseDone=!1,this._completeCallback=ae,this._errorCallback=Re,this._progressCallback=Qe}setHoverTime(ue){this._hoverTime=ue}_firstWaitTime(){return this._hoverTime/2}_secondWaitTime(){return this._hoverTime/2}_loadingMessageTime(){return 3*this._hoverTime}_triggerAsyncComputation(){this._state=2,this._secondWaitScheduler.schedule(this._secondWaitTime()),this._computer.computeAsync?(this._asyncComputationPromiseDone=!1,this._asyncComputationPromise=Object(me.h)(ue=>this._computer.computeAsync(ue)),this._asyncComputationPromise.then(ue=>{this._asyncComputationPromiseDone=!0,this._withAsyncResult(ue)},ue=>this._onError(ue))):this._asyncComputationPromiseDone=!0}_triggerSyncComputation(){this._computer.computeSync&&this._computer.onResult(this._computer.computeSync(),!0),this._asyncComputationPromiseDone?(this._state=0,this._onComplete(this._computer.getResult())):(this._state=3,this._onProgress(this._computer.getResult()))}_showLoadingMessage(){this._state===3&&this._onProgress(this._computer.getResultWithLoadingMessage())}_withAsyncResult(ue){ue&&this._computer.onResult(ue,!1),this._state===3&&(this._state=0,this._onComplete(this._computer.getResult()))}_onComplete(ue){this._completeCallback(ue)}_onError(ue){this._errorCallback?this._errorCallback(ue):Object(Oe.f)(ue)}_onProgress(ue){this._progressCallback(ue)}start(ue){if(ue===0)this._state===0&&(this._state=1,this._firstWaitScheduler.schedule(this._firstWaitTime()),this._loadingMessageScheduler.schedule(this._loadingMessageTime()));else switch(this._state){case 0:this._triggerAsyncComputation(),this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break;case 2:this._secondWaitScheduler.cancel(),this._triggerSyncComputation();break}}cancel(){this._loadingMessageScheduler.cancel(),this._state===1&&this._firstWaitScheduler.cancel(),this._state===2&&(this._secondWaitScheduler.cancel(),this._asyncComputationPromise&&(this._asyncComputationPromise.cancel(),this._asyncComputationPromise=null)),this._state===3&&(this._asyncComputationPromise&&(this._asyncComputationPromise.cancel(),this._asyncComputationPromise=null)),this._state=0}}class De{constructor(ue,ae){this.priority=ue,this.range=ae,this.type=1}equals(ue){return ue.type===1&&this.range.equalsRange(ue.range)}canAdoptVisibleHover(ue,ae){return ue.type===1&&ae.lineNumber===this.range.startLineNumber}}class Ne{constructor(ue,ae,Re){this.priority=ue,this.owner=ae,this.range=Re,this.type=2}equals(ue){return ue.type===2&&this.owner===ue.owner}canAdoptVisibleHover(ue,ae){return ue.type===2&&this.owner===ue.owner}}var ve=e("eLzo"),re=e("v6HE");function we(ue,ae,Re){const Qe=l.p.ordered(ue),et=Qe.map(bt=>Promise.resolve(bt.provideHover(ue,ae,Re)).then(Lt=>Lt&&Ie(Lt)?Lt:void 0,Lt=>{Object(Oe.g)(Lt);return}));return Promise.all(et).then(b.e)}Object(L.n)("_executeHoverProvider",(ue,ae)=>we(ue,ae,g.a.None));function Ie(ue){const ae=typeof ue.range!="undefined",Re=typeof ue.contents!="undefined"&&ue.contents&&ue.contents.length>0;return ae&&Re}var ge=e("+7oY"),ye=e("W9cx"),ze=function(ue,ae,Re,Qe){var et=arguments.length,bt=et<3?ae:Qe===null?Qe=Object.getOwnPropertyDescriptor(ae,Re):Qe,Lt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")bt=Reflect.decorate(ue,ae,Re,Qe);else for(var Ot=ue.length-1;Ot>=0;Ot--)(Lt=ue[Ot])&&(bt=(et<3?Lt(bt):et>3?Lt(ae,Re,bt):Lt(ae,Re))||bt);return et>3&&bt&&Object.defineProperty(ae,Re,bt),bt},xe=function(ue,ae){return function(Re,Qe){ae(Re,Qe,ue)}},Te=function(ue,ae,Re,Qe){function et(bt){return bt instanceof Re?bt:new Re(function(Lt){Lt(bt)})}return new(Re||(Re=Promise))(function(bt,Lt){function Ot(Ut){try{Tt(Qe.next(Ut))}catch(fo){Lt(fo)}}function Ft(Ut){try{Tt(Qe.throw(Ut))}catch(fo){Lt(fo)}}function Tt(Ut){Ut.done?bt(Ut.value):et(Ut.value).then(Ot,Ft)}Tt((Qe=Qe.apply(ue,ae||[])).next())})};const He=S.a;class st{constructor(ue,ae,Re){this.owner=ue,this.range=ae,this.contents=Re}isValidForHoverAnchor(ue){return ue.type===1&&this.range.startColumn<=ue.range.startColumn&&this.range.endColumn>=ue.range.endColumn}}let nt=class{constructor(ae,Re,Qe,et,bt){this._editor=ae,this._hover=Re,this._modeService=Qe,this._openerService=et,this._configurationService=bt}createLoadingMessage(ae){return new st(this,ae.range,[new ve.a().appendText(z.a("modesContentHover.loading","Loading..."))])}computeSync(ae,Re){if(!this._editor.hasModel()||ae.type!==1)return[];const Qe=this._editor.getModel(),et=ae.range.startLineNumber,bt=Qe.getLineMaxColumn(et),Lt=[];for(const Ut of Re){const fo=Ut.range.startLineNumber===et?Ut.range.startColumn:1,vo=Ut.range.endLineNumber===et?Ut.range.endColumn:bt,po=Ut.options.hoverMessage;if(!po||Object(ve.b)(po))continue;const Oo=new A.a(ae.range.startLineNumber,fo,ae.range.startLineNumber,vo);Lt.push(new st(this,Oo,Object(b.c)(po)))}const Ot=Qe.getLineLength(et),Ft=Qe.getLanguageIdAtPosition(ae.range.startLineNumber,ae.range.startColumn),Tt=this._configurationService.getValue("editor.maxTokenizationLineLength",{overrideIdentifier:Ft});return typeof Tt=="number"&&Ot>=Tt&&Lt.push(new st(this,ae.range,[{value:z.a("too many characters","Tokenization is skipped for long lines for performance reasons. This can be configured via `editor.maxTokenizationLineLength`.")}])),Lt}computeAsync(ae,Re,Qe){return Te(this,void 0,void 0,function*(){if(!this._editor.hasModel()||ae.type!==1)return Promise.resolve([]);const et=this._editor.getModel();if(!l.p.has(et))return Promise.resolve([]);const bt=yield we(et,new m.a(ae.range.startLineNumber,ae.range.startColumn),Qe),Lt=[];for(const Ot of bt){if(Object(ve.b)(Ot.contents))continue;const Ft=Ot.range?A.a.lift(Ot.range):ae.range;Lt.push(new st(this,Ft,Ot.contents))}return Lt})}renderHoverParts(ae,Re,Qe){const et=new P.b;for(const bt of ae)for(const Lt of bt.contents){if(Object(ve.b)(Lt))continue;const Ot=He("div.hover-row.markdown-hover"),Ft=S.q(Ot,He("div.hover-contents")),Tt=et.add(new re.a({editor:this._editor},this._modeService,this._openerService));et.add(Tt.onDidRenderAsync(()=>{Ft.className="hover-contents code-hover-contents",this._hover.onContentsChanged()}));const Ut=et.add(Tt.render(Lt));Ft.appendChild(Ut.element),Re.appendChild(Ot)}return et}};nt=ze([xe(2,k.a),xe(3,ye.a),xe(4,ge.a)],nt);var rt=e("gslv"),wt=e("79sc"),Pt=e("hJVp"),no=e("C1Q+"),ht=e("nlbu"),lt=e("lY/7"),le=e("tADe"),Pe=e("tTk5"),it=function(ue,ae,Re,Qe){var et=arguments.length,bt=et<3?ae:Qe===null?Qe=Object.getOwnPropertyDescriptor(ae,Re):Qe,Lt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")bt=Reflect.decorate(ue,ae,Re,Qe);else for(var Ot=ue.length-1;Ot>=0;Ot--)(Lt=ue[Ot])&&(bt=(et<3?Lt(bt):et>3?Lt(ae,Re,bt):Lt(ae,Re))||bt);return et>3&&bt&&Object.defineProperty(ae,Re,bt),bt},Dt=function(ue,ae){return function(Re,Qe){ae(Re,Qe,ue)}};const kt=S.a;class eo{constructor(ue,ae,Re){this.owner=ue,this.range=ae,this.marker=Re}isValidForHoverAnchor(ue){return ue.type===1&&this.range.startColumn<=ue.range.startColumn&&this.range.endColumn>=ue.range.endColumn}}const bo={type:1,filter:{include:ht.b.QuickFix}};let ao=class{constructor(ae,Re,Qe,et){this._editor=ae,this._hover=Re,this._markerDecorationsService=Qe,this._openerService=et,this.recentMarkerCodeActionsInfo=void 0}computeSync(ae,Re){if(!this._editor.hasModel()||ae.type!==1)return[];const Qe=this._editor.getModel(),et=ae.range.startLineNumber,bt=Qe.getLineMaxColumn(et),Lt=[];for(const Ot of Re){const Ft=Ot.range.startLineNumber===et?Ot.range.startColumn:1,Tt=Ot.range.endLineNumber===et?Ot.range.endColumn:bt,Ut=this._markerDecorationsService.getMarker(Qe.uri,Ot);if(!Ut)continue;const fo=new A.a(ae.range.startLineNumber,Ft,ae.range.startLineNumber,Tt);Lt.push(new eo(this,fo,Ut))}return Lt}renderHoverParts(ae,Re,Qe){if(!ae.length)return P.a.None;const et=new P.b;ae.forEach(Lt=>Re.appendChild(this.renderMarkerHover(Lt,et)));const bt=ae.length===1?ae[0]:ae.sort((Lt,Ot)=>le.c.compare(Lt.marker.severity,Ot.marker.severity))[0];return this.renderMarkerStatusbar(bt,Qe,et),et}renderMarkerHover(ae,Re){const Qe=kt("div.hover-row"),et=S.q(Qe,kt("div.marker.hover-contents")),{source:bt,message:Lt,code:Ot,relatedInformation:Ft}=ae.marker;this._editor.applyFontInfo(et);const Tt=S.q(et,kt("span"));if(Tt.style.whiteSpace="pre-wrap",Tt.innerText=Lt,bt||Ot)if(Ot&&typeof Ot!="string"){const Ut=kt("span");if(bt){const Oo=S.q(Ut,kt("span"));Oo.innerText=bt}const fo=S.q(Ut,kt("a.code-link"));fo.setAttribute("href",Ot.target.toString()),Re.add(S.i(fo,"click",Oo=>{this._openerService.open(Ot.target,{allowCommands:!0}),Oo.preventDefault(),Oo.stopPropagation()}));const vo=S.q(fo,kt("span"));vo.innerText=Ot.value;const po=S.q(et,Ut);po.style.opacity="0.6",po.style.paddingLeft="6px"}else{const Ut=S.q(et,kt("span"));Ut.style.opacity="0.6",Ut.style.paddingLeft="6px",Ut.innerText=bt&&Ot?`${bt}(${Ot})`:bt||`(${Ot})`}if(Object(b.n)(Ft))for(const{message:Ut,resource:fo,startLineNumber:vo,startColumn:po}of Ft){const Oo=S.q(et,kt("div"));Oo.style.marginTop="8px";const Uo=S.q(Oo,kt("a"));Uo.innerText=`${Object(rt.b)(fo)}(${vo}, ${po}): `,Uo.style.cursor="pointer",Re.add(S.i(Uo,"click",ii=>{ii.stopPropagation(),ii.preventDefault(),this._openerService&&this._openerService.open(fo,{fromUserGesture:!0,editorOptions:{selection:{startLineNumber:vo,startColumn:po}}}).catch(Oe.f)}));const Zo=S.q(Oo,kt("span"));Zo.innerText=Ut,this._editor.applyFontInfo(Zo)}return Qe}renderMarkerStatusbar(ae,Re,Qe){if((ae.marker.severity===le.c.Error||ae.marker.severity===le.c.Warning||ae.marker.severity===le.c.Info)&&Re.addAction({label:z.a("view problem","View Problem"),commandId:lt.NextMarkerAction.ID,run:()=>{this._hover.hide(),lt.MarkerController.get(this._editor).showAtMarker(ae.marker),this._editor.focus()}}),!this._editor.getOption(80)){const et=Re.append(kt("div"));this.recentMarkerCodeActionsInfo&&(le.a.makeKey(this.recentMarkerCodeActionsInfo.marker)===le.a.makeKey(ae.marker)?this.recentMarkerCodeActionsInfo.hasCodeActions||(et.textContent=z.a("noQuickFixes","No quick fixes available")):this.recentMarkerCodeActionsInfo=void 0);const bt=this.recentMarkerCodeActionsInfo&&!this.recentMarkerCodeActionsInfo.hasCodeActions?P.a.None:Qe.add(Object(me.i)(()=>et.textContent=z.a("checkingForQuickFixes","Checking for quick fixes..."),200));et.textContent||(et.textContent=String.fromCharCode(160));const Lt=this.getCodeActions(ae.marker);Qe.add(Object(P.i)(()=>Lt.cancel())),Lt.then(Ot=>{if(bt.dispose(),this.recentMarkerCodeActionsInfo={marker:ae.marker,hasCodeActions:Ot.validActions.length>0},!this.recentMarkerCodeActionsInfo.hasCodeActions){Ot.dispose(),et.textContent=z.a("noQuickFixes","No quick fixes available");return}et.style.display="none";let Ft=!1;Qe.add(Object(P.i)(()=>{Ft||Ot.dispose()})),Re.addAction({label:z.a("quick fixes","Quick Fix..."),commandId:no.e.Id,run:Tt=>{Ft=!0;const Ut=no.f.get(this._editor),fo=S.D(Tt);this._hover.hide(),Ut.showCodeActions(bo,Ot,{x:fo.left+6,y:fo.top+fo.height+6})}})},Oe.f)}}getCodeActions(ae){return Object(me.h)(Re=>Object(Pt.d)(this._editor.getModel(),new A.a(ae.startLineNumber,ae.startColumn,ae.endLineNumber,ae.endColumn),bo,Pe.b.None,Re))}};ao=it([Dt(2,wt.a),Dt(3,ye.a)],ao),Object(K.f)((ue,ae)=>{const Re=ue.getColor(Y.Pc);Re&&ae.addRule(`.monaco-hover .hover-contents a.code-link span { color: ${Re}; }`);const Qe=ue.getColor(Y.Oc);Qe&&ae.addRule(`.monaco-hover .hover-contents a.code-link span:hover { color: ${Qe}; }`)});var So=e("LmYf"),Lo=e("R3nR"),xo=e("fjLI"),_o=e("nnTU"),to=e("T8No"),Wt=function(ue,ae,Re,Qe){var et=arguments.length,bt=et<3?ae:Qe===null?Qe=Object.getOwnPropertyDescriptor(ae,Re):Qe,Lt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")bt=Reflect.decorate(ue,ae,Re,Qe);else for(var Ot=ue.length-1;Ot>=0;Ot--)(Lt=ue[Ot])&&(bt=(et<3?Lt(bt):et>3?Lt(ae,Re,bt):Lt(ae,Re))||bt);return et>3&&bt&&Object.defineProperty(ae,Re,bt),bt},Ge=function(ue,ae){return function(Re,Qe){ae(Re,Qe,ue)}};class mt{constructor(ue,ae,Re){this.owner=ue,this.range=ae,this.controller=Re}isValidForHoverAnchor(ue){return ue.type===1&&this.range.startColumn<=ue.range.startColumn&&this.range.endColumn>=ue.range.endColumn}hasMultipleSuggestions(){return this.controller.hasMultipleInlineCompletions()}}let Gt=class{constructor(ae,Re,Qe,et,bt,Lt,Ot,Ft){this._editor=ae,this._hover=Re,this._commandService=Qe,this._menuService=et,this._contextKeyService=bt,this._modeService=Lt,this._openerService=Ot,this.accessibilityService=Ft}suggestHoverAnchor(ae){const Re=So.a.get(this._editor);if(!Re)return null;if(ae.target.type===8){const Qe=ae.target.detail;if(Re.shouldShowHoverAtViewZone(Qe.viewZoneId))return new Ne(1e3,this,A.a.fromPositions(Qe.positionBefore||Qe.position,Qe.positionBefore||Qe.position))}if(ae.target.type===7&&ae.target.range&&Re.shouldShowHoverAt(ae.target.range))return new Ne(1e3,this,ae.target.range);if(ae.target.type===6&&ae.target.range&&ae.target.detail){const Qe=ae.target.detail.mightBeForeignElement;if(Qe&&Re.shouldShowHoverAt(ae.target.range))return new Ne(1e3,this,ae.target.range)}return null}computeSync(ae,Re){const Qe=So.a.get(this._editor);return Qe&&Qe.shouldShowHoverAt(ae.range)?[new mt(this,ae.range,Qe)]:[]}renderHoverParts(ae,Re,Qe){const et=new P.b,bt=ae[0];this.accessibilityService.isScreenReaderOptimized()&&this.renderScreenReaderText(bt,Re,et);const Lt=et.add(this._menuService.createMenu(xo.b.InlineCompletionsActions,this._contextKeyService)),Ot=Qe.addAction({label:z.a("showNextInlineSuggestion","Next"),commandId:So.b.ID,run:()=>this._commandService.executeCommand(So.b.ID)}),Ft=Qe.addAction({label:z.a("showPreviousInlineSuggestion","Previous"),commandId:So.c.ID,run:()=>this._commandService.executeCommand(So.c.ID)});Qe.addAction({label:z.a("acceptInlineSuggestion","Accept"),commandId:So.d.id,run:()=>this._commandService.executeCommand(So.d.id)});const Tt=[Ot,Ft];for(const Ut of Tt)Ut.setEnabled(!1);bt.hasMultipleSuggestions().then(Ut=>{for(const fo of Tt)fo.setEnabled(Ut)});for(const[Ut,fo]of Lt.getActions())for(const vo of fo)vo instanceof xo.c&&Qe.addAction({label:vo.label,commandId:vo.item.id,run:()=>this._commandService.executeCommand(vo.item.id)});return et}renderScreenReaderText(ae,Re,Qe){var et,bt;const Lt=S.a,Ot=Lt("div.hover-row.markdown-hover"),Ft=S.q(Ot,Lt("div.hover-contents")),Tt=Qe.add(new re.a({editor:this._editor},this._modeService,this._openerService)),Ut=vo=>{Qe.add(Tt.onDidRenderAsync(()=>{Ft.className="hover-contents code-hover-contents",this._hover.onContentsChanged()}));const po=z.a("inlineSuggestionFollows","Suggestion:"),Oo=Qe.add(Tt.render(new ve.a().appendText(po).appendCodeblock("text",vo)));Ft.replaceChildren(Oo.element)},fo=(bt=(et=ae.controller.activeModel)===null||et===void 0?void 0:et.inlineCompletionsModel)===null||bt===void 0?void 0:bt.ghostText;if(fo){const vo=this._editor.getModel().getLineContent(fo.lineNumber);Ut(fo.renderForScreenReader(vo))}Re.appendChild(Ot)}};Gt=Wt([Ge(2,_o.b),Ge(3,xo.a),Ge(4,to.b),Ge(5,k.a),Ge(6,ye.a),Ge(7,Lo.b)],Gt);var qe=e("Cg/j"),tt=e("bexQ"),gt=e("QVNv"),$e=function(ue,ae,Re,Qe){var et=arguments.length,bt=et<3?ae:Qe===null?Qe=Object.getOwnPropertyDescriptor(ae,Re):Qe,Lt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")bt=Reflect.decorate(ue,ae,Re,Qe);else for(var Ot=ue.length-1;Ot>=0;Ot--)(Lt=ue[Ot])&&(bt=(et<3?Lt(bt):et>3?Lt(ae,Re,bt):Lt(ae,Re))||bt);return et>3&&bt&&Object.defineProperty(ae,Re,bt),bt},je=function(ue,ae){return function(Re,Qe){ae(Re,Qe,ue)}},Ue=function(ue,ae,Re,Qe){function et(bt){return bt instanceof Re?bt:new Re(function(Lt){Lt(bt)})}return new(Re||(Re=Promise))(function(bt,Lt){function Ot(Ut){try{Tt(Qe.next(Ut))}catch(fo){Lt(fo)}}function Ft(Ut){try{Tt(Qe.throw(Ut))}catch(fo){Lt(fo)}}function Tt(Ut){Ut.done?bt(Ut.value):et(Ut.value).then(Ot,Ft)}Tt((Qe=Qe.apply(ue,ae||[])).next())})};const Ye=S.a;let Mt=class extends P.a{constructor(ae){super();this._keybindingService=ae,this._hasContent=!1,this.hoverElement=Ye("div.hover-row.status-bar"),this.actionsElement=S.q(this.hoverElement,Ye("div.actions"))}get hasContent(){return this._hasContent}addAction(ae){const Re=this._keybindingService.lookupKeybinding(ae.commandId),Qe=Re?Re.getLabel():null;return this._hasContent=!0,this._register(p.render(this.actionsElement,ae,Qe))}append(ae){const Re=S.q(this.actionsElement,ae);return this._hasContent=!0,Re}};Mt=$e([je(0,tt.a)],Mt);class Bt{constructor(ue,ae){this._participants=ae,this._editor=ue,this._result=[],this._anchor=null}setAnchor(ue){this._anchor=ue,this._result=[]}clearResult(){this._result=[]}static _getLineDecorations(ue,ae){if(ae.type!==1)return[];const Re=ue.getModel(),Qe=ae.range.startLineNumber,et=Re.getLineMaxColumn(Qe);return ue.getLineDecorations(Qe).filter(bt=>{if(bt.options.isWholeLine)return!0;const Lt=bt.range.startLineNumber===Qe?bt.range.startColumn:1,Ot=bt.range.endLineNumber===Qe?bt.range.endColumn:et;return!(Lt>ae.range.startColumn||ae.range.endColumn>Ot)})}computeAsync(ue){return Ue(this,void 0,void 0,function*(){const ae=this._anchor;if(!this._editor.hasModel()||!ae)return Promise.resolve([]);const Re=Bt._getLineDecorations(this._editor,ae),Qe=yield Promise.all(this._participants.map(et=>this._computeAsync(et,Re,ae,ue)));return Object(b.k)(Qe)})}_computeAsync(ue,ae,Re,Qe){return Ue(this,void 0,void 0,function*(){return ue.computeAsync?ue.computeAsync(Re,ae,Qe):[]})}computeSync(){if(!this._editor.hasModel()||!this._anchor)return[];const ue=Bt._getLineDecorations(this._editor,this._anchor);let ae=[];for(const Re of this._participants)ae=ae.concat(Re.computeSync(this._anchor,ue));return Object(b.e)(ae)}onResult(ue,ae){ae?this._result=ue.concat(this._result):this._result=this._result.concat(ue)}getResult(){return this._result.slice(0)}getResultWithLoadingMessage(){if(this._anchor){for(const ue of this._participants)if(ue.createLoadingMessage){const ae=ue.createLoadingMessage(this._anchor);if(ae)return this._result.slice(0).concat([ae])}}return this._result.slice(0)}}let $t=class ue extends n.a{constructor(ae,Re,Qe,et,bt){super();this._hoverVisibleKey=Re,this._keybindingService=et,this._contextKeyService=bt,this.allowEditorOverflow=!0,this._participants=[Qe.createInstance(ce,ae,this),Qe.createInstance(nt,ae,this),Qe.createInstance(Gt,ae,this),Qe.createInstance(ao,ae,this)],this._editor=ae,this._isVisible=!1,this._stoleFocus=!1,this._renderDisposable=null,this._hover=this._register(new E),this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible),this.onkeydown(this._hover.containerDomNode,Lt=>{Lt.equals(9)&&this.hide()}),this._register(this._editor.onDidChangeConfiguration(Lt=>{Lt.hasChanged(43)&&this._updateFont()})),this._editor.onDidLayoutChange(()=>this.layout()),this.layout(),this._editor.addContentWidget(this),this._showAtPosition=null,this._showAtRange=null,this._stoleFocus=!1,this._messages=[],this._lastAnchor=null,this._computer=new Bt(this._editor,this._participants),this._highlightDecorations=[],this._isChangingDecorations=!1,this._shouldFocus=!1,this._colorPicker=null,this._preferAbove=this._editor.getOption(52).above,this._hoverOperation=new oe(this._computer,Lt=>this._withResult(Lt,!0),null,Lt=>this._withResult(Lt,!1),this._editor.getOption(52).delay),this._register(S.o(this.getDomNode(),S.d.FOCUS,()=>{this._colorPicker&&this.getDomNode().classList.add("colorpicker-hover")})),this._register(S.o(this.getDomNode(),S.d.BLUR,()=>{this.getDomNode().classList.remove("colorpicker-hover")})),this._register(ae.onDidChangeConfiguration(()=>{this._hoverOperation.setHoverTime(this._editor.getOption(52).delay),this._preferAbove=this._editor.getOption(52).above})),this._register(l.F.onDidChange(()=>{this._isVisible&&this._lastAnchor&&this._messages.length>0&&(this._hover.contentsDomNode.textContent="",this._renderMessages(this._lastAnchor,this._messages))}))}dispose(){this._hoverOperation.cancel(),this._editor.removeContentWidget(this),super.dispose()}getId(){return ue.ID}getDomNode(){return this._hover.containerDomNode}_shouldShowAt(ae){const Re=ae.target.type;if(Re===6)return!0;if(Re===7){const Qe=this._editor.getOption(43).typicalHalfwidthCharacterWidth/2,et=ae.target.detail;if(et&&!et.isAfterLines&&typeof et.horizontalDistanceToText=="number"&&et.horizontalDistanceToTextLt.startsWith("ced-colorBox"))&&ae.target.range.endColumn-ae.target.range.startColumn===1,bt=et?new A.a(ae.target.range.startLineNumber,ae.target.range.startColumn+1,ae.target.range.endLineNumber,ae.target.range.endColumn+1):ae.target.range;Qe.push(new De(0,bt))}return Qe.length===0?!1:(Qe.sort((et,bt)=>bt.priority-et.priority),this._startShowingAt(Qe[0],0,!1),!0)}_showAt(ae,Re,Qe){this._showAtPosition=ae,this._showAtRange=Re,this._hoverVisibleKey.set(!0),this._isVisible=!0,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible),this._editor.layoutContentWidget(this),this._editor.render(),this._stoleFocus=Qe,Qe&&this._hover.containerDomNode.focus()}getPosition(){if(this._isVisible){let ae=this._preferAbove;return!ae&&this._contextKeyService.getContextKeyValue(gt.b.Visible.key)&&(ae=!0),{position:this._showAtPosition,range:this._showAtRange,preference:ae?[1,2]:[2,1]}}return null}_updateFont(){const ae=Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code"));ae.forEach(Re=>this._editor.applyFontInfo(Re))}_updateContents(ae){this._hover.contentsDomNode.textContent="",this._hover.contentsDomNode.appendChild(ae),this._updateFont(),this._editor.layoutContentWidget(this),this._hover.onContentsChanged()}layout(){const ae=Math.max(this._editor.getLayoutInfo().height/4,250),{fontSize:Re,lineHeight:Qe}=this._editor.getOption(43);this._hover.contentsDomNode.style.fontSize=`${Re}px`,this._hover.contentsDomNode.style.lineHeight=`${Qe/Re}`,this._hover.contentsDomNode.style.maxHeight=`${ae}px`,this._hover.contentsDomNode.style.maxWidth=`${Math.max(this._editor.getLayoutInfo().width*.66,500)}px`}onModelDecorationsChanged(){if(this._isChangingDecorations)return;this._isVisible&&(this._hoverOperation.cancel(),this._computer.clearResult(),this._colorPicker||this._hoverOperation.start(0))}startShowingAtRange(ae,Re,Qe){this._startShowingAt(new De(0,ae),Re,Qe)}_startShowingAt(ae,Re,Qe){if(this._lastAnchor&&this._lastAnchor.equals(ae))return;if(this._hoverOperation.cancel(),this._isVisible)if(!this._showAtPosition||!this._lastAnchor||!ae.canAdoptVisibleHover(this._lastAnchor,this._showAtPosition))this.hide();else{const et=this._messages.filter(bt=>bt.isValidForHoverAnchor(ae));if(et.length===0)this.hide();else{if(et.length===this._messages.length)return;this._renderMessages(ae,et)}}this._lastAnchor=ae,this._computer.setAnchor(ae),this._shouldFocus=Qe,this._hoverOperation.start(Re)}hide(){this._lastAnchor=null,this._hoverOperation.cancel(),this._isVisible&&(setTimeout(()=>{this._isVisible||this._hoverVisibleKey.set(!1)},0),this._isVisible=!1,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible),this._editor.layoutContentWidget(this),this._stoleFocus&&this._editor.focus()),this._isChangingDecorations=!0,this._highlightDecorations=this._editor.deltaDecorations(this._highlightDecorations,[]),this._isChangingDecorations=!1,this._renderDisposable&&(this._renderDisposable.dispose(),this._renderDisposable=null),this._colorPicker=null}isColorPickerVisible(){return!!this._colorPicker}setColorPicker(ae){this._colorPicker=ae}onContentsChanged(){this._hover.onContentsChanged()}_withResult(ae,Re){this._messages=ae,this._lastAnchor&&this._messages.length>0?this._renderMessages(this._lastAnchor,this._messages):Re&&this.hide()}_renderMessages(ae,Re){this._renderDisposable&&(this._renderDisposable.dispose(),this._renderDisposable=null),this._colorPicker=null;let Qe=1073741824,et=Re[0].range,bt=null,Lt=document.createDocumentFragment();const Ot=new P.b,Ft=new Map;for(const Ut of Re){Qe=Math.min(Qe,Ut.range.startColumn),et=A.a.plusRange(et,Ut.range),Ut.forceShowAtRange&&(bt=Ut.range),Ft.has(Ut.owner)||Ft.set(Ut.owner,[]);const fo=Ft.get(Ut.owner);fo.push(Ut)}const Tt=Ot.add(new Mt(this._keybindingService));for(const[Ut,fo]of Ft)Ot.add(Ut.renderHoverParts(fo,Lt,Tt));Tt.hasContent&&Lt.appendChild(Tt.hoverElement),this._renderDisposable=Ot,Lt.hasChildNodes()&&(bt?this._showAt(bt.getStartPosition(),bt,this._shouldFocus):this._showAt(new m.a(ae.range.startLineNumber,Qe),et,this._shouldFocus),this._updateContents(Lt)),this._colorPicker&&this._colorPicker.layout(),this._isChangingDecorations=!0,this._highlightDecorations=this._editor.deltaDecorations(this._highlightDecorations,et?[{range:et,options:ue._DECORATION_OPTIONS}]:[]),this._isChangingDecorations=!1}};$t.ID="editor.contrib.modesContentHoverWidget",$t._DECORATION_OPTIONS=c.b.register({description:"content-hover-highlight",className:"hoverHighlight"}),$t=$e([je(2,qe.a),je(3,tt.a),je(4,to.b)],$t);const uo=S.a;class Zt{constructor(ue){this._editor=ue,this._lineNumber=-1,this._result=[]}setLineNumber(ue){this._lineNumber=ue,this._result=[]}clearResult(){this._result=[]}computeSync(){const ue=Qe=>({value:Qe}),ae=this._editor.getLineDecorations(this._lineNumber),Re=[];if(!ae)return Re;for(const Qe of ae){if(!Qe.options.glyphMarginClassName)continue;const et=Qe.options.glyphMarginHoverMessage;if(!et||Object(ve.b)(et))continue;Re.push(...Object(b.c)(et).map(ue))}return Re}onResult(ue,ae){this._result=this._result.concat(ue)}getResult(){return this._result}getResultWithLoadingMessage(){return this.getResult()}}class zt extends n.a{constructor(ue,ae,Re=ye.b){super();this._renderDisposeables=this._register(new P.b),this._editor=ue,this._isVisible=!1,this._messages=[],this._lastLineNumber=-1,this._hover=this._register(new E),this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible),this._markdownRenderer=this._register(new re.a({editor:this._editor},ae,Re)),this._computer=new Zt(this._editor),this._hoverOperation=new oe(this._computer,Qe=>this._withResult(Qe),void 0,Qe=>this._withResult(Qe),300),this._register(this._editor.onDidChangeConfiguration(Qe=>{Qe.hasChanged(43)&&this._updateFont()})),this._editor.addOverlayWidget(this)}dispose(){this._hoverOperation.cancel(),this._editor.removeOverlayWidget(this),super.dispose()}getId(){return zt.ID}getDomNode(){return this._hover.containerDomNode}getPosition(){return null}_showAt(ue){this._isVisible||(this._isVisible=!0,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible));const ae=this._editor.getLayoutInfo(),Re=this._editor.getTopForLineNumber(ue),Qe=this._editor.getScrollTop(),et=this._editor.getOption(58),bt=this._hover.containerDomNode.clientHeight,Lt=Re-Qe-(bt-et)/2;this._hover.containerDomNode.style.left=`${ae.glyphMarginLeft+ae.glyphMarginWidth}px`,this._hover.containerDomNode.style.top=`${Math.max(Math.round(Lt),0)}px`}_updateFont(){const ue=Array.prototype.slice.call(this._hover.contentsDomNode.getElementsByClassName("code"));ue.forEach(ae=>this._editor.applyFontInfo(ae))}_updateContents(ue){this._hover.contentsDomNode.textContent="",this._hover.contentsDomNode.appendChild(ue),this._updateFont()}onModelDecorationsChanged(){this._isVisible&&(this._hoverOperation.cancel(),this._computer.clearResult(),this._hoverOperation.start(0))}startShowingAt(ue){if(this._lastLineNumber===ue)return;this._hoverOperation.cancel(),this.hide(),this._lastLineNumber=ue,this._computer.setLineNumber(ue),this._hoverOperation.start(0)}hide(){if(this._lastLineNumber=-1,this._hoverOperation.cancel(),!this._isVisible)return;this._isVisible=!1,this._hover.containerDomNode.classList.toggle("hidden",!this._isVisible)}_withResult(ue){this._messages=ue,this._messages.length>0?this._renderMessages(this._lastLineNumber,this._messages):this.hide()}_renderMessages(ue,ae){this._renderDisposeables.clear();const Re=document.createDocumentFragment();for(const Qe of ae){const et=uo("div.hover-row.markdown-hover"),bt=S.q(et,uo("div.hover-contents")),Lt=this._renderDisposeables.add(this._markdownRenderer.render(Qe.value));bt.appendChild(Lt.element),Re.appendChild(et)}this._updateContents(Re),this._showAt(ue)}}zt.ID="editor.contrib.modesGlyphHoverWidget";var ut=function(ue,ae,Re,Qe){var et=arguments.length,bt=et<3?ae:Qe===null?Qe=Object.getOwnPropertyDescriptor(ae,Re):Qe,Lt;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")bt=Reflect.decorate(ue,ae,Re,Qe);else for(var Ot=ue.length-1;Ot>=0;Ot--)(Lt=ue[Ot])&&(bt=(et<3?Lt(bt):et>3?Lt(ae,Re,bt):Lt(ae,Re))||bt);return et>3&&bt&&Object.defineProperty(ae,Re,bt),bt},Ct=function(ue,ae){return function(Re,Qe){ae(Re,Qe,ue)}};let We=class ue{constructor(ae,Re,Qe,et,bt){this._editor=ae,this._instantiationService=Re,this._openerService=Qe,this._modeService=et,this._toUnhook=new P.b,this._isMouseDown=!1,this._hoverClicked=!1,this._contentWidget=null,this._glyphWidget=null,this._hookEvents(),this._didChangeConfigurationHandler=this._editor.onDidChangeConfiguration(Lt=>{Lt.hasChanged(52)&&(this._unhookEvents(),this._hookEvents())}),this._hoverVisibleKey=I.a.hoverVisible.bindTo(bt)}static get(ae){return ae.getContribution(ue.ID)}_hookEvents(){const ae=()=>this._hideWidgets(),Re=this._editor.getOption(52);this._isHoverEnabled=Re.enabled,this._isHoverSticky=Re.sticky,this._isHoverEnabled?(this._toUnhook.add(this._editor.onMouseDown(Qe=>this._onEditorMouseDown(Qe))),this._toUnhook.add(this._editor.onMouseUp(Qe=>this._onEditorMouseUp(Qe))),this._toUnhook.add(this._editor.onMouseMove(Qe=>this._onEditorMouseMove(Qe))),this._toUnhook.add(this._editor.onKeyDown(Qe=>this._onKeyDown(Qe))),this._toUnhook.add(this._editor.onDidChangeModelDecorations(()=>this._onModelDecorationsChanged()))):(this._toUnhook.add(this._editor.onMouseMove(Qe=>this._onEditorMouseMove(Qe))),this._toUnhook.add(this._editor.onKeyDown(Qe=>this._onKeyDown(Qe)))),this._toUnhook.add(this._editor.onMouseLeave(ae)),this._toUnhook.add(this._editor.onDidChangeModel(ae)),this._toUnhook.add(this._editor.onDidScrollChange(Qe=>this._onEditorScrollChanged(Qe)))}_unhookEvents(){this._toUnhook.clear()}_onModelDecorationsChanged(){var ae,Re;(ae=this._contentWidget)===null||ae===void 0||ae.onModelDecorationsChanged(),(Re=this._glyphWidget)===null||Re===void 0||Re.onModelDecorationsChanged()}_onEditorScrollChanged(ae){(ae.scrollTopChanged||ae.scrollLeftChanged)&&this._hideWidgets()}_onEditorMouseDown(ae){this._isMouseDown=!0;const Re=ae.target.type;if(Re===9&&ae.target.detail===$t.ID){this._hoverClicked=!0;return}if(Re===12&&ae.target.detail===zt.ID)return;Re!==12&&ae.target.detail!==zt.ID&&(this._hoverClicked=!1),this._hideWidgets()}_onEditorMouseUp(ae){this._isMouseDown=!1}_onEditorMouseMove(ae){var Re,Qe,et,bt,Lt;let Ot=ae.target.type;if(this._isMouseDown&&this._hoverClicked)return;if(this._isHoverSticky&&Ot===9&&ae.target.detail===$t.ID)return;if(this._isHoverSticky&&!((Qe=(Re=ae.event.browserEvent.view)===null||Re===void 0?void 0:Re.getSelection())===null||Qe===void 0?void 0:Qe.isCollapsed))return;if(!this._isHoverSticky&&Ot===9&&ae.target.detail===$t.ID&&((et=this._contentWidget)===null||et===void 0?void 0:et.isColorPickerVisible()))return;if(this._isHoverSticky&&Ot===12&&ae.target.detail===zt.ID)return;if(!this._isHoverEnabled){this._hideWidgets();return}const Ft=this._getOrCreateContentWidget();if(Ft.maybeShowAt(ae)){(bt=this._glyphWidget)===null||bt===void 0||bt.hide();return}if(Ot===2&&ae.target.position){(Lt=this._contentWidget)===null||Lt===void 0||Lt.hide(),this._glyphWidget||(this._glyphWidget=new zt(this._editor,this._modeService,this._openerService)),this._glyphWidget.startShowingAt(ae.target.position.lineNumber);return}this._hideWidgets()}_onKeyDown(ae){ae.keyCode!==5&&ae.keyCode!==6&&ae.keyCode!==57&&ae.keyCode!==4&&this._hideWidgets()}_hideWidgets(){var ae,Re,Qe;if(this._isMouseDown&&this._hoverClicked&&((ae=this._contentWidget)===null||ae===void 0?void 0:ae.isColorPickerVisible()))return;this._hoverClicked=!1,(Re=this._glyphWidget)===null||Re===void 0||Re.hide(),(Qe=this._contentWidget)===null||Qe===void 0||Qe.hide()}_getOrCreateContentWidget(){return this._contentWidget||(this._contentWidget=this._instantiationService.createInstance($t,this._editor,this._hoverVisibleKey)),this._contentWidget}isColorPickerVisible(){var ae;return((ae=this._contentWidget)===null||ae===void 0?void 0:ae.isColorPickerVisible())||!1}showContentHover(ae,Re,Qe){this._getOrCreateContentWidget().startShowingAtRange(ae,Re,Qe)}dispose(){var ae,Re;this._unhookEvents(),this._toUnhook.dispose(),this._didChangeConfigurationHandler.dispose(),(ae=this._glyphWidget)===null||ae===void 0||ae.dispose(),(Re=this._contentWidget)===null||Re===void 0||Re.dispose()}};We.ID="editor.contrib.hover",We=ut([Ct(1,qe.a),Ct(2,ye.a),Ct(3,k.a),Ct(4,to.b)],We);class he extends L.b{constructor(){super({id:"editor.action.showHover",label:z.a({key:"showHover",comment:["Label for action that will trigger the showing of a hover in the editor.","This allows for users to show the hover without using the mouse."]},"Show Hover"),alias:"Show Hover",precondition:void 0,kbOpts:{kbExpr:I.a.editorTextFocus,primary:Object(h.c)(2048|41,2048|39),weight:100}})}run(ue,ae){if(!ae.hasModel())return;let Re=We.get(ae);if(!Re)return;const Qe=ae.getPosition(),et=new A.a(Qe.lineNumber,Qe.column,Qe.lineNumber,Qe.column),bt=ae.getOption(2)===2;Re.showContentHover(et,1,bt)}}class Me extends L.b{constructor(){super({id:"editor.action.showDefinitionPreviewHover",label:z.a({key:"showDefinitionPreviewHover",comment:["Label for action that will trigger the showing of definition preview hover in the editor.","This allows for users to show the definition preview hover without using the mouse."]},"Show Definition Preview Hover"),alias:"Show Definition Preview Hover",precondition:void 0})}run(ue,ae){let Re=We.get(ae);if(!Re)return;const Qe=ae.getPosition();if(!Qe)return;const et=new A.a(Qe.lineNumber,Qe.column,Qe.lineNumber,Qe.column),bt=O.GotoDefinitionAtPositionEditorContribution.get(ae),Lt=bt.startFindDefinitionFromCursor(Qe);Lt.then(()=>{Re.showContentHover(et,1,!0)})}}Object(L.l)(We.ID,We),Object(L.j)(he),Object(L.j)(Me),Object(K.f)((ue,ae)=>{const Re=ue.getColor(Y.H);Re&&ae.addRule(`.monaco-editor .hoverHighlight { background-color: ${Re}; }`);const Qe=ue.getColor(Y.E);Qe&&ae.addRule(`.monaco-editor .monaco-hover { background-color: ${Qe}; }`);const et=ue.getColor(Y.F);et&&(ae.addRule(`.monaco-editor .monaco-hover { border: 1px solid ${et}; }`),ae.addRule(`.monaco-editor .monaco-hover .hover-row:not(:first-child):not(:empty) { border-top: 1px solid ${et.transparent(.5)}; }`),ae.addRule(`.monaco-editor .monaco-hover hr { border-top: 1px solid ${et.transparent(.5)}; }`),ae.addRule(`.monaco-editor .monaco-hover hr { border-bottom: 0px solid ${et.transparent(.5)}; }`));const bt=ue.getColor(Y.Pc);bt&&ae.addRule(`.monaco-editor .monaco-hover a { color: ${bt}; }`);const Lt=ue.getColor(Y.Oc);Lt&&ae.addRule(`.monaco-editor .monaco-hover a:hover { color: ${Lt}; }`);const Ot=ue.getColor(Y.G);Ot&&ae.addRule(`.monaco-editor .monaco-hover { color: ${Ot}; }`);const Ft=ue.getColor(Y.I);Ft&&ae.addRule(`.monaco-editor .monaco-hover .hover-row .actions { background-color: ${Ft}; }`);const Tt=ue.getColor(Y.Nc);Tt&&ae.addRule(`.monaco-editor .monaco-hover code { background-color: ${Tt}; }`)})},s7Km:function(ft,w,e){"use strict";e.r(w),e.d(w,"MoveWordCommand",function(){return m}),e.d(w,"WordLeftCommand",function(){return c}),e.d(w,"WordRightCommand",function(){return l}),e.d(w,"CursorWordStartLeft",function(){return g}),e.d(w,"CursorWordEndLeft",function(){return y}),e.d(w,"CursorWordLeft",function(){return C}),e.d(w,"CursorWordStartLeftSelect",function(){return v}),e.d(w,"CursorWordEndLeftSelect",function(){return D}),e.d(w,"CursorWordLeftSelect",function(){return j}),e.d(w,"CursorWordAccessibilityLeft",function(){return V}),e.d(w,"CursorWordAccessibilityLeftSelect",function(){return G}),e.d(w,"CursorWordStartRight",function(){return B}),e.d(w,"CursorWordEndRight",function(){return z}),e.d(w,"CursorWordRight",function(){return Y}),e.d(w,"CursorWordStartRightSelect",function(){return K}),e.d(w,"CursorWordEndRightSelect",function(){return Q}),e.d(w,"CursorWordRightSelect",function(){return ee}),e.d(w,"CursorWordAccessibilityRight",function(){return Se}),e.d(w,"CursorWordAccessibilityRightSelect",function(){return fe}),e.d(w,"DeleteWordCommand",function(){return q}),e.d(w,"DeleteWordLeftCommand",function(){return te}),e.d(w,"DeleteWordRightCommand",function(){return U}),e.d(w,"DeleteWordStartLeft",function(){return H}),e.d(w,"DeleteWordEndLeft",function(){return W}),e.d(w,"DeleteWordLeft",function(){return ne}),e.d(w,"DeleteWordStartRight",function(){return Ce}),e.d(w,"DeleteWordEndRight",function(){return Le}),e.d(w,"DeleteWordRight",function(){return ce}),e.d(w,"DeleteInsideWord",function(){return me});var h=e("sswD"),P=e("LCkn"),L=e("/UlZ"),A=e("Ll0s"),I=e("1I1M"),k=e("5v8Y"),O=e("cGHE"),S=e("aokT"),f=e("gCVg"),u=e("wQH0"),d=e("cMvZ"),E=e("3/fG"),p=e("R3nR"),n=e("T8No"),b=e("FmXZ");class m extends h.c{constructor(Oe){super(Oe);this._inSelectionMode=Oe.inSelectionMode,this._wordNavigationType=Oe.wordNavigationType}runEditorCommand(Oe,oe,De){if(!oe.hasModel())return;const Ne=Object(k.a)(oe.getOption(115)),ve=oe.getModel(),re=oe.getSelections(),we=re.map(Ie=>{const ge=new O.a(Ie.positionLineNumber,Ie.positionColumn),ye=this._move(Ne,ve,ge,this._wordNavigationType);return this._moveTo(Ie,ye,this._inSelectionMode)});if(ve.pushStackElement(),oe._getViewModel().setCursorStates("moveWordCommand",3,we.map(Ie=>A.d.fromModelSelection(Ie))),we.length===1){const Ie=new O.a(we[0].positionLineNumber,we[0].positionColumn);oe.revealPosition(Ie,0)}}_moveTo(Oe,oe,De){return De?new f.a(Oe.selectionStartLineNumber,Oe.selectionStartColumn,oe.lineNumber,oe.column):new f.a(oe.lineNumber,oe.column,oe.lineNumber,oe.column)}}class c extends m{_move(Oe,oe,De,Ne){return I.a.moveWordLeft(Oe,oe,De,Ne)}}class l extends m{_move(Oe,oe,De,Ne){return I.a.moveWordRight(Oe,oe,De,Ne)}}class g extends c{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartLeft",precondition:void 0})}}class y extends c{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndLeft",precondition:void 0})}}class C extends c{constructor(){var Oe;super({inSelectionMode:!1,wordNavigationType:1,id:"cursorWordLeft",precondition:void 0,kbOpts:{kbExpr:n.a.and(u.a.textInputFocus,(Oe=n.a.and(p.a,b.b))===null||Oe===void 0?void 0:Oe.negate()),primary:2048|15,mac:{primary:512|15},weight:100}})}}class v extends c{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartLeftSelect",precondition:void 0})}}class D extends c{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndLeftSelect",precondition:void 0})}}class j extends c{constructor(){var Oe;super({inSelectionMode:!0,wordNavigationType:1,id:"cursorWordLeftSelect",precondition:void 0,kbOpts:{kbExpr:n.a.and(u.a.textInputFocus,(Oe=n.a.and(p.a,b.b))===null||Oe===void 0?void 0:Oe.negate()),primary:2048|1024|15,mac:{primary:512|1024|15},weight:100}})}}class V extends c{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityLeft",precondition:void 0})}_move(Oe,oe,De,Ne){return super._move(Object(k.a)(L.g.wordSeparators.defaultValue),oe,De,Ne)}}class G extends c{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityLeftSelect",precondition:void 0})}_move(Oe,oe,De,Ne){return super._move(Object(k.a)(L.g.wordSeparators.defaultValue),oe,De,Ne)}}class B extends l{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartRight",precondition:void 0})}}class z extends l{constructor(){var Oe;super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndRight",precondition:void 0,kbOpts:{kbExpr:n.a.and(u.a.textInputFocus,(Oe=n.a.and(p.a,b.b))===null||Oe===void 0?void 0:Oe.negate()),primary:2048|17,mac:{primary:512|17},weight:100}})}}class Y extends l{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordRight",precondition:void 0})}}class K extends l{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartRightSelect",precondition:void 0})}}class Q extends l{constructor(){var Oe;super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndRightSelect",precondition:void 0,kbOpts:{kbExpr:n.a.and(u.a.textInputFocus,(Oe=n.a.and(p.a,b.b))===null||Oe===void 0?void 0:Oe.negate()),primary:2048|1024|17,mac:{primary:512|1024|17},weight:100}})}}class ee extends l{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordRightSelect",precondition:void 0})}}class Se extends l{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityRight",precondition:void 0})}_move(Oe,oe,De,Ne){return super._move(Object(k.a)(L.g.wordSeparators.defaultValue),oe,De,Ne)}}class fe extends l{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityRightSelect",precondition:void 0})}_move(Oe,oe,De,Ne){return super._move(Object(k.a)(L.g.wordSeparators.defaultValue),oe,De,Ne)}}class q extends h.c{constructor(Oe){super(Oe);this._whitespaceHeuristics=Oe.whitespaceHeuristics,this._wordNavigationType=Oe.wordNavigationType}runEditorCommand(Oe,oe,De){if(!oe.hasModel())return;const Ne=Object(k.a)(oe.getOption(115)),ve=oe.getModel(),re=oe.getSelections(),we=oe.getOption(5),Ie=oe.getOption(8),ge=d.b.getAutoClosingPairs(ve.getLanguageId()),ye=oe._getViewModel(),ze=re.map(xe=>{const Te=this._delete({wordSeparators:Ne,model:ve,selection:xe,whitespaceHeuristics:this._whitespaceHeuristics,autoClosingDelete:oe.getOption(6),autoClosingBrackets:we,autoClosingQuotes:Ie,autoClosingPairs:ge,autoClosedCharacters:ye.getCursorAutoClosedCharacters()},this._wordNavigationType);return new P.a(Te,"")});oe.pushUndoStop(),oe.executeCommands(this.id,ze),oe.pushUndoStop()}}class te extends q{_delete(Oe,oe){let De=I.a.deleteWordLeft(Oe,oe);return De||new S.a(1,1,1,1)}}class U extends q{_delete(Oe,oe){let De=I.a.deleteWordRight(Oe,oe);if(De)return De;const Ne=Oe.model.getLineCount(),ve=Oe.model.getLineMaxColumn(Ne);return new S.a(Ne,ve,Ne,ve)}}class H extends te{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartLeft",precondition:u.a.writable})}}class W extends te{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndLeft",precondition:u.a.writable})}}class ne extends te{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordLeft",precondition:u.a.writable,kbOpts:{kbExpr:u.a.textInputFocus,primary:2048|1,mac:{primary:512|1},weight:100}})}}class Ce extends U{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartRight",precondition:u.a.writable})}}class Le extends U{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndRight",precondition:u.a.writable})}}class ce extends U{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordRight",precondition:u.a.writable,kbOpts:{kbExpr:u.a.textInputFocus,primary:2048|20,mac:{primary:512|20},weight:100}})}}class me extends h.b{constructor(){super({id:"deleteInsideWord",precondition:u.a.writable,label:E.a("deleteInsideWord","Delete Word"),alias:"Delete Word"})}run(Oe,oe,De){if(!oe.hasModel())return;const Ne=Object(k.a)(oe.getOption(115)),ve=oe.getModel(),re=oe.getSelections(),we=re.map(Ie=>{const ge=I.a.deleteInsideWord(Ne,ve,Ie);return new P.a(ge,"")});oe.pushUndoStop(),oe.executeCommands(this.id,we),oe.pushUndoStop()}}Object(h.k)(new g),Object(h.k)(new y),Object(h.k)(new C),Object(h.k)(new v),Object(h.k)(new D),Object(h.k)(new j),Object(h.k)(new B),Object(h.k)(new z),Object(h.k)(new Y),Object(h.k)(new K),Object(h.k)(new Q),Object(h.k)(new ee),Object(h.k)(new V),Object(h.k)(new G),Object(h.k)(new Se),Object(h.k)(new fe),Object(h.k)(new H),Object(h.k)(new W),Object(h.k)(new ne),Object(h.k)(new Ce),Object(h.k)(new Le),Object(h.k)(new ce),Object(h.j)(me)},sFUC:function(ft,w,e){"use strict";e.d(w,"b",function(){return P}),e.d(w,"c",function(){return L}),e.d(w,"a",function(){return A});var h=e("iuje");function P(I){return I&&typeof I.getEditorType=="function"?I.getEditorType()===h.a.ICodeEditor:!1}function L(I){return I&&typeof I.getEditorType=="function"?I.getEditorType()===h.a.IDiffEditor:!1}function A(I){return P(I)?I:L(I)?I.getModifiedEditor():null}},sM1p:function(ft,w,e){"use strict";e.d(w,"a",function(){return A}),e.d(w,"b",function(){return I});var h=e("S3by"),P=e("Cg/j"),L=h.a;const A=Object(P.c)("notificationService");class I{}},sStQ:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"perl",extensions:[".pl"],aliases:["Perl","pl"],loader:function(){return e.e(359).then(e.bind(null,"QKwv"))}})},scqD:function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("Cg/j");const P=Object(h.c)("themeService")},siPX:function(ft,w,e){},snIX:function(ft,w,e){"use strict";e.d(w,"a",function(){return O});var h=e("N0LK"),P=e("LCkn"),L=e("Ll0s"),A=e("+Fos"),I=e("aokT"),k=e("cGHE");class O{static deleteRight(S,f,u,d){let E=[],p=S!==3;for(let n=0,b=d.length;n=g.length+1)return!1;const y=g.charAt(l.column-2),C=d.get(y);if(!C)return!1;if(Object(L.g)(y)){if(u==="never")return!1}else if(f==="never")return!1;const v=g.charAt(l.column-1);let D=!1;for(const j of C)j.open===y&&j.close===v&&(D=!0);if(!D)return!1;if(S==="auto"){let j=!1;for(let V=0,G=n.length;V1){const E=f.getLineContent(d.lineNumber),p=h.u(E),n=p===-1?E.length+1:p+1;if(d.column<=n){const b=L.a.visibleColumnFromColumn2(u,f,d),m=L.a.prevIndentTabStop(b,u.indentSize),c=L.a.columnFromVisibleColumn2(u,f,d.lineNumber,m);return new I.a(d.lineNumber,c,d.lineNumber,d.column)}}return I.a.fromPositions(O.getPositionAfterDeleteLeft(d,f),d)}static getPositionAfterDeleteLeft(S,f){if(S.column>1){const u=h.y(S.column-1,f.getLineContent(S.lineNumber));return S.with(void 0,u+1)}else if(S.lineNumber>1){const u=S.lineNumber-1;return new k.a(u,f.getLineMaxColumn(u))}else return S}static cut(S,f,u){let d=[],E=null;u.sort((p,n)=>k.a.compare(p.getStartPosition(),n.getEndPosition()));for(let p=0,n=u.length;p1&&(E==null?void 0:E.endLineNumber)!==m.lineNumber?(c=m.lineNumber-1,l=f.getLineMaxColumn(m.lineNumber-1),g=m.lineNumber,y=f.getLineMaxColumn(m.lineNumber)):(c=m.lineNumber,l=1,g=m.lineNumber,y=f.getLineMaxColumn(m.lineNumber));let C=new I.a(c,l,g,y);E=C,C.isEmpty()?d[p]=null:d[p]=new P.a(C,"")}else d[p]=null;else d[p]=new P.a(b,"")}return new L.e(0,d,{shouldPushStackElementBefore:!0,shouldPushStackElementAfter:!0})}}},sswD:function(ft,w,e){"use strict";e.d(w,"a",function(){return b}),e.d(w,"e",function(){return m}),e.d(w,"c",function(){return l}),e.d(w,"b",function(){return g}),e.d(w,"f",function(){return y}),e.d(w,"n",function(){return C}),e.d(w,"o",function(){return v}),e.d(w,"k",function(){return D}),e.d(w,"j",function(){return j}),e.d(w,"p",function(){return V}),e.d(w,"m",function(){return G}),e.d(w,"l",function(){return B}),e.d(w,"d",function(){return z}),e.d(w,"i",function(){return ee}),e.d(w,"g",function(){return Se}),e.d(w,"h",function(){return fe});var h=e("3/fG"),P=e("bY76"),L=e("Vxe3"),A=e("cGHE"),I=e("G2kB"),k=e("t49l"),O=e("fjLI"),S=e("nnTU"),f=e("T8No"),u=e("nrhi"),d=e("ic2d"),E=e("XXUj"),p=e("746U"),n=e("09fa");class b{constructor(q){this.id=q.id,this.precondition=q.precondition,this._kbOpts=q.kbOpts,this._menuOpts=q.menuOpts,this._description=q.description}register(){if(Array.isArray(this._menuOpts)?this._menuOpts.forEach(this._registerMenuItem,this):this._menuOpts&&this._registerMenuItem(this._menuOpts),this._kbOpts){const q=Array.isArray(this._kbOpts)?this._kbOpts:[this._kbOpts];for(const te of q){let U=te.kbExpr;this.precondition&&(U?U=f.a.and(U,this.precondition):U=this.precondition);const H={id:this.id,weight:te.weight,args:te.args,when:U,primary:te.primary,secondary:te.secondary,win:te.win,linux:te.linux,mac:te.mac};u.a.registerKeybindingRule(H)}}S.a.registerCommand({id:this.id,handler:(q,te)=>this.runCommand(q,te),description:this._description})}_registerMenuItem(q){O.d.appendMenuItem(q.menuId,{group:q.group,command:{id:this.id,title:q.title,icon:q.icon,precondition:this.precondition},when:q.when,order:q.order})}}class m extends b{constructor(){super(...arguments);this._implementations=[]}addImplementation(q,te,U){return this._implementations.push({priority:q,name:te,implementation:U}),this._implementations.sort((H,W)=>W.priority-H.priority),{dispose:()=>{for(let H=0;H{const ne=W.get(f.b);return ne.contextMatchesRules(Object(p.p)(this.precondition))?this.runEditorCommand(W,H,te):void 0}):void 0}}class g extends l{constructor(q){super(g.convertOptions(q));this.label=q.label,this.alias=q.alias}static convertOptions(q){let te;Array.isArray(q.menuOpts)?te=q.menuOpts:q.menuOpts?te=[q.menuOpts]:te=[];function U(H){return H.menuId||(H.menuId=O.b.EditorContext),H.title||(H.title=q.label),H.when=f.a.and(q.precondition,H.when),H}return Array.isArray(q.contextMenuOpts)?te.push(...q.contextMenuOpts.map(U)):q.contextMenuOpts&&te.push(U(q.contextMenuOpts)),q.menuOpts=te,q}runEditorCommand(q,te,U){return this.reportTelemetry(q,te),this.run(q,te,U||{})}reportTelemetry(q,te){q.get(E.a).publicLog2("editorActionInvoked",{name:this.label,id:this.id})}}class y extends g{constructor(){super(...arguments);this._implementations=[]}addImplementation(q,te){return this._implementations.push([q,te]),this._implementations.sort((U,H)=>H[0]-U[0]),{dispose:()=>{for(let U=0;Unew Promise((ce,me)=>{try{const Oe=te(Le.object.textEditorModel,A.a.lift(ne),H.slice(2));ce(Oe)}catch(Oe){me(Oe)}}).finally(()=>{Le.dispose()}))})}function v(q,te){S.a.registerCommand(q,function(U,...H){const[W]=H;Object(p.c)(P.a.isUri(W));const ne=U.get(I.a).getModel(W);return ne?te(ne,...H.slice(1)):U.get(k.a).createModelReference(W).then(Ce=>new Promise((Le,ce)=>{try{const me=te(Ce.object.textEditorModel,H.slice(1));Le(me)}catch(me){ce(me)}}).finally(()=>{Ce.dispose()}))})}function D(q){return K.INSTANCE.registerEditorCommand(q),q}function j(q){const te=new q;return K.INSTANCE.registerEditorAction(te),te}function V(q){return K.INSTANCE.registerEditorAction(q),q}function G(q){K.INSTANCE.registerEditorAction(q)}function B(q,te){K.INSTANCE.registerEditorContribution(q,te)}var z;(function(q){function te(Ce){return K.INSTANCE.getEditorCommand(Ce)}q.getEditorCommand=te;function U(){return K.INSTANCE.getEditorActions()}q.getEditorActions=U;function H(){return K.INSTANCE.getEditorContributions()}q.getEditorContributions=H;function W(Ce){return K.INSTANCE.getEditorContributions().filter(Le=>Ce.indexOf(Le.id)>=0)}q.getSomeEditorContributions=W;function ne(){return K.INSTANCE.getDiffEditorContributions()}q.getDiffEditorContributions=ne})(z||(z={}));const Y={EditorCommonContributions:"editor.contributions"};class K{constructor(){this.editorContributions=[],this.diffEditorContributions=[],this.editorActions=[],this.editorCommands=Object.create(null)}registerEditorContribution(q,te){this.editorContributions.push({id:q,ctor:te})}getEditorContributions(){return this.editorContributions.slice(0)}getDiffEditorContributions(){return this.diffEditorContributions.slice(0)}registerEditorAction(q){q.register(),this.editorActions.push(q)}getEditorActions(){return this.editorActions.slice(0)}registerEditorCommand(q){q.register(),this.editorCommands[q.id]=q}getEditorCommand(q){return this.editorCommands[q]||null}}K.INSTANCE=new K,d.a.add(Y.EditorCommonContributions,K.INSTANCE);function Q(q){return q.register(),q}const ee=Q(new m({id:"undo",precondition:void 0,kbOpts:{weight:0,primary:2048|56},menuOpts:[{menuId:O.b.MenubarEditMenu,group:"1_do",title:h.a({key:"miUndo",comment:["&& denotes a mnemonic"]},"&&Undo"),order:1},{menuId:O.b.CommandPalette,group:"",title:h.a("undo","Undo"),order:1}]}));Q(new c(ee,{id:"default:undo",precondition:void 0}));const Se=Q(new m({id:"redo",precondition:void 0,kbOpts:{weight:0,primary:2048|55,secondary:[2048|1024|56],mac:{primary:2048|1024|56}},menuOpts:[{menuId:O.b.MenubarEditMenu,group:"1_do",title:h.a({key:"miRedo",comment:["&& denotes a mnemonic"]},"&&Redo"),order:2},{menuId:O.b.CommandPalette,group:"",title:h.a("redo","Redo"),order:1}]}));Q(new c(Se,{id:"default:redo",precondition:void 0}));const fe=Q(new m({id:"editor.action.selectAll",precondition:void 0,kbOpts:{weight:0,kbExpr:null,primary:2048|31},menuOpts:[{menuId:O.b.MenubarSelectionMenu,group:"1_basic",title:h.a({key:"miSelectAll",comment:["&& denotes a mnemonic"]},"&&Select All"),order:1},{menuId:O.b.CommandPalette,group:"",title:h.a("selectAll","Select All"),order:1}]}))},synD:function(ft,w,e){},t49l:function(ft,w,e){"use strict";e.d(w,"a",function(){return P});var h=e("Cg/j");const P=Object(h.c)("textModelService")},tADe:function(ft,w,e){"use strict";e.d(w,"c",function(){return A}),e.d(w,"a",function(){return I}),e.d(w,"b",function(){return k});var h=e("S3by"),P=e("3/fG"),L=e("Cg/j"),A;(function(O){O[O.Hint=1]="Hint",O[O.Info=2]="Info",O[O.Warning=4]="Warning",O[O.Error=8]="Error"})(A||(A={})),function(O){function S(p,n){return n-p}O.compare=S;const f=Object.create(null);f[O.Error]=Object(P.a)("sev.error","Error"),f[O.Warning]=Object(P.a)("sev.warning","Warning"),f[O.Info]=Object(P.a)("sev.info","Info");function u(p){return f[p]||""}O.toString=u;function d(p){switch(p){case h.a.Error:return O.Error;case h.a.Warning:return O.Warning;case h.a.Info:return O.Info;case h.a.Ignore:return O.Hint}}O.fromSeverity=d;function E(p){switch(p){case O.Error:return h.a.Error;case O.Warning:return h.a.Warning;case O.Info:return h.a.Info;case O.Hint:return h.a.Ignore}}O.toSeverity=E}(A||(A={}));var I;(function(O){const S="";function f(d){return u(d,!0)}O.makeKey=f;function u(d,E){let p=[S];return d.source?p.push(d.source.replace("\xA6","\\\xA6")):p.push(S),d.code?typeof d.code=="string"?p.push(d.code.replace("\xA6","\\\xA6")):p.push(d.code.value.replace("\xA6","\\\xA6")):p.push(S),d.severity!==void 0&&d.severity!==null?p.push(A.toString(d.severity)):p.push(S),d.message&&E?p.push(d.message.replace("\xA6","\\\xA6")):p.push(S),d.startLineNumber!==void 0&&d.startLineNumber!==null?p.push(d.startLineNumber.toString()):p.push(S),d.startColumn!==void 0&&d.startColumn!==null?p.push(d.startColumn.toString()):p.push(S),d.endLineNumber!==void 0&&d.endLineNumber!==null?p.push(d.endLineNumber.toString()):p.push(S),d.endColumn!==void 0&&d.endColumn!==null?p.push(d.endColumn.toString()):p.push(S),p.push(S),p.join("\xA6")}O.makeKeyOptionalMessage=u})(I||(I={}));const k=Object(L.c)("markerService")},tTk5:function(ft,w,e){"use strict";e.d(w,"b",function(){return P}),e.d(w,"a",function(){return L});var h=e("Cg/j");class P{constructor(A){this.callback=A}report(A){this._value=A,this.callback(this._value)}}P.None=Object.freeze({report(){}});const L=Object(h.c)("editorProgressService")},tX9W:function(ft,w,e){"use strict";e.d(w,"c",function(){return Ui}),e.d(w,"a",function(){return Dn}),e.d(w,"b",function(){return Ao});var h=e("/cxE"),P=e("MI8n"),L=e("pmY6"),A=e("N0LK"),I=e("bY76"),k=e("/UlZ"),O=e("cGHE"),S=e("aokT"),f=e("gCVg"),u=e("M1Kb"),d=e("oFSf");class E{constructor(){this.spacesDiff=0,this.looksLikeAlignment=!1}}function p(T,_,R,se,be){be.spacesDiff=0,be.looksLikeAlignment=!1;let Be;for(Be=0;Be<_&&Be0&&pt>0)return;if(xt>0&&Nt>0)return;let Rt=Math.abs(pt-Nt),Kt=Math.abs(ot-xt);if(Rt===0){be.spacesDiff=Kt,Kt>0&&0<=xt-1&&xt-10?be++:Ko>1&&Be++,p(ot,pt,Mo,di,Kt),Kt.looksLikeAlignment&&!(R&&_===Kt.spacesDiff))continue;let Gi=Kt.spacesDiff;Gi<=Nt&&Rt[Gi]++,ot=Mo,pt=di}let Qt=R;be!==Be&&(Qt=be{let Mo=Rt[Eo];Mo>ro&&(ro=Mo,lo=Eo)}),lo===4&&Rt[4]>0&&Rt[2]>0&&Rt[2]>=Rt[4]/2&&(lo=2)}return{insertSpaces:Qt,tabSize:lo}}function b(T){return(T.metadata&1)>>>0}function m(T,_){T.metadata=T.metadata&254|_<<0}function c(T){return(T.metadata&2)>>>1===1}function l(T,_){T.metadata=T.metadata&253|(_?1:0)<<1}function g(T){return(T.metadata&4)>>>2===1}function y(T,_){T.metadata=T.metadata&251|(_?1:0)<<2}function C(T){return(T.metadata&24)>>>3}function v(T,_){T.metadata=T.metadata&231|_<<3}function D(T){return(T.metadata&32)>>>5===1}function j(T,_){T.metadata=T.metadata&223|(_?1:0)<<5}class V{constructor(T,_,R){this.metadata=0,this.parent=this,this.left=this,this.right=this,m(this,1),this.start=_,this.end=R,this.delta=0,this.maxEnd=R,this.id=T,this.ownerId=0,this.options=null,y(this,!1),v(this,1),j(this,!1),this.cachedVersionId=0,this.cachedAbsoluteStart=_,this.cachedAbsoluteEnd=R,this.range=null,l(this,!1)}reset(T,_,R,se){this.start=_,this.end=R,this.maxEnd=R,this.cachedVersionId=T,this.cachedAbsoluteStart=_,this.cachedAbsoluteEnd=R,this.range=se}setOptions(T){this.options=T;let _=this.options.className;y(this,_==="squiggly-error"||_==="squiggly-warning"||_==="squiggly-info"),v(this,this.options.stickiness),j(this,this.options.collapseOnReplaceEdit)}setCachedOffsets(T,_,R){this.cachedVersionId!==R&&(this.range=null),this.cachedVersionId=R,this.cachedAbsoluteStart=T,this.cachedAbsoluteEnd=_}detach(){this.parent=null,this.left=null,this.right=null}}const G=new V(null,0,0);G.parent=G,G.left=G,G.right=G,m(G,0);class B{constructor(){this.root=G,this.requestNormalizeDelta=!1}intervalSearch(T,_,R,se,be){return this.root===G?[]:te(this,T,_,R,se,be)}search(T,_,R){return this.root===G?[]:q(this,T,_,R)}collectNodesFromOwner(T){return Se(this,T)}collectNodesPostOrder(){return fe(this)}insert(T){U(this,T),this._normalizeDeltaIfNecessary()}delete(T){W(this,T),this._normalizeDeltaIfNecessary()}resolveNode(T,_){const R=T;let se=0;for(;T!==this.root;)T===T.parent.right&&(se+=T.parent.delta),T=T.parent;const be=R.start+se,Be=R.end+se;R.setCachedOffsets(be,Be,_)}acceptReplace(T,_,R,se){const be=Q(this,T,T+_);for(let Be=0,ot=be.length;BeR||se===1?!1:se===2?!0:_}function K(T,_,R,se,be){const Be=C(T),ot=Be===0||Be===2,pt=Be===1||Be===2,xt=R-_,Nt=se,Rt=Math.min(xt,Nt),Kt=T.start;let Qt=!1;const lo=T.end;let ro=!1;_<=Kt&&lo<=R&&D(T)&&(T.start=_,Qt=!0,T.end=_,ro=!0);{const Mo=be?1:xt>0?2:0;!Qt&&Y(Kt,ot,_,Mo)&&(Qt=!0),!ro&&Y(lo,pt,_,Mo)&&(ro=!0)}if(Rt>0&&!be){const Mo=xt>Nt?2:0;!Qt&&Y(Kt,ot,_+Rt,Mo)&&(Qt=!0),!ro&&Y(lo,pt,_+Rt,Mo)&&(ro=!0)}{const Mo=be?1:0;!Qt&&Y(Kt,ot,R,Mo)&&(T.start=_+Nt,Qt=!0),!ro&&Y(lo,pt,R,Mo)&&(T.end=_+Nt,ro=!0)}const Eo=Nt-xt;Qt||(T.start=Math.max(0,Kt+Eo)),ro||(T.end=Math.max(0,lo+Eo)),T.start>T.end&&(T.end=T.start)}function Q(T,_,R){let se=T.root,be=0,Be=0,ot=0,pt=0,xt=[],Nt=0;for(;se!==G;){if(c(se)){l(se.left,!1),l(se.right,!1),se===se.parent.right&&(be-=se.parent.delta),se=se.parent;continue}if(!c(se.left)){if(Be=be+se.maxEnd,Be<_){l(se,!0);continue}if(se.left!==G){se=se.left;continue}}if(ot=be+se.start,ot>R){l(se,!0);continue}if(pt=be+se.end,pt>=_&&(se.setCachedOffsets(ot,pt,0),xt[Nt++]=se),l(se,!0),se.right!==G&&!c(se.right)){be+=se.delta,se=se.right;continue}}return l(T.root,!1),xt}function ee(T,_,R,se){let be=T.root,Be=0,ot=0,pt=0;const xt=se-(R-_);for(;be!==G;){if(c(be)){l(be.left,!1),l(be.right,!1),be===be.parent.right&&(Be-=be.parent.delta),Oe(be),be=be.parent;continue}if(!c(be.left)){if(ot=Be+be.maxEnd,ot<_){l(be,!0);continue}if(be.left!==G){be=be.left;continue}}if(pt=Be+be.start,pt>R){be.start+=xt,be.end+=xt,be.delta+=xt,(be.delta<-1073741824||be.delta>1073741824)&&(T.requestNormalizeDelta=!0),l(be,!0);continue}if(l(be,!0),be.right!==G&&!c(be.right)){Be+=be.delta,be=be.right;continue}}l(T.root,!1)}function Se(T,_){let R=T.root,se=[],be=0;for(;R!==G;){if(c(R)){l(R.left,!1),l(R.right,!1),R=R.parent;continue}if(R.left!==G&&!c(R.left)){R=R.left;continue}if(R.ownerId===_&&(se[be++]=R),l(R,!0),R.right!==G&&!c(R.right)){R=R.right;continue}}return l(T.root,!1),se}function fe(T){let _=T.root,R=[],se=0;for(;_!==G;){if(c(_)){l(_.left,!1),l(_.right,!1),_=_.parent;continue}if(_.left!==G&&!c(_.left)){_=_.left;continue}if(_.right!==G&&!c(_.right)){_=_.right;continue}R[se++]=_,l(_,!0)}return l(T.root,!1),R}function q(T,_,R,se){let be=T.root,Be=0,ot=0,pt=0,xt=[],Nt=0;for(;be!==G;){if(c(be)){l(be.left,!1),l(be.right,!1),be===be.parent.right&&(Be-=be.parent.delta),be=be.parent;continue}if(be.left!==G&&!c(be.left)){be=be.left;continue}ot=Be+be.start,pt=Be+be.end,be.setCachedOffsets(ot,pt,se);let Rt=!0;if(_&&be.ownerId&&be.ownerId!==_&&(Rt=!1),R&&g(be)&&(Rt=!1),Rt&&(xt[Nt++]=be),l(be,!0),be.right!==G&&!c(be.right)){Be+=be.delta,be=be.right;continue}}return l(T.root,!1),xt}function te(T,_,R,se,be,Be){let ot=T.root,pt=0,xt=0,Nt=0,Rt=0,Kt=[],Qt=0;for(;ot!==G;){if(c(ot)){l(ot.left,!1),l(ot.right,!1),ot===ot.parent.right&&(pt-=ot.parent.delta),ot=ot.parent;continue}if(!c(ot.left)){if(xt=pt+ot.maxEnd,xt<_){l(ot,!0);continue}if(ot.left!==G){ot=ot.left;continue}}if(Nt=pt+ot.start,Nt>R){l(ot,!0);continue}if(Rt=pt+ot.end,Rt>=_){ot.setCachedOffsets(Nt,Rt,Be);let lo=!0;se&&ot.ownerId&&ot.ownerId!==se&&(lo=!1),be&&g(ot)&&(lo=!1),lo&&(Kt[Qt++]=ot)}if(l(ot,!0),ot.right!==G&&!c(ot.right)){pt+=ot.delta,ot=ot.right;continue}}return l(T.root,!1),Kt}function U(T,_){if(T.root===G)return _.parent=G,_.left=G,_.right=G,m(_,0),T.root=_,T.root;H(T,_),oe(_.parent);let R=_;for(;R!==T.root&&b(R.parent)===1;)if(R.parent===R.parent.parent.left){const se=R.parent.parent.right;b(se)===1?(m(R.parent,0),m(se,0),m(R.parent.parent,1),R=R.parent.parent):(R===R.parent.right&&(R=R.parent,Le(T,R)),m(R.parent,0),m(R.parent.parent,1),ce(T,R.parent.parent))}else{const se=R.parent.parent.left;b(se)===1?(m(R.parent,0),m(se,0),m(R.parent.parent,1),R=R.parent.parent):(R===R.parent.left&&(R=R.parent,ce(T,R)),m(R.parent,0),m(R.parent.parent,1),Le(T,R.parent.parent))}return m(T.root,0),_}function H(T,_){let R=0,se=T.root;const be=_.start,Be=_.end;for(;;){const ot=De(be,Be,se.start+R,se.end+R);if(ot<0)if(se.left===G){_.start-=R,_.end-=R,_.maxEnd-=R,se.left=_;break}else se=se.left;else if(se.right===G){_.start-=R+se.delta,_.end-=R+se.delta,_.maxEnd-=R+se.delta,se.right=_;break}else R+=se.delta,se=se.right}_.parent=se,_.left=G,_.right=G,m(_,1)}function W(T,_){let R,se;if(_.left===G?(R=_.right,se=_,R.delta+=_.delta,(R.delta<-1073741824||R.delta>1073741824)&&(T.requestNormalizeDelta=!0),R.start+=_.delta,R.end+=_.delta):_.right===G?(R=_.left,se=_):(se=ne(_.right),R=se.right,R.start+=se.delta,R.end+=se.delta,R.delta+=se.delta,(R.delta<-1073741824||R.delta>1073741824)&&(T.requestNormalizeDelta=!0),se.start+=_.delta,se.end+=_.delta,se.delta=_.delta,(se.delta<-1073741824||se.delta>1073741824)&&(T.requestNormalizeDelta=!0)),se===T.root){T.root=R,m(R,0),_.detach(),Ce(),Oe(R),T.root.parent=G;return}let be=b(se)===1;if(se===se.parent.left?se.parent.left=R:se.parent.right=R,se===_?R.parent=se.parent:(se.parent===_?R.parent=se:R.parent=se.parent,se.left=_.left,se.right=_.right,se.parent=_.parent,m(se,b(_)),_===T.root?T.root=se:_===_.parent.left?_.parent.left=se:_.parent.right=se,se.left!==G&&(se.left.parent=se),se.right!==G&&(se.right.parent=se)),_.detach(),be){oe(R.parent),se!==_&&(oe(se),oe(se.parent)),Ce();return}oe(R),oe(R.parent),se!==_&&(oe(se),oe(se.parent));let Be;for(;R!==T.root&&b(R)===0;)R===R.parent.left?(Be=R.parent.right,b(Be)===1&&(m(Be,0),m(R.parent,1),Le(T,R.parent),Be=R.parent.right),b(Be.left)===0&&b(Be.right)===0?(m(Be,1),R=R.parent):(b(Be.right)===0&&(m(Be.left,0),m(Be,1),ce(T,Be),Be=R.parent.right),m(Be,b(R.parent)),m(R.parent,0),m(Be.right,0),Le(T,R.parent),R=T.root)):(Be=R.parent.left,b(Be)===1&&(m(Be,0),m(R.parent,1),ce(T,R.parent),Be=R.parent.left),b(Be.left)===0&&b(Be.right)===0?(m(Be,1),R=R.parent):(b(Be.left)===0&&(m(Be.right,0),m(Be,1),Le(T,Be),Be=R.parent.left),m(Be,b(R.parent)),m(R.parent,0),m(Be.left,0),ce(T,R.parent),R=T.root));m(R,0),Ce()}function ne(T){for(;T.left!==G;)T=T.left;return T}function Ce(){G.parent=G,G.delta=0,G.start=0,G.end=0}function Le(T,_){const R=_.right;R.delta+=_.delta,(R.delta<-1073741824||R.delta>1073741824)&&(T.requestNormalizeDelta=!0),R.start+=_.delta,R.end+=_.delta,_.right=R.left,R.left!==G&&(R.left.parent=_),R.parent=_.parent,_.parent===G?T.root=R:_===_.parent.left?_.parent.left=R:_.parent.right=R,R.left=_,_.parent=R,Oe(_),Oe(R)}function ce(T,_){const R=_.left;_.delta-=R.delta,(_.delta<-1073741824||_.delta>1073741824)&&(T.requestNormalizeDelta=!0),_.start-=R.delta,_.end-=R.delta,_.left=R.right,R.right!==G&&(R.right.parent=_),R.parent=_.parent,_.parent===G?T.root=R:_===_.parent.right?_.parent.right=R:_.parent.left=R,R.right=_,_.parent=R,Oe(_),Oe(R)}function me(T){let _=T.end;if(T.left!==G){const R=T.left.maxEnd;R>_&&(_=R)}if(T.right!==G){const R=T.right.maxEnd+T.delta;R>_&&(_=R)}return _}function Oe(T){T.maxEnd=me(T)}function oe(T){for(;T!==G;){const _=me(T);if(T.maxEnd===_)return;T.maxEnd=_,T=T.parent}}function De(T,_,R,se){return T===R?_-se:T-R}class Ne{constructor(T,_){this.piece=T,this.color=_,this.size_left=0,this.lf_left=0,this.parent=this,this.left=this,this.right=this}next(){if(this.right!==ve)return re(this.right);let T=this;for(;T.parent!==ve&&!(T.parent.left===T);)T=T.parent;return T.parent===ve?ve:T.parent}prev(){if(this.left!==ve)return we(this.left);let T=this;for(;T.parent!==ve&&!(T.parent.right===T);)T=T.parent;return T.parent===ve?ve:T.parent}detach(){this.parent=null,this.left=null,this.right=null}}const ve=new Ne(null,0);ve.parent=ve,ve.left=ve,ve.right=ve,ve.color=0;function re(T){for(;T.left!==ve;)T=T.left;return T}function we(T){for(;T.right!==ve;)T=T.right;return T}function Ie(T){return T===ve?0:T.size_left+T.piece.length+Ie(T.right)}function ge(T){return T===ve?0:T.lf_left+T.piece.lineFeedCnt+ge(T.right)}function ye(){ve.parent=ve}function ze(T,_){let R=_.right;R.size_left+=_.size_left+(_.piece?_.piece.length:0),R.lf_left+=_.lf_left+(_.piece?_.piece.lineFeedCnt:0),_.right=R.left,R.left!==ve&&(R.left.parent=_),R.parent=_.parent,_.parent===ve?T.root=R:_.parent.left===_?_.parent.left=R:_.parent.right=R,R.left=_,_.parent=R}function xe(T,_){let R=_.left;_.left=R.right,R.right!==ve&&(R.right.parent=_),R.parent=_.parent,_.size_left-=R.size_left+(R.piece?R.piece.length:0),_.lf_left-=R.lf_left+(R.piece?R.piece.lineFeedCnt:0),_.parent===ve?T.root=R:_===_.parent.right?_.parent.right=R:_.parent.left=R,R.right=_,_.parent=R}function Te(T,_){let R,se;if(_.left===ve?(se=_,R=se.right):_.right===ve?(se=_,R=se.left):(se=re(_.right),R=se.right),se===T.root){T.root=R,R.color=0,_.detach(),ye(),T.root.parent=ve;return}let be=se.color===1;if(se===se.parent.left?se.parent.left=R:se.parent.right=R,se===_?(R.parent=se.parent,nt(T,R)):(se.parent===_?R.parent=se:R.parent=se.parent,nt(T,R),se.left=_.left,se.right=_.right,se.parent=_.parent,se.color=_.color,_===T.root?T.root=se:_===_.parent.left?_.parent.left=se:_.parent.right=se,se.left!==ve&&(se.left.parent=se),se.right!==ve&&(se.right.parent=se),se.size_left=_.size_left,se.lf_left=_.lf_left,nt(T,se)),_.detach(),R.parent.left===R){let ot=Ie(R),pt=ge(R);if(ot!==R.parent.size_left||pt!==R.parent.lf_left){let xt=ot-R.parent.size_left,Nt=pt-R.parent.lf_left;R.parent.size_left=ot,R.parent.lf_left=pt,st(T,R.parent,xt,Nt)}}if(nt(T,R.parent),be){ye();return}let Be;for(;R!==T.root&&R.color===0;)R===R.parent.left?(Be=R.parent.right,Be.color===1&&(Be.color=0,R.parent.color=1,ze(T,R.parent),Be=R.parent.right),Be.left.color===0&&Be.right.color===0?(Be.color=1,R=R.parent):(Be.right.color===0&&(Be.left.color=0,Be.color=1,xe(T,Be),Be=R.parent.right),Be.color=R.parent.color,R.parent.color=0,Be.right.color=0,ze(T,R.parent),R=T.root)):(Be=R.parent.left,Be.color===1&&(Be.color=0,R.parent.color=1,xe(T,R.parent),Be=R.parent.left),Be.left.color===0&&Be.right.color===0?(Be.color=1,R=R.parent):(Be.left.color===0&&(Be.right.color=0,Be.color=1,ze(T,Be),Be=R.parent.left),Be.color=R.parent.color,R.parent.color=0,Be.left.color=0,xe(T,R.parent),R=T.root));R.color=0,ye()}function He(T,_){for(nt(T,_);_!==T.root&&_.parent.color===1;)if(_.parent===_.parent.parent.left){const R=_.parent.parent.right;R.color===1?(_.parent.color=0,R.color=0,_.parent.parent.color=1,_=_.parent.parent):(_===_.parent.right&&(_=_.parent,ze(T,_)),_.parent.color=0,_.parent.parent.color=1,xe(T,_.parent.parent))}else{const R=_.parent.parent.left;R.color===1?(_.parent.color=0,R.color=0,_.parent.parent.color=1,_=_.parent.parent):(_===_.parent.left&&(_=_.parent,xe(T,_)),_.parent.color=0,_.parent.parent.color=1,ze(T,_.parent.parent))}T.root.color=0}function st(T,_,R,se){for(;_!==T.root&&_!==ve;)_.parent.left===_&&(_.parent.size_left+=R,_.parent.lf_left+=se),_=_.parent}function nt(T,_){let R=0,se=0;if(_===T.root)return;for(;_!==T.root&&_===_.parent.right;)_=_.parent;if(_===T.root)return;for(_=_.parent,R=Ie(_.left)-_.size_left,se=ge(_.left)-_.lf_left,_.size_left+=R,_.lf_left+=se;_!==T.root&&(R!==0||se!==0);)_.parent.left===_&&(_.parent.size_left+=R,_.parent.lf_left+=se),_=_.parent}var rt=e("jAJ/");const wt=65535;function Pt(T){let _;return T[T.length-1]<65536?_=new Uint16Array(T.length):_=new Uint32Array(T.length),_.set(T,0),_}class no{constructor(T,_,R,se,be){this.lineStarts=T,this.cr=_,this.lf=R,this.crlf=se,this.isBasicASCII=be}}function ht(T,_=!0){let R=[0],se=1;for(let be=0,Be=T.length;be126)&&(ot=!1))}const pt=new no(Pt(T),se,be,Be,ot);return T.length=0,pt}class le{constructor(T,_,R,se,be){this.bufferIndex=T,this.start=_,this.end=R,this.lineFeedCnt=se,this.length=be}}class Pe{constructor(T,_){this.buffer=T,this.lineStarts=_}}class it{constructor(T,_){this._pieces=[],this._tree=T,this._BOM=_,this._index=0,T.root!==ve&&T.iterate(T.root,R=>(R!==ve&&this._pieces.push(R.piece),!0))}read(){return this._pieces.length===0?this._index===0?(this._index++,this._BOM):null:this._index>this._pieces.length-1?null:this._index===0?this._BOM+this._tree.getPieceContent(this._pieces[this._index++]):this._tree.getPieceContent(this._pieces[this._index++])}}class Dt{constructor(T){this._limit=T,this._cache=[]}get(T){for(let _=this._cache.length-1;_>=0;_--){let R=this._cache[_];if(R.nodeStartOffset<=T&&R.nodeStartOffset+R.node.piece.length>=T)return R}return null}get2(T){for(let _=this._cache.length-1;_>=0;_--){let R=this._cache[_];if(R.nodeStartLineNumber&&R.nodeStartLineNumber=T)return R}return null}set(T){this._cache.length>=this._limit&&this._cache.shift(),this._cache.push(T)}validate(T){let _=!1,R=this._cache;for(let se=0;se=T){R[se]=null,_=!0;continue}}if(_){let se=[];for(const be of R)be!==null&&se.push(be);this._cache=se}}}class kt{constructor(T,_,R){this.create(T,_,R)}create(T,_,R){this._buffers=[new Pe("",[0])],this._lastChangeBufferPos={line:0,column:0},this.root=ve,this._lineCnt=1,this._length=0,this._EOL=_,this._EOLLength=_.length,this._EOLNormalized=R;let se=null;for(let be=0,Be=T.length;be0){T[be].lineStarts||(T[be].lineStarts=ht(T[be].buffer));let ot=new le(be+1,{line:0,column:0},{line:T[be].lineStarts.length-1,column:T[be].buffer.length-T[be].lineStarts[T[be].lineStarts.length-1]},T[be].lineStarts.length-1,T[be].buffer.length);this._buffers.push(T[be]),se=this.rbInsertRight(se,ot)}this._searchCache=new Dt(1),this._lastVisitedLine={lineNumber:0,value:""},this.computeBufferMetadata()}normalizeEOL(T){let _=wt,R=_-Math.floor(_/3),se=R*2,be="",Be=0,ot=[];if(this.iterate(this.root,pt=>{let xt=this.getNodeContent(pt),Nt=xt.length;if(Be<=R||Be+Nt0){let pt=be.replace(/\r\n|\r|\n/g,T);ot.push(new Pe(pt,ht(pt)))}this.create(ot,T,!0)}getEOL(){return this._EOL}setEOL(T){this._EOL=T,this._EOLLength=this._EOL.length,this.normalizeEOL(T)}createSnapshot(T){return new it(this,T)}getOffsetAt(T,_){let R=0,se=this.root;for(;se!==ve;)if(se.left!==ve&&se.lf_left+1>=T)se=se.left;else if(se.lf_left+se.piece.lineFeedCnt+1>=T){R+=se.size_left;let be=this.getAccumulatedValue(se,T-se.lf_left-2);return R+=be+_-1}else T-=se.lf_left+se.piece.lineFeedCnt,R+=se.size_left+se.piece.length,se=se.right;return R}getPositionAt(T){T=Math.floor(T),T=Math.max(0,T);let _=this.root,R=0,se=T;for(;_!==ve;)if(_.size_left!==0&&_.size_left>=T)_=_.left;else if(_.size_left+_.piece.length>=T){let be=this.getIndexOf(_,T-_.size_left);if(R+=_.lf_left+be.index,be.index===0){let Be=this.getOffsetAt(R+1,1),ot=se-Be;return new O.a(R+1,ot+1)}return new O.a(R+1,be.remainder+1)}else if(T-=_.size_left+_.piece.length,R+=_.lf_left+_.piece.lineFeedCnt,_.right===ve){let be=this.getOffsetAt(R+1,1),Be=se-T-be;return new O.a(R+1,Be+1)}else _=_.right;return new O.a(1,1)}getValueInRange(T,_){if(T.startLineNumber===T.endLineNumber&&T.startColumn===T.endColumn)return"";let R=this.nodeAt2(T.startLineNumber,T.startColumn),se=this.nodeAt2(T.endLineNumber,T.endColumn),be=this.getValueInRange2(R,se);return _?_!==this._EOL||!this._EOLNormalized?be.replace(/\r\n|\r|\n/g,_):_===this.getEOL()&&this._EOLNormalized?(_===`\r `,be):be.replace(/\r\n|\r|\n/g,_):be}getValueInRange2(T,_){if(T.node===_.node){let ot=T.node,pt=this._buffers[ot.piece.bufferIndex].buffer,xt=this.offsetInBuffer(ot.piece.bufferIndex,ot.piece.start);return pt.substring(xt+T.remainder,xt+_.remainder)}let R=T.node,se=this._buffers[R.piece.bufferIndex].buffer,be=this.offsetInBuffer(R.piece.bufferIndex,R.piece.start),Be=se.substring(be+T.remainder,be+R.piece.length);for(R=R.next();R!==ve;){let ot=this._buffers[R.piece.bufferIndex].buffer,pt=this.offsetInBuffer(R.piece.bufferIndex,R.piece.start);if(R===_.node){Be+=ot.substring(pt,pt+_.remainder);break}else Be+=ot.substr(pt,R.piece.length);R=R.next()}return Be}getLinesContent(){let T=[],_=0,R="",se=!1;return this.iterate(this.root,be=>{if(be===ve)return!0;const Be=be.piece;let ot=Be.length;if(ot===0)return!0;const pt=this._buffers[Be.bufferIndex].buffer,xt=this._buffers[Be.bufferIndex].lineStarts,Nt=Be.start.line,Rt=Be.end.line;let Kt=xt[Nt]+Be.start.column;if(se&&(pt.charCodeAt(Kt)===10&&(Kt++,ot--),T[_++]=R,R="",se=!1,ot===0))return!0;if(Nt===Rt)return!this._EOLNormalized&&pt.charCodeAt(Kt+ot-1)===13?(se=!0,R+=pt.substr(Kt,ot-1)):R+=pt.substr(Kt,ot),!0;R+=this._EOLNormalized?pt.substring(Kt,Math.max(Kt,xt[Nt+1]-this._EOLLength)):pt.substring(Kt,xt[Nt+1]).replace(/(\r\n|\r|\n)$/,""),T[_++]=R;for(let Qt=Nt+1;Qtdi+lo,_.reset(0)):(Fo=Kt.buffer,Bo=di=>di,_.reset(lo));do if(Eo=_.next(Fo),Eo){if(Bo(Eo.index)>=ro)return Nt;this.positionInBuffer(T,Bo(Eo.index)-Qt,Mo);let di=this.getLineFeedCnt(T.piece.bufferIndex,be,Mo),Ko=Mo.line===be.line?Mo.column-be.column+se:Mo.column+1,ei=Ko+Eo[0].length;if(Rt[Nt++]=Object(rt.d)(new S.a(R+di,Ko,R+di,ei),Eo,pt),Bo(Eo.index)+Eo[0].length>=ro)return Nt;if(Nt>=xt)return Nt}while(Eo);return Nt}findMatchesLineByLine(T,_,R,se){const be=[];let Be=0;const ot=new rt.b(_.wordSeparators,_.regex);let pt=this.nodeAt2(T.startLineNumber,T.startColumn);if(pt===null)return[];let xt=this.nodeAt2(T.endLineNumber,T.endColumn);if(xt===null)return[];let Nt=this.positionInBuffer(pt.node,pt.remainder),Rt=this.positionInBuffer(xt.node,xt.remainder);if(pt.node===xt.node)return this.findMatchesInNode(pt.node,ot,T.startLineNumber,T.startColumn,Nt,Rt,_,R,se,Be,be),be;let Kt=T.startLineNumber,Qt=pt.node;for(;Qt!==xt.node;){let ro=this.getLineFeedCnt(Qt.piece.bufferIndex,Nt,Qt.piece.end);if(ro>=1){let Mo=this._buffers[Qt.piece.bufferIndex].lineStarts,Fo=this.offsetInBuffer(Qt.piece.bufferIndex,Qt.piece.start),Bo=Mo[Nt.line+ro],di=Kt===T.startLineNumber?T.startColumn:1;if(Be=this.findMatchesInNode(Qt,ot,Kt,di,Nt,this.positionInBuffer(Qt,Bo-Fo),_,R,se,Be,be),Be>=se)return be;Kt+=ro}let Eo=Kt===T.startLineNumber?T.startColumn-1:0;if(Kt===T.endLineNumber){const Mo=this.getLineContent(Kt).substring(Eo,T.endColumn-1);return Be=this._findMatchesInLine(_,ot,Mo,T.endLineNumber,Eo,Be,be,R,se),be}if(Be=this._findMatchesInLine(_,ot,this.getLineContent(Kt).substr(Eo),Kt,Eo,Be,be,R,se),Be>=se)return be;Kt++,pt=this.nodeAt2(Kt,1),Qt=pt.node,Nt=this.positionInBuffer(pt.node,pt.remainder)}if(Kt===T.endLineNumber){let ro=Kt===T.startLineNumber?T.startColumn-1:0;const Eo=this.getLineContent(Kt).substring(ro,T.endColumn-1);return Be=this._findMatchesInLine(_,ot,Eo,T.endLineNumber,ro,Be,be,R,se),be}let lo=Kt===T.startLineNumber?T.startColumn:1;return Be=this.findMatchesInNode(xt.node,ot,Kt,lo,Nt,Rt,_,R,se,Be,be),be}_findMatchesInLine(T,_,R,se,be,Be,ot,pt,xt){const Nt=T.wordSeparators;if(!pt&&T.simpleSearch){const Kt=T.simpleSearch,Qt=Kt.length,lo=R.length;let ro=-Qt;for(;(ro=R.indexOf(Kt,ro+Qt))!==-1;)if((!Nt||Object(rt.e)(Nt,R,lo,ro,Qt))&&(ot[Be++]=new u.b(new S.a(se,ro+1+be,se,ro+1+Qt+be),null),Be>=xt))return Be;return Be}let Rt;_.reset(0);do if(Rt=_.next(R),Rt&&(ot[Be++]=Object(rt.d)(new S.a(se,Rt.index+1+be,se,Rt.index+1+Rt[0].length+be),Rt,pt),Be>=xt))return Be;while(Rt);return Be}insert(T,_,R=!1){if(this._EOLNormalized=this._EOLNormalized&&R,this._lastVisitedLine.lineNumber=0,this._lastVisitedLine.value="",this.root!==ve){let{node:se,remainder:be,nodeStartOffset:Be}=this.nodeAt(T),ot=se.piece,pt=ot.bufferIndex,xt=this.positionInBuffer(se,be);if(se.piece.bufferIndex===0&&ot.end.line===this._lastChangeBufferPos.line&&ot.end.column===this._lastChangeBufferPos.column&&Be+ot.length===T&&_.lengthT){let Nt=[],Rt=new le(ot.bufferIndex,xt,ot.end,this.getLineFeedCnt(ot.bufferIndex,xt,ot.end),this.offsetInBuffer(pt,ot.end)-this.offsetInBuffer(pt,xt));if(this.shouldCheckCRLF()&&this.endWithCR(_)){let lo=this.nodeCharCodeAt(se,be);if(lo===10){let ro={line:Rt.start.line+1,column:0};Rt=new le(Rt.bufferIndex,ro,Rt.end,this.getLineFeedCnt(Rt.bufferIndex,ro,Rt.end),Rt.length-1),_+=` `}}if(this.shouldCheckCRLF()&&this.startWithLF(_)){let lo=this.nodeCharCodeAt(se,be-1);if(lo===13){let ro=this.positionInBuffer(se,be-1);this.deleteNodeTail(se,ro),_="\r"+_,se.piece.length===0&&Nt.push(se)}else this.deleteNodeTail(se,xt)}else this.deleteNodeTail(se,xt);let Kt=this.createNewPieces(_);Rt.length>0&&this.rbInsertRight(se,Rt);let Qt=se;for(let lo=0;lo=0;Be--)be=this.rbInsertLeft(be,se[Be]);this.validateCRLFWithPrevNode(be),this.deleteNodes(R)}insertContentToNodeRight(T,_){this.adjustCarriageReturnFromNext(T,_)&&(T+=` `);let R=this.createNewPieces(T),se=this.rbInsertRight(_,R[0]),be=se;for(let Be=1;Be=Kt)xt=Rt+1;else break;return R?(R.line=Rt,R.column=pt-Qt,null):{line:Rt,column:pt-Qt}}getLineFeedCnt(T,_,R){if(R.column===0)return R.line-_.line;let se=this._buffers[T].lineStarts;if(R.line===se.length-1)return R.line-_.line;let be=se[R.line+1],Be=se[R.line]+R.column;if(be>Be+1)return R.line-_.line;let ot=Be-1,pt=this._buffers[T].buffer;return pt.charCodeAt(ot)===13?R.line-_.line+1:R.line-_.line}offsetInBuffer(T,_){let R=this._buffers[T].lineStarts;return R[_.line]+_.column}deleteNodes(T){for(let _=0;_wt){let Nt=[];for(;T.length>wt;){const Kt=T.charCodeAt(wt-1);let Qt;Kt===13||Kt>=55296&&Kt<=56319?(Qt=T.substring(0,wt-1),T=T.substring(wt-1)):(Qt=T.substring(0,wt),T=T.substring(wt));let lo=ht(Qt);Nt.push(new le(this._buffers.length,{line:0,column:0},{line:lo.length-1,column:Qt.length-lo[lo.length-1]},lo.length-1,Qt.length)),this._buffers.push(new Pe(Qt,lo))}let Rt=ht(T);return Nt.push(new le(this._buffers.length,{line:0,column:0},{line:Rt.length-1,column:T.length-Rt[Rt.length-1]},Rt.length-1,T.length)),this._buffers.push(new Pe(T,Rt)),Nt}let _=this._buffers[0].buffer.length;const R=ht(T,!1);let se=this._lastChangeBufferPos;if(this._buffers[0].lineStarts[this._buffers[0].lineStarts.length-1]===_&&_!==0&&this.startWithLF(T)&&this.endWithCR(this._buffers[0].buffer)){this._lastChangeBufferPos={line:this._lastChangeBufferPos.line,column:this._lastChangeBufferPos.column+1},se=this._lastChangeBufferPos;for(let Nt=0;Nt=T-1)R=R.left;else if(R.lf_left+R.piece.lineFeedCnt>T-1){let pt=this.getAccumulatedValue(R,T-R.lf_left-2),xt=this.getAccumulatedValue(R,T-R.lf_left-1),Nt=this._buffers[R.piece.bufferIndex].buffer,Rt=this.offsetInBuffer(R.piece.bufferIndex,R.piece.start);return Be+=R.size_left,this._searchCache.set({node:R,nodeStartOffset:Be,nodeStartLineNumber:ot-(T-1-R.lf_left)}),Nt.substring(Rt+pt,Rt+xt-_)}else if(R.lf_left+R.piece.lineFeedCnt===T-1){let pt=this.getAccumulatedValue(R,T-R.lf_left-2),xt=this._buffers[R.piece.bufferIndex].buffer,Nt=this.offsetInBuffer(R.piece.bufferIndex,R.piece.start);se=xt.substring(Nt+pt,Nt+R.piece.length);break}else T-=R.lf_left+R.piece.lineFeedCnt,Be+=R.size_left+R.piece.length,R=R.right}for(R=R.next();R!==ve;){let Be=this._buffers[R.piece.bufferIndex].buffer;if(R.piece.lineFeedCnt>0){let ot=this.getAccumulatedValue(R,0),pt=this.offsetInBuffer(R.piece.bufferIndex,R.piece.start);return se+=Be.substring(pt,pt+ot-_),se}else{let ot=this.offsetInBuffer(R.piece.bufferIndex,R.piece.start);se+=Be.substr(ot,R.piece.length)}R=R.next()}return se}computeBufferMetadata(){let T=this.root,_=1,R=0;for(;T!==ve;)_+=T.lf_left+T.piece.lineFeedCnt,R+=T.size_left+T.piece.length,T=T.right;this._lineCnt=_,this._length=R,this._searchCache.validate(this._length)}getIndexOf(T,_){let R=T.piece,se=this.positionInBuffer(T,_),be=se.line-R.start.line;if(this.offsetInBuffer(R.bufferIndex,R.end)-this.offsetInBuffer(R.bufferIndex,R.start)===_){let Be=this.getLineFeedCnt(T.piece.bufferIndex,R.start,se);if(Be!==be)return{index:Be,remainder:0}}return{index:be,remainder:se.column}}getAccumulatedValue(T,_){if(_<0)return 0;let R=T.piece,se=this._buffers[R.bufferIndex].lineStarts,be=R.start.line+_+1;return be>R.end.line?se[R.end.line]+R.end.column-se[R.start.line]-R.start.column:se[be]-se[R.start.line]-R.start.column}deleteNodeTail(T,_){const R=T.piece,se=R.lineFeedCnt,be=this.offsetInBuffer(R.bufferIndex,R.end),Be=_,ot=this.offsetInBuffer(R.bufferIndex,Be),pt=this.getLineFeedCnt(R.bufferIndex,R.start,Be),xt=pt-se,Nt=ot-be,Rt=R.length+Nt;T.piece=new le(R.bufferIndex,R.start,Be,pt,Rt),st(this,T,Nt,xt)}deleteNodeHead(T,_){const R=T.piece,se=R.lineFeedCnt,be=this.offsetInBuffer(R.bufferIndex,R.start),Be=_,ot=this.getLineFeedCnt(R.bufferIndex,Be,R.end),pt=this.offsetInBuffer(R.bufferIndex,Be),xt=ot-se,Nt=be-pt,Rt=R.length+Nt;T.piece=new le(R.bufferIndex,Be,R.end,ot,Rt),st(this,T,Nt,xt)}shrinkNode(T,_,R){const se=T.piece,be=se.start,Be=se.end,ot=se.length,pt=se.lineFeedCnt,xt=_,Nt=this.getLineFeedCnt(se.bufferIndex,se.start,xt),Rt=this.offsetInBuffer(se.bufferIndex,_)-this.offsetInBuffer(se.bufferIndex,be);T.piece=new le(se.bufferIndex,se.start,xt,Nt,Rt),st(this,T,Rt-ot,Nt-pt);let Kt=new le(se.bufferIndex,R,Be,this.getLineFeedCnt(se.bufferIndex,R,Be),this.offsetInBuffer(se.bufferIndex,Be)-this.offsetInBuffer(se.bufferIndex,R)),Qt=this.rbInsertRight(T,Kt);this.validateCRLFWithPrevNode(Qt)}appendToNode(T,_){this.adjustCarriageReturnFromNext(_,T)&&(_+=` `);const R=this.shouldCheckCRLF()&&this.startWithLF(_)&&this.endWithCR(T),se=this._buffers[0].buffer.length;this._buffers[0].buffer+=_;const be=ht(_,!1);for(let Qt=0;QtT)_=_.left;else if(_.size_left+_.piece.length>=T){se+=_.size_left;let be={node:_,remainder:T-_.size_left,nodeStartOffset:se};return this._searchCache.set(be),be}else T-=_.size_left+_.piece.length,se+=_.size_left+_.piece.length,_=_.right;return null}nodeAt2(T,_){let R=this.root,se=0;for(;R!==ve;)if(R.left!==ve&&R.lf_left>=T-1)R=R.left;else if(R.lf_left+R.piece.lineFeedCnt>T-1){let be=this.getAccumulatedValue(R,T-R.lf_left-2),Be=this.getAccumulatedValue(R,T-R.lf_left-1);return se+=R.size_left,{node:R,remainder:Math.min(be+_-1,Be),nodeStartOffset:se}}else if(R.lf_left+R.piece.lineFeedCnt===T-1){let be=this.getAccumulatedValue(R,T-R.lf_left-2);if(be+_-1<=R.piece.length)return{node:R,remainder:be+_-1,nodeStartOffset:se};_-=R.piece.length-be;break}else T-=R.lf_left+R.piece.lineFeedCnt,se+=R.size_left+R.piece.length,R=R.right;for(R=R.next();R!==ve;){if(R.piece.lineFeedCnt>0){let be=this.getAccumulatedValue(R,0),Be=this.offsetOfNode(R);return{node:R,remainder:Math.min(_-1,be),nodeStartOffset:Be}}else if(R.piece.length>=_-1){let be=this.offsetOfNode(R);return{node:R,remainder:_-1,nodeStartOffset:be}}else _-=R.piece.length;R=R.next()}return null}nodeCharCodeAt(T,_){if(T.piece.lineFeedCnt<1)return-1;let R=this._buffers[T.piece.bufferIndex],se=this.offsetInBuffer(T.piece.bufferIndex,T.piece.start)+_;return R.buffer.charCodeAt(se)}offsetOfNode(T){if(!T)return 0;let _=T.size_left;for(;T!==this.root;)T.parent.right===T&&(_+=T.parent.size_left+T.parent.piece.length),T=T.parent;return _}shouldCheckCRLF(){return!(this._EOLNormalized&&this._EOL===` `)}startWithLF(T){if(typeof T=="string")return T.charCodeAt(0)===10;if(T===ve||T.piece.lineFeedCnt===0)return!1;let _=T.piece,R=this._buffers[_.bufferIndex].lineStarts,se=_.start.line,be=R[se]+_.start.column;if(se===R.length-1)return!1;let Be=R[se+1];return Be>be+1?!1:this._buffers[_.bufferIndex].buffer.charCodeAt(be)===10}endWithCR(T){return typeof T=="string"?T.charCodeAt(T.length-1)===13:T===ve||T.piece.lineFeedCnt===0?!1:this.nodeCharCodeAt(T,T.piece.length-1)===13}validateCRLFWithPrevNode(T){if(this.shouldCheckCRLF()&&this.startWithLF(T)){let _=T.prev();this.endWithCR(_)&&this.fixCRLF(_,T)}}validateCRLFWithNextNode(T){if(this.shouldCheckCRLF()&&this.endWithCR(T)){let _=T.next();this.startWithLF(_)&&this.fixCRLF(T,_)}}fixCRLF(T,_){let R=[],se=this._buffers[T.piece.bufferIndex].lineStarts,be;T.piece.end.column===0?be={line:T.piece.end.line-1,column:se[T.piece.end.line]-se[T.piece.end.line-1]-1}:be={line:T.piece.end.line,column:T.piece.end.column-1};const Be=T.piece.length-1,ot=T.piece.lineFeedCnt-1;T.piece=new le(T.piece.bufferIndex,T.piece.start,be,ot,Be),st(this,T,-1,-1),T.piece.length===0&&R.push(T);let pt={line:_.piece.start.line+1,column:0};const xt=_.piece.length-1,Nt=this.getLineFeedCnt(_.piece.bufferIndex,pt,_.piece.end);_.piece=new le(_.piece.bufferIndex,pt,_.piece.end,Nt,xt),st(this,_,-1,-1),_.piece.length===0&&R.push(_);let Rt=this.createNewPieces(`\r `);this.rbInsertRight(T,Rt[0]);for(let Kt=0;KtEo.sortIndex-Mo.sortIndex)}this._mightContainRTL=se,this._mightContainUnusualLineTerminators=be,this._mightContainNonBasicASCII=Be;const Qt=this._doApplyEdits(pt);let lo=null;if(_&&Rt.length>0){Rt.sort((ro,Eo)=>Eo.lineNumber-ro.lineNumber),lo=[];for(let ro=0,Eo=Rt.length;ro0&&Rt[ro-1].lineNumber===Mo)continue;let Fo=Rt[ro].oldContent,Bo=this.getLineContent(Mo);if(Bo.length===0||Bo===Fo||A.u(Bo)!==-1)continue;lo.push(Mo)}}return this._onDidChangeContent.fire(),new u.a(Kt,Qt,lo)}_reduceOperations(T){return T.length<1e3?T:[this._toSingleEditOperation(T)]}_toSingleEditOperation(T){let _=!1;const R=T[0].range,se=T[T.length-1].range,be=new S.a(R.startLineNumber,R.startColumn,se.endLineNumber,se.endColumn);let Be=R.startLineNumber,ot=R.startColumn;const pt=[];for(let Qt=0,lo=T.length;Qt0&&pt.push(ro.text),Be=Eo.endLineNumber,ot=Eo.endColumn}const xt=pt.join(""),[Nt,Rt,Kt]=Object(eo.f)(xt);return{sortIndex:0,identifier:T[0].identifier,range:be,rangeOffset:this.getOffsetAt(be.startLineNumber,be.startColumn),rangeLength:this.getValueLengthInRange(be,0),text:xt,eolCount:Nt,firstLineLength:Rt,lastLineLength:Kt,forceMoveMarkers:_,isAutoWhitespaceEdit:!1}}_doApplyEdits(T){T.sort(ao._sortOpsDescending);let _=[];for(let R=0;R0){const Kt=pt.eolCount+1;Kt===1?Rt=new S.a(xt,Nt,xt,Nt+pt.firstLineLength):Rt=new S.a(xt,Nt,xt+Kt-1,pt.lastLineLength+1)}else Rt=new S.a(xt,Nt,xt,Nt);R=Rt.endLineNumber,se=Rt.endColumn,_.push(Rt),be=pt}return _}static _sortOpsAscending(T,_){let R=S.a.compareRangesUsingEnds(T.range,_.range);return R===0?T.sortIndex-_.sortIndex:R}static _sortOpsDescending(T,_){let R=S.a.compareRangesUsingEnds(T.range,_.range);return R===0?_.sortIndex-T.sortIndex:-R}}class So{constructor(T,_,R,se,be,Be,ot,pt,xt){this._chunks=T,this._bom=_,this._cr=R,this._lf=se,this._crlf=be,this._containsRTL=Be,this._containsUnusualLineTerminators=ot,this._isBasicASCII=pt,this._normalizeEOL=xt}_getEOL(T){const _=this._cr+this._lf+this._crlf,R=this._cr+this._crlf;return _===0?T===1?` `:`\r `:R>_/2?`\r `:` `}create(T){const _=this._getEOL(T);let R=this._chunks;if(this._normalizeEOL&&(_===`\r `&&(this._cr>0||this._lf>0)||_===` `&&(this._cr>0||this._crlf>0)))for(let be=0,Be=R.length;be=55296&&_<=56319?(this._acceptChunk1(T.substr(0,T.length-1),!1),this._hasPreviousChar=!0,this._previousChar=_):(this._acceptChunk1(T,!1),this._hasPreviousChar=!1,this._previousChar=_)}_acceptChunk1(T,_){if(!_&&T.length===0)return;this._hasPreviousChar?this._acceptChunk2(String.fromCharCode(this._previousChar)+T):this._acceptChunk2(T)}_acceptChunk2(T){const _=lt(this._tmpLineStarts,T);this.chunks.push(new Pe(T,_.lineStarts)),this.cr+=_.cr,this.lf+=_.lf,this.crlf+=_.crlf,this.isBasicASCII&&(this.isBasicASCII=_.isBasicASCII),!this.isBasicASCII&&!this.containsRTL&&(this.containsRTL=A.m(T)),!this.isBasicASCII&&!this.containsUnusualLineTerminators&&(this.containsUnusualLineTerminators=A.n(T))}finish(T=!0){return this._finish(),new So(this.chunks,this.BOM,this.cr,this.lf,this.crlf,this.containsRTL,this.containsUnusualLineTerminators,this.isBasicASCII,T)}_finish(){if(this.chunks.length===0&&this._acceptChunk1("",!0),this._hasPreviousChar){this._hasPreviousChar=!1;let T=this.chunks[this.chunks.length-1];T.buffer+=String.fromCharCode(this._previousChar);let _=ht(T.buffer);T.lineStarts=_,this._previousChar===13&&this.cr++}}}var xo=e("M46C"),_o=e("6OMU"),to=e("4bUh"),Wt=e("twdY"),Ge=e("i/Ef"),mt=e("5Y4S"),Gt=e("MNsG");class qe{constructor(){this._beginState=[],this._valid=[],this._len=0,this._invalidLineStartIndex=0}_reset(T){this._beginState=[],this._valid=[],this._len=0,this._invalidLineStartIndex=0,T&&this._setBeginState(0,T)}flush(T){this._reset(T)}get invalidLineStartIndex(){return this._invalidLineStartIndex}_invalidateLine(T){T=this._len;)this._beginState[this._len]=null,this._valid[this._len]=!1,this._len++}_deleteLines(T,_){if(_===0)return;T+_>this._len&&(_=this._len-T),this._beginState.splice(T,_),this._valid.splice(T,_),this._len-=_}_insertLines(T,_){if(_===0)return;const R=[],se=[];for(let be=0;be<_;be++)R[be]=null,se[be]=!1;this._beginState=_o.b(this._beginState,T,R),this._valid=_o.b(this._valid,T,se),this._len+=_}_setValid(T,_){this._ensureLine(T),this._valid[T]=_}_setBeginState(T,_){this._ensureLine(T),this._beginState[T]=_}setEndState(T,_,R){if(this._setValid(_,!0),this._invalidLineStartIndex=_+1,_===T-1)return;const se=this.getBeginState(_+1);if(se===null||!R.equals(se)){this._setBeginState(_+1,R),this._invalidateLine(_+1);return}let be=_+1;for(;be=0;Be--)this._invalidateLine(T.startLineNumber+Be-1);this._acceptDeleteRange(T),this._acceptInsertText(new O.a(T.startLineNumber,T.startColumn),_)}_acceptDeleteRange(T){const _=T.startLineNumber-1;if(_>=this._len)return;this._deleteLines(T.startLineNumber,T.endLineNumber-T.startLineNumber)}_acceptInsertText(T,_){const R=T.lineNumber-1;if(R>=this._len)return;this._insertLines(T.lineNumber,_)}}class tt extends L.a{constructor(T,_){super();this._textModel=T,this._languageIdCodec=_,this._isDisposed=!1,this._tokenizationStateStore=new qe,this._tokenizationSupport=null,this._register(Wt.F.onDidChange(R=>{const se=this._textModel.getLanguageId();if(R.changedLanguages.indexOf(se)===-1)return;this._resetTokenizationState(),this._textModel.clearTokens()})),this._register(this._textModel.onDidChangeContentFast(R=>{if(R.isFlush){this._resetTokenizationState();return}for(let se=0,be=R.changes.length;se{this._beginBackgroundTokenization()})),this._register(this._textModel.onDidChangeLanguage(()=>{this._resetTokenizationState(),this._textModel.clearTokens()})),this._resetTokenizationState()}dispose(){this._isDisposed=!0,super.dispose()}_resetTokenizationState(){const[T,_]=gt(this._textModel);this._tokenizationSupport=T,this._tokenizationStateStore.flush(_),this._beginBackgroundTokenization()}_beginBackgroundTokenization(){this._textModel.isAttachedToEditor()&&this._hasLinesToTokenize()&&Gt.j(()=>{if(this._isDisposed)return;this._revalidateTokensNow()})}_revalidateTokensNow(){const T=this._textModel.getLineCount(),_=1,R=new eo.b,se=mt.a.create(!1);let be=-1;for(;this._hasLinesToTokenize()&&!(se.elapsed()>_);)if(be=this._tokenizeOneInvalidLine(R),be>=T)break;this._beginBackgroundTokenization(),this._textModel.setTokens(R.tokens,!this._hasLinesToTokenize())}tokenizeViewport(T,_){const R=new eo.b;this._tokenizeViewport(R,T,_),this._textModel.setTokens(R.tokens,!this._hasLinesToTokenize())}reset(){this._resetTokenizationState(),this._textModel.clearTokens()}forceTokenization(T){const _=new eo.b;this._updateTokensUntilLine(_,T),this._textModel.setTokens(_.tokens,!this._hasLinesToTokenize())}isCheapToTokenize(T){if(!this._tokenizationSupport)return!0;const _=this._tokenizationStateStore.invalidLineStartIndex+1;return T>_?!1:T<_?!0:this._textModel.getLineLength(T)<2048}_hasLinesToTokenize(){return this._tokenizationSupport?this._tokenizationStateStore.invalidLineStartIndex1&&xt>=1;xt--){const Nt=this._textModel.getLineFirstNonWhitespaceColumn(xt);if(Nt===0)continue;if(Nt=0;xt--){const Nt=$e(this._languageIdCodec,ot,this._tokenizationSupport,be[xt],!1,pt);pt=Nt.endState}for(let xt=_;xt<=R;xt++){const Nt=this._textModel.getLineContent(xt),Rt=$e(this._languageIdCodec,ot,this._tokenizationSupport,Nt,!0,pt);T.add(xt,Rt.tokens),this._tokenizationStateStore.setFakeTokens(xt-1),pt=Rt.endState}}}function gt(T){const _=T.getLanguageId();let R=T.isTooLargeForTokenization()?null:Wt.F.get(_),se=null;if(R)try{se=R.getInitialState()}catch(be){Object(h.f)(be),R=null}return[R,se]}function $e(T,_,R,se,be,Be){let ot=null;if(R)try{ot=R.tokenize2(se,be,Be.clone(),0)}catch(pt){Object(h.f)(pt)}return ot||(ot=Object(Ge.d)(T.encodeLanguageId(_),se,Be,0)),to.a.convertToEndOffset(ot.tokens,se.length),ot}var je=e("0JNc"),Ue=e("cMvZ"),Ye=e("BFtn"),Mt=e("EIAu"),Bt=e("zrhQ"),$t=e("OAO6");class uo{constructor(T,_,R){this.range=T,this.nestingLevel=_,this.isInvalid=R}}class Zt{constructor(T,_,R,se){this.range=T,this.openingBracketRange=_,this.closingBracketRange=R,this.nestingLevel=se}}class zt extends Zt{constructor(T,_,R,se,be){super(T,_,R,se);this.minVisibleColumnIndentation=be}}class ut{constructor(T,_){this.lineCount=T,this.columnCount=_}toString(){return`${this.lineCount},${this.columnCount}`}}function Ct(T,_,R,se){return T!==R?ue(R-T,se):ue(0,se-_)}const We=0;function he(T){return T===0}const Me=Math.pow(2,26);function ue(T,_){return T*Me+_}function ae(T){const _=T,R=Math.floor(_/Me),se=_-R*Me;return new ut(R,se)}function Re(T){return Math.floor(T/Me)}function Qe(T){return T}function et(T,_){return _=_}function Tt(T){return ue(T.lineNumber-1,T.column-1)}function Ut(T,_){const R=T,se=Math.floor(R/Me),be=R-se*Me,Be=_,ot=Math.floor(Be/Me),pt=Be-ot*Me;return new S.a(se+1,be+1,ot+1,pt+1)}function fo(T){const _=Object(A.Q)(T);return ue(_.length-1,_[_.length-1].length)}function vo(T){return T}class po{constructor(T,_,R){this.startOffset=T,this.endOffset=_,this.newLength=R}}class Oo{constructor(T,_){this.documentLength=_,this.nextEditIdx=0,this.deltaOldToNewLineCount=0,this.deltaOldToNewColumnCount=0,this.deltaLineIdxInOld=-1,this.edits=T.map(R=>Uo.from(R))}getOffsetBeforeChange(T){return this.adjustNextEdit(T),this.translateCurToOld(T)}getDistanceToNextChange(T){this.adjustNextEdit(T);const _=this.edits[this.nextEditIdx],R=_?this.translateOldToCur(_.offsetObj):this.documentLength;return bt(T,R)}translateOldToCur(T){return T.lineCount===this.deltaLineIdxInOld?ue(T.lineCount+this.deltaOldToNewLineCount,T.columnCount+this.deltaOldToNewColumnCount):ue(T.lineCount+this.deltaOldToNewLineCount,T.columnCount)}translateCurToOld(T){const _=ae(T);return _.lineCount-this.deltaOldToNewLineCount===this.deltaLineIdxInOld?ue(_.lineCount-this.deltaOldToNewLineCount,_.columnCount-this.deltaOldToNewColumnCount):ue(_.lineCount-this.deltaOldToNewLineCount,_.columnCount)}adjustNextEdit(T){for(;this.nextEditIdx>5;if(se===0){const Be=1<0;)_=_.getChild(R-1);return _.canBeReused(T)}handleChildrenChanged(){this.throwIfImmutable();const T=this.childrenLength;let _=this.getChild(0).length,R=this.getChild(0).missingOpeningBracketIds;for(let se=1;sethis.textBufferLineCount-1||this.lineIdx===this.textBufferLineCount-1&&this.lineCharOffset>=this.textBufferLastLineLength)return null;this.line===null&&(this.lineTokens=this.textModel.getLineTokens(this.lineIdx+1),this.line=this.lineTokens.getLineContent(),this.lineTokenOffset=this.lineCharOffset===0?0:this.lineTokens.findTokenIndexAtOffset(this.lineCharOffset));const T=this.lineIdx,_=this.lineCharOffset;let R=0;for(;;){const be=this.lineTokens,Be=be.getCount();let ot=null;if(this.lineTokenOffset1e3)break}if(R>1500)break}const se=Ct(T,_,this.lineIdx,this.lineCharOffset);return new Xi(se,0,-1,$o.getEmpty(),new Pi(se))}}class on{constructor(T,_){this.text=T,this._offset=We,this.idx=0;const R=_.getRegExpStr(),se=R?new RegExp(_.getRegExpStr()+`| `,"g"):null,be=[];let Be,ot=0,pt=0,xt=0,Nt=0;const Rt=new Array;for(let lo=0;lo<60;lo++)Rt.push(new Xi(ue(0,lo),0,-1,$o.getEmpty(),new Pi(ue(0,lo))));const Kt=new Array;for(let lo=0;lo<60;lo++)Kt.push(new Xi(ue(1,lo),0,-1,$o.getEmpty(),new Pi(ue(1,lo))));if(se)for(se.lastIndex=0;(Be=se.exec(T))!==null;){const lo=Be.index,ro=Be[0];if(ro===` `)ot++,pt=lo+1;else{if(xt!==lo){let Eo;if(Nt===ot){const Mo=lo-xt;if(MoBi(_)).join("|")}}get regExpGlobal(){if(!this.hasRegExp){const T=this.getRegExpStr();this._regExpGlobal=T?new RegExp(T,"g"):null,this.hasRegExp=!0}return this._regExpGlobal}getToken(T){return this.map.get(T)}get isEmpty(){return this.map.size===0}}function Bi(T){const _=Object(A.t)(T),R=/^[\w ]+$/.test(T);return R?`\\b${_}\\b`:_}class vt{constructor(T,_){this.denseKeyProvider=T,this.getLanguageConfiguration=_,this.languageIdToBracketTokens=new Map}didLanguageChange(T){const _=this.languageIdToBracketTokens.get(T);if(!_)return!1;const R=Fi.createFromLanguage(this.getLanguageConfiguration(T),this.denseKeyProvider).getRegExpStr();return _.getRegExpStr()!==R}getSingleLanguageBracketTokens(T){let _=this.languageIdToBracketTokens.get(T);return _||(_=Fi.createFromLanguage(this.getLanguageConfiguration(T),this.denseKeyProvider),this.languageIdToBracketTokens.set(T,_)),_}}function Xe(T){if(T.length===0)return null;if(T.length===1)return T[0];let _=0;function R(){if(_>=T.length)return null;const ot=_,pt=T[ot].listHeight;for(_++;_=2?X(ot===0&&_===T.length?T:T.slice(ot,_),!1):T[ot]}let se=R(),be=R();if(!be)return se;for(let ot=R();ot;ot=R())Ee(se,be)<=Ee(be,ot)?(se=ke(se,be),be=ot):be=ke(be,ot);const Be=ke(se,be);return Be}function X(T,_=!1){if(T.length===0)return null;if(T.length===1)return T[0];let R=T.length;for(;R>3;){const se=R>>1;for(let be=0;be=3?T[2]:null,_)}function Ee(T,_){return Math.abs(T.listHeight-_.listHeight)}function ke(T,_){return T.listHeight===_.listHeight?Li.create23(T,_,null,!1):T.listHeight>_.listHeight?Ve(T,_):ct(_,T)}function Ve(T,_){T=T.toMutable();let R=T;const se=new Array;let be;for(;;){if(_.listHeight===R.listHeight){be=_;break}if(R.kind!==4)throw new Error("unexpected");se.push(R),R=R.makeLastElementMutable()}for(let Be=se.length-1;Be>=0;Be--){const ot=se[Be];be?ot.childrenLength>=3?be=Li.create23(ot.unappendChild(),be,null,!1):(ot.appendChildOfSameHeight(be),be=void 0):ot.handleChildrenChanged()}return be?Li.create23(T,be,null,!1):T}function ct(T,_){T=T.toMutable();let R=T;const se=new Array;for(;_.listHeight!==R.listHeight;){if(R.kind!==4)throw new Error("unexpected");se.push(R),R=R.makeFirstElementMutable()}let be=_;for(let Be=se.length-1;Be>=0;Be--){const ot=se[Be];be?ot.childrenLength>=3?be=Li.create23(be,ot.unprependChild(),null,!1):(ot.prependChildOfSameHeight(be),be=void 0):ot.handleChildrenChanged()}return be?Li.create23(be,T,null,!1):T}class Et{constructor(T){this.lastOffset=We,this.nextNodes=[T],this.offsets=[We],this.idxs=[]}readLongestNodeAt(T,_){if(Lt(T,this.lastOffset))throw new Error("Invalid offset");for(this.lastOffset=T;;){const R=Xt(this.nextNodes);if(!R)return;const se=Xt(this.offsets);if(Lt(T,se))return;if(Lt(se,T))if(et(se,R.length)<=T)this.nextNodeAfterCurrent();else{const be=qt(R);be!==-1?(this.nextNodes.push(R.getChild(be)),this.offsets.push(se),this.idxs.push(be)):this.nextNodeAfterCurrent()}else{if(_(R))return this.nextNodeAfterCurrent(),R;{const be=qt(R);if(be===-1){this.nextNodeAfterCurrent();return}else this.nextNodes.push(R.getChild(be)),this.offsets.push(se),this.idxs.push(be)}}}}nextNodeAfterCurrent(){for(;;){const T=Xt(this.offsets),_=Xt(this.nextNodes);if(this.nextNodes.pop(),this.offsets.pop(),this.idxs.length===0)break;const R=Xt(this.nextNodes),se=qt(R,this.idxs[this.idxs.length-1]);if(se!==-1){this.nextNodes.push(R.getChild(se)),this.offsets.push(et(T,_.length)),this.idxs[this.idxs.length-1]=se;break}else this.idxs.pop()}}}function qt(T,_=-1){for(;;){if(_++,_>=T.childrenLength)return-1;if(T.getChild(_))return _}}function Xt(T){return T.length>0?T[T.length-1]:void 0}function Yt(T,_,R,se){const be=new go(T,_,R,se);return be.parseDocument()}class go{constructor(T,_,R,se){if(this.tokenizer=T,this.createImmutableLists=se,this._itemsConstructed=0,this._itemsFromCache=0,R&&se)throw new Error("Not supported");this.oldNodeReader=R?new Et(R):void 0,this.positionMapper=new Oo(_,T.length)}parseDocument(){this._itemsConstructed=0,this._itemsFromCache=0;let T=this.parseList($o.getEmpty());return T||(T=Li.getEmpty()),T}parseList(T){const _=new Array;for(;;){const se=this.tokenizer.peek();if(!se||se.kind===2&&se.bracketIds.intersects(T))break;const be=this.parseChild(T);if(be.kind===4&&be.childrenLength===0)continue;_.push(be)}const R=this.oldNodeReader?Xe(_):X(_,this.createImmutableLists);return R}parseChild(T){if(this.oldNodeReader){const R=this.positionMapper.getDistanceToNextChange(this.tokenizer.offset);if(!he(R)){const se=this.oldNodeReader.readLongestNodeAt(this.positionMapper.getOffsetBeforeChange(this.tokenizer.offset),be=>{if(!Lt(be.length,R))return!1;const Be=be.canBeReused(T);return Be});if(se)return this._itemsFromCache++,this.tokenizer.skip(se.length),se}}this._itemsConstructed++;const _=this.tokenizer.read();switch(_.kind){case 2:return new Si(_.bracketIds,_.length);case 0:return _.astNode;case 1:const R=T.merge(_.bracketIds),se=this.parseList(R),be=this.tokenizer.peek();return be&&be.kind===2&&(be.bracketId===_.bracketId||be.bracketIds.intersects(_.bracketIds))?(this.tokenizer.read(),ji.create(_.astNode,se,be.astNode)):ji.create(_.astNode,se,null);default:throw new Error("unexpected")}}}class F extends L.a{constructor(T,_){super();this.textModel=T,this.languageConfigurationService=_,this.cache=this._register(new L.d),this.onDidChangeEmitter=new P.b,this.onDidChange=this.onDidChangeEmitter.event,this.bracketsRequested=!1,this._register(T.onDidChangeOptions(R=>{this.cache.clear(),this.updateCache()})),this._register(T.onDidChangeLanguage(R=>{this.cache.clear(),this.updateCache()})),this._register(this.languageConfigurationService.onDidChange(R=>{var se;(!R.languageId||((se=this.cache.value)===null||se===void 0?void 0:se.object.didLanguageChange(R.languageId)))&&(this.cache.clear(),this.updateCache())}))}get isDocumentSupported(){const T=5e4*100;return this.textModel.getValueLength()<=T}updateCache(){if(this.bracketsRequested&&this.isDocumentSupported){if(!this.cache.value){const T=new L.b;this.cache.value=J(T.add(new Fe(this.textModel,_=>this.languageConfigurationService.getLanguageConfiguration(_))),T),T.add(this.cache.value.object.onDidChange(_=>this.onDidChangeEmitter.fire(_))),this.onDidChangeEmitter.fire()}}else this.cache.clear(),this.onDidChangeEmitter.fire()}handleContentChanged(T){var _;(_=this.cache.value)===null||_===void 0||_.object.handleContentChanged(T)}getBracketPairsInRange(T){var _;return this.bracketsRequested=!0,this.updateCache(),((_=this.cache.value)===null||_===void 0?void 0:_.object.getBracketPairsInRange(T,!1))||[]}getBracketPairsInRangeWithMinIndentation(T){var _;return this.bracketsRequested=!0,this.updateCache(),((_=this.cache.value)===null||_===void 0?void 0:_.object.getBracketPairsInRange(T,!0))||[]}getBracketsInRange(T){var _;return this.bracketsRequested=!0,this.updateCache(),((_=this.cache.value)===null||_===void 0?void 0:_.object.getBracketsInRange(T))||[]}}function J(T,_){return{object:T,dispose:()=>_==null?void 0:_.dispose()}}class Fe extends L.a{constructor(T,_){super();if(this.textModel=T,this.getLanguageConfiguration=_,this.didChangeEmitter=new P.b,this.denseKeyProvider=new xi,this.brackets=new vt(this.denseKeyProvider,this.getLanguageConfiguration),this.onDidChange=this.didChangeEmitter.event,this._register(T.onBackgroundTokenizationStateChanged(()=>{if(T.backgroundTokenizationState===2){const R=this.initialAstWithoutTokens===void 0;this.initialAstWithoutTokens=void 0,R||this.didChangeEmitter.fire()}})),this._register(T.onDidChangeTokens(({ranges:R})=>{const se=R.map(be=>new po(ue(be.fromLineNumber-1,0),ue(be.toLineNumber,0),ue(be.toLineNumber-be.fromLineNumber+1,0)));this.astWithTokens=this.parseDocumentFromTextBuffer(se,this.astWithTokens,!1),this.initialAstWithoutTokens||this.didChangeEmitter.fire()})),T.backgroundTokenizationState===0){const R=this.brackets.getSingleLanguageBracketTokens(this.textModel.getLanguageId()),se=new on(this.textModel.getValue(),R);this.initialAstWithoutTokens=Yt(se,[],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens}else T.backgroundTokenizationState===2?(this.initialAstWithoutTokens=void 0,this.astWithTokens=this.parseDocumentFromTextBuffer([],void 0,!1)):T.backgroundTokenizationState===1&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer([],void 0,!0),this.astWithTokens=this.initialAstWithoutTokens)}didLanguageChange(T){return this.brackets.didLanguageChange(T)}handleContentChanged(T){const _=T.changes.map(R=>{const se=S.a.lift(R.range);return new po(Tt(se.getStartPosition()),Tt(se.getEndPosition()),fo(R.text))}).reverse();this.astWithTokens=this.parseDocumentFromTextBuffer(_,this.astWithTokens,!1),this.initialAstWithoutTokens&&(this.initialAstWithoutTokens=this.parseDocumentFromTextBuffer(_,this.initialAstWithoutTokens,!1))}parseDocumentFromTextBuffer(T,_,R){const se=!1,be=se?_==null?void 0:_.deepClone():_,Be=new Ci(this.textModel,this.brackets),ot=Yt(Be,T,be,R);return ot}getBracketsInRange(T){const _=ue(T.startLineNumber-1,T.startColumn-1),R=ue(T.endLineNumber-1,T.endColumn-1),se=new Array,be=this.initialAstWithoutTokens||this.astWithTokens;return Ze(be,We,be.length,_,R,se),se}getBracketPairsInRange(T,_){const R=new Array,se=Tt(T.getStartPosition()),be=Tt(T.getEndPosition()),Be=this.initialAstWithoutTokens||this.astWithTokens,ot=new St(R,_,this.textModel);return It(Be,We,Be.length,se,be,ot),R}}function Ze(T,_,R,se,be,Be,ot=0){if(T.kind===1){const pt=Ut(_,R);Be.push(new uo(pt,ot-1,!1))}else if(T.kind===3){const pt=Ut(_,R);Be.push(new uo(pt,ot-1,!0))}else if(T.kind===4)for(const pt of T.children)R=et(_,pt.length),Ot(_,be)&&Ft(R,se)&&Ze(pt,_,R,se,be,Be,ot),_=R;else if(T.kind===2){ot++;{const pt=T.openingBracket;R=et(_,pt.length),Ot(_,be)&&Ft(R,se)&&Ze(pt,_,R,se,be,Be,ot),_=R}if(T.child){const pt=T.child;R=et(_,pt.length),Ot(_,be)&&Ft(R,se)&&Ze(pt,_,R,se,be,Be,ot),_=R}if(T.closingBracket){const pt=T.closingBracket;R=et(_,pt.length),Ot(_,be)&&Ft(R,se)&&Ze(pt,_,R,se,be,Be,ot),_=R}}}class St{constructor(T,_,R){this.result=T,this.includeMinIndentation=_,this.textModel=R}}function It(T,_,R,se,be,Be,ot=0){var pt;if(T.kind===2){const Nt=et(_,T.openingBracket.length);let Rt=-1;Be.includeMinIndentation&&(Rt=T.computeMinIndentation(_,Be.textModel)),Be.result.push(new zt(Ut(_,R),Ut(_,Nt),T.closingBracket?Ut(et(Nt,((pt=T.child)===null||pt===void 0?void 0:pt.length)||We),R):void 0,ot,Rt)),ot++}let xt=_;for(const Nt of T.children){const Rt=xt;xt=et(xt,Nt.length),Ot(Rt,be)&&Ot(se,xt)&&It(Nt,Rt,xt,se,be,Be,ot)}}var Vt=e("kYye"),io=e("t9D7");class ho extends L.a{constructor(T){super();this.textModel=T,this.colorProvider=new mo,this.onDidChangeEmitter=new P.b,this.onDidChange=this.onDidChangeEmitter.event,this.colorizationOptions=T.getOptions().bracketPairColorizationOptions,this._register(T.onDidChangeOptions(_=>{this.colorizationOptions=T.getOptions().bracketPairColorizationOptions})),this._register(T.bracketPairs.onDidChange(_=>{this.onDidChangeEmitter.fire()}))}getDecorationsInRange(T,_,R){if(_===void 0)return[];if(!this.colorizationOptions.enabled)return[];const se=new Array,be=this.textModel.bracketPairs.getBracketsInRange(T);for(const Be of be)se.push({id:`bracket${Be.range.toString()}-${Be.nestingLevel}`,options:{description:"BracketPairColorization",inlineClassName:this.colorProvider.getInlineClassName(Be)},ownerId:0,range:Be.range});return se}getAllDecorations(T,_){return T===void 0?[]:this.colorizationOptions.enabled?this.getDecorationsInRange(new S.a(1,1,this.textModel.getLineCount(),1),T,_):[]}}class mo{constructor(){this.unexpectedClosingBracketClassName="unexpected-closing-bracket"}getInlineClassName(T){return T.isInvalid?this.unexpectedClosingBracketClassName:this.getInlineClassNameOfLevel(T.nestingLevel)}getInlineClassNameOfLevel(T){return`bracket-highlighting-${T%30}`}}Object(io.f)((T,_)=>{const R=[Vt.c,Vt.d,Vt.e,Vt.f,Vt.g,Vt.h],se=new mo;_.addRule(`.monaco-editor .${se.unexpectedClosingBracketClassName} { color: ${T.getColor(Vt.i)}; }`);let be=R.map(Be=>T.getColor(Be)).filter(Be=>!!Be).filter(Be=>!Be.isTransparent());for(let Be=0;Be<30;Be++){const ot=be[Be%be.length];_.addRule(`.monaco-editor .${se.getInlineClassNameOfLevel(Be)} { color: ${ot}; }`)}});var yo=e("WBhO"),Io=function(T,_,R,se){var be=arguments.length,Be=be<3?_:se===null?se=Object.getOwnPropertyDescriptor(_,R):se,ot;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Be=Reflect.decorate(T,_,R,se);else for(var pt=T.length-1;pt>=0;pt--)(ot=T[pt])&&(Be=(be<3?ot(Be):be>3?ot(_,R,Be):ot(_,R))||Be);return be>3&&Be&&Object.defineProperty(_,R,Be),Be},No=function(T,_){return function(R,se){_(R,se,T)}};function Ro(){return new Lo}function To(T){const _=Ro();return _.acceptChunk(T),_.finish()}function Ho(T,_){const R=typeof T=="string"?To(T):T;return R.create(_)}let Yo=0;const ri=999,Vo=1e4;class li{constructor(T){this._source=T,this._eos=!1}read(){if(this._eos)return null;let T=[],_=0,R=0;do{let se=this._source.read();if(se===null)return this._eos=!0,_===0?null:T.join("");if(se.length>0&&(T[_++]=se,R+=se.length),R>=64*1024)return T.join("")}while(!0)}}const Ai=()=>{throw new Error("Invalid change accessor")};class _i{constructor(){this._searchCanceledBrand=void 0}}_i.INSTANCE=new _i;function ui(T){return T instanceof _i?null:T}let Ui=class T extends L.a{constructor(_,R,se,be=null,Be,ot,pt){super();this._undoRedoService=Be,this._modeService=ot,this._languageConfigurationService=pt,this._onWillDispose=this._register(new P.b),this.onWillDispose=this._onWillDispose.event,this._onDidChangeDecorations=this._register(new oi(Qt=>this.handleBeforeFireDecorationsChangedEvent(Qt))),this.onDidChangeDecorations=this._onDidChangeDecorations.event,this._onDidChangeLanguage=this._register(new P.b),this.onDidChangeLanguage=this._onDidChangeLanguage.event,this._onDidChangeLanguageConfiguration=this._register(new P.b),this.onDidChangeLanguageConfiguration=this._onDidChangeLanguageConfiguration.event,this._onDidChangeTokens=this._register(new P.b),this.onDidChangeTokens=this._onDidChangeTokens.event,this._onDidChangeOptions=this._register(new P.b),this.onDidChangeOptions=this._onDidChangeOptions.event,this._onDidChangeAttached=this._register(new P.b),this.onDidChangeAttached=this._onDidChangeAttached.event,this._onDidChangeContentOrInjectedText=this._register(new P.b),this.onDidChangeContentOrInjectedText=this._onDidChangeContentOrInjectedText.event,this._eventEmitter=this._register(new Ji),this._backgroundTokenizationState=0,this._onBackgroundTokenizationStateChanged=this._register(new P.b),this.onBackgroundTokenizationStateChanged=this._onBackgroundTokenizationStateChanged.event,this._register(this._eventEmitter.fastEvent(Qt=>{this._onDidChangeContentOrInjectedText.fire(Qt.rawContentChangedEvent)})),Yo++,this.id="$model"+Yo,this.isForSimpleWidget=R.isForSimpleWidget,typeof be=="undefined"||be===null?this._associatedResource=I.a.parse("inmemory://model/"+Yo):this._associatedResource=be,this._attachedEditorCount=0;const{textBuffer:xt,disposable:Nt}=Ho(_,R.defaultEOL);this._buffer=xt,this._bufferDisposable=Nt,this._options=T.resolveOptions(this._buffer,R);const Rt=this._buffer.getLineCount(),Kt=this._buffer.getValueLengthInRange(new S.a(1,1,Rt,this._buffer.getLineLength(Rt)+1),0);R.largeFileOptimizations?this._isTooLargeForTokenization=Kt>T.LARGE_FILE_SIZE_THRESHOLD||Rt>T.LARGE_FILE_LINE_COUNT_THRESHOLD:this._isTooLargeForTokenization=!1,this._isTooLargeForSyncing=Kt>T.MODEL_SYNC_LIMIT,this._versionId=1,this._alternativeVersionId=1,this._initialUndoRedoSnapshot=null,this._isDisposed=!1,this._isDisposing=!1,this._languageId=se||Ge.a,this._languageRegistryListener=this._languageConfigurationService.onDidChange(Qt=>{Qt.affects(this._languageId)&&this._onDidChangeLanguageConfiguration.fire({})}),this._instanceId=A.P(Yo),this._lastDecorationId=0,this._decorations=Object.create(null),this._decorationsTree=new Vn,this._commandManager=new d.a(this,this._undoRedoService),this._isUndoing=!1,this._isRedoing=!1,this._trimAutoWhitespaceLines=null,this._tokens=new eo.d(this._modeService.languageIdCodec),this._tokens2=new eo.e(this._modeService.languageIdCodec),this._tokenization=new tt(this,this._modeService.languageIdCodec),this._bracketPairColorizer=this._register(new F(this,this._languageConfigurationService)),this._decorationProvider=this._register(new ho(this)),this._register(this._decorationProvider.onDidChange(()=>{this._onDidChangeDecorations.beginDeferredEmit(),this._onDidChangeDecorations.fire(),this._onDidChangeDecorations.endDeferredEmit()}))}static resolveOptions(_,R){if(R.detectIndentation){const se=n(_,R.tabSize,R.insertSpaces);return new u.h({tabSize:se.tabSize,indentSize:se.tabSize,insertSpaces:se.insertSpaces,trimAutoWhitespace:R.trimAutoWhitespace,defaultEOL:R.defaultEOL,bracketPairColorizationOptions:R.bracketPairColorizationOptions})}return new u.h({tabSize:R.tabSize,indentSize:R.indentSize,insertSpaces:R.insertSpaces,trimAutoWhitespace:R.trimAutoWhitespace,defaultEOL:R.defaultEOL,bracketPairColorizationOptions:R.bracketPairColorizationOptions})}onDidChangeContentFast(_){return this._eventEmitter.fastEvent(R=>_(R.contentChangedEvent))}onDidChangeContent(_){return this._eventEmitter.slowEvent(R=>_(R.contentChangedEvent))}get bracketPairs(){return this._bracketPairColorizer}get backgroundTokenizationState(){return this._backgroundTokenizationState}handleTokenizationProgress(_){if(this._backgroundTokenizationState===2)return;const R=_?2:1;this._backgroundTokenizationState!==R&&(this._backgroundTokenizationState=R,this._onBackgroundTokenizationStateChanged.fire())}dispose(){this._isDisposing=!0,this._onWillDispose.fire(),this._languageRegistryListener.dispose(),this._tokenization.dispose(),this._isDisposed=!0,super.dispose(),this._bufferDisposable.dispose(),this._isDisposing=!1;const _=new ao([],"",` `,!1,!1,!0,!0);_.dispose(),this._buffer=_}_assertNotDisposed(){if(this._isDisposed)throw new Error("Model is disposed!")}_emitContentChangedEvent(_,R){if(this._bracketPairColorizer.handleContentChanged(R),this._isDisposing)return;this._eventEmitter.fire(new xo.a(_,R))}setValue(_){if(this._assertNotDisposed(),_===null)return;const{textBuffer:R,disposable:se}=Ho(_,this._options.defaultEOL);this._setValueFromTextBuffer(R,se)}_createContentChanged2(_,R,se,be,Be,ot,pt){return{changes:[{range:_,rangeOffset:R,rangeLength:se,text:be}],eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:Be,isRedoing:ot,isFlush:pt}}_setValueFromTextBuffer(_,R){this._assertNotDisposed();const se=this.getFullModelRange(),be=this.getValueLengthInRange(se),Be=this.getLineCount(),ot=this.getLineMaxColumn(Be);this._buffer=_,this._bufferDisposable.dispose(),this._bufferDisposable=R,this._increaseVersionId(),this._tokens.flush(),this._tokens2.flush(),this._decorations=Object.create(null),this._decorationsTree=new Vn,this._commandManager.clear(),this._trimAutoWhitespaceLines=null,this._emitContentChangedEvent(new xo.d([new xo.f],this._versionId,!1,!1),this._createContentChanged2(new S.a(1,1,Be,ot),0,be,this.getValue(),!1,!1,!0))}setEOL(_){this._assertNotDisposed();const R=_===1?`\r `:` `;if(this._buffer.getEOL()===R)return;const se=this.getFullModelRange(),be=this.getValueLengthInRange(se),Be=this.getLineCount(),ot=this.getLineMaxColumn(Be);this._onBeforeEOLChange(),this._buffer.setEOL(R),this._increaseVersionId(),this._onAfterEOLChange(),this._emitContentChangedEvent(new xo.d([new xo.e],this._versionId,!1,!1),this._createContentChanged2(new S.a(1,1,Be,ot),0,be,this.getValue(),!1,!1,!1))}_onBeforeEOLChange(){this._decorationsTree.ensureAllNodesHaveRanges(this)}_onAfterEOLChange(){const _=this.getVersionId(),R=this._decorationsTree.collectNodesPostOrder();for(let se=0,be=R.length;se0}getAttachedEditorCount(){return this._attachedEditorCount}isTooLargeForSyncing(){return this._isTooLargeForSyncing}isTooLargeForTokenization(){return this._isTooLargeForTokenization}isDisposed(){return this._isDisposed}isDominatedByLongLines(){if(this._assertNotDisposed(),this.isTooLargeForTokenization())return!1;let _=0,R=0;const se=this._buffer.getLineCount();for(let be=1;be<=se;be++){const Be=this._buffer.getLineLength(be);Be>=Vo?R+=Be:_+=Be}return R>_}get uri(){return this._associatedResource}getOptions(){return this._assertNotDisposed(),this._options}getFormattingOptions(){return{tabSize:this._options.indentSize,insertSpaces:this._options.insertSpaces}}updateOptions(_){this._assertNotDisposed();let R=typeof _.tabSize!="undefined"?_.tabSize:this._options.tabSize,se=typeof _.indentSize!="undefined"?_.indentSize:this._options.indentSize,be=typeof _.insertSpaces!="undefined"?_.insertSpaces:this._options.insertSpaces,Be=typeof _.trimAutoWhitespace!="undefined"?_.trimAutoWhitespace:this._options.trimAutoWhitespace,ot=typeof _.bracketColorizationOptions!="undefined"?_.bracketColorizationOptions:this._options.bracketPairColorizationOptions,pt=new u.h({tabSize:R,indentSize:se,insertSpaces:be,defaultEOL:this._options.defaultEOL,trimAutoWhitespace:Be,bracketPairColorizationOptions:ot});if(this._options.equals(pt))return;let xt=this._options.createChangeEvent(pt);this._options=pt,this._onDidChangeOptions.fire(xt)}detectIndentation(_,R){this._assertNotDisposed();let se=n(this._buffer,R,_);this.updateOptions({insertSpaces:se.insertSpaces,tabSize:se.tabSize,indentSize:se.tabSize})}static _normalizeIndentationFromWhitespace(_,R,se){let be=0;for(let ot=0;ot<_.length;ot++)_.charAt(ot)===" "?be+=R:be++;let Be="";if(!se){let ot=Math.floor(be/R);be=be%R;for(let pt=0;pt({range:se.range,text:null})),()=>null)}mightContainNonBasicASCII(){return this._buffer.mightContainNonBasicASCII()}getAlternativeVersionId(){return this._assertNotDisposed(),this._alternativeVersionId}getInitialUndoRedoSnapshot(){return this._assertNotDisposed(),this._initialUndoRedoSnapshot}getOffsetAt(_){this._assertNotDisposed();let R=this._validatePosition(_.lineNumber,_.column,0);return this._buffer.getOffsetAt(R.lineNumber,R.column)}getPositionAt(_){this._assertNotDisposed();let R=Math.min(this._buffer.getLength(),Math.max(0,_));return this._buffer.getPositionAt(R)}_increaseVersionId(){this._versionId=this._versionId+1,this._alternativeVersionId=this._versionId}_overwriteVersionId(_){this._versionId=_}_overwriteAlternativeVersionId(_){this._alternativeVersionId=_}_overwriteInitialUndoRedoSnapshot(_){this._initialUndoRedoSnapshot=_}getValue(_,R=!1){this._assertNotDisposed();const se=this.getFullModelRange(),be=this.getValueInRange(se,_);return R?this._buffer.getBOM()+be:be}createSnapshot(_=!1){return new li(this._buffer.createSnapshot(_))}getValueLength(_,R=!1){this._assertNotDisposed();const se=this.getFullModelRange(),be=this.getValueLengthInRange(se,_);return R?this._buffer.getBOM().length+be:be}getValueInRange(_,R=0){return this._assertNotDisposed(),this._buffer.getValueInRange(this.validateRange(_),R)}getValueLengthInRange(_,R=0){return this._assertNotDisposed(),this._buffer.getValueLengthInRange(this.validateRange(_),R)}getCharacterCountInRange(_,R=0){return this._assertNotDisposed(),this._buffer.getCharacterCountInRange(this.validateRange(_),R)}getLineCount(){return this._assertNotDisposed(),this._buffer.getLineCount()}getLineContent(_){if(this._assertNotDisposed(),_<1||_>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineContent(_)}getLineLength(_){if(this._assertNotDisposed(),_<1||_>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLength(_)}getLinesContent(){return this._assertNotDisposed(),this._buffer.getLinesContent()}getEOL(){return this._assertNotDisposed(),this._buffer.getEOL()}getEndOfLineSequence(){return this._assertNotDisposed(),this._buffer.getEOL()===` `?0:1}getLineMinColumn(_){return this._assertNotDisposed(),1}getLineMaxColumn(_){if(this._assertNotDisposed(),_<1||_>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLength(_)+1}getLineFirstNonWhitespaceColumn(_){if(this._assertNotDisposed(),_<1||_>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineFirstNonWhitespaceColumn(_)}getLineLastNonWhitespaceColumn(_){if(this._assertNotDisposed(),_<1||_>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._buffer.getLineLastNonWhitespaceColumn(_)}_validateRangeRelaxedNoAllocations(_){const R=this._buffer.getLineCount(),se=_.startLineNumber,be=_.startColumn;let Be=Math.floor(typeof se=="number"&&!isNaN(se)?se:1),ot=Math.floor(typeof be=="number"&&!isNaN(be)?be:1);if(Be<1)Be=1,ot=1;else if(Be>R)Be=R,ot=this.getLineMaxColumn(Be);else if(ot<=1)ot=1;else{const Kt=this.getLineMaxColumn(Be);ot>=Kt&&(ot=Kt)}const pt=_.endLineNumber,xt=_.endColumn;let Nt=Math.floor(typeof pt=="number"&&!isNaN(pt)?pt:1),Rt=Math.floor(typeof xt=="number"&&!isNaN(xt)?xt:1);if(Nt<1)Nt=1,Rt=1;else if(Nt>R)Nt=R,Rt=this.getLineMaxColumn(Nt);else if(Rt<=1)Rt=1;else{const Kt=this.getLineMaxColumn(Nt);Rt>=Kt&&(Rt=Kt)}return se===Be&&be===ot&&pt===Nt&&xt===Rt&&_ instanceof S.a&&!(_ instanceof f.a)?_:new S.a(Be,ot,Nt,Rt)}_isValidPosition(_,R,se){if(typeof _!="number"||typeof R!="number")return!1;if(isNaN(_)||isNaN(R))return!1;if(_<1||R<1)return!1;if((_|0)!==_||(R|0)!==R)return!1;const be=this._buffer.getLineCount();if(_>be)return!1;if(R===1)return!0;const Be=this.getLineMaxColumn(_);if(R>Be)return!1;if(se===1){const ot=this._buffer.getLineCharCode(_,R-2);if(A.E(ot))return!1}return!0}_validatePosition(_,R,se){const be=Math.floor(typeof _=="number"&&!isNaN(_)?_:1),Be=Math.floor(typeof R=="number"&&!isNaN(R)?R:1),ot=this._buffer.getLineCount();if(be<1)return new O.a(1,1);if(be>ot)return new O.a(ot,this.getLineMaxColumn(ot));if(Be<=1)return new O.a(be,1);const pt=this.getLineMaxColumn(be);if(Be>=pt)return new O.a(be,pt);if(se===1){const xt=this._buffer.getLineCharCode(be,Be-2);if(A.E(xt))return new O.a(be,Be-1)}return new O.a(be,Be)}validatePosition(_){const R=1;return this._assertNotDisposed(),_ instanceof O.a&&this._isValidPosition(_.lineNumber,_.column,R)?_:this._validatePosition(_.lineNumber,_.column,R)}_isValidRange(_,R){const se=_.startLineNumber,be=_.startColumn,Be=_.endLineNumber,ot=_.endColumn;if(!this._isValidPosition(se,be,0))return!1;if(!this._isValidPosition(Be,ot,0))return!1;if(R===1){const pt=be>1?this._buffer.getLineCharCode(se,be-2):0,xt=ot>1&&ot<=this._buffer.getLineLength(Be)?this._buffer.getLineCharCode(Be,ot-2):0,Nt=A.E(pt),Rt=A.E(xt);return!Nt&&!Rt}return!0}validateRange(_){const R=1;if(this._assertNotDisposed(),_ instanceof S.a&&!(_ instanceof f.a)&&this._isValidRange(_,R))return _;const se=this._validatePosition(_.startLineNumber,_.startColumn,0),be=this._validatePosition(_.endLineNumber,_.endColumn,0),Be=se.lineNumber,ot=se.column,pt=be.lineNumber,xt=be.column;if(R===1){const Nt=ot>1?this._buffer.getLineCharCode(Be,ot-2):0,Rt=xt>1&&xt<=this._buffer.getLineLength(pt)?this._buffer.getLineCharCode(pt,xt-2):0,Kt=A.E(Nt),Qt=A.E(Rt);return!Kt&&!Qt?new S.a(Be,ot,pt,xt):Be===pt&&ot===xt?new S.a(Be,ot-1,pt,xt-1):Kt&&Qt?new S.a(Be,ot-1,pt,xt+1):Kt?new S.a(Be,ot-1,pt,xt):new S.a(Be,ot,pt,xt+1)}return new S.a(Be,ot,pt,xt)}modifyPosition(_,R){this._assertNotDisposed();let se=this.getOffsetAt(_)+R;return this.getPositionAt(Math.min(this._buffer.getLength(),Math.max(0,se)))}getFullModelRange(){this._assertNotDisposed();const _=this.getLineCount();return new S.a(1,1,_,this.getLineMaxColumn(_))}findMatchesLineByLine(_,R,se,be){return this._buffer.findMatchesLineByLine(_,R,se,be)}findMatches(_,R,se,be,Be,ot,pt=ri){this._assertNotDisposed();let xt=null;R!==null&&(Array.isArray(R)||(R=[R]),R.every(Kt=>S.a.isIRange(Kt))&&(xt=R.map(Kt=>this.validateRange(Kt)))),xt===null&&(xt=[this.getFullModelRange()]),xt=xt.sort((Kt,Qt)=>Kt.startLineNumber-Qt.startLineNumber||Kt.startColumn-Qt.startColumn);const Nt=[];Nt.push(xt.reduce((Kt,Qt)=>S.a.areIntersecting(Kt,Qt)?Kt.plusRange(Qt):(Nt.push(Kt),Qt)));let Rt;if(!se&&_.indexOf(` `)<0){const Kt=new rt.a(_,se,be,Be),Qt=Kt.parseSearchRequest();if(!Qt)return[];Rt=lo=>this.findMatchesLineByLine(lo,Qt,ot,pt)}else Rt=Kt=>rt.c.findMatches(this,new rt.a(_,se,be,Be),Kt,ot,pt);return Nt.map(Rt).reduce((Kt,Qt)=>Kt.concat(Qt),[])}findNextMatch(_,R,se,be,Be,ot){this._assertNotDisposed();const pt=this.validatePosition(R);if(!se&&_.indexOf(` `)<0){const xt=new rt.a(_,se,be,Be),Nt=xt.parseSearchRequest();if(!Nt)return null;const Rt=this.getLineCount();let Kt=new S.a(pt.lineNumber,pt.column,Rt,this.getLineMaxColumn(Rt)),Qt=this.findMatchesLineByLine(Kt,Nt,ot,1);return rt.c.findNextMatch(this,new rt.a(_,se,be,Be),pt,ot),Qt.length>0?Qt[0]:(Kt=new S.a(1,1,pt.lineNumber,this.getLineMaxColumn(pt.lineNumber)),Qt=this.findMatchesLineByLine(Kt,Nt,ot,1),Qt.length>0?Qt[0]:null)}return rt.c.findNextMatch(this,new rt.a(_,se,be,Be),pt,ot)}findPreviousMatch(_,R,se,be,Be,ot){this._assertNotDisposed();const pt=this.validatePosition(R);return rt.c.findPreviousMatch(this,new rt.a(_,se,be,Be),pt,ot)}pushStackElement(){this._commandManager.pushStackElement()}popStackElement(){this._commandManager.popStackElement()}pushEOL(_){const R=this.getEOL()===` `?0:1;if(R===_)return;try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEOL(_)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_validateEditOperation(_){return _ instanceof u.i?_:new u.i(_.identifier||null,this.validateRange(_.range),_.text,_.forceMoveMarkers||!1,_.isAutoWhitespaceEdit||!1,_._isTracked||!1)}_validateEditOperations(_){const R=[];for(let se=0,be=_.length;se({range:this.validateRange(ot.range),text:ot.text})),Be=!0;if(_)for(let ot=0,pt=_.length;otxt.endLineNumber,ro=xt.startLineNumber>Qt.endLineNumber;if(!lo&&!ro){Nt=!0;break}}if(!Nt){Be=!1;break}}if(Be)for(let ot=0,pt=this._trimAutoWhitespaceLines.length;otlo.endLineNumber)continue;if(xt===lo.startLineNumber&&lo.startColumn===Nt&&lo.isEmpty()&&ro&&ro.length>0&&ro.charAt(0)===` `)continue;if(xt===lo.startLineNumber&&lo.startColumn===1&&lo.isEmpty()&&ro&&ro.length>0&&ro.charAt(ro.length-1)===` `)continue;Rt=!1;break}if(Rt){const Kt=new S.a(xt,1,xt,Nt);R.push(new u.i(null,Kt,null,!1,!1,!1))}}this._trimAutoWhitespaceLines=null}return this._initialUndoRedoSnapshot===null&&(this._initialUndoRedoSnapshot=this._undoRedoService.createSnapshot(this.uri)),this._commandManager.pushEditOperation(_,R,se)}_applyUndo(_,R,se,be){const Be=_.map(ot=>{const pt=this.getPositionAt(ot.newPosition),xt=this.getPositionAt(ot.newEnd);return{range:new S.a(pt.lineNumber,pt.column,xt.lineNumber,xt.column),text:ot.oldText}});this._applyUndoRedoEdits(Be,R,!0,!1,se,be)}_applyRedo(_,R,se,be){const Be=_.map(ot=>{const pt=this.getPositionAt(ot.oldPosition),xt=this.getPositionAt(ot.oldEnd);return{range:new S.a(pt.lineNumber,pt.column,xt.lineNumber,xt.column),text:ot.newText}});this._applyUndoRedoEdits(Be,R,!1,!0,se,be)}_applyUndoRedoEdits(_,R,se,be,Be,ot){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit(),this._isUndoing=se,this._isRedoing=be,this.applyEdits(_,!1),this.setEOL(R),this._overwriteAlternativeVersionId(Be)}finally{this._isUndoing=!1,this._isRedoing=!1,this._eventEmitter.endDeferredEmit(ot),this._onDidChangeDecorations.endDeferredEmit()}}applyEdits(_,R=!1){try{this._onDidChangeDecorations.beginDeferredEmit(),this._eventEmitter.beginDeferredEmit();const se=this._validateEditOperations(_);return this._doApplyEdits(se,R)}finally{this._eventEmitter.endDeferredEmit(),this._onDidChangeDecorations.endDeferredEmit()}}_doApplyEdits(_,R){const se=this._buffer.getLineCount(),be=this._buffer.applyEdits(_,this._options.trimAutoWhitespace,R),Be=this._buffer.getLineCount(),ot=be.changes;if(this._trimAutoWhitespaceLines=be.trimAutoWhitespaceLineNumbers,ot.length!==0){for(let Nt=0,Rt=ot.length;Nt0?Kt.text.charCodeAt(0):0),this._decorationsTree.acceptReplace(Kt.rangeOffset,Kt.rangeLength,Kt.text.length,Kt.forceMoveMarkers)}let pt=[];this._increaseVersionId();let xt=se;for(let Nt=0,Rt=ot.length;Nt=0;wi--){const hn=lo+wi,dn=di+wi;Mi.takeFromEndWhile(En=>En.lineNumber>dn);const bn=Mi.takeFromEndWhile(En=>En.lineNumber===dn);pt.push(new xo.g(hn,this.getLineContent(dn),bn))}if(FoKn.lineNumberKn.lineNumber===zn)}pt.push(new xo.i(hn+1,lo+Mo,is,En))}xt+=Bo}this._emitContentChangedEvent(new xo.d(pt,this.getVersionId(),this._isUndoing,this._isRedoing),{changes:ot,eol:this._buffer.getEOL(),versionId:this.getVersionId(),isUndoing:this._isUndoing,isRedoing:this._isRedoing,isFlush:!1})}return be.reverseEdits===null?void 0:be.reverseEdits}undo(){return this._undoRedoService.undo(this.uri)}canUndo(){return this._undoRedoService.canUndo(this.uri)}redo(){return this._undoRedoService.redo(this.uri)}canRedo(){return this._undoRedoService.canRedo(this.uri)}handleBeforeFireDecorationsChangedEvent(_){if(_===null||_.size===0)return;const R=[..._],se=R.map(be=>new xo.g(be,this.getLineContent(be),this._getInjectedTextInLine(be)));this._onDidChangeContentOrInjectedText.fire(new xo.c(se))}changeDecorations(_,R=0){this._assertNotDisposed();try{return this._onDidChangeDecorations.beginDeferredEmit(),this._changeDecorations(R,_)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_changeDecorations(_,R){let se={addDecoration:(Be,ot)=>this._deltaDecorationsImpl(_,[],[{range:Be,options:ot}])[0],changeDecoration:(Be,ot)=>{this._changeDecorationImpl(Be,ot)},changeDecorationOptions:(Be,ot)=>{this._changeDecorationOptionsImpl(Be,mi(ot))},removeDecoration:Be=>{this._deltaDecorationsImpl(_,[Be],[])},deltaDecorations:(Be,ot)=>Be.length===0&&ot.length===0?[]:this._deltaDecorationsImpl(_,Be,ot)},be=null;try{be=R(se)}catch(Be){Object(h.f)(Be)}return se.addDecoration=Ai,se.changeDecoration=Ai,se.changeDecorationOptions=Ai,se.removeDecoration=Ai,se.deltaDecorations=Ai,be}deltaDecorations(_,R,se=0){if(this._assertNotDisposed(),_||(_=[]),_.length===0&&R.length===0)return[];try{return this._onDidChangeDecorations.beginDeferredEmit(),this._deltaDecorationsImpl(se,_,R)}finally{this._onDidChangeDecorations.endDeferredEmit()}}_getTrackedRange(_){return this.getDecorationRange(_)}_setTrackedRange(_,R,se){const be=_?this._decorations[_]:null;if(!be)return R?this._deltaDecorationsImpl(0,[],[{range:R,options:qo[se]}])[0]:null;if(!R)return this._decorationsTree.delete(be),delete this._decorations[be.id],null;const Be=this._validateRangeRelaxedNoAllocations(R),ot=this._buffer.getOffsetAt(Be.startLineNumber,Be.startColumn),pt=this._buffer.getOffsetAt(Be.endLineNumber,Be.endColumn);return this._decorationsTree.delete(be),be.reset(this.getVersionId(),ot,pt,Be),be.setOptions(qo[se]),this._decorationsTree.insert(be),be.id}removeAllDecorationsWithOwnerId(_){if(this._isDisposed)return;const R=this._decorationsTree.collectNodesFromOwner(_);for(let se=0,be=R.length;sethis.getLineCount()?[]:this.getLinesDecorations(_,_,R,se)}getLinesDecorations(_,R,se=0,be=!1){let Be=this.getLineCount(),ot=Math.min(Be,Math.max(1,_)),pt=Math.min(Be,Math.max(1,R)),xt=this.getLineMaxColumn(pt);const Nt=new S.a(ot,1,pt,xt),Rt=this._getDecorationsInRange(Nt,se,be);return Rt.push(...this._decorationProvider.getDecorationsInRange(Nt,se,be)),Rt}getDecorationsInRange(_,R=0,se=!1){let be=this.validateRange(_);const Be=this._getDecorationsInRange(be,R,se);return Be.push(...this._decorationProvider.getDecorationsInRange(be,R,se)),Be}getOverviewRulerDecorations(_=0,R=!1){return this._decorationsTree.getAll(this,_,R,!0)}getInjectedTextDecorations(_=0){return this._decorationsTree.getAllInjectedText(this,_)}_getInjectedTextInLine(_){const R=this._buffer.getOffsetAt(_,1),se=R+this._buffer.getLineLength(_),be=this._decorationsTree.getInjectedTextInInterval(this,R,se,0);return xo.b.fromDecorations(be).filter(Be=>Be.lineNumber===_)}getAllDecorations(_=0,R=!1){let se=this._decorationsTree.getAll(this,_,R,!1);return se=se.concat(this._decorationProvider.getAllDecorations(_,R)),se}_getDecorationsInRange(_,R,se){const be=this._buffer.getOffsetAt(_.startLineNumber,_.startColumn),Be=this._buffer.getOffsetAt(_.endLineNumber,_.endColumn);return this._decorationsTree.getAllInInterval(this,be,Be,R,se)}getRangeAt(_,R){return this._buffer.getRangeAt(_,R-_)}_changeDecorationImpl(_,R){const se=this._decorations[_];if(!se)return;if(se.options.after){const pt=this.getDecorationRange(_);this._onDidChangeDecorations.recordLineAffectedByInjectedText(pt.endLineNumber)}if(se.options.before){const pt=this.getDecorationRange(_);this._onDidChangeDecorations.recordLineAffectedByInjectedText(pt.startLineNumber)}const be=this._validateRangeRelaxedNoAllocations(R),Be=this._buffer.getOffsetAt(be.startLineNumber,be.startColumn),ot=this._buffer.getOffsetAt(be.endLineNumber,be.endColumn);this._decorationsTree.delete(se),se.reset(this.getVersionId(),Be,ot,be),this._decorationsTree.insert(se),this._onDidChangeDecorations.checkAffectedAndFire(se.options),se.options.after&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(be.endLineNumber),se.options.before&&this._onDidChangeDecorations.recordLineAffectedByInjectedText(be.startLineNumber)}_changeDecorationOptionsImpl(_,R){const se=this._decorations[_];if(!se)return;const be=!!(se.options.overviewRuler&&se.options.overviewRuler.color),Be=!!(R.overviewRuler&&R.overviewRuler.color);if(this._onDidChangeDecorations.checkAffectedAndFire(se.options),this._onDidChangeDecorations.checkAffectedAndFire(R),se.options.after||R.after){const ot=this._decorationsTree.getNodeRange(this,se);this._onDidChangeDecorations.recordLineAffectedByInjectedText(ot.endLineNumber)}if(se.options.before||R.before){const ot=this._decorationsTree.getNodeRange(this,se);this._onDidChangeDecorations.recordLineAffectedByInjectedText(ot.startLineNumber)}be!==Be?(this._decorationsTree.delete(se),se.setOptions(R),this._decorationsTree.insert(se)):se.setOptions(R)}_deltaDecorationsImpl(_,R,se){const be=this.getVersionId(),Be=R.length;let ot=0;const pt=se.length;let xt=0,Nt=new Array(pt);for(;ot0&&this._emitModelTokensChangedEvent({tokenizationSupportChanged:!1,semanticTokensApplied:!1,ranges:se})}this.handleTokenizationProgress(R)}setSemanticTokens(_,R){this._tokens2.set(_,R),this._emitModelTokensChangedEvent({tokenizationSupportChanged:!1,semanticTokensApplied:_!==null,ranges:[{fromLineNumber:1,toLineNumber:this.getLineCount()}]})}hasCompleteSemanticTokens(){return this._tokens2.isComplete()}hasSomeSemanticTokens(){return!this._tokens2.isEmpty()}setPartialSemanticTokens(_,R){if(this.hasCompleteSemanticTokens())return;const se=this._tokens2.setPartial(_,R);this._emitModelTokensChangedEvent({tokenizationSupportChanged:!1,semanticTokensApplied:!0,ranges:[{fromLineNumber:se.startLineNumber,toLineNumber:se.endLineNumber}]})}tokenizeViewport(_,R){_=Math.max(1,_),R=Math.min(this._buffer.getLineCount(),R),this._tokenization.tokenizeViewport(_,R)}clearTokens(){this._tokens.flush(),this._emitModelTokensChangedEvent({tokenizationSupportChanged:!0,semanticTokensApplied:!1,ranges:[{fromLineNumber:1,toLineNumber:this._buffer.getLineCount()}]})}_emitModelTokensChangedEvent(_){this._isDisposing||this._onDidChangeTokens.fire(_)}resetTokenization(){this._tokenization.reset()}forceTokenization(_){if(_<1||_>this.getLineCount())throw new Error("Illegal value for lineNumber");this._tokenization.forceTokenization(_)}isCheapToTokenize(_){return this._tokenization.isCheapToTokenize(_)}tokenizeIfCheap(_){this.isCheapToTokenize(_)&&this.forceTokenization(_)}getLineTokens(_){if(_<1||_>this.getLineCount())throw new Error("Illegal value for lineNumber");return this._getLineTokens(_)}_getLineTokens(_){const R=this.getLineContent(_),se=this._tokens.getTokens(this._languageId,_-1,R);return this._tokens2.addSemanticTokens(_,se)}getLanguageId(){return this._languageId}setMode(_){if(this._languageId===_)return;let R={oldLanguage:this._languageId,newLanguage:_};this._languageId=_,this._onDidChangeLanguage.fire(R),this._onDidChangeLanguageConfiguration.fire({})}getLanguageIdAtPosition(_,R){const se=this.validatePosition(new O.a(_,R)),be=this.getLineTokens(se.lineNumber);return be.getLanguageId(be.findTokenIndexAtOffset(se.column-1))}getLanguageConfiguration(_){return this._languageConfigurationService.getLanguageConfiguration(_)}getWordAtPosition(_){this._assertNotDisposed();const R=this.validatePosition(_),se=this.getLineContent(R.lineNumber),be=this._getLineTokens(R.lineNumber),Be=be.findTokenIndexAtOffset(R.column-1),[ot,pt]=T._findLanguageBoundaries(be,Be),xt=Object(je.d)(R.column,this.getLanguageConfiguration(be.getLanguageId(Be)).getWordDefinition(),se.substring(ot,pt),ot);if(xt&&xt.startColumn<=_.column&&_.column<=xt.endColumn)return xt;if(Be>0&&ot===R.column-1){const[Nt,Rt]=T._findLanguageBoundaries(be,Be-1),Kt=Object(je.d)(R.column,this.getLanguageConfiguration(be.getLanguageId(Be-1)).getWordDefinition(),se.substring(Nt,Rt),Nt);if(Kt&&Kt.startColumn<=_.column&&_.column<=Kt.endColumn)return Kt}return null}static _findLanguageBoundaries(_,R){const se=_.getLanguageId(R);let be=0;for(let ot=R;ot>=0&&_.getLanguageId(ot)===se;ot--)be=_.getStartOffset(ot);let Be=_.getLineContent().length;for(let ot=R,pt=_.getCount();ot=0;Nt--){const Rt=R.getEndOffset(Nt);if(Rt<=pt)break;if(Object(Ye.b)(R.getStandardTokenType(Nt))||R.getLanguageId(Nt)!==ot){pt=Rt;break}}let xt=Math.min(R.getLineContent().length,_.column-1+se.maxBracketLength);for(let Nt=be+1;Nt=xt)break;if(Object(Ye.b)(R.getStandardTokenType(Nt))||R.getLanguageId(Nt)!==ot){xt=Rt;break}}return{searchStartOffset:pt,searchEndOffset:xt}}_matchBracket(_){const R=_.lineNumber,se=this._getLineTokens(R),be=this._buffer.getLineContent(R),Be=se.findTokenIndexAtOffset(_.column-1);if(Be<0)return null;const ot=this.getLanguageConfiguration(se.getLanguageId(Be)).brackets;if(ot&&!Object(Ye.b)(se.getStandardTokenType(Be))){let{searchStartOffset:pt,searchEndOffset:xt}=this._establishBracketSearchOffsets(_,se,ot,Be),Nt=null;for(;;){const Rt=Mt.a.findNextBracketInRange(ot.forwardRegex,R,be,pt,xt);if(!Rt)break;if(Rt.startColumn<=_.column&&_.column<=Rt.endColumn){const Kt=be.substring(Rt.startColumn-1,Rt.endColumn-1).toLowerCase(),Qt=this._matchFoundBracket(Rt,ot.textIsBracket[Kt],ot.textIsOpenBracket[Kt],null);if(Qt){if(Qt instanceof _i)return null;Nt=Qt}}pt=Rt.endColumn-1}if(Nt)return Nt}if(Be>0&&se.getStartOffset(Be)===_.column-1){const pt=Be-1,xt=this.getLanguageConfiguration(se.getLanguageId(pt)).brackets;if(xt&&!Object(Ye.b)(se.getStandardTokenType(pt))){let{searchStartOffset:Nt,searchEndOffset:Rt}=this._establishBracketSearchOffsets(_,se,xt,pt);const Kt=Mt.a.findPrevBracketInRange(xt.reversedRegex,R,be,Nt,Rt);if(Kt&&Kt.startColumn<=_.column&&_.column<=Kt.endColumn){const Qt=be.substring(Kt.startColumn-1,Kt.endColumn-1).toLowerCase(),lo=this._matchFoundBracket(Kt,xt.textIsBracket[Qt],xt.textIsOpenBracket[Qt],null);if(lo)return lo instanceof _i?null:lo}}}return null}_matchFoundBracket(_,R,se,be){if(!R)return null;const Be=se?this._findMatchingBracketDown(R,_.getEndPosition(),be):this._findMatchingBracketUp(R,_.getStartPosition(),be);return Be?Be instanceof _i?Be:[_,Be]:null}_findMatchingBracketUp(_,R,se){const be=_.languageId,Be=_.reversedRegex;let ot=-1,pt=0;const xt=(Nt,Rt,Kt,Qt)=>{for(;;){if(se&&++pt%100===0&&!se())return _i.INSTANCE;const lo=Mt.a.findPrevBracketInRange(Be,Nt,Rt,Kt,Qt);if(!lo)break;const ro=Rt.substring(lo.startColumn-1,lo.endColumn-1).toLowerCase();if(_.isOpen(ro)?ot++:_.isClose(ro)&&ot--,ot===0)return lo;Qt=lo.startColumn-1}return null};for(let Nt=R.lineNumber;Nt>=1;Nt--){const Rt=this._getLineTokens(Nt),Kt=Rt.getCount(),Qt=this._buffer.getLineContent(Nt);let lo=Kt-1,ro=Qt.length,Eo=Qt.length;Nt===R.lineNumber&&(lo=Rt.findTokenIndexAtOffset(R.column-1),ro=R.column-1,Eo=R.column-1);let Mo=!0;for(;lo>=0;lo--){const Fo=Rt.getLanguageId(lo)===be&&!Object(Ye.b)(Rt.getStandardTokenType(lo));if(Fo)Mo?ro=Rt.getStartOffset(lo):(ro=Rt.getStartOffset(lo),Eo=Rt.getEndOffset(lo));else if(Mo&&ro!==Eo){const Bo=xt(Nt,Qt,ro,Eo);if(Bo)return Bo}Mo=Fo}if(Mo&&ro!==Eo){const Fo=xt(Nt,Qt,ro,Eo);if(Fo)return Fo}}return null}_findMatchingBracketDown(_,R,se){const be=_.languageId,Be=_.forwardRegex;let ot=1,pt=0;const xt=(Rt,Kt,Qt,lo)=>{for(;;){if(se&&++pt%100===0&&!se())return _i.INSTANCE;const ro=Mt.a.findNextBracketInRange(Be,Rt,Kt,Qt,lo);if(!ro)break;const Eo=Kt.substring(ro.startColumn-1,ro.endColumn-1).toLowerCase();if(_.isOpen(Eo)?ot++:_.isClose(Eo)&&ot--,ot===0)return ro;Qt=ro.endColumn-1}return null},Nt=this.getLineCount();for(let Rt=R.lineNumber;Rt<=Nt;Rt++){const Kt=this._getLineTokens(Rt),Qt=Kt.getCount(),lo=this._buffer.getLineContent(Rt);let ro=0,Eo=0,Mo=0;Rt===R.lineNumber&&(ro=Kt.findTokenIndexAtOffset(R.column-1),Eo=R.column-1,Mo=R.column-1);let Fo=!0;for(;ro=1;Be--){const ot=this._getLineTokens(Be),pt=ot.getCount(),xt=this._buffer.getLineContent(Be);let Nt=pt-1,Rt=xt.length,Kt=xt.length;if(Be===R.lineNumber){Nt=ot.findTokenIndexAtOffset(R.column-1),Rt=R.column-1,Kt=R.column-1;const lo=ot.getLanguageId(Nt);se!==lo&&(se=lo,be=this.getLanguageConfiguration(se).brackets)}let Qt=!0;for(;Nt>=0;Nt--){const lo=ot.getLanguageId(Nt);if(se!==lo){if(be&&Qt&&Rt!==Kt){const Eo=Mt.a.findPrevBracketInRange(be.reversedRegex,Be,xt,Rt,Kt);if(Eo)return this._toFoundBracket(be,Eo);Qt=!1}se=lo,be=this.getLanguageConfiguration(se).brackets}const ro=!!be&&!Object(Ye.b)(ot.getStandardTokenType(Nt));if(ro)Qt?Rt=ot.getStartOffset(Nt):(Rt=ot.getStartOffset(Nt),Kt=ot.getEndOffset(Nt));else if(be&&Qt&&Rt!==Kt){const Eo=Mt.a.findPrevBracketInRange(be.reversedRegex,Be,xt,Rt,Kt);if(Eo)return this._toFoundBracket(be,Eo)}Qt=ro}if(be&&Qt&&Rt!==Kt){const lo=Mt.a.findPrevBracketInRange(be.reversedRegex,Be,xt,Rt,Kt);if(lo)return this._toFoundBracket(be,lo)}}return null}findNextBracket(_){const R=this.validatePosition(_),se=this.getLineCount();let be=null,Be=null;for(let ot=R.lineNumber;ot<=se;ot++){const pt=this._getLineTokens(ot),xt=pt.getCount(),Nt=this._buffer.getLineContent(ot);let Rt=0,Kt=0,Qt=0;if(ot===R.lineNumber){Rt=pt.findTokenIndexAtOffset(R.column-1),Kt=R.column-1,Qt=R.column-1;const ro=pt.getLanguageId(Rt);be!==ro&&(be=ro,Be=this.getLanguageConfiguration(be).brackets)}let lo=!0;for(;RtDate.now()-lo<=R}const be=this.validatePosition(_),Be=this.getLineCount(),ot=new Map;let pt=[];const xt=(lo,ro)=>{if(!ot.has(lo)){let Eo=[];for(let Mo=0,Fo=ro?ro.brackets.length:0;Mo{for(;;){if(se&&++Nt%100===0&&!se())return _i.INSTANCE;const Bo=Mt.a.findNextBracketInRange(lo.forwardRegex,ro,Eo,Mo,Fo);if(!Bo)break;const di=Eo.substring(Bo.startColumn-1,Bo.endColumn-1).toLowerCase(),Ko=lo.textIsBracket[di];if(Ko&&(Ko.isOpen(di)?pt[Ko.index]++:Ko.isClose(di)&&pt[Ko.index]--,pt[Ko.index]===-1))return this._matchFoundBracket(Bo,Ko,!1,se);Mo=Bo.endColumn-1}return null};let Kt=null,Qt=null;for(let lo=be.lineNumber;lo<=Be;lo++){const ro=this._getLineTokens(lo),Eo=ro.getCount(),Mo=this._buffer.getLineContent(lo);let Fo=0,Bo=0,di=0;if(lo===be.lineNumber){Fo=ro.findTokenIndexAtOffset(be.column-1),Bo=be.column-1,di=be.column-1;const ei=ro.getLanguageId(Fo);Kt!==ei&&(Kt=ei,Qt=this.getLanguageConfiguration(Kt).brackets,xt(Kt,Qt))}let Ko=!0;for(;Fobe)throw new Error("Illegal value for lineNumber");const Be=this.getLanguageConfiguration(this._languageId).foldingRules,ot=Boolean(Be&&Be.offSide);let pt=-2,xt=-1,Nt=-2,Rt=-1;const Kt=Ei=>{if(pt!==-1&&(pt===-2||pt>Ei-1)){pt=-1,xt=-1;for(let Mi=Ei-2;Mi>=0;Mi--){let wi=this._computeIndentLevel(Mi);if(wi>=0){pt=Mi,xt=wi;break}}}if(Nt===-2){Nt=-1,Rt=-1;for(let Mi=Ei;Mi=0){Nt=Mi,Rt=wi;break}}}};let Qt=-2,lo=-1,ro=-2,Eo=-1;const Mo=Ei=>{if(Qt===-2){Qt=-1,lo=-1;for(let Mi=Ei-2;Mi>=0;Mi--){let wi=this._computeIndentLevel(Mi);if(wi>=0){Qt=Mi,lo=wi;break}}}if(ro!==-1&&(ro===-2||ro=0){ro=Mi,Eo=wi;break}}}};let Fo=0,Bo=!0,di=0,Ko=!0,ei=0,Gi=0;for(let Ei=0;Bo||Ko;Ei++){const Mi=_-Ei,wi=_+Ei;Ei>1&&(Mi<1||Mi1&&(wi>be||wi>se)&&(Ko=!1),Ei>5e4&&(Bo=!1,Ko=!1);let hn=-1;if(Bo){const bn=this._computeIndentLevel(Mi-1);bn>=0?(Nt=Mi-1,Rt=bn,hn=Math.ceil(bn/this._options.indentSize)):(Kt(Mi),hn=this._getIndentLevelForWhitespaceLine(ot,xt,Rt))}let dn=-1;if(Ko){const bn=this._computeIndentLevel(wi-1);bn>=0?(Qt=wi-1,lo=bn,dn=Math.ceil(bn/this._options.indentSize)):(Mo(wi),dn=this._getIndentLevelForWhitespaceLine(ot,lo,Eo))}if(Ei===0){Gi=hn;continue}if(Ei===1){if(wi<=be&&dn>=0&&Gi+1===dn){Bo=!1,Fo=wi,di=wi,ei=dn;continue}if(Mi>=1&&hn>=0&&hn-1===Gi){Ko=!1,Fo=Mi,di=Mi,ei=hn;continue}if(Fo=_,di=_,ei=Gi,ei===0)return{startLineNumber:Fo,endLineNumber:di,indent:ei}}Bo&&(hn>=ei?Fo=Mi:Bo=!1),Ko&&(dn>=ei?di=wi:Ko=!1)}return{startLineNumber:Fo,endLineNumber:di,indent:ei}}getLinesBracketGuides(_,R,se,be){var Be,ot,pt,xt,Nt;const Rt=[],Kt=this._bracketPairColorizer.getBracketPairsInRangeWithMinIndentation(new S.a(_,1,R,this.getLineMaxColumn(R)));let Qt;if(se&&Kt.length>0){const Fo=_<=se.lineNumber&&se.lineNumber<=R?Kt.filter(Bo=>Bo.range.containsPosition(se)):this._bracketPairColorizer.getBracketPairsInRange(S.a.fromPositions(se));Qt=(Be=Object(_o.i)(Fo,Bo=>Bo.range.startLineNumber!==Bo.range.endLineNumber))===null||Be===void 0?void 0:Be.range}const lo=new _o.a(Kt),ro=new Array,Eo=new Array,Mo=new Dn;for(let Fo=_;Fo<=R;Fo++){let Bo=new Array;Eo.length>0&&(Bo=Bo.concat(Eo),Eo.length=0),Rt.push(Bo);for(const Ko of lo.takeWhile(ei=>ei.openingBracketRange.startLineNumber<=Fo)||[]){if(Ko.range.startLineNumber===Ko.range.endLineNumber)continue;const ei=Math.min(this.getVisibleColumnFromPosition(Ko.openingBracketRange.getStartPosition()),this.getVisibleColumnFromPosition((pt=(ot=Ko.closingBracketRange)===null||ot===void 0?void 0:ot.getStartPosition())!==null&&pt!==void 0?pt:Ko.range.getEndPosition()),Ko.minVisibleColumnIndentation+1);let Gi=!1;if(Ko.closingBracketRange){const wi=A.u(this.getLineContent(Ko.closingBracketRange.startLineNumber));wi=0;Ko--){const ei=ro[Ko];if(!ei)continue;const Gi=be.highlightActive&&Qt&&ei.bracketPair.range.equalsRange(Qt),Ei=Mo.getInlineClassNameOfLevel(ei.nestingLevel)+(Gi?" "+Mo.activeClassName:"");if((Gi||be.includeInactive)&&(ei.renderHorizontalEndLineAtTheBottom&&ei.end.lineNumber===Fo+1&&Eo.push(new u.d(ei.guideVisibleColumn,Ei,null))),ei.end.lineNumber<=Fo||ei.start.lineNumber>=Fo)continue;if(ei.guideVisibleColumn>=di&&!Gi)continue;di=ei.guideVisibleColumn,(Gi||be.includeInactive)&&Bo.push(new u.d(ei.guideVisibleColumn,Ei,null))}Bo.sort((Ko,ei)=>Ko.visibleColumn-ei.visibleColumn)}return Rt}getVisibleColumnFromPosition(_){return Zo.a.visibleColumnFromColumn(this.getLineContent(_.lineNumber),_.column,this._options.tabSize)+1}getLinesIndentGuides(_,R){this._assertNotDisposed();const se=this.getLineCount();if(_<1||_>se)throw new Error("Illegal value for startLineNumber");if(R<1||R>se)throw new Error("Illegal value for endLineNumber");const be=this.getLanguageConfiguration(this._languageId).foldingRules,Be=Boolean(be&&be.offSide);let ot=new Array(R-_+1),pt=-2,xt=-1,Nt=-2,Rt=-1;for(let Kt=_;Kt<=R;Kt++){let Qt=Kt-_;const lo=this._computeIndentLevel(Kt-1);if(lo>=0){pt=Kt-1,xt=lo,ot[Qt]=Math.ceil(lo/this._options.indentSize);continue}if(pt===-2){pt=-1,xt=-1;for(let ro=Kt-2;ro>=0;ro--){let Eo=this._computeIndentLevel(ro);if(Eo>=0){pt=ro,xt=Eo;break}}}if(Nt!==-1&&(Nt===-2||Nt=0){Nt=ro,Rt=Eo;break}}}ot[Qt]=this._getIndentLevelForWhitespaceLine(Be,xt,Rt)}return ot}_getIndentLevelForWhitespaceLine(_,R,se){return R===-1||se===-1?0:Rot.options.showIfCollapsed||!ot.range.isEmpty())}getAllInjectedText(T,_){const R=T.getVersionId(),se=this._injectedTextDecorationsTree.search(_,!1,R);return this._ensureNodesHaveRanges(T,se).filter(be=>be.options.showIfCollapsed||!be.range.isEmpty())}getAll(T,_,R,se){const be=T.getVersionId(),Be=this._search(_,R,se,be);return this._ensureNodesHaveRanges(T,Be)}_search(T,_,R,se){if(R)return this._decorationsTree1.search(T,_,se);{const be=this._decorationsTree0.search(T,_,se),Be=this._decorationsTree1.search(T,_,se),ot=this._injectedTextDecorationsTree.search(T,_,se);return be.concat(Be).concat(ot)}}collectNodesFromOwner(T){const _=this._decorationsTree0.collectNodesFromOwner(T),R=this._decorationsTree1.collectNodesFromOwner(T),se=this._injectedTextDecorationsTree.collectNodesFromOwner(T);return _.concat(R).concat(se)}collectNodesPostOrder(){const T=this._decorationsTree0.collectNodesPostOrder(),_=this._decorationsTree1.collectNodesPostOrder(),R=this._injectedTextDecorationsTree.collectNodesPostOrder();return T.concat(_).concat(R)}insert(T){pn(T)?this._injectedTextDecorationsTree.insert(T):fn(T)?this._decorationsTree1.insert(T):this._decorationsTree0.insert(T)}delete(T){pn(T)?this._injectedTextDecorationsTree.delete(T):fn(T)?this._decorationsTree1.delete(T):this._decorationsTree0.delete(T)}getNodeRange(T,_){const R=T.getVersionId();return _.cachedVersionId!==R&&this._resolveNode(_,R),_.range===null&&(_.range=T.getRangeAt(_.cachedAbsoluteStart,_.cachedAbsoluteEnd)),_.range}_resolveNode(T,_){pn(T)?this._injectedTextDecorationsTree.resolveNode(T,_):fn(T)?this._decorationsTree1.resolveNode(T,_):this._decorationsTree0.resolveNode(T,_)}acceptReplace(T,_,R,se){this._decorationsTree0.acceptReplace(T,_,R,se),this._decorationsTree1.acceptReplace(T,_,R,se),this._injectedTextDecorationsTree.acceptReplace(T,_,R,se)}}function Qi(T){return T.replace(/[^a-z0-9\-_]/gi," ")}class wn{constructor(T){this.color=T.color||"",this.darkColor=T.darkColor||""}}class ln extends wn{constructor(T){super(T);this._resolvedColor=null,this.position=typeof T.position=="number"?T.position:u.g.Center}getColor(T){return this._resolvedColor||(T.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,T):this._resolvedColor=this._resolveColor(this.color,T)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=null}_resolveColor(T,_){if(typeof T=="string")return T;let R=T?_.getColor(T.id):null;return R?R.toString():""}}class si extends wn{constructor(T){super(T);this.position=T.position}getColor(T){return this._resolvedColor||(T.type!=="light"&&this.darkColor?this._resolvedColor=this._resolveColor(this.darkColor,T):this._resolvedColor=this._resolveColor(this.color,T)),this._resolvedColor}invalidateCachedColor(){this._resolvedColor=void 0}_resolveColor(T,_){return typeof T=="string"?Bt.a.fromHex(T):_.getColor(T.id)}}class co{constructor(T){this.content=T.content||"",this.inlineClassName=T.inlineClassName||null,this.inlineClassNameAffectsLetterSpacing=T.inlineClassNameAffectsLetterSpacing||!1}static from(T){return T instanceof co?T:new co(T)}}class Ao{constructor(T){this.description=T.description,this.stickiness=T.stickiness||0,this.zIndex=T.zIndex||0,this.className=T.className?Qi(T.className):null,this.hoverMessage=T.hoverMessage||null,this.glyphMarginHoverMessage=T.glyphMarginHoverMessage||null,this.isWholeLine=T.isWholeLine||!1,this.showIfCollapsed=T.showIfCollapsed||!1,this.collapseOnReplaceEdit=T.collapseOnReplaceEdit||!1,this.overviewRuler=T.overviewRuler?new ln(T.overviewRuler):null,this.minimap=T.minimap?new si(T.minimap):null,this.glyphMarginClassName=T.glyphMarginClassName?Qi(T.glyphMarginClassName):null,this.linesDecorationsClassName=T.linesDecorationsClassName?Qi(T.linesDecorationsClassName):null,this.firstLineDecorationClassName=T.firstLineDecorationClassName?Qi(T.firstLineDecorationClassName):null,this.marginClassName=T.marginClassName?Qi(T.marginClassName):null,this.inlineClassName=T.inlineClassName?Qi(T.inlineClassName):null,this.inlineClassNameAffectsLetterSpacing=T.inlineClassNameAffectsLetterSpacing||!1,this.beforeContentClassName=T.beforeContentClassName?Qi(T.beforeContentClassName):null,this.afterContentClassName=T.afterContentClassName?Qi(T.afterContentClassName):null,this.after=T.after?co.from(T.after):null,this.before=T.before?co.from(T.before):null}static register(T){return new Ao(T)}static createDynamic(T){return new Ao(T)}}Ao.EMPTY=Ao.register({description:"empty"});const qo=[Ao.register({description:"tracked-range-always-grows-when-typing-at-edges",stickiness:0}),Ao.register({description:"tracked-range-never-grows-when-typing-at-edges",stickiness:1}),Ao.register({description:"tracked-range-grows-only-when-typing-before",stickiness:2}),Ao.register({description:"tracked-range-grows-only-when-typing-after",stickiness:3})];function mi(T){return T instanceof Ao?T:Ao.createDynamic(T)}class oi extends L.a{constructor(T){super();this.handleBeforeFire=T,this._actual=this._register(new P.b),this.event=this._actual.event,this._affectedInjectedTextLines=null,this._deferredCnt=0,this._shouldFire=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(){var T;if(this._deferredCnt--,this._deferredCnt===0){if(this._shouldFire){this.handleBeforeFire(this._affectedInjectedTextLines);const _={affectsMinimap:this._affectsMinimap,affectsOverviewRuler:this._affectsOverviewRuler};this._shouldFire=!1,this._affectsMinimap=!1,this._affectsOverviewRuler=!1,this._actual.fire(_)}(T=this._affectedInjectedTextLines)===null||T===void 0||T.clear(),this._affectedInjectedTextLines=null}}recordLineAffectedByInjectedText(T){this._affectedInjectedTextLines||(this._affectedInjectedTextLines=new Set),this._affectedInjectedTextLines.add(T)}checkAffectedAndFire(T){this._affectsMinimap||(this._affectsMinimap=!!(T.minimap&&T.minimap.position)),this._affectsOverviewRuler||(this._affectsOverviewRuler=!!(T.overviewRuler&&T.overviewRuler.color)),this._shouldFire=!0}fire(){this._affectsMinimap=!0,this._affectsOverviewRuler=!0,this._shouldFire=!0}}class Ji extends L.a{constructor(){super();this._fastEmitter=this._register(new P.b),this.fastEvent=this._fastEmitter.event,this._slowEmitter=this._register(new P.b),this.slowEvent=this._slowEmitter.event,this._deferredCnt=0,this._deferredEvent=null}beginDeferredEmit(){this._deferredCnt++}endDeferredEmit(T=null){if(this._deferredCnt--,this._deferredCnt===0&&this._deferredEvent!==null){this._deferredEvent.rawContentChangedEvent.resultingSelection=T;const _=this._deferredEvent;this._deferredEvent=null,this._fastEmitter.fire(_),this._slowEmitter.fire(_)}}fire(T){if(this._deferredCnt>0){this._deferredEvent?this._deferredEvent=this._deferredEvent.merge(T):this._deferredEvent=T;return}this._fastEmitter.fire(T),this._slowEmitter.fire(T)}}},tXSY:function(ft,w,e){"use strict";e.r(w),e.d(w,"SnippetController2",function(){return n});var h=e("pmY6"),P=e("sswD"),L=e("aokT"),A=e("gCVg"),I=e("wQH0"),k=e("QVNv"),O=e("3/fG"),S=e("T8No"),f=e("09fa"),u=e("WaSP"),d=function(m,c,l,g){var y=arguments.length,C=y<3?c:g===null?g=Object.getOwnPropertyDescriptor(c,l):g,v;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")C=Reflect.decorate(m,c,l,g);else for(var D=m.length-1;D>=0;D--)(v=m[D])&&(C=(y<3?v(C):y>3?v(c,l,C):v(c,l))||C);return y>3&&C&&Object.defineProperty(c,l,C),C},E=function(m,c){return function(l,g){c(l,g,m)}};const p={overwriteBefore:0,overwriteAfter:0,undoStopBefore:!0,undoStopAfter:!0,adjustWhitespace:!0,clipboardText:void 0,overtypingCapturer:void 0};let n=class m{constructor(c,l,g){this._editor=c,this._logService=l,this._snippetListener=new h.b,this._modelVersionId=-1,this._inSnippet=m.InSnippetMode.bindTo(g),this._hasNextTabstop=m.HasNextTabstop.bindTo(g),this._hasPrevTabstop=m.HasPrevTabstop.bindTo(g)}static get(c){return c.getContribution(m.ID)}dispose(){var c;this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),(c=this._session)===null||c===void 0||c.dispose(),this._snippetListener.dispose()}insert(c,l){try{this._doInsert(c,typeof l=="undefined"?p:Object.assign(Object.assign({},p),l))}catch(g){this.cancel(),this._logService.error(g),this._logService.error("snippet_error"),this._logService.error("insert_template=",c),this._logService.error("existing_template=",this._session?this._session._logInfo():"")}}_doInsert(c,l){if(!this._editor.hasModel())return;this._snippetListener.clear(),l.undoStopBefore&&this._editor.getModel().pushStackElement(),this._session?this._session.merge(c,l):(this._modelVersionId=this._editor.getModel().getAlternativeVersionId(),this._session=new u.a(this._editor,c,l),this._session.insert()),l.undoStopAfter&&this._editor.getModel().pushStackElement(),this._updateState(),this._snippetListener.add(this._editor.onDidChangeModelContent(g=>g.isFlush&&this.cancel())),this._snippetListener.add(this._editor.onDidChangeModel(()=>this.cancel())),this._snippetListener.add(this._editor.onDidChangeCursorSelection(()=>this._updateState()))}_updateState(){if(!this._session||!this._editor.hasModel())return;if(this._modelVersionId===this._editor.getModel().getAlternativeVersionId())return this.cancel();if(!this._session.hasPlaceholder)return this.cancel();if(this._session.isAtLastPlaceholder||!this._session.isSelectionWithinPlaceholders())return this.cancel();this._inSnippet.set(!0),this._hasPrevTabstop.set(!this._session.isAtFirstPlaceholder),this._hasNextTabstop.set(!this._session.isAtLastPlaceholder),this._handleChoice()}_handleChoice(){if(!this._session||!this._editor.hasModel()){this._currentChoice=void 0;return}const{choice:c}=this._session;if(!c){this._currentChoice=void 0;return}if(this._currentChoice!==c){this._currentChoice=c,this._editor.setSelections(this._editor.getSelections().map(g=>A.a.fromPositions(g.getStartPosition())));const[l]=c.options;Object(k.f)(this._editor,c.options.map((g,y)=>({kind:13,label:g.value,insertText:g.value,sortText:"a".repeat(y+1),range:L.a.fromPositions(this._editor.getPosition(),this._editor.getPosition().delta(0,l.value.length))})))}}finish(){for(;this._inSnippet.get();)this.next()}cancel(c=!1){var l;this._inSnippet.reset(),this._hasPrevTabstop.reset(),this._hasNextTabstop.reset(),this._snippetListener.clear(),(l=this._session)===null||l===void 0||l.dispose(),this._session=void 0,this._modelVersionId=-1,c&&this._editor.setSelections([this._editor.getSelection()])}prev(){this._session&&this._session.prev(),this._updateState()}next(){this._session&&this._session.next(),this._updateState()}isInSnippet(){return Boolean(this._inSnippet.get())}};n.ID="snippetController2",n.InSnippetMode=new S.c("inSnippetMode",!1,Object(O.a)("inSnippetMode","Whether the editor in current in snippet mode")),n.HasNextTabstop=new S.c("hasNextTabstop",!1,Object(O.a)("hasNextTabstop","Whether there is a next tab stop when in snippet mode")),n.HasPrevTabstop=new S.c("hasPrevTabstop",!1,Object(O.a)("hasPrevTabstop","Whether there is a previous tab stop when in snippet mode")),n=d([E(1,f.b),E(2,S.b)],n),Object(P.l)(n.ID,n);const b=P.c.bindToContribution(n.get);Object(P.k)(new b({id:"jumpToNextSnippetPlaceholder",precondition:S.a.and(n.InSnippetMode,n.HasNextTabstop),handler:m=>m.next(),kbOpts:{weight:100+30,kbExpr:I.a.editorTextFocus,primary:2}})),Object(P.k)(new b({id:"jumpToPrevSnippetPlaceholder",precondition:S.a.and(n.InSnippetMode,n.HasPrevTabstop),handler:m=>m.prev(),kbOpts:{weight:100+30,kbExpr:I.a.editorTextFocus,primary:1024|2}})),Object(P.k)(new b({id:"leaveSnippet",precondition:n.InSnippetMode,handler:m=>m.cancel(!0),kbOpts:{weight:100+30,kbExpr:I.a.editorTextFocus,primary:9,secondary:[1024|9]}})),Object(P.k)(new b({id:"acceptSnippet",precondition:n.InSnippetMode,handler:m=>m.finish()}))},tYmi:function(ft,w,e){"use strict";e.d(w,"c",function(){return L}),e.d(w,"b",function(){return I}),e.d(w,"a",function(){return O});var h=e("MNsG"),P=e("bY76"),L;(function(S){S.inMemory="inmemory",S.vscode="vscode",S.internal="private",S.walkThrough="walkThrough",S.walkThroughSnippet="walkThroughSnippet",S.http="http",S.https="https",S.file="file",S.mailto="mailto",S.untitled="untitled",S.data="data",S.command="command",S.vscodeRemote="vscode-remote",S.vscodeRemoteResource="vscode-remote-resource",S.userData="vscode-userdata",S.vscodeCustomEditor="vscode-custom-editor",S.vscodeNotebook="vscode-notebook",S.vscodeNotebookCell="vscode-notebook-cell",S.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",S.vscodeNotebookCellOutput="vscode-notebook-cell-output",S.vscodeInteractive="vscode-interactive",S.vscodeInteractiveInput="vscode-interactive-input",S.vscodeSettings="vscode-settings",S.vscodeWorkspaceTrust="vscode-workspace-trust",S.vscodeTerminal="vscode-terminal",S.webviewPanel="webview-panel",S.vscodeWebview="vscode-webview",S.extension="extension",S.vscodeFileResource="vscode-file",S.tmp="tmp"})(L||(L={}));class A{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null}setPreferredWebSchema(S){this._preferredWebSchema=S}rewrite(S){if(this._delegate)return this._delegate(S);const f=S.authority;let u=this._hosts[f];u&&u.indexOf(":")!==-1&&(u=`[${u}]`);const d=this._ports[f],E=this._connectionTokens[f];let p=`path=${encodeURIComponent(S.path)}`;return typeof E=="string"&&(p+=`&tkn=${encodeURIComponent(E)}`),P.a.from({scheme:h.h?this._preferredWebSchema:L.vscodeRemoteResource,authority:`${u}:${d}`,path:"/vscode-remote-resource",query:p})}}const I=new A;class k{asBrowserUri(S,f){const u=this.toUri(S,f);return u.scheme===L.vscodeRemote?I.rewrite(u):u.scheme===L.file&&(h.g||typeof h.b.importScripts=="function"&&h.b.origin===`${L.vscodeFileResource}://${k.FALLBACK_AUTHORITY}`)?u.with({scheme:L.vscodeFileResource,authority:u.authority||k.FALLBACK_AUTHORITY,query:null,fragment:null}):u}toUri(S,f){return P.a.isUri(S)?S:P.a.parse(f.toUrl(S))}}k.FALLBACK_AUTHORITY="vscode-app";const O=new k},twdY:function(ft,w,e){"use strict";e.d(w,"E",function(){return S}),e.d(w,"I",function(){return f}),e.d(w,"H",function(){return u}),e.d(w,"t",function(){return d}),e.d(w,"C",function(){return E}),e.d(w,"h",function(){return p}),e.d(w,"J",function(){return n}),e.d(w,"D",function(){return b}),e.d(w,"n",function(){return m}),e.d(w,"r",function(){return c}),e.d(w,"y",function(){return l}),e.d(w,"z",function(){return g}),e.d(w,"d",function(){return y}),e.d(w,"u",function(){return C}),e.d(w,"B",function(){return v}),e.d(w,"p",function(){return D}),e.d(w,"m",function(){return j}),e.d(w,"i",function(){return V}),e.d(w,"w",function(){return G}),e.d(w,"f",function(){return B}),e.d(w,"e",function(){return z}),e.d(w,"q",function(){return Y}),e.d(w,"G",function(){return K}),e.d(w,"b",function(){return Q}),e.d(w,"s",function(){return ee}),e.d(w,"a",function(){return Se}),e.d(w,"g",function(){return fe}),e.d(w,"j",function(){return q}),e.d(w,"x",function(){return te}),e.d(w,"v",function(){return U}),e.d(w,"c",function(){return H}),e.d(w,"A",function(){return W}),e.d(w,"o",function(){return ne}),e.d(w,"l",function(){return Ce}),e.d(w,"k",function(){return Le}),e.d(w,"F",function(){return ce});var h=e("bY76"),P=e("aokT"),L=e("al33"),A=e("MI8n"),I=e("pmY6");class k{constructor(){this._map=new Map,this._promises=new Map,this._onDidChange=new A.b,this.onDidChange=this._onDidChange.event,this._colorMap=null}fire(me){this._onDidChange.fire({changedLanguages:me,changedColorMap:!1})}register(me,Oe){return this._map.set(me,Oe),this.fire([me]),Object(I.i)(()=>{if(this._map.get(me)!==Oe)return;this._map.delete(me),this.fire([me])})}registerPromise(me,Oe){let oe=null,De=!1;return this._promises.set(me,Oe.then(Ne=>{if(this._promises.delete(me),De||!Ne)return;oe=this.register(me,Ne)})),Object(I.i)(()=>{De=!0,oe&&oe.dispose()})}getPromise(me){const Oe=this.get(me);if(Oe)return Promise.resolve(Oe);const oe=this._promises.get(me);return oe?oe.then(De=>this.get(me)):null}get(me){return this._map.get(me)||null}setColorMap(me){this._colorMap=me,this._onDidChange.fire({changedLanguages:Array.from(this._map.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}}var O=e("Vhoy");class S{static getLanguageId(me){return(me&255)>>>0}static getTokenType(me){return(me&1792)>>>8}static getFontStyle(me){return(me&14336)>>>11}static getForeground(me){return(me&8372224)>>>14}static getBackground(me){return(me&4286578688)>>>23}static getClassNameFromMetadata(me){let Oe=this.getForeground(me),oe="mtk"+Oe,De=this.getFontStyle(me);return De&1&&(oe+=" mtki"),De&2&&(oe+=" mtkb"),De&4&&(oe+=" mtku"),oe}static getInlineStyleFromMetadata(me,Oe){const oe=this.getForeground(me),De=this.getFontStyle(me);let Ne=`color: ${Oe[oe]};`;return De&1&&(Ne+="font-style: italic;"),De&2&&(Ne+="font-weight: bold;"),De&4&&(Ne+="text-decoration: underline;"),Ne}}const f=function(){let me=Object.create(null);return me[0]="symbol-method",me[1]="symbol-function",me[2]="symbol-constructor",me[3]="symbol-field",me[4]="symbol-variable",me[5]="symbol-class",me[6]="symbol-struct",me[7]="symbol-interface",me[8]="symbol-module",me[9]="symbol-property",me[10]="symbol-event",me[11]="symbol-operator",me[12]="symbol-unit",me[13]="symbol-value",me[14]="symbol-constant",me[15]="symbol-enum",me[16]="symbol-enum-member",me[17]="symbol-keyword",me[27]="symbol-snippet",me[18]="symbol-text",me[19]="symbol-color",me[20]="symbol-file",me[21]="symbol-reference",me[22]="symbol-customcolor",me[23]="symbol-folder",me[24]="symbol-type-parameter",me[25]="account",me[26]="issues",function(Oe){const oe=me[Oe];let De=oe&&O.d.get(oe);return De||(console.info("No codicon found for CompletionItemKind "+Oe),De=O.b.symbolProperty),De.classNames}}();let u=function(){let me=Object.create(null);return me.method=0,me.function=1,me.constructor=2,me.field=3,me.variable=4,me.class=5,me.struct=6,me.interface=7,me.module=8,me.property=9,me.event=10,me.operator=11,me.unit=12,me.value=13,me.constant=14,me.enum=15,me["enum-member"]=16,me.enumMember=16,me.keyword=17,me.snippet=27,me.text=18,me.color=19,me.file=20,me.reference=21,me.customcolor=22,me.folder=23,me["type-parameter"]=24,me.typeParameter=24,me.account=25,me.issue=26,function(Oe,oe){let De=me[Oe];return typeof De=="undefined"&&!oe&&(De=9),De}}();var d;(function(me){me[me.Automatic=0]="Automatic",me[me.Explicit=1]="Explicit"})(d||(d={}));var E;(function(me){me[me.Invoke=1]="Invoke",me[me.TriggerCharacter=2]="TriggerCharacter",me[me.ContentChange=3]="ContentChange"})(E||(E={}));var p;(function(me){me[me.Text=0]="Text",me[me.Read=1]="Read",me[me.Write=2]="Write"})(p||(p={}));function n(me){return me&&h.a.isUri(me.uri)&&P.a.isIRange(me.range)&&(P.a.isIRange(me.originSelectionRange)||P.a.isIRange(me.targetSelectionRange))}var b;(function(me){const Oe=new Map;Oe.set("file",0),Oe.set("module",1),Oe.set("namespace",2),Oe.set("package",3),Oe.set("class",4),Oe.set("method",5),Oe.set("property",6),Oe.set("field",7),Oe.set("constructor",8),Oe.set("enum",9),Oe.set("interface",10),Oe.set("function",11),Oe.set("variable",12),Oe.set("constant",13),Oe.set("string",14),Oe.set("number",15),Oe.set("boolean",16),Oe.set("array",17),Oe.set("object",18),Oe.set("key",19),Oe.set("null",20),Oe.set("enum-member",21),Oe.set("struct",22),Oe.set("event",23),Oe.set("operator",24),Oe.set("type-parameter",25);const oe=new Map;oe.set(0,"file"),oe.set(1,"module"),oe.set(2,"namespace"),oe.set(3,"package"),oe.set(4,"class"),oe.set(5,"method"),oe.set(6,"property"),oe.set(7,"field"),oe.set(8,"constructor"),oe.set(9,"enum"),oe.set(10,"interface"),oe.set(11,"function"),oe.set(12,"variable"),oe.set(13,"constant"),oe.set(14,"string"),oe.set(15,"number"),oe.set(16,"boolean"),oe.set(17,"array"),oe.set(18,"object"),oe.set(19,"key"),oe.set(20,"null"),oe.set(21,"enum-member"),oe.set(22,"struct"),oe.set(23,"event"),oe.set(24,"operator"),oe.set(25,"type-parameter");function De(re){return Oe.get(re)}me.fromString=De;function Ne(re){return oe.get(re)}me.toString=Ne;function ve(re,we){const Ie=oe.get(re);let ge=Ie&&O.d.get("symbol-"+Ie);return ge||(console.info("No codicon found for SymbolKind "+re),ge=O.b.symbolProperty),`${we?"inline":"block"} ${ge.classNames}`}me.toCssClassName=ve})(b||(b={}));class m{constructor(me){this.value=me}}m.Comment=new m("comment"),m.Imports=new m("imports"),m.Region=new m("region");var c;(function(me){me[me.Other=0]="Other",me[me.Type=1]="Type",me[me.Parameter=2]="Parameter"})(c||(c={}));const l=new L.a,g=new L.a,y=new L.a,C=new L.a,v=new L.a,D=new L.a,j=new L.a,V=new L.a,G=new L.a,B=new L.a,z=new L.a,Y=new L.a,K=new L.a,Q=new L.a,ee=new L.a,Se=new L.a,fe=new L.a,q=new L.a,te=new L.a,U=new L.a,H=new L.a,W=new L.a,ne=new L.a,Ce=new L.a,Le=new L.a,ce=new k},uACm:function(ft,w,e){"use strict";e.d(w,"d",function(){return L}),e.d(w,"b",function(){return I}),e.d(w,"a",function(){return k}),e.d(w,"c",function(){return E});class h{constructor(){this.value="",this.pos=0}static isDigitCharacter(p){return p>=48&&p<=57}static isVariableCharacter(p){return p===95||p>=97&&p<=122||p>=65&&p<=90}text(p){this.value=p,this.pos=0}tokenText(p){return this.value.substr(p.pos,p.len)}next(){if(this.pos>=this.value.length)return{type:14,pos:this.pos,len:0};let p=this.pos,n=0,b=this.value.charCodeAt(p),m;if(m=h._table[b],typeof m=="number")return this.pos+=1,{type:m,pos:p,len:1};if(h.isDigitCharacter(b)){m=8;do n+=1,b=this.value.charCodeAt(p+n);while(h.isDigitCharacter(b));return this.pos+=n,{type:m,pos:p,len:n}}if(h.isVariableCharacter(b)){m=9;do b=this.value.charCodeAt(p+ ++n);while(h.isVariableCharacter(b)||h.isDigitCharacter(b));return this.pos+=n,{type:m,pos:p,len:n}}m=10;do n+=1,b=this.value.charCodeAt(p+n);while(!isNaN(b)&&typeof h._table[b]=="undefined"&&!h.isDigitCharacter(b)&&!h.isVariableCharacter(b));return this.pos+=n,{type:m,pos:p,len:n}}}h._table={[36]:0,[58]:1,[44]:2,[123]:3,[125]:4,[92]:5,[47]:6,[124]:7,[43]:11,[45]:12,[63]:13};class P{constructor(){this._children=[]}appendChild(p){return p instanceof L&&this._children[this._children.length-1]instanceof L?this._children[this._children.length-1].value+=p.value:(p.parent=this,this._children.push(p)),this}replace(p,n){const{parent:b}=p,m=b.children.indexOf(p),c=b.children.slice(0);c.splice(m,1,...n),b._children=c,function l(g,y){for(const C of g)C.parent=y,l(C.children,C)}(n,b)}get children(){return this._children}get snippet(){let p=this;for(;;){if(!p)return;if(p instanceof d)return p;p=p.parent}}toString(){return this.children.reduce((p,n)=>p+n.toString(),"")}len(){return 0}}class L extends P{constructor(p){super();this.value=p}toString(){return this.value}len(){return this.value.length}clone(){return new L(this.value)}}class A extends P{}class I extends A{constructor(p){super();this.index=p}static compareByIndex(p,n){return p.index===n.index?0:p.isFinalTabstop?1:n.isFinalTabstop||p.indexn.index?1:0}get isFinalTabstop(){return this.index===0}get choice(){return this._children.length===1&&this._children[0]instanceof k?this._children[0]:void 0}clone(){let p=new I(this.index);return this.transform&&(p.transform=this.transform.clone()),p._children=this.children.map(n=>n.clone()),p}}class k extends P{constructor(){super(...arguments);this.options=[]}appendChild(p){return p instanceof L&&(p.parent=this,this.options.push(p)),this}toString(){return this.options[0].value}len(){return this.options[0].len()}clone(){let p=new k;return this.options.forEach(p.appendChild,p),p}}class O extends P{constructor(){super(...arguments);this.regexp=new RegExp("")}resolve(p){const n=this;let b=!1,m=p.replace(this.regexp,function(){return b=!0,n._replace(Array.prototype.slice.call(arguments,0,-2))});return!b&&this._children.some(c=>c instanceof S&&Boolean(c.elseValue))&&(m=this._replace([])),m}_replace(p){let n="";for(const b of this._children)if(b instanceof S){let m=p[b.index]||"";m=b.resolve(m),n+=m}else n+=b.toString();return n}toString(){return""}clone(){let p=new O;return p.regexp=new RegExp(this.regexp.source,""+(this.regexp.ignoreCase?"i":"")+(this.regexp.global?"g":"")),p._children=this.children.map(n=>n.clone()),p}}class S extends P{constructor(p,n,b,m){super();this.index=p,this.shorthandName=n,this.ifValue=b,this.elseValue=m}resolve(p){return this.shorthandName==="upcase"?p?p.toLocaleUpperCase():"":this.shorthandName==="downcase"?p?p.toLocaleLowerCase():"":this.shorthandName==="capitalize"?p?p[0].toLocaleUpperCase()+p.substr(1):"":this.shorthandName==="pascalcase"?p?this._toPascalCase(p):"":this.shorthandName==="camelcase"?p?this._toCamelCase(p):"":Boolean(p)&&typeof this.ifValue=="string"?this.ifValue:!Boolean(p)&&typeof this.elseValue=="string"?this.elseValue:p||""}_toPascalCase(p){const n=p.match(/[a-z0-9]+/gi);return n?n.map(b=>b.charAt(0).toUpperCase()+b.substr(1).toLowerCase()).join(""):p}_toCamelCase(p){const n=p.match(/[a-z0-9]+/gi);return n?n.map((b,m)=>m===0?b.toLowerCase():b.charAt(0).toUpperCase()+b.substr(1).toLowerCase()).join(""):p}clone(){let p=new S(this.index,this.shorthandName,this.ifValue,this.elseValue);return p}}class f extends A{constructor(p){super();this.name=p}resolve(p){let n=p.resolve(this);return this.transform&&(n=this.transform.resolve(n||"")),n!==void 0?(this._children=[new L(n)],!0):!1}clone(){const p=new f(this.name);return this.transform&&(p.transform=this.transform.clone()),p._children=this.children.map(n=>n.clone()),p}}function u(p,n){const b=[...p];for(;b.length>0;){const m=b.shift(),c=n(m);if(!c)break;b.unshift(...m.children)}}class d extends P{get placeholderInfo(){if(!this._placeholders){let p=[],n;this.walk(function(b){return b instanceof I&&(p.push(b),n=!n||n.indexm===p?(b=!0,!1):(n+=m.len(),!0)),b?n:-1}fullLen(p){let n=0;return u([p],b=>(n+=b.len(),!0)),n}enclosingPlaceholders(p){let n=[],{parent:b}=p;for(;b;)b instanceof I&&n.push(b),b=b.parent;return n}resolveVariables(p){return this.walk(n=>(n instanceof f&&(n.resolve(p)&&(this._placeholders=void 0)),!0)),this}appendChild(p){return this._placeholders=void 0,super.appendChild(p)}replace(p,n){return this._placeholders=void 0,super.replace(p,n)}clone(){let p=new d;return this._children=this.children.map(n=>n.clone()),p}walk(p){u(this.children,p)}}class E{constructor(){this._scanner=new h,this._token={type:14,pos:0,len:0}}static escape(p){return p.replace(/\$|}|\\/g,"\\$&")}static guessNeedsClipboard(p){return/\${?CLIPBOARD/.test(p)}parse(p,n,b){this._scanner.text(p),this._token=this._scanner.next();const m=new d;for(;this._parse(m););const c=new Map,l=[];let g=0;m.walk(y=>(y instanceof I&&(g+=1,y.isFinalTabstop?c.set(0,void 0):!c.has(y.index)&&y.children.length>0?c.set(y.index,y.children):l.push(y)),!0));for(const y of l){const C=c.get(y.index);if(C){const v=new I(y.index);v.transform=y.transform;for(const D of C)v.appendChild(D.clone());m.replace(y,[v])}}return b||(b=g>0&&n),!c.has(0)&&b&&m.appendChild(new I(0)),m}_accept(p,n){if(p===void 0||this._token.type===p){let b=n?this._scanner.tokenText(this._token):!0;return this._token=this._scanner.next(),b}return!1}_backTo(p){return this._scanner.pos=p.pos+p.len,this._token=p,!1}_until(p){const n=this._token;for(;this._token.type!==p;){if(this._token.type===14)return!1;if(this._token.type===5){const m=this._scanner.next();if(m.type!==0&&m.type!==4&&m.type!==5)return!1}this._token=this._scanner.next()}const b=this._scanner.value.substring(n.pos,this._token.pos).replace(/\\(\$|}|\\)/g,"$1");return this._token=this._scanner.next(),b}_parse(p){return this._parseEscaped(p)||this._parseTabstopOrVariableName(p)||this._parseComplexPlaceholder(p)||this._parseComplexVariable(p)||this._parseAnything(p)}_parseEscaped(p){let n;return(n=this._accept(5,!0))?(n=this._accept(0,!0)||this._accept(4,!0)||this._accept(5,!0)||n,p.appendChild(new L(n)),!0):!1}_parseTabstopOrVariableName(p){let n;const b=this._token,m=this._accept(0)&&(n=this._accept(9,!0)||this._accept(8,!0));return m?(p.appendChild(/^\d+$/.test(n)?new I(Number(n)):new f(n)),!0):this._backTo(b)}_parseComplexPlaceholder(p){let n;const b=this._token,m=this._accept(0)&&this._accept(3)&&(n=this._accept(8,!0));if(!m)return this._backTo(b);const c=new I(Number(n));if(this._accept(1))for(;;){if(this._accept(4))return p.appendChild(c),!0;if(this._parse(c))continue;return p.appendChild(new L("${"+n+":")),c.children.forEach(p.appendChild,p),!0}else if(c.index>0&&this._accept(7)){const l=new k;for(;;){if(this._parseChoiceElement(l)){if(this._accept(2))continue;if(this._accept(7)&&(c.appendChild(l),this._accept(4)))return p.appendChild(c),!0}return this._backTo(b),!1}}else return this._accept(6)?this._parseTransform(c)?(p.appendChild(c),!0):(this._backTo(b),!1):this._accept(4)?(p.appendChild(c),!0):this._backTo(b)}_parseChoiceElement(p){const n=this._token,b=[];for(;!(this._token.type===2||this._token.type===7);){let m;if((m=this._accept(5,!0))?m=this._accept(2,!0)||this._accept(7,!0)||this._accept(5,!0)||m:m=this._accept(void 0,!0),!m)return this._backTo(n),!1;b.push(m)}return b.length===0?(this._backTo(n),!1):(p.appendChild(new L(b.join(""))),!0)}_parseComplexVariable(p){let n;const b=this._token,m=this._accept(0)&&this._accept(3)&&(n=this._accept(9,!0));if(!m)return this._backTo(b);const c=new f(n);if(this._accept(1))for(;;){if(this._accept(4))return p.appendChild(c),!0;if(this._parse(c))continue;return p.appendChild(new L("${"+n+":")),c.children.forEach(p.appendChild,p),!0}else return this._accept(6)?this._parseTransform(c)?(p.appendChild(c),!0):(this._backTo(b),!1):this._accept(4)?(p.appendChild(c),!0):this._backTo(b)}_parseTransform(p){let n=new O,b="",m="";for(;!this._accept(6);){let c;if(c=this._accept(5,!0)){c=this._accept(6,!0)||c,b+=c;continue}if(this._token.type!==14){b+=this._accept(void 0,!0);continue}return!1}for(;!this._accept(6);){let c;if(c=this._accept(5,!0)){c=this._accept(5,!0)||this._accept(6,!0)||c,n.appendChild(new L(c));continue}if(this._parseFormatString(n)||this._parseAnything(n))continue;return!1}for(;!this._accept(4);){if(this._token.type!==14){m+=this._accept(void 0,!0);continue}return!1}try{n.regexp=new RegExp(b,m)}catch(c){return!1}return p.transform=n,!0}_parseFormatString(p){const n=this._token;if(!this._accept(0))return!1;let b=!1;this._accept(3)&&(b=!0);let m=this._accept(8,!0);if(m)if(b){if(this._accept(4))return p.appendChild(new S(Number(m))),!0;if(!this._accept(1))return this._backTo(n),!1}else return p.appendChild(new S(Number(m))),!0;else return this._backTo(n),!1;if(this._accept(6)){let c=this._accept(9,!0);return!c||!this._accept(4)?(this._backTo(n),!1):(p.appendChild(new S(Number(m),c)),!0)}else if(this._accept(11)){let c=this._until(4);if(c)return p.appendChild(new S(Number(m),void 0,c,void 0)),!0}else if(this._accept(12)){let c=this._until(4);if(c)return p.appendChild(new S(Number(m),void 0,void 0,c)),!0}else if(this._accept(13)){let c=this._until(1);if(c){let l=this._until(4);if(l)return p.appendChild(new S(Number(m),void 0,c,l)),!0}}else{let c=this._until(4);if(c)return p.appendChild(new S(Number(m),void 0,void 0,c)),!0}return this._backTo(n),!1}_parseAnything(p){return this._token.type!==14?(p.appendChild(new L(this._scanner.tokenText(this._token))),this._accept(void 0),!0):!1}}},uDWl:function(ft,w,e){"use strict";e.d(w,"a",function(){return u});var h=e("D3Dy"),P=e("/kV6"),L=e("Szf2"),A=e("MNsG");function I(d){if(d.charCode){let p=String.fromCharCode(d.charCode).toUpperCase();return P.d.fromString(p)}const E=d.keyCode;if(E===3)return 7;if(h.g){if(E===59)return 80;if(E===107)return 81;if(E===109)return 83;if(A.f&&E===224)return 57}else if(h.j){if(E===91)return 57;if(A.f&&E===93)return 57;if(!A.f&&E===92)return 57}return P.a[E]||0}const k=A.f?256:2048,O=512,S=1024,f=A.f?2048:256;class u{constructor(d){this._standardKeyboardEventBrand=!0;let E=d;this.browserEvent=E,this.target=E.target,this.ctrlKey=E.ctrlKey,this.shiftKey=E.shiftKey,this.altKey=E.altKey,this.metaKey=E.metaKey,this.keyCode=I(E),this.code=E.code,this.ctrlKey=this.ctrlKey||this.keyCode===5,this.altKey=this.altKey||this.keyCode===6,this.shiftKey=this.shiftKey||this.keyCode===4,this.metaKey=this.metaKey||this.keyCode===57,this._asKeybinding=this._computeKeybinding(),this._asRuntimeKeybinding=this._computeRuntimeKeybinding()}preventDefault(){this.browserEvent&&this.browserEvent.preventDefault&&this.browserEvent.preventDefault()}stopPropagation(){this.browserEvent&&this.browserEvent.stopPropagation&&this.browserEvent.stopPropagation()}toKeybinding(){return this._asRuntimeKeybinding}equals(d){return this._asKeybinding===d}_computeKeybinding(){let d=0;this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(d=this.keyCode);let E=0;return this.ctrlKey&&(E|=k),this.altKey&&(E|=O),this.shiftKey&&(E|=S),this.metaKey&&(E|=f),E|=d,E}_computeRuntimeKeybinding(){let d=0;return this.keyCode!==5&&this.keyCode!==4&&this.keyCode!==6&&this.keyCode!==57&&(d=this.keyCode),new L.d(this.ctrlKey,this.shiftKey,this.altKey,this.metaKey,d)}}},uWgD:function(ft,w,e){},ubTv:function(ft,w,e){"use strict";e.d(w,"a",function(){return k}),e.d(w,"d",function(){return u}),e.d(w,"b",function(){return E}),e.d(w,"c",function(){return p});var h=e("l2gE"),P=e("tYmi"),L=e("MrjW"),A=e("gslv"),I=e("N0LK"),k;(function(m){m.text="text/plain",m.binary="application/octet-stream",m.unknown="application/unknown",m.markdown="text/markdown",m.latex="text/latex"})(k||(k={}));let O=[],S=[],f=[];function u(m,c=!1){const l=d(m);O.push(l),l.userConfigured?f.push(l):S.push(l),c&&!l.userConfigured&&O.forEach(g=>{if(g.mime===l.mime||g.userConfigured)return;l.extension&&g.extension===l.extension&&console.warn(`Overwriting extension <<${l.extension}>> to now point to mime <<${l.mime}>>`),l.filename&&g.filename===l.filename&&console.warn(`Overwriting filename <<${l.filename}>> to now point to mime <<${l.mime}>>`),l.filepattern&&g.filepattern===l.filepattern&&console.warn(`Overwriting filepattern <<${l.filepattern}>> to now point to mime <<${l.mime}>>`),l.firstline&&g.firstline===l.firstline&&console.warn(`Overwriting firstline <<${l.firstline}>> to now point to mime <<${l.mime}>>`)})}function d(m){return{id:m.id,mime:m.mime,filename:m.filename,extension:m.extension,filepattern:m.filepattern,firstline:m.firstline,userConfigured:m.userConfigured,filenameLowercase:m.filename?m.filename.toLowerCase():void 0,extensionLowercase:m.extension?m.extension.toLowerCase():void 0,filepatternLowercase:m.filepattern?Object(h.b)(m.filepattern.toLowerCase()):void 0,filepatternOnPath:m.filepattern?m.filepattern.indexOf(L.e.sep)>=0:!1}}function E(m){m?(O=O.filter(c=>!c.userConfigured),f=[]):(O=[],S=[],f=[])}function p(m,c){let l;if(m)switch(m.scheme){case P.c.file:l=m.fsPath;break;case P.c.data:const v=A.a.parseMetaData(m);l=v.get(A.a.META_DATA_LABEL);break;default:l=m.path}if(!l)return[k.unknown];l=l.toLowerCase();const g=Object(L.a)(l),y=n(l,g,f);if(y)return[y,k.text];const C=n(l,g,S);if(C)return[C,k.text];if(c){const v=b(c);if(v)return[v,k.text]}return[k.unknown]}function n(m,c,l){var g;let y=null,C=null,v=null;for(let D=l.length-1;D>=0;D--){const j=l[D];if(c===j.filenameLowercase){y=j;break}if(j.filepattern&&(!C||j.filepattern.length>C.filepattern.length)){const V=j.filepatternOnPath?m:c;((g=j.filepatternLowercase)===null||g===void 0?void 0:g.call(j,V))&&(C=j)}j.extension&&((!v||j.extension.length>v.extension.length)&&(c.endsWith(j.extensionLowercase)&&(v=j)))}return y?y.mime:C?C.mime:v?v.mime:null}function b(m){if(Object(I.S)(m)&&(m=m.substr(1)),m.length>0)for(let c=O.length-1;c>=0;c--){const l=O[c];if(!l.firstline)continue;const g=m.match(l.firstline);if(g&&g.length>0)return l.mime}return null}},udvx:function(ft,w,e){"use strict";e.d(w,"a",function(){return k});var h=e("Vhoy"),P=e("HgMQ"),L=e.n(P),A=e("8tI9"),I=e.n(A);function k(O){let S=O.definition;for(;S instanceof h.b;)S=S.definition;return`.codicon-${O.id}:before { content: '${S.fontCharacter}'; }`}},ufhN:function(ft,w,e){"use strict";e.r(w);var h=e("+hIS");Object(h.a)({id:"st",extensions:[".st",".iecst",".iecplc",".lc3lib"],aliases:["StructuredText","scl","stl"],loader:function(){return e.e(386).then(e.bind(null,"rMIR"))}})},undH:function(ft,w,e){},v0SU:function(ft,w,e){"use strict";var h=e("M/lh"),P=e.n(h);e.o(h,"Emitter")&&e.d(w,"Emitter",function(){return h.Emitter}),e.o(h,"MarkerSeverity")&&e.d(w,"MarkerSeverity",function(){return h.MarkerSeverity}),e.o(h,"MarkerTag")&&e.d(w,"MarkerTag",function(){return h.MarkerTag}),e.o(h,"Range")&&e.d(w,"Range",function(){return h.Range}),e.o(h,"Uri")&&e.d(w,"Uri",function(){return h.Uri}),e.o(h,"editor")&&e.d(w,"editor",function(){return h.editor}),e.o(h,"languages")&&e.d(w,"languages",function(){return h.languages})},v1vZ:function(ft,w,e){"use strict";e.d(w,"b",function(){return d}),e.d(w,"a",function(){return E}),e.d(w,"c",function(){return c});var h=e("X+cX"),P=e("Vhoy"),L=e("MI8n"),A=e("3/fG"),I=e("3Rsk"),k=e("ic2d"),O=e("t9D7");const S={IconContribution:"base.contributions.icons"};class f{constructor(){this._onDidChange=new L.b,this.onDidChange=this._onDidChange.event,this.iconSchema={definitions:{icons:{type:"object",properties:{fontId:{type:"string",description:Object(A.a)("iconDefintion.fontId","The id of the font to use. If not set, the font that is defined first is used.")},fontCharacter:{type:"string",description:Object(A.a)("iconDefintion.fontCharacter","The font character associated with the icon definition.")}},additionalProperties:!1,defaultSnippets:[{body:{fontCharacter:"\\\\e030"}}]}},type:"object",properties:{}},this.iconReferenceSchema={type:"string",pattern:`^${P.a.iconNameExpression}$`,enum:[],enumDescriptions:[]},this.iconsById={},this.iconFontsById={}}registerIcon(l,g,y,C){const v=this.iconsById[l];if(v){if(y&&!v.description){v.description=y,this.iconSchema.properties[l].markdownDescription=`${y} $(${l})`;const V=this.iconReferenceSchema.enum.indexOf(l);V!==-1&&(this.iconReferenceSchema.enumDescriptions[V]=y),this._onDidChange.fire()}return v}let D={id:l,description:y,defaults:g,deprecationMessage:C};this.iconsById[l]=D;let j={$ref:"#/definitions/icons"};return C&&(j.deprecationMessage=C),y&&(j.markdownDescription=`${y}: $(${l})`),this.iconSchema.properties[l]=j,this.iconReferenceSchema.enum.push(l),this.iconReferenceSchema.enumDescriptions.push(y||""),this._onDidChange.fire(),{id:l}}getIcons(){return Object.keys(this.iconsById).map(l=>this.iconsById[l])}getIcon(l){return this.iconsById[l]}getIconSchema(){return this.iconSchema}getIconFont(l){return this.iconFontsById[l]}toString(){const l=(v,D)=>v.id.localeCompare(D.id),g=v=>{for(;O.d.isThemeIcon(v.defaults);)v=this.iconsById[v.defaults.id];return`codicon codicon-${v?v.id:""}`};let y=[];y.push("| preview | identifier | default codicon ID | description"),y.push("| ----------- | --------------------------------- | --------------------------------- | --------------------------------- |");const C=Object.keys(this.iconsById).map(v=>this.iconsById[v]);for(const v of C.filter(D=>!!D.description).sort(l))y.push(`||${v.id}|${O.d.isThemeIcon(v.defaults)?v.defaults.id:v.id}|${v.description||""}|`);y.push("| preview | identifier "),y.push("| ----------- | --------------------------------- |");for(const v of C.filter(D=>!O.d.isThemeIcon(D.defaults)).sort(l))y.push(`||${v.id}|`);return y.join(` `)}}const u=new f;k.a.add(S.IconContribution,u);function d(l,g,y,C){return u.registerIcon(l,g,y,C)}function E(){return u}function p(){for(const l of P.d.all)u.registerIcon(l.id,l.definition,l.description);P.d.onDidRegister(l=>u.registerIcon(l.id,l.definition,l.description))}p();const n="vscode://schemas/icons";let b=k.a.as(I.a.JSONContribution);b.registerSchema(n,u.getIconSchema());const m=new h.e(()=>b.notifySchemaChanged(n),200);u.onDidChange(()=>{m.isScheduled()||m.schedule()});const c=d("widget-close",P.b.close,Object(A.a)("widgetClose","Icon for the close action in widgets."))},v6HE:function(ft,w,e){"use strict";e.d(w,"a",function(){return Zt});var h=e("EffR");/*! @license DOMPurify 2.3.1 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.3.1/LICENSE */function P(zt){if(Array.isArray(zt)){for(var ut=0,Ct=Array(zt.length);ut1?Ct-1:0),he=1;he/gm),Le=f(/^data-[\-\w.\u00B7-\uFFFF]/),ce=f(/^aria-[\-\w]+$/),me=f(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Oe=f(/^(?:\w+script|data):/i),oe=f(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),De=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(zt){return typeof zt}:function(zt){return zt&&typeof Symbol=="function"&&zt.constructor===Symbol&&zt!==Symbol.prototype?"symbol":typeof zt};function Ne(zt){if(Array.isArray(zt)){for(var ut=0,Ct=Array(zt.length);ut0&&arguments[0]!==void 0?arguments[0]:ve(),ut=function(co){return we(co)};if(ut.version="2.3.1",ut.removed=[],!zt||!zt.document||zt.document.nodeType!==9)return ut.isSupported=!1,ut;var Ct=zt.document,We=zt.document,he=zt.DocumentFragment,Me=zt.HTMLTemplateElement,ue=zt.Node,ae=zt.Element,Re=zt.NodeFilter,Qe=zt.NamedNodeMap,et=Qe===void 0?zt.NamedNodeMap||zt.MozNamedAttrMap:Qe,bt=zt.Text,Lt=zt.Comment,Ot=zt.DOMParser,Ft=zt.trustedTypes,Tt=ae.prototype,Ut=z(Tt,"cloneNode"),fo=z(Tt,"nextSibling"),vo=z(Tt,"childNodes"),po=z(Tt,"parentNode");if(typeof Me=="function"){var Oo=We.createElement("template");Oo.content&&Oo.content.ownerDocument&&(We=Oo.content.ownerDocument)}var Uo=re(Ft,Ct),Zo=Uo&&Xt?Uo.createHTML(""):"",ii=We,$o=ii.implementation,Ri=ii.createNodeIterator,xi=ii.createDocumentFragment,Ni=ii.getElementsByTagName,ji=Ct.importNode,Li={};try{Li=B(We).documentMode?We.documentMode:{}}catch(si){}var ki={};ut.isSupported=typeof po=="function"&&$o&&typeof $o.createHTMLDocument!="undefined"&&Li!==9;var Hi=ne,ni=Ce,tn=Le,Yi=ce,bi=Oe,Pi=oe,Ii=me,Si=null,Xi=G({},[].concat(Ne(Y),Ne(K),Ne(Q),Ne(Se),Ne(q))),Ci=null,rn=G({},[].concat(Ne(te),Ne(U),Ne(H),Ne(W))),on=null,Fi=null,Bi=!0,vt=!0,Xe=!1,X=!1,Ee=!1,ke=!1,Ve=!1,ct=!1,Et=!1,qt=!0,Xt=!1,Yt=!0,go=!0,F=!1,J={},Fe=null,Ze=G({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),St=null,It=G({},["audio","video","img","source","image","track"]),Vt=null,io=G({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ho="http://www.w3.org/1998/Math/MathML",mo="http://www.w3.org/2000/svg",yo="http://www.w3.org/1999/xhtml",Io=yo,No=!1,Ro=null,To=We.createElement("form"),Ho=function(co){if(Ro&&Ro===co)return;(!co||(typeof co=="undefined"?"undefined":De(co))!=="object")&&(co={}),co=B(co),Si="ALLOWED_TAGS"in co?G({},co.ALLOWED_TAGS):Xi,Ci="ALLOWED_ATTR"in co?G({},co.ALLOWED_ATTR):rn,Vt="ADD_URI_SAFE_ATTR"in co?G(B(io),co.ADD_URI_SAFE_ATTR):io,St="ADD_DATA_URI_TAGS"in co?G(B(It),co.ADD_DATA_URI_TAGS):It,Fe="FORBID_CONTENTS"in co?G({},co.FORBID_CONTENTS):Ze,on="FORBID_TAGS"in co?G({},co.FORBID_TAGS):{},Fi="FORBID_ATTR"in co?G({},co.FORBID_ATTR):{},J="USE_PROFILES"in co?co.USE_PROFILES:!1,Bi=co.ALLOW_ARIA_ATTR!==!1,vt=co.ALLOW_DATA_ATTR!==!1,Xe=co.ALLOW_UNKNOWN_PROTOCOLS||!1,X=co.SAFE_FOR_TEMPLATES||!1,Ee=co.WHOLE_DOCUMENT||!1,ct=co.RETURN_DOM||!1,Et=co.RETURN_DOM_FRAGMENT||!1,qt=co.RETURN_DOM_IMPORT!==!1,Xt=co.RETURN_TRUSTED_TYPE||!1,Ve=co.FORCE_BODY||!1,Yt=co.SANITIZE_DOM!==!1,go=co.KEEP_CONTENT!==!1,F=co.IN_PLACE||!1,Ii=co.ALLOWED_URI_REGEXP||Ii,Io=co.NAMESPACE||yo,X&&(vt=!1),Et&&(ct=!0),J&&(Si=G({},[].concat(Ne(q))),Ci=[],J.html===!0&&(G(Si,Y),G(Ci,te)),J.svg===!0&&(G(Si,K),G(Ci,U),G(Ci,W)),J.svgFilters===!0&&(G(Si,Q),G(Ci,U),G(Ci,W)),J.mathMl===!0&&(G(Si,Se),G(Ci,H),G(Ci,W))),co.ADD_TAGS&&(Si===Xi&&(Si=B(Si)),G(Si,co.ADD_TAGS)),co.ADD_ATTR&&(Ci===rn&&(Ci=B(Ci)),G(Ci,co.ADD_ATTR)),co.ADD_URI_SAFE_ATTR&&G(Vt,co.ADD_URI_SAFE_ATTR),co.FORBID_CONTENTS&&(Fe===Ze&&(Fe=B(Fe)),G(Fe,co.FORBID_CONTENTS)),go&&(Si["#text"]=!0),Ee&&G(Si,["html","head","body"]),Si.table&&(G(Si,["tbody"]),delete on.tbody),S&&S(co),Ro=co},Yo=G({},["mi","mo","mn","ms","mtext"]),ri=G({},["foreignobject","desc","title","annotation-xml"]),Vo=G({},K);G(Vo,Q),G(Vo,ee);var li=G({},Se);G(li,fe);var Ai=function(co){var Ao=po(co);(!Ao||!Ao.tagName)&&(Ao={namespaceURI:yo,tagName:"template"});var qo=c(co.tagName),mi=c(Ao.tagName);if(co.namespaceURI===mo)return Ao.namespaceURI===yo?qo==="svg":Ao.namespaceURI===ho?qo==="svg"&&(mi==="annotation-xml"||Yo[mi]):Boolean(Vo[qo]);if(co.namespaceURI===ho)return Ao.namespaceURI===yo?qo==="math":Ao.namespaceURI===mo?qo==="math"&&ri[mi]:Boolean(li[qo]);if(co.namespaceURI===yo){if(Ao.namespaceURI===mo&&!ri[mi])return!1;if(Ao.namespaceURI===ho&&!Yo[mi])return!1;var oi=G({},["title","style","font","a","script"]);return!li[qo]&&(oi[qo]||!Vo[qo])}return!1},_i=function(co){m(ut.removed,{element:co});try{co.parentNode.removeChild(co)}catch(Ao){try{co.outerHTML=Zo}catch(qo){co.remove()}}},ui=function(co,Ao){try{m(ut.removed,{attribute:Ao.getAttributeNode(co),from:Ao})}catch(qo){m(ut.removed,{attribute:null,from:Ao})}if(Ao.removeAttribute(co),co==="is"&&!Ci[co])if(ct||Et)try{_i(Ao)}catch(qo){}else try{Ao.setAttribute(co,"")}catch(qo){}},Ui=function(co){var Ao=void 0,qo=void 0;if(Ve)co=""+co;else{var mi=l(co,/^[\r\n\t ]+/);qo=mi&&mi[0]}var oi=Uo?Uo.createHTML(co):co;if(Io===yo)try{Ao=new Ot().parseFromString(oi,"text/html")}catch(T){}if(!Ao||!Ao.documentElement){Ao=$o.createDocument(Io,"template",null);try{Ao.documentElement.innerHTML=No?"":oi}catch(T){}}var Ji=Ao.body||Ao.documentElement;return co&&qo&&Ji.insertBefore(We.createTextNode(qo),Ji.childNodes[0]||null),Io===yo?Ni.call(Ao,Ee?"html":"body")[0]:Ee?Ao.documentElement:Ji},an=function(co){return Ri.call(co.ownerDocument||co,co,Re.SHOW_ELEMENT|Re.SHOW_COMMENT|Re.SHOW_TEXT,null,!1)},Dn=function(co){return co instanceof bt||co instanceof Lt?!1:typeof co.nodeName!="string"||typeof co.textContent!="string"||typeof co.removeChild!="function"||!(co.attributes instanceof et)||typeof co.removeAttribute!="function"||typeof co.setAttribute!="function"||typeof co.namespaceURI!="string"||typeof co.insertBefore!="function"},fn=function(co){return(typeof ue=="undefined"?"undefined":De(ue))==="object"?co instanceof ue:co&&(typeof co=="undefined"?"undefined":De(co))==="object"&&typeof co.nodeType=="number"&&typeof co.nodeName=="string"},pn=function(co,Ao,qo){if(!ki[co])return;n(ki[co],function(mi){mi.call(ut,Ao,qo,Ro)})},Vn=function(co){var Ao=void 0;if(pn("beforeSanitizeElements",co,null),Dn(co))return _i(co),!0;if(l(co.nodeName,/[\u0080-\uFFFF]/))return _i(co),!0;var qo=c(co.nodeName);if(pn("uponSanitizeElement",co,{tagName:qo,allowedTags:Si}),!fn(co.firstElementChild)&&(!fn(co.content)||!fn(co.content.firstElementChild))&&v(/<[/\w]/g,co.innerHTML)&&v(/<[/\w]/g,co.textContent))return _i(co),!0;if(qo==="select"&&v(/